Efficient, Proximity-Preserving Node Overlap Removal

4 downloads 348 Views 2MB Size Report
Gilbert. Zaccaro. LewisCarrano. Martin. Civin. YoungBoles. Livingston ..... Wheeler. Hildebrandt. Baker Pitcher. Root. Wilson. Chittenden. Sanderson. Gaba. Dines ..... Beebe. CatheyMiyata. OvertonVucic. Kitto. Chapman. III. Ragozin. Wulbert.
Journal of Graph Algorithms and Applications http://jgaa.info/ vol. 14, no. 1, pp. 53–74 (2010)

Efficient, Proximity-Preserving Node Overlap Removal Emden R. Gansner Yifan Hu AT&T Labs, Shannon Laboratory, 180 Park Ave., Florham Park, NJ 07932.

Abstract When drawing graphs whose nodes contain text or graphics, the nontrivial node sizes must be taken into account, either as part of the initial layout or as a post-processing step. The core problem in avoiding or removing overlaps is to retain the structural information inherent in a layout while minimizing the additional area required. This paper presents a new node overlap removal algorithm that does well at retaining a graph’s shape while using little additional area and time. As part of the analysis, we consider and evaluate two measures of dissimilarity for two layouts of the same graph.

Submitted: November 2008

Reviewed: March 2009 Final: November 2009 Article type: Regular paper

Revised: Accepted: May 2009 November 2009 Published: January 2010 Communicated by: I. G. Tollis and M. Patrignani

E-mail addresses: [email protected] (Emden R. Gansner) [email protected] (Yifan Hu)

54

Gansner and Hu Efficient Node Overlap Removal

1

Introduction

Most existing symmetric graph layout algorithms treat nodes as points. In practice, nodes usually contain labels or graphics that need to be displayed. Naively incorporating this can lead to nodes that overlap, causing information of one node to occlude that of others. If we assume that the original layout conveys significant aggregate information such as clusters, the goal of any layout that avoids overlaps should be to retain the “shape” of the layout based on point nodes. The simplest and, in some sense, the best solution is to scale up the drawing while preserving the node size until the nodes no longer overlap [30]. This has the advantage of preserving the shape of the layout exactly, but can lead to inconveniently large drawings. In general, overlap removal is typically a tradeoff between preserving the shape and limiting the area, with scaling at one extreme. Many techniques to avoid overlapping nodes have been devised. One approach is to make the node size part of the model of the layout algorithm. It is assumed that whatever structure that would have been exposed using point nodes will still be evident in these more general layouts. For hierarchical layouts, the node size can be naturally incorporated into the algorithm [11, 35]. For symmetric layouts, various authors [3, 19, 28, 37] have extended the springelectrical model [7, 12] to take into account node sizes, usually as increased repulsive forces. Node overlap removal can also be built into the stress model [26] by specifying the ideal edge length to avoid overlap along the graph edges. Such heuristics, however, cannot guarantee all overlaps will be removed, so they typically rely on overly large repulsive forces, or the type of post-processing step considered below. This problem was addressed by Dwyer et al. [5], who showed how to encode overlap avoidance, as well as many other layout features, as linear constraints in a stress function, and then optimize the stress function using stress majorization [13]. An alternative approach is to remove node overlaps as a post-processing step after the graph is laid out. Here the trade-off between layout size and preserving the graph’s shape is more explicit. In addition to many of the algorithms mentioned above that can be adapted for this use, a number of other algorithms have been proposed. For example, the Voronoi cluster busting algorithm [15, 29] works by iteratively forming a Voronoi diagram from the current layout and moving each node to the center of its Voronoi cell until no overlaps remain. The idea is that restricting each node to its corresponding Voronoi cell should preserve the relative positions of the nodes. In practice, because of the number of iterations often required and the use of a rectangular bounding box,1 the nodes in the final drawing can be homogeneously distributed within a rectangle, the graph bearing little resemblance to the original layout. Another group of post-processing algorithms is based on setting up pairwise node constraints to remove overlaps and then performing some procedure to 1 The latter might be improved by using something like α-shapes [8] to provide a more accurate boundary.

JGAA, 14(1) 53–74 (2010)

55

generate a feasible solution. The force scan algorithm [31] and its later variants [20, 24] proceed along these lines. More recently, Marriott et al. [30, 31] have presented quadratic programming algorithms which remove node overlaps while, if desired, minimizing node displacement. All of these techniques rely on solving separate horizontal and vertical problems. They behave differently if the layout is rotated by a degree that is not a multiple of π/2. We have also found that, in practice, this asymmetry often results in a layout with a distorted aspect ratio (e.g., Figure 4, bottom right). One desideratum proposed [31] for overlap removal is the preservation of orthogonal ordering, i.e., the relative ordering of the x and y coordinates of two nodes should be the same in the original layout and the one with overlaps removed. Thus, if a node is above and to the left of another node in the original layout, it is above and to the left in the derived one. The idea is that, in this manner, a user’s “mental map” of the graph is better preserved. Many of the algorithms described above either inherently preserve orthogonal ordering, or have simple variations that do. While preserving orthogonal ordering can be important, it alone cannot ensure that the relative proximity relations [23] between nodes are preserved. At other times, it is too restrictive, causing two highly-related nodes to be moved far apart due to some largely unrelated third node. For these reasons, our approach is to concentrate on proximity relations and not deal with orthogonal ordering. In this paper, we focus on the problem of removing overlaps rather than avoiding them. To this end, we discuss (Section 3) metrics for the similarity between two layouts which we believe better quantify the desired outcome of overlap removal than minimized displacement or such simpler measures as aspect ratio or edge ratio (the ratio of the longest and the shortest edge lengths). We then present (Section 4) a node overlap removal algorithm based on a proximity graph of the nodes in the original layout. Using this graph as a guide, it iteratively moves the nodes, particularly those that overlap, while keeping the relative positions between them as close to those in the original layout as possible. The algorithm is similar to the stress model [26] used for graph layout, except that the stress function involves only a sparse selection of all possible node pairs. Because of this sparse stress function, the algorithm is efficient and is able to handle very large graphs. In Section 5, we evaluate our algorithm and others using the proposed similarity measures. Finally, Section 6 presents a summary and topics for further study.

2

Background

We use G = (V, E) to denote an undirected graph, with V the set of nodes (vertices) and E edges. We use |V | and |E| for the number of vertices and edges, respectively. We let xi represent the current coordinates of vertex i in Euclidean space. For this paper we are interested in 2D layout, therefore xi ∈ R2 . The aim of graph drawing is to find xi for all i ∈ V so that the resulting

56

Gansner and Hu Efficient Node Overlap Removal

drawing gives a good visual representation of the information in the graph. Two popular methods, the spring-electrical model [7, 12], and the stress model [26], both convert the problem of finding an optimal layout to that of finding a minimal energy configuration of a physical system. We shall describe the stress model in more detail since we will use a similar model for the purpose of node overlap removal in Section 4. The stress model assumes that there are springs connecting all nodes of the graph, with the ideal spring length equal to the graph theoretical distance between nodes. The energy of this spring system is X wij (kxi − xj k − dij ) 2 , (1) i6=j

where dij is the graph theoretical distance between vertices i and j, and wij is a weight factor, typically 1/dij 2 . The layout that minimizes the above stress energy is an optimal layout of the graph. There are several ways to find a solution of the minimization problem. An iterative approach can be employed. Starting from a random layout, the total spring force on each vertex is calculated, and the vertex is moved along the direction of the force for a certain step length. This process is repeated, with the step length decreasing every iteration, until the layout stabilizes. Alternatively, a stress majorization technique can be employed, where the cost function (1) is bounded by a series of quadratic functions from above, and the process of finding an optimum becomes that of solving a series of linear systems [13]. In the stress model, the graph theoretical distance between all pairs of vertices has to be calculated, leading to quadratic complexity in the number of vertices. There have been attempts (e.g., [2, 13]) to simplify the stress function by considering only a sparse portion of the graph. Our experience, however, with real-life graphs is that these techniques may fail to yield good layouts. Therefore, algorithms based on a spring-electrical model employing a multilevel approach and an efficient approximation scheme for long range repulsive forces [18, 22, 36] are still the most efficient choices to lay out large graphs without consideration of the node size.

3

Measuring Layout Similarity

The outcome of an overlap removal algorithm should be measured in two aspects. The first aspect is the overall bounding box area: we want to minimize the area taken by the drawing after overlap removal. The second aspect is the change in relative positions. Here we want the new drawing to be as “close” to the original as possible. It is this aspect that is hard to quantify. When total node movement is optimized [6, 24], comparison is reduced to measuring the amount of displacement of the vertices in the new layout from those of the original graph. This measurement does not take into account possible shifts, scalings or rotations, nor the importance of maintaining the relative position among vertices.

JGAA, 14(1) 53–74 (2010)

57

As far as we are aware, there is no definitive way to measure similarity of two layouts of the same graph. We adopt two approaches. The first approach is based on measuring changes in lengths of edges. The second approach, which is a modification of the metric of Dwyer et al. [6], is based on measuring the displacement of vertices, after discounting shift, scaling and rotation. Before defining these two measures of similarity, we first introduce the concept of a proximity graph. A proximity graph is a graph derived from a set of points in space: points that are “neighbors” to each other in the space form an edge in the proximity graph. There are many ways to create a proximity graph [25]. In this paper, we shall work with the Delaunay triangulation (DT), which is an approximation to the proximity graph, and has the advantage being rigid. Two points are neighbors in DT if and only if there exists a sphere passing through these two points, and no other points lie in the interior of this sphere. One way to measure the similarity of two layouts is to measure the distance between all pairs of vertices in the original and the new layout. If the two layouts are similar, then these distances should match, subject to scaling. This is known as Frobenius metric in the sensor localization problem [9]. Calculating all pairwise distances is expensive for large graphs, both in CPU time and in the amount of memory. As we want a metric feasible for very large graphs, we instead form a DT of the original graph, then measure the distance between vertices along the edges of the triangulation for the original and new layouts.2 If x0 and x denote the original and the new layout, and EP is the set of edges in the triangulation, we calculate the ratio of the edge length rij =

kxi − xj k , {i, j} ∈ EP , kx0i − x0j k

then define a measure of the dissimilarity as the normalized standard deviation rP (rij −¯ r )2 |EP |

{i,j}∈EP

σdist (x0 , x) =



,

where r¯ =

1 |EP |

X

rij

{i,j}∈EP

is the mean ratio. The reason we measure the edge length ratio along edges of the proximity graph, rather than along edges of the original graph, is that if the original graph is not rigid, then even if two layouts of the same graph have the same edge lengths, they could be completely different. For example, think of the graph of a square, and a new layout of the same graph in the shape of a nonsquare rhombus. These two layouts may have exactly the same edge lengths, 2 Another possibility would be to sample O(|V |) out of the |V |(|V | − 1)/2 possible vertex pairs. Some care is needed in making sure that the resulting graph is rigid.

58

Gansner and Hu Efficient Node Overlap Removal

4

3 4

1

2

1

3

2

Figure 1: The edge lengths of these two layouts of a non-rigid graph are exactly the same, but the layouts are clearly different.

but are clearly different (see Figure 1). The rigidity of the triangulation avoids this problem. Notice that σdist (x0 , x) is not symmetric with regard to which layout comes first. Furthermore, in theory, this non-symmetric version could class a layout and a foldover of it (e.g., a square grid with one half folded over the other) as the same. We can symmetrize it by defining the dissimilarity between layout x and x0 as (σdist (x0 , x) + σdist (x, x0 ))/2. This also resolves the “foldover problem”. The symmetric version may be more appropriate if we are comparing two unrelated layouts. Since, however, we are comparing a layout derived from an existing layout, we feel that the asymmetric version is adequate. An alternative measure of similarity is to calculate the displacement of vertices of the new layout from the original layout [6]. Clearly a new layout derived from a shift, scaling and rotation should be considered identical. Therefore we modify the straight displacement calculation by discounting the aforementioned transformations. This is achieved by finding the optimal scaling, shift and rotation that minimize the displacement. The optimal displacement is then a measure of dissimilarity. We denote by scalars r and θ the scaling and rotation,   cos(θ) sin(θ) T = (2) − sin(θ) cos(θ) the rotation matrix, p ∈ R2 the translation, and define the displacement dissimilarity as X σdisp (x0 , x) = minp∈R2 ,θ,r∈R krT xi + p − x0i k2 , (3) i∈V

This is a known problem in the Procrustes analysis [1, 16] and the solution (the Procrustes statistic) is T

T

1

