summaryrefslogtreecommitdiff
path: root/gnu/usr.bin/cvs/doc/cvsclient.ps
blob: d6b5636944a64fdf15fbc2b8e6c4e0cbf3d03cd7 (plain)
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
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
%!PS-Adobe-2.0
%%Creator: dvipsk 5.58f Copyright 1986, 1994 Radical Eye Software
%%Title: cvsclient.dvi
%%Pages: 23
%%PageOrder: Ascend
%%BoundingBox: 0 0 596 842
%%DocumentPaperSizes: a4
%%EndComments
%DVIPSCommandLine: dvips cvsclient.dvi -o cvsclient.ps
%DVIPSParameters: dpi=600, compressed, comments removed
%DVIPSSource:  TeX output 1997.04.18:1220
%%BeginProcSet: texc.pro
/TeXDict 250 dict def TeXDict begin /N{def}def /B{bind def}N /S{exch}N
/X{S N}B /TR{translate}N /isls false N /vsize 11 72 mul N /hsize 8.5 72
mul N /landplus90{false}def /@rigin{isls{[0 landplus90{1 -1}{-1 1}
ifelse 0 0 0]concat}if 72 Resolution div 72 VResolution div neg scale
isls{landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div
hsize mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul
TR[matrix currentmatrix{dup dup round sub abs 0.00001 lt{round}if}
forall round exch round exch]setmatrix}N /@landscape{/isls true N}B
/@manualfeed{statusdict /manualfeed true put}B /@copies{/#copies X}B
/FMat[1 0 0 -1 0 0]N /FBB[0 0 0 0]N /nn 0 N /IE 0 N /ctr 0 N /df-tail{
/nn 8 dict N nn begin /FontType 3 N /FontMatrix fntrx N /FontBBox FBB N
string /base X array /BitMaps X /BuildChar{CharBuilder}N /Encoding IE N
end dup{/foo setfont}2 array copy cvx N load 0 nn put /ctr 0 N[}B /df{
/sf 1 N /fntrx FMat N df-tail}B /dfs{div /sf X /fntrx[sf 0 0 sf neg 0 0]
N df-tail}B /E{pop nn dup definefont setfont}B /ch-width{ch-data dup
length 5 sub get}B /ch-height{ch-data dup length 4 sub get}B /ch-xoff{
128 ch-data dup length 3 sub get sub}B /ch-yoff{ch-data dup length 2 sub
get 127 sub}B /ch-dx{ch-data dup length 1 sub get}B /ch-image{ch-data
dup type /stringtype ne{ctr get /ctr ctr 1 add N}if}B /id 0 N /rw 0 N
/rc 0 N /gp 0 N /cp 0 N /G 0 N /sf 0 N /CharBuilder{save 3 1 roll S dup
/base get 2 index get S /BitMaps get S get /ch-data X pop /ctr 0 N ch-dx
0 ch-xoff ch-yoff ch-height sub ch-xoff ch-width add ch-yoff
setcachedevice ch-width ch-height true[1 0 0 -1 -.1 ch-xoff sub ch-yoff
.1 sub]/id ch-image N /rw ch-width 7 add 8 idiv string N /rc 0 N /gp 0 N
/cp 0 N{rc 0 ne{rc 1 sub /rc X rw}{G}ifelse}imagemask restore}B /G{{id
gp get /gp gp 1 add N dup 18 mod S 18 idiv pl S get exec}loop}B /adv{cp
add /cp X}B /chg{rw cp id gp 4 index getinterval putinterval dup gp add
/gp X adv}B /nd{/cp 0 N rw exit}B /lsh{rw cp 2 copy get dup 0 eq{pop 1}{
dup 255 eq{pop 254}{dup dup add 255 and S 1 and or}ifelse}ifelse put 1
adv}B /rsh{rw cp 2 copy get dup 0 eq{pop 128}{dup 255 eq{pop 127}{dup 2
idiv S 128 and or}ifelse}ifelse put 1 adv}B /clr{rw cp 2 index string
putinterval adv}B /set{rw cp fillstr 0 4 index getinterval putinterval
adv}B /fillstr 18 string 0 1 17{2 copy 255 put pop}for N /pl[{adv 1 chg}
{adv 1 chg nd}{1 add chg}{1 add chg nd}{adv lsh}{adv lsh nd}{adv rsh}{
adv rsh nd}{1 add adv}{/rc X nd}{1 add set}{1 add clr}{adv 2 chg}{adv 2
chg nd}{pop nd}]dup{bind pop}forall N /D{/cc X dup type /stringtype ne{]
}if nn /base get cc ctr put nn /BitMaps get S ctr S sf 1 ne{dup dup
length 1 sub dup 2 index S get sf div put}if put /ctr ctr 1 add N}B /I{
cc 1 add D}B /bop{userdict /bop-hook known{bop-hook}if /SI save N @rigin
0 0 moveto /V matrix currentmatrix dup 1 get dup mul exch 0 get dup mul
add .99 lt{/QV}{/RV}ifelse load def pop pop}N /eop{SI restore userdict
/eop-hook known{eop-hook}if showpage}N /@start{userdict /start-hook
known{start-hook}if pop /VResolution X /Resolution X 1000 div /DVImag X
/IE 256 array N 0 1 255{IE S 1 string dup 0 3 index put cvn put}for
65781.76 div /vsize X 65781.76 div /hsize X}N /p{show}N /RMat[1 0 0 -1 0
0]N /BDot 260 string N /rulex 0 N /ruley 0 N /v{/ruley X /rulex X V}B /V
{}B /RV statusdict begin /product where{pop product dup length 7 ge{0 7
getinterval dup(Display)eq exch 0 4 getinterval(NeXT)eq or}{pop false}
ifelse}{false}ifelse end{{gsave TR -.1 .1 TR 1 1 scale rulex ruley false
RMat{BDot}imagemask grestore}}{{gsave TR -.1 .1 TR rulex ruley scale 1 1
false RMat{BDot}imagemask grestore}}ifelse B /QV{gsave newpath transform
round exch round exch itransform moveto rulex 0 rlineto 0 ruley neg
rlineto rulex neg 0 rlineto fill grestore}B /a{moveto}B /delta 0 N /tail
{dup /delta X 0 rmoveto}B /M{S p delta add tail}B /b{S p tail}B /c{-4 M}
B /d{-3 M}B /e{-2 M}B /f{-1 M}B /g{0 M}B /h{1 M}B /i{2 M}B /j{3 M}B /k{
4 M}B /w{0 rmoveto}B /l{p -4 w}B /m{p -3 w}B /n{p -2 w}B /o{p -1 w}B /q{
p 1 w}B /r{p 2 w}B /s{p 3 w}B /t{p 4 w}B /x{0 S rmoveto}B /y{3 2 roll p
a}B /bos{/SS save N}B /eos{SS restore}B end
%%EndProcSet
TeXDict begin 39158280 55380996 1000 600 600 (cvsclient.dvi)
@start /Fa 41 121 df<EEFFFC031FEBFF804AB612E0020781021F9038C00FF8913A7F
FE0003FCDAFFF0EB00FE4949EB03FF4901805B4990C7487F49485CA2495A4D7F013F6F5B
5CA37190C7FC715AEF01F894C9FCA90403B512C0BAFCA526003FFCC7120783B3B3A6003F
B5D8FC03B612C0A542547DD34B>12 D<EA07F0487E487E487E487EB51280A76C13006C5A
6C5A6C5A6C5A1111769025>46 D<913803FFC0023F13FC91B6FC010315C0010F018113F0
903A1FFC003FF849486D7E49486D7E49486D7E48496D138048496D13C0A24817E04890C8
13F0A34817F8A24817FC49157FA3007F17FEA600FF17FFB3A5007F17FEA6003F17FCA26D
15FFA26C17F8A36C17F0A26C6D4913E0A26C6D4913C06C17806E5B6C6D4913006D6C495A
D91FFCEB3FF8903A0FFF81FFF06D90B55A01011580D9003F01FCC7FC020313C0384F7BCD
43>48 D<157815FC14031407141F14FF130F0007B5FCB6FCA2147F13F0EAF800C7FCB3B3
B3A6007FB712FEA52F4E76CD43>I<EC3FFE0103B512E0010F14FC013F14FF90B712C048
D9C07F7F2703FE000F13F8D807F801037FD80FE06D7F48486D7F48488001F01680486C6E
13C07F486C6E13E07FA27013F0A56C5AA26C5AEA0FF0EA03C0C914E05EA218C05E1880A2
4C13005F4C5A4B5B5F4B5B5F4B5B4B90C7FC4B5A5E4B5AED7FE04B5A4A5B4A48C8FC4A5A
5D4A48EB01F04A5AEC3F804AC7FC02FEEC03E0495A495A495A495AD91F80140749C8FC01
3E150F017FB7FC90B812C05A5A5A5A5A5A5AB9FC1880A4344E79CD43>I<91380FFFC091
B512FC0107ECFF80011F15E090263FF8077F9026FF800113FC4848C76C7ED803F86E7E49
1680D807FC8048B416C080486D15E0A4805CA36C17C06C5B6C90C75AD801FC1680C9FC4C
13005FA24C5A4B5B4B5B4B13C04B5BDBFFFEC7FC91B512F816E016FCEEFF80DA000713E0
030113F89238007FFE707E7013807013C018E07013F0A218F8A27013FCA218FEA2EA03E0
EA0FF8487E487E487EB57EA318FCA25E18F891C7FC6C17F0495C6C4816E001F04A13C06C
484A1380D80FF84A13006CB44A5A6CD9F0075BC690B612F06D5D011F1580010302FCC7FC
D9001F1380374F7ACD43>I<177C17FEA2160116031607160FA2161F163F167FA216FF5D
5DA25D5DED1FBFED3F3F153E157C15FCEC01F815F0EC03E01407EC0FC01580EC1F005C14
7E147C5C1301495A495A5C495A131F49C7FC133E5B13FC485A5B485A1207485A485A90C8
FC123E127E5ABA12C0A5C96C48C7FCAF020FB712C0A53A4F7CCE43>I<D80380150ED807
E0157E01FEEC03FED9FFF0137F91B65A5F5F5F5F5F94C7FC5E5E16F016C093C8FC15F801
E190C9FC01E0CAFCABEC0FFF027F13F001E3B512FE01E76E7E9026FFF8077FDAC0017F49
C713F8496E7E49143F4981496E7E6C481680C9FC18C08218E0A418F0A3EA0FE0487E487E
487E487EA418E0A35B6C484A13C05B491680003EC85A003F17006C6C4A5A6D5D6C6C4A5A
D807F8495BD803FE01075B2701FFC03F5B6C90B65A013F4AC7FC6D14F8010314C0902600
7FF8C8FC344F79CD43>I<ED0FFF92B512E0020780021F14FC91397FFE03FE903A01FFF0
007F4901C0EB3F804990C7121F4948EC7FC0494814FF49484913E049485B01FF5C485BA2
485B5AA2486F13C04A6D1380486F1300177E94C7FC5AA291CAFC5AA21508913801FFF802
0713FFB54814C04A14F04AC66C7E023C6D7E4A6D7E4A6D7E7013804A15C0A24A15E07013
F05C18F8A491C714FCA37EA67EA46C17F880A27E18F06C5D18E06C6D15C07E6E4913806C
6D15006D6C495A6D6CEB7FFC6DB448485A6D90B55A010315C0010092C7FC023F13FC0207
13C0364F7ACD43>I<121F7F7FEBFF8091B81280A45A1900606060A2606060485F0180C8
6CC7FC007EC95A4C5A007C4B5A5F4C5A160F4C5A484B5A4C5A94C8FC16FEC812014B5A5E
4B5A150F4B5AA24B5AA24B5A15FFA24A90C9FCA25C5D1407A2140FA25D141FA2143FA414
7F5DA314FFA55BAC6D5BA2EC3FC06E5A395279D043>I<913807FFC0027F13FC0103B67E
010F15E090261FFC0113F8903A3FE0003FFCD97F80EB0FFE49C76C7E48488048486E1380
000717C04980120F18E0177FA2121F7FA27F7F6E14FF02E015C014F802FE4913806C7FDB
C00313009238F007FE6C02F85B9238FE1FF86C9138FFBFF06CEDFFE017806C4BC7FC6D80
6D81010F15E06D81010115FC010781011F81491680EBFFE748018115C048D9007F14E048
48011F14F048487F48481303030014F8484880161F4848020713FC1601824848157F173F
A2171FA2170FA218F8A27F007F17F06D151FA26C6CED3FE0001F17C06D157F6C6CEDFF80
6C6C6C010313006C01E0EB0FFE6C01FCEBFFFC6C6CB612F06D5D010F1580010102FCC7FC
D9000F13C0364F7ACD43>I<91380FFF8091B512F8010314FE010F6E7E4901037F90267F
F8007F4948EB3FF048496D7E484980486F7E484980824817805A91C714C05A7013E0A218
F0B5FCA318F8A618FCA46C5DA37EA25E6C7F6C5DA26C5D6C7F6C6D137B6C6D13F390387F
F803011FB512E36D14C30103028313F89039007FFE03EC00401500A218F05EA3D801F816
E0487E486C16C0487E486D491380A218005E5F4C5A91C7FC6C484A5A494A5A49495B6C48
495BD803FC010F5B9027FF807FFEC7FC6C90B55A6C6C14F06D14C0010F49C8FC010013F0
364F7ACD43>I<932601FFFCEC01C0047FD9FFC013030307B600F81307033F03FE131F92
B8EA803F0203DAE003EBC07F020F01FCC7383FF0FF023F01E0EC0FF94A01800203B5FC49
4848C9FC4901F8824949824949824949824949824990CA7E494883A2484983485B1B7F48
5B481A3FA24849181FA3485B1B0FA25AA298C7FC5CA2B5FCAE7EA280A2F307C07EA36C7F
A21B0F6C6D1980A26C1A1F6C7F1C006C6D606C6D187EA26D6C606D6D4C5A6D6D16036D6D
4C5A6D6D4C5A6D01FC4C5A6D6DEE7F806D6C6C6C4BC7FC6E01E0EC07FE020F01FEEC1FF8
0203903AFFE001FFF0020091B612C0033F93C8FC030715FCDB007F14E0040101FCC9FC52
5479D261>67 D<BC1280A5D8000701F8C7000114C0F0001F19071901851A7F1A3F1A1FA2
F20FE0A21A07A31A03A318F81BF01A01A497C7FC1701A317031707170F177F92B6FCA592
38F8007F170F170717031701A317001B3EA31B7CA395C8FCA21BFCA21BF8A21A01A31A03
1BF01A071A0FA21A1F1A3FF27FE0F101FF1907191F0603B5FCBCFCA21BC0A34F517CD058
>69 D<BB12FEA5D8000701F8C700077FF0007F191F190785858586861B80A21A1FA31A0F
A41BC006F81307A497C7FCA31701A317031707170F177F92B6FCA59238F8007F170F1707
17031701A31700A795C9FCB3B812F8A54A517CD055>I<B812F8A5D8000701F8CAFCB3B3
A91A7CA41AFC1AF8A51901A31903A219071AF0190FA2191F193F197F19FF180360183F4D
B5FCBB12E0A546527CD151>76 D<B600FC073FB512FE6F61A26F96B6FCA2D80007F5C000
70EF01EFA202EF6DEF03CFA202E76DEF078FA202E36DEF0F0FA202E16D171EA302E06D17
3CA26F6C1778A26F6C17F0A26F6DED01E0A26F6DED03C0A36F6DED0780A26F6DED0F00A2
6F6D151EA26F6D5DA3706C5DA2706C5DA2706D495AA2706D495AA2706D495AA3706D49C7
FCA2706D131EA2706D5BA2716C5BA3716C5BA271EB81E0A271EBC3C0A271EBE780A27101
FFC8FCA3715BA2715BA2725AA2725AA2D93FFC6F5AB74DB712FEA2725AA2725A77527CD1
80>I<93380FFFC00303B6FC031F15E092B712FC0203D9FC0013FF020F01C0010F13C002
3F90C7000313F0DA7FFC02007F494848ED7FFE4901E0ED1FFF49496F7F49496F7F4990C9
6C7F49854948707F4948707FA24849717E48864A83481B804A83481BC0A2481BE04A83A2
481BF0A348497113F8A5B51AFCAF6C1BF86E5FA46C1BF0A26E5F6C1BE0A36C6D4D13C0A2
6C6D4D1380A26C1B006C6D4D5A6E5E6C626D6C4C5B6D6D4B5B6D6D4B5B6D6D4B5B6D6D4B
5B6D6D4B90C7FC6D6D4B5A6D01FF02035B023F01E0011F13F0020F01FC90B512C0020390
B7C8FC020016FC031F15E0030392C9FCDB001F13E0565479D265>79
D<B912F0F0FF8019F819FF1AC0D8000701F0C714F0060F7F060113FE727F737F737F8573
7F87A2737FA387A863A2616363A24F5B4F5B4F90C8FC4F5A06035B060F13F095B512C092
B8C9FC19F819E019F89226F0000313FE9439007FFF80727F727F727F727F727F8684A286
84A787A71D1C75133EA38575137E73157C7513FC731401B86C6D9038F803F807039038FE
07F07390B512E0736C14C0080F1400CEEA7FFC5F537CD164>82 D<91260FFF80130791B5
00F85B010702FF5B011FEDC03F49EDF07F9026FFFC006D5A4801E0EB0FFD4801800101B5
FC4848C87E48488149150F001F824981123F4981007F82A28412FF84A27FA26D82A27F7F
6D93C7FC14C06C13F014FF15F86CECFF8016FC6CEDFFC017F06C16FC6C16FF6C17C06C83
6C836D826D82010F821303010082021F16801400030F15C0ED007F040714E01600173F05
0F13F08383A200788200F882A3187FA27EA219E07EA26CEFFFC0A27F6D4B13806D17006D
5D01FC4B5A01FF4B5A02C04A5A02F8EC7FF0903B1FFFC003FFE0486C90B65AD8FC0393C7
FC48C66C14FC48010F14F048D9007F90C8FC3C5479D24B>I<EC7FFF0107B512F0013F14
FE90B77E48D9E00F7F2703FE000113F0486C6D7F6EEB3FFC48826E131F83707FA36C496D
7FA26C90C7FC6C5AC9FCA6037FB5FC020FB6FC91B7FC01071487013FEBF0074913803901
FFFC004813F0485B485B485B4890C7FC5A5BA2485AA45EA26D5C007F151D163D6C6C0279
7F6C6D01F113F86C9026C003E1EBFFE06C9026F81FC014F06C90B5487EC6ED001F011F01
FC010713E0010101E090C8FC3C387CB641>97 D<EB3FF0B5FCA51203C6FCB3A4923801FF
E0030F13FE033FEBFFC092B612F002F301017F913AF7F8003FFEDAFFE0EB0FFF03806D7F
92C76C7F4A6E7F4A824A6E7FA2727EA285A28584A31A80AC1A00A44E5AA36118FF616E4A
5BA26E4A5B6E4A5B6F495BDACFC04990C7FCDA87F0EB7FFC913A03FE03FFF849C6B612E0
496D148049011F01FCC8FC90C7000313C041547BD24B>I<913801FFF8021FEBFF8091B6
12F0010315FC010F9038C00FFE903A1FFE0001FFD97FFC491380D9FFF05B4817C048495B
5C5A485BA2486F138091C7FC486F1300705A4892C8FC5BA312FFAD127F7FA27EA2EF03E0
6C7F17076C6D15C07E6E140F6CEE1F806C6DEC3F006C6D147ED97FFE5C6D6CEB03F8010F
9038E01FF0010390B55A01001580023F49C7FC020113E033387CB63C>I<4DB47E0407B5
FCA5EE001F1707B3A4913801FFE0021F13FC91B6FC010315C7010F9038E03FE749903800
07F7D97FFC0101B5FC49487F4849143F484980485B83485B5A91C8FC5AA3485AA412FFAC
127FA36C7EA37EA26C7F5F6C6D5C7E6C6D5C6C6D49B5FC6D6C4914E0D93FFED90FEFEBFF
80903A0FFFC07FCF6D90B5128F0101ECFE0FD9003F13F8020301C049C7FC41547CD24B>
I<913803FFC0023F13FC49B6FC010715C04901817F903A3FFC007FF849486D7E49486D7E
4849130F48496D7E48178048497F18C0488191C7FC4817E0A248815B18F0A212FFA490B8
FCA318E049CAFCA6127FA27F7EA218E06CEE01F06E14037E6C6DEC07E0A26C6DEC0FC06C
6D141F6C6DEC3F806D6CECFF00D91FFEEB03FE903A0FFFC03FF8010390B55A010015C002
1F49C7FC020113F034387CB63D>I<ED3FFC0203B5FC020F14C0023F14E09139FFF81FF0
499038C03FF849EB807F49903800FFFC495A495AA2495AA2EE7FF8495AEE3FF0EE0FC093
C7FCAEB712E0A526007FF8C8FCB3B3A7007FB512FEA52E547CD329>I<DA3FFF14FF0103
B5D8F00713C0010FDAFC1F13E0013FECFF7F90267FFC0F9038FF9FF09026FFE001EBF83F
48496C13E0484990387FF01F4890C7D83FF813E0489338FC0FC0F0078048486E6CC7FCA2
003F82A9001F5EA26C6C4A5AA26C5E6C6D495A6C6D495A6C6D485BDAFC0F5B4890B6C8FC
D803EF14FC01C314F02607C03F90C9FC91CBFCA2120FA37FA213F813FE90B7FC6C16F817
FF18C06C836C836C836D828448B9FC12074848C700031480D81FF8EC003F484815074848
6F13C083485A83A56D5D007F18806D5D003F18006C6C4B5AD80FFEED1FFC6C6C6CEC7FF8
6C01E049485A6C01FE011F5B6C6CB71280010F03FCC7FC010115E0D9000F01FCC8FC3C4F
7CB543>I<EB3FF0B5FCA51203C6FCB3A4EE1FFC93B512C0030314F0030F8092391FE07F
FC92393F001FFE037C8003F07FDAF1E081ECF3C0DAF7807F8502FFC7FC5CA25CA45CB3AC
B6D8F807B612C0A542537BD24B>I<137F497E000313E0487FA2487FA76C5BA26C5BC613
806DC7FC90C8FCADEB3FF0B5FCA512017EB3B3A6B612E0A51B547BD325>I<EB3FF0B5FC
A512017EB3B3B3B1B612F0A51C537BD225>108 D<D93FF0D91FFCEDFFE0B591B500C001
0713FE030302F0011F6D7E030F6E017F8092271FE07FFCD9FF037F922A3F001FFE01F800
7F0003027C9126FF03E080C602F06DD90780137FDAF1E0038FC77FDAF3C0159EDAF7806D
01BC143F07FC8102FFC75C4A5EA24A5EA44A5EB3ACB6D8F807B6D8C03FB512FEA567367B
B570>I<D93FF0EB1FFCB591B512C0030314F0030F8092391FE07FFC92393F001FFE0003
027C80C602F07FDAF1E081ECF3C0DAF7807F8502FFC7FC5CA25CA45CB3ACB6D8F807B612
C0A542367BB54B>I<913801FFE0021F13FE91B612C0010315F0010F9038807FFC903A1F
FC000FFED97FF86D6C7E49486D7F48496D7F48496D7F4A147F48834890C86C7EA24883A2
48486F7EA3007F1880A400FF18C0AC007F1880A3003F18006D5DA26C5FA26C5F6E147F6C
5F6C6D4A5A6C6D495B6C6D495B6D6C495BD93FFE011F90C7FC903A0FFF807FFC6D90B55A
010015C0023F91C8FC020113E03A387CB643>I<903A3FF001FFE0B5010F13FE033FEBFF
C092B612F002F301017F913AF7F8007FFE0003D9FFE0EB1FFFC602806D7F92C76C7F4A82
4A6E7F4A6E7FA2717FA285187F85A4721380AC1A0060A36118FFA2615F616E4A5BA26E4A
5B6E4A5B6F495B6F4990C7FC03F0EBFFFC9126FBFE075B02F8B612E06F1480031F01FCC8
FC030313C092CBFCB1B612F8A5414D7BB54B>I<912601FFE0EB0780021F01F8130F91B5
00FE131F0103ECFF80010F9039F03FC03F499039800FE07F903A7FFE0003F04948903801
F8FF4849EB00FD4849147F4A805A4849805A4A805AA291C87E5AA35B12FFAC6C7EA37EA2
806C5EA26C6D5CA26C6D5C6C6D5C6C93B5FC6C6D5B6D6C5B6DB4EB0FEF010F9038C07FCF
6D90B5120F010114FED9003F13F80203138091C8FCB1040FB61280A5414D7CB547>I<90
397FE003FEB590380FFF80033F13E04B13F09238FE1FF89139E1F83FFC0003D9E3E013FE
C6ECC07FECE78014EF150014EE02FEEB3FFC5CEE1FF8EE0FF04A90C7FCA55CB3AAB612FC
A52F367CB537>I<903903FFF00F013FEBFE1F90B7FC120348EB003FD80FF81307D81FE0
130148487F4980127F90C87EA24881A27FA27F01F091C7FC13FCEBFFC06C13FF15F86C14
FF16C06C15F06C816C816C81C681013F1580010F15C01300020714E0EC003F030713F015
010078EC007F00F8153F161F7E160FA27E17E07E6D141F17C07F6DEC3F8001F8EC7F0001
FEEB01FE9039FFC00FFC6DB55AD8FC1F14E0D8F807148048C601F8C7FC2C387CB635>I<
143EA6147EA414FEA21301A313031307A2130F131F133F13FF5A000F90B6FCB8FCA42600
3FFEC8FCB3A9EE07C0AB011FEC0F8080A26DEC1F0015806DEBC03E6DEBF0FC6DEBFFF86D
6C5B021F5B020313802A4D7ECB34>I<D93FF8913801FFC0B50207B5FCA50003ED001FC6
1607B3AE5FA35FA2017F5D173B177B6D6C14F3DC01E313F06D6CD907C3EBFFC0903A0FFF
C03F836D90B51203010114FE6D6C13F8020701E091C7FC42377BB54B>I<B600F00107B5
FCA5000101F8C8EA7FE06C6DED3F00A2017F163E6E157E013F167C6E15FC6D5E6F13016D
5E8117036D5E6F13076D5E6F130F6D5E6F131F6D93C7FC815F6E6C133E177E023F147C6F
13FC6E5C16816E5C16C3A26EEBE3E016E76E5C16FF6E5CA26E91C8FCA26F5AA36F5AA26F
5AA26F5AA26F5A6F5A40367DB447>I<007FB500F090387FFFFEA5C66C48C7000F90C7FC
6D6CEC07F86D6D5C6D6D495A6D4B5A6F495A6D6D91C8FC6D6D137E6D6D5B91387FFE014C
5A6E6C485A6EEB8FE06EEBCFC06EEBFF806E91C9FCA26E5B6E5B6F7E6F7EA26F7F834B7F
4B7F92B5FCDA01FD7F03F87F4A486C7E4A486C7E020F7FDA1FC0804A486C7F4A486C7F02
FE6D7F4A6D7F495A49486D7F01076F7E49486E7E49486E7FEBFFF0B500FE49B612C0A542
357EB447>120 D E /Fb 3 119 df<DA0FF81330DA7FFF13700103B5EAC0F090390FFC03
F190391FE000F9D97F80133F01FEC7121F4848140F48481407485A000F1503491401121F
491400123F5B127F1770A248C9FC1700AA6C6C1570A3123F6D15F0121F6D15E0000F1501
6D15C0000715036C6C15806C6C14076C6CEC0F00D97F80133ED91FE05B90390FFC03F001
03B55AD9007F1380DA0FF8C7FC2C317BAF36>99 D<90383FC00C9038FFF81C0003EBFE3C
390FE03FFC381F8007EB0003003E1301481300157C5A153CA36C141CA27E6C14006C7E13
E013FE383FFFE06C13FE6CEBFF806C14E0000114F06C6C13F8010F13FC1300EC07FE1401
1400157F153F12E0151FA37EA2151E6C143E6C143C6C147C6C14F89038C001F039FBF807
E000F1B512C0D8E07F130038C007FC20317BAF2A>115 D<B500E0903807FFF0A3000790
C7000113806C48913800FE000001167C0000167817706D15F06D5DA26D6C495AA26E1303
011F5DA26D6C49C7FCA26E5B0107140EA26D6C5BA26E133C010114388001005CA26E13F0
6E5B1581023F5BA215C3021F5B15E7020F90C8FCA2EC07FEA36E5AA26E5AA36E5AA23430
7EAE38>118 D E /Fc 1 16 df<EB0FFCEB3FFF90B512C0000314F04880488048804880
A2481580A3B712C0AA6C1580A36C1500A26C5C6C5C6C5C6C5CC614C0013F90C7FCEB0FFC
22227BA72D>15 D E /Fd 78 126 df<00101304007C131F00FEEB3F80A26C137FA24813
3FB2007E1400007C7F003C131E00101304191C75B830>34 D<903907C007C0A2496C487E
A8011F131FA202C05BA3007FB7FCA2B81280A36C16006C5D3A007F807F80A2020090C7FC
A9495BA2003F90B512FE4881B81280A36C1600A22701FC01FCC7FCA300031303A201F85B
A76C486C5AA229387DB730>I<1438147C14FCA4EB03FF011F13E090B512FC4880000780
481580261FFEFD13C09039F0FC3FE0D83FC0131FD87F80EB0FF001001307007E15F800FE
14035A1507A36CEC03F0A2007F91C7FC138013C0EA3FF0EA1FFE13FF6C13FF6C14E00001
14F86C6C7F011F7F01037F0100148002FD13C09138FC7FE0151FED0FF015070018EC03F8
127E1501B4FCA35AA26CEC03F07E01801307ED0FE0D83FC0131F01F0EB7FC0D81FFEB512
806CB612006C5C6C5CC614F0013F13C0D907FEC7FCEB00FCA5147C143825477BBE30>I<
EA07C0EA0FF0EA1FF8A213FCA213FE120F1207EA007EA513FE13FCA2120113F81203EA07
F0120FEA1FE0127FEAFFC013801300127C12380F1D70B730>39 D<141E147F14FF5BEB03
FEEB07FCEB0FF0EB1FE0EB3FC0EB7F80EBFF00485A5B12035B485A120F5BA2485AA2123F
5BA2127F90C7FCA412FEAD127FA47F123FA27F121FA26C7EA27F12076C7E7F12017F6C7E
EB7F80EB3FC0EB1FE0EB0FF0EB07FCEB03FEEB01FF7F147F141E184771BE30>I<127812
FE7E7F6C7E6C7EEA0FF06C7E6C7E6C7E6C7EEB7F80133F14C0131FEB0FE014F01307A2EB
03F8A214FC1301A214FE1300A4147FAD14FEA4130114FCA2130314F8A2EB07F0A2130F14
E0EB1FC0133F1480137FEBFF00485A485A485A485AEA3FE0485A485A90C7FC5A12781847
78BE30>I<143EA2147FAF007FB7FCA2B81280A36C1600A2C76CC8FCAF143EA229297DAF
30>43 D<EA03E0EA0FF0EA1FF813FCEA3FFEA213FFA27EA27E1203EA007FA2137E13FEEA
01FC1203EA07F8EA3FF0127FEAFFE0EA7F801300123C1019708B30>I<007FB612F0A2B7
12F8A36C15F0A225077B9E30>I<120FEA3FC0EA7FE0A2EAFFF0A4EA7FE0A2EA3FC0EA0F
000C0C6E8B30>I<16F01501ED03F8A21507A2ED0FF0A2ED1FE0A2ED3FC0A2ED7F80A2ED
FF00A24A5AA25D1403A24A5AA24A5AA24A5AA24A5AA24A5AA24AC7FCA2495AA25C1303A2
495AA2495AA2495AA2495AA2495AA249C8FCA2485AA25B1203A2485AA2485AA2485AA248
5AA2485AA248C9FCA25AA2127CA225477BBE30>I<14FE903807FFC0497F013F13F8497F
90B57E48EB83FF4848C6138049137F4848EB3FC04848EB1FE049130F001F15F0491307A2
4848EB03F8A290C712014815FCA400FEEC00FEAD6C14016C15FCA36D1303003F15F8A26D
1307001F15F0A26D130F6C6CEB1FE0A26C6CEB3FC06C6CEB7F806D13FF2601FF8313006C
EBFFFE6D5B6D5B010F13E06D5BD900FEC7FC273A7CB830>I<EB03C0497EA2130FA2131F
A2133F137F13FF1203123FB5FCA213EF138FEA7E0F1200B3B0003FB512F84814FCB612FE
A26C14FC6C14F81F3977B830>I<EB07FC90383FFFC090B512F00003804814FE4880261F
F80F1380263FE00113C09038C0007F4848EB3FE090C7121FED0FF04814075A6C15F81503
A3127E1218C8FCA2150716F0150F16E0151F16C0153FED7F8015FF4A13005DEC07FC4A5A
4A5A4A5A4A5A4A5A4990C7FC495A495AEB0FF0EB3FE0495A495A4890C8FC4848EB01F048
48EB03F8485AEA1FE048B6FCB7FCA37E6C15F025397BB830>I<EB03FF013F13E090B512
F84814FE4880481580260FFE0113C09038F0007F4848EB1FE0150F16F01507A26C5A6C5A
C8FC150F16E0A2151FED3FC0157FEDFF8002071300903807FFFE495B5D8115FF6D1480D9
000113C09138003FE0ED1FF0ED07F8150316FC150116FE1500A21218127EB4FCA2150116
FC4814036C15F86C6C13076DEB1FF0D83FF0133F3A1FFE01FFE06CB612C06C15806CECFE
00C65C013F13F001031380273A7CB830>I<EC0FF8EC7FFF49B51280010714E0131F4914
F090387FF80F9039FFC007F84813803803FE005B485A4848EB03F0ED01E0484890C7FC5B
123F5BA2127FEB000C903803FFE0010F13F8D8FF3F13FE48B6FCB7128016C09039FE007F
E001F8EB1FF001E0130F49EB07F8ED03FC5B90C7120116FE1500A37EA46C7E15016D14FC
121F6D1303000FEC07F86D130F6C6CEB1FF06DEB3FE03A03FF81FFC06C90B512806C1500
6D5B011F13F8010713E001011380273A7CB830>54 D<49B4FC011F13F0017F13FC90B57E
0003ECFF804815C048010113E03A1FF8003FF049131FD83FC0EB07F8A24848EB03FC90C7
1201A56D1303003F15F86D13076C6CEB0FF06C6CEB1FE0D807FCEB7FC03A03FF83FF806C
90B512006C6C13FC011F13F0497F90B512FE48802607FE0013C0D80FF8EB3FE0D81FE0EB
0FF04848EB07F8491303007F15FC90C712014815FE481400A66C14016C15FC6D1303003F
15F86D1307D81FF0EB1FF06D133F3A0FFF01FFE06C90B512C06C1580C6ECFE006D5B011F
13F0010190C7FC273A7CB830>56 D<120FEA3FC0EA7FE0A2EAFFF0A4EA7FE0A2EA3FC0EA
0F00C7FCAF120FEA3FC0EA7FE0A2EAFFF0A4EA7FE0A2EA3FC0EA0F000C276EA630>58
D<EA03C0EA0FF0EA1FF8A2EA3FFCA4EA1FF8A2EA0FF0EA03C0C7FCAFEA03C0EA0FF0121F
13F8123F13FCA3121FA2120F12031200120113F8120313F01207EA1FE0123FEA7FC0EAFF
80EA7F00127E12380E3470A630>I<16F01503ED07F8151F157FEDFFF014034A13C0021F
138091383FFE00ECFFF8495B010713C0495BD93FFEC7FC495A3801FFF0485B000F138048
90C8FCEA7FFC5BEAFFE05B7FEA7FF87FEA1FFF6C7F000313E06C7F38007FFC6D7E90380F
FF806D7F010113F06D7FEC3FFE91381FFF80020713C06E13F01400ED7FF8151F1507ED03
F01500252F7BB230>I<007FB7FCA2B81280A36C16006C5DCBFCA7003FB612FE4881B812
80A36C1600A229157DA530>I<EB1FFE90B512E0000314F8000F14FE4880481580267FF8
0313C09038C0007F48C7121F16E0150FA3127E151F0018EC7FC0C812FF020313804A1300
4A5AEC1FF84A5AEC7FC04A5A92C7FC495AA2495A5CA213075CA86D5A90C9FCA8EB01C0EB
07F0A2497EA36D5AA2EB01C023397AB830>63 D<147F4A7EA2497FA4497F14F7A401077F
14E3A3010F7FA314C1A2011F7FA490383F80FEA590387F007FA4498049133F90B6FCA348
81A39038FC001F00038149130FA4000781491307A2D87FFFEB7FFFB56CB51280A46C496C
130029397DB830>65 D<007FB512F0B612FE6F7E82826C813A03F8001FF815076F7E1501
A26F7EA615015EA24B5A1507ED1FF0ED7FE090B65A5E4BC7FC6F7E16E0829039F8000FF8
ED03FC6F7E1500167FA3EE3F80A6167F1700A25E4B5A1503ED1FFC007FB6FCB75A5E16C0
5E6C02FCC7FC29387EB730>I<91387F803C903903FFF03E49EBFC7E011F13FE49EBFFFE
5B9038FFE07F48EB801F3903FE000F484813075B48481303A2484813015B123F491300A2
127F90C8FC167C16005A5AAC7E7EA2167C6D14FE123FA27F121F6D13016C6C14FCA26C6C
EB03F86D13076C6CEB0FF03901FF801F6C9038E07FE06DB512C06D14806D1400010713FC
6D13F09038007FC0273A7CB830>I<003FB512E04814FCB67E6F7E6C816C813A03F8007F
F0ED1FF8150F6F7E6F7E15016F7EA2EE7F80A2163F17C0161FA4EE0FE0AC161F17C0A316
3F1780A2167F17005E4B5A15034B5A150F4B5AED7FF0003FB65A485DB75A93C7FC6C14FC
6C14E02B387FB730>I<007FB7FCB81280A47ED803F8C7123FA8EE1F0093C7FCA4157C15
FEA490B5FCA6EBF800A4157C92C8FCA5EE07C0EE0FE0A9007FB7FCB8FCA46C16C02B387E
B730>I<003FB712804816C0B8FCA27E7ED801FCC7121FA8EE0F8093C7FCA5153E157FA4
90B6FCA69038FC007FA4153E92C8FCAE383FFFF8487FB5FCA27E6C5B2A387EB730>I<02
FF13F00103EBC0F8010F13F1013F13FD4913FF90B6FC4813C1EC007F4848133F4848131F
49130F485A491307121F5B123F491303A2127F90C7FC6F5A92C8FC5A5AA892B5FC4A1480
5CA26C7F6C6D1400ED03F8A27F003F1407A27F121F6D130F120F7F6C6C131FA2D803FE13
3F6C6C137FECC1FF6C90B5FC7F6D13FB010F13F30103EBC1F0010090C8FC293A7DB830>
I<3B3FFF800FFFE0486D4813F0B56C4813F8A26C496C13F06C496C13E0D803F8C7EAFE00
B290B6FCA601F8C7FCB3A23B3FFF800FFFE0486D4813F0B56C4813F8A26C496C13F06C49
6C13E02D387FB730>I<007FB6FCB71280A46C1500260007F0C7FCB3B3A8007FB6FCB712
80A46C1500213879B730>I<49B512F04914F85BA27F6D14F090C7EAFE00B3B3123C127E
B4FCA24A5A1403EB8007397FF01FF86CB55A5D6C5C00075C000149C7FC38003FF025397A
B730>I<D83FFF90380FFF80486D4813C0B56C5AA26C497E6C496C1380D803F0903803F8
004B5A4B5A151F4B5A5E4BC7FC15FE14014A5A5D4A5A4A5A141F5D4A5A4AC8FC5C13F181
01F37F13F790B57E14EFECC7F01483EC03F8140101FE7F496C7E5B157F497F82151F8215
0F826F7EA26F7E1501821500D83FFF903803FFC0486D4813E0B56C5AA26C497E6C496C13
C02B387FB730>I<383FFFF8487FB57EA26C5B6C5BD801FCC9FCB3B0EE0F80EE1FC0A900
3FB7FC5AB8FCA27E6C16802A387EB730>I<D83FF8ECFFE0486C4913F0486C4913F8A200
7F16F06C6C4913E00007160001EF14BFEC800FA39039E7C01F3FA4ECE03F01E3133EA2EC
F07EA201E1137CA2ECF8FCA201E013F8A214FDEC7DF0A3147FEC3FE0A3EC1FC0A2EC0700
91C7FCADD83FFC903801FFE0486C4913F0B54913F8A26C486D13F06C486D13E02D387FB7
30>I<D83FFC90381FFF80486C4913C0B54913E0A26C6D6C13C06C6E13800003913801F8
00EBF7C0A3EBF3E0A314F013F1A214F8A213F014FCA2147C147EA2143E143FA2141FA215
81A2140F15C1A2140715E1A2140315F1A21401A215F91400A3157DA3153FEA3FFF481380
B5EAC01FA26CEB800F6C496C5A2B387EB730>I<90383FFFE048B512FC000714FF481580
4815C04815E0EBF80001E0133FD87F80EB0FF0A290C71207A44815F8481403B3A96C1407
A26C15F0A36D130FA26D131F6C6CEB3FE001F813FF90B6FC6C15C06C15806C1500000114
FCD8003F13E0253A7BB830>I<007FB512F0B612FE6F7E16E0826C813903F8003FED0FFC
ED03FE15016F7EA2821780163FA6167F17005EA24B5A1503ED0FFCED3FF890B6FC5E5E16
804BC7FC15F001F8C9FCB0387FFFC0B57EA46C5B29387EB730>I<90383FFFE048B512FC
000714FF4815804815C04815E0EBF80001E0133F4848EB1FF049130F90C71207A44815F8
481403B3A8147E14FE6CEBFF076C15F0EC7F87A2EC3FC7018013CF9038C01FFFD83FE014
E0EBF80F90B6FC6C15C06C15806C1500000114FCD8003F7FEB00016E7EA21680157F16C0
153F16E0151F16F0150FED07E025467BB830>I<003FB57E4814F0B612FC15FF6C816C81
2603F8017F9138003FF0151F6F7E15071503821501A515035E1507150F4B5A153F4AB45A
90B65A5E93C7FC5D8182D9F8007FED3FE0151F150F821507A817F8EEF1FCA53A3FFF8003
FB4801C0EBFFF8B56C7E17F06C496C13E06C49EB7FC0C9EA1F002E397FB730>I<90390F
F803C0D97FFF13E048B512C74814F74814FF5A381FF80F383FE001497E4848137F90C712
3F5A48141FA2150FA37EED07C06C91C7FC7F7FEA3FF0EA1FFEEBFFF06C13FF6C14E00001
14F86C80011F13FF01031480D9003F13C014019138007FE0151FED0FF0A2ED07F8A2007C
140312FEA56C140716F07F6DEB0FE06D131F01F8EB3FC001FF13FF91B51280160000FD5C
D8FC7F13F8D8F81F5BD878011380253A7BB830>I<003FB712C04816E0B8FCA43AFE003F
800FA8007CED07C0C791C7FCB3B1011FB5FC4980A46D91C7FC2B387EB730>I<3B7FFFC0
07FFFCB56C4813FEA46C496C13FCD803F8C7EA3F80B3B16D147F00011600A36C6C14FE6D
13016D5CEC800390393FE00FF890391FF83FF06DB55A6D5C6D5C6D91C7FC9038007FFCEC
1FF02F3980B730>I<D87FFE90380FFFC0B54913E06E5AA24A7E6C486D13C0D807F09038
01FC00A26D130300035DA46C6C495AA46C6C495AA46D131F6D5CA3EC803F013F5CA46D6C
48C7FCA490380FE0FEA401075B14F1A301035BA314FB01015BA314FFA26D5BA46E5A6E5A
2B397EB730>I<D83FFC903801FFE0486C4913F000FF16F8A2007F16F06C486D13E0D81F
C09038001FC0000F1680A76D143F00071600A7000390380F803E9039F01FC07EEC3FE0A3
EC7FF0A2147D0001157CA29039F8FDF8FCA314F8A300005D01F913FCA2ECF07CA201FD13
7DA2017D5CECE03DA3017F133FA2ECC01FA2013F5CA2EC800F6D486C5A2D397FB730>I<
D87FFF90381FFFC0B56C4813E0A46C496C13C0D803F8903803F8006D1307A26C6C495AA2
6C6C5C151F6D5CEC803F013F5CECC07F011F91C7FCA290380FE0FEA214F101075BA29038
03FBF8A201015B14FF6D5BA26E5AA36E5AB1903803FFF8497F497FA26D5B6D5B2B387EB7
30>89 D<007FB5FCB61280A4150048C8FCB3B3B3A5B6FC1580A46C140019476DBE30>91
D<127CA212FEA27EA26C7EA26C7EA26C7EA26C7EA26C7EA26C7EA212017FA26C7EA26D7E
A26D7EA26D7EA26D7EA26D7EA26D7EA2130180A26D7EA26E7EA26E7EA26E7EA26E7EA26E
7EA26E7EA2140181A26E7EA2ED7F80A2ED3FC0A2ED1FE0A2ED0FF0A2ED07F8A21503A2ED
01F0150025477BBE30>I<007FB5FCB61280A47EC7123FB3B3B3A5007FB5FCB6FCA46C14
0019477DBE30>I<007FB612F0A2B712F8A36C15F0A225077B7D30>95
D<1338137CEA01FE12031207EA0FFC13F0EA1FE013C0EA3F8013005A127EA212FE5AA5EA
FFC013E013F0127FA2123FA2EA1FE0EA07C00F1D70BE30>I<EB3FFC48B57E4814E04880
488048809038F00FFE9038E001FF806F7E6C48133F6C4880C8121FA491B5FC130F137F48
B6FC12075A48EBC01F383FFC00EA7FE0138048C7FC5AA46C143FA26C6C137F9038C001FF
263FF80FEBFFC06CB712E0A2000714F76C14C3C6020013C0D93FF090C7FC2B2A7CA830>
I<EA3FFC487E12FFA2127F123F1200AAEC03FE91381FFF80027F13E091B57E90B612FC82
ECFE079138F001FF4A6C13804A137F4AEB3FC091C7121F4915E0160FA217F01607A8160F
A217E07F161F6EEB3FC0A26EEB7F806E13FFDAF00313009138FC0FFE91B55A5E495CD97E
7F13C0D93C1F90C7FC90380003FC2C3980B730>I<ECFFE0010713FC011F7F017F7F90B6
12804815C048EB807F3907FC003F485A485A49EB1F804848EB0F004990C7FC127F90C9FC
A25A5AA87E7EA27F003FEC07C06DEB0FE06C7E6D131F6C6C14C0D807FE133F9039FFC0FF
806C90B5FCC615006D5B011F13F801075B01011380232A7AA830>I<913801FFE04A7F5C
A28080EC0007AAEB03FE90381FFF874913E790B6FC5A5A481303380FFC00D81FF0133F49
131F485A150F4848130790C7FCA25AA25AA87E6C140FA27F003F141F6D133F6C7E6D137F
390FF801FF2607FE07EBFFC06CB712E06C16F06C14F76D01C713E0011F010313C0D907FC
C8FC2C397DB730>I<49B4FC010713E0011F13F8017F7F90B57E488048018113803A07FC
007FC04848133FD81FE0EB1FE0150F484814F0491307127F90C7FCED03F85A5AB7FCA516
F048C9FC7E7EA27F003FEC01F06DEB03F86C7E6C7E6D1307D807FEEB1FF03A03FFC07FE0
6C90B5FC6C15C0013F14806DEBFE00010713F8010013C0252A7CA830>I<EDFF80020713
E0021F13F05C4A13F891B5FC491387903803FE079138FC03F0903907F800C04A1300A800
3FB612C04815E0B7FCA36C15C0260007F0C7FCB3A9003FB512FE4880B71280A26C15006C
5C25397DB830>I<D903FC13FF90261FFF8713C04913DF90B712E05A5A2607FE07138F90
3AF801FE07C048486C6CC7FCA2497F001F8149133FA56D137F000F92C7FC6D5BA26C6C48
5AEBFE0790B55A5D485C15C001DF5BD9C3FCC8FC01C0C9FCA37F7F6CB512F015FF6C15C0
4815F0488148813A3FE0001FFE0180130148C8127F007E8100FE168048151FA56C153F00
7FED7F006D5C6C6C495A01F013076CB4EB7FFC6C90B55A6C5D000115C06C6C91C7FC011F
13FC010113C02B3E7DA730>I<EA3FFC487E12FFA2127F123F1200AAEC01FE91380FFF80
023F13E091B57E90B67EA29138FE07FCECF8039138E001FE14C0EC8000A291C7FCA25BB3
A23B3FFFF81FFFF8486D4813FCB500FE14FEA26C01FC14FC6C496C13F82F3880B730>I<
14E0EB03F8A2497EA36D5AA2EB00E091C8FCA9381FFFF8487F5AA27E7EEA0001B3A9003F
B612C04815E0B7FCA27E6C15C023397AB830>I<EA7FF8487EA4127F1200AB0203B51280
4A14C017E0A217C06E14809139001FE0004B5A4B5A4BC7FC4A5A4A5AEC0FF84A5A4A5A4A
5A4A5A01FD7F90B57E8114F7ECE3F8ECC1FCEC81FEEC00FF497F496D7E6F7E826F7E1507
6F7E6F7E3B7FFFF81FFFE0B56C4813F017F8A217F06C496C13E02D387FB730>107
D<387FFFF8B57EA47EEA0001B3B3A8007FB612F0B712F8A46C15F025387BB730>I<02FC
137E3B7FC3FF01FF80D8FFEF01877F90B500CF7F15DF92B57E6C010F13872607FE07EB03
F801FC13FE9039F803FC01A201F013F8A301E013F0B3A23C7FFE0FFF07FF80B548018F13
C0A46C486C01071380322881A730>I<EC01FE3A3FFC0FFF80267FFE3F13E000FF90B57E
90B67E7E6C9038FE07FCC6EBF8039138E001FE14C0EC8000A291C7FCA25BB3A23B3FFFF8
1FFFF8486D4813FCB500FE14FEA26C01FC14FC6C496C13F82F2880A730>I<49B4FC010F
13E0013F13F8497F90B57E0003ECFF8014013A07FC007FC04848EB3FE0D81FE0EB0FF0A2
4848EB07F8491303007F15FC90C71201A300FEEC00FEA86C14016C15FCA26D1303003F15
F86D13076D130F6C6CEB1FF06C6CEB3FE06D137F3A07FF01FFC06C90B512806C15006C6C
13FC6D5B010F13E0010190C7FC272A7CA830>I<EC03FE3A3FFC1FFF80267FFE7F13E000
FF90B57E90B612FC6C816CEBFE07C69038F001FF4A6C13804A137F4AEB3FC091C7121F49
15E0160FA217F01607A8160FA217E07F161F6EEB3FC0A26EEB7F806E13FFDAF003130091
38FC0FFE91B55A5E495C6E13C0021F90C7FCEC03FC91C9FCAD383FFFF8487FB57EA26C5B
6C5B2C3C80A730>I<49B413F8010FEBC1FC013F13F14913FD48B6FC5A481381390FFC00
7F49131F4848130F491307485A491303127F90C7FC15015A5AA77E7E15037FA26C6C1307
150F6C6C131F6C6C133F01FC137F3907FF01FF6C90B5FC6C14FD6C14F9013F13F1010F13
C1903803FE0190C7FCAD92B512F84A14FCA46E14F82E3C7DA730>I<ED07F83A3FFF803F
FF486DB51280B512C302CF14C06C13DF6C9038FFFC3FD8001F13E09238801F809238000F
004A90C7FC5C5C5CA25CA45CAF003FB512FC4880B7FCA26C5C6C5C2A287EA730>I<9038
1FFC1E48B5129F000714FF5A5A5A387FF007EB800100FEC7FC4880A46C143E007F91C7FC
13E06CB4FC6C13FC6CEBFF806C14E0000114F86C6C7F01037F9038000FFF02001380007C
147F00FEEC1FC0A2150F7EA27F151F6DEB3F806D137F9039FC03FF0090B6FC5D5D00FC14
F0D8F83F13C026780FFEC7FC222A79A830>I<EB0780497E131FA9003FB612E04815F0B7
FCA36C15E026001FC0C7FCB216F8ED01FCA5ECE003010FEB07F814F09138FC1FF06DB512
E06D14C016806D14009038007FFCEC1FF026337EB130>I<D83FFCEB3FFC486C497E00FF
14FFA2007F147F003F143F00001400B3A41501A2150315076D130F903A7FC07FFFF891B6
12FC6D15FE7F6D4913FC6D9038F87FF8010001C0C7FC2F2880A630>I<3B3FFFC07FFF80
486DB512C0B515E0A26C16C06C496C13803B01F80003F000A26D130700005DA26D130F01
7E5CA2017F131F6D5CA2EC803F011F91C7FCA26E5A010F137EA2ECE0FE01075BA214F101
035BA3903801FBF0A314FF6D5BA36E5A6E5A2B277EA630>I<3B3FFFC01FFFE0486D4813
F0B515F8A26C16F06C496C13E0D807E0C7EA3F00A26D5C0003157EA56D14FE00015DEC0F
80EC1FC0EC3FE0A33A00FC7FF1F8A2147DA2ECFDF9017C5C14F8A3017E13FBA290393FF0
7FE0A3ECE03FA2011F5C90390F800F802D277FA630>I<3A3FFF81FFFC4801C37FB580A2
6C5D6C01815BC648C66CC7FC137FEC80FE90383F81FC90381FC3F8EB0FE3ECE7F06DB45A
6D5B7F6D5B92C8FC147E147F5C497F81903803F7E0EB07E790380FE3F0ECC1F890381F81
FC90383F80FE90387F007E017E137F01FE6D7E48486D7E267FFF80B5FCB500C1148014E3
A214C16C0180140029277DA630>I<3B3FFFC07FFF80486DB512C0B515E0A26C16C06C49
6C13803B01FC0003F000A2000014076D5C137E150F017F5C7F151FD91F805BA214C0010F
49C7FCA214E00107137EA2EB03F0157C15FCEB01F85DA2EB00F9ECFDF0147D147FA26E5A
A36E5AA35DA2143F92C8FCA25C147EA2000F13FE486C5AEA3FC1EBC3F81387EB8FF0EBFF
E06C5B5C6C90C9FC6C5AEA01F02B3C7EA630>I<001FB612FC4815FE5AA316FC90C7EA0F
F8ED1FF0ED3FE0ED7FC0EDFF80003E491300C7485A4A5A4A5A4A5A4A5A4A5A4A5A4990C7
FC495A495A495A495A495A495A4948133E4890C7127F485A485A485A485A485A48B7FCB8
FCA46C15FE28277DA630>I<ED3FF0913803FFF8140F5C147F16F09138FFF00092C7FC49
5A5CB3A21303495A133F383FFFF0B55A5C91C8FC14C080003F7F38003FF813076D7E1301
B3A2806D7E15F091387FFFF016F8141F8014039138003FF025477BBE30>I<EA7FE0EAFF
FE6D7E8014F07EC66C7E13076D7E1301B3A2806D7E15E091387FFFE06E13F8801407141F
5C4A13E09138FFE00092C7FC495A5CB3A21303495A137F387FFFF0B5FC14C05C49C8FCEA
7FE025477BBE30>125 D E /Fe 26 122 df<EEFF80030F13F092383FC0789238FE001C
DA03F8130E4A48133FDA1FE013FF4A5A4B5AEC7F005C5CEE00FE010115784A1400A51303
5CA4EE01FC0007B7FC17F8A23A0007F0000F1607A2130F4A14F0A4160F131F4A14E0A416
1F133F4A14C0A4163F137F91C71380A4167F5B491500A31201486C903801FF80B5D8F83F
13FC5DA230407EBF33>12 D<EEFFC0030FEBFB8092383F803F9238FE007FDA03F813FF4A
5A91381FE001EC3FC003801400EC7F004A7F4A805F13014A5CA4160113034A5CA4160300
07B7FC5FA23A0007F00003A21607130F4A5CA4160F131F4A5CA4161F133F4A5CA4163F13
7F91C75BA4167F5B4992C7FCA300015D486C497FB5D8F87F13FCA331407EBF33>I<007F
B5FCA2B512FEA418067C961E>45 D<EC7FC0903803FFF890380FC07E90383E003F496D7E
01FF6D7E82A248140782A26C5A137890C7120FA25EA2EC03FF147F903807FF1FEB1FE0D9
7F805B3801FE00EA03F8485A4848133F485A003F5D49EC81C048C7FCA2157F48ED038048
14FFA2007F5B913903BF0700903880073F3A3FC00E1F8E260FE03C13FC3A03FFF00FF83A
007FC003E02A2A7CA82D>97 D<EB3F80EA1FFFA3C6FC137FA291C9FCA55B5BA512015BA4
EC07F80003EB3FFF9039F8F80FC09039FBE003E09039FF8001F891C77E5B4848147E4914
7F5B821780A2120F5B17C0A3167F001F16805BA4EEFF00123F5B4B5AA24B5A5E007F4A5A
A24B5A6D495A4BC7FCD87CE0137E39F87001F839F03C07E039E00FFF80260003FCC8FC2A
4077BE33>I<EC1FF0ECFFFE903903F01F8090390FC003C0D93F0013E0017E130F49131F
000115F04848EB3FE0485AA24848EB1FC0001FEC0F004990C7FC123FA2485AA412FF90C9
FCA96CEC0380150716006C6C5B151E001F5C6C6C5B6C6C5B6C6C485A3901F80F8026007F
FEC7FCEB0FF0242A7AA828>I<EE03F8ED01FFA3ED000F1607A217F0A4160FA217E0A416
1FA217C0A491380FF03FECFFFC902603F81F138090390FC007BF90391F8003FF90387E00
01497F0001157F48481500485A120F5B001F5D485A5E5B127FA2150112FF90C75BA41503
A25EA37E1507A26C4A5A7F001F141F6C6C133F6C6CEBFFF83B03F001EFFFC03900F80F8F
90383FFE0FD90FF0EBE0002D407ABE33>I<EC3FE0903801FFF8903807E07E90380F801F
90393F000F80017E14C049EB07E0485A12034848EB03F0485AA2121F5B123FA248481307
A290B6FCA2D8FF80C8FC90C9FCA87EED01C015036C15806D1307001FEC0F006D131E000F
5C6C6C5B6C6C485A3900FC07C0D93FFFC7FCEB07F8242A7BA828>I<177C913907F803FE
91393FFE0F8F9139FC0F9C3F903901F007F8903907E003E0D90FC013F0011F903801F80C
02801400133FD97F007FA315035B495CA3017E495A5E150F6D5C6D495A90263F803EC7FC
ECC0FC903871FFF09038E07F8091C9FC485AA47FA27F90B512F8EDFF806C15E016F86D80
48B6FC3A07E0000FFED80F801300003FC8127F003E815A00FC815AA25E163EA25E6C15FC
007C4A5A6C4A5A6CEC0FC0D80FC0013FC7FC3903F801FCC6B512F0010F90C8FC303D7FA8
2D>103 D<147FEB3FFFA313017FA25CA513015CA513035CA4ED07F80107EB1FFF9139F0
781FC09138F1E00F9139F38007E0ECF70002FE14F0495A5CA25CA24A130F131F4A14E0A4
161F133F4A14C0A4163F137F91C71380A4167F5B491500A300015D486C491380B5D8F87F
13FCA32E3F7DBE33>I<1478EB01FE130314FFA25B14FE130314FCEB00F01400ACEB03F8
EA01FF14F0A2EA001F130FA314E0A5131F14C0A5133F1480A5137F1400A55B5BA4EA03FF
007F13F0A2B5FC183E7DBD1A>I<147FEB3FFFA313017FA25CA513015CA513035CA50107
0103B5FC02F014FEA26F13F06F1380EEFE00010F14F84A485AED03C04B5A031FC7FC153E
011F13784A5AECC3E0ECC7F0ECCFF814FF497F14F9ECE1FE14C04A7E4A7E4980017E133F
82151F82150F01FE8049130782A2000181486C49B4FCB5D8F03F13F04B13E0A2303F7EBE
30>107 D<143FEB1FFF5BA213017FA214FEA5130114FCA5130314F8A5130714F0A5130F
14E0A5131F14C0A5133F1480A5137F1400A55B5BA4EA03FF007F13F8A2B5FC183F7DBE1A
>I<902707F007F8EB03FCD803FFD91FFF90380FFF80913CE0781FC03C0FE09126E1E00F
EBF0073E001FE38007E1C003F090260FE700EBE38002EEDAF70013F802FC14FE02D85C14
F84A5CA24A5C011F020F14074A4A14F0A5013F021F140F4A4A14E0A5017F023F141F91C7
4914C0A549027F143F4992C71380A300014B147F486C496DEBFFC0B5D8F87FD9FC3F13FE
A347287DA74C>I<903907F007F8D803FFEB1FFF9139E0781FC09138E1E00F3B001FE380
07E090380FE70002EE14F014FC14D814F85CA24A130F131F4A14E0A4161F133F4A14C0A4
163F137F91C71380A4167F5B491500A300015D486C491380B5D8F87F13FCA32E287DA733
>I<EC0FF0ECFFFE903903F01F8090390FC007C049C66C7E013E6D7E01FC6D7E48488049
147C0003157E485A000F157F5B121FA2485AA2007F1680A2170048C85AA54B5AA25E5A6C
4A5A7E4B5A5E6C140F6C6C5C4B5A6C6C013EC7FC6C6C5B6C6C485A3900FC0FE090383FFF
80D90FF8C8FC292A7BA82D>I<91387F01FE903A7FFF0FFFC09139FE3E03F09238F801F8
903A01FFE000FE4B137F6D497F4990C713804A15C04A141FA218E0A20103150F5C18F0A3
171F010716E05CA3173F18C0130F4A147F1880A2EFFF004C5A011F5D16034C5A6E495AEE
1FC06E495AD93FDC017EC7FC91388F01F8913883FFE0028090C8FC92C9FC137FA291CAFC
A45BA25BA31201487EB512F8A3343A81A733>I<91390FE003C0DAFFFC1380903903F81E
0790390FE0070F90391F80038FD97F0013DF01FE13014848903800FF00485A1207485A82
48485C123F495CA2485AA2150112FF90C75BA41503A25EA37E15077F003F4A5A151F6C6C
133F6C6C137F000714FF3903F003CF3A00FC0F8FE090383FFE0FEB0FF090C7FC151F5EA5
153F5EA4157F4B7E023F13FEA32A3A7AA730>I<903907F01F80D803FFEB7FE09138E1E1
F09138E387F839001FE707EB0FE614EE02FC13F002D813E09138F801804AC7FCA25C131F
A25CA4133F5CA5137F91C8FCA55B5BA31201487EB512FEA325287EA724>I<9138FF81C0
010713E390381F807F90397C003F8049131F4848130F5B00031407A248481400A27FA27F
6D90C7FCEBFF8014FC6C13FF6C14C015F06C6C7F011F7F13079038007FFE140314010038
1300157EA2123C153E157E007C147CA2007E147815F8007F495A4A5A486C485A26F9E01F
C7FC38E0FFFC38C01FE0222A7DA824>I<EB0380A4130791C7FCA25BA25BA2133EA2137E
13FE12011207001FB512C0B6FCA2D801FCC7FCA312035BA512075BA5120F5BA41407001F
130E13C0A4141E141C1380A26D5AA2000F5B14F03807E1E03801FF80D8007EC7FC1A3978
B723>I<01FE147F00FFEC7FFF4914FEA20007140300031401A34914FCA4150312074914
F8A41507120F4914F0A4150F121F4914E0A2151FA3153F4914C0157F15FFEC01DF3A0FC0
03BFE09138073FFF3803F01E3801FFF826003FE01380282977A733>I<B539E007FFF05D
17E02707FE000313006C48EB01FC6F5A5E00014A5A5EA24B5A6D1307000092C7FC5D150E
6D5B7F5DA25D1480013F5B14815D14C3011F5B02C7C8FCA214CE14EEEB0FFCA25CA26D5A
5CA25CA26D5A2C2878A630>I<B500C3B53803FFFCA204FE14F8290FFE003FE00013C0D8
07F86D48EB7F000003173E183C150F18386D5E0001141F705B153F4D5A15776D4B5A0000
ECE7F04DC7FCEC01C3170E9038FF0383017F5D91380703F85FEC0E01021E5CD93F9C14F0
02BC6D5A02B813FDDAF8005B4A13FF5F6D5A94C8FC5C4A137E167C6DC7FC1678010E1438
3E2878A642>I<48B539C07FFFC0A33C000FFE003FF8006D48EB1FE0010315800101023E
C7FC6E133C01005C027F5B6F5A91383F81C0EDC380DA1FC7C8FC15EFEC0FFE6E5A5D1403
81A24A7E140FEC1E7F023C7FEC383F02707FECE01F010180903803C00F49486C7ED90F00
7F491303017E80D801FE80D807FF497EB5D8803F13F8A332277FA630>I<90B539E007FF
F05E18E0902707FE000313006D48EB01FC705A5F01014A5A5F16036E5C0100140794C7FC
160E805E805E1678ED8070023F13F05EED81C015C191381FC38015C793C8FC15EF15EEEC
0FFCA25DA26E5AA25DA26E5A5DA24AC9FC5C140E141E141C5C121C003F5B5A485B495A13
0300FE5B4848CAFCEA701EEA783CEA3FF0EA0FC0343A80A630>I
E /Ff 78 125 df<4AB4EB0FE0021F9038E03FFC913A7F00F8FC1ED901FC90383FF03FD9
07F090397FE07F80494801FF13FF4948485BD93F805C137F0200ED7F00EF003E01FE6D91
C7FC82ADB97EA3C648C76CC8FCB3AE486C4A7E007FD9FC3FEBFF80A339407FBF35>11
D<4AB4FC021F13C091387F01F0903901FC0078D907F0131C4948133E494813FF49485A13
7F1400A213FE6F5A163893C7FCAA167FB8FCA33900FE00018182B3AC486CECFF80007FD9
FC3F13FEA32F407FBF33>I<4AB47E021F13F791387F00FFEB01F8903807F001EB0FE0EB
1FC0EB3F80137F14008101FE80AEB8FCA3C648C77EB3AE486CECFF80007FD9FC3F13FEA3
2F407FBF33>I<4AB4ECFF80021FD9C00F13E0913B7F01F03F80F8903C01F80078FE003C
D907F0D93FF8130E49484948131F49484948EB7F804948484913FF137F02005CA201FE92
C7FC6FED7F0070141C96C7FCAAF13F80BBFCA3C648C76CC7FC197F193FB3AC486C4A6CEB
7FC0007FD9FC3FD9FE1FB5FCA348407FBF4C>I<121EEA7F80EAFFC0A9EA7F80ACEA3F00
AC121EAB120CC7FCA8121EEA7F80A2EAFFC0A4EA7F80A2EA1E000A4179C019>33
D<121EEA7F8012FF13C0A213E0A3127FEA1E601200A413E013C0A312011380120313005A
120E5A1218123812300B1C79BE19>39 D<1430147014E0EB01C0EB03801307EB0F00131E
133E133C5B13F85B12015B1203A2485AA2120F5BA2121F90C7FCA25AA3123E127EA6127C
12FCB2127C127EA6123E123FA37EA27F120FA27F1207A26C7EA212017F12007F13787F13
3E131E7FEB07801303EB01C0EB00E014701430145A77C323>I<12C07E12707E7E121E7E
6C7E7F12036C7E7F12007F1378137CA27FA2133F7FA21480130FA214C0A3130714E0A613
0314F0B214E01307A614C0130FA31480A2131F1400A25B133EA25BA2137813F85B12015B
485A12075B48C7FC121E121C5A5A5A5A145A7BC323>I<121EEA7F8012FF13C0A213E0A3
127FEA1E601200A413E013C0A312011380120313005A120E5A1218123812300B1C798919
>44 D<B512FEA617067F961E>I<121EEA7F80A2EAFFC0A4EA7F80A2EA1E000A0A798919>
I<ED0180ED03C01507A21680150FA216005DA2151E153EA2153C157CA2157815F8A25D14
01A25D1403A25D1407A25D140FA24AC7FCA2141E143EA2143C147CA2147814F8A25C1301
A25C1303A25C1307A25C130FA291C8FC5BA2131E133EA25BA2137813F8A25B1201A25B12
03A25B1207A25B120FA290C9FC5AA2121E123EA2123C127CA2127812F8A25A1260225B7B
C32D>I<EB01FE90380FFFC090383F03F090387C00F849137C48487F48487F4848EB0F80
A2000F15C04848EB07E0A3003F15F0A290C712034815F8A64815FCB3A26C15F8A56C6CEB
07F0A3001F15E0A36C6CEB0FC0A26C6CEB1F80000315006C6C133E6C6C5B017C5B90383F
03F090380FFFC0D901FEC7FC263F7DBC2D>I<EB01C013031307131F137FEA07FFB5FC13
9FEAF81F1200B3B3ACEB7FF0B612F8A31D3D78BC2D>I<EB07FC90383FFF8090B512E039
03F01FF83907C007FC390F0001FE001E6D7E001C1580003CEC7FC05AED3FE01270B4FC6D
EB1FF07FA56C5A6CC7FC120CC813E0153FA216C0157F168015FF16004A5A5D4A5A4A5A5D
4A5A4A5A4AC7FC147E147C5C495A495A495A495A49C71270133E133C5B4914E0485A485A
485A48C7120148B6FCA25A4815C0B7FCA3243D7CBC2D>I<EB07FC90383FFF809038F80F
E03901E003F839078001FCD80F007F000E6D7E001E1580D81F80137F486C14C07FA27F5B
A2121F6C5AC8138015FF1600A24A5AA24A5A5DEC07E04A5A023FC7FCEB1FFCECFF809038
000FE0EC07F86E7E6E7E6E7E1680ED7FC0A216E0153FA216F0A2120C123F487E487EA316
E0A249137F6CC713C01278EDFF807E6C4913006C495A3907C007FC3903F80FF0C6B55A01
3F1380D907F8C7FC243F7CBC2D>I<150E151E153EA2157EA215FE1401A21403EC077E14
06140E141CA214381470A214E0EB01C0A2EB0380EB0700A2130E5BA25B5BA25B5B120148
5A90C7FC5A120E120C121C5AA25A5AB8FCA3C8EAFE00AC4A7E49B6FCA3283E7EBD2D>I<
00061403D80780131F01F813FE90B5FC5D5D5D15C092C7FC14FCEB3FE090C9FCACEB01FE
90380FFF8090383E03E090387001F8496C7E49137E497F90C713800006141FC813C0A216
E0150FA316F0A3120C127F7F12FFA416E090C7121F12FC007015C012780038EC3F80123C
6CEC7F00001F14FE6C6C485A6C6C485A3903F80FE0C6B55A013F90C7FCEB07F8243F7CBC
2D>I<EC1FE0ECFFF8903803F03E90380FC00F90391F000780133E017EEB1FC049133F48
48137F12035B12074848EB3F80ED1F00001F91C7FC5BA2123FA3485AA214FE903887FF80
39FF8F07E090389C01F09038B800FC01B0137E13F0497F16804914C0A2ED1FE0A34914F0
A5127FA6123F6D14E0A2121FED3FC0A26C6C1480A20007EC7F006C6C137E6C6C5B6C6C48
5A90387E07F06DB45A010F1380D903FCC7FC243F7CBC2D>I<1238123C123F90B612FCA3
16F85A16F016E00078C712010070EC03C0ED078016005D48141E151C153C5DC8127015F0
4A5A5D14034A5A92C7FC5C141EA25CA2147C147814F8A213015C1303A31307A3130F5CA2
131FA6133FAA6D5A0107C8FC26407BBD2D>I<EB03FC90381FFF8090387C07E09038F001
F83901E0007C48487F48487F48C7FCED0F80121E16C0003E1407A4123FA26DEB0F807F6C
6C131F6D140001FC133E6C6C5B9038FF80786C6D5A6CEBF3E06CEBFF806C91C7FC133F6D
13C06D7F013F13F801787F48486C7E3903E01FFF48486C1380260F800313C048487E4890
38007FE0003E143F007E141F007CEC0FF01507481403A31501A46C15E0007C1403A2007E
15C06C14076CEC0F806DEB1F006C6C133ED807F05B3901FC03F86CB512E0011F1380D903
FCC7FC243F7CBC2D>I<EB03FCEB1FFF90387E07C09038FC03F048486C7E48486C7E4848
137C000F147E4848137F81003F15805B007F15C0A2151F12FF16E0A516F0A5127F153FA3
6C7EA2001F147F120F6C6C13FF6D13DF000313013900F8039F90387E0F1FD91FFE13E0EB
07F090C7FCA2ED3FC0A41680157FD80F801400487E486C13FEA24A5A5D49485AEB800739
1E000FE0001F495A260FC07FC7FC3803FFFE6C13F838003FC0243F7CBC2D>I<121EEA7F
80A2EAFFC0A4EA7F80A2EA1E00C7FCB3121EEA7F80A2EAFFC0A4EA7F80A2EA1E000A2779
A619>I<121EEA7F80A2EAFFC0A4EA7F80A2EA1E00C7FCB3121E127FEAFF80A213C0A412
7F121E1200A412011380A3120313005A1206120E120C121C5A1230A20A3979A619>I<EB
1FF890B5FC3903E01FC0390F0007F0001EEB03F848EB01FC4814FE140000FE14FF7E7FA4
6CC7FC123EC7EA01FEA2EC03FCEC07F815F0EC0FC0EC1F80EC3F00143E5C147814F85C13
015CA2495AA25CAB91C7FC90C8FCA8EB0780EB1FE0A2497EA46D5AA2EB078020407BBF2B
>63 D<15074B7EA34B7EA34B7EA34B7EA34B7E15E7A2913801C7FC15C3A291380381FEA3
4AC67EA3020E6D7EA34A6D7EA34A6D7EA34A6D7EA34A6D7EA349486D7E91B6FCA2498191
38800001A249C87EA24982010E157FA2011E82011C153FA2013C820138151FA201788217
0F13FC00034C7ED80FFF4B7EB500F0010FB512F8A33D417DC044>65
D<B712FCEEFF8017F00001903980000FF86C6CC7EA03FE707E701380EF7FC0EF3FE0A2EF
1FF0A218F8A3170F171FA318F0A2EF3FE0177F18C0EFFF804C1300EE03FCEE0FF8EE7FE0
91B6C7FC17E091C7EA07FCEE01FE933800FF80EF7FC0EF3FE0EF1FF018F8170F18FC1707
A218FEA718FC170FA2EF1FF818F0173FEF7FE0EFFFC00403138048486C90380FFE00B85A
17E094C7FC373E7DBD40>I<DB3FF01306912603FFFE130E020F9038FF801E913A3FF007
E03E9139FF8000F8D903FEC7EA7C7ED907F8EC1EFE4948140FD93FE0140749481403495A
91C812014848150012034848167E5B000F173EA24848161EA2123F5B180E127FA3491600
12FFAC127F7F180EA2123FA27F001F171E181C6C7EA20007173C6D16386C6C1678000117
706C6C16F06EEC01E06D6C15C06D6C1403D90FF0EC07806D6CEC1F00D903FE143E902600
FF8013F891393FF007F0020FB512C0020391C7FC9138003FF037427BBF42>I<B712FCEE
FF8017E000019039C0001FF86C6C48EB03FEEE00FF717E717EEF0FE084717E717E170184
717EA21980187F19C0A3F03FE0A519F0AB19E0A5F07FC0A21980A218FF19004D5AA24D5A
6017074D5A4D5AEF7FC04DC7FCEE03FE48486CEB1FF8B85A178004FCC8FC3C3E7DBD45>
I<B912E0A300019038C000016C6C48EB001FEF0FF01703A217011700A31870A41838161C
A41800A2163CA2167C16FC150391B5FCA3EC80031500167C163CA2161CA21807A3180E93
C7FCA4181E181CA2183CA2187CA218F8170117031707171F48486CEB01FFB912F0A3383E
7DBD3E>I<B91280A300019038C000036C6C48EB007FEF1FC0170F1707A21703A31701A4
EF00E0A21638A31800A31678A216F81501150791B5FCA3EC8007150115001678A21638A6
93C8FCAF3801FFE0B612F0A3333E7DBD3B>I<DB3FE0130C912603FFFE131C021F9038FF
803C913A7FF00FC07C9139FF0001F0D903FC90380078FC4948143DD91FE0141F4948140F
4948140701FF15034890C8FC491501485A000716005B000F177C5B001F173CA2485AA218
1C127FA25B95C7FC12FFAB041FB512F0127FA26D9139000FFE00EF03FC123FA27F121FA2
6C7EA212077F12036C7E7F6C7F6D6C14076D7E6D6C140FD907F8141ED903FEEC3C7C9026
00FF80EBF83C913A7FF007F01C021FB5EAC00C020391C8FC9138003FF03C427BBF47>I<
B6D8C01FB512F8A3000101E0C7383FFC0026007F80EC0FF0B3A691B7FCA30280C7120FB3
A92601FFE0EC3FFCB6D8C01FB512F8A33D3E7DBD44>I<B612F0A3C6EBF000EB3FC0B3B3
B2EBFFF0B612F0A31C3E7EBD21>I<B600C090387FFFFCA3000101E0C7000F138026007F
80913807FE0018F818E0604D5A4DC7FC173E5F5F4C5A4C5A4C5A4C5A4CC8FC163E5E5E4B
5A4B5AED07804B7E151F4B7E4B7E15FF913881EFF8913883C7FCEC878791388F03FE9138
9E01FF14BCDAF8007F4A6D7E5C4A6D7E4A6D7EA2707E707EA2707E707EA2707F717E8417
3F717E717EA2717E848419802601FFE04A13C0B600C090B6FCA3403E7DBD47>75
D<B612F8A3000101E0C9FC38007F80B3B0EF0380A517071800A45FA35FA25F5F5F4C5A16
0748486C133FB8FCA3313E7DBD39>I<B500C093383FFFF0A300016D93387FF800D8007F
18E0D977F016EFA3D973F8ED01CFA2D971FCED038FA3D970FEED070FA26E150E80A26E6C
141CA36E6C1438A26E6C1470A36E6C14E0A26E6CEB01C0A36E6CEB0380A36E6CEB0700A2
037F130EA36F6C5AA26F6C5AA36F6C5AA25FED07F0A2923803F9C0A36FB45AA26F90C7FC
A213F8486C147ED807FFEF3FF8B500F8013C011FB512F0A34C3E7DBD53>I<B56C91B512
F88080D8007F030713006EEC01FC6E6E5A1870EB77FCEB73FEA2EB71FF01707FA26E7E6E
7EA26E7E6E7EA26E7E6E7EA26E7E6E7FA26F7E6F7EA26F7E6F7EA26F7E6F7EA26F7E6F13
80A2EE7FC0EE3FE0A2EE1FF0EE0FF8A2EE07FCEE03FEA2EE01FF7013F0A2177F173FA217
1F170FA2170701F81503487ED807FF1501B500F81400A218703D3E7DBD44>I<ED7FE091
3807FFFE91391FC03F8091397E0007E04948EB03F8D907F0EB00FE4948147F49486E7E49
486E7E49C86C7E01FE6F7E00018349150300038348486F7EA248486F7EA2001F18804916
7F003F18C0A3007F18E049163FA300FF18F0AC007F18E06D167FA4003F18C0A26C6CEEFF
80A36C6C4B1300A26C6C4B5A00035F6D150700015F6C6C4B5A6D5E6D6C4A5A6D6C4A5A6D
6C4AC7FC6D6C14FED901FCEB03F8D9007FEB0FE091391FC03F80912607FFFEC8FC913800
7FE03C427BBF47>I<B712F8EEFF8017E000019039C0003FF86C6C48EB07FCEE01FE707E
EF7F80EF3FC018E0A2EF1FF0A218F8A818F0A2EF3FE0A218C0EF7F80EFFF004C5AEE07FC
EE3FF091B612C04CC7FC0280C9FCB3A73801FFE0B612C0A3353E7DBD3E>I<B712C016FC
EEFF800001D9C00013E06C6C48EB1FF0EE07FCEE01FE707E84717EA2717EA284A760177F
606017FF95C7FCEE01FCEE07F8EE1FE0EEFF8091B500FCC8FC16F091388001FCED003FEE
1FC0707E707E83160383160183A383A484A4F0C004190EA28218E0057F131E2601FFE016
1CB600C0EB3FF094381FF83805071370CA3801FFE09438003F803F407DBD43>82
D<D907FC130C90391FFF801C017FEBF03C3901FC03F83A03F0007E7CD807C0EB1FFC4848
130F001F140748C71203003E1401007E1400A2007C157C12FCA2163CA36C151CA27EA26C
6C14007F7FEA3FF8EBFF806C13F86CEBFF806C14F06C14FC6C14FF6C15C0013F14E00107
14F0EB007F020713F89138007FFC150FED07FE15031501ED00FFA200E0157FA3163FA27E
A3163E7E167E6C157C6C15FC6C15F86D13016DEB03F06DEB07E0D8F9FCEB0FC03AF07F80
3F8090391FFFFE00D8E00713F839C0007FC028427BBF33>I<003FB91280A3903AF0007F
E001018090393FC0003F48C7ED1FC0007E1707127C00781703A300701701A548EF00E0A5
C81600B3B14B7E4B7E0107B612FEA33B3D7DBC42>I<B600C090B512F8A3000101E0C700
07130026007F80EC01FC715A1870B3B3A4013F16F06E5DA21701011F5E80010F15036E4A
5A010793C7FC6D6C5C6D6C141E6D6C5C027F14F86E6C485A91390FF00FE00203B5128002
0049C8FCED1FF03D407DBD44>I<B691380FFFFEA3000301E0020113E06C01809138007F
806CEF3F00017F163E181C6E153C013F1638A26E1578011F1670A26D6C5DA26E14010107
5EA26E140301035EA26D6C4AC7FCA2806D150EA26F131E027F141CA26F133C023F1438A2
6E6C5BA26F13F0020F5CA2EDF80102075CA26E6C485AA2EDFE07020191C8FCA26F5A6E13
0EA2ED7F9CA216DCED3FF8A36F5AA36F5AA26F5AA36F5A3F407EBD44>I<B500FE017FB5
D88007B5FCA3000301C0010101E0C713F86C90C849EC3FE07148EC0F807E7215006E143F
017F190E84A26D6C60A24D7E6D6C60A2EFE7F86D6C60A2933801C3FC6E18F00107610403
7F6E0281140101036104077F17006D6C4D5AA2040EEB7F806D6C4DC7FCA24CEB3FC0DA7F
80160EA24CEB1FE003C0161E023F171C047814F0DBE070010F133C021F173804F014F84C
1307DA0FF05EA2DBF1C0EB03FCDA07F95EA2DBFB80EB01FEDA03FF6F5AA293C8FCA26E5F
A24B157F020094C8FCA24B81037C153EA20378151E0338151C58407EBD5D>I<007FB5D8
C003B512E0A3C649C7EBFC00D93FF8EC3FE06D48EC1F806D6C92C7FC171E6D6C141C6D6C
143C5F6D6C14706D6D13F04C5ADA7FC05B023F13036F485ADA1FF090C8FC020F5BEDF81E
913807FC1C163C6E6C5A913801FF7016F06E5B6F5AA26F7E6F7EA28282153FED3BFEED71
FF15F103E07F913801C07F0203804B6C7EEC07004A6D7E020E6D7E5C023C6D7E02386D7E
14784A6D7E4A6D7F130149486E7E4A6E7E130749C86C7E496F7E497ED9FFC04A7E00076D
EC7FFFB500FC0103B512FEA33F3E7EBD44>I<EAFFFCA4EAF000B3B3B3B3ABEAFFFCA40E
5B77C319>91 D<EAFFFCA4EA003CB3B3B3B3ABEAFFFCA40E5B7FC319>93
D<EA0180120313005A120E5A12181238123012701260A312E05AA412CFEAFFC013E0A312
7FA2123F13C0EA0F000B1C7ABE19>96 D<EB0FF8EBFFFE3903F01F8039078007E0000F6D
7E9038E001F8D81FF07F6E7EA3157F6C5AEA0380C8FCA4EC1FFF0103B5FC90381FF87FEB
7F803801FC00EA07F8EA0FE0485A485AA248C7FCEE038012FEA315FFA3007F5BEC03BF3B
3F80071F8700261FC00E13CF3A07F03C0FFE3A01FFF807FC3A003FC001F0292A7DA82D>
I<EA01FC12FFA3120712031201B1EC03FC91381FFF8091387C07E09039FDE001F09039FF
C000FC4A137E91C77E49158049141F17C0EE0FE0A217F0A2160717F8AA17F0A2160FA217
E0161F17C06D1580EE3F006D5C6E13FE9039F3C001F89039F1E003F09039E0780FC09026
C03FFFC7FCC7EA07F82D407EBE33>I<49B4FC010F13E090383F00F8017C131E4848131F
4848137F0007ECFF80485A5B121FA24848EB7F00151C007F91C7FCA290C9FC5AAB6C7EA3
003FEC01C07F001F140316806C6C13076C6C14000003140E6C6C131E6C6C137890383F01
F090380FFFC0D901FEC7FC222A7DA828>I<ED01FC15FFA3150715031501B114FF010713
E190381F80F990387E003D49131FD803F81307485A49130348481301121F123F5B127FA2
90C7FCA25AAA7E7FA2123FA26C7E000F14037F000714076C6C497E6C6C497ED8007C0179
13F890383F01F190380FFFC1903A01FE01FC002D407DBE33>I<EB01FE90380FFFC09038
3F03F09038FC01F848486C7E4848137E48487F000F158049131F001F15C04848130FA212
7F16E090C7FCA25AA290B6FCA290C9FCA67EA27F123F16E06C7E1501000F15C06C6C1303
6DEB07806C6C1400C66C131E017E5B90381F80F8903807FFE0010090C7FC232A7EA828>
I<EC1FC0EC7FF8903801F83C903807E07E90380FC0FFEB1FC1EB3F811401137FEC00FE01
FE137C1500AEB6FCA3C648C7FCB3AE487E007F13FFA320407EBF1C>I<167C903903F801
FF903A1FFF078F8090397E0FDE1F9038F803F83803F001A23B07E000FC0600000F6EC7FC
49137E001F147FA8000F147E6D13FE00075C6C6C485AA23901F803E03903FE0FC026071F
FFC8FCEB03F80006CAFC120EA3120FA27F7F6CB512E015FE6C6E7E6C15E06C810003813A
0FC0001FFC48C7EA01FE003E140048157E825A82A46C5D007C153E007E157E6C5D6C6C49
5A6C6C495AD803F0EB0FC0D800FE017FC7FC90383FFFFC010313C0293D7EA82D>I<EA01
FC12FFA3120712031201B1EC01FE913807FFC091381E07E091387803F09138E001F8D9FD
C07F148001FF6D7E91C7FCA25BA25BB3A6486C497EB5D8F87F13FCA32E3F7DBE33>I<EA
01E0EA07F8A2487EA46C5AA2EA01E0C8FCACEA01FC127FA3120712031201B3AC487EB512
F0A3143E7DBD1A>I<1478EB01FEA2EB03FFA4EB01FEA2EB00781400AC147FEB7FFFA313
017F147FB3B3A5123E127F38FF807E14FEA214FCEB81F8EA7F01387C03F0381E07C0380F
FF803801FC00185185BD1C>I<EA01FC12FFA3120712031201B292B51280A392383FFC00
16E0168093C7FC153C5D5D4A5AEC07C04A5A4AC8FC143E147F4A7E13FD9038FFDFC0EC9F
E0140F496C7E01FC7F496C7E1401816E7E81826F7E151F826F7EA282486C14FEB539F07F
FFE0A32B3F7EBE30>I<EA01FC12FFA3120712031201B3B3B1487EB512F8A3153F7DBE1A>
I<2701F801FE14FF00FF902707FFC00313E0913B1E07E00F03F0913B7803F03C01F80007
903BE001F87000FC2603F9C06D487F000101805C01FBD900FF147F91C75B13FF4992C7FC
A2495CB3A6486C496CECFF80B5D8F87FD9FC3F13FEA347287DA74C>I<3901F801FE00FF
903807FFC091381E07E091387803F000079038E001F82603F9C07F0001138001FB6D7E91
C7FC13FF5BA25BB3A6486C497EB5D8F87F13FCA32E287DA733>I<14FF010713E090381F
81F890387E007E01F8131F4848EB0F804848EB07C04848EB03E0000F15F04848EB01F8A2
003F15FCA248C812FEA44815FFA96C15FEA36C6CEB01FCA3001F15F86C6CEB03F0A26C6C
EB07E06C6CEB0FC06C6CEB1F80D8007EEB7E0090383F81FC90380FFFF0010090C7FC282A
7EA82D>I<3901FC03FC00FF90381FFF8091387C0FE09039FDE003F03A03FFC001FC6C49
6C7E91C7127F49EC3F805BEE1FC017E0A2EE0FF0A3EE07F8AAEE0FF0A4EE1FE0A2EE3FC0
6D1580EE7F007F6E13FE9138C001F89039FDE007F09039FC780FC0DA3FFFC7FCEC07F891
C9FCAD487EB512F8A32D3A7EA733>I<02FF131C0107EBC03C90381F80F090397F00387C
01FC131CD803F8130E4848EB0FFC150748481303121F485A1501485AA448C7FCAA6C7EA3
6C7EA2001F14036C7E15076C6C130F6C7E6C6C133DD8007E137990383F81F190380FFFC1
903801FE0190C7FCAD4B7E92B512F8A32D3A7DA730>I<3901F807E000FFEB1FF8EC787C
ECE1FE3807F9C100031381EA01FB1401EC00FC01FF1330491300A35BB3A5487EB512FEA3
1F287EA724>I<90383FC0603901FFF8E03807C03F381F000F003E1307003C1303127C00
78130112F81400A27E7E7E6D1300EA7FF8EBFFC06C13F86C13FE6C7F6C1480000114C0D8
003F13E0010313F0EB001FEC0FF800E01303A214017E1400A27E15F07E14016C14E06CEB
03C0903880078039F3E01F0038E0FFFC38C01FE01D2A7DA824>I<131CA6133CA4137CA2
13FCA2120112031207001FB512C0B6FCA2D801FCC7FCB3A215E0A912009038FE01C0A2EB
7F03013F138090381F8700EB07FEEB01F81B397EB723>I<D801FC14FE00FF147FA30007
14030003140100011400B3A51501A31503120015076DEB06FF017E010E13806D4913FC90
381FC078903807FFE00100903880FE002E297DA733>I<B539E00FFFE0A32707FE000313
006C48EB00FC5E00015D7F00005DA26D13016D5CA26D6C485AA2ECC007011F91C7FCA290
380FE00EA2ECF01E0107131CA26D6C5AA2ECFC7801011370A2ECFEF001005BA2EC7FC0A3
6E5AA26EC8FCA3140E2B287EA630>I<B53BC3FFFE03FFF8A3290FFE003FE00013C06C48
6D48EB3F806C4817006D010F141E00016F131C15076D163C00004A6C1338A2017F5E4B7E
151DD93F805DED3DFC1538D91FC04A5AED78FE9238707E03D90FE0017F5BEDE03F02F014
0701070387C7FC9138F1C01F02F9148F010315CE9138FB800F02FF14DE6D15FCED00076D
5DA24A1303027E5CA2027C1301023C5C023813003D287EA642>I<B539F01FFFE0A30003
D9C00F1300C690388007F8D97F0013E002805BD93FC05B011F49C7FC90380FE00EECF01E
6D6C5A01035B6D6C5A6E5AEB00FF6E5A6E5A81141F814A7E81147BECF1FC903801E1FEEC
C0FF01037F49486C7ED90F007F011E6D7E013E130F496D7E01FC80486C80000F4A7EB539
803FFFF8A32D277FA630>I<B539E00FFFE0A32707FE000313006C48EB01FC6F5A00015D
7F00005DA2017F495AA2EC8003013F5CA26D6C48C7FCA26E5A010F130EA26D6C5AA2ECF8
3C01031338A26D6C5AA2ECFEF001005BA2EC7FC0A36E5AA36EC8FCA2140EA2141E141C14
3C1438A2147800181370127EB45BA2495AA248485AD87E07C9FCEA780EEA3C3CEA1FF8EA
07E02B3A7EA630>I<001FB61280A2EBE0000180140049485A001E495A121C4A5A003C49
5A141F00385C4A5A147F5D4AC7FCC6485AA2495A495A130F5C495A90393FC00380A2EB7F
80EBFF005A5B484813071207491400485A48485BA248485B4848137F00FF495A90B6FCA2
21277EA628>I<B812F0A22C0280982D>I<BE12C0A25A0280985B>I
E /Fg 34 120 df<19F0F001F8F003FCA3180719F8180FA219F0181F19E0183FA219C018
7F198018FFA219005F601703A260170760170FA260171F60173FA260177F6017FFA295C7
FC5E5F1603A25F16075F160FA25F161F5F163FA25F167F5F16FFA294C8FC5D5E1503A25E
15075E150FA25E151F5EA2153F5E157FA25E15FF93C9FC5CA25D14035D1407A25D140F5D
141FA25D143F5D147FA25D14FF92CAFC5BA25C13035C1307A25C130F5C131FA25C133F5C
137FA25C13FF91CBFC5AA25B12035B1207A25B120F5B121FA25B123F5B127FA25B12FF90
CCFCA3127E123C3E9077EB51>47 D<16F04B7E1507151F153FEC01FF1407147F010FB5FC
B7FCA41487EBF007C7FCB3B3B3B3007FB91280A6395E74DD51>49
D<913801FFF8021FEBFFC091B612F8010315FF010F16C0013F8290267FFC0114F89027FF
E0003F7F4890C7000F7F48486E7FD807F86E148048486E14C048486E14E048486F13F001
FC17F8486C816D17FC6E80B56C16FE8380A219FFA283A36C5BA26C5B6C90C8FCD807FC5D
EA01F0CA14FEA34D13FCA219F85F19F04D13E0A294B512C019804C14004C5B604C5B4C5B
604C13804C90C7FC4C5A4C5A4B13F05F4B13804B90C8FC4B5AED1FF84B5A4B5A4B48143F
4A5B4A48C8FC4A5A4A48157E4A5A4A5AEC7F8092C9FC02FE16FE495A495A4948ED01FCD9
0FC0150749B8FC5B5B90B9FC5A4818F85A5A5A5A5ABAFCA219F0A4405E78DD51>I<92B5
FC020F14F8023F14FF49B712C04916F0010FD9C01F13FC90271FFC00077FD93FE001017F
49486D8049C86C7F484883486C6F7F14C0486D826E806E82487FA4805CA36C5E4A5E6C5B
6C5B6C495E011FC85A90C95CA294B55A614C91C7FC604C5B4C5B4C5B4C5B047F13809226
0FFFFEC8FC020FB512F817E094C9FC17F817FF91C7003F13E0040713F8040113FE707F71
7F7113E085717FA2717F85A285831A80A31AC0EA03FCEA0FFF487F487F487FA2B57EA31A
80A34D14005C7E4A5E5F6C495E49C8485BD81FF85F000F5ED807FE92B55A6C6C6C491480
6C01F0010791C7FC6C9026FF803F5B6D90B65A011F16F0010716C001014BC8FCD9001F14
F0020149C9FC426079DD51>I<F01F804E7E187F18FFA25F5F5F5FA25F5F5FA294B5FC5E
5E5EA25E5EEE3FBFEE7F3FA216FEED01FCED03F8ED07F0A2ED0FE0ED1FC0ED3F8016005D
15FE4A5A4A5AA24A5A4A5A4A5A4A5AA24AC7FC14FE495A5C1303495A495A495A5C133F49
C8FC13FE485AA2485A485A485A5B121F485A48C9FC12FEBCFCA6CA6CEBC000B1037FB8FC
A6485E7CDD51>I<01C0EE01C0D801F8160F01FF167F02F0EC07FFDAFF8090B5FC92B712
8019006060606060606095C7FC17FC5F17E0178004FCC8FC16E09026FC3FFCC9FC91CBFC
ADED3FFE0203B512F0020F14FE023F6E7E91B712E001FDD9E00F7F9027FFFE00037F02F8
01007F02E06EB4FC02806E138091C8FC496F13C04917E07113F0EA00F090C914F8A219FC
83A219FEA419FFA3EA03F0EA0FFC487E487E487FA2B57EA319FEA35C4D13FC6C90C8FC5B
4917F8EA3FF001804B13F06D17E0001F5E6C6C17C06D4B1380D807FC92B512006C6C4A5B
6C6C6C01075B6C01E0011F5BD97FFE90B55A6DB712C0010F93C7FC6D15FC010115F0D900
3F1480020301F0C8FC406078DD51>I<F00FE04E7EA24E7EA34E7EA24E7EA34D7FA24D80
A24D80A34D80A24D80A34D80A2DD7FBF7FA2181F05FF8017FE04016D7FA24D7E04038217
F804076D80A24D7E040F8217E0041F6D80A24D7F043F825F047F6E7FA294C77E4C825E03
016F7FA24C800303845E03076F80A24C80030F845E031F6F80A24C81033F845E037F707F
93B9FCA292BA7EA24A85A203FCC912070203865D020771805D86020F864B82021F865D87
023F864B83027F8692CBFC874A864A840101875C496C728090381FFFC0B700E092B812FE
A66F647BE37A>65 D<4DB5ED03C0057F02F014070407B600FE140F047FDBFFC0131F4BB8
00F0133F030F05FC137F033F9127F8007FFE13FF92B6C73807FF814A02F0020113C30207
02C09138007FE74A91C9001FB5FC023F01FC16074A01F08291B54882490280824991CB7E
49498449498449498449865D49498490B5FC484A84A2484A84A24891CD127FA25A4A1A3F
5AA348491A1FA44899C7FCA25CA3B5FCB07EA380A27EA2F50FC0A26C7FA37E6E1A1F6C1D
80A26C801D3F6C6E1A00A26C6E616D1BFE6D7F6F4E5A7F6D6D4E5A6D6D4E5A6D6D4E5A6D
6E171F6D02E04D5A6E6DEFFF806E01FC4C90C7FC020F01FFEE07FE6E02C0ED1FF8020102
F8ED7FF06E02FF913803FFE0033F02F8013F1380030F91B648C8FC030117F86F6C16E004
071680DC007F02F8C9FC050191CAFC626677E375>67 D<4DB5ED03C0057F02F014070407
B600FE140F047FDBFFC0131F4BB800F0133F030F05FC137F033F9127F8007FFE13FF92B6
C73807FF814A02F0020113C3020702C09138007FE74A91C9001FB5FC023F01FC16074A01
F08291B54882490280824991CB7E49498449498449498449865D49498490B5FC484A84A2
484A84A24891CD127FA25A4A1A3F5AA348491A1FA44899C8FCA25CA3B5FCB07E071FB812
F880A37EA296C70001ECC000A26C7FA37E807EA26C80A26C80A26C807F6D7F816D7F7F6D
7F6D6D5F6D14C06D6E5E6E7F6E01FC5E020F01FF5E6E02C0ED7FEF020102F8EDFFC76E02
FF02071383033F02FC013F1301030F91B638FC007F03014D131F6F6C04E0130704070480
1301DC007F02F8CAFC050191CBFC6D6677E37F>71 D<B96C90B91280A6D8000102C0C900
0102C0C7FCB3B3A293BBFCA604C0C91201B3B3A6B96C90B91280A671627AE17E>I<B912
E0A6C702E0C7FCB3B3B3B3AEB912E0A633627CE13C>I<B700E0040FB7128082828282A2
D800016EDC000101FCC7FC719338001FC08383A28302FD808302FC80816F7F6F806F8084
816F806F806F8084707F8270807080857080827080708085717F83718071807180868371
807180727F8672808472807280877280847280737F87731480857314C07314E01CF07314
F8857314FC7413FE7413FF1D9F867414DF7414FF86A286868787A287878787A287878888
88A288888890261FFFC084B712F8881D7F1D3F1D1F775A71627AE17E>78
D<94381FFFE00407B67E043F15F04BB712FE030FEEFFC0033FD9FC0014F092B500C0010F
13FC020349C7000113FF4A01F86E6C7F021F496F13E04A01C0030F7F4A496F7F91B5C96C
7F0103497013FF494970804B834949717F49874949717F49874B8390B586484A717FA248
91CB6C7FA2481D804A84481DC0A348497214E0A3481DF0A34A85481DF8A5B51CFCB06C1D
F8A36E96B5FCA36C1DF0A46C6D4E14E0A36C1DC06E606C1D80A26C6E4D1400A26C6E4D5B
A26C6E4D5BA26D6D4D5B6D636D6D4D5B6F94B5FC6D636D6D4C5C6D6D4C91C7FC6D6E4B5B
6D02E0031F5B023F6D4B13F06E01FC92B55A6E01FF02035C020302C0010F91C8FC020002
FC90B512FC033F90B712F0030F17C0030394C9FCDB007F15F804071580DC001F01E0CAFC
666677E379>I<BB7E1AFCF2FFC01BF81BFE757ED800010280C7001F80070114F0736C7F
081F7F747F747F7414807414C0A27414E0A21DF0A27513F8A41DFCA91DF8A498B512F0A2
1DE0A25014C01D8062501400505B505B087F5B4FB512E0071F5C93B9C7FC1BFC1BF01B80
08F0C8FC04C0CCFCB3B3A2B97EA65E627AE16E>I<DBFFFCEC01E0020FD9FFE01303027F
02FC130749B7130F0107EEC01F011F16F049D9C007EBF83F4948C7383FFE7FD9FFF8020F
B5FC4801E014014849804849153F91C97E484882001F834982003F83845B007F187FA219
3FA200FF181FA27F190FA27FA26D17078080806C01F893C7FC80ECFF8015F86CECFFC016
FC6CEDFFE017FE6CEEFFE018F86C17FE6C717E6C846C846D17F86D836D836D8313036D18
806D6C17C0020F17E01401DA000F16F01500040715F8EE007F1703050014FC183F840607
13FE84A2007C8300FC83A2197FA3193F7EA31AFC7EA27F1AF86D177F7F1AF06D17FF6D18
E06D5E01FF18C06E4B138002E04B130002F84B5A02FFED3FFC01CF01E0ECFFF8018301FF
010F5B010191B65A6D6C5E48011F93C7FC48010315FC48D9003F14E048020149C8FC4766
77E35A>83 D<001FBEFCA64849C79126E0000F148002E0180091C8171F498601F81A0349
864986A2491B7FA2491B3F007F1DC090C9181FA4007E1C0FA600FE1DE0481C07A5CA95C7
FCB3B3B3A3021FBAFCA663617AE070>I<B800FC047FB612E0A6D800070280CB6CEB8000
6D6EDE07FCC7FC666D6E611D0F6D6E611D1FA26E6D611D3F6E6D611D7F6E6D96C8FC65A2
6E6D4D5AA26E6E5F1C036E6E5F1C076E6E5F1C0FA26E6E5F1C1F6F6D5F1C3F6F6D5F1C7F
A26F6D4CC9FCA26F6D5E1B016F6E5D1B03A26F6E4A5AA26F6E5D1B0F6F6E5D1B1F706D5D
1B3FA2706D5D1B7F706D92CAFC63706D5C1A01A2706E485AA27002C05B1A077002E05B1A
0F7002F05B1A1FA27101F85B1A3F7101FC5B1A7F7101FE90CBFC62A2716D5AA2715CA271
5CA3715CA2715CA2725BA2725BA37290CCFCA2725AA2725AA2725A73637DE17A>86
D<913803FFFE027FEBFFF00103B612FE010F6F7E4916E090273FFE001F7FD97FE001077F
D9FFF801017F486D6D7F717E486D6E7F85717FA2717FA36C496E7FA26C5B6D5AEB1FC090
C9FCA74BB6FC157F0207B7FC147F49B61207010F14C0013FEBFE004913F048B512C04891
C7FC485B4813F85A5C485B5A5CA2B55AA45FA25F806C5E806C047D7F6EEB01F96C6DD903
F1EBFF806C01FED90FE114FF6C9027FFC07FC01580000191B5487E6C6C4B7E011F02FC13
0F010302F001011400D9001F90CBFC49437CC14E>97 D<92380FFFF04AB67E020F15F002
3F15FC91B77E01039039FE001FFF4901F8010113804901E0010713C04901804913E0017F
90C7FC49484A13F0A2485B485B5A5C5A7113E0485B7113C048701380943800FE0095C7FC
485BA4B5FCAE7EA280A27EA2806C18FCA26C6D150119F87E6C6D15036EED07F06C18E06C
6D150F6D6DEC1FC06D01E0EC7F806D6DECFF00010701FCEB03FE6D9039FFC03FFC010091
B512F0023F5D020F1580020102FCC7FCDA000F13C03E437BC148>99
D<F17FF8050FB5FCA6EF000F8484B3A892380FFF804AB512F8020F14FE023FECFF8391B7
12E301039138807FF3499039F8000FFB011F01E00103B5FC494913004990C87E49488148
498148834A815A485BA2485BA25AA3485BA4B5FCAE7EA46C7FA37EA26C7FA26C5F806C5F
6C6D5D6C6D5D017F93B5FC6D6C6C0103806D6D49806D01F0D91FF7EBFFFE6D9039FE01FF
E7010190B612876D6CECFE07021F14F8020314E09127003FFE00ECC0004F657BE35A>I<
92380FFFC04AB512FC020FECFF80023F15E091B712F80103D9FE037F499039F0007FFF01
1F01C0011F7F49496D7F4990C76C7F49486E7F48498048844A804884485B727E5A5C4871
7EA35A5C721380A2B5FCA391B9FCA41A0002C0CBFCA67EA380A27EA27E6E160FF11F806C
183F6C7FF17F006C7F6C6D16FE6C17016D6C4B5A6D6D4A5A6D01E04A5A6D6DEC3FE00103
01FC49B45A6D9026FFC01F90C7FC6D6C90B55A021F15F8020715E0020092C8FC030713F0
41437CC14A>I<EE3FFC0307B51280033F14C04AB612F0020715F84A9038F03FFC4AEB80
7F913A7FFE00FFFE4A5A4B4813FF4913F05B4913E0A24913C0A27013FE4949EB7FFCEF3F
F8EF1FF0EF07C094C7FCB0B812C0A6D8001F01C0C8FCB3B3B0007FB612FCA638657CE431
>I<903807FF80B6FCA6C6FC7F7FB3A8EF1FFF94B512F0040714FC041F14FF4C8193267F
E07F7F922781FE001F7FDB83F86D7FDB87F07FDB8FC0814C7F039FC78015BE03BC8003FC
825DA25DA25DA45DB3B2B7D8F007B71280A651647BE35A>104 D<EB0FE0EB3FF8497E48
B5FCA24880A24880A76C5CA26C91C7FCA238007FFC6D5AEB0FE090C9FCAF903807FF8000
7FB5FCA6C6FC7F7FB3B3AEB712C0A622657BE42C>I<903807FF80B6FCA6C6FC7F7FB3B3
B3B3ADB712E0A623647BE32C>108 D<902607FF80EB1FFFB691B512F0040714FC041F14
FF4C8193267FE07F7F922781FE001F7FC6DA83F86D7F6DD987F07F6DD98FC0814C7F039F
C78015BE03BC8003FC825DA25DA25DA45DB3B2B7D8F007B71280A651417BC05A>110
D<923807FFE092B6FC020715E0021F15F8027F15FE494848C66C6C7E010701F0010F13E0
4901C001037F49496D7F4990C87F49486F7E49486F7E48496F13804819C04A814819E048
496F13F0A24819F8A348496F13FCA34819FEA4B518FFAD6C19FEA46C6D4B13FCA36C19F8
A26C6D4B13F0A26C19E06C6D4B13C0A26C6D4B13806C6D4B13006D6C4B5A6D6D495B6D6D
495B010701F0010F13E06D01FE017F5B010090B7C7FC023F15FC020715E0020092C8FC03
0713E048437CC151>I<902607FF80EBFFF8B6010FEBFF80047F14F00381B612FC038715
FF038F010114C09227BFF0003F7FC6DAFFC0010F7F6D91C76C7F6D496E7F03F86E7F4B6E
7F4B17804B6F13C0A27313E0A27313F0A21BF885A21BFCA3851BFEAE4F13FCA41BF861A2
1BF0611BE0611BC06F92B512801B006F5C6F4A5B6F4A5B03FF4A5B70495B04E0017F13C0
9226CFFC03B55A03C7B648C7FC03C115F803C015E0041F91C8FC040313E093CBFCB3A3B7
12F0A64F5D7BC05A>I<D90FFFEB0FFCB690383FFF8093B512E04B14F04B14F8923907FC
7FFC92390FE0FFFEC6EC1F806DD93F0113FF6D133E157E157C15F8A215F07013FEA24BEB
7FFCEF3FF8EF0FE04B90C7FCA55DB3B0B712F8A638417BC042>114
D<913A3FFF8007800107B5EAF81F011FECFE7F017F91B5FC48B8FC48EBE0014890C7121F
D80FFC1407D81FF0801600485A007F167F49153FA212FF171FA27F7F7F6D92C7FC13FF14
E014FF6C14F8EDFFC06C15FC16FF6C16C06C16F06C826C826C826C82013F1680010F16C0
1303D9007F15E0020315F0EC001F1500041F13F81607007C150100FC81177F6C163FA217
1F7EA26D16F0A27F173F6D16E06D157F6D16C001FEEDFF806D0203130002C0EB0FFE02FC
EB7FFC01DFB65A010F5DD8FE0315C026F8007F49C7FC48010F13E035437BC140>I<EC07
E0A6140FA5141FA3143FA2147FA214FF5BA25B5B5B5B137F48B5FC000F91B512FEB8FCA5
D8001F01E0C8FCB3AFEF0FC0AC171F6D6D1480A2173F6D16006F5B6D6D137E6D6D5B6DEB
FF836EEBFFF86E5C020F14C002035C9126003FFCC7FC325C7DDA3F>I<902607FFC0ED3F
FEB60207B5FCA6C6EE00076D826D82B3B3A260A360A2607F60183E6D6D147E4E7F6D6D49
48806D6DD907F0ECFF806D01FFEB3FE06D91B55A6E1500021F5C020314F8DA003F018002
F0C7FC51427BC05A>I<B700C00103B512FCA6C66C01C0C8381FFE006D6DED07F0A26D6D
5E190F6D6D5E191F6D606F153F6D95C7FC6F5DA26D6D157E19FE6D6E5C18016E5E701303
6E5E701307A26E6D5C180F6E6D5C181F6E6D5C183F6E93C8FC705BA26E6D13FEA26E6E5A
17816FEBC1F817C36F5C17E76F5C17FFA26F5CA26F5CA26F91C9FCA26F5BA36F5BA2705A
A2705AA2705AA2705A4E417DBF55>I<B70081B600FC0103B512FCA6C66C0180C701FCC8
381FFE006F6FED03F86D047F5F856F6E16076D646F70140F6D705F866F6E161F6D646F4A
6D143F6D99C7FC4E7F6F616D1B7E6F4A6D14FE6D6395B57E7001FC15016E62DCC0016E13
036EDBF87F5D05038004E0496C14076E62DCF007ED800F6E4B6C5D050F15C004F8496C14
1F6E62DCFC1FEDE03F6E4B6C92C8FC053F15F004FE496C5C6E197E7048EDF8FE6E027E6D
5C05FE15FC4D6D13FD6F601BFF6F496E5BA24D806F60A26F496E5BA24D806F60A26F496E
90C9FCA294C87E6F5FA26F486F5A047C6F5A6E417DBF75>I E end
%%EndProlog
%%BeginSetup
%%Feature: *Resolution 600dpi
TeXDict begin
%%PaperSize: a4
%%BeginPaperSize: a4
/setpagedevice where {
pop 1 dict dup /PageSize [ 595 842 ] put setpagedevice
} {
statusdict /a4tray known {
statusdict begin a4tray end
/a4 where { pop a4 } if
} {
/a4 where {
pop a4
} {
statusdict /setpage known {
statusdict begin
595 842 0 setpage
end
} if
} ifelse
} ifelse
} ifelse
%%EndPaperSize

%%EndSetup
%%Page: 1 1
1 0 bop 0 366 a Fg(CVS)29 b(Clien)l(t/Serv)l(er)125 740
y Ff(This)k(do)s(cumen)m(t)h(describ)s(es)g(the)h(clien)m(t/serv)m(er)g
(proto)s(col)g(used)f(b)m(y)h(CVS.)f(It)h(do)s(es)g(not)g(describ)s(e)e
(ho)m(w)i(to)0 865 y(use)h(or)h(administer)d(clien)m(t/serv)m(er)j
(CVS;)f(see)h(the)g(regular)e(CVS)h(man)m(ual)g(for)g(that.)60
b(This)35 b(is)g(v)m(ersion)h(1.9.8)0 989 y(of)c(the)g(proto)s(col)g
(sp)s(eci\014cation|See)f(Chapter)g(1)h([In)m(tro)s(duction],)g(page)g
(2,)h(for)e(more)h(on)g(what)g(this)e(v)m(ersion)0 1114
y(n)m(um)m(b)s(er)f(means.)p eop
%%Page: 2 2
2 1 bop 0 366 a Fg(1)80 b(In)l(tro)t(duction)125 740
y Ff(CVS)23 b(is)g(a)i(v)m(ersion)e(con)m(trol)i(system)f(\(with)f
(some)i(additional)d(con\014guration)h(managemen)m(t)j(functionalit)m
(y\).)0 865 y(It)40 b(main)m(tains)e(a)i(cen)m(tral)g
Fe(rep)s(ository)47 b Ff(whic)m(h)38 b(stores)i(\014les)f(\(often)i
(source)e(co)s(de\),)k(including)37 b(past)i(v)m(ersions,)0
989 y(information)27 b(ab)s(out)g(who)h(mo)s(di\014ed)e(them)j(and)e
(when,)h(and)g(so)g(on.)40 b(P)m(eople)29 b(who)e(wish)g(to)i(lo)s(ok)f
(at)h(or)f(mo)s(dify)0 1114 y(those)i(\014les,)e(kno)m(wn)h(as)g
Fe(dev)m(elop)s(ers)p Ff(,)g(use)g(CVS)g(to)h Fe(c)m(hec)m(k)g(out)i
Ff(a)d Fe(w)m(orking)g(directory)36 b Ff(from)29 b(the)g(rep)s(ository)
-8 b(,)29 b(to)0 1238 y Fe(c)m(hec)m(k)23 b(in)e Ff(new)g(v)m(ersions)g
(of)h(\014les)e(to)j(the)e(rep)s(ository)-8 b(,)23 b(and)e(other)h(op)s
(erations)f(suc)m(h)h(as)g(viewing)e(the)i(mo)s(di\014cation)0
1363 y(history)29 b(of)i(a)g(\014le.)40 b(If)30 b(dev)m(elop)s(ers)g
(are)h(connected)g(to)g(the)g(rep)s(ository)e(b)m(y)i(a)f(net)m(w)m
(ork,)i(particularly)c(a)j(slo)m(w)f(or)0 1487 y(\015aky)g(one,)h(the)f
(most)g(e\016cien)m(t)h(w)m(a)m(y)g(to)g(use)e(the)i(net)m(w)m(ork)g
(is)e(with)f(the)j(CVS-sp)s(eci\014c)d(proto)s(col)i(describ)s(ed)e(in)
0 1612 y(this)h(do)s(cumen)m(t.)125 1886 y(Dev)m(elop)s(ers,)i(using)e
(the)i(mac)m(hine)g(on)f(whic)m(h)g(they)h(store)g(their)f(w)m(orking)g
(directory)-8 b(,)31 b(run)e(the)i(CVS)f Fe(clien)m(t)0
2010 y Ff(program.)77 b(T)-8 b(o)44 b(p)s(erform)d(op)s(erations)h
(whic)m(h)f(cannot)i(b)s(e)f(done)h(lo)s(cally)-8 b(,)45
b(it)d(connects)h(to)h(the)f(CVS)f Fe(serv)m(er)0 2135
y Ff(program,)33 b(whic)m(h)e(main)m(tains)f(the)j(rep)s(ository)-8
b(.)45 b(F)-8 b(or)33 b(more)g(information)d(on)i(ho)m(w)g(to)h
(connect)g(see)g(Chapter)f(4)0 2259 y([Connection)e(and)g(Authen)m
(tication],)h(page)g(5.)125 2533 y(This)22 b(do)s(cumen)m(t)j(describ)s
(es)e(the)i(CVS)f(proto)s(col.)39 b(Unfortunately)-8
b(,)25 b(it)g(do)s(es)f(not)h(y)m(et)h(completely)e(do)s(cumen)m(t)0
2658 y(one)38 b(asp)s(ect)h(of)f(the)g(proto)s(col|the)g(detailed)f(op)
s(eration)g(of)h(eac)m(h)i(CVS)d(command)h(and)f(option|and)g(one)0
2782 y(m)m(ust)j(lo)s(ok)h(at)g(the)g(CVS)f(user)g(do)s(cumen)m
(tation,)j(`)p Fd(cvs.texinfo)p Ff(',)e(for)f(that)h(information.)70
b(The)40 b(proto)s(col)0 2907 y(is)34 b(non-proprietary)f(\(an)m(y)m
(one)j(who)e(w)m(an)m(ts)h(to)g(is)f(encouraged)h(to)g(implemen)m(t)e
(it\))i(and)f(an)g(implemen)m(tation,)0 3031 y(kno)m(wn)29
b(as)h(CVS,)g(is)e(a)m(v)-5 b(ailable)30 b(under)e(the)i(GNU)g(Public)e
(License.)40 b(The)29 b(CVS)g(distribution,)e(con)m(taining)i(this)0
3156 y(implemen)m(tation,)34 b(`)p Fd(cvs.texinfo)p Ff(',)f(and)h(a)h
(cop)m(y)g(\(p)s(ossibly)d(more)i(or)g(less)g(up)f(to)j(date)e(than)h
(what)f(y)m(ou)h(are)0 3281 y(reading)25 b(no)m(w\))i(of)f(this)g(do)s
(cumen)m(t,)h(`)p Fd(cvsclient.texi)p Ff(',)d(can)i(b)s(e)g(found)f(at)
i(the)f(usual)f(GNU)i(FTP)f(sites,)h(with)0 3405 y(a)k(\014lename)e
(suc)m(h)h(as)h(`)p Fd(cvs-)p Fe(v)m(ersion)p Fd(.tar.gz)p
Ff('.)125 3679 y(This)f(is)i(v)m(ersion)g(1.9.8)j(of)d(the)h(proto)s
(col)g(sp)s(eci\014cation.)46 b(This)31 b(v)m(ersion)h(n)m(um)m(b)s(er)
f(is)h(in)m(tended)g(only)f(to)j(aid)0 3804 y(in)40 b(distinguishing)e
(di\013eren)m(t)j(v)m(ersions)g(of)h(this)e(sp)s(eci\014cation.)74
b(Although)41 b(the)h(sp)s(eci\014cation)e(is)h(curren)m(tly)0
3928 y(main)m(tained)29 b(in)g(conjunction)h(with)f(the)i(CVS)e
(implemen)m(tation,)h(and)g(carries)g(the)g(same)h(v)m(ersion)f(n)m(um)
m(b)s(er,)f(it)0 4053 y(also)d(in)m(tends)f(to)i(do)s(cumen)m(t)f(what)
h(is)e(in)m(v)m(olv)m(ed)h(with)f(in)m(terop)s(erating)g(with)g(other)i
(implemen)m(tations)d(\(suc)m(h)j(as)0 4177 y(other)e(v)m(ersions)f(of)
h(CVS\);)f(see)h(Section)g(5.9)h([Requiremen)m(ts],)g(page)f(23.)40
b(This)23 b(v)m(ersion)h(n)m(um)m(b)s(er)f(should)g(not)i(b)s(e)0
4302 y(used)31 b(b)m(y)g(clien)m(ts)h(or)f(serv)m(ers)h(to)g(determine)
f(what)h(v)-5 b(arian)m(t)31 b(of)h(the)g(proto)s(col)g(to)g(sp)s(eak;)
g(they)g(should)e(instead)0 4426 y(use)41 b(the)h Fd(valid-requests)37
b Ff(and)k Fd(Valid-responses)c Ff(mec)m(hanism)k(\(see)h(Chapter)f(5)h
([Proto)s(col],)j(page)d(6\),)0 4551 y(whic)m(h)29 b(is)h(more)g
(\015exible.)p eop
%%Page: 3 3
3 2 bop 0 366 a Fg(2)80 b(Goals)75 740 y Fc(\017)60 b
Ff(Do)34 b(not)f(assume)f(an)m(y)h(access)h(to)g(the)f(rep)s(ository)e
(other)i(than)g(via)f(this)g(proto)s(col.)47 b(It)33
b(do)s(es)g(not)g(dep)s(end)180 865 y(on)d(NFS,)h(rdist,)e(etc.)75
1014 y Fc(\017)60 b Ff(Pro)m(viding)21 b(a)h(reliable)f(transp)s(ort)g
(is)g(outside)h(this)f(proto)s(col.)38 b(The)22 b(proto)s(col)g(exp)s
(ects)h(a)f(reliable)f(transp)s(ort)180 1139 y(that)32
b(is)e(transparen)m(t)h(\(that)h(is,)e(there)h(is)f(no)h(translation)f
(of)h(c)m(haracters,)i(including)28 b(c)m(haracters)k(suc)m(h)f(as)180
1263 y(suc)m(h)f(as)h(linefeeds)e(or)i(carriage)g(returns\),)f(and)g
(can)h(transmit)f(all)g(256)i(o)s(ctets)g(\(for)f(example)f(for)g(prop)
s(er)180 1388 y(handling)23 b(of)i(binary)f(\014les,)i(compression,)f
(and)g(encryption\).)39 b(The)24 b(enco)s(ding)h(of)g(c)m(haracters)i
(sp)s(eci\014ed)d(b)m(y)180 1512 y(the)k(proto)s(col)f(\(the)h(names)g
(of)g(requests)f(and)g(so)h(on\))g(is)e(the)i(in)m(v)-5
b(arian)m(t)27 b(ISO)f(646)j(c)m(haracter)g(set)f(\(a)h(subset)180
1637 y(of)42 b(most)g(p)s(opular)e(c)m(haracter)j(sets)f(including)d
(ASCI)s(I)h(and)h(others\).)76 b(F)-8 b(or)42 b(more)g(details)f(on)h
(running)180 1761 y(the)29 b(proto)s(col)g(o)m(v)m(er)h(the)f(TCP)f
(reliable)f(transp)s(ort,)h(see)h(Chapter)g(4)g([Connection)f(and)h
(Authen)m(tication],)180 1886 y(page)i(5.)75 2035 y Fc(\017)60
b Ff(Securit)m(y)47 b(and)g(authen)m(tication)h(are)g(handled)e
(outside)h(this)g(proto)s(col)g(\(but)h(see)g(b)s(elo)m(w)f(ab)s(out)h
(`)p Fd(cvs)180 2160 y(kserver)p Ff(')29 b(and)g(`)p
Fd(cvs)h(pserver)p Ff('\).)75 2309 y Fc(\017)60 b Ff(The)36
b(proto)s(col)h(mak)m(es)g(it)g(p)s(ossible)d(for)i(up)s(dates)g(to)i
(b)s(e)e(atomic)h(with)e(resp)s(ect)i(to)h(c)m(hec)m(kins;)i(that)d(is)
f(if)180 2434 y(someone)i(commits)f(c)m(hanges)h(to)g(sev)m(eral)g
(\014les)e(in)g(one)h(cvs)h(command,)h(then)e(an)g(up)s(date)f(b)m(y)h
(someone)180 2558 y(else)c(w)m(ould)f(either)h(get)h(all)e(the)i(c)m
(hanges,)h(or)e(none)g(of)h(them.)49 b(The)33 b(curren)m(t)g
Fb(cvs)f Ff(serv)m(er)i(can't)g(do)f(this,)180 2683 y(but)d(that)h
(isn't)e(the)i(proto)s(col's)f(fault.)75 2832 y Fc(\017)60
b Ff(The)40 b(proto)s(col)g(is,)j(with)c(a)i(few)f(exceptions,)k
(transaction-based.)71 b(That)40 b(is,)j(the)d(clien)m(t)h(sends)e(all)
h(its)180 2957 y(requests)30 b(\(without)g(w)m(aiting)g(for)g(serv)m
(er)h(resp)s(onses\),)f(and)g(then)g(w)m(aits)g(for)h(the)f(serv)m(er)h
(to)g(send)f(bac)m(k)h(all)180 3081 y(resp)s(onses)f(\(without)h(w)m
(aiting)f(for)h(further)f(clien)m(t)g(requests\).)44
b(This)29 b(has)i(the)g(adv)-5 b(an)m(tage)33 b(of)f(minimizing)180
3206 y(net)m(w)m(ork)37 b(turnarounds)d(and)i(the)g(disadv)-5
b(an)m(tage)37 b(of)f(sometimes)g(transferring)f(more)h(data)h(than)f
(w)m(ould)180 3330 y(b)s(e)31 b(necessary)h(if)f(there)h(w)m(ere)g(a)g
(ric)m(her)f(in)m(teraction.)44 b(Another,)32 b(more)g(subtle,)f(adv)-5
b(an)m(tage)34 b(is)c(that)j(there)180 3455 y(is)26 b(no)h(need)f(for)h
(the)g(proto)s(col)g(to)g(pro)m(vide)f(lo)s(c)m(king)g(for)h(features)g
(suc)m(h)f(as)i(making)e(c)m(hec)m(kins)h(atomic)g(with)180
3579 y(resp)s(ect)36 b(to)h(up)s(dates.)58 b(An)m(y)36
b(suc)m(h)g(lo)s(c)m(king)g(can)g(b)s(e)g(handled)e(en)m(tirely)i(b)m
(y)g(the)g(serv)m(er.)59 b(A)37 b(go)s(o)s(d)f(serv)m(er)180
3704 y(implemen)m(tation)26 b(\(suc)m(h)i(as)f(the)h(curren)m(t)f
Fb(cvs)g Ff(serv)m(er\))h(will)d(mak)m(e)j(sure)f(that)h(it)f(do)s(es)g
(not)h(ha)m(v)m(e)g(an)m(y)g(suc)m(h)180 3829 y(lo)s(c)m(ks)d(in)f
(place)i(whenev)m(er)f(it)g(is)f(w)m(aiting)h(for)g(comm)m(unication)g
(with)f(the)i(clien)m(t;)h(this)d(prev)m(en)m(ts)i(one)f(clien)m(t)180
3953 y(on)30 b(a)h(slo)m(w)f(or)g(\015aky)h(net)m(w)m(ork)g(from)f(in)m
(terfering)f(with)g(the)h(w)m(ork)h(of)f(others.)p eop
%%Page: 4 4
4 3 bop 0 366 a Fg(3)80 b(Notes)30 b(on)f(the)h(Proto)t(col)125
740 y Ff(A)g(n)m(um)m(b)s(er)f(of)i(enhancemen)m(ts)f(are)h(p)s
(ossible:)75 1014 y Fc(\017)60 b Ff(The)27 b Fd(Modified)e
Ff(request)i(could)g(b)s(e)f(sp)s(eeded)h(up)f(b)m(y)h(sending)f
(di\013s)f(rather)j(than)f(en)m(tire)g(\014les.)39 b(The)26
b(clien)m(t)180 1139 y(w)m(ould)f(need)h(some)g(w)m(a)m(y)h(to)g(k)m
(eep)g(the)f(v)m(ersion)f(of)i(the)f(\014le)f(whic)m(h)g(w)m(as)h
(originally)e(c)m(hec)m(k)m(ed)k(out;)g(probably)180
1263 y(requiring)e(the)j(use)f(of)g Fd(")p Ff(cvs)h(edit)p
Fd(")e Ff(in)g(this)h(case)h(is)f(the)g(most)h(sensible)e(course)h
(\(the)h Fd(")p Ff(cvs)f(edit)p Fd(")g Ff(could)g(b)s(e)180
1388 y(handled)j(b)m(y)j(a)f(pac)m(k)-5 b(age)36 b(lik)m(e)c(V)m(C)i
(for)f(emacs\).)51 b(This)31 b(w)m(ould)i(also)g(allo)m(w)g(lo)s(cal)f
(op)s(eration)h(of)h Fd(cvs)29 b(diff)180 1512 y Ff(without)g(argumen)m
(ts.)75 1662 y Fc(\017)60 b Ff(Ha)m(v)m(e)38 b(the)d(clien)m(t)h(k)m
(eep)g(a)g(cop)m(y)g(of)g(some)g(part)g(of)g(the)f(rep)s(ository)-8
b(.)56 b(This)34 b(allo)m(ws)h(all)g(of)h Fd(cvs)29 b(diff)35
b Ff(and)180 1786 y(large)h(parts)g(of)g Fd(cvs)29 b(update)35
b Ff(and)g Fd(cvs)30 b(ci)35 b Ff(to)i(b)s(e)e(lo)s(cal.)57
b(The)35 b(lo)s(cal)g(cop)m(y)i(could)e(b)s(e)h(made)g(consisten)m(t)
180 1911 y(with)24 b(the)h(master)g(cop)m(y)h(at)g(nigh)m(t)e(\(but)h
(if)f(the)h(master)h(cop)m(y)f(has)g(b)s(een)f(up)s(dated)g(since)g
(the)i(latest)f(nigh)m(tly)180 2035 y(re-sync,)31 b(then)f(it)g(w)m
(ould)f(read)h(what)g(it)g(needs)g(to)h(from)f(the)h(master\).)75
2185 y Fc(\017)60 b Ff(The)33 b(curren)m(t)f(pro)s(cedure)g(for)h
Fd(cvs)d(update)h Ff(is)h(highly)f(sub-optimal)g(if)h(there)h(are)h
(man)m(y)f(mo)s(di\014ed)e(\014les.)180 2309 y(One)g(p)s(ossible)d
(alternativ)m(e)j(w)m(ould)f(b)s(e)h(to)g(ha)m(v)m(e)h(the)g(clien)m(t)
e(send)g(a)i(\014rst)e(request)h(without)f(the)h(con)m(ten)m(ts)180
2434 y(of)36 b(ev)m(ery)h(mo)s(di\014ed)d(\014le,)i(then)g(ha)m(v)m(e)h
(the)f(serv)m(er)h(tell)e(it)g(what)h(\014les)f(it)h(needs.)57
b(Note)37 b(the)f(serv)m(er)g(needs)180 2558 y(to)f(do)g(the)g
(what-needs-to-b)s(e-up)s(dated)f(c)m(hec)m(k)i(t)m(wice)f(\(or)g
(more,)h(if)e(c)m(hanges)h(in)f(the)g(rep)s(ository)g(mean)180
2683 y(it)f(has)g(to)h(ask)g(the)f(clien)m(t)g(for)h(more)f(\014les\),)
h(b)s(ecause)f(it)g(can't)h(k)m(eep)g(lo)s(c)m(ks)g(op)s(en)e(while)g
(w)m(aiting)h(for)g(the)180 2807 y(net)m(w)m(ork.)41
b(P)m(erhaps)27 b(this)f(whole)g(thing)h(is)f(irrelev)-5
b(an)m(t)27 b(if)f(clien)m(t-side)g(rep)s(ositories)g(are)i(implemen)m
(ted,)f(and)180 2932 y(the)k(rcsmerge)f(is)g(done)g(b)m(y)g(the)h
(clien)m(t.)p eop
%%Page: 5 5
5 4 bop 0 242 a Fg(4)80 b(Ho)l(w)30 b(to)f(Connect)f(to)i(and)g(Authen)
l(ticate)f(Oneself)h(to)g(the)0 366 y(CVS)f(serv)l(er)125
740 y Ff(Connection)21 b(and)g(authen)m(tication)h(o)s(ccurs)g(b)s
(efore)f(the)h(CVS)f(proto)s(col)h(itself)f(is)g(started.)38
b(There)21 b(are)i(sev)m(eral)0 865 y(w)m(a)m(ys)31 b(to)g(connect.)0
1163 y(serv)m(er)247 b(If)34 b(the)h(clien)m(t)f(has)g(a)h(w)m(a)m(y)g
(to)g(execute)h(commands)e(on)h(the)g(serv)m(er,)h(and)d(pro)m(vide)h
(input)f(to)i(the)480 1288 y(commands)i(and)g(output)g(from)g(them,)j
(then)d(it)g(can)h(connect)g(that)g(w)m(a)m(y)-8 b(.)64
b(This)35 b(could)i(b)s(e)g(the)480 1413 y(usual)23 b(rsh)h(\(p)s(ort)h
(514\))i(proto)s(col,)f(Kerb)s(eros)e(rsh,)h(SSH,)f(or)h(an)m(y)g
(similar)e(mec)m(hanism.)38 b(The)24 b(clien)m(t)480
1537 y(ma)m(y)31 b(allo)m(w)e(the)h(user)f(to)i(sp)s(ecify)d(the)j
(name)f(of)g(the)g(serv)m(er)g(program;)g(the)g(default)f(is)g
Fd(cvs)p Ff(.)40 b(It)30 b(is)480 1662 y(in)m(v)m(ok)m(ed)g(with)f(one)
h(argumen)m(t,)g Fd(server)p Ff(.)39 b(Once)30 b(it)f(in)m(v)m(ok)m(es)
h(the)g(serv)m(er,)h(the)f(clien)m(t)f(pro)s(ceeds)g(to)480
1786 y(start)i(the)f(cvs)h(proto)s(col.)0 1961 y(kserv)m(er)199
b(The)44 b(k)m(erb)s(erized)g(serv)m(er)h(listens)e(on)h(a)h(p)s(ort)f
(\(in)g(the)g(curren)m(t)h(implemen)m(tation,)i(b)m(y)d(ha)m(ving)480
2085 y(inetd)31 b(call)h Fd(")p Ff(cvs)g(kserv)m(er)p
Fd(")p Ff(\))h(whic)m(h)e(defaults)g(to)i(1999.)49 b(The)32
b(clien)m(t)g(connects,)h(sends)f(the)g(usual)480 2210
y(k)m(erb)s(eros)26 b(authen)m(tication)g(information,)g(and)f(then)h
(starts)h(the)f(cvs)g(proto)s(col.)40 b(Note:)g(p)s(ort)25
b(1999)480 2334 y(is)30 b(o\016cially)f(registered)i(for)f(another)h
(use,)g(and)f(in)f(an)m(y)i(ev)m(en)m(t)h(one)f(cannot)h(register)e
(more)h(than)480 2459 y(one)23 b(p)s(ort)e(for)h(CVS,)g(so)h(the)f(k)m
(erb)s(erized)f(clien)m(t)h(and)g(serv)m(er)h(should)d(b)s(e)i(c)m
(hanged)g(to)i(use)e(p)s(ort)f(2401)480 2583 y(\(see)26
b(b)s(elo)m(w\),)f(and)f(send)g(a)h(di\013eren)m(t)f(string)g(in)f
(place)i(of)g(`)p Fd(BEGIN)k(AUTH)g(REQUEST)p Ff(')23
b(to)j(iden)m(tify)d(the)480 2708 y(authen)m(tication)28
b(metho)s(d)g(in)e(use.)40 b(Ho)m(w)m(ev)m(er,)31 b(no)s(one)d(has)g(y)
m(et)h(gotten)g(around)e(to)i(implemen)m(ting)480 2832
y(this.)0 3007 y(pserv)m(er)196 b(The)25 b(passw)m(ord)f(authen)m
(ticated)i(serv)m(er)g(listens)d(on)i(a)h(p)s(ort)e(\(in)h(the)g
(curren)m(t)g(implemen)m(tation,)g(b)m(y)480 3131 y(ha)m(ving)d(inetd)f
(call)g Fd(")p Ff(cvs)h(pserv)m(er)p Fd(")p Ff(\))g(whic)m(h)f
(defaults)h(to)g(2401)i(\(this)e(p)s(ort)f(is)h(o\016cially)f
(registered\).)480 3256 y(The)36 b(clien)m(t)g(connects,)j(sends)d(the)
h(string)e(`)p Fd(BEGIN)29 b(AUTH)h(REQUEST)p Ff(',)36
b(a)h(linefeed,)g(the)g(cvs)f(ro)s(ot,)480 3380 y(a)d(linefeed,)e(the)i
(username,)f(a)h(linefeed,)f(the)g(passw)m(ord)g(trivially)d(enco)s
(ded)j(\(see)i(scram)m(ble.c)e(in)480 3505 y(the)h(cvs)f(sources\),)i
(a)f(linefeed,)f(the)h(string)e(`)p Fd(END)f(AUTH)f(REQUEST)p
Ff(',)j(and)g(a)h(linefeed.)45 b(The)32 b(clien)m(t)480
3629 y(m)m(ust)h(send)f(the)i(iden)m(tical)d(string)h(for)h(cvs)g(ro)s
(ot)h(b)s(oth)e(here)h(and)g(later)g(in)e(the)j Fd(Root)e
Ff(request)h(of)480 3754 y(the)i(cvs)f(proto)s(col)h(itself.)52
b(Serv)m(ers)34 b(are)h(encouraged)g(to)g(enforce)g(this)f
(restriction.)52 b(The)34 b(serv)m(er)480 3878 y(resp)s(onds)26
b(with)h(`)p Fd(I)k(LOVE)e(YOU)p Ff(')f(and)f(a)i(linefeed)e(if)g(the)i
(authen)m(tication)f(is)f(successful)h(or)g(`)p Fd(I)i(HATE)480
4003 y(YOU)p Ff(')i(and)g(a)h(linefeed)e(if)g(the)i(authen)m(tication)f
(fails.)46 b(After)33 b(receiving)f(`)p Fd(I)e(LOVE)f(YOU)p
Ff(',)k(the)f(clien)m(t)480 4127 y(pro)s(ceeds)39 b(with)f(the)h(cvs)h
(proto)s(col.)67 b(If)39 b(the)g(clien)m(t)g(wishes)f(to)i(merely)e
(authen)m(ticate)j(without)480 4252 y(starting)j(the)h(cvs)g(proto)s
(col,)j(the)d(pro)s(cedure)e(is)g(the)i(same,)k(except)c(`)p
Fd(BEGIN)29 b(AUTH)h(REQUEST)p Ff(')480 4376 y(is)h(replaced)h(with)f
(`)p Fd(BEGIN)e(VERIFICATION)e(REQUEST)p Ff(',)32 b(`)p
Fd(END)d(AUTH)h(REQUEST)p Ff(')g(is)h(replaced)h(with)480
4501 y(`)p Fd(END)e(VERIFICATION)d(REQUEST)p Ff(',)22
b(and)g(up)s(on)f(receipt)i(of)g(`)p Fd(I)30 b(LOVE)f(YOU)p
Ff(')22 b(the)h(connection)g(is)e(closed)480 4626 y(rather)30
b(than)g(con)m(tin)m(uing.)p eop
%%Page: 6 6
6 5 bop 0 366 a Fg(5)80 b(The)30 b(CVS)g(clien)l(t/serv)l(er)e(proto)t
(col)125 741 y Ff(In)h(the)i(follo)m(wing,)e(`)p Fd(\\n)p
Ff(')h(refers)g(to)h(a)g(linefeed)e(and)g(`)p Fd(\\t)p
Ff(')i(refers)f(to)h(a)g(horizon)m(tal)f(tab.)0 1192
y Fa(5.1)68 b(En)l(tries)32 b(Lines)125 1466 y Ff(En)m(tries)d(lines)g
(are)i(transmitted)e(as:)240 1720 y Fd(/)47 b Fe(name)53
b Fd(/)48 b Fe(v)m(ersion)f Fd(/)h Fe(con\015ict)h Fd(/)f
Fe(options)i Fd(/)e Fe(tag)p 2116 1720 28 4 v 34 w(or)p
2231 1720 V 33 w(date)125 1994 y(tag)p 255 1994 V 34
w(or)p 370 1994 V 32 w(date)36 b Ff(is)29 b(either)h(`)p
Fd(T)p Ff(')g Fe(tag)39 b Ff(or)30 b(`)p Fd(D)p Ff(')g
Fe(date)36 b Ff(or)30 b(empt)m(y)-8 b(.)42 b(If)29 b(it)h(is)f(follo)m
(w)m(ed)h(b)m(y)g(a)g(slash,)g(an)m(ything)f(after)i(the)0
2119 y(slash)e(shall)g(b)s(e)h(silen)m(tly)e(ignored.)125
2393 y Fe(v)m(ersion)35 b Ff(can)g(b)s(e)g(empt)m(y)-8
b(,)38 b(or)e(start)g(with)e(`)p Fd(0)p Ff(')i(or)g(`)p
Fd(-)p Ff(',)h(for)e(no)h(user)f(\014le,)h(new)f(user)g(\014le,)h(or)g
(user)f(\014le)f(to)j(b)s(e)0 2517 y(remo)m(v)m(ed,)32
b(resp)s(ectiv)m(ely)-8 b(.)125 2792 y Fe(con\015ict)p
Ff(,)27 b(if)g(it)f(starts)i(with)e(`)p Fd(+)p Ff(',)i(indicates)e
(that)i(the)f(\014le)g(had)f(con\015icts)h(in)f(it.)39
b(The)27 b(rest)g(of)g Fe(con\015ict)i Ff(is)e(`)p Fd(=)p
Ff(')g(if)0 2916 y(the)32 b(timestamp)f(matc)m(hes)i(the)e(\014le,)g
(or)h(an)m(ything)f(else)g(if)g(it)g(do)s(esn't.)44 b(If)31
b Fe(con\015ict)i Ff(do)s(es)e(not)h(start)g(with)f(a)h(`)p
Fd(+)p Ff(',)0 3041 y(it)e(is)f(silen)m(tly)g(ignored.)0
3491 y Fa(5.2)68 b(Mo)t(des)125 3766 y Ff(A)30 b(mo)s(de)g(is)f(an)m(y)
i(n)m(um)m(b)s(er)e(of)i(rep)s(etitions)d(of)240 4019
y Fe(mo)s(de-t)m(yp)s(e)53 b Fd(=)47 b Fe(data)125 4293
y Ff(separated)30 b(b)m(y)h(`)p Fd(,)p Ff('.)125 4568
y Fe(mo)s(de-t)m(yp)s(e)43 b Ff(is)38 b(an)h(iden)m(ti\014er)d(comp)s
(osed)j(of)f(alphan)m(umeric)f(c)m(haracters.)67 b(Curren)m(tly)37
b(sp)s(eci\014ed:)55 b(`)p Fd(u)p Ff(')39 b(for)0 4692
y(user,)47 b(`)p Fd(g)p Ff(')d(for)g(group,)j(`)p Fd(o)p
Ff(')d(for)g(other)g(\(see)h(b)s(elo)m(w)e(for)h(discussion)e(of)i
(whether)f(these)i(ha)m(v)m(e)g(their)e(POSIX)0 4817
y(meaning)30 b(or)g(are)h(more)f(lo)s(ose\).)41 b(Unrecognized)31
b(v)-5 b(alues)29 b(of)i Fe(mo)s(de-t)m(yp)s(e)k Ff(are)c(silen)m(tly)e
(ignored.)125 5091 y Fe(data)j Ff(consists)f(of)h(an)m(y)h(data)f(not)g
(con)m(taining)g(`)p Fd(,)p Ff(',)g(`)p Fd(\\0)p Ff(')g(or)g(`)p
Fd(\\n)p Ff('.)45 b(F)-8 b(or)33 b(`)p Fd(u)p Ff(',)f(`)p
Fd(g)p Ff(',)h(and)e(`)p Fd(o)p Ff(')h(mo)s(de)g(t)m(yp)s(es,)g(data)0
5215 y(consists)c(of)g(alphan)m(umeric)f(c)m(haracters,)j(where)e(`)p
Fd(r)p Ff(')h(means)f(read,)h(`)p Fd(w)p Ff(')g(means)f(write,)g(`)p
Fd(x)p Ff(')h(means)f(execute,)j(and)0 5340 y(unrecognized)f(letters)g
(are)h(silen)m(tly)e(ignored.)p eop
%%Page: 7 7
7 6 bop 125 366 a Ff(The)19 b(t)m(w)m(o)j(most)f(ob)m(vious)f(w)m(a)m
(ys)h(in)e(whic)m(h)g(the)h(mo)s(de)g(matters)h(are:)36
b(\(1\))22 b(is)d(it)h(writeable?)36 b(This)19 b(is)g(used)h(b)m(y)g
(the)0 491 y(dev)m(elop)s(er)32 b(comm)m(unication)g(features,)h(and)f
(is)f(implemen)m(ted)g(ev)m(en)i(on)g(OS/2)f(\(and)g(could)g(b)s(e)f
(implemen)m(ted)0 616 y(on)f(DOS\),)g(whose)g(notion)f(of)i(mo)s(de)e
(is)g(limited)f(to)j(a)f(readonly)f(bit.)40 b(\(2\))31
b(is)e(it)h(executable?)41 b(Unix)28 b(CVS)i(users)0
740 y(need)35 b(CVS)g(to)h(store)g(this)e(setting)i(\(for)f(shell)f
(scripts)g(and)h(the)g(lik)m(e\).)56 b(The)34 b(curren)m(t)i(CVS)e
(implemen)m(tation)0 865 y(on)h(unix)e(do)s(es)i(a)g(little)f(bit)g
(more)i(than)e(just)h(main)m(tain)f(these)i(t)m(w)m(o)g(settings,)g
(but)f(it)f(do)s(esn't)h(really)f(ha)m(v)m(e)j(a)0 989
y(nice)29 b(general)h(facilit)m(y)g(to)g(store)h(or)f(v)m(ersion)f(con)
m(trol)i(the)f(mo)s(de,)g(ev)m(en)g(on)g(unix,)f(m)m(uc)m(h)h(less)f
(across)h(op)s(erating)0 1114 y(systems)k(with)f(div)m(erse)g
(protection)h(features.)52 b(So)34 b(all)f(the)h(ins)f(and)g(outs)i(of)
f(what)g(the)g(mo)s(de)f(means)h(across)0 1238 y(op)s(erating)40
b(systems)g(ha)m(v)m(en't)h(really)e(b)s(een)g(w)m(ork)m(ed)i(out)f
(\(e.g.)71 b(should)38 b(the)j(VMS)f(p)s(ort)f(use)h(A)m(CLs)g(to)h
(get)0 1363 y(POSIX)29 b(seman)m(tics)i(for)f(groups?\).)0
1807 y Fa(5.3)68 b(Con)l(v)l(en)l(tions)32 b(regarding)f(transmission)h
(of)e(\014le)h(names)125 2081 y Ff(In)i(most)h(con)m(texts,)j(`)p
Fd(/)p Ff(')d(is)f(used)h(to)g(separate)h(directory)f(and)f(\014le)g
(names)h(in)f(\014lenames,)h(and)g(an)m(y)g(use)g(of)0
2206 y(other)26 b(con)m(v)m(en)m(tions)g(\(for)f(example,)i(that)f(the)
f(user)g(migh)m(t)g(t)m(yp)s(e)g(on)g(the)h(command)f(line\))f(is)g
(con)m(v)m(erted)j(to)f(that)0 2330 y(form.)40 b(The)28
b(only)g(exceptions)h(migh)m(t)g(b)s(e)f(a)i(few)f(cases)g(in)f(whic)m
(h)g(the)h(serv)m(er)g(pro)m(vides)f(a)i(magic)f(co)s(okie)g(whic)m(h)0
2455 y(the)k(clien)m(t)f(then)h(rep)s(eats)g(v)m(erbatim,)g(but)f(as)i
(the)f(serv)m(er)g(has)f(not)h(y)m(et)h(b)s(een)e(p)s(orted)h(b)s(ey)m
(ond)f(unix,)g(the)h(t)m(w)m(o)0 2579 y(rules)28 b(pro)m(vide)g(the)i
(same)g(answ)m(er)f(\(and)g(what)g(to)h(do)g(if)e(future)g(serv)m(er)i
(p)s(orts)e(are)i(op)s(erating)f(on)g(a)h(rep)s(ository)0
2704 y(lik)m(e)g(e:/fo)s(o)h(or)g(CVS)p 731 2704 28 4
v 32 w(R)m(OOT:[F)m(OO.BAR])g(has)f(not)h(b)s(een)f(carefully)f(though)
m(t)h(out\).)125 2978 y(Characters)38 b(outside)f(the)i(in)m(v)-5
b(arian)m(t)37 b(ISO)g(646)j(c)m(haracter)g(set)e(should)e(b)s(e)i(a)m
(v)m(oided)h(in)e(\014lenames.)63 b(This)0 3102 y(restriction)39
b(ma)m(y)i(need)f(to)h(b)s(e)e(relaxed)h(to)h(allo)m(w)f(for)g(c)m
(haracters)h(suc)m(h)f(as)g(`)p Fd([)p Ff(')h(and)e(`)p
Fd(])p Ff(')i(\(see)g(ab)s(o)m(v)m(e)g(ab)s(out)0 3227
y(non-unix)27 b(serv)m(ers\);)k(this)d(has)i(not)g(b)s(een)e(carefully)
g(considered)h(\(and)g(curren)m(tly)g(implemen)m(tations)f(probably)0
3351 y(use)39 b(whatev)m(er)h(c)m(haracter)i(sets)d(that)i(the)e(op)s
(erating)g(systems)h(they)f(are)h(running)d(on)i(allo)m(w,)j(and/or)d
(that)0 3476 y(users)d(sp)s(ecify\).)59 b(Of)37 b(course)g(the)g(most)g
(p)s(ortable)f(practice)h(is)f(to)i(restrict)e(oneself)h(further,)g(to)
h(the)f(POSIX)0 3600 y(p)s(ortable)29 b(\014lename)h(c)m(haracter)i
(set)f(as)f(sp)s(eci\014ed)f(in)g(POSIX.1.)0 4045 y Fa(5.4)68
b(File)31 b(transmissions)125 4319 y Ff(File)j(con)m(ten)m(ts)i
(\(noted)f(b)s(elo)m(w)f(as)h Fe(\014le)f(transmission)p
Ff(\))f(can)i(b)s(e)f(sen)m(t)i(in)d(one)i(of)g(t)m(w)m(o)i(forms.)53
b(The)34 b(simpler)0 4443 y(form)39 b(is)g(a)h(n)m(um)m(b)s(er)f(of)h
(b)m(ytes,)j(follo)m(w)m(ed)c(b)m(y)h(a)g(linefeed,)h(follo)m(w)m(ed)e
(b)m(y)h(the)g(sp)s(eci\014ed)e(n)m(um)m(b)s(er)h(of)g(b)m(ytes)i(of)0
4568 y(\014le)33 b(con)m(ten)m(ts.)54 b(These)34 b(are)h(the)f(en)m
(tire)h(con)m(ten)m(ts)h(of)e(the)g(sp)s(eci\014ed)f(\014le.)51
b(Second,)36 b(if)d(b)s(oth)g(clien)m(t)h(and)g(serv)m(er)0
4692 y(supp)s(ort)f(`)p Fd(gzip-file-contents)p Ff(',)e(a)k(`)p
Fd(z)p Ff(')g(ma)m(y)g(precede)g(the)g(length,)g(and)f(the)h(`\014le)f
(con)m(ten)m(ts')j(sen)m(t)e(are)g(ac-)0 4817 y(tually)g(compressed)h
(with)f(`)p Fd(gzip)p Ff(')h(\(RF)m(C1952/1951\))42 b(compression.)57
b(The)36 b(length)g(sp)s(eci\014ed)f(is)g(that)i(of)g(the)0
4941 y(compressed)30 b(v)m(ersion)g(of)g(the)h(\014le.)125
5215 y(In)h(neither)g(case)j(are)e(the)h(\014le)e(con)m(ten)m(t)k
(follo)m(w)m(ed)d(b)m(y)g(an)m(y)g(additional)f(data.)50
b(The)33 b(transmission)e(of)i(a)h(\014le)0 5340 y(will)28
b(end)h(with)h(a)g(linefeed)f(i\013)h(that)h(\014le)e(\(or)i(its)f
(compressed)g(form\))g(ends)f(with)h(a)g(linefeed.)p
eop
%%Page: 8 8
8 7 bop 125 366 a Ff(The)32 b(enco)s(ding)g(of)h(\014le)f(con)m(ten)m
(ts)j(dep)s(ends)c(on)i(the)g(v)-5 b(alue)32 b(for)h(the)g(`)p
Fd(-k)p Ff(')g(option.)48 b(If)32 b(the)h(\014le)f(is)g(binary)f(\(as)0
491 y(sp)s(eci\014ed)h(b)m(y)h(the)h(`)p Fd(-kb)p Ff(')f(option)g(in)f
(the)i(appropriate)f(place\),)h(then)g(it)f(is)f(just)h(a)h(certain)g
(n)m(um)m(b)s(er)e(of)h(o)s(ctets,)0 616 y(and)28 b(the)h(proto)s(col)f
(con)m(tributes)h(nothing)e(to)m(w)m(ards)i(determining)e(the)i(enco)s
(ding)e(\(using)h(the)h(\014le)e(name)i(is)f(one)0 740
y(widespread,)i(if)g(not)h(univ)m(ersally)d(p)s(opular,)i(mec)m
(hanism\).)42 b(If)31 b(the)g(\014le)f(is)g(text)i(\(not)g(binary\),)e
(then)h(the)g(\014le)f(is)0 865 y(sen)m(t)g(as)g(a)g(series)f(of)h
(lines,)f(separated)h(b)m(y)f(linefeeds.)39 b(If)29 b(the)h(k)m(eyw)m
(ord)g(expansion)f(is)g(set)h(to)g(something)g(other)0
989 y(than)35 b(`)p Fd(-ko)p Ff(',)i(then)f(it)f(is)g(exp)s(ected)h
(that)g(the)g(\014le)f(conform)h(to)g(the)g(R)m(CS)f(exp)s(ectations)i
(regarding)d(k)m(eyw)m(ord)0 1114 y(expansion|in)28 b(particular,)h
(that)i(it)g(is)e(in)g(a)i(c)m(haracter)i(set)e(suc)m(h)f(as)h(ASCI)s
(I)e(in)g(whic)m(h)g(0x24)j(is)e(a)h(dollar)e(sign)0
1238 y(\(`)p Fd($)p Ff('\).)0 1736 y Fa(5.5)68 b(Strings)125
2015 y Ff(In)30 b(v)-5 b(arious)30 b(con)m(texts,)k(for)d(example)g
(the)g Fd(Argument)e Ff(request)i(and)g(the)h Fd(M)f
Ff(resp)s(onse,)f(one)i(transmits)e(what)0 2140 y(is)h(essen)m(tially)f
(an)i(arbitrary)e(string.)43 b(Often)31 b(this)g(will)e(ha)m(v)m(e)j(b)
s(een)f(supplied)d(b)m(y)k(the)f(user)g(\(for)h(example,)g(the)0
2264 y(`)p Fd(-m)p Ff(')40 b(option)g(to)h(the)g Fd(ci)f
Ff(request\).)71 b(The)40 b(proto)s(col)g(has)g(no)g(mec)m(hanism)g(to)
h(sp)s(ecify)e(the)i(c)m(haracter)h(set)f(of)0 2389 y(suc)m(h)29
b(strings;)g(it)g(w)m(ould)g(b)s(e)g(fairly)e(safe)j(to)h(stic)m(k)f
(to)g(the)g(in)m(v)-5 b(arian)m(t)29 b(ISO)f(646)j(c)m(haracter)g(set)f
(but)f(the)h(existing)0 2513 y(practice)i(is)e(probably)g(to)i(just)f
(transmit)f(whatev)m(er)i(the)g(user)e(sp)s(eci\014es,)h(and)g(hop)s(e)
f(that)i(ev)m(ery)m(one)h(in)m(v)m(olv)m(ed)0 2638 y(agrees)e(whic)m(h)
f(c)m(haracter)i(set)e(is)g(in)f(use,)h(or)h(stic)m(ks)f(to)h(a)g
(common)g(subset.)0 3135 y Fa(5.6)68 b(Requests)125 3414
y Ff(By)23 b(con)m(v)m(en)m(tion,)j(requests)e(whic)m(h)e(b)s(egin)g
(with)g(a)h(capital)g(letter)h(do)f(not)h(elicit)e(a)i(resp)s(onse)e
(from)h(the)g(serv)m(er,)0 3539 y(while)h(all)h(others)g(do)h({)g(sa)m
(v)m(e)i(one.)39 b(The)25 b(exception)h(is)f(`)p Fd(gzip-file-contents)
p Ff('.)35 b(Unrecognized)26 b(requests)g(will)0 3663
y(alw)m(a)m(ys)31 b(elicit)e(a)i(resp)s(onse)e(from)h(the)h(serv)m(er,)
g(ev)m(en)g(if)e(that)i(request)f(b)s(egins)f(with)g(a)i(capital)f
(letter.)0 3973 y Fd(Root)f Fe(pathname)36 b Fd(\\n)480
4098 y Ff(Resp)s(onse)30 b(exp)s(ected:)43 b(no.)f(T)-8
b(ell)30 b(the)h(serv)m(er)g(whic)m(h)f Fd(CVSROOT)f
Ff(to)j(use.)42 b(Note)32 b(that)g Fe(pathname)k Ff(is)480
4222 y(a)g(lo)s(cal)e(directory)h(and)f Fe(not)k Ff(a)d(fully)e
(quali\014ed)g Fd(CVSROOT)g Ff(v)-5 b(ariable.)54 b Fe(pathname)40
b Ff(m)m(ust)35 b(already)480 4347 y(exist;)48 b(if)42
b(creating)h(a)f(new)g(ro)s(ot,)k(use)c(the)h Fd(init)e
Ff(request,)46 b(not)d Fd(Root)p Ff(.)75 b Fe(pathname)48
b Ff(do)s(es)42 b(not)480 4471 y(include)25 b(the)i(hostname)g(of)h
(the)f(serv)m(er,)h(ho)m(w)f(to)h(access)g(the)f(serv)m(er,)i(etc.;)g
(b)m(y)e(the)h(time)e(the)i(CVS)480 4596 y(proto)s(col)i(is)g(in)f
(use,)h(connection,)h(authen)m(tication,)g(etc.,)h(are)e(already)g(tak)
m(en)i(care)f(of.)0 4781 y Fd(Valid-responses)26 b Fe(request-list)32
b Fd(\\n)480 4906 y Ff(Resp)s(onse)e(exp)s(ected:)42
b(no.)g(T)-8 b(ell)30 b(the)h(serv)m(er)g(what)g(resp)s(onses)e(the)i
(clien)m(t)g(will)d(accept.)44 b(request-)480 5030 y(list)29
b(is)g(a)i(space)g(separated)g(list)e(of)i(tok)m(ens.)0
5215 y Fd(valid-requests)26 b(\\n)480 5340 y Ff(Resp)s(onse)k(exp)s
(ected:)41 b(y)m(es.)g(Ask)31 b(the)f(serv)m(er)h(to)g(send)e(bac)m(k)j
(a)e Fd(Valid-requests)d Ff(resp)s(onse.)p eop
%%Page: 9 9
9 8 bop 0 366 a Fd(Directory)28 b Fe(lo)s(cal-directory)37
b Fd(\\n)480 491 y Ff(Additional)24 b(data:)40 b Fe(rep)s(ository)33
b Fd(\\)p Ff(n.)38 b(Resp)s(onse)26 b(exp)s(ected:)39
b(no.)g(T)-8 b(ell)26 b(the)g(serv)m(er)h(what)f(directory)480
616 y(to)37 b(use.)60 b(The)36 b Fe(rep)s(ository)44
b Ff(should)35 b(b)s(e)h(a)h(directory)f(name)h(from)f(a)h(previous)f
(serv)m(er)h(resp)s(onse.)480 740 y(Note)g(that)f(this)f(b)s(oth)f(giv)
m(es)i(a)g(default)f(for)g Fd(Entry)g Ff(and)g Fd(Modified)e
Ff(and)i(also)g(for)h Fd(ci)f Ff(and)g(the)480 865 y(other)29
b(commands;)g(normal)f(usage)i(is)e(to)i(send)e Fd(Directory)e
Ff(for)j(eac)m(h)h(directory)e(in)g(whic)m(h)g(there)480
989 y(will)k(b)s(e)i(an)g Fd(Entry)g Ff(or)g Fd(Modified)p
Ff(,)g(and)g(then)g(a)h(\014nal)f Fd(Directory)e Ff(for)i(the)h
(original)e(directory)-8 b(,)480 1114 y(then)29 b(the)h(command.)40
b(If)29 b(the)g(clien)m(t)g(uses)g(this)f(request,)i(it)f(a\013ects)i
(the)f(w)m(a)m(y)g(the)g(serv)m(er)f(returns)480 1238
y(pathnames;)j(see)h(Section)e(5.7)i([Resp)s(onses],)f(page)h(16.)46
b Fe(lo)s(cal-directory)38 b Ff(is)31 b(relativ)m(e)h(to)h(the)f(top)
480 1363 y(lev)m(el)f(at)h(whic)m(h)e(the)h(command)g(is)f(o)s
(ccurring)g(\(i.e.)43 b(the)32 b(last)f Fd(Directory)d
Ff(whic)m(h)i(is)h(sen)m(t)g(b)s(efore)480 1487 y(the)g(command\);)f
(to)h(indicate)f(that)h(top)f(lev)m(el,)h(`)p Fd(.)p
Ff(')f(should)f(b)s(e)g(send)h(for)g Fe(lo)s(cal-directory)p
Ff(.)480 1634 y(Here)f(is)f(an)h(example)g(of)g(where)f(a)i(clien)m(t)e
(gets)i Fe(rep)s(ository)36 b Ff(and)28 b Fe(lo)s(cal-directory)p
Ff(.)39 b(Supp)s(ose)27 b(that)480 1759 y(there)k(is)e(a)i(mo)s(dule)d
(de\014ned)i(b)m(y)720 1885 y Fd(moddir)46 b(1dir)480
2032 y Ff(That)29 b(is,)h(one)f(can)h(c)m(hec)m(k)h(out)f
Fd(moddir)e Ff(and)h(it)g(will)e(tak)m(e)k Fd(1dir)e
Ff(in)f(the)i(rep)s(ository)e(and)h(c)m(hec)m(k)i(it)480
2156 y(out)j(to)h Fd(moddir)e Ff(in)g(the)h(w)m(orking)g(directory)-8
b(.)52 b(Then)33 b(an)i(initial)c(c)m(hec)m(k)36 b(out)e(could)g(pro)s
(ceed)g(lik)m(e)480 2281 y(this:)720 2407 y Fd(C:)47
b(Root)g(/home/kingdon/zwork/cvsr)o(oot)720 2511 y(.)g(.)h(.)720
2615 y(C:)f(Argument)f(moddir)720 2718 y(C:)h(Directory)e(.)720
2822 y(C:)i(/home/kingdon/zwork/cvsro)o(ot)720 2926 y(C:)g(co)720
3030 y(S:)g(Clear-sticky)e(moddir/)720 3133 y(S:)i
(/home/kingdon/zwork/cvsro)o(ot/1)o(dir)o(/)720 3237
y(.)g(.)h(.)720 3341 y(S:)f(ok)480 3488 y Ff(In)26 b(this)h(example)f
(the)i(resp)s(onse)e(sho)m(wn)h(is)f Fd(Clear-sticky)p
Ff(,)f(but)h(it)h(could)f(b)s(e)g(another)i(resp)s(onse)480
3612 y(instead.)53 b(Note)36 b(that)f(it)f(returns)f(t)m(w)m(o)j
(pathnames.)54 b(The)34 b(\014rst)g(one,)i(`)p Fd(moddir/)p
Ff(',)e(indicates)g(the)480 3737 y(w)m(orking)e(directory)g(to)h(c)m
(hec)m(k)h(out)e(in)m(to.)47 b(The)32 b(second)g(one,)h(ending)e(in)g
(`)p Fd(1dir/)p Ff(',)h(indicates)g(the)480 3862 y(directory)e(to)i
(pass)e(bac)m(k)i(to)g(the)f(serv)m(er)g(in)e(a)j(subsequen)m(t)e
Fd(Directory)e Ff(request.)42 b(F)-8 b(or)32 b(example,)480
3986 y(a)f(subsequen)m(t)e Fd(update)g Ff(request)h(migh)m(t)h(lo)s(ok)
f(lik)m(e:)720 4112 y Fd(C:)47 b(Directory)e(moddir)720
4216 y(C:)i(/home/kingdon/zwork/cvsro)o(ot/1)o(dir)720
4320 y(.)g(.)h(.)720 4424 y(C:)f(update)480 4570 y Ff(F)-8
b(or)35 b(a)f(giv)m(en)f Fe(lo)s(cal-directory)p Ff(,)h(the)g(rep)s
(ository)f(will)e(b)s(e)i(the)h(same)g(for)g(eac)m(h)h(of)f(the)g(resp)
s(onses,)480 4695 y(so)29 b(one)g(can)g(use)g(the)g(rep)s(ository)f
(from)g(whic)m(hev)m(er)g(resp)s(onse)g(is)g(most)h(con)m(v)m(enien)m
(t.)42 b(T)m(ypically)27 b(a)480 4819 y(clien)m(t)h(will)e(store)k(the)
f(rep)s(ository)e(along)i(with)e(the)i(sources)g(for)g(eac)m(h)g
Fe(lo)s(cal-directory)p Ff(,)g(use)f(that)480 4944 y(same)f(setting)g
(whenev)m(er)g(op)s(erating)f(on)h(that)g Fe(lo)s(cal-directory)p
Ff(,)g(and)f(not)h(up)s(date)f(the)h(setting)g(as)480
5069 y(long)j(as)h(the)f Fe(lo)s(cal-directory)37 b Ff(exists.)480
5215 y(A)29 b(clien)m(t)f(is)f(free)i(to)g(rename)f(a)h
Fe(lo)s(cal-directory)36 b Ff(at)29 b(an)m(y)g(time)f(\(for)g(example,)
h(in)e(resp)s(onse)h(to)h(an)480 5340 y(explicit)f(user)i(request\).)41
b(While)29 b(it)g(is)g(true)h(that)h(the)f(serv)m(er)g(supplies)e(a)i
Fe(lo)s(cal-directory)37 b Ff(to)31 b(the)p eop
%%Page: 10 10
10 9 bop 480 366 a Ff(clien)m(t,)27 b(as)f(noted)f(ab)s(o)m(v)m(e,)k
(this)24 b(is)h(only)g(the)h(default)f(place)h(to)g(put)f(the)h
(directory)-8 b(.)39 b(Of)26 b(course,)h(the)480 491
y(v)-5 b(arious)28 b Fd(Directory)e Ff(requests)j(for)g(a)g(single)f
(command)h(\(for)g(example,)g Fd(update)e Ff(or)i Fd(ci)g
Ff(request\))480 616 y(should)f(name)j(a)g(particular)d(directory)i
(with)f(the)i(same)g Fe(lo)s(cal-directory)p Ff(.)480
768 y(Eac)m(h)h Fd(Directory)c Ff(request)j(sp)s(eci\014es)f(a)i
(brand-new)d Fe(lo)s(cal-directory)38 b Ff(and)31 b Fe(rep)s(ository)8
b Ff(;)30 b(that)i(is,)480 893 y Fe(lo)s(cal-directory)50
b Ff(and)43 b Fe(rep)s(ository)50 b Ff(are)44 b(nev)m(er)g(relativ)m(e)
f(to)h(paths)f(sp)s(eci\014ed)f(in)g(an)m(y)h(previous)480
1017 y Fd(Directory)28 b Ff(request.)0 1198 y Fd(Max-dotdot)g
Fe(lev)m(el)33 b Fd(\\n)480 1323 y Ff(Resp)s(onse)20
b(exp)s(ected:)36 b(no.)h(T)-8 b(ell)19 b(the)i(serv)m(er)f(that)h
Fe(lev)m(el)j Ff(lev)m(els)c(of)g(directories)f(ab)s(o)m(v)m(e)j(the)e
(directory)480 1447 y(whic)m(h)31 b Fd(Directory)g Ff(requests)h(are)h
(relativ)m(e)g(to)g(will)d(b)s(e)i(needed.)48 b(F)-8
b(or)33 b(example,)g(if)f(the)h(clien)m(t)f(is)480 1572
y(planning)42 b(to)j(use)g(a)g Fd(Directory)d Ff(request)i(for)h(`)p
Fd(../../foo)p Ff(',)h(it)e(m)m(ust)h(send)f(a)h Fd(Max-dotdot)480
1696 y Ff(request)29 b(with)e(a)j Fe(lev)m(el)i Ff(of)d(at)h(least)f
(2.)40 b Fd(Max-dotdot)26 b Ff(m)m(ust)j(b)s(e)f(sen)m(t)i(b)s(efore)e
(the)h(\014rst)f Fd(Directory)480 1821 y Ff(request.)0
2002 y Fd(Static-directory)e(\\n)480 2126 y Ff(Resp)s(onse)j(exp)s
(ected:)41 b(no.)g(T)-8 b(ell)29 b(the)h(serv)m(er)g(that)h(the)f
(directory)f(most)i(recen)m(tly)f(sp)s(eci\014ed)e(with)480
2251 y Fd(Directory)41 b Ff(should)g(not)j(ha)m(v)m(e)g(additional)d
(\014les)i(c)m(hec)m(k)m(ed)i(out)e(unless)f(explicitly)f(requested.)
480 2375 y(The)h(clien)m(t)g(sends)g(this)f(if)g(the)i
Fd(Entries.Static)c Ff(\015ag)k(is)e(set,)46 b(whic)m(h)c(is)f(con)m
(trolled)h(b)m(y)h(the)480 2500 y Fd(Set-static-directory)25
b Ff(and)30 b Fd(Clear-static-directory)24 b Ff(resp)s(onses.)0
2681 y Fd(Sticky)29 b Fe(tagsp)s(ec)36 b Fd(\\n)480 2805
y Ff(Resp)s(onse)29 b(exp)s(ected:)41 b(no.)g(T)-8 b(ell)29
b(the)h(serv)m(er)g(that)h(the)f(directory)f(most)i(recen)m(tly)f(sp)s
(eci\014ed)e(with)480 2930 y Fd(Directory)h Ff(has)i(a)h(stic)m(ky)g
(tag)g(or)g(date)g Fe(tagsp)s(ec)p Ff(.)44 b(The)31 b(\014rst)g(c)m
(haracter)i(of)f Fe(tagsp)s(ec)37 b Ff(is)31 b(`)p Fd(T)p
Ff(')g(for)h(a)480 3054 y(tag,)g(or)e(`)p Fd(D)p Ff(')h(for)f(a)h
(date.)41 b(The)30 b(remainder)f(of)h Fe(tagsp)s(ec)37
b Ff(con)m(tains)31 b(the)f(actual)h(tag)g(or)g(date.)0
3235 y Fd(Checkin-prog)c Fe(program)j Fd(\\n)480 3359
y Ff(Resp)s(onse)44 b(exp)s(ected:)70 b(no.)84 b(T)-8
b(ell)44 b(the)h(serv)m(er)g(that)h(the)f(directory)f(most)h(recen)m
(tly)h(sp)s(eci\014ed)480 3484 y(with)37 b Fd(Directory)f
Ff(has)i(a)h(c)m(hec)m(kin)g(program)f Fe(program)p Ff(.)64
b(Suc)m(h)38 b(a)h(program)f(w)m(ould)f(ha)m(v)m(e)j(b)s(een)480
3609 y(previously)28 b(set)j(with)e(the)i Fd(Set-checkin-prog)26
b Ff(resp)s(onse.)0 3789 y Fd(Update-prog)h Fe(program)j
Fd(\\n)480 3914 y Ff(Resp)s(onse)44 b(exp)s(ected:)70
b(no.)84 b(T)-8 b(ell)44 b(the)h(serv)m(er)g(that)h(the)f(directory)f
(most)h(recen)m(tly)h(sp)s(eci\014ed)480 4038 y(with)35
b Fd(Directory)e Ff(has)i(an)h(up)s(date)f(program)h
Fe(program)p Ff(.)57 b(Suc)m(h)35 b(a)h(program)g(w)m(ould)f(ha)m(v)m
(e)i(b)s(een)480 4163 y(previously)28 b(set)j(with)e(the)i
Fd(Set-update-prog)26 b Ff(resp)s(onse.)0 4344 y Fd(Entry)j
Fe(en)m(try-line)34 b Fd(\\n)480 4468 y Ff(Resp)s(onse)e(exp)s(ected:)
46 b(no.)i(T)-8 b(ell)32 b(the)h(serv)m(er)g(what)g(v)m(ersion)f(of)h
(a)g(\014le)f(is)g(on)h(the)g(lo)s(cal)f(mac)m(hine.)480
4593 y(The)c(name)g(in)g Fe(en)m(try-line)k Ff(is)27
b(a)i(name)g(relativ)m(e)f(to)h(the)g(directory)f(most)h(recen)m(tly)g
(sp)s(eci\014ed)d(with)480 4717 y Fd(Directory)p Ff(.)52
b(If)34 b(the)h(user)f(is)g(op)s(erating)h(on)f(only)g(some)i(\014les)e
(in)f(a)i(directory)-8 b(,)37 b Fd(Entry)c Ff(requests)480
4842 y(for)j(only)g(those)h(\014les)e(need)h(b)s(e)g(included.)56
b(If)36 b(an)h Fd(Entry)e Ff(request)h(is)g(sen)m(t)g(without)g
Fd(Modified)p Ff(,)480 4966 y Fd(Is-modified)p Ff(,)h(or)i
Fd(Unchanged)p Ff(,)f(it)f(means)h(the)h(\014le)e(is)g(lost)i(\(do)s
(es)f(not)g(exist)g(in)f(the)i(w)m(orking)480 5091 y(directory\).)49
b(If)33 b(b)s(oth)f Fd(Entry)g Ff(and)g(one)i(of)f Fd(Modified)p
Ff(,)f Fd(Is-modified)p Ff(,)f(or)i Fd(Unchanged)e Ff(are)i(sen)m(t)480
5215 y(for)i(the)h(same)g(\014le,)h Fd(Entry)d Ff(m)m(ust)i(b)s(e)f
(sen)m(t)h(\014rst.)56 b(F)-8 b(or)36 b(a)g(giv)m(en)g(\014le,)g(one)g
(can)g(send)f Fd(Modified)p Ff(,)480 5340 y Fd(Is-modified)p
Ff(,)28 b(or)i Fd(Unchanged)p Ff(,)e(but)i(not)g(more)h(than)f(one)h
(of)f(these)h(three.)p eop
%%Page: 11 11
11 10 bop 0 366 a Fd(Modified)28 b Fe(\014lename)35 b
Fd(\\n)480 491 y Ff(Resp)s(onse)30 b(exp)s(ected:)42
b(no.)g(Additional)28 b(data:)42 b(mo)s(de,)31 b Fd(\\)p
Ff(n,)f(\014le)g(transmission.)39 b(Send)30 b(the)h(serv)m(er)480
616 y(a)36 b(cop)m(y)g(of)g(one)f(lo)s(cally)f(mo)s(di\014ed)g(\014le.)
55 b Fe(\014lename)40 b Ff(is)34 b(relativ)m(e)i(to)g(the)g(most)f
(recen)m(t)i(rep)s(ository)480 740 y(sen)m(t)g(with)d
Fd(Directory)p Ff(.)56 b(If)35 b(the)h(user)g(is)f(op)s(erating)g(on)h
(only)g(some)g(\014les)f(in)g(a)h(directory)-8 b(,)38
b(only)480 865 y(those)h(\014les)e(need)i(to)g(b)s(e)f(included.)62
b(This)37 b(can)h(also)h(b)s(e)f(sen)m(t)h(without)e
Fd(Entry)p Ff(,)i(if)f(there)h(is)e(no)480 989 y(en)m(try)31
b(for)f(the)g(\014le.)0 1170 y Fd(Is-modified)d Fe(\014lename)35
b Fd(\\n)480 1294 y Ff(Resp)s(onse)c(exp)s(ected:)42
b(no.)i(Additional)28 b(data:)44 b(none.)f(Lik)m(e)31
b Fd(Modified)p Ff(,)e(but)i(used)f(if)g(the)i(serv)m(er)480
1419 y(only)d(needs)h(to)i(kno)m(w)e(whether)g(the)g(\014le)g(is)f(mo)s
(di\014ed,)g(not)h(the)h(con)m(ten)m(ts.)480 1572 y(The)47
b(commands)f(whic)m(h)g(can)i(tak)m(e)g Fd(Is-modified)c
Ff(instead)j(of)g Fd(Modified)e Ff(with)g(no)i(kno)m(wn)480
1696 y(c)m(hange)33 b(in)e(b)s(eha)m(vior)g(are:)45 b
Fd(admin)p Ff(,)31 b Fd(diff)g Ff(\(if)h(and)f(only)g(if)g(t)m(w)m(o)j
(`)p Fd(-r)p Ff(')e(or)g(`)p Fd(-D)p Ff(')g(options)f(are)i(sp)s(eci-)
480 1821 y(\014ed\),)28 b Fd(watch-on)p Ff(,)e Fd(watch-off)p
Ff(,)f Fd(watch-add)p Ff(,)h Fd(watch-remove)p Ff(,)e
Fd(watchers)p Ff(,)i Fd(editors)p Ff(,)g Fd(log)p Ff(,)i(and)480
1945 y Fd(annotate)p Ff(.)480 2098 y(F)-8 b(or)23 b(the)g
Fd(status)e Ff(command,)j(one)f(can)g(send)f Fd(Is-modified)e
Ff(but)i(if)f(the)i(clien)m(t)f(is)g(using)f(imp)s(erfect)480
2222 y(mec)m(hanisms)30 b(suc)m(h)g(a)h(timestamps)g(to)g(determine)f
(whether)g(to)i(consider)d(a)i(\014le)f(mo)s(di\014ed,)f(then)480
2347 y(the)40 b(b)s(eha)m(vior)f(will)f(b)s(e)h(di\013eren)m(t.)69
b(That)40 b(is,)i(if)d(one)h(sends)f Fd(Modified)p Ff(,)h(then)g(the)g
(serv)m(er)h(will)480 2472 y(actually)29 b(compare)h(the)f(con)m(ten)m
(ts)i(of)e(the)h(\014le)e(sen)m(t)i(and)f(the)g(one)h(it)e(deriv)m(es)h
(from)g(to)h(determine)480 2596 y(whether)h(the)g(\014le)g(is)f(gen)m
(uinely)g(mo)s(di\014ed.)42 b(But)31 b(if)f(one)i(sends)e
Fd(Is-modified)p Ff(,)f(then)i(the)h(serv)m(er)480 2721
y(tak)m(es)38 b(the)e(clien)m(t's)g(w)m(ord)g(for)g(it.)58
b(A)37 b(similar)d(situation)h(exists)h(for)g Fd(tag)p
Ff(,)h(if)e(the)i(`)p Fd(-c)p Ff(')f(option)g(is)480
2845 y(sp)s(eci\014ed.)480 2998 y(Commands)29 b(for)h(whic)m(h)f
Fd(Modified)g Ff(is)g(necessary)i(are)g Fd(co)p Ff(,)f
Fd(ci)p Ff(,)g Fd(update)p Ff(,)f(and)g Fd(import)p Ff(.)480
3151 y(Commands)24 b(whic)m(h)h(do)g(not)h(need)f(to)h(inform)e(the)h
(serv)m(er)h(ab)s(out)f(a)h(w)m(orking)f(directory)-8
b(,)26 b(and)f(th)m(us)480 3275 y(should)j(not)j(b)s(e)e(sending)g
(either)h Fd(Modified)e Ff(or)i Fd(Is-modified)p Ff(:)38
b Fd(rdiff)p Ff(,)29 b Fd(rtag)p Ff(,)g Fd(history)p
Ff(,)g Fd(init)p Ff(,)480 3400 y(and)h Fd(release)p Ff(.)480
3552 y(Commands)c(for)h(whic)m(h)f(further)g(in)m(v)m(estigation)h(is)g
(w)m(arran)m(ted)g(are:)40 b Fd(remove)p Ff(,)26 b Fd(add)p
Ff(,)i(and)e Fd(export)p Ff(.)480 3677 y(P)m(ending)50
b(suc)m(h)h(in)m(v)m(estigation,)57 b(the)51 b(more)h(conserv)-5
b(ativ)m(e)52 b(course)f(of)h(action)f(is)g(to)h(stic)m(k)f(to)480
3801 y Fd(Modified)p Ff(.)0 3982 y Fd(Unchanged)28 b
Fe(\014lename)35 b Fd(\\n)480 4107 y Ff(Resp)s(onse)k(exp)s(ected:)59
b(no.)67 b(T)-8 b(ell)39 b(the)g(serv)m(er)h(that)g Fe(\014lename)j
Ff(has)c(not)h(b)s(een)f(mo)s(di\014ed)e(in)h(the)480
4231 y(c)m(hec)m(k)m(ed)i(out)d(directory)-8 b(.)63 b(The)37
b(name)g(is)g(relativ)m(e)h(to)g(the)g(most)g(recen)m(t)h(rep)s
(ository)d(sen)m(t)i(with)480 4356 y Fd(Directory)p Ff(.)0
4537 y Fd(UseUnchanged)27 b(\\n)480 4661 y Ff(Resp)s(onse)k(exp)s
(ected:)44 b(no.)h(T)-8 b(o)33 b(sp)s(ecify)d(the)i(v)m(ersion)f(of)h
(the)g(proto)s(col)g(describ)s(ed)e(in)h(this)f(do)s(cu-)480
4786 y(men)m(t,)f(serv)m(ers)e(m)m(ust)h(supp)s(ort)e(this)g(request)i
(\(although)f(it)g(need)g(not)h(do)f(an)m(ything\))h(and)e(clien)m(ts)
480 4910 y(m)m(ust)k(issue)f(it.)0 5091 y Fd(Notify)g
Fe(\014lename)34 b Fd(\\n)480 5215 y Ff(Resp)s(onse)20
b(exp)s(ected:)36 b(no.)h(T)-8 b(ell)20 b(the)g(serv)m(er)h(that)g(a)g
Fd(edit)e Ff(or)i Fd(unedit)e Ff(command)h(has)g(tak)m(en)i(place.)480
5340 y(The)30 b(serv)m(er)g(needs)g(to)h(send)f(a)h Fd(Notified)d
Ff(resp)s(onse,)h(but)h(suc)m(h)g(resp)s(onse)f(is)h(deferred)f(un)m
(til)g(the)p eop
%%Page: 12 12
12 11 bop 480 366 a Ff(next)39 b(time)g(that)g(the)g(serv)m(er)g(is)f
(sending)g(resp)s(onses.)65 b(Resp)s(onse)38 b(exp)s(ected:)58
b(no.)66 b(Additional)480 491 y(data:)720 640 y Fe(noti\014cation-t)m
(yp)s(e)53 b Fd(\\t)47 b Fe(time)53 b Fd(\\t)47 b Fe(clien)m(thost)i
Fd(\\t)720 744 y Fe(w)m(orking-dir)j Fd(\\t)47 b Fe(w)m(atc)m(hes)54
b Fd(\\n)480 914 y Ff(where)32 b Fe(noti\014cation-t)m(yp)s(e)37
b Ff(is)32 b(`)p Fd(E)p Ff(')g(for)h(edit,)f(`)p Fd(U)p
Ff(')h(for)f(unedit,)g(unde\014ned)e(b)s(eha)m(vior)h(if)h(`)p
Fd(C)p Ff(',)h(and)f(all)480 1038 y(other)d(letters)g(should)e(b)s(e)h
(silen)m(tly)f(ignored)h(for)h(future)f(expansion.)39
b Fe(time)33 b Ff(is)28 b(the)h(time)g(at)g(whic)m(h)480
1163 y(the)d(edit)f(or)g(unedit)f(to)s(ok)i(place,)h(in)d(a)i
(user-readable)e(format)i(of)g(the)f(clien)m(t's)g(c)m(hoice)i(\(the)f
(serv)m(er)480 1287 y(should)36 b(treat)k(the)e(time)g(as)h(an)f
(opaque)g(string)g(rather)g(than)g(in)m(terpreting)f(it\).)64
b Fe(clien)m(thost)40 b Ff(is)480 1412 y(the)c(name)h(of)f(the)g(host)g
(on)g(whic)m(h)f(the)i(edit)e(or)h(unedit)f(to)s(ok)i(place,)g(and)f
Fe(w)m(orking-dir)41 b Ff(is)35 b(the)480 1536 y(pathname)g(of)g(the)h
(w)m(orking)e(directory)h(where)f(the)h(edit)g(or)g(unedit)f(to)s(ok)h
(place.)55 b Fe(w)m(atc)m(hes)41 b Ff(are)480 1661 y(the)31
b(temp)s(orary)g(w)m(atc)m(hes)i(to)f(set.)43 b(If)31
b Fe(w)m(atc)m(hes)36 b Ff(is)30 b(follo)m(w)m(ed)h(b)m(y)g
Fd(\\)p Ff(t)g(then)g(the)g Fd(\\)p Ff(t)h(and)e(the)h(rest)h(of)480
1785 y(the)f(line)d(should)h(b)s(e)g(ignored,)h(for)g(future)g
(expansion.)480 1955 y(Note)g(that)f(a)g(clien)m(t)f(ma)m(y)h(b)s(e)f
(capable)h(of)f(p)s(erforming)f(an)h Fd(edit)g Ff(or)g
Fd(unedit)f Ff(op)s(eration)h(without)480 2080 y(connecting)39
b(to)g(the)g(serv)m(er)g(at)h(that)f(time,)i(and)d(instead)g
(connecting)h(to)h(the)f(serv)m(er)g(when)e(it)480 2204
y(is)j(con)m(v)m(enien)m(t)i(\(for)e(example,)k(when)39
b(a)i(laptop)f(is)g(on)h(the)g(net)f(again\))h(to)h(send)e(the)h
Fd(Notify)480 2329 y Ff(requests.)69 b(Ev)m(en)40 b(if)f(a)h(clien)m(t)
g(is)f(capable)h(of)g(deferring)e(noti\014cations,)k(it)d(should)f
(attempt)j(to)480 2453 y(send)33 b(them)h(immediately)e(\(one)j(can)f
(send)f Fd(Notify)g Ff(requests)g(together)j(with)d(a)h
Fd(noop)f Ff(request,)480 2578 y(for)d(example\),)h(unless)d(p)s
(erhaps)h(if)g(it)h(can)h(kno)m(w)f(that)h(a)g(connection)g(w)m(ould)e
(b)s(e)h(imp)s(ossible.)0 2793 y Fd(Questionable)d Fe(\014lename)35
b Fd(\\n)480 2917 y Ff(Resp)s(onse)25 b(exp)s(ected:)39
b(no.)g(Additional)24 b(data:)39 b(no.)g(T)-8 b(ell)25
b(the)h(serv)m(er)g(to)h(c)m(hec)m(k)g(whether)f Fe(\014lename)480
3042 y Ff(should)43 b(b)s(e)i(ignored,)k(and)44 b(if)h(not,)k(next)d
(time)f(the)g(serv)m(er)h(sends)e(resp)s(onses,)49 b(send)44
b(\(in)h(a)g Fd(M)480 3166 y Ff(resp)s(onse\))31 b(`)p
Fd(?)p Ff(')g(follo)m(w)m(ed)g(b)m(y)g(the)g(directory)g(and)f
(\014lename.)42 b Fe(\014lename)36 b Ff(m)m(ust)31 b(not)g(con)m(tain)g
(`)p Fd(/)p Ff(';)h(it)480 3291 y(needs)e(to)h(b)s(e)f(a)h(\014le)e(in)
g(the)i(directory)f(named)f(b)m(y)i(the)f(most)h(recen)m(t)g
Fd(Directory)d Ff(request.)0 3506 y Fd(Case)h(\\n)163
b Ff(Resp)s(onse)36 b(exp)s(ected:)54 b(no.)60 b(T)-8
b(ell)35 b(the)i(serv)m(er)g(that)h(\014lenames)e(should)e(b)s(e)i
(matc)m(hed)i(in)d(a)j(case-)480 3631 y(insensitiv)m(e)c(fashion.)58
b(Note)38 b(that)f(this)e(is)h(not)g(the)h(primary)e(mec)m(hanism)g
(for)i(ac)m(hieving)f(case-)480 3755 y(insensitivit)m(y;)25
b(for)g(the)h(most)g(part)g(the)g(clien)m(t)g(k)m(eeps)g(trac)m(k)h(of)
f(the)g(case)h(whic)m(h)d(the)i(serv)m(er)g(w)m(an)m(ts)480
3880 y(to)k(use)f(and)f(tak)m(es)j(care)f(to)f(alw)m(a)m(ys)h(use)f
(that)h(case)g(regardless)e(of)h(what)h(the)f(user)f(sp)s(eci\014es.)39
b(F)-8 b(or)480 4004 y(example)37 b(the)h(\014lenames)f(giv)m(en)h(in)e
Fd(Entry)g Ff(and)h Fd(Modified)e Ff(requests)j(for)f(the)h(same)g
(\014le)f(m)m(ust)480 4129 y(matc)m(h)31 b(in)e(case)j(regardless)d(of)
i(whether)e(the)i Fd(Case)e Ff(request)h(is)g(sen)m(t.)41
b(The)30 b(latter)g(mec)m(hanism)g(is)480 4253 y(more)23
b(general)f(\(it)g(could)g(also)g(b)s(e)g(used)f(for)h(8.3)i
(\014lenames,)f(VMS)f(\014lenames)g(with)f(more)i(than)f(one)480
4378 y(`)p Fd(.)p Ff(',)29 b(and)f(an)m(y)h(other)g(situation)e(in)g
(whic)m(h)h(there)g(is)g(a)h(predictable)e(mapping)g(b)s(et)m(w)m(een)i
(\014lenames)480 4502 y(in)h(the)i(w)m(orking)e(directory)h(and)g
(\014lenames)f(in)g(the)i(proto)s(col\),)g(but)e(there)i(are)f(some)h
(situations)480 4627 y(it)c(cannot)h(handle)e(\(ignore)h(patterns,)h
(or)f(situations)f(where)h(the)h(user)e(sp)s(eci\014es)g(a)i
(\014lename)f(and)480 4751 y(the)j(clien)m(t)f(do)s(es)g(not)g(kno)m(w)
h(ab)s(out)f(that)h(\014le\).)0 4966 y Fd(Argument)d
Fe(text)33 b Fd(\\n)480 5091 y Ff(Resp)s(onse)43 b(exp)s(ected:)66
b(no.)80 b(Sa)m(v)m(e)44 b(argumen)m(t)g(for)f(use)g(in)f(a)h
(subsequen)m(t)g(command.)79 b(Argu-)480 5215 y(men)m(ts)30
b(accum)m(ulate)g(un)m(til)e(an)h(argumen)m(t-using)g(command)g(is)f
(giv)m(en,)i(at)g(whic)m(h)f(p)s(oin)m(t)f(they)i(are)480
5340 y(forgotten.)p eop
%%Page: 13 13
13 12 bop 0 366 a Fd(Argumentx)28 b Fe(text)33 b Fd(\\n)480
491 y Ff(Resp)s(onse)k(exp)s(ected:)54 b(no.)61 b(App)s(end)35
b Fd(\\)p Ff(n)i(follo)m(w)m(ed)f(b)m(y)h(text)i(to)e(the)h(curren)m(t)
f(argumen)m(t)g(b)s(eing)480 616 y(sa)m(v)m(ed.)0 795
y Fd(Global_option)27 b Fe(option)j Fd(\\n)480 920 y
Ff(Resp)s(onse)c(exp)s(ected:)39 b(no.)g(T)-8 b(ransmit)25
b(one)i(of)f(the)h(global)e(options)h(`)p Fd(-q)p Ff(',)h(`)p
Fd(-Q)p Ff(',)g(`)p Fd(-l)p Ff(',)g(`)p Fd(-t)p Ff(',)h(`)p
Fd(-r)p Ff(',)f(or)480 1044 y(`)p Fd(-n)p Ff('.)40 b
Fe(option)29 b Ff(m)m(ust)h(b)s(e)f(one)h(of)f(those)h(strings,)f(no)h
(v)-5 b(ariations)28 b(\(suc)m(h)i(as)g(com)m(bining)e(of)h(options\))
480 1169 y(are)34 b(allo)m(w)m(ed.)52 b(F)-8 b(or)35
b(graceful)e(handling)f(of)i Fd(valid-requests)p Ff(,)d(it)j(is)f
(probably)f(b)s(etter)i(to)h(mak)m(e)480 1293 y(new)30
b(global)g(options)f(separate)j(requests,)e(rather)g(than)g(trying)g
(to)h(add)f(them)g(to)h(this)f(request.)0 1473 y Fd(Gzip-stream)d
Fe(lev)m(el)34 b Fd(\\n)480 1598 y Ff(Resp)s(onse)25
b(exp)s(ected:)39 b(no.)g(Use)26 b(zlib)e(\(RF)m(C)j(1950/1951\))j
(compression)25 b(to)h(compress)g(all)e(further)480 1722
y(comm)m(unication)j(b)s(et)m(w)m(een)g(the)h(clien)m(t)f(and)f(the)i
(serv)m(er.)40 b(After)27 b(this)f(request)h(is)g(sen)m(t,)h(all)e
(further)480 1847 y(comm)m(unication)g(m)m(ust)f(b)s(e)h(compressed.)39
b(All)25 b(further)f(data)j(receiv)m(ed)f(from)g(the)g(serv)m(er)h
(will)c(also)480 1971 y(b)s(e)i(compressed.)39 b(The)25
b Fe(lev)m(el)30 b Ff(argumen)m(t)c(suggests)g(to)h(the)f(serv)m(er)g
(the)g(lev)m(el)g(of)g(compression)e(that)480 2096 y(it)39
b(should)f(apply;)43 b(it)d(should)d(b)s(e)j(an)f(in)m(teger)h(b)s(et)m
(w)m(een)h(1)f(and)f(9,)k(inclusiv)m(e,)d(where)f(a)h(higher)480
2220 y(n)m(um)m(b)s(er)29 b(indicates)g(more)i(compression.)0
2400 y Fd(Kerberos-encrypt)26 b(\\n)480 2525 y Ff(Resp)s(onse)e(exp)s
(ected:)39 b(no.)g(Use)25 b(Kerb)s(eros)f(encryption)g(to)i(encrypt)f
(all)f(further)f(comm)m(unication)480 2649 y(b)s(et)m(w)m(een)41
b(the)f(clien)m(t)f(and)g(the)i(serv)m(er.)69 b(This)38
b(will)g(only)h(w)m(ork)h(if)e(the)j(connection)f(w)m(as)g(made)480
2774 y(o)m(v)m(er)32 b(Kerb)s(eros)e(in)f(the)i(\014rst)f(place.)42
b(If)31 b(b)s(oth)f(the)h Fd(Gzip-stream)c Ff(and)j(the)h
Fd(Kerberos-encrypt)480 2898 y Ff(requests)e(are)h(used,)f(the)g
Fd(Kerberos-encrypt)c Ff(request)k(should)e(b)s(e)i(used)f(\014rst.)40
b(This)27 b(will)g(mak)m(e)480 3023 y(the)44 b(clien)m(t)f(and)h(serv)m
(er)g(encrypt)f(the)h(compressed)g(data,)k(as)c(opp)s(osed)f(to)i
(compressing)e(the)480 3147 y(encrypted)30 b(data.)41
b(Encrypted)30 b(data)h(is)e(generally)h(incompressible.)0
3327 y Fd(Set)f Fe(v)-5 b(ariable)5 b Fd(=)p Fe(v)-5
b(alue)34 b Fd(\\n)480 3452 y Ff(Resp)s(onse)c(exp)s(ected:)41
b(no.)f(Set)31 b(a)g(user)e(v)-5 b(ariable)30 b Fe(v)-5
b(ariable)34 b Ff(to)d Fe(v)-5 b(alue)p Ff(.)0 3631 y
Fd(expand-modules)26 b(\\n)480 3756 y Ff(Resp)s(onse)36
b(exp)s(ected:)54 b(y)m(es.)61 b(Expand)36 b(the)h(mo)s(dules)e(whic)m
(h)g(are)j(sp)s(eci\014ed)d(in)g(the)i(argumen)m(ts.)480
3880 y(Returns)f(the)h(data)h(in)d Fd(Module-expansion)e
Ff(resp)s(onses.)59 b(Note)38 b(that)g(the)f(serv)m(er)g(can)g(assume)
480 4005 y(that)c(this)f(is)g(c)m(hec)m(k)m(out)j(or)e(exp)s(ort,)g
(not)g(rtag)h(or)e(rdi\013;)h(the)g(latter)g(do)g(not)g(access)h(the)f
(w)m(orking)480 4130 y(directory)d(and)g(th)m(us)g(ha)m(v)m(e)h(no)f
(need)h(to)g(expand)e(mo)s(dules)g(on)h(the)h(clien)m(t)f(side.)480
4282 y(Expand)h(ma)m(y)i(not)g(b)s(e)f(the)g(b)s(est)g(w)m(ord)h(for)f
(what)g(this)f(request)i(do)s(es.)47 b(It)32 b(do)s(es)g(not)h
(necessarily)480 4406 y(tell)28 b(y)m(ou)i(all)d(the)j(\014les)d(con)m
(tained)j(in)d(a)j(mo)s(dule,)e(for)g(example.)40 b(Basically)29
b(it)f(is)g(a)h(w)m(a)m(y)h(of)g(telling)480 4531 y(y)m(ou)40
b(whic)m(h)f(w)m(orking)g(directories)g(the)h(serv)m(er)g(needs)g(to)h
(kno)m(w)f(ab)s(out)f(in)g(order)g(to)i(handle)e(a)480
4655 y(c)m(hec)m(k)m(out)33 b(of)d(the)h(sp)s(eci\014ed)e(mo)s(dules.)
480 4807 y(F)-8 b(or)31 b(example,)f(supp)s(ose)f(that)i(the)g(serv)m
(er)g(has)f(a)g(mo)s(dule)f(de\014ned)g(b)m(y)720 4939
y Fd(aliasmodule)45 b(-a)i(1dir)480 5091 y Ff(That)36
b(is,)g(one)g(can)h(c)m(hec)m(k)g(out)f Fd(aliasmodule)d
Ff(and)i(it)h(will)d(tak)m(e)k Fd(1dir)e Ff(in)g(the)h(rep)s(ository)f
(and)480 5215 y(c)m(hec)m(k)c(it)e(out)h(to)g Fd(1dir)f
Ff(in)f(the)i(w)m(orking)f(directory)-8 b(.)40 b(No)m(w)30
b(supp)s(ose)f(the)g(clien)m(t)h(already)f(has)g(this)480
5340 y(mo)s(dule)36 b(c)m(hec)m(k)m(ed)k(out)e(and)g(is)f(planning)e
(on)j(using)e(the)i Fd(co)g Ff(request)f(to)i(up)s(date)e(it.)63
b(Without)p eop
%%Page: 14 14
14 13 bop 480 366 a Ff(using)38 b Fd(expand-modules)p
Ff(,)h(the)h(clien)m(t)f(w)m(ould)f(ha)m(v)m(e)j(t)m(w)m(o)g(bad)e(c)m
(hoices:)61 b(it)39 b(could)g(either)g(send)480 491 y(information)31
b(ab)s(out)h Fe(all)j Ff(w)m(orking)c(directories)h(under)e(the)j
(curren)m(t)f(directory)-8 b(,)33 b(whic)m(h)e(could)h(b)s(e)480
616 y(unnecessarily)20 b(slo)m(w,)j(or)f(it)f(could)f(b)s(e)h(ignoran)m
(t)h(of)g(the)g(fact)g(that)h Fd(aliasmodule)18 b Ff(stands)j(for)h
Fd(1dir)p Ff(,)480 740 y(and)30 b(neglect)h(to)g(send)f(information)e
(for)i Fd(1dir)p Ff(,)g(whic)m(h)f(w)m(ould)g(lead)h(to)h(incorrect)f
(op)s(eration.)480 896 y(With)g Fd(expand-modules)p Ff(,)d(the)j(clien)
m(t)g(w)m(ould)f(\014rst)h(ask)g(for)h(the)f(mo)s(dule)f(to)i(b)s(e)f
(expanded:)720 1031 y Fd(C:)47 b(Root)g(/home/kingdon/zwork/cvsr)o(oot)
720 1135 y(.)g(.)h(.)720 1239 y(C:)f(Argument)f(aliasmodule)720
1343 y(C:)h(Directory)e(.)720 1446 y(C:)i(/home/kingdon/zwork/cvsro)o
(ot)720 1550 y(C:)g(expand-modules)720 1654 y(S:)g(Module-expansion)d
(1dir)720 1758 y(S:)j(ok)480 1914 y Ff(and)32 b(then)g(it)g(kno)m(ws)h
(to)g(c)m(hec)m(k)h(the)f(`)p Fd(1dir)p Ff(')e(directory)h(and)g(send)g
(requests)h(suc)m(h)f(as)g Fd(Entry)g Ff(and)480 2038
y Fd(Modified)c Ff(for)i(the)h(\014les)e(in)g(that)i(directory)-8
b(.)0 2226 y Fd(ci)30 b(\\n)0 2350 y(diff)f(\\n)0 2475
y(tag)g(\\n)0 2599 y(status)g(\\n)0 2724 y(log)g(\\n)0
2848 y(add)g(\\n)0 2973 y(remove)g(\\n)0 3097 y(admin)g(\\n)0
3222 y(export)g(\\n)0 3346 y(history)f(\\n)0 3471 y(watchers)g(\\n)0
3595 y(editors)g(\\n)0 3720 y(annotate)g(\\n)480 3844
y Ff(Resp)s(onse)20 b(exp)s(ected:)37 b(y)m(es.)h(Actually)20
b(do)h(a)g(cvs)g(command.)38 b(This)19 b(uses)h(an)m(y)i(previous)d
Fd(Argument)p Ff(,)480 3969 y Fd(Directory)p Ff(,)29
b Fd(Entry)p Ff(,)i(or)g Fd(Modified)e Ff(requests,)j(if)e(they)h(ha)m
(v)m(e)i(b)s(een)d(sen)m(t.)45 b(The)30 b(last)h Fd(Directory)480
4094 y Ff(sen)m(t)e(sp)s(eci\014es)e(the)i(w)m(orking)f(directory)g(at)
i(the)f(time)f(of)h(the)g(op)s(eration.)39 b(No)29 b(pro)m(vision)e(is)
h(made)480 4218 y(for)34 b(an)m(y)g(input)e(from)h(the)h(user.)51
b(This)32 b(means)h(that)i Fd(ci)e Ff(m)m(ust)h(use)f(a)i
Fd(-m)e Ff(argumen)m(t)h(if)f(it)g(w)m(an)m(ts)480 4343
y(to)e(sp)s(ecify)e(a)i(log)f(message.)0 4530 y Fd(co)g(\\n)258
b Ff(Resp)s(onse)50 b(exp)s(ected:)82 b(y)m(es.)103 b(Get)52
b(\014les)d(from)i(the)g(rep)s(ository)-8 b(.)101 b(This)49
b(uses)h(an)m(y)h(previous)480 4654 y Fd(Argument)p Ff(,)40
b Fd(Directory)p Ff(,)h Fd(Entry)p Ff(,)g(or)f Fd(Modified)e
Ff(requests,)k(if)d(they)h(ha)m(v)m(e)i(b)s(een)d(sen)m(t.)70
b(Argu-)480 4779 y(men)m(ts)39 b(to)g(this)e(command)i(are)g(mo)s(dule)
d(names;)43 b(the)c(clien)m(t)f(cannot)h(kno)m(w)g(what)f(directories)
480 4904 y(they)g(corresp)s(ond)e(to)i(except)h(b)m(y)e(\(1\))i(just)e
(sending)e(the)j Fd(co)f Ff(request,)j(and)d(then)g(seeing)g(what)480
5028 y(directory)f(names)g(the)g(serv)m(er)g(sends)f(bac)m(k)i(in)e
(its)g(resp)s(onses,)i(and)e(\(2\))j(the)e Fd(expand-modules)480
5153 y Ff(request.)0 5340 y Fd(rdiff)29 b(\\n)p eop
%%Page: 15 15
15 14 bop 0 366 a Fd(rtag)29 b(\\n)163 b Ff(Resp)s(onse)23
b(exp)s(ected:)37 b(y)m(es.)i(Actually)23 b(do)g(a)h(cvs)g(command.)38
b(This)22 b(uses)h(an)m(y)g(previous)f Fd(Argument)480
491 y Ff(requests,)43 b(if)c(they)h(ha)m(v)m(e)i(b)s(een)d(sen)m(t.)71
b(The)40 b(clien)m(t)g(should)e(not)j(send)e Fd(Directory)p
Ff(,)h Fd(Entry)p Ff(,)i(or)480 616 y Fd(Modified)20
b Ff(requests)i(for)g(this)f(command;)k(they)d(are)h(not)f(used.)38
b(Argumen)m(ts)22 b(to)h(these)f(commands)480 740 y(are)31
b(mo)s(dule)d(names,)j(as)g(describ)s(ed)d(for)i Fd(co)p
Ff(.)0 935 y Fd(init)f Fe(ro)s(ot-name)36 b Fd(\\n)480
1059 y Ff(Resp)s(onse)27 b(exp)s(ected:)40 b(y)m(es.)h(If)27
b(it)g(do)s(esn't)h(already)f(exist,)i(create)g(a)f Fb(cvs)f
Ff(rep)s(ository)g Fe(ro)s(ot-name)p Ff(.)480 1184 y(Note)40
b(that)e Fe(ro)s(ot-name)45 b Ff(is)37 b(a)i(lo)s(cal)e(directory)h
(and)f Fe(not)k Ff(a)e(fully)d(quali\014ed)g Fd(CVSROOT)g
Ff(v)-5 b(ariable.)480 1308 y(The)30 b Fd(Root)f Ff(request)h(need)h
(not)f(ha)m(v)m(e)i(b)s(een)d(previously)g(sen)m(t.)0
1503 y Fd(update)g(\\n)67 b Ff(Resp)s(onse)30 b(exp)s(ected:)42
b(y)m(es.)g(Actually)30 b(do)h(a)g Fd(cvs)f(update)f
Ff(command.)41 b(This)29 b(uses)h(an)m(y)h(previous)480
1627 y Fd(Argument)p Ff(,)g Fd(Directory)p Ff(,)g Fd(Entry)p
Ff(,)i(or)f Fd(Modified)f Ff(requests,)j(if)d(they)i(ha)m(v)m(e)h(b)s
(een)e(sen)m(t.)49 b(The)32 b(last)480 1752 y Fd(Directory)h
Ff(sen)m(t)i(sp)s(eci\014es)f(the)h(w)m(orking)g(directory)g(at)g(the)h
(time)f(of)g(the)g(op)s(eration.)55 b(The)35 b Fd(-I)480
1876 y Ff(option)24 b(is)f(not)i(used{\014les)e(whic)m(h)g(the)h(clien)
m(t)g(can)h(decide)e(whether)h(to)h(ignore)f(are)h(not)f(men)m(tioned)
480 2001 y(and)30 b(the)g(clien)m(t)g(sends)g(the)g Fd(Questionable)d
Ff(request)k(for)f(others.)0 2196 y Fd(import)f(\\n)67
b Ff(Resp)s(onse)30 b(exp)s(ected:)42 b(y)m(es.)g(Actually)30
b(do)h(a)g Fd(cvs)f(import)f Ff(command.)41 b(This)29
b(uses)h(an)m(y)h(previous)480 2320 y Fd(Argument)p Ff(,)g
Fd(Directory)p Ff(,)g Fd(Entry)p Ff(,)i(or)f Fd(Modified)f
Ff(requests,)j(if)d(they)i(ha)m(v)m(e)h(b)s(een)e(sen)m(t.)49
b(The)32 b(last)480 2445 y Fd(Directory)d Ff(sen)m(t)j(sp)s(eci\014es)e
(the)h(w)m(orking)g(directory)g(at)h(the)g(time)f(of)g(the)h(op)s
(eration.)43 b(The)31 b(\014les)480 2569 y(to)j(b)s(e)g(imp)s(orted)e
(are)i(sen)m(t)g(in)e Fd(Modified)g Ff(requests)i(\(\014les)f(whic)m(h)
f(the)i(clien)m(t)f(kno)m(ws)h(should)e(b)s(e)480 2694
y(ignored)c(are)i(not)g(sen)m(t;)g(the)g(serv)m(er)g(m)m(ust)f(still)e
(pro)s(cess)i(the)h(CVSR)m(OOT/cvsignore)e(\014le)h(unless)480
2818 y(-I)h(!)h(is)e(sen)m(t\).)42 b(A)30 b(log)h(message)g(m)m(ust)g
(ha)m(v)m(e)g(b)s(een)f(sp)s(eci\014ed)f(with)g(a)h Fd(-m)g
Ff(argumen)m(t.)0 3013 y Fd(watch-on)e(\\n)0 3137 y(watch-off)g(\\n)0
3262 y(watch-add)g(\\n)0 3386 y(watch-remove)f(\\n)480
3511 y Ff(Resp)s(onse)40 b(exp)s(ected:)63 b(y)m(es.)73
b(Actually)40 b(do)h(the)g Fd(cvs)29 b(watch)g(on)p Ff(,)44
b Fd(cvs)29 b(watch)g(off)p Ff(,)43 b Fd(cvs)29 b(watch)480
3635 y(add)p Ff(,)24 b(and)f Fd(cvs)30 b(watch)f(remove)21
b Ff(commands,)k(resp)s(ectiv)m(ely)-8 b(.)38 b(This)22
b(uses)h(an)m(y)h(previous)e Fd(Argument)p Ff(,)480 3760
y Fd(Directory)p Ff(,)29 b Fd(Entry)p Ff(,)i(or)g Fd(Modified)e
Ff(requests,)j(if)e(they)h(ha)m(v)m(e)i(b)s(een)d(sen)m(t.)45
b(The)30 b(last)h Fd(Directory)480 3885 y Ff(sen)m(t)g(sp)s(eci\014es)e
(the)h(w)m(orking)g(directory)g(at)h(the)g(time)f(of)g(the)h(op)s
(eration.)0 4079 y Fd(release)d(\\n)480 4204 y Ff(Resp)s(onse)43
b(exp)s(ected:)68 b(y)m(es.)81 b(Note)45 b(that)g(a)f
Fd(cvs)29 b(release)42 b Ff(command)i(has)f(tak)m(en)i(place)f(and)480
4328 y(up)s(date)30 b(the)g(history)f(\014le)h(accordingly)-8
b(.)0 4523 y Fd(noop)29 b(\\n)163 b Ff(Resp)s(onse)34
b(exp)s(ected:)48 b(y)m(es.)53 b(This)33 b(request)h(is)f(a)i(n)m(ull)d
(command)i(in)f(the)h(sense)h(that)f(it)g(do)s(esn't)480
4647 y(do)c(an)m(ything,)g(but)g(merely)f(\(as)i(with)e(an)m(y)i(other)
f(requests)h(exp)s(ecting)e(a)i(resp)s(onse\))f(sends)f(bac)m(k)480
4772 y(an)m(y)i(resp)s(onses)e(p)s(ertaining)f(to)j(p)s(ending)d
(errors,)i(p)s(ending)e Fd(Notified)g Ff(resp)s(onses,)i(etc.)0
4966 y Fd(update-patches)c(\\n)480 5091 y Ff(Resp)s(onse)34
b(exp)s(ected:)51 b(y)m(es.)k(This)33 b(request)i(do)s(es)g(not)g
(actually)g(do)g(an)m(ything.)54 b(It)35 b(is)f(used)g(as)i(a)480
5215 y(signal)31 b(that)i(the)g(serv)m(er)g(is)e(able)h(to)i(generate)g
(patc)m(hes)f(when)f(giv)m(en)g(an)g Fd(update)f Ff(request.)47
b(The)480 5340 y(clien)m(t)30 b(m)m(ust)g(issue)f(the)i
Fd(-u)f Ff(argumen)m(t)h(to)g Fd(update)d Ff(in)h(order)h(to)h(receiv)m
(e)h(patc)m(hes.)p eop
%%Page: 16 16
16 15 bop 0 366 a Fd(gzip-file-contents)25 b Fe(lev)m(el)34
b Fd(\\n)480 491 y Ff(Resp)s(onse)26 b(exp)s(ected:)39
b(no.)g(Note)28 b(that)f(this)f(request)g(do)s(es)g(not)h(follo)m(w)f
(the)g(resp)s(onse)g(con)m(v)m(en)m(tion)480 616 y(stated)39
b(ab)s(o)m(v)m(e.)66 b Fd(Gzip-stream)35 b Ff(is)j(suggested)h(instead)
e(of)i Fd(gzip-file-contents)33 b Ff(as)39 b(it)f(giv)m(es)480
740 y(b)s(etter)31 b(compression;)f(the)h(only)f(reason)g(to)i
(implemen)m(t)d(the)i(latter)g(is)f(to)h(pro)m(vide)f(compression)480
865 y(with)22 b Fb(cvs)g Ff(1.8)i(and)e(earlier.)37 b(The)22
b Fd(gzip-file-contents)c Ff(request)23 b(asks)g(the)g(serv)m(er)h(to)f
(compress)480 989 y(\014les)j(it)h(sends)g(to)h(the)f(clien)m(t)g
(using)f Fd(gzip)g Ff(\(RF)m(C1952/1951\))33 b(compression,)27
b(using)f(the)i(sp)s(eci\014ed)480 1114 y(lev)m(el)i(of)h(compression.)
39 b(If)30 b(this)g(request)g(is)f(not)i(made,)g(the)f(serv)m(er)h(m)m
(ust)f(not)h(compress)f(\014les.)480 1259 y(This)h(is)h(only)h(a)g(hin)
m(t)f(to)i(the)f(serv)m(er.)50 b(It)33 b(ma)m(y)h(still)d(decide)h
(\(for)h(example,)h(in)e(the)h(case)h(of)g(v)m(ery)480
1383 y(small)e(\014les,)i(or)g(\014les)f(that)h(already)g(app)s(ear)f
(to)h(b)s(e)g(compressed\))f(not)h(to)h(do)f(the)g(compression.)480
1508 y(Compression)29 b(is)g(indicated)g(b)m(y)h(a)h(`)p
Fd(z)p Ff(')g(preceding)e(the)h(\014le)g(length.)480
1653 y(Av)-5 b(ailabilit)m(y)33 b(of)i(this)g(request)g(in)f(the)i
(serv)m(er)f(indicates)g(to)h(the)f(clien)m(t)g(that)h(it)f(ma)m(y)h
(compress)480 1777 y(\014les)29 b(sen)m(t)i(to)g(the)g(serv)m(er,)g
(regardless)e(of)i(whether)f(the)g(clien)m(t)g(actually)g(uses)g(this)f
(request.)0 1942 y Fe(other-request)k(text)g Fd(\\n)480
2067 y Ff(Resp)s(onse)h(exp)s(ected:)49 b(y)m(es.)54
b(An)m(y)34 b(unrecognized)g(request)g(exp)s(ects)h(a)g(resp)s(onse,)g
(and)f(do)s(es)g(not)480 2191 y(con)m(tain)43 b(an)m(y)g(additional)d
(data.)79 b(The)42 b(resp)s(onse)f(will)f(normally)h(b)s(e)h(something)
g(lik)m(e)g(`)p Fd(error)480 2316 y(unrecognized)27 b(request)p
Ff(',)f(but)g(it)g(could)g(b)s(e)g(a)h(di\013eren)m(t)f(error)g(if)g(a)
h(previous)e(command)h(whic)m(h)480 2440 y(do)s(esn't)k(exp)s(ect)h(a)g
(resp)s(onse)e(pro)s(duced)g(an)h(error.)125 2735 y(When)g(the)g(clien)
m(t)g(is)g(done,)g(it)g(drops)f(the)i(connection.)0 3165
y Fa(5.7)68 b(Resp)t(onses)125 3439 y Ff(After)39 b(a)g(command)g(whic)
m(h)e(exp)s(ects)j(a)f(resp)s(onse,)h(the)g(serv)m(er)f(sends)f(ho)m(w)
m(ev)m(er)i(man)m(y)f(of)g(the)g(follo)m(wing)0 3563
y(resp)s(onses)29 b(are)h(appropriate.)39 b(The)29 b(serv)m(er)h
(should)e(not)i(send)e(data)j(at)f(other)g(times)f(\(the)h(curren)m(t)g
(implemen-)0 3688 y(tation)25 b(ma)m(y)f(violate)h(this)e(principle)e
(in)i(a)h(few)g(minor)f(places,)j(where)d(the)i(serv)m(er)f(is)g(prin)m
(ting)e(an)i(error)g(message)0 3812 y(and)30 b(exiting|this)e(should)h
(b)s(e)g(in)m(v)m(estigated)i(further\).)125 4086 y(In)25
b(the)h(follo)m(wing,)g Fe(pathname)31 b Ff(actually)25
b(indicates)g(a)h(pair)f(of)h(pathnames.)39 b(First,)27
b(a)f(lo)s(cal)f(directory)h(name)0 4211 y(relativ)m(e)42
b(to)g(the)g(directory)f(in)g(whic)m(h)f(the)i(command)g(w)m(as)g(giv)m
(en)g(\(i.e.)75 b(the)42 b(last)f Fd(Directory)e Ff(b)s(efore)j(the)0
4335 y(command\).)f(Then)28 b(a)i(linefeed)e(and)h(a)h(rep)s(ository)e
(name.)40 b(Then)29 b(a)h(slash)e(and)h(the)h(\014lename)e(\(without)h
(a)h(`)p Fd(,v)p Ff(')0 4460 y(ending\).)41 b(F)-8 b(or)32
b(example,)f(for)g(a)g(\014le)f(`)p Fd(i386.mh)p Ff(')g(whic)m(h)f(is)h
(in)g(the)h(lo)s(cal)f(directory)h(`)p Fd(gas.clean/config)p
Ff(')c(and)0 4584 y(for)j(whic)m(h)f(the)i(rep)s(ository)e(is)h(`)p
Fd(/rel/cvsfiles/devo/gas/)o(conf)o(ig)p Ff(':)240 4838
y Fd(gas.clean/config/)240 4941 y(/rel/cvsfiles/devo/gas/c)o(onfi)o
(g/i3)o(86.)o(mh)125 5215 y Ff(If)24 b(the)h(serv)m(er)h(w)m(an)m(ts)f
(to)h(tell)f(the)g(clien)m(t)f(to)i(create)h(a)e(directory)-8
b(,)27 b(then)d(it)h(merely)f(uses)h(the)g(directory)g(in)f(an)m(y)0
5340 y(resp)s(onse,)33 b(as)h(describ)s(ed)d(ab)s(o)m(v)m(e,)k(and)e
(the)g(clien)m(t)g(should)e(create)k(the)e(directory)g(if)f(it)g(do)s
(es)h(not)h(exist.)49 b(Note)p eop
%%Page: 17 17
17 16 bop 0 366 a Ff(that)37 b(this)f(should)e(only)i(b)s(e)g(done)h
(one)g(directory)f(at)h(a)g(time,)h(in)e(order)g(to)h(p)s(ermit)e(the)i
(clien)m(t)f(to)i(correctly)0 491 y(store)g(the)g(rep)s(ository)f(for)g
(eac)m(h)i(directory)-8 b(.)62 b(Serv)m(ers)37 b(can)h(use)g(requests)f
(suc)m(h)g(as)h Fd(Clear-sticky)p Ff(,)f Fd(Clear-)0
616 y(static-directory)p Ff(,)26 b(or)31 b(an)m(y)f(other)h(requests,)f
(to)i(create)f(directories.)125 895 y(Some)24 b(serv)m(er)h(implemen)m
(tations)f(ma)m(y)h(p)s(o)s(orly)e(distinguish)e(b)s(et)m(w)m(een)k(a)h
(directory)e(whic)m(h)f(should)g(not)i(exist)0 1020 y(and)k(a)h
(directory)g(whic)m(h)e(con)m(tains)i(no)g(\014les;)f(in)g(order)g(to)i
(refrain)d(from)i(creating)g(empt)m(y)g(directories)f(a)h(clien)m(t)0
1144 y(should)35 b(b)s(oth)h(send)h(the)g(`)p Fd(-P)p
Ff(')g(option)f(to)i Fd(update)e Ff(or)h Fd(co)p Ff(,)h(and)e(should)f
(also)i(detect)i(the)e(case)h(in)e(whic)m(h)g(the)0 1269
y(serv)m(er)d(asks)g(to)g(create)h(a)g(directory)e(but)g(not)h(an)m(y)g
(\014les)e(within)g(it)h(\(in)g(that)h(case)h(the)e(clien)m(t)h(should)
d(remo)m(v)m(e)0 1393 y(the)35 b(directory)f(or)g(refrain)f(from)h
(creating)h(it)f(in)f(the)h(\014rst)g(place\).)53 b(Note)36
b(that)f(serv)m(ers)g(could)e(clean)i(this)e(up)0 1518
y(greatly)e(b)m(y)g(only)f(telling)g(the)h(clien)m(t)g(to)g(create)i
(directories)d(if)g(the)h(directory)g(in)e(question)h(should)f(exist,)j
(but)0 1642 y(un)m(til)d(serv)m(ers)h(do)g(this,)g(clien)m(ts)g(will)d
(need)k(to)g(o\013er)f(the)h(`)p Fd(-P)p Ff(')f(b)s(eha)m(vior)g
(describ)s(ed)e(ab)s(o)m(v)m(e.)125 1922 y(An)m(y)i(resp)s(onse)f(alw)m
(a)m(ys)i(ends)f(with)f(`)p Fd(error)p Ff(')g(or)i(`)p
Fd(ok)p Ff('.)40 b(This)29 b(indicates)g(that)i(the)g(resp)s(onse)e(is)
h(o)m(v)m(er.)0 2232 y Fd(Valid-requests)c Fe(request-list)32
b Fd(\\n)480 2356 y Ff(Indicate)i(what)h(requests)f(the)h(serv)m(er)g
(will)d(accept.)55 b Fe(request-list)36 b Ff(is)d(a)i(space)g
(separated)g(list)f(of)480 2481 y(tok)m(ens.)40 b(If)27
b(the)g(serv)m(er)g(supp)s(orts)e(sending)g(patc)m(hes,)j(it)f(will)d
(include)g(`)p Fd(update-patches)p Ff(')g(in)h(this)480
2605 y(list.)39 b(The)30 b(`)p Fd(update-patches)p Ff(')d(request)k(do)
s(es)f(not)g(actually)g(do)h(an)m(ything.)0 2791 y Fd(Checked-in)d
Fe(pathname)35 b Fd(\\n)480 2916 y Ff(Additional)29 b(data:)45
b(New)32 b(En)m(tries)f(line,)g Fd(\\)p Ff(n.)44 b(This)30
b(means)i(a)g(\014le)f Fe(pathname)37 b Ff(has)31 b(b)s(een)g(success-)
480 3040 y(fully)26 b(op)s(erated)j(on)f(\(c)m(hec)m(k)m(ed)j(in,)d
(added,)g(etc.\).)42 b(name)29 b(in)e(the)h(En)m(tries)g(line)f(is)g
(the)i(same)g(as)g(the)480 3165 y(last)h(comp)s(onen)m(t)h(of)f
Fe(pathname)p Ff(.)0 3350 y Fd(New-entry)e Fe(pathname)35
b Fd(\\n)480 3475 y Ff(Additional)25 b(data:)39 b(New)27
b(En)m(tries)g(line,)f Fd(\\)p Ff(n.)39 b(Lik)m(e)27
b Fd(Checked-in)p Ff(,)e(but)h(the)h(\014le)f(is)g(not)h(up)f(to)i
(date.)0 3660 y Fd(Updated)g Fe(pathname)36 b Fd(\\n)480
3785 y Ff(Additional)28 b(data:)41 b(New)30 b(En)m(tries)g(line,)f
Fd(\\)p Ff(n,)g(mo)s(de,)h Fd(\\)p Ff(n,)g(\014le)f(transmission.)39
b(A)30 b(new)f(cop)m(y)i(of)g(the)480 3909 y(\014le)24
b(is)g(enclosed.)39 b(This)23 b(is)h(used)h(for)g(a)g(new)g(revision)e
(of)i(an)g(existing)f(\014le,)i(or)f(for)g(a)g(new)g(\014le,)g(or)g
(for)480 4034 y(an)m(y)j(other)f(case)i(in)d(whic)m(h)g(the)i(lo)s(cal)
f(\(clien)m(t-side\))g(cop)m(y)h(of)f(the)h(\014le)f(needs)g(to)h(b)s
(e)f(up)s(dated,)g(and)480 4158 y(after)j(b)s(eing)d(up)s(dated)h(it)h
(will)d(b)s(e)j(up)f(to)i(date.)41 b(If)29 b(an)m(y)g(directory)g(in)f
(pathname)h(do)s(es)f(not)i(exist,)480 4283 y(create)i(it.)40
b(This)29 b(resp)s(onse)g(is)h(not)g(used)g(if)f Fd(Created)g
Ff(and)g Fd(Update-existing)d Ff(are)31 b(supp)s(orted.)0
4468 y Fd(Created)d Fe(pathname)36 b Fd(\\n)480 4593
y Ff(This)f(is)i(just)f(lik)m(e)h Fd(Updated)e Ff(and)h(tak)m(es)j(the)
e(same)h(additional)d(data,)40 b(but)c(is)g(used)h(only)f(if)g(no)480
4717 y Fd(Entry)p Ff(,)k Fd(Modified)p Ff(,)f(or)g Fd(Unchanged)d
Ff(request)j(has)g(b)s(een)f(sen)m(t)h(for)g(the)g(\014le)f(in)g
(question.)65 b(The)480 4842 y(distinction)35 b(b)s(et)m(w)m(een)i
Fd(Created)f Ff(and)g Fd(Update-existing)d Ff(is)j(so)h(that)h(the)f
(clien)m(t)g(can)g(giv)m(e)h(an)480 4966 y(error)j(message)h(in)e(sev)m
(eral)i(cases:)63 b(\(1\))43 b(there)e(is)g(a)g(\014le)g(in)f(the)h(w)m
(orking)g(directory)-8 b(,)44 b(but)d(not)480 5091 y(one)31
b(for)f(whic)m(h)g Fd(Entry)p Ff(,)f Fd(Modified)p Ff(,)g(or)i
Fd(Unchanged)d Ff(w)m(as)j(sen)m(t)g(\(for)g(example,)f(a)h(\014le)f
(whic)m(h)g(w)m(as)480 5215 y(ignored,)j(or)g(a)g(\014le)f(for)h(whic)m
(h)e Fd(Questionable)f Ff(w)m(as)j(sen)m(t\),)i(\(2\))f(there)f(is)f(a)
h(\014le)f(in)g(the)h(w)m(orking)480 5340 y(directory)23
b(whose)h(name)f(di\013ers)g(from)g(the)h(one)g(men)m(tioned)f(in)g
Fd(Created)e Ff(in)i(w)m(a)m(ys)h(that)g(the)g(clien)m(t)p
eop
%%Page: 18 18
18 17 bop 480 366 a Ff(is)30 b(unable)f(to)i(use)g(to)g(distinguish)c
(\014les.)41 b(F)-8 b(or)31 b(example,)g(the)g(clien)m(t)f(is)g
(case-insensitiv)m(e)g(and)g(the)480 491 y(names)g(di\013er)f(only)h
(in)f(case.)0 677 y Fd(Update-existing)d Fe(pathname)36
b Fd(\\n)480 801 y Ff(This)i(is)i(just)f(lik)m(e)h Fd(Updated)e
Ff(and)i(tak)m(es)i(the)e(same)h(additional)d(data,)44
b(but)39 b(is)g(used)h(only)f(if)h(a)480 926 y Fd(Entry)p
Ff(,)29 b Fd(Modified)p Ff(,)g(or)h Fd(Unchanged)e Ff(request)i(has)g
(b)s(een)g(sen)m(t)h(for)f(the)h(\014le)e(in)g(question.)480
1081 y(This)36 b(resp)s(onse,)i(or)f Fd(Merged)p Ff(,)h(indicates)e
(that)i(the)g(serv)m(er)f(has)g(determined)f(that)i(it)f(is)g(OK)f(to)
480 1205 y(o)m(v)m(erwrite)h(the)f(previous)e(con)m(ten)m(ts)k(of)e
(the)g(\014le)f(sp)s(eci\014ed)f(b)m(y)i Fe(pathname)p
Ff(.)57 b(Pro)m(vided)35 b(that)i(the)480 1330 y(clien)m(t)i(has)g
(correctly)h(sen)m(t)g Fd(Modified)d Ff(or)j Fd(Is-modified)c
Ff(requests)j(for)g(a)h(mo)s(di\014ed)d(\014le,)42 b(and)480
1454 y(the)34 b(\014le)f(w)m(as)h(not)g(mo)s(di\014ed)e(while)f(CVS)j
(w)m(as)g(running,)e(the)i(serv)m(er)g(can)g(ensure)f(that)h(a)h
(user's)480 1579 y(mo)s(di\014cations)29 b(are)h(not)h(lost.)0
1764 y Fd(Merged)e Fe(pathname)35 b Fd(\\n)480 1889 y
Ff(This)d(is)h(just)g(lik)m(e)g Fd(Updated)f Ff(and)h(tak)m(es)i(the)f
(same)g(additional)e(data,)j(with)e(the)g(one)h(di\013erence)480
2013 y(that)e(after)h(the)f(new)f(cop)m(y)i(of)f(the)g(\014le)f(is)g
(enclosed,)h(it)f(will)e(still)h(not)i(b)s(e)f(up)g(to)i(date.)45
b(Used)32 b(for)480 2138 y(the)f(results)e(of)h(a)h(merge,)g(with)e(or)
i(without)e(con\015icts.)480 2293 y(It)40 b(is)f(useful)f(to)i(preserv)
m(e)g(an)g(cop)m(y)g(of)g(what)g(the)g(\014le)f(lo)s(ok)m(ed)h(lik)m(e)
f(b)s(efore)g(the)h(merge.)70 b(This)480 2417 y(is)40
b(basically)g(handled)f(b)m(y)j(the)f(serv)m(er;)47 b(b)s(efore)41
b(sending)f Fd(Merged)g Ff(it)h(will)d(send)j(a)g Fd(Copy-file)480
2542 y Ff(resp)s(onse.)d(F)-8 b(or)27 b(example,)g(if)e(the)h(\014le)f
(is)g(`)p Fd(aa)p Ff(')g(and)h(it)f(deriv)m(es)h(from)f(revision)f
(1.3,)k(the)e Fd(Copy-file)480 2666 y Ff(resp)s(onse)31
b(will)d(tell)j(the)h(clien)m(t)f(to)h(cop)m(y)g(`)p
Fd(aa)p Ff(')g(to)g(`)p Fd(.#aa.1.3)p Ff('.)43 b(It)31
b(is)g(up)f(to)i(the)g(clien)m(t)f(to)i(decide)480 2791
y(ho)m(w)d(long)f(to)h(k)m(eep)h(this)d(\014le)h(around;)g
(traditionally)e(clien)m(ts)j(ha)m(v)m(e)g(left)g(it)f(around)g(forev)m
(er,)h(th)m(us)480 2916 y(letting)40 b(the)g(user)g(clean)g(it)g(up)f
(as)h(desired.)69 b(But)40 b(another)h(answ)m(er,)i(suc)m(h)c(as)i(un)m
(til)d(the)j(next)480 3040 y(commit,)31 b(migh)m(t)f(b)s(e)f
(preferable.)0 3226 y Fd(Patched)f Fe(pathname)36 b Fd(\\n)480
3350 y Ff(This)c(is)h(just)g(lik)m(e)g Fd(Updated)f Ff(and)h(tak)m(es)i
(the)f(same)g(additional)e(data,)j(with)e(the)g(one)h(di\013erence)480
3475 y(that)j(instead)g(of)g(sending)e(a)i(new)g(cop)m(y)g(of)g(the)g
(\014le,)h(the)f(serv)m(er)g(sends)f(a)h(patc)m(h.)61
b(This)35 b(patc)m(h)480 3599 y(is)e(pro)s(duced)f(b)m(y)i(`)p
Fd(diff)c(-c)p Ff(')j(for)h Fb(cvs)f Ff(1.6)i(and)e(later)h(\(see)h
(POSIX.2)f(for)g(a)g(description)e(of)i(this)480 3724
y(format\),)44 b(or)c(`)p Fd(diff)30 b(-u)p Ff(')40 b(for)g(previous)f
(v)m(ersions)g(of)i Fb(cvs)p Ff(;)k(clien)m(ts)40 b(are)g(encouraged)h
(to)g(accept)480 3848 y(either)32 b(format.)47 b(The)32
b(clien)m(t)g(m)m(ust)g(apply)f(this)h(patc)m(h)h(to)g(the)f(existing)g
(\014le.)46 b(This)30 b(will)g(only)i(b)s(e)480 3973
y(used)d(when)g(the)h(clien)m(t)f(has)h(an)g(exact)h(cop)m(y)g(of)f(an)
f(earlier)g(revision)f(of)i(a)g(\014le.)40 b(This)28
b(resp)s(onse)h(is)480 4097 y(only)g(used)h(if)f(the)i
Fd(update)e Ff(command)h(is)f(giv)m(en)i(the)f(`)p Fd(-u)p
Ff(')g(argumen)m(t.)0 4283 y Fd(Mode)f Fe(mo)s(de)35
b Fd(\\n)480 4407 y Ff(This)j Fe(mo)s(de)45 b Ff(applies)38
b(to)j(the)f(next)g(\014le)f(men)m(tioned)g(in)g Fd(Checked-in)p
Ff(.)67 b(It)40 b(do)s(es)f(not)i(apply)d(to)480 4532
y(an)m(y)i(request)g(whic)m(h)e(follo)m(ws)h(a)h Fd(Checked-in)p
Ff(,)g Fd(New-entry)p Ff(,)f Fd(Updated)p Ff(,)i Fd(Merged)p
Ff(,)f(or)g Fd(Patched)480 4656 y Ff(resp)s(onse.)0 4842
y Fd(Checksum)28 b Fe(c)m(hec)m(ksum)p Fd(\\n)480 4966
y Ff(The)33 b Fe(c)m(hec)m(ksum)g Ff(applies)f(to)h(the)h(next)f
(\014le)f(sen)m(t)i(o)m(v)m(er)g(via)f Fd(Updated)p Ff(,)f
Fd(Merged)p Ff(,)g(or)h Fd(Patched)p Ff(.)47 b(In)480
5091 y(the)35 b(case)h(of)f Fd(Patched)p Ff(,)g(the)g(c)m(hec)m(ksum)h
(applies)d(to)j(the)f(\014le)f(after)h(b)s(eing)f(patc)m(hed,)j(not)e
(to)h(the)480 5215 y(patc)m(h)d(itself.)47 b(The)32 b(clien)m(t)h
(should)d(compute)j(the)g(c)m(hec)m(ksum)h(itself,)e(after)h(receiving)
f(the)h(\014le)f(or)480 5340 y(patc)m(h,)39 b(and)c(signal)g(an)h
(error)g(if)f(the)i(c)m(hec)m(ksums)g(do)f(not)g(matc)m(h.)59
b(The)36 b(c)m(hec)m(ksum)h(is)e(the)i(128)p eop
%%Page: 19 19
19 18 bop 480 366 a Ff(bit)29 b(MD5)i(c)m(hec)m(ksum)f(represen)m(ted)g
(as)g(32)g(hex)g(digits.)39 b(This)28 b(resp)s(onse)h(is)g(optional,)g
(and)g(is)g(only)480 491 y(used)h(if)f(the)h(clien)m(t)g(supp)s(orts)f
(it)h(\(as)h(judged)e(b)m(y)h(the)h Fd(Valid-responses)26
b Ff(request\).)0 670 y Fd(Copy-file)i Fe(pathname)35
b Fd(\\n)480 795 y Ff(Additional)26 b(data:)41 b Fe(newname)33
b Fd(\\)p Ff(n.)40 b(Cop)m(y)29 b(\014le)e Fe(pathname)34
b Ff(to)c Fe(newname)j Ff(in)27 b(the)i(same)g(directory)480
919 y(where)h(it)g(already)g(is.)40 b(This)28 b(do)s(es)i(not)h
(a\013ect)h Fd(CVS/Entries)p Ff(.)0 1098 y Fd(Removed)c
Fe(pathname)36 b Fd(\\n)480 1223 y Ff(The)30 b(\014le)f(has)h(b)s(een)g
(remo)m(v)m(ed)h(from)f(the)h(rep)s(ository)e(\(this)g(is)h(the)g(case)
i(where)e(cvs)g(prin)m(ts)f(`)p Fd(file)480 1347 y(foobar.c)f(is)i(no)g
(longer)e(pertinent)p Ff('\).)0 1526 y Fd(Remove-entry)f
Fe(pathname)35 b Fd(\\n)480 1651 y Ff(The)d(\014le)g(needs)g(its)g(en)m
(try)h(remo)m(v)m(ed)h(from)e Fd(CVS/Entries)p Ff(,)f(but)h(the)h
(\014le)f(itself)f(is)h(already)g(gone)480 1775 y(\(this)f(happ)s(ens)f
(in)g(resp)s(onse)h(to)h(a)g Fd(ci)f Ff(request)h(whic)m(h)e(in)m(v)m
(olv)m(es)i(committing)f(the)h(remo)m(v)-5 b(al)32 b(of)g(a)480
1900 y(\014le\).)0 2079 y Fd(Set-static-directory)25
b Fe(pathname)35 b Fd(\\n)480 2203 y Ff(This)i(instructs)g(the)h(clien)
m(t)g(to)i(set)f(the)f Fd(Entries.Static)d Ff(\015ag,)41
b(whic)m(h)c(it)h(should)f(then)h(send)480 2328 y(bac)m(k)31
b(to)h(the)f(serv)m(er)g(in)e(a)i Fd(Static-directory)c
Ff(request)j(whenev)m(er)h(the)g(directory)f(is)g(op)s(erated)480
2452 y(on.)45 b Fe(pathname)36 b Ff(ends)31 b(in)g(a)h(slash;)f(its)g
(purp)s(ose)g(is)f(to)j(sp)s(ecify)d(a)i(directory)-8
b(,)32 b(not)g(a)h(\014le)d(within)g(a)480 2577 y(directory)-8
b(.)0 2756 y Fd(Clear-static-directory)24 b Fe(pathname)36
b Fd(\\n)480 2880 y Ff(Lik)m(e)30 b Fd(Set-static-directory)p
Ff(,)25 b(but)30 b(clear,)h(not)f(set,)h(the)g(\015ag.)0
3059 y Fd(Set-sticky)d Fe(pathname)35 b Fd(\\n)480 3184
y Ff(Additional)c(data:)46 b Fe(tagsp)s(ec)39 b Fd(\\)p
Ff(n.)48 b(T)-8 b(ell)32 b(the)h(clien)m(t)f(to)i(set)f(a)h(stic)m(ky)f
(tag)h(or)f(date,)h(whic)m(h)e(should)480 3309 y(b)s(e)f(supplied)d
(with)i(the)i Fd(Sticky)d Ff(request)j(for)f(future)g(op)s(erations.)43
b Fe(pathname)36 b Ff(ends)31 b(in)f(a)i(slash;)480 3433
y(its)37 b(purp)s(ose)e(is)i(to)h(sp)s(ecify)e(a)i(directory)-8
b(,)39 b(not)f(a)f(\014le)g(within)e(a)i(directory)-8
b(.)62 b(The)37 b(clien)m(t)g(should)480 3558 y(store)d
Fe(tagsp)s(ec)41 b Ff(and)33 b(pass)g(it)g(bac)m(k)i(to)f(the)g(serv)m
(er)g(as-is,)h(to)f(allo)m(w)f(for)h(future)f(expansion.)49
b(The)480 3682 y(\014rst)36 b(c)m(haracter)j(of)e Fe(tagsp)s(ec)43
b Ff(is)36 b(`)p Fd(T)p Ff(')h(for)g(a)g(tag,)j(`)p Fd(D)p
Ff(')d(for)g(a)h(date,)h(or)e(something)f(else)h(for)g(future)480
3807 y(expansion.)j(The)29 b(remainder)g(of)i Fe(tagsp)s(ec)37
b Ff(con)m(tains)30 b(the)h(actual)f(tag)i(or)e(date.)0
3986 y Fd(Clear-sticky)d Fe(pathname)35 b Fd(\\n)480
4110 y Ff(Clear)30 b(an)m(y)g(stic)m(ky)h(tag)h(or)e(date)h(set)g(b)m
(y)f Fd(Set-sticky)p Ff(.)0 4289 y Fd(Template)e Fe(pathname)35
b Fd(\\n)480 4414 y Ff(Additional)i(data:)60 b(\014le)38
b(transmission)f(\(note:)60 b(compressed)39 b(\014le)f(transmissions)f
(are)j(not)g(sup-)480 4538 y(p)s(orted\).)72 b Fe(pathname)46
b Ff(ends)40 b(in)f(a)i(slash;)k(its)c(purp)s(ose)e(is)h(to)h(sp)s
(ecify)f(a)h(directory)-8 b(,)44 b(not)d(a)g(\014le)480
4663 y(within)36 b(a)k(directory)-8 b(.)67 b(T)-8 b(ell)38
b(the)h(clien)m(t)f(to)i(store)g(the)f(\014le)f(transmission)f(as)i
(the)g(template)h(log)480 4787 y(message,)34 b(and)e(then)h(use)f(that)
h(template)g(in)e(the)i(future)f(when)f(prompting)g(the)i(user)f(for)g
(a)h(log)480 4912 y(message.)0 5091 y Fd(Set-checkin-prog)26
b Fe(dir)35 b Fd(\\n)480 5215 y Ff(Additional)e(data:)51
b Fe(prog)43 b Fd(\\)p Ff(n.)55 b(T)-8 b(ell)34 b(the)i(clien)m(t)e(to)
j(set)e(a)h(c)m(hec)m(kin)g(program,)g(whic)m(h)e(should)g(b)s(e)480
5340 y(supplied)27 b(with)i(the)i Fd(Checkin-prog)c Ff(request)j(for)g
(future)g(op)s(erations.)p eop
%%Page: 20 20
20 19 bop 0 366 a Fd(Set-update-prog)26 b Fe(dir)35 b
Fd(\\n)480 491 y Ff(Additional)c(data:)47 b Fe(prog)41
b Fd(\\)p Ff(n.)49 b(T)-8 b(ell)32 b(the)h(clien)m(t)g(to)h(set)g(an)f
(up)s(date)f(program,)i(whic)m(h)e(should)g(b)s(e)480
616 y(supplied)27 b(with)i(the)i Fd(Update-prog)c Ff(request)j(for)h
(future)e(op)s(erations.)0 791 y Fd(Notified)f Fe(pathname)35
b Fd(\\n)480 915 y Ff(Indicate)30 b(to)i(the)f(clien)m(t)f(that)h(the)g
(noti\014cation)f(for)g Fe(pathname)36 b Ff(has)30 b(b)s(een)g(done.)42
b(There)30 b(should)480 1040 y(b)s(e)38 b(one)h(suc)m(h)g(resp)s(onse)f
(for)g(ev)m(ery)i Fd(Notify)d Ff(request;)44 b(if)37
b(there)i(are)h(sev)m(eral)f Fd(Notify)e Ff(requests)480
1164 y(for)29 b(a)h(single)e(\014le,)i(the)f(requests)h(should)d(b)s(e)
i(pro)s(cessed)g(in)f(order;)i(the)g(\014rst)f Fd(Notified)e
Ff(resp)s(onse)480 1289 y(p)s(ertains)i(to)i(the)f(\014rst)g
Fd(Notify)f Ff(request,)h(etc.)0 1464 y Fd(Module-expansion)c
Fe(pathname)35 b Fd(\\n)30 b(Return)f(a)h(file)f(or)h(directory)480
1589 y Ff(whic)m(h)e(is)g(included)f(in)h(a)i(particular)e(mo)s(dule.)
38 b Fe(pathname)d Ff(is)28 b(relativ)m(e)h(to)i(cvsro)s(ot,)f(unlik)m
(e)e(most)480 1713 y(pathnames)35 b(in)f(resp)s(onses.)55
b Fe(pathname)41 b Ff(should)33 b(b)s(e)i(used)g(to)h(lo)s(ok)f(and)g
(see)h(whether)f(some)h(or)480 1838 y(all)c(of)i(the)g(mo)s(dule)d
(exists)i(on)h(the)f(clien)m(t)g(side;)i(it)e(is)f(not)i(necessarily)e
(suitable)g(for)h(passing)g(as)480 1962 y(an)d(argumen)m(t)g(to)h(a)f
Fd(co)f Ff(request)h(\(for)g(example,)g(if)e(the)j(mo)s(dules)d(\014le)
g(con)m(tains)i(the)h(`)p Fd(-d)p Ff(')e(option,)480
2087 y(it)h(will)e(b)s(e)h(the)i(directory)f(sp)s(eci\014ed)e(with)i(`)
p Fd(-d)p Ff(',)g(not)h(the)f(name)h(of)f(the)h(mo)s(dule\).)0
2262 y Fd(M)f Fe(text)j Fd(\\n)115 b Ff(A)30 b(one-line)g(message)h
(for)g(the)f(user.)0 2438 y Fd(E)g Fe(text)j Fd(\\n)115
b Ff(Same)30 b(as)h Fd(M)f Ff(but)g(send)f(to)i(stderr)f(not)h(stdout.)
0 2613 y Fd(F)f(\\n)306 b Ff(Flush)35 b(stderr.)57 b(That)36
b(is,)h(mak)m(e)g(it)f(p)s(ossible)d(for)j(the)h(user)e(to)i(see)g
(what)f(has)g(b)s(een)f(written)g(to)480 2738 y(stderr)29
b(\(it)h(is)f(up)g(to)i(the)g(implemen)m(tation)d(to)j(decide)f
(exactly)g(ho)m(w)g(far)g(it)g(should)e(go)j(to)g(ensure)480
2862 y(this\).)0 3037 y Fd(error)e Fe(errno-co)s(de)36
b Fd(`)47 b(')30 b Fe(text)j Fd(\\n)480 3162 y Ff(The)44
b(command)f(completed)i(with)d(an)i(error.)82 b Fe(errno-co)s(de)49
b Ff(is)43 b(a)i(sym)m(b)s(olic)d(error)i(co)s(de)g(\(e.g.)480
3287 y Fd(ENOENT)p Ff(\);)39 b(if)c(the)i(serv)m(er)g(do)s(esn't)g
(supp)s(ort)e(this)g(feature,)k(or)e(if)f(it's)g(not)h(appropriate)f
(for)g(this)480 3411 y(particular)25 b(message,)k(it)e(just)f(omits)h
(the)g(errno-co)s(de)g(\(in)f(that)h(case)h(there)f(are)h(t)m(w)m(o)g
(spaces)f(after)480 3536 y(`)p Fd(error)p Ff('\).)58
b(T)-8 b(ext)37 b(is)f(an)g(error)g(message)h(suc)m(h)f(as)h(that)g
(pro)m(vided)e(b)m(y)h(strerror\(\),)j(or)d(an)m(y)h(other)480
3660 y(message)31 b(the)g(serv)m(er)g(w)m(an)m(ts)g(to)g(use.)0
3835 y Fd(ok)f(\\n)258 b Ff(The)30 b(command)g(completed)g
(successfully)-8 b(.)0 4288 y Fa(5.8)68 b(Example)125
4563 y Ff(Here)41 b(is)g(an)g(example;)47 b(lines)40
b(are)h(pre\014xed)g(b)m(y)g(`)p Fd(C:)30 b Ff(')41 b(to)i(indicate)d
(the)i(clien)m(t)e(sends)h(them)g(or)h(`)p Fd(S:)30 b
Ff(')41 b(to)0 4687 y(indicate)29 b(the)i(serv)m(er)g(sends)e(them.)125
4962 y(The)i(clien)m(t)h(starts)h(b)m(y)f(connecting,)i(sending)c(the)j
(ro)s(ot,)g(and)f(completing)g(the)g(proto)s(col)h(negotiation.)47
b(In)0 5086 y(actual)31 b(practice)f(the)h(lists)e(of)h(v)-5
b(alid)29 b(resp)s(onses)g(and)h(requests)g(w)m(ould)g(b)s(e)f(longer.)
240 5340 y Fd(C:)47 b(Root)g(/home/kingdon/testing/cv)o(sro)o(ot)p
eop
%%Page: 21 21
21 20 bop 240 366 a Fd(C:)47 b(Valid-responses)d(ok)j(error)f
(Checked-in)f(M)j(E)240 470 y(C:)f(valid-requests)240
574 y(S:)g(Valid-requests)d(Root)j(Directory)e(Entry)h(Modified)g
(Argument)f(Argumentx)h(ci)h(co)240 678 y(S:)g(ok)240
782 y(C:)g(UseUnchanged)125 1056 y Ff(The)23 b(clien)m(t)h(w)m(an)m(ts)
g(to)h(c)m(hec)m(k)g(out)g(the)f Fd(supermunger)d Ff(mo)s(dule)h(in)m
(to)i(a)g(fresh)f(w)m(orking)h(directory)-8 b(.)38 b(Therefore)0
1180 y(it)27 b(\014rst)g(expands)f(the)i Fd(supermunger)c
Ff(mo)s(dule;)j(this)f(step)h(w)m(ould)g(b)s(e)f(omitted)i(if)e(the)i
(clien)m(t)f(w)m(as)g(op)s(erating)g(on)0 1305 y(a)k(directory)f
(rather)g(than)g(a)h(mo)s(dule.)240 1558 y Fd(C:)47 b(Argument)f
(supermunger)240 1662 y(C:)h(Directory)e(.)240 1766 y(C:)i
(/home/kingdon/testing/cvs)o(root)240 1869 y(C:)g(expand-modules)125
2143 y Ff(The)37 b(serv)m(er)h(replies)e(that)i(the)g
Fd(supermunger)d Ff(mo)s(dule)h(expands)h(to)h(the)g(directory)g
Fd(supermunger)c Ff(\(the)0 2268 y(simplest)29 b(case\):)240
2521 y Fd(S:)47 b(Module-expansion)d(supermunger)240
2625 y(S:)j(ok)125 2899 y Ff(The)e(clien)m(t)g(then)h(pro)s(ceeds)g(to)
g(c)m(hec)m(k)i(out)e(the)g(directory)-8 b(.)88 b(The)45
b(fact)i(that)f(it)g(sends)f(only)g(a)h(single)0 3023
y Fd(Directory)30 b Ff(request)i(whic)m(h)f(sp)s(eci\014es)g(`)p
Fd(.)p Ff(')i(for)f(the)g(w)m(orking)g(directory)g(means)g(that)h
(there)g(is)e(not)i(already)f(a)0 3148 y Fd(supermunger)27
b Ff(directory)j(on)g(the)h(clien)m(t.)240 3401 y Fd(C:)47
b(Argument)f(-N)240 3505 y(C:)h(Argument)f(supermunger)240
3609 y(C:)h(Directory)e(.)240 3713 y(C:)i(/home/kingdon/testing/cvs)o
(root)240 3816 y(C:)g(co)125 4090 y Ff(The)23 b(serv)m(er)h(replies)e
(with)h(the)h(requested)g(\014les.)38 b(In)23 b(this)g(example,)i
(there)f(is)f(only)g(one,)j(`)p Fd(mungeall.c)p Ff('.)36
b(The)0 4215 y Fd(Clear-sticky)23 b Ff(and)j Fd(Clear-static-directory)
21 b Ff(requests)26 b(are)h(sen)m(t)g(b)m(y)f(the)h(curren)m(t)f
(implemen)m(tation)g(but)0 4340 y(they)33 b(ha)m(v)m(e)h(no)f(e\013ect)
h(b)s(ecause)f(the)g(default)f(is)g(for)h(those)g(settings)g(to)h(b)s
(e)e(clear)h(when)f(a)h(directory)f(is)g(newly)0 4464
y(created.)240 4717 y Fd(S:)47 b(Clear-sticky)e(supermunger/)240
4821 y(S:)i(/home/kingdon/testing/cvs)o(root)o(/su)o(perm)o(unge)o(r/)
240 4925 y(S:)g(Clear-static-directory)42 b(supermunger/)240
5029 y(S:)47 b(/home/kingdon/testing/cvs)o(root)o(/su)o(perm)o(unge)o
(r/)240 5132 y(S:)g(E)h(cvs)f(server:)e(Updating)h(supermunger)240
5236 y(S:)h(M)h(U)f(supermunger/mungeall.c)240 5340 y(S:)g(Created)f
(supermunger/)p eop
%%Page: 22 22
22 21 bop 240 366 a Fd(S:)47 b(/home/kingdon/testing/cvs)o(root)o(/su)o
(perm)o(unge)o(r/m)o(unge)o(all.)o(c)240 470 y(S:)g(/mungeall.c/1.1///)
240 574 y(S:)g(u=rw,g=r,o=r)240 678 y(S:)g(26)240 782
y(S:)g(int)g(mein)g(\(\))g({)g(abort)g(\(\);)g(})240
885 y(S:)g(ok)125 1168 y Ff(The)26 b(curren)m(t)g(clien)m(t)h(implemen)
m(tation)e(w)m(ould)h(break)h(the)g(connection)g(here)f(and)g(mak)m(e)i
(a)f(new)g(connection)0 1293 y(for)j(the)h(next)f(command.)41
b(Ho)m(w)m(ev)m(er,)32 b(the)f(proto)s(col)f(allo)m(ws)g(it)g(to)h(k)m
(eep)g(the)f(connection)h(op)s(en)f(and)f(con)m(tin)m(ue,)0
1417 y(whic)m(h)g(is)h(what)g(w)m(e)h(sho)m(w)f(here.)125
1700 y(After)37 b(the)g(user)g(mo)s(di\014es)e(the)j(\014le)e(and)h
(instructs)f(the)h(clien)m(t)g(to)h(c)m(hec)m(k)h(it)d(bac)m(k)i(in.)60
b(The)37 b(clien)m(t)g(sends)0 1825 y(argumen)m(ts)31
b(to)g(sp)s(ecify)e(the)h(log)h(message)g(and)f(\014le)g(to)h(c)m(hec)m
(k)h(in:)240 2087 y Fd(C:)47 b(Argument)f(-m)240 2190
y(C:)h(Argument)f(Well,)g(you)h(see,)g(it)g(took)f(me)i(hours)e(and)h
(hours)f(to)h(find)g(this)g(typo)f(and)h(I)240 2294 y(C:)g(Argumentx)e
(searched)h(and)h(searched)e(and)i(eventually)e(had)i(to)g(ask)g(John)g
(for)g(help.)240 2398 y(C:)g(Argument)f(mungeall.c)125
2681 y Ff(It)23 b(also)h(sends)f(information)f(ab)s(out)h(the)h(con)m
(ten)m(ts)i(of)e(the)g(w)m(orking)f(directory)-8 b(,)25
b(including)20 b(the)k(new)f(con)m(ten)m(ts)0 2805 y(of)45
b(the)g(mo)s(di\014ed)e(\014le.)83 b(Note)46 b(that)g(the)f(user)f(has)
g(c)m(hanged)i(in)m(to)f(the)g(`)p Fd(supermunger)p Ff(')d(directory)i
(b)s(efore)0 2930 y(executing)29 b(this)e(command;)j(the)e(top)h(lev)m
(el)g(directory)f(is)f(a)i(user-visible)d(concept)k(b)s(ecause)e(the)h
(serv)m(er)g(should)0 3054 y(prin)m(t)g(\014lenames)g(in)h
Fd(M)g Ff(and)f Fd(E)h Ff(resp)s(onses)g(relativ)m(e)g(to)h(that)g
(directory)-8 b(.)240 3316 y Fd(C:)47 b(Directory)e(.)240
3420 y(C:)i(/home/kingdon/testing/cvs)o(root)o(/su)o(perm)o(unge)o(r)
240 3524 y(C:)g(Entry)g(/mungeall.c/1.1///)240 3628 y(C:)g(Modified)f
(mungeall.c)240 3731 y(C:)h(u=rw,g=r,o=r)240 3835 y(C:)g(26)240
3939 y(C:)g(int)g(main)g(\(\))g({)g(abort)g(\(\);)g(})125
4222 y Ff(And)29 b(\014nally)-8 b(,)29 b(the)i(clien)m(t)e(issues)h
(the)g(c)m(hec)m(kin)h(command)f(\(whic)m(h)f(mak)m(es)j(use)e(of)g
(the)h(data)g(just)f(sen)m(t\):)240 4484 y Fd(C:)47 b(ci)125
4767 y Ff(And)29 b(the)i(serv)m(er)f(tells)g(the)g(clien)m(t)g(that)h
(the)g(c)m(hec)m(kin)f(succeeded:)240 5029 y Fd(S:)47
b(M)h(Checking)d(in)i(mungeall.c;)240 5132 y(S:)g(E)h
(/home/kingdon/testing/c)o(vsro)o(ot/)o(supe)o(rmun)o(ger)o(/mun)o
(geal)o(l.c)o(,v)89 b(<--)95 b(mungeall.c)240 5236 y(S:)47
b(E)h(new)f(revision:)e(1.2;)h(previous)g(revision:)f(1.1)240
5340 y(S:)i(E)h(done)p eop
%%Page: 23 23
23 22 bop 240 366 a Fd(S:)47 b(Mode)g(u=rw,g=r,o=r)240
470 y(S:)g(Checked-in)e(./)240 574 y(S:)i(/home/kingdon/testing/cvs)o
(root)o(/su)o(perm)o(unge)o(r/m)o(unge)o(all.)o(c)240
678 y(S:)g(/mungeall.c/1.2///)240 782 y(S:)g(ok)0 1230
y Fa(5.9)68 b(Required)31 b(v)l(ersus)g(optional)g(parts)g(of)g(the)f
(proto)t(col)125 1504 y Ff(The)22 b(follo)m(wing)f(are)i(part)f(of)h
(ev)m(ery)g(kno)m(wn)f(implemen)m(tation)f(of)i(the)g(CVS)f(proto)s
(col)g(\(except)i(obsolete,)h(pre-)0 1628 y(1.5,)31 b(v)m(ersions)d(of)
h(CVS\))g(and)f(it)h(is)f(considered)f(reasonable)i(b)s(eha)m(vior)f
(to)i(completely)f(fail)e(to)j(w)m(ork)f(if)f(y)m(ou)i(are)0
1753 y(connected)j(with)d(an)i(implemen)m(tation)e(whic)m(h)g(attempts)
j(to)f(not)g(supp)s(ort)e(them.)45 b(Requests:)f Fd(Root)p
Ff(,)31 b Fd(Valid-)0 1877 y(responses)p Ff(,)42 b Fd(valid-requests)p
Ff(,)f Fd(Directory)p Ff(,)h Fd(Entry)p Ff(,)h Fd(Modified)p
Ff(,)f Fd(Unchanged)p Ff(,)g Fd(Argument)p Ff(,)g Fd(Argumentx)p
Ff(,)0 2002 y Fd(ci)p Ff(,)28 b Fd(co)p Ff(,)g Fd(update)p
Ff(.)39 b(Resp)s(onses:)f Fd(ok)p Ff(,)29 b Fd(error)p
Ff(,)e Fd(Valid-requests)p Ff(,)e Fd(Checked-in)p Ff(,)h
Fd(Updated)p Ff(,)h Fd(Merged)p Ff(,)g Fd(Removed)p Ff(,)0
2127 y Fd(M)p Ff(,)j Fd(E)p Ff(.)125 2401 y(A)23 b(serv)m(er)h(need)f
(not)h(implemen)m(t)e Fd(Repository)p Ff(,)h(but)g(in)f(order)h(to)h
(in)m(terop)s(erate)g(with)e(CVS)h(1.5)i(through)e(1.9)0
2525 y(it)30 b(m)m(ust)f(claim)h(to)g(implemen)m(t)f(it)h(\(in)f
Fd(Valid-requests)p Ff(\).)37 b(The)29 b(clien)m(t)h(will)d(not)k
(actually)e(send)g(the)i(request.)0 2973 y Fa(5.10)68
b(Obsolete)32 b(proto)t(col)f(elemen)l(ts)125 3247 y
Ff(This)39 b(section)i(brie\015y)f(describ)s(es)f(proto)s(col)i(elemen)
m(ts)h(whic)m(h)e(are)h(obsolete.)74 b(There)41 b(is)f(no)h(attempt)h
(to)0 3372 y(do)s(cumen)m(t)30 b(them)h(in)e(full)f(detail.)125
3646 y(There)i(w)m(as)g(a)h Fd(Repository)d Ff(request)j(whic)m(h)e(w)m
(as)i(lik)m(e)e Fd(Directory)f Ff(except)k(it)e(only)g(pro)m(vided)f
Fe(rep)s(ository)p Ff(,)0 3770 y(and)h(the)g(lo)s(cal)g(directory)g(w)m
(as)h(assumed)e(to)i(b)s(e)f(similarly)d(named.)125 4044
y(If)i(the)g Fd(UseUnchanged)e Ff(request)i(w)m(as)h(not)g(sen)m(t,)h
(there)e(w)m(as)h(a)g Fd(Lost)f Ff(request)g(whic)m(h)g(w)m(as)g(sen)m
(t)i(to)f(indicate)0 4169 y(that)c(a)f(\014le)g(did)e(not)j(exist)f(in)
f(the)h(w)m(orking)g(directory)-8 b(,)26 b(and)f(the)g(meaning)g(of)g
(sending)f Fd(Entries)f Ff(without)h Fd(Lost)0 4293 y
Ff(or)32 b Fd(Modified)d Ff(w)m(as)j(di\013eren)m(t.)44
b(All)30 b(curren)m(t)i(clien)m(ts)f(\(CVS)g(1.5)i(and)e(later\))h
(will)d(send)i Fd(UseUnchanged)d Ff(if)j(it)g(is)0 4418
y(supp)s(orted.)p eop
%%Trailer
end
userdict /end-hook known{end-hook}if
%%EOF