Content-Type: multipart/mixed; boundary="-------------9903161209299" This is a multi-part message in MIME format. ---------------9903161209299 Content-Type: text/plain; name="99-77.keywords" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="99-77.keywords" Potts model, partitions, poset, duality ---------------9903161209299 Content-Type: application/x-tex; name="2DPotts-ann." Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="2DPotts-ann." \documentclass[12pt]{article} \usepackage[dvips]{graphics} % double spaced \renewcommand{\baselinestretch}{1.7} % 1in left and right margins \setlength{\evensidemargin}{0in} \setlength{\oddsidemargin}{0in} \setlength{\textwidth}{6.25in} % results in ~6.5in textwidth on paper % 1in top and bottom margins \setlength{\topmargin}{0in} \setlength{\headheight}{0in} \setlength{\headsep}{0in} \setlength{\textheight}{9in} \def\be{\begin{equation}} \def\ee{\end{equation}} \def\c{\centerline} \def\nc{NC$^{\rm A}(n)$} %\hoffset=0.3in %\voffset=0.4in %\baselineskip=24pt \author{C. King\footnote{ Research supported in part by NSF Grant DMS--9705779}\\ \\ Department of Mathematics\\ Northeastern University,\\ Boston, Massachusetts 02115} \title{2D Potts model and annular partitions} \begin{document} \maketitle \bigskip \begin{abstract} Using the random cluster expansion, correlations of the Potts model on a graph can be expressed as sums over partitions of the vertices where the spins are fixed. For a planar graph, only certain partitions can occur in these sums. For example, when all fixed spins lie on the boundary of one face, only noncrossing partitions contribute. In this paper we examine the partitions which occur when fixed spins lie on the boundaries of two disjoint faces. We call these the {\it annular} partitions, and we establish some of their basic properties. In particular we demonstrate a partial duality for these partitions, and show some implications for correlations of the Potts model. \end{abstract} \vskip 0.5cm \noindent {\bf Key words}: The Potts model, partitions, poset, duality. \par \noindent PACS: 05.50+q \newpage \section{Introduction} This paper explores the relation between the 2D Potts model and some classes of partitions. We will assume some familiarity with the Potts model (for a general review see \cite{wu}), whereas most of our discussion of partitions will be self-contained (see \cite{stanley} for a good introduction). Recall that a partition of a set is a collection of disjoint subsets, called {\it blocks}, whose union is the entire set. To see how partitions arise for the Potts model on a graph, let $U$ be some subset of vertices of the graph. The random cluster expansion \cite{f-k} of the partition function generates a sum over spanning subgraphs, each with many connected components. For any such subgraph, we say that two of the vertices in $U$ are in the same block if and only if they belong to the same connected component. Then each subgraph generates a partition of $U$. So the random cluster expansion can be rewritten as a sum over partitions of $U$, followed by a sum over all spanning subgraphs which induce that partition on $U$. This observation acquires some significance when one considers correlations of the Potts model, with spins being fixed on $U$. The values of the fixed spins also define a partition $Y$ on $U$, where two vertices are in the same block of $Y$ if and only if they have the same fixed spin value. Then the only terms which contribute in the random cluster expansion are those whose partition of $U$ is a refinement of $Y$ (see section 2.2 for the definition of refinement). Furthermore, when $G$ is a connected planar graph, there are strong restrictions imposed by the graph topology. The most well-known case is where the fixed spins all reside on the boundary of one face, and in this case only {\it noncrossing} partitions can occur \cite{wu-lu}. Recall that a partition of points on the boundary of a disk is {\it noncrossing} (NC) if the points can be connected by arcs through the interior of the disk, in such a way that (a) each block is path-connected along the arcs, and (b) arcs of different blocks do not intersect. The NC partitions of $\{1,2,\dots,n\}$ form a partially ordered set (poset), and this poset has been extensively studied in combinatorics \cite{simion}, \cite{kreweras}, \cite{edelman}, \cite{sim-ull}, \cite{edel-sim}. It is not hard to see that only NC partitions contribute when $G$ is planar; indeed, the random cluster expansion provides the connecting arcs for each block (fattened out into subgraphs now). So the random cluster expansion for this model can be re-written as a sum over NC partitions of the vertices with fixed spins. This fact has been exploited in both numerical and analytical studies of the 2D Potts model \cite{wu-lu}, \cite{blote-night}, \cite{jac-car}, \cite{wu-king-lu}. Recently Reiner introduced an extended notion of NC partitions \cite{reiner}, using as motivation the identification of partitions of $\{1,2,\dots,n\}$ with the intersection lattice for hyperplane arrangements corresponding to the root system of type $A_{n-1}$. In keeping with his notation we will write {\nc} for the noncrossing partitions of $\{1,2,\dots,n\}$. Other root systems produce intersection lattices which can also be identified with classes of partitions, and Reiner uses a graphical representation of these partitions to define his extended notion of NC partition for a root system. In this paper we show how consideration of the 2D Potts model leads naturally to another interesting extension of NC partitions, which we call the {\it annular} partitions. These are found by applying the random cluster expansion to correlations on a planar graph where spins are fixed on the boundaries of {\it two} disjoint faces. In essence, we fix points on the two boundary components of an annulus, and then consider all the partitions whose blocks can be connected by arcs through the interior of the annulus, in such a way that arcs of different blocks do not intersect. To be specific, suppose there are $n$ points on one boundary component and $m$ points on the other. Then we will write NC$^{\rm A}_{2}(n,m)$ for the class of annular partitions of this set of $n+m$ points. Note that NC$^{\rm A}_{2}(n,m)$ and NC$^{\rm A}_{2}(m,n)$ are naturally isomorphic. Also we will demonstrate the inclusion \be\label{inclusion} {\rm NC}^{\rm A}(n) \times {\rm NC}^{\rm A}(m) \subset {\rm NC}^{\rm A}_{2}(n,m). \ee Since the annulus can be viewed as a cylinder, annular partitions also occur in the random cluster expansion of the Potts model on the cylinder, where spins are fixed at both ends. In the succeeding sections we will classify the annular partitions, and show how they can be constructed using NC partitions on each boundary component. We also derive a duality relation, analogous to the well-known self-duality of NC partitions \cite{sim-ull}, \cite{wu-lu}, and use it to derive some duality relations for the Potts model correlations. The paper is organised as follows: in section 2 we review partitions and their relation to correlations of the Potts model. In section 3 we show how NC partitions arise for correlations of spins fixed on the boundary of one face, and review the duality relations in this case. In section 4 we define annular partitions, and relate them to correlations with spins fixed on two boundary components. We also derive some new duality relations for these correlations, and in section 5 we work out one example in detail. The appendix contains details on some constructions for annular partitions. \section{The Potts model and partitions} \subsection{Review of Potts model} The partition function for the $q$-state Potts model on a graph $G$ is \be\label{def Z} Z(G;K,q) = \sum_{\sigma} \prod_{\langle ij \rangle} {\rm exp} \bigg[ K \delta\bigg(\sigma(i) - \sigma(j)\bigg)\bigg] \ee where $K$ is a coupling parameter and $\delta$ is the Kronecker delta. Here $\sigma$ is an assignment of spins on the vertices of $G$, and $\{\langle ij \rangle\}$ are edges of $G$. Let $U$ be a subset of $n$ vertices in $G$, and let $x = (x_{1},\dots,x_{n})$ be an assignment of spin values to the vertices in $U$. Then the correlation function with fixed spin values $x$ in $U$ is \be\label{def corr} \bigg\langle \prod_{i \in U} \delta\big(\sigma(i) - x_{i}\big) \bigg\rangle = Z^{-1} Z_{x}(G;K,q), \ee where the {\it partial partition function} is defined by \be\label{def Z_x} Z_{x}(G;K,q) = \sum_{\sigma: \sigma(U)=x} \,\,\prod_{\langle ij \rangle} {\rm exp} \bigg[ K \delta\bigg(\sigma(i) - \sigma(j)\bigg)\bigg], \ee and we have written $\{\sigma(U)=x\}$ to mean $\{\sigma(i) = x_{i}\}$ for all $i \in U$. From here on we shall focus our attention on this partial partition function rather than on the corresponding correlation function, noting that (\ref{def corr}) provides the mapping between them. \subsection{Partitions} Next we recall some basic facts about partitions. Let $A$ be a set with $N$ elements. A {\it partition} of $A$ is a collection of disjoint subsets of $A$, called {\it blocks}, such that every point in $A$ belongs to exactly one block. A partition $X$ is called a {\it refinement} of the partition $Y$ if every block of $X$ is a subset of a block of $Y$. In this case we write $X \leq Y$. This defines a partial order on the partitions of $A$, and the resulting partially ordered set (poset) is denoted $\cal P$. Suppose that $f,g$ are functions on $\cal P$, such that for every $Y \in {\cal P}$ \be\label{def Mob1} f(Y) = \sum_{X \leq Y} g(X). \ee Then it follows that for every $Y \in {\cal P}$ we have \be\label{Mob2} g(Y) = \sum_{X \leq Y} \mu(X,Y) f(X), \ee where $\mu(X,Y)$ is the M\"obius inversion function \cite{stanley}. The value of $\mu(X,Y)$ is known; suppose that $Y$ has $k$ blocks $B_{1},\dots,B_{k}$, and that $B_{i}$ contains $n_{i}$ blocks of $X$, for $i=1,\dots,k$. Then the M\"obius function is given by the formula \be\label{Mob3} \mu(X,Y) = \prod_{i=1}^{k} (-1)^{n_{i}-1} (n_{i} - 1)! \ee \subsection{Rooted graph} Following the notation of \cite{wu-lu}, we will refer to the pair $(G,U)$ as a {\it rooted graph}. There are $q^n$ possible assignments $x$ for spins in $U$. Each assignment defines a partition of $U$, wherein vertices $i,j$ belong to the same block if and only if they are assigned the same spin value. The partial partition function depends only on this partition (this is a special feature of the Potts model). Accordingly for any partition $X$ of $U$ we define \be\label{def Z_X} Z_{X} = Z_{x}(G;K,q) \ee where $x$ is any spin assignment that produces the partition $X$. We assume henceforth that $q \geq n$ so that all partitions of $U$ can be realised by spin assignments. \subsection{Random cluster expansion} The random cluster representation of the Potts model partition function is obtained by expanding the interaction term in (\ref{def Z}). For each edge $\langle ij \rangle$ we write \be\label{expand} {\rm exp}\bigg[K \delta\bigg( \sigma(i) - \sigma(j)\bigg)\bigg] = 1 + \big(e^K - 1\big) \delta\bigg(\sigma(i) - \sigma(j)\bigg) \ee and then multiply out the resulting terms over all the edges. This expansion produces a sum over sets of edges in the graph, and each edge set defines a spanning graph of $G$. Summing over spins enforces the condition that the spins in each connected component of a spanning graph have the same value. We obtain \be\label{ran-clus} Z(G;K,q) = \sum_{S \subset E} \big(e^K - 1\big)^{|S|} q^{p(S)}, \ee where $E$ is the set of edges on $G$, $|S|$ denotes the number of edges in the set $S$, and $p(S)$ is the number of connected components in the spanning graph of $S$. We can apply the same expansion to the partial partition function (\ref{def Z_x}). Now each set $S$ appearing in the sum defines a partition of $U$, which we write $\pi(S)$, by the rule that two vertices are in the same block if and only if they belong to the same connected component of the spanning graph defined by $S$. Since any set $S$ that appears in the sum from the random cluster expansion of $Z_X$ cannot connect sites in $U$ with different spin assignments, each such set $S$ must induce on $U$ a partition $\pi(S)$ which is a refinement of $X$. In the language of partially ordered sets, we must have $\pi(S) \leq X$. Therefore we get: \be\label{random cluster} Z_{X} = \sum_{S \subset E:\pi(S) \leq X} \big(e^K - 1\big)^{|S|} q^{p(S) - |\pi(S)|} \ee where $|X|$ denotes the number of blocks in a partition $X$, and $\pi(S)$ is the partition of $U$ induced by $S$. It is useful to isolate the terms in (\ref{random cluster}) which produce a given partition of $U$. So for any $b,c$ and partition $X$ we define \be\label{def R} R_{X}(G;b,c) = \sum_{S \subset E:\pi(S)=X} b^{|S|} c^{p(S)} \ee Then we have the identity \be\label{relation Z R} Z_{X} = \sum_{Y \leq X} q^{-|Y|}\,\, R_{Y}(G;e^K - 1,q) \ee Using (\ref{Mob2}) and (\ref{Mob3}) this yields \be\label{Mob4} R_{X}(G;e^K - 1,q) = q^{|X|} \sum_{Y \leq X} \mu(Y,X) Z_{Y} \ee \section{Noncrossing partitions} \subsection{Definition} As described before, the noncrossing (NC) partitions of $\{1,2,\dots,n\}$ are found by placing the $n$ points in order on the boundary of a disk, and connecting points by arcs across the interior of the disk. A partition is NC if the resulting path-connected components are disjoint. More formally, let $U$ be the set of $n$ distinct points on the unit circle. Note that any two points $(u_{i},u_{j})$ in $U$ divide the circle into two disjoint arcs. Let $(u_{k},u_{l})$ be another pair of points in $U$. Then either both $u_{k}$ and $u_{l}$ lie on the same arc defined by $(u_{i},u_{j})$, or they lie on different arcs. If they lie on {\it different} arcs we say that the pairs $(u_{i},u_{j})$ and $(u_{k},u_{l})$ are {\it crossing}. A partition $X$ is NC if there are no crossing pairs $(u_{i},u_{j})$ and $(u_{k},u_{l})$, where $u_{i},u_{j}$ are in one block and $u_{k},u_{l}$ are in a different block. The number of such partitions is the $n^{\rm th}$ Catalan number $C_{n}= 1/(n+1)\, {\textstyle \left(\begin{array}{c}2n \\ n \end{array}\right)}$. \subsection{Self-duality of \nc} One property of \nc will be of importance later, namely the fact that the poset is self-dual \cite{sim-ull}, \cite{wu-lu}. In order to describe the map which implements self-duality, note that the set $U$ has a natural dual set $U^*$ on the circle -- these are the $n$ edges connecting adjacent points of $U$. We can identify each edge with a point midway between two adjacent points of $U$, and then $U^*$ is also represented by a set of $n$ points on the circle. Self-duality of \nc is the observation that every NC partition $X$ of $U$ defines a unique NC partition $X^*$ of $U^*$, which we call its {\it dual partition} (note that there is no natural notion of dual for an arbitrary partition). The dual partition is defined as follows: first note that any two points $x,y$ in $U^*$ divide the circle into two disjoint arcs, and hence they produce a partition of $U$ containing exactly two blocks -- namely the points of $U$ on the two arcs. Let $P(x,y)$ be this two-block partition of $U$. Then $x,y$ belong to the same block of the dual partition $X^*$ if and only if $X$ is a refinement of $P(x,y)$. Again there is a simple pictorial representation of this relation -- we connect all vertices in each block by arcs, so that arcs of different blocks are disjoint. If $x,y$ can be connected by an arc which does not cross any of these arcs, then $x,y$ are within the same block of $X^*$. \subsection{Spins fixed on one face of planar graph} The paper \cite{wu-lu} considers the case when $G$ is a connected planar graph, and $U$ lies on the boundary of one face. In this case $R_{X}(G;b,c) = 0$ unless $X$ is a NC partition, since the allowed sets $S$ are constrained by the topology of the graph. It follows from (\ref{relation Z R}) that the number of independent partial partition functions $\{Z_{X}\}$ is at most the number of NC partitions, and that if $X$ is {\it not} NC, then $Z_{X}$ is a linear combination of the partial partition functions of the NC partitions. These linear relations were derived in \cite{wu-lu}, and some concrete examples worked out. \subsection{Rooted planar graph and its dual} We now recall the construction of the dual rooted graph $(G^{*},U^{*})$ when $G$ is planar, and $U$ lies on one face boundary \cite{wu-lu}. Suppose that $U$ contains $n$ points, and lies on the boundary of a face $f$. We introduce one extra vertex $v$ inside $f$, and connect $v$ to the vertices of $U$ on the boundary of $f$ by inserting $N$ additional non-overlapping edges inside $f$, call them $(e_{(1)},\dots,e_{(N)})$. The resulting graph, call it $G_U$, is planar and so has a dual $G_{U}^{(D)}$. Further every edge in $G_U$ has a unique dual edge in $G_{U}^{(D)}$, and vice versa. We obtain the graph $G^*$ by removing from $G_{U}^{(D)}$ the edges which are dual to $(e_{(1)},\dots,e_{(N)})$. Consequently the graph $G^*$ has $N$ vertices inside the face $f$, and these constitute the set $U^*$. If we think of the boundary of $f$ as a circle, then the vertices of $U$ are points on this circle. We can think of the vertices of $U^*$ as also lying on this circle, placed in between consecutive vertices of $U$. In other words, $U^*$ is the one-dimensional dual of $U$. \subsection{Duality relations for spins fixed on one face} The mapping from $(G,U)$ to $(G^{*},U^{*})$ also provides duality relations for correlation functions \cite{wu-lu}, \cite{wu-king-lu}. Consider the dual Potts model on the rooted graph $(G^*,U^*)$, whose coupling $K^*$ is related to $K$ by \be\label{def K^*} \big(e^K - 1\big) \big(e^{K^*} - 1\big) = q. \ee Then the partial partition functions on $(G,U)$ and $(G^{*},U^{*})$ are linearly related. That is, for each partition $X$ of $U$ and each partition $Y$ of $U^*$, there is a number $J(X,Y)$ depending on $K,q$ and $|U|$ such that \be\label{dual Wu} Z_{X} = \sum_{Y} \, J(X,Y) \,\, Z_{Y}^{*}, \ee where $Z_{Y}^{*}$ is the partial partition function on $(G^{*},U^{*})$ with spins assigned to $U^*$ so as to produce the partition $Y$. We will derive similar results in the next section, for correlations with spins fixed on two boundary components. \section{Annular partitions} \subsection{Definition} We now define the class NC$^{\rm A}_{2}(n,m)$. Let $\partial A$ be the boundary of the annulus \be\label{def annulus} A = \{(x,y) \,:\, 1 \leq x^2 + y^2 \leq 2\}, \ee where we choose orientation so that both components of the boundary have positive orientation in the plane. Let $U_{1}$ be a set of $n$ distinct points on one boundary component, labelled $\{1,2,\dots,n\}$ in order around the circle, and let $U_{2}$ be a set of $m$ points on the other boundary component, labeled $\{n+1,2,\dots,n+m\}$ in order. Let $U = U_{1} \cup U_{2}$. We say that $X$ is a (n,m)--{\it annular} partition of $\{1,2,\dots,n+m\}$ if there are arcs in $A$ connecting vertices of $U$ such that (a) each block of $X$ is path connected, and (b) arcs for different blocks do not intersect. As special cases we note that NC$^{\rm A}_{2}(n,0)$ = NC$^{\rm A}(n)$, and NC$^{\rm A}_{2}(0,m)$ = NC$^{\rm A}(m)$. Also we may construct an annular partition by taking a disjoint union of noncrossing partitions on the two circles, and hence (\ref{inclusion}) holds. Next we describe how any annular partition can be built out of noncrossing partitions on each circle. \subsection{Classification} Givan an annular partition $Y$ of $U$, we define a {\it bridge} to be any block which contains vertices in both $U_{1}$ and $U_{2}$. If $Y$ contains $k$ bridges then we say that $Y$ is a {\it $k$-bridge} partition. Let $\overline{Y}$ be the zero-bridge partition obtained from $Y$ by splitting each bridge into two blocks, each containing the vertices on one of the circles. Then if $Y$ is a $k$-bridge, it follows that $|{\overline{Y}}|=|Y|+k$ (recall that $|X|$ is the number of blocks in a partition $X$). Reversing the process, every $k$-bridge with $k \geq 1$ can be obtained by starting with a zero-bridge and joining together blocks on the two different faces. However there are restrictions on which blocks can be joined from the two faces. Namely it must be possible to draw arcs connecting all vertices in each block, so that the arcs of different blocks do not intersect. This means in particular that the blocks cannot be nested inside each other. We give a precise definition of this construction in the appendix. \subsection{Partial duality} There is also a notion of partial duality for annular partitions, which we now explain. Each of the sets $U_1$ and $U_2$ has a one-dimensional dual, namely $U_{1}^*$ and $U_{2}^*$ respectively, constructed in the way described before. We define $U^*$ to be the union of $U_{1}^*$ and $U_{2}^*$. We call our duality ``partial" because it does not provide a 1--1 mapping between annular partitions of $U$ and $U^*$. If $X$ is a $k$-bridge partition with $k \geq 2$, then $X$ also has a unique and well-defined dual $X^*$. The easiest way to see this is by drawing a picture -- see Figure 1 for an example of a partition with $k = 2$. The vertices in each bridge are connected by arcs which cross the annulus between the two boundary components. The remaining blocks on each boundary component are connected by nonintersecting arcs. Together these define a partition of $U^*$, by the rule that two vertices are in the same block if there is an arc between them which does not cross any of these arcs. For $k \geq 2$ this partition does not depend on any choices made when drawing the arcs, see for example Figures 1, 2 and 3, so the dual $X^*$ is well defined. It is also possible to turn this pictorial explanation into a formal definition of $X^*$, and for completeness we do this in the appendix. \begin{figure} \centering{\resizebox{!}{2.5in}{\includegraphics{Fig1.epsf}}} \caption{Example of a two bridge partition $X$.\label{fig1}} \end{figure} \begin{figure} \centering{\resizebox{!}{2.5in}{\includegraphics{Fig2.epsf}}} \caption{Same partition $X$, different edge set.\label{fig2}} \end{figure} \begin{figure} \centering{\resizebox{!}{2.5in}{\includegraphics{Fig3.epsf}}} \caption{Dual partition $X^*$.\label{fig3}} \end{figure} Now suppose that $X$ is a zero-bridge partition of $U$; then $X$ is composed of two NC partitions, one each for $U_1$ and $U_2$. Each of these NC partitions has a unique dual NC partition (constructed as in section 3.2), and together they form a zero-bridge partition of $U^*$. So for a zero-bridge partition we make this our {\it definition} of the dual partition $X^*$. However if $k=1$, that is if $X$ is a one-bridge partition, the partition of $U^*$ obtained by the above construction {\it does} depend on the choices made, see for example Figures 4 and 5. Hence there does not seem to be any useful notion of dual partition for a one-bridge. \begin{figure} \centering{\resizebox{!}{2.5in}{\includegraphics{Fig4.epsf}}} \caption{Example of a one bridge partition $Y$.\label{fig4}} \end{figure} \begin{figure} \centering{\resizebox{!}{2.5in}{\includegraphics{Fig5.epsf}}} \caption{Same partition $Y$, but {\it different} partition of $U^*$.\label{fig5}} \end{figure} \subsection{Random cluster expansion} As discussed earlier, the random cluster expansion of the Potts model on $(G,U)$ produces a sum over annular partitions. Specifically every edge set $S$ defines an annular partition $\pi(S)$ of $U$, and in addition $S$ provides the connecting arcs which make each block path-connected. \subsection{The dual rooted graph.} Now we explain the construction of the dual rooted graph $(G^*,U^*)$ when $U$ contains vertices lying on the boundaries of two disjoint faces in $G$. It proceeds in parallel with the construction in section 3.4. Without loss of generality we take one of the faces to be unbounded. Let $f_{1}$ and $f_{2}$ be the two faces, and suppose there are $n$ and $m$ vertices of $U$ on the boundaries of $f_{1}$ and $f_{2}$ respectively. We introduce one extra vertex $v_1$ inside $f_{1}$, and one extra vertex $v_2$ inside $f_{2}$. We then connect $v_1$ to the vertices of $U$ on the boundary of $f_1$ by inserting $n$ additional non-overlapping edges inside $f_1$, call them $(e_{(1,1)},\dots,e_{(1,n)})$. Similar edges are added inside $f_2$, call them $(e_{(2,1)},\dots,e_{(2,m)})$. The resulting graph $G_U$ is planar and so has a dual $G_{U}^{(D)}$. Further every edge in $G_U$ has a unique dual edge in $G_{U}^{(D)}$, and vice versa. We obtain the graph $G^*$ by removing from $G_{U}^{(D)}$ the edges which are dual to $(e_{(1,1)},\dots,e_{(1,n)})$ and $(e_{(2,1)},\dots,e_{(2,m)})$. The graph $G^*$ has $n$ vertices inside the face $f_{1}$ and $m$ vertices in the face $f_{2}$, and together these form the set $U^*$. The pair $(G^*,U^*)$ is the dual rooted graph. \subsection{Duality relations} Given an edge set $S$ on $G$, we define the dual set $S^*$ on $G^*$ by the condition that an edge is in $S^*$ if and only if its dual edge is not in $S$. As usual we denote by $\pi(S)$ the annular partition of $U$ induced by $S$. Similarly $S^*$ defines an annular partition of $U^*$, namely $\pi(S^*)$. If $\pi(S)$ is a $k$-bridge partition with $k \geq 2$, then $\pi(S^*)$ is also a $k$-bridge partition, and it is precisely the dual partition defined in section 4.3. However if $k=0$ or $k=1$ then $\pi(S^*)$ does {\it not} depend alone on $\pi(S)$. In general it also depends on $S$. This is consistent with the fact that there is no natural notion of duality for zero-bridge and one-bridge partitions. One consequence of this is that there is no natural 1-1 mapping between partial partition functions on $(G,U)$ and $(G^*,U^*)$, as was the case when $U$ belonged to one face boundary. In order to salvage the situation, we divide the zero-bridge and one-bridge partitions into classes, as follows. For each zero-bridge partition $X$, let ${\cal C}(X)$ be the set of annular partitions consisting of $X$ together with all one-bridge partitions which can be constructed from $X$ by joining blocks on the two faces. Now $X$ itself has a dual $X^*$, namely the zero-bridge partition formed by taking the planar duals of its two planar components. We have the following result. \bigskip \noindent{\bf Lemma 1} \par\noindent Let $X$ be a zero-bridge partition, and $S$ an edge set. Then $\pi(S)$ is in the class ${\cal C}(X)$ if and only if $\pi(S^*)$ is in the class ${\cal C}(X^*)$. \bigskip \noindent{\bf Proof} If an edge set $S$ contains a closed path that seperates the two boundary components, then the dual edge set $S^*$ cannot connect the two dual boundary components. Hence $\pi(S^*)$ must be a zero-bridge in this case. By examining the cases when both, only one of, or neither $S$ and $S^*$ contain such closed paths, the result can be deduced. \bigskip Recall that for any partition $X$ we defined $R_{X}$ in (\ref{def R}) using the sum over all edge sets $S$ such that $\pi(S)=X$. Now in addition we define $\chi(S)$ to be zero if $\pi(S)$ is a zero-bridge partition, and equal to one otherwise. Then there is a simple relation between the edge set $S$ and its dual $S^*$, as follows. \bigskip \noindent{\bf Lemma 2} \par\noindent For all $b,c$ \be\label{b,c relation} b^{|S|} c^{p(S)} = b^{|E|} c^{3 - |F| - |\pi(S^*)| - \chi(S^*)} \, \big(b^{-1} c\big)^{|S^*|} \, c^{p(S^*)} \ee \bigskip \noindent{\bf Proof} First observe that \be\label{dual1} |S| + |S^*| = |E|, \ee where $|E|$ is the number of edges in $G$. Second, \be\label{dual2} p(S) = p(S^*) + |\pi(S)| + |S^*| + \chi(S) - |F| - N + 1 \ee where $|F|$ is the number of faces in $G$, and $N=|U|=n+m$ is the number of roots. Third, \be\label{dual3} |\pi(S)| + |\pi(S^*)| = N + 2 - \chi(S) - \chi(S^*) \ee \subsection{Partial duality for partial partition functions} By combining Lemma 1 and Lemma 2, we get the following set of relations. First, if $X$ is a $k$-bridge partition with $k \geq 2$ then \be\label{dual Rk} R_{X}(G;b,c) = b^{|E|} c^{2 - |F| - |X^*|} R_{X^*}(G^*;b^{-1}c,c) \ee Second, if $X$ is a zero-bridge partition then \be\label{dual R0} \sum_{Y \in {\cal C}(X)} R_{Y}(G;b,c) = b^{|E|} c^{3 - |F| - |X^*|} \sum_{W \in {\cal C}(X^*)} R_{W}(G^*;b^{-1}c,c) \ee Using the M\"obius inversion formula, both (\ref{dual Rk}) and (\ref{dual R0}) provide linear relations between the partial partition functions on $G$ and $G^*$. By substituting (\ref{Mob4}) and the corresponding relation on $G^*$ into (\ref{dual Rk}) and (\ref{dual R0}) and taking $b = e^{K} -1$, $c = q$ we obtain the following linear duality relations for partial partition functions, and hence for correlations. These are the analogs of the duality relations found in \cite{wu-lu}. In the next section we work out the relations in full detail for one example. \bigskip \noindent{\bf Case 1} $X$ is a k-bridge with $k \geq 2$. \be\label{newdual1} q^{|X|} \sum_{Y \leq X} \mu(Y,X) Z_{Y} = \big(e^K - 1\big)^{|E|} q^{2 - |F|} \sum_{W \leq X^*} \mu(W,X^*) Z_{W}^* \ee \bigskip \noindent{\bf Case 2} $X$ is a 0-bridge. \be\label{newdual2} \sum_{V \in {\cal C}(X)} q^{|V|} \sum_{Y \leq V} \mu(Y,V) Z_{V} = \big(e^K - 1\big)^{|E|} q^{3 - |F| - |X^*|} \sum_{R \in {\cal C}(X^*)} q^{|R|} \sum_{W \leq R} \mu(W,R) Z_{R}^* \ee Note that there are not enough relations to allow a complete solution for $Z_X$ in terms of $Z_{Y}^{*}$. The number of relations depends on the numbers of vertices of $U$ on both faces. It is equal to the number of annular partitions {\it minus} the number of one-bridges. This is strictly less than the number of independent partial partition functions, and we conjecture that (\ref{newdual1}) and (\ref{newdual2}) constitute a complete set of independent relations between the $Z_X$ and $Z_{Y}^*$. Note that the number of one-bridges can be calculated in terms of the NC partitions. Let ${\cal P}_{1}$ and ${\cal P}_{2}$ be the sets of all NC partitions on the two faces. Then the number of one-bridges is \be\label{count 1-bridges} \bigg(\sum_{X \in {\cal P}_{1}} |X|\bigg) \bigg(\sum_{X \in {\cal P}_{2}} |X|\bigg) \ee \section{Example of duality relations} We work out in full detail the duality relations (\ref{newdual1}) and (\ref{newdual2}) for a special case, where there are four fixed spins in $U$, with two each on two disjoint faces. The setup is shown in Figure 6, where the vertices in $U$ are labeled $\{1,2,3,4\}$ (without loss of generality we have chosen one of the faces as the infinite face of the graph). The vertices in $U^*$ are labeled $\{5,6,7,8\}$, as shown in Figure 7. \begin{figure} \centering{\resizebox{!}{2.5in}{\includegraphics{Fig6.epsf}}} \caption{Example with two roots on each face.\label{fig6}} \end{figure} \begin{figure} \centering{\resizebox{!}{2.5in}{\includegraphics{Fig7.epsf}}} \caption{Dual of previous example.\label{fig7}} \end{figure} There are 15 possible partitions of $U$, and all of them are annular partitions. There are four 0-bridge partitions, nine 1-bridge partitions and two 2-bridge partitions -- they are listed in Table 1. For example the partition (12)(3)(4) has three blocks, and one of these (12) is a bridge. \begin{table} \begin{tabular}{|l|l|l|} \hline Number of bridges & Partitions of $U$ & Partitions of $U^*$ \\ \hline 0 & (1)(2)(3)(4) & (5)(6)(7)(8) \\ & (14)(2)(3) & (58)(6)(7) \\ & (1)(23)(4) & (5)(67)(8)\\ & (14)(23) & (58)(67) \\ \hline 1 & (12)(3)(4) & (56)(7)(8)\\ & (13)(2)(4) & (57)(6)(8)\\ & (1)(24)(3) & (5)(68)(7)\\ & (1)(2)(34) & (5)(6)(78)\\ & (123)(4) & (567)(8)\\ & (124)(3) & (568)(7)\\ & (134)(2) & (578)(6)\\ & (234)(1) & (678)(5)\\ & (1234) & (5678)\\ \hline 2 & (12)(34) & (56)(78)\\ & (13)(24) & (57)(68)\\ \hline \end{tabular} \caption{List of all annular partitions for rooted graphs $(G,U)$ and $(G^*, U^*)$ in Figure 6 and Figure 7} \end{table} Hence there are six duality relations between $R_{X}(G)$ and $R_{Y}(G^*)$, and we list them below. They imply six relations between $Z_X$ and $Z_{Y}^*$ which we also list. \bigskip \noindent{\bf Relations for R.} \par The relations hold for general arguments $b,c$ of the functions $R_X$. We define \be \lambda = b^{|E|} c^{-|F|} \ee Let $\phi:U \rightarrow U^*$ be the map $1 \rightarrow 5$, $2 \rightarrow 6$, $3 \rightarrow 7$ and $4 \rightarrow 8$. To keep the notation as compact as possible, we will use a partition $X$ of $U$ to also denote the corresponding partition $\phi(X)$ of $U^*$. Then we will write $T_{X}={\lambda}^{-1/2} R_{X}(G;b,c)$ and also $T_{X}^*={\lambda}^{1/2} R_{\phi(X)}(G^*;b^{-1}c,c)$. So for example $T_{(12)(3)(4)}^*={\lambda}^{1/2} R_{(56)(7)(8)}(G^*;b^{-1}c,c)$. We list four relations below between the $T_{X}$ and the $T_{Y}^*$. The other two relations are obtained by exchanging $T$ and $T^*$ in the first two relations. \bigskip \be T_{(1)(2)(3)(4)} + T_{(12)(3)(4)} + T_{(13)(24)} + T_{(1)(3)(24)} T_{(1)(2)(34)} = c \bigg[ T_{(14)(23)}^* + T_{(1234)}^* \bigg] \ee \be T_{(14)(2)(3)} + T_{(124)(3)} + T_{(134)(2)} = T_{(1)(4)(23)}^* + T_{(123)(4)}^* + T_{(1)(234)}^* \ee \be T_{(12)(34)} = T_{(12)(34)}^* \ee \be T_{(13)(24)} = T_{(13)(24)}^* \ee \bigskip \noindent{\bf Relations for Z.} We set $c=q$ and $b=e^K - 1$, and define for any partition $X$ of $U$ \begin{eqnarray*} W_{X} & = \sum_{Y \leq X} q^{-|Y|} T_{Y}\cr W_{X}^* & = \sum_{Y \leq X} q^{-|Y|} T_{Y}^*\cr \end{eqnarray*} Then $Z_X = {\lambda}^{1/2} W_X$ and $Z_{\phi(X)}^* = {\lambda}^{-1/2} W_{X}^*$, where now $\lambda = \big(e^K - 1\big)^{|E|} q^{-|F|}$. Again we list four relations -- the other two are obtained by exchanging $W_{X}$ and $W_{X}^*$ in the first two relations. \bigskip \begin{eqnarray} W_{(12)(3)(4)} & + & W_{(13)(2)(4)} + W_{(1)(3)(24)} + W_{(1)(2)(34)} - 3 W_{(1)(2)(3)(4)} \cr = & q & \bigg[ W^{*}_{(1234)} - W^{*}_{(123)(4)} - W^{*}_{(124)(3)} - W^{*}_{(134)(2)} - W^{*}_{(234)(1)} - W^{*}_{(12)(34)} \cr & &- W^{*}_{(13)(24)} + 2 W^{*}_{(12)(3)(4)} + 2 W^{*}_{(13)(2)(4)} + W^{*}_{(14)(2)(3)} + W^{*}_{(1)(4)(23)} \cr & & + 2 W^{*}_{(24)(1)(3)} + 2 W^{*}_{(1)(2)(34)} - 5 W^{*}_{(1)(2)(3)(4)} \bigg] \end{eqnarray} \begin{eqnarray} W_{(124)(3)} + W_{(134)(2)} & - & W_{(12)(3)(4)} - W_{(24)(1)(3)} - W_{(13)(2)(4)} \cr & - & W_{14)(2)(3)} - W_{(34)(1)(2)} + 3 W_{(1)(2)(3)(4)} \cr = W^*_{(123)(4)} + W^*_{(1)(234)} & - & W^*_{(12)(3)(4)} - W^*_{(13)(2)(4)} - W^*_{(1)(2)(34)} \cr & - & W^*_{(1)(3)(24)} - W^*_{(1)(4)(23)} + 3 W^*_{(1)(2)(3)(4)} \end{eqnarray} \begin{eqnarray} W_{(12)(34)} - W_{(12)(3)(4)} &-& W_{(1)(2)(34)} + W_{(1)(2)(3)(4)} \cr &=& W^*_{(12)(34)} - W^*_{(12)(3)(4)} - W^*_{(1)(2)(34)} + W^*_{(1)(2)(3)(4)} \end{eqnarray} \begin{eqnarray} W_{(13)(24)} - W_{(13)(2)(4)} &-& W_{(1)(3)(24)} + W_{(1)(2)(3)(4)} \cr &=& W^*_{(13)(24)} - W^*_{(13)(2)(4)} - W^*_{(1)(3)(24)} + W^*_{(1)(2)(3)(4)} \end{eqnarray} \bigskip \noindent{\bf Acknowledgements} The author thanks F.~Y.~Wu for valuable discussions and insights. \bigskip \begin{thebibliography} {15} \bibitem{wu} F.~Y.~Wu, {\it The Potts model}, Reviews of Modern Physics {\bf 54} (1982), 235 -- 268. \bibitem{stanley} R.~P.~Stanley, {\it Enumerative Combinatorics 1}, Cambridge Studies in Advanced Mathematics {\bf 49}, Cambridge University Press (1997). \bibitem{f-k} P.~W.~Kasteleyn and C.~M.~Fortuin, Journal of Physical Society of Japan {\bf 26} (Supplement) (1969), 11. \bibitem{wu-lu} W.~T.~Lu and F.~Y.~Wu, {\it On the duality relation for correlation functions of the Potts model}, J. Phys. {\bf A 31} (1998) 2823 -- 2836. \bibitem{simion} R.~Simion, {\it Combinatorial statistics on Non-crossing partitions}, Journal of Combinatorial Theory {\bf A 66} (1994), 270 -- 301. \bibitem{kreweras} G.~Kreweras, {\it Sur les partitions non-crois\'{e}es d'un cycle}, Discrete Math. {\bf 1} (1972), 333 -- 350. \bibitem{edelman} P.~H.~Edelman, {\it Chain enumeration and non-crossing partitions}, Discrete Math. {\bf 31} (1980), 171 -- 180. \bibitem{sim-ull} R.~Simion and D.~Ullman, {\it On the structure of the lattice of noncrossing partitions}, Discrete Math. {\bf 98} (1991), 193 -- 206. \bibitem{edel-sim} P.~H.~Edelman and R.~Simion, {\it Chains in the lattice of noncrossing partitions}, Discrete Math. {\bf 126} (1994), 107 -- 119. \bibitem{blote-night} H.~W.~J.~Bl\"{o}te and M.~P.~Nightingale, {\it Critical behaviour of the two-dimensional Potts model with a continuous number of states; a finite size scaling analysis}, Physica {\bf A 112} (1982), 405 -- 465. \bibitem{jac-car} J.~L.~Jacobsen and J.~Cardy, {\it Critical behaviour of random bond Potts models: a transfer matrix study}, cond-mat/9711279. \bibitem{wu-king-lu} F.~Y.~Wu, C.~King and W.~T.~Lu, {\it On the rooted Tutte polynomial}, cond-mat/9812202. \bibitem{reiner} V.~Reiner, {\it Non-crossing partitions for classical reflection groups}, Discrete Math. {\bf 177} (1997) 195 -- 222. \end{thebibliography} \bigskip \bigskip \noindent{\bf Appendix:} \underbar{Annular partitions and their duals}. \par\noindent{\bf Making $k$-bridges.}\par First we describe how all annular partitions are constructed from zero-bridge partitions. As usual, $U$ contains $n+m$ points on two circles forming the boundary of an annulus. Given two points $x,y$ on one of these circles, let $A_{1}(x,y)$ and $A_{2}(x,y)$ be the two arcs of the circle between $x$ and $y$. Let ${\cal B}=\{B_{1},\dots,B_{k}\}$ be a collection of disjoint subsets of $U$ lying on this circle (since it need not include all vertices, it is in general not a partition). Each set $B_i$ divides the boundary into $|B_i|$ disjoint arcs, call them $\{S_{i,a}\}$, $a=1,\dots,|B_i|$. We say that ${\cal B}$ is a {\it $k$-chain} if for each set $B_i$, there is one arc $S_{i,a}$ which contains all other sets $B_j$ in ${\cal B}$. In this case we call $S_{i,a}$ the {\it exterior arc} of $B_i$. Note that if $k=1$ then ${\cal B}$ is always a 1-chain, but the exterior arc is not defined. Now suppose that $X$ is a zero-bridge partition, and suppose also that it contains a $k$-chain on both circles. Then we can form a $k$-bridge annular partition by joining the blocks in the $k$-chains together. There are exactly $k$ different $k$-bridges that can be formed from this pair of $k$-chains, and each is specified uniquely by giving the component blocks of any one bridge. This gives a complete characterisation of annular partitions. \bigskip \par\noindent{\bf Making the dual.}\par Next we give a formal definition of the dual of a $k$-bridge partition $X$ when $k \geq 2$. To do this we have to give a condition which determines whether two dual points $x,y$ in $U^*$ lie in the same block of $X^*$. First suppose that the dual points $x,y$ lie on the same boundary circle. Let $P(x,y)$ be the two-block partition of points on that boundary defined by $x,y$. Recall that $\overline{X}$ is obtained from $X$ by splitting each bridge into two blocks, one for each boundary component. Let $X_1$ be the restriction of $X$ to the boundary component containing $x,y$. Then $x,y$ are in the same block of $X^*$ if and only if $X_1$ is a refinement of $P(x,y)$, and all blocks of $X_1$ which come from bridges of $X$ lie in the {\it same} block of $P(x,y)$. Next recall that $X$ is built using a $k$-chain on both circles. For $k \geq 2$, each block in a $k$-chain has an exterior arc which contains all other blocks in the $k$-chain. Clearly these arcs overlap for every pair of blocks in the $k$-chain. Let $S_1$ and $S_2$ be the intersections of these exterior arcs on both circles. Then each $S_i$ is a union of $k$ disjoint arcs. Each of these arcs has endpoints belonging to different bridges in the $k$-chain. Say the arc $s_1$ in $S_1$ has endpoints on the bridges $B_i$ and $B_j$. Then there is a unique arc $s_2$ in $S_2$ whose endpoints also lie on $B_i$ and $B_j$. In this case we call $s_1$ and $s_2$ the {\it matching arcs} in $S_1$ and $S_2$. This gives a 1-1 correspondence between $S_1$ and $S_2$. Now suppose that $x,y$ lie on different face boundaries. Then $x,y$ are in the same block of $X^*$ if and only if (i) they lie on matching arcs $s_1$ in $S_1$ and $s_2$ in $S_2$, (ii) in $s_1$ all blocks of $X$ lie wholly in either $A_{1}(x)$ or $A_{2}(x)$, and (iii) in $s_2$ all blocks of $X$ lie wholly in either $A_{1}(y)$ or $A_{2}(y)$. Note that for $k=1$ this construction is not well defined since there is no exterior arc. \end{document} ---------------9903161209299 Content-Type: application/postscript; name="Fig1.epsf" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="Fig1.epsf" %!PS-Adobe-2.0 EPSF-1.2 %%Title: Fig1(a).epsf %%Creator: CLARIS EPSF Export Filter V1.0 %%CreationDate:12/30/98 5:19:02 p.m. %%BoundingBox: 134 278 514 658 %%QDBoundingBox: 134.500 134.500 513.500 513.500 %%DocumentProcessColors: Cyan Magenta Yellow Black %%ObjectsIncluded: tText=T tLine=T tRect=T tRRect=T tOval=T tArc=T tFree=T tPoly=T tBMap=T tNote=T tBez=T tPMap=T %%AttributesIncluded: kBaWPattType=T kPixPattType=T kGradientType=T %%EndComments /MAV 300 dict def MAV begin /useClip true def /top 0 def /left 1 def /bottom 2 def /right 3 def /CM 6 array def /CTM 6 array def /CTMR 6 array def /MTC 6 array def /blimit 1500 def /bcnt 0 def /rbox 8 array def /segbox 8 array def /bbox1 4 array def /c1 3 array def /c2 3 array def /d 3 array def /delta 3 array def /mycurrentrgbcolor 3 array def /ulx 0 def /uly 1 def /llx 2 def /lly 3 def /urx 4 def /ury 5 def /lrx 6 def /lry 7 def /sp [0 0] def /ep [0 0] def /bbox 4 array def /pbox 4 array def /scrnProc currentscreen 3 1 roll pop pop def /currentcolorscreen where { begin currentcolorscreen end 3 1 roll pop pop 4 2 roll pop pop 5 -2 roll pop pop 6 -2 roll pop pop /kProc exch def /bProc exch def /gProc exch def /rProc exch def } if /Max {2 copy gt {pop}{exch pop} ifelse} bind def /Min {2 copy lt {pop}{exch pop} ifelse} bind def /cellPenW 72.0 /currentcolorscreen where {begin currentcolorscreen end pop pop 10 1 roll pop pop 8 1 roll pop pop 6 1 roll pop pop Max Max Max } {currentscreen pop pop} ifelse div 2.0 div def %%BeginProcSet : rect /rect { /saveobj save def R PC PF LC SS saveobj restore } bind def %%EndProcSet %%BeginProcSet : R /R { newpath pbox astore pop 0 792 translate 1 -1 scale CTMR currentmatrix pop exch translate /objectCord mstore def pbox right get 2 div dup pbox left get exch sub pbox left 3 -1 roll put dup pbox right 3 -1 roll put pbox bottom get 2 div dup pbox top get exch sub pbox top 3 -1 roll put dup pbox bottom 3 -1 roll put translate CTM currentmatrix pop 57.3 mul rotate RT } bind def %%EndProcSet %%BeginProcSet : SaveScreenBW /SaveScreenBW { currentscreen /scrnProc exch def /scrnAngle exch def /scrnFreq exch def } bind def %%EndProcSet %%BeginProcSet : RestoreScreenBW /RestoreScreenBW { scrnFreq scrnAngle MAV /scrnProc get setscreen } bind def %%EndProcSet %%BeginProcSet : SetFreqAngleBW /SetFreqAngleBW { currentscreen 3 1 roll pop pop setscreen } bind def %%EndProcSet %%BeginProcSet : SaveScreenColor /SaveScreenColor { currentcolorscreen /grayProc exch def /grayAngle exch def /grayFreq exch def /bProc exch def /bAngle exch def /bFreq exch def /gProc exch def /gAngle exch def /gFreq exch def /rProc exch def /rAngle exch def /rFreq exch def } bind def %%EndProcSet %%BeginProcSet : RestoreColorScreen /RestoreColorScreen { rFreq rAngle MAV /rProc get gFreq gAngle MAV /gProc get bFreq bAngle MAV /bProc get grayFreq grayAngle MAV /grayProc get setcolorscreen } bind def %%EndProcSet %%BeginProcSet : SetFreqAngleColor /SetFreqAngleColor { currentcolorscreen 3 1 roll pop pop 4 2 roll pop pop 5 -2 roll pop pop 6 -2 roll pop pop 4 1 roll 6 1 roll 8 1 roll 10 1 roll setcolorscreen } bind def %%EndProcSet /initmsaverestore { userdict begin /mdict 10 dict def mdict begin /mindex -1 def /mstacksize 25 def /mstack mstacksize array def /incmindex { /mindex mindex 1 add def } bind def /decmindex { /mindex mindex 1 sub def } bind def /checkmindex { mindex 0 lt { (%ERROR: msave/mrestore stack underflow: Offending command 'mrestore' ) print flush stop } { mindex mstacksize ge { (%ERROR: msave/mrestore stack overflow: Offending command 'msave' ) print flush stop } if } ifelse } bind def /mpush { incmindex checkmindex mstack mindex 3 -1 roll put } bind def /mpop { checkmindex mstack mindex get decmindex } bind def end end } bind def /msave { mdict begin matrix currentmatrix mpush end } bind def /mrestore { mdict begin mpop setmatrix end } bind def /msavelevel { mdict begin mindex 1 add end } bind def /mstore { matrix currentmatrix } bind def /AutoSizeY { 0 0 pl dup 3 1 roll 4 -1 roll add pl exch pop exch sub } bind def /pl { transform 0.25 sub round 0.25 add exch 0.25 sub round 0.25 add exch itransform } bind def /pll { transform round exch round exch itransform } bind def /pr { dtransform round exch round exch idtransform } bind def /m { pl moveto } bind def /l { pl lineto } bind def /c { pl curveto } bind def /rm { pr rmoveto } bind def /rl { pr rlineto } bind def /ar { 5 -2 roll pl 5 2 roll arc } bind def /an { 5 -2 roll pl 5 2 roll arcn } bind def /MakePatternFont { /FontDict 20 dict def FontDict begin /FontName exch def /Encoding exch def /FontMatrix [1 0 0 1 0 0 ] def /FontType 3 def /FontBBox [ 0 0 1 1 ] def /PatternDict exch def /RenderPattern { patternDict exch get exec } bind def /BuildChar { exch begin 1 0 0 0 1 1 setcachedevice Encoding exch get RenderPattern end } bind def FontName FontDict definefont pop end } bind def /SnapToPattenGrid { exch dup 0 lt { 1 index sub } if 1 index div truncate mul } bind def /FillPatternString { dup length 1 sub 0 1 3 -1 roll { 2 index 2 index 3 -2 roll put } for pop pop } bind def /AutoSizeY { 0.0 exch dtransform round idtransform exch pop } bind def /AutoSizeX { 0.0 dtransform exch round exch idtransform pop } bind def /AutoCellSize { AutoSizeY exch AutoSizeX exch } bind def /CheckPath { false { pop pop pop true exit} { pop pop pop true exit} { pop pop pop pop pop pop pop true exit} { pop true exit} pathforall } bind def /PatternFill { % patternCharacter /patternString 1 string def /cm mstore def patternMatrix setmatrix 1 1 AutoCellSize dup 0 eq { pop 1} if exch dup 0 eq { pop 1} if exch /patternSize exch 24.0 mul def /PatternSizeX exch 24.0 mul patternString length mul def /flaterror 0 def patternString FillPatternString gsave flaterror 1 add setflat flattenpath pathbbox grestore psy add flaterror add psy SnapToPattenGrid exch psx add flaterror add psx SnapToPattenGrid 3 -1 roll flaterror sub psy SnapToPattenGrid 4 -1 roll flaterror sub psx SnapToPattenGrid 4 2 roll pll 4 2 roll pll /llxsnap exch def /llysnap exch def /urxsnap exch def /urysnap exch def gsave useClip true eq {clip}{eoclip} ifelse newpath /PatternFont findfont [psx 0.0 0.0 psy 0.0 0.0] makefont setfont llysnap patternSize urysnap { llxsnap exch moveto llxsnap PatternSizeX urxsnap { pop patternString show %currentpoint am } for } bind for grestore cm setmatrix } bind def % End 'PatternFill' /DefaultPatternFont { /cm mstore def patternMatrix setmatrix 1 1 AutoCellSize dup 0 eq { pop 1} if exch dup 0 eq { pop 1} if exch /psy exch iSizeY mul def /psx exch iSizeX mul def /patternDict 64 dict def patternDict begin /NotDef {} def /LiteDiagLines { iSizeX iSizeY false [iSizeX 0.0 0.0 iSizeY -1.0 mul 0.0 iSizeY] {pat} imagemask } bind def end /CustEncoding 256 array def 0 255 1 { CustEncoding exch /NotDef put } bind for CustEncoding 65 /LiteDiagLines put patternDict CustEncoding /PatternFont MakePatternFont /pathSegProc { strokepath CheckPath { 65 PatternFill newpath } if } bind def cm setmatrix } bind def /XRound { dup 3 -1 roll exch mul round exch div } bind def /RoundMatrix { /i 0 def dup { 100000.0 XRound 1 index exch i exch put /i i 1 add def } forall } bind def /GetBoxesRatio { 3 -1 roll sub 7 1 roll exch sub 6 1 roll 3 -1 roll sub 5 1 roll exch sub 4 1 roll 3 -1 roll div 3 1 roll exch div exch } bind def %%BeginProcSet : Text Attributes Procs /T {792 exch sub} bind def /sx 0 def /sy 0 def /ex 0 def /ey 0 def /lw 0 def /siz 0 def /U {gsave 0 setlinecap /lw siz 0.078125 mul def /ey exch neg def /ex exch def /sy exch neg def /sx exch def fontkind plain eq { lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto stroke } { currentdict /outlineFontSize known outlineFontSize 0 gt and { fontkind outline eq { /sy sy 0.0119444 siz mul sub def /ey ey 0.0119444 siz mul sub def gsave 1 1 1 setrgbcolor lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto stroke grestore lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto strokepath 0.0119444 siz mul setlinewidth stroke } if fontkind shadow eq fontkind outlineshadow eq or { /sy sy 0.0358332 siz mul sub def /ey ey 0.0358332 siz mul sub def lw setlinewidth lw 2 div sx add sy lw 2 div sub moveto lw 2 div ex add ey lw 2 div sub lineto stroke gsave 1 1 1 setrgbcolor lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto stroke grestore lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto strokepath 0.0119444 siz mul setlinewidth stroke } if } if } ifelse grestore} bind def /plain 1 def /outline 2 def /shadow 3 def /outlineshadow 4 def /fess { currentdict /outlineFontSize known { /outlineFontSize 2 index def } if findfont exch dup /siz exch def scalefont setfont } bind def /SHDW {gsave siz oldfontname fess siz 0.055 mul x add y siz 0.05 mul sub moveto c show grestore} def /NRML {gsave 1 1 1 setrgbcolor siz oldfontname fess x y moveto c show grestore siz /Outline fess x y moveto c show} def /S { fontkind plain eq {neg moveto show} if fontkind outline eq {neg /y exch def /x exch def /c exch def NRML} if fontkind shadow eq {neg /y exch def /x exch def /c exch def SHDW NRML} if fontkind outlineshadow eq {neg /y exch def /x exch def /c exch def SHDW NRML} if } bind def /F { /fontkind exch def fontkind plain eq {fess} if fontkind outline eq {dup /oldfontname exch def exch dup /siz exch def exch OLF} if fontkind shadow eq {dup /oldfontname exch def exch dup /siz exch def exch OLF} if fontkind outlineshadow eq {dup /oldfontname exch def exch dup /siz exch def exch OLF} if } bind def /makeoutlinedict 15 dict def /makeoutlinefont { makeoutlinedict begin /uniqueid exch def /strokewidth exch def /newfontname exch def /basefontname exch def FontDirectory basefontname known not { /basefontname /Times-Roman def } if /basefontdict basefontname findfont def /numentries basefontdict maxlength 1 add def basefontdict /UniqueID known not {/numentries numentries 1 add def} if /outfontdict numentries dict def basefontdict { exch dup /FID ne {exch outfontdict 3 1 roll put} {pop pop} ifelse }forall outfontdict /FontName newfontname put outfontdict /PaintType 2 put outfontdict /StrokeWidth strokewidth put outfontdict /UniqueID uniqueid put newfontname outfontdict definefont pop end }def /UID { findfont dup /UniqueID known {/UniqueID get 1 add} {pop 1} ifelse } def /OLF { dup /Outline 1000 62 div 4 -1 roll UID /outlineFontSize 5 index def makeoutlinefont /Outline findfont exch scalefont setfont } def /CopyEncoding { findfont /Encoding get dup length array /tarrayz exch def tarrayz 0 3 -1 roll putinterval tarrayz } bind def /Re-encode { dup length array copy /eap 0 def exch { dup type /integertype eq { /eap exch def } { 1 index exch eap exch put /eap eap 1 add def } ifelse } forall } bind def /EncodeFont { findfont dup length dict begin { 1 index /FID ne { def } { pop pop } ifelse } forall /FontName exch def /Encoding exch def FontName currentdict end definefont pop } bind def %%EndProcSet %%BeginProcSet : clip2pathbbox /clip2pathbbox { /magicNum linewidth 2 div 1 2 sqrt div mul def pathbbox /urymn exch magicNum add def /urxmn exch magicNum add def /llymn exch magicNum sub def /llxmn exch magicNum sub def newpath llxmn llymn moveto llxmn urymn lineto urxmn urymn lineto urxmn llymn lineto closepath clip newpath } bind def %%EndProcSet %% Line takes the following arguments: %% linewidth xEnd yEnd xStart yStart %%BeginProcSet : Line /Line { MAV /LC get length 0 ne { gsave newpath MAV /ArrowType get length 0 eq MAV /SD get length 0 eq and {2 setlinecap /UseClip {clip2pathbbox} def } {0 setlinecap /UseClip {} def } ifelse 0 792 translate 1 -1 scale CTM currentmatrix pop /yStart exch def /xStart exch def /yEnd exch def /xEnd exch def /linewidth exch def MAV /ArrowType get length 0 eq xStart xEnd ne yStart yEnd ne and and {xStart yStart moveto xEnd yEnd lineto UseClip xStart yStart moveto xEnd yEnd lineto} {xStart yStart moveto xEnd yEnd lineto} ifelse linewidth setlinewidth SD strokepath CheckPath {LC PF ArrowType} if grestore } {pop pop pop pop pop} ifelse } bind def %% Line takes the following arguments: %% linewidth xEnd yEnd xStart yStart %%BeginProcSet : ZeroLine /ZeroLine { gsave newpath MAV /ArrowType get length 0 ne { /UseClip {} def 0 792 translate 1 -1 scale pop pop pop pop pop CTM currentmatrix pop ArrowType } if grestore } bind def /CompensateForStroke { sin currentlinewidth mul exch cos currentlinewidth mul dup 0 translate 4 -1 roll exch 2.0 mul sub 3 1 roll 2.0 mul sub } bind def /arrowdict 10 dict def arrowdict begin /SwallowTail { newpath 0.0 0.0 moveto 1.0 -.5 lineto .666 0.0 lineto 1.0 .5 lineto closepath } bind def /Triangular { newpath 0.0 0.0 moveto 1.0 -.5 lineto 1.0 .5 lineto closepath } bind def /OpenTri { newpath 1.0 0.5 moveto 0.0 0.0 lineto 1.0 -0.5 lineto } bind def /ClosedTri { newpath 1.0 0.5 moveto 0.0 0.0 lineto 1.0 -0.5 lineto closepath } bind def /SlashBar { newpath 0.5 -.5 moveto -.5 0.5 lineto } bind def /Dot { newpath 0.5 0.0 moveto 0 0 1 0 360 arc closepath } bind def /ExtSlashBar { newpath 1.0 -.5 moveto 0.0 0.5 lineto } bind def end /ScaleArrowHead { 0 0 4 -2 roll 0 0 1 1 8 -4 roll GetBoxesRatio scale } bind def /DrawArrowHead { gsave [] 0 setdash currentpoint translate rotate { 4 copy gsave initmatrix 100 200 translate msave ScaleArrowHead pop arrowdict exch get exec mrestore strokepath 0 0 3 index 3 index pathbbox 8 4 roll GetBoxesRatio 4 2 roll grestore 3 index 1.0 exch sub 6 -1 roll { 2 index mul 0 translate }{ pop } ifelse msave ScaleArrowHead scale arrowdict exch get exec mrestore strokepath } { msave ScaleArrowHead arrowdict exch get exec mrestore } ifelse CheckPath { LC PF } if grestore } bind def %%EndProcSet %%BeginProcSet : SR /SR { pbox left get pbox top get moveto pbox right get pbox top get lineto pbox right get pbox bottom get lineto pbox left get pbox bottom get lineto closepath } bind def %%EndProcSet %%BeginProcSet : RR1 /RR1 { pbox top get pbox bottom get sub abs pbox left get pbox right get sub abs 2 copy lt { Min 2 div dup dup dup pbox left get add pbox left 3 -1 roll put pbox right get exch sub pbox right 3 -1 roll put pbox left get pbox bottom get moveto pbox right get 0 3 -1 roll 90 -90 arcn pbox left get 0 3 -1 roll -90 90 arcn closepath } { Min 2 div dup dup dup pbox bottom get exch sub pbox bottom 3 -1 roll put pbox top get add pbox top 3 -1 roll put pbox left get pbox bottom get moveto pbox left get add pbox top get 2 index 180 0 arc dup pbox left get add pbox bottom get 3 -1 roll 0 180 arc closepath } ifelse } bind def %%EndProcSet %%BeginProcSet : RR2 /RR2 { dup dup dup dup dup dup dup dup pbox top get add pbox top 3 -1 roll put pbox left get add pbox left 3 -1 roll put pbox bottom get exch sub pbox bottom 3 -1 roll put pbox right get exch sub pbox right 3 -1 roll put pbox bottom get add pbox left get exch moveto pbox right get pbox bottom get 3 -1 roll 90 0 arcn pbox right get pbox top get 3 -1 roll 0 270 arcn pbox left get pbox top get 3 -1 roll 270 180 arcn pbox left get pbox bottom get 3 -1 roll 180 90 arcn closepath } bind def %%EndProcSet %%BeginProcSet : E /E { 1.415 setmiterlimit CM currentmatrix pop pbox right get pbox left get sub abs dup pbox bottom get pbox top get sub abs dup 3 -1 roll lt {exch dup 3 -1 roll exch div 1 exch} {dup 3 -1 roll exch div 1} ifelse scale 0 0 3 -1 roll 2 div 0 360 arc closepath CM setmatrix } bind def %%EndProcSet %%BeginProcSet : A1 /A1 {msave pbox right get pbox left get sub abs dup pbox bottom get pbox top get sub abs dup 3 -1 roll lt {exch dup 3 -1 roll exch div 1 exch} {dup 3 -1 roll exch div 1} ifelse scale 0 0 3 -1 roll 2 div 5 -1 roll -90 add 5 -1 roll -90 add arcn mrestore} bind def %%EndProcSet %%BeginProcSet : A2 /A2 {msave 0 0 moveto A1 closepath mrestore} def %%EndProcSet %%BeginProcSet : BitMap /BitMap { /buffer ^1 string def ^2 ^5 2 div add 792 ^3 sub ^6 2 div add translate ^4 57.3 mul rotate 0 ^5 2 div sub 0 ^6 2 div sub translate ^5 ^6 scale ^5 ^6 ^7 [^5 0 0 -^6 0 ^6] {currentfile buffer readhexstring pop} image }bind def %%EndProcSet %%BeginProcSet : note /note { gsave pbox astore pop 0 792 translate 1 -1 scale CTM currentmatrix pop exch translate pbox right get pbox left get sub 2 div pbox bottom get pbox top get sub 2 div translate 57.3 mul rotate setlinewidth noteBody aload pop moveto noteBody length 2 div 1 sub cvi{lineto}repeat dogEar aload pop moveto dogEar length 2 div 1 sub cvi{lineto}repeat 0.992 0.975 0.507 setrgbcolor gsave fill grestore gsave newpath stickem aload pop moveto stickem length 2 div 1 sub cvi{lineto}repeat 0.760 0.760 0.760 setrgbcolor fill grestore 0 0 0 setrgbcolor stroke noteShadow aload pop moveto noteShadow length 2 div 1 sub cvi{lineto}repeat dogEarShadow aload pop moveto dogEarShadow length 2 div 1 sub cvi{lineto}repeat 0 0 0 setrgbcolor gsave stroke grestore fill grestore }bind def %%EndProcSet %%BeginProcSet : RGB4toGray4 /redTbl4 [0 0 1 1 1 1 2 2 3 3 3 4 4 4 5 5] def /greenTbl4 [0 1 1 2 2 3 3 4 4 5 6 6 7 7 7 8] def /blueTbl4 [0 0 0 0 1 1 1 1 1 1 1 1 1 2 2 2] def /RGB4toGray4 { currentfile RGBBuf readhexstring pop pop /i 0 def /j 0 def grayBuf length { RGBBuf i get dup -4 bitshift redTbl4 exch get exch 15 and greenTbl4 exch get add RGBBuf i 1 add get dup -4 bitshift blueTbl4 exch get 3 -1 roll add 4 bitshift exch 15 and redTbl4 exch get RGBBuf i 2 add get dup -4 bitshift greenTbl4 exch get 3 -1 roll add exch 15 and blueTbl4 exch get add or grayBuf j 3 -1 roll put /i i 3 add def /j j 1 add def } repeat grayBuf } bind def %%EndProcSet %%BeginProcSet : RGB8toGray8 /RGB8toGray8 { currentfile RGBBuf readhexstring pop pop /i 0 def /j 0 def grayBuf length { RGBBuf i get 0.33 mul RGBBuf i 1 add get 0.55 mul add RGBBuf i 2 add get 0.12 mul add round cvi grayBuf j 3 -1 roll put /i i 3 add def /j j 1 add def } repeat grayBuf } bind def %%EndProcSet %%BeginProcSet : RGB24toGray8 /RGB24toGray8 {RGB8toGray8} bind def %%EndProcSet %%BeginProcSet : RGB2toGray2 /redTbl2 [0 0 1 1] def /greenTbl2 [0 1 1 2] def /blueTbl2 [0 0 0 0] def /RGB2toGray2 { currentfile RGBBuf readhexstring pop pop /i 0 def /j 0 def grayBuf length { RGBBuf i get dup dup dup -6 bitshift redTbl2 exch get exch -4 bitshift 3 and greenTbl2 exch get add exch -2 bitshift 3 and blueTbl2 exch get add 6 bitshift exch 3 and redTbl2 exch get RGBBuf i 1 add get dup dup dup -6 bitshift greenTbl2 exch get exch -4 bitshift 3 and blueTbl2 exch get add 4 -1 roll add 4 bitshift 4 -1 roll or 3 1 roll -2 bitshift 3 and redTbl2 exch get exch 3 and greenTbl2 exch get add RGBBuf i 2 add get dup dup dup -6 bitshift blueTbl2 exch get 5 -1 roll add 2 bitshift 5 -1 roll or 4 1 roll -4 bitshift 3 and redTbl2 exch get exch -2 bitshift 3 and greenTbl2 exch get add exch 3 and greenTbl2 exch get add or grayBuf j 3 -1 roll put /i i 3 add def /j j 1 add def } repeat grayBuf } bind def %%EndProcSet %%EndProcSet %%BeginProcSet : RGB1toGray1 /RGB1toGray1 { currentfile RGBBuf readhexstring pop pop /i 0 def /j 0 def grayBuf length { RGBBuf i get dup dup 1 bitshift 128 and exch 3 bitshift 64 and or exch 5 bitshift 32 and or RGBBuf i 1 add get dup -1 bitshift 16 and exch 1 bitshift 8 and or or RGBBuf i 2 add get dup dup -5 bitshift 4 and exch -3 bitshift 2 and or exch -1 bitshift 1 and or or /i i 3 add def /j j 1 add def } repeat grayBuf } bind def %%EndProcSet %%BeginProcSet : RGB16toGray8 /RGB16toGray8 {RGB8toGray8} bind def %%EndProcSet %%BeginProcSet : BW /ScalePoint { 0 0 4 -2 roll 0 0 1 1 8 4 roll GetBoxesRatio scale } bind def /PointDict 4 dict def PointDict begin /XPoint { -.5 .5 moveto .5 -.5 lineto .5 .5 moveto -.5 -.5 lineto } bind def /DiamondPoint { 0.0 .5 moveto .5 0.0 lineto 0.0 -0.5 lineto -.5 0.0 lineto closepath } bind def /PlusPoint { 0.0 .5 moveto 0.0 -.5 lineto -.5 0.0 moveto .5 0.0 lineto } bind def /SquarePoint { -.5 .5 moveto .5 .5 lineto .5 -.5 lineto -.5 -.5 lineto closepath } bind def end /DrawPoint { gsave [] 0 setdash 0 setlinecap translate msave ScalePoint PointDict exch get exec mrestore 1.0 setlinewidth stroke grestore } bind def %%EndProcSet %%BeginProcSet : Wall object Procs %%EndProcSet %%BeginProcSet : Subscriber /Subscriber { msave R PC PF LC SS newpath mrestore } bind def %%EndProcSet /StripFromFront { dup length 2 index sub 3 1 roll exch 3 -1 roll getinterval } bind def /MakePathArray { /k 0 def {/k k 1 add def pop pop}{/k k 1 add def pop pop}{/k k 1 add def pop pop pop pop pop pop}{/k k 1 add def }pathforall k array /k 0 def {{moveto} 3 array astore 1 index k 3 -1 roll put /k k 1 add def} {{lineto} 3 array astore 1 index k 3 -1 roll put /k k 1 add def} {{curveto} 7 array astore 1 index k 3 -1 roll put /k k 1 add def} {{closepath} 1 array astore 1 index k 3 -1 roll put /k k 1 add def} pathforall }bind def /MakeFlatPathArray { /k 0 def {/k k 1 add def pop pop}{/k k 1 add def pop pop}{pop pop pop pop pop pop}{}pathforall k array /k 0 def {{moveto} 3 array astore 1 index k 3 -1 roll put /k k 1 add def} {{lineto} 3 array astore 1 index k 3 -1 roll put /k k 1 add def} { pop pop pop pop pop pop} {} pathforall }bind def /FractionalLine { 2 index sub .00001 mul exch 3 index sub .00001 mul 4 -1 roll add 3 1 roll add } bind def /calcLineLength { exch 4 -1 roll sub dup mul 3 1 roll exch sub dup mul add sqrt } bind def /InitTotalLineLength { /oldY exch def /oldX exch def theDash aload pop currentLineLength add setdash } bind def /AccumeLineLength { 3 copy pop 2 copy oldX oldY 4 2 roll calcLineLength /segmentLength exch def /currentLineLength currentLineLength segmentLength add def /oldY exch def /oldX exch def } bind def /DecumeLastLineLength { /currentLineLength currentLineLength segmentLength sub def } bind def /DrawFlattendSegment { /pointCount 2 def dup 0 lt { pop 0 } if fpc 3 1 roll 2 index 1 index gt { 2 copy get dup length dup 3 eq { pop dup 0 get exch 1 get 2 copy InitTotalLineLength m } { } ifelse } { pop 1 index } ifelse dup 1 add 3 index exch sub dup 10 gt { pop 10} if { 1 add 2 copy get aload pop AccumeLineLength exec } repeat 3 1 roll pop pop DecumeLastLineLength } bind def /IncFPC { fpc add /fpc exch def } bind def /DrawFlatPathArray { fpc 0 { dup 2 index 1 sub lt { flatPathArray exch newpath 1 sub DrawFlattendSegment gsave pathSegProc grestore newpath } { pop pop exit } ifelse } loop } bind def /RecordFirstSubSegment { closepathArray 0 pathArray 0 get put closepathArray 1 pathArray 0 get aload pop pop pathArray 1 get dup length 3 eq { aload pop pop } { newpath 0 0 moveto aload pop exec /segmentArray flattenpath MakeFlatPathArray def segmentArray 1 get aload pop pop } ifelse FractionalLine {lineto} 3 array astore put } bind def /AppendClosePath { closepathArray 0 get 2 {lineto} put flatPathArray fpc closepathArray 0 get put 1 IncFPC flatPathArray fpc closepathArray 1 get put 1 IncFPC } bind def /RecordCurrentDash { /theDash currentdash 2 array astore def /currentLineLength 0 def } bind def /PatternStroke { 0 setlinecap RecordCurrentDash /saveFlat currentflat def .5 setflat /pathArray MakePathArray def /closepathArray 2 array def /pathLength pathArray length def /flatPathArray 513 array def /currentLineLength 0 def /fpc 0 def pathArray pathLength 1 sub get length 1 eq { /usingClosepath true def RecordFirstSubSegment /pathLength pathLength 1 sub def } { /usingClosepath false def } ifelse 0 1 pathLength 1 sub { pathArray exch get dup length 3 eq { fpc 1 add 512 ge { DrawFlatPathArray fpc 2 ge { flatPathArray flatPathArray fpc 2 sub get 0 put flatPathArray flatPathArray fpc 1 sub get 1 put /fpc 2 def }{ /fpc 0 def } ifelse } if flatPathArray exch fpc exch put 1 IncFPC } { dup length 7 eq { newpath /nToStrip 0 def fpc 1 gt { flatPathArray fpc 2 sub get aload pop pop m flatPathArray fpc 1 sub get aload pop exec /nToStrip 2 def } { fpc 1 eq { flatPathArray fpc 1 sub get aload pop exec /nToStrip 2 def } if } ifelse aload pop exec /segmentArray flattenpath MakeFlatPathArray def /segmentArray nToStrip segmentArray StripFromFront def segmentArray length fpc add 512 lt { flatPathArray fpc segmentArray putinterval segmentArray length IncFPC } { DrawFlatPathArray fpc 1 gt { flatPathArray flatPathArray fpc 2 sub get 0 exch put flatPathArray flatPathArray fpc 1 sub get 1 exch put /fpc 2 def }{ /fpc 0 def } ifelse segmentArray length 512 lt { flatPathArray fpc segmentArray putinterval segmentArray length IncFPC } { segmentArray length /exitLoop false def 0 { 2 copy sub dup 500 gt { pop 500 } { /exitLoop true def } ifelse segmentArray 2 index 2 index getinterval flatPathArray fpc 3 -1 roll putinterval dup IncFPC add exitLoop { exit } { DrawFlatPathArray fpc 1 gt { flatPathArray flatPathArray fpc 2 sub get 0 exch put flatPathArray flatPathArray fpc 1 sub get 1 exch put /fpc 2 def }{ /fpc 0 def } ifelse } ifelse } loop } ifelse } ifelse } if } ifelse } for fpc 0 gt { usingClosepath { AppendClosePath } if DrawFlatPathArray } if saveFlat setflat } bind def %%BeginProcSet : rampdelta /rampdelta { /len 0 3 -1 roll add def /i2 0 3 -1 roll add def /i1 0 3 -1 roll add def /nRampSteps len cellPenW div cvi 1 add dup 512 gt {pop 512} if def /rampPenW len nRampSteps div def rampColors i1 get aload pop c1 astore pop rampColors i2 get aload pop c2 astore pop c2 0 get c1 0 get sub nRampSteps div d 0 3 -1 roll put c2 1 get c1 1 get sub nRampSteps div d 1 3 -1 roll put c2 2 get c1 2 get sub nRampSteps div d 2 3 -1 roll put d aload pop } bind def %%EndProcSet %%BeginProcSet : adddelta /adddelta { d astore pop mycurrentrgbcolor c1 copy pop c1 0 get d 0 get add c2 0 3 -1 roll put c1 1 get d 1 get add c2 1 3 -1 roll put c1 2 get d 2 get add c2 2 3 -1 roll put c2 aload pop setrgbcolor c2 mycurrentrgbcolor copy pop } bind def %%EndProcSet %%BeginProcSet : rampline /rampline { segbox ulx get rampPenW add segbox ulx 3 -1 roll put segbox llx get rampPenW add segbox llx 3 -1 roll put segbox ulx get segbox uly get moveto segbox llx get segbox lly get lineto delta aload pop adddelta stroke }bind def %%EndProcSet %%BeginProcSet : slantrampseg /slantrampseg { gsave newpath segbox ulx get segbox urx get sub abs rampdelta delta astore pop segbox ulx get rampPenW .5 mul sub segbox ulx 3 -1 roll put segbox llx get rampPenW .5 mul sub segbox llx 3 -1 roll put rampColors exch get aload mycurrentrgbcolor copy pop setrgbcolor rampPenW setlinewidth nRampSteps {rampline} repeat grestore }bind def %%EndProcSet %%BeginProcSet : flipramp /flipramp { rampColors 0 get rampColors 3 get rampColors 0 3 -1 roll put rampColors 3 3 -1 roll put rampColors 1 get rampColors 2 get rampColors 1 3 -1 roll put rampColors 2 3 -1 roll put } bind def %%EndProcSet %%BeginProcSet : leftrbox /leftrbox { rbox segbox copy pop rbox urx get rbox ulx get sub flipRatio mul dup segbox ulx get add segbox urx 3 -1 roll put segbox llx get add segbox lrx 3 -1 roll put } bind def %%EndProcSet %%BeginProcSet : rightrbox /rightrbox { rbox segbox copy pop rbox urx get rbox ulx get sub flipRatio mul dup segbox ulx get add segbox ulx 3 -1 roll put segbox llx get add segbox llx 3 -1 roll put } bind def %%EndProcSet %%BeginProcSet : drawslantramp /drawslantramp { segbox urx get segbox ulx get sub 3 div dup dup dup dup dup dup dup dup dup segbox ulx get add segbox urx 3 -1 roll put segbox llx get add segbox lrx 3 -1 roll put segbox aload pop 0 0 1 slantrampseg segbox astore pop segbox ulx get add segbox ulx 3 -1 roll put segbox llx get add segbox llx 3 -1 roll put segbox urx get add segbox urx 3 -1 roll put segbox lrx get add segbox lrx 3 -1 roll put segbox aload pop 1 1 2 slantrampseg segbox astore pop segbox ulx get add segbox ulx 3 -1 roll put segbox llx get add segbox llx 3 -1 roll put segbox urx get add segbox urx 3 -1 roll put segbox lrx get add segbox lrx 3 -1 roll put 2 2 3 slantrampseg }bind def %%EndProcSet %%BeginProcSet : tan /tan { dup sin exch cos div }bind def %%EndProcSet %%BeginProcSet : rampbox /rampbox { pbox top get dup rbox uly 3 -1 roll put rbox ury 3 -1 roll put pbox left get dup rbox ulx 3 -1 roll put rbox llx 3 -1 roll put pbox bottom get dup rbox lly 3 -1 roll put rbox lry 3 -1 roll put pbox right get dup rbox urx 3 -1 roll put rbox lrx 3 -1 roll put }bind def %%EndProcSet %%BeginProcSet : rampbox /LoadSegBox { 4 copy segbox llx 6 -1 roll put segbox lly 5 -1 roll put segbox lrx 4 -1 roll put segbox lry 6 -1 roll put segbox urx 5 -1 roll put segbox ury 3 -1 roll put segbox ulx 4 -1 roll put segbox uly 3 -1 roll put } bind def /TransToCenter { gsave flattenpath pathbbox grestore 2 index sub 2.0 div exch 3 index sub 2.0 div 4 -1 roll add 3 1 roll add translate } bind def /RotRampGrad { gsave TransToCenter -1.0 mul 180.0 add rotate flattenpath pathbbox clip newpath LoadSegBox flipRatio 1 lt dup{flipramp}if flipRatio 0 gt and { /flipRatio 1.0 flipRatio sub def segbox rbox copy pop leftrbox drawslantramp flipramp rightrbox drawslantramp } {drawslantramp} ifelse grestore } bind def /bbg { pbox exch get } bind def %%BeginProcSet : DR /DR { % Directional ramp /workingMatrix mstore def objectCord setmatrix flipramp gsave flattenpath pathbbox grestore pbox bottom 3 -1 roll put pbox right 3 -1 roll put pbox top 3 -1 roll put pbox left 3 -1 roll put rampAngle RotRampGrad RF workingMatrix setmatrix }bind def %%EndProcSet %%BeginProcSet : ramparc /ramparc { gsave circum rampdelta delta astore pop /rampPenW 60.0 nRampSteps div def /ang1 exch rampAngle sub def /ang2 rampPenW ang1 add def rampColors exch get aload mycurrentrgbcolor copy pop setrgbcolor 1 setlinewidth nRampSteps {ramparcseg}repeat grestore }bind def %%EndProcSet %%BeginProcSet : ramparcseg /ramparcseg { newpath rampcenter aload pop moveto rampcenter aload pop rampradius ang2 ang1 arcn fill /ang1 ang2 def /ang2 ang2 rampPenW add def delta aload pop adddelta }bind def %%EndProcSet /GetRadius { rbox urx get rbox llx get sub 2 div rampcenter 0 get abs add dup mul rbox lly get rbox ury get sub 2 div rampcenter 1 get abs add dup mul add sqrt } bind def %%BeginProcSet : circularRamp /circularRamp { rampbox /rampradius GetRadius def CalcCrcm flipramp 0 0 0 1 ramparc 1 60 1 2 ramparc 2 120 2 3 ramparc flipramp 0 180 0 1 ramparc 1 240 1 2 ramparc 2 300 2 3 ramparc }bind def %%EndProcSet /GetCircumf { 2.0 mul 3.1415926 mul } bind def /CalcCrcm { rampradius GetCircumf /circum exch 6.0 div def } bind def %%BeginProcSet : CR /CR { gsave clip MTC currentmatrix pop CTM setmatrix flattenpath pathbbox pbox bottom 3 -1 roll put pbox right 3 -1 roll put pbox top 3 -1 roll put pbox left 3 -1 roll put pbox left get pbox right get sub abs 2 div pbox left get add rampcenter 0 get add rampcenter 0 3 -1 roll put pbox top get pbox bottom get sub abs 2 div pbox top get add rampcenter 1 get add rampcenter 1 3 -1 roll put circularRamp MTC setmatrix grestore RF }bind def %%EndProcSet %%BeginProcSet : shaperamp /SBR { gsave clip /workingMatrix mstore def objectCord setmatrix flattenpath /BaseBox pathbbox 4 array astore def /len BaseBox 2 get BaseBox 0 get sub dup mul BaseBox 3 get BaseBox 1 get sub dup mul add sqrt 12.0 div def /EndBox BaseBox aload pop 3 -1 roll sub 3 1 roll exch sub /dbx exch def /dby exch def BaseBox aload pop pop pop /blly exch def /bllx exch def sbox 0 get 100.0 div dby mul blly add sbox 1 get 100.0 div dbx mul bllx add sbox 2 get 100.0 div dby mul blly add sbox 3 get 100.0 div dbx mul bllx add exch 4 -2 roll exch 4 -2 roll 4 array astore def BaseBox EndBox ShapeBurst workingMatrix setmatrix grestore } bind def %%EndProcSet /GetBoxCenter { 2 index sub 2.0 div 3 -1 roll add 3 1 roll 1 index sub 2.0 div add exch } bind def /GetInterBox { /boxInter exch def 4 1 7 { -1 roll 7 index } for sub boxInter mul 8 -1 roll add 7 1 roll sub boxInter mul 7 -1 roll add 6 1 roll sub boxInter mul 6 -1 roll add 5 1 roll sub boxInter mul 5 -1 roll add 4 1 roll } bind def /GetBoxCenterDeltas { GetBoxCenter 6 2 roll GetBoxCenter 3 -1 roll exch sub 3 1 roll sub exch } bind def /GetBoxCornerDeltas { pop pop 4 2 roll pop pop 3 -1 roll sub 3 1 roll exch sub exch } bind def %%BeginProcSet : getpath /getpath { /k 0 def {/k k 1 add def pop pop}{/k k 1 add def pop pop}{/k k 1 add def pop pop pop pop pop pop}{}pathforall /pfa k array def /k 0 def {{moveto} 3 array astore pfa k 3 -1 roll put /k k 1 add def} {{lineto} 3 array astore pfa k 3 -1 roll put /k k 1 add def} {{curveto} 7 array astore pfa k 3 -1 roll put /k k 1 add def} {}pathforall }bind def %%EndProcSet /ShapeBurst { getpath newpath /SBERect exch 4 array copy def /SBBRect exch 4 array copy def /interRect1 SBBRect aload pop SBERect aload pop .3333333 GetInterBox 4 array astore def /interRect2 SBBRect aload pop SBERect aload pop .6666666 GetInterBox 4 array astore def 0 0 1 SBBRect interRect1 ShapeBurstSeg msave interRect1 0 get interRect1 1 get translate SBBRect aload pop interRect1 aload pop GetBoxesRatio scale SBBRect 0 get -1.0 mul SBBRect 1 get -1.0 mul translate 1 1 2 interRect1 interRect2 ShapeBurstSeg mrestore msave interRect2 0 get interRect2 1 get translate SBBRect aload pop interRect2 aload pop GetBoxesRatio scale SBBRect 0 get -1.0 mul SBBRect 1 get -1.0 mul translate 2 2 3 interRect2 SBERect ShapeBurstSeg mrestore } bind def /ShapeBurstSeg { /sbr1 exch 4 array copy def /sbr0 exch 4 array copy def /blx sbr0 0 get def /bly sbr0 1 get def len rampdelta delta astore pop sbr0 aload pop sbr1 aload pop GetBoxesRatio /ratioY exch def /ratioX exch def sbr0 aload pop sbr1 aload pop GetBoxCornerDeltas /dlly exch nRampSteps div def /dllx exch nRampSteps div def /scaleStepX 1.0 ratioX sub nRampSteps div def /scaleStepY 1.0 ratioY sub nRampSteps div def /currentScaleX 1.0 scaleStepX sub def /currentScaleY 1.0 scaleStepY sub def /translationX blx dllx add def /translationY bly dlly add def /currentScaleX 1.0 def /currentScaleY 1.0 def /translationX blx def /translationY bly def rampColors exch get aload mycurrentrgbcolor copy pop setrgbcolor nRampSteps { msave translationX translationY translate currentScaleX currentScaleY scale blx -1.0 mul bly -1.0 mul translate pfa {aload pop exec} forall fill delta aload pop adddelta /translationX translationX dllx add def /translationY translationY dlly add def /currentScaleX currentScaleX scaleStepX sub def /currentScaleY currentScaleY scaleStepY sub def mrestore } repeat msave translationX translationY translate currentScaleX currentScaleY scale blx -1.0 mul bly -1.0 mul translate pfa {aload pop exec} forall fill mrestore } bind def %%EndProlog initmsaverestore /tctm matrix currentmatrix def tctm RoundMatrix setmatrix /patternMatrix mstore def 10 setmiterlimit 2 setlinecap newpath %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /backfill {/setcmykcolor where {begin gsave 0 0 0 0 setcmykcolor fill grestore end} {gsave 1 1 1 setrgbcolor fill grestore} ifelse} def /fillpat def /iSizeX 24 def /iSizeY 24 def /PF { /pat fillpat def DefaultPatternFont backfill 65 PatternFill } def 3.000 0 144.000 144.000 0.000 0.000 360.000 360.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {1.000 1.000 1.000 setrgbcolor } def /PF {gsave fill grestore} def 3.000 0 243.000 243.000 0.000 0.000 162.000 162.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 315.000 135.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 315.000 234.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 315.000 396.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 315.000 495.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 135.000 315.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 234.000 315.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 396.000 315.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 495.000 315.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 243.000 198.000 243.000 324.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 405.000 198.000 243.000 198.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 405.000 315.000 405.000 198.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 405.000 432.000 405.000 333.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 324.000 504.000 405.000 432.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 207.000 405.000 324.000 405.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 207.000 207.000 207.000 405.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 324.000 144.000 207.000 207.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 441.000 207.000 324.000 144.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 504.000 324.000 441.000 207.000 Line %@EndLine %%Trailer end ---------------9903161209299 Content-Type: application/postscript; name="Fig2.epsf" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="Fig2.epsf" %!PS-Adobe-2.0 EPSF-1.2 %%Title: Fig1(b).epsf %%Creator: CLARIS EPSF Export Filter V1.0 %%CreationDate:12/30/98 5:22:53 p.m. %%BoundingBox: 98 314 478 694 %%QDBoundingBox: 98.500 98.500 477.500 477.500 %%DocumentProcessColors: Cyan Magenta Yellow Black %%ObjectsIncluded: tText=T tLine=T tRect=T tRRect=T tOval=T tArc=T tFree=T tPoly=T tBMap=T tNote=T tBez=T tPMap=T %%AttributesIncluded: kBaWPattType=T kPixPattType=T kGradientType=T %%EndComments /MAV 300 dict def MAV begin /useClip true def /top 0 def /left 1 def /bottom 2 def /right 3 def /CM 6 array def /CTM 6 array def /CTMR 6 array def /MTC 6 array def /blimit 1500 def /bcnt 0 def /rbox 8 array def /segbox 8 array def /bbox1 4 array def /c1 3 array def /c2 3 array def /d 3 array def /delta 3 array def /mycurrentrgbcolor 3 array def /ulx 0 def /uly 1 def /llx 2 def /lly 3 def /urx 4 def /ury 5 def /lrx 6 def /lry 7 def /sp [0 0] def /ep [0 0] def /bbox 4 array def /pbox 4 array def /scrnProc currentscreen 3 1 roll pop pop def /currentcolorscreen where { begin currentcolorscreen end 3 1 roll pop pop 4 2 roll pop pop 5 -2 roll pop pop 6 -2 roll pop pop /kProc exch def /bProc exch def /gProc exch def /rProc exch def } if /Max {2 copy gt {pop}{exch pop} ifelse} bind def /Min {2 copy lt {pop}{exch pop} ifelse} bind def /cellPenW 72.0 /currentcolorscreen where {begin currentcolorscreen end pop pop 10 1 roll pop pop 8 1 roll pop pop 6 1 roll pop pop Max Max Max } {currentscreen pop pop} ifelse div 2.0 div def %%BeginProcSet : rect /rect { /saveobj save def R PC PF LC SS saveobj restore } bind def %%EndProcSet %%BeginProcSet : R /R { newpath pbox astore pop 0 792 translate 1 -1 scale CTMR currentmatrix pop exch translate /objectCord mstore def pbox right get 2 div dup pbox left get exch sub pbox left 3 -1 roll put dup pbox right 3 -1 roll put pbox bottom get 2 div dup pbox top get exch sub pbox top 3 -1 roll put dup pbox bottom 3 -1 roll put translate CTM currentmatrix pop 57.3 mul rotate RT } bind def %%EndProcSet %%BeginProcSet : SaveScreenBW /SaveScreenBW { currentscreen /scrnProc exch def /scrnAngle exch def /scrnFreq exch def } bind def %%EndProcSet %%BeginProcSet : RestoreScreenBW /RestoreScreenBW { scrnFreq scrnAngle MAV /scrnProc get setscreen } bind def %%EndProcSet %%BeginProcSet : SetFreqAngleBW /SetFreqAngleBW { currentscreen 3 1 roll pop pop setscreen } bind def %%EndProcSet %%BeginProcSet : SaveScreenColor /SaveScreenColor { currentcolorscreen /grayProc exch def /grayAngle exch def /grayFreq exch def /bProc exch def /bAngle exch def /bFreq exch def /gProc exch def /gAngle exch def /gFreq exch def /rProc exch def /rAngle exch def /rFreq exch def } bind def %%EndProcSet %%BeginProcSet : RestoreColorScreen /RestoreColorScreen { rFreq rAngle MAV /rProc get gFreq gAngle MAV /gProc get bFreq bAngle MAV /bProc get grayFreq grayAngle MAV /grayProc get setcolorscreen } bind def %%EndProcSet %%BeginProcSet : SetFreqAngleColor /SetFreqAngleColor { currentcolorscreen 3 1 roll pop pop 4 2 roll pop pop 5 -2 roll pop pop 6 -2 roll pop pop 4 1 roll 6 1 roll 8 1 roll 10 1 roll setcolorscreen } bind def %%EndProcSet /initmsaverestore { userdict begin /mdict 10 dict def mdict begin /mindex -1 def /mstacksize 25 def /mstack mstacksize array def /incmindex { /mindex mindex 1 add def } bind def /decmindex { /mindex mindex 1 sub def } bind def /checkmindex { mindex 0 lt { (%ERROR: msave/mrestore stack underflow: Offending command 'mrestore' ) print flush stop } { mindex mstacksize ge { (%ERROR: msave/mrestore stack overflow: Offending command 'msave' ) print flush stop } if } ifelse } bind def /mpush { incmindex checkmindex mstack mindex 3 -1 roll put } bind def /mpop { checkmindex mstack mindex get decmindex } bind def end end } bind def /msave { mdict begin matrix currentmatrix mpush end } bind def /mrestore { mdict begin mpop setmatrix end } bind def /msavelevel { mdict begin mindex 1 add end } bind def /mstore { matrix currentmatrix } bind def /AutoSizeY { 0 0 pl dup 3 1 roll 4 -1 roll add pl exch pop exch sub } bind def /pl { transform 0.25 sub round 0.25 add exch 0.25 sub round 0.25 add exch itransform } bind def /pll { transform round exch round exch itransform } bind def /pr { dtransform round exch round exch idtransform } bind def /m { pl moveto } bind def /l { pl lineto } bind def /c { pl curveto } bind def /rm { pr rmoveto } bind def /rl { pr rlineto } bind def /ar { 5 -2 roll pl 5 2 roll arc } bind def /an { 5 -2 roll pl 5 2 roll arcn } bind def /MakePatternFont { /FontDict 20 dict def FontDict begin /FontName exch def /Encoding exch def /FontMatrix [1 0 0 1 0 0 ] def /FontType 3 def /FontBBox [ 0 0 1 1 ] def /PatternDict exch def /RenderPattern { patternDict exch get exec } bind def /BuildChar { exch begin 1 0 0 0 1 1 setcachedevice Encoding exch get RenderPattern end } bind def FontName FontDict definefont pop end } bind def /SnapToPattenGrid { exch dup 0 lt { 1 index sub } if 1 index div truncate mul } bind def /FillPatternString { dup length 1 sub 0 1 3 -1 roll { 2 index 2 index 3 -2 roll put } for pop pop } bind def /AutoSizeY { 0.0 exch dtransform round idtransform exch pop } bind def /AutoSizeX { 0.0 dtransform exch round exch idtransform pop } bind def /AutoCellSize { AutoSizeY exch AutoSizeX exch } bind def /CheckPath { false { pop pop pop true exit} { pop pop pop true exit} { pop pop pop pop pop pop pop true exit} { pop true exit} pathforall } bind def /PatternFill { % patternCharacter /patternString 1 string def /cm mstore def patternMatrix setmatrix 1 1 AutoCellSize dup 0 eq { pop 1} if exch dup 0 eq { pop 1} if exch /patternSize exch 24.0 mul def /PatternSizeX exch 24.0 mul patternString length mul def /flaterror 0 def patternString FillPatternString gsave flaterror 1 add setflat flattenpath pathbbox grestore psy add flaterror add psy SnapToPattenGrid exch psx add flaterror add psx SnapToPattenGrid 3 -1 roll flaterror sub psy SnapToPattenGrid 4 -1 roll flaterror sub psx SnapToPattenGrid 4 2 roll pll 4 2 roll pll /llxsnap exch def /llysnap exch def /urxsnap exch def /urysnap exch def gsave useClip true eq {clip}{eoclip} ifelse newpath /PatternFont findfont [psx 0.0 0.0 psy 0.0 0.0] makefont setfont llysnap patternSize urysnap { llxsnap exch moveto llxsnap PatternSizeX urxsnap { pop patternString show %currentpoint am } for } bind for grestore cm setmatrix } bind def % End 'PatternFill' /DefaultPatternFont { /cm mstore def patternMatrix setmatrix 1 1 AutoCellSize dup 0 eq { pop 1} if exch dup 0 eq { pop 1} if exch /psy exch iSizeY mul def /psx exch iSizeX mul def /patternDict 64 dict def patternDict begin /NotDef {} def /LiteDiagLines { iSizeX iSizeY false [iSizeX 0.0 0.0 iSizeY -1.0 mul 0.0 iSizeY] {pat} imagemask } bind def end /CustEncoding 256 array def 0 255 1 { CustEncoding exch /NotDef put } bind for CustEncoding 65 /LiteDiagLines put patternDict CustEncoding /PatternFont MakePatternFont /pathSegProc { strokepath CheckPath { 65 PatternFill newpath } if } bind def cm setmatrix } bind def /XRound { dup 3 -1 roll exch mul round exch div } bind def /RoundMatrix { /i 0 def dup { 100000.0 XRound 1 index exch i exch put /i i 1 add def } forall } bind def /GetBoxesRatio { 3 -1 roll sub 7 1 roll exch sub 6 1 roll 3 -1 roll sub 5 1 roll exch sub 4 1 roll 3 -1 roll div 3 1 roll exch div exch } bind def %%BeginProcSet : Text Attributes Procs /T {792 exch sub} bind def /sx 0 def /sy 0 def /ex 0 def /ey 0 def /lw 0 def /siz 0 def /U {gsave 0 setlinecap /lw siz 0.078125 mul def /ey exch neg def /ex exch def /sy exch neg def /sx exch def fontkind plain eq { lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto stroke } { currentdict /outlineFontSize known outlineFontSize 0 gt and { fontkind outline eq { /sy sy 0.0119444 siz mul sub def /ey ey 0.0119444 siz mul sub def gsave 1 1 1 setrgbcolor lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto stroke grestore lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto strokepath 0.0119444 siz mul setlinewidth stroke } if fontkind shadow eq fontkind outlineshadow eq or { /sy sy 0.0358332 siz mul sub def /ey ey 0.0358332 siz mul sub def lw setlinewidth lw 2 div sx add sy lw 2 div sub moveto lw 2 div ex add ey lw 2 div sub lineto stroke gsave 1 1 1 setrgbcolor lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto stroke grestore lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto strokepath 0.0119444 siz mul setlinewidth stroke } if } if } ifelse grestore} bind def /plain 1 def /outline 2 def /shadow 3 def /outlineshadow 4 def /fess { currentdict /outlineFontSize known { /outlineFontSize 2 index def } if findfont exch dup /siz exch def scalefont setfont } bind def /SHDW {gsave siz oldfontname fess siz 0.055 mul x add y siz 0.05 mul sub moveto c show grestore} def /NRML {gsave 1 1 1 setrgbcolor siz oldfontname fess x y moveto c show grestore siz /Outline fess x y moveto c show} def /S { fontkind plain eq {neg moveto show} if fontkind outline eq {neg /y exch def /x exch def /c exch def NRML} if fontkind shadow eq {neg /y exch def /x exch def /c exch def SHDW NRML} if fontkind outlineshadow eq {neg /y exch def /x exch def /c exch def SHDW NRML} if } bind def /F { /fontkind exch def fontkind plain eq {fess} if fontkind outline eq {dup /oldfontname exch def exch dup /siz exch def exch OLF} if fontkind shadow eq {dup /oldfontname exch def exch dup /siz exch def exch OLF} if fontkind outlineshadow eq {dup /oldfontname exch def exch dup /siz exch def exch OLF} if } bind def /makeoutlinedict 15 dict def /makeoutlinefont { makeoutlinedict begin /uniqueid exch def /strokewidth exch def /newfontname exch def /basefontname exch def FontDirectory basefontname known not { /basefontname /Times-Roman def } if /basefontdict basefontname findfont def /numentries basefontdict maxlength 1 add def basefontdict /UniqueID known not {/numentries numentries 1 add def} if /outfontdict numentries dict def basefontdict { exch dup /FID ne {exch outfontdict 3 1 roll put} {pop pop} ifelse }forall outfontdict /FontName newfontname put outfontdict /PaintType 2 put outfontdict /StrokeWidth strokewidth put outfontdict /UniqueID uniqueid put newfontname outfontdict definefont pop end }def /UID { findfont dup /UniqueID known {/UniqueID get 1 add} {pop 1} ifelse } def /OLF { dup /Outline 1000 62 div 4 -1 roll UID /outlineFontSize 5 index def makeoutlinefont /Outline findfont exch scalefont setfont } def /CopyEncoding { findfont /Encoding get dup length array /tarrayz exch def tarrayz 0 3 -1 roll putinterval tarrayz } bind def /Re-encode { dup length array copy /eap 0 def exch { dup type /integertype eq { /eap exch def } { 1 index exch eap exch put /eap eap 1 add def } ifelse } forall } bind def /EncodeFont { findfont dup length dict begin { 1 index /FID ne { def } { pop pop } ifelse } forall /FontName exch def /Encoding exch def FontName currentdict end definefont pop } bind def %%EndProcSet %%BeginProcSet : clip2pathbbox /clip2pathbbox { /magicNum linewidth 2 div 1 2 sqrt div mul def pathbbox /urymn exch magicNum add def /urxmn exch magicNum add def /llymn exch magicNum sub def /llxmn exch magicNum sub def newpath llxmn llymn moveto llxmn urymn lineto urxmn urymn lineto urxmn llymn lineto closepath clip newpath } bind def %%EndProcSet %% Line takes the following arguments: %% linewidth xEnd yEnd xStart yStart %%BeginProcSet : Line /Line { MAV /LC get length 0 ne { gsave newpath MAV /ArrowType get length 0 eq MAV /SD get length 0 eq and {2 setlinecap /UseClip {clip2pathbbox} def } {0 setlinecap /UseClip {} def } ifelse 0 792 translate 1 -1 scale CTM currentmatrix pop /yStart exch def /xStart exch def /yEnd exch def /xEnd exch def /linewidth exch def MAV /ArrowType get length 0 eq xStart xEnd ne yStart yEnd ne and and {xStart yStart moveto xEnd yEnd lineto UseClip xStart yStart moveto xEnd yEnd lineto} {xStart yStart moveto xEnd yEnd lineto} ifelse linewidth setlinewidth SD strokepath CheckPath {LC PF ArrowType} if grestore } {pop pop pop pop pop} ifelse } bind def %% Line takes the following arguments: %% linewidth xEnd yEnd xStart yStart %%BeginProcSet : ZeroLine /ZeroLine { gsave newpath MAV /ArrowType get length 0 ne { /UseClip {} def 0 792 translate 1 -1 scale pop pop pop pop pop CTM currentmatrix pop ArrowType } if grestore } bind def /CompensateForStroke { sin currentlinewidth mul exch cos currentlinewidth mul dup 0 translate 4 -1 roll exch 2.0 mul sub 3 1 roll 2.0 mul sub } bind def /arrowdict 10 dict def arrowdict begin /SwallowTail { newpath 0.0 0.0 moveto 1.0 -.5 lineto .666 0.0 lineto 1.0 .5 lineto closepath } bind def /Triangular { newpath 0.0 0.0 moveto 1.0 -.5 lineto 1.0 .5 lineto closepath } bind def /OpenTri { newpath 1.0 0.5 moveto 0.0 0.0 lineto 1.0 -0.5 lineto } bind def /ClosedTri { newpath 1.0 0.5 moveto 0.0 0.0 lineto 1.0 -0.5 lineto closepath } bind def /SlashBar { newpath 0.5 -.5 moveto -.5 0.5 lineto } bind def /Dot { newpath 0.5 0.0 moveto 0 0 1 0 360 arc closepath } bind def /ExtSlashBar { newpath 1.0 -.5 moveto 0.0 0.5 lineto } bind def end /ScaleArrowHead { 0 0 4 -2 roll 0 0 1 1 8 -4 roll GetBoxesRatio scale } bind def /DrawArrowHead { gsave [] 0 setdash currentpoint translate rotate { 4 copy gsave initmatrix 100 200 translate msave ScaleArrowHead pop arrowdict exch get exec mrestore strokepath 0 0 3 index 3 index pathbbox 8 4 roll GetBoxesRatio 4 2 roll grestore 3 index 1.0 exch sub 6 -1 roll { 2 index mul 0 translate }{ pop } ifelse msave ScaleArrowHead scale arrowdict exch get exec mrestore strokepath } { msave ScaleArrowHead arrowdict exch get exec mrestore } ifelse CheckPath { LC PF } if grestore } bind def %%EndProcSet %%BeginProcSet : SR /SR { pbox left get pbox top get moveto pbox right get pbox top get lineto pbox right get pbox bottom get lineto pbox left get pbox bottom get lineto closepath } bind def %%EndProcSet %%BeginProcSet : RR1 /RR1 { pbox top get pbox bottom get sub abs pbox left get pbox right get sub abs 2 copy lt { Min 2 div dup dup dup pbox left get add pbox left 3 -1 roll put pbox right get exch sub pbox right 3 -1 roll put pbox left get pbox bottom get moveto pbox right get 0 3 -1 roll 90 -90 arcn pbox left get 0 3 -1 roll -90 90 arcn closepath } { Min 2 div dup dup dup pbox bottom get exch sub pbox bottom 3 -1 roll put pbox top get add pbox top 3 -1 roll put pbox left get pbox bottom get moveto pbox left get add pbox top get 2 index 180 0 arc dup pbox left get add pbox bottom get 3 -1 roll 0 180 arc closepath } ifelse } bind def %%EndProcSet %%BeginProcSet : RR2 /RR2 { dup dup dup dup dup dup dup dup pbox top get add pbox top 3 -1 roll put pbox left get add pbox left 3 -1 roll put pbox bottom get exch sub pbox bottom 3 -1 roll put pbox right get exch sub pbox right 3 -1 roll put pbox bottom get add pbox left get exch moveto pbox right get pbox bottom get 3 -1 roll 90 0 arcn pbox right get pbox top get 3 -1 roll 0 270 arcn pbox left get pbox top get 3 -1 roll 270 180 arcn pbox left get pbox bottom get 3 -1 roll 180 90 arcn closepath } bind def %%EndProcSet %%BeginProcSet : E /E { 1.415 setmiterlimit CM currentmatrix pop pbox right get pbox left get sub abs dup pbox bottom get pbox top get sub abs dup 3 -1 roll lt {exch dup 3 -1 roll exch div 1 exch} {dup 3 -1 roll exch div 1} ifelse scale 0 0 3 -1 roll 2 div 0 360 arc closepath CM setmatrix } bind def %%EndProcSet %%BeginProcSet : A1 /A1 {msave pbox right get pbox left get sub abs dup pbox bottom get pbox top get sub abs dup 3 -1 roll lt {exch dup 3 -1 roll exch div 1 exch} {dup 3 -1 roll exch div 1} ifelse scale 0 0 3 -1 roll 2 div 5 -1 roll -90 add 5 -1 roll -90 add arcn mrestore} bind def %%EndProcSet %%BeginProcSet : A2 /A2 {msave 0 0 moveto A1 closepath mrestore} def %%EndProcSet %%BeginProcSet : BitMap /BitMap { /buffer ^1 string def ^2 ^5 2 div add 792 ^3 sub ^6 2 div add translate ^4 57.3 mul rotate 0 ^5 2 div sub 0 ^6 2 div sub translate ^5 ^6 scale ^5 ^6 ^7 [^5 0 0 -^6 0 ^6] {currentfile buffer readhexstring pop} image }bind def %%EndProcSet %%BeginProcSet : note /note { gsave pbox astore pop 0 792 translate 1 -1 scale CTM currentmatrix pop exch translate pbox right get pbox left get sub 2 div pbox bottom get pbox top get sub 2 div translate 57.3 mul rotate setlinewidth noteBody aload pop moveto noteBody length 2 div 1 sub cvi{lineto}repeat dogEar aload pop moveto dogEar length 2 div 1 sub cvi{lineto}repeat 0.992 0.975 0.507 setrgbcolor gsave fill grestore gsave newpath stickem aload pop moveto stickem length 2 div 1 sub cvi{lineto}repeat 0.760 0.760 0.760 setrgbcolor fill grestore 0 0 0 setrgbcolor stroke noteShadow aload pop moveto noteShadow length 2 div 1 sub cvi{lineto}repeat dogEarShadow aload pop moveto dogEarShadow length 2 div 1 sub cvi{lineto}repeat 0 0 0 setrgbcolor gsave stroke grestore fill grestore }bind def %%EndProcSet %%BeginProcSet : RGB4toGray4 /redTbl4 [0 0 1 1 1 1 2 2 3 3 3 4 4 4 5 5] def /greenTbl4 [0 1 1 2 2 3 3 4 4 5 6 6 7 7 7 8] def /blueTbl4 [0 0 0 0 1 1 1 1 1 1 1 1 1 2 2 2] def /RGB4toGray4 { currentfile RGBBuf readhexstring pop pop /i 0 def /j 0 def grayBuf length { RGBBuf i get dup -4 bitshift redTbl4 exch get exch 15 and greenTbl4 exch get add RGBBuf i 1 add get dup -4 bitshift blueTbl4 exch get 3 -1 roll add 4 bitshift exch 15 and redTbl4 exch get RGBBuf i 2 add get dup -4 bitshift greenTbl4 exch get 3 -1 roll add exch 15 and blueTbl4 exch get add or grayBuf j 3 -1 roll put /i i 3 add def /j j 1 add def } repeat grayBuf } bind def %%EndProcSet %%BeginProcSet : RGB8toGray8 /RGB8toGray8 { currentfile RGBBuf readhexstring pop pop /i 0 def /j 0 def grayBuf length { RGBBuf i get 0.33 mul RGBBuf i 1 add get 0.55 mul add RGBBuf i 2 add get 0.12 mul add round cvi grayBuf j 3 -1 roll put /i i 3 add def /j j 1 add def } repeat grayBuf } bind def %%EndProcSet %%BeginProcSet : RGB24toGray8 /RGB24toGray8 {RGB8toGray8} bind def %%EndProcSet %%BeginProcSet : RGB2toGray2 /redTbl2 [0 0 1 1] def /greenTbl2 [0 1 1 2] def /blueTbl2 [0 0 0 0] def /RGB2toGray2 { currentfile RGBBuf readhexstring pop pop /i 0 def /j 0 def grayBuf length { RGBBuf i get dup dup dup -6 bitshift redTbl2 exch get exch -4 bitshift 3 and greenTbl2 exch get add exch -2 bitshift 3 and blueTbl2 exch get add 6 bitshift exch 3 and redTbl2 exch get RGBBuf i 1 add get dup dup dup -6 bitshift greenTbl2 exch get exch -4 bitshift 3 and blueTbl2 exch get add 4 -1 roll add 4 bitshift 4 -1 roll or 3 1 roll -2 bitshift 3 and redTbl2 exch get exch 3 and greenTbl2 exch get add RGBBuf i 2 add get dup dup dup -6 bitshift blueTbl2 exch get 5 -1 roll add 2 bitshift 5 -1 roll or 4 1 roll -4 bitshift 3 and redTbl2 exch get exch -2 bitshift 3 and greenTbl2 exch get add exch 3 and greenTbl2 exch get add or grayBuf j 3 -1 roll put /i i 3 add def /j j 1 add def } repeat grayBuf } bind def %%EndProcSet %%EndProcSet %%BeginProcSet : RGB1toGray1 /RGB1toGray1 { currentfile RGBBuf readhexstring pop pop /i 0 def /j 0 def grayBuf length { RGBBuf i get dup dup 1 bitshift 128 and exch 3 bitshift 64 and or exch 5 bitshift 32 and or RGBBuf i 1 add get dup -1 bitshift 16 and exch 1 bitshift 8 and or or RGBBuf i 2 add get dup dup -5 bitshift 4 and exch -3 bitshift 2 and or exch -1 bitshift 1 and or or /i i 3 add def /j j 1 add def } repeat grayBuf } bind def %%EndProcSet %%BeginProcSet : RGB16toGray8 /RGB16toGray8 {RGB8toGray8} bind def %%EndProcSet %%BeginProcSet : BW /ScalePoint { 0 0 4 -2 roll 0 0 1 1 8 4 roll GetBoxesRatio scale } bind def /PointDict 4 dict def PointDict begin /XPoint { -.5 .5 moveto .5 -.5 lineto .5 .5 moveto -.5 -.5 lineto } bind def /DiamondPoint { 0.0 .5 moveto .5 0.0 lineto 0.0 -0.5 lineto -.5 0.0 lineto closepath } bind def /PlusPoint { 0.0 .5 moveto 0.0 -.5 lineto -.5 0.0 moveto .5 0.0 lineto } bind def /SquarePoint { -.5 .5 moveto .5 .5 lineto .5 -.5 lineto -.5 -.5 lineto closepath } bind def end /DrawPoint { gsave [] 0 setdash 0 setlinecap translate msave ScalePoint PointDict exch get exec mrestore 1.0 setlinewidth stroke grestore } bind def %%EndProcSet %%BeginProcSet : Wall object Procs %%EndProcSet %%BeginProcSet : Subscriber /Subscriber { msave R PC PF LC SS newpath mrestore } bind def %%EndProcSet /StripFromFront { dup length 2 index sub 3 1 roll exch 3 -1 roll getinterval } bind def /MakePathArray { /k 0 def {/k k 1 add def pop pop}{/k k 1 add def pop pop}{/k k 1 add def pop pop pop pop pop pop}{/k k 1 add def }pathforall k array /k 0 def {{moveto} 3 array astore 1 index k 3 -1 roll put /k k 1 add def} {{lineto} 3 array astore 1 index k 3 -1 roll put /k k 1 add def} {{curveto} 7 array astore 1 index k 3 -1 roll put /k k 1 add def} {{closepath} 1 array astore 1 index k 3 -1 roll put /k k 1 add def} pathforall }bind def /MakeFlatPathArray { /k 0 def {/k k 1 add def pop pop}{/k k 1 add def pop pop}{pop pop pop pop pop pop}{}pathforall k array /k 0 def {{moveto} 3 array astore 1 index k 3 -1 roll put /k k 1 add def} {{lineto} 3 array astore 1 index k 3 -1 roll put /k k 1 add def} { pop pop pop pop pop pop} {} pathforall }bind def /FractionalLine { 2 index sub .00001 mul exch 3 index sub .00001 mul 4 -1 roll add 3 1 roll add } bind def /calcLineLength { exch 4 -1 roll sub dup mul 3 1 roll exch sub dup mul add sqrt } bind def /InitTotalLineLength { /oldY exch def /oldX exch def theDash aload pop currentLineLength add setdash } bind def /AccumeLineLength { 3 copy pop 2 copy oldX oldY 4 2 roll calcLineLength /segmentLength exch def /currentLineLength currentLineLength segmentLength add def /oldY exch def /oldX exch def } bind def /DecumeLastLineLength { /currentLineLength currentLineLength segmentLength sub def } bind def /DrawFlattendSegment { /pointCount 2 def dup 0 lt { pop 0 } if fpc 3 1 roll 2 index 1 index gt { 2 copy get dup length dup 3 eq { pop dup 0 get exch 1 get 2 copy InitTotalLineLength m } { } ifelse } { pop 1 index } ifelse dup 1 add 3 index exch sub dup 10 gt { pop 10} if { 1 add 2 copy get aload pop AccumeLineLength exec } repeat 3 1 roll pop pop DecumeLastLineLength } bind def /IncFPC { fpc add /fpc exch def } bind def /DrawFlatPathArray { fpc 0 { dup 2 index 1 sub lt { flatPathArray exch newpath 1 sub DrawFlattendSegment gsave pathSegProc grestore newpath } { pop pop exit } ifelse } loop } bind def /RecordFirstSubSegment { closepathArray 0 pathArray 0 get put closepathArray 1 pathArray 0 get aload pop pop pathArray 1 get dup length 3 eq { aload pop pop } { newpath 0 0 moveto aload pop exec /segmentArray flattenpath MakeFlatPathArray def segmentArray 1 get aload pop pop } ifelse FractionalLine {lineto} 3 array astore put } bind def /AppendClosePath { closepathArray 0 get 2 {lineto} put flatPathArray fpc closepathArray 0 get put 1 IncFPC flatPathArray fpc closepathArray 1 get put 1 IncFPC } bind def /RecordCurrentDash { /theDash currentdash 2 array astore def /currentLineLength 0 def } bind def /PatternStroke { 0 setlinecap RecordCurrentDash /saveFlat currentflat def .5 setflat /pathArray MakePathArray def /closepathArray 2 array def /pathLength pathArray length def /flatPathArray 513 array def /currentLineLength 0 def /fpc 0 def pathArray pathLength 1 sub get length 1 eq { /usingClosepath true def RecordFirstSubSegment /pathLength pathLength 1 sub def } { /usingClosepath false def } ifelse 0 1 pathLength 1 sub { pathArray exch get dup length 3 eq { fpc 1 add 512 ge { DrawFlatPathArray fpc 2 ge { flatPathArray flatPathArray fpc 2 sub get 0 put flatPathArray flatPathArray fpc 1 sub get 1 put /fpc 2 def }{ /fpc 0 def } ifelse } if flatPathArray exch fpc exch put 1 IncFPC } { dup length 7 eq { newpath /nToStrip 0 def fpc 1 gt { flatPathArray fpc 2 sub get aload pop pop m flatPathArray fpc 1 sub get aload pop exec /nToStrip 2 def } { fpc 1 eq { flatPathArray fpc 1 sub get aload pop exec /nToStrip 2 def } if } ifelse aload pop exec /segmentArray flattenpath MakeFlatPathArray def /segmentArray nToStrip segmentArray StripFromFront def segmentArray length fpc add 512 lt { flatPathArray fpc segmentArray putinterval segmentArray length IncFPC } { DrawFlatPathArray fpc 1 gt { flatPathArray flatPathArray fpc 2 sub get 0 exch put flatPathArray flatPathArray fpc 1 sub get 1 exch put /fpc 2 def }{ /fpc 0 def } ifelse segmentArray length 512 lt { flatPathArray fpc segmentArray putinterval segmentArray length IncFPC } { segmentArray length /exitLoop false def 0 { 2 copy sub dup 500 gt { pop 500 } { /exitLoop true def } ifelse segmentArray 2 index 2 index getinterval flatPathArray fpc 3 -1 roll putinterval dup IncFPC add exitLoop { exit } { DrawFlatPathArray fpc 1 gt { flatPathArray flatPathArray fpc 2 sub get 0 exch put flatPathArray flatPathArray fpc 1 sub get 1 exch put /fpc 2 def }{ /fpc 0 def } ifelse } ifelse } loop } ifelse } ifelse } if } ifelse } for fpc 0 gt { usingClosepath { AppendClosePath } if DrawFlatPathArray } if saveFlat setflat } bind def %%BeginProcSet : rampdelta /rampdelta { /len 0 3 -1 roll add def /i2 0 3 -1 roll add def /i1 0 3 -1 roll add def /nRampSteps len cellPenW div cvi 1 add dup 512 gt {pop 512} if def /rampPenW len nRampSteps div def rampColors i1 get aload pop c1 astore pop rampColors i2 get aload pop c2 astore pop c2 0 get c1 0 get sub nRampSteps div d 0 3 -1 roll put c2 1 get c1 1 get sub nRampSteps div d 1 3 -1 roll put c2 2 get c1 2 get sub nRampSteps div d 2 3 -1 roll put d aload pop } bind def %%EndProcSet %%BeginProcSet : adddelta /adddelta { d astore pop mycurrentrgbcolor c1 copy pop c1 0 get d 0 get add c2 0 3 -1 roll put c1 1 get d 1 get add c2 1 3 -1 roll put c1 2 get d 2 get add c2 2 3 -1 roll put c2 aload pop setrgbcolor c2 mycurrentrgbcolor copy pop } bind def %%EndProcSet %%BeginProcSet : rampline /rampline { segbox ulx get rampPenW add segbox ulx 3 -1 roll put segbox llx get rampPenW add segbox llx 3 -1 roll put segbox ulx get segbox uly get moveto segbox llx get segbox lly get lineto delta aload pop adddelta stroke }bind def %%EndProcSet %%BeginProcSet : slantrampseg /slantrampseg { gsave newpath segbox ulx get segbox urx get sub abs rampdelta delta astore pop segbox ulx get rampPenW .5 mul sub segbox ulx 3 -1 roll put segbox llx get rampPenW .5 mul sub segbox llx 3 -1 roll put rampColors exch get aload mycurrentrgbcolor copy pop setrgbcolor rampPenW setlinewidth nRampSteps {rampline} repeat grestore }bind def %%EndProcSet %%BeginProcSet : flipramp /flipramp { rampColors 0 get rampColors 3 get rampColors 0 3 -1 roll put rampColors 3 3 -1 roll put rampColors 1 get rampColors 2 get rampColors 1 3 -1 roll put rampColors 2 3 -1 roll put } bind def %%EndProcSet %%BeginProcSet : leftrbox /leftrbox { rbox segbox copy pop rbox urx get rbox ulx get sub flipRatio mul dup segbox ulx get add segbox urx 3 -1 roll put segbox llx get add segbox lrx 3 -1 roll put } bind def %%EndProcSet %%BeginProcSet : rightrbox /rightrbox { rbox segbox copy pop rbox urx get rbox ulx get sub flipRatio mul dup segbox ulx get add segbox ulx 3 -1 roll put segbox llx get add segbox llx 3 -1 roll put } bind def %%EndProcSet %%BeginProcSet : drawslantramp /drawslantramp { segbox urx get segbox ulx get sub 3 div dup dup dup dup dup dup dup dup dup segbox ulx get add segbox urx 3 -1 roll put segbox llx get add segbox lrx 3 -1 roll put segbox aload pop 0 0 1 slantrampseg segbox astore pop segbox ulx get add segbox ulx 3 -1 roll put segbox llx get add segbox llx 3 -1 roll put segbox urx get add segbox urx 3 -1 roll put segbox lrx get add segbox lrx 3 -1 roll put segbox aload pop 1 1 2 slantrampseg segbox astore pop segbox ulx get add segbox ulx 3 -1 roll put segbox llx get add segbox llx 3 -1 roll put segbox urx get add segbox urx 3 -1 roll put segbox lrx get add segbox lrx 3 -1 roll put 2 2 3 slantrampseg }bind def %%EndProcSet %%BeginProcSet : tan /tan { dup sin exch cos div }bind def %%EndProcSet %%BeginProcSet : rampbox /rampbox { pbox top get dup rbox uly 3 -1 roll put rbox ury 3 -1 roll put pbox left get dup rbox ulx 3 -1 roll put rbox llx 3 -1 roll put pbox bottom get dup rbox lly 3 -1 roll put rbox lry 3 -1 roll put pbox right get dup rbox urx 3 -1 roll put rbox lrx 3 -1 roll put }bind def %%EndProcSet %%BeginProcSet : rampbox /LoadSegBox { 4 copy segbox llx 6 -1 roll put segbox lly 5 -1 roll put segbox lrx 4 -1 roll put segbox lry 6 -1 roll put segbox urx 5 -1 roll put segbox ury 3 -1 roll put segbox ulx 4 -1 roll put segbox uly 3 -1 roll put } bind def /TransToCenter { gsave flattenpath pathbbox grestore 2 index sub 2.0 div exch 3 index sub 2.0 div 4 -1 roll add 3 1 roll add translate } bind def /RotRampGrad { gsave TransToCenter -1.0 mul 180.0 add rotate flattenpath pathbbox clip newpath LoadSegBox flipRatio 1 lt dup{flipramp}if flipRatio 0 gt and { /flipRatio 1.0 flipRatio sub def segbox rbox copy pop leftrbox drawslantramp flipramp rightrbox drawslantramp } {drawslantramp} ifelse grestore } bind def /bbg { pbox exch get } bind def %%BeginProcSet : DR /DR { % Directional ramp /workingMatrix mstore def objectCord setmatrix flipramp gsave flattenpath pathbbox grestore pbox bottom 3 -1 roll put pbox right 3 -1 roll put pbox top 3 -1 roll put pbox left 3 -1 roll put rampAngle RotRampGrad RF workingMatrix setmatrix }bind def %%EndProcSet %%BeginProcSet : ramparc /ramparc { gsave circum rampdelta delta astore pop /rampPenW 60.0 nRampSteps div def /ang1 exch rampAngle sub def /ang2 rampPenW ang1 add def rampColors exch get aload mycurrentrgbcolor copy pop setrgbcolor 1 setlinewidth nRampSteps {ramparcseg}repeat grestore }bind def %%EndProcSet %%BeginProcSet : ramparcseg /ramparcseg { newpath rampcenter aload pop moveto rampcenter aload pop rampradius ang2 ang1 arcn fill /ang1 ang2 def /ang2 ang2 rampPenW add def delta aload pop adddelta }bind def %%EndProcSet /GetRadius { rbox urx get rbox llx get sub 2 div rampcenter 0 get abs add dup mul rbox lly get rbox ury get sub 2 div rampcenter 1 get abs add dup mul add sqrt } bind def %%BeginProcSet : circularRamp /circularRamp { rampbox /rampradius GetRadius def CalcCrcm flipramp 0 0 0 1 ramparc 1 60 1 2 ramparc 2 120 2 3 ramparc flipramp 0 180 0 1 ramparc 1 240 1 2 ramparc 2 300 2 3 ramparc }bind def %%EndProcSet /GetCircumf { 2.0 mul 3.1415926 mul } bind def /CalcCrcm { rampradius GetCircumf /circum exch 6.0 div def } bind def %%BeginProcSet : CR /CR { gsave clip MTC currentmatrix pop CTM setmatrix flattenpath pathbbox pbox bottom 3 -1 roll put pbox right 3 -1 roll put pbox top 3 -1 roll put pbox left 3 -1 roll put pbox left get pbox right get sub abs 2 div pbox left get add rampcenter 0 get add rampcenter 0 3 -1 roll put pbox top get pbox bottom get sub abs 2 div pbox top get add rampcenter 1 get add rampcenter 1 3 -1 roll put circularRamp MTC setmatrix grestore RF }bind def %%EndProcSet %%BeginProcSet : shaperamp /SBR { gsave clip /workingMatrix mstore def objectCord setmatrix flattenpath /BaseBox pathbbox 4 array astore def /len BaseBox 2 get BaseBox 0 get sub dup mul BaseBox 3 get BaseBox 1 get sub dup mul add sqrt 12.0 div def /EndBox BaseBox aload pop 3 -1 roll sub 3 1 roll exch sub /dbx exch def /dby exch def BaseBox aload pop pop pop /blly exch def /bllx exch def sbox 0 get 100.0 div dby mul blly add sbox 1 get 100.0 div dbx mul bllx add sbox 2 get 100.0 div dby mul blly add sbox 3 get 100.0 div dbx mul bllx add exch 4 -2 roll exch 4 -2 roll 4 array astore def BaseBox EndBox ShapeBurst workingMatrix setmatrix grestore } bind def %%EndProcSet /GetBoxCenter { 2 index sub 2.0 div 3 -1 roll add 3 1 roll 1 index sub 2.0 div add exch } bind def /GetInterBox { /boxInter exch def 4 1 7 { -1 roll 7 index } for sub boxInter mul 8 -1 roll add 7 1 roll sub boxInter mul 7 -1 roll add 6 1 roll sub boxInter mul 6 -1 roll add 5 1 roll sub boxInter mul 5 -1 roll add 4 1 roll } bind def /GetBoxCenterDeltas { GetBoxCenter 6 2 roll GetBoxCenter 3 -1 roll exch sub 3 1 roll sub exch } bind def /GetBoxCornerDeltas { pop pop 4 2 roll pop pop 3 -1 roll sub 3 1 roll exch sub exch } bind def %%BeginProcSet : getpath /getpath { /k 0 def {/k k 1 add def pop pop}{/k k 1 add def pop pop}{/k k 1 add def pop pop pop pop pop pop}{}pathforall /pfa k array def /k 0 def {{moveto} 3 array astore pfa k 3 -1 roll put /k k 1 add def} {{lineto} 3 array astore pfa k 3 -1 roll put /k k 1 add def} {{curveto} 7 array astore pfa k 3 -1 roll put /k k 1 add def} {}pathforall }bind def %%EndProcSet /ShapeBurst { getpath newpath /SBERect exch 4 array copy def /SBBRect exch 4 array copy def /interRect1 SBBRect aload pop SBERect aload pop .3333333 GetInterBox 4 array astore def /interRect2 SBBRect aload pop SBERect aload pop .6666666 GetInterBox 4 array astore def 0 0 1 SBBRect interRect1 ShapeBurstSeg msave interRect1 0 get interRect1 1 get translate SBBRect aload pop interRect1 aload pop GetBoxesRatio scale SBBRect 0 get -1.0 mul SBBRect 1 get -1.0 mul translate 1 1 2 interRect1 interRect2 ShapeBurstSeg mrestore msave interRect2 0 get interRect2 1 get translate SBBRect aload pop interRect2 aload pop GetBoxesRatio scale SBBRect 0 get -1.0 mul SBBRect 1 get -1.0 mul translate 2 2 3 interRect2 SBERect ShapeBurstSeg mrestore } bind def /ShapeBurstSeg { /sbr1 exch 4 array copy def /sbr0 exch 4 array copy def /blx sbr0 0 get def /bly sbr0 1 get def len rampdelta delta astore pop sbr0 aload pop sbr1 aload pop GetBoxesRatio /ratioY exch def /ratioX exch def sbr0 aload pop sbr1 aload pop GetBoxCornerDeltas /dlly exch nRampSteps div def /dllx exch nRampSteps div def /scaleStepX 1.0 ratioX sub nRampSteps div def /scaleStepY 1.0 ratioY sub nRampSteps div def /currentScaleX 1.0 scaleStepX sub def /currentScaleY 1.0 scaleStepY sub def /translationX blx dllx add def /translationY bly dlly add def /currentScaleX 1.0 def /currentScaleY 1.0 def /translationX blx def /translationY bly def rampColors exch get aload mycurrentrgbcolor copy pop setrgbcolor nRampSteps { msave translationX translationY translate currentScaleX currentScaleY scale blx -1.0 mul bly -1.0 mul translate pfa {aload pop exec} forall fill delta aload pop adddelta /translationX translationX dllx add def /translationY translationY dlly add def /currentScaleX currentScaleX scaleStepX sub def /currentScaleY currentScaleY scaleStepY sub def mrestore } repeat msave translationX translationY translate currentScaleX currentScaleY scale blx -1.0 mul bly -1.0 mul translate pfa {aload pop exec} forall fill mrestore } bind def %%EndProlog initmsaverestore /tctm matrix currentmatrix def tctm RoundMatrix setmatrix /patternMatrix mstore def 10 setmiterlimit 2 setlinecap newpath %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /backfill {/setcmykcolor where {begin gsave 0 0 0 0 setcmykcolor fill grestore end} {gsave 1 1 1 setrgbcolor fill grestore} ifelse} def /fillpat def /iSizeX 24 def /iSizeY 24 def /PF { /pat fillpat def DefaultPatternFont backfill 65 PatternFill } def 3.000 0 108.000 108.000 0.000 0.000 360.000 360.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {1.000 1.000 1.000 setrgbcolor } def /PF {gsave fill grestore} def 3.000 0 207.000 207.000 0.000 0.000 162.000 162.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 279.000 99.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 279.000 198.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 279.000 360.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 279.000 459.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 99.000 279.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 198.000 279.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 360.000 279.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 459.000 279.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 207.000 162.000 207.000 288.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 369.000 162.000 207.000 162.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 369.000 279.000 369.000 162.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 405.000 171.000 288.000 108.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 468.000 288.000 405.000 171.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 207.000 396.000 207.000 288.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 288.000 468.000 207.000 396.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 387.000 369.000 288.000 369.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 468.000 288.000 387.000 369.000 Line %@EndLine %%Trailer end ---------------9903161209299 Content-Type: application/postscript; name="Fig3.epsf" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="Fig3.epsf" %!PS-Adobe-2.0 EPSF-1.2 %%Title: Fig1(c).epsf %%Creator: CLARIS EPSF Export Filter V1.0 %%CreationDate:12/30/98 5:31:24 p.m. %%BoundingBox: 106 322 470 686 %%QDBoundingBox: 106.500 106.500 469.500 469.500 %%DocumentProcessColors: Cyan Magenta Yellow Black %%ObjectsIncluded: tText=T tLine=T tRect=T tRRect=T tOval=T tArc=T tFree=T tPoly=T tBMap=T tNote=T tBez=T tPMap=T %%AttributesIncluded: kBaWPattType=T kPixPattType=T kGradientType=T %%EndComments /MAV 300 dict def MAV begin /useClip true def /top 0 def /left 1 def /bottom 2 def /right 3 def /CM 6 array def /CTM 6 array def /CTMR 6 array def /MTC 6 array def /blimit 1500 def /bcnt 0 def /rbox 8 array def /segbox 8 array def /bbox1 4 array def /c1 3 array def /c2 3 array def /d 3 array def /delta 3 array def /mycurrentrgbcolor 3 array def /ulx 0 def /uly 1 def /llx 2 def /lly 3 def /urx 4 def /ury 5 def /lrx 6 def /lry 7 def /sp [0 0] def /ep [0 0] def /bbox 4 array def /pbox 4 array def /scrnProc currentscreen 3 1 roll pop pop def /currentcolorscreen where { begin currentcolorscreen end 3 1 roll pop pop 4 2 roll pop pop 5 -2 roll pop pop 6 -2 roll pop pop /kProc exch def /bProc exch def /gProc exch def /rProc exch def } if /Max {2 copy gt {pop}{exch pop} ifelse} bind def /Min {2 copy lt {pop}{exch pop} ifelse} bind def /cellPenW 72.0 /currentcolorscreen where {begin currentcolorscreen end pop pop 10 1 roll pop pop 8 1 roll pop pop 6 1 roll pop pop Max Max Max } {currentscreen pop pop} ifelse div 2.0 div def %%BeginProcSet : rect /rect { /saveobj save def R PC PF LC SS saveobj restore } bind def %%EndProcSet %%BeginProcSet : R /R { newpath pbox astore pop 0 792 translate 1 -1 scale CTMR currentmatrix pop exch translate /objectCord mstore def pbox right get 2 div dup pbox left get exch sub pbox left 3 -1 roll put dup pbox right 3 -1 roll put pbox bottom get 2 div dup pbox top get exch sub pbox top 3 -1 roll put dup pbox bottom 3 -1 roll put translate CTM currentmatrix pop 57.3 mul rotate RT } bind def %%EndProcSet %%BeginProcSet : SaveScreenBW /SaveScreenBW { currentscreen /scrnProc exch def /scrnAngle exch def /scrnFreq exch def } bind def %%EndProcSet %%BeginProcSet : RestoreScreenBW /RestoreScreenBW { scrnFreq scrnAngle MAV /scrnProc get setscreen } bind def %%EndProcSet %%BeginProcSet : SetFreqAngleBW /SetFreqAngleBW { currentscreen 3 1 roll pop pop setscreen } bind def %%EndProcSet %%BeginProcSet : SaveScreenColor /SaveScreenColor { currentcolorscreen /grayProc exch def /grayAngle exch def /grayFreq exch def /bProc exch def /bAngle exch def /bFreq exch def /gProc exch def /gAngle exch def /gFreq exch def /rProc exch def /rAngle exch def /rFreq exch def } bind def %%EndProcSet %%BeginProcSet : RestoreColorScreen /RestoreColorScreen { rFreq rAngle MAV /rProc get gFreq gAngle MAV /gProc get bFreq bAngle MAV /bProc get grayFreq grayAngle MAV /grayProc get setcolorscreen } bind def %%EndProcSet %%BeginProcSet : SetFreqAngleColor /SetFreqAngleColor { currentcolorscreen 3 1 roll pop pop 4 2 roll pop pop 5 -2 roll pop pop 6 -2 roll pop pop 4 1 roll 6 1 roll 8 1 roll 10 1 roll setcolorscreen } bind def %%EndProcSet /initmsaverestore { userdict begin /mdict 10 dict def mdict begin /mindex -1 def /mstacksize 25 def /mstack mstacksize array def /incmindex { /mindex mindex 1 add def } bind def /decmindex { /mindex mindex 1 sub def } bind def /checkmindex { mindex 0 lt { (%ERROR: msave/mrestore stack underflow: Offending command 'mrestore' ) print flush stop } { mindex mstacksize ge { (%ERROR: msave/mrestore stack overflow: Offending command 'msave' ) print flush stop } if } ifelse } bind def /mpush { incmindex checkmindex mstack mindex 3 -1 roll put } bind def /mpop { checkmindex mstack mindex get decmindex } bind def end end } bind def /msave { mdict begin matrix currentmatrix mpush end } bind def /mrestore { mdict begin mpop setmatrix end } bind def /msavelevel { mdict begin mindex 1 add end } bind def /mstore { matrix currentmatrix } bind def /AutoSizeY { 0 0 pl dup 3 1 roll 4 -1 roll add pl exch pop exch sub } bind def /pl { transform 0.25 sub round 0.25 add exch 0.25 sub round 0.25 add exch itransform } bind def /pll { transform round exch round exch itransform } bind def /pr { dtransform round exch round exch idtransform } bind def /m { pl moveto } bind def /l { pl lineto } bind def /c { pl curveto } bind def /rm { pr rmoveto } bind def /rl { pr rlineto } bind def /ar { 5 -2 roll pl 5 2 roll arc } bind def /an { 5 -2 roll pl 5 2 roll arcn } bind def /MakePatternFont { /FontDict 20 dict def FontDict begin /FontName exch def /Encoding exch def /FontMatrix [1 0 0 1 0 0 ] def /FontType 3 def /FontBBox [ 0 0 1 1 ] def /PatternDict exch def /RenderPattern { patternDict exch get exec } bind def /BuildChar { exch begin 1 0 0 0 1 1 setcachedevice Encoding exch get RenderPattern end } bind def FontName FontDict definefont pop end } bind def /SnapToPattenGrid { exch dup 0 lt { 1 index sub } if 1 index div truncate mul } bind def /FillPatternString { dup length 1 sub 0 1 3 -1 roll { 2 index 2 index 3 -2 roll put } for pop pop } bind def /AutoSizeY { 0.0 exch dtransform round idtransform exch pop } bind def /AutoSizeX { 0.0 dtransform exch round exch idtransform pop } bind def /AutoCellSize { AutoSizeY exch AutoSizeX exch } bind def /CheckPath { false { pop pop pop true exit} { pop pop pop true exit} { pop pop pop pop pop pop pop true exit} { pop true exit} pathforall } bind def /PatternFill { % patternCharacter /patternString 1 string def /cm mstore def patternMatrix setmatrix 1 1 AutoCellSize dup 0 eq { pop 1} if exch dup 0 eq { pop 1} if exch /patternSize exch 24.0 mul def /PatternSizeX exch 24.0 mul patternString length mul def /flaterror 0 def patternString FillPatternString gsave flaterror 1 add setflat flattenpath pathbbox grestore psy add flaterror add psy SnapToPattenGrid exch psx add flaterror add psx SnapToPattenGrid 3 -1 roll flaterror sub psy SnapToPattenGrid 4 -1 roll flaterror sub psx SnapToPattenGrid 4 2 roll pll 4 2 roll pll /llxsnap exch def /llysnap exch def /urxsnap exch def /urysnap exch def gsave useClip true eq {clip}{eoclip} ifelse newpath /PatternFont findfont [psx 0.0 0.0 psy 0.0 0.0] makefont setfont llysnap patternSize urysnap { llxsnap exch moveto llxsnap PatternSizeX urxsnap { pop patternString show %currentpoint am } for } bind for grestore cm setmatrix } bind def % End 'PatternFill' /DefaultPatternFont { /cm mstore def patternMatrix setmatrix 1 1 AutoCellSize dup 0 eq { pop 1} if exch dup 0 eq { pop 1} if exch /psy exch iSizeY mul def /psx exch iSizeX mul def /patternDict 64 dict def patternDict begin /NotDef {} def /LiteDiagLines { iSizeX iSizeY false [iSizeX 0.0 0.0 iSizeY -1.0 mul 0.0 iSizeY] {pat} imagemask } bind def end /CustEncoding 256 array def 0 255 1 { CustEncoding exch /NotDef put } bind for CustEncoding 65 /LiteDiagLines put patternDict CustEncoding /PatternFont MakePatternFont /pathSegProc { strokepath CheckPath { 65 PatternFill newpath } if } bind def cm setmatrix } bind def /XRound { dup 3 -1 roll exch mul round exch div } bind def /RoundMatrix { /i 0 def dup { 100000.0 XRound 1 index exch i exch put /i i 1 add def } forall } bind def /GetBoxesRatio { 3 -1 roll sub 7 1 roll exch sub 6 1 roll 3 -1 roll sub 5 1 roll exch sub 4 1 roll 3 -1 roll div 3 1 roll exch div exch } bind def %%BeginProcSet : Text Attributes Procs /T {792 exch sub} bind def /sx 0 def /sy 0 def /ex 0 def /ey 0 def /lw 0 def /siz 0 def /U {gsave 0 setlinecap /lw siz 0.078125 mul def /ey exch neg def /ex exch def /sy exch neg def /sx exch def fontkind plain eq { lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto stroke } { currentdict /outlineFontSize known outlineFontSize 0 gt and { fontkind outline eq { /sy sy 0.0119444 siz mul sub def /ey ey 0.0119444 siz mul sub def gsave 1 1 1 setrgbcolor lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto stroke grestore lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto strokepath 0.0119444 siz mul setlinewidth stroke } if fontkind shadow eq fontkind outlineshadow eq or { /sy sy 0.0358332 siz mul sub def /ey ey 0.0358332 siz mul sub def lw setlinewidth lw 2 div sx add sy lw 2 div sub moveto lw 2 div ex add ey lw 2 div sub lineto stroke gsave 1 1 1 setrgbcolor lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto stroke grestore lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto strokepath 0.0119444 siz mul setlinewidth stroke } if } if } ifelse grestore} bind def /plain 1 def /outline 2 def /shadow 3 def /outlineshadow 4 def /fess { currentdict /outlineFontSize known { /outlineFontSize 2 index def } if findfont exch dup /siz exch def scalefont setfont } bind def /SHDW {gsave siz oldfontname fess siz 0.055 mul x add y siz 0.05 mul sub moveto c show grestore} def /NRML {gsave 1 1 1 setrgbcolor siz oldfontname fess x y moveto c show grestore siz /Outline fess x y moveto c show} def /S { fontkind plain eq {neg moveto show} if fontkind outline eq {neg /y exch def /x exch def /c exch def NRML} if fontkind shadow eq {neg /y exch def /x exch def /c exch def SHDW NRML} if fontkind outlineshadow eq {neg /y exch def /x exch def /c exch def SHDW NRML} if } bind def /F { /fontkind exch def fontkind plain eq {fess} if fontkind outline eq {dup /oldfontname exch def exch dup /siz exch def exch OLF} if fontkind shadow eq {dup /oldfontname exch def exch dup /siz exch def exch OLF} if fontkind outlineshadow eq {dup /oldfontname exch def exch dup /siz exch def exch OLF} if } bind def /makeoutlinedict 15 dict def /makeoutlinefont { makeoutlinedict begin /uniqueid exch def /strokewidth exch def /newfontname exch def /basefontname exch def FontDirectory basefontname known not { /basefontname /Times-Roman def } if /basefontdict basefontname findfont def /numentries basefontdict maxlength 1 add def basefontdict /UniqueID known not {/numentries numentries 1 add def} if /outfontdict numentries dict def basefontdict { exch dup /FID ne {exch outfontdict 3 1 roll put} {pop pop} ifelse }forall outfontdict /FontName newfontname put outfontdict /PaintType 2 put outfontdict /StrokeWidth strokewidth put outfontdict /UniqueID uniqueid put newfontname outfontdict definefont pop end }def /UID { findfont dup /UniqueID known {/UniqueID get 1 add} {pop 1} ifelse } def /OLF { dup /Outline 1000 62 div 4 -1 roll UID /outlineFontSize 5 index def makeoutlinefont /Outline findfont exch scalefont setfont } def /CopyEncoding { findfont /Encoding get dup length array /tarrayz exch def tarrayz 0 3 -1 roll putinterval tarrayz } bind def /Re-encode { dup length array copy /eap 0 def exch { dup type /integertype eq { /eap exch def } { 1 index exch eap exch put /eap eap 1 add def } ifelse } forall } bind def /EncodeFont { findfont dup length dict begin { 1 index /FID ne { def } { pop pop } ifelse } forall /FontName exch def /Encoding exch def FontName currentdict end definefont pop } bind def %%EndProcSet %%BeginProcSet : clip2pathbbox /clip2pathbbox { /magicNum linewidth 2 div 1 2 sqrt div mul def pathbbox /urymn exch magicNum add def /urxmn exch magicNum add def /llymn exch magicNum sub def /llxmn exch magicNum sub def newpath llxmn llymn moveto llxmn urymn lineto urxmn urymn lineto urxmn llymn lineto closepath clip newpath } bind def %%EndProcSet %% Line takes the following arguments: %% linewidth xEnd yEnd xStart yStart %%BeginProcSet : Line /Line { MAV /LC get length 0 ne { gsave newpath MAV /ArrowType get length 0 eq MAV /SD get length 0 eq and {2 setlinecap /UseClip {clip2pathbbox} def } {0 setlinecap /UseClip {} def } ifelse 0 792 translate 1 -1 scale CTM currentmatrix pop /yStart exch def /xStart exch def /yEnd exch def /xEnd exch def /linewidth exch def MAV /ArrowType get length 0 eq xStart xEnd ne yStart yEnd ne and and {xStart yStart moveto xEnd yEnd lineto UseClip xStart yStart moveto xEnd yEnd lineto} {xStart yStart moveto xEnd yEnd lineto} ifelse linewidth setlinewidth SD strokepath CheckPath {LC PF ArrowType} if grestore } {pop pop pop pop pop} ifelse } bind def %% Line takes the following arguments: %% linewidth xEnd yEnd xStart yStart %%BeginProcSet : ZeroLine /ZeroLine { gsave newpath MAV /ArrowType get length 0 ne { /UseClip {} def 0 792 translate 1 -1 scale pop pop pop pop pop CTM currentmatrix pop ArrowType } if grestore } bind def /CompensateForStroke { sin currentlinewidth mul exch cos currentlinewidth mul dup 0 translate 4 -1 roll exch 2.0 mul sub 3 1 roll 2.0 mul sub } bind def /arrowdict 10 dict def arrowdict begin /SwallowTail { newpath 0.0 0.0 moveto 1.0 -.5 lineto .666 0.0 lineto 1.0 .5 lineto closepath } bind def /Triangular { newpath 0.0 0.0 moveto 1.0 -.5 lineto 1.0 .5 lineto closepath } bind def /OpenTri { newpath 1.0 0.5 moveto 0.0 0.0 lineto 1.0 -0.5 lineto } bind def /ClosedTri { newpath 1.0 0.5 moveto 0.0 0.0 lineto 1.0 -0.5 lineto closepath } bind def /SlashBar { newpath 0.5 -.5 moveto -.5 0.5 lineto } bind def /Dot { newpath 0.5 0.0 moveto 0 0 1 0 360 arc closepath } bind def /ExtSlashBar { newpath 1.0 -.5 moveto 0.0 0.5 lineto } bind def end /ScaleArrowHead { 0 0 4 -2 roll 0 0 1 1 8 -4 roll GetBoxesRatio scale } bind def /DrawArrowHead { gsave [] 0 setdash currentpoint translate rotate { 4 copy gsave initmatrix 100 200 translate msave ScaleArrowHead pop arrowdict exch get exec mrestore strokepath 0 0 3 index 3 index pathbbox 8 4 roll GetBoxesRatio 4 2 roll grestore 3 index 1.0 exch sub 6 -1 roll { 2 index mul 0 translate }{ pop } ifelse msave ScaleArrowHead scale arrowdict exch get exec mrestore strokepath } { msave ScaleArrowHead arrowdict exch get exec mrestore } ifelse CheckPath { LC PF } if grestore } bind def %%EndProcSet %%BeginProcSet : SR /SR { pbox left get pbox top get moveto pbox right get pbox top get lineto pbox right get pbox bottom get lineto pbox left get pbox bottom get lineto closepath } bind def %%EndProcSet %%BeginProcSet : RR1 /RR1 { pbox top get pbox bottom get sub abs pbox left get pbox right get sub abs 2 copy lt { Min 2 div dup dup dup pbox left get add pbox left 3 -1 roll put pbox right get exch sub pbox right 3 -1 roll put pbox left get pbox bottom get moveto pbox right get 0 3 -1 roll 90 -90 arcn pbox left get 0 3 -1 roll -90 90 arcn closepath } { Min 2 div dup dup dup pbox bottom get exch sub pbox bottom 3 -1 roll put pbox top get add pbox top 3 -1 roll put pbox left get pbox bottom get moveto pbox left get add pbox top get 2 index 180 0 arc dup pbox left get add pbox bottom get 3 -1 roll 0 180 arc closepath } ifelse } bind def %%EndProcSet %%BeginProcSet : RR2 /RR2 { dup dup dup dup dup dup dup dup pbox top get add pbox top 3 -1 roll put pbox left get add pbox left 3 -1 roll put pbox bottom get exch sub pbox bottom 3 -1 roll put pbox right get exch sub pbox right 3 -1 roll put pbox bottom get add pbox left get exch moveto pbox right get pbox bottom get 3 -1 roll 90 0 arcn pbox right get pbox top get 3 -1 roll 0 270 arcn pbox left get pbox top get 3 -1 roll 270 180 arcn pbox left get pbox bottom get 3 -1 roll 180 90 arcn closepath } bind def %%EndProcSet %%BeginProcSet : E /E { 1.415 setmiterlimit CM currentmatrix pop pbox right get pbox left get sub abs dup pbox bottom get pbox top get sub abs dup 3 -1 roll lt {exch dup 3 -1 roll exch div 1 exch} {dup 3 -1 roll exch div 1} ifelse scale 0 0 3 -1 roll 2 div 0 360 arc closepath CM setmatrix } bind def %%EndProcSet %%BeginProcSet : A1 /A1 {msave pbox right get pbox left get sub abs dup pbox bottom get pbox top get sub abs dup 3 -1 roll lt {exch dup 3 -1 roll exch div 1 exch} {dup 3 -1 roll exch div 1} ifelse scale 0 0 3 -1 roll 2 div 5 -1 roll -90 add 5 -1 roll -90 add arcn mrestore} bind def %%EndProcSet %%BeginProcSet : A2 /A2 {msave 0 0 moveto A1 closepath mrestore} def %%EndProcSet %%BeginProcSet : BitMap /BitMap { /buffer ^1 string def ^2 ^5 2 div add 792 ^3 sub ^6 2 div add translate ^4 57.3 mul rotate 0 ^5 2 div sub 0 ^6 2 div sub translate ^5 ^6 scale ^5 ^6 ^7 [^5 0 0 -^6 0 ^6] {currentfile buffer readhexstring pop} image }bind def %%EndProcSet %%BeginProcSet : note /note { gsave pbox astore pop 0 792 translate 1 -1 scale CTM currentmatrix pop exch translate pbox right get pbox left get sub 2 div pbox bottom get pbox top get sub 2 div translate 57.3 mul rotate setlinewidth noteBody aload pop moveto noteBody length 2 div 1 sub cvi{lineto}repeat dogEar aload pop moveto dogEar length 2 div 1 sub cvi{lineto}repeat 0.992 0.975 0.507 setrgbcolor gsave fill grestore gsave newpath stickem aload pop moveto stickem length 2 div 1 sub cvi{lineto}repeat 0.760 0.760 0.760 setrgbcolor fill grestore 0 0 0 setrgbcolor stroke noteShadow aload pop moveto noteShadow length 2 div 1 sub cvi{lineto}repeat dogEarShadow aload pop moveto dogEarShadow length 2 div 1 sub cvi{lineto}repeat 0 0 0 setrgbcolor gsave stroke grestore fill grestore }bind def %%EndProcSet %%BeginProcSet : RGB4toGray4 /redTbl4 [0 0 1 1 1 1 2 2 3 3 3 4 4 4 5 5] def /greenTbl4 [0 1 1 2 2 3 3 4 4 5 6 6 7 7 7 8] def /blueTbl4 [0 0 0 0 1 1 1 1 1 1 1 1 1 2 2 2] def /RGB4toGray4 { currentfile RGBBuf readhexstring pop pop /i 0 def /j 0 def grayBuf length { RGBBuf i get dup -4 bitshift redTbl4 exch get exch 15 and greenTbl4 exch get add RGBBuf i 1 add get dup -4 bitshift blueTbl4 exch get 3 -1 roll add 4 bitshift exch 15 and redTbl4 exch get RGBBuf i 2 add get dup -4 bitshift greenTbl4 exch get 3 -1 roll add exch 15 and blueTbl4 exch get add or grayBuf j 3 -1 roll put /i i 3 add def /j j 1 add def } repeat grayBuf } bind def %%EndProcSet %%BeginProcSet : RGB8toGray8 /RGB8toGray8 { currentfile RGBBuf readhexstring pop pop /i 0 def /j 0 def grayBuf length { RGBBuf i get 0.33 mul RGBBuf i 1 add get 0.55 mul add RGBBuf i 2 add get 0.12 mul add round cvi grayBuf j 3 -1 roll put /i i 3 add def /j j 1 add def } repeat grayBuf } bind def %%EndProcSet %%BeginProcSet : RGB24toGray8 /RGB24toGray8 {RGB8toGray8} bind def %%EndProcSet %%BeginProcSet : RGB2toGray2 /redTbl2 [0 0 1 1] def /greenTbl2 [0 1 1 2] def /blueTbl2 [0 0 0 0] def /RGB2toGray2 { currentfile RGBBuf readhexstring pop pop /i 0 def /j 0 def grayBuf length { RGBBuf i get dup dup dup -6 bitshift redTbl2 exch get exch -4 bitshift 3 and greenTbl2 exch get add exch -2 bitshift 3 and blueTbl2 exch get add 6 bitshift exch 3 and redTbl2 exch get RGBBuf i 1 add get dup dup dup -6 bitshift greenTbl2 exch get exch -4 bitshift 3 and blueTbl2 exch get add 4 -1 roll add 4 bitshift 4 -1 roll or 3 1 roll -2 bitshift 3 and redTbl2 exch get exch 3 and greenTbl2 exch get add RGBBuf i 2 add get dup dup dup -6 bitshift blueTbl2 exch get 5 -1 roll add 2 bitshift 5 -1 roll or 4 1 roll -4 bitshift 3 and redTbl2 exch get exch -2 bitshift 3 and greenTbl2 exch get add exch 3 and greenTbl2 exch get add or grayBuf j 3 -1 roll put /i i 3 add def /j j 1 add def } repeat grayBuf } bind def %%EndProcSet %%EndProcSet %%BeginProcSet : RGB1toGray1 /RGB1toGray1 { currentfile RGBBuf readhexstring pop pop /i 0 def /j 0 def grayBuf length { RGBBuf i get dup dup 1 bitshift 128 and exch 3 bitshift 64 and or exch 5 bitshift 32 and or RGBBuf i 1 add get dup -1 bitshift 16 and exch 1 bitshift 8 and or or RGBBuf i 2 add get dup dup -5 bitshift 4 and exch -3 bitshift 2 and or exch -1 bitshift 1 and or or /i i 3 add def /j j 1 add def } repeat grayBuf } bind def %%EndProcSet %%BeginProcSet : RGB16toGray8 /RGB16toGray8 {RGB8toGray8} bind def %%EndProcSet %%BeginProcSet : BW /ScalePoint { 0 0 4 -2 roll 0 0 1 1 8 4 roll GetBoxesRatio scale } bind def /PointDict 4 dict def PointDict begin /XPoint { -.5 .5 moveto .5 -.5 lineto .5 .5 moveto -.5 -.5 lineto } bind def /DiamondPoint { 0.0 .5 moveto .5 0.0 lineto 0.0 -0.5 lineto -.5 0.0 lineto closepath } bind def /PlusPoint { 0.0 .5 moveto 0.0 -.5 lineto -.5 0.0 moveto .5 0.0 lineto } bind def /SquarePoint { -.5 .5 moveto .5 .5 lineto .5 -.5 lineto -.5 -.5 lineto closepath } bind def end /DrawPoint { gsave [] 0 setdash 0 setlinecap translate msave ScalePoint PointDict exch get exec mrestore 1.0 setlinewidth stroke grestore } bind def %%EndProcSet %%BeginProcSet : Wall object Procs %%EndProcSet %%BeginProcSet : Subscriber /Subscriber { msave R PC PF LC SS newpath mrestore } bind def %%EndProcSet /StripFromFront { dup length 2 index sub 3 1 roll exch 3 -1 roll getinterval } bind def /MakePathArray { /k 0 def {/k k 1 add def pop pop}{/k k 1 add def pop pop}{/k k 1 add def pop pop pop pop pop pop}{/k k 1 add def }pathforall k array /k 0 def {{moveto} 3 array astore 1 index k 3 -1 roll put /k k 1 add def} {{lineto} 3 array astore 1 index k 3 -1 roll put /k k 1 add def} {{curveto} 7 array astore 1 index k 3 -1 roll put /k k 1 add def} {{closepath} 1 array astore 1 index k 3 -1 roll put /k k 1 add def} pathforall }bind def /MakeFlatPathArray { /k 0 def {/k k 1 add def pop pop}{/k k 1 add def pop pop}{pop pop pop pop pop pop}{}pathforall k array /k 0 def {{moveto} 3 array astore 1 index k 3 -1 roll put /k k 1 add def} {{lineto} 3 array astore 1 index k 3 -1 roll put /k k 1 add def} { pop pop pop pop pop pop} {} pathforall }bind def /FractionalLine { 2 index sub .00001 mul exch 3 index sub .00001 mul 4 -1 roll add 3 1 roll add } bind def /calcLineLength { exch 4 -1 roll sub dup mul 3 1 roll exch sub dup mul add sqrt } bind def /InitTotalLineLength { /oldY exch def /oldX exch def theDash aload pop currentLineLength add setdash } bind def /AccumeLineLength { 3 copy pop 2 copy oldX oldY 4 2 roll calcLineLength /segmentLength exch def /currentLineLength currentLineLength segmentLength add def /oldY exch def /oldX exch def } bind def /DecumeLastLineLength { /currentLineLength currentLineLength segmentLength sub def } bind def /DrawFlattendSegment { /pointCount 2 def dup 0 lt { pop 0 } if fpc 3 1 roll 2 index 1 index gt { 2 copy get dup length dup 3 eq { pop dup 0 get exch 1 get 2 copy InitTotalLineLength m } { } ifelse } { pop 1 index } ifelse dup 1 add 3 index exch sub dup 10 gt { pop 10} if { 1 add 2 copy get aload pop AccumeLineLength exec } repeat 3 1 roll pop pop DecumeLastLineLength } bind def /IncFPC { fpc add /fpc exch def } bind def /DrawFlatPathArray { fpc 0 { dup 2 index 1 sub lt { flatPathArray exch newpath 1 sub DrawFlattendSegment gsave pathSegProc grestore newpath } { pop pop exit } ifelse } loop } bind def /RecordFirstSubSegment { closepathArray 0 pathArray 0 get put closepathArray 1 pathArray 0 get aload pop pop pathArray 1 get dup length 3 eq { aload pop pop } { newpath 0 0 moveto aload pop exec /segmentArray flattenpath MakeFlatPathArray def segmentArray 1 get aload pop pop } ifelse FractionalLine {lineto} 3 array astore put } bind def /AppendClosePath { closepathArray 0 get 2 {lineto} put flatPathArray fpc closepathArray 0 get put 1 IncFPC flatPathArray fpc closepathArray 1 get put 1 IncFPC } bind def /RecordCurrentDash { /theDash currentdash 2 array astore def /currentLineLength 0 def } bind def /PatternStroke { 0 setlinecap RecordCurrentDash /saveFlat currentflat def .5 setflat /pathArray MakePathArray def /closepathArray 2 array def /pathLength pathArray length def /flatPathArray 513 array def /currentLineLength 0 def /fpc 0 def pathArray pathLength 1 sub get length 1 eq { /usingClosepath true def RecordFirstSubSegment /pathLength pathLength 1 sub def } { /usingClosepath false def } ifelse 0 1 pathLength 1 sub { pathArray exch get dup length 3 eq { fpc 1 add 512 ge { DrawFlatPathArray fpc 2 ge { flatPathArray flatPathArray fpc 2 sub get 0 put flatPathArray flatPathArray fpc 1 sub get 1 put /fpc 2 def }{ /fpc 0 def } ifelse } if flatPathArray exch fpc exch put 1 IncFPC } { dup length 7 eq { newpath /nToStrip 0 def fpc 1 gt { flatPathArray fpc 2 sub get aload pop pop m flatPathArray fpc 1 sub get aload pop exec /nToStrip 2 def } { fpc 1 eq { flatPathArray fpc 1 sub get aload pop exec /nToStrip 2 def } if } ifelse aload pop exec /segmentArray flattenpath MakeFlatPathArray def /segmentArray nToStrip segmentArray StripFromFront def segmentArray length fpc add 512 lt { flatPathArray fpc segmentArray putinterval segmentArray length IncFPC } { DrawFlatPathArray fpc 1 gt { flatPathArray flatPathArray fpc 2 sub get 0 exch put flatPathArray flatPathArray fpc 1 sub get 1 exch put /fpc 2 def }{ /fpc 0 def } ifelse segmentArray length 512 lt { flatPathArray fpc segmentArray putinterval segmentArray length IncFPC } { segmentArray length /exitLoop false def 0 { 2 copy sub dup 500 gt { pop 500 } { /exitLoop true def } ifelse segmentArray 2 index 2 index getinterval flatPathArray fpc 3 -1 roll putinterval dup IncFPC add exitLoop { exit } { DrawFlatPathArray fpc 1 gt { flatPathArray flatPathArray fpc 2 sub get 0 exch put flatPathArray flatPathArray fpc 1 sub get 1 exch put /fpc 2 def }{ /fpc 0 def } ifelse } ifelse } loop } ifelse } ifelse } if } ifelse } for fpc 0 gt { usingClosepath { AppendClosePath } if DrawFlatPathArray } if saveFlat setflat } bind def %%BeginProcSet : rampdelta /rampdelta { /len 0 3 -1 roll add def /i2 0 3 -1 roll add def /i1 0 3 -1 roll add def /nRampSteps len cellPenW div cvi 1 add dup 512 gt {pop 512} if def /rampPenW len nRampSteps div def rampColors i1 get aload pop c1 astore pop rampColors i2 get aload pop c2 astore pop c2 0 get c1 0 get sub nRampSteps div d 0 3 -1 roll put c2 1 get c1 1 get sub nRampSteps div d 1 3 -1 roll put c2 2 get c1 2 get sub nRampSteps div d 2 3 -1 roll put d aload pop } bind def %%EndProcSet %%BeginProcSet : adddelta /adddelta { d astore pop mycurrentrgbcolor c1 copy pop c1 0 get d 0 get add c2 0 3 -1 roll put c1 1 get d 1 get add c2 1 3 -1 roll put c1 2 get d 2 get add c2 2 3 -1 roll put c2 aload pop setrgbcolor c2 mycurrentrgbcolor copy pop } bind def %%EndProcSet %%BeginProcSet : rampline /rampline { segbox ulx get rampPenW add segbox ulx 3 -1 roll put segbox llx get rampPenW add segbox llx 3 -1 roll put segbox ulx get segbox uly get moveto segbox llx get segbox lly get lineto delta aload pop adddelta stroke }bind def %%EndProcSet %%BeginProcSet : slantrampseg /slantrampseg { gsave newpath segbox ulx get segbox urx get sub abs rampdelta delta astore pop segbox ulx get rampPenW .5 mul sub segbox ulx 3 -1 roll put segbox llx get rampPenW .5 mul sub segbox llx 3 -1 roll put rampColors exch get aload mycurrentrgbcolor copy pop setrgbcolor rampPenW setlinewidth nRampSteps {rampline} repeat grestore }bind def %%EndProcSet %%BeginProcSet : flipramp /flipramp { rampColors 0 get rampColors 3 get rampColors 0 3 -1 roll put rampColors 3 3 -1 roll put rampColors 1 get rampColors 2 get rampColors 1 3 -1 roll put rampColors 2 3 -1 roll put } bind def %%EndProcSet %%BeginProcSet : leftrbox /leftrbox { rbox segbox copy pop rbox urx get rbox ulx get sub flipRatio mul dup segbox ulx get add segbox urx 3 -1 roll put segbox llx get add segbox lrx 3 -1 roll put } bind def %%EndProcSet %%BeginProcSet : rightrbox /rightrbox { rbox segbox copy pop rbox urx get rbox ulx get sub flipRatio mul dup segbox ulx get add segbox ulx 3 -1 roll put segbox llx get add segbox llx 3 -1 roll put } bind def %%EndProcSet %%BeginProcSet : drawslantramp /drawslantramp { segbox urx get segbox ulx get sub 3 div dup dup dup dup dup dup dup dup dup segbox ulx get add segbox urx 3 -1 roll put segbox llx get add segbox lrx 3 -1 roll put segbox aload pop 0 0 1 slantrampseg segbox astore pop segbox ulx get add segbox ulx 3 -1 roll put segbox llx get add segbox llx 3 -1 roll put segbox urx get add segbox urx 3 -1 roll put segbox lrx get add segbox lrx 3 -1 roll put segbox aload pop 1 1 2 slantrampseg segbox astore pop segbox ulx get add segbox ulx 3 -1 roll put segbox llx get add segbox llx 3 -1 roll put segbox urx get add segbox urx 3 -1 roll put segbox lrx get add segbox lrx 3 -1 roll put 2 2 3 slantrampseg }bind def %%EndProcSet %%BeginProcSet : tan /tan { dup sin exch cos div }bind def %%EndProcSet %%BeginProcSet : rampbox /rampbox { pbox top get dup rbox uly 3 -1 roll put rbox ury 3 -1 roll put pbox left get dup rbox ulx 3 -1 roll put rbox llx 3 -1 roll put pbox bottom get dup rbox lly 3 -1 roll put rbox lry 3 -1 roll put pbox right get dup rbox urx 3 -1 roll put rbox lrx 3 -1 roll put }bind def %%EndProcSet %%BeginProcSet : rampbox /LoadSegBox { 4 copy segbox llx 6 -1 roll put segbox lly 5 -1 roll put segbox lrx 4 -1 roll put segbox lry 6 -1 roll put segbox urx 5 -1 roll put segbox ury 3 -1 roll put segbox ulx 4 -1 roll put segbox uly 3 -1 roll put } bind def /TransToCenter { gsave flattenpath pathbbox grestore 2 index sub 2.0 div exch 3 index sub 2.0 div 4 -1 roll add 3 1 roll add translate } bind def /RotRampGrad { gsave TransToCenter -1.0 mul 180.0 add rotate flattenpath pathbbox clip newpath LoadSegBox flipRatio 1 lt dup{flipramp}if flipRatio 0 gt and { /flipRatio 1.0 flipRatio sub def segbox rbox copy pop leftrbox drawslantramp flipramp rightrbox drawslantramp } {drawslantramp} ifelse grestore } bind def /bbg { pbox exch get } bind def %%BeginProcSet : DR /DR { % Directional ramp /workingMatrix mstore def objectCord setmatrix flipramp gsave flattenpath pathbbox grestore pbox bottom 3 -1 roll put pbox right 3 -1 roll put pbox top 3 -1 roll put pbox left 3 -1 roll put rampAngle RotRampGrad RF workingMatrix setmatrix }bind def %%EndProcSet %%BeginProcSet : ramparc /ramparc { gsave circum rampdelta delta astore pop /rampPenW 60.0 nRampSteps div def /ang1 exch rampAngle sub def /ang2 rampPenW ang1 add def rampColors exch get aload mycurrentrgbcolor copy pop setrgbcolor 1 setlinewidth nRampSteps {ramparcseg}repeat grestore }bind def %%EndProcSet %%BeginProcSet : ramparcseg /ramparcseg { newpath rampcenter aload pop moveto rampcenter aload pop rampradius ang2 ang1 arcn fill /ang1 ang2 def /ang2 ang2 rampPenW add def delta aload pop adddelta }bind def %%EndProcSet /GetRadius { rbox urx get rbox llx get sub 2 div rampcenter 0 get abs add dup mul rbox lly get rbox ury get sub 2 div rampcenter 1 get abs add dup mul add sqrt } bind def %%BeginProcSet : circularRamp /circularRamp { rampbox /rampradius GetRadius def CalcCrcm flipramp 0 0 0 1 ramparc 1 60 1 2 ramparc 2 120 2 3 ramparc flipramp 0 180 0 1 ramparc 1 240 1 2 ramparc 2 300 2 3 ramparc }bind def %%EndProcSet /GetCircumf { 2.0 mul 3.1415926 mul } bind def /CalcCrcm { rampradius GetCircumf /circum exch 6.0 div def } bind def %%BeginProcSet : CR /CR { gsave clip MTC currentmatrix pop CTM setmatrix flattenpath pathbbox pbox bottom 3 -1 roll put pbox right 3 -1 roll put pbox top 3 -1 roll put pbox left 3 -1 roll put pbox left get pbox right get sub abs 2 div pbox left get add rampcenter 0 get add rampcenter 0 3 -1 roll put pbox top get pbox bottom get sub abs 2 div pbox top get add rampcenter 1 get add rampcenter 1 3 -1 roll put circularRamp MTC setmatrix grestore RF }bind def %%EndProcSet %%BeginProcSet : shaperamp /SBR { gsave clip /workingMatrix mstore def objectCord setmatrix flattenpath /BaseBox pathbbox 4 array astore def /len BaseBox 2 get BaseBox 0 get sub dup mul BaseBox 3 get BaseBox 1 get sub dup mul add sqrt 12.0 div def /EndBox BaseBox aload pop 3 -1 roll sub 3 1 roll exch sub /dbx exch def /dby exch def BaseBox aload pop pop pop /blly exch def /bllx exch def sbox 0 get 100.0 div dby mul blly add sbox 1 get 100.0 div dbx mul bllx add sbox 2 get 100.0 div dby mul blly add sbox 3 get 100.0 div dbx mul bllx add exch 4 -2 roll exch 4 -2 roll 4 array astore def BaseBox EndBox ShapeBurst workingMatrix setmatrix grestore } bind def %%EndProcSet /GetBoxCenter { 2 index sub 2.0 div 3 -1 roll add 3 1 roll 1 index sub 2.0 div add exch } bind def /GetInterBox { /boxInter exch def 4 1 7 { -1 roll 7 index } for sub boxInter mul 8 -1 roll add 7 1 roll sub boxInter mul 7 -1 roll add 6 1 roll sub boxInter mul 6 -1 roll add 5 1 roll sub boxInter mul 5 -1 roll add 4 1 roll } bind def /GetBoxCenterDeltas { GetBoxCenter 6 2 roll GetBoxCenter 3 -1 roll exch sub 3 1 roll sub exch } bind def /GetBoxCornerDeltas { pop pop 4 2 roll pop pop 3 -1 roll sub 3 1 roll exch sub exch } bind def %%BeginProcSet : getpath /getpath { /k 0 def {/k k 1 add def pop pop}{/k k 1 add def pop pop}{/k k 1 add def pop pop pop pop pop pop}{}pathforall /pfa k array def /k 0 def {{moveto} 3 array astore pfa k 3 -1 roll put /k k 1 add def} {{lineto} 3 array astore pfa k 3 -1 roll put /k k 1 add def} {{curveto} 7 array astore pfa k 3 -1 roll put /k k 1 add def} {}pathforall }bind def %%EndProcSet /ShapeBurst { getpath newpath /SBERect exch 4 array copy def /SBBRect exch 4 array copy def /interRect1 SBBRect aload pop SBERect aload pop .3333333 GetInterBox 4 array astore def /interRect2 SBBRect aload pop SBERect aload pop .6666666 GetInterBox 4 array astore def 0 0 1 SBBRect interRect1 ShapeBurstSeg msave interRect1 0 get interRect1 1 get translate SBBRect aload pop interRect1 aload pop GetBoxesRatio scale SBBRect 0 get -1.0 mul SBBRect 1 get -1.0 mul translate 1 1 2 interRect1 interRect2 ShapeBurstSeg mrestore msave interRect2 0 get interRect2 1 get translate SBBRect aload pop interRect2 aload pop GetBoxesRatio scale SBBRect 0 get -1.0 mul SBBRect 1 get -1.0 mul translate 2 2 3 interRect2 SBERect ShapeBurstSeg mrestore } bind def /ShapeBurstSeg { /sbr1 exch 4 array copy def /sbr0 exch 4 array copy def /blx sbr0 0 get def /bly sbr0 1 get def len rampdelta delta astore pop sbr0 aload pop sbr1 aload pop GetBoxesRatio /ratioY exch def /ratioX exch def sbr0 aload pop sbr1 aload pop GetBoxCornerDeltas /dlly exch nRampSteps div def /dllx exch nRampSteps div def /scaleStepX 1.0 ratioX sub nRampSteps div def /scaleStepY 1.0 ratioY sub nRampSteps div def /currentScaleX 1.0 scaleStepX sub def /currentScaleY 1.0 scaleStepY sub def /translationX blx dllx add def /translationY bly dlly add def /currentScaleX 1.0 def /currentScaleY 1.0 def /translationX blx def /translationY bly def rampColors exch get aload mycurrentrgbcolor copy pop setrgbcolor nRampSteps { msave translationX translationY translate currentScaleX currentScaleY scale blx -1.0 mul bly -1.0 mul translate pfa {aload pop exec} forall fill delta aload pop adddelta /translationX translationX dllx add def /translationY translationY dlly add def /currentScaleX currentScaleX scaleStepX sub def /currentScaleY currentScaleY scaleStepY sub def mrestore } repeat msave translationX translationY translate currentScaleX currentScaleY scale blx -1.0 mul bly -1.0 mul translate pfa {aload pop exec} forall fill mrestore } bind def %%EndProlog initmsaverestore /tctm matrix currentmatrix def tctm RoundMatrix setmatrix /patternMatrix mstore def 10 setmiterlimit 2 setlinecap newpath %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /backfill {/setcmykcolor where {begin gsave 0 0 0 0 setcmykcolor fill grestore end} {gsave 1 1 1 setrgbcolor fill grestore} ifelse} def /fillpat def /iSizeX 24 def /iSizeY 24 def /PF { /pat fillpat def DefaultPatternFont backfill 65 PatternFill } def 3.000 0 108.000 108.000 0.000 0.000 360.000 360.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {1.000 1.000 1.000 setrgbcolor } def /PF {gsave fill grestore} def 3.000 0 207.000 207.000 0.000 0.000 162.000 162.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 405.000 153.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 342.000 333.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 225.000 333.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 153.000 405.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 153.000 153.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 225.000 216.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 333.000 216.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 405.000 405.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 162.000 414.000 162.000 162.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 342.000 414.000 162.000 414.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 342.000 351.000 342.000 414.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 225.000 198.000 225.000 234.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 342.000 198.000 225.000 198.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 342.000 234.000 342.000 198.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 189.000 342.000 225.000 342.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 189.000 171.000 189.000 342.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 360.000 171.000 189.000 171.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 414.000 261.000 360.000 171.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 414.000 414.000 414.000 261.000 Line %@EndLine %%Trailer end ---------------9903161209299 Content-Type: application/postscript; name="Fig4.epsf" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="Fig4.epsf" %!PS-Adobe-2.0 EPSF-1.2 %%Title: Fig2(a).epsf %%Creator: CLARIS EPSF Export Filter V1.0 %%CreationDate:12/30/98 5:34:19 p.m. %%BoundingBox: 98 314 478 694 %%QDBoundingBox: 98.500 98.500 477.500 477.500 %%DocumentProcessColors: Cyan Magenta Yellow Black %%ObjectsIncluded: tText=T tLine=T tRect=T tRRect=T tOval=T tArc=T tFree=T tPoly=T tBMap=T tNote=T tBez=T tPMap=T %%AttributesIncluded: kBaWPattType=T kPixPattType=T kGradientType=T %%EndComments /MAV 300 dict def MAV begin /useClip true def /top 0 def /left 1 def /bottom 2 def /right 3 def /CM 6 array def /CTM 6 array def /CTMR 6 array def /MTC 6 array def /blimit 1500 def /bcnt 0 def /rbox 8 array def /segbox 8 array def /bbox1 4 array def /c1 3 array def /c2 3 array def /d 3 array def /delta 3 array def /mycurrentrgbcolor 3 array def /ulx 0 def /uly 1 def /llx 2 def /lly 3 def /urx 4 def /ury 5 def /lrx 6 def /lry 7 def /sp [0 0] def /ep [0 0] def /bbox 4 array def /pbox 4 array def /scrnProc currentscreen 3 1 roll pop pop def /currentcolorscreen where { begin currentcolorscreen end 3 1 roll pop pop 4 2 roll pop pop 5 -2 roll pop pop 6 -2 roll pop pop /kProc exch def /bProc exch def /gProc exch def /rProc exch def } if /Max {2 copy gt {pop}{exch pop} ifelse} bind def /Min {2 copy lt {pop}{exch pop} ifelse} bind def /cellPenW 72.0 /currentcolorscreen where {begin currentcolorscreen end pop pop 10 1 roll pop pop 8 1 roll pop pop 6 1 roll pop pop Max Max Max } {currentscreen pop pop} ifelse div 2.0 div def %%BeginProcSet : rect /rect { /saveobj save def R PC PF LC SS saveobj restore } bind def %%EndProcSet %%BeginProcSet : R /R { newpath pbox astore pop 0 792 translate 1 -1 scale CTMR currentmatrix pop exch translate /objectCord mstore def pbox right get 2 div dup pbox left get exch sub pbox left 3 -1 roll put dup pbox right 3 -1 roll put pbox bottom get 2 div dup pbox top get exch sub pbox top 3 -1 roll put dup pbox bottom 3 -1 roll put translate CTM currentmatrix pop 57.3 mul rotate RT } bind def %%EndProcSet %%BeginProcSet : SaveScreenBW /SaveScreenBW { currentscreen /scrnProc exch def /scrnAngle exch def /scrnFreq exch def } bind def %%EndProcSet %%BeginProcSet : RestoreScreenBW /RestoreScreenBW { scrnFreq scrnAngle MAV /scrnProc get setscreen } bind def %%EndProcSet %%BeginProcSet : SetFreqAngleBW /SetFreqAngleBW { currentscreen 3 1 roll pop pop setscreen } bind def %%EndProcSet %%BeginProcSet : SaveScreenColor /SaveScreenColor { currentcolorscreen /grayProc exch def /grayAngle exch def /grayFreq exch def /bProc exch def /bAngle exch def /bFreq exch def /gProc exch def /gAngle exch def /gFreq exch def /rProc exch def /rAngle exch def /rFreq exch def } bind def %%EndProcSet %%BeginProcSet : RestoreColorScreen /RestoreColorScreen { rFreq rAngle MAV /rProc get gFreq gAngle MAV /gProc get bFreq bAngle MAV /bProc get grayFreq grayAngle MAV /grayProc get setcolorscreen } bind def %%EndProcSet %%BeginProcSet : SetFreqAngleColor /SetFreqAngleColor { currentcolorscreen 3 1 roll pop pop 4 2 roll pop pop 5 -2 roll pop pop 6 -2 roll pop pop 4 1 roll 6 1 roll 8 1 roll 10 1 roll setcolorscreen } bind def %%EndProcSet /initmsaverestore { userdict begin /mdict 10 dict def mdict begin /mindex -1 def /mstacksize 25 def /mstack mstacksize array def /incmindex { /mindex mindex 1 add def } bind def /decmindex { /mindex mindex 1 sub def } bind def /checkmindex { mindex 0 lt { (%ERROR: msave/mrestore stack underflow: Offending command 'mrestore' ) print flush stop } { mindex mstacksize ge { (%ERROR: msave/mrestore stack overflow: Offending command 'msave' ) print flush stop } if } ifelse } bind def /mpush { incmindex checkmindex mstack mindex 3 -1 roll put } bind def /mpop { checkmindex mstack mindex get decmindex } bind def end end } bind def /msave { mdict begin matrix currentmatrix mpush end } bind def /mrestore { mdict begin mpop setmatrix end } bind def /msavelevel { mdict begin mindex 1 add end } bind def /mstore { matrix currentmatrix } bind def /AutoSizeY { 0 0 pl dup 3 1 roll 4 -1 roll add pl exch pop exch sub } bind def /pl { transform 0.25 sub round 0.25 add exch 0.25 sub round 0.25 add exch itransform } bind def /pll { transform round exch round exch itransform } bind def /pr { dtransform round exch round exch idtransform } bind def /m { pl moveto } bind def /l { pl lineto } bind def /c { pl curveto } bind def /rm { pr rmoveto } bind def /rl { pr rlineto } bind def /ar { 5 -2 roll pl 5 2 roll arc } bind def /an { 5 -2 roll pl 5 2 roll arcn } bind def /MakePatternFont { /FontDict 20 dict def FontDict begin /FontName exch def /Encoding exch def /FontMatrix [1 0 0 1 0 0 ] def /FontType 3 def /FontBBox [ 0 0 1 1 ] def /PatternDict exch def /RenderPattern { patternDict exch get exec } bind def /BuildChar { exch begin 1 0 0 0 1 1 setcachedevice Encoding exch get RenderPattern end } bind def FontName FontDict definefont pop end } bind def /SnapToPattenGrid { exch dup 0 lt { 1 index sub } if 1 index div truncate mul } bind def /FillPatternString { dup length 1 sub 0 1 3 -1 roll { 2 index 2 index 3 -2 roll put } for pop pop } bind def /AutoSizeY { 0.0 exch dtransform round idtransform exch pop } bind def /AutoSizeX { 0.0 dtransform exch round exch idtransform pop } bind def /AutoCellSize { AutoSizeY exch AutoSizeX exch } bind def /CheckPath { false { pop pop pop true exit} { pop pop pop true exit} { pop pop pop pop pop pop pop true exit} { pop true exit} pathforall } bind def /PatternFill { % patternCharacter /patternString 1 string def /cm mstore def patternMatrix setmatrix 1 1 AutoCellSize dup 0 eq { pop 1} if exch dup 0 eq { pop 1} if exch /patternSize exch 24.0 mul def /PatternSizeX exch 24.0 mul patternString length mul def /flaterror 0 def patternString FillPatternString gsave flaterror 1 add setflat flattenpath pathbbox grestore psy add flaterror add psy SnapToPattenGrid exch psx add flaterror add psx SnapToPattenGrid 3 -1 roll flaterror sub psy SnapToPattenGrid 4 -1 roll flaterror sub psx SnapToPattenGrid 4 2 roll pll 4 2 roll pll /llxsnap exch def /llysnap exch def /urxsnap exch def /urysnap exch def gsave useClip true eq {clip}{eoclip} ifelse newpath /PatternFont findfont [psx 0.0 0.0 psy 0.0 0.0] makefont setfont llysnap patternSize urysnap { llxsnap exch moveto llxsnap PatternSizeX urxsnap { pop patternString show %currentpoint am } for } bind for grestore cm setmatrix } bind def % End 'PatternFill' /DefaultPatternFont { /cm mstore def patternMatrix setmatrix 1 1 AutoCellSize dup 0 eq { pop 1} if exch dup 0 eq { pop 1} if exch /psy exch iSizeY mul def /psx exch iSizeX mul def /patternDict 64 dict def patternDict begin /NotDef {} def /LiteDiagLines { iSizeX iSizeY false [iSizeX 0.0 0.0 iSizeY -1.0 mul 0.0 iSizeY] {pat} imagemask } bind def end /CustEncoding 256 array def 0 255 1 { CustEncoding exch /NotDef put } bind for CustEncoding 65 /LiteDiagLines put patternDict CustEncoding /PatternFont MakePatternFont /pathSegProc { strokepath CheckPath { 65 PatternFill newpath } if } bind def cm setmatrix } bind def /XRound { dup 3 -1 roll exch mul round exch div } bind def /RoundMatrix { /i 0 def dup { 100000.0 XRound 1 index exch i exch put /i i 1 add def } forall } bind def /GetBoxesRatio { 3 -1 roll sub 7 1 roll exch sub 6 1 roll 3 -1 roll sub 5 1 roll exch sub 4 1 roll 3 -1 roll div 3 1 roll exch div exch } bind def %%BeginProcSet : Text Attributes Procs /T {792 exch sub} bind def /sx 0 def /sy 0 def /ex 0 def /ey 0 def /lw 0 def /siz 0 def /U {gsave 0 setlinecap /lw siz 0.078125 mul def /ey exch neg def /ex exch def /sy exch neg def /sx exch def fontkind plain eq { lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto stroke } { currentdict /outlineFontSize known outlineFontSize 0 gt and { fontkind outline eq { /sy sy 0.0119444 siz mul sub def /ey ey 0.0119444 siz mul sub def gsave 1 1 1 setrgbcolor lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto stroke grestore lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto strokepath 0.0119444 siz mul setlinewidth stroke } if fontkind shadow eq fontkind outlineshadow eq or { /sy sy 0.0358332 siz mul sub def /ey ey 0.0358332 siz mul sub def lw setlinewidth lw 2 div sx add sy lw 2 div sub moveto lw 2 div ex add ey lw 2 div sub lineto stroke gsave 1 1 1 setrgbcolor lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto stroke grestore lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto strokepath 0.0119444 siz mul setlinewidth stroke } if } if } ifelse grestore} bind def /plain 1 def /outline 2 def /shadow 3 def /outlineshadow 4 def /fess { currentdict /outlineFontSize known { /outlineFontSize 2 index def } if findfont exch dup /siz exch def scalefont setfont } bind def /SHDW {gsave siz oldfontname fess siz 0.055 mul x add y siz 0.05 mul sub moveto c show grestore} def /NRML {gsave 1 1 1 setrgbcolor siz oldfontname fess x y moveto c show grestore siz /Outline fess x y moveto c show} def /S { fontkind plain eq {neg moveto show} if fontkind outline eq {neg /y exch def /x exch def /c exch def NRML} if fontkind shadow eq {neg /y exch def /x exch def /c exch def SHDW NRML} if fontkind outlineshadow eq {neg /y exch def /x exch def /c exch def SHDW NRML} if } bind def /F { /fontkind exch def fontkind plain eq {fess} if fontkind outline eq {dup /oldfontname exch def exch dup /siz exch def exch OLF} if fontkind shadow eq {dup /oldfontname exch def exch dup /siz exch def exch OLF} if fontkind outlineshadow eq {dup /oldfontname exch def exch dup /siz exch def exch OLF} if } bind def /makeoutlinedict 15 dict def /makeoutlinefont { makeoutlinedict begin /uniqueid exch def /strokewidth exch def /newfontname exch def /basefontname exch def FontDirectory basefontname known not { /basefontname /Times-Roman def } if /basefontdict basefontname findfont def /numentries basefontdict maxlength 1 add def basefontdict /UniqueID known not {/numentries numentries 1 add def} if /outfontdict numentries dict def basefontdict { exch dup /FID ne {exch outfontdict 3 1 roll put} {pop pop} ifelse }forall outfontdict /FontName newfontname put outfontdict /PaintType 2 put outfontdict /StrokeWidth strokewidth put outfontdict /UniqueID uniqueid put newfontname outfontdict definefont pop end }def /UID { findfont dup /UniqueID known {/UniqueID get 1 add} {pop 1} ifelse } def /OLF { dup /Outline 1000 62 div 4 -1 roll UID /outlineFontSize 5 index def makeoutlinefont /Outline findfont exch scalefont setfont } def /CopyEncoding { findfont /Encoding get dup length array /tarrayz exch def tarrayz 0 3 -1 roll putinterval tarrayz } bind def /Re-encode { dup length array copy /eap 0 def exch { dup type /integertype eq { /eap exch def } { 1 index exch eap exch put /eap eap 1 add def } ifelse } forall } bind def /EncodeFont { findfont dup length dict begin { 1 index /FID ne { def } { pop pop } ifelse } forall /FontName exch def /Encoding exch def FontName currentdict end definefont pop } bind def %%EndProcSet %%BeginProcSet : clip2pathbbox /clip2pathbbox { /magicNum linewidth 2 div 1 2 sqrt div mul def pathbbox /urymn exch magicNum add def /urxmn exch magicNum add def /llymn exch magicNum sub def /llxmn exch magicNum sub def newpath llxmn llymn moveto llxmn urymn lineto urxmn urymn lineto urxmn llymn lineto closepath clip newpath } bind def %%EndProcSet %% Line takes the following arguments: %% linewidth xEnd yEnd xStart yStart %%BeginProcSet : Line /Line { MAV /LC get length 0 ne { gsave newpath MAV /ArrowType get length 0 eq MAV /SD get length 0 eq and {2 setlinecap /UseClip {clip2pathbbox} def } {0 setlinecap /UseClip {} def } ifelse 0 792 translate 1 -1 scale CTM currentmatrix pop /yStart exch def /xStart exch def /yEnd exch def /xEnd exch def /linewidth exch def MAV /ArrowType get length 0 eq xStart xEnd ne yStart yEnd ne and and {xStart yStart moveto xEnd yEnd lineto UseClip xStart yStart moveto xEnd yEnd lineto} {xStart yStart moveto xEnd yEnd lineto} ifelse linewidth setlinewidth SD strokepath CheckPath {LC PF ArrowType} if grestore } {pop pop pop pop pop} ifelse } bind def %% Line takes the following arguments: %% linewidth xEnd yEnd xStart yStart %%BeginProcSet : ZeroLine /ZeroLine { gsave newpath MAV /ArrowType get length 0 ne { /UseClip {} def 0 792 translate 1 -1 scale pop pop pop pop pop CTM currentmatrix pop ArrowType } if grestore } bind def /CompensateForStroke { sin currentlinewidth mul exch cos currentlinewidth mul dup 0 translate 4 -1 roll exch 2.0 mul sub 3 1 roll 2.0 mul sub } bind def /arrowdict 10 dict def arrowdict begin /SwallowTail { newpath 0.0 0.0 moveto 1.0 -.5 lineto .666 0.0 lineto 1.0 .5 lineto closepath } bind def /Triangular { newpath 0.0 0.0 moveto 1.0 -.5 lineto 1.0 .5 lineto closepath } bind def /OpenTri { newpath 1.0 0.5 moveto 0.0 0.0 lineto 1.0 -0.5 lineto } bind def /ClosedTri { newpath 1.0 0.5 moveto 0.0 0.0 lineto 1.0 -0.5 lineto closepath } bind def /SlashBar { newpath 0.5 -.5 moveto -.5 0.5 lineto } bind def /Dot { newpath 0.5 0.0 moveto 0 0 1 0 360 arc closepath } bind def /ExtSlashBar { newpath 1.0 -.5 moveto 0.0 0.5 lineto } bind def end /ScaleArrowHead { 0 0 4 -2 roll 0 0 1 1 8 -4 roll GetBoxesRatio scale } bind def /DrawArrowHead { gsave [] 0 setdash currentpoint translate rotate { 4 copy gsave initmatrix 100 200 translate msave ScaleArrowHead pop arrowdict exch get exec mrestore strokepath 0 0 3 index 3 index pathbbox 8 4 roll GetBoxesRatio 4 2 roll grestore 3 index 1.0 exch sub 6 -1 roll { 2 index mul 0 translate }{ pop } ifelse msave ScaleArrowHead scale arrowdict exch get exec mrestore strokepath } { msave ScaleArrowHead arrowdict exch get exec mrestore } ifelse CheckPath { LC PF } if grestore } bind def %%EndProcSet %%BeginProcSet : SR /SR { pbox left get pbox top get moveto pbox right get pbox top get lineto pbox right get pbox bottom get lineto pbox left get pbox bottom get lineto closepath } bind def %%EndProcSet %%BeginProcSet : RR1 /RR1 { pbox top get pbox bottom get sub abs pbox left get pbox right get sub abs 2 copy lt { Min 2 div dup dup dup pbox left get add pbox left 3 -1 roll put pbox right get exch sub pbox right 3 -1 roll put pbox left get pbox bottom get moveto pbox right get 0 3 -1 roll 90 -90 arcn pbox left get 0 3 -1 roll -90 90 arcn closepath } { Min 2 div dup dup dup pbox bottom get exch sub pbox bottom 3 -1 roll put pbox top get add pbox top 3 -1 roll put pbox left get pbox bottom get moveto pbox left get add pbox top get 2 index 180 0 arc dup pbox left get add pbox bottom get 3 -1 roll 0 180 arc closepath } ifelse } bind def %%EndProcSet %%BeginProcSet : RR2 /RR2 { dup dup dup dup dup dup dup dup pbox top get add pbox top 3 -1 roll put pbox left get add pbox left 3 -1 roll put pbox bottom get exch sub pbox bottom 3 -1 roll put pbox right get exch sub pbox right 3 -1 roll put pbox bottom get add pbox left get exch moveto pbox right get pbox bottom get 3 -1 roll 90 0 arcn pbox right get pbox top get 3 -1 roll 0 270 arcn pbox left get pbox top get 3 -1 roll 270 180 arcn pbox left get pbox bottom get 3 -1 roll 180 90 arcn closepath } bind def %%EndProcSet %%BeginProcSet : E /E { 1.415 setmiterlimit CM currentmatrix pop pbox right get pbox left get sub abs dup pbox bottom get pbox top get sub abs dup 3 -1 roll lt {exch dup 3 -1 roll exch div 1 exch} {dup 3 -1 roll exch div 1} ifelse scale 0 0 3 -1 roll 2 div 0 360 arc closepath CM setmatrix } bind def %%EndProcSet %%BeginProcSet : A1 /A1 {msave pbox right get pbox left get sub abs dup pbox bottom get pbox top get sub abs dup 3 -1 roll lt {exch dup 3 -1 roll exch div 1 exch} {dup 3 -1 roll exch div 1} ifelse scale 0 0 3 -1 roll 2 div 5 -1 roll -90 add 5 -1 roll -90 add arcn mrestore} bind def %%EndProcSet %%BeginProcSet : A2 /A2 {msave 0 0 moveto A1 closepath mrestore} def %%EndProcSet %%BeginProcSet : BitMap /BitMap { /buffer ^1 string def ^2 ^5 2 div add 792 ^3 sub ^6 2 div add translate ^4 57.3 mul rotate 0 ^5 2 div sub 0 ^6 2 div sub translate ^5 ^6 scale ^5 ^6 ^7 [^5 0 0 -^6 0 ^6] {currentfile buffer readhexstring pop} image }bind def %%EndProcSet %%BeginProcSet : note /note { gsave pbox astore pop 0 792 translate 1 -1 scale CTM currentmatrix pop exch translate pbox right get pbox left get sub 2 div pbox bottom get pbox top get sub 2 div translate 57.3 mul rotate setlinewidth noteBody aload pop moveto noteBody length 2 div 1 sub cvi{lineto}repeat dogEar aload pop moveto dogEar length 2 div 1 sub cvi{lineto}repeat 0.992 0.975 0.507 setrgbcolor gsave fill grestore gsave newpath stickem aload pop moveto stickem length 2 div 1 sub cvi{lineto}repeat 0.760 0.760 0.760 setrgbcolor fill grestore 0 0 0 setrgbcolor stroke noteShadow aload pop moveto noteShadow length 2 div 1 sub cvi{lineto}repeat dogEarShadow aload pop moveto dogEarShadow length 2 div 1 sub cvi{lineto}repeat 0 0 0 setrgbcolor gsave stroke grestore fill grestore }bind def %%EndProcSet %%BeginProcSet : RGB4toGray4 /redTbl4 [0 0 1 1 1 1 2 2 3 3 3 4 4 4 5 5] def /greenTbl4 [0 1 1 2 2 3 3 4 4 5 6 6 7 7 7 8] def /blueTbl4 [0 0 0 0 1 1 1 1 1 1 1 1 1 2 2 2] def /RGB4toGray4 { currentfile RGBBuf readhexstring pop pop /i 0 def /j 0 def grayBuf length { RGBBuf i get dup -4 bitshift redTbl4 exch get exch 15 and greenTbl4 exch get add RGBBuf i 1 add get dup -4 bitshift blueTbl4 exch get 3 -1 roll add 4 bitshift exch 15 and redTbl4 exch get RGBBuf i 2 add get dup -4 bitshift greenTbl4 exch get 3 -1 roll add exch 15 and blueTbl4 exch get add or grayBuf j 3 -1 roll put /i i 3 add def /j j 1 add def } repeat grayBuf } bind def %%EndProcSet %%BeginProcSet : RGB8toGray8 /RGB8toGray8 { currentfile RGBBuf readhexstring pop pop /i 0 def /j 0 def grayBuf length { RGBBuf i get 0.33 mul RGBBuf i 1 add get 0.55 mul add RGBBuf i 2 add get 0.12 mul add round cvi grayBuf j 3 -1 roll put /i i 3 add def /j j 1 add def } repeat grayBuf } bind def %%EndProcSet %%BeginProcSet : RGB24toGray8 /RGB24toGray8 {RGB8toGray8} bind def %%EndProcSet %%BeginProcSet : RGB2toGray2 /redTbl2 [0 0 1 1] def /greenTbl2 [0 1 1 2] def /blueTbl2 [0 0 0 0] def /RGB2toGray2 { currentfile RGBBuf readhexstring pop pop /i 0 def /j 0 def grayBuf length { RGBBuf i get dup dup dup -6 bitshift redTbl2 exch get exch -4 bitshift 3 and greenTbl2 exch get add exch -2 bitshift 3 and blueTbl2 exch get add 6 bitshift exch 3 and redTbl2 exch get RGBBuf i 1 add get dup dup dup -6 bitshift greenTbl2 exch get exch -4 bitshift 3 and blueTbl2 exch get add 4 -1 roll add 4 bitshift 4 -1 roll or 3 1 roll -2 bitshift 3 and redTbl2 exch get exch 3 and greenTbl2 exch get add RGBBuf i 2 add get dup dup dup -6 bitshift blueTbl2 exch get 5 -1 roll add 2 bitshift 5 -1 roll or 4 1 roll -4 bitshift 3 and redTbl2 exch get exch -2 bitshift 3 and greenTbl2 exch get add exch 3 and greenTbl2 exch get add or grayBuf j 3 -1 roll put /i i 3 add def /j j 1 add def } repeat grayBuf } bind def %%EndProcSet %%EndProcSet %%BeginProcSet : RGB1toGray1 /RGB1toGray1 { currentfile RGBBuf readhexstring pop pop /i 0 def /j 0 def grayBuf length { RGBBuf i get dup dup 1 bitshift 128 and exch 3 bitshift 64 and or exch 5 bitshift 32 and or RGBBuf i 1 add get dup -1 bitshift 16 and exch 1 bitshift 8 and or or RGBBuf i 2 add get dup dup -5 bitshift 4 and exch -3 bitshift 2 and or exch -1 bitshift 1 and or or /i i 3 add def /j j 1 add def } repeat grayBuf } bind def %%EndProcSet %%BeginProcSet : RGB16toGray8 /RGB16toGray8 {RGB8toGray8} bind def %%EndProcSet %%BeginProcSet : BW /ScalePoint { 0 0 4 -2 roll 0 0 1 1 8 4 roll GetBoxesRatio scale } bind def /PointDict 4 dict def PointDict begin /XPoint { -.5 .5 moveto .5 -.5 lineto .5 .5 moveto -.5 -.5 lineto } bind def /DiamondPoint { 0.0 .5 moveto .5 0.0 lineto 0.0 -0.5 lineto -.5 0.0 lineto closepath } bind def /PlusPoint { 0.0 .5 moveto 0.0 -.5 lineto -.5 0.0 moveto .5 0.0 lineto } bind def /SquarePoint { -.5 .5 moveto .5 .5 lineto .5 -.5 lineto -.5 -.5 lineto closepath } bind def end /DrawPoint { gsave [] 0 setdash 0 setlinecap translate msave ScalePoint PointDict exch get exec mrestore 1.0 setlinewidth stroke grestore } bind def %%EndProcSet %%BeginProcSet : Wall object Procs %%EndProcSet %%BeginProcSet : Subscriber /Subscriber { msave R PC PF LC SS newpath mrestore } bind def %%EndProcSet /StripFromFront { dup length 2 index sub 3 1 roll exch 3 -1 roll getinterval } bind def /MakePathArray { /k 0 def {/k k 1 add def pop pop}{/k k 1 add def pop pop}{/k k 1 add def pop pop pop pop pop pop}{/k k 1 add def }pathforall k array /k 0 def {{moveto} 3 array astore 1 index k 3 -1 roll put /k k 1 add def} {{lineto} 3 array astore 1 index k 3 -1 roll put /k k 1 add def} {{curveto} 7 array astore 1 index k 3 -1 roll put /k k 1 add def} {{closepath} 1 array astore 1 index k 3 -1 roll put /k k 1 add def} pathforall }bind def /MakeFlatPathArray { /k 0 def {/k k 1 add def pop pop}{/k k 1 add def pop pop}{pop pop pop pop pop pop}{}pathforall k array /k 0 def {{moveto} 3 array astore 1 index k 3 -1 roll put /k k 1 add def} {{lineto} 3 array astore 1 index k 3 -1 roll put /k k 1 add def} { pop pop pop pop pop pop} {} pathforall }bind def /FractionalLine { 2 index sub .00001 mul exch 3 index sub .00001 mul 4 -1 roll add 3 1 roll add } bind def /calcLineLength { exch 4 -1 roll sub dup mul 3 1 roll exch sub dup mul add sqrt } bind def /InitTotalLineLength { /oldY exch def /oldX exch def theDash aload pop currentLineLength add setdash } bind def /AccumeLineLength { 3 copy pop 2 copy oldX oldY 4 2 roll calcLineLength /segmentLength exch def /currentLineLength currentLineLength segmentLength add def /oldY exch def /oldX exch def } bind def /DecumeLastLineLength { /currentLineLength currentLineLength segmentLength sub def } bind def /DrawFlattendSegment { /pointCount 2 def dup 0 lt { pop 0 } if fpc 3 1 roll 2 index 1 index gt { 2 copy get dup length dup 3 eq { pop dup 0 get exch 1 get 2 copy InitTotalLineLength m } { } ifelse } { pop 1 index } ifelse dup 1 add 3 index exch sub dup 10 gt { pop 10} if { 1 add 2 copy get aload pop AccumeLineLength exec } repeat 3 1 roll pop pop DecumeLastLineLength } bind def /IncFPC { fpc add /fpc exch def } bind def /DrawFlatPathArray { fpc 0 { dup 2 index 1 sub lt { flatPathArray exch newpath 1 sub DrawFlattendSegment gsave pathSegProc grestore newpath } { pop pop exit } ifelse } loop } bind def /RecordFirstSubSegment { closepathArray 0 pathArray 0 get put closepathArray 1 pathArray 0 get aload pop pop pathArray 1 get dup length 3 eq { aload pop pop } { newpath 0 0 moveto aload pop exec /segmentArray flattenpath MakeFlatPathArray def segmentArray 1 get aload pop pop } ifelse FractionalLine {lineto} 3 array astore put } bind def /AppendClosePath { closepathArray 0 get 2 {lineto} put flatPathArray fpc closepathArray 0 get put 1 IncFPC flatPathArray fpc closepathArray 1 get put 1 IncFPC } bind def /RecordCurrentDash { /theDash currentdash 2 array astore def /currentLineLength 0 def } bind def /PatternStroke { 0 setlinecap RecordCurrentDash /saveFlat currentflat def .5 setflat /pathArray MakePathArray def /closepathArray 2 array def /pathLength pathArray length def /flatPathArray 513 array def /currentLineLength 0 def /fpc 0 def pathArray pathLength 1 sub get length 1 eq { /usingClosepath true def RecordFirstSubSegment /pathLength pathLength 1 sub def } { /usingClosepath false def } ifelse 0 1 pathLength 1 sub { pathArray exch get dup length 3 eq { fpc 1 add 512 ge { DrawFlatPathArray fpc 2 ge { flatPathArray flatPathArray fpc 2 sub get 0 put flatPathArray flatPathArray fpc 1 sub get 1 put /fpc 2 def }{ /fpc 0 def } ifelse } if flatPathArray exch fpc exch put 1 IncFPC } { dup length 7 eq { newpath /nToStrip 0 def fpc 1 gt { flatPathArray fpc 2 sub get aload pop pop m flatPathArray fpc 1 sub get aload pop exec /nToStrip 2 def } { fpc 1 eq { flatPathArray fpc 1 sub get aload pop exec /nToStrip 2 def } if } ifelse aload pop exec /segmentArray flattenpath MakeFlatPathArray def /segmentArray nToStrip segmentArray StripFromFront def segmentArray length fpc add 512 lt { flatPathArray fpc segmentArray putinterval segmentArray length IncFPC } { DrawFlatPathArray fpc 1 gt { flatPathArray flatPathArray fpc 2 sub get 0 exch put flatPathArray flatPathArray fpc 1 sub get 1 exch put /fpc 2 def }{ /fpc 0 def } ifelse segmentArray length 512 lt { flatPathArray fpc segmentArray putinterval segmentArray length IncFPC } { segmentArray length /exitLoop false def 0 { 2 copy sub dup 500 gt { pop 500 } { /exitLoop true def } ifelse segmentArray 2 index 2 index getinterval flatPathArray fpc 3 -1 roll putinterval dup IncFPC add exitLoop { exit } { DrawFlatPathArray fpc 1 gt { flatPathArray flatPathArray fpc 2 sub get 0 exch put flatPathArray flatPathArray fpc 1 sub get 1 exch put /fpc 2 def }{ /fpc 0 def } ifelse } ifelse } loop } ifelse } ifelse } if } ifelse } for fpc 0 gt { usingClosepath { AppendClosePath } if DrawFlatPathArray } if saveFlat setflat } bind def %%BeginProcSet : rampdelta /rampdelta { /len 0 3 -1 roll add def /i2 0 3 -1 roll add def /i1 0 3 -1 roll add def /nRampSteps len cellPenW div cvi 1 add dup 512 gt {pop 512} if def /rampPenW len nRampSteps div def rampColors i1 get aload pop c1 astore pop rampColors i2 get aload pop c2 astore pop c2 0 get c1 0 get sub nRampSteps div d 0 3 -1 roll put c2 1 get c1 1 get sub nRampSteps div d 1 3 -1 roll put c2 2 get c1 2 get sub nRampSteps div d 2 3 -1 roll put d aload pop } bind def %%EndProcSet %%BeginProcSet : adddelta /adddelta { d astore pop mycurrentrgbcolor c1 copy pop c1 0 get d 0 get add c2 0 3 -1 roll put c1 1 get d 1 get add c2 1 3 -1 roll put c1 2 get d 2 get add c2 2 3 -1 roll put c2 aload pop setrgbcolor c2 mycurrentrgbcolor copy pop } bind def %%EndProcSet %%BeginProcSet : rampline /rampline { segbox ulx get rampPenW add segbox ulx 3 -1 roll put segbox llx get rampPenW add segbox llx 3 -1 roll put segbox ulx get segbox uly get moveto segbox llx get segbox lly get lineto delta aload pop adddelta stroke }bind def %%EndProcSet %%BeginProcSet : slantrampseg /slantrampseg { gsave newpath segbox ulx get segbox urx get sub abs rampdelta delta astore pop segbox ulx get rampPenW .5 mul sub segbox ulx 3 -1 roll put segbox llx get rampPenW .5 mul sub segbox llx 3 -1 roll put rampColors exch get aload mycurrentrgbcolor copy pop setrgbcolor rampPenW setlinewidth nRampSteps {rampline} repeat grestore }bind def %%EndProcSet %%BeginProcSet : flipramp /flipramp { rampColors 0 get rampColors 3 get rampColors 0 3 -1 roll put rampColors 3 3 -1 roll put rampColors 1 get rampColors 2 get rampColors 1 3 -1 roll put rampColors 2 3 -1 roll put } bind def %%EndProcSet %%BeginProcSet : leftrbox /leftrbox { rbox segbox copy pop rbox urx get rbox ulx get sub flipRatio mul dup segbox ulx get add segbox urx 3 -1 roll put segbox llx get add segbox lrx 3 -1 roll put } bind def %%EndProcSet %%BeginProcSet : rightrbox /rightrbox { rbox segbox copy pop rbox urx get rbox ulx get sub flipRatio mul dup segbox ulx get add segbox ulx 3 -1 roll put segbox llx get add segbox llx 3 -1 roll put } bind def %%EndProcSet %%BeginProcSet : drawslantramp /drawslantramp { segbox urx get segbox ulx get sub 3 div dup dup dup dup dup dup dup dup dup segbox ulx get add segbox urx 3 -1 roll put segbox llx get add segbox lrx 3 -1 roll put segbox aload pop 0 0 1 slantrampseg segbox astore pop segbox ulx get add segbox ulx 3 -1 roll put segbox llx get add segbox llx 3 -1 roll put segbox urx get add segbox urx 3 -1 roll put segbox lrx get add segbox lrx 3 -1 roll put segbox aload pop 1 1 2 slantrampseg segbox astore pop segbox ulx get add segbox ulx 3 -1 roll put segbox llx get add segbox llx 3 -1 roll put segbox urx get add segbox urx 3 -1 roll put segbox lrx get add segbox lrx 3 -1 roll put 2 2 3 slantrampseg }bind def %%EndProcSet %%BeginProcSet : tan /tan { dup sin exch cos div }bind def %%EndProcSet %%BeginProcSet : rampbox /rampbox { pbox top get dup rbox uly 3 -1 roll put rbox ury 3 -1 roll put pbox left get dup rbox ulx 3 -1 roll put rbox llx 3 -1 roll put pbox bottom get dup rbox lly 3 -1 roll put rbox lry 3 -1 roll put pbox right get dup rbox urx 3 -1 roll put rbox lrx 3 -1 roll put }bind def %%EndProcSet %%BeginProcSet : rampbox /LoadSegBox { 4 copy segbox llx 6 -1 roll put segbox lly 5 -1 roll put segbox lrx 4 -1 roll put segbox lry 6 -1 roll put segbox urx 5 -1 roll put segbox ury 3 -1 roll put segbox ulx 4 -1 roll put segbox uly 3 -1 roll put } bind def /TransToCenter { gsave flattenpath pathbbox grestore 2 index sub 2.0 div exch 3 index sub 2.0 div 4 -1 roll add 3 1 roll add translate } bind def /RotRampGrad { gsave TransToCenter -1.0 mul 180.0 add rotate flattenpath pathbbox clip newpath LoadSegBox flipRatio 1 lt dup{flipramp}if flipRatio 0 gt and { /flipRatio 1.0 flipRatio sub def segbox rbox copy pop leftrbox drawslantramp flipramp rightrbox drawslantramp } {drawslantramp} ifelse grestore } bind def /bbg { pbox exch get } bind def %%BeginProcSet : DR /DR { % Directional ramp /workingMatrix mstore def objectCord setmatrix flipramp gsave flattenpath pathbbox grestore pbox bottom 3 -1 roll put pbox right 3 -1 roll put pbox top 3 -1 roll put pbox left 3 -1 roll put rampAngle RotRampGrad RF workingMatrix setmatrix }bind def %%EndProcSet %%BeginProcSet : ramparc /ramparc { gsave circum rampdelta delta astore pop /rampPenW 60.0 nRampSteps div def /ang1 exch rampAngle sub def /ang2 rampPenW ang1 add def rampColors exch get aload mycurrentrgbcolor copy pop setrgbcolor 1 setlinewidth nRampSteps {ramparcseg}repeat grestore }bind def %%EndProcSet %%BeginProcSet : ramparcseg /ramparcseg { newpath rampcenter aload pop moveto rampcenter aload pop rampradius ang2 ang1 arcn fill /ang1 ang2 def /ang2 ang2 rampPenW add def delta aload pop adddelta }bind def %%EndProcSet /GetRadius { rbox urx get rbox llx get sub 2 div rampcenter 0 get abs add dup mul rbox lly get rbox ury get sub 2 div rampcenter 1 get abs add dup mul add sqrt } bind def %%BeginProcSet : circularRamp /circularRamp { rampbox /rampradius GetRadius def CalcCrcm flipramp 0 0 0 1 ramparc 1 60 1 2 ramparc 2 120 2 3 ramparc flipramp 0 180 0 1 ramparc 1 240 1 2 ramparc 2 300 2 3 ramparc }bind def %%EndProcSet /GetCircumf { 2.0 mul 3.1415926 mul } bind def /CalcCrcm { rampradius GetCircumf /circum exch 6.0 div def } bind def %%BeginProcSet : CR /CR { gsave clip MTC currentmatrix pop CTM setmatrix flattenpath pathbbox pbox bottom 3 -1 roll put pbox right 3 -1 roll put pbox top 3 -1 roll put pbox left 3 -1 roll put pbox left get pbox right get sub abs 2 div pbox left get add rampcenter 0 get add rampcenter 0 3 -1 roll put pbox top get pbox bottom get sub abs 2 div pbox top get add rampcenter 1 get add rampcenter 1 3 -1 roll put circularRamp MTC setmatrix grestore RF }bind def %%EndProcSet %%BeginProcSet : shaperamp /SBR { gsave clip /workingMatrix mstore def objectCord setmatrix flattenpath /BaseBox pathbbox 4 array astore def /len BaseBox 2 get BaseBox 0 get sub dup mul BaseBox 3 get BaseBox 1 get sub dup mul add sqrt 12.0 div def /EndBox BaseBox aload pop 3 -1 roll sub 3 1 roll exch sub /dbx exch def /dby exch def BaseBox aload pop pop pop /blly exch def /bllx exch def sbox 0 get 100.0 div dby mul blly add sbox 1 get 100.0 div dbx mul bllx add sbox 2 get 100.0 div dby mul blly add sbox 3 get 100.0 div dbx mul bllx add exch 4 -2 roll exch 4 -2 roll 4 array astore def BaseBox EndBox ShapeBurst workingMatrix setmatrix grestore } bind def %%EndProcSet /GetBoxCenter { 2 index sub 2.0 div 3 -1 roll add 3 1 roll 1 index sub 2.0 div add exch } bind def /GetInterBox { /boxInter exch def 4 1 7 { -1 roll 7 index } for sub boxInter mul 8 -1 roll add 7 1 roll sub boxInter mul 7 -1 roll add 6 1 roll sub boxInter mul 6 -1 roll add 5 1 roll sub boxInter mul 5 -1 roll add 4 1 roll } bind def /GetBoxCenterDeltas { GetBoxCenter 6 2 roll GetBoxCenter 3 -1 roll exch sub 3 1 roll sub exch } bind def /GetBoxCornerDeltas { pop pop 4 2 roll pop pop 3 -1 roll sub 3 1 roll exch sub exch } bind def %%BeginProcSet : getpath /getpath { /k 0 def {/k k 1 add def pop pop}{/k k 1 add def pop pop}{/k k 1 add def pop pop pop pop pop pop}{}pathforall /pfa k array def /k 0 def {{moveto} 3 array astore pfa k 3 -1 roll put /k k 1 add def} {{lineto} 3 array astore pfa k 3 -1 roll put /k k 1 add def} {{curveto} 7 array astore pfa k 3 -1 roll put /k k 1 add def} {}pathforall }bind def %%EndProcSet /ShapeBurst { getpath newpath /SBERect exch 4 array copy def /SBBRect exch 4 array copy def /interRect1 SBBRect aload pop SBERect aload pop .3333333 GetInterBox 4 array astore def /interRect2 SBBRect aload pop SBERect aload pop .6666666 GetInterBox 4 array astore def 0 0 1 SBBRect interRect1 ShapeBurstSeg msave interRect1 0 get interRect1 1 get translate SBBRect aload pop interRect1 aload pop GetBoxesRatio scale SBBRect 0 get -1.0 mul SBBRect 1 get -1.0 mul translate 1 1 2 interRect1 interRect2 ShapeBurstSeg mrestore msave interRect2 0 get interRect2 1 get translate SBBRect aload pop interRect2 aload pop GetBoxesRatio scale SBBRect 0 get -1.0 mul SBBRect 1 get -1.0 mul translate 2 2 3 interRect2 SBERect ShapeBurstSeg mrestore } bind def /ShapeBurstSeg { /sbr1 exch 4 array copy def /sbr0 exch 4 array copy def /blx sbr0 0 get def /bly sbr0 1 get def len rampdelta delta astore pop sbr0 aload pop sbr1 aload pop GetBoxesRatio /ratioY exch def /ratioX exch def sbr0 aload pop sbr1 aload pop GetBoxCornerDeltas /dlly exch nRampSteps div def /dllx exch nRampSteps div def /scaleStepX 1.0 ratioX sub nRampSteps div def /scaleStepY 1.0 ratioY sub nRampSteps div def /currentScaleX 1.0 scaleStepX sub def /currentScaleY 1.0 scaleStepY sub def /translationX blx dllx add def /translationY bly dlly add def /currentScaleX 1.0 def /currentScaleY 1.0 def /translationX blx def /translationY bly def rampColors exch get aload mycurrentrgbcolor copy pop setrgbcolor nRampSteps { msave translationX translationY translate currentScaleX currentScaleY scale blx -1.0 mul bly -1.0 mul translate pfa {aload pop exec} forall fill delta aload pop adddelta /translationX translationX dllx add def /translationY translationY dlly add def /currentScaleX currentScaleX scaleStepX sub def /currentScaleY currentScaleY scaleStepY sub def mrestore } repeat msave translationX translationY translate currentScaleX currentScaleY scale blx -1.0 mul bly -1.0 mul translate pfa {aload pop exec} forall fill mrestore } bind def %%EndProlog initmsaverestore /tctm matrix currentmatrix def tctm RoundMatrix setmatrix /patternMatrix mstore def 10 setmiterlimit 2 setlinecap newpath %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /backfill {/setcmykcolor where {begin gsave 0 0 0 0 setcmykcolor fill grestore end} {gsave 1 1 1 setrgbcolor fill grestore} ifelse} def /fillpat def /iSizeX 24 def /iSizeY 24 def /PF { /pat fillpat def DefaultPatternFont backfill 65 PatternFill } def 3.000 0 108.000 108.000 0.000 0.000 360.000 360.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {1.000 1.000 1.000 setrgbcolor } def /PF {gsave fill grestore} def 3.000 0 207.000 207.000 0.000 0.000 162.000 162.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 279.000 99.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 279.000 198.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 279.000 360.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 279.000 459.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 99.000 279.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 198.000 279.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 360.000 279.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 459.000 279.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 288.000 207.000 288.000 108.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 207.000 369.000 207.000 288.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 288.000 369.000 207.000 369.000 Line %@EndLine %%Trailer end ---------------9903161209299 Content-Type: application/postscript; name="Fig5.epsf" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="Fig5.epsf" %!PS-Adobe-2.0 EPSF-1.2 %%Title: Fig2(b).epsf %%Creator: CLARIS EPSF Export Filter V1.0 %%CreationDate:12/30/98 6:22:15 p.m. %%BoundingBox: 134 350 514 730 %%QDBoundingBox: 134.500 62.500 513.500 441.500 %%DocumentProcessColors: Cyan Magenta Yellow Black %%ObjectsIncluded: tText=T tLine=T tRect=T tRRect=T tOval=T tArc=T tFree=T tPoly=T tBMap=T tNote=T tBez=T tPMap=T %%AttributesIncluded: kBaWPattType=T kPixPattType=T kGradientType=T %%EndComments /MAV 300 dict def MAV begin /useClip true def /top 0 def /left 1 def /bottom 2 def /right 3 def /CM 6 array def /CTM 6 array def /CTMR 6 array def /MTC 6 array def /blimit 1500 def /bcnt 0 def /rbox 8 array def /segbox 8 array def /bbox1 4 array def /c1 3 array def /c2 3 array def /d 3 array def /delta 3 array def /mycurrentrgbcolor 3 array def /ulx 0 def /uly 1 def /llx 2 def /lly 3 def /urx 4 def /ury 5 def /lrx 6 def /lry 7 def /sp [0 0] def /ep [0 0] def /bbox 4 array def /pbox 4 array def /scrnProc currentscreen 3 1 roll pop pop def /currentcolorscreen where { begin currentcolorscreen end 3 1 roll pop pop 4 2 roll pop pop 5 -2 roll pop pop 6 -2 roll pop pop /kProc exch def /bProc exch def /gProc exch def /rProc exch def } if /Max {2 copy gt {pop}{exch pop} ifelse} bind def /Min {2 copy lt {pop}{exch pop} ifelse} bind def /cellPenW 72.0 /currentcolorscreen where {begin currentcolorscreen end pop pop 10 1 roll pop pop 8 1 roll pop pop 6 1 roll pop pop Max Max Max } {currentscreen pop pop} ifelse div 2.0 div def %%BeginProcSet : rect /rect { /saveobj save def R PC PF LC SS saveobj restore } bind def %%EndProcSet %%BeginProcSet : R /R { newpath pbox astore pop 0 792 translate 1 -1 scale CTMR currentmatrix pop exch translate /objectCord mstore def pbox right get 2 div dup pbox left get exch sub pbox left 3 -1 roll put dup pbox right 3 -1 roll put pbox bottom get 2 div dup pbox top get exch sub pbox top 3 -1 roll put dup pbox bottom 3 -1 roll put translate CTM currentmatrix pop 57.3 mul rotate RT } bind def %%EndProcSet %%BeginProcSet : SaveScreenBW /SaveScreenBW { currentscreen /scrnProc exch def /scrnAngle exch def /scrnFreq exch def } bind def %%EndProcSet %%BeginProcSet : RestoreScreenBW /RestoreScreenBW { scrnFreq scrnAngle MAV /scrnProc get setscreen } bind def %%EndProcSet %%BeginProcSet : SetFreqAngleBW /SetFreqAngleBW { currentscreen 3 1 roll pop pop setscreen } bind def %%EndProcSet %%BeginProcSet : SaveScreenColor /SaveScreenColor { currentcolorscreen /grayProc exch def /grayAngle exch def /grayFreq exch def /bProc exch def /bAngle exch def /bFreq exch def /gProc exch def /gAngle exch def /gFreq exch def /rProc exch def /rAngle exch def /rFreq exch def } bind def %%EndProcSet %%BeginProcSet : RestoreColorScreen /RestoreColorScreen { rFreq rAngle MAV /rProc get gFreq gAngle MAV /gProc get bFreq bAngle MAV /bProc get grayFreq grayAngle MAV /grayProc get setcolorscreen } bind def %%EndProcSet %%BeginProcSet : SetFreqAngleColor /SetFreqAngleColor { currentcolorscreen 3 1 roll pop pop 4 2 roll pop pop 5 -2 roll pop pop 6 -2 roll pop pop 4 1 roll 6 1 roll 8 1 roll 10 1 roll setcolorscreen } bind def %%EndProcSet /initmsaverestore { userdict begin /mdict 10 dict def mdict begin /mindex -1 def /mstacksize 25 def /mstack mstacksize array def /incmindex { /mindex mindex 1 add def } bind def /decmindex { /mindex mindex 1 sub def } bind def /checkmindex { mindex 0 lt { (%ERROR: msave/mrestore stack underflow: Offending command 'mrestore' ) print flush stop } { mindex mstacksize ge { (%ERROR: msave/mrestore stack overflow: Offending command 'msave' ) print flush stop } if } ifelse } bind def /mpush { incmindex checkmindex mstack mindex 3 -1 roll put } bind def /mpop { checkmindex mstack mindex get decmindex } bind def end end } bind def /msave { mdict begin matrix currentmatrix mpush end } bind def /mrestore { mdict begin mpop setmatrix end } bind def /msavelevel { mdict begin mindex 1 add end } bind def /mstore { matrix currentmatrix } bind def /AutoSizeY { 0 0 pl dup 3 1 roll 4 -1 roll add pl exch pop exch sub } bind def /pl { transform 0.25 sub round 0.25 add exch 0.25 sub round 0.25 add exch itransform } bind def /pll { transform round exch round exch itransform } bind def /pr { dtransform round exch round exch idtransform } bind def /m { pl moveto } bind def /l { pl lineto } bind def /c { pl curveto } bind def /rm { pr rmoveto } bind def /rl { pr rlineto } bind def /ar { 5 -2 roll pl 5 2 roll arc } bind def /an { 5 -2 roll pl 5 2 roll arcn } bind def /MakePatternFont { /FontDict 20 dict def FontDict begin /FontName exch def /Encoding exch def /FontMatrix [1 0 0 1 0 0 ] def /FontType 3 def /FontBBox [ 0 0 1 1 ] def /PatternDict exch def /RenderPattern { patternDict exch get exec } bind def /BuildChar { exch begin 1 0 0 0 1 1 setcachedevice Encoding exch get RenderPattern end } bind def FontName FontDict definefont pop end } bind def /SnapToPattenGrid { exch dup 0 lt { 1 index sub } if 1 index div truncate mul } bind def /FillPatternString { dup length 1 sub 0 1 3 -1 roll { 2 index 2 index 3 -2 roll put } for pop pop } bind def /AutoSizeY { 0.0 exch dtransform round idtransform exch pop } bind def /AutoSizeX { 0.0 dtransform exch round exch idtransform pop } bind def /AutoCellSize { AutoSizeY exch AutoSizeX exch } bind def /CheckPath { false { pop pop pop true exit} { pop pop pop true exit} { pop pop pop pop pop pop pop true exit} { pop true exit} pathforall } bind def /PatternFill { % patternCharacter /patternString 1 string def /cm mstore def patternMatrix setmatrix 1 1 AutoCellSize dup 0 eq { pop 1} if exch dup 0 eq { pop 1} if exch /patternSize exch 24.0 mul def /PatternSizeX exch 24.0 mul patternString length mul def /flaterror 0 def patternString FillPatternString gsave flaterror 1 add setflat flattenpath pathbbox grestore psy add flaterror add psy SnapToPattenGrid exch psx add flaterror add psx SnapToPattenGrid 3 -1 roll flaterror sub psy SnapToPattenGrid 4 -1 roll flaterror sub psx SnapToPattenGrid 4 2 roll pll 4 2 roll pll /llxsnap exch def /llysnap exch def /urxsnap exch def /urysnap exch def gsave useClip true eq {clip}{eoclip} ifelse newpath /PatternFont findfont [psx 0.0 0.0 psy 0.0 0.0] makefont setfont llysnap patternSize urysnap { llxsnap exch moveto llxsnap PatternSizeX urxsnap { pop patternString show %currentpoint am } for } bind for grestore cm setmatrix } bind def % End 'PatternFill' /DefaultPatternFont { /cm mstore def patternMatrix setmatrix 1 1 AutoCellSize dup 0 eq { pop 1} if exch dup 0 eq { pop 1} if exch /psy exch iSizeY mul def /psx exch iSizeX mul def /patternDict 64 dict def patternDict begin /NotDef {} def /LiteDiagLines { iSizeX iSizeY false [iSizeX 0.0 0.0 iSizeY -1.0 mul 0.0 iSizeY] {pat} imagemask } bind def end /CustEncoding 256 array def 0 255 1 { CustEncoding exch /NotDef put } bind for CustEncoding 65 /LiteDiagLines put patternDict CustEncoding /PatternFont MakePatternFont /pathSegProc { strokepath CheckPath { 65 PatternFill newpath } if } bind def cm setmatrix } bind def /XRound { dup 3 -1 roll exch mul round exch div } bind def /RoundMatrix { /i 0 def dup { 100000.0 XRound 1 index exch i exch put /i i 1 add def } forall } bind def /GetBoxesRatio { 3 -1 roll sub 7 1 roll exch sub 6 1 roll 3 -1 roll sub 5 1 roll exch sub 4 1 roll 3 -1 roll div 3 1 roll exch div exch } bind def %%BeginProcSet : Text Attributes Procs /T {792 exch sub} bind def /sx 0 def /sy 0 def /ex 0 def /ey 0 def /lw 0 def /siz 0 def /U {gsave 0 setlinecap /lw siz 0.078125 mul def /ey exch neg def /ex exch def /sy exch neg def /sx exch def fontkind plain eq { lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto stroke } { currentdict /outlineFontSize known outlineFontSize 0 gt and { fontkind outline eq { /sy sy 0.0119444 siz mul sub def /ey ey 0.0119444 siz mul sub def gsave 1 1 1 setrgbcolor lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto stroke grestore lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto strokepath 0.0119444 siz mul setlinewidth stroke } if fontkind shadow eq fontkind outlineshadow eq or { /sy sy 0.0358332 siz mul sub def /ey ey 0.0358332 siz mul sub def lw setlinewidth lw 2 div sx add sy lw 2 div sub moveto lw 2 div ex add ey lw 2 div sub lineto stroke gsave 1 1 1 setrgbcolor lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto stroke grestore lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto strokepath 0.0119444 siz mul setlinewidth stroke } if } if } ifelse grestore} bind def /plain 1 def /outline 2 def /shadow 3 def /outlineshadow 4 def /fess { currentdict /outlineFontSize known { /outlineFontSize 2 index def } if findfont exch dup /siz exch def scalefont setfont } bind def /SHDW {gsave siz oldfontname fess siz 0.055 mul x add y siz 0.05 mul sub moveto c show grestore} def /NRML {gsave 1 1 1 setrgbcolor siz oldfontname fess x y moveto c show grestore siz /Outline fess x y moveto c show} def /S { fontkind plain eq {neg moveto show} if fontkind outline eq {neg /y exch def /x exch def /c exch def NRML} if fontkind shadow eq {neg /y exch def /x exch def /c exch def SHDW NRML} if fontkind outlineshadow eq {neg /y exch def /x exch def /c exch def SHDW NRML} if } bind def /F { /fontkind exch def fontkind plain eq {fess} if fontkind outline eq {dup /oldfontname exch def exch dup /siz exch def exch OLF} if fontkind shadow eq {dup /oldfontname exch def exch dup /siz exch def exch OLF} if fontkind outlineshadow eq {dup /oldfontname exch def exch dup /siz exch def exch OLF} if } bind def /makeoutlinedict 15 dict def /makeoutlinefont { makeoutlinedict begin /uniqueid exch def /strokewidth exch def /newfontname exch def /basefontname exch def FontDirectory basefontname known not { /basefontname /Times-Roman def } if /basefontdict basefontname findfont def /numentries basefontdict maxlength 1 add def basefontdict /UniqueID known not {/numentries numentries 1 add def} if /outfontdict numentries dict def basefontdict { exch dup /FID ne {exch outfontdict 3 1 roll put} {pop pop} ifelse }forall outfontdict /FontName newfontname put outfontdict /PaintType 2 put outfontdict /StrokeWidth strokewidth put outfontdict /UniqueID uniqueid put newfontname outfontdict definefont pop end }def /UID { findfont dup /UniqueID known {/UniqueID get 1 add} {pop 1} ifelse } def /OLF { dup /Outline 1000 62 div 4 -1 roll UID /outlineFontSize 5 index def makeoutlinefont /Outline findfont exch scalefont setfont } def /CopyEncoding { findfont /Encoding get dup length array /tarrayz exch def tarrayz 0 3 -1 roll putinterval tarrayz } bind def /Re-encode { dup length array copy /eap 0 def exch { dup type /integertype eq { /eap exch def } { 1 index exch eap exch put /eap eap 1 add def } ifelse } forall } bind def /EncodeFont { findfont dup length dict begin { 1 index /FID ne { def } { pop pop } ifelse } forall /FontName exch def /Encoding exch def FontName currentdict end definefont pop } bind def %%EndProcSet %%BeginProcSet : clip2pathbbox /clip2pathbbox { /magicNum linewidth 2 div 1 2 sqrt div mul def pathbbox /urymn exch magicNum add def /urxmn exch magicNum add def /llymn exch magicNum sub def /llxmn exch magicNum sub def newpath llxmn llymn moveto llxmn urymn lineto urxmn urymn lineto urxmn llymn lineto closepath clip newpath } bind def %%EndProcSet %% Line takes the following arguments: %% linewidth xEnd yEnd xStart yStart %%BeginProcSet : Line /Line { MAV /LC get length 0 ne { gsave newpath MAV /ArrowType get length 0 eq MAV /SD get length 0 eq and {2 setlinecap /UseClip {clip2pathbbox} def } {0 setlinecap /UseClip {} def } ifelse 0 792 translate 1 -1 scale CTM currentmatrix pop /yStart exch def /xStart exch def /yEnd exch def /xEnd exch def /linewidth exch def MAV /ArrowType get length 0 eq xStart xEnd ne yStart yEnd ne and and {xStart yStart moveto xEnd yEnd lineto UseClip xStart yStart moveto xEnd yEnd lineto} {xStart yStart moveto xEnd yEnd lineto} ifelse linewidth setlinewidth SD strokepath CheckPath {LC PF ArrowType} if grestore } {pop pop pop pop pop} ifelse } bind def %% Line takes the following arguments: %% linewidth xEnd yEnd xStart yStart %%BeginProcSet : ZeroLine /ZeroLine { gsave newpath MAV /ArrowType get length 0 ne { /UseClip {} def 0 792 translate 1 -1 scale pop pop pop pop pop CTM currentmatrix pop ArrowType } if grestore } bind def /CompensateForStroke { sin currentlinewidth mul exch cos currentlinewidth mul dup 0 translate 4 -1 roll exch 2.0 mul sub 3 1 roll 2.0 mul sub } bind def /arrowdict 10 dict def arrowdict begin /SwallowTail { newpath 0.0 0.0 moveto 1.0 -.5 lineto .666 0.0 lineto 1.0 .5 lineto closepath } bind def /Triangular { newpath 0.0 0.0 moveto 1.0 -.5 lineto 1.0 .5 lineto closepath } bind def /OpenTri { newpath 1.0 0.5 moveto 0.0 0.0 lineto 1.0 -0.5 lineto } bind def /ClosedTri { newpath 1.0 0.5 moveto 0.0 0.0 lineto 1.0 -0.5 lineto closepath } bind def /SlashBar { newpath 0.5 -.5 moveto -.5 0.5 lineto } bind def /Dot { newpath 0.5 0.0 moveto 0 0 1 0 360 arc closepath } bind def /ExtSlashBar { newpath 1.0 -.5 moveto 0.0 0.5 lineto } bind def end /ScaleArrowHead { 0 0 4 -2 roll 0 0 1 1 8 -4 roll GetBoxesRatio scale } bind def /DrawArrowHead { gsave [] 0 setdash currentpoint translate rotate { 4 copy gsave initmatrix 100 200 translate msave ScaleArrowHead pop arrowdict exch get exec mrestore strokepath 0 0 3 index 3 index pathbbox 8 4 roll GetBoxesRatio 4 2 roll grestore 3 index 1.0 exch sub 6 -1 roll { 2 index mul 0 translate }{ pop } ifelse msave ScaleArrowHead scale arrowdict exch get exec mrestore strokepath } { msave ScaleArrowHead arrowdict exch get exec mrestore } ifelse CheckPath { LC PF } if grestore } bind def %%EndProcSet %%BeginProcSet : SR /SR { pbox left get pbox top get moveto pbox right get pbox top get lineto pbox right get pbox bottom get lineto pbox left get pbox bottom get lineto closepath } bind def %%EndProcSet %%BeginProcSet : RR1 /RR1 { pbox top get pbox bottom get sub abs pbox left get pbox right get sub abs 2 copy lt { Min 2 div dup dup dup pbox left get add pbox left 3 -1 roll put pbox right get exch sub pbox right 3 -1 roll put pbox left get pbox bottom get moveto pbox right get 0 3 -1 roll 90 -90 arcn pbox left get 0 3 -1 roll -90 90 arcn closepath } { Min 2 div dup dup dup pbox bottom get exch sub pbox bottom 3 -1 roll put pbox top get add pbox top 3 -1 roll put pbox left get pbox bottom get moveto pbox left get add pbox top get 2 index 180 0 arc dup pbox left get add pbox bottom get 3 -1 roll 0 180 arc closepath } ifelse } bind def %%EndProcSet %%BeginProcSet : RR2 /RR2 { dup dup dup dup dup dup dup dup pbox top get add pbox top 3 -1 roll put pbox left get add pbox left 3 -1 roll put pbox bottom get exch sub pbox bottom 3 -1 roll put pbox right get exch sub pbox right 3 -1 roll put pbox bottom get add pbox left get exch moveto pbox right get pbox bottom get 3 -1 roll 90 0 arcn pbox right get pbox top get 3 -1 roll 0 270 arcn pbox left get pbox top get 3 -1 roll 270 180 arcn pbox left get pbox bottom get 3 -1 roll 180 90 arcn closepath } bind def %%EndProcSet %%BeginProcSet : E /E { 1.415 setmiterlimit CM currentmatrix pop pbox right get pbox left get sub abs dup pbox bottom get pbox top get sub abs dup 3 -1 roll lt {exch dup 3 -1 roll exch div 1 exch} {dup 3 -1 roll exch div 1} ifelse scale 0 0 3 -1 roll 2 div 0 360 arc closepath CM setmatrix } bind def %%EndProcSet %%BeginProcSet : A1 /A1 {msave pbox right get pbox left get sub abs dup pbox bottom get pbox top get sub abs dup 3 -1 roll lt {exch dup 3 -1 roll exch div 1 exch} {dup 3 -1 roll exch div 1} ifelse scale 0 0 3 -1 roll 2 div 5 -1 roll -90 add 5 -1 roll -90 add arcn mrestore} bind def %%EndProcSet %%BeginProcSet : A2 /A2 {msave 0 0 moveto A1 closepath mrestore} def %%EndProcSet %%BeginProcSet : BitMap /BitMap { /buffer ^1 string def ^2 ^5 2 div add 792 ^3 sub ^6 2 div add translate ^4 57.3 mul rotate 0 ^5 2 div sub 0 ^6 2 div sub translate ^5 ^6 scale ^5 ^6 ^7 [^5 0 0 -^6 0 ^6] {currentfile buffer readhexstring pop} image }bind def %%EndProcSet %%BeginProcSet : note /note { gsave pbox astore pop 0 792 translate 1 -1 scale CTM currentmatrix pop exch translate pbox right get pbox left get sub 2 div pbox bottom get pbox top get sub 2 div translate 57.3 mul rotate setlinewidth noteBody aload pop moveto noteBody length 2 div 1 sub cvi{lineto}repeat dogEar aload pop moveto dogEar length 2 div 1 sub cvi{lineto}repeat 0.992 0.975 0.507 setrgbcolor gsave fill grestore gsave newpath stickem aload pop moveto stickem length 2 div 1 sub cvi{lineto}repeat 0.760 0.760 0.760 setrgbcolor fill grestore 0 0 0 setrgbcolor stroke noteShadow aload pop moveto noteShadow length 2 div 1 sub cvi{lineto}repeat dogEarShadow aload pop moveto dogEarShadow length 2 div 1 sub cvi{lineto}repeat 0 0 0 setrgbcolor gsave stroke grestore fill grestore }bind def %%EndProcSet %%BeginProcSet : RGB4toGray4 /redTbl4 [0 0 1 1 1 1 2 2 3 3 3 4 4 4 5 5] def /greenTbl4 [0 1 1 2 2 3 3 4 4 5 6 6 7 7 7 8] def /blueTbl4 [0 0 0 0 1 1 1 1 1 1 1 1 1 2 2 2] def /RGB4toGray4 { currentfile RGBBuf readhexstring pop pop /i 0 def /j 0 def grayBuf length { RGBBuf i get dup -4 bitshift redTbl4 exch get exch 15 and greenTbl4 exch get add RGBBuf i 1 add get dup -4 bitshift blueTbl4 exch get 3 -1 roll add 4 bitshift exch 15 and redTbl4 exch get RGBBuf i 2 add get dup -4 bitshift greenTbl4 exch get 3 -1 roll add exch 15 and blueTbl4 exch get add or grayBuf j 3 -1 roll put /i i 3 add def /j j 1 add def } repeat grayBuf } bind def %%EndProcSet %%BeginProcSet : RGB8toGray8 /RGB8toGray8 { currentfile RGBBuf readhexstring pop pop /i 0 def /j 0 def grayBuf length { RGBBuf i get 0.33 mul RGBBuf i 1 add get 0.55 mul add RGBBuf i 2 add get 0.12 mul add round cvi grayBuf j 3 -1 roll put /i i 3 add def /j j 1 add def } repeat grayBuf } bind def %%EndProcSet %%BeginProcSet : RGB24toGray8 /RGB24toGray8 {RGB8toGray8} bind def %%EndProcSet %%BeginProcSet : RGB2toGray2 /redTbl2 [0 0 1 1] def /greenTbl2 [0 1 1 2] def /blueTbl2 [0 0 0 0] def /RGB2toGray2 { currentfile RGBBuf readhexstring pop pop /i 0 def /j 0 def grayBuf length { RGBBuf i get dup dup dup -6 bitshift redTbl2 exch get exch -4 bitshift 3 and greenTbl2 exch get add exch -2 bitshift 3 and blueTbl2 exch get add 6 bitshift exch 3 and redTbl2 exch get RGBBuf i 1 add get dup dup dup -6 bitshift greenTbl2 exch get exch -4 bitshift 3 and blueTbl2 exch get add 4 -1 roll add 4 bitshift 4 -1 roll or 3 1 roll -2 bitshift 3 and redTbl2 exch get exch 3 and greenTbl2 exch get add RGBBuf i 2 add get dup dup dup -6 bitshift blueTbl2 exch get 5 -1 roll add 2 bitshift 5 -1 roll or 4 1 roll -4 bitshift 3 and redTbl2 exch get exch -2 bitshift 3 and greenTbl2 exch get add exch 3 and greenTbl2 exch get add or grayBuf j 3 -1 roll put /i i 3 add def /j j 1 add def } repeat grayBuf } bind def %%EndProcSet %%EndProcSet %%BeginProcSet : RGB1toGray1 /RGB1toGray1 { currentfile RGBBuf readhexstring pop pop /i 0 def /j 0 def grayBuf length { RGBBuf i get dup dup 1 bitshift 128 and exch 3 bitshift 64 and or exch 5 bitshift 32 and or RGBBuf i 1 add get dup -1 bitshift 16 and exch 1 bitshift 8 and or or RGBBuf i 2 add get dup dup -5 bitshift 4 and exch -3 bitshift 2 and or exch -1 bitshift 1 and or or /i i 3 add def /j j 1 add def } repeat grayBuf } bind def %%EndProcSet %%BeginProcSet : RGB16toGray8 /RGB16toGray8 {RGB8toGray8} bind def %%EndProcSet %%BeginProcSet : BW /ScalePoint { 0 0 4 -2 roll 0 0 1 1 8 4 roll GetBoxesRatio scale } bind def /PointDict 4 dict def PointDict begin /XPoint { -.5 .5 moveto .5 -.5 lineto .5 .5 moveto -.5 -.5 lineto } bind def /DiamondPoint { 0.0 .5 moveto .5 0.0 lineto 0.0 -0.5 lineto -.5 0.0 lineto closepath } bind def /PlusPoint { 0.0 .5 moveto 0.0 -.5 lineto -.5 0.0 moveto .5 0.0 lineto } bind def /SquarePoint { -.5 .5 moveto .5 .5 lineto .5 -.5 lineto -.5 -.5 lineto closepath } bind def end /DrawPoint { gsave [] 0 setdash 0 setlinecap translate msave ScalePoint PointDict exch get exec mrestore 1.0 setlinewidth stroke grestore } bind def %%EndProcSet %%BeginProcSet : Wall object Procs %%EndProcSet %%BeginProcSet : Subscriber /Subscriber { msave R PC PF LC SS newpath mrestore } bind def %%EndProcSet /StripFromFront { dup length 2 index sub 3 1 roll exch 3 -1 roll getinterval } bind def /MakePathArray { /k 0 def {/k k 1 add def pop pop}{/k k 1 add def pop pop}{/k k 1 add def pop pop pop pop pop pop}{/k k 1 add def }pathforall k array /k 0 def {{moveto} 3 array astore 1 index k 3 -1 roll put /k k 1 add def} {{lineto} 3 array astore 1 index k 3 -1 roll put /k k 1 add def} {{curveto} 7 array astore 1 index k 3 -1 roll put /k k 1 add def} {{closepath} 1 array astore 1 index k 3 -1 roll put /k k 1 add def} pathforall }bind def /MakeFlatPathArray { /k 0 def {/k k 1 add def pop pop}{/k k 1 add def pop pop}{pop pop pop pop pop pop}{}pathforall k array /k 0 def {{moveto} 3 array astore 1 index k 3 -1 roll put /k k 1 add def} {{lineto} 3 array astore 1 index k 3 -1 roll put /k k 1 add def} { pop pop pop pop pop pop} {} pathforall }bind def /FractionalLine { 2 index sub .00001 mul exch 3 index sub .00001 mul 4 -1 roll add 3 1 roll add } bind def /calcLineLength { exch 4 -1 roll sub dup mul 3 1 roll exch sub dup mul add sqrt } bind def /InitTotalLineLength { /oldY exch def /oldX exch def theDash aload pop currentLineLength add setdash } bind def /AccumeLineLength { 3 copy pop 2 copy oldX oldY 4 2 roll calcLineLength /segmentLength exch def /currentLineLength currentLineLength segmentLength add def /oldY exch def /oldX exch def } bind def /DecumeLastLineLength { /currentLineLength currentLineLength segmentLength sub def } bind def /DrawFlattendSegment { /pointCount 2 def dup 0 lt { pop 0 } if fpc 3 1 roll 2 index 1 index gt { 2 copy get dup length dup 3 eq { pop dup 0 get exch 1 get 2 copy InitTotalLineLength m } { } ifelse } { pop 1 index } ifelse dup 1 add 3 index exch sub dup 10 gt { pop 10} if { 1 add 2 copy get aload pop AccumeLineLength exec } repeat 3 1 roll pop pop DecumeLastLineLength } bind def /IncFPC { fpc add /fpc exch def } bind def /DrawFlatPathArray { fpc 0 { dup 2 index 1 sub lt { flatPathArray exch newpath 1 sub DrawFlattendSegment gsave pathSegProc grestore newpath } { pop pop exit } ifelse } loop } bind def /RecordFirstSubSegment { closepathArray 0 pathArray 0 get put closepathArray 1 pathArray 0 get aload pop pop pathArray 1 get dup length 3 eq { aload pop pop } { newpath 0 0 moveto aload pop exec /segmentArray flattenpath MakeFlatPathArray def segmentArray 1 get aload pop pop } ifelse FractionalLine {lineto} 3 array astore put } bind def /AppendClosePath { closepathArray 0 get 2 {lineto} put flatPathArray fpc closepathArray 0 get put 1 IncFPC flatPathArray fpc closepathArray 1 get put 1 IncFPC } bind def /RecordCurrentDash { /theDash currentdash 2 array astore def /currentLineLength 0 def } bind def /PatternStroke { 0 setlinecap RecordCurrentDash /saveFlat currentflat def .5 setflat /pathArray MakePathArray def /closepathArray 2 array def /pathLength pathArray length def /flatPathArray 513 array def /currentLineLength 0 def /fpc 0 def pathArray pathLength 1 sub get length 1 eq { /usingClosepath true def RecordFirstSubSegment /pathLength pathLength 1 sub def } { /usingClosepath false def } ifelse 0 1 pathLength 1 sub { pathArray exch get dup length 3 eq { fpc 1 add 512 ge { DrawFlatPathArray fpc 2 ge { flatPathArray flatPathArray fpc 2 sub get 0 put flatPathArray flatPathArray fpc 1 sub get 1 put /fpc 2 def }{ /fpc 0 def } ifelse } if flatPathArray exch fpc exch put 1 IncFPC } { dup length 7 eq { newpath /nToStrip 0 def fpc 1 gt { flatPathArray fpc 2 sub get aload pop pop m flatPathArray fpc 1 sub get aload pop exec /nToStrip 2 def } { fpc 1 eq { flatPathArray fpc 1 sub get aload pop exec /nToStrip 2 def } if } ifelse aload pop exec /segmentArray flattenpath MakeFlatPathArray def /segmentArray nToStrip segmentArray StripFromFront def segmentArray length fpc add 512 lt { flatPathArray fpc segmentArray putinterval segmentArray length IncFPC } { DrawFlatPathArray fpc 1 gt { flatPathArray flatPathArray fpc 2 sub get 0 exch put flatPathArray flatPathArray fpc 1 sub get 1 exch put /fpc 2 def }{ /fpc 0 def } ifelse segmentArray length 512 lt { flatPathArray fpc segmentArray putinterval segmentArray length IncFPC } { segmentArray length /exitLoop false def 0 { 2 copy sub dup 500 gt { pop 500 } { /exitLoop true def } ifelse segmentArray 2 index 2 index getinterval flatPathArray fpc 3 -1 roll putinterval dup IncFPC add exitLoop { exit } { DrawFlatPathArray fpc 1 gt { flatPathArray flatPathArray fpc 2 sub get 0 exch put flatPathArray flatPathArray fpc 1 sub get 1 exch put /fpc 2 def }{ /fpc 0 def } ifelse } ifelse } loop } ifelse } ifelse } if } ifelse } for fpc 0 gt { usingClosepath { AppendClosePath } if DrawFlatPathArray } if saveFlat setflat } bind def %%BeginProcSet : rampdelta /rampdelta { /len 0 3 -1 roll add def /i2 0 3 -1 roll add def /i1 0 3 -1 roll add def /nRampSteps len cellPenW div cvi 1 add dup 512 gt {pop 512} if def /rampPenW len nRampSteps div def rampColors i1 get aload pop c1 astore pop rampColors i2 get aload pop c2 astore pop c2 0 get c1 0 get sub nRampSteps div d 0 3 -1 roll put c2 1 get c1 1 get sub nRampSteps div d 1 3 -1 roll put c2 2 get c1 2 get sub nRampSteps div d 2 3 -1 roll put d aload pop } bind def %%EndProcSet %%BeginProcSet : adddelta /adddelta { d astore pop mycurrentrgbcolor c1 copy pop c1 0 get d 0 get add c2 0 3 -1 roll put c1 1 get d 1 get add c2 1 3 -1 roll put c1 2 get d 2 get add c2 2 3 -1 roll put c2 aload pop setrgbcolor c2 mycurrentrgbcolor copy pop } bind def %%EndProcSet %%BeginProcSet : rampline /rampline { segbox ulx get rampPenW add segbox ulx 3 -1 roll put segbox llx get rampPenW add segbox llx 3 -1 roll put segbox ulx get segbox uly get moveto segbox llx get segbox lly get lineto delta aload pop adddelta stroke }bind def %%EndProcSet %%BeginProcSet : slantrampseg /slantrampseg { gsave newpath segbox ulx get segbox urx get sub abs rampdelta delta astore pop segbox ulx get rampPenW .5 mul sub segbox ulx 3 -1 roll put segbox llx get rampPenW .5 mul sub segbox llx 3 -1 roll put rampColors exch get aload mycurrentrgbcolor copy pop setrgbcolor rampPenW setlinewidth nRampSteps {rampline} repeat grestore }bind def %%EndProcSet %%BeginProcSet : flipramp /flipramp { rampColors 0 get rampColors 3 get rampColors 0 3 -1 roll put rampColors 3 3 -1 roll put rampColors 1 get rampColors 2 get rampColors 1 3 -1 roll put rampColors 2 3 -1 roll put } bind def %%EndProcSet %%BeginProcSet : leftrbox /leftrbox { rbox segbox copy pop rbox urx get rbox ulx get sub flipRatio mul dup segbox ulx get add segbox urx 3 -1 roll put segbox llx get add segbox lrx 3 -1 roll put } bind def %%EndProcSet %%BeginProcSet : rightrbox /rightrbox { rbox segbox copy pop rbox urx get rbox ulx get sub flipRatio mul dup segbox ulx get add segbox ulx 3 -1 roll put segbox llx get add segbox llx 3 -1 roll put } bind def %%EndProcSet %%BeginProcSet : drawslantramp /drawslantramp { segbox urx get segbox ulx get sub 3 div dup dup dup dup dup dup dup dup dup segbox ulx get add segbox urx 3 -1 roll put segbox llx get add segbox lrx 3 -1 roll put segbox aload pop 0 0 1 slantrampseg segbox astore pop segbox ulx get add segbox ulx 3 -1 roll put segbox llx get add segbox llx 3 -1 roll put segbox urx get add segbox urx 3 -1 roll put segbox lrx get add segbox lrx 3 -1 roll put segbox aload pop 1 1 2 slantrampseg segbox astore pop segbox ulx get add segbox ulx 3 -1 roll put segbox llx get add segbox llx 3 -1 roll put segbox urx get add segbox urx 3 -1 roll put segbox lrx get add segbox lrx 3 -1 roll put 2 2 3 slantrampseg }bind def %%EndProcSet %%BeginProcSet : tan /tan { dup sin exch cos div }bind def %%EndProcSet %%BeginProcSet : rampbox /rampbox { pbox top get dup rbox uly 3 -1 roll put rbox ury 3 -1 roll put pbox left get dup rbox ulx 3 -1 roll put rbox llx 3 -1 roll put pbox bottom get dup rbox lly 3 -1 roll put rbox lry 3 -1 roll put pbox right get dup rbox urx 3 -1 roll put rbox lrx 3 -1 roll put }bind def %%EndProcSet %%BeginProcSet : rampbox /LoadSegBox { 4 copy segbox llx 6 -1 roll put segbox lly 5 -1 roll put segbox lrx 4 -1 roll put segbox lry 6 -1 roll put segbox urx 5 -1 roll put segbox ury 3 -1 roll put segbox ulx 4 -1 roll put segbox uly 3 -1 roll put } bind def /TransToCenter { gsave flattenpath pathbbox grestore 2 index sub 2.0 div exch 3 index sub 2.0 div 4 -1 roll add 3 1 roll add translate } bind def /RotRampGrad { gsave TransToCenter -1.0 mul 180.0 add rotate flattenpath pathbbox clip newpath LoadSegBox flipRatio 1 lt dup{flipramp}if flipRatio 0 gt and { /flipRatio 1.0 flipRatio sub def segbox rbox copy pop leftrbox drawslantramp flipramp rightrbox drawslantramp } {drawslantramp} ifelse grestore } bind def /bbg { pbox exch get } bind def %%BeginProcSet : DR /DR { % Directional ramp /workingMatrix mstore def objectCord setmatrix flipramp gsave flattenpath pathbbox grestore pbox bottom 3 -1 roll put pbox right 3 -1 roll put pbox top 3 -1 roll put pbox left 3 -1 roll put rampAngle RotRampGrad RF workingMatrix setmatrix }bind def %%EndProcSet %%BeginProcSet : ramparc /ramparc { gsave circum rampdelta delta astore pop /rampPenW 60.0 nRampSteps div def /ang1 exch rampAngle sub def /ang2 rampPenW ang1 add def rampColors exch get aload mycurrentrgbcolor copy pop setrgbcolor 1 setlinewidth nRampSteps {ramparcseg}repeat grestore }bind def %%EndProcSet %%BeginProcSet : ramparcseg /ramparcseg { newpath rampcenter aload pop moveto rampcenter aload pop rampradius ang2 ang1 arcn fill /ang1 ang2 def /ang2 ang2 rampPenW add def delta aload pop adddelta }bind def %%EndProcSet /GetRadius { rbox urx get rbox llx get sub 2 div rampcenter 0 get abs add dup mul rbox lly get rbox ury get sub 2 div rampcenter 1 get abs add dup mul add sqrt } bind def %%BeginProcSet : circularRamp /circularRamp { rampbox /rampradius GetRadius def CalcCrcm flipramp 0 0 0 1 ramparc 1 60 1 2 ramparc 2 120 2 3 ramparc flipramp 0 180 0 1 ramparc 1 240 1 2 ramparc 2 300 2 3 ramparc }bind def %%EndProcSet /GetCircumf { 2.0 mul 3.1415926 mul } bind def /CalcCrcm { rampradius GetCircumf /circum exch 6.0 div def } bind def %%BeginProcSet : CR /CR { gsave clip MTC currentmatrix pop CTM setmatrix flattenpath pathbbox pbox bottom 3 -1 roll put pbox right 3 -1 roll put pbox top 3 -1 roll put pbox left 3 -1 roll put pbox left get pbox right get sub abs 2 div pbox left get add rampcenter 0 get add rampcenter 0 3 -1 roll put pbox top get pbox bottom get sub abs 2 div pbox top get add rampcenter 1 get add rampcenter 1 3 -1 roll put circularRamp MTC setmatrix grestore RF }bind def %%EndProcSet %%BeginProcSet : shaperamp /SBR { gsave clip /workingMatrix mstore def objectCord setmatrix flattenpath /BaseBox pathbbox 4 array astore def /len BaseBox 2 get BaseBox 0 get sub dup mul BaseBox 3 get BaseBox 1 get sub dup mul add sqrt 12.0 div def /EndBox BaseBox aload pop 3 -1 roll sub 3 1 roll exch sub /dbx exch def /dby exch def BaseBox aload pop pop pop /blly exch def /bllx exch def sbox 0 get 100.0 div dby mul blly add sbox 1 get 100.0 div dbx mul bllx add sbox 2 get 100.0 div dby mul blly add sbox 3 get 100.0 div dbx mul bllx add exch 4 -2 roll exch 4 -2 roll 4 array astore def BaseBox EndBox ShapeBurst workingMatrix setmatrix grestore } bind def %%EndProcSet /GetBoxCenter { 2 index sub 2.0 div 3 -1 roll add 3 1 roll 1 index sub 2.0 div add exch } bind def /GetInterBox { /boxInter exch def 4 1 7 { -1 roll 7 index } for sub boxInter mul 8 -1 roll add 7 1 roll sub boxInter mul 7 -1 roll add 6 1 roll sub boxInter mul 6 -1 roll add 5 1 roll sub boxInter mul 5 -1 roll add 4 1 roll } bind def /GetBoxCenterDeltas { GetBoxCenter 6 2 roll GetBoxCenter 3 -1 roll exch sub 3 1 roll sub exch } bind def /GetBoxCornerDeltas { pop pop 4 2 roll pop pop 3 -1 roll sub 3 1 roll exch sub exch } bind def %%BeginProcSet : getpath /getpath { /k 0 def {/k k 1 add def pop pop}{/k k 1 add def pop pop}{/k k 1 add def pop pop pop pop pop pop}{}pathforall /pfa k array def /k 0 def {{moveto} 3 array astore pfa k 3 -1 roll put /k k 1 add def} {{lineto} 3 array astore pfa k 3 -1 roll put /k k 1 add def} {{curveto} 7 array astore pfa k 3 -1 roll put /k k 1 add def} {}pathforall }bind def %%EndProcSet /ShapeBurst { getpath newpath /SBERect exch 4 array copy def /SBBRect exch 4 array copy def /interRect1 SBBRect aload pop SBERect aload pop .3333333 GetInterBox 4 array astore def /interRect2 SBBRect aload pop SBERect aload pop .6666666 GetInterBox 4 array astore def 0 0 1 SBBRect interRect1 ShapeBurstSeg msave interRect1 0 get interRect1 1 get translate SBBRect aload pop interRect1 aload pop GetBoxesRatio scale SBBRect 0 get -1.0 mul SBBRect 1 get -1.0 mul translate 1 1 2 interRect1 interRect2 ShapeBurstSeg mrestore msave interRect2 0 get interRect2 1 get translate SBBRect aload pop interRect2 aload pop GetBoxesRatio scale SBBRect 0 get -1.0 mul SBBRect 1 get -1.0 mul translate 2 2 3 interRect2 SBERect ShapeBurstSeg mrestore } bind def /ShapeBurstSeg { /sbr1 exch 4 array copy def /sbr0 exch 4 array copy def /blx sbr0 0 get def /bly sbr0 1 get def len rampdelta delta astore pop sbr0 aload pop sbr1 aload pop GetBoxesRatio /ratioY exch def /ratioX exch def sbr0 aload pop sbr1 aload pop GetBoxCornerDeltas /dlly exch nRampSteps div def /dllx exch nRampSteps div def /scaleStepX 1.0 ratioX sub nRampSteps div def /scaleStepY 1.0 ratioY sub nRampSteps div def /currentScaleX 1.0 scaleStepX sub def /currentScaleY 1.0 scaleStepY sub def /translationX blx dllx add def /translationY bly dlly add def /currentScaleX 1.0 def /currentScaleY 1.0 def /translationX blx def /translationY bly def rampColors exch get aload mycurrentrgbcolor copy pop setrgbcolor nRampSteps { msave translationX translationY translate currentScaleX currentScaleY scale blx -1.0 mul bly -1.0 mul translate pfa {aload pop exec} forall fill delta aload pop adddelta /translationX translationX dllx add def /translationY translationY dlly add def /currentScaleX currentScaleX scaleStepX sub def /currentScaleY currentScaleY scaleStepY sub def mrestore } repeat msave translationX translationY translate currentScaleX currentScaleY scale blx -1.0 mul bly -1.0 mul translate pfa {aload pop exec} forall fill mrestore } bind def %%EndProlog initmsaverestore /tctm matrix currentmatrix def tctm RoundMatrix setmatrix /patternMatrix mstore def 10 setmiterlimit 2 setlinecap newpath %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /backfill {/setcmykcolor where {begin gsave 0 0 0 0 setcmykcolor fill grestore end} {gsave 1 1 1 setrgbcolor fill grestore} ifelse} def /fillpat def /iSizeX 24 def /iSizeY 24 def /PF { /pat fillpat def DefaultPatternFont backfill 65 PatternFill } def 3.000 0 72.000 144.000 0.000 0.000 360.000 360.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {1.000 1.000 1.000 setrgbcolor } def /PF {gsave fill grestore} def 3.000 0 180.000 243.000 0.000 0.000 162.000 153.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 243.000 135.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 243.000 234.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 243.000 387.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 243.000 495.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 63.000 315.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 171.000 315.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 333.000 315.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 423.000 315.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 243.000 342.000 243.000 252.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 324.000 342.000 243.000 342.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 324.000 180.000 324.000 72.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 441.000 153.000 324.000 153.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 441.000 351.000 441.000 153.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 207.000 153.000 324.000 153.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 207.000 360.000 207.000 153.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 441.000 360.000 207.000 360.000 Line %@EndLine %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginLine /ArrowType{ } def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def /SS {setlinewidth SD stroke} def 2.000 441.000 351.000 441.000 360.000 Line %@EndLine %%Trailer end ---------------9903161209299 Content-Type: application/postscript; name="Fig6.epsf" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="Fig6.epsf" %!PS-Adobe-2.0 EPSF-1.2 %%Title: Fig3.epsf %%Creator: CLARIS EPSF Export Filter V1.0 %%CreationDate:12/30/98 5:39:35 p.m. %%BoundingBox: 94 319 458 792 %%QDBoundingBox: 94.500 0.000 457.500 473.000 %%DocumentProcessColors: Cyan Magenta Yellow Black %%ObjectsIncluded: tText=T tLine=T tRect=T tRRect=T tOval=T tArc=T tFree=T tPoly=T tBMap=T tNote=T tBez=T tPMap=T %%AttributesIncluded: kBaWPattType=T kPixPattType=T kGradientType=T %%EndComments /MAV 300 dict def MAV begin /useClip true def /top 0 def /left 1 def /bottom 2 def /right 3 def /CM 6 array def /CTM 6 array def /CTMR 6 array def /MTC 6 array def /blimit 1500 def /bcnt 0 def /rbox 8 array def /segbox 8 array def /bbox1 4 array def /c1 3 array def /c2 3 array def /d 3 array def /delta 3 array def /mycurrentrgbcolor 3 array def /ulx 0 def /uly 1 def /llx 2 def /lly 3 def /urx 4 def /ury 5 def /lrx 6 def /lry 7 def /sp [0 0] def /ep [0 0] def /bbox 4 array def /pbox 4 array def /scrnProc currentscreen 3 1 roll pop pop def /currentcolorscreen where { begin currentcolorscreen end 3 1 roll pop pop 4 2 roll pop pop 5 -2 roll pop pop 6 -2 roll pop pop /kProc exch def /bProc exch def /gProc exch def /rProc exch def } if /Max {2 copy gt {pop}{exch pop} ifelse} bind def /Min {2 copy lt {pop}{exch pop} ifelse} bind def /cellPenW 72.0 /currentcolorscreen where {begin currentcolorscreen end pop pop 10 1 roll pop pop 8 1 roll pop pop 6 1 roll pop pop Max Max Max } {currentscreen pop pop} ifelse div 2.0 div def %%BeginProcSet : rect /rect { /saveobj save def R PC PF LC SS saveobj restore } bind def %%EndProcSet %%BeginProcSet : R /R { newpath pbox astore pop 0 792 translate 1 -1 scale CTMR currentmatrix pop exch translate /objectCord mstore def pbox right get 2 div dup pbox left get exch sub pbox left 3 -1 roll put dup pbox right 3 -1 roll put pbox bottom get 2 div dup pbox top get exch sub pbox top 3 -1 roll put dup pbox bottom 3 -1 roll put translate CTM currentmatrix pop 57.3 mul rotate RT } bind def %%EndProcSet %%BeginProcSet : SaveScreenBW /SaveScreenBW { currentscreen /scrnProc exch def /scrnAngle exch def /scrnFreq exch def } bind def %%EndProcSet %%BeginProcSet : RestoreScreenBW /RestoreScreenBW { scrnFreq scrnAngle MAV /scrnProc get setscreen } bind def %%EndProcSet %%BeginProcSet : SetFreqAngleBW /SetFreqAngleBW { currentscreen 3 1 roll pop pop setscreen } bind def %%EndProcSet %%BeginProcSet : SaveScreenColor /SaveScreenColor { currentcolorscreen /grayProc exch def /grayAngle exch def /grayFreq exch def /bProc exch def /bAngle exch def /bFreq exch def /gProc exch def /gAngle exch def /gFreq exch def /rProc exch def /rAngle exch def /rFreq exch def } bind def %%EndProcSet %%BeginProcSet : RestoreColorScreen /RestoreColorScreen { rFreq rAngle MAV /rProc get gFreq gAngle MAV /gProc get bFreq bAngle MAV /bProc get grayFreq grayAngle MAV /grayProc get setcolorscreen } bind def %%EndProcSet %%BeginProcSet : SetFreqAngleColor /SetFreqAngleColor { currentcolorscreen 3 1 roll pop pop 4 2 roll pop pop 5 -2 roll pop pop 6 -2 roll pop pop 4 1 roll 6 1 roll 8 1 roll 10 1 roll setcolorscreen } bind def %%EndProcSet /initmsaverestore { userdict begin /mdict 10 dict def mdict begin /mindex -1 def /mstacksize 25 def /mstack mstacksize array def /incmindex { /mindex mindex 1 add def } bind def /decmindex { /mindex mindex 1 sub def } bind def /checkmindex { mindex 0 lt { (%ERROR: msave/mrestore stack underflow: Offending command 'mrestore' ) print flush stop } { mindex mstacksize ge { (%ERROR: msave/mrestore stack overflow: Offending command 'msave' ) print flush stop } if } ifelse } bind def /mpush { incmindex checkmindex mstack mindex 3 -1 roll put } bind def /mpop { checkmindex mstack mindex get decmindex } bind def end end } bind def /msave { mdict begin matrix currentmatrix mpush end } bind def /mrestore { mdict begin mpop setmatrix end } bind def /msavelevel { mdict begin mindex 1 add end } bind def /mstore { matrix currentmatrix } bind def /AutoSizeY { 0 0 pl dup 3 1 roll 4 -1 roll add pl exch pop exch sub } bind def /pl { transform 0.25 sub round 0.25 add exch 0.25 sub round 0.25 add exch itransform } bind def /pll { transform round exch round exch itransform } bind def /pr { dtransform round exch round exch idtransform } bind def /m { pl moveto } bind def /l { pl lineto } bind def /c { pl curveto } bind def /rm { pr rmoveto } bind def /rl { pr rlineto } bind def /ar { 5 -2 roll pl 5 2 roll arc } bind def /an { 5 -2 roll pl 5 2 roll arcn } bind def /MakePatternFont { /FontDict 20 dict def FontDict begin /FontName exch def /Encoding exch def /FontMatrix [1 0 0 1 0 0 ] def /FontType 3 def /FontBBox [ 0 0 1 1 ] def /PatternDict exch def /RenderPattern { patternDict exch get exec } bind def /BuildChar { exch begin 1 0 0 0 1 1 setcachedevice Encoding exch get RenderPattern end } bind def FontName FontDict definefont pop end } bind def /SnapToPattenGrid { exch dup 0 lt { 1 index sub } if 1 index div truncate mul } bind def /FillPatternString { dup length 1 sub 0 1 3 -1 roll { 2 index 2 index 3 -2 roll put } for pop pop } bind def /AutoSizeY { 0.0 exch dtransform round idtransform exch pop } bind def /AutoSizeX { 0.0 dtransform exch round exch idtransform pop } bind def /AutoCellSize { AutoSizeY exch AutoSizeX exch } bind def /CheckPath { false { pop pop pop true exit} { pop pop pop true exit} { pop pop pop pop pop pop pop true exit} { pop true exit} pathforall } bind def /PatternFill { % patternCharacter /patternString 1 string def /cm mstore def patternMatrix setmatrix 1 1 AutoCellSize dup 0 eq { pop 1} if exch dup 0 eq { pop 1} if exch /patternSize exch 24.0 mul def /PatternSizeX exch 24.0 mul patternString length mul def /flaterror 0 def patternString FillPatternString gsave flaterror 1 add setflat flattenpath pathbbox grestore psy add flaterror add psy SnapToPattenGrid exch psx add flaterror add psx SnapToPattenGrid 3 -1 roll flaterror sub psy SnapToPattenGrid 4 -1 roll flaterror sub psx SnapToPattenGrid 4 2 roll pll 4 2 roll pll /llxsnap exch def /llysnap exch def /urxsnap exch def /urysnap exch def gsave useClip true eq {clip}{eoclip} ifelse newpath /PatternFont findfont [psx 0.0 0.0 psy 0.0 0.0] makefont setfont llysnap patternSize urysnap { llxsnap exch moveto llxsnap PatternSizeX urxsnap { pop patternString show %currentpoint am } for } bind for grestore cm setmatrix } bind def % End 'PatternFill' /DefaultPatternFont { /cm mstore def patternMatrix setmatrix 1 1 AutoCellSize dup 0 eq { pop 1} if exch dup 0 eq { pop 1} if exch /psy exch iSizeY mul def /psx exch iSizeX mul def /patternDict 64 dict def patternDict begin /NotDef {} def /LiteDiagLines { iSizeX iSizeY false [iSizeX 0.0 0.0 iSizeY -1.0 mul 0.0 iSizeY] {pat} imagemask } bind def end /CustEncoding 256 array def 0 255 1 { CustEncoding exch /NotDef put } bind for CustEncoding 65 /LiteDiagLines put patternDict CustEncoding /PatternFont MakePatternFont /pathSegProc { strokepath CheckPath { 65 PatternFill newpath } if } bind def cm setmatrix } bind def /XRound { dup 3 -1 roll exch mul round exch div } bind def /RoundMatrix { /i 0 def dup { 100000.0 XRound 1 index exch i exch put /i i 1 add def } forall } bind def /GetBoxesRatio { 3 -1 roll sub 7 1 roll exch sub 6 1 roll 3 -1 roll sub 5 1 roll exch sub 4 1 roll 3 -1 roll div 3 1 roll exch div exch } bind def %%BeginProcSet : Text Attributes Procs /T {792 exch sub} bind def /sx 0 def /sy 0 def /ex 0 def /ey 0 def /lw 0 def /siz 0 def /U {gsave 0 setlinecap /lw siz 0.078125 mul def /ey exch neg def /ex exch def /sy exch neg def /sx exch def fontkind plain eq { lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto stroke } { currentdict /outlineFontSize known outlineFontSize 0 gt and { fontkind outline eq { /sy sy 0.0119444 siz mul sub def /ey ey 0.0119444 siz mul sub def gsave 1 1 1 setrgbcolor lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto stroke grestore lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto strokepath 0.0119444 siz mul setlinewidth stroke } if fontkind shadow eq fontkind outlineshadow eq or { /sy sy 0.0358332 siz mul sub def /ey ey 0.0358332 siz mul sub def lw setlinewidth lw 2 div sx add sy lw 2 div sub moveto lw 2 div ex add ey lw 2 div sub lineto stroke gsave 1 1 1 setrgbcolor lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto stroke grestore lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto strokepath 0.0119444 siz mul setlinewidth stroke } if } if } ifelse grestore} bind def /plain 1 def /outline 2 def /shadow 3 def /outlineshadow 4 def /fess { currentdict /outlineFontSize known { /outlineFontSize 2 index def } if findfont exch dup /siz exch def scalefont setfont } bind def /SHDW {gsave siz oldfontname fess siz 0.055 mul x add y siz 0.05 mul sub moveto c show grestore} def /NRML {gsave 1 1 1 setrgbcolor siz oldfontname fess x y moveto c show grestore siz /Outline fess x y moveto c show} def /S { fontkind plain eq {neg moveto show} if fontkind outline eq {neg /y exch def /x exch def /c exch def NRML} if fontkind shadow eq {neg /y exch def /x exch def /c exch def SHDW NRML} if fontkind outlineshadow eq {neg /y exch def /x exch def /c exch def SHDW NRML} if } bind def /F { /fontkind exch def fontkind plain eq {fess} if fontkind outline eq {dup /oldfontname exch def exch dup /siz exch def exch OLF} if fontkind shadow eq {dup /oldfontname exch def exch dup /siz exch def exch OLF} if fontkind outlineshadow eq {dup /oldfontname exch def exch dup /siz exch def exch OLF} if } bind def /makeoutlinedict 15 dict def /makeoutlinefont { makeoutlinedict begin /uniqueid exch def /strokewidth exch def /newfontname exch def /basefontname exch def FontDirectory basefontname known not { /basefontname /Times-Roman def } if /basefontdict basefontname findfont def /numentries basefontdict maxlength 1 add def basefontdict /UniqueID known not {/numentries numentries 1 add def} if /outfontdict numentries dict def basefontdict { exch dup /FID ne {exch outfontdict 3 1 roll put} {pop pop} ifelse }forall outfontdict /FontName newfontname put outfontdict /PaintType 2 put outfontdict /StrokeWidth strokewidth put outfontdict /UniqueID uniqueid put newfontname outfontdict definefont pop end }def /UID { findfont dup /UniqueID known {/UniqueID get 1 add} {pop 1} ifelse } def /OLF { dup /Outline 1000 62 div 4 -1 roll UID /outlineFontSize 5 index def makeoutlinefont /Outline findfont exch scalefont setfont } def /CopyEncoding { findfont /Encoding get dup length array /tarrayz exch def tarrayz 0 3 -1 roll putinterval tarrayz } bind def /Re-encode { dup length array copy /eap 0 def exch { dup type /integertype eq { /eap exch def } { 1 index exch eap exch put /eap eap 1 add def } ifelse } forall } bind def /EncodeFont { findfont dup length dict begin { 1 index /FID ne { def } { pop pop } ifelse } forall /FontName exch def /Encoding exch def FontName currentdict end definefont pop } bind def %%EndProcSet %%BeginProcSet : clip2pathbbox /clip2pathbbox { /magicNum linewidth 2 div 1 2 sqrt div mul def pathbbox /urymn exch magicNum add def /urxmn exch magicNum add def /llymn exch magicNum sub def /llxmn exch magicNum sub def newpath llxmn llymn moveto llxmn urymn lineto urxmn urymn lineto urxmn llymn lineto closepath clip newpath } bind def %%EndProcSet %% Line takes the following arguments: %% linewidth xEnd yEnd xStart yStart %%BeginProcSet : Line /Line { MAV /LC get length 0 ne { gsave newpath MAV /ArrowType get length 0 eq MAV /SD get length 0 eq and {2 setlinecap /UseClip {clip2pathbbox} def } {0 setlinecap /UseClip {} def } ifelse 0 792 translate 1 -1 scale CTM currentmatrix pop /yStart exch def /xStart exch def /yEnd exch def /xEnd exch def /linewidth exch def MAV /ArrowType get length 0 eq xStart xEnd ne yStart yEnd ne and and {xStart yStart moveto xEnd yEnd lineto UseClip xStart yStart moveto xEnd yEnd lineto} {xStart yStart moveto xEnd yEnd lineto} ifelse linewidth setlinewidth SD strokepath CheckPath {LC PF ArrowType} if grestore } {pop pop pop pop pop} ifelse } bind def %% Line takes the following arguments: %% linewidth xEnd yEnd xStart yStart %%BeginProcSet : ZeroLine /ZeroLine { gsave newpath MAV /ArrowType get length 0 ne { /UseClip {} def 0 792 translate 1 -1 scale pop pop pop pop pop CTM currentmatrix pop ArrowType } if grestore } bind def /CompensateForStroke { sin currentlinewidth mul exch cos currentlinewidth mul dup 0 translate 4 -1 roll exch 2.0 mul sub 3 1 roll 2.0 mul sub } bind def /arrowdict 10 dict def arrowdict begin /SwallowTail { newpath 0.0 0.0 moveto 1.0 -.5 lineto .666 0.0 lineto 1.0 .5 lineto closepath } bind def /Triangular { newpath 0.0 0.0 moveto 1.0 -.5 lineto 1.0 .5 lineto closepath } bind def /OpenTri { newpath 1.0 0.5 moveto 0.0 0.0 lineto 1.0 -0.5 lineto } bind def /ClosedTri { newpath 1.0 0.5 moveto 0.0 0.0 lineto 1.0 -0.5 lineto closepath } bind def /SlashBar { newpath 0.5 -.5 moveto -.5 0.5 lineto } bind def /Dot { newpath 0.5 0.0 moveto 0 0 1 0 360 arc closepath } bind def /ExtSlashBar { newpath 1.0 -.5 moveto 0.0 0.5 lineto } bind def end /ScaleArrowHead { 0 0 4 -2 roll 0 0 1 1 8 -4 roll GetBoxesRatio scale } bind def /DrawArrowHead { gsave [] 0 setdash currentpoint translate rotate { 4 copy gsave initmatrix 100 200 translate msave ScaleArrowHead pop arrowdict exch get exec mrestore strokepath 0 0 3 index 3 index pathbbox 8 4 roll GetBoxesRatio 4 2 roll grestore 3 index 1.0 exch sub 6 -1 roll { 2 index mul 0 translate }{ pop } ifelse msave ScaleArrowHead scale arrowdict exch get exec mrestore strokepath } { msave ScaleArrowHead arrowdict exch get exec mrestore } ifelse CheckPath { LC PF } if grestore } bind def %%EndProcSet %%BeginProcSet : SR /SR { pbox left get pbox top get moveto pbox right get pbox top get lineto pbox right get pbox bottom get lineto pbox left get pbox bottom get lineto closepath } bind def %%EndProcSet %%BeginProcSet : RR1 /RR1 { pbox top get pbox bottom get sub abs pbox left get pbox right get sub abs 2 copy lt { Min 2 div dup dup dup pbox left get add pbox left 3 -1 roll put pbox right get exch sub pbox right 3 -1 roll put pbox left get pbox bottom get moveto pbox right get 0 3 -1 roll 90 -90 arcn pbox left get 0 3 -1 roll -90 90 arcn closepath } { Min 2 div dup dup dup pbox bottom get exch sub pbox bottom 3 -1 roll put pbox top get add pbox top 3 -1 roll put pbox left get pbox bottom get moveto pbox left get add pbox top get 2 index 180 0 arc dup pbox left get add pbox bottom get 3 -1 roll 0 180 arc closepath } ifelse } bind def %%EndProcSet %%BeginProcSet : RR2 /RR2 { dup dup dup dup dup dup dup dup pbox top get add pbox top 3 -1 roll put pbox left get add pbox left 3 -1 roll put pbox bottom get exch sub pbox bottom 3 -1 roll put pbox right get exch sub pbox right 3 -1 roll put pbox bottom get add pbox left get exch moveto pbox right get pbox bottom get 3 -1 roll 90 0 arcn pbox right get pbox top get 3 -1 roll 0 270 arcn pbox left get pbox top get 3 -1 roll 270 180 arcn pbox left get pbox bottom get 3 -1 roll 180 90 arcn closepath } bind def %%EndProcSet %%BeginProcSet : E /E { 1.415 setmiterlimit CM currentmatrix pop pbox right get pbox left get sub abs dup pbox bottom get pbox top get sub abs dup 3 -1 roll lt {exch dup 3 -1 roll exch div 1 exch} {dup 3 -1 roll exch div 1} ifelse scale 0 0 3 -1 roll 2 div 0 360 arc closepath CM setmatrix } bind def %%EndProcSet %%BeginProcSet : A1 /A1 {msave pbox right get pbox left get sub abs dup pbox bottom get pbox top get sub abs dup 3 -1 roll lt {exch dup 3 -1 roll exch div 1 exch} {dup 3 -1 roll exch div 1} ifelse scale 0 0 3 -1 roll 2 div 5 -1 roll -90 add 5 -1 roll -90 add arcn mrestore} bind def %%EndProcSet %%BeginProcSet : A2 /A2 {msave 0 0 moveto A1 closepath mrestore} def %%EndProcSet %%BeginProcSet : BitMap /BitMap { /buffer ^1 string def ^2 ^5 2 div add 792 ^3 sub ^6 2 div add translate ^4 57.3 mul rotate 0 ^5 2 div sub 0 ^6 2 div sub translate ^5 ^6 scale ^5 ^6 ^7 [^5 0 0 -^6 0 ^6] {currentfile buffer readhexstring pop} image }bind def %%EndProcSet %%BeginProcSet : note /note { gsave pbox astore pop 0 792 translate 1 -1 scale CTM currentmatrix pop exch translate pbox right get pbox left get sub 2 div pbox bottom get pbox top get sub 2 div translate 57.3 mul rotate setlinewidth noteBody aload pop moveto noteBody length 2 div 1 sub cvi{lineto}repeat dogEar aload pop moveto dogEar length 2 div 1 sub cvi{lineto}repeat 0.992 0.975 0.507 setrgbcolor gsave fill grestore gsave newpath stickem aload pop moveto stickem length 2 div 1 sub cvi{lineto}repeat 0.760 0.760 0.760 setrgbcolor fill grestore 0 0 0 setrgbcolor stroke noteShadow aload pop moveto noteShadow length 2 div 1 sub cvi{lineto}repeat dogEarShadow aload pop moveto dogEarShadow length 2 div 1 sub cvi{lineto}repeat 0 0 0 setrgbcolor gsave stroke grestore fill grestore }bind def %%EndProcSet %%BeginProcSet : RGB4toGray4 /redTbl4 [0 0 1 1 1 1 2 2 3 3 3 4 4 4 5 5] def /greenTbl4 [0 1 1 2 2 3 3 4 4 5 6 6 7 7 7 8] def /blueTbl4 [0 0 0 0 1 1 1 1 1 1 1 1 1 2 2 2] def /RGB4toGray4 { currentfile RGBBuf readhexstring pop pop /i 0 def /j 0 def grayBuf length { RGBBuf i get dup -4 bitshift redTbl4 exch get exch 15 and greenTbl4 exch get add RGBBuf i 1 add get dup -4 bitshift blueTbl4 exch get 3 -1 roll add 4 bitshift exch 15 and redTbl4 exch get RGBBuf i 2 add get dup -4 bitshift greenTbl4 exch get 3 -1 roll add exch 15 and blueTbl4 exch get add or grayBuf j 3 -1 roll put /i i 3 add def /j j 1 add def } repeat grayBuf } bind def %%EndProcSet %%BeginProcSet : RGB8toGray8 /RGB8toGray8 { currentfile RGBBuf readhexstring pop pop /i 0 def /j 0 def grayBuf length { RGBBuf i get 0.33 mul RGBBuf i 1 add get 0.55 mul add RGBBuf i 2 add get 0.12 mul add round cvi grayBuf j 3 -1 roll put /i i 3 add def /j j 1 add def } repeat grayBuf } bind def %%EndProcSet %%BeginProcSet : RGB24toGray8 /RGB24toGray8 {RGB8toGray8} bind def %%EndProcSet %%BeginProcSet : RGB2toGray2 /redTbl2 [0 0 1 1] def /greenTbl2 [0 1 1 2] def /blueTbl2 [0 0 0 0] def /RGB2toGray2 { currentfile RGBBuf readhexstring pop pop /i 0 def /j 0 def grayBuf length { RGBBuf i get dup dup dup -6 bitshift redTbl2 exch get exch -4 bitshift 3 and greenTbl2 exch get add exch -2 bitshift 3 and blueTbl2 exch get add 6 bitshift exch 3 and redTbl2 exch get RGBBuf i 1 add get dup dup dup -6 bitshift greenTbl2 exch get exch -4 bitshift 3 and blueTbl2 exch get add 4 -1 roll add 4 bitshift 4 -1 roll or 3 1 roll -2 bitshift 3 and redTbl2 exch get exch 3 and greenTbl2 exch get add RGBBuf i 2 add get dup dup dup -6 bitshift blueTbl2 exch get 5 -1 roll add 2 bitshift 5 -1 roll or 4 1 roll -4 bitshift 3 and redTbl2 exch get exch -2 bitshift 3 and greenTbl2 exch get add exch 3 and greenTbl2 exch get add or grayBuf j 3 -1 roll put /i i 3 add def /j j 1 add def } repeat grayBuf } bind def %%EndProcSet %%EndProcSet %%BeginProcSet : RGB1toGray1 /RGB1toGray1 { currentfile RGBBuf readhexstring pop pop /i 0 def /j 0 def grayBuf length { RGBBuf i get dup dup 1 bitshift 128 and exch 3 bitshift 64 and or exch 5 bitshift 32 and or RGBBuf i 1 add get dup -1 bitshift 16 and exch 1 bitshift 8 and or or RGBBuf i 2 add get dup dup -5 bitshift 4 and exch -3 bitshift 2 and or exch -1 bitshift 1 and or or /i i 3 add def /j j 1 add def } repeat grayBuf } bind def %%EndProcSet %%BeginProcSet : RGB16toGray8 /RGB16toGray8 {RGB8toGray8} bind def %%EndProcSet %%BeginProcSet : BW /ScalePoint { 0 0 4 -2 roll 0 0 1 1 8 4 roll GetBoxesRatio scale } bind def /PointDict 4 dict def PointDict begin /XPoint { -.5 .5 moveto .5 -.5 lineto .5 .5 moveto -.5 -.5 lineto } bind def /DiamondPoint { 0.0 .5 moveto .5 0.0 lineto 0.0 -0.5 lineto -.5 0.0 lineto closepath } bind def /PlusPoint { 0.0 .5 moveto 0.0 -.5 lineto -.5 0.0 moveto .5 0.0 lineto } bind def /SquarePoint { -.5 .5 moveto .5 .5 lineto .5 -.5 lineto -.5 -.5 lineto closepath } bind def end /DrawPoint { gsave [] 0 setdash 0 setlinecap translate msave ScalePoint PointDict exch get exec mrestore 1.0 setlinewidth stroke grestore } bind def %%EndProcSet %%BeginProcSet : Wall object Procs %%EndProcSet %%BeginProcSet : Subscriber /Subscriber { msave R PC PF LC SS newpath mrestore } bind def %%EndProcSet /StripFromFront { dup length 2 index sub 3 1 roll exch 3 -1 roll getinterval } bind def /MakePathArray { /k 0 def {/k k 1 add def pop pop}{/k k 1 add def pop pop}{/k k 1 add def pop pop pop pop pop pop}{/k k 1 add def }pathforall k array /k 0 def {{moveto} 3 array astore 1 index k 3 -1 roll put /k k 1 add def} {{lineto} 3 array astore 1 index k 3 -1 roll put /k k 1 add def} {{curveto} 7 array astore 1 index k 3 -1 roll put /k k 1 add def} {{closepath} 1 array astore 1 index k 3 -1 roll put /k k 1 add def} pathforall }bind def /MakeFlatPathArray { /k 0 def {/k k 1 add def pop pop}{/k k 1 add def pop pop}{pop pop pop pop pop pop}{}pathforall k array /k 0 def {{moveto} 3 array astore 1 index k 3 -1 roll put /k k 1 add def} {{lineto} 3 array astore 1 index k 3 -1 roll put /k k 1 add def} { pop pop pop pop pop pop} {} pathforall }bind def /FractionalLine { 2 index sub .00001 mul exch 3 index sub .00001 mul 4 -1 roll add 3 1 roll add } bind def /calcLineLength { exch 4 -1 roll sub dup mul 3 1 roll exch sub dup mul add sqrt } bind def /InitTotalLineLength { /oldY exch def /oldX exch def theDash aload pop currentLineLength add setdash } bind def /AccumeLineLength { 3 copy pop 2 copy oldX oldY 4 2 roll calcLineLength /segmentLength exch def /currentLineLength currentLineLength segmentLength add def /oldY exch def /oldX exch def } bind def /DecumeLastLineLength { /currentLineLength currentLineLength segmentLength sub def } bind def /DrawFlattendSegment { /pointCount 2 def dup 0 lt { pop 0 } if fpc 3 1 roll 2 index 1 index gt { 2 copy get dup length dup 3 eq { pop dup 0 get exch 1 get 2 copy InitTotalLineLength m } { } ifelse } { pop 1 index } ifelse dup 1 add 3 index exch sub dup 10 gt { pop 10} if { 1 add 2 copy get aload pop AccumeLineLength exec } repeat 3 1 roll pop pop DecumeLastLineLength } bind def /IncFPC { fpc add /fpc exch def } bind def /DrawFlatPathArray { fpc 0 { dup 2 index 1 sub lt { flatPathArray exch newpath 1 sub DrawFlattendSegment gsave pathSegProc grestore newpath } { pop pop exit } ifelse } loop } bind def /RecordFirstSubSegment { closepathArray 0 pathArray 0 get put closepathArray 1 pathArray 0 get aload pop pop pathArray 1 get dup length 3 eq { aload pop pop } { newpath 0 0 moveto aload pop exec /segmentArray flattenpath MakeFlatPathArray def segmentArray 1 get aload pop pop } ifelse FractionalLine {lineto} 3 array astore put } bind def /AppendClosePath { closepathArray 0 get 2 {lineto} put flatPathArray fpc closepathArray 0 get put 1 IncFPC flatPathArray fpc closepathArray 1 get put 1 IncFPC } bind def /RecordCurrentDash { /theDash currentdash 2 array astore def /currentLineLength 0 def } bind def /PatternStroke { 0 setlinecap RecordCurrentDash /saveFlat currentflat def .5 setflat /pathArray MakePathArray def /closepathArray 2 array def /pathLength pathArray length def /flatPathArray 513 array def /currentLineLength 0 def /fpc 0 def pathArray pathLength 1 sub get length 1 eq { /usingClosepath true def RecordFirstSubSegment /pathLength pathLength 1 sub def } { /usingClosepath false def } ifelse 0 1 pathLength 1 sub { pathArray exch get dup length 3 eq { fpc 1 add 512 ge { DrawFlatPathArray fpc 2 ge { flatPathArray flatPathArray fpc 2 sub get 0 put flatPathArray flatPathArray fpc 1 sub get 1 put /fpc 2 def }{ /fpc 0 def } ifelse } if flatPathArray exch fpc exch put 1 IncFPC } { dup length 7 eq { newpath /nToStrip 0 def fpc 1 gt { flatPathArray fpc 2 sub get aload pop pop m flatPathArray fpc 1 sub get aload pop exec /nToStrip 2 def } { fpc 1 eq { flatPathArray fpc 1 sub get aload pop exec /nToStrip 2 def } if } ifelse aload pop exec /segmentArray flattenpath MakeFlatPathArray def /segmentArray nToStrip segmentArray StripFromFront def segmentArray length fpc add 512 lt { flatPathArray fpc segmentArray putinterval segmentArray length IncFPC } { DrawFlatPathArray fpc 1 gt { flatPathArray flatPathArray fpc 2 sub get 0 exch put flatPathArray flatPathArray fpc 1 sub get 1 exch put /fpc 2 def }{ /fpc 0 def } ifelse segmentArray length 512 lt { flatPathArray fpc segmentArray putinterval segmentArray length IncFPC } { segmentArray length /exitLoop false def 0 { 2 copy sub dup 500 gt { pop 500 } { /exitLoop true def } ifelse segmentArray 2 index 2 index getinterval flatPathArray fpc 3 -1 roll putinterval dup IncFPC add exitLoop { exit } { DrawFlatPathArray fpc 1 gt { flatPathArray flatPathArray fpc 2 sub get 0 exch put flatPathArray flatPathArray fpc 1 sub get 1 exch put /fpc 2 def }{ /fpc 0 def } ifelse } ifelse } loop } ifelse } ifelse } if } ifelse } for fpc 0 gt { usingClosepath { AppendClosePath } if DrawFlatPathArray } if saveFlat setflat } bind def %%BeginProcSet : rampdelta /rampdelta { /len 0 3 -1 roll add def /i2 0 3 -1 roll add def /i1 0 3 -1 roll add def /nRampSteps len cellPenW div cvi 1 add dup 512 gt {pop 512} if def /rampPenW len nRampSteps div def rampColors i1 get aload pop c1 astore pop rampColors i2 get aload pop c2 astore pop c2 0 get c1 0 get sub nRampSteps div d 0 3 -1 roll put c2 1 get c1 1 get sub nRampSteps div d 1 3 -1 roll put c2 2 get c1 2 get sub nRampSteps div d 2 3 -1 roll put d aload pop } bind def %%EndProcSet %%BeginProcSet : adddelta /adddelta { d astore pop mycurrentrgbcolor c1 copy pop c1 0 get d 0 get add c2 0 3 -1 roll put c1 1 get d 1 get add c2 1 3 -1 roll put c1 2 get d 2 get add c2 2 3 -1 roll put c2 aload pop setrgbcolor c2 mycurrentrgbcolor copy pop } bind def %%EndProcSet %%BeginProcSet : rampline /rampline { segbox ulx get rampPenW add segbox ulx 3 -1 roll put segbox llx get rampPenW add segbox llx 3 -1 roll put segbox ulx get segbox uly get moveto segbox llx get segbox lly get lineto delta aload pop adddelta stroke }bind def %%EndProcSet %%BeginProcSet : slantrampseg /slantrampseg { gsave newpath segbox ulx get segbox urx get sub abs rampdelta delta astore pop segbox ulx get rampPenW .5 mul sub segbox ulx 3 -1 roll put segbox llx get rampPenW .5 mul sub segbox llx 3 -1 roll put rampColors exch get aload mycurrentrgbcolor copy pop setrgbcolor rampPenW setlinewidth nRampSteps {rampline} repeat grestore }bind def %%EndProcSet %%BeginProcSet : flipramp /flipramp { rampColors 0 get rampColors 3 get rampColors 0 3 -1 roll put rampColors 3 3 -1 roll put rampColors 1 get rampColors 2 get rampColors 1 3 -1 roll put rampColors 2 3 -1 roll put } bind def %%EndProcSet %%BeginProcSet : leftrbox /leftrbox { rbox segbox copy pop rbox urx get rbox ulx get sub flipRatio mul dup segbox ulx get add segbox urx 3 -1 roll put segbox llx get add segbox lrx 3 -1 roll put } bind def %%EndProcSet %%BeginProcSet : rightrbox /rightrbox { rbox segbox copy pop rbox urx get rbox ulx get sub flipRatio mul dup segbox ulx get add segbox ulx 3 -1 roll put segbox llx get add segbox llx 3 -1 roll put } bind def %%EndProcSet %%BeginProcSet : drawslantramp /drawslantramp { segbox urx get segbox ulx get sub 3 div dup dup dup dup dup dup dup dup dup segbox ulx get add segbox urx 3 -1 roll put segbox llx get add segbox lrx 3 -1 roll put segbox aload pop 0 0 1 slantrampseg segbox astore pop segbox ulx get add segbox ulx 3 -1 roll put segbox llx get add segbox llx 3 -1 roll put segbox urx get add segbox urx 3 -1 roll put segbox lrx get add segbox lrx 3 -1 roll put segbox aload pop 1 1 2 slantrampseg segbox astore pop segbox ulx get add segbox ulx 3 -1 roll put segbox llx get add segbox llx 3 -1 roll put segbox urx get add segbox urx 3 -1 roll put segbox lrx get add segbox lrx 3 -1 roll put 2 2 3 slantrampseg }bind def %%EndProcSet %%BeginProcSet : tan /tan { dup sin exch cos div }bind def %%EndProcSet %%BeginProcSet : rampbox /rampbox { pbox top get dup rbox uly 3 -1 roll put rbox ury 3 -1 roll put pbox left get dup rbox ulx 3 -1 roll put rbox llx 3 -1 roll put pbox bottom get dup rbox lly 3 -1 roll put rbox lry 3 -1 roll put pbox right get dup rbox urx 3 -1 roll put rbox lrx 3 -1 roll put }bind def %%EndProcSet %%BeginProcSet : rampbox /LoadSegBox { 4 copy segbox llx 6 -1 roll put segbox lly 5 -1 roll put segbox lrx 4 -1 roll put segbox lry 6 -1 roll put segbox urx 5 -1 roll put segbox ury 3 -1 roll put segbox ulx 4 -1 roll put segbox uly 3 -1 roll put } bind def /TransToCenter { gsave flattenpath pathbbox grestore 2 index sub 2.0 div exch 3 index sub 2.0 div 4 -1 roll add 3 1 roll add translate } bind def /RotRampGrad { gsave TransToCenter -1.0 mul 180.0 add rotate flattenpath pathbbox clip newpath LoadSegBox flipRatio 1 lt dup{flipramp}if flipRatio 0 gt and { /flipRatio 1.0 flipRatio sub def segbox rbox copy pop leftrbox drawslantramp flipramp rightrbox drawslantramp } {drawslantramp} ifelse grestore } bind def /bbg { pbox exch get } bind def %%BeginProcSet : DR /DR { % Directional ramp /workingMatrix mstore def objectCord setmatrix flipramp gsave flattenpath pathbbox grestore pbox bottom 3 -1 roll put pbox right 3 -1 roll put pbox top 3 -1 roll put pbox left 3 -1 roll put rampAngle RotRampGrad RF workingMatrix setmatrix }bind def %%EndProcSet %%BeginProcSet : ramparc /ramparc { gsave circum rampdelta delta astore pop /rampPenW 60.0 nRampSteps div def /ang1 exch rampAngle sub def /ang2 rampPenW ang1 add def rampColors exch get aload mycurrentrgbcolor copy pop setrgbcolor 1 setlinewidth nRampSteps {ramparcseg}repeat grestore }bind def %%EndProcSet %%BeginProcSet : ramparcseg /ramparcseg { newpath rampcenter aload pop moveto rampcenter aload pop rampradius ang2 ang1 arcn fill /ang1 ang2 def /ang2 ang2 rampPenW add def delta aload pop adddelta }bind def %%EndProcSet /GetRadius { rbox urx get rbox llx get sub 2 div rampcenter 0 get abs add dup mul rbox lly get rbox ury get sub 2 div rampcenter 1 get abs add dup mul add sqrt } bind def %%BeginProcSet : circularRamp /circularRamp { rampbox /rampradius GetRadius def CalcCrcm flipramp 0 0 0 1 ramparc 1 60 1 2 ramparc 2 120 2 3 ramparc flipramp 0 180 0 1 ramparc 1 240 1 2 ramparc 2 300 2 3 ramparc }bind def %%EndProcSet /GetCircumf { 2.0 mul 3.1415926 mul } bind def /CalcCrcm { rampradius GetCircumf /circum exch 6.0 div def } bind def %%BeginProcSet : CR /CR { gsave clip MTC currentmatrix pop CTM setmatrix flattenpath pathbbox pbox bottom 3 -1 roll put pbox right 3 -1 roll put pbox top 3 -1 roll put pbox left 3 -1 roll put pbox left get pbox right get sub abs 2 div pbox left get add rampcenter 0 get add rampcenter 0 3 -1 roll put pbox top get pbox bottom get sub abs 2 div pbox top get add rampcenter 1 get add rampcenter 1 3 -1 roll put circularRamp MTC setmatrix grestore RF }bind def %%EndProcSet %%BeginProcSet : shaperamp /SBR { gsave clip /workingMatrix mstore def objectCord setmatrix flattenpath /BaseBox pathbbox 4 array astore def /len BaseBox 2 get BaseBox 0 get sub dup mul BaseBox 3 get BaseBox 1 get sub dup mul add sqrt 12.0 div def /EndBox BaseBox aload pop 3 -1 roll sub 3 1 roll exch sub /dbx exch def /dby exch def BaseBox aload pop pop pop /blly exch def /bllx exch def sbox 0 get 100.0 div dby mul blly add sbox 1 get 100.0 div dbx mul bllx add sbox 2 get 100.0 div dby mul blly add sbox 3 get 100.0 div dbx mul bllx add exch 4 -2 roll exch 4 -2 roll 4 array astore def BaseBox EndBox ShapeBurst workingMatrix setmatrix grestore } bind def %%EndProcSet /GetBoxCenter { 2 index sub 2.0 div 3 -1 roll add 3 1 roll 1 index sub 2.0 div add exch } bind def /GetInterBox { /boxInter exch def 4 1 7 { -1 roll 7 index } for sub boxInter mul 8 -1 roll add 7 1 roll sub boxInter mul 7 -1 roll add 6 1 roll sub boxInter mul 6 -1 roll add 5 1 roll sub boxInter mul 5 -1 roll add 4 1 roll } bind def /GetBoxCenterDeltas { GetBoxCenter 6 2 roll GetBoxCenter 3 -1 roll exch sub 3 1 roll sub exch } bind def /GetBoxCornerDeltas { pop pop 4 2 roll pop pop 3 -1 roll sub 3 1 roll exch sub exch } bind def %%BeginProcSet : getpath /getpath { /k 0 def {/k k 1 add def pop pop}{/k k 1 add def pop pop}{/k k 1 add def pop pop pop pop pop pop}{}pathforall /pfa k array def /k 0 def {{moveto} 3 array astore pfa k 3 -1 roll put /k k 1 add def} {{lineto} 3 array astore pfa k 3 -1 roll put /k k 1 add def} {{curveto} 7 array astore pfa k 3 -1 roll put /k k 1 add def} {}pathforall }bind def %%EndProcSet /ShapeBurst { getpath newpath /SBERect exch 4 array copy def /SBBRect exch 4 array copy def /interRect1 SBBRect aload pop SBERect aload pop .3333333 GetInterBox 4 array astore def /interRect2 SBBRect aload pop SBERect aload pop .6666666 GetInterBox 4 array astore def 0 0 1 SBBRect interRect1 ShapeBurstSeg msave interRect1 0 get interRect1 1 get translate SBBRect aload pop interRect1 aload pop GetBoxesRatio scale SBBRect 0 get -1.0 mul SBBRect 1 get -1.0 mul translate 1 1 2 interRect1 interRect2 ShapeBurstSeg mrestore msave interRect2 0 get interRect2 1 get translate SBBRect aload pop interRect2 aload pop GetBoxesRatio scale SBBRect 0 get -1.0 mul SBBRect 1 get -1.0 mul translate 2 2 3 interRect2 SBERect ShapeBurstSeg mrestore } bind def /ShapeBurstSeg { /sbr1 exch 4 array copy def /sbr0 exch 4 array copy def /blx sbr0 0 get def /bly sbr0 1 get def len rampdelta delta astore pop sbr0 aload pop sbr1 aload pop GetBoxesRatio /ratioY exch def /ratioX exch def sbr0 aload pop sbr1 aload pop GetBoxCornerDeltas /dlly exch nRampSteps div def /dllx exch nRampSteps div def /scaleStepX 1.0 ratioX sub nRampSteps div def /scaleStepY 1.0 ratioY sub nRampSteps div def /currentScaleX 1.0 scaleStepX sub def /currentScaleY 1.0 scaleStepY sub def /translationX blx dllx add def /translationY bly dlly add def /currentScaleX 1.0 def /currentScaleY 1.0 def /translationX blx def /translationY bly def rampColors exch get aload mycurrentrgbcolor copy pop setrgbcolor nRampSteps { msave translationX translationY translate currentScaleX currentScaleY scale blx -1.0 mul bly -1.0 mul translate pfa {aload pop exec} forall fill delta aload pop adddelta /translationX translationX dllx add def /translationY translationY dlly add def /currentScaleX currentScaleX scaleStepX sub def /currentScaleY currentScaleY scaleStepY sub def mrestore } repeat msave translationX translationY translate currentScaleX currentScaleY scale blx -1.0 mul bly -1.0 mul translate pfa {aload pop exec} forall fill mrestore } bind def %%EndProlog initmsaverestore /tctm matrix currentmatrix def tctm RoundMatrix setmatrix /patternMatrix mstore def 10 setmiterlimit 2 setlinecap newpath %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /backfill {/setcmykcolor where {begin gsave 0 0 0 0 setcmykcolor fill grestore end} {gsave 1 1 1 setrgbcolor fill grestore} ifelse} def /fillpat def /iSizeX 24 def /iSizeY 24 def /PF { /pat fillpat def DefaultPatternFont backfill 65 PatternFill } def 3.000 0 51.000 96.000 0.000 0.000 360.000 360.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {1.000 1.000 1.000 setrgbcolor } def /PF {gsave fill grestore} def 3.000 0 150.000 195.000 0.000 0.000 162.000 162.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 42.000 267.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 141.000 267.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 303.000 267.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 402.000 267.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginText save %%IncludeFont: Helvetica-Bold [ 39/quotesingle 96/grave 128/Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis /Udieresis/aacute/agrave/acircumflex/adieresis/atilde/aring/ccedilla/eacute /egrave/ecircumflex/edieresis/iacute/igrave/icircumflex/idieresis/ntilde /oacute/ograve/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex /udieresis/dagger/degree/cent/sterling/section/bullet/paragraph/germandbls /registered/copyright/trademark/acute/dieresis/.notdef/AE/Oslash /.notdef/plusminus/.notdef/.notdef/yen/mu/.notdef/.notdef /.notdef/.notdef/.notdef/ordfeminine/ordmasculine/.notdef/ae/oslash /questiondown/exclamdown/logicalnot/.notdef/florin/.notdef/.notdef /guillemotleft/guillemotright/ellipsis/.notdef/Agrave/Atilde/Otilde/OE/oe /endash/emdash/quotedblleft/quotedblright/quoteleft/quoteright/divide /.notdef/ydieresis/Ydieresis/fraction/currency/guilsinglleft/guilsinglright /fi/fl/daggerdbl/periodcentered/quotesinglbase/quotedblbase/perthousand /Acircumflex/Ecircumflex/Aacute/Edieresis/Egrave/Iacute/Icircumflex /Idieresis/Igrave/Oacute/Ocircumflex/.notdef/Ograve/Uacute/Ucircumflex /Ugrave/dotlessi/circumflex/tilde/macron/breve/dotaccent/ring/cedilla /hungarumlaut/ogonek/caron] StandardEncoding Re-encode /_Helvetica-Bold /Helvetica-Bold EncodeFont %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginRect /RT {SR} def /LC {} def /SS {pop} def /PF {} def /PC {} def 1 0 0.000 252.000 0.000 0.000 36.000 45.000 rect %@EndRect gsave 274.500 18.000 T translate 0.0 rotate 1 1 scale 36.000 (_Helvetica-Bold) plain F 0.000 0.000 0.000 setrgbcolor ( ) -22.500 11.000 S (1) -12.498 11.000 S grestore %@EndText %@BeginText restore save %%IncludeFont: Helvetica [ 39/quotesingle 96/grave 128/Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis /Udieresis/aacute/agrave/acircumflex/adieresis/atilde/aring/ccedilla/eacute /egrave/ecircumflex/edieresis/iacute/igrave/icircumflex/idieresis/ntilde /oacute/ograve/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex /udieresis/dagger/degree/cent/sterling/section/bullet/paragraph/germandbls /registered/copyright/trademark/acute/dieresis/.notdef/AE/Oslash /.notdef/plusminus/.notdef/.notdef/yen/mu/.notdef/.notdef /.notdef/.notdef/.notdef/ordfeminine/ordmasculine/.notdef/ae/oslash /questiondown/exclamdown/logicalnot/.notdef/florin/.notdef/.notdef /guillemotleft/guillemotright/ellipsis/.notdef/Agrave/Atilde/Otilde/OE/oe /endash/emdash/quotedblleft/quotedblright/quoteleft/quoteright/divide /.notdef/ydieresis/Ydieresis/fraction/currency/guilsinglleft/guilsinglright /fi/fl/daggerdbl/periodcentered/quotesinglbase/quotedblbase/perthousand /Acircumflex/Ecircumflex/Aacute/Edieresis/Egrave/Iacute/Icircumflex /Idieresis/Igrave/Oacute/Ocircumflex/.notdef/Ograve/Uacute/Ucircumflex /Ugrave/dotlessi/circumflex/tilde/macron/breve/dotaccent/ring/cedilla /hungarumlaut/ogonek/caron] StandardEncoding Re-encode /_Helvetica /Helvetica EncodeFont %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginRect /RT {SR} def /LC {} def /SS {pop} def /PF {} def /PC {} def 1 0 162.000 243.000 0.000 0.000 50.000 63.000 rect %@EndRect gsave 274.500 187.000 T translate 0.0 rotate 1 1 scale 12.000 (_Helvetica) plain F 0.000 0.000 0.000 setrgbcolor ( ) -31.500 -15.000 S ( ) -28.166 -15.000 S ( ) -24.832 -15.000 S ( ) -21.498 -15.000 S ( ) -18.164 -15.000 S ( ) -14.830 -15.000 S 0.000 0.000 0.000 setrgbcolor ( ) -31.500 18.000 S ( ) -28.166 18.000 S ( ) -24.832 18.000 S ( ) -21.498 18.000 S ( ) -18.164 18.000 S ( ) -14.830 18.000 S ( ) -11.496 18.000 S grestore restore save gsave 274.500 187.000 T translate 0.0 rotate 1 1 scale %%IncludeFont: Helvetica-Bold [ 39/quotesingle 96/grave 128/Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis /Udieresis/aacute/agrave/acircumflex/adieresis/atilde/aring/ccedilla/eacute /egrave/ecircumflex/edieresis/iacute/igrave/icircumflex/idieresis/ntilde /oacute/ograve/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex /udieresis/dagger/degree/cent/sterling/section/bullet/paragraph/germandbls /registered/copyright/trademark/acute/dieresis/.notdef/AE/Oslash /.notdef/plusminus/.notdef/.notdef/yen/mu/.notdef/.notdef /.notdef/.notdef/.notdef/ordfeminine/ordmasculine/.notdef/ae/oslash /questiondown/exclamdown/logicalnot/.notdef/florin/.notdef/.notdef /guillemotleft/guillemotright/ellipsis/.notdef/Agrave/Atilde/Otilde/OE/oe /endash/emdash/quotedblleft/quotedblright/quoteleft/quoteright/divide /.notdef/ydieresis/Ydieresis/fraction/currency/guilsinglleft/guilsinglright /fi/fl/daggerdbl/periodcentered/quotesinglbase/quotedblbase/perthousand /Acircumflex/Ecircumflex/Aacute/Edieresis/Egrave/Iacute/Icircumflex /Idieresis/Igrave/Oacute/Ocircumflex/.notdef/Ograve/Uacute/Ucircumflex /Ugrave/dotlessi/circumflex/tilde/macron/breve/dotaccent/ring/cedilla /hungarumlaut/ogonek/caron] StandardEncoding Re-encode /_Helvetica-Bold /Helvetica-Bold EncodeFont 36.000 (_Helvetica-Bold) plain F 0.000 0.000 0.000 setrgbcolor (2) -8.162 18.000 S grestore %@EndText %@BeginText restore save %%IncludeFont: Helvetica [ 39/quotesingle 96/grave 128/Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis /Udieresis/aacute/agrave/acircumflex/adieresis/atilde/aring/ccedilla/eacute /egrave/ecircumflex/edieresis/iacute/igrave/icircumflex/idieresis/ntilde /oacute/ograve/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex /udieresis/dagger/degree/cent/sterling/section/bullet/paragraph/germandbls /registered/copyright/trademark/acute/dieresis/.notdef/AE/Oslash /.notdef/plusminus/.notdef/.notdef/yen/mu/.notdef/.notdef /.notdef/.notdef/.notdef/ordfeminine/ordmasculine/.notdef/ae/oslash /questiondown/exclamdown/logicalnot/.notdef/florin/.notdef/.notdef /guillemotleft/guillemotright/ellipsis/.notdef/Agrave/Atilde/Otilde/OE/oe /endash/emdash/quotedblleft/quotedblright/quoteleft/quoteright/divide /.notdef/ydieresis/Ydieresis/fraction/currency/guilsinglleft/guilsinglright /fi/fl/daggerdbl/periodcentered/quotesinglbase/quotedblbase/perthousand /Acircumflex/Ecircumflex/Aacute/Edieresis/Egrave/Iacute/Icircumflex /Idieresis/Igrave/Oacute/Ocircumflex/.notdef/Ograve/Uacute/Ucircumflex /Ugrave/dotlessi/circumflex/tilde/macron/breve/dotaccent/ring/cedilla /hungarumlaut/ogonek/caron] StandardEncoding Re-encode /_Helvetica /Helvetica EncodeFont %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginRect /RT {SR} def /LC {} def /SS {pop} def /PF {} def /PC {} def 1 0 243.000 252.000 0.000 0.000 50.000 45.000 rect %@EndRect gsave 274.500 268.000 T translate 0.0 rotate 1 1 scale 12.000 (_Helvetica) plain F 0.000 0.000 0.000 setrgbcolor ( ) -22.500 18.000 S ( ) -19.166 18.000 S ( ) -15.832 18.000 S ( ) -12.498 18.000 S grestore restore save gsave 274.500 268.000 T translate 0.0 rotate 1 1 scale %%IncludeFont: Helvetica-Bold [ 39/quotesingle 96/grave 128/Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis /Udieresis/aacute/agrave/acircumflex/adieresis/atilde/aring/ccedilla/eacute /egrave/ecircumflex/edieresis/iacute/igrave/icircumflex/idieresis/ntilde /oacute/ograve/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex /udieresis/dagger/degree/cent/sterling/section/bullet/paragraph/germandbls /registered/copyright/trademark/acute/dieresis/.notdef/AE/Oslash /.notdef/plusminus/.notdef/.notdef/yen/mu/.notdef/.notdef /.notdef/.notdef/.notdef/ordfeminine/ordmasculine/.notdef/ae/oslash /questiondown/exclamdown/logicalnot/.notdef/florin/.notdef/.notdef /guillemotleft/guillemotright/ellipsis/.notdef/Agrave/Atilde/Otilde/OE/oe /endash/emdash/quotedblleft/quotedblright/quoteleft/quoteright/divide /.notdef/ydieresis/Ydieresis/fraction/currency/guilsinglleft/guilsinglright /fi/fl/daggerdbl/periodcentered/quotesinglbase/quotedblbase/perthousand /Acircumflex/Ecircumflex/Aacute/Edieresis/Egrave/Iacute/Icircumflex /Idieresis/Igrave/Oacute/Ocircumflex/.notdef/Ograve/Uacute/Ucircumflex /Ugrave/dotlessi/circumflex/tilde/macron/breve/dotaccent/ring/cedilla /hungarumlaut/ogonek/caron] StandardEncoding Re-encode /_Helvetica-Bold /Helvetica-Bold EncodeFont 36.000 (_Helvetica-Bold) plain F 0.000 0.000 0.000 setrgbcolor (3) -9.164 18.000 S grestore %@EndText %@BeginText restore save %%IncludeFont: Helvetica [ 39/quotesingle 96/grave 128/Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis /Udieresis/aacute/agrave/acircumflex/adieresis/atilde/aring/ccedilla/eacute /egrave/ecircumflex/edieresis/iacute/igrave/icircumflex/idieresis/ntilde /oacute/ograve/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex /udieresis/dagger/degree/cent/sterling/section/bullet/paragraph/germandbls /registered/copyright/trademark/acute/dieresis/.notdef/AE/Oslash /.notdef/plusminus/.notdef/.notdef/yen/mu/.notdef/.notdef /.notdef/.notdef/.notdef/ordfeminine/ordmasculine/.notdef/ae/oslash /questiondown/exclamdown/logicalnot/.notdef/florin/.notdef/.notdef /guillemotleft/guillemotright/ellipsis/.notdef/Agrave/Atilde/Otilde/OE/oe /endash/emdash/quotedblleft/quotedblright/quoteleft/quoteright/divide /.notdef/ydieresis/Ydieresis/fraction/currency/guilsinglleft/guilsinglright /fi/fl/daggerdbl/periodcentered/quotesinglbase/quotedblbase/perthousand /Acircumflex/Ecircumflex/Aacute/Edieresis/Egrave/Iacute/Icircumflex /Idieresis/Igrave/Oacute/Ocircumflex/.notdef/Ograve/Uacute/Ucircumflex /Ugrave/dotlessi/circumflex/tilde/macron/breve/dotaccent/ring/cedilla /hungarumlaut/ogonek/caron] StandardEncoding Re-encode /_Helvetica /Helvetica EncodeFont %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginRect /RT {SR} def /LC {} def /SS {pop} def /PF {} def /PC {} def 1 0 423.000 243.000 0.000 0.000 50.000 63.000 rect %@EndRect gsave 274.500 448.000 T translate 0.0 rotate 1 1 scale 12.000 (_Helvetica) plain F 0.000 0.000 0.000 setrgbcolor ( ) -31.500 -15.000 S ( ) -28.166 -15.000 S ( ) -24.832 -15.000 S ( ) -21.498 -15.000 S 0.000 0.000 0.000 setrgbcolor ( ) -31.500 18.000 S ( ) -28.166 18.000 S ( ) -24.832 18.000 S ( ) -21.498 18.000 S ( ) -18.164 18.000 S ( ) -14.830 18.000 S grestore restore save gsave 274.500 448.000 T translate 0.0 rotate 1 1 scale %%IncludeFont: Helvetica-Bold [ 39/quotesingle 96/grave 128/Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis /Udieresis/aacute/agrave/acircumflex/adieresis/atilde/aring/ccedilla/eacute /egrave/ecircumflex/edieresis/iacute/igrave/icircumflex/idieresis/ntilde /oacute/ograve/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex /udieresis/dagger/degree/cent/sterling/section/bullet/paragraph/germandbls /registered/copyright/trademark/acute/dieresis/.notdef/AE/Oslash /.notdef/plusminus/.notdef/.notdef/yen/mu/.notdef/.notdef /.notdef/.notdef/.notdef/ordfeminine/ordmasculine/.notdef/ae/oslash /questiondown/exclamdown/logicalnot/.notdef/florin/.notdef/.notdef /guillemotleft/guillemotright/ellipsis/.notdef/Agrave/Atilde/Otilde/OE/oe /endash/emdash/quotedblleft/quotedblright/quoteleft/quoteright/divide /.notdef/ydieresis/Ydieresis/fraction/currency/guilsinglleft/guilsinglright /fi/fl/daggerdbl/periodcentered/quotesinglbase/quotedblbase/perthousand /Acircumflex/Ecircumflex/Aacute/Edieresis/Egrave/Iacute/Icircumflex /Idieresis/Igrave/Oacute/Ocircumflex/.notdef/Ograve/Uacute/Ucircumflex /Ugrave/dotlessi/circumflex/tilde/macron/breve/dotaccent/ring/cedilla /hungarumlaut/ogonek/caron] StandardEncoding Re-encode /_Helvetica-Bold /Helvetica-Bold EncodeFont 36.000 (_Helvetica-Bold) plain F 0.000 0.000 0.000 setrgbcolor (4) -11.496 18.000 S grestore %@EndText restore %%Trailer end ---------------9903161209299 Content-Type: application/postscript; name="Fig7.epsf" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="Fig7.epsf" %!PS-Adobe-2.0 EPSF-1.2 %%Title: Fig4.epsf %%Creator: CLARIS EPSF Export Filter V1.0 %%CreationDate:12/30/98 5:42:30 p.m. %%BoundingBox: 27 349 522 713 %%QDBoundingBox: 27.000 79.500 522.000 442.500 %%DocumentProcessColors: Cyan Magenta Yellow Black %%ObjectsIncluded: tText=T tLine=T tRect=T tRRect=T tOval=T tArc=T tFree=T tPoly=T tBMap=T tNote=T tBez=T tPMap=T %%AttributesIncluded: kBaWPattType=T kPixPattType=T kGradientType=T %%EndComments /MAV 300 dict def MAV begin /useClip true def /top 0 def /left 1 def /bottom 2 def /right 3 def /CM 6 array def /CTM 6 array def /CTMR 6 array def /MTC 6 array def /blimit 1500 def /bcnt 0 def /rbox 8 array def /segbox 8 array def /bbox1 4 array def /c1 3 array def /c2 3 array def /d 3 array def /delta 3 array def /mycurrentrgbcolor 3 array def /ulx 0 def /uly 1 def /llx 2 def /lly 3 def /urx 4 def /ury 5 def /lrx 6 def /lry 7 def /sp [0 0] def /ep [0 0] def /bbox 4 array def /pbox 4 array def /scrnProc currentscreen 3 1 roll pop pop def /currentcolorscreen where { begin currentcolorscreen end 3 1 roll pop pop 4 2 roll pop pop 5 -2 roll pop pop 6 -2 roll pop pop /kProc exch def /bProc exch def /gProc exch def /rProc exch def } if /Max {2 copy gt {pop}{exch pop} ifelse} bind def /Min {2 copy lt {pop}{exch pop} ifelse} bind def /cellPenW 72.0 /currentcolorscreen where {begin currentcolorscreen end pop pop 10 1 roll pop pop 8 1 roll pop pop 6 1 roll pop pop Max Max Max } {currentscreen pop pop} ifelse div 2.0 div def %%BeginProcSet : rect /rect { /saveobj save def R PC PF LC SS saveobj restore } bind def %%EndProcSet %%BeginProcSet : R /R { newpath pbox astore pop 0 792 translate 1 -1 scale CTMR currentmatrix pop exch translate /objectCord mstore def pbox right get 2 div dup pbox left get exch sub pbox left 3 -1 roll put dup pbox right 3 -1 roll put pbox bottom get 2 div dup pbox top get exch sub pbox top 3 -1 roll put dup pbox bottom 3 -1 roll put translate CTM currentmatrix pop 57.3 mul rotate RT } bind def %%EndProcSet %%BeginProcSet : SaveScreenBW /SaveScreenBW { currentscreen /scrnProc exch def /scrnAngle exch def /scrnFreq exch def } bind def %%EndProcSet %%BeginProcSet : RestoreScreenBW /RestoreScreenBW { scrnFreq scrnAngle MAV /scrnProc get setscreen } bind def %%EndProcSet %%BeginProcSet : SetFreqAngleBW /SetFreqAngleBW { currentscreen 3 1 roll pop pop setscreen } bind def %%EndProcSet %%BeginProcSet : SaveScreenColor /SaveScreenColor { currentcolorscreen /grayProc exch def /grayAngle exch def /grayFreq exch def /bProc exch def /bAngle exch def /bFreq exch def /gProc exch def /gAngle exch def /gFreq exch def /rProc exch def /rAngle exch def /rFreq exch def } bind def %%EndProcSet %%BeginProcSet : RestoreColorScreen /RestoreColorScreen { rFreq rAngle MAV /rProc get gFreq gAngle MAV /gProc get bFreq bAngle MAV /bProc get grayFreq grayAngle MAV /grayProc get setcolorscreen } bind def %%EndProcSet %%BeginProcSet : SetFreqAngleColor /SetFreqAngleColor { currentcolorscreen 3 1 roll pop pop 4 2 roll pop pop 5 -2 roll pop pop 6 -2 roll pop pop 4 1 roll 6 1 roll 8 1 roll 10 1 roll setcolorscreen } bind def %%EndProcSet /initmsaverestore { userdict begin /mdict 10 dict def mdict begin /mindex -1 def /mstacksize 25 def /mstack mstacksize array def /incmindex { /mindex mindex 1 add def } bind def /decmindex { /mindex mindex 1 sub def } bind def /checkmindex { mindex 0 lt { (%ERROR: msave/mrestore stack underflow: Offending command 'mrestore' ) print flush stop } { mindex mstacksize ge { (%ERROR: msave/mrestore stack overflow: Offending command 'msave' ) print flush stop } if } ifelse } bind def /mpush { incmindex checkmindex mstack mindex 3 -1 roll put } bind def /mpop { checkmindex mstack mindex get decmindex } bind def end end } bind def /msave { mdict begin matrix currentmatrix mpush end } bind def /mrestore { mdict begin mpop setmatrix end } bind def /msavelevel { mdict begin mindex 1 add end } bind def /mstore { matrix currentmatrix } bind def /AutoSizeY { 0 0 pl dup 3 1 roll 4 -1 roll add pl exch pop exch sub } bind def /pl { transform 0.25 sub round 0.25 add exch 0.25 sub round 0.25 add exch itransform } bind def /pll { transform round exch round exch itransform } bind def /pr { dtransform round exch round exch idtransform } bind def /m { pl moveto } bind def /l { pl lineto } bind def /c { pl curveto } bind def /rm { pr rmoveto } bind def /rl { pr rlineto } bind def /ar { 5 -2 roll pl 5 2 roll arc } bind def /an { 5 -2 roll pl 5 2 roll arcn } bind def /MakePatternFont { /FontDict 20 dict def FontDict begin /FontName exch def /Encoding exch def /FontMatrix [1 0 0 1 0 0 ] def /FontType 3 def /FontBBox [ 0 0 1 1 ] def /PatternDict exch def /RenderPattern { patternDict exch get exec } bind def /BuildChar { exch begin 1 0 0 0 1 1 setcachedevice Encoding exch get RenderPattern end } bind def FontName FontDict definefont pop end } bind def /SnapToPattenGrid { exch dup 0 lt { 1 index sub } if 1 index div truncate mul } bind def /FillPatternString { dup length 1 sub 0 1 3 -1 roll { 2 index 2 index 3 -2 roll put } for pop pop } bind def /AutoSizeY { 0.0 exch dtransform round idtransform exch pop } bind def /AutoSizeX { 0.0 dtransform exch round exch idtransform pop } bind def /AutoCellSize { AutoSizeY exch AutoSizeX exch } bind def /CheckPath { false { pop pop pop true exit} { pop pop pop true exit} { pop pop pop pop pop pop pop true exit} { pop true exit} pathforall } bind def /PatternFill { % patternCharacter /patternString 1 string def /cm mstore def patternMatrix setmatrix 1 1 AutoCellSize dup 0 eq { pop 1} if exch dup 0 eq { pop 1} if exch /patternSize exch 24.0 mul def /PatternSizeX exch 24.0 mul patternString length mul def /flaterror 0 def patternString FillPatternString gsave flaterror 1 add setflat flattenpath pathbbox grestore psy add flaterror add psy SnapToPattenGrid exch psx add flaterror add psx SnapToPattenGrid 3 -1 roll flaterror sub psy SnapToPattenGrid 4 -1 roll flaterror sub psx SnapToPattenGrid 4 2 roll pll 4 2 roll pll /llxsnap exch def /llysnap exch def /urxsnap exch def /urysnap exch def gsave useClip true eq {clip}{eoclip} ifelse newpath /PatternFont findfont [psx 0.0 0.0 psy 0.0 0.0] makefont setfont llysnap patternSize urysnap { llxsnap exch moveto llxsnap PatternSizeX urxsnap { pop patternString show %currentpoint am } for } bind for grestore cm setmatrix } bind def % End 'PatternFill' /DefaultPatternFont { /cm mstore def patternMatrix setmatrix 1 1 AutoCellSize dup 0 eq { pop 1} if exch dup 0 eq { pop 1} if exch /psy exch iSizeY mul def /psx exch iSizeX mul def /patternDict 64 dict def patternDict begin /NotDef {} def /LiteDiagLines { iSizeX iSizeY false [iSizeX 0.0 0.0 iSizeY -1.0 mul 0.0 iSizeY] {pat} imagemask } bind def end /CustEncoding 256 array def 0 255 1 { CustEncoding exch /NotDef put } bind for CustEncoding 65 /LiteDiagLines put patternDict CustEncoding /PatternFont MakePatternFont /pathSegProc { strokepath CheckPath { 65 PatternFill newpath } if } bind def cm setmatrix } bind def /XRound { dup 3 -1 roll exch mul round exch div } bind def /RoundMatrix { /i 0 def dup { 100000.0 XRound 1 index exch i exch put /i i 1 add def } forall } bind def /GetBoxesRatio { 3 -1 roll sub 7 1 roll exch sub 6 1 roll 3 -1 roll sub 5 1 roll exch sub 4 1 roll 3 -1 roll div 3 1 roll exch div exch } bind def %%BeginProcSet : Text Attributes Procs /T {792 exch sub} bind def /sx 0 def /sy 0 def /ex 0 def /ey 0 def /lw 0 def /siz 0 def /U {gsave 0 setlinecap /lw siz 0.078125 mul def /ey exch neg def /ex exch def /sy exch neg def /sx exch def fontkind plain eq { lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto stroke } { currentdict /outlineFontSize known outlineFontSize 0 gt and { fontkind outline eq { /sy sy 0.0119444 siz mul sub def /ey ey 0.0119444 siz mul sub def gsave 1 1 1 setrgbcolor lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto stroke grestore lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto strokepath 0.0119444 siz mul setlinewidth stroke } if fontkind shadow eq fontkind outlineshadow eq or { /sy sy 0.0358332 siz mul sub def /ey ey 0.0358332 siz mul sub def lw setlinewidth lw 2 div sx add sy lw 2 div sub moveto lw 2 div ex add ey lw 2 div sub lineto stroke gsave 1 1 1 setrgbcolor lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto stroke grestore lw siz 0.0119444 mul sub setlinewidth sx sy moveto ex ey lineto strokepath 0.0119444 siz mul setlinewidth stroke } if } if } ifelse grestore} bind def /plain 1 def /outline 2 def /shadow 3 def /outlineshadow 4 def /fess { currentdict /outlineFontSize known { /outlineFontSize 2 index def } if findfont exch dup /siz exch def scalefont setfont } bind def /SHDW {gsave siz oldfontname fess siz 0.055 mul x add y siz 0.05 mul sub moveto c show grestore} def /NRML {gsave 1 1 1 setrgbcolor siz oldfontname fess x y moveto c show grestore siz /Outline fess x y moveto c show} def /S { fontkind plain eq {neg moveto show} if fontkind outline eq {neg /y exch def /x exch def /c exch def NRML} if fontkind shadow eq {neg /y exch def /x exch def /c exch def SHDW NRML} if fontkind outlineshadow eq {neg /y exch def /x exch def /c exch def SHDW NRML} if } bind def /F { /fontkind exch def fontkind plain eq {fess} if fontkind outline eq {dup /oldfontname exch def exch dup /siz exch def exch OLF} if fontkind shadow eq {dup /oldfontname exch def exch dup /siz exch def exch OLF} if fontkind outlineshadow eq {dup /oldfontname exch def exch dup /siz exch def exch OLF} if } bind def /makeoutlinedict 15 dict def /makeoutlinefont { makeoutlinedict begin /uniqueid exch def /strokewidth exch def /newfontname exch def /basefontname exch def FontDirectory basefontname known not { /basefontname /Times-Roman def } if /basefontdict basefontname findfont def /numentries basefontdict maxlength 1 add def basefontdict /UniqueID known not {/numentries numentries 1 add def} if /outfontdict numentries dict def basefontdict { exch dup /FID ne {exch outfontdict 3 1 roll put} {pop pop} ifelse }forall outfontdict /FontName newfontname put outfontdict /PaintType 2 put outfontdict /StrokeWidth strokewidth put outfontdict /UniqueID uniqueid put newfontname outfontdict definefont pop end }def /UID { findfont dup /UniqueID known {/UniqueID get 1 add} {pop 1} ifelse } def /OLF { dup /Outline 1000 62 div 4 -1 roll UID /outlineFontSize 5 index def makeoutlinefont /Outline findfont exch scalefont setfont } def /CopyEncoding { findfont /Encoding get dup length array /tarrayz exch def tarrayz 0 3 -1 roll putinterval tarrayz } bind def /Re-encode { dup length array copy /eap 0 def exch { dup type /integertype eq { /eap exch def } { 1 index exch eap exch put /eap eap 1 add def } ifelse } forall } bind def /EncodeFont { findfont dup length dict begin { 1 index /FID ne { def } { pop pop } ifelse } forall /FontName exch def /Encoding exch def FontName currentdict end definefont pop } bind def %%EndProcSet %%BeginProcSet : clip2pathbbox /clip2pathbbox { /magicNum linewidth 2 div 1 2 sqrt div mul def pathbbox /urymn exch magicNum add def /urxmn exch magicNum add def /llymn exch magicNum sub def /llxmn exch magicNum sub def newpath llxmn llymn moveto llxmn urymn lineto urxmn urymn lineto urxmn llymn lineto closepath clip newpath } bind def %%EndProcSet %% Line takes the following arguments: %% linewidth xEnd yEnd xStart yStart %%BeginProcSet : Line /Line { MAV /LC get length 0 ne { gsave newpath MAV /ArrowType get length 0 eq MAV /SD get length 0 eq and {2 setlinecap /UseClip {clip2pathbbox} def } {0 setlinecap /UseClip {} def } ifelse 0 792 translate 1 -1 scale CTM currentmatrix pop /yStart exch def /xStart exch def /yEnd exch def /xEnd exch def /linewidth exch def MAV /ArrowType get length 0 eq xStart xEnd ne yStart yEnd ne and and {xStart yStart moveto xEnd yEnd lineto UseClip xStart yStart moveto xEnd yEnd lineto} {xStart yStart moveto xEnd yEnd lineto} ifelse linewidth setlinewidth SD strokepath CheckPath {LC PF ArrowType} if grestore } {pop pop pop pop pop} ifelse } bind def %% Line takes the following arguments: %% linewidth xEnd yEnd xStart yStart %%BeginProcSet : ZeroLine /ZeroLine { gsave newpath MAV /ArrowType get length 0 ne { /UseClip {} def 0 792 translate 1 -1 scale pop pop pop pop pop CTM currentmatrix pop ArrowType } if grestore } bind def /CompensateForStroke { sin currentlinewidth mul exch cos currentlinewidth mul dup 0 translate 4 -1 roll exch 2.0 mul sub 3 1 roll 2.0 mul sub } bind def /arrowdict 10 dict def arrowdict begin /SwallowTail { newpath 0.0 0.0 moveto 1.0 -.5 lineto .666 0.0 lineto 1.0 .5 lineto closepath } bind def /Triangular { newpath 0.0 0.0 moveto 1.0 -.5 lineto 1.0 .5 lineto closepath } bind def /OpenTri { newpath 1.0 0.5 moveto 0.0 0.0 lineto 1.0 -0.5 lineto } bind def /ClosedTri { newpath 1.0 0.5 moveto 0.0 0.0 lineto 1.0 -0.5 lineto closepath } bind def /SlashBar { newpath 0.5 -.5 moveto -.5 0.5 lineto } bind def /Dot { newpath 0.5 0.0 moveto 0 0 1 0 360 arc closepath } bind def /ExtSlashBar { newpath 1.0 -.5 moveto 0.0 0.5 lineto } bind def end /ScaleArrowHead { 0 0 4 -2 roll 0 0 1 1 8 -4 roll GetBoxesRatio scale } bind def /DrawArrowHead { gsave [] 0 setdash currentpoint translate rotate { 4 copy gsave initmatrix 100 200 translate msave ScaleArrowHead pop arrowdict exch get exec mrestore strokepath 0 0 3 index 3 index pathbbox 8 4 roll GetBoxesRatio 4 2 roll grestore 3 index 1.0 exch sub 6 -1 roll { 2 index mul 0 translate }{ pop } ifelse msave ScaleArrowHead scale arrowdict exch get exec mrestore strokepath } { msave ScaleArrowHead arrowdict exch get exec mrestore } ifelse CheckPath { LC PF } if grestore } bind def %%EndProcSet %%BeginProcSet : SR /SR { pbox left get pbox top get moveto pbox right get pbox top get lineto pbox right get pbox bottom get lineto pbox left get pbox bottom get lineto closepath } bind def %%EndProcSet %%BeginProcSet : RR1 /RR1 { pbox top get pbox bottom get sub abs pbox left get pbox right get sub abs 2 copy lt { Min 2 div dup dup dup pbox left get add pbox left 3 -1 roll put pbox right get exch sub pbox right 3 -1 roll put pbox left get pbox bottom get moveto pbox right get 0 3 -1 roll 90 -90 arcn pbox left get 0 3 -1 roll -90 90 arcn closepath } { Min 2 div dup dup dup pbox bottom get exch sub pbox bottom 3 -1 roll put pbox top get add pbox top 3 -1 roll put pbox left get pbox bottom get moveto pbox left get add pbox top get 2 index 180 0 arc dup pbox left get add pbox bottom get 3 -1 roll 0 180 arc closepath } ifelse } bind def %%EndProcSet %%BeginProcSet : RR2 /RR2 { dup dup dup dup dup dup dup dup pbox top get add pbox top 3 -1 roll put pbox left get add pbox left 3 -1 roll put pbox bottom get exch sub pbox bottom 3 -1 roll put pbox right get exch sub pbox right 3 -1 roll put pbox bottom get add pbox left get exch moveto pbox right get pbox bottom get 3 -1 roll 90 0 arcn pbox right get pbox top get 3 -1 roll 0 270 arcn pbox left get pbox top get 3 -1 roll 270 180 arcn pbox left get pbox bottom get 3 -1 roll 180 90 arcn closepath } bind def %%EndProcSet %%BeginProcSet : E /E { 1.415 setmiterlimit CM currentmatrix pop pbox right get pbox left get sub abs dup pbox bottom get pbox top get sub abs dup 3 -1 roll lt {exch dup 3 -1 roll exch div 1 exch} {dup 3 -1 roll exch div 1} ifelse scale 0 0 3 -1 roll 2 div 0 360 arc closepath CM setmatrix } bind def %%EndProcSet %%BeginProcSet : A1 /A1 {msave pbox right get pbox left get sub abs dup pbox bottom get pbox top get sub abs dup 3 -1 roll lt {exch dup 3 -1 roll exch div 1 exch} {dup 3 -1 roll exch div 1} ifelse scale 0 0 3 -1 roll 2 div 5 -1 roll -90 add 5 -1 roll -90 add arcn mrestore} bind def %%EndProcSet %%BeginProcSet : A2 /A2 {msave 0 0 moveto A1 closepath mrestore} def %%EndProcSet %%BeginProcSet : BitMap /BitMap { /buffer ^1 string def ^2 ^5 2 div add 792 ^3 sub ^6 2 div add translate ^4 57.3 mul rotate 0 ^5 2 div sub 0 ^6 2 div sub translate ^5 ^6 scale ^5 ^6 ^7 [^5 0 0 -^6 0 ^6] {currentfile buffer readhexstring pop} image }bind def %%EndProcSet %%BeginProcSet : note /note { gsave pbox astore pop 0 792 translate 1 -1 scale CTM currentmatrix pop exch translate pbox right get pbox left get sub 2 div pbox bottom get pbox top get sub 2 div translate 57.3 mul rotate setlinewidth noteBody aload pop moveto noteBody length 2 div 1 sub cvi{lineto}repeat dogEar aload pop moveto dogEar length 2 div 1 sub cvi{lineto}repeat 0.992 0.975 0.507 setrgbcolor gsave fill grestore gsave newpath stickem aload pop moveto stickem length 2 div 1 sub cvi{lineto}repeat 0.760 0.760 0.760 setrgbcolor fill grestore 0 0 0 setrgbcolor stroke noteShadow aload pop moveto noteShadow length 2 div 1 sub cvi{lineto}repeat dogEarShadow aload pop moveto dogEarShadow length 2 div 1 sub cvi{lineto}repeat 0 0 0 setrgbcolor gsave stroke grestore fill grestore }bind def %%EndProcSet %%BeginProcSet : RGB4toGray4 /redTbl4 [0 0 1 1 1 1 2 2 3 3 3 4 4 4 5 5] def /greenTbl4 [0 1 1 2 2 3 3 4 4 5 6 6 7 7 7 8] def /blueTbl4 [0 0 0 0 1 1 1 1 1 1 1 1 1 2 2 2] def /RGB4toGray4 { currentfile RGBBuf readhexstring pop pop /i 0 def /j 0 def grayBuf length { RGBBuf i get dup -4 bitshift redTbl4 exch get exch 15 and greenTbl4 exch get add RGBBuf i 1 add get dup -4 bitshift blueTbl4 exch get 3 -1 roll add 4 bitshift exch 15 and redTbl4 exch get RGBBuf i 2 add get dup -4 bitshift greenTbl4 exch get 3 -1 roll add exch 15 and blueTbl4 exch get add or grayBuf j 3 -1 roll put /i i 3 add def /j j 1 add def } repeat grayBuf } bind def %%EndProcSet %%BeginProcSet : RGB8toGray8 /RGB8toGray8 { currentfile RGBBuf readhexstring pop pop /i 0 def /j 0 def grayBuf length { RGBBuf i get 0.33 mul RGBBuf i 1 add get 0.55 mul add RGBBuf i 2 add get 0.12 mul add round cvi grayBuf j 3 -1 roll put /i i 3 add def /j j 1 add def } repeat grayBuf } bind def %%EndProcSet %%BeginProcSet : RGB24toGray8 /RGB24toGray8 {RGB8toGray8} bind def %%EndProcSet %%BeginProcSet : RGB2toGray2 /redTbl2 [0 0 1 1] def /greenTbl2 [0 1 1 2] def /blueTbl2 [0 0 0 0] def /RGB2toGray2 { currentfile RGBBuf readhexstring pop pop /i 0 def /j 0 def grayBuf length { RGBBuf i get dup dup dup -6 bitshift redTbl2 exch get exch -4 bitshift 3 and greenTbl2 exch get add exch -2 bitshift 3 and blueTbl2 exch get add 6 bitshift exch 3 and redTbl2 exch get RGBBuf i 1 add get dup dup dup -6 bitshift greenTbl2 exch get exch -4 bitshift 3 and blueTbl2 exch get add 4 -1 roll add 4 bitshift 4 -1 roll or 3 1 roll -2 bitshift 3 and redTbl2 exch get exch 3 and greenTbl2 exch get add RGBBuf i 2 add get dup dup dup -6 bitshift blueTbl2 exch get 5 -1 roll add 2 bitshift 5 -1 roll or 4 1 roll -4 bitshift 3 and redTbl2 exch get exch -2 bitshift 3 and greenTbl2 exch get add exch 3 and greenTbl2 exch get add or grayBuf j 3 -1 roll put /i i 3 add def /j j 1 add def } repeat grayBuf } bind def %%EndProcSet %%EndProcSet %%BeginProcSet : RGB1toGray1 /RGB1toGray1 { currentfile RGBBuf readhexstring pop pop /i 0 def /j 0 def grayBuf length { RGBBuf i get dup dup 1 bitshift 128 and exch 3 bitshift 64 and or exch 5 bitshift 32 and or RGBBuf i 1 add get dup -1 bitshift 16 and exch 1 bitshift 8 and or or RGBBuf i 2 add get dup dup -5 bitshift 4 and exch -3 bitshift 2 and or exch -1 bitshift 1 and or or /i i 3 add def /j j 1 add def } repeat grayBuf } bind def %%EndProcSet %%BeginProcSet : RGB16toGray8 /RGB16toGray8 {RGB8toGray8} bind def %%EndProcSet %%BeginProcSet : BW /ScalePoint { 0 0 4 -2 roll 0 0 1 1 8 4 roll GetBoxesRatio scale } bind def /PointDict 4 dict def PointDict begin /XPoint { -.5 .5 moveto .5 -.5 lineto .5 .5 moveto -.5 -.5 lineto } bind def /DiamondPoint { 0.0 .5 moveto .5 0.0 lineto 0.0 -0.5 lineto -.5 0.0 lineto closepath } bind def /PlusPoint { 0.0 .5 moveto 0.0 -.5 lineto -.5 0.0 moveto .5 0.0 lineto } bind def /SquarePoint { -.5 .5 moveto .5 .5 lineto .5 -.5 lineto -.5 -.5 lineto closepath } bind def end /DrawPoint { gsave [] 0 setdash 0 setlinecap translate msave ScalePoint PointDict exch get exec mrestore 1.0 setlinewidth stroke grestore } bind def %%EndProcSet %%BeginProcSet : Wall object Procs %%EndProcSet %%BeginProcSet : Subscriber /Subscriber { msave R PC PF LC SS newpath mrestore } bind def %%EndProcSet /StripFromFront { dup length 2 index sub 3 1 roll exch 3 -1 roll getinterval } bind def /MakePathArray { /k 0 def {/k k 1 add def pop pop}{/k k 1 add def pop pop}{/k k 1 add def pop pop pop pop pop pop}{/k k 1 add def }pathforall k array /k 0 def {{moveto} 3 array astore 1 index k 3 -1 roll put /k k 1 add def} {{lineto} 3 array astore 1 index k 3 -1 roll put /k k 1 add def} {{curveto} 7 array astore 1 index k 3 -1 roll put /k k 1 add def} {{closepath} 1 array astore 1 index k 3 -1 roll put /k k 1 add def} pathforall }bind def /MakeFlatPathArray { /k 0 def {/k k 1 add def pop pop}{/k k 1 add def pop pop}{pop pop pop pop pop pop}{}pathforall k array /k 0 def {{moveto} 3 array astore 1 index k 3 -1 roll put /k k 1 add def} {{lineto} 3 array astore 1 index k 3 -1 roll put /k k 1 add def} { pop pop pop pop pop pop} {} pathforall }bind def /FractionalLine { 2 index sub .00001 mul exch 3 index sub .00001 mul 4 -1 roll add 3 1 roll add } bind def /calcLineLength { exch 4 -1 roll sub dup mul 3 1 roll exch sub dup mul add sqrt } bind def /InitTotalLineLength { /oldY exch def /oldX exch def theDash aload pop currentLineLength add setdash } bind def /AccumeLineLength { 3 copy pop 2 copy oldX oldY 4 2 roll calcLineLength /segmentLength exch def /currentLineLength currentLineLength segmentLength add def /oldY exch def /oldX exch def } bind def /DecumeLastLineLength { /currentLineLength currentLineLength segmentLength sub def } bind def /DrawFlattendSegment { /pointCount 2 def dup 0 lt { pop 0 } if fpc 3 1 roll 2 index 1 index gt { 2 copy get dup length dup 3 eq { pop dup 0 get exch 1 get 2 copy InitTotalLineLength m } { } ifelse } { pop 1 index } ifelse dup 1 add 3 index exch sub dup 10 gt { pop 10} if { 1 add 2 copy get aload pop AccumeLineLength exec } repeat 3 1 roll pop pop DecumeLastLineLength } bind def /IncFPC { fpc add /fpc exch def } bind def /DrawFlatPathArray { fpc 0 { dup 2 index 1 sub lt { flatPathArray exch newpath 1 sub DrawFlattendSegment gsave pathSegProc grestore newpath } { pop pop exit } ifelse } loop } bind def /RecordFirstSubSegment { closepathArray 0 pathArray 0 get put closepathArray 1 pathArray 0 get aload pop pop pathArray 1 get dup length 3 eq { aload pop pop } { newpath 0 0 moveto aload pop exec /segmentArray flattenpath MakeFlatPathArray def segmentArray 1 get aload pop pop } ifelse FractionalLine {lineto} 3 array astore put } bind def /AppendClosePath { closepathArray 0 get 2 {lineto} put flatPathArray fpc closepathArray 0 get put 1 IncFPC flatPathArray fpc closepathArray 1 get put 1 IncFPC } bind def /RecordCurrentDash { /theDash currentdash 2 array astore def /currentLineLength 0 def } bind def /PatternStroke { 0 setlinecap RecordCurrentDash /saveFlat currentflat def .5 setflat /pathArray MakePathArray def /closepathArray 2 array def /pathLength pathArray length def /flatPathArray 513 array def /currentLineLength 0 def /fpc 0 def pathArray pathLength 1 sub get length 1 eq { /usingClosepath true def RecordFirstSubSegment /pathLength pathLength 1 sub def } { /usingClosepath false def } ifelse 0 1 pathLength 1 sub { pathArray exch get dup length 3 eq { fpc 1 add 512 ge { DrawFlatPathArray fpc 2 ge { flatPathArray flatPathArray fpc 2 sub get 0 put flatPathArray flatPathArray fpc 1 sub get 1 put /fpc 2 def }{ /fpc 0 def } ifelse } if flatPathArray exch fpc exch put 1 IncFPC } { dup length 7 eq { newpath /nToStrip 0 def fpc 1 gt { flatPathArray fpc 2 sub get aload pop pop m flatPathArray fpc 1 sub get aload pop exec /nToStrip 2 def } { fpc 1 eq { flatPathArray fpc 1 sub get aload pop exec /nToStrip 2 def } if } ifelse aload pop exec /segmentArray flattenpath MakeFlatPathArray def /segmentArray nToStrip segmentArray StripFromFront def segmentArray length fpc add 512 lt { flatPathArray fpc segmentArray putinterval segmentArray length IncFPC } { DrawFlatPathArray fpc 1 gt { flatPathArray flatPathArray fpc 2 sub get 0 exch put flatPathArray flatPathArray fpc 1 sub get 1 exch put /fpc 2 def }{ /fpc 0 def } ifelse segmentArray length 512 lt { flatPathArray fpc segmentArray putinterval segmentArray length IncFPC } { segmentArray length /exitLoop false def 0 { 2 copy sub dup 500 gt { pop 500 } { /exitLoop true def } ifelse segmentArray 2 index 2 index getinterval flatPathArray fpc 3 -1 roll putinterval dup IncFPC add exitLoop { exit } { DrawFlatPathArray fpc 1 gt { flatPathArray flatPathArray fpc 2 sub get 0 exch put flatPathArray flatPathArray fpc 1 sub get 1 exch put /fpc 2 def }{ /fpc 0 def } ifelse } ifelse } loop } ifelse } ifelse } if } ifelse } for fpc 0 gt { usingClosepath { AppendClosePath } if DrawFlatPathArray } if saveFlat setflat } bind def %%BeginProcSet : rampdelta /rampdelta { /len 0 3 -1 roll add def /i2 0 3 -1 roll add def /i1 0 3 -1 roll add def /nRampSteps len cellPenW div cvi 1 add dup 512 gt {pop 512} if def /rampPenW len nRampSteps div def rampColors i1 get aload pop c1 astore pop rampColors i2 get aload pop c2 astore pop c2 0 get c1 0 get sub nRampSteps div d 0 3 -1 roll put c2 1 get c1 1 get sub nRampSteps div d 1 3 -1 roll put c2 2 get c1 2 get sub nRampSteps div d 2 3 -1 roll put d aload pop } bind def %%EndProcSet %%BeginProcSet : adddelta /adddelta { d astore pop mycurrentrgbcolor c1 copy pop c1 0 get d 0 get add c2 0 3 -1 roll put c1 1 get d 1 get add c2 1 3 -1 roll put c1 2 get d 2 get add c2 2 3 -1 roll put c2 aload pop setrgbcolor c2 mycurrentrgbcolor copy pop } bind def %%EndProcSet %%BeginProcSet : rampline /rampline { segbox ulx get rampPenW add segbox ulx 3 -1 roll put segbox llx get rampPenW add segbox llx 3 -1 roll put segbox ulx get segbox uly get moveto segbox llx get segbox lly get lineto delta aload pop adddelta stroke }bind def %%EndProcSet %%BeginProcSet : slantrampseg /slantrampseg { gsave newpath segbox ulx get segbox urx get sub abs rampdelta delta astore pop segbox ulx get rampPenW .5 mul sub segbox ulx 3 -1 roll put segbox llx get rampPenW .5 mul sub segbox llx 3 -1 roll put rampColors exch get aload mycurrentrgbcolor copy pop setrgbcolor rampPenW setlinewidth nRampSteps {rampline} repeat grestore }bind def %%EndProcSet %%BeginProcSet : flipramp /flipramp { rampColors 0 get rampColors 3 get rampColors 0 3 -1 roll put rampColors 3 3 -1 roll put rampColors 1 get rampColors 2 get rampColors 1 3 -1 roll put rampColors 2 3 -1 roll put } bind def %%EndProcSet %%BeginProcSet : leftrbox /leftrbox { rbox segbox copy pop rbox urx get rbox ulx get sub flipRatio mul dup segbox ulx get add segbox urx 3 -1 roll put segbox llx get add segbox lrx 3 -1 roll put } bind def %%EndProcSet %%BeginProcSet : rightrbox /rightrbox { rbox segbox copy pop rbox urx get rbox ulx get sub flipRatio mul dup segbox ulx get add segbox ulx 3 -1 roll put segbox llx get add segbox llx 3 -1 roll put } bind def %%EndProcSet %%BeginProcSet : drawslantramp /drawslantramp { segbox urx get segbox ulx get sub 3 div dup dup dup dup dup dup dup dup dup segbox ulx get add segbox urx 3 -1 roll put segbox llx get add segbox lrx 3 -1 roll put segbox aload pop 0 0 1 slantrampseg segbox astore pop segbox ulx get add segbox ulx 3 -1 roll put segbox llx get add segbox llx 3 -1 roll put segbox urx get add segbox urx 3 -1 roll put segbox lrx get add segbox lrx 3 -1 roll put segbox aload pop 1 1 2 slantrampseg segbox astore pop segbox ulx get add segbox ulx 3 -1 roll put segbox llx get add segbox llx 3 -1 roll put segbox urx get add segbox urx 3 -1 roll put segbox lrx get add segbox lrx 3 -1 roll put 2 2 3 slantrampseg }bind def %%EndProcSet %%BeginProcSet : tan /tan { dup sin exch cos div }bind def %%EndProcSet %%BeginProcSet : rampbox /rampbox { pbox top get dup rbox uly 3 -1 roll put rbox ury 3 -1 roll put pbox left get dup rbox ulx 3 -1 roll put rbox llx 3 -1 roll put pbox bottom get dup rbox lly 3 -1 roll put rbox lry 3 -1 roll put pbox right get dup rbox urx 3 -1 roll put rbox lrx 3 -1 roll put }bind def %%EndProcSet %%BeginProcSet : rampbox /LoadSegBox { 4 copy segbox llx 6 -1 roll put segbox lly 5 -1 roll put segbox lrx 4 -1 roll put segbox lry 6 -1 roll put segbox urx 5 -1 roll put segbox ury 3 -1 roll put segbox ulx 4 -1 roll put segbox uly 3 -1 roll put } bind def /TransToCenter { gsave flattenpath pathbbox grestore 2 index sub 2.0 div exch 3 index sub 2.0 div 4 -1 roll add 3 1 roll add translate } bind def /RotRampGrad { gsave TransToCenter -1.0 mul 180.0 add rotate flattenpath pathbbox clip newpath LoadSegBox flipRatio 1 lt dup{flipramp}if flipRatio 0 gt and { /flipRatio 1.0 flipRatio sub def segbox rbox copy pop leftrbox drawslantramp flipramp rightrbox drawslantramp } {drawslantramp} ifelse grestore } bind def /bbg { pbox exch get } bind def %%BeginProcSet : DR /DR { % Directional ramp /workingMatrix mstore def objectCord setmatrix flipramp gsave flattenpath pathbbox grestore pbox bottom 3 -1 roll put pbox right 3 -1 roll put pbox top 3 -1 roll put pbox left 3 -1 roll put rampAngle RotRampGrad RF workingMatrix setmatrix }bind def %%EndProcSet %%BeginProcSet : ramparc /ramparc { gsave circum rampdelta delta astore pop /rampPenW 60.0 nRampSteps div def /ang1 exch rampAngle sub def /ang2 rampPenW ang1 add def rampColors exch get aload mycurrentrgbcolor copy pop setrgbcolor 1 setlinewidth nRampSteps {ramparcseg}repeat grestore }bind def %%EndProcSet %%BeginProcSet : ramparcseg /ramparcseg { newpath rampcenter aload pop moveto rampcenter aload pop rampradius ang2 ang1 arcn fill /ang1 ang2 def /ang2 ang2 rampPenW add def delta aload pop adddelta }bind def %%EndProcSet /GetRadius { rbox urx get rbox llx get sub 2 div rampcenter 0 get abs add dup mul rbox lly get rbox ury get sub 2 div rampcenter 1 get abs add dup mul add sqrt } bind def %%BeginProcSet : circularRamp /circularRamp { rampbox /rampradius GetRadius def CalcCrcm flipramp 0 0 0 1 ramparc 1 60 1 2 ramparc 2 120 2 3 ramparc flipramp 0 180 0 1 ramparc 1 240 1 2 ramparc 2 300 2 3 ramparc }bind def %%EndProcSet /GetCircumf { 2.0 mul 3.1415926 mul } bind def /CalcCrcm { rampradius GetCircumf /circum exch 6.0 div def } bind def %%BeginProcSet : CR /CR { gsave clip MTC currentmatrix pop CTM setmatrix flattenpath pathbbox pbox bottom 3 -1 roll put pbox right 3 -1 roll put pbox top 3 -1 roll put pbox left 3 -1 roll put pbox left get pbox right get sub abs 2 div pbox left get add rampcenter 0 get add rampcenter 0 3 -1 roll put pbox top get pbox bottom get sub abs 2 div pbox top get add rampcenter 1 get add rampcenter 1 3 -1 roll put circularRamp MTC setmatrix grestore RF }bind def %%EndProcSet %%BeginProcSet : shaperamp /SBR { gsave clip /workingMatrix mstore def objectCord setmatrix flattenpath /BaseBox pathbbox 4 array astore def /len BaseBox 2 get BaseBox 0 get sub dup mul BaseBox 3 get BaseBox 1 get sub dup mul add sqrt 12.0 div def /EndBox BaseBox aload pop 3 -1 roll sub 3 1 roll exch sub /dbx exch def /dby exch def BaseBox aload pop pop pop /blly exch def /bllx exch def sbox 0 get 100.0 div dby mul blly add sbox 1 get 100.0 div dbx mul bllx add sbox 2 get 100.0 div dby mul blly add sbox 3 get 100.0 div dbx mul bllx add exch 4 -2 roll exch 4 -2 roll 4 array astore def BaseBox EndBox ShapeBurst workingMatrix setmatrix grestore } bind def %%EndProcSet /GetBoxCenter { 2 index sub 2.0 div 3 -1 roll add 3 1 roll 1 index sub 2.0 div add exch } bind def /GetInterBox { /boxInter exch def 4 1 7 { -1 roll 7 index } for sub boxInter mul 8 -1 roll add 7 1 roll sub boxInter mul 7 -1 roll add 6 1 roll sub boxInter mul 6 -1 roll add 5 1 roll sub boxInter mul 5 -1 roll add 4 1 roll } bind def /GetBoxCenterDeltas { GetBoxCenter 6 2 roll GetBoxCenter 3 -1 roll exch sub 3 1 roll sub exch } bind def /GetBoxCornerDeltas { pop pop 4 2 roll pop pop 3 -1 roll sub 3 1 roll exch sub exch } bind def %%BeginProcSet : getpath /getpath { /k 0 def {/k k 1 add def pop pop}{/k k 1 add def pop pop}{/k k 1 add def pop pop pop pop pop pop}{}pathforall /pfa k array def /k 0 def {{moveto} 3 array astore pfa k 3 -1 roll put /k k 1 add def} {{lineto} 3 array astore pfa k 3 -1 roll put /k k 1 add def} {{curveto} 7 array astore pfa k 3 -1 roll put /k k 1 add def} {}pathforall }bind def %%EndProcSet /ShapeBurst { getpath newpath /SBERect exch 4 array copy def /SBBRect exch 4 array copy def /interRect1 SBBRect aload pop SBERect aload pop .3333333 GetInterBox 4 array astore def /interRect2 SBBRect aload pop SBERect aload pop .6666666 GetInterBox 4 array astore def 0 0 1 SBBRect interRect1 ShapeBurstSeg msave interRect1 0 get interRect1 1 get translate SBBRect aload pop interRect1 aload pop GetBoxesRatio scale SBBRect 0 get -1.0 mul SBBRect 1 get -1.0 mul translate 1 1 2 interRect1 interRect2 ShapeBurstSeg mrestore msave interRect2 0 get interRect2 1 get translate SBBRect aload pop interRect2 aload pop GetBoxesRatio scale SBBRect 0 get -1.0 mul SBBRect 1 get -1.0 mul translate 2 2 3 interRect2 SBERect ShapeBurstSeg mrestore } bind def /ShapeBurstSeg { /sbr1 exch 4 array copy def /sbr0 exch 4 array copy def /blx sbr0 0 get def /bly sbr0 1 get def len rampdelta delta astore pop sbr0 aload pop sbr1 aload pop GetBoxesRatio /ratioY exch def /ratioX exch def sbr0 aload pop sbr1 aload pop GetBoxCornerDeltas /dlly exch nRampSteps div def /dllx exch nRampSteps div def /scaleStepX 1.0 ratioX sub nRampSteps div def /scaleStepY 1.0 ratioY sub nRampSteps div def /currentScaleX 1.0 scaleStepX sub def /currentScaleY 1.0 scaleStepY sub def /translationX blx dllx add def /translationY bly dlly add def /currentScaleX 1.0 def /currentScaleY 1.0 def /translationX blx def /translationY bly def rampColors exch get aload mycurrentrgbcolor copy pop setrgbcolor nRampSteps { msave translationX translationY translate currentScaleX currentScaleY scale blx -1.0 mul bly -1.0 mul translate pfa {aload pop exec} forall fill delta aload pop adddelta /translationX translationX dllx add def /translationY translationY dlly add def /currentScaleX currentScaleX scaleStepX sub def /currentScaleY currentScaleY scaleStepY sub def mrestore } repeat msave translationX translationY translate currentScaleX currentScaleY scale blx -1.0 mul bly -1.0 mul translate pfa {aload pop exec} forall fill mrestore } bind def %%EndProlog initmsaverestore /tctm matrix currentmatrix def tctm RoundMatrix setmatrix /patternMatrix mstore def 10 setmiterlimit 2 setlinecap newpath %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /backfill {/setcmykcolor where {begin gsave 0 0 0 0 setcmykcolor fill grestore end} {gsave 1 1 1 setrgbcolor fill grestore} ifelse} def /fillpat def /iSizeX 24 def /iSizeY 24 def /PF { /pat fillpat def DefaultPatternFont backfill 65 PatternFill } def 3.000 0 81.000 96.000 0.000 0.000 360.000 360.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {1.000 1.000 1.000 setrgbcolor } def /PF {gsave fill grestore} def 3.000 0 180.000 195.000 0.000 0.000 162.000 162.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 252.000 87.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 252.000 186.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 252.000 348.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginOval /RT {E} def /SD {} def /SS {setlinewidth SD stroke} def /LC {0.000 0.000 0.000 setrgbcolor } def /PC {0.000 0.000 0.000 setrgbcolor } def /PF {gsave fill grestore} def 1.000 0 252.000 447.000 0.000 0.000 18.000 18.000 rect %@EndOval %@BeginText save %%IncludeFont: Helvetica [ 39/quotesingle 96/grave 128/Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis /Udieresis/aacute/agrave/acircumflex/adieresis/atilde/aring/ccedilla/eacute /egrave/ecircumflex/edieresis/iacute/igrave/icircumflex/idieresis/ntilde /oacute/ograve/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex /udieresis/dagger/degree/cent/sterling/section/bullet/paragraph/germandbls /registered/copyright/trademark/acute/dieresis/.notdef/AE/Oslash /.notdef/plusminus/.notdef/.notdef/yen/mu/.notdef/.notdef /.notdef/.notdef/.notdef/ordfeminine/ordmasculine/.notdef/ae/oslash /questiondown/exclamdown/logicalnot/.notdef/florin/.notdef/.notdef /guillemotleft/guillemotright/ellipsis/.notdef/Agrave/Atilde/Otilde/OE/oe /endash/emdash/quotedblleft/quotedblright/quoteleft/quoteright/divide /.notdef/ydieresis/Ydieresis/fraction/currency/guilsinglleft/guilsinglright /fi/fl/daggerdbl/periodcentered/quotesinglbase/quotedblbase/perthousand /Acircumflex/Ecircumflex/Aacute/Edieresis/Egrave/Iacute/Icircumflex /Idieresis/Igrave/Oacute/Ocircumflex/.notdef/Ograve/Uacute/Ucircumflex /Ugrave/dotlessi/circumflex/tilde/macron/breve/dotaccent/ring/cedilla /hungarumlaut/ogonek/caron] StandardEncoding Re-encode /_Helvetica /Helvetica EncodeFont %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginRect /RT {SR} def /LC {} def /SS {pop} def /PF {} def /PC {} def 1 0 234.000 27.000 0.000 0.000 50.000 63.000 rect %@EndRect gsave 58.500 259.000 T translate 0.0 rotate 1 1 scale 12.000 (_Helvetica) plain F 0.000 0.000 0.000 setrgbcolor ( ) -31.500 -15.000 S ( ) -28.166 -15.000 S 0.000 0.000 0.000 setrgbcolor ( ) -31.500 18.000 S ( ) -28.166 18.000 S ( ) -24.832 18.000 S ( ) -21.498 18.000 S ( ) -18.164 18.000 S grestore restore save gsave 58.500 259.000 T translate 0.0 rotate 1 1 scale %%IncludeFont: Helvetica-Bold [ 39/quotesingle 96/grave 128/Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis /Udieresis/aacute/agrave/acircumflex/adieresis/atilde/aring/ccedilla/eacute /egrave/ecircumflex/edieresis/iacute/igrave/icircumflex/idieresis/ntilde /oacute/ograve/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex /udieresis/dagger/degree/cent/sterling/section/bullet/paragraph/germandbls /registered/copyright/trademark/acute/dieresis/.notdef/AE/Oslash /.notdef/plusminus/.notdef/.notdef/yen/mu/.notdef/.notdef /.notdef/.notdef/.notdef/ordfeminine/ordmasculine/.notdef/ae/oslash /questiondown/exclamdown/logicalnot/.notdef/florin/.notdef/.notdef /guillemotleft/guillemotright/ellipsis/.notdef/Agrave/Atilde/Otilde/OE/oe /endash/emdash/quotedblleft/quotedblright/quoteleft/quoteright/divide /.notdef/ydieresis/Ydieresis/fraction/currency/guilsinglleft/guilsinglright /fi/fl/daggerdbl/periodcentered/quotesinglbase/quotedblbase/perthousand /Acircumflex/Ecircumflex/Aacute/Edieresis/Egrave/Iacute/Icircumflex /Idieresis/Igrave/Oacute/Ocircumflex/.notdef/Ograve/Uacute/Ucircumflex /Ugrave/dotlessi/circumflex/tilde/macron/breve/dotaccent/ring/cedilla /hungarumlaut/ogonek/caron] StandardEncoding Re-encode /_Helvetica-Bold /Helvetica-Bold EncodeFont 36.000 (_Helvetica-Bold) plain F 0.000 0.000 0.000 setrgbcolor (5) -14.830 18.000 S grestore %@EndText %@BeginText restore save %%IncludeFont: Helvetica [ 39/quotesingle 96/grave 128/Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis /Udieresis/aacute/agrave/acircumflex/adieresis/atilde/aring/ccedilla/eacute /egrave/ecircumflex/edieresis/iacute/igrave/icircumflex/idieresis/ntilde /oacute/ograve/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex /udieresis/dagger/degree/cent/sterling/section/bullet/paragraph/germandbls /registered/copyright/trademark/acute/dieresis/.notdef/AE/Oslash /.notdef/plusminus/.notdef/.notdef/yen/mu/.notdef/.notdef /.notdef/.notdef/.notdef/ordfeminine/ordmasculine/.notdef/ae/oslash /questiondown/exclamdown/logicalnot/.notdef/florin/.notdef/.notdef /guillemotleft/guillemotright/ellipsis/.notdef/Agrave/Atilde/Otilde/OE/oe /endash/emdash/quotedblleft/quotedblright/quoteleft/quoteright/divide /.notdef/ydieresis/Ydieresis/fraction/currency/guilsinglleft/guilsinglright /fi/fl/daggerdbl/periodcentered/quotesinglbase/quotedblbase/perthousand /Acircumflex/Ecircumflex/Aacute/Edieresis/Egrave/Iacute/Icircumflex /Idieresis/Igrave/Oacute/Ocircumflex/.notdef/Ograve/Uacute/Ucircumflex /Ugrave/dotlessi/circumflex/tilde/macron/breve/dotaccent/ring/cedilla /hungarumlaut/ogonek/caron] StandardEncoding Re-encode /_Helvetica /Helvetica EncodeFont %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginRect /RT {SR} def /LC {} def /SS {pop} def /PF {} def /PC {} def 1 0 243.000 207.000 0.000 0.000 36.000 45.000 rect %@EndRect gsave 229.500 261.000 T translate 0.0 rotate 1 1 scale 12.000 (_Helvetica) plain F 0.000 0.000 0.000 setrgbcolor ( ) -22.500 11.000 S 0.000 0.000 0.000 setrgbcolor ( ) -19.166 11.000 S grestore restore save gsave 229.500 261.000 T translate 0.0 rotate 1 1 scale %%IncludeFont: Helvetica-Bold [ 39/quotesingle 96/grave 128/Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis /Udieresis/aacute/agrave/acircumflex/adieresis/atilde/aring/ccedilla/eacute /egrave/ecircumflex/edieresis/iacute/igrave/icircumflex/idieresis/ntilde /oacute/ograve/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex /udieresis/dagger/degree/cent/sterling/section/bullet/paragraph/germandbls /registered/copyright/trademark/acute/dieresis/.notdef/AE/Oslash /.notdef/plusminus/.notdef/.notdef/yen/mu/.notdef/.notdef /.notdef/.notdef/.notdef/ordfeminine/ordmasculine/.notdef/ae/oslash /questiondown/exclamdown/logicalnot/.notdef/florin/.notdef/.notdef /guillemotleft/guillemotright/ellipsis/.notdef/Agrave/Atilde/Otilde/OE/oe /endash/emdash/quotedblleft/quotedblright/quoteleft/quoteright/divide /.notdef/ydieresis/Ydieresis/fraction/currency/guilsinglleft/guilsinglright /fi/fl/daggerdbl/periodcentered/quotesinglbase/quotedblbase/perthousand /Acircumflex/Ecircumflex/Aacute/Edieresis/Egrave/Iacute/Icircumflex /Idieresis/Igrave/Oacute/Ocircumflex/.notdef/Ograve/Uacute/Ucircumflex /Ugrave/dotlessi/circumflex/tilde/macron/breve/dotaccent/ring/cedilla /hungarumlaut/ogonek/caron] StandardEncoding Re-encode /_Helvetica-Bold /Helvetica-Bold EncodeFont 36.000 (_Helvetica-Bold) plain F 0.000 0.000 0.000 setrgbcolor (6) -15.832 11.000 S grestore %@EndText %@BeginText restore save %%IncludeFont: Helvetica [ 39/quotesingle 96/grave 128/Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis /Udieresis/aacute/agrave/acircumflex/adieresis/atilde/aring/ccedilla/eacute /egrave/ecircumflex/edieresis/iacute/igrave/icircumflex/idieresis/ntilde /oacute/ograve/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex /udieresis/dagger/degree/cent/sterling/section/bullet/paragraph/germandbls /registered/copyright/trademark/acute/dieresis/.notdef/AE/Oslash /.notdef/plusminus/.notdef/.notdef/yen/mu/.notdef/.notdef /.notdef/.notdef/.notdef/ordfeminine/ordmasculine/.notdef/ae/oslash /questiondown/exclamdown/logicalnot/.notdef/florin/.notdef/.notdef /guillemotleft/guillemotright/ellipsis/.notdef/Agrave/Atilde/Otilde/OE/oe /endash/emdash/quotedblleft/quotedblright/quoteleft/quoteright/divide /.notdef/ydieresis/Ydieresis/fraction/currency/guilsinglleft/guilsinglright /fi/fl/daggerdbl/periodcentered/quotesinglbase/quotedblbase/perthousand /Acircumflex/Ecircumflex/Aacute/Edieresis/Egrave/Iacute/Icircumflex /Idieresis/Igrave/Oacute/Ocircumflex/.notdef/Ograve/Uacute/Ucircumflex /Ugrave/dotlessi/circumflex/tilde/macron/breve/dotaccent/ring/cedilla /hungarumlaut/ogonek/caron] StandardEncoding Re-encode /_Helvetica /Helvetica EncodeFont %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginRect /RT {SR} def /LC {} def /SS {pop} def /PF {} def /PC {} def 1 0 243.000 297.000 0.000 0.000 36.000 45.000 rect %@EndRect gsave 319.500 261.000 T translate 0.0 rotate 1 1 scale 12.000 (_Helvetica) plain F 0.000 0.000 0.000 setrgbcolor ( ) -22.500 11.000 S ( ) -19.166 11.000 S ( ) -15.832 11.000 S ( ) -12.498 11.000 S grestore restore save gsave 319.500 261.000 T translate 0.0 rotate 1 1 scale %%IncludeFont: Helvetica-Bold [ 39/quotesingle 96/grave 128/Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis /Udieresis/aacute/agrave/acircumflex/adieresis/atilde/aring/ccedilla/eacute /egrave/ecircumflex/edieresis/iacute/igrave/icircumflex/idieresis/ntilde /oacute/ograve/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex /udieresis/dagger/degree/cent/sterling/section/bullet/paragraph/germandbls /registered/copyright/trademark/acute/dieresis/.notdef/AE/Oslash /.notdef/plusminus/.notdef/.notdef/yen/mu/.notdef/.notdef /.notdef/.notdef/.notdef/ordfeminine/ordmasculine/.notdef/ae/oslash /questiondown/exclamdown/logicalnot/.notdef/florin/.notdef/.notdef /guillemotleft/guillemotright/ellipsis/.notdef/Agrave/Atilde/Otilde/OE/oe /endash/emdash/quotedblleft/quotedblright/quoteleft/quoteright/divide /.notdef/ydieresis/Ydieresis/fraction/currency/guilsinglleft/guilsinglright /fi/fl/daggerdbl/periodcentered/quotesinglbase/quotedblbase/perthousand /Acircumflex/Ecircumflex/Aacute/Edieresis/Egrave/Iacute/Icircumflex /Idieresis/Igrave/Oacute/Ocircumflex/.notdef/Ograve/Uacute/Ucircumflex /Ugrave/dotlessi/circumflex/tilde/macron/breve/dotaccent/ring/cedilla /hungarumlaut/ogonek/caron] StandardEncoding Re-encode /_Helvetica-Bold /Helvetica-Bold EncodeFont 36.000 (_Helvetica-Bold) plain F 0.000 0.000 0.000 setrgbcolor (7) -9.164 11.000 S grestore %@EndText %@BeginText restore save %%IncludeFont: Helvetica [ 39/quotesingle 96/grave 128/Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis /Udieresis/aacute/agrave/acircumflex/adieresis/atilde/aring/ccedilla/eacute /egrave/ecircumflex/edieresis/iacute/igrave/icircumflex/idieresis/ntilde /oacute/ograve/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex /udieresis/dagger/degree/cent/sterling/section/bullet/paragraph/germandbls /registered/copyright/trademark/acute/dieresis/.notdef/AE/Oslash /.notdef/plusminus/.notdef/.notdef/yen/mu/.notdef/.notdef /.notdef/.notdef/.notdef/ordfeminine/ordmasculine/.notdef/ae/oslash /questiondown/exclamdown/logicalnot/.notdef/florin/.notdef/.notdef /guillemotleft/guillemotright/ellipsis/.notdef/Agrave/Atilde/Otilde/OE/oe /endash/emdash/quotedblleft/quotedblright/quoteleft/quoteright/divide /.notdef/ydieresis/Ydieresis/fraction/currency/guilsinglleft/guilsinglright /fi/fl/daggerdbl/periodcentered/quotesinglbase/quotedblbase/perthousand /Acircumflex/Ecircumflex/Aacute/Edieresis/Egrave/Iacute/Icircumflex /Idieresis/Igrave/Oacute/Ocircumflex/.notdef/Ograve/Uacute/Ucircumflex /Ugrave/dotlessi/circumflex/tilde/macron/breve/dotaccent/ring/cedilla /hungarumlaut/ogonek/caron] StandardEncoding Re-encode /_Helvetica /Helvetica EncodeFont %@BeginRuler %@ 9.0000000000000000000e+0 viewScale %@ 1.1111111111111110490e-1 realScale %@ 8 realDivs %@ 0000 rulerFormat %@EndRuler %@BeginRect /RT {SR} def /LC {} def /SS {pop} def /PF {} def /PC {} def 1 0 234.000 468.000 0.000 0.000 50.000 54.000 rect %@EndRect gsave 495.000 259.000 T translate 0.0 rotate 1 1 scale 12.000 (_Helvetica) plain F 0.000 0.000 0.000 setrgbcolor ( ) -26.500 18.000 S ( ) -23.166 18.000 S ( ) -19.832 18.000 S ( ) -16.498 18.000 S ( ) -13.164 18.000 S ( ) -9.830 18.000 S grestore restore save gsave 495.000 259.000 T translate 0.0 rotate 1 1 scale %%IncludeFont: Helvetica-Bold [ 39/quotesingle 96/grave 128/Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis /Udieresis/aacute/agrave/acircumflex/adieresis/atilde/aring/ccedilla/eacute /egrave/ecircumflex/edieresis/iacute/igrave/icircumflex/idieresis/ntilde /oacute/ograve/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex /udieresis/dagger/degree/cent/sterling/section/bullet/paragraph/germandbls /registered/copyright/trademark/acute/dieresis/.notdef/AE/Oslash /.notdef/plusminus/.notdef/.notdef/yen/mu/.notdef/.notdef /.notdef/.notdef/.notdef/ordfeminine/ordmasculine/.notdef/ae/oslash /questiondown/exclamdown/logicalnot/.notdef/florin/.notdef/.notdef /guillemotleft/guillemotright/ellipsis/.notdef/Agrave/Atilde/Otilde/OE/oe /endash/emdash/quotedblleft/quotedblright/quoteleft/quoteright/divide /.notdef/ydieresis/Ydieresis/fraction/currency/guilsinglleft/guilsinglright /fi/fl/daggerdbl/periodcentered/quotesinglbase/quotedblbase/perthousand /Acircumflex/Ecircumflex/Aacute/Edieresis/Egrave/Iacute/Icircumflex /Idieresis/Igrave/Oacute/Ocircumflex/.notdef/Ograve/Uacute/Ucircumflex /Ugrave/dotlessi/circumflex/tilde/macron/breve/dotaccent/ring/cedilla /hungarumlaut/ogonek/caron] StandardEncoding Re-encode /_Helvetica-Bold /Helvetica-Bold EncodeFont 36.000 (_Helvetica-Bold) plain F 0.000 0.000 0.000 setrgbcolor (8) -6.496 18.000 S grestore %@EndText restore %%Trailer end ---------------9903161209299--