σdisp (x0 , x) = tr(X 0 X 0 ) − (tr((X T X 0 X 0 X) 2 )2 tr(X T X),

(4)

where tr(A) is the trace of a matrix A, X is a matrix with columns xi − x¯, X 0 is a matrix with columns x0i − x¯0 , and x ¯ and x ¯0 are the centers of gravity of the new and original layout.

JGAA, 14(1) 53–74 (2010)

59

j j

i

i

Figure 2: Nodes i and j overlap (left). The overlap factor, according to (5), is min((2 + 2)/3, (1 + 2)/2) = 1.33. Expanding the edge i − j by 33% removes the overlap (right).

In the above we do not consider shearing, since we believe a layout derived from shearing of the original should not be considered identical to the latter. The quality of an overlap removal algorithm is a combination of how similar the new layout is to the original, and how small an area it occupies. The simplest overlap removal algorithm is that of scaling the layout until all overlaps are removed. This has a dissimilarity of 0, but usually occupies a very large area. The alternative extreme is to pack the nodes as close to each other as possible while ignoring the original layout. This will have the smallest area, but a large dissimilarity. A good solution should be a compromise between these two extremes. We now describe one candidate.

4

A Proximity Stress Model for Node Overlap Removal

Our goal is to remove overlaps while preserving the shape of the initial layout by maintaining the proximity relations [23] among the nodes. To do this, we first set up a rigid “scaffolding” structure so that while vertices can move around, their relative positions are maintained. This scaffolding is constructed using an approximate proximity graph, in the form of a Delaunay triangulation (DT). Once we form a DT, we check every edge in it and see if there are any node overlaps along that edge. Let wi and hi denote the half width and height of the node i, and x0i (1) and x0i (2) the current X and Y coordinates of this node. If i and j form an edge in the DT, we calculate the overlap factor of these two nodes tij = max min

hi + hj wi + wj , |x0i (1) − x0j (1)| |x0i (2) − x0j (2)|

!

!

,1 .

(5)

For nodes that do not overlap, tij = 1. For nodes that do overlap, such overlaps can be removed if we expand the edge by this factor, see Figure 2. Therefore we want to generate a layout such that an edge in the proximity graph has the

60

Gansner and Hu Efficient Node Overlap Removal

ideal edge length close to tij kx0i − x0j k. In other words, we want to minimize the following stress function X wij (kxi − xj k − dij ) 2 . (6) (i,j)∈EP

Here dij = sij kx0i − x0j k is the ideal distance for the edge {i, j}, sij is a scaling factor related to the overlap factor tij (see (7)), wij = 1/kdijk2 is a weighting factor, and EP is the set of edges of the proximity graph. We call (6) the proximity stress model in obvious analogy. Because DT is a planar graph, which has no more than 3|V | − 6 edges, the above stress function has no more than 3|V | − 6 terms. Furthermore, because DT is rigid, it provides a good scaffolding that constrains the relative position of the vertices and helps to preserve the global structure of the original layout. It is important that we do not attempt to remove overlaps in one iteration by using the above model with sij = tij . Imagine the situation of a regular mesh graph, with one node i of particularly large size that overlaps badly with its nearby nodes, but the other nodes do not overlap with each other. Suppose nodes i and j form an edge in the proximity graph, and they overlap. If we try to make the length of the edge equal tij kx0i − x0j k, we will find that tij is a number much larger than 1, and the optimum solution to the stress model is to keep all the other vertices at or close to their current positions, but move the large node i outside of the mesh, at a position that does not cause overlap. This is not desirable because it destroys the original layout. Therefore we damp the overlap factor by setting sij = min(tij , smax )

(7)

and try to remove overlap a little at a time. Here smax > 1 is a number limiting the amount of overlap we are allowed to remove in one iteration. We found that smax = 1.5 works well. After minimizing (6), we arrive at a layout that may still have node overlaps. We then regenerate the proximity graph using DT and calculate the overlap factor along the edges of this graph, and redo the minimization. This forms an iterative process that ends when there are no more overlaps along the edges of the proximity graph. For many graphs, the above algorithm yields a drawing that is free of node overlaps. For some graphs, however, especially those with nodes having extreme aspect ratios, node overlaps may still occur. Such overlaps happen for pairs of nodes that are not near each other, and thus do not constitute edges of the proximity graph. Figure 3(a) shows the drawing of a graph after minimizing (6) iteratively, so that no more node overlap is found along the edges of the Delaunay triangulation. Clearly, node 2 and node 4 still overlap. If we plot the Delaunay triangulation (Figure 3(b)), it is seen that nodes 2 and 4 are not neighbors in the proximity graph, which explains the overlap. To overcome this situation, once the above iterative process has converged so that no more overlaps are detected over the DT edges, we apply a scan-

JGAA, 14(1) 53–74 (2010)

8

7

6

9

8 5

1

2 with a tall label

6

9

5

11 10

7

61

11 4 with an extremely looong label 3

10 1

2 with a tall label

4 with an extremely looong label 3

Figure 3: (a): A graph layout where nodes 2 and 4 overlap. (b): the proximity graph (Delaunay triangulation) of the current layout. No two nodes linked by an edge of the proximity graph overlap.

line algorithm [6] to find all overlaps, and augment the proximity graph with additional edges, where each edge consists of a pair of nodes that overlap. We then re-solve (6). This process is repeated until the scan-line algorithm finds no more overlaps. We call our algorithm PRISM (PRoxImity Stress Model). Algorithm 1 gives a detailed description of this algorithm. Algorithm 1 Proximity stress model based overlap removal algorithm (PRISM) Input: coordinates for each vertex, x0i , and bounding box width and height {wi , hi }, i = 1, 2, . . . , |V |. repeat Form a proximity graph GP of x0 by Delaunay triangulation. Find the overlap factors (5) along all edges in GP . Solve the proximity stress model (6) for x. Set x0 = x. until (no more overlaps along edges of GP ) repeat Form a proximity graph GP of x0 by Delaunay triangulation. Find all node overlaps using a scan-line algorithm. Augment GP with edges from node pairs that overlap. Find the overlap factor (5) along all edges of GP . Solve the proximity stress model (6) for x. Set x0 = x. until (no more overlaps) We now discuss some of the main computational steps in the above algorithm. Delaunay triangulation can be computed in O(|V | log |V |) time [10, 17, 27]. We used the mesh generator Triangle [33, 34] for this purpose. The scan-line algorithm can be implemented to find all the overlaps in O(l|V |(log |V | + l)) time [6], where l is the number of overlaps. Because we only apply the scan-line algorithm after no more node overlaps are found along edges of the proximity graph, l is usually a very small number, hence this step can be considered as taking time O(|V | log |V |). The proximity stress model (6), like the spring model (1), can be solved

62

Gansner and Hu Efficient Node Overlap Removal

using the stress majorization technique [13] which is known to be a robust process for finding the minimum of (1). The technique works by bounding (6) with a series of quadratic functions from above, and the process of finding an optimum becomes that of finding the optimum of the series of quadratic functions, which involves solving linear systems with a weighted Laplacian of the proximity graph. We solve each linear system using a preconditioned conjugate gradient algorithm. Because we use DT as our proximity graph and it has no more than 3|V | − 6 edges, each iteration of the conjugate gradient algorithm takes a time of O(|V |). Overall, therefore, Algorithm 1 takes O(t(mk|V | + |V | log |V |)) time, where t is the total number of iterations in the two main loops in Algorithm 1, m is the average number of stress majorization iterations, and k the average number of iterations for the conjugate gradient algorithm. In practice, we found that the majority of CPU time is spent in repeatedly solving the linear systems (which takes a total time of O(tmk|V |)). We terminate the conjugate gradient algorithm if the relative 2-norm residual for the linear system involved in the stress majorization process is less than 0.01. A tighter tolerance is not necessary because the solution of each linear system constitutes an intermediate step of the stress majorization. Furthermore, solution of the proximity stress model (6) is an intermediate step itself in Algorithm 1, so we do not need to solve (6) accurately either. Hence we set a limit of mmax iterations. By experimentation, we found that a smaller value mmax gives a faster algorithm, and that, in terms of quality, a smaller mmax is often just as good as, if not better than, a larger value of mmax . Therefore, we set mmax = 1.

5

Numerical Results

To evaluate the PRISM algorithm and other overlap removal algorithms, we apply them as a post-processing step to a selection of graphs from the Graphviz [14] test suite. This suite, part of the Graphviz source distribution, contains many graphs from users. As such, these are good examples of the kind of graphs actually being drawn. Our baseline algorithm is Scalable Force Directed Placement (SFDP) [22], a multilevel, spring-electrical algorithm. Using the layout of SFDP, we then apply one of the overlap removal algorithms to get a new layout that has no node overlaps, and compare the new layout with the original in terms of dissimilarity and area. In Table 1, we list the 14 test graphs, the number of vertices and edges, as well as CPU time3 for PRISM and three other overlap removal algorithms. The graphs are selected randomly with the criteria that a graph chosen should be connected, and is of relatively large size. We compared PRISM with an implementation of the solve VPSC algorithm [6] provided by its authors. We also evaluated the companion algorithm satisfy VPSC. This offered, at best, a 2% 3 All timings were derived on a 4 processor, 3.2 GHz Intel Xeon CPU, with 8.16 GB of memory, running Linux.

JGAA, 14(1) 53–74 (2010)

63

Table 1: Comparing the CPU time (in seconds) of several overlap removal algorithms. Initially the layout is scaled to an average edge length of 1 inch. Graph b100 b102 b124 b143 badvoro mode ngk10 4 NaN dpd root rowe size unix xx

|V | 1463 302 79 135 1235 213 50 76 36 1054 43 47 41 302

|E| 5806 611 281 366 1616 269 100 121 108 1083 68 55 49 611

PRISM 1.44 0.14 0.03 0.04 0.54 0.09 0.01 0.01 0.01 0.89 0.00 0.01 0.01 0.13

VPSC 14.85 0.10 0.01 0.01 71.15 0.09 0.00 0.01 0.01 7.81 0.00 0.00 0.00 0.10

VORO 350.7 4.36 0.02 0.47 351.51 2.15 0.02 0.11 0.02 398.49 0.04 0.06 0.04 8.19

ODNLS 258.9 5.7 0.5 1.3 73.6 2.1 0.14 0.27 0.1 46.9 0.1 0.09 0.07 5.67

reduction in time, while producing almost identical results concerning displacement, dissimilarity and area. For this reason, in the sequel, we only consider the solve VPSC algorithm, hereafter denoted as VPSC.4 We also evaluated the Voronoi cluster busting algorithm [15, 29], denoted by VORO, as well as the ODNLS algorithm of Li et al. [28], which relies on varied edge lengths in a spring embedder. We note, in passing, that we also tested scaling using the algorithm of Marriott et al. [30]. As expected, it outperformed all other algorithms in terms of speed and dissimilarity, but at an unacceptably high cost in area. For example, on the b143 graph, the time and dissimilarity were essentially 0 but the area was 82.2. Overall, scaling produced areas at least 4.5 times larger than PRISM and, more typically, at least an order of magnitude larger. We therefore remove scaling from further consideration. The initial layout by SFDP is scaled so that the average edge length is 1 inch. From the table, it is seen that PRISM is usually faster, particularly for large graphs on which it scales much better. The others are slow for large graphs, with VORO the slowest. Table 2 compares the dissimilarities and drawing area of the four overlap removal algorithms. The smaller the dissimilarities and area, the better. The ODNLS algorithm performs best in terms of smaller dissimilarity, followed by PRISM, VPSC and VORO. In terms of area, PRISM and VPSC are pretty close, and both are better than ODNLS and VORO, which can give ex4 Both versions of the VPSC algorithm can be extended to support the preservation of orthogonal ordering. We did not have an opportunity to check these versions.

64

Gansner and Hu Efficient Node Overlap Removal

tremely large drawings. Indeed, in terms of area, scaling outperformed ODNLS and VORO in 20%-30% of the examples. Comparing PRISM with VPSC, Table 2 shows that PRISM gives smaller dissimilarities most of the time. The two dissimilarity measures, σdist and σdisp , are generally correlated, except for ngk10 4 and root. Based on σdist , VPSC is better for these two graphs, while based on σdisp , PRISM is better. The first row in Figure 4 shows the original layout of ngk10 4, as well as the result after applying PRISM and VPSC. Through visual inspection, we can see that PRISM preserved the proximity relations of the original layout well. VPSC “packed” the labels more tightly, but it tends to line up vertices horizontally and vertically, and also produces a layout with aspect ratio quite different from the original graph. It seems that σdist is not as sensitive in detecting differences in aspect ratio. This is evident in drawings of the root graph (Figure 4, second row): VPSC clearly produced a drawing that is overly stretched in the vertical direction, but its σdist is actually smaller! Consequently, we conclude that σdisp may be a better dissimilarity measure. The fact that VPSC can produce very tall and thin, or very short and wide, layouts is not surprising, and has been observed often in practice. VPSC works in the vertical and horizontal directions alternatively, each time trying to remove overlaps while minimizing displacement. As a result, when starting from a layout with severe node overlaps, it may move vertices significantly along one direction to resolve the overlaps, creating drawings with extreme aspect ratios. In fact, for 9 out of 14 test graphs, VPSC produces layouts with extreme aspect ratios. PRISM does not suffer from this problem. When starting from a layout that is scaled sufficiently so that relative fewer nodes overlap, VPSC’s performance can be improved. Table 3 compares the four overlap removal algorithms, starting from layouts that are scaled to give an average edge length that equals 4 times the average node size. Here the size of a node is calculated as the average of its width and height. From the table, we can see that in terms of dissimilarity, PRISM and VPSC are now similar, closer to the better performing ODNLS. In terms of drawing area, PRISM is better than VPSC, with VORO and ODNLS much larger. When visually inspected, VPSC again suffers from extreme aspect ratio issue on at least 5 out of the 14 graphs (b100, b143, badvoro, mode, root). Figure 5 shows the layout of badvoro (first row), on which VPSC performed badly based on the two similarity measures. In the same figure, we also show b124 (second row), on which PRISM is rated worse than VPSC based on the same measures. On badvoro it is clear that VPSC performed badly, as the similarity measures suggest. On the other hand, if we look at b124, VPSC perhaps performed better than PRISM, but not as clearly as the similarity measures suggest. Overall, visual inspection of the drawings of these 14 graphs, as well as drawings for graphs in the complete Graphviz test suite (a total of 204 graphs in March 2008), shows that PRISM performs very well, and is overall better and faster than VPSC and VORO. The ODNLS algorithm preserves similarity somewhat better than PRISM, but at much higher costs in term of speed and area. Considering a larger collection of graphs, Table 4 compares PRISM with

JGAA, 14(1) 53–74 (2010)

65

Table 2: Comparing the dissimilarities and area of overlap removal algorithms. Results shown are σdist , σdisp and area. Area is measured with a unit of 106 square points. Initially the layout is scaled to an average length of 1 inch. Graph b100 b102 b124 b143 badvoro mode ngk10 4 NaN dpd root rowe size unix xx Graph b100 b102 b124 b143 badvoro mode ngk10 4 NaN dpd root rowe size unix xx

σdist 0.74 0.44 0.65 0.59 0.34 0.59 0.41 0.4 0.34 0.71 0.33 0.37 0.39 0.42 σdist 0.8 0.86 0.99 2.29 0.97 0.48 0.56 0.48 4.09 0.49 0.62 0.6 0.97

PRISM σdisp area 0.38 14.05 0.25 2.45 0.37 1.04 0.35 1.5 0.15 12.58 0.37 0.79 0.16 0.33 0.2 0.72 0.18 0.25 0.3 16.99 0.14 0.22 0.2 0.47 0.23 0.39 0.25 3.96 VORO σdisp area 0.3 31.79 0.39 13.42 0.45 22.91 0.65 3.01E3 0.54 10.84 0.26 0.52 0.28 5.04 0.32 0.45 0.94 6.93E9 0.26 0.95 0.35 1.27 0.35 0.85 0.34 58.83

σdist 0.76 0.58 0.78 0.78 0.61 1.02 0.39 0.54 0.51 0.6 0.44 0.77 0.51 0.57 σdist 0.33 0.30 0.33 0.49 0.31 0.38 0.22 0.26 0.37 0.29 0.27 0.32 0.26 0.29

VPSC σdisp area 0.72 18.91 0.8 2.71 0.73 0.91 0.83 2.16 0.75 13.85 0.77 1.29 0.3 0.25 0.65 0.71 0.4 0.18 0.75 17.68 0.31 0.19 0.74 0.4 0.67 0.36 0.82 3.9 ODNLS σdisp area 0.20 1.02E3 0.16 53.13 0.19 14.79 0.34 23.79 0.26 318.66 0.27 49.45 0.13 2.30 0.15 5.10 0.29 1.30 0.22 950.01 0.12 2.10 0.20 4.14 0.13 2.35 0.14 74.00

66

Gansner and Hu Efficient Node Overlap Removal

26

37 44 42

22

26 1

13 49

26

40

22 29 2 31 32

37

22

3

30

13

47

28

31

2

2

47

38

24

39

3

8 32

13

9

38

24 18

30

41

40 29

20 28 8 933 16 10 6 39 11 46 35 25 48 43 14 15 45 7 1250 19 27 34 17 4 36 21 5 23 47 38

42

44

1

44 42 3741

30

41

40

1

49

20

18

35

14

7

10 16

11

39

33

6

31

29

11

32

25

16

50

46

24 49

14

48 43

50

7 12

34

34

15

15

48

6

45

27 19

45

36 17

4

5

4

17

5

21

36

23

21

ngk10 4

33

19

27

23

3 9

10

20

43

12

46

25

35 18

28

8

ngk10 4+PRISM

ngk10 4+VPSC 3ef07ae75d29a707

805004328dad9d315d

3d475ea3aeca51b60212dd

5838586c293d455

f4c69e5e212f89348122e8

6b3f3fa236bb90592d23a

678bf739c344b9ad41da1

dd12f26f8d9bb55

6fb7a84e370ef70feac5cb

30d9d350943c0e3ff7594b50

6d4a4a5a5af91b895272c30

4280833ef80172 4280833ef80172 4280833ef80172 83c397b8bf7f 396b16a892fe 396b16a892fe 83c397b8bf7f 83c397b8bf7f 396b16a892fe

5d69639a5e3bdd3d

e0ad365c2fb444358201

3124d3a6ed3381a6341c6

293a225dc56dd1e0564e6bb

b5e86c73d1198f

d550a7f392c787661aadd48

b07bbdc8cca5985d4c4

b5e86c73d1198f

fe4e848cb5291ee59a2

0b8694c9ef9b27b9c3d8

e7a887d88c2318beba51

81e20155999fa64e0ae6fd

284f14a259991806654e74

46125fcc583c0f494a3a1d3

6139fa6adc88d 236E bbe0a8f93dc1 e3aefac763 bb5e89c8963 e3aefac763 278E 358E 50023f6f88

df5dba74c75b228de48c

e3aefac763 2342b759c03 9d8988c0945d6 4280833ef80172 4280833ef80172 db6c4213a717bc 398E

71512ec7d43f958f2b6da

7e493ee44b28 3f0a2b4eb62f 552E 214E 634E 438E 402E 400E 406E 768E 448E 408E 504E 476E 404E 216E

efe092824916a5637ee35d439589

da24f74aad2ff519009d1f38c

16da5f1301b36df4df0f

1c07453d584f3d14b1876fdb

4a36db80f1ab1e97

460aed10cc9 460aed10cc9 460aed10cc9 51e045ca826077ae765

460aed10cc9

8fa622d9f842c5572a545ed72982

666f11bb45c3a8dcf26e1ed79

34c8c8dc0f6e41c7e7b2

c4d32527b670afb370d643

d93a80739fc1edb41a11b7294

86569bffb49adf6b3d0ebac

69fdd1a1f4768c5efe7

c4f31ea3844e12da27ad47c6

383db224d7508ef072bea21d0

17dafa5ebaafd48440e3

d378760b814eaecb6efe636e0efc4

e842

b69e426d974e1907e88

412E

30c3f3bf8463d3843dc57d8e98

4dccb e851f5ddd920

c90f755c8b6612d

48398d080dfcccced48da1980

2832ed5cea6

e153c6e676c7369b285b4e9033a

3f16509139c7dad5163b91799

e03b8bc0435a 660ffeb76fc59 35b8742610 fb16636aae 975fedfb64df b5f038f79a3 81bcc35f82891

fe6be3206549f5b5564acde84783

3089106e3b

00cbeb87c182ca0785f

663E 3089106e3b

731857fe189fb398e80a0594 e842

317E

b5c747cc9

3089106e3b

56292d076643

3711

866808df

82a65ed4b69

431430c49

bf 0bc7f8f513e0e74b270

9be88247

23dc3a52fed9c119610b5e8

e1e4c23db39d8bd633c3a

6331b3f 244E f3c4311de0e931f08c232b 1a830d9f c71aa521578164debd0c5 8b092 b4ce21e0a3df1d097277d6

ce 51ec95518d1b3 3089106e3b

ff07977fca5513098d220d1eb3a

05fed5e

3b6b2c549de670d7bf5fc0ee

664E

d13da6273c9b4da

e1fa7f549e5a0893bb42da5

c5255d 010957669f3770aac 1ed5d7f63b8c6 84907547f36d0ff7 318E 155d892827c33ed3cae3

c3bbf4

a9497e0757b0969bde707ed5

681E

a849f9d352e

bbb13dc62adf2de2a42b6

5c6a2

a3b6df27179b175c88fa4c9cf9f

aff6d7896e0e142bbc3e78

71e6b a849f9d352e 78 4f05b

a849f9d352e

ad9142a65f5eab78b4ca5e

8292af691429f8d9ed481ff71ffd

6282bc21f6

3db761b596844f133c

916c686a1e82dba72524a

682E

3ef07ae75d29a707 f4c69e5e212f89348122e8 3d475ea3aeca51b60212dd 805004328dad9d315d 5838586c293d455 6fb7a84e370ef70feac5cb 678bf739c344b9ad41da1 6b3f3fa236bb90592d23a dd12f26f8d9bb55 30d9d350943c0e3ff7594b50 6d4a4a5a5af91b895272c30 4280833ef80172 4280833ef80172 396b16a892fe 396b16a892fe 83c397b8bf7f 83c397b8bf7f d550a7f392c787661aadd48 b07bbdc8cca5985d4c4 293a225dc56dd1e0564e6bb e0ad365c2fb444358201 3124d3a6ed3381a6341c6 5d69639a5e3bdd3d b5e86c73d1198f fe4e848cb5291ee59a2 e7a887d88c2318beba51 81e20155999fa64e0ae6fd 0b8694c9ef9b27b9c3d8 284f14a259991806654e74 46125fcc583c0f494a3a1d3 6139fa6adc88d 236E e3aefac763 50023f6f88 bb5e89c8963 bbe0a8f93dc1 e3aefac763 358E 278E df5dba74c75b228de48c 9d8988c0945d6 4280833ef80172 e3aefac763 2342b759c03 4280833ef80172 71512ec7d43f958f2b6da db6c4213a717bc 398E 7e493ee44b28 3f0a2b4eb62f 552E 438E 402E 768E 400E 634E 214E 406E 504E 448E 408E 476E 404E 216E efe092824916a5637ee35d439589 1c07453d584f3d14b1876fdb da24f74aad2ff519009d1f38c 16da5f1301b36df4df0f 4a36db80f1ab1e97 460aed10cc9 460aed10cc9 8fa622d9f842c5572a545ed72982 51e045ca826077ae765 666f11bb45c3a8dcf26e1ed79 34c8c8dc0f6e41c7e7b2 c4d32527b670afb370d643 d93a80739fc1edb41a11b7294 86569bffb49adf6b3d0ebac 69fdd1a1f4768c5efe7 383db224d7508ef072bea21d0 c4f31ea3844e12da27ad47c6 17dafa5ebaafd48440e3 e842 d378760b814eaecb6efe636e0efc4 412E b69e426d974e1907e88 30c3f3bf8463d3843dc57d8e98 4dccb e851f5ddd920 e153c6e676c7369b285b4e9033a 3f16509139c7dad5163b91799 c90f755c8b6612d 2832ed5cea6 48398d080dfcccced48da1980 e842 e03b8bc0435a 660ffeb76fc59 975fedfb64df 35b8742610 b5f038f79a3 fb16636aae 81bcc35f82891 b5c747cc9 fe6be3206549f5b5564acde84783 00cbeb87c182ca0785f 56292d076643 866808df 3089106e3b 663E 431430c49 731857fe189fb398e80a0594 3089106e3b 82a65ed4b69 317E 3711 bf 0bc7f8f513e0e74b270 e1e4c23db39d8bd633c3a 51ec95518d1b3 9be88247 1a830d9f 6331b3f 8b092 244E ce 23dc3a52fed9c119610b5e8 c71aa521578164debd0c5 f3c4311de0e931f08c232b b4ce21e0a3df1d097277d6 3b6b2c549de670d7bf5fc0ee 05fed5e e1fa7f549e5a0893bb42da5 ff07977fca5513098d220d1eb3a d13da6273c9b4da 1ed5d7f63b8c6 c5255d 664E 010957669f3770aac a9497e0757b0969bde707ed5 681E c3bbf4 318E 155d892827c33ed3cae3 84907547f36d0ff7 a3b6df27179b175c88fa4c9cf9f aff6d7896e0e142bbc3e78 bbb13dc62adf2de2a42b6 5c6a2 a849f9d352e 71e6b 8292af691429f8d9ed481ff71ffd ad9142a65f5eab78b4ca5e 4f05b 682E 3db761b596844f133c a849f9d352e 78 6282bc21f6 c10cb9baf4dcb43e24 916c686a1e82dba72524a 6a3c6921b0aeceda3 a97ef281eafc34b1630d450a1df 7816c3ae29c0bc713 4856000a6802ddfc121ef40432297 876d120b38b0e88817 a141a557a60912051f3c135 71e6b de34214b4c258c9333ec3 460aed10cc9 69ce90c9b2 541ab86a2e 6577 be233fafa38d931d894 dd84fe6a65cfac7bca03ebd 0f5db6ce12751ddcc64e f36cce089 d2498 212af4 f33ec11db496f7bfcb024f e920b915087 89a36b13f8c344b ac6e99186 a5a f2a57e4d4f0cec516891e3 e5 587E 8a9eb2806b0aa 247e407f45b353f8 a849f9d352e b701e7 f2e7cc 648E 454E cbce cfdf1932665dcb4cd3c bb828f1a326 297E 380E 462E 71e6b 9652ab8b55fdb2a36d1f3fe020 74e86 4ff4e275c710c3b 459E e9 964b86fc1bba0e bd2484 9dd5bf47f 7ab64a969 a4c7d0 4f6f7f 28533c cf49E 360E 588E 69 66c0220688a999aaf7f1702d1 316E 8e24e9b4e 298E 67513d 460E 71a48d11b2e7e56b1df128bd 418E 72cbb37db85ed3c6eda5dcf8 8cd4d 70815f0352b43dc1562133ab6eb 0f6784e49852c0be0da23b16 67b6a4dca3a6d ef8b68bb5772f3 6bce02baf91781a831e1b95 3e814305b42beb41b8c706 6c541cad8de1b15 90cc275011c2013c61eb11 6236a67933a619a6a3d48 31f2f9aef958979f9f3532b9b f52a45620969f0df4e6ae1dcd7 c935c7f4d1090ac 33ff9e43d5ab 4f2e020854dfacce46a12 03716a2c341e5edaa31 4cc20a0b7651e486 d4f958b03a98 50962c93b4cb293f5beb59eb 1c08373 f66fe4df3d189e69ce10c9c 383f5c65cc6c25aa0a0e6dbb 5256925081c812 b5c747cc9 5f2592b20f13356b7fc8b42 1c08373 1322fb0818783e6f9a4f173d47c52 41a8b095c7fd3 5ce1fcfb042b 151E 171192dc1f8e6ea551548a910c00 be8f4199f 375E 531806429433 1ff8ff951ee9 eccfe5ff0af70fe9fbec8b2360f90 21407f8a6d7 e079d2c e079d2c 9696c0950295d8cb5 f22c27c0f0a54e 01db23a60422ba93a68611cc0 f490de272a7f6e4af346d40 629e42 483E 21407f8a6d7 1f5df34ad75a55a76ef4afa0a47 151bcc2a8de7ea634 d285240b89cb be8f4199f c6b5321a 248df40dae 26a185dde9a93dd 08769f73d31c1a99be2d9363f 473E 00265 376E aeb8 b1ffbabb24d71f67d1e0ce23c51 22bd92e302816 8d0d8314d211d80 05d4b1ed6a6135eec3abd3f2 f0d99f16 04767 5c609b12c 629e42 199E 484E 04904a458422a5b9 3089106e3b 761e0f72f95 15d44ab97 7e494b c29ce10bb8d19b498355aa04 2e53009d4a375 474E 78b2d75d00166 a6a196a504c3a7657d1fa41 1c08373 cd856f 6e186b 200E dea1d1 d382 a7167d5eb5408b3839903 230cc6bbc66b24eae94fa03d 97c9d726e27304311901a52ce 335E 6c89dc59ee7aaebbbd6bb64 5a0b4b906a 336E bb828f1a326 459236f07c73814faf5 4f8c642b53c349c687534bda35db 46969c4 a7a7f3681dad1250b01cf80bc17 ef2d4636934472 8c8b5bde6 8c8b5bde6 5f865c374cb3fe976dd376b8 47cd70f 18083a711d 3eca1f94dc181 30cc206b1878485 428E b9ae94e6935503603341ecf4 aa868f65c34cdb64f1fad19a f496bcf0889b301d77819c ddfeabe456a9de5f5784 699e3db878047 c54f0fc1e05 23ad1 b630e1af6ae1997f0e8ba750 792fd6f9df1fa1e33 60d0128bdb61ae40e98638bd1391 9ab6c66dc 23ad1 a7c99ccf6ddf6f5ebbe 391256c872 78cc16f965adc5f712ea2372c6 5c81103c751345d0ee0f4bd 14a3c17f3d 162E c4fd8 aac615ae78 f29dfb9 23ad1 7528dd86b f8ff39eab120851f143bf19 40f253cd228f7ac2d0aee 4d22e1 b23526044 427E d6125ef42bd9958 bdbdb31bd777fb65dd6dd2d0e7 550E 6f578c5128 4e3cfd27a a3ff993 d8f4a9e463a1e89217f 1112164c2f7a a9012b7bb5 78c8463ea 2c514b0cd8f7d3 3dafb9a29c00 8d5137b16a e65185ca 3b63cdc0f c110ba7 3b566eaa70ed401479d43a9 4c6c8c 6b1bb9b0e 499f6985db294c 4c6c8c 2ced414a91575a48f2dd29a b46b0756dba915943839e90a55 97a7eea3f 4dbf4395236fb03ed 4c6c8c 5be631dff7b97697be7dc0a2f07f2 4a9d79c960b8d33e39251e5f66 3dcf8f454 4b683 a164d9f60fbbdd 1aaaab063 6c998bf2a5edd 2d886da042b5384b4 3bec1c012b498 3e048573fd f28b78d4803c b36e0be6f67fc25286127456 a54d477232 87a7e69a72412 c3c93c700edc0cb4f95f03c04 c5acd20cad2 85221d5e9e d7c27cc6f7b02a31eb64d 062fc905b9eb35 73d12 5fdf 1e1fbbe14ac24e0518 330342f283ef2 c8fc17180bea86 00d0dd018fe879f96 421 a5520019b8a73bc141b5fd416a 4c6c8c deb3089920548bf1ecb23f0d 87a7e69a72412 73e6ed83012 bc4824f07a9d2bba6 3219b6b71443 e06cc38155ff6781cf944d745 af4a1fac3e2076 73ca543bf1 837ebf4bde22e1f1535cb662 6b5aaa4bdf44b2c898854 dd2ba36 c0b727 38f162cf917ce7298663a1f1c607 09e64744536c5e1 62f36ea98a d0eb84 99237fce1358 b354cd9e9dbb0bfa 0a185946ee443342b07d8e1 238805e2194c3 87a7e69a72412 3828a2c682419423cf 784E ebd8ffc2ac3a90efb8af9 351dd0aefe480c a9058241db5b6b6c25569acdf5 3a0ff0 c471b6fdbfb852661 252126553e52385d16 be6b73bd46a7a5183e8c91a 444189d179b5db71fe 56e1a896 a031c9192ae8e75 d4b2 76889f7d35e 593caebf2037317648bb451aa79 f4bef37b6a94bfd00 fcbd9ad14139718bc6fcc8b4 23c1ec53358d237c1 32979f8cf86 a54092a3033f7d5e41e0a76c1 baba65f670ee34a88 b2babf3244213 ca3d67754cf62fdafbf0a1e0 f2c7b3bb4d44f977d0ab8a42351 8606837526d81cdec b3cadc253f7 675E b4dfef6 1ebeec 5ba4693031 4c82921f4ad3f07066540 a7fe7 3b4fdad8e0429d112 ad1dd724f1c3e e7ef998 79b69c612 1467f017b74e 964cb56d8f69ff058 75b14f1719d e3a76d31ca59a fb58e11 403126 02f5daf56e299b8a8ecea892 a7e89580 9fe65061641 724dabdce9744d061 4f0cbd3fbf0cb1e8c 16c508ab98483d430bbe 3c2a62e0e5e9f7 cab04b7c14a 12fcb26b3de00ef98719c2ca a84844dfd0052b3b5 8e2d970b2f820ee35 2e1313c ef13d45b1277ac9a0444adb a7fe7 00880e6f50c765ebc1f85d3e9 cab04b7c14a ee91c97828 585E c2f32e2cf9 cab04b7c14a ae32701 ca5af2 4348f3abcb7716 825c7994d5da13afe519861818 cd6 2ef949c4a39b e7ef998 340E 254E 11180ae7706510211bc4 fd28c194a46fde909b019c52f 90dccb18c0 052bb6e3 aebb7b91b b082f7a5ff a472a156cf2b55f f5807acd8d58e006f43 536264e787cf70469 34d06d1ed6 cc3f63d e17fea65 affb2d716803a2d3e e4dba079d5fcb1f165920a3bf eccf7c722ddf 617809d979f a7d2 296E 672E e49aaa5cc4e44355d6a0 713db1c1 57f7fd2eecec93c8b 3acbf8a1537e4e1a1 df61d5f5fc 319E 07283 332E 647 285E 4f2de229621272 8896166adc0 3bbfc7bfdbbb1ba1bfad7517 626E 320E 96325ea 4f35e206816c3bd22 6bbd5b422edb8e358dcc20eecf9 96deede0c6b44119 f20f7f513e 644f112bb0aa452ee7040a 52f247fc3b 637E 93ea0 638E 793E 15b3ad672cd2f713a 75eea05672a5 8593dcf973b110d00cecdc1e756 1b34fb150 e8ebe1bf5f421c1223 3aeb78ea51020a44f2d2615436dae b473716 d495de0b35f6 09847696ae a96e47ff37983425a3e452095 cab04b7c14a 66abc181ac4 f72564578be 73ba1714ee 1d792d81 6505e29f4a11d9530 89a2505da6179a80202d4a6c3 5782807b5f575e0a8 40b49a5a9bb256c7a3286e56 e2a5d11499b7e 262E e8b bba6e6e194ccf d 3b0c08dd2ca e618df70814a 1f4f0fdf 27709106 1ed67841 97284d4c3a5d499853f0e 8d6e6e0cd9b842a47 45ba4d4c61c9601a26d59e47e0260 47e0067f4d853afd2012f04daa8 6ba0776fc8e fa90ddf10bd574 e8386a8e1c8a 99bd3e7feeb710 92fb5d4a0805 cab04b7c14a e4e2f4e6d 644E 294E 8a 51e74bec5513083bb e3e284d0cc803d98d674f9c3f6d a3781072b 3ba7afb0e48ae1 69f2611acc42c36ed7cc b12441ecff15fa12c 256E 654E 548c0081a62132b44 e4ae306d9bd669c70 086 9f 800422ab81d804eef3e7b91dfba91 290907417e13 952316a1a5a785 94da691e20e3 f55670 226E 274E 508E 63a3d4fb9d38a0182be6e39e76 88d8b220746882d f787d827958c 1927c743a0d440a5a0 cab04b7c14a 6a80cbe 2a9caef7 319bc900218b 30417faf916 63b079bd5847 4e8259973f1f 2dd8cc4d693415f93c0f8fc cab04b7c14a af4abb0d6a99 d2647f8b6d8661d08 e343cea291b79a2ed4e b79798b186d6b82288e8be4017d f95344b0ae31693f3a2746597d4 966d271c22e75c7538 4379b5ed 6a80cbe 3b0a8a1c2e5050bd 64ef1d545 ef6361295eba07 815cc0b83d733 d7203571944b 11f088bfd8 bfc6564cbdeeffac00a141 4e4a79111d 01938827 6a91 d17f8f4eeb8e63d 1a220eb692c 8e69341faa4489 617809d979f a49284e9 52f247fc3b ca5af2 7c13bf753da 7c1767485953d9c2 99b6c f2b6201774de40a29b504b1f716 668d636002 2573e1bf51f1b307f4640 84e4ede82074 d58478d9c273ad4f4b2e091324 a9a36ef02f ee91c97828 4ad5d68f07981a 2759e82e30d6d 4f04c39708f 8ea965ab6ee8dedb6c3333e9 7c7c 76E cca7040e47789 fbba7215e7c13173a60206 c32d2697e8 8be752bc95d436a90493bec9 84e4ede82074 ff9d64ddf49a20f 53069e384a2 450d3a2d49cbfd 6a91 20949455f573f 969a58db14386cb9d2f51ec 10a7d61c201c67a5e78542807cd 19398d3cd6b9c674f 549fa15d68f0b3bee6192f888cd8 c8a6c26d4fd9f f722890f70a32dce3baff371a 44cbb41a9cfc15497eacd294 ac34ec0f0488b17ec 9fe716e738eaea34e 609E 5997cb0c083422 2a47a6a27 eff3468631dd4 a8f0fe2eb7bc1471 cfff3acd8e9d 57948adb5dead f6e6236b48bc3 cf5a6049ad 47ebc3f17 0a49c95f107c0aa57c9b5748 06209 2e31175cbd52fcd08360fe86d20 efb52b499303115c33fd 58e3dcc618 b656f0ed2202b8e46eb 32c958c9997 3aa0ce5efcf79bc3ecced1886e89 eee44624da 817 65fd8495 6819fd5a6cdd280dd f5d636e14a6cd716362158d f7b22b9640 65fd8495 6bf214d9e7fa5f2df a387210a27b 69f4ecb77d 7c0ab977f5a3c4ab6d625f5033 8be0efdd94a6383e87fbfded4f 558d8534f92fddfe 51192117f9b4 2f43cba12702078b4e0d3bfdae2bc 9c1305d59c37e9be9f13d7d049c 908f9ad506eae9ab6ada185e3 81 658d208447d8ec5d6de8 842bc5775657c1e0d67 3c1edc8de4795936 af9c489df53 71cf45dd4e91bcca945137b40e 1de26f6b12b0d292f94184 f841118350a27b7ea29a9c9d 32fe7eee5283 a2984b7a11e49440420058c1d80 ea920d9f5b295119 ef42184297591d b074e 32b98f11f3d01d6 8f7c875500073 32fe7eee5283 615cd6b5e3d21c ab48d1f65812bc0f8ab6941c3b5 6c93f24516f01d 5e80f85274 35b941379e1af658078cffb83a2 345d26b3f821fe 331675c046693f 37f57e81ebed95 0efbd e1e8c c338481d79773 b7b899dc8bc6a32b28cb098fa16 8cbae42a3900 5e80f85274 8304a439f91fc90b3fe8dd35be8 7e0b91491c8c8566892cd9a0889 c71043819b6a79 de9efa12873949 88ebe2e8782c 65694ca6d575 34d7bb6af4fcd8d630de72500c8 c4507c22d19 e1d01ef89f 102f1 632E fc73 f9df653b86fb8df 1333074979f2d0b 357679fea1e2f e4b45b7a2f884d3734bfd5985656 020df871874cd 50f4d9b97aefe 4995c71223c9f6067324d387a2 39d025b265f9790490781cb201 0668 85fc23f1c88b4 32c4684b55361 731E c0174bbe7ae8 bac77c3f414a 57c77c341f94afddef07e6 6a8f5bafb1 d4f7b7fba7afcf7a72397353ec 8b98c3ddbe0b336 e84330eef281284a d9f4abac731a9e 084d4bfa5853e acacfc83af504 da0d7bbcf30 6a8f5bafb1 8c932e1e502dca ff5c9b242337c 275a0407e33e9b8aa9cdd051 2601085bde1b2450d64509f36 901b2105a902ee7791 a153512d982 d12bd75c24b110ef90cdd35d3 af0268dddd af0268dddd 6a8f5bafb1 f603819d560c5603259aa05dca 02c2ba83680ab57f236a33d702 4c52fdd8e396692 ee3b6be71d59b 4e12f7ff0918 f1b0d754353a6 89ced1a7906d58d687d5a04 881d373 c96782ef56711c5d6a3f69 af0268dddd 6d52dd1b198bb eedc819a68add6 88a4f0337c2189c3fc7b31 04390dec6f1779353c07f5 c21eb96fe100a1efaa128181b7 ccceeef40edda78 8fb60d769e4c387 8d52f183ec e33792703 bdec8c86db51b9 16a795a1d63f30df 4399cf78123dedd0dfe9776104 ac284d73563 665b76844ff78fc2cf66ca2 26fa7360ab81be9d4434a 8066f87a88f4e be7d637c50c 1562abef0d8241 a738ba39 cef12b6 a2c4b1d72e2da483a86ae0c62e5 8f95518f48528 38fa61352f5086d2cb51 7204950f6233bf9c9e1f00d4a870 49704867bee95 2ef209509e2a 8a46e6 bb92d1da1f38d52f8ff 06eff1db45cdf 2043b477ac0393676a4309514d0 8462bb2eec1a62d19a15865e57c92 28f7bfc40c88e6a be9c5958196ed 9e650e89bb 653ae44d45dcadeb481b53027d 4727c415d06bcbef 53069e384a2 f62b136b2171 1727041c622518c9dd24f7c211 d66f542ef1ce4d02c59bec65e 797E 801E b9 855d26296eda4eb7 21dff35936370ae5f 3703059dbc5a8 38b3b0d9 f9d09 1172dca23 08500a6044 fff03efcd 597E 9ccd974150a18260b207b6584caa 31055116421c96b37f72a262bb 85a34bc9616ff cd1e9af3dec2 8e307415fb435445ced7 53069e384a2 d 67219ef689f0146b544 d886e4b76537a99bc71b8a9331c94 3dafe1619016463f521f 21dff35936370ae5f 52a6c2063bccd83110c32 c72df69b40156a3254 8bdb6a91c6dee925b557c705b3 c360aaeb167487c9578a8f 8df ff b38049e0086633c26be93ada8b20f234fdcd0e1fc50261ce8 275afb2b215b966d9fac51b96b9 23f94655294d3ff537f2915fa a77622f2ff77ffeeb2 4869e993f2bb10f bf65cfddeb00ff847feae0c 3eecb304bab2136a76deda ffd1b1af3b6864078f3 7e74e1587f3a4d208 8f9cdc26798117dd3e9ee4a8770 a2eab7c9fa641e5f 0a963fef9 8b06a67a 9937ccba1469 582E 1d4ea80c7194689d69f9592186 616d8a7b 630E 91ecbe29a71f00ed5a3 342E 354E 1b13908a9f0763c0ae54af9062080 8c7cd9b93b1cbe48e1 382E 620E 684E 696E 300E 370E 444E e287d497450664a4c0f4efc338 503737b64d432c60d6ac557e0e6 a78eb40ae56aaa9 a8e9 422E 234E 3cfae 07 82d201 341E 6472c2861e0e0dd681 bd7aca295ca 46e412a3 dcc5d5e9d6c4e a8e9 95e93c4a13 24dfe1a997a 3a8173d6c 86e9b0428 65a1 1d529eb4 3f9ddf1ffbc0d38b b62cd1d0a0 381E 369E a8e9 5a7a610a8a 8f143077e f0f45e707 33e1de 99da1f8a5 e3fd0c7b3 47b2da3d a0befe6dd1ca7b165786835 619E 683E a8e9 0759a8b435ccd c0f34a600 0da9135 0fabab47 1b82200 534E 676bbe7d1c1fb71742df534ce8 233E 01 2d7b7fb6c9ad6821752651f7 bf141dbce 30d6138b63eb e64f22a31 0f167280 fe821bce c96cb3 8cbcf5cb5 37d80ae421dba4a70730338860 ffccaa9e3 81dabfaba8 162d8039483d8 3b1563a23eb9 c5d5be3942 e82f47b8d4949ba4af69b38cbc19 9f24ba80192c339a64c0 f8128d574c356631b8a9 0acc5bb8ca4 fbdc3ca37406f66635c8b226e f713a8b311ffa05ce3683ad10 eb8 eb8 81dabfaba8 6448451ac2ceade90715378b 5eea496cc301b2a9721 b06bbfa920aa95dd ac487676a04e4 45827dbdd8 eb8 eb8 d370c12dbc 6aae8d25951 5e9156098c064 46f754ea06f070dbc023e571a876 0acc5bb8ca4 45827dbdd8 910b00285f11bb90d0a15641 81dabfaba8 80874aa8 bf01c8a262 c1c30f30d40c4f1f84924622f fa2afbd869 533E 11bb8ed3ae227d3acefc 08dade990b2282 3b2f08d52e4bca3f9ca7bbbd6 81dabfaba8 0f940646 81dabfaba8 f0bd1521 1d163eac141def176461c 6c632ad9c42228bb337 f78e145a127014eb43345a0c 84e4f1c582427a98d7b ea890ccca2f7c2107351 dca32af03698c988b22 18115fa32ff1cb99 cd0d985a366cad7e 173fd00917644f0f1f3e3 0c72a426929600000f5 3cdc90c57243373efaba65a fb039d7a2a9fe73b5f468eba9 a27037332d9fa5c43bcfe94c0 24431c3eb075102f07cc2c1be 75ba8d840070942eb4e737849 e3bdbca0e2256fffa8a59018 07f8a9e55a16beddb3c9153b0 4a38abc630c82b0c48dfbf5271 86276bb1e23f2c7ffcbe82a0 9c9e2e0f2da8758e436c

6a3c6921b0aeceda3

c10cb9baf4dcb43e24

78

a97ef281eafc34b1630d450a1df

e920b915087 de34214b4c258c9333ec3

a141a557a60912051f3c135

4856000a6802ddfc121ef40432297

876d120b38b0e88817

541ab86a2e 69ce90c9b2

71e6b

be233fafa38d931d894

460aed10cc9 6577 d2498

0f5db6ce12751ddcc64e

e920b915087 a849f9d352e

f33ec11db496f7bfcb024f

212af4 f36cce089

dd84fe6a65cfac7bca03ebd

3ef07ae75d29a707

89a36b13f8c344b a5a b701e7

5838586c293d455

3d475ea3aeca51b60212dd

ac6e99186

c

587E

f2e7cc

49E

648E

e5

a849f9d352e

f2a57e4d4f0cec516891e3

16c3ae29c0bc713

cfdf1932665dcb4cd3c

8a9eb2806b0aa

247e407f45b353f8

454E 71e6b 462E

805004328dad9d315d

380E

6b3f3fa236bb90592d23a

30d9d350943c0e3ff7594b50

4ff4e275c710c3b 74e86 bb828f1a326

e9

297E

459E

964b86fc1bba0e

9652ab8b55fdb2a36d1f3fe020

9dd5bf47f a4c7d0 bd2484 4f6f7f cf

678bf739c344b9ad41da1

7ab64a969 28533c

f4c69e5e212f89348122e8

bce

69

4280833ef80172

316E

66c0220688a999aaf7f1702d1

588E

6d4a4a5a5af91b895272c30

dd12f26f8d9bb55

360E 67513d 298E

460E

8e24e9b4e

72cbb37db85ed3c6eda5dcf8

418E

71a48d11b2e7e56b1df128bd

6fb7a84e370ef70feac5cb

70815f0352b43dc1562133ab6eb

396b16a892fe

396b16a892fe

4280833ef80172

0f6784e49852c0be0da23b16

4280833ef80172

ef8b68bb5772f3 8cd4d 67b6a4dca3a6d 6bce02baf91781a831e1b95 6c541cad8de1b15 3e814305b42beb41b8c706

83c397b8bf7f

33ff9e43d5ab 6236a67933a619a6a3d48

83c397b8bf7f

f52a45620969f0df4e6ae1dcd7

90cc275011c2013c61eb11

c935c7f4d1090ac

31f2f9aef958979f9f3532b9b

4f2e020854dfacce46a12

396b16a892fe

d4f958b03a98

5d69639a5e3bdd3d

03716a2c341e5edaa31

4cc20a0b7651e486

5256925081c812 be8f4199f 383f5c65cc6c25aa0a0e6dbb 50962c93b4cb293f5beb59eb b5c747cc9

83c397b8bf7f

f66fe4df3d189e69ce10c9c

1c08373

151E

41a8b095c7fd3

5f2592b20f13356b7fc8b42

5ce1fcfb042b

1c08373

1322fb0818783e6f9a4f173d47c52

375E

b07bbdc8cca5985d4c4

d550a7f392c787661aadd48

8fa622d9f842c5572a545ed72982

666f11bb45c3a8dcf26e1ed79

171192dc1f8e6ea551548a910c00

be8f4199f

e0ad365c2fb444358201

e079d2c

eccfe5ff0af70fe9fbec8b2360f90

21407f8a6d7 be8f4199f

e079d2c 1ff8ff951ee9

483E

293a225dc56dd1e0564e6bb

b5e86c73d1198f

21407f8a6d7 531806429433

01db23a60422ba93a68611cc0 f22c27c0f0a54e f490de272a7f6e4af346d40 9696c0950295d8cb5 629e42 d285240b89cb c6b5321a 1f5df34ad75a55a76ef4afa0a47

d93a80739fc1edb41a11b7294

fe4e848cb5291ee59a2

e7a887d88c2318beba51

34c8c8dc0f6e41c7e7b2

86569bffb49adf6b3d0ebac

3124d3a6ed3381a6341c6

6139fa6adc88d

be8f4199f 151bcc2a8de7ea634 00265 26a185dde9a93dd aeb8 248df40dae

8d0d8314d211d80

473E

b5e86c73d1198f

236E

b1ffbabb24d71f67d1e0ce23c51

376E

08769f73d31c1a99be2d9363f

04767

05d4b1ed6a6135eec3abd3f2

f0d99f16 484E 04904a458422a5b9 5c609b12c

383db224d7508ef072bea21d0

e3aefac763

284f14a259991806654e74

c4f31ea3844e12da27ad47c6

69fdd1a1f4768c5efe7

50023f6f88

358E

0b8694c9ef9b27b9c3d8

81e20155999fa64e0ae6fd

bb5e89c8963

22bd92e302816

629e42

761e0f72f95

199E

3089106e3b

15d44ab97

2e53009d4a375

7e494b

474E

78b2d75d00166

c29ce10bb8d19b498355aa04

a6a196a504c3a7657d1fa41

6e186b 1c08373 200E

d378760b814eaecb6efe636e0efc4

4280833ef80172

30c3f3bf8463d3843dc57d8e98

9d8988c0945d6

cd856f a7167d5eb5408b3839903 dea1d1

e3aefac763

17dafa5ebaafd48440e3

278E

6c89dc59ee7aaebbbd6bb64

d382

e3aefac763

230cc6bbc66b24eae94fa03d

46125fcc583c0f494a3a1d3

bbe0a8f93dc1

97c9d726e27304311901a52ce

335E 336E 459236f07c73814faf5

5a0b4b906a 46969c4

bb828f1a326

4f8c642b53c349c687534bda35db

e153c6e676c7369b285b4e9033a

da24f74aad2ff519009d1f38c

4dccb

c90f755c8b6612d e03b8bc0435a

c5255d

296E e4dba079d5fcb1f165920a3bf

3bbfc7bfdbbb1ba1bfad7517

b2babf3244213

75b14f1719d

affb2d716803a2d3e e17fea65 536264e787cf70469 cc3f63d 57f7fd2eecec93c8b

3acbf8a1537e4e1a1

a7d2

713db1c1 647

4f2de229621272

285E

8896166adc0

5807acd8d58e006f43

4f35e206816c3bd22 472a156cf2b55f

96deede0c6b44119

332E 6bbd5b422edb8e358dcc20eecf9 626E f20f7f513e 320E 75eea05672a5

96325ea 793E 15b3ad672cd2f713a

644f112bb0aa452ee7040a

d495de0b35f6

b473716

09847696ae

52f247fc3b

e8ebe1bf5f421c1223

638E 93ea0

8593dcf973b110d00cecdc1e756

1b34fb150

3aeb78ea51020a44f2d2615436dae

1d792d81 cab04b7c14a 73ba1714ee

a96e47ff37983425a3e452095

f72564578be

6505e29f4a11d9530

66abc181ac4

89a2505da6179a80202d4a6c3

e2a5d11499b7e

5782807b5f575e0a8

262E

d

e8b

bba6e6e194ccf

27709106

97284d4c3a5d499853f0e

1ed67841

45ba4d4c61c9601a26d59e47e0260

47e0067f4d853afd2012f04daa8

99bd3e7feeb710 8a 92fb5d4a0805 294E fa90ddf10bd574 644E 6ba0776fc8e e4e2f4e6d 8d6e6e0cd9b842a47 e8386a8e1c8a

6a91

086

952316a1a5a785

9f

290907417e13

88d8b220746882d 2a9caef7 319bc900218b

2dd8cc4d693415f93c0f8fc

4c82921f4ad3f07066540

e343cea291b79a2ed4e

815cc0b83d733 d7203571944b

d17f8f4eeb8e63d

4e4a79111d

4379b5ed

1a220eb692c

01938827 6a91

11f088bfd8

bfc6564cbdeeffac00a141

ca5af2

84e4ede82074

a49284e9

9

8e69341faa4489

f2b6201774de40a29b504b1f716

617809d979f

7c1767485953d9c2

52f247fc3b

7c13bf753da

2573e1bf51f1b307f4640

84e4ede82074

668d636002

45ba4d4c61c9601a26d59e47e0260

d58478d9c273ad4f4b2e091324

ee91c97828

2f43cba12702078b4e0d3bfdae2bc

4ad5d68f07981a

a9a36ef02f 7c7c

76E

cca7040e47789

4f04c39708f

2759e82e30d6d

3c1edc8de4795936

47e0067f4d853afd2012f04daa8

8ea965ab6ee8dedb6c3333e9

ff9d64ddf49a20f

fbba7215e7c13173a60206

8be752bc95d436a90493bec9

84e4ede82074

c32d2697e8

450d3a2d49cbfd 53069e384a2

20949455f573f 6a91

ea920d9f5b295119

19398d3cd6b9c674f c8a6c26d4fd9f

ef42184297591d

969a58db14386cb9d2f51ec

10a7d61c201c67a5e78542807cd

9b6c

800422ab81d804eef3e7b91dfba91

549fa15d68f0b3bee6192f888cd8

f722890f70a32dce3baff371a

a2984b7a11e49440420058c1d80

615cd6b5e3d21c

92fb5d4a0805

ac34ec0f0488b17ec

44cbb41a9cfc15497eacd294

9fe716e738eaea34e 609E

5997cb0c083422 2a47a6a27

331675c046693f

de9efa12873949 fa90ddf10bd574

eff3468631dd4 a8f0fe2eb7bc1471 06209

57948adb5dead cfff3acd8e9d

47ebc3f17

35b941379e1af658078cffb83a2

0a49c95f107c0aa57c9b5748

2e31175cbd52fcd08360fe86d20

58e3dcc618

efb52b499303115c33fd 32c958c9997

7e0b91491c8c8566892cd9a0889

345d26b3f821fe

c71043819b6a79

b656f0ed2202b8e46eb

3aa0ce5efcf79bc3ecced1886e89

eee44624da 817

f7b22b9640

65fd8495

f5d636e14a6cd716362158d

63b079bd5847

f787d827958c

4e8259973f1f

1333074979f2d0b

b79798b186d6b82288e8be4017d

6819fd5a6cdd280dd 65fd8495

a387210a27b

6bf214d9e7fa5f2df 69f4ecb77d

7c0ab977f5a3c4ab6d625f5033

f9df653b86fb8df

558d8534f92fddfe

e4b45b7a2f884d3734bfd5985656

8be0efdd94a6383e87fbfded4f

81

2f43cba12702078b4e0d3bfdae2bc

51192117f9b4

32c4684b55361

9c1305d59c37e9be9f13d7d049c

658d208447d8ec5d6de8

842bc5775657c1e0d67

a2984b7a11e49440420058c1d80

32fe7eee5283

b074e

f841118350a27b7ea29a9c9d

32fe7eee5283 32b98f11f3d01d6

597E

08500a6044

de9efa12873949

c71043819b6a79

632E

34d7bb6af4fcd8d630de72500c8

102f1

f9df653b86fb8df

c4507c22d19 65694ca6d575

357679fea1e2f

e1d01ef89f

88ebe2e8782c

1333074979f2d0b

fc73

50f4d9b97aefe

e4b45b7a2f884d3734bfd5985656

020df871874cd 32c4684b55361

02c2ba83680ab57f236a33d702

39d025b265f9790490781cb201

0668

4995c71223c9f6067324d387a2

85fc23f1c88b4

da0d7bbcf30

57c77c341f94afddef07e6

c0174bbe7ae8

8b98c3ddbe0b336

d4f7b7fba7afcf7a72397353ec

bac77c3f414a

eedc819a68add6

d9f4abac731a9e

6a8f5bafb1

acacfc83af504

6a8f5bafb1

084d4bfa5853e 8b98c3ddbe0b336

c21eb96fe100a1efaa128181b7

ccceeef40edda78

e84330eef281284a 8c932e1e502dca ff5c9b242337c

f603819d560c5603259aa05dca

af0268dddd

ff5c9b242337c

901b2105a902ee7791

ee3b6be71d59b

6a8f5bafb1

4e12f7ff0918

02c2ba83680ab57f236a33d702

16a795a1d63f30df

f1b0d754353a6

275a0407e33e9b8aa9cdd051

a153512d982

4c52fdd8e396692

af0268dddd

2601085bde1b2450d64509f36

d12bd75c24b110ef90cdd35d3

ee3b6be71d59b 4e12f7ff0918

bdec8c86db51b9

a2c4b1d72e2da483a86ae0c62e5

881d373

6a8f5bafb1

6d52dd1b198bb

af0268dddd

c96782ef56711c5d6a3f69

8f95518f48528

eedc819a68add6

89ced1a7906d58d687d5a04

88a4f0337c2189c3fc7b31

8462bb2eec1a62d19a15865e57c92

04390dec6f1779353c07f5

ccceeef40edda78

c21eb96fe100a1efaa128181b7

16a795a1d63f30df

e33792703

bdec8c86db51b9

4c52fdd8e396692

6d52dd1b198bb

49704867bee95

2ef209509e2a

842bc5775657c1e0d67

39d025b265f9790490781cb201

7204950f6233bf9c9e1f00d4a870 2043b477ac0393676a4309514d0

be9c5958196ed 46e412a3

8f95518f48528

8fb60d769e4c387

8d52f183ec

665b76844ff78fc2cf66ca2

ac284d73563

a2c4b1d72e2da483a86ae0c62e5

cef12b6

85a34bc9616ff

be7d637c50c a738ba39

67219ef689f0146b544

8066f87a88f4e

26fa7360ab81be9d4434a

4399cf78123dedd0dfe9776104

8a46e6

1562abef0d8241

49704867bee95

653ae44d45dcadeb481b53027d

1727041c622518c9dd24f7c211

28f7bfc40c88e6a

bd7aca295ca

2ef209509e2a

7204950f6233bf9c9e1f00d4a870

28f7bfc40c88e6a

38fa61352f5086d2cb51

bb92d1da1f38d52f8ff

2043b477ac0393676a4309514d0

53069e384a2 8462bb2eec1a62d19a15865e57c92 f62b136b2171 653ae44d45dcadeb481b53027d 4727c415d06bcbef 1727041c622518c9dd24f7c211

801E

21dff35936370ae5f

b9

d66f542ef1ce4d02c59bec65e

597E

38b3b0d9

855d26296eda4eb7

85a34bc9616ff

9ccd974150a18260b207b6584caa

3703059dbc5a8

d66f542ef1ce4d02c59bec65e

be9c5958196ed

06eff1db45cdf

9e650e89bb

20f234fdcd0e1fc50261ce8

47b2da3d 1d529eb4

08500a6044

f9d09cd1e9af3dec2 1172dca23

fff03efcd

31055116421c96b37f72a262bb 8e307415fb435445ced7

d

67219ef689f0146b544

3dafe1619016463f521f

53069e384a2 20f234fdcd0e1fc50261ce8 d886e4b76537a99bc71b8a9331c94

e3fd0c7b3 e287d497450664a4c0f4efc338

e33792703

8cbcf5cb5

30d6138b63eb

21dff35936370ae5f

52a6c2063bccd83110c32

9ccd974150a18260b207b6584caa

99da1f8a5 06eff1db45cdf

1562abef0d8241

fff03efcd

2d7b7fb6c9ad6821752651f7

c72df69b40156a3254

86633c26be93ada8b

31055116421c96b37f72a262bb

c360aaeb167487c9578a8f

8bdb6a91c6dee925b557c705b3

ff 8df

275afb2b215b966d9fac51b96b9

8df

23f94655294d3ff537f2915fa

a77622f2ff77ffeeb2

c0f34a600

4869e993f2bb10f

81dabfaba8

bf65cfddeb00ff847feae0c

3eecb304bab2136a76deda

b38049e00 ffd1b1af3b6864078f3 7e74e1587f3a4d208

8f9cdc26798117dd3e9ee4a8770

bb92d1da1f38d52f8ff a8e9

dcc5d5e9d6c4e 1172dca23

422E

381E

234E

0da9135

52a6c2063bccd83110c32

86633c26be93ada8b

fe821bce

534E

1b82200

c5d5be3942

fbdc3ca37406f66635c8b226e

f713a8b311ffa05ce3683ad10

a2eab7c9fa641e5f 0a963fef9

582E

8b06a67a 9937ccba1469 630E

3dafe1619016463f521f

b62cd1d0a0

1d4ea80c7194689d69f9592186

616d8a7b

91ecbe29a71f00ed5a3

342E

a8e9

619E 3f9ddf1ffbc0d38b

07

369E

bf141dbce

a8e9 1d4ea80c7194689d69f9592186

683E 01

a0befe6dd1ca7b165786835

e64f22a31

0f167280

354E

81dabfaba8

444E 382E

910b00285f11bb90d0a15641

8c7cd9b93b1cbe48e1 370E 696E 300E

d370c12dbc

c96cb3

c72df69b40156a3254

1b13908a9f0763c0ae54af9062080

a78eb40ae56aaa9

620E

e287d497450664a4c0f4efc338

684E

81dabfaba8

233E

82d201

234E 422E

503737b64d432c60d6ac557e0e6

95e93c4a13 37d80ae421dba4a70730338860

a8e9

24dfe1a997a

3b1563a23eb9

65a1

6472c2861e0e0dd681

533E

fa2afbd869

81dabfaba8

c1c30f30d40c4f1f84924622f

80874aa8

07 3cfae 6472c2861e0e0dd681 341E

65a1

bd7aca295ca 46e412a3

dcc5d5e9d6c4e

a8e9 a8e9

e82f47b8d4949ba4af69b38cbc19

381E

95e93c4a13 86e9b0428 24dfe1a997a 3a8173d6c

1d529eb4

8f143077e

23f94655294d3ff537f2915fa

345d26b3f821fe

7e0b91491c8c8566892cd9a0889

8304a439f91fc90b3fe8dd35be8

5e80f85274 c338481d79773

f1b0d754353a6

731E

57c77c341f94afddef07e6

c96782ef56711c5d6a3f69 8fb60d769e4c387

b9

0fabab47

444E

370E

331675c046693f

35b941379e1af658078cffb83a2

5e80f85274 8cbae42a3900

b7b899dc8bc6a32b28cb098fa16

37f57e81ebed95

e1e8c

e84330eef281284a d9f4abac731a9e

8c932e1e502dca f5d636e14a6cd716362158d

658d208447d8ec5d6de8 f841118350a27b7ea29a9c9d

34d7bb6af4fcd8d630de72500c8

82d201 6a8f5bafb1

6a8f5bafb1

797E

300E

615cd6b5e3d21c

8f7c875500073 6c93f24516f01d

ab48d1f65812bc0f8ab6941c3b5

0efbd

6a8f5bafb1

f603819d560c5603259aa05dca

85fc23f1c88b4 8304a439f91fc90b3fe8dd35be8 b656f0ed2202b8e46eb

a387210a27b b7b899dc8bc6a32b28cb098fa16

5e80f85274

6a8f5bafb1

be7d637c50c 04390dec6f1779353c07f5 8066f87a88f4e 696E 684E

620E

ea920d9f5b295119

1de26f6b12b0d292f94184

d4f7b7fba7afcf7a72397353ec

084d4bfa5853e

020df871874cd

d58478d9c273ad4f4b2e091324

5997cb0c083422 32c958c9997

69f4ecb77d

32fe7eee5283

5e80f85274

fc73

a738ba39 cef12b6

89ced1a7906d58d687d5a04

38fa61352f5086d2cb51

26fa7360ab81be9d4434a

8c7cd9b93b1cbe48e1 382E

354E 341E

ef42184297591d

71cf45dd4e91bcca945137b40e

af9c489df53

acacfc83af504 50f4d9b97aefe

1a220eb692c f6e6236b48bc3

f7b22b9640

47ebc3f17 efb52b499303115c33fd

8cbae42a3900 632E

102f1

8d52f183ec d12bd75c24b110ef90cdd35d3

665b76844ff78fc2cf66ca2

8f9cdc26798117dd3e9ee4a8770 630E 342E 07 3cfae

3c1edc8de4795936

908f9ad506eae9ab6ada185e3

357679fea1e2f

f2b6201774de40a29b504b1f716

d7203571944b 319bc900218b 30417faf916

cf5a6049ad 32fe7eee5283

8be0efdd94a6383e87fbfded4f

4995c71223c9f6067324d387a2 0668

bac77c3f414a

af0268dddd

582E 616d8a7b

a8e9 2601085bde1b2450d64509f36

cf5a6049ad f6e6236b48bc3

f95344b0ae31693f3a2746597d4

952316a1a5a785

3ba7afb0e48ae1

290907417e13

6819fd5a6cdd280dd

558d8534f92fddfe 51192117f9b4

57948adb5dead

32b98f11f3d01d6 6c93f24516f01d

8f7c875500073

e1d01ef89f c0174bbe7ae8

ef6361295eba07

6a80cbe

0a185946ee443342b07d8e1

87a7e69a72412

99bd3e7feeb710

c2f32e2cf9 e8386a8e1c8a

815cc0b83d733 cca7040e47789

6bf214d9e7fa5f2df 9fe716e738eaea34e

ac34ec0f0488b17ec

3aa0ce5efcf79bc3ecced1886e89

7c0ab977f5a3c4ab6d625f5033

c338481d79773 c4507c22d19 af0268dddd

f95344b0ae31693f3a2746597d4

b79798b186d6b82288e8be4017d

64ef1d545 3b0a8a1c2e5050bd

966d271c22e75c7538

f2c7b3bb4d44f977d0ab8a42351

ef13d45b1277ac9a0444adb

e3e284d0cc803d98d674f9c3f6d

e343cea291b79a2ed4e

c8a6c26d4fd9f

eff3468631dd4

65fd8495

af0268dddd

63b079bd5847 4e8259973f1f 30417faf916 d2647f8b6d8661d08

549fa15d68f0b3bee6192f888cd8

2e31175cbd52fcd08360fe86d20

2a47a6a27

65fd8495

1de26f6b12b0d292f94184

881d373

e4ae306d9bd669c70

cab04b7c14a

af4abb0d6a99

a7fe7

6ba0776fc8e 88d8b220746882d

2a9caef7 d17f8f4eeb8e63d

d2647f8b6d8661d08 ff9d64ddf49a20f

cfff3acd8e9d 609E

71cf45dd4e91bcca945137b40e

e1e8c 801E

3ba7afb0e48ae1 548c0081a62132b44

508E

3b0c08dd2ca

a3781072b

8d6e6e0cd9b842a47 e4ae306d9bd669c70

51e74bec5513083bb

20949455f573f

10a7d61c201c67a5e78542807cd a8f0fe2eb7bc1471

9b6c

0a49c95f107c0aa57c9b5748 58e3dcc618

81

51e74bec5513083bb

226E

f55670

7528dd86b

e06cc38155ff6781cf944d745

87a7e69a72412

4f0cbd3fbf0cb1e8c

d495de0b35f6 09847696ae

89a2505da6179a80202d4a6c3

75eea05672a5

3aeb78ea51020a44f2d2615436dae

548c0081a62132b44

19398d3cd6b9c674f 450d3a2d49cbfd 6a91

06209 eee44624da

a3781072b 256E 274E

94da691e20e3

f787d827958c

f20f7f513e

6505e29f4a11d9530

ef6361295eba07

7c1767485953d9c2

76E

7c13bf753da

84e4ede82074

44cbb41a9cfc15497eacd294

f722890f70a32dce3baff371a

817

e3e284d0cc803d98d674f9c3f6d

b12441ecff15fa12c

a7c99ccf6ddf6f5ebbe

800422ab81d804eef3e7b91dfba91

403126 6bbd5b422edb8e358dcc20eecf9 4f2de229621272

8896166adc0 3acbf8a1537e4e1a1

96deede0c6b44119

5782807b5f575e0a8

01938827 9

ee91c97828 7c7c

8be752bc95d436a90493bec9

e618df70814a 3b0c08dd2ca

40b49a5a9bb256c7a3286e56

1f4f0fdf cab04b7c14a

c4fd8

40f253cd228f7ac2d0aee

63a3d4fb9d38a0182be6e39e76

e3a76d31ca59a

8e2d970b2f820ee35

affb2d716803a2d3e

57f7fd2eecec93c8b

15b3ad672cd2f713a d 086

63a3d4fb9d38a0182be6e39e76

4ad5d68f07981a 4e4a79111d

84e4ede82074

84e4ede82074

2573e1bf51f1b307f4640

b074e

ab48d1f65812bc0f8ab6941c3b5 0efbd

65694ca6d575

901b2105a902ee7791 ac284d73563

d886e4b76537a99bc71b8a9331c94

aebb7b91b 34d06d1ed6

e4dba079d5fcb1f165920a3bf

296E

07283

3bbfc7bfdbbb1ba1bfad7517

637E

1f5df34ad75a55a76ef4afa0a47

69f2611acc42c36ed7cc

deb3089920548bf1ecb23f0d 87a7e69a72412

fcbd9ad14139718bc6fcc8b4

a7fe7

724dabdce9744d061

825c7994d5da13afe519861818

4f35e206816c3bd22

bba6e6e194ccf b473716

64ef1d545

3b0a8a1c2e5050bd

bfc6564cbdeeffac00a141

969a58db14386cb9d2f51ec

9c1305d59c37e9be9f13d7d049c

37f57e81ebed95 731E

da0d7bbcf30

88a4f0337c2189c3fc7b31

3eecb304bab2136a76deda

c2f32e2cf9

cd6 b082f7a5ff

052bb6e3

e49aaa5cc4e44355d6a0

672E

df61d5f5fc

319E

1322fb0818783e6f9a4f173d47c52

9696c0950295d8cb5

26a185dde9a93dd

af4a1fac3e2076 238805e2194c3

fb58e11

ca3d67754cf62fdafbf0a1e0

964cb56d8f69ff058 a84844dfd0052b3b5

cd6

b082f7a5ff

536264e787cf70469

713db1c1

9f 97284d4c3a5d499853f0e

8ea965ab6ee8dedb6c3333e9

53069e384a2

908f9ad506eae9ab6ada185e3

88ebe2e8782c

275a0407e33e9b8aa9cdd051

8df

a7fe7

ef13d45b1277ac9a0444adb

825c7994d5da13afe519861818

90dccb18c0

fd28c194a46fde909b019c52f

11180ae7706510211bc4

f a 617809d979f

383f5c65cc6c25aa0a0e6dbb

1ff8ff951ee9

151bcc2a8de7ea634 8d0d8314d211d80

87a7e69a72412

b3cadc253f7

5ba4693031

aebb7b91b e17fea65

793E

af4abb0d6a99

274E

52f247fc3b

af9c489df53 a153512d982 3703059dbc5a8

cd1e9af3dec2 8df

797E

4f0cbd3fbf0cb1e8c

8e2d970b2f820ee35

4348f3abcb7716

ca5af2

254E 340E e7ef998

5256925081c812

531806429433 d285240b89cb b36e0be6f67fc25286127456 87a7e69a72412

73e6ed83012 d7c27cc6f7b02a31eb64d

508E

ca5af2

c32d2697e8

4399cf78123dedd0dfe9776104

38b3b0d9 f9d09

e3a76d31ca59a

2e1313c

a84844dfd0052b3b5

585E ee91c97828

00880e6f50c765ebc1f85d3e9

2ef949c4a39b

eccf7c722ddf

151E a3ff993

c110ba7

c8fc17180bea86

73ca543bf1

675E 6a80cbe

2e1313c

34d06d1ed6

285E

96325ea e8ebe1bf5f421c1223

654E

f55670 226E

6a80cbe 617809d979f

a49284e9

2759e82e30d6d fbba7215e7c13173a60206

4727c415d06bcbef

21dff35936370ae5f

403126 75b14f1719d

724dabdce9744d061

9fe65061641

12fcb26b3de00ef98719c2ca

16c508ab98483d430bbe

b5c747cc9

5ce1fcfb042b f22c27c0f0a54e

3e048573fd

062fc905b9eb35

38f162cf917ce7298663a1f1c607

8606837526d81cdec

cab04b7c14a

fd28c194a46fde909b019c52f

90dccb18c0

cc3f63d

472a156cf2b55f 294E

256E

644E

8a

6a80cbe

4379b5ed a9a36ef02f

4f04c39708f

53069e384a2

ff

a77622f2ff77ffeeb2

bf65cfddeb00ff847feae0c

fb58e11

964cb56d8f69ff058

79b69c612

02f5daf56e299b8a8ecea892

3c2a62e0e5e9f7

d4f958b03a98 f8ff39eab120851f143bf19 4e3cfd27a

3b63cdc0f a164d9f60fbbdd

a54d477232

62f36ea98a

f52a45620969f0df4e6ae1dcd7

33ff9e43d5ab

41a8b095c7fd3 b23526044

b46b0756dba915943839e90a55

6b1bb9b0e

97a7eea3f

a031c9192ae8e75

d4b2

52126553e52385d16

e618df70814a

e8b 1ed67841

27709106

94da691e20e3

cab04b7c14a 11f088bfd8

668d636002 8a46e6 9e650e89bb f62b136b2171

1467f017b74e

a7e89580 cab04b7c14a

cab04b7c14a

cab04b7c14a

ae32701

cab04b7c14a

23ad1

e65185ca

5fdf

3219b6b71443

1927c743a0d440a5a0

1467f017b74e 4348f3abcb7716

ee91c97828 052bb6e3

e49aaa5cc4e44355d6a0 8593dcf973b110d00cecdc1e756 5807acd8d58e006f43

cab04b7c14a

cab04b7c14a

8e69341faa4489

d

4869e993f2bb10f

5ba4693031

e7ef998

ad1dd724f1c3e

ef8b68bb5772f3

6c541cad8de1b15

c935c7f4d1090ac

5c81103c751345d0ee0f4bd 6f578c5128

78cc16f965adc5f712ea2372c6

23ad1

a9012b7bb5

73d12

a5520019b8a73bc141b5fd416a

4c82921f4ad3f07066540

1ebeec

72cbb37db85ed3c6eda5dcf8

67b6a4dca3a6d b1ffbabb24d71f67d1e0ce23c51

14a3c17f3d

23ad1

550E

2ced414a91575a48f2dd29a

85221d5e9e b354cd9e9dbb0bfa

a7fe7

3b4fdad8e0429d112

b9ae94e6935503603341ecf4

3eca1f94dc181

30cc206b1878485

60d0128bdb61ae40e98638bd1391

23ad1 4d22e1

bdbdb31bd777fb65dd6dd2d0e7

3bec1c012b498

675E

b3cadc253f7

78c8463ea 2c514b0cd8f7d3

2d886da042b5384b4

11180ae7706510211bc4

1d792d81

73ba1714ee 262E 1f4f0fdf b12441ecff15fa12c

2dd8cc4d693415f93c0f8fc

966d271c22e75c7538

53069e384a2

8606837526d81cdec

09e64744536c5e1

21dff35936370ae5f

8bdb6a91c6dee925b557c705b3

a031c9192ae8e75

fcbd9ad14139718bc6fcc8b4

f2c7b3bb4d44f977d0ab8a42351

b2babf3244213

ca3d67754cf62fdafbf0a1e0

bc4824f07a9d2bba6

a9058241db5b6b6c25569acdf5

d4b2

52126553e52385d16

f4bef37b6a94bfd00

a54092a3033f7d5e41e0a76c1

b4dfef6

18083a711d

9ab6c66dc

3dafb9a29c00

4a9d79c960b8d33e39251e5f66

c471b6fdbfb852661

647 320E

638E

1b34fb150

69f2611acc42c36ed7cc

1927c743a0d440a5a0

87a7e69a72412

87a7e69a72412

56e1a896

23c1ec53358d237c1

baba65f670ee34a88

162E

8c8b5bde6 699e3db878047

f29dfb9

8d5137b16a

f72564578be 66abc181ac4

e4e2f4e6d

8e307415fb435445ced7

73ca543bf1

09e64744536c5e1 62f36ea98a

238805e2194c3

0a185946ee443342b07d8e1

b354cd9e9dbb0bfa

c471b6fdbfb852661 2

a9058241db5b6b6c25569acdf5

32979f8cf86

22bd92e302816

a7167d5eb5408b3839903

8c8b5bde6 c54f0fc1e05

aac615ae78

330342f283ef2

f4bef37b6a94bfd00

a54092a3033f7d5e41e0a76c1

ca5af2 07283

626E

52f247fc3b

40b49a5a9bb256c7a3286e56 e2a5d11499b7e

855d26296eda4eb7

c360aaeb167487c9578a8f

73e6ed83012

af4a1fac3e2076 3219b6b71443

e06cc38155ff6781cf944d745

38f162cf917ce7298663a1f1c607

99237fce1358

d0eb84

351dd0aefe480c 3a0ff0

593caebf2037317648bb451aa79

0f6784e49852c0be0da23b16

654E

672E

332E

93ea0

637E cab04b7c14a

a96e47ff37983425a3e452095

c4fd8

87a7e69a72412

bc4824f07a9d2bba6

dd2ba36

3828a2c682419423cf

ebd8ffc2ac3a90efb8af9

be6b73bd46a7a5183e8c91a

444189d179b5db71fe

76889f7d35e

66c0220688a999aaf7f1702d1

460E

baba65f670ee34a88

585E

12fcb26b3de00ef98719c2ca

7528dd86b

a5520019b8a73bc141b5fd416a

c0b727

8e24e9b4e

4ff4e275c710c3b

71e6b bce 459E

ef2d4636934472

4dbf4395236fb03ed

99237fce1358

56e1a896

593caebf2037317648bb451aa79 9fe65061641 02f5daf56e299b8a8ecea892

87a7e69a72412

deb3089920548bf1ecb23f0d

4c6c8c

00d0dd018fe879f96

6b5aaa4bdf44b2c898854

9652ab8b55fdb2a36d1f3fe020

247e407f45b353f8

74e86

316E 5f865c374cb3fe976dd376b8

c3c93c700edc0cb4f95f03c04

00d0dd018fe879f96

2

1ebeec

79b69c612

254E 340E

df61d5f5fc 644f112bb0aa452ee7040a

a7a7f3681dad1250b01cf80bc17

f496bcf0889b301d77819c

c5acd20cad2 351dd0aefe480c

3a0ff0

be6b73bd46a7a5183e8c91a

73d12

c8fc17180bea86

330342f283ef2

421

964b86fc1bba0e a849f9d352e

784E

ddfeabe456a9de5f5784

792fd6f9df1fa1e33

4b683 3dcf8f454

f28b78d4803c

444189d179b5db71fe b4dfef6

5fdf 85221d5e9e

c5acd20cad2 1e1fbbe14ac24e0518

cfdf1932665dcb4cd3c

89a36b13f8c344b

e920b915087

e9 70815f0352b43dc1562133ab6eb

78b2d75d00166

6c998bf2a5edd 3828a2c682419423cf d0eb84

cab04b7c14a

a97ef281eafc34b1630d450a1df

be233fafa38d931d894

16c3ae29c0bc713 462E

837ebf4bde22e1f1535cb662

47cd70f 4c6c8c

4c6c8c

837ebf4bde22e1f1535cb662

ebd8ffc2ac3a90efb8af9

a7e89580

f

a7d2

87a7e69a72412

062fc905b9eb35

f33ec11db496f7bfcb024f

a849f9d352e

454E 380E

21407f8a6d7

6c89dc59ee7aaebbbd6bb64

7e494b

31f2f9aef958979f9f3532b9b

4c6c8c

6b5aaa4bdf44b2c898854

dd2ba36 784E

421

e7ef998

cab04b7c14a

ae32701

a

319E

e920b915087

a54d477232

c3c93c700edc0cb4f95f03c04

d7c27cc6f7b02a31eb64d

71e6b

8a9eb2806b0aa f66fe4df3d189e69ce10c9c 21407f8a6d7

e079d2c 15d44ab97

4c6c8c

3b566eaa70ed401479d43a9 1e1fbbe14ac24e0518 c0b727

5be631dff7b97697be7dc0a2f07f2

5a0b4b906a

cab04b7c14a

e7ef998

617809d979f

de34214b4c258c9333ec3

d13da6273c9b4da

648E

03716a2c341e5edaa31 4cc20a0b7651e486 e079d2c

49E

761e0f72f95

d6125ef42bd9958

d8f4a9e463a1e89217f 1aaaab063

427E

d382 336E

76889f7d35e

cab04b7c14a

a3ff993

3e048573fd

b36e0be6f67fc25286127456

3db761b596844f133c

f2e7cc b701e7

c

4f2e020854dfacce46a12 0f5db6ce12751ddcc64e

587E

499f6985db294c

428E

200E

6e186b dea1d1

32979f8cf86

4e3cfd27a

3b63cdc0f

a164d9f60fbbdd

3bec1c012b498

bb828f1a326

67513d 418E

b630e1af6ae1997f0e8ba750

1112164c2f7a

97c9d726e27304311901a52ce

199E

ad1dd724f1c3e

00880e6f50c765ebc1f85d3e9

550E

78c8463eac110ba7

6b1bb9b0e

97a7eea3f

b46b0756dba915943839e90a55

4b683

3dcf8f454 1aaaab063

2d886da042b5384b4

a141a557a60912051f3c135

7ab64a969 28533c 588E

cd856f

46969c4

3c2a62e0e5e9f7

f36cce089

212af4 cf

69 360E

bb828f1a326

335E

3b4fdad8e0429d112

16c508ab98483d430bbe

23ad1

8d5137b16a 2c514b0cd8f7d3

4c6c8c

4c6c8c

4a9d79c960b8d33e39251e5f66

5be631dff7b97697be7dc0a2f07f2

f28b78d4803c

78

459236f07c73814faf5

2e53009d4a375

629e42 1c08373

23c1ec53358d237c1

4f8c642b53c349c687534bda35db

2ef949c4a39b

4d22e1

6f578c5128

3dafb9a29c00

4c6c8c

2ced414a91575a48f2dd29a

298E

474E 05d4b1ed6a6135eec3abd3f2

a6a196a504c3a7657d1fa41

230cc6bbc66b24eae94fa03d

b23526044

40f253cd228f7ac2d0aee

d8f4a9e463a1e89217f

3b566eaa70ed401479d43a9

ff07977fca5513098d220d1eb3a

916c686a1e82dba72524a

6c998bf2a5edd

6a3c6921b0aeceda3

a5a

a4c7d0 4f6f7f

bd2484 04904a458422a5b9

248df40dae

473E 08769f73d31c1a99be2d9363f

162E

23ad1

f8ff39eab120851f143bf19

1112164c2f7a

499f6985db294c

155d892827c33ed3cae3

78 216E

ac6e99186

f2a57e4d4f0cec516891e3

f490de272a7f6e4af346d40

391256c872

a7c99ccf6ddf6f5ebbe

f29dfb9

bdbdb31bd777fb65dd6dd2d0e7

427E

431430c49 6282bc21f6

a849f9d352e

a849f9d352e

71e6b

8292af691429f8d9ed481ff71ffd

ad9142a65f5eab78b4ca5e

404E 9dd5bf47f

8cd4d

3089106e3b

aa868f65c34cdb64f1fad19a

23ad1

14a3c17f3d

5c81103c751345d0ee0f4bd

aac615ae78

d6125ef42bd9958

e842

a9012b7bb5

297E 682E

4f05b

aeb8 04767

484E

23ad1

9ab6c66dc

792fd6f9df1fa1e33

78cc16f965adc5f712ea2372c6

391256c872

84907547f36d0ff7

4dbf4395236fb03ed

541ab86a2e

e5 4856000a6802ddfc121ef40432297

5c6a2

00265

376E f0d99f16 5c609b12c

c29ce10bb8d19b498355aa04

eccf7c722ddf

dd84fe6a65cfac7bca03ebd

318E

c3bbf4

681E c6b5321a

be8f4199f

483E be8f4199f

3eca1f94dc181

699e3db878047

60d0128bdb61ae40e98638bd1391

b69e426d974e1907e88 56292d076643

e65185ca

1c08373

375E be8f4199f 629e42

8c8b5bde6 8c8b5bde6

18083a711d

30cc206b1878485

c54f0fc1e05

ddfeabe456a9de5f5784

b630e1af6ae1997f0e8ba750

e851f5ddd920

b5c747cc9 866808df

e1fa7f549e5a0893bb42da5 a849f9d352e

3f0a2b4eb62f

69ce90c9b2 6577 d2498

1c08373

6236a67933a619a6a3d48

5f2592b20f13356b7fc8b42

eccfe5ff0af70fe9fbec8b2360f90 01db23a60422ba93a68611cc0

ef2d4636934472

5f865c374cb3fe976dd376b8

47cd70f

f496bcf0889b301d77819c

c4d32527b670afb370d643

48398d080dfcccced48da1980

010957669f3770aac

c71aa521578164debd0c5 23dc3a52fed9c119610b5e8

476E a9497e0757b0969bde707ed5

c10cb9baf4dcb43e24 876d120b38b0e88817

1ed5d7f63b8c6 664E

90cc275011c2013c61eb11

50962c93b4cb293f5beb59eb

171192dc1f8e6ea551548a910c00

a7a7f3681dad1250b01cf80bc17

aa868f65c34cdb64f1fad19a

b4ce21e0a3df1d097277d6

f3c4311de0e931f08c232b 7e493ee44b28

aff6d7896e0e142bbc3e78 ce

460aed10cc9

71512ec7d43f958f2b6da

408E efe092824916a5637ee35d439589

a3b6df27179b175c88fa4c9cf9f

412E

8b092

244E

51ec95518d1b3 05fed5e

e842 0bc7f8f513e0e74b270

406E

400E bbb13dc62adf2de2a42b6

460aed10cc9

bf

6331b3f

1a830d9f

df5dba74c75b228de48c

db6c4213a717bc 634E

768E

460aed10cc9

460aed10cc9

214E

552E

402E

448E

460aed10cc9 b5f038f79a3

3711

82a65ed4b69 9be88247

317E 3089106e3b

be8f4199f

438E

504E

fb16636aae

3089106e3b 3089106e3b

3b6b2c549de670d7bf5fc0ee

51e045ca826077ae765

b9ae94e6935503603341ecf4

16da5f1301b36df4df0f 4a36db80f1ab1e97

35b8742610 3089106e3b

663E

e1e4c23db39d8bd633c3a

2342b759c03 428E

2832ed5cea6

660ffeb76fc59 975fedfb64df

81bcc35f82891

fe6be3206549f5b5564acde84783

731857fe189fb398e80a0594

3e814305b42beb41b8c706

4280833ef80172

398E

1c07453d584f3d14b1876fdb

3f16509139c7dad5163b91799 00cbeb87c182ca0785f

71a48d11b2e7e56b1df128bd

6bce02baf91781a831e1b95

275afb2b215b966d9fac51b96b9

b06bbfa920aa95dd 162d8039483d8

f8128d574c356631b8a9

9f24ba80192c339a64c0

8f143077e

3a8173d6c

5a7a610a8a

81dabfaba8

81dabfaba8

f0bd1521

47b2da3d

33e1de

3b2f08d52e4bca3f9ca7bbbd6

99da1f8a5

3f9ddf1ffbc0d38b

b62cd1d0a0 369E

f0f45e707 59a8b435ccd

07

0fabab47

a8e9

0f940646

f0f45e707

5eea496cc301b2a9721

e3fd0c7b3

5a7a610a8a

86e9b0428 33e1de

ac487676a04e4

a2eab7c9fa641e5f

c0f34a600

619E

1b82200

683E

f78e145a127014eb43345a0c

0da9135 534E

a0befe6dd1ca7b165786835

fe821bce 676bbe7d1c1fb71742df534ce8 30d6138b63eb 233E

fb039d7a2a9fe73b5f468eba9

59a8b435ccd

8cbcf5cb5 bf141dbce e64f22a31

2d7b7fb6c9ad6821752651f7

b38049e00

01

5e9156098c064

a78eb40ae56aaa9

6448451ac2ceade90715378b

cd0d985a366cad7e

bf01c8a262

c96cb3 0f167280

37d80ae421dba4a70730338860

0acc5bb8ca4

eb8

eb8

162d8039483d8

ffccaa9e3

81dabfaba8 c5d5be3942

ffccaa9e3

a27037332d9fa5c43bcfe94c0

45827dbdd8

24431c3eb075102f07cc2c1be

3b1563a23eb9

45827dbdd8

f713a8b311ffa05ce3683ad10

e3bdbca0e2256fffa8a59018

9f24ba80192c339a64c0

eb8 eb8

fbdc3ca37406f66635c8b226e

9c9e2e0f2da8758e436c

6aae8d25951

676bbe7d1c1fb71742df534ce8

ffd1b1af3b6864078f3

91ecbe29a71f00ed5a3

eb8

81dabfaba8

f8128d574c356631b8a9

e82f47b8d4949ba4af69b38cbc19

45827dbdd8

45827dbdd8

eb8

b06bbfa920aa95dd

eb8

ac487676a04e4

4a38abc630c82b0c48dfbf5271

75ba8d840070942eb4e737849

6448451ac2ceade90715378b

eb8

d370c12dbc

eb8

5eea496cc301b2a9721

7e74e1587f3a4d208

46f754ea06f070dbc023e571a876

0acc5bb8ca4

11bb8ed3ae227d3acefc

8b06a67a

0acc5bb8ca4

3cdc90c57243373efaba65a

eb8

0a963fef9

1b13908a9f0763c0ae54af9062080

6aae8d25951

45827dbdd8

910b00285f11bb90d0a15641

81dabfaba8 45827dbdd8

1d163eac141def176461c

80874aa8

5e9156098c064

08dade990b2282

07f8a9e55a16beddb3c9153b0

86276bb1e23f2c7ffcbe82a0

46f754ea06f070dbc023e571a876

0acc5bb8ca4

bf01c8a262

fa2afbd869 533E 81dabfaba8

c1c30f30d40c4f1f84924622f

81dabfaba8

9937ccba1469

81dabfaba8

84e4f1c582427a98d7b

ea890ccca2f7c2107351

6c632ad9c42228bb337

dca32af03698c988b22

08dade990b2282

11bb8ed3ae227d3acefc

cd0d985a366cad7e

0f940646 f0bd1521

3b2f08d52e4bca3f9ca7bbbd6

6c632ad9c42228bb337

503737b64d432c60d6ac557e0e6

1d163eac141def176461c

f78e145a127014eb43345a0c

dca32af03698c988b22

18115fa32ff1cb99

84e4f1c582427a98d7b

ea890ccca2f7c2107351

18115fa32ff1cb99

fb039d7a2a9fe73b5f468eba9

0c72a426929600000f5

a27037332d9fa5c43bcfe94c0

0c72a426929600000f5

3cdc90c57243373efaba65a

173fd00917644f0f1f3e3

173fd00917644f0f1f3e3

24431c3eb075102f07cc2c1be

e3bdbca0e2256fffa8a59018

75ba8d840070942eb4e737849

07f8a9e55a16beddb3c9153b0

9c9e2e0f2da8758e436c

4a38abc630c82b0c48dfbf5271

86276bb1e23f2c7ffcbe82a0

root

root+PRISM

root+VPSC

Figure 4: Divergence of dissimilarity measures: for both graphs, σdist estimates that VPSC gives layout closer to the original, while σdisp predicts the opposite.

hstntx72 hstntx75 hstntx73 hstntx70 hstntx71 hstntx74

ftwotx64 ftwotx61 ftwotx62 ftwotx60 ftwotx63 ftwotx65

hstntx82

hstntx67 hstntx69 hstntx16 hstntx23 hstntx68 hstntx17 hstntx22

brhmal71 brhmal67 brhmal68 brhmal66 brhmal70 brhmal69

brhmal72 brhmal73 jcvlfl68 brhmal74 brhmal75 tampfl81 jcvlfl66 brhmal77 hstntx80 brhmal76 jcvlfl67 miamfl80 hstntx65 brhmal60 hstntx64 brhmal81 hstntx60 brhmal63 brhmal62 hstntx61 brhmal64 hstntx63 hstntx62 dllstx24 brhmal65 ftwotx80 dllstx72 brhmal61 austtx61 snantx80 dllstx70 jcvlfl81 wpbhfl80 dllstx71 austtx64 dllstx25 austtx60 brhmal82 ojusfl80 nworla81 austtx65 atlnga33jcvlfl61 austtx63 dllstx67 atlnga32 dllstx22 atlnga76jcvlfl63 dllstx28 austtx62 jcvlfl62 atlnga31 jcvlfl60 dllstx68 hstntx81 atlnga25 dnvrco79 dnvrco66 dllstx29 dnvrco67 dllstx21 atlnga75jcvlfl64 dllstx69 dnvrco77 brhmal80 tampfl80 dllstx80 dnvrco70 atlnga30 jcvlfl65 dnvrco69 dllstx31 atlnga77 dnvrco78 anhmca73 austtx80 chrlnc64 anhmca72 lsvlky81 dnvrco65 anhmca69 clmasc61 anhmca70 dnvrco68 anhmca78 dllstx76 jcvlfl80 chrlnc69 chrlnc71 orlnfl81 atlnga80 dllstx74 atlnga56 chrlnc60 anhmca75 anhmca65 atlnga71 atlnga70 anhmca67 atlnga64 okcyok80 clmasc60chrlnc70 anhmca76 anhmca68 dllstx77 atlnga79 anhmca77 anhmca66 dllstx73atlnga59 atlnga69 atlnga78 chrlnc65 chrlnc61 anhmca71 dllstx78 dllstx81 clmasc62 atlnga65 nsvltn80 atlnga16 atlnga34 dllstx75 atlnga58 anhmca63 chrlnc62 anhmca79 dnvrco81 dllstx55 mmphtn80 anhmca60 anhmca74 anhmca62 atlnga74chrlnc63 hmsqnj61 atlnga57 atlnga63atlnga35 sndgca80 clmasc80 dllstx59 hmsqnj60 anhmca61 dllstx62 anhmca82 dllstx56 atlnga09 stlsmo81 anhmca64 anhmca81 chrlnc66 atlnga36rlghnc80 chrlnc80 tcsnaz80 dllstx58 cncnoh63 atlnga62 hmsqnj62 dllstx57 dllstx61 dllstx79 kscymo21 atlnga83 dllstx83 kscymo18 chrlnc68 atlnga72 cncnoh64 gnbonc60 dllstx65 atlnga73 cncnoh61 atlnga67 dllstx60 kscymo67 dllstx66 anhmca80 atlnga37gnbonc61 atlnga68 chrlnc67 dllstx63 kscymo63 atlnga66 atlnga61atlnga81 gnbonc62 atlnga60 kscymo23 hmsqnj80 tulsok80 kscymo64 dllstx82 cncnoh62 cncnoh60 grdnca62 kscymo71 chrlnc81 grdnca60 shokca80 kscymo65 kscymo61cncnoh81 kscymo68 atlnga82 kscymo62 kscymo73 kscymo69 grdnca61snfpca81 kscymo81 kscymo80 grdnca80 kscymo24 cncnoh69 gnbonc80 kscymo60 dnvrco60 phnxaz81 mmphtn81 dnvrco62 cncnoh73 lsanca80 kscymo22 phlapa82 cncnoh72 kscymo82 kscymo17 dnvrco63 kscymo72 chcgil63 chcgil58 bltmmd66 kscymo83 lsvlky80 snjsca80 dnvrco61 cncnoh71 washdc81 phlapa83 bltmmd64 cncnoh68 chcgil79 cncnoh82 bltmmd68 chcgil08 chcgil60 dnvrco80 cncnoh70 dnvrco64 bltmmd71 chcgil62 kscymo70 chcgil32 nwrknj82bltmmd65 snfcca81 chcgil80 chcgil72 chcgil34 chcgil82 chcgil37 bltmmd63 bltmmd70 slkcut80 lsanca82 bltmmd81 bltmmd69 chcgil59 chcgil81 nycmny82 snfcca82 bltmmd67 chcgil30 phlapa80 phlapa81 bltmmd80 bltmmd62 chcgil33 chcgil64 scrmca80 nybwny80 chcgil09 chcgil70 chcgil65 cmbrma61 dnvrco82lsanca81 chcgil38 snfpca80 chcgil69 chcgil29 chcgil61 washdc82 noc30k80 bltmmd61 cmbrma60 cncnoh80 chcgil71 chcgil35 nwrknj81 rcpknj80 chcgil36 cmbrma81 cmbrma63 dnvrco71 chcgil39 cncnoh14 nycmny81 bltmmd60 dnvrco72 iplsin81 chcgil68 cncnoh13 cmbrma62 waynpa80 dnvrco75 hrbgpa80 washdt80 cmbrma65 chcgil83 cncnoh66chcgil67 hrbgpa62 cmbrma64 cncnoh16 nycmny83 dnvrco76 cncnoh65 cncnoh67 dnvrco73 cncnoh15 pitbpa80 dtrtmi80 cmdnnj80 ptldor81 omahne80 chcgil76 desmia80 cmbrma80cdknnj67 cmbrma69 dnvrco74 slspmd80 iplsin67 cdknnj80 washdc83 cdknnj81 chcgil77 chcgil73 rlmdil80 chcgil74 iplsin66 iplsin68 hrbgpa61 cdknnj66 cmdnnj62cdknnj71 cmbrma13 cmbrma68 chcgil75 dtrtmi81 hrbgpa60 chcgil78 cdknnj61 desmia64 desmia60 cmbrma16whplny81 sttlwa80 dtrtmi61 cdknnj68 desmia62 grcyny80 cdknnj70 clmboh81 hrfrct81 artnva80 cmdnnj61 cmbrma67 cmdnnj60 dtrtmi62clevoh80 dtrtmi64 dtrtmi60 desmia61 cdknnj69 desmia65desmia81 iplsin80 whplny80 cdknnj64 grcyny61 dtrtmi63 cdknnj60 cdknnj62 cmbrma82 grcyny62 cmbrma83 cmbrma58 desmia63 dtrtmi67 cdknnj63cdknnj65 clmboh80 hrfrct66artnva60grcyny63 cmbrma76 dtrtmi65 pitbpa81 dtrtmi68 hrfrct68 grcyny64 cmbrma59 milwwi80 dtrtmi70 clmboh71 artnva67 hrfrct67 clmboh69 artnva65grcyny65 cmbrma72 cmbrma77 okbril80 dtrtmi69 iplsin65 cmbrma53 clevoh60 hrfrct60 artnva66 desmia67 cmbrma73 dtrtmi66iplsin61 clevoh63 cdknnj82 clmboh67 cmbrma79 chcgcg80 artnva62artnva63 grcyny60 cmbrma57 clmboh68 clmboh66hrfrct62 stplmn81 iplsin63clevoh62 clevoh61 clevoh65 cmbrma74 cmbrma52 artnva61 cmbrma71 cmbrma55 desmia68 clmboh70 hrfrct61artnva64 artnva68 clevoh64 desmia66 iplsin60iplsin62 cmbrma56 iplsin64 albyny80 clmboh62 clmboh61bflony80 cmbrma75 cmbrma78 cmbrma70 cmbrma54 milwwi81 clevoh81 chcgcg60 mplsmn81 chcgcg63 clmboh64clmboh63 cdknnj76 hrfrct80 rlmdil81 cdknnj72 clmboh65 cdknnj73 chcgcg61 hrfrct82 clmboh60 cdknnj75 chcgcg64 cdknnj74 albyny63 chcgcg65 dytnoh80 akrnoh80 mplsmn80 cdknnj77 stplmn82 chcgcg62 dtrtmi82 albyny64 hrfrct03 bflony60 albyny60 hrfrct02 albyny65 clevoh66 bflony62 bflony61 albyny62 syrcny80 hrfrct65 clevoh68 albyny61 hrfrct63 hrfrct70 hrfrct64 clevoh67 bflony65 bflony64 bflony63 hrfrct71 hrfrct04 hrfrct72 hrfrct05 chcgcg81 hrfrct73 hrfrct74 dtrtmi71dtrtmi75 dytnoh65 dytnoh60 hrfrct69 dtrtmi74 dtrtmi79 dytnoh64 akrnoh62 dtrtmi72 dytnoh62 dytnoh61 akrnoh61 dtrtmi76 dtrtmi73 dtrtmi77dytnoh63 akrnoh60 dtrtmi78 chcgcg71 chcgcg66chcgcg70 chcgcg68 chcgcg67 chcgcg69

badvoro

badvoro+PRISM

badvoro+VPSC

b124

b124+PRISM

b124+VPSC

F gure 5 Compar ng PRISM and VPSC on two graphs Or g na ayouts are sca ed to have an average edge ength that equa s 4 t mes the abe s ze

JGAA, 14(1) 53–74 (2010)

67

Table 3: Comparing the dissimilarities and area of overlap removal algorithms. Results shown are σdist , σdisp and area. Area is measured with a unit of 106 square points. Initially the layout is scaled to an average edge length that equals 4 times the average label size. Graph b100 b102 b124 b143 badvoro mode ngk10 4 NaN dpd root rowe size unix xx Graph b100 b102 b124 b143 badvoro mode ngk10 4 NaN dpd root rowe size unix xx

σdist 0.74 0.41 0.52 0.5 0.35 0.57 0.25 0.25 0.14 0.73 0.16 0.35 0.25 0.39 σdist 1.18 0.69 0.84 3.8 1.09 0.46 0.49 0.43 4.14 0.41 0.62 0.55 1.13

PRISM σdisp area 0.36 14.59 0.18 2.62 0.12 3.39 0.22 2.59 0.15 11.85 0.35 0.78 0.05 0.54 0.06 1.15 0.03 0.54 0.28 16.02 0.04 0.38 0.11 0.54 0.07 0.6 0.18 4.23 VORO σdisp area 0.47 131.55 0.36 19.09 0.39 19.35 0.9 4.45E5 0.58 20.02 0.2 0.79 0.22 2.28 0.23 0.6 0.94 3.68E8 0.2 0.68 0.34 2.07 0.24 0.64 0.44 185.7

σdist 0.95 0.44 0.28 0.67 0.65 0.84 0.16 0.15 0.1 0.73 0.11 0.28 0.13 0.45 σdist 0.49 0.33 0.43 0.57 0.34 0.44 0.23 0.33 0.38 0.39 0.25 0.28 0.20 0.30

VPSC σdisp area 0.62 25.33 0.33 2.77 0.06 3.04 0.41 4.26 0.58 11.71 0.59 1.45 0.03 0.53 0.04 1.15 0.03 0.53 0.7 25.93 0.03 0.38 0.08 0.57 0.04 0.59 0.34 4.54 ODNLS σdisp area 0.24 1.09E3 0.15 41.01 0.26 14.64 0.36 29.39 0.10 166.53 0.28 45.21 0.12 2.21 0.18 4.86 0.29 1.45 0.14 1.52E3 0.11 2.01 0.16 3.35 0.09 2.01 0.11 45.18

68

Gansner and Hu Efficient Node Overlap Removal

Table 4: Comparing dissimilarity and area of overlap removal algorithms on the Rome suite of test graphs. # stands for the number of graphs within the size range specified.

sizes

#

10–19 20–29 30–39 40–49 50–59 60–69 70–79 80–89 90–99 100–109

1407 839 2036 1800 1045 1172 1008 788 1296 140

PRISM σdisp area 0.009 0.16 0.02 0.27 0.03 0.36 0.035 0.43 0.042 0.51 0.046 0.58 0.051 0.64 0.05 0.71 0.054 0.78 0.055 0.82

VPSC σdisp area 0.09 0.061 0.11 0.12 0.13 0.19 0.14 0.25 0.15 0.32 0.17 0.39 0.17 0.46 0.17 0.52 0.18 0.59 0.18 0.61

VORO σdisp area 0.14 0.069 0.14 0.15 0.13 0.26 0.12 0.36 0.11 0.53 0.11 0.70 0.11 0.94 0.10 1.20 0.10 1.49 0.10 1.7

ODNLS σdisp area 0.07 0.34 0.078 0.92 0.078 1.85 0.074 2.71 0.074 4.53 0.074 6.18 0.073 8.44 0.07 9.99 0.069 13.26 0.068 14.14

VPSC, VORO and ODNLS on the Rome test suite of graphs [4]. This suite has a total of 11534 graphs5 of relatively small size. Due to space limitation, we only give the similarity measure σdisp and the area, and we average the results over graphs of similar sizes. Again, PRISM achieves the best compromise between being close to the original drawing, and having a smaller drawing area. We note that while there is no theoretical result guaranteeing that PRISM algorithm converges to an overlap free layout in a finite number of iterations, in practice, out of thousands of graphs tested, some as large as tens of thousands of vertices, PRISM always converges within a few hundred total number of iterations in the two main loops in Algorithm 1. In our implementation we set a limit of 1000 iterations, even though this limit has never been observed to be reached. Table 5 gives the number of iterations taken for the 14 test cases in Tables 2-3. As can be seen, for these graphs, the maximum number of iterations is 122. As a demonstration of the scalability of PRISM, we consider its application to a large graph. This is a tree from the Mathematics Genealogy Project [32]. Each node is a mathematician, and an edge from node i to node j means that j is the first supervisor of i. The graph is disconnected and consists of thousands of components. Here we consider the second largest component with 11766 vertices. This graph took 31 seconds to lay out using SFDP, and 15 seconds post-processing using PRISM for overlap removal. PRISM converges in 81 iterations. Important mathematicians (those with the most offspring) and important edges (those that lead to the largest subtrees) are highlighted with larger nodes 5 Three

graphs were dropped from the test because they were disconnected.

JGAA, 14(1) 53–74 (2010)

69

Table 5: Number of iterations taken in the two main loops in Algorithm 1. A: initially the layout is scaled to an average edge length of 1 inch. B: initially the layout is scaled to an average edge length that equals 4 times the average label size. Graph b100 b102 b124 b143 badvoro mode ngk10 4 NaN dpd root rowe size unix xx

|V | 1463 302 79 135 1235 213 50 76 36 1054 43 47 41 302

|E| 5806 611 281 366 1616 269 100 121 108 1083 68 55 49 611

A 122 66 43 46 53 43 29 34 26 103 28 29 32 53

B 75 44 19 26 32 26 8 9 6 119 7 14 8 46

and thicker edges. Figure 6(top) gives the overall layout, which shows that PRISM preserved the tree structure of the layout very well after node overlap removal. Figure 6(bottom) gives a close up view of the details of a small area in the center-left part of Figure 6(top) with many famous mathematicians of early generations. Additional drawings of this and other components of the Mathematics Genealogy Project graph, including that of the largest component, are available [21].

6

Conclusions and Future Work

A number of algorithms have been proposed for removing node overlaps in undirected graph drawings. For graphs that are relatively large with nontrivial connectivities, these algorithms often fail to produce satisfactory results, either because the resulting drawing is too large (e.g., scaling, VORO, ODNLS), or the drawing becomes highly skewed (e.g., VPSC). In addition, many of them do not scale well with the size of the graph in terms of computational costs. The main contributions of this paper is a new algorithm for removing overlaps that is both highly effective and efficient. The algorithm is shown to produce layouts that preserve the proximity relations between vertices, and scales well with the size of the graph. It has been applied to graphs of tens of thousands of vertices, and is able to give aesthetic, overlap-free drawings with compact area

70

Gansner and Hu Efficient Node Overlap Removal

in seconds, which is not feasible with any algorithm known to us. It is possible that algorithms such as VPSC, which rely on separate passes in the X and Y directions, might be improved by randomizing which overlaps are removed in which pass or by gradually removing overlaps using many alternating X and Y passes. This would, however, further increase their computational cost, which is already much higher than the algorithm proposed in this paper. For future work, we would like to extend the overlap removal algorithm to deal with edge-node overlaps. We would also like to explore the possibility of using the proximity stress model for packing disconnected components.

Acknowledgments We would like to thank Tim Dwyer and Wanchun Li for making their implementations of VPSC and ODNLS, respectively, available to us. We would like to thank Yehuda Koren and Stephen North for helpful discussions, and Stephen Kobourov for bringing our attention to the term “Frobenius metric”. Finally, the reviewers’ comments were very helpful, especially in making the exposition clearer and more accurate.

JGAA, 14(1) 53–74 (2010)

71

Karagrigoriou Winnicki Guo

Lee

Feng Chan

Bendsøe

Park

Chan

Rabinowitz Yu

Wang

Nielsen

Sigal Teng

Betensky

Amirdjanova

Tanaydin SunJin

ZhangYen Beissinger

Chaubell Nesi Firoozye

Grabovsky

Sternberg ConnellLowe Tepedino

Hagen

Girao Redondo

Gordon

Blanchette

Sell

Bouwsma

Pitts

Solomon

Denne Brown Meier

Johnson Wicklin Meloon Richeson Iturriaga Rovella Ruggiero Craizer Barandarián Castro

Asher Frank

Araújo Mañé

Rodriguez Sambarino

Viana Horita Muniz Abdenur

Lopes

Rios

Costa

Rocha Reis

Metzger

Sad

Camacho

Kitchens

Young

Fahlberg Hu Liu

Boisdefre

Topuzu Cornet Bonnisseau Benoist

Medecin

Yildiz

Nussbaumer

Chang

Sawyer Sun

Byers

Sessions Oehsen Costes

Edwards

WisniewskiGottlieb

Friedman

Shub Miller

Lopez

Munoz Lacomba

Tai Tang

Kostlan

Conlon Brooks

Huang

III

Ling

Chiang

Block

Han

Lin Liu

Winter

Dippolito

Cogswell

Rice

Morris

Feng

Wilding Yu

Duffin

Lin

Wimelaratna Kruse

Rogak Lee

Espina Zhou

Hopper

Kelly Flinn

Chidume

Bragg

Oh

Morse Peterson

Mena Ketchum

Starcher

Sigley Udinski

Mott Ferraro

Reis

Hood

Samaratunga

WoodwardSastry

Megginson

Smith Dobbie

Anderson

Vasudevan

Fairchild Jenkins

Bardwell

Cholewinski TauswortheLiang

Lang

Kent

Stiffler Cheng Golomb Gaal

Imhof

HurdSherman Bunn

Locke

Krahn

Coe

Hinrichsen

Verde

Overdeck

Birkhoff

Street Brink

Hedrick Crosby RubelHartfiel

Kabak

Ma

Milnes

Lam GardnerLiu

Kadison

Krishnan

Larsen

Cho

Tan Park

Rho

Sneyd

Nam Lam

Weinberger

Wilson

Fulkerson

Keenan Haber Ryser

Andree

Thurber

Nelson Goodman

Kangas

Mitchell

Robinson

Darragh

Mosley McLeish Johnson Macpherson

Moore

Lazier Osborn Koepp SchaferTomber Hathway Mitchell

Bobo Camburn Paige

Allen

Ward

Stroud

Stanek

Price

Moore

Sagen

Kearns

Bai

Hoffman Lee Ye Lam

Rayburn

Feil HoPark

Greenwell

Bhattacharjee

Spencer

Cooper

Dowd Johnson

Mathas

Umland

Barreto

McIsaac

Blackburn

Barton Garren Ozmutlu

SmithYun Turnbull

Waller

Grady Spencer

Tierney Hamilton

Winston

Bose

Kuruc

Fong

Parent Lieberman

Gregory

Brundan

Tsai Wallenius

Schaffer

Mukhopadhyay

Shui Dass

Lee

Liu

Shyamalkumar

Lele

Sun

Cutler Dey

Miller Coster

Bresenham

Yang

Berger Perez

Wang Kipnis

Kujawa

Albert

Varshavsky

Matthews Altman Johnstone Adak

Konnerth

Chen

Beattie Berliner

Gavin Crato

Kovacs

Preston

Campbell

Conlon

Sweitzer III Haran

Sanghvi

Bulutoglu

Brown

Birmiwal Zhang

Müller Notz

Resnikoff

Atkins Ture Stroud

Cheng Levins

Kleidman Purvis

Li

Patra Molitor Tra

Liebeck

Audu

Goodwin Tulley ApineJoseph

Kojima

Ozsvath

Vauhkonen

Steiner Rudolph

Lloyd

Hines Howie

Lu

Mira

Law

Bamberg

Lischka

McSorleyBuczak

Naegel

AtkinsonBoos Bamblett

Guwal Momoh

Dolan

Gray

Pantano Lamy Agnus

Venkataraman

Cook

Britnell Cohen Sin

Klerlein

Stokes

Nuebling Rashwan

Jones Ahmed

Tryer Ronse

Tompson Behrendt

Roney Whelan

Pinneri Williams Gasquoine Shareef

Wells

Evans

Neumann Atkinson

McNab Lataille

Menon

Giudici

Cameron

Teague

Armanios

Brydon

Möller

Eaton

Hasson Robinson

Lund

Oehmke Randolph

Myung Divinsky

Bruyns McIver

Langworthy Li Yu Dean

Hemminger

Sharp Ramsay Pantelidakis

Bhattacharya

Husband Nimmo Bondari

Rall

Langroodi Oktac

Iranmanesh

Cauchie Penttila

Gomes Gilbey

Covington Tarzi Peile

Fang Pasechnik Emmens

Greenhill

Mellor Pipinos

Rutherford

Gamble

Praeger Li Raposa

Zhou Saxl

Myers Kosier

Wu

Wichman

Lander Andreou

Cohen Maund

LimCuaresma Royle Alejandro

Rodgers

Hegedüs Lawther

Wang

Hentzel Kovach Ritchie Whitt

Statton Perlis

Vaughan

Qian Heisterkamp

Bending

Hartley Khayaty

Whiston Inglis

Cartwright

Hungenahally

Liu

Maharjan

Nochefranca McKay

Schneider

Groves Quick HaighMann

Yu

Xiao

Sanderson

Camina

Traustason

Inyang

Devine Yang

Baddeley

Clifton

Carlson Peng

Young

Schiller Knudson

Kambayashi Sardinas

Weinblatt

Stewart Sim

May

Callahan

Patterson

Petalcorin Danielson

Lee

Shapiro

Boyle Lau Rao Camillo

CaldwellCozzens Faith Smith

Hinson

Zelinsky Gerstenhaber

Giaquinto

Helzer Rosset

Fraser

Levine

Jain

Ornstein Kuhn

Zhang

Reisel

Zaroodny

Lawver Weston Jeon Smith

Cropper

Demas Daugulis

Zaromp Whitney Coll

Rockoff Penico

Smith

Feinberg Morgan

McDougal

Schack

Osofsky

Ritchey

Jones Sherman Kullmann

Zhou

Purcell

HwangKim Adams Hamm Rivera

Pringle

Dorner Pond Leahy Lipman

Chen

Viola Bahrampour

Adkins

Hamaker

Magid Ludington Curtis Brown Song

Goldwasser

Tsaur

Rodriguez Gibson

Schirmer

Roark

Nakao

Yuan

Rees Halpenny

Payne

Eballe

Doraiswamy Naylor

Dahlberg Juan

Jamison

Brown Salter

Huthnance

Bridges

Birgoren Aungst Murthy

WakefieldBarbina

Harkins

Recoder Raczkowski

Kao

Bagley

Ponomarenko

Mellendorf

Shao Scheick

Patenaude Nikolai

Lester Robinson

Tu

Bousbouras

Ulmer Davenport

Waiveris O

Ota

Lister

Dinolt

Gardner

Huang

Anthony

Umoh

Kosler

Boyer

Foregger Jung

Son

Cho Tinsley

Lisan Terry

Archer

Zhao

Suwilo

Brualdi Michael

Mason Chavey

Johnsen Solheid Anstee

Henderson Houghton

Foregger

Ross Pritikin

Tannenbaum

BlandShallcross

Ko Willard

Quinn

Kuchenbrod

Lee Deretsky Putnam

Jensen

Felouzis Smith Hindman

TrigosFerreiraRetta

Kirby

Poet Shader

Hsieh

Skipper

Bender

Wilson

Eilers

Shpigel

Lawrence

Scobee Dietrich

Schneider Wachsmuth Metzger

Petrovic

Deliyanni

ElManshad

Phillips

Miles Zitarelli Downey

TischerHeiman Tseng

Weiner Monico

Liu

Childress Bedford Kwon

Squires

Park

Hopenwasser Brenken

Plachy

Han

Kweon

PanLevenberg

Hantler Taylor Li

Seidel Luecking Gaer Fenceroy

Rosenthal Allen

Vanaja

Kellogg Lu

Williams Suchan Timoney

Hessler

Limperis

ChildMalone Phillips Tsui

Wilson

Cope Miller

WilliamsGarabedian GravalosGuenther Robbins Pekara Gautier

Shimanski

Wymore

Marathe

Muoneke

DeMar

Guelzow Strenk Chang

Zhang Steen

Betz O Batchelder

Conkwright

Gurwood

Knappenberger Meush

Matagrano

Murray Slepian Belbahri Liu Pairman Quackenbush

Clippinger Lancaster

Mayhew Fredricksen

Kruskal Wilson Hoover

Steimley

Smith

Eberlein Linden

Daly

Kitto

Runnion

Baloglou

Noble Widman Tang Comisky Zhou Comfort

MacLean Moore Stromberg Lee FergusonVeiler Erlebach Peterson Hawley Butler Austin Baartz Argabright McKennon Grubb Hart Simmons Gage Griffin Dearden Jewett Gan Novak

Smarandache

Yan Cifuentes

Bund

Hewitt

Lang

Jacobs

Chaney Chen

MacNeille Michelson Donoghue

Koranyi Resnikoff

Hughes Sinkhorn Roberts

Roberts Dauns

Galbraith Unnithan Pinkham Holley

Hestenes

Cohen

Thoene

Gaffney

Stone Finch

Achilles Burghduff

Ruchte Haimo

Taylor Yovanof Trachtenberg Aswad Waksman Song

Scheffé

Suzuki

BuckMather Hintzman

Ginsburg Broverman

Browder

Vrem Petrich

Keeler

Coury

Kong

Buehler

Cardan Bartelt

Todd

McCann Zhang

WalkerRutan Bloom

Albert Crow

Rechard

Peinado HosfordEnersen

Liu

Argyros

Negrepontis

Ross Davies Wu

Lichtman Roush

Putney

York

Byrnes

Woods Sovereign

Harper Parr

Peters Hollingsed Hanes Wilcox Saks Masaveu

LaDuke Al

Ndakbo Frey Vakil Swift

Andre

Forster

Stuck Lin Lopez Itzkowitz Parker

Anderson Dudley

Munoz

Froderberg

Asmar Ghosh Nenadic

Mozzochi

Mann

Gao

Diamond Dow

Gutschera

Sutton Lewis

Kannappan

McMullen

Yap Ögren

Gefeller

Metzger Heo Newman Feinerman

Jeang

Hernandez

Capozzoli Fisher

Spatzier Adams Payne

Wilson

Zhu

Alexander Wolk Hawkins

Xu Passow

Lafont

Thayer

Hutchinson Thompson

McKibben

Koopman

Vogt

Zimmer

Hitchman Corwin

Bloch Rehbinder Egerstedt

Calkin

Seltzer

Tang

Cole Taylor

Smith

Moskovitz Yen

Sarma Guilford

Griswold

Adams

Chu

Widder

Ruiz

Benveniste Sanje

Hagerty Koelling

Lehmacher Jacobs

Li Infante Schach

Wu

Przebinda Allali

Quiroga

Szaro

Pergler

Spiteri Oliveira

Qian

Zhu

Manderscheid Wong

Wong

Kim

Kowalsky

Pardalos

Gorman Huang

Fiske

Urenko

Gonzalez

Unni Akutowicz

Garder

Hirschman

Phillips

Ascher Daniels Lin

Xue

Lin Butterworth

Kinukawa Porter

Saari Tien

Zhang

Chou

Shen

Milojevic Conjura

Jones Hulkower

Protsak

Lin

Johnson TaoOmori

Huang Kim Howe

Brown Sivaramakrishnan

Mackey

LaRiccia

Sim

Mouhab

Willson

RatcliffHerman Lee

Plastiras

Scull Fox BewleyBlackadar

Garraway

Laubenfels

Chernoff Ramsay

Murray

Yeo

Wehrly

Lu Haunsperger

Quint

Insel Erceg Seifert Moore

Potter

Arvin

Carlton

Carter

Kühl

Kaiser Papageorgiou Meaney Burrell

Ragozin

Zilber Haynor

LaDue Mathews

Misaghian

Petryshyn

Wang Baek Yu Yang Tataru

Khadivi Green

Busby Weissler

Warner

Rosen

YangFitzpatrick

Williamson

BennettYan

Pollard Marut

Guy

JenkinsLeavittBruning AthanasopoulosFuzak Bailey

Stevenson

Patnaik

Cline

Prather

Saenger Boas

Hughes

Hoffman

Graesser

Ark Rosen

Mugler

Imoru

Chun Greene Tangeman

Smith Gao

Prins Goodner

Leech TrembinskaSaltz

Schwid

Colvin

Mosbo

McDonald

Song

CastlefrancoHethcote

Arnold

McMinnLeipnik

Obersnel

Ghosechowdhury DeBranges

Dhavakodi

Senge

Anders

Che

Xia

Stromquist

Vaysleb Webster

Cohen Lucke

Packer Glenn

Jiang

AlladiReti

Wasserman Koschorke Dahlmeier

Hales

Winkler

Anderson

BrandsteinJones

Fabec

Chin

Motzkin O Brizolis

Shipman Mesirov Ault Turyn

Gleason

Clanahan Effros Voichick Poon

O

Wadhwa O Curole

Reyes

Ritt

Cayford

Soule

Testa Tucker

Steward

Northcutt

Pederson

Vass Erickson

Langer Smith

ArmendarizShirley

Wayment

Sato Straus

Kittaneh Anderson

Kulkarni

Lautzenheiser Deal Lebow

Sherman

Ewell

Finch Kinyon Easton Lafferriere

Dupree

Edwards

Stewart Baskervill

Smith

SparkmanChen Williams Newenhizen Schwingendorf

Yang Bolstein Eidswick Li

Schrot Frady

SmithCole

Macon

Abraham Whitmore Sturtevant

Mitchell Barron Cashwell Booth

Johnson Ziebur

Hummel

Hopper

Hinds

Pellicciaro Manougian

Ettlinger

Lumberg Culwell Kowalik

Klopfenstein Shulman Seitelman

Davis

White

Lee

Wermer Gajendragadkar

Stampfli

Dondoshansky

Balogun

Kasdan

Brennan

Wang Ivanovski

Martin

Masiello

Krakowski HillikerGross

Gaddis

Kenschaft Zarikian Nikshych

Basener

Dawson

Fan

Robinson

Falley

Fraenkel Mor Schatten III

Neidleman Dorn

Ott

Uherka

Tucker Bryan

Pignani

Drucker

Williams Walston

Falbo

Al

Deaton Streit

Borosh Tassa Klein

Goodrich

French

Shen

Dupre

Ng Kamowitz

Andreano

Crofts

Chi

Khavinson

Kumagai

Thomas Benndorf

Dubinsky

Wild

Kurtz

Levasseur

Lewis Stead

Mabizela Wilhelmsen

Bunyan Chandapillai Lowney Newell Hartung

Haltiner

Stone

Kazarinoff Koo Liu

Liu

Leader

Li

Meddin McKelvey

Kowalski

Davis Hale SongMoore

Marshall

IV Chou Shults Hines McPhee

Ferrucci

Weinberger

Alspach

Sajna Varga

Zhao

Elliott

Bressler

BeesleyStenberg

Boyer

DurisPatrick

Kodeih Rogers

BlumenthalHatcher

Zhang Luo

Weihe

Chang

Goldberg

Karney Lobb Morley Boyce OsbornYun

Lazarev

Gaspari

Wilks

Garza

Bledsoe Karlovitz

Mangrad

Kellum

Hasting Meyer

Tse

Shahshahani

Sanches

Withers

Bennett

Porsching

Tran Goodman Banerjee

Saunders

Wan

Bowen

Wong

Peterson

Dinkel Chou

Shields

Bott Teleman Holzsager

Benardete Perez

Ales

Morris

Cleveland Li Pfaff Sion

Marinov

Hundal Faulkner

Whyburn

Showalter

Clarkson

Dolan

Valentin

Boyd Bolano

Shonkwiler

Herwitz Ross

Hunt

Cecil

Shannon MillerChang

Najfeld Deutsch

Kuai

Shotwell Modeer Tsolomitis Chinn

ZhanHare

Kenyon

Ulrich

Luft

TurrittinRang

Qin Lin

Zhong

Leeds

Blondeau Glynn

Woods

Whitfield Wilson

Birnbaum Apaloo

Faires

Durnberger Liu

Ho

Darrah Schedler Koidan

MooresDemers

Szenes

Kim Quenell

Tolman Priest

Dowling Schneider

Hansen Eloe

Federer Wang Hardt Freilich

Pace

Taliaferro Aslan

Hamilton Tabor

HallGlover

Waters

Gibson

Nuzman Ford

Nyberg

Vidakovic

Rhoades

Woo

Bales

Yang Lauer Saltsman

Ochoa Deal

Lewis

Hilt

Raines Norris

Limber

Lin Fitzpatrick

Dawson Huff

LawTong

Shaki FelzenbaumNurlu

Wu Wang Poulin Haskins Hernandez McShine Bierstone O Guilfoyle Wilkin Lockhart Bradlow Hyeon Wang Wang Xian Saber Tetali Graff Wu Uhlenbeck Daskalopoulos McDonald Ossowski Hsu LeePark Nowak Bloom Dolan Lamport Råde SchmidtDragerSedlacek Oliveira Alho Aigner MuthukrishnanKao Bulancea Palais Terng Spencer Subramaniam Eck Basu Simen Sung

Sidney Shieh

Dadarlat

Safari

Vasas

Joe Li

Vardi

Bowker

Suciu Ajoodanian

Langmead

Doyle

Matei

Ju Feighn Lisca

Kiefer

Shor Kaufman

Lorden Huffman

Carmichael Mech Muddana Jacobs Anderson Martineau Bardoe Kuntz Leness Ward Ha Zhang Clingher Solel Pedersen Kaiser Bower Heinicke Chivukula Lopes Batigne Palmer Bristow Wolfowitz Dribin Renshaw Rees Bannon Morgan Wiorkowski Gupta May Fisher Hsu Everett Wilde Harris Harper Reinsch Hensler Kropp Boyce Merriell Fuller Miller Walker Collins Lim Yang Trampus Sezinando Lewis Rogers Dahlin Malone Cudia Luthar Jenkins Foreman Sealander Strehler Borden Beveridge Calvert ShefferBrinkmann Smith Ge BensonLinfield JacobsBhandari Heckman Hampton Lok Hjelmborg Sharpe Rinehart Bryant Landvoy Lawson Kennedy Goldhaber Day Fulman MohammedStephens Moore Nkwanta Biggs Sheung Cooper Block Hamilton Liggonah Carman BullockZielinski Lee Mayer Aarnes Jennings Bailey Deloup Albert Jensen Chuan Ernest Archer Owens Purdy Shapiro Brown Bari Kahn Calhoun Latremoliere Moore Larkin Hachmeister Martin Weiner Anderson Bird Munroe Luttinger Hasssani Zapata Crosby Truitt Gordon Camm Gibbon Clapham Peach Tsau Brannon Blincoe Mortensen Shaikh Tyrer Brown Stockton Pearl Campbell Katz Woodard Lofaro LaTorre Lee Jastrzebowski Kokoris Chaffer Beyer Koch Silverman Amin Jessup Killen Nail Taylor Weintraub Rowlinson Simpson Frohman Jones Oakley Bell Kannowski Ferguson Wang McConnell Brady Kaplan Hansen TzungGuglielmi Shafer O Gunnells Portman Rørdam MacDuffee Marston Morrey Ayres McKayle Trautwein Yagi Lai Jr Sandler Burdette Hill Maqsood III Lewis Rodabaugh Amrine Lee Shepard Dushane Xu Rowley Jackson Beer Wang Green Kahng Carter Xin Fung Rickman Miller Morrel Winslow Manseur Davidson Rosen DuBois Cullen Taylor Dean Unger Crawford Samuel Barnes Cross Wolcott Hussein Kaminski Thwaites Chuang Graham Groah Scott Usadi McCooey Askitas Wagner Woodson Bryson Goresky Wong Sabotka Thompson Penn Terrell Neuhaus Griffing Wilansky Bonvallet KaliszewskiBlankenhorn Belate Gruendler Kiem Lee Martin Assadourin Murray Laverell Stormer Perna Kist Peercy TornheimDubisch Hayes Hanamura Uschold Iqbal Radloff Bush Kiokemeister Yang Chandler Griffin Kim Tomforde Miles Nolting Crawford Stark McAllister Smith Cappitt Babson Sommerfield Kipps Kathman Heo Sternbach Harty Buoni Timm Gader Taylor Wichman Scott Epelbaum MullineuxMushtaqAshiq Sussner Feidner SchweitzerAvitzourPutnam Hemmer Kerr Ortmeyer Garside Jewell Curtis Mesina III Nishibata Maesumi Ho Shover Chern Talmage Cockburn Ji Kan Howard Ha Brown Williams ChangLeviatan Helms Shin Edmonds Williams Loring Ostling KalischKa Morley Fletcher Greathouse Laning Kidwell Kroll Abadie Howard Ritter Ward Walter Danskin Vivian Clarke Siegel Wiegmann Richards Kelly Doyle Randell Slivka Johnson Hall Zhu Hummel Chen Franekic Goheen Buley Davis Nyhoff Temple Wagner Pujara Zettel Arvola Schwartz Hampson Dorff Cassady Zhu Kumjian Kupka Rieffel Zhao Falk Westlund Boyles Tritter Smith Staal Dristy Kamran Huef Tidd Schneckenburger Orlik Xu McDermott Schiefelbusch Heath Terras Ye PaesGlimm Newberger Jordan Shaheen Kirch Cohen Johnson Zumbrun Yu Zeng Li Rawdon Rhode Dinnen Jacobson Butson Simon Tsai Howson Lee Patterson Clemens Shapiro Frykman Nagy Smith Baker Eifler Getu Plotnick Seaton Aizley Flanders Powell Hupert Iorio Morrison Biggs Brand Smith Higman Kerr Stafford Bratteli Croom Smith Wilson Stewart Heilman Wang Morris Megory Enge Sikko Krabbe Chou Friedman Raimi Kuller Page Johnson Deskins Pant Bailey Lewis Nimershiem Feist Boyle Scheuermann Marchesin Simond Frankel Madden Berg Howard Farsi Lien Smoller Conder Luke Curtis Vance Odle HajacRenault Alperin Agrawal Kim Li Fei Parker Szydlik Cartlidge Li Cox Liu Thompson Mitchell Boisen Wheeler Kim Lee Jerison Andrus Bukiet Hardell Anderson SpencerThurston Khodja Hoyle Griego McDonough Morse Ramazan Isaia Snyder Carroll Combe Cashing Ollman Ayres Oh Finkel Park Hinrichsen Case Shultz Mack Williams Bakke Roseman Kalyansundar Atalla Radjavi Katzenstein Smalø Logsdon Hughes Hukle Exel Silverman Barker Barrow Winter Linden Kim Shamash Duran Phy Stoudt DeVos Park Lien Ramras McEachin Rhoades Ayres Marchetto Furtado Boukaabar Sheu Brauner Cadet Marlin Southcott Rees Phillips Iyengar Gantos Perkovic Rolfsen Mason Boyer Dana Addepalli Tennant Hotchkiss Kuo Venzke Derr Rosenberg Graves Fattahi Kim Laforest McDonald Petrucco Gans Khan Kim Sedlock Marwaha Fletcher Quinn Bhatia Ganske Patty Myers Brunner Smith Tobin WoodhouseBeetham Everitt Pao Raymond Zaks Gluck Wilson Potoczny Shaffer Chatland Oh Schaufele Aghajani Wilson Latimer Yang Bridger Brumer Riley Yoon Hesaaraki Green Nardo Burry Hosada Abadie Garaizar Stancl Liu Sharma Rosenholtz Putnam Pyle Hakawati Marcos Fair Reddy Rouch Gardner Miller Levy Tessaro Blackwell Leen O White Cerri Walker Hewage Neumann Kyrouz Ong Wassermann Rocca O Johnson Boersema Razvan Pedersen Wenger Witherspoon Roe McCulloughGrasse Reed Myers Isaacson Lee Flint Stangl Hewitt Jonsson Taylor Dobcsanyi Prince Engvall Blanton Chellevold Pitcher Gilliam Fisher Yahaghi Simonic Mukherjee BellEthington Rhee Ledet Keiter Smith Mazaud Brumfiel Kannan Rosenthal Thomas Guan Underwood Ranum Baker Silberfarb Brown Dreifus Katz Wilson Harvey Farjami Exner Pilz Eudave Kabbaj Brandt Dickenson Cairns MacDowell Sanwal Keswani Brixey Antonelli Porter Latil Easton Martin Schumann SandersonHull Lashof Eszter Hoff Abramson Sorets Macchione Hsu Shy Katsuura Kasum Reeves Adams Hoare Schultens Radner Wayland Ray Doerstling Smith Friedman Harris McBay Whitaker Gerges Lampazzi Jochner McMorris Gallinari Moghadas Jahandideh Margush LaBach Voce Wilson Johnson III Hall Breen Bhatia Miller Miller Bussey Zarnowski Jones Bloomberg Shannon Williamson Hardy DeSapio Brown Eisenstadt Leighton Ng Spencer Sola Turner Berg WuMoon Matthews Ross GriffithsNowlan Auslander Munroe Bellis Razani Titcomb Zhong Moran Shook Haberzetle Hemmingsen Hong Bellamy Tsyganov Ryan Woodruff Heider Frohliger Luo Collet Kostenbauder Ding Moser Mayland Kelly Brown Smith Savage Jordan Robinson Couvillon Mason Kricker Kowng Wang Munasinghe Wilson FeauxHunsucker Estes McDill Surace Zhao Clark Weller Lees Yohai Gough TannerBurkinshaw Davis Peterson Diny Garten Corbett Ishii Prince Brahana Kim Wallgren Braga Scharlemann Sirotine Patil Clay Carothers Natsheh Platzeck Haddad Varadachari Lam Mercuri Appelbaum Fukuoka Naddaf Schor Kulkarni Costa Garrett Dickey WillerdingGeorges Newell Zacharia CoppotelliThiel BarrWiginton Rees Person Nipp Koslowski Moore Su Behrns Strebe Kim Dickson KuoXu Pall BomanTollefson Kalliongis Chandler Fay Stark Todorov Martsinkovsky Barrett Fox Johnson Larsen Litzinger Ballard Sparks Smith Kim Boden Cochran Joseph Foster Ghuman Elsner Larguier White Jeevanjee Aitchison Giller Teter Namboodri Caron Irwin Matherne Minkus Heitsch Green Schultz Lewis Kaplan Milgram Tang Taylor Brown Grant Vandenboss Peralta Montgomery Doll Fremon Keener Kainen Smillie Harada Lima Maier Ling Webber Nelson Frech Spickler Ferdinands McClendon Leighton Dancer Handel Kusner Alling Shaker Kezlan Speers Seda Parks Miller Strecker Mauch Menzin Wu Elkhader FreedStitz Thompson Schmidt Moore Du Militello Burns McCarthyHedstrom Zhu Pyung AbudiakMartinez Barrett Ko Yu Bigelow Steelman Johnson From Taylor Gehman Reeves Limaye Kulkarni Stephanus James Cooper Groot Cao Rigas Melton Boisen Rice Currier Su Archibald Hardy Solin Lobquist Goonetilleke Langworthy Adkisson Greenberg Apodaca Roberts Richardson Maxey Myung Rutt Lovell Albert Liu Brown Hedlund Grimmer Lukkarinen Kupiainen Cohen Tsai Patry Taylor Lovaglia Pepper Williamson Zhao Kwun Kennedy Kania Hruska Martin Menasco Helsabeck Collins Moebes Davis Wadsworth Larson Cheung Morrow Betz Goulding Stemmons Yahya Anderson Bloom Johnson Beaucage Ensil Butcher PirtleWright Smith Weiner Cassidy Chaloner Hutchinson He Capobianco Hass Showers Grossman Neuzil Deshpande Alam Hirsch Gomprecht Etgu Tong Fife Benton Papoulis Edelson Bustoz Gee RubermanHuang Garver Grou Aof Slagle McFarland Kuykendall Kuo Bennett Rinne Weiss Meda Hazlett KimBoals Farkas Rice Schneiderman Hardy Mucuk Castellini Ren Ellermeyer Huang Wu Swick Hyams Arkowitz Barry Jefferson Hakulinen Dines Dickinson Wright Börger Williams Costich Smith Croke Wilder Lin Oldenburger Gérard Shapiro Albert Warren Morez Sherling Mader Huston Zuckerman Sugar Tuller Yim Slaught EllisMahatabuddin Evans NallRyden Claytor Wells Hart Al Ries Landman Shukla Hajek Singh Young Nouh Chen Lindgren Harris StaffordJones Thale Lameier Howe Anderson Nordstrom TownesOppenheimHumphreys Sorenson Huber Lee Coven Hilton Rosenberg Mauldon Barcus Hansen Rawat Taylor Cariola Jones Hook Grasman Hatch Fugate Anderson Meyer Scott Melvin Kline Chaves Cross Kelley Cross Spence Quinn Silberger Bernard Weidner Hardie Zippin Moore AshleyShrimpton SchluntWaltman WaidPollak Chang Larson Schiffman Anderson Vaughan RootGokhale Lennes Piatkiewicz Ghent Stong Stenlund Madden Harer Smith Barros Gary Grilliot Barnard Feuerbacher Lange Hursch Pettus Pan Fan Zhang Fantham Heath Brownstein Foisy Schnare Bryan Luxon Gaba Heidel Ori Salleh Kammoun Bryce Markley Cox Merrill Martin Riggs Foland Hutchinson Mishra Yoon Tonks Lorensen Kaplan Behera Eynden Johannes Chewning Cobb Anderson Schuck Merkes Kim Pelland Mulvey Hidalgo III Gauld Ruan Kirby Pilyugin Beck Williams ThompsonWunderlich Lininger Lustfield Martin Voxman Herald Haymond Brown Jones Strain Knobelauch MacKayStoddard Swingle Jakobsen Hillam Valent Liu Strassberg Gard Alliston Nyikos Zhang Gersdorff Rowlett Shi Wright Thron Shoenfield Mueller Hartz Lih Dennis Worth Roberson Bruton Ragsdale Colding Pauls Maxfield Cunkle Miller Niven Utz Berriozabal McLean Harasani Dempster England He Glover Hopkinson Wypasek Deng Moore BoucherOdden Bell Sanders Borwein Alzobaee Nelson Saiers McKinney Blake Tseng Song Chen Paul Abd Schweitzer Wheeler Maier Brogan Woodard Mand Armentrout SchoriCook Pennington Tamulis Socrates Livingston Marsh Jones Briggs Thomson Clemons Ye Fryman Whitehead Cheo Montgomery Park Byers Burdick Reed Dooher Walker Hoffman Nowell Beshears Stewart Mohamad Greenwood Andima Chen Goldfarb Kim Heckenbach Henson DakinHeyworth King Wegner Seppala Pursch Eggan Hsu Sitaraman Goggins Diesto Waller Kwon Korntved FischerAlthoen Crossley Menguy Larsen May Hare Schorow RothMerwin Cole Gugenheim Isaac Bdeir Stephenson Scarborough Frank Grabbe Strojwas Zhuang Wilson Edwards Seade Dancer Wright Clay Rose Guo Heifetz Tran Fennell Luo ZeislerWong Metcalf Chapman Owens Torrence Johnson Christopher Cruz Wang Ryden Ohme Nelson Mao Beem Singh BidwellTurner Poddar Naik Ouyang Dolciani Bauschke Ramakrishnan Shi Stonitsch Wu O Horn Walker Iseri Cook Callas Drake Stevenson Atwell Warren Zane Hallam Harris Ýçen Steer Grigsby Mayer Asprey Wolf Varino Ji Boessenroth Matveyev Zhou Icen GongHwang Hass Cockroft Stiadle Gubbi Summerhill Ingraham Hughes Akbulut Moses Hunt Molnar Jones Gay Huang Chen Edwards Wilson Ancel Braun Jani II Mosa Powell Hubbuck Fassett Ackleh Goldston Higgins Stalley Baker Black Franklin SmithBaker Kumar Jacquet Greenberger Young Swenson Lawton Duke Hughes Hooper Dressler Gibson Gottschalk Lee Findlay Perez BoalchCalderbank Reed Smith MacNeish Sutherland Halbout Benz Long Kamel Brook Huneke Wang Cooper DeLuna Ward Chittenden Hughes Salamon Marshall Silva Brechner Bonnafé Weld Lesin Pitcher Brook Laidacker Kuksov Wittekind Pree Aull Ok Wong Thys Hlavacek Blue Antonios Paechter Chang Manzur Miller Wine Trimble Trump Klasi Humphries III Ferdinand Stephens OzanMikhalkin ManerWest Boren Mellor Woo McCudden Kohli Cliett Graves Hane Chung Koo Huang Maxfield Michaelides Livernet James Sabello Mantel Klein Boyles Singer Hitchin Johnson Mundt Ling Grant Hakim Sawyer Ramaley LeVeque Vaughn Bennis Leung Skarstedt Chatterjee Sawon Bogner Baritompa Chu Abrams Gompf Snaith Pobanz Lune Hansen Smiley Marsh Warner Siopsis Auslander Fiedler Lee Yeung Gray Li GreenHanks Allen Chu Stafford Kauffmann Marin Schmitt Federighi Renaudin Cameron Zaldivar Gonzalez KroonenbergNunnally II Fuller Pukatzki Wambst Pollock Wicke Grabner Freedman Cook Dyer Godement Naber Griffiths Swenson Conwell Pollard Sellami McNamara Beck Rosso Ospel Hodgkin Sorgenfrey Etnyre Henderson Brady Howe Krishnarao Bell Perez Dudley Santos Kassel Gaucher Alderton Girou Rodabaugh Detmer Keynes Qiang Garcia Chun Rabinowitz Nuss Guerin Guting Walker Grobe Stocking ScheinostFeix Cerin Tipple Lee Burton Vitulli Ozeki Wolfe Replogle Jung Ye Nagarkatte Transue Millspaugh Wheeler Zhang Andersen Finley Morava Thomas Campbell Vaughn Rim Kirley Ming Balaban Ames Fendrich Su Oxbury Cadavid Kurihara Tan Cartier HaissinskyBle WolfDavis Graham Eisenberg Wong Heath Sharp Smith Buchanan Anderson Rhie Ding Roesch Poor Wochels Srivastav Gothen Garity Barratt Miller Riley Babcock Baumann Devadoss Lieberum Laursen Whaples Dorey Leitzel Pettey Sher Freden Harms CannonAdams Fay BankIsmail Nerurkar Choo Emmert Hansen Chu Penazzi Zemanek Williams Pornputtkul Johnson IV Berkey Anand Baier Chan Reynolds NobleLehmerWilliams Stancl Hannula Ng Balavoine Kesinger Hodge Ruedemann Svendsen Chen Dyn LeVan Gray Roberson Helversen Oppenheim Douady Whittaker Rutter Patten Israel Jubran Pedersen Stucke Anderson Guggenbuhl Spellman Broussard Chéritat Caux Griffus Felt BaldwinGrove Moore James Grabner Libis Pages Loday Mullikin Finan Hou Seo Sund Krishnamurthi Gershenson McCallum Klingler Crampton Wiser Martin Treybig Leitzel Garcia Hausel Guin Oberste Glass Nyman Connor Tatsuoka Hakimzadeh Eaton Everett Loveland Dula Dalla Porter Bisch Nelson Reiner Hassanpour Horelick Emert Carter Weibull Wright Karoubi Boxer Miles Biddle Neuberger Farmer Cathey Miyata Zakeri Azarbod Vobach Koray Madison Payne Abbud Chen Al Oudom Hurtubise Raggi Troy Carlisle Petrescu Carette Pu Shepard Alexander Thistlethwaite Zampogni Li Lazer Coffey Stefan Wakae Galecki Ellis Hughes Buff Fisher Harris Hatzenbuhler Shawcroft Miller Haraty Frabetti Dorroh Lubben Poon Maharam RubinHusch Coutant Eccles Murray HungBarton Wright Woo Mahmoud Coleman Brown Proffitt Ssembatya Gray Cox Parr Byun McCann Franco Pothoven Yang So Odenthal Babich Franca Wilson Câmpeanu Buzby Gentry PittmannBall Pekonen Nutt Carlson Shader Fordham Hunter ListerBurgess Lamoreaux Radulescu Ram Rhee Effinger Ortega Ralley Clapp Segal Ahre Andrews Dokken Swain Hutchings Li Curd Tinsley Sheldon Wishart O Steed Pierce Tucker Davis Unsurangsie Ali Castro Dykema Nemeth Sanchez Lee Simone Clark Hubbard Garrett Silva Chang Geissinger Feng Curtis Pohrer Solomon Stoughton Maddaus Hamstrom Rant Mitchell Madsen Timotin Winslow Keesling Bernier Tindell Rogers Baker Remage TrotterLoWilliams Wong Ma Vrabec Miller Dobbins Neggers Lindsey Boswell Perrizo Dima Levy Bahl Mullins Chu Nadathur Stefansson Ron KingRiecke Davis Wagner Baroni Dunning Beebe Wiegand Hall Lambert Cox Corel Wright Edler Chen Johnson Hodges Ceccherini Seldomridge Lopez Covington Pearson Slye Turner Cossio Gadam Cannon Ramis Panda Tataram Edmonds Spencer Kinch Cartan Nistor Selden O Kinch Deveney Khan Mohat Popa Vucic Heerema Kunio Amirsoleymani Su Symancyk Zelmanowitz Daus Baroni Miller Kurepa Cowan Chadick Hayes Wilson Benjelloun Komornicki Barkauskas Goodsell Okamoto Cliff Cover Morris Arslanov Hsu Briggs Getchell Cain Piccione Saveliev Zhou Fort Green Pownall Leslie Pave Mramor Hogan Sadler Hall Peter Shu Asaeda Hinrichsen Newton SandersAnderson Kuzmanovich Bittman Broome Fisher Lytle Hudson Strong II Goldstein Lassowsky Schleicher Reeves Ehrlich Reilly Andrist Mitschi Copes Brown II Overton Murtha Gustafson Schneider Donovan Nadler Pierce Fabbri Pimsner SeldenStepp Alexander Glezen Sanders Zhang Vickery Hu Ostrand Fan Ware Mitsuma Fernandez Álvarez Lukesh Yue John Dediu Streinu Voiculescu Davis Thwing Wakerling Little Bastida Moore Worrell Nica Smith Hildebrandt Rodriguez Mathews Salpukas Calude Ocneanu Howard Kaltenborn Bass Cima McDowell Havea Authement Mantellini Martin Heinzer Schweigert Olson Klatt Dunfield Scott Shershin Gordon Wilson Bauer Mann Hoggatt Haefner Riera Truitt Nicholas III Wituski Riedl Katz Thomas Martinez Chae Iqbal Aucoin Moise Jones Montgomery Beard Serre Fahy Wade Howard Poisignon Germain Pufendorf Anshelevich Baker Klaff Carlitz Lipschitz Eisenstein Nanda Givens Rutledge Cao Davis Yang Bartoszek Hunter Boca Morrison Rhee Secker Cuervo Suciu Westall WorthJewett Shlyakhtenko Oca Cleveland Boyce Fox BernsteinStadtlander Malbon Blakemore Meter Lutts Marcus Shell Bourdon Purifoy Cavior Gu Dowell Malita Daigle Zhang Buzeteanu Davis Wagner Zerla Heitmann Smith PennerSaadaldin Gorfin Butcher Lin Dumesnil Berard Shalen Lin Cervantes Stanley Habibi Terry Clark Reed Hoffman Wesselink Huth Arrow Strother Grozea Stacy Henderson Weiner Barbosu Cismasiu Hodel Sturm Smith Briggs Alexander Ho Oberhoff Hildebrant Al Jones KwakFulton Dirichlet Fourier Plana Welmers Brasher Halperin Jayaram Hrycay Hayes Alford Kelley Sorgo Foias Peligrad Chiorean Smythe Duda Stubblefield Jackson Cook Li Szechtman Hou Keesee Vaughan Kurtz McConnel Wang Walker McMillan May Keisler MisloveZhang Thorsteinsson Allen Rouse Bernoulli Kroeger HallettKlipple Wells Cross McDonough Krajewski Ginsburg Boyd Reid Loepp Yates Huang Ramakrishnan Karvellas Crawley Rosenstein Smith Castro Garcia Hotelling Basye Thomson Mullin Friedberg Schneider Weigel Buchanan Munkres Day Blumen KrajewskiWang Mosher Ji Ly Cao Titi Syzmanski Fernandes Milies George Lee Gavrea Cobzas Siddiqui Wehausen Graham Benningfield Byers Goolsby Gagrat Lutz Krebes Rao Bradley Walker Ackerson L O Rosa Park Starling Tripathi Gropen Cannon Johnson Menon Hersonsky Smiley Ezell Dang Hays Wardwell Dushnik Kim Wall Borrego Roberts Canaday Cornette Younglove Maehara Weber Williams Eden Barros Young Jackson GiovinazzoHaynsworth Wallace Farley Veblen Howe Rousseau Koch Carruth Euler Collins Walker Puckett Timourian Bookhout Brown Shelden Fu Hashimi McGranery Choe Bermejo Benharbit Wilkinson Anderson Nash Leibniz Lagrange Wynne Hauk Hinman HegdeCuttle Hsieh Sharma Poisson Richardson Cohen Renz Olson Chand Kuzmack Rodriguez Zsidó Adam Forge Smith Nicolescu Whyburn Church Cripps Williams III Habermas Hocking Williams Brown Dünnbeil Jones Wilson Mills Strus Bernoulli Dumitrescu Kasriel Aitchison Mahavier Knebelman Hartley Parker Clark Brilleslyper Jarnagin Soniat Girolo MarxHaque Fray To Mitchell Ganci Guisse McCharen Sr Kropa Ciupa Popoviciu Haywood Bandy Lehman Jr Naimpally Aïd Nicholson Sr Komm Stenson Palenz Gonzalez Walker Schatz Yeager Smithson Ahmad Spears Slaughter Salazar Konstantinou Robinson Matheson Vogel Potra Morris Wildius Tomlinson Jollensten Faucett Houston Dickman Lin Wenner Grimson Price Holte Wells Benkard Schmid Zhong Hahn Gentry Hong Nathan Dumitras Nandakumar Church Krabill Dai Johnston Robertson Saalfrank Long Fuller Ehlers Hall Stancu Hubert Jones Goncalves Bacon Russell Soland Blaga Dillon Devun Mitchell GrantSholander Rothman Lefton McGrew King Lawson Fernandes Dumitrescu Thompson Scott Wertheimer Baccam III Owens McMorris Smith Krule Conner Vanderslice Conwell Muenzenberger Shi Knight Petrides Haywood Lau Greenleaf Agratini Hodel Liouville Strohl Greever Chon Harry Berner Kilgore Roselle Rickart Coroian Lee Kapoor Guay Cohen Jin Malghan Zaccaro Stevens Jeannerod Moussa Reizner Goodykoontz Mashburn Krachni Bruasse Pickrell McDougle Selfridge Iltis White Wadsworth Hwang Brezinski Williams White Tucker May Kaufman Akst Rudin Saibel Sullivan Davis Frey Sharp Kakiko Yen Haliloglu Stenson Itzikowitz Nichols PalmerWiskott Gere Yu Bennett Masarani Eberhart III Heins Dora Hohmann Wang Osborne Fwu Montel Acu Bilazarian Schuh Siry Zhou Jacobson III Ashley Makky Martin Daniel Mullen Wage Stone Rector Williams Wright Trudinger Suchower Lin Stralka Ferguson Crummer Robbie Schäfer Kung Navy Bennett Boyer White Catinas Buskirk Ward Shepardson Honerlah Dymacek Lu Geisser Sigmon Asawakun Mir Derridj Bendat Lum Lazarevic Kramer Meylan Kohler Dloussky Ferrari Plunkett Stenzel CabellKlemm Roberts Kronk Beaucage Hsu Bonavero Civin Livingston Gilbert Gastinel Duke Morris Cain Mendivil Saccone Cole Sanabria O Watson Chauvier DuncanBenander Bergman Solodovnikov Feustal Brown Mitchell Cleave Brent Barnhardt Ambrose II Gilbert Apostolov Lea Lorica Schulte Spitznagel Vaughan Osborn Perry Frisch Lindahl Stafney Terrell Morgan Bunch Arnquist Chasles Khuri Parsons Simon HarrisMohler Diller Davidson Shirley Jacobson Sinal Perry Simmons Walkington Bosse Little Rose Pease Lobb Anderson Baouendi Gonzalez Rosenfeld Cullough Dogaru Beale Hashtroodi Chang Jensen Capdeboscq Hrusak Dowling Benedetto Jiang Bussian Ogawa Clarke Haase Floyd Haley Harrison Anker Dieudonné Franklin Paschke Tucker Gross Sullivan McConnell Thomas Bachar Peterson Weiss Gonzalez Hu Moore Toure Norfolk Bourgeois III Vityaev Rose Fink Gauduchon Boucksom Goudon Rogers Pope Lominac Rosenzweig VilaSmithO Titt Ford Ting Yang Johnson Carr Cho Bachelis Gorelic Jones Himonas Williams Starbird Lee Dimitroff Knight Andreucci Carron Lawrence Lehner Roy Chipman Rulla Mohammad Qiao Kerfoot Lewellen Chan Dawes Packer Brahm O Gorsky Roberts Hanges Lee Terrell Worthington Wood DungelloChicks Cuttle Carrano Aubry Spraglin Loeb Curtis Diaconu Phillips Guan Minovitch McCulley Cook Mohammad SandomierskiJones Franke Johnson Lewis Koszmider Steprans Sun Vought Lee Holte Depauw Ngoc Allaire Lindstrom Mutchler Goul Labbi Guediri Weaver Hollingsworth Rock Oprea Bourezgue Rollin Sims Kim Wood Rigoli Delistathis Farmer Greef Hunter BerkowitzTaussig Kennedy O Rao Cateforis Zumbrunn Denman Tymchatyn Ozawa Hirschowitz Thomas Burke Whitehead Bernstein Rooney Gronbaek Pak Showalter Sit Chu Sanders Vick Luong Bondy Gibbons Franek Slobko Johnson Yohe Lemaire Franc Waggoner Feichtinger Lundquist Hwang Won Demailly Kollmer Ahluwalia Gomez Parra Manocha Muckenhoupt Buvat Eid Valentine Krause Chrestenson Su Watson Pearl Sottocornola Stolovitch Arthurs Bourgault Laeng Prasad Levine Donaldson Yeung Chan Yakubu Orden Benander Visarraga Lee Dunn Berg Lohuis Boudhraa Avakian Kramer Hamdache Gordh Ferris Johnson Layton Kelley Starbird Mounoud Markowitz HuangHarle Jagy Morton SmithGrace Wen Yates XuMomken Yang Abo Heath Leeney Verdière Fitzgerald Goodrick YoungBoles Rumin Robert Tall Szeptycki Minear McAllister LafitteJeanne Ghanmi Dobranszky Thoe Hanson SimmonsLoeb Clark Kuttler Beidleman Kallin Vanderwinden Vogt Figà Peters Schmidt Porter Reed Rabus ThomasCash Tuncali Bounaim Auroux Jensen Totaro Ozawa Block Haneken Tordella Lafontaine Casler Perry Raisbeck Ragland Miller Borel Friberg Wittbold Bonnett Li CapelleMalgrange Schlais Propes Chossat Balas Perlis Burdick Anderson Brown Wilson Horning Thomas Puel Grubb James Hillairet Gillman Pate Kobayashi Bear Steger Zandi Jones Creede Hagopian Welmers Lazzarini Pansu Kwan Liao Musso Faugeras Bihari Nailor Sun Zaidi Zwick Allendoerfer Oppenheimer Singh Hasegawa Swett Cobb Wilde Murphy Bedenikovic Harvey Woo Shin Davies Gerlach Crass Koosis Pedersen Mandallena Bourbon Berger Dua Hansman Valaristos Ricard Prue Driscoll Feldman Prosser Cramton Roth Ralston Laszlo Brewster Johnsen Paun Brydak Rogers Harris BiskupEdwards Anderson Geiger Speece Dayawansa Koh Mabuchi Picciotto Biquard Nicholson Snell Farhat Best Berger Petrus Price Darboux Laskar KrainesAkyildiz Kiernan Dilks Drutu Brooks Burke ShepherdZheng Klamer Foster Oldham Gilioli Landstad Bing Travers Czerni Holcman Junqueira Ounsy Caillau Sieradski Cavagnaro Goblirsch Balakrishnan Perez Harabetian Fell Bourdon Scott Solomyak Blum Brin Atkinson Welch Nagase Yeh Boen Seybold Rozmus Czerwik Sanchez Aubin Iooss Doucet MajumdarDomke Liepins Doyle Doody Lukasiewicz Cardona Navaratna Grzegorczyk Smith Meziani Shilepsky Coram DeLoura Steinberg Wester Russo Guiraud Sertoz Soloway Thomas Santos Zuhong Li Laufer Bennett Dieffenbach Slack Terry Villarreal Sinclair ParkerFlaherty Berggren Chaatit Pfaff Yang Son Hebey Carrell Francsics Kaltofen Namioka Elliott Brahana Craggs Oliveira Washburn Djadli Baildon Gale Phelan Evans Bismuth Sei Carrère Narasimhan Tenny Bogley Lee Garnett Lemos Burkhart Kimber Horn Berge Caviness Koss Knabe Gualtierotti Heil Rugina Raspopovic Hosay Boyd Almgren Rosen Glaser Goldman Kearsley McMillan Laurent Nang Leibon Shepler Arslan Yff Vadakkekurputh WebsterOlinick Edwards KwackMaynadier Cho Mersky Santiago Alvarez Ju Ferguson Jones Crovella Taylor Brawley Woodruff Kaul Zafiris Datta Lehner Holen Jajodia Salehi Yoon Nam Lerner Turner Lee Chastkofsky Wong Pugh Xu SeeseGersonowicz Skau Messer Utikal Auroux Bourguignon Brown Glasner Cresson Vaugon Carrizosa Noailles Sili Lohrenz Haver Eisenlohr Hempel Pettet Malagutti Kuczma Ruan Hyman Fredericks Schwartz Robey Wong Baker Wright Rakovec Boulis Majda Winicki Kessar Smajdor Nyenhuis Bailey Spring Kim Ayaragarnchanakul KozakVernicos Fanaai Teitloff Chao Weber Baggett Shrikhande Picaud Marle JensenCohen Wright Palais Faget Belfi Bean Wertheim Malek Besson Crary Richter Galup Brown Kordylewski Royston Tavares Glowinski Brown Kim Ayad Wing O Swallow Drufenbrock Caravone Bamberger Artola Loizeaux Stötzer Neelon Reed Feuerman RoytburdLong Gross Thompson Flesch Sternfeld McAuley CohoonTreves Hounie Hamza Korchagina Brozovic Park Calbert Aubin Bass Zaremski Shim Kramer Delzant Orgad Chae Reiz Belnap Schubert Knoblauch Kwon Benson Moroianu Margerin Winiarska Verovic Rosenblatt Hasisaki McKeague Frey Herzog Eisenman Row Flapan Nasser Sheyner Johnson Lyon Myers Yap Lu Schaffer Mikulski Schnibben Gamble Powell Shama Duncan DavisMoore Gerlach Jones Lewis Stuart Reed Maubon Mouton Singer Tran Dent Dent Dona Nettles Damon Bechata Dancis Lusk Timofeyev Latner Dziurzynski Feit Abedi Carthel Richey Lucas Baldridge Bieszk Pidekówna Matkowski Pax Daverman Johnson Schwennicke Schwartz Li Frandsen Hsia Bernadou Messmer Tang O Xu Gancarzewicz Thomann III Demir Estrada Zaslavsky Petersen Movshovitz Nam Solomon Gossett Roeling Péreyrol McCarron Konderak Pogoda Bedient Moloney Evans Hartenstein Civil Postawa Kister D Jaco Burke Hoehn Kornelson Kindred Treisman Droz Braunfeld Rebman Rodrigues Christoph Amsbury Thompson Chami Pielichowski Brown Ferry Mouron Krauss Ahmed Miller Archdeacon Lawser Ungar Pong Lee Goodman Silva Melo Courter Joy Sedory Bourlioux Reinhold G Neufeld SimsHenderson Kim HalversonSnyder Kare Topa Oh Long Maier Ho Ratcliffe Avramidou Zaidman Graham Dienes Pasicki Whitten Davis Yang Rin Liu Lipshitz Batiz McLaughlinPegoDenny Berhanu Argiris Detlefs Bloch DuChateau Woldar Wolak Karp Im Gurski Bochenek Vien Martin Zajtz Strube Lou Mason Marker White Colby Tourniaire Cordaro Delahan Ferguson Fintushel Demaree Przybycin Mylnikov Deszy Haynes Lions Houde Johnson W Crane Lee Thrall Smith Wilson Olsen Glover IwasawaSchultz Preston Seidman Sikkema Volmink Li Sun Terry Meth Kim Scott Wheaton EdwardsKranjc Jacob Tighiouart Alabau Guilbault Altman Trace Miliaras Decker Sanderson Connelly Douthett Hammons Jabir Bertozzi Mark Zhang Kapoulas Cutler Lockhart Ihring Wróbel Go Videla Weiss Seligson Rosengarten Kucharzewski Bello Rybicki Addis Perez Resek Zandecka Kitto Debonis Rosamond McRae Floyd DaiAlvarez Borges Slaminka Kozlowski Miller Bennett Karp Meyer Suchanek Burnette Jones Jean HowardHenkin Léonard Nesin Bielecki Tryuk Wieczorek Lenker Thurston Case Engelberg Mayer Jones Wang Voon Howard Shors Raviart Moszner Blanchard Grosvenor Kitchen Keremedis Riley Cohn Raugel Reagor Walsh Koseleff Mato Keller Gallin Wagstrom Wu Hy McCullough Cherlin Cashy W Latka Ishiguro Gawrylczyk Moore Gresham Stum Brandt Vest SacerdotePheidas AlLuchter Choi Lay Ferguson Stern Kurshan Metcalf Choi Heisey Patching Wall Carr Saracino Pelletier Mourrain Ruatta Quintero Dietrich Jakubowicz Cobb Opozda Campbell Kranakis Hildebrand Williams Jans Wilkosz Urner Morizumi Zhou Becker Grz Naso Siwek Bowers Falk Bialostocki IntermontMackiw Zhong III Farley Li Wo Crossley Robinson Fischer Derakhshan Poleksic Macintyre Dodd JohnsonLake Serafin Baeten Dean Paulin Boone III Lightstone Altinel Tripodes Ferland Wheeler Hoborski Formella Meerdink Singletary Mayoh Ruane Smith Akin Klassen Zolesio Deane Davidson Anderson Kolb Danas Messing Ozbagci Kochen Hale Halpern Madison Parker Mulry Hurwitz Cohen Steketee Cea Ogden Joshi Zhornitskaya Robaszewska Lindley Mochizuki McCoy Bestvina Hoste Austin West Xu Lagha Al Masih Richter Premadasa O Schuetz Brady Irudayanathan Midura Tabor Fischer Anderson Kock Roy Turski Schmidt Tebou Quiros Misir Bercovier Geoghegan Adams Abdeljaouad Dimovski Witowicz Spalinski Fitting Miller Pogorzelski Bloch Bushnell Kelly Urbano Cagnol Easton Forsythe Trimble Searl Lengyel Bauer Thuong Kieft Curtis Grothendieck Quigley Wilkerson Topp Soufyane Hughes Israel Dubrovsky Buss Bonet Rosenblatt Macura Matic Karlov Smith Faro Lawvere Powers Schaal Huang Bloomsburg Bergner Plavchak Deligne Funderburk Scholnick Wolf Lindgren Gentle Martin Zaremba Fernandez Curry Robinson Jacobs MacDonald McGrail Miller Poffald Lee Ladegaillerie Strounine Henderson Laanaia Farmer Smullyan Wood Hammouch WidenerOversteegen Brouwer Hensel Lynch Heller Zhao Kou Cox McKinleySteffenson Rounds Felcyn Chueh Lopez Perkins Mihalik Arroyo Michael TanyiBernstein Contou Phillips White Daw Cleary Pogorzelski Jaworowski Keller Zoubairi Rallis Krajcevski Daigneault Robinson Badzioch Sawka Thompson Werremeyer Betley Varadarajan Tierney Kamizono Sto Bahls Boos Mitchell Kopperman Vinsonhaler Page Rapoport Rector Mannucci Bucur Cruickshank Lee HulbertReich Scott Chicone Gunter Fish Dziri Blanc Wagner West Grispolakis Lakner Blumenstein Robbin Krasinkiewicz Collino Baldursson Hou Askanas Wu Mimna Reichaw Profio Qian Vora Latch Leroy Halpern Ross Zemel Rudnicki McDonald Winder Minc Ritchey Peschke Omiljanowski Rasoanaivo Lotspeich Bardos Hallet Wedhorn Enayat Velleman Winkler Park Caicedo Yanofsky L Mulla Pollett Gaussent Feuer Dwyer TrautmanZhou Johnson Spasojevic Stover Farjoun Outassourt Glover Dye Lelek Epps Luo Panitchpakdi Illusie Rios Guard Cvitanic Church Alinhac Piotrowski Pikovsky Karatzas Verdier Wilson Golumbic Baker Benes Horowitz Ritchie Houakmi Chavent Kugler Madan Gold MarcumAllen Chen Dutour Littleford Miklos Zimmer Kang Aronszajn Arasmith Moss Zaremba Shapiro Kemeny Saraswat Merrill Price Goldstone Wu Springsteel Cadenillas Feyock Kunen Carson Gostanian Prajs Pedrick Kan Wang Sawatzy Birkedal Tong Mauger Anton Xue Helffer Ladhari Jr Wajs Goldberg HarrowCollins III Maltsiniotis Mintz Grossman Saks Charatonik Chirimar Strong Jones Czuba Lucas Aregba Dzamonja Goodman Mioduszewski Kierstead Lamb Sieklucki He Jennings Zrotowski Moodie Bousfield Beck Zoonekynd Nikiel Jones Villaveces Rowe Applegate Thakur Moschovakis Ketonen Pohl Pozsgay Moser En Hoscheit Hanouzet Rosenberg Fechter Buckingham Bennett Barland JolyFouquet Thompson Oncu Jongh Bustamente Vanderbilt Shochat Alibert Moore Dietz Weidenhofer Hannan WoolseyKatz Lee Schlesinger Berg Higginson Miller Eilenberg Rakowski Milisic MitraCharatonik Petkovsek Hirschhorn Kolaitis Sorbi Davis Andrews Giaccai Borsuk Duda Hodas Solecki McColm Gerlach Knaster Wingers Herink Velickovic Gunnarsson Mansfield Laumon Montgomery Currie Wilger Mulmuley LaForte Emerson Malraison Krupski Mackowiak Fenson Lafforgue Molski Paola LandraitisHarnikSchwartz Nadathur Roberts Cenzer Al Riazati Mohamed Castillo Tuomela Manka Rudolf Priddy Kleinerman Martino Gonzalez Lejay Ince Beauville Stahl Bishop Liu Bertanzetti Royer Elliott Liang Cuadrado Xi Vasseur Jenson Smith Fleissner Bumble Mazurkiewicz TuringFisher Issar Koppel Uzcategui Laszlo Raychaudhuri Fossum Becker Landver Booth Hart Cowles Denes Molinari Eckertson LaBerge Zakrzewski Townsend Moschovakis Jackson Zbierski Sikorski Felty Pavlicek Wagner Kleene Spiez Linfield Kechris Li Cutcheon Arponen Després Salwicki Lysenko Jackson Rosenbaum Smith Druel Bachelot Douma Hutchinson Chen Blass Ratliff Schuster Jacobs Pavelich Gonzalez Woempner Ehrenfeucht Perlis AndersonPfenning Holsztynski Patkowska Keller Maliakas Ramsamujh Swartwout Wanna Boffi Smith Freedman Strasen Duch Axt Rubin Lebowitz Karwowski Elgot Stanley Kuratowski Hinman Remy Virga Tesman Térouanne Gordon Schuermann Minami Gover Kuperberg Guzicki Sierpiñski Lagoutière Pekec Mann Debarre Opsut Artale Gemeda Klucznik Brynski Gordon McArthur Zuckerman Kunkel Akin Rasiowa Patterson Kosinski Coomes Dietzen Janiczak Michel McDowell Miller Krynicki RabinPersiano Smith Venkateswarlu Sanchez Spector Sofronidis Ditzen KojmanBen Barankin Farnell Whitney Kirousis Sridharan Jinnah Kulich O Stenger Ko Vesley Nelson Wolfe Michaylov Srinivasan Miller Doheny Kuperberg Narayan Meloul Crawshaw Cozzens Isaak Nirkhe Schneider Olson Schinzel Darrigrand Bode John Shelah Yee Rose Buchsbaum Oglesby Neeman Mostowski Purang Eagle FreemanChell Winslow Milton DeLucia Yates Camerlo Cheng Brown Clemens Curiel Wardlaw Cullinane Clarke Tygar Apt Grant Gillette Froemke El Krajewski Breutzmann Juedes Amgott Thompson Fora Blefko Jothilingam Ki Tan Dharmadhikari Gabel Young Clark Seaquist Tankou Cruz Hain Chen Parimala Turner Mahony RajlichSchimmerling Minichiello Prullage Dodd Onyszkiewicz Jhu Yang Guattery Stallings Faber Kastanas Lutz Hoole Wong Andretta McClosky Mitchell Denny Stoltenberg Heydon Shore Adamowicz Kabanov MarczewskiTsali Weyman Dawes Krom Subrahmanyam Sundholm Call Wisniewski Just Mrówka Knoebel Walton Foster Lathrop Grossberg Gandy Hodgetts Moore Komanaka Moulton Grzegorczyk Kossak Kulkarni CooperBhatwadekar Steel Zafrany Addison Rosser Knudson Lessmann Narciso Welch Gregory Niefield Nguyen Krawczyk Chawathe Springer Iwaniec Tsai Pickett Marek Alpert Lear Smith Sommers Chen Rege Magill Rowlands Barnes Dyer Devi Daniel Waller Hicks Kaigh Jalali Choudhuri McColgan Jakel Terasawa Adler Wingard Delavina Li Palachek Pitt Pelc Neveu Cunningham Tourneau Wesep Quaife Pitblado Gerard Ramakotaiah Moran VanDieren Chow Sansing Mendelson Hailperin Das Deb Limaye Smaill Luo Astromoff Pixley Sussman Rajagopalarao Brooks Ulrich Phillips Kamin Fajtlowicz Anderson Dubiel Rudominer Matlock Benson Bull Cuckle Ernst Subbiah Myers Jorgensen Chhawchharia Vandell III Paisner Sioson Strickert III Overbay McKeon Michael Stillwell Miller Garland Swarup Moser Fraughnaugh Bridges Crofts Minor Thompson He Wiggins Richardson Kelenson Krussel Willoughby Beineke Chandra Cookson Frawley Harle Brown Maddox Lin Fraughnaugh Polansky Parr Allen Stracener Boddie Manvel Schucany Miller Yao Bailey Tzuu Bagga Constable Hoffman Singleterry Huang Johnson Li Owen Uiyyasathian Kazam Heilbron Hodges Ghosh Campbell Seppalainen Wang Nicholsen Seibert Harary Molina Cho Stone Tarditi Borgman Yaqub Kabell Paris BurnsPennell Grosen Yatracos Klotz Palmer Orrillo Arakaki Hunt Hsiao Singh Thombs Rogers Loyall Hong Shyu Cha Hoffman Psomopolous Young Colby March Jeon Wadge Feiner Orey Linton Wang Yan Fix Lee Mehlhorn Adams Young Yeh Weerasinghe Fernandez Striebel Battle Hodes Bates Basin Hardy Spencer Chou Heintze Paiva Kulkarni Guenther Laue Oyelese Perera Greig Hyland Plantholt Chao Samuelson Gaffey Lindae Swensen MooreYamini Lillibridge RondogiannisWeyhrauch Lee Shivers Sengers Marsh Wilson Bezuidenhout Carscadden Putcha Trauth Haas Draves Lee Agarwal Javitz Guha Kreider Bao Löcherbach Chang Crasswell Morrisett Alt Godau Lester Borrego Durling Sasaki Balder Traxler Ritter Chae Lo Gass Kahr Stockmeyer Okasaki Harper Bosmia Kent PutterChen Tan Aalen Loustau Hassanali Huang Reilly Exoo Prins Ray Goria Schwartz Höpfner Cranston Eroh Walters Schulzer Orgun Geiser Caby Clifford Liu Sankar Gass Levine Cook Carlyle Bauer Augustine Nord Phoa Marcus Bovykin Hong Abrams Chapman Meeks Osei Yang Fabian WangPierce Sehr Wang Posner Rittgen Majone Yu Necula Tolmatz Wasserman Shachter Ling Verity Wang Hodge Torgersen Jeeves Wu Leou Schaeffer Yang Djordjevic Kubicki Schwenk Korn Wittenberg Arlinghaus Dorer Markus Neyman ScoyHarris Sane Riley Bhat Minimair Beeson II Darden Norman Iwanowski Adler Eaves Brooks Hummel Jockusch Marquart Cartwright Hucke Bühler Solow Daras Mukherjee Chang Acharya Campos Kraft Hedetniemi Yue Chen MacIntyre MacQueen Cam Janssen Lee Hwang Kaye Smiriga Grinstead Ingrassia Acosta Chen Park Luckham Esary Campbell III Kurtz Plummer Hare Richter Walter Fredette Robinson Friedman Leichner SomersEmamy Llewellyn Jha Blömer Lawes Cong Slaman Minea Clarke Ligatti Knauer Green Gurland Samuels DaviesTsiatis Huh Neff Ilyes Wolf Edler Mau Parikh Chen Welch Blaylock Steck Wang Yang Blum Burch Lowenthal NarayananMitchell Gomberg Malde HughesSeiden Shu Foster Xu Yang Morton Hoyos Buchanan Antoniak Rankin Staples Staples Slater Wimer Polak Lippe Zhao Cohen Sims Korf Celikkan Altenburg McMillan Lawes Nelson Davis Solis Singh Read Chiang Eudey Tate ShangBang Brown Truelove Long Moussatat Kunz Otto Gu Brech Smart Talluri Sacks Griffor Mileti Raghavan Browne Emerson Hutchinson Vaidhyanathan Chang Brown Manders Hedetniemi Peele McNulty Taylor Zhong Chen Benhenni III German Chen Maltz Wets Karp Gennart Pinter Moti Muntersbjorn Trees Carbone Sahni Paterson Nelson McRae Kirmayer Clemans Massey Kelker Gray Jorsten Yu Araujo Mingoti Shepardson Sinha Rosenblum Epstein Peckova Georgatos Rosenthal Greenberg Kautz OdellGabay Casey Salinetti Brylawski Li Dantzig Roussanov Binns Bagh Bednarski Wang Cartwrigh Melolidakis Ferguson Hall Banos Kearns Vembar Ghebremichael Jamieson Meeden Smith Anderson Dill Decatur Gordon AbdelbarFaigle Weiss Wegner Roach Lopez Scrimshaw Kahlon Kraft Kronmal Staudte Sokol Samaniego Mummert Fleming Brown Haught Croxton Simpson IV Biesterfeld Leung Wright Clair Machtey Lucas Marcone Mysore Shore Sibley Low Funo Valiant Nelson NelsonDodd Pepe Gilstein Cardle Carlton Mishra Yan Fischer Sukonick Lustig Wilson McClelland Zhou Breznay Thomason Marcus Homer Snow Sobel Makani Blyth Parberry Pappas Qiu Chatterji Owings Hirschfeldt Wang Flanigan Dong Mondschein Mireault Dillon Singh Greenberg Kosorok Shen Hong Solomon Kaplan Monsour Kelly Simpson ZhouAlonzo Stigler Steele Lee Yu Rojo Sohoni Friedman Tzimas Weiner Roth Wang Grier Hirst Yu Lischer Ganesan Davis Sukhatme Raghavachari Nisnevich Konijn Madan Yen Legrand Brackin Tucker Guillier Shi Yu Wu Park Donohue Wieand Humphreys Wang Kuo Birge Black Peinado Wei Lin Wong Wylie Draper Gupta Emir Mikulski Johnson Balakrishnan Lubarsky Tan Golden Iusem Ramachandramurty Vayl Buhrman Weitkamp Runnestrand Takriti Bienstock Dougherty Gutierrez Carmichael Giusto Kalish Bhuchongkul Chao Gomez Wang Ferreira Jalaluddin Gueorguieva Mills Corvo Hatzikiriakou Browne D Stefansky Hernandez HoadleyArchambault Peracchi Gopalan Morris Mittenthal Rahman Jong Bentley Staddon Dasgupta Perakis Huber Luo Jagadeesan Johann Tulloss Chacko Agresti Yuan Green Calhoun Hoyland Schlatter Pleszkoch Jim Hampel Muratore Robinson Chiang Wykoff Rao John Cai Jin Lehmann Sinclair Harrington Schwiebert Chien Yen Guu Cottle Tanaka Feser Soofi Gokhale Heilmayr Riecke Angus Nguyen Passarin Xiong Macarie Sasso Jayasimha John Lippel Wu Ralescu Gasarch Scholz Anbar Schoenfeld Jogdeo Hartzel Stanley JordanLang Flynn Lee Rubison Puri Vourtsanis Epstein Ahmed Rousseeuw Mehra Halpern Arens Lea Chung Fine Bhattacharyya Hovick Kucan Monti Meyer Cantoni Geunes Ladner Chen Grau Dumas Liere Nash Shane Sun Perennec Wu Tarui Teti Gryparis Rajaram Carlson Stuart Weinstein Bj Andrews Pulskamp Lawton Ferland Hoorn Tourkodimitris RossiHeritier Zikan Mancini Denton Pearce Seiferas Zhang Hrushovski Hellerstein Seoh Russel Ralescu Mak Kozlov Loui Peterzil Lu Bjerve Chicks Gross Lo Nassar Kim Koller Rangaraj Shih Jaeckel Dell Kouider Zhou Lubell Chen Qu Scanlon AdichieMike Viollaz Koo JinLorentziadis Holmes Laskowski Kim Singh Howard Viswanathan Mesenbrink UnalSu Gardner Wang Laska Birnbaum Pang Wang Lim Miura Dehon Chen Loh Yuan Huang Malekpour SakovHammerstromVadiveloo Kamanou Mathur Dong Mitchell Marcondes Carney Pierce Wang Ge Park Yao Yhap Shenkin Chiang Gabriel Weerth Yang Faraway Lo Poggio Kim Namesnik Zheng Cho Paik Trosset Doksum Brodsky Metzler James Chan Polovina Wong Huang Kim Dabrowska Morita Azzam Potter Iachan Blyth Yu Aiyar Taam Kim Zou Bickel Kwon Hengartner Kademan Quang Jelihovschi Vallarino Song Yandell Muron Satagopan Baek Humphrey Dong Nair Cojocaru Ahn Shen WangGat Moon Gaffney Wang Livadas Feng Jiang Bajamonde Tao Adewale Lo Liao Collins Chow Pessoa Minami Fang Zhou Abramson Weng Mo Jin Borghi Geertsema Brunner Boza Dachs James Wiens Heo Thewarapperuma Gould Li Qiu Zhang Huang Taylor Sankoh Park Xu Yu Hsu Hou Branton

Rocha

Cabral Gao

Jewell Rassias

Culmer

Tolle Weinberg

Varma Hung TeglasCalvetti

Wang Cheng

ZhouChen Wiebking Lin Dziuban Fotso Pedroso Song TonegawaMou Shah Mohrmann Ashdown Grotowski

McKown

Daumis

HaddockGerneth

Pletsch Chapin

Abbott

Burton

Hagan Clark Barrett

Dorsett Bruyr Bedgood

Liu

Bonawitz Zhang

Yao Li

Poon

Niemi

CoveyBeck McNamara Scott Ecker Kouada

Jones Landweber Iberkleid Forman

Payne

Kopell

Fried

Franco Marcus

Cowieson Cleveland

Jouini

Thomas Rojas

Kelley Zoracki

HegnerJohnson

Crowley

Mehta McIlwain

Corlette Bernhard

Menad

VanDerWoude

Pinezich

Gauthier

Ong

Smale

Bishop Nadim

Renegar Romero Tangerman Jones Pena Vera

Vargas Smania Haab

Nevins Srinivasan

Franco Rugenstein

Handron

Rowland

Rocha

Durkin

Daccach

Borsari

Lee Winters

Devaney

KohGrimm Fitzpatrick

Spikes

Butler

Mark Cramer KcKown

Whitney

Montgomery Taijeron

Patrick Kwon

ZhangKime

Weerakoon

Brothers

WangZhouColemanDeng Kar Thompson Najafi

Jobe

Crawford

Rothmann

Hsu Haimo

Hoelzer

Olum Kahn Alligood Alexander Temte

Howes

ReidHarris Pitts Quinn Russell

Moreman

Smith

Cleave

Stallard Williams

Pawlowski Etgen

Spencer Garner

Harmsen

McMillian

Ng SvobodnyAmundson

Sardis

Chueh

Chen Hall

Diao

Sarhangi Slepian

Griswold

KupferschmidEch

Phillips Prokhorenkov

Richardson

Schecter

Xuan

Tomter

Rivertz

Gheiner Labarca

Malta Pinheiro

Pujals

Vieira Hiller Quillen

Baker

Bhattacharjee Atela

Fagella

Huang Nitecki Pierce

LoFaro

Díaz Ávila Melo

Locci

Mathai

Haruta Harou

Chen

Langer

Langlois

Buffo

Tahzibi Martin Catsigeras

Ruas Pacifico

Duflot

Myers

Swanson

Tromba Zhang

Rassias

Sánchez Mora

Colli

Palis Plaza

Beloqui

Souza

Araújo

Fanti Willms Guckenheimer

RoachFriedman Zeithoefler

Doeff Jacobson

Mendes

Ures

Morales

Baraviera

Du

Narasimhan Franks

Rezende Madden

VeraRocha

Silva

BentleyMillen

Hsu

Lander Cheng Messaoudene

Makuch

Pergher

Falbo

Batterson

Alongi

Bauer

Martin Moreira Arroyo

Markarian Luzzatto

Hetzler

Santos Duarte Dias

Foltin Holland

Stein

Worfolk

Stawiska

Kassof Meleshuk Holmgren

Stafford Moar Wiseman

Enrich

Paternain Doering

Carvalho Gómez

Alves Bochi

Snavely

Rykken

You

Machtinger

Meyer

Rebarber

FengDing Haile

Faber

Hall

Jinghong

Chen Yu Hsu Pasali Schenck Huang

Bindschadler

Reed

Williams HancaskyCole Whipple

KennedyDoren

Peratt Scott

Tefteller Krueger

Avery McKellips

Egan Cullen

Kibler Taboada

Leal

Hu

Ji

Czarcinski

Lawlor Morgan

Schuur

Shaw RustichiniShao

Du

Rentzmann

Hendricks

Sullivan

Moody Ball

MillerFord

III Holdt

Baker

Shih Taylor Leavelle

Hahm

Brown

Hemmati

Aberra Cottrill

Sarsour

Maynard

Ruan

Vargas

Zhang

Attar Yesha

Ouaknine

Jones

Martin Chang

Driscoll Kegley

Feliciano Frawley

Hankerson

Schneider

Kaplan

Yan

Bondarevsky Valente

Ashmore Filippas

Parks Kelley Adams Chung Chang White Underwood Perry Murthy Chan Taylor AlmgrenMackenzie Brakke Horton Yunger Hastings Roosen Drachman Steinke Caraballo Paur Scheffer Gompa Taylor

Anderson Lindblad Hermiller

Hollis

Chitwood

Zimmerberg

Bogar

Anderson

Morelli Diaz

Cochell Dooley

Fearnley GillChamberlin

Richardson McIntyre Brod Tree

Levin

Rochberg Vignati

Grabiner Chern Pei

Sun Yun Cheney Chang

Knight Traylor Sloss

Jones

Reid Bennett

Stehney

Atici

Hoffacker Peil Peterson

Yan Gillette

Runckel Wend

Crisler

Topal

Balogh

Tripp

Schreiner Tsai Kaur

Boehm Ikebe Chen

Lauko Gilliam

Bownik

Bellenot Baker

Kang Anderson Kilgore Price Pinter

He

Kerr

Christian

Smith

Holt

II

Bradley

Marriott

Mohammed

Ratto

Paulsen

Kitto Menegatto Wulbert Fuller

Reed

Henry

III

Proctor Oxley

Herdman

Harris

Zoltek

Small Krikorian Akin Sukup

Rogerson

Salavessa

Cattani

Zwart

Boothby Alagia

RohJolly

Smith Mukherjea

Atkin

VilmsStefan

Fardoun Goller

Sedwick Kwak Norman

Hastings

Dizaji

Lu Slastikov Judice Killough Kohn Jin

Lipton Velo

Li

Kwean

Bae

Fan Mallet

Paraskevopoulos Reznikoff

Bennett Kim Bobonis Sternberg Austin

Kupeli

Ferreira Schwarz

Hough

Byer

Takigawa

Huang Regala

Rybka

HillJadallah Bruno

Raffoul Ahlbrandt Hooker

Byrd Semmes

Peron Stover Lane

Straley Daniels

Scholz

Ottarsson Valli

Curran

Marino Rodriguez Livingston

Sukantamala Schommer

Gantner

Verhey

Zenor

Chen

Hennig

Doria

Field Sealey

Eells

Vale

Sheng

Lyczak Simion

Xue

Damiano Swardson

Blair

Carter Morian

Steiger

Thorpe

Feldman Dubuc

Glazebrook

Robbins

Levow

Schmutz Garfield

Mandelbaum

Wick

Lane Jensen Shapiro Smiley

Huang

Williams Baxendale

Baird

Shutters

SklarWang Cunningham Wagoner Hill

Donohue D

Deraux

ToledoSavage

Bozhkov

Albertson

Wertheimer

Wilf Zito

Hutchinson

Anderson Turnidge

Amillo Zhang Voepel Castro Goukasian

Smirnova Burstall

Edelman Chen Nadas

Bolmarcich

Sellers

Lazebnik Fiorini Atay

Charlap

Wood

RuffDeslauriers

Noel

Haack

Fuller Burkholder Grantham III

Eerkes

Serven

Powers Hulsing

Kang

Lamoneda

Gross

Bartholdi Harpe

Burel

McAlpin De

MikovskyPrice Dayhoff

Klingsberg

Graham

Donaghey

Hyde

Wood Erdem

Rodenberg Lemire

WangMcCabe Burstein Kuhn

Hartung

Hill Fabiano

Rubio Marrekchi Tadi BurnsStewart

Hayslip

Pantilie

Parmar

Perez

Mandal

III

Yang

Loubeau Gordon

Xiong

Kallianpur

Kim

Hucke

Caballero Wadleigh

Ko Voss Hullinger Horn

Nordstrom Torres

Singler

Stanley Liu

Spies

Hansen Larsen Heisler Brøns

Rosenthal

Bahy Mustafa

Kuwana Zhang

Dupuis

LePageDasGupta Baldwin Christensen

Naik

Gudmundsson

Tu Venkatraman Selukar Rao

Liu

Siegmund

Loader

Budhiraja White

Gæde

Turi

Borggaard

Miller

Villemoes

Kristensen Montaldo

Lalley Stover

Abrams

Plaut Stallmann

Searle

Grove Cho Shankar

Guijarro Kapovitch Knudsen

Dolgoarshinnykh Kordzakhia

Rabbee Sellke

Park

Møller Markvorsen

Szatkiewicz Zhang Feingold

Zhang

Bachmann

Høst McGowan

Mokliatchouk

Darken

Dmochowski

Wilhelm

Andersen Ganocy

Terentyev

Thelen

Celik

Jiao

Zhou Zhao

Koh Petersen Yang

Wang

Lai Wong Shan Ait

Hinrichs

Kiltinen

Park

Kim Zhang

Wang

Zhu

Safi

Cassorla

Borzellino

Shteingold Sprouse

Chuang

Graves

Mandrekar

Minut

Lim Wei

LaiYing Liu

Trow

Kan

Yang Patterson

Newhouse

Kline Branson

OliveiraLampe

Molinek

Kahng

Levine

Stajner

Nadler Hu Grinberg

O

Niamsup

Sullivan

Vilonen

Anderson

Yavin

Anderson

Braden

Ryan

Eerdewegh

Damiano

Sather Su

Hubbard

Chang

Kavinoky Hong

Scribner

Butler

Lui

Clapp

MacPherson

Baddoura

Dai

Welty

Betz

Menick

Lord

Adams

Bolie Price

Clarkson

Grow

Sember

Omlin

Wang

Grossman

QuirkLeetsma

Purdy

Wang

Koul

Wu Tang

Shen

Sundaram

Chen Ingram ParkShao

Qian

Ye Hong Wang

Sriram Zheng Tiro

Lahiri

Lee Shete

Wu Cheng

Wenyu Susko

Zhu

Horrocks

N w

F gure 6 The second argest component from the Mathemat cs Genea ogy Project Top overa ayout w th node over ap removed Bottom c ose up v ew of a sma area of the center- eft part of above

72

Gansner and Hu Efficient Node Overlap Removal

References [1] I. Borg and P. Groenen. Modern Multidimensional Scaling: Theory and Applications. Springer, 1997. [2] U. Brandes and C. Pich. An experimental study on distance based graph drawing. In GD’08: Proceedings of the Symposium on Graph Drawing, 2008 (to appear). [3] J.-H. Chuang, C.-C. Lin, and H.-C. Yen. Drawing graphs with nonuniform nodes using potential fields. In Proc. 11th Intl. Symp. on Graph Drawing, volume 2012 of LNCS, pages 460–465. Springer-Verlag, 2003. [4] G. Di Battista, A. Garg, G. Liotta, R. Tamassia, E. Tassinari, and F. Vargiu. An experimental comparison of four graph drawing algorithms. CGTA: Computational Geometry: Theory and Applications, 7:303–325, 1997. [5] T. Dwyer, Y. Koren, and K. Marriott. Ipsep-cola: An incremental procedure for separation constraint layout of graphs. IEEE Transactions on Visualization and Computer Graphics, 12(5):821–828, 2006. [6] T. Dwyer, K. Marriott, and P. J. Stuckey. Fast node overlap removal. In Proc. 13th Intl. Symp. Graph Drawing (GD ’05), volume 3843 of LNCS, pages 153–164. Springer, 2006. [7] P. Eades. A heuristic for graph drawing. Congressus Numerantium, 42:149– 160, 1984. [8] H. Edelsbrunner and E. P. M¨ ucke. Three-dimensional alpha shapes. ACM Trans. on Graphics, 13(1):43–72, 1994. [9] C. Erten, A. Efrat, D. Forrester, A. Iyer, and S. G. Kobourov. Forcedirected approaches to sensor network localization. In R. Raman, R. Sedgewick, and M. F. Stallmann, editors, Proc. 8th Workshop Algorithm Engineering and Experiments (ALENEX), pages 108–118. SIAM, 2006. [10] S. Fortune. A sweepline algorithm for Voronoi diagrams. Algorithmica, 2:153–174, 1987. [11] C. Friedrich and F. Schreiber. Flexible layering in hierarchical drawings with nodes of arbitrary size. In Proceedings of the 27th conference on Australasian computer science (ACSC2004), pages 369–376. Australian Computer Society, 2004. [12] T. M. J. Fruchterman and E. M. Reingold. Graph drawing by force directed placement. Software - Practice and Experience, 21:1129–1164, 1991. [13] E. R. Gansner, Y. Koren, and S. C. North. Graph drawing by stress majorization. In Proc. 12th Intl. Symp. Graph Drawing (GD ’04), volume 3383 of LNCS, pages 239–250. Springer, 2004.

JGAA, 14(1) 53–74 (2010)

73

[14] E. R. Gansner and S. North. An open graph visualization system and its applications to software engineering. Software - Practice & Experience, 30:1203–1233, 2000. [15] E. R. Gansner and S. C. North. Improved force-directed layouts. In Proc. 6th Intl. Symp. Graph Drawing (GD ’98), volume 1547 of LNCS, pages 364–373. Springer, 1998. [16] J. C. Gower and G. B. Dijksterhuis. Procrustes Problems. Oxford University Press, 2004. [17] L. Guibas and J. Stolfi. Primitives for the manipulation of general subdivisions and the computation of voronoi. ACM Trans. Graph., 4(2):74–123, 1985. [18] S. Hachul and M. J¨ unger. Drawing large graphs with a potential field based multilevel algorithm. In Proc. 12th Intl. Symp. Graph Drawing (GD ’04), volume 3383 of LNCS, pages 285–295. Springer, 2004. [19] D. Harel and Y. Koren. A fast multi-scale method for drawing large graphs. J. Graph Algorithms and Applications, 6:179–202, 2002. [20] K. Hayashi, M. Inoue, T. Masuzawa, and H. Fujiwara. A layout adjustment problem for disjoint rectangles preserving orthogonal order. In Proc. 6th Intl. Symp. Graph Drawing (GD ’98), volume 1547 of LNCS, pages 183– 197. Springer, 1998. [21] Y. F. Hu. Drawings of the mathematics genealogy project graphs. http://www.research.att.com/˜yifanhu/GALLERY/MATH GENEALOGY. [22] Y. F. Hu. Efficient and high quality force-directed graph drawing. Mathematica Journal, 10:37–71, 2005. [23] Y. F. Hu and Y. Koren. Extending the spring-electrical model to overcome warping effects. In Proceedings of IEEE Pacific Visualization Symposium 2009 (PacificVis ’09), pages 129–136, 2009. [24] X. Huang and W. Lai. Force-transfer: A new approach to removing overlapping nodes in graph layout. In Proc. 25th Australian Computer Science Conference, pages 349–358, 2003. [25] J. W. Jaromczyk and G. T. Toussaint. Relative neighborhood graphs and their relatives. Proc. IEEE, 80:1502–1517, 1992. [26] T. Kamada and S. Kawai. An algorithm for drawing general undirected graphs. Information Processing Letters, 31:7–15, 1989. [27] G. Leach. Improving worst-case optimal Delaunay triangulation algorithms. In 4th Canadian Conference on Computational Geometry, pages 340–346, 1992.

74

Gansner and Hu Efficient Node Overlap Removal

[28] W. Li, P. Eades, and N. Nikolov. Using spring algorithms to remove node overlapping. In Proc. Asia-Pacific Symp. on Information Visualisation, pages 131–140, 2005. [29] K. A. Lyons, H. Meijer, and D. Rappaport. Algorithms for cluster busting in anchored graph drawing. J. Graph Algorithms and Applications, 2(1), 1998. [30] K. Marriott, P. J. Stuckey, V. Tam, and W. He. Removing node overlapping in graph layout using constrained optimization. Constraints, 8(2):143–171, 2003. [31] K. Misue, P. Eades, W. Lai, and K. Sugiyama. Layout adjustment and the mental map. J. Vis. Lang. Comput., 6(2):183–210, 1995. [32] North Dakota State University Dept. of Math. The mathematics genealogy project. http://genealogy.math.ndsu.nodak.edu/. [33] J. R. Shewchuk. Engineering a 2D quality mesh generator and Delaunay triangulator. In Applied Computational Geometry: Towards Geometric Engineering, volume 1148 of LNCS, pages 203–222. Springer, 1996. [34] J. R. Shewchuk. Delaunay refinement algorithms for triangular mesh generation. Computational Geometry: Theory and Applications, 22:21–74, 2002. [35] K. Sugiyama, S. Tagawa, and M. Toda. Methods for visual understanding of hierarchical systems. IEEE Trans. Systems, Man and Cybernetics, SMC11(2):109–125, 1981. [36] C. Walshaw. A multilevel algorithm for force-directed graph drawing. J. Graph Algorithms and Applications, 7:253–285, 2003. [37] X. Wang and I. Miyamoto. Generating customized layouts. In GD ’95: Proceedings of the Symposium on Graph Drawing, volume 1027 of LNCS, pages 504–515. Springer, 1995.

Suggest Documents