-
Notifications
You must be signed in to change notification settings - Fork 14
/
Copy pathdifstspec.rtf
1061 lines (1046 loc) · 177 KB
/
difstspec.rtf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
{\rtf1\ansi\ansicpg1252\uc1\deff0\stshfdbch13\stshfloch0\stshfhich0\stshfbi0\deflang1036\deflangfe2052{\fonttbl{\f0\froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f1\fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial;}
{\f2\fmodern\fcharset0\fprq1{\*\panose 02070309020205020404}Courier New;}{\f10\fnil\fcharset2\fprq2{\*\panose 05000000000000000000}Wingdings;}{\f13\fnil\fcharset134\fprq2{\*\panose 02010600030101010101}SimSun{\*\falt ??\'a8\'ac?};}
{\f35\fswiss\fcharset0\fprq2{\*\panose 020b0604030504040204}Tahoma;}{\f36\fnil\fcharset134\fprq2{\*\panose 00000000000000000000}@SimSun;}{\f37\froman\fcharset238\fprq2 Times New Roman CE;}{\f38\froman\fcharset204\fprq2 Times New Roman Cyr;}
{\f40\froman\fcharset161\fprq2 Times New Roman Greek;}{\f41\froman\fcharset162\fprq2 Times New Roman Tur;}{\f42\froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f43\froman\fcharset178\fprq2 Times New Roman (Arabic);}
{\f44\froman\fcharset186\fprq2 Times New Roman Baltic;}{\f45\froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f47\fswiss\fcharset238\fprq2 Arial CE;}{\f48\fswiss\fcharset204\fprq2 Arial Cyr;}{\f50\fswiss\fcharset161\fprq2 Arial Greek;}
{\f51\fswiss\fcharset162\fprq2 Arial Tur;}{\f52\fswiss\fcharset177\fprq2 Arial (Hebrew);}{\f53\fswiss\fcharset178\fprq2 Arial (Arabic);}{\f54\fswiss\fcharset186\fprq2 Arial Baltic;}{\f55\fswiss\fcharset163\fprq2 Arial (Vietnamese);}
{\f57\fmodern\fcharset238\fprq1 Courier New CE;}{\f58\fmodern\fcharset204\fprq1 Courier New Cyr;}{\f60\fmodern\fcharset161\fprq1 Courier New Greek;}{\f61\fmodern\fcharset162\fprq1 Courier New Tur;}{\f62\fmodern\fcharset177\fprq1 Courier New (Hebrew);}
{\f63\fmodern\fcharset178\fprq1 Courier New (Arabic);}{\f64\fmodern\fcharset186\fprq1 Courier New Baltic;}{\f65\fmodern\fcharset163\fprq1 Courier New (Vietnamese);}{\f169\fnil\fcharset0\fprq2 SimSun Western{\*\falt ??\'a8\'ac?};}
{\f387\fswiss\fcharset238\fprq2 Tahoma CE;}{\f388\fswiss\fcharset204\fprq2 Tahoma Cyr;}{\f390\fswiss\fcharset161\fprq2 Tahoma Greek;}{\f391\fswiss\fcharset162\fprq2 Tahoma Tur;}{\f392\fswiss\fcharset177\fprq2 Tahoma (Hebrew);}
{\f393\fswiss\fcharset178\fprq2 Tahoma (Arabic);}{\f394\fswiss\fcharset186\fprq2 Tahoma Baltic;}{\f395\fswiss\fcharset163\fprq2 Tahoma (Vietnamese);}{\f396\fswiss\fcharset222\fprq2 Tahoma (Thai);}{\f399\fnil\fcharset0\fprq2 @SimSun Western;}}
{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;
\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}{\stylesheet{\ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0
\fs20\lang1036\langfe1036\loch\f0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 \snext0 Normal;}{\s1\ql \fi-113\li113\ri0\sb240\sa60\keepn\widctlpar\jclisttab\tx360\faauto\ls4\outlinelevel0\adjustright\rin0\lin113\itap0
\b\fs36\lang1036\langfe1036\kerning28\loch\f1\hich\af1\dbch\af13\cgrid\langnp1036\langfenp1036 \sbasedon0 \snext0 heading 1;}{\s2\ql \fi-679\li792\ri0\sb240\sa60\keepn\widctlpar\jclisttab\tx792\faauto\ls4\ilvl1\outlinelevel1\adjustright\rin0\lin792\itap0
\b\i\fs32\lang1036\langfe1036\loch\f1\hich\af1\dbch\af13\cgrid\langnp1036\langfenp1036 \sbasedon0 \snext0 heading 2;}{\s3\ql \fi-1111\li1224\ri0\sb240\sa60\keepn\widctlpar\jclisttab\tx1224\faauto\ls4\ilvl2\outlinelevel2\adjustright\rin0\lin1224\itap0
\b\fs28\lang1036\langfe1036\loch\f1\hich\af1\dbch\af13\cgrid\langnp1036\langfenp1036 \sbasedon0 \snext0 heading 3;}{\s4\ql \fi-850\li1134\ri0\sb240\sa60\keepn\widctlpar
\jclisttab\tx1418\jclisttab\tx2880\faauto\ls4\ilvl3\outlinelevel3\adjustright\rin0\lin1134\itap0 \b\fs25\lang1036\langfe1036\loch\f1\hich\af1\dbch\af13\cgrid\langnp1036\langfenp1036 \sbasedon0 \snext0 heading 4;}{\*\cs10 \additive \ssemihidden
Default Paragraph Font;}{\*\ts11\tsrowd\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\tscellwidthfts0\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv
\ql \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \fs20\lang1024\langfe1024\loch\f0\hich\af0\dbch\af13\cgrid\langnp1024\langfenp1024 \snext11 \ssemihidden Normal Table;}{
\s15\ql \fi284\li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\f0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 \sbasedon0 \snext15 Normal2;}{\s16\ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0
\b\fs22\lang1036\langfe1036\loch\f0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 \sbasedon0 \snext16 presfunctit;}{\s17\ql \fi-1985\li2552\ri0\widctlpar\faauto\adjustright\rin0\lin2552\itap0
\fs20\lang1036\langfe1036\loch\f0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 \sbasedon0 \snext17 Lstparam;}{\s18\ql \fi-2693\li2977\ri0\widctlpar\faauto\adjustright\rin0\lin2977\itap0
\b\fs22\lang1036\langfe1036\loch\f2\hich\af2\dbch\af13\cgrid\langnp1036\langfenp1036 \sbasedon0 \snext18 func;}{\s19\ql \li284\ri0\sa60\widctlpar\faauto\adjustright\rin0\lin284\itap0
\fs22\lang1036\langfe1036\loch\f0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 \sbasedon0 \snext19 DescFunc;}{\s20\ql \li284\ri0\keepn\widctlpar\brdrt\brdrs\brdrw10\brsp20 \brdrl\brdrs\brdrw10\brsp80 \brdrb\brdrs\brdrw10\brsp20 \brdrr
\brdrs\brdrw10\brsp80 \faauto\adjustright\rin0\lin284\rtlgutter\itap0 \shading500\cbpat8 \fs20\lang1024\langfe1024\loch\f2\hich\af2\dbch\af13\cgrid\noproof\langnp1033\langfenp1036 \sbasedon0 \snext20 code;}{\s21\ql \fi-360\li644\ri0\widctlpar
\jclisttab\tx644{\*\pn \pnlvlbody\ilvl0\ls6\pnrnot0\pndec }\faauto\ls6\adjustright\rin0\lin644\itap0 \fs20\lang1036\langfe1036\loch\f0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 \sbasedon0 \snext21 listpt;}{\*\cs22 \additive \ul\cf2 \sbasedon10
Hyperlink;}}{\*\listtable{\list\listtemplateid-1432715716{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'00.;}{\levelnumbers\'01;}\fi-113\li113\jclisttab\tx360\lin113 }{\listlevel
\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'04\'00.\'01.;}{\levelnumbers\'01\'03;}\fi-679\li792\jclisttab\tx792\lin792 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0
\levelstartat1\levelspace0\levelindent0{\leveltext\'06\'00.\'01.\'02.;}{\levelnumbers\'01\'03\'05;}\fi-1111\li1224\jclisttab\tx1224\lin1224 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\'08\'00.\'01.\'02.\'03.;}{\levelnumbers\'01\'03\'05\'07;}\fi-648\li1728\jclisttab\tx2880\lin1728 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\'0a\'00.\'01.\'02.\'03.\'04.;}{\levelnumbers\'01\'03\'05\'07\'09;}\fi-792\li2232\jclisttab\tx3600\lin2232 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\'0c\'00.\'01.\'02.\'03.\'04.\'05.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b;}\fi-936\li2736\jclisttab\tx4320\lin2736 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\'0e\'00.\'01.\'02.\'03.\'04.\'05.\'06.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d;}\fi-1080\li3240\jclisttab\tx5040\lin3240 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\'10\'00.\'01.\'02.\'03.\'04.\'05.\'06.\'07.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d\'0f;}\fi-1224\li3744\jclisttab\tx5760\lin3744 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\'12\'00.\'01.\'02.\'03.\'04.\'05.\'06.\'07.\'08.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d\'0f\'11;}\fi-1440\li4320\jclisttab\tx6840\lin4320 }{\listname ;}\listid153305752}{\list\listtemplateid-584523676\listsimple{\listlevel\levelnfc23\levelnfcn23
\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \s21\fi-360\li360\jclisttab\tx360\lin360 }{\listname ;}\listid269246819}{\list\listtemplateid945973718\listsimple{\listlevel
\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat0\levelspace0\levelindent0{\leveltext\'01-;}{\levelnumbers;}\fbias0 \fi-360\li644\jclisttab\tx644\lin644 }{\listname ;}\listid454955075}{\list\listtemplateid798658450\listsimple
{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat0\levelspace0\levelindent0{\leveltext\'01-;}{\levelnumbers;}\fbias0 \fi-360\li644\jclisttab\tx644\lin644 }{\listname ;}\listid735125252}{\list\listtemplateid1061061304
{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'00.;}{\levelnumbers\'01;}\s1\fi-113\li113\jclisttab\tx360\lin113 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0
\levelstartat1\levelspace0\levelindent0{\leveltext\'04\'00.\'01.;}{\levelnumbers\'01\'03;}\s2\fi-679\li792\jclisttab\tx792\lin792 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\'06\'00.\'01.\'02.;}{\levelnumbers\'01\'03\'05;}\s3\fi-1111\li1224\jclisttab\tx1224\lin1224 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'08\'00.\'01.\'02.\'03.;}{\levelnumbers
\'01\'03\'05\'07;}\s4\fi-648\li1728\jclisttab\tx2880\lin1728 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'0a\'00.\'01.\'02.\'03.\'04.;}{\levelnumbers\'01\'03\'05\'07\'09;}
\fi-792\li2232\jclisttab\tx3600\lin2232 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'0c\'00.\'01.\'02.\'03.\'04.\'05.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b;}\fi-936\li2736
\jclisttab\tx4320\lin2736 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'0e\'00.\'01.\'02.\'03.\'04.\'05.\'06.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d;}\fi-1080\li3240
\jclisttab\tx5040\lin3240 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'10\'00.\'01.\'02.\'03.\'04.\'05.\'06.\'07.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d\'0f;}\fi-1224\li3744
\jclisttab\tx5760\lin3744 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'12\'00.\'01.\'02.\'03.\'04.\'05.\'06.\'07.\'08.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d\'0f\'11;}
\fi-1440\li4320\jclisttab\tx6840\lin4320 }{\listname ;}\listid1002582310}{\list\listtemplateid-1295644390{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'00.;}{\levelnumbers\'01;}
\fi-360\li360\jclisttab\tx720\lin360 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'04\'00.\'01.;}{\levelnumbers\'01\'03;}\fi-432\li792\jclisttab\tx1440\lin792 }{\listlevel\levelnfc0
\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'06\'00.\'01.\'02.;}{\levelnumbers\'01\'03\'05;}\fi-504\li1224\jclisttab\tx2160\lin1224 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0
\levelstartat1\levelspace0\levelindent0{\leveltext\'08\'00.\'01.\'02.\'03.;}{\levelnumbers\'01\'03\'05\'07;}\fi-648\li1728\jclisttab\tx2880\lin1728 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0
{\leveltext\'0a\'00.\'01.\'02.\'03.\'04.;}{\levelnumbers\'01\'03\'05\'07\'09;}\fi-792\li2232\jclisttab\tx3600\lin2232 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\'0c\'00.\'01.\'02.\'03.\'04.\'05.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b;}\fi-936\li2736\jclisttab\tx4320\lin2736 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\'0e\'00.\'01.\'02.\'03.\'04.\'05.\'06.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d;}\fi-1080\li3240\jclisttab\tx5040\lin3240 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\'10\'00.\'01.\'02.\'03.\'04.\'05.\'06.\'07.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d\'0f;}\fi-1224\li3744\jclisttab\tx5760\lin3744 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\'12\'00.\'01.\'02.\'03.\'04.\'05.\'06.\'07.\'08.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d\'0f\'11;}\fi-1440\li4320\jclisttab\tx6840\lin4320 }{\listname ;}\listid1191723522}{\list\listtemplateid-924317180{\listlevel\levelnfc0\levelnfcn0\leveljc0
\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'00.;}{\levelnumbers\'01;}\fi-360\li360\jclisttab\tx720\lin360 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0
{\leveltext\'04\'00.\'01.;}{\levelnumbers\'01\'03;}\fi-432\li792\jclisttab\tx1440\lin792 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'06\'00.\'01.\'02.;}{\levelnumbers\'01\'03\'05;}
\fi-504\li1224\jclisttab\tx2160\lin1224 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'08\'00.\'01.\'02.\'03.;}{\levelnumbers\'01\'03\'05\'07;}\fi-648\li1728\jclisttab\tx2880\lin1728 }
{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'0a\'00.\'01.\'02.\'03.\'04.;}{\levelnumbers\'01\'03\'05\'07\'09;}\fi-792\li2232\jclisttab\tx3600\lin2232 }{\listlevel\levelnfc0\levelnfcn0
\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'0c\'00.\'01.\'02.\'03.\'04.\'05.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b;}\fi-936\li2736\jclisttab\tx4320\lin2736 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0
\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'0e\'00.\'01.\'02.\'03.\'04.\'05.\'06.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d;}\fi-1080\li3240\jclisttab\tx5040\lin3240 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0
\levelstartat1\levelspace0\levelindent0{\leveltext\'10\'00.\'01.\'02.\'03.\'04.\'05.\'06.\'07.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d\'0f;}\fi-1224\li3744\jclisttab\tx5760\lin3744 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0
\levelstartat1\levelspace0\levelindent0{\leveltext\'12\'00.\'01.\'02.\'03.\'04.\'05.\'06.\'07.\'08.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d\'0f\'11;}\fi-1440\li4320\jclisttab\tx6840\lin4320 }{\listname ;}\listid2036760129}}{\*\listoverridetable
{\listoverride\listid1191723522\listoverridecount0\ls1}{\listoverride\listid2036760129\listoverridecount0\ls2}{\listoverride\listid153305752\listoverridecount0\ls3}{\listoverride\listid1002582310\listoverridecount0\ls4}{\listoverride\listid735125252
\listoverridecount0\ls5}{\listoverride\listid269246819\listoverridecount0\ls6}{\listoverride\listid454955075\listoverridecount0\ls7}}{\*\rsidtbl \rsid5050486\rsid8944130\rsid10690827\rsid14765595\rsid15493243}{\*\generator Microsoft Word 10.0.2627;}{\info
{\title DifStrm : Partie gestion de fichier}{\author MS}{\operator Gilles Vollant}{\creatim\yr1998\mo10\dy5\hr22\min46}{\revtim\yr2001\mo6\dy14\hr23\min40}{\printim\yr1999\mo7\dy15\hr2\min39}{\version14}{\edmins6844}{\nofpages11}{\nofwords2684}
{\nofchars14768}{\*\company }{\nofcharsws17418}{\vern16437}}\paperw11906\paperh16838\margl1417\margr1417\margt1417\margb1417
\deftab708\widowctrl\ftnbj\aenddoc\hyphhotz425\noxlattoyen\expshrtn\noultrlspc\dntblnsbdb\nospaceforul\hyphcaps0\formshade\horzdoc\dghspace120\dgvspace120\dghorigin1701\dgvorigin1984\dghshow0\dgvshow3
\jcompress\viewkind4\viewscale120\pgbrdrhead\pgbrdrfoot\nolnhtadjtbl\rsidroot10690827 \fet0\sectd \linex0\headery709\footery709\colsx709\endnhere\pgbrdropt32\sectdefaultcl\sftnbj {\*\pnseclvl1\pnucrm\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl2
\pnucltr\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang {\pntxta )}}{\*\pnseclvl5\pndec\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl6
\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl8\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang
{\pntxtb (}{\pntxta )}}\pard\plain \qc \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\b\f35\fs56\insrsid15493243 \hich\af35\dbch\af13\loch\f35 DifStream\line
}{\b\f35\fs40\insrsid15493243 \hich\af35\dbch\af13\loch\f35 \hich\f35 Gestionnaire d'\'e9\loch\f35 volution de fichiers
\par }\pard \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 {\insrsid15493243
\par {\listtext\pard\plain\s1 \b\f1\fs36\lang1036\langfe1036\kerning28\langfenp1036\insrsid15493243 \hich\af1\dbch\af13\loch\f1 1.\tab}}\pard\plain \s1\ql \fi-113\li113\ri0\sb240\sa60\keepn\widctlpar
\jclisttab\tx360\faauto\ls4\outlinelevel0\adjustright\rin0\lin113\itap0 \b\fs36\lang1036\langfe1036\kerning28\loch\af1\hich\af1\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af1\dbch\af13\loch\f1 \hich\f1 Pr\'e9\loch\f1
sentation et organisation
\par {\listtext\pard\plain\s2 \b\i\f1\fs32\lang1036\langfe1036\langfenp1036\insrsid15493243 \hich\af1\dbch\af13\loch\f1 1.1.\tab}}\pard\plain \s2\ql \fi-679\li792\ri0\sb240\sa60\keepn\widctlpar
\jclisttab\tx792\faauto\ls4\ilvl1\outlinelevel1\adjustright\rin0\lin792\itap0 \b\i\fs32\lang1036\langfe1036\loch\af1\hich\af1\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af1\dbch\af13\loch\f1 \hich\f1 Pr\'e9\loch\f1 sentation
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 DifStream est compos\'e9\loch\f0
d'une librairie externe et trois couches }{\insrsid5050486 \hich\af0\dbch\af13\loch\f0 logicielles}{\insrsid15493243 \hich\af0\dbch\af13\loch\f0 . Chaque couche utilise l\hich\af0\dbch\af13\loch\f0 \hich\f0 a ou les pr\'e9\loch\f0 \hich\f0 c\'e9\loch\f0
\hich\f0 dentes, et peut-\'ea\loch\f0 \hich\f0 tre utilis\'e9\loch\f0 \hich\f0 e par une application ind\'e9\loch\f0 pendante.
\par {\pntext\pard\plain\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \hich\af0\dbch\af13\loch\f0 -\tab}}\pard \ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls7\pnrnot0\pnindent360\pnsp120\pnhang {\pntxtb -}}
\faauto\ls7\adjustright\rin0\lin644\itap0 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 La zLib\~: librairie de compression gratuite. (}{\field{\*\fldinst {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 HYPERLINK "http://www.cdrom.com/pub/infozip/zlib/" }{
\insrsid14765595 {\*\datafield
00d0c9ea79f9bace118c8200aa004ba90b0200000003000000e0c9ea79f9bace118c8200aa004ba90b4e00000068007400740070003a002f002f007700770077002e006300640072006f006d002e0063006f006d002f007000750062002f0069006e0066006f007a00690070002f007a006c00690062002f00000000000000
00000000000000000000000000e100}}}{\fldrslt {\cs22\ul\cf2\insrsid15493243 \hich\af0\dbch\af13\loch\f0 http://www.cdrom.com/pub/infozip/zlib/}}}{\insrsid15493243 \hich\af0\dbch\af13\loch\f0 ). La lecture du fichier zLib.h, qui\hich\af0\dbch\af13\loch\f0
\hich\f0 d\'e9\loch\f0 \hich\f0 crit l'interface de cette librairie, est recommand\'e9\loch\f0 e pour la suite de ce document.
\par {\pntext\pard\plain\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \hich\af0\dbch\af13\loch\f0 -\tab}}\pard \ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls7\pnrnot0\pnindent360\pnsp120\pnhang {\pntxtb -}}
\faauto\ls7\adjustright\rin0\lin644\itap0 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 La librairie flux de diff\'e9\loch\f0 rence\~\hich\f0 : cette librairie (d\'e9\loch\f0 \hich\f0 crite dans le fichier difstrm.h) g\'e8\loch\f0 \hich\f0
re la cr\'e9\loch\f0 \hich\f0 ation et l'application d'un patch \'e0\loch\f0 partir d'un fichier d'origine disp\hich\af0\dbch\af13\loch\f0 \hich\f0 onible en m\'e9\loch\f0 \hich\f0 moire (ou accessible avec une CallBack), d'un flux correspondant \'e0
\loch\f0 \hich\f0 une nouvelle version de ce fichier et d'un flux correspondant au patch g\'e9\loch\f0 \hich\f0 n\'e9\loch\f0 \hich\f0 r\'e9\loch\f0 \hich\f0 (l'un des flux est en lecture, l'autre en \'e9\loch\f0 \hich\f0
criture). Cette librairie est aujourd'hui op\'e9\loch\f0 rationnell\hich\af0\dbch\af13\loch\f0 e\hich\af0\dbch\af13\loch\f0 \hich\f0 (m\'ea\loch\f0 \hich\f0 me si elle doit encore \'ea\loch\f0 \hich\f0 tre am\'e9\loch\f0 \hich\f0 lior\'e9\loch\f0
e). Elle ne contient aucune fonction de manipulation de fichier.
\par {\pntext\pard\plain\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \hich\af0\dbch\af13\loch\f0 -\tab}}\pard \ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls7\pnrnot0\pnindent360\pnsp120\pnhang {\pntxtb -}}
\faauto\ls7\adjustright\rin0\lin644\itap0 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 La librairie de manipulation de fichier DifStream (.DFS). Cette librairie prend en charge la manipulation des m\'e9\loch\f0
ta-fichiers .DFS, qui comprennent pl\hich\af0\dbch\af13\loch\f0 \hich\f0 usieurs patch de plusieurs fichiers. Cette libraire est en cours de sp\'e9\loch\f0 \hich\f0 cification et d\'e9\loch\f0 \hich\f0
veloppement. Elle s'appuie sur la librairie flux de diff\'e9\loch\f0 rence, comme gzio.c et contrib/minizip s'appuie sur le noyau de la zLib pour manipuler les fichiers .gz et .zip\hich\af0\dbch\af13\loch\f0 .
\par {\pntext\pard\plain\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \hich\af0\dbch\af13\loch\f0 -\tab}}\pard \ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls7\pnrnot0\pnindent360\pnsp120\pnhang {\pntxtb -}}
\faauto\ls7\adjustright\rin0\lin644\itap0 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0
L'application DifStream proprement dit. Elle existera en version console, compatible Unix et Win32 (qui sera une application simple utilisant la librairie de manipulation de fichier DifStream) et en version Windows GUI.
\par }\pard \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 {\insrsid15493243
\par {\listtext\pard\plain\s2 \b\i\f1\fs32\lang1036\langfe1036\langfenp1036\insrsid15493243 \hich\af1\dbch\af13\loch\f1 1.2.\tab}}\pard\plain \s2\ql \fi-679\li792\ri0\sb240\sa60\keepn\widctlpar
\jclisttab\tx792\faauto\ls4\ilvl1\outlinelevel1\adjustright\rin0\lin792\itap0 \b\i\fs32\lang1036\langfe1036\loch\af1\hich\af1\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af1\dbch\af13\loch\f1 \hich\f1 R\'e9\loch\f1
partition des fichiers
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243
\par }\trowd \irow0\irowband0\ts11\trgaph70\trleft-70\trbrdrt\brdrs\brdrw10 \trbrdrl\brdrs\brdrw10 \trbrdrb\brdrs\brdrw10 \trbrdrr\brdrs\brdrw10 \trbrdrh\brdrs\brdrw10 \trbrdrv\brdrs\brdrw10 \trftsWidth1\trpaddl70\trpaddr70\trpaddfl3\trpaddfr3 \clvertalt
\clbrdrt\brdrs\brdrw10 \clbrdrl\brdrs\brdrw10 \clbrdrb\brdrs\brdrw10 \clbrdrr\brdrs\brdrw10 \clcbpat8\clshdng500\cltxlrtb\clftsWidth3\clwWidth4606\clcbpatraw8\clshdngraw500 \cellx4536\clvertalt\clbrdrt\brdrs\brdrw10 \clbrdrl\brdrs\brdrw10 \clbrdrb
\brdrs\brdrw10 \clbrdrr\brdrs\brdrw10 \clcbpat8\clshdng500\cltxlrtb\clftsWidth3\clwWidth4606\clcbpatraw8\clshdngraw500 \cellx9142\pard \qc \li0\ri0\widctlpar\intbl\faauto\adjustright\rin0\lin0 {\b\fs24\insrsid15493243 \hich\af0\dbch\af13\loch\f0
Nom des fichiers\cell \hich\af0\dbch\af13\loch\f0 \hich\f0 R\'f4\loch\f0 le\cell }\pard \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 {\b\fs24\insrsid15493243 \trowd \irow0\irowband0\ts11\trgaph70\trleft-70\trbrdrt
\brdrs\brdrw10 \trbrdrl\brdrs\brdrw10 \trbrdrb\brdrs\brdrw10 \trbrdrr\brdrs\brdrw10 \trbrdrh\brdrs\brdrw10 \trbrdrv\brdrs\brdrw10 \trftsWidth1\trpaddl70\trpaddr70\trpaddfl3\trpaddfr3 \clvertalt\clbrdrt\brdrs\brdrw10 \clbrdrl\brdrs\brdrw10 \clbrdrb
\brdrs\brdrw10 \clbrdrr\brdrs\brdrw10 \clcbpat8\clshdng500\cltxlrtb\clftsWidth3\clwWidth4606\clcbpatraw8\clshdngraw500 \cellx4536\clvertalt\clbrdrt\brdrs\brdrw10 \clbrdrl\brdrs\brdrw10 \clbrdrb\brdrs\brdrw10 \clbrdrr\brdrs\brdrw10
\clcbpat8\clshdng500\cltxlrtb\clftsWidth3\clwWidth4606\clcbpatraw8\clshdngraw500 \cellx9142\row }\trowd \irow1\irowband1\ts11\trgaph70\trleft-70\trbrdrt\brdrs\brdrw10 \trbrdrl\brdrs\brdrw10 \trbrdrb\brdrs\brdrw10 \trbrdrr\brdrs\brdrw10 \trbrdrh
\brdrs\brdrw10 \trbrdrv\brdrs\brdrw10 \trftsWidth1\trpaddl70\trpaddr70\trpaddfl3\trpaddfr3 \clvertalt\clbrdrt\brdrs\brdrw10 \clbrdrl\brdrs\brdrw10 \clbrdrb\brdrs\brdrw10 \clbrdrr\brdrs\brdrw10 \cltxlrtb\clftsWidth3\clwWidth4606\clshdrawnil \cellx4536
\clvertalt\clbrdrt\brdrs\brdrw10 \clbrdrl\brdrs\brdrw10 \clbrdrb\brdrs\brdrw10 \clbrdrr\brdrs\brdrw10 \cltxlrtb\clftsWidth3\clwWidth4606\clshdrawnil \cellx9142\pard \ql \li284\ri0\widctlpar\intbl\faauto\adjustright\rin0\lin284 {\b\insrsid15493243
\hich\af0\dbch\af13\loch\f0 Zlib\\zlib.h
\par }{\insrsid15493243 \hich\af0\dbch\af13\loch\f0 Zlib\\*
\par }\pard \ql \li0\ri0\widctlpar\intbl\faauto\adjustright\rin0\lin0 {\insrsid15493243 \cell \hich\af0\dbch\af13\loch\f0 Libraire de compression zLib\cell }\pard \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 {\insrsid15493243
\trowd \irow1\irowband1\ts11\trgaph70\trleft-70\trbrdrt\brdrs\brdrw10 \trbrdrl\brdrs\brdrw10 \trbrdrb\brdrs\brdrw10 \trbrdrr\brdrs\brdrw10 \trbrdrh\brdrs\brdrw10 \trbrdrv\brdrs\brdrw10 \trftsWidth1\trpaddl70\trpaddr70\trpaddfl3\trpaddfr3 \clvertalt
\clbrdrt\brdrs\brdrw10 \clbrdrl\brdrs\brdrw10 \clbrdrb\brdrs\brdrw10 \clbrdrr\brdrs\brdrw10 \cltxlrtb\clftsWidth3\clwWidth4606\clshdrawnil \cellx4536\clvertalt\clbrdrt\brdrs\brdrw10 \clbrdrl\brdrs\brdrw10 \clbrdrb\brdrs\brdrw10 \clbrdrr\brdrs\brdrw10
\cltxlrtb\clftsWidth3\clwWidth4606\clshdrawnil \cellx9142\row }\pard \ql \li284\ri0\widctlpar\intbl\faauto\adjustright\rin0\lin284 {\b\insrsid15493243 \hich\af0\dbch\af13\loch\f0 difstool.h
\par }{\insrsid15493243 \hich\af0\dbch\af13\loch\f0 difstool.c
\par \cell }\pard \ql \li0\ri0\widctlpar\intbl\faauto\adjustright\rin0\lin0 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 Outils g\'e9\loch\f0 \hich\f0 n\'e9\loch\f0 \hich\f0 rique utilis\'e9\loch\f0 par DifStrm\cell }\pard
\ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 {\insrsid15493243 \trowd \irow2\irowband2\ts11\trgaph70\trleft-70\trbrdrt\brdrs\brdrw10 \trbrdrl\brdrs\brdrw10 \trbrdrb\brdrs\brdrw10 \trbrdrr\brdrs\brdrw10 \trbrdrh\brdrs\brdrw10
\trbrdrv\brdrs\brdrw10 \trftsWidth1\trpaddl70\trpaddr70\trpaddfl3\trpaddfr3 \clvertalt\clbrdrt\brdrs\brdrw10 \clbrdrl\brdrs\brdrw10 \clbrdrb\brdrs\brdrw10 \clbrdrr\brdrs\brdrw10 \cltxlrtb\clftsWidth3\clwWidth4606\clshdrawnil \cellx4536\clvertalt\clbrdrt
\brdrs\brdrw10 \clbrdrl\brdrs\brdrw10 \clbrdrb\brdrs\brdrw10 \clbrdrr\brdrs\brdrw10 \cltxlrtb\clftsWidth3\clwWidth4606\clshdrawnil \cellx9142\row }\pard \ql \li284\ri0\widctlpar\intbl\faauto\adjustright\rin0\lin284 {\b\insrsid15493243
\hich\af0\dbch\af13\loch\f0 difstrm.h
\par }{\insrsid15493243 \hich\af0\dbch\af13\loch\f0 difstrmi.h
\par \hich\af0\dbch\af13\loch\f0 apldifst.c
\par \hich\af0\dbch\af13\loch\f0 difstrm.c
\par \hich\af0\dbch\af13\loch\f0 makdifst.c
\par }\pard \ql \li0\ri0\widctlpar\intbl\faauto\adjustright\rin0\lin0 {\insrsid15493243 \cell \hich\af0\dbch\af13\loch\f0 \hich\f0 Librairie flux de diff\'e9\loch\f0 rence\~\cell }\pard \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0
{\insrsid15493243 \trowd \irow3\irowband3\ts11\trgaph70\trleft-70\trbrdrt\brdrs\brdrw10 \trbrdrl\brdrs\brdrw10 \trbrdrb\brdrs\brdrw10 \trbrdrr\brdrs\brdrw10 \trbrdrh\brdrs\brdrw10 \trbrdrv\brdrs\brdrw10
\trftsWidth1\trpaddl70\trpaddr70\trpaddfl3\trpaddfr3 \clvertalt\clbrdrt\brdrs\brdrw10 \clbrdrl\brdrs\brdrw10 \clbrdrb\brdrs\brdrw10 \clbrdrr\brdrs\brdrw10 \cltxlrtb\clftsWidth3\clwWidth4606\clshdrawnil \cellx4536\clvertalt\clbrdrt\brdrs\brdrw10 \clbrdrl
\brdrs\brdrw10 \clbrdrb\brdrs\brdrw10 \clbrdrr\brdrs\brdrw10 \cltxlrtb\clftsWidth3\clwWidth4606\clshdrawnil \cellx9142\row }\pard \ql \li0\ri0\widctlpar\intbl\faauto\adjustright\rin0\lin0 {\insrsid15493243
\par }\pard \ql \li284\ri0\widctlpar\intbl\faauto\adjustright\rin0\lin284 {\b\insrsid15493243\charrsid15493243 \hich\af0\dbch\af13\loch\f0 DfsMFile.h
\par }{\insrsid15493243\charrsid15493243 \hich\af0\dbch\af13\loch\f0 patfile.h
\par }{\insrsid15493243 \hich\af0\dbch\af13\loch\f0 diffile.h }{\fs16\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 (uniquement pr\'e9\loch\f0 \hich\f0 sent comme ancienne \'e9\loch\f0 bauche)}{\insrsid15493243
\par \hich\af0\dbch\af13\loch\f0 DfsMFile.c
\par \hich\af0\dbch\af13\loch\f0 DfsMTool.c
\par }\pard \ql \li0\ri0\widctlpar\intbl\faauto\adjustright\rin0\lin0 {\insrsid15493243 \cell \hich\af0\dbch\af13\loch\f0 librairie de manipulation de fichier DifStream\cell }\pard \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 {
\insrsid15493243 \trowd \irow4\irowband4\lastrow \ts11\trgaph70\trleft-70\trbrdrt\brdrs\brdrw10 \trbrdrl\brdrs\brdrw10 \trbrdrb\brdrs\brdrw10 \trbrdrr\brdrs\brdrw10 \trbrdrh\brdrs\brdrw10 \trbrdrv\brdrs\brdrw10
\trftsWidth1\trpaddl70\trpaddr70\trpaddfl3\trpaddfr3 \clvertalt\clbrdrt\brdrs\brdrw10 \clbrdrl\brdrs\brdrw10 \clbrdrb\brdrs\brdrw10 \clbrdrr\brdrs\brdrw10 \cltxlrtb\clftsWidth3\clwWidth4606\clshdrawnil \cellx4536\clvertalt\clbrdrt\brdrs\brdrw10 \clbrdrl
\brdrs\brdrw10 \clbrdrb\brdrs\brdrw10 \clbrdrr\brdrs\brdrw10 \cltxlrtb\clftsWidth3\clwWidth4606\clshdrawnil \cellx9142\row }\pard \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 {\insrsid15493243
\par
\par }{\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\object\objemb\objw9196\objh6676{\*\objclass Word.Picture.8}{\*\objdata 0105000002000000
0f000000576f72642e506963747572652e38000000000000000000006a0000
d0cf11e0a1b11ae1000000000000000000000000000000003e000300feff0900060000000000000000000000010000000100000000000000001000000200000001000000feffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
fffffffffffffffffdffffff0e000000fefffffffeffffff05000000060000000700000008000000090000000a0000000b0000000c0000000d000000feffffff23000000100000001100000012000000130000001400000015000000160000001700000018000000190000001a000000feffffff1c0000001d0000001e00
00001f000000200000002100000022000000fefffffffeffffff25000000260000002700000028000000290000002a0000002b000000feffffff2d0000002e0000002f00000030000000310000003200000033000000feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffff52006f006f007400200045006e00740072007900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000500ffffffffffffffff040000000709020000000000c00000000000004600000000000000000000000070ef
22a11af5c00103000000000100000000000001004f006c00650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000201ffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000
000000000000000000000000140000000000000031005400610062006c006500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e0002010100000003000000ffffffff0000000000000000000000000000000000000000000000000000
00000000000000000000040000001213000000000000010043006f006d0070004f0062006a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012000201ffffffffffffffffffffffff000000000000000000000000000000000000000000000000
000000000000000000000000010000006600000000000000feffffff02000000fefffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff010000020000000000000000000000000000000092000000271d00000a1d00000100000088851c001d0000000c04000008000000d0851c0093000000791d00000100feff030a0000ffffffff0709020000000000c0000000000000461500
0000496d616765204d6963726f736f667420576f7264000a0000004d53576f7264446f63000f000000576f72642e506963747572652e3800f439b2710000000000000000000000000000fe1d0000a51d000001000000f0602802590000000c0400000000030004001c0097000000ff1d0000fe1d000001000000a0891c00
010000000c04000008000000b0891c0098000000251e0000ff1d000001000000f8de2602260000000c04000008000000488a1c0099000000771e0000251e000001000000e08a1c00520000000c04000008000000908b1c009a000000781e0000771e000001000000288c1c00010000000c04000008000000388c1c00b900
0108000000007843f90378011400c0ea2502680000000c04000008000000d08c1c009c000000e11e0000e01e000001000000688d1c00010000000c04000008000000788d1c009d000000f01e0000e11e000001000000788628020f0000000904000008000000108e1c009e000000f21e0000f01e000001000000a88e1c00
020000000904000008000000b88e1c009f0000000a1f0000f21e00000100000078ef26021800000014000f000a00010069000f000300000000000000000038000040f1ff020038000c0006004e006f0072006d0061006c000000020000001800434a18005f480104614a18006d480c0473480c0474480c04000000000000
00000000000000000000000032004140f2ffa10032000c00110050006f006c00690063006500200070006100720020006400e9006600610075007400000000000000000000000000000000000f0000002f00000049000000610000007e0000008f000000b0000000c4000000dc00000001000000000000000000ffffffff
030400000000000001000000000000000000ffffffff040400000000000001000000000000000000ffffffff060400000000000001000000000000000000ffffffff070400000000000001000000000000000000ffffffff0a0400000000000001000000000000000000ffffffff0d040000000000000100000000000000
0000ffffffff110400000000000001000000000000000000ffffffff1704000000000000ffffffff000000000000000000000000000000000000000000000f0000002f00000049000000610000007e0000008f000000b0000000c4000000c700000000000000000001000000000002000000000003000000000004000000
0000050000000000060000000000070000000000ffff0000000000000000dc0000000600000c00000000ffffffff010000000420ffff01004056c3000000000000000000dc00000000000000000000000000160000001b0000002400000025000000380000004400000045000000510000005e0000005f00000069000000
76000000770000008600000093000000940000009c000000a4000000a5000000b6000000c5000000c6000000ce000000d9000000dd0000009a00000000300000000000000080000000809800000000300000000000000080000000809800000000300000000000000080000000809a000000000000000000000000800000
00809800000000300000000000000080000000809800000000300000000000000080000000809a00000000000000000000000080000000809800000000300000000000000080000000809800000000300000000000000080000000809a000000000000000000000000800000008098000000003000000000000000800000
00809800000000300000000000000080000000809a00000000000000000000000080000000809800000000300000000000000080000000809800000000300000000000000080000000809a000000000000000000000000800000008098000000003000000000000000800000008098000000003000000000000000800000
00809a00000000000000000000000080000000809800000000300000000000000080000000809800000000300000000000000080000000809a40000000300000000000000080000000809800000000300000000000000080000000809800000000300000000000000080000000809a000000000000000000000000800000
008000040000dc0400000300000000040000dc0400000400000000040000db040000050000000f0000f038000000000006f01800000002080000020000001900000001000000010000001a00000040001ef110000000ffff00000000ff0080808000f7000010000f0002f052070000100008f00800000016000000190400
000f0003f0f00600000f0004f028000000010009f0100000000000000000000000000000000000000002000af00800000000040000050000000f0004f042000000a20c0af00800000003040000000a000013000bf006000000800000000100000010f00400000014000000000011f0040000000900000000000df0040000
00000001000f0004f042000000a20c0af00800000004040000000a000013000bf006000000800000000200000010f00400000005000000000011f0040000001000000000000df004000000000002000f0004f04e00000042010af00800000005040000400a000053000bf01e0000004401040000007f0100000100bf0100
001000d10101000000ff0110001000000010f00400000013000000000011f004000000060000000f0004f042000000a20c0af00800000006040000000a000013000bf006000000800000000300000010f00400000011000000000011f0040000000b00000000000df004000000000003000f0004f042000000a20c0af008
00000007040000000a000013000bf006000000800000000400000010f00400000012000000000011f0040000000800000000000df004000000000004000f0004f04e00000042010af00800000008040000800a000053000bf01e0000004401040000007f0100000100bf0100001000d10101000000ff0110001000000010
f00400000010000000000011f004000000060000000f0004f04e00000042010af00800000009040000c00a000053000bf01e0000004401040000007f0100000100bf0100001000d10101000000ff0110001000000010f0040000000f000000000011f004000000060000000f0004f054000000a20c0af0080000000a0400
00000a000043000bf0180000008000000005008101c0c0c000820100800000bf0110001000000010f0040000000a000000000011f0040000000b00000000000df004000000000005000f0004f04e00000042010af0080000000b040000c00a000053000bf01e0000004401040000007f0100000100bf0100001000d10101
000000ff0110001000000010f0040000000e000000000011f004000000080000000f0004f04e00000042010af0080000000c040000c00a000053000bf01e0000004401040000007f0100000100bf0100001000d10101000000ff0110001000000010f0040000000d000000000011f004000000070000000f0004f0420000
00a20c0af0080000000d040000000a000013000bf006000000800000000600000010f0040000000c000000000011f0040000000800000000000df004000000000006000f0004f04e00000042010af0080000000e040000000a000053000bf01e0000004401040000007f0100000100bf0100001000d10101000000ff0110
001000000010f0040000000b000000000011f004000000070000000f0004f04e00000042010af0080000000f040000c00a000053000bf01e0000004401040000007f0100000100bf0100001000d10101000000ff0110001000000010f00400000009000000000011f004000000060000000f0004f042000000a20c0af008
00000011040000000a000013000bf006000000800000000700000010f00400000000000000000011f0040000000b00000000000df004000000000007000f0004f04e00000042010af00800000012040000c00a000053000bf01e0000004401040000007f0100000100bf0100001000d10101000000ff0110001000000010
f00400000008000000000011f004000000070000000f0004f04e00000042010af00800000014040000800a000053000bf01e0000004401040000007f0100000100bf0100001000d10101000000ff0110001000000010f00400000007000000000011f004000000070000000f0004f04e00000042010af008000000150400
00c00a000053000bf01e0000004401040000007f0100000100bf0100001000d10101000000ff0110001000000010f00400000006000000000011f004000000070000000f0004f04e00000042010af00800000016040000c00a000053000bf01e0000004401040000007f0100000100bf0100001000d10101000000ff0110
001000000010f00400000004000000000011f004000000060000000f0004f042000000a20c0af00800000017040000000a000013000bf006000000800000000800000010f00400000003000000000011f0040000000400000000000df004000000000008000f0004f04e00000042010af00800000018040000800a000053
000bf01e0000004401040000007f0100000100bf0100001000d10101000000ff0110001000000010f00400000002000000000011f004000000040000000f0004f04e00000042010af00800000019040000c00a000053000bf01e0000004401040000007f0100000100bf0100001000d10101000000ff0110001000000010
f00400000001000000000011f004000000040000000f0004f04200000012000af00800000001040000000e000053000bf01e000000bf0100001000cb0100000000ff01000008000403090000003f0301000100000011f0040000000100000000000000010000000200000003000000040000000500000006000000070000
0008000000090000000a0000000b0000000c0000000d0000000e0000000f0000001000000011000000120000001300000014000000dc0000001104000094110000e01000006c1b00006414000074000000000019040000780f0000400b000094110000801600007400000000001804000064140000641400006414000080
16000074000000000017040000780f00008016000050190000041a00007400000000001604000080160000d002000050190000e010000074000000000004040000c40e0000bc07000034170000400b00007400000000001504000054060000d0020000b0130000e01000007400000000001404000018150000400b000020
1c0000e010000074000000000012040000a0050000400b0000b0130000e01000007400000000000f04000058200000d00200000c210000bc0700007400000000000a040000b81a0000bc070000dc230000400b00007400000000000e04000080160000680100006c1b0000680100007400000000000d0400006c1b000000
000000c0210000d00200007400000000000c040000240900001c020000f01e0000bc0700007400000000000b040000b0130000d0020000a41f0000bc0700007400000000000904000024090000d002000048120000bc07000074000000000008040000fc120000d0020000fc120000bc07000074000000000006040000c4
0e00000000000080160000d002000074000000000007040000840300000000000024090000d002000074000000000005040000a0050000d8090000c40e0000d80900007400000000000304000006000000bc070000a6050000400b000074000000000000000000160000001a0000001c0000002200000039000000420000
00520000005c00000065000000680000006a0000007400000087000000910000009c000000a3000000aa000000ad000000b7000000c3000000cf000000d7000000dd00000007001c0007001c0007001c0007001c0007001c0007001c0007001c0007001c0007001c0007001c0007001c00070000000000160000001a0000
001b00000023000000250000003700000038000000430000008600000092000000a5000000b5000000b6000000c4000000dd000000070005000700050007000500070005000700050007000500070005000700ff40008001000000000000000000e005cb0701000100000000000000000000000000000000000210000000
00000000dc0000006000000800400000ffff01000000070055006e006b006e006f0077006e00ffff0100080000000000000000000000ffff010000000000ffff00000200ffff00000000ffff00000200ffff000000000300000047169001000002020603050405020304877a0020000000800800000000000000ff010000
00000000540069006d006500730020004e0065007700200052006f006d0061006e00000035169001020005050102010706020507000000000000001000000000000000000000008000000000530079006d0062006f006c000000332690010000020b0604020202020204877a0020000000800800000000000000ff010000
0000000041007200690061006c000000220004007108881800f0c4020000a90100000000f17538c6f37538c6000000000200020000000000000000000000010001000000040003100100000000000000000000000100010000000100000000000000210300f0100000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000006414b81ab400b4008181123000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000020000004803000000000132831100f010000800000000000000000000000000000000000000000000000000000000000000ffff1200000000000000000000000000000009004d006900630072006f0073006f006600740009004d006900630072006f0073006f0066007400000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003004f006200
6a0049006e0066006f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000120002010200000006000000ffffffff0000000000000000000000000000000000000000000000000000000000000000000000000300000006000000000000004f006200
6a0065006300740050006f006f006c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000101ffffffffffffffffffffffff000000000000000000000000000000000000000070ef22a11af5c00170ef22a11af5c0010000000000000000000000000200
4f006c0065005000720065007300300030003000000000000000000000000000000000000000000000000000000000000000000000000000000000000000180002010500000008000000ffffffff0000000000000000000000000000000000000000000000000000000000000000000000000f000000be16000000000000
57006f007200640044006f00630075006d0065006e007400000000000000000000000000000000000000000000000000000000000000000000000000000000001a000200ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000000000000000000000001b000000001000000000
0000ffffffff030000000400000001000000ffffffff00000000000000005b3f0000fe2d0000961600000100090000034b0b000009002d00000000001400000026060f001e00ffffffff040014000000576f72640e004d6963726f736f667420576f7264050000000b0200000000050000000c029f03fd041c000000fb02
1000070000000000bc02000000000102022253797374656d000000000a000000040000000000ffffffff0100000000003000040000002d010000050000000201010000001c000000fb02dfff0000000000009001000000000440001254696d6573204e657720526f6d616e004ad4f47753d4f47701000000000030000400
00002d010100050000000902000000020d000000320a010000000100040000000000fd049f03206f0f0007000000fc020000ffffff000000040000002d01020008000000fa0200000200000000000002040000002d010300070000001b049101ca001301010007000000fc020000ffffff000000040000002d0104000400
0000f001020008000000fa0200000000000000000000040000002d01020004000000f0010300030000001e000700000016048501b5001e0116000500000002010100000011000000320a1f014a000400040016001e01b40085015a6c696214000900090010000d000000320a1f0180000100040016001e01b40085012000
0f000500000002010100000017000000320a440136000800040016001e01b4008501287a6c69622e68290b000e00090009001000080010000b000d000000320a440194000100040016001e01b400850120000f00040000002701ffff07000000fc020000ffffff000000040000002d01030008000000fa02000002000000
00000002040000002d010500070000001b0491013a0313010d02040000002d01040004000000f0010300040000002d01020004000000f0010500030000001e00070000001604850125031e01220205000000020101000000040000002d0101000500000009020000000226000000320a1f012e021200040022021e012403
8501466c75782064652064696666e972656e63651200090011001000080010000e000800100009000a000a000e000b000e0010000e000e000d000000320a1f0118030100040022021e012403850120000f00050000000201010000001c000000320a44015e020b00040022021e0124038501286469667374726d2e682929
0b00100009000a000c0009000b001900080010000b000d000000320a4401e8020100040022021e012403850120000f00040000002701ffff1000000026060f001600ffffffff0000c600000051010000100200006c01000008000000fa0200000200000000000000040000002d01030007000000fc020100000000000000
040000002d01050008000000250302000d025e01db005e0108000000fa0205000100000000000000040000002d01060004000000f001030007000000fc020000000000000000040000002d0103000a00000024030300de005401c8005e01de006901040000002d010200040000002d01040004000000f001030008000000
26060f000600ffffffff010007000000fc020000ffffff000000040000002d01030008000000fa0200000200000000000002040000002d010700070000001b046500210300000d02040000002d01040004000000f0010300040000002d01020004000000f0010700030000001e0007000000160459000c030b0022020500
0000020101000000040000002d010100050000000902000000021c000000320a0c0049020b00040022020b000b035900426173696320546f6f6c732916000f000c0009000e00080015001000100009000c000d000000320a0c00e3020100040022020b000b03590020000f00050000000201010000001d000000320a3100
4f020c00040022020b000b0359002864696673746f6f6c2e68290b00100009000a000c000900100010000900080010000b000d000000320a3100de020100040022020b000b03590020000f00040000002701ffff07000000fc020000ffffff000000040000002d01030008000000fa020000020000000000000204000000
2d010700070000001b046500460100007d00040000002d01040004000000f0010300040000002d01020004000000f0010700030000001e00070000001604590031010b00920005000000020101000000040000002d0101000500000009020000000219000000320a0c00a5000900040092000b0030015900426173696320
6465665c16000f000c0009000e00080010000e000a000d000000320a0c001d010100040092000b003001590020000f00050000000201010000001d000000320a310097000c00040092000b00300159002864696662617369632e68290b00100009000a0010000f000c0009000e00080010000b000d000000320a31002a01
0100040092000b003001590020000f00040000002701ffff1000000026060f001600ffffffff00009602000062000000b10200001601000008000000fa0200000200000000000000040000002d010300040000002d0105000800000025030200a3021301a3027700040000002d01060004000000f001030007000000fc02
0000000000000000040000002d0103000a00000024030300ae027a00a402640099027a00040000002d010200040000002d01040004000000f00103000800000026060f000600ffffffff01001000000026060f001600ffffffff000043010000620000008d0200001601000008000000fa02000002000000000000000400
00002d010300040000002d01050008000000250302008a02130155016c00040000002d01060004000000f001030007000000fc020000000000000000040000002d0103000a000000240303005e0166004601640053017900040000002d010200040000002d01040004000000f00103000800000026060f000600ffffffff
01001000000026060f001600ffffffff0000ae0300000b01000003050000980100000800000026060f000600ffffffff0000040000002d010600040000002d010500050000000701040000000600000026062600020001000500000004010700000007000000fc020000c0c0c0000000040000002d0103000c0000002403
0400b6031301fb041301fb049001b603900106000000260626000200000006000000260601100200000008000000fa02000000000000ffffff00040000002d0107000500000004010b000000050000002606001000000c00000024030400b6031301b6039001fb049001fb04130112000000260602101a00000001010500
0000000000000000010000000000000000000000060000002606011002000200040000002d010600060000002606260002000100050000000401090000000600000026062600020000002d00000042010500000028000000080000000800000001000100000000002000000000000000000000000000000000000000ffff
ff000000000055000000aa00000055000000aa00000055000000aa00000055000000aa000000040000002d01080004000000f0010300060000002606260002000100070000001b049101fc041301b6030600000026062600020000000500000004010700000007000000fc020000c0c0c0000000040000002d0103000400
0000f00108000c00000024030400b6031301fb041301fb049001b6039001060000002606011002000100040000002d01050004000000f00103000500000004010d000000040000002d010200040000002d010400050000000701010000000800000026060f000600ffffffff010008000000fa0200000200000000000000
040000002d010300040000002d010500070000001b049101fc041301b603040000002d01020004000000f0010300040000002d0104000800000026060f000600ffffffff0100030000001e000700000016048501e7041e01cb0305000000020101000000040000002d0101000500000009020000000220000000320a1f01
fd030e000400cb031e01e604850142617369632046696c6520492f4f16000f000c0009000e0008001200090009000e0008000b00090018000d000000320a1f01b30401000400cb031e01e604850120000f00050000000201010000001d000000320a440103040c000400cb031e01e6048501284466734d46696c652e6829
0b0018000a000c001d001200090009000e00080010000b000d000000320a4401ae0401000400cb031e01e604850120000f00040000002701ffff1000000026060f001600ffffffff0000ba02000060000000680400001601000008000000fa0200000200000000000000040000002d010300040000002d01050008000000
2503020065041301cd026c00040000002d01060004000000f001030007000000fc020000000000000000040000002d0103000a00000024030300d5026300bc026400cc027700040000002d010200040000002d01040004000000f00103000800000026060f000600ffffffff01001000000026060f001600ffffffff0000
43010000440000004f0400001601000008000000fa0200000200000000000000040000002d010300040000002d01050008000000250302004c04130157015000040000002d01060004000000f001030007000000fc020000000000000000040000002d0103000a000000240303005d01460046014c0058015b0004000000
2d010200040000002d01040004000000f00103000800000026060f000600ffffffff010007000000fc020000ffffff000000040000002d01030008000000fa0200000200000000000002040000002d010800070000001b046500b1040000cf03040000002d01040004000000f0010300040000002d01020004000000f001
0800030000001e0007000000160459009c040b00e40305000000020101000000040000002d0101000500000009020000000216000000320a0c000a0407000400e4030b009b04590043206f72204f53291600080010000b000800180012000d000000320a0c00750401000400e4030b009b04590020000f00050000000201
0100000016000000320a3100010407000400e4030b009b04590052756e54696d65291600110010001500090019000e000d000000320a31007d0401000400e4030b009b04590020000f00040000002701ffff1000000026060f001600ffffffff00001e03000025000000d20300004000000008000000fa02000002000000
00000000040000002d010300040000002d010500080000002503020020033200bc033200040000002d01060004000000f001030007000000fc020000000000000000040000002d0103000a00000024030300ba033d00d0033200ba032800040000002d010200040000002d01040004000000f00103000800000026060f00
0600ffffffff01001000000026060f001600ffffffff000074040000620000009a0400001601000008000000fa0200000200000000000000040000002d010300040000002d01050008000000250302009704130181047700040000002d01060004000000f001030007000000fc020000000000000000040000002d010300
0a000000240303008c0479007e04640077047c00040000002d010200040000002d01040004000000f00103000800000026060f000600ffffffff010007000000fc020000ffffff000000040000002d01030008000000fa0200000200000000000002040000002d010800070000001b04d602d00358027102040000002d01
040004000000f0010300040000002d01020004000000f0010800030000001e00070000001604ca02bb036302860205000000020101000000040000002d0101000500000009020000000223000000320a6402a5021000040086026302ba03ca024d65746120446673204d616e616765721d000e0009000f00080018000a00
0c0008001d000f0010000f0010000e000b000d000000320a64029a030100040086026302ba03ca0220000f000500000002010100000020000000320a8902bb020e00040086026302ba03ca02284466735374727563744d6772290b0018000a000c00120009000b0011000e0009001d0010000b000b000d000000320a8902
85030100040086026302ba03ca0220000f00040000002701ffff1000000026060f001600ffffffff0000c60000008c010000bf0200005b02000008000000fa0200000200000000000000040000002d010300040000002d0105000800000025030200bc025802d9009801040000002d01060004000000f001030007000000
fc020000000000000000040000002d0103000a00000024030300e1008f01c8009001d800a301040000002d010200040000002d01040004000000f00103000800000026060f000600ffffffff01001000000026060f001600ffffffff0000ec0200008e010000eb0300005b02000008000000fa0200000200000000000000
040000002d010300040000002d0105000800000025030200ee025802da039b01040000002d01060004000000f001030007000000fc020000000000000000040000002d0103000a00000024030300de03a701e8039001d1039601040000002d010200040000002d01040004000000f00103000800000026060f000600ffff
ffff01001000000026060f001600ffffffff0000df00000062000000bf0200005b02000008000000fa0200000200000000000000040000002d010300040000002d0105000800000025030200bc025802ed007100040000002d01060004000000f001030007000000fc020000000000000000040000002d0103000a000000
24030300f8006d00e2006400e8007c00040000002d010200040000002d01040004000000f00103000800000026060f000600ffffffff01001000000026060f001600ffffffff00001703000062000000870300005b02000008000000fa0200000200000000000000040000002d010300040000002d010500080000002503
02008403580224037700040000002d01060004000000f001030007000000fc020000000000000000040000002d0103000a000000240303002f037800200364001a037c00040000002d010200040000002d01040004000000f00103000800000026060f000600ffffffff010007000000fc020000ffffff00000004000000
2d01030008000000fa0200000200000000000002040000002d010800070000001b049e03850320032602040000002d01040004000000f0010300040000002d01020004000000f0010800030000001e00070000001604920370032b033b0205000000020101000000040000002d0101000500000009020000000216000000
320a2c039902070004003b022b036f03920344465320415049291800120012000800170012000b000d000000320a2c031103010004003b022b036f03920320000f00050000000201010000001a000000320a510397020a0004003b022b036f039203286466736170692e68290b0010000a000c000f001000090008001000
0b000d000000320a51031303010004003b022b036f03920320000f00040000002701ffff1000000026060f001600ffffffff0000c8020000d3020000e30200002303000008000000fa0200000200000000000000040000002d010300040000002d0105000800000025030200d5022003d502e802040000002d0106000400
0000f001030007000000fc020000000000000000040000002d0103000a00000024030300e002eb02d602d602cb02eb02040000002d010200040000002d01040004000000f00103000800000026060f000600ffffffff01001000000026060f001600ffffffff00001d0200008e010000740200002303000008000000fa02
00000200000000000000040000002d010300040000002d0105000800000025030200710220032a02a301040000002d01060004000000f001030007000000fc020000000000000000040000002d0103000a000000240303003502a401260290012002a801040000002d010200040000002d01040004000000f00103000800
000026060f000600ffffffff0100040000002d0100000300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000eca5c100392009040000f012bf000000000000100000000000040000
dc0400000e00626a626afdcffdcf0000000000000000000000000000000000000c0416002e0c00009fa500009fa50000160000000000000000000000000000000000000000000000c500000000000000ffff0f000000000000000000ffff0f000000000000000000ffff0f00000000000000000000000000000000006c00
000000009e000000000000009e0000009e000000000000009e00000000000000ea01000000000000ea01000000000000ea0100001400000000000000000000001e02000000000000480400000000000048040000000000004804000000000000480400000c000000540400000c0000001e02000000000000ee0f0000b600
00006c040000000000006c040000000000006c040000000000006c040000000000006c04000000000000810e000000000000810e000000000000810e0000000000006d0f0000020000006f0f0000000000006f0f0000000000006f0f0000000000006f0f0000000000006f0f0000000000006f0f000024000000a4100000
20020000c41200004e000000930f00001500000000000000000000000000000000000000ea01000000000000810e00000000000000000000000000000000000000000000070c00007a020000810e000000000000810e000000000000810e000000000000930f0000000000006d0f0000000000009e000000000000009e00
0000000000006c0400000000000000000000000000006c0400009b070000a80f0000160000006d0f0000000000006d0f0000000000006d0f000000000000810e00008e0000009e000000ee0000006c04000000000000ea010000000000006c040000000000006d0f00000000000000000000000000006d0f000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000810e0000000000006d0f0000000000006d0f0000000000006d0f00000000000000000000000000006d0f0000000000008c0100005e000000ea010000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000006d0f0000000000006c04000000000000600400000c000000601daf239fe6be011e0200002a02000048040000000000000f0f0000000000006d0f00000000000000000000000000006d0f000000000000be0f0000
30000000ee0f0000000000006d0f00000000000012130000000000000f0f00005e00000012130000000000006d0f0000000000006d0f000000000000fe01000012000000100200000e0000009e000000000000009e000000000000009e000000000000009e000000000000000200d9000000080808080808080808080808
0808080808080808080d5a6c69620d287a6c69622e68290d0d466c75782064652064696666e972656e63650d286469667374726d2e68290d0d426173696320546f6f6c730d2864696673746f6f6c2e68290d0d4261736963206465660d2864696662617369632e68290d0d42617369632046696c6520492f4f0d28446673
4d46696c652e68290d0d43206f72204f530d52756e54696d650d0d4d65746120446673204d616e616765720d284466735374727563744d6772290d0d444653204150490d286466736170692e68290d0d0d0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040000
15040000450400005e0400005f04000076040000770400009304000094040000a4040000c6040000d9040000dc040000f300ee00ee00ee00ee00ee00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000086d480908734809080018036a00000000434a14005508016d4800046e480004
7508010c00040000160400001b0400002404000025040000380400004404000045040000510400005e0400005f0400006904000076040000770400008604000093040000940400009c040000a4040000a5040000b6040000c5040000c6040000ce040000d9040000da040000db040000dc040000fd000000000000000000
000000f8000000000000000000000000f8000000000000000000000000fd000000000000000000000000f8000000000000000000000000f8000000000000000000000000fd000000000000000000000000f8000000000000000000000000f8000000000000000000000000fd000000000000000000000000f80000000000
00000000000000f8000000000000000000000000fd000000000000000000000000f8000000000000000000000000f8000000000000000000000000fd000000000000000000000000f8000000000000000000000000f8000000000000000000000000fd000000000000000000000000f8000000000000000000000000f800
0000000000000000000000fd000000000000000000000000f8000000000000000000000000f8000000000000000000000000fd000000000000000000000000fd000000000000000000000000fd00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040000
03240161240100010000001b0004000016040000db040000fefe00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000020101022c00319068011fb0cc4e20b0c04e21b0641422b07d162390b81a2490f51925b0000017b0c40218b0c4020c90c402000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000500530075006d006d0061007200790049006e0066006f0072006d006100740069006f006e000000000000000000000000000000000000000000000000000000280002010700000009000000ffffffff00000000000000000000
0000000000000000000000000000000000000000000000000000240000000010000000000000050044006f00630075006d0065006e007400530075006d006d0061007200790049006e0066006f0072006d006100740069006f006e000000000000000000000038000200ffffffffffffffffffffffff0000000000000000
000000000000000000000000000000000000000000000000000000002c00000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff00000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000feff0000050002000000000000000000000000000000000001000000e0859ff2f94f6810ab9108002b27b3d93000000070010000110000000100000090000000020000009800000003000000a40000000400
0000b000000005000000c400000006000000d000000007000000dc00000008000000f0000000090000000401000012000000100100000a0000002c0100000c000000380100000d000000440100000e000000500100000f000000580100001000000060010000130000006801000002000000e40400001e00000001000000
000073001e00000001000000000073001e0000000a0000004d6963726f736f66740020001e00000001000000006963721e00000001000000006963721e0000000b0000004e6f726d616c2e646f7400001e0000000a0000004d6963726f736f66740000001e00000002000000320063721e000000130000004d6963726f73
6f667420576f726420392e30000040000000008c86470000000040000000002e15d19ee6be014000000000ba9b189fe6be0103000000010000000300000000000000030000000000000003000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000feff00000500020000000000000000000000
0000000000000100000002d5cdd59c2e1b10939708002b2cf9ae30000000e80000000c00000001000000680000000f00000070000000050000007c0000000600000084000000110000008c00000017000000940000000b0000009c00000010000000a400000013000000ac00000016000000b40000000d000000bc000000
0c000000c900000002000000e40400001e000000010000000000000003000000010000000300000001000000030000000000000003000000fc0a09000b000000000000000b000000000000000b000000000000000b000000000000001e1000000100000001000000000c100000020000001e000000060000005469747265
000300000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001050000050000000d0000004d45544146494c4550494354005b3f000002d2ffff9e16000008005b3ffe2d0000
0100090000034b0b000009002d00000000001400000026060f001e00ffffffff040014000000576f72640e004d6963726f736f667420576f7264050000000b0200000000050000000c029f03fd041c000000fb021000070000000000bc02000000000102022253797374656d000000000a000000040000000000ffffffff
0100000000003000040000002d010000050000000201010000001c000000fb02dfff0000000000009001000000000440001254696d6573204e657720526f6d616e004ad4f47753d4f4770100000000003000040000002d010100050000000902000000020d000000320a010000000100040000000000fd049f03206f0f00
07000000fc020000ffffff000000040000002d01020008000000fa0200000200000000000002040000002d010300070000001b049101ca001301010007000000fc020000ffffff000000040000002d01040004000000f001020008000000fa0200000000000000000000040000002d01020004000000f001030003000000
1e000700000016048501b5001e0116000500000002010100000011000000320a1f014a000400040016001e01b40085015a6c696214000900090010000d000000320a1f0180000100040016001e01b400850120000f000500000002010100000017000000320a440136000800040016001e01b4008501287a6c69622e6829
0b000e00090009001000080010000b000d000000320a440194000100040016001e01b400850120000f00040000002701ffff07000000fc020000ffffff000000040000002d01030008000000fa0200000200000000000002040000002d010500070000001b0491013a0313010d02040000002d01040004000000f0010300
040000002d01020004000000f0010500030000001e00070000001604850125031e01220205000000020101000000040000002d0101000500000009020000000226000000320a1f012e021200040022021e0124038501466c75782064652064696666e972656e63651200090011001000080010000e000800100009000a00
0a000e000b000e0010000e000e000d000000320a1f0118030100040022021e012403850120000f00050000000201010000001c000000320a44015e020b00040022021e0124038501286469667374726d2e6829290b00100009000a000c0009000b001900080010000b000d000000320a4401e8020100040022021e012403
850120000f00040000002701ffff1000000026060f001600ffffffff0000c600000051010000100200006c01000008000000fa0200000200000000000000040000002d01030007000000fc020100000000000000040000002d01050008000000250302000d025e01db005e0108000000fa02050001000000000000000400
00002d01060004000000f001030007000000fc020000000000000000040000002d0103000a00000024030300de005401c8005e01de006901040000002d010200040000002d01040004000000f00103000800000026060f000600ffffffff010007000000fc020000ffffff000000040000002d01030008000000fa020000
0200000000000002040000002d010700070000001b046500210300000d02040000002d01040004000000f0010300040000002d01020004000000f0010700030000001e0007000000160459000c030b00220205000000020101000000040000002d010100050000000902000000021c000000320a0c0049020b0004002202
0b000b035900426173696320546f6f6c732916000f000c0009000e00080015001000100009000c000d000000320a0c00e3020100040022020b000b03590020000f00050000000201010000001d000000320a31004f020c00040022020b000b0359002864696673746f6f6c2e68290b00100009000a000c00090010001000
0900080010000b000d000000320a3100de020100040022020b000b03590020000f00040000002701ffff07000000fc020000ffffff000000040000002d01030008000000fa0200000200000000000002040000002d010700070000001b046500460100007d00040000002d01040004000000f0010300040000002d010200
04000000f0010700030000001e00070000001604590031010b00920005000000020101000000040000002d0101000500000009020000000219000000320a0c00a5000900040092000b00300159004261736963206465665c16000f000c0009000e00080010000e000a000d000000320a0c001d010100040092000b003001
590020000f00050000000201010000001d000000320a310097000c00040092000b00300159002864696662617369632e68290b00100009000a0010000f000c0009000e00080010000b000d000000320a31002a010100040092000b003001590020000f00040000002701ffff1000000026060f001600ffffffff00009602
000062000000b10200001601000008000000fa0200000200000000000000040000002d010300040000002d0105000800000025030200a3021301a3027700040000002d01060004000000f001030007000000fc020000000000000000040000002d0103000a00000024030300ae027a00a402640099027a00040000002d01
0200040000002d01040004000000f00103000800000026060f000600ffffffff01001000000026060f001600ffffffff000043010000620000008d0200001601000008000000fa0200000200000000000000040000002d010300040000002d01050008000000250302008a02130155016c00040000002d01060004000000
f001030007000000fc020000000000000000040000002d0103000a000000240303005e0166004601640053017900040000002d010200040000002d01040004000000f00103000800000026060f000600ffffffff01001000000026060f001600ffffffff0000ae0300000b01000003050000980100000800000026060f00
0600ffffffff0000040000002d010600040000002d010500050000000701040000000600000026062600020001000500000004010700000007000000fc020000c0c0c0000000040000002d0103000c00000024030400b6031301fb041301fb049001b6039001060000002606260002000000060000002606011002000000
08000000fa02000000000000ffffff00040000002d0107000500000004010b000000050000002606001000000c00000024030400b6031301b6039001fb049001fb04130112000000260602101a000000010105000000000000000000010000000000000000000000060000002606011002000200040000002d0106000600
00002606260002000100050000000401090000000600000026062600020000002d00000042010500000028000000080000000800000001000100000000002000000000000000000000000000000000000000ffffff000000000055000000aa00000055000000aa00000055000000aa00000055000000aa00000004000000
2d01080004000000f0010300060000002606260002000100070000001b049101fc041301b6030600000026062600020000000500000004010700000007000000fc020000c0c0c0000000040000002d01030004000000f00108000c00000024030400b6031301fb041301fb049001b6039001060000002606011002000100
040000002d01050004000000f00103000500000004010d000000040000002d010200040000002d010400050000000701010000000800000026060f000600ffffffff010008000000fa0200000200000000000000040000002d010300040000002d010500070000001b049101fc041301b603040000002d01020004000000
f0010300040000002d0104000800000026060f000600ffffffff0100030000001e000700000016048501e7041e01cb0305000000020101000000040000002d0101000500000009020000000220000000320a1f01fd030e000400cb031e01e604850142617369632046696c6520492f4f16000f000c0009000e0008001200
090009000e0008000b00090018000d000000320a1f01b30401000400cb031e01e604850120000f00050000000201010000001d000000320a440103040c000400cb031e01e6048501284466734d46696c652e68290b0018000a000c001d001200090009000e00080010000b000d000000320a4401ae0401000400cb031e01
e604850120000f00040000002701ffff1000000026060f001600ffffffff0000ba02000060000000680400001601000008000000fa0200000200000000000000040000002d010300040000002d010500080000002503020065041301cd026c00040000002d01060004000000f001030007000000fc020000000000000000
040000002d0103000a00000024030300d5026300bc026400cc027700040000002d010200040000002d01040004000000f00103000800000026060f000600ffffffff01001000000026060f001600ffffffff000043010000440000004f0400001601000008000000fa0200000200000000000000040000002d0103000400
00002d01050008000000250302004c04130157015000040000002d01060004000000f001030007000000fc020000000000000000040000002d0103000a000000240303005d01460046014c0058015b00040000002d010200040000002d01040004000000f00103000800000026060f000600ffffffff010007000000fc02
0000ffffff000000040000002d01030008000000fa0200000200000000000002040000002d010800070000001b046500b1040000cf03040000002d01040004000000f0010300040000002d01020004000000f0010800030000001e0007000000160459009c040b00e40305000000020101000000040000002d0101000500
000009020000000216000000320a0c000a0407000400e4030b009b04590043206f72204f53291600080010000b000800180012000d000000320a0c00750401000400e4030b009b04590020000f000500000002010100000016000000320a3100010407000400e4030b009b04590052756e54696d65291600110010001500
090019000e000d000000320a31007d0401000400e4030b009b04590020000f00040000002701ffff1000000026060f001600ffffffff00001e03000025000000d20300004000000008000000fa0200000200000000000000040000002d010300040000002d010500080000002503020020033200bc033200040000002d01
060004000000f001030007000000fc020000000000000000040000002d0103000a00000024030300ba033d00d0033200ba032800040000002d010200040000002d01040004000000f00103000800000026060f000600ffffffff01001000000026060f001600ffffffff000074040000620000009a040000160100000800
0000fa0200000200000000000000040000002d010300040000002d01050008000000250302009704130181047700040000002d01060004000000f001030007000000fc020000000000000000040000002d0103000a000000240303008c0479007e04640077047c00040000002d010200040000002d01040004000000f001
03000800000026060f000600ffffffff010007000000fc020000ffffff000000040000002d01030008000000fa0200000200000000000002040000002d010800070000001b04d602d00358027102040000002d01040004000000f0010300040000002d01020004000000f0010800030000001e00070000001604ca02bb03
6302860205000000020101000000040000002d0101000500000009020000000223000000320a6402a5021000040086026302ba03ca024d65746120446673204d616e616765721d000e0009000f00080018000a000c0008001d000f0010000f0010000e000b000d000000320a64029a030100040086026302ba03ca022000
0f000500000002010100000020000000320a8902bb020e00040086026302ba03ca02284466735374727563744d6772290b0018000a000c00120009000b0011000e0009001d0010000b000b000d000000320a890285030100040086026302ba03ca0220000f00040000002701ffff1000000026060f001600ffffffff0000
c60000008c010000bf0200005b02000008000000fa0200000200000000000000040000002d010300040000002d0105000800000025030200bc025802d9009801040000002d01060004000000f001030007000000fc020000000000000000040000002d0103000a00000024030300e1008f01c8009001d800a30104000000
2d010200040000002d01040004000000f00103000800000026060f000600ffffffff01001000000026060f001600ffffffff0000ec0200008e010000eb0300005b02000008000000fa0200000200000000000000040000002d010300040000002d0105000800000025030200ee025802da039b01040000002d0106000400
0000f001030007000000fc020000000000000000040000002d0103000a00000024030300de03a701e8039001d1039601040000002d010200040000002d01040004000000f00103000800000026060f000600ffffffff01001000000026060f001600ffffffff0000df00000062000000bf0200005b02000008000000fa02
00000200000000000000040000002d010300040000002d0105000800000025030200bc025802ed007100040000002d01060004000000f001030007000000fc020000000000000000040000002d0103000a00000024030300f8006d00e2006400e8007c00040000002d010200040000002d01040004000000f00103000800
000026060f000600ffffffff01001000000026060f001600ffffffff00001703000062000000870300005b02000008000000fa0200000200000000000000040000002d010300040000002d01050008000000250302008403580224037700040000002d01060004000000f001030007000000fc0200000000000000000400
00002d0103000a000000240303002f037800200364001a037c00040000002d010200040000002d01040004000000f00103000800000026060f000600ffffffff010007000000fc020000ffffff000000040000002d01030008000000fa0200000200000000000002040000002d010800070000001b049e03850320032602
040000002d01040004000000f0010300040000002d01020004000000f0010800030000001e00070000001604920370032b033b0205000000020101000000040000002d0101000500000009020000000216000000320a2c039902070004003b022b036f03920344465320415049291800120012000800170012000b000d00
0000320a2c031103010004003b022b036f03920320000f00050000000201010000001a000000320a510397020a0004003b022b036f039203286466736170692e68290b0010000a000c000f0010000900080010000b000d000000320a51031303010004003b022b036f03920320000f00040000002701ffff100000002606
0f001600ffffffff0000c8020000d3020000e30200002303000008000000fa0200000200000000000000040000002d010300040000002d0105000800000025030200d5022003d502e802040000002d01060004000000f001030007000000fc020000000000000000040000002d0103000a00000024030300e002eb02d602
d602cb02eb02040000002d010200040000002d01040004000000f00103000800000026060f000600ffffffff01001000000026060f001600ffffffff00001d0200008e010000740200002303000008000000fa0200000200000000000000040000002d010300040000002d0105000800000025030200710220032a02a301
040000002d01060004000000f001030007000000fc020000000000000000040000002d0103000a000000240303003502a401260290012002a801040000002d010200040000002d01040004000000f00103000800000026060f000600ffffffff0100040000002d010000030000000000}{\result {\insrsid14765595
{\pict{\*\picprop\shplid1025{\sp{\sn shapeType}{\sv 75}}{\sp{\sn fFlipH}{\sv 0}}{\sp{\sn fFlipV}{\sv 0}}{\sp{\sn pictureGray}{\sv 0}}{\sp{\sn pictureBiLevel}{\sv 0}}{\sp{\sn fFilled}{\sv 0}}{\sp{\sn fHitTestFill}{\sv 1}}{\sp{\sn fillShape}{\sv 1}}
{\sp{\sn fillUseRect}{\sv 0}}{\sp{\sn fNoFillHitTest}{\sv 0}}{\sp{\sn fLine}{\sv 0}}{\sp{\sn fLayoutInCell}{\sv 1}}{\sp{\sn fReallyHidden}{\sv 0}}{\sp{\sn fScriptAnchor}{\sv 0}}{\sp{\sn fLayoutInCell}{\sv 1}}}
\picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0\picw16219\pich11774\picwgoal9195\pichgoal6675\wmetafile8\bliptag-949483435\blipupi199{\*\blipuid c7680855428e5c93ca4cf1c1e3d79278}
0100090000034b0b000009002d00000000001400000026060f001e00ffffffff040014000000576f72640e004d6963726f736f667420576f7264050000000b02
00000000050000000c029f03fd041c000000fb021000070000000000bc02000000000102022253797374656d000000000a000000040000000000ffffffff0100
000000003000040000002d010000050000000201010000001c000000fb02dfff0000000000009001000000000440001254696d6573204e657720526f6d616e00
4ad4f47753d4f4770100000000003000040000002d010100050000000902000000020d000000320a010000000100040000000000fd049f03206f0f0007000000
fc020000ffffff000000040000002d01020008000000fa0200000200000000000002040000002d010300070000001b049101ca001301010007000000fc020000
ffffff000000040000002d01040004000000f001020008000000fa0200000000000000000000040000002d01020004000000f0010300030000001e0007000000
16048501b5001e0116000500000002010100000011000000320a1f014a000400040016001e01b40085015a6c696214000900090010000d000000320a1f018000
0100040016001e01b400850120000f000500000002010100000017000000320a440136000800040016001e01b4008501287a6c69622e68290b000e0009000900
1000080010000b000d000000320a440194000100040016001e01b400850120000f00040000002701ffff07000000fc020000ffffff000000040000002d010300
08000000fa0200000200000000000002040000002d010500070000001b0491013a0313010d02040000002d01040004000000f0010300040000002d0102000400
0000f0010500030000001e00070000001604850125031e01220205000000020101000000040000002d0101000500000009020000000226000000320a1f012e02
1200040022021e0124038501466c75782064652064696666e972656e63651200090011001000080010000e000800100009000a000a000e000b000e0010000e00
0e000d000000320a1f0118030100040022021e012403850120000f00050000000201010000001c000000320a44015e020b00040022021e012403850128646966
7374726d2e6829290b00100009000a000c0009000b001900080010000b000d000000320a4401e8020100040022021e012403850120000f00040000002701ffff
1000000026060f001600ffffffff0000c600000051010000100200006c01000008000000fa0200000200000000000000040000002d01030007000000fc020100
000000000000040000002d01050008000000250302000d025e01db005e0108000000fa0205000100000000000000040000002d01060004000000f00103000700
0000fc020000000000000000040000002d0103000a00000024030300de005401c8005e01de006901040000002d010200040000002d01040004000000f0010300
0800000026060f000600ffffffff010007000000fc020000ffffff000000040000002d01030008000000fa0200000200000000000002040000002d0107000700
00001b046500210300000d02040000002d01040004000000f0010300040000002d01020004000000f0010700030000001e0007000000160459000c030b002202
05000000020101000000040000002d010100050000000902000000021c000000320a0c0049020b00040022020b000b035900426173696320546f6f6c73291600
0f000c0009000e00080015001000100009000c000d000000320a0c00e3020100040022020b000b03590020000f00050000000201010000001d000000320a3100
4f020c00040022020b000b0359002864696673746f6f6c2e68290b00100009000a000c000900100010000900080010000b000d000000320a3100de0201000400
22020b000b03590020000f00040000002701ffff07000000fc020000ffffff000000040000002d01030008000000fa0200000200000000000002040000002d01
0700070000001b046500460100007d00040000002d01040004000000f0010300040000002d01020004000000f0010700030000001e0007000000160459003101
0b00920005000000020101000000040000002d0101000500000009020000000219000000320a0c00a5000900040092000b00300159004261736963206465665c
16000f000c0009000e00080010000e000a000d000000320a0c001d010100040092000b003001590020000f00050000000201010000001d000000320a31009700
0c00040092000b00300159002864696662617369632e68290b00100009000a0010000f000c0009000e00080010000b000d000000320a31002a01010004009200
0b003001590020000f00040000002701ffff1000000026060f001600ffffffff00009602000062000000b10200001601000008000000fa020000020000000000
0000040000002d010300040000002d0105000800000025030200a3021301a3027700040000002d01060004000000f001030007000000fc020000000000000000
040000002d0103000a00000024030300ae027a00a402640099027a00040000002d010200040000002d01040004000000f00103000800000026060f000600ffff
ffff01001000000026060f001600ffffffff000043010000620000008d0200001601000008000000fa0200000200000000000000040000002d01030004000000
2d01050008000000250302008a02130155016c00040000002d01060004000000f001030007000000fc020000000000000000040000002d0103000a0000002403
03005e0166004601640053017900040000002d010200040000002d01040004000000f00103000800000026060f000600ffffffff01001000000026060f001600
ffffffff0000ae0300000b01000003050000980100000800000026060f000600ffffffff0000040000002d010600040000002d01050005000000070104000000
0600000026062600020001000500000004010700000007000000fc020000c0c0c0000000040000002d0103000c00000024030400b6031301fb041301fb049001
b603900106000000260626000200000006000000260601100200000008000000fa02000000000000ffffff00040000002d0107000500000004010b0000000500
00002606001000000c00000024030400b6031301b6039001fb049001fb04130112000000260602101a0000000101050000000000000000000100000000000000
00000000060000002606011002000200040000002d010600060000002606260002000100050000000401090000000600000026062600020000002d0000004201
0500000028000000080000000800000001000100000000002000000000000000000000000000000000000000ffffff000000000055000000aa00000055000000
aa00000055000000aa00000055000000aa000000040000002d01080004000000f0010300060000002606260002000100070000001b049101fc041301b6030600
000026062600020000000500000004010700000007000000fc020000c0c0c0000000040000002d01030004000000f00108000c00000024030400b6031301fb04
1301fb049001b6039001060000002606011002000100040000002d01050004000000f00103000500000004010d000000040000002d010200040000002d010400
050000000701010000000800000026060f000600ffffffff010008000000fa0200000200000000000000040000002d010300040000002d010500070000001b04
9101fc041301b603040000002d01020004000000f0010300040000002d0104000800000026060f000600ffffffff0100030000001e000700000016048501e704
1e01cb0305000000020101000000040000002d0101000500000009020000000220000000320a1f01fd030e000400cb031e01e604850142617369632046696c65
20492f4f16000f000c0009000e0008001200090009000e0008000b00090018000d000000320a1f01b30401000400cb031e01e604850120000f00050000000201
010000001d000000320a440103040c000400cb031e01e6048501284466734d46696c652e68290b0018000a000c001d001200090009000e00080010000b000d00
0000320a4401ae0401000400cb031e01e604850120000f00040000002701ffff1000000026060f001600ffffffff0000ba020000600000006804000016010000
08000000fa0200000200000000000000040000002d010300040000002d010500080000002503020065041301cd026c00040000002d01060004000000f0010300
07000000fc020000000000000000040000002d0103000a00000024030300d5026300bc026400cc027700040000002d010200040000002d01040004000000f001
03000800000026060f000600ffffffff01001000000026060f001600ffffffff000043010000440000004f0400001601000008000000fa020000020000000000
0000040000002d010300040000002d01050008000000250302004c04130157015000040000002d01060004000000f001030007000000fc020000000000000000
040000002d0103000a000000240303005d01460046014c0058015b00040000002d010200040000002d01040004000000f00103000800000026060f000600ffff
ffff010007000000fc020000ffffff000000040000002d01030008000000fa0200000200000000000002040000002d010800070000001b046500b1040000cf03
040000002d01040004000000f0010300040000002d01020004000000f0010800030000001e0007000000160459009c040b00e403050000000201010000000400
00002d0101000500000009020000000216000000320a0c000a0407000400e4030b009b04590043206f72204f53291600080010000b000800180012000d000000
320a0c00750401000400e4030b009b04590020000f000500000002010100000016000000320a3100010407000400e4030b009b04590052756e54696d65291600
110010001500090019000e000d000000320a31007d0401000400e4030b009b04590020000f00040000002701ffff1000000026060f001600ffffffff00001e03
000025000000d20300004000000008000000fa0200000200000000000000040000002d010300040000002d010500080000002503020020033200bc0332000400
00002d01060004000000f001030007000000fc020000000000000000040000002d0103000a00000024030300ba033d00d0033200ba032800040000002d010200
040000002d01040004000000f00103000800000026060f000600ffffffff01001000000026060f001600ffffffff000074040000620000009a04000016010000
08000000fa0200000200000000000000040000002d010300040000002d01050008000000250302009704130181047700040000002d01060004000000f0010300
07000000fc020000000000000000040000002d0103000a000000240303008c0479007e04640077047c00040000002d010200040000002d01040004000000f001
03000800000026060f000600ffffffff010007000000fc020000ffffff000000040000002d01030008000000fa0200000200000000000002040000002d010800
070000001b04d602d00358027102040000002d01040004000000f0010300040000002d01020004000000f0010800030000001e00070000001604ca02bb036302
860205000000020101000000040000002d0101000500000009020000000223000000320a6402a5021000040086026302ba03ca024d65746120446673204d616e
616765721d000e0009000f00080018000a000c0008001d000f0010000f0010000e000b000d000000320a64029a030100040086026302ba03ca0220000f000500
000002010100000020000000320a8902bb020e00040086026302ba03ca02284466735374727563744d6772290b0018000a000c00120009000b0011000e000900
1d0010000b000b000d000000320a890285030100040086026302ba03ca0220000f00040000002701ffff1000000026060f001600ffffffff0000c60000008c01
0000bf0200005b02000008000000fa0200000200000000000000040000002d010300040000002d0105000800000025030200bc025802d9009801040000002d01
060004000000f001030007000000fc020000000000000000040000002d0103000a00000024030300e1008f01c8009001d800a301040000002d01020004000000
2d01040004000000f00103000800000026060f000600ffffffff01001000000026060f001600ffffffff0000ec0200008e010000eb0300005b02000008000000
fa0200000200000000000000040000002d010300040000002d0105000800000025030200ee025802da039b01040000002d01060004000000f001030007000000
fc020000000000000000040000002d0103000a00000024030300de03a701e8039001d1039601040000002d010200040000002d01040004000000f00103000800
000026060f000600ffffffff01001000000026060f001600ffffffff0000df00000062000000bf0200005b02000008000000fa02000002000000000000000400
00002d010300040000002d0105000800000025030200bc025802ed007100040000002d01060004000000f001030007000000fc02000000000000000004000000
2d0103000a00000024030300f8006d00e2006400e8007c00040000002d010200040000002d01040004000000f00103000800000026060f000600ffffffff0100
1000000026060f001600ffffffff00001703000062000000870300005b02000008000000fa0200000200000000000000040000002d010300040000002d010500
08000000250302008403580224037700040000002d01060004000000f001030007000000fc020000000000000000040000002d0103000a000000240303002f03
7800200364001a037c00040000002d010200040000002d01040004000000f00103000800000026060f000600ffffffff010007000000fc020000ffffff000000
040000002d01030008000000fa0200000200000000000002040000002d010800070000001b049e03850320032602040000002d01040004000000f00103000400
00002d01020004000000f0010800030000001e00070000001604920370032b033b0205000000020101000000040000002d010100050000000902000000021600
0000320a2c039902070004003b022b036f03920344465320415049291800120012000800170012000b000d000000320a2c031103010004003b022b036f039203
20000f00050000000201010000001a000000320a510397020a0004003b022b036f039203286466736170692e68290b0010000a000c000f001000090008001000
0b000d000000320a51031303010004003b022b036f03920320000f00040000002701ffff1000000026060f001600ffffffff0000c8020000d3020000e3020000
2303000008000000fa0200000200000000000000040000002d010300040000002d0105000800000025030200d5022003d502e802040000002d01060004000000
f001030007000000fc020000000000000000040000002d0103000a00000024030300e002eb02d602d602cb02eb02040000002d010200040000002d0104000400
0000f00103000800000026060f000600ffffffff01001000000026060f001600ffffffff00001d0200008e010000740200002303000008000000fa0200000200
000000000000040000002d010300040000002d0105000800000025030200710220032a02a301040000002d01060004000000f001030007000000fc0200000000
00000000040000002d0103000a000000240303003502a401260290012002a801040000002d010200040000002d01040004000000f00103000800000026060f000600ffffffff0100040000002d010000030000000000}}}}}{\insrsid15493243
\par
\par
\par
\par
\par
\par {\listtext\pard\plain\s1 \b\f1\fs36\lang1036\langfe1036\kerning28\langfenp1036\insrsid15493243 \hich\af1\dbch\af13\loch\f1 2.\tab}}\pard\plain \s1\ql \fi-113\li113\ri0\sb240\sa60\keepn\widctlpar
\jclisttab\tx360\faauto\ls4\outlinelevel0\adjustright\rin0\lin113\itap0 \b\fs36\lang1036\langfe1036\kerning28\loch\af1\hich\af1\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af1\dbch\af13\loch\f1 \hich\f1 Gestion du flux de diff\'e9
\loch\f1 rence
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0
La description de l'API est actuellement contenue dans difstrm.h. Elle sera d\'e9\loch\f0 crite dans ce document prochainement.
\par {\listtext\pard\plain\s1 \b\f1\fs36\lang1036\langfe1036\kerning28\langfenp1036\insrsid15493243 \hich\af1\dbch\af13\loch\f1 3.\tab}}\pard\plain \s1\ql \fi-113\li113\ri0\sb240\sa60\keepn\widctlpar
\jclisttab\tx360\faauto\ls4\outlinelevel0\adjustright\rin0\lin113\itap0 \b\fs36\lang1036\langfe1036\kerning28\loch\af1\hich\af1\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af1\dbch\af13\loch\f1 DifStrm : Partie gestion de fichier
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243
\par {\listtext\pard\plain\s2 \b\i\f1\fs32\lang1036\langfe1036\langfenp1036\insrsid15493243 \hich\af1\dbch\af13\loch\f1 3.1.\tab}}\pard\plain \s2\ql \fi-679\li792\ri0\sb240\sa60\keepn\widctlpar
\jclisttab\tx792\faauto\ls4\ilvl1\outlinelevel1\adjustright\rin0\lin792\itap0 \b\i\fs32\lang1036\langfe1036\loch\af1\hich\af1\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af1\dbch\af13\loch\f1 \hich\f1 Interface d'acc\'e8\loch\f1
s au fichier DifStream (.DFS)
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0
L'Interface de fichier DifStream se charge de donner acc\'e8\loch\f0 \hich\f0 s au fichier .DFS en lecture ou en \'e9\loch\f0 \hich\f0 criture. Il virtualise les diff\'e9\loch\f0 rent type de fichier DifStream.
\par
\par \hich\af0\dbch\af13\loch\f0 \hich\f0 Par exemple, dans le cas des fichiers d\'e9\loch\f0 \hich\f0 coup\'e9\loch\f0 s en volume, les callback fournies par l'utilisateur \hich\af0\dbch\af13\loch\f0 \hich\f0 ouvriront les multiples fichiers r\'e9\'e9
\loch\f0 \hich\f0 ls constituant chacun un volume, et les fonctions fournies par l'interface DFS au gestionnaire de fichiers masqueront ce d\'e9\loch\f0 coupage en permettant de manipuler ces multiples volumes comme s\hich\f0 \rquote \loch\f0
il ne s'agissait que d'un seul \hich\af0\dbch\af13\loch\f0 f\hich\af0\dbch\af13\loch\f0 ichier.
\par {\listtext\pard\plain\s3 \b\f1\fs28\lang1036\langfe1036\langfenp1036\insrsid15493243 \hich\af1\dbch\af13\loch\f1 3.1.1.\tab}}\pard\plain \s3\ql \fi-1111\li1224\ri0\sb240\sa60\keepn\widctlpar
\jclisttab\tx1224\faauto\ls4\ilvl2\outlinelevel2\adjustright\rin0\lin1224\itap0 \b\fs28\lang1036\langfe1036\loch\af1\hich\af1\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af1\dbch\af13\loch\f1
Fonctions Callback fournies par l'utilisateur au gestionnaire de fichier
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243
\par \hich\af0\dbch\af13\loch\f0 \hich\f0 Liste des fonctions \'e0\loch\f0 \hich\f0 \'e9\loch\f0 crire.
\par \hich\af0\dbch\af13\loch\f0 Fonction classique\~\hich\f0 : ouverture, fermeture, lecture/\'e9\loch\f0 criture. Dans le cas non-flux, seek et taille d'un fichier. Pour le cas multi-volume,\hich\af0\dbch\af13\loch\f0 \hich\f0
l'ouverture contiendra un Callback red\'e9\loch\f0 finissable permettant de calculer le nom du fichier (permettant ainsi d'isoler le traitement sur le nom du fichier Ansi/DBCS/Unicode).
\par }{\cf2\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 [FL] Cette fonction peut \'e9\loch\f0 galement exister en 2 versions\~: ANSI (y compris DBCS) \hich\af0\dbch\af13\loch\f0 \hich\f0 et Unicode avec repr\'e9\loch\f0
sentation interne du nom de fichier en Unicode, qui ne consomme que peu d\hich\f0 \rquote \loch\f0 \hich\f0 espace suppl\'e9\loch\f0 mentaire et apporte l\hich\f0 \rquote \loch\f0 avantage d\hich\f0 \rquote \loch\f0 \hich\f0 une vraie compatibilit\'e9
\loch\f0 multi-lingue sur plate-forme Windows et Macintosh. Si l\hich\f0 \rquote \loch\f0 \hich\f0 espace consomm\'e9\loch\f0 \hich\f0 est probl\'e9\loch\f0 matique,\hich\af0\dbch\af13\loch\f0 \hich\af0\dbch\af13\loch\f0 \hich\f0 tu peux m\'ea\loch\f0
me encoder le nom de fichier en UTF-8 qui est une transformation d\hich\f0 \rquote \loch\f0 Unicode qui s\hich\f0 \rquote \loch\f0 \hich\f0 assure que les caract\'e8\loch\f0 \hich\f0 res ASCII (0-127) sont encod\'e9\loch\f0
s sur un seul octet. Dans ce cadre, quid d\hich\f0 \rquote \loch\f0 Unix ?
\par }{\insrsid15493243
\par {\listtext\pard\plain\s3 \b\f1\fs28\lang1036\langfe1036\langfenp1036\insrsid15493243 \hich\af1\dbch\af13\loch\f1 3.1.2.\tab}}\pard\plain \s3\ql \fi-1111\li1224\ri0\sb240\sa60\keepn\widctlpar
\jclisttab\tx1224\faauto\ls4\ilvl2\outlinelevel2\adjustright\rin0\lin1224\itap0 \b\fs28\lang1036\langfe1036\loch\af1\hich\af1\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af1\dbch\af13\loch\f1
Fonctions fournies par l'interface DFS au gestionnaire d\hich\af1\dbch\af13\loch\f1 e fichier
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 Un fichier .DFS peut \'ea\loch\f0
\hich\f0 tre un flux en entr\'e9\loch\f0 \hich\f0 ou sortie (il n'y pas de SEEK possible dans un flux), un fichier .DFS monolithique ou d\'e9\loch\f0 \hich\f0 coup\'e9\loch\f0 \hich\f0 en volume. Le d\'e9\loch\f0 \hich\f0 coupage ou non en volume doit
\'ea\loch\f0 tre totalement transparent pour le gestionnaire de fichier DFS\hich\af0\dbch\af13\loch\f0 , qui utilise l\hich\f0 \rquote \loch\f0 interface .DFS
\par
\par \hich\af0\dbch\af13\loch\f0 \hich\f0 Il y a plusieurs situation d'\'e9\loch\f0 criture du fichier DFS\~:
\par {\pntext\pard\plain\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \hich\af0\dbch\af13\loch\f0 -\tab}}\pard \ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls5\pnrnot0\pnindent360\pnsp120\pnhang {\pntxtb -}}
\faauto\ls5\adjustright\rin0\lin644\itap0 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 l'\'e9\loch\f0 criture dans un flux de sortie DFS
\par {\pntext\pard\plain\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \hich\af0\dbch\af13\loch\f0 -\tab}}\pard \ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls5\pnrnot0\pnindent360\pnsp120\pnhang {\pntxtb -}}
\faauto\ls5\adjustright\rin0\lin644\itap0 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 l'\'e9\loch\f0 \hich\f0 criture dans un nouveau fichier .DFS, qui peut \'ea\loch\f0 \hich\f0 tre ou non d\'e9\loch\f0 \hich\f0 coup\'e9\loch\f0
en volume (ou l\hich\f0 \rquote \'e9\loch\f0 criture en remplacement d\hich\f0 \rquote \loch\f0 un fichier \hich\af0\dbch\af13\loch\f0 \hich\f0 .DFS existant, qui peut \'ea\loch\f0 \hich\f0 tre ou non d\'e9\loch\f0 \hich\f0 coup\'e9\loch\f0 en volume)
\par {\pntext\pard\plain\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \hich\af0\dbch\af13\loch\f0 -\tab}}\pard \ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls5\pnrnot0\pnindent360\pnsp120\pnhang {\pntxtb -}}
\faauto\ls5\adjustright\rin0\lin644\itap0 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 l'\'e9\loch\f0 \hich\f0 criture \'e0\loch\f0 \hich\f0 la fin d'un ancien fichier .DFS, qui peut \'ea\loch\f0 \hich\f0 tre ou non d\'e9\loch\f0 \hich\f0 coup
\'e9\loch\f0 en volume
\par }\pard \ql \li284\ri0\widctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\adjustright\rin0\lin284\itap0 {\insrsid15493243
\par \hich\af0\dbch\af13\loch\f0 Il y a plusieurs situation de lecture d'un fichier DFS\~:
\par {\pntext\pard\plain\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \hich\af0\dbch\af13\loch\f0 -\tab}}\pard \ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls5\pnrnot0\pnindent360\pnsp120\pnhang {\pntxtb -}}
\faauto\ls5\adjustright\rin0\lin644\itap0 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 la lecture d'un flux d'entr\'e9\loch\f0 e DFS
\par {\pntext\pard\plain\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \hich\af0\dbch\af13\loch\f0 -\tab}}\pard \ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls5\pnrnot0\pnindent360\pnsp120\pnhang {\pntxtb -}}
\faauto\ls5\adjustright\rin0\lin644\itap0 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 la lecture d'u\hich\af0\dbch\af13\loch\f0 \hich\f0 n fichier DFS existant, qui peut \'ea\loch\f0 \hich\f0 tre ou non d\'e9\loch\f0 \hich\f0 coup\'e9\loch\f0 en volume
\par }\pard \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 {\insrsid15493243
\par \hich\af0\dbch\af13\loch\f0 \hich\f0 Les deux derni\'e8\loch\f0 \hich\f0 res situations d\'e9\loch\f0 \hich\f0 crites en \'e9\loch\f0 \hich\f0 criture sont forc\'e9\loch\f0 \hich\f0 ment coupl\'e9\loch\f0 \hich\f0 s au dernier cas de lecture (l'\'e9
\loch\f0 criture d'un fichier DFS en dehors d'un flux autorise la lecture dudit fichier).
\par
\par \hich\af0\dbch\af13\loch\f0 L'inte\hich\af0\dbch\af13\loch\f0 \hich\f0 rface DFS fournie au gestionnaire de fichier l'interface d\'e9\loch\f0 \hich\f0 crite ci-dessous, afin de masquer les diff\'e9\loch\f0 \hich\f0 rences d'impl\'e9\loch\f0 \hich\f0
mentation de ces diff\'e9\loch\f0 \hich\f0 rents cas (et notamment de masquer quasiment totalement les diff\'e9\loch\f0 \hich\f0 rences entre les fichiers DFS d\'e9\loch\f0 \hich\f0 coup\'e9\loch\f0 ou non en volu\hich\af0\dbch\af13\loch\f0 m
\hich\af0\dbch\af13\loch\f0 e).
\par
\par \hich\af0\dbch\af13\loch\f0 Fonctions fournies (voir DFSMFILE.H) \~:
\par
\par
\par
\par }\pard\plain \s18\ql \fi-2693\li2977\ri0\widctlpar\faauto\adjustright\rin0\lin2977\itap0 \b\fs22\lang1036\langfe1036\loch\af2\hich\af2\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af2\dbch\af13\loch\f2
DFSFILEWRAP DfsOpenFile(DFSFILEINFOPARAMINTERNAL DfsFileParam)
\par }\pard\plain \s19\ql \li284\ri0\sa60\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs22\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 Ouvre un fichier DFS.
\par }\pard\plain \s16\ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \b\fs22\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 Param\'e8\loch\f0 tres\~:
\par }\pard\plain \s17\ql \fi-1985\li2552\ri0\widctlpar\faauto\adjustright\rin0\lin2552\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 dfsStatus\~:\tab Voir DfsGetStatus
\par }\pard\plain \s16\ql \li284\ri0\sb120\widctlpar\faauto\adjustright\rin0\lin284\itap0 \b\fs22\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 Valeur de retour : }{
\b0\insrsid15493243 \hich\af0\dbch\af13\loch\f0 handle du Fichier DFS
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243
\par
\par }\pard\plain \s18\ql \fi-2693\li2977\ri0\widctlpar\faauto\adjustright\rin0\lin2977\itap0 \b\fs22\lang1036\langfe1036\loch\af2\hich\af2\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af2\dbch\af13\loch\f2
dfuLong DfsCloseFile(DFSFILEWRAP dfsFileWrap)
\par }\pard\plain \s19\ql \li284\ri0\sa60\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs22\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 Ferme un fichier DFS.
\par }\pard\plain \s16\ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \b\fs22\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 Param\'e8\loch\f0 tres\~:
\par }\pard\plain \s17\ql \fi-1985\li2552\ri0\widctlpar\faauto\adjustright\rin0\lin2552\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 DfsFileWrap\~:\tab
Handle du fichier DFS
\par }\pard\plain \s16\ql \li284\ri0\sb120\widctlpar\faauto\adjustright\rin0\lin284\itap0 \b\fs22\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 Valeur de retour : }{
\b0\insrsid15493243 \hich\af0\dbch\af13\loch\f0 0
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243
\par
\par }\pard\plain \s18\ql \fi-2693\li2977\ri0\widctlpar\faauto\adjustright\rin0\lin2977\itap0 \b\fs22\lang1036\langfe1036\loch\af2\hich\af2\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af2\dbch\af13\loch\f2
dfuLong DfsGetStatus(DFSFILEWRAP dfsFileWrap)
\par }\pard\plain \s19\ql \li284\ri0\sa60\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs22\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0
Retourne les flag permettant de savoir ce qui est possible avec le fic\hich\af0\dbch\af13\loch\f0 hier.
\par }\pard\plain \s16\ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \b\fs22\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 Param\'e8\loch\f0 tres\~:
\par }\pard\plain \s17\ql \fi-1985\li2552\ri0\widctlpar\faauto\adjustright\rin0\lin2552\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 DfsFileWrap\~:\tab
Handle du fichier DFS
\par }\pard\plain \s16\ql \li284\ri0\sb120\widctlpar\faauto\adjustright\rin0\lin284\itap0 \b\fs22\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 Valeur de retour : }{
\b0\insrsid15493243 \hich\af0\dbch\af13\loch\f0 Combinaison des valeurs suivantes
\par }\pard\plain \s17\ql \fi-1985\li2552\ri0\widctlpar\faauto\adjustright\rin0\lin2552\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 DFS_STREAM\~:\tab
implique qu'un seek est impossible.
\par \hich\af0\dbch\af13\loch\f0 DFS_READABLE\~:\tab Fichier permettant de lire
\par \hich\af0\dbch\af13\loch\f0 DFS_WRITABLE\~:\tab \hich\f0 Fichier permettant d'\'e9\loch\f0 crire
\par \hich\af0\dbch\af13\loch\f0 DFS_NEWFILE\~:\tab \hich\af0\dbch\af13\loch\f0 \hich\f0 Nouveau fichier. Ne peut \'ea\loch\f0 \hich\f0 tre pr\'e9\loch\f0 \hich\f0 sent que si DFS_WRITABLE est pr\'e9\loch\f0 sent
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243
\par \hich\af0\dbch\af13\loch\f0 Un fichier DFS_STREAM est soit DFS_READABLE soit DFS_WRITABLE | DFS_NEWFILE
\par
\par }\pard\plain \s18\ql \fi-2693\li2977\ri0\widctlpar\faauto\adjustright\rin0\lin2977\itap0 \b\fs22\lang1036\langfe1036\loch\af2\hich\af2\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af2\dbch\af13\loch\f2
dfuLong DfsGetSize(DFSFILEWRAP dfsFileWrap)
\par }\pard\plain \s19\ql \li284\ri0\sa60\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs22\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 Retourne la taille d'un fichier DFS.
\par }\pard\plain \s16\ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \b\fs22\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 Param\'e8\loch\f0 tres\~:
\par }\pard\plain \s17\ql \fi-1985\li2552\ri0\widctlpar\faauto\adjustright\rin0\lin2552\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 DfsFileWrap\~:\tab
\hich\af0\dbch\af13\loch\f0 Handle du fichier DFS
\par }\pard\plain \s16\ql \li284\ri0\sb120\widctlpar\faauto\adjustright\rin0\lin284\itap0 \b\fs22\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 Valeur de retour : }{
\b0\insrsid15493243 \hich\af0\dbch\af13\loch\f0 Taille du fichier DFS en octets
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243
\par \hich\af0\dbch\af13\loch\f0 Un fichier avec le flag DFS_STREAM retournera DFS_ERROR_BAD_PARAMETER
\par
\par }\pard\plain \s18\ql \fi-2693\li2977\ri0\widctlpar\faauto\adjustright\rin0\lin2977\itap0 \b\fs22\lang1036\langfe1036\loch\af2\hich\af2\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af2\dbch\af13\loch\f2
dfuLong DfsSeek(DFSFILEWRAP dfsFileWrap, dfuLong pos)
\par }\pard\plain \s19\ql \li284\ri0\sa60\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs22\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0
Positionne le pointeur courant dans le fichier DFS (\'e0\loch\f0 par\hich\af0\dbch\af13\loch\f0 \hich\f0 tir du d\'e9\loch\f0 but du fichier).
\par }\pard\plain \s16\ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \b\fs22\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 Param\'e8\loch\f0 tres\~:
\par }\pard\plain \s17\ql \fi-1985\li2552\ri0\widctlpar\faauto\adjustright\rin0\lin2552\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 DfsFileWrap\~:\tab
Handle du fichier DFS
\par }\pard\plain \s16\ql \li284\ri0\sb120\widctlpar\faauto\adjustright\rin0\lin284\itap0 \b\fs22\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 Valeur de retour : }{
\b0\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 0 en cas de succ\'e8\loch\f0 s (DFS_SUCCESS)
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243
\par \hich\af0\dbch\af13\loch\f0 Un fichier avec le flag DFS_STREAM retournera DFS_ERROR_BADPARAMETER
\par
\par }\pard\plain \s18\ql \fi-2693\li2977\ri0\widctlpar\faauto\adjustright\rin0\lin2977\itap0 \b\fs22\lang1036\langfe1036\loch\af2\hich\af2\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af2\dbch\af13\loch\f2
dfuLong DfsRead(DFSFILEWRAP dfsFileWrap, void* Buf,\line dfuLon\hich\af2\dbch\af13\loch\f2 g Size, dfuLong *errorCode)
\par }\pard\plain \s19\ql \li284\ri0\sa60\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs22\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 Effectue une lecture dans le fichier .DFS
\par }\pard\plain \s16\ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \b\fs22\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 Param\'e8\loch\f0 tres\~:
\par }\pard\plain \s17\ql \fi-1985\li2552\ri0\widctlpar\faauto\adjustright\rin0\lin2552\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 DfsFileWrap\~:\tab
Handle du fichier DFS
\par \hich\af0\dbch\af13\loch\f0 Buf\~:\tab \hich\f0 Pointeur vers le buffer recevant les donn\'e9\loch\f0 es
\par \hich\af0\dbch\af13\loch\f0 Size\~:\tab \hich\f0 Nombre d'octet \'e0\loch\f0 lire
\par \hich\af0\dbch\af13\loch\f0 errorCode\~:\tab Pointeur vers une variable recevant le code d\hich\af0\dbch\af13\loch\f0 \hich\f0 'erreur (peut \'ea\loch\f0 tre NULL)
\par }\pard\plain \s16\ql \li284\ri0\sb120\widctlpar\faauto\adjustright\rin0\lin284\itap0 \b\fs22\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 Valeur de retour : }{
\b0\insrsid15493243 \hich\af0\dbch\af13\loch\f0 Nombre d'octets lus.
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243
\par \hich\af0\dbch\af13\loch\f0 \hich\f0 Un fichier sans le flag DFS_READABLE retournera 0 et *errorCode \'e0\loch\f0 DFS_ERROR_BADPARAMETER
\par \hich\af0\dbch\af13\loch\f0 \hich\f0 Si le fichier est termin\'e9\loch\f0 \hich\f0 , *errorcode est \'e0\loch\f0 \hich\f0 DFS_ERROR_EOF, sinon 0\'85
\par \hich\af0\dbch\af13\loch\f0 Avec Size = 0, on peut utiliser c\hich\af0\dbch\af13\loch\f0 ette fonction pour savoir si la fin du fichier est atteinte.
\par
\par
\par }\pard\plain \s18\ql \fi-2693\li2977\ri0\widctlpar\faauto\adjustright\rin0\lin2977\itap0 \b\fs22\lang1036\langfe1036\loch\af2\hich\af2\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af2\dbch\af13\loch\f2
dfuLong DfsWrite(DFSFILEWRAP dfsFileWrap, const void* Buf,\line dfuLong Size, dfuLong *errorCode)
\par }\pard\plain \s19\ql \li284\ri0\sa60\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs22\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 Effectue une \'e9\loch\f0
criture dans le fichier .DFS
\par }\pard\plain \s16\ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \b\fs22\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 Param\'e8\loch\f0 tres\~:
\par }\pard\plain \s17\ql \fi-1985\li2552\ri0\widctlpar\faauto\adjustright\rin0\lin2552\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 DfsFileWrap\~:\tab
Handle du fichier DFS
\par \hich\af0\dbch\af13\loch\f0 Buf\~:\tab \hich\af0\dbch\af13\loch\f0 \hich\f0 Pointeur vers le buffer contenant les donn\'e9\loch\f0 es
\par \hich\af0\dbch\af13\loch\f0 Size\~:\tab \hich\f0 Nombre d'octet \'e0\loch\f0 lire
\par \hich\af0\dbch\af13\loch\f0 errorCode\~:\tab \hich\f0 Pointeur vers une variable recevant le code d'erreur (peut \'ea\loch\f0 tre NULL)
\par }\pard\plain \s16\ql \li284\ri0\sb120\widctlpar\faauto\adjustright\rin0\lin284\itap0 \b\fs22\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 Valeur de retour :}{
\b0\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 Nombre d'octets \'e9\loch\f0 crits.
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243
\par \hich\af0\dbch\af13\loch\f0 Un fichier sans le flag DFS_WRITABLE retournera 0 et *e\hich\af0\dbch\af13\loch\f0 \hich\f0 rrorCode \'e0\loch\f0 DFS_ERROR_BADPARAMETER
\par
\par {\listtext\pard\plain\s3 \b\f1\fs28\lang1036\langfe1036\langfenp1036\insrsid15493243 \hich\af1\dbch\af13\loch\f1 3.1.3.\tab}}\pard\plain \s3\ql \fi-1111\li1224\ri0\sb240\sa60\keepn\widctlpar
\jclisttab\tx1224\faauto\ls4\ilvl2\outlinelevel2\adjustright\rin0\lin1224\itap0 \b\fs28\lang1036\langfe1036\loch\af1\hich\af1\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af1\dbch\af13\loch\f1 Stockage du fichier DFS sur le disque
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 Ici, le type dfuLong repr\'e9\loch\f0
sente un entier de 4\~\hich\f0 octets stock\'e9\loch\f0 sous la forme Intel.
\par
\par \hich\af0\dbch\af13\loch\f0 Chaque fichier (y compris fichier de volume) commence et se termine respectivement par les st\hich\af0\dbch\af13\loch\f0 ructures\~:
\par
\par }\pard\plain \s20\ql \li284\ri0\keepn\widctlpar\brdrt\brdrs\brdrw10\brsp20 \brdrl\brdrs\brdrw10\brsp80 \brdrb\brdrs\brdrw10\brsp20 \brdrr\brdrs\brdrw10\brsp80 \faauto\adjustright\rin0\lin284\rtlgutter\itap0 \shading500\cbpat8
\fs20\lang1024\langfe1024\loch\af2\hich\af2\dbch\af13\cgrid\noproof\langnp1033\langfenp1036 {\insrsid15493243 \hich\af2\dbch\af13\loch\f2 typedef struct
\par \{
\par \hich\af2\dbch\af13\loch\f2 char szMagicText[60];
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfCrcMagicText;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfMagic;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfVersionForCreate;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfVersionNeeded;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfsVolumeSize;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfsTotalSize;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfsThis\hich\af2\dbch\af13\loch\f2 FileSize;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfsThisVolumeNumber;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfsTotalNumberOfVolume;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfsBlockAlignement;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfsFileDescription;
\par \}\hich\af2\dbch\af13\loch\f2 DFSINFOBEGIN;
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\lang1033\langfe1036\langnp1033\insrsid15493243
\par
\par }\pard\plain \s20\ql \li284\ri0\keepn\widctlpar\brdrt\brdrs\brdrw10\brsp20 \brdrl\brdrs\brdrw10\brsp80 \brdrb\brdrs\brdrw10\brsp20 \brdrr\brdrs\brdrw10\brsp80 \faauto\adjustright\rin0\lin284\rtlgutter\itap0 \shading500\cbpat8
\fs20\lang1024\langfe1024\loch\af2\hich\af2\dbch\af13\cgrid\noproof\langnp1033\langfenp1036 {\insrsid15493243 \hich\af2\dbch\af13\loch\f2 typedef struct
\par \{
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfVersionNeeded;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfsVolumeSize;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfsTotalSize;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfsThisFileSize;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfsThisVolumeNumber;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfsTotalNumberOfVolume;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfEndMagic;
\par }{\lang1024\langfe1024\langnp1036\insrsid15493243 \}\hich\af2\dbch\af13\loch\f2 DFSINFOEND;
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243
\par {\pntext\pard\plain\s21 \f10\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \loch\af10\dbch\af13\hich\f10 \'a7\tab}}\pard\plain \s21\ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls6\pnrnot0
\pnf10\pnstart1\pnindent360\pnsp120\pnhang {\pntxtb \'a7}}\faauto\ls6\adjustright\rin0\lin644\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0
szMagicText : Texte de pr\'e9\loch\f0 \hich\f0 sentation du format DFS (avec URL\'85\loch\f0 ).
\par {\pntext\pard\plain\s21 \f10\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \loch\af10\dbch\af13\hich\f10 \'a7\tab}}\pard \s21\ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls6\pnrnot0
\pnf10\pnstart1\pnindent360\pnsp120\pnhang {\pntxtb \'a7}}\faauto\ls6\adjustright\rin0\lin644\itap0 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 dfCrcMagi\hich\af0\dbch\af13\loch\f0 \hich\f0 cText est le CRC32 de ce texte. (on s'inspirera du d\'e9
\loch\f0 \hich\f0 but du PNG pour prot\'e9\loch\f0 ger contre les accidents de conversion bin/ascii)
\par {\pntext\pard\plain\s21 \f10\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \loch\af10\dbch\af13\hich\f10 \'a7\tab}}\pard \s21\ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls6\pnrnot0
\pnf10\pnstart1\pnindent360\pnsp120\pnhang {\pntxtb \'a7}}\faauto\ls6\adjustright\rin0\lin644\itap0 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 dfMagic : un code Magic 'GVDF'.
\par {\pntext\pard\plain\s21 \f10\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \loch\af10\dbch\af13\hich\f10 \'a7\tab}}\pard \s21\ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls6\pnrnot0
\pnf10\pnstart1\pnindent360\pnsp120\pnhang {\pntxtb \'a7}}\faauto\ls6\adjustright\rin0\lin644\itap0 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 dfVersionForCreate : permet de conna\'ee\loch\f0 \hich\f0 tre la version utilis\'e9\loch\f0
\hich\f0 e pour cr\'e9\loch\f0 er le fichier.
\par {\pntext\pard\plain\s21 \f10\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \loch\af10\dbch\af13\hich\f10 \'a7\tab}}\pard \s21\ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls6\pnrnot0
\pnf10\pnstart1\pnindent360\pnsp120\pnhang {\pntxtb \'a7}}\faauto\ls6\adjustright\rin0\lin644\itap0 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 dfVersi\hich\af0\dbch\af13\loch\f0 \hich\f0 onNeeded : version n\'e9\loch\f0 \hich\f0 cessaire \'e0\loch\f0
l'ouverture du fichier.
\par {\pntext\pard\plain\s21 \f10\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \loch\af10\dbch\af13\hich\f10 \'a7\tab}}\pard \s21\ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls6\pnrnot0
\pnf10\pnstart1\pnindent360\pnsp120\pnhang {\pntxtb \'a7}}\faauto\ls6\adjustright\rin0\lin644\itap0 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 dfsTotalSize : taille du fichier DFS hors en-t\'ea\loch\f0 \hich\f0 te. (o\'f9\loch\f0
0 pour DFSINFOBEGIN dans le cas stream)
\par {\pntext\pard\plain\s21 \f10\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \loch\af10\dbch\af13\hich\f10 \'a7\tab}}\pard \s21\ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls6\pnrnot0
\pnf10\pnstart1\pnindent360\pnsp120\pnhang {\pntxtb \'a7}}\faauto\ls6\adjustright\rin0\lin644\itap0 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 dfsThisFileSize : taille du fichier volume DFS courant (o\'f9\loch\f0
0 pour DFSINFOBEGIN dans le cas stream).\hich\af0\dbch\af13\loch\f0 \hich\f0 Diff\'e9\loch\f0 rent de dfsTotalSize uniquement pour le multivolume.
\par {\pntext\pard\plain\s21 \f10\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \loch\af10\dbch\af13\hich\f10 \'a7\tab}}\pard \s21\ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls6\pnrnot0
\pnf10\pnstart1\pnindent360\pnsp120\pnhang {\pntxtb \'a7}}\faauto\ls6\adjustright\rin0\lin644\itap0 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 dfsThisVolumeNumber : num\'e9\loch\f0 \hich\f0
ro du fichier courant dans l'ordre des volumes. (0 pour le cas stream, 1 pour le cas illimit\'e9\loch\f0 )
\par {\pntext\pard\plain\s21 \f10\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \loch\af10\dbch\af13\hich\f10 \'a7\tab}}\pard \s21\ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls6\pnrnot0
\pnf10\pnstart1\pnindent360\pnsp120\pnhang {\pntxtb \'a7}}\faauto\ls6\adjustright\rin0\lin644\itap0 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 dfsTotalNumberOfVolume : nombre total de volume (0 pour le cas stream,\hich\af0\dbch\af13\loch\f0 \hich\f0
1 pour le cas taille illimit\'e9\loch\f0 )
\par {\pntext\pard\plain\s21 \f10\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \loch\af10\dbch\af13\hich\f10 \'a7\tab}}\pard \s21\ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls6\pnrnot0
\pnf10\pnstart1\pnindent360\pnsp120\pnhang {\pntxtb \'a7}}\faauto\ls6\adjustright\rin0\lin644\itap0 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 dfsVolumeSize : taille d'un volume (0 pour le cas stream ou illimit\'e9\loch\f0 ).
\par {\pntext\pard\plain\s21 \f10\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \loch\af10\dbch\af13\hich\f10 \'a7\tab}}\pard \s21\ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls6\pnrnot0
\pnf10\pnstart1\pnindent360\pnsp120\pnhang {\pntxtb \'a7}}\faauto\ls6\adjustright\rin0\lin644\itap0 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 dfsBlockAlignement\~\hich\f0 : alignement des blocs de donn\'e9\loch\f0 es
\par {\pntext\pard\plain\s21 \f10\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \loch\af10\dbch\af13\hich\f10 \'a7\tab}}\pard \s21\ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls6\pnrnot0
\pnf10\pnstart1\pnindent360\pnsp120\pnhang {\pntxtb \'a7}}\faauto\ls6\adjustright\rin0\lin644\itap0 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 dfsFileDescription\~\hich\f0 : Type de fichier DFS (patch pur, premi\'e8\loch\f0 \hich\f0
re version avec patch incr\'e9\hich\af0\dbch\af13\loch\f0 \hich\f0 mentaux\'85\loch\f0 )
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243
\par
\par {\listtext\pard\plain\s2 \b\i\f1\fs32\lang1036\langfe1036\langfenp1036\insrsid15493243 \hich\af1\dbch\af13\loch\f1 3.2.\tab}}\pard\plain \s2\ql \fi-679\li792\ri0\sb240\sa60\keepn\widctlpar
\jclisttab\tx792\faauto\ls4\ilvl1\outlinelevel1\adjustright\rin0\lin792\itap0 \b\i\fs32\lang1036\langfe1036\loch\af1\hich\af1\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af1\dbch\af13\loch\f1 Organisation interne du fichier DFS
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 Nous consid\'e9\loch\f0 \hich\f0
rons ici le fichier DFS comme unique, le d\'e9\loch\f0 \hich\f0 coupage en volume \'e9\loch\f0 \hich\f0 tant totalement transparent. Seul le cas flux (c'est \'e0\loch\f0 \hich\f0 dire sans possibilit\'e9\loch\f0 \hich\f0
d'utiliser DfsSeek lors de la lecture ou de la cr\'e9\loch\f0 at\hich\af0\dbch\af13\loch\f0 \hich\f0 ion du fichier DFS) et le cas du fichier disque classique sont diff\'e9\loch\f0 \hich\f0 renci\'e9\loch\f0 .
\par
\par \hich\af0\dbch\af13\loch\f0 \hich\f0 A la fin du DFS, on aura la liste des r\'e9\loch\f0 pertoires (avec le statut de chacun d'eux : insert, patch, fichier direct) et le type de fichier (patch progressif avec ou sans stockage pr
\hich\af0\dbch\af13\loch\f0 \hich\f0 emi\'e8\loch\f0 \hich\f0 re version, patch d\'e9\loch\f0 \hich\f0 gressif avec derni\'e8\loch\f0 re version).
\par
\par \hich\af0\dbch\af13\loch\f0 \hich\f0 Au d\'e9\loch\f0 but, on aura le type de fichier.
\par
\par {\listtext\pard\plain\s3 \b\f1\fs28\lang1036\langfe1036\langfenp1036\insrsid15493243 \hich\af1\dbch\af13\loch\f1 3.2.1.\tab}}\pard\plain \s3\ql \fi-1111\li1224\ri0\sb240\sa60\keepn\widctlpar
\jclisttab\tx1224\faauto\ls4\ilvl2\outlinelevel2\adjustright\rin0\lin1224\itap0 \b\fs28\lang1036\langfe1036\loch\af1\hich\af1\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af1\dbch\af13\loch\f1 Type de bloc dans le fichier DFS
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 Le fichier DFS est une suites de 4\~types de blocs
\~:
\par {\pntext\pard\plain\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \hich\af0\dbch\af13\loch\f0 -\tab}}\pard \ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls5\pnrnot0\pnindent360\pnsp120\pnhang {\pntxtb -}}
\faauto\ls5\adjustright\rin0\lin644\itap0 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 le bloc insertion d\hich\f0 \rquote \loch\f0 un nouveau fichier\~: il s\hich\f0 \rquote \loch\f0 agit du contenu d\hich\f0 \rquote \loch\f0 u
\hich\af0\dbch\af13\loch\f0 \hich\f0 n fichier (en g\'e9\loch\f0 \hich\f0 n\'e9\loch\f0 \hich\f0 ral compress\'e9\loch\f0 en deflate)
\par {\pntext\pard\plain\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \hich\af0\dbch\af13\loch\f0 -\tab}}\pard \ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls5\pnrnot0\pnindent360\pnsp120\pnhang {\pntxtb -}}
\faauto\ls5\adjustright\rin0\lin644\itap0 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 le bloc fichier sous forme de patch\~: il s\hich\f0 \rquote \loch\f0 agit d\hich\f0 \rquote \loch\f0 un patch pour transformer l\hich\f0 \rquote \loch\f0
ancienne version d\hich\f0 \rquote \loch\f0 un fichier en nouvelle version
\par {\pntext\pard\plain\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \hich\af0\dbch\af13\loch\f0 -\tab}}\pard \ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls5\pnrnot0\pnindent360\pnsp120\pnhang {\pntxtb -}}
\faauto\ls5\adjustright\rin0\lin644\itap0 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 un bloc r\'e9\loch\f0 pertoire\~: liste des fichiers d\hich\f0 \rquote \loch\f0 \hich\f0 une version avec les propri\'e9\loch\f0 \hich\f0 t\'e9\loch\f0 s
\par {\pntext\pard\plain\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \hich\af0\dbch\af13\loch\f0 -\tab}}\pard \ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls5\pnrnot0\pnindent360\pnsp120\pnhang {\pntxtb -}}
\faauto\ls5\adjustright\rin0\lin644\itap0 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 l\hich\af0\dbch\af13\loch\f0 \hich\f0 e bloc r\'e9\loch\f0 \hich\f0 pertoire final (\'e0\loch\f0 la fin)
\par }\pard \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 {\insrsid15493243
\par {\listtext\pard\plain\s4 \b\f1\fs25\lang1036\langfe1036\langfenp1036\insrsid15493243 \hich\af1\dbch\af13\loch\f1 3.2.1.1.\tab}}\pard\plain \s4\ql \fi-850\li1134\ri0\sb240\sa60\keepn\widctlpar
\jclisttab\tx1418\jclisttab\tx2880\faauto\ls4\ilvl3\outlinelevel3\adjustright\rin0\lin1134\itap0 \b\fs25\lang1036\langfe1036\loch\af1\hich\af1\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af1\dbch\af13\loch\f1 Liste de Tag
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243
\par \hich\af0\dbch\af13\loch\f0 \hich\f0 Les diff\'e9\loch\f0 rents blocs comprennent des listes de Tags, comprenant diverses informations. Chaque bloc liste de tags commence par une structure DFSTAGLISTHEADER, puis comprend une liste de DFSTAGHEADER
\hich\af0\dbch\af13\loch\f0 \hich\f0 suivi du contenu d\'e9\loch\f0 pendant du type de tag.
\par
\par }{\lang1033\langfe1036\langnp1033\insrsid15493243 \hich\af0\dbch\af13\loch\f0 dfStoreMethod contient soit DFSMETHOD_STORE soit DFSMETHOD_DEFLATE
\par
\par }\pard\plain \s20\ql \li284\ri0\keepn\widctlpar\brdrt\brdrs\brdrw10\brsp20 \brdrl\brdrs\brdrw10\brsp80 \brdrb\brdrs\brdrw10\brsp20 \brdrr\brdrs\brdrw10\brsp80 \faauto\adjustright\rin0\lin284\rtlgutter\itap0 \shading500\cbpat8
\fs20\lang1024\langfe1024\loch\af2\hich\af2\dbch\af13\cgrid\noproof\langnp1033\langfenp1036 {\insrsid15493243 \hich\af2\dbch\af13\loch\f2 #define DFSMETHOD_STORE (0)
\par \hich\af2\dbch\af13\loch\f2 #define DFSMETHOD_DEFLATE (2)
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\lang1033\langfe1036\langnp1033\insrsid15493243
\par }\pard\plain \s20\ql \li284\ri0\keepn\widctlpar\brdrt\brdrs\brdrw10\brsp20 \brdrl\brdrs\brdrw10\brsp80 \brdrb\brdrs\brdrw10\brsp20 \brdrr\brdrs\brdrw10\brsp80 \faauto\adjustright\rin0\lin284\rtlgutter\itap0 \shading500\cbpat8
\fs20\lang1024\langfe1024\loch\af2\hich\af2\dbch\af13\cgrid\noproof\langnp1033\langfenp1036 {\insrsid15493243 \hich\af2\dbch\af13\loch\f2 typedef struct
\par \{
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfStoreMethod;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfSizeCompressed;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfSizeUncompressed;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfCrc32Tags;
\par \}\hich\af2\dbch\af13\loch\f2 DFSTAGLISTHEADER;
\par
\par \hich\af2\dbch\af13\loch\f2 typedef struct
\par \{
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfTagNumber;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfTagSize;
\par \}\hich\af2\dbch\af13\loch\f2 DFSTAGHEADER;
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\lang1033\langfe1036\langnp1033\insrsid15493243
\par {\listtext\pard\plain\s4 \b\f1\fs25\lang1036\langfe1036\langfenp1036\insrsid15493243 \hich\af1\dbch\af13\loch\f1 3.2.1.2.\tab}}\pard\plain \s4\ql \fi-850\li1134\ri0\sb240\sa60\keepn\widctlpar
\jclisttab\tx1418\jclisttab\tx2880\faauto\ls4\ilvl3\outlinelevel3\adjustright\rin0\lin1134\itap0 \b\fs25\lang1036\langfe1036\loch\af1\hich\af1\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af1\dbch\af13\loch\f1 \hich\f1 Le bloc r\'e9
\loch\f1 pertoire final
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243
\par \hich\af0\dbch\af13\loch\f0 chaque bloc commence par une structure DFSLISTDIR\hich\af0\dbch\af13\loch\f0 HEAD\~:
\par }\pard\plain \s20\ql \li284\ri0\keepn\widctlpar\brdrt\brdrs\brdrw10\brsp20 \brdrl\brdrs\brdrw10\brsp80 \brdrb\brdrs\brdrw10\brsp20 \brdrr\brdrs\brdrw10\brsp80 \faauto\adjustright\rin0\lin284\rtlgutter\itap0 \shading500\cbpat8
\fs20\lang1024\langfe1024\loch\af2\hich\af2\dbch\af13\cgrid\noproof\langnp1033\langfenp1036 {\insrsid15493243 \hich\af2\dbch\af13\loch\f2 typedef struct
\par \{
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfTypeDir;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfOffsetDirIntro;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfOffsetDir;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfBlockDirSize;
\par \}\hich\af2\dbch\af13\loch\f2 DFSDIRINFO;
\par
\par \hich\af2\dbch\af13\loch\f2 typedef struct
\par \{
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfBlocType;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfNbDir;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfTypeDfsFile;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfReserved;
\par \hich\af2\dbch\af13\loch\f2 DFSDIRINFO dfsDirInfo[0];
\par \}\hich\af2\dbch\af13\loch\f2 DFSLISTDIRHEAD\~;
\par
\par \hich\af2\dbch\af13\loch\f2 typedef struct
\par \{
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfBlockCrc32;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfBlockSize;
\par }{\lang1024\langfe1024\langnp1036\insrsid15493243 \}\hich\af2\dbch\af13\loch\f2 DFSLISTDIREND;
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243
\par \hich\af0\dbch\af13\loch\f0 La structure DFSLISTDIRHEAD est suivie d\hich\f0 \rquote \loch\f0 un nombre de DFSDIRINFO correspondant au param\loch\af0\dbch\af13\hich\f0 \'e8\loch\f0 tre dfNbDir, d\hich\f0 \rquote \loch\f0 \hich\f0
une structure DFSTAGLIST et enfin de la structure DFSLISTDIREND, o\'f9\loch\f0 dfBlockSize est le nombre total d\hich\f0 \rquote \loch\f0 \hich\f0 octet du bloc r\'e9\loch\f0 \hich\f0 pertoire final, DFSLISTDIREND except\'e9\loch\f0 \hich\f0
e. (ce qui permet de trouver le d\'e9\loch\f0 \hich\f0 but de la structure \'e0\loch\f0 partir de sa fin).
\par
\par {\listtext\pard\plain\s4 \b\f1\fs25\lang1036\langfe1036\langfenp1036\insrsid15493243 \hich\af1\dbch\af13\loch\f1 3.2.1.3.\tab}}\pard\plain \s4\ql \fi-850\li1134\ri0\sb240\sa60\keepn\widctlpar
\jclisttab\tx1418\jclisttab\tx2880\faauto\ls4\ilvl3\outlinelevel3\adjustright\rin0\lin1134\itap0 \b\fs25\lang1036\langfe1036\loch\af1\hich\af1\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af1\dbch\af13\loch\f1 Insertion d\hich\f1
\rquote \loch\f1 un nouveau fichier et fichier sous forme de patch
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243
\par
\par }\pard\plain \s20\ql \li284\ri0\keepn\widctlpar\brdrt\brdrs\brdrw10\brsp20 \brdrl\brdrs\brdrw10\brsp80 \brdrb\brdrs\brdrw10\brsp20 \brdrr\brdrs\brdrw10\brsp80 \faauto\adjustright\rin0\lin284\rtlgutter\itap0 \shading500\cbpat8
\fs20\lang1024\langfe1024\loch\af2\hich\af2\dbch\af13\cgrid\noproof\langnp1033\langfenp1036 {\insrsid15493243 \hich\af2\dbch\af13\loch\f2 typedef struct
\par \{
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfBlocType;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfsFileHeaderSize;
\par
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfContentStoreMethod;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfContentEncodedSize;
\par
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfContentUncompressedSi\hich\af2\dbch\af13\loch\f2 ze;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfTagListSize;
\par \}
\par \hich\af2\dbch\af13\loch\f2 DFSFILEHEADER;
\par
\par
\par \hich\af2\dbch\af13\loch\f2 typedef struct
\par \{
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfFileContentUncompressedSize;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfFileContentCompressedCrc32;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfNumberCrc32Info;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfReserved;
\par \}
\par \hich\af2\dbch\af13\loch\f2 DFSPOSTFILEINFO;
\par
\par \hich\af2\dbch\af13\loch\f2 typedef struct
\par \{
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfTypeCrcInfo;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfBeginPos;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfEndPos;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfCrcValue;
\par \}\hich\af2\dbch\af13\loch\f2 DFSCRCINFO; /* after the file content */
\par
\par
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\lang1033\langfe1036\langnp1033\insrsid15493243
\par
\par }{\insrsid15493243 \hich\af0\dbch\af13\loch\f0 L\hich\f0 \rquote \loch\f0 insertion d\hich\f0 \rquote \loch\f0 \hich\f0 un nouveau fichier est une forme simplifi\'e9\loch\f0 e du fichier sous forme de patch.
\par
\par \hich\af0\dbch\af13\loch\f0 Elle d\loch\af0\dbch\af13\hich\f0 \'e9\loch\f0 bute par un bloc DFSFILEHEADER, contenant les infomations\~:
\par {\pntext\pard\plain\s21 \f10\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \loch\af10\dbch\af13\hich\f10 \'a7\tab}}\pard\plain \s21\ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls6\pnrnot0
\pnf10\pnstart1\pnindent360\pnsp120\pnhang {\pntxtb \'a7}}\faauto\ls6\adjustright\rin0\lin644\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0
dfContentStoreMethod : m\'e9\loch\f0 thode de stockage du fichier (DFSMETHOD_PATCH, DFSMETHOD_STORE ou DFSMETHOD_DEFLATE)
\par {\pntext\pard\plain\s21 \f10\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \loch\af10\dbch\af13\hich\f10 \'a7\tab}}\pard \s21\ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls6\pnrnot0
\pnf10\pnstart1\pnindent360\pnsp120\pnhang {\pntxtb \'a7}}\faauto\ls6\adjustright\rin0\lin644\itap0 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 dfContentSize\~\hich\f0 : taille non compress\'e9\loch\f0 \hich\f0 du bloc contenu du fichier (peut-\'ea
\loch\f0 tre VALU\hich\af0\dbch\af13\loch\f0 E_UNKNOWN pour un flux)
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243
\par \hich\af0\dbch\af13\loch\f0 \hich\f0 Un bloc DFSTAGLISTHEADER suit, avec les tags d\'e9\loch\f0 crivant le fichier. Les Tags suivant sont obligatoires\~:
\par \hich\af0\dbch\af13\loch\f0 -\~DFSTAG_FILENAME\~\hich\f0 : nom du fichier en unicode sans le z\'e9\loch\f0 ro terminal.
\par \hich\af0\dbch\af13\loch\f0 -\~DFSTAG_DATE\~: Date du fichier au format DFSINFODATE
\par \hich\af0\dbch\af13\loch\f0 -\~\hich\af0\dbch\af13\loch\f0 DFSTAG_BASEPATCH\~\hich\f0 : Uniquement pour les fichiers stock\'e9\loch\f0 en patch\~\hich\f0 : liste des bases d'applications du patch (num\'e9\loch\f0 \hich\f0 ro du r\'e9\loch\f0 \hich\f0
pertoire, num\'e9\loch\f0 ro du fichier, plage)
\par
\par \hich\af0\dbch\af13\loch\f0 \hich\f0 Ensuite, le contenu compress\'e9\loch\f0 \hich\f0 suit. D'\'e9\loch\f0 \hich\f0 ventuel caract\'e8\loch\f0 res null permettent de recaler l'adresse coura\hich\af0\dbch\af13\loch\f0 \hich\f0 nte \'e0\loch\f0 \hich\f0
un multiple de dfsBlockAlignement (dans le param\'e9\loch\f0 \hich\f0 trage du fichier DFS). Puis un bloc DFSPOSTFILEINFO suit, avec enfin un nombre de bloc DFSCRCINFO correspondant \'e0\loch\f0 la valeur de dfNumberCrc32Info.
\par
\par
\par \hich\af0\dbch\af13\loch\f0 Le tags BASEPATCH commence par la structure
\par
\par }\pard\plain \s20\ql \li284\ri0\keepn\widctlpar\brdrt\brdrs\brdrw10\brsp20 \brdrl\brdrs\brdrw10\brsp80 \brdrb\brdrs\brdrw10\brsp20 \brdrr\brdrs\brdrw10\brsp80 \faauto\adjustright\rin0\lin284\rtlgutter\itap0 \shading500\cbpat8
\fs20\lang1024\langfe1024\loch\af2\hich\af2\dbch\af13\cgrid\noproof\langnp1033\langfenp1036 {\lang1024\langfe1024\langnp1036\insrsid15493243
\par }{\insrsid15493243 \hich\af2\dbch\af13\loch\f2 typede\hich\af2\dbch\af13\loch\f2 f struct
\par \{
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfBasePatchNumber
\par \}\hich\af2\dbch\af13\loch\f2 DFSBASEPATCHLISTHEADER;
\par
\par
\par \hich\af2\dbch\af13\loch\f2 typedef struct
\par \{
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfDirectoryNumber;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfFileNumber;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfBeginPos;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfEndPos;
\par \}\hich\af2\dbch\af13\loch\f2 DFSBASEPATCHLISTITEM;
\par
\par
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\lang1033\langfe1036\langnp1033\insrsid15493243
\par
\par
\par {\listtext\pard\plain\s4 \b\f1\fs25\lang1036\langfe1036\langfenp1036\insrsid15493243 \hich\af1\dbch\af13\loch\f1 3.2.1.4.\tab}}\pard\plain \s4\ql \fi-850\li1134\ri0\sb240\sa60\keepn\widctlpar
\jclisttab\tx1418\jclisttab\tx2880\faauto\ls4\ilvl3\outlinelevel3\adjustright\rin0\lin1134\itap0 \b\fs25\lang1036\langfe1036\loch\af1\hich\af1\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af1\dbch\af13\loch\f1 \hich\f1 Le bloc r\'e9
\loch\f1 pert\hich\af1\dbch\af13\loch\f1 oire
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 Avant tous les fichiers du r\'e9\loch\f0
\hich\f0 pertoire, un bloc \'ab\~\loch\f0 \hich\f0 mini-r\'e9\loch\f0 pertoire\~\hich\f0 \'bb\loch\f0 \hich\f0 qui sert de r\'e9\loch\f0 \hich\f0 sum\'e9\loch\f0 \hich\f0 , est constitu\'e9\loch\f0 d\hich\f0 \rquote \loch\f0
une structure DFSDIRINTROHEADER suivit d\hich\f0 \rquote \loch\f0 un bloc de tag
\par
\par \hich\af0\dbch\af13\loch\f0 \hich\f0 Le r\'e9\loch\f0 \hich\f0 pertoire vient apr\'e8\loch\f0 \hich\f0 s l'ensemble des fichiers constituant ce r\'e9\loch\f0 pertoire.
\par
\par
\par }\pard\plain \s20\ql \li284\ri0\keepn\widctlpar\brdrt\brdrs\brdrw10\brsp20 \brdrl\brdrs\brdrw10\brsp80 \brdrb\brdrs\brdrw10\brsp20 \brdrr\brdrs\brdrw10\brsp80 \faauto\adjustright\rin0\lin284\rtlgutter\itap0 \shading500\cbpat8
\fs20\lang1024\langfe1024\loch\af2\hich\af2\dbch\af13\cgrid\noproof\langnp1033\langfenp1036 {\lang1024\langfe1024\langnp1036\insrsid15493243\charrsid15493243 \hich\af2\dbch\af13\loch\f2 typedef struct
\par \{
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfBlocType;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfTypeDir;
\par
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfNumberOfnDir;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfReserved;
\par \}\hich\af2\dbch\af13\loch\f2 DFSDIRINTROHEADER;
\par
\par }\pard \s20\ql \li284\ri0\keepn\widctlpar\brdrt\brdrs\brdrw10\brsp20 \brdrl\brdrs\brdrw10\brsp80 \brdrb\brdrs\brdrw10\brsp20 \brdrr\brdrs\brdrw10\brsp80 \faauto\adjustright\rin0\lin284\rtlgutter\itap0\pararsid15493243 \shading500\cbpat8 {
\lang1024\langfe1024\langnp1036\insrsid15493243\charrsid15493243 \hich\af2\dbch\af13\loch\f2 typedef struct
\par \{
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfBlocType;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfTypeDir;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfStoreMethod;
\par
\par \hich\af2\dbch\af13\loch\f2 df\hich\af2\dbch\af13\loch\f2 uLongIntel dfSizeDirTag;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfSizeFilesTag;
\par
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfSizeCompressed;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfCrc32Uncompressed;
\par
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfNumberFilesInDir;
\par \hich\af2\dbch\af13\loch\f2 dfuLongIntel dfNumberOfnDir;
\par \}\hich\af2\dbch\af13\loch\f2 DFSDIRHEADER;
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243\charrsid15493243
\par
\par }{\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 Ce bloc est suivis du r\'e9\loch\f0 \hich\f0 pertoire lui m\'ea\hich\af0\dbch\af13\loch\f0 \hich\f0 me, compress\'e9\loch\f0 suivant les indications de dfStoreMethod.
\par
\par \hich\af0\dbch\af13\loch\f0 \hich\f0 dfTypeDir d\'e9\loch\f0 \hich\f0 crit le type de r\'e9\loch\f0 pertoire (DFS_TYPEDIR_ONLYLIST, DFS_TYPEDIR_INSERTFILE ou DFS_TYPEDIR_PATCH).
\par \hich\af0\dbch\af13\loch\f0 \hich\f0 dfNumberOfnDir contient le num\'e9\loch\f0 \hich\f0 ro du r\'e9\loch\f0 pertoire courant.
\par \hich\af0\dbch\af13\loch\f0 \hich\f0 Le r\'e9\loch\f0 pertoire commence par un bloc\hich\af0\dbch\af13\loch\f0 \hich\f0 DFSTAGLISTHEADER, contenant les tags relatif au r\'e9\loch\f0 pertoire globalement.
\par \hich\af0\dbch\af13\loch\f0 \hich\f0 Puis il contient autant de bloc DFSTAGLISTHEADER suivit des tags relatifs \'e0\loch\f0 \hich\f0 chaque fichiers. Ces Tags sont identique \'e0\loch\f0 \hich\f0 ceux d\'e9\loch\f0
crivant chaque fichier dans les blocs insertion d\hich\f0 \rquote \loch\f0 un nouv\hich\af0\dbch\af13\loch\f0 eau fichier et fichier sous forme de patch, avec en plus\~:
\par {\pntext\pard\plain\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \hich\af0\dbch\af13\loch\f0 -\tab}}\pard \ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls5\pnrnot0\pnindent360\pnsp120\pnhang {\pntxtb -}}
\faauto\ls5\adjustright\rin0\lin644\itap0 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 DFSTAG_FILEPOS\~: localisation du fichier, en octets (sur 4 ou 8 octets).
\par {\pntext\pard\plain\fs20\lang1036\langfe1036\langfenp1036\insrsid15493243 \hich\af0\dbch\af13\loch\f0 -\tab}}\pard \ql \fi-360\li644\ri0\widctlpar\jclisttab\tx644{\*\pn \pnlvlblt\ilvl0\ls5\pnrnot0\pnindent360\pnsp120\pnhang {\pntxtb -}}
\faauto\ls5\adjustright\rin0\lin644\itap0 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 DFSTAG_CRCINFO\~\hich\f0 : tableau de structures DFSCRCINFO (on conna\'ee\loch\f0 t le nombre de CRC avec la taille du TAG).
\par }\pard \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 {\insrsid15493243
\par
\par {\listtext\pard\plain\s2 \b\i\f1\fs32\lang1036\langfe1036\langfenp1036\insrsid15493243 \hich\af1\dbch\af13\loch\f1 3.3.\tab}}\pard\plain \s2\ql \fi-679\li792\ri0\sb240\sa60\keepn\widctlpar
\jclisttab\tx792\faauto\ls4\ilvl1\outlinelevel1\adjustright\rin0\lin792\itap0 \b\i\fs32\lang1036\langfe1036\loch\af1\hich\af1\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af1\dbch\af13\loch\f1 Fonction\hich\af1\dbch\af13\loch\f1
interne de gestion du fichier DFS
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243
\par \hich\af0\dbch\af13\loch\f0 Note\~: ces fonctions sont en cours d\hich\f0 \rquote \loch\f0 \hich\f0 impl\'e9\loch\f0 mentation dans DfsIntf.c
\par
\par }\pard\plain \s18\ql \fi-2693\li2977\ri0\widctlpar\faauto\adjustright\rin0\lin2977\itap0 \b\fs22\lang1036\langfe1036\loch\af2\hich\af2\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af2\dbch\af13\loch\f2
dfuLong DfsOpen(DFSFILEINFOPARAM DfsFileParam, DFSFILE* DfsFile);
\par }\pard\plain \s16\ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \b\fs22\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 Param\'e8\loch\f0 tres\~:
\par }\pard\plain \s17\ql \fi-1985\li2552\ri0\widctlpar\faauto\adjustright\rin0\lin2552\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 DfsFileParam\~:\tab \hich\f0 Param
\'e8\loch\f0 \hich\f0 tre d\'e9\loch\f0 \hich\f0 crivant de fichier \'e0\loch\f0 ouvrir (nom, ouverture en\hich\af0\dbch\af13\loch\f0 \hich\f0 \'e9\loch\f0 \hich\f0 criture ou lecture\'85\loch\f0 )
\par \hich\af0\dbch\af13\loch\f0 DfsFile\~:\tab \hich\f0 Pointeur vers un Handle du fichier DFS, qui sera initialis\'e9\loch\f0 \hich\f0 en cas de succ\'e8\loch\f0 s
\par }\pard\plain \s16\ql \li284\ri0\sb120\widctlpar\faauto\adjustright\rin0\lin284\itap0 \b\fs22\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 Valeur de retour : }{
\b0\insrsid15493243 \hich\af0\dbch\af13\loch\f0 0
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243
\par
\par }\pard\plain \s18\ql \fi-2693\li2977\ri0\widctlpar\faauto\adjustright\rin0\lin2977\itap0 \b\fs22\lang1036\langfe1036\loch\af2\hich\af2\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af2\dbch\af13\loch\f2
dfuLong DfsWCloseFlushCurrentDir(DFSFILE DfsFile);
\par }\pard\plain \s16\ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \b\fs22\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 Param\'e8\loch\f0 tres\~:
\par }\pard\plain \s17\ql \fi-1985\li2552\ri0\widctlpar\faauto\adjustright\rin0\lin2552\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 DfsFile\~:\tab Handle du fichier DFS
\par }\pard\plain \s16\ql \li284\ri0\sb120\widctlpar\faauto\adjustright\rin0\lin284\itap0 \b\fs22\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 Valeur de retour : }{
\b0\insrsid15493243 \hich\af0\dbch\af13\loch\f0 0
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243
\par \hich\af0\dbch\af13\loch\f0 \hich\f0 Lors de la g\'e9\loch\f0 \hich\f0 n\'e9\loch\f0 ration d\hich\f0 \rquote \loch\f0 \hich\f0 un fichier de diff\'e9\loch\f0 \hich\f0 rence, consid\'e8\loch\f0 \hich\f0 re que le r\'e9\loch\f0 \hich\f0
pertoire courrant est termin\'e9\loch\f0 et l\hich\f0 \rquote \'e9\loch\f0 crit
\par
\par }\pard\plain \s18\ql \fi-2693\li2977\ri0\widctlpar\faauto\adjustright\rin0\lin2977\itap0 \b\fs22\lang1036\langfe1036\loch\af2\hich\af2\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af2\dbch\af13\loch\f2
dfuLong DfsWCreateNewDir(DFSFILE DfsFile, dfuLong dfTypeDir);
\par }\pard\plain \s16\ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \b\fs22\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 \hich\f0 Param\'e8\loch\f0 tres\~:
\par }\pard\plain \s17\ql \fi-1985\li2552\ri0\widctlpar\faauto\adjustright\rin0\lin2552\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 DfsFile\~:\tab Handle du fichier DFS
\par }\pard\plain \s16\ql \li284\ri0\sb120\widctlpar\faauto\adjustright\rin0\lin284\itap0 \b\fs22\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af0\dbch\af13\loch\f0 Valeur de retour : }{
\b0\insrsid15493243 \hich\af0\dbch\af13\loch\f0 0
\par }\pard\plain \ql \li284\ri0\widctlpar\faauto\adjustright\rin0\lin284\itap0 \fs20\lang1036\langfe1036\loch\af0\hich\af0\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243
\par \hich\af0\dbch\af13\loch\f0 \hich\f0 Pr\'e9\loch\f0 \hich\f0 pare la cr\'e9\loch\f0 at\hich\af0\dbch\af13\loch\f0 ion d\hich\f0 \rquote \loch\f0 \hich\f0 un nouveau r\'e9\loch\f0 pertoire.
\par
\par }\pard\plain \s18\ql \fi-2693\li2977\ri0\widctlpar\faauto\adjustright\rin0\lin2977\itap0 \b\fs22\lang1036\langfe1036\loch\af2\hich\af2\dbch\af13\cgrid\langnp1036\langfenp1036 {\insrsid15493243 \hich\af2\dbch\af13\loch\f2
dfuLong DfsWCreateNewFileInDir(DFSFILE DfsFile, dfuLong dfContentStoreMethod, dfuLong dfSize);