aboutsummaryrefslogblamecommitdiffstats
path: root/doc/design/outfile.ps
blob: 6893867c11700c014f173c832e84e7ddd6181d4d (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
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
              

                                                  










                                      



                                                           
                                     
                                        
                                                       
                                                          
                                        




                                                        



























































                                                   
                                              
                                                                



















































































































                                                    
                                                                











































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































                                                                                         
                                                               













































































































































                                                                             




































                                                                                                     
                                                                     







                                 








                                               




                                
                                                                           








                                                 
                                                                        
                                                                                   

                                                                        

                                                                                      

                                                         











                                                                                     






                                                                       














                                 








                                               



                                
                                                                           








                                                 
                                                                        
                                                                                   

                                                                        

                                                                                      
                                                         


                                        






                                                                             
                                                               
                                                                         
                                                              








































































                                                                                  
                                                  
                                                   
                                                            


                                                               




                                      















                                 





                                             
                              



                                               
                                 

                                         



                                
                                                                           





                 
                                                                                  

             
                                              


                                        




















                                                                             
                                                                    
                                                          


                                                        





                                                                     

                                                                

                  
                                         




                                                     
                                                
                                                                            
                                                         
                                                          
                                                   








                                                                       
                                                              
                                                    












                                                                            
                                                       
                                                                     

















                                                                                 
                                                

                         
                                         



































                                                                               




                                      















                                 








                                               
                              
                              
                                 

                                         



                                
                                                                           





                 
                                                                                  

             
                            




























                                                                  
                                                    
                                                                     
                                                                   
                                                              



































































































































                                                                                 
                                                              
                                                                               

                                  
                                                         




                                                                  
                                                                
                                                                                    
                                                                             

                                                                             





                                                                                
                                                                            

                                                                 
                                                    
                                                         





                                                                               




                                      














                                 


                                             
                                 







                                               



                                
                                                                           





                 
                                                                                  

             
                          

                                                            
                                                          

                                                                 
                                                                  





                                                                                     
                                                                                          
                                                                        

















































                                                                                          

                                                      


                                                                 
                                                                 



                                                                 

                                                              
                                                                    



                                                                   
                                                          


                                       









































                                                                                  
                                                                     

                      




                                      














                                 





                                               
                                 




                                           



                                
                                                                           





                 
                                                                                  

             

                                                              
                                                                     

                                                                 
                                                                        



                                                                         
                                                                               



                                                                                 
                                                    

                                                                        
                                          







                                                                                 
                                                                           






                                                                           
                                                                                 
                                                  
                                                                     
                                                                 
                                                  
                                                                    
                                                                           
                                                     
                                                                

                                                                      



                                                                              
                                                                     
                                                          
                                                     

                                                                             
                                                           
                                                     



                                                                                     
                                                           

                                                              
                                                                      


                                     
                                                                       
                                                              
                                                                    


























                                                                 
                                                              
                                                                                       
                                                                        
                                                                                           



















































                                                                   
                                                                






                                                                
                                                       
                                                                     
                                                                  
                                                       
                                                          
                                                                                            




                                      















                                 


                                             
                                 




                                               



                                
                                                                           





                 
                                                                                  

             
                            


















































                                                                 
                                                                

                                                             
                                              
                                                           






































































































                                                                                 
                     
                                                             

                                                              
                                                           
                                                         










                                                                          
                                                          
                                                                     
                                                       











                                                                                 
                                                                

                                                           
                                             
                                                                            
                                                             
                                                                   
                                                              
                                                             


                                                         
                                                  
                                                                       







                                                                              

                                                            

                                                                   
                                                                    
                                                                        
                                                              
                                                          
                                                             










                                                                        
                                             





























                                                                 
                                                               
                                                                      






                                                                      

                                                                                                                        




                                      

















                                 


                                             
                                 




                                               
                              



                                           



                                
                                                                           





                 
                                                                                  

             
                                             

                                                 









                                                                                 

                   
                                                







                                         
                                             








                                           
                                              






                                                   
                                             








                                           
                                             











                                                   

                                          








                                
                                          








                                

                                          












                                

                                          








                                
                                          








                                

                                          






                                
                                 
                  
                                             








                                           
                                              






                                                   
                                             








                                           
                                             











                                                   

                                          








                                
                                          








                                

                                          












                                

                                          








                                
                                          








                                

                                          








                                
                                             








                                           
                                              






                                                   
                                             








                                           
                                             











                                                   

                                          








                                
                                          








                                

                                          












                                

                                          








                                
                                          








                                

                                          









                                
                                             








                                           
                                              






                                                   
                                             








                                           
                                             











                                                   

                                          








                                
                                          








                                

                                          












                                

                                          








                                
                                          








                                

                                          






                                


                                                                






                    

                                          








                                
                                         








                                

                                          












                                

                                          








                                
                                         








                                

                                          






                                
                           





                   

                                          








                                
                                         








                                

                                          












                                

                                          








                                
                                         








                                

                                          








                                
                                             








                                           
                                              






                                                   
                                             








                                           
                                             











                                                   

                                          








                                
                                          








                                

                                          












                                

                                          








                                
                                          








                                

                                          






                                
        


                                                                  






                   

                                          








                                
                                         








                                

                                          












                                

                                          








                                
                                         








                                

                                          






                                
                           





                   

                                          








                                
                                         








                                

                                          












                                

                                          








                                
                                         








                                

                                          








                                
                                             








                                           
                                              






                                                   
                                             








                                           
                                             











                                                   

                                          








                                
                                          








                                

                                          












                                

                                          








                                
                                          








                                

                                          













                                

                                          








                                
                                          








                                

                                          












                                

                                          








                                
                                          








                                

                                          











                                

                                   

                                                   
                                                           


                                                                  
                                                            

                                                            
                                                                

                                                                  
                                                                
                                                           

                                                                    


                                                                       
                                                                      
                                                                                   


                                                          




                                      















                                 


                                             
                                 







                                               
                              
                              



                                
                                                                           





                 
                                                                                  

             
                      


                                                                 
                                                                
                                                              





                                                                           
                                                                      
                                                                    
                                                         
                                                                          


                                                                                            
                                                                
                                                           
                                                           


                                                               
                                                                   

                                                             

                                                                



                                                                   

                                                                              
                                          
                                                          


                                                                
                                                              



                                                                         
                                                         





                                                                           
                                                     




                                                                                     
                                                       

                                                                   
                                                                   
                                                                     
                                                                             

                                       
                                                          




                                                                           
                                                                                  
                                                          

                  
                                                











                                                 
                        














                                            
                    















                                            
                     

























                                                                                                        

                                                     


























                                                                                                        
                     




































                                                                                                        

                                                     


























                                                                                                        
                     














                                            
                     




















































                                                                                                        
        
































                                                                                                        
                                                











                                                 
                     














                                            
                     

























                                                                                                        


                                                    

























                                                                                                        
                     














                                            
        


























                                                                                                        

                                          

























                                                                                                        
        



























                                                                                                        
                               
                  
                                                











                                                 
                    















                                            
                     

























                                                                                                        

                                                     


























                                                                                                        
                     

























                                                                                                        

                                                     


























                                                                                                        
                     

















                                                                                                        




                                      














                                 





                                               
                              
                              
                                 

                                         



                                
                                                                           





                 
                                                                                  

             
                            




















                                                                           



                                                                 
                                                                        

                                                             
                                                              






                                                                  

                                                            





                                                                  

                                                              








                                                           
                                                            
                                                     











































                                                                   






                                                                         
                                                
                                                         






                                                            

















                                                                 
                                                                   

















                                                                  


                                                                
                                                 

















                                                 
                     













                                            
                    
























                                                                                                        
                     
























                                                                                                        
                        


























                                                                                                        
        














                                            
                     























                                                                                                        
                    





























                                                                                                        




                                      













                                 


                                             
                              



                                               



                                
                                                                           





                 
                                                                                   

             








                                                                  

                                                       







                                                                
                                                         





                                                                    
                                                          
                                                                    

                                                              
                                                          
                                                             









                                                                  

                                                           

                                                        



                                                               


                                                                     









                                                                
                                                              

                                                            
                                                          
                                                 
                                                                          
                                                                       








                                                                 



                                                                      
                                                











                                                 
                    





                     
                               
                   
                                                 

















                                                 
                     













                                             
        
























                                                                                                        
                     
























                                                                                                        
                       
























                                                                                                        
                     















                                                                                                        




                                                              
                                                             




                                                                        
                                            
                                                                



                                                           
                                                 

















                                                 
                     













                                            
        
























                                                                                                        
                     
























                                                                                                        
                       



























                                                                                                        
                     













                                            
                     























                                                                                                        
        





























                                                                                                        




                                      














                                 





                                               
                              
                              
                                 

                                         



                                
                                                                           





                 
                                                                                   

             
     
                   
                                                











                                                
                       















                                            
                     














                                             
                        














                                             
        















                                            
                     

























                                                                                                        
                    





































                                                                                                        
                                














                                            
        


























                                                                                                        
                     















































                                                                                                        
                       















                                             
                      














                                            
                     

























                                                                                                        
        





































                                                                                                        
                               















                                            
                     

























                                                                                                        
                     


























































                                                                                                        
        















                                             
                        














                                             
                     















                                            
                     

























                                                                                                        
                     




































                                                                                                        
        















                                            
                    


























                                                                                                        
                     















































                                                                                                        
                        














                                             
        















                                            
                     

























                                                                                                        
                    





































                                                                                                        
                                














                                            
        


























                                                                                                        
                     























































                                                                                                        

                                                               
                                                               






                                                                     
                                                                                                                                              
                                                                   

                                     
                                                








                                                 
                     






                                            
        







                                         
                     






                                          
                    







                                           
                     






                                         
                     






                                          
        







                                           
                     






                                         
                    







                                         
                     






                                                                
















                                                                


                                         


                                                              


                                         




                                                              


                                         
                                                          
                                                              









                                                                                 

                                                                        










                                                                              




                                      














                                 








                                               
                                 

                                         



                                
                                                                           





                 
                                                                                   

             
                               











                                                                         
                                                











                                                 
                     











                                            
        












                                            
                     











                                            
                    








































                                                                                                  
                                                





























                                                 
                                          




















                                                      
                    
































                                           
                                          




















                                                      
                     


















                                         
                                          






















                                                      
                                          




















                                                      
                      


















                                           
                                          






















                                                      
                                          




















                                                      
        



















                                           
                                          






















                                                      
                                          




















                                                      
                      


















                                         
                                          

































                                                      
                    



















                                         
                                          

































                                                      
                     






















































































                                                                                                                          
                                     
                                                                    






























                                                                                    
                                                          
                                                                      


                                      



                                                                  
                                                                                                     




                                      















                                 


                                             
                                 




                                               



                                
                                                                           





                 
                                                                                   

             
                         





























                                                                                  
                                                 
                                                                                
                                             


                                                                       
                                                                     



















                                                                            
                                                            
                                                                                                                                                       
                                                            




                                                                    
                                                          









                                                                       

                                                                  
                                                                






                                                                       
                                                     







                                                                                 




                                      














                                 


                                             
                                 




                                           
                              
                              



                                
                                                                           





                 
                                                                                   

             
                          










                                                                                     
                                                                                          
                                                         
                                                             
                                                            
                                                                   


                                                                  
                                                            























                                                                                    
                                                          





                                                                              
                                                                       

                                        
                                                                










                                                                      


                                       







                                                                      

                                                          
                                                                     
                                                                     
                                                                                                 
                                                                                                                                   
                                                        
                                                                   






                                                               




                                      














                                 





                                               
                                 




                                           



                                
                                                                           





                 
                                                                                   

             
                             

                   
                                             
















                                                                 
                  






                   
                                            
















                                                                 
                 






                                                   
                                                       
                                                              
                                                                 

                                                                      
                                                            

                                                                          
                                                      


                                                                       
                                                      
                                                                     

                                                             


                                                                          
                                                              











                                                                             
                                               
                                                                   
                                                                  

                                                                                                                
                                                          


                                                                              
                                                                                          
                                                                                                                   
                                                          



                                                                    
                                                         


                                                         
                                                            












                                                                           
                                              
                                                                       

                                    
                                                                        




                                                                            




                                      












                                 


                                             
                                 

                                         



                                
                                                                           





                 
                                                                                   

             
                        

                                                                     
                                                      

                                                                                                                  
                                                        


















                                                                                     


                                                                               








                                                                            
                                                                      
                                                                              
                                                                                             






                                                                    
                                                                              









                                                                               
                                                       

                                                                    
                                                                               




                                                                                                  




                                      












                                 


                                             
                                 

                                         



                                
                                                                           





                 
                                                                                   

             
                                           
                                                    
                                                                




                                                                             
                             
                                                  





                                            
                             
                                                  

                         
                                    
                                                      

                                                                         


                                                                                                                             
                                                     
                                             
                                                              
                  
                                          




                                
        


                                                                                




                                      














                                 


                                             
                                 







                                               



                                
                                                                           





                 
                                                                                   

             
                                  




                                                                 
                                                     
                                                            
                                                              








                                                                  
                                                                           


                                           











                                                                         
                                                                       
                                                                                    

                                                                          
                                                              


                                                                 
                                                              


                                                                
                                                              
                                                           


                                                                            

                                                                               
                                                                                                                          
                                                                        
                                              


                                                                            

                                                             
                                                                       


                                                                 
                                                           
















                                                                                   




                                      












                                 


                                             
                                 

                                         



                                
                                                                           





                 
                                                                                   

             
                                                       

                                                                                                                                                               
                                                                     
                                                                
                                                                       
                                                                 
                                                          

                                                                     

                                                                   
                                                 
                                                                
                                                                   
                                                                                                                     
                                                                          



                                                                 
                                                                                                             
                                                                                                         
                                                    
                                                         
                                                        
                                                   






                                                                         
                                                                  



                                                                           
                                                       
                                                                   


                                                                           

                                                             

                                                                                 
                                                            

                                                                   
                                             
                                                                                             

                                  




                                      














                                 


                                             
                                 







                                               



                                
                                                                           





                 
                                                                                   

             
                              
                                                                                         
                                                          


                                                            
                                                                            
                                                               



                                                                                   
                                                      
                                                                     












                                                                       
                                                                                      
                                                      
                                                            

                                                                




                                                                  
                                                             
                                                       

                                                                                       
                                                              
                                                            
                                                          
                                                                  
                                                            


                                                                       
                                                              
                                                     


                                                                 
                                                     
                                                               






                                                                  
                                                                      


                                                    









                                                                              

                                                                       



                                                                       
                                                    







                                                                                   




                                      














                                 





                                               
                                 




                                           



                                
                                                                           





                 
                                                                                   

             
                          

























                                                                                        
                                                     



























                                                                               
                                                           
                                                

                                                                      
                                                       
                                                                     













                                                                        
                                                              


                                     
































                                                                               
                                                              
                                                                  







                                                                          






                                                                     
                                                          
                                                        


                                                                 
                                                             


                                                                            




                                      














                                 








                                               
                                 

                                         



                                
                                                                           





                 
                                                                                   

             
                     
                                                                           

                                                                 
                                                               
                                                                              


                                                             
                                                       

                                                       
                                                               
























                                                                                  
                                                   


                                            











                                                                             
                                                           


                                  



                                                             
                                                                                             
                                                 







































                                                                                 




                                      













                                 








                                               



                                
                                                                           





                 
                                                                                   

             
                                     











                                                                           

                                                                   










                                                                                 


                                     
                                                              


                                                               
                                                                  




































                                                                       
                                                  













































































































                                                                                                        
                                               

































































































































                                                                                                        




                                      














                                 





                                               
                                 




                                           



                                
                                                                           





                 
                                                                                   

             
                        




















                                                                             
                                                         














                                                                            
                                                        
                                                                                                                           
                                                                   

                                                                
                                                                 


                                                                                
                                                       



                                                                          
                                                              
                                                                       




                                                                  
                                                       

                                                       
                                                          





                                                                   
                                                                
                                                             
                                                        
                                                             









                                                                       
                                                                    
                                                                    









                                                                      

                                                            
                                                      

                                                              
                                                               










                                                                 
                                                                         
                                                                             







                                                                        
                                                               


                                                





                                                                                
                                                                      
                                                                           




                                                            




                                      













                                 


                                             
                                 




                                               



                                
                                                                           





                 
                                                                                   

             
                          

                                                             
                                                                        


                                                                                   
                        

                  
                                             















                                          
                                          














                                          
                                                



                                            
                                                   
                                                     












                                                  
                                  


                
                                                





                                         
        




                                 
                                                








                                         
                             




                     
                                                





                                         
                                      



                   
                                                





                                         
                          


             
                                       












                                                        
                                       
















                                                               
                                                                





                                                                    
                                                      








                                                                          
                                                  











                                                 
                       












                                             
                                      






















                                                                                                
                            










































                                                                                                 
                                                   








                                                       
                              











                                          
        


































                                                                              
                       






















                                                                                                
        























                                                                                                
                                    
































                                                                                                                  
        























                                                        
                             






















                                                                                                
                      























                                                                                                
                                       






















                                                                                                 
        























                                                                                                
                             






















                                                                                                
                         




























                                                                                                                  




                                      













                                 





                                               
                                 

                                         



                                
                                                                           





                 
                                                                                   

             
                                     
                                                       
                                                                    
                                                                    
                                                                          

                                                                
                                                       
                                                       

                                                     
                                                                         





                                                              
                                                             
                                                        




                                                           
                                                                           
                                                                































                                                                                  
                                                     
                                                                   











                                                                         
                                                       
                                                       

                                                              
                                                         

                                                                         
                                              
                                                   




                                                                            
                                                              
                                                               
                                                     
                                           
                                                            
                                                          
                                                               
                                                               
                                               
                                                         
                                                      

                                                                          
                                                       
                                                             
                                                
                                                         
                                                    


                                                              
                                                       

                                                                 
                                                 
                                                           
                                                             
                                                         
                                                              
                                                            
                                            
                                                                
                                                               
                                                         

                                                                           
                                               





                                                                      
                                                   
                                                               



                                                                   
                                                      


                                                                
                                                       

                                                                  
                                                                  
                                                                      
                                                                  
                                                      
                                                                    

                                                                       
                                                         



                                                            




                                      













                                 





                                               
                                 

                                         



                                
                                                                           





                 
                                                                                   

             
                       


                                                                   
                                                                 




















                                                                                
                                                                


                                                                       
                                                                                   
                                                   









                                                                             
                                                             


                                                                       
                                                          

                                                                  
                                                    
                                                                       

                                                               
                                                                  
                                                                  




                                                                 
                                                      
                                                                

                                                          
                                                                     

                                               
                                                


                                                 
        

                                        
                                                  














                                          
                              












                                          
                                              



                     
                                  


                   
                                             








                                          
                                                              





                     
                                                  





                                         
                                  


                   
                                             








                                          
                                                              





                     
                                                  









                                         
                                       












                                                                          
                                       












                                                                          


                                                            
                                                          
                                                                  

                                                            
                                                                 

                                                               
                                                              


                                                                    
                                                       
                                                                       



                                                        

                                                               
                                                        
                                                                   
                                                   
                                                          
                                                      
                                                                             
                                                                

                                        




                                      














                                 





                                               
                                 

                                         
                              
                              



                                
                                                                           





                 
                                                                                   

             
                    
                                                           
                                                                       



                                                            
                                                                 
                                                                  


                                                                 
                                                             
                                                          
                                                            
                                                                     
                                                                         
                                                         
                                                                     



                                                                
                                                                          
                                                                     
                                                            
                                                                     

                                                                   
                                                          




                                                                                   
                                                                         




                                                                    
                                                                    
                                               
                                                                        
                                                                 
                                                               
                                                                


                                                 
                                                        

               
                                                  














                                           
                             






                     
                                              








                                          
                          





                     
                                                  





                                         
                                                                                           



             
                                       





























                                                                                           



                                                 






                               
                                                                                      
                                                   
                                                                   
                                                  


                                                                                 
                      

                                       
                                                  














                                           
        







                     
                                              








                                          
                           




                     
                                                   












                                                                 








                                                                 





             
                                       














                                                                          




                                      















                                 


                                             
                                 







                                               
                              
                              



                                
                                                                           





                 
                                                                                   

             
                      
                                                             


                                                                    
                                                                 

                                                                   
                                                                   
                                                                  
                                                             
                                                                
                                                          
                                                                       
                                                 


























                                                                                     
                                                          













                                                                                       
                                                             


                                                            













                                                                           





                                                                                
                                                        
                                                      

                                                                 
                                                      
                                                       









                                                              
                                                                         
                                                                        









                                                         
                                                         
                                                         



                                                                    




                                      














                                 





                                               
                              
                              
                                 

                                         



                                
                                                                           





                 
                                                                                   

             





                                                               
                                              


                                                                 
                                                                                 
                                                              














                                                                                    
                                                                         
                                                           

                                                                  
                                                              
                                                        
                                                                     
                                                                        




                                                            




                                                                







                                                               
                                                   



                                                                 
                                                         


                                                           
                                                            


                                                              


                                                                    
                                                           
                                                        
                                                                






                                                              









                                                                
                                                             

                                                               
                                                         
                                                                    








                                                             
                                                         





                                                         
                                                        









                                                                    




                                      

















                                 





                                               
                              



                                           
                                 

                                         



                                
                                                                           





                 
                                                                                   

             
                                  














                                                                  

                                                                  









                                                             
                                                                    








                                                             


                                                         
                                                          
                                                                   



                                                                
                                                             











                                                                           
                                                              
                                                                         



                                                                          
                                                                


                                     






















                                                                            
                                                              
                                                         
                                                                 
                                                          

                                                             
                                                          
                                                            

                              




                                      













                                 


                                             
                                 




                                               



                                
                                                                           





                 
                                                                                   

             
                                   


                                                                                                    
                                                                    


                                                          
                                                        
                                                        





                                                                           
                                                              
                                                                        

                                                                    
                                                                 






                                                                                 
                                                             








                                                                 
                                                                  







                                                                         
                                                    
                                           
                                                    








                                                                              
                                                                             
                                                            




                                                             
                                                                      
                                                           


                                                                
                                                                     
                                                      
                                                        
                                                    
                                                     
                                                            
                                                         







                                                                



                                                                         
                                                    

                                                                










                                                                            
                                                
                                                                











                                                               
                                                        
                                                    



                                                                
                                                                   
                                                          


                                                                 




                                      














                                 








                                               
                                 

                                         



                                
                                                                           





                 
                                                                                   

             
                       





























                                                                               
                                                                     


                                             







                                                                       
                                                                        
                                                     











                                                                            
                                                        
                                                                 


                                                                                 
                                                                    


                                                                                                                                                                               
                                                               
                                                          







                                                                            
                                                
                                                           
                                                                          
                                                                                                                                                   
                                                

                                  




                                      













                                 


                                             
                                 




                                               



                                
                                                                           





                 
                                                                                   

             
                          









                                                                            
                                                               







                                                                     

                                                                                 
                                                                                                             




















                                                                           



                                                                      
                                                              
                                                      
                                                                      
                                                                      


























                                                                               
                                                                 
                                                 




















                                                                             

                                                                     
                                                           







                                                             




                                      














                                 





                                             
                                 




                                               



                                
                                                                           





                 
                                                                                   

             
                     
                                           

                                        
                                                                   

























                                                                                   
                                                                          
                                                                   


                                                 




                                                                             
                                                                    
                                                                                                      
                                                                                            
                                                                       
                                                       




                                                                           
                                                






                                                                       

                                                                      
                                                  


                                                            

                                                                                                










                                                                         

                                                                
                                                      
                                                       

                                                                 
                                                           










                                                                            




                                      













                                 


                                             
                                 




                                           



                                
                                                                           





                 
                                                                                   

             
                                    



                                                               
                                                         

                                                                      
                                                                    
                                                             
                                                                   




                                                                           
                                                                                                                                    
                                                    
                                                                           
                                                   

                                                        
                                                                          
                                                      

                                                                                                                                              
                                                                            
                                                              
                                                                                 


                                                                         
                                                               



                                                                  
                                                                                       
                                                       



                                                               
                                                                    




                                                                      

                                                            
                                                         


                                                           

                                                                                   
                                                                 
                                                     
                                                                   
                                                   
                                                                 
                                             
                                                       
                                                                         
                                                            

                                                            
                                                     
                                                          

                                                                              
                                                
                                                              


                                     




















                                                                            




                                      













                                 





                                               
                                 

                                         



                                
                                                                           





                 
                                                                                   

             
                      




























                                                                                   
                                                                         
                                                                      
                                                                   
                                                                          



                                                             
                                              
                                                                                    






















                                                                               

                                                                                       
                                                                  









































                                                                                

                                                                
                                                                   

                                                      

                                                            
                                                            




                                                                            
                                                             
                                                                     
















                                                                                     

                                                              
                                                                     





                                                                
                                                                     
                                                                     
                                                       


                                                                
                                                               

                                                               
                                                      





                                                   














                                 








                                               



                                
                                                                           





                 
                                                                                   

             
                       


                                                       











































































                                                                                 
                                                         
                                                              































                                                                                      
                                                                 





                                                                     

                                                                  








                                                                   




                                      













                                 








                                               



                                
                                                                           





                 
                                                                                   

             

                                                              




                                                                                


                                                     




                                                                       


                                                     



                                                                  
                                                                       
                                                           


                                                                            

                                                                 
                                                         
                                                                                       

                                         


                                                                                            
                                                               

                                                                 

                                         


                                                                       
                                                                
                                                


                                                         






                                                                      


                                               

                                                                           

                                                        


                                                              
                                               
                                                           


                                              



                                                                              


                                         
                                                          
                                                                         


                                         







                                                                         


                                                     





                                                                


                                                     





                                                                      


                                              
                                                                 
                                                                
                                                                     
         

                                          
        




                                      








              
                                           
                   
                     
                     

                  






                                                
%!PS-Adobe-3.0
%%Creator: Basser Lout Version 3.24 (October 2000)
%%CreationDate: Sun Oct  8 13:06:04 2000
%%DocumentData: Binary
%%DocumentNeededResources: (atend)
%%DocumentSuppliedResources: (atend)
%%DocumentMedia: A4 595 842 0 white ()
%%PageOrder: Ascend
%%Pages: (atend)
%%BoundingBox: 0 0 595 842
%%EndComments

%%BeginProlog
%%BeginResource: procset LoutStartUp
/save_cp { currentpoint /cp_y exch def /cp_x exch def } def
/restore_cp { cp_x cp_y moveto } def
/outline { gsave 1 1 1 setrgbcolor dup show save_cp
  grestore true charpath stroke restore_cp } bind def
/m  { 3 1 roll moveto show } bind def
/mo { 3 1 roll moveto outline } bind def
/s  { exch currentpoint exch pop moveto show } bind def
/so { exch currentpoint exch pop moveto outline } bind def
/k  { exch neg 0 rmoveto show } bind def
/ko { exch neg 0 rmoveto outline } bind def
/r  { exch 0 rmoveto show } bind def
/ro { exch 0 rmoveto outline } bind def
/c  { gsave 3 1 roll rmoveto show grestore } bind def
/co { gsave 3 1 roll rmoveto outline grestore } bind def
/ul { gsave setlinewidth dup 3 1 roll
      moveto lineto stroke grestore } bind def
/in { 1440 mul } def
/cm { 567 mul } def
/pt { 20 mul } def
/em { 120 mul } def
/sp { louts mul } def
/vs { loutv mul } def
/ft { loutf mul } def
/dg {           } def

/LoutGraphic {
  /louts exch def
  /loutv exch def
  /loutf exch def
  /ymark exch def
  /xmark exch def
  /ysize exch def
  /xsize exch def
} def

/LoutGr2 { gsave translate LoutGraphic gsave } def

/LoutFont
{ findfont exch scalefont setfont
} bind def

/LoutRecode {
  { findfont dup length dict begin
    {1 index /FID ne {def} {pop pop} ifelse} forall
    /Encoding exch def
    currentdict end definefont pop
  }
  stopped pop
} bind def

/BeginEPSF {
  /LoutEPSFState save def
  /dict_count countdictstack def
  /op_count count 1 sub def
  userdict begin
  /showpage { } def
  0 setgray 0 setlinecap
  1 setlinewidth 0 setlinejoin
  10 setmiterlimit [] 0 setdash newpath
  /languagelevel where
  { pop languagelevel
    1 ne
    { false setstrokeadjust false setoverprint
    } if
  } if
} bind def

/EndEPSF {
  count op_count sub { pop } repeat
  countdictstack dict_count sub { end } repeat
  LoutEPSFState restore
} bind def
%%EndResource

%%BeginResource: procset LoutTabPrependGraphic
% @PrependGraphic file /usr/staff/jeff/lout.lib/include/tabf.lpg
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%                                                  %
%  PostScript @SysPrependGraphic file for @Tab     %
%                                                  %
%  To assist in avoiding name clashes, the names   %
%  of all these symbols begin with "ltab".         %
%                                                  %
%  Jeffrey H. Kingston                             %
%  24 September 1991                               %
%  22 December 1992                                %
%                                                  %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% linewidth ltabhs -
% horizontal single line
/ltabhs
{  0 0 moveto xsize 0 lineto
   setlinewidth 0 setlinecap stroke
} def

% linewidth ltabhsp -
% horizontal single line with projecting ends
/ltabhsp
{  0 0 moveto xsize 0 lineto
   setlinewidth 2 setlinecap stroke
} def

% linewidth ltabhd -
% horizontal double line
/ltabhd
{  dup dup
   0 0 moveto xsize 0 lineto
   0 exch 3 mul moveto xsize exch 3 mul lineto
   setlinewidth 0 setlinecap stroke
} def

% linewidth ltabhdb -
% horizontal double line below mark
/ltabhdb
{  dup dup
   0 0 moveto xsize 0 lineto
   0 exch -3 mul moveto xsize exch -3 mul lineto
   setlinewidth 0 setlinecap stroke
} def

% linewidth ltabhdnw -
% horizontal double line with northwest corner
/ltabhdnw
{  dup dup dup dup
   0 0 moveto xsize 0 lineto
   xsize exch 3 mul moveto
   -3 mul exch 3 mul lineto
   -3 mul 0 lineto
   setlinewidth 0 setlinejoin 2 setlinecap stroke
} def

% linewidth ltabhdne -
% horizontal double line with northeast corner
/ltabhdne
{  dup dup dup dup
   0 0 moveto xsize 0 lineto
   0 exch 3 mul moveto
   3 mul xsize add exch 3 mul lineto
   3 mul xsize add 0 lineto
   setlinewidth 0 setlinejoin 2 setlinecap stroke
} def

% linewidth ltabhdsw -
% horizontal double line with southwest corner
/ltabhdsw
{  dup dup dup dup
   0 0 moveto xsize 0 lineto
   xsize exch -3 mul moveto
   -3 mul exch -3 mul lineto
   -3 mul 0 lineto
   setlinewidth 0 setlinejoin 2 setlinecap stroke
} def

% linewidth ltabhdse -
% horizontal double line with southeast corner
/ltabhdse
{  dup dup dup dup
   0 0 moveto xsize 0 lineto
   0 exch -3 mul moveto
   3 mul xsize add exch -3 mul lineto
   3 mul xsize add 0 lineto
   setlinewidth 0 setlinejoin 2 setlinecap stroke
} def

% linewidth ltabvs -
% vertical single line
/ltabvs
{  0 0 moveto 0 ysize lineto
   setlinewidth 0 setlinecap stroke
} def

% linewidth ltabvd -
% vertical double line
/ltabvd
{  dup dup
   0 0 moveto 0 ysize lineto
   -3 mul 0 moveto -3 mul ysize lineto
   setlinewidth 0 setlinecap stroke
} def

% linewidth ltabvdr -
% vertical double line to right of mark
/ltabvdr
{  dup dup
   0 0 moveto 0 ysize lineto
   3 mul 0 moveto 3 mul ysize lineto
   setlinewidth 0 setlinecap stroke
} def
%%EndResource

%%BeginResource: procset LoutFigPrependGraphic
% @PrependGraphic file /usr/staff/jeff/lout.lib/include/figf.lpg
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%                                                                    %
%  PostScript @SysPrependGraphic file for @Fig  Jeffrey H. Kingston  %
%  Version 2.0 (includes CIRCUM label)                 January 1992  %
%                                                                    %
%  To assist in avoiding name clashes, the names of all symbols      %
%  defined here begin with "lfig".  However, this is not feasible    %
%  with user-defined labels and some labels used by users.           %
%                                                                    %
%  <point>      is two numbers, a point.                             %
%  <length>     is one number, a length                              %
%  <angle>      is one number, an angle in degrees                   %
%  <dashlength> is one number, the preferred length of a dash        %
%                                                                    %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

errordict begin
   /handleerror
   {
      {  /Times-Roman findfont 8 pt scalefont setfont
	 0 setgray 4 pt 4 pt moveto
	 $error /errorname get
	 dup lfigdict exch known
	 { lfigdict exch get }
	 { 30 string cvs } ifelse
	 show
	 (  Command: ) show
	 $error /command get 30 string cvs show
      } stopped {} if
      showpage stop
   } def
end

% concat strings: <string> <string> lfigconcat <string>
% must be defined outside lfigdict since used in lfigpromotelabels
/lfigconcat
{ 2 copy length exch length add string
  dup 0 4 index putinterval
  dup 3 index length 3 index putinterval
  3 1 roll pop pop
} def

% <string> lfigdebugprint -
% must be defined outside lfigdict since used in arbitrary places
% /lfigdebugprint
% { print
%   (;  operand stack:\n) print
%   count copy
%   count 2 idiv
%   { ==
%     (\n) print
%   } repeat
%   (\n) print
% } def

/lfigdict 120 dict def
lfigdict begin

% error messages
/dictfull (dictfull error:  too many labels?) def
/dictstackoverflow (dictstackoverflow error:  labels nested too deeply?) def
/execstackoverflow (execstackoverflow error:  figure nested too deeply?) def
/limitcheck (limitcheck error:  figure nested too deeply or too large?) def
/syntaxerror (syntaxerror error:  syntax error in text of figure?) def
/typecheck (typecheck error:  syntax error in text of figure?) def
/undefined (undefined error:  unknown or misspelt label?) def
/VMError (VMError error:  run out of memory?) def

% push pi onto stack:  - lfigpi <num>
/lfigpi 3.14159 def

% arc directions
/clockwise     false def
/anticlockwise true  def

% maximum of two numbers:  <num> <num> lfigmax <num>
/lfigmax { 2 copy gt { pop } { exch pop } ifelse } def

% minimum of two numbers:  <num> <num> lfigmin <num>
/lfigmin { 2 copy lt { pop } { exch pop } ifelse } def

% add two points:  <point> <point> lfigpadd <point>
/lfigpadd { exch 3 1 roll add 3 1 roll add exch } def

% subtract first point from second:  <point> <point> lfigpsub <point>
/lfigpsub { 3 2 roll sub 3 1 roll exch sub exch } def

% max two points:  <point> <point> lfigpmax <point>
/lfigpmax { exch 3 1 roll lfigmax 3 1 roll lfigmax exch } def

% min two points:  <point> <point> lfigpmin <point>
/lfigpmin { exch 3 1 roll lfigmin 3 1 roll lfigmin exch } def

% scalar multiplication: <point> <num> lfigpmul <point>
/lfigpmul { dup 3 1 roll mul 3 1 roll mul exch } def

% point at angle and distance:  <point> <length> <angle> lfigatangle <point>
/lfigatangle { 2 copy cos mul 3 1 roll sin mul lfigpadd } def

% angle from one point to another:  <point> <point> lfigangle <angle>
/lfigangle { lfigpsub 2 copy 0 eq exch 0 eq and {pop} {exch atan} ifelse } def

% distance between two points:  <point> <point> lfigdistance <length>
/lfigdistance { lfigpsub dup mul exch dup mul add sqrt } def

% difference in x coords: <point> <point> lfigxdistance <length>
/lfigxdistance { pop 3 1 roll pop sub } def

%difference in y coords: <point> <point> lfigydistance <length>
/lfigydistance { 3 1 roll pop sub exch pop } def

% stroke a solid line:  <length> <dashlength> lfigsolid -
/lfigsolid
{  pop pop [] 0 setdash stroke
} def

% stroke a lfigdashed line:   <length> <dashlength> lfigdashed -
/lfigdashed
{  2 copy div 2 le 1 index 0 le or
   {  exch pop 1 pt lfigmax [ exch dup ] 0 setdash }
   {  dup [ exch 4 2 roll 2 copy div
      1 sub 2 div ceiling dup 4 1 roll
      1 add mul sub exch div ] 0 setdash
   } ifelse stroke
} def

% stroke a lfigcdashed line:  <length> <dashlength> lfigcdashed -
/lfigcdashed
{  2 copy le 1 index 0 le or
   { exch pop 1 pt lfigmax [ exch dup ] dup 0 get 2 div setdash }
   { dup [ 4 2 roll exch 2 copy exch div
     2 div ceiling div 1 index sub
     ] exch 2 div setdash
   } ifelse stroke
} def

% stroke a dotted line:  <length> <dashlength> lfigdotted -
/lfigdotted
{  2 copy le 1 index 0 le or
   { exch pop 1 pt lfigmax [ exch 0 exch ] 0 setdash }
   { 1 index exch div ceiling div
     [ 0 3 2 roll ] 0 setdash
   } ifelse stroke
} def

% stroke a noline line:  <length> <dashlength> lfignoline -
/lfignoline
{ pop pop
} def

% painting (i.e. filling): - lfigwhite - (etc.)
/lfignopaint		{			       } def
/lfignochange		{ 			  fill } def
/lfigdarkblue		{ 0.0 0.0 0.5 setrgbcolor fill } def
/lfigblue		{ 0.0 0.0 1.0 setrgbcolor fill } def
/lfiglightblue		{ 0.5 0.5 1.0 setrgbcolor fill } def
/lfigdarkgreen		{ 0.0 0.5 0.0 setrgbcolor fill } def
/lfiggreen		{ 0.0 1.0 0.0 setrgbcolor fill } def
/lfiglightgreen		{ 0.5 1.0 0.5 setrgbcolor fill } def
/lfigdarkred		{ 0.5 0.0 0.0 setrgbcolor fill } def
/lfigred		{ 1.0 0.0 0.0 setrgbcolor fill } def
/lfiglightred		{ 1.0 0.5 0.5 setrgbcolor fill } def
/lfigdarkcyan		{ 0.0 0.5 0.5 setrgbcolor fill } def
/lfigcyan		{ 0.0 1.0 1.0 setrgbcolor fill } def
/lfiglightcyan		{ 0.5 1.0 1.0 setrgbcolor fill } def
/lfigdarkmagenta	{ 0.5 0.0 0.5 setrgbcolor fill } def
/lfigmagenta		{ 1.0 0.0 1.0 setrgbcolor fill } def
/lfiglightmagenta	{ 1.0 0.5 1.0 setrgbcolor fill } def
/lfigdarkyellow		{ 0.5 0.5 0.0 setrgbcolor fill } def
/lfigyellow		{ 1.0 1.0 0.0 setrgbcolor fill } def
/lfiglightyellow	{ 1.0 1.0 0.5 setrgbcolor fill } def
/lfigdarkgray		{ 0.2 0.2 0.2 setrgbcolor fill } def
/lfiggray		{ 0.5 0.5 0.5 setrgbcolor fill } def
/lfiglightgray		{ 0.8 0.8 0.8 setrgbcolor fill } def
/lfigdarkgrey		{ 0.2 0.2 0.2 setrgbcolor fill } def
/lfiggrey		{ 0.5 0.5 0.5 setrgbcolor fill } def
/lfiglightgrey		{ 0.8 0.8 0.8 setrgbcolor fill } def
/lfigblack		{ 0.0 0.0 0.0 setrgbcolor fill } def
/lfigwhite		{ 1.0 1.0 1.0 setrgbcolor fill } def

% line caps (and joins, not currently used)
/lfigbutt       0 def
/lfiground      1 def
/lfigprojecting 2 def
/lfigmiter      0 def
/lfigbevel      2 def

% shape and labels of the @Box symbol
/lfigbox
{
   0     0     /SW  lfigpointdef
   xsize 0     /SE  lfigpointdef
   xsize ysize /NE  lfigpointdef
   0     ysize /NW  lfigpointdef
   SE 0.5 lfigpmul /S   lfigpointdef
   NW 0.5 lfigpmul /W   lfigpointdef
   W SE lfigpadd   /E   lfigpointdef
   S NW lfigpadd   /N   lfigpointdef
   NE 0.5 lfigpmul /CTR lfigpointdef
   [ CTR NE lfigpsub /lfigboxcircum cvx ] lfigcircumdef
   SW SE NE NW SW
} def

% shape and labels of the @CurveBox symbol
/lfigcurvebox
{

   xsize 0.5 mul	ysize 0.5 mul	/CTR lfigpointdef
   xsize 0.5 mul	0		/S   lfigpointdef
   xsize		ysize 0.5 mul	/E   lfigpointdef
   xsize 0.5 mul	ysize		/N   lfigpointdef
   0			ysize 0.5 mul	/W   lfigpointdef

   xmark 0.293 mul		xmark 0.293 mul		  /SW  lfigpointdef
   xsize xmark 0.293 mul sub	xmark 0.293 mul		  /SE  lfigpointdef
   xsize xmark 0.293 mul sub	ysize xmark 0.293 mul sub /NE  lfigpointdef
   xmark 0.293 mul		ysize xmark 0.293 mul sub /NW  lfigpointdef

   [ xsize ysize 0.5 lfigpmul xmark /lfigcurveboxcircum cvx ] lfigcircumdef

   xmark		0
   xsize xmark sub	0
   [ xsize xmark sub	xmark		]
   xsize		xmark
   xsize		ysize xmark sub
   [ xsize xmark sub	ysize xmark sub	]
   xsize xmark sub	ysize
   xmark		ysize
   [ xmark		ysize xmark sub	]
   0			ysize xmark sub
   0			xmark
   [ xmark		xmark		]
   xmark		0
} def

% shadow of the @ShadowBox symbol
% its shape and labels are done, somewhat inaccurately, with lfigbox
/lfigshadow
{ xmark 2 mul 0 moveto xsize 0 lineto
  xsize ysize xmark 2 mul sub lineto
  xsize xmark sub ysize xmark 2 mul sub lineto
  xsize xmark sub xmark lineto
  xmark 2 mul xmark lineto closepath fill
} def

% shape and labels of the @Square symbol
/lfigsquare
{
   xsize ysize 0.5 lfigpmul /CTR lfigpointdef
   CTR xsize xsize ysize ysize lfigpmax 0.5 lfigpmul lfigpadd /NE lfigpointdef
   CTR 0 0 CTR NE lfigdistance 135 lfigatangle lfigpadd /NW lfigpointdef
   CTR 0 0 CTR NE lfigdistance 225 lfigatangle lfigpadd /SW lfigpointdef
   CTR 0 0 CTR NE lfigdistance 315 lfigatangle lfigpadd /SE lfigpointdef
   SW 0.5 lfigpmul SE 0.5 lfigpmul lfigpadd /S lfigpointdef
   NW 0.5 lfigpmul NE 0.5 lfigpmul lfigpadd /N lfigpointdef
   SW 0.5 lfigpmul NW 0.5 lfigpmul lfigpadd /W lfigpointdef
   SE 0.5 lfigpmul NE 0.5 lfigpmul lfigpadd /E lfigpointdef
   [ CTR NE lfigpsub /lfigboxcircum cvx ] lfigcircumdef
   SW SE NE NW SW
} def

% shape and labels of the @Diamond symbol
/lfigdiamond
{
   xsize 0 0.5 lfigpmul /S   lfigpointdef
   0 ysize 0.5 lfigpmul /W   lfigpointdef
   S W         lfigpadd /CTR lfigpointdef
   CTR W       lfigpadd /N   lfigpointdef
   CTR S       lfigpadd /E   lfigpointdef
   [ xsize ysize 0.5 lfigpmul /lfigdiamondcircum cvx ] lfigcircumdef
   S E N W S
} def

% shape and labels of the @Ellipse symbol
/lfigellipse
{
   xsize 0 0.5 lfigpmul /S   lfigpointdef
   0 ysize 0.5 lfigpmul /W   lfigpointdef
   S W         lfigpadd /CTR lfigpointdef
   CTR W       lfigpadd /N   lfigpointdef
   CTR S       lfigpadd /E   lfigpointdef
   CTR xsize 0 0.3536 lfigpmul lfigpadd 0 ysize 0.3536 lfigpmul lfigpadd /NE lfigpointdef
   0 ysize 0.3536 lfigpmul CTR xsize 0 0.3536 lfigpmul lfigpadd lfigpsub /SE lfigpointdef
   xsize 0 0.3536 lfigpmul CTR lfigpsub 0 ysize 0.3536 lfigpmul lfigpadd /NW lfigpointdef
   0 ysize 0.3536 lfigpmul xsize 0 0.3536 lfigpmul CTR lfigpsub lfigpsub /SW lfigpointdef
   [ xsize ysize 0.5 lfigpmul /lfigellipsecircum cvx ] lfigcircumdef
   S [ CTR ] E [ CTR ] N [ CTR ] W [ CTR ] S
} def

% shape and labels of the @Circle symbol
/lfigcircle
{
   xsize ysize 0.5 lfigpmul /CTR lfigpointdef
   CTR xsize 0 ysize 0 lfigpmax 0.5 lfigpmul lfigpadd /E lfigpointdef
   CTR 0 0 CTR E lfigdistance 45 lfigatangle lfigpadd /NE lfigpointdef
   CTR 0 0 CTR E lfigdistance 90 lfigatangle lfigpadd /N lfigpointdef
   CTR 0 0 CTR E lfigdistance 135 lfigatangle lfigpadd /NW lfigpointdef
   CTR 0 0 CTR E lfigdistance 180 lfigatangle lfigpadd /W lfigpointdef
   CTR 0 0 CTR E lfigdistance 225 lfigatangle lfigpadd /SW lfigpointdef
   CTR 0 0 CTR E lfigdistance 270 lfigatangle lfigpadd /S lfigpointdef
   CTR 0 0 CTR E lfigdistance 315 lfigatangle lfigpadd /SE lfigpointdef
   [ S E lfigpsub /lfigellipsecircum cvx ] lfigcircumdef
   S [ CTR ] E [ CTR ] N [ CTR ] W [ CTR ] S
} def

% shape and labels of the @HLine and @HArrow symbols
/lfighline
{
   0 ymark lfigprevious /FROM lfigpointdef
   xsize ymark lfigprevious /TO lfigpointdef
} def

% shape and labels of the @VLine and @VArrow symbols
/lfigvline
{
   xmark ysize lfigprevious /FROM lfigpointdef
   xmark 0 lfigprevious /TO lfigpointdef
} def

% points of a polygon around base with given no of sides, vert init angle:
% <sides> <angle> figpolygon <point> ... <point>
/lfigpolygon
{  xsize ysize 0.5 lfigpmul /CTR lfigpointdef
   90 sub CTR 2 copy lfigmax 5 3 roll
   [ 4 copy pop /lfigpolycircum cvx ] lfigcircumdef
   exch dup 360 exch div exch
   1 1  3 2 roll
   {  4 string cvs (P) exch lfigconcat cvn
      6 copy pop pop lfigatangle 2 copy 10 2 roll
      3 2 roll lfigpointdef
      dup 3 1 roll add exch
   }  for
   pop lfigatangle
} def

% next array element:  <array> <index> lfiggetnext <array> <index> <any> true
%                                               or <array> <index> false
/lfiggetnext
{  2 copy exch length ge
   { false }
   { 2 copy get exch 1 add exch true } ifelse
} def

% check whether thing is number:  <any> lfigisnumbertype <any> <bool>
/lfigisnumbertype
{  dup type dup
   /integertype eq exch /realtype eq or
} def

% check whether thing is an array:  <any> lfigisarraytype <any> <bool>
/lfigisarraytype { dup type /arraytype eq } def

% get next item:  <array> <index> lfiggetnextitem <array> <index> 0
%                                              or <array> <index> <array> 1
%                                              or <array> <index> <point> 2
/lfiggetnextitem
{   lfiggetnext
    {	lfigisarraytype
	{   1
	}
	{   lfigisnumbertype
	    {	3 1 roll
		lfiggetnext
		{   lfigisnumbertype
		    {	4 3 roll exch  2
		    }
		    {	pop 3 2 roll pop  0
		    } ifelse
		}
		{   3 2 roll pop  0
		} ifelse
	    }
	    {	pop 0
	    } ifelse
	} ifelse
    }
    {	0
    } ifelse
} def

% set arc path:  bool x1 y1  x2 y2  x0 y0  lfigsetarc  <angle> <angle> <dist>
% the path goes from x1 y1 to x2 y2 about centre x0 y0,
% anticlockwise if bool is true else clockwise.
% The orientations of backwards pointing and forwards pointing
% arrowheads are returned in the two angles, and
% the length of the arc is returned in <dist>.
/lfigsetarc
{
  20 dict begin
     matrix currentmatrix 8 1 roll
     2 copy translate 2 copy 8 2 roll
     4 2 roll lfigpsub 6 2 roll lfigpsub
     dup /y1 exch def dup mul /y1s exch def
     dup /x1 exch def dup mul /x1s exch def
     dup /y2 exch def dup mul /y2s exch def
     dup /x2 exch def dup mul /x2s exch def

     y1s y2s eq
     {	-1
     }
     {	y1s x2s mul y2s x1s mul sub y1s y2s sub div
     } ifelse
     /da exch def

     x1s x2s eq
     {	-1
     }
     {	x1s y2s mul x2s y1s mul sub x1s x2s sub div
     } ifelse
     /db exch def

     da 0 gt db 0 gt and
     {	/LMax da sqrt db sqrt lfigmax def
	/scalex da sqrt LMax div def
	/scaley db sqrt LMax div def
	scalex scaley scale
	0 0 LMax
	0 0 x1 scalex mul y1 scaley mul lfigangle
	0 0 x2 scalex mul y2 scaley mul lfigangle
	2 copy eq { 360 add } if
	2 copy 8 2 roll
	5 index { arc } { arcn } ifelse
	2 index 1 index
	{ 90 sub } { 90 add } ifelse
	dup sin scaley mul exch cos scalex mul atan
	2 index 2 index
	{ 90 add } { 90 sub } ifelse
	dup sin scaley mul exch cos scalex mul atan
	5 2 roll  % res1 res2 ang1 ang2 anticlockwise
	{ exch sub } { sub } ifelse
	dup 0 le { 360 add } if  lfigpi mul LMax mul 180 div
     }
     {	0 0 x1 y1 lfigdistance 0 0 x2 y2 lfigdistance eq
	0 0 x1 y1 lfigdistance 0 gt and
	{	0 0
		0 0 x1 y1 lfigdistance
		0 0 x1 y1 lfigangle
		0 0 x2 y2 lfigangle
		2 copy eq { 360 add } if
		2 copy 8 2 roll
		5 index { arc } { arcn } ifelse
		2 index 1 index
		{ 90 sub } { 90 add } ifelse
		2 index 2 index
		{ 90 add } { 90 sub } ifelse
		5 2 roll % res1 res2 ang1 ang2 clockwise
		{ exch sub } { sub } ifelse
		dup 0 le { 360 add } if lfigpi mul 0 0 x1 y1 lfigdistance mul 180 div
	}
	{	x2 y2 lineto pop
		x2 y2 x1 y1 lfigangle
		x1 y1 x2 y2 lfigangle
		x1 y1 x2 y2 lfigdistance
	} ifelse
     } ifelse
     4 -1 roll setmatrix
   end
} def

% lfigsetcurve: set up a Bezier curve from x0 y0 to x3 y3
% and return arrowhead angles and length of curve (actually 0)
% x0 y0 x1 y1 x2 y2 x3 y3 lfigsetcurve <angle> <angle> <length>
/lfigsetcurve
{ 8 copy curveto pop pop
  lfigangle
  5 1 roll
  4 2 roll lfigangle
  exch
  0
} def

% lfigpaintpath: paint a path of the given shape
% /paint [ shape ] lfigpaintpath -
/lfigpaintpath
{
  10 dict begin
    0 newpath
    /prevseen false def
    /curveseen false def
    { lfiggetnextitem
      dup 0 eq { pop exit }
      { 1 eq
        { /curveseen true def
	  /curve exch def
	  curve length 0 eq { /curveseen false def } if
        }
        { /ycurr exch def
	  /xcurr exch def
	  prevseen
	  { curveseen
	    { curve length 4 eq
	      { xprev yprev
		curve 0 get curve 1 get
		curve 2 get curve 3 get
		xcurr ycurr
		lfigsetcurve pop pop pop
	      }
	      { xprev yprev xcurr ycurr
	        curve length 1 ge { curve 0 get } { 0 } ifelse
	        curve length 2 ge { curve 1 get } { 0 } ifelse
	        curve length 3 ge { curve 2 get } { true } ifelse
	        7 1 roll
	        lfigsetarc pop pop pop
	      } ifelse
	    }
	    { xcurr ycurr lineto
	    } ifelse
	  }
	  { xcurr ycurr moveto
	  } ifelse
	  /xprev xcurr def
	  /yprev ycurr def
	  /prevseen true def
	  /curveseen false def
        } ifelse
      } ifelse
    } loop pop pop cvx exec
  end
} def

% stroke a path of the given shape in the given linestyle and dash length.
% Return the origin and angle of the backward and forward arrow heads.
% dashlength /linestyle [shape] lfigdopath  [<point> <angle>] [<point> <angle>] 
/lfigdopath
{
  10 dict begin
    0
    /prevseen  false def
    /curveseen false def
    /backarrow []    def
    /fwdarrow  []    def
    {
	lfiggetnextitem
	dup 0 eq { pop exit }
	{
	    1 eq
	    {	/curveseen true def
		/curve exch def
		curve length 0 eq { /prevseen false def } if
	    }
	    {	/ycurr exch def
		/xcurr exch def
		prevseen
		{   newpath xprev yprev moveto
		    curveseen
		    {	curve length 4 eq
			{   xprev yprev
			    curve 0 get curve 1 get
			    curve 2 get curve 3 get
			    xcurr ycurr lfigsetcurve
			}
			{   xprev yprev xcurr ycurr
			    curve length 1 ge { curve 0 get } { 0 } ifelse
			    curve length 2 ge { curve 1 get } { 0 } ifelse
			    curve length 3 ge { curve 2 get } { true } ifelse
			    7 1 roll
			    lfigsetarc
			} ifelse
		    }
		    {	xcurr ycurr lineto
			xcurr ycurr xprev yprev lfigangle dup 180 sub
			xprev yprev xcurr ycurr lfigdistance
		    } ifelse
		    6 index 6 index cvx exec
		    [ xprev yprev 5 -1 roll ]
		    backarrow length 0 eq
		    { /backarrow exch def }
		    { pop } ifelse
		    [ xcurr ycurr 4 -1 roll ] /fwdarrow exch def
		} if
		/xprev xcurr def
		/yprev ycurr def
		/prevseen true def
		/curveseen false def
	    } ifelse
	} ifelse
    } loop
    pop pop pop pop
    backarrow length 0 eq { [ 0 0 0 ] } { backarrow } ifelse
    fwdarrow  length 0 eq { [ 0 0 0 ] } { fwdarrow  } ifelse
  end
} def

% lfigdoarrow: draw an arrow head of given form
% dashlength /lstyle /pstyle hfrac height width [ <point> <angle> ] lfigdoarrow -
/lfigdoarrow
{  matrix currentmatrix 8 1 roll
   dup 0 get 1 index 1 get translate
   2 get rotate
   [ 2 index neg 2 index 0 0
     3 index 3 index neg
     1 index 10 index mul 0
     7 index 7 index ]
   4 1 roll pop pop pop
   dup 3 1 roll
   gsave lfigpaintpath grestore lfigdopath pop pop
   setmatrix
} def

% arrow head styles
/lfigopen     0.0 def
/lfighalfopen 0.5 def
/lfigclosed   1.0 def

% stroke no arrows, forward, back, and both
/lfignoarrow { pop pop pop pop pop pop pop pop                        } def
/lfigforward { 7 -1 roll lfigdoarrow pop                              } def
/lfigback    { 8 -2 roll pop lfigdoarrow                              } def
/lfigboth    { 8 -1 roll 7 copy lfigdoarrow pop 7 -1 roll lfigdoarrow } def

% lfigprevious: return previous point on path
/lfigprevious
{ lfigisnumbertype
  { 2 copy }
  { lfigisarraytype
    { 2 index 2 index }
    { 0 0 }
    ifelse
  } ifelse
} def

% label a point in 2nd top dictionary:  <point> /name lfigpointdef -
/lfigpointdef
{
  % (Entering lfigpointdef) lfigdebugprint
  [ 4 2 roll transform
    /itransform cvx ] cvx
    currentdict end
    3 1 roll
    % currentdict length currentdict maxlength lt
    % { def }
    % { exec moveto (too many labels) show stop }
    % ifelse
    def
    begin
  % (Leaving lfigpointdef) lfigdebugprint
} def

% promote labels from second top to third top dictionary
% <string> lfigpromotelabels -
/lfigpromotelabels
{
  % (Entering lfigpromotelabels) lfigdebugprint
  currentdict end exch currentdict end
  { exch 20 string cvs 2 index
    (@) lfigconcat exch lfigconcat cvn exch def
  } forall pop begin
  % (Leaving lfigpromotelabels) lfigdebugprint
} def

% show labels (except CIRCUM): - lfigshowlabels -
/lfigshowlabels
{
  % (Entering lfigshowlabels) lfigdebugprint
  currentdict end
    currentdict
    { 1 index 20 string cvs (CIRCUM) search % if CIRCUM in key
      { pop pop pop pop pop }
      { pop cvx exec 2 copy
        newpath 1.5 pt 0 360 arc
        0 setgray fill
        /Times-Roman findfont 8 pt scalefont setfont
        moveto 0.2 cm 0.1 cm rmoveto 20 string cvs show
      }
      ifelse
    } forall
  begin
  % (Leaving lfigshowlabels) lfigdebugprint
} def

% fix an angle to 0 <= res < 360:  <angle> lfigfixangle <angle>
/lfigfixangle
{
  % (Entering lfigfixangle) lfigdebugprint
  { dup 0 ge { exit } if
    360 add
  } loop
  { dup 360 lt { exit } if
    360 sub
  } loop
  % (Leaving lfigfixangle) lfigdebugprint
} def

% find point on circumference of box:  alpha a b lfigboxcircum x y
/lfigboxcircum
{
  % (Entering lfigboxcircum) lfigdebugprint
  4 dict begin
    /b exch def
    /a exch def
    lfigfixangle /alpha exch def
    0 0 a b lfigangle /theta exch def

    % if alpha <= theta, return (a, a*tan(alpha))
    alpha theta le
    { a  a alpha sin mul alpha cos div }
    {
      % else if alpha <= 180 - theta, return (b*cot(alpha), b)
      alpha 180 theta sub le
      { b alpha cos mul alpha sin div  b }
      {
        % else if alpha <= 180 + theta, return (-a, -a*tan(alpha))
        alpha 180 theta add le
        { a neg  a neg alpha sin mul alpha cos div }
        {
	  % else if alpha <= 360 - theta, return (-b*cot(alpha), -b)
	  alpha 360 theta sub le
          { b neg alpha cos mul alpha sin div  b neg }
	  {
	    % else 360 - theta <= alpha, return (a, a*tan(alpha))
	    a  a alpha sin mul alpha cos div
	  } ifelse
        } ifelse
      } ifelse
    } ifelse
  end
  % (Leaving lfigboxcircum) lfigdebugprint
} def

% find quadratic roots (assume a != 0): a b c lfigqroots x1 x2 2
%                                                     or    x2 1
%                                                     or       0
/lfigqroots
{
  4 dict begin
    /c exch def
    /b exch def
    /a exch def
    /disc b b mul 4 a c mul mul sub def
    disc 0 lt
    { 0
    }
    { disc 0 eq
      { b neg 2 a mul div
	1
      }
      { b neg disc sqrt add 2 a mul div
        b neg disc sqrt sub 2 a mul div
	2
      }
      ifelse
    }
    ifelse
  end
} def

% work our which quadrant: <angle> lfigquadrant <0-3>
/lfigquadrant
{ dup 90 lt
  { pop 0
  }
  { dup 180 lt
    { pop 1
    }
    { 270 lt
      { 2
      }
      { 3
      } ifelse
    } ifelse
  } ifelse
} def

% find curvebox circum, assuming upper right quadrant: alpha a b xmk lfigcb x y
/lfigcb
{
  6 dict begin
    /xmk exch def
    /b exch def
    /a exch def
    /alpha exch def
    /theta1 0 0 a b xmk sub lfigangle def
    /theta2 0 0 a xmk sub b lfigangle def
    alpha theta1 le
    { % if alpha <= theta1, return (a, a*tan(alpha))
      a  a alpha sin mul alpha cos div
    }
    { alpha theta2 ge
      { % else if alpha > theta2, return (b*cot(alpha), b)
	b alpha cos mul alpha sin div  b
      }
      {
	% else, return the intersection of line and circle
	a xmk sub b xmk sub xmk  0 0 alpha lfigcircleintersect
	dup 0 eq
	{ % should never happen, just return any reasonable point
	  pop
	  a b 0.5 lfigpmul
	}
	{ 1 eq
	  { % should never happen, just return the point on top of stack
	  }
	  { % the usual case, two points on stack, return the larger
	    lfigpmax
	  } ifelse
	} ifelse
      } ifelse
    } ifelse
  end
} def

% find point on circumference of curvebox: alpha a b xmk lfigcurveboxcircum x y
/lfigcurveboxcircum
{
  % (Entering lfigcurveboxcircum) lfigdebugprint
  5 dict begin
    /xmk exch def
    /b exch def
    /a exch def
    lfigfixangle /alpha exch def

    % work out which quadrant we are in, and reflect accordingly
    /quad alpha lfigquadrant def
    quad 0 eq
    { alpha a b xmk lfigcb
    }
    { quad 1 eq
      { 180 alpha sub a b xmk lfigcb exch neg exch
      }
      { quad 2 eq
	{ alpha 180 sub a b xmk lfigcb neg exch neg exch
	}
	{ 360 alpha sub a b xmk lfigcb neg
	} ifelse
      } ifelse
    } ifelse
  end
  % (Leaving lfigcurveboxcircum) lfigdebugprint
} def

% find point on circumference of diamond:  alpha a b lfigdiamondcircum x y
/lfigdiamondcircum
{
  % (Entering lfigdiamondcircum) lfigdebugprint
  4 dict begin
    /b exch def
    /a exch def
    lfigfixangle /alpha exch def
    b alpha cos abs mul  a alpha sin abs mul  add  /denom exch def
    a b mul alpha cos mul denom div
    a b mul alpha sin mul denom div
  end
  % (Leaving lfigdiamondcircum) lfigdebugprint
} def

% find point on circumference of ellipse:  alpha a b lfigellipsecircum x y
/lfigellipsecircum
{
  % (Entering lfigellipsecircum) lfigdebugprint
  4 dict begin
    /b exch def
    /a exch def
    lfigfixangle /alpha exch def
    b alpha cos mul dup mul  a alpha sin mul dup mul  add sqrt /denom exch def
    a b mul alpha cos mul denom div
    a b mul alpha sin mul denom div
  end
  % (Leaving lfigellipsecircum) lfigdebugprint
} def

% find point of intersection of two lines each defined by two points
% x1 y1 x2 y2  x3 y3 x4 y4  lfiglineintersect x y
/lfiglineintersect
{
  % (Entering lfiglineintersect) lfigdebugprint
  13 dict begin
    /y4 exch def
    /x4 exch def
    /y3 exch def
    /x3 exch def
    /y2 exch def
    /x2 exch def
    /y1 exch def
    /x1 exch def
    x2 x1 sub /x21 exch def
    x4 x3 sub /x43 exch def
    y2 y1 sub /y21 exch def
    y4 y3 sub /y43 exch def
    y21 x43 mul y43 x21 mul sub /det exch def
  
    % calculate x 
    y21 x43 mul x1 mul
    y43 x21 mul x3 mul sub
    y3 y1 sub x21 mul x43 mul add
    det div

    % calculate y
    x21 y43 mul y1 mul
    x43 y21 mul y3 mul sub
    x3 x1 sub y21 mul y43 mul add
    det neg div

  end
  % (Leaving lfiglineintersect) lfigdebugprint
} def

% find point on circumference of polygon
% alpha radius num theta lfigpolycircum x y
/lfigpolycircum
{
  % (Entering lfigpolycircum) lfigdebugprint
  13 dict begin
    /theta exch def
    /num exch def
    /radius exch def
    /alpha exch def

    % calculate delta, the angle from theta to alpha
    alpha theta sub lfigfixangle

    % calculate the angle which is the multiple of 360/num closest to delta
    360 num div div truncate 360 num div mul theta add /anglea exch def

    % calculate the next multiple of 360/num after anglea
    anglea 360 num div add /angleb exch def

    % intersect the line through these two points with the alpha line
    anglea cos anglea sin  angleb cos angleb sin
    0 0  alpha cos 2 mul alpha sin 2 mul
    lfiglineintersect radius lfigpmul

  end
  % (Leaving lfigpolycircum) lfigdebugprint
} def

% find point of intersection of a point and a circle
% x0 y0 r  x1 y1 theta  lfigcircleintersect xa ya xb yb 2
%                                        or       xb yb 1
%                                        or             0
/lfigcircleintersect
{
  % (Entering lfigcircleintersect) lfigdebugprint
  15 dict begin
    /theta exch def
    /y1    exch def
    /x1    exch def
    /r     exch def
    /y0    exch def
    /x0    exch def

    % if sin(theta) = 0 then line is horizontal and y must be y1
    theta sin abs 0.00001 lt
    { 
      /a 1 def
      /b -2 x0 mul def
      /c x0 dup mul y1 y0 sub dup mul add r dup mul sub def
      a b c lfigqroots dup
      0 eq
      { pop
	0
      }
      { 1 eq
	{ y1 1
	}
	{ y1 exch y1 2
	} ifelse
      } ifelse
    }
    {
      /ct theta cos theta sin div def
      /a ct ct mul 1 add def
      /b ct x1 x0 sub mul y1 add y0 sub 2 mul def
      /c x1 x0 sub dup mul y1 y0 sub dup mul add r dup mul sub def
      a b c lfigqroots dup
      0 eq
      { pop
	0
      }
      { 1 eq
	{ y1 add /yb exch def
	  yb y1 sub ct mul x1 add /xb exch def
	  xb yb 1
	}
	{ y1 add /ya exch def
	  ya y1 sub ct mul x1 add /xa exch def
	  y1 add /yb exch def
	  yb y1 sub ct mul x1 add /xb exch def
	  xa ya xb yb 2
	} ifelse
      } ifelse
    } ifelse
  end
  % (Leaving lfigcircleintersect) lfigdebugprint
} def

% add CIRCUM operator with this body:  <array> lfigcircumdef -
/lfigcircumdef
{   % (Entering lfigcircumdef) lfigdebugprint
    /CIRCUM exch cvx
    currentdict end
    3 1 roll
    % currentdict length currentdict maxlength lt
    % { def }
    % { exec moveto (too many labels) show stop }
    % ifelse
    def
    begin
    % (Leaving lfigcircumdef) lfigdebugprint
} def

end
%%EndResource

%%BeginResource: procset LoutBasicSetup
% @PrependGraphic file /usr/staff/jeff/lout.lib/include/bsf.lpg

% width height linethickness louteuro -
% draw a Euro symbol of this width and height with this line thickness
/louteuro {
  20 dict begin
    /eurothick exch def
    /euroheight exch def
    /eurowidth exch def
    /eurostrokewidth euroheight 0.8 mul def
    /eurostep eurothick 60 cos mul 60 sin div def
    /eurotheta 40 def

    % llx lly width thickness louteurobox -
    % draw angled box starting at (llx, lly) with given width and thickness
    /louteurobox
    {
      /euroboxthick exch def
      /euroboxwidth exch def
      newpath moveto euroboxwidth 0 rlineto
      eurostep euroboxthick rlineto
      euroboxwidth neg 0 rlineto closepath fill
    } def

    % lower cross stroke
    0 euroheight 2 div eurothick 1.5 mul sub
    eurostrokewidth eurothick louteurobox

    % upper cross stroke
    0 euroheight 2 div eurothick 0.5 mul add
    eurostrokewidth eurostep 2 mul add eurothick louteurobox

    % circular part
    /eurohctr eurowidth euroheight 2 div eurotheta cos mul sub def
    /eurovctr euroheight 2 div def
    newpath
    eurohctr eurovctr eurovctr eurotheta 350 eurotheta sub arc
    eurohctr eurovctr eurovctr eurothick sub 365 eurotheta sub eurotheta arcn
    closepath fill
  end
} def

% path for @FullWidthRule symbol
/LoutRule
{ 0 0 moveto xsize 0 lineto
} def

% path for @Box symbol
/LoutBox
{ 0 0 moveto xsize 0 lineto
  xsize ysize lineto 0 ysize lineto
  closepath
} def

% path for @CurveBox symbol
/LoutCurveBox
{ xmark 0 moveto
  xsize xmark sub xmark xmark 270 360 arc
  xsize xmark sub ysize xmark sub xmark 0 90 arc
  xmark ysize xmark sub xmark 90 180 arc
  xmark xmark xmark 180 270 arc
  closepath
} def

% path for @ShadowBox symbol
/LoutShadowBox
{ xmark 2 mul 0 moveto xsize 0 lineto
  xsize ysize xmark 2 mul sub lineto
  xsize xmark sub ysize xmark 2 mul sub lineto
  xsize xmark sub xmark lineto
  xmark 2 mul xmark lineto
  closepath
} def

% set up dictionary containing margin note data: parity LoutMargSet -
/LoutMargSet
{ /LoutMargDict 12 dict def
  LoutMargDict begin
    /parity exch def
    /matr matrix currentmatrix def
    /rightx xsize def
    /lefty ysize def   % highest allowable point for top of next left note
    /righty ysize def  % highest allowable point for top of next right note
    /max { 2 copy gt { pop } { exch pop } ifelse } def
    /min { 2 copy lt { pop } { exch pop } ifelse } def
  end
} def

%translate coordinate system for marginal notes:  type LoutMargShift -
% where type 0 is left margin, 1 is right margin, 2 is outer, 3 is inner
/LoutMargShift
{ LoutMargDict begin

    % y coordinate of top of note, in margin coords, before vertical adjust
    0 ysize transform matr itransform exch pop

    % decide whether left or right margin based on type and parity
    exch [ 0 1 parity 1 parity sub ] exch get 0 eq
    {
      % left margin: adjust top of note downwards if overlaps previous note
      lefty min

      % bottom of note is new lefty position and also translate position
      ysize sub dup /lefty exch def

      % want right edge of note at coordinate zero
      xsize neg exch
    }
    {
      % right margin: adjust top of note downwards if overlaps previous note
      righty min

      % bottom of note is new righty position and also translate position
      ysize sub dup /righty exch def

      % want left edge of note at coordinate rightx
      rightx exch
    } ifelse

    % stack now contains coord of bottom left corner in margin coordinates
    matr setmatrix translate
  end
} def

% create LoutPageDict with left, right, foot, top for @Place symbol users
/LoutPageSet
{
  /LoutPageDict 5 dict def
  LoutPageDict begin
    /matr matrix currentmatrix def
    /left 0 def
    /right xsize def
    /foot 0 def
    /top ysize def
  end

} def

%%EndResource

%%EndProlog

%%BeginSetup
%%BeginResource: encoding vec2
/vec2 [
/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
/space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quoteright
/parenleft /parenright /asterisk /plus /comma /hyphen /period /slash
/zero /one /two /three /four /five /six /seven
/eight /nine /colon /semicolon /less /equal /greater /question
/at /A /B /C /D /E /F /G
/H /I /J /K /L /M /N /O
/P /Q /R /S /T /U /V /W
/X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore
/quoteleft /a /b /c /d /e /f /g
/h /i /j /k /l /m /n /o
/p /q /r /s /t /u /v /w
/x /y /z /braceleft /bar /braceright /asciitilde /.notdef
/quotesinglbase /quotedblbase /ellipsis /OE /oe /quotedblleft /quotedblright /fi
/fl /endash /emdash /bullet /dagger /daggerdbl /florin /fraction
/dotlessi /grave /acute /circumflex /tilde /macron /breve /dotaccent
/dieresis /.notdef /ring /cedilla /.notdef /hungarumlaut /ogonek /caron
/space /exclamdown /cent /sterling /currency /yen /brokenbar /section
/dieresis /copyright /ordfeminine /guillemotleft /logicalnot /hyphen /registered /macron
/degree /plusminus /twosuperior /threesuperior /acute /mu /paragraph /periodcentered
/cedilla /onesuperior /ordmasculine /guillemotright /onequarter /onehalf /threequarters /questiondown
/Agrave /Aacute /Acircumflex /Atilde /Adieresis /Aring /AE /Ccedilla
/Egrave /Eacute /Ecircumflex /Edieresis /Igrave /Iacute /Icircumflex /Idieresis
/Eth /Ntilde /Ograve /Oacute /Ocircumflex /Otilde /Odieresis /multiply
/Oslash /Ugrave /Uacute /Ucircumflex /Udieresis /Yacute /Thorn /germandbls
/agrave /aacute /acircumflex /atilde /adieresis /aring /ae /ccedilla
/egrave /eacute /ecircumflex /edieresis /igrave /iacute /icircumflex /idieresis
/eth /ntilde /ograve /oacute /ocircumflex /otilde /odieresis /divide
/oslash /ugrave /uacute /ucircumflex /udieresis /yacute /thorn /ydieresis
] def
%%EndResource

/pdfmark where {pop} {userdict /pdfmark /cleartomark load put} ifelse
%%EndSetup

%%Page: i 1
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Times-Bold
%%+ font Times-Italic
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Times-Bold
/Times-Boldfnt2 vec2 /Times-Bold LoutRecode
/fnt2 { /Times-Boldfnt2 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt3 vec2 /Times-Italic LoutRecode
/fnt3 { /Times-Italicfnt3 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup

gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
9066 14006 0 14006 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore
240 fnt2 2897 12401(The)m 3352(Design)s 4099(and)s 4540(Implementation)s
4239 11998(of)m 4511(the)s 2589 11595(Lout)m 3141(Document)s 4250(F)s 6(ormatting)k
5468(Language)s 240 fnt3 3630 11097(J)m 6(ef)k 4(fr)k 8(e)k 7(y)k
4310(H.)s 4577(Kingston)s 240 fnt1 2551 10596(Basser)m 3248(Department)s
4436(of)s 4707(Computer)s 5724(Science,)s 3007 10308(The)m 3435(Uni)s 6(v)k 3(ersity)k
4489(of)s 4760(Sydne)s 3(y)k 5530(2006,)s 4095 10020(Australia)m
3739 9568(27)m 4027(January)s 15(,)k 4863(1993)s 240 fnt2
3901 8775(SUMMAR)m 8(Y)k 240 fnt1 0 8320(Lout)m 543(is)s
784(a)s 982(high-le)s 6(v)k 3(el)k 2028(language)s
2979(for)s 3349(document)s 4384(formatting,)s 5530(whose)s 6230(ease)s
6728(of)s 7030(use)s 7437(has)s 7838(permitted)s 8843(an)s
0 8032(unprecedented)m 1501(number)s 2340(of)s 2659(adv)s 6(anced)k
3663(features)s 4517(to)s 4804(be)s 5134(added)s 5812(quickly)s
6632(and)s 7084(reliably)s 15(.)k 8010(This)s 8535(paper)s
0 7744(charts)m 625(the)s 978(e)s 6(v)k 4(olution)k
1933(of)s 2209(the)s 2561(design)s 3248(and)s 3656(implementation)s
5218(of)s 5493(Lout)s 6010(from)s 6538(conception)s 7650(in)s
7897(mid-1984)s 8887(to)s 0 7456(public)m 672(release)s 1412(in)s
1677(October)s 2529(1991.)s 3194(It)s 3421(includes)s 4291(e)s 3(xtensi)k 6(v)k 3(e)k
5260(discussions)s 6422(of)s 6715(remaining)s 7759(problems)s 8722(and)s
0 7168(possible)m 840(solutions.)s 240 fnt2 0 6664(K)m 6(eyw)k 2(ords)k
240 fnt1 1143 6665(document)m 2147(formatting)s 3208(typesetting)s 
grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 1 2
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Times-Bold
%%+ font Times-Italic
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Times-Bold
/Times-Boldfnt2 vec2 /Times-Bold LoutRecode
/fnt2 { /Times-Boldfnt2 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt3 vec2 /Times-Italic LoutRecode
/fnt3 { /Times-Italicfnt3 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
9066 14006 0 14006 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore
240 fnt2 2897 12401(The)m 3352(Design)s 4099(and)s 4540(Implementation)s
4239 11998(of)m 4511(the)s 2589 11595(Lout)m 3141(Document)s 4250(F)s 6(ormatting)k
5468(Language)s 240 fnt3 3630 11097(J)m 6(ef)k 4(fr)k 8(e)k 7(y)k
4310(H.)s 4577(Kingston)s 240 fnt1 2551 10596(Basser)m 3248(Department)s
4436(of)s 4707(Computer)s 5724(Science,)s 3007 10308(The)m 3435(Uni)s 6(v)k 3(ersity)k
4489(of)s 4760(Sydne)s 3(y)k 5530(2006,)s 4095 10020(Australia)m
3739 9568(27)m 4027(January)s 15(,)k 4863(1993)s 240 fnt2
0 8926(1.)m 291(Intr)s 4(oduction)k 
[ /Dest /LOUT16_594_s1_0_1 /DEST pdfmark
240 fnt1 480 8495(Lout)m
985([1,)s 1284(2])s 1515(is)s 1718(a)s 1877(high-le)s 6(v)k 3(el)k
2885(language)s 3798(for)s 4129(document)s 5126(formatting,)s 6234(designed)s
7136(and)s 7533(implemented)s 8832(by)s 0 8207(the)m 341(author)s 13(.)k
1096(The)s 1517(implementation,)s 3117(kno)s 6(wn)k 3814(as)s
4057(Basser)s 4747(Lout,)s 5299(is)s 5502(a)s 5661(fully)s
6159(operational)s 7282(production)s 8368(v)s 3(ersion)k 0 7919(written)m
736(in)s 983(C)s 1198(for)s 1540(the)s 1891(Unix)s
2429(operating)s 3389(system,)s 153 fnt1 4100 8008(1)m 240 fnt1
4223 7919(which)m 4869(translates)s 5824(Lout)s 6340(source)s 7023(code)s
7535(into)s 7964(PostScript,)s 153 fnt1 8993 8008(2)m 240 fnt1
0 7631(a)m 201(de)s 6(vice-independent)k 2164(graphics)s 3061(rendering)s
4066(language)s 5021(accepted)s 5951(by)s 6281(man)s 3(y)k
6900(high-resolution)s 8454(output)s 0 7343(de)m 6(vices,)k 833(including)s
1805(most)s 2346(laser)s 2871(printers.)s 3779(Basser)s 4492(Lout)s
5019(is)s 5244(a)s 4(v)k 6(ailable)k 6168(free)s
6609(of)s 6895(char)s 4(ge)k 7600([3].)s 8057(It)s
8278(includes)s 0 7055(installation)m 1118(instructions,)s 2339(C)s 2550(source,)s
3281(se)s 6(v)k 3(en)k 3873(standard)s 4740(packages,)s
5723(and)s 6127(complete)s 7058(documentation)s 8536(in)s 8778(the)s
0 6767(form)m 524(of)s 795(six)s 1129(technical)s 2046(reports)s
2760(and)s 3164(a)s 3330(manual)s 4089(page.)s 480 6393(The)m
900(Lout)s 1404(project)s 2118(arose)s 2670(out)s 3027(of)s
3290(the)s 3629(author')s 13(s)k 4442(desire)s 5060(to)s
5290(bring)s 5840(to)s 6070(document)s 7066(formatting)s 8118(languages)s
0 6105(the)m 343(ele)s 3(g)k 1(ance)k 1225(of)s
1491(e)s 3(xpression)k 2562(found)s 3174(in)s 3411(programming)s
4761(languages)s 5763(lik)s 2(e)k 6170(Algol-)s 6783(60)s
7072(and)s 7471(P)s 3(ascal.)k 8236(This)s 8706(em)s
8998(-)s 0 5817(phasis)m 638(on)s 924(e)s 3(xpressi)k 6(v)k 3(eness)k
2373(has)s 2731(produced)s 3669(an)s 3941(order)s 4493(of)s
4753(magnitude)s 5808(reduction)s 6757(in)s 6988(the)s 7325(cost)s
7759(of)s 8018(de)s 6(v)k 3(eloping)k 0 5529(document)m
998(formatting)s 2053(applications.)s 3366(F)s 3(or)k 3748(e)s 3(xample,)k
4656(an)s 4933(equation)s 5807(formatting)s 6862(application,)s 8025(which)s
8660(may)s 0 5241(be)m 282(dif\207cult)s 1098(or)s 1357(impossible)s
2449(to)s 2688(add)s 3092(to)s 3331(other)s 3882(systems,)s
4746(can)s 5135(be)s 5417(written)s 6150(in)s 6393(Lout)s
6905(in)s 7148(a)s 7314(fe)s 6(w)k 7720(days.)s
480 4867(When)m 1099(e)s 3(xpert)k 1742(users)s 2274(can)s
2652(implement)s 3724(such)s 4209(applications)s 5405(quickly)s 15(,)k
6204(non-)s 6632(e)s 3(xperts)k 7360(bene\207t.)s 8164(Although)s
0 4579(Lout)m 509(itself)s 1053(pro)s 3(vides)k 1922(only)s
2398(a)s 2560(small)s 3129(k)s 2(ernel)k 3775(of)s
4042(carefully)s 4941(chosen)s 5659(primiti)s 6(v)k 3(es,)k
6721(packages)s 7646(written)s 8375(in)s 8614(Lout)s 0 4291(and)m
399(distrib)s 4(uted)k 1470(with)s 1946(Basser)s 2638(Lout)s
3145(pro)s 3(vide)k 3923(an)s 4201(unprecedented)s 5649(array)s
6187(of)s 6453(adv)s 6(anced)k 7404(features)s 8204(in)s
8442(a)s 8602(form)s 0 4003(accessible)m 1035(to)s 1286(non-)s
1714(e)s 3(xpert)k 2380(users.)s 3047(The)s 3487(features)s
4305(include)s 5076(rotation)s 5888(and)s 6304(scaling,)s 7100(fonts,)s
7697(paragraph)s 8722(and)s 0 3715(page)m 500(breaking,)s 1436(displays)s
2263(and)s 2659(lists,)s 3141(\210oating)s 3917(\207gures)s 4611(and)s
5007(tables,)s 5662(footnotes,)s 6651(chapters)s 7490(and)s 7886(sections)s
8698(\(au)s 8998(-)s 0 3427(tomatically)m 1128(numbered\),)s 2272(running)s
3070(page)s 3579(headers)s 4361(and)s 4765(footers,)s 5536(odd-)s
5964(e)s 6(v)k 3(en)k 6464(page)s 6973(layouts,)s
7772(automatically)s 0 3139(generated)m 975(tables)s 1570(of)s 1829(contents,)s
2720(sorted)s 3350(inde)s 3(x)k 3(es)k 4113(and)s
4505(reference)s 5435(lists,)s 5914(bibliographic)s 7229(and)s 7621(other)s
8159(databases)s 0 2851(\(including)m 1038(databases)s 2008(of)s 2281(formats)s
3064(for)s 3405(printing)s 4217(references\),)s 5386(equations,)s 6412(tables,)s
7079(diagrams,)s 8065(formatting)s 0 2563(of)m 271(P)s 3(ascal)k
933(programs,)s 1943(and)s 2347(automatically)s 3701(maintained)s 4821(cross)s
5363(references.)s 480 2189(This)m 1015(paper)s 1666(charts)s 2347(the)s
2755(e)s 6(v)k 4(olution)k 3766(of)s 4097(Lout)s
4669(from)s 5253(conception)s 6420(in)s 6723(mid-1984)s 7768(to)s
8067(the)s 8475(public)s 0 1901(release)m 722(of)s 997(Basser)s
1699(Lout)s 2215(in)s 2462(October)s 3297(1991.)s 3945(Lout)s
4461(is)s 4676(or)s 4(g)k 1(anized)k 5676(around)s
6403(four)s 6866(k)s 2(e)k 3(y)k 7265(concepts)s
8157(\211)s 8342(objects,)s 0 1613(de\207nitions,)m 1131(g)s 1(alle)k 3(ys,)k
1925(and)s 2343(cross)s 2899(references)s 3944(\211)s 4138(and)s
4556(the)s 3(y)k 5033(were)s 5567(de)s 6(v)k 3(eloped)k
6614(in)s 6871(the)s 7233(order)s 7811(listed,)s 8449(so)s
8730(this)s 0 1325(paper)m 593(will)s 1022(treat)s 1508(each)s
2006(in)s 2252(turn,)s 2747(discussing)s 3800(its)s 4079(design,)s
4814(implementation,)s 6424(problems,)s 7424(and)s 7831(prospects)s 8788(for)s
1134 0 0 0 240 288 60 0 574 LoutGr2
0 0 moveto xsize 0 lineto stroke
grestore

grestore
122 fnt1 0 379(1)m 192 fnt1 58 309(Unix)m 485(is)s
653(a)s 786(trademark)s 1609(of)s 1825(A)s 21(T&T)k
2370(Bell)s 2733(Laboratories.)s 122 fnt1 0 112(2)m 192 fnt1
67 42(PostScript)m 900(is)s 1068(a)s 1201(trademark)s 2024(of)s
2240(Adobe)s 2796(Systems,)s 3519(Incorporated.)s 
grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 2 3
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Times-Bold
%%+ font Symbol
%%+ font Times-Italic
%%+ font Helvetica
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Times-Bold
/Times-Boldfnt2 vec2 /Times-Bold LoutRecode
/fnt2 { /Times-Boldfnt2 LoutFont } def
%%IncludeResource: font Symbol
/fnt5 { /Symbol LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5765 -1579(-)m 5893(2)s 6067(-)s 9066 13419 0 13310 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore
0 13256(further)m 709(impro)s 3(v)k 3(ement.)k
240 fnt2 0 12463(2.)m 291(Objects)s 
[ /Dest /LOUT16_594_s2_0_1 /DEST pdfmark
240 fnt1 480 11987(The)m
923(essence)s 1725(of)s 2011(an)s 3(y)k 2424(mo)s 3(v)k 3(e)k
3021(to)s 3276(a)s 3457(higher)s 4144(le)s 6(v)k 3(el)k
4669(is)s 4895(the)s 5258(introduction)s 6500(of)s 6786(some)s
7363(abstraction)s 8484(which)s 0 11699(serv)m 3(es)k 639(to)s
872(or)s 4(g)k 1(anize)k 1740(the)s 2082(lo)s 6(w-)k
2503(le)s 6(v)k 3(el)k 3006(operations,)s 4103(resulting)s
4986(in)s 5223(a)s 5383(more)s 5923(succinct)s 6760(e)s 3(xpression)k
7831(of)s 8096(their)s 8586(com)s 8998(-)s 0 11411(mon)m
475(combinations)s 1806(at)s 2030(the)s 2369(cost)s 2805(of)s
3068(some)s 3620(loss)s 4034(of)s 4297(detailed)s 5102(control.)s
5934(The)s 6354(early)s 6876(part)s 7298(of)s 7561(the)s
7900(Lout)s 8403(project)s 0 11123(w)m 2(as)k 426(spent)s
996(in)s 1245(the)s 1598(de)s 6(v)k 3(elopment)k
2891(of)s 3167(such)s 3668(an)s 3957(abstraction)s 5067(for)s
5411(the)s 5764(b)s 4(uilding)k 6616(blocks)s 7298(of)s
7574(documents,)s 8724(one)s 0 10835(which)m 635(could)s 1217(e)s 3(xplain,)k
2017(not)s 2375(just)s 2772(the)s 3113(simple)s 3798(phenomena)s
4954(of)s 5217(w)s 2(ords,)k 5899(lines,)s 6450(and)s
6846(paragraphs,)s 7994(b)s 4(ut)k 8348(also)s 8778(the)s
0 10547(alignment)m 1016(of)s 1287(columns)s 2149(in)s 2392(tables,)s
3056(and)s 3460(the)s 3808(comple)s 3(x)k 4684(nested)s
5353(structures)s 6332(of)s 6603(equations.)s 240 fnt2 0 9898(2.1.)m
471(The)s 926(genesis)s 1697(of)s 1969(the)s 2343(object)s
3026(abstraction)s 
[ /Dest /LOUTgenesis /DEST pdfmark
240 fnt1 480 9421(When)m 1163(one)s 1620(e)s 3(xamines)k
2626(pre)s 6(vious)k 3549(document)s 4608(formatting)s 5724(systems)s
6587([4])s 6958(looking)s 7798(for)s 8191(ideas)s 8788(for)s
0 9133(abstractions,)m 1245(as)s 1492(the)s 1837(author)s 2505(did)s
2866(in)s 3106(1984,)s 3690(the)s 4035(Eqn)s 4475(formatting)s
5533(language)s 6450([5])s 6764(stands)s 7410(out)s 7773(lik)s 2(e)k
8182(a)s 8344(beacon.)s 0 8845(In)m 256(Eqn,)s 749(a)s
915(mathematical)s 2256(formula)s 3072(such)s 3568(as)s 168 fnt5
586 8390(2)m 240 fnt4 480 8330(x)m 240 fnt5 738 8322(+)m
939(1)s gsave
480 8274 translate
240 fnt4 553 0 0 0 240 288 12 LoutGraphic
gsave
0 0 moveto xsize 0 lineto 0.05 ft setlinewidth stroke
grestore

grestore
700 8046(4)m 240 fnt1 0 7535(is)m 210(produced)s
1159(by)s 1453(typing)s 220 fnt6 480 7037({ x sup 2 + 1 } o)m 3(v)k 5(er 4)k
240 fnt1 0 6541(in)m 261(the)s 627(input)s 1197(\207le;)s
220 fnt6 1632 6538(sup)m 240 fnt1 2056 6541(and)m 220 fnt6
2478 6538(o)m 3(v)k 5(er)k 240 fnt1 2975 6541(are)m
3340(binary)s 4023(operators,)s 5037(and)s 5459(braces)s 6138(are)s
6503(used)s 7018(for)s 7374(grouping.)s 8421(This)s 8916(is)s
0 6253(document)m 1017(formatting)s 2091(at)s 2337(a)s 2516(v)s 3(ery)k
3006(high)s 3502(le)s 6(v)k 3(el,)k 4077(close)s
4638(to)s 4890(the)s 5252(language)s 6185(of)s 6469(mathematics)s
7741(itself,)s 8337(with)s 8833(all)s 0 5965(reference)m 943(to)s
1182(font)s 1627(changes)s 2449(and)s 2853(spacing)s 3637(suppressed.)s
480 5591(Eqn)m 916(pro)s 3(vides)k 1780(a)s 1938(single)s
2557(data)s 3008(type)s 3468(\(let)s 3837(us)s 4093(call)s
4485(it)s 4669(the)s 240 fnt4 5009 5593(e)m 4(xpr)k 8(ession)k
240 fnt1 6014 5591(\),)m 6192(b)s 4(uilt)k 6679(up)s
6964(recursi)s 6(v)k 3(ely)k 8062(in)s 8297(conte)s 3(xt-)k
0 5303(free)m 457(style:)s 1106(where)s 1778(one)s 2212(e)s 3(xpression)k
3321(may)s 3819(appear)s 9(,)k 4586(an)s 3(y)k
5015(e)s 3(xpression)k 6124(may)s 6622(appear)s 13(.)k
7442(This)s 7950(approach)s 8916(is)s 0 5015(common)m 905(in)s
1158(algebra)s 1931(and)s 2345(programming)s 3710(languages,)s 4785(where)s
5435(its)s 5721(simplicity)s 6740(and)s 7154(e)s 3(xpressi)k 6(v)k 3(eness)k
8625(ha)s 4(v)k 3(e)k 0 4727(long)m 478(been)s
986(appreciated;)s 2198(b)s 4(ut)k 2559(Eqn)s 3001(w)s 2(as)k
3421(the)s 3768(\207rst)s 4198(language)s 5117(to)s 5355(demonstrate)s
6578(its)s 6853(utility)s 7476(in)s 7718(document)s 8720(for)s
8998(-)s 0 4439(matting.)m 480 4065(Each)m 1015(e)s 3(xpression)k
2092(is)s 2302(treated)s 3009(by)s 3304(Eqn)s 3747(as)s
3997(a)s 4163(rectangle)s 5094(with)s 5577(a)s 240 fnt4
5743 4067(horizontal)m 6787(axis)s 240 fnt1 7167 4065(,)m 7274(used)s
7771(for)s 8110(alignment)s 0 3777(with)m 482(adjacent)s 1338(e)s 3(xpressions:)k
553 519 0 288 240 288 60 480 2918 LoutGr2
grestore save gsave 200 dict begin lfigdict begin
grestore
553 519 0 288 240 288 60 0 0 LoutGr2
/lfiglightgrey [ lfigbox ] gsave lfigpaintpath grestore
0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
553 519 0 288 240 288 60 0 0 LoutGr2

0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigdashed [ -0.3 cm ymark xsize ymark 0.3 cm 0 lfigpadd

 ] lfigdopath
pop pop
grestore
168 fnt5 106 404(2)m 240 fnt4 0 344(x)m 240 fnt5
258 336(+)m 459(1)s gsave
0 288 translate
240 fnt4 553 0 0 0 240 288 12 LoutGraphic
gsave
0 0 moveto xsize 0 lineto 0.05 ft setlinewidth stroke
grestore

grestore
220 60(4)m 
grestore

grestore
end end restore
grestore
0 2467(The)m 425(size)s
848(and)s 1248(rendering)s 2213(of)s 2481(the)s 2825(e)s 3(xpression)k
3898(on)s 4191(the)s 4536(printed)s 5267(page)s 5771(are)s
6114(kno)s 6(wn)k 6815(only)s 7291(to)s 7526(the)s
7870(implementa)s 8998(-)s 0 2179(tion,)m 481(ne)s 6(v)k 3(er)k
1066(e)s 3(xplicitly)k 2022(calculated)s 3051(or)s 3313(accessed)s
4209(by)s 4506(the)s 4857(user)s 13(.)k 5409(This)s
5888(prohibition)s 7010(is)s 7223(crucial)s 7930(to)s 8172(the)s
8523(main)s 8998(-)s 0 1891(tenance)m 785(of)s 1055(the)s
1402(conte)s 3(xt-)k 2171(free)s 2596(property)s 3459(in)s
3701(practice.)s 4619(In)s 4874(Lout,)s 5432(for)s 5769(e)s 3(xample,)k
6682(equations,)s 7705(\207gures,)s 8462(tables,)s 0 1603(and)m 393(arbitrary)s
1256(objects)s 1972(may)s 2427(be)s 2697(mix)s 3(ed)k
3338(together)s 4169(freely)s 15(.)k 4863(This)s 5327(w)s 2(ould)k
5970(be)s 6241(impossible)s 7321(if)s 7526(size)s 7941(information)s
0 1315(w)m 2(as)k 421(hidden)s 1130(from)s 1654(the)s
2002(implementation)s 3559(in)s 3802(user)s 4260(calculations.)s 480 941(The)m
927(object)s 1591(abstraction)s 2715(of)s 3006(Lout)s 3537(is)s
3767(a)s 3952(direct)s 4575(descendant)s 5717(of)s 6008(the)s
6375(Eqn)s 6838(e)s 3(xpression.)k 8041(It)s 8266(emplo)s 2(ys)k
0 653(the)m 385(same)s 969(conte)s 3(xt-free)k 2212(recursi)s 6(v)k 3(e)k
3171(style)s 3715(of)s 4023(construction,)s 5350(and)s 5791(each)s
6323(object)s 7004(is)s 7251(treated)s 7995(by)s 8326(Lout)s
8876(as)s 
grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 3 4
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Times-Italic
%%+ font Times-Bold
%%+ font Symbol
%%+ font Helvetica
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
%%IncludeResource: font Times-Bold
/Times-Boldfnt2 vec2 /Times-Bold LoutRecode
/fnt2 { /Times-Boldfnt2 LoutFont } def
%%IncludeResource: font Symbol
/fnt5 { /Symbol LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5770 -1579(-)m 5898(3)s 6062(-)s 9066 13416 0 13307 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore
0 13253(a)m 166(rectangle:)s
1701 453 567 198 240 288 60 480 12460 LoutGr2
grestore save gsave 200 dict begin lfigdict begin
grestore
1701 453 567 198 240 288 60 0 0 LoutGr2
grestore save gsave 200 dict begin lfigdict begin
grestore
1701 453 567 198 240 288 60 0 0 LoutGr2
/lfiglightgrey [ lfigbox ] gsave lfigpaintpath grestore
0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
1701 453 567 198 240 288 60 0 0 LoutGr2

0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigdashed [ -0.3 cm ymark xsize ymark 0.3 cm 0 lfigpadd
[]
xmark -0.3 cm xmark ysize 0 0.3 cm lfigpadd ] lfigdopath
pop pop
grestore

grestore

grestore
end end restore
grestore
end end restore
grestore
0 12007(The)m 442(horizontal)s 1481(axis,)s 1987(called)s 2630(a)s
240 fnt4 2810 12009(r)m 10(ow)k 3244(mark)s 240 fnt1
3814 12007(in)m 4072(Lout,)s 4645(has)s 5030(a)s 5210(v)s 3(ertical)k
5992(analogue)s 6926(called)s 7569(a)s 240 fnt4 7749 12009(column)m
8523(mark)s 240 fnt1 9019 12007(,)m 0 11719(creating)m 822(a)s
988(v)s 6(aluable)k 1848(symmetry)s 2857(between)s 3711(horizontal)s
4735(and)s 5139(v)s 3(ertical.)k 6014(Multiple)s 6893(column)s
7668(and)s 8072(ro)s 6(w)k 8491(marks)s 0 11431(are)m
347(permitted:)s 1984 1189 0 1189 240 288 60 480 9902 LoutGr2
grestore save gsave 200 dict begin lfigdict begin
grestore
680 453 0 453 240 288 60 0 736 LoutGr2
currentdict end 200 dict begin begin
grestore
680 453 0 453 240 288 60 0 0 LoutGr2
/lfiggrey [ lfigbox ] gsave lfigpaintpath grestore
0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore

grestore
(A) lfigpromotelabels
grestore
737 453 0 453 240 288 60 1247 736 LoutGr2
currentdict end 200 dict begin begin
grestore
567 453 0 453 240 288 60 0 0 LoutGr2
/lfiggrey [ lfigbox ] gsave lfigpaintpath grestore
0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore

grestore
(B) lfigpromotelabels
grestore
680 453 0 453 240 288 60 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
396 453 0 453 240 288 60 0 0 LoutGr2
/lfiggrey [ lfigbox ] gsave lfigpaintpath grestore
0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore

grestore
(C) lfigpromotelabels
grestore
737 453 0 453 240 288 60 1247 0 LoutGr2
currentdict end 200 dict begin begin
grestore
737 453 0 453 240 288 60 0 0 LoutGr2
/lfiggrey [ lfigbox ] gsave lfigpaintpath grestore
0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore

grestore
(D) lfigpromotelabels
grestore
0 0 0 0 240 288 60 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigdashed [ 0.3 cm 0 A@W lfigpsub lfigprevious /FROM lfigpointdef
B@W 1.6 cm 0 lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
0 0 0 0 240 288 60 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigdashed [ 0.3 cm 0 C@W lfigpsub lfigprevious /FROM lfigpointdef
D@W 1.6 cm 0 lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
0 0 0 0 240 288 60 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigdashed [ A@NW 0 0.3 cm lfigpadd lfigprevious /FROM lfigpointdef
0 0.3 cm C@SW lfigpsub lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
0 0 0 0 240 288 60 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigdashed [ B@NW 0.3 cm 0.3 cm lfigpadd lfigprevious /FROM lfigpointdef
D@SW 0.3 cm -0.3 cm lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
end end restore
grestore
0 9451(so)m 266(that)s 684(objects)s 1412(are)s
1759(able)s 2213(to)s 2452(represent)s 3387(tables.)s 480 9077(This)m
946(abstraction)s 2041(has)s 2401(some)s 2952(limitations,)s 4069(the)s
4407(most)s 4922(ob)s 3(vious)k 5719(being)s 6293(the)s
6631(restriction)s 7645(of)s 7906(size)s 8322(calcula)s 8998(-)s
0 8789(tions)m 507(to)s 736(rectangular)s 1860(bounding)s 2809(box)s 3(es.)k
3519(Non-)s 4000(rectangular)s 5124(and)s 5518(disconnected)s 6815(shapes)s
7494(arise)s 7990(naturally)s 8883(in)s 0 8501(\207gures)m 704(and)s
1111(in)s 1356(the)s 1707(characters)s 2727(of)s 3001(fonts;)s
3594(the)s 3944(e)s 3(xtension)k 4918(to)s 5159(them)s
5700(is)s 5912(conceptually)s 7191(straightforw)s 2(ard)k 8722(and)s
0 8213(might)m 615(help)s 1076(to)s 1311(e)s 3(xplain)k
2066(some)s 2623(\207ne)s 3034(points)s 3667(of)s 3934(layout)s
4588(such)s 5081(as)s 5327(k)s 2(erning.)k 6216(Ho)s 6(we)k 6(v)k 3(er)k 9(,)k
7173(there)s 7702(are)s 8045(implemen)s 8998(-)s 0 7925(tation)m
599(and)s 1001(language)s 1918(design)s 2598(problems,)s 3592(particularly)s
4744(when)s 5317(\207lling)s 5939(non-)s 6367(rectangular)s 7498(shapes)s
8185(with)s 8664(te)s 3(xt,)k 0 7637(and)m 404(so)s
670(the)s 1018(author)s 1689(chose)s 2290(to)s 2529(k)s 2(eep)k
3032(to)s 3271(Eqn')s 13(s)k 3867(rectangles.)s 480 7263(A)m
766(more)s 1370(fundamental)s 2676(limitation)s 3718(of)s 4045(the)s
4450(object)s 5151(abstraction)s 6312(arises)s 6963(from)s 7543(the)s
7948(inability)s 8855(of)s 0 6975(recursi)m 6(v)k 3(e)k
936(data)s 1408(types)s 1978(to)s 2231(describe)s 3097(cross-link)s 2(ed)k
4335(structures,)s 5384(which)s 6040(seem)s 6605(to)s 6858(require)s
7604(some)s 8179(means)s 8855(of)s 0 6687(naming)m 756(the)s
1089(multiply)s 1938(referenced)s 2988(parts.)s 3601(Lout)s 4098(is)s
4293(obliged)s 5054(to)s 5278(introduce)s 6222(additional)s 7218(abstractions)s
8395(to)s 8618(cope)s 0 6399(with)m 490(cross)s 1040(linking:)s
1892(g)s 1(alle)k 3(ys)k 2624(for)s 2970(inserting)s
3867(te)s 3(xt)k 4291(into)s 4724(pages)s 5328(\(Section)s
6189(5.1\),)s 6683(cross)s 7233(references)s 8273(\(Section)s 0 6111(6.1\),)m
490(and)s 898(labelled)s 1716(points)s 2356(in)s 2603(\207gure)s
3221(dra)s 3(wing)k 4059([6].)s 4506(An)s 4860(abstraction)s
5969(closer)s 6603(to)s 6846(h)s 1(yperte)k 3(xt)k
7809(might)s 8431(form)s 8960(a)s 0 5823(more)m 547(uni\207ed)s
1270(basis)s 1799(for)s 2137(these)s 2684(features.)s 240 fnt2
0 5224(2.2.)m 471(Grammatical)s 1893(and)s 2334(lexical)s 3039(structur)s 4(e)k

[ /Dest /LOUTlexical /DEST pdfmark
240 fnt1 480 4792(If)m 700(objects)s 1418(are)s 1755(to)s
1984(be)s 2256(constructed)s 3406(lik)s 2(e)k 3807(mathematical)s
5138(e)s 3(xpressions,)k 6348(the)s 6686(natural)s 7394(notation)s
8225(is)s 8425(a)s 8580(func)s 8998(-)s 0 4504(tional)m
599(language)s 1519(based)s 2122(on)s 2419(operators,)s 3415(as)s
3665(in)s 3908(Eqn.)s 4458(The)s 4886(grammar)s 5808(of)s
6079(Lout)s 6591(objects)s 7319(is)s 7529(accordingly)s 240 fnt5
1332 3945(\256)m 1332 3612(\256)m 1332 3279(\256)m 1332 2995(\256)m 1332 2662(\256)m
1332 2368(\256)m 1332 2035(\256)m 1332 1751(\256)m 240 fnt4 480 3953(object)m
1826(object)s 2498(in\207xop)s 3227(object)s 1826 3620(pr)m 8(e\207xop)k
2680(object)s 1826 3287(object)m 2498(post\207xop)s 1826 3003(nopar)m 2(sop)k
1826 2670(liter)m 3(alwor)k 8(d)k 220 fnt6 1826 2371({)m
240 fnt4 1974 2376(object)m 220 fnt6 2646 2371(})m 240 fnt4
1826 2043(object)m 2498(object)s 240 fnt1 0 1248(where)m 240 fnt4
640 1250(in\207xop)m 240 fnt1 1285 1248(,)m 240 fnt4 1391 1250(pr)m 8(e\207xop)k
240 fnt1 2161 1248(,)m 240 fnt4 2267 1250(post\207xop)m 240 fnt1
3125 1248(,)m 3232(and)s 240 fnt4 3635 1250(nopar)m 2(sop)k
240 fnt1 4591 1248(are)m 4938(identi\207ers)s 5943(naming)s 6713(operators)s
7653(which)s 8294(tak)s 2(e)k 8745(0,)s 8971(1)s
0 960(or)m 255(2)s 424(parameters,)s 1573(as)s 1819(sho)s 6(wn,)k
2541(and)s 240 fnt4 2940 962(liter)m 3(alwor)k 8(d)k
240 fnt1 4067 960(is)m 4272(a)s 4433(sequence)s 5362(of)s
5628(non-space)s 6649(characters,)s 7719(or)s 7973(an)s 8251(arbitrary)s
0 672(sequence)m 969(of)s 1276(characters)s 2330(enclosed)s 3262(in)s
3541(double)s 4285(quotes.)s 5110(Ambiguities)s 6380(are)s 6763(resolv)s 3(ed)k
7664(by)s 7995(precedence)s 0 384(and)m 404(associati)s 6(vity)k 15(.)k

grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 4 5
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Helvetica
%%+ font Times-Italic
%%+ font Times-Bold
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
%%IncludeResource: font Times-Bold
/Times-Boldfnt2 vec2 /Times-Bold LoutRecode
/fnt2 { /Times-Boldfnt2 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5765 -1579(-)m 5893(4)s 6067(-)s 9066 13419 0 13310 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore
480 13256(The)m 941(last)s
1366(production)s 2494(allo)s 6(ws)k 3197(a)s 3397(meaning)s
4307(for)s 4679(e)s 3(xpressions)k 5877(such)s 6407(as)s
220 fnt6 6691 13253({})m 240 fnt1 6828 13256(,)m 6968(in)s
7245(which)s 7921(an)s 8238(object)s 8916(is)s 0 12968(missing.)m
907(The)s 1333(v)s 6(alue)k 1899(of)s 2168(this)s
240 fnt4 2562 12970(empty)m 3187(object)s 240 fnt1 3833 12968(is)m
4041(a)s 4205(rectangle)s 5135(of)s 5404(size)s 5829(0)s
6002(by)s 6294(0,)s 6519(with)s 6999(one)s 7399(column)s
8172(mark)s 8722(and)s 0 12680(one)m 402(ro)s 6(w)k
822(mark,)s 1420(that)s 1838(prints)s 2433(as)s 2683(nothing.)s
480 12306(The)m 938(second-last)s 2103(production)s 3227(generates)s 4210(sequences)s
5261(of)s 5562(arbitrary)s 6467(objects)s 7225(separated)s 8215(by)s
8539(white)s 0 12018(space,)m 671(called)s 240 fnt4 1333 12020(par)m 3(a)k 2(gr)k 3(aphs)k
240 fnt1 2439 12018(.)m 2636(Ignoring)s 3547(paragraph)s 4593(breaking)s
5517(for)s 5888(no)s 6(w)k 15(,)k 6421(the)s
6802(natural)s 7554(meaning)s 8464(is)s 8708(that)s 0 11730(the)m
361(tw)s 2(o)k 784(objects)s 1525(should)s 2235(appear)s
2946(side)s 3400(by)s 3707(side,)s 4212(and)s 4629(Lout')s 13(s)k
5305(parser)s 5961(accordingly)s 7157(interpolates)s 8335(an)s 8632(in\207x)s
0 11442(horizontal)m 1017(concatenation)s 2395(operator)s 3244(\(see)s 3677(belo)s 6(w\))k
4377(between)s 5224(them.)s 5859(This)s 6328(operator)s 7177(is)s
7380(associati)s 6(v)k 3(e,)k 8519(so)s 8778(the)s
0 11154(grammatical)m 1262(ambiguity)s 2301(does)s 2806(no)s 3113(harm.)s
3783(Ho)s 6(we)k 6(v)k 3(er)k 9(,)k
4758(the)s 5120(Algol-60)s 6054(rule)s 6496(that)s 6928(white)s
7530(space)s 8132(should)s 8844(be)s 0 10866(signi\207cant)m 1056(only)s
1536(as)s 1786(a)s 1952(separator)s 2887(is)s 3097(necessarily)s
4212(brok)s 2(en)k 4932(by)s 5226(Lout)s 5738(in)s
5981(just)s 6386(this)s 6782(one)s 7184(place.)s 480 10492(Algol-lik)m 2(e)k
1506(languages)s 2504(distinguish)s 3601(literal)s 4201(strings)s 4879(from)s
5393(identi\207ers)s 6389(by)s 6673(enclosing)s 7633(them)s 8161(in)s
8394(quotes,)s 0 10204(b)m 4(ut)k 372(literals)s 1082(are)s
1440(f)s 2(ar)k 1773(too)s 2143(frequent)s 3010(in)s
3264(document)s 4278(formatting)s 5350(for)s 5699(this)s 6106(to)s
6356(be)s 6649(viable.)s 7408(The)s 7847(con)s 9(v)k 3(entional)k
0 9916(solution)m 829(is)s 1041(to)s 1282(be)s 3(gin)k
1870(identi\207ers)s 2878(with)s 3362(a)s 3530(special)s 4250(character)s 9(,)k
5224(and)s 5630(Lout)s 6144(follo)s 6(ws)k 6908(Scribe)s
7576([7])s 7895(in)s 8140(using)s 8714(`@')s 0 9628(rather)m
616(than)s 1085(the)s 1433(`\\')s 1690(of)s 1961(trof)s 6(f)k
2450([8])s 2767(and)s 3171(T)s 3313 9580(E)m 3456 9628(X)m
3685([9].)s 480 9254(Ho)m 6(we)k 6(v)k 3(er)k 9(,)k
1447(Lout)s 1966(tak)s 2(es)k 2513(the)s 2868(unusual)s
3675(step)s 4120(of)s 4398(making)s 5176(an)s 5466(initial)s
6084(`@')s 6503(optional.)s 7458(The)s 7893(designers)s 8855(of)s
0 8966(Eqn)m 449(apparently)s 1519(considered)s 2620(such)s 3122(characters)s
4147(dis\207guring)s 5244(in)s 5494(\207ne-grained)s 6713(input)s 7272(lik)s 2(e)k
7691(equations,)s 8722(and)s 0 8678(this)m 401(author)s 1077(agrees.)s
1856(The)s 2289(implementation)s 3851(is)s 4066(straightforw)s 2(ard:)k
5707(`@')s 6124(is)s 6339(classed)s 7092(as)s 7347(just)s
7757(another)s 8539(letter)s 9(,)k 0 8390(and)m 407(e)s 6(v)k 3(ery)k
986(w)s 2(ord)k 1537(is)s 1750(searched)s 2647(for)s
2988(in)s 3234(the)s 3585(symbol)s 4348(table.)s 4979(If)s
5212(it)s 5407(is)s 5620(found,)s 6289(it)s 6484(is)s
6697(an)s 6983(identi\207er)s 9(,)k 7946(otherwise)s 8934(it)s
0 8102(is)m 214(a)s 384(literal.)s 1107(A)s 1341(w)s 2(arning)k
2181(message)s 3051(is)s 3265(printed)s 4004(when)s 4585(a)s
4755(literal)s 5369(be)s 3(ginning)k 6381(with)s 6867(`@')s
7284(is)s 7498(found,)s 8168(since)s 8719(it)s 8916(is)s
0 7814(probably)m 905(a)s 1071(mis-spelt)s 2006(identi\207er)s 13(.)k
3019(No)s 3365(such)s 3861(safety)s 4485(net)s 4837(is)s
5047(possible)s 5887(for)s 6225(identi\207ers)s 7231(without)s 8022(`@'.)s
480 7440(Equation)m 1418(formatting)s 2496(also)s 2951(demands)s 3871(symbols)s
4737(made)s 5328(from)s 5869(punctuation)s 7074(characters,)s 8165(such)s
8678(as)s 220 fnt6 8946 7437(+)m 240 fnt1 0 7152(and)m
220 fnt6 404 7149(<=)m 240 fnt1 652 7152(.)m 816(It)s
1021(is)s 1231(traditional)s 2267(to)s 2506(allo)s 6(w)k
3085(such)s 3581(symbols)s 4430(to)s 4669(be)s 4951(juxtaposed,)s
6095(which)s 6737(means)s 7399(that)s 7817(the)s 8165(input)s
220 fnt6 480 6702(<=++)m 240 fnt1 0 6251(for)m 354(e)s 3(xample)k
1234(must)s 1776(be)s 2075(interpreted)s 3184(within)s 3869(the)s
4234(le)s 3(xical)k 4939(analyser)s 5812(by)s 6123(searching)s
7109(the)s 7474(symbol)s 8251(table)s 8788(for)s 0 5963(its)m
306(pre\207x)s 3(es)k 1142(in)s 1416(the)s 1795(order)s
220 fnt6 2390 5960(<=++)m 240 fnt1 2894 5963(,)m 220 fnt6
3032 5960(<=+)m 240 fnt1 3408 5963(,)m 220 fnt6 3546 5960(<=)m
240 fnt1 3794 5963(.)m 3988(Although)s 4981(this)s 5408(tak)s 2(es)k
5979(quadratic)s 6952(time,)s 7514(in)s 7788(practice)s 8630(such)s
0 5675(sequences)m 1021(are)s 1368(too)s 1727(short)s 2265(to)s
2504(mak)s 2(e)k 3076(a)s 3242(more)s 3789(sophisticated)s
5095(linear)s 5698(method)s 6474(lik)s 2(e)k 6886(tries)s
7347(w)s 2(orthwhile.)k 240 fnt2 0 5026(2.3.)m 471(Basic)s
1073(structural)s 2149(operators)s 
[ /Dest /LOUTobjects /DEST pdfmark
240 fnt1 480 4549(A)m 696(programming)s
2036(language)s 2941(may)s 3393(be)s 3660(considered)s 4739(complete)s
5656(when)s 6218(it)s 6395(attains)s 7054(the)s 7388(po)s 6(wer)k
8025(of)s 8281(a)s 8432(T)s 10(uring)k 0 4261(machine,)m
917(b)s 4(ut)k 1280(no)s 1574(such)s 2071(criterion)s
2937(seems)s 3573(rele)s 6(v)k 6(ant)k 4390(to)s
4630(document)s 5635(formatting.)s 6808(Instead,)s 7606(as)s 7857(the)s
8206(language)s 0 3973(de)m 6(v)k 3(elops)k 913(and)s
1338(ne)s 6(w)k 1806(applications)s 3033(are)s 3401(attempted,)s
4471(de\207ciencies)s 5670(are)s 6038(e)s 3(xposed)k 6899(and)s
7324(the)s 7693(operator)s 8570(set)s 8916(is)s 0 3685(re)m 6(vised)k
742(to)s 981(o)s 3(v)k 3(ercome)k 1974(them.)s
480 3311(Lout)m 1025(has)s 1429(a)s 1629(repertoire)s 2646(of)s
2950(23)s 3268(primiti)s 6(v)k 3(e)k 4224(operators)s
5198(\(Figure)s 5990(1\),)s 6390(which)s 7066(has)s 7470(pro)s 3(v)k 3(en)k
8220(adequate)s 0 3023(for)m 348(a)s 525(wide)s 1056(v)s 6(ariety)k
1778(of)s 2059(features,)s 2932(including)s 3899(equations,)s 4934(tables,)s
5609(and)s 6023(page)s 6542(layout,)s 7257(and)s 7672(so)s
7948(seems)s 8594(to)s 8844(be)s 0 2735(reasonably)m 1077(complete)s
1995(in)s 2225(this)s 2607(pragmatic)s 3602(sense.)s 4270(In)s
4513(this)s 4895(section)s 5616(we)s 5937(introduce)s 6883(the)s
7217(eight)s 7741(concatenation)s 0 2447(and)m 424(mark-hiding)s 1680(operators.)s
2754(T)s 19(o)k 3075(them)s 3634(f)s 2(alls)k
4114(the)s 4482(basic)s 5047(task)s 5514(of)s 5806(assembling)s
6956(comple)s 3(x)k 7853(objects)s 8602(from)s 0 2159(simple)m
693(ones,)s 1239(and)s 1643(the)s 3(y)k 2106(were)s
2626(the)s 2974(\207rst)s 3405(to)s 3644(be)s 3926(designed)s
4835(and)s 5239(implemented.)s 480 1785(Man)m 3(y)k 1094(of)s
1370(the)s 1723(operators)s 2668(of)s 2944(Eqn)s 3392(can)s
3786(be)s 4073(vie)s 6(wed)k 4821(as)s 5076(b)s 4(uilding)k
5928(small)s 6505(tables.)s 7231(A)s 7466(b)s 4(uilt-up)k
8277(fraction,)s 0 1497(for)m 367(e)s 3(xample,)k 1310(has)s
1710(one)s 2141(column)s 2945(and)s 3379(three)s 3941(ro)s 6(ws)k
4480(\(numerator)s 9(,)k 5669(line,)s 6163(and)s 6596(denominator\).)s
8078(Numerous)s 0 1209(in)m 9(v)k 3(estig)k 1(ations)k
1377(of)s 1660(this)s 2068(kind)s 2564(con)s 9(vinced)k
3609(the)s 3969(author)s 4652(that)s 5082(operators)s 6034(capable)s
6832(of)s 7115(assembling)s 8256(the)s 8616(ro)s 6(ws)k
0 921(and)m 404(columns)s 1266(of)s 1537(tables)s 2145(w)s 2(ould)k
2800(suf\207ce)s 3493(for)s 3831(b)s 4(uilding)k 4678(all)s
4971(kinds)s 5541(of)s 5812(objects.)s 480 547(The)m 906(simplest)s
1759(objects)s 2485(are)s 2829(empty)s 3479(objects)s 4204(and)s
4605(literal)s 5213(w)s 2(ords)k 5844(lik)s 2(e)k
220 fnt6 6254 544(metempsychosis)m 240 fnt1 7882 547(,)m 7986(which)s
8625(ha)s 4(v)k 3(e)k 
grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 5 6
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Times-Italic
%%+ font Helvetica
%%+ font Times-Bold
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
%%IncludeResource: font Times-Bold
/Times-Boldfnt2 vec2 /Times-Bold LoutRecode
/fnt2 { /Times-Boldfnt2 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5769 -1582(-)m 5897(5)s 6063(-)s 9066 13413 0 13413 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore
240 fnt4 266 13217(object)m
220 fnt6 974 13212(/)m 240 fnt4 1038 13217(gap)m 1511(object)s
240 fnt1 3816 13215(V)m 26(ertical)k 4613(concatenation)s 5998(with)s
6480(mark)s 7032(alignment)s 240 fnt4 266 12929(object)m 220 fnt6
974 12924(//)m 240 fnt4 1099 12929(gap)m 1572(object)s 240 fnt1
3816 12927(V)m 26(ertical)k 4613(concatenation)s 5998(with)s 6480(left)s
6857(justi\207cation)s 240 fnt4 266 12641(object)m 220 fnt6 974 12636(|)m
240 fnt4 1011 12641(gap)m 1484(object)s 240 fnt1 3816 12639(Horizontal)m
4893(concatenation)s 6278(with)s 6760(mark)s 7312(alignment)s 240 fnt4
266 12353(object)m 220 fnt6 974 12348(||)m 240 fnt4 1068 12353(gap)m
1541(object)s 240 fnt1 3816 12351(Horizontal)m 4893(concatenation)s 6278(with)s
6760(top-justi\207cation)s 240 fnt4 266 12065(object)m 220 fnt6 974 12060(&)m
240 fnt4 1116 12065(gap)m 1589(object)s 240 fnt1 3816 12063(Horizontal)m
4893(concatenation)s 6278(within)s 6946(paragraphs)s 220 fnt6 266 11772(@OneCol)m
240 fnt4 1338 11777(object)m 240 fnt1 3816 11775(Hide)m 4337(all)s
4630(b)s 4(ut)k 4992(one)s 5394(column)s 6169(mark)s
6721(of)s 240 fnt4 6992 11777(object)m 220 fnt6 266 11484(@OneRo)m 3(w)k
240 fnt4 1457 11489(object)m 240 fnt1 3816 11487(Hide)m 4337(all)s
4630(b)s 4(ut)k 4992(one)s 5394(ro)s 6(w)k
5814(mark)s 6366(of)s 240 fnt4 6637 11489(object)m 266 11201(font)m
220 fnt6 762 11196(@F)m 6(ont)k 240 fnt4 1534 11201(object)m
240 fnt1 3816 11199(Render)m 240 fnt4 4567 11201(object)m 240 fnt1
5215 11199(in)m 5458(nominated)s 6526(font)s 240 fnt4 266 10913(br)m 8(eakstyle)k
220 fnt6 1353 10908(@Break)m 240 fnt4 2269 10913(object)m 240 fnt1
3816 10911(Break)m 4448(paragraphs)s 5548(of)s 240 fnt4 5819 10913(object)m
240 fnt1 6467 10911(in)m 6710(nominated)s 7778(style)s 240 fnt4
266 10625(spacestyle)m 220 fnt6 1361 10620(@Space)m 240 fnt4 2318 10625(object)m
240 fnt1 3816 10623(Render)m 4567(spaces)s 5242(between)s 6096(w)s 2(ords)k
6730(in)s 6973(nominated)s 8041(style)s 240 fnt4 266 10337(length)m
220 fnt6 979 10332(@Wide)m 240 fnt4 1813 10337(object)m 240 fnt1
3816 10335(Render)m 240 fnt4 4567 10337(object)m 240 fnt1 5215 10335(to)m
5454(width)s 240 fnt4 6056 10337(length)m 266 10049(length)m 220 fnt6
979 10044(@High)m 240 fnt4 1758 10049(object)m 240 fnt1 3816 10047(Render)m
240 fnt4 4567 10049(object)m 240 fnt1 5215 10047(to)m 5454(height)s
240 fnt4 6112 10049(length)m 220 fnt6 266 9756(@HExpand)m 240 fnt4
1499 9761(object)m 240 fnt1 3816 9759(Expand)m 4606(horizontal)s 5630(g)s 1(aps)k
6119(to)s 6358(\207ll)s 6678(a)s 4(v)k 6(ailable)k
7586(space)s 220 fnt6 266 9468(@VExpand)m 240 fnt4 1487 9473(object)m
240 fnt1 3816 9471(Expand)m 4606(v)s 3(ertical)k 5373(g)s 1(aps)k
5862(to)s 6101(\207ll)s 6421(a)s 4(v)k 6(ailable)k
7329(space)s 220 fnt6 266 9180(@HScale)m 240 fnt4 1307 9185(object)m
240 fnt1 3816 9183(Horizontal)m 4893(geometrical)s 6075(scaling)s 6805(to)s
7044(\207ll)s 7364(a)s 4(v)k 6(ailable)k 8272(space)s
220 fnt6 266 8892(@VScale)m 240 fnt4 1295 8897(object)m 240 fnt1
3816 8895(V)m 26(ertical)k 4613(geometrical)s 5795(scaling)s 6525(to)s
6764(\207ll)s 7084(a)s 4(v)k 6(ailable)k 7992(space)s
240 fnt4 266 8609(angle)m 220 fnt6 911 8604(@Rotate)m 240 fnt4
1892 8609(object)m 240 fnt1 3816 8607(Rotate)m 240 fnt4 4496 8609(object)m
240 fnt1 5144 8607(by)m 240 fnt4 5438 8609(angle)m 266 8321(P)m 19(ostScript)k
220 fnt6 1367 8316(@Gr)m 2(aphic)k 240 fnt4 2471 8321(object)m
240 fnt1 3816 8319(Escape)m 4549(to)s 4788(graphics)s 5649(language)s
220 fnt6 266 8028(@Ne)m 6(xt)k 240 fnt4 1050 8033(object)m
240 fnt1 3816 8031(Add)m 4287(1)s 4442(to)s 4681(an)s
4964(object)s 5608(denoting)s 6499(a)s 6665(number)s 240 fnt4
266 7745(object)m 220 fnt6 974 7740(@Case)m 240 fnt4 1821 7745(alternatives)m
240 fnt1 3816 7743(Select)m 4459(from)s 4983(a)s 5149(set)s
5474(of)s 5745(alternati)s 6(v)k 3(e)k 6799(objects)s
240 fnt4 266 7457(identi\207er)m 220 fnt6 1254 7452(&&)m 240 fnt4
1662 7457(object)m 240 fnt1 3816 7455(Cross)m 4412(reference)s 240 fnt4
266 7169(cr)m 10(oss-r)k 8(efer)k 8(ence)k 220 fnt6
1839 7164(@Open)m 240 fnt4 2705 7169(object)m 240 fnt1 3816 7167(Retrie)m 6(v)k 3(e)k
4672(v)s 6(alue)k 5240(from)s 5764(cross)s 6306(reference)s
240 fnt4 266 6881(cr)m 10(oss-r)k 8(efer)k 8(ence)k
220 fnt6 1839 6876(@T)m 26(agged)k 240 fnt4 2888 6881(object)m
240 fnt1 3816 6879(Attach)m 4510(cross)s 5052(referencing)s 6192(tag)s
6537(to)s 6776(object)s 
[ /Dest /LOUTprimitives /DEST pdfmark
200 fnt2 1346 6226(Figur)m 3(e)k
1954(1.)s 200 fnt1 2196 6227(The)m 2552(23)s 2789(primiti)s 5(v)k 3(e)k
3556(operators)s 4338(of)s 4564(Lout,)s 5030(in)s 5232(order)s
5702(of)s 5928(increasing)s 6789(precedence.)s 240 fnt1 0 5596(one)m
402(column)s 1177(mark)s 1729(and)s 2133(one)s 2535(ro)s 6(w)k
2955(mark:)s 1572 215 0 106 240 288 60 480 5090 LoutGr2
grestore save gsave 200 dict begin lfigdict begin
grestore
1572 215 0 106 240 288 60 0 0 LoutGr2
/lfiglightgrey [ lfigbox ] gsave lfigpaintpath grestore
0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
1572 215 0 106 240 288 60 0 0 LoutGr2

0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigdashed [ -0.3 cm ymark xsize ymark 0.3 cm 0 lfigpadd
[]
xmark -0.3 cm xmark ysize 0 0.3 cm lfigpadd ] lfigdopath
pop pop
grestore
0 52(metempsychosis)m 
grestore

grestore
end end restore
grestore
0 4639(T)m 19(o)k 337(place)s
934(tw)s 2(o)k 1381(arbitrary)s 2294(objects)s 3059(side)s
3537(by)s 3868(side,)s 4398(we)s 4770(use)s 5182(the)s
5567(in\207x)s 6099(operator)s 220 fnt6 6992 4636(|)m 240 fnt1
7029 4639(,)m 7173(denoting)s 8102(horizontal)s 0 4351(concatenation.)m 1492(F)s 3(or)k
1881(e)s 3(xample,)k 220 fnt6 480 3850(USA  |0.2i  A)m 6(ustr)k 2(alia)k
240 fnt1 0 3395(produces)m 915(the)s 1263(object)s 476 166 0 57 240 288 60 480 2889 LoutGr2
grestore save gsave 200 dict begin lfigdict begin
grestore
476 165 0 57 240 288 60 0 0 LoutGr2
/lfiglightgrey [ lfigbox ] gsave lfigpaintpath grestore
0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
476 165 0 57 240 288 60 0 0 LoutGr2

0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigdashed [ -0.3 cm ymark xsize ymark 0.3 cm 0 lfigpadd
[]
xmark -0.3 cm xmark ysize 0 0.3 cm lfigpadd ] lfigdopath
pop pop
grestore
0 3(USA)m

grestore

grestore
end end restore
grestore
875 166 0 57 240 288 60 1244 2889 LoutGr2
grestore save gsave 200 dict begin lfigdict begin
grestore
875 165 0 56 240 288 60 0 1 LoutGr2
/lfiglightgrey [ lfigbox ] gsave lfigpaintpath grestore
0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
875 165 0 56 240 288 60 0 0 LoutGr2

0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigdashed [ -0.3 cm ymark xsize ymark 0.3 cm 0 lfigpadd
[]
xmark -0.3 cm xmark ysize 0 0.3 cm lfigpadd ] lfigdopath
pop pop
grestore
0 2(Australia)m 
grestore

grestore
end end restore
grestore
0 2438(The)m 443(ro)s 6(w)k 879(marks)s
1529(are)s 1892(mer)s 4(ged)k 2678(into)s 3119(one,)s
3587(\207xing)s 4215(the)s 4579(v)s 3(ertical)k 5361(position)s
6205(of)s 6491(the)s 6855(objects)s 7598(relati)s 6(v)k 3(e)k
8376(to)s 8631(each)s 0 2150(other;)m 611(their)s 1116(horizontal)s
2148(separation)s 3196(is)s 3414(determined)s 4555(by)s 4857(the)s
240 fnt4 5214 2152(gap)m 240 fnt1 5635 2150(attached)m 6497(to)s
6744(the)s 7101(operator)s 9(,)k 8003(in)s 8254(this)s
8659(case)s 0 1862(0.2)m 361(inches.)s 1143(W)s 19(e)k
1519(think)s 2080(of)s 2358(the)s 2713(g)s 1(ap)k
3118(as)s 3376(part)s 3814(of)s 4092(the)s 4448(operator)s 9(,)k
5349(although)s 6251(strictly)s 6974(it)s 7174(is)s 7391(a)s
7564(third)s 8081(parameter)s 13(.)k 0 1574(It)m 205(may)s
671(be)s 953(omitted,)s 1790(def)s 2(aulting)k 2810(to)s
220 fnt6 3049 1571(0i)m 240 fnt1 3205 1574(.)m 240 fnt4
480 1202(V)m 26(ertical)k 1294(concatenation)s 240 fnt1 2644 1200(,)m
2762(denoted)s 3590(by)s 3895(the)s 4254(in\207x)s 4760(operator)s
220 fnt6 5627 1197(/)m 240 fnt1 5691 1200(,)m 5809(is)s
6031(the)s 6390(same)s 6948(apart)s 7497(from)s 8032(the)s
8392(change)s 0 912(of)m 271(direction:)s 220 fnt6 480 461(A)m 6(ustr)k 2(alia  /0.1i  USA)k

grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 6 7
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Helvetica
%%+ font Times-Italic
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5765 -1581(-)m 5893(6)s 6066(-)s 9066 13414 0 13305 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore
0 13251(produces)m 915(the)s
1263(object)s 875 165 0 56 240 288 60 480 12746 LoutGr2
grestore save gsave 200 dict begin lfigdict begin
grestore
875 165 0 56 240 288 60 0 0 LoutGr2
/lfiglightgrey [ lfigbox ] gsave lfigpaintpath grestore
0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
875 165 0 56 240 288 60 0 0 LoutGr2

0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigdashed [ -0.3 cm ymark xsize ymark 0.3 cm 0 lfigpadd
[]
xmark -0.3 cm xmark ysize 0 0.3 cm lfigpadd ] lfigdopath
pop pop
grestore
0 2(Australia)m 
grestore

grestore
end end restore
grestore
875 165 0 57 240 288 60 480 12437 LoutGr2
grestore save gsave 200 dict begin lfigdict begin
grestore
476 165 0 57 240 288 60 0 0 LoutGr2
/lfiglightgrey [ lfigbox ] gsave lfigpaintpath grestore
0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
476 165 0 57 240 288 60 0 0 LoutGr2

0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigdashed [ -0.3 cm ymark xsize ymark 0.3 cm 0 lfigpadd
[]
xmark -0.3 cm xmark ysize 0 0.3 cm lfigpadd ] lfigdopath
pop pop
grestore
0 3(USA)m 
grestore

grestore
end end restore
grestore
0 11986(with)m 482(column)s
1257(marks)s 1892(mer)s 4(ged)k 2663(and)s 3067(a)s
3233(0.1)s 3568(inch)s 4037(g)s 1(ap.)k 480 11612(Consider)m
1404(no)s 6(w)k 1865(what)s 2390(happens)s 3226(when)s
3802(horizontal)s 4826(and)s 5230(v)s 3(ertical)k 5997(are)s
6344(combined:)s 220 fnt6 1000 11111({)m 1186(USA)s 2442(|0.2i)s
2958(A)s 6(ustr)k 2(alia)k 3919(})s 480 10823(/0.1i)m
1000({)s 1186(W)s 8(ashington)k 2442(|)s 2958(Canberr)s 2(a)k
3987(})s 240 fnt1 0 10324(The)m 445(tw)s 2(o)k
872(parameters)s 1987(of)s 220 fnt6 2275 10321(/)m 240 fnt1
2416 10324(no)m 6(w)k 2895(ha)s 4(v)k 3(e)k
3413(tw)s 2(o)k 3840(column)s 4632(marks)s 5284(each,)s
5846(and)s 6268(the)s 3(y)k 6748(will)s 7191(be)s
7490(mer)s 4(ged)k 8278(with)s 8778(the)s 0 10036(corresponding)m
1422(marks)s 2057(in)s 2300(the)s 2648(other)s 3199(parameter)s 9(,)k
4251(yielding)s 5088(the)s 5436(object)s 476 166 0 57 240 288 60 480 9530 LoutGr2
grestore save gsave 200 dict begin lfigdict begin
grestore
476 165 0 57 240 288 60 0 0 LoutGr2
/lfiglightgrey [ lfigbox ] gsave lfigpaintpath grestore
0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
476 165 0 57 240 288 60 0 0 LoutGr2

0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigdashed [ -0.3 cm ymark xsize ymark 0.3 cm 0 lfigpadd
[]
xmark -0.3 cm xmark ysize 0 0.3 cm lfigpadd ] lfigdopath
pop pop
grestore
0 3(USA)m 
grestore

grestore
end end restore
grestore
659 166 0 57 240 288 60 956 9530 LoutGr2
0 ymark moveto xsize 10 pt add ymark lineto [ 3 pt ] 0 setdash stroke
grestore

grestore
876 166 0 57 240 288 60 1903 9530 LoutGr2
grestore save gsave 200 dict begin lfigdict begin
grestore
875 165 0 56 240 288 60 0 1 LoutGr2
/lfiglightgrey [ lfigbox ] gsave lfigpaintpath grestore
0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
875 165 0 56 240 288 60 0 0 LoutGr2

0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigdashed [ -0.3 cm ymark xsize ymark 0.3 cm 0 lfigpadd
[]
xmark -0.3 cm xmark ysize 0 0.3 cm lfigpadd ] lfigdopath
pop pop
grestore
0 2(Australia)m

grestore

grestore
end end restore
grestore
1135 215 0 106 240 288 60 480 9171 LoutGr2
grestore save gsave 200 dict begin lfigdict begin
grestore
1135 215 0 106 240 288 60 0 0 LoutGr2
/lfiglightgrey [ lfigbox ] gsave lfigpaintpath grestore
0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
1135 215 0 106 240 288 60 0 0 LoutGr2

0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigdashed [ -0.3 cm ymark xsize ymark 0.3 cm 0 lfigpadd
[]
xmark -0.3 cm xmark ysize 0 0.3 cm lfigpadd ] lfigdopath
pop pop
grestore
0 52(W)m 19(ashington)k 
grestore

grestore
end end restore
grestore
876 215 0 106 240 288 60 1903 9171 LoutGr2
grestore save gsave 200 dict begin lfigdict begin
grestore
876 166 0 57 240 288 60 0 49 LoutGr2
/lfiglightgrey [ lfigbox ] gsave lfigpaintpath grestore
0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
876 166 0 57 240 288 60 0 0 LoutGr2

0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigdashed [ -0.3 cm ymark xsize ymark 0.3 cm 0 lfigpadd
[]
xmark -0.3 cm xmark ysize 0 0.3 cm lfigpadd ] lfigdopath
pop pop
grestore
0 3(Canberra)m 
grestore

grestore
end end restore
grestore
0 8720(The)m 220 fnt6
425 8717(0.2i)m 240 fnt1 821 8720(g)m 1(ap)k 1216(separates)s
2139(columns,)s 3054(not)s 3416(indi)s 6(vidual)k 4432(items)s
4997(in)s 5237(columns,)s 6152(so)s 6414(a)s 6577(g)s 1(ap)k
6972(attached)s 7823(to)s 8059(the)s 8403(second)s 220 fnt6
0 8429(|)m 240 fnt1 96 8432(w)m 2(ould)k 749(serv)s 3(e)k
1304(no)s 1595(purpose;)s 2464(an)s 3(y)k 2859(such)s
3353(g)s 1(ap)k 3749(is)s 3957(ignored.)s 4851(If)s
5079(the)s 5425(number)s 6214(of)s 6484(marks)s 7117(to)s
7354(be)s 7634(mer)s 4(ged)k 8403(dif)s 6(fers,)k
0 8144(empty)m 638(columns)s 1485(are)s 1818(added)s 2433(at)s
2651(the)s 2984(right)s 3481(to)s 3705(equalize)s 4542(the)s
4876(number)s 13(.)k 5743(The)s 6157(four)s 6600(marks)s
7221(protruding)s 8269(from)s 8778(the)s 0 7856(result)m 601(are)s
959(all)s 1263(a)s 4(v)k 6(ailable)k 2182(for)s
2531(mer)s 4(ging)k 3389(with)s 3882(neighbouring)s 5223(marks)s
5869(by)s 6174(other)s 6736(concatenation)s 8133(operators.)s 0 7568(The)m
428(precedence)s 1559(of)s 220 fnt6 1830 7565(|)m 240 fnt1
1927 7568(is)m 2137(higher)s 2808(than)s 3277(the)s 3625(precedence)s
4756(of)s 220 fnt6 5027 7565(/)m 240 fnt1 5091 7568(,)m
5198(so)s 5464(the)s 5812(braces)s 6473(could)s 7063(be)s
7345(omitted.)s 480 7194(When)m 1131(lines)s 1656(of)s 1950(te)s 3(xt)k
2387(are)s 2757(concatenated,)s 4135(it)s 4349(is)s 4582(con)s 9(v)k 3(entional)k
5884(to)s 6145(measure)s 7020(their)s 7540(separation)s 8602(from)s
0 6906(baseline)m 832(to)s 1063(baseline)s 1894(\(mark)s 2517(to)s
2748(mark)s 3292(in)s 3527(Lout\),)s 4157(rather)s 4765(than)s
5226(from)s 5742(edge)s 6242(to)s 6473(edge)s 6973(as)s
7215(abo)s 3(v)k 3(e.)k 7937(This)s 8405(idea)s
8855(of)s 0 6618(dif)m 6(ferent)k 863(reference)s 1794(points)s
2417(for)s 2743(measurement)s 4065(e)s 6(v)k 4(olv)k 3(ed)k
4855(o)s 3(v)k 3(er)k 5322(the)s 5658(years)s
6200(into)s 6613(a)s 6767(system)s 7478(of)s 7737(six)s
240 fnt4 8059 6620(gap)m 8459(modes)s 240 fnt1 0 6330(\(Figure)m
769(2\),)s 1085(e)s 3(xpressed)k 2094(by)s 2398(appending)s
3460(a)s 3636(letter)s 4195(to)s 4445(the)s 4803(length.)s
5576(F)s 3(or)k 5975(e)s 3(xample,)k 220 fnt6
6899 6327(|0.2i)m 240 fnt1 7366 6330(is)m 7586(an)s 7880(abbre)s 6(viation)k
0 6042(for)m 220 fnt6 377 6039(|0.2ie)m 240 fnt1 901 6042(,)m
1047(meaning)s 1963(0.2)s 2356(inches)s 3057(measured)s 4070(from)s
4633(edge)s 5180(to)s 5458(edge;)s 220 fnt6 6061 6039(|0.3ix)m
240 fnt1 6678 6042(produces)m 7632(a)s 7837(0.3)s 8220(inch)s
8728(g)s 1(ap)k 0 5754(measured)m 972(from)s 1493(mark)s
2043(to)s 2279(mark)s 2829(and)s 3230(widened)s 4097(if)s
4311(necessary)s 5292(to)s 5528(pre)s 6(v)k 3(ent)k
6294(o)s 3(v)k 3(erstriking;)k 7552(and)s 220 fnt6
7954 5751(|2.5it)m 240 fnt1 8478 5754(places)m 0 5466(its)m 273(right)s
781(parameter)s 1792(2.5)s 2135(inches)s 2794(from)s 3314(the)s
3659(current)s 4392(left)s 4766(mar)s 4(gin,)k 5543(irrespecti)s 6(v)k 3(e)k
6699(of)s 6967(the)s 7312(position)s 8137(of)s 8405(the)s
8749(left)s 0 5178(parameter)m 13(.)k 1098(There)s 1704(is)s
1907(also)s 2338(a)s 2496(choice)s 3169(of)s 3433(ele)s 6(v)k 3(en)k
4098(units)s 4606(of)s 4870(measurement)s 6197(\(inches,)s 6987(centimetres,)s
8186(multiples)s 0 4890(of)m 288(the)s 654(current)s 1407(font)s
1870(size,)s 2365(etc.\),)s 2907(the)s 3272(most)s 3815(interesting)s
4894(being)s 5496(the)s 220 fnt6 5862 4887(r)m 240 fnt1
6012 4890(unit:)m 6568(one)s 220 fnt6 6987 4887(r)m 240 fnt1
7138 4890(is)m 7365(the)s 7731(column)s 8524(width)s 0 4602(minus)m
635(the)s 982(width)s 1583(of)s 1852(the)s 2199(follo)s 6(wing)k
3175(object,)s 3864(so)s 4129(that)s 220 fnt6 4546 4599(|1r)m -8(t)k
240 fnt1 4921 4602(produces)m 5835(suf\207cient)s 6783(space)s 7368(to)s
7606(right)s 8116(justify)s 8778(the)s 0 4314(follo)m 6(wing)k
987(object,)s 1688(and)s 220 fnt6 2103 4311(|0.5r)m -8(t)k
240 fnt1 2673 4314(to)m 2923(center)s 3576(it.)s 3883(These)s
4520(features)s 5337(implement)s 6429(spacings)s 7315(needed)s 8061(in)s
8315(practice)s 0 4026(rather)m 608(than)s 1069(suggested)s 2063(by)s
2349(theory)s 15(.)k 3101(The)s 3(y)k 3636(w)s 2(ork)k
4179(with)s 4653(all)s 4938(\207v)s 3(e)k 5342(concatenation)s
6719(operators,)s 7707(horizontal)s 8722(and)s 0 3738(v)m 3(ertical.)k
480 3364(When)m 1113(we)s 1452(construct)s 2392(a)s 2562(b)s 4(uilt-up)k
3372(fraction,)s 4225(the)s 4577(result)s 5171(has)s 5545(three)s
6082(ro)s 6(w)k 6506(marks,)s 7201(b)s 4(ut)k
7567(only)s 8051(the)s 8403(second)s 0 3076(should)m 697(be)s
979(visible)s 1672(outside)s 2419(the)s 2767(object:)s gsave
480 2245 translate
240 fnt4 156 491 0 288 240 288 12 LoutGraphic
gsave
grestore save gsave 200 dict begin lfigdict begin
grestore
156 491 0 288 240 288 12 0 0 LoutGr2
/lfiglightgrey [ lfigbox ] gsave lfigpaintpath grestore
0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
156 491 0 288 240 288 12 0 0 LoutGr2

0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigdashed [ -0.3 cm ymark xsize ymark 0.3 cm 0 lfigpadd
[]
xmark -0.3 cm xmark ysize 0 0.3 cm lfigpadd ] lfigdopath
pop pop
grestore
0 336(X)m
156 0 0 0 240 288 12 0 288 LoutGr2
0 0 moveto xsize 0 lineto 0.05 ft setlinewidth stroke
grestore

grestore
2 68(Y)m 
grestore

grestore
end end restore
grestore
0 1794(This)m 493(is)s 721(a)s 905(common)s
1817(problem,)s 2739(and)s 3161(accordingly)s 4361(a)s 220 fnt6
4545 1791(@OneRo)m 3(w)k 240 fnt1 5694 1794(operator)m 6567(w)s 2(as)k
7006(introduced)s 8105(for)s 8461(hiding)s 0 1506(all)m 291(b)s 4(ut)k
650(one)s 1050(of)s 1318(the)s 1663(ro)s 6(w)k
2081(marks)s 2713(of)s 2981(its)s 3255(parameter)s 13(.)k
4357(Normally)s 15(,)k 5363(the)s 5708(\207rst)s 6136(mark)s
6686(is)s 6893(the)s 7238(survi)s 6(v)k 4(or)k 9(,)k
8121(b)s 4(ut)k 8480(a)s 8643(later)s 0 1218(mark)m
552(can)s 941(be)s 1223(chosen)s 1945(by)s 2239(pre\207xing)s
220 fnt6 3156 1215(^)m 240 fnt1 3322 1218(to)m 3561(the)s
3909(preceding)s 4905(concatenation)s 6290(operator:)s 220 fnt6 480 717(@OneRo)m 3(w { X  ^/2p  @HLine  /2p  )k 19(Y })k

grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 7 8
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Helvetica
%%+ font Times-Italic
%%+ font Symbol
%%+ font Times-Bold
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
%%IncludeResource: font Symbol
/fnt5 { /Symbol LoutFont } def
%%IncludeResource: font Times-Bold
/Times-Boldfnt2 vec2 /Times-Bold LoutRecode
/fnt2 { /Times-Boldfnt2 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5768 -1575(-)m 5896(7)s 6064(-)s 9066 13422 0 13422 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore
6693 8221 0 8221 240 288 60 1186 5201 LoutGr2
grestore save gsave 200 dict begin lfigdict begin
grestore
0 7447(Edge-to-edge)m 220 fnt6
1786 7444(|)m 240 fnt4 1843 7449(length)m 220 fnt6 2456 7444(e)m
240 fnt1 0 6238(Hyphenation)m 220 fnt6 1786 6235(|)m 240 fnt4
1843 6240(length)m 220 fnt6 2456 6235(h)m 240 fnt1 0 5029(Ov)m 3(erstrik)k 2(e)k
220 fnt6 1786 5026(|)m 240 fnt4 1843 5031(length)m 220 fnt6
2456 5026(o)m 240 fnt1 0 3820(Mark-to-mark)m 220 fnt6 1786 3817(|)m
240 fnt4 1843 3822(length)m 220 fnt6 2456 3817(x)m 240 fnt1
0 2611(K)m 6(erning)k 220 fnt6 1786 2608(|)m 240 fnt4
1843 2613(length)m 220 fnt6 2456 2608(k)m 240 fnt1 0 1402(T)m 19(ab)k 4(ulation)k
220 fnt6 1786 1399(|)m 240 fnt4 1843 1404(length)m 220 fnt6
2456 1399(t)m gsave
3291 0 translate
240 fnt1 3402 8221 0 8221 240 288 60 LoutGraphic
gsave

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
gsave
567 7485 translate
180 fnt1 680 340 0 340 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto
xsize ysize lineto 0 ysize lineto closepath
gsave 0.9 setgray fill grestore stroke
grestore

grestore
gsave
680 7371 translate
180 fnt1 2722 567 0 567 180 288 45 LoutGraphic
gsave
0 0 moveto 0 ysize lineto [ 3 pt ] 0 setdash stroke
grestore

grestore
gsave
2268 7485 translate
180 fnt1 680 340 0 340 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto
xsize ysize lineto 0 ysize lineto closepath
gsave 0.9 setgray fill grestore stroke
grestore

grestore
gsave
2551 7371 translate
180 fnt1 851 567 0 567 180 288 45 LoutGraphic
gsave
0 0 moveto 0 ysize lineto [ 3 pt ] 0 setdash stroke
grestore

grestore
gsave
2267 7395 translate
180.0000 rotate
gsave
0 0 translate
30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
gsave
0 0 translate
180 fnt1 1020 0 0 0 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore
gsave
0 0 translate
-30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore

grestore
gsave
1247 7395 translate
30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
gsave
1247 7395 translate
180 fnt1 1020 0 0 0 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore
gsave
1247 7395 translate
-30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
180 fnt4 1534 7192(length)m gsave
567 6304 translate
180 fnt1 680 340 0 340 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto
xsize ysize lineto 0 ysize lineto closepath
gsave 0.9 setgray fill grestore stroke
grestore

grestore
gsave
680 6190 translate
180 fnt1 2722 567 0 567 180 288 45 LoutGraphic
gsave
0 0 moveto 0 ysize lineto [ 3 pt ] 0 setdash stroke
grestore

grestore
gsave
2268 6304 translate
180 fnt1 680 340 0 340 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto
xsize ysize lineto 0 ysize lineto closepath
gsave 0.9 setgray fill grestore stroke
grestore

grestore
gsave
2551 6190 translate
180 fnt1 851 567 0 567 180 288 45 LoutGraphic
gsave
0 0 moveto 0 ysize lineto [ 3 pt ] 0 setdash stroke
grestore

grestore
gsave
2267 6214 translate
180.0000 rotate
gsave
0 0 translate
30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
gsave
0 0 translate
180 fnt1 1020 0 0 0 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore
gsave
0 0 translate
-30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore

grestore
gsave
1247 6214 translate
30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
gsave
1247 6214 translate
180 fnt1 1020 0 0 0 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore
gsave
1247 6214 translate
-30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
1534 6011(length)m gsave
567 5123 translate
180 fnt1 680 340 0 340 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto
xsize ysize lineto 0 ysize lineto closepath
gsave 0.9 setgray fill grestore stroke
grestore

grestore
gsave
680 5009 translate
180 fnt1 2722 567 0 567 180 288 45 LoutGraphic
gsave
0 0 moveto 0 ysize lineto [ 3 pt ] 0 setdash stroke
grestore

grestore
gsave
2268 5123 translate
180 fnt1 680 340 0 340 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto
xsize ysize lineto 0 ysize lineto closepath
gsave 0.9 setgray fill grestore stroke
grestore

grestore
gsave
2551 5009 translate
180 fnt1 851 567 0 567 180 288 45 LoutGraphic
gsave
0 0 moveto 0 ysize lineto [ 3 pt ] 0 setdash stroke
grestore

grestore
gsave
2551 4976 translate
180.0000 rotate
gsave
0 0 translate
30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
gsave
0 0 translate
180 fnt1 1871 0 0 0 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore
gsave
0 0 translate
-30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore

grestore
gsave
680 4976 translate
30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
gsave
680 4976 translate
180 fnt1 1871 0 0 0 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore
gsave
680 4976 translate
-30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
1392 4774(length)m
gsave
567 3886 translate
180 fnt1 680 340 0 340 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto
xsize ysize lineto 0 ysize lineto closepath
gsave 0.9 setgray fill grestore stroke
grestore

grestore
gsave
680 3772 translate
180 fnt1 2722 567 0 567 180 288 45 LoutGraphic
gsave
0 0 moveto 0 ysize lineto [ 3 pt ] 0 setdash stroke
grestore

grestore
gsave
2268 3886 translate
180 fnt1 680 340 0 340 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto
xsize ysize lineto 0 ysize lineto closepath
gsave 0.9 setgray fill grestore stroke
grestore

grestore
gsave
2551 3772 translate
180 fnt1 851 567 0 567 180 288 45 LoutGraphic
gsave
0 0 moveto 0 ysize lineto [ 3 pt ] 0 setdash stroke
grestore

grestore
gsave
2551 3739 translate
180.0000 rotate
gsave
0 0 translate
30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
gsave
0 0 translate
180 fnt1 1871 0 0 0 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore
gsave
0 0 translate
-30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore

grestore
gsave
680 3739 translate
30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
gsave
680 3739 translate
180 fnt1 1871 0 0 0 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore
gsave
680 3739 translate
-30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
180 fnt1 941 3536(max)m 180 fnt5 1256 3531(\()m 180 fnt4
1319 3537(length)m 180 fnt5 1774 3531(,)m 180 fnt4 1854 3537(a)m
180 fnt5 1994 3531(+)m 180 fnt4 2145 3537(b)m 180 fnt5
2240 3531(\))m gsave
1247 4363 translate
180.0000 rotate
gsave
0 0 translate
30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
gsave
0 0 translate
180 fnt1 567 0 0 0 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore
gsave
0 0 translate
-30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore

grestore
gsave
680 4363 translate
30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
gsave
680 4363 translate
180 fnt1 567 0 0 0 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore
gsave
680 4363 translate
-30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
180 fnt4 920 4431(a)m gsave
2551 4363 translate
180.0000 rotate
gsave
0 0 translate
30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
gsave
0 0 translate
180 fnt1 283 0 0 0 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore
gsave
0 0 translate
-30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore

grestore
gsave
2268 4363 translate
30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
gsave
2268 4363 translate
180 fnt1 283 0 0 0 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore
gsave
2268 4363 translate
-30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
2366 4387(b)m gsave
567 2590 translate
180 fnt1 680 340 0 340 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto
xsize ysize lineto 0 ysize lineto closepath
gsave 0.9 setgray fill grestore stroke
grestore

grestore
gsave
680 2476 translate
180 fnt1 2722 567 0 567 180 288 45 LoutGraphic
gsave
0 0 moveto 0 ysize lineto [ 3 pt ] 0 setdash stroke
grestore

grestore
gsave
2268 2590 translate
180 fnt1 680 340 0 340 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto
xsize ysize lineto 0 ysize lineto closepath
gsave 0.9 setgray fill grestore stroke
grestore

grestore
gsave
2551 2476 translate
180 fnt1 851 567 0 567 180 288 45 LoutGraphic
gsave
0 0 moveto 0 ysize lineto [ 3 pt ] 0 setdash stroke
grestore

grestore
gsave
2551 2443 translate
180.0000 rotate
gsave
0 0 translate
30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
gsave
0 0 translate
180 fnt1 1871 0 0 0 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore
gsave
0 0 translate
-30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore

grestore
gsave
680 2443 translate
30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
gsave
680 2443 translate
180 fnt1 1871 0 0 0 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore
gsave
680 2443 translate
-30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
180 fnt1
999 2240(max)m 180 fnt5 1314 2235(\()m 180 fnt4 1377 2241(length)m
180 fnt5 1832 2235(,)m 180 fnt4 1912 2241(a)m 180 fnt5
2007 2235(,)m 180 fnt4 2087 2241(b)m 180 fnt5 2182 2235(\))m
gsave
1247 3067 translate
180.0000 rotate
gsave
0 0 translate
30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
gsave
0 0 translate
180 fnt1 567 0 0 0 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore
gsave
0 0 translate
-30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore

grestore
gsave
680 3067 translate
30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
gsave
680 3067 translate
180 fnt1 567 0 0 0 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore
gsave
680 3067 translate
-30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
180 fnt4 920 3135(a)m gsave
2551 3067 translate
180.0000 rotate
gsave
0 0 translate
30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
gsave
0 0 translate
180 fnt1 283 0 0 0 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore
gsave
0 0 translate
-30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore

grestore
gsave
2268 3067 translate
30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
gsave
2268 3067 translate
180 fnt1 283 0 0 0 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore
gsave
2268 3067 translate
-30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
2366 3091(b)m gsave
567 1438 translate
180 fnt1 680 340 0 340 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto
xsize ysize lineto 0 ysize lineto closepath
gsave 0.9 setgray fill grestore stroke
grestore

grestore
gsave
680 1324 translate
180 fnt1 2722 567 0 567 180 288 45 LoutGraphic
gsave
0 0 moveto 0 ysize lineto [ 3 pt ] 0 setdash stroke
grestore

grestore
gsave
2268 1438 translate
180 fnt1 680 340 0 340 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto
xsize ysize lineto 0 ysize lineto closepath
gsave 0.9 setgray fill grestore stroke
grestore

grestore
gsave
2551 1324 translate
180 fnt1 851 567 0 567 180 288 45 LoutGraphic
gsave
0 0 moveto 0 ysize lineto [ 3 pt ] 0 setdash stroke
grestore

grestore
gsave
2268 1234 translate
180.0000 rotate
gsave
0 0 translate
30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
gsave
0 0 translate
180 fnt1 2268 0 0 0 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore
gsave
0 0 translate
-30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore

grestore
gsave
0 1234 translate
30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
gsave
0 1234 translate
180 fnt1 2268 0 0 0 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore
gsave
0 1234 translate
-30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
1587 1032(length)m gsave
3402 734 translate
180.0000 rotate
gsave
0 0 translate
30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
gsave
0 0 translate
180 fnt1 3402 0 0 0 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore
gsave
0 0 translate
-30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore

grestore
gsave
0 734 translate
30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
gsave
0 734 translate
180 fnt1 3402 0 0 0 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore
gsave
0 734 translate
-30.0000 rotate
gsave
0 1 translate
180 fnt1 68 -2 0 -1 180 288 45 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore

grestore
1189 523(curr)m 6(ent)k
1759(bound)s 
grestore
end end restore
grestore

[ /Dest /LOUTgapmodes /DEST pdfmark
200 fnt2 180 4638(Figur)m 3(e)k 788(2.)s
200 fnt1 1030 4639(The)m 1386(six)s 1664(g)s 1(ap)k
1995(modes)s 2557(\()s 200 fnt4 2618 4640(length)m 200 fnt1
3162 4639(is)m 3336(an)s 3(y)k 3666(length\).)s 4367(Hyphenation)s
5444(mode)s 5933(has)s 6240(an)s 6475(e)s 3(xtra)k
6919(property)s 7639(not)s 7944(sho)s 5(wn)k 8507(here.)s
240 fnt1 0 4008(has)m 396(the)s 770(desired)s 1545(result,)s
2208(where)s 220 fnt6 2874 4005(2p)m 240 fnt1 3197 4008(is)m
3433(tw)s 2(o)k 3870(points)s 4532(and)s 220 fnt6
4962 4005(@HLine)m 240 fnt1 5836 4008(is)m 6072(an)s 6381(easy)s
6887(combination)s 8166(of)s 8464(Lout')s 13(s)k 0 3720(graphics)m
861(operators.)s 1914(A)s 2144(similar)s 2866(operator)s 9(,)k
220 fnt6 3760 3717(@OneCol)m 240 fnt1 4712 3720(,)m 4819(hides)s
5375(column)s 6150(marks.)s 480 3346(A)m 728(v)s 6(ariant)k
1463(of)s 220 fnt6 1753 3343(/)m 240 fnt1 1895 3346(called)m
220 fnt6 2542 3343(//)m 240 fnt1 2745 3346(is)m 2974(pro)s 3(vided)k
3898(which)s 4558(performs)s 5490(v)s 3(ertical)k 6275(concatenation)s
7679(b)s 4(ut)k 8059(ignores)s 8833(all)s 0 3058(column)m
775(marks)s 1410(and)s 1814(simply)s 2519(left-justi\207es)s 3709(its)s
3985(tw)s 2(o)k 4395(parameters:)s 220 fnt6 480 2557(Heading  //0.1i)m
480 2269(A  |0.2i  B  /0.1i)m 480 1981(C  |  D)m 240 fnt1 0 1526(has)m 370(result)s
480 1073(Heading)m 480 716(A)m 938(B)s 480 410(C)m 938(D)s

grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 8 9
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Helvetica
%%+ font Times-Bold
%%+ font Times-Italic
%%+ font Symbol
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
%%IncludeResource: font Times-Bold
/Times-Boldfnt2 vec2 /Times-Bold LoutRecode
/fnt2 { /Times-Boldfnt2 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
%%IncludeResource: font Symbol
/fnt5 { /Symbol LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5768 -1579(-)m 5896(8)s 6063(-)s 9066 13416 0 13307 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore
0 13253(sho)m 6(wing)k
883(that)s 1325(spanning)s 2267(columns)s 3153(in)s 3420(tables)s
4052(moti)s 6(v)k 6(ate)k 4956(the)s 5328(inclusion)s
6286(of)s 6581(this)s 7001(operator)s 13(.)k 7972(There)s
8609(is)s 8843(an)s 0 12965(analogous)m 220 fnt6 1029 12962(||)m
240 fnt1 1191 12965(operator)m 13(.)k 2145(The)s 2581(author)s
3259(w)s 2(ould)k 3922(ha)s 4(v)k 3(e)k
4430(preferred)s 5370(to)s 5616(lea)s 4(v)k 3(e)k
6177(out)s 6550(these)s 7105(operators,)s 8108(since)s 8663(the)s 3(y)k
0 12677(complicate)m 1104(the)s 1452(implementation,)s 3059(and)s 3463(it)s
3655(is)s 3865(interesting)s 4926(to)s 5165(e)s 3(xamine)k
6028(the)s 6376(prospects)s 7330(of)s 7601(doing)s 8200(so.)s
480 12303(The)m 220 fnt6 953 12300(//)m 240 fnt1 1184 12303(operator)m
2086(is)s 2342(formally)s 3263(redundant,)s 4373(because)s 5232(in)s
5521(general)s 6324(the)s 6718(e)s 3(xpression)k 220 fnt6
7841 12300(x // y)m 240 fnt1 8409 12303(can)m 8844(be)s 0 12015(replaced)m
867(by)s 220 fnt6 480 11514(@OneCol {  |  x  }   /)m 480 11226(@OneCol {  |  y  })m 240 fnt1
0 10728(for)m 338(an)s 3(y)k 734(objects)s 220 fnt6
1462 10725(x)m 240 fnt1 1629 10728(and)m 220 fnt6 2032 10725(y)m
240 fnt1 2140 10728(.)m 2304(By)s 2637(concatenating)s 4017(an)s
4300(empty)s 4951(object)s 5594(at)s 5826(the)s 6173(left)s
6549(of)s 220 fnt6 6820 10725(x)m 240 fnt1 6987 10728(and)m
7390(hiding)s 8055(all)s 8347(b)s 4(ut)k 8708(that)s
0 10440(empty)m 641(object')s 13(s)k 1423(column)s 2186(mark,)s
2772(we)s 3095(ef)s 6(fecti)k 6(v)k 3(ely)k
4143(shift)s 220 fnt6 4615 10437(x)m 240 fnt1 4723 10440(')m 13(s)k
4921(column)s 5684(mark)s 6224(to)s 6452(its)s 6716(left)s
7081(edge.)s 7685(The)s 8101(same)s 8636(goes)s 0 10152(for)m
220 fnt6 349 10149(y)m 240 fnt1 457 10152(,)m 575(so)s
852(the)s 220 fnt6 1211 10149(/)m 240 fnt1 1347 10152(operator)m
2214(has)s 2595(just)s 3011(one)s 3424(column)s 4211(mark)s
4774(to)s 5024(mer)s 4(ge,)k 5735(at)s 5978(the)s
6338(e)s 3(xtreme)k 7171(left,)s 7606(and)s 8021(its)s
8308(ef)s 6(fect)k 8916(is)s 0 9864(indistinguishable)m 1690(from)s
220 fnt6 2214 9861(//)m 240 fnt1 2339 9864(.)m 480 9490(Unfortunately)m 15(,)k
1915(if)s 220 fnt6 2134 9487(y)m 240 fnt1 2304 9490(consists)m
3114(of)s 3387(tw)s 2(o)k 3799(ro)s 6(ws)k
4311(separated)s 5274(by)s 220 fnt6 5570 9487(/)m 240 fnt1
5634 9490(,)m 5743(as)s 5995(in)s 6240(the)s 6590(e)s 3(xample)k
7455(abo)s 3(v)k 3(e,)k 8130(both)s 8616(ro)s 6(ws)k
0 9202(must)m 533(be)s 823(placed)s 1513(inside)s 2148(the)s
220 fnt6 2504 9199(@OneCol)m 240 fnt1 3456 9202(,)m 3571(and)s
3983(the)s 4340(table)s 4868(cannot)s 5574(be)s 5864(entered)s
6633(in)s 6884(the)s 7240(simple)s 7942(ro)s 6(w-by-ro)k 6(w)k
0 8914(manner)m 777(that)s 1194(non-e)s 3(xpert)k 2287(users)s
2828(naturally)s 3731(e)s 3(xpect.)k 4515(Another)s 5359(adv)s 6(antage)k
6378(of)s 220 fnt6 6649 8911(//)m 240 fnt1 6833 8914(is)m
7043(that)s 7460(its)s 7736(left)s 8112(parameter)s 0 8626(can)m
382(be)s 657(printed)s 1385(before)s 2044(its)s 2313(right)s
2817(parameter)s 3824(is)s 4027(kno)s 6(wn;)k 4779(this)s
5168(is)s 5371(important)s 6353(when)s 6922(the)s 7263(left)s
7633(parameter)s 8640(is)s 8843(an)s 0 8338(entire)m 599(page.)s
480 7964(The)m 960(\207fth)s 1468(and)s 1924(\207nal)s 2457(concatenation)s
3895(operator)s 9(,)k 220 fnt6 4841 7961(&)m 240 fnt1
4983 7964(,)m 5143(is)s 5405(an)s 5741(e)s 3(xplicit)k
6567(v)s 3(ersion)k 7377(of)s 7701(the)s 8102(horizontal)s
0 7676(concatenation)m 1402(operator)s 2275(interpolated)s 3492(when)s 4085(objects)s
4830(are)s 5195(separated)s 6172(by)s 6483(white)s 7088(space.)s
7800(It)s 8022(is)s 8250(formally)s 0 7388(identical)m 907(to)s
220 fnt6 1177 7385(|)m 240 fnt1 1305 7388(e)m 3(xcept)k
2017(for)s 2386(taking)s 3068(higher)s 3770(precedence)s 4932(and)s
5367(being)s 5983(subject)s 6751(to)s 7021(replacement)s 8279(by)s
220 fnt6 8604 7385(//1vx)m 240 fnt1 0 7100(during)m 678(paragraph)s
1691(breaking)s 2581(\(Section)s 3434(2.5\).)s 240 fnt2 0 6451(2.4.)m
471(Implementation)s 2159(of)s 2431(objects)s 3201(and)s 3642(concatenation)s

[ /Dest /LOUTobjects_impl /DEST pdfmark
240 fnt1 480 5974(In)m 738(this)s 1136(section)s 1872(we)s
2210(discuss)s 2954(the)s 3304(implementation)s 4863(of)s 5137(objects)s
5867(and)s 6273(concatenation,)s 7710(and)s 8117(especially)s 0 5686(mark)m
552(alignment.)s 1672(The)s 2100(\207rst)s 2531(step)s 2969(is)s
3179(to)s 3418(use)s 3793(an)s 4076(operator)s 4932(precedence)s
6063(parser)s 6706(to)s 6945(con)s 9(v)k 3(ert)k
7710(input)s 8262(such)s 8758(as)s 220 fnt6 480 5185(a  |0.5i  b  /0.2i  c  |  d)m
240 fnt1 0 4730(into)m 425(parse)s 985(trees)s 1486(such)s
1982(as)s gsave
480 3036 translate
240 fnt4 3396 1354 0 1298 240 288 12 LoutGraphic
gsave
grestore save gsave 200 dict begin lfigdict begin
grestore
1867 338 56 282 240 288 12 1529 1016 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt5 136 106(\244)m 
grestore
(T) lfigpromotelabels
grestore
1413 846 0 790 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
876 338 56 282 240 288 12 537 508 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt5 156 121(|)m

grestore
(T) lfigpromotelabels
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 123 128(a)m 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 338 282 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
511 338 56 282 240 288 12 451 0 LoutGr2
currentdict end 200 dict begin begin
grestore
511 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
511 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
192 fnt5 56 105(0)m 192 fnt4
195 111(.)m 192 fnt5 270 105(5)m 192 fnt4 404 111(i)m

grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 962 282 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
338 338 56 282 240 288 12 1075 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 123 105(b)m 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 1413 282 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 1413 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
517 846 56 790 240 288 12 1526 0 LoutGr2
currentdict end 200 dict begin begin
grestore
517 846 56 790 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
517 338 56 282 240 288 12 0 508 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
192 fnt5 56 105(0)m 192 fnt4
195 111(.)m 192 fnt5 270 105(2)m 192 fnt4 410 111(i)m

grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 2043 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
1240 846 0 790 240 288 12 2156 0 LoutGr2
currentdict end 200 dict begin begin
grestore
789 338 56 282 240 288 12 451 508 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt5 156 121(|)m 
grestore
(T) lfigpromotelabels
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 128 128(c)m 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 338 282 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
338 338 56 282 240 288 12 451 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore

grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 789 282 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
338 338 56 282 240 288 12 902 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4
118 105(d)m 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 1240 282 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 3396 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
end end restore
grestore
0 2585(Missing)m 879(objects)s 1662(are)s 2065(replaced)s
2987(by)s 3336(empty)s 4044(objects,)s 4883(and)s 5342(sequences)s
6419(of)s 6745(concatenation)s 8186(operators)s 0 2297(are)m 347(consolidated:)s
gsave
480 648 translate
240 fnt4 2492 1359 0 1298 240 288 12 LoutGraphic
gsave
grestore save gsave 200 dict begin lfigdict begin
grestore
1415 338 56 282 240 288 12 1077 1016 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt5 156 121(|)m 
grestore
(T) lfigpromotelabels
grestore
338 846 56 790 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 846 56 790 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 508 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 123 128(a)m 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 338 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
517 846 56 790 240 288 12 451 0 LoutGr2
currentdict end 200 dict begin begin
grestore
517 846 56 790 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
517 338 56 282 240 288 12 0 508 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
192 fnt5
56 105(0)m 192 fnt4 195 111(.)m 192 fnt5 270 105(2)m
192 fnt4 410 111(i)m 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 968 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
1411 846 0 790 240 288 12 1081 0 LoutGr2
currentdict end 200 dict begin begin
grestore
875 338 56 282 240 288 12 536 508 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt5 156 121(|)m 
grestore
(T) lfigpromotelabels
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4
128 128(c)m 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 338 282 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
509 338 56 282 240 288 12 451 0 LoutGr2
currentdict end 200 dict begin begin
grestore
509 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
509 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
192 fnt5 56 105(0)m 192 fnt4 195 111(.)m
192 fnt5 270 105(3)m 192 fnt4 402 111(i)m 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 960 282 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
338 338 56 282 240 288 12 1073 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4
118 105(d)m 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 1411 282 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 2492 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
end end restore
grestore
240 fnt5 3284 1886(\336)m gsave
3825 648 translate
240 fnt4 2492 1359 0 1298 240 288 12 LoutGraphic
gsave
grestore save gsave 200 dict begin lfigdict begin
grestore
1415 338 56 282 240 288 12 1077 1016 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt5 156 121(|)m

grestore
(T) lfigpromotelabels
grestore
338 846 56 790 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 846 56 790 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 508 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 123 128(a)m 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 338 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
517 846 56 790 240 288 12 451 0 LoutGr2
currentdict end 200 dict begin begin
grestore
517 846 56 790 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
517 338 56 282 240 288 12 0 508 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
192 fnt5 56 105(0)m 192 fnt4
195 111(.)m 192 fnt5 270 105(2)m 192 fnt4 410 111(i)m

grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 968 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
338 846 56 790 240 288 12 1081 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 846 56 790 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 508 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 128 128(c)m 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 1419 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
509 846 56 790 240 288 12 1532 0 LoutGr2
currentdict end 200 dict begin begin
grestore
509 846 56 790 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
509 338 56 282 240 288 12 0 508 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
192 fnt5 56 105(0)m 192 fnt4
195 111(.)m 192 fnt5 270 105(3)m 192 fnt4 402 111(i)m

grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 2041 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
338 846 56 790 240 288 12 2154 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 846 56 790 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 508 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 118 105(d)m 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 2492 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
end end restore
grestore

grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 9 10
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Times-Italic
%%+ font Symbol
%%+ font Helvetica
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
%%IncludeResource: font Symbol
/fnt5 { /Symbol LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5766 -1579(-)m 5894(9)s 6065(-)s 9066 13414 0 13305 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore
0 13251(to)m 239(mak)s 2(e)k
811(manifest)s 1693(their)s 2190(associati)s 6(vity)k 3432(and)s
3836(reduce)s 4529(the)s 4877(depth)s 5466(of)s 5737(the)s
6085(tree)s 6498(for)s 6836(ef\207cienc)s 3(y)k 7829(later)s 13(.)k
480 12877(The)m 970(required)s 1887(semantic)s 2851(information)s 4099(is)s
4371(the)s 4782(size)s 5271(of)s 5605(each)s 6162(subobject,)s
7249(consisting)s 8334(of)s 8668(four)s 0 12589(inte)m 3(gers:)k
920(width)s 1524(to)s 1765(left)s 2144(and)s 2550(right)s
3062(of)s 3335(the)s 3685(distinguished)s 5021(column)s 5798(mark,)s
6397(and)s 6803(height)s 7463(abo)s 3(v)k 3(e)k
8087(and)s 8493(belo)s 6(w)k 0 12301(the)m 368(distinguished)s
1722(ro)s 6(w)k 2162(mark.)s 2837(These)s 3484(numbers)s
4379(are)s 4746(al)s 2(w)k 2(ays)k 5477(non-ne)s 3(g)k 1(ati)k 6(v)k 3(e)k
6789(in)s 7052(Basser)s 7769(Lout,)s 8348(b)s 4(ut)k
8730(this)s 0 12013(restriction)m 1024(is)s 1234(unnecessary)s 2457(and)s
2861(should)s 3558(be)s 3840(dropped.)s 480 11639(F)m 3(or)k
867(the)s 1212(lea)s 4(v)k 3(es,)k 1907(which)s
2546(are)s 2890(simple)s 3581(w)s 2(ords,)k 4268(the)s
4614(numbers)s 5486(are)s 5830(obtained)s 6710(from)s 7231(font)s
7674(tables.)s 8392(F)s 3(or)k 8778(the)s 0 11351(higher)m
678(le)s 6(v)k 3(els)k 1285(we)s 1628(apply)s
2222(recursi)s 6(v)k 3(e)k 3152(rules.)s 3788(Suppose)s
4664(that)s 240 fnt4 5090 11353(hgap)m 240 fnt5 5583 11345(\()m
240 fnt4 5675 11353(x)m 240 fnt5 5801 11345(,)m 240 fnt4
5932 11353(g)m 240 fnt5 6066 11345(,)m 240 fnt4 6197 11353(y)m
240 fnt5 6319 11345(\))m 240 fnt1 6453 11351(returns)m 7175(the)s
7531(desired)s 8287(distance)s 0 11063(between)m 846(the)s 1186(column)s
1952(marks)s 2579(of)s 2841(objects)s 240 fnt4 3561 11065(x)m
240 fnt1 3719 11063(and)m 240 fnt4 4114 11065(y)m 240 fnt1
4268 11063(when)m 4835(the)s 3(y)k 5290(are)s 5629(separated)s
6580(by)s 6866(g)s 1(ap)k 240 fnt4 7255 11065(g)m
240 fnt1 7369 11063(:)m 240 fnt4 7527 11065(right)m 240 fnt5
8000 11057(\()m 240 fnt4 8075 11065(x)m 240 fnt5 8185 11057(\))m
8298(+)s 240 fnt4 8473 11065(length)m 240 fnt5 0 10769(\()m
240 fnt4 89 10777(g)m 240 fnt5 221 10769(\))m 376(+)s
240 fnt4 594 10777(left)m 240 fnt5 920 10769(\()m 240 fnt4
1009 10777(y)m 240 fnt5 1129 10769(\))m 240 fnt1 1261 10775(when)m
1842(the)s 2196(g)s 1(ap)k 2600(mode)s 3193(is)s
3409(edge-to-edge,)s 4770(the)s 5124(lar)s 4(ger)k 5741(of)s
240 fnt4 6018 10777(length)m 240 fnt5 6629 10769(\()m 240 fnt4
6718 10777(g)m 240 fnt5 6850 10769(\))m 240 fnt1 6982 10775(and)m
240 fnt4 7391 10777(right)m 240 fnt5 7878 10769(\()m 240 fnt4
7968 10777(x)m 240 fnt5 8091 10769(\))m 8246(+)s 240 fnt4
8464 10777(left)m 240 fnt5 8790 10769(\()m 240 fnt4 8880 10777(y)m
240 fnt5 9000 10769(\))m 240 fnt1 0 10487(when)m 576(the)s
924(mode)s 1512(is)s 1722(mark-to-mark,)s 3155(and)s 3559(so)s
3825(on.)s 4229(Gi)s 6(v)k 3(en)k 4862(an)s
5145(object)s 240 fnt4 480 9992(X)m 240 fnt5 720 9984(=)m
240 fnt4 933 9992(x)m 168 fnt5 1039 9899(1)m 240 fnt5
1249 9984(|)m 240 fnt4 1294 9992(g)m 168 fnt5 1405 9899(1)m
240 fnt5 1615 9984(\274)m 200 fnt4 1973 10000(^)m 240 fnt5
2069 9984(|)m 240 fnt4 2114 9992(g)m 168 fnt4 2225 9905(i)m
168 fnt5 2291 9899(-)m 2403(1)s 240 fnt4 2613 9992(x)m
168 fnt4 2719 9905(i)m 240 fnt5 2907 9984(\274)m 3265(|)s
240 fnt4 3310 9992(g)m 168 fnt4 3421 9905(n)m 168 fnt5
3523 9899(-)m 3635(1)s 240 fnt4 3845 9992(x)m 168 fnt4
3951 9905(n)m 240 fnt1 0 9448(we)m 335(may)s 801(calculate)s
1705(its)s 1981(size)s 2408(as)s 2658(follo)s 6(ws:)k
240 fnt4 740 8945(left)m 240 fnt5 1060 8937(\()m 240 fnt4
1144 8945(X)m 240 fnt5 1312 8937(\))m 1474(=)s 240 fnt4
1687 8945(left)m 240 fnt5 2007 8937(\()m 240 fnt4 2091 8945(x)m
168 fnt5 2197 8852(1)m 240 fnt5 2275 8937(\))m 2413(+)s
240 fnt4 2614 8945(hgap)m 240 fnt5 3099 8937(\()m 240 fnt4
3183 8945(x)m 168 fnt5 3289 8852(1)m 240 fnt5 3367 8937(,)m
240 fnt4 3474 8945(g)m 168 fnt5 3585 8852(1)m 240 fnt5
3663 8937(,)m 240 fnt4 3770 8945(x)m 168 fnt5 3876 8852(2)m
240 fnt5 3968 8937(\))m 4106(+)s 4307(\274)s 4593(+)s
240 fnt4 4794 8945(hgap)m 240 fnt5 5279 8937(\()m 240 fnt4
5363 8945(x)m 168 fnt4 5469 8858(i)m 168 fnt5 5535 8852(-)m
5647(1)s 240 fnt5 5725 8937(,)m 240 fnt4 5832 8945(g)m
168 fnt4 5943 8858(i)m 168 fnt5 6009 8852(-)m 6121(1)s
240 fnt5 6199 8937(,)m 240 fnt4 6306 8945(x)m 168 fnt4
6412 8858(i)m 240 fnt5 6468 8937(\))m 240 fnt4 579 8542(right)m
240 fnt5 1060 8534(\()m 240 fnt4 1144 8542(X)m 240 fnt5
1312 8534(\))m 1474(=)s 240 fnt4 1687 8542(hgap)m 240 fnt5
2172 8534(\()m 240 fnt4 2256 8542(x)m 168 fnt4 2362 8455(i)m
240 fnt5 2418 8534(,)m 240 fnt4 2525 8542(g)m 168 fnt4
2636 8455(i)m 240 fnt5 2692 8534(,)m 240 fnt4 2799 8542(x)m
168 fnt4 2905 8455(i)m 168 fnt5 2971 8449(+)m 3084(1)s
240 fnt5 3162 8534(\))m 3300(+)s 3501(\274)s 3787(+)s
240 fnt4 3988 8542(hgap)m 240 fnt5 4473 8534(\()m 240 fnt4
4557 8542(x)m 168 fnt4 4663 8455(n)m 168 fnt5 4765 8449(-)m
4877(1)s 240 fnt5 4955 8534(,)m 240 fnt4 5062 8542(g)m
168 fnt4 5173 8455(n)m 168 fnt5 5275 8449(-)m 5387(1)s
240 fnt5 5465 8534(,)m 240 fnt4 5572 8542(x)m 168 fnt4
5678 8455(n)m 240 fnt5 5770 8534(\))m 5908(+)s 240 fnt4
6109 8542(right)m 240 fnt5 6590 8534(\()m 240 fnt4 6674 8542(x)m
168 fnt4 6780 8455(n)m 240 fnt5 6872 8534(\))m 240 fnt4
485 8139(abo)m 2(ve)k 240 fnt5 1060 8131(\()m 240 fnt4
1144 8139(X)m 240 fnt5 1312 8131(\))m 1474(=)s 240 fnt4
1687 8139(abo)m 2(ve)k 240 fnt5 2262 8131(\()m 240 fnt4
2346 8139(x)m 168 fnt5 2452 8044(1)m 240 fnt5 2530 8131(\))m
2680(\255)s 2901(\274)s 3199(\255)s 240 fnt4 3420 8139(abo)m 2(ve)k
240 fnt5 3995 8131(\()m 240 fnt4 4079 8139(x)m 168 fnt4
4185 8050(n)m 240 fnt5 4277 8131(\))m 240 fnt4 480 7736(below)m
240 fnt5 1060 7728(\()m 240 fnt4 1144 7736(X)m 240 fnt5
1312 7728(\))m 1474(=)s 240 fnt4 1687 7736(below)m 240 fnt5
2267 7728(\()m 240 fnt4 2351 7736(x)m 168 fnt5 2457 7641(1)m
240 fnt5 2535 7728(\))m 2685(\255)s 2906(\274)s 3204(\255)s
240 fnt4 3425 7736(below)m 240 fnt5 4005 7728(\()m 240 fnt4
4089 7736(x)m 168 fnt4 4195 7647(n)m 240 fnt5 4287 7728(\))m
240 fnt1 0 7141(where)m 240 fnt5 693 7135(\255)m 240 fnt1
943 7141(returns)m 1678(the)s 2046(lar)s 4(ger)k 2679(of)s
2971(its)s 3267(tw)s 2(o)k 3698(parameters.)s 4930(Similar)s
5712(formulas)s 6633(are)s 7001(easily)s 7632(deri)s 6(v)k 3(ed)k
8419(for)s 8778(the)s 0 6853(other)m 551(operators.)s 480 6479(F)m 3(or)k
866(purposes)s 1765(of)s 2033(e)s 3(xposition)k 3081(we)s
3412(will)s 3835(no)s 6(w)k 4293(mak)s 2(e)k
4862(the)s 5207(simplifying)s 6358(assumptions)s 7589(that)s 8004(all)s
8294(g)s 1(aps)k 8779(are)s 220 fnt6 0 6188(0i)m
240 fnt1 156 6191(,)m 248(all)s 525(column)s 1285(marks)s
1904(lie)s 2183(at)s 2399(the)s 2732(left)s 3093(edge,)s
3637(and)s 4025(all)s 4303(ro)s 6(w)k 4707(marks)s
5327(lie)s 5605(at)s 5822(the)s 6154(top)s 6498(edge.)s
7098(Then)s 7632(the)s 7964(size)s 8376(of)s 8631(each)s
0 5903(object)m 644(can)s 1033(be)s 1315(e)s 3(xpressed)k
2313(by)s 2607(just)s 3012(tw)s 2(o)k 3422(numbers,)s
4353(width)s 4955(and)s 5359(height,)s 6064(and)s 6468(the)s
6816(four)s 7274(formulas)s 8174(reduce)s 8867(to)s 240 fnt4
555 5400(width)m 240 fnt5 1094 5392(\()m 240 fnt4 1178 5400(x)m
168 fnt5 1284 5307(1)m 240 fnt5 1434 5392(|)m 1551(\274)s
1849(|)s 240 fnt4 1966 5400(x)m 168 fnt4 2072 5313(n)m
240 fnt5 2164 5392(\))m 2326(=)s 240 fnt4 2539 5400(width)m
240 fnt5 3078 5392(\()m 240 fnt4 3162 5400(x)m 168 fnt5
3268 5307(1)m 240 fnt5 3346 5392(\))m 3484(+)s 3685(\274)s
3971(+)s 240 fnt4 4172 5400(width)m 240 fnt5 4711 5392(\()m
240 fnt4 4795 5400(x)m 168 fnt4 4901 5313(n)m 240 fnt5
4993 5392(\))m 240 fnt4 480 4997(height)m 240 fnt5 1094 4989(\()m
240 fnt4 1178 4997(x)m 168 fnt5 1284 4904(1)m 240 fnt5
1434 4989(|)m 1551(\274)s 1849(|)s 240 fnt4 1966 4997(x)m
168 fnt4 2072 4910(n)m 240 fnt5 2164 4989(\))m 2326(=)s
240 fnt4 2539 4997(height)m 240 fnt5 3153 4989(\()m 240 fnt4
3237 4997(x)m 168 fnt5 3343 4904(1)m 240 fnt5 3421 4989(\))m
3571(\255)s 3792(\274)s 4090(\255)s 240 fnt4 4311 4997(height)m
240 fnt5 4925 4989(\()m 240 fnt4 5009 4997(x)m 168 fnt4
5115 4910(n)m 240 fnt5 5207 4989(\))m 240 fnt1 0 4453(The)m
428(corresponding)s 1850(formulas)s 2750(for)s 3088(v)s 3(ertical)k
3855(concatenation)s 5240(are)s 240 fnt4 555 3903(width)m 240 fnt5
1094 3895(\()m 240 fnt4 1178 3903(x)m 168 fnt5 1284 3810(1)m
240 fnt4 1434 3903(/)m 240 fnt5 1609 3895(\274)m 240 fnt4
1907 3903(/)m 2082(x)s 168 fnt4 2188 3816(n)m 240 fnt5
2280 3895(\))m 2442(=)s 240 fnt4 2655 3903(width)m 240 fnt5
3194 3895(\()m 240 fnt4 3278 3903(x)m 168 fnt5 3384 3810(1)m
240 fnt5 3462 3895(\))m 3612(\255)s 3833(\274)s 4131(\255)s
240 fnt4 4352 3903(width)m 240 fnt5 4891 3895(\()m 240 fnt4
4975 3903(x)m 168 fnt4 5081 3816(n)m 240 fnt5 5173 3895(\))m
240 fnt4 480 3500(height)m 240 fnt5 1094 3492(\()m 240 fnt4
1178 3500(x)m 168 fnt5 1284 3407(1)m 240 fnt4 1434 3500(/)m
240 fnt5 1609 3492(\274)m 240 fnt4 1907 3500(/)m 2082(x)s
168 fnt4 2188 3413(n)m 240 fnt5 2280 3492(\))m 2442(=)s
240 fnt4 2655 3500(height)m 240 fnt5 3269 3492(\()m 240 fnt4
3353 3500(x)m 168 fnt5 3459 3407(1)m 240 fnt5 3537 3492(\))m
3675(+)s 3876(\274)s 4162(+)s 240 fnt4 4363 3500(height)m
240 fnt5 4977 3492(\()m 240 fnt4 5061 3500(x)m 168 fnt4
5167 3413(n)m 240 fnt5 5259 3492(\))m 240 fnt1 0 2956(According)m
1063(to)s 1302(these)s 1849(formulas,)s 2805(the)s 3153(height)s
3811(of)s gsave
480 1262 translate
240 fnt4 3044 1354 56 1298 240 288 12 LoutGraphic
gsave
grestore save gsave 200 dict begin lfigdict begin
grestore
1240 846 56 790 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 123 128(a)m 
grestore
(T) lfigpromotelabels
grestore
(L) lfigpromotelabels
grestore
338 338 56 282 240 288 12 451 508 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt5 156 121(|)m

grestore
(T) lfigpromotelabels
grestore
0 0 0 0 240 288 12 789 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ L@T@CTR L@T@CTR T@CTR lfigangle L@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR L@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
338 338 56 282 240 288 12 902 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 123 105(b)m 
grestore
(T) lfigpromotelabels
grestore
(R) lfigpromotelabels
grestore
0 0 0 0 240 288 12 1240 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ R@T@CTR R@T@CTR T@CTR lfigangle R@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR R@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
(L) lfigpromotelabels
grestore
338 338 56 282 240 288 12 1353 1016 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt5 136 106(\244)m 
grestore
(T) lfigpromotelabels
grestore
0 0 0 0 240 288 12 1691 1298 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ L@T@CTR L@T@CTR T@CTR lfigangle L@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR L@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
1240 846 56 790 240 288 12 1804 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4
128 128(c)m 
grestore
(T) lfigpromotelabels
grestore
(L) lfigpromotelabels
grestore
338 338 56 282 240 288 12 451 508 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt5 156 121(|)m 
grestore
(T) lfigpromotelabels
grestore
0 0 0 0 240 288 12 789 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ L@T@CTR L@T@CTR T@CTR lfigangle L@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR L@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
338 338 56 282 240 288 12 902 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 118 105(d)m

grestore
(T) lfigpromotelabels
grestore
(R) lfigpromotelabels
grestore
0 0 0 0 240 288 12 1240 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ R@T@CTR R@T@CTR T@CTR lfigangle R@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR R@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
(R) lfigpromotelabels
grestore
0 0 0 0 240 288 12 3044 1298 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ R@T@CTR R@T@CTR T@CTR lfigangle R@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR R@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
end end restore
grestore

grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 10 11
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Symbol
%%+ font Times-Italic
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Symbol
/fnt5 { /Symbol LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5704 -1579(-)m 5832(10)s 6127(-)s 9066 13416 0 13307 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore
0 13253(is)m 240 fnt5
480 12745([)m 240 fnt4 563 12753(height)m 240 fnt5 1177 12745(\()m
240 fnt4 1261 12753(a)m 240 fnt5 1388 12745(\))m 1538(\255)s
240 fnt4 1759 12753(height)m 240 fnt5 2373 12745(\()m 240 fnt4
2457 12753(b)m 240 fnt5 2583 12745(\))m 2661(])s 2792(+)s
2993([)s 240 fnt4 3076 12753(height)m 240 fnt5 3690 12745(\()m
240 fnt4 3774 12753(c)m 240 fnt5 3888 12745(\))m 4038(\255)s
240 fnt4 4259 12753(height)m 240 fnt5 4873 12745(\()m 240 fnt4
4957 12753(d)m 240 fnt5 5095 12745(\))m 5173(])s 240 fnt1
0 12249(which)m 642(is)s 852(correct,)s 1621(b)s 4(ut)k
1983(for)s 2321(width)s 2923(the)s 3(y)k 3386(yield)s
240 fnt5 480 11691([)m 240 fnt4 563 11699(width)m 240 fnt5
1102 11691(\()m 240 fnt4 1186 11699(a)m 240 fnt5 1313 11691(\))m
1451(+)s 240 fnt4 1652 11699(width)m 240 fnt5 2191 11691(\()m
240 fnt4 2275 11699(b)m 240 fnt5 2401 11691(\))m 2479(])s
2622(\255)s 2843([)s 240 fnt4 2926 11699(width)m 240 fnt5
3465 11691(\()m 240 fnt4 3549 11699(c)m 240 fnt5 3663 11691(\))m
3801(+)s 240 fnt4 4002 11699(width)m 240 fnt5 4541 11691(\()m
240 fnt4 4625 11699(d)m 240 fnt5 4763 11691(\))m 4841(])s
240 fnt1 0 11195(which)m 645(is)s 859(not,)s 1276(since)s
1827(it)s 2023(does)s 2517(not)s 2887(tak)s 2(e)k
3343(the)s 3694(mer)s 4(ging)k 4544(of)s 4819(column)s
5598(marks)s 6237(into)s 6666(account.)s 7578(The)s 8010(asymmetry)s
0 10907(between)m 874(horizontal)s 1918(and)s 2342(v)s 3(ertical)k
3130(has)s 3520(come)s 4114(about)s 4726(because)s 5560(the)s
5928(ro)s 6(w)k 6368(entries,)s 7131(such)s 7648(as)s
240 fnt4 7918 10909(a)m 240 fnt1 8113 10907(and)m 240 fnt4
8537 10909(b)m 240 fnt1 8651 10907(,)m 8779(are)s 0 10619(adjacent)m
849(in)s 1085(the)s 1426(tree,)s 1883(b)s 4(ut)k
2238(the)s 2579(column)s 3346(entries,)s 4082(such)s 4571(as)s
240 fnt4 4814 10621(a)m 240 fnt1 4982 10619(and)m 240 fnt4
5379 10621(c)m 240 fnt1 5481 10619(,)m 5581(are)s 5920(not.)s
6383(It)s 6581(w)s 2(ould)k 7229(be)s 7504(possible)s
8337(to)s 8568(solv)s 3(e)k 0 10331(this)m 395(cross-linking)s
1694(problem)s 2550(by)s 2842(augmenting)s 4024(the)s 4370(size)s
4795(information)s 5979(stored)s 6619(in)s 6861(each)s 7354(node)s
7875(to)s 8112(record)s 8778(the)s 0 10043(number)m 791(of)s
1063(marks)s 1698(and)s 2103(the)s 2451(size)s 2879(of)s
3150(each,)s 3696(b)s 4(ut)k 4058(the)s 4407(author)s
5078(has)s 5449(preferred)s 6381(the)s 6730(follo)s 6(wing)k
7707(method)s 8484(which)s 0 9755(mak)m 2(es)k 660(structural)s
1616(changes)s 2438(to)s 2677(the)s 3025(tree)s 3438(instead.)s
480 9381(If)m 240 fnt4 715 9383(a)m 240 fnt1 896 9381(and)m
240 fnt4 1305 9383(c)m 240 fnt1 1473 9381(share)m 2038(a)s
2210(column)s 2990(mark,)s 3594(the)s 3(y)k 4063(each)s
4563(might)s 5187(as)s 5442(well)s 5914(ha)s 4(v)k 3(e)k
6420(width)s 240 fnt4 7028 9383(width)m 240 fnt5 7572 9375(\()m
240 fnt4 7662 9383(a)m 240 fnt5 7795 9375(\))m 7961(\255)s
240 fnt4 8199 9383(width)m 240 fnt5 8743 9375(\()m 240 fnt4
8833 9383(c)m 240 fnt5 8953 9375(\))m 240 fnt1 9019 9381(,)m
0 9093(since)m 547(all)s 840(width)s 1442(calculations)s 2635(apply)s
3221(to)s 3460(entire)s 4060(columns.)s 5035(Accordingly)s 15(,)k
6323(we)s 6659(introduce)s 7618(a)s 7784(ne)s 6(w)k
8232(operator)s 9(,)k 240 fnt4 0 8807(COL)m 240 fnt1
466 8805(,)m 573(de\207ned)s 1336(by)s 240 fnt4 480 8255(width)m
240 fnt5 1019 8247(\()m 240 fnt4 1103 8255(x)m 168 fnt5
1209 8162(1)m 240 fnt4 1347 8255(COL)m 240 fnt5 1885 8247(\274)m
240 fnt4 2171 8255(COL)m 2709(x)s 168 fnt4 2815 8168(n)m
240 fnt5 2907 8247(\))m 3057(=)s 240 fnt4 3270 8255(width)m
240 fnt5 3809 8247(\()m 240 fnt4 3893 8255(x)m 168 fnt5
3999 8162(1)m 240 fnt5 4077 8247(\))m 4227(\255)s 4448(\274)s
4746(\255)s 240 fnt4 4967 8255(width)m 240 fnt5 5506 8247(\()m
240 fnt4 5590 8255(x)m 168 fnt4 5696 8168(n)m 240 fnt5
5788 8247(\))m 240 fnt1 0 7711(and)m 440(replace)s 1221(both)s
240 fnt4 1741 7713(a)m 240 fnt1 1952 7711(and)m 240 fnt4
2393 7713(c)m 240 fnt1 2591 7711(by)m 240 fnt4 2922 7713(a)m
3218(COL)s 3865(c)s 240 fnt1 3967 7711(.)m 4168(T)s 19(o)k
4504(pre)s 6(v)k 3(ent)k 240 fnt4 5309 7713(COL)m
240 fnt1 5871 7711(operators)m 6848(from)s 7408(disturbing)s 8468(height)s
0 7423(calculations,)m 1248(we)s 1583(de\207ne)s 2224(a)s 2390(binary)s
3055(operator)s 3911(called)s 240 fnt4 4539 7425(SPLIT)m 240 fnt1
5228 7423(by)m 240 fnt4 555 6920(width)m 240 fnt5 1094 6912(\()m
240 fnt4 1178 6920(x)m 1356(SPLIT)s 2057(y)s 240 fnt5
2171 6912(\))m 2333(=)s 240 fnt4 2546 6920(width)m 240 fnt5
3085 6912(\()m 240 fnt4 3169 6920(x)m 240 fnt5 3287 6912(\))m
240 fnt4 480 6517(height)m 240 fnt5 1094 6509(\()m 240 fnt4
1178 6517(x)m 1356(SPLIT)s 2057(y)s 240 fnt5 2171 6509(\))m
2333(=)s 240 fnt4 2546 6517(height)m 240 fnt5 3160 6509(\()m
240 fnt4 3244 6517(y)m 240 fnt5 3358 6509(\))m 240 fnt1
0 6013(which)m 642(switches)s 1516(height)s 2174(and)s 2578(width)s
3180(calculations)s 4372(onto)s 4851(dif)s 6(ferent)k 5726(subtrees.)s
6673(Then)s 7222(the)s 7570(transformation)s gsave
480 4314 translate
240 fnt4 338 1359 56 1298 240 288 12 LoutGraphic
gsave
grestore save gsave 200 dict begin lfigdict begin
grestore
338 1359 56 1298 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 1016 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 123 128(a)m

grestore
(T) lfigpromotelabels
grestore
end end restore
grestore
240 fnt5 1130 5552(\336)m gsave
1671 4314 translate
240 fnt4 2564 1359 56 1298 240 288 12 LoutGraphic
gsave
grestore save gsave 200 dict begin lfigdict begin
grestore
1386 846 56 790 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 123 128(a)m 
grestore
(T) lfigpromotelabels
grestore
(L) lfigpromotelabels
grestore
484 338 56 282 240 288 12 451 508 LoutGr2
currentdict end 200 dict begin begin
grestore
484 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
192 fnt4
56 107(COL)m 
grestore
(T) lfigpromotelabels
grestore
0 0 0 0 240 288 12 935 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ L@T@CTR L@T@CTR T@CTR lfigangle L@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR L@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
338 338 56 282 240 288 12 1048 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 128 128(c)m 
grestore
(T) lfigpromotelabels
grestore
(R) lfigpromotelabels
grestore
0 0 0 0 240 288 12 1386 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ R@T@CTR R@T@CTR T@CTR lfigangle R@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR R@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
(L) lfigpromotelabels
grestore
614 338 56 282 240 288 12 1499 1016 LoutGr2
currentdict end 200 dict begin begin
grestore
614 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
192 fnt4 56 107(SPLIT)m

grestore
(T) lfigpromotelabels
grestore
0 0 0 0 240 288 12 2113 1298 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ L@T@CTR L@T@CTR T@CTR lfigangle L@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR L@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
338 846 56 790 240 288 12 2226 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 846 56 790 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 508 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 123 128(a)m 
grestore
(T) lfigpromotelabels
grestore
(R) lfigpromotelabels
grestore
0 0 0 0 240 288 12 2564 1298 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ R@T@CTR R@T@CTR T@CTR lfigangle R@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR R@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
end end restore
grestore
240 fnt1 0 3814(widens)m 240 fnt4
740 3816(a)m 240 fnt1 926 3814(to)m 240 fnt4 1176 3816(width)m
240 fnt5 1726 3808(\()m 240 fnt4 1821 3816(a)m 240 fnt5
1959 3808(\))m 2142(\255)s 240 fnt4 2396 3816(width)m 240 fnt5
2946 3808(\()m 240 fnt4 3041 3816(c)m 240 fnt5 3166 3808(\))m
240 fnt1 3303 3814(without)m 4105(af)s 6(fecting)k 5011(its)s
5298(height;)s 6019(it)s 6222(is)s 6443(applied)s 7216(to)s
7466(e)s 6(v)k 3(ery)k 8053(object)s 8708(that)s
0 3526(shares)m 638(its)s 904(column)s 1669(mark)s 2211(with)s
2683(at)s 2905(least)s 3392(one)s 3784(other)s 4325(object.)s
5063(A)s 5283(similar)s 5995(transformation)s 7448(in)s 9(v)k 4(olving)k
8396(a)s 240 fnt4 8552 3528(R)m 9(O)k 12(W)k
240 fnt1 0 3238(operator)m 856(deals)s 1398(with)s 1880(shared)s
2562(ro)s 6(w)k 2982(marks.)s 3730(The)s 4158(ef)s 6(fect)k
4754(on)s 5051(our)s 5430(little)s 5922(table)s 6442(is)s
6652(to)s 6891(replace)s gsave
480 1544 translate
240 fnt4 3044 1354 56 1298 240 288 12 LoutGraphic
gsave
grestore save gsave 200 dict begin lfigdict begin
grestore
1240 846 56 790 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 123 128(a)m 
grestore
(T) lfigpromotelabels
grestore
(L) lfigpromotelabels
grestore
338 338 56 282 240 288 12 451 508 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt5
156 121(|)m 
grestore
(T) lfigpromotelabels
grestore
0 0 0 0 240 288 12 789 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ L@T@CTR L@T@CTR T@CTR lfigangle L@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR L@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
338 338 56 282 240 288 12 902 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 123 105(b)m 
grestore
(T) lfigpromotelabels
grestore
(R) lfigpromotelabels
grestore
0 0 0 0 240 288 12 1240 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ R@T@CTR R@T@CTR T@CTR lfigangle R@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR R@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
(L) lfigpromotelabels
grestore
338 338 56 282 240 288 12 1353 1016 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt5 136 106(\244)m

grestore
(T) lfigpromotelabels
grestore
0 0 0 0 240 288 12 1691 1298 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ L@T@CTR L@T@CTR T@CTR lfigangle L@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR L@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
1240 846 56 790 240 288 12 1804 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 128 128(c)m 
grestore
(T) lfigpromotelabels
grestore
(L) lfigpromotelabels
grestore
338 338 56 282 240 288 12 451 508 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt5 156 121(|)m 
grestore
(T) lfigpromotelabels
grestore
0 0 0 0 240 288 12 789 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ L@T@CTR L@T@CTR T@CTR lfigangle L@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR L@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
338 338 56 282 240 288 12 902 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4
118 105(d)m 
grestore
(T) lfigpromotelabels
grestore
(R) lfigpromotelabels
grestore
0 0 0 0 240 288 12 1240 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ R@T@CTR R@T@CTR T@CTR lfigangle R@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR R@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
(R) lfigpromotelabels
grestore
0 0 0 0 240 288 12 3044 1298 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ R@T@CTR R@T@CTR T@CTR lfigangle R@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR R@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
end end restore
grestore
0 1093(by)m 
grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 11 12
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Times-Italic
%%+ font Symbol
%%+ font Helvetica
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
%%IncludeResource: font Symbol
/fnt5 { /Symbol LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5714 -1579(-)m 5842(11)s 6117(-)s 9066 13419 0 13363 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore
gsave
480 11049 translate
240 fnt4 6248 2370 0 2314 240 288 12 LoutGraphic
gsave
grestore save gsave 70 dict begin lfigdict begin
grestore
3293 338 56 282 240 288 12 2955 2032 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt5 136 106(\244)m

grestore
(T) lfigpromotelabels
grestore
3096 1862 0 1806 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
1717 338 56 282 240 288 12 1379 1524 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt5 156 121(|)m 
grestore
(T) lfigpromotelabels
grestore
1520 1354 0 1298 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
1067 338 56 282 240 288 12 453 1016 LoutGr2
currentdict end 70 dict begin begin
grestore
614 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
192 fnt4 56 107(SPLIT)m 
grestore
(T) lfigpromotelabels
grestore
732 846 0 790 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
608 338 56 282 240 288 12 124 508 LoutGr2
currentdict end 70 dict begin begin
grestore
484 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
192 fnt4
56 107(COL)m 
grestore
(T) lfigpromotelabels
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 123 128(a)m 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 338 282 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
338 338 56 282 240 288 12 394 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 128 128(c)m

grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 732 282 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 732 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
732 846 0 790 240 288 12 788 0 LoutGr2
currentdict end 70 dict begin begin
grestore
628 338 56 282 240 288 12 104 508 LoutGr2
currentdict end 70 dict begin begin
grestore
524 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
192 fnt4 56 107(R)m 7(O)k 9(W)k 
grestore
(T) lfigpromotelabels
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4
123 128(a)m 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 338 282 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
338 338 56 282 240 288 12 394 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 123 105(b)m 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 732 282 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 1520 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 1520 1298 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
1520 1354 0 1298 240 288 12 1576 0 LoutGr2
currentdict end 70 dict begin begin
grestore
1067 338 56 282 240 288 12 453 1016 LoutGr2
currentdict end 70 dict begin begin
grestore
614 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
192 fnt4 56 107(SPLIT)m

grestore
(T) lfigpromotelabels
grestore
732 846 0 790 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
608 338 56 282 240 288 12 124 508 LoutGr2
currentdict end 70 dict begin begin
grestore
484 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
192 fnt4 56 107(COL)m 
grestore
(T) lfigpromotelabels
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 123 105(b)m 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 338 282 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
338 338 56 282 240 288 12 394 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4
118 105(d)m 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 732 282 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 732 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
732 846 0 790 240 288 12 788 0 LoutGr2
currentdict end 70 dict begin begin
grestore
628 338 56 282 240 288 12 104 508 LoutGr2
currentdict end 70 dict begin begin
grestore
524 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
192 fnt4 56 107(R)m 7(O)k 9(W)k

grestore
(T) lfigpromotelabels
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 123 128(a)m 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 338 282 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
338 338 56 282 240 288 12 394 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 123 105(b)m 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 732 282 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 1520 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 3096 1298 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 3096 1806 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
3096 1862 0 1806 240 288 12 3152 0 LoutGr2
currentdict end 70 dict begin begin
grestore
1717 338 56 282 240 288 12 1379 1524 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt5
156 121(|)m 
grestore
(T) lfigpromotelabels
grestore
1520 1354 0 1298 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
1067 338 56 282 240 288 12 453 1016 LoutGr2
currentdict end 70 dict begin begin
grestore
614 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
192 fnt4 56 107(SPLIT)m 
grestore
(T) lfigpromotelabels
grestore
732 846 0 790 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
608 338 56 282 240 288 12 124 508 LoutGr2
currentdict end 70 dict begin begin
grestore
484 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
192 fnt4 56 107(COL)m

grestore
(T) lfigpromotelabels
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 123 128(a)m 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 338 282 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
338 338 56 282 240 288 12 394 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 128 128(c)m 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 732 282 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 732 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
732 846 0 790 240 288 12 788 0 LoutGr2
currentdict end 70 dict begin begin
grestore
628 338 56 282 240 288 12 104 508 LoutGr2
currentdict end 70 dict begin begin
grestore
524 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
192 fnt4
56 107(R)m 7(O)k 9(W)k 
grestore
(T) lfigpromotelabels
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 128 128(c)m

grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 338 282 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
338 338 56 282 240 288 12 394 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 118 105(d)m 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 732 282 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 1520 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 1520 1298 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
1520 1354 0 1298 240 288 12 1576 0 LoutGr2
currentdict end 70 dict begin begin
grestore
1067 338 56 282 240 288 12 453 1016 LoutGr2
currentdict end 70 dict begin begin
grestore
614 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
192 fnt4 56 107(SPLIT)m 
grestore
(T) lfigpromotelabels
grestore
732 846 0 790 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
608 338 56 282 240 288 12 124 508 LoutGr2
currentdict end 70 dict begin begin
grestore
484 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
192 fnt4
56 107(COL)m 
grestore
(T) lfigpromotelabels
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 123 105(b)m 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 338 282 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
338 338 56 282 240 288 12 394 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 118 105(d)m

grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 732 282 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 732 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
732 846 0 790 240 288 12 788 0 LoutGr2
currentdict end 70 dict begin begin
grestore
628 338 56 282 240 288 12 104 508 LoutGr2
currentdict end 70 dict begin begin
grestore
524 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
192 fnt4 56 107(R)m 7(O)k 9(W)k 
grestore
(T) lfigpromotelabels
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4
128 128(c)m 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 338 282 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
338 338 56 282 240 288 12 394 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 70 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 118 105(d)m 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 732 282 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 1520 790 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 3096 1298 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 12 6248 1806 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
end end restore
grestore
0 10598(In)m 244(f)s 2(act,)k
693(common)s 1576(sube)s 3(xpressions)k 3060(are)s 3395(identi\207ed)s
4343(\(tri)s 6(vially\))k 5286(and)s 5678(the)s 6013(result)s
6591(is)s 6788(a)s 6942(directed)s 7756(ac)s 3(yclic)k
8469(graph;)s 0 10310(each)m 486(af)s 6(fected)k 1296(leaf)s
1716(has)s 2076(tw)s 2(o)k 2477(parents,)s 3264(one)s
3657(for)s 3985(width)s 4578(and)s 4972(one)s 5365(for)s
5693(height;)s 6394(and)s 6788(each)s 240 fnt4 7274 10312(COL)m
240 fnt1 7790 10310(or)m 240 fnt4 8040 10312(R)m 9(O)k 12(W)k
240 fnt1 8604 10310(node)m 0 10022(has)m 360(one)s 752(parent)s
1398(and)s 1792(one)s 2184(child)s 2709(for)s 3037(each)s
3521(object)s 4155(lying)s 4690(on)s 4976(the)s 5314(corresponding)s
6726(mark.)s 7370(The)s 7788(data)s 8235(structure)s 0 9734(roughly)m
799(doubles)s 1595(in)s 1838(size,)s 2316(and)s 2720(this)s
3116(occurs)s 3791(only)s 4271(rarely)s 4881(in)s 5124(practice.)s
480 9360(This)m 956(method)s 1732(can)s 2121(cope)s 2629(with)s
3111(an)s 3(y)k 3508(le)s 3(g)k 1(al)k
4023(input,)s 4622(including)s 220 fnt6 480 8859({  a  //  c  |  d  }  |  {  b  /  e  })m 480 8571(/  {  f  /  i  }  |  {  g  |  h  //  j  })m
240 fnt1 0 8072(which)m 642(produces)s 1557(o)s 3(v)k 3(erlapping)k
2747(spanning)s 3665(columns:)s gsave
480 5924 translate
240 fnt4 1699 1808 0 1695 240 288 60 LoutGraphic
gsave
grestore save gsave 200 dict begin lfigdict begin
grestore
1133 452 113 339 240 288 60 0 1356 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
230 fnt4 511 178(a)m 
grestore
566 452 113 339 240 288 60 1133 1356 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
230 fnt4
228 150(b)m 
grestore
566 452 113 339 240 288 60 0 904 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
230 fnt4 234 178(c)m 
grestore
566 452 113 339 240 288 60 566 904 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
230 fnt4 222 150(d)m

grestore
566 452 113 339 240 288 60 1132 904 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
230 fnt4 235 178(e)m 
grestore
566 452 113 339 240 288 60 0 452 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
230 fnt4 235 173(f)m 
grestore
566 452 113 339 240 288 60 566 452 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
230 fnt4
228 200(g)m 
grestore
566 452 113 339 240 288 60 1132 452 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
230 fnt4 228 149(h)m 
grestore
566 452 113 339 240 288 60 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
230 fnt4 253 153(i)m

grestore
1133 452 113 339 240 288 60 566 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
230 fnt4 535 176(j)m 
grestore
end end restore
grestore
0 5473(The)m 428(box)s 3(es)k
1035(ha)s 4(v)k 3(e)k 1536(been)s 2045(added)s
2675(to)s 2914(clarify)s 3590(the)s 3938(structure.)s 4937(The)s
5365(width)s 5967(of)s 6238(this)s 6634(object)s 7278(is)s
7488(formally)s 240 fnt5 480 4915(\()m 564(\()s 240 fnt4
648 4923(width)m 240 fnt5 1187 4915(\()m 240 fnt4 1271 4923(a)m
240 fnt5 1398 4915(\))m 1548(\255)s 1769(\()s 240 fnt4
1853 4923(x)m 240 fnt5 2031 4915(+)m 240 fnt4 2232 4923(y)m
240 fnt5 2346 4915(\))m 2424(\))s 2562(+)s 240 fnt4
2763 4923(z)m 240 fnt5 2866 4915(\))m 3016(\255)s 3237(\()s
240 fnt4 3321 4923(x)m 240 fnt5 3499 4915(+)m 3700(\()s
3784(\()s 240 fnt4 3868 4923(y)m 240 fnt5 4042 4915(+)m
240 fnt4 4243 4923(z)m 240 fnt5 4346 4915(\))m 4496(\255)s
240 fnt4 4717 4923(width)m 240 fnt5 5256 4915(\()m 240 fnt4
5340 4923(j)m 240 fnt5 5418 4915(\))m 5496(\))s 5574(\))s
240 fnt1 0 4419(where)m 240 fnt4 480 3918(x)m 240 fnt5
670 3910(=)m 240 fnt4 883 3918(width)m 240 fnt5 1422 3910(\()m
240 fnt4 1506 3918(c)m 240 fnt5 1620 3910(\))m 1770(\255)s
240 fnt4 1991 3918(width)m 240 fnt5 2530 3910(\()m 240 fnt4
2662 3918(f)m 240 fnt5 2823 3910(\))m 2973(\255)s 240 fnt4
3194 3918(width)m 240 fnt5 3733 3910(\()m 240 fnt4 3817 3918(i)m
240 fnt5 3892 3910(\))m 
[ /Dest /LOUT12_1492_s2_4_1 /DEST pdfmark
240 fnt4 480 3367(y)m 240 fnt5
666 3359(=)m 240 fnt4 879 3367(width)m 240 fnt5 1418 3359(\()m
240 fnt4 1502 3367(d)m 240 fnt5 1688 3359(\))m 1838(\255)s
240 fnt4 2059 3367(width)m 240 fnt5 2598 3359(\()m 240 fnt4
2682 3367(g)m 240 fnt5 2808 3359(\))m 
[ /Dest /LOUT12_1492_s2_4_2 /DEST pdfmark
240 fnt4 480 2816(z)m
240 fnt5 655 2808(=)m 240 fnt4 868 2816(width)m 240 fnt5
1407 2808(\()m 240 fnt4 1491 2816(b)m 240 fnt5 1617 2808(\))m
1767(\255)s 240 fnt4 1988 2816(width)m 240 fnt5 2527 2808(\()m
240 fnt4 2611 2816(e)m 240 fnt5 2722 2808(\))m 2872(\255)s
240 fnt4 3093 2816(width)m 240 fnt5 3632 2808(\()m 240 fnt4
3716 2816(h)m 240 fnt5 3843 2808(\))m 
[ /Dest /LOUT12_1492_s2_4_3 /DEST pdfmark
240 fnt1 0 2312(It)m
224(seems)s 878(clear)s 1420(that)s 240 fnt4 1857 2314(y)m
240 fnt1 2038 2312(at)m 2289(least)s 2805(must)s 3349(appear)s
4065(twice)s 4657(in)s 4919(an)s 3(y)k 5335(e)s 3(xpression)k
6431(for)s 6788(the)s 7155(width)s 7776(of)s 8066(this)s
8482(object)s 0 2024(made)m 602(out)s 997(of)s 1297(simple)s
2019(addition)s 2889(and)s 3322(maxing)s 4121(operations,)s 5253(sho)s 6(wing)k
6141(that)s 6588(an)s 6900(ordinary)s 7793(tree)s 8235(structure)s
0 1736(is)m 227(insuf\207cient)s 1379(for)s 1734(o)s 3(v)k 3(erlapping)k
2941(spanning)s 3876(columns.)s 4868(The)s 5313(Basser)s 6027(Lout)s
6556(interpreter)s 7626(actually)s 8453(rejects)s 0 1448(such)m 521(structures,)s
1581(o)s 6(wing)k 2252(to)s 2517(the)s 2890(author')s 13(s)k
3736(doubts)s 4451(about)s 5069(the)s 5442(implementability)s 7153(of)s
240 fnt4 7449 1450(Constr)m 3(ained)k 240 fnt1 8722 1448(and)m
240 fnt4 0 1162(AdjustSize)m 240 fnt1 1049 1160(\(Section)m 1902(5.3\))s
2330(on)s 2627(them;)s 3217(b)s 4(ut)k 3579(with)s
4061(hindsight)s 5012(this)s 5408(caution)s 6169(w)s 2(as)k
6590(unnecessary)s 15(.)k 480 786(The)m 915(directed)s 1749(ac)s 3(yclic)k
2482(graph)s 3091(is)s 3308(ordered)s 4104(in)s 4354(the)s
4709(sense)s 5290(that)s 5715(the)s 6071(order)s 6642(of)s
6920(the)s 7275(edges)s 7878(entering)s 8722(and)s 0 498(lea)m 4(ving)k
746(each)s 1234(node)s 1748(matters.)s 2607(The)s 3028(structure)s
3911(is)s 4114(highly)s 4773(dynamic,)s 5696(and)s 6093(tra)s 4(v)k 3(ersals)k
7044(both)s 7519(with)s 7994(and)s 8390(ag)s 1(ainst)k

grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 12 13
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Times-Italic
%%+ font Times-Bold
%%+ font Helvetica
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
%%IncludeResource: font Times-Bold
/Times-Boldfnt2 vec2 /Times-Bold LoutRecode
/fnt2 { /Times-Boldfnt2 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5705 -1579(-)m 5833(12)s 6127(-)s 9066 13419 0 13310 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore
0 13256(the)m 349(arro)s 6(ws)k
1045(are)s 1394(required.)s 2355(After)s 2920(a)s 3087(fe)s 6(w)k
3494(ad-)s 3788(hoc)s 4189(attempts)s 5050(to)s 5291(e)s 3(xtend)k
5985(the)s 6334(usual)s 6896(tree)s 7310(representation)s 8722(had)s
0 12968(f)m 2(ailed,)k 665(the)s 1030(author)s 1718(de)s 6(v)k 3(eloped)k
2769(a)s 2952(representation)s 4379(based)s 5000(on)s 5314(doubly)s
6051(link)s 2(ed)k 6723(lists)s 7175(of)s 7463(records)s
8235(denoting)s 0 12680(links,)m 578(whose)s 1253(\210e)s 3(xibility)k
2240(more)s 2794(than)s 3270(compensated)s 4584(for)s 4929(the)s
5284(some)s 6(what)k 6315(e)s 3(xcessi)k 6(v)k 3(e)k
7282(memory)s 8140(consump)s 8998(-)s 0 12392(tion.)m 536(F)s 3(or)k
925(e)s 3(xample,)k gsave
480 10526 translate
240 fnt4 3282 1526 0 1470 240 288 12 LoutGraphic
gsave
grestore save gsave 200 dict begin lfigdict begin
grestore
338 338 56 282 240 288 12 0 1188 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 123 128(a)m 
grestore
(A) lfigpromotelabels
grestore
338 338 56 282 240 288 12 2944 1188 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4
123 105(b)m 
grestore
(B) lfigpromotelabels
grestore
338 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 128 128(c)m 
grestore
(C) lfigpromotelabels
grestore
338 338 56 282 240 288 12 1472 0 LoutGr2
currentdict end 200 dict begin begin
grestore
338 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore
192 fnt4 118 105(d)m

grestore
(D) lfigpromotelabels
grestore
0 0 0 0 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ A@CTR A@CTR C@CTR lfigangle A@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
C@CTR C@CTR A@CTR lfigangle C@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
0.15 cm /lfigsolid /lfigblack
lfigopen
0.15 cm 0.05 cm lfigforward
grestore

grestore
0 0 0 0 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ A@CTR A@CTR D@CTR lfigangle A@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
D@CTR D@CTR A@CTR lfigangle D@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
0.15 cm /lfigsolid /lfigblack
lfigopen
0.15 cm 0.05 cm lfigforward
grestore

grestore
0 0 0 0 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ B@CTR B@CTR D@CTR lfigangle B@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
D@CTR D@CTR B@CTR lfigangle D@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
0.15 cm /lfigsolid /lfigblack
lfigopen
0.15 cm 0.05 cm lfigforward
grestore

grestore
end end restore
grestore
0 10075(is)m 210(represented)s 1369(by)s gsave
1135 5559 translate
240 fnt4 6796 4176 0 4120 240 288 12 LoutGraphic
gsave
grestore save gsave 300 dict begin lfigdict begin
grestore
452 1014 0 958 240 288 12 0 3162 LoutGr2
currentdict end 300 dict begin begin
grestore
452 338 56 282 240 288 12 0 676 LoutGr2
currentdict end 300 dict begin begin
grestore
452 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore

grestore
(TOP) lfigpromotelabels
grestore
452 338 56 282 240 288 12 0 338 LoutGr2
currentdict end 300 dict begin begin
grestore
452 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
gsave
206 150 translate
192 fnt4 39 39 0 39 192 288 48 LoutGraphic
gsave
/lfigblack [ lfigcircle ] gsave lfigpaintpath grestore
0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore

grestore

grestore
(MID) lfigpromotelabels
grestore
452 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 300 dict begin begin
grestore
452 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
192 fnt4 180 128(a)m

grestore
(BASE) lfigpromotelabels
grestore
(A) lfigpromotelabels
grestore
452 1014 0 958 240 288 12 6344 3162 LoutGr2
currentdict end 300 dict begin begin
grestore
452 338 56 282 240 288 12 0 676 LoutGr2
currentdict end 300 dict begin begin
grestore
452 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore

grestore
(TOP) lfigpromotelabels
grestore
452 338 56 282 240 288 12 0 338 LoutGr2
currentdict end 300 dict begin begin
grestore
452 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
gsave
206 150 translate
192 fnt4 39 39 0 39 192 288 48 LoutGraphic
gsave
/lfigblack [ lfigcircle ] gsave lfigpaintpath grestore
0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore

grestore

grestore
(MID) lfigpromotelabels
grestore
452 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 300 dict begin begin
grestore
452 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
192 fnt4 180 105(b)m 
grestore
(BASE) lfigpromotelabels
grestore
(B) lfigpromotelabels
grestore
452 1014 0 958 240 288 12 0 1581 LoutGr2
currentdict end 300 dict begin begin
grestore
452 338 56 282 240 288 12 0 676 LoutGr2
currentdict end 300 dict begin begin
grestore
452 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
gsave
206 150 translate
192 fnt4 39 39 0 39 192 288 48 LoutGraphic
gsave
/lfigblack [ lfigcircle ] gsave lfigpaintpath grestore
0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore

grestore

grestore
(TOP) lfigpromotelabels
grestore
452 338 56 282 240 288 12 0 338 LoutGr2
currentdict end 300 dict begin begin
grestore
452 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
gsave
206 150 translate
192 fnt4 39 39 0 39 192 288 48 LoutGraphic
gsave
/lfigblack [ lfigcircle ] gsave lfigpaintpath grestore
0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore

grestore

grestore
(MID) lfigpromotelabels
grestore
452 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 300 dict begin begin
grestore
452 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
192 fnt4 104 107(LK)m 
grestore
(BASE) lfigpromotelabels
grestore
(L) lfigpromotelabels
grestore
452 1014 0 958 240 288 12 1586 1581 LoutGr2
currentdict end 300 dict begin begin
grestore
452 338 56 282 240 288 12 0 676 LoutGr2
currentdict end 300 dict begin begin
grestore
452 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
gsave
206 150 translate
192 fnt4 39 39 0 39 192 288 48 LoutGraphic
gsave
/lfigblack [ lfigcircle ] gsave lfigpaintpath grestore
0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore

grestore

grestore
(TOP) lfigpromotelabels
grestore
452 338 56 282 240 288 12 0 338 LoutGr2
currentdict end 300 dict begin begin
grestore
452 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
gsave
206 150 translate
192 fnt4 39 39 0 39 192 288 48 LoutGraphic
gsave
/lfigblack [ lfigcircle ] gsave lfigpaintpath grestore
0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore

grestore

grestore
(MID) lfigpromotelabels
grestore
452 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 300 dict begin begin
grestore
452 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
192 fnt4
104 107(LK)m 
grestore
(BASE) lfigpromotelabels
grestore
(M) lfigpromotelabels
grestore
452 1014 0 958 240 288 12 4758 1581 LoutGr2
currentdict end 300 dict begin begin
grestore
452 338 56 282 240 288 12 0 676 LoutGr2
currentdict end 300 dict begin begin
grestore
452 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
gsave
206 150 translate
192 fnt4 39 39 0 39 192 288 48 LoutGraphic
gsave
/lfigblack [ lfigcircle ] gsave lfigpaintpath grestore
0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore

grestore

grestore
(TOP) lfigpromotelabels
grestore
452 338 56 282 240 288 12 0 338 LoutGr2
currentdict end 300 dict begin begin
grestore
452 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
gsave
206 150 translate
192 fnt4 39 39 0 39 192 288 48 LoutGraphic
gsave
/lfigblack [ lfigcircle ] gsave lfigpaintpath grestore
0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore

grestore

grestore
(MID) lfigpromotelabels
grestore
452 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 300 dict begin begin
grestore
452 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
192 fnt4 104 107(LK)m 
grestore
(BASE) lfigpromotelabels
grestore
(N) lfigpromotelabels
grestore
452 1014 0 958 240 288 12 0 0 LoutGr2
currentdict end 300 dict begin begin
grestore
452 338 56 282 240 288 12 0 676 LoutGr2
currentdict end 300 dict begin begin
grestore
452 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
gsave
206 150 translate
192 fnt4 39 39 0 39 192 288 48 LoutGraphic
gsave
/lfigblack [ lfigcircle ] gsave lfigpaintpath grestore
0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore

grestore

grestore
(TOP) lfigpromotelabels
grestore
452 338 56 282 240 288 12 0 338 LoutGr2
currentdict end 300 dict begin begin
grestore
452 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore

grestore
(MID) lfigpromotelabels
grestore
452 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 300 dict begin begin
grestore
452 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
192 fnt4 185 128(c)m

grestore
(BASE) lfigpromotelabels
grestore
(C) lfigpromotelabels
grestore
452 1014 0 958 240 288 12 3172 0 LoutGr2
currentdict end 300 dict begin begin
grestore
452 338 56 282 240 288 12 0 676 LoutGr2
currentdict end 300 dict begin begin
grestore
452 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
gsave
206 150 translate
192 fnt4 39 39 0 39 192 288 48 LoutGraphic
gsave
/lfigblack [ lfigcircle ] gsave lfigpaintpath grestore
0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigcircle ] lfigdopath
pop pop
grestore

grestore

grestore
(TOP) lfigpromotelabels
grestore
452 338 56 282 240 288 12 0 338 LoutGr2
currentdict end 300 dict begin begin
grestore
452 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore

grestore
(MID) lfigpromotelabels
grestore
452 338 56 282 240 288 12 0 0 LoutGr2
currentdict end 300 dict begin begin
grestore
452 338 56 282 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
192 fnt4 175 105(d)m 
grestore
(BASE) lfigpromotelabels
grestore
(D) lfigpromotelabels
grestore
0 0 0 0 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ 0.5 cm 0 A@MID@CTR L@MID@CTR A@MID@CTR M@MID@CTR lfigpmin lfigpmin lfigpmin lfigpsub /BL lfigpointdef
A@MID@CTR L@MID@CTR A@MID@CTR M@MID@CTR lfigpmax lfigpmax lfigpmax 0.5 cm 0 lfigpadd /TR lfigpointdef
BL 0 BL TR lfigydistance lfigpadd /TL lfigpointdef
BL BL TR lfigxdistance 0 lfigpadd /BR lfigpointdef
BL
BR [ BR 0 0.5 cm lfigpadd ]
BR 0.5 cm 0.5 cm lfigpadd
TR 0.5 cm -0.5 cm lfigpadd [ 0 0.5 cm TR lfigpsub ]
TR
TL [ 0 0.5 cm TL lfigpsub ]
0.5 cm 0.5 cm TL lfigpsub
BL -0.5 cm 0.5 cm lfigpadd [ BL 0 0.5 cm lfigpadd ]
BL ] lfigdopath
pop pop
grestore

grestore
0 0 0 0 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ 0.5 cm 0 L@TOP@CTR C@TOP@CTR L@TOP@CTR C@TOP@CTR lfigpmin lfigpmin lfigpmin lfigpsub /BL lfigpointdef
L@TOP@CTR C@TOP@CTR L@TOP@CTR C@TOP@CTR lfigpmax lfigpmax lfigpmax 0.5 cm 0 lfigpadd /TR lfigpointdef
BL 0 BL TR lfigydistance lfigpadd /TL lfigpointdef
BL BL TR lfigxdistance 0 lfigpadd /BR lfigpointdef
BL
BR [ BR 0 0.5 cm lfigpadd ]
BR 0.5 cm 0.5 cm lfigpadd
TR 0.5 cm -0.5 cm lfigpadd [ 0 0.5 cm TR lfigpsub ]
TR
TL [ 0 0.5 cm TL lfigpsub ]
0.5 cm 0.5 cm TL lfigpsub
BL -0.5 cm 0.5 cm lfigpadd [ BL 0 0.5 cm lfigpadd ]
BL ] lfigdopath
pop pop
grestore

grestore
0 0 0 0 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ 0.5 cm 0 M@TOP@CTR D@TOP@CTR N@TOP@CTR D@TOP@CTR lfigpmin lfigpmin lfigpmin lfigpsub /BL lfigpointdef
M@TOP@CTR D@TOP@CTR N@TOP@CTR D@TOP@CTR lfigpmax lfigpmax lfigpmax 0.5 cm 0 lfigpadd /TR lfigpointdef
BL 0 BL TR lfigydistance lfigpadd /TL lfigpointdef
BL BL TR lfigxdistance 0 lfigpadd /BR lfigpointdef
BL
BR [ BR 0 0.5 cm lfigpadd ]
BR 0.5 cm 0.5 cm lfigpadd
TR 0.5 cm -0.5 cm lfigpadd [ 0 0.5 cm TR lfigpsub ]
TR
TL [ 0 0.5 cm TL lfigpsub ]
0.5 cm 0.5 cm TL lfigpsub
BL -0.5 cm 0.5 cm lfigpadd [ BL 0 0.5 cm lfigpadd ]
BL ] lfigdopath
pop pop
grestore

grestore
0 0 0 0 240 288 12 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ 0.5 cm 0 B@MID@CTR N@MID@CTR B@MID@CTR N@MID@CTR lfigpmin lfigpmin lfigpmin lfigpsub /BL lfigpointdef
B@MID@CTR N@MID@CTR B@MID@CTR N@MID@CTR lfigpmax lfigpmax lfigpmax 0.5 cm 0 lfigpadd /TR lfigpointdef
BL 0 BL TR lfigydistance lfigpadd /TL lfigpointdef
BL BL TR lfigxdistance 0 lfigpadd /BR lfigpointdef
BL
BR [ BR 0 0.5 cm lfigpadd ]
BR 0.5 cm 0.5 cm lfigpadd
TR 0.5 cm -0.5 cm lfigpadd [ 0 0.5 cm TR lfigpsub ]
TR
TL [ 0 0.5 cm TL lfigpsub ]
0.5 cm 0.5 cm TL lfigpsub
BL -0.5 cm 0.5 cm lfigpadd [ BL 0 0.5 cm lfigpadd ]
BL ] lfigdopath
pop pop
grestore

grestore
end end restore
grestore
0 5108(where)m 240 fnt4 645 5110(LK)m
240 fnt1 1017 5108(tags)m 1458(a)s 1630(record)s 2304(representing)s
3543(a)s 3715(link.)s 4257(The)s 4690(\207rst)s 5127(list)s
5484(in)s 5732(an)s 3(y)k 6135(node)s 6663(contains)s
7516(all)s 7815(the)s 8169(incoming)s 0 4820(links,)m 577(the)s
931(second)s 1660(contains)s 2514(the)s 2867(outgoing)s 3778(ones.)s
4387(The)s 4821(node)s 5348(serv)s 3(es)k 5999(as)s
6255(the)s 6609(header)s 7311(for)s 7655(both)s 8144(lists.)s
8698(The)s 0 4532(required)m 890(operations)s 1974(reduce)s 2704(to)s
2979(simple)s 3709(appends,)s 4638(deletes,)s 5444(and)s 5885(tra)s 4(v)k 3(ersals)k
6880(of)s 7187(doubly)s 7944(link)s 2(ed)k 8635(lists,)s
0 4244(all)m 325(ha)s 4(ving)k 1058(small)s 1663(constant)s
2552(cost.)s 3133(There)s 3779(is)s 4021(a)s 4219(highly)s
4918(tuned)s 5540(memory)s 6423(allocator)s 9(,)k 7389(and)s
7825(care)s 8310(is)s 8553(tak)s 2(en)k 0 3956(to)m
269(dispose)s 1073(of)s 1374(each)s 1900(node)s 2452(when)s
3058(the)s 3436(last)s 3858(incoming)s 4845(link)s 5308(is)s
5549(deleted,)s 6376(so)s 6672(that)s 7120(there)s 7684(is)s
7924(no)s 8247(need)s 8788(for)s 0 3668(g)m 1(arbage)k
812(collection.)s 480 3294(In)m 739(normal)s 1475(use)s 1854(the)s
2205(number)s 3000(of)s 3275(nodes)s 3888(at)s 4124(higher)s
4799(le)s 6(v)k 3(els)k 5402(of)s 5676(the)s
6028(dag)s 6431(is)s 6644(small)s 7220(in)s 7467(comparison)s
8644(with)s 0 3006(the)m 351(lea)s 4(v)k 3(es)k
995(and)s 1402(their)s 1903(incoming)s 2863(links,)s 3438(so)s
3707(we)s 4046(may)s 4515(estimate)s 5369(the)s 5720(space)s
6311(comple)s 3(xity)k 7441(at)s 7676(about)s 8271(60)s
8570(bytes)s 0 2718(per)m 355(input)s 896(w)s 2(ord)k
1433(\(20)s 1797(bytes)s 2342(per)s 2696(link,)s 3165(40)s
3449(per)s 3803(leaf)s 4222(node\).)s 4920(Careful)s 5680(optimization)s
6935(could)s 7514(easily)s 8114(halv)s 3(e)k 8674(this,)s
0 2430(b)m 4(ut)k 362(since)s 909(memory)s 1760(is)s
1970(reclaimed)s 2969(after)s 3465(printing)s 4275(each)s 4770(page)s
5278(there)s 5811(is)s 6021(little)s 6513(need.)s 240 fnt2
0 1781(2.5.)m 471(Context-sensiti)s 2(v)k 2(e)k 2274(attrib)s 4(utes)k
3318(of)s 3590(objects)s 
[ /Dest /LOUTstyle /DEST pdfmark
240 fnt1 480 1305(Although)m 1466(we)s
1826(are)s 2198(free)s 2649(to)s 2913(place)s 3498(an)s 3(y)k
3920(object)s 4588(in)s 4856(an)s 3(y)k 5278(conte)s 3(xt,)k
6111(the)s 6484(conte)s 3(xt)k 7270(must)s 7820(in\210uence)s
8778(the)s 0 1017(appearance)m 1131(of)s 1402(the)s 1750(object,)s
2441(since)s 2988(otherwise)s 220 fnt6 480 518(A shor)m -8(t par)k 2(ag)k 2(r)k 2(aph of te)k 6(xt.)k

grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 13 14
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Helvetica
%%+ font Times-Italic
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5710 -1579(-)m 5838(13)s 6122(-)s 9066 13416 0 13307 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore
0 13253(could)m 588(not)s
952(appear)s 1647(in)s 1887(a)s 2051(v)s 6(ariety)k
2760(of)s 3028(fonts,)s 3611(column)s 4384(widths,)s 5126(etc.)s
5566(This)s 6040(in\210uence)s 6970(cannot)s 7666(tak)s 2(e)k
8116(the)s 8461(purely)s 0 12965(static)m 569(form)s 1106(that)s
1538(block-structured)s 3175(languages)s 4196(use)s 4585(to)s 4837(associate)s
5769(v)s 6(alues)k 6438(with)s 6933(identi\207ers,)s 8009(for)s
8360(then)s 8843(an)s 0 12677(operator)m 850(could)s 1434(not)s
1794(in\210uence)s 2721(the)s 3063(appearance)s 4188(of)s 4453(its)s
4723(parameters;)s 5876(and)s 6274(a)s 6434(state)s 6921(v)s 6(ariable)k
7734(solution)s 8556(is)s 8760(not)s 0 12389(compatible)m 1118(with)s
1600(the)s 1948(o)s 3(v)k 3(erall)k 2660(functional)s
3684(design.)s 480 12015(The)m 914(information)s 2105(needed)s 2848(from)s
3378(the)s 3733(conte)s 3(xt)k 4500(seems)s 5141(quite)s
5682(limited,)s 6471(comprising)s 7607(the)s 7961(font)s 8413(f)s 2(amily)k 15(,)k
0 11727(f)m 2(ace,)k 525(and)s 952(size)s 1402(to)s
1664(use,)s 2114(the)s 2485(style)s 3015(of)s 3309(paragraph)s
4345(breaking)s 5259(required,)s 6185(ho)s 6(w)k 6669(much)s
7281(space)s 7891(to)s 8154(substitute)s 0 11439(between)m 873(the)s
1240(w)s 2(ords)k 1893(of)s 2184(paragraphs,)s 3359(and)s
3782(ho)s 6(w)k 4263(much)s 4871(horizontal)s 5914(and)s
6337(v)s 3(ertical)k 7124(space)s 7730(is)s 7959(a)s 4(v)k 6(ailable)k
8887(to)s 0 11151(recei)m 6(v)k 3(e)k 763(the)s
1139(object.)s 1914(These)s 2569(four)s 3054(items)s 3650(constitute)s
4662(the)s 5038(so-called)s 5985(`style)s 6599(information')s 7866(of)s
8165(Lout.)s 8809(As)s 0 10863(graphics)m 902(rendering)s 1912(hardw)s 2(are)k
2896(impro)s 3(v)k 3(es,)k 3928(the)s 4317(style)s
4865(information)s 6091(will)s 6558(probably)s 7504(gro)s 6(w)k
8085(to)s 8366(include)s 0 10575(colour)m 671(and)s 1075(te)s 3(xture)k
1791(information.)s 480 10201(The)m 908(w)s 2(ay)k 1359(to)s
1598(deal)s 2051(with)s 2533(fonts)s 3062(at)s 3294(least)s
3791(is)s 4001(v)s 3(ery)k 4477(clear:)s 220 fnt6
480 9700({ )m 11(Times Slope 12p } @F)k 6(ont { Hello)k 8(, w)k 2(or)k -3(ld })k
240 fnt1 0 9204(should)m 697(ha)s 4(v)k 3(e)k
1198(result)s 240 fnt4 480 8750(Hello,)m 1104(world)s 240 fnt1
0 8268(Lout)m 528(also)s 983(pro)s 3(vides)k 220 fnt6
1872 8265(@Break)m 240 fnt1 2745 8268(and)m 220 fnt6 3166 8265(@Space)m
240 fnt1 4080 8268(symbols)m 4946(for)s 5301(controlling)s 6420(the)s
6785(paragraph)s 7815(breaking)s 8722(and)s 0 7980(space)m 610(styles)s
1229(mentioned)s 2320(abo)s 3(v)k 3(e.)k 3074(These)s
3724(w)s 2(ork)k 4299(in)s 4565(the)s 4937(same)s
5507(w)s 2(ay)k 15(,)k 6020(returning)s 6972(their)s
7493(right)s 8028(parameters)s 0 7692(in)m 261(the)s 627(style)s
1152(of)s 1441(their)s 1956(left.)s 2455(The)s 2901(implementation)s
4476(is)s 4704(v)s 3(ery)k 5198(simple:)s 6019(one)s
6439(merely)s 7174(broadcasts)s 8252(the)s 8619(style)s 0 7404(information)m
1183(do)s 6(wn)k 1765(into)s 2188(the)s 2533(parse)s
3091(tree)s 3502(of)s 3771(the)s 4116(right)s 4625(parameter)s 13(.)k
5728(A)s 5956(font,)s 6445(for)s 6781(e)s 3(xample,)k
7693(is)s 7901(con)s 9(v)k 3(erted)k 8887(to)s
0 7116(an)m 278(8-bit)s 783(internal)s 1562(name)s 2130(and)s
2529(stored)s 3165(in)s 3403(each)s 3892(leaf,)s 4351(while)s
4932(a)s 5093(breaking)s 5977(style)s 6479(is)s 6683(stored)s
7320(in)s 7557(the)s 7900(root)s 8339(node)s 8855(of)s
0 6828(each)m 495(paragraph.)s 480 6454(The)m 954(same)s 1547(language)s
2514(design)s 3242(can)s 3677(be)s 4006(used)s 4549(for)s
4933(a)s 4(v)k 6(ailable)k 5888(width)s 6536(and)s
6986(height,)s 7738(only)s 8264(here)s 8778(the)s 0 6166(implementation)m
1557(is)s 1767(much)s 2356(more)s 2903(demanding:)s 220 fnt6
480 5665(2i @Wide {)m 480 5377(\(1\)  |0.1i  An e)m 6(xample)k 480 5089(containing a small)m 480 4801(par)m 2(ag)k 2(r)k 2(aph of \207lled te)k 6(xt.)k
480 4513(})m 240 fnt1 0 4019(is)m 210(guaranteed)s 1317(to)s
1556(be)s 1838(tw)s 2(o)k 2248(inches)s 2910(wide:)s
480 3516(\(1\))m 891(An)s 1270(e)s 3(xample)k 2162(containing)s
3254(a)s 891 3228(small)m 1504(paragraph)s 2558(of)s 2871(\207lled)s
891 2940(te)m 3(xt.)k 0 2487(One)m 448(must)s 966(calculate)s
1863(that)s 2273(1.9)s 2617(inches)s 3272(minus)s 3900(the)s
4241(width)s 4836(of)s 220 fnt6 5100 2484(\(1\))m 240 fnt1
5406 2487(is)m 5609(a)s 4(v)k 6(ailable)k 6510(to)s
6741(the)s 7082(paragraph,)s 8138(and)s 8534(break)s 0 2199(it)m
186(accordingly;)s 1421(Basser)s 2111(Lout)s 2617(does)s 3100(this)s
3490(in)s 3727(tw)s 2(o)k 4130(stages.)s 4872(In)s
5121(the)s 5463(\207rst,)s 5935(upw)s 2(ard-mo)k 3(ving)k
7505(stage,)s 8097(widths)s 8779(are)s 0 1911(calculated)m 1018(using)s
1581(the)s 1920(formulae)s 2829(of)s 3091(Section)s 3856(2.3,)s
4254(which)s 4887(assume)s 5638(that)s 6047(a)s 4(v)k 6(ailable)k
6946(space)s 7524(is)s 7725(in\207nite.)s 8557(If)s 8778(the)s
0 1623(upw)m 2(ard)k 763(mo)s 3(v)k 3(ement)k
1815(reaches)s 2570(a)s 240 fnt4 2724 1625(WIDE)m 240 fnt1
3375 1623(node,)m 3936(corresponding)s 5346(to)s 5573(a)s 220 fnt6
5728 1620(@Wide)m 240 fnt1 6490 1623(operator)m 9(,)k 7372(and)s
7764(the)s 8100(calculated)s 0 1335(width)m 627(e)s 3(xceeds)k
1457(that)s 1900(allo)s 6(wed,)k 2784(a)s 2975(second,)s
3772(do)s 6(wnw)k 2(ard-mo)k 3(ving)k 5661(stage)s
6234(is)s 6469(initiated)s 7334(which)s 8001(attempts)s 8887(to)s
0 1047(reduce)m 681(the)s 1017(width)s 1606(by)s 1888(\207nding)s
2607(and)s 2999(breaking)s 3877(paragraphs.)s 5077(This)s 5541(second)s
6251(stage)s 6786(is)s 6984(quite)s 7505(routine)s 8226(e)s 3(xcept)k
8894(at)s 220 fnt6 0 756(|)m 240 fnt1 84 759(nodes,)m
736(whose)s 1390(children)s 2216(are)s 2549(the)s 2883(columns)s
3731(of)s 3988(a)s 4141(table.)s 4755(It)s 4946(is)s
5142(necessary)s 6111(to)s 6336(apportion)s 7296(the)s 7630(a)s 4(v)k 6(ailable)k
8524(width)s 0 471(\(minus)m 727(inter)s 4(-column)k 2026(g)s 1(aps\))k
2604(among)s 3321(the)s 3681(columns.)s 4668(Basser)s 5377(Lout)s
5901(lea)s 4(v)k 3(es)k 6554(narro)s 6(w)k
7291(columns)s 8166(unbrok)s 2(en)k 
grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 14 15
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Helvetica
%%+ font Times-Bold
%%+ font Symbol
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
%%IncludeResource: font Times-Bold
/Times-Boldfnt2 vec2 /Times-Bold LoutRecode
/fnt2 { /Times-Boldfnt2 LoutFont } def
%%IncludeResource: font Symbol
/fnt5 { /Symbol LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5705 -1579(-)m 5833(14)s 6127(-)s 9066 13419 0 13310 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore
0 13256(and)m 404(breaks)s
1079(the)s 1427(remaining)s 2449(columns)s 3311(to)s 3550(equal)s
4123(width,)s 4775(using)s 5347(up)s 5640(all)s 5933(of)s
6204(the)s 6552(a)s 4(v)k 6(ailable)k 7460(space.)s
480 12882(The)m 897(size)s 1313(of)s 1572(an)s 1844(object)s
2476(is)s 2675(not)s 3029(clearly)s 3721(determined)s 4843(when)s
5407(the)s 5744(upw)s 2(ard-mo)k 3(ving)k 7309(size)s
7725(is)s 7923(less)s 8321(than)s 8778(the)s 0 12594(do)m 6(wnw)k 2(ard-mo)k 3(ving)k
1871(a)s 4(v)k 6(ailable)k 2786(space,)s 3431(and)s
3842(the)s 4197(object)s 4849(contains)s 5704(constructs)s 6731(that)s
7156(depend)s 7913(on)s 8218(a)s 4(v)k 6(ailable)k
0 12306(space)m 587(\(e.g.)s 1056(right)s 1567(justi\207cation\).)s 2938(F)s 3(or)k
3327(e)s 3(xample,)k 4241(in)s 220 fnt6 480 11805(2i @Wide { Heading // a |1r)m -8(t b })k
240 fnt1 0 11306(it)m 211(seems)s 865(natural)s 1603(to)s
1861(assign)s 2536(a)s 2721(width)s 3342(of)s 3633(tw)s 2(o)k
4062(inches)s 4744(to)s 5002(the)s 5369(subobject)s 220 fnt6
6366 11303(a |1r)m -8(t b)k 240 fnt1 7124 11306(because)m 7957(of)s
8247(the)s 8615(right)s 0 11018(justi\207cation,)m 1270(b)s 4(ut)k
1667(it)s 1895(w)s 2(ould)k 2585(be)s 2903(equally)s
3696(plausible)s 4650(if)s 4903(the)s 5286(width)s 5924(of)s
220 fnt6 6230 11015(Heading)m 240 fnt1 7129 11018(w)m 2(as)k
7586(assigned)s 8503(to)s 8778(the)s 0 10730(subobject)m 989(instead.)s
1843(The)s 2284(author)s 2968(is)s 3191(conscious)s 4199(of)s
4483(ha)s 4(ving)k 5197(f)s 2(ailed)k 5809(to)s
6061(resolv)s 3(e)k 6817(this)s 7226(matter)s 7908(properly;)s
8843(an)s 0 10442(e)m 3(xtra)k 534(operator)s 1390(for)s
1728(controlling)s 2830(a)s 4(v)k 6(ailable)k 3738(space)s
4325(is)s 4535(probably)s 5440(necessary)s 15(.)k 480 10068(The)m
930(actual)s 1578(paragraph)s 2614(breaking)s 3527(is)s 3759(just)s
4187(a)s 4376(simple)s 5092(transformation)s 6578(on)s 6897(the)s
7268(parse)s 7851(tree;)s 8343(the)s 8714(real)s 0 9780(issue)m
544(is)s 764(ho)s 6(w)k 1235(to)s 1484(describe)s
2346(the)s 2704(v)s 6(arious)k 3463(styles:)s 4183(ragged)s
4902(right,)s 5470(adjusted,)s 6384(outdented,)s 7445(and)s 7859(so)s
8135(on.)s 8549(Their)s 0 9492(di)m 6(v)k 3(ersity)k
874(suggests)s 1729(that)s 2140(the)s 3(y)k 2596(should)s
3286(someho)s 6(w)k 4245(be)s 4519(de\207ned)s 5275(using)s
5840(more)s 6380(basic)s 6917(features;)s 7777(b)s 4(ut)k
8132(then)s 8593(there)s 0 9204(are)m 367(algorithms)s 1461(for)s
1820(high-quality)s 3064(paragraph)s 4098(breaking,)s 5063(which)s 5726(presumably)s
6917(must)s 7463(be)s 7766(b)s 4(uilt-in.)k 8650(This)s
0 8916(dilemma)m 915(w)s 2(as)k 1355(not)s 1741(clearly)s
2463(grasped)s 3285(by)s 3598(the)s 3966(author)s 4656(in)s
4919(1985,)s 5525(and)s 5949(he)s 6250(included)s 7152(a)s
7337(b)s 4(uilt-in)k 8113(paragraph)s 0 8628(break)m 2(er)k 9(,)k
818(with)s 1306(the)s 220 fnt6 1660 8625(@Break)m 240 fnt1
2522 8628(operator)m 3384(selecting)s 4292(from)s 4822(a)s 4995(\207x)s 3(ed)k
5535(set)s 5866(of)s 6143(styles.)s 6857(A)s 7093(much)s
7688(better)s 8298(solution)s 0 8340(based)m 603(on)s 900(g)s 1(alle)k 3(ys)k
1624(will)s 2050(be)s 2332(gi)s 6(v)k 3(en)k
2912(in)s 3155(Section)s 3929(5.5,)s 4336(b)s 4(ut,)k
4745(re)s 3(grettably)k 15(,)k 5868(it)s 6060(is)s
6270(not)s 6636(implemented.)s 240 fnt2 0 7547(3.)m 291(De\207nitions)s

[ /Dest /LOUT16_594_s3_0_1 /DEST pdfmark
240 fnt1 480 7116(The)m 936(need)s 1474(to)s 1741(pro)s 3(vide)k
2554(a)s 2748(means)s 3438(of)s 3737(packaging)s 4803(useful)s
5470(pieces)s 6146(of)s 6445(code)s 6982(for)s 7348(easy)s
7855(repeated)s 8751(use)s 0 6828(w)m 2(as)k 440(recognised)s
1554(in)s 1816(the)s 2184(v)s 3(ery)k 2679(earliest)s
3447(programming)s 4822(languages.)s 5962(This)s 6458(need)s 6987(is)s
7217(e)s 6(v)k 3(en)k 7736(more)s 8303(acute)s
8883(in)s 0 6540(document)m 1004(formatting,)s 2118(if)s 2335(that)s
2752(is)s 2962(possible,)s 3852(because)s 4664(the)s 5012(majority)s
5874(of)s 6145(users)s 6686(are)s 7033(not)s 7398(programmers)s
8722(and)s 0 6252(do)m 293(not)s 659(understand)s 1767(the)s
2115(code)s 2623(the)s 3(y)k 3086(in)s 9(v)k 4(ok)k 2(e.)k
240 fnt2 0 5603(3.1.)m 471(Operators)s 
[ /Dest /LOUToperators /DEST pdfmark
240 fnt1 480 5126(It)m
680(is)s 885(e)s 6(vident)k 1637(from)s 2156(the)s
2498(e)s 3(xample)k 3356(of)s 3621(Eqn)s 4059(that)s
4471(user)s 4(-de\207ned)k 5702(operators)s 6636(are)s 6978(needed)s
7708(that)s 8121(mimic)s 8778(the)s 0 4838(primiti)m 6(v)k 3(e)k
929(ones)s 1426(in)s 1677(taking)s 2335(objects)s 3071(as)s
3328(parameters)s 4434(and)s 4845(returning)s 5781(objects)s 6517(as)s
6774(results.)s 7569(F)s 3(or)k 7965(e)s 3(xample,)k
8887(to)s 0 4550(de\207ne)m 641(a)s 807(superscript)s 1915(operator)s
2771(so)s 3037(that)s 220 fnt6 480 4056(2 sup n)m 240 fnt1
0 3531(appears)m 781(as)s 168 fnt1 1145 3647(n)m 240 fnt5
1031 3525(2)m 240 fnt1 1227 3531(,)m 1334(the)s 1682(follo)s 6(wing)k
2659(operator)s 3515(de\207nition)s 4489(may)s 4955(be)s 5237(used:)s
220 fnt6 480 3032(def sup)m 480 2744(    precedence 50)m 480 2456(    associativity r)m -3(ight)k
480 2168(    left x)m 480 1880(    r)m -3(ight y)k 480 1592({)m 480 1304(    @OneRo)m 3(w {  |  {-2p @F)k 6(ont y}  ^/0.5fk  x  })k
480 1016(})m 240 fnt1 0 520(The)m 220 fnt6 481 517(sup)m
240 fnt1 940 520(operator)m 1850(has)s 2273(precedence)s 3458(50,)s
3858(is)s 4122(right)s 4686(associati)s 6(v)k 3(e,)k
5886(tak)s 2(es)k 6479(tw)s 2(o)k 6943(objects)s
7724(as)s 8028(parameters)s 0 232(passed)m 720(on)s 1041(the)s
1413(left)s 1814(and)s 2242(right,)s 2825(and)s 3253(returns)s
3991(the)s 4363(object)s 5031(between)s 5910(braces)s 6595(as)s
6869(result.)s 7587(This)s 8087(object)s 8756(has)s 
grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 15 16
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Times-Italic
%%+ font Helvetica
%%+ font Times-Bold
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
%%IncludeResource: font Times-Bold
/Times-Boldfnt2 vec2 /Times-Bold LoutRecode
/fnt2 { /Times-Boldfnt2 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5709 -1582(-)m 5837(15)s 6123(-)s 9066 13413 0 13304 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore
0 13250(the)m 348(structure)s
gsave
608 12769 translate
280 fnt4 128 191 0 123 280 288 70 LoutGraphic
gsave
grestore save gsave 200 dict begin lfigdict begin
grestore
128 191 0 123 280 288 70 0 0 LoutGr2
/lfiglightgrey [ lfigbox ] gsave lfigpaintpath grestore
0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
128 191 0 123 280 288 70 0 0 LoutGr2

0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigdashed [ -0.3 cm ymark xsize ymark 0.3 cm 0 lfigpadd
[]
xmark -0.3 cm xmark ysize 0 0.3 cm lfigpadd ] lfigdopath
pop pop
grestore
260 fnt6 0 56(y)m 
grestore

grestore
end end restore
grestore
gsave
480 12634 translate
280 fnt4 128 135 0 67 280 288 70 LoutGraphic
gsave
grestore save gsave 200 dict begin lfigdict begin
grestore
128 135 0 67 280 288 70 0 0 LoutGr2
/lfiglightgrey [ lfigbox ] gsave lfigpaintpath grestore
0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
128 135 0 67 280 288 70 0 0 LoutGr2

0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigdashed [ -0.3 cm ymark xsize ymark 0.3 cm 0 lfigpadd
[]
xmark -0.3 cm xmark ysize 0 0.3 cm lfigpadd ] lfigdopath
pop pop
grestore
260 fnt6 0 0(x)m 
grestore

grestore
end end restore
grestore
0 12183(b)m 4(ut)k
381(with)s 882(the)s 1249(\207rst)s 1699(ro)s 6(w)k
2138(mark)s 2709(hidden)s 3437(by)s 3751(the)s 220 fnt6
4118 12180(@OneRo)m 3(w)k 240 fnt1 5268 12183(operator)m 9(,)k
6181(and)s 220 fnt6 6604 12180(y)m 240 fnt1 6791 12183(tw)m 2(o)k
7220(points)s 7875(smaller)s 8657(than)s 0 11895(it)m 220(w)s 2(ould)k
904(otherwise)s 1917(ha)s 4(v)k 3(e)k 2447(been.)s
3091(The)s 3548(length)s 220 fnt6 4231 11892(0.5f)m 240 fnt1
4683 11895(speci\207es)m 5585(half)s 6057(the)s 6433(current)s 7198(font)s
7671(size;)s 8243(Figure)s 8952(2)s 0 11607(describes)m 936(the)s
220 fnt6 1280 11604(k)m 240 fnt1 1446 11607(g)m 1(ap)k
1840(mode.)s 2532(In)s 2784(the)s 3128(Eq)s 3448(equation)s
4325(formatting)s 5382(package)s 6218([10])s 6651(the)s 6995(equation)s
7872(as)s 8118(a)s 8280(whole)s 8916(is)s 0 11319(set)m
331(in)s 580(italic)s 1116(font,)s 1614(and)s 220 fnt6
2024 11316(2)m 240 fnt1 2203 11319(is)m 2419(an)s 2709(identi\207er)s
3637(whose)s 4311(body)s 4852(contains)s 5706(a)s 5879(font)s
6330(change)s 7070(back)s 7590(to)s 7835(Roman.)s 8698(The)s
0 11031(digits)m 220 fnt6 586 11028(0)m 240 fnt1 765 11031(to)m
220 fnt6 1009 11028(9)m 240 fnt1 1186 11031(are)m 1538(classed)s
2291(as)s 2546(punctuation)s 3737(characters,)s 4816(permitting)s 220 fnt6
5869 11028(234)m 240 fnt1 6293 11031(for)m 6635(e)s 3(xample)k
7503(to)s 7747(be)s 8034(interpreted)s 0 10743(as)m 250(a)s
416(sequence)s 1349(of)s 1620(three)s 2153(identi\207ers.)s 480 10369(These)m
1152(de\207nitions)s 2258(are)s 2650(easily)s 3307(implemented)s 4658(by)s
4997(a)s 5208(standard)s 6122(symbol)s 6927(table)s 7492(and)s
7941(an)s 8270(operator)s 0 10081(precedence)m 1155(parser)s 13(.)k
1914(Algol)s 2539(block)s 3157(structure)s 4073(with)s 4580(the)s
4953(usual)s 5538(scope)s 6164(rules)s 6704(w)s 2(as)k
7150(adopted)s 7991(as)s 8266(a)s 8457(matter)s 0 9793(of)m
271(course.)s 480 9419(Operators)m 1481(are)s 1837(limited)s 2580(to)s
2828(at)s 3069(most)s 3603(tw)s 2(o)k 4022(parameters,)s
5185(left)s 5571(and)s 5984(right,)s 6551(and)s 6964(the)s
7321(parameters)s 8428(cannot)s 0 9131(be)m 282(gi)s 6(v)k 3(en)k
862(def)s 2(ault)k 1583(v)s 6(alues.)k 240 fnt4
2352 9133(Named)m 240 fnt1 3097 9131(parameters)m 4195(solv)s 3(e)k
4753(both)s 5236(problems:)s 220 fnt6 480 8630(def @Pref)m 6(ace)k
480 8342(    named @T)m 26(ag {})k 480 8054(    named @Title { Pref)m 6(ace })k 480 7766(    r)m -3(ight @Body)k
480 7478({)m 480 7190(    Bold @F)m 6(ont @Title)k 480 6902(    //0.3v  @Body)m 480 6614(})m
240 fnt1 0 6120(The)m 452(def)s 2(ault)k 1197(v)s 6(alue)k
1789(appears)s 2594(just)s 3023(after)s 3543(the)s 3915(parameter')s 13(s)k
5103(declaration,)s 6295(between)s 7173(braces.)s 7972(In)s 9(v)k 4(ocations)k
0 5832(ha)m 4(v)k 3(e)k 501(a)s 667(natural)s
1385(syntax:)s 220 fnt6 480 5331(@Pref)m 6(ace)k 480 5043(    @Title { About this book })m
480 4755({)m 480 4467(    F)m 6(e)k 4(w obser)k -6(v)k 5(ers w)k 2(ould ha)k 4(v)k 5(e supposed in 1984, that ...)k
480 4179(})m 240 fnt1 0 3685(with)m 481(the)s 827(actual)s
1450(named)s 2145(parameters)s 3241(follo)s 6(wing)k 4216(directly)s
4998(after)s 5492(the)s 5838(operator)s 9(,)k 6731(before)s
7395(an)s 3(y)k 7790(right)s 8299(parame)s 8998(-)s
0 3397(ter)m 13(.)k 400(In)s 653(this)s 1046(e)s 3(xample,)k
220 fnt6 1958 3394(@T)m 26(ag)k 240 fnt1 2578 3397(will)m
3001(recei)s 6(v)k 3(e)k 3735(its)s 4008(def)s 2(ault)k
4726(v)s 6(alue,)k 5342(and)s 5744(a)s 5907(less)s
6313(e)s 3(xpert)k 6965(user)s 7420(could)s 8007(safely)s
8628(omit)s 0 3109(the)m 220 fnt6 348 3106(@Title)m 240 fnt1
1036 3109(parameter)m 2050(as)s 2300(well.)s 480 2735(Lout)m 1007(permits)s
1790(named)s 2502(parameters)s 3616(to)s 3870(ha)s 4(v)k 3(e)k
4387(parameters,)s 5557(a)s 5739(feature)s 6472(with)s 6970(applications)s
8192(to)s 8447(biblio)s 8998(-)s 0 2447(graphic)m 781(databases,)s
1816(running)s 2626(headers,)s 3475(and)s 3891(other)s 4454(places)s
5114(where)s 5766(a)s 5944(format)s 6652(has)s 7034(to)s
7285(be)s 7579(supplied)s 8460(before)s 0 2159(content)m 760(is)s
965(kno)s 6(wn.)k 1771(One)s 2221(could)s 2806(go)s
3094(further)s 3798(and)s 4197(pro)s 3(vide)k 4976(a)s
5137(complete)s 6064(lambda)s 6823(calculus,)s 7708(with)s 8185(functions)s
0 1871(as)m 250(\207rst-)s 689(class)s 1204(objects,)s 1988(pro)s 3(vided)k
2894(care)s 3347(w)s 2(as)k 3768(tak)s 2(en)k
4341(not)s 4707(to)s 4946(intimidate)s 5970(the)s 6318(non-)s
6746(e)s 3(xpert)k 7400(user)s 13(.)k 240 fnt2
0 1222(3.2.)m 471(Recursion)s 1563(and)s 2004(page)s 2539(lay)s 6(out)k

[ /Dest /LOUTrecursion /DEST pdfmark
240 fnt1 480 745(Design)m 1302(and)s 1794(implementation)s 3439(should)s
4223(proceed)s 5126(together)s 6057(in)s 6387(e)s 3(xploratory)k
7628(projects,)s 8579(since)s 0 457(otherwise)m 988(the)s 1340(design)s
2025(too)s 2388(easily)s 3003(becomes)s 3894(unrealistic.)s 5056(Sometimes)s
6173(the)s 6524(implementation)s 8085(does)s 8579(more)s 
grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 16 17
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Helvetica
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5705 -1581(-)m 5833(16)s 6126(-)s 9066 13414 0 13305 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore
0 13251(than)m 469(its)s
745(designer)s 1615(intended.)s 2603(The)s 3031(author)s 3702(wrote)s
4302(the)s 4650(follo)s 6(wing)k 5627(purely)s 6292(as)s
6542(a)s 6708(testing)s 7398(scaf)s 6(fold:)k 220 fnt6
480 12750(def @P)m 8(age r)k -3(ight x)k 480 12462({)m 480 12174(    8i @Wide 11i @High)m
480 11886(    {)m 480 11598(        //1i  ||1i  x  ||1i)m 480 11310(        //1i)m 480 11022(    })m 480 10734(})m
240 fnt1 0 10240(Only)m 518(afterw)s 2(ards)k 1558(did)s
1906(he)s 2172(realize)s 2848(its)s 3108(signi\207cance:)s 4400(the)s
4732(concept)s 5521(of)s 5776(a)s 5926(page)s 6418(had)s
6807(been)s 7300(de\207ned)s 8047(outside)s 8778(the)s 0 9952(implementation,)m
1619(remo)s 3(ving)k 2598(the)s 2959(need)s 3481(for)s
3831(commands)s 4932(for)s 5282(setting)s 5984(page)s 6505(width)s
7119(and)s 7535(height,)s 8253(mar)s 4(gins,)k 0 9664(and)m
404(so)s 670(on.)s 480 9290(De\207ning)m 1393(a)s 1582(sequence)s
2538(of)s 2831(pages)s 3450(is)s 3683(harder)s 9(,)k
4414(since)s 4983(their)s 5503(number)s 6317(is)s 6550(not)s
6938(kno)s 6(wn)k 7665(in)s 7931(adv)s 6(ance.)k
8896(A)s 0 9002(simple)m 693(v)s 3(ersion)k 1451(of)s
1722(this)s 2118(same)s 2665(problem)s 3522(is)s 3732(af)s 6(forded)k
4593(by)s 4887(the)s 5235(leaders)s 5962(found)s 6579(in)s
6822(tables)s 7430(of)s 7701(contents:)s 480 8497(Chapter)m 1297(7)s
1525(..)s 1809(..)s 2093(..)s 2377(..)s 2661(..)s
2945(..)s 3229(..)s 3513(..)s 3797(..)s 4081(..)s
4365(..)s 4649(..)s 4933(..)s 5217(..)s 5501(..)s
5785(..)s 6009(53)s 0 7994(This)m 476(seemed)s 1251(to)s
1490(require)s 2222(recursion,)s 3218(speci\207cally)s 4360(the)s 4708(de\207nition)s
220 fnt6 480 7493(def @Leaders { ..)m 13(   @Leaders })k 240 fnt1 0 6999(Note)m
535(that)s 968(both)s 220 fnt6 1465 6996(..)m 240 fnt1
1643 6999(and)m 220 fnt6 2061 6996(@Leaders)m 240 fnt1 3145 6999(are)m
3506(objects,)s 4305(so)s 4585(the)s 4948(tw)s 2(o)k
5372(spaces)s 6062(separating)s 7111(them)s 7664(are)s 8026(signi\207cant.)s
0 6711(No)m 361(base)s 858(case)s 1341(is)s 1567(gi)s 6(v)k 3(en,)k
2213(and)s 2633(indeed)s 3345(we)s 3696(ha)s 4(v)k 3(e)k
4213(no)s 4522(boolean)s 5353(or)s 5628(conditional)s 6775(operators)s
7731(with)s 8229(which)s 8887(to)s 0 6423(e)m 3(xpress)k
757(it;)s 993(b)s 4(ut)k 1346(we)s 1673(can)s
2053(adopt)s 2637(the)s 2977(implicit)s 3770(base)s 4243(`if)s
4530(space)s 5109(is)s 5311(not)s 5668(suf\207cient,)s 6656(delete)s
220 fnt6 7273 6420(@Leaders)m 240 fnt1 8334 6423(and)m 8729(an)s 3(y)k
0 6135(preceding)m 996(space'.)s 1770(Then)s 2319(the)s 2667(e)s 3(xpression)k
220 fnt6 480 5634(4i @Wide { Chapter 7  @Leaders  53 })m 240 fnt1 0 5138(will)m 417(produce)s
1234(the)s 1572(object)s 2206(sho)s 6(wn)k 2873(abo)s 3(v)k 3(e.)k
3593(It)s 3788(is)s 3988(hard)s 4461(to)s 4691(see)s
5042(ho)s 6(w)k 5493(this)s 5879(base)s 6350(could)s
6930(be)s 7202(made)s 7766(e)s 3(xplicit,)k 8576(with)s
8998(-)s 0 4850(out)m 348(violating)s 1232(the)s 1561(general)s
2301(principle)s 3187(of)s 3439(k)s 2(eeping)k 4230(all)s
4504(size)s 4912(information)s 6079(internal.)s 6953(In)s 7190(the)s
7519(implementation,)s 220 fnt6 0 4559(@Leaders)m 240 fnt1 1071 4562(remains)m
1881(une)s 3(xpanded)k 3097(while)s 3686(sizes)s 4204(are)s
4554(being)s 5142(calculated;)s 6224(then)s 6696(it)s 6891(is)s
7103(treated)s 7813(similarly)s 8718(to)s 8960(a)s 0 4274(recepti)m 6(v)k 3(e)k
922(symbol,)s 1734(with)s 2216(its)s 2492(body)s 3026(as)s
3276(an)s 3559(incoming)s 4516(g)s 1(alle)k 3(y)k
5150(\(Section)s 6003(5.2\).)s 480 3900(W)m 9(ith)k 1014(this)s
1418(settled,)s 2156(it)s 2356(is)s 2574(no)s 6(w)k
3044(clear)s 3575(ho)s 6(w)k 4044(to)s 4291(de\207ne)s
4940(a)s 5115(document)s 6127(which)s 6777(is)s 6995(a)s
7169(numbered)s 8193(sequence)s 0 3612(of)m 271(pages.)s 980(Let)s
220 fnt6 1358 3609(@Ne)m 6(xt)k 240 fnt1 2082 3612(be)m
2364(a)s 2530(pre\207x)s 3143(operator)s 3999(which)s 4641(returns)s
5355(its)s 5631(parameter)s 6645(plus)s 7095(one.)s 7605(Then)s
220 fnt6 480 3111(def @P)m 8(ageList)k 480 2823(    r)m -3(ight @P)k 8(ageNum)k
480 2535({)m 480 2247(    @P)m 8(age {)k 480 1959(          |0.5r)m -8(t - @P)k 8(ageNum -)k
480 1671(          //1v   @T)m 26(e)k 6(xtPlace)k 480 1383(          //1r)m -8(t  @F)k 6(ootSect)k
480 1095(    })m 480 807(    //)m 480 519(    @P)m 8(ageList @Ne)k 6(xt @P)k 8(ageNum)k
480 231(})m 
grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 17 18
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Helvetica
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5708 -1579(-)m 5836(17)s 6124(-)s 9066 13418 0 13418 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore
0 13255(when)m 576(in)s 9(v)k 4(ok)k 2(ed)k
1391(in)s 1634(the)s 1982(e)s 3(xpression)k 220 fnt6
3059 13252(@P)m 8(ageList 1)k 240 fnt1 4267 13255(,)m 4374(has)s
4744(for)s 5082(its)s 5358(result)s 5948(the)s 6296(potentially)s
7372(in\207nite)s 8105(object)s 1927 2494 0 2494 240 288 60 480 10421 LoutGr2
0 0 moveto xsize 0 lineto xsize ysize lineto
0 ysize lineto closepath stroke
grestore
160 fnt1 845 2216(-)m 931(1)s
1035(-)s 140 fnt6 170 2000(@T)m 16(e)k 4(xtPlace)k
170 173(@F)m 4(ootSect)k 
grestore
1927 2494 0 2494 240 288 60 480 7927 LoutGr2
0 0 moveto xsize 0 lineto xsize ysize lineto
0 ysize lineto closepath stroke
grestore
160 fnt1 839 2216(-)m 925(2)s
1041(-)s 140 fnt6 170 2000(@T)m 16(e)k 4(xtPlace)k
170 173(@F)m 4(ootSect)k 
grestore
140 fnt6 480 7712(@P)m 5(ageList 3)k
240 fnt1 0 7230(Similarly)m 15(,)k 980(we)s 1315(may)s
1781(de\207ne)s 220 fnt6 2422 7227(@F)m 6(ootSect)k 240 fnt1
3573 7230(lik)m 2(e)k 3985(this:)s 220 fnt6 480 6729(def @F)m 6(ootSect)k
480 6441({)m 480 6153(    def @F)m 6(ootList)k 480 5865(        r)m -3(ight @Num)k
480 5577(    {)m 480 5289(        @F)m 6(ootPlace)k 480 5001(        //1v)m 480 4713(        @F)m 6(ootList @Ne)k 6(xt @Num)k
480 4425(    })m 480 3849(    1i @Wide @HLine)m 480 3561(    //1v)m 480 3273(    @F)m 6(ootList 1)k
480 2985(})m 240 fnt1 0 2491(so)m 266(that)s 684(an)s
967(in)s 9(v)k 4(ocation)k 2021(of)s 220 fnt6
2292 2488(@F)m 6(ootSect)k 240 fnt1 3443 2491(produces)m gsave
480 2151 translate
220 fnt6 1440 0 0 0 220 288 61 LoutGraphic
gsave
0 0 moveto xsize 0 lineto stroke
grestore

grestore
220 fnt6
480 1806(@F)m 6(ootPlace)k 480 1518(@F)m 6(ootPlace)k 480 1230(@F)m 6(ootPlace)k
480 942(...)m 
grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 18 19
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Helvetica
%%+ font Times-Bold
%%+ font Times-Italic
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
%%IncludeResource: font Times-Bold
/Times-Boldfnt2 vec2 /Times-Bold LoutRecode
/fnt2 { /Times-Boldfnt2 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5708 -1579(-)m 5836(18)s 6123(-)s 9066 13416 0 13307 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore
0 13253(The)m 476(e)s 3(xpansion)k
1550(process)s 2367(is)s 2626(v)s 3(ery)k 3150(similar)s
3921(to)s 4209(a)s 4424(BNF)s 4997(deri)s 6(v)k 6(ation,)k
6109(and)s 6562(w)s 2(ould)k 7266(be)s 7597(attempted)s
8646(only)s 0 12965(on)m 297(demand.)s 480 12591(Clearly)m 15(,)k
1276(deciding)s 2154(which)s 2797(e)s 3(xpansions)k 3910(to)s
4150(tak)s 2(e)k 4603(and)s 5008(replacing)s 220 fnt6
5951 12588(@T)m 26(e)k 6(xtPlace)k 240 fnt1 7170 12591(and)m
220 fnt6 7575 12588(@F)m 6(ootPlace)k 240 fnt1 8832 12591(by)m
0 12303(the)m 338(appropriate)s 1471(actual)s 2085(te)s 3(xt)k
2489(will)s 2904(not)s 3259(be)s 3530(easy;)s 4056(this)s
4441(is)s 4640(the)s 4977(subject)s 5703(of)s 5963(Section)s
6726(5.1.)s 7179(The)s 7596(important)s 8574(point)s 0 12015(for)m
331(no)s 6(w)k 784(is)s 986(that)s 1397(we)s
1724(ha)s 4(v)k 3(e)k 2217(here)s 2677(a)s
2835(v)s 3(ery)k 3303(simple)s 3989(and)s 4385(\210e)s 3(xible)k
5147(method)s 5916(of)s 6179(specifying)s 7220(the)s 7561(layout)s
8211(of)s 8474(pages,)s 0 11727(which)m 642(requires)s 1462(no)s
1755(specialized)s 2874(language)s 3794(features.)s 240 fnt2 0 11079(3.3.)m
471(Modules)s 
[ /Dest /LOUTmodules /DEST pdfmark
240 fnt1 480 10648(It)m 679(is)s 882(well)s
1342(accepted)s 2229(that)s 2641(the)s 2982(visibility)s 3879(of)s
4143(symbols)s 4986(is)s 5189(not)s 5549(adequately)s 6632(controlled)s
7653(by)s 7940(Algol)s 8533(block)s 0 10360(structure.)m 999(The)s
1427(author)s 2098(is)s 2308(a)s 3(w)k 2(are)k
2929(of)s 3200(se)s 6(v)k 3(eral)k 3922(major)s
4539(problems)s 5480(of)s 5751(this)s 6147(kind)s 6631(in)s
6874(document)s 7878(formatting.)s 480 9986(One)m 976(problem)s 1874(is)s
2126(that)s 2585(some)s 3187(symbols)s 4078(should)s 4816(be)s
5139(visible)s 5874(only)s 6395(within)s 7104(restricted)s 8091(parts)s
8647(of)s 8960(a)s 0 9698(document.)m 1108(F)s 3(or)k
1497(e)s 3(xample,)k 2411(we)s 2746(naturally)s 3649(e)s 3(xpect)k
4330(equation)s 5211(formatting)s 6272(to)s 6511(be)s 6793(accomplished)s
8166(lik)s 2(e)k 8578(this:)s 220 fnt6 480 9201(surrounding te)m 6(xt)k
480 8913(@Eq { {x sup 2  +  1} o)m 3(v)k 5(er 4 })k 480 8625(surrounding te)m 6(xt)k
240 fnt1 0 8126(with)m 482(the)s 830(symbols)s 220 fnt6
1679 8123(sup)m 240 fnt1 2025 8126(,)m 220 fnt6 2132 8123(o)m 3(v)k 5(er)k
240 fnt1 2551 8126(,)m 2658(etc.,)s 3103(visible)s 3796(only)s
4276(within)s 4944(the)s 5292(equation,)s 6223(not)s 6589(in)s
6832(the)s 7180(surrounding)s 8390(te)s 3(xt.)k 480 7752(It)m
695(seems)s 1341(natural)s 2069(to)s 2319(de\207ne)s 2970(these)s
3528(symbols)s 4387(within)s 220 fnt6 5066 7749(@Eq)m 240 fnt1
5544 7752(,)m 5661(since)s 6219(the)s 3(y)k 6692(are)s
7050(local)s 7579(to)s 7829(equations.)s 8921(It)s 0 7464(only)m
494(remains)s 1316(then)s 1799(to)s 2053(decree)s 2746(that)s
3179(symbols)s 4043(local)s 4576(to)s 220 fnt6 4830 7461(@Eq)m
240 fnt1 5382 7464(are)m 5744(to)s 5998(be)s 6294(visible)s
7002(within)s 7684(its)s 7975(actual)s 8615(right)s 0 7176(parameter)m 9(,)k
1052(and)s 1456(this)s 1852(is)s 2062(done)s 2584(by)s
2878(replacing)s 3820(the)s 4168(right)s 4679(formal)s 5370(parameter)s
6384(with)s 6866(a)s 240 fnt4 7032 7178(body)m 240 fnt1
7554 7176(parameter:)m 220 fnt6 480 6690(e)m 6(xpor)k -8(t sup o)k 3(v)k 5(er)k
480 6402(def @Eq)m 480 6114(    body @Body)m 480 5826({)m 480 5538(    def sup ...)m 480 5250(    def o)m 3(v)k 5(er ...)k
480 4674(    Slope @F)m 6(ont @Body)k 480 4386(})m 240 fnt1 0 3892(The)m
220 fnt6 426 3889(e)m 6(xpor)k -8(t)k 240 fnt1
1092 3892(clause)m 1743(lists)s 2176(the)s 2522(identi\207ers)s 3526(which)s
4166(are)s 4511(permitted)s 5482(to)s 5719(be)s 5999(visible)s
6690(outside)s 7435(their)s 7930(usual)s 8488(range,)s 0 3604(the)m
359(body)s 905(of)s 220 fnt6 1188 3601(@Eq)m 240 fnt1
1666 3604(;)m 1790(and)s 2206(the)s 220 fnt6 2566 3601(body)m
240 fnt1 3112 3604(declaration)m 4241(imports)s 5034(them)s 5584(into)s
6021(\(mak)s 2(es)k 6772(them)s 7322(visible)s 8027(within\))s
8778(the)s 0 3316(actual)m 614(right)s 1114(parameter)s 2117(of)s
2376(each)s 2860(in)s 9(v)k 4(ocation)k 3903(of)s
220 fnt6 4162 3313(@Eq)m 240 fnt1 4640 3316(.)m 4793(This)s
5258(arrangement)s 6500(has)s 6859(pro)s 3(v)k 3(en)k
7564(v)s 3(ery)k 8028(con)s 9(v)k 3(enient)k
0 3028(for)m 338(de\207ning)s 1176(a)s 1342(v)s 6(ariety)k
2053(of)s 2324(special-purpose)s 3880(packages.)s 480 2654(Another)m 1361(problem)s
2256(arises)s 2888(when)s 3502(global)s 4193(symbols,)s 5136(such)s
5669(as)s 5957(the)s 6343(ones)s 6871(used)s 7406(for)s
7782(headings)s 8722(and)s 0 2366(paragraph)m 1034(separators,)s 2130(call)s
2550(on)s 2868(v)s 6(alues)k 3545(that)s 3984(the)s
4353(non-e)s 3(xpert)k 5468(user)s 5947(will)s 6394(need)s
6925(to)s 7185(modify)s 15(,)k 7989(such)s 8506(as)s
8778(the)s 0 2078(initial)m 605(font)s 1044(or)s 1297(paragraph)s
2303(indent.)s 3059(These)s 3680(v)s 6(alues)k 4329(are)s
4670(lik)s 2(e)k 5076(parameters)s 6167(of)s 6432(the)s
6774(document)s 7771(as)s 8015(a)s 8175(whole,)s 8860(so)s
0 1790(it)m 192(is)s 402(natural)s 1120(to)s 1359(try)s
1678(this:)s 
grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 19 20
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Helvetica
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5706 -1579(-)m 5834(19)s 6125(-)s 9066 13414 0 13310 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore
220 fnt6 480 13253(e)m 6(xpor)k -8(t @Heading @PP ...)k
480 12965(def @BookLa)m 6(y)k 4(out)k 480 12677(    named @InitialF)m 6(ont { )k 11(Times Base 12p })k
480 12389(    named @InitialBreak { adjust 14p })m 480 12101(    named @ColumnWidth { 6i })m 480 11813(    ...)m 480 11525({)m 480 11237(    def @Heading ...)m
480 10949(    def @PP ...)m 480 10661(})m 240 fnt1 0 10167(No)m 6(w)k
220 fnt6 579 10164(@Heading)m 240 fnt1 1732 10167(and)m 220 fnt6
2202 10164(@PP)m 240 fnt1 2833 10167(may)m 3365(in)s 9(v)k 4(ok)k 2(e)k
220 fnt6 4124 10164(@InitialF)m 6(ont)k 240 fnt1 5411 10167(and)m
5881(the)s 6295(other)s 6911(parameters.)s 8188(T)s 19(o)k
8554(mak)s 2(e)k 220 fnt6 0 9876(@Heading)m 240 fnt1
1100 9879(and)m 220 fnt6 1517 9876(@PP)m 240 fnt1 2096 9879(visible)m
2802(throughout)s 3926(the)s 4287(document,)s 5352(we)s 5700(need)s
6223(only)s 6716(add)s 7133(a)s 7312(body)s 7859(parameter)s
8887(to)s 220 fnt6 0 9588(@BookLa)m 6(y)k 4(out)k
240 fnt1 1428 9591(and)m 1832(present)s 2582(the)s 2930(entire)s
3529(document)s 4533(as)s 220 fnt6 480 9090(@BookLa)m 6(y)k 4(out)k
480 8802(    @InitialF)m 6(ont { Helv)k 5(etica Base 10p })k 480 8514(    @InitialBreak { adjust 12p })m 480 8226({)m
480 7938(    )m 11(The document.)k 480 7650(})m 240 fnt1 0 7156(b)m 4(ut)k
383(for)s 742(practical)s 1639(reasons)s 2429(gi)s 6(v)k 3(en)k
3030(belo)s 6(w)k 3684(we)s 4040(prefer)s 4691(not)s
5078(to)s 5338(enclose)s 6132(the)s 6502(entire)s 7122(document)s
8147(in)s 8412(braces.)s 0 6868(Instead,)m 797(we)s 1132(write)s
220 fnt6 480 6386(@Use { @BookLa)m 6(y)k 4(out)k 480 6098(    @InitialF)m 6(ont { Helv)k 5(etica Base 10p })k
480 5810(    @InitialBreak { adjust 12p })m 480 5522(})m 480 5234(The document.)m 240 fnt1 0 4780(which)m
643(has)s 1015(the)s 1365(same)s 1914(ef)s 6(fect:)k
220 fnt6 2617 4777(@Use)m 240 fnt1 3284 4780(mak)m 2(es)k
3946(the)s 4296(e)s 3(xported)k 5190(symbols)s 6040(of)s
220 fnt6 6313 4777(@BookLa)m 6(y)k 4(out)k 240 fnt1
7743 4780(visible)m 8438(for)s 8778(the)s 0 4492(remainder)m 1028(of)s
1299(the)s 1647(document,)s 2698(and)s 3102(is)s 3312(permitted)s
4285(only)s 4765(at)s 4997(the)s 5345(be)s 3(ginning.)k
480 4118(The)m 925(third)s 1451(feature)s 2187(that)s 2622(af)s 6(fects)k
3319(visibility)s 15(,)k 4278(and)s 4699(which)s 5359(will)s
5802(pro)s 3(v)k 3(e)k 6414(useful)s 7071(for)s
7426(cross)s 7986(referencing)s 0 3830(\(Section)m 851(6.1\),)s 1335(is)s
1543(the)s 220 fnt6 1889 3827(@Open)m 240 fnt1 2693 3830(symbol.)m
3560(It)s 3763(mak)s 2(es)k 4421(the)s 4767(e)s 3(xported)k
5657(symbols)s 6504(of)s 6773(its)s 7047(left)s 7422(parameter)s
8433(visible)s 0 3542(within)m 668(its)s 944(right)s 1455(parameter)s 9(,)k
2507(and)s 2911(is)s 3121(therefore)s 4038(similar)s 4760(to)s
4999(the)s 5347(P)s 3(ascal)k 220 fnt6 6009 3539(with)m
240 fnt1 6444 3542(statement.)m 480 3168(It)m 698(could)s 1301(be)s
1596(ar)s 4(gued)k 2314(that)s 2745(Lout)s 3270(is)s
3493(o)s 3(v)k 3(er)k 4(-supplied)k 4869(with)s
5364(these)s 5924(visibility)s 6840(modifying)s 7903(features:)s 8778(the)s
0 2880(body)m 544(parameter)s 9(,)k 220 fnt6 1606 2877(@Use)m
240 fnt1 2282 2880(and)m 220 fnt6 2696 2877(@Open)m 240 fnt1
3513 2880(do)m 3816(not)s 4193(seem)s 4754(suf\207ciently)s 5894(dif)s 6(ferent)k
6779(from)s 7314(each)s 7819(another)s 13(.)k 8698(The)s
220 fnt6 0 2589(@Open)m 240 fnt1 806 2592(symbol)m 1566(is)s
1776(the)s 2124(most)s 2649(general,)s 3459(being)s 4044(capable)s
4830(of)s 5101(replacing)s 6043(the)s 6391(other)s 6942(tw)s 2(o.)k
7463(F)s 3(or)k 7852(e)s 3(xample,)k 220 fnt6
480 2091(@Use { x })m 480 1803(@Use { y })m 480 1515(Body of document)m 240 fnt1 0 1017(can)m
389(be)s 671(replaced)s 1538(by)s 
grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 20 21
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Helvetica
%%+ font Times-Bold
%%+ font Times-Italic
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
%%IncludeResource: font Times-Bold
/Times-Boldfnt2 vec2 /Times-Bold LoutRecode
/fnt2 { /Times-Boldfnt2 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5704 -1579(-)m 5832(20)s 6127(-)s 9066 13416 0 13312 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore
220 fnt6 480 13255(x @Open {)m
480 12967(y @Open {)m 480 12679(Body of document)m 480 12391(}})m 240 fnt1 0 11897(and,)m
453(taking)s 1104(the)s 220 fnt6 1452 11894(@Eq)m 240 fnt1
1990 11897(symbol)m 2750(abo)s 3(v)k 3(e)k 3372(as)s
3622(e)s 3(xample,)k 4536(we)s 4871(could)s 5461(eliminate)s
6405(its)s 6681(body)s 7215(parameter)s 9(,)k 8267(add)s
220 fnt6 480 11396(def @Body r)m -3(ight x { Slope @F)k 6(ont x })k 240 fnt1
0 10897(to)m 239(the)s 587(e)s 3(xported)k 1479(de\207nitions)s
2540(of)s 220 fnt6 2811 10894(@Eq)m 240 fnt1 3289 10897(,)m
3396(and)s 3800(replace)s 220 fnt6 480 10396(@Eq { object })m 240 fnt1
0 9899(by)m 220 fnt6 480 9398(@Eq @Open { @Body { object } })m 240 fnt1 0 8898(If)m
220 fnt6 232 8895(@Eq)m 240 fnt1 772 8898(is)m 985(a)s
1153(g)s 1(alle)k 3(y)k 1790(\(Section)s 2645(5.1\),)s
220 fnt6 3133 8895(@Body)m 240 fnt1 3917 8898(must)m 4444(tak)s 2(e)k
4899(o)s 3(v)k 3(er)k 5380(that)s 5800(function.)s
6764(But)s 7172(one)s 7577(w)s 2(ould)k 8234(not)s
8603(w)s 2(ant)k 0 8610(to)m 253(write)s 813(these)s
1374(clumsy)s 2133(e)s 3(xpressions)k 3311(in)s 3568(practice,)s
4444(and)s 4862(the)s 5224(enclosure)s 6210(of)s 6495(lar)s 4(ge)k
7038(quantities)s 8032(of)s 8317(input)s 8883(in)s 0 8322(e)m 3(xtra)k
534(braces)s 1195(could)s 1785(cause)s 2372(Basser)s 3069(Lout)s
3581(to)s 3820(run)s 4196(out)s 4562(of)s 4833(memory)s
5684(\(Section)s 6537(5.4\).)s 480 7948(A)m 700(quite)s 1224(separate)s
2052(kind)s 2526(of)s 2786(visibility)s 3679(problem)s 4526(arises)s
5110(when)s 5676(e)s 3(xpert)k 6319(users)s 6851(wish)s
7350(to)s 7579(de\207ne)s 8210(an)s 8482(object)s 0 7660(or)m
259(operator)s 1115(for)s 1453(repeated)s 2320(use)s 2695(within,)s
3413(say)s 15(,)k 3824(equations:)s 220 fnt6 480 7161(def isum { sum from i=1 to n })m
240 fnt1 0 6667(As)m 338(it)s 551(stands)s 1221(this)s
1638(can)s 2048(only)s 2549(be)s 2852(placed)s 3555(within)s
4244(the)s 220 fnt6 4613 6664(@Eq)m 240 fnt1 5172 6667(package)m
6033(itself,)s 6637(where)s 220 fnt6 7298 6664(sum)m 240 fnt1
7780 6667(and)m 8205(the)s 8575(other)s 0 6379(symbols)m 841(are)s
1179(visible,)s 1915(b)s 4(ut)k 2268(it)s 2451(is)s
2653(not)s 3010(desirable)s 3919(to)s 4150(modify)s 4886(the)s
5225(source)s 5897(code)s 6396(of)s 6658(a)s 6816(standard)s
7675(package.)s 8614(Lout)s 0 6091(pro)m 3(vides)k 872(an)s
220 fnt6 1155 6088(impor)m -8(t)k 240 fnt1 1828 6091(clause)m
2481(to)s 2720(solv)s 3(e)k 3278(this)s 3674(problem:)s
220 fnt6 480 5590(impor)m -8(t @Eq)k 480 5302(def isum { sum from i=1 to n })m 240 fnt1
0 4808(may)m 469(appear)s 1169(after)s 220 fnt6 1669 4805(@Eq)m
240 fnt1 2210 4808(is)m 2423(de\207ned,)s 3239(and)s 3646(it)s
3842(will)s 4271(mak)s 2(e)k 4846(the)s 5198(e)s 3(xported)k
6093(symbols)s 6945(of)s 220 fnt6 7220 4805(@Eq)m 240 fnt1
7761 4808(visible)m 8458(within)s 0 4520(the)m 335(body)s 855(of)s
220 fnt6 1112 4517(isum)m 240 fnt1 1561 4520(.)m 1711(This)s
2174(feature)s 2878(complicates)s 4056(the)s 4390(treatment)s 5337(of)s
5595(en)s 9(vironments)k 6925(\(Section)s 7764(3.4\),)s 8236(and)s
8626(e)s 6(v)k 3(en)k 0 4232(introduces)m 1050(an)s
1336(insecurity)s 15(,)k 2373(when)s 220 fnt6 2952 4229(isum)m
240 fnt1 3464 4232(is)m 3677(in)s 9(v)k 4(ok)k 2(ed)k
4495(outside)s 5245(an)s 5531(equation.)s 6522(A)s 6755(simpler)s
7534(approach)s 8471(w)s 2(ould)k 0 3944(be)m 290(to)s
538(allo)s 6(w)k 1126(only)s 1615(one)s 2026(symbol)s
2795(in)s 3047(an)s 220 fnt6 3339 3941(impor)m -8(t)k
240 fnt1 4020 3944(clause,)m 4733(and)s 5146(treat)s 5638(the)s
5995(follo)s 6(wing)k 6981(de\207nition)s 7964(e)s 3(xactly)k
8714(lik)s 2(e)k 0 3656(a)m 174(local)s 702(de\207nition)s
1684(of)s 1964(that)s 2390(symbol;)s 3216(b)s 4(ut)k
3587(then)s 4064(it)s 4265(w)s 2(ould)k 4928(not)s
5303(be)s 5594(possible)s 6442(to)s 6690(de\207ne)s 7339(symbols)s
8197(using)s 8778(the)s 0 3368(resources)m 953(of)s 1224(more)s
1771(than)s 2240(one)s 2642(of)s 2913(the)s 3261(standard)s
4129(packages.)s 240 fnt2 0 2719(3.4.)m 471(Implementation)s 2159(of)s
2431(de\207nitions)s 
[ /Dest /LOUTdefs_impl /DEST pdfmark
240 fnt1 480 2242(Input)m 1089(is)s 1343(processed)s
2388(by)s 2726(a)s 2936(h)s 1(ybrid)k 3663(parser)s
4350(which)s 5036(emplo)s 2(ys)k 5940(operator)s 6840(precedence)s
8015(for)s 8398(objects)s 0 1954(and)m 433(simple)s 1156(recursi)s 6(v)k 3(e)k
2108(descent)s 2915(for)s 3283(the)s 3661(headers)s 4472(of)s
4772(de\207nitions.)s 5976(A)s 6236(symbol)s 7026(table)s 7576(stores)s
8214(the)s 8592(body)s 0 1666(of)m 278(each)s 780(de\207nition)s
1761(as)s 2018(a)s 2191(parse)s 2758(tree,)s 3229(e)s 3(xcept)k
3917(for)s 4263(macros)s 5011(which)s 5660(are)s 6014(lists)s
6456(of)s 6734(tok)s 2(ens,)k 7471(and)s 7882(manages)s
8778(the)s 0 1378(usual)m 564(stack)s 1121(of)s 1397(static)s
1958(scopes,)s 2708(accepting)s 240 fnt4 3682 1380(PushScope)m 240 fnt1
4791 1378(and)m 240 fnt4 5200 1380(P)m 19(opScope)k 240 fnt1
6197 1378(operations)m 7249(as)s 7504(the)s 7857(parser)s 8505(enters)s
0 1090(and)m 447(lea)s 4(v)k 3(es)k 1131(scope)s
1775(re)s 3(gions,)k 2626(including)s 3627(actual)s 4295(body)s
4872(parameters)s 6013(and)s 6461(the)s 6852(right)s 7406(parameter)s
8463(of)s 8778(the)s 220 fnt6 0 799(@Open)m 240 fnt1
806 802(operator)m 13(.)k 480 428(As)m 818(the)s 1187(parse)s
1769(proceeds,)s 2747(a)s 2934(complete)s 3888(call)s 4308(graph)s
4932(is)s 5163(constructed,)s 6393(recording,)s 7438(for)s 7797(each)s
8314(symbol,)s 0 140(which)m 633(symbols)s 1473(are)s 1810(in)s 9(v)k 4(ok)k 2(ed)k
2616(within)s 3274(its)s 3541(body)s 15(.)k 4160(Immediately)s
5412(after)s 5898(the)s 6237(last)s 6618(de\207nition)s 7583(is)s
7783(read,)s 8292(the)s 8630(tran)s 8998(-)s 
grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 21 22
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Times-Italic
%%+ font Helvetica
%%+ font Times-Bold
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
%%IncludeResource: font Times-Bold
/Times-Boldfnt2 vec2 /Times-Bold LoutRecode
/fnt2 { /Times-Boldfnt2 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5714 -1579(-)m 5842(21)s 6117(-)s 9066 13419 0 13310 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore
0 13256(siti)m 6(v)k 3(e)k
565(closure)s 1312(of)s 1584(the)s 1933(call)s 2334(graph)s
2937(is)s 3148(computed,)s 4200(and)s 4605(used)s 5104(to)s
5344(determine)s 6356(whether)s 7187(each)s 7684(non-)s 8112(parameter)s
0 12968(symbol)m 775(is)s 1001(recursi)s 6(v)k 3(e)k
1939(or)s 2214(recepti)s 6(v)k 3(e)k 3151(\(Section)s
4020(5.1\),)s 4522(and)s 4942(whether)s 5787(each)s 6298(parameter)s
7328(is)s 7554(in)s 9(v)k 4(ok)k 2(ed)k
8385(e)s 3(xactly)k 0 12680(once)m 508(or)s 767(not.)s
480 12306(Purely)m 1188(functional)s 2243(systems)s 3082(may)s 3579(e)s 6(v)k 6(aluate)k
4450(symbol)s 5240(in)s 9(v)k 4(ocations)k 6412(in)s
6686(applicati)s 6(v)k 3(e)k 7812(order)s 8407(\(where)s
0 12018(parameters)m 1092(are)s 1433(e)s 6(v)k 6(aluated)k
2389(before)s 3049(substitution)s 4216(into)s 4635(bodies\),)s 5440(or)s
5693(in)s 5930(normal)s 6656(order)s 7214(\(substitution)s 8460(before)s
0 11730(e)m 6(v)k 6(aluation\),)k 1164(and)s 1562(the)s 3(y)k
2018(may)s 2478(also)s 2909(share)s 3463(the)s 3804(v)s 6(alue)k
4366(of)s 4630(a)s 4790(parameter)s 5798(among)s 6496(all)s
6783(uses)s 7239(of)s 7504(it.)s 7793(But)s 8193(in)s
8429(Basser)s 0 11442(Lout,)m 603(the)s 996(presence)s 1932(of)s
2248(conte)s 3(xt-sensiti)k 6(v)k 3(e)k 3955(style)s
4507(information)s 5736(\(Section)s 6634(2.5\))s 7106(forces)s 7785(normal)s
8562(order)s 0 11154(e)m 6(v)k 6(aluation)k 1041(and)s
1445(pre)s 6(v)k 3(ents)k 2297(sharing)s 3054(of)s
3325(parameter)s 4339(v)s 6(alues.)k 480 10780(T)m 19(o)k
780(e)s 6(v)k 6(aluate)k 1620(an)s 1903(unsized)s
2692(object)s 3336(\(pure)s 3896(parse)s 4456(tree\),)s 4999(its)s
240 fnt4 5275 10782(en)m 9(vir)k 10(onment)k 240 fnt1
6456 10780(,)m 6563(the)s 6911(equi)s 6(v)k 6(alent)k
7955(of)s 8226(the)s 8574(stack)s 0 10492(frames)m 728(in)s
999(Algol-lik)s 2(e)k 2064(languages,)s 3156(must)s 3710(be)s
4020(a)s 4(v)k 6(ailable,)k 5008(containing)s 6099(the)s
6476(actual)s 7129(v)s 6(alues)k 7814(of)s 8113(all)s
8435(formal)s 0 10204(parameters)m 1119(that)s 1558(are)s 1927(visible)s
2641(within)s 3330(the)s 3700(unsized)s 4510(object.)s 5279(En)s 9(vironment)k
6601(handling)s 7513(is)s 7744(a)s 7932(well-kno)s 6(wn)k
0 9916(implementation)m 1557(technique,)s 2594(so)s 2860(it)s 3052(will)s
3478(be)s 3760(discussed)s 4735(only)s 5215(brie\210y)s 5893(here.)s
480 9542(En)m 9(vironments)k 1894(are)s 2272(e)s 3(xtra)k
2837(subtrees)s 3702(hung)s 4265(from)s 4820(the)s 5199(objects)s
5958(the)s 3(y)k 6451(refer)s 6991(to.)s 7372(This)s
7879(or)s 4(g)k 1(anization)k 0 9254(mak)m 2(es)k
668(e)s 3(xcellent)k 1595(use)s 1978(of)s 2257(the)s
2613(ordered)s 3409(dag)s 3816(to)s 4063(permit)s 4754(en)s 9(vironments)k
6106(to)s 6353(be)s 6643(shared,)s 7382(and)s 7794(deleted)s
8550(when)s 0 8966(the)m 339(last)s 721(reference)s 1655(to)s
1885(them)s 2413(is)s 2614(remo)s 3(v)k 3(ed.)k
3600(Se)s 6(v)k 3(eral)k 4353(optimizations)s 5695(ha)s 4(v)k 3(e)k
6187(been)s 6687(implemented.)s 8090(Actual)s 8772(pa)s 8998(-)s
0 8678(rameters)m 860(kno)s 6(wn)k 1552(to)s 1778(be)s
2048(in)s 9(v)k 4(ok)k 2(ed)k 2850(only)s
3318(once)s 3814(are)s 4148(mo)s 3(v)k 3(ed)k
4840(in)s 5070(from)s 5582(the)s 5918(en)s 9(vironment,)k
7212(not)s 7566(copied;)s 8303(cop)s 2(ying)k 0 8390(could)m
581(lead)s 1028(to)s 1258(quadratic)s 2191(time)s 2662(comple)s 3(xity)k 15(.)k
3875(Actual)s 4558(parameters)s 5647(of)s 5909(the)s 6248(form)s
220 fnt6 6763 8387(@Ne)m 6(xt)k 240 fnt4 7478 8392(object)m
240 fnt1 8117 8390(recei)m 6(v)k 3(e)k 8843(an)s
0 8102(applicati)m 6(v)k 3(e)k 1105(pre-)s 1478(e)s 6(v)k 6(aluation)k
2529(which)s 3181(pre)s 6(v)k 3(ents)k 4044(long)s
4533(chains)s 5205(of)s 220 fnt6 5486 8099(@Ne)m 6(xt)k
240 fnt1 6221 8102(symbols)m 7080(from)s 7614(forming)s 8448(during)s
0 7814(the)m 359(generation)s 1437(of)s 1719(lar)s 4(ge)k
2260(page)s 2779(numbers.)s 3779(Some)s 4391(en)s 9(vironments)k
5747(which)s 6400(pro)s 3(v)k 6(ably)k 7308(contrib)s 4(ute)k
8341(nothing)s 0 7526(are)m 344(deleted,)s 1137(most)s 1659(notably)s
2427(when)s 3000(a)s 3162(symbol)s 3918(in)s 9(v)k 4(ocation)k
4969(has)s 5335(no)s 5625(symbols)s 6470(within)s 7135(its)s
7407(actual)s 8028(parameters)s 0 7238(and)m 406(no)s 702(import)s
1402(list,)s 1803(so)s 2071(that)s 2492(only)s 2975(the)s
3326(en)s 9(vironment)k 4589(of)s 4862(its)s 5141(body)s
5678(need)s 6191(be)s 6476(k)s 2(ept;)k 7000(this)s
7399(sa)s 4(v)k 3(es)k 7964(a)s 8133(great)s
8673(deal)s 0 6950(of)m 271(space)s 858(when)s 1434(objects)s
2162(with)s 2644(en)s 9(vironments)k 3988(are)s 4335(written)s
5068(to)s 5307(auxiliary)s 6210(\207les)s 6659(\(Section)s 7512(6.1\).)s
240 fnt2 0 6157(4.)m 291(Implementation)s 1979(of)s 2251(the)s
2625(functional)s 3715(subset)s 
[ /Dest /LOUTfunctional /DEST pdfmark
240 fnt1 480 5680(The)m 941(objects)s
1702(and)s 2139(de\207nitions)s 3233(of)s 3537(Lout)s 4082(are)s
4462(v)s 3(ery)k 4971(similar)s 5726(to)s 5998(those)s
6592(found)s 7242(in)s 7518(other)s 8102(functional)s 0 5392(languages,)m
1085(and)s 1510(the)s 3(y)k 1994(form)s 2539(a)s
2726(natural)s 3465(subset)s 4144(of)s 4436(the)s 4805(language.)s
5854(So)s 6181(we)s 6537(pause)s 7159(here)s 7647(and)s
8072(present)s 8843(an)s 0 5104(o)m 3(v)k 3(ervie)k 6(w)k
932(of)s 1203(the)s 1551(Basser)s 2248(Lout)s 2760(object)s
3404(e)s 6(v)k 6(aluation)k 4445(algorithm.)s 480 4730(The)m
922(problem)s 1794(is)s 2019(to)s 2272(tak)s 2(e)k
2739(an)s 3037(unsized)s 3841(object)s 4499(\(pure)s 5074(parse)s
5649(tree\),)s 6206(its)s 6497(en)s 9(vironment)k 7772(\(Section)s
8640(3.4\),)s 0 4442(and)m 404(its)s 681(style)s 1188(\(Section)s
2042(2.5\),)s 2528(and)s 2933(to)s 3173(produce)s 4000(a)s
4167(PostScript)s 5209(\207le)s 5571(for)s 5910(rendering)s 6879(the)s
7228(object)s 7872(on)s 8170(an)s 8454(output)s 0 4154(de)m 6(vice.)k
786(This)s 1267(\207le)s 1632(is)s 1847(essentially)s 2914(a)s
3084(sequence)s 4022(of)s 4298(instructions)s 5468(to)s 5712(print)s
6227(a)s 6398(gi)s 6(v)k 3(en)k 6983(string)s
7584(of)s 7860(characters)s 8883(in)s 0 3866(a)m 166(gi)s 6(v)k 3(en)k
746(font)s 1191(at)s 1423(a)s 1589(gi)s 6(v)k 3(en)k
2169(point.)s 480 3492(Before)m 1189(the)s 1541(algorithm)s 2534(be)s 3(gins,)k
3266(the)s 3618(parse)s 4182(tree)s 4599(must)s 5127(be)s
5413(obtained,)s 6348(either)s 6955(by)s 7252(parsing)s 8013(input)s
8569(or)s 8832(by)s 0 3204(cop)m 2(ying)k 823(from)s
1347(the)s 1695(symbol)s 2455(table.)s 3082(Afterw)s 2(ards)k
4205(the)s 4553(data)s 5011(structure)s 5901(must)s 6426(be)s
6708(disposed.)s 7710(The)s 8137(algorithm)s 0 2916(proper)m 692(consists)s
1508(of)s 1787(\207v)s 3(e)k 2207(passes,)s 2933(each)s
3437(a)s 3611(recursi)s 6(v)k 3(e)k 4541(tra)s 4(v)k 3(ersal)k
5418(of)s 5697(the)s 6054(structure)s 6953(from)s 7485(the)s
7841(root)s 8294(do)s 6(wn)k 8887(to)s 0 2628(the)m
348(lea)s 4(v)k 3(es)k 989(and)s 1393(back.)s
240 fnt4 0 2174(1.)m 330(Evaluation)s 1490(of)s 1827(unsized)s
2667(objects.)s 240 fnt1 3554 2172(On)m 3960(the)s 4364(w)s 2(ay)k
4871(do)s 6(wn,)k 5561(calculate)s 6521(en)s 9(vironments)k
7921(and)s 8381(replace)s 0 1884(non-recursi)m 6(v)k 3(e,)k
1404(non-recepti)s 6(v)k 3(e)k 2757(symbols)s 3598(by)s
3884(their)s 4373(bodies)s 5041(\(Section)s 5886(3.4\);)s 6369(broadcast)s
7337(fonts)s 7858(to)s 8089(the)s 8429(lea)s 4(v)k 3(es,)k
0 1596(and)m 409(paragraph)s 1427(breaking)s 2322(and)s 2731(spacing)s
3521(styles)s 4121(to)s 4365(the)s 4718(paragraph)s 5736(nodes.)s
6465(On)s 6820(the)s 7173(w)s 2(ay)k 7629(back)s
8147(up,)s 8500(delete)s 240 fnt4 0 1310(FONT)m 240 fnt1
630 1308(,)m 240 fnt4 737 1310(BREAK)m 240 fnt1 1494 1308(,)m
1601(and)s 240 fnt4 2005 1310(SP)m 21(A)k 7(CE)k
240 fnt1 2760 1308(nodes,)m 3426(and)s 3830(insert)s 240 fnt4
4420 1310(SPLIT)m 240 fnt1 5049 1308(,)m 240 fnt4 5156 1310(COL)m
240 fnt1 5622 1308(,)m 5729(and)s 240 fnt4 6133 1310(R)m 9(O)k 12(W)k
240 fnt1 6707 1308(nodes)m 7317(\(Section)s 8170(2.3\).)s 240 fnt4
0 815(2.)m 293(W)s 13(idth)k 925(calculations)s 2169(and)s
2614(br)s 8(eaking)k 3(.)k 240 fnt1 3628 813(Calculate)m
4605(the)s 4973(width)s 5594(of)s 5885(e)s 6(v)k 3(ery)k
6480(subobject)s 7477(from)s 8020(the)s 8388(bottom)s 0 525(up.)m
404(As)s 720(described)s 1693(in)s 1936(Section)s 2709(2.3,)s
240 fnt4 3115 527(WIDE)m 240 fnt1 3777 525(nodes)m 4386(may)s
4851(trigger)s 5547(object)s 6190(breaking)s 7079(sub-tra)s 4(v)k 3(ersals)k
8448(during)s 0 237(this)m 396(pass.)s 
grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 22 23
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Times-Italic
%%+ font Times-Bold
%%+ font Helvetica
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
%%IncludeResource: font Times-Bold
/Times-Boldfnt2 vec2 /Times-Bold LoutRecode
/fnt2 { /Times-Boldfnt2 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5705 -1579(-)m 5833(22)s 6127(-)s 9066 13419 0 13308 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore
240 fnt4 0 13256(3.)m
274(Height)s 989(calculations.)s 240 fnt1 2312 13254(Calculate)m 3270(the)s
3618(height)s 4276(of)s 4547(e)s 6(v)k 3(ery)k
5123(subobject,)s 6147(from)s 6671(the)s 7019(bottom)s 7757(up.)s
240 fnt4 0 12751(4.)m 283(Horizontal)s 1389(coor)s 8(dinates.)k
240 fnt1 2674 12749(Calculate)m 3641(the)s 3998(horizontal)s 5032(coordinate)s
6106(of)s 6386(each)s 6890(subobject)s 7876(from)s 8409(the)s
8767(top)s 0 12461(do)m 6(wn,)k 634(and)s 1038(store)s
1558(each)s 2053(leaf)s -13(')k 13(s)k 2633(coordinate)s
3698(in)s 3941(the)s 4289(leaf.)s 240 fnt4 0 11977(5.)m
295(V)s 26(ertical)k 1119(coor)s 8(dinates)k 2317(and)s
2765(P)s 19(ostScript)k 3827(g)s 2(ener)k 3(ation.)k
240 fnt1 5034 11975(Calculate)m 6013(the)s 6383(v)s 3(ertical)k
7171(coordinate)s 8257(of)s 8550(e)s 6(v)k 3(ery)k
0 11687(subobject)m 981(from)s 1509(the)s 1861(top)s 2224(do)s 6(wn,)k
2862(and)s 3270(at)s 3506(each)s 4005(leaf,)s 4473(retrie)s 6(v)k 3(e)k
5252(the)s 5604(character)s 6542(string,)s 7197(font,)s 7693(and)s
8102(horizontal)s 0 11399(coordinate,)m 1116(and)s 1520(print)s 2031(the)s
2379(PostScript)s 3421(instruction)s 4500(for)s 4838(rendering)s 5807(that)s
6225(leaf.)s 0 10896(Figure)m 692(3)s 869(gi)s 6(v)k 3(es)k
1428(the)s 1789(amount)s 2579(of)s 2863(code)s 3383(required)s
4250(for)s 4600(each)s 5168(pass.)s 5756(Symmetry)s 6819(between)s
7685(horizontal)s 8722(and)s 0 10608(v)m 3(ertical)k 764(is)s
971(e)s 3(xploited)k 1913(throughout)s 3021(Basser)s 3715(Lout,)s
4271(and)s 4672(passes)s 5331(2)s 5502(and)s 5903(3,)s
6127(as)s 6374(well)s 6837(as)s 7084(4)s 7255(and)s
7656(5,)s 7880(are)s 8224(e)s 3(x)k 3(ecuted)k
0 10320(on)m 297(shared)s 979(code.)s 480 9946(The)m 929(author)s
1621(can)s 2031(see)s 2413(no)s 2728(simple)s 3442(w)s 2(ay)k
3914(to)s 4174(reduce)s 4888(the)s 5258(number)s 6070(of)s
6362(passes.)s 7158(The)s 7607(introduction)s 8855(of)s 0 9658(horizontal)m
1027(g)s 1(alle)k 3(ys)k 1755(\(Section)s 2612(5.5\))s
3044(w)s 2(ould)k 3703(remo)s 3(v)k 3(e)k
4474(the)s 4826(need)s 5340(for)s 5682(the)s 6034(object)s
6682(breaking)s 7576(transformations)s 0 9370(within)m 700(this)s 1128(algorithm)s
2149(that)s 2599(are)s 2978(the)s 3359(principal)s 4295(obstacles)s
5254(in)s 5529(the)s 5909(w)s 2(ay)k 6393(of)s
6696(the)s 7076(mer)s 4(ging)k 7954(of)s 8257(passes)s
8952(2)s 0 9082(and)m 404(3.)s 240 fnt2 0 8338(5.)m
291(Galleys)s 
[ /Dest /LOUT16_594_s5_0_1 /DEST pdfmark
240 fnt1 480 7861(W)m 9(ith)k 1022(objects)s
1767(and)s 2188(de\207nitions)s 3266(under)s 3888(control,)s 4689(the)s
5053(author)s 5741(f)s 2(aced)k 6331(the)s 6696(problem)s
7570(of)s 7858(getting)s 8592(body)s 0 7573(te)m 3(xt,)k
478(footnotes,)s 1491(\210oating)s 2291(\207gures)s 3009(and)s 3429(tables,)s
4109(references,)s 5213(inde)s 3(x)k 5813(entries,)s 6572(and)s
6992(entries)s 7695(in)s 7954(the)s 8318(table)s 8855(of)s
0 7285(contents)m 844(into)s 1264(their)s 1757(places.)s 2513(The)s
2937(resulting)s 3821(in)s 9(v)k 3(estig)k 1(ation)k
5095(occupied)s 6013(three)s 6541(months)s 7293(of)s 7559(full-time)s
8444(design)s 0 6997(w)m 2(ork,)k 612(and)s 1031(proceeded)s
2088(approximately)s 3538(as)s 3803(described)s 4793(in)s 5051(Section)s
5840(5.1;)s 6268(the)s 6631(implementation)s 8204(occupied)s 0 6709(the)m
348(years)s 903(1987-89.)s 240 fnt2 0 6060(5.1.)m 471(The)s
926(galley)s 1580(abstraction)s 
[ /Dest /LOUTgalleys /DEST pdfmark
240 fnt1 480 5583(Let)m 870(us)s
1147(tak)s 2(e)k 1611(the)s 1972(footnote)s 2838(as)s
3100(a)s 3279(representati)s 6(v)k 3(e)k 4677(e)s 3(xample.)k
5661(At)s 5973(some)s 6546(point)s 7111(in)s 7366(the)s
7727(document,)s 8791(we)s 0 5295(wish)m 509(to)s 748(write)s
220 fnt6 480 4847(preceding te)m 6(xt)k 480 4559(@F)m 6(ootNote { f)k 6(ootnote te)k 6(xt })k
480 4271(f)m 6(ollo)k 3(wing te)k 6(xt)k 240 fnt1
0 3772(and)m 406(we)s 744(e)s 3(xpect)k 1428(the)s
1779(formatter)s 2729(to)s 2971(remo)s 3(v)k 3(e)k
3741(the)s 4092(footnote)s 4947(from)s 5474(this)s 5873(conte)s 3(xt)k
6637(and)s 7044(place)s 7607(it)s 7802(at)s 8037(the)s
8388(bottom)s 0 3484(of)m 281(the)s 639(current)s 1386(page,)s
1955(possibly)s 2817(splitting)s 3664(some)s 4235(or)s 4504(all)s
4808(of)s 5089(it)s 5291(onto)s 5781(a)s 5957(follo)s 6(wing)k
6944(page)s 7463(if)s 7690(space)s 8287(is)s 8508(insuf)s
8998(-)s 0 3196(\207cient.)m 480 2822(An)m 844(object)s 1503(appears)s
2298(in)s 2556(the)s 2918(\207nal)s 3413(document)s 4431(at)s
4678(the)s 5040(point)s 5607(it)s 5813(is)s 6038(in)s 9(v)k 4(ok)k 2(ed,)k
6916(b)s 4(ut)k 7293(this)s 7703(basic)s 8262(property)s
0 2534(does)m 503(not)s 882(hold)s 1379(for)s 1730(footnotes:)s
2799(the)s 3160(point)s 3725(of)s 4009(in)s 9(v)k 4(ocation)k
5076(and)s 5493(the)s 5854(point)s 6419(of)s 6703(appearance)s
7847(are)s 8207(dif)s 6(ferent.)k 0 2246(In)m 254(some)s
813(w)s 2(ay)k 15(,)k 1299(the)s 1645(footnote)s
2496(is)s 2703(attached)s 3555(to)s 3791(the)s 4137(document)s
5139(at)s 5368(both)s 5849(points,)s 6539(introducing)s 7692(a)s
7856(cross)s 8395(linking)s 0 1958(\(Section)m 853(2.1\))s 1281(that)s
1699(cannot)s 2397(be)s 2679(described)s 3653(in)s 3896(purely)s
4561(functional)s 5585(terms.)s 480 1584(Since)m 1069(the)s 1420(interpretation)s
2766(of)s 3040(an)s 3(y)k 3440(object)s 4087(depends)s
4926(on)s 5226(an)s 5512(en)s 9(vironment)k 6775(and)s
7182(style)s 7692(inherited)s 8602(from)s 0 1296(the)m 347(conte)s 3(xt,)k
1153(the)s 1499(\207rst)s 1929(question)s 2795(must)s 3318(be)s
3598(whether)s 4427(the)s 4773(footnote)s 5624(inherits)s 6390(them)s
6926(through)s 7726(the)s 8072(in)s 9(v)k 4(ocation)k
0 1008(point)m 552(or)s 811(through)s 1613(the)s 1961(point\(s\))s
2753(of)s 3024(appearance.)s 480 634(If)m 697(symbols)s 1533(are)s
1867(to)s 2092(be)s 2361(interpreted)s 3440(statically)s 4341(as)s
4578(heretofore,)s 5653(then)s 6108(en)s 9(vironments)k 7439(must)s
7951(be)s 8219(inherited)s 0 346(through)m 829(the)s 1204(in)s 9(v)k 4(ocation)k
2285(point)s 2865(alone.)s 3574(Dynamic)s 4531(inheritance)s 5675(through)s
6505(the)s 6880(point)s 7459(of)s 7757(appearance)s 8916(is)s
0 58(enticing)m 836(in)s 1092(some)s 1666(w)s 2(ays:)k
2335(it)s 2541(might)s 3172(replace)s 3930(the)s 4291(body)s
4838(parameter)s 9(,)k 5904(and)s 6321(it)s 6526(might)s
7157(help)s 7635(with)s 8131(automatic)s 
grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 23 24
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Times-Italic
%%+ font Times-Bold
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
%%IncludeResource: font Times-Bold
/Times-Boldfnt2 vec2 /Times-Bold LoutRecode
/fnt2 { /Times-Boldfnt2 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5710 -1579(-)m 5838(23)s 6122(-)s 9066 13416 0 13416 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore
1659 13218(1.)m 2163(Initialization)s
7172(200)s 1659 12930(2.)m 2163(Memory)s 3041(allocation,)s 4090(ordered)s
4878(dag)s 5277(operations)s 7172(400)s 1659 12642(3.)m 2163(Le)s 3(xical)k
2931(analysis,)s 3808(macros,)s 4605(\207le)s 4966(handling)s 6992(1,350)s
1659 12354(4.)m 2163(P)s 3(arsing)k 2930(of)s 3201(objects)s
3929(and)s 4333(de\207nitions)s 6992(1,150)s 1659 12066(5.)m 2163(Symbol)s
2963(table)s 3483(and)s 3887(call)s 4286(graph)s 7172(600)s
1659 11778(6.)m 2163(Ev)s 6(aluation)k 3250(of)s 3521(pure)s
4002(parse)s 4562(trees)s 6992(1,650)s 1659 11490(7.)m 2163(Reading,)s
3068(storing,)s 3839(and)s 4243(scaling)s 4973(of)s 5244(fonts)s
7172(600)s 1659 11202(8.)m 2163(Cross)s 2759(references)s 3790(and)s
4194(databases)s 6992(1,000)s 1659 10914(9.)m 2163(W)s 9(idth)k
2809(and)s 3213(height)s 3871(calculations,)s 5119(and)s 5523(breaking)s
7172(700)s 1539 10626(10.)m 240 fnt4 2163 10628(Constr)m 3(ained)k
240 fnt1 3410 10626(and)m 240 fnt4 3814 10628(AdjustSize)m 240 fnt1
7172 10626(700)m 1539 10338(11.)m 2163(T)s 8(ransfer)k 3023(of)s
3294(sized)s 3843(objects)s 4571(into)s 4996(g)s 1(alle)k 3(y)k
5630(tree)s 7172(450)s 1539 10050(12.)m 2163(Galle)s 3(y)k
2851(\210ushing)s 3676(algorithm)s 6992(1,500)s 1539 9762(13.)m 2163(Coordinate)s
3282(calculations)s 4474(and)s 4878(PostScript)s 5920(output)s 7172(700)s
1539 9474(14.)m 2163(Deb)s 4(ugging)k 3277(and)s 3681(error)s
4204(handling)s 6992(1,200)s 655 0 0 0 240 288 60 6872 9328 LoutGr2
0.5 pt ltabhs
grestore

grestore
6872 9074(12,200)m 
[ /Dest /LOUTcomponents /DEST pdfmark
200 fnt2 41 8421(Figur)m 3(e)k
649(3.)s 200 fnt1 891 8422(Major)m 1427(components)s 2432(of)s
2658(the)s 2947(Basser)s 3526(Lout)s 3953(interpreter)s 8(,)k
4861(sho)s 5(wing)k 5576(the)s 5865(approximate)s 6906(number)s
7565(of)s 7791(lines)s 8208(of)s 8434(C)s 8611(code.)s
240 fnt1 0 7791(numbering,)m 1163(since)s 1730(the)s 2097(number)s
2908(of)s 3198(a)s 3384(footnote)s 4256(is)s 4486(kno)s 6(wn)k
5209(only)s 5709(at)s 5960(the)s 6328(point)s 6899(of)s
7190(appearance;)s 8396(b)s 4(ut)k 8778(the)s 0 7503(implementation)m
1606(problems)s 2597(are)s 2993(se)s 6(v)k 3(ere,)k
3751(and)s 4204(static)s 4810(inheritance)s 5976(seems)s 6661(much)s
7299(simpler)s 8125(and)s 8579(more)s 0 7215(comprehensible)m 1572(to)s
1814(the)s 2165(user)s 13(.)k 2716(Style,)s 3317(at)s
3552(least)s 4052(its)s 4330(a)s 4(v)k 6(ailable)k
5241(width)s 5846(and)s 6253(height)s 6913(part,)s 7394(must)s
7922(of)s 8196(necessity)s 0 6927(be)m 268(inherited)s 1160(through)s
1947(the)s 2280(point)s 2817(of)s 3073(appearance.)s 4297(F)s 3(or)k
4671(consistenc)s 3(y)k 15(,)k 5861(the)s 6194(entire)s
6778(style)s 7270(should)s 7952(be)s 8219(inherited)s 0 6639(in)m
256(this)s 666(w)s 2(ay)k 15(.)k 1226(There)s
1853(is)s 2077(a)s 2257(suggesti)s 6(v)k 3(e)k
3328(analogy)s 4154(here)s 4635(with)s 5131(actual)s 5770(parameters,)s
6938(which)s 7594(ha)s 4(v)k 3(e)k 8109(a)s
8289(point)s 8855(of)s 0 6351(in)m 9(v)k 4(ocation)k
1060(from)s 1591(which)s 2240(the)s 3(y)k 2710(inherit)s
3400(an)s 3690(en)s 9(vironment,)k 5004(and)s 5414(a)s
5587(point)s 6146(of)s 6424(appearance)s 7562(within)s 8237(the)s
8592(body)s 0 6063(of)m 265(the)s 606(enclosing)s 1569(de\207nition,)s
2587(from)s 3104(which)s 3739(the)s 3(y)k 4196(inherit)s
4872(a)s 5031(style.)s 5639(It)s 5838(may)s 6297(be)s
6572(possible)s 7406(to)s 7638(treat)s 8114(a)s 8273(footnote)s
0 5775(as)m 250(the)s 598(actual)s 1223(parameter)s 2237(of)s
2508(some)s 3069(symbol,)s 3881(therefore,)s 4849(although)s 5744(the)s
6092(details)s 6766(seem)s 7317(v)s 3(ery)k 7793(obscure.)s
480 5401(But)m 881(the)s 1224(most)s 1744(profound)s 2674(consequence)s
3948(of)s 4214(ha)s 4(ving)k 4910(tw)s 2(o)k
5314(types)s 5865(of)s 6131(attachment)s 7234(point)s 7780(is)s
7985(that)s 8398(it)s 8584(leads)s 0 5113(to)m 261(tw)s 2(o)k
693(distincti)s 6(v)k 3(e)k 1757(tree)s 2192(structures.)s
3306(Considering)s 4551(in)s 9(v)k 4(ocation)k 5627(points)s
6285(only)s 6787(leads)s 7351(to)s 7612(static)s 8190(trees)s
8714(lik)s 2(e)k 0 4825(this)m 396(one:)s gsave
480 2539 translate
240 fnt4 3666 1996 170 1715 240 288 60 LoutGraphic
gsave
grestore save gsave 200 dict begin lfigdict begin
grestore
1117 1273 170 993 240 288 60 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
1117 1273 170 993 240 288 60 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
1117 551 170 272 240 288 60 0 721 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
170 220(footnote)m

grestore
(T) lfigpromotelabels
grestore
(L) lfigpromotelabels
grestore
1206 553 170 272 240 288 60 1230 1443 LoutGr2
currentdict end 200 dict begin begin
grestore
1206 553 170 272 240 288 60 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
170 220(body)m 692(te)s 4(xt)k 
grestore
(T) lfigpromotelabels
grestore
0 0 0 0 240 288 60 2436 1715 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ L@T@CTR L@T@CTR T@CTR lfigangle L@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR L@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
1117 1273 0 993 240 288 60 2549 0 LoutGr2
currentdict end 200 dict begin begin
grestore
1001 552 170 272 240 288 60 116 721 LoutGr2
currentdict end 200 dict begin begin
grestore
884 552 170 272 240 288 60 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
170 220(\207gur)m 8(e)k

grestore
(T) lfigpromotelabels
grestore
1117 551 170 272 240 288 60 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
1117 551 170 272 240 288 60 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
1117 551 170 272 240 288 60 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
170 220(footnote)m 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 60 1117 272 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
(R) lfigpromotelabels
grestore
0 0 0 0 240 288 60 3666 1715 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ R@T@CTR R@T@CTR T@CTR lfigangle R@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR R@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
end end restore
grestore
0 2088(which)m 663(sho)s 6(ws)k 1329(that)s
1769(the)s 2139(body)s 2695(te)s 3(xt)k 3131(contains)s
4001(a)s 4189(footnote)s 5064(and)s 5490(a)s 5677(\207gure,)s
6364(the)s 6734(latter)s 7305(itself)s 7875(containing)s 8960(a)s
0 1800(footnote.)m 961(Considering)s 2184(points)s 2820(of)s 3091(appearance)s
4222(only)s 4702(gi)s 6(v)k 3(es)k 5249(a)s
5415(completely)s 6531(dif)s 6(ferent,)k 7453(dynamic)s 8330(tree:)s
gsave
480 186 translate
240 fnt4 4663 1274 0 995 240 288 60 LoutGraphic
gsave
grestore save gsave 200 dict begin lfigdict begin
grestore
3382 551 170 272 240 288 60 1281 723 LoutGr2
currentdict end 200 dict begin begin
grestore
2101 551 170 272 240 288 60 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
170 220(sequence)m 1100(of)s 1381(pa)s 2(g)k 2(es)k

grestore
(T) lfigpromotelabels
grestore
1206 553 170 272 240 288 60 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
1206 553 170 272 240 288 60 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
1206 553 170 272 240 288 60 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
170 220(body)m 692(te)s 4(xt)k 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 60 1206 272 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
1117 553 170 272 240 288 60 1319 0 LoutGr2
currentdict end 200 dict begin begin
grestore
1117 553 170 272 240 288 60 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
1117 551 170 272 240 288 60 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
170 220(footnote)m 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 60 2436 272 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
884 553 170 272 240 288 60 2549 0 LoutGr2
currentdict end 200 dict begin begin
grestore
884 553 170 272 240 288 60 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
884 552 170 272 240 288 60 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
170 220(\207gur)m 8(e)k

grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 60 3433 272 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
1117 553 170 272 240 288 60 3546 0 LoutGr2
currentdict end 200 dict begin begin
grestore
1117 553 170 272 240 288 60 0 0 LoutGr2
currentdict end 200 dict begin begin
grestore
1117 551 170 272 240 288 60 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
170 220(footnote)m 
grestore
(T) lfigpromotelabels
grestore
(S) lfigpromotelabels
grestore
0 0 0 0 240 288 60 4663 272 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ S@T@CTR S@T@CTR T@CTR lfigangle S@T@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
T@CTR T@CTR S@T@CTR lfigangle T@CIRCUM lfigpadd lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore

grestore
end end restore
grestore

grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 24 25
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Times-Italic
%%+ font Helvetica
%%+ font Times-Bold
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
%%IncludeResource: font Times-Bold
/Times-Boldfnt2 vec2 /Times-Bold LoutRecode
/fnt2 { /Times-Boldfnt2 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5705 -1579(-)m 5833(24)s 6127(-)s 9066 13419 0 13419 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore
0 13256(The)m 468(tree)s
921(can)s 1351(be)s 1673(deeper)s 9(,)k 2448(for)s
2827(e)s 3(xample)k 3730(with)s 4253(sections)s 5114(appearing)s
6150(within)s 6859(chapters)s 7746(which)s 8429(appear)s 0 12968(within)m
680(the)s 1041(body)s 1587(te)s 3(xt,)k 2062(which)s
2717(appears)s 3510(within)s 4191(the)s 4551(\207nal)s 5044(sequence)s
5990(of)s 6273(pages.)s 6995(Document)s 8065(formatting)s 0 12680(languages)m
1024(generally)s 1984(shirk)s 2540(the)s 2905(issues)s 3544(raised)s
4189(by)s 4500(this)s 4912(dual)s 5396(tree)s 5826(structure,)s
6785(by)s 7096(making)s 7884(the)s 8249(dynamic)s 0 12392(tree)m
421(b)s 4(uilt-in,)k 1235(by)s 1537(limiting)s 2354(one)s
2764(or)s 3032(both)s 3523(trees)s 4032(to)s 4279(tw)s 2(o)k
4697(le)s 6(v)k 3(els,)k 5360(and)s 5773(so)s
6047(on,)s 6402(pro)s 3(viding)k 7391(a)s 7565(classic)s
8263(e)s 3(xample)k 0 12104(of)m 295(the)s 667(impo)s 3(v)k 3(erishing)k
2120(ef)s 6(fect)k 2740(of)s 3035(f)s 2(ailing)k
3733(to)s 3997(permit)s 4704(language)s 5648(features)s 6478(to)s
6741(attain)s 7352(their)s 7873(natural)s 8616(le)s 6(v)k 3(el)k
0 11816(of)m 271(generality)s 15(.)k 480 11442(W)m 19(e)k
854(are)s 1206(thus)s 1662(led)s 2017(to)s 2261(propose)s
3081(a)s 3252(second)s 3980(abstraction)s 5091(for)s 5434(document)s
6443(formatting,)s 7564(which)s 8211(we)s 8552(name)s 0 11154(the)m
240 fnt4 371 11156(galle)m 7(y)k 240 fnt1 1028 11154(in)m
1294(recognition)s 2464(of)s 2759(its)s 3058(similarity)s 4050(to)s
4312(the)s 4684(g)s 1(alle)k 3(ys)k 5432(used)s
5952(in)s 6219(manual)s 7001(typesetting.)s 8238(A)s 8492(g)s 1(alle)k 3(y)k
0 10866(consists)m 817(of)s 1098(an)s 1391(object)s 2045(\(such)s
2630(as)s 2890(a)s 3066(footnote\))s 4001(together)s 4854(with)s
5346(a)s 5522(sequence)s 6465(of)s 6746(places)s 7404(where)s
8054(that)s 8482(object)s 0 10578(may)m 491(appear)s 1214(\(such)s
1814(as)s 2090(the)s 2464(bottoms)s 3311(of)s 3608(the)s
3982(current)s 4743(and)s 5173(follo)s 6(wing)k 6176(pages\).)s
6989(Splitting)s 7891(occurs)s 8592(quite)s 0 10290(naturally)m 903(when)s
1479(space)s 2066(at)s 2298(an)s 3(y)k 2695(place)s
3255(is)s 3465(insuf\207cient)s 4600(to)s 4839(hold)s 5323(the)s
5671(entire)s 6270(object.)s 480 9916(In)m 736(Lout,)s 1295(a)s
1461(footnote)s 2314(g)s 1(alle)k 3(y)k 2948(and)s
3352(its)s 3628(place)s 4188(of)s 4459(appearance)s 5590(are)s
5937(de\207ned)s 6700(as)s 6950(follo)s 6(ws:)k 220 fnt6
480 9415(def @F)m 6(ootPlace { @Galle)k 4(y })k 480 8839(def @F)m 6(ootNote into { @F)k 6(ootPlace&&f)k 6(ollo)k 3(wing })k
480 8551(    r)m -3(ight x)k 480 8263({ x })m 240 fnt1 0 7769(The)m
220 fnt6 445 7766(@F)m 6(ootPlace)k 240 fnt1 1719 7769(symbol)m
2496(contains)s 3362(the)s 3727(special)s 4463(symbol)s 220 fnt6
5240 7766(@Galle)m 4(y)k 240 fnt1 6078 7769(,)m 6203(indicating)s
7229(that)s 7665(it)s 7874(is)s 8102(a)s 8285(point)s
8855(of)s 0 7481(appearance)m 1143(for)s 1493(a)s 1672(g)s 1(alle)k 3(y)k 15(.)k
2413(By)s 2759(placing)s 3529(in)s 9(v)k 4(ocations)k
4682(of)s 220 fnt6 4965 7478(@F)m 6(ootPlace)k 240 fnt1
6234 7481(at)m 6478(the)s 6838(bottoms)s 7673(of)s 7956(pages,)s
8620(as)s 8883(in)s 0 7193(Section)m 801(3.2,)s 1235(we)s
1597(de\207ne)s 2265(the)s 2640(desired)s 3415(points)s 4078(of)s
4376(appearance)s 5534(for)s 5899(footnotes.)s 6980(Symbols)s 7896(whose)s
8592(body)s 0 6905(contains)m 220 fnt6 863 6902(@Galle)m 4(y)k
240 fnt1 1776 6905(either)m 2394(directly)s 3192(or)s 3466(indirectly)s
4450(are)s 4812(called)s 5455(recepti)s 6(v)k 3(e)k
6392(symbols,)s 7312(meaning)s 8204(recepti)s 6(v)k 3(e)k
0 6617(to)m 239(g)s 1(alle)k 3(ys,)k 1019(and)s
1423(the)s 3(y)k 1886(are)s 2233(e)s 3(xpanded)k
3207(only)s 3687(on)s 3984(demand.)s 4906(The)s 5334(ef)s 6(fect)k
5930(of)s 6202(the)s 220 fnt6 6550 6614(into)m 240 fnt1
6956 6617(clause)m 7609(is)s 7819(to)s 8058(mak)s 2(e)k
8631(each)s 0 6329(in)m 9(v)k 4(ocation)k 1057(of)s
220 fnt6 1332 6326(@F)m 6(ootNote)k 240 fnt1 2506 6329(a)m
2676(g)s 1(alle)k 3(y)k 3313(whose)s 3985(object)s
4632(is)s 4846(the)s 5198(result)s 5791(of)s 6066(the)s
6417(in)s 9(v)k 4(ocation)k 7475(in)s 7721(the)s
8073(usual)s 8637(w)s 2(ay)k 15(,)k 0 6041(and)m
406(whose)s 1076(sequence)s 2011(of)s 2285(points)s 2923(of)s
3196(appearance)s 4329(is)s 4542(speci\207ed)s 5452(by)s 5748(the)s
220 fnt6 6098 6038(into)m 240 fnt1 6507 6041(clause;)m 7218(in)s
7463(this)s 7861(e)s 3(xample,)k 8778(the)s 0 5753(sequence)m
933(of)s 1204(all)s 220 fnt6 1497 5750(@F)m 6(ootPlace)k
240 fnt1 2753 5753(symbols)m 3602(follo)s 6(wing)k 4579(the)s
4927(in)s 9(v)k 4(ocation)k 5981(point.)s 480 5379(Lout)m
995(permits)s 1766(g)s 1(alle)k 3(ys)k 2494(to)s
2737(be)s 3023(in)s 9(v)k 4(ok)k 2(ed)k
3842(within)s 4514(other)s 5069(g)s 1(alle)k 3(ys)k
5797(to)s 6040(arbitrary)s 6919(depth,)s 7562(so)s 7832(that)s
8254(one)s 8660(may)s 0 5091(ha)m 4(v)k 3(e)k
514(footnotes)s 1468(within)s 2149(\207gures)s 2864(within)s 3546(the)s
3907(body)s 4454(te)s 3(xt)k 4882(g)s 1(alle)k 3(y)k 15(,)k
5568(for)s 5919(e)s 3(xample,)k 6846(creating)s 7681(arbitrary)s
8570(static)s 0 4803(trees.)m 649(Recepti)s 6(v)k 3(e)k
1688(symbols)s 2573(lik)s 2(e)k 220 fnt6 3021 4800(@F)m 6(ootPlace)k
240 fnt1 4313 4803(may)m 4815(appear)s 5548(within)s 6252(an)s 3(y)k
6685(g)s 1(alle)k 3(y)k 15(,)k 7393(creating)s
8251(arbitrary)s 0 4515(dynamic)m 912(trees)s 1449(as)s 1734(well.)s
2345(The)s 2808(root)s 3289(of)s 3595(the)s 3979(dynamic)s
4891(tree,)s 5391(which)s 6068(w)s 2(ould)k 6759(normally)s
7711(consist)s 8471(of)s 8778(the)s 0 4227(sequence)m 959(of)s
1257(pages)s 1880(of)s 2178(the)s 2553(complete)s 3512(assembled)s
4593(document,)s 5671(is)s 5908(considered)s 7029(to)s 7295(be)s
7604(a)s 7797(g)s 1(alle)k 3(y)k 8458(whose)s
0 3939(point)m 563(of)s 845(appearance)s 1987(is)s 2208(the)s
2567(output)s 3250(\207le.)s 3730(Points)s 4390(of)s 4672(appearance)s
5814(may)s 6291(be)s 220 fnt6 6584 3936(preceding)m 240 fnt1
7606 3939(or)m 220 fnt6 7876 3936(f)m 6(ollo)k 3(wing)k
240 fnt1 8778 3939(the)m 0 3651(in)m 9(v)k 4(ocation)k
1054(point;)s 1658(entries)s 2345(in)s 2588(tables)s 3196(of)s
3467(contents)s 4315(are)s 4662(the)s 5010(main)s 5545(users)s
6087(of)s 220 fnt6 6358 3648(preceding)m 240 fnt1 7309 3651(.)m
480 3277(The)m 913(g)s 1(alle)k 3(y)k 1552(abstraction)s
2662(is)s 2877(adequate)s 3788(for)s 4131(all)s 4429(of)s
4706(the)s 5059(applications)s 6270(listed)s 6850(at)s 7087(the)s
7440(be)s 3(ginning)k 8453(of)s 8730(this)s 0 2989(section,)m
808(e)s 3(xcept)k 1514(that)s 1957(there)s 2515(is)s
2749(no)s 3067(pro)s 3(vision)k 4050(for)s 4413(sorting)s
5155(inde)s 3(x)k 5763(entries)s 6475(and)s 6904(references.)s
8073(Sorting)s 8855(of)s 0 2701(g)m 1(alle)k 3(ys)k
715(has)s 1075(been)s 1574(added)s 2194(to)s 2423(Lout)s
2925(as)s 3165(a)s 3321(b)s 4(uilt-in)k 4068(feature,)s
4827(in)s 9(v)k 4(ok)k 2(ed)k 5632(by)s
5916(adding)s 6611(a)s 6767(special)s 220 fnt6 7475 2698(@K)m 8(e)k 4(y)k
240 fnt1 8112 2701(parameter)m 0 2413(to)m 227(the)s 563(g)s 1(alle)k 3(ys,)k
1330(and)s 1722(using)s 2281(its)s 2545(v)s 6(alue)k
3100(as)s 3338(the)s 3673(sort)s 4079(k)s 2(e)k 3(y)k 15(.)k
4556(The)s 4972(author)s 5631(w)s 2(as)k 6039(at)s
6259(a)s 6412(loss)s 6823(to)s 7049(\207nd)s 7468(an)s 3(y)k
7852(other)s 8391(w)s 2(ay)k 15(,)k 8867(or)s
0 2125(an)m 3(y)k 397(useful)s 1036(generalization)s 2446(of)s
2717(this)s 3113(feature.)s 3939(Its)s 4228(implementation)s 5785(will)s
6211(be)s 6493(discussed)s 7468(in)s 7711(Section)s 8485(6.2.)s
240 fnt2 0 1476(5.2.)m 471(The)s 926(galley)s 1580(\210ushing)s
2447(algorithm)s 
[ /Dest /LOUTflushing /DEST pdfmark
240 fnt1 480 999(Galle)m 3(y)k 1177(components)s
2395(are)s 2751(promoted)s 3736(one)s 4148(by)s 4451(one)s
4863(into)s 5298(the)s 5655(point)s 6217(of)s 6498(appearance)s
7638(in)s 7891(the)s 8249(dynamic)s 0 711(parent)m 672(g)s 1(alle)k 3(y)k 15(,)k
1359(then)s 1843(carried)s 2579(along)s 3179(with)s 3676(it,)s
3931(ultimately)s 4968(to)s 5222(the)s 5586(root)s 6046(g)s 1(alle)k 3(y)k
6695(and)s 7115(the)s 7478(output)s 8165(\207le.)s 8650(This)s
0 423(process)m 800(is)s 1042(called)s 240 fnt4 1703 425(galle)m 7(y)k
2368(\210ushing)s 240 fnt1 3121 423(:)m 3259(the)s 3640(g)s 1(alle)k 3(ys)k
4396(are)s 4775(ri)s 6(v)k 3(ers)k 5393(running)s
6223(together)s 7098(to)s 7370(the)s 7750(sea,)s 8194(and)s
8631(each)s 0 135(component)m 1124(is)s 1334(a)s 1500(drop)s
1992(of)s 2263(w)s 2(ater)k 13(.)k 
grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 25 26
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Helvetica
%%+ font Times-Italic
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5709 -1582(-)m 5837(25)s 6123(-)s 9066 13413 0 13304 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore
480 13250(Here)m 1057(is)s
1324(a)s 1547(snapshot)s 2502(of)s 2830(a)s 3053(small)s
3682(dynamic)s 4616(tree,)s 5137(based)s 5797(on)s 6151(the)s
220 fnt6 6556 13247(@P)m 8(ageList)k 240 fnt1 7737 13250(de\207nitions)m
8855(of)s 0 12962(Section)m 774(3.2:)s 6982 3257 0 3257 240 288 60 480 9414 LoutGr2
grestore save gsave 200 dict begin lfigdict begin
grestore
200 fnt4 0 3121(output)m
563(\207le)s gsave
860 0 translate
240 fnt1 0 3257 0 3165 240 288 60 LoutGraphic
gsave
currentdict end 200 dict begin begin
grestore
0 0 0 0 240 288 60 0 3165 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfignoline [ lfigbox ] lfigdopath
pop pop
grestore

grestore
(A) lfigpromotelabels
grestore
1994(r)s 9(oot)k 2370(galle)s 6(y)k
gsave
1994 2967 translate
240 fnt1 1927 0 0 0 240 288 60 LoutGraphic
gsave
currentdict end 200 dict begin begin
grestore
0 0 0 0 240 288 60 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfignoline [ lfigbox ] lfigdopath
pop pop
grestore

grestore
(B) lfigpromotelabels
grestore
gsave
1994 473 translate
240 fnt1 1927 2494 0 2494 240 288 60 LoutGraphic
gsave
0 0 moveto xsize 0 lineto xsize ysize lineto
0 ysize lineto closepath stroke
grestore
160 fnt1 845 2216(-)m 931(1)s 1035(-)s 410 2000(A)m
563(small)s 140 fnt6 170 1784(@Galle)m 2(y)k 160 fnt1
743(*)s 904 1617 5 1545 160 180 40 853 275 LoutGr2
currentdict end 200 dict begin begin
grestore
10 10 5 5 160 180 40 0 1540 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfignoline [ lfigbox ] lfigdopath
pop pop
grestore

grestore
(C) lfigpromotelabels
grestore
140 fnt6 170 173(@F)m 4(ootSect)k 
grestore
gsave
1994 0 translate
240 fnt1 1927 473 170 237 240 288 60 LoutGraphic
gsave

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
140 fnt6
170 201(@P)m 5(ageList 2)k 
grestore
5055 2611(body)m 5490(te)s 4(xt)k
gsave
5055 1974 translate
240 fnt1 1927 483 170 240 240 288 60 LoutGraphic
gsave
currentdict end 200 dict begin begin
grestore
1927 483 170 240 240 288 60 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
160 fnt1 170 204(paragraph)m 
grestore
(D) lfigpromotelabels
grestore
gsave
5055 1524 translate
240 fnt1 1927 450 170 207 240 288 60 LoutGraphic
gsave

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
160 fnt1 170 171(of)m 351(te)s 2(xt.)k

grestore
gsave
5055 1034 translate
240 fnt1 1927 490 170 244 240 288 60 LoutGraphic
gsave

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
160 fnt6 170 203(@Input)m 
grestore
gsave
0 0 translate
240 fnt1 0 0 0 0 240 288 60 LoutGraphic
gsave

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ B@W lfigprevious /FROM lfigpointdef
A@E lfigprevious /TO lfigpointdef ] lfigdopath
0.15 cm /lfigsolid /lfigblack
lfigopen
0.15 cm 0.05 cm lfigforward
grestore

grestore
gsave
0 0 translate
240 fnt1 0 0 0 0 240 288 60 LoutGraphic
gsave

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ D@W lfigprevious /FROM lfigpointdef
C@E lfigprevious /TO lfigpointdef ] lfigdopath
0.15 cm /lfigsolid /lfigblack
lfigopen
0.15 cm 0.05 cm lfigforward
grestore

grestore
end end restore
grestore
0 8963(The)m 472(components)s 1724(of)s
2039(the)s 2431(body)s 3009(te)s 3(xt)k 3468(g)s 1(alle)k 3(y)k
4146(are)s 4537(lines,)s 5139(e)s 3(xcept)k 5864(for)s
6246(the)s 6638(special)s 7400(recepti)s 6(v)k 3(e)k
8366(symbol)s 220 fnt6 0 8672(@Input)m 240 fnt1 759 8675(which)m
1393(is)s 1595(a)s 1753(placeholder)s 2920(for)s 3249(as)s
3491(yet)s 3835(unread)s 4536(input)s 5080(\(Section)s 5924(5.4\).)s
6459(The)s 6879(components)s 8079(of)s 8342(the)s 8681(root)s
0 8387(g)m 1(alle)k 3(y)k 646(are)s 1006(pages,)s
1671(e)s 3(xcept)k 2364(for)s 2715(the)s 3076(concluding)s
4205(une)s 3(xpanded)k 5431(in)s 9(v)k 4(ocation)k
6498(of)s 220 fnt6 6781 8384(@P)m 8(ageList)k 240 fnt1
7845 8387(,)m 7965(which)s 8620(is)s 8843(an)s 0 8099(ine)m 3(xhaustible)k
1328(source)s 2008(of)s 2279(more)s 2826(pages,)s 3478(e)s 3(xpanded)k
4451(on)s 4748(demand.)s 480 7725(The)m 923(concrete)s 1804(data)s
2277(structure)s 3184(used)s 3696(by)s 4006(Basser)s 4718(Lout)s
5246(permits)s 6028(the)s 6392(g)s 1(alle)k 3(y)k
7041(\210ushing)s 7882(algorithm)s 8887(to)s 0 7437(na)m 4(vig)k 1(ate)k
861(the)s 1209(dynamic)s 2086(tree)s 2499(and)s 2903(\207nd)s
3334(signi\207cant)s 4390(features)s 5196(quickly:)s gsave
480 78 translate
200 fnt1 8081 7019 226 7019 200 288 50 LoutGraphic
gsave
grestore save gsave 100 dict begin lfigdict begin
grestore
980 7019 226 6704 200 288 50 0 0 LoutGr2
currentdict end 100 dict begin begin
grestore
980 585 226 270 200 288 50 0 6434 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
200 fnt4 226 226(HEAD)m

grestore
(A) lfigpromotelabels
grestore
1927 588 226 273 200 288 50 1830 6431 LoutGr2
currentdict end 100 dict begin begin
grestore
1631 588 226 273 200 288 50 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
200 fnt4 226 229(RECEIVING)m 1306(*)s 
grestore
(B) lfigpromotelabels
grestore
0 0 0 0 200 288 50 1830 6431 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ A@CTR A@CTR B@W lfigangle A@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
B@W lfigprevious /TO lfigpointdef ] lfigdopath
0.15 cm /lfigsolid /lfigblack
lfigopen
0.15 cm 0.05 cm lfigforward
grestore

grestore
1927 588 226 273 200 288 50 1830 5503 LoutGr2
currentdict end 100 dict begin begin
grestore
1498 588 226 273 200 288 50 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
200 fnt4 226 229(RECEPTIVE)m

grestore
(C) lfigpromotelabels
grestore
0 0 0 0 200 288 50 1830 5503 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ A@CTR A@CTR C@W lfigangle A@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
C@W lfigprevious /TO lfigpointdef ] lfigdopath
0.15 cm /lfigsolid /lfigblack
lfigopen
0.15 cm 0.05 cm lfigforward
grestore

grestore
1927 0 0 0 200 288 50 1830 5163 LoutGr2
currentdict end 100 dict begin begin
grestore
0 0 0 0 200 288 50 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfignoline [ lfigbox ] lfigdopath
pop pop
grestore

grestore
(D) lfigpromotelabels
grestore
0 0 0 0 200 288 50 1830 5163 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ A@CTR A@CTR D@NW lfigangle A@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
D@NW lfigprevious /TO lfigpointdef ] lfigdopath
0.15 cm /lfigsolid /lfigblack
lfigopen
0.15 cm 0.05 cm lfigforward
grestore

grestore
1927 2494 0 2494 200 288 50 1830 2669 LoutGr2
0 0 moveto xsize 0 lineto xsize ysize lineto
0 ysize lineto closepath stroke
grestore
160 fnt1 845 2216(-)m 931(1)s 1035(-)s 410 2000(A)m
563(small)s 1587 1611 0 1545 160 180 40 170 275 LoutGr2
currentdict end 100 dict begin begin
grestore
572 132 0 66 160 180 40 0 1479 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfignoline [ lfigbox ] lfigdopath
pop pop
grestore
140 fnt6 0 30(@Galle)m 2(y )k 
grestore
(E) lfigpromotelabels
grestore
1587 105 0 39 160 180 40 170 170 LoutGr2
currentdict end 100 dict begin begin
grestore
731 105 0 39 160 180 40 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfignoline [ lfigbox ] lfigdopath
pop pop
grestore
140 fnt6
0 3(@F)m 4(ootSect )k 
grestore
(F) lfigpromotelabels
grestore

grestore
0 0 0 0 200 288 50 1830 2669 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ B@E B@E 0 B@E E@E lfigydistance lfigpadd E@E ] lfigdopath
0.15 cm /lfigsolid /lfigblack
lfigopen
0.15 cm 0.05 cm lfigforward
grestore

grestore
0 0 0 0 200 288 50 1830 2669 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ C@E C@E 0 C@E F@E lfigydistance lfigpadd F@E ] lfigdopath
0.15 cm /lfigsolid /lfigblack
lfigopen
0.15 cm 0.05 cm lfigforward
grestore

grestore
1927 588 226 273 200 288 50 1830 1741 LoutGr2
currentdict end 100 dict begin begin
grestore
839 588 226 273 200 288 50 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
200 fnt4 226 229(GAP)m 
grestore
(C) lfigpromotelabels
grestore
0 0 0 0 200 288 50 1830 1741 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ A@CTR A@CTR C@W lfigangle A@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
C@W lfigprevious /TO lfigpointdef ] lfigdopath
0.15 cm /lfigsolid /lfigblack
lfigopen
0.15 cm 0.05 cm lfigforward
grestore

grestore
1927 588 226 273 200 288 50 1830 813 LoutGr2
currentdict end 100 dict begin begin
grestore
1498 588 226 273 200 288 50 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
200 fnt4
226 229(RECEPTIVE)m 
grestore
(C) lfigpromotelabels
grestore
0 0 0 0 200 288 50 1830 813 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ A@CTR A@CTR C@W lfigangle A@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
C@W lfigprevious /TO lfigpointdef ] lfigdopath
0.15 cm /lfigsolid /lfigblack
lfigopen
0.15 cm 0.05 cm lfigforward
grestore

grestore
1927 473 170 237 200 288 50 1830 0 LoutGr2
currentdict end 100 dict begin begin
grestore
1927 473 170 237 200 288 50 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
140 fnt6 170 201(@P)m 5(ageList 2)k 
grestore
(D) lfigpromotelabels
grestore
0 0 0 0 200 288 50 1830 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ A@CTR A@CTR D@NW lfigangle A@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
D@NW lfigprevious /TO lfigpointdef ] lfigdopath
0.15 cm /lfigsolid /lfigblack
lfigopen
0.15 cm 0.05 cm lfigforward
grestore

grestore
0 0 0 0 200 288 50 1830 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ C@E C@E 0 C@E D@W 1.8 cm 0 lfigpadd lfigydistance lfigpadd D@W 1.8 cm 0 lfigpadd ] lfigdopath
0.15 cm /lfigsolid /lfigblack
lfigopen
0.15 cm 0.05 cm lfigforward
grestore

grestore
980 7019 226 6704 200 288 50 4324 0 LoutGr2
currentdict end 100 dict begin begin
grestore
980 585 226 270 200 288 50 0 6434 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
200 fnt4
226 226(HEAD)m 
grestore
(A) lfigpromotelabels
grestore
0 0 0 0 200 288 50 5304 6704 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ B@E lfigprevious /FROM lfigpointdef
A@W lfigprevious /TO lfigpointdef ] lfigdopath
0.15 cm /lfigsolid /lfigblack
lfigopen
0.15 cm 0.05 cm lfigforward
grestore

grestore
1927 483 170 240 200 288 50 6154 6536 LoutGr2
currentdict end 100 dict begin begin
grestore
1927 483 170 240 200 288 50 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
160 fnt1 170 204(paragraph)m 
grestore
(B) lfigpromotelabels
grestore
0 0 0 0 200 288 50 6154 6536 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ A@CTR A@CTR B@W lfigangle A@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
B@W lfigprevious /TO lfigpointdef ] lfigdopath
0.15 cm /lfigsolid /lfigblack
lfigopen
0.15 cm 0.05 cm lfigforward
grestore

grestore
1927 588 226 273 200 288 50 6154 5608 LoutGr2
currentdict end 100 dict begin begin
grestore
839 588 226 273 200 288 50 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
200 fnt4 226 229(GAP)m

grestore
(B) lfigpromotelabels
grestore
0 0 0 0 200 288 50 6154 5608 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ A@CTR A@CTR B@W lfigangle A@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
B@W lfigprevious /TO lfigpointdef ] lfigdopath
0.15 cm /lfigsolid /lfigblack
lfigopen
0.15 cm 0.05 cm lfigforward
grestore

grestore
1927 450 170 207 200 288 50 6154 4818 LoutGr2
currentdict end 100 dict begin begin
grestore
1927 450 170 207 200 288 50 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
160 fnt1 170 171(of)m 351(te)s 2(xt.)k 
grestore
(B) lfigpromotelabels
grestore
0 0 0 0 200 288 50 6154 4818 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ A@CTR A@CTR B@NW lfigangle A@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
B@NW lfigprevious /TO lfigpointdef ] lfigdopath
0.15 cm /lfigsolid /lfigblack
lfigopen
0.15 cm 0.05 cm lfigforward
grestore

grestore
1927 588 226 273 200 288 50 6154 3890 LoutGr2
currentdict end 100 dict begin begin
grestore
839 588 226 273 200 288 50 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
200 fnt4
226 229(GAP)m 
grestore
(B) lfigpromotelabels
grestore
0 0 0 0 200 288 50 6154 3890 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ A@CTR A@CTR B@W lfigangle A@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
B@W lfigprevious /TO lfigpointdef ] lfigdopath
0.15 cm /lfigsolid /lfigblack
lfigopen
0.15 cm 0.05 cm lfigforward
grestore

grestore
1927 588 226 273 200 288 50 6154 2962 LoutGr2
currentdict end 100 dict begin begin
grestore
1498 588 226 273 200 288 50 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigellipse ] lfigdopath
pop pop
grestore
200 fnt4 226 229(RECEPTIVE)m 
grestore
(B) lfigpromotelabels
grestore
0 0 0 0 200 288 50 6154 2962 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ A@CTR A@CTR B@W lfigangle A@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
B@W lfigprevious /TO lfigpointdef ] lfigdopath
0.15 cm /lfigsolid /lfigblack
lfigopen
0.15 cm 0.05 cm lfigforward
grestore

grestore
1927 471 170 235 200 288 50 6154 2151 LoutGr2
currentdict end 100 dict begin begin
grestore
1927 471 170 235 200 288 50 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
140 fnt6 170 199(@Input)m

grestore
(C) lfigpromotelabels
grestore
0 0 0 0 200 288 50 6154 2151 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ A@CTR A@CTR C@NW lfigangle A@CIRCUM lfigpadd lfigprevious /FROM lfigpointdef
C@NW lfigprevious /TO lfigpointdef ] lfigdopath
0.15 cm /lfigsolid /lfigblack
lfigopen
0.15 cm 0.05 cm lfigforward
grestore

grestore
0 0 0 0 200 288 50 6154 2151 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ B@E B@E 0 B@E C@W 1.2 cm 0 lfigpadd lfigydistance lfigpadd C@W 1.2 cm 0 lfigpadd ] lfigdopath
0.15 cm /lfigsolid /lfigblack
lfigopen
0.15 cm 0.05 cm lfigforward
grestore

grestore
end end restore
grestore

grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 26 27
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Times-Italic
%%+ font Helvetica
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5705 -1581(-)m 5833(26)s 6126(-)s 9066 13414 0 13414 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore
0 13251(Each)m 521(g)s 1(alle)k 3(y)k
1140(has)s 1495(a)s 240 fnt4 1647 13253(HEAD)m 240 fnt1
2325 13251(node)m 2832(whose)s 3485(children)s 4311(are)s 4643(its)s
4904(component)s 6013(objects,)s 6783(separated)s 7728(by)s 240 fnt4
8007 13253(GAP)m 240 fnt1 8516 13251(nodes)m 0 12963(recording)m 969(the)s
1317(inter)s 4(-component)k 2953(g)s 1(aps.)k 480 12589(Each)m
1026(component)s 2161(is)s 2383(preceded)s 3315(by)s 3621(zero)s
4096(or)s 4367(more)s 240 fnt4 4925 12591(galle)m 7(y)k
5569(inde)s 4(x)k 6155(nodes)s 240 fnt1 6780 12589(of)m
7063(v)s 6(arious)k 7823(types.)s 8504(Ev)s 3(ery)k
0 12301(recepti)m 6(v)k 3(e)k 922(symbol)s 1681(has)s
2051(a)s 240 fnt4 2216 12303(RECEPTIVE)m 240 fnt1 3529 12301(inde)m 3(x)k
4112(pointing)s 4963(to)s 5201(it,)s 5440(so)s 5705(that)s
6123(it)s 6314(can)s 6703(be)s 6984(found)s 7601(without)s
8391(search)s 8998(-)s 0 12013(ing)m 355(through)s 1152(its)s
1423(component.)s 2646(If)s 2871(the)s 3215(symbol)s 3970(is)s
4175(currently)s 5086(the)s 5429(tar)s 4(get)k 6023(of)s
6290(a)s 6451(g)s 1(alle)k 3(y)k 15(,)k
7118(it)s 7305(has)s 7670(a)s 240 fnt4 7831 12015(RECEIVING)m
240 fnt1 0 11725(inde)m 3(x)k 595(instead)s 1342(which)s
1995(is)s 2217(also)s 2667(link)s 2(ed)k 3332(to)s
3583(the)s 3942(incoming)s 4911(g)s 1(alle)k 3(y)k 15(.)k
5652(Galle)s 3(ys)k 6441(that)s 6871(are)s 7229(currently)s
8157(without)s 8960(a)s 0 11437(tar)m 4(get)k 586(are)s
920(link)s 2(ed)k 1560(to)s 1786(the)s 2120(dynamic)s
2984(tree)s 3383(by)s 240 fnt4 3664 11439(UN)m 6(A)k 8(TT)k 12(A)k 7(CHED)k
240 fnt1 5215 11437(g)m 1(alle)k 3(y)k 5836(inde)s 3(x)k 3(es,)k
6654(either)s 7244(just)s 7635(after)s 8118(their)s 8601(most)s
0 11149(recent)m 643(tar)s 4(get)k 1242(if)s 1459(there)s
1992(has)s 2362(been)s 2871(one,)s 3324(or)s 3583(else)s
4010(at)s 4242(their)s 4739(point)s 5291(of)s 5562(in)s 9(v)k 4(ocation.)k
480 10775(Each)m 1041(g)s 1(alle)k 3(y)k 1701(should)s
2424(be)s 2732(thought)s 3550(of)s 3847(as)s 4123(a)s
4315(concurrent)s 5423(process,)s 6273(although)s 7194(the)s 7569(implementation)s
0 10487(in)m 268(C)s 506(uses)s 995(coroutines)s 2067(implemented)s
3399(by)s 3719(procedures.)s 4957(A)s 5213(g)s 1(alle)k 3(y)k
5873(may)s 6364(promote)s 7243(its)s 7545(\207rst)s 8002(component)s
0 10199(only)m 499(if)s 735(it)s 946(has)s 1335(a)s
1520(tar)s 4(get,)k 2185(suf\207cient)s 3153(space)s 3759(is)s
3988(a)s 4(v)k 6(ailable)k 4915(at)s 5166(the)s
5533(tar)s 4(get)k 6151(to)s 6409(recei)s 6(v)k 3(e)k
7164(the)s 7531(component,)s 8722(and)s 0 9911(the)m 349(component)s
1475(contains)s 2325(no)s 2620(recepti)s 6(v)k 3(e)k
3544(symbols.)s 4508(This)s 4986(last)s 5379(condition)s 6342(seems)s
6979(to)s 7220(be)s 7504(the)s 7854(k)s 2(e)k 3(y)k
8251(to)s 8492(g)s 1(alle)k 3(y)k 0 9623(synchronization:)m
1722(it)s 1943(forces)s 2606(a)s 2801(bottom-up)s 3880(promotion)s
4963(re)s 3(gime,)k 5759(pre)s 6(v)k 3(enting)k
6855(pages)s 7480(from)s 8033(\210ushing)s 8887(to)s 0 9335(output)m
672(before)s 1338(te)s 3(xt)k 1753(\210ushes)s 2469(into)s
2894(them,)s 3479(for)s 3817(e)s 3(xample.)k 480 8961(Each)m
1022(g)s 1(alle)k 3(y)k 1663(contains)s 2519(a)s
2692(number)s 3490(of)s 3769(binary)s 4441(semaphores,)s 5685(sho)s 6(wn)k
6369(as)s 6626(asterisks)s 7507(in)s 7757(our)s 8144(snapshots)s
0 8673(when)m 583(set.)s 1019(At)s 1325(an)s 3(y)k
1730(gi)s 6(v)k 3(en)k 2317(moment,)s 3215(a)s
3389(g)s 1(alle)k 3(y)k 4030(process)s 4805(is)s
5022(either)s 5633(running)s 6438(or)s 6704(else)s 7139(is)s
7356(suspended)s 8419(on)s 8724(one)s 0 8385(of)m 269(its)s
543(o)s 6(wn)k 1005(semaphores.)s 2296(The)s 240 fnt4
2722 8387(HEAD)m 240 fnt1 3413 8385(node)m 3933(contains)s 4779(a)s
4943(semaphore)s 6033(which)s 6673(is)s 6881(set)s 7204(when)s
7778(the)s 8124(g)s 1(alle)k 3(y)k 8756(has)s
0 8097(tried)m 499(to)s 742(\207nd)s 1177(a)s 1347(tar)s 4(get)k
1950(and)s 2359(f)s 2(ailed.)k 3068(Each)s 3607(recepti)s 6(v)k 3(e)k
4533(symbol)s 5297(has)s 5671(a)s 5842(semaphore)s 6938(which)s
7584(is)s 7798(set)s 8127(when)s 8708(that)s 0 7809(symbol)m
760(is)s 970(pre)s 6(v)k 3(enting)k 2037(the)s
2385(\207rst)s 2816(component)s 3940(from)s 4464(being)s 5049(promoted.)s
480 7435(F)m 3(or)k 859(e)s 3(xample,)k 1762(in)s
1994(the)s 2331(snapshot)s 3218(at)s 3439(the)s 3776(be)s 3(ginning)k
4773(of)s 5033(this)s 5418(section,)s 6191(the)s 6528(root)s
6962(g)s 1(alle)k 3(y)k 7585(is)s 7784(suspended)s
8829(on)s 0 7147(the)m 220 fnt6 351 7144(@Galle)m 4(y)k
240 fnt1 1253 7147(symbol,)m 2069(b)s 4(ut)k 2435(the)s
2787(te)s 3(xt)k 3205(g)s 1(alle)k 3(y)k
3843(is)s 4057(running.)s 4970(It)s 5179(will)s 5608(suspend)s
6442(on)s 6743(the)s 220 fnt6 7095 7144(@Input)m 240 fnt1
7866 7147(symbol)m 8630(after)s 0 6859(the)m 348(\207rst)s 779(tw)s 2(o)k
1189(components)s 2397(are)s 2744(promoted.)s 480 6485(Ev)m 3(ery)k
1145(g)s 1(alle)k 3(y)k 240 fnt4 1822 6487(G)m
240 fnt1 1995 6485(,)m 2145(be)s 2470(it)s 2705(a)s
2914(list)s 3308(of)s 3623(pages,)s 4318(body)s 4895(te)s 3(xt,)k
5400(a)s 5609(footnote,)s 6556(or)s 6858(whate)s 6(v)k 3(er)k 9(,)k
7866(e)s 3(x)k 3(ecutes)k 8778(the)s 0 6197(follo)m 6(wing)k
977(algorithm)s 1966(in)s 2209(parallel)s 2979(with)s 3461(e)s 6(v)k 3(ery)k
4037(other)s 4588(g)s 1(alle)k 3(y:)k 0 5694(1.)m
303(Initially)s 240 fnt4 1132 5696(G)m 240 fnt1 1384 5694(is)m
1614(unattached.)s 2834(Search)s 3560(forw)s 2(ards)k 4478(or)s
4756(backw)s 2(ards)k 5848(from)s 6392(its)s 240 fnt4
6687 5696(UN)m 6(A)k 8(TT)k 12(A)k 7(CHED)k
240 fnt1 8272 5694(inde)m 3(x)k 8876(as)s 0 5406(required,)m
903(to)s 1142(\207nd)s 1573(a)s 1739(recepti)s 6(v)k 3(e)k
2661(symbol)s 240 fnt4 3421 5408(S)m 240 fnt1 3602 5406(which)m
4244(can)s 4633(e)s 3(xpand)k 5380(to)s 5619(re)s 6(v)k 3(eal)k
6248(a)s 6414(tar)s 4(get)k 7013(for)s 240 fnt4
7351 5408(G)m 240 fnt1 7524 5406(.)m 0 4903(2.)m 284(If)s
514(no)s 240 fnt4 807 4905(S)m 240 fnt1 988 4903(can)m
1377(be)s 1659(found,)s 2325(suspend)s 3155(on)s 3452(the)s
3800(attachment)s 4908(semaphore.)s 6108(Resume)s 6935(later)s 7418(from)s
7942(step)s 8380(1.)s 0 4400(3.)m 281(Expand)s 240 fnt4
1068 4402(S)m 240 fnt1 1246 4400(to)m 1482(re)s 6(v)k 3(eal)k
2107(the)s 2452(tar)s 4(get)k 3048(of)s 240 fnt4
3316 4402(G)m 240 fnt1 3489 4400(.)m 3649(Preserv)s 3(e)k
240 fnt4 4521 4402(S)m 240 fnt1 4642 4400(')m 13(s)k
4849(semaphore)s 5938(by)s 6229(mo)s 3(ving)k 7007(it)s
7196(to)s 7432(the)s 7777(\207rst)s 8204(recepti)s 6(v)k 3(e)k
0 4112(symbol)m 760(within)s 1428(the)s 1776(e)s 3(xpansion)k
2801(of)s 240 fnt4 3072 4114(S)m 240 fnt1 3193 4112(.)m
0 3609(4.)m 295(Calculate)s 1264(the)s 1624(a)s 4(v)k 6(ailable)k
2543(width)s 3156(and)s 3572(height)s 4241(at)s 4484(the)s
4844(tar)s 4(get,)k 5501(and)s 5917(if)s 240 fnt4
6145 3611(G)m 240 fnt1 6389 3609(is)m 6611(still)s 7034(a)s
7211(pure)s 7704(parse)s 8275(tree,)s 8751(use)s 0 3321(the)m
377(en)s 9(vironment)k 1667(attached)s 2550(to)s 240 fnt4
2819 3323(G)m 240 fnt1 3081 3321(and)m 3515(the)s 3892(style)s
4429(information)s 5643(from)s 6197(the)s 6574(tar)s 4(get)k
7203(to)s 7471(e)s 6(v)k 6(aluate)k 240 fnt4
8341 3323(G)m 240 fnt1 8603 3321(as)m 8883(in)s 0 3033(Section)m
774(4.)s 0 2577(5.)m 284(Examine)s 1190(the)s 1538(components)s
2746(of)s 240 fnt4 3017 2579(G)m 240 fnt1 3250 2577(one)m
3652(by)s 3946(one.)s 4456(F)s 3(or)k 4845(each)s
5340(component)s 6464(there)s 6997(are)s 7344(three)s 7877(possibilities:)s
240 fnt4 480 2205(A)m 7(CCEPT)k 17(.)k 240 fnt1
1513 2203(If)m 1756(the)s 2116(component)s 3253(\207ts)s 3609(into)s
4046(the)s 4407(a)s 4(v)k 6(ailable)k 5328(space,)s
5978(and)s 6395(has)s 6778(no)s 7083(other)s 7647(problems,)s
8657(then)s 0 1915(promote)m 875(it)s 1090(into)s 1538(the)s
1909(tar)s 4(get.)k 2635(If)s 2888(this)s 3306(is)s
3539(the)s 3910(\207rst)s 4364(component)s 5511(promoted)s 6509(into)s
6956(this)s 7375(tar)s 4(get,)k 8044(and)s 240 fnt4
8471 1917(G)m 240 fnt1 8727 1915(is)m 8960(a)s 0 1627(forcing)m
768(g)s 1(alle)k 3(y)k 1428(\(Section)s 2307(5.4\),)s
2819(delete)s 3470(e)s 6(v)k 3(ery)k 4072(recepti)s 6(v)k 3(e)k
5020(symbol)s 5806(preceding)s 6827(the)s 7201(tar)s 4(get)k
7826(in)s 8095(the)s 8469(parent)s 0 1339(g)m 1(alle)k 3(y)k 15(.)k
729(If)s 240 fnt4 959 1341(G)m 240 fnt1 1192 1339(is)m
1402(the)s 1750(root)s 2195(g)s 1(alle)k 3(y)k 15(,)k
2867(render)s 3537(the)s 3885(component)s 5009(on)s 5306(the)s
5654(output)s 6326(\207le)s 6687(and)s 7091(dispose)s 7865(it;)s
240 fnt4 480 967(REJECT)m 17(.)k 240 fnt1 1490 965(If)m
1756(the)s 2140(component)s 3300(is)s 3546(too)s 3941(lar)s 4(ge)k
4506(for)s 4880(the)s 5264(a)s 4(v)k 6(ailable)k
6208(space,)s 6882(or)s 7177(a)s 240 fnt4 7379 967(FOLLO)m 12(WS)k
240 fnt1 8542 965(inde)m 3(x)k 0 677(\(described)m 1043(belo)s 6(w\))k
1740(forbids)s 2458(its)s 2723(promotion)s 3767(into)s 4182(this)s
4568(tar)s 4(get,)k 5203(then)s 5662(detach)s 240 fnt4
6333 679(G)m 240 fnt1 6556 677(from)m 7069(the)s 7407(tar)s 4(get.)k
8100(If)s 8320(this)s 8705(w)s 2(as)k 0 389(the)m
338(\207rst)s 758(component)s 1872(at)s 2093(this)s 2479(tar)s 4(get,)k
240 fnt4 3114 391(S)m 240 fnt1 3284 389(has)m 3644(been)s
4142(a)s 4298(complete)s 5219(f)s 2(ailure,)k 5936(so)s
6191(undo)s 6713(step)s 7141(3)s 7294(\(Basser)s 8060(Lout)s
8561(is)s 8760(not)s 
grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 27 28
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Times-Italic
%%+ font Helvetica
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5708 -1579(-)m 5836(27)s 6124(-)s 9066 13418 0 13309 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore
0 13255(able)m 454(to)s
693(undo)s 1226(step)s 1664(4\);)s 1975(otherwise)s 2960(delete)s
3586(the)s 3934(tar)s 4(get.)k 4637(Return)s 5345(to)s
5584(step)s 6022(1)s 6177(and)s 6581(continue)s 7461(immediately;)s
240 fnt4 480 12883(SUSPEND.)m 240 fnt1 1685 12881(If)m 1928(the)s
2289(component)s 3426(contains)s 4287(a)s 4466(recepti)s 6(v)k 3(e)k
5402(symbol,)s 6227(it)s 6432(cannot)s 7143(be)s 7438(promoted)s
8426(yet.)s 8896(If)s 0 12593(this)m 392(symbol)s 1148(is)s
1354(the)s 1697(tar)s 4(get)k 2292(of)s 2559(a)s
2720(g)s 1(alle)k 3(y)k 3350(that)s 3764(w)s 2(as)k
4180(written)s 4909(to)s 5144(an)s 5423(auxiliary)s 6321(\207le)s
6678(on)s 6971(a)s 7132(pre)s 6(vious)k 7997(run,)s
8419(read)s 8883(in)s 0 12305(that)m 427(g)s 1(alle)k 3(y)k
1071(and)s 1484(\210ush)s 2017(it.)s 2322(Otherwise)s 3370(suspend)s
4209(on)s 4516(the)s 4873(recepti)s 6(v)k 3(e)k
5805(symbol')s 13(s)k 6729(semaphore;)s 7887(resume)s 8643(later)s
0 12017(from)m 524(step)s 962(4.)s 0 11513(6.)m 284(T)s 16(erminate)k
1305(when)s 1881(the)s 2229(g)s 1(alle)k 3(y)k
2863(is)s 3073(empty)s 15(.)k 0 11010(At)m 354(v)s 6(arious)k
1158(points)s 1850(in)s 2148(this)s 2599(algorithm,)s 3691(recepti)s 6(v)k 3(e)k
4668(symbols)s 5572(\(and)s 6111(their)s 6663(semaphores\))s 7975(are)s
8378(deleted)s 0 10722(in)m 273(the)s 652(dynamic)s 1560(parent)s
2247(g)s 1(alle)k 3(y)k 15(,)k 2950(possibly)s
3833(permitting)s 4911(it)s 5134(to)s 5404(resume)s 6180(\210ushing.)s
7147(When)s 7807(this)s 8234(happens,)s 0 10434(Basser)m 701(Lout)s
1218(resumes)s 2057(the)s 2410(parent)s 3071(immediately)s 4324(after)s
240 fnt4 4825 10436(G)m 240 fnt1 5063 10434(suspends)m 5983(or)s
6247(terminates.)s 7410(Also,)s 7974(whene)s 6(v)k 3(er)k
8960(a)s 0 10146(component)m 1140(is)s 1366(promoted,)s 2406(an)s 3(y)k
2819(child)s 3371(g)s 1(alle)k 3(ys)k 4111(connected)s
5156(to)s 5411(it)s 5619(by)s 240 fnt4 5929 10148(UN)m 6(A)k 8(TT)k 12(A)k 7(CHED)k
240 fnt1 7510 10146(inde)m 3(x)k 3(es)k 8302(must)s
8844(be)s 0 9858(resumed,)m 918(since)s 1466(these)s 2014(g)s 1(alle)k 3(ys)k
2739(may)s 3206(be)s 3490(able)s 3945(to)s 4185(\207nd)s
4617(a)s 4784(tar)s 4(get)k 5384(no)s 6(w)k 15(.)k
5942(A)s 6173(good)s 6712(e)s 3(xample)k 7576(of)s
7848(this)s 8246(situation)s 0 9570(occurs)m 664(when)s 1228(a)s
1382(line)s 1785(of)s 2044(body)s 2566(te)s 3(xt)k
2969(with)s 3440(one)s 3830(or)s 4077(more)s 4613(footnotes)s
5542(is)s 5740(promoted)s 6703(onto)s 7171(a)s 7325(page.)s
7929(Basser)s 8614(Lout)s 0 9282(gi)m 6(v)k 3(es)k
547(priority)s 1317(to)s 1556(such)s 2052(children,)s 2942(suspending)s
240 fnt4 4073 9284(G)m 240 fnt1 4306 9282(while)m 4893(each)s
5388(is)s 5598(gi)s 6(v)k 3(en)k 6178(a)s
6344(chance)s 7064(to)s 7303(\210ush.)s 480 8908(Basser)m 1211(Lout)s
1758(searches)s 2653(for)s 3025(the)s 3408(\207rst)s 3874(tar)s 4(get)k
4507(of)s 240 fnt4 4813 8910(G)m 240 fnt1 5081 8908(only)m
5595(in)s 5873(re)s 3(gions)k 6660(of)s 6965(the)s
7348(dynamic)s 8260(tree)s 8708(that)s 0 8620(will)m 437(clearly)s
1152(precede)s 1963(or)s 2233(follo)s 6(w)k 240 fnt4
2917 8622(G)m 240 fnt1 3090 8620(')m 13(s)k 3312(in)s 9(v)k 4(ocation)k
4378(point)s 4941(in)s 5196(the)s 5556(\207nal)s 6047(printed)s
6794(document,)s 7857(whiche)s 6(v)k 3(er)k 8916(is)s
0 8332(speci\207ed)m 904(in)s 1142(the)s 220 fnt6 1486 8329(into)m
240 fnt1 1887 8332(clause;)m 2591(subsequent)s 3711(tar)s 4(gets)k
4389(are)s 4731(sought)s 5426(later)s 5904(in)s 6142(the)s
6486(same)s 7028(g)s 1(alle)k 3(y)k 7657(as)s
7903(the)s 8246(\207rst.)s 8776(An)s 0 8044(e)m 3(xception)k
982(to)s 1219(this)s 1613(rule,)s 2089(whose)s 2755(necessity)s
3683(will)s 4107(be)s 4387(made)s 4959(clear)s 5480(later)s 9(,)k
5999(is)s 6207(that)s 6623(a)s 6787(\207rst)s 220 fnt6
7216 8041(f)m 6(ollo)k 3(wing)k 240 fnt1 8104 8044(tar)m 4(get)k
8700(will)s 0 7756(be)m 282(sought)s 981(within)s 1649(a)s
1815(dynamic)s 2692(sibling)s 3396(g)s 1(alle)k 3(y)k
4030(preceding)s 240 fnt4 5026 7758(G)m 240 fnt1 5199 7756(')m 13(s)k
5409(in)s 9(v)k 4(ocation)k 6463(point:)s gsave
480 2770 translate
200 fnt1 5379 4646 0 4646 200 288 50 LoutGraphic
gsave
grestore save gsave 200 dict begin lfigdict begin
grestore
200 fnt4
0 4510(dynamic)m 722(par)s 7(ent)k gsave
0 1353 translate
200 fnt1 2039 3003 226 2777 200 288 50 LoutGraphic
gsave

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
1587 171 0 86 200 288 50 226 2323 LoutGr2
currentdict end 200 dict begin begin
grestore
796 171 0 86 200 288 50 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfignoline [ lfigbox ] lfigdopath
pop pop
grestore
180 fnt6 0 40(@XT)m 21(arget)k

grestore
(A) lfigpromotelabels
grestore
1587 136 0 47 200 288 50 226 1620 LoutGr2
currentdict end 200 dict begin begin
grestore
1254 136 0 47 200 288 50 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfignoline [ lfigbox ] lfigdopath
pop pop
grestore
200 fnt4 0 3(UN)m 5(A)k 7(TT)k 10(A)k 6(CHED)k

grestore
(C) lfigpromotelabels
grestore
180 fnt6 226 752(@XT)m 21(arget)k 
grestore
gsave
2889 4135 translate
200 fnt1 2490 171 0 86 200 288 50 LoutGraphic
gsave
currentdict end 200 dict begin begin
grestore
2450 171 0 86 200 288 50 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfignoline [ lfigbox ] lfigdopath
pop pop
grestore
180 fnt6 0 40(X into { @XT)m 21(arget&&f)k 5(ollo)k 2(wing })k

grestore
(B) lfigpromotelabels
grestore
gsave
2889 2720 translate
200 fnt1 2039 1302 226 1076 200 288 50 LoutGraphic
gsave

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
180 fnt6 226 492(@GT)m 21(arget)k 
grestore
gsave
2889 1982 translate
200 fnt1 2490 171 0 86 200 288 50 LoutGraphic
gsave
currentdict end 200 dict begin begin
grestore
2490 171 0 86 200 288 50 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfignoline [ lfigbox ] lfigdopath
pop pop
grestore
180 fnt6 0 40(G into { @GT)m 21(arget&&f)k 5(ollo)k 2(wing })k

grestore
(D) lfigpromotelabels
grestore
gsave
2889 0 translate
200 fnt1 2039 1869 226 1643 200 288 50 LoutGraphic
gsave

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore

grestore
gsave
0 0 translate
200 fnt1 0 0 0 0 200 288 50 LoutGraphic
gsave

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ A@E 0.2 cm 0 lfigpadd lfigprevious /FROM lfigpointdef
0.2 cm 0 B@W lfigpsub lfigprevious /TO lfigpointdef ] lfigdopath
0.15 cm /lfigsolid /lfigblack
lfigopen
0.15 cm 0.05 cm lfigforward
grestore

grestore
gsave
0 0 translate
200 fnt1 0 0 0 0 200 288 50 LoutGraphic
gsave

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ C@E 0.2 cm 0 lfigpadd lfigprevious /FROM lfigpointdef
0.2 cm 0 D@W lfigpsub lfigprevious /TO lfigpointdef ] lfigdopath
0.15 cm /lfigsolid /lfigblack
lfigopen
0.15 cm 0.05 cm lfigforward
grestore

grestore
end end restore
grestore
0 2319(Here)m 240 fnt4 524 2321(G)m 240 fnt1 762 2319(will)m
1193(\207nd)s 1629(the)s 220 fnt6 1982 2316(@GT)m 26(arget)k
240 fnt1 3045 2319(tar)m 4(get)k 3649(within)s 240 fnt4
4322 2321(X)m 240 fnt1 4478 2319(.)m 4647(This)s 5128(is)s
5343(dangerous,)s 6439(since)s 6991(if)s 7213(the)s 7566(\207rst)s
8002(component)s 0 2031(of)m 240 fnt4 303 2033(G)m 240 fnt1
568 2031(is)m 811(then)s 1312(promoted)s 2320(via)s 240 fnt4
2704 2033(X)m 240 fnt1 2952 2031(into)m 3410(the)s 3790(\207rst)s
220 fnt6 4254 2028(@XT)m 26(arget)k 240 fnt1 5319 2031(rather)m
5967(than)s 6469(into)s 6926(the)s 7307(second,)s 240 fnt4
8111 2033(G)m 240 fnt1 8284 2031(')m 13(s)k 8527(tar)s 4(get)k
0 1743(will)m 438(not)s 817(appear)s 1526(later)s 2022(in)s
2277(the)s 2638(\207nal)s 3130(printed)s 3878(document)s 4894(than)s
5376(its)s 5664(in)s 9(v)k 4(ocation)k 6731(point,)s
7342(as)s 7605(required)s 8471(by)s 8778(the)s 220 fnt6
0 1452(into)m 240 fnt1 406 1455(clause.)m 480 1081(Accordingly)m 15(,)k
1753(when)s 2313(such)s 2794(a)s 2944(tar)s 4(get)k
3528(is)s 3722(chosen,)s 4478(tw)s 2(o)k 4873(special)s
5575(g)s 1(alle)k 3(y)k 6194(inde)s 3(x)k 3(es)k
6954(are)s 7286(inserted)s 8084(and)s 8472(link)s 2(ed)k
0 793(together:)m 898(a)s 240 fnt4 1074 795(PRECEDES)m 240 fnt1
2327 793(inde)m 3(x)k 2921(at)s 240 fnt4 3163 795(G)m
240 fnt1 3336 793(')m 13(s)k 3555(in)s 9(v)k 4(ocation)k
4619(point,)s 5227(and)s 5641(a)s 240 fnt4 5817 795(FOLLO)m 12(WS)k
240 fnt1 6952 793(inde)m 3(x)k 7546(at)s 7787(the)s
8145(\207rst)s 8586(com)s 8998(-)s 0 505(ponent)m 720(of)s
240 fnt4 1000 507(G)m 240 fnt1 1173 505(.)m 1346(The)s
1783(algorithm)s 2781(checks)s 3492(before)s 4167(promoting)s 5226(an)s 3(y)k
240 fnt4 5632 507(FOLLO)m 12(WS)k 240 fnt1 6767 505(inde)m 3(x)k
7360(that)s 7787(its)s 8072(promotion)s 
grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 28 29
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Times-Italic
%%+ font Helvetica
%%+ font Symbol
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
%%IncludeResource: font Symbol
/fnt5 { /Symbol LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5708 -1579(-)m 5836(28)s 6123(-)s 9066 13416 0 13307 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore
0 13253(w)m 2(ould)k
661(not)s 1033(place)s 1600(it)s 1798(earlier)s 2472(than)s
2948(the)s 3302(corresponding)s 240 fnt4 4730 13255(PRECEDES)m 240 fnt1
5981 13253(inde)m 3(x)k 6571(in)s 6820(the)s 7175(same)s
7728(g)s 1(alle)k 3(y)k 15(,)k 8406(and)s
8817(re)s 8998(-)s 0 12965(jects)m 486(the)s 831(component)s
1952(if)s 2166(it)s 2355(w)s 2(ould.)k 3113(Since)s
240 fnt4 3697 12967(PRECEDES)m 240 fnt1 4939 12965(and)m 240 fnt4
5340 12967(FOLLO)m 12(WS)k 240 fnt1 6463 12965(inde)m 3(x)k 3(es)k
7236(are)s 7580(rarely)s 8187(used,)s 8730(this)s 0 12677(check)m
619(can)s 1008(be)s 1290(implemented)s 2596(by)s 2890(linear)s
3493(search.)s 480 12303(When)m 1114(tw)s 2(o)k 1529(components)s
2742(are)s 3094(separated)s 4060(by)s 220 fnt6 4359 12300(/)m
240 fnt1 4423 12303(,)m 4535(as)s 4790(opposed)s 5652(to)s
5897(the)s 6250(more)s 6802(usual)s 220 fnt6 7367 12300(//)m
240 fnt1 7492 12303(,)m 7604(each)s 8105(in\210uences)s 0 12015(the)m
358(horizontal)s 1393(position)s 2232(of)s 2514(the)s 2872(other)s 13(.)k
3525(Because)s 4389(of)s 4671(this,)s 5133(the)s 240 fnt4
5492 12017(SUSPEND)m 240 fnt1 6596 12015(action)m 7248(is)s 7468(in)s
7722(f)s 2(act)k 8148(tak)s 2(en)k 8732(if)s
8960(a)s 0 11727(recepti)m 6(v)k 3(e)k 930(symbol)s
1698(occurs)s 2382(in)s 2633(an)s 3(y)k 3039(component)s
4171(separated)s 5140(from)s 5672(the)s 6028(\207rst)s 6468(by)s
220 fnt6 6770 11724(/)m 240 fnt1 6903 11727(operators)m 7851(only)s 15(.)k
8435(Ag)s 1(ain,)k 0 11439(linear)m 603(search)s 1270(forw)s 2(ards)k
2168(to)s 2407(the)s 2755(\207rst)s 220 fnt6 3186 11436(//)m
240 fnt1 3371 11439(suf\207ces)m 4152(for)s 4490(this)s 4886(check.)s
480 11065(A)m 740(good)s 1308(illustration)s 2430(of)s 2731(these)s
3308(unusual)s 4139(cases)s 4724(is)s 4964(af)s 6(forded)k
5856(by)s 6180(the)s 220 fnt6 6558 11062(@Align)m 240 fnt1
7344 11065(symbols)m 8223(from)s 8778(the)s 0 10777(standard)m 867(DocumentLayout)s
2600(package.)s 3546(These)s 4171(are)s 4516(used)s 5012(to)s
5249(produce)s 6074(displayed)s 7047(equations,)s 8069(aligned)s 8829(on)s
0 10489(their)m 497(equals)s 1159(signs)s 1702(despite)s 2435(being)s
3020(separated)s 3980(by)s 4274(arbitrary)s 5149(body)s 5683(te)s 3(xt.)k
480 10115(The)m 220 fnt6 921 10112(@Align)m 240 fnt1 1689 10115(symbols)m
2551(are)s 2911(packaged)s 3886(neatly)s 4537(for)s 4889(the)s
5250(con)s 9(v)k 3(enience)k 6503(of)s 6787(the)s
7148(non-e)s 3(xpert)k 8254(user)s 9(,)k 8764(b)s 4(ut)k
0 9827(we)m 335(will)s 761(sho)s 6(w)k 1315(just)s
1720(the)s 2067(essence)s 2853(of)s 3124(the)s 3472(implementation)s
5029(here.)s 5603(First,)s 6147(an)s 220 fnt6 6430 9824(@AlignList)m
240 fnt1 7536 9827(g)m 1(alle)k 3(y)k 8170(is)s
8379(created)s 0 9539(which)m 642(contains)s 1490(an)s 1773(in\207nite)s
2506(supply)s 3199(of)s 220 fnt6 3470 9536(@AlignPlace)m 240 fnt1
4779 9539(recepti)m 6(v)k 3(e)k 5701(symbols)s 6550(separated)s
7510(by)s 220 fnt6 7804 9536(/)m 240 fnt1 7928 9539(operators:)m
4777 3207 0 3207 240 288 60 480 5992 LoutGr2
grestore save gsave 200 dict begin lfigdict begin
grestore
240 fnt4 0 3044(body)m 522(te)s 4(xt)k 926(galle)s 7(y)k
gsave
0 161 translate
240 fnt1 2039 2720 226 2494 240 288 60 LoutGraphic
gsave

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
1587 1418 0 1314 240 288 60 226 226 LoutGr2
currentdict end 200 dict begin begin
grestore
838 208 0 104 240 288 60 0 1210 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfignoline [ lfigbox ] lfigdopath
pop pop
grestore
220 fnt6 0 47(@Galle)m 4(y)k 
grestore
(A) lfigpromotelabels
grestore

grestore
gsave
2889 1638 translate
240 fnt1 1888 209 0 105 240 288 60 LoutGraphic
gsave
currentdict end 200 dict begin begin
grestore
1046 209 0 105 240 288 60 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfignoline [ lfigbox ] lfigdopath
pop pop
grestore
220 fnt6 0 48(@AlignList)m

grestore
(B) lfigpromotelabels
grestore
gsave
2889 0 translate
240 fnt1 1888 1525 226 1195 240 288 60 LoutGraphic
gsave

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
220 fnt6 226 1138(@AlignPlace)m 226 850(@AlignPlace)m 226 562(...)m 226 274(@EndAlignList)m

grestore
gsave
0 0 translate
240 fnt1 0 0 0 0 240 288 60 LoutGraphic
gsave

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ A@E 0.2 cm 0 lfigpadd lfigprevious /FROM lfigpointdef
0.2 cm 0 B@W lfigpsub lfigprevious /TO lfigpointdef ] lfigdopath
0.15 cm /lfigsolid /lfigblack
lfigopen
0.15 cm 0.05 cm lfigforward
grestore

grestore
end end restore
grestore
0 5541(Then)m 549(equations)s 1517(lik)s 2(e)k 1471 214 393 105 240 288 60 480 4987 LoutGr2
grestore save gsave 200 dict begin lfigdict begin
grestore
1471 214 393 105 240 288 60 0 0 LoutGr2
/lfiglightgrey [ lfigbox ] gsave lfigpaintpath grestore
0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
1471 214 393 105 240 288 60 0 0 LoutGr2

0.015 cm setlinewidth lfiground setlinecap
0.15 cm /lfigdashed [ -0.3 cm ymark xsize ymark 0.3 cm 0 lfigpadd
[]
xmark -0.3 cm xmark ysize 0 0.3 cm lfigpadd ] lfigdopath
pop pop
grestore
240 fnt4
0 53(f)m 240 fnt5 113 45(\()m 240 fnt4 197 53(x)m
240 fnt5 315 45(\))m 477(=)s 240 fnt4 690 53(g)m
240 fnt5 816 45(\()m 240 fnt4 900 53(x)m 240 fnt5
1018 45(\))m 1156(+)s 1357(2)s 
grestore

grestore
end end restore
grestore
0 4536(are)m 358(created)s
1117(and)s 1532(sent)s 1989(to)s 220 fnt6 2239 4533(@AlignPlace&&f)m 6(ollo)k 3(wing)k
240 fnt1 4690 4536(tar)m 4(gets.)k 5498(The)s 3(y)k
6052(collect)s 6760(in)s 7014(the)s 220 fnt6 7374 4533(@AlignList)m
240 fnt1 8492 4536(g)m 1(alle)k 3(y)k 0 4248(and)m
404(are)s 751(aligned)s 1513(there:)s 5836 3212 0 3212 240 288 60 480 696 LoutGr2
grestore save gsave 200 dict begin lfigdict begin
grestore
240 fnt4 0 3049(body)m
522(te)s 4(xt)k 926(galle)s 7(y)k gsave
0 166 translate
240 fnt1 2039 2720 226 2494 240 288 60 LoutGraphic
gsave

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
1587 1418 0 1314 240 288 60 226 226 LoutGr2
currentdict end 200 dict begin begin
grestore
838 208 0 104 240 288 60 0 1210 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfignoline [ lfigbox ] lfigdopath
pop pop
grestore
220 fnt6
0 47(@Galle)m 4(y)k 
grestore
(A) lfigpromotelabels
grestore

grestore
gsave
2889 1643 translate
240 fnt1 2947 209 0 105 240 288 60 LoutGraphic
gsave
currentdict end 200 dict begin begin
grestore
1046 209 0 105 240 288 60 0 0 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfignoline [ lfigbox ] lfigdopath
pop pop
grestore
220 fnt6 0 48(@AlignList)m 
grestore
(B) lfigpromotelabels
grestore
gsave
2889 0 translate
240 fnt1 2947 1530 1285 1195 240 288 60 LoutGraphic
gsave

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ lfigbox ] lfigdopath
pop pop
grestore
2495 1078 1059 969 240 288 60 226 226 LoutGr2

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigdashed [ xmark ysize lfigprevious /FROM lfigpointdef
xmark 0 lfigprevious /TO lfigpointdef ] lfigdopath
pop pop
grestore
240 fnt4
666 917(f)m 240 fnt5 779 909(\()m 240 fnt4 863 917(x)m
240 fnt5 981 909(\))m 1143(=)s 240 fnt4 1356 917(g)m
240 fnt5 1482 909(\()m 240 fnt4 1566 917(x)m 240 fnt5
1684 909(\))m 1822(+)s 2023(2)s 240 fnt4 0 629(f)m
240 fnt5 113 621(\()m 240 fnt4 197 629(x)m 240 fnt5
315 621(\))m 453(-)s 240 fnt4 653 629(g)m 240 fnt5
779 621(\()m 240 fnt4 863 629(x)m 240 fnt5 981 621(\))m
1143(=)s 1356(2)s 220 fnt6 1059 336(...)m 1059 48(@EndAlignList)m

grestore

grestore
gsave
0 0 translate
240 fnt1 0 0 0 0 240 288 60 LoutGraphic
gsave

0.5 pt setlinewidth lfiground setlinecap
0.15 cm /lfigsolid [ A@E 0.2 cm 0 lfigpadd lfigprevious /FROM lfigpointdef
0.2 cm 0 B@W lfigpsub lfigprevious /TO lfigpointdef ] lfigdopath
0.15 cm /lfigsolid /lfigblack
lfigopen
0.15 cm 0.05 cm lfigforward
grestore

grestore
end end restore
grestore

grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 29 30
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Helvetica
%%+ font Times-Italic
%%+ font Times-Bold
%%+ font Symbol
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
%%IncludeResource: font Times-Bold
/Times-Boldfnt2 vec2 /Times-Bold LoutRecode
/fnt2 { /Times-Boldfnt2 LoutFont } def
%%IncludeResource: font Symbol
/fnt5 { /Symbol LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5706 -1579(-)m 5834(29)s 6125(-)s 9066 13414 0 13305 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore
0 13251(The)m 220 fnt6
450 13248(@AlignList)m 240 fnt1 1579 13251(g)m 1(alle)k 3(y)k
2236(does)s 2749(not)s 3138(\210ush,)s 3734(because)s 4570(its)s
4868(\207rst)s 5322(component)s 6469(is)s 6702(connected)s 7753(to)s
8015(a)s 8204(recepti)s 6(v)k 3(e)k 0 12963(symbol)m
760(by)s 220 fnt6 1054 12960(/)m 240 fnt1 1178 12963(operators.)m
480 12589(After)m 1048(the)s 1402(last)s 1799(equation,)s 2736(an)s
3025(empty)s 3683(forcing)s 4432(g)s 1(alle)k 3(y)k
5072(is)s 5288(sent)s 5739(to)s 220 fnt6 5984 12586(@EndAlignList)m
240 fnt1 7420 12589(,)m 7533(deleting)s 8362(the)s 8716(tw)s 2(o)k
0 12301(remaining)m 1028(recepti)s 6(v)k 3(e)k 1957(symbols)s
2813(from)s 3344(the)s 220 fnt6 3699 12298(@AlignList)m 240 fnt1
4812 12301(g)m 1(alle)k 3(y)k 5452(and)s 5863(permitting)s
6918(it)s 7117(to)s 7363(\210ush.)s 240 fnt4 8000 12303(FOLLO)m 12(WS)k
240 fnt1 0 12013(inde)m 3(x)k 3(es)k 797(ensure)s
1499(that)s 1939(each)s 2456(equation)s 3359(\207nds)s 3898(a)s
4086(tar)s 4(get)k 4707(placed)s 5410(in)s 5675(the)s
6045(body)s 6601(te)s 3(xt)k 7038(just)s 7465(after)s
7983(its)s 8281(point)s 8855(of)s 0 11725(in)m 9(v)k 4(ocation,)k
1090(so)s 1341(the)s 1675(equations)s 2628(return,)s 3290(aligned,)s
4087(to)s 4311(approximately)s 5732(the)s 6065(points)s 6686(where)s
7312(the)s 3(y)k 7760(were)s 8265(in)s 9(v)k 4(ok)k 2(ed.)k
0 11437(Notice)m 703(that)s 1131(the)s 1489(\210ushing)s 2324(of)s
2605(body)s 3149(te)s 3(xt)k 3574(is)s 3794(suspended)s
4860(until)s 5363(the)s 5721(list)s 6082(of)s 6363(equations)s
7341(is)s 7561(completed,)s 8674(as)s 8934(it)s 0 11149(must)m
513(be,)s 833(since)s 1367(the)s 1702(horizontal)s 2713(position)s
3528(of)s 3786(the)s 4121(\207rst)s 4539(equation)s 5407(cannot)s
6092(be)s 6361(kno)s 6(wn)k 7052(until)s 7532(the)s
7867(last)s 8245(equation)s 0 10861(is)m 210(added)s 840(to)s
1079(the)s 1427(list.)s 480 10487(Layout)m 1262(quality)s 2025(can)s
2459(occasionally)s 3753(be)s 4080(impro)s 3(v)k 3(ed)k
5094(by)s 5433(rejecting)s 6366(a)s 6577(component)s 7746(that)s
8209(could)s 8844(be)s 0 10199(promoted)m 978(\211)s 1161(for)s
1502(e)s 3(xample,)k 2419(a)s 2588(component)s 3715(of)s
3989(body)s 4526(te)s 3(xt)k 4944(that)s 5365(carries)s
6054(a)s 6223(footnote)s 7079(too)s 7441(lar)s 4(ge)k
7973(to)s 8215(\207t)s 8477(on)s 8778(the)s 0 9911(current)m
747(page.)s 1374(Since)s 1972(Lout)s 2496(does)s 2997(not)s
3374(specify)s 4130(ho)s 6(w)k 4602(breaking)s 5503(decisions)s
6455(are)s 6814(made,)s 7450(be)s 3(yond)k 8222(the)s
8582(basic)s 0 9623(constraints)m 1089(imposed)s 1961(by)s 2258(a)s 4(v)k 6(ailable)k
3169(space)s 3759(and)s 220 fnt6 4166 9620(into)m 240 fnt1
4575 9623(clauses,)m 5375(in)s 5621(principle)s 6529(such)s 7028(high)s
7514(quality)s 8236(breaking)s 0 9335(could)m 592(be)s 877(added)s
1510(to)s 1752(the)s 2102(implementation)s 3662(with)s 4147(no)s
4443(change)s 5180(to)s 5421(the)s 5772(language.)s 6803(Ho)s 6(we)k 6(v)k 3(er)k 9(,)k
7766(the)s 8117(generality)s 0 9047(of)m 280(the)s 637(g)s 1(alle)k 3(y)k
1280(\210ushing)s 2115(algorithm,)s 3160(and)s 3573(its)s 3859(already)s
4625(considerable)s 5898(comple)s 3(xity)k 15(,)k 7073(mak)s 2(e)k
7654(this)s 8059(a)s 8235(daunting)s 0 8759(problem)m 890(in)s
1167(practice,)s 2062(although)s 2991(a)s 3190(f)s 2(ascinating)k
4323(one.)s 4866(T)s 5008 8711(E)m 5151 8759(X)m 5414([9],)s
5832(with)s 6348(its)s 6657(unnested)s 7600(set)s 7958(of)s
8263(`\210oating)s 0 8471(insertions')m 1041(clearly)s 1744(identi\207able)s 2875(as)s
3125(each)s 3620(page)s 4128(is)s 4338(be)s 3(gun,)k
5028(has)s 5398(the)s 5746(adv)s 6(antage)k 6766(in)s
7009(this)s 7405(respect.)s 240 fnt2 0 7822(5.3.)m 471(Size)s
938(constraints)s 2120(and)s 2561(size)s 2988(adjustments)s 
[ /Dest /LOUTconstraints /DEST pdfmark
240 fnt1
480 7346(The)m 893(g)s 1(alle)k 3(y)k 1512(\210ushing)s
2321(algorithm)s 3295(needs)s 3876(to)s 4099(kno)s 6(w)k
4665(the)s 4998(a)s 4(v)k 6(ailable)k 5890(width)s
6477(and)s 6866(height)s 7508(at)s 7725(each)s 8204(recepti)s 6(v)k 3(e)k
0 7058(symbol.)m 869(These)s 1496(symbols)s 2346(may)s 2812(lie)s
3106(within)s 3775(arbitrarily)s 4782(comple)s 3(x)k 5659(objects,)s
6443(and)s 6847(the)s 3(y)k 7311(may)s 7777(compete)s
8644(with)s 0 6770(each)m 492(other)s 1040(for)s 1375(a)s 4(v)k 6(ailable)k
2280(space)s 2864(\(as)s 3189(body)s 3720(te)s 3(xt)k
4132(and)s 4533(footnote)s 5383(tar)s 4(gets)k 6062(do\),)s
6485(so)s 6748(this)s 7141(information)s 8323(must)s 8844(be)s
0 6482(e)m 3(xtracted)k 930(from)s 1454(the)s 1802(tree)s
2215(structure)s 3106(when)s 3682(required.)s 480 6108(F)m 3(or)k
869(e)s 3(xample,)k 1783(consider)s 2653(the)s 3001(object)s
220 fnt6 480 5607(5i  @Wide  {  a  /  b  })m 240 fnt1 0 5113(and)m 406(suppose)s
1236(that)s 1656(the)s 2006(width)s 2610(of)s 220 fnt6
2883 5110(a)m 240 fnt1 3062 5113(is)m 240 fnt5 3274 5107(1)m
240 fnt4 3382 5115(i)m 240 fnt5 3459 5107(,)m 3572(2)s
240 fnt4 3700 5115(i)m 240 fnt1 3825 5113(\()m 240 fnt5
3898 5107(1)m 240 fnt4 4006 5115(i)m 240 fnt1 4131 5113(to)m
4372(the)s 4722(left)s 5101(of)s 5374(the)s 5724(mark,)s
240 fnt5 6324 5107(2)m 240 fnt4 6452 5115(i)m 240 fnt1
6577 5113(to)m 6818(the)s 7168(right\).)s 7864(What)s 8444(then)s
8916(is)s 0 4825(the)m 348(a)s 4(v)k 6(ailable)k
1256(width)s 1858(at)s 220 fnt6 2090 4822(b)m 240 fnt1
2204 4825(?)m 2423(If)s 2653(we)s 2988(let)s 3286(the)s
3634(width)s 4236(of)s 220 fnt6 4507 4822(b)m 240 fnt1
4681 4825(be)m 240 fnt4 4963 4827(l)m 240 fnt5 5041 4819(,)m
240 fnt4 5148 4827(r)m 240 fnt1 5246 4825(,)m 5353(we)s
5688(must)s 6213(ha)s 4(v)k 3(e)k 240 fnt5
480 4277(\()m 564(1)s 240 fnt4 670 4285(i)m 240 fnt5
817 4277(\255)m 240 fnt4 1038 4285(l)m 240 fnt5 1116 4277(\))m
1254(+)s 1455(\()s 1539(2)s 240 fnt4 1665 4285(i)m
240 fnt5 1812 4277(\255)m 240 fnt4 2033 4285(r)m 240 fnt5
2143 4277(\))m 2293(\243)s 2503(5)s 240 fnt4 2622 4285(i)m
240 fnt1 0 3732(with)m 482(the)s 240 fnt5 842 3726(\255)m
240 fnt1 1051 3732(\(i.e.)m 1466(max\))s 2006(operations)s 3053(arising)s
3756(from)s 4280(mark)s 4832(alignment.)s 5952(Eliminating)s 7133(them)s
7671(gi)s 6(v)k 3(es)k 240 fnt5 480 3180(1)m
240 fnt4 586 3188(i)m 240 fnt5 721 3180(+)m 922(2)s
240 fnt4 1048 3188(i)m 240 fnt5 1207 3180(\243)m 1417(5)s
240 fnt4 1536 3188(i)m 583 2893(l)m 240 fnt5 721 2885(+)m
922(2)s 240 fnt4 1048 2893(i)m 240 fnt5 1207 2885(\243)m
1417(5)s 240 fnt4 1536 2893(i)m 240 fnt5 571 2597(1)m
240 fnt4 677 2605(i)m 240 fnt5 812 2597(+)m 240 fnt4
1013 2605(r)m 240 fnt5 1207 2597(\243)m 1417(5)s 240 fnt4
1536 2605(i)m 674 2310(l)m 240 fnt5 812 2302(+)m 240 fnt4
1013 2310(r)m 240 fnt5 1207 2302(\243)m 1417(5)s 240 fnt4
1536 2310(i)m 240 fnt1 0 1799(and)m 428(since)s 1000(we)s
1359(assume)s 2144(that)s 220 fnt6 2587 1796(a)m 240 fnt1
2788 1799(\207ts)m 3156(into)s 3606(the)s 3978(a)s 4(v)k 6(ailable)k
4911(space,)s 5573(the)s 5946(\207rst)s 6402(inequality)s 7436(may)s
7927(be)s 8234(dropped,)s 0 1511(lea)m 4(ving)k 
grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 30 31
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Times-Italic
%%+ font Symbol
%%+ font Helvetica
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
%%IncludeResource: font Symbol
/fnt5 { /Symbol LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5704 -1579(-)m 5832(30)s 6127(-)s 9066 13416 0 12991 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore
240 fnt4 851 13205(l)m
240 fnt5 1013 13197(\243)m 1223(3)s 240 fnt4 1340 13205(i)m
480 12910(l)m 240 fnt5 618 12902(+)m 240 fnt4 819 12910(r)m
240 fnt5 1013 12902(\243)m 1223(5)s 240 fnt4 1342 12910(i)m
819 12622(r)m 240 fnt5 1013 12614(\243)m 1223(4)s 240 fnt4
1348 12622(i)m 240 fnt1 0 12113(Object)m 220 fnt6 697 12110(b)m
240 fnt1 871 12113(may)m 1337(ha)s 4(v)k 3(e)k
1838(width)s 240 fnt4 2440 12115(l)m 240 fnt5 2518 12107(,)m
240 fnt4 2625 12115(r)m 240 fnt1 2783 12113(for)m 3121(an)s 3(y)k
240 fnt4 3518 12115(l)m 240 fnt1 3644 12113(and)m 240 fnt4
4048 12115(r)m 240 fnt1 4206 12113(satisfying)m 5188(these)s 5735(inequalities,)s
6943(and)s 7347(no)s 7640(others.)s 480 11739(Here)m 1000(is)s
1210(another)s 1987(e)s 3(xample:)k 220 fnt6 480 11238(5i  @High  {  a  /2ix  b  })m
240 fnt1 0 10737(Assuming)m 1024(that)s 220 fnt6 1442 10734(a)m
240 fnt1 1619 10737(has)m 1989(height)s 240 fnt5 2647 10731(1)m
240 fnt4 2753 10739(i)m 240 fnt5 2828 10731(,)m 2935(1)s
240 fnt4 3041 10739(i)m 240 fnt1 3104 10737(,)m 3211(the)s
3559(height)s 240 fnt4 4217 10739(l)m 240 fnt5 4295 10731(,)m
240 fnt4 4402 10739(r)m 240 fnt1 4560 10737(of)m 220 fnt6
4831 10734(b)m 240 fnt1 5005 10737(must)m 5530(satisfy)s 240 fnt5
480 10179(1)m 240 fnt4 586 10187(i)m 240 fnt5 721 10179(+)m
922(\()s 1006(\()s 1090(1)s 240 fnt4 1196 10187(i)m
240 fnt5 1331 10179(+)m 240 fnt4 1532 10187(l)m 240 fnt5
1610 10179(\))m 1760(\255)s 1981(2)s 240 fnt4 2107 10187(i)m
240 fnt5 2182 10179(\))m 2320(+)s 240 fnt4 2521 10187(r)m
240 fnt5 2703 10179(\243)m 2913(5)s 240 fnt4 3032 10187(i)m
240 fnt1 0 9634(This)m 478(time)s 960(the)s 240 fnt5
1325 9628(\255)m 240 fnt1 1539 9634(operation)m 2501(arises)s 3098(from)s
3624(the)s 3975(mark-to-mark)s 5364(g)s 1(ap)k 5765(mode,)s
6406(which)s 7050(will)s 7479(widen)s 8123(the)s 240 fnt5
8474 9628(2)m 240 fnt4 8602 9636(i)m 240 fnt1 8728 9634(g)m 1(ap)k
0 9346(if)m 217(necessary)s 1200(to)s 1439(pre)s 6(v)k 3(ent)k
220 fnt6 2207 9343(a)m 240 fnt1 2384 9346(and)m 220 fnt6
2788 9343(b)m 240 fnt1 2962 9346(from)m 3486(o)s 3(v)k 3(erlapping.)k
4787(This)s 5263(inequality)s 6273(can)s 6662(be)s 6944(re)s 6(written)k
7856(as)s 240 fnt4 851 8795(l)m 240 fnt5 1013 8787(\243)m
288 fnt5 1223 8775(\245)m 240 fnt4 480 8504(l)m 240 fnt5
618 8496(+)m 240 fnt4 819 8504(r)m 240 fnt5 1013 8496(\243)m
1223(3)s 240 fnt4 1340 8504(i)m 819 8216(r)m 240 fnt5
1013 8208(\243)m 1223(2)s 240 fnt4 1349 8216(i)m 240 fnt1
0 7709(In)m 263(general,)s 1080(Lout)s 1599(is)s 1816(designed)s
2732(so)s 3005(that)s 3430(the)s 3785(a)s 4(v)k 6(ailable)k
4700(width)s 5309(or)s 5575(height)s 6240(at)s 6479(an)s 3(y)k
6883(point)s 7442(can)s 7838(be)s 8128(e)s 3(xpressed)k
0 7421(by)m 294(three)s 827(inequalities)s 1979(of)s 2250(the)s
2598(form)s 240 fnt4 851 6870(l)m 240 fnt5 1013 6862(\243)m
240 fnt4 1223 6870(x)m 480 6579(l)m 240 fnt5 618 6571(+)m
240 fnt4 819 6579(r)m 240 fnt5 1013 6571(\243)m 240 fnt4
1223 6579(y)m 819 6264(r)m 240 fnt5 1013 6256(\243)m 240 fnt4
1223 6264(z)m 240 fnt1 0 5743(where)m 240 fnt4 641 5745(x)m
240 fnt1 747 5743(,)m 240 fnt4 855 5745(y)m 240 fnt1
1018 5743(and)m 240 fnt4 1423 5745(z)m 240 fnt1 1575 5743(may)m
2042(be)s 288 fnt5 2325 5725(\245)m 240 fnt1 2523 5743(.)m
2688(W)s 19(e)k 3058(abbre)s 6(viate)k 4104(these)s
4652(three)s 5186(inequalities)s 6339(to)s 240 fnt4 6579 5745(l)m
240 fnt5 6658 5737(,)m 240 fnt4 6768 5745(r)m 240 fnt5
6953 5737(\243)m 240 fnt4 7166 5745(x)m 240 fnt5 7285 5737(,)m
240 fnt4 7395 5745(y)m 240 fnt5 7510 5737(,)m 240 fnt4
7620 5745(z)m 240 fnt1 7711 5743(,)m 7819(and)s 8224(we)s
8560(call)s 240 fnt4 8960 5745(x)m 240 fnt5 0 5449(,)m
240 fnt4 107 5457(y)m 240 fnt5 221 5449(,)m 240 fnt4
328 5457(z)m 240 fnt1 479 5455(a)m 240 fnt4 645 5457(size)m
1056(constr)s 3(aint)k 240 fnt1 2027 5455(.)m 480 5081(The)m
920(tw)s 2(o)k 1343(e)s 3(xamples)k 2307(abo)s 3(v)k 3(e)k
2942(sho)s 6(wed)k 3739(ho)s 6(w)k 4213(to)s
4465(propag)s 1(ate)k 5475(the)s 5836(size)s 6276(constraint)s
288 fnt5 7291 5063(\245)m 240 fnt5 7514 5075(,)m 7659(5)s
240 fnt4 7791 5083(i)m 240 fnt5 7879 5075(,)m 288 fnt5
8025 5063(\245)m 240 fnt1 8296 5081(for)m 220 fnt6 8647 5078(a / b)m
240 fnt1 0 4793(do)m 6(wn)k 586(one)s 991(le)s 6(v)k 3(el)k
1504(to)s 1746(the)s 2097(child)s 220 fnt6 2636 4790(b)m
240 fnt1 2750 4793(.)m 2917(Basser)s 3617(Lout)s 4132(contains)s
4982(a)s 5151(complete)s 6086(set)s 6414(of)s 6688(general)s
7449(rules)s 7967(for)s 8308(all)s 8604(node)s 0 4505(types,)m
627(too)s 1002(complicated)s 2244(to)s 2499(gi)s 6(v)k 3(e)k
2974(here.)s 3565(Instead,)s 4378(we)s 4729(gi)s 6(v)k 3(e)k
5203(just)s 5624(one)s 6042(e)s 3(xample)k 6921(of)s
7208(ho)s 6(w)k 7685(these)s 8248(rules)s 8779(are)s
0 4217(deri)m 6(v)k 3(ed,)k 815(using)s 1387(the)s
1735(object)s 240 fnt4 480 3721(x)m 168 fnt5 586 3628(1)m
220 fnt6 772 3716(/)m 240 fnt4 956 3721(x)m 168 fnt5
1062 3628(2)m 220 fnt6 1262 3716(/)m 240 fnt4 1446 3721(.)m
1552(.)s 1658(.)s 220 fnt6 1812 3716(/)m 240 fnt4
1996 3721(x)m 168 fnt4 2102 3634(n)m 240 fnt1 0 3175(where)m
240 fnt4 640 3177(x)m 168 fnt4 746 3090(j)m 240 fnt1
852 3175(has)m 1222(width)s 240 fnt4 1824 3177(l)m 168 fnt4
1890 3090(j)m 240 fnt5 1948 3169(,)m 240 fnt4 2055 3177(r)m
168 fnt4 2127 3090(j)m 240 fnt1 2233 3175(for)m 2571(all)s
240 fnt4 2864 3177(j)m 240 fnt1 2930 3175(.)m 480 2801(Suppose)m
1345(the)s 1689(whole)s 2326(object)s 2966(has)s 3333(width)s
3931(constraint)s 240 fnt4 4929 2803(X)m 240 fnt5 5097 2795(,)m
240 fnt4 5204 2803(Y)m 240 fnt5 5367 2795(,)m 240 fnt4
5474 2803(Z)m 240 fnt1 5619 2801(,)m 5722(and)s 6123(we)s
6454(require)s 7182(the)s 7526(width)s 8124(constraint)s 0 2513(of)m
240 fnt4 271 2515(x)m 168 fnt4 377 2428(i)m 240 fnt1
421 2513(.)m 586(Let)s 240 fnt4 965 2515(L)m 240 fnt5
1185 2507(=)m 240 fnt1 1401 2513(max)m 168 fnt4 1808 2428(j)m
240 fnt4 1917 2515(l)m 168 fnt4 1983 2428(j)m 240 fnt1
2090 2513(and)m 240 fnt4 2495 2515(R)m 240 fnt5 2723 2507(=)m
240 fnt1 2939 2513(max)m 168 fnt4 3346 2428(j)m 240 fnt4
3455 2515(r)m 168 fnt4 3527 2428(j)m 240 fnt1 3573 2513(,)m
3681(so)s 3948(that)s 240 fnt4 4367 2515(L)m 240 fnt5
4512 2507(,)m 240 fnt4 4619 2515(R)m 240 fnt1 4821 2513(is)m
5032(the)s 5381(width)s 5984(of)s 6256(the)s 6605(whole)s
7247(object.)s 7996(W)s 19(e)k 8366(assume)s 240 fnt4
0 2202(L)m 240 fnt5 145 2194(,)m 240 fnt4 252 2202(R)m
240 fnt5 477 2194(\243)m 240 fnt4 687 2202(X)m 240 fnt5
855 2194(,)m 240 fnt4 962 2202(Y)m 240 fnt5 1125 2194(,)m
240 fnt4 1232 2202(Z)m 240 fnt1 1377 2200(.)m 1541(Then)s
240 fnt4 2090 2202(x)m 168 fnt4 2196 2115(i)m 240 fnt1
2300 2200(can)m 2689(be)s 2971(enlar)s 4(ged)k 3848(to)s
4087(an)s 3(y)k 4484(size)s 240 fnt4 4911 2202(l)m
168 fnt4 4977 2115(i)m 240 fnt5 5081 2194(,)m 240 fnt4
5188 2202(r)m 168 fnt4 5260 2115(i)m 240 fnt1 5364 2200(satisfying)m
240 fnt5 480 1607(\()m 240 fnt4 564 1615(l)m 168 fnt4
630 1528(i)m 240 fnt5 758 1607(\255)m 240 fnt4 979 1615(L)m
240 fnt5 1124 1607(\))m 1202(,)s 1309(\()s 240 fnt4
1393 1615(r)m 168 fnt4 1465 1528(i)m 240 fnt5 1593 1607(\255)m
240 fnt4 1814 1615(R)m 240 fnt5 1967 1607(\))m 2117(\243)s
240 fnt4 2327 1615(X)m 240 fnt5 2495 1607(,)m 240 fnt4
2602 1615(Y)m 240 fnt5 2765 1607(,)m 240 fnt4 2872 1615(Z)m

grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 31 32
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Times-Italic
%%+ font Symbol
%%+ font Times-Bold
%%+ font Helvetica
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
%%IncludeResource: font Symbol
/fnt5 { /Symbol LoutFont } def
%%IncludeResource: font Times-Bold
/Times-Boldfnt2 vec2 /Times-Bold LoutRecode
/fnt2 { /Times-Boldfnt2 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5714 -1579(-)m 5842(31)s 6117(-)s 9066 13416 0 13307 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore
0 13253(which)m 642(e)s 3(xpands)k
1475(to)s 1714(eight)s 2252(inequalities:)s 240 fnt4 917 12702(l)m
168 fnt4 983 12615(i)m 240 fnt5 1123 12694(\243)m 240 fnt4
1333 12702(X)m 894 12338(L)m 240 fnt5 1123 12330(\243)m 240 fnt4
1333 12338(X)m 528 12047(l)m 168 fnt4 594 11960(i)m 240 fnt5
710 12039(+)m 240 fnt4 911 12047(r)m 168 fnt4 983 11960(i)m
240 fnt5 1123 12039(\243)m 240 fnt4 1333 12047(Y)m 503 11675(l)m
168 fnt4 569 11588(i)m 240 fnt5 685 11667(+)m 240 fnt4
886 11675(R)m 240 fnt5 1123 11667(\243)m 240 fnt4 1333 11675(Y)m
505 11311(L)m 240 fnt5 710 11303(+)m 240 fnt4 911 11311(r)m
168 fnt4 983 11224(i)m 240 fnt5 1123 11303(\243)m 240 fnt4
1333 11311(Y)m 480 10947(L)m 240 fnt5 685 10939(+)m 240 fnt4
886 10947(R)m 240 fnt5 1123 10939(\243)m 240 fnt4 1333 10947(Y)m
911 10664(r)m 168 fnt4 983 10577(i)m 240 fnt5 1123 10656(\243)m
240 fnt4 1333 10664(Z)m 886 10300(R)m 240 fnt5 1123 10292(\243)m
240 fnt4 1333 10300(Z)m 240 fnt1 0 9793(Three)m 613(are)s
960(already)s 1717(kno)s 6(wn,)k 2471(and)s 2875(slightly)s
3646(rearranging)s 4800(the)s 5148(others)s 5783(gi)s 6(v)k 3(es)k
240 fnt4 869 9242(l)m 168 fnt4 935 9155(i)m 240 fnt5
1075 9234(\243)m 240 fnt4 1285 9242(X)m 869 8870(l)m 168 fnt4
935 8783(i)m 240 fnt5 1075 8862(\243)m 240 fnt4 1285 8870(Y)m
240 fnt5 1508 8862(-)m 240 fnt4 1708 8870(R)m 480 8498(l)m
168 fnt4 546 8411(i)m 240 fnt5 662 8490(+)m 240 fnt4
863 8498(r)m 168 fnt4 935 8411(i)m 240 fnt5 1075 8490(\243)m
240 fnt4 1285 8498(Y)m 863 8134(r)m 168 fnt4 935 8047(i)m
240 fnt5 1075 8126(\243)m 240 fnt4 1285 8134(Z)m 863 7770(r)m
168 fnt4 935 7683(i)m 240 fnt5 1075 7762(\243)m 240 fnt4
1285 7770(Y)m 240 fnt5 1508 7762(-)m 240 fnt4 1708 7770(L)m
240 fnt1 0 7182(Therefore)m 997(the)s 1345(width)s 1947(constraint)s
2949(of)s 240 fnt4 3220 7184(x)m 168 fnt4 3326 7097(i)m
240 fnt1 3430 7182(is)m 480 6644(min)m 240 fnt5 861 6638(\()m
240 fnt4 945 6646(X)m 240 fnt5 1113 6638(,)m 240 fnt4
1220 6646(Y)m 240 fnt5 1443 6638(-)m 240 fnt4 1643 6646(R)m
240 fnt5 1796 6638(\))m 1874(,)s 240 fnt4 1981 6646(Y)m
240 fnt5 2144 6638(,)m 240 fnt1 2251 6644(min)m 240 fnt5
2632 6638(\()m 240 fnt4 2716 6646(Z)m 240 fnt5 2873 6638(,)m
240 fnt4 2980 6646(Y)m 240 fnt5 3203 6638(-)m 240 fnt4
3403 6646(L)m 240 fnt5 3548 6638(\))m 240 fnt1 0 6142(The)m
445(size)s 890(constraint)s 1909(of)s 2198(an)s 3(y)k
2613(node)s 3152(can)s 3559(be)s 3858(found)s 4493(by)s
4805(climbing)s 5725(the)s 6091(tree)s 6521(to)s 6778(a)s
240 fnt4 6962 6144(WIDE)m 240 fnt1 7641 6142(or)m 240 fnt4
7918 6144(HIGH)m 240 fnt1 8604 6142(node)m 0 5854(where)m 636(the)s
980(constraint)s 1978(is)s 2184(tri)s 6(vial,)k 2850(then)s
3315(propag)s 1(ating)k 4506(it)s 4694(back)s 5203(do)s 6(wn)k
5783(to)s 6018(the)s 6362(node,)s 6931(and)s 7331(this)s
7723(is)s 7929(the)s 8272(function)s 0 5566(of)m 271(procedure)s
240 fnt4 1283 5568(Constr)m 3(ained)k 240 fnt1 2530 5566(in)m
2773(Basser)s 3470(Lout.)s 480 5192(After)m 1043(some)s 1604(components)s
2813(ha)s 4(v)k 3(e)k 3314(been)s 3824(promoted)s
4799(into)s 5225(a)s 5391(tar)s 4(get,)k 6038(the)s
6386(sizes)s 6902(stored)s 7544(in)s 7788(its)s 8064(parent)s
8722(and)s 0 4904(higher)m 665(ancestors)s 1598(must)s 2117(be)s
2392(adjusted)s 3241(to)s 3473(re\210ect)s 4122(the)s 4464(increased)s
5417(size.)s 5946(This)s 6415(is)s 6618(done)s 7134(by)s
7421(yet)s 7767(another)s 8537(set)s 8855(of)s 0 4616(recursi)m 6(v)k 3(e)k
925(rules,)s 1500(upw)s 2(ard-mo)k 3(ving)k 3081(this)s
3481(time,)s 4016(which)s 4662(cease)s 5239(as)s 5492(soon)s
6006(as)s 6260(some)s 6825(ancestor')s 13(s)k 7835(size)s
8266(does)s 8760(not)s 0 4328(change.)m 830(These)s 1445(rules)s
1948(are)s 2283(embodied)s 3273(in)s 3504(procedure)s 240 fnt4
4504 4330(AdjustSize)m 240 fnt1 5541 4328(of)m 5800(Basser)s 6485(Lout.)s
7089(The)s 7505(adjustment)s 8601(must)s 0 4040(be)m 282(done)s
804(before)s 1470(relinquishing)s 2785(control)s 3517(to)s 3756(an)s 3(y)k
4153(other)s 4704(g)s 1(alle)k 3(y)k 15(,)k
5376(b)s 4(ut)k 5738(not)s 6104(after)s 6600(e)s 6(v)k 3(ery)k
7176(component.)s 240 fnt2 0 3391(5.4.)m 471(The)s 926(limited)s
1696(lookahead)s 2802(pr)s 4(oblem)k 
[ /Dest /LOUTlookahead /DEST pdfmark
240 fnt1 480 2914(Basser)m
1189(Lout)s 1714(assumes)s 2575(that)s 3006(there)s 3552(will)s
3991(be)s 4286(enough)s 5062(internal)s 5859(memory)s 6723(to)s
6975(hold)s 7472(the)s 7833(symbol)s 8606(table)s 0 2626(plus)m
461(a)s 638(fe)s 6(w)k 1055(pages,)s 1719(b)s 4(ut)k
2092(not)s 2469(an)s 2764(entire)s 3374(document.)s 4493(This)s
4980(section)s 5726(describes)s 6677(the)s 7036(consequent)s 8185(problems)s
0 2338(and)m 441(ho)s 6(w)k 940(the)s 3(y)k
1441(were)s 1999(solv)s 3(ed.)k 2763(Other)s 3405(interpreters,)s
4636(notably)s 5446(interacti)s 6(v)k 3(e)k 6538(editors)s
7277(running)s 8113(on)s 8448(virtual)s 0 2050(memory)m 851(systems,)s
1715(w)s 2(ould)k 2370(not)s 2736(necessarily)s 3851(need)s
4361(this)s 4757(assumption.)s 480 1676(Although)m 1434(Basser)s 2122(Lout)s
2625(can)s 3005(read)s 3466(and)s 3861(format)s 4548(an)s 3(y)k
4936(le)s 3(g)k 1(al)k 5442(input,)s 6033(its)s
6300(memory)s 7142(consumption)s 8427(will)s 8844(be)s 0 1388(optimized)m
1004(when)s 1570(the)s 1908(b)s 4(ulk)k 2381(of)s
2642(the)s 2980(document)s 3974(resides)s 4677(in)s 4910(g)s 1(alle)k 3(ys)k
5624(whose)s 6282(tar)s 4(gets)k 6955(can)s 7334(be)s
7606(identi\207ed)s 8557(at)s 8778(the)s 0 1100(moment)m 843(the)s 3(y)k
1304(are)s 1650(encountered.)s 2981(Let)s 3358(us)s 3620(tak)s 2(e)k
4071(the)s 4417(typical)s 5121(e)s 3(xample)k 5982(of)s
6252(a)s 6416(root)s 6860(g)s 1(alle)k 3(y)k
7492(which)s 8133(is)s 8341(a)s 8506(list)s 8855(of)s
0 812(pages,)m 652(a)s 220 fnt6 818 809(@BodyT)m 26(e)k 6(xt)k
240 fnt1 1991 812(g)m 1(alle)k 3(y)k 2625(tar)s 4(geted)k
3448(into)s 3872(the)s 4220(pages,)s 220 fnt6 4872 809(@Chapter)m
240 fnt1 5934 812(g)m 1(alle)k 3(ys)k 6658(tar)s 4(geted)k
7481(into)s 220 fnt6 7905 809(@BodyT)m 26(e)k 6(xt)k
240 fnt1 9019 812(,)m 0 524(and)m 220 fnt6 404 521(@Section)m
240 fnt1 1404 524(g)m 1(alle)k 3(ys)k 2128(tar)s 4(geted)k
2951(into)s 3376(the)s 220 fnt6 3724 521(@Chapter)m 240 fnt1
4787 524(g)m 1(alle)k 3(ys:)k 
grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 32 33
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Helvetica
%%+ font Times-Italic
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5705 -1579(-)m 5833(32)s 6127(-)s 9066 13416 0 13312 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore
220 fnt6 480 13255(@P)m 8(ageList)k
480 12967(//)m 480 12679(@BodyT)m 26(e)k 6(xt)k 480 12391(//)m
480 12103(@Chapter {)m 480 11815(    @Section { ...)m 13( })k 480 11527(    @Section { ...)m 13( })k
480 11239(    ...)m 480 10951(    @Section { ...)m 13( })k 480 10663(})m 480 10375(@Chapter {)m
480 10087(    ...)m 480 9799(})m 240 fnt1 0 9305(Basser)m 702(Lout)s
1220(is)s 1436(able)s 1896(to)s 2141(read)s 2616(and)s
3026(process)s 3800(such)s 4302(g)s 1(alle)k 3(ys)k
5032(one)s 5440(paragraph)s 6459(at)s 6697(a)s 6869(time)s
7355(\(strictly)s 15(,)k 8194(from)s 8724(one)s 220 fnt6
0 9014(//)m 240 fnt1 185 9017(at)m 417(the)s 765(outer)s
1316(le)s 6(v)k 3(el)k 1826(of)s 2097(a)s
2263(g)s 1(alle)k 3(y)k 2897(to)s 3136(the)s
3484(ne)s 3(xt\),)k 4079(as)s 4329(we)s 4664(no)s 6(w)k
5125(describe.)s 480 8643(When)m 1147(the)s 1534(parser)s 2215(encounters)s
3341(the)s 3727(be)s 3(ginning)k 4774(of)s 5083(a)s
5288(g)s 1(alle)k 3(y)k 15(,)k 5998(lik)s 2(e)k
220 fnt6 6449 8640(@Chapter)m 240 fnt1 7550 8643(or)m 220 fnt6
7848 8640(@Section)m 240 fnt1 8788 8643(,)m 8934(it)s 0 8355(initiates)m
831(a)s 1023(ne)s 6(w)k 1495(g)s 1(alle)k 3(y)k
2155(process.)s 3061(The)s 3515(special)s 4258(recepti)s 6(v)k 3(e)k
5206(symbol)s 220 fnt6 5991 8352(@Input)m 240 fnt1 6784 8355(is)m
7019(substituted)s 8139(for)s 8502(the)s 8876(as)s 0 8067(yet)m
357(unread)s 1071(right)s 1588(parameter)s 2607(of)s 2884(the)s
3237(g)s 1(alle)k 3(y)k 15(.)k 3972(As)s
4294(each)s 4795(paragraph)s 5813(of)s 6090(the)s 6443(right)s
6960(parameter)s 7979(is)s 8195(read,)s 8718(it)s 8916(is)s
0 7779(deleted)m 763(from)s 1302(the)s 1665(parse)s 2240(tree)s
2668(and)s 3087(injected)s 3916(into)s 4356(the)s 4719(g)s 1(alle)k 3(y')k 13(s)k
220 fnt6 5524 7776(@Input)m 240 fnt1 6231 7779(.)m 6410(The)s
6853(g)s 1(alle)k 3(y)k 7502(is)s 7727(then)s
8212(resumed.)s 0 7491(The)m 429(parser)s 1074(thus)s 1526(acts)s
1950(as)s 2202(an)s 2487(e)s 3(xtra)k 3022(concurrent)s
4106(process;)s 4937(it)s 5131(has)s 5503(lo)s 6(w)k
5912(priority)s 15(,)k 6721(so)s 6989(that)s 7409(input)s
7963(is)s 8175(read)s 8646(only)s 0 7203(when)m 597(there)s
1151(is)s 1382(nothing)s 2188(else)s 2636(to)s 2897(do.)s
3322(Since)s 3930(g)s 1(alle)k 3(ys)k 4675(may)s
5162(be)s 5465(nested,)s 6205(a)s 6392(stack)s 6965(of)s
220 fnt6 7257 7200(@Input)m 240 fnt1 8045 7203(symbols)m 8916(is)s
0 6915(needed,)m 781(each)s 1271(with)s 1749(its)s 2020(o)s 6(wn)k
2480(en)s 9(vironment)k 3735(and)s 4135(style.)s 4745(If)s
4971(a)s 5132(g)s 1(alle)k 3(y)k 5762(is)s
5967(encountered)s 7190(for)s 7523(which)s 8161(a)s 8322(tar)s 4(get)k
8916(is)s 0 6627(not)m 370(immediately)s 1622(identi\207able)s 2757(\(a)s
3006(footnote,)s 3914(for)s 4257(e)s 3(xample\),)k 5254(it)s
5450(is)s 5664(read)s 6137(in)s 6385(its)s 6665(entirety)s
7452(and)s 7860(hung)s 8397(in)s 8645(pure)s 0 6339(parse)m
551(tree)s 954(form)s 1468(from)s 1983(an)s 240 fnt4
2256 6341(UN)m 6(A)k 8(TT)k 12(A)k 7(CHED)k
240 fnt1 3811 6339(inde)m 3(x)k 4386(in)s 4619(the)s
4957(usual)s 5508(w)s 2(ay)k 15(,)k 5987(with)s
6459(an)s 6733(en)s 9(vironment)k 7983(b)s 4(ut)k
8335(without)s 0 6051(a)m 166(style.)s 781(It)s 986(will)s
1412(be)s 1694(\210ushed)s 2444(later)s 2927(when)s 3503(its)s
3779(component)s 4903(is)s 5113(promoted.)s 480 5677(In)m 735(addition)s
1575(to)s 1813(producing)s 2836(a)s 3001(steady)s 3665(\210o)s 6(w)k
4138(of)s 4407(components)s 5614(from)s 6137(input,)s 6735(we)s
7069(must)s 7593(also)s 8030(ensure)s 8708(that)s 0 5389(recepti)m 6(v)k 3(e)k
928(symbols)s 1783(do)s 2083(not)s 2455(unduly)s 3182(block)s
3781(their)s 4285(promotion.)s 5452(The)s 220 fnt6 5886 5386(@F)m 6(ootSect)k
240 fnt1 7044 5389(symbol)m 7810(at)s 8049(the)s 8403(foot)s
8855(of)s 0 5101(each)m 495(page)s 1003(is)s 1213(a)s
1379(typical)s 2084(e)s 3(xample:)k 3057(until)s 3550(it)s
3742(is)s 3952(deleted)s 4700(the)s 5048(page)s 5556(cannot)s
6254(be)s 6536(printed.)s 480 4727(Recepti)m 6(v)k 3(e)k
1501(symbols)s 2368(are)s 2733(e)s 3(xpanded)k 3724(only)s
4222(on)s 4537(demand,)s 5421(so)s 220 fnt6 5705 4724(@F)m 6(ootSect)k
240 fnt1 6874 4727(can)m 7281(be)s 7581(deleted)s 8347(as)s
8616(soon)s 0 4439(as)m 250(we)s 585(can)s 974(pro)s 3(v)k 3(e)k
1570(that)s 1988(it)s 2180(is)s 2390(not)s 2757(w)s 2(anted.)k
3610(The)s 4038(symbol)s 4799(table)s 5319(can)s 5708(tell)s
6067(us)s 6332(that)s 6750(only)s 220 fnt6 7230 4436(@F)m 6(ootNote)k
240 fnt1 8402 4439(g)m 1(alle)k 3(ys)k 0 4151(\(with)m
220 fnt6 555 4148(@F)m 6(ootPlace&&f)k 6(ollo)k 3(wing)k
240 fnt1 2935 4151(tar)m 4(gets\))k 3688(w)s 2(ant)k
4205(it,)s 4438(so)s 4697(it)s 4883(might)s 5494(be)s
5770(possible)s 6604(to)s 6836(deduce)s 7564(that)s 220 fnt6
7975 4148(@F)m 6(ootSect)k 240 fnt1 0 3863(may)m 466(be)s
748(deleted)s 1496(as)s 1746(soon)s 2256(as)s 2506(body)s
3040(te)s 3(xt)k 3455(enters)s 4076(the)s 4424(follo)s 6(wing)k
5401(page.)s 480 3489(The)m 904(author)s 1571(w)s 2(as)k
1987(unable)s 2677(to)s 2912(mak)s 2(e)k 3479(this)s
3871(w)s 2(ork,)k 4463(so)s 4725(Basser)s 5418(Lout)s
5925(requires)s 6741(the)s 7085(user)s 7538(to)s 7773(identify)s
8565(those)s 0 3201(g)m 1(alle)k 3(ys)k 715(which)s
1348(will)s 1764(carry)s 2299(the)s 2637(b)s 4(ulk)k
3111(of)s 3372(the)s 3711(document)s 4705(\()s 220 fnt6
4778 3198(@Chapter)m 240 fnt1 5781 3201(,)m 220 fnt6 5879 3198(@Section)m
240 fnt1 6819 3201(,)m 220 fnt6 6916 3198(@BodyT)m 26(e)k 6(xt)k
240 fnt1 8030 3201(\))m 8149(as)s 240 fnt4 8389 3203(for)m 8(cing)k
0 2915(galle)m 7(ys)k 240 fnt1 665 2913(,)m 792(by)s
1107(writing)s 220 fnt6 1871 2910(f)m 6(orce into)k 240 fnt1
2841 2913(instead)m 3596(of)s 220 fnt6 3888 2910(into)m 240 fnt1
4315 2913(in)m 4579(their)s 5097(de\207nitions.)s 6291(As)s 6629(described)s
7624(in)s 7888(the)s 8257(pre)s 6(vious)k 0 2625(section,)m
790(when)s 1373(a)s 1546(forcing)s 2296(g)s 1(alle)k 3(y)k
2937(attaches)s 3763(to)s 4009(a)s 4182(tar)s 4(get,)k
4835(all)s 5135(recepti)s 6(v)k 3(e)k 6063(symbols)s
6919(preceding)s 7922(the)s 8277(tar)s 4(get)k 8883(in)s
0 2337(its)m 278(g)s 1(alle)k 3(y)k 914(are)s
1263(deleted,)s 2062(remo)s 3(ving)k 3031(all)s 3326(impediments)s
4614(to)s 4855(\210ushing.)s 5793(F)s 3(or)k 6184(e)s 3(xample,)k
7100(when)s 7678(a)s 7846(forcing)s 8592(body)s 0 2049(te)m 3(xt)k
421(g)s 1(alle)k 3(y)k 1062(enters)s 1690(a)s
1863(ne)s 6(w)k 2317(page,)s 2882(the)s 220 fnt6
3237 2046(@F)m 6(ootSect)k 240 fnt1 4395 2049(symbol)m 5162(on)s
5466(the)s 5820(preceding)s 6823(page)s 7338(will)s 7771(be)s
8060(deleted.)s 8921(It)s 0 1761(seems)m 629(lik)s 2(ely)k
1219(that)s 1631(a)s 1791(system)s 2509(which)s 3145(could)s
3729(af)s 6(ford)k 4358(to)s 4591(w)s 2(ait)k
5054(until)s 5541(all)s 5828(input)s 6374(w)s 2(as)k
6789(read)s 7252(before)s 7912(deleting)s 8729(an)s 3(y)k
0 1473(recepti)m 6(v)k 3(e)k 922(symbols)s 1771(w)s 2(ould)k
2426(not)s 2792(need)s 3302(forcing)s 4045(g)s 1(alle)k 3(ys.)k
480 1099(Galle)m 3(ys)k 1258(whose)s 1925(tar)s 4(gets)k
2607(are)s 2953(a)s 3118(long)s 3597(w)s 2(ay)k
4047(from)s 4570(their)s 5066(in)s 9(v)k 4(ocation)k
6119(points)s 6755(can)s 7143(be)s 7424(a)s 7589(problem.)s
8549(If)s 8778(the)s 0 811(direction)m 917(is)s 220 fnt6
1139 808(f)m 6(ollo)k 3(wing)k 240 fnt1 1969 811(,)m
2087(such)s 2595(g)s 1(alle)k 3(ys)k 3330(are)s
3689(held)s 4170(in)s 4425(internal)s 5221(memory)s 6083(for)s
6433(a)s 6610(long)s 7101(time,)s 7643(unless)s 8304(the)s 3(y)k
8779(are)s 0 523(to)m 248(be)s 539(sorted.)s 1296(If)s
1535(the)s 1892(direction)s 2807(is)s 220 fnt6 3026 520(preceding)m
240 fnt1 3977 523(,)m 4093(then)s 4571(either)s 5183(the)s
5540(entire)s 6148(interv)s 3(ening)k 7296(document)s 8309(must)s
8844(be)s 
grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 33 34
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Times-Bold
%%+ font Times-Italic
%%+ font Helvetica
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Times-Bold
/Times-Boldfnt2 vec2 /Times-Bold LoutRecode
/fnt2 { /Times-Boldfnt2 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5710 -1579(-)m 5838(33)s 6122(-)s 9066 13416 0 13307 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore
0 13253(held)m 466(in)s
704(memory)s 1551(\(pre)s 6(v)k 3(ented)k 2617(by)s
2907(the)s 3250(tar)s 4(get)k 3844(from)s 4364(\210ushing\),)s
5317(or)s 5572(else)s 5994(some)s 6551(forcing)s 7289(g)s 1(alle)k 3(y)k
7918(prematurely)s 0 12965(deletes)m 714(the)s 1062(tar)s 4(get,)k
1708(lea)s 4(ving)k 2461(the)s 2809(g)s 1(alle)k 3(y)k
3443(bereft.)s 480 12591(The)m 929(typical)s 1655(e)s 3(xample)k
2539(of)s 2832(the)s 3201(latter)s 3771(case)s 4260(occurs)s
4956(when)s 5553(the)s 5922(g)s 1(alle)k 3(y)k
6578(is)s 6809(an)s 7113(entry)s 7680(in)s 7944(the)s
8313(table)s 8855(of)s 0 12303(contents,)m 907(launched)s 1832(backw)s 2(ards)k
2907(from)s 3435(the)s 3786(be)s 3(ginning)k 4797(of)s
5071(a)s 5241(chapter)s 6007(or)s 6269(section.)s 7113(Its)s
7406(tar)s 4(get)k 8008(in)s 8254(the)s 8606(table)s
0 12015(of)m 286(contents)s 1150(will)s 1592(ha)s 4(v)k 3(e)k
2108(been)s 2633(deleted)s 3397(long)s 3891(before,)s 4624(to)s
4879(permit)s 5578(the)s 5941(rest)s 6361(of)s 6648(the)s
7011(document)s 8031(to)s 8286(print,)s 8860(so)s 0 11727(the)m
349(g)s 1(alle)k 3(y)k 985(ultimately)s 2009(emer)s 4(ges)k
2854(as)s 3106(an)s 3391(unattached)s 4487(g)s 1(alle)k 3(y)k
5122(promoted)s 6099(out)s 6467(of)s 6740(the)s 7090(root)s
7537(g)s 1(alle)k 3(y)k 15(.)k 8268(All)s
8630(such)s 0 11439(g)m 1(alle)k 3(ys)k 717(are)s
1056(written)s 1781(to)s 2013(an)s 2288(auxiliary)s 3183(\207le,)s
3588(inde)s 3(x)k 3(ed)k 4390(by)s 4676(the)s
5016(missing)s 5806(tar)s 4(get.)k 6501(On)s 6843(the)s
7184(ne)s 3(xt)k 7645(run,)s 8063(just)s 8460(before)s
0 11151(that)m 418(tar)s 4(get)k 1017(is)s 1227(deleted,)s
2024(the)s 2372(auxiliary)s 3275(\207le)s 3636(is)s 3846(check)s 2(ed)k
4686(and)s 5090(an)s 3(y)k 5487(g)s 1(alle)k 3(ys)k
6211(for)s 6549(it)s 6741(are)s 7088(read)s 7557(in)s
7800(and)s 8204(\210ushed.)s 240 fnt2 0 10502(5.5.)m 471(Horizontal)s
1628(galleys)s 
[ /Dest /LOUThorizontal /DEST pdfmark
240 fnt1 480 10025(There)m 1108(is)s 1333(a)s
1514(strong)s 2180(analogy)s 3007(between)s 3876(breaking)s 4781(a)s
4962(column)s 5752(of)s 6038(te)s 3(xt)k 6468(into)s
6908(page-sized)s 8003(pieces,)s 8722(and)s 0 9737(breaking)m 912(a)s
1101(paragraph)s 2137(into)s 2585(line-sized)s 3594(pieces.)s 4378(In)s
4657(f)s 2(act,)k 5142(the)s 5513(tw)s 2(o)k
5946(dif)s 6(fer)k 6552(only)s 7055(in)s 7321(direction:)s
8359(v)s 3(ertical)k 0 9449(for)m 343(body)s 883(te)s 3(xt,)k
1351(horizontal)s 2381(for)s 2724(paragraphs.)s 3943(In)s 4205(this)s
4607(section)s 5347(we)s 5687(de\207ne)s 240 fnt4 6334 9451(horizontal)m
7384(galle)s 7(ys)k 240 fnt1 8049 9449(,)m 8162(and)s
8572(sho)s 6(w)k 0 9161(ho)m 6(w)k 493(the)s 3(y)k
989(pro)s 3(vide)k 1806(an)s 2122(unlimited)s 3129(number)s
3953(of)s 4257(paragraph)s 5302(breaking)s 6225(styles,)s 6909(as)s
7192(well)s 7691(as)s 7974(solv)s 3(e)k 8565(some)s
0 8873(other)m 587(problems.)s 1677(Re)s 3(grettably)k 15(,)k
2917(lack)s 3412(of)s 3719(time)s 4235(has)s 4641(pre)s 6(v)k 3(ented)k
5669(their)s 6202(incorporation)s 7583(into)s 8044(the)s 8429(Basser)s
0 8585(Lout)m 512(interpreter)s 13(.)k 480 8211(Imagine)m 1337(a)s
1521(g)s 1(alle)k 3(y)k 2173(whose)s 2859(components)s
4085(are)s 4450(separated)s 5428(by)s 5740(horizontal)s 6782(concatenation)s
8186(operators)s 0 7923(instead)m 725(of)s 986(v)s 3(ertical)k
1742(ones,)s 2278(perhaps)s 3062(indicated)s 3986(by)s 4269(a)s
220 fnt6 4425 7920(hor)m -3(iz)k 3(ontally)k 5582(into)s
240 fnt1 5977 7923(clause.)m 6728(Then)s 7266(all)s 7549(object)s
8182(breaking,)s 0 7635(including)m 957(paragraph)s 1970(breaking,)s 2914(could)s
3504(be)s 3786(replaced)s 4653(by)s 4947(g)s 1(alle)k 3(y)k
5581(component)s 6705(promotion)s 7759(lik)s 2(e)k 8171(this:)s
220 fnt6 480 7134(def @P)m 8(ar)k 2(ag)k 2(r)k 2(aph r)k -3(ight x)k
480 6846({)m 480 6558(    def @LinePlace { @Galle)m 4(y })k 480 5982(    def @LineList)m 480 5694(    {)m
480 5406(        @HExpand @LinePlace)m 480 5118(        //1vx  @LineList)m 480 4830(    })m 480 4254(    def @P)m 8(ar hor)k -3(iz)k 3(ontally into { @LinePlace&&preceding })k
480 3966(        r)m -3(ight x)k 480 3678(    { x })m 480 3102(    @LineList  //  @P)m 8(ar { 0.2i @Wide {}  &0i  x  &1r)k -8(t })k
480 2814(})m 240 fnt1 0 2320(The)m 220 fnt6 431 2317(@HExpand)m
240 fnt1 1607 2320(operator)m 9(,)k 2504(which)s 3149(is)s
3362(a)s 3531(primiti)s 6(v)k 3(e)k 4456(of)s
4730(Basser)s 5430(Lout,)s 5992(horizontally)s 7204(e)s 3(xpands)k
8040(the)s 8391(g)s 1(aps)k 8883(in)s 0 2032(its)m
290(right)s 816(parameter)s 1844(until)s 2352(the)s 2715(result)s
3319(\207lls)s 3743(the)s 4105(a)s 4(v)k 6(ailable)k
5028(space,)s 5681(thus)s 6145(implementing)s 7541(line)s 7970(adjustment,)s
0 1744(e)m 3(xcept)k 689(when)s 1274(the)s 1631(parameter)s
2654(contains)s 3511(tab)s 4(ulation)k 4529(g)s 1(aps)k
5027(lik)s 2(e)k 220 fnt6 5447 1741(&1r)m -8(t)k
240 fnt1 5853 1744(,)m 5969(which)s 6620(cause)s 7216(the)s
7573(parameter)s 8596(to)s 8844(be)s 0 1456(already)m 757(e)s 3(xpanded.)k
1836(The)s 2264(result)s 2854(of)s 220 fnt6 480 955(@P)m 8(ar)k 2(ag)k 2(r)k 2(aph { A shor)k -8(t par)k 2(ag)k 2(r)k 2(aph of te)k 6(xt.)k 13( })k
240 fnt1 0 456(w)m 2(ould)k 655(then)s 1124(be)s
1406(something)s 2456(lik)s 2(e)k 
grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 34 35
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Helvetica
%%+ font Times-Italic
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5705 -1579(-)m 5833(34)s 6127(-)s 9066 13416 0 13307 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore
768 13253(A)m 1073(short)s
1687(paragraph)s 480 12965(of)m 751(te)s 3(xt.)k 0 12512(depending)m
1061(on)s 1368(the)s 1726(a)s 4(v)k 6(ailable)k
2645(horizontal)s 3679(space.)s 4384(An)s 4744(unlimited)s 5729(range)s
6326(of)s 6607(paragraph)s 7630(breaking)s 8531(styles)s 0 12224(could)m
590(be)s 872(de\207ned,)s 1684(including)s 2641(ragged)s 3350(right,)s
3908(ragged)s 4617(left,)s 5041(break-and-center)s 9(,)k 6757(and)s
7161(so)s 7427(on.)s 480 11850(In)m 765(Basser)s 1492(Lout,)s
2081(indented)s 2992(paragraphs)s 4122(are)s 4499(produced)s 5477(by)s
5801(preceding)s 6827(them)s 7394(with)s 7906(a)s 8102(horizontal)s
0 11562(concatenation)m 1380(operator)s 9(,)k 2269(for)s 2602(e)s 3(xample)k
220 fnt6 3459 11559(|0.5i)m 240 fnt1 3855 11562(.)m 4014(This)s
4485(has)s 4849(the)s 5192(unfortunate)s 6345(ef)s 6(fect)k
6935(of)s 7201(making)s 7967(an)s 8244(indented)s 0 11274(paragraph)m
1007(into)s 1426(a)s 1586(single)s 2207(component)s 3325(of)s
3590(the)s 3932(enclosing)s 4895(g)s 1(alle)k 3(y)k 15(,)k
5561(so)s 5821(that)s 6233(it)s 6419(will)s 6839(al)s 2(w)k 2(ays)k
7544(be)s 7820(k)s 2(ept)k 8283(together)s 0 10986(on)m
297(one)s 699(page.)s 1315(Horizontal)s 2392(g)s 1(alle)k 3(ys)k
3116(solv)s 3(e)k 3674(this)s 4070(problem)s 4927(with)s
5409(a)s 5575(simple)s 6268(change)s 7002(to)s 220 fnt6
7241 10983(@LineList)m 240 fnt1 8215 10986(:)m 220 fnt6 480 10485(def @LineList)m
480 10197({)m 480 9909(    |0.5i  @HExpand @LinePlace)m 480 9621(    //1vx  @LineList)m 480 9333(})m 240 fnt1
0 8839(sho)m 6(wing)k 860(the)s 1210(\210e)s 3(xibility)k
2192(that)s 2611(comes)s 3275(from)s 3801(bringing)s 4666(the)s
5016(full)s 5404(po)s 6(wer)k 6057(of)s 6330(the)s
6680(Lout)s 7193(language)s 8115(to)s 8356(bear)s 8829(on)s
0 8551(paragraph)m 1013(layout.)s 1775(It)s 1980(is)s 2190(easy)s
2669(to)s 2908(mak)s 2(e)k 3480(pro)s 3(vision)k
4438(for)s 4776(a)s 4942(tag)s 5287(on)s 5584(the)s
5932(\207rst)s 6363(line.)s 480 8177(Although)m 1451(Basser)s 2158(Lout)s
2679(permits)s 3456(recepti)s 6(v)k 3(e)k 4387(symbols)s
5246(within)s 5923(paragraphs,)s 7089(the)s 3(y)k 7561(are)s
7918(of)s 8198(little)s 8700(use,)s 0 7889(because)m 835(their)s
1355(a)s 4(v)k 6(ailable)k 2286(width)s 2911(is)s
3144(calculated)s 4193(after)s 4711(paragraph)s 5747(breaking,)s 6714(and)s
7141(the)s 7512(incoming)s 8492(g)s 1(alle)k 3(y)k
0 7601(cannot)m 736(spread)s 1456(o)s 3(v)k 3(er)k
1973(more)s 2558(than)s 3065(one)s 3505(line.)s 4066(W)s 9(ith)k
4630(horizontal)s 5692(g)s 1(alle)k 3(ys,)k 6510(such)s
7044(symbols)s 7931(w)s 2(ould)k 8625(ha)s 4(v)k 3(e)k
0 7313(in\207nite)m 733(a)s 4(v)k 6(ailable)k 1641(width,)s
2293(and)s 2697(we)s 3032(could)s 3622(easily)s 4233(produce)s
5060(a)s 5226(\207lled)s 5775(paragraph)s 6788(of)s 7059(footnotes)s
8000(lik)s 2(e)k 8412(this:)s 200 fnt1 480 6838(1)m
240 fnt1 559 6743(See)m 987(Jones)s 1597(and)s 2028(Saunders)s
2983(\(1982\).)s 200 fnt1 3932 6838(2)m 240 fnt1 4027 6743(Or)m
4366(so)s 4659(Jacobsen)s 480 6443(\(1973\))m 1167(asserts.)s 200 fnt1
2087 6538(3)m 240 fnt4 2174 6445(ibid)m 240 fnt1 2552 6443(,)m
2659(p.)s 2883(327.)s 0 5940(based)m 603(on)s 900(an)s
1183(in\207nite)s 1916(horizontal)s 2940(sequence)s 3873(of)s 220 fnt6
4144 5937(@F)m 6(ootPlace)k 240 fnt1 5400 5940(symbols)m 6249(inside)s
6876(a)s 7042(horizontal)s 8066(g)s 1(alle)k 3(y)k 15(.)k
480 5566(When)m 1133(body)s 1692(te)s 3(xt)k 2132(is)s
2367(placed)s 3074(on)s 3395(pages,)s 4072(the)s 4445(length)s
5125(of)s 5421(each)s 5940(column)s 6740(v)s 6(aries)k
7380(depending)s 8456(on)s 8778(the)s 0 5278(a)m 4(v)k 6(ailable)k
914(v)s 3(ertical)k 1687(space.)s 2389(Horizontal)s 3472(g)s 1(alle)k 3(ys)k
4203(could)s 4799(analogously)s 6017(produce)s 6850(lines)s 7359(of)s
7636(v)s 6(arying)k 8421(length,)s 0 4990(and)m 404(so)s
670(could)s 1260(\207ll)s 1580(non-rectangular)s 3153(shapes.)s 480 4616(An)m
835(important)s 1829(theoretical)s 2896(bene\207t)s 3612(of)s 3888(horizontal)s
4918(g)s 1(alle)k 3(ys)k 5647(is)s 5862(that)s
6285(the)s 3(y)k 6753(w)s 2(ould)k 7413(permit)s
8102(horizontal)s 0 4328(and)m 403(v)s 3(ertical)k 1168(to)s
1405(be)s 1685(treated)s 2390(in)s 2631(a)s 2795(perfectly)s
3695(symmetrical)s 4928(w)s 2(ay)k 15(,)k 5415(whereas)s
6247(at)s 6477(present)s 7225(paragraph)s 8236(breaking)s 0 4040(is)m
243(horizontal)s 1300(only)s 15(,)k 1851(and)s 2288(g)s 1(alle)k 3(y)k
2955(breaking)s 3878(is)s 4121(v)s 3(ertical)k 4921(only)s 15(.)k
5529(This)s 6038(must)s 6596(simplify)s 7479(the)s 7860(treatment)s
8855(of)s 0 3752(non-European)m 1432(languages)s 2459(which)s 3121(\207ll)s
3460(in)s 3722(unusual)s 4542(directions,)s 5610(although)s 6525(it)s
6736(is)s 6965(not)s 7351(itself)s 7918(suf\207cient)s 8887(to)s
0 3464(implement)m 1082(them.)s 480 3090(There)m 1132(are)s 1519(a)s
1725(fe)s 6(w)k 2170(minor)s 2841(problems)s 3822(with)s
4343(horizontal)s 5407(g)s 1(alle)k 3(ys.)k 6284(First,)s
6867(the)s 7255(syntactic)s 8197(o)s 3(v)k 3(erhead)k
0 2802(of)m 319(enclosing)s 1337(each)s 1880(paragraph)s 2941(in)s
220 fnt6 3233 2799(@P)m 8(ar)k 2(ag)k 2(r)k 2(aph { ...)k 13( })k
240 fnt1 5064 2802(or)m 5371(whate)s 6(v)k 3(er)k
6346(is)s 6604(unacceptable.)s 8065(Permitting)s 0 2514(user)m 4(-de\207ned)k
1234(operators)s 2172(to)s 2409(ha)s 4(v)k 3(e)k
2908(lo)s 6(wer)k 3504(precedence)s 4633(than)s 5100(the)s
5446(white)s 6031(space)s 6616(between)s 7468(tw)s 2(o)k
7876(w)s 2(ords)k 8508(might)s 0 2226(help)m 450(here.)s
1009(Second,)s 1805(the)s 2137(b)s 4(uilt-in)k 2877(paragraph)s
3874(break)s 2(er)k 4632(includes)s 5464(h)s 1(yphenation,)k
6738(and)s 7126(it)s 7302(permits)s 8053(line)s 8451(breaks)s
0 1938(in)m 246(the)s 598(input)s 1153(to)s 1396(determine)s
2410(line)s 2828(breaks)s 3506(in)s 3753(the)s 4105(output,)s
4827(if)s 5048(desired.)s 5905(These)s 6536(features)s 7345(must)s
7874(someho)s 6(w)k 8844(be)s 0 1650(preserv)m 3(ed.)k
1081(Finally)s 15(,)k 1841(we)s 2167(ha)s 4(v)k 3(e)k
2659(e)s 3(xplained)k 3634(ho)s 6(w)k 4086(the)s
4425(Basser)s 5113(Lout)s 5616(interpreter)s 6659(assigns)s 7392(equal)s
7956(width)s 8549(to)s 8778(the)s 0 1362(wider)m 607(columns)s
1473(of)s 1748(tables)s 2359(\(Section)s 3216(2.5\).)s 3763(The)s
4194(equi)s 6(v)k 6(alent)k 5242(situation)s 6126(in)s
6372(v)s 3(ertical)k 7143(g)s 1(alle)k 3(ys)k
7871(occurs)s 8550(when)s 0 1074(tw)m 2(o)k 416(recepti)s 6(v)k 3(e)k
1345(symbols)s 2201(compete)s 3074(for)s 3419(v)s 3(ertical)k
4193(space)s 4786(\(e.g.)s 220 fnt6 5262 1071(@T)m 26(e)k 6(xtPlace)k
240 fnt1 6487 1074(and)m 220 fnt6 6898 1071(@F)m 6(ootSect)k
240 fnt1 7989 1074(\),)m 8182(and)s 8593(there)s 0 786(it)m
187(is)s 392(con)s 9(v)k 3(entional)k 1666(to)s
1900(grant)s 2446(as)s 2691(much)s 3274(as)s 3519(required)s
4368(to)s 4602(the)s 4945(\207rst)s 5371(arri)s 6(v)k 6(al.)k
6140(It)s 6339(is)s 6544(not)s 6905(clear)s 7423(to)s
7657(the)s 8000(author)s 8665(ho)s 6(w)k 0 498(these)m
547(dif)s 6(ferent)k 1422(approaches)s 2549(can)s 2938(be)s
3220(reconciled.)s 
grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 35 36
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Times-Bold
%%+ font Helvetica
%%+ font Times-Italic
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Times-Bold
/Times-Boldfnt2 vec2 /Times-Bold LoutRecode
/fnt2 { /Times-Boldfnt2 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5709 -1582(-)m 5837(35)s 6123(-)s 9066 13413 0 13413 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore
240 fnt2 0 12672(6.)m
291(Cr)s 4(oss)k 926(r)s 4(efer)k 4(ences)k

[ /Dest /LOUT16_594_s6_0_1 /DEST pdfmark
240 fnt1 480 12240(Cross)m 1064(references,)s 2138(such)s 2622(as)s
2859(`see)s 3286(page)s 3782(57')s 4121(and)s 4512(`see)s
4940(Figure)s 5607(5,)s 16(')k 5871(are)s 6205(a)s
6358(useful)s 6985(b)s 4(ut)k 7334(highly)s 7987(error)s 4(-prone)k
0 11952(feature)m 716(of)s 985(documents.)s 2184(Scribe)s 2848([7])s
3163(introduced)s 4242(a)s 4406(method)s 5180(of)s 5449(k)s 2(eeping)k
6256(them)s 6792(up)s 7083(to)s 7320(date)s 7772(automatically)s
0 11664(as)m 245(the)s 587(document)s 1585(changes:)s 2517(the)s
2859(user)s 3311(gi)s 6(v)k 3(es)k 3852(each)s
4342(referenced)s 5401(entity)s 5993(a)s 6153(tag,)s 6547(and)s
6945(operators)s 7879(are)s 8220(pro)s 3(vided)k 0 11376(that)m
418(return)s 1045(the)s 1393(page)s 1901(or)s 2160(sequence)s
3093(number)s 3884(of)s 4155(the)s 4503(entity)s 5101(with)s
5583(a)s 5749(gi)s 6(v)k 3(en)k 6329(tag.)s
480 11002(A)m 712(cross)s 1256(reference)s 2201(tak)s 2(es)k
2743(an)s 3028(object)s 3674(\(such)s 4251(as)s 4503(a)s
4671(page)s 5181(number\))s 6042(from)s 6568(one)s 6972(point)s
7526(in)s 7771(the)s 8122(document)s 0 10714(and)m 435(copies)s
1128(it)s 1351(to)s 1621(another)s 9(,)k 2467(and)s
2902(this)s 3329(generalization)s 4770(suggests)s 5663(other)s 6245(applications.)s
7595(F)s 3(or)k 8015(e)s 3(xample,)k 8960(a)s
0 10426(running)m 831(header)s 1562(is)s 1806(copied)s 2536(from)s
3094(the)s 3475(title)s 3935(of)s 4240(a)s 4440(nearby)s
5179(chapter)s 9(,)k 6013(and)s 6451(a)s 6651(reference)s
7628(is)s 7872(copied)s 8602(from)s 0 10138(a)m 207(bibliographic)s
1576(database.)s 2604(Making)s 3443(the)s 3832(unity)s 4419(of)s
4731(these)s 5319(applications)s 6566(manifest)s 7489(is)s 7740(an)s
8065(interesting)s 0 9850(language)m 920(design)s 1602(problem.)s 240 fnt2
0 9201(6.1.)m 471(The)s 926(cr)s 4(oss)k 1494(r)s 4(efer)k 4(ence)k
2496(abstraction)s 
[ /Dest /LOUTcross /DEST pdfmark
240 fnt1 480 8770(In)m 736(de)s 6(v)k 3(eloping)k
1844(the)s 2192(cross)s 2734(reference)s 3677(abstraction,)s 4832(it)s
5024(seemed)s 5799(best)s 6244(to)s 6483(be)s 3(gin)k
7069(with)s 7551(the)s 7899(database)s 8779(ap)s 8998(-)s
0 8482(plication,)m 943(since)s 1490(it)s 1682(is)s 1892(the)s
2240(simplest.)s 3200(Database)s 4132(relations)s 5005(are)s 5352(naturally)s
6255(mapped)s 7071(into)s 7496(Lout)s 8008(de\207nitions:)s 220 fnt6
480 7981(def @Ref)m 6(erence)k 480 7693(    named @T)m 26(ag {})k 480 7405(    named @A)m 6(uthor {})k
480 7117(    named @Title {})m 480 6829(    named @Jour)m -5(nal {})k 480 6541({})m 240 fnt1
0 6047(The)m 434(set)s 766(of)s 1043(all)s 1343(in)s 9(v)k 4(ocations)k
2490(of)s 220 fnt6 2768 6044(@Ref)m 6(erence)k 240 fnt1
4055 6047(is)m 4272(a)s 4444(relation)s 5237(whose)s 5911(attrib)s 4(utes)k
6853(are)s 7206(the)s 7561(parameters,)s 8722(and)s 0 5759(whose)m
659(tuples)s 1271(are)s 1608(the)s 1946(in)s 9(v)k 4(ocations.)k
3191(T)s 19(o)k 3481(complete)s 4403(the)s 4741(correspondence,)s
6339(we)s 6665(need)s 7165(only)s 7635(declare)s 8370(that)s
8778(the)s 220 fnt6 0 5468(@T)m 26(ag)k 240 fnt1
623 5471(parameter)m 1637(is)s 1847(special,)s 2617(serving)s 3374(as)s
3624(the)s 3972(k)s 2(e)k 3(y)k 4367(attrib)s 4(ute.)k
480 5097(F)m 3(ollo)k 6(wing)k 1508(the)s 1856(database)s
2735(model,)s 3440(we)s 3775(ne)s 3(xt)k 4244(need)s
4755(a)s 4921(notation)s 5762(for)s 6100(retrie)s 6(ving)k
7075(the)s 7423(in)s 9(v)k 4(ocation)k 8477(with)s
8960(a)s 0 4809(gi)m 6(v)k 3(en)k 580(tag:)s
220 fnt6 480 4308(@Ref)m 6(erence&&kingston91)k 240 fnt1 0 3809(This)m
240 fnt4 534 3811(cr)m 10(oss)k 1143(r)s 8(efer)k 8(ence)k
240 fnt1 2141 3809(is)m 2410(lik)s 2(e)k 2881(an)s
3223(arro)s 6(w)k 3887(pointing)s 4796(to)s 5094(the)s
5501(in)s 9(v)k 4(ocation.)k 6721(T)s 19(o)k
7080(access)s 7800(its)s 8135(attrib)s 4(utes,)k 0 3521(we)m
335(write)s 220 fnt6 480 3069(@Ref)m 6(erence&&kingston91 @Open { @A)k 6(uthor)k 11(, @Title })k
240 fnt1 0 2570(The)m 220 fnt6 484 2567(@Open)m 240 fnt1
1347 2570(operator)m 2260(e)s 6(v)k 6(aluates)k 3245(its)s
3578(right)s 4146(parameter)s 5217(in)s 5517(an)s 5857(en)s 9(vironment)k
7174(which)s 7873(includes)s 8778(the)s 0 2282(e)m 3(xported)k
892(parameters)s 1990(of)s 2261(its)s 2537(left.)s 480 1908(An)m
829(in)s 9(v)k 4(ocation)k 1882(is)s 2091(chosen)s
2812(to)s 3050(be)s 3331(a)s 3496(running)s 4293(header)s
4989(because)s 5801(of)s 6071(its)s 6346(proximity)s 7342(to)s
7580(the)s 7927(place)s 8486(where)s 0 1620(it)m 223(is)s
465(used,)s 1043(rather)s 1691(than)s 2192(by)s 2517(its)s
2825(tag.)s 3313(Such)s 3881(proximity)s 4910(is)s 5151(naturally)s
6086(e)s 3(xpressed)k 7116(by)s 7442(tw)s 2(o)k
7884(special)s 8634(tags,)s 220 fnt6 0 1329(preceding)m 240 fnt1
1049 1332(and)m 220 fnt6 1491 1329(f)m 6(ollo)k 3(wing)k
240 fnt1 2321 1332(;)m 2471(for)s 2848(e)s 3(xample,)k
220 fnt6 3800 1329(@Sym&&f)m 6(ollo)k 3(wing)k 240 fnt1
5682 1332(will)m 6146(point)s 6737(to)s 7014(the)s 7400(closest)s
8149(follo)s 6(wing)k 0 1044(in)m 9(v)k 4(ocation)k
1083(of)s 220 fnt6 1383 1041(@Sym)m 240 fnt1 2121 1044(in)m
2393(the)s 2771(\207nal)s 3280(printed)s 4045(document.)s 5182(This)s
5688(is)s 5927(much)s 6546(simpler)s 7351(conceptually)s 8657(than)s
0 756(reference)m 937(to)s 1169(the)s 1511(internal)s 2288(state)s
2775(of)s 3039(the)s 3381(document)s 4378(formatter)s 5319(at)s
5544(a)s 5704(critical)s 6413(moment,)s 7298(the)s 7639(usual)s
8192(approach)s 0 468(to)m 239(running)s 1037(headers.)s 480 94(It)m
691(turns)s 1227(out)s 1600(that)s 2025(the)s 2380(abo)s 3(v)k 3(e)k
3009(design)s 3698(solv)s 3(es)k 4350(all)s 4650(the)s
5005(cross)s 5554(referencing)s 6701(problems)s 7649(encountered)s 8883(in)s

grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 36 37
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Helvetica
%%+ font Times-Bold
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
%%IncludeResource: font Times-Bold
/Times-Boldfnt2 vec2 /Times-Bold LoutRecode
/fnt2 { /Times-Boldfnt2 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5705 -1581(-)m 5833(36)s 6126(-)s 9066 13414 0 13305 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore
0 13251(practice)m 825(e)s 3(xcept)k
1521(one,)s 1988(which)s 2645(may)s 3126(be)s 3422(typi\207ed)s
4226(by)s 4535(the)s 4897(problem)s 5769(of)s 6054(\207nding)s
6801(the)s 7164(number)s 7969(of)s 8255(the)s 8618(page)s
0 12963(on)m 303(which)s 952(the)s 1306(chapter)s 2076(whose)s
2750(tag)s 3102(is)s 220 fnt6 3318 12960(intro)m 240 fnt1
3804 12963(be)m 3(gins.)k 4596(T)s 19(w)k 2(o)k
5074(cross)s 5622(referencing)s 6769(steps)s 7304(are)s 7658(needed,)s
8449(\207rst)s 8887(to)s 220 fnt6 0 12672(@Chapter&&intro)m 240 fnt1
1714 12675(,)m 1821(then)s 2290(from)s 2814(there)s 3347(to)s
220 fnt6 3586 12672(@P)m 8(age&&preceding)k 240 fnt1 5556 12675(,)m
5663(where)s 6303(the)s 6651(page)s 7159(number)s 7950(is)s
8160(kno)s 6(wn.)k 480 12301(Gi)m 6(v)k 3(en)k
1113(our)s 1492(success)s 2260(so)s 2526(f)s 2(ar)k 9(,)k
2886(this)s 3282(last)s 3673(problem)s 4530(pro)s 3(v)k 3(es)k
5213(to)s 5452(be)s 5734(surprisingly)s 6930(dif\207cult.)s 7850(W)s 19(e)k
8219(\207rst)s 8650(try)s 220 fnt6 480 11800(@Chapter&&intro @Open {)m 480 11512(    @P)m 8(age&&preceding @Open { @P)k 8(ageNum })k
480 11224(})m 240 fnt1 0 10730(b)m 4(ut)k 363(this)s
761(f)s 2(ails)k 1222(because)s 220 fnt6 2037 10727(@P)m 8(age&&preceding)k
240 fnt1 4069 10730(is)m 4281(e)s 6(v)k 6(aluated)k
5245(in)s 5490(the)s 5840(present)s 6592(conte)s 3(xt,)k
7402(not)s 7770(in)s 8015(the)s 8365(conte)s 3(xt)k
0 10442(of)m 220 fnt6 271 10439(@Chapter&&intro)m 240 fnt1 2045 10442(as)m
2295(required.)s 3255(So)s 3561(our)s 3940(ne)s 3(xt)k
4409(attempt)s 5185(is)s 220 fnt6 480 9941(def @Chapter)m 480 9653(    named @P)m 8(ageNum { @P)k 8(age&&preceding @Open { @P)k 8(ageNum } })k
480 9365(    ...)m 240 fnt1 0 8914(with)m 482(the)s 220 fnt6
830 8911(@P)m 8(age&&preceding)k 240 fnt1 2860 8914(cross)m 3402(reference)s
4345(attached)s 5199(to)s 5438(the)s 5786(chapter;)s 6601(we)s
6936(write)s 220 fnt6 480 8413(@Chapter&&intro @Open { @P)m 8(ageNum })k 240 fnt1
0 7914(This)m 604(also)s 1170(f)s 2(ails,)k 1813(because)s
2754(parameters)s 3980(are)s 4456(e)s 6(v)k 6(aluated)k
5546(after)s 6170(substitution,)s 7521(so)s 7915(once)s 8552(ag)s 1(ain)k
220 fnt6 0 7623(@P)m 8(age&&preceding)k 240 fnt1 2015 7626(is)m
2209(e)s 6(v)k 6(aluated)k 3156(in)s 3383(the)s
3716(wrong)s 4365(conte)s 3(xt.)k 5215(W)s 19(e)k
5568(could)s 6143(of)s 6398(course)s 7063(de\207ne)s 7688(a)s
7839(ne)s 6(w)k 8270(operator)s 0 7338(speci\207cally)m 1142(for)s
1480(this)s 1876(case:)s 220 fnt6 480 6837(@P)m 8(age&&{ @Preceding @Chapter&&intro })k
240 fnt1 0 6338(or)m 267(some)s 836(such.)s 1448(This)s
1932(is)s 2151(free)s 2585(of)s 2864(the)s 3221(anno)s 2(ying)k
4172(conte)s 3(xt-sensiti)k 6(vity)k 15(,)k 6029(b)s 4(ut)k
6399(it)s 6599(seems)s 7243(quite)s 7785(comple)s 3(x,)k
8722(and)s 0 6050(the)m 348(e)s 3(xpected)k 1253(cross)s
1795(reference)s 220 fnt6 2738 6047(@P)m 8(age&&preceding)k 240 fnt1
4768 6050(does)m 5258(not)s 5624(appear)s 13(.)k 480 5676(The)m
939(author)s 1642(w)s 2(as)k 2095(lost)s 2532(in)s
2806(these)s 3385(obscurities)s 4503(for)s 4873(some)s 5465(time,)s
6028(and)s 6464(ultimately)s 7518(rescued)s 8338(himself)s 0 5388(by)m
306(looking)s 1103(ahead)s 1731(to)s 1982(the)s 2342(implementation)s
3912(of)s 4195(the)s 220 fnt6 4555 5385(preceding)m 240 fnt1
5578 5388(and)m 220 fnt6 5994 5385(f)m 6(ollo)k 3(wing)k
240 fnt1 6897 5388(tags,)m 7401(to)s 7652(see)s 8025(if)s
8254(a)s 8433(simple)s 0 5100(e)m 3(xtension)k 971(of)s
1242(it)s 1434(w)s 2(ould)k 2089(solv)s 3(e)k
2647(the)s 2995(problem.)s 3956(This)s 4432(led)s 4782(to)s
5021(the)s 220 fnt6 5369 5097(@T)m 26(agged)k 240 fnt1
6358 5100(operator:)m 220 fnt6 480 4599(@P)m 8(age&&preceding @T)k 26(agged intro)k
240 fnt1 0 4100(placed)m 686(at)s 922(the)s 1274(be)s 3(ginning)k
2286(of)s 2562(the)s 2914(body)s 3452(of)s 3727(the)s
4079(chapter)s 4847(will)s 5277(attach)s 220 fnt6 5908 4097(intro)m
240 fnt1 6391 4100(as)m 6645(an)s 6933(e)s 3(xtra)k
7471(tag)s 7820(to)s 8063(the)s 8416(closest)s 0 3812(preceding)m
996(in)s 9(v)k 4(ocation)k 2050(of)s 220 fnt6
2321 3809(@P)m 8(age)k 240 fnt1 3040 3812(,)m 3147(so)s
3413(that)s 220 fnt6 480 3311(@P)m 8(age&&intro @Open { @P)k 8(ageNum })k
240 fnt1 0 2812(yields)m 635(the)s 996(desired)s 1758(page)s
2279(number)s 13(.)k 3174(There)s 3801(is)s 4024(something)s
5087(lo)s 6(w-le)k 6(v)k 3(el)k 6043(and)s
6460(ad)s 6757(hoc)s 7170(about)s 7775(the)s 220 fnt6
8137 2809(@T)m 26(agged)k 240 fnt1 0 2524(operator)m 9(,)k
894(b)s 4(ut)k 1256(the)s 1604(tw)s 2(o)k
2014(cross)s 2556(references)s 3587(do)s 3880(appear)s 4577(naturally)s 15(,)k
5518(and)s 5922(it)s 6114(w)s 2(orks.)k 240 fnt2
0 1875(6.2.)m 471(Implementation)s 2159(of)s 2431(cr)s 4(oss)k
2999(r)s 4(efer)k 4(ences)k 
[ /Dest /LOUTcross_impl /DEST pdfmark
240 fnt1 480 1398(Before)m
1185(an)s 1466(object)s 2109(can)s 2496(be)s 2777(sized)s
3324(and)s 3727(printed,)s 4509(the)s 4855(v)s 6(alues)k
5510(of)s 5779(an)s 3(y)k 6175(cross)s 6715(references)s
7745(within)s 8411(it)s 8601(must)s 0 1110(be)m 279(kno)s 6(wn.)k
1086(If)s 1312(the)s 3(y)k 1772(refer)s 2277(to)s
2512(in)s 9(v)k 4(ocations)k 3650(that)s 4064(ha)s 4(v)k 3(e)k
4561(not)s 4924(yet)s 5272(been)s 5777(read,)s 6292(there)s
6821(is)s 7027(a)s 7190(problem.)s 8147(Scribe)s 8809([7])s
0 822(solv)m 3(es)k 649(it)s 844(by)s 1141(capitalizing)s
2311(on)s 2611(the)s 2962(f)s 2(act)k 3381(that)s
3802(documents)s 4893(are)s 5243(formatted)s 6232(repeatedly)s 7284(during)s
7965(the)s 8317(drafting)s 0 534(process.)m 868(All)s 1214(tagged)s
1897(in)s 9(v)k 4(ocations)k 3024(are)s 3358(copied)s
4040(to)s 4266(an)s 4535(auxiliary)s 5425(\207le)s 5772(during)s
6437(the)s 6771(\207rst)s 7189(run,)s 7601(and)s 7992(inde)s 3(x)k 3(ed)k
8788(for)s 0 246(quick)m 593(retrie)s 6(v)k 6(al)k
1429(on)s 1725(the)s 2072(second.)s 2901(A)s 3130(ne)s 6(w)k
3576(auxiliary)s 4478(\207le)s 4839(is)s 5048(written)s 5780(during)s
6457(the)s 6805(second)s 7527(run,)s 7952(for)s 8289(retrie)s 6(v)k 6(al)k

grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 37 38
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Times-Italic
%%+ font Helvetica
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
%%IncludeResource: font Helvetica
/Helveticafnt6 vec2 /Helvetica LoutRecode
/fnt6 { /Helveticafnt6 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5708 -1579(-)m 5836(37)s 6124(-)s 9066 13416 0 13307 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore
0 13253(on)m 301(the)s
654(third,)s 1217(and)s 1625(so)s 1896(on.)s 2305(Cross)s
2906(references)s 3941(al)s 2(w)k 2(ays)k 4657(lag)s
5007(one)s 5413(run)s 5794(behind)s 6509(the)s 6862(rest)s
7270(of)s 7546(the)s 7899(document;)s 8960(a)s 0 12965(perfect)m
711(cop)s 2(y)k 1217(may)s 1671(be)s 1942(produced)s
2879(by)s 3161(formatting)s 4210(the)s 4547(same)s 5082(v)s 3(ersion)k
5828(twice,)s 6440(e)s 3(xcept)k 7110(in)s 7341(a)s
7495(fe)s 6(w)k 7889(pathological)s 0 12677(cases)m 555(that)s
973(f)s 2(ail)k 1343(to)s 1582(con)s 9(v)k 3(er)k 4(ge.)k
480 12303(Cross)m 1123(referencing)s 2310(in)s 2600(Lout)s 3159(is)s
3416(implemented)s 4769(on)s 5113(top)s 5519(of)s 5837(a)s
6050(simple)s 6790(database)s 7716(system.)s 8591(Each)s 0 12015(database)m
879(is)s 1089(either)s 1692(writable)s 2530(or)s 2790(readable)s
3655(b)s 4(ut)k 4017(not)s 4383(both)s 4867(at)s
5099(once,)s 5658(and)s 6062(holds)s 6633(a)s 6799(set)s
7124(of)s 7395(k)s 2(e)k 3(y-v)k 6(alue)k
8384(entries:)s 0 11727(the)m 348(k)s 2(e)k 3(ys)k
833(are)s 1180(ASCII)s 1861(strings,)s 2605(and)s 3009(the)s
3358(v)s 6(alues)k 4014(are)s 4361(Lout)s 4873(objects,)s
5658(possibly)s 6510(with)s 6992(en)s 9(vironments,)k 8393(written)s
0 11439(in)m 290(Lout)s 850(source.)s 1685(Operations)s 2833(are)s
3227(pro)s 3(vided)k 4181(for)s 4566(writing)s 5357(an)s
5687(entry)s 15(,)k 6318(con)s 9(v)k 3(erting)k
7429(from)s 8001(writable)s 8887(to)s 0 11151(readable,)m 916(retrie)s 6(v)k 6(al)k
1753(by)s 2047(k)s 2(e)k 3(y)k 15(,)k
2480(and)s 2884(sequential)s 3908(retrie)s 6(v)k 6(al)k
4745(in)s 4988(k)s 2(e)k 3(y)k 5383(order)s 13(.)k
480 10777(The)m 905(implementation,)s 2509(which)s 3148(is)s 3354(quite)s
3885(unsophisticated,)s 5477(emplo)s 2(ys)k 6334(one)s 6732(or)s
6988(more)s 7532(ASCII)s 240 fnt4 8208 10779(database)m 0 10491(\207les)m
240 fnt1 380 10489(,)m 485(containing)s 1545(the)s 1891(v)s 6(alues,)k
2600(and)s 3001(one)s 3401(ASCII)s 240 fnt4 4078 10491(inde)m 4(x)k
4650(\207le)s 240 fnt1 4992 10489(per)m 5354(database,)s 6282(containing)s
7342(the)s 7688(k)s 2(e)k 3(ys.)k 8283(T)s 19(o)k
8580(write)s 0 10201(an)m 283(entry)s 15(,)k 866(the)s
1214(v)s 6(alue)k 1782(is)s 1992(\207rst)s 2423(appended)s
3399(to)s 3638(a)s 3804(database)s 4683(\207le,)s 5095(then)s
5564(a)s 5730(line)s 6144(lik)s 2(e)k 220 fnt6
480 9700(@Chapter&&intro  ch1.ld  57)m 240 fnt1 0 9204(is)m 204(appended)s 1174(to)s
1406(the)s 1748(inde)s 3(x)k 2326(\207le,)s 2731(gi)s 6(ving)k
3384(the)s 3725(\207le)s 4080(and)s 4478(of)s 6(fset)k
5068(where)s 5702(the)s 6043(v)s 6(alue)k 6605(is)s
6809(stored.)s 7550(T)s 19(o)k 7844(con)s 9(v)k 3(ert)k
8602(from)s 0 8916(writable)m 831(to)s 1062(readable,)s 1971(the)s
2311(inde)s 3(x)k 2887(\207le)s 3241(is)s 3443(sorted.)s
4183(Then)s 4725(retrie)s 6(v)k 6(al)k 5554(by)s
5840(k)s 2(e)k 3(y)k 6228(requires)s 7040(a)s
7198(binary)s 7856(search)s 8515(of)s 8778(the)s 0 8628(inde)m 3(x)k
584(\207le)s 945(and)s 1349(one)s 1751(seek)s 2237(into)s
2662(a)s 2828(database)s 3707(\207le,)s 4119(and)s 4523(sequential)s
5547(retrie)s 6(v)k 6(al)k 6384(by)s 6678(k)s 2(e)k 3(y)k
7073(is)s 7283(tri)s 6(vial.)k 480 8254(This)m 945(database)s
1813(system)s 2526(is)s 2725(used)s 3211(in)s 3443(se)s 6(v)k 3(eral)k
4154(w)s 2(ays.)k 4797(F)s 3(or)k 5175(an)s
5447(e)s 3(xternal)k 6257(database,)s 7176(say)s 7538(of)s
7798(bibliographic)s 0 7966(references,)m 1093(the)s 1447(user)s 1912(creates)s
2631(the)s 2985(database)s 3871(\207le)s 4238(of)s 4516(v)s 6(alues)k
5178(\(without)s 6054(en)s 9(vironments\),)k 7540(Lout)s 8058(creates)s
8778(the)s 0 7678(inde)m 3(x)k 587(\207le)s 951(whene)s 6(v)k 3(er)k
1935(it)s 2130(cannot)s 2831(\207nd)s 3265(one,)s 3721(and)s
4128(retrie)s 6(v)k 6(als)k 5057(by)s 5354(k)s 2(e)k 3(y)k
5752(proceed)s 6570(as)s 6823(usual.)s 7495(Cross)s 8095(references)s
0 7390(with)m 476(tags)s 906(other)s 1451(than)s 220 fnt6
1913 7387(preceding)m 240 fnt1 2918 7390(and)m 220 fnt6 3316 7387(f)m 6(ollo)k 3(wing)k
240 fnt1 4200 7390(are)m 4540(treated)s 5241(as)s 5485(described)s
6453(abo)s 3(v)k 3(e,)k 7119(by)s 7407(writing)s
8144(all)s 8430(tagged)s 0 7102(in)m 9(v)k 4(ocations)k
1131(\(with)s 1681(en)s 9(vironments\))k 3092(to)s 3320(a)s
3475(single)s 4092(database,)s 5011(which)s 5643(is)s 5842(con)s 9(v)k 3(erted)k
6820(to)s 7049(readable)s 7903(at)s 8125(the)s 8462(end)s
8855(of)s 0 6814(the)m 334(run)s 695(for)s 1018(retrie)s 6(v)k 6(als)k
1930(on)s 2212(the)s 2545(ne)s 3(xt)k 3000(run.)s
3468(Sorted)s 4135(g)s 1(alle)k 3(ys,)k 4900(such)s
5382(as)s 5617(inde)s 3(x)k 6186(entries,)s 6915(are)s
7247(written)s 7965(out)s 8316(inde)s 3(x)k 3(ed)k
0 6526(by)m 307(tar)s 4(get)k 920(and)s 1337(k)s 2(e)k 3(y)k
1746(and)s 2163(retrie)s 6(v)k 3(ed)k 3074(sequentially)s
4297(on)s 4607(the)s 4969(ne)s 3(xt)k 5451(run.)s
5948(Unsorted)s 6896(g)s 1(alle)k 3(ys)k 7634(with)s
8130(preceding)s 0 6238(tar)m 4(gets)k 684(which)s 1327(pop)s
1741(of)s 6(f)k 2086(the)s 2435(top)s 2795(of)s
3067(the)s 3416(root)s 3863(g)s 1(alle)k 3(y)k
4498(without)s 5290(\207nding)s 6023(a)s 6190(tar)s 4(get,)k
6837(such)s 7334(as)s 7585(entries)s 8273(in)s 8518(tables)s
0 5950(of)m 274(contents,)s 1181(are)s 1532(treated)s 2242(similarly)s 15(,)k
3186(e)s 3(xcept)k 3870(that)s 4291(the)s 3(y)k
4758(are)s 5108(inde)s 3(x)k 3(ed)k 5922(by)s
6219(tar)s 4(get)k 6821(and)s 7229(a)s 7398(sequence)s
8335(number)s 0 5662(that)m 418(preserv)s 3(es)k 1368(their)s
1865(relati)s 6(v)k 3(e)k 2627(order)s 3191(during)s
3869(the)s 4217(sort.)s 480 5288(When)m 1107(Lout)s 1617(processes)s
2581(a)s 2745(multi-\207le)s 3687(document,)s 4735(one)s 5135(cross)s
5674(reference)s 6615(database)s 7492(\207le)s 7850(is)s 8058(written)s
8788(for)s 0 5000(each)m 504(input)s 1065(\207le,)s 1486(b)s 4(ut)k
1858(the)s 3(y)k 2330(share)s 2899(a)s 3074(common)s
3979(inde)s 3(x)k 4572(\207le.)s 5050(At)s 5358(end)s
5772(of)s 6052(run,)s 6487(the)s 6844(ne)s 6(w)k
7301(inde)s 3(x)k 7894(\207le)s 8264(is)s 8484(sorted)s
0 4712(and)m 404(mer)s 4(ged)k 1176(with)s 1658(the)s
2007(old)s 2371(one)s 2774(in)s 3017(such)s 3514(a)s
3680(w)s 2(ay)k 4132(as)s 4383(to)s 4622(preserv)s 3(e)k
5485(entries)s 6172(relating)s 6955(to)s 7194(\207les)s 7644(not)s
8010(read)s 8480(on)s 8778(the)s 0 4424(current)m 737(run.)s
1221(This)s 1699(pro)s 3(vides)k 2572(some)s 3135(support)s
3914(for)s 4254(piecemeal)s 5278(formatting,)s 6395(b)s 4(ut)k
6758(e)s 6(v)k 3(entually)k 7801(the)s 8150(\207les)s
8601(must)s 0 4136(all)m 293(be)s 575(formatted)s 1561(together)s 13(.)k
480 3762(When)m 1120(a)s 220 fnt6 1297 3759(preceding)m 240 fnt1
2319 3762(or)m 220 fnt6 2590 3759(f)m 6(ollo)k 3(wing)k
240 fnt1 3491 3762(cross)m 4044(reference)s 4998(is)s 5220(found,)s
5897(it)s 6100(is)s 6321(attached)s 7187(to)s 7437(a)s
7614(g)s 1(alle)k 3(y)k 8259(inde)s 3(x)k
8855(of)s 0 3474(type)m 240 fnt4 474 3476(CR)m 9(OSS_PREC)k
240 fnt1 1973 3474(or)m 240 fnt4 2238 3476(CR)m 9(OSS_FOLL)k
240 fnt1 3653 3474(,)m 3766(together)s 4615(with)s 5103(an)s
5392(automatically)s 6752(generated)s 7745(tag)s 8097(composed)s 0 3186(of)m
258(the)s 593(current)s 1316(\207le)s 1663(name)s 2224(and)s
2615(a)s 2767(sequence)s 3687(number)s 13(.)k 4556(When)s
5172(a)s 5324(tagged)s 6007(in)s 9(v)k 4(ocation)k
7048(is)s 7244(found,)s 7897(it)s 8076(is)s 8272(attached)s
0 2898(to)m 237(a)s 240 fnt4 401 2900(CR)m 9(OSS_T)k 12(ARG)k
240 fnt1 1875 2898(inde)m 3(x.)k 2565(These)s 3190(g)s 1(alle)k 3(y)k
3822(inde)s 3(x)k 3(es)k 4595(are)s 4940(carried)s
5658(along)s 6241(through)s 7040(the)s 7386(dynamic)s 8261(tree,)s
8722(and)s 0 2610(e)m 6(v)k 3(entually)k 1049(pop)s
1470(of)s 6(f)k 1822(the)s 2178(top)s 2545(of)s
2824(the)s 3180(root)s 3633(g)s 1(alle)k 3(y)k 15(,)k
4313(at)s 4553(which)s 5203(point)s 5763(it)s 5963(is)s
6181(easy)s 6668(to)s 6915(determine)s 7934(which)s 8584(cross)s
0 2322(references)m 1029(refer)s 1536(to)s 1773(which)s 2413(in)s 9(v)k 4(ocations,)k
3608(since)s 4153(the)s 4499(inde)s 3(x)k 3(es)k
5273(are)s 5618(no)s 6(w)k 6077(in)s 6318(\207nal)s
6796(printed)s 7529(document)s 8531(order)s 13(.)k 0 2034(Each)m
541(referenced)s 1613(in)s 9(v)k 4(ocation)k 2674(is)s
2891(then)s 3367(written)s 4107(to)s 4353(the)s 4708(cross)s
5257(reference)s 6207(database,)s 7144(multiply)s 8015(inde)s 3(x)k 3(ed)k
8832(by)s 0 1746(the)m 344(generated)s 1327(tags)s 1758(of)s
2025(the)s 2369(associated)s 3404(cross)s 3942(references.)s 5082(On)s
5427(the)s 5771(ne)s 3(xt)k 6236(run,)s 6657(when)s
7229(the)s 7573(same)s 220 fnt6 8115 1743(preceding)m 240 fnt1
0 1458(and)m 220 fnt6 408 1455(f)m 6(ollo)k 3(wing)k
240 fnt1 1302 1458(cross)m 1848(references)s 2883(are)s 3234(found,)s
3904(chances)s 4716(are)s 5067(good)s 5609(that)s 6031(the)s
6383(same)s 6934(tags)s 7374(will)s 7804(be)s 8090(generated,)s
0 1170(and)m 404(the)s 752(appropriate)s 1896(v)s 6(alues)k
2552(can)s 2941(be)s 3223(retrie)s 6(v)k 3(ed)k
4120(from)s 4644(the)s 4992(database)s 5871(immediately)s 15(.)k
480 796(This)m 982(approach)s 1942(w)s 2(as)k 2389(the)s
2763(genesis)s 3544(of)s 3842(the)s 220 fnt6 4216 793(@T)m 26(agged)k
240 fnt1 5231 796(operator)m 9(,)k 6151(whose)s 6845(implementation)s
8428(is)s 8665(no)s 6(w)k 0 508(immediate:)m 1106(for)s
1436(each)s 220 fnt6 1923 505(@T)m 26(agged)k 240 fnt1
2903 508(operator)m 3751(we)s 4078(produce)s 4897(one)s 240 fnt4
5290 510(CR)m 9(OSS_PREC)k 240 fnt1 6775 508(or)m 240 fnt4
7026 510(CR)m 9(OSS_FOLL)k 240 fnt1 8492 508(g)m 1(alle)k 3(y)k
0 220(inde)m 3(x,)k 645(replacing)s 1596(the)s 1953(generated)s
2949(tag)s 3304(with)s 3795(the)s 4152(right)s 4672(parameter)s
5696(of)s 5976(the)s 220 fnt6 6333 217(@T)m 26(agged)k
240 fnt1 7331 220(operator)m 13(.)k 8288(Nothing)s 
grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 38 39
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Times-Bold
%%+ font Times-Italic
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Times-Bold
/Times-Boldfnt2 vec2 /Times-Bold LoutRecode
/fnt2 { /Times-Boldfnt2 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5708 -1579(-)m 5836(38)s 6123(-)s 9066 13416 0 13307 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore
0 13253(more)m 547(is)s
757(required.)s 240 fnt2 0 12460(7.)m 291(Conclusion)s 
[ /Dest /LOUT16_594_s7_0_1 /DEST pdfmark
240 fnt1
480 12028(Since)m 1054(its)s 1316(public)s 1953(release)s 2657(in)s
2886(October)s 3702(1991,)s 4275(the)s 4609(Basser)s 5292(Lout)s
5790(interpreter)s 6829(has)s 7185(been)s 7680(ported)s 8335(without)s
0 11740(incident)m 819(to)s 1047(a)s 1202(wide)s 1712(v)s 6(ariety)k
2412(of)s 2672(Unix)s 3195(systems)s 3992(and)s 4385(hardw)s 2(are.)k
5425(It)s 5619(w)s 2(as)k 6029(tested)s 6633(e)s 3(xtensi)k 6(v)k 3(ely)k
7753(before)s 8408(release)s 0 11452(on)m 293(its)s 565(o)s 6(wn)k
1025(documentation,)s 2549(and)s 2949(the)s 3293(fe)s 6(w)k
3695(minor)s 4321(b)s 4(ugs)k 4817(which)s 5455(ha)s 4(v)k 3(e)k
5952(emer)s 4(ged)k 6824(since)s 7367(then)s 7832(ha)s 4(v)k 3(e)k
8329(all)s 8617(been)s 0 11164(\207x)m 3(ed)k 534(in)s
777(the)s 1125(second)s 1848(release,)s 2617(scheduled)s 3632(to)s
3871(appear)s 4568(in)s 4811(mid-1992.)s 480 10790(Se)m 6(v)k 3(en)k
1105(substantial)s 2173(packages)s 3093(of)s 3355(de\207nitions)s 4407(are)s
4746(distrib)s 4(uted)k 5813(with)s 6286(Basser)s 6975(Lout.)s
7582(The)s 8001(Document)s 8998(-)s 0 10502(Layout)m 748(package,)s
1649(and)s 2063(its)s 2349(v)s 6(ariants)k 3160(ReportLayout)s
4560(and)s 4974(BookLayout,)s 6289(pro)s 3(vide)k 7083(the)s
7441(standard)s 8320(features)s 0 10214(that)m 411(all)s 696(documents)s
1776(require:)s 2610(pages,)s 3254(columns,)s 4165(paragraphs,)s 5313(headings,)s
6263(footnotes,)s 7252(\210oating)s 8028(\207gures)s 8722(and)s 0 9926(tables,)m
683(chapters)s 1550(and)s 1973(sections,)s 2870(displays)s 3724(and)s
4148(lists,)s 4658(access)s 5339(to)s 5597(bibliographic)s 6945(databases,)s
7987(cross)s 8549(refer)s 8998(-)s 0 9638(ences,)m 623(and)s
1012(so)s 1263(on)s 1545([11].)s 2092(The)s 2505(BookLayout)s
3748(package)s 4572(has)s 4927(e)s 3(xtra)k 5446(features)s
6237(needed)s 6958(by)s 7237(books,)s 7902(including)s 8843(an)s
0 9350(automatically)m 1355(generated)s 2343(table)s 2864(of)s 3136(contents,)s
4041(Roman)s 4791(page)s 5300(numbers)s 6176(for)s 6515(the)s
6864(pref)s 2(atory)k 7792(material,)s 8682(run)s 8998(-)s
0 9062(ning)m 468(page)s 965(headers,)s 1790(odd)s 2197(and)s
2589(e)s 6(v)k 3(en)k 3078(page)s 3574(layouts,)s
4361(and)s 4754(a)s 4908(sorted)s 5539(inde)s 3(x.)k
6220(The)s 6637(Eq)s 6949(package)s 7778(formats)s 8546(equa)s
8998(-)s 0 8774(tions,)m 572(and)s 976(P)s 3(as)k
1356(formats)s 2136(P)s 3(ascal)k 2798(programs)s 3752([10];)s
4262(T)s 19(ab)k 4668(formats)s 5448(tables)s 6056([12];)s
6566(and)s 6970(Fig)s 7342(dra)s 3(ws)k 7961(\207gures)s
8663([6].)s 480 8400(The)m 899(non-e)s 3(xpert)k 1983(user)s
2431(who)s 2888(uses)s 3341(these)s 3879(packages)s 4797(percei)s 6(v)k 3(es)k
5732(a)s 5889(system)s 6603(of)s 6865(a)s 7021(standard)s
7880(quite)s 8404(similar)s 0 8112(to)m 246(other)s 804(fully)s
1317(de)s 6(v)k 3(eloped)k 2357(batch)s 2940(formatters,)s
4034(although)s 4936(the)s 5292(interf)s 2(ace)k 6187(is)s
6405(considerably)s 7688(more)s 8243(coherent)s 0 7824(than,)m 525(say)s 15(,)k
942(the)s 1297(trof)s 6(f)k 1792(f)s 2(amily')k 13(s)k
2630([8].)s 3078(The)s 3512(e)s 3(xpert)k 4173(user)s
4637(percei)s 6(v)k 3(es)k 5588(a)s 5760(system)s
6490(which)s 7139(is)s 7355(radically)s 8251(dif)s 6(ferent)k
0 7536(from)m 547(pre)s 6(vious)k 1440(ones,)s 2009(in)s
2276(which)s 2941(a)s 3131(great)s 3691(deal)s 4168(can)s
4580(be)s 4886(achie)s 6(v)k 3(ed)k 5808(v)s 3(ery)k
6308(quickly)s 15(.)k 7198(T)s 19(o)k 7522(tak)s 2(e)k
7997(an)s 8304(e)s 3(xtreme)k 0 7248(e)m 3(xample,)k
936(P)s 3(as)k 1338(w)s 2(as)k 1781(designed,)s
2761(implemented,)s 4138(tested,)s 4825(and)s 5251(documented)s 6501(in)s
6766(one)s 7190(afternoon.)s 8292(Eq)s 8639(took)s 0 6960(about)m
587(a)s 747(week,)s 1353(b)s 4(ut)k 1709(most)s
2229(of)s 2494(that)s 2906(time)s 3380(w)s 2(as)k
3796(spent)s 4355(in)s 4592(marshalling)s 5767(the)s 6110(v)s 6(ast)k
6543(repertoire)s 7520(of)s 7785(mathematical)s 0 6672(symbols,)m 934(and)s
1367(\207ne-tuning)s 2499(the)s 2876(spacing.)s 3800(Most)s 4381(of)s
4681(the)s 5059(ef)s 6(fort)k 5671(seems)s 6335(to)s
6603(go)s 6925(into)s 7379(designing)s 8392(a)s 8588(good)s
0 6384(interf)m 2(ace;)k 944(most)s 1469(symbols)s 2318(are)s
2665(implemented)s 3971(in)s 4214(just)s 4619(one)s 5021(or)s
5280(a)s 5446(fe)s 6(w)k 5852(lines)s 6354(of)s
6625(Lout.)s 480 6010(A)m 698(group)s 1297(of)s 1556(about)s
2135(20)s 2418(satis\207ed)s 3246(non-e)s 3(xpert)k 4327(users)s
4856(has)s 5214(gro)s 6(wn)k 5864(up)s 6145(within)s
6800(the)s 7136(author')s 13(s)k 7944(department,)s 0 5722(mainly)m
703(Honours)s 1563(students)s 2383(with)s 2849(no)s 3127(in)s 9(v)k 3(estment)k
4208(in)s 4436(older)s 4971(systems)s 5764(to)s 5987(hold)s
6456(them)s 6978(back.)s 7579(Basser)s 8260(Lout)s 8756(has)s
0 5434(been)m 511(adv)s 3(ertised)k 1550(on)s 1849(the)s
2199(Internet)s 3003(ne)s 6(ws)k 3542(as)s 3794(a)s 4(v)k 6(ailable)k
4704(via)s 5058(anon)s 3(ymous)k 240 fnt4 6213 5436(ftp)m
240 fnt1 6458 5434(,)m 6567(so)s 6835(the)s 7185(e)s 3(xtent)k
7828(of)s 8101(its)s 8379(outside)s 0 5146(user)m 469(community)s
1624(is)s 1845(hard)s 2339(to)s 2589(g)s 1(auge.)k
3335(About)s 4005(50)s 4311(people)s 5016(ha)s 4(v)k 3(e)k
5528(mailed)s 6247(comments)s 7292(or)s 7562(questions)s 8528(to)s
8778(the)s 0 4858(author;)m 733(man)s 3(y)k 1327(of)s
1608(these)s 2166(people)s 2871(ha)s 4(v)k 3(e)k
3382(ported)s 4062(the)s 4420(program,)s 5348(written)s 6092(small)s
6674(de\207nitions,)s 7802(and)s 8217(modi\207ed)s 0 4570(the)m 348(standard)s
1216(packages.)s 480 4196(Future)m 1160(w)s 2(ork)k 1711(could)s
2301(usefully)s 3125(be)s 3(gin)k 3711(with)s 4194(the)s
4542(impro)s 3(v)k 3(ements)k 5955(suggested)s 6957(in)s
7200(this)s 7596(paper:)s 8294(o)s 3(v)k 3(erlap)k
8998(-)s 0 3908(ping)m 489(spanning)s 1418(columns,)s 2346(better)s
2960(semantics)s 3964(for)s 4312(a)s 4(v)k 6(ailable)k
5231(space,)s 5880(and)s 6294(especially)s 7314(horizontal)s 8349(g)s 1(alle)k 3(ys.)k
0 3620(Support)m 814(for)s 1147(non-)s 1575(European)s 2544(languages)s
3547(is)s 3752(also)s 4185(needed.)s 5022(Ho)s 6(we)k 6(v)k 3(er)k 9(,)k
5977(the)s 6320(main)s 6850(task)s 7291(is)s 7496(the)s
7839(de)s 6(v)k 3(elopment)k 0 3332(of)m 271(an)s
553(interacti)s 6(v)k 3(e)k 1607(document)s 2610(editor)s
3227(based)s 3829(on)s 4126(Lout.)s 4741(A)s 4971(structure)s
5861(editor)s 6478(similar)s 7199(to)s 7438(Lilac)s 7980([13],)s
8484(which)s 0 3044(already)m 753(has)s 1119(objects)s 1843(and)s
2243(user)s 4(-)k 2705(de\207ned)s 3463(symbols,)s 4364(is)s
4570(en)s 9(visaged;)k 5626(since)s 6168(cross)s 6706(references)s
7733(are)s 8076(easy)s 8550(when)s 0 2756(the)m 343(whole)s
979(document)s 1978(is)s 2182(a)s 4(v)k 6(ailable,)k
3136(the)s 3479(only)s 3954(major)s 4565(ne)s 6(w)k
5007(problem)s 5859(is)s 6064(the)s 6406(treatment)s 7362(of)s
7628(g)s 1(alle)k 3(ys,)k 8402(includ)s 8998(-)s
0 2468(ing)m 359(the)s 707(e)s 3(xpansion)k 1732(and)s
2136(retraction)s 3107(of)s 3378(recepti)s 6(v)k 3(e)k
4300(symbols.)s 240 fnt2 0 1719(Note.)m 240 fnt1 657 1720(Since)m
1253(the)s 1610(abo)s 3(v)k 3(e)k 2240(w)s 2(as)k
2670(written)s 3412(the)s 3768(author)s 4448(has)s 4827(completed)s
5889(a)s 6064(re)s 6(vised)k 6815(v)s 3(ersion)k
7581(of)s 7861(Basser)s 8567(Lout,)s 0 1432(in)m 243(which)s
885(the)s 1233(problem)s 2090(concerning)s 3206(a)s 4(v)k 6(ailable)k
4114(space)s 4701(mentioned)s 5769(in)s 6012(Section)s 6786(2.5)s
7132(has)s 7502(been)s 8011(resolv)s 3(ed.)k 240 fnt2
0 683(Ackno)m 2(wledgment.)k 240 fnt1 2027 684(The)m 2534(author)s
3283(gratefully)s 4344(ackno)s 6(wledges)k 5824(man)s 3(y)k
6485(v)s 6(aluable)k 7424(discussions)s 8644(with)s 0 396(Douglas)m
862(W)s 22(.)k 1183(Jones,)s 1835(especially)s 2857(during)s
3548(the)s 3909(de)s 6(v)k 3(elopment)k 5209(of)s
5493(the)s 5854(g)s 1(alle)k 3(y)k 6501(abstraction;)s
7674(and)s 8091(also)s 8543(man)s 3(y)k 0 108(helpful)m
732(comments)s 1766(on)s 2063(presentation)s 3288(by)s 3582(the)s
3930(anon)s 3(ymous)k 5083(referee.)s 
grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
0 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Page: 39 40
%%BeginPageSetup
%%PageResources: font Times-Roman
%%+ font Times-Bold
%%+ font Times-Italic
/pgsave save def
%%IncludeResource: font Times-Roman
/Times-Romanfnt1 vec2 /Times-Roman LoutRecode
/fnt1 { /Times-Romanfnt1 LoutFont } def
%%IncludeResource: font Times-Bold
/Times-Boldfnt2 vec2 /Times-Bold LoutRecode
/fnt2 { /Times-Boldfnt2 LoutFont } def
%%IncludeResource: font Times-Italic
/Times-Italicfnt4 vec2 /Times-Italic LoutRecode
/fnt4 { /Times-Italicfnt4 LoutFont } def
0.0500 dup scale 10 setlinewidth
%%EndPageSetup
gsave
0 0 translate
240 fnt1 0.0 0.0 0.0 setrgbcolor 11900 16840 0 16840 240 288 60 LoutGraphic
gsave
LoutPageSet
grestore
gsave
0 16840 translate
0.0000 rotate
5706 -1579(-)m 5834(39)s 6125(-)s 9066 13414 0 13414 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore
240 fnt2 0 12961(Refer)m 4(ences)k
240 fnt1 0 12507(1.)m 480(Kingston,)s 1501(Jef)s 6(fre)k 3(y)k
2244(H..)s 2677(Document)s 3770(F)s 3(ormatting)k 4918(with)s
5436(Lout)s 5888(.)s 6088(T)s 16(ech.)k 6690(Rep.)s
7216(408)s 7659(\(1991\))s 8286(,)s 8429(Basser)s 480 12219(Department)m
1668(of)s 1939(Computer)s 2956(Science,)s 3806(The)s 4234(Uni)s 6(v)k 3(ersity)k
5288(of)s 5559(Sydne)s 3(y)k 15(,)k 6367(Australia)s
7242(.)s 
[ /Dest /LOUT12_1492_s7_0_1 /DEST pdfmark
0 11716(2.)m 480(Kingston,)s 1492(Jef)s 6(fre)k 3(y)k
2227(H..)s 2652(A)s 2910(ne)s 6(w)k 3385(approach)s
4347(to)s 4613(document)s 5645(formatting)s 6646(.)s 6838(T)s 16(ech.)k
7432(Rep.)s 7950(412)s 8392(\(1991\))s 9019(,)s 480 11428(Basser)m
1177(Department)s 2365(of)s 2636(Computer)s 3653(Science,)s 4503(The)s
4931(Uni)s 6(v)k 3(ersity)k 5985(of)s 6256(Sydne)s 3(y)k 15(,)k
7064(Australia)s 7939(.)s 
[ /Dest /LOUT12_1492_s7_0_2 /DEST pdfmark
0 10925(3.)m 480(Kingston,)s 1491(Jef)s 6(fre)k 3(y)k
2224(H..)s 2647(The)s 3101(Basser)s 3824(Lout)s 4362(Document)s
5445(F)s 3(ormatter)k 6383(,)s 6516(1991)s 6971(.)s
7161(Computer)s 8204(program;)s 480 10637(V)m 26(ersion)k 1287(2)s
1480(publicly)s 2337(a)s 4(v)k 6(ailable)k 3264(in)s
3526(the)s 240 fnt4 3893 10639(pub)m 240 fnt1 4326 10637(subdirectory)m
5595(of)s 5885(the)s 6252(home)s 6859(directory)s 7794(of)s
240 fnt4 8084 10639(ftp)m 240 fnt1 8408 10637(to)m 8667(host)s
240 fnt4 480 10351(ftp.cs.su.oz.au)m 240 fnt1 1924 10349(with)m 2439(login)s
3021(name)s 240 fnt4 3628 10351(anonymous)m 240 fnt1 4808 10349(and)m
5246(no)s 5572(passw)s 2(ord.)k 6671(Distrib)s 4(ution)k
7912(via)s 8297(email)s 8916(is)s 480 10061(a)m 4(v)k 6(ailable)k
1388(for)s 1726(non-)s 240 fnt4 2154 10063(ftp)m 240 fnt1
2459 10061(sites.)m 3047(All)s 3407(enquiries)s 4334(to)s 4573(jef)s 6(f@cs.su.oz.au.)k

[ /Dest /LOUT12_1492_s7_0_3 /DEST pdfmark
0 9558(4.)m 480(Furuta,)s 1211(Richard,)s 2075(Sco\207eld,)s 2965(Jef)s 6(fre)k 3(y)k 15(,)k
3710(and)s 4113(Sha)s 3(w)k 15(,)k 4734(Alan.)s
5363(Document)s 6419(formatting)s 7480(systems:)s 8402(surv)s 3(e)k 3(y)k 15(,)k
480 9270(concepts,)m 1424(and)s 1828(issues)s 2390(.)s 240 fnt4
2554 9272(Computing)m 3673(Surve)s 7(ys)k 240 fnt2 4465 9269(14)m
240 fnt1 4699 9270(,)m 4806(417\211472)s 5700(\(1982\))s 6327(.)s

[ /Dest /LOUT12_1492_s7_0_4 /DEST pdfmark
0 8765(5.)m 480(K)s 6(ernighan,)k 1645(Brian)s 2287(W)s 22(.)k
2649(and)s 3107(Cherry)s 15(,)k 3917(Lorinda)s 4789(L..)s
5213(A)s 5497(system)s 6275(for)s 6667(typesetting)s 7824(mathematics)s
9022(.)s 240 fnt4 480 8479(Communications)m 2158(of)s 2439(the)s
2784(A)s 7(CM)k 240 fnt2 3351 8476(18)m 240 fnt1
3585 8477(,)m 3692(182\211193)s 4576(\(1975\))s 5203(.)s 
[ /Dest /LOUT12_1492_s7_0_5 /DEST pdfmark
0 7977(6.)m
480(Kingston,)s 1488(Jef)s 6(fre)k 3(y)k 2218(H..)s
2638(Fig)s 3033(\211)s 3236(a)s 3425(Lout)s 3961(package)s
4824(for)s 5185(dra)s 3(wing)k 6042(\207gures)s 6684(.)s
6871(T)s 16(ech.)k 7460(Rep.)s 7973(411)s 8392(\(1991\))s
9019(,)s 480 7689(Basser)m 1177(Department)s 2365(of)s 2636(Computer)s
3653(Science,)s 4503(The)s 4931(Uni)s 6(v)k 3(ersity)k
5985(of)s 6256(Sydne)s 3(y)k 15(,)k 7064(Australia)s
7939(.)s 
[ /Dest /LOUT12_1492_s7_0_6 /DEST pdfmark
0 7184(7.)m 480(Reid,)s 1042(Brian)s 1633(K..)s
2033(A)s 2266(High-)s 2813(Le)s 6(v)k 3(el)k
3406(Approach)s 4410(to)s 4652(Computer)s 5672(Document)s 6732(Production)s
7779(.)s 7946(In)s 240 fnt4 8205 7186(Pr)m 10(oceed)k
240 fnt1 8998 7184(-)m 240 fnt4 480 6898(ings)m 935(of)s
1217(the)s 1564(7th)s 1926(Symposium)s 3074(on)s 3370(the)s
3716(Principles)s 4755(of)s 5037(Pr)s 10(o)k 2(gr)k 3(amming)k
6421(Langua)s 2(g)k 2(es)k 7526(\(POPL\),)s 8376(Las)s
8779(V)s 26(e)k 240 fnt1 8998 6896(-)m 240 fnt4
480 6610(gas)m 868(NV)s 240 fnt1 1192 6608(,)m 1299(pages)s
1895(24\21131)s 2470(,)s 2577(1980)s 3052(.)s 
[ /Dest /LOUT12_1492_s7_0_7 /DEST pdfmark
0 6103(8.)m
480(Joseph)s 1207(F)s 19(.)k 1443(Ossanna.)s 2436(Nrof)s 6(f/T)k 8(rof)k 6(f)k
3605(User')s 13(s)k 4284(Manual)s 5010(.)s 5193(T)s 16(ech.)k
5777(Rep.)s 6285(54)s 6597(\(1976\))s 7224(,)s 7349(Bell)s
7821(Laboratories)s 9019(,)s 480 5815(Murray)m 1251(Hill,)s 1729(NJ)s
2051(07974)s 2645(.)s 
[ /Dest /LOUT12_1492_s7_0_8 /DEST pdfmark
0 5310(9.)m 480(Knuth,)s 1186(Donald)s
1949(E..)s 240 fnt4 2319 5312(The)m 2731(T)s 2882 5264(E)m
3033 5312(XBook)m 240 fnt1 3675 5310(.)m 3839(Addison-W)s 19(esle)k 3(y)k
5419(,)s 5526(1984)s 6000(.)s 
[ /Dest /LOUT12_1492_s7_0_9 /DEST pdfmark
0 4807(10.)m 480(Kingston,)s
1485(Jef)s 6(fre)k 3(y)k 2212(H..)s 2629(Eq)s
2973(\211)s 3173(a)s 3359(Lout)s 3892(package)s 4752(for)s
5110(typesetting)s 6232(mathematics)s 7430(.)s 7614(T)s 16(ech.)k
8200(Rep.)s 8711(410)s 480 4519(\(1991\))m 1107(,)s 1248(Basser)s
1980(Department)s 3203(of)s 3509(Computer)s 4561(Science,)s 5446(The)s
5909(Uni)s 6(v)k 3(ersity)k 6998(of)s 7304(Sydne)s 3(y)k 15(,)k
8147(Australia)s 9022(.)s 480 4231(\(Contains)m 1461(an)s 1744(appendix)s
2677(describing)s 3726(the)s 4074(P)s 3(as)k 4454(P)s 3(ascal)k
5116(formatter)s 13(.\))k 
[ /Dest /LOUT12_1492_s7_0_10 /DEST pdfmark
0 3728(11.)m 480(Kingston,)s 1478(Jef)s 6(fre)k 3(y)k
2198(H..)s 2608(A)s 2851(be)s 3(ginners')k 3903(guide)s
4504(to)s 4756(Lout)s 5208(.)s 5385(T)s 16(ech.)k
5964(Rep.)s 6467(409)s 6891(\(1991\))s 7518(,)s 7638(Basser)s
8348(Depart)s 8998(-)s 480 3440(ment)m 1018(of)s 1289(Computer)s
2306(Science,)s 3156(The)s 3584(Uni)s 6(v)k 3(ersity)k
4638(of)s 4909(Sydne)s 3(y)k 15(,)k 5717(Australia)s
6592(.)s 
[ /Dest /LOUT12_1492_s7_0_11 /DEST pdfmark
0 2937(12.)m 480(Kingston,)s 1475(Jef)s 6(fre)k 3(y)k
2193(H..)s 2600(T)s 19(ab)k 3017(\211)s 3207(a)s
3384(Lout)s 3907(package)s 4757(for)s 5106(formatting)s 6177(tables)s
6725(.)s 6900(T)s 16(ech.)k 7476(Rep.)s 7977(413)s
8392(\(1991\))s 9019(,)s 480 2649(Basser)m 1177(Department)s 2365(of)s
2636(Computer)s 3653(Science,)s 4503(The)s 4931(Uni)s 6(v)k 3(ersity)k
5985(of)s 6256(Sydne)s 3(y)k 15(,)k 7064(Australia)s
7939(.)s 
[ /Dest /LOUT12_1492_s7_0_12 /DEST pdfmark
0 2146(13.)m 480(Brooks,)s 1279(K)s 6(enneth)k
2141(P)s 26(..)k 2472(Lilac:)s 3068(a)s 3234(tw)s 2(o-vie)k 6(w)k
4183(document)s 5187(editor)s 5744(.)s 240 fnt4 5908 2148(IEEE)m
6490(Computer)s 240 fnt1 7453 2146(,)m 7560(7\21119)s 8091(\(1991\))s
8718(.)s 
[ /Dest /LOUT12_1492_s7_0_13 /DEST pdfmark

grestore
0 0 0 0 240 288 60 1417 -15423 LoutGr2
1 LoutMargSet
grestore

grestore

grestore

grestore

pgsave restore
showpage

%%Trailer
%%DocumentNeededResources: font Times-Roman
%%+ font Times-Bold
%%+ font Times-Italic
%%+ font Times-Italic
%%+ font Symbol
%%+ font Helvetica
%%DocumentSuppliedResources: procset LoutStartUp
%%+  procset LoutTabPrependGraphic
%%+  procset LoutFigPrependGraphic
%%+  procset LoutBasicSetup
%%+ encoding vec2
%%Pages: 40
%%EOF