diff options
author | Stefan Reinauer <stepan@coresystems.de> | 2009-04-21 21:45:11 +0000 |
---|---|---|
committer | Stefan Reinauer <stepan@openbios.org> | 2009-04-21 21:45:11 +0000 |
commit | ebf2589e3b9fd15acd41c5b9d430ccad9823162e (patch) | |
tree | f4b82719c9b738cebb9cea4bb967a88a12ca324d /documentation | |
parent | df444bf68abe840ad05d689996110e9354a2fa6e (diff) | |
download | coreboot-ebf2589e3b9fd15acd41c5b9d430ccad9823162e.tar.xz |
Update to this very old document
Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4155 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'documentation')
-rw-r--r-- | documentation/LinuxBIOS-AMD64.tex | 324 | ||||
-rw-r--r-- | documentation/Makefile | 8 | ||||
-rw-r--r-- | documentation/codeflow.eps | 1141 | ||||
-rw-r--r-- | documentation/codeflow.svg | 234 | ||||
-rw-r--r-- | documentation/hypertransport.eps | 527 | ||||
-rw-r--r-- | documentation/hypertransport.svg | 59 |
6 files changed, 454 insertions, 1839 deletions
diff --git a/documentation/LinuxBIOS-AMD64.tex b/documentation/LinuxBIOS-AMD64.tex index 9937f16fea..abe59f8686 100644 --- a/documentation/LinuxBIOS-AMD64.tex +++ b/documentation/LinuxBIOS-AMD64.tex @@ -1,6 +1,6 @@ % % This document is released under the GPL -% Initially written by Stefan Reinauer, <stepan@openbios.org> +% Initially written by Stefan Reinauer, <stepan@coresystems.de> % \documentclass[titlepage,12pt]{article} @@ -18,10 +18,10 @@ colorlinks=false, % pdfpagemode=None, % PDF-Viewer starts without TOC % pdfstartview=FitH, - pdftitle={LinuxBIOS on AMD64}, + pdftitle={coreboot on AMD64}, pdfauthor={Stefan Reinauer}, - pdfsubject={LinuxBIOS configuration and build process}, - pdfkeywords={LinuxBIOS, Opteron, AMD64, Athlon64, Build} + pdfsubject={coreboot configuration and build process}, + pdfkeywords={coreboot, Opteron, AMD64, configuration, Build} } @@ -30,9 +30,9 @@ \setlength{\parindent}{0pt} -\title{LinuxBIOS on AMD64} -\author{Stefan Reinauer $<$stepan@openbios.org$>$} -\date{June 2nd, 2004} +\title{coreboot on AMD64} +\author{Stefan Reinauer $<$stepan@coresystems.de$>$} +\date{April 19th, 2009} \begin{document} @@ -50,12 +50,12 @@ \section{Abstract} -This document targets porting LinuxBIOS to new mainboards and creating -custom firmware images using LinuxBIOS. It describes how to build -LinuxBIOS images for the AMD64 platform, including hypertransport +This document targets porting coreboot to new mainboards and creating +custom firmware images using coreboot. It describes how to build +coreboot images for the AMD64 platform, including hypertransport configuration and pertinent utilities. If you are missing information or find errors in the following descriptions, contact -\href{mailto:stepan@openbios.org}{\textit{Stefan Reinauer $<$stepan@openbios.org$>$}} +\href{mailto:stepan@coresystems.de}{\textit{Stefan Reinauer $<$stepan@coresystems.de$>$}} % @@ -64,6 +64,7 @@ find errors in the following descriptions, contact \section{Changes} \begin{itemize} + \item 2009/04/19 replace LinuxBIOS with coreboot \item 2004/06/02 url and language fixes from Ken Fuchs $<$kfuchs@winternet.com$>$ \item 2004/02/10 acpi and option rom updates \item 2003/11/18 initial release @@ -72,22 +73,22 @@ find errors in the following descriptions, contact % -% 3 What is LinuxBIOS +% 3 What is coreboot % -\section{What is LinuxBIOS?} +\section{What is coreboot?} -LinuxBIOS aims to replace the normal BIOS found on PCs, Alphas, and -other machines with a Linux kernel that can boot Linux from a cold -start. The startup code of an average LinuxBIOS port is about 500 lines -of assembly and 5000 lines of C. It executes 16 instructions to get into -32bit mode and then performs DRAM and other hardware initializations +coreboot aims to replace the normal BIOS found on x86, AMD64, PPC, +Alpha, and other machines with a Linux kernel that can boot Linux from a cold +start. The startup code of an average coreboot port is about 500 lines of +assembly and 5000 lines of C. It executes 16 instructions to get into 32bit +protected mode and then performs DRAM and other hardware initializations required before Linux can take over. The projects primary motivation initially was maintenance of large clusters. Not surprisingly interest and contributions have come from people with varying backgrounds. Nowadays a large and growing number of -Systems can be booted with LinuxBIOS, including embedded systems, +Systems can be booted with coreboot, including embedded systems, Desktop PCs and Servers. % @@ -95,7 +96,7 @@ Desktop PCs and Servers. % \section{Build Requirements} -To build LinuxBIOS for AMD64 from the sources you need a recent Linux +To build coreboot for AMD64 from the sources you need a recent Linux system for x86 or AMD64. SUSE Linux 8.2 or 9.0 are known to work fine. The following toolchain is recommended: @@ -116,31 +117,23 @@ The following toolchain is recommended: \section{Getting the Sources} -The latest LinuxBIOS sources are available via CVS. The CVS repository -is maintained at SourceForge.net (the project name is \emph{FreeBIOS}). -First you should create a directory for your LinuxBIOS trees: +The latest coreboot sources are available via subversion. The subversion +repository is maintained at SourceForge.net (the project name is +\emph{FreeBIOS}). First you should create a directory for your +coreboot trees: { \small \begin{verbatim} -$ mkdir linuxbios -$ cd linuxbios +$ mkdir coreboot +$ cd coreboot \end{verbatim} } -You can get the entire source tree via CVS: +You can get the entire source tree via SVN: { \small \begin{verbatim} -$ cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/freebios login -\end{verbatim} -} - -Hit return when you are asked for a password. Then checkout (or update) -the freebios source tree as follows: - -{ \small -\begin{verbatim} -$ cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/freebios co freebios2 +$ svn co svn://coreboot.org/repos/trunk/coreboot-v2 \end{verbatim} } @@ -148,76 +141,76 @@ Once the source tree is checked out, it can be updated with: { \small \begin{verbatim} -% cvs update -Pd +% svn update \end{verbatim} } -Due to recent problems with SourceForge's CVS infrastructure we set up a -snapshot site that keeps hourly source trees of the last four days. It -is available at \url{http://snapshots.linuxbios.org/}. -Due to major structural enhancements to \hbox{LinuxBIOS}, AMD64 support -is only available in the \texttt{freebios2} tree. This tree reflects (as -of November 2003) LinuxBIOS version 1.1.5 and will lead to LinuxBIOS 2.0 +For the case your corporate firewall blocks port 3690 (subversion) we set up a +snapshot site that keeps the last few hundred source code revisions. It +is available at \url{http://qa.coreboot.org/}. +Due to major structural enhancements to \hbox{coreboot}, AMD64 support +is only available in the \texttt{coreboot-v2} tree. This tree reflects (as +of November 2003) coreboot version 1.1.5 and will lead to coreboot 2.0 when finished. Most x86 hardware is currently only supported by the -LinuxBIOS 1.0 tree. +coreboot 1.0 tree. % -% 6 LinuxBIOS configuration overview +% 6 coreboot configuration overview % -\section{LinuxBIOS configuration overview} -To support a large variety of existing hardware LinuxBIOS allows for a +\section{coreboot configuration overview} +To support a large variety of existing hardware coreboot allows for a lot of configuration options that can be tweaked in several ways: \begin{itemize} \item Firmware image specific configuration options can be set in the image configuration file which is usually found in -\texttt{freebios2/targets/$<$vendor$>$/$<$mainboard$>$/}. Such +\texttt{coreboot-v2/targets/$<$vendor$>$/$<$mainboard$>$/}. Such options are the default amount of output verbosity during bootup, image size, use of fallback mechanisms, firmware image size and payloads (Linux Kernel, Bootloader...) The default configuration file name is -\texttt{Config.lb}, but LinuxBIOS allows multiple configurations to +\texttt{Config.lb}, but coreboot allows multiple configurations to reside in that directory. \item Mainboard specific configuration options can be set in the mainboard configuration file placed in -\texttt{freebios2/src/mainboard/$<$vendor$>$/$<$mainboard$>$}. The +\texttt{coreboot-v2/src/mainboard/$<$vendor$>$/$<$mainboard$>$}. The mainboard configuration file is always called \texttt{Config.lb}. It contains information on the onboard components of the mainboard like CPU type, northbridge, southbridge, hypertransport configuration and SuperIO configuration. This configuration file also allows to include -addon code to hook into the LinuxBIOS initialization mechanism at +addon code to hook into the coreboot initialization mechanism at basically any point. \end{itemize} This document describes different approaches of changing and configuring the -LinuxBIOS source tree when building for AMD64. +coreboot source tree when building for AMD64. % -% 7 Building LinuxBIOS +% 7 Building coreboot % -\section{Building LinuxBIOS} -One of the design goals for building LinuxBIOS was to keep object files +\section{Building coreboot} +One of the design goals for building coreboot was to keep object files out of the source tree in a separate place. This is mandatory for -building parallel LinuxBIOS images for several distinct mainboards -and/or platforms. Therefore building LinuxBIOS consists of two steps: +building parallel coreboot images for several distinct mainboards +and/or platforms. Therefore building coreboot consists of two steps: \begin{itemize} \item creating a build tree which holds all files automatically created by the configuration utility and the object files \item -compiling the LinuxBIOS code and creating a flashable firmware image. +compiling the coreboot code and creating a flashable firmware image. \end{itemize} The first of these two steps is accomplished by the \texttt{buildtarget} -script found in \texttt{freebios2/targets/}. To build LinuxBIOS for +script found in \texttt{coreboot-v2/targets/}. To build coreboot for instance for the AMD Solo Athlon64 mainboard enter: \begin{verbatim} -% cd freebios2/targets +% cd coreboot-v2/targets % ./buildtarget amd/solo \end{verbatim} @@ -225,23 +218,23 @@ This will create a directory containing a Makefile and other software components needed for this build. The directory name is defined in the firmware image specific configuration file. In the case of AMD's Solo mainboard the default directory resides in -\texttt{freebios2/targets/amd/solo/solo}. To build the LinuxBIOS image, do +\texttt{coreboot-v2/targets/amd/solo/solo}. To build the coreboot image, do \begin{verbatim} % cd amd/solo/solo % make \end{verbatim} -The LinuxBIOS image filename is specified in the firmware image specific +The coreboot image filename is specified in the firmware image specific configuration file. The default filename for AMD's Solo mainboard is \texttt{solo.rom}. % -% 8 Programming LinuxBIOS to flash memory +% 8 Programming coreboot to flash memory % -\section{Programming LinuxBIOS to flash memory} -The image resulting from a LinuxBIOS build can be directly programmed to +\section{Programming coreboot to flash memory} +The image resulting from a coreboot build can be directly programmed to a flash device, either using a hardware flash programmer or by using the Linux flash driver devbios or mtd. This document assumes that you use a hardware flash programmer. If you are interested in doing in-system @@ -255,15 +248,15 @@ software flash programming, find detailed information: \newpage % -% 9 LinuxBIOS configuration +% 9 coreboot configuration % -\section{LinuxBIOS configuration} -The following chapters will cope with configuring LinuxBIOS. All +\section{coreboot configuration} +The following chapters will cope with configuring coreboot. All configuration files share some basic rules \begin{itemize} \item -The default configuration file name in LinuxBIOS is \texttt{Config.lb}. +The default configuration file name in coreboot is \texttt{Config.lb}. \item All variables used in a configuration file have to be declared in this file with \texttt{uses VARNAME} before usage. @@ -271,8 +264,8 @@ file with \texttt{uses VARNAME} before usage. Comments can be added on a new line by using the comment identifier \texttt{\#} at the beginning of the line. \item -LinuxBIOS distinguishes between statements and options. Statements cause -the LinuxBIOS configuration mechanism to act, whereas options set +coreboot distinguishes between statements and options. Statements cause +the coreboot configuration mechanism to act, whereas options set variables that are used by the build scripts or source code. \item Default configuration values can be set in the mainboard configuration @@ -280,7 +273,7 @@ files (keyword default) \item Option overrides to the default configuration can only be specified in the build target configuration file -\texttt{freebios2/targets/$<$vendor$>$/$<$mainboard$>$/Config.lb} +\texttt{coreboot-v2/targets/$<$vendor$>$/$<$mainboard$>$/Config.lb} (keyword option) \end{itemize} @@ -297,8 +290,8 @@ used. Example: \end{verbatim} \textbf{NOTE:} Only configuration variables known to the configuration -system can be used in configuration files. LinuxBIOS checks -\texttt{freebios2/src/config/Options.lb} to see whether a configuration +system can be used in configuration files. coreboot checks +\texttt{coreboot-v2/src/config/Options.lb} to see whether a configuration variable is known. \item \begin{verbatim}default\end{verbatim} @@ -338,7 +331,7 @@ quotation marks: The \texttt{option} statement basically behaves identically to the \texttt{default} statement. But unlike default it can only be used in build target configuration files -(\texttt{freebios2/targets/$<$vendor$>$/$<$mainboard$>$}). The option +(\texttt{coreboot-v2/targets/$<$vendor$>$/$<$mainboard$>$}). The option statement allows either to set new options or to override default values set with the default statement in a mainboard configuration file. Syntax and application are the same as with default. @@ -346,12 +339,12 @@ Syntax and application are the same as with default. \end{itemize} \subsection{Firmware image specific configuration} -LinuxBIOS allows to create different firmware images for the same +coreboot allows to create different firmware images for the same hardware. Such images can differ in the amount of output they produce, the payload, the number of subimages they consist of etc. The firmware image specific configuration file can be found in \\ -\texttt{freebios2/targets/$<$vendor$>$/<mainboard$>$}. +\texttt{coreboot-v2/targets/$<$vendor$>$/<mainboard$>$}. \subsubsection{Firmware image specific keywords} In addition to the above described keywords the following statements are @@ -361,13 +354,13 @@ available in firmware image specific configuration files: \item \begin{verbatim}romimage\end{verbatim} The \texttt{romimage} definition describes a single rom build within the -final LinuxBIOS image. Normally there are two romimage definitions per -LinuxBIOS build: \texttt{normal} and \texttt{fallback}. +final coreboot image. Normally there are two romimage definitions per +coreboot build: \texttt{normal} and \texttt{fallback}. Each \texttt{romimage} section needs to specify a mainboard directory and a payload. The mainboard directory contains the mainboard specific configuration file and source code. It is specified relatively to -\texttt{freebios2/src/mainboard}. The payload definition is an absolute +\texttt{coreboot-v2/src/mainboard}. The payload definition is an absolute path to a static elf binary (i.e Linux kernel or etherboot) \begin{verbatim} @@ -384,8 +377,8 @@ end \item \begin{verbatim}buildrom\end{verbatim} The \texttt{buildrom} statement is used to determine which of the -LinuxBIOS image builds (created using \texttt{romimage}) are packed -together to the final LinuxBIOS image. It also specifies the order of +coreboot image builds (created using \texttt{romimage}) are packed +together to the final coreboot image. It also specifies the order of the images and the final image size: \begin{verbatim} @@ -407,7 +400,7 @@ option on how to set them. \item \begin{verbatim}CC\end{verbatim} Target C Compiler. Default is \texttt{\$(CROSS\_COMPILE)gcc}. Set to -\texttt{gcc -m32} for compiling AMD64 LinuxBIOS images on an AMD64 +\texttt{gcc -m32} for compiling AMD64 coreboot images on an AMD64 machine. \item \begin{verbatim}CONFIG_CHIP_CONFIGURE \end{verbatim} @@ -444,7 +437,7 @@ This does not include the fallback payload. Export CMOS option table. Default is \texttt{0}. Set to \texttt{1} if your mainboard has CMOS memory and you want to use it to store -LinuxBIOS parameters (Loglevel, serial line speed, ...) +coreboot parameters (Loglevel, serial line speed, ...) \item \begin{verbatim}CONFIG_ROM_PAYLOAD\end{verbatim} @@ -473,8 +466,8 @@ Default image size. Defaults to \texttt{65535} bytes. \item \begin{verbatim}COREBOOT_EXTRA_VERSION\end{verbatim} -LinuxBIOS extra version. This option has an empty string as default. Set -to any string to add an extra version string to your LinuxBIOS build. +coreboot extra version. This option has an empty string as default. Set +to any string to add an extra version string to your coreboot build. \end{itemize} @@ -521,7 +514,7 @@ one-node system, write: \item \begin{verbatim}driver\end{verbatim} The \texttt{driver} keyword adds an object file to the driver section of a -LinuxBIOS image. This means it can be used by the PCI device +coreboot image. This means it can be used by the PCI device initialization code. Example: \begin{verbatim} @@ -530,7 +523,7 @@ initialization code. Example: \item \begin{verbatim}object\end{verbatim} -The \texttt{object} keyword adds an object file to the LinuxBIOS image. +The \texttt{object} keyword adds an object file to the coreboot image. Per default the object file will be compiled from a \texttt{.c} file with the same name. Symbols defined in such an object file can be used in other object files and drivers. Example: @@ -543,7 +536,7 @@ in other object files and drivers. Example: This keyword can be used to extend the existing file creation rules during the build process. This is useful if external utilities have to -be used for the build. LinuxBIOS on AMD64 uses romcc for it's early +be used for the build. coreboot on AMD64 uses romcc for it's early startup code placed in auto.c. To tell the configuration mechanism how to build \texttt{romcc} files, @@ -569,7 +562,7 @@ are satisfied (using the \texttt{action} keyword). \item \begin{verbatim}mainboardinit\end{verbatim} With the mainboardinit keyword it's possible to include assembler code -directly into the LinuxBIOS image. This is used for early infrastructure +directly into the coreboot image. This is used for early infrastructure initialization, i.e. to switch to protected mode. Example: \begin{verbatim} @@ -578,12 +571,12 @@ initialization, i.e. to switch to protected mode. Example: \item \begin{verbatim}ldscript\end{verbatim} -The GNU linker ld is used to link object files together to a LinuxBIOS +The GNU linker ld is used to link object files together to a coreboot ROM image. Since it is a lot more comfortable and flexible to use the GNU linker with linker scripts (ldscripts) than to create complex command line -calls, LinuxBIOS features including linker scripts to control image +calls, coreboot features including linker scripts to control image creation. Example: \begin{verbatim} @@ -593,12 +586,12 @@ creation. Example: \item \begin{verbatim}dir\end{verbatim} -LinuxBIOS reuses as much code between the different ports as possible. +coreboot reuses as much code between the different ports as possible. To achieve this, commonly used code can be stored in a separate directory. For a new mainboard, it is enough to know that the code in that directory can be used as is. -LinuxBIOS will also read a \texttt{Config.lb} file stored in that +coreboot will also read a \texttt{Config.lb} file stored in that directory. This happens with: \begin{verbatim} @@ -630,7 +623,7 @@ Example: The \texttt{northbridge} keyword describes a system northbridge. Some systems, like AMD64, can have more than one northbridge, i.e. one per CPU node. Each northbridge is described by the path to the northbridge -code in LinuxBIOS (relative to \texttt{freebios2/src/northbridge}), i.e. +code in coreboot (relative to \texttt{coreboot-v2/src/northbridge}), i.e. \texttt{amd/amdk8} and a unique name (i.e \texttt{mc0}) \\ Example: @@ -642,7 +635,7 @@ Example: \item \begin{verbatim}southbridge\end{verbatim} -To simplify the handling of bus bridges in a LinuxBIOS system, all +To simplify the handling of bus bridges in a coreboot system, all bridges available in a system that are not northbridges (i.e AGP, IO, PCIX) are seen as southbridges. @@ -672,7 +665,7 @@ The \texttt{pci} keyword can only occur within a \texttt{northbridge} or that are provided by the bridge. Generally all bridge sections have a couple of \texttt{pci} keywords. -The first occurrence of the \texttt{pci} keyword tells LinuxBIOS where +The first occurrence of the \texttt{pci} keyword tells coreboot where the bridge devices start, relative to the PCI configuration space used by the bridge. The following occurences of the \texttt{pci} keyword describe the provided devices. @@ -716,7 +709,7 @@ end \item \begin{verbatim}superio\end{verbatim} SuperIO devices are basically handled like brigdes. They are taking -their driver code from \texttt{freebios2/src/superio/}. They don't +their driver code from \texttt{coreboot-v2/src/superio/}. They don't provide a PCI compatible configuration interface, but instead are ISA PnP devices. Normally they are connected to a southbridge. If this is the case, the \texttt{superio} section will be a subsection of the @@ -796,23 +789,23 @@ mandatory if you want to boot a 64bit Linux kernel on an AMD64 system. \item \begin{verbatim}STACK_SIZE\end{verbatim} -LinuxBIOS stack size. The size of the function call stack defaults to +coreboot stack size. The size of the function call stack defaults to \texttt{0x2000} (8k). \item \begin{verbatim}HEAP_SIZE\end{verbatim} -LinuxBIOS heap size. The heap is used when LinuxBIOS allocates memory +coreboot heap size. The heap is used when coreboot allocates memory with malloc(). The default heap size is \texttt{0x2000}, but AMD64 boards generally set it to \texttt{0x4000} (16k) \item \begin{verbatim}XIP_ROM_BASE\end{verbatim} -Start address of area to cache during LinuxBIOS execution directly from +Start address of area to cache during coreboot execution directly from ROM. \item \begin{verbatim}XIP_ROM_SIZE\end{verbatim} -Size of area to cache during LinuxBIOS execution directly from ROM +Size of area to cache during coreboot execution directly from ROM \item \begin{verbatim}CONFIG_COMPRESS\end{verbatim} @@ -831,19 +824,19 @@ decompression is needed). \section{Tweaking the source code} Besides configuring the existing code it is sometimes necessary or -desirable to tweak certain parts of LinuxBIOS by direct changes to the +desirable to tweak certain parts of coreboot by direct changes to the code. This chapter covers some possible enhancements and changes that -are needed when porting LinuxBIOS to a new mainboard or just come +are needed when porting coreboot to a new mainboard or just come handy now and then. \subsection{Hypertransport configuration} -Before LinuxBIOS is able to activate all CPUs and detect bridges +Before coreboot is able to activate all CPUs and detect bridges attached to these CPUs (and thus, see all devices attached to the system) it has to initialize the coherent hypertransport devices. The current algorithms to do coherent hypertransport initialization are not fully, automatically evaluating the hypertransport chain graph. -Therefore the code needs to be adapted when porting LinuxBIOS to a new +Therefore the code needs to be adapted when porting coreboot to a new AMD64 mainboard. An example arrangement of hypertransport devices looks like this: @@ -867,7 +860,7 @@ two steps. \item Setting outgoing connections The algorithm needs to know which outgoing port of a CPU node is connected to the directly succeeding node. This is done in -\texttt{freebios2/src/mainboard/$<$vendor$>$/$<$mainboard$>$/auto.c} +\texttt{coreboot-v2/src/mainboard/$<$vendor$>$/$<$mainboard$>$/auto.c} with a number of preprocessor defines (one define for two-node systems, three defines for four-node systems). @@ -895,7 +888,7 @@ These three message types are routed using different hypertransport ports. The routing information is written to the AMD K8 routing table. In an Nnode system this routing table consists of 3*N*N entries , one for each message type and for each possible CPU --> CPU communication. For -simplicity LinuxBIOS keeps the 3 routing entries for each CPU --> CPU +simplicity coreboot keeps the 3 routing entries for each CPU --> CPU communication in one machine word. The routing table of each node looks like this: @@ -996,7 +989,7 @@ static unsigned int generate_row \subsection{DRAM configuration} Setting up the RAM controller(s) is probably the most complex part of -LinuxBIOS. Basically LinuxBIOS serially initializes all RAM controllers +coreboot. Basically coreboot serially initializes all RAM controllers in the system, using SPDROM (serial presence detect) data to set timings, size and other properties. The SPD data is usually read utilizing the I2C SMBUS interface of the southbridge. @@ -1015,7 +1008,7 @@ struct mem_controller { Available mainboard implementations and CPUs create the need to add special setup code to RAM initialization in a number of places. -LinuxBIOS provides hooks to easily add code in these places without +coreboot provides hooks to easily add code in these places without having to change the generic code. Whether these hooks have to be used depends on the mainboard design. In many cases the functions executed by the hooks just carry out trivial default settings or they are even @@ -1024,7 +1017,7 @@ empty. Some mainboard/CPU combinations need to trigger an additional memory controller reset before the memory can be initialized properly. This is, for example, used to get memory working on preC stepping AMD64 -processors. LinuxBIOS provides two hooks for triggering onboard memory +processors. coreboot provides two hooks for triggering onboard memory reset logic: \begin{itemize} @@ -1046,10 +1039,10 @@ static inline void activate_spd_rom (const struct mem_controller *ctrl) The way SMBUS hub information is coded into the \texttt{mem\_controller} structure is mainboard implementation specific and not -described here. See \texttt{freebios2/src/mainboard/amd/quartet/auto.c} +described here. See \texttt{coreboot-v2/src/mainboard/amd/quartet/auto.c} for an example. -LinuxBIOS folks have agreed on SPD data being the central information +coreboot folks have agreed on SPD data being the central information source for RAM specific information. But not all mainboards/RAM modules feature a physical SPD ROM. To still allow an easy to use SPD driven setup, there is a hook that abstracts reading the SPD ROM @@ -1086,9 +1079,9 @@ default HAVE_PIRQ_TABLE=1 default IRQ_SLOT_COUNT=7 \end{verbatim} -This will make LinuxBIOS look for the file \\ -\texttt{freebios2/src/mainboard/<vendor>/<mainboard>/irq\_tables.c} which -contains the source code definition of the IRQ table. LinuxBIOS corrects +This will make coreboot look for the file \\ +\texttt{coreboot-v2/src/mainboard/<vendor>/<mainboard>/irq\_tables.c} which +contains the source code definition of the IRQ table. coreboot corrects small inconsistencies in the IRQ table during startup (checksum and number of entries), but it is not yet writing IRQ tables in a completely dynamic way. @@ -1104,11 +1097,11 @@ controller instead (vendor id=\texttt{0x1022}, device id=\texttt{0x7443}) \subsection {MP Tables} -LinuxBIOS contains code to create MP tables conforming the -Multiprocessor Specification V1.4. To include an MP Table in a LinuxBIOS +coreboot contains code to create MP tables conforming the +Multiprocessor Specification V1.4. To include an MP Table in a coreboot image, the following configuration variables have to be set (in the mainboard specific configuration file -\texttt{freebios2/src/mainboard/<vendor><mainboard>/Config.lb}): +\texttt{coreboot-v2/src/mainboard/<vendor><mainboard>/Config.lb}): \begin{verbatim} default CONFIG_SMP=1 @@ -1116,8 +1109,8 @@ default CONFIG_MAX_CPUS=1 # 2,4,.. default HAVE_MP_TABLE=1 \end{verbatim} -LinuxBIOS will then look for a function for setting up the MP table in -the file \texttt{freebios2/src/mainboard<vendor>/<mainboard>/mptable.c}: +coreboot will then look for a function for setting up the MP table in +the file \texttt{coreboot-v2/src/mainboard<vendor>/<mainboard>/mptable.c}: \begin{verbatim} void *smp_write_config_table(void *v, unsigned long * processor_map) @@ -1130,7 +1123,7 @@ revisions. \subsection {ACPI Tables} -There is initial ACPI support in LinuxBIOS now. Currently the only gain with +There is initial ACPI support in coreboot now. Currently the only gain with this is the ability to use HPET timers in Linux. To achieve this, there is a framework that can generate the following tables: \begin{itemize} @@ -1140,7 +1133,7 @@ framework that can generate the following tables: \item HPET \end{itemize} -To enable ACPI in your LinuxBIOS build, add the following lines to your +To enable ACPI in your coreboot build, add the following lines to your configuration files: \begin{verbatim} uses HAVE_ACPI_TABLES @@ -1155,16 +1148,16 @@ It's likely that more ACPI support will follow, when there is need for certain features. \subsection{POST} -LinuxBIOS has three different methods of handling POST codes. They can +coreboot has three different methods of handling POST codes. They can be triggered using configuration file options. \begin{itemize} \item \emph{Ignore POST completely}. No early code debugging is possible with this setting. Set the configuration variable \texttt{NO\_POST} to -\texttt{1} to switch off all POST handling in LinuxBIOS. +\texttt{1} to switch off all POST handling in coreboot. \item \emph{Normal IO port 80 POST}. This is the default behavior of -LinuxBIOS. No configuration variables have to be set. To be able to see +coreboot. No configuration variables have to be set. To be able to see port 80 POST output, you need a POST expansion card for ISA or PCI. Port 80 POST allows simple debugging without any other output method available (serial interface or VGA display) @@ -1178,7 +1171,7 @@ configuration variable \texttt{CONFIG\_SERIAL\_POST} to the value 1. \subsection{HDT Debugging} -If you are debugging your LinuxBIOS code with a Hardware Debug Tool +If you are debugging your coreboot code with a Hardware Debug Tool (HDT), you can find the source code line for a given physical EIP address as follows: Look the address up in the file linuxbios.map. Then search the label Lxx in the file auto.inc created by romcc. The original @@ -1186,7 +1179,7 @@ source code file and line number is mentioned in auto.inc. \subsection{Device Drivers} -With only a few data structures LinuxBIOS features a simple but flexible +With only a few data structures coreboot features a simple but flexible device driver interface. This interface is not intended for autonomously driving the devices but to initialize all system components so that they can be used by the booted operating system. @@ -1220,9 +1213,9 @@ initialize and operate the device: By separating the two structures above, M:N relations between compatible devices and drivers can be described. The driver source code containing -above data structures and code have to be added to a LinuxBIOS image +above data structures and code have to be added to a coreboot image using the driver keyword in the mainboard specific configuration file \\ -\texttt{freebios2/src/mainboard/<vendor>/<mainboard>/Config.lb}: +\texttt{coreboot-v2/src/mainboard/<vendor>/<mainboard>/Config.lb}: \begin{verbatim} driver lsi_scsi.o @@ -1230,20 +1223,20 @@ using the driver keyword in the mainboard specific configuration file \\ \subsection{Bus Bridges} -Currently all bridges supported in the LinuxBIOS2 tree are transparent +Currently all bridges supported in the coreboot-v2 tree are transparent bridges. This means, once the bridge is initialized, it's remote devices -are visible on one of the PCI buses without special probing. LinuxBIOS +are visible on one of the PCI buses without special probing. coreboot supports also bridges that are nontransparent. The driver support code can provide a \texttt{scan\_bus} function to scan devices behind the bridge. \subsection{CPU Reset} When changing speed and width of hypertransport chain connections -LinuxBIOS has to either assert an LDTSTOP or a reset to make the changes -become active. Additionally Linux can do a firmware reset, if LinuxBIOS +coreboot has to either assert an LDTSTOP or a reset to make the changes +become active. Additionally Linux can do a firmware reset, if coreboot provides the needed infrastructure. To use this capability, define the option \texttt{HAVE\_HARD\_RESET} and add an object file specifying the reset code in your mainboard specific configuration file -\texttt{freebios2/src/mainboard/$<$vendor$>$/$<$mainboard$>$/Config.lb}: +\texttt{coreboot-v2/src/mainboard/$<$vendor$>$/$<$mainboard$>$/Config.lb}: \begin{verbatim} default HAVE_HARD_RESET=1 @@ -1258,41 +1251,41 @@ of the system reset: void hard_reset(void); \end{verbatim} -See \texttt{freebios2/src/mainboard/arima/hdama/reset.c} for an example +See \texttt{coreboot-v2/src/mainboard/arima/hdama/reset.c} for an example implementation. \newpage % -% 11. LinuxBIOS Internals +% 11. coreboot Internals % -\section{LinuxBIOS Internals} +\section{coreboot Internals} This chapter covers some of the internal structures and algorithms of -LinuxBIOS that have not been mentioned so far. +coreboot that have not been mentioned so far. \subsection{Code Flow} \begin{figure}[htb] \centering \includegraphics[scale=0.7]{codeflow.pdf} -\caption{LinuxBIOS rough Code Flow} +\caption{coreboot rough Code Flow} \label{fix:codeflow} \end{figure} \newpage \subsection{Fallback mechanism} -LinuxBIOS provides a mechanism to pack two different LinuxBIOS builds -within one LinuxBIOS ROM image. Using the system CMOS memory LinuxBIOS +coreboot provides a mechanism to pack two different coreboot builds +within one coreboot ROM image. Using the system CMOS memory coreboot determines whether the last boot with a default image succeeded and boots a failsafe image on failure. This allows insystem testing without the risk to render the system unusable. See -\texttt{freebios2/src/mainboard/arima/hdama/failover.c} for example +\texttt{coreboot-v2/src/mainboard/arima/hdama/failover.c} for example code. The fallback mechanism can be used with the \texttt{cmos\_util}. \subsection{(Un) Supported Standards} -LinuxBIOS supports the following standards +coreboot supports the following standards \begin{itemize} \item Multiprocessing Specification (MPSPEC) 1.4 \item IRQ Tables (PIRQ) @@ -1305,18 +1298,18 @@ probably not be supported in future revisions: \item APM \end{itemize} -\subsection{LinuxBIOS table} -LinuxBIOS stores information about the system in a data structure called -the LinuxBIOS table. This table can be read under Linux using the tool -lxbios from the Lawrence Livermore National Laboratory. +\subsection{coreboot table} +coreboot stores information about the system in a data structure called +the coreboot table. This table can be read under Linux using the tool +nvramtool from the Lawrence Livermore National Laboratory. Get more information about lxbios and the utility itself at \url{http://www.llnl.gov/linux/lxbios/lxbios.html} \subsection{ROMCC limitations} -ROMCC, part of the LinuxBIOS project, is a C compiler that translates to +ROMCC, part of the coreboot project, is a C compiler that translates to completely rommable code. This means the resulting code does not need -any memory to work. This is one of the major improvements in LinuxBIOS +any memory to work. This is one of the major improvements in coreboot V2, since it allows almost all code to be written in C. DRAM initialization can be factored and reused more easily among mainboards and platforms. @@ -1331,12 +1324,12 @@ time. If you run out of registers during compilation, try to refactor your code. \subsection{CMOS handling} -LinuxBIOS can use the mainboard's CMOS memory to store information +coreboot can use the mainboard's CMOS memory to store information defined in a data structure called the CMOS table . This information contains serial line speed, fallback boot control, output verbosity, default boot device, ECC control, and more. It can be easily enhanced by enhancing the CMOS table. This table, if present, is found at -\texttt{freebios2/src/mainboard/$<$vendor$>$/$<$mainboard$>$/cmos.layout}. +\texttt{coreboot-v2/src/mainboard/$<$vendor$>$/$<$mainboard$>$/cmos.layout}. It describes the available options, their possible values and their position within the CMOS memory. The layout file looks as follows: \begin{verbatim} @@ -1358,16 +1351,16 @@ position within the CMOS memory. The layout file looks as follows: \end{verbatim} To change CMOS values from a running Linux system, use the -\texttt{cmos\_util}, provided by Linux Networks as part of the LinuxBIOS +\texttt{cmos\_util}, provided by Linux Networks as part of the coreboot utilities suite. Get it at \textit{ftp://ftp.lnxi.com/pub/linuxbios/utilities/} \subsection {Booting Payloads} -LinuxBIOS can load a payload binary from a Flash device or IDE. This +coreboot can load a payload binary from a Flash device or IDE. This payload can be a boot loader, like FILO or Etherboot, a kernel image, or any other static ELF binary. -To create a Linux kernel image, that is bootable in LinuxBIOS, you have +To create a Linux kernel image, that is bootable in coreboot, you have to use mkelfImage. The command line I used, looks like follows: \begin{verbatim} @@ -1436,9 +1429,9 @@ controller firmware and similar. Without this initialization, an operating system can not take advantage of the hardware, so there needs to be a way to address this issue. There are several alternatives: -\subsection{Native LinuxBIOS Support} +\subsection{Native coreboot Support} -For some devices (ie Trident Cyberblade 3d) there is native LinuxBIOS +For some devices (ie Trident Cyberblade 3d) there is native coreboot support This means there is a small driver bound to the PCI id of the device that is called after PCI device ressources are allotted. @@ -1458,7 +1451,7 @@ CONs: \subsection{Using Native Linux Support} -A simple way of getting a whole lot of drivers available for LinuxBIOS +A simple way of getting a whole lot of drivers available for coreboot is to reuse Linux drivers by putting a Linux kernel to flash. This works, because no drivers are needed to get the Linux kernel (as opposed to store the kernel on a harddisk connected to isa/scsi/raid storage) @@ -1510,7 +1503,7 @@ bytecode that runs with minimal footprint on all architectures that have an Open Firmware implementation. There is a free Open Firmware implementation available, called OpenBIOS, -that runs on top of LinuxBIOS. See www.openbios.org +that runs on top of coreboot. See www.openbios.org PROs: \begin{itemize} @@ -1529,7 +1522,7 @@ CONs: % \section{Image types} -There used to be one image type for LinuxBIOS, as described above. Since this paper was written (2004) there have been many changes. First, the name +There used to be one image type for coreboot, as described above. Since this paper was written (2004) there have been many changes. First, the name was changed to coreboot, for many reasons. Second, Ying-Hai Liu, then of AMD, now of Sun, added Cache As Ram support (CAR) for many AMD CPUs, which both simplified and complicated things. Simplification came with the removal of romcc; complication came with the addition of new ways to build. There are two big additions to the build process and, furthermore, more than two new CONFIG variables to control them. @@ -1702,7 +1695,7 @@ No significant change from romcc code, except that the CAR code has to set up a \begin{itemize} \item payload -LinuxBIOS only cares about low level machine initialization, but also has +coreboot only cares about low level machine initialization, but also has very simple mechanisms to boot a file either from FLASHROM or IDE. That file, possibly a Linux Kernel, a boot loader or Etherboot, are called payload, since it is the first software executed that does not cope with @@ -1721,14 +1714,11 @@ ROMs they can be electronically erased and reprogrammed. % \section{Bibliography} -\subsection{Additional Papers on LinuxBIOS} +\subsection{Additional Papers on coreboot} \begin{itemize} - \item { \small - \textit{\url{http://www.linuxnetworx.com/products/linuxbios_white_paper.pdf}} - } \item - \textit{\url{http://www.linuxbios.org/papers/}} + \textit{\url{http://www.coreboot.org/Documentation}} \item \textit{\url{http://www.lysator.liu.se/upplysning/fa/linuxbios.pdf}} \item @@ -1739,7 +1729,7 @@ ROMs they can be electronically erased and reprogrammed. \begin{itemize} \item Etherboot: \textit{\url{http://www.etherboot.org/}} - \item Filo: \textit{\url{http://te.to/~ts1/filo/}} + \item Filo: \textit{\url{http://www.coreboot.org/FILO}} \item OpenBIOS: \textit{\url{http://www.openbios.org/}} \end{itemize} diff --git a/documentation/Makefile b/documentation/Makefile index 98914914dd..1c01d577b0 100644 --- a/documentation/Makefile +++ b/documentation/Makefile @@ -10,11 +10,11 @@ FIGS=codeflow.pdf hypertransport.pdf all: LinuxBIOS-AMD64.pdf -codeflow.pdf: codeflow.eps - epstopdf $< -o=$@ +codeflow.pdf: codeflow.svg + svg2pdf $< $@ -hypertransport.pdf: hypertransport.eps - epstopdf $< -o=$@ +hypertransport.pdf: hypertransport.svg + svg2pdf $< $@ LinuxBIOS-AMD64.toc: $(FIGS) LinuxBIOS-AMD64.tex # 2 times to make sure we have a current toc. diff --git a/documentation/codeflow.eps b/documentation/codeflow.eps deleted file mode 100644 index 68d3ab8715..0000000000 --- a/documentation/codeflow.eps +++ /dev/null @@ -1,1141 +0,0 @@ -%!PS-Adobe-3.0 EPSF-3.0 -%%BoundingBox: 0 0 233 617 -%%Pages: 0 -%%Creator: Sun Microsystems, Inc. -%%Title: none -%%CreationDate: none -%%LanguageLevel: 2 -%%EndComments -%%BeginProlog -%%BeginResource: SDRes -/b4_inc_state save def -/dict_count countdictstack def -/op_count count 1 sub def -userdict begin -0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit[] 0 setdash newpath -/languagelevel where {pop languagelevel 1 ne {false setstrokeadjust false setoverprint} if} if -/bdef {bind def} bind def -/c {setrgbcolor} bdef -/l {neg lineto} bdef -/rl {neg rlineto} bdef -/lc {setlinecap} bdef -/lj {setlinejoin} bdef -/lw {setlinewidth} bdef -/ml {setmiterlimit} bdef -/ld {setdash} bdef -/m {neg moveto} bdef -/ct {6 2 roll neg 6 2 roll neg 6 2 roll neg curveto} bdef -/r {rotate} bdef -/t {neg translate} bdef -/s {scale} bdef -/sw {show} bdef -/gs {gsave} bdef -/gr {grestore} bdef -/f {findfont dup length dict begin -{1 index /FID ne {def} {pop pop} ifelse} forall /Encoding ISOLatin1Encoding def -currentdict end /NFont exch definefont pop /NFont findfont} bdef -/p {closepath} bdef -/sf {scalefont setfont} bdef -/ef {eofill}bdef -/pc {closepath stroke}bdef -/ps {stroke}bdef -/pum {matrix currentmatrix}bdef -/pom {setmatrix}bdef -/bs {/aString exch def /nXOfs exch def /nWidth exch def currentpoint nXOfs 0 rmoveto pum nWidth aString stringwidth pop div 1 scale aString show pom moveto} bdef -%%EndResource -%%EndProlog -%%BeginSetup -%%EndSetup -%%Page: 1 1 -%%BeginPageSetup -%%EndPageSetup -pum -0.02838 0.02832 s -0 -21781 t -/tm matrix currentmatrix def -tm setmatrix --3068 -1826 t -1 1 s -0.703 0.703 0.703 c 7143 8527 m 3068 8527 l 3068 7415 l 11218 7415 l -11218 8527 l 7143 8527 l p ef -0 lw 1 lj 0.003 0.003 0.003 c 7143 8527 m 3068 8527 l 3068 7415 l 11218 7415 l -11218 8527 l 7143 8527 l pc -gs -pum -5714 8202 t -338 -163 m 338 -326 l 321 -326 l 313 -270 300 -259 244 -259 ct 141 -259 l -141 -416 l 141 -436 145 -440 164 -440 ct 260 -440 l 340 -440 355 -429 367 -366 ct -385 -366 l 383 -467 l 8 -467 l 8 -453 l 60 -449 69 -439 69 -390 ct 69 -84 l -69 -26 62 -16 8 -13 ct 8 0 l 206 0 l 206 -13 l 151 -16 141 -26 141 -76 ct -141 -230 l 244 -230 l 301 -230 313 -220 321 -163 ct p ef -709 -46 m 697 -36 688 -33 677 -33 ct 661 -33 656 -43 656 -74 ct 656 -211 l -656 -248 653 -268 642 -285 ct 627 -311 596 -324 555 -324 ct 488 -324 436 -290 436 -245 ct -436 -229 450 -215 466 -215 ct 483 -215 498 -229 498 -244 ct 498 -247 497 -251 497 -256 ct -495 -262 495 -268 495 -273 ct 495 -292 517 -307 545 -307 ct 580 -307 599 -287 599 -249 ct -599 -206 l 490 -162 478 -156 448 -129 ct 433 -115 423 -91 423 -68 ct 423 -24 454 7 497 7 ct -528 7 557 -7 600 -44 ct 603 -7 616 7 645 7 ct 669 7 684 -1 709 -28 ct p -599 -86 m 599 -64 596 -58 581 -50 ct 564 -40 544 -33 529 -33 ct 505 -33 485 -57 485 -88 ct -485 -91 l 485 -132 514 -158 599 -189 ct p ef -727 -439 m 731 -439 l 739 -440 747 -441 753 -441 ct 776 -441 783 -431 783 -398 ct -783 -61 l 783 -23 773 -14 728 -10 ct 728 0 l 895 0 l 895 -10 l 850 -13 842 -20 842 -59 ct -842 -480 l 839 -482 l 802 -470 776 -463 727 -451 ct p ef -939 -439 m 943 -439 l 951 -440 959 -441 965 -441 ct 988 -441 995 -431 995 -398 ct -995 -61 l 995 -23 985 -14 940 -10 ct 940 0 l 1107 0 l 1107 -10 l 1062 -13 1054 -20 1054 -59 ct -1054 -480 l 1051 -482 l 1014 -470 988 -463 939 -451 ct p ef -1246 -480 m 1242 -482 l 1212 -471 1193 -465 1160 -456 ct 1140 -451 l 1140 -439 l -1144 -440 1147 -440 1152 -440 ct 1180 -440 1186 -434 1186 -404 ct 1186 -38 l -1186 -16 1246 7 1303 7 ct 1396 7 1468 -70 1468 -171 ct 1468 -258 1414 -324 1344 -324 ct -1301 -324 1260 -299 1246 -264 ct p -1246 -227 m 1246 -254 1279 -280 1315 -280 ct 1370 -280 1406 -225 1406 -139 ct -1406 -60 1372 -15 1314 -15 ct 1277 -15 1246 -31 1246 -49 ct p ef -1820 -46 m 1808 -36 1799 -33 1788 -33 ct 1772 -33 1767 -43 1767 -74 ct 1767 -211 l -1767 -248 1764 -268 1753 -285 ct 1738 -311 1707 -324 1666 -324 ct 1599 -324 1547 -290 1547 -245 ct -1547 -229 1561 -215 1577 -215 ct 1594 -215 1609 -229 1609 -244 ct 1609 -247 1608 -251 1608 -256 ct -1606 -262 1606 -268 1606 -273 ct 1606 -292 1628 -307 1656 -307 ct 1691 -307 1710 -287 1710 -249 ct -1710 -206 l 1601 -162 1589 -156 1559 -129 ct 1544 -115 1534 -91 1534 -68 ct -1534 -24 1565 7 1608 7 ct 1639 7 1668 -7 1711 -44 ct 1714 -7 1727 7 1756 7 ct 1780 7 1795 -1 1820 -28 ct -p -1710 -86 m 1710 -64 1707 -58 1692 -50 ct 1675 -40 1655 -33 1640 -33 ct 1616 -33 1596 -57 1596 -88 ct -1596 -91 l 1596 -132 1625 -158 1710 -189 ct p ef -2106 -110 m 2073 -60 2047 -43 2007 -43 ct 1943 -43 1898 -100 1898 -181 ct 1898 -254 1936 -304 1994 -304 ct -2019 -304 2028 -296 2035 -270 ct 2039 -254 l 2045 -235 2058 -222 2073 -222 ct -2091 -222 2106 -235 2106 -252 ct 2106 -291 2057 -324 1998 -324 ct 1963 -324 1927 -310 1898 -285 ct -1863 -254 1843 -206 1843 -150 ct 1843 -58 1899 7 1977 7 ct 2009 7 2037 -4 2063 -26 ct -2082 -43 2095 -62 2116 -103 ct p ef -2147 -439 m 2157 -440 2163 -441 2170 -441 ct 2193 -441 2200 -432 2200 -398 ct -2200 -57 l 2200 -21 2198 -19 2147 -10 ct 2147 0 l 2313 0 l 2313 -10 l -2299 -11 l 2270 -12 2260 -22 2260 -47 ct 2260 -177 l 2359 -45 l 2361 -42 l -2362 -40 2363 -38 2366 -36 ct 2371 -28 2373 -24 2373 -21 ct 2373 -14 2367 -10 2359 -10 ct -2345 -10 l 2345 0 l 2499 0 l 2499 -10 l 2468 -12 2446 -26 2416 -62 ct -2308 -199 l 2329 -218 l 2379 -264 2423 -297 2443 -302 ct 2454 -305 2464 -307 2476 -307 ct -2481 -307 l 2481 -317 l 2337 -317 l 2337 -307 l 2365 -307 2373 -304 2373 -294 ct -2373 -288 2366 -278 2356 -270 ct 2260 -184 l 2260 -480 l 2257 -482 l 2230 -473 2210 -468 2169 -456 ct -2147 -451 l p ef -2686 -115 m 2694 -163 2706 -191 2732 -224 ct 2764 -264 2764 -264 2774 -278 ct -2797 -313 2806 -338 2806 -367 ct 2806 -394 2797 -420 2780 -436 ct 2756 -461 2714 -477 2676 -477 ct -2611 -477 2562 -433 2562 -374 ct 2562 -346 2574 -331 2595 -331 ct 2612 -331 2624 -343 2624 -360 ct -2624 -369 2620 -378 2610 -390 ct 2601 -400 2598 -406 2598 -412 ct 2598 -434 2630 -456 2665 -456 ct -2707 -456 2741 -418 2741 -371 ct 2741 -338 2732 -300 2715 -261 ct 2695 -216 l -2682 -181 2674 -146 2674 -115 ct p -2681 -69 m 2660 -69 2643 -52 2643 -30 ct 2643 -9 2659 5 2680 5 ct 2703 5 2719 -9 2719 -31 ct -2719 -52 l 2701 -69 l p ef -pom -gr -0.703 0.703 0.703 c 7143 2938 m 3068 2938 l 3068 1826 l 11218 1826 l -11218 2938 l 7143 2938 l p ef -0.003 0.003 0.003 c 7143 2938 m 3068 2938 l 3068 1826 l 11218 1826 l 11218 2938 l -7143 2938 l pc -gs -pum -3994 2619 t -421 -119 m 401 -119 l 366 -43 336 -26 235 -26 ct 216 -26 l 181 -26 151 -29 146 -34 ct -143 -36 141 -44 141 -56 ct 141 -230 l 250 -230 l 308 -230 319 -221 328 -163 ct -344 -163 l 344 -326 l 328 -326 l 323 -297 320 -287 312 -277 ct 303 -265 283 -259 250 -259 ct -141 -259 l 141 -416 l 141 -436 146 -440 165 -440 ct 260 -440 l 340 -440 355 -429 367 -366 ct -385 -366 l 383 -467 l 8 -467 l 8 -453 l 60 -449 69 -439 69 -390 ct 69 -76 l -69 -27 60 -16 8 -13 ct 8 0 l 389 0 l p ef -461 -280 m 465 -283 472 -283 480 -283 ct 500 -283 506 -273 506 -238 ct 506 -63 l -506 -23 498 -13 462 -10 ct 462 0 l 612 0 l 612 -10 l 576 -13 565 -21 565 -47 ct -565 -245 l 599 -277 615 -285 638 -285 ct 673 -285 690 -264 690 -217 ct 690 -69 l -690 -25 680 -13 645 -10 ct 645 0 l 792 0 l 792 -10 l 757 -14 749 -22 749 -57 ct -749 -218 l 749 -285 718 -324 666 -324 ct 633 -324 611 -312 563 -267 ct 563 -323 l -558 -324 l 524 -312 500 -304 461 -292 ct p ef -1000 -317 m 928 -317 l 928 -399 l 928 -406 928 -408 923 -408 ct 918 -402 914 -396 909 -389 ct -882 -350 852 -316 841 -313 ct 833 -308 829 -303 829 -300 ct 829 -297 829 -296 832 -295 ct -869 -295 l 869 -82 l 869 -23 890 7 932 7 ct 966 7 993 -9 1016 -46 ct 1007 -54 l -992 -36 980 -29 965 -29 ct 939 -29 928 -48 928 -93 ct 928 -295 l 1000 -295 l -p ef -1320 -115 m 1286 -62 1255 -41 1210 -41 ct 1170 -41 1140 -62 1119 -102 ct 1106 -129 1101 -152 1100 -195 ct -1317 -195 l 1312 -241 1305 -261 1287 -284 ct 1266 -309 1233 -324 1197 -324 ct -1161 -324 1128 -312 1101 -288 ct 1068 -259 1049 -208 1049 -151 ct 1049 -53 1100 7 1181 7 ct -1248 7 1301 -34 1331 -110 ct p -1101 -218 m 1109 -273 1133 -299 1176 -299 ct 1219 -299 1236 -279 1245 -218 ct -p ef -1353 -275 m 1363 -277 1370 -278 1378 -278 ct 1396 -278 1402 -266 1402 -235 ct -1402 -59 l 1402 -24 1397 -19 1352 -10 ct 1352 0 l 1521 0 l 1521 -10 l -1473 -12 1461 -23 1461 -63 ct 1461 -222 l 1461 -244 1492 -280 1511 -280 ct -1515 -280 1521 -276 1529 -269 ct 1541 -259 1548 -255 1557 -255 ct 1574 -255 1585 -267 1585 -287 ct -1585 -310 1570 -324 1546 -324 ct 1517 -324 1496 -308 1461 -258 ct 1461 -323 l -1458 -324 l 1421 -309 1395 -300 1353 -286 ct p ef -1779 -277 m 1785 -278 1790 -278 1797 -278 ct 1821 -278 1825 -271 1825 -237 ct -1825 92 l 1825 129 1818 136 1776 141 ct 1776 153 l 1947 153 l 1947 140 l -1894 139 1885 132 1885 87 ct 1885 -23 l 1909 0 1926 7 1956 7 ct 2039 7 2104 -72 2104 -174 ct -2104 -261 2055 -324 1986 -324 ct 1947 -324 1916 -307 1885 -268 ct 1885 -323 l -1881 -324 l 1842 -309 1818 -300 1779 -288 ct p -1885 -235 m 1885 -256 1924 -282 1957 -282 ct 2009 -282 2044 -228 2044 -146 ct -2044 -68 2009 -15 1958 -15 ct 1925 -15 1885 -40 1885 -62 ct p ef -2147 -275 m 2157 -277 2164 -278 2172 -278 ct 2190 -278 2196 -266 2196 -235 ct -2196 -59 l 2196 -24 2191 -19 2146 -10 ct 2146 0 l 2315 0 l 2315 -10 l -2267 -12 2255 -23 2255 -63 ct 2255 -222 l 2255 -244 2286 -280 2305 -280 ct -2309 -280 2315 -276 2323 -269 ct 2335 -259 2342 -255 2351 -255 ct 2368 -255 2379 -267 2379 -287 ct -2379 -310 2364 -324 2340 -324 ct 2311 -324 2290 -308 2255 -258 ct 2255 -323 l -2252 -324 l 2215 -309 2189 -300 2147 -286 ct p ef -2557 -324 m 2465 -324 2401 -256 2401 -159 ct 2401 -64 2467 7 2556 7 ct 2645 7 2712 -67 2712 -165 ct -2712 -257 l 2647 -324 l p -2548 -304 m 2607 -304 2649 -237 2649 -140 ct 2649 -60 2617 -12 2564 -12 ct -2537 -12 2510 -29 2496 -57 ct 2476 -94 2465 -144 2465 -194 ct 2465 -261 l 2498 -304 l -p ef -2932 -317 m 2860 -317 l 2860 -399 l 2860 -406 2860 -408 2855 -408 ct 2850 -402 2846 -396 2841 -389 ct -2814 -350 2784 -316 2773 -313 ct 2765 -308 2761 -303 2761 -300 ct 2761 -297 2761 -296 2764 -295 ct -2801 -295 l 2801 -82 l 2801 -23 2822 7 2864 7 ct 2898 7 2925 -9 2948 -46 ct -2939 -54 l 2924 -36 2912 -29 2897 -29 ct 2871 -29 2860 -48 2860 -93 ct 2860 -295 l -2932 -295 l p ef -3251 -115 m 3217 -62 3186 -41 3141 -41 ct 3101 -41 3071 -62 3050 -102 ct 3037 -129 3032 -152 3031 -195 ct -3248 -195 l 3243 -241 3236 -261 3218 -284 ct 3197 -309 3164 -324 3128 -324 ct -3092 -324 3059 -312 3032 -288 ct 2999 -259 2980 -208 2980 -151 ct 2980 -53 3031 7 3112 7 ct -3179 7 3232 -34 3262 -110 ct p -3032 -218 m 3040 -273 3064 -299 3107 -299 ct 3150 -299 3167 -279 3176 -218 ct -p ef -3561 -110 m 3528 -60 3502 -43 3462 -43 ct 3398 -43 3353 -100 3353 -181 ct 3353 -254 3391 -304 3449 -304 ct -3474 -304 3483 -296 3490 -270 ct 3494 -254 l 3500 -235 3513 -222 3528 -222 ct -3546 -222 3561 -235 3561 -252 ct 3561 -291 3512 -324 3453 -324 ct 3418 -324 3382 -310 3353 -285 ct -3318 -254 3298 -206 3298 -150 ct 3298 -58 3354 7 3432 7 ct 3464 7 3492 -4 3518 -26 ct -3537 -43 3550 -62 3571 -103 ct p ef -3778 -317 m 3706 -317 l 3706 -399 l 3706 -406 3706 -408 3701 -408 ct 3696 -402 3692 -396 3687 -389 ct -3660 -350 3630 -316 3619 -313 ct 3611 -308 3607 -303 3607 -300 ct 3607 -297 3607 -296 3610 -295 ct -3647 -295 l 3647 -82 l 3647 -23 3668 7 3710 7 ct 3744 7 3771 -9 3794 -46 ct -3785 -54 l 3770 -36 3758 -29 3743 -29 ct 3717 -29 3706 -48 3706 -93 ct 3706 -295 l -3778 -295 l p ef -4098 -115 m 4064 -62 4033 -41 3988 -41 ct 3948 -41 3918 -62 3897 -102 ct 3884 -129 3879 -152 3878 -195 ct -4095 -195 l 4090 -241 4083 -261 4065 -284 ct 4044 -309 4011 -324 3975 -324 ct -3939 -324 3906 -312 3879 -288 ct 3846 -259 3827 -208 3827 -151 ct 3827 -53 3878 7 3959 7 ct -4026 7 4079 -34 4109 -110 ct p -3879 -218 m 3887 -273 3911 -299 3954 -299 ct 3997 -299 4014 -279 4023 -218 ct -p ef -4370 7 m 4474 -29 l 4474 -40 l 4461 -40 4460 -40 4458 -40 ct 4432 -40 4427 -48 4427 -80 ct -4427 -480 l 4423 -482 l 4389 -470 4365 -463 4320 -451 ct 4320 -439 l 4325 -440 4329 -440 4335 -440 ct -4361 -440 4368 -433 4368 -404 ct 4368 -294 l 4341 -317 4322 -324 4293 -324 ct -4212 -324 4147 -244 4147 -144 ct 4147 -54 4200 7 4277 7 ct 4317 7 4344 -7 4368 -40 ct -4368 4 l p -4368 -72 m 4368 -67 4363 -58 4356 -50 ct 4343 -36 4325 -29 4305 -29 ct 4246 -29 4207 -86 4207 -172 ct -4207 -252 4242 -304 4296 -304 ct 4333 -304 4368 -271 4368 -234 ct p ef -4696 -280 m 4705 -283 4711 -283 4719 -283 ct 4737 -283 4743 -272 4743 -238 ct -4743 -60 l 4743 -21 4733 -11 4694 -10 ct 4694 0 l 4851 0 l 4851 -10 l -4813 -12 4803 -19 4803 -47 ct 4803 -246 l 4803 -247 4808 -254 4813 -259 ct -4831 -276 4861 -288 4886 -288 ct 4917 -288 4932 -263 4932 -213 ct 4932 -60 l -4932 -21 4925 -13 4884 -10 ct 4884 0 l 5043 0 l 5043 -10 l 5002 -11 4992 -23 4992 -67 ct -4992 -244 l 5013 -275 5036 -288 5069 -288 ct 5109 -288 5122 -268 5122 -210 ct -5122 -61 l 5122 -21 5116 -15 5075 -10 ct 5075 0 l 5230 0 l 5230 -10 l -5211 -12 l 5190 -13 5181 -26 5181 -53 ct 5181 -199 l 5181 -282 5153 -324 5099 -324 ct -5058 -324 5022 -306 4984 -265 ct 4971 -305 4947 -324 4909 -324 ct 4878 -324 4858 -314 4800 -270 ct -4800 -323 l 4795 -324 l 4759 -311 4735 -303 4696 -292 ct p ef -5415 -324 m 5323 -324 5259 -256 5259 -159 ct 5259 -64 5325 7 5414 7 ct 5503 7 5570 -67 5570 -165 ct -5570 -257 l 5505 -324 l p -5406 -304 m 5465 -304 5507 -237 5507 -140 ct 5507 -60 5475 -12 5422 -12 ct -5395 -12 5368 -29 5354 -57 ct 5334 -94 5323 -144 5323 -194 ct 5323 -261 l 5356 -304 l -p ef -5851 7 m 5955 -29 l 5955 -40 l 5942 -40 5941 -40 5939 -40 ct 5913 -40 5908 -48 5908 -80 ct -5908 -480 l 5904 -482 l 5870 -470 5846 -463 5801 -451 ct 5801 -439 l 5806 -440 5810 -440 5816 -440 ct -5842 -440 5849 -433 5849 -404 ct 5849 -294 l 5822 -317 5803 -324 5774 -324 ct -5693 -324 5628 -244 5628 -144 ct 5628 -54 5681 7 5758 7 ct 5798 7 5825 -7 5849 -40 ct -5849 4 l p -5849 -72 m 5849 -67 5844 -58 5837 -50 ct 5824 -36 5806 -29 5786 -29 ct 5727 -29 5688 -86 5688 -172 ct -5688 -252 5723 -304 5777 -304 ct 5814 -304 5849 -271 5849 -234 ct p ef -6268 -115 m 6234 -62 6203 -41 6158 -41 ct 6118 -41 6088 -62 6067 -102 ct 6054 -129 6049 -152 6048 -195 ct -6265 -195 l 6260 -241 6253 -261 6235 -284 ct 6214 -309 6181 -324 6145 -324 ct -6109 -324 6076 -312 6049 -288 ct 6016 -259 5997 -208 5997 -151 ct 5997 -53 6048 7 6129 7 ct -6196 7 6249 -34 6279 -110 ct p -6049 -218 m 6057 -273 6081 -299 6124 -299 ct 6167 -299 6184 -279 6193 -218 ct -p ef -pom -gr -0.703 0.703 0.703 c 7143 13041 m 3068 13041 l 3068 10711 l 11218 10711 l -11218 13041 l 7143 13041 l p ef -0.003 0.003 0.003 c 7143 13041 m 3068 13041 l 3068 10711 l 11218 10711 l -11218 13041 l 7143 13041 l pc -gs -pum -4444 12091 t -81 -76 m 81 -24 72 -15 12 -13 ct 12 0 l 222 0 l 222 -13 l 164 -15 153 -25 153 -76 ct -153 -390 l 153 -441 163 -451 222 -453 ct 222 -467 l 12 -467 l 12 -453 l -72 -450 81 -442 81 -390 ct p ef -249 -280 m 253 -283 260 -283 268 -283 ct 288 -283 294 -273 294 -238 ct 294 -63 l -294 -23 286 -13 250 -10 ct 250 0 l 400 0 l 400 -10 l 364 -13 353 -21 353 -47 ct -353 -245 l 387 -277 403 -285 426 -285 ct 461 -285 478 -264 478 -217 ct 478 -69 l -478 -25 468 -13 433 -10 ct 433 0 l 580 0 l 580 -10 l 545 -14 537 -22 537 -57 ct -537 -218 l 537 -285 506 -324 454 -324 ct 421 -324 399 -312 351 -267 ct 351 -323 l -346 -324 l 312 -312 288 -304 249 -292 ct p ef -732 -324 m 623 -285 l 623 -275 l 628 -276 l 637 -277 646 -278 652 -278 ct -669 -278 676 -266 676 -235 ct 676 -72 l 676 -21 669 -13 620 -10 ct 620 0 l -787 0 l 787 -10 l 741 -14 735 -21 735 -72 ct 735 -322 l p -699 -482 m 680 -482 664 -465 664 -446 ct 664 -426 679 -410 699 -410 ct 719 -410 736 -425 736 -446 ct -736 -465 l 719 -482 l p ef -1000 -317 m 928 -317 l 928 -399 l 928 -406 928 -408 923 -408 ct 918 -402 914 -396 909 -389 ct -882 -350 852 -316 841 -313 ct 833 -308 829 -303 829 -300 ct 829 -297 829 -296 832 -295 ct -869 -295 l 869 -82 l 869 -23 890 7 932 7 ct 966 7 993 -9 1016 -46 ct 1007 -54 l -992 -36 980 -29 965 -29 ct 939 -29 928 -48 928 -93 ct 928 -295 l 1000 -295 l -p ef -1155 -324 m 1046 -285 l 1046 -275 l 1051 -276 l 1060 -277 1069 -278 1075 -278 ct -1092 -278 1099 -266 1099 -235 ct 1099 -72 l 1099 -21 1092 -13 1043 -10 ct 1043 0 l -1210 0 l 1210 -10 l 1164 -14 1158 -21 1158 -72 ct 1158 -322 l p -1122 -482 m 1103 -482 1087 -465 1087 -446 ct 1087 -426 1102 -410 1122 -410 ct -1142 -410 1159 -425 1159 -446 ct 1159 -465 l 1142 -482 l p ef -1556 -46 m 1544 -36 1535 -33 1524 -33 ct 1508 -33 1503 -43 1503 -74 ct 1503 -211 l -1503 -248 1500 -268 1489 -285 ct 1474 -311 1443 -324 1402 -324 ct 1335 -324 1283 -290 1283 -245 ct -1283 -229 1297 -215 1313 -215 ct 1330 -215 1345 -229 1345 -244 ct 1345 -247 1344 -251 1344 -256 ct -1342 -262 1342 -268 1342 -273 ct 1342 -292 1364 -307 1392 -307 ct 1427 -307 1446 -287 1446 -249 ct -1446 -206 l 1337 -162 1325 -156 1295 -129 ct 1280 -115 1270 -91 1270 -68 ct -1270 -24 1301 7 1344 7 ct 1375 7 1404 -7 1447 -44 ct 1450 -7 1463 7 1492 7 ct 1516 7 1531 -1 1556 -28 ct -p -1446 -86 m 1446 -64 1443 -58 1428 -50 ct 1411 -40 1391 -33 1376 -33 ct 1352 -33 1332 -57 1332 -88 ct -1332 -91 l 1332 -132 1361 -158 1446 -189 ct p ef -1574 -439 m 1578 -439 l 1586 -440 1594 -441 1600 -441 ct 1623 -441 1630 -431 1630 -398 ct -1630 -61 l 1630 -23 1620 -14 1575 -10 ct 1575 0 l 1742 0 l 1742 -10 l -1697 -13 1689 -20 1689 -59 ct 1689 -480 l 1686 -482 l 1649 -470 1623 -463 1574 -451 ct -p ef -1896 -324 m 1787 -285 l 1787 -275 l 1792 -276 l 1801 -277 1810 -278 1816 -278 ct -1833 -278 1840 -266 1840 -235 ct 1840 -72 l 1840 -21 1833 -13 1784 -10 ct 1784 0 l -1951 0 l 1951 -10 l 1905 -14 1899 -21 1899 -72 ct 1899 -322 l p -1863 -482 m 1844 -482 1828 -465 1828 -446 ct 1828 -426 1843 -410 1863 -410 ct -1883 -410 1900 -425 1900 -446 ct 1900 -465 l 1883 -482 l p ef -2279 -95 m 2266 -98 l 2259 -62 2255 -51 2245 -39 ct 2236 -27 2212 -21 2176 -21 ct -2078 -21 l 2268 -307 l 2268 -317 l 2023 -317 l 2021 -234 l 2034 -234 l -2040 -285 2051 -296 2093 -296 ct 2190 -296 l 2003 -10 l 2003 0 l 2269 0 l -p ef -2590 -115 m 2556 -62 2525 -41 2480 -41 ct 2440 -41 2410 -62 2389 -102 ct 2376 -129 2371 -152 2370 -195 ct -2587 -195 l 2582 -241 2575 -261 2557 -284 ct 2536 -309 2503 -324 2467 -324 ct -2431 -324 2398 -312 2371 -288 ct 2338 -259 2319 -208 2319 -151 ct 2319 -53 2370 7 2451 7 ct -2518 7 2571 -34 2601 -110 ct p -2371 -218 m 2379 -273 2403 -299 2446 -299 ct 2489 -299 2506 -279 2515 -218 ct -p ef -3120 -477 m 3105 -477 l 3102 -461 3095 -453 3083 -453 ct 3076 -453 3064 -456 3052 -461 ct -3025 -471 2999 -477 2977 -477 ct 2946 -477 2915 -465 2892 -444 ct 2867 -422 2855 -393 2855 -356 ct -2855 -300 2886 -260 2965 -218 ct 3016 -192 3052 -163 3070 -136 ct 3076 -127 3080 -112 3080 -95 ct -3080 -48 3045 -15 2993 -15 ct 2930 -15 2886 -54 2850 -140 ct 2834 -140 l 2855 9 l -2871 9 l 2872 -4 2880 -14 2891 -14 ct 2898 -14 2910 -11 2924 -6 ct 2951 4 2979 9 3007 9 ct -3088 9 3151 -45 3151 -118 ct 3151 -176 3112 -222 3019 -272 ct 2945 -313 2915 -344 2915 -382 ct -2915 -421 2945 -448 2989 -448 ct 3021 -448 3050 -434 3075 -409 ct 3097 -386 3107 -368 3118 -326 ct -3136 -326 l p ef -3274 -76 m 3274 -26 3265 -16 3212 -13 ct 3212 0 l 3412 0 l 3494 0 3568 -23 3612 -62 ct -3658 -104 3684 -167 3684 -235 ct 3684 -299 3663 -354 3624 -393 ct 3576 -441 3499 -467 3402 -467 ct -3212 -467 l 3212 -453 l 3268 -449 3274 -442 3274 -390 ct p -3346 -413 m 3346 -435 3354 -441 3383 -441 ct 3443 -441 3489 -429 3523 -405 ct -3578 -367 3607 -307 3607 -230 ct 3607 -147 3578 -88 3521 -55 ct 3485 -34 3444 -26 3383 -26 ct -3354 -26 3346 -32 3346 -55 ct p ef -4196 -13 m 4169 -15 4155 -22 4134 -46 ct 3989 -225 l 4036 -234 4057 -242 4081 -261 ct -4103 -280 4117 -309 4117 -343 ct 4117 -373 4108 -399 4089 -420 ct 4062 -449 4004 -467 3937 -467 ct -3743 -467 l 3743 -453 l 3795 -448 3803 -440 3803 -390 ct 3803 -84 l 3803 -26 3795 -17 3743 -13 ct -3743 0 l 3938 0 l 3938 -13 l 3884 -16 3875 -26 3875 -76 ct 3875 -216 l -3914 -217 l 4082 0 l 4196 0 l p -3875 -415 m 3875 -435 3882 -441 3911 -441 ct 3999 -441 4040 -410 4040 -344 ct -4040 -309 4025 -279 3999 -266 ct 3967 -247 3942 -243 3875 -242 ct p ef -4705 -13 m 4673 -15 4666 -22 4641 -74 ct 4466 -475 l 4451 -475 l 4305 -129 l -4259 -26 4251 -14 4217 -13 ct 4217 0 l 4357 0 l 4357 -13 l 4323 -13 4309 -22 4309 -42 ct -4309 -50 4311 -60 4315 -69 ct 4347 -152 l 4532 -152 l 4561 -84 l 4569 -65 4574 -47 4574 -37 ct -4574 -19 4562 -14 4525 -13 ct 4525 0 l 4705 0 l p -4359 -181 m 4440 -375 l 4522 -181 l p ef -5211 -404 m 5211 -84 l 5211 -26 5203 -16 5147 -13 ct 5147 0 l 5345 0 l -5345 -13 l 5293 -16 5283 -26 5283 -76 ct 5283 -390 l 5283 -440 5293 -449 5345 -453 ct -5345 -467 l 5204 -467 l 5048 -110 l 4885 -467 l 4745 -467 l 4745 -453 l -4803 -450 4812 -441 4812 -390 ct 4812 -103 l 4812 -31 4803 -17 4744 -13 ct -4744 0 l 4910 0 l 4910 -13 l 4856 -16 4844 -32 4844 -103 ct 4844 -388 l -5021 0 l 5031 0 l p ef -pom -gr -0.703 0.703 0.703 c 7143 10525 m 3068 10525 l 3068 9151 l 11218 9151 l -11218 10525 l 7143 10525 l p ef -0.003 0.003 0.003 c 7143 10525 m 3068 10525 l 3068 9151 l 11218 9151 l -11218 10525 l 7143 10525 l pc -gs -pum -5026 10054 t -465 -13 m 438 -15 424 -22 403 -46 ct 258 -225 l 305 -234 326 -242 350 -261 ct -372 -280 386 -309 386 -343 ct 386 -373 377 -399 358 -420 ct 331 -449 273 -467 206 -467 ct -12 -467 l 12 -453 l 64 -448 72 -440 72 -390 ct 72 -84 l 72 -26 64 -17 12 -13 ct -12 0 l 207 0 l 207 -13 l 153 -16 144 -26 144 -76 ct 144 -216 l 183 -217 l -351 0 l 465 0 l p -144 -415 m 144 -435 151 -441 180 -441 ct 268 -441 309 -410 309 -344 ct 309 -309 294 -279 268 -266 ct -236 -247 211 -243 144 -242 ct p ef -764 -115 m 730 -62 699 -41 654 -41 ct 614 -41 584 -62 563 -102 ct 550 -129 545 -152 544 -195 ct -761 -195 l 756 -241 749 -261 731 -284 ct 710 -309 677 -324 641 -324 ct 605 -324 572 -312 545 -288 ct -512 -259 493 -208 493 -151 ct 493 -53 544 7 625 7 ct 692 7 745 -34 775 -110 ct -p -545 -218 m 553 -273 577 -299 620 -299 ct 663 -299 680 -279 689 -218 ct p ef -1106 -46 m 1094 -36 1085 -33 1074 -33 ct 1058 -33 1053 -43 1053 -74 ct 1053 -211 l -1053 -248 1050 -268 1039 -285 ct 1024 -311 993 -324 952 -324 ct 885 -324 833 -290 833 -245 ct -833 -229 847 -215 863 -215 ct 880 -215 895 -229 895 -244 ct 895 -247 894 -251 894 -256 ct -892 -262 892 -268 892 -273 ct 892 -292 914 -307 942 -307 ct 977 -307 996 -287 996 -249 ct -996 -206 l 887 -162 875 -156 845 -129 ct 830 -115 820 -91 820 -68 ct 820 -24 851 7 894 7 ct -925 7 954 -7 997 -44 ct 1000 -7 1013 7 1042 7 ct 1066 7 1081 -1 1106 -28 ct p -996 -86 m 996 -64 993 -58 978 -50 ct 961 -40 941 -33 926 -33 ct 902 -33 882 -57 882 -88 ct -882 -91 l 882 -132 911 -158 996 -189 ct p ef -1353 7 m 1457 -29 l 1457 -40 l 1444 -40 1443 -40 1441 -40 ct 1415 -40 1410 -48 1410 -80 ct -1410 -480 l 1406 -482 l 1372 -470 1348 -463 1303 -451 ct 1303 -439 l 1308 -440 1312 -440 1318 -440 ct -1344 -440 1351 -433 1351 -404 ct 1351 -294 l 1324 -317 1305 -324 1276 -324 ct -1195 -324 1130 -244 1130 -144 ct 1130 -54 1183 7 1260 7 ct 1300 7 1327 -7 1351 -40 ct -1351 4 l p -1351 -72 m 1351 -67 1346 -58 1339 -50 ct 1326 -36 1308 -29 1288 -29 ct 1229 -29 1190 -86 1190 -172 ct -1190 -252 1225 -304 1279 -304 ct 1316 -304 1351 -271 1351 -234 ct p ef -1748 -76 m 1748 -24 1739 -15 1679 -13 ct 1679 0 l 1889 0 l 1889 -13 l -1831 -15 1820 -25 1820 -76 ct 1820 -390 l 1820 -441 1830 -451 1889 -453 ct -1889 -467 l 1679 -467 l 1679 -453 l 1739 -450 1748 -442 1748 -390 ct p ef -2240 -96 m 2231 -100 l 2205 -60 2195 -53 2164 -53 ct 1995 -53 l 2113 -177 l -2176 -243 2204 -297 2204 -352 ct 2204 -422 2147 -477 2073 -477 ct 2034 -477 1998 -461 1972 -433 ct -1949 -409 1938 -386 1926 -336 ct 1941 -333 l 1969 -402 1995 -425 2044 -425 ct -2103 -425 2143 -384 2143 -325 ct 2143 -270 2111 -204 2051 -141 ct 1926 -8 l -1926 0 l 2201 0 l p ef -2712 -317 m 2706 -477 l 2691 -477 l 2687 -462 2676 -453 2661 -453 ct 2655 -453 2644 -456 2634 -460 ct -2599 -471 2564 -477 2531 -477 ct 2473 -477 2414 -455 2371 -416 ct 2321 -372 2294 -307 2294 -229 ct -2294 -163 2315 -103 2351 -62 ct 2394 -16 2459 9 2529 9 ct 2608 9 2678 -22 2721 -79 ct -2709 -92 l 2656 -42 2610 -21 2551 -21 ct 2507 -21 2467 -35 2437 -62 ct 2398 -96 2376 -160 2376 -238 ct -2376 -366 2442 -449 2544 -449 ct 2584 -449 2621 -434 2649 -405 ct 2672 -383 2683 -363 2696 -317 ct -p ef -3252 -477 m 3237 -477 l 3234 -461 3227 -453 3215 -453 ct 3208 -453 3196 -456 3184 -461 ct -3157 -471 3131 -477 3109 -477 ct 3078 -477 3047 -465 3024 -444 ct 2999 -422 2987 -393 2987 -356 ct -2987 -300 3018 -260 3097 -218 ct 3148 -192 3184 -163 3202 -136 ct 3208 -127 3212 -112 3212 -95 ct -3212 -48 3177 -15 3125 -15 ct 3062 -15 3018 -54 2982 -140 ct 2966 -140 l 2987 9 l -3003 9 l 3004 -4 3012 -14 3023 -14 ct 3030 -14 3042 -11 3056 -6 ct 3083 4 3111 9 3139 9 ct -3220 9 3283 -45 3283 -118 ct 3283 -176 3244 -222 3151 -272 ct 3077 -313 3047 -344 3047 -382 ct -3047 -421 3077 -448 3121 -448 ct 3153 -448 3182 -434 3207 -409 ct 3229 -386 3239 -368 3250 -326 ct -3268 -326 l p ef -3476 -205 m 3494 -204 3506 -203 3525 -203 ct 3580 -203 3618 -210 3648 -227 ct -3691 -249 3716 -292 3716 -339 ct 3716 -369 3706 -396 3687 -416 ct 3659 -447 3598 -467 3531 -467 ct -3345 -467 l 3345 -453 l 3397 -448 3404 -441 3404 -390 ct 3404 -84 l 3404 -25 3398 -18 3345 -13 ct -3345 0 l 3542 0 l 3542 -13 l 3487 -15 3476 -25 3476 -76 ct p -3476 -417 m 3476 -436 3481 -441 3500 -441 ct 3595 -441 3639 -408 3639 -335 ct -3639 -266 3598 -231 3516 -231 ct 3502 -231 3492 -232 3476 -233 ct p ef -3804 -76 m 3804 -26 3795 -16 3742 -13 ct 3742 0 l 3942 0 l 4024 0 4098 -23 4142 -62 ct -4188 -104 4214 -167 4214 -235 ct 4214 -299 4193 -354 4154 -393 ct 4106 -441 4029 -467 3932 -467 ct -3742 -467 l 3742 -453 l 3798 -449 3804 -442 3804 -390 ct p -3876 -413 m 3876 -435 3884 -441 3913 -441 ct 3973 -441 4019 -429 4053 -405 ct -4108 -367 4137 -307 4137 -230 ct 4137 -147 4108 -88 4051 -55 ct 4015 -34 3974 -26 3913 -26 ct -3884 -26 3876 -32 3876 -55 ct p ef -pom -gr -0.703 0.703 0.703 c 7143 5468 m 3068 5468 l 3068 3562 l 11218 3562 l -11218 5468 l 7143 5468 l p ef -0.003 0.003 0.003 c 7143 5468 m 3068 5468 l 3068 3562 l 11218 3562 l 11218 5468 l -7143 5468 l pc -gs -pum -3253 4736 t -437 -317 m 431 -477 l 416 -477 l 412 -462 401 -453 386 -453 ct 380 -453 369 -456 359 -460 ct -324 -471 289 -477 256 -477 ct 198 -477 139 -455 96 -416 ct 46 -372 19 -307 19 -229 ct -19 -163 40 -103 76 -62 ct 119 -16 184 9 254 9 ct 333 9 403 -22 446 -79 ct 434 -92 l -381 -42 335 -21 276 -21 ct 232 -21 192 -35 162 -62 ct 123 -96 101 -160 101 -238 ct -101 -366 167 -449 269 -449 ct 309 -449 346 -434 374 -405 ct 397 -383 408 -363 421 -317 ct -p ef -652 -324 m 560 -324 496 -256 496 -159 ct 496 -64 562 7 651 7 ct 740 7 807 -67 807 -165 ct -807 -257 l 742 -324 l p -643 -304 m 702 -304 744 -237 744 -140 ct 744 -60 712 -12 659 -12 ct 632 -12 605 -29 591 -57 ct -571 -94 560 -144 560 -194 ct 560 -261 l 593 -304 l p ef -957 -242 m 987 -274 1008 -286 1036 -286 ct 1071 -286 1089 -261 1089 -211 ct -1089 -72 l 1089 -24 1082 -14 1041 -10 ct 1041 0 l 1190 0 l 1190 -10 l -1152 -17 1148 -23 1148 -72 ct 1148 -212 l 1148 -286 1118 -324 1061 -324 ct -1019 -324 990 -307 957 -265 ct 957 -480 l 954 -482 l 930 -473 912 -468 873 -456 ct -854 -451 l 854 -439 l 856 -440 859 -440 862 -440 ct 892 -440 898 -434 898 -404 ct -898 -72 l 898 -22 894 -16 853 -10 ct 853 0 l 1005 0 l 1005 -10 l 964 -14 957 -23 957 -72 ct -p ef -1505 -115 m 1471 -62 1440 -41 1395 -41 ct 1355 -41 1325 -62 1304 -102 ct 1291 -129 1286 -152 1285 -195 ct -1502 -195 l 1497 -241 1490 -261 1472 -284 ct 1451 -309 1418 -324 1382 -324 ct -1346 -324 1313 -312 1286 -288 ct 1253 -259 1234 -208 1234 -151 ct 1234 -53 1285 7 1366 7 ct -1433 7 1486 -34 1516 -110 ct p -1286 -218 m 1294 -273 1318 -299 1361 -299 ct 1404 -299 1421 -279 1430 -218 ct -p ef -1539 -275 m 1549 -277 1556 -278 1564 -278 ct 1582 -278 1588 -266 1588 -235 ct -1588 -59 l 1588 -24 1583 -19 1538 -10 ct 1538 0 l 1707 0 l 1707 -10 l -1659 -12 1647 -23 1647 -63 ct 1647 -222 l 1647 -244 1678 -280 1697 -280 ct -1701 -280 1707 -276 1715 -269 ct 1727 -259 1734 -255 1743 -255 ct 1760 -255 1771 -267 1771 -287 ct -1771 -310 1756 -324 1732 -324 ct 1703 -324 1682 -308 1647 -258 ct 1647 -323 l -1644 -324 l 1607 -309 1581 -300 1539 -286 ct p ef -2061 -115 m 2027 -62 1996 -41 1951 -41 ct 1911 -41 1881 -62 1860 -102 ct 1847 -129 1842 -152 1841 -195 ct -2058 -195 l 2053 -241 2046 -261 2028 -284 ct 2007 -309 1974 -324 1938 -324 ct -1902 -324 1869 -312 1842 -288 ct 1809 -259 1790 -208 1790 -151 ct 1790 -53 1841 7 1922 7 ct -1989 7 2042 -34 2072 -110 ct p -1842 -218 m 1850 -273 1874 -299 1917 -299 ct 1960 -299 1977 -279 1986 -218 ct -p ef -2101 -280 m 2105 -283 2112 -283 2120 -283 ct 2140 -283 2146 -273 2146 -238 ct -2146 -63 l 2146 -23 2138 -13 2102 -10 ct 2102 0 l 2252 0 l 2252 -10 l -2216 -13 2205 -21 2205 -47 ct 2205 -245 l 2239 -277 2255 -285 2278 -285 ct -2313 -285 2330 -264 2330 -217 ct 2330 -69 l 2330 -25 2320 -13 2285 -10 ct 2285 0 l -2432 0 l 2432 -10 l 2397 -14 2389 -22 2389 -57 ct 2389 -218 l 2389 -285 2358 -324 2306 -324 ct -2273 -324 2251 -312 2203 -267 ct 2203 -323 l 2198 -324 l 2164 -312 2140 -304 2101 -292 ct -p ef -2641 -317 m 2569 -317 l 2569 -399 l 2569 -406 2569 -408 2564 -408 ct 2559 -402 2555 -396 2550 -389 ct -2523 -350 2493 -316 2482 -313 ct 2474 -308 2470 -303 2470 -300 ct 2470 -297 2470 -296 2473 -295 ct -2510 -295 l 2510 -82 l 2510 -23 2531 7 2573 7 ct 2607 7 2634 -9 2657 -46 ct -2648 -54 l 2633 -36 2621 -29 2606 -29 ct 2580 -29 2569 -48 2569 -93 ct 2569 -295 l -2641 -295 l p ef -3005 -253 m 3005 -390 l 3005 -441 3013 -449 3067 -453 ct 3067 -467 l 2871 -467 l -2871 -453 l 2925 -449 2933 -441 2933 -390 ct 2933 -84 l 2933 -25 2926 -16 2871 -13 ct -2871 0 l 3067 0 l 3067 -13 l 3014 -17 3005 -26 3005 -76 ct 3005 -222 l -3219 -222 l 3219 -84 l 3219 -25 3212 -16 3157 -13 ct 3157 0 l 3353 0 l -3353 -13 l 3300 -17 3291 -26 3291 -76 ct 3291 -390 l 3291 -441 3299 -449 3353 -453 ct -3353 -467 l 3157 -467 l 3157 -453 l 3211 -449 3219 -441 3219 -390 ct 3219 -253 l -p ef -3566 -437 m 3566 -84 l 3566 -24 3558 -16 3499 -13 ct 3499 0 l 3706 0 l -3706 -13 l 3648 -16 3638 -25 3638 -76 ct 3638 -437 l 3676 -437 l 3756 -437 3772 -425 3788 -347 ct -3805 -347 l 3801 -467 l 3403 -467 l 3399 -347 l 3415 -347 l 3432 -424 3449 -437 3528 -437 ct -p ef -4103 -76 m 4103 -24 4094 -15 4034 -13 ct 4034 0 l 4244 0 l 4244 -13 l -4186 -15 4175 -25 4175 -76 ct 4175 -390 l 4175 -441 4185 -451 4244 -453 ct -4244 -467 l 4034 -467 l 4034 -453 l 4094 -450 4103 -442 4103 -390 ct p ef -4271 -280 m 4275 -283 4282 -283 4290 -283 ct 4310 -283 4316 -273 4316 -238 ct -4316 -63 l 4316 -23 4308 -13 4272 -10 ct 4272 0 l 4422 0 l 4422 -10 l -4386 -13 4375 -21 4375 -47 ct 4375 -245 l 4409 -277 4425 -285 4448 -285 ct -4483 -285 4500 -264 4500 -217 ct 4500 -69 l 4500 -25 4490 -13 4455 -10 ct 4455 0 l -4602 0 l 4602 -10 l 4567 -14 4559 -22 4559 -57 ct 4559 -218 l 4559 -285 4528 -324 4476 -324 ct -4443 -324 4421 -312 4373 -267 ct 4373 -323 l 4368 -324 l 4334 -312 4310 -304 4271 -292 ct -p ef -4753 -324 m 4644 -285 l 4644 -275 l 4649 -276 l 4658 -277 4667 -278 4673 -278 ct -4690 -278 4697 -266 4697 -235 ct 4697 -72 l 4697 -21 4690 -13 4641 -10 ct 4641 0 l -4808 0 l 4808 -10 l 4762 -14 4756 -21 4756 -72 ct 4756 -322 l p -4720 -482 m 4701 -482 4685 -465 4685 -446 ct 4685 -426 4700 -410 4720 -410 ct -4740 -410 4757 -425 4757 -446 ct 4757 -465 l 4740 -482 l p ef -5022 -317 m 4950 -317 l 4950 -399 l 4950 -406 4950 -408 4945 -408 ct 4940 -402 4936 -396 4931 -389 ct -4904 -350 4874 -316 4863 -313 ct 4855 -308 4851 -303 4851 -300 ct 4851 -297 4851 -296 4854 -295 ct -4891 -295 l 4891 -82 l 4891 -23 4912 7 4954 7 ct 4988 7 5015 -9 5038 -46 ct -5029 -54 l 5014 -36 5002 -29 4987 -29 ct 4961 -29 4950 -48 4950 -93 ct 4950 -295 l -5022 -295 l p ef -5177 -324 m 5068 -285 l 5068 -275 l 5073 -276 l 5082 -277 5091 -278 5097 -278 ct -5114 -278 5121 -266 5121 -235 ct 5121 -72 l 5121 -21 5114 -13 5065 -10 ct 5065 0 l -5232 0 l 5232 -10 l 5186 -14 5180 -21 5180 -72 ct 5180 -322 l p -5144 -482 m 5125 -482 5109 -465 5109 -446 ct 5109 -426 5124 -410 5144 -410 ct -5164 -410 5181 -425 5181 -446 ct 5181 -465 l 5164 -482 l p ef -5577 -46 m 5565 -36 5556 -33 5545 -33 ct 5529 -33 5524 -43 5524 -74 ct 5524 -211 l -5524 -248 5521 -268 5510 -285 ct 5495 -311 5464 -324 5423 -324 ct 5356 -324 5304 -290 5304 -245 ct -5304 -229 5318 -215 5334 -215 ct 5351 -215 5366 -229 5366 -244 ct 5366 -247 5365 -251 5365 -256 ct -5363 -262 5363 -268 5363 -273 ct 5363 -292 5385 -307 5413 -307 ct 5448 -307 5467 -287 5467 -249 ct -5467 -206 l 5358 -162 5346 -156 5316 -129 ct 5301 -115 5291 -91 5291 -68 ct -5291 -24 5322 7 5365 7 ct 5396 7 5425 -7 5468 -44 ct 5471 -7 5484 7 5513 7 ct 5537 7 5552 -1 5577 -28 ct -p -5467 -86 m 5467 -64 5464 -58 5449 -50 ct 5432 -40 5412 -33 5397 -33 ct 5373 -33 5353 -57 5353 -88 ct -5353 -91 l 5353 -132 5382 -158 5467 -189 ct p ef -5596 -439 m 5600 -439 l 5608 -440 5616 -441 5622 -441 ct 5645 -441 5652 -431 5652 -398 ct -5652 -61 l 5652 -23 5642 -14 5597 -10 ct 5597 0 l 5764 0 l 5764 -10 l -5719 -13 5711 -20 5711 -59 ct 5711 -480 l 5708 -482 l 5671 -470 5645 -463 5596 -451 ct -p ef -5917 -324 m 5808 -285 l 5808 -275 l 5813 -276 l 5822 -277 5831 -278 5837 -278 ct -5854 -278 5861 -266 5861 -235 ct 5861 -72 l 5861 -21 5854 -13 5805 -10 ct 5805 0 l -5972 0 l 5972 -10 l 5926 -14 5920 -21 5920 -72 ct 5920 -322 l p -5884 -482 m 5865 -482 5849 -465 5849 -446 ct 5849 -426 5864 -410 5884 -410 ct -5904 -410 5921 -425 5921 -446 ct 5921 -465 l 5904 -482 l p ef -6301 -95 m 6288 -98 l 6281 -62 6277 -51 6267 -39 ct 6258 -27 6234 -21 6198 -21 ct -6100 -21 l 6290 -307 l 6290 -317 l 6045 -317 l 6043 -234 l 6056 -234 l -6062 -285 6073 -296 6115 -296 ct 6212 -296 l 6025 -10 l 6025 0 l 6291 0 l -p ef -6636 -46 m 6624 -36 6615 -33 6604 -33 ct 6588 -33 6583 -43 6583 -74 ct 6583 -211 l -6583 -248 6580 -268 6569 -285 ct 6554 -311 6523 -324 6482 -324 ct 6415 -324 6363 -290 6363 -245 ct -6363 -229 6377 -215 6393 -215 ct 6410 -215 6425 -229 6425 -244 ct 6425 -247 6424 -251 6424 -256 ct -6422 -262 6422 -268 6422 -273 ct 6422 -292 6444 -307 6472 -307 ct 6507 -307 6526 -287 6526 -249 ct -6526 -206 l 6417 -162 6405 -156 6375 -129 ct 6360 -115 6350 -91 6350 -68 ct -6350 -24 6381 7 6424 7 ct 6455 7 6484 -7 6527 -44 ct 6530 -7 6543 7 6572 7 ct 6596 7 6611 -1 6636 -28 ct -p -6526 -86 m 6526 -64 6523 -58 6508 -50 ct 6491 -40 6471 -33 6456 -33 ct 6432 -33 6412 -57 6412 -88 ct -6412 -91 l 6412 -132 6441 -158 6526 -189 ct p ef -6821 -317 m 6749 -317 l 6749 -399 l 6749 -406 6749 -408 6744 -408 ct 6739 -402 6735 -396 6730 -389 ct -6703 -350 6673 -316 6662 -313 ct 6654 -308 6650 -303 6650 -300 ct 6650 -297 6650 -296 6653 -295 ct -6690 -295 l 6690 -82 l 6690 -23 6711 7 6753 7 ct 6787 7 6814 -9 6837 -46 ct -6828 -54 l 6813 -36 6801 -29 6786 -29 ct 6760 -29 6749 -48 6749 -93 ct 6749 -295 l -6821 -295 l p ef -6976 -324 m 6867 -285 l 6867 -275 l 6872 -276 l 6881 -277 6890 -278 6896 -278 ct -6913 -278 6920 -266 6920 -235 ct 6920 -72 l 6920 -21 6913 -13 6864 -10 ct 6864 0 l -7031 0 l 7031 -10 l 6985 -14 6979 -21 6979 -72 ct 6979 -322 l p -6943 -482 m 6924 -482 6908 -465 6908 -446 ct 6908 -426 6923 -410 6943 -410 ct -6963 -410 6980 -425 6980 -446 ct 6980 -465 l 6963 -482 l p ef -7240 -324 m 7148 -324 7084 -256 7084 -159 ct 7084 -64 7150 7 7239 7 ct 7328 7 7395 -67 7395 -165 ct -7395 -257 l 7330 -324 l p -7231 -304 m 7290 -304 7332 -237 7332 -140 ct 7332 -60 7300 -12 7247 -12 ct -7220 -12 7193 -29 7179 -57 ct 7159 -94 7148 -144 7148 -194 ct 7148 -261 l 7181 -304 l -p ef -7446 -280 m 7450 -283 7457 -283 7465 -283 ct 7485 -283 7491 -273 7491 -238 ct -7491 -63 l 7491 -23 7483 -13 7447 -10 ct 7447 0 l 7597 0 l 7597 -10 l -7561 -13 7550 -21 7550 -47 ct 7550 -245 l 7584 -277 7600 -285 7623 -285 ct -7658 -285 7675 -264 7675 -217 ct 7675 -69 l 7675 -25 7665 -13 7630 -10 ct 7630 0 l -7777 0 l 7777 -10 l 7742 -14 7734 -22 7734 -57 ct 7734 -218 l 7734 -285 7703 -324 7651 -324 ct -7618 -324 7596 -312 7548 -267 ct 7548 -323 l 7543 -324 l 7509 -312 7485 -304 7446 -292 ct -p ef -pom -gr -0.703 0.703 0.703 c 7143 6792 m 3068 6792 l 3068 5680 l 11218 5680 l -11218 6792 l 7143 6792 l p ef -0.003 0.003 0.003 c 7143 6792 m 3068 6792 l 3068 5680 l 11218 5680 l 11218 6792 l -7143 6792 l pc -gs -pum -4153 6456 t -432 7 m 432 -363 l 432 -405 439 -432 452 -441 ct 462 -448 472 -451 499 -453 ct -499 -467 l 333 -467 l 333 -453 l 360 -451 369 -449 380 -442 ct 394 -432 401 -407 401 -363 ct -401 -125 l 129 -467 l 8 -467 l 8 -453 l 38 -453 48 -448 76 -415 ct 76 -103 l -76 -31 67 -17 8 -13 ct 8 0 l 174 0 l 174 -13 l 120 -16 108 -32 108 -103 ct -108 -380 l 420 7 l p ef -966 -317 m 960 -477 l 945 -477 l 941 -462 930 -453 915 -453 ct 909 -453 898 -456 888 -460 ct -853 -471 818 -477 785 -477 ct 727 -477 668 -455 625 -416 ct 575 -372 548 -307 548 -229 ct -548 -163 569 -103 605 -62 ct 648 -16 713 9 783 9 ct 862 9 932 -22 975 -79 ct 963 -92 l -910 -42 864 -21 805 -21 ct 761 -21 721 -35 691 -62 ct 652 -96 630 -160 630 -238 ct -630 -366 696 -449 798 -449 ct 838 -449 875 -434 903 -405 ct 926 -383 937 -363 950 -317 ct -p ef -1152 -253 m 1152 -390 l 1152 -441 1160 -449 1214 -453 ct 1214 -467 l 1018 -467 l -1018 -453 l 1072 -449 1080 -441 1080 -390 ct 1080 -84 l 1080 -25 1073 -16 1018 -13 ct -1018 0 l 1214 0 l 1214 -13 l 1161 -17 1152 -26 1152 -76 ct 1152 -222 l -1366 -222 l 1366 -84 l 1366 -25 1359 -16 1304 -13 ct 1304 0 l 1500 0 l -1500 -13 l 1447 -17 1438 -26 1438 -76 ct 1438 -390 l 1438 -441 1446 -449 1500 -453 ct -1500 -467 l 1304 -467 l 1304 -453 l 1358 -449 1366 -441 1366 -390 ct 1366 -253 l -p ef -1714 -437 m 1714 -84 l 1714 -24 1706 -16 1647 -13 ct 1647 0 l 1854 0 l -1854 -13 l 1796 -16 1786 -25 1786 -76 ct 1786 -437 l 1824 -437 l 1904 -437 1920 -425 1936 -347 ct -1953 -347 l 1949 -467 l 1551 -467 l 1547 -347 l 1563 -347 l 1580 -424 1597 -437 1676 -437 ct -p ef -2591 -119 m 2571 -119 l 2536 -43 2506 -26 2405 -26 ct 2386 -26 l 2351 -26 2321 -29 2316 -34 ct -2313 -36 2311 -44 2311 -56 ct 2311 -230 l 2420 -230 l 2478 -230 2489 -221 2498 -163 ct -2514 -163 l 2514 -326 l 2498 -326 l 2493 -297 2490 -287 2482 -277 ct 2473 -265 2453 -259 2420 -259 ct -2311 -259 l 2311 -416 l 2311 -436 2316 -440 2335 -440 ct 2430 -440 l 2510 -440 2525 -429 2537 -366 ct -2555 -366 l 2553 -467 l 2178 -467 l 2178 -453 l 2230 -449 2239 -439 2239 -390 ct -2239 -76 l 2239 -27 2230 -16 2178 -13 ct 2178 0 l 2559 0 l p ef -2630 -280 m 2634 -283 2641 -283 2649 -283 ct 2669 -283 2675 -273 2675 -238 ct -2675 -63 l 2675 -23 2667 -13 2631 -10 ct 2631 0 l 2781 0 l 2781 -10 l -2745 -13 2734 -21 2734 -47 ct 2734 -245 l 2768 -277 2784 -285 2807 -285 ct -2842 -285 2859 -264 2859 -217 ct 2859 -69 l 2859 -25 2849 -13 2814 -10 ct 2814 0 l -2961 0 l 2961 -10 l 2926 -14 2918 -22 2918 -57 ct 2918 -218 l 2918 -285 2887 -324 2835 -324 ct -2802 -324 2780 -312 2732 -267 ct 2732 -323 l 2727 -324 l 2693 -312 2669 -304 2630 -292 ct -p ef -3328 -35 m 3324 -35 l 3292 -35 3284 -43 3284 -75 ct 3284 -317 l 3172 -317 l -3172 -305 l 3216 -303 3225 -296 3225 -261 ct 3225 -95 l 3225 -75 3221 -65 3211 -57 ct -3192 -42 3170 -33 3149 -33 ct 3122 -33 3099 -57 3099 -87 ct 3099 -317 l 2996 -317 l -2996 -307 l 3030 -305 3040 -295 3040 -262 ct 3040 -84 l 3040 -28 3074 7 3125 7 ct -3151 7 3179 -4 3198 -23 ct 3228 -53 l 3228 4 l 3231 6 l 3266 -7 3292 -15 3328 -25 ct -p ef -3373 -280 m 3382 -283 3388 -283 3396 -283 ct 3414 -283 3420 -272 3420 -238 ct -3420 -60 l 3420 -21 3410 -11 3371 -10 ct 3371 0 l 3528 0 l 3528 -10 l -3490 -12 3480 -19 3480 -47 ct 3480 -246 l 3480 -247 3485 -254 3490 -259 ct -3508 -276 3538 -288 3563 -288 ct 3594 -288 3609 -263 3609 -213 ct 3609 -60 l -3609 -21 3602 -13 3561 -10 ct 3561 0 l 3720 0 l 3720 -10 l 3679 -11 3669 -23 3669 -67 ct -3669 -244 l 3690 -275 3713 -288 3746 -288 ct 3786 -288 3799 -268 3799 -210 ct -3799 -61 l 3799 -21 3793 -15 3752 -10 ct 3752 0 l 3907 0 l 3907 -10 l -3888 -12 l 3867 -13 3858 -26 3858 -53 ct 3858 -199 l 3858 -282 3830 -324 3776 -324 ct -3735 -324 3699 -306 3661 -265 ct 3648 -305 3624 -324 3586 -324 ct 3555 -324 3535 -314 3477 -270 ct -3477 -323 l 3472 -324 l 3436 -311 3412 -303 3373 -292 ct p ef -4204 -115 m 4170 -62 4139 -41 4094 -41 ct 4054 -41 4024 -62 4003 -102 ct 3990 -129 3985 -152 3984 -195 ct -4201 -195 l 4196 -241 4189 -261 4171 -284 ct 4150 -309 4117 -324 4081 -324 ct -4045 -324 4012 -312 3985 -288 ct 3952 -259 3933 -208 3933 -151 ct 3933 -53 3984 7 4065 7 ct -4132 7 4185 -34 4215 -110 ct p -3985 -218 m 3993 -273 4017 -299 4060 -299 ct 4103 -299 4120 -279 4129 -218 ct -p ef -4237 -275 m 4247 -277 4254 -278 4262 -278 ct 4280 -278 4286 -266 4286 -235 ct -4286 -59 l 4286 -24 4281 -19 4236 -10 ct 4236 0 l 4405 0 l 4405 -10 l -4357 -12 4345 -23 4345 -63 ct 4345 -222 l 4345 -244 4376 -280 4395 -280 ct -4399 -280 4405 -276 4413 -269 ct 4425 -259 4432 -255 4441 -255 ct 4458 -255 4469 -267 4469 -287 ct -4469 -310 4454 -324 4430 -324 ct 4401 -324 4380 -308 4345 -258 ct 4345 -323 l -4342 -324 l 4305 -309 4279 -300 4237 -286 ct p ef -4783 -46 m 4771 -36 4762 -33 4751 -33 ct 4735 -33 4730 -43 4730 -74 ct 4730 -211 l -4730 -248 4727 -268 4716 -285 ct 4701 -311 4670 -324 4629 -324 ct 4562 -324 4510 -290 4510 -245 ct -4510 -229 4524 -215 4540 -215 ct 4557 -215 4572 -229 4572 -244 ct 4572 -247 4571 -251 4571 -256 ct -4569 -262 4569 -268 4569 -273 ct 4569 -292 4591 -307 4619 -307 ct 4654 -307 4673 -287 4673 -249 ct -4673 -206 l 4564 -162 4552 -156 4522 -129 ct 4507 -115 4497 -91 4497 -68 ct -4497 -24 4528 7 4571 7 ct 4602 7 4631 -7 4674 -44 ct 4677 -7 4690 7 4719 7 ct 4743 7 4758 -1 4783 -28 ct -p -4673 -86 m 4673 -64 4670 -58 4655 -50 ct 4638 -40 4618 -33 4603 -33 ct 4579 -33 4559 -57 4559 -88 ct -4559 -91 l 4559 -132 4588 -158 4673 -189 ct p ef -4969 -317 m 4897 -317 l 4897 -399 l 4897 -406 4897 -408 4892 -408 ct 4887 -402 4883 -396 4878 -389 ct -4851 -350 4821 -316 4810 -313 ct 4802 -308 4798 -303 4798 -300 ct 4798 -297 4798 -296 4801 -295 ct -4838 -295 l 4838 -82 l 4838 -23 4859 7 4901 7 ct 4935 7 4962 -9 4985 -46 ct -4976 -54 l 4961 -36 4949 -29 4934 -29 ct 4908 -29 4897 -48 4897 -93 ct 4897 -295 l -4969 -295 l p ef -5124 -324 m 5015 -285 l 5015 -275 l 5020 -276 l 5029 -277 5038 -278 5044 -278 ct -5061 -278 5068 -266 5068 -235 ct 5068 -72 l 5068 -21 5061 -13 5012 -10 ct 5012 0 l -5179 0 l 5179 -10 l 5133 -14 5127 -21 5127 -72 ct 5127 -322 l p -5091 -482 m 5072 -482 5056 -465 5056 -446 ct 5056 -426 5071 -410 5091 -410 ct -5111 -410 5128 -425 5128 -446 ct 5128 -465 l 5111 -482 l p ef -5388 -324 m 5296 -324 5232 -256 5232 -159 ct 5232 -64 5298 7 5387 7 ct 5476 7 5543 -67 5543 -165 ct -5543 -257 l 5478 -324 l p -5379 -304 m 5438 -304 5480 -237 5480 -140 ct 5480 -60 5448 -12 5395 -12 ct -5368 -12 5341 -29 5327 -57 ct 5307 -94 5296 -144 5296 -194 ct 5296 -261 l 5329 -304 l -p ef -5594 -280 m 5598 -283 5605 -283 5613 -283 ct 5633 -283 5639 -273 5639 -238 ct -5639 -63 l 5639 -23 5631 -13 5595 -10 ct 5595 0 l 5745 0 l 5745 -10 l -5709 -13 5698 -21 5698 -47 ct 5698 -245 l 5732 -277 5748 -285 5771 -285 ct -5806 -285 5823 -264 5823 -217 ct 5823 -69 l 5823 -25 5813 -13 5778 -10 ct 5778 0 l -5925 0 l 5925 -10 l 5890 -14 5882 -22 5882 -57 ct 5882 -218 l 5882 -285 5851 -324 5799 -324 ct -5766 -324 5744 -312 5696 -267 ct 5696 -323 l 5691 -324 l 5657 -312 5633 -304 5594 -292 ct -p ef -pom -gr -0.703 0.703 0.703 c 7143 18163 m 3068 18163 l 3068 13664 l 11218 13664 l -11218 18163 l 7143 18163 l p ef -0.003 0.003 0.003 c 7143 18163 m 3068 18163 l 3068 13664 l 11218 13664 l -11218 18163 l 7143 18163 l pc -gs -pum -4206 14578 t -315 -477 m 300 -477 l 297 -461 290 -453 278 -453 ct 271 -453 259 -456 247 -461 ct -220 -471 194 -477 172 -477 ct 141 -477 110 -465 87 -444 ct 62 -422 50 -393 50 -356 ct -50 -300 81 -260 160 -218 ct 211 -192 247 -163 265 -136 ct 271 -127 275 -112 275 -95 ct -275 -48 240 -15 188 -15 ct 125 -15 81 -54 45 -140 ct 29 -140 l 50 9 l 66 9 l -67 -4 75 -14 86 -14 ct 93 -14 105 -11 119 -6 ct 146 4 174 9 202 9 ct 283 9 346 -45 346 -118 ct -346 -176 307 -222 214 -272 ct 140 -313 110 -344 110 -382 ct 110 -421 140 -448 184 -448 ct -216 -448 245 -434 270 -409 ct 292 -386 302 -368 313 -326 ct 331 -326 l p ef -685 -115 m 651 -62 620 -41 575 -41 ct 535 -41 505 -62 484 -102 ct 471 -129 466 -152 465 -195 ct -682 -195 l 677 -241 670 -261 652 -284 ct 631 -309 598 -324 562 -324 ct 526 -324 493 -312 466 -288 ct -433 -259 414 -208 414 -151 ct 414 -53 465 7 546 7 ct 613 7 666 -34 696 -110 ct -p -466 -218 m 474 -273 498 -299 541 -299 ct 584 -299 601 -279 610 -218 ct p ef -894 -317 m 822 -317 l 822 -399 l 822 -406 822 -408 817 -408 ct 812 -402 808 -396 803 -389 ct -776 -350 746 -316 735 -313 ct 727 -308 723 -303 723 -300 ct 723 -297 723 -296 726 -295 ct -763 -295 l 763 -82 l 763 -23 784 7 826 7 ct 860 7 887 -9 910 -46 ct 901 -54 l -886 -36 874 -29 859 -29 ct 833 -29 822 -48 822 -93 ct 822 -295 l 894 -295 l -p ef -1264 -35 m 1260 -35 l 1228 -35 1220 -43 1220 -75 ct 1220 -317 l 1108 -317 l -1108 -305 l 1152 -303 1161 -296 1161 -261 ct 1161 -95 l 1161 -75 1157 -65 1147 -57 ct -1128 -42 1106 -33 1085 -33 ct 1058 -33 1035 -57 1035 -87 ct 1035 -317 l 932 -317 l -932 -307 l 966 -305 976 -295 976 -262 ct 976 -84 l 976 -28 1010 7 1061 7 ct -1087 7 1115 -4 1134 -23 ct 1164 -53 l 1164 4 l 1167 6 l 1202 -7 1228 -15 1264 -25 ct -p ef -1302 -277 m 1308 -278 1313 -278 1320 -278 ct 1344 -278 1348 -271 1348 -237 ct -1348 92 l 1348 129 1341 136 1299 141 ct 1299 153 l 1470 153 l 1470 140 l -1417 139 1408 132 1408 87 ct 1408 -23 l 1432 0 1449 7 1479 7 ct 1562 7 1627 -72 1627 -174 ct -1627 -261 1578 -324 1509 -324 ct 1470 -324 1439 -307 1408 -268 ct 1408 -323 l -1404 -324 l 1365 -309 1341 -300 1302 -288 ct p -1408 -235 m 1408 -256 1447 -282 1480 -282 ct 1532 -282 1567 -228 1567 -146 ct -1567 -68 1532 -15 1481 -15 ct 1448 -15 1408 -40 1408 -62 ct p ef -1994 -205 m 2012 -204 2024 -203 2043 -203 ct 2098 -203 2136 -210 2166 -227 ct -2209 -249 2234 -292 2234 -339 ct 2234 -369 2224 -396 2205 -416 ct 2177 -447 2116 -467 2049 -467 ct -1863 -467 l 1863 -453 l 1915 -448 1922 -441 1922 -390 ct 1922 -84 l 1922 -25 1916 -18 1863 -13 ct -1863 0 l 2060 0 l 2060 -13 l 2005 -15 1994 -25 1994 -76 ct p -1994 -417 m 1994 -436 1999 -441 2018 -441 ct 2113 -441 2157 -408 2157 -335 ct -2157 -266 2116 -231 2034 -231 ct 2020 -231 2010 -232 1994 -233 ct p ef -2686 -317 m 2680 -477 l 2665 -477 l 2661 -462 2650 -453 2635 -453 ct 2629 -453 2618 -456 2608 -460 ct -2573 -471 2538 -477 2505 -477 ct 2447 -477 2388 -455 2345 -416 ct 2295 -372 2268 -307 2268 -229 ct -2268 -163 2289 -103 2325 -62 ct 2368 -16 2433 9 2503 9 ct 2582 9 2652 -22 2695 -79 ct -2683 -92 l 2630 -42 2584 -21 2525 -21 ct 2481 -21 2441 -35 2411 -62 ct 2372 -96 2350 -160 2350 -238 ct -2350 -366 2416 -449 2518 -449 ct 2558 -449 2595 -434 2623 -405 ct 2646 -383 2657 -363 2670 -317 ct -p ef -2806 -76 m 2806 -24 2797 -15 2737 -13 ct 2737 0 l 2947 0 l 2947 -13 l -2889 -15 2878 -25 2878 -76 ct 2878 -390 l 2878 -441 2888 -451 2947 -453 ct -2947 -467 l 2737 -467 l 2737 -453 l 2797 -450 2806 -442 2806 -390 ct p ef -3153 -275 m 3163 -277 3170 -278 3178 -278 ct 3196 -278 3202 -266 3202 -235 ct -3202 -59 l 3202 -24 3197 -19 3152 -10 ct 3152 0 l 3321 0 l 3321 -10 l -3273 -12 3261 -23 3261 -63 ct 3261 -222 l 3261 -244 3292 -280 3311 -280 ct -3315 -280 3321 -276 3329 -269 ct 3341 -259 3348 -255 3357 -255 ct 3374 -255 3385 -267 3385 -287 ct -3385 -310 3370 -324 3346 -324 ct 3317 -324 3296 -308 3261 -258 ct 3261 -323 l -3258 -324 l 3221 -309 3195 -300 3153 -286 ct p ef -3675 -115 m 3641 -62 3610 -41 3565 -41 ct 3525 -41 3495 -62 3474 -102 ct 3461 -129 3456 -152 3455 -195 ct -3672 -195 l 3667 -241 3660 -261 3642 -284 ct 3621 -309 3588 -324 3552 -324 ct -3516 -324 3483 -312 3456 -288 ct 3423 -259 3404 -208 3404 -151 ct 3404 -53 3455 7 3536 7 ct -3603 7 3656 -34 3686 -110 ct p -3456 -218 m 3464 -273 3488 -299 3531 -299 ct 3574 -299 3591 -279 3600 -218 ct -p ef -3926 -221 m 3923 -317 l 3915 -317 l 3914 -316 l 3908 -311 3907 -310 3904 -310 ct -3900 -310 3893 -312 3885 -315 ct 3869 -321 3854 -324 3836 -324 ct 3780 -324 3740 -288 3740 -237 ct -3740 -197 3762 -169 3822 -135 ct 3863 -112 l 3888 -98 3900 -81 3900 -59 ct -3900 -28 3877 -8 3841 -8 ct 3817 -8 3795 -17 3782 -33 ct 3767 -50 3761 -67 3752 -107 ct -3740 -107 l 3740 2 l 3749 2 l 3754 -4 3757 -5 3766 -5 ct 3772 -5 3782 -4 3798 0 ct -3818 4 3837 7 3850 7 ct 3904 7 3949 -33 3949 -83 ct 3949 -118 3932 -141 3890 -167 ct -3814 -212 l 3794 -223 3783 -241 3783 -260 ct 3783 -288 3805 -308 3838 -308 ct -3878 -308 3899 -284 3915 -221 ct p ef -4171 -324 m 4079 -324 4015 -256 4015 -159 ct 4015 -64 4081 7 4170 7 ct 4259 7 4326 -67 4326 -165 ct -4326 -257 l 4261 -324 l p -4162 -304 m 4221 -304 4263 -237 4263 -140 ct 4263 -60 4231 -12 4178 -12 ct -4151 -12 4124 -29 4110 -57 ct 4090 -94 4079 -144 4079 -194 ct 4079 -261 l 4112 -304 l -p ef -4704 -35 m 4700 -35 l 4668 -35 4660 -43 4660 -75 ct 4660 -317 l 4548 -317 l -4548 -305 l 4592 -303 4601 -296 4601 -261 ct 4601 -95 l 4601 -75 4597 -65 4587 -57 ct -4568 -42 4546 -33 4525 -33 ct 4498 -33 4475 -57 4475 -87 ct 4475 -317 l 4372 -317 l -4372 -307 l 4406 -305 4416 -295 4416 -262 ct 4416 -84 l 4416 -28 4450 7 4501 7 ct -4527 7 4555 -4 4574 -23 ct 4604 -53 l 4604 4 l 4607 6 l 4642 -7 4668 -15 4704 -25 ct -p ef -4740 -275 m 4750 -277 4757 -278 4765 -278 ct 4783 -278 4789 -266 4789 -235 ct -4789 -59 l 4789 -24 4784 -19 4739 -10 ct 4739 0 l 4908 0 l 4908 -10 l -4860 -12 4848 -23 4848 -63 ct 4848 -222 l 4848 -244 4879 -280 4898 -280 ct -4902 -280 4908 -276 4916 -269 ct 4928 -259 4935 -255 4944 -255 ct 4961 -255 4972 -267 4972 -287 ct -4972 -310 4957 -324 4933 -324 ct 4904 -324 4883 -308 4848 -258 ct 4848 -323 l -4845 -324 l 4808 -309 4782 -300 4740 -286 ct p ef -5254 -110 m 5221 -60 5195 -43 5155 -43 ct 5091 -43 5046 -100 5046 -181 ct 5046 -254 5084 -304 5142 -304 ct -5167 -304 5176 -296 5183 -270 ct 5187 -254 l 5193 -235 5206 -222 5221 -222 ct -5239 -222 5254 -235 5254 -252 ct 5254 -291 5205 -324 5146 -324 ct 5111 -324 5075 -310 5046 -285 ct -5011 -254 4991 -206 4991 -150 ct 4991 -58 5047 7 5125 7 ct 5157 7 5185 -4 5211 -26 ct -5230 -43 5243 -62 5264 -103 ct p ef -5580 -115 m 5546 -62 5515 -41 5470 -41 ct 5430 -41 5400 -62 5379 -102 ct 5366 -129 5361 -152 5360 -195 ct -5577 -195 l 5572 -241 5565 -261 5547 -284 ct 5526 -309 5493 -324 5457 -324 ct -5421 -324 5388 -312 5361 -288 ct 5328 -259 5309 -208 5309 -151 ct 5309 -53 5360 7 5441 7 ct -5508 7 5561 -34 5591 -110 ct p -5361 -218 m 5369 -273 5393 -299 5436 -299 ct 5479 -299 5496 -279 5505 -218 ct -p ef -5831 -221 m 5828 -317 l 5820 -317 l 5819 -316 l 5813 -311 5812 -310 5809 -310 ct -5805 -310 5798 -312 5790 -315 ct 5774 -321 5759 -324 5741 -324 ct 5685 -324 5645 -288 5645 -237 ct -5645 -197 5667 -169 5727 -135 ct 5768 -112 l 5793 -98 5805 -81 5805 -59 ct -5805 -28 5782 -8 5746 -8 ct 5722 -8 5700 -17 5687 -33 ct 5672 -50 5666 -67 5657 -107 ct -5645 -107 l 5645 2 l 5654 2 l 5659 -4 5662 -5 5671 -5 ct 5677 -5 5687 -4 5703 0 ct -5723 4 5742 7 5755 7 ct 5809 7 5854 -33 5854 -83 ct 5854 -118 5837 -141 5795 -167 ct -5719 -212 l 5699 -223 5688 -241 5688 -260 ct 5688 -288 5710 -308 5743 -308 ct -5783 -308 5804 -284 5820 -221 ct p ef -pom -pum -7050 17648 t -pom -gr -0.800 0.800 0.800 c 7408 18163 m 3599 18163 l 3599 15094 l 11218 15094 l -11218 18163 l 7408 18163 l p ef -0.003 0.003 0.003 c 7408 18163 m 3599 18163 l 3599 15094 l 11218 15094 l -11218 18163 l 7408 18163 l pc -gs -pum -5740 16854 t -142 -205 m 160 -204 172 -203 191 -203 ct 246 -203 284 -210 314 -227 ct 357 -249 382 -292 382 -339 ct -382 -369 372 -396 353 -416 ct 325 -447 264 -467 197 -467 ct 11 -467 l 11 -453 l -63 -448 70 -441 70 -390 ct 70 -84 l 70 -25 64 -18 11 -13 ct 11 0 l 208 0 l -208 -13 l 153 -15 142 -25 142 -76 ct p -142 -417 m 142 -436 147 -441 166 -441 ct 261 -441 305 -408 305 -335 ct 305 -266 264 -231 182 -231 ct -168 -231 158 -232 142 -233 ct p ef -834 -317 m 828 -477 l 813 -477 l 809 -462 798 -453 783 -453 ct 777 -453 766 -456 756 -460 ct -721 -471 686 -477 653 -477 ct 595 -477 536 -455 493 -416 ct 443 -372 416 -307 416 -229 ct -416 -163 437 -103 473 -62 ct 516 -16 581 9 651 9 ct 730 9 800 -22 843 -79 ct 831 -92 l -778 -42 732 -21 673 -21 ct 629 -21 589 -35 559 -62 ct 520 -96 498 -160 498 -238 ct -498 -366 564 -449 666 -449 ct 706 -449 743 -434 771 -405 ct 794 -383 805 -363 818 -317 ct -p ef -954 -76 m 954 -24 945 -15 885 -13 ct 885 0 l 1095 0 l 1095 -13 l 1037 -15 1026 -25 1026 -76 ct -1026 -390 l 1026 -441 1036 -451 1095 -453 ct 1095 -467 l 885 -467 l 885 -453 l -945 -450 954 -442 954 -390 ct p ef -1538 7 m 1642 -29 l 1642 -40 l 1629 -40 1628 -40 1626 -40 ct 1600 -40 1595 -48 1595 -80 ct -1595 -480 l 1591 -482 l 1557 -470 1533 -463 1488 -451 ct 1488 -439 l 1493 -440 1497 -440 1503 -440 ct -1529 -440 1536 -433 1536 -404 ct 1536 -294 l 1509 -317 1490 -324 1461 -324 ct -1380 -324 1315 -244 1315 -144 ct 1315 -54 1368 7 1445 7 ct 1485 7 1512 -7 1536 -40 ct -1536 4 l p -1536 -72 m 1536 -67 1531 -58 1524 -50 ct 1511 -36 1493 -29 1473 -29 ct 1414 -29 1375 -86 1375 -172 ct -1375 -252 1410 -304 1464 -304 ct 1501 -304 1536 -271 1536 -234 ct p ef -1671 -275 m 1681 -277 1688 -278 1696 -278 ct 1714 -278 1720 -266 1720 -235 ct -1720 -59 l 1720 -24 1715 -19 1670 -10 ct 1670 0 l 1839 0 l 1839 -10 l -1791 -12 1779 -23 1779 -63 ct 1779 -222 l 1779 -244 1810 -280 1829 -280 ct -1833 -280 1839 -276 1847 -269 ct 1859 -259 1866 -255 1875 -255 ct 1892 -255 1903 -267 1903 -287 ct -1903 -310 1888 -324 1864 -324 ct 1835 -324 1814 -308 1779 -258 ct 1779 -323 l -1776 -324 l 1739 -309 1713 -300 1671 -286 ct p ef -2028 -324 m 1919 -285 l 1919 -275 l 1924 -276 l 1933 -277 1942 -278 1948 -278 ct -1965 -278 1972 -266 1972 -235 ct 1972 -72 l 1972 -21 1965 -13 1916 -10 ct 1916 0 l -2083 0 l 2083 -10 l 2037 -14 2031 -21 2031 -72 ct 2031 -322 l p -1995 -482 m 1976 -482 1960 -465 1960 -446 ct 1960 -426 1975 -410 1995 -410 ct -2015 -410 2032 -425 2032 -446 ct 2032 -465 l 2015 -482 l p ef -2453 -317 m 2355 -317 l 2355 -307 l 2378 -304 2388 -297 2388 -284 ct 2388 -277 2387 -270 2384 -263 ct -2314 -80 l 2242 -261 l 2238 -271 2236 -280 2236 -287 ct 2236 -300 2244 -304 2268 -307 ct -2268 -317 l 2130 -317 l 2130 -307 l 2157 -305 2162 -298 2194 -225 ct 2279 -23 l -2280 -19 2282 -14 2285 -8 ct 2289 4 2293 9 2297 9 ct 2301 9 2306 0 2317 -25 ct -2407 -252 l 2428 -300 2432 -304 2453 -307 ct p ef -2775 -115 m 2741 -62 2710 -41 2665 -41 ct 2625 -41 2595 -62 2574 -102 ct 2561 -129 2556 -152 2555 -195 ct -2772 -195 l 2767 -241 2760 -261 2742 -284 ct 2721 -309 2688 -324 2652 -324 ct -2616 -324 2583 -312 2556 -288 ct 2523 -259 2504 -208 2504 -151 ct 2504 -53 2555 7 2636 7 ct -2703 7 2756 -34 2786 -110 ct p -2556 -218 m 2564 -273 2588 -299 2631 -299 ct 2674 -299 2691 -279 2700 -218 ct -p ef -2809 -275 m 2819 -277 2826 -278 2834 -278 ct 2852 -278 2858 -266 2858 -235 ct -2858 -59 l 2858 -24 2853 -19 2808 -10 ct 2808 0 l 2977 0 l 2977 -10 l -2929 -12 2917 -23 2917 -63 ct 2917 -222 l 2917 -244 2948 -280 2967 -280 ct -2971 -280 2977 -276 2985 -269 ct 2997 -259 3004 -255 3013 -255 ct 3030 -255 3041 -267 3041 -287 ct -3041 -310 3026 -324 3002 -324 ct 2973 -324 2952 -308 2917 -258 ct 2917 -323 l -2914 -324 l 2877 -309 2851 -300 2809 -286 ct p ef -3265 -221 m 3262 -317 l 3254 -317 l 3253 -316 l 3247 -311 3246 -310 3243 -310 ct -3239 -310 3232 -312 3224 -315 ct 3208 -321 3193 -324 3175 -324 ct 3119 -324 3079 -288 3079 -237 ct -3079 -197 3101 -169 3161 -135 ct 3202 -112 l 3227 -98 3239 -81 3239 -59 ct -3239 -28 3216 -8 3180 -8 ct 3156 -8 3134 -17 3121 -33 ct 3106 -50 3100 -67 3091 -107 ct -3079 -107 l 3079 2 l 3088 2 l 3093 -4 3096 -5 3105 -5 ct 3111 -5 3121 -4 3137 0 ct -3157 4 3176 7 3189 7 ct 3243 7 3288 -33 3288 -83 ct 3288 -118 3271 -141 3229 -167 ct -3153 -212 l 3133 -223 3122 -241 3122 -260 ct 3122 -288 3144 -308 3177 -308 ct -3217 -308 3238 -284 3254 -221 ct p ef -pom -gr -0.703 0.703 0.703 c 7143 19899 m 3068 19899 l 3068 18787 l 11218 18787 l -11218 19899 l 7143 19899 l p ef -0.003 0.003 0.003 c 7143 19899 m 3068 19899 l 3068 18787 l 11218 18787 l -11218 19899 l 7143 19899 l pc -gs -pum -3200 19579 t -437 -317 m 431 -477 l 416 -477 l 412 -462 401 -453 386 -453 ct 380 -453 369 -456 359 -460 ct -324 -471 289 -477 256 -477 ct 198 -477 139 -455 96 -416 ct 46 -372 19 -307 19 -229 ct -19 -163 40 -103 76 -62 ct 119 -16 184 9 254 9 ct 333 9 403 -22 446 -79 ct 434 -92 l -381 -42 335 -21 276 -21 ct 232 -21 192 -35 162 -62 ct 123 -96 101 -160 101 -238 ct -101 -366 167 -449 269 -449 ct 309 -449 346 -434 374 -405 ct 397 -383 408 -363 421 -317 ct -p ef -618 -205 m 636 -204 648 -203 667 -203 ct 722 -203 760 -210 790 -227 ct 833 -249 858 -292 858 -339 ct -858 -369 848 -396 829 -416 ct 801 -447 740 -467 673 -467 ct 487 -467 l 487 -453 l -539 -448 546 -441 546 -390 ct 546 -84 l 546 -25 540 -18 487 -13 ct 487 0 l -684 0 l 684 -13 l 629 -15 618 -25 618 -76 ct p -618 -417 m 618 -436 623 -441 642 -441 ct 737 -441 781 -408 781 -335 ct 781 -266 740 -231 658 -231 ct -644 -231 634 -232 618 -233 ct p ef -1304 -363 m 1304 -435 1312 -446 1370 -453 ct 1370 -467 l 1206 -467 l 1206 -453 l -1262 -449 1273 -434 1273 -363 ct 1273 -172 l 1273 -124 1268 -98 1257 -76 ct -1238 -43 1192 -21 1139 -21 ct 1089 -21 1055 -38 1036 -71 ct 1023 -93 1018 -120 1018 -164 ct -1018 -390 l 1018 -441 1026 -449 1082 -453 ct 1082 -467 l 882 -467 l 882 -453 l -938 -449 946 -441 946 -390 ct 946 -170 l 946 -48 1003 9 1123 9 ct 1200 9 1253 -14 1281 -62 ct -1298 -92 1304 -124 1304 -179 ct p ef -1900 -46 m 1888 -36 1879 -33 1868 -33 ct 1852 -33 1847 -43 1847 -74 ct 1847 -211 l -1847 -248 1844 -268 1833 -285 ct 1818 -311 1787 -324 1746 -324 ct 1679 -324 1627 -290 1627 -245 ct -1627 -229 1641 -215 1657 -215 ct 1674 -215 1689 -229 1689 -244 ct 1689 -247 1688 -251 1688 -256 ct -1686 -262 1686 -268 1686 -273 ct 1686 -292 1708 -307 1736 -307 ct 1771 -307 1790 -287 1790 -249 ct -1790 -206 l 1681 -162 1669 -156 1639 -129 ct 1624 -115 1614 -91 1614 -68 ct -1614 -24 1645 7 1688 7 ct 1719 7 1748 -7 1791 -44 ct 1794 -7 1807 7 1836 7 ct 1860 7 1875 -1 1900 -28 ct -p -1790 -86 m 1790 -64 1787 -58 1772 -50 ct 1755 -40 1735 -33 1720 -33 ct 1696 -33 1676 -57 1676 -88 ct -1676 -91 l 1676 -132 1705 -158 1790 -189 ct p ef -1916 -280 m 1920 -283 1927 -283 1935 -283 ct 1955 -283 1961 -273 1961 -238 ct -1961 -63 l 1961 -23 1953 -13 1917 -10 ct 1917 0 l 2067 0 l 2067 -10 l -2031 -13 2020 -21 2020 -47 ct 2020 -245 l 2054 -277 2070 -285 2093 -285 ct -2128 -285 2145 -264 2145 -217 ct 2145 -69 l 2145 -25 2135 -13 2100 -10 ct 2100 0 l -2247 0 l 2247 -10 l 2212 -14 2204 -22 2204 -57 ct 2204 -218 l 2204 -285 2173 -324 2121 -324 ct -2088 -324 2066 -312 2018 -267 ct 2018 -323 l 2013 -324 l 1979 -312 1955 -304 1916 -292 ct -p ef -2517 7 m 2621 -29 l 2621 -40 l 2608 -40 2607 -40 2605 -40 ct 2579 -40 2574 -48 2574 -80 ct -2574 -480 l 2570 -482 l 2536 -470 2512 -463 2467 -451 ct 2467 -439 l 2472 -440 2476 -440 2482 -440 ct -2508 -440 2515 -433 2515 -404 ct 2515 -294 l 2488 -317 2469 -324 2440 -324 ct -2359 -324 2294 -244 2294 -144 ct 2294 -54 2347 7 2424 7 ct 2464 7 2491 -7 2515 -40 ct -2515 4 l p -2515 -72 m 2515 -67 2510 -58 2503 -50 ct 2490 -36 2472 -29 2452 -29 ct 2393 -29 2354 -86 2354 -172 ct -2354 -252 2389 -304 2443 -304 ct 2480 -304 2515 -271 2515 -234 ct p ef -3306 -404 m 3306 -84 l 3306 -26 3298 -16 3242 -13 ct 3242 0 l 3440 0 l -3440 -13 l 3388 -16 3378 -26 3378 -76 ct 3378 -390 l 3378 -440 3388 -449 3440 -453 ct -3440 -467 l 3299 -467 l 3143 -110 l 2980 -467 l 2840 -467 l 2840 -453 l -2898 -450 2907 -441 2907 -390 ct 2907 -103 l 2907 -31 2898 -17 2839 -13 ct -2839 0 l 3005 0 l 3005 -13 l 2951 -16 2939 -32 2939 -103 ct 2939 -388 l -3116 0 l 3126 0 l p ef -3778 -46 m 3766 -36 3757 -33 3746 -33 ct 3730 -33 3725 -43 3725 -74 ct 3725 -211 l -3725 -248 3722 -268 3711 -285 ct 3696 -311 3665 -324 3624 -324 ct 3557 -324 3505 -290 3505 -245 ct -3505 -229 3519 -215 3535 -215 ct 3552 -215 3567 -229 3567 -244 ct 3567 -247 3566 -251 3566 -256 ct -3564 -262 3564 -268 3564 -273 ct 3564 -292 3586 -307 3614 -307 ct 3649 -307 3668 -287 3668 -249 ct -3668 -206 l 3559 -162 3547 -156 3517 -129 ct 3502 -115 3492 -91 3492 -68 ct -3492 -24 3523 7 3566 7 ct 3597 7 3626 -7 3669 -44 ct 3672 -7 3685 7 3714 7 ct 3738 7 3753 -1 3778 -28 ct -p -3668 -86 m 3668 -64 3665 -58 3650 -50 ct 3633 -40 3613 -33 3598 -33 ct 3574 -33 3554 -57 3554 -88 ct -3554 -91 l 3554 -132 3583 -158 3668 -189 ct p ef -3907 -324 m 3798 -285 l 3798 -275 l 3803 -276 l 3812 -277 3821 -278 3827 -278 ct -3844 -278 3851 -266 3851 -235 ct 3851 -72 l 3851 -21 3844 -13 3795 -10 ct 3795 0 l -3962 0 l 3962 -10 l 3916 -14 3910 -21 3910 -72 ct 3910 -322 l p -3874 -482 m 3855 -482 3839 -465 3839 -446 ct 3839 -426 3854 -410 3874 -410 ct -3894 -410 3911 -425 3911 -446 ct 3911 -465 l 3894 -482 l p ef -4006 -280 m 4010 -283 4017 -283 4025 -283 ct 4045 -283 4051 -273 4051 -238 ct -4051 -63 l 4051 -23 4043 -13 4007 -10 ct 4007 0 l 4157 0 l 4157 -10 l -4121 -13 4110 -21 4110 -47 ct 4110 -245 l 4144 -277 4160 -285 4183 -285 ct -4218 -285 4235 -264 4235 -217 ct 4235 -69 l 4235 -25 4225 -13 4190 -10 ct 4190 0 l -4337 0 l 4337 -10 l 4302 -14 4294 -22 4294 -57 ct 4294 -218 l 4294 -285 4263 -324 4211 -324 ct -4178 -324 4156 -312 4108 -267 ct 4108 -323 l 4103 -324 l 4069 -312 4045 -304 4006 -292 ct -p ef -4474 -480 m 4470 -482 l 4440 -471 4421 -465 4388 -456 ct 4368 -451 l 4368 -439 l -4372 -440 4375 -440 4380 -440 ct 4408 -440 4414 -434 4414 -404 ct 4414 -38 l -4414 -16 4474 7 4531 7 ct 4624 7 4696 -70 4696 -171 ct 4696 -258 4642 -324 4572 -324 ct -4529 -324 4488 -299 4474 -264 ct p -4474 -227 m 4474 -254 4507 -280 4543 -280 ct 4598 -280 4634 -225 4634 -139 ct -4634 -60 4600 -15 4542 -15 ct 4505 -15 4474 -31 4474 -49 ct p ef -4912 -324 m 4820 -324 4756 -256 4756 -159 ct 4756 -64 4822 7 4911 7 ct 5000 7 5067 -67 5067 -165 ct -5067 -257 l 5002 -324 l p -4903 -304 m 4962 -304 5004 -237 5004 -140 ct 5004 -60 4972 -12 4919 -12 ct -4892 -12 4865 -29 4851 -57 ct 4831 -94 4820 -144 4820 -194 ct 4820 -261 l 4853 -304 l -p ef -5418 -46 m 5406 -36 5397 -33 5386 -33 ct 5370 -33 5365 -43 5365 -74 ct 5365 -211 l -5365 -248 5362 -268 5351 -285 ct 5336 -311 5305 -324 5264 -324 ct 5197 -324 5145 -290 5145 -245 ct -5145 -229 5159 -215 5175 -215 ct 5192 -215 5207 -229 5207 -244 ct 5207 -247 5206 -251 5206 -256 ct -5204 -262 5204 -268 5204 -273 ct 5204 -292 5226 -307 5254 -307 ct 5289 -307 5308 -287 5308 -249 ct -5308 -206 l 5199 -162 5187 -156 5157 -129 ct 5142 -115 5132 -91 5132 -68 ct -5132 -24 5163 7 5206 7 ct 5237 7 5266 -7 5309 -44 ct 5312 -7 5325 7 5354 7 ct 5378 7 5393 -1 5418 -28 ct -p -5308 -86 m 5308 -64 5305 -58 5290 -50 ct 5273 -40 5253 -33 5238 -33 ct 5214 -33 5194 -57 5194 -88 ct -5194 -91 l 5194 -132 5223 -158 5308 -189 ct p ef -5428 -275 m 5438 -277 5445 -278 5453 -278 ct 5471 -278 5477 -266 5477 -235 ct -5477 -59 l 5477 -24 5472 -19 5427 -10 ct 5427 0 l 5596 0 l 5596 -10 l -5548 -12 5536 -23 5536 -63 ct 5536 -222 l 5536 -244 5567 -280 5586 -280 ct -5590 -280 5596 -276 5604 -269 ct 5616 -259 5623 -255 5632 -255 ct 5649 -255 5660 -267 5660 -287 ct -5660 -310 5645 -324 5621 -324 ct 5592 -324 5571 -308 5536 -258 ct 5536 -323 l -5533 -324 l 5496 -309 5470 -300 5428 -286 ct p ef -5904 7 m 6008 -29 l 6008 -40 l 5995 -40 5994 -40 5992 -40 ct 5966 -40 5961 -48 5961 -80 ct -5961 -480 l 5957 -482 l 5923 -470 5899 -463 5854 -451 ct 5854 -439 l 5859 -440 5863 -440 5869 -440 ct -5895 -440 5902 -433 5902 -404 ct 5902 -294 l 5875 -317 5856 -324 5827 -324 ct -5746 -324 5681 -244 5681 -144 ct 5681 -54 5734 7 5811 7 ct 5851 7 5878 -7 5902 -40 ct -5902 4 l p -5902 -72 m 5902 -67 5897 -58 5890 -50 ct 5877 -36 5859 -29 5839 -29 ct 5780 -29 5741 -86 5741 -172 ct -5741 -252 5776 -304 5830 -304 ct 5867 -304 5902 -271 5902 -234 ct p ef -6533 -477 m 6518 -477 l 6515 -461 6508 -453 6496 -453 ct 6489 -453 6477 -456 6465 -461 ct -6438 -471 6412 -477 6390 -477 ct 6359 -477 6328 -465 6305 -444 ct 6280 -422 6268 -393 6268 -356 ct -6268 -300 6299 -260 6378 -218 ct 6429 -192 6465 -163 6483 -136 ct 6489 -127 6493 -112 6493 -95 ct -6493 -48 6458 -15 6406 -15 ct 6343 -15 6299 -54 6263 -140 ct 6247 -140 l 6268 9 l -6284 9 l 6285 -4 6293 -14 6304 -14 ct 6311 -14 6323 -11 6337 -6 ct 6364 4 6392 9 6420 9 ct -6501 9 6564 -45 6564 -118 ct 6564 -176 6525 -222 6432 -272 ct 6358 -313 6328 -344 6328 -382 ct -6328 -421 6358 -448 6402 -448 ct 6434 -448 6463 -434 6488 -409 ct 6510 -386 6520 -368 6531 -326 ct -6549 -326 l p ef -6903 -115 m 6869 -62 6838 -41 6793 -41 ct 6753 -41 6723 -62 6702 -102 ct 6689 -129 6684 -152 6683 -195 ct -6900 -195 l 6895 -241 6888 -261 6870 -284 ct 6849 -309 6816 -324 6780 -324 ct -6744 -324 6711 -312 6684 -288 ct 6651 -259 6632 -208 6632 -151 ct 6632 -53 6683 7 6764 7 ct -6831 7 6884 -34 6914 -110 ct p -6684 -218 m 6692 -273 6716 -299 6759 -299 ct 6802 -299 6819 -279 6828 -218 ct -p ef -7112 -317 m 7040 -317 l 7040 -399 l 7040 -406 7040 -408 7035 -408 ct 7030 -402 7026 -396 7021 -389 ct -6994 -350 6964 -316 6953 -313 ct 6945 -308 6941 -303 6941 -300 ct 6941 -297 6941 -296 6944 -295 ct -6981 -295 l 6981 -82 l 6981 -23 7002 7 7044 7 ct 7078 7 7105 -9 7128 -46 ct -7119 -54 l 7104 -36 7092 -29 7077 -29 ct 7051 -29 7040 -48 7040 -93 ct 7040 -295 l -7112 -295 l p ef -7482 -35 m 7478 -35 l 7446 -35 7438 -43 7438 -75 ct 7438 -317 l 7326 -317 l -7326 -305 l 7370 -303 7379 -296 7379 -261 ct 7379 -95 l 7379 -75 7375 -65 7365 -57 ct -7346 -42 7324 -33 7303 -33 ct 7276 -33 7253 -57 7253 -87 ct 7253 -317 l 7150 -317 l -7150 -307 l 7184 -305 7194 -295 7194 -262 ct 7194 -84 l 7194 -28 7228 7 7279 7 ct -7305 7 7333 -4 7352 -23 ct 7382 -53 l 7382 4 l 7385 6 l 7420 -7 7446 -15 7482 -25 ct -p ef -7520 -277 m 7526 -278 7531 -278 7538 -278 ct 7562 -278 7566 -271 7566 -237 ct -7566 92 l 7566 129 7559 136 7517 141 ct 7517 153 l 7688 153 l 7688 140 l -7635 139 7626 132 7626 87 ct 7626 -23 l 7650 0 7667 7 7697 7 ct 7780 7 7845 -72 7845 -174 ct -7845 -261 7796 -324 7727 -324 ct 7688 -324 7657 -307 7626 -268 ct 7626 -323 l -7622 -324 l 7583 -309 7559 -300 7520 -288 ct p -7626 -235 m 7626 -256 7665 -282 7698 -282 ct 7750 -282 7785 -228 7785 -146 ct -7785 -68 7750 -15 7699 -15 ct 7666 -15 7626 -40 7626 -62 ct p ef -pom -gr -7143 3562 m 7292 3111 l 6992 3112 l 7143 3562 l p ef -1 lw 0 lj 7143 2938 m 7143 3202 l ps -7143 7415 m 7292 6964 l 6992 6965 l 7143 7415 l p ef -7143 6792 m 7143 7055 l ps -7143 9151 m 7292 8700 l 6992 8701 l 7143 9151 l p ef -7143 8527 m 7143 8791 l ps -7143 13664 m 7292 13213 l 6992 13214 l 7143 13664 l p ef -7143 13041 m 7143 13304 l ps -7143 18787 m 7292 18336 l 6992 18337 l 7143 18787 l p ef -7143 18163 m 7143 18427 l ps -0.703 0.703 0.703 c 7156 23574 m 3068 23574 l 3068 20902 l 11245 20902 l -11245 23574 l 7156 23574 l p ef -0 lw 1 lj 0.003 0.003 0.003 c 7156 23574 m 3068 23574 l 3068 20902 l 11245 20902 l -11245 23574 l 7156 23574 l pc -gs -pum -5238 21590 t -421 -119 m 401 -119 l 366 -43 336 -26 235 -26 ct 216 -26 l 181 -26 151 -29 146 -34 ct -143 -36 141 -44 141 -56 ct 141 -230 l 250 -230 l 308 -230 319 -221 328 -163 ct -344 -163 l 344 -326 l 328 -326 l 323 -297 320 -287 312 -277 ct 303 -265 283 -259 250 -259 ct -141 -259 l 141 -416 l 141 -436 146 -440 165 -440 ct 260 -440 l 340 -440 355 -429 367 -366 ct -385 -366 l 383 -467 l 8 -467 l 8 -453 l 60 -449 69 -439 69 -390 ct 69 -76 l -69 -27 60 -16 8 -13 ct 8 0 l 389 0 l p ef -854 -122 m 842 -96 832 -79 822 -67 ct 797 -40 758 -27 699 -27 ct 652 -27 l -601 -27 591 -31 591 -56 ct 591 -390 l 591 -440 601 -450 657 -453 ct 657 -467 l -458 -467 l 458 -453 l 510 -449 519 -439 519 -390 ct 519 -76 l 519 -27 510 -16 458 -13 ct -458 0 l 838 0 l 872 -122 l p ef -1238 -163 m 1238 -326 l 1221 -326 l 1213 -270 1200 -259 1144 -259 ct 1041 -259 l -1041 -416 l 1041 -436 1045 -440 1064 -440 ct 1160 -440 l 1240 -440 1255 -429 1267 -366 ct -1285 -366 l 1283 -467 l 908 -467 l 908 -453 l 960 -449 969 -439 969 -390 ct -969 -84 l 969 -26 962 -16 908 -13 ct 908 0 l 1106 0 l 1106 -13 l 1051 -16 1041 -26 1041 -76 ct -1041 -230 l 1144 -230 l 1201 -230 1213 -220 1221 -163 ct p ef -1624 -205 m 1642 -204 1654 -203 1673 -203 ct 1728 -203 1766 -210 1796 -227 ct -1839 -249 1864 -292 1864 -339 ct 1864 -369 1854 -396 1835 -416 ct 1807 -447 1746 -467 1679 -467 ct -1493 -467 l 1493 -453 l 1545 -448 1552 -441 1552 -390 ct 1552 -84 l 1552 -25 1546 -18 1493 -13 ct -1493 0 l 1690 0 l 1690 -13 l 1635 -15 1624 -25 1624 -76 ct p -1624 -417 m 1624 -436 1629 -441 1648 -441 ct 1743 -441 1787 -408 1787 -335 ct -1787 -266 1746 -231 1664 -231 ct 1650 -231 1640 -232 1624 -233 ct p ef -2191 -46 m 2179 -36 2170 -33 2159 -33 ct 2143 -33 2138 -43 2138 -74 ct 2138 -211 l -2138 -248 2135 -268 2124 -285 ct 2109 -311 2078 -324 2037 -324 ct 1970 -324 1918 -290 1918 -245 ct -1918 -229 1932 -215 1948 -215 ct 1965 -215 1980 -229 1980 -244 ct 1980 -247 1979 -251 1979 -256 ct -1977 -262 1977 -268 1977 -273 ct 1977 -292 1999 -307 2027 -307 ct 2062 -307 2081 -287 2081 -249 ct -2081 -206 l 1972 -162 1960 -156 1930 -129 ct 1915 -115 1905 -91 1905 -68 ct -1905 -24 1936 7 1979 7 ct 2010 7 2039 -7 2082 -44 ct 2085 -7 2098 7 2127 7 ct 2151 7 2166 -1 2191 -28 ct -p -2081 -86 m 2081 -64 2078 -58 2063 -50 ct 2046 -40 2026 -33 2011 -33 ct 1987 -33 1967 -57 1967 -88 ct -1967 -91 l 1967 -132 1996 -158 2081 -189 ct p ef -2531 -317 m 2436 -317 l 2436 -307 l 2458 -307 2469 -300 2469 -289 ct 2469 -286 2469 -282 2467 -277 ct -2398 -82 l 2317 -261 l 2313 -271 2310 -280 2310 -288 ct 2310 -300 2320 -305 2351 -307 ct -2351 -317 l 2205 -317 l 2205 -307 l 2224 -304 2236 -297 2241 -285 ct 2322 -111 l -2324 -105 l 2335 -84 l 2354 -49 2366 -24 2366 -13 ct 2366 -2 2349 41 2337 62 ct -2328 81 2312 94 2302 94 ct 2298 94 2292 93 2284 89 ct 2271 84 2259 81 2247 81 ct -2231 81 2217 96 2217 112 ct 2217 136 2239 153 2269 153 ct 2316 153 2350 114 2388 12 ct -2497 -275 l 2506 -297 2514 -304 2531 -307 ct p ef -2579 -439 m 2583 -439 l 2591 -440 2599 -441 2605 -441 ct 2628 -441 2635 -431 2635 -398 ct -2635 -61 l 2635 -23 2625 -14 2580 -10 ct 2580 0 l 2747 0 l 2747 -10 l -2702 -13 2694 -20 2694 -59 ct 2694 -480 l 2691 -482 l 2654 -470 2628 -463 2579 -451 ct -p ef -2954 -324 m 2862 -324 2798 -256 2798 -159 ct 2798 -64 2864 7 2953 7 ct 3042 7 3109 -67 3109 -165 ct -3109 -257 l 3044 -324 l p -2945 -304 m 3004 -304 3046 -237 3046 -140 ct 3046 -60 3014 -12 2961 -12 ct -2934 -12 2907 -29 2893 -57 ct 2873 -94 2862 -144 2862 -194 ct 2862 -261 l 2895 -304 l -p ef -3461 -46 m 3449 -36 3440 -33 3429 -33 ct 3413 -33 3408 -43 3408 -74 ct 3408 -211 l -3408 -248 3405 -268 3394 -285 ct 3379 -311 3348 -324 3307 -324 ct 3240 -324 3188 -290 3188 -245 ct -3188 -229 3202 -215 3218 -215 ct 3235 -215 3250 -229 3250 -244 ct 3250 -247 3249 -251 3249 -256 ct -3247 -262 3247 -268 3247 -273 ct 3247 -292 3269 -307 3297 -307 ct 3332 -307 3351 -287 3351 -249 ct -3351 -206 l 3242 -162 3230 -156 3200 -129 ct 3185 -115 3175 -91 3175 -68 ct -3175 -24 3206 7 3249 7 ct 3280 7 3309 -7 3352 -44 ct 3355 -7 3368 7 3397 7 ct 3421 7 3436 -1 3461 -28 ct -p -3351 -86 m 3351 -64 3348 -58 3333 -50 ct 3316 -40 3296 -33 3281 -33 ct 3257 -33 3237 -57 3237 -88 ct -3237 -91 l 3237 -132 3266 -158 3351 -189 ct p ef -3708 7 m 3812 -29 l 3812 -40 l 3799 -40 3798 -40 3796 -40 ct 3770 -40 3765 -48 3765 -80 ct -3765 -480 l 3761 -482 l 3727 -470 3703 -463 3658 -451 ct 3658 -439 l 3663 -440 3667 -440 3673 -440 ct -3699 -440 3706 -433 3706 -404 ct 3706 -294 l 3679 -317 3660 -324 3631 -324 ct -3550 -324 3485 -244 3485 -144 ct 3485 -54 3538 7 3615 7 ct 3655 7 3682 -7 3706 -40 ct -3706 4 l p -3706 -72 m 3706 -67 3701 -58 3694 -50 ct 3681 -36 3663 -29 3643 -29 ct 3584 -29 3545 -86 3545 -172 ct -3545 -252 3580 -304 3634 -304 ct 3671 -304 3706 -271 3706 -234 ct p ef -pom -gr -0.800 0.800 0.800 c 7434 23574 m 3624 23574 l 3624 22092 l 11245 22092 l -11245 23574 l 7434 23574 l p ef -0.003 0.003 0.003 c 7434 23574 m 3624 23574 l 3624 22092 l 11245 22092 l -11245 23574 l 7434 23574 l pc -gs -pum -5476 23045 t -404 -122 m 392 -96 382 -79 372 -67 ct 347 -40 308 -27 249 -27 ct 202 -27 l -151 -27 141 -31 141 -56 ct 141 -390 l 141 -440 151 -450 207 -453 ct 207 -467 l -8 -467 l 8 -453 l 60 -449 69 -439 69 -390 ct 69 -76 l 69 -27 60 -16 8 -13 ct -8 0 l 388 0 l 422 -122 l p ef -573 -324 m 464 -285 l 464 -275 l 469 -276 l 478 -277 487 -278 493 -278 ct -510 -278 517 -266 517 -235 ct 517 -72 l 517 -21 510 -13 461 -10 ct 461 0 l -628 0 l 628 -10 l 582 -14 576 -21 576 -72 ct 576 -322 l p -540 -482 m 521 -482 505 -465 505 -446 ct 505 -426 520 -410 540 -410 ct 560 -410 577 -425 577 -446 ct -577 -465 l 560 -482 l p ef -672 -280 m 676 -283 683 -283 691 -283 ct 711 -283 717 -273 717 -238 ct 717 -63 l -717 -23 709 -13 673 -10 ct 673 0 l 823 0 l 823 -10 l 787 -13 776 -21 776 -47 ct -776 -245 l 810 -277 826 -285 849 -285 ct 884 -285 901 -264 901 -217 ct 901 -69 l -901 -25 891 -13 856 -10 ct 856 0 l 1003 0 l 1003 -10 l 968 -14 960 -22 960 -57 ct -960 -218 l 960 -285 929 -324 877 -324 ct 844 -324 822 -312 774 -267 ct 774 -323 l -769 -324 l 735 -312 711 -304 672 -292 ct p ef -1370 -35 m 1366 -35 l 1334 -35 1326 -43 1326 -75 ct 1326 -317 l 1214 -317 l -1214 -305 l 1258 -303 1267 -296 1267 -261 ct 1267 -95 l 1267 -75 1263 -65 1253 -57 ct -1234 -42 1212 -33 1191 -33 ct 1164 -33 1141 -57 1141 -87 ct 1141 -317 l 1038 -317 l -1038 -307 l 1072 -305 1082 -295 1082 -262 ct 1082 -84 l 1082 -28 1116 7 1167 7 ct -1193 7 1221 -4 1240 -23 ct 1270 -53 l 1270 4 l 1273 6 l 1308 -7 1334 -15 1370 -25 ct -p ef -1598 0 m 1740 0 l 1740 -10 l 1718 -10 1704 -21 1682 -52 ct 1591 -191 l -1650 -276 l 1663 -295 1685 -306 1707 -307 ct 1707 -317 l 1596 -317 l 1596 -307 l -1617 -305 1624 -301 1624 -291 ct 1624 -283 1615 -267 1598 -245 ct 1594 -241 1586 -228 1577 -214 ct -1567 -228 l 1547 -258 1534 -282 1534 -291 ct 1534 -301 1543 -306 1565 -307 ct -1565 -317 l 1418 -317 l 1418 -307 l 1425 -307 l 1446 -307 1457 -297 1479 -264 ct -1546 -163 l 1465 -46 l 1444 -17 1437 -12 1414 -10 ct 1414 0 l 1516 0 l -1516 -10 l 1496 -10 1488 -14 1488 -23 ct 1488 -27 1493 -38 1502 -52 ct 1558 -139 l -1622 -40 l 1625 -36 1626 -31 1626 -27 ct 1626 -14 1621 -12 1598 -10 ct p ef -2249 -453 m 2258 -453 2265 -453 2267 -453 ct 2289 -451 2297 -446 2297 -432 ct -2297 -416 2281 -395 2242 -359 ct 2117 -245 l 2117 -390 l 2117 -441 2125 -449 2182 -453 ct -2182 -467 l 1982 -467 l 1982 -453 l 2037 -449 2045 -440 2045 -390 ct 2045 -84 l -2045 -26 2037 -16 1982 -13 ct 1982 0 l 2181 0 l 2181 -13 l 2126 -16 2117 -25 2117 -76 ct -2117 -208 l 2135 -223 l 2210 -149 l 2264 -96 2302 -46 2302 -29 ct 2302 -19 2292 -14 2272 -14 ct -2269 -14 2261 -14 2253 -13 ct 2253 0 l 2468 0 l 2468 -13 l 2431 -14 2421 -21 2357 -89 ct -2193 -266 l 2327 -398 l 2375 -444 2386 -450 2434 -453 ct 2434 -467 l 2249 -467 l -p ef -2775 -115 m 2741 -62 2710 -41 2665 -41 ct 2625 -41 2595 -62 2574 -102 ct 2561 -129 2556 -152 2555 -195 ct -2772 -195 l 2767 -241 2760 -261 2742 -284 ct 2721 -309 2688 -324 2652 -324 ct -2616 -324 2583 -312 2556 -288 ct 2523 -259 2504 -208 2504 -151 ct 2504 -53 2555 7 2636 7 ct -2703 7 2756 -34 2786 -110 ct p -2556 -218 m 2564 -273 2588 -299 2631 -299 ct 2674 -299 2691 -279 2700 -218 ct -p ef -2809 -275 m 2819 -277 2826 -278 2834 -278 ct 2852 -278 2858 -266 2858 -235 ct -2858 -59 l 2858 -24 2853 -19 2808 -10 ct 2808 0 l 2977 0 l 2977 -10 l -2929 -12 2917 -23 2917 -63 ct 2917 -222 l 2917 -244 2948 -280 2967 -280 ct -2971 -280 2977 -276 2985 -269 ct 2997 -259 3004 -255 3013 -255 ct 3030 -255 3041 -267 3041 -287 ct -3041 -310 3026 -324 3002 -324 ct 2973 -324 2952 -308 2917 -258 ct 2917 -323 l -2914 -324 l 2877 -309 2851 -300 2809 -286 ct p ef -3054 -280 m 3058 -283 3065 -283 3073 -283 ct 3093 -283 3099 -273 3099 -238 ct -3099 -63 l 3099 -23 3091 -13 3055 -10 ct 3055 0 l 3205 0 l 3205 -10 l -3169 -13 3158 -21 3158 -47 ct 3158 -245 l 3192 -277 3208 -285 3231 -285 ct -3266 -285 3283 -264 3283 -217 ct 3283 -69 l 3283 -25 3273 -13 3238 -10 ct 3238 0 l -3385 0 l 3385 -10 l 3350 -14 3342 -22 3342 -57 ct 3342 -218 l 3342 -285 3311 -324 3259 -324 ct -3226 -324 3204 -312 3156 -267 ct 3156 -323 l 3151 -324 l 3117 -312 3093 -304 3054 -292 ct -p ef -3701 -115 m 3667 -62 3636 -41 3591 -41 ct 3551 -41 3521 -62 3500 -102 ct 3487 -129 3482 -152 3481 -195 ct -3698 -195 l 3693 -241 3686 -261 3668 -284 ct 3647 -309 3614 -324 3578 -324 ct -3542 -324 3509 -312 3482 -288 ct 3449 -259 3430 -208 3430 -151 ct 3430 -53 3481 7 3562 7 ct -3629 7 3682 -34 3712 -110 ct p -3482 -218 m 3490 -273 3514 -299 3557 -299 ct 3600 -299 3617 -279 3626 -218 ct -p ef -3744 -439 m 3748 -439 l 3756 -440 3764 -441 3770 -441 ct 3793 -441 3800 -431 3800 -398 ct -3800 -61 l 3800 -23 3790 -14 3745 -10 ct 3745 0 l 3912 0 l 3912 -10 l -3867 -13 3859 -20 3859 -59 ct 3859 -480 l 3856 -482 l 3819 -470 3793 -463 3744 -451 ct -p ef -pom -gr -7156 20902 m 7305 20451 l 7005 20452 l 7156 20902 l p ef -1 lw 0 lj 7143 19899 m 7143 20401 l 7156 20401 l 7156 20542 l ps -tm setmatrix -0 0 t -1 1 s -0 21781 t -pom -count op_count sub {pop} repeat countdictstack dict_count sub {end} repeat b4_inc_state restore -%%PageTrailer -%%Trailer -%%EOF diff --git a/documentation/codeflow.svg b/documentation/codeflow.svg new file mode 100644 index 0000000000..fba8f29419 --- /dev/null +++ b/documentation/codeflow.svg @@ -0,0 +1,234 @@ +<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="256px" height="640px" viewBox="0 0 256 640" enable-background="new 0 0 256 640" xml:space="preserve">
+<font horiz-adv-x="1000">
+<font-face font-family="MyriadPro-Regular" units-per-em="1000" underline-position="-100" underline-thickness="50"/>
+<missing-glyph horiz-adv-x="500" d="M0,0l500,0l0,700l-500,0M250,395l-170,255l340,0M280,350l170,255l0,-510M80,50l170,255l170,-255M50,605l170,-255l-170,-255z"/>
+<glyph unicode="A" horiz-adv-x="612" d="M424,212l72,-212l93,0l-230,674l-104,0l-230,-674l90,0l70,212M203,280l66,195C283,516 293,558 303,597l2,0C315,558 325,518 340,474l67,-194z"/>
+<glyph unicode="B" horiz-adv-x="542" d="M76,2C105,-2 151,-6 211,-6C321,-6 397,14 443,57C478,89 501,134 501,192C501,292 426,345 362,360l0,3C432,388 476,445 476,511C476,564 454,604 419,630C378,664 322,679 235,679C175,679 114,673 76,664M163,606C177,609 200,612 240,612C328,612 387,580 387,502C387,437 333,388 242,388l-79,0M163,323l72,0C330,323 409,284 409,193C409,95 326,62 236,62C205,62 181,63 163,66z"/>
+<glyph unicode="C" horiz-adv-x="580" d="M529,91C494,74 440,63 386,63C223,63 128,168 128,334C128,511 233,612 391,612C447,612 494,600 526,584l22,71C525,667 471,685 388,685C179,685 36,543 36,331C36,109 178,-11 368,-11C450,-11 515,5 546,21z"/>
+<glyph unicode="D" horiz-adv-x="666" d="M76,2C120,-3 171,-6 234,-6C365,-6 469,28 533,91C595,153 630,243 630,353C630,462 595,540 534,595C475,649 386,679 261,679C192,679 129,673 76,664M163,601C186,606 220,610 265,610C449,610 539,509 538,350C538,168 438,64 251,64C217,64 185,65 163,68z"/>
+<glyph unicode="E" horiz-adv-x="492" d="M424,388l-261,0l0,213l277,0l0,73l-365,0l0,-674l380,0l0,73l-292,0l0,243l261,0z"/>
+<glyph unicode="F" horiz-adv-x="487" d="M75,0l88,0l0,305l254,0l0,72l-254,0l0,224l275,0l0,73l-363,0z"/>
+<glyph unicode="H" horiz-adv-x="652" d="M75,674l0,-674l88,0l0,316l326,0l0,-316l88,0l0,674l-88,0l0,-282l-326,0l0,282z"/>
+<glyph unicode="I" horiz-adv-x="239" d="M75,674l0,-674l88,0l0,674z"/>
+<glyph unicode="L" horiz-adv-x="472" d="M75,0l376,0l0,73l-288,0l0,601l-88,0z"/>
+<glyph unicode="M" horiz-adv-x="804" d="M660,0l86,0l-42,674l-111,0l-120,-326C443,263 419,189 401,121l-2,0C381,191 359,265 331,348l-115,326l-111,0l-47,-674l83,0l18,289C165,391 170,503 172,587l2,0C193,507 219,421 251,325l110,-321l66,0l119,327C580,424 607,509 631,587l2,0C633,504 639,390 644,296z"/>
+<glyph unicode="N" horiz-adv-x="658" d="M158,0l0,288C158,400 157,481 152,566l3,1C188,494 233,417 280,342l214,-342l88,0l0,674l-82,0l0,-282C500,287 502,205 510,115l-3,-1C476,183 436,254 387,333l-215,341l-96,0l0,-674z"/>
+<glyph unicode="O" horiz-adv-x="689" d="M348,686C168,686 36,546 36,332C36,128 160,-11 339,-11C511,-11 652,113 652,344C652,545 533,686 348,686M345,615C490,615 560,475 560,340C560,187 482,60 344,60C206,60 128,189 128,334C128,481 200,615 345,615z"/>
+<glyph unicode="P" horiz-adv-x="532" d="M76,0l87,0l0,270C183,265 207,264 233,264C318,264 392,289 439,338C473,373 491,421 491,482C491,542 468,591 432,623C392,659 329,679 243,679C173,679 118,673 76,666M163,603C178,607 207,610 245,610C340,610 404,567 404,477C404,386 340,334 235,334C206,334 182,336 163,341z"/>
+<glyph unicode="Q" horiz-adv-x="689" d="M657,-26C600,-16 527,0 460,17l0,4C572,61 652,171 652,345C652,544 533,686 349,686C167,686 36,547 36,331C36,113 172,-5 333,-11C346,-11 359,-16 374,-21C452,-48 541,-75 632,-99M344,60C206,60 128,189 128,333C128,479 200,615 347,615C490,615 560,476 560,340C560,187 482,60 344,60z"/>
+<glyph unicode="R" horiz-adv-x="538" d="M76,0l87,0l0,292l82,0C324,289 361,254 381,161C399,77 414,20 425,0l90,0C501,26 485,91 463,185C447,255 416,303 365,321l0,3C435,348 491,407 491,495C491,548 471,594 438,624C397,661 336,679 243,679C184,679 120,673 76,665M163,604C178,608 207,611 249,611C341,611 404,573 404,486C404,409 345,358 252,358l-89,0z"/>
+<glyph unicode="S" horiz-adv-x="493" d="M42,33C78,9 149,-11 214,-11C373,-11 449,80 449,184C449,283 392,338 278,382C185,418 144,449 144,512C144,558 179,613 271,613C332,613 377,594 398,581l24,71C393,669 342,685 274,685C143,685 56,607 56,502C56,408 124,350 234,310C325,276 361,239 361,177C361,109 309,62 220,62C160,62 104,81 65,106z"/>
+<glyph unicode="T" horiz-adv-x="497" d="M204,0l88,0l0,600l206,0l0,74l-499,0l0,-74l205,0z"/>
+<glyph unicode="U" horiz-adv-x="647" d="M75,674l0,-397C75,67 179,-11 317,-11C463,-11 572,73 572,280l0,394l-88,0l0,-400C484,126 419,60 320,60C230,60 163,124 163,274l0,400z"/>
+<glyph unicode="a" horiz-adv-x="482" d="M413,297C413,393 377,494 229,494C168,494 109,477 69,452l20,-59C123,416 170,429 216,429C315,430 326,357 326,318l0,-10C139,309 35,245 35,128C35,58 85,-11 183,-11C252,-11 304,23 331,61l3,0l7,-61l79,0C415,33 413,74 413,116M328,163C328,155 327,145 324,135C310,94 269,54 205,54C161,54 123,80 123,138C123,232 232,249 328,247z"/>
+<glyph unicode="b" horiz-adv-x="569" d="M73,125C73,82 71,33 69,0l75,0l5,79l2,0C188,16 244,-11 314,-11C422,-11 532,75 532,248C532,394 448,494 327,494C249,494 193,460 162,406l-2,0l0,304l-87,0M160,280C160,294 162,306 165,317C183,383 239,425 298,425C393,425 443,342 443,245C443,134 389,59 296,59C232,59 180,101 164,162C161,172 160,183 160,194z"/>
+<glyph unicode="c" horiz-adv-x="448" d="M403,83C378,72 345,60 295,60C199,60 127,129 127,241C127,341 187,424 298,424C346,424 379,412 400,401l20,67C396,481 350,494 298,494C140,494 38,385 38,236C38,88 133,-11 279,-11C344,-11 395,6 418,17z"/>
+<glyph unicode="," horiz-adv-x="207" d="M78,-117C106,-70 150,41 174,126l-98,-10C65,43 38,-64 16,-124z"/>
+<glyph unicode="d" horiz-adv-x="564" d="M403,710l0,-289l-2,0C379,459 330,494 255,494C138,494 37,396 38,235C38,88 129,-11 246,-11C325,-11 383,30 409,84l3,0l4,-84l78,0C492,33 490,82 490,125l0,585M403,203C403,189 402,177 399,165C383,100 329,60 270,60C176,60 127,141 127,239C127,345 181,425 272,425C338,425 386,379 399,324C402,313 403,298 403,287z"/>
+<glyph unicode="e" horiz-adv-x="501" d="M462,226C464,236 465,249 465,267C465,356 424,494 265,494C124,494 38,380 38,234C38,88 127,-11 276,-11C353,-11 407,6 438,20l-16,63C390,69 351,58 288,58C199,58 124,107 122,226M123,289C130,350 168,431 258,431C357,431 381,344 380,289z"/>
+<glyph unicode="h" horiz-adv-x="555" d="M73,0l88,0l0,292C161,308 162,321 167,334C184,381 228,421 285,421C368,421 397,356 397,278l0,-278l88,0l0,288C485,454 381,494 316,494C283,494 252,485 226,470C199,455 177,432 163,407l-2,0l0,303l-88,0z"/>
+<glyph unicode="-" horiz-adv-x="307" d="M30,302l0,-64l247,0l0,64z"/>
+<glyph unicode="i" horiz-adv-x="234" d="M161,0l0,484l-88,0l0,-484M117,675C84,675 62,650 62,620C62,590 83,566 115,566C150,566 171,590 171,620C171,651 149,675 117,675z"/>
+<glyph unicode="k" horiz-adv-x="469" d="M160,710l-87,0l0,-710l87,0l0,182l45,50l166,-232l108,0l-213,285l186,199l-105,0l-143,-167C190,300 174,279 162,262l-2,0z"/>
+<glyph unicode="l" horiz-adv-x="236" d="M73,0l88,0l0,710l-88,0z"/>
+<glyph unicode="m" horiz-adv-x="834" d="M73,0l86,0l0,291C159,306 161,322 166,334C180,378 221,422 275,422C342,422 376,367 376,290l0,-290l86,0l0,299C462,315 465,330 469,343C485,385 523,422 574,422C644,422 679,367 679,273l0,-273l86,0l0,284C765,452 670,494 605,494C559,494 528,482 499,460C479,445 459,425 444,397l-2,0C421,454 371,494 306,494C225,494 180,451 153,405l-3,0l-4,79l-77,0C71,444 73,404 73,353z"/>
+<glyph unicode="n" horiz-adv-x="555" d="M73,0l88,0l0,291C161,306 163,321 167,332C183,381 228,422 285,422C368,422 397,357 397,279l0,-279l88,0l0,288C485,454 381,494 314,494C234,494 178,449 154,404l-2,0l-5,80l-78,0C72,444 73,404 73,353z"/>
+<glyph unicode="o" horiz-adv-x="549" d="M278,494C145,494 38,399 38,238C38,85 140,-11 270,-11C386,-11 511,67 511,246C511,393 417,494 278,494M276,428C380,428 421,325 421,243C421,134 358,55 274,55C188,55 128,135 128,241C128,332 173,428 276,428z"/>
+<glyph unicode="p" horiz-adv-x="569" d="M73,-198l87,0l0,263l2,0C191,17 247,-11 311,-11C425,-11 532,75 532,249C532,395 444,494 326,494C247,494 189,460 154,401l-2,0l-5,83l-78,0C71,438 73,388 73,326M160,281C160,292 163,305 166,316C182,382 239,424 299,424C392,424 443,341 443,245C443,134 389,58 296,58C233,58 180,100 164,161C161,172 160,184 160,197z"/>
+<glyph unicode="(" horiz-adv-x="284" d="M195,694C132,610 65,481 64,285C64,90 132,-38 195,-121l68,0C193,-21 138,106 138,284C138,466 190,595 263,694z"/>
+<glyph unicode=")" horiz-adv-x="284" d="M88,-121C151,-37 218,91 219,287C219,483 151,612 88,694l-68,0C91,594 145,467 145,287C145,107 90,-22 20,-121z"/>
+<glyph unicode="." horiz-adv-x="207" d="M110,-11C147,-11 171,16 171,52C171,89 147,115 112,115C77,115 52,88 52,52C52,16 76,-11 110,-11z"/>
+<glyph unicode="?" horiz-adv-x="406" d="M220,192l-2,25C215,268 231,313 275,365C323,422 361,471 361,539C361,615 309,686 194,686C141,686 85,670 51,646l24,-63C100,602 140,614 176,614C239,613 271,579 271,528C271,483 246,444 201,391C151,331 133,271 139,218l2,-26M178,-11C215,-11 238,16 238,51C238,88 215,114 179,114C145,114 120,88 120,51C120,16 144,-11 178,-11z"/>
+<glyph unicode="r" horiz-adv-x="327" d="M73,0l88,0l0,258C161,272 162,287 164,299C176,365 220,411 282,411C294,411 303,411 312,409l0,83C304,493 297,494 288,494C229,494 175,453 153,388l-3,0l-4,96l-77,0C72,439 73,390 73,333z"/>
+<glyph unicode="s" horiz-adv-x="396" d="M40,23C74,3 123,-11 176,-11C289,-11 356,49 356,135C356,207 312,249 229,280C166,305 138,323 138,363C138,399 166,429 218,429C263,429 298,412 317,400l21,64C312,481 269,494 220,494C117,494 53,430 53,352C53,294 94,247 182,215C246,191 271,169 271,127C271,86 241,55 178,55C134,55 88,73 61,89z"/>
+<glyph unicode="/" horiz-adv-x="343" d="M66,-39l280,725l-69,0l-278,-725z"/>
+<glyph unicode=" " horiz-adv-x="212"/>
+<glyph unicode="t" horiz-adv-x="331" d="M93,574l0,-90l-75,0l0,-67l75,0l0,-264C93,96 103,53 127,26C148,3 181,-11 222,-11C256,-11 283,-5 300,1l-4,67C283,64 269,62 245,62C196,62 179,96 179,156l0,261l126,0l0,67l-126,0l0,116z"/>
+<glyph unicode="2" horiz-adv-x="513" d="M460,0l0,73l-291,0l0,2l51,48C357,255 444,352 444,472C444,565 385,661 245,661C171,661 106,632 62,595l28,-62C120,558 169,588 228,588C325,588 356,527 356,461C356,363 280,279 114,121l-69,-67l0,-54z"/>
+<glyph unicode="u" horiz-adv-x="551" d="M478,484l-88,0l0,-296C390,171 387,155 382,143C366,103 325,62 266,62C187,62 158,125 158,217l0,267l-88,0l0,-283C70,32 161,-11 237,-11C323,-11 375,40 397,79l2,0l5,-79l78,0C479,38 478,82 478,133z"/>
+<glyph unicode="v" horiz-adv-x="481" d="M13,484l184,-484l84,0l190,484l-92,0l-94,-271C269,168 255,128 244,88l-3,0C231,128 218,168 202,213l-95,271z"/>
+<glyph unicode="x" horiz-adv-x="463" d="M16,484l164,-237l-172,-247l97,0l70,109C194,138 210,164 226,193l2,0C245,164 261,137 280,109l72,-109l99,0l-169,250l165,234l-96,0l-67,-103C267,355 251,330 235,302l-2,0C217,329 202,353 183,380l-69,104z"/>
+<glyph unicode="y" horiz-adv-x="471" d="M9,484l178,-446C192,27 194,20 194,15C194,10 191,3 187,-6C166,-51 137,-85 113,-104C87,-126 58,-140 36,-147l22,-73C80,-216 122,-201 166,-164C226,-111 269,-27 332,139l132,345l-93,0l-96,-284C263,165 253,128 244,99l-2,0C234,128 222,166 210,198l-105,286z"/>
+<glyph unicode="z" horiz-adv-x="428" d="M18,0l392,0l0,70l-282,0l0,2C150,96 169,121 190,148l216,281l0,55l-368,0l0,-70l262,0l0,-2C278,386 258,363 236,336l-218,-285z"/>
+</font>
+
+ <g>
+ <rect y="1.152" fill="#AAAAAA" stroke="#000000" width="256" height="36.887"/>
+ <text transform="matrix(1 0 0 1 27.7441 23.7046)" font-family="'MyriadPro-Regular'" font-size="14">Enter protected mode</text>
+</g>
+<g>
+ <rect y="45.642" fill="#AAAAAA" stroke="#000000" width="256" height="43.62"/>
+ <text transform="matrix(1 0 0 1 27.7441 71.5605)" font-family="'MyriadPro-Regular'" font-size="14">non-coherent HT enumeration</text>
+</g>
+<g>
+ <rect y="98.359" fill="#AAAAAA" stroke="#000000" width="256" height="60.15"/>
+ <text transform="matrix(1 0 0 1 27.7441 132.5435)" font-family="'MyriadPro-Regular'" font-size="14">coherent HT initialization</text>
+</g>
+<g>
+ <rect y="165.983" fill="#AAAAAA" stroke="#000000" width="256" height="68.421"/>
+ <text transform="matrix(1 0 0 1 27.7441 204.3022)" font-family="'MyriadPro-Regular'" font-size="14">Fallback / Normal?</text>
+</g>
+<g>
+ <rect y="243.893" fill="#AAAAAA" stroke="#000000" width="256" height="69.173"/>
+ <text transform="matrix(1 0 0 1 27.7441 282.5879)" font-family="'MyriadPro-Regular'" font-size="14">RAM initialization</text>
+</g>
+<g>
+ <rect y="410.747" fill="#AAAAAA" stroke="#000000" width="256" height="52.632"/>
+ <text transform="matrix(1 0 0 1 27.7441 432.7725)"><tspan x="0" y="0" font-family="'MyriadPro-Regular'" font-size="14">Create external tables (coreboot table,</tspan><tspan x="0" y="16.8" font-family="'MyriadPro-Regular'" font-size="14">ACPI, MP, PIRQ, DMI)</tspan></text>
+</g>
+<g>
+ <rect y="323.526" fill="#AAAAAA" stroke="#000000" width="256" height="77.443"/>
+ <text transform="matrix(1 0 0 1 27.7441 339.3154)"><tspan x="0" y="0" font-family="'MyriadPro-Regular'" font-size="14">Resource Allocation (PCI, PCIe, I2C, SIO, </tspan><tspan x="0" y="16.8" font-family="'MyriadPro-Regular'" font-size="14">CPU, mainboard...)</tspan></text>
+ <rect x="27.744" y="362.248" fill="#BCBCBC" width="228.256" height="38.722"/>
+</g>
+<g>
+ <rect y="473.781" fill="#AAAAAA" stroke="#000000" width="256" height="80.076"/>
+ <text transform="matrix(1 0 0 1 27.7441 497.4658)" font-family="'MyriadPro-Regular'" font-size="14">ELF / Payload Loader</text>
+ <rect x="27.744" y="507.993" fill="#BCBCBC" width="228.256" height="45.864"/>
+</g>
+<g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <polygon fill="#FFFFFF" stroke="#231F20" stroke-width="0.3876" points="113.028,31.246 130.359,46.62 132.854,44.7
+ 132.027,51.206 131.201,57.711 124.701,56.845 118.201,55.98 120.608,54.127 110.178,33.439 "/>
+ </g>
+ <polygon fill="#231F20" points="131.101,57.636 132.228,59.101 133.828,45.178 133.062,44.181 "/>
+ <polygon fill="#231F20" points="131.152,57.643 132.28,59.108 118.41,57.093 117.644,56.096 "/>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+</g>
+<g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <polygon fill="#FFFFFF" stroke="#231F20" stroke-width="0.3876" points="113.028,81.246 130.359,96.62 132.854,94.7
+ 132.027,101.206 131.201,107.711 124.701,106.845 118.201,105.98 120.608,104.127 110.178,83.439 "/>
+ </g>
+ <polygon fill="#231F20" points="131.101,107.636 132.228,109.101 133.828,95.178 133.062,94.181 "/>
+ <polygon fill="#231F20" points="131.152,107.643 132.28,109.108 118.41,107.093 117.644,106.096 "/>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+</g>
+<g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <polygon fill="#FFFFFF" stroke="#231F20" stroke-width="0.3876" points="113.028,151.586 130.359,166.961 132.854,165.041
+ 132.027,171.546 131.201,178.052 124.701,177.186 118.201,176.321 120.608,174.468 110.178,153.78 "/>
+ </g>
+ <polygon fill="#231F20" points="131.101,177.977 132.228,179.442 133.828,165.519 133.062,164.522 "/>
+ <polygon fill="#231F20" points="131.152,177.983 132.28,179.449 118.41,177.434 117.644,176.437 "/>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+</g>
+<g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <polygon fill="#FFFFFF" stroke="#231F20" stroke-width="0.3876" points="113.028,227.013 130.359,242.387 132.854,240.467
+ 132.027,246.973 131.201,253.478 124.701,252.612 118.201,251.747 120.608,249.894 110.178,229.207 "/>
+ </g>
+ <polygon fill="#231F20" points="131.101,253.403 132.228,254.868 133.828,240.945 133.062,239.948 "/>
+ <polygon fill="#231F20" points="131.152,253.41 132.28,254.875 118.41,252.86 117.644,251.863 "/>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+</g>
+<g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <polygon fill="#FFFFFF" stroke="#231F20" stroke-width="0.3876" points="113.028,303.013 130.359,318.388 132.854,316.468
+ 132.027,322.973 131.201,329.479 124.701,328.612 118.201,327.747 120.607,325.895 110.178,305.207 "/>
+ </g>
+ <polygon fill="#231F20" points="131.101,329.404 132.228,330.868 133.829,316.945 133.062,315.948 "/>
+ <polygon fill="#231F20" points="131.152,329.41 132.28,330.876 118.41,328.86 117.643,327.864 "/>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+</g>
+<g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <polygon fill="#FFFFFF" stroke="#231F20" stroke-width="0.3876" points="113.028,395.872 130.359,411.247 132.854,409.327
+ 132.027,415.833 131.201,422.338 124.701,421.473 118.201,420.606 120.608,418.754 110.178,398.066 "/>
+ </g>
+ <polygon fill="#231F20" points="131.101,422.264 132.228,423.728 133.828,409.805 133.062,408.808 "/>
+ <polygon fill="#231F20" points="131.152,422.27 132.28,423.735 118.41,421.72 117.644,420.724 "/>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+</g>
+<g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <polygon fill="#FFFFFF" stroke="#231F20" stroke-width="0.3876" points="113.028,452.152 130.359,467.528 132.854,465.608
+ 132.027,472.113 131.201,478.619 124.701,477.753 118.201,476.888 120.607,475.035 110.178,454.347 "/>
+ </g>
+ <polygon fill="#231F20" points="131.101,478.545 132.228,480.009 133.829,466.085 133.062,465.089 "/>
+ <polygon fill="#231F20" points="131.152,478.551 132.28,480.017 118.41,478.001 117.643,477.004 "/>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+</g>
+<text transform="matrix(1 0 0 1 59.3232 385.7627)" font-family="'MyriadPro-Regular'" font-size="14">Drivers</text>
+<text transform="matrix(1 0 0 1 55.564 535.3789)" font-family="'MyriadPro-Regular'" font-size="14">Linux, FILO, SeaBIOS, ...</text>
+</svg>
diff --git a/documentation/hypertransport.eps b/documentation/hypertransport.eps deleted file mode 100644 index 3e34482989..0000000000 --- a/documentation/hypertransport.eps +++ /dev/null @@ -1,527 +0,0 @@ -%!PS-Adobe-3.0 EPSF-3.0 -%%BoundingBox: 0 0 174 228 -%%Pages: 0 -%%Creator: Sun Microsystems, Inc. -%%Title: none -%%CreationDate: none -%%LanguageLevel: 2 -%%EndComments -%%BeginProlog -%%BeginResource: SDRes -/b4_inc_state save def -/dict_count countdictstack def -/op_count count 1 sub def -userdict begin -0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit[] 0 setdash newpath -/languagelevel where {pop languagelevel 1 ne {false setstrokeadjust false setoverprint} if} if -/bdef {bind def} bind def -/c {setrgbcolor} bdef -/l {neg lineto} bdef -/rl {neg rlineto} bdef -/lc {setlinecap} bdef -/lj {setlinejoin} bdef -/lw {setlinewidth} bdef -/ml {setmiterlimit} bdef -/ld {setdash} bdef -/m {neg moveto} bdef -/ct {6 2 roll neg 6 2 roll neg 6 2 roll neg curveto} bdef -/r {rotate} bdef -/t {neg translate} bdef -/s {scale} bdef -/sw {show} bdef -/gs {gsave} bdef -/gr {grestore} bdef -/f {findfont dup length dict begin -{1 index /FID ne {def} {pop pop} ifelse} forall /Encoding ISOLatin1Encoding def -currentdict end /NFont exch definefont pop /NFont findfont} bdef -/p {closepath} bdef -/sf {scalefont setfont} bdef -/ef {eofill}bdef -/pc {closepath stroke}bdef -/ps {stroke}bdef -/pum {matrix currentmatrix}bdef -/pom {setmatrix}bdef -/bs {/aString exch def /nXOfs exch def /nWidth exch def currentpoint nXOfs 0 rmoveto pum nWidth aString stringwidth pop div 1 scale aString show pom moveto} bdef -%%EndResource -%%EndProlog -%%BeginSetup -%%EndSetup -%%Page: 1 1 -%%BeginPageSetup -%%EndPageSetup -pum -0.02838 0.02838 s -0 -8033 t -/tm matrix currentmatrix def -tm setmatrix --2275 -2118 t -1 1 s -0.753 0.753 0.753 c 3288 7132 m 2275 7132 l 2275 5104 l 4301 5104 l -4301 7132 l 3288 7132 l p ef -0 lw 1 lj 0.003 0.003 0.003 c 3288 7132 m 2275 7132 l 2275 5104 l 4301 5104 l -4301 7132 l 3288 7132 l pc -gs -pum -2645 6299 t -327 -238 m 323 -357 l 312 -357 l 308 -346 300 -340 289 -340 ct 285 -340 277 -341 269 -344 ct -243 -353 216 -357 192 -357 ct 148 -357 104 -341 71 -312 ct 34 -279 14 -230 14 -171 ct -14 -122 30 -77 57 -47 ct 89 -12 138 7 190 7 ct 250 7 302 -16 334 -59 ct 325 -69 l -286 -31 251 -15 207 -15 ct 174 -15 144 -26 121 -46 ct 92 -72 76 -120 76 -178 ct -76 -274 125 -336 202 -336 ct 232 -336 259 -325 280 -304 ct 297 -287 305 -272 315 -238 ct -p ef -450 -153 m 464 -152 473 -152 487 -152 ct 528 -152 557 -157 579 -170 ct 611 -187 630 -219 630 -254 ct -630 -276 623 -296 609 -312 ct 587 -335 541 -350 492 -350 ct 352 -350 l 352 -340 l -391 -335 396 -330 396 -292 ct 396 -63 l 396 -19 392 -13 352 -10 ct 352 0 l -500 0 l 500 -10 l 458 -11 450 -19 450 -57 ct p -450 -312 m 450 -326 454 -330 468 -330 ct 540 -330 573 -305 573 -251 ct 573 -199 541 -173 481 -173 ct -470 -173 463 -174 450 -175 ct p ef -958 -272 m 958 -326 964 -334 1007 -340 ct 1007 -350 l 885 -350 l 885 -340 l -926 -336 934 -325 934 -272 ct 934 -129 l 934 -93 931 -73 922 -57 ct 908 -32 874 -15 834 -15 ct -797 -15 771 -28 757 -53 ct 747 -70 743 -89 743 -123 ct 743 -292 l 743 -330 749 -336 792 -340 ct -792 -350 l 642 -350 l 642 -340 l 684 -336 690 -331 690 -292 ct 690 -127 l -690 -35 732 7 822 7 ct 880 7 920 -11 940 -47 ct 953 -69 958 -93 958 -134 ct p ef -1139 -357 m 1110 -357 1088 -348 1068 -330 ct 1037 -300 1017 -239 1017 -177 ct -1017 -120 1035 -58 1060 -28 ct 1079 -5 1106 7 1137 7 ct 1164 7 1186 -1 1206 -20 ct -1236 -49 1256 -110 1256 -174 ct 1256 -283 l 1208 -357 l p -1137 -343 m 1182 -343 1206 -284 1206 -173 ct 1206 -62 1182 -6 1137 -6 ct 1091 -6 1068 -62 1068 -172 ct -1068 -285 l 1092 -343 l p ef -pom -gr -0.753 0.753 0.753 c 7182 7132 m 6169 7132 l 6169 5104 l 8195 5104 l -8195 7132 l 7182 7132 l p ef -0.003 0.003 0.003 c 7182 7132 m 6169 7132 l 6169 5104 l 8195 5104 l 8195 7132 l -7182 7132 l pc -gs -pum -6535 6299 t -327 -238 m 323 -357 l 312 -357 l 308 -346 300 -340 289 -340 ct 285 -340 277 -341 269 -344 ct -243 -353 216 -357 192 -357 ct 148 -357 104 -341 71 -312 ct 34 -279 14 -230 14 -171 ct -14 -122 30 -77 57 -47 ct 89 -12 138 7 190 7 ct 250 7 302 -16 334 -59 ct 325 -69 l -286 -31 251 -15 207 -15 ct 174 -15 144 -26 121 -46 ct 92 -72 76 -120 76 -178 ct -76 -274 125 -336 202 -336 ct 232 -336 259 -325 280 -304 ct 297 -287 305 -272 315 -238 ct -p ef -450 -153 m 464 -152 473 -152 487 -152 ct 528 -152 557 -157 579 -170 ct 611 -187 630 -219 630 -254 ct -630 -276 623 -296 609 -312 ct 587 -335 541 -350 492 -350 ct 352 -350 l 352 -340 l -391 -335 396 -330 396 -292 ct 396 -63 l 396 -19 392 -13 352 -10 ct 352 0 l -500 0 l 500 -10 l 458 -11 450 -19 450 -57 ct p -450 -312 m 450 -326 454 -330 468 -330 ct 540 -330 573 -305 573 -251 ct 573 -199 541 -173 481 -173 ct -470 -173 463 -174 450 -175 ct p ef -958 -272 m 958 -326 964 -334 1007 -340 ct 1007 -350 l 885 -350 l 885 -340 l -926 -336 934 -325 934 -272 ct 934 -129 l 934 -93 931 -73 922 -57 ct 908 -32 874 -15 834 -15 ct -797 -15 771 -28 757 -53 ct 747 -70 743 -89 743 -123 ct 743 -292 l 743 -330 749 -336 792 -340 ct -792 -350 l 642 -350 l 642 -340 l 684 -336 690 -331 690 -292 ct 690 -127 l -690 -35 732 7 822 7 ct 880 7 920 -11 940 -47 ct 953 -69 958 -93 958 -134 ct p ef -1158 -357 m 1063 -309 l 1063 -302 l 1070 -304 1075 -306 1078 -307 ct 1087 -311 1096 -313 1101 -313 ct -1112 -313 1117 -305 1117 -288 ct 1117 -49 l 1117 -31 1113 -19 1104 -14 ct 1097 -10 1089 -8 1067 -7 ct -1067 0 l 1213 0 l 1213 -7 l 1171 -8 1163 -13 1163 -39 ct 1163 -356 l p ef -pom -gr -0.753 0.753 0.753 c 3288 4146 m 2275 4146 l 2275 2118 l 4301 2118 l -4301 4146 l 3288 4146 l p ef -0.003 0.003 0.003 c 3288 4146 m 2275 4146 l 2275 2118 l 4301 2118 l 4301 4146 l -3288 4146 l pc -gs -pum -2645 3309 t -327 -238 m 323 -357 l 312 -357 l 308 -346 300 -340 289 -340 ct 285 -340 277 -341 269 -344 ct -243 -353 216 -357 192 -357 ct 148 -357 104 -341 71 -312 ct 34 -279 14 -230 14 -171 ct -14 -122 30 -77 57 -47 ct 89 -12 138 7 190 7 ct 250 7 302 -16 334 -59 ct 325 -69 l -286 -31 251 -15 207 -15 ct 174 -15 144 -26 121 -46 ct 92 -72 76 -120 76 -178 ct -76 -274 125 -336 202 -336 ct 232 -336 259 -325 280 -304 ct 297 -287 305 -272 315 -238 ct -p ef -450 -153 m 464 -152 473 -152 487 -152 ct 528 -152 557 -157 579 -170 ct 611 -187 630 -219 630 -254 ct -630 -276 623 -296 609 -312 ct 587 -335 541 -350 492 -350 ct 352 -350 l 352 -340 l -391 -335 396 -330 396 -292 ct 396 -63 l 396 -19 392 -13 352 -10 ct 352 0 l -500 0 l 500 -10 l 458 -11 450 -19 450 -57 ct p -450 -312 m 450 -326 454 -330 468 -330 ct 540 -330 573 -305 573 -251 ct 573 -199 541 -173 481 -173 ct -470 -173 463 -174 450 -175 ct p ef -958 -272 m 958 -326 964 -334 1007 -340 ct 1007 -350 l 885 -350 l 885 -340 l -926 -336 934 -325 934 -272 ct 934 -129 l 934 -93 931 -73 922 -57 ct 908 -32 874 -15 834 -15 ct -797 -15 771 -28 757 -53 ct 747 -70 743 -89 743 -123 ct 743 -292 l 743 -330 749 -336 792 -340 ct -792 -350 l 642 -350 l 642 -340 l 684 -336 690 -331 690 -292 ct 690 -127 l -690 -35 732 7 822 7 ct 880 7 920 -11 940 -47 ct 953 -69 958 -93 958 -134 ct p ef -1256 -72 m 1249 -75 l 1229 -44 1222 -40 1199 -40 ct 1072 -40 l 1161 -133 l -1208 -182 1229 -222 1229 -263 ct 1229 -316 1186 -357 1131 -357 ct 1102 -357 1074 -345 1055 -324 ct -1038 -306 1030 -289 1021 -252 ct 1032 -249 l 1053 -301 1072 -318 1109 -318 ct -1153 -318 1183 -288 1183 -243 ct 1183 -202 1159 -153 1115 -106 ct 1020 -6 l -1020 0 l 1227 0 l p ef -pom -gr -0.753 0.753 0.753 c 7182 4146 m 6169 4146 l 6169 2118 l 8195 2118 l -8195 4146 l 7182 4146 l p ef -0.003 0.003 0.003 c 7182 4146 m 6169 4146 l 6169 2118 l 8195 2118 l 8195 4146 l -7182 4146 l pc -gs -pum -6535 3309 t -327 -238 m 323 -357 l 312 -357 l 308 -346 300 -340 289 -340 ct 285 -340 277 -341 269 -344 ct -243 -353 216 -357 192 -357 ct 148 -357 104 -341 71 -312 ct 34 -279 14 -230 14 -171 ct -14 -122 30 -77 57 -47 ct 89 -12 138 7 190 7 ct 250 7 302 -16 334 -59 ct 325 -69 l -286 -31 251 -15 207 -15 ct 174 -15 144 -26 121 -46 ct 92 -72 76 -120 76 -178 ct -76 -274 125 -336 202 -336 ct 232 -336 259 -325 280 -304 ct 297 -287 305 -272 315 -238 ct -p ef -450 -153 m 464 -152 473 -152 487 -152 ct 528 -152 557 -157 579 -170 ct 611 -187 630 -219 630 -254 ct -630 -276 623 -296 609 -312 ct 587 -335 541 -350 492 -350 ct 352 -350 l 352 -340 l -391 -335 396 -330 396 -292 ct 396 -63 l 396 -19 392 -13 352 -10 ct 352 0 l -500 0 l 500 -10 l 458 -11 450 -19 450 -57 ct p -450 -312 m 450 -326 454 -330 468 -330 ct 540 -330 573 -305 573 -251 ct 573 -199 541 -173 481 -173 ct -470 -173 463 -174 450 -175 ct p ef -958 -272 m 958 -326 964 -334 1007 -340 ct 1007 -350 l 885 -350 l 885 -340 l -926 -336 934 -325 934 -272 ct 934 -129 l 934 -93 931 -73 922 -57 ct 908 -32 874 -15 834 -15 ct -797 -15 771 -28 757 -53 ct 747 -70 743 -89 743 -123 ct 743 -292 l 743 -330 749 -336 792 -340 ct -792 -350 l 642 -350 l 642 -340 l 684 -336 690 -331 690 -292 ct 690 -127 l -690 -35 732 7 822 7 ct 880 7 920 -11 940 -47 ct 953 -69 958 -93 958 -134 ct p ef -1085 -174 m 1117 -174 1129 -173 1142 -168 ct 1174 -157 1195 -126 1195 -90 ct -1195 -46 1165 -11 1126 -11 ct 1111 -11 1101 -15 1081 -28 ct 1065 -37 1056 -41 1047 -41 ct -1035 -41 1027 -33 1027 -22 ct 1027 -4 1050 7 1087 7 ct 1128 7 1170 -6 1194 -28 ct -1219 -49 1233 -80 1233 -115 ct 1233 -142 1225 -167 1209 -184 ct 1199 -195 1189 -202 1165 -212 ct -1202 -236 1215 -256 1215 -285 ct 1215 -327 1181 -357 1133 -357 ct 1106 -357 1083 -348 1064 -331 ct -1048 -317 1040 -303 1028 -271 ct 1036 -269 l 1058 -308 1082 -325 1115 -325 ct -1149 -325 1173 -302 1173 -269 ct 1173 -250 1165 -231 1152 -217 ct 1136 -202 1121 -194 1085 -181 ct -p ef -pom -gr -0.753 0.753 0.753 c 7182 10118 m 6169 10118 l 6169 8090 l 8195 8090 l -8195 10118 l 7182 10118 l p ef -0.003 0.003 0.003 c 7182 10118 m 6169 10118 l 6169 8090 l 8195 8090 l 8195 10118 l -7182 10118 l pc -gs -pum -6852 8945 t -236 -357 m 225 -357 l 223 -345 217 -339 208 -339 ct 203 -339 194 -341 185 -345 ct -165 -353 146 -357 129 -357 ct 106 -357 83 -348 65 -333 ct 47 -316 37 -294 37 -267 ct -37 -224 60 -195 120 -163 ct 158 -143 185 -122 198 -102 ct 203 -95 206 -84 206 -71 ct -206 -35 179 -11 141 -11 ct 94 -11 60 -40 34 -105 ct 22 -105 l 38 6 l 49 6 l -50 -3 56 -10 64 -10 ct 70 -10 79 -8 89 -4 ct 109 3 130 7 151 7 ct 212 7 259 -34 259 -88 ct -259 -132 230 -166 160 -204 ct 105 -234 83 -258 83 -286 ct 83 -315 105 -335 138 -335 ct -161 -335 184 -325 202 -306 ct 219 -289 226 -276 234 -244 ct 248 -244 l p ef -300 -350 m 300 -340 l 344 -337 350 -331 350 -292 ct 350 -57 l 350 -18 343 -11 300 -10 ct -300 0 l 476 0 l 517 0 555 -11 575 -29 ct 594 -46 604 -69 604 -95 ct 604 -118 595 -139 578 -155 ct -562 -169 548 -175 514 -184 ct 541 -190 552 -196 565 -207 ct 578 -219 586 -238 586 -260 ct -586 -319 539 -350 448 -350 ct p -404 -172 m 456 -172 480 -169 499 -161 ct 529 -149 543 -128 543 -94 ct 543 -66 532 -45 511 -33 ct -494 -23 472 -19 438 -19 ct 412 -19 404 -24 404 -41 ct p -404 -193 m 404 -314 l 404 -325 408 -330 416 -330 ct 439 -330 l 500 -330 532 -305 532 -258 ct -532 -216 504 -193 454 -193 ct p ef -pom -pum -6455 9607 t -156 -357 m 116 -332 101 -318 81 -294 ct 43 -248 25 -195 25 -133 ct 25 -66 44 -14 91 39 ct -113 65 126 76 154 93 ct 160 85 l 118 51 103 33 89 -6 ct 76 -41 70 -82 70 -134 ct -70 -190 77 -233 92 -266 ct 106 -299 122 -318 160 -349 ct p ef -338 -196 m 390 -224 409 -246 409 -282 ct 409 -325 371 -357 318 -357 ct 260 -357 217 -322 217 -274 ct -217 -239 227 -224 283 -175 ct 226 -132 214 -115 214 -79 ct 214 -28 256 7 316 7 ct -379 7 420 -27 420 -82 ct 420 -122 l 402 -148 l p -328 -141 m 367 -114 380 -95 380 -65 ct 380 -31 356 -7 322 -7 ct 281 -7 254 -38 254 -84 ct -254 -117 266 -140 297 -165 ct p -323 -205 m 275 -236 256 -260 256 -290 ct 256 -321 280 -342 314 -342 ct 350 -342 372 -319 372 -283 ct -372 -252 357 -229 327 -208 ct 325 -207 l 325 -207 l p ef -603 -357 m 508 -309 l 508 -302 l 515 -304 520 -306 523 -307 ct 532 -311 541 -313 546 -313 ct -557 -313 562 -305 562 -288 ct 562 -49 l 562 -31 558 -19 549 -14 ct 542 -10 534 -8 512 -7 ct -512 0 l 658 0 l 658 -7 l 616 -8 608 -13 608 -39 ct 608 -356 l p ef -867 -357 m 772 -309 l 772 -302 l 779 -304 784 -306 787 -307 ct 796 -311 805 -313 810 -313 ct -821 -313 826 -305 826 -288 ct 826 -49 l 826 -31 822 -19 813 -14 ct 806 -10 798 -8 776 -7 ct -776 0 l 922 0 l 922 -7 l 880 -8 872 -13 872 -39 ct 872 -356 l p ef -1132 -357 m 1037 -309 l 1037 -302 l 1044 -304 1049 -306 1052 -307 ct 1061 -311 1070 -313 1075 -313 ct -1086 -313 1091 -305 1091 -288 ct 1091 -49 l 1091 -31 1087 -19 1078 -14 ct 1071 -10 1063 -8 1041 -7 ct -1041 0 l 1187 0 l 1187 -7 l 1145 -8 1137 -13 1137 -39 ct 1137 -356 l p ef -1264 93 m 1303 68 1319 54 1338 30 ct 1376 -15 1394 -68 1394 -130 ct 1394 -198 1375 -249 1328 -303 ct -1306 -329 1293 -340 1265 -357 ct 1259 -349 l 1301 -315 1315 -297 1330 -257 ct -1343 -222 1349 -181 1349 -129 ct 1349 -74 1342 -30 1328 2 ct 1313 35 1297 54 1259 85 ct -p ef -pom -gr -0.753 0.753 0.753 c 3288 10118 m 2275 10118 l 2275 8090 l 4301 8090 l -4301 10118 l 3288 10118 l p ef -0.003 0.003 0.003 c 3288 10118 m 2275 10118 l 2275 8090 l 4301 8090 l 4301 10118 l -3288 10118 l pc -gs -pum -2593 8945 t -106 -153 m 120 -152 129 -152 143 -152 ct 184 -152 213 -157 235 -170 ct 267 -187 286 -219 286 -254 ct -286 -276 279 -296 265 -312 ct 243 -335 197 -350 148 -350 ct 8 -350 l 8 -340 l -47 -335 52 -330 52 -292 ct 52 -63 l 52 -19 48 -13 8 -10 ct 8 0 l 156 0 l 156 -10 l -114 -11 106 -19 106 -57 ct p -106 -312 m 106 -326 110 -330 124 -330 ct 196 -330 229 -305 229 -251 ct 229 -199 197 -173 137 -173 ct -126 -173 119 -174 106 -175 ct p ef -618 -238 m 614 -357 l 603 -357 l 599 -346 591 -340 580 -340 ct 576 -340 568 -341 560 -344 ct -534 -353 507 -357 483 -357 ct 439 -357 395 -341 362 -312 ct 325 -279 305 -230 305 -171 ct -305 -122 321 -77 348 -47 ct 380 -12 429 7 481 7 ct 541 7 593 -16 625 -59 ct 616 -69 l -577 -31 542 -15 498 -15 ct 465 -15 435 -26 412 -46 ct 383 -72 367 -120 367 -178 ct -367 -274 416 -336 493 -336 ct 523 -336 550 -325 571 -304 ct 588 -287 596 -272 606 -238 ct -p ef -695 -57 m 695 -17 688 -11 644 -10 ct 644 0 l 801 0 l 801 -10 l 758 -11 749 -19 749 -57 ct -749 -292 l 749 -331 757 -338 801 -340 ct 801 -350 l 644 -350 l 644 -340 l -689 -337 695 -331 695 -292 ct p ef -840 -135 m 840 -102 l 970 -102 l 970 -135 l p ef -1373 -350 m 1247 -350 l 1247 -340 l 1275 -339 1284 -335 1284 -323 ct 1284 -315 1278 -305 1263 -286 ct -1203 -213 l 1181 -244 l 1148 -289 1136 -312 1136 -324 ct 1136 -334 1144 -339 1161 -339 ct -1176 -340 l 1176 -350 l 1016 -350 l 1016 -340 l 1051 -338 1060 -330 1112 -257 ct -1170 -172 l 1087 -70 l 1039 -14 1037 -12 1010 -10 ct 1010 0 l 1133 0 l -1133 -10 l 1102 -12 1093 -16 1093 -28 ct 1093 -36 1101 -49 1120 -74 ct 1183 -152 l -1234 -78 l 1251 -52 1261 -34 1261 -26 ct 1261 -16 1252 -11 1234 -11 ct 1232 -11 1226 -10 1220 -10 ct -1220 0 l 1377 0 l 1377 -10 l 1349 -13 1341 -18 1318 -49 ct 1217 -194 l -1294 -290 l 1328 -331 1339 -338 1373 -340 ct p ef -pom -pum -2566 9607 t -156 -357 m 116 -332 101 -318 81 -294 ct 43 -248 25 -195 25 -133 ct 25 -66 44 -14 91 39 ct -113 65 126 76 154 93 ct 160 85 l 118 51 103 33 89 -6 ct 76 -41 70 -82 70 -134 ct -70 -190 77 -233 92 -266 ct 106 -299 122 -318 160 -349 ct p ef -338 -196 m 390 -224 409 -246 409 -282 ct 409 -325 371 -357 318 -357 ct 260 -357 217 -322 217 -274 ct -217 -239 227 -224 283 -175 ct 226 -132 214 -115 214 -79 ct 214 -28 256 7 316 7 ct -379 7 420 -27 420 -82 ct 420 -122 l 402 -148 l p -328 -141 m 367 -114 380 -95 380 -65 ct 380 -31 356 -7 322 -7 ct 281 -7 254 -38 254 -84 ct -254 -117 266 -140 297 -165 ct p -323 -205 m 275 -236 256 -260 256 -290 ct 256 -321 280 -342 314 -342 ct 350 -342 372 -319 372 -283 ct -372 -252 357 -229 327 -208 ct 325 -207 l 325 -207 l p ef -603 -357 m 508 -309 l 508 -302 l 515 -304 520 -306 523 -307 ct 532 -311 541 -313 546 -313 ct -557 -313 562 -305 562 -288 ct 562 -49 l 562 -31 558 -19 549 -14 ct 542 -10 534 -8 512 -7 ct -512 0 l 658 0 l 658 -7 l 616 -8 608 -13 608 -39 ct 608 -356 l p ef -794 -174 m 826 -174 838 -173 851 -168 ct 883 -157 904 -126 904 -90 ct 904 -46 874 -11 835 -11 ct -820 -11 810 -15 790 -28 ct 774 -37 765 -41 756 -41 ct 744 -41 736 -33 736 -22 ct -736 -4 759 7 796 7 ct 837 7 879 -6 903 -28 ct 928 -49 942 -80 942 -115 ct 942 -142 934 -167 918 -184 ct -908 -195 898 -202 874 -212 ct 911 -236 924 -256 924 -285 ct 924 -327 890 -357 842 -357 ct -815 -357 792 -348 773 -331 ct 757 -317 749 -303 737 -271 ct 745 -269 l 767 -308 791 -325 824 -325 ct -858 -325 882 -302 882 -269 ct 882 -250 874 -231 861 -217 ct 845 -202 830 -194 794 -181 ct -p ef -1132 -357 m 1037 -309 l 1037 -302 l 1044 -304 1049 -306 1052 -307 ct 1061 -311 1070 -313 1075 -313 ct -1086 -313 1091 -305 1091 -288 ct 1091 -49 l 1091 -31 1087 -19 1078 -14 ct 1071 -10 1063 -8 1041 -7 ct -1041 0 l 1187 0 l 1187 -7 l 1145 -8 1137 -13 1137 -39 ct 1137 -356 l p ef -1264 93 m 1303 68 1319 54 1338 30 ct 1376 -15 1394 -68 1394 -130 ct 1394 -198 1375 -249 1328 -303 ct -1306 -329 1293 -340 1265 -357 ct 1259 -349 l 1301 -315 1315 -297 1330 -257 ct -1343 -222 1349 -181 1349 -129 ct 1349 -74 1342 -30 1328 2 ct 1313 35 1297 54 1259 85 ct -p ef -pom -gr -3288 7132 m 3288 8090 l ps -4301 9104 m 6169 9104 l ps -4301 6118 m 6169 6118 l ps -3288 5104 m 3288 4146 l ps -7182 5104 m 7182 4146 l ps -6169 3132 m 4301 3132 l ps -gs -pum -3360 7489 t -161 -49 m 156 -38 152 -31 148 -27 ct 138 -16 123 -11 99 -11 ct 80 -11 l 60 -11 56 -12 56 -22 ct -56 -155 l 56 -175 60 -179 82 -181 ct 82 -186 l 3 -186 l 3 -181 l 24 -179 27 -175 27 -155 ct -27 -30 l 27 -11 23 -6 3 -5 ct 3 0 l 155 0 l 168 -49 l p ef -214 -30 m 214 -10 210 -6 189 -5 ct 189 0 l 269 0 l 302 0 331 -9 349 -25 ct -367 -41 378 -66 378 -94 ct 378 -119 369 -141 354 -157 ct 335 -176 304 -186 265 -186 ct -189 -186 l 189 -181 l 211 -179 214 -176 214 -155 ct p -243 -165 m 243 -174 246 -176 257 -176 ct 282 -176 300 -171 313 -162 ct 335 -146 347 -122 347 -92 ct -347 -58 335 -35 313 -22 ct 298 -13 282 -10 257 -10 ct 246 -10 243 -12 243 -22 ct -p ef -468 -174 m 468 -33 l 468 -9 465 -6 442 -5 ct 442 0 l 524 0 l 524 -5 l -501 -6 497 -10 497 -30 ct 497 -174 l 512 -174 l 544 -174 550 -169 557 -138 ct -564 -138 l 562 -186 l 403 -186 l 401 -138 l 408 -138 l 415 -169 421 -174 453 -174 ct -p ef -653 -190 m 638 -190 626 -185 615 -175 ct 599 -160 588 -127 588 -94 ct 588 -64 598 -31 611 -15 ct -621 -2 636 3 652 3 ct 666 3 679 0 689 -10 ct 705 -26 716 -58 716 -93 ct 716 -150 l -690 -190 l p -652 -183 m 676 -183 689 -151 689 -92 ct 689 -33 676 -3 652 -3 ct 628 -3 615 -33 615 -92 ct -615 -152 l 628 -183 l p ef -pom -gr -gs -pum -5424 6484 t -161 -49 m 156 -38 152 -31 148 -27 ct 138 -16 123 -11 99 -11 ct 80 -11 l 60 -11 56 -12 56 -22 ct -56 -155 l 56 -175 60 -179 82 -181 ct 82 -186 l 3 -186 l 3 -181 l 24 -179 27 -175 27 -155 ct -27 -30 l 27 -11 23 -6 3 -5 ct 3 0 l 155 0 l 168 -49 l p ef -214 -30 m 214 -10 210 -6 189 -5 ct 189 0 l 269 0 l 302 0 331 -9 349 -25 ct -367 -41 378 -66 378 -94 ct 378 -119 369 -141 354 -157 ct 335 -176 304 -186 265 -186 ct -189 -186 l 189 -181 l 211 -179 214 -176 214 -155 ct p -243 -165 m 243 -174 246 -176 257 -176 ct 282 -176 300 -171 313 -162 ct 335 -146 347 -122 347 -92 ct -347 -58 335 -35 313 -22 ct 298 -13 282 -10 257 -10 ct 246 -10 243 -12 243 -22 ct -p ef -468 -174 m 468 -33 l 468 -9 465 -6 442 -5 ct 442 0 l 524 0 l 524 -5 l -501 -6 497 -10 497 -30 ct 497 -174 l 512 -174 l 544 -174 550 -169 557 -138 ct -564 -138 l 562 -186 l 403 -186 l 401 -138 l 408 -138 l 415 -169 421 -174 453 -174 ct -p ef -653 -190 m 638 -190 626 -185 615 -175 ct 599 -160 588 -127 588 -94 ct 588 -64 598 -31 611 -15 ct -621 -2 636 3 652 3 ct 666 3 679 0 689 -10 ct 705 -26 716 -58 716 -93 ct 716 -150 l -690 -190 l p -652 -183 m 676 -183 689 -151 689 -92 ct 689 -33 676 -3 652 -3 ct 628 -3 615 -33 615 -92 ct -615 -152 l 628 -183 l p ef -pom -gr -gs -pum -7302 4446 t -161 -49 m 156 -38 152 -31 148 -27 ct 138 -16 123 -11 99 -11 ct 80 -11 l 60 -11 56 -12 56 -22 ct -56 -155 l 56 -175 60 -179 82 -181 ct 82 -186 l 3 -186 l 3 -181 l 24 -179 27 -175 27 -155 ct -27 -30 l 27 -11 23 -6 3 -5 ct 3 0 l 155 0 l 168 -49 l p ef -214 -30 m 214 -10 210 -6 189 -5 ct 189 0 l 269 0 l 302 0 331 -9 349 -25 ct -367 -41 378 -66 378 -94 ct 378 -119 369 -141 354 -157 ct 335 -176 304 -186 265 -186 ct -189 -186 l 189 -181 l 211 -179 214 -176 214 -155 ct p -243 -165 m 243 -174 246 -176 257 -176 ct 282 -176 300 -171 313 -162 ct 335 -146 347 -122 347 -92 ct -347 -58 335 -35 313 -22 ct 298 -13 282 -10 257 -10 ct 246 -10 243 -12 243 -22 ct -p ef -468 -174 m 468 -33 l 468 -9 465 -6 442 -5 ct 442 0 l 524 0 l 524 -5 l -501 -6 497 -10 497 -30 ct 497 -174 l 512 -174 l 544 -174 550 -169 557 -138 ct -564 -138 l 562 -186 l 403 -186 l 401 -138 l 408 -138 l 415 -169 421 -174 453 -174 ct -p ef -653 -190 m 638 -190 626 -185 615 -175 ct 599 -160 588 -127 588 -94 ct 588 -64 598 -31 611 -15 ct -621 -2 636 3 652 3 ct 666 3 679 0 689 -10 ct 705 -26 716 -58 716 -93 ct 716 -150 l -690 -190 l p -652 -183 m 676 -183 689 -151 689 -92 ct 689 -33 676 -3 652 -3 ct 628 -3 615 -33 615 -92 ct -615 -152 l 628 -183 l p ef -pom -gr -gs -pum -3413 4473 t -161 -49 m 156 -38 152 -31 148 -27 ct 138 -16 123 -11 99 -11 ct 80 -11 l 60 -11 56 -12 56 -22 ct -56 -155 l 56 -175 60 -179 82 -181 ct 82 -186 l 3 -186 l 3 -181 l 24 -179 27 -175 27 -155 ct -27 -30 l 27 -11 23 -6 3 -5 ct 3 0 l 155 0 l 168 -49 l p ef -214 -30 m 214 -10 210 -6 189 -5 ct 189 0 l 269 0 l 302 0 331 -9 349 -25 ct -367 -41 378 -66 378 -94 ct 378 -119 369 -141 354 -157 ct 335 -176 304 -186 265 -186 ct -189 -186 l 189 -181 l 211 -179 214 -176 214 -155 ct p -243 -165 m 243 -174 246 -176 257 -176 ct 282 -176 300 -171 313 -162 ct 335 -146 347 -122 347 -92 ct -347 -58 335 -35 313 -22 ct 298 -13 282 -10 257 -10 ct 246 -10 243 -12 243 -22 ct -p ef -468 -174 m 468 -33 l 468 -9 465 -6 442 -5 ct 442 0 l 524 0 l 524 -5 l -501 -6 497 -10 497 -30 ct 497 -174 l 512 -174 l 544 -174 550 -169 557 -138 ct -564 -138 l 562 -186 l 403 -186 l 401 -138 l 408 -138 l 415 -169 421 -174 453 -174 ct -p ef -653 -190 m 638 -190 626 -185 615 -175 ct 599 -160 588 -127 588 -94 ct 588 -64 598 -31 611 -15 ct -621 -2 636 3 652 3 ct 666 3 679 0 689 -10 ct 705 -26 716 -58 716 -93 ct 716 -150 l -690 -190 l p -652 -183 m 676 -183 689 -151 689 -92 ct 689 -33 676 -3 652 -3 ct 628 -3 615 -33 615 -92 ct -615 -152 l 628 -183 l p ef -pom -gr -gs -pum -4418 3467 t -161 -49 m 156 -38 152 -31 148 -27 ct 138 -16 123 -11 99 -11 ct 80 -11 l 60 -11 56 -12 56 -22 ct -56 -155 l 56 -175 60 -179 82 -181 ct 82 -186 l 3 -186 l 3 -181 l 24 -179 27 -175 27 -155 ct -27 -30 l 27 -11 23 -6 3 -5 ct 3 0 l 155 0 l 168 -49 l p ef -214 -30 m 214 -10 210 -6 189 -5 ct 189 0 l 269 0 l 302 0 331 -9 349 -25 ct -367 -41 378 -66 378 -94 ct 378 -119 369 -141 354 -157 ct 335 -176 304 -186 265 -186 ct -189 -186 l 189 -181 l 211 -179 214 -176 214 -155 ct p -243 -165 m 243 -174 246 -176 257 -176 ct 282 -176 300 -171 313 -162 ct 335 -146 347 -122 347 -92 ct -347 -58 335 -35 313 -22 ct 298 -13 282 -10 257 -10 ct 246 -10 243 -12 243 -22 ct -p ef -468 -174 m 468 -33 l 468 -9 465 -6 442 -5 ct 442 0 l 524 0 l 524 -5 l -501 -6 497 -10 497 -30 ct 497 -174 l 512 -174 l 544 -174 550 -169 557 -138 ct -564 -138 l 562 -186 l 403 -186 l 401 -138 l 408 -138 l 415 -169 421 -174 453 -174 ct -p ef -664 -190 m 613 -164 l 613 -161 l 616 -162 619 -163 620 -164 ct 625 -166 630 -167 633 -167 ct -639 -167 642 -163 642 -153 ct 642 -26 l 642 -16 639 -10 635 -7 ct 631 -5 627 -4 615 -4 ct -615 0 l 693 0 l 693 -4 l 670 -4 666 -7 666 -20 ct 666 -190 l p ef -pom -gr -gs -pum -2513 5002 t -161 -49 m 156 -38 152 -31 148 -27 ct 138 -16 123 -11 99 -11 ct 80 -11 l 60 -11 56 -12 56 -22 ct -56 -155 l 56 -175 60 -179 82 -181 ct 82 -186 l 3 -186 l 3 -181 l 24 -179 27 -175 27 -155 ct -27 -30 l 27 -11 23 -6 3 -5 ct 3 0 l 155 0 l 168 -49 l p ef -214 -30 m 214 -10 210 -6 189 -5 ct 189 0 l 269 0 l 302 0 331 -9 349 -25 ct -367 -41 378 -66 378 -94 ct 378 -119 369 -141 354 -157 ct 335 -176 304 -186 265 -186 ct -189 -186 l 189 -181 l 211 -179 214 -176 214 -155 ct p -243 -165 m 243 -174 246 -176 257 -176 ct 282 -176 300 -171 313 -162 ct 335 -146 347 -122 347 -92 ct -347 -58 335 -35 313 -22 ct 298 -13 282 -10 257 -10 ct 246 -10 243 -12 243 -22 ct -p ef -468 -174 m 468 -33 l 468 -9 465 -6 442 -5 ct 442 0 l 524 0 l 524 -5 l -501 -6 497 -10 497 -30 ct 497 -174 l 512 -174 l 544 -174 550 -169 557 -138 ct -564 -138 l 562 -186 l 403 -186 l 401 -138 l 408 -138 l 415 -169 421 -174 453 -174 ct -p ef -715 -38 m 712 -40 l 701 -23 698 -21 685 -21 ct 618 -21 l 665 -71 l 690 -97 701 -118 701 -140 ct -701 -168 678 -190 649 -190 ct 633 -190 619 -184 608 -173 ct 599 -163 595 -154 590 -134 ct -596 -133 l 607 -160 618 -169 637 -169 ct 661 -169 677 -153 677 -130 ct 677 -108 664 -81 640 -56 ct -590 -3 l 590 0 l 700 0 l p ef -pom -gr -gs -pum -5397 3044 t -161 -49 m 156 -38 152 -31 148 -27 ct 138 -16 123 -11 99 -11 ct 80 -11 l 60 -11 56 -12 56 -22 ct -56 -155 l 56 -175 60 -179 82 -181 ct 82 -186 l 3 -186 l 3 -181 l 24 -179 27 -175 27 -155 ct -27 -30 l 27 -11 23 -6 3 -5 ct 3 0 l 155 0 l 168 -49 l p ef -214 -30 m 214 -10 210 -6 189 -5 ct 189 0 l 269 0 l 302 0 331 -9 349 -25 ct -367 -41 378 -66 378 -94 ct 378 -119 369 -141 354 -157 ct 335 -176 304 -186 265 -186 ct -189 -186 l 189 -181 l 211 -179 214 -176 214 -155 ct p -243 -165 m 243 -174 246 -176 257 -176 ct 282 -176 300 -171 313 -162 ct 335 -146 347 -122 347 -92 ct -347 -58 335 -35 313 -22 ct 298 -13 282 -10 257 -10 ct 246 -10 243 -12 243 -22 ct -p ef -468 -174 m 468 -33 l 468 -9 465 -6 442 -5 ct 442 0 l 524 0 l 524 -5 l -501 -6 497 -10 497 -30 ct 497 -174 l 512 -174 l 544 -174 550 -169 557 -138 ct -564 -138 l 562 -186 l 403 -186 l 401 -138 l 408 -138 l 415 -169 421 -174 453 -174 ct -p ef -664 -190 m 613 -164 l 613 -161 l 616 -162 619 -163 620 -164 ct 625 -166 630 -167 633 -167 ct -639 -167 642 -163 642 -153 ct 642 -26 l 642 -16 639 -10 635 -7 ct 631 -5 627 -4 615 -4 ct -615 0 l 693 0 l 693 -4 l 670 -4 666 -7 666 -20 ct 666 -190 l p ef -pom -gr -gs -pum -6376 5028 t -161 -49 m 156 -38 152 -31 148 -27 ct 138 -16 123 -11 99 -11 ct 80 -11 l 60 -11 56 -12 56 -22 ct -56 -155 l 56 -175 60 -179 82 -181 ct 82 -186 l 3 -186 l 3 -181 l 24 -179 27 -175 27 -155 ct -27 -30 l 27 -11 23 -6 3 -5 ct 3 0 l 155 0 l 168 -49 l p ef -214 -30 m 214 -10 210 -6 189 -5 ct 189 0 l 269 0 l 302 0 331 -9 349 -25 ct -367 -41 378 -66 378 -94 ct 378 -119 369 -141 354 -157 ct 335 -176 304 -186 265 -186 ct -189 -186 l 189 -181 l 211 -179 214 -176 214 -155 ct p -243 -165 m 243 -174 246 -176 257 -176 ct 282 -176 300 -171 313 -162 ct 335 -146 347 -122 347 -92 ct -347 -58 335 -35 313 -22 ct 298 -13 282 -10 257 -10 ct 246 -10 243 -12 243 -22 ct -p ef -468 -174 m 468 -33 l 468 -9 465 -6 442 -5 ct 442 0 l 524 0 l 524 -5 l -501 -6 497 -10 497 -30 ct 497 -174 l 512 -174 l 544 -174 550 -169 557 -138 ct -564 -138 l 562 -186 l 403 -186 l 401 -138 l 408 -138 l 415 -169 421 -174 453 -174 ct -p ef -664 -190 m 613 -164 l 613 -161 l 616 -162 619 -163 620 -164 ct 625 -166 630 -167 633 -167 ct -639 -167 642 -163 642 -153 ct 642 -26 l 642 -16 639 -10 635 -7 ct 631 -5 627 -4 615 -4 ct -615 0 l 693 0 l 693 -4 l 670 -4 666 -7 666 -20 ct 666 -190 l p ef -pom -gr -gs -pum -4524 6060 t -161 -49 m 156 -38 152 -31 148 -27 ct 138 -16 123 -11 99 -11 ct 80 -11 l 60 -11 56 -12 56 -22 ct -56 -155 l 56 -175 60 -179 82 -181 ct 82 -186 l 3 -186 l 3 -181 l 24 -179 27 -175 27 -155 ct -27 -30 l 27 -11 23 -6 3 -5 ct 3 0 l 155 0 l 168 -49 l p ef -214 -30 m 214 -10 210 -6 189 -5 ct 189 0 l 269 0 l 302 0 331 -9 349 -25 ct -367 -41 378 -66 378 -94 ct 378 -119 369 -141 354 -157 ct 335 -176 304 -186 265 -186 ct -189 -186 l 189 -181 l 211 -179 214 -176 214 -155 ct p -243 -165 m 243 -174 246 -176 257 -176 ct 282 -176 300 -171 313 -162 ct 335 -146 347 -122 347 -92 ct -347 -58 335 -35 313 -22 ct 298 -13 282 -10 257 -10 ct 246 -10 243 -12 243 -22 ct -p ef -468 -174 m 468 -33 l 468 -9 465 -6 442 -5 ct 442 0 l 524 0 l 524 -5 l -501 -6 497 -10 497 -30 ct 497 -174 l 512 -174 l 544 -174 550 -169 557 -138 ct -564 -138 l 562 -186 l 403 -186 l 401 -138 l 408 -138 l 415 -169 421 -174 453 -174 ct -p ef -664 -190 m 613 -164 l 613 -161 l 616 -162 619 -163 620 -164 ct 625 -166 630 -167 633 -167 ct -639 -167 642 -163 642 -153 ct 642 -26 l 642 -16 639 -10 635 -7 ct 631 -5 627 -4 615 -4 ct -615 0 l 693 0 l 693 -4 l 670 -4 666 -7 666 -20 ct 666 -190 l p ef -pom -gr -1.000 0.003 0.003 c 4303 6248 m 4229 6248 4169 6187 4169 6113 ct 4169 6039 4229 5978 4303 5978 ct -4377 5978 4437 6039 4437 6113 ct 4437 6187 4377 6248 4303 6248 ct 4303 6248 l -p ef -0.003 0.003 0.003 c 4303 6248 m 4229 6248 4169 6187 4169 6113 ct 4169 6039 4229 5978 4303 5978 ct -4377 5978 4437 6039 4437 6113 ct 4437 6187 4377 6248 4303 6248 ct 4303 6248 l -pc -1.000 0.003 0.003 c 7216 5229 m 7142 5229 7082 5169 7082 5095 ct 7082 5021 7142 4961 7216 4961 ct -7290 4961 7350 5021 7350 5095 ct 7350 5169 7290 5229 7216 5229 ct 7216 5229 l -p ef -0.003 0.003 0.003 c 7216 5229 m 7142 5229 7082 5169 7082 5095 ct 7082 5021 7142 4961 7216 4961 ct -7290 4961 7350 5021 7350 5095 ct 7350 5169 7290 5229 7216 5229 ct 7216 5229 l -pc -1.000 0.003 0.003 c 6179 3279 m 6105 3279 6045 3219 6045 3145 ct 6045 3071 6105 3011 6179 3011 ct -6253 3011 6313 3071 6313 3145 ct 6313 3219 6253 3279 6179 3279 ct 6179 3279 l -p ef -0.003 0.003 0.003 c 6179 3279 m 6105 3279 6045 3219 6045 3145 ct 6045 3071 6105 3011 6179 3011 ct -6253 3011 6313 3071 6313 3145 ct 6313 3219 6253 3279 6179 3279 ct 6179 3279 l -pc -tm setmatrix -0 0 t -1 1 s -0 8033 t -pom -count op_count sub {pop} repeat countdictstack dict_count sub {end} repeat b4_inc_state restore -%%PageTrailer -%%Trailer -%%EOF diff --git a/documentation/hypertransport.svg b/documentation/hypertransport.svg new file mode 100644 index 0000000000..bc8d8967d5 --- /dev/null +++ b/documentation/hypertransport.svg @@ -0,0 +1,59 @@ +<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="256px" height="512px" viewBox="0 0 256 512" enable-background="new 0 0 256 512" xml:space="preserve">
+<font horiz-adv-x="2048">
+<font-face font-family="ArialMT" units-per-em="2048" underline-position="-217" underline-thickness="150"/>
+<missing-glyph horiz-adv-x="1536" d="M256,0l0,1280l1024,0l0,-1280M288,32l960,0l0,1216l-960,0z"/>
+<glyph unicode=" " horiz-adv-x="569"/>
+<glyph unicode="(" horiz-adv-x="682" d="M479,-431C380,-306 296,-159 227,9C158,177 124,351 124,531C124,690 150,842 201,987C261,1156 354,1324 479,1491l129,0C527,1352 474,1253 448,1194C407,1102 375,1006 352,906C323,781 309,656 309,530C309,209 409,-111 608,-431z"/>
+<glyph unicode=")" horiz-adv-x="682" d="M253,-431l-129,0C323,-111 423,209 423,530C423,655 409,780 380,903C357,1003 326,1099 285,1191C259,1251 205,1351 124,1491l129,0C378,1324 471,1156 531,987C582,842 608,690 608,531C608,351 574,177 505,9C436,-159 352,-306 253,-431z"/>
+<glyph unicode="-" horiz-adv-x="682" d="M65,440l0,181l553,0l0,-181z"/>
+<glyph unicode="0" horiz-adv-x="1139" d="M85,723C85,896 103,1036 139,1142C174,1247 227,1329 298,1386C368,1443 456,1472 563,1472C642,1472 711,1456 770,1425C829,1393 878,1347 917,1288C956,1228 986,1155 1008,1070C1030,984 1041,868 1041,723C1041,551 1023,412 988,307C953,201 900,119 830,62C759,4 670,-25 563,-25C422,-25 311,26 230,127C133,249 85,448 85,723M270,723C270,482 298,322 355,243C411,163 480,123 563,123C646,123 715,163 772,243C828,323 856,483 856,723C856,964 828,1125 772,1204C715,1283 645,1323 561,1323C478,1323 412,1288 363,1218C301,1129 270,964 270,723z"/>
+<glyph unicode="1" horiz-adv-x="1139" d="M763,0l-180,0l0,1147C540,1106 483,1064 413,1023C342,982 279,951 223,930l0,174C324,1151 412,1209 487,1276C562,1343 616,1409 647,1472l116,0z"/>
+<glyph unicode="2" horiz-adv-x="1139" d="M1031,173l0,-173l-969,0C61,43 68,85 83,125C108,191 147,256 202,320C256,384 334,458 437,542C596,673 704,776 760,853C816,929 844,1001 844,1069C844,1140 819,1201 768,1250C717,1299 650,1323 568,1323C481,1323 412,1297 360,1245C308,1193 282,1121 281,1029l-185,19C109,1186 156,1291 239,1364C322,1436 433,1472 572,1472C713,1472 824,1433 906,1355C988,1277 1029,1180 1029,1065C1029,1006 1017,949 993,892C969,835 929,776 874,713C818,650 725,564 596,455C488,364 419,303 388,271C357,238 332,206 312,173z"/>
+<glyph unicode="3" horiz-adv-x="1139" d="M86,387l180,24C287,309 322,236 372,191C421,146 482,123 553,123C638,123 709,152 768,211C826,270 855,342 855,429C855,512 828,580 774,634C720,687 651,714 568,714C534,714 492,707 441,694l20,158C473,851 483,850 490,850C567,850 636,870 697,910C758,950 789,1012 789,1095C789,1161 767,1216 722,1259C677,1302 620,1324 549,1324C479,1324 421,1302 374,1258C327,1214 297,1148 284,1060l-180,32C126,1213 176,1306 254,1373C332,1439 429,1472 545,1472C625,1472 699,1455 766,1421C833,1386 885,1339 921,1280C956,1221 974,1158 974,1091C974,1028 957,970 923,918C889,866 839,825 772,794C859,774 926,733 974,670C1022,607 1046,528 1046,433C1046,305 999,197 906,108C813,19 695,-26 552,-26C423,-26 317,12 232,89C147,166 98,265 86,387z"/>
+<glyph unicode="8" horiz-adv-x="1139" d="M362,795C287,822 232,861 196,912C160,963 142,1023 142,1094C142,1201 180,1290 257,1363C334,1436 436,1472 563,1472C691,1472 794,1435 872,1361C950,1286 989,1196 989,1089C989,1021 971,962 936,912C900,861 846,822 773,795C863,766 932,718 979,653C1026,588 1049,510 1049,419C1049,294 1005,188 916,103C827,18 711,-25 566,-25C421,-25 305,18 216,104C127,189 83,296 83,424C83,519 107,599 156,664C204,728 273,772 362,795M326,1100C326,1031 348,974 393,930C438,886 496,864 567,864C636,864 693,886 738,930C782,973 804,1027 804,1090C804,1156 781,1212 736,1257C690,1302 633,1324 565,1324C496,1324 439,1302 394,1258C349,1214 326,1161 326,1100M268,423C268,372 280,322 305,274C329,226 365,189 413,163C461,136 513,123 568,123C654,123 725,151 781,206C837,261 865,332 865,417C865,504 836,575 779,632C721,689 649,717 562,717C477,717 407,689 352,633C296,577 268,507 268,423z"/>
+<glyph unicode="B" horiz-adv-x="1366" d="M150,0l0,1466l550,0C812,1466 902,1451 970,1422C1037,1392 1090,1346 1129,1285C1167,1223 1186,1158 1186,1091C1186,1028 1169,969 1135,914C1101,859 1050,814 981,780C1070,754 1138,710 1186,647C1233,584 1257,510 1257,425C1257,356 1243,293 1214,234C1185,175 1149,129 1106,97C1063,65 1010,41 946,25C881,8 802,0 709,0M344,850l317,0C747,850 809,856 846,867C895,882 933,906 958,940C983,974 995,1017 995,1068C995,1117 983,1160 960,1197C937,1234 903,1259 860,1273C817,1286 742,1293 637,1293l-293,0M344,173l365,0C772,173 816,175 841,180C886,188 923,201 953,220C983,239 1008,266 1027,302C1046,337 1056,378 1056,425C1056,480 1042,527 1014,568C986,608 947,636 898,653C848,669 776,677 683,677l-339,0z"/>
+<glyph unicode="C" horiz-adv-x="1479" d="M1204,514l194,-49C1357,306 1284,184 1179,101C1073,17 944,-25 791,-25C633,-25 505,7 406,72C307,136 231,229 180,351C128,473 102,604 102,744C102,897 131,1030 190,1144C248,1257 331,1344 439,1403C546,1462 665,1491 794,1491C941,1491 1064,1454 1164,1379C1264,1304 1334,1199 1373,1064l-191,-45C1148,1126 1099,1203 1034,1252C969,1301 888,1325 790,1325C677,1325 583,1298 508,1244C432,1190 379,1118 348,1027C317,936 302,842 302,745C302,620 320,512 357,419C393,326 449,256 526,210C603,164 686,141 775,141C884,141 976,172 1051,235C1126,298 1177,391 1204,514z"/>
+<glyph unicode="D" horiz-adv-x="1479" d="M158,0l0,1466l505,0C777,1466 864,1459 924,1445C1008,1426 1080,1391 1139,1340C1216,1275 1274,1191 1313,1090C1351,988 1370,872 1370,741C1370,630 1357,531 1331,445C1305,359 1272,288 1231,232C1190,175 1146,131 1098,99C1049,66 991,42 923,25C854,8 776,0 687,0M352,173l313,0C762,173 838,182 893,200C948,218 991,243 1024,276C1070,322 1106,384 1132,462C1157,539 1170,633 1170,744C1170,897 1145,1015 1095,1098C1044,1180 983,1235 911,1263C859,1283 775,1293 660,1293l-308,0z"/>
+<glyph unicode="I" horiz-adv-x="569" d="M191,0l0,1466l194,0l0,-1466z"/>
+<glyph unicode="L" horiz-adv-x="1139" d="M150,0l0,1466l194,0l0,-1293l722,0l0,-173z"/>
+<glyph unicode="P" horiz-adv-x="1366" d="M158,0l0,1466l553,0C808,1466 883,1461 934,1452C1006,1440 1066,1417 1115,1384C1164,1350 1203,1303 1233,1242C1262,1181 1277,1115 1277,1042C1277,917 1237,812 1158,726C1079,639 935,596 728,596l-376,0l0,-596M352,769l379,0C856,769 945,792 998,839C1051,886 1077,951 1077,1036C1077,1097 1062,1150 1031,1194C1000,1237 959,1266 908,1280C875,1289 815,1293 727,1293l-375,0z"/>
+<glyph unicode="S" horiz-adv-x="1366" d="M92,471l183,16C284,414 304,354 336,307C367,260 416,222 483,193C550,164 625,149 708,149C782,149 847,160 904,182C961,204 1003,234 1031,273C1058,311 1072,353 1072,398C1072,444 1059,484 1032,519C1005,553 961,582 900,605C861,620 774,644 639,677C504,709 410,739 356,768C286,805 234,850 200,905C165,959 148,1020 148,1087C148,1161 169,1230 211,1295C253,1359 314,1408 395,1441C476,1474 565,1491 664,1491C773,1491 869,1474 952,1439C1035,1404 1098,1352 1143,1284C1188,1216 1212,1139 1215,1053l-186,-14C1019,1132 985,1202 928,1249C870,1296 785,1320 672,1320C555,1320 469,1299 416,1256C362,1213 335,1161 335,1100C335,1047 354,1004 392,970C429,936 527,901 685,866C842,830 950,799 1009,772C1094,733 1157,683 1198,623C1239,562 1259,493 1259,414C1259,336 1237,263 1192,194C1147,125 1083,71 1000,33C916,-6 822,-25 717,-25C584,-25 473,-6 384,33C294,72 224,130 173,208C122,285 95,373 92,471z"/>
+<glyph unicode="T" horiz-adv-x="1251" d="M531,0l0,1293l-483,0l0,173l1162,0l0,-173l-485,0l0,-1293z"/>
+<glyph unicode="U" horiz-adv-x="1479" d="M1120,1466l194,0l0,-847C1314,472 1297,355 1264,268C1231,181 1171,111 1084,57C997,2 882,-25 741,-25C604,-25 491,-1 404,46C317,93 254,162 217,252C180,341 161,464 161,619l0,847l194,0l0,-846C355,493 367,399 391,339C414,278 455,232 513,199C570,166 641,150 724,150C867,150 968,182 1029,247C1090,312 1120,436 1120,620z"/>
+<glyph unicode="X" horiz-adv-x="1366" d="M9,0l567,764l-500,702l231,0l266,-376C628,1012 668,952 691,910C724,963 762,1019 807,1077l295,389l211,0l-515,-691l555,-775l-240,0l-369,523C723,553 702,586 680,621C647,568 624,531 610,511l-368,-511z"/>
+</font>
+
+ <rect x="7.465" y="10.627" fill="#A0A0A0" stroke="#000000" width="80.473" height="80.473"/>
+<rect x="150.491" y="10.923" fill="#A0A0A0" stroke="#000000" width="80.474" height="80.178"/>
+<rect x="8.479" y="129.379" fill="#A0A0A0" stroke="#000000" width="80.473" height="80.473"/>
+<rect x="150.491" y="129.674" fill="#A0A0A0" stroke="#000000" width="80.474" height="80.178"/>
+<rect x="8.479" y="241.805" fill="#A0A0A0" stroke="#000000" width="80.473" height="80.473"/>
+<rect x="150.491" y="242.1" fill="#A0A0A0" stroke="#000000" width="80.474" height="80.177"/>
+<line fill="none" stroke="#000000" x1="48.716" y1="91.101" x2="48.716" y2="129.379"/>
+<line fill="none" stroke="#000000" x1="88.953" y1="50.864" x2="150.491" y2="51.012"/>
+<line fill="none" stroke="#000000" x1="88.953" y1="169.763" x2="150.491" y2="169.763"/>
+<line fill="none" stroke="#000000" x1="190.729" y1="91.101" x2="190.729" y2="129.379"/>
+<line fill="none" stroke="#000000" x1="48.716" y1="209.852" x2="48.716" y2="241.805"/>
+<line fill="none" stroke="#000000" x1="88.953" y1="282.189" x2="150.491" y2="282.189"/>
+<text transform="matrix(1 0 0 1 23.6948 57.3003)" font-family="'ArialMT'" font-size="18">CPU2</text>
+<text transform="matrix(1 0 0 1 22.3374 174.46)" font-family="'ArialMT'" font-size="18">CPU0</text>
+<text transform="matrix(1 0 0 1 169.082 55.1167)" font-family="'ArialMT'" font-size="18">CPU3</text>
+<text transform="matrix(1 0 0 1 169.082 175.8271)" font-family="'ArialMT'" font-size="18">CPU1</text>
+<text transform="matrix(1 0 0 1 22.6807 277.1895)"><tspan x="0" y="0" font-family="'ArialMT'" font-size="18">PCI-X</tspan><tspan x="0" y="21.601" font-family="'ArialMT'" font-size="18">(8131)</tspan></text>
+<text transform="matrix(1 0 0 1 169.082 275.1895)"><tspan x="0" y="0" font-family="'ArialMT'" font-size="18"> SB</tspan><tspan x="0" y="21.6" font-family="'ArialMT'" font-size="18">(8111)</tspan></text>
+<text transform="matrix(1 0 0 1 93.0947 63.8721)" font-family="'ArialMT'" font-size="10">LDT1</text>
+<text transform="matrix(1 0 0 1 124.5088 46.7715)" font-family="'ArialMT'" font-size="10">LDT1</text>
+<text transform="matrix(1 0 0 1 196.6982 102.9844)" font-family="'ArialMT'" font-size="10">LDT0</text>
+<text transform="matrix(1 0 0 1 161.1953 126.0615)" font-family="'ArialMT'" font-size="10">LDT1</text>
+<text transform="matrix(1 0 0 1 22.3374 126.0615)" font-family="'ArialMT'" font-size="10">LDT2</text>
+<text transform="matrix(1 0 0 1 55.2783 103.5767)" font-family="'ArialMT'" font-size="10">LDT0</text>
+<text transform="matrix(1 0 0 1 52.9111 221.3276)" font-family="'ArialMT'" font-size="10">LDT0</text>
+<text transform="matrix(1 0 0 1 93.0947 181.6719)" font-family="'ArialMT'" font-size="10">LDT1</text>
+<text transform="matrix(1 0 0 1 124.5088 166.2979)" font-family="'ArialMT'" font-size="10">LDT0</text>
+<ellipse fill="#FF0606" cx="150.491" cy="51.012" rx="4.438" ry="4.563"/>
+<ellipse fill="#FF0606" cx="88.953" cy="169.763" rx="4.438" ry="4.563"/>
+<ellipse fill="#FF0606" cx="190.729" cy="129.379" rx="4.438" ry="4.563"/>
+</svg>
|