ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/public/ibx/branches/journaling/examples/ibtreeview/Unit1.lfm
Revision: 80
Committed: Mon Jan 1 11:31:07 2018 UTC (6 years, 3 months ago) by tony
Original Path: ibx/trunk/examples/ibtreeview/Unit1.lfm
File size: 25090 byte(s)
Log Message:
Fixes merged into public release

File Contents

# User Rev Content
1 tony 21 object Form1: TForm1
2 tony 80 Left = 306
3 tony 21 Height = 438
4 tony 80 Top = 192
5 tony 21 Width = 722
6     Caption = 'TIBTreeView Example'
7     ClientHeight = 438
8     ClientWidth = 722
9 tony 68 DefaultMonitor = dmPrimary
10 tony 21 OnClose = FormClose
11     OnShow = FormShow
12 tony 68 Position = poScreenCenter
13 tony 80 LCLVersion = '1.8.1.0'
14 tony 21 object Panel1: TPanel
15     Left = 11
16     Height = 367
17     Top = 32
18     Width = 682
19     Anchors = [akTop, akLeft, akRight, akBottom]
20     BevelOuter = bvNone
21     ClientHeight = 367
22     ClientWidth = 682
23     TabOrder = 0
24     object IBTreeView1: TIBTreeView
25     Left = 0
26     Height = 367
27     Top = 0
28     Width = 280
29     Align = alLeft
30     TextField = 'DEPARTMENT'
31     DataSource = DataSource1
32     DragMode = dmAutomatic
33     Images = ImageList1
34     HasChildField = 'CHILDCOUNT'
35     KeyField = 'DEPT_NO'
36     ParentField = 'HEAD_DEPT'
37     PopupMenu = PopupMenu1
38     RelationName = 'A'
39     ScrollBars = ssAutoBoth
40     TabOrder = 0
41     OnAddition = IBTreeView1Addition
42     OnDragDrop = IBTreeView1DragDrop
43     OnDragOver = IBTreeView1DragOver
44     end
45     object Splitter1: TSplitter
46     Left = 280
47     Height = 367
48     Top = 0
49     Width = 5
50     end
51     object Panel2: TPanel
52     Left = 285
53     Height = 367
54     Top = 0
55     Width = 397
56     Align = alClient
57     BevelInner = bvLowered
58     BevelOuter = bvLowered
59     ClientHeight = 367
60     ClientWidth = 397
61     TabOrder = 2
62     object Panel3: TPanel
63     Left = 2
64     Height = 190
65     Top = 2
66     Width = 393
67     Align = alTop
68     BevelOuter = bvNone
69     ClientHeight = 190
70     ClientWidth = 393
71     TabOrder = 0
72     object Label2: TLabel
73     Left = 11
74 tony 68 Height = 14
75 tony 21 Top = 16
76     Width = 25
77     Caption = 'Title'
78     ParentColor = False
79     end
80     object DBEdit1: TDBEdit
81     Left = 11
82 tony 68 Height = 24
83 tony 21 Top = 31
84     Width = 373
85     DataField = 'DEPARTMENT'
86     DataSource = DataSource1
87     Anchors = [akTop, akLeft, akRight]
88     CharCase = ecNormal
89     MaxLength = 0
90     TabOrder = 0
91     end
92     object Label3: TLabel
93     Left = 13
94 tony 68 Height = 14
95 tony 21 Top = 71
96     Width = 51
97     Caption = 'Location'
98     ParentColor = False
99     end
100     object DBEdit4: TDBEdit
101     Left = 13
102 tony 68 Height = 24
103 tony 21 Top = 86
104     Width = 179
105     DataField = 'LOCATION'
106     DataSource = DataSource1
107     CharCase = ecNormal
108     MaxLength = 0
109     TabOrder = 1
110     end
111     object Label4: TLabel
112     Left = 219
113 tony 68 Height = 14
114 tony 21 Top = 71
115     Width = 44
116     Caption = 'Budget'
117     ParentColor = False
118     end
119     object DBEdit2: TDBEdit
120     Left = 219
121 tony 68 Height = 24
122 tony 21 Top = 86
123     Width = 165
124     DataField = 'BUDGET'
125     DataSource = DataSource1
126     Anchors = [akTop, akLeft, akRight]
127     CharCase = ecNormal
128     MaxLength = 0
129     TabOrder = 2
130     end
131     object Label5: TLabel
132     Left = 219
133 tony 68 Height = 14
134 tony 21 Top = 121
135     Width = 61
136     Caption = 'Phone No.'
137     ParentColor = False
138     end
139     object DBEdit3: TDBEdit
140     Left = 219
141 tony 68 Height = 24
142 tony 21 Top = 136
143     Width = 165
144     DataField = 'PHONE_NO'
145     DataSource = DataSource1
146     Anchors = [akTop, akLeft, akRight]
147     CharCase = ecNormal
148     MaxLength = 0
149     TabOrder = 3
150     end
151     object Label6: TLabel
152     Left = 12
153 tony 68 Height = 14
154 tony 21 Top = 121
155     Width = 52
156     Caption = 'Manager'
157     ParentColor = False
158     end
159     object IBLookupComboEditBox1: TIBLookupComboEditBox
160     Left = 13
161     Height = 27
162     Top = 136
163     Width = 180
164     DataField = 'MNGR_NO'
165     DataSource = DataSource1
166     KeyField = 'EMP_NO'
167     ListField = 'FULL_NAME'
168     ListFieldIndex = 0
169     ListSource = DataSource2
170     LookupCache = False
171     TabOrder = 4
172     AutoInsert = False
173     AutoCompleteText = [cbactEnabled, cbactEndOfLineComplete, cbactSearchAscending]
174     ItemHeight = 0
175     end
176     object Label7: TLabel
177     Left = 12
178 tony 68 Height = 14
179 tony 21 Top = 172
180     Width = 115
181     Caption = 'Departmental Staff'
182     ParentColor = False
183     end
184     end
185     object IBDynamicGrid1: TIBDynamicGrid
186     Left = 16
187     Height = 159
188     Top = 192
189     Width = 365
190     Align = alClient
191     BorderSpacing.Left = 14
192     BorderSpacing.Right = 14
193     BorderSpacing.Bottom = 14
194     Color = clWindow
195     Columns = <
196     item
197     Title.Alignment = taCenter
198     Title.Caption = 'Name'
199     Width = 100
200     FieldName = 'FULL_NAME'
201     AutoSizeColumn = True
202     InitialSortColumn = False
203     DBLookupProperties.ItemHeight = 0
204     DBLookupProperties.ItemWidth = 0
205     DBLookupProperties.AutoCompleteText = [cbactEnabled, cbactEndOfLineComplete, cbactSearchAscending]
206     end
207     item
208     Title.Alignment = taCenter
209     Title.Caption = 'Job Code'
210     Width = 60
211     FieldName = 'JOB_CODE'
212     AutoSizeColumn = False
213     InitialSortColumn = False
214     DBLookupProperties.ItemHeight = 0
215     DBLookupProperties.ItemWidth = 0
216     DBLookupProperties.AutoCompleteText = [cbactEnabled, cbactEndOfLineComplete, cbactSearchAscending]
217     end
218     item
219     Title.Alignment = taCenter
220     Title.Caption = 'Location'
221     Width = 70
222     FieldName = 'JOB_COUNTRY'
223     AutoSizeColumn = False
224     InitialSortColumn = False
225     DBLookupProperties.ItemHeight = 0
226     DBLookupProperties.ItemWidth = 0
227     DBLookupProperties.AutoCompleteText = [cbactEnabled, cbactEndOfLineComplete, cbactSearchAscending]
228     end
229     item
230     Title.Alignment = taCenter
231     Title.Caption = 'Salary'
232     Width = 100
233     FieldName = 'SALARY'
234     AutoSizeColumn = False
235     InitialSortColumn = False
236     DBLookupProperties.ItemHeight = 0
237     DBLookupProperties.ItemWidth = 0
238     DBLookupProperties.AutoCompleteText = [cbactEnabled, cbactEndOfLineComplete, cbactSearchAscending]
239     end>
240     DataSource = DataSource3
241     Scrollbars = ssAutoVertical
242     TabOrder = 1
243     ExpandEditorPanelBelowRow = False
244     Descending = False
245     EditorBorderStyle = bsSingle
246     DefaultPositionAtEnd = False
247     end
248     end
249     end
250     object Label1: TLabel
251     Left = 11
252 tony 68 Height = 14
253 tony 21 Top = 17
254     Width = 79
255     Caption = 'Departments'
256     ParentColor = False
257     end
258     object CancelBtn: TButton
259     Left = 616
260     Height = 25
261     Top = 408
262     Width = 75
263     Anchors = [akRight, akBottom]
264     Caption = 'Cancel'
265     OnClick = CancelBtnClick
266     TabOrder = 1
267     end
268     object SaveBtn: TButton
269     Left = 536
270     Height = 25
271     Top = 408
272     Width = 75
273     Anchors = [akRight, akBottom]
274     Caption = 'Save'
275     OnClick = SaveBtnClick
276     TabOrder = 2
277     end
278     object IBDatabase1: TIBDatabase
279 tony 23 Connected = False
280 tony 68 CreateIfNotExists = False
281 tony 21 AllowStreamedConnected = False
282 tony 27 DatabaseName = 'localhost:employee'
283 tony 21 Params.Strings = (
284 tony 33 'lc_ctype=UTF8'
285 tony 21 'user_name=SYSDBA'
286     )
287     DefaultTransaction = IBTransaction1
288     IdleTimer = 0
289 tony 23 SQLHourGlass = False
290 tony 21 TraceFlags = []
291 tony 45 UseDefaultSystemCodePage = False
292 tony 21 left = 24
293     top = 96
294     end
295     object IBTransaction1: TIBTransaction
296     Active = False
297 tony 27 Params.Strings = (
298     'read_committed'
299     'rec_version'
300     'nowait'
301     )
302 tony 21 left = 24
303     top = 136
304     end
305     object Departments: TIBDataSet
306 tony 68 AllowAutoActivateTransaction = False
307 tony 21 Database = IBDatabase1
308     Transaction = IBTransaction1
309     AfterDelete = DepartmentsAfterDelete
310     AfterEdit = DepartmentsAfterDelete
311     AfterInsert = DepartmentsAfterInsert
312     BufferChunks = 1000
313     CachedUpdates = False
314     DeleteSQL.Strings = (
315     'Delete From DEPARTMENT A'
316     'Where A.DEPT_NO = :DEPT_NO'
317     )
318     InsertSQL.Strings = (
319     'Insert Into DEPARTMENT(DEPT_NO, DEPARTMENT, HEAD_DEPT, MNGR_NO, BUDGET, LOCATION, PHONE_NO)'
320     'Values(:DEPT_NO, :DEPARTMENT, :HEAD_DEPT, :MNGR_NO, :BUDGET, :LOCATION, :PHONE_NO)'
321     )
322     RefreshSQL.Strings = (
323     'Select A.DEPT_NO, A.DEPARTMENT, A.HEAD_DEPT, A.MNGR_NO, A.BUDGET, A.LOCATION, A.PHONE_NO,'
324     'count(B.DEPT_NO) as ChildCount'
325     'From DEPARTMENT A'
326     'Left Outer JOIN DEPARTMENT B On B.HEAD_DEPT = A.DEPT_NO'
327     'Where A.DEPT_NO = :DEPT_NO'
328     'Group By A.DEPT_NO, A.DEPARTMENT, A.HEAD_DEPT, A.MNGR_NO, A.BUDGET, A.LOCATION, A.PHONE_NO'
329     ''
330     )
331     SelectSQL.Strings = (
332     'Select A.DEPT_NO, A.DEPARTMENT, A.HEAD_DEPT, A.MNGR_NO, A.BUDGET, A.LOCATION, A.PHONE_NO,'
333     'count(B.DEPT_NO) as ChildCount'
334     'From DEPARTMENT A'
335     'Left Outer JOIN DEPARTMENT B On B.HEAD_DEPT = A.DEPT_NO'
336     'Group By A.DEPT_NO, A.DEPARTMENT, A.HEAD_DEPT, A.MNGR_NO, A.BUDGET, A.LOCATION, A.PHONE_NO'
337     'Order by Department'
338     )
339     ModifySQL.Strings = (
340     'Update DEPARTMENT A Set '#13#10' A.BUDGET = :BUDGET,'#13#10' A.DEPARTMENT = :DEPARTMENT,'#13#10' A.HEAD_DEPT = :HEAD_DEPT,'#13#10' A.LOCATION = :LOCATION,'#13#10' A.MNGR_NO = :MNGR_NO,'#13#10' A.PHONE_NO = :PHONE_NO'
341     'Where A.DEPT_NO = :OLD_DEPT_NO'
342     )
343     GeneratorField.Generator = 'EMP_NO_GEN'
344     GeneratorField.Field = 'DEPT_NO'
345     GeneratorField.ApplyOnEvent = gaeOnNewRecord
346     GenerateParamNames = False
347 tony 27 DataSetCloseAction = dcSaveChanges
348 tony 21 AfterTransactionEnd = DepartmentsAfterTransactionEnd
349 tony 80 left = 144
350 tony 21 top = 176
351     object DepartmentsDEPT_NO: TIBStringField
352     DisplayWidth = 3
353     FieldKind = fkData
354     FieldName = 'DEPT_NO'
355     Index = 0
356     LookupCache = False
357     ProviderFlags = [pfInUpdate, pfInWhere]
358     ReadOnly = False
359     Required = True
360     Size = 3
361     end
362     object DepartmentsDEPARTMENT: TIBStringField
363     DisplayWidth = 25
364     FieldKind = fkData
365     FieldName = 'DEPARTMENT'
366     Index = 1
367     LookupCache = False
368     ProviderFlags = [pfInUpdate, pfInWhere]
369     ReadOnly = False
370     Required = True
371     Size = 25
372     end
373     object DepartmentsHEAD_DEPT: TIBStringField
374     DisplayWidth = 3
375     FieldKind = fkData
376     FieldName = 'HEAD_DEPT'
377     Index = 2
378     LookupCache = False
379     ProviderFlags = [pfInUpdate, pfInWhere]
380     ReadOnly = False
381     Required = False
382     Size = 3
383     end
384     object DepartmentsMNGR_NO: TSmallintField
385     DisplayWidth = 10
386     FieldKind = fkData
387     FieldName = 'MNGR_NO'
388     Index = 3
389     LookupCache = False
390     ProviderFlags = [pfInUpdate, pfInWhere]
391     ReadOnly = False
392     Required = False
393     end
394     object DepartmentsBUDGET: TIBBCDField
395     DisplayWidth = 18
396     FieldKind = fkData
397     FieldName = 'BUDGET'
398     Index = 4
399     LookupCache = False
400     ProviderFlags = [pfInUpdate, pfInWhere]
401     ReadOnly = False
402     Required = False
403     OnChange = DepartmentsBUDGETChange
404     OnGetText = DepartmentsBUDGETGetText
405     Precision = 18
406     Currency = False
407     MaxValue = 0
408     MinValue = 0
409     Size = 2
410     end
411     object DepartmentsLOCATION: TIBStringField
412     DisplayWidth = 15
413     FieldKind = fkData
414     FieldName = 'LOCATION'
415     Index = 5
416     LookupCache = False
417     ProviderFlags = [pfInUpdate, pfInWhere]
418     ReadOnly = False
419     Required = False
420     Size = 15
421     end
422     object DepartmentsPHONE_NO: TIBStringField
423     DisplayWidth = 20
424     FieldKind = fkData
425     FieldName = 'PHONE_NO'
426     Index = 6
427     LookupCache = False
428     ProviderFlags = [pfInUpdate, pfInWhere]
429     ReadOnly = False
430     Required = False
431     end
432     object DepartmentsCHILDCOUNT: TIntegerField
433     DisplayWidth = 10
434     FieldKind = fkData
435     FieldName = 'CHILDCOUNT'
436     Index = 7
437     LookupCache = False
438     ProviderFlags = [pfInUpdate, pfInWhere]
439     ReadOnly = False
440     Required = True
441     end
442     end
443     object DataSource1: TDataSource
444     DataSet = Departments
445     left = 24
446     top = 176
447     end
448     object ApplicationProperties1: TApplicationProperties
449     OnIdle = ApplicationProperties1Idle
450     left = 24
451     top = 48
452     end
453     object Managers: TIBQuery
454 tony 68 AllowAutoActivateTransaction = False
455 tony 21 Database = IBDatabase1
456     Transaction = IBTransaction1
457     BufferChunks = 1000
458     CachedUpdates = False
459     GenerateParamNames = False
460     GeneratorField.ApplyOnEvent = gaeOnNewRecord
461     SQL.Strings = (
462     'Select A.EMP_NO, A.FULL_NAME From EMPLOYEE A'
463     'order by 2'
464     )
465     Params = <>
466 tony 27 DataSetCloseAction = dcDiscardChanges
467 tony 80 left = 144
468     top = 224
469 tony 21 end
470     object DataSource2: TDataSource
471     DataSet = Managers
472     left = 24
473     top = 221
474     end
475     object Staff: TIBQuery
476 tony 68 AllowAutoActivateTransaction = False
477 tony 21 Database = IBDatabase1
478     Transaction = IBTransaction1
479     BufferChunks = 1000
480     CachedUpdates = False
481     DataSource = DataSource1
482     GenerateParamNames = False
483     GeneratorField.ApplyOnEvent = gaeOnNewRecord
484     SQL.Strings = (
485     'Select A.EMP_NO, A.FIRST_NAME, A.LAST_NAME, A.PHONE_EXT, A.HIRE_DATE, A.DEPT_NO, A.JOB_CODE, A.JOB_GRADE, A.JOB_COUNTRY, A.SALARY, A.FULL_NAME From EMPLOYEE A'
486     'Where A.DEPT_NO =:DEPT_NO'
487     )
488     Params = <
489     item
490     DataType = ftUnknown
491     Name = 'DEPT_NO'
492     ParamType = ptInput
493     end>
494 tony 27 DataSetCloseAction = dcDiscardChanges
495 tony 80 left = 144
496     top = 272
497 tony 21 ParamData = <
498     item
499     DataType = ftUnknown
500     Name = 'DEPT_NO'
501     ParamType = ptInput
502     end>
503     object StaffEMP_NO: TSmallintField
504     DisplayWidth = 10
505     FieldKind = fkData
506     FieldName = 'EMP_NO'
507     Index = 0
508     LookupCache = False
509     ProviderFlags = [pfInUpdate, pfInWhere]
510     ReadOnly = False
511     Required = True
512     end
513     object StaffFIRST_NAME: TIBStringField
514     DisplayWidth = 15
515     FieldKind = fkData
516     FieldName = 'FIRST_NAME'
517     Index = 1
518     LookupCache = False
519     ProviderFlags = [pfInUpdate, pfInWhere]
520     ReadOnly = False
521     Required = True
522     Size = 15
523     end
524     object StaffLAST_NAME: TIBStringField
525     DisplayWidth = 20
526     FieldKind = fkData
527     FieldName = 'LAST_NAME'
528     Index = 2
529     LookupCache = False
530     ProviderFlags = [pfInUpdate, pfInWhere]
531     ReadOnly = False
532     Required = True
533     end
534     object StaffPHONE_EXT: TIBStringField
535     DisplayWidth = 4
536     FieldKind = fkData
537     FieldName = 'PHONE_EXT'
538     Index = 3
539     LookupCache = False
540     ProviderFlags = [pfInUpdate, pfInWhere]
541     ReadOnly = False
542     Required = False
543     Size = 4
544     end
545     object StaffHIRE_DATE: TDateTimeField
546     DisplayWidth = 10
547     FieldKind = fkData
548     FieldName = 'HIRE_DATE'
549     Index = 4
550     LookupCache = False
551     ProviderFlags = [pfInUpdate, pfInWhere]
552     ReadOnly = False
553     Required = True
554     end
555     object StaffDEPT_NO: TIBStringField
556     DisplayWidth = 3
557     FieldKind = fkData
558     FieldName = 'DEPT_NO'
559     Index = 5
560     LookupCache = False
561     ProviderFlags = [pfInUpdate, pfInWhere]
562     ReadOnly = False
563     Required = True
564     Size = 3
565     end
566     object StaffJOB_CODE: TIBStringField
567     DisplayWidth = 5
568     FieldKind = fkData
569     FieldName = 'JOB_CODE'
570     Index = 6
571     LookupCache = False
572     ProviderFlags = [pfInUpdate, pfInWhere]
573     ReadOnly = False
574     Required = True
575     Size = 5
576     end
577     object StaffJOB_GRADE: TSmallintField
578     DisplayWidth = 10
579     FieldKind = fkData
580     FieldName = 'JOB_GRADE'
581     Index = 7
582     LookupCache = False
583     ProviderFlags = [pfInUpdate, pfInWhere]
584     ReadOnly = False
585     Required = True
586     end
587     object StaffJOB_COUNTRY: TIBStringField
588     DisplayWidth = 15
589     FieldKind = fkData
590     FieldName = 'JOB_COUNTRY'
591     Index = 8
592     LookupCache = False
593     ProviderFlags = [pfInUpdate, pfInWhere]
594     ReadOnly = False
595     Required = True
596     Size = 15
597     end
598     object StaffSALARY: TIBBCDField
599     DisplayWidth = 18
600     FieldKind = fkData
601     FieldName = 'SALARY'
602     Index = 9
603     LookupCache = False
604     ProviderFlags = [pfInUpdate, pfInWhere]
605     ReadOnly = False
606     Required = True
607     OnGetText = DepartmentsBUDGETGetText
608     Precision = 18
609     Currency = False
610     MaxValue = 0
611     MinValue = 0
612     Size = 2
613     end
614     object StaffFULL_NAME: TIBStringField
615     DisplayWidth = 37
616     FieldKind = fkData
617     FieldName = 'FULL_NAME'
618     Index = 10
619     LookupCache = False
620     ProviderFlags = [pfInUpdate, pfInWhere]
621     ReadOnly = True
622     Required = False
623     Size = 37
624     end
625     end
626     object DataSource3: TDataSource
627     DataSet = Staff
628     left = 24
629     top = 264
630     end
631     object ActionList1: TActionList
632     left = 24
633     top = 316
634     object DeleteNode: TAction
635     Caption = 'Delete'
636     OnExecute = DeleteNodeExecute
637     OnUpdate = DeleteNodeUpdate
638     end
639     object AddChild: TAction
640     Caption = 'Add Department to Child List'
641     OnExecute = AddChildExecute
642     OnUpdate = DeleteNodeUpdate
643     end
644     object AddSibling: TAction
645     Caption = 'Add Sibling'
646     OnExecute = AddSiblingExecute
647     OnUpdate = DeleteNodeUpdate
648     end
649     object AddFirstChild: TAction
650     Caption = 'Add Department as First Child'
651     OnExecute = AddFirstChildExecute
652     OnUpdate = DeleteNodeUpdate
653     end
654     end
655     object PopupMenu1: TPopupMenu
656     left = 64
657     top = 318
658     object MenuItem3: TMenuItem
659     Action = AddSibling
660     end
661     object MenuItem4: TMenuItem
662     Action = AddFirstChild
663     end
664     object MenuItem2: TMenuItem
665     Action = AddChild
666     end
667     object MenuItem1: TMenuItem
668     Action = DeleteNode
669     end
670     end
671     object ImageList1: TImageList
672     left = 64
673     top = 136
674     Bitmap = {
675     4C69030000001000000010000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
676     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
677     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
678     FF00FFFFFF0068C774FF67C673FF65C270FF62BE6DFFFFFFFF00FFFFFF00FFFF
679     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
680     FF00FFFFFF0066C572FFA2D8ABFFA0D7A9FF5DB868FFFFFFFF00FFFFFF00FFFF
681     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
682     FF00FFFFFF0063C06FFF9ED6A7FF9CD4A5FF59B263FFFFFFFF00FFFFFF00FFFF
683     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
684     FF00FFFFFF005FBB6AFF9AD4A3FF98D3A1FF53AA5DFFFFFFFF00FFFFFF00FFFF
685     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
686     FF00FFFFFF005BB465FF96D29FFF94D09CFF4EA257FFFFFFFF00FFFFFF00FFFF
687     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
688     FF00FFFFFF0056AD5FFF93CF9AFF90CE98FF489A50FFFFFFFF00FFFFFF00FFFF
689     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
690     FF00FFFFFF0050A659FF8ECC95FF8BCB93FF42924AFFFFFFFF00FFFFFF00FFFF
691     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
692     FF00FFFFFF004A9E53FF8ACA91FF87C98EFF3C8A43FFFFFFFF00FFFFFF00FFFF
693     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
694     FF00FFFFFF0045954CFF85C78CFF82C689FF36823DFFFFFFFF00FFFFFF00FFFF
695     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
696     FF0043944B384E9A55FF81C587FF7EC385FF317A36FFFFFFFF00FFFFFF00FFFF
697     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF004292
698     4AB83D8C45F765AD6CFF7DC282FF7AC180FF4B9250FF276D2CF7246828BBFFFF
699     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF003C8A
700     430638833ED9519957FF79C07EFF76BF7CFF468D4BFF236627DB20622306FFFF
701     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
702     FF00FFFFFF002D7533CF488F4DFF458C4AFF226526D1FFFFFF00FFFFFF00FFFF
703     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
704     FF00FFFFFF00FFFFFF00256929C4216425C9FFFFFF00FFFFFF00FFFFFF00FFFF
705     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
706     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
707     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
708     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
709     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
710     FF00FFFFFF00FFFFFF0067C673C965C270C4FFFFFF00FFFFFF00FFFFFF00FFFF
711     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
712     FF00FFFFFF0066C572D17ECA88FF7BC885FF5DB868CFFFFFFF00FFFFFF00FFFF
713     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0068C7
714     740666C472DB7CCA87FF9ED6A7FF9CD4A5FF73C07DFF55AC5ED950A65906FFFF
715     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0065C3
716     71BB62BF6EF779C683FF9AD4A3FF98D3A1FF7DC386FF4FA458F74A9E53B8FFFF
717     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
718     FF00FFFFFF005BB465FF96D29FFF94D09CFF5DAC65FF499C5238FFFFFF00FFFF
719     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
720     FF00FFFFFF0056AD5FFF93CF9AFF90CE98FF489A50FFFFFFFF00FFFFFF00FFFF
721     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
722     FF00FFFFFF0050A659FF8ECC95FF8BCB93FF42924AFFFFFFFF00FFFFFF00FFFF
723     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
724     FF00FFFFFF004A9E53FF8ACA91FF87C98EFF3C8A43FFFFFFFF00FFFFFF00FFFF
725     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
726     FF00FFFFFF0045954CFF85C78CFF82C689FF36823DFFFFFFFF00FFFFFF00FFFF
727     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
728     FF00FFFFFF003F8D46FF81C587FF7EC385FF317A36FFFFFFFF00FFFFFF00FFFF
729     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
730     FF00FFFFFF0039853FFF7DC282FF7AC180FF2B7230FFFFFFFF00FFFFFF00FFFF
731     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
732     FF00FFFFFF00337D39FF79C07EFF76BF7CFF266B2BFFFFFFFF00FFFFFF00FFFF
733     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
734     FF00FFFFFF002D7533FF74BD7AFF72BD78FF226526FFFFFFFF00FFFFFF00FFFF
735     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
736     FF00FFFFFF00286E2DFF256929FF216425FF1E6022FFFFFFFF00FFFFFF00FFFF
737     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
738     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
739     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
740     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
741     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
742     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
743     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
744     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
745     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
746     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
747     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
748     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0047994FBB4191
749     4906FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
750     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00419149F73B88
751     42DBFFFFFF00FFFFFF00FFFFFF00FFFFFF0068C774FF68C774FF65C371FF61BE
752     6DFF5DB868FF58B162FF53A95CFF4DA156FF47994FFF419149FF5AA362FF559D
753     5CFF2F7835D1FFFFFF00FFFFFF00FFFFFF0068C774FFA5DAAEFFA2D8ABFF9ED6
754     A7FF9AD4A3FF96D29FFF93CF9AFF8ECC95FF89CA90FF85C78BFF81C587FF7DC2
755     82FF4A9150FF256929C9FFFFFF00FFFFFF0065C371FFA0D7A9FF9CD5A5FF98D3
756     A1FF94D09DFF90CE98FF8BCB93FF87C98EFF82C689FF7EC384FF7AC180FF76BE
757     7CFF458C4AFF216324C4FFFFFF00FFFFFF0061BE6DFF5DB868FF58B162FF53A9
758     5CFF4DA156FF47994FFF419149FF3B8842FF35803BFF3F8845FF59A15EFF448B
759     49FF216324CFFFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
760     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF002A702F38256929F72163
761     24D9FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
762     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00216324B81D5E
763     2006FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
764     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
765     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
766     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
767     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
768     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
769     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
770     FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
771     FF00FFFFFF00FFFFFF00FFFFFF00
772     }
773     end
774     end