Bflfl BSn ■MQfHBQflK IfflHHH RnaHSsB ■ LIBRARY OF THE UNIVERSITY OF ILLINOIS AT URBANA-CHAMPAICN XJt(oT Gop-2. O/O. Xf UTUCDCS-R- 72-^93 COP. 2. TREE HEIGHT REDUCTION FOR PARALLEL PROCESSING OF BLOCKS OF FORTRAN ASSIGNMENT STATEMENTS by Joseph Ching-Chi Han February, 1972 DEPARTMENT OF COMPUTER SCIENCE UNIVERSITY OF ILLINOIS AT URBANA-CHAMPAIGN URBANA, ILLINOIS %■ UIUCDCS-R-72-493 TREE HEIGHT REDUCTION FOR PARALLEL PROCESSING OF BLOCKS OF FORTRAN ASSIGNMENT STATEMENTS by Joseph Ching-Chi Han January, 1972 Department of Computer Science University of Illinois at Urbana-Champaign Urbana, Illinois 61901 This work was supported in part by the National Science Foundation under NSF Grant GJ-J68 and the Department of Computer Science at the University of 'Illinois at Urbana-Champaign, Urbana, Illinois. Digitized by the Internet Archive in 2013 http://archive.org/details/treeheightreduct493hanj ill ACKNOWLEDGEMENT The author would like to express his deepest gratitude to Professor David J. Kuck, the Department of the Computer Science of the University of Illinois. The successful completion of this thesis is due to his good advice and guidance. Y. Muraoka is also much appreciated for his guidance. Special thanks for P. Kraska, S.C. Chen, C.A. Cartegini for their help. IV TABLE OF CONTENTS Page 1 . INTRODUCTION 1 2. RELATIONS OF ASSOCIATION AND COMMUTATION, REDUN- ANT PARENTHESES, DISTRIBUTION, BACK SUBSTITUTION AND RECURSION TO PARALLEL MACHINES 3 2.1 Associative Law and Commutative Law 3 2. 2 Redundant Parentheses 6 2. 3 Distributive Law 7 2.4 Back Substitution and Recursion 9 3. DISTRIBUTION ALGORITHM, BACK SUBSTITUTION AND RECURSION ALGORITHM 12 3. 1 Distribution Algorithm 12 3.1.1 General Description 13 3.1.2 Holes 17 3.1.3 Spaces 18 3.2 Back Substitution and Recursion Algorithm ... 20 3.2.1 Physical Description 21 3. 2. 2 Discussion 26 4. IMPLEMENTATION OF THE TREE HEIGHT REDUCTION ALGORITHM 29 4. 1 Back Substitution and Recursion 29 4. 2 Tree Height Reduction in an Arithmetic Expression 34 4. 3 Interface 38 LIST OF REFERENCES 39 APPENDIX a 40 APPENDIX B 4a 1. INTRODUCTION The rapid advances in computer technology, in particular, anticipated advances generated by LSI, have led us to research on parallel processing. Although the importance of the problem has been pointed out [9], very little is known about how parallel processing can be used for a class of real programs. The introduction of a class of parallel processing machines, such as the CDC 6600 [10] or the Illiac IV [11], will allow parallel processing of arithmetic operations. In the trend of computer systems toward a high degree of parallelism, special arithmetic units, e.g., a logarithm unit and an exponent unit, and much sophisticated philosophy of machine organization seem to be important. As computer architecture becomes more advanced, the problem of efficiency of parallel processing will fall on compilers. While existing detection algorithms of potential program parallelism seem applicable generally to different classes of programs, their implementation must depend on what conventional languages these programs are written in. An experiment not only to measure potential parallelism in FORTRAN programs, but also to modify them if necessary to extract more parallelism is in process. An analyzer has been programmed in PL/1, and the tree height reduction algorithm for parallel processing of blocks of assignment statements is included as one part of it. In order to analyze a program structure, to measure a program, and to compute a certain kind of efficiency for parallel processing on a set of real FORTRAN programs , we assume that a set of sufficient processing elements are available. We also assume that binary arithmetic operations, such as addition, subtraction, multiplication, and division, are performed in these processing elements, and that each operation takes the same execution time. This thesis consists of four sections. The first section is the introduction. In the second section the effects of four factors on parallelism within an arithmetic expression are described. The third section describes the distribution algorithm and the back substitution and recursion algorithm. The description of implementation of the tree height reduction algorithm is in section four. 2. RELATIONS OF ASSOCIATION AND COMMUTATION, REDUNDANT PARENTHESES, DISTRIBUTION, BACK SUBSTITUTION AND RECURSION TO PARALLEL MACHINES This section describes several factors which have effects on a single assignment statement (i.e., an arithmetic expression) or block of assignment statements for parallel processing. These factors are the associative law and the commutative law, redundant parentheses, the distributive law, and back substitution and recursion. The first three factors are associated with a single assignment statement; the fourth factor is associated with a block of assignment statements. The execution order of an arithmetic expression can be represented by a syntactic tree. We define tree height to be the number of levels to compute an arithmetic expression when all the operations on the same level are assumed to take the same execution time. By proper handling of the four factors the number of execution steps (in the sense of tree height) for an arithmetic expression or block of assignment statements can often be reduced. 2. 1 Associative Law and Commutative Law As to an arithmetic expression, most of the commonly used compilation technigues result in structures that must be evaluated serially. When parallel processing is considered, the intrinsic parallelism within an arithmetic expression can be recognized by the use of the associative law and the commutative law. Several papers have investigated these and invented algorithms to build a syntactic tree to achieve this goal [1]. The tree is such that all operations shown at the same level can be performed in parallel provided there is a sufficient number of processing elements. The execution time, in the sense of tree height is claimed to be the best for Baer's and Bovet ■ s algorithm [2]. By the use of the associative law, for example, the expression B + C + D + E can be translated into the structures for serial computation and parallel computation, respectively, shown in Fig. 1.1(a) and Fig. 1.1(b). Fig. 1.1 Tree structure for serial and parallel computation by the use of association In Fig. 1.1(a) the operations are performed sequentially. It takes three steps of time to evaluate the expression. In Fig. 1.1(b) the operations at the same level are performed concurrently. It takes two steps of time. This means that the expression can be evaluated in fewer execution steps by parallel processing. By the nature of the commutative law the order of operands to be combined by the commutative operators, such as '+' or '*', can be exhanged for appropriate association. The combination of commutation and association will result in a structure well suited for parallel computation. For example, the expression B + C * D + E can be translated into the structure shown as in Fig. 1.2(b) compared with the structure shown as in Fig. 1.2(a) which is evaluated serially. ^K (C * D + (B + E) (b) Fig. 1.2 Tree structure for serial and parallel computation by the use of commutation and association Subtraction and division . Since the subtract operator '-' and the divide operator '/' are binary but not commutative operators, the commutative law and the associative law applied to addition and multiplication cannot be used without modifications. Subtraction can be introduced in an arith- metic expression and handled as addition. The only difference is that it is necessary to change operators when the associa- tion is done. The expression B + C - D - E will be translated into the structure ((B+O- (D+E)). Unary minus operations may be handled similarly. The divide operator '/' has a similar nature to the subtract operator by assuming that all binary operations take the same execution time. A divide operator preceded by another divide operator will be changed into a multiply operator to associate two operands into a binary product. The expression B * C / D / E will be mapped into the structure ( (B * C) / (D * E) ) . 2.2 Redundant Parentheses The existance of parenthesis within an arithmetic expression affects the execution order. It also affects the tree height of an expression. For the sake of obtaining the minimum tree height in parsing an arithmetic expression, and for easy implementation, the given form of an expression should be transformed into standard form by removing any redundant parentheses first in order to expose parallelism more explicitly. For example, the arithmetic expression B + (C + (D + E) ) has the standard form B + C + D + E. As subtraction and division are introduced, suitable handling of operators must be done. The expression A/(B*C*D)+ H - (E * F - G) will be transformed into standard form A/B/C/D+H-E*F+G. If we build syntatic trees for both by the use of the commutative and the associative law, a lower tree height will be obtained for the expression in standard form than that for the expression in presented form. The syntactic trees are shown in Fig. 1.3(a) and Fig. 1.3(b) respectively. A \ (A/ B) / (C * D) +H + G - E * F (b) Fig. 1.3 Tree structures for parallel computation before and after the removal of redundant parentheses 2. 3 Distributive Law The distributive law has been investigated and an algorithm has been developed by Y. Muraoka [3]. The distri- * bution algorithm describes two important properties in an arithmetic expression, holes and spaces. The tree height for an arithmetic expression obtained by Baers and Bovet ' s algorithm can be reduced by distributing multiplications over additions to fill holes and spaces. Here are two examples. The first * The distribution algorithm will be described in Section 3. 8 is hole-filling distribution, the second is space-filling distribution. Given the expression B* (C * D * E + F) , Fig. 1.4(a) represents the tree structure without distribution and Fig. 1.4(b) represents the tree structure with distribution. The tree height for the latter is one less than that for the former. In the second example, given an arithmetic expression B* (C*D+E)+F. The variable B is distributed over (C * D + E) to accommodate the space. The tree height in Fig. 1.5(b) is reduced when compared with that in Fig. 1.5(a). * B* (C * D * E + F) (a) Fig. 1.4 Tree structures for parallel computation before and after distribution + F Fig. 1.5 Tree structures for parallel computation before and after distribution 2.4 Back Substitution and Recursion A block of assignment statements can be regarded as a block of function equations by defining variables to the left of equal signs as output variables, and variables to the right of equal signs as input variables. The original block of assignment statements can be transformed into a block in which each output variable appears on the left hand side of only one assignment statement by performing all possible substitutions of one statement into another which follows it in the original block. As a consequence more parallel processable tasks can be obtained and the total number of execution steps might be reduced at the loss of an increase of the number of processing elements. Given a block of assignment statements as shown below X = f (A,B,C) Y = f (X,D). 10 Assume that the first statement takes two steps and the second one takes one step; at each step one processing element is used. The initiation of the second must be at the termina- tion of the first. If we substitute the first into the second the sequential relation between them can be changed into a parallel relation, i.e., they are independent of each other and can be executed simultaneously. The total number of steps to compute X and Y can be reduced from 3 to 2. In DO- loop blocks certain kinds of recurrence computa- tions exist in addition to an amount of potential parallelism [4] which is not taken care of here. Many examples are single recurrence statements, such as Y i = f(Y i-l' A) • Some are cross recurrence statements, such as x i = f i (x i-i' Y i-i' A) Y i = f 2 (X i-l' Y i-l' B > • These kinds of recurrence computations can be performed by procedures which allow parallel operation. By the application of iterative back substitution the recurrence statements can be handled as a set of parallel processable statements. The Parallelism in program loops has been studied by Y. Muraoka [3]. Implementation has been done by S . C. Chen f6"|. Also see [4] . 11 other three factors could be applied to each of them. The number of execution steps required to finish series of re- peated operations could be reduced only by the assumption that sufficient processing elements are available. 12 3. DISTRIBUTION ALGORITHM, BACK SUBSTITUTION AND RECURSION ALGORITHM 3. 1 Distribution Algorithm Several algorithms exist for recognition of paral- lelism within an arithmetic expression [1]. Most concern intrinsic parallelism using the associative law and the commutative law within an arithmetic expression. An im- portant feature being overlooked is the possibility of reducing computation time (in the sense of tree height) by distribution. For example, compare parallel computation of two equivalent expressions n 2 A ± X 1 i=o and A + X (A, + X (A + ... + (A . + A X) ... ). o 1 I n-1 n If we apply Baer's and Bovet ' s algorithm to evaluate them respectively, we will get 2 log,, (n + 1) steps for the former and 2n steps for the latter. Thus it is desirable to have the form of the former rather than that of the latter. This is the contribution that the distribution algorithm makes in the tree height reduction algorithm. The distribution algorithm has been programmed in PL/1 and tested, and will be described in the next section. Several definitions closely related to the implementation algorithm are described here. 13 3.1.1 General Description In order to symbolize an arithmetic expression in production form, a simplified structure of arithmetic ex- pressions can be defined as: 1. A — (E) 2. A -H- V 3. E -v T 4. E — E + T 5. T — A 6. T -♦ T * A where A: arithmetic expression E: arithmetic expression T: term V: variable. Subtraction and division behave in a similar manner to addition and multiplication, as far as the analysis is con- cerned. In the development of our implementation, sub- traction and division have been covered using the assumption that all binary operations take the same execution time. Definition 1: An arithmetic expression , A, consists of addition, multiplication and parenthesis pairs. We as- sume that addition and multiplication take the same execution time. Definition 2: The level , L, of a parenthesis pair in an arithmetic expression is defined as follows: 14 We start scanning an arithmetic expression from left to right and set the count of parenthesis pairs, C, to zero. Each time as a left parenthesis, (, is encountered we add 1 to count C. As a right, parenthesis,), is encoun- tered we subtract 1 from count C. During the process the maximum number of the count, D, associated with a left pa- renthesis is called the depth of that parenthesis pair. The level of that parenthesis pair is obtained as L = D - C + 1. An arithmetic expression enclosed by a level L parenthesis pair is called a level L arithmetic expression, A . For convenience any arithmetic expression free of parenthesis pairs is assumed to be a level 1 expression. Example: A = 1 B * 2 (C * D + E) 2 + F * 2 (G + H) 2 1 level 1 2 2 depth 1 Definition 3: The minimum tree height . h[A], denotes the minimum number of levels of a syntactic tree for an arith- metic expression A among all possible trees for A as it is presented [1]. The minimum tree height for an arithmetic expression can also be computed, without generating a syntactic tree, as follows: 15 (3.1) If A = 2 V. f then h[A] = log 2 [m] 2 . i=l n n (3.2) If A = ZT. or r (T.), then i=l x i=l n h[A] = log 2 [ 2 e[T ]] 2 . i=l m n n (3.3) If A = t V * T (T ), then h[A] = log ? [m + z e[T ]] i=l x j=l 3 j=I D z For example, the tree for arithmetic expression A+B+C+D*E * F + G + H has 4 levels by Baer's and Bovet ' s algorithm [2], and 5 levels by Hellerman's algorithm [5], The minimum tree height by definition for this expression should be 4. Definition 4: The effective length of an arithmetic expression, e[A], is defined as (4) e[A] = 2 h[A] . Computations are given to illustrate how h[A] and e[A] of an arithmetic expression A=B+C+D+E*F*G+H+I can be obtained. We apply (3,1) to each term in A to obtain h[B] = h[C] = h[D] = h[H] = h[I] = 0, h[E*F*G] = 2. By definition 4 we obtain e[B] = e[C] = e[D] = e[H] = e[I] = 1, e[E*F*G] = 4. Multiplication and division had a similar situation, e.g. if 3 3 T V. = A * B * C or 7T V. = A * B/C , then h[A] = 2. i=l x i=l x ** r k [m] 2 is defined to be the power of 2, 2 , such 2 k-1 < [a] <2 k e.g. [5] 2 = 8. that 16 Now apply (3,2), (4) to A we can obtain 6 h[A] = log 2 [ 2 e[T ± ]] 2 = log 2 [1 +1+1+4+1+ 1] 2 = i=l log 2 [9] 2 = log 2 (16) = 4. e[A] = 2 h[A] = 2 4 = 16. Definition 5: The multiplicative length of an arithmetic expression, m[A], is defined as follows: m (5.1) If A = ttV., then m[A] = m. i=l x n (5.2) If A = ST., then m[A] = e[A]. i=l X m m (5.3) If A = ir (T.), then m[A] = .2 e[T. ]. i=l x i=l m n n (5.4) If A = .7T.V-; * ir e[T i ] T then m[A] = m + 2 e[T-j]. 1=1 j=l J j = l J Note the difference between e[A] and m[A] . Example 1: A=B+C+D*E i h[A] = 2, e[A] = 4, m[A] = e[A] = 4. Example 2: A=B*(C+D) h[A] = 2, e[A] = 4, m[A] =1+2=3. Definition 6 : An occupied node in a tree for an arithmetic expression is defined to be a node where an arithmetic operation is to be done. A free node is defined to be a node where no arithmetic operation needs to be done. The root node is defined to be the node at the top of a tree. 17 free node occupied node root node occupied node .free node 3.1.2 Holes Definition 7: The hole-function H associated with an arith- metic expression A is defined in terms of an absolute hole function H A and a relative hole function for each term which are defined as follows: m (7.1) If A = w V . , then H[A] = H.[A] = e[A] - m[A], i=l x n (7.2) If A = jJjTj, then H[A] = H A [A] = min(H A [Tj] + H R [A # T ]) J H r A T.] = 2 h[A] " n[T J ] * -eCT,] R ' j J J n 7r (T-i), then 3 = 1 (7.3) If A = H[A] = H A [A] = j (H A [T ] + Hj^CA,^]) H D [AT.] = 2 h[A] " n[T j ] - e[T.] R ' j J J 3 The computation of holes of an expression is illustrated as * n[T. ] represents the number of occupied nodes when we traverse the tree for A from the root node of the subtree for T. up to the root node of A. 18 follows: Given an arithmetic expression A = B * (C + D). Let T ± = B, T 2 = C, T 3 = D, T 4 = C + D. 3.1) we have h[T 2 ] = 0, h[T 3 ] = 0. 4) we have e[T 2 ] = 1, e[T 3 ] = 1. 3.2) we have h[T 4 ] = log 2 [l + 1] 2 = 1. For T : By By By By By For T : By hi For A: By By By By 4) we have e[T 4 ] = 2. 5,2) we have m[T 4 ] = e[T 4 ] = 2. 3,1), (4) and (5,1) we have [T 1 ] = 0, e[T 1 ] = 1, mCT^] = 1. 7,1) we have ^[T^] = e[T ± 2 - m[T 1 ] = 0. 3,3), h[A] = log 2 [l + 2] 2 = 2. 4), e[A] = 2 2 = 4. 7,3), H R [A,T 1 ] = 2 2 " 1 - e[T 1 ] = 2 1 - 1 = 1. H R [A,T 2 ] = 2 2 " 1 - e[T 4 ] = 2 1 - 2 = 0. Thus H_[A] = 2 (H.[T.] + H D [A,T.]) = (0 + 1) + (0 + ) = 1 A J A j R ' 3 3.1.3 Spaces Given an arithmetic expression of the following form A = (E) * T + T and the conditions e[T ]h[T ] are satisfied, where 19 E = ST. l l T, is the term to be distributed over (E) a T is the term to accomodate the space as T, is s ^ d distributed over (E). Let Y = e[(E) * T^] + e[T ]. Since log 2 [Y] 2 = h[A] and log 2 ([Y] 2 /2) = h[A] - 1. We let Y' = Y - [Yj 2 /2. If the effective length of A can be reduced by Y 1 , the tree height of A can also be reduced. So the objective is to find out if there are enough spaces to accomodate Y' after T, is distributed over (E). d Definition 8: The space function S in an arithmetic expression E = ?T. with respect to a term T, is defined as S = S R [E,T d ] = e[(E) * T d ] - |e[T., * T d ]. The computation of spaces is illustrated as follows: Given A=B*(C*D+G)+F. Let E = C * D + G, then we have Y = e[B * (E)] + e[F] =8+1=9. Y' = Y - [Y] 2 /2 = 9 - -~- = 1. Let E'=B*C*D+B*G, then we have e[B*C*D] = 4, e[B*G] = 2. Then S [E,B] = 8-(4 + 2) = 8 - 6 = 2. Since S_[E,B] = 2>Y' = 1, this means space-filling distribution should be done. The tree height for A = B *c*D + B * G +F is lower than that for A. See Fig. 1. 5. 20 3. 2 Back Substitution and Recursion Algorithm As for a block of assignment statements, the implicit detection of parallel processable tasks within it as organ- ized for serial computation can be done by the use of Bernstein's condition [4] to build a connectivity matrix. By the FORK and JOIN technique to analyze the connectivity matrix, the precedence partitions of tasks can be obtained. Accordingly, the execution ordering of tasks within a block is determined. As described earlier a block of assignment statements can be regarded as a block of function equations by defining variables on the left-hand side of equal signs as output variables, and variables on the right-hand side of equal signs as input variables. We substitute the right- hand side of a statement whose left-hand side appears on the right-hand side of a subsequent assignment statement. The original block of assignment statements can be transformed into a block in which with each output variable only one assignment statement is associated. The sequential rela- tion between a set of statements will be changed into a parallel relation. More parallel processable tasks and fewer precedence partitions will be obtained. The dis- tribution algorithm can be applied to each of the resulting assignment statements, and the tree height for each state- ment can be reduced as much as possible. By comparing the number of execution steps of the original block with the number of execution steps of the block obtained after back 21 substitution we can choose the lower tree height as our result. If the block of assignment statements is outside a DO statement, back substitution alone can do this job. If the block of statements is inside a DO statement , both back substitution and recursion are needed. 3.2.1 Physical Description In a presented FORTRAN application program assign- ment statements are executed sequentially for a uniprocessor machine. One operation can be done at one time regardless of the relations among them. As far as parallel processing is concerned, it seems reasonable to consider one block of assignment statements at a time instead of a single assign- ment statement based on the fact that parallelism within statements themselves can exist at the same time. The block of assignment statements in consideration here is assumed to be generated to satisfy the criterion that the block has no branch and transfer statements in it. One goal is to try to reduce the total number of execution steps of the original block which is sequentially organized. In other words, we try to change sequential relation into parallel relation by back substitution and recursion in order that more parallel tasks can be obtained and the number of execution steps for that block can be reduced for parallel processing. Hence, it is desired to discover the statements in the original block which can 22 be executed in parallel and which must be completed before the start of the others. Also, it is necessary to determine the statements in the block obtained after back substitution of sequential and parallel relations. If we do back sub- stitution whenever the situation exists, the sequential relations among statements are able to be changed into a parallel relation, i.e., all statements obtained after back substitution can be executed in parallel. Unfortunately in this way the total number of execution steps for a block is not always reduced. Sometimes we don't get the advantage of reducing the number of execution steps, but the dis- advantage of increasing the number of processing elements required. Thus both results of the original block and the transformed block should be compared to determine which one is more suited for parallel processing. Block outside DO statement . By referring to four categories of classification of memory location in Bernstein's paper [4], 1) The location is only fetched during the execution of a block 2) The location is only stored during the execution of a block 3) The first operation involving this location is a fetch. One of the succeeding operations of a block stores into this location. 4) The first operation involving this location is a store. 23 One of the succeeding operations of a block fetches this location. We see that back substitution has nothing to do with the memory locations falling into the first three categories except the fourth category. For those memory locations the first operation involving it is a store and one of the suc- ceeding operations is a fetch. Hence back substitution can be done. That is, the right-hand side of the egual sign of the previous statement is substituted into the right-hand side of the succeeding one. The entry '1' must be entered into the connectivity matrix of the original block, the entry '0' must be entered into the connectivity matrix of the transformed block. With respect to the next state- ment in a seguential process, if the situation is that the common location to be stored by two preceding statements, only the second statement modifies the common location by the application of back substitution. The first state- ment of them will be deleted from the block obtained after back substitution. In the transformed block, even a memory location still falling into category 4, both statements can be executed in parallel without conflict under the assumption that all input variables are fetched before execution for parallel processing. Block inside DO statement . In a block inside a DO statement some types of recurrence operations are considered. They are single recurrence statements and cross recurrence 24 statements. The occurrence of these types of recurrence is due to the status of memory locations falling into categories 3 and 4. These types of recurrence operations can be performed by procedures which allow parallel opera- tions. We apply back substitution repeatedly as the value of index variable requires. Theoretically, recurrence statements may be handled as a set of parallel processable statements, as many as the number of iteration. Actually, two problems occur. One is if the number of iteration happens to be large, the other is if the value of the ending variable is unknown. In the first case a reasonable number of iterations are performed. At this stage the conservative point of view of multiplying the number of execution steps (in the sense of tree height) , obtained after applying Hu ' s algorithm [7] to a set of independent tree graphs, by the ratio of the computed number of itera- tions required to the revised number of iterations done in parallel. Alternatively a reasonable approximation formula may be developed. In the second case a reasonable number will be taken to solve this difficulty. As a recurrence statement in a single DO statement is considered, the procedure of iterative operations of back substitution will be taken regardless of whether the output variable is regarded as a single variable or sub- scripted variable. But the measurement for parallel processing will be different. For the first example 25 DO 10 1=1, 10 10 A(I+1) = A(I) + B After the iterative operation of back substitution, the statement will have the form at the tenth iteration A( ) = A( )+B+B+B+B+B+B+B+B+B+B The number of levels and the number of operations for each level will be obtained by the application of the dis- tribution algorithm. By using this information Hu's algorithm might lead to better results for parallel processing, i.e., the minimum number of PEs is reguired within the time limit of the tree height. For the second example, DO 10 1=1, 10 10 A(I) = A(I) + I After iterative operations of back substitution, a set of ten statements will be obtained. These ten elements of array A can be computed simultaneously. At this point there is no information about whether all ten elements of array A or only the tenth element will be referenced in some later tasks. The conservative assumption of all ten elements of array A to be referenced must be taken. Hu's algorithm should be applied to the set of ten parallel processable statements by combining them into a big tree to obtain the number of levels of this tree and the minimum number of PEs reguired. As the cross recurrence statements in a single DO statement are considered, similar procedures to those used for the second example above can be used. In 26 addition, each time one block of such recurrence operations is going to be taken care of, only one level of DO statement will be referenced no matter if it is an inner or outer DO statement. 3.2.2. Discussion As we know, to analyze and to measure a real FORTRAN application program for computation of efficiency for parallel processing is not a simple matter. The scheme in this algorithm is designed for the preliminary stage experiments. Several cases are not handled in the best way. In a FORTRAN program the transcendental functions and arithmetic functions usually appear in assignment statements. As for the transcendental function, it seems to be most proper to store the information of the tree for the assignment statement. This is the number of levels and the number of operations for each level. Each time the transcendental function is found, the information will be referenced. Two problems exist in it. One is the information may be different in accordance with how the subprogram for the transcendental function is written. Another is the time reguired for the execution of the transcendental function is a great number of times that of the other operations. The remedy being used, for simplicity, is that each time a transcendental function is encountered, we replace it 27 by an expression consisting of a sum of terms. This ex- pression is made of the function name twice and the argument once. Examples are illustrated as follows: Example 1: The assignment statement SUM1 = C * DC0S(SUM2) will have the form SUM1 = C * (DCOS + DCOS + SUM2). Example 2: The assignment statement Y = X + SIN(A) will have the form Y = X + SIN + SIN + A. The operator of exponentiation is desired to be handled in a similar way. The assignment statement RZ = X **2 + Y **2 will have the form RZ = LOG + LOG + X + 2 + LOG + LOG + Y + 2. The arithmetic function, for simplicity, will be regarded as a subscripted variable by the assumption that no informa- tion about it can be known. It is hoped that some future effort will be payed to this area. In a block outside a DO statement one problem should be mentioned. Consider the case where an element of an array is involved in a statement, but the subscript expressions cf that element are the results of some previous calculations, The conservative point of view is that the subscript expres- sions must be calculated before they are used in the suc- ceeding statement. But with the assumption that the 28 calculation of the subscript expressions can be performed by the control unit, this problem thus can be solved and the sequential inter-statement relation will be changed into a parallel inter-statement relation. The input and output statements are omitted here. Clearly the variables appearing in READ statements can be regarded as input variables of a block, and variables appearing in WRITE statements can be regarded as output variables of a block. Essentially, the memory locations associated with the variables in the input statement are modified first, then fetched in the succeeding statements; the memory locations associated with the variables in the output statement are exactly in the reverse direction. This case should be added sometime. 29 4. IMPLEMENTATION OF THE TREE HEIGHT REDUCTION ALGORITHM A program analyzer which takes a real FORTRAN applica- tion program to analyze for a parallel machine has been pro- grammed in PL/1. The analyzer not only measures potential parallelism in a program but also modifies it if necessary to extract more parallelism. It consists of the master- program*, the DO- loop subprogram* and the assignment state- ments subprogram — the tree height reduction algorithm on a block of assignment statements. The tree height reduction algorithm will be described in two parts--back substitution and recursion, and tree height reduction on an arithmetic expression. The interface between the masterprogram and the assignment statements subprogram, and the interface between the DO-loop subprogram and the assignment statements sub- program are also described in this section. 4. 1 Back Substitution and Recursion In this part the sets of input variables and output variables, the connectivity matrices representing inter- statement relations in the original block and the block obtained after back substitution, and other tables related to recursion are generated. Both the input variable set and the output variable set contain one entry for a variable. Each entry contains the identifier and the type-single variable or subscripted * The masterprogram is described in [8]. The DO-loop sub- program is described in [6], 30 variable. To each entry there is a corresponding local statement number list that contains entries for statements. The output variable set is generated before the input variable set is. We scan the left-hand side of equal signs of assign- ment statements in sequence. If the left-hand side of an equal sign happens to be a new variable, the internal form of identifier of that variable is entered. If it is a single variable the entry '0' is entered. If it is a subscripted variable the entry ' 1' is entered. In the case of a match, the local statement number of the succeeding statement must be entered into the statement number list associated with that output variable. As for two subscripted variables, both the identifier and the coordinates must be the same when they are matched. After the left-hand sides of all assignment statements in a block have been scanned, the sequences of entries in the statement number lists are reversed. The input variable set and the connectivity matrices for the original block and the block obtained after back substitution can be generated concurrently. We scan the right-hand sides of equal signs of assignment statements in sequence. All the new input variables must be entered into the input variable set. When one input variable is found, the comparison between it and the entries in the output variable set must be done. If an input variable happens to be the same as one of the output variables, and the local 31 statement number of the statement where the particular output variable appears is less than that of the statement where the input variable appears then back substitution should be done. In the original block the indication that the first operation involving it is a store and the succeed- ing operation involving it is a fetch must be recorded by entering '1' into the connectivity matrix for the original block. The entry is made by regarding the local statement number of the assignment statement being processed as the column index, and the local statement number of a previous statement as the row index. Consider, for example, a block of four assignment statements A = B * C C = D + G E = B * C F = A The output variable set and the input variable set are shown as follows: Output variable set Input variable set Identifier Type Identifier Type A B C C E D F G 32 The statement number list associated with each output variable is shown in the following: Identifier Statement number list A 1 C 2 E 3 F 4 The block obtained after back substitution contains A = B * C C = D + G E = B * (D + G) F = A The connectivity matrices for the original block and the block obtained after back substitution are : Connectivity matrix for „ , . *_ ■ .. • • i v.i i Connectivity matrix for the original block ., _-* , ,_ the transformed block 1 2 3 4 1 1 2 1 3 4 1 2 3 4 1 1 2 3 4 A block of assignment statements in a DO statement is handled as described in Section 3. In addition to the tables built before, two new tables are needed to be built. One is the distance table, the other is the recursion table. The 33 entries in both tables are associated with the input (i.e., right-hand side) variables. In order to compare an input variable and an output (i.e., left-hand side) variable, first, their identifiers are compared if both are subscripted variables. In the case their identifiers are the same, then we compare their subscript expressions. Assume both variables are one-dimentional arrays, and the subscript expressions are linear forms. We discuss the general method in terms of the example shown below. First each input variable subscript is subtracted from the output variable subscript. If the difference is positive, the difference is entered in the distance table. Otherwise we enter a zero in the distance table. Thus I - (I - 1) leads to the ' 1' entries. The local statement number of the assignment state- ment where the output variable appears is entered into the recursion table with the row index indicating the current assignment statement, and the column index indicating the occurrence number of the input variable appearing on the right-hand side of the egual sign. A block of two assign- ment statements inside a DO statement is illustrated: DO 20 I =2, 10 Local statement number A(I) = A(I - 1) + B(I - 1) 1 20 B(I) = I + A (I - 1) 2 34 Both the distance table and the recursion table are repre- sented as follows: Distance Table Recursion Table position 12 3 4 5 position 12 3 4 St. no . 1 1 1 St. no. 1 1 2 St. no. 2 1 St. no. 2 1 The entries in the distance table and the recursion table are used to determine which statement at which previous iteration has to be substituted into at the current iteration. 4. 2 Tree Height Reduction in an Arithmetic Expression The presented form of an arithmetic expression in the original block or in the block obtained after back substitution must be transformed into a standard form before it can be processed by the tree height reduction algorithm. The rules to be used to omit redundant parentheses to make the presented form of an arithmetic expression into a standard form are quite similar to the rules of ordinary mathematical notation. The precedence of arithmetic operators and three rules are listed as follows : The precedence of arithmetic operators precedence 1 : '+' , '-' precedence 2 : '*' , '/' Rule 1: The outermost parentheses must be omitted. 35 Rule 2: If only the operators of precedence 2 appear inside a parenthesis pair, the parentheses must be omitted. If the parenthesis pair is preceded by '/' then we must properly adjust the operators inside the parentheses. Rule 3: If the precedence of operators outside both ends of a parenthesis pair are not higher than the precedence of those operators inside the parentheses, the paren- theses must be omitted. If the parenthesis pair is preceded a '-' then we must properly adjust the operators inside the parentheses. The internal representation of an arithmetic expression is a string of integers. The numbers used to stand for operands are small integers; those used to stand for operators are large integers. In accordance with the number of parenthesis pairs of an arithmetic expression, the arithmetic expression in standard form is decomposed into an array. One row represents an arithmetic expression within a parenthesis pair. Negative integers are used to stand for an arithmetic expression within a parenthesis pair, the absolute value of it points to the row where the referenced arithmetic expression is stored. For each arithmetic expression the number of levels and the number of operations involved for each level are calculated after possible distributions. When one term of this form Y V . is found, it can be regarded as a single li ' 36 term T . if its length is a power of two or a product of terms TT . . each of whose length is a power of two. When 3 3 a term of the form ir v.*ir (T . ) is found, hole-filling distribution is tested on the numerator and the denominator separately. The detection of hole-filling distribution between the numerator and the denominator then follows. If the condition is satisfied, the hole-filling distribution should be done. The number of terms within the current arithmetic expression being processed will be increased by the deletion of an arithmetic expression of higher level over which distribution has been done. After the detection of hole-filling distribution on each term has been made, we have an arithmetic expression in the form, ?T. . If one term T. is in the form TV.* ir(T . ) , ' k k k l l 3 3 the space- filling distribution needs to be detected. (One remark should be made concerning distribution. The distribu- ting term is distributed over each term in parentheses; but distribution with folding is not implemented in the distribution algorithm.) At last, the computation is performed to determine the number of levels and the number of operations for each level of a tree for each term. Essentially we don't build a tree structure for an arithmetic expression. Instead, we adopt a mechanism of recording the sequence of combining two terms into one term of higher level. The number of free nodes can be computed accordingly. This approach will allow us to assign an operation to the level just before its result is needed. If we are going to represent the information computed 37 in terms of tree structure, the tree constructed in the latest-stage as [5] will be built. Consider an arithmetic expression of level 1, A = B + C+D*E*F=T+T+T If we represent the procedures of the mechanism used in terms of constructing a tree, we have the following tree structure: B + C + D*E*F The sequence of combining two subtrees into a tree of higher level can be shown in this equivalent table: Temporary Left-hand Right-hand result operand operand eft-hand operand T i T 4 m «_ m m 4 l l l 2 T c <- T. T_ 5 4 3 If we assign each node where a temporary result to be generated a weight, 1. Then the term D * E * F will have the weight, 1, and both B and C have the same weight, 2. Obviously, the number of free nodes for both B and C is 1, and is for D * E * F. The preferred tree structure is shown as follows : 38 Level B+C+D*E*F No. of operations 3 \ / 1 2 \/ y 2 1 ^ s %"^ 1 The same procedures for an arithmetic expression of any level can be applied recursively until an arithmetic expression of level 1 is reached. 4. 3 Interface The assignment statements subprogram is one part of the analyzer which consists of three subprograms. With respect to the others, the assignment statements subprogram functions as a service subprogram. In order to integrate these three subprograms the interface part is described here. As a block of assignment statements is formed in the masterprogram or the DO- loop subprogram, different code numbers are needed to distinguish them. In this analyzer the code '0' indicates a call issued from the masterprogram, the code ' 1' indicates a call issued from the DO-loop sub- program. According to the calling mechanism, the count of assignment statements and their global statement numbers in a program are dispatched to the assignment statements sub- program, when a call of the assignment statements subprogram is issued. The integers standing for the index variable, the starting variable, the ending variable and the increment variable are transfered. In addition, the original block of assignment statements must be referenced each time by the assignment statements subprogram. 39 LIST OF REFERENCES [I] Rama'moorthy , C. V. and Gonzaleg, M. J. "A survey of techniques for recognizing parallel processable streams in computer programs," Proc. of the Fall Joint Computer Conference (1969), pp. 1-15. [2] Baer, J. E. and Bovet , D. P. "Compilation of Arithmetic Expressions for Parallel Computations," Proc. of IFIP Congress (1968), pp. 340-346. [3] Muraoka , Y. "Parallel Exposure and Exploitation in Programs," Ph.D. Dissertation, University of Illinois, Urbana. [4] Bernstein, A. J. "Analysis of Programs for Parallel Processing," IEEE Trans on EC Vol. 15, No. 5, October 1966. pp. 757-763. [5] Hellerman, H. "Parallel Processing of Algebraic Equations," IEEE Trans , Vol. EC-15, No. 1 (1966). P. 82. [6] Chen, S. C. The paper to describe the DO-loop subprogram has not been finished. [7] Hu , T. C. "Parallel Sequencing and Assembly Line Problems," Operation Research , 9 (November-December, 1961). pp. 841-848. [8] Cartegini , C. A. "Scanner for the Analysis of Parallelism in FORTRAN programs and IF Detection." Master thesis. The University of Illinois, Urbana. [9] Fernbach , S. "Computers in the USA — today and tomorrow," presented at the 1965 IFIP Congress , New York, N. Y. [10] Allard, R. W. and Wolf, K. A. and Zemlin, R. A. "Some Effects of the 6600 Computer on Language Structures," Comm. ACM , 7 (February, 1964), pp. 112-119. [II] Barnes, F. H. , et al. "The Illiac-IV Computer," IEEE Trans, of Computers , C-17 (August, 1968), pp. 746-757. 40 APPENDIX A Overall flow-chart of the tree height reduction algorithm for a block of assignments outside a DO statement. nter ) Back Substitution Tree height reduction on an arithmetic expression Hu ' s algorithm on a single tree ( Return y Overall flow-chart of the tree height reduction algorithm for a block of assignment statements inside a DO statement I Enter j Back Substitution Tree height reduction on an arithmetic expression I Hu ' s algorithm on a single tree No. of iteration (e.g. 10) Hu's algorithm on a set of trees C Return J 41 Overall flow-chart of the tree height reduction algorithm in an arithmetic expression. I Enter J Decomposition of an arithmetic expression by parenthesized terms Distribution algorithm Composition of parenthesized terms back into an arithmetic expression Printout information of a tree for an arithmetic expression / Return J The list of functions of procedures in back substitution and recursion algorithm. SLHS : Generation of the output variable set of a block of assignment statements. SUBST: Generation of the input variable set of a block of assignment statements. Generation of a block of assignment statements obtained after back substitu- tion from an original block. 42 RECUR: Issue a call to tree height reduction algorithm. Apply Hu ' s algorithm on a single tree. Operation of iterative case. Apply Hu ' s algorithm on a set of trees. COMP: Generation of precedence partitions. Use of Hu ' s algorithm. Printout of final result. The list of function of procedures in the tree height reduction algorithm in an arithmetic expression. STAND: Standardization of a presented arithmetic expression into an arithmetic expression in standard form. DASEM: Decompsition of an arithmetic expression by parenthesized terms. PAREN : Generation of one term and one parenthesized term. Issue calls to procedures HOLES and SPACES. FETCH: Fetch of the information of the tree for a paren- thesized term. DENO: Detection of the hole-filling distribution in the denominator. NUME : Detection of the hole-filling distribution in the numerator. HOLES: Computation of the information of a tree for one term. SPACES: Detection of the space-filling distribution. Computation of the information of a tree for a parenthesized term. 43 COMMOM: Determination of the deletion of a parenthesized term over which a distribution has been done. CALCU: Calculation of the number of tree nodes for each term in an arithmetic expression. MOVE: Transfer of the information of each term in a parenthesized term to an arithmetic expression being processed. DELET: Deletion of the index number of a parenthesized term over which a distribution has been done from the index table. PUSH: Store of terms into a service array. ASEM : Composition of the parenthesized terms back to an arithmetic expression. MEASURE: Print out the information of a tree for an arithmetic expression. o < 1 I i I 44 APPENDIX B O* vr «j» \jiI<*p »n * * * + I I LJu- wyJ IjJh' IS»N)NJNMMNJMN»-»--i ■ 4> ex -jo \jy «f* w if\» *- o -a ft -j O »J1 .*» U» K> ►- O Jl OD -J t> i I r; r- n n ' o o o o i -n ii — ii— -< . «— -4 . I — V ■ — .. — O -I — — I ■ I— •- I i I* X m < i r- o vi —i i i z n -« — ■ c_ ■— - i i II i— fM —• ' i O II • 1 .. _ || -n . — jt i — -* n — t li —i -n i Ol*i T»- I — O IT X ■ *• Z m i O ' v T> ceo- a -> it. . t/i c. •»!- — • — ^ — li -i .. o — < I - . C < — IO • o > z ic • • X >- z 'J. - (/I Z -H Ni 1 • -n > z — 33 ^ X «. *- rn — C x m rri rr a — F"l-|l- x Pi'2 T "* I> & > n x x ti — tt rr * — -i 3: Z l> C n o t> oj a: -* o x o m rr r. C O — m u* n n «■ m -~ •i O r*j *— f- f>u f\» • — t r o «• r. o z t o -n r» 2 — o — x. — o — — z Ul — w — o •— o ui z » o o — INJ h rn . -« o uj o u- *■ — *>> X — m x I rr o O m — on • m — . i — M ■ O — Z » I z -H m i x T> -H »-« I J> X i 03 m ■ — o . ut -> o I m TT . *o r-i o — i — r\j 'HBNBlOl ■ n x r- » rs i -i x I a Mrt l^ Tin C -I -I _ ~ — — . x ti uj \j> ui m — o o o o x • « • o o M no ro m <-. a O X r — en t — — i- o -. Ci C T Til — XXX fn m m o o c !UI"«H ■ -h Z > O I 73 (/I T O if -h r- 2 i O Z rr X . — c. — » : M — t\j — ilfyO lO.I-T ^ o — ) — • -n x — c i r^ z i m n . CD X » o — I— )> a -i T>.(/1 (*^ Cinn rr — it — - ul * r^.' o o — -p o O O «-* « 09 — — m • m z m o o o rnr it n n o TOTiNjy-* l X Z C ■ ititjtj j O it. rr. ■ n*n *n m »m ^» O X X -» m m MOO c o m m rvj m » f- •o -o rvj rsj » r- o o o o ) — -r x c » x — m » ai x o O - O tt m - n o i C m — . : T O Cl w ' -* O f\) j ui -• — n ! — uj x . •— rn — 4 "IT X T . x m -4 xj -h x m Z T -H O > x m z r- Z X » *i > z i- I— > .. t n n — tt CN-Tl Tt X — m rt X O ' ■» m o nl ti 1 m l — x- m -h c • — — o isj ui i— r o — > 1 LI C» r- .. z o o — — i ■p -i o o — — — Z -l ui — ** — -I o O 3D z o > r- r- o • — M U> i — -p TJ — -H -H — -I C -HO 0\m & O X P" OH .. O.fP —,» O Z — J» I X X - m m o o o o rr m r> n 45 O \r> \J* v/i v/> *■***> ^^*-^W^**WWWv>'*^tN>M'viK*K)N»rv , Nrf»sj^--^-^— *" •- O O O O J^ »*> J 1 i <£ a o j X 1 ^ — -^ ff- m * rv |*- 1 rf) -»j <* *r ^ Ul N »- O ^i .V CT I'OQDX-v^f^Ja.X ►-<> ■h m o ^ ~ f O K> C/i •. H H -4 O — a? -n o *c — z ■H » — O I J — m H H -^ z 30 > X •- •• m r- » i- O !-l o o r- n D-DUl i x t- m — ■n 'n z -4 > X t — ■> o c ■ ii n -, . — — n ti o u v m rr i o < >- ■— — CO* C rr -i ►- C. M ;* _ — ( ■ ;» » I Nj - . 1 m m c r>*-~ — n— xi/-. t» 1 — — • <-. T I O — .. 1,1 , _ — , x « i h r > i. t m — jo •* •— X \r — X > * -4 — « m » ■• •» «i O • -<••■• ! O X - b — c — a t «_ z c O en B 1 — 1,1 2 ■ II o o c T> c_ > * — ~ f- > T T -I ** *- z z — -» — r- — j •■ — •■ — i: .. i o — — f- — r- — En o p o Pi- ~ — Mm « ,Z m o ~ w* o c (— O W! — kjl /Tl O (/I Co- - U. — •- -o * c G ~- . LT c: o* -H C- u —i ~ ■• > *- MM 1/1 t/l r~ r- O) II it c c_ — ^ • — o i/* en a IT V- L. — ra -* KS> V- ^ — « — — V> JC * ~ — — ii It * jC — » X * — « — t I m (_ ■> i- -* • ■ — ». r> — X •K i/i II m h m Ti II — < -» -» V» z 2- Vi ;* <^ ^ T i o c — -• -» — n z o >- — i— c m •• ♦ z II - ►- n r- — O r" t — o w< C C r- \f — n . — «n z — — •• ^ O I t/> d z — o •• — O Oi — - Z T — z Z -I 'O m Is I . o ) ) 46 '• I o 'm r\> kj m|N) m nj n n fvKt fvj rv fvj f\> '©• s rv Cf \f> \J> \.r J* *■ w 1*1 V^i* *- i» ui ^ »-• u; **■ *- r>j o a> w m *- - -tB urn TV-H O X 1» It » •• *n m!" "l " n ^jo m (/) v: I . -. O — ■ — O n -h « O -* T r f" r- o r -d (/> •• -~ X t ^ r -h a »-:c > a , ? — i O m, H n? — «■ l — n •• i i -n — i -n rr> •- — ' ? 11 O T Tl ' m ■< V -t I/* * I i li o i m i o o M ■< • a; n o ii '. HITIHO, . 1 m - I m z mi Z! Z I O 3 Z •• c no.Ti — II II J> i >- I cc en ■n c i o: x — i X t_ I II »- — C -ol l< (/l — — '> 1 O Tl T — * X II > X <- TS f y c ^j n *- i/i 3* > i i it ii — J* O r- isj ♦ ■ jn r- -- *- I ^H»H | — a > u ii — • • •• I- Tl X I- t •— 1/1 1/1 • -« l-l 1 — ■- n n » z Jir Z -4 -H -t ■ — O r- ll C X II i O — XX' «• ii r- t i- x c CI t~t r- i/» ntc 3D t/) C/i i/i •— II m m w r- o c ' on. r- •• — ■ c y* y w i II C 1 1 c ai — - . ♦ "• l\J (/I .- _ _ C ' •• ■— II CT Hi- — »— c= w incbinl ' o p » z •r»r itoi • — — n x ' r- — x I ri ■• n i/> x c- r»«» 3C • — • * l/i X — J 3 « X Tl — X — — Or-f— I ii Ti O N-rii -ff T V •• ■ r~ z o z m m x -* /v o P" — P- o O Z Z » O D • s_ .. J" II i > r. i - *- x II *- l •• n x z i ,x — c - JO Z on III C IX t/» i X I • • -H m lei m :0 Z I x rr t> z X Z O C O - -l -t O T 1> — T r- -x X m -4 ti m z » •< Z J N x — o o c — a R > 3C H ' -I — O I X » •• •• o — •• i 47 o ^ w w I a> -j -* ■ o a #■ t ! i XT' mm'wm (/l -« O Tl C_ — — □ II — ry •• «-ly — I <_ — O >' "9 » ♦ ii □ .- M O ~ I- o ri it* «• s 7< rr — ii/i Tj II o O — ■ l/> — ■ u •• x n p n p. r u -» — t. — O O O TJ II •• o 3 .. — CO -I — IS ^ *- Tl O T* II •<-«• *H Tl Tt Tl ^ Tl I I O T C_ -* •— 71 v t/i ;■) ■— — V •• II — cr > o o o m •• C O J> rn — i L--WUI' O -* J» ♦ n */* ♦ o ii c. c ►-•--« v — *• O *> rr -• CD — IN o rr o i OVI "j I n -i o — rr ■ "- r\i ii i I Pi t ' □ l/i I 1 — ■ TJ — i l* iv Tl — Tj -h rr x co T •• — T i c/» m » m — z * — z z II <- •• C ♦ II c "« »- » -* m •• •—, 2 o n o O » BI » .. -. -. TJ -« » > > — cc — ~ •o — I o M ^ m — — • Z X -. O I — : >- T » li •• rr .- — -» I -< Z •• -« O I or- -hi > '"O c . r- »>- i r- I- r- . t/V— "O 3C — — M X "-p t/i * T — pn — o »- • Z — > O • — . r- c — <- tj — r- -h C c — -I — O t/< II V .. C rr. i/> O -* o m o > — ~ — n tj -i m z -1 m — -, T, — _ > O •' Tl e- c o z m t* — 1 iQ(l C1IT--I -H r — « "- T X O m -r •• Z a z -H TJ ii TJ to C c c a — o H «-• r> * f — - > ii — c t^ o r> -f —i •f — c_ — m o • ■ m Z X 2 CJ — rti H IS) Si" " -I TJ u Tl — c ^ Ni m * X — II ►- O II V* -• TJ • •- C TJ ' (JJ CC Z> II — X o I — *) c »T* I -< (/> Z l/i *. c a — ; TJ cp — I c — — m i ' — rvj. z — c n # • tr ■ > <^ * ii i i c — o I » 3 .. .. -• ,W C. Tl I X 1 — o r- • C •• t/i • v> O *- -I II Tl, C — TJ | C IU » TJ •• — X> » ii I x a — — — i a Ti a: -~ — X — -1 x> -< X X- O X 1 T — X It m •. — 7< t; Z p- r- A M C n o or- TJ — H > ->r- Z T -» o m *h i z I . o m — Z a>.. I f- m -< » Z O ftl •• Z o a 48 Oj -^i -^i *g'-^ «g ««j *j v \r \ji *■ l* j* J* x* *■■ w ^ «^ kj'nj f\jMi\jfsj*-»-*-«— • »- *- O'O "* 3 >j «> ^ i : l : ; I i e. o j. i o i < o >.» c . -h x x •• o — — — — o -x I T> ■ « J> l rn -h -* -i x .. «■ w a — II II — O 3L' r- (^ I H Jt< i > l> rrt — 1 ' X X •• — I II M-fTIJl NIU2 2 « :« O J» >,X •• ■r r- t/i — -o • li -n -i — Z I x o j> — :— — 2. — !r- — — O |t> cj Tl Tl > , c i- ' ix •• jo O r- i 'I to & x t» c n x x x d c ■ — > — m -: '•> X — II — K) — NJ O 7 . — . X X t/i ^ -* > — « — I O ' a "H ii mill — — o z ~ ■ Ni II M nnoiyi -I «• T C • • T T t- I Pr C"3 2* — * *- Z j£ O — ! r- ui w u u> 'f m ■r ai «o r a> »i» J- V>> — Jj ij. (Xj i r— m O «- — i n -n o -r c a i i s» s» •• Z i -« * JC I ii r* o i> ■ n o o o i n m c n ct — z — i7 — -• — -IN II M I I - CI • >- c. a c .. _ c — I z II li -. r- 30 ♦ m — — T> 13 O a -i I -i m rr O 2 Z c CI c O uj O m o □ z r- ;=: o -i '.< fi ii n > — -5 C H — Z " C 1 f\, — > . .. *. mi ♦ r- o |"I/|Q Z I ' ■* > • > o C» m in -» Z -< X Ci m O 2 i— O i •• j> n ■ i- c l f~ "H ' O 3D I C — I -i a i — i z -o jt — J> •. I O mc — O Ml-H • iO •-L >. O — I II > -n o r i • ■ r- z. •n — — I •• II o — — j M — M M t_ ^ „, O -n ■p ■n -p II (_ II o -p c <- 1) > a • • f - t/i l/: <- * o 4 •• — £. — •— BM r» T) r- r- V •■ • • ^ > *p *o Tl & ii a II p* — i/i i/i t/t M X. > m O U"I r* -H C O -H T II — a: O > o r C n M* — — t« • * cc • • •— c — rn n m (•» II X -4 c t- — -» » — ii -» o T3 X -^ <_ i- —» D> m II a > »* 33 2- V a li -^ * I l/» X x -»r* I c_ m O rr -«o m — Z * l^ -• 2 * ■• X 2 •• 1/1 X k i Ci -^ -H .Tl O ii — > — O O I— I 2 O w X Ti M) n\ -x * -* > ■h (^ ■z. o -< t> 7i X o:x o o o o •*■->* — o m l» 2 ■p;*- r a *h m VI h!m TD * a o •- m j * ^ (_ -H r* —■ o n •- a o u-> » t/i •— • -* ^. (_ o — t ii OA • • MM C X>* ■H •' -I o o- o 49 o ,-« — . •-> . _j j i _. i r» **» A r> /V "> > »• « i n .ft f* KftKfi'iT'Sj: ^\^\j*\Ji\r \J"KTl \Ji y/ 1 V* \J* \Jif\J\ \J* \J> \Ji \J\ \JT\J1 \T t- * *- ^ (Blj)N««'»«JSff«MKTffyU | Jiyi^^^*'WWl»il*UlMW'wMv»-"-KHHp«'j' , )0.0 0^>CO«0 I I I i '-TIC •n — lc 1/1 |*J rv — r •• rr, — ii G II "• O O — »• . C » -« cb -< — r- — o — r r ' — »• in I n. | > C » ZI^P- q: rr m — . m o — 7J — .. — C • - I <_ — -o — n — ■— T) O Tl C |TI c o n- i IjC i C II ^ O J> 2 o c> o a ■ -I c rr, C rr • ii a — 2 — z — -I — _ _ II — -i I » O - 1 — — o — m •• «_ c «_ 2 — 2 — J — 4 M li ♦ r- s — m — -. o — — (/> rs — OT mm o "I li "n ^ — — z r- II » o > o 3 I fc C ft- •• t/-. r- m r- "3 — • X — X — I - I — V* — V rr — c- — I — ♦ rsi C ii A — — a. — r^ -< — n *m — o o o o II -n > <_ Tt O 1> * i» — r— II f- i> r- :* t- —i r~ x r- t- -C <_ £ C -* O > c > o — o m O c ft— C — • i rr — i •i rr- T» t> » T» »- -< — < |M — m mm *• «— — — — O — [fT* I I M N> O O Tl, ii no I v — r- O -i o I 1/1 T3 m X '-• — x- ii c i ^ -, .. _ rr> r\ — — u r- — lA m tj -HUH II — o .. 1 — M O — — -« I — «.t_ — — • O T -. n — 2 -i r- — rr o — : c t > — J c — II .. o a ii x. — > <_ — — c; — -< q m x 2 2 O pi T>.. «• rr. 2 — O — m h 2 o o — — I ii t» — O r- 2 Z O l m r> , — 2 2 _, — -4 -• O — — O o ( ) 50 Ni fg rg a » » » o ^ » * j'tfmu' «. . m i^ >• 9 o oio ^ >c £ -o .o O:0o cr t a i> a i •-.CO «- C_ I ■p ii > -n' ii 2 m O O 2 .. .. o O C_ — INJ — "E Ii */-.— (•> v> •• r- ip • 2 -« x 2 a o (/» yt eve — 2 <"1 ■» O C_ Cl J> C_ -H 2 — 2 m c n m — ■ o — o o II H •• 12 -H — H'S T 2 T,«» m i/> mo en — CjIcp -IT ! I i o — XI. i- ■ -* 33 -• . a i> i I i N. t/1 T , O m rp — O 2 •P, D M M ■o M X — (/• ro Tt n c n C -p Ii ■ c r. ■> — n r r- V • • II n c rr C n i >— n * C". X n > o 2 — 2 ^- ■H m — ( -i V a n Ul rsj o fSJ • o \j\ tl ,«• — i ■ c E> » «H I > X » I 'X m ^J r m > 2 -f- m o C 2 X fv » X *» O m* r. ~- x :r ,**" a •» I (^ c c * II -« i/i > -< o o -i -d — o "" fc > " o rn -1 o m 2 — '^ ^ ^ Ui 'JiJi j' ^ ^ If o O -* C -H — I r* p~ "• pj C m c f « ■■» ICISkIII • — 2 — 2 — — l 3: r% i *(/*»- O i -. — -P o m — l/i im n c- — — ii ii .. II Oh 2 — c/> er> ■n I o -l o cb n r- * o, * n # *■ » » — » M - — • -» — Tl * *- pj T — n >» * n m > X — » O 2 »- w o •• ^ TI O a TJ jj » — t a c — o — x c,-< • • 7H nr ■h m,x x 2 m oix CT -H -* I o -h rp 1 2 CB IT «• 2 t« 3. O X II II COO -HI* •• o r- I «rr > i/ir x -* t/i — mifl- X E — ■ — X ~> -i — X i/> T f. ''IC7H7 : — o r — z> >c * — _n — !|t||/IU',« — ■ c r - — 3 • NO* i r: — o — » ■ m — a ti : O «• w ti 2 i — — c: : m t x — I - x c o i in — » V. o o — • r ti i got o — ■ o — X -* — — ' — • X 4^-. T> -H — I O C 1^ •< * » r\ rzi -< — U 2 •• t/i — \Jt 9 mm —*T\J . — JS .. — « ; VJi "5 • O • a w *- x > — > - x x a m — • o ^/> x — - c O 2 £i 51 o o f w P- muz Lp n — «. <- i c K> * ci .. -t » _ ISJ _ s — •— a . z > «/i a 2 — m O o » «-i — c c -4 I 2 -H z n m v> o •• m Z i/i 2 -4 Z IT 2 Cl a » l U* I — 2 — * a — i ii i O I , m o — cr i — *S> m — x o • 2 o c o i — o a -< , — •• r- ■* ii cm I i c CO — ii 2 — — w — o — — ■oi O T fl C I o n -4 ; .. o r- 1 C ii I — -D * — 5t C • O C II — 2 — I C — 1 — — -4 ■ I- .. — IM — . cm M — • i z o 2 o • <^ ■ 2—11 > -♦ . 1 o — ~ & Ul — >. X — -H (J. (J. -4 -J — o c » cc 0- » a ^ !tr >o a- V'O C 9 t> a f> o ^ ^ m — — -o — VI m -n t/» -.CJ 1 I- 1 ' — c* "Hih SI" — — t/i — o II Ii — -n o — o — ♦ .. M — . -4 ►* — 2 C HO OVI/l| rro n -« > r- r> t i — x »» ' — 2 — -t t/i — rr — f_ IT. I/I I mm X — II -H«. IT- X — Z -< — mm t/i Cl — » o vi — hi t r .. ii - r n i> i> i — < -< C>- m — » ii — M 2 — « Z « O II x m o — x I \n -< -i — » — » CO mm II t/i n rn i 2 C « IO -1 i X 2 ] ~t I — -I -* jO Z — CO O X 2 u o 52 IX CD CD CD X N» l\> M NnlNJ QctroncBciiccrx.CL'rr csx ct cd a> *j t— «— i— »— i— ►—►-,— O O O O O O «*0 -£ •£ ■ ^) ^^; wrji-oa o \ji w i-» O -j O •** i J2 !~» 30 t/» O 33 (/» I m -1 o O ►" ►» m r- — - ii — — ll O • — r> ^->Op> m ^ ii u* tfl'Q r- ti it ii *- «■ |G i/i ♦ ! a> o u v ■- !i- l/> o t— «• TJ ■ •. » .i- II -H I i" O O I s/> i HLC -Lt.OtJ 3* O -I — I- z o — 4 f" * imCDOH • a m a z i c v -HOC1 ■-H»HC > C CO Ti • C_ C_ ' H — 0> • . p* T' — — -4 CO + >! V' — 1 I l/t — I> X — o m (•1 30 X II : p- • ■< ll MP o.» t_ —■ I (/I I Cl • 3D > -*IA o * • X I m — 3* ^ -1 m.Cj -* J « t— I z ,* o II — V •n I.. t/> un — Z ol r- m — • 3D «. >- i/> — V -" — — •— 7t 35 ti O C O ti H ll II II O 3\ O c.c " » •- "" X V & T> — ■ C • -I ,-. -I - I .- V* V, ■— I m — la . I CD •• if. Gt J — I *■ -« J — r. i — 2K1 — O — -< «-,.- O -< 3 .. .. |l — J> »- > x -. — a - — Z Z •» 3* — V- V' t— * (/» -4 -I •• X — 2- Z — O O h- H — I — — Z l/i t •— — «" m m c C — i <"> z — — z II II p -I X -< C3 — I ll i/i » — m X Z 30 O Z & O'-t — X — \— l| — — '» 3D «(/!,• »— v « !* er. — «_>• i ♦ — ,30 -O — «• » 1 > O > J ♦ t- V X V •- M — O .. > i _ > 1/1 -H NJ I — C I II X : CD X — 1 z e. V X 30 — z m« — ,o ii i rn o Til H;r" :z I -o>. ' c o I MO ! • » □ — z *• I l/» -4 —I 3d r- r- li -o r- tj — 03 TJ 05 .. .. o .. C.) 53 O ^)OOii0Da',u.iiaai0/affcrjaia i tBO) loo aaainaiacoiicDcii ^-^^-'->ooo^io^)l>*.'^)^i.-7ioc(xa-j»j-j-«j;oco'acr(T-o a v/i^vji^*'*'*'*'*'^ 4* W O S Ul W H t/» m — H ►- r- *» rvj .— ! £ t- -r t_ -i — o — c_ <_ o r. Od od or o& oo *- UJ www -> ^ a » o Mr ^ «- w-Hr-c_r-». -ho — *- r- t/> ♦ O h x 2 •• a - » n */» o *- 30 r. —> <- -h vi < rj > u ii i - — o 2 — t_ m •• ii »• — l- m O m *- X M c 2 Ci T on n/% .. Q II 1* I — !/> V ►- m C r Im X on -H » > ! — 1 — o ii 1 i 1 •- on ; I I m i -« I "• c l « -1 I ml z •• ""• i z 2 -ml -1 z X i — m Ci -r — X 02 on -« — ■ C. t- -I II — - — r> «. — _ — ii . -H O I — » o » — a> > — o •• — i— on — — n C fTI o — It hi — < i/i on — — I-,!- I ♦ -< V >- rsnn-> ? M Z Z ■• on O O G O Z m CO — m -« Tl (D ♦ > z z •- -n O C O •• I r~ — — m m — ■ — z — n ' II o — ill- o II I '.. O -CI -I •• I Irr C "I* into — O -< r- on * . — C t. C •— «- t- -n II II n ti II i n i c o i_ o ■ z » •• -h o ♦ •• i £ •— O >» i— i ■ » •• y •• I I o — -< rno on — 2 p — c ■» — «» i •>-• (/> ■• on 73 IN* ^ on -H 2 a J L. m a ii «■ 2 o — "0 o c o -« 1™ C --I 3 O 2 — — rn — ro « j> - Z II — on -) O 2 on i— -i X m 2 2 o o r s on — m — — -< O IT. '— i— •» > r>H ii • : On <_ m -| O II O, -l »• T »! O — I— m I ■ < -< ■ r- ~ I QB OD OD WWW 4* *- O I OHO o c ••2 1-1 IC I 11-2 1 o — -^ • • on rvj I > II * I HOI. o — ( ■ 54 •G *0 •& -0:-0 •£> X •£) «6 ■ X ■/l nD -O -O 4j a i a i 33 ^ «J Ul ^ ui -0 •£> O MJ X a ~~l -J *C X JD J3 j-i £ -0 J1 ^li ^ .0 •£) ~0 ■£> yi \fl|Ji tf ^1 * ^ I-!* 1 *•> W k« W n ^ a> -** vjj so a. -j ui rg o jj n o- •£> -C ■■£) <£ •£ T) i* rf| m I ~ C t/> > ii n -* •« la > -h O O — x O -* — ■ • • •• |\> *>»i._ ww f\j — ' U. X l/> — (. II 0"> •• II H »- ■ x »— 03 O — ■n t> ; m 1 ■ o c — u- m| I I uJ-w^-oi*-j? u»J>NOOa>? O 1 t/- rr -- -« -- II )> t/> O 2 — - - -IX— — I — a — i\> H — — .10 — — I i/i — 'o -n ■ I i ii n — -I -D •— * -4 > T ♦ rr — 3 T •— — ' -* |/l -h - — I ♦ <- — P F. r- X JO IMC/1' I -o — • I II — •0 mm t\> — ■O -I I II — ' O IVI -i < -o — r. « — en _, o -• — t/> tj -* <— II V I o — -i a CB — 33 — I n « i>. m *- < cp ■ — —ml - ' * nrr — * ♦ n — — ; n< — i — i < o m o -< — I mm m U> 2 —I — T> -n-x >:— -O O — lix - O SmCTk C". -* J-'O 2 J> ~. O — UI:Q — J> Oim -■ cr — o o » m imm, mm mm T — — "0 • —I m r»j n< — t> j> Z — Z fC re >i O • ■o i x. — m C -I -I -" mi — i - m j C -* f\j |sj> « £. CI 3 Ii a -I • m* O ~ CV O VI — .— — mm < < — -> -r. ~ i\j > -UOII X O — — n — o ■n < — o — m * m x o ~ nir-M — o r\j w a z — o — -o » m • x o -o -t rj — < • C w m r\j O — O •H— — 7 isj "U — c-. : — 2 I — o • I Til"- 2;— C| ii ri Tl TV O «• ^^ — m rn c o — OCCO" O X -I c -I -^ IS* • > • — * a c *- • — ir o » m- -c • - O m ^- O — m O a — ? — — — C3= • O M X 2 - -^ -D *- m Htfl T3 2 l/l ■• 1 U»» -( -O — » ■• m o cu -\j * - - l/: ►- -O 3 C O Z "O ^ — O t mm mm ■. rv m I Z x i o -< * •• n » -IO IT-PO- I— o -n o > ~n ■nl C I- ►- 33 — I — 1 I— x| *• m o m: ni <^ x * . o -• i^ c: z. — HviC' O M *» — *»; ITI —m. T-L. O II I — X ml -IO. — m< • 21 XX- ^« »OOi — O XX O CO c o m rr M IS) a: ■• n i — t -n z — — z -n x x — — mm x o O m rr »^ o a o x o o n o m mm. mm o uiiy o C/1 — -^ -H V» C — c_ r\i i - n C) 55 o — — <-> oo O O SI *L G w — ■£ o> \r Si ^ u. u. O i 1 b o fy C* O CI o to vj* v/i >x ivn tr -g ui !*• ■i'nuooooooooooo -> o o o o o o l/ 1 tf ^T Jl ^ *\ *' J* X- J* r^UJlwWNNNNN»i wr\j— 'J.Oj&^ui.**^ — ,:> Ji .r- IM .C ~J -J O .0 cc o r> -1 1 — cvo • • o o O <><£ watt I •• 7 ^ 11 r r - nj c, x 11 •- 2 11 — x X •— C* L« C — H 1 — . -i fr -I i — — o z -1 o n — — a — > — — -iJirri V C? -< — r- z -n v •• 11 2 c 2 • c b 1 o z — » */* o P" » r- >• — ■o x 2 2 2 r. 2 X CD X I I r- II 11-1 l-PI O > 0* X 2 -« c II X 2 ti > j> x a - -. < -, rr, 2 l/i rn X 2 O C -I m * n > 2 — -« rr. 2I.3XO — >2 -H •• - I II - Z ♦ Z > Wi 3 C 2 "Ml HO (P xx x — r- x x ml -1 •• — -« 1 O »• i» f~ c > -h -1 — 1 — 11 — 2 — I II -< 3 — X — O T T o .. > o I o C 1^1 o CD m <~ Z. n ™ -1 « 11 11 11 — o «- * O (/> I/I -« ~ — 2 W rr 11 r m 11 3 .- — ;c •- — 1/1 ■— _,_,-< _. — 1 — C — - C j? > m n > Ol 7- Xl > m jc x rn x o — — c •* «. rr — * l_ _ rr, " -n -n 2 -n -1! O Kjl -* -i m rr X *n x 1/ l/v > i/> u C -1 — 1 u -1 11 m ■H — (- 2 hj r^j t/l rv ♦ O ;» — II 11 >• 11 •■ l/l — -1 CC cc a X < — 1 m ■n X T X 2 n -n -r -1 2 2 2 <_ X X "O H m c C O - o - • — * o — u — m M'l/1 Tl x. ov» -n <£ m Tt;-H 7 h c a-* c r a -H •■* — • « C< ts> t-o M rr m 11 ll *- V * H O t— rw II II x -ice . — c= X 1 2 «-xx n m cd 11 I o c X T 3 J> X » -I -I -I < » i/» m CD 2 O — ■— XX : o 'CD -I (1, »- -I -< •• I !/*■ .1 T» -1 m x 2 M 2 < mo — — XT 11 m m — 22 m C- o O II J» rr II II C Tl — — 2 >- "- X II n n — a •• »• x 2 m 3 » •• m x X > II 2 O — T ■MX— X X ~ — T <- — X II — X Ol — > — H -1 ♦ I > * •• X IT rn • z X X — < V m -4 m * 70 (1 x — n n » <_ •• JD _ 1 -H II X 1/1 O • z •• — < — I > — -I x i 15 2 0| (j 56 o -J » KT UJ f~ c n v m *- c X > Z -no Z O i 2 i — Z ■- n I -Dill — ■D i- O ( O rr ; "- O Tl |»~ O i ! T) (T z It o • : I o D ~ z II ;X II — o z z a •* z z in m — z — o z — cs — I I V C -I CD Z — X CD I IT I Z ■ -< a — ^ it -a I z m ma. it Z I o x z z Z X 13 Z -I I II V> H •— — II .. i- z - I O <- -I c — — II F- — X -< — — I* CD Z ■ox mix II ;-H z — xl— X'— z r> X — I z z X CD -I X l/i m — II •- z • X r\j rr II — O — | .... •- o n — CD cc ■— -i x x w o m -« - » II ii I .-r V D- o n H Z I CD I I Z O C l/> X -* X C » >- m * — — h"g- jl O •> C jm rx cd !z I P x I -i o m »- o in — x i j! o -i t/" ^ '•* r~ c (ben > o lo ii •• m 2 ■— •-• o — -t n:ou- FTI X z c — X x o ii o -n ii no >ii a ^ » r '" b « cr » — ,x ■ O'C fl:-l : x x — z • c > • ~ O * -n II II -H X - O ♦ H >- X O — — im x m *- . x *-* c — u -< — — II (/t -< Z — — X — - l- o ll C'^ C rr c mil > - — • ] x « ' » — z • zlx Zfc-i* re >oz Z - » fr • -. • ,o .. I— & — ■- ». 41 Z i «- CI . T. X X •- X Z C II OT'll O -H X C IX I .. o ♦ m «- X.l— a- <_-•-. x II to! -I o — i — X •« ci o X 3C. "■"' c X rn I I - I" — -< X • r- t. r- T Tl — m •» < no < rj m — m I — T~ - T" • l/l X t/1 X II — II — - M • I M • — - < — a « o • CD » X ■ t> I — I ! t ^ m ■* M Z »M a — o Tl *- - i o II x« * rr i ZfcCmi O — X z O (T. X — —C — Z -I (/> > x r- o — t» x cr -i .. r > o — oz X CD * I 57 O rv rs) rsj n« o o- o- o \r * m — ! m Z O .. Z 7 -n O C II li o 1 5 r> c n -i p C rn x n z — Ni ro rv N» If J" I* O' * a -g f j i — * O T ii n r- -4 — •— m l/» II V* w — -i no — ■ IWN VNl J1 3 u J D a II k- rn X O • ;? ~ ^ -* a o o — — — 3 r- X — o o c * — X *c » c n z o — JC r\j im in* r\j w rvj m z o O c 1 ! Kj rvj M M M ** " — *r> —i \r v 1 i \ \ 1 1 I I | O "»1 T. O •• -4 «H Z mm w z on ia !!>—-•-< OH CT r~, Nt inj NJ fSrf *\J »— "- o o ■o ■n 1 m O »n y i £ t< — i JON •0 * a» » ftl m x o a o n — 1 T ■O 4 c x c c — 1 T. O »» o is m c z -* o — x n c n -i u. n CD a o- v/i 1 i — X O X n c O c O -< -« r- ~- 1 LP > U »M »- o -C 1 i x> 1 21 rr L-^t! r- x -n o c c m I/ 1 C : O -1 -< z mnl/ir o — — o z c o o o o >y — — O — II — II — II > — c — — r» ~ m I— i — x «- on c -< m — Z I ~ X mom \ zo 3 Im — o — X II -^ o — u o n. o X c, z — o c _ (_ .. H • II •- ti-ir — z -I » hch o □ •• -o z r- o C H — no II i/i c t» X — h z - ii z a; — a -< — — m c — J _ — .. . _ c- T II X T — rr r- fr rr • Z 31 -> Z > jc o :i o •- o z — z — — •» ui — isj — n — Z - <•* > t! • T •• X m > > z — I— >- — d II -• • 11 H Jl 'X n o O ' c z r> > .. . ,-* M C -I II o t> o o m — — ii — ■n — m — i * u — 13 ii m i o — ; > T — I O — 'z c i<3 z — I (/I •^ m I o z u- c o on ►- r- x n -n i — x b- — un c x m u* i -« -< > o — I r- n ' i r- -• -x m w Z ' -n t^ r\j < IUJ _. m — 7 It r- — O f" (/> v> ii x II V* • *w * — . c ^ I r^i — — r- 1 w — f- — o o ~ — mi x z o — — — r- j — ii i • r- — -i _ _ ... o — I — - o — —I.. f- — .. _ O Z X o * 'a -< r- o — :z » — z c — X a! wn "^ i o - , O r> • ■n 3t c | C I — _ a -I Z -4\ * — > c — r- i/i ro — — X 58 < O o I I I ! .1 ! I i I . I NJ Nl IVj r\J M O- *• o od -J o r- -* r- -n i> m m i/> l/i C* t/i m ] mr — • i— i — — i — i/i| C) f\J t/i NJ ffl ; • • li II — — O .- ^ ! ID I> (X O \ r- il ■m r* -H o ■ X T •• m (/> rn * c z — > C O -I -( o . c J- ^ .— o a^owJMjxx-j^ro^^rrj'i ^ n»- i i n c c on — c-. o o r. ■n o o r o -. Tj r- p- r- r- m x e _ x- rr< — o 3: i^ l* -n m jr "»l o t> 2 O X — -I C — Z t- it t rv_> m ii ■> ll 1 c *>- Cl c £ r» T> ~ (/I — T ^ X C T ft -t » ■* — — X — — A -< C X * > » • X -< c J lor I- T. — > ■> C » i t— ii I I I V* "0 > X o o — -■ X > II Cx 1 r- •- o "i ► X CD — O 11 I M 2 > — ■•> O •■ I — I" ■4 rr — o 12 — m ti w 2 X — — C x .. > t» — — r- a cr- > x i- — i- I m x fr «tc I - vj — t> C> O -*• > — — T I — m 1 -n — — e* — -* • x - X T* T* X m c x m 2 -<2 c c •• c I » ► — cvx > m X 2 — a x t/» rn m ^ o 2 — — O •■* II n • 3 2 fsj O JO O I -l c c L. O x 2 m > O r- i/v GO V i ! i ! "- ~ o n r. r- i o m i r- x iyi IT t/1 (/* —• x -i -h *n it o r-,a O m i>»* t» oo •• > J — ~ <_ n . -r *r it n -n > -> o o z II II I t -i r, •■ « z z I T II > r> — i _ ♦ z . "0 -^ *- l/> C C " — ■-H — O Z i- m -h z — «" O O V c. 00 _ -I — HHr-7 II -* -~ "0 C. I* • _ .. _ c X — CI !\> o o > o z — o -n o -ion c n c c z r- z -i -o — i II WHO ••on it n •— — I -i c c/> 7 T> O <•> • • I> •► • -t C~ rr- ,— II V (/i C A -• i •• a z t c n > ■ x o » Tl n ■ t> -* > ~ i> r: Z <_ B «• 7C cr i r- o ^ m m o —. o - z c — -& C i— o* o- :r 7- ^ T ~* —* — 3 1 C". Z Z O I *\J -4 I Z -I — T Z m T T O T Tl O Z Z -llfl I CI "U -< m -- Z Z c_ I — m c Z — ' o c > z r Z m m o 3D Z — O — r- •■ ^ -n m x O oo o o — *» ■n z u — n — ^ 5 • 1 i— 1 X c — — — m * 3 w T T. -»i n c —• — ti IOC XXX - rr - mr h u O oo o o •• - ■— ■ rn • w o o o w • ti rr I— o o rr. m — ■" X n it; y •H — I — — X * rr rr Z JC x X > — -I -I r om m «IJT •o z z « > J> -o r- r- i r - .. I ss I i= O 61 -*J ff Ji ^ UN)- m t/» i x m — < x * o — o a -n C -• r- x — x * » x i/> -wi • • i — — » x » — ti — ii CO II »— ^ O CO x co c •• -i I -~ *- m x z z — l/l o X » t- < 1? < *> II >WI«>H i X •• I *■ • 50 o o I — — II II II •- C l/i •• ce m .■ ri r- — > z x \s> < z - o O X -• I'm KT > rr m — X <"> X Z cc o * — o X C — r- i J — II T> i^ tin -h 33 -n Z < c> > n *- m o x *- z — — m O Z CD < C3(" r- x o . -o — — : >- n x i •. r* _ C O — ci -< II O O x r- -h o i I CD i m ?x Z X rn o "n O z z o i/*. > •— i/-> x HJ5THG z -< z s. o > f r> ii -o 3D v x o ll Pi-* c i — -or z — I c «- c z m <•> •• on i/i z —i — ' > -I Z X I X i o 2 ti -t. rr — Z > Z X £ — X- (/I X II -I II N * o z • X o o — «. X * — .- z — x 1 Z m i x z -I Z X I CI I rr — l/i z x :c ni l- O 3L X l/> O — — X ■^ O < t/i i/i — o j: si NTll --I ■ ** ■_ — w l>J II X W C O •— rr c» CD O — 1 CD -« O 3. — ~ I m ~ -h -i . rn o -i — — ' Z ►» ►. i rvj *- ^ »- < x — — c= — * X X - 3 X X. - — (-1 o c* -t p» ;> X X v> *r ►— — X X Z) O C X — < -< o z -. -< ^ a > .. -i n > c o — • CD W C ~ O -* IV w • I - -H O C i o z o -i i — ci »" ii — c m i — x r o ; z — ii — -l — t z Z m rr •— v I I I a — • •On i ii m i/i z m o i o •• o 11 c •- CD ci o - — O II X -H ' -4 A N» — z — ~ I CI O 3 ; — X > vi X 5» ^3 -H ~ z ■< z ■ •• tj c .: o -i ^- — i ii I » — . o m w rvj z — i- — -< — — IVJ z w c c rr — o C. X c j: j a — — c — O "n rr •— r> x *» rr X X rr m C O — m r- — i — — rr c ' c a C c c O O a I n r» n n r o o o -< i— <— r— r r r* f~ -~ •• i- — > * C3 -. . „ t: o X m ^ CD H M m 72 t; < X' X rr. X > Z i/i 3 — < m > V T3 B3 \/t n x> o < c c -n f- —< — . .. 03 — m z. ■j" — -~ OJ o 3 X — p w w o O C3 ■a .T| nj o — * i i> D O fo 3 r\j i ^* c • * O s> c J * C — . — < m i rj m m n X n T\ O — i —4 i^ — — l c Ul -^ 'jj X 7^ rn x c X m l^ -n Z X * » m C m r*i « c. -i r\> • C O X X t~ -n fV rr m a rr r~ -• O c O ti f - < m o m -» -• X m O <— -n — m p«j • u* — • 9 O — - — -n i i I i I .-n . rr » M — r- x X -• X X -1 — 1 CI m • I m i m a f\j — XI X X z -1 c j» -n > X m m I •- r* r- x o X X «• C z — — m v^ > ui O » r™ — -n 1 •• — o •— m x m Z X m o C —i o — ^ m o •> ) 62 C O COGOW3^O0B000L03-*J^^-J^^0*r>0 x h k l^\Ji*JllJlV/i^^*'^^^^^^W^NJrJlsjrs)rNj^^^^^^r*C© -nb D z -i z -I CI -I ■Z ~ 7 O r- o - 3 — r- n -o C •• H r— »- -o c z r i/i c C - O Tl z -p > O « 30 M H2- c-. n — II T3 ~. _ -n T - -O H - I- II — X II c -o it «— -o wrizr c — c c ■lin Zl/itfl X •• c rp v -* z r- xr- 0-"iT3 r> i z o it m ii ■o z -o hDw ^ [C -v-icr HflZI ~< S M — Z r> T3 .. z o ~ X l/l — C T3 t> & I 3 X 30 30 • ►» •• l/> -< -< m ?- x > J> -n x 3D 30 5t- — - • -C •— II CI -H > 2 O — — — uo CE •« II 70—i m • Z -I O X O C I II -o — — » rn p- o II T5 2 - 1 -n m 2 > -< m cr 2 — o o — ui «- hi □ -n m -n z O T! o r- — c z — C II i/> c -< ^ o > I O X O 30 !/!••■< -H JT J> 30 ~ 30 — > TO II 3C Z — I - t/l II J> -4 • • O X — CI ■< II co rn -h — x I 30 "C m - a. z n z l/l "o -1 X I Z t/i c-. I ■fl 30 i— II — O (/I — -I II Z p- tr. or — z ii X II rn — — ' nrnTi + in ►— m > s» •• 3D 3D i — -C -< . rn j» cd -"■ — I J> 30 30 ! ii -* ■< o n -h i i — > — — a ' > n — ii i JP TJ -< r- 03 C — to n > ii — t— 30 Z^ O «l c t- 2U i — • pi so : z — l 3D X V I * c CI I" r- I — — i m -. z « II X |/i i rr — c; -t ■ -i > z I — rr 3D o Z « □ -n o > < 30 wo •< I I t> — — 3D 30 — lr rn -i I C p p x i a •H •• 3 Z m — . > h r- -n 30 »— i/» ■< CD m > > 30 — -I CI -< 7= I o > « rn — o z I -t 3D — O • » I O "O : -i — r- I x ii c :» X i/< 2 « l/i Z -I •■CI i/i m I — m z z l/i — z z ci : ui — o » — X ■o — — z n C "P. (/» O ' 63 O OOOO-C <& ,0 -0 i cr *_n *> w iv r- -i ^ a ji f- o «ji> n^j jn* ii 'o- u- n u> ^ ^ ^ a w f- fj f\>.f\> rvj K- is» rsi N) fuM N N N O C O O O . o n o r> (-. r- r* r- p- r- — — — • U^ J> 2 Z 3D C •- > O 30 OB O C * 3> T. n m o so « , ~ O < x q rv. •• — m r» o <— \n o r» -» -* o O O I 3C i/i T) a — r- o o — — z t^ *» — -I *- Jl — * O fvj > — O O (/» -4 ^ m m o fp -» — m tsj r\ o ti <~ O *- w — x 3D > «~ o 73 o -n z » O -i > .. M r\# r^ rw rv rw rv »n* t\j iv r\j t-«j i>j fV>'K» NlfSJlSJ ►-,»-* ^- »— •-# •— O II < *3 O M O X — n •« G CJ m x. o — i/» — o v» •— o i/i - II Z 02 C Z i-l — Z — JO -1 — * ' X — * <"» Tl *. • fSJ » m •* f- O — X > 4/\ ■» r- rn m n — - c O 3D -n x -n •- a — , — » IT, X i/i x » o m o m rvi — o O D* Z X ** » o — O " -. — Z — rsi x r\i — •• — m — •■ °"Z C o x m m -n O O i— — lo KJ fT* — o ►» OX moo r. m coo 3D —. m trt V*J O < •• M O I — O -H Z 3 X » • 30 Tl M -< x m r- m i— *m OX" O M m O I — r- •- X I X rri m z z m o x Z II l/i TJ C/> -H — m z j ri o ii •• — t/i tj rn — o — a — c — z i O o I — TJ o^ •H II X n m 3 z c z TJ .- _ — c> is -i a ^ 3= 33 o o m t I tj II — -i a — 1 G - 33 II A 3 -< E •• O I •- a> c •• * z o -< o o C r- -< c — 1 z — n i Z "C ' Z I > > i/1 -* > l/t ' n x -i — » -t 33 » Z ■• 30 Z > > O t- > o ■<■< — — -<—, -g I, — -o M — — — «- •» ' II T3 - - ll Z - >- -I t_t-r-i^t-A ->x -i _-.o *TIX t- *• _ Nt — m •• -H — X O ,T3 ii ii m • ••03 m ■• a c\ -t O -H ,T> « -• (/i m •• -* tA > -< «- Z - T O rv Z II TlZ (/I "Q l/l -< ♦ I» -H Z ■- 71 Z m ^- i o : en II II TI Z O O -i CI I C TJ "O — i o x r> m — > o z ui r- C z TJ •• NJ -H C — « -1 •• o X — m ll Z — «- - » a o •• m <_ < m c Z — rn tj z m o 'ii o -* -* Z "1^ — X ♦ o m d ii ►- •• p — o — t»« II o — c >- o *• I* «- Z <- <- X ♦ H ♦ m — «_►- z O m tj r> ii — TJ i- r- — C " I I TJ C3 ^- "O '-a Jj- i ii •* a j> -H o j> 73 3 — 73 < II -< C! r- TJ » — tj r- — t; isj c 73 . ... i/i - r- z — . — — — C>! — Zl 1^1 jO L CD |7« n IO -» z i > (^ Z -< ' O Z ■ 6il Qi J I I o 64 C O I I ! I U) U> W u- w u* w www wWWWWWWwIwWWWWWWwWWW w w w w w WWWUW^WUi J-^WWWWWWWW i o o ». mo*" I r- r- -q f-l ■ 30 i ! UJ^*-«T|»— rnOT*T|-n-«TIOn — — c 0W ^- o. + ♦ .- a: — -I -H J> poa<- cos — 3 « — • -1 C x> o c 2 I — "0 — m o — ■n o - •- x -• i— *- rv cli — m se 2 f • l» : m — o o — 2 r> .. 2 — B- > II X 2 o j: D > o I- •" p l_ V -« — II I II 2 5> T. rNi & I 2 rr n -o 50 n — o c I c_ C J» — -1 1 -IX ■o -i O m ■ — I 3 c_ m m — 2 2 n c c II -H c — I o a — o SE ' Eg a U t r> > »- o 2 n •. n t> o ii nj C_ C O II II II o 2-i2 Ci I J> H X rn n x m 2 O m -n j» 5o o »- n •• II — — o x »— C m • T> C »■ on r\j *- a - < rn — m o Lii •• xio "Lo m ■■■ ~n > m 2-i r- i— O "" l~ c/i -« J m □ rr ii n m on 50 o o Z -< M I O C - I - • • rv — i O - I 2 J> ii m — T ■- 2 O -O c: • — O > «- -i o n - I O II o -no 2 -n i- -o 13 I- r- r- r-| QHTII Tl II -4 - — c » ♦ o ■ J> X .- » C O TJ bi O > O -« O O C- C. II O V — II o 3 f > X o -o o ~ m c 50 m i n — ; -r- t 0"i hj — • m X r\j ' — o «• — II Tl C II t— t— T) —• 05 X on 03 m •- -I O < -I I m x m o •• ti O 3 I O on — O OriOHi o on on —.(_-» 2 — M . )> II T. 7* II — t> - ►— — — — ^— It — J» ii ll •— ?r 50 •h i i -h a»« -< o r -t o 2 • -o -o -H — 5« X — -I <— •o — x rp Tl ' Z — » — -H — < m -n - > *a -h rr ■ ZCt- X — 3 2 — -I l^ O II m > » O I O -Q LO O •* O 2 x ^ rr m o O m rr o Z — 3< -> — O -« « I r s h co i/> -< I r— on — — C5< l/l CT — -H -I II — J> J. 3> X m — -u ■« li rr 5K — • '_ 2 — 2 J» rn •< 2 — > II O O 51; — — I— i— I m o on < "O C on -I I O O! -1 > 1 -n o — * » 03 - ~- — j> ai •* 1 X yiffi«ui- rr o — 00 o 3 — KJ\ O — OiM> — ' m O o *• M n o — is) — m « I ►- — -1 I -1 — \j\ -1 w - » O )> on l\r — 03 . > - — |\j rn -1 t, gi r- O 2 o m • _£ Q ■• r- pj ONVI n ti n ■• 1 ■ „ M 1- X Jl — ■• . m c. z rxj ; C — Tl r— , — — on J> ■ O X • X ' rr. -n m M — : o — a 1 -~ X > Tl ■ urroi"' *C "1/ x 1 o — m ■ o — 01 m im -n o — >- o ■ — .. x m *- mo — I o — ■3. ! o > m 1 x »- I m x o m m o m 1 — o 1 1 — ' > rsj • rv — w f f ^ 65 o \j\\r\j*\ji*ji+ + + ***• + + ***>* + *- *- r> c o .o iJ^aaaasN^O' »-C^^-C Ct &• W •— -J O fNJt— ^^N>^ -/ — X O— O T II C i' o c- ■ O O I •• £ •• ' r> l/i < 2 VI r> " i\j c n x ii v I x < — — II M 3 — M II o o z < o > !\J Ni -« O ■ x .. — r. o fn v* fr •• h — X O II II s » * o n ♦ « o >- ii i/i i >- ■— r* — Z . n — i ii I i •- v> l- c — 1 < — ly C»- m 11 > t J j on it — ii o z o ►- " o o > ii a o o -« -» O -< 1 H I Z IH I Tl Q ti 3> O I m z z o m z »- II I O •• zn o > z <_ n II O I z ♦ c» c o c CI > X m n ll — no M — i/i — i/) i/i ■n -n -i -< -i c — n — ^ 30 x n> ~ r\* -• — ~J — -. — E> J J II ♦ II o II ll •— .— •— o o o i •• a> » z z z — z x X CT i o o x ♦ -g ufl i > «» c >- c — r- r- -< •• -I. r- r- ti O — r- — Z o > n — x CTI-I H t« fTi ^ z > o -< a rn o — . -. — : o o o r> r- r- r~ r~ < < K> — > — I — c -" — r- o — o •** m a • o» Iftl — O — U* — -- — (nj o m "n *n z 30 3 -< IA n it t o Z i/i ii C C — c : X — CO *• ti \jt m ti ►— ** i o <• I > z r- Z o 13 -0 C JC 11 — — — z ^ M *■ — 30 ~ T ~ — V ~s* -. _ — — o > «« ti -n > i H ii ti r-:"o ~ O «Lnr - •— •• x •— «: — ♦ IS* II CV .*■ •— II A C"» r; _ *• li CD I II -D I > -«•- -I O X I I Z "3 II X o z ■o — — — I — z Z I z •- ~ m • *■ c z o r- — C C O I a ti -« c -h » r- o an m o o < O r^ PI • ■ i I oo > c, I II Ul Ii [/I I * C| •• cm -* > I- ii 2 O (^ '-. i/» o m ,x C ll O I c z -I - n ^ m — Z ■H O I O m Z -I o I CI : o i- z I in en z O O -l o a i- o m cr> c -I a ■ m i Z i ii c I— (; 66 o i-«-i-h- — CC>0 ' | ■ : ! i ! l | I O C 1 C* kO »c *o ,000 oo txaoao-j-j-g"^— JC , (J'O't>0 >, \/*n\*vji.*' ^ -l* *■ ^w^wNNNNfyMMi- 3 C m m -n ^> n i/i X -i — < m — — ■D •• < w- < PC l/> ■n -H -^ O m c — C (_ n 2 Ti jC rv -£ a It X o -< m 5 IT • • i— ■a • n U* ' CD 33 — c r- —1 — 1 (VI 70 m — X i Ul (Nj m I •n 2 -n - ^ < II 2 < fT n I ~" ■• CC L L ■# 3b r* m a ! — r* x >- *- — ii — n r- o r> no ii & ^ m f* < Z -n i .. > -D . C "n on C -i o • • Z J» I > CO — -< o >- r> r- ii — — ». — ♦ z .- -I X -1 m 3 i -H -I -< — O n ~ ■ :i -i ■ t r* o m ■onl- c — m •• -i II z O 3 • o > — r> — M M (/I — — z — o II ro O II ,- Ln •• II — -H 1 J 1 1 J Z N -H — z c ii •- Z II Z m m — CJ m — c. o •• o O n m er. X II V O "" c c & o M c O X m -I r- II 1— -( o n z ■n T m ^ f~ n cd —t H I m "• m ■— i m IX I — ^ -. Cl Z 2 -o m m -( X II C X 2 2 — m r> <- D O IA o m a — 2 J> CC o c o C I > z .. f— f > f" 1 -H r— -i r- r- r- , -H I f- II f- II • I> -© m 1— "0 ■o : CC c z T> ■o r- c ■ — . l/l C C -i C i/» • I t/i □ t/> C l/i i -i ^ I I • •^ i « f\» X X! r* • r\> N. r\> >— m « •«■ -C ■ w • • X s II a > Q ■H z c 1/1 < » C " 2 c" r> CP f— m (^ O m ►. -iOZ-"-«* ^-ii r t- h ii m i/i n ►— m ii t^ i— -* o — — — — O .TI O CD — A Z •-■ -* C ** 3 -• ot — O 1 — I 3* z — o — O • H rn ort o ■n -n -n c> a o JC 3D 73 O M •- -H V O t. V V II n o ^ -< !■• x -i -t mil. Z rn m Z z > a < n »• isj r> II M vol c — o o ♦ ^ _ m w , cc rn <- z m o = 1 ^ SI .. r- i^ tl -t T. X X Z " — c — c n — m p> ii oz n C — Z — — o •- — o (i z > > o X X 3 »l - o z o o c c -ol a m 1- NJ > .. CC (- .-n rr z — a >-> <) 67 X Z I I I- -H I X I Mil # I- -I • l/l VI V> o II r- 1 1 r* — < x X I — — r- x — v r— ii — x > —I o Z •• — — ' Z X r- -h l/> VI r* (A 50 — — ►- -< <3 -HA — II •• C r- — n ►• ll S ■» X — ■ SI « r~ h n r a -. — .. z. X > *- XI — *» m r- I r- — I I ♦ — — I I I z O * II o > m m ir -* vi vi •-. & m r- i I I i- ii VI IA z »> — I I •— l/l 1/1 .- c ii : is > > I X) — . ■ X .— I -i #■ . XI — . X > X XI — • x I II > O "3 3 -I O T1 f - -l o — -If I — ^ a — -i w l/i w w z X • -i w r- ■- — C I II I X •*! T3 -« O H Z I- — X o •- — -i — • • vi w I c -, w m — — .. z — O It .*• ; o II — t> — i x *• X <~i vi x ♦ -< > C B f» I — r- 31 < . t~ i— j» — -J S C — z < « » c-- i < — *• -inw- X — » II — c — x xi _ ^ r- -« — — c XI M 1/1 »* O l/l O > m — — r- o — r- — > i/i — "■ > l/i Tl X 11 (/I X t> C J> i/i x a -< c " t- — a > x o i &-<-<■. -< o ~ -t- — ~» ii • —*■!- — II — c f X H VI — r- I » C--I x v z x i- en C -I l/l z vi X • Z vi i— •n c OCX ii > > O X X -< Tl — z 1 w c -v.! n -i mo — r- a < rv ia •■ I — rr. n i - ! A »- -< *> 3. X r- < ii i" v -i -< X I Z 03 ~ n ♦ X Z z x > -i i o x x * -1 C — M Tl — O O — r- vi rsi -1 f\i « C ll 'I vi — •• l/i — • v> i/i ii f\rf l C -f < < — — fr « j ♦ n ii> vi ii r--^=»—("i(i*»- n z X C C — I -• rr Z t- a -i -n . C > rr - — Z X -i -< c — • a x -• •• i VI X rw vi < C — > X — i r. t> u. r x - ii •< — VI — ^ C — — 31 UJ > - A X •- ■< t- a -D — » 1*1 A Z VI VI -* O -| — — o ■< ■< o c X » O x r- Z ll m 3) ^* II x < j» h vi 1 3 C .* i M — I — -* I— VI o c -. CI I VI fM •• C »» < z M r ii •• O ■< O vi — M C VI — z m i ! mo w z <-> — D — II i^ I' - — -*- m o X — f~ - II II I X — Z — < X - X Tl ♦ Z -I o — -c X — ... V • X2I -< ♦ •■ Z — - Z X .. II -« ♦ O 3 X O •• X — (A ~ no I I I i 68 o CD tt CD Co -go "— — 3D r- n m — ma m ~ 2 ■nro ~m > D i/i «. -« m -n U cd n m o — □ t/i O J* X * IT -< a r- m TJ 2 — -. r- a m O r\i o z — o c c • c •■ ii p> m — •- o — •n rr *n H -n m x. o o n *— — I _, O — — m - — i ii >- i o II — TJ l/l o x tj • c ■> O (-. o I/I m i/i »« « — — ~-— — m q HI/i-4^h Tl rvj _ . m m — • rsj *- ~ j> l/i — — — r- *- l\> II II — 4 O ♦ • •-• l/i o m « (O ■^ o 2 — i a -n o r- x .. ■-. > ri z • n — X I- X < •• >- C"l IM I O — -I I X Tl TJ n z > , 2 *> ! X m i C 2 i I — 2 O G i - c O ' — TJ — II 2 II O O -1 C , .. < I i m m i r* CI — 2 O O ; — — CI ! X -<— D r- I— £. CT p* »— x x i 2 — m m •CO TJ C • c a> o x •h rr. i/i i -n n ~ • r- ■- — < ►— x rj m i ui m — •• I M — ■ t n — — n .— — H- TJ II P— i— X — f— ~ O > Q — II X -1 r~ pm -* || hihah ■—••—• — —I— > ■ xxx' m x X ■ Z J> > i I - C X m »- ~- n — m i- 2 In j> n 2 -h o • — •• o - a o m w* r- c •- — n t/l l— w v — | -i il II n x — i— i/i(/i m -» (E X 1 — vm -i 2 — O TJ Tl -I C 2 I -i O > — — II -t o > •• ii a ■— -( o -H ■ » X d — I -* i I fn — m 2 O I 21 -i i -t —i -i -< I — "I — 2 • C — o m Tj 2 ♦ O !* rr. I— zr i ) 69 o i i ^- c *o -»j 'o ^r jj a- -^ j- rv «o»aDCDoa l oooDaaaa»l(rODaDa»aaq» •»• G ^ *- */> h>J 1 *» N» C -JJfS> ** M •— C« (B-J^fSJ &■ *» W^SUirgC^'^Nai^^C'^ rw •• — 9 Qb 09 a> oc ot rv N» M l\» ' — m X ~ •M n -n f» H(/»"n r- I Ifl (/I M II i/i > -* C> S/* — Z — r- < a r- r- — c m — ~ 7. r-i -« ii ii r* ~ • t — * j "S» x •**■ ~- (T j» H i z * X 2 <-« — I X -< — Z II w < t* <•» <^> — m ■— m — •. 2 n r- r- c P" I f i/» — •■ i^ r- w n w(/*r> m • m i— I en o \r -H (/» — • • i/» — o ■— ~ o z r- 30 Z ~ I — * Ul — I — r- w ♦ H II • • f~ ]— c 'z i/* c C t X -n — i i- < •- •- f\3 v (~i v *- — 50 — — — — o ♦ Ul ■— •-. v — ■" •• II i > — *• X V -i «• l/l II I — — m < — .. o — O — J — O •- V ' •n « ^ > ■ ♦ I "j : a UJ V/l w ** X m ci z c I I ui *- -p ••- o ii ii "n m o < v- — I- — m •• •■• t/i r. v *- m — t„ — — — r- — ^ II T i— II f T -4 I — — >- (/* l/l 3C M — — T7 r- • M O II «_ — — .. — r- II »- O — « ZHB e -i i -^ m O i/» O -o -• o 3 CD CI t/» l/l T3 -« -I O I V to T i-i (/I -I — 221 O O ♦ — O C ►» i/> - Z I O 2 — C» — II II — X — X m o ii — r— a i/> ii w •• n ^ m X l/l 3) — — C3 l/l X X O — •. X V II o ►- O 33 C3 ►- O n C '< < — (Tim- Ci <"* o ro »— — t. m | ii ii «• r- o t- wi P . .. o lo ci pOoh o r o -" -4 •h !a o — °u_: r- o •- — mil- • • ■« •• m 2 m o m 2 -. 2 O 3 — X ^ 2 CI Oi C -I — a — 2 a- I I 2 rn m O 2 2 2 -< C O l- m bm — l/i ^ -i — I- -H C >« — -I (/I — O X -I .. 2 — ^ -^11 — -< -I o O I x ■ i-i n 2 2 2 o o c *fl o o o jo i- i- r- IO I o -* > -* l/l 30 » Tt -i m a — ?t r> » x — c m "i w 30 - O C (/IT — — . a • < O "* CD — O l/l z x m m . 2 2 ►- 3*. o — o ^ IT 3^ -I — M I l/l Ul -I -^ 3^ •- II X > — X II l/l o II 2 O O 2 •• I I X O m 2 l« o 70 ^-»_^-*-^-r— ►-. — — n ^- r- — *— w~ T- w— — r~ i OOOCOCi'lf*f"<'* p "iC*<'"C"OC'~C'O^3.0'©^3^'O^* , *J*'* , «3*3'O*».'*>-O'*J^3*;>O'W.o>O.J > ,. v v" •— ' V - ■ ^ ' ' *- ' l .. ■ V V > ' i. '. HJ >4^ ■*/ •*/ w ■** o -n o "n 2 r- jo n 73 * O > 3> »> H ■O -<(--< -• 7> - I- -, II J* > I > " X • | 7) — c — ! 7) 2 l/i Z i » - I — i -til* — X f\) A I J» c « « r- r- o ' >- -i O -o Z X J» ' 73 2 I ■ O » > I Cl» » H J> J> m ■H -< < 2 O » J> II — m o •• 2 — O < O o l/> o m > n » O — 73 03 ■n > m ■< -( r- > — I t/i x > rn m x - z > — r- < z a -o > II X - -o II — r- ■O 2 C r- — ■ to c ll in 13 -1 • • r- I C rn l/i 2 I o m T3 Z 7) o r- -o c 73 l/l >- m z r- c l/i t/i in ii In as t/i i b . m D I I rr m Z Z mi ■l^O- i -i -o - — 7- t- i m - I — Tl J* I II — - i *• x > . 3i rn - i a si I Q • m rr -l i 2 O — — X ■o N» m c — o x a TC -I O 03 IT n Tunc — > -H — J> O — II -7 Nr l\> — Q 7: — ii o |-n — rvj rv a: — C < .*> ij VI I — TJ (S3 C II -< o DO !» o ►•07n- ■nnNZTi r- .. o -4 I —i rn — "O O m V* < 71 > in ■HMnr h — • o o — rw < — C M — W < .. — II — W II ! I > r • — D 03 P ' i •-» r> : .in — • i -< ru I !»~iz 1+ — m H — m X rn •• m 3 Z tj m c o m •• m < i x 2 — — < -1 -h m m ti II 73 — • 03 M 7) « G3 m > » 71 C o < > 7rjrcj N •• 7< • NO 1/3 O p -ICO M — — — II II II I— — a > rr. v I r- i/ii/i- - -I 0* -- in > a ii Ti ii C33 — < 73 -i I y* in : X o: =3 i m •• •• : Z -n 2 I -o z c : c a c t -< tp m rr — • O — — • > M ~ I — I — II ' I > II 2 • — X C • t/i h p : InlMffli : (Tl — — I • Z ~ — I II II + > INJ •- I * " in » — XX — no r~ -i — > 7< II C3 " I r- Z — II C — X V — — I in X rr o z J> C_ M l\J II II II — r- rvj i\j o I * ♦ a: *- ►- -t — — 2 */» in -I -I CI X 73 O i M -t I- — II ■ r- X. r- 3C 3C 73 m X X I r- C — "D 03 • • -^ I — r- r- x -• — ii «• ■ ti r— c Z m — , i z ♦ — I o >- I -• I 1/1 C3 r- x T3 Z ■c a: • • — ♦XI- I o I — -I — i- C rn i O Z ! m o ■ X z -1 o 1/1 — oo < x rr m *■ o o - r= — i in 2 rr —l — ii * r- m — x r- c I i/i — • I — II 73 — *- X r- x x — t/i — i r~ isj Ni m *■ • T ^ P — Tl -3D — — II in N3 r- X -I II — r- 7< — O l^ — KJ « — c_ ♦ IT — — r- » r- ll •• • ■n — 7: . -• x — : O (/IVI< -< II • 73 . in JK M -L II r- I- — — ,ii r » T X in X -< -( — in in i/» — X r- r- n in — — i — I I r- ■■MI"W 7; i i r- x m II C -~ II II i o •• •- in, o c. o i o i — r*. •• •• i ♦ — m a ♦ — •< — i K, -- ii r\j -. — II J> — » v r— II — il II l\J o "n it a C ~ rr 3 • • co ♦ r~ • • — .— on ; L «• m o ■n ii i ii -i t ■ 71 2 •a 3 o < — o — — a— . -n ~ ■ «i n x - ^ . • ff> N • m ~y — — x -< O t -i o "" r- -i O — PJ •■ » J> I — — 3D P U H X3 II — ?-' — n — — — i\j -4 rv f~ X — X — — II — II ^ X l O O r- A ••an' •« r> m m O m Z 30 "O X O ■- « C • • II o » "" -( >- < I ♦ r*i >~ -< z c o CO 30 Z 3D C > V il il -H •-> O O O I -l -• •• T> rr m J> Z 2 z — Z ii j» x a -o > o ii C X CI O -H -1 30 II .. X :- o re o < •• Z J> — hj or > X > on — • r~ n o n o c rn n « -—OH cd — i -• a o«- X m 3 X m o 1 rn Z •• II z AH W X c » — c HS -< f- JO O m X r- > — II — -4 ~ > on > — f\J -* 1/1 -H C I CO HI > z 30 — n-l 1 n & O o m o z c i I i -I CO J> •O 3D C -< (/l — X — • 3D m «_ C 1 X ♦ - — V — T> — — II X C Z •• Z X -I O — ■O — J — — -< C !-> II On 30 X > -H II on -i — m X r m — •• z — r a "n — CD X on — -H -• ii — -h ii I CD II — Z ■ •o m c • ♦ Z Z" ;m •- o •. x •. •• p» m ^ — I r- u — — ■ — 1 1 o 72 fv fsj p. rv p» m 03 -g ~-i --i -*i -^i O -O 03 e tn ^ o — — O .- z -I J - II N o — 2 c= - 1 » -* r» -» 2 * l_ X - II -* * M l\) ♦ O — I -t -n ' — I — ■• m ui 2 — ■ I r- m o »H «• m — » i "Dl^ -"O Ifl I C -H • 53 rp ■ -I — <_ O 3 ■ Ni — r> •• i m — -• OUT •H CO X I . -, a ia i -I m o i » Z m -H O m x ~" 1 C N/ ( m — i — 2 -h r ' 2 V Q -I I i -o -c r- r- i —I 71 D 71 1 ~ p ~ M «-« •• > - II ■ X II x- |A X f- "4 > 03 -I {o -< -* m cv* — • tA 1 2 — • -" m p* c so 2 IA 2 -i ii jr. T) I > II — — i o PD rn *- — j» n ii I - 75 -< X ia ii »- i r. - B ° r- r x * i- I ~c_ c_ 1 T II II m i_ > <• .. rt)i\7ii« tA c x -■ rr -■ > > x -< x oin?)- il o o -> > — ;* j> -. x < * ♦ — 2 — 4. I- > I ^ t_ A IA > — •— m x ii ' C 2 x > V -o — J> X > X -< X O 2 — — J> o * ■- -< -i — - — I -( -. I mi x- • 2 rp "- ! 2 M • • — * On II ■• — »— X an — X m -i -n r> 1 — C m x x 2 Tl ia a — X < com x- IA s o *- IA -I I O O "P -i — -4 O rr. i SfJ ■ — l •• O I— • ■ — X O < IA ll —I > m rr i — i -o > n m o ■ r- > — c < — i »— ii ia o rr (a ... ini — •■ p- — - m ii ii il ■n r- r- >- O m rn ini X r- r- m a ii 2 s: —i I'- ll X rr o x m < O < 2 rr "• tA IA r- O IA Tl il il m o — i (A C < — o ♦ •> m ia f\j < ►- r- ll — m ■• ia il i - ii O 3T. O x- — ii m —i co ia c x c — u. — t -i ii -ijii •• O m O —2 x rii"! Q II II — c OCCIl -I 03—2 X « — , x m >wn 50 H > i o Tl m — r" j o ^Nr •• CA -. — o n WOJ nrro il ■"I m X fc«n 1 ia 2 'I m t « run n 2 O O ii a -h x o x x c co •• m -I •• 2 - PS m x "8 x m ii — D I X m o 3 <~ O r- - o — 00 2 X >- •- > IA £1 i- c ♦ o >- c -I o 1 O c -3 m H O x 2 2 H > -I O o a ~ z x o IM c — m ii ia o I -l o -< r- r- o 03 ^x r- (a m -< — X c/» •- II *• m Si O ( o 73 i i i l i N C n J I Ul LJ M fsj Ifv NJ inj *; l\j O *G,*0 -C O ro »— 4 CD it (/> z; k- -4 Q OJ X -. ii r- -. >/> — _ o rj r n 2 r — w -i I -« z a> (B ii o ci •• o — : -, *** J M ^ Z — il -n o .. _, o — rp ■o _ .. c z ■iifln -i > r- Z r- — Ci r- t/» — -. ^j i a r- c 7i - -* m O r- — Z ! o t/» c n> o •• m » I m ii — -o ■— • • •«* o c M a> c. -h o -h cm X .£ c?<_ m z ~ ii Z -* -i o ■D — . c * r- -i > m « < f cm mm _ r* (/l * II m l/l >« ^i C ■— -t 30 2 •• ;o — . v/> mf\j r : m — ■ -t I h o ■r.ffi — l/i o .. -. aj I z •■ o — — « C X — z>\ CI — a' o -<: Z TV — < ■ *J* IT* *» r- ■n > -» x M r- I ! > i BIBLIOGRAPHIC DATA SHEET 1. Report No. UIUCDCS-R-72-1+93 i. Tide and Subtitle TREE HEIGHT REDUCTION FOR PARALLEL PROCESSING OF BLOCKS OF FORTRAN ASSIGNMENT STATEMENTS 3. Recipient's Accession No. 5. Report Date Feb. 1972 ?. Author(s) Joseph Ching-Chi Han 8. Performing Organization Rept. No. >. Performing Organization Name and Address Department of Computer Science University of Illinois at Urbana- Champaign Urbana, Illinois 6l801 10. Project/Task/Work Unit No. 11. Contract/Grant No. NSF GRANT GJ ij-6-26-15- 568_ 12. Sponsoring Organization Name and Address National Science Foundation Washington, D . C . 13. Type of Report & Period Covered M.S. Thesis 14. 5. Supplementary Notes 6. Abstracts This thesis discusses the handling of arithmetic expressions for parallel processing, Algorithms and their implementations which perform backsubstitution and tree height reduction are included. Recurrence relations derived from DO loops are also discussed. 7. Key Words and Document Analysis. 17a. Descriptors 7b. Identifiers/Open-Ended Terms 7c. COSATI Field/Group 1. Availability Statement Release unlimited >R M NTIS-35 ( 10-7C 19. Security Class (This Report) UNCLASSIFIED 20. Security Class (This Page UNCLASSIFIED 21. No. of Pages 76 22. Price USCOMM-DC 40329-P7 I SA* \*H JUL 2 6 I 973 UNIVERSITY OF ILLINOIS-URBANA 510.84 IL6H no. C002 no. 493-498(1972 Tree height reduction (or parallel proce 3 0112 088400210 B HNH BflnHP Mflfiflfl MS i I ■■■jBh B 4> ■H ■ ■