ࡱ> >?@KLMO w ( ) * + , - y7 ?RbjbjUU H7|7|BJJlYYY8ZL\Z͙\v](]]h^r@stKt<$ ƘtorttƘ((]h^G>t (]h^tXqԌ  h^\ :)ƾIYv4 H͙؎4aa ((((A Performance Study of Sequential IO on WindowsNT"! 4.0 Erik Riedel (CMU) Catharine Van Ingen Jim Gray September 1997 Technical Report MSR-TR-97-34 Microsoft Research Microsoft Corporation One Microsoft Way Redmond, WA 98052 A Performance Study of Sequential I/O on Windows NT"! 4.0 Erik Riedel, Catharine van Ingen, Jim Gray Microsoft Research 301 Howard Street San Francisco, California, 94105  HYPERLINK "http://www.research.microsoft.com/barc" http://www.research.microsoft.com/barc HYPERLINK "mailto: VanIngen@Microsoft.com"vanIngen@Microsoft.com, GrayHYPERLINK "mailto: Gray@Microsoft.com"@Microsoft.com, HYPERLINK "mailto:%20riedel+@cmu.edu"riedel+@cmu.edu Abstract This paper investigates the most efficient way to read and write large sequential files using the WindowsNT"! 4.0 File System. The study explores the performance of Intel Pentium Pro"! based memory and IO subsystems, including the processor bus, the PCI bus, the SCSI bus, the disk controllers, and the disk media. We provide details of the overhead costs at various levels of the system and examine a variety of the available tuning knobs. The report shows that NTFS out-of-the box read and write performance is quite good, but overheads for small requests can be quite high. The best performance is achieved by using large requests, bypassing the file system cache, spreading the data across many disks and controllers, and using deep-asynchronous requests. 1. Introduction This paper discusses how to do high-speed sequential file access using the Windows NT"! File System (NTFS). High-speed sequential file access is important for bulk data operations typically found in utility, multimedia, data mining, and scientific applications. High-speed sequential IO is also important in the startup of interactive applications. Minimizing IO overhead and maximizing bandwidth frees power to process the data. Figure 1 shows how data flows in a typical storage sub-system doing sequential IO. Application requests are passed to the file system. If the file system cannot service the request from its main memory buffers, it passes requests to a host bus adapter (HBA) over a PCI peripheral bus. The HBA passes requests across the SCSI (Small Computer System Interconnect) bus to the disk drive controller. The controller reads or writes the disk and returns data via the reverse route. The large-bold numbers of Figure 1 indicate the advertised throughputs listed on the boxes of the various system components. These are the figures quoted in hardware reviews and specifications. Several factors prevent you from achieving this PAP (peak advertised performance.) The media-transfer speed and the processing power of the on-drive controller limit disk bandwidth. The wires transfer rate, the actual disk transfer rate, and SCSI protocol overheads ALL limit the throughput. The efficiency of a bus is the fraction of the bus cycles available for data transfer; in addition to data, bus cycles are consumed by contention, control transfers, device speed matching delays, and other device response delays. Similarly, PCI bus throughput is limited by its absolute speed, its protocol efficiency, and actual adapter performance. IO request processing overheads can also saturate the processor and limit the request rate. In the case diagrammed in Figure 1, the disk media is the bottleneck, limiting aggregate throughput to 7.2 MBps at each step of the IO pipeline. There is a significant gap between the advertised performance and this out-of-box performance. Moreover, the out-of-box application consumes between 25% and 50% of the processor. The processor would saturate before it reached the advertised SCSI throughput or PCI throughput. The goal of this study is to do better cheaply - to increase sequential IO throughput and decrease processor overhead while making as few application changes as possible. We define goodness as getting the real application performance (RAP) to the half-power point - the point at which the system delivers half of the theoretical maximum performance. More succinctly: the goal is RAP > PAP/2. Such improvements often represent significant (2x to 10x) gains over the out-of-box performance. The half-power point can be achieved without heroic effort. The following techniques used independently or in combination can improve sequential IO performance. Make larger requests: 8KB and 64KB IO requests give significantly higher throughput than smaller requests, and larger requests consume significantly less per-byte overhead at each point in the system. Use file system buffers for small (<8KB) requests: The file system coalesces small sequential requests into large ones. It pipelines these requests to the IO subsystem in 64KB units. File system buffering consumes more processor overhead, but for small requests it can actually save processor time by reducing interrupts and reducing disk traffic. Preallocate files to their eventual maximum size. Preallocation ensures that the file can be written with multiple requests outstanding (NT synchronously zeros newly allocated files). Preallocation also allows positioning the file on the media. Write-Cache-Enable (WCE): Disks support write buffering in the controller. WCE allows the disk drive to coalesce and optimally schedule disk media writes, making bigger writes out of small write requests and giving the application pipeline-parallelism. Stripe across multiple SCSI disks and buses: Adding disks increases bandwidth. Three disks can saturate the SCSI bus. To maximize sequential bandwidth, a SCSI host-bus adapter should be added for each three disks. Unless otherwise noted, the system used for this study is the configuration described in Table 1:  Table 1 suggests that the processor has a 422 MBps memory bus (66Mhz and 64-bit wide.) As shown later, this aggregate throughput is significantly more than that accessible to a single requestor (processor or PCI bus adapter). The study used SCSI-2 Fast-Wide (20MBps) and Ultra-Wide (40MBps) disks. As the paper is being written, Ultra2 (80MBps) and Fiber Channel (100/200 MBps) disks are appearing. The benchmark program is a simple application that uses the NT file system. It sequentially reads or writes a 100-MB file and times the result. ReadFileEx()and IO completion routines were used to keep n asynchronous requests in flight until the end of the file was reached; see the Appendix for more details on the program. Measurements were repeated three times. Unless otherwise noted, all the data obtained were quite repeatable (within 3%). All multiple disk data were obtained by using NT ftdisk to build striped logical volumes; ftdisk uses a stripe chunk, or step, size of 64KB. The program and the raw test results are available at  HYPERLINK "http://www.research.microsoft.com/barc/Sequential_IO/" http://www.research.microsoft.com/barc/Sequential_IO/. The next section discusses our out-of-box measurements. Section 3 explores the basic capabilities of the hardware storage sub-system. Ways to improve performance by increasing parallelism are presented in Section 4. Section 5 provides more detailed discussion of performance limits at various points in the system and discusses some additional software considerations. Finally, we summarize and suggest steps for additional study. 2. Out-of-the-Box Performance The first measurements examine the out-of-the-box performance of a program that synchronously reads or writes a sequential file using the NTFS defaults. In this experiment, the reading program requests data from the NT file system. The NT file system copies the data to the application request buffer from the main-memory file cache. If the requested data is not already in the buffer cache, the file system first fetches the data into cache from disk. When doing sequential scans, NT makes 64KB prefetch requests. Similarly, when writing, the program's data is copied to the NT file cache. A separate thread asynchronously flushes the cache to disk in 64KB transfer units. In the out-of the-box experiments, the file being written was already allocated but not truncated. The program specified the FILE_FLAG_SEQUENTIAL_SCAN attribute when opening the file with CreateFile(). The total user and system processor time was measured via GetProcessTimes(). Figure 2 shows the results. Buffered-sequential read throughput is nearly constant for request sizes up to 64KB. The NT file system prefetches reads by issuing 64KB requests to the disk. The disk controller also prefetches data from the media to its internal controller cache. Depending on the firmware, the drive may prefetch only small requests by reading full media tracks or may perform more aggressive prefetch across tracks. Controller prefetching allows the disk to approach the media-transfer limit, and hides the disk's rotational delay. Figure 2 shows a sharp drop in read throughput for request sizes larger than 64KB; the NT file system and disk prefetch mechanisms are no longer working together. Figure 2 indicates that buffered-sequential writes are substantially slower than reads. The NT file system assumes write-back caching by default; the file system copies the contents of the application write buffer into one or more file system buffers. The application considers the buffered write completed when the copy is made. The file system coalesces small sequential writes into larger 64KB writes passed to the SCSI host bus adapter. The throughput is relatively constant above 4KB. The writeback occurs nearly synchronous with one request outstanding at the disk drive. This ensures data integrity within the file. In the event of an error the file data are known to be good up to the failed request. Write requests of 2KB present a particularly heavy load on the system. In this case, the filesystem reads the file prior to the write-back and those read requests are 4KB. This more than doubles the load on the system components. This pre-read can be avoided by ( 1) issuing write requests that are at least 4KB, or (2) truncating the file at open by specifying TRUNCATE_EXISTING rather than OPEN_EXISTING as the file creation parameter to CreateFile(). When we opened the test file with TRUNCATE_EXISTING, the write throughput of 2KB writes was about 3.7 MBps or just less than that of 4KB and above. TRUNCATE_EXISTING should be used with tiny, less than 4KB, buffered requests. With 4KB or larger requests, extending the file after truncation incurs overheads which lower throughput up to 20%. The FILE_FLAG_SEQUENTIAL_SCAN flag had no visible affect on read performance, but improved write throughput by about 10%. Without the attribute, the write-back request size was no longer a constant 64KB, but rather varied between 16KB and 64KB. The smaller requests increased system load and decreased throughput. The FILE_FLAG_WRITE_THROUGH flag has a catastrophic affect on write performance. The file system copies the application write buffer into the file system cache, but does not complete the request until the data have been written to media. Requests are not coalesced, the application request size is the SCSI bus request size. Moreover, the disk requests are completely synchronous fewer writes complete per second. This causes almost a 10x reduction in throughput with WCE and requests less than 64KB, we saw less than 1 MBps. Disk controllers also implement write-through and write-back caching. This option is controlled by the Write-Cache-Enable (WCE) option [SCSI]. If WCE is disabled, the disk controller announces IO completion only after the media write is complete. If WCE is enabled, the disk announces write IO completion as soon as the data are stored in its cache which may be before the actual write onto the magnetic disk media. WCE allows the disk to hide the rotational seek and media transfer. WCE improves write performance by giving pipeline parallelism the write of the media overlaps the transfer of the next write on the SCSI even if the file system requests are synchronous.  There is no standard default for WCE the drive may come out of the box with WCE enabled or disabled. The effect of WCE is dramatic. As shown in Figure 2 WCE approximately doubles buffered-sequential write throughput. When combined with WCE, NT file-system write buffering allows small application request sizes to attain throughput comparable to large request sizes and comparable to read performance. In particular, it allows requests of 4KB or more to reach the half-power point. Small requests involve many more NT calls and many more protection domain crossings per megabyte of data processed. With 2KB requests, the 200 MHz Intel Pentium processor saturates when reading writing 16 MBps. With 64KB requests, the same processor can generate about 50 MBps of buffered file IO exceeding the Ultra-Wide SCSI PAP. As shown later, this processor can generate about 480 MBps of unbuffered disk traffic. Figure 2 indicates that buffered reads consume less processing than buffered writes. Buffered writes were associated with more IO to the system disk, but we dont know how to interpret this observation. The system behavior under reads and writes is very different. During the read tests, the processor load is fairly uniform. The file system prefetches data to be read into the cache. It then copies the data from the file system cache to the application request buffer. The file cache buffer can be reused as soon as the data are copied to the application buffer. The elapsed time is about eleven seconds. During the write tests, the processor load goes through three phases. In the first phase, the application writes at memory copy speed, saturating the processor as it fills all available file system buffers. During the second phase, the file system must free buffers by initiating SCSI transfers. New application writes are admitted when buffers become available. The processor is about 30% busy during this phase. At the end of this phase the application closes the file. The close operation forces the file system to synchronously flush all remaining writes - one SCSI transfer at any time. During this third phase the processor load is negligible. Not all processing overhead is charged to the process that caused it in Figure 2. Despite some uncertainty in the measurements, the trend remains. Moving data with many small requests costs significantly more than moving the same data with fewer-larger requests. We will return to the cost question in more detail in the next section. In summary, the performance of a single-disk configuration is limited by the media transfer rate. Reads are easy. For all request sizes, the out-of-box sequential-buffered-read performance achieves close to the media limit. By default, small buffered-writes (less than 4KB) achieve 25% of the bandwidth. Buffered-sequential writes of 4KB or larger nearly achieve the half-power point. By enabling WCE, all but the smallest sequential buffered-write requests achieve 80% of the media-transfer limit. For both reads and writes, larger request sizes have substantially less processor overhead per byte read or written. Minimal overhead occurs with requests between 16KB and 64KB. 3. Improving Performance - Bypassing the File System Cache for Large Requests We next bypass file system buffering to examine the hardware performance. This section compares Fast-Wide (20MBps) and Ultra-Wide (40MBps) disks. Figure 3 shows that the devices are capable of 30% of the PAP speeds. The Ultra-Wide disk is the current generation of the Barracuda 4LP-product line (ST34371W). The Fast-Wide disk is the previous generation (ST15150W). The 100MB file is opened with CreateFile(, FILE_FLAG_NO_BUFFERING | FILE_FLAG_SEQUENTIAL_SCAN,) to suppress file system buffering. The file system performs no prefetch, no caching, no coalescing, and no extra copies. The data moves directly into the application via the SCSI adapter using DMA (direct memory access). Application requests are presented directly to the SCSI adapter without first being copied to the file system buffer pool. On large (64KB) requests, bypassing the file system copy cuts the processor overhead by a factor of ten: from 2 instructions per byte to 0.2 instructions per byte. Unbuffered-sequential reads reach the media limit for all requests larger than 8KB. The older Fast-Wide disk requires read requests of 8KB to reach its maximum efficiency of approximately 6.5 MBps. The newer Ultra-Wide drive plateaus at 8.5 MBps with 4KB requests. Prefetching by the controller gives pipeline parallelism allowing the drive to read at the media limit. Very large requests remain at the media limit (in contrast to the problems seen in Figure 2 with large buffered read transfers). Without WCE, unbuffered-sequential writes are significantly slower. The left chart of Figure 3 shows that unbuffered-sequential write performance increases only gradually with request size. The differences between the two drives are primarily due to the difference in media density and drive electronics and not the SCSI bus speed. No write throughput plateau was observed even at 1MB request sizes. The storage subsystem is completely synchronous -- first it writes to device cache, then it writes to disk. Device overhead and latency dominate. Application requests above 64KB are still broken into multiple 64KB requests within the IO subsystem, but those requests can be simultaneously outstanding in the storage subsystem. Without WCE, the half-power write rate is achieved with a request size of 128KB. The right graph of Figure 3 shows that WCE compensates for the lack of file system coalescing. The WCE sequential write rates look similar to the read rates and the media limit is reached at about 8KB for the newer disk and 64KB for the older drive. The media-transfer time and rotational seek latency costs are hidden by the pipeline-parallelism of the WCE controller. WCE also allows the drive to perform fewer larger media writes, reducing the total rotational latency. Figure 4 shows the processor overhead corresponding to the unbuffered sequential writes. Times are based on the total user and system time as reported by GetProcessTimes(). In all cases processor overheads decrease with request sizes. Requests less than 64KB appear to cost about 120(. As requests become larger, the file system has to do extra work to fragment them into 64KB requests to the device. The first chart of Figure 4 shows the processor time to transfer a megabyte. Issuing many small read requests places a heavy load on the processor. Larger requests amortize the fixed overhead over many more bytes. The time is very similar for both reads and writes regardless of the generation of the disk and disk caching. The drive response time makes little difference to the host. With 2KB requests, this system can only generate a request rate of about 16 MBps. The middle chart of Figure 4 shows the host processor utilization as a function of request size. At small requests, reads place a heavier load on the processor because the read throughput is higher than that of writes. The processor is doing the same work per byte moved, but the bytes are moving faster so the imposed load is higher. Without WCE, write requests appear to place a much smaller load on the processor because sequential writes run much more slowly. Finally, the chart on the right of Figure 4 shows the processor time per request. Requests up to 16KB consume approximately the same amount of processor time. Since the 16KB request moves eight times as much data as the 2KB request, we see the corresponding 8x change in the center chart. Until the request sizes exceed 64KB, larger requests consume comparable processor time. Beyond 64KB, the processor time increases because the file subsystem does extra work, breaking the request into multiple 64KB transfers, and dynamically allocating control structures. Note, however, that while the cost of a single request increases with request size, the processor cost per megabyte always decreases. As a rule of thumb, requests cost about 120(seconds, or about 10,000 instructions. Buffered requests have an additional cost of about 2 instructions per byte while unbuffered transfers have almost no marginal cost per byte. Recall that buffered IO saturates the processor at about 50 MBps for 64KB requests. Unbuffered IO consumes about 2.1 milliseconds per megabyte, so unbuffered IO will saturate this processor at about 480 MBps. On the systems discussed here, the two PCI buses would have become saturated long before that point and the memory bus would be near saturation leaving no ability for the processor to process data. Figure 5 summarizes the performance of an Ultra-Wide SCSI for Figures 2, 3, and 4 a very busy graph. Buffered requests give significantly better performance below 4KB. Processing many small requests not only incurs more processor overhead but also reduces the efficiency of the disk controller. Above 16KB, the overhead of unbuffered reads is significantly (2-10x) less than buffered reads. Above 64KB, unbuffered reads are definitely better in both throughput and overhead. Either WCE or file system buffering is necessary to achieve good sequential-write throughput. The best write performance occurs with large request sizes, WCE, and no file system buffering. Only with WCE or very large (128KB) requests can the disk reach the half-power point while writing. To summarize: Disk read prefetch makes it easy to achieve good sequential read performance. Without WCE writes are much slower than reads. Disk write-cache-enable (WCE) has performance benefits ranging from 10x (small-unbuffered writes) to 2x (large-buffered writes). File system buffering gives a clear benefit for sequential write requests smaller than 64KB and for sequential reads smaller than 8KB. Bypassing file system buffering for requests larger than 32KB dramatically reduces processor overheads. A read or write request consumes about 10,000 instructions. File system buffering consumes about 2 instructions per byte while unbuffered requests have almost no marginal cost per byte. 4. Improving Performance via Parallelism The previous sections examined the performance of synchronous requests to a single disk. Any parallelism in the system was due to caching by the file system or disk controller. This section examines two throughput improvements: (1) using asynchronous IO to pipeline requests and (2) striping files across multiple disks and busses to allow media-transfer parallelism. Asynchronous IO increases throughput by providing the IO subsystem with more work to do at any instant. The disk and busses can overlap or pipeline the presented load. This reduces idle time. As seen before, there is not much advantage to be gained by read parallelism on a single disk. The disk is already pipelining requests by prefetching; additional outstanding requests create a little additional overlap on the SCSI transfer. On the other hand, WCE's pipeline parallelism dramatically improves single-disk write performance. As you might expect, by issuing many unbuffered IO requests in parallel, the application can approximate the single-disk performance of WCE. Figure 21 has the program details, but the idea is that the application issues multiple sequential IOs. When one IO completes, the application asynchronously issues another IO as part of the IO completion routine. The application attempts to keep n requests active at all times. Figure 6 shows the read throughput of a single disk as the number of outstanding requests (request depth) grows from 1 to 8; the second chart shows write throughput. The results are as expected, read throughput is not much improved, write throughput improved dramatically. Read throughput always reaches the half-power point for 4KB requests. Writes need 3-deep 16KB requests or 8-deep 8KB requests to reach the half-power point. This is a 4x-performance improvement for 8KB writes. For request sizes of 16KB or more, 3-deep write throughput compares to the throughput of WCE. Deep asynchronous IO performs as well as WCE - in both cases the disk can overlap and pipeline work. At sizes less than 16KB, WCE is more effective than asynchronous IO because the disk more effectively coalesces writes prior to media access and so performs fewer, larger writes. Without WCE, the disk must perform each write operation prior to retiring the command. This causes larger overhead in all parts of the IO pipeline and incurs more rotational delays. At sizes of 16KB and above, the media becomes the limit and WCE is no longer important. For these larger request sizes the WCE curve is comparable to the others. Asynchronous IO gives significant benefit for reads and large transfers as well as smaller writes when more disks are added to the system. Figure 7 shows the results when the file is striped across four Fast-Wide SCSI disks on one host-bus adapter (one SCSI bus). NT ftdisk was used to bind the drives into a stripe set. . Each successive disk gets the next 64KB file chunk in round-robin fashion.  With 4KB and 8KB requests, increasing request depth increases throughput. This is because requests are being spread across multiple disks. Since the stripe chunk size is 64KB, 8-deep 8KB requests will have requests outstanding to more than one drive about 7/8 of the time. That almost evenly distributes requests across pairs of drives, approximately doubling the throughput. Smaller request depths distribute the load less effectively; with only two requests outstanding, requests are outstanding to more than one drive only about 1/4 of the time. Similarly, smaller request size distributes the load less effectively since more requests are required for each stripe chunk. With 4KB requests and 8 deep requests, at most two drives are used, and that only happens about 3/8 of the time. Striping large requests improves the throughput of both reads and writes. At larger request sizes, the bottleneck moves from the disk media to the SCSI bus. Each disk can deliver about 6MBps, so four disks might deliver 24MBps. The experiments all saturated at about 16MBps. The RAP bandwidth of our Fast-Wide subsystem is 80% of the 20MBps PAP. Ultra-Wide SCSI (not shown) also delivers 75% of PAP or about 30 MBps. Figure 8 examines the SCSI bus throughput as disks are added to a single bus and adapter. A request depth of three was used to access stripe sets of two, three, and four disks on a single bus. The rightmost chart shows the Ultra-SCSI write behavior. All write data were taken with WCE enabled. The processor overhead is not shown because the extra cost of stripping was negligible. Adding a second disk nearly doubles throughput. Adding a third disk gives slightly less than linear scaling, while adding a fourth disk makes little improvement. In fact, with Ultra-Wide SCSI, adding the third disk makes no difference when writing; reads (not shown) show linear scaling up to three disks. Increasing the request depth (also not shown) causes the scaling to occur at slightly smaller request size, but the net effect is the same. The observed limiting throughput for the Fast-Wide SCSI is about 16MBps. Ultra-Wide shows different limits: 30MBps for reads but only 20MBps for writes (see Figure 13). Three disks at 6MBps Fast-Wide or 10MBps Ultra-Wide reach the limit in both cases. (Again, note that the single disk performance varies somewhat between the two due to changes to the disk internals across drive generations as seen in Figure 3.) Both large request size and multiple disks are required to reach the SCSI bus half-power point. The Fast-Wide SCSI can reach half-power points with two disks the media speed is only half the bus speed. Read requests of 8KB and write requests of 16KB are needed. Using 64KB or larger requests, transfer rates of 75% of the advertised bus bandwidth can be observed with three disks. The Ultra-Wide SCSI reaches the half-power point with three disks and 16KB read requests or 64KB write requests. Only with very large reads can we reach 75% of the advertised bandwidth. The bus protocol overheads and actual data transfer rates do not scale with advertised bus speed.  To benefit from extra disks, additional SCSI bus and host-bus adapters must be added. Figure 9 compares the throughput of four disks distributed across two buses (2 disks on each of 2 adapters) to that of four disks on a single bus. The two-bus two-adapter configuration continues to gain throughput with the fourth disk. For larger request sizes, the distributed 2+2 configuration gives nearly 24 MBps or double the 2 disk throughput. Adding the second adapter allows simultaneous transfers on both SCSI buses and allows more efficient use of the disks. The additional parallelism across the SCSI buses may be limited by the stripe chunk size. To benefit from multiple buses, requests must be outstanding to drives on them. The throughput with 2KB and 4KB requests is almost unchanged across the two configurations. Most of the time, only one disk has pending requests. With 8KB requests, requests are outstanding to two drives between 1/3 and 1/4 of the time. Whenever those drives are on different SCSI buses the resulting data transfers can occur simultaneously. That occurs half of the time with the 2+2 configuration. In other words, SCSI bus transfers could occur on both buses in parallel about 15% the time. To get the full benefit from the parallel buses, the application should have multiples of 64KB of IO outstanding on each bus. Three Ultra-Wide SCSI disks saturate a single Ultra-Wide SCSI bus and adapter. Two buses support a total of six disks and a maximum read throughput of about 60 MBps. When a third Ultra-Wide SCSI adapter and three more disks were added to the system, the PCI bus limit was reached. This configuration achieved a total of 72 MBps just over the half-power point of the PCI bus. Adding a fourth adapter showed no additional throughput, although the combined SCSI bus bandwidth of 120MBps would seem to be well within the advertised 133 MBps. While the practical limit is likely to be limited by the exact hardware configuration, the PCI half-power point appears to be a good goal. Putting everything together, the combination of asynchronous IO, disk striping, and the NT file system are shown in Figure 10. The throughput with and without file system buffering is compared for a three-disk Ultra-Wide stripe set.  Striping and asynchronous IO can dramatically increase performance of smaller read requests. As with the single disk results shown in Figure 5, file system prefetching increases throughput for requests smaller than 64KB. At 64KB the application request size matches the file system prefetch size. Because this is also the stripe set chunk size, each prefetch request accesses the next disk in the volume set. File system prefetching effectively distributes the load across the disks more. With 8-deep requesting, non-cached access gets better distribution with at least 8KB requests. Above 64KB request size, it is always better to avoid the file system cache copy. The half-power point is reached at smaller request sizes with file system prefetching, but large requests combined with non-buffered asynchronous IO gives better total performance and sustains at least the half-power performance above request sizes of 64KB. Striping writes gives good scalability, but reaching the half-power point remains difficult. With 2KB or 4KB requests, write coalescing by the file system gives the same performance gain as WCE at the drive. At 8KB or above, the throughput is better with only WCE. The file system write-back is not as effective at distributing the load across the disks when caching is active within the drive. The effect of asynchronous requesting is also small due to WCE. To summarize, issuing large and deep asynchronous requests combines to saturate a single disk. Using three-deep asynchronous requests more than doubles write throughput, even on a single disk. Using this technique, write requests in the 16KB range get performance comparable to WCE. By striping the file across 3 disks on a single controller, the bandwidth rises about 3x. The controller saturates at three disks: Fast-Wide SCSI saturates at 15MBps, Ultra-Wide saturates at about 30MBps. By adding controllers in three-disk groups to a single PCI bus, the PCI bus saturates at about 70MBps. By adding multiple PCI busses, the processor or memory bus can saturate. Figure 11 summarizes these bottlenecks. To reach the half-power point, use large transfers and either three-deep requests or WCE.  5. Measurements of Device and File System Internals Performance The previous sections provided an overview of a typical storage system and discussed a number of parameters affecting sequential I/O throughput. This section investigates the hardware components in order to explain the observed behavior. 5.1 System Memory To understand memory copy overhead associated with file system buffering, we made a number of measurements. In all cases, we moved 4MB and timed the operations using the Pentium cycle counters. Target arrays were allocated on page boundaries and we repeated the measurements varying both alignment on a page and page allocated. We coded a number of simple data assigns and a memcopy(). Each data assign loop contains four double assigns. Floating point doubles achieved slightly better performance than integers or single precision floating point. We unrolled the loops to take advantage of the 4-deep Pentium Pro pipelining and saw a few percent gain over the tightly coded loop. We coded both true copies, moving all data in a cache line, and cache line accesses, assigning only the first double in a 32B line. We also used temporary files. The NT file system attempts to hold all temporary file storage within the file cache, so accesses to these files are performed by memory copy. Temporary files are opened by including FILE_ATTRIBUTE_TEMPORARY when calling CreateFile(). Temporary file accesses are a best case IO performance limit for file system buffered requests with no PCI or other IO subsystem hardware bottleneck. Table 2 summarizes the results for our test machine and a nominally identical Gateway 2000 G6-200. Both machines are 200 Mhz Pentium Pros with 64MB of 4x4 60nsec DRAM. The system memory bus is 64-bits wide and cycles at 66 Mhz (422 MBps). While both machines have identical part numbers, the machines actually differ in that the test machine has fast page mode DRAM while the identical machine has EDO DRAM. This difference accounts for only a difference of 10-15%. We believe the identical memory may have more banks as well, since greater interleaving would explain the larger variations. Table 2 Processor to Memory Bandwidth Temporary file reads and writes are the best case limits for file system buffered IO; the data is copied from or to an application buffer but not read from or written to disk media. Memcopy loads the system more than the file system because it does not reuse cacheable destination buffers. While the two machines have identical product codes, the memory subsystem performance is considerably different. Memory bandwidth (MBps)Test Machine (MBps)Identical Machine (MBps)Unrolled DOUBLE load to single destination8881Unrolled cache line read miss164230Temporary file read142148Unrolled DOUBLE store to single destination4782Unrolled cache line write miss5084Temporary file write93136Memcopy (assembly code double load unroll)4754 Processor reads are limited both by the response of the memory subsystem and by the ability of the processor to pend requests. The factor of two difference in bandwidth between one-double-per-cash-line and read-whole-cash-line implies that the first is not memory limited we were not able to get enough requests in flight to benefit from memory request pipelining. The interesting result is that temporary file reads are better than our unrolled double access, This is probably due to better (assembly tuned) coding within NT. On our test system, write bandwidth is significantly less than read bandwidth. Writes also do not show a difference between full and partial cache line access. Since writes are asynchronous, the processor does not stall until the maximum number of pending writes has been reached. Again, temporary file writes are substantially faster than our coding. On our identical system, the read and write bandwidths are comparable. We dont believe this is experimental error , we varied the physical page layout between tests. The two systems are different. Memcopy is not a good model for estimating file system buffer copy overheads. While both use hand-tuned code to move data between buffers, the memory access patterns are significantly different - memcopy sweeps the processor board cache generating substantially more traffic per byte moved. Temporary file writes repeatedly copy from a 64KB buffer to 4MB of file buffers; memcopy moves 4MB to 4MB. The underlying details are both complex and poorly documented. The behavior depends not only on memory bandwidth, but also memory latency and cache coherency protocol. At best, the maximum delivered data rates for a pure server in which the processor does not handle the delivered data is one half the main memory bandwidth (read once, write once). We believe that our system is primarily limited by memory and not by the memory bus. A processor cache read misses require two bus transactions: a short read request and the longer cache line read returned data. A processor cache writeback can require up to four transactions: the two transactions for a read of the line, a short intention to write, and the cache line write to memory. If the memory bus were the bottleneck, write bandwidth would be about half read bandwidth in the limit. The different results from the different machines indicate that the memory subsystem characteristics are key. The advertised PAP of the system bus is 422 MBps. Temporary file reads achieve about 140 MBps; temporary file writes between 93 and 136 MBps. With only one PCI on the system, we observed DMA rates of 72 MBps. Whether or not these represent the half-power point of the memory, we do not know. To do better, we would have to distribute our application across processor boxes. 5.2. Disk Controller Caching and Prefetching  A simple model for the cost of a single disk read assumes no pipelining and separates the contributing factors: The fixed overhead term includes time for the application to issue and complete the IO, the time to arbitrate and transfer control information on the SCSI bus, converting the target logical block to physical media location. The fixed time also includes the disk controller SCSI command handling, and any other processing common to any data transfer request. The next two terms are the time required to locate and move the data from the physical media into the drive cache. The final term the time required to transfer data from the disk cache over the SCSI bus. The actual disk behavior is more complicated because controllers prefetch and cache data. The media-transfer and seek times can overlap the SCSI transfer time. When a SCSI request is satisfied from the disk cache, the seek time and some part of the fixed overhead is eliminated. Even without buffering, sequential transfers incur only short seek times. Large transfers can minimize rotational latency by reading the entire track full-track transfers can start with the next sector to come under the read-write head. At the extremes, some simplifications should occur. For small (2KB) requests, the fixed overhead dominates the transfer times (>0.5ms). For large >32KB) requests, the media-transfer time (> 8ms) dominates. The fixed overhead is amortized over a larger number of bytes and the SCSI transfer rate is faster (>2x) than the media-transfer rate. We measured the fixed overhead component for three generations of Seagate drives: the Narrow 15150N, the Fast-Wide 15150W, and the Ultra-Wide 34371W. Table 3 shows the results. The cache hit column data were obtained by reading the same disk blocks repeatedly. The prefetch hit column was obtained using the benchmark program to sequentially read a 100 MB file. To ensure that the prefetched data would be in the drive cache at all times, a delay was inserted between SCSI requests for those transfers marked with asterisks (*). Table 3 Variation across disk generation - The elapsed time in ms for a cache hit and prefetch hit of varying request sizes directly. Times are measured from an ASPI driver program issuing SCSI commands and bypassing the NT file system. For the large request sizes, the drive is given sufficient time between requests to ensure that the request is always satisfied from prefetch buffers and not limited by media transfer rates. Surprisingly, the cache-hit times are always larger than the prefetch hit times.Narrow-ST15150NFast-Wide-ST15150WUltra-Wide-ST34371WSizeCache HitPrefetch HitCache HitPrefetch HitCache HitPrefetch Hit.5K0.96.560.930.598.140.301K1.01.630.970.598.140.322K1.11.751.020.588.140.344K1.33.931.130.618.130.408K1.751.381.360.868.130.5116K2.632.251.811.31*8.130.74*32K4.353.93*2.752.25*8.131.22*64K16.507.30*16.504.05*8.15 2.15* We expected that the cache hit case would be a simple way to measure fixed overhead. The data are already in the drive cache so no media operation is necessary. The results, however, tell a different story. The prefetch hit times are uniformly smaller than the cache hit times. The firmware appears to be optimized for prefetching it takes longer to recognize the reread as a cache hit. In fact, the constant high cache hit times of the 34371W imply that this drive does not recognize the reread as a cache hit and rereads the same full track at each request. At 64KB, the request spans tracks; the jump in the 15150 drive times may also be due to media rereads. The prefetch hit data follow a simple fixed cost plus SCSI transfer model up through 8KB request sizes. The SCSI transfer time was computed using the advertised bus rate. The 15150 drives (both Narrow and Fast-Wide) have fixed overhead of about 0.58 milliseconds; the 34371W drive (Ultra-Wide) has overhead of about 0.3 milliseconds. At larger requests, no simple model applies. At 64KB, the computed SCSI transfer times do not account for the full prefetch hit time and the remainder is greater than the observed fixed overhead times. The media-transfer rate is not the limit because of the delay between requests. Without the delay, the measurements showed larger variation and the total time was not fully accountable to media transfer. The total time appears to be due to a combination of prefetch hit and new prefetch. A 64KB request may span up to three disk tracks and at least that many prefetch buffers. Whether or not the disk prefetches beyond the track necessary to satisfy the current request is unclear and likely to be implementation specific. Whether or not the disk can respond promptly to a new SCSI request when queuing a new prefetch is also unclear. Intelligence and caching in the drive allows overlap and parallelism across requests so simple behavioral models no longer capture the behavior. Moreover, drive behavior changes significantly across implementations [Worthington, et al]. While the media-transfer limit remains a valid half-power point target for bulk file transfers, understanding smaller scale or smaller data set disk behavior seems difficult at best. 5.3. SCSI Bus Activity We used a bus analyzer to measure SCSI bus activity. Table 4 summarizes the contribution of each protocol cycle type to the total bus utilization while reading the standard 100 MB file. Table 4 SCSI Activity by Phase - For 8KB requests, only 45% of the SCSI bus is data transfer (column 2). The balance goes to SELECT/RESELECT activity and parameter messaging. Larger requests make much more efficient use of the bus - for 64KB requests, utilization drops by half and data transfer makes up almost 90% of that time (column 3). When more disks are added, this efficiency drops somewhat in favor of more message traffic and SELECT activity. The three-disk system reaches over 99% bus utilization and consumes significantly more time in SELECT (column 4).Phase8KB Requests64KB Requests1 Disk1 Disk2 Disks3 DisksArbitrate1.1%0.4%0.6%0.4%Arbitrate Win0.6%0.2%0.3%0.2%Reselect0.2%0.1%0.1%0.1%Select25.2%0.2%0.8%4.4%(Re)Select End0.3%0.1%0.1%0.1%Message In18.5%7.4%11.4%9.1%Message Out5.5%1.4%2.8%3.6%Command2.1%0.5%1.0%1.1%Data In44.9%89.3%82.2%80.4%Data In End0.7%0.3%0.4%0.2%Data Out----Data Out End----Status0.7%0.2%0.3%0.4%Bus Utilization59.8%30.1%67.8%99.3% Comparing the first two columns, small requests suffer from two disadvantages: Small requests spend a lot of time on overhead. Half the bus utilization (30% of 60%) goes to setting up the transfer. There are eight individual 8KB requests for each 64KB request. This causes the increased arbitration, message, command and select phase times. Small requests spend little time transferring user data. At 64KB, 90% of the bus utilization is due to application data transfer. At 8KB, only 45% of the bus time is spent transferring application data.. The last two columns of Table 4 show the effects of SCSI bus contention. Adding a second disk doubles throughput but bus utilization increases 125%. The extra 25% is spent on increased handshaking (SELECT activity and parameter passing). The SCSI adapter is pending requests to the drives and must reSELECT the drive when the request can be satisfied by the drive. More of the bus is consumed coordinating communication among the disks. Adding a third disk increases throughput and fully consumes the SCSI bus, as discussed in Section 3. The SELECT activity increases again, further reducing the time available for data transfer. The overall bus efficiency decreases as disks are added because more bus cycles are required coordinate among the drives. 5.4. Allocate  Unbuffered file writes have a serious performance pitfall. The NT file system forces unbuffered writes to be synchronous whenever a file is newly created, or the file is being extended either explicitly or by writing beyond the end of file. This synchronous write behavior also happens for files that are truncated (specifying the TRUNCATE_EXISTING attribute at CreateFile()or after open with SetEndOfFile()). As illustrated in Figure 12, allocation severely impacts asynchronous IO performance. The file system allows only one request outstanding to the volume. If the access pattern is not sequential, the file system may actually zero any new blocks between requests in the extended region. Buffered sequential writes are not as severely affected, but still benefit from preallocation. Extending a file incurs at most about a 20% throughput penalty with small file system buffered writes. There is one notable exception. If you use tiny 2KB requests, allowing the file system to allocate storage dynamically actually improves performance. The file system does not pre-read the data prior to attempting to coalesce writes. To maximize unbuffered asynchronous write performance, you should preallocate the file storage. If the space is not pre-allocated, the NT file system will first zero it before letting your program read it. 5.5. Alignment The NT 4.0 file system (using the ftdisk mechanism) supports host-based software RAID 0, 1, and 5. A fixed stripe chunk size of 64K is used to build RAID0 stripe sets. Each successive disk gets the next 64KB chunk in round-robin fashion. The chunk size is not user-settable and is independent of the number or size of the stripe set components. The NT file system allocates file blocks in multiples of the file system allocation unit chosen when the volume is formatted. The allocation unit defaults to a value in the range of 512B to 4KB depending on the volume size. The stripe chunk and file system allocation unit are totally independent; NT does not take the chunk size into account when allocating file blocks. Thus, files on a multiple-disk stripe set will almost always be misaligned with respect to stripe chunk. Figure 13 shows the effect of this misalignment. Alignment with the stripe chunk improves performance by 15-20% at 64KB request sizes. A misaligned 64KB application request causes in two disk requests (one of 12KB and another of 52KB) that must both be serviced before the application request can complete. As shown earlier, splitting application requests into smaller units reduces drive efficiency. The drive array and host-bus adapter sees twice the number of requests and some of those requests are small. As the SCSI bus becomes loaded, the performance degradation becomes more noticeable. When requests are issued 8-deep, there are eight 64KB requests active at any given time. In the misaligned case, there are 16 requests of mixed 12KB and 52KB sizes to be coordinated. Misalignment can be avoided by using the NT file system format command at the command prompt rather than the Disk Administrator application.  Disk Administrator limits the allocation size to 512, 1024, 2048, or 4096 bytes. The format command allows allocation size to be set in increments up to 64KB. The cost of using a 64KB allocation unit is the potential of wasting disk space if the volume is used to contain many small files; the file system always rounds the file size to the allocation unit. 5.6. Location on the disk  Modern disks are zoned: outer tracks have more sectors than inner tracks and the bit rate on the outer tracks is higher. This is a natural consequence of having constant aerial density and constant angular velocity: an outer track may be 50% longer than an inner track. The bytes arrive faster and there are more bytes per seek. Figure 14 shows the throughput (MBps) when sequentially reading at different radial positions. For the Ultra-Wide drive, the PAP media transfer rate varies from 15 to 10 MBps and the synchronous RAP is about 65% of that. The PAP media-transfer rate on the Fast-Wide disk media rate varies from 8.8 MBps to 5.9 MBps; the synchronous RAP is about 75% of that. This variation across the surface is similar on other drives. File placement can help attain a disk's the half-power point. Files allocated near the outer edge of the disk will have higher throughput than files allocated near the inner zone. This also means that the throughput of a sequential scan of the entire disk decreases as it progresses across the disk surface. 5.7. Striping in Host, Host-Bus Adapter, or RAID Controller There are several possible arrangements for doing multiple-disk striping. Figure 15 shows three possible combinations that locate cache memory in different places and provide different underlying "plumbing". These different combinations exhibit significantly different properties across different workloads as shown in Figure 16. Note that the hardware striping controllers were not necessarily optimally tuned for large sequential accesses. Caching in the controller acts like file system caching to present the drive with larger requests, but without incurring the processor overhead within the host processor.  5.8. RAID In addition to simple striping, RAID 5 functionality can also be provided either on the host, or by a separate controller. The issues of host-based or controller-based RAID5 are very complex. Controller-based RAID often provides superior failover and reconstruction in case of faults. This section only considers the failure-free performance of two approaches. The purpose is just to assess the relative cost of the host-based RAID5 logic. Figure 17 compares the performance of a four-disk RAID5 stripe set using host-based striping and a hardware disk array. We see that the array performs slightly better on writes, while reads are about equal, with host-based performing somewhat better at medium request sizes. More importantly, the chart on the right shows the impact on the host processor of the two options. Using the disk array to manage RAID5 allows the parity calculations on writes to be offloaded from the host processor, greatly reducing the cost per write requests of 32KB and beyond. We would see a similar effect for reads if we caused on of the disks to fail and reach read request had to reconstruct the original data from the parity. 6. Summary and Conclusions The NT 4.0 file system out-of-the-box sequential IO performance for 4KB requests is good: reads are close to the media limit, writes are near the half-power point. This good performance comes at some cost; the file system is copying every byte, and coalescing disk requests into 64KB units. Write throughput can be nearly doubled by enabling WCE, although using WCE does risk volume corruption if the disk cache is lost. Another alternative is to use large requests and make three-deep asynchronous requests. NT file striping across multiple disks is an excellent way to increase throughput. The file striping must be combined with large and deep asynchronous requests to keep enough data in the pipeline for the disks. Data is striped in 64KB chunks, so one needs approximately N+1 outstanding sequential IOs to keep N drives busy. That is 250KB of outstanding IO to drive an array of 3 disks at speed. An application can saturate a SCSI bus with three drives. By using multiple SCSI busses (and disks), the application can saturate a PCI bus. By using multiple PCI buses, the application could saturate the processor bus and memory subsystem. With current (mid 1997) Intel platforms, the processor can access temporary files at about 140 MBps. All this was summarized in Figure 11. For unbuffered IO, these processors and the software is capable of driving 480 MBps. If the system configuration is balanced (disks do not saturate busses, busses do not saturate one another), the NT file system can be programmed to reach the half-power point. Indeed, applications can reach the sum of the device media limits by using a combination of (1) large request sizes, (2) deep asynchronous requests, (3) WCE, (4) file striping, and (5) unbuffered IO. Write performance is often worse than read performance. The main pitfalls in writing files are: (1) If a file is not already allocated, NT will force sequential writing in order to prevent applications from reading data left on disk by the previous file using that disk space. (2) If a file is allocated but not truncated, then 2KB buffered writes will first read a 4KB unit and then overwrite. (3) If the RAID chunk size is not aligned with the file system allocation size, the misalignment causes large requests to be broken into two smaller requests split across two drives. This doubles the number of requests to the drive array. The measurements suggest a number of ways of doing efficient sequential file access: Larger requests are faster. Requests should be at least 8KB, 64KB if possible. Small requests consume significantly more processor time per byte than larger ones. Doing 2KB sequential IO requests consumes more than 30% of the processor. Using 64KB requests goes faster and consumes less than 3% of the processor. If you absolutely must make small requests, double buffering is not enough parallelism. There are noticeable gains through 8-deep requests; Write-Cache-Enable at disk drives provides significant benefits for small requests. Issuing three-deep asynchronous requests comes close to WCE performance for larger requests. WCE risks data loss and/or volume corruption; asynchronous requests do not. Three disks can saturate a SCSI bus, whether Fast-Wide (15 MBps max) or Ultra-Wide (31 MBps max). Adding more disks than this to a single bus does not improve performance. File system buffering coalesces small requests into 64KB disk requests for both reads and writes. This provides significant performance improvement for requests smaller than 64KB. At 64KB and larger requests, file system buffering degrades performance significantly from the non-buffered case. When possible, files should be preallocated to their eventual maximum size. Extending a file while writing forces synchronization of the requests and significantly degrades performance if requests are issued asynchronously. Consequently, files should be truncated before they are re-written or they should be re-written in multiples of 4KB. Array controllers improve performance by varying the location of the caching and read-ahead logic. The benefit varies with workload. This paper gave a basic tour of the parameters that affect sequential I/O performance in NT. Many areas are not discussed here and merit further attention. As discussed in Section 5, programs using asynchronous I/O have several options for managing asynchronous requests, including completion routines, events, completion ports, and multi-threading. The benchmark used completion routines in an otherwise single-threaded program. We have not explored the tradeoffs of using the other methods. The analysis focused on a single benchmark application issuing a single stream of sequential requests. A production system is likely to have several applications competing for storage resources. This complicates the model since the device array no longer sees a single sequential request stream. The impact of competing application streams is an active research topic. The RAID5 discussion was superficial. It ignored failure and reconstruction behavior. There are an enormous number of options in configuring and tuning RAID systems that we have not explored. Particular applications may use of different RAID levels, different striping parameters, and a greater variety of hardware options. We have only shown the simplest comparisons to give a basic idea of the variety available to system designs. 8. Acknowledgements Tom Barclay did the initial development of iostress benchmark used in all these studies. Barry Nolte and Mike Parkes pointed out the importance of the allocate issue. Doug Treuting, Steve Mattos and others at Adaptec helped us understand SCSI details and the how the Adaptec device drivers work. Bill Courtright, Stan Skelton, Richard Vanderbilt, Mark Regester of Symbios Logic generously loaned us an array, host adapters, and their expertise. Brad Waters, Wael Bahaa-El-Din, and Maurice Franklin shared their experience, results, tools, and hardware laboratory. They helped us understand NT performance issues, gave us feedback on our preliminary measurements. Will Dahli helped us understand NT configuration and measurement. Don Slutz and Joe Barrera gave us valuable comments, feedback and helped in understanding NT internals. 9. References [Custer1] Helen Custer, Inside the WindowsNT"! File System, ISBN 1-55615-481, Microsoft Press, Redmond, WA. 1992. [Custer2] Helen Custer, Inside the WindowsNT"! File System, ISBN 1-55615-660, Microsoft Press, Redmond, WA. 1994. [Nagar] Rajeev Nagar, Windows NT File System Internals: A Developer s Guide, ISBN: 1-565922-492, O Reilly & Associates, 1997. [Richter] Jeffrey Richter, Advanced Windows: The Developers Guide to the Win32"! API for WindowsNT"! 3.5 and Windows 95. ISBN 1-55615-677-4, Microsoft Press, Redmond, WA. 1995. [Schwaderer & Wilson] W. David Schwaderer, Andrew W. Wilson Jr. Understanding I/O Subsystems, First Edition, ISBN 0-9651911-0-9, Adaptec Press, Milpitas, CA, 1996. [SCSI] ANSI X3T9.2 Rev 10L, 7-SEP-93. aka: the SCSI-2 Spec. American National Standards Institute (now called NIST), http://www.ansi.org. [Worthington] Bruce L. Worthington, Gregory R. Ganger, Yale N. Patt, and John Wilkes. On-Line Extraction of SCSI Disk Drive Parameters, Proceedings of ACM Sigmetrics, May 1995, pp. 146-156. Appendix: Benchmark program structure NT supports several mechanisms for asynchronous IO. The benchmark application used in this study uses ReadFileEx(), WriteFileEx(), and IO completion routines. The code is very similar to the sample in Figure 21. That program keeps eight asynchronous requests outstanding at any given time. When an IO completes, the completion routine simply issues another request into the same buffer until the end of file is reached. Rather than start with that complicated program, we first show the simpler routines to do synchronous reads, unbuffered IO, and event-based asynchronous reads. Richter's book has an excellent tutorial on these issues [Richter]. The simplest code to sequentially read a file is shown in Figure 18. Code that includes error handling is on the web site at  HYPERLINK "http://www.research.microsoft.com/barc/Sequential_IO/" http://www.research.microsoft.com/barc/Sequential_IO/. The code in Figure 18 issues a series of 64KB requests and refills the single buffer, cBuffer, until reaching the end of file. The file system prefetches and buffers all data. When requests arrive, they are serviced by copying the data from the file system cache. All application requests are synchronous. The ReadFile() call does not return until all the necessary data has been read from disk into the file system cache and then copied to the application buffer. File system and disk controller prefetching creates pipeline parallelism. If the application request size were smaller, the file system would coalesce the sequential requests into 64KB requests to the disk subsystem. The FILE_FLAG_SEQUENTIAL_SCAN tells the file system that it can aggressively age these pages from the buffer pool.  The simplest code to do unbuffered sequential file writes is shown in Figure 19. Code that includes error handling is on the web site at  HYPERLINK "http://www.research.microsoft.com/barc/Sequential_IO/" http://www.research.microsoft.com/barc/Sequential_IO/. VirtualAlloc() creates storage that is page aligned and so is disk sector aligned.   There are two disadvantages to completion routines. First, there is only one execution thread. The completion routine executes only when the primary thread waits. This is not a concern for the uni-processor system used in this study, but the benchmark will not take best advantage of additional processors on a multi-processor system. Second, invoking some system calls from within the completion routine can cause stack overruns. In particular, invoking ReadFileEx() from within the completion routine can cause the completion routine to be re-invoked whenever other previous IO request have completed. This intermittent load-related failure can occur with large buffer depths and relatively short IO requests. Alternative better design uses either events or IO completion ports. On a multi-processor, it may be appropriate to use multiple threads. Deep application buffering with very large buffer sizes can also cause system-tuning problems. During the time that an IO request is pending, the system locks down the physical memory comprising the buffer. This can cause memory pressure on other applications. In the extreme, IO requests will fail with reported error of WORKING_SET_QUOTA_EXCEEDED. The failure is not actually a process working set limitation. Rather it indicates that the memory allocated to the kernel and locked down for in-progress IO requests has exceeded an NT threshold. The online samples at the web site contain extended programs that include error handling.  By default, ftdisk binds volume sets in increasing device order. This caused the first and second stripe chunks to be on the first SCSI bus and the third and fourth steps to be on the second SCSI bus.  The command is of the form format e: /fs:ntfs / a:64k to create an NTFS 4.0 file system with 64KB allocation. Draft Sequential IO Paper  PAGE 21  DATE \@ "MM/dd/yy" 07/04/99  EMBED MSDraw.Drawing.8  Figure 1 The storage sub-system An application makes requests of the file system, which transfers them across the PCI bus to a SCSI host-bus adapter that sends them across the SCSI bus to the disks(s). For each component, the upper numbers give the advertised speed, the lower number gives the actual speed in this application reading a single disk.  EMBED Equation.3  #include #include int main() { const int iREQUEST_SIZE = 65536; char cRequest[iREQUEST_SIZE]; unsigned long ibytes; HANDLE hFile = CreateFile("C:\\input.dat", // name GENERIC_READ, // desired access 0, // share mode (none) NULL, // security attributes OPEN_EXISTING, // pre-existing file FILE_ATTRIBUTE_NORMAL // flags & attributes | FILE_FLAG_SEQUENTIAL_SCAN, NULL); // file template while(ReadFile(hFile,cRequest,iREQUEST_SIZE,&ibytes,NULL) ) // do the read { if (ibytes == 0) break; // break on end of file /* do something with the data */ }; CloseHandle(hFile); return 0; } Figure 18 Basic Sequential Read Code: Read all of a file synchronously using the file system and a single 64KB request buffer. To optimize disk request coalescing and minimize cache pollution, the program requests the FILE_FLAG_SEQUENTIAL_SCAN attribute. To bypass the file system cache entirely and save the extra memory copy, the program might add the FILE_FLAG_NO_BUFFERING (in which case the cRequest would have to be aligned to the disk sector size.)  EMBED Excel.Sheet.8   EMBED Excel.Sheet.8 Figure 12 File Allocate/Extend Behavior When a file is being extended (new space allocated at the end), NT forces synchronous write behavior to prevent requests from arriving at the disk out-of-order. C2 security mandates that the value zero be returned to a reader of any byte which is allocated in a file but has not been previously written. The file system must balance performance against the need to prevent programs from allocating files and then reading data from files deallocated by other users. The extra allocate/extend writes dramatically slow file write performance..  EMBED Excel.Sheet.8 Figure 13 Alignment Across Disks in a Stripe Set The performance of a file aligned to the stripe chunk is compared to a file that is mis-aligned by 12KB. If requests split across stripe set step boundaries, read performance can be reduced by nearly 20% and writes by 15%. The effect is more pronounced with 8 requests outstanding because there is more activity on the SCSI bus and more contention.  EMBED Excel.Sheet.8 Figure 14 Variation Across Disk Surface The media bandwidth at the inner disk tracks is up to 30% lower than the bandwidth at the outer zone. The experiment shows read rate for 64KB synchronous unbuffered reads. Figure 15 Variety of Adapter/Controller Configurations Striping can be performed in the host or within a dedicated controller. That controller can be located on the SCSI adapter or located with the disk drive array and connected through a normal SCSI adapter.  Figure 4 Processing Cost of Unbuffered Sequential IO The larger the request size, the more the cost of the request can be amortized. Requests of 64KB are necessary to reduce the load to less than 5%. Three drives running independent sequential streams of 2KB requests would consume 96% of a 200 MHz Pentium Pro system.  Figure 7 Throughput of reads and writes striped across four Fast-Wide SCSI disks on one controller using request pipelining and no file system caching. The graphs show sequential disk throughput for 1, 3, and 8 outstanding requests. Asynchronous requests do improve read performance SCSI bus is better utilized. Writes are still substantially slower than reads. At large request sizes multiple outstanding requests has throughput comparable to WCE.  EMBED Excel.Sheet.8 Figure 9 Four fast disks on one or two SCSI busses. Parallel busses add bandwidth and so avoid bus saturation. Each disk can run at full speed when they are spread across two busses. Reading and writing is done with three-deep asynchronous requests. WCE is enabled on the drives. Each disk can deliver about 6 MBps, so four disks should be able to deliver 24MBps. One Fast-Wide SCSI bus saturates at 16MBps. When the disks are split between two busses, throughput approaches the expected 24MBps. If one more disk is added to each controller, peak throughput increases to 32MBps. Ultra-SCSI busses show similar behavior, except that each bus can carry twice the bandwidth (30MBps) and the newer drives have 50% greater media transfer rates.  Figure 17 Host-based vs. Controller-based RAID5 read and write. 4-Ultra disks with WCE disabled were configured as a RAID5 stripe set both using host-based NT fault-tolerant RAID and using a RAID5 array. The read performance of the NT file system compares to the controller's performance. For writes, host-based solution is competitive on small requests, but for requests of 32KB and beyond, the host-based solution consumes more processor doing software checksums and consequently has lower overall throughput. Table 1 All the measurements were done on the following hardware base (unless otherwise noted).ProcessorGateway 2000 G6-200, 200 MHz Pentium Pro 64-bit wide 66Mhz memory interconnect 64MB DRAM 4-way interleave 1 32bit PCI busHost bus adapter1 or 2 Adaptec 2940UW Ultra-Wide SCSI adapters (40MBps)DiskSeagate Barracuda 4InterfaceCapacityRPMSeekTransfercacheFast-Wide (ST15150W) SCSI-2 Fast wide ASA II 4.3GB 7200Avg 4.2ms range 1-17Externalinternal 1 MB20 MBps5.9 MBps to 8.8 MBpsUltra-Wide (ST34371W) SCSI-2 Ultra wide ASA II 4.3GB7200Avg 4.2ms range 1-1740MBps10 MBps to 15 MBps 0.5MBSoftwareMicrosoft Windows NT 4.0 SP3 NT file system and NT's ftdisk for striping experiments.  Figure 6 Throughput of a Fast-Wide SCSI disk using request pipelining and no file system buffering. The graphs show sequential disk throughput for 1, 3, and 8 outstanding requests. Asynchronous requests do not improve read performance because the disk controller is already prefetching. Asynchronous requests do improve write performance. Indeed, at large request sizes, asynchronous requests match the performance of WCE.  Figure 5 Ultra drive performance These charts combine Figures 2, 3 and 4 for an Ultra-SCSI drive. Small buffered reads show a double benefit: greatly increased throughput and slightly less processor cost. Large buffered reads have significant processor cost and no performance benefit. Without WCE, buffered writes have superior performance until 64KB, but incur large processor costs due to data copying for filesystem caching. Enabling WCE always improves throughput. The Overhead graph shows that buffering has high processor overhead for writes and for large reads.  Figure 3 Single Disk Throughput of Unbuffered IO for Fast-Wide and Ultra disks The larger the request size, the higher the throughput. Requests above 8K achieve the maximum read throughput for a single disk. Write throughput is dramatically worse (left chart). Write throughput increases gradually because writes do not benefit from prefetching. The chart on the right shows that if disk-controller write caching is enabled (WCE), write throughput is comparable to read throughput, but the Fast-Wide drive requires larger requests to achieve full bandwidth. The newer Ultra drive has over a 100% advantage for small transfers, and a 50% advantage for large transfers due to the higher media transfer rate. Without WCE, sequential write behavior is horrible below 64KB requests.  EMBED Excel.Sheet.8   EMBED Excel.Sheet.8   Figure 8 Throughput vs. disk striping for a three-deep Fast-Wide SCSI array. As disks are added to the strip set, throughput increases until the SCSI bus saturates. Fast Wide is advertised at 20MBps but delivers about 16MBps. Ultra-Wide is advertised at 40MBps but saturates at about 30MBps for reads (not shown) and 20MBps for writes (see Figures 10, 13). WCE is enabled in this experiment, but even so, writes have consistently lower throughput than reads. #include #include // 64-bit increment #define IncrementOffset64(Offset,Increment) *((PULONGLONG) &(Offset)) += (LONGLONG) (Increment) //-------------------GLOBALS------------------------------------------------------------ const int iDEPTH = 8; // max depth of IO pipeline const int iREQUEST_SIZE = 1 << 16; // request size is 64KB HANDLE hFile = NULL; // the file HANDLE hDoneEvent = NULL; // mainline waits for this event once pipe is full int iOutstandingIOs = 0; // how many IOs are in progress? LPVOID lpData[iDEPTH]; // Pointers to request buffers OVERLAPPED Overlap[iDEPTH]; // Overlap structure for each buffer //-------------------HELPER ROUTINE----------------------------------------------------- VOID WINAPI IoCompletionRoutine( // Complete an asynch I/O DWORD dwError, // I/O completion status DWORD dwTransferred, // Bytes read/written LPOVERLAPPED pOverlap) // Overlapped I/O structure { int i = (int) pOverlap->hEvent; // index is in unused (overloaded) event cell //------------------------------------------------------------------------------- // If =not at end-of-file, issue the next IO. // Note that by issuing an IO from within the routine, we risk recursion. // This may overflow the stack. The paper's benchmark program had this feature. // This is a common error. It appears in several online and reference examples. // A better design posts an event for the parent routine and lets the parent issue // the next IO. IncrementOffset64(Overlap[i].Offset,(iREQUEST_SIZE*iDEPTH)); // set next address if (ReadFileEx(hFile, lpData[i], iREQUEST_SIZE ,&Overlap[i],IoCompletionRoutine)) return; // Else,if at EOF or error, start shutdown. iOutstandingIOs -=1; // decrement count of IOs if (iOutstandingIOs == 0) // if all complete SetEvent(hDoneEvent); // signal main line waiter return; // }; //-----------END OF HELPER ROUTINE -------------- //-------------------MAIN ROUTINE------------------------------------------------------ void main (void){ hDoneEvent = CreateEvent(NULL, FALSE, FALSE, NULL); // event parent waits on DWORD FileFlags = FILE_FLAG_SEQUENTIAL_SCAN | FILE_FLAG_NO_BUFFERING | FILE_FLAG_OVERLAPPED; hFile = CreateFile("C:\\output.dat", // name GENERIC_READ, // desired access 0, // share mode (none) NULL, // security attributes OPEN_ALWAYS, // create if not already there FileFlags, // flags & attributes NULL); // file template for (int i = 0; i < iDEPTH; i++) { // launch an IO for each request buffer memset(&Overlap[i], 0, sizeof(Overlap[i])); // zero the structure Overlap[i].hEvent = (void *) i; //readx, writex ignores hEvent, overload it. lpData[i] = VirtualAlloc(NULL, iREQUEST_SIZE, MEM_COMMIT,PAGE_READWRITE); IncrementOffset64(Overlap[i].Offset,(iREQUEST_SIZE*i)); // set next address if (! ReadFileEx(hFile,lpData[i], iREQUEST_SIZE, &Overlap[i],IoCompletionRoutine)) break; // break if read past eof iOutstandingIOs +=1; // } WaitForSingleObjectEx(hDoneEvent,TRUE, INFINITE); // wait for all IO to complete CloseHandle(hFile); // also free events and buffers return; }; Figure 21 Asynchronous reads using IO completion routines to issue the next IO. The code above is fairly close to the IO model of the driver program used for the experiments in this paper. It fills the pipeline with IOs to the requested depth and then the IO completion routines issue the next read or write request. This program stops by noticing that a read beyond the end-of-file returns a zero status code.  EMBED Word.Picture.8  Figure 16 Comparison of Controller-Based, Array-Based, and Host-Based Striping. The array-based solution performs significantly better. The controller-based configuration gave good performance only for small (2KB and 4KB) writes. Host-based striping gives good performance at significantly less hardware cost. Note that the array and controller solutions may not have been optimally tuned for large accesses.  Figure 10 Effect of file system caching File system caching provides extra parallelism to a three-disk array by coalescing smaller writes into 64KB transfers. The graphs show the throughput of a three-drive array using unbuffered IO (WCE is enabled) and 1 to 3 deep application request depths. Read throughput is increased until 64KB. #include #include int main() { const int iREQUEST_SIZE = 65536; LPVOID lpRequest = VirtualAlloc(NULL,iREQUEST_SIZE,MEM_COMMIT,PAGE_READWRITE); unsigned long ibytes; int i=0; DWORD FileFlags = FILE_ATTRIBUTE_NORMAL | FILE_FLAG_SEQUENTIAL_SCAN | FILE_FLAG_NO_BUFFERING; HANDLE hFile = CreateFile("C:\\output.dat", // name GENERIC_WRITE, // desired access 0, // share mode (none) NULL, // security attributes OPEN_ALWAYS, // create disposition FileFlags, // unbuffered access requested NULL); // file template do // write 100 64KB blocks {/* fill buffer with data */ WriteFile(hFile, lpRequest, iREQUEST_SIZE, &ibytes, NULL); } while(i++ < 100); CloseHandle(hFile); VirtualFree(lpRequest, iREQUEST_SIZE, MEM_COMMIT); return 0; } Figure 19 Basic Sequential Unbuffered Write Code: This program synchronously writes ten 64KB blocks to a file. Opening the file with the FILE_FLAG_NO_BUFFERING flag requests that buffering be suppressed. This bypasses the file cache entirely and so avoids polluting it and saves the extra memory copy. All application write requests are synchronous. The WriteFile() call does not return until all the necessary data has been written to disk. Unbuffered IO requires that the request buffers be disk-sector aligned and that writes be in multiples of disk sectors. The program uses VirtualAlloc() to get storage that is page-aligned and hence sector-aligned. #include #include #include // 64-bit move allows compiler to optimize coding #define Move64(Destination, Source) \ *((PULONGLONG) &( Destination)) = *((PULONGLONG) &(Source)) int main() { const int iDEPTH = 8; const int iREQUEST_SIZE = 1 << 16; unsigned long ibytes; DWORD FileFlags = FILE_ATTRIBUTE_NORMAL | FILE_FLAG_NO_BUFFERING | FILE_FLAG_OVERLAPPED; ULONGLONG HighWaterMark = 0; struct { // array of request buffers and overlap structs LPVOID lpRequest; OVERLAPPED Overlap; } Req[iDEPTH]; for (int i = 0; i < iDEPTH; i++) { memset(&Req[i].Overlap, 0, sizeof(Req[i].Overlap)); Req[i].Overlap.hEvent = CreateEvent(NULL,FALSE,FALSE,FALSE); Req[i].lpRequest= VirtualAlloc(NULL, iREQUEST_SIZE, MEM_COMMIT, PAGE_READWRITE);} HANDLE hFile = CreateFile("C:\\output.dat", // name GENERIC_WRITE, // desired access 0, // share mode (none) NULL, // security attributes OPEN_EXISTING, // preallocated file FileFlags, // overlapped async NULL); // file template for (i = 0; i < 100; i++){ // Do 100 writes of 64KB each int j = i % iDEPTH; // j is the request modulus (08 if (i >= iDEPTH) // if past startup stage, wait for previous {WaitForSingleObject(Req[j].Overlap.hEvent, INFINITE);} // request to complete memset(Req[j]. lpRequest , i, iREQUEST_SIZE); // use the buffer, eg. Fill it Move64(Req[j].Overlap.Offset, HighWaterMark); // set file offset to write WriteFile(hFile, Req[j]. lpRequest , iREQUEST_SIZE, &ibytes, &Req[j].Overlap); HighWaterMark += iREQUEST_SIZE; // } CloseHandle(hFile); // should also free buffers and event handles return 0; } Figure 20 Asynchronous sequential IO done with Events as the completion mechanism. The application asynchronously writes a hundred 64KB request buffers. It fills the IO pipeline eight deep (iDEPTH deep). Once eight requests have been launched, the program waits for the oldest IO to complete by waiting for the associated event. When that IO completes, the thread issues the next IO using that buffer, unless no additional IO is desired. To WCE or not to WCE? Write caching improves performance but risks losing data if the caches are volatile. If the host or the disk controller fails while uncommitted data is in a non-volatile cache, that data will be lost. Also, controller caches may be lost by SCSI bus resets [SCSI]. Battery-backed RAM can be used to preserve a cache across power fails; some controllers commit pending data in their cache prior to responding to a SCSI reset. Typical UNIX semantics promise that a file writes will be written to non-volatile storage within 30 seconds. NT flushes its cache within 12 seconds or when the file is closed (unless it is a temporary file). The file system buffering risks are much higher than the disk cache risks since disk cache sector lifetimes are generally very short. Still, file systems and database systems assume that once a disk write completes, the data is safe. For that reason, it is dangerous to use WCE for database log files or for the NTFS directory space (both depend upon a write-ahead-logging scheme). There is always a risk of corrupting the volume if NTFS metadata is lost from the WCE cache. As shown in Figure 6, large asynchronous requests can match the throughput of WCE.  Figure 2 Out-of-box Throughput of Ultra drives File system pre-fetching causes reads to reach full media bandwidth at small request sizes, although there are difficulties at very large request sizes. Disk Write Cache Enable (WCE) approximately doubles sequential write throughput. Processor cost (milliseconds per megabyte) is graphed at the right. Writes are more expensive than reads, overhead is minimal for requests in the 16KB to 64KB range.  EMBED Word.Picture.8 Figure 11 Summary of Bottlenecks - PAP (peak advertised performance) vs. RAP (real application performance) Ultra disks saturate at the media limit of 9MBps. Additional disks may be added to take advantage of request parallelism on a SCSI bus. Three drives saturate the bus and adapter. By adding busses and adapters, and three drives, throughput can grow to saturate a PCI bus. High-end systems support multiple PCI busses, and so can saturate the memory bus. Using memory resident files, our platform saturates at about 142 (read) or 93 (write) MBps due to main memory copy speeds. *0602"#$:;ABhijxy{| xy+,2:O5_TnQrsҶҨ56>*6jUmHnHu B*phj>*B*Uphjn>*B*Uphj>*B*Uph >*B*phj>*B*Uph0JjU jUB*CJhphCJ8np,.0246\JL0$a$$a$?>R wxXYUV:_TQ() 0^`0$a$s| !!!!##7#>######$$!$"$)))O)[))))))000001*1;111c2|233S8T888FFFFPP QQQQXX"\#\ jm CJOJQJ B*phCJ CJOJQJ:CJOJQJ0JjU jU56OJQJ6jUmHnHu5G! ! $!$%%))v,w,?/@/^2_23355S8U888@:A:;;<<<@@+B,BB CCoF & F EƀpfF & F EƀpfC#DD$EFFHHJJNNOqommmmmmmmmF & F EƀpfF & F Eƀpf OOQQXSYS*U+UWWXX\Z]Z<\^]`]o]]F & FEƀpf]]o^^q*F & FEƀpfF & FEƀpfF & FEƀpf^___`E`q*(F & FEƀpfF & FEƀpfF & FEƀpfE`F`aaYdZdresegg'j(jkknnqprpqqssSuUuww z!z7}8}#\QeResetegg3k9kkkSuUuww!z"zzz̀̀VWDJȎԎđƓ̓Γ,389crwª紭j5UmHnHu jU CJOJQJ5CJOJQJ CJOJQJ CJOJQJ j0JUjUmHnHuB*OJQJph65%jB*OJQJUmHnHphu56=8}̀΀kl89:V͍̍noCEƀ&oÑđ͓$ $$Ifa$ $$If]a$^$$IfTl4; #!0|4 la$If͓Γ"&';?C~xoo~xoo~txoo $$Ifa$$If$$IfTlFg! 0    4 la CDpsvw~xoo~xoo~txoo $$Ifa$$If$$IfTlFg! 0    4 la bc+,~xoo~mmmmmmm $$Ifa$$If$$IfTlFg! 0    4 la ,vx¢̤ͤ7889:J]q $$$Ifa$1$$Ifl44 lal $$$Ifa$qrw}ªD~~~~ $$$$Ifa$ $$$Ifa$j$$Ifl4\v~ v~ 4 lalªêǪ̪Ъ\QB3$$ #C$Ifa$$$ ;C$Ifa$ $$$Ifa$$$Ifl4֞v~ \ rv*84 lalЪժڪߪ$$ oC$Ifa$$$ ZC$Ifa$$$ vC$Ifa$$$ aC$Ifa$\QB3$$ #C$Ifa$$$ ;C$Ifa$ $$$Ifa$$$Ifl4֞v~ \ rv*84 lal$$ oC$Ifa$$$ ZC$Ifa$$$ vC$Ifa$$$ aC$Ifa$ \QB3$$ #C$Ifa$$$ ;C$Ifa$ $$$Ifa$$$Ifl4֞v~ \ rv*84 lal!&$$ oC$Ifa$$$ ZC$Ifa$$$ vC$Ifa$$$ aC$Ifa$&'*/3\QB3$$ #C$Ifa$$$ ;C$Ifa$ $$$Ifa$$$Ifl4֞v~ \ rv*84 lal38=BG$$ oC$Ifa$$$ ZC$Ifa$$$ vC$Ifa$$$ aC$Ifa$GHKPU\QB3$$ #C$Ifa$$$ ;C$Ifa$ $$$Ifa$$$Ifl4֞v~ \ rv*84 lalUZ_di$$ oC$Ifa$$$ ZC$Ifa$$$ vC$Ifa$$$ aC$Ifa$ijnsx\QB3$$ #C$Ifa$$$ ;C$Ifa$ $$$Ifa$$$Ifl4֞v~ \ rv*84 lalx}$$ oC$Ifa$$$ ZC$Ifa$$$ vC$Ifa$$$ aC$Ifa$\QB3$$ #C$Ifa$$$ ;C$Ifa$ $$$Ifa$$$Ifl4֞v~ \ rv*84 lal$$ oC$Ifa$$$ ZC$Ifa$$$ vC$Ifa$$$ aC$Ifa$ū\QB3$$ #C$Ifa$$$ ;C$Ifa$ $$$Ifa$$$Ifl4֞v~ \ rv*84 lalū˫ѫ׫ݫ$$ oC$Ifa$$$ ZC$Ifa$$$ vC$Ifa$$$ aC$Ifa$ݫޫ߫xzɯʯ\ZZZZZZZZZ$$Ifl4֞v~ \ rv*84 lal дѴǷȷη۷ $$$Ifa$Z$$IfTl4%^&04 la $$$Ifa$ DJƷȷ ?NӾԾ2CQ]p~V\lmXYZdfCJj5UmHnHu&j56CJOJQJUmHnHu j0JUOJQJ%jB*OJQJUmHnHphu6 CJOJQJjUmHnHuB*OJQJph5 CJOJQJ5CJOJQJ6CJOJQJCJ4 zooooo $$$Ifa$$$IfTl4F! M!, 0 H    4 la #()7U|JJJJJUJ $$$Ifa$$$IfTlr! M!,80 H4 la7<AFKLU9x$$IfTlr! M!,80 H4 la $$$Ifa$$$ !$Ifa$UZ_dijqw|Jt$$IfTlr! M!,80 H4 la $$$Ifa$|J$$IfTlr! M!,80 H4 la $$$Ifa$Ǹ̸͸ٸUJJJJJUJ $$$Ifa$$$IfTlr! M!,80 H4 laٸ޸Jt$$IfTlr! M!,80 H4 la $$$Ifa$ %+J$$IfTlr! M!,80 H4 la $$$Ifa$+,8=BGLMVUJJJJJUHJ $$$Ifa$$$IfTlr! M!,80 H4 laVXZ\^_lnpJX$$IfTlr! M!,80 H4 la $$$Ifa$prtu|Jp$$IfTlr! M!,80 H4 la $$$Ifa$UJJJJJUJ $$$Ifa$$$IfTlr! M!,80 H4 laJHH$$IfTlr! M!,80 H4 la $$$Ifa$ӾԾRS"qooomooooooF & FEƀpfF & FEƀpf "#4klxyo}~XYf ! hifg=>~tV4>"bm6RS UV!wxFGH}~s} j0JUjpU CJOJQJOJQJ0JjU jUCJ CJOJQJ 6OJQJOJQJ CJOJQJ6jUmHnHuD^_oF & FEƀpfF & FEƀpf|{(q*F & FEƀpfF & FEƀpfF & FEƀpf(Oq*F & FEƀpfF & FEƀpfF & FEƀpf,->S(DqoooooomomF & FEƀpf F & FEƀpf  D&fYv\]w01TU 0^`0 0^`0=>?@ABCDEFGHIJKLM$a$  !% !%23;<Mop          8 K S              jTBUj[8 UVmHnHuCJ CJOJQJ CJOJQJ jz?EHUj 8 UVmHnHu jU jM5Uj8 UVmHnHu j5U50JmHnHu0J j0JUOJQJ j0JU2   5 6 A e       D r     < r     -D M              xk$$Ifl`0^@ 04 lal$If $$Ifa$ -D M        &'()\  "\_)q r  " j5U jоU6 j5U j>UjI7 UV j5U jr5U j"qU jeUjA7 UV j/[Uj۶ 8 UV5 jU jPUj}8 UV=*i$$Ifl0   04 lal$If $Ifk$$Ifl+ 0 H b04 lal  d&$$d%d&d'dNOPQa$  k$$Ifl0^#^$ 04 lalid$a$i$$Ifl0$04 lal$If#$d%d&d'dNOPQ G$If#$d%d&d'dNOPQ&$$d%d&d'dNOPQa$ GHR{ $If$IfX$$Ifl4&&04 lal3=FJOX^( $$Ifa$$Ifi$$Ifl0&04 lal ^_` $If$$Ifl4"ִH&#&`b80    4 lal`ju $$Ifa$ $$Ifl4 H&#& `b`8```8`0$$$$4 lal $$Ifa$$If  $$Ifl4 H&#& 8 0$$$$4 lal &+/5;@GORZ[a $$If^a$$$If]^a$ $$Ifa$$Ifab $$Ifl4 H&#& b880$$$$4 lalbkd&$$d %d&d'dN OPQa$k$$Ifl30&04 lal$Ifo p q s """""%%%%%%%&''#$d%d&d'dNOPQ$a$  #$d %d&d'dN OPQ""""""#%%%%%%%%%%%%%&M&'r5577.7/70717277l8m88888):====#>9>? ????CJ CJOJQJ CJOJQJ CJOJQJ j5UB*OJQJph jUjU%8 UVmHnHu jhU CJOJQJ j5U jUj7 UVmHnHu jbUj7 UVmHnHu jU5 j5U2''''(r(()<)`)))&*l**+I++++9,,,-f--.".#. -D M #.v... /C/y/////S0e0001N1111;2v2222@333*4 -D M *4444445 5^5j5q5r57727m8888(:):<:Q:R:]::: -D M $a$ -D M ::::@;j;k;;;;<I<~<<<<<&=@=A=V=====0@1@-D M ` -D M ??0@1@2@JARABCeCfCEFFFFFFFFoGpGqGG2H8H9IOIN N N:NOOOOOO^P?R jtSUj&8 UVmHnHu jU jDU5CJOJQJhB*CJOJQJhph CJOJQJB*CJOJQJhphCJOJQJhCJ'1@2@E@Z@p@q@@@ A AA/ATAkAAAA6BMBdBvBwBBBCdC T$ @@@@@@-D M dCfCCCD=DDDDD0EkEEFRFFFGGGbGmGpGqG+I,I T$ @@@@@@-D M  -D M ,I-I.I/I0I1I2I3I4I5I6I7I8I9IOIMMM NOOOOOOOO$a$ -D M  $-D M a$O;RR?R /R / =!'"'#$%`!kZ FklDD`XkiPx]RO@~w NXAU  au81pLh C?L'3!;߅l{}w1Hj'5)xٔ3Vӭ /aѠIeFWcX0JMpI.$?,&ԅ0sS:?Ox;OQ_?!S|dE-V|wF~݄0gZIWIl[ъݚ@QzDdSARwYu`[X*B%c{> :?N,{N)D %\T숹hKKe^bxAٱ(;i\{Ky> S,#C랧_mĔ$)ug!g4Lxg캿XY82}_T{$1jxm\yv2SN"n"oL.߮qEcJF~ 2ԒDyK yK Nhttp://www.research.microsoft.com/barcDyK yK >mailto: VanIngen@Microsoft.comDyK yK 6mailto: Gray@Microsoft.comDyK yK 0mailto: riedel+@cmu.eduDyK yK lhttp://www.research.microsoft.com/barc/Sequential_IO/DyK yK lhttp://www.research.microsoft.com/barc/Sequential_IO/DyK yK lhttp://www.research.microsoft.com/barc/Sequential_IO/-:Dd B  S A? 29;nz$s9w`!k9;nz$zؒ:L"99xxUUڶס7P"JAQ)!@b(NJB/p{^_]{퓝}Nv>]wg]BRQRWjWթηa٩SVm >RUw /sduiuk܎WI> Wzg>ʥMscʾRJ!:z5[u%k*z*3s[VSTϧku113e*z4x?5')KLWGjZ:6~측:?0@mU<Bu{e:6!qRF WVE9fu*XxSېcKm:gu*0^_jZ ŧ‘-PDfWϙY)Dz@RcR˪&-VME~UѯЯ>[=F8|[WϪӖW9DU6qgjzC=8r>w.Q5 ]JSmCϝO9SZ gJ >f^t(eV}3Ui:cuI1k_W;oʷ.%FjY;e~b" +7RMCYcUqJbA :6mO)! 'jCٶ;tcn1qn;zpIZO<䯆q5]P4Y1"`gGLmR{ QU&RM‘oMPdAפSHZĶjbk,JƘ3VJUU)ha R$KM=jIIeNdϱS#KzYI^h$O=4wjwvslqF6OƿFFDIƕzjjbܫQhM\4~k4d[Iؖ8WR_l] 巿+?~;Sʛ߆~+eԤ~;XV'TߞR%~߆mUko\C<ҟVG 0( A0Pcl?pppp; \9p4Z4*C rB#h WB 6\͠;J. ޥ3dlٳePC kY-~,FJ݆-lVbEUWר=kz}TٞZTu@ X Yn9MUC5Cu5Ԇ:p glAݭ, ۻD_^:*Ko|8ғxr }>]+hV#t&Dkt1ZD'X+7<36 㔌W2n%㘌gʡr;< ^8ݳSfQ0ʨ*56@O#~c8}ϋzjnT6s+ȜTeQ*JWvLmM&چZWk+RW̳l%=!<*~uM*nR` E{Қosϫ|J3?mdWkǜFAh *\[T윕[Kf?S.OcԵ9Z]ufȽ3FO'eTPƲK))ZIY- U2TSVaD]Oe+S<;KgguM ֯L[uI =&A=vҲ뇒ggl- bØVi~U+K(J=GU4P23 P¶.`s|ys( t`_ƥn_Y5k56e(\dT]%2ا^82 Z+PϵPap8/v.6h8N ˂΋*T+-jUv+[]iZatQ+-n]O0OD?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~     !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~Root EntryZ F)ƾ6Data  f!WordDocumentYHObjectPool\@&ƾ)ƾ_941006244#J F@&ƾ@&ƾOle Text  @&ƾ@&ƾCompObjV  !"#$%&'()*,1456789:;>ABCEFGHIJKLORSTVWXYZ[\]^adefhijklmnopsvwxz{|}~ Quill96 Story Group Class9qCHNKINK   TEXTTEXTFDPPFDPPFDPCFDPCSGP SGP SGDFSGDFINK INK BTEPPLC BTECPLC FONTFONT6PSTRSPLC TCONTENTS  Temp003019EscherCompObj +n System Bus 422 MBps 7.2 MB/s 133 MBps 7.2 MB/s 10-15 MBps 7.2 MB/s SCSI File System Buffers Application Data Disk PCI 40 MBps 7.2 MB/s *<N`v }# (}!(*:<LN^`tv     ii<NT,Times New RomanArial     FMicrosoft Draw 97 Drawing Escher DocMSDraw.Drawing.89q,)dh9BF @(  <  #  f5r  6Z]  r  6X[0 y r  6\  <  # ~1r  6]u K r   6H_} ` <   # (? r   6`) r   6a1#L ( <   # R r  68c@ 7 >R@ L   RL    zB~CyDEF%%~{s e8SN>`$nvyyuvYnA`+N8 t YA++AY u$ >S+eAsY{t~~LP@`T J  BCDEdFn!>Y}ojS:8zOidUu<!48@`;    B]C DE,F6   ] ] @` ? J  BCDEdFn" ?X-oD]zz_Hz3i"T= "   48@`O    B CZDE,F6 Z Z   @`O*Y J  BCDEdFnz] D--D ]y y_"H33H"_z 48@`O/  B^C DE,F6 YY Y Y Y \ ^\Y@`DJ  BCDEdFny]~Dk-U:   8Q"e3vH_y48@`?3  B CYDE,F6 U U UUUXYX U@`/ J  BCDEdFn%B]~skT;7|NkcVt>#48@`8    B`CDE,F6 `` @` ? J  BCDEdFn& C\.sE^{}bK|6k%V?$ 48@`M|    BC\DE,F6 \\ @`M([ J  BCDEdFn{^ E..E ^z|b%K66K%b} 48@`M/  B`CDE,F6 YYYYY^ `^Y@`FJ  BCDEdFnz^El.V; 7O%d6uKb|48@`?6  BC\DE,F6 UUUUUZ\ ZU@`/    ZB:CfDEFLaa4+$+ ++++v+H+++++r+T+=+.+(+(&&++++++++u+\+C+.++ ++++ "-8j@QH=z(hVUB/>\w,Lw "9M`p}ff"=Zx,:4+@`*  ! BC DEF**  1 O t % S       S%tO1   VX@` $  " B CBDE0F:  B B    @`   # BC DE0F:    @`   $ B CBDE0F: B = =8=@A@ =B@`   % B8C DEF**    , @ U n   + 8 8+nU@, VX@`  R & "B^CDEhFrYVNF0;N0n$  ,8pCPN2V^[^][XVY68@`<  ' BCEDE0F: E=@`u9* ( BC^DETF^^^@/BUhXz*r(`VM9' >\\^,0@`} * ) B|CDETF^||Q3yf P 6  6P j/Q|||,0@` g  * B'C DEF**'" |dJ2  2 J d |     " " %'%"'VX@`g   + B CuDE0F: k p pupsts pk@`   , B.C DE0F: $) ) .) ,.,)$@`   - B CuDE0F: u u  @`   . B}C DEF**txjVA( {`F0  0 F ` {  ( A V j x |x {}{xtVX@` /  / BCDE0F:   @`  .  0 B%CSDEF&LS%RS@`}P 1 BCDEF"@`]a 2 BCfDE0F: f^@`yA] 3 BCTDE0F: LT@`{I 4 BCDE0F:    @`L 5 BCDE0F: @`L= 6 BUCmDEF"kmULik@`R7 7 BCDEF"@`RZ 8 ZBCDEF!!crQ2 wjc\QC2" 2Qr#>cDH@`B G" R 9 "BkCDEhFri_``7`V[vP@%)FXcxiVk7kj`jhda_i68@`= M& R : "BlCDEhFr &6FVclc] TF6&68@`> K[ R ; "BkCDEhFr  &6GVckc] TG6&   68@`|> [ R < "BlCDEhFrgiE+q Q 2  2Qs%@gigjllig68@`{B &  = jBCbDEF##`)b6`B]LWUO\D`9b-b#`\V OG>5+"  $-7BQ`o~ .`)HL@`\A * > B:C>DETF^>> ><$8-14&7:7/0/,"'* /4 666>,0@` E * ? B1C;DETF^  '/5&91;13(1 ,(!  ,0@`X E J @ B?C/DEdFn;;1' %// '! ) 1;;;>?>;48@`X R A "BaCDEhFra] Z R G8)   ) 8GRZ]Y]`a` ] a68@` B B C(DE0F: ($ $ $'('$(@`  C B4C DE0F: 4 4@`  b D 2BpCXDEpFzp@TPJC; 1%%0 9BJPTWXWUiKL;2&  p@:<@`c]  E B$CDE,F6 $@`=a3  F zBCDEF%%#4FVfuzqg\PA3#!/=JVaiprbyTC4#LP@`x/ E J G BCDEdFn'Gi4OmoS:'e G '    48@`x  H B$CDE0F: $ $#  @`_ I BUCHDE0F: UDQ@QHMDQHTGUDTAQ@UD@` _a J bBCDEF""#4FYlq]L<0% zfQ>, FH@`$   K zBCsDEF%%$3?IQX_ycffSh@i.iiiisss.s@qSpfnykgaYQE7(LP@`*9   L BCbDEF**   0 B U j ~%-8CQbbQ?2' ~jUB0 VX@`   9  M BCDE0F:    @`  . R N "BCDEhFriJ-{maUJ >+48*F!Udv68@`y^* O B7CDETF^),/H-g& %.5g7H1* ,0@`+b P BCDEF**~ l)]2N;AF4Q)\gr ~p cVK#?.5:*J!YhzVX@`u- Q BCEDE0F: @=EBEDB?=@@`x<< S # l t r T 6dt   r U 6et #  (@ l >6  pl >6  V BCDEHFRRR k2BH_yP *GleI)   7^%HiMbv{$c2LA6N] jxv@^uG6'  [2lK-@`>R W B CDEF22S @'#6Kb{f9 $d?C[%t .Nt}c2If01^~^>zsmogRa8[ Y TSfh@`s X BC{DEHFR{O[hxv-[@>R"bp{&(@` ] Y BCDEF&W\@`i1x  Z zB4CDEFr?4$ @`H  [ zB@CDEFr?8@ @`P  \ zBkCEDEFkf*+E @`a4 ] BjC#DEHFRVC#j]N >- '4 C#&(@`1* ^ BCDETF^epKui_[[]b6hPnep,0@`b^s _ BCDE<FFOOo~ {juSo>i-e!b[M:# '4AN]n "&*-28 ?HR_of[SMJHC=6v/^)M%C"7 ."&&#/#8&?*E0H8JJOaU}\cimpsspfo@`!=A  ` ZBrCrDEFAAr=_0G * j>hP<(rR 5( #3EXnp[F2-ES*cFth)Rw(;M\irb#O:;S%m)q?aSQeEr=@`l &  a BCDEFݿ))]:zfQ?c-D) :b*6AMWf z ,M l TX@`   b rBCDEFݿ  @`i  i  c rBCDEFݿ @`  d BC"DE0F:ݿ ="gifgOc:Z'M:  =@` N  e BCDEHFRRRv}WX62 |a\@?& {Y8 '/6?FkLMS5W] `veSB0  $'/:9MBcL{T\dkr{,A[z?i7SqrbRC<4\&y@`  f B#CVDEF22#sW:gE"rS9"fFU#i:Tr0W5Sn9VOE;/"7Tq#fh@`_J g BCZDEHFRZVL@3&  !'=1Z:vCMTZ&(@`BR h "B#CyDEhFrZZ ,Hfd>;a`C('Ca #+4B=iDMT[afj ##3 BN[eoxjR9!  q['E40ANZdlswyvsmgdaBYQI@7.h&H, @`"EE i BrC$DEF22 3LfiH&<waY;$rM`[Jn0]88[~$jQ 7cI2 fh@`b{ j BCdDEHFRdhs $+6c@CL&V]d&(@`&Z k ZBC2DEFAA(A_r=^bH5%  -!>/P?dOwbu &1@PatyV1 r^+P2?#.opX]BL/=0$@`q  6  l BCDEFݿ))"9So~kYH16N(j4WzukaXK:$ cI2 TX@` 7 l'  m rBCDEFݿ @` B   n rBCDEFݿ$ @`kJ J  o BlCDE0F:ݿ l6\\0[FXYOiCv3l6@` H < q # F  r r 6P^t y  r s 6h !  @  Q c  Q c @  U | U` t  0B+C3DEF 88+ )nH)GfkN+R Q B'hAx+V<]|bE*3!/Q.q) b%2)+rt@` $>. @ U {U u  B$ClDEF  >Lql}-s%xTnrs-2E[wf CqO2>/*K1H/eh}9y k6.&AuW)^5osVv I~u6tB1,$.HYcrq{Vv1hLq ) ) I c X     + cK r i   $9$Ob%l[(EOz[b`_WWO> [    Z ? 3 $ X* 5 , %  | d K 1n 9  {3+IVhb2]+d TX@`U@ 0*U z0*UN2 v S  0H@ 1*U y1*U w BCDEF 11YvlEfx^nY]\AhuyuR,j_N.!8HR<5<pD`POdEy;# 8Qi@CH&xpcd@1* x B9CDE(F0  '#Dkl!^)`9@U@ Q c Q cH }  BNCDETF^ NN^0\A$^N,0@`c@ YQ  YQ @ Y Y@ Y Y ~  BsCDEF& hsTh@`_   BCDEF = @`>}   BCDE(F2  e u"Oe a>@`YH@  T@    tB9CDE F yj9@  tB+CDE F +@   |BjCDEF _ j @h@  BB  3  $BB  3  L:BB  3  ,nSBB  3  HmBB  3  >VBB  3  Mx@ mQ  mQ   BCDE8F@ N2Z /T`|zN" @j@ mQ  mQ 8@ mQ  mQ (   BCDEF 11uztB ~%0=P>u1n;`uP~&<H-  &udh@`mQ    BCDEF__ ##c( 3} STx@lVG;'^x HL@`&'@ 8= 8=4  B#CHDETF\  8c0W@xI&#H+,@DLN2  S  8=QV<  # k"I)dr  6(gs#`'  @ s" ' s" ' <@ "' "'@ "~X' "~X'@ "~X' "~X'   BeCDEFee? @`"3%   BC,DEF,) @`%X'   B C3DEFjb3 Uj @`"~X'  zBC/DEF// @`.';'BB  3 "C%@ ##7& ##7&   BCDEFBB @`##>m%   B'CGDEFG'nG @`##7&@ "HA' "HA'@ "HA' "HA'   BfCDEFff? @`"%   BC.DEF.* @`%rA'   B C3DEFid3 Si @`"HA'b  zBC/DEF// @`'$'BB  3 " %t@  # &v  # &v   BCDEF@BB @` #V%v   B)CFDEF`@F)lF @` # &N@ "%'f "%'f@ "%'f "%'f   BeCDEFee> @`"-&f   BC-DEF-* @`-&O'f   B C4DEFjb4 Tj @`"%'?  zBC/DEF// @``'jl'BB  3 "-&R@ U#i&S U#i&S   BCDEF CC @`U#%S   B'CEDEF` E'lE @`U#i&*@ "'; "';@ "'; "';   BfCDEFff? @`"*&;   BC-DEF-) @`*&%';   B C3DEFib3 Ti @`"'  zBC/DEF// @`]'?i'WBB  3 "*&'@ Q#]e&) Q#]e&)   BCDEF BB @`Q#%)   B'CFDEF`` F'lF @`Q#]e&@ "k' "k'@ "k' "k'   BeCDEFee> @`"z&   BC-DEF-* @`&k'   B C3DEFic3 Si @`"k'  zBC/DEF// @`B' N'!BB  3 "&@ 7#'J& 7#'J&   BCDEFBB @`7#%   B(CFDEFF(lF @`7#'J&@ "=' "='@ "=' "='   BeCDEFee= @`"G%   BC-DEF-) @`%='   B C3DEFkc3 Tk @`"='  zBC/DEF// @`' 'BB  3 "V%@ #& #&   BCDEFBB @`#RR%   B)CEDEFE)mE @`#&@ "' "'@ "' "'   BeCDEFee= @`"?"&   BC.DEF.+ @`"&'   B C3DEFjc3 Sj @`"'  zBC/DEF// @`U'a'BB  3 "N"&@ I#^& I#^&   BCDEF BB @`I#J%   B(CGDEF G(mG @`I#^&@ "T' "T'@ "T' "T'   BeCDEFee> @`" %   BC.DEF.) @`%~'   B C3DEFib3 Si @`"T'n  zBC/DEF// @`&'BB  3 "%@ "% "%   BCDEF BB @`"4%   B)CEDEF E)lE @`"%Y@ ")\'j ")\'j@ ")\'j ")\'j   BeCDEFee? @`"%j   BC-DEF-* @`%S\'j   B C4DEFjb4 Tj @`")\'C  zBC/DEF// @`2'n>'BB  3 "%V@ '#;&W '#;&W   BCDEFCC @`'#q%W   B(CFDEFF(lF @`'#;&/@ "E'; "E';@ "E'; "E';   BfCDEFff= @`"%;   BC-DEF-) @`%%E';   B C3DEFic3 Ti @`"E'  zBC/DEF// @`'?('WBB  3 "%'@ #^$&) #^$&)   BCDEF AA @`#Z%)   B'CEDEF E'mE @`#^$& <@ "7' f"7'@ "S'  "S'@ "S' "S'   BeCDEFee> @`"q%   BC,DEF,) @`%S'   B C4DEFjc4 Uj @`"S'  zBC/DEF// @`)'6'BB  3 "%@ #2&  #2&   BCDEFAA @`#{h%    B(CEDEFE(lE @`#2&@ "<' "<'@ "<' "<'    BfCDEFff> @`":%    BC-DEF-) @`%<'   B C3DEFid3 Ti @`"<'  zBC/DEF// @`''BB  3 "J%@ #& #&   BCDEF@AA @`#EQ%   B(CFDEF`@F(nF @`#&@ "b' "b'@ "b' "b'   BeCDEFee? @`"(&   BC-DEF-* @`(&'   B C4DEFjc4 Tj @`"b'|  zBC/DEF// @`['g'BB  3 "'(&@ P#d& P#d&   BCDEF BB @`P#"%   B(CFDEF` F(lF @`P#d&h@ "7'x )"7'x@ "7'x %"7'x    BdCDEFdd> @`"$&x !  BC-DEF-) @`$&b'x "  B C3DEFib3 Ti @`"7'Q # zBC/DEF// @`W'|d'BB $ 3 "%&d@ L#`&f (L#`&f &  BCDEF AA @`L#%f '  B(CFDEF`` F(nF @`L#`&=@ "f'B 3"f'B@ "f'B /"f'B *  BeCDEFee? @`" &B +  BC,DEF,) @` &+f'B ,  B C3DEFic3 Ti @`"f' - zBC.DEF.. @`='FI'^BB . 3 " &.@ 1#dE&/ 21#dE&/ 0  BCDEFBB @`1#{%/ 1  B'CFDEFF'lF @`1#dE&@ "8' ="8'@ "8' 9"8' 4  BeCDEFee= @`"% 5  BC,DEF,) @`%8' 6  B C2DEFjc2 Tj @`"8' 7 zBC/DEF// @`''+BB 8 3 "%@ #2& <#2& :  BCDEFCC @`#M% ;  B(CDDEFD(lD @`#2&@ "z' G"z'@ "z' C"z' >  BeCDEFee? @`"|& ?  BC,DEF,) @`&z' @  B C4DEFjb4 Uj @`"z' A zBC/DEF// @`O' \'$BB B 3 "&@ D#*Y& FD#*Y& D  BCDEF CC @`D#% E  B)CFDEF F)lF @`D#*Y&@ "' Q"'@ "' M"' H  BeCDEFee> @`"F% I  BC.DEF.* @`%' J  B C3DEFic3 Si @`"' K zBC/DEF// @`&&BB L 3 "U%@ "% P"% N  BCDEF BB @`"Q/% O  B)CFDEF F)mF @`"%@ "fW' ["fW'@ "fW' W"fW' R  BeCDEFee? @`"% S  BC,DEF,) @`%W' T  B C4DEFjc4 Uj @`"fW' U zBC/DEF// @`-'9'BB V 3 "+%@ "#6& Z"#6& X  BCDEFBB @`"#&l% Y  B(CFDEFF(mF @`"#6&l@ "7?'x e"7?'x@ "7?'x a"7?'x \  BfCDEFff= @`"%x ]  BC-DEF-) @`%b?'x ^  B C3DEFkb3 Tk @`"7?'Q _ zBC/DEF// @`'}"'BB ` 3 "%d@  #&f d #&f b  BCDEF BB @` #U%f c  B'CEDEF E'mE @` #&= <@ s" n'] s" n']@ "<'] p"<']@ "<'] l"<'] g  BfCDEFff? @`"%] h  BC-DEF-* @`%F<'] i  B C4DEFjd4 Tj @`"<'6 j zBC/DEF// @`'b'yBB k 3 "%I@ #&K o#&K m  BCDEFBB @`#Q%K n  B(CFDEFF(lF @`#&"@ " %'' z" %''@ " %'' v" %'' q  BeCDEFee= @`"%' r  BC.DEF.+ @`%%'' s  B C3DEFjc3 Sj @`" %' t zBC/DEF// @`&,'CBB u 3 "%@ "I& y"I& w  BCDEF@BB @`":% x  B(CFDEF`@F(mF @`"I&@ " n' " n'@ " n' " n' {  BfCDEFff> @`"y& |  BC,DEF,) @`& n' }  B C4DEFkc4 Uk @`" n' ~ zBC.DEF.. @`D' Q' BB  3 "&@ 9#&M& 9#&M&   BCDEF BB @`9#%   B'CEDEF` E'lE @`9#&M&@ " j' " j'@ " j' " j'   BfCDEFff= @`"N &   BC.DEF.* @` & j'   B C3DEFid3 Si @`" j'  zBC/DEF// @`@' M' BB  3 "] &@ 5# I& 5# I&   BCDEF BB @`5#Y%   B(CFDEF`` F(mF @`5# I&@ "c O' "c O'@ "c O' "c O'   BgCDEFgg> @`"%   BC,DEF,) @`% O'   B C3DEFic3 Si @`"c O'|  zBC.DEF.. @`%' 2' BB  3 "'%@ # .& # .&   BCDEFBB @`#"e%   B(CEDEFE(lE @`# .&h@ "0 !'q "0 !'q@ "0 !'q "0 !'q   BfCDEFff> @`" %q   BC,DEF,) @`%Z !'q   B C3DEFjc3 Uj @`"0 !'J  zBC/DEF// @`&u ' BB  3 " %]@ " &^ " &^   BCDEFAA @`" 6%^   B(CEDEFE(lE @`" &6@ ") b'i ") b'i@ ") b'i ") b'i   BeCDEFee> @`" &i   BC-DEF-) @`&R b'i   B C4DEFjc4 Tj @`") b'B  zBC/DEF// @`9'n E' BB  3 " &U@ -# A&W -# A&W   BCDEF BB @`-# w%W   B'CEDEF E'lE @`-# A&.@ s" '2 s" '2@ s" '2 s" '2   BeCDEFee= @`s" %2   BC-DEF-) @`% '2   B C3DEFkc3 Tk @`s" '   zBC/DEF// @`&8 &O BB  3 u" %@ "U %! "U %!   BCDEF BB @`" %!   B'CEDEF E'mE @`"U % @ " ?' " ?'@ " ?' " ?'   BfCDEFff> @`"} %   BC-DEF-* @`% ?'   B C3DEFib3 Si @`" ?'   zBC.DEF.. @`' "'$ BB  3 " % @  #* &   #* &    BCDEFBB @` # U%    B'CEDEFE'lE @` #* & @ " )'  " )' @ " )'  " )'    BeCDEFee> @`"N %    BC-DEF-) @`% )'    B C3DEFjc3 Tj @`" )'   zBC/DEF// @`& ' BB  3 "^ % @ " &  " &    BCDEF AA @`"Y >%    B)CFDEF@ F)nF @`" & <  # 3r  6Pk0q V;@ N NJ  BCJDEdFn $*{2_8C>,CGJJD;2.1'Kg48@`(UJ  BC,DEdFn {iVC!2$#)*,)!1BT fw48@`:hf  zBC5DEF%% ')%)5*F,Y,m..//112244 552/) # uT8LP@`  zB C DEFEES1% GRSOE-+>Uqy|zvfu`]cIl;|6=OTQI>+!$-8DGKLLIC 9 *    o%W=DY;{?S@`w  BCDEF--+;GL G2&';"N'_0lAoUinVvQ|T^g|z{pd^\e~ymcO8!}eI *+\`@`<H  ZBC DEF!!^ v|bI3 ~gP;-'BZ s!2F ^ DH@`vAkNJ  BUC]DEdFn ]*[1X9TAMGFM>P4T+UO D4+# (1DRZ ]48@`  ZBC DEF!!] v|bI3 ~fO;-(BZ s 2F ] DH@`9A-NJ  BVC]DEdFn!]*[2X:TAMHFN>Q4T+VO E5,$  (1DRZ!]48@`*  BCLDEF%5CNW_dg~u7jSaiWubxjmlg^TH:-   -7AGJLLJEl?W7D.3#%  xxjF!eB ue^bdd_YN@/'{ zwwx{q[F0(  p_PB7 1" :7g71:@IVTbpzi"X?J^<|1'Be"Fi & M'r.6?I T._Rivv2Me{lp@`*  BC5DETF^$<Vo $+0p5T5:2&+" ,0@`n   BDCbDEDFN  $/ =D6CQ;X/_!b] M3 $(@`<`J  BjCpDEdFnfh ikpp)i5_COP>\+ej hd\VQKA*79)GT_f48@` 6w*  B!CDEFq  "'+2< JXh!y"""&/;Nbz)<IR]otcRD8-)*5'B%P%^'l*{-06@L\m-GaznZG5' !!uS,iI( }sme_VM{Cd:H2)* # eI0  p _ N > /         qZ#D)-/5=CKQYerr~\I:/'!"a @\h*27CP^lxs]G+3O'q lp@`o  ZBCDEF!!Tbu{pb[N?. uV)75@ KT^ir#{1@LTDH@`o   B/CDEF11$+3<FM)X.b/n.y'! &YtcO9#sC |A(6DQ`n dh@`mOJ  B_CDEdFnC>8-" ~t eR<&(/5:P\>_Z^sYQIC48@`#Sj  :BCDEtF~=] !/?Pao{{e}Lw3og _VK=-'2 9=<@@`bZj  :BCDEtF~)8Nh$2BKWgu\* oQ4 )<@@`y%1*  BXCDETF^ %{1v>qJnTkXkWUO3GC#(>Rev ,0@`{Aj  :BCDEtF~ /?Qbr~$(/:HY~jzyurr\7~yjY F 3"  <@@`9J  BCDEdFn9i $4FZoh8oS5 48@`aJ  B~CqDEdFn9_ qpn/nCmWmjkvk~m~W|5{xqeWD3"48@`t$  ZBCDEFaaz^A$w]D, !$&'o)^*L,=/00$48=AIYp "0>KNT^jz0Je;\{ )Ec{\A42/,'$ziWB, @`  BrCDE4F>MM^6  {]C!-&* 15;Ka x"'-;Ok&<Rh %>Y#9GLSaln@r'o'k&a#VG6!  vS,@`  ZBCDEF!!ZL>0" <i!0DZpn< ~mZDH@`5J  BCwDEdFn<ew vt(t>sRscqqqxs{^> | p _L8%48@`Nj  :BCDEtF~ 3b -AUj{|bK6( eF*<@@`*J  BC{DEdFn 4Teeg)j<oMr\wizo{tizK.p \H2  48@`/Gj  :BmCTDEtF~ 'L s7KKNQ'T(@-6FRt_If*meZO D8.%<@@`Y  ZBC\DEF!!F>38%j  .? BK'V0\6HC&Q]enyrT;(!|n bULFDH@`5@ c BU" c BU"<B  # $c :><B B # $U"<B  # $B<  # J r  6io  r  6n   ObjInfo-Settings .,Embedded Objects"@&ƾ@&ƾ_941007885Fpy&ƾpy&ƾOle /CompObj0fObjInfo2Equation Native 3 FMicrosoft Equation 3.0 DS Equation Equation.39qZ\ Request_Service_Time=Fixed_Service_Time+Disk_Seek_Time+Transfer_SizeMedia_Transfer_Rate+Request_SizeSCSI_TransferRate FMicrosoft Excel WorksheetBiff8Excel.Sheet.89q_939744178 F\ 'ƾ0@ 'ƾOle <PRINTNECompObj=f     ; !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~. " 6   !_''   Arialz \!w*wgwz \ - Arial !w*wgw  -Arial 8!w*wgw 8 -----"System  -'- !_-- >!!---'--- !_-- $ ?'?'" " ?----'--- &'; kE',  ,'5 5'? ?'---'--- !_kE'- ?  ?'"'" ? ---'---  !_- ?  " -"" ,, 55 ?? " "', " ,",",;";,",",l"l,'"'---'--- >!!---'--- B>"---'--- ?>"- -  %bbbb%b b$b)b/b%/b6b>bHbNbUb%Ubcbkbtb}bbbb% bbbbbbbbb'b5b %5bQbnbbbbbbbbb+bEb`b %`b}bbbbb+bQbybbbjbbb- %5/-)%) %$!)/%/6 >HNU%Uckt}% }qke'_5Y %5YQNnC94.(" ,E` %`}+Qxye=j- %;742%2 0$-)+/'%/'6#>HNU%Uc kt}% '5 %5Pmyq.gG\`O %`O}?,+Qyh1j- %% $~)t/j%/j6`>UHJNCU;% U;\2c)kt}% '5{ %5{Qmn^OG@80)!+E ` %`}+Qyjz- %% $)/%/6?DJOU% U\cktx}mbXM% MB8-" '5 %5Qn+E`{ %`{}skd\T+LQDy<+j - %2+'$%$ !$)/%/6>HNU%Uckt}% ~y's5m %5mQanTG@92+$+E` %`}+Qyjbf3-f3- 0E---'---  ?>"b :E---'---  ?>"b/ LE---'---  ?>"bU rE8---'---  ?>"b E---'---  ?>"b5 RE---'---  ?>"b` }EC---'---  ?>"b E---'---  ?>"5--  $ (5J5 ---'--- ?>") $2)>)---'--- ?>"/ $/D/*/---'--- ?>"U $UjU@U---'--- ?>" $---'--- ?>"Y5 $5DJY5n Y5D---'--- ?>"` $`u`K`---'--- ?>" $---'--- ?>";- - S+%-;&;P(;P;&(---'-- - ?>"2- J5-22G22G22---'-- - ?>"'/- ?G-'/'/<D'/<'/D---'-- - ?>"U- )m?-U@U&jU&@Uj---'-- - ?>"- ----'-- - ?>"5- M-5 5J5 5J---'-- - ?>"O`- gx9J-O`:KO`duO`dKO`:u---'-- - ?>"- ----'-- - ?>"-  -  $(---'-- - ?>"  ${2{---'-- - ?>"j/  $/UD/U---'-- - ?>";U  $U&jP@PU&---'-- - ?>"  $---'-- - ?>"{5  $5fJ 5f---'-- - ?>"`  $`uK`---'-- - ?>"z  $ee---'-- - ?>"- (---'-- - ?>" 2---'-- - ?>"/ D---'-- - ?>"U j@---'-- - ?>"M b8---'-- - ?>"5 J ---'-- - ?>"{` ufK---'-- - ?>" ---'-- - ?>"2f3- O0---'-- - ?>"$ A:---'-- - ?>"/ 4L---'-- - ?>"U r8---'-- - ?>" ---'-- - ?>"m5 RP---'-- - ?>"` }C---'-- - ?>" h---'-- - ?>"---'-- - B>"---'-- - !_---'-- - !_---'-- - !_  2 0.1$  2 1. 2 10 2 )100---'-- - !_---'-- - !_  2 >00 2 >10 2 >n20 2 >)30 2 >40 2 >50 2 >Z60 2 >70---'-- - !_------'-- -  s' (2 1Request Size (K bytes)0%))%%-"%0)"%%----'-- - !_-----'-- - b! ArialK %!w*wgwK % -2 X1Elapsed Time (ms)-----'-- - !_--- lE'---'--- jF(---'--- jF(- rF rrf3-f3- ^2 N Ultra Cached0%0%"%%%---'--- jF(---'--- jF(- F -- $2  Fast Cached)%"0%"%%%---'--- jF(---'--- jF(- %F %%-- <-%%9%9%2  Narrow Cached0%%/0%"%%%---'--- jF(---'--- jF(- F - -  $ll2 `Narrow Prefetch0%%/-%%"%---'-- - jF(---'-- - jF(-F - -2  Fast Prefetchc)%"-%%"%---'-- - jF(---'-- - jF(-7F 77- f3-K#2 Ultra Prefetch0%-%%"%---'-- - jF(---'-- - !_---'-- - !_--  >!!-- -4- -----  - Arial 6!w*wgw 6 - - - - -  32 Elapsed time vs Request Size 5,0,,0F,+,9,00,,5(,62 Controller Cache vs Controller 9000,9,,0,+,9000,2 zPrefetch5,,,0' !_-- -' !_ '  'ObjInfo?WorkbookaBSummaryInformation(@DocumentSummaryInformation8D4      !"#$%&'()*+,-./012345678:<=BCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~  \pCatharine van Ingen Ba=> <  %f =N <X@"1Arial1Arial1Arial1Arial1sArial1sArial1Arial1sArial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Courier1* MS Sans Serif1.Times New Roman1Arial1Helv1Geneva1.Times New Roman1.Times New Roman1Arial1.Times New Roman1Arial1* MS Sans Serif1.Times New Roman1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1$Arial1 Arial1Arial1Arial1Arial1Arial1sArial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1iArial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1dArial1Arial1dArial1UArial1Arial1Arial1Arial1Arial1dArial1ZArial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1sArial1Arial1Arial1Arial1Arial1Arial1Arial1nArial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1PArial1Arial1Arial"$"#,##0_);\("$"#,##0\)!"$"#,##0_);[Red]\("$"#,##0\)""$"#,##0.00_);\("$"#,##0.00\)'""$"#,##0.00_);[Red]\("$"#,##0.00\)7*2_("$"* #,##0_);_("$"* \(#,##0\);_("$"* "-"_);_(@_).))_(* #,##0_);_(* \(#,##0\);_(* "-"_);_(@_)?,:_("$"* #,##0.00_);_("$"* \(#,##0.00\);_("$"* "-"??_);_(@_)6+1_(* #,##0.00_);_(* \(#,##0.00\);_(* "-"??_);_(@_) #,##0\K\B 0\K\B 0.0% 0.0000.0 0.0000000 0.000000 0.00000 0.0000 0.00000000 #,##0.0""\ #,##0;""\ \-#,##0!""\ #,##0;[Red]""\ \-#,##0"""\ #,##0.00;""\ \-#,##0.00'"""\ #,##0.00;[Red]""\ \-#,##0.00=8_ ""\ * #,##0_ ;_ ""\ * \-#,##0_ ;_ ""\ * "-"_ ;_ @_ .)_ * #,##0_ ;_ * \-#,##0_ ;_ * "-"_ ;_ @_ E@_ ""\ * #,##0.00_ ;_ ""\ * \-#,##0.00_ ;_ ""\ * "-"??_ ;_ @_ 61_ * #,##0.00_ ;_ * \-#,##0.00_ ;_ * "-"??_ ;_ @_ \+0\ 0""$"#,###.##\ ;\("$"#,###.##\) [Red]Generalm/d[Yellow]General 00000000 00000 yy/mm/d "$"#,##0.00 \ \ \ @ \ \ \ \ \ \ @#,##0,_);\(#,##0,\)0+_(* #,##0,_);_(* \(#,##0,\);_(* "-"_);_(@_)0_@\ \ \ \ \ \ \ \ \ \ \ @4/_(* #,##0.0_);_(* \(#,##0.0\);_(* "-"??_);_(@_)0+_(* #,##0_);_(* \(#,##0\);_(* "-"??_);_(@_)83_(* #,##0.000_);_(* \(#,##0.000\);_(* "-"??_);_(@_):5_(* #,##0.0000_);_(* \(#,##0.0000\);_(* "-"??_);_(@_) #,##0,\9\1#,##0.000\2\8!"$"#,##0.00;[Red]"$"#,##0.00 General_) 0000 000000hh:mm:ss\ AM/PM_) "$"0,000 "$"#,### "$"#,##0;6_("$"* #,##0.0_);_("$"* \(#,##0.0\);_("$"* "-"_);_(@_) 0.000% "$"#,##0.0_);\("$"#,##0.0\)=8_("$"* #,##0.0_);_("$"* \(#,##0.0\);_("$"* "-"??_);_(@_)94_("$"* #,##0_);_("$"* \(#,##0\);_("$"* "-"??_);_(@_)A<_("$"* #,##0.000_);_("$"* \(#,##0.000\);_("$"* "-"??_);_(@_)#,##0.0_);\(#,##0.0\)#,##0.000_);\(#,##0.000\)"$"#,\);\("$"#,##0\)"$"#,\);\("$"#,\)"$"#,;\("$"#,\)"$"#.;\("$"#,\) "$"#.#"$"#,##0.00_);\("$"#.##0\)"$"#.##0_);\("$"#.##0\)#,##0.0_);[Red]\(#,##0.0\)% "$"#,##0.0_);[Red]\("$"#,##0.0\)"#,##0.0_%\);[Red]\(#,##0.0%\) #,##0.0_%;[Red]\(#,##0.0%\)#,##0.0%;[Red]\(#,##0.0%\)#,##0.0%;\(#,##0.0%\) 0.0000% 0.00000%!#,##0.00%;[Red]\(#,##0.00%\) 0.0%;\(0.0%\) 0.000"%" 0.0"%""$"#,##0_);\("$"#,##0.0\) "$"#.##$"$"#,##0.000_);\("$"#,##0.000\)&!"$"#,##0.0000_);\("$"#,##0.0000\)2-_(* #,##0.0_);_(* \(#,##0.0\);_(* "-"_);_(@_)4/_(* #,##0.00_);_(* \(#,##0.00\);_(* "-"_);_(@_)61_(* #,##0.000_);_(* \(#,##0.000\);_(* "-"_);_(@_)""#,##0;\-""#,##0""#,##0;[Red]\-""#,##0""#,##0.00;\-""#,##0.00#""#,##0.00;[Red]\-""#,##0.0050_-""* #,##0_-;\-""* #,##0_-;_-""* "-"_-;_-@_-=8_-""* #,##0.00_-;\-""* #,##0.00_-;_-""* "-"??_-;_-@_-#,##0;[Red]\(#,##0\)2-_-* #,##0.0_-;\-* #,##0.0_-;_-* "-"??_-;_-@_-.)_-* #,##0_-;\-* #,##0_-;_-* "-"??_-;_-@_-#,##0.0;[Red]\(#,##0.0\)0.0%;[Red]\(0.0%\)#,##0;\(#,##0\)"SFr."#,##0;"SFr."\-#,##0#"SFr."#,##0;[Red]"SFr."\-#,##0$"SFr."#,##0.00;"SFr."\-#,##0.00)$"SFr."#,##0.00;[Red]"SFr."\-#,##0.00@;_ "SFr."* #,##0_ ;_ "SFr."* \-#,##0_ ;_ "SFr."* "-"_ ;_ @_ HC_ "SFr."* #,##0.00_ ;_ "SFr."* \-#,##0.00_ ;_ "SFr."* "-"??_ ;_ @_  #,##0.00;[Red]\(#,##0.00\)! #,##0.000;[Red]\(#,##0.000\)# #,##0.0000;[Red]\(#,##0.0000\) mmmm\-yy #,##0.0000_);\(#,##0.0000\)#,##0""_);\(#,##0""\)!#,##0""_);[Red]\(#,##0""\)"#,##0.00""_);\(#,##0.00""\)'"#,##0.00""_);[Red]\(#,##0.00""\)=8_ * #,##0_)""_ ;_ * \(#,##0\)""_ ;_ * "-"_)""_ ;_ @_ :5_ * #,##0_)__ ;_ * \(#,##0\)__ ;_ * "-"_)__ ;_ @_ E@_ * #,##0.00_)""_ ;_ * \(#,##0.00\)""_ ;_ * "-"??_)""_ ;_ @_ B=_ * #,##0.00_)__ ;_ * \(#,##0.00\)__ ;_ * "-"??_)__ ;_ @_ #,##0\ "F";\-#,##0\ "F"!#,##0\ "F";[Red]\-#,##0\ "F""#,##0.00\ "F";\-#,##0.00\ "F"'"#,##0.00\ "F";[Red]\-#,##0.00\ "F";6_-* #,##0\ "F"_-;\-* #,##0\ "F"_-;_-* "-"\ "F"_-;_-@_-83_-* #,##0\ _F_-;\-* #,##0\ _F_-;_-* "-"\ _F_-;_-@_-C>_-* #,##0.00\ "F"_-;\-* #,##0.00\ "F"_-;_-* "-"??\ "F"_-;_-@_-@;_-* #,##0.00\ _F_-;\-* #,##0.00\ _F_-;_-* "-"??\ _F_-;_-@_- d/m/yy d/m/yy\ h:mm #,##0" F"_);\(#,##0" F"\)#!#,##0" F"_);[Red]\(#,##0" F"\)$"#,##0.00" F"_);\(#,##0.00" F"\))#$#,##0.00" F"_);[Red]\(#,##0.00" F"\)$#,##0" $";\-#,##0" $"%#,##0" $";[Red]\-#,##0" $" &#,##0.00" $";\-#,##0.00" $"%' #,##0.00" $";[Red]\-#,##0.00" $" (d\.m\.yy) d\.mmm\.yy *d\.mmm +mmm\.yy,d\.m\.yy\ h:mm -0" " .0.00" " /0.0" "0 0.000" "1 0.0000" "2 0.00000" " 3hh:mm 4hh:mm:ss5 m/d/yy\ hh:mm60.00_);[Red]\(0.00\)70.000000000000000%80.00000000000000%90.0000000000000000%:0.0000000000000%;0.000000000000%<0.00000000000%= 0.0000000000%> 0.000000000%? 0.00000000%@ 0.0000000%A 0.000000%B.00                + )  & ) &  & ) &     &   & ) ) ) ) ) ) & ) &  ( +      (  ( + (   (   (  + + + + +             + + + + + + + + + + + + + + + + + + ( + ( , *   *    *      *    *  * * * * *   *  "  ,         ,        '   , , , , ,             , , , , , , , , , , , , , , , , ,   ,  7 "@ @ 8                                                                                   Comma [0]_12~3SO2Comma [0]_Channel TableComma [0]_Full Year FY96Comma [0]_larouxComma [0]_laroux_1Comma [0]_laroux_1_12~3SO2Comma [0]_laroux_12~3SO2Comma [0]_laroux_2Comma [0]_laroux_2_12~3SO2Comma [0]_laroux_3Comma [0]_laroux_MATERAL2&!Comma [0]_laroux_mud plant boltedComma [0]_MACRO1.XLMComma [0]_MATERAL2 Comma [0]_mud plant bolted! Comma [0]_P&L"Comma [0]_Q1 FY96#Comma [0]_Q2 FY96$Comma [0]_Q3 FY96%Comma [0]_Q4 FY96&Comma [0]_QTR94_95' Comma [0]_r1(Comma [0]_Sheet1)Comma [0]_Sheet1_laroux*Comma [0]_Sheet4+ Comma_12~3SO2,Comma_Channel Table-Comma_Full Year FY96.Comma_Jim Pic.xls Chart 1/Comma_Jim Pic.xls Chart 20Comma_Jim Pic.xls Chart 41Comma_Jim Pic.xls Chart 52Comma_Jim Pic.xls Chart 63 Comma_laroux4Comma_laroux_15Comma_laroux_1_12~3SO26Comma_laroux_12~3SO27Comma_laroux_28Comma_laroux_2_12~3SO29Comma_laroux_3:Comma_MACRO1.XLM;Comma_MATERAL2<Comma_mud plant bolted= Comma_P&L>Comma_PERSONAL'?"Comma_PERSONAL_Jim Pic.xls Chart 1'@"Comma_PERSONAL_Jim Pic.xls Chart 2'A"Comma_PERSONAL_Jim Pic.xls Chart 4'B"Comma_PERSONAL_Jim Pic.xls Chart 5'C"Comma_PERSONAL_Jim Pic.xls Chart 6(D#Comma_PERSONAL_pictures.xls Chart 1)E$Comma_PERSONAL_pictures.xls Chart 10)F$Comma_PERSONAL_pictures.xls Chart 11)G$Comma_PERSONAL_pictures.xls Chart 12(H#Comma_PERSONAL_pictures.xls Chart 2(I#Comma_PERSONAL_pictures.xls Chart 3(J#Comma_PERSONAL_pictures.xls Chart 4(K#Comma_PERSONAL_pictures.xls Chart 5(L#Comma_PERSONAL_pictures.xls Chart 6(M#Comma_PERSONAL_pictures.xls Chart 7(N#Comma_PERSONAL_pictures.xls Chart 8(O#Comma_PERSONAL_pictures.xls Chart 9PComma_pictures.xls Chart 1 QComma_pictures.xls Chart 10 RComma_pictures.xls Chart 11 SComma_pictures.xls Chart 12TComma_pictures.xls Chart 2UComma_pictures.xls Chart 3VComma_pictures.xls Chart 4WComma_pictures.xls Chart 5XComma_pictures.xls Chart 6YComma_pictures.xls Chart 7ZComma_pictures.xls Chart 8[Comma_pictures.xls Chart 9\ Comma_Q1 FY96] Comma_Q2 FY96^ Comma_Q3 FY96_ Comma_Q4 FY96`Comma_QTR94_95 aComma_r1b Comma_Sheet1cComma_Sheet1_larouxd Comma_Sheet4efgCurrency [0]_12~3SO2hCurrency [0]_Channel Table iCurrency [0]_Full Year FY96jCurrency [0]_larouxkCurrency [0]_laroux_1"lCurrency [0]_laroux_1_12~3SO2 mCurrency [0]_laroux_12~3SO2nCurrency [0]_laroux_2"oCurrency [0]_laroux_2_12~3SO2pCurrency [0]_laroux_3"qCurrency [0]_laroux_3_12~3SO2rCurrency [0]_laroux_4!sCurrency [0]_laroux_MATERAL2)t$Currency [0]_laroux_mud plant bolteduCurrency [0]_MACRO1.XLMvCurrency [0]_MATERAL2"wCurrency [0]_mud plant boltedxCurrency [0]_P&LyCurrency [0]_Q1 FY96zCurrency [0]_Q2 FY96{Currency [0]_Q3 FY96|Currency [0]_Q4 FY96}Currency [0]_QTR94_95~Currency [0]_r1Currency [0]_Sheet1Currency [0]_Sheet1_larouxCurrency [0]_Sheet4Currency_12~3SO2Currency_Channel TableCurrency_Full Year FY96!Currency_Jim Pic.xls Chart 1!Currency_Jim Pic.xls Chart 2!Currency_Jim Pic.xls Chart 4!Currency_Jim Pic.xls Chart 5!Currency_Jim Pic.xls Chart 6Currency_larouxCurrency_laroux_1Currency_laroux_1_12~3SO2Currency_laroux_12~3SO2Currency_laroux_2Currency_laroux_2_12~3SO2Currency_laroux_3Currency_laroux_3_12~3SO2Currency_laroux_4Currency_MACRO1.XLMCurrency_MATERAL2Currency_mud plant bolted Currency_P&LCurrency_PERSONAL*%Currency_PERSONAL_Jim Pic.xls Chart 1*%Currency_PERSONAL_Jim Pic.xls Chart 2*%Currency_PERSONAL_Jim Pic.xls Chart 4*%Currency_PERSONAL_Jim Pic.xls Chart 5*%Currency_PERSONAL_Jim Pic.xls Chart 6+&Currency_PERSONAL_pictures.xls Chart 1,'Currency_PERSONAL_pictures.xls Chart 10,'Currency_PERSONAL_pictures.xls Chart 11,'Currency_PERSONAL_pictures.xls Chart 12+&Currency_PERSONAL_pictures.xls Chart 2+&Currency_PERSONAL_pictures.xls Chart 3+&Currency_PERSONAL_pictures.xls Chart 4+&Currency_PERSONAL_pictures.xls Chart 5+&Currency_PERSONAL_pictures.xls Chart 6+&Currency_PERSONAL_pictures.xls Chart 7+&Currency_PERSONAL_pictures.xls Chart 8+&Currency_PERSONAL_pictures.xls Chart 9"Currency_pictures.xls Chart 1#Currency_pictures.xls Chart 10#Currency_pictures.xls Chart 11#Currency_pictures.xls Chart 12"Currency_pictures.xls Chart 2"Currency_pictures.xls Chart 3"Currency_pictures.xls Chart 4"Currency_pictures.xls Chart 5"Currency_pictures.xls Chart 6"Currency_pictures.xls Chart 7"Currency_pictures.xls Chart 8"Currency_pictures.xls Chart 9Currency_Q1 FY96Currency_Q2 FY96Currency_Q3 FY96Currency_Q4 FY96Currency_QTR94_95 Currency_r1Currency_Sheet1Currency_Sheet1_larouxCurrency_Sheet4  Header1 Header2Normal_12~3SO2 Normal_BidNormal_Certs Q2Normal_Certs Q2 (2)Normal_Channel TableNormal_Channel Table_1"Normal_Channel Table_1_Macro2#Normal_Channel Table_1_Module1Normal_Channel Table_2'"Normal_Channel Table_Channel Table Normal_Channel Table_Macro2!Normal_Channel Table_Module1Normal_Cost SummNormal_Focus goalsNormal_Full Year FY96Normal_Jim Pic.xls Chart 1Normal_Jim Pic.xls Chart 2Normal_Jim Pic.xls Chart 4Normal_Jim Pic.xls Chart 5Normal_Jim Pic.xls Chart 6 Normal_larouxNormal_laroux_1Normal_laroux_1_12~3SO2Normal_laroux_12~3SO2Normal_laroux_2Normal_laroux_3Normal_MACRO1.XLM Normal_Macro2Normal_MATERAL2Normal_Module1Normal_Module1_1Normal_Module5Normal_mud plant bolted Normal_P&LNormal_PERSONALNormal_PERSONAL_1(#Normal_PERSONAL_Jim Pic.xls Chart 1(#Normal_PERSONAL_Jim Pic.xls Chart 2(#Normal_PERSONAL_Jim Pic.xls Chart 4(#Normal_PERSONAL_Jim Pic.xls Chart 5(#Normal_PERSONAL_Jim Pic.xls Chart 6)$Normal_PERSONAL_pictures.xls Chart 1*%Normal_PERSONAL_pictures.xls Chart 10*%Normal_PERSONAL_pictures.xls Chart 11*%Normal_PERSONAL_pictures.xls Chart 12)$Normal_PERSONAL_pictures.xls Chart 2)$Normal_PERSONAL_pictures.xls Chart 3)$Normal_PERSONAL_pictures.xls Chart 4)$Normal_PERSONAL_pictures.xls Chart 5)$Normal_PERSONAL_pictures.xls Chart 6)$Normal_PERSONAL_pictures.xls Chart 7)$Normal_PERSONAL_pictures.xls Chart 8)$Normal_PERSONAL_pictures.xls Chart 9 Normal_pictures.xls Chart 1!Normal_pictures.xls Chart 10!Normal_pictures.xls Chart 11!Normal_pictures.xls Chart 12 Normal_pictures.xls Chart 2 Normal_pictures.xls Chart 3 Normal_pictures.xls Chart 4 Normal_pictures.xls Chart 5 Normal_pictures.xls Chart 6 Normal_pictures.xls Chart 7 Normal_pictures.xls Chart 8 Normal_pictures.xls Chart 9Normal_PROD SALES% Normal_PROD SALES by Region Pg 2Normal_PRODUCTNormal_Q1 FY96Normal_Q2 FY96Normal_Q3 FY96 Normal_Q4 FY96 Normal_QTR94_95  Normal_r1 Normal_Req Summ  Normal_Sheet1Normal_Sheet1_laroux Normal_Sheet4Normal_SummaryPercent_12~3SO2Percent_laroux8 ``i̜̙3f3333f3ffff333ff333f33f33BBB\`eChart2 Fig2 Fig3 Fig4 SFig5 {Fig6 sFig7 Fig8 Fig 9 Fig10`&Table3@Sheet2xASheet1-CNT1ProfilesGrayDesktopV1SCSIredux.xlslaroux ReadWriteDriverWCEPaper-Alignment BufferCache BufCache2CostHowManyBuffers Paper-RAIDPaper-BufCache Paper-Cost Paper-OneDiskPaper-MultiDiskPaper-AllocateDataHeaderYYYYYYQZ @Z U @Z @Z x1@Z  @Z Zpi5@Z 0@Z E6@Z @@Z 25@Z P@Z ]˹3@Z `@Z 01y!@Z  h@Z  -M.#@Z  p@Z  MC!@Z  ['H0@Z  @@Z  -@Z ]M4!(#@Z 2%@Z u}'@Z *e(@Z qU)@Z G6>)@Z J*@Z (o @Z $o'@Z aEF@Z @Z ! ;@Z s *@Z 4@Z aeM@Z WSF@Z F>@Z ; -@Z  #uF5@Z !jk5@Z "g( 45@Z # NbV4@Z $𳞱 @Z %Z#@Z 4دӣ&@Z 5u= 3@Z 6/9@Z 7/:@Z 8lU9@Z 99:Qc6@Z :1U+@Z ;i})@Z <k+$@Z =ZK)@Z >qfJ@Z ?qܮM@Z @8py"@Z ANg*%@Z B''@Z C"HW*@Z D8aDH)@Z E]9,e)@Z FM*@Z Gۂ@Z H@6% @Z Iƛt @Z J @Z KymTi@Z L_0M@Z MO O@Z NPJ@Z ODa@Z P~H'@Z Qe!/@Z R 6@Z S0v7@Z T(Q8@Z Uy4@Z Vak+@Z Wא;V,@YYY Y ZL @@ @0@@@P@`@h@ZL 2_[h["@_ݴ"@? gt"@h8!@eYB"@ 3["@_1M@]@ZL  D@`=sh @ٷA @;/;Q @J2@ Ma^@iU|@iCg@ZL #EN@PB@z@waR@^q@宭@`x7@Vcy@ZL "K D@ X9@,1@G-@c2Uk+@O1@Լ|N.@/0@ZL #-6N@UvG@jq"A@гY%\6@): 5@): 5@|!8@<,oڀ>@ZL 'bM@ӣH@Q`ɯ@@s w7@-!K(5@Jwn6@7@s(\-@u@X9@&1?{?[d;""?ZL &:O@ v>@Hx@'/@nrww@Sㅈ@)\RUU@(?G?ZL AV?56!?+|?Pk6?Sㅈ? 033?t?!r033?ZL Z,y?J?eW½?p̺?:Ȗ??(?W-bff?ZL ?*iӹ? @'?.33?cff?9Ȗ?{?|/33?ZL !_e}?y?@'? ףPUU?;Ȗ?t?QUU?Sㅈ?ZL "?yX?vn?s(\?u?X9?&1̼?{?[d;""?ZL $&:? v?Hx@'?nrww?Sㅈ?)\RUU?(?G?Y ZL @@ @0@@@P@`@h@ZL +uR@ =!@Ŵ=޿!@+!@A{!@d,5J!@d,5J!@f!@ZL @T?DЎ?]>@??o91@?exS@ la@PxU@ZL bH砑@ƾ @#!@ I!@ɟµ!@ ɏ!@$!@89!@ZL  #V"@j-c@t$#@R@A[fwh@"߻@u p@2 4@ZL  ?a4)?-ːD?" [?Æ,[:@A,T @IT@Jo@ZL  \D|@"(@TW@Hq@@ج%g@/F@;uZ[3@Y YYY3CNT1ProfilesGrayDesktopV1AnalysisSummary.xlslaroux FIOStripingDriver AlignmentCaching (Writes)CachingWCEOverheadCPUTimeConfigurations (64k)Configurations (8k) ReadWritePaper-MultiBusPaper-MultiDisk Paper-OneDiskDataHeaderYYYYYYYYY Y Y Y ZL @@ @0@@@P@`@h@ZL QF@?=#F@/kJ$@$9x)@^̲S-@h.@mZ/@0@ZL ig¸?q?6(Aީ@gEl@@X#@M(@mL+@ZL {b@R@4->`@+#@hZ)@"S-@s&ն.@\%h#/@ZL wn?3@}/@i$75@_Z6@iB6@*=,7@߈o7@ZL  3?"?FN@ 51 @"LcX@~$%%@%۷ӡ,@xhP0@ZL  {IIN@}x@׈@q0u &@w0@!pd3@DqL˝3@e#?cuL@7&wz$@_7r&{)@߼kb-@:N/@auڡ/@V30@ZL ńW@@l.z@d$T@/(@S!+@5y@Ld@ZL <-N@1 NI@bX@E׏$@ bm5%@`.=&@F@'@OG'@ZL $1'@r@$E@W##@lu5R'@Tu+@ŧ!-@e?9+@ZL  {b@R@4->`@+#@hZ)@"S-@s&ն.@\%h#/@YZL \D|@"(@TW@Hq@@ج%g@/F@pn6@ZL @@ @0@@@P@`@h@ZL  #V"@j-c@t$#@R@A[fwh@"߻@u p@'2 @ZL   ڢ@s\@KFX@n5@B @Ċm^@.@3D@ZL  /ETa@@*@8C@~6Z@@@{}q!@;D%@ZL  iO? k @5q@3n@ͫ"@ᰄ%@t˧<)@2 v,@ZL  QF@?=#F@/kJ$@$9x)@^̲S-@h.@mZ/@0@ZL `F 3@s[ @I[.*%@./*@%Z.@_'0@(鐷j1@;7@ZL ?a4)?-ːD?" [?Æ,[:@A,T @IT@9ͮe^@ZL %O?'ݧ?k@Z@n(1@\L-@̋@JB@ZL Ilpo?%;@_c@T7@1DH@mV?@ e|샂@MB@ZL x>?Ai?MNۤ?f^ ?O`@ 4H@(\4@:eK@ZL ig¸?q?6(Aީ@gEl@@X#@M(@mL+@ZL 0)?÷B@&h@p"@(H!'@37e+@;*@UF.+@ZL ,qE@a >@K%ؘ@-蟠!@?!%@۞A*@T3v,@I*:.@YY z       # AcctCodes; #" Address1Cell< " Address2Cell< Advance: CCCell:  CityCell< CoCell:  Code; +  code2; 25 Conf; +! CountryCell:  Date; + Date2; 25% Description; +& Description2; 25  EmailName: EmpCell: EndDate:  ' Entertainment; 25 Exp2; 25 Firm; 25! Lodging; + Meals; +! Mileage; + Miles; + Misc; +NameCell: OthAcct1: "OthAcct2: #OthTot1: "OthTot2: #! Persons; 25 PostalCell<  Purpose:  Rate; +  rate2; 25 RegionCell:   StartDate:  SubTotExp: , & SummExpenses; #TotConf: , TotEntExp: 6TotExp: .  TotLodging: ,Totmeals: , TotMileage: ,TotMiles: ,TotMisc: , TotSummExp: $ TotTransp: ,  Transp; + U.S.; + Version: x8NH      3  @@  _ Narrow-ST15150N Fast-ST15150WUltra-ST34371WSize Cache Hit Prefetch HitTable 3 - Variation across disk generation - The table shows the elapsed time in ms for a cache hit and prefetch hit of varying request sizes directly at the drive. Times are measured from a user-level thread running through the NT file system. For the la L Sheet_Titlerea w`bT00$DHwXww`bT0w`bT0 bT0 w Hw@w0E1w`bT04  0xw6Fww S0x00PV0^n0$0 00Ԣ003C:\NT1\ProfilVersionsppestop\V1\AnalysisSummary.xlslT͝0{h0 (_T0# (+xL0 (6z@6\<`6` \<bT0/0 դw@(|0P8P~0BT0HP\P|u0(1T0||0P0P 0  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` ` v` ` *` v4( 333ff3 4r 4 0p  @$q/]pijP E<FElapsed time vs Request Size Controller Cache vs Controller Prefetch<q gEX3d23 M NM4 3Q  Ultra CachedQ ; Q ; Q3_ $ NM ] f3f3<<4E4 3Q  Fast CachedQ ; Q ; Q3_  NM ]  d43_  NM ]  d4E4 3Q  Narrow CachedQ ; Q ; Q3_  NM ]  d4E4 3Q "Narrow PrefetchQ ; Q ; Q3_  NM ]  Nd4E4 3Q  Fast PrefetchQ ; Q ; Q3_  NM ]  Nd4E4 3Q  Ultra PrefetchQ ; Q ; Q3_ % NM ] f3<N4E4D$% M 3O&Q4$% M 3O&Q4FAxp 3O}#_3*#M&43*@,#M&! M4% qbM3Oa&Q 0Request Size (K bytes)'4% <M Z3OT&Q &Elapsed Time (ms)'4523  43d" k (3Oj VB% M3O&Q423 M NM443_ M NM ] MM<4444e????????????@@@@@@@@@@@@ @ @ @ @ @ @0@0@0@0@0@0@@@@@@@@@@@@@P@P@P@P@P@P@eHzG @Q?(\?Q?zG?333333?HzG @)\(? ףp= ?)\(?zG?{Gz?HzG @(\?RQ??(\?(\?(\B @HzG?Gz?(\?Q??(\B @?(\?Gz?Q?RQ?(\B @ ףp= @(\?@(\?Gz?(\B @ffffff@@q= ףp@@Q?L @0@0@333333@333333@333333@e> 3333    dMbP?_*+%"w??)U 0 (  j^ ? # ] `{Pz  BNMM?!]`|P  "|??3` >+` >+` & ` & ` hj` hj` hj40P( 333 P P B @AA? z ]PP $<Write<4~~ P <H @AA? R]HWP $<Read<4} P H @AA?%fF -]XP $ < Write +WCE<4D 3dI 23 M NM4 3Q WriteQ ;  Q ;  Q3_  NM ]  4E4 3Q  ReadQ ; Q ; Q3_  NM   4E4 3Q  Write + WCEQ ;  Q ;  Q3_  NM  x4E4D$% M 3O&Q4$% M 3O&Q4FA* : 3Oe 3 bN#M&43*@N#M& ! M4% jK3UM3O& Q 0Request Size (K-Bytes)'4% 1,MZ3On& Q &Throughput (MB/s)'4523  43" 44%  vM:3OA&Q 6Out of the Box Throughput'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@e D@2_[h["@#EN@`=sh @_ݴ"@PB@ٷA @? gt"@z@;/;Q @h8!@waR@J2@eYB"@^q@ Ma^@ 3["@宭@iU|@_1M@`x7@iCg@]@Vcy@e z  BNMM??]`~P  "~??3` >+` >+` r D ` r D ` j ` j` hj5` hj6f@TN(  T T Bp @AA?k  ]poP $<Read<5} T H @AA?@a ]XpP $<Write<63dr!23 M NM4 3Q  ReadQ ;"" Q ; Q3_  NM   4E4 3Q WriteQ ;## Q ; Q3_  NM ]  4E4 3Q  Write + WCEQ ;'' Q ; Q3_  NM  <4E4D$% M 3O&Q4$% M 3O&Q4FA J 3O 3 bN#M& 43*T@$@@N#M& ! M4% K%UM3O& Q 0Request Size (K Bytes)'4% -,F MZ3O& Q 0Overhead (cpu msec/MB)'4523  43" % 3O$ X0% M3O&Q423 M NM4444% vM:3OA&Q 2Out of the Box Overhead'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@eK D@-6N@bM@ X9@UvG@ӣH@,1@jq"A@Q`ɯ@@G-@гY%\6@s w7@c2Uk+@): 5@-!K(5@O1@): 5@Jwn6@Լ|N.@|!8@7@`Q@@e >@    dMbP?_*+%"?? UP (  |  BMNN?x <]OP  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+!` >+"` >+#` N /3d!H23 M NM4 3Q ST34371WQ ; Q ; Q3_ 33> NM ]  4E4 3Q ST15150WQ ;  Q ; Q3_  NM ]  4E4D$% M 3O&#Q4$% M 3O&"Q4FAAH 3Oyp h 3 b#M43*@N#M! M4% : M 3O&!Q 0Request Size (K bytes)'4% aCMZ3On&!Q &Throughput (MB/s)'4523  O43" 44% M M03O&/Q 8Unbuffered Read Throughput'44e@@@@ @ @0@0@@@@@P@P@`@`@h@h@e+uR@#V"@ =!@j-c@Ŵ=޿!@t$#@+!@R@A{!@A[fwh@d,5J!@"߻@d,5J!@u p@f!@2 4@e |  BMNN?x @ <]RP  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+$` >+%` >+&` v0 -` v0 .` %1` %v2PH`0(  3d},Y23 M NM4 3Q UltraQ ; Q ; Q3_  NM  4E4 3Q  WideQ ;  Q ; Q3_  NM   4E4D$% M 3O&&Q4$% M 3O&%Q4FAO 3OE* 3 b#M&143*$@@N#M! M4% g M 3OG&2Q 0Request Size (K bytes)'4% '= MZ3O{&$Q &Throughput (MB/s)'4523  O43" (3O~% M3O&-Q4444% M M03O&.Q :Unbuffered Write Throughput'44e@@@@ @ @0@0@@@@@P@P@`@`@h@h@e@T??DЎ?a4)?]>@?-ːD??" [?o91@Æ,[:@?exS@A,T @ la@IT@PxU@Jo@e |  BMNN? px <]=P  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+'` >+(` >+)` 0 03dlZL23 M NM4 3Q UltraQ ; Q ; Q3_  NM ] 4E4 3Q  WideQ ;  Q ; Q3_  NM ]  4E4D$% M 3O&)Q4$% M 3O&(Q4FA{+ q 3OT4 3 b#M43*@N#M! M4% U M 3OD&'Q 0Request Size (K bytes)'4% CM Z3On&'Q &Throughput (MB/s)'4523  O43" 44% M M03O&0Q F!Unbuffered Write Throughput (WCE)'44e@@@@ @ @0@0@@@@@P@P@`@`@h@h@ebH砑@\D|@ƾ @"(@#!@TW@ I!@Hq@ɟµ!@@ ɏ!@ج%g@$!@/F@89!@;uZ[3@e |  BNMM?!<]`>P  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` N R` >+S` >+T` >+U` YNp86(  8x 8 6 @A?"*]8AP $ < Ultra Read<YC 4<~~ 8 < @A?d ]X\P $ < Fast Read<Y? xx 8 6< @A?8 O]<\P $ < Ultra Write<YD xx 8 6߾ @A? > 0y ]߾`P $ < Fast Write<Y@ @п3d23 M NM4 3Q ST34371WQ ; Q ; Q3_ 33> NM ]  4E4 3Q ST15150WQ ;  Q ; Q3_  NM ]  4E4 3QQ ;  Q ; Q3_  NM   43_  NM   4E4 3QQ ;  Q ; Q3_ # NM  43_  NM  43_  NM  43_  NM  43_  NM  43_  NM  43_  NM  43_  NM  4E4D$% M 3O&UQ4$% M 3O&TQ4FAY 3OdP 3 b#M43*@N#M! M4% e;M 3O&SQ 0Request Size (K bytes)'4% qspMZ3On&SQ &Throughput (MB/s)'4523  43" 44% KGM03O&RQ .Unbuffered Throughput'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@e+uR@#V"@@T?? =!@j-c@DЎ?a4)?Ŵ=޿!@t$#@]>@?-ːD?+!@R@?" [?A{!@A[fwh@o91@Æ,[:@d,5J!@"߻@?exS@A,T @d,5J!@u p@ la@IT@f!@2 4@PxU@Jo@e |  BNMM? !<]`[P  "[??3`  ` >+V` >+W` >+X` Z<(  <~ < < @A?U U]P $<Fast Write WCE<Zbar~~ < < @A?TD]P $<Ultra Write WCE<ZfLtrr < 0h  @C]hhP  <!WCE Unbuffered Wirte Throughput <  3d23 M NM4 3Q UltraQ ; Q ; Q3_  NM ] 4E4 3Q  WideQ ;  Q ; Q3_  NM ]  4E4D$% M 3O&XQ4$% M 3O&WQ4FA - | 3OtU 3 b#M43*@N#M! M4% 5g9M 3O3&VQ 0Request Size (K bytes)'4% jM Z3On&VQ &Throughput (MB/s)'4523  43" 444e@@@@ @ @0@0@@@@@P@P@`@`@h@h@ebH砑@\D|@ƾ @"(@#!@TW@ I!@Hq@ɟµ!@@ ɏ!@ج%g@$!@/F@89!@;uZ[3@e >@    dMbP?_*+%"??/U ( GM  v  <MNN?xZ]HP  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+9` >+I` >+J` >+Kr3d23 M NM4 3Q  ST34371W, ReadQ ; Q ; Q3_4E4 3Q  ST15150W, ReadQ ;!! Q ; Q3_4E4 3Q "ST34371W, WriteQ ; Q ; Q3_4E4 3Q "ST15150W, WriteQ ;"" Q ; Q3_ f3< NM  f3<Nd4E4 3Q  ST34371W, WCEQ ; QQ3_4E4 3Q  St15150W, WCEQ ;$$ QQ3_4E4D $% M 3O&KQ4$% M 3O&JQ4FAH@9 3Ob " 3 b#M43*#M! M4%   -M3Oc&IQ ,Request Size (bytes)'4% cIMZ3OV&IQ &Cost (ms/request)'4523  O43"  ~3O ~% M3OQ4444% XrM03O&9Q >Single Disk - CPU per Request'44ee?&:?*iӹ? v? @'?Hx@'?.33?nrww?cff?Sㅈ?9Ȗ?)\RUU?{?(?|/33?G?e n^   #  ]  `Pz   BMNN?:]P  "??3` I,` 3` IL` >+P` >+Q` $C`` Rd(  ~  <־ GH @ ']`־P (<)cpu idle because non-WCE writes so slow<, (3dg>F23 M NM4 3Q  ST34371W, ReadQ ; Q ; Q3_  NM   4E4 3Q  ST15150W, ReadQ ;  QQ3_  NM  N4E4 3Q "ST34371W, WriteQ ; QQ3_  NM  N4E4 3Q  Fast WriteQ ;  Q ; Q3_ f3< NM  f3<Nd4E4 3Q "Ultra WCE writeQ ; QQ3_  NM  4E4 3Q  ST15150W, WCEQ ;  QQ3_ % NM  %N4E4D$% M 3O&QQ4$% M 3O&PQ4FA. \ 3Oa3 b#M&343*MbP?N #M&3! M4% r.M 3Om&dQ 0Request Size (K bytes)'4% kM Z3O8&`Q  Cost (CPU%)'4523  43" 44% 1M:3O[&LQ "CPU Utilization'44e@@@@ @ @0@0@@@@@P@P@`@`@h@h@eW!8,?| ?3"f䩋?;?aB? DO?UW?Op?;?*A?Yx?|ܰ??1䌷?H c?%έ?7G8;?B0.?!'?"?QHRU?Ga?kĚ8? Vצ?Ph͢?!@?ŗ7|߇?KD?Т?p* 8?v @?18Iǐ?Չo?N$y?LQD.?FO~ /?_ օ?:9 ?̯(u 1?`[u?kD3]?h̿?(N?kL{?0u|?@C0x?9??^κy?e z   BNMM?9E]`P  "??3` 4%*` 4%+` -IM` >+[` >+\` gc` e3d&_S23 M NM4 3Q  ST34371W, ReadQ ; Q ; Q3_4E4 3Q  ST15150W, ReadQ ; Q ; Q3_4E4 3Q "ST34371W, WriteQ ; QQ3_  NM  Nd4E4 3Q "ST15150W, WriteQ ; QQ3_ f3< NM  f3<Nd4E4 3Q  ST34371W, WCEQ ; QQ3_4E4 3Q  ST15150W, WCEQ ; QQ3_ % NM  %Nd4E4D$% M 3O&\Q4$% M 3O&[Q4FA@5 n 3O|3 b#M&e43*.N#M&*! M4% r .M 3O7m&cQ 0Request Size (K bytes)'4% n_M Z3O*!B&+Q  Cost (ms/MB)'4523  43" 44%  M:3O&MQ 2CPU milliseconds per MB'44e@@@@ @ @0@0@@@@@P@P@`@`@h@h@eAVL@_e}M@Z,yM@?yXM@I@&:O@56!;@y<@J<@vn>@*i9@ v>@+|-@@',@eW-@s(\-@ @'.@Hx@'/@Pk6@ ףPUU@p@u@.33@nrww@Sㅈ@;Ȗ@:Ȗ@X9@cff@Sㅈ@ 033@t@@&1?9Ȗ@)\RUU@t?QUU?(?{?{?(?C?Sㅈ?:Ȗ?[d;""?m?G?e z   BNMM?<]`P  "??3` F#N` IO` >+]` >+^` >+_` F#b3dF23 M NM4 3Q  Fast ReadQ ; Q ; Q3_4E4 3Q  Ultra ReadQ ;!! QQ3_4E4 3Q  Fast WriteQ ; QQ3_  NM  Nd4E4 3Q  Ultra WriteQ ;"" QQ3_ f3< NM  f3<Nd4E4 3Q "Ultra Write WCEQ ; QQ3_ f3< NM  f3<Nd4E4 3Q  Fast write WCEQ ;$$ QQ3_ % NM  Nd4E4D$% M 3O&_Q4$% M 3O&^Q4FA @ 9 3OT3 b#M&N43*???NB#M&N! M4% ra.M 3Om&bQ 0Request Size (K bytes)'4%  ]M Z3O5m&]Q &Cost (ms/request)'4523  43" kRD3OgXrw% M3O&aQ423 M NM4444%   M:3O&OQ <CPU milliseconds per Request'44e@@ @0@@@P@`@h@eAV?_e}?Z,y??yX??&:?56!?y?J?vn?*iӹ? v?+|?@'?eW½?s(\? @'?Hx@'?Pk6? ףPUU?p̺?u?.33?nrww?Sㅈ?;Ȗ?:Ȗ?X9?cff?Sㅈ? 033?t??&1̼?9Ȗ?)\RUU?t?QUU?(?{?{?(?!r033?Sㅈ?W-bff?[d;""?|/33?G?e >@!!!    dMbP?_*+%"??dU (  j^  #  -] `Pz  BMNN?]P  "??3` j:` r D;` >+<` >+=` j>` r D?` H3dr;23 M NM4 3Q Read FSQ ; "" Q ;  Q3_  NM ]  d4E4 3Q Write FSQ ; ## Q ;  Q3_  NM ]  d4E4 3Q  Write FS + WCEQ ; '' Q ;  Q3_  NM ] d43_  NM ] d43_  NM ] d43_  NM ] d43_  NM ] d4E4 3Q writeQ ; QQ3_  NM  N43_  NM  N4E4 3Q writeQ ; QQ3_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d4E4D$% M 3O&=Q4$% M 3O&<Q4FA;} 3O 3 bN#M&>43*N@$@@N#M&?! M4% M SM3Oc&HQ 0Request Size (K Bytes)'4% MMZ3On&;Q 0Overhead (cpu msec/MB)'4523  43" 44% 3 hM:3O9y&:Q 2Out of the Box Overhead'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@eK D@-6N@bM@?yXM@Z,yM@ X9@UvG@ӣH@vn>@J<@,1@jq"A@Q`ɯ@@s(\-@eW-@G-@гY%\6@s w7@u@p@c2Uk+@): 5@-!K(5@X9@:Ȗ@O1@): 5@Jwn6@&1?@Լ|N.@|!8@7@`Q@@[d;""?:Ȗ?e z  BNMM?]`P  "??3` hj@` &A` >+B` >+C` hjD` &E`  GPH 0(   z3d%23 M NM4 3Q  Write WCEQ ;  Q ;  Q3_  NM ] N4E4 3Q  ReadQ ;  Q ;  Q3_  NM ]  N4E4 3Q  FS Write + WCEQ ;  Q ;  Q3_  NM ]  x4E4 3Q WriteQ ;  Q ;  Q3_ $ NM ] $N43_ $ NM ] $N4E4 3Q FS ReadQ ; Q ; Q3_  NM ]  x4E4 3Q FS WriteQ ;  Q ;  Q3_ 3ff9 NM ] x4E4D$% M 3O&CQ4$% M 3O&BQ4FApS 3O b3 bN#M&D43*@N#M&E! M4% OM'SM 3O0d&GQ 0Request Size (K-Bytes)'4%  MZ3Oh&AQ &Throughput (MB/s)'4523  43"  ?K3O CE% M3O&FQ423 M NM4444% }M:3O&@Q 6Out of the Box Throughput'44e@@@@@@@@@@@@ @ @ @ @ @ @0@0@0@0@0@0@@@@@@@@@@@@@P@P@P@P@P@P@`@`@`@`@`@`@h@h@h@h@h@h@ebH砑@+uR@#EN@@T?2_[h["@ D@ƾ @ =!@PB@DЎ?_ݴ"@`=sh @#!@Ŵ=޿!@z@]>@?? gt"@ٷA @ I!@+!@waR@?h8!@;/;Q @ɟµ!@A{!@^q@o91@eYB"@J2@ ɏ!@d,5J!@宭@?exS@ 3["@ Ma^@$!@d,5J!@`x7@ la@_1M@iU|@89!@f!@Vcy@PxU@]@iCg@e >@     dMbP?_*+%" ?? U` 8(  |  BNMM?]`4P  "4??3` >+f` >+g` >+h` :i` :m` :p(  ~  <k GlHp @  ]`k8P <Bogus<i 3db5A23 M NM4 3Q 1 BufferQ ;  Q ; Q3_  NM ]  4E4 3Q  3 BuffersQ ;  Q ; Q3_  NM ] 4E4 3Q  8 BuffersQ ;  Q ; Q3_  NM ]  4E4D$% M 3O&hQ4$% M 3O&gQ4FAyub  3OV%3 b#M&m43*$@@N#M&m! M4% *M 3Ob&fQ 0Request Size (K bytes)'4% <KM Z3O2S&fQ &Throughput (MB/s)'4523  43" 44% Nv M:3O1&&pQ r7 Read Throughput - 1 Fast Disk, Various Request Depths'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@e#V"@ ڢ@/ETa@j-c@s\@@*@t$#@KFX@8C@R@n5@~6Z@A[fwh@B @@"߻@Ċm^@@u p@.@{}q!@'2 @3D@;D%@e |  BNMM? ]`P  "??3` >+j` >+k` >+l` Xn` Xo`  q3d6PT23 M NM4 3Q  WCEQ ; Q ; Q3_  NM  Nd43_  NM  Nd4E4 3Q  8 BuffersQ ; Q ; Q3_  NM   4E4 3Q  3 BuffersQ ; Q ; Q3_  NM  4E4 3Q 1 BufferQ ; Q ; Q3_  NM   4E4D$% M 3O&lQ4$% M 3O&kQ4FAD 3O>m 3 b#M43*$@@N#M! M4% M3Ob&jQ 0Request Size (K bytes)'4% BMZ3OS&qQ &Throughput (MB/s)'4523  43" V[3O% M3O&oQ4444% XZ M03O&&nQ r7Write Throughput - 1 Fast Disk, Various Request Depths'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@e\D|@Ilpo?%O??"(@%;@'ݧ?a4)?TW@_c@k@-ːD?Hq@T7@Z@" [?@1DH@n(1@Æ,[:@ج%g@mV?@\L-@A,T @/F@ e|샂@̋@IT@pn6@MB@JB@9ͮe^@e >@    dMbP?_*+%"??uU(  j^ 9 #  i] `Pz  BMNN?^9]aP  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+r` >+s` >+t` 8|` }3dO^H023 M NM4 3Q  WCEQ ; Q ; Q3_  NM  N43_  NM  N4E4 3Q  3 BuffersQ ; Q ; Q3_  NM  4E4 3Q  8 BuffersQ ; Q ; Q3_  NM   4E4 3Q 1 BufferQ ; Q ; Q3_  NM   4E4D$% M 3O&tQ4$% M 3O&sQ4FAjw 3O 3 b#M&|43*4@@N#M&|! M4% {Y%M3Om&rQ 0Request Size (K bytes)'4%  M Z3O\&rQ &Throughput (MB/s)'4523  43" 3O % M3OQ4444% 4! M:3O&&}Q b/Write 4 Disk Stripes Throughput vs Requst Depth'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@e,qE@ig¸?0)?x>?a >@q?÷B@Ai?K%ؘ@6(Aީ@&h@MNۤ?-蟠!@gEl@p"@f^ ??!%@@(H!'@O`@۞A*@X#@37e+@ 4H@T3v,@M(@;*@(\4@I*:.@mL+@UF.+@:eK@e z  BMNN?]9]'P  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+u` >+v` kXw` x` Vy` z` {(  ~  <x GH& @ se]`x8P <Bogus<w 3dVg723 M NM4 3Q  8 BuffersQ ; Q ; Q3_  NM   4E4 3Q  3 BuffersQ ;  Q ; Q3_  NM  4E4 3Q 1 BufferQ ;  Q ; Q3_  NM   4E4D$% M 3O&vQ4$% M 3O&uQ4FAY 3Ok*3 b#M&{43*4@@N#M&y! M4% YM 3Ob&zQ 0Request Size (K bytes)'4%  OM Z3O+S&zQ &Throughput (MB/s)'4523  43" 44% ! M:3O&&xQ b/Read 4 Disk Stripes Throughput vs Requst Depth'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@e`F 3@QF@?iO?s[ @=#F@ k @I[.*%@/kJ$@5q@./*@$9x)@3n@%Z.@^̲S-@ͫ"@_'0@h.@ᰄ%@(鐷j1@mZ/@t˧<)@;7@0@2 v,@e >@    dMbP?_*+%"??rU  (  d^   #  ]  `8Pz  BMNN?] P  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` =~` >+` >+` >+3dTT23 M NM4 3Q 1 DiskQ ; Q ; Q3_4E4 3Q 2 DisksQ ; Q ; Q3_  NM  d4E4 3Q 3 DisksQ ; Q ; Q3_  NM  d4E4 3Q 4 DisksQ ; Q ; Q3_ NM   d4E4D$% M 3O&Q4$% M 3O&Q4FA r 3O 3 b#M43*4@@N#M! M4% [_ AM 3O`&Q 0Request Size (K bytes)'4% SM Z3OS&Q &Throughput (MB/s)'4523  43" 53O+?;% M3O&aQ423 M NM4444% r M:3O&~Q R'Read Throughput vs Stripes 3 deep Fast'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@eJ\@, @{/d ~?7~f>?/IY)@9ή@Osp@cuL@罵@DfC#@1\q%@7&wz$@)LzO@E&@c)@_7r&{)@۵0C @!oM-(@$~e-@߼kb-@`Jkc@! (@(,/@:N/@|kIc0@}n)@ES-@auڡ/@[~HJ@@u+@e6ݣ.@V30@e z  BMNN?]TP  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` ! ` >+` >+`  ` t` N [3dV23 M NM4 3Q 1 DiskQ ; Q ; Q3_4E4 3Q 2 DisksQ ; Q ; Q3_  NM  d4E4 3Q 3 DisksQ ; Q ; Q3_  NM  d4E4 3Q 4 DisksQ ;  Q ; Q3_ NM   d4E4D$% M 3O&Q4$% M 3O&Q4FAW  3OA 3 b#M&43*4@@N#M&! M4% J VM 3O6b&Q 0Request Size (K bytes)'4% M Z3O.S&Q &Throughput (MB/s)'4523  43" 44% V M03Oj&Q H"Write MBps vs Stripes 3 deep Fast'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@eńW@<-N@$1'@{b@@1 NI@r@R@l.z@bX@$E@4->`@d$T@E׏$@W##@+#@/(@ bm5%@lu5R'@hZ)@S!+@`.=&@Tu+@"S-@5y@F@'@ŧ!-@s&ն.@Ld@OG'@e?9+@\%h#/@e z  BMNN?]P  "??3` e c` ` >+` >+` >` j` ,F3d$!23 M NM4 3QQ ; Q ; Q3_4E4 3QQ ; Q ; Q3_4E4 3QQ ; Q ; Q3_4E4 3QQ ; Q ; Q3_4E4 3QQ ; Q ; Q3_4E4 3QQ ; Q ; Q 3_  NM  d4E4 3QQ ; Q ; Q 3_  NM  d4E4 3QQ ; Q ; Q 3_ ` NM  $$d4E4D$% M 3O&Q4$% M 3O&Q4FAu~ 3Op$ 3 b#M&43*@??0#M&! M4% L ?M 3O;Y&Q ,Request Size (bytes)'4% yM Z3OIP&Q $Cost (CPU ms/MB)'4523  43" 44% \U ~M03Ow&Q 2CPU miliseconds per MB '44e@@@@@@@@@@@@@@@@ @ @ @ @ @ @ @ @0@0@0@0@0@0@0@0@@@@@@@@@@@@@@@@@P@P@P@P@P@P@P@P@`@`@`@`@`@`@`@`@h@h@h@h@h@h@h@h@ee pp  0   @OC]` P <all costs about the same<g   >@     dMbP?_*+%" ??U  (   v   <NMM?<]`P  "??3` t` \I` \I` \I` t` B0*( |̜ r  0  @ L ]P < 2 busses<3@xx  6= @A? ]=P $<1 Bus<?3d23 M NM4 3Q  ReadQ ; Q ; Q3_  NM  4E4 3Q WriteQ ;  Q ; Q3_  NM   d4E4 3Q  WCEQ ;  Q ; Q3_  NM  4E4 3Q  ReadQ ; Q ; Q3_  NM  N4E4 3Q WriteQ ; Q ; Q3_  NM   N4E4 3Q  WCEQ ; Q ; Q3_  NM  N4E4D$% M 3O&Q4$% M 3O&Q4FA  3O3 bM[&43*9@@N#M&! M4% yM 3O&Q 0Request Size (K bytes)'4% "MZ3On&Q &Throughput (MB/s)'4523  43" C]$3OD=J% M3O&Q423 M NM4444%  (2M:3O&Q 0One or Two SCSI Busses'44e@@@@@@@@@@@@ @ @ @ @ @ @0@0@0@0@0@0@@@@@@@@@@@@@P@P@P@P@P@P@`@`@`@`@`@`@h@h@h@h@h@h@ewn?3?{IIN@QF@?ig¸?{b@3@"?}x@=#F@q?R@}/@FN@׈@/kJ$@6(Aީ@4->`@i$75@ 51 @q0u &@$9x)@gEl@+#@_Z6@"LcX@w0@^̲S-@@hZ)@iB6@~$%%@!pd3@h.@X#@"S-@*=,7@%۷ӡ,@DqL˝3@mZ/@M(@s&ն.@߈o7@xhP0@e#@    dMbP?_*+%"??IUD@,( \T0\T 6 v  <MNN?]P  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3`  ` )` \` >h` >h`  ` ?п3d?23 M NM4  3Q Read FSQ ; Q ; Q3_ NM   4E4  3Q  ReadQ ;Q ; Q3_  NM   N4E4  3Q $FS no-buffer WCEQ ;%Q ; Q3_  NM  N4E4  3Q &FS buffered writeQ ; Q ; Q3_  NM  43_  NM  4E4D$% M 3O&Q4$% M 3O&Q4FA  3O3 bM&43*A@N#M&! M4% S!M 3O*&Q 0Request Size (K Bytes)'4% YBM Z3O{&Q &Throughput (MB/s)'4523  43" 3Oq4% M3O&Q423 M NM4444% Rb<M03O&Q *Three Disks, 1 Deep'44 e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@p@p@p@p@eU @J*@WSF@['H0@x1@(o @F>@@@Zpi5@$o'@; -@-@E6@aEF@#uF5@]M4!(#@25@@jk5@2%@]˹3@! ;@g( 45@u}'@01y!@s *@ NbV4@*e(@-M.#@4@𳞱 @qU)@MC!@aeM@Z#@G6>)@e ~v  <MNN? ]HP  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` i ` \` >h` >hп3daw23 M NM4  3Q  ReadQ ;FNQ ; Q3_  NM   N4E4  3Q  WCEQ ;OWQ ; Q3_  NM  4E4  3Q Read FSQ ;4<Q ; Q3_  NM   4E4  3Q WCE FSQ ;=EQ ; Q3_  NM  N4E4D$% M 3O&Q4$% M 3O&Q4FAB@ 3OQ 3 bM43*A@N#M! M4% !M 3O&Q 0Request Size (K Bytes)'4% ?MZ3On&Q &Throughput (MB/s)'4523  43" 44% R<M03O&Q *Three Disks, 3 Deep'44 e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@p@p@p@p@eM*@Da@دӣ&@ZK)@ۂ@~H'@u= 3@qfJ@@6% @e!/@/9@qܮM@ƛt @ 6@/:@8py"@ @0v7@lU9@Ng*%@ymTi@(Q8@9:Qc6@''@_0M@y4@1U+@"HW*@O O@ak+@i})@8aDH)@PJ@א;V,@k+$@]9,e)@e >@    dMbP?_*+%"?? U T0 P            0?X@L@@W@M@p@>@0?@Y@O@@X@M@p@@@0@[@?Y@M@p@A@0@`@@W@@\@N@h@D@0 @?@a@a@U@h@I@00@pp@@f@``@h@R@0 @@0{@x@@@h@^@0 P@0@І@0@Py@x@j@T$Rb4444444P(  p  6NMM? p]`P  "??3` ` ` *` v` v`` 0( @A@A  r   0\  @ CA4]\ E<FElapsed time vs Request Size Controller Cache vs Controller Prefetch<EX~~   < GH} @ i 15]`< <odd< 3dS""23 M NM4 3Q  Ultra CachedQ ; Q ; Q3_ $ NM ] f3f3<<4E4 3Q  Fast CachedQ ; Q ; Q3_  NM ]  d43_  NM ]  d4E4 3Q  Narrow CachedQ ; Q ; Q3_  NM ]  d4E4 3Q "Narrow PrefetchQ ; Q ; Q3_  NM ]  Nd4E4 3Q  Fast PrefetchQ ; Q ; Q3_  NM ]  Nd4E4 3Q  Ultra PrefetchQ ; Q ; Q3_ % NM ] f3<N4E4D$% M 3O&Q4$% M 3O&Q4FA 7 3O_A'3*#M&43*@,#M&! M4% ^ BM3O&Q 0Request Size (K bytes)'4% mM Z3O&Q &Elapsed Time (ms)'4523  43d"  !3O VB% M3O&Q423 M NM443_ M NM ] MM<4444eee >@    dMbP?_*+%"??mU>@    dMbP?_*+%"??mU>@ Oh+'08@Tp  Jim Gray Catharine van IngenMicrosoft Excel@?ռ՜.+,D՜.+,X PXl t|  Microsoftt2   Fig2Fig3Fig4Fig5Fig6Fig7Fig8Fig 9Fig10Table3Sheet2Sheet1Chart2  Worksheets Charts 6> _PID_GUIDAN{CECA7635-4128-11D1-AE3B-0080C7F3EC95} FMicrosoft Excel ChartBiff8Excel.Sheet.89q_940080597* F2'ƾ K'ƾOle MCompObj NbObjInfoPOh+'0@H\p  Jim Gray  Jim Gray Microsoft Excel@]@@?ռ՜.+,D՜.+,t PXl t| 8 Microsoftt8j Workbook!ASummaryInformation("QDocumentSummaryInformation8UP_940422875% Fo'ƾ'ƾ      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~GH Ba= O <  %DGB =8X1Arial1Arial1Arial1Arial1sArial1sArial1Arial1sArial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Courier1* MS Sans Serif1.Times New Roman1Arial1Helv1Geneva1.Times New Roman1.Times New Roman1Arial1.Times New Roman1Arial1* MS Sans Serif1.Times New Roman1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1$Arial1 Arial1Arial1Arial1Arial1Arial1sArial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1iArial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1dArial1Arial1dArial1UArial1Arial1Arial1Arial1Arial1dArial1ZArial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1sArial1Arial1Arial1Arial1Arial1Arial1Arial1nArial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1dArial1Arial1ZArial1_Arial1Arial1Arial1Arial1_Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1UArial1UArial1}Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial"$"#,##0_);\("$"#,##0\)!"$"#,##0_);[Red]\("$"#,##0\)""$"#,##0.00_);\("$"#,##0.00\)'""$"#,##0.00_);[Red]\("$"#,##0.00\)7*2_("$"* #,##0_);_("$"* \(#,##0\);_("$"* "-"_);_(@_).))_(* #,##0_);_(* \(#,##0\);_(* "-"_);_(@_)?,:_("$"* #,##0.00_);_("$"* \(#,##0.00\);_("$"* "-"??_);_(@_)6+1_(* #,##0.00_);_(* \(#,##0.00\);_(* "-"??_);_(@_) #,##0\K\B 0\K\B 0.0% 0.0000.0 0.0000000 0.000000 0.00000 0.0000 0.00000000 #,##0.0""\ #,##0;""\ \-#,##0!""\ #,##0;[Red]""\ \-#,##0"""\ #,##0.00;""\ \-#,##0.00'"""\ #,##0.00;[Red]""\ \-#,##0.00=8_ ""\ * #,##0_ ;_ ""\ * \-#,##0_ ;_ ""\ * "-"_ ;_ @_ .)_ * #,##0_ ;_ * \-#,##0_ ;_ * "-"_ ;_ @_ E@_ ""\ * #,##0.00_ ;_ ""\ * \-#,##0.00_ ;_ ""\ * "-"??_ ;_ @_ 61_ * #,##0.00_ ;_ * \-#,##0.00_ ;_ * "-"??_ ;_ @_ \+0\ 0""$"#,###.##\ ;\("$"#,###.##\) [Red]Generalm/d[Yellow]General 00000000 00000 yy/mm/d "$"#,##0.00 \ \ \ @ \ \ \ \ \ \ @#,##0,_);\(#,##0,\)0+_(* #,##0,_);_(* \(#,##0,\);_(* "-"_);_(@_)0_@\ \ \ \ \ \ \ \ \ \ \ @4/_(* #,##0.0_);_(* \(#,##0.0\);_(* "-"??_);_(@_)0+_(* #,##0_);_(* \(#,##0\);_(* "-"??_);_(@_)83_(* #,##0.000_);_(* \(#,##0.000\);_(* "-"??_);_(@_):5_(* #,##0.0000_);_(* \(#,##0.0000\);_(* "-"??_);_(@_) #,##0,\9\1#,##0.000\2\8!"$"#,##0.00;[Red]"$"#,##0.00 General_) 0000 000000hh:mm:ss\ AM/PM_) "$"0,000 "$"#,### "$"#,##0;6_("$"* #,##0.0_);_("$"* \(#,##0.0\);_("$"* "-"_);_(@_) 0.000% "$"#,##0.0_);\("$"#,##0.0\)=8_("$"* #,##0.0_);_("$"* \(#,##0.0\);_("$"* "-"??_);_(@_)94_("$"* #,##0_);_("$"* \(#,##0\);_("$"* "-"??_);_(@_)A<_("$"* #,##0.000_);_("$"* \(#,##0.000\);_("$"* "-"??_);_(@_)#,##0.0_);\(#,##0.0\)#,##0.000_);\(#,##0.000\)"$"#,\);\("$"#,##0\)"$"#,\);\("$"#,\)"$"#,;\("$"#,\)"$"#.;\("$"#,\) "$"#.#"$"#,##0.00_);\("$"#.##0\)"$"#.##0_);\("$"#.##0\)#,##0.0_);[Red]\(#,##0.0\)% "$"#,##0.0_);[Red]\("$"#,##0.0\)"#,##0.0_%\);[Red]\(#,##0.0%\) #,##0.0_%;[Red]\(#,##0.0%\)#,##0.0%;[Red]\(#,##0.0%\)#,##0.0%;\(#,##0.0%\) 0.0000% 0.00000%!#,##0.00%;[Red]\(#,##0.00%\) 0.0%;\(0.0%\) 0.000"%" 0.0"%""$"#,##0_);\("$"#,##0.0\) "$"#.##$"$"#,##0.000_);\("$"#,##0.000\)&!"$"#,##0.0000_);\("$"#,##0.0000\)2-_(* #,##0.0_);_(* \(#,##0.0\);_(* "-"_);_(@_)4/_(* #,##0.00_);_(* \(#,##0.00\);_(* "-"_);_(@_)61_(* #,##0.000_);_(* \(#,##0.000\);_(* "-"_);_(@_)""#,##0;\-""#,##0""#,##0;[Red]\-""#,##0""#,##0.00;\-""#,##0.00#""#,##0.00;[Red]\-""#,##0.0050_-""* #,##0_-;\-""* #,##0_-;_-""* "-"_-;_-@_-=8_-""* #,##0.00_-;\-""* #,##0.00_-;_-""* "-"??_-;_-@_-#,##0;[Red]\(#,##0\)2-_-* #,##0.0_-;\-* #,##0.0_-;_-* "-"??_-;_-@_-.)_-* #,##0_-;\-* #,##0_-;_-* "-"??_-;_-@_-#,##0.0;[Red]\(#,##0.0\)0.0%;[Red]\(0.0%\)#,##0;\(#,##0\)"SFr."#,##0;"SFr."\-#,##0#"SFr."#,##0;[Red]"SFr."\-#,##0$"SFr."#,##0.00;"SFr."\-#,##0.00)$"SFr."#,##0.00;[Red]"SFr."\-#,##0.00@;_ "SFr."* #,##0_ ;_ "SFr."* \-#,##0_ ;_ "SFr."* "-"_ ;_ @_ HC_ "SFr."* #,##0.00_ ;_ "SFr."* \-#,##0.00_ ;_ "SFr."* "-"??_ ;_ @_  #,##0.00;[Red]\(#,##0.00\)! #,##0.000;[Red]\(#,##0.000\)# #,##0.0000;[Red]\(#,##0.0000\) mmmm\-yy #,##0.0000_);\(#,##0.0000\)#,##0""_);\(#,##0""\)!#,##0""_);[Red]\(#,##0""\)"#,##0.00""_);\(#,##0.00""\)'"#,##0.00""_);[Red]\(#,##0.00""\)=8_ * #,##0_)""_ ;_ * \(#,##0\)""_ ;_ * "-"_)""_ ;_ @_ :5_ * #,##0_)__ ;_ * \(#,##0\)__ ;_ * "-"_)__ ;_ @_ E@_ * #,##0.00_)""_ ;_ * \(#,##0.00\)""_ ;_ * "-"??_)""_ ;_ @_ B=_ * #,##0.00_)__ ;_ * \(#,##0.00\)__ ;_ * "-"??_)__ ;_ @_ #,##0\ "F";\-#,##0\ "F"!#,##0\ "F";[Red]\-#,##0\ "F""#,##0.00\ "F";\-#,##0.00\ "F"'"#,##0.00\ "F";[Red]\-#,##0.00\ "F";6_-* #,##0\ "F"_-;\-* #,##0\ "F"_-;_-* "-"\ "F"_-;_-@_-83_-* #,##0\ _F_-;\-* #,##0\ _F_-;_-* "-"\ _F_-;_-@_-C>_-* #,##0.00\ "F"_-;\-* #,##0.00\ "F"_-;_-* "-"??\ "F"_-;_-@_-@;_-* #,##0.00\ _F_-;\-* #,##0.00\ _F_-;_-* "-"??\ _F_-;_-@_- d/m/yy d/m/yy\ h:mm #,##0" F"_);\(#,##0" F"\)#!#,##0" F"_);[Red]\(#,##0" F"\)$"#,##0.00" F"_);\(#,##0.00" F"\))#$#,##0.00" F"_);[Red]\(#,##0.00" F"\)$#,##0" $";\-#,##0" $"%#,##0" $";[Red]\-#,##0" $" &#,##0.00" $";\-#,##0.00" $"%' #,##0.00" $";[Red]\-#,##0.00" $" (d\.m\.yy) d\.mmm\.yy *d\.mmm +mmm\.yy,d\.m\.yy\ h:mm -0" " .0.00" " /0.0" "0 0.000" "1 0.0000" "2 0.00000" " 3hh:mm 4hh:mm:ss5 m/d/yy\ hh:mm60.00_);[Red]\(0.00\)70.000000000000000%80.00000000000000%90.0000000000000000%:0.0000000000000%;0.000000000000%<0.00000000000%= 0.0000000000%> 0.000000000%? 0.00000000%@ 0.0000000%A 0.000000%B.00                + )  & ) &  & ) &     &   & ) ) ) ) ) ) & ) &  ( +      (  ( + (   (   (  + + + + +             + + + + + + + + + + + + + + + + + + ( + ( , *   *    *      *    *  * * * * *   *  "  ,         ,        '   , , , , ,             , , , , , , , , , , , , , , , , ,   ,  7 "@ @ 8                                                                                   Comma [0]_12~3SO2Comma [0]_Channel TableComma [0]_Full Year FY96Comma [0]_larouxComma [0]_laroux_1Comma [0]_laroux_1_12~3SO2Comma [0]_laroux_12~3SO2Comma [0]_laroux_2Comma [0]_laroux_2_12~3SO2Comma [0]_laroux_3Comma [0]_laroux_MATERAL2&!Comma [0]_laroux_mud plant boltedComma [0]_MACRO1.XLMComma [0]_MATERAL2 Comma [0]_mud plant bolted! Comma [0]_P&L"Comma [0]_Q1 FY96#Comma [0]_Q2 FY96$Comma [0]_Q3 FY96%Comma [0]_Q4 FY96&Comma [0]_QTR94_95' Comma [0]_r1(Comma [0]_Sheet1)Comma [0]_Sheet1_laroux*Comma [0]_Sheet4+ Comma_12~3SO2,Comma_Channel Table-Comma_Full Year FY96.Comma_Jim Pic.xls Chart 1/Comma_Jim Pic.xls Chart 20Comma_Jim Pic.xls Chart 41Comma_Jim Pic.xls Chart 52Comma_Jim Pic.xls Chart 63 Comma_laroux4Comma_laroux_15Comma_laroux_1_12~3SO26Comma_laroux_12~3SO27Comma_laroux_28Comma_laroux_2_12~3SO29Comma_laroux_3:Comma_MACRO1.XLM;Comma_MATERAL2<Comma_mud plant bolted= Comma_P&L>Comma_PERSONAL'?"Comma_PERSONAL_Jim Pic.xls Chart 1'@"Comma_PERSONAL_Jim Pic.xls Chart 2'A"Comma_PERSONAL_Jim Pic.xls Chart 4'B"Comma_PERSONAL_Jim Pic.xls Chart 5'C"Comma_PERSONAL_Jim Pic.xls Chart 6(D#Comma_PERSONAL_pictures.xls Chart 1)E$Comma_PERSONAL_pictures.xls Chart 10)F$Comma_PERSONAL_pictures.xls Chart 11)G$Comma_PERSONAL_pictures.xls Chart 12(H#Comma_PERSONAL_pictures.xls Chart 2(I#Comma_PERSONAL_pictures.xls Chart 3(J#Comma_PERSONAL_pictures.xls Chart 4(K#Comma_PERSONAL_pictures.xls Chart 5(L#Comma_PERSONAL_pictures.xls Chart 6(M#Comma_PERSONAL_pictures.xls Chart 7(N#Comma_PERSONAL_pictures.xls Chart 8(O#Comma_PERSONAL_pictures.xls Chart 9PComma_pictures.xls Chart 1 QComma_pictures.xls Chart 10 RComma_pictures.xls Chart 11 SComma_pictures.xls Chart 12TComma_pictures.xls Chart 2UComma_pictures.xls Chart 3VComma_pictures.xls Chart 4WComma_pictures.xls Chart 5XComma_pictures.xls Chart 6YComma_pictures.xls Chart 7ZComma_pictures.xls Chart 8[Comma_pictures.xls Chart 9\ Comma_Q1 FY96] Comma_Q2 FY96^ Comma_Q3 FY96_ Comma_Q4 FY96`Comma_QTR94_95 aComma_r1b Comma_Sheet1cComma_Sheet1_larouxd Comma_Sheet4efgCurrency [0]_12~3SO2hCurrency [0]_Channel Table iCurrency [0]_Full Year FY96jCurrency [0]_larouxkCurrency [0]_laroux_1"lCurrency [0]_laroux_1_12~3SO2 mCurrency [0]_laroux_12~3SO2nCurrency [0]_laroux_2"oCurrency [0]_laroux_2_12~3SO2pCurrency [0]_laroux_3"qCurrency [0]_laroux_3_12~3SO2rCurrency [0]_laroux_4!sCurrency [0]_laroux_MATERAL2)t$Currency [0]_laroux_mud plant bolteduCurrency [0]_MACRO1.XLMvCurrency [0]_MATERAL2"wCurrency [0]_mud plant boltedxCurrency [0]_P&LyCurrency [0]_Q1 FY96zCurrency [0]_Q2 FY96{Currency [0]_Q3 FY96|Currency [0]_Q4 FY96}Currency [0]_QTR94_95~Currency [0]_r1Currency [0]_Sheet1Currency [0]_Sheet1_larouxCurrency [0]_Sheet4Currency_12~3SO2Currency_Channel TableCurrency_Full Year FY96!Currency_Jim Pic.xls Chart 1!Currency_Jim Pic.xls Chart 2!Currency_Jim Pic.xls Chart 4!Currency_Jim Pic.xls Chart 5!Currency_Jim Pic.xls Chart 6Currency_larouxCurrency_laroux_1Currency_laroux_1_12~3SO2Currency_laroux_12~3SO2Currency_laroux_2Currency_laroux_2_12~3SO2Currency_laroux_3Currency_laroux_3_12~3SO2Currency_laroux_4Currency_MACRO1.XLMCurrency_MATERAL2Currency_mud plant bolted Currency_P&LCurrency_PERSONAL*%Currency_PERSONAL_Jim Pic.xls Chart 1*%Currency_PERSONAL_Jim Pic.xls Chart 2*%Currency_PERSONAL_Jim Pic.xls Chart 4*%Currency_PERSONAL_Jim Pic.xls Chart 5*%Currency_PERSONAL_Jim Pic.xls Chart 6+&Currency_PERSONAL_pictures.xls Chart 1,'Currency_PERSONAL_pictures.xls Chart 10,'Currency_PERSONAL_pictures.xls Chart 11,'Currency_PERSONAL_pictures.xls Chart 12+&Currency_PERSONAL_pictures.xls Chart 2+&Currency_PERSONAL_pictures.xls Chart 3+&Currency_PERSONAL_pictures.xls Chart 4+&Currency_PERSONAL_pictures.xls Chart 5+&Currency_PERSONAL_pictures.xls Chart 6+&Currency_PERSONAL_pictures.xls Chart 7+&Currency_PERSONAL_pictures.xls Chart 8+&Currency_PERSONAL_pictures.xls Chart 9"Currency_pictures.xls Chart 1#Currency_pictures.xls Chart 10#Currency_pictures.xls Chart 11#Currency_pictures.xls Chart 12"Currency_pictures.xls Chart 2"Currency_pictures.xls Chart 3"Currency_pictures.xls Chart 4"Currency_pictures.xls Chart 5"Currency_pictures.xls Chart 6"Currency_pictures.xls Chart 7"Currency_pictures.xls Chart 8"Currency_pictures.xls Chart 9Currency_Q1 FY96Currency_Q2 FY96Currency_Q3 FY96Currency_Q4 FY96Currency_QTR94_95 Currency_r1Currency_Sheet1Currency_Sheet1_larouxCurrency_Sheet4  Header1 Header2Normal_12~3SO2 Normal_BidNormal_Certs Q2Normal_Certs Q2 (2)Normal_Channel TableNormal_Channel Table_1"Normal_Channel Table_1_Macro2#Normal_Channel Table_1_Module1Normal_Channel Table_2'"Normal_Channel Table_Channel Table Normal_Channel Table_Macro2!Normal_Channel Table_Module1Normal_Cost SummNormal_Focus goalsNormal_Full Year FY96Normal_Jim Pic.xls Chart 1Normal_Jim Pic.xls Chart 2Normal_Jim Pic.xls Chart 4Normal_Jim Pic.xls Chart 5Normal_Jim Pic.xls Chart 6 Normal_larouxNormal_laroux_1Normal_laroux_1_12~3SO2Normal_laroux_12~3SO2Normal_laroux_2Normal_laroux_3Normal_MACRO1.XLM Normal_Macro2Normal_MATERAL2Normal_Module1Normal_Module1_1Normal_Module5Normal_mud plant bolted Normal_P&LNormal_PERSONALNormal_PERSONAL_1(#Normal_PERSONAL_Jim Pic.xls Chart 1(#Normal_PERSONAL_Jim Pic.xls Chart 2(#Normal_PERSONAL_Jim Pic.xls Chart 4(#Normal_PERSONAL_Jim Pic.xls Chart 5(#Normal_PERSONAL_Jim Pic.xls Chart 6)$Normal_PERSONAL_pictures.xls Chart 1*%Normal_PERSONAL_pictures.xls Chart 10*%Normal_PERSONAL_pictures.xls Chart 11*%Normal_PERSONAL_pictures.xls Chart 12)$Normal_PERSONAL_pictures.xls Chart 2)$Normal_PERSONAL_pictures.xls Chart 3)$Normal_PERSONAL_pictures.xls Chart 4)$Normal_PERSONAL_pictures.xls Chart 5)$Normal_PERSONAL_pictures.xls Chart 6)$Normal_PERSONAL_pictures.xls Chart 7)$Normal_PERSONAL_pictures.xls Chart 8)$Normal_PERSONAL_pictures.xls Chart 9 Normal_pictures.xls Chart 1!Normal_pictures.xls Chart 10!Normal_pictures.xls Chart 11!Normal_pictures.xls Chart 12 Normal_pictures.xls Chart 2 Normal_pictures.xls Chart 3 Normal_pictures.xls Chart 4 Normal_pictures.xls Chart 5 Normal_pictures.xls Chart 6 Normal_pictures.xls Chart 7 Normal_pictures.xls Chart 8 Normal_pictures.xls Chart 9Normal_PROD SALES% Normal_PROD SALES by Region Pg 2Normal_PRODUCTNormal_Q1 FY96Normal_Q2 FY96Normal_Q3 FY96 Normal_Q4 FY96 Normal_QTR94_95  Normal_r1 Normal_Req Summ  Normal_Sheet1Normal_Sheet1_laroux Normal_Sheet4Normal_SummaryPercent_12~3SO2Percent_laroux8 ``i̜̙3f3333f3ffff333ff333f33f33BBB\Chart8 @Fig2 (Fig3 Q*Fig4 ~nFig5 Fig6 Fig7 Fig8 =Fig 9 YSFig10qTable3 Fig11Fig 12 vFig13 *Fig15 Fig16DSIO V3SCSIredux.xls Paper-OOBPaper-1DiskNobufCostPaper-Alignment BufferCache BufCache2HowManyBuffers Paper-RAID Paper-Cost chunk15150nPaper-MultiDiskPaper-AllocateDataHeaderYZL @@ @0@@@P@`@h@ZL 2_[h["@_ݴ"@? gt"@h8!@eYB"@ 3["@_1M@]@ZL  D@`=sh @ٷA @;/;Q @J2@ Ma^@iU|@iCg@ZL #EN@PB@z@waR@^q@宭@`x7@Vcy@ZL "K D@ X9@,1@G-@c2Uk+@O1@Լ|N.@/0@ZL #-6N@UvG@jq"A@гY%\6@): 5@): 5@|!8@<,oڀ>@ZL 'bM@ӣH@Q`ɯ@@s w7@-!K(5@Jwn6@7@??o91@?exS@ la@PxU@ZL bH砑@ƾ @#!@ I!@ɟµ!@ ɏ!@$!@89!@ZL  #V"@j-c@t$#@R@A[fwh@"߻@u p@'2 @ZL  ?a4)?-ːD?" [?Æ,[:@A,T @IT@9ͮe^@ZL  \D|@"(@TW@Hq@@ج%g@/F@pn6@YY$Z @Z Fd@Z @Z :rc @Z @Z  />*@Z @Z uhC%e6@Z @Z )%ǻ9@Z @Z qe\ ;@Z AZ >x!Km=@Z  AZ  \V:>@Z  `Hw0@Z  q pc6@Z  bW=@Z n?@Z :@Z 6A@Z |@Z Z #@Z ,,@Z Ϗc1@Z %w75@Z R5@Z dMJ5@Z @Z 5g1@Z =@Z 8@/@Z eZ&T3@Z  ~v1@Z !1 [4@YYIZ ConfigurationZ V @Z x1@Z Zpi5@Z E6@Z 25@Z ]˹3@Z 01y!@Z  -M.#@Z  MC!@Z  @@Z  -@Z  ^M4!(#@Z 2%@Z u}'@Z *e(@Z pU)@Z G6>)@Z J*@Z 4*"@Z &1!@Z 9灌 (@Z q0.@Z _6F2@Z a*7@Z S:@Z x^P/;@Z iZ5;@Z f@Z ˹A@Z ?jKr#@Z  K2(@Z !#-@Z "wK1@Z #-3@Z $Ul}3@Z %Zk2@Z 4دӣ&@Z 5u= 3@Z 6/9@Z 7/:@Z 8lU9@Z 99:Qc6@Z :1U+@Z ;i})@Z <k+$@Z =qfJ@Z >qܮM@Z ?8py"@Z @Ng*%@Z A''@Z B"HW*@Z C7aDH)@Z D]9,e)@Z EM*@Z Fv|F@Z Gu[R"@Z HHš%1+@Z IN5@Z J/o79@Z KX;@Z Lk)!<@Z Mnp0;@Z NS>@Z O k< @Z Ps(Ti@M@Z QDvL @Z R]=(@Z S0ܠmX.@Z TPM3@Z UtT`2@Z VV0͒1@Z W?RȄ4@YYZL @@ @0@@@P@`@h@ZL ݍ_N@U(|@@F0@y)6!@ @W-bff @:Ȗ@m?ZL G%H@X2:@ @'.@cz"@El?DD@~j @8A@X9@ZL 9ݍL@϶E<@fff-@:(@8CӞ@X̦@0u??ZL cuĒ_L@@g;@BD*@T'\@[[i@C?ϰ?$M?YZL W!8,?UW??!'?Ph͢?v @?_ օ?(N?ZL 3"f䩋?;?H c?QHRU?ŗ7|߇?Չo?̯(u 1?0u|?ZL aB?Yx?7G8;?kĚ8?Т?LQD.?kD3]?9??ZL  | ?Op?1䌷?"?!@?18Iǐ?:9 ?kL{?ZL  ;?*A?%έ?Ga?KD?N$y?`[u?@C0x?ZL   DO?|ܰ?B0.? Vצ?p* 8?FO~ /?h̿?^κy?ZL @@ @0@@@P@`@h@ZL AVL@56!;@+|-@Pk6@Sㅈ@ 033@t?C?ZL Z,yM@J<@eW-@p@:Ȗ@@(?:Ȗ?ZL I@*i9@ @'.@.33@cff@9Ȗ@{?m?ZL _e}M@y<@@',@ ףPUU@;Ȗ@t@QUU?Sㅈ?ZL ?yXM@vn>@s(\-@u@X9@&1?{?[d;""?ZL &:O@ v>@Hx@'/@nrww@Sㅈ@)\RUU@(?G?ZL AV?56!?+|?Pk6?Sㅈ? 033?t?!r033?ZL Z,y?J?eW½?p̺?:Ȗ??(?W-bff?ZL ?*iӹ? @'?.33?cff?9Ȗ?{?|/33?ZL !_e}?y?@'? ףPUU?;Ȗ?t?QUU?Sㅈ?ZL "?yX?vn?s(\?u?X9?&1̼?{?[d;""?ZL $&:? v?Hx@'?nrww?Sㅈ?)\RUU?(?G?Y[ Z Z ?Z ?Z ?Z ?Z UUUUUU?Z ?Z  ?Z  ?Z  333333?Z  UUUUUU?Z  wwwwww?Z ?Z ?Z ?Z ?Z ?Z """"""?Z 333333?Z DDDDDD?Z UUUUUU?Z ffffff?Z wwwwww?Z ?Z ?Z ?Z ?Z ?Z ?Z ?Z  ?Z $= ףp="@Z %= ףp="@Z &Q8"@Z '= ףp="@Z (= ףp="@Z )Q8"@Z *Q8"@Z +Q8"@Z ,p= #"@Z -Q"@Z .Q"@Z /Q"@Z 0Q"@Z 1Q"@Z 2Q"@Z 3p= #"@Z 433333!@Z 5RQ!@Z 6L!@Z 7)\ @Z 8Gz @Z 9333333 @Z :(\@Z ;Q@Z <Gz@Z =@Z >{Gz@Z ?(\@Z @(\@Z AGz@Z Fףp= @Z Gףp= @Z H@Z Iףp= @Z Jףp= @Z KQ@Z LHzG@Z M)\(@Z N ףp= @Z O@Z P{Gz@Z Qq= ףp@Z RGz@Z Sףp= @Z TQ@Z Uffffff@Z Vףp= @Z Wp= ף@Z XRQ@Z Y@Z Zp= ף@Z [333333@Z \Q@Z ]p= ף@Z ^Gz@Z _Gz@Z `333333@Z azG@Z bq= ףp@Z cףp= @Y Y ZL @@ @0@@@P@`@h@ZL @T?DЎ?]>@??o91@?exS@ la@PxU@ZL }Nj!g? e+#? @?00?HYoo@,ÛH@hD̳O@O$@ZL yǒ7?1$N@|)t8@,ːg!@BI!@ؼ!@%R!@l6!@ZL  0#0lr?ԈWs@Z'Nl@CC@R$@qs-@'JC1@$8T1@ j[1@ZC  k?E5?b?Av?H@g;@#f8[@ZC  ¥Vf?7j?K: d?a%+?b@f7@Hj@Y Y  DSIO V3AnalysisSummary.xls FIOStriping AlignmentCaching (Writes)CachingWCEOverheadCPUTime ReadWritePaper-MultiBusPaper-MultiDisk Paper-OneDiskDataHeaderYYYYYYYYYZL @@ @0@@@P@`@h@ZL QF@?=#F@/kJ$@$9x)@^̲S-@h.@mZ/@0@ZL ig¸?q?6(Aީ@gEl@@X#@M(@mL+@ZL {b@R@4->`@+#@hZ)@"S-@s&ն.@\%h#/@ZL wn?3@}/@i$75@_Z6@iB6@*=,7@߈o7@ZL  3?"?FN@ 51 @"LcX@~$%%@%۷ӡ,@xhP0@ZL  {IIN@}x@׈@q0u &@w0@!pd3@DqL˝3@e#`@+#@hZ)@"S-@s&ն.@\%h#/@Y ZL \D|@"(@TW@Hq@@ج%g@/F@pn6@ZL @@ @0@@@P@`@h@ZL  #V"@j-c@t$#@R@A[fwh@"߻@u p@'2 @ZL   ڢ@s\@KFX@n5@B @Ċm^@.@3D@Z: /ETa@@*@8C@~6Z@@@ZL  iO? k @5q@3n@ͫ"@ᰄ%@t˧<)@2 v,@ZL  QF@?=#F@/kJ$@$9x)@^̲S-@h.@mZ/@0@ZL `F 3@s[ @I[.*%@./*@%Z.@_'0@(鐷j1@;7@ZL ?a4)?-ːD?" [?Æ,[:@A,T @IT@9ͮe^@ZL %O?'ݧ?k@Z@n(1@\L-@̋@JB@ZL Ilpo?%;@_c@T7@1DH@mV?@ e|샂@MB@ZL x>?Ai?MNۤ?f^ ?O`@ 4H@(\4@:eK@ZL ig¸?q?6(Aީ@gEl@@X#@M(@mL+@ZL 0)?÷B@&h@p"@(H!'@37e+@;*@UF.+@ZL ,qE@a >@K%ؘ@-蟠!@?!%@۞A*@T3v,@I*:.@Y Y ,@barcseqioNumbersbaselineSCSIredux.xlslaroux ReadWriteDriverWCEPaper-Alignment BufferCache BufCache2CostHowManyBuffersSheet1 Paper-RAIDPaper-BufCache Paper-Cost Paper-OneDiskPaper-MultiDiskPaper-AllocateDataHeaderYYYYYYYYY Y ZL (ZBj@cs<{H]!@k]d+@/!V4@[8@[doz:@+6L;@Y|;@ZL 7?ϋ? 61?Prrn?2//?eo&8@@Ǵ'=@״zd @ZL /3@ y~"@q4u4-@yAM0@*3@- 8@b":@MQU$:@ZL z~T?q?$qe)?_‚?OG? @/Lg@Ͼ1@Y Y Y YYYY          # AcctCodes; #" Address1Cell< " Address2Cell< Advance: CCCell:  CityCell< CoCell:  Code; +  code2; 25 Conf; +! CountryCell:  Date; + Date2; 25% Description; +& Description2; 25  EmailName: EmpCell: EndDate:  ' Entertainment; 25 Exp2; 25 Firm; 25! Lodging; + Meals; +! Mileage; + Miles; + Misc; +NameCell: OthAcct1: "OthAcct2: #OthTot1: "OthTot2: #! Persons; 25 PostalCell<  Purpose:  Rate; +  rate2; 25 RegionCell:   StartDate:  SubTotExp: , & SummExpenses; #TotConf: , TotEntExp: 6TotExp: .  TotLodging: ,Totmeals: , TotMileage: ,TotMiles: ,TotMisc: , TotSummExp: $ TotTransp: ,  Transp; + U.S.; + Version: Xe         1("3  @@   Table 3 - Variation across disk generation - The table shows the elapsed time in ms for a cache hit and prefetch hit of varying request sizes directly at the drive. Times are measured from a user-level thread running through the NT file system. For the larger request sizes, the drive is given sufficient time between requests to ensure so the request is satisfied from prefetch buffers. Surprisingly, the cache-hit times are always greater than the prefetch hit times.Narrow-ST15150N Fast-ST15150WUltra-ST34371WSize Cache Hit Prefetch Hit;Missing FS wide in SCSI redux. Must be in Buffer Summary ? 4Watch out, data doesn t jive with next 4disk figuresnoWCEWCE  p!w Sheet_Titlereaw(<0sT0 ^(DHwXw@w(0sT04^J0w0sT04^ w ^0sT04^r^(s^0J   0(Н04^6^]S0x00wYw(+` >+` >+` Hg` I X(  Xr X 00  @ -9]0h  < 4-disk write- 8 deep no-extend< W\xx X 60Á  @sL]0]0Á <1-disk write 8-deep no extend<~~ X <Á G+Hb @  O ]`Áh <1 deep equals 8-deep extend<X@3d23 M NM4 3Q .1-Disk, 8 Buf, ExtendQ ;  Q ; Q3_  NM   43_  NM   4E4 3Q ,1-Disk, 8 Buf, WriteQ ; Q ; Q3_  NM   d4E4 3Q ,1-Disk, 1 Buf, WriteQ ; Q ; Q3_  NM   ` `d4E4 3Q .4-Disk, 8 Buf, ExtendQ ;  QQ3_ ( NM  ((4E4 3Q ,4-Disk, 8 Buf, WriteQ ;  Q ; Q3_  NM  d4E4 3Q ,4-Disk, 1 Buf, WriteQ ; QQ3_  NM  d43_  NM  d4E4D$% M 3O&Q4$% M 3O&Q4FAH2  3OZ - 3 b#M43*4@@N#M! M4% U +M 3O&Q 0Request Size (K bytes)'4% MZ3Ok&Q &Throughput (MB/s)'4523  43" 44% # M:3OgC&Q >Allocate/Extend While Writing'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@ek?yǒ7?@T?¥Vf?0#0lr?}Nj!g?E5?1$N@DЎ?7j?ԈWs@ e+#?b?|)t8@]>@?K: d?Z'Nl@ @?Av?,ːg!@?a%+?CC@R$@00?H@BI!@o91@b@qs-@HYoo@g;@ؼ!@?exS@f7@'JC1@,ÛH@#f8[@%R!@ la@Hj@$8T1@hD̳O@l6!@PxU@ j[1@O$@e> O   dMbP?_*+%"0{T0??U `(  j^ ?  # ]  `t z  BNMM?!]`H  "H ??3` >+` >+` & ` & ` hj` hj` hj4 P( 333 P P B< @AA? z ]<| $<Write<4~~ P < @AA? A] $<Read<4} P Hܔ @AA?%fF -]ܔ $ < Write +WCE<4D 3dI 23 M NM4 3Q WriteQ ;  Q ;  Q3_  NM   4E4 3Q  ReadQ ; Q ; Q3_  NM   4E4 3Q  Write + WCEQ ;  Q ;  Q3_  NM  x4E4D$% M 3O&Q4$% M 3O&Q4FA* : 3Oe 3 bN#M&43*@N#M& ! M4% jK3UM3O& Q 0Request Size (K-Bytes)'4% R,MZ3Ok& Q &Throughput (MB/s)'4523  43" 44%  vM:3OA&Q 6Out of the Box Throughput'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@e D@2_[h["@#EN@`=sh @_ݴ"@PB@ٷA @? gt"@z@;/;Q @h8!@waR@J2@eYB"@^q@ Ma^@ 3["@宭@iU|@_1M@`x7@iCg@]@Vcy@e z  BNMM??]`  "??3` >+` >+` r D ` r D ` j ` j` hj5` hj6f0TN(  T T B @AA?k  ] $<Read<5} T Hd @AA?@a ]d  $<Write<63dr!23 M NM4 3Q  ReadQ ;"" Q ; Q3_  NM   4E4 3Q WriteQ ;## Q ; Q3_  NM   4E4 3Q  Write + WCEQ ;'' Q ; Q3_  NM  <4E4D$% M 3O&Q4$% M 3O&Q4FA J 3O 3 bN#M& 43*T@$@@N#M& ! M4% K%UM3O& Q 0Request Size (K Bytes)'4% N, MZ3O& Q 0Overhead (cpu msec/MB)'4523  43" % 3O$ X0% M3O&Q423 M NM4444% vM:3OA&Q 2Out of the Box Overhead'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@eK D@-6N@bM@ X9@UvG@ӣH@,1@jq"A@Q`ɯ@@G-@гY%\6@s w7@c2Uk+@): 5@-!K(5@O1@): 5@Jwn6@Լ|N.@|!8@7@`Q@@e   >@   dMbP?_*+%"?? U@ (  |  BMNN?x <](  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+!` >+"` >+#` N /3d!H23 M NM4 3Q ST34371WQ ; Q ; Q3_ 33> NM   4E4 3Q ST15150WQ ;  Q ; Q3_  NM   4E4D$% M 3O&#Q4$% M 3O&"Q4FAAH 3Oyp h 3 b#M43*@N#M! M4% : M 3O&!Q 0Request Size (K bytes)'4%  MZ3Ok&!Q &Throughput (MB/s)'4523  O43" 44% M M03O&/Q 8Unbuffered Read Throughput'44e@@@@ @ @0@0@@@@@P@P@`@`@h@h@e+uR@#V"@ =!@j-c@Ŵ=޿!@t$#@+!@R@A{!@A[fwh@d,5J!@"߻@d,5J!@u p@f!@2 4@e |  BMNN?x @ <]   M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+$` >+%` >+&` v0 -` v0 .` %1` %v2PHP0(  3d},Y23 M NM4 3Q UltraQ ; Q ; Q3_  NM  4E4 3Q  WideQ ;  Q ; Q3_  NM   4E4D$% M 3O&&Q4$% M 3O&%Q4FAO 3OE* 3 b#M&143*$@@N#M! M4% g M 3OG&2Q 0Request Size (K bytes)'4% 5MZ3Ow&$Q &Throughput (MB/s)'4523  O43" (3O~% M3O&-Q4444% M M03O&.Q :Unbuffered Write Throughput'44e@@@@ @ @0@0@@@@@P@P@`@`@h@h@e@T??DЎ?a4)?]>@?-ːD??" [?o91@Æ,[:@?exS@A,T @ la@IT@PxU@Jo@e |  BMNN? px <]P  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+'` >+(` >+)` 0 03dlZL23 M NM4 3Q UltraQ ; Q ; Q3_  NM  4E4 3Q  WideQ ;  Q ; Q3_  NM   4E4D$% M 3O&)Q4$% M 3O&(Q4FA{+ q 3OT4 3 b#M43*@N#M! M4% U M 3OD&'Q 0Request Size (K bytes)'4%  M Z3Ok&'Q &Throughput (MB/s)'4523  O43" 44% M M03O&0Q F!Unbuffered Write Throughput (WCE)'44e@@@@ @ @0@0@@@@@P@P@`@`@h@h@ebH砑@\D|@ƾ @"(@#!@TW@ I!@Hq@ɟµ!@@ ɏ!@ج%g@$!@/F@89!@;uZ[3@e |  BNMM?!<]`  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` N R` >+S` >+T` >+U` YN`86(  8x 8 6`x @A?"*]`xd# $ < Ultra Read<YC 4<~~ 8 <x @A?d ]x $ $ < Fast Read<Y? xx 8 6y @A?8 O]y$ $ < Ultra Write<YD xx 8 6Py @A? > 0y ]Py\% $ < Fast Write<Y@ @п3d23 M NM4 3Q ST34371WQ ; Q ; Q3_ 33> NM   4E4 3Q ST15150WQ ;  Q ; Q3_  NM   4E4 3QQ ;  Q ; Q3_  NM   43_  NM   4E4 3QQ ;  Q ; Q3_ # NM  43_  NM  43_  NM  43_  NM  43_  NM  43_  NM  43_  NM  43_  NM  4E4D$% M 3O&UQ4$% M 3O&TQ4FAY 3OdP 3 b#M43*@N#M! M4% e;M 3O&SQ 0Request Size (K bytes)'4% qCMZ3Ok&SQ &Throughput (MB/s)'4523  43" 44% KGM03O&RQ .Unbuffered Throughput'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@e+uR@#V"@@T?? =!@j-c@DЎ?a4)?Ŵ=޿!@t$#@]>@?-ːD?+!@R@?" [?A{!@A[fwh@o91@Æ,[:@d,5J!@"߻@?exS@A,T @d,5J!@u p@ la@IT@f!@'2 @PxU@9ͮe^@e |  BNMM? !<]`"  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3`  ` >+V` >+W` >+X` Zp<(  <~ < <r @A?U U]r( $<Fast Write WCE<Zbar~~ < <r @A?TD]rX) $<Ultra Write WCE<ZfLtrr < 0g  @C]g*  <!WCE Unbuffered Write Throughput <  3d23 M NM4 3Q UltraQ ; Q ; Q3_  NM  4E4 3Q  WideQ ;  Q ; Q3_  NM   4E4D$% M 3O&XQ4$% M 3O&WQ4FA - | 3OtU 3 b#M43*@N#M! M4% 5g9M 3O3&VQ 0Request Size (K bytes)'4% =M Z3Ok&VQ &Throughput (MB/s)'4523  43" 444e@@@@ @ @0@0@@@@@P@P@`@`@h@h@ebH砑@\D|@ƾ @"(@#!@TW@ I!@Hq@ɟµ!@@ ɏ!@ج%g@$!@/F@89!@pn6@e >@   dMbP?_*+%"??/U 0 ( GM  v  <MNN?xZ]+  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+9` >+I` >+J` >+Kr3d23 M NM4 3Q  ST34371W, ReadQ ;  Q ;  Q3_4E4 3Q  ST15150W, ReadQ ; !! Q ;  Q3_4E4 3Q "ST34371W, WriteQ ;  Q ;  Q3_4E4 3Q "ST15150W, WriteQ ; "" Q ;  Q3_ f3< NM  f3<Nd4E4 3Q  ST34371W, WCEQ ;  QQ3_4E4 3Q  St15150W, WCEQ ; $$ QQ3_4E4D $% M 3O&KQ4$% M 3O&JQ4FAKID3Ou  3 b#M43*#M! M4% K C8M3O&IQ ,Request Size (bytes)'4% [MZ3Op&IQ &Cost (ms/request)'4523  O43"  e3O e% M3OQ4444% QM03O&9Q >Single Disk - CPU per Request'44ee?&:?*iӹ? v? @'?Hx@'?.33?nrww?cff?Sㅈ?9Ȗ?)\RUU?{?(?|/33?G?e n^ 1  #  ]  `,z   BMNN?-1]\-  "\-??3` I,` 3` IL` >+P` >+Q` $C_` Rc(  ~  <] GH @ &]`]x0 (<)cpu idle because non-WCE writes so slow<,(3dg>F23 M NM4 3Q  ST34371W, ReadQ ;  Q ;  Q3_  NM   4E4 3Q  ST15150W, ReadQ ;  QQ3_  NM  N4E4 3Q "ST34371W, WriteQ ;  QQ3_  NM  N4E4 3Q  Fast WriteQ ;  Q ;  Q3_ f3< NM  f3<Nd4E4 3Q "Ultra WCE writeQ ;  QQ3_  NM  4E4 3Q  ST15150W, WCEQ ;  QQ3_ % NM  %N4E4D$% M 3O&QQ4$% M 3O&PQ4FA8 < 3O[3 b#M&343*MbP?N #M&3! M4% kh8M 3O&cQ 0Request Size (K bytes)'4% "M Z3OH&_Q  Cost (CPU%)'4523  43" 44% M:3Oy&LQ "CPU Utilization'44e@@@@ @ @0@0@@@@@P@P@`@`@h@h@eW!8,?| ?3"f䩋?;?aB? DO?UW?Op?;?*A?Yx?|ܰ??1䌷?H c?%έ?7G8;?B0.?!'?"?QHRU?Ga?kĚ8? Vצ?Ph͢?!@?ŗ7|߇?KD?Т?p* 8?v @?18Iǐ?Չo?N$y?LQD.?FO~ /?_ օ?:9 ?̯(u 1?`[u?kD3]?h̿?(N?kL{?0u|?@C0x?9??^κy?e z   BNMM?,81]`(3  "(3??3` 4%*` 4%+` -IM` >+[` >+\` gb` d3d&P23 M NM4 3Q  ST34371W, ReadQ ;  Q ;  Q3_4E4 3Q  ST15150W, ReadQ ;  Q ;  Q3_4E4 3Q "ST34371W, WriteQ ;  QQ3_  NM  Nd4E4 3Q "ST15150W, WriteQ ;  QQ3_ f3< NM  f3<Nd4E4 3Q  ST34371W, WCEQ ;  QQ3_4E4 3Q  ST15150W, WCEQ ;  QQ3_ % NM  %Nd4E4D$% M 3O&\Q4$% M 3O&[Q4FAS / 3O[3 b#M&d43*.N#M&*! M4% Bh8M 3O0&bQ 0Request Size (K bytes)'4% cM Z3O*!U&+Q  Cost (ms/MB)'4523  43" 44%  M:3O&MQ 2CPU milliseconds per MB'44e@@@@ @ @0@0@@@@@P@P@`@`@h@h@eAVL@_e}M@Z,yM@?yXM@I@&:O@56!;@y<@J<@vn>@*i9@ v>@+|-@@',@eW-@s(\-@ @'.@Hx@'/@Pk6@ ףPUU@p@u@.33@nrww@Sㅈ@;Ȗ@:Ȗ@X9@cff@Sㅈ@ 033@t@@&1?9Ȗ@)\RUU@t?QUU?(?{?{?(?C?Sㅈ?:Ȗ?[d;""?m?G?e z   BNMM?/1]`p4  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` F#N` IO` >+]` >+^` F#a` *# 3d:F23 M NM4 3Q  Fast ReadQ ;  Q ;  Q3_4E4 3Q  Ultra ReadQ ; !! QQ3_4E4 3Q  Fast WriteQ ;  QQ3_  NM  Nd4E4 3Q  Ultra WriteQ ; "" QQ3_ f3< NM  f3<Nd4E4 3Q "Ultra Write WCEQ ;  QQ3_ f3< NM  f3<Nd4E4 3Q  Fast write WCEQ ; $$ QQ3_ % NM  Nd4E4D$% M 3O&^Q4$% M 3O&]Q4FAwE ! 3OM3 b#M&N43*???N#M&N! M4% )h8M 3O&aQ 0Request Size (K bytes)'4% sM Z3Op&Q &Cost (ms/request)'4523  43" _El3OdFrw% M3O&`Q423 M NM4444%  M:3O&OQ <CPU milliseconds per Request'44e@@ @0@@@P@`@h@eAV?_e}?Z,y??yX??&:?56!?y?J?vn?*iӹ? v?+|?@'?eW½?s(\? @'?Hx@'?Pk6? ףPUU?p̺?u?.33?nrww?Sㅈ?;Ȗ?:Ȗ?X9?cff?Sㅈ? 033?t??&1̼?9Ȗ?)\RUU?t?QUU?(?{?{?(?!r033?Sㅈ?W-bff?[d;""?|/33?G?e  >@     dMbP?_*+%"??dU$  T0# )g ?Hz!@@D#;Missing FS wide in SCSI redux. Must be in Buffer Summary ? -` 0 4(  |  BMNN? -]9  "9??3` j:` r D;` >+<` >+=` j>` r D?` H3dr;23 M NM4 3Q Read FSQ ;"" Q ; Q3_  NM ]  d4E4 3Q Write FSQ ;## Q ; Q3_  NM ]  d4E4 3Q  Write FS + WCEQ ;'' Q ; Q3_  NM ] d43_  NM ] d43_  NM ] d43_  NM ] d43_  NM ] d4E4 3Q writeQ ; QQ3_  NM  N43_  NM  N4E4 3Q writeQ ; QQ3_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d4E4D$% M 3O&=Q4$% M 3O&<Q4FA;h 3O 3 bN#M&>43*N@$@@N#M&?! M4% M SM3Oc&HQ 0Request Size (K Bytes)'4% f MZ3Ok&;Q 0Overhead (cpu msec/MB)'4523  43" 44% 3 hM:3O9y&:Q 2Out of the Box Overhead'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@eK D@-6N@bM@?yXM@Z,yM@ X9@UvG@ӣH@vn>@J<@,1@jq"A@Q`ɯ@@s(\-@eW-@G-@гY%\6@s w7@u@p@c2Uk+@): 5@-!K(5@X9@:Ȗ@O1@): 5@Jwn6@&1?@Լ|N.@|!8@7@`Q@@[d;""?:Ȗ?e |  BNMM?p]`;  ";??3` hj@` &A` >+B` >+C` hjD` &E`  GPH 0(   z3d%23 M NM4 3Q  Write WCEQ ; Q ; Q3_  NM  N4E4 3Q  ReadQ ; Q ; Q3_  NM   N4E4 3Q  FS Write + WCEQ ; Q ; Q3_  NM   x4E4 3Q WriteQ ; Q ; Q3_ $ NM  $N43_ $ NM  $N4E4 3Q FS ReadQ ; Q ; Q3_  NM   x4E4 3Q FS WriteQ ; Q ; Q3_ 3ff9 NM  x4E4D$% M 3O&CQ4$% M 3O&BQ4FAp= 3O i3 bN#M&D43*@N#M&E! M4% OM'SM 3O0d&GQ 0Request Size (K-Bytes)'4% MZ3Oe&AQ &Throughput (MB/s)'4523  43"  K3O E% M3O&FQ423 M NM4444% }M:3O&@Q 6Out of the Box Throughput'44e@@@@@@@@@@@@ @ @ @ @ @ @0@0@0@0@0@0@@@@@@@@@@@@@P@P@P@P@P@P@`@`@`@`@`@`@h@h@h@h@h@h@ebH砑@+uR@#EN@@T?2_[h["@ D@ƾ @ =!@PB@DЎ?_ݴ"@`=sh @#!@Ŵ=޿!@z@]>@?? gt"@ٷA @ I!@+!@waR@?h8!@;/;Q @ɟµ!@A{!@^q@o91@eYB"@J2@ ɏ!@d,5J!@宭@?exS@ 3["@ Ma^@$!@d,5J!@`x7@ la@_1M@iU|@89!@f!@Vcy@PxU@]@iCg@e ~v  <NMM?"]`@=  "@=??3` hj`  ` &` >+` >+` hj` &{3d23 M NM4 3Q  Write WCEQ ; Q ; Q3_  NM  N4E4 3Q  ReadQ ; Q ; Q3_  NM   N4E4 3Q  FS Write + WCEQ ; Q ; Q3_  NM   x4E4 3Q WriteQ ; Q ; Q3_ $ NM  $N43_ $ NM  $N4E4 3Q FS ReadQ ; Q ; Q3_  NM   x4E4 3Q FS WriteQ ; Q ; Q3_ 3ff9 NM  x4E4D$% M 3O&Q4$% M 3O&Q4FAx? 8 3O n3 bN#M&43*@N#M&! M4% a?M 3O0a&Q 0Request Size (K-Bytes)'4% zMZ3OY&Q &Throughput (MB/s)'4523  43" z +&`3Oz *K% M3O&FQ423 M NM4444% M:3O&Q 6Out of the Box Throughput'44e@@@@@@@@@@@@ @ @ @ @ @ @0@0@0@0@0@0@@@@@@@@@@@@@P@P@P@P@P@P@`@`@`@`@`@`@h@h@h@h@h@h@ebH砑@+uR@#EN@@T?2_[h["@ D@ƾ @ =!@PB@DЎ?_ݴ"@`=sh @#!@Ŵ=޿!@z@]>@?? gt"@ٷA @ I!@+!@waR@?h8!@;/;Q @ɟµ!@A{!@^q@o91@eYB"@J2@ ɏ!@d,5J!@宭@?exS@ 3["@ Ma^@$!@d,5J!@`x7@ la@_1M@iU|@89!@f!@Vcy@PxU@]@iCg@e ~v   <NMM?P"] `=  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` hj`  ` &` >+` >+` hj` &>3d23 M NM4  3Q  ReadQ ;  Q ; Q3_  NM   N4E4 3Q WriteQ ; Q ; Q3_  NM   43_  NM   4E4 3Q FS ReadQ ; Q ; Q3_  NM   x4E4 3Q FS WriteQ ; Q ; Q3_ 3ff9 NM  x4E4 3Q Read FWQ ;  QQ3_  NM   4E4 3Q Write FWQ ;  QQ3_  NM  4E4 3Q  FS Read FWQ:QQ3_4E4 3Q  FS Write FWQQQ3_4E4D$% M 3O&Q4$% M 3O&Q4FA?B 8 3O+v3 bN#M&43*@N#M&! M4% a?M 3O0a&Q 0Request Size (K-Bytes)'4% zMZ3OY&Q &Throughput (MB/s)'4523  43" 44% M:3O&Q 6Out of the Box Throughput'44 e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@e+uR@@T?2_[h["@ D@#V"@?? =!@DЎ?_ݴ"@`=sh @j-c@a4)?Ŵ=޿!@]>@?? gt"@ٷA @t$#@-ːD?+!@?h8!@;/;Q @R@" [?A{!@o91@eYB"@J2@A[fwh@Æ,[:@d,5J!@?exS@ 3["@ Ma^@"߻@A,T @d,5J!@ la@_1M@iU|@u p@IT@f!@PxU@]@iCg@'2 @9ͮe^@ =!@e >@   dMbP?_*+%"?? U` 8(  |  BNMM?]`B  "B??3` >+e` >+f` >+g` :k` :nXP0(  3d23 M NM4 3Q 1 BufferQ ;  Q ;  Q3_  NM   4E4 3Q  3 BuffersQ ;  Q ;  Q3_  NM  4E4 3Q  8 BuffersQ ; Q ; Q3_  NM   4E4D$% M 3O&gQ4$% M 3O&fQ4FAXd \ 3OS,3 b#M&k43*$@@N#M&k! M4% k M 3O`&eQ 0Request Size (K bytes)'4% uM Z3O2P&eQ &Throughput (MB/s)'4523  43" 44% Nv M:3O1&&nQ r7 Read Throughput - 1 Fast Disk, Various Request Depths'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@e#V"@ ڢ@/ETa@j-c@s\@@*@t$#@KFX@8C@R@n5@~6Z@A[fwh@B @@"߻@Ċm^@@u p@.@'2 @3D@e |  BNMM? ]`F  "F??3` >+h` >+i` >+j` Xl` Xm`  o3d6PT23 M NM4 3Q  WCEQ ; Q ; Q3_  NM  Nd43_  NM  Nd4E4 3Q  8 BuffersQ ;  Q ;  Q3_  NM   4E4 3Q  3 BuffersQ ; Q ; Q3_  NM  4E4 3Q 1 BufferQ ; Q ; Q3_  NM   4E4D$% M 3O&jQ4$% M 3O&iQ4FAT 3O;n 3 b#M43*$@@N#M! M4% M3Ob&hQ 0Request Size (K bytes)'4% & MZ3OQ&oQ &Throughput (MB/s)'4523  43" V[3O% M3O&mQ4444% XZ M03O&&lQ r7Write Throughput - 1 Fast Disk, Various Request Depths'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@e\D|@Ilpo?%O??"(@%;@'ݧ?a4)?TW@_c@k@-ːD?Hq@T7@Z@" [?@1DH@n(1@Æ,[:@ج%g@mV?@\L-@A,T @/F@ e|샂@̋@IT@pn6@MB@JB@9ͮe^@e >@   dMbP?_*+%"??uUT0q4Watch out, data doesn t jive with next 4disk figures` 8(  |  BMNN? i]I  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+p` >+q` >+r` 8y` z3dO^H023 M NM4 3Q  WCEQ ; Q ; Q3_  NM  N43_  NM  N4E4 3Q  3 BuffersQ ; Q ; Q3_  NM  4E4 3Q  8 BuffersQ ; Q ; Q3_  NM   4E4 3Q 1 BufferQ ; Q ; Q3_  NM   4E4D$% M 3O&rQ4$% M 3O&qQ4FAjw 3O 3 b#M&y43*4@@N#M&y! M4% {Y%M3Om&pQ 0Request Size (K bytes)'4%   M Z3OY&pQ &Throughput (MB/s)'4523  43" 3O % M3OQ4444% 4! M:3O&&zQ b/Write 4 Disk Stripes Throughput vs Requst Depth'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@e,qE@ig¸?0)?x>?a >@q?÷B@Ai?K%ؘ@6(Aީ@&h@MNۤ?-蟠!@gEl@p"@f^ ??!%@@(H!'@O`@۞A*@X#@37e+@ 4H@T3v,@M(@;*@(\4@I*:.@mL+@UF.+@:eK@e |  BMNN? i]J  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+s` >+t` u` Vv` w` xXP0(  @3dVg723 M NM4 3Q  8 BuffersQ ; Q ; Q3_  NM   4E4 3Q  3 BuffersQ ;  Q ; Q3_  NM  4E4 3Q 1 BufferQ ;  Q ; Q3_  NM   4E4D$% M 3O&tQ4$% M 3O&sQ4FAY 3Ok*3 b#M&x43*4@@N#M&v! M4% YM 3Ob&wQ 0Request Size (K bytes)'4%  aM Z3O+Q&wQ &Throughput (MB/s)'4523  43" 44% ! M:3O&&uQ b/Read 4 Disk Stripes Throughput vs Requst Depth'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@e`F 3@QF@?iO?s[ @=#F@ k @I[.*%@/kJ$@5q@./*@$9x)@3n@%Z.@^̲S-@ͫ"@_'0@h.@ᰄ%@(鐷j1@mZ/@t˧<)@;7@0@2 v,@e >@    dMbP?_*+%M\\BARCSUP\HP1W oYXLetterPRIV''''"YX??UT0noWCE WCEJ 0 (  |  BMNN? ]T  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` ={` >+|` >+}` >+~3dTT23 M NM4 3Q 1 DiskQ ; Q ; Q3_4E4 3Q 2 DisksQ ; Q ; Q3_  NM  d4E4 3Q 3 DisksQ ; Q ; Q3_  NM  d4E4 3Q 4 DisksQ ; Q ; Q3_ NM   d4E4D$% M 3O&~Q4$% M 3O&}Q4FA F3ON 3 b#M-43*4@@N#M! M4% D AM 3O`&|Q 0Request Size (K bytes)'4% SM Z3OP&|Q &Throughput (MB/s)'4523  43" 3O?;% M3O&`Q423 M NM4444% r M:3O&{Q R'Read Throughput vs Stripes 3 deep Fast'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@e ڢ@i1@Hp"V?QF@?s\@$f@̟k@=#F@KFX@(^_#@9 wr$@/kJ$@n5@HҶ&@+aag)@$9x)@B @~ҟF(@=WS-@^̲S-@Ċm^@5쯯`)@)%/@h.@.@\SO)@-̍E0@mZ/@3D@YУ+@J.@0@e |  BMNN?p ]U  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` ! ` >+` >+`  ` t` N [3dV23 M NM4 3Q 1 DiskQ ; Q ; Q3_4E4 3Q 2 DisksQ ; Q ; Q3_  NM  d4E4 3Q 3 DisksQ ; Q ; Q3_  NM  d4E4 3Q 4 DisksQ ;  Q ; Q3_ NM   d4E4D$% M 3O&Q4$% M 3O&Q4FAW  3O 3 b#M-&43*4@@N#M&! M4%  VM 3O6b&Q 0Request Size (K bytes)'4% M Z3O.Q&Q &Throughput (MB/s)'4523  43" 44% V M03Oj&Q H"Write MBps vs Stripes 3 deep Fast'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@e%O??;$8?ig¸?'ݧ?eRv?K)?q?k@ay@j@6(Aީ@Z@4 N"!@M5]@gEl@n(1@ |@Yt8@@\L-@ R @Ǚbo#@X#@̋@M;$@/(@M(@JB@hU%@U*@mL+@e |  BMNN? ]V  "V??3` e c` ` >+` >+` >` j` ,F3d$!23 M NM4 3QQ ; Q ; Q3_4E4 3QQ ; Q ; Q3_4E4 3QQ ; Q ; Q3_4E4 3QQ ;  Q ; Q3_4E4 3QQ ;!! Q ; Q3_4E4 3QQ ;"" Q ; Q 3_  NM  d4E4 3QQ ;## Q ; Q 3_  NM  d4E4 3QQ ;$$ Q ; Q 3_ ` NM  $$d4E4D$% M 3O&Q4$% M 3O&Q4FA  3OQ 3 b#M-&43*@??0#M&! M4% :a ?M 3O;Y&Q ,Request Size (bytes)'4% ~yM Z3OIN&Q $Cost (CPU ms/MB)'4523  43" 44% \U ~M03Ow&Q 2CPU miliseconds per MB '44e@@@@@@@@@@@@@@@@ @ @ @ @ @ @ @ @0@0@0@0@0@0@0@0@@@@@@@@@@@@@@@@@P@P@P@P@P@P@P@P@`@`@`@`@`@`@`@`@h@h@h@h@h@h@h@h@ee rr  0+  @  ]`+W <all costs about the same<g ~v   <NMM?px] `8X  "8X??3` N [` ! ` >+` >+`  ` t3d23 M NM4  3Q 1 DiskQ ;  Q ; Q3_4E4 3Q 2 DisksQ ;  Q ; Q3_  NM  d4E4 3Q 3 DisksQ ;  Q ; Q3_  NM  d4E4 3Q 4 DisksQ ;  Q ; Q3_ NM   d4E4D$% M 3O&Q4$% M 3O&Q4FAW 3O 3 b#M&43*4@@N#M&! M4% C AM 3O6`&Q 0Request Size (K bytes)'4% |M Z3O.P&Q &Throughput (MB/s)'4523  43" 44% V M03Oj&Q H"Write MBps vs Stripes 3 deep Fast'44 e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@eńW@<-N@$1'@{b@@1 NI@r@R@l.z@bX@$E@4->`@d$T@E׏$@W##@+#@/(@ bm5%@lu5R'@hZ)@S!+@`.=&@Tu+@"S-@5y@F@'@ŧ!-@s&ն.@Ld@OG'@e?9+@\%h#/@mԿv@e >@    dMbP?_*+%" ??SU (   v   <NMM?<]`Z  "Z??3` t` \I` \I` \I` t` B *( |̜ r  0  @ L ]0] < 2 busses<3@xx  6 @A?  ]] $<1 Bus<0@0@?3d23 M NM4 3Q  ReadQ ; Q ; Q3_  NM  4E4 3Q WriteQ ;  Q ; Q3_  NM   d4E4 3Q  WCEQ ;  Q ; Q3_  NM  4E4 3Q  ReadQ ; Q ; Q3_  NM  N4E4 3Q WriteQ ; Q ; Q3_  NM   N4E4 3Q  WCEQ ; Q ; Q3_  NM  N4E4D$% M 3O&Q4$% M 3O&Q4FA   3O3 bM[&43*9@@N#M&! M4% yM 3O&Q 0Request Size (K bytes)'4% "MZ3Ok&Q &Throughput (MB/s)'4523  43" C]$3OD=J% M3O&Q423 M NM4444%  (2M:3O&Q 0One or Two SCSI Busses'44e@@@@@@@@@@@@ @ @ @ @ @ @0@0@0@0@0@0@@@@@@@@@@@@@P@P@P@P@P@P@`@`@`@`@`@`@h@h@h@h@h@h@ewn?3?{IIN@QF@?ig¸?{b@3@"?}x@=#F@q?R@}/@FN@׈@/kJ$@6(Aީ@4->`@i$75@ 51 @q0u &@$9x)@gEl@+#@_Z6@"LcX@w0@^̲S-@@hZ)@iB6@~$%%@!pd3@h.@X#@"S-@*=,7@%۷ӡ,@DqL˝3@mZ/@M(@s&ն.@߈o7@xhP0@e#@   dMbP?_*+%"??IU  T0~ @@ D @ D0@ D@@ DP@ D`@ D h@p@  D0,( \T0\T 6 v  <MNN?]b  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3`  ` )` \` >h` >h`  ` ?п3d?23 M NM4  3Q Read FSQ ; Q ; Q3_ NM   4E4  3Q  ReadQ ;Q ; Q3_  NM   N4E4  3Q $FS no-buffer WCEQ ;%Q ; Q3_  NM  N4E4  3Q &FS buffered writeQ ; Q ; Q3_  NM  43_  NM  4E4D$% M 3O&Q4$% M 3O&Q4FA  3O3 bM&43*A@N#M&! M4% S!M 3O*&Q 0Request Size (K Bytes)'4% uQdM Z3Ow&Q &Throughput (MB/s)'4523  43" g3Ogq4% M3O&Q423 M NM4444% Rb<M03O&Q *Three Disks, 1 Deep'44 eeV @4*"@f@@@x1@&1!@˹A@-@Zpi5@9灌 (@?jKr#@^M4!(#@E6@q0.@K2(@2%@25@_6F2@#-@u}'@]˹3@a*7@wK1@*e(@01y!@S:@-3@pU)@-M.#@x^P/;@Ul}3@G6>)@MC!@iZ5;@Zk2@J*@e ~v  <MNN? ]8c  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` i ` \` >h` >hп3daw23 M NM4  3Q  ReadQ ;FNQ ; Q3_  NM   N4E4  3Q  WCEQ ;OWQ ; Q3_  NM  4E4  3Q Read FSQ ;4<Q ; Q3_  NM   4E4  3Q WCE FSQ ;=EQ ; Q3_  NM  N4E4D$% M 3O&Q4$% M 3O&Q4FAB@ 3OQ 3 bM43*A@N#M! M4% !M 3O&Q 0Request Size (K Bytes)'4% ?MZ3Ok&Q &Throughput (MB/s)'4523  43" 44% R<M03O&Q *Three Disks, 3 Deep'44 eev|F@ k< @دӣ&@qfJ@u[R"@s(Ti@M@u= 3@qܮM@Hš%1+@DvL @/9@8py"@N5@]=(@/:@Ng*%@/o79@0ܠmX.@lU9@''@X;@PM3@9:Qc6@"HW*@k)!<@tT`2@1U+@7aDH)@np0;@V0͒1@i})@]9,e)@S>@?RȄ4@k+$@M*@e >@    dMbP?_*+%" ?? U T0  Table 3 - Variation across disk generation - The table shows the elapsed time in ms for a cache hit and prefetch hit of varying request sizes directly at the drive. Times are measured from a user-level thread running through the NT file system. For the laNarrow-ST15150N Fast-ST15150WUltra-ST34371W Size Cache Hit Prefetch Hit Cache Hit Prefetch Hit Cache Hit Prefetch Hit0?X@L@@W@M@p@>@0?@Y@O@@X@M@p@@@0@[@?Y@M@p@A@0@`@@W@@\@N@h@D@0 @?@a@a@U@h@I@00@pp@@f@``@h@R@0 @@0{@x@@@h@^@0 P@0@І@0@Py@x@j@"y4444444@(  p  6NMM? p]`Pi  "Pi??3` ` ` *` v` v`P 0( @A@A  r   0͖  @ CA4]͖ l E<FElapsed time vs Request Size Controller Cache vs Controller Prefetch<EX~~   < Ζ GH} @ i 15]` Ζl <odd< 3dS""23 M NM4 3Q  Ultra CachedQ ; Q ; Q3_ $ NM ] f3f3<<4E4 3Q  Fast CachedQ ; Q ; Q3_  NM ]  d43_  NM ]  d4E4 3Q  Narrow CachedQ ; Q ; Q3_  NM ]  d4E4 3Q "Narrow PrefetchQ ; Q ; Q3_  NM ]  Nd4E4 3Q  Fast PrefetchQ ; Q ; Q3_  NM ]  Nd4E4 3Q  Ultra PrefetchQ ; Q ; Q3_ % NM ] f3<N4E4D$% M 3O&Q4$% M 3O&Q4FA 7 3O_A'3*#M&43*@,#M&! M4% ^ BM3O&Q 0Request Size (K bytes)'4% }M Z3O&Q &Elapsed Time (ms)'4523  43d"  !3O VB% M3O&Q423 M NM443_ M NM ] MM<4444eee >@   dMbP?_*+%"??mUD`8,(  8v 8 <NMM?]` q  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+` >+` >+` I` IX` IXp<(  <r < 0hՖ  @ E4]hՖs <4-disk write- 8 deep<vxx < 6Ֆ  @H8]Ֆ\t <1-disk write 8-deep<k~~ < <֖ GH  @  t  ]`֖u &<'Extend = 1-disk 1 deep = 4-disk 1 deep<&<3d23 M NM4 3Q  8 Buf, ExtendQ ;  Q ; Q3_  NM   43_  NM   4E4 3Q  8 Buf, WriteQ ; Q ; Q3_  NM   d4E4 3Q  1 Buf, WriteQ ; Q ; Q3_  NM   ` `d4E4 3QQ ;  QQ3_4E4 3Q  4-Disk WriteQ ;  Q ; Q3_  NM  d4E4D$% M 3O&Q4$% M 3O&Q4FA [ 3OJ3 b#M43*4@@N#M! M4% M 3O4&Q 0Request Size (K bytes)'4% bMZ3Ok&Q &Throughput (MB/s)'4523  43" 44% GW M:3O6&Q @Allocate/Extend While Writing'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@ek?yǒ7?@T?0#0lr?0#0lr?E5?1$N@DЎ?ԈWs@ԈWs@b?|)t8@]>@?Z'Nl@Z'Nl@Av?,ːg!@?CC@R$@CC@R$@H@BI!@o91@qs-@qs-@g;@ؼ!@?exS@'JC1@'JC1@#f8[@%R!@ la@$8T1@$8T1@l6!@PxU@ j[1@ j[1@e ~v 8 <NMM? ]`w  "w??3` IX` >+` >+` >+` I` Hg` Hg( * r  0ٖ  @ )]ٖpz  < 4-disk write- 8 deep no-extend< W\xx  6Tٖ  @iR]Tٖ{ <1-disk write 8-deep no extend<~~  <ٖ G+Hb @  R ]`ٖ{ <1 deep equals 8-deep extend<0@?3d23 M NM4 3Q .1-Disk, 8 Buf, ExtendQ ;  Q ; Q3_  NM   43_  NM   4E4 3Q ,1-Disk, 8 Buf, WriteQ ; Q ; Q3_  NM   d4E4 3Q ,1-Disk, 1 Buf, WriteQ ; Q ; Q3_  NM   ` `d4E4 3Q .4-Disk, 8 Buf, ExtendQ ;  QQ3_ ( NM  ((4E4 3Q ,4-Disk, 8 Buf, WriteQ ;  Q ; Q3_  NM  d4E4 3Q ,4-Disk, 1 Buf, WriteQ ; QQ3_  NM  d43_  NM  d4E4D$% M 3O&Q4$% M 3O&Q4FA 3O73 b#M43*4@@N#M! M4% iM 3O&Q 0Request Size (K bytes)'4% 5 MZ3Ok&Q &Throughput (MB/s)'4523  43" 44% x M:3OgC&Q >Allocate/Extend While Writing'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@ek?yǒ7?@T?¥Vf?0#0lr?}Nj!g?E5?1$N@DЎ?7j?ԈWs@ e+#?b?|)t8@]>@?K: d?Z'Nl@ @?Av?,ːg!@?a%+?CC@R$@00?H@BI!@o91@b@qs-@HYoo@g;@ؼ!@?exS@f7@'JC1@,ÛH@#f8[@%R!@ la@Hj@$8T1@hD̳O@l6!@PxU@ j[1@O$@e 88>@   dMbP?_*+%"??dUD(  Dv D <NMM?]`  "??3` h` >h` >h` >h` XA` hH(  H~ H <ߖ GH @  ]`ߖ| <real?<H0@0@@3d23 M NM4 3Q  Unaligned ReadQ ; Q ; Q3_4E4 3Q  Aligned ReadQ ; Q ; Q3_  NM   N4E4 3Q  Aligned WriteQ ;QQ3_  NM   N4E4 3Q "Unaligned WriteQi ;#QQ3_ NM   d4E4D$% M 3O&Q4$% M 3O&Q4FA u 3OH 3 b#M&43*N#M&! M4% Y+M 3O<v&Q ,Request Size (bytes)'4% MZ3Ok&Q &Throughput (MB/s)'4523  43" =3O\5% M3O&Q423 M NM4444% !: M:3Oh&Q D Alignment, 4-disk(ultra), 3-deep'44e@@@@@@@@@@@@AAAAeFd@`Hw0@,,@8@/@:rc @q pc6@Ϗc1@eZ&T3@ />*@ bW=@%w75@~v1@uhC%e6@n?@R5@1 [4@)%ǻ9@:@dMJ5@qe\ ;@6A@@>x!Km=@|@5g1@\V:>@Z #@=@e DD>@   dMbP?_*+%"??iUT(  Tv T <NMM? ]`|  "|??3` >+` >+` k ` k ` k ` k _` k X(  Xx X 6X @A?| ]X8 $<Fast Wide SCSI<Qd5xx X 6 @A?B] $ < Ultra SCSI<8 d5~~ X < @AA?S] $<.< d5?3d23 M NM4 3Q ST15150WQ ;FcQ ; Q3_  NM  P4E4 3Q ST34371WQ ;$AQ ; Q3_ NM   P4E4D$% M 3O&Q4$% M 3O&Q4FAu 3O;3*??M&43*@N#M&! M4% )wM 3OEV&Q "Radial Distance'4% owMZ3Ok&Q &Throughput (MB/s)'4523  43d" 3_ M NM  MM<444%  M:3O&Q >Variation Across Disk Surface'44e????????UUUUUU?UUUUUU??????? 333333? 333333? UUUUUU? UUUUUU? wwwwww? wwwwww? ? ? ? ???????""""""?""""""?333333?333333?DDDDDD?DDDDDD?UUUUUU?UUUUUU?ffffff?ffffff?wwwwww?wwwwww???????????????eףp= @= ףp="@ףp= @= ףp="@@Q8"@ףp= @= ףp="@ףp= @= ףp="@Q@Q8"@HzG@Q8"@)\(@Q8"@ ףp= @p= #"@ @ Q"@ {Gz@ Q"@ q= ףp@ Q"@ Gz@ Q"@ ףp= @ Q"@Q@Q"@ffffff@p= #"@ףp= @33333!@p= ף@RQ!@RQ@L!@@)\ @p= ף@Gz @333333@333333 @Q@(\@p= ף@Q@Gz@Gz@Gz@@333333@{Gz@zG@(\@q= ףp@(\@ףp= @Gz@e >@   dMbP?_*+%"??sU>@   dMbP?_*+%"??sU( <2< ^^ m8 #  Z] `Do|t  <NMM?,7]`h  "h??3` t` \I` \I` \I` ` tH0( @A@A r  0p  @ H ]p <Read<@~~  < @A?: 7  ] $<Write<п3d23 M NM4 3Q  Array ReadQ ; Q ; Q3_  NM  4E4 3Q  Array WriteQ ; Q ; Q3_  NM   d4E4 3Q  Host ReadQ ; Q ; Q3_  NM  4E4 3Q  Host WriteQ ; Q ; Q3_  NM  N4E4D$% M 3O&Q4$% M 3O&Q4FA   3O3 bM[&43*A@@N#M&! M4% M 3O&Q 0Request Size (K bytes)'4% !MZ3Ok&Q &Throughput (MB/s)'4523  43" 44% (u 1M:3O&Q F!RAID5 Throughput vs Request Depth'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@e/3@z~T?(ZBj@7? y~"@q?cs<{H]!@ϋ?q4u4-@$qe)?k]d+@ 61?yAM0@_‚?/!V4@Prrn?*3@OG?[8@2//?- 8@ @[doz:@eo&8@b":@/Lg@+6L;@@Ǵ'=@MQU$:@Ͼ1@Y|;@״zd @e |t  <NMM?@m8]`x  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` t` \I` \I` \I` PHD0( ]T(]T$ Dп3d23 M NM4 3Q  Array ReadQ ; Q ; Q3_  NM  4E4 3Q  Array WriteQ ; Q ; Q3_  NM   d4E4 3Q  Host ReadQ ; Q ; Q3_  NM  4E4 3Q  Host WriteQ ; Q ; Q3_  NM  N4E4D$% M 3O&Q4$% M 3O&Q4FA[O 3Op 3 bM[&43*@?8N#M&! M4% M 3O&Q 0Request Size (K bytes)'4%  MZ3Ok&Q &Throughput (MB/s)'4523  43" Gt3OHd2% M3O&Q423 M NM4444% A =M:3O&Q @RAID5 CPU milliseconds per MB'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@e9ݍL@cuĒ_L@ݍ_N@G%H@϶E<@@g;@U(|@@X2:@fff-@BD*@F0@ @'.@:(@T'\@y)6!@cz"@8CӞ@[[i@ @El?DD@X̦@C?W-bff @~j @0u?ϰ?:Ȗ@8A@?$M?m?X9@e >@  Fig2Fig3Fig4Fig5Fig6Fig7Fig8Fig 9Fig10Table3Fig11Fig 12Fig13Fig15Fig16Chart8  WorksheetsCharts 6> _PID_GUIDAN{CECA7635-4128-11D1-AE3B-0080C7F3EC95}Ole _CompObj$'`bObjInfobWorkbook&(z FMicrosoft Excel ChartBiff8Excel.Sheet.89qOh+'0@H\x  Jim Gray Catharine van IngenMicrosoft Excel@]@@?ռ՜.+,D՜.+,      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFJIOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~  Ba= (   f=JG8X1Arial1Arial1Arial1Arial1sArial1sArial1Arial1sArial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Courier1* MS Sans Serif1.Times New Roman1Arial1Helv1Geneva1.Times New Roman1.Times New Roman1Arial1.Times New Roman1Arial1* MS Sans Serif1.Times New Roman1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1$Arial1 Arial1Arial1Arial1Arial1sArial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1nArial1nArial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1dArial1Arial1Arial1dArial1ZArial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1sArial1Arial1Arial1Arial1Arial1Arial1Arial1nArial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1dArial1ZArial1_Arial1Arial1Arial1Arial1_Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1Arial1dArial1dArial1Arial1Arial1Arial1Arial1Arial1Arial1dArial"$"#,##0_);\("$"#,##0\)!"$"#,##0_);[Red]\("$"#,##0\)""$"#,##0.00_);\("$"#,##0.00\)'""$"#,##0.00_);[Red]\("$"#,##0.00\)7*2_("$"* #,##0_);_("$"* \(#,##0\);_("$"* "-"_);_(@_).))_(* #,##0_);_(* \(#,##0\);_(* "-"_);_(@_)?,:_("$"* #,##0.00_);_("$"* \(#,##0.00\);_("$"* "-"??_);_(@_)6+1_(* #,##0.00_);_(* \(#,##0.00\);_(* "-"??_);_(@_) #,##0\K\B 0\K\B 0.0% 0.0000.0 0.0000000 0.000000 0.00000 0.0000 0.00000000 #,##0.0""\ #,##0;""\ \-#,##0!""\ #,##0;[Red]""\ \-#,##0"""\ #,##0.00;""\ \-#,##0.00'"""\ #,##0.00;[Red]""\ \-#,##0.00=8_ ""\ * #,##0_ ;_ ""\ * \-#,##0_ ;_ ""\ * "-"_ ;_ @_ .)_ * #,##0_ ;_ * \-#,##0_ ;_ * "-"_ ;_ @_ E@_ ""\ * #,##0.00_ ;_ ""\ * \-#,##0.00_ ;_ ""\ * "-"??_ ;_ @_ 61_ * #,##0.00_ ;_ * \-#,##0.00_ ;_ * "-"??_ ;_ @_ \+0\ 0""$"#,###.##\ ;\("$"#,###.##\) [Red]Generalm/d[Yellow]General 00000000 00000 yy/mm/d "$"#,##0.00 \ \ \ @ \ \ \ \ \ \ @#,##0,_);\(#,##0,\)0+_(* #,##0,_);_(* \(#,##0,\);_(* "-"_);_(@_)0_@\ \ \ \ \ \ \ \ \ \ \ @4/_(* #,##0.0_);_(* \(#,##0.0\);_(* "-"??_);_(@_)0+_(* #,##0_);_(* \(#,##0\);_(* "-"??_);_(@_)83_(* #,##0.000_);_(* \(#,##0.000\);_(* "-"??_);_(@_):5_(* #,##0.0000_);_(* \(#,##0.0000\);_(* "-"??_);_(@_) #,##0,\9\1#,##0.000\2\8!"$"#,##0.00;[Red]"$"#,##0.00 General_) 0000 000000hh:mm:ss\ AM/PM_) "$"0,000 "$"#,### "$"#,##0;6_("$"* #,##0.0_);_("$"* \(#,##0.0\);_("$"* "-"_);_(@_) 0.000% "$"#,##0.0_);\("$"#,##0.0\)=8_("$"* #,##0.0_);_("$"* \(#,##0.0\);_("$"* "-"??_);_(@_)94_("$"* #,##0_);_("$"* \(#,##0\);_("$"* "-"??_);_(@_)A<_("$"* #,##0.000_);_("$"* \(#,##0.000\);_("$"* "-"??_);_(@_)#,##0.0_);\(#,##0.0\)#,##0.000_);\(#,##0.000\)"$"#,\);\("$"#,##0\)"$"#,\);\("$"#,\)"$"#,;\("$"#,\)"$"#.;\("$"#,\) "$"#.#"$"#,##0.00_);\("$"#.##0\)"$"#.##0_);\("$"#.##0\)#,##0.0_);[Red]\(#,##0.0\)% "$"#,##0.0_);[Red]\("$"#,##0.0\)"#,##0.0_%\);[Red]\(#,##0.0%\) #,##0.0_%;[Red]\(#,##0.0%\)#,##0.0%;[Red]\(#,##0.0%\)#,##0.0%;\(#,##0.0%\) 0.0000% 0.00000%!#,##0.00%;[Red]\(#,##0.00%\) 0.0%;\(0.0%\) 0.000"%" 0.0"%""$"#,##0_);\("$"#,##0.0\) "$"#.##$"$"#,##0.000_);\("$"#,##0.000\)&!"$"#,##0.0000_);\("$"#,##0.0000\)2-_(* #,##0.0_);_(* \(#,##0.0\);_(* "-"_);_(@_)4/_(* #,##0.00_);_(* \(#,##0.00\);_(* "-"_);_(@_)61_(* #,##0.000_);_(* \(#,##0.000\);_(* "-"_);_(@_)""#,##0;\-""#,##0""#,##0;[Red]\-""#,##0""#,##0.00;\-""#,##0.00#""#,##0.00;[Red]\-""#,##0.0050_-""* #,##0_-;\-""* #,##0_-;_-""* "-"_-;_-@_-=8_-""* #,##0.00_-;\-""* #,##0.00_-;_-""* "-"??_-;_-@_-#,##0;[Red]\(#,##0\)2-_-* #,##0.0_-;\-* #,##0.0_-;_-* "-"??_-;_-@_-.)_-* #,##0_-;\-* #,##0_-;_-* "-"??_-;_-@_-#,##0.0;[Red]\(#,##0.0\)0.0%;[Red]\(0.0%\)#,##0;\(#,##0\)"SFr."#,##0;"SFr."\-#,##0#"SFr."#,##0;[Red]"SFr."\-#,##0$"SFr."#,##0.00;"SFr."\-#,##0.00)$"SFr."#,##0.00;[Red]"SFr."\-#,##0.00@;_ "SFr."* #,##0_ ;_ "SFr."* \-#,##0_ ;_ "SFr."* "-"_ ;_ @_ HC_ "SFr."* #,##0.00_ ;_ "SFr."* \-#,##0.00_ ;_ "SFr."* "-"??_ ;_ @_  #,##0.00;[Red]\(#,##0.00\)! #,##0.000;[Red]\(#,##0.000\)# #,##0.0000;[Red]\(#,##0.0000\) mmmm\-yy #,##0.0000_);\(#,##0.0000\)#,##0""_);\(#,##0""\)!#,##0""_);[Red]\(#,##0""\)"#,##0.00""_);\(#,##0.00""\)'"#,##0.00""_);[Red]\(#,##0.00""\)=8_ * #,##0_)""_ ;_ * \(#,##0\)""_ ;_ * "-"_)""_ ;_ @_ :5_ * #,##0_)__ ;_ * \(#,##0\)__ ;_ * "-"_)__ ;_ @_ E@_ * #,##0.00_)""_ ;_ * \(#,##0.00\)""_ ;_ * "-"??_)""_ ;_ @_ B=_ * #,##0.00_)__ ;_ * \(#,##0.00\)__ ;_ * "-"??_)__ ;_ @_ #,##0\ "F";\-#,##0\ "F"!#,##0\ "F";[Red]\-#,##0\ "F""#,##0.00\ "F";\-#,##0.00\ "F"'"#,##0.00\ "F";[Red]\-#,##0.00\ "F";6_-* #,##0\ "F"_-;\-* #,##0\ "F"_-;_-* "-"\ "F"_-;_-@_-83_-* #,##0\ _F_-;\-* #,##0\ _F_-;_-* "-"\ _F_-;_-@_-C>_-* #,##0.00\ "F"_-;\-* #,##0.00\ "F"_-;_-* "-"??\ "F"_-;_-@_-@;_-* #,##0.00\ _F_-;\-* #,##0.00\ _F_-;_-* "-"??\ _F_-;_-@_- d/m/yy d/m/yy\ h:mm #,##0" F"_);\(#,##0" F"\)#!#,##0" F"_);[Red]\(#,##0" F"\)$"#,##0.00" F"_);\(#,##0.00" F"\))#$#,##0.00" F"_);[Red]\(#,##0.00" F"\)$#,##0" $";\-#,##0" $"%#,##0" $";[Red]\-#,##0" $" &#,##0.00" $";\-#,##0.00" $"%' #,##0.00" $";[Red]\-#,##0.00" $" (d\.m\.yy) d\.mmm\.yy *d\.mmm +mmm\.yy,d\.m\.yy\ h:mm -0" " .0.00" " /0.0" "0 0.000" "1 0.0000" "2 0.00000" " 3hh:mm 4hh:mm:ss5 m/d/yy\ hh:mm60.00_);[Red]\(0.00\)70.000000000000000%80.00000000000000%90.0000000000000000%:0.0000000000000%;0.000000000000%<0.00000000000%= 0.0000000000%> 0.000000000%? 0.00000000%@ 0.0000000%A 0.000000%B.00                + )  & ) &  & ) &     &   & ) ) ) ) ) ) & ) &  ( +      (  ( + (   (   (  + + + + +             + + + + + + + + + + + + + + + + + + ( + ( , *   *    *      *    *  * * * * *   *  "  ,         ,        '   , , , , ,             , , , , , , , , , , , , , , , , ,   ,  7 "@ @ 8                                                                                   Comma [0]_12~3SO2Comma [0]_Channel TableComma [0]_Full Year FY96Comma [0]_larouxComma [0]_laroux_1Comma [0]_laroux_1_12~3SO2Comma [0]_laroux_12~3SO2Comma [0]_laroux_2Comma [0]_laroux_2_12~3SO2Comma [0]_laroux_3Comma [0]_laroux_MATERAL2&!Comma [0]_laroux_mud plant boltedComma [0]_MACRO1.XLMComma [0]_MATERAL2 Comma [0]_mud plant bolted! Comma [0]_P&L"Comma [0]_Q1 FY96#Comma [0]_Q2 FY96$Comma [0]_Q3 FY96%Comma [0]_Q4 FY96&Comma [0]_QTR94_95' Comma [0]_r1(Comma [0]_Sheet1)Comma [0]_Sheet1_laroux*Comma [0]_Sheet4+ Comma_12~3SO2,Comma_Channel Table-Comma_Full Year FY96.Comma_Jim Pic.xls Chart 1/Comma_Jim Pic.xls Chart 20Comma_Jim Pic.xls Chart 41Comma_Jim Pic.xls Chart 52Comma_Jim Pic.xls Chart 63 Comma_laroux4Comma_laroux_15Comma_laroux_1_12~3SO26Comma_laroux_12~3SO27Comma_laroux_28Comma_laroux_2_12~3SO29Comma_laroux_3:Comma_MACRO1.XLM;Comma_MATERAL2<Comma_mud plant bolted= Comma_P&L>Comma_PERSONAL'?"Comma_PERSONAL_Jim Pic.xls Chart 1'@"Comma_PERSONAL_Jim Pic.xls Chart 2'A"Comma_PERSONAL_Jim Pic.xls Chart 4'B"Comma_PERSONAL_Jim Pic.xls Chart 5'C"Comma_PERSONAL_Jim Pic.xls Chart 6(D#Comma_PERSONAL_pictures.xls Chart 1)E$Comma_PERSONAL_pictures.xls Chart 10)F$Comma_PERSONAL_pictures.xls Chart 11)G$Comma_PERSONAL_pictures.xls Chart 12(H#Comma_PERSONAL_pictures.xls Chart 2(I#Comma_PERSONAL_pictures.xls Chart 3(J#Comma_PERSONAL_pictures.xls Chart 4(K#Comma_PERSONAL_pictures.xls Chart 5(L#Comma_PERSONAL_pictures.xls Chart 6(M#Comma_PERSONAL_pictures.xls Chart 7(N#Comma_PERSONAL_pictures.xls Chart 8(O#Comma_PERSONAL_pictures.xls Chart 9PComma_pictures.xls Chart 1 QComma_pictures.xls Chart 10 RComma_pictures.xls Chart 11 SComma_pictures.xls Chart 12TComma_pictures.xls Chart 2UComma_pictures.xls Chart 3VComma_pictures.xls Chart 4WComma_pictures.xls Chart 5XComma_pictures.xls Chart 6YComma_pictures.xls Chart 7ZComma_pictures.xls Chart 8[Comma_pictures.xls Chart 9\ Comma_Q1 FY96] Comma_Q2 FY96^ Comma_Q3 FY96_ Comma_Q4 FY96`Comma_QTR94_95 aComma_r1b Comma_Sheet1cComma_Sheet1_larouxd Comma_Sheet4efgCurrency [0]_12~3SO2hCurrency [0]_Channel Table iCurrency [0]_Full Year FY96jCurrency [0]_larouxkCurrency [0]_laroux_1"lCurrency [0]_laroux_1_12~3SO2 mCurrency [0]_laroux_12~3SO2nCurrency [0]_laroux_2"oCurrency [0]_laroux_2_12~3SO2pCurrency [0]_laroux_3"qCurrency [0]_laroux_3_12~3SO2rCurrency [0]_laroux_4!sCurrency [0]_laroux_MATERAL2)t$Currency [0]_laroux_mud plant bolteduCurrency [0]_MACRO1.XLMvCurrency [0]_MATERAL2"wCurrency [0]_mud plant boltedxCurrency [0]_P&LyCurrency [0]_Q1 FY96zCurrency [0]_Q2 FY96{Currency [0]_Q3 FY96|Currency [0]_Q4 FY96}Currency [0]_QTR94_95~Currency [0]_r1Currency [0]_Sheet1Currency [0]_Sheet1_larouxCurrency [0]_Sheet4Currency_12~3SO2Currency_Channel TableCurrency_Full Year FY96!Currency_Jim Pic.xls Chart 1!Currency_Jim Pic.xls Chart 2!Currency_Jim Pic.xls Chart 4!Currency_Jim Pic.xls Chart 5!Currency_Jim Pic.xls Chart 6Currency_larouxCurrency_laroux_1Currency_laroux_1_12~3SO2Currency_laroux_12~3SO2Currency_laroux_2Currency_laroux_2_12~3SO2Currency_laroux_3Currency_laroux_3_12~3SO2Currency_laroux_4Currency_MACRO1.XLMCurrency_MATERAL2Currency_mud plant bolted Currency_P&LCurrency_PERSONAL*%Currency_PERSONAL_Jim Pic.xls Chart 1*%Currency_PERSONAL_Jim Pic.xls Chart 2*%Currency_PERSONAL_Jim Pic.xls Chart 4*%Currency_PERSONAL_Jim Pic.xls Chart 5*%Currency_PERSONAL_Jim Pic.xls Chart 6+&Currency_PERSONAL_pictures.xls Chart 1,'Currency_PERSONAL_pictures.xls Chart 10,'Currency_PERSONAL_pictures.xls Chart 11,'Currency_PERSONAL_pictures.xls Chart 12+&Currency_PERSONAL_pictures.xls Chart 2+&Currency_PERSONAL_pictures.xls Chart 3+&Currency_PERSONAL_pictures.xls Chart 4+&Currency_PERSONAL_pictures.xls Chart 5+&Currency_PERSONAL_pictures.xls Chart 6+&Currency_PERSONAL_pictures.xls Chart 7+&Currency_PERSONAL_pictures.xls Chart 8+&Currency_PERSONAL_pictures.xls Chart 9"Currency_pictures.xls Chart 1#Currency_pictures.xls Chart 10#Currency_pictures.xls Chart 11#Currency_pictures.xls Chart 12"Currency_pictures.xls Chart 2"Currency_pictures.xls Chart 3"Currency_pictures.xls Chart 4"Currency_pictures.xls Chart 5"Currency_pictures.xls Chart 6"Currency_pictures.xls Chart 7"Currency_pictures.xls Chart 8"Currency_pictures.xls Chart 9Currency_Q1 FY96Currency_Q2 FY96Currency_Q3 FY96Currency_Q4 FY96Currency_QTR94_95 Currency_r1Currency_Sheet1Currency_Sheet1_larouxCurrency_Sheet4  Header1 Header2Normal_12~3SO2 Normal_BidNormal_Certs Q2Normal_Certs Q2 (2)Normal_Channel TableNormal_Channel Table_1"Normal_Channel Table_1_Macro2#Normal_Channel Table_1_Module1Normal_Channel Table_2'"Normal_Channel Table_Channel Table Normal_Channel Table_Macro2!Normal_Channel Table_Module1Normal_Cost SummNormal_Focus goalsNormal_Full Year FY96Normal_Jim Pic.xls Chart 1Normal_Jim Pic.xls Chart 2Normal_Jim Pic.xls Chart 4Normal_Jim Pic.xls Chart 5Normal_Jim Pic.xls Chart 6 Normal_larouxNormal_laroux_1Normal_laroux_1_12~3SO2Normal_laroux_12~3SO2Normal_laroux_2Normal_laroux_3Normal_MACRO1.XLM Normal_Macro2Normal_MATERAL2Normal_Module1Normal_Module1_1Normal_Module5Normal_mud plant bolted Normal_P&LNormal_PERSONALNormal_PERSONAL_1(#Normal_PERSONAL_Jim Pic.xls Chart 1(#Normal_PERSONAL_Jim Pic.xls Chart 2(#Normal_PERSONAL_Jim Pic.xls Chart 4(#Normal_PERSONAL_Jim Pic.xls Chart 5(#Normal_PERSONAL_Jim Pic.xls Chart 6)$Normal_PERSONAL_pictures.xls Chart 1*%Normal_PERSONAL_pictures.xls Chart 10*%Normal_PERSONAL_pictures.xls Chart 11*%Normal_PERSONAL_pictures.xls Chart 12)$Normal_PERSONAL_pictures.xls Chart 2)$Normal_PERSONAL_pictures.xls Chart 3)$Normal_PERSONAL_pictures.xls Chart 4)$Normal_PERSONAL_pictures.xls Chart 5)$Normal_PERSONAL_pictures.xls Chart 6)$Normal_PERSONAL_pictures.xls Chart 7)$Normal_PERSONAL_pictures.xls Chart 8)$Normal_PERSONAL_pictures.xls Chart 9 Normal_pictures.xls Chart 1!Normal_pictures.xls Chart 10!Normal_pictures.xls Chart 11!Normal_pictures.xls Chart 12 Normal_pictures.xls Chart 2 Normal_pictures.xls Chart 3 Normal_pictures.xls Chart 4 Normal_pictures.xls Chart 5 Normal_pictures.xls Chart 6 Normal_pictures.xls Chart 7 Normal_pictures.xls Chart 8 Normal_pictures.xls Chart 9Normal_PROD SALES% Normal_PROD SALES by Region Pg 2Normal_PRODUCTNormal_Q1 FY96Normal_Q2 FY96Normal_Q3 FY96 Normal_Q4 FY96 Normal_QTR94_95  Normal_r1 Normal_Req Summ  Normal_Sheet1Normal_Sheet1_laroux Normal_Sheet4Normal_SummaryPercent_12~3SO2Percent_laroux8 ``i̜̙3f3333f3ffff333ff333f33f33BBB\tChart8 6Fig2 "Fig3 k&Fig4 YFig5 sFig6 Fig7 )Fig8 Fig 9 V1Fig10TTable3 qFig11DFig 12 OFig13 Fig15 Fig16 OWhitePaperV5SCSIredux.xlsUW-OOB OneDisk-NoBuf UW-Buffered UW-Alignment OneDisk-CostMedia-Variation UW-Allocate FW-OneDisk FW-MultiDisk FW-MultiBusArraysRAIDYZL @@ @0@@@P@`@h@ZL 2_[h["@_ݴ"@? gt"@h8!@eYB"@ 3["@_1M@]@ZL  D@`=sh @ٷA @;/;Q @J2@ Ma^@iU|@iCg@ZL #EN@PB@z@waR@^q@宭@`x7@Vcy@ZL "K D@ X9@,1@G-@c2Uk+@O1@Լ|N.@/0@ZL #-6N@UvG@jq"A@гY%\6@): 5@): 5@|!8@<,oڀ>@ZL 'bM@ӣH@Q`ɯ@@s w7@-!K(5@Jwn6@7@??o91@?exS@ la@PxU@ZL bH砑@ƾ @#!@ I!@ɟµ!@ ɏ!@$!@89!@ZL  #V"@j-c@t$#@R@A[fwh@"߻@u p@'2 @ZL  ?a4)?-ːD?" [?Æ,[:@A,T @IT@9ͮe^@ZL  \D|@"(@TW@Hq@@ج%g@/F@pn6@YGZ ConfigurationZ U @Z x1@Z Zpi5@Z E6@Z 25@Z ]˹3@Z 01y!@Z  -M.#@Z  MC!@Z  @@Z  -@Z  ]M4!(#@Z 2%@Z u}'@Z *e(@Z qU)@Z G6>)@Z J*@Z (o @Z $o'@Z aEF@Z @Z ! ;@Z s *@Z 5@Z aeM@Z WSF@Z F>@Z ; -@Z #uF5@Z  jk5@Z !f( 45@Z " NbV4@Z #𳞱 @Z $Z#@Z %e//!@Z 6NZ 7دӣ&@Z 8u= 3@Z 9/9@Z :/:@Z ;lU9@Z <9:Qc6@Z =1U+@Z >i})@Z ?k+$@Z @qfJ@Z AqܮM@Z B8py"@Z CNg*%@Z D''@Z E"HW*@Z F8aDH)@Z G]9,e)@Z HM*@Z Iۂ@Z J@6% @Z Kƛt @Z L @Z MymTi@Z N_0M@Z OO O@Z PPJ@Z QDa@Z R~H'@Z Se!/@Z T 6@Z U0v7@Z V(Q8@Z Wy4@Y(Z @Z Fd@Z @Z :rc @Z  @Z  />*@Z 0@Z uhC%e6@Z @@Z )%ǻ9@Z P@Z qe\ ;@Z `@Z >x!Km=@Z  h@Z  n>@Z  mn@Z  o9u!@Z  `Hw0@Z q pc6@Z  bW=@Z |@Z Z #@Z <r$@Z ,,@Z Ϗc1@Z %w75@Z R5@Z YV5@Z @Z 5g1@Z =@Z  j<,<(@Z !8@/@Z "eZ&T3@Z #_9Tҋ3@Z $C/4@Z &QO>@Z 'op!^?@Z (H"n?@YZL W!8,?UW??!'?Ph͢?v @?_ օ?(N?ZL 3"f䩋?;?H c?QHRU?ŗ7|߇?Չo?̯(u 1?0u|?ZL aB?Yx?7G8;?kĚ8?Т?LQD.?kD3]?9??ZL  | ?Op?1䌷?"?!@?18Iǐ?:9 ?kL{?ZL  ;?*A?%έ?Ga?KD?N$y?`[u?@C0x?ZL   DO?|ܰ?B0.? Vצ?p* 8?FO~ /?h̿?^κy?ZL @@ @0@@@P@`@h@ZL AVL@56!;@+|-@Pk6@Sㅈ@ 033@t?C?ZL Z,yM@J<@eW-@p@:Ȗ@@(?:Ȗ?ZL I@*i9@ @'.@.33@cff@9Ȗ@{?m?ZL _e}M@y<@@',@ ףPUU@;Ȗ@t@QUU?Sㅈ?ZL ?yXM@vn>@s(\-@u@X9@&1?{?[d;""?ZL &:O@ v>@Hx@'/@nrww@Sㅈ@)\RUU@(?G?ZL AV?56!?+|?Pk6?Sㅈ? 033?t?!r033?ZL Z,y?J?eW½?p̺?:Ȗ??(?W-bff?ZL ?*iӹ? @'?.33?cff?9Ȗ?{?|/33?ZL !_e}?y?@'? ףPUU?;Ȗ?t?QUU?Sㅈ?ZL "?yX?vn?s(\?u?X9?&1̼?{?[d;""?ZL $&:? v?Hx@'?nrww?Sㅈ?)\RUU?(?G?Y[Z Z ?Z ?Z ?Z ?Z UUUUUU?Z ?Z  ?Z  ?Z  333333?Z  UUUUUU?Z  wwwwww?Z ?Z ?Z ?Z ?Z ?Z """"""?Z 333333?Z DDDDDD?Z UUUUUU?Z ffffff?Z wwwwww?Z ?Z ?Z ?Z ?Z ?Z ?Z ?Z  ?Z $= ףp="@Z %= ףp="@Z &Q8"@Z '= ףp="@Z (= ףp="@Z )Q8"@Z *Q8"@Z +Q8"@Z ,p= #"@Z -Q"@Z .Q"@Z /Q"@Z 0Q"@Z 1Q"@Z 2Q"@Z 3p= #"@Z 433333!@Z 5RQ!@Z 6L!@Z 7)\ @Z 8Gz @Z 9333333 @Z :(\@Z ;Q@Z <Gz@Z =@Z >{Gz@Z ?(\@Z @(\@Z AGz@Z Fףp= @Z Gףp= @Z H@Z Iףp= @Z Jףp= @Z KQ@Z LHzG@Z M)\(@Z N ףp= @Z O@Z P{Gz@Z Qq= ףp@Z RGz@Z Sףp= @Z TQ@Z Uffffff@Z Vףp= @Z Wp= ף@Z XRQ@Z Y@Z Zp= ף@Z [333333@Z \Q@Z ]p= ף@Z ^Gz@Z _Gz@Z `333333@Z azG@Z bq= ףp@Z cףp= @YZL @@ @0@@@P@`@h@ZL @T?DЎ?]>@??o91@?exS@ la@PxU@ZL }Nj!g? e+#? @?00?HYoo@,ÛH@hD̳O@O$@ZL yǒ7?1$N@|)t8@,ːg!@BI!@ؼ!@%R!@l6!@ZL  0#0lr?ԈWs@Z'Nl@CC@R$@qs-@'JC1@$8T1@ j[1@ZC  k?E5?b?Av?H@g;@#f8[@ZC  ¥Vf?7j?K: d?a%+?b@f7@Hj@YZL \D|@"(@TW@Hq@@ج%g@/F@pn6@ZL @@ @0@@@P@`@h@ZL  #V"@j-c@t$#@R@A[fwh@"߻@u p@'2 @ZL   ڢ@s\@KFX@n5@B @Ċm^@.@3D@Z1 /ETa@@*@8C@~6Z@@ZL  iO? k @5q@3n@ͫ"@ᰄ%@t˧<)@2 v,@ZL  QF@?=#F@/kJ$@$9x)@^̲S-@h.@mZ/@0@Z1`F 3@s[ @I[.*%@./*@%Z.@ZL ?a4)?-ːD?" [?Æ,[:@A,T @IT@9ͮe^@ZL %O?'ݧ?k@Z@n(1@\L-@̋@JB@ZL Ilpo?%;@_c@T7@1DH@mV?@ e|샂@MB@ZL x>?Ai?MNۤ?f^ ?O`@ 4H@(\4@:eK@ZL ig¸?q?6(Aީ@gEl@@X#@M(@mL+@Z10)?÷B@&h@p"@(H!'@Z 풐R@0 ?@-ڳ@Z ף.@Yp0@d 0@Z ҷi+@y,@`sg,k-@ZL ",qE@a >@K%ؘ@-蟠!@?!%@۞A*@T3v,@I*:.@YZL @@ @0@@@P@`@h@ZL  ڢ@s\@KFX@n5@B @Ċm^@.@3D@ZL i1@$f@(^_#@HҶ&@~ҟF(@5쯯`)@\SO)@YУ+@ZL Hp"V?̟k@9 wr$@+aag)@=WS-@)%/@-̍E0@J.@ZL QF@?=#F@/kJ$@$9x)@^̲S-@h.@mZ/@0@ZL %O?'ݧ?k@Z@n(1@\L-@̋@JB@ZL ?eRv?ay@4 N"!@ |@ R @M;$@hU%@ZL ;$8?K)?j@M5]@Yt8@Ǚbo#@/(@U*@ZL  ig¸?q?6(Aީ@gEl@@X#@M(@mL+@ZU  ńW@@l.z@d$T@/(@S!+@5y@Ld@mԿv@ZL  <-N@1 NI@bX@E׏$@ bm5%@`.=&@F@'@OG'@ZL  $1'@r@$E@W##@lu5R'@Tu+@ŧ!-@e?9+@ZL  {b@R@4->`@+#@hZ)@"S-@s&ն.@\%h#/@ZL  M@az;@@,@+.33@K @nrww?@5^?Esww?ZL wO@]?@ktQ0@HBz@/ݔ @x@Esww?[d;""?ZL ntwP@bI@@gb1@bI @ADD@$ADD@v?DD?(?ZL 땲Z,yN@I. t@@!o2@ $(`ɯ!@cXADD@ktcff@ ףPUU? 033?ZL h'O@hffPU>@bI.@56x @M7aff@ktcff@$ADD?m?ZL yvP@P @@~?5ݝ0@1X@Sㅈ@$ADD@V ?abff?ZL P@o_q@@p=?1@( Ez @)\RUU@x@nrww?abff?ZL (P@T@@gb1@56x @/33@|?@V@`bff?Y ZL @@ @0@@@P@`@h@ZL QF@?=#F@/kJ$@$9x)@^̲S-@h.@mZ/@0@ZL ig¸?q?6(Aީ@gEl@@X#@M(@mL+@ZL {b@R@4->`@+#@hZ)@"S-@s&ն.@\%h#/@ZL wn?3@}/@i$75@_Z6@iB6@*=,7@߈o7@ZL  3?"?FN@ 51 @"LcX@~$%%@%۷ӡ,@xhP0@ZL  {IIN@}x@׈@q0u &@w0@!pd3@DqL˝3@e#5@ @ZE]Q;@0@Z6M?@@@ZMԶQ@@P@Z @@`@Z ʣ@@h@Z  jUYf@Z  #@Z VRj*@Z t^=1@Z \_M3@Z b.A5@Z 3 .5@Z Ƈ( 5@Z >9@Z ̿H#@Z .1@Z \8B6@Z AK:@Z S_2=@Z 8d0>@Z CZB@Z !7 @Z "9n@Z #GX4d[%@Z $Yi$.@Z %edr2@Z &!Q1@Z '7'V 2@Z (]`4@Z /k]-a2@Z 0d%@Z 1+(*@Z 2w}#Q2@Z 3uGz\4@Z 4Lw6@Z 5K6@Z 6`C[)7@Z 8.ۘ#@Z 9ϯI2!@Z :@%@Z ;/'@Z <LOއ'@Z =36)@Z >!͙)@Z ?pۢ;p*@Y ZL @@ @0@@@P@`@h@ZL (ZBj@cs<{H]!@k]d+@/!V4@[8@[doz:@+6L;@Y|;@ZL 7?ϋ? 61?Prrn?2//?eo&8@@Ǵ'=@״zd @ZL ݍ_N@U(|@@F0@y)6!@ @W-bff @:Ȗ@m?ZL G%H@X2:@ @'.@cz"@El?DD@~j @8A@X9@ZL /3@ y~"@q4u4-@yAM0@*3@- 8@b":@MQU$:@ZL z~T?q?$qe)?_‚?OG? @/Lg@Ͼ1@ZL 9ݍL@϶E<@fff-@:(@8CӞ@X̦@0u??ZL cuĒ_L@@g;@BD*@T'\@[[i@C?ϰ?$M?    # AcctCodes;#" Address1Cell<" Address2Cell<Advance: CCCell: CityCell<CoCell: Code;+  code2;25 Conf;+! CountryCell: Date;+ Date2;25% Description;+& Description2;25  EmailName:EmpCell:EndDate: ' Entertainment;25 Exp2;25 Firm;25! Lodging;+ Meals;+! Mileage;+ Miles;+ Misc;+NameCell:OthAcct1:"OthAcct2:#OthTot1:"OthTot2:#! Persons;25 PostalCell< Purpose: Rate;+  rate2;25 RegionCell:  StartDate: SubTotExp:, & SummExpenses;#TotConf:, TotEntExp:6TotExp:.  TotLodging:,Totmeals:, TotMileage:,TotMiles:,TotMisc:, TotSummExp:$ TotTransp:,  Transp;+ U.S.;+ Version:p4f       1(  (3  @@  s Table 3 - Variation across disk generation - The table shows the elapsed time in ms for a cache hit and prefetch hit of varying request sizes directly at the drive. Times are measured from a user-level thread running through the NT file system. For the larger request sizes, the drive is given sufficient time between requests to ensure so the request is satisfied from prefetch buffers. Surprisingly, the cache-hit times are always greater than the prefetch hit times.Narrow-ST15150N Fast-ST15150WUltra-ST34371WSize Cache Hit Prefetch Hit;Missing FS wide in SCSI redux. Must be in Buffer Summary ?  ,Twl bT0. lbT0HwXwh@wlbT0/ P@wbT0/  w. bT0/ . . P. |bT0/ . . 0  JWC 00/ $/ ZCS0x00Ywl^n0$0 00Ԣ00ZCO:\WhitePaperVersionsppest.xlsyperlink 0,8s0ptΝ08wl0. 0. _T0\/ $/ . T/ . w/ $/ 0. $/ w/w/ . 0. w8w,wXwO )w0. ĻwjT0bT0. <. ~0D00. jT0P`jT0h0bT0bT0K0bT0jT0s00$ 0  "p aFtch ??eq3` h` >h` >h` >h` XA?3d23 M NM4 3Q  Unaligned ReadQ ; Q ; Q3_4E4 3Q  Aligned ReadQ#); ;&(Q ; Q3_  NM   N4E4 3Q  Aligned WriteQ ;QQ3_  NM   N4E4 3Q "Unaligned WriteQ ;$QQ3_ NM   d4E4D$% M 3O&Q4$% M 3O&Q4FAM>E 3O 3 b#M&43*N#M&! M4% c& P=M 3O<v&Q ,Request Size (bytes)'4%  |MZ3On&Q &Throughput (MB/s)'4523  43" 03O\5% M3O&Q423 M NM4444% M M:3Oh&Q D Alignment, 4-disk(ultra), 3-deep'44e@@@@ @ @0@0@@@@@P@P@`@`@h@h@eFd@mn@|@@:rc @o9u!@Z #@5g1@ />*@`Hw0@<r$@=@uhC%e6@q pc6@,,@j<,<(@)%ǻ9@ bW=@Ϗc1@8@/@qe\ ;@QO>@%w75@eZ&T3@>x!Km=@op!^?@R5@_9Tҋ3@n>@H"n?@YV5@C/4@e> C/    dMbP?_*+%"??U p(  j^ ?  # ]  `45z  BNMM?!]`6  "6??3` >+` >+` & ` & ` hj` hj` hj4 P( 333 P P B @AA? z ]<9 $<Write<4~~ P < @AA? Q]: $<Read<4} P H$ @AA?%fF -]$: $ < Write +WCE<4D 3dI 23 M NM4 3Q WriteQ ; Q ; Q3_  NM   4E4 3Q  ReadQ ;  Q ;  Q3_  NM   4E4 3Q  Write + WCEQ ; Q ; Q3_  NM  x4E4D$% M 3O&Q4$% M 3O&Q4FA* : 3Oe 3 bN#M&43*@N#M& ! M4% jK3UM3O& Q 0Request Size (K-Bytes)'4% 1,MZ3On& Q &Throughput (MB/s)'4523  43" 44%  vM:3OA&Q 6Out of the Box Throughput'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@e D@2_[h["@#EN@`=sh @_ݴ"@PB@ٷA @? gt"@z@;/;Q @h8!@waR@J2@eYB"@^q@ Ma^@ 3["@宭@iU|@_1M@`x7@iCg@]@Vcy@e z  BNMM??]`8  "8??3` >+` >+` r D ` r D ` j ` j` hj5` hj6f0TN(  T T B @AA?j  ]> $<Read<5} T HX @AA?@a ]X? $<Write<63dr!23 M NM4 3Q  ReadQ ; "" Q ;  Q3_  NM   4E4 3Q WriteQ ; ## Q ;  Q3_  NM   4E4 3Q  Write + WCEQ ; '' Q ;  Q3_  NM  <4E4D$% M 3O&Q4$% M 3O&Q4FA J 3O 3 bN#M& 43*T@$@@N#M& ! M4% K%UM3O& Q 0Request Size (K Bytes)'4% -,F MZ3O& Q 0Overhead (cpu msec/MB)'4523  43" % 3O$ X0% M3O&Q423 M NM4444% vM:3OA&Q 2Out of the Box Overhead'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@eK D@-6N@bM@ X9@UvG@ӣH@,1@jq"A@Q`ɯ@@G-@гY%\6@s w7@c2Uk+@): 5@-!K(5@O1@): 5@Jwn6@Լ|N.@|!8@7@`Q@@e   >@    dMbP?_*+%"?? U@ (  |  BMNN?x <]D  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+!` >+"` >+#` N /3d!H23 M NM4 3Q ST34371WQ ;  Q ;  Q3_ 33> NM   4E4 3Q ST15150WQ ;  Q ;  Q3_  NM   4E4D$% M 3O&#Q4$% M 3O&"Q4FAAH 3Oyp h 3 b#M43*@N#M! M4% : M 3O&!Q 0Request Size (K bytes)'4% aCMZ3On&!Q &Throughput (MB/s)'4523  O43" 44% M M03O&/Q 8Unbuffered Read Throughput'44e@@@@ @ @0@0@@@@@P@P@`@`@h@h@e+uR@#V"@ =!@j-c@Ŵ=޿!@t$#@+!@R@A{!@A[fwh@d,5J!@"߻@d,5J!@u p@f!@'2 @e |  BMNN?x @ <]E  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+$` >+%` >+&` v0 -` v0 .` %1` %v2PHP0(  3d},Y23 M NM4 3Q UltraQ ;  Q ;  Q3_  NM  4E4 3Q  WideQ ;  Q ;  Q3_  NM   4E4D$% M 3O&&Q4$% M 3O&%Q4FAO 3OE* 3 b#M&143*$@@N#M! M4% g M 3OG&2Q 0Request Size (K bytes)'4% '= MZ3O{&$Q &Throughput (MB/s)'4523  O43" (3O~% M3O&-Q4444% M M03O&.Q :Unbuffered Write Throughput'44e@@@@ @ @0@0@@@@@P@P@`@`@h@h@e@T??DЎ?a4)?]>@?-ːD??" [?o91@Æ,[:@?exS@A,T @ la@IT@PxU@9ͮe^@e |  BMNN? px <]H  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+'` >+(` >+)` 0 03dlZL23 M NM4 3Q UltraQ ;  Q ;  Q3_  NM  4E4 3Q  WideQ ;  Q ;  Q3_  NM   4E4D$% M 3O&)Q4$% M 3O&(Q4FA{+ q 3OT4 3 b#M43*@N#M! M4% U M 3OD&'Q 0Request Size (K bytes)'4% CM Z3On&'Q &Throughput (MB/s)'4523  O43" 44% M M03O&0Q F!Unbuffered Write Throughput (WCE)'44e@@@@ @ @0@0@@@@@P@P@`@`@h@h@ebH砑@\D|@ƾ @"(@#!@TW@ I!@Hq@ɟµ!@@ ɏ!@ج%g@$!@/F@89!@pn6@e |  BNMM?!<]`XI  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` N N` >+O` >+P` >+Q` UN`86(  8x 8 6 @A?"*]$L $ < Ultra Read<UC 4<~~ 8 <$ @A?d ]$L $ < Fast Read<U? xx 8 6D @A?8 O]DtM $ < Ultra Write<UD xx 8 6 @A? > 0y ]N $ < Fast Write<U@ @п3d23 M NM4 3Q ST34371WQ ;  Q ;  Q3_ 33> NM   4E4 3Q ST15150WQ ;  Q ;  Q3_  NM   4E4 3QQ ; Q ;  Q3_  NM   43_  NM   4E4 3QQ ;  Q ;  Q3_ # NM  43_  NM  43_  NM  43_  NM  43_  NM  43_  NM  43_  NM  43_  NM  4E4D$% M 3O&QQ4$% M 3O&PQ4FAY 3OdP 3 b#M43*@N#M! M4% e;M 3O&OQ 0Request Size (K bytes)'4% qspMZ3On&OQ &Throughput (MB/s)'4523  43" 44% KGM03O&NQ .Unbuffered Throughput'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@e+uR@#V"@@T?? =!@j-c@DЎ?a4)?Ŵ=޿!@t$#@]>@?-ːD?+!@R@?" [?A{!@A[fwh@o91@Æ,[:@d,5J!@"߻@?exS@A,T @d,5J!@u p@ la@IT@f!@'2 @PxU@9ͮe^@e |  BNMM? !<]`K  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3`  ` >+R` >+S` >+T` Vp<(  <~ < < @A?U U]pQ $<Fast Write WCE<Vbar~~ < < @A?TD]R $<Ultra Write WCE<VfLtrr < 0,  @C],R  <!WCE Unbuffered Write Throughput <  3d23 M NM4 3Q UltraQ ;  Q ;  Q3_  NM  4E4 3Q  WideQ ;  Q ;  Q3_  NM   4E4D$% M 3O&TQ4$% M 3O&SQ4FA - | 3OtU 3 b#M43*@N#M! M4% 5g9M 3O3&RQ 0Request Size (K bytes)'4% jM Z3On&RQ &Throughput (MB/s)'4523  43" 444e@@@@ @ @0@0@@@@@P@P@`@`@h@h@ebH砑@\D|@ƾ @"(@#!@TW@ I!@Hq@ɟµ!@@ ɏ!@ج%g@$!@/F@89!@pn6@e >@    dMbP?_*+%"??/Uh $ $( GM  ^ [2  #  ] `xWz   BNMM?2]`LX  "LX??3` 4%*` 4%+` -II` >+W` >+X` g^` `3d23 M NM4 3Q  ST34371W, ReadQ ; Q ; Q3_4E4 3Q  ST15150W, ReadQ ; Q ; Q3_4E4 3Q "ST34371W, WriteQ ; QQ3_  NM  Nd4E4 3Q "ST15150W, WriteQ ; QQ3_ f3< NM  f3<Nd4E4 3Q  ST34371W, WCEQ ; QQ3_4E4 3Q  ST15150W, WCEQ ; QQ3_ % NM  %Nd4E4D$% M 3O&XQ4$% M 3O&WQ4FA8^ 3Ol3 b#M&`43*.N#M&*! M4% vM 3O0&^Q 0Request Size (K bytes)'4% (?JM Z3O*!Q&+Q  Cost (ms/MB)'4523  43" 44%  M:3O&IQ 2CPU milliseconds per MB'44e@@@@ @ @0@0@@@@@P@P@`@`@h@h@eAVL@_e}M@Z,yM@?yXM@I@&:O@56!;@y<@J<@vn>@*i9@ v>@+|-@@',@eW-@s(\-@ @'.@Hx@'/@Pk6@ ףPUU@p@u@.33@nrww@Sㅈ@;Ȗ@:Ȗ@X9@cff@Sㅈ@ 033@t@@&1?9Ȗ@)\RUU@t?QUU?(?{?{?(?C?Sㅈ?:Ȗ?[d;""?m?G?e z   BMNN?*2]Y  "Y??3` I,` 3` IH` >+L` >+M` $C[` R_(  ~  < GH @ &]`\ (<)cpu idle because non-WCE writes so slow<,(3dg>F23 M NM4 3Q  ST34371W, ReadQ ; Q ; Q3_  NM   4E4 3Q  ST15150W, ReadQ ;  QQ3_  NM  N4E4 3Q "ST34371W, WriteQ ; QQ3_  NM  N4E4 3Q  Fast WriteQ ;  Q ; Q3_ f3< NM  f3<Nd4E4 3Q "Ultra WCE writeQ ; QQ3_  NM  4E4 3Q  ST15150W, WCEQ ;  QQ3_ % NM  %N4E4D$% M 3O&MQ4$% M 3O&LQ4FA8 < 3O]3 b#M&343*MbP?N #M&3! M4% kh8M 3O&_Q 0Request Size (K bytes)'4% "M Z3OJ&[Q  Cost (CPU%)'4523  43" 44% M:3Oy&HQ "CPU Utilization'44e@@@@ @ @0@0@@@@@P@P@`@`@h@h@eW!8,?| ?3"f䩋?;?aB? DO?UW?Op?;?*A?Yx?|ܰ??1䌷?H c?%έ?7G8;?B0.?!'?"?QHRU?Ga?kĚ8? Vצ?Ph͢?!@?ŗ7|߇?KD?Т?p* 8?v @?18Iǐ?Չo?N$y?LQD.?FO~ /?_ օ?:9 ?̯(u 1?`[u?kD3]?h̿?(N?kL{?0u|?@C0x?9??^κy?e z   BNMM?[2]`H_  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` F#J` IK` >+Y` >+Z` F#]` *# 3d:F23 M NM4 3Q  Fast ReadQ ; Q ; Q3_4E4 3Q  Ultra ReadQ ;!! QQ3_4E4 3Q  Fast WriteQ ; QQ3_  NM  Nd4E4 3Q  Ultra WriteQ ;"" QQ3_ f3< NM  f3<Nd4E4 3Q "Ultra Write WCEQ ; QQ3_ f3< NM  f3<Nd4E4 3Q  Fast write WCEQ ;$$ QQ3_ % NM  Nd4E4D$% M 3O&ZQ4$% M 3O&YQ4FAo*$ e 3OZ3 b#M&J43*???N#M&J! M4% -v*M 3O&]Q 0Request Size (K bytes)'4%  M Z3Om&Q &Cost (ms/request)'4523  43" El3O ?rw% M3O&\Q423 M NM4444% ) |M:3O&KQ <CPU milliseconds per Request'44e@@ @0@@@P@`@h@eAV?_e}?Z,y??yX??&:?56!?y?J?vn?*iӹ? v?+|?@'?eW½?s(\? @'?Hx@'?Pk6? ףPUU?p̺?u?.33?nrww?Sㅈ?;Ȗ?:Ȗ?X9?cff?Sㅈ? 033?t??&1̼?9Ȗ?)\RUU?t?QUU?(?{?{?(?!r033?Sㅈ?W-bff?[d;""?|/33?G?e >@    dMbP?_*+%"??dU$  T0# )g ?Hz!@@D#;Missing FS wide in SCSI redux. Must be in Buffer Summary ? -` 0 4(  |  BMNN? -]Lb  "Lb??3` j9` r D:` >+;` >+<` j=` r D>` G3dr;23 M NM4 3Q Read FSQ ; "" Q ;  Q3_  NM ]  d4E4 3Q Write FSQ ; ## Q ;  Q3_  NM ]  d4E4 3Q  Write FS + WCEQ ; '' Q ;  Q3_  NM ] d43_  NM ] d43_  NM ] d43_  NM ] d43_  NM ] d4E4 3Q writeQ ;  QQ3_  NM  N43_  NM  N4E4 3Q writeQ ;  QQ3_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d4E4D$% M 3O&<Q4$% M 3O&;Q4FA;h 3O 3 bN#M&=43*N@$@@N#M&>! M4% M SM3Oc&GQ 0Request Size (K Bytes)'4% MMZ3On&:Q 0Overhead (cpu msec/MB)'4523  43" 44% 3 hM:3O9y&9Q 2Out of the Box Overhead'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@eK D@-6N@bM@?yXM@Z,yM@ X9@UvG@ӣH@vn>@J<@,1@jq"A@Q`ɯ@@s(\-@eW-@G-@гY%\6@s w7@u@p@c2Uk+@): 5@-!K(5@X9@:Ȗ@O1@): 5@Jwn6@&1?@Լ|N.@|!8@7@`Q@@[d;""?:Ȗ?e |  BNMM?p]`c  "c??3` hj?` &@` >+A` >+B` hjC` &D`  FPH 0(   z3d%23 M NM4 3Q  Write WCEQ ; Q ;  Q3_  NM  N4E4 3Q  ReadQ ; Q ;  Q3_  NM   N4E4 3Q  FS Write + WCEQ ;  Q ;  Q3_  NM   x4E4 3Q WriteQ ; Q ;  Q3_ $ NM  $N43_ $ NM  $N4E4 3Q FS ReadQ ;  Q ;  Q3_  NM   x4E4 3Q FS WriteQ ;  Q ;  Q3_ 3ff9 NM  x4E4D$% M 3O&BQ4$% M 3O&AQ4FAp= 3O i3 bN#M&C43*@N#M&D! M4% OM'SM 3O0d&FQ 0Request Size (K-Bytes)'4%  MZ3Oh&@Q &Throughput (MB/s)'4523  43"  K3O E% M3O&EQ423 M NM4444% }M:3O&?Q 6Out of the Box Throughput'44e@@@@@@@@@@@@ @ @ @ @ @ @0@0@0@0@0@0@@@@@@@@@@@@@P@P@P@P@P@P@`@`@`@`@`@`@h@h@h@h@h@h@ebH砑@+uR@#EN@@T?2_[h["@ D@ƾ @ =!@PB@DЎ?_ݴ"@`=sh @#!@Ŵ=޿!@z@]>@?? gt"@ٷA @ I!@+!@waR@?h8!@;/;Q @ɟµ!@A{!@^q@o91@eYB"@J2@ ɏ!@d,5J!@宭@?exS@ 3["@ Ma^@$!@d,5J!@`x7@ la@_1M@iU|@89!@f!@Vcy@PxU@]@iCg@e ~v  <NMM?"]`e  "e??3` hj`  ` &` >+` >+` hj` &{3d23 M NM4 3Q  Write WCEQ ; Q ;  Q3_  NM  N4E4 3Q  ReadQ ; Q ;  Q3_  NM   N4E4 3Q  FS Write + WCEQ ;  Q ;  Q3_  NM   x4E4 3Q WriteQ ; Q ;  Q3_ $ NM  $N43_ $ NM  $N4E4 3Q FS ReadQ ;  Q ;  Q3_  NM   x4E4 3Q FS WriteQ ;  Q ;  Q3_ 3ff9 NM  x4E4D$% M 3O&Q4$% M 3O&Q4FAx? 8 3O n3 bN#M&43*@N#M&! M4% a?M 3O0a&Q 0Request Size (K-Bytes)'4% MZ3O\&Q &Throughput (MB/s)'4523  43" z +&`3Oz *K% M3O&EQ423 M NM4444% M:3O&Q 6Out of the Box Throughput'44e@@@@@@@@@@@@ @ @ @ @ @ @0@0@0@0@0@0@@@@@@@@@@@@@P@P@P@P@P@P@`@`@`@`@`@`@h@h@h@h@h@h@ebH砑@+uR@#EN@@T?2_[h["@ D@ƾ @ =!@PB@DЎ?_ݴ"@`=sh @#!@Ŵ=޿!@z@]>@?? gt"@ٷA @ I!@+!@waR@?h8!@;/;Q @ɟµ!@A{!@^q@o91@eYB"@J2@ ɏ!@d,5J!@宭@?exS@ 3["@ Ma^@$!@d,5J!@`x7@ la@_1M@iU|@89!@f!@Vcy@PxU@]@iCg@e ~v   <NMM?P"] `lf  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` hj`  ` &` >+` >+` hj` &>3d23 M NM4  3Q  ReadQ ; Q ;  Q3_  NM   N4E4 3Q WriteQ ; Q ;  Q3_  NM   43_  NM   4E4 3Q FS ReadQ ;  Q ;  Q3_  NM   x4E4 3Q FS WriteQ ;  Q ;  Q3_ 3ff9 NM  x4E4 3Q Read FWQ ;  QQ3_  NM   4E4 3Q Write FWQ ;  QQ3_  NM  4E4 3Q  FS Read FWQ:QQ3_4E4 3Q  FS Write FWQQQ3_4E4D$% M 3O&Q4$% M 3O&Q4FA?B 8 3O+v3 bN#M&43*@N#M&! M4% a?M 3O0a&Q 0Request Size (K-Bytes)'4% MZ3O\&Q &Throughput (MB/s)'4523  43" 44% M:3O&Q 6Out of the Box Throughput'44 e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@e+uR@@T?2_[h["@ D@#V"@?? =!@DЎ?_ݴ"@`=sh @j-c@a4)?Ŵ=޿!@]>@?? gt"@ٷA @t$#@-ːD?+!@?h8!@;/;Q @R@" [?A{!@o91@eYB"@J2@A[fwh@Æ,[:@d,5J!@?exS@ 3["@ Ma^@"߻@A,T @d,5J!@ la@_1M@iU|@u p@IT@f!@PxU@]@iCg@'2 @9ͮe^@ =!@e >@    dMbP?_*+%"?? Uh@8(  |  BNMM?]`dk  "dk??3` >+a` >+b` >+c` :g` :iXP0(  3d23 M NM4 3Q 1 BufferQ ;  Q ; Q3_  NM   4E4 3Q  3 BuffersQ ;  Q ; Q3_  NM  4E4 3Q  8 BuffersQ#); ; Q ; Q3_  NM   4E4D$% M 3O&cQ4$% M 3O&bQ4FAXd \ 3OS+3 b#M&g43*$@@N#M&g! M4% k M 3O`&aQ 0Request Size (K bytes)'4% M Z3O2S&aQ &Throughput (MB/s)'4523  43" 44% Nv M:3O1&&iQ r7 Read Throughput - 1 Fast Disk, Various Request Depths'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@e#V"@ ڢ@/ETa@j-c@s\@@*@t$#@KFX@8C@R@n5@~6Z@A[fwh@B @@"߻@Ċm^@풐R@u p@.@0 ?@'2 @3D@-ڳ@e |  BNMM? ]`|o  "|o??3` >+d` >+e` >+f` Xh`  j3d6PT23 M NM4 3Q  WCEQ ; Q ; Q3_  NM  Nd43_  NM  Nd4E4 3Q 1 BufferQ ; Q ; Q3_  NM   4E4 3Q  3 BuffersQ ; Q ; Q3_  NM  4E4 3Q  8 BuffersQ ; Q ; Q3_  NM   4E4D$% #M 3O&fQ4$% #M 3O&eQ4FAD 3O8m 3 b#M43*$@@N#M! M4% M3Ob&dQ 0Request Size (K bytes)'4% BMZ3OS&jQ &Throughput (MB/s)'4523  43" 83OJ=% #M3O&\Q423 M NM4444% XZ M03O&&hQ r7Write Throughput - 1 Fast Disk, Various Request Depths'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@e\D|@?%O?Ilpo?"(@a4)?'ݧ?%;@TW@-ːD?k@_c@Hq@" [?Z@T7@@Æ,[:@n(1@1DH@ج%g@A,T @\L-@mV?@/F@IT@̋@ e|샂@pn6@9ͮe^@JB@MB@e >@    dMbP?_*+%"??uU (  j^ 9 #  i] `|Jz  BMNN?^9]t  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+k` >+l` >+m` 8t` u3dO^H023 M NM4 3Q  WCEQ ;"" Q ; Q3_  NM  N43_  NM  N4E4 3Q 1 BufferQ ; Q ; Q3_  NM   4E4 3Q  3 BuffersQ ; Q ; Q3_  NM  4E4 3Q  8 BuffersQ#);; Q ; Q3_  NM   4E4D$% M 3O&mQ4$% M 3O&lQ4FAjw 3O 3 b#M&t43*4@@N#M&t! M4% {Y%M3Om&kQ 0Request Size (K bytes)'4%  M Z3O\&kQ &Throughput (MB/s)'4523  43" 3O!% M3OQ4444% 4 M:3O&&uQ d0Write 4 Disk Stripes Throughput vs Request Depth'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@e,qE@x>?ig¸?0)?a >@Ai?q?÷B@K%ؘ@MNۤ?6(Aީ@&h@-蟠!@f^ ?gEl@p"@?!%@O`@@(H!'@۞A*@ 4H@X#@ҷi+@T3v,@(\4@M(@y,@I*:.@:eK@mL+@`sg,k-@e z  BMNN?]9]v  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+n` >+o` p` Vq` r` sXP0(  3dVg723 M NM4  3Q  8 BuffersQ#);; Q ; Q3_  NM   4E4 3Q  3 BuffersQ ;  Q ; Q3_  NM  4E4 3Q 1 BufferQ ;  Q ; Q3_  NM   4E4D$% M 3O&oQ4$% M 3O&nQ4FAY 3Ok*3 b#M&s43*4@@N#M&q! M4% YM 3Ob&rQ 0Request Size (K bytes)'4%  OM Z3O+S&rQ &Throughput (MB/s)'4523  43" 44%  M:3O&&pQ d0Read 4 Disk Stripes Throughput vs Request Depth'44 e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@e`F 3@QF@?iO?s[ @=#F@ k @I[.*%@/kJ$@5q@./*@$9x)@3n@%Z.@^̲S-@ͫ"@ף.@h.@ᰄ%@Yp0@mZ/@t˧<)@d 0@0@2 v,@e >@    dMbP?_*+%M\\BARCSUP\HP1W oYXLetterPRIV''''"YX??U 0 (  r  0ē  @  ]`ēl <all costs about the same<n^   #  ]  `~z  BMNN?]4~  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` =v` >+w` >+x` >+y?@3dTT23 M NM4 3Q 1 DiskQ ; Q ; Q3_4E4 3Q 2 DisksQ ; Q ; Q3_  NM  d4E4 3Q 3 DisksQ ; Q ; Q3_  NM  d4E4 3Q 4 DisksQ ; Q ; Q3_ NM   d4E4D$% M 3O&yQ4$% M 3O&xQ4FA`0 3ON 3 b#M43*4@@N#M! M4%  pWM 3O&wQ 0Request Size (K bytes)'4% %bM Z3On&wQ &Throughput (MB/s)'4523  43" 44% T M:3O(&vQ T(Read Throughput vs Stripes - 3 deep Fast'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@e ڢ@i1@Hp"V?QF@?s\@$f@̟k@=#F@KFX@(^_#@9 wr$@/kJ$@n5@HҶ&@+aag)@$9x)@B @~ҟF(@=WS-@^̲S-@Ċm^@5쯯`)@)%/@h.@.@\SO)@-̍E0@mZ/@3D@YУ+@J.@0@e |t   <NMM?] `,A  ",A??3` =` >+` >+` L` j3d23 M NM4 3Q 1 DiskQ ; Q ; Q3_4E4 3Q 2 DisksQ ; Q ; Q3_  NM  d4E4 3Q 3 DisksQ ; Q ; Q3_  NM  d4E4 3Q 4 DisksQ ;  Q ; Q3_ NM   d4E4D$% M 3O&Q4$% M 3O&Q4FA= 3O  W 3 b#M43*4@@N#M&! M4%  KyUM 3O&Q 0Request Size (K bytes)'4% dM Z3On&Q &Throughput (MB/s)'4523  43" =3O=?;% M3O&\Q423 M NM4444% / M:3O(&Q T(WriteThroughput vs Stripes - 3 deep Fast'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@e%O??;$8?ig¸?'ݧ?eRv?K)?q?k@ay@j@6(Aީ@Z@4 N"!@M5]@gEl@n(1@ |@Yt8@@\L-@ R @Ǚbo#@X#@̋@M;$@/(@M(@JB@hU%@U*@mL+@e z  BMNN?]t  "t??3` e cz` {` >+|` >+}` >~` j` ,F3d$!23 M NM4 3QQ ; Q ; Q3_4E4 3QQ ; Q ; Q3_4E4 3QQ ; Q ; Q3_4E4 3QQ ; Q ; Q3_4E4 3QQ ; Q ; Q3_4E4 3QQ ; Q ; Q 3_  NM  d4E4 3QQ ; Q ; Q 3_  NM  d4E4 3QQ ; Q ; Q 3_ ` NM  $$d4E4D$% M 3O&}Q4$% M 3O&|Q4FA 3OJ 3 b#M-&~43*@??0#M&! M4% NKUM 3O;v&{Q ,Request Size (bytes)'4% qVM Z3OIk&Q $Cost (CPU ms/MB)'4523  43" 44% Q vM03O&zQ 2CPU miliseconds per MB '44e@@@@@@@@@@@@@@@@ @ @ @ @ @ @ @ @0@0@0@0@0@0@0@0@@@@@@@@@@@@@@@@@P@P@P@P@P@P@P@P@`@`@`@`@`@`@`@`@h@h@h@h@h@h@h@h@e M@wO@ntwP@땲Z,yN@h'O@yvP@P@(P@az;@]?@bI@@I. t@@hffPU>@P @@o_q@@T@@@,@ktQ0@gb1@!o2@bI.@~?5ݝ0@p=?1@gb1@+.33@HBz@bI @ $(`ɯ!@56x @1X@( Ez @56x @K @/ݔ @ADD@cXADD@M7aff@Sㅈ@)\RUU@/33@nrww?x@$ADD@ktcff@ktcff@$ADD@x@|?@@5^?Esww?v?DD? ףPUU?$ADD?V ?nrww?V@Esww?[d;""?(? 033?m?abff?abff?`bff?e >@    dMbP?_*+%"??sU (   v   <NMM?<]`(  "(??3` t` \I` \I` \I` t` B *( |̜ r  0  @ L ] < 2 busses<3@xx  6 @A? ]d $<1 Bus<?3d23 M NM4 3Q  ReadQ ; Q ; Q3_  NM  4E4 3Q WriteQ ;  Q ; Q3_  NM   d4E4 3Q  WCEQ ;  Q ; Q3_  NM  4E4 3Q  ReadQ ; Q ; Q3_  NM  N4E4 3Q WriteQ ; Q ; Q3_  NM   N4E4 3Q  WCEQ ; Q ; Q3_  NM  N4E4D$% M 3O&Q4$% M 3O&Q4FA  3O3 bM[&43*9@@N#M&! M4% yM 3O&Q 0Request Size (K bytes)'4% "MZ3On&Q &Throughput (MB/s)'4523  43" C]$3OD=J% M3O&Q423 M NM4444%  (2M:3O&Q 0One or Two SCSI Busses'44e@@@@@@@@@@@@ @ @ @ @ @ @0@0@0@0@0@0@@@@@@@@@@@@@P@P@P@P@P@P@`@`@`@`@`@`@h@h@h@h@h@h@ewn?3?{IIN@QF@?ig¸?{b@3@"?}x@=#F@q?R@}/@FN@׈@/kJ$@6(Aީ@4->`@i$75@ 51 @q0u &@$9x)@gEl@+#@_Z6@"LcX@w0@^̲S-@@hZ)@iB6@~$%%@!pd3@h.@X#@"S-@*=,7@%۷ӡ,@DqL˝3@mZ/@M(@s&ն.@߈o7@xhP0@e#@    dMbP?_*+%"??IU  T0~ @@ D @ D0@ D@@ DP@ D`@ D h@p@  D0,( \T0\T 6 v  <MNN?]  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3`  ` )` \` >h` >h`  ` ?п3d?23 M NM4  3Q Read FSQ ; Q ; Q3_ NM   4E4  3Q  ReadQ ;Q ; Q3_  NM   N4E4  3Q $FS no-buffer WCEQ ;%Q ; Q3_  NM  N4E4  3Q &FS buffered writeQ ; Q ; Q3_  NM  43_  NM  4E4D$% M 3O&Q4$% M 3O&Q4FA  3O3 bM&43*A@N#M&! M4% S!M 3O*&Q 0Request Size (K Bytes)'4% YBM Z3O{&Q &Throughput (MB/s)'4523  43" g3Ogq4% M3O&Q423 M NM4444% Rb<M03O&Q *Three Disks, 1 Deep'44 eeU @(o @F>@@@x1@$o'@; -@-@Zpi5@aEF@#uF5@]M4!(#@E6@@jk5@2%@25@! ;@f( 45@u}'@]˹3@s *@ NbV4@*e(@01y!@5@𳞱 @qU)@-M.#@aeM@Z#@G6>)@MC!@WSF@e//!@J*@e ~v  <MNN? ]Č  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` i ` \` >h` >hп3daw23 M NM4  3Q  ReadQ ;FNQ ; Q3_  NM   N4E4  3Q  WCEQ ;OWQ ; Q3_  NM  4E4  3Q Read FSQ ;4<Q ; Q3_  NM   4E4  3Q WCE FSQ ;=EQ ; Q3_  NM  N4E4D$% M 3O&Q4$% M 3O&Q4FAB@ 3OQ 3 bM43*A@N#M! M4% !M 3O&Q 0Request Size (K Bytes)'4% ?MZ3On&Q &Throughput (MB/s)'4523  43" 44% R<M03O&Q *Three Disks, 3 Deep'44 ee8aDH)@O O@1U+@]9,e)@PJ@i})@M*@Da@k+$@ۂ@~H'@دӣ&@qfJ@@6% @e!/@u= 3@qܮM@ƛt @ 6@/9@8py"@ @0v7@/:@Ng*%@ymTi@(Q8@lU9@''@_0M@y4@9:Qc6@"HW*@e >@     dMbP?_*+%" ?? U T0  Table 3 - Variation across disk generation - The table shows the elapsed time in ms for a cache hit and prefetch hit of varying request sizes directly at the drive. Times are measured from a user-level thread running through the NT file system. For the laNarrow-ST15150N Fast-ST15150WUltra-ST34371W Size Cache Hit Prefetch Hit Cache Hit Prefetch Hit Cache Hit Prefetch Hit0?X@L@@W@M@p@>@0?@Y@O@@X@M@p@@@0@[@?Y@M@p@A@0@`@@W@@\@N@h@D@0 @?@a@a@U@h@I@00@pp@@f@``@h@R@0 @@0{@x@@@h@^@0 P@0@І@0@Py@x@j@"y4444444@(  p  6NMM? p]`|  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` ` ` *` v` v`P 0( @A@A  r   0C  @ CA4]C8 E<FElapsed time vs Request Size Controller Cache vs Controller Prefetch<EX~~   <@C GH} @ A 1]`@C <odd< 3dS""23 M NM4 3Q  Ultra CachedQ ; Q ; Q3_ $ NM ] f3f3<<4E4 3Q  Fast CachedQ ; Q ; Q3_  NM ]  d43_  NM ]  d4E4 3Q  Narrow CachedQ ; Q ; Q3_  NM ]  d4E4 3Q "Narrow PrefetchQ ; Q ; Q3_  NM ]  Nd4E4 3Q  Fast PrefetchQ ; Q ; Q3_  NM ]  Nd4E4 3Q  Ultra PrefetchQ ; Q ; Q3_ % NM ] f3<N4E4D$% M 3O&Q4$% M 3O&Q4FA 7 3O_A'3*#M&43*@,#M&! M4% ^ BM3O&Q 0Request Size (K bytes)'4% mM Z3O&Q &Elapsed Time (ms)'4523  43d"  !3O VB% M3O&Q423 M NM443_ M NM ] MM<4444eee >@    dMbP?_*+%"??mUD`8,(  8v 8 <NMM?]`L  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+` >+` >+` I` IX` IXp<(  <r < 0(t  @ C5](t <4-disk write- 8 deep<vxx < 6xt  @H8]xt <1-disk write 8-deep<k~~ < <t GH  @  t  ]`t0 &<'Extend = 1-disk 1 deep = 4-disk 1 deep<&<3d23 M NM4 3Q  8 Buf, ExtendQ ;  Q ; Q3_  NM   43_  NM   4E4 3Q  8 Buf, WriteQ ; Q ; Q3_  NM   d4E4 3Q  1 Buf, WriteQ ; Q ; Q3_  NM   ` `d4E4 3QQ ;  QQ3_4E4 3Q  4-Disk WriteQ ;  Q ; Q3_  NM  d4E4D$% M 3O&Q4$% M 3O&Q4FA [ 3OJ3 b#M43*4@@N#M! M4% M 3O4&Q 0Request Size (K bytes)'4% GMZ3On&Q &Throughput (MB/s)'4523  43" 44% GW M:3O6&Q @Allocate/Extend While Writing'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@ek?yǒ7?@T?0#0lr?0#0lr?E5?1$N@DЎ?ԈWs@ԈWs@b?|)t8@]>@?Z'Nl@Z'Nl@Av?,ːg!@?CC@R$@CC@R$@H@BI!@o91@qs-@qs-@g;@ؼ!@?exS@'JC1@'JC1@#f8[@%R!@ la@$8T1@$8T1@l6!@PxU@ j[1@ j[1@e ~v 8 <NMM? ]`  "??3` IX` >+` >+` >+` I` Hg` Hg( * r  0dv  @ )]dv  < 4-disk write- 8 deep no-extend< W\xx  6k  @iR]kD <1-disk write 8-deep no extend<~~  <8l G+Hb @  R ]`8l죢 <1 deep equals 8-deep extend<?3d23 M NM4 3Q .1-Disk, 8 Buf, ExtendQ ;  Q ; Q3_  NM   43_  NM   4E4 3Q ,1-Disk, 8 Buf, WriteQ ; Q ; Q3_  NM   d4E4 3Q ,1-Disk, 1 Buf, WriteQ ; Q ; Q3_  NM   ` `d4E4 3Q .4-Disk, 8 Buf, ExtendQ ;  QQ3_ ( NM  ((4E4 3Q ,4-Disk, 8 Buf, WriteQ ;  Q ; Q3_  NM  d4E4 3Q ,4-Disk, 1 Buf, WriteQ ; QQ3_  NM  d43_  NM  d4E4D$% M 3O&Q4$% M 3O&Q4FA 3O73 b#M43*4@@N#M! M4% iM 3O&Q 0Request Size (K bytes)'4%  MZ3On&Q &Throughput (MB/s)'4523  43" 44% x M:3OgC&Q >Allocate/Extend While Writing'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@ek?yǒ7?@T?¥Vf?0#0lr?}Nj!g?E5?1$N@DЎ?7j?ԈWs@ e+#?b?|)t8@]>@?K: d?Z'Nl@ @?Av?,ːg!@?a%+?CC@R$@00?H@BI!@o91@b@qs-@HYoo@g;@ؼ!@?exS@f7@'JC1@,ÛH@#f8[@%R!@ la@Hj@$8T1@hD̳O@l6!@PxU@ j[1@O$@e 88>@    dMbP?_*+%"??dUD(  Dv D <NMM?]`쪢  "??3` h` >h` >h` >h` XAXPH0(  H0@0@@3d23 M NM4 3Q  Unaligned ReadQ ; Q ; Q3_4E4 3Q  Aligned ReadQ#); ;&(Q ; Q3_  NM   N4E4 3Q  Aligned WriteQ ;QQ3_  NM   N4E4 3Q "Unaligned WriteQ ;$QQ3_ NM   d4E4D$% M 3O&Q4$% M 3O&Q4FA u 3OH 3 b#M&43*N#M&! M4% Y+M 3O<v&Q ,Request Size (bytes)'4% MZ3On&Q &Throughput (MB/s)'4523  43" =3O\5% M3O&Q423 M NM4444% !: M:3Oh&Q D Alignment, 4-disk(ultra), 3-deep'44e@@@@ @ @0@0@@@@@P@P@`@`@h@h@eFd@mn@|@@:rc @o9u!@Z #@5g1@ />*@`Hw0@<r$@=@uhC%e6@q pc6@,,@j<,<(@)%ǻ9@ bW=@Ϗc1@8@/@qe\ ;@QO>@%w75@eZ&T3@>x!Km=@op!^?@R5@_9Tҋ3@n>@H"n?@YV5@C/4@e DD>@    dMbP?_*+%"??iUT(  Tv T <NMM? ]`  "??3` >+` >+` k ` k ` k ` k _` k X(  Xx X 6i @A?| ]i $<Fast Wide SCSI<Qd5xx X 6_ @A?B]_X $ < Ultra SCSI<8 d5~~ X <@` @AA?S]@` $<.< d5?3d23 M NM4 3Q ST15150WQ ;FcQ ; Q3_  NM  P4E4 3Q ST34371WQ ;$AQ ; Q3_ NM   P4E4D$% M 3O&Q4$% M 3O&Q4FAu 3O;3*??M&43*@N#M&! M4% )wM 3OEV&Q "Radial Distance'4% oMZ3On&Q &Throughput (MB/s)'4523  43d" 3_ M NM  MM<444%  M:3O&Q >Variation Across Disk Surface'44e????????UUUUUU?UUUUUU??????? 333333? 333333? UUUUUU? UUUUUU? wwwwww? wwwwww? ? ? ? ???????""""""?""""""?333333?333333?DDDDDD?DDDDDD?UUUUUU?UUUUUU?ffffff?ffffff?wwwwww?wwwwww???????????????eףp= @= ףp="@ףp= @= ףp="@@Q8"@ףp= @= ףp="@ףp= @= ףp="@Q@Q8"@HzG@Q8"@)\(@Q8"@ ףp= @p= #"@ @ Q"@ {Gz@ Q"@ q= ףp@ Q"@ Gz@ Q"@ ףp= @ Q"@Q@Q"@ffffff@p= #"@ףp= @33333!@p= ף@RQ!@RQ@L!@@)\ @p= ף@Gz @333333@333333 @Q@(\@p= ף@Q@Gz@Gz@Gz@@333333@{Gz@zG@(\@q= ףp@(\@ףp= @Gz@e >@    dMbP?_*+%"??sU \( X \j^ A T  \# ]  `ยz \ BNMM?A'T]`  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >h` Mw` >h` >h?m3d><<23 M NM4 3Q 6Controller-Based StripingQ ;/6Q ; Q3_  NM  4E4 3Q (Host-Based StipingQ ;Q ; Q3_ 3ff9 NM  3ff3ff994E4 3Q ,Array-Based StripingQ ; Q ; Q3_  NM   d4E4D$% M 3O&Q4$% M 3O&Q4FA\Y r 3O@^y 3 b#M43*A@N#M! M4% /qM3O&Q .Request Size (Kbytes)'4% TMZ3O&Q &Throughput (MB/s)'4523  43" j3OiK% M3O&Q423 M NM4444% 1qM:3O0&Q 4Striping Read Throughput'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@ek]-a2@>9@x!H:W$@d%@̿H#@q /@+(*@.1@f>5@w}#Q2@\8B6@E]Q;@uGz\4@AK:@6M?@Lw6@S_2=@MԶQ@@K6@8d0>@@@`C[)7@CZB@ʣ@@e z  \ BNMM?) T] `  "??3` >h` Mw` >h` >h@j3d23 M NM4 3Q compaqQ ;8?Q ; Q3_  NM  4E4 3Q AdaptecQ ;!(Q ; Q3_ 3ff9 NM  3ff3ff994E4 3Q SymbiosQ ; Q ; Q3_  NM   d4E4D$% M 3O&Q4$% M 3O&Q4FA& 3ON_ 3 b#M43*A@N#M! M4% 6{%M3O&Q .Request Size (Kbytes)'4% MZ3O{&Q &Throughput (MB/s)'4523  43" 44% :qM:3O0&Q 4Striping WriteThroughput'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@e.ۘ#@7 @jUYf@ϯI2!@9n@#@@%@GX4d[%@VRj*@/'@Yi$.@t^=1@LOއ'@edr2@\_M3@36)@!Q1@b.A5@!͙)@7'V 2@3 .5@pۢ;p*@]`4@Ƈ( 5@e  \ \>@    dMbP?_*+%"??TU( <2< ^^ m8 #  Z] `T|t  <NMM?,7]`(  "(??3` t` \I` \I` \I` ` tH0( @A@A r  0tP  @ H ]tPâ <Read<@~~  <P @A?: 7 ]PLĢ $<Write<п3d23 M NM4 3Q  Array ReadQ ; Q ; Q3_  NM  4E4 3Q  Array WriteQ ; Q ; Q3_  NM   d4E4 3Q  Host ReadQ ; Q ; Q3_  NM  4E4 3Q  Host WriteQ ; Q ; Q3_  NM  N4E4D$% M 3O&Q4$% M 3O&Q4FA   3O3 bM[&43*A@@N#M&! M4% M 3O&Q 0Request Size (K bytes)'4% !MZ3On&Q &Throughput (MB/s)'4523  43" 44% (u 1M:3O&Q F!RAID5 Throughput vs Request Depth'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@e/3@z~T?(ZBj@7? y~"@q?cs<{H]!@ϋ?q4u4-@$qe)?k]d+@ 61?yAM0@_‚?/!V4@Prrn?*3@OG?[8@2//?- 8@ @[doz:@eo&8@b":@/Lg@+6L;@@Ǵ'=@MQU$:@Ͼ1@Y|;@״zd @e |t  <NMM?@m8]` â  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` t` \I` \I` \I` PHD0( ]T(]T$ Dп3d23 M NM4 3Q  Array ReadQ ; Q ; Q3_  NM  4E4 3Q  Array WriteQ ; Q ; Q3_  NM   d4E4 3Q  Host ReadQ ; Q ; Q3_  NM  4E4 3Q  Host WriteQ ; Q ; Q3_  NM  N4E4D$% M 3O&Q4$% M 3O&Q4FA[O 3Op 3 bM[&43*@?8N#M&! M4% M 3O&Q 0Request Size (K bytes)'4%  MZ3On&Q &Throughput (MB/s)'4523  43" Gt3OHd2% M3O&Q423 M NM4444% A =M:3O&Q @RAID5 CPU milliseconds per MB'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@e9ݍL@cuĒ_L@ݍ_N@G%H@϶E<@@g;@U(|@@X2:@fff-@BD*@F0@ @'.@:(@T'\@y)6!@cz"@8CӞ@[[i@ @El?DD@X̦@C?W-bff @~j @0u?ϰ?:Ȗ@8A@?$M?m?X9@e >@  SummaryInformation()cDocumentSummaryInformation8gP_9381646658, F&'ƾ'ƾOle qt PXl t| 8 Microsoftt8  Fig2Fig3Fig4Fig5Fig6Fig7Fig8Fig 9Fig10Table3Fig11Fig 12Fig13Fig15Fig16Chart8  WorksheetsCharts 6> _PID_GUIDAN{CECA7635-4128-11D1-AE3B-0080C7F3EC95} FMicrosoft Excel ChartBiff8Excel.Sheet.89qOh+'08@Th  Jim Gray  Jim Gray Microsoft Excel@?ռCompObj+.rbObjInfotWorkbook-/NVSummaryInformation(0u      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~  Ba= F <  DCB% ==x8X1_Arial1_Arial1_Arial1_Arial1s_Arial1s_Arial1_Arial1s_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Courier1*_ MS Sans Serif1._Times New Roman1_Arial1_Helv1_Geneva1._Times New Roman1._Times New Roman1_Arial1._Times New Roman1_Arial1*_ MS Sans Serif1._Times New Roman1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1$_Arial1 _Arial1_Arial1_Arial1_Arial1_Arial1s_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1i_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1d_Arial1_Arial1__Arial1U_Arial1_Arial1_Arial1_Arial1_Arial1d_Arial1Z_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1s_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1n_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1_Arial1d_Arial1_Arial1Z_Arial1__Arial1_Arial1_Arial1_Arial1__Arial1_Arial1_Arial1_Arial1Z_Arial1__Arial1_Arial1_Arial1__Arial"$"#,##0_);\("$"#,##0\)!"$"#,##0_);[Red]\("$"#,##0\)""$"#,##0.00_);\("$"#,##0.00\)'""$"#,##0.00_);[Red]\("$"#,##0.00\)7*2_("$"* #,##0_);_("$"* \(#,##0\);_("$"* "-"_);_(@_).))_(* #,##0_);_(* \(#,##0\);_(* "-"_);_(@_)?,:_("$"* #,##0.00_);_("$"* \(#,##0.00\);_("$"* "-"??_);_(@_)6+1_(* #,##0.00_);_(* \(#,##0.00\);_(* "-"??_);_(@_) #,##0\K\B 0\K\B 0.0% 0.0000.0 0.0000000 0.000000 0.00000 0.0000 0.00000000 #,##0.0""\ #,##0;""\ \-#,##0!""\ #,##0;[Red]""\ \-#,##0"""\ #,##0.00;""\ \-#,##0.00'"""\ #,##0.00;[Red]""\ \-#,##0.00=8_ ""\ * #,##0_ ;_ ""\ * \-#,##0_ ;_ ""\ * "-"_ ;_ @_ .)_ * #,##0_ ;_ * \-#,##0_ ;_ * "-"_ ;_ @_ E@_ ""\ * #,##0.00_ ;_ ""\ * \-#,##0.00_ ;_ ""\ * "-"??_ ;_ @_ 61_ * #,##0.00_ ;_ * \-#,##0.00_ ;_ * "-"??_ ;_ @_ \+0\ 0""$"#,###.##\ ;\("$"#,###.##\) [Red]Generalm/d[Yellow]General 00000000 00000 yy/mm/d "$"#,##0.00 \ \ \ @ \ \ \ \ \ \ @#,##0,_);\(#,##0,\)0+_(* #,##0,_);_(* \(#,##0,\);_(* "-"_);_(@_)0_@\ \ \ \ \ \ \ \ \ \ \ @4/_(* #,##0.0_);_(* \(#,##0.0\);_(* "-"??_);_(@_)0+_(* #,##0_);_(* \(#,##0\);_(* "-"??_);_(@_)83_(* #,##0.000_);_(* \(#,##0.000\);_(* "-"??_);_(@_):5_(* #,##0.0000_);_(* \(#,##0.0000\);_(* "-"??_);_(@_) #,##0,\9\1#,##0.000\2\8!"$"#,##0.00;[Red]"$"#,##0.00 General_) 0000 000000hh:mm:ss\ AM/PM_) "$"0,000 "$"#,### "$"#,##0;6_("$"* #,##0.0_);_("$"* \(#,##0.0\);_("$"* "-"_);_(@_) 0.000% "$"#,##0.0_);\("$"#,##0.0\)=8_("$"* #,##0.0_);_("$"* \(#,##0.0\);_("$"* "-"??_);_(@_)94_("$"* #,##0_);_("$"* \(#,##0\);_("$"* "-"??_);_(@_)A<_("$"* #,##0.000_);_("$"* \(#,##0.000\);_("$"* "-"??_);_(@_)#,##0.0_);\(#,##0.0\)#,##0.000_);\(#,##0.000\)"$"#,\);\("$"#,##0\)"$"#,\);\("$"#,\)"$"#,;\("$"#,\)"$"#.;\("$"#,\) "$"#.#"$"#,##0.00_);\("$"#.##0\)"$"#.##0_);\("$"#.##0\)#,##0.0_);[Red]\(#,##0.0\)% "$"#,##0.0_);[Red]\("$"#,##0.0\)"#,##0.0_%\);[Red]\(#,##0.0%\) #,##0.0_%;[Red]\(#,##0.0%\)#,##0.0%;[Red]\(#,##0.0%\)#,##0.0%;\(#,##0.0%\) 0.0000% 0.00000%!#,##0.00%;[Red]\(#,##0.00%\) 0.0%;\(0.0%\) 0.000"%" 0.0"%""$"#,##0_);\("$"#,##0.0\) "$"#.##$"$"#,##0.000_);\("$"#,##0.000\)&!"$"#,##0.0000_);\("$"#,##0.0000\)2-_(* #,##0.0_);_(* \(#,##0.0\);_(* "-"_);_(@_)4/_(* #,##0.00_);_(* \(#,##0.00\);_(* "-"_);_(@_)61_(* #,##0.000_);_(* \(#,##0.000\);_(* "-"_);_(@_)""#,##0;\-""#,##0""#,##0;[Red]\-""#,##0""#,##0.00;\-""#,##0.00#""#,##0.00;[Red]\-""#,##0.0050_-""* #,##0_-;\-""* #,##0_-;_-""* "-"_-;_-@_-=8_-""* #,##0.00_-;\-""* #,##0.00_-;_-""* "-"??_-;_-@_-#,##0;[Red]\(#,##0\)2-_-* #,##0.0_-;\-* #,##0.0_-;_-* "-"??_-;_-@_-.)_-* #,##0_-;\-* #,##0_-;_-* "-"??_-;_-@_-#,##0.0;[Red]\(#,##0.0\)0.0%;[Red]\(0.0%\)#,##0;\(#,##0\)"SFr."#,##0;"SFr."\-#,##0#"SFr."#,##0;[Red]"SFr."\-#,##0$"SFr."#,##0.00;"SFr."\-#,##0.00)$"SFr."#,##0.00;[Red]"SFr."\-#,##0.00@;_ "SFr."* #,##0_ ;_ "SFr."* \-#,##0_ ;_ "SFr."* "-"_ ;_ @_ HC_ "SFr."* #,##0.00_ ;_ "SFr."* \-#,##0.00_ ;_ "SFr."* "-"??_ ;_ @_  #,##0.00;[Red]\(#,##0.00\)! #,##0.000;[Red]\(#,##0.000\)# #,##0.0000;[Red]\(#,##0.0000\) mmmm\-yy #,##0.0000_);\(#,##0.0000\)#,##0""_);\(#,##0""\)!#,##0""_);[Red]\(#,##0""\)"#,##0.00""_);\(#,##0.00""\)'"#,##0.00""_);[Red]\(#,##0.00""\)=8_ * #,##0_)""_ ;_ * \(#,##0\)""_ ;_ * "-"_)""_ ;_ @_ :5_ * #,##0_)__ ;_ * \(#,##0\)__ ;_ * "-"_)__ ;_ @_ E@_ * #,##0.00_)""_ ;_ * \(#,##0.00\)""_ ;_ * "-"??_)""_ ;_ @_ B=_ * #,##0.00_)__ ;_ * \(#,##0.00\)__ ;_ * "-"??_)__ ;_ @_ #,##0\ "F";\-#,##0\ "F"!#,##0\ "F";[Red]\-#,##0\ "F""#,##0.00\ "F";\-#,##0.00\ "F"'"#,##0.00\ "F";[Red]\-#,##0.00\ "F";6_-* #,##0\ "F"_-;\-* #,##0\ "F"_-;_-* "-"\ "F"_-;_-@_-83_-* #,##0\ _F_-;\-* #,##0\ _F_-;_-* "-"\ _F_-;_-@_-C>_-* #,##0.00\ "F"_-;\-* #,##0.00\ "F"_-;_-* "-"??\ "F"_-;_-@_-@;_-* #,##0.00\ _F_-;\-* #,##0.00\ _F_-;_-* "-"??\ _F_-;_-@_- d/m/yy d/m/yy\ h:mm #,##0" F"_);\(#,##0" F"\)#!#,##0" F"_);[Red]\(#,##0" F"\)$"#,##0.00" F"_);\(#,##0.00" F"\))#$#,##0.00" F"_);[Red]\(#,##0.00" F"\)$#,##0" $";\-#,##0" $"%#,##0" $";[Red]\-#,##0" $" &#,##0.00" $";\-#,##0.00" $"%' #,##0.00" $";[Red]\-#,##0.00" $" (d\.m\.yy) d\.mmm\.yy *d\.mmm +mmm\.yy,d\.m\.yy\ h:mm -0" " .0.00" " /0.0" "0 0.000" "1 0.0000" "2 0.00000" " 3hh:mm 4hh:mm:ss5 m/d/yy\ hh:mm60.00_);[Red]\(0.00\)70.000000000000000%80.00000000000000%90.0000000000000000%:0.0000000000000%;0.000000000000%<0.00000000000%= 0.0000000000%> 0.000000000%? 0.00000000%@ 0.0000000%A 0.000000%B.00                + )  & ) &  & ) &     &   & ) ) ) ) ) ) & ) &  ( +      (  ( + (   (   (  + + + + +             + + + + + + + + + + + + + + + + + + ( + ( , *   *    *      *    *  * * * * *   *  "  ,         ,        '   , , , , ,             , , , , , , , , , , , , , , , , ,   ,  7 "@ @ 8                                                                                   Comma [0]_12~3SO2Comma [0]_Channel TableComma [0]_Full Year FY96Comma [0]_larouxComma [0]_laroux_1Comma [0]_laroux_1_12~3SO2Comma [0]_laroux_12~3SO2Comma [0]_laroux_2Comma [0]_laroux_2_12~3SO2Comma [0]_laroux_3Comma [0]_laroux_MATERAL2&!Comma [0]_laroux_mud plant boltedComma [0]_MACRO1.XLMComma [0]_MATERAL2 Comma [0]_mud plant bolted! Comma [0]_P&L"Comma [0]_Q1 FY96#Comma [0]_Q2 FY96$Comma [0]_Q3 FY96%Comma [0]_Q4 FY96&Comma [0]_QTR94_95' Comma [0]_r1(Comma [0]_Sheet1)Comma [0]_Sheet1_laroux*Comma [0]_Sheet4+ Comma_12~3SO2,Comma_Channel Table-Comma_Full Year FY96.Comma_Jim Pic.xls Chart 1/Comma_Jim Pic.xls Chart 20Comma_Jim Pic.xls Chart 41Comma_Jim Pic.xls Chart 52Comma_Jim Pic.xls Chart 63 Comma_laroux4Comma_laroux_15Comma_laroux_1_12~3SO26Comma_laroux_12~3SO27Comma_laroux_28Comma_laroux_2_12~3SO29Comma_laroux_3:Comma_MACRO1.XLM;Comma_MATERAL2<Comma_mud plant bolted= Comma_P&L>Comma_PERSONAL'?"Comma_PERSONAL_Jim Pic.xls Chart 1'@"Comma_PERSONAL_Jim Pic.xls Chart 2'A"Comma_PERSONAL_Jim Pic.xls Chart 4'B"Comma_PERSONAL_Jim Pic.xls Chart 5'C"Comma_PERSONAL_Jim Pic.xls Chart 6(D#Comma_PERSONAL_pictures.xls Chart 1)E$Comma_PERSONAL_pictures.xls Chart 10)F$Comma_PERSONAL_pictures.xls Chart 11)G$Comma_PERSONAL_pictures.xls Chart 12(H#Comma_PERSONAL_pictures.xls Chart 2(I#Comma_PERSONAL_pictures.xls Chart 3(J#Comma_PERSONAL_pictures.xls Chart 4(K#Comma_PERSONAL_pictures.xls Chart 5(L#Comma_PERSONAL_pictures.xls Chart 6(M#Comma_PERSONAL_pictures.xls Chart 7(N#Comma_PERSONAL_pictures.xls Chart 8(O#Comma_PERSONAL_pictures.xls Chart 9PComma_pictures.xls Chart 1 QComma_pictures.xls Chart 10 RComma_pictures.xls Chart 11 SComma_pictures.xls Chart 12TComma_pictures.xls Chart 2UComma_pictures.xls Chart 3VComma_pictures.xls Chart 4WComma_pictures.xls Chart 5XComma_pictures.xls Chart 6YComma_pictures.xls Chart 7ZComma_pictures.xls Chart 8[Comma_pictures.xls Chart 9\ Comma_Q1 FY96] Comma_Q2 FY96^ Comma_Q3 FY96_ Comma_Q4 FY96`Comma_QTR94_95 aComma_r1b Comma_Sheet1cComma_Sheet1_larouxd Comma_Sheet4efgCurrency [0]_12~3SO2hCurrency [0]_Channel Table iCurrency [0]_Full Year FY96jCurrency [0]_larouxkCurrency [0]_laroux_1"lCurrency [0]_laroux_1_12~3SO2 mCurrency [0]_laroux_12~3SO2nCurrency [0]_laroux_2"oCurrency [0]_laroux_2_12~3SO2pCurrency [0]_laroux_3"qCurrency [0]_laroux_3_12~3SO2rCurrency [0]_laroux_4!sCurrency [0]_laroux_MATERAL2)t$Currency [0]_laroux_mud plant bolteduCurrency [0]_MACRO1.XLMvCurrency [0]_MATERAL2"wCurrency [0]_mud plant boltedxCurrency [0]_P&LyCurrency [0]_Q1 FY96zCurrency [0]_Q2 FY96{Currency [0]_Q3 FY96|Currency [0]_Q4 FY96}Currency [0]_QTR94_95~Currency [0]_r1Currency [0]_Sheet1Currency [0]_Sheet1_larouxCurrency [0]_Sheet4Currency_12~3SO2Currency_Channel TableCurrency_Full Year FY96!Currency_Jim Pic.xls Chart 1!Currency_Jim Pic.xls Chart 2!Currency_Jim Pic.xls Chart 4!Currency_Jim Pic.xls Chart 5!Currency_Jim Pic.xls Chart 6Currency_larouxCurrency_laroux_1Currency_laroux_1_12~3SO2Currency_laroux_12~3SO2Currency_laroux_2Currency_laroux_2_12~3SO2Currency_laroux_3Currency_laroux_3_12~3SO2Currency_laroux_4Currency_MACRO1.XLMCurrency_MATERAL2Currency_mud plant bolted Currency_P&LCurrency_PERSONAL*%Currency_PERSONAL_Jim Pic.xls Chart 1*%Currency_PERSONAL_Jim Pic.xls Chart 2*%Currency_PERSONAL_Jim Pic.xls Chart 4*%Currency_PERSONAL_Jim Pic.xls Chart 5*%Currency_PERSONAL_Jim Pic.xls Chart 6+&Currency_PERSONAL_pictures.xls Chart 1,'Currency_PERSONAL_pictures.xls Chart 10,'Currency_PERSONAL_pictures.xls Chart 11,'Currency_PERSONAL_pictures.xls Chart 12+&Currency_PERSONAL_pictures.xls Chart 2+&Currency_PERSONAL_pictures.xls Chart 3+&Currency_PERSONAL_pictures.xls Chart 4+&Currency_PERSONAL_pictures.xls Chart 5+&Currency_PERSONAL_pictures.xls Chart 6+&Currency_PERSONAL_pictures.xls Chart 7+&Currency_PERSONAL_pictures.xls Chart 8+&Currency_PERSONAL_pictures.xls Chart 9"Currency_pictures.xls Chart 1#Currency_pictures.xls Chart 10#Currency_pictures.xls Chart 11#Currency_pictures.xls Chart 12"Currency_pictures.xls Chart 2"Currency_pictures.xls Chart 3"Currency_pictures.xls Chart 4"Currency_pictures.xls Chart 5"Currency_pictures.xls Chart 6"Currency_pictures.xls Chart 7"Currency_pictures.xls Chart 8"Currency_pictures.xls Chart 9Currency_Q1 FY96Currency_Q2 FY96Currency_Q3 FY96Currency_Q4 FY96Currency_QTR94_95 Currency_r1Currency_Sheet1Currency_Sheet1_larouxCurrency_Sheet4  Header1 Header2Normal_12~3SO2 Normal_BidNormal_Certs Q2Normal_Certs Q2 (2)Normal_Channel TableNormal_Channel Table_1"Normal_Channel Table_1_Macro2#Normal_Channel Table_1_Module1Normal_Channel Table_2'"Normal_Channel Table_Channel Table Normal_Channel Table_Macro2!Normal_Channel Table_Module1Normal_Cost SummNormal_Focus goalsNormal_Full Year FY96Normal_Jim Pic.xls Chart 1Normal_Jim Pic.xls Chart 2Normal_Jim Pic.xls Chart 4Normal_Jim Pic.xls Chart 5Normal_Jim Pic.xls Chart 6 Normal_larouxNormal_laroux_1Normal_laroux_1_12~3SO2Normal_laroux_12~3SO2Normal_laroux_2Normal_laroux_3Normal_MACRO1.XLM Normal_Macro2Normal_MATERAL2Normal_Module1Normal_Module1_1Normal_Module5Normal_mud plant bolted Normal_P&LNormal_PERSONALNormal_PERSONAL_1(#Normal_PERSONAL_Jim Pic.xls Chart 1(#Normal_PERSONAL_Jim Pic.xls Chart 2(#Normal_PERSONAL_Jim Pic.xls Chart 4(#Normal_PERSONAL_Jim Pic.xls Chart 5(#Normal_PERSONAL_Jim Pic.xls Chart 6)$Normal_PERSONAL_pictures.xls Chart 1*%Normal_PERSONAL_pictures.xls Chart 10*%Normal_PERSONAL_pictures.xls Chart 11*%Normal_PERSONAL_pictures.xls Chart 12)$Normal_PERSONAL_pictures.xls Chart 2)$Normal_PERSONAL_pictures.xls Chart 3)$Normal_PERSONAL_pictures.xls Chart 4)$Normal_PERSONAL_pictures.xls Chart 5)$Normal_PERSONAL_pictures.xls Chart 6)$Normal_PERSONAL_pictures.xls Chart 7)$Normal_PERSONAL_pictures.xls Chart 8)$Normal_PERSONAL_pictures.xls Chart 9 Normal_pictures.xls Chart 1!Normal_pictures.xls Chart 10!Normal_pictures.xls Chart 11!Normal_pictures.xls Chart 12 Normal_pictures.xls Chart 2 Normal_pictures.xls Chart 3 Normal_pictures.xls Chart 4 Normal_pictures.xls Chart 5 Normal_pictures.xls Chart 6 Normal_pictures.xls Chart 7 Normal_pictures.xls Chart 8 Normal_pictures.xls Chart 9Normal_PROD SALES% Normal_PROD SALES by Region Pg 2Normal_PRODUCTNormal_Q1 FY96Normal_Q2 FY96Normal_Q3 FY96 Normal_Q4 FY96 Normal_QTR94_95  Normal_r1 Normal_Req Summ  Normal_Sheet1Normal_Sheet1_laroux Normal_Sheet4Normal_SummaryPercent_12~3SO2Percent_laroux8 ``i̜̙3f3333f3ffff333ff333f33f33BBB\Chart7 Fig2 Fig3 Fig4 &^Fig5 Fig6 ~Fig7 Fig8 Fig 9 *Fig10k1Table3 FFig11YSheet7nSheet6oSheet5pFig 123CNT1ProfilesGrayDesktopV1AnalysisSummary.xlslaroux FIOStripingDriver AlignmentCaching (Writes)CachingWCEOverheadCPUTimeConfigurations (64k)Configurations (8k) ReadWritePaper-MultiBusPaper-MultiDisk Paper-OneDiskDataHeaderYYYYYYYYY Y Y Y ZL @@ @0@@@P@`@h@ZL QF@?=#F@/kJ$@$9x)@^̲S-@h.@mZ/@0@ZL ig¸?q?6(Aީ@gEl@@X#@M(@mL+@ZL {b@R@4->`@+#@hZ)@"S-@s&ն.@\%h#/@ZL wn?3@}/@i$75@_Z6@iB6@*=,7@߈o7@ZL  3?"?FN@ 51 @"LcX@~$%%@%۷ӡ,@xhP0@ZL  {IIN@}x@׈@q0u &@w0@!pd3@DqL˝3@e#?cuL@7&wz$@_7r&{)@߼kb-@:N/@auڡ/@V30@ZL ńW@@l.z@d$T@/(@S!+@5y@Ld@ZL <-N@1 NI@bX@E׏$@ bm5%@`.=&@F@'@OG'@ZL $1'@r@$E@W##@lu5R'@Tu+@ŧ!-@e?9+@ZL  {b@R@4->`@+#@hZ)@"S-@s&ն.@\%h#/@YZL \D|@"(@TW@Hq@@ج%g@/F@pn6@ZL @@ @0@@@P@`@h@ZL  #V"@j-c@t$#@R@A[fwh@"߻@u p@'2 @ZL   ڢ@s\@KFX@n5@B @Ċm^@.@3D@ZL  /ETa@@*@8C@~6Z@@@{}q!@;D%@ZL  iO? k @5q@3n@ͫ"@ᰄ%@t˧<)@2 v,@ZL  QF@?=#F@/kJ$@$9x)@^̲S-@h.@mZ/@0@ZL `F 3@s[ @I[.*%@./*@%Z.@_'0@(鐷j1@;7@ZL ?a4)?-ːD?" [?Æ,[:@A,T @IT@9ͮe^@ZL %O?'ݧ?k@Z@n(1@\L-@̋@JB@ZL Ilpo?%;@_c@T7@1DH@mV?@ e|샂@MB@ZL x>?Ai?MNۤ?f^ ?O`@ 4H@(\4@:eK@ZL ig¸?q?6(Aީ@gEl@@X#@M(@mL+@ZL 0)?÷B@&h@p"@(H!'@37e+@;*@UF.+@ZL ,qE@a >@K%ؘ@-蟠!@?!%@۞A*@T3v,@I*:.@YY-CNT1ProfilesGrayDesktopV1SCSIredux.xlslaroux ReadWriteDriverWCEPaper-Alignment BufferCache BufCache2CostHowManyBuffers Paper-RAIDPaper-BufCache Paper-Cost Paper-OneDiskPaper-MultiDiskPaper-AllocateDataHeaderYYYY&Z @Z Fd@Z @Z :rc @Z  @Z  />*@Z 0@Z uhC%e6@Z @@Z )%ǻ9@Z P@Z qe\ ;@Z `@Z >x!Km=@Z  h@Z  n>@Z  mn@Z  o9u!@Z `Hw0@Z q pc6@Z  bW=@Z n?@Z :@Z p@@Z |@Z Z #@Z <r$@Z ,,@Z Ϗc1@Z %w75@Z R5@Z YV5@Z @Z 5g1@Z  =@Z !j<,<(@Z "8@/@Z #eZ&T3@YYQZ @Z U @Z @Z x1@Z  @Z Zpi5@Z 0@Z E6@Z @@Z 25@Z P@Z ]˹3@Z `@Z 01y!@Z  h@Z  -M.#@Z  p@Z  MC!@Z  ['H0@Z  @@Z  -@Z ]M4!(#@Z 2%@Z u}'@Z *e(@Z qU)@Z G6>)@Z J*@Z (o @Z $o'@Z aEF@Z @Z ! ;@Z s *@Z 4@Z aeM@Z WSF@Z F>@Z ; -@Z  #uF5@Z !jk5@Z "g( 45@Z # NbV4@Z $𳞱 @Z %Z#@Z 4دӣ&@Z 5u= 3@Z 6/9@Z 7/:@Z 8lU9@Z 99:Qc6@Z :1U+@Z ;i})@Z <k+$@Z =ZK)@Z >qfJ@Z ?qܮM@Z @8py"@Z ANg*%@Z B''@Z C"HW*@Z D8aDH)@Z E]9,e)@Z FM*@Z Gۂ@Z H@6% @Z Iƛt @Z J @Z KymTi@Z L_0M@Z MO O@Z NPJ@Z ODa@Z P~H'@Z Qe!/@Z R 6@Z S0v7@Z T(Q8@Z Uy4@Z Vak+@Z Wא;V,@YYY Y ZL @@ @0@@@P@`@h@ZL 2_[h["@_ݴ"@? gt"@h8!@eYB"@ 3["@_1M@]@ZL  D@`=sh @ٷA @;/;Q @J2@ Ma^@iU|@iCg@ZL #EN@PB@z@waR@^q@宭@`x7@Vcy@ZL "K D@ X9@,1@G-@c2Uk+@O1@Լ|N.@/0@ZL #-6N@UvG@jq"A@гY%\6@): 5@): 5@|!8@<,oڀ>@ZL 'bM@ӣH@Q`ɯ@@s w7@-!K(5@Jwn6@7@s(\-@u@X9@&1?{?[d;""?ZL &:O@ v>@Hx@'/@nrww@Sㅈ@)\RUU@(?G?ZL AV?56!?+|?Pk6?Sㅈ? 033?t?!r033?ZL Z,y?J?eW½?p̺?:Ȗ??(?W-bff?ZL ?*iӹ? @'?.33?cff?9Ȗ?{?|/33?ZL !_e}?y?@'? ףPUU?;Ȗ?t?QUU?Sㅈ?ZL "?yX?vn?s(\?u?X9?&1̼?{?[d;""?ZL $&:? v?Hx@'?nrww?Sㅈ?)\RUU?(?G?Y ZL @@ @0@@@P@`@h@ZL +uR@ =!@Ŵ=޿!@+!@A{!@d,5J!@d,5J!@f!@ZL @T?DЎ?]>@??o91@?exS@ la@PxU@ZL bH砑@ƾ @#!@ I!@ɟµ!@ ɏ!@$!@89!@ZL  #V"@j-c@t$#@R@A[fwh@"߻@u p@2 4@ZL  ?a4)?-ːD?" [?Æ,[:@A,T @IT@Jo@ZL  \D|@"(@TW@Hq@@ج%g@/F@;uZ[3@Y YZL @@ @0@@@P@`@h@ZL @T?DЎ?]>@??o91@?exS@ la@PxU@ZL yǒ7?1$N@|)t8@,ːg!@BI!@ؼ!@%R!@l6!@ZL  0#0lr?ԈWs@Z'Nl@CC@R$@qs-@'JC1@$8T1@ j[1@ZC  k?E5?b?Av?H@g;@#f8[@YYG4CNT1ProfilesGrayDesktopV1SurfaceVariation.xls chunk15150nY[Z Z ?Z ?Z ?Z ?Z UUUUUU?Z ?Z  ?Z  ?Z  333333?Z  UUUUUU?Z  wwwwww?Z ?Z ?Z ?Z ?Z ?Z """"""?Z 333333?Z DDDDDD?Z UUUUUU?Z ffffff?Z wwwwww?Z ?Z ?Z ?Z ?Z ?Z ?Z ?Z  ?Z $= ףp="@Z %= ףp="@Z &Q8"@Z '= ףp="@Z (= ףp="@Z )Q8"@Z *Q8"@Z +Q8"@Z ,p= #"@Z -Q"@Z .Q"@Z /Q"@Z 0Q"@Z 1Q"@Z 2Q"@Z 3p= #"@Z 433333!@Z 5RQ!@Z 6L!@Z 7)\ @Z 8Gz @Z 9333333 @Z :(\@Z ;Q@Z <Gz@Z =@Z >{Gz@Z ?(\@Z @(\@Z AGz@Z Fףp= @Z Gףp= @Z H@Z Iףp= @Z Jףp= @Z KQ@Z LHzG@Z M)\(@Z N ףp= @Z O@Z P{Gz@Z Qq= ףp@Z RGz@Z Sףp= @Z TQ@Z Uffffff@Z Vףp= @Z Wp= ף@Z XRQ@Z Y@Z Zp= ף@Z [333333@Z \Q@Z ]p= ף@Z ^Gz@Z _Gz@Z `333333@Z azG@Z bq= ףp@Z cףp= @            # AcctCodes; #" Address1Cell< " Address2Cell< Advance: CCCell:  CityCell< CoCell:  Code; +  code2; 25 Conf; +! CountryCell:  Date; + Date2; 25% Description; +& Description2; 25  EmailName: EmpCell: EndDate:  ' Entertainment; 25 Exp2; 25 Firm; 25! Lodging; + Meals; +! Mileage; + Miles; + Misc; +NameCell: OthAcct1: "OthAcct2: #OthTot1: "OthTot2: #! Persons; 25 PostalCell<  Purpose:  Rate; +  rate2; 25 RegionCell:   StartDate:  SubTotExp: , & SummExpenses; #TotConf: , TotEntExp: 6TotExp: .  TotLodging: ,Totmeals: , TotMileage: ,TotMiles: ,TotMisc: , TotSummExp: $ TotTransp: ,  Transp; + U.S.; + Version:  `YZ       "#%3  @@  5 Table 3 - Variation across disk generation - The table shows the elapsed time in ms for a cache hit and prefetch hit of varying request sizes directly at the drive. Times are measured from a user-level thread running through the NT file system. For the larger request sizes, the drive is given sufficient time between requests to ensure so the request is satisfied from prefetch buffers. Surprisingly, the cache-hit times are always greater than the prefetch hit times.Narrow-ST15150N Fast-ST15150WUltra-ST34371WSize Cache Hit Prefetch Hit |\  Sheet_TitlereaW wHwXw`@w0sT0xD4W D"0wD0sT0x4W  wW D0sT0x4W W W 0D" wW D0sT04W W W ,@"  Q 004W 6W hS0x00W {W ^n0$0 0000h4C:\NT1\ProfilVersionsppestop\V1\SurfaceVariation.xlsp@͝0Dl0bDRpT0#4W 6W W Q6W D"h{W w.4W 6W {W 6W w/w4W W x|W wh8w$wXwx )wЍW Ļw@,|0<~0RT0L`u0AT0|0.0620  "p aFtch ??eq3` k ` k ` >+` >+` k ` k ` k _P`(  `x ` 6a @A?p< ]a8 $<Fast Wide SCSI<Qd5xx ` 6`b @A?a]`b $ < Ultra SCSI<8 d5~~ ` <b @AA?m]b $<.< d5?3d23 M NM4 3Q ST15150WQ ;FcQ ; Q3_  MM  P4E4 3Q ST34371WQ ;$AQ ; Q3_ MM   P4E4D$% M 3O&Q4$% M 3O&Q4FA} 3OFH V 3*??M&43*@N#M&! M4%  OM 3OEV&Q "Radial Distance'4% u MZ3Ok&Q &Throughput (MB/s)'4523  43d" 3_ M MM  MM<444% S M:3O&Q >Variation Across Disk Surface'44e????????UUUUUU?UUUUUU??????? 333333? 333333? UUUUUU? UUUUUU? wwwwww? wwwwww? ? ? ? ???????""""""?""""""?333333?333333?DDDDDD?DDDDDD?UUUUUU?UUUUUU?ffffff?ffffff?wwwwww?wwwwww???????????????eףp= @= ףp="@ףp= @= ףp="@@Q8"@ףp= @= ףp="@ףp= @= ףp="@Q@Q8"@HzG@Q8"@)\(@Q8"@ ףp= @p= #"@ @ Q"@ {Gz@ Q"@ q= ףp@ Q"@ Gz@ Q"@ ףp= @ Q"@Q@Q"@ffffff@p= #"@ףp= @33333!@p= ף@RQ!@RQ@L!@@)\ @p= ף@Gz @333333@333333 @Q@(\@p= ף@Q@Gz@Gz@Gz@@333333@{Gz@zG@(\@q= ףp@(\@ףp= @Gz@e> G   dMbP?_*+%"0{T0??U0 (  j^ ? # ] `lz  BNMM?!]`@  "@??3` >+` >+` & ` & ` hj` hj` hj4 P( 333 P P BxQ @AA? z ]xQd  $<Write<4~~ P <Q @AA? A]Q4< $<Read<4} P HQ @AA?%fF -]Q< $ < Write +WCE<4D 3dI 23 M NM4 3Q WriteQ ; Q ; Q3_  NM ]  4E4 3Q  ReadQ ; Q ; Q3_  NM   4E4 3Q  Write + WCEQ ; Q ; Q3_  NM  x4E4D$% M 3O&Q4$% M 3O&Q4FA* : 3Oe 3 bN#M&43*@N#M& ! M4% jK3UM3O& Q 0Request Size (K-Bytes)'4% R,MZ3Ok& Q &Throughput (MB/s)'4523  43" 44%  vM:3OA&Q 6Out of the Box Throughput'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@e D@2_[h["@#EN@`=sh @_ݴ"@PB@ٷA @? gt"@z@;/;Q @h8!@waR@J2@eYB"@^q@ Ma^@ 3["@宭@iU|@_1M@`x7@iCg@]@Vcy@e z  BNMM??]`   " ??3` >+` >+` r D ` r D ` j ` j` hj5` hj6f0TN(  T T B8Q @AA?j  ]8Q? $<Read<5} T HQ @AA?@a ]Q,[ $<Write<63dr!23 M NM4 3Q  ReadQ ;"" Q ; Q3_  NM   4E4 3Q WriteQ ;## Q ; Q3_  NM ]  4E4 3Q  Write + WCEQ ;'' Q ; Q3_  NM  <4E4D$% M 3O&Q4$% M 3O&Q4FA J 3O 3 bN#M& 43*T@$@@N#M& ! M4% K%UM3O& Q 0Request Size (K Bytes)'4% N, MZ3O& Q 0Overhead (cpu msec/MB)'4523  43" % 3O$ X0% M3O&Q423 M NM4444% vM:3OA&Q 2Out of the Box Overhead'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@eK D@-6N@bM@ X9@UvG@ӣH@,1@jq"A@Q`ɯ@@G-@гY%\6@s w7@c2Uk+@): 5@-!K(5@O1@): 5@Jwn6@Լ|N.@|!8@7@`Q@@e >@   dMbP?_*+%"?? U@ (  |  BMNN?x <]_  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+!` >+"` >+#` N /3d!H23 M NM4 3Q ST34371WQ ; Q ; Q3_ 33> NM ]  4E4 3Q ST15150WQ ;  Q ; Q3_  NM ]  4E4D$% M 3O&#Q4$% M 3O&"Q4FAAH 3Oyp h 3 b#M43*@N#M! M4% : M 3O&!Q 0Request Size (K bytes)'4%  MZ3Ok&!Q &Throughput (MB/s)'4523  O43" 44% M M03O&/Q 8Unbuffered Read Throughput'44e@@@@ @ @0@0@@@@@P@P@`@`@h@h@e+uR@#V"@ =!@j-c@Ŵ=޿!@t$#@+!@R@A{!@A[fwh@d,5J!@"߻@d,5J!@u p@f!@2 4@e |  BMNN?x @ <](a  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+$` >+%` >+&` v0 -` v0 .` %1` %v2PHP0(  3d},Y23 M NM4 3Q UltraQ ; Q ; Q3_  NM  4E4 3Q  WideQ ;  Q ; Q3_  NM   4E4D$% M 3O&&Q4$% M 3O&%Q4FAO 3OE* 3 b#M&143*$@@N#M! M4% g M 3OG&2Q 0Request Size (K bytes)'4% 5MZ3Ow&$Q &Throughput (MB/s)'4523  O43" (3O~% M3O&-Q4444% M M03O&.Q :Unbuffered Write Throughput'44e@@@@ @ @0@0@@@@@P@P@`@`@h@h@e@T??DЎ?a4)?]>@?-ːD??" [?o91@Æ,[:@?exS@A,T @ la@IT@PxU@Jo@e |  BMNN? px <]pc  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+'` >+(` >+)` 0 03dlZL23 M NM4 3Q UltraQ ; Q ; Q3_  NM ] 4E4 3Q  WideQ ;  Q ; Q3_  NM ]  4E4D$% M 3O&)Q4$% M 3O&(Q4FA{+ q 3OT4 3 b#M43*@N#M! M4% U M 3OD&'Q 0Request Size (K bytes)'4%  M Z3Ok&'Q &Throughput (MB/s)'4523  O43" 44% M M03O&0Q F!Unbuffered Write Throughput (WCE)'44e@@@@ @ @0@0@@@@@P@P@`@`@h@h@ebH砑@\D|@ƾ @"(@#!@TW@ I!@Hq@ɟµ!@@ ɏ!@ج%g@$!@/F@89!@;uZ[3@e |  BNMM?!<]`c  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` N R` >+S` >+T` >+U` YN`86(  8x 8 6\Q @A?"*]\Q\  $ < Ultra Read<YC 4<~~ 8 <Q @A?d ]Q6 $ < Fast Read<Y? xx 8 6Q @A?8 O]Q|7 $ < Ultra Write<YD xx 8 6@Q @A? > 0y ]@Q$8 $ < Fast Write<Y@ @п3d23 M NM4 3Q ST34371WQ ; Q ; Q3_ 33> NM ]  4E4 3Q ST15150WQ ;  Q ; Q3_  NM ]  4E4 3QQ ;  Q ; Q3_  NM   43_  NM   4E4 3QQ ;  Q ; Q3_ # NM  43_  NM  43_  NM  43_  NM  43_  NM  43_  NM  43_  NM  43_  NM  4E4D$% M 3O&UQ4$% M 3O&TQ4FAY 3OdP 3 b#M43*@N#M! M4% e;M 3O&SQ 0Request Size (K bytes)'4% qCMZ3Ok&SQ &Throughput (MB/s)'4523  43" 44% KGM03O&RQ .Unbuffered Throughput'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@e+uR@#V"@@T?? =!@j-c@DЎ?a4)?Ŵ=޿!@t$#@]>@?-ːD?+!@R@?" [?A{!@A[fwh@o91@Æ,[:@d,5J!@"߻@?exS@A,T @d,5J!@u p@ la@IT@f!@2 4@PxU@Jo@e |  BNMM? !<]`  "??3`  ` >+V` >+W` >+X` Zp<(  <~ < <L Q @A?U U]L Q@: $<Fast Write WCE<Zbar~~ < < Q @A?TD] Q $<Ultra Write WCE<ZfLtrr < 0 Q  @C] Q8  <!WCE Unbuffered Wirte Throughput <  3d23 M NM4 3Q UltraQ ; Q ; Q3_  NM ] 4E4 3Q  WideQ ;  Q ; Q3_  NM ]  4E4D$% M 3O&XQ4$% M 3O&WQ4FA - | 3OtU 3 b#M43*@N#M! M4% 5g9M 3O3&VQ 0Request Size (K bytes)'4% =M Z3Ok&VQ &Throughput (MB/s)'4523  43" 444e@@@@ @ @0@0@@@@@P@P@`@`@h@h@ebH砑@\D|@ƾ @"(@#!@TW@ I!@Hq@ɟµ!@@ ɏ!@ج%g@$!@/F@89!@;uZ[3@e >@   dMbP?_*+%"??/U ( GM  v  <MNN?xZ]HX  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+9` >+I` >+J` >+Kr3d23 M NM4 3Q  ST34371W, ReadQ ;  Q ;  Q3_4E4 3Q  ST15150W, ReadQ ; !! Q ;  Q3_4E4 3Q "ST34371W, WriteQ ;  Q ;  Q3_4E4 3Q "ST15150W, WriteQ ; "" Q ;  Q3_ f3< NM  f3<Nd4E4 3Q  ST34371W, WCEQ ;  QQ3_4E4 3Q  St15150W, WCEQ ; $$ QQ3_4E4D $% M 3O&KQ4$% M 3O&JQ4FAH@9 3Ob " 3 b#M43*#M! M4%   -M3Oc&IQ ,Request Size (bytes)'4% c[MZ3OT&IQ &Cost (ms/request)'4523  O43"  ~3O ~% M3OQ4444% XrM03O&9Q >Single Disk - CPU per Request'44ee?&:?*iӹ? v? @'?Hx@'?.33?nrww?cff?Sㅈ?9Ȗ?)\RUU?{?(?|/33?G?e n^   #  ]  `Xz   BMNN?:]X  "??3` I,` 3` IL` >+P` >+Q` $C`` Rd(  ~  <@Q GH @ ']`@QX (<)cpu idle because non-WCE writes so slow<, (3dg>F23 M NM4 3Q  ST34371W, ReadQ ;  Q ;  Q3_  NM   4E4 3Q  ST15150W, ReadQ ;  QQ3_  NM  N4E4 3Q "ST34371W, WriteQ ;  QQ3_  NM  N4E4 3Q  Fast WriteQ ;  Q ;  Q3_ f3< NM  f3<Nd4E4 3Q "Ultra WCE writeQ ;  QQ3_  NM  4E4 3Q  ST15150W, WCEQ ;  QQ3_ % NM  %N4E4D$% M 3O&QQ4$% M 3O&PQ4FA. \ 3Oa3 b#M&343*MbP?N #M&3! M4% r.M 3Om&dQ 0Request Size (K bytes)'4% |rM Z3O6&`Q  Cost (CPU%)'4523  43" 44% 1M:3O[&LQ "CPU Utilization'44e@@@@ @ @0@0@@@@@P@P@`@`@h@h@eW!8,?| ?3"f䩋?;?aB? DO?UW?Op?;?*A?Yx?|ܰ??1䌷?H c?%έ?7G8;?B0.?!'?"?QHRU?Ga?kĚ8? Vצ?Ph͢?!@?ŗ7|߇?KD?Т?p* 8?v @?18Iǐ?Չo?N$y?LQD.?FO~ /?_ օ?:9 ?̯(u 1?`[u?kD3]?h̿?(N?kL{?0u|?@C0x?9??^κy?e z   BNMM?9E]`%X  "%??3` 4%*` 4%+` -IM` >+[` >+\` gc` e3d&_S23 M NM4 3Q  ST34371W, ReadQ ;  Q ;  Q3_4E4 3Q  ST15150W, ReadQ ;  Q ;  Q3_4E4 3Q "ST34371W, WriteQ ;  QQ3_  NM  Nd4E4 3Q "ST15150W, WriteQ ;  QQ3_ f3< NM  f3<Nd4E4 3Q  ST34371W, WCEQ ;  QQ3_4E4 3Q  ST15150W, WCEQ ;  QQ3_ % NM  %Nd4E4D$% M 3O&\Q4$% M 3O&[Q4FA@5 n 3O|3 b#M&e43*.N#M&*! M4% r .M 3O7m&cQ 0Request Size (K bytes)'4% _kM Z3O*!@&+Q  Cost (ms/MB)'4523  43" 44%  M:3O&MQ 2CPU milliseconds per MB'44e@@@@ @ @0@0@@@@@P@P@`@`@h@h@eAVL@_e}M@Z,yM@?yXM@I@&:O@56!;@y<@J<@vn>@*i9@ v>@+|-@@',@eW-@s(\-@ @'.@Hx@'/@Pk6@ ףPUU@p@u@.33@nrww@Sㅈ@;Ȗ@:Ȗ@X9@cff@Sㅈ@ 033@t@@&1?9Ȗ@)\RUU@t?QUU?(?{?{?(?C?Sㅈ?:Ȗ?[d;""?m?G?e z   BNMM?<]`LX  "L??3` F#N` IO` >+]` >+^` >+_` F#b3dF23 M NM4 3Q  Fast ReadQ ;  Q ;  Q3_4E4 3Q  Ultra ReadQ ; !! QQ3_4E4 3Q  Fast WriteQ ;  QQ3_  NM  Nd4E4 3Q  Ultra WriteQ ; "" QQ3_ f3< NM  f3<Nd4E4 3Q "Ultra Write WCEQ ;  QQ3_ f3< NM  f3<Nd4E4 3Q  Fast write WCEQ ; $$ QQ3_ % NM  Nd4E4D$% M 3O&_Q4$% M 3O&^Q4FA @ 9 3OT3 b#M&N43*???NB#M&N! M4% ra.M 3Om&bQ 0Request Size (K bytes)'4%  ]\M Z3O5j&]Q &Cost (ms/request)'4523  43" kRD3OgXrw% M3O&aQ423 M NM4444%   M:3O&OQ <CPU milliseconds per Request'44e@@ @0@@@P@`@h@eAV?_e}?Z,y??yX??&:?56!?y?J?vn?*iӹ? v?+|?@'?eW½?s(\? @'?Hx@'?Pk6? ףPUU?p̺?u?.33?nrww?Sㅈ?;Ȗ?:Ȗ?X9?cff?Sㅈ? 033?t??&1̼?9Ȗ?)\RUU?t?QUU?(?{?{?(?!r033?Sㅈ?W-bff?[d;""?|/33?G?e >@!!!   dMbP?_*+%"??dU (  j^  #  -] `LRXz  BMNN?] SX  " S??3` j:` r D;` >+<` >+=` j>` r D?` H3dr;23 M NM4 3Q Read FSQ ;"" Q ; Q3_  NM ]  d4E4 3Q Write FSQ ;## Q ; Q3_  NM ]  d4E4 3Q  Write FS + WCEQ ;'' Q ; Q3_  NM ] d43_  NM ] d43_  NM ] d43_  NM ] d43_  NM ] d4E4 3Q writeQ ; QQ3_  NM  N43_  NM  N4E4 3Q writeQ ; QQ3_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d4E4D$% M 3O&=Q4$% M 3O&<Q4FA;} 3O 3 bN#M&>43*N@$@@N#M&?! M4% M SM3Oc&HQ 0Request Size (K Bytes)'4% f MZ3Ok&;Q 0Overhead (cpu msec/MB)'4523  43" 44% 3 hM:3O9y&:Q 2Out of the Box Overhead'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@eK D@-6N@bM@?yXM@Z,yM@ X9@UvG@ӣH@vn>@J<@,1@jq"A@Q`ɯ@@s(\-@eW-@G-@гY%\6@s w7@u@p@c2Uk+@): 5@-!K(5@X9@:Ȗ@O1@): 5@Jwn6@&1?@Լ|N.@|!8@7@`Q@@[d;""?:Ȗ?e z  BNMM?]`hTX  "hT??3` hj@` &A` >+B` >+C` hjD` &E`  GPH 0(   z3d%23 M NM4 3Q  Write WCEQ ; Q ; Q3_  NM ] N4E4 3Q  ReadQ ; Q ; Q3_  NM ]  N4E4 3Q  FS Write + WCEQ ; Q ; Q3_  NM ]  x4E4 3Q WriteQ ; Q ; Q3_ $ NM ] $N43_ $ NM ] $N4E4 3Q FS ReadQ ; Q ; Q3_  NM ]  x4E4 3Q FS WriteQ ; Q ; Q3_ 3ff9 NM ] x4E4D$% M 3O&CQ4$% M 3O&BQ4FApT 3O `3 bN#M&D43*@N#M&E! M4% OL'TM 3O0d&GQ 0Request Size (K-Bytes)'4% MZ3Oe&AQ &Throughput (MB/s)'4523  43"  @`3O 9E% M3O&FQ423 M NM4444% M:3O&@Q 6Out of the Box Throughput'44e@@@@@@@@@@@@ @ @ @ @ @ @0@0@0@0@0@0@@@@@@@@@@@@@P@P@P@P@P@P@`@`@`@`@`@`@h@h@h@h@h@h@ebH砑@+uR@#EN@@T?2_[h["@ D@ƾ @ =!@PB@DЎ?_ݴ"@`=sh @#!@Ŵ=޿!@z@]>@?? gt"@ٷA @ I!@+!@waR@?h8!@;/;Q @ɟµ!@A{!@^q@o91@eYB"@J2@ ɏ!@d,5J!@宭@?exS@ 3["@ Ma^@$!@d,5J!@`x7@ la@_1M@iU|@89!@f!@Vcy@PxU@]@iCg@e >@    dMbP?_*+%" ?? U` 8(  |  BNMM?]`XX  "X??3` >+f` >+g` >+h` :i` :m` :p(  ~  <`Q GlHp @  ]``QHX <Bogus<i 3db5A23 M NM4 3Q 1 BufferQ ;  Q ;  Q3_  NM ]  4E4 3Q  3 BuffersQ ;  Q ;  Q3_  NM ] 4E4 3Q  8 BuffersQ ;  Q ;  Q3_  NM ]  4E4D$% M 3O&hQ4$% M 3O&gQ4FAyub  3OV%3 b#M&m43*$@@N#M&m! M4% *M 3Ob&fQ 0Request Size (K bytes)'4% NM Z3O2Q&fQ &Throughput (MB/s)'4523  43" 44% Nv M:3O1&&pQ r7 Read Throughput - 1 Fast Disk, Various Request Depths'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@e#V"@ ڢ@/ETa@j-c@s\@@*@t$#@KFX@8C@R@n5@~6Z@A[fwh@B @@"߻@Ċm^@@u p@.@{}q!@'2 @3D@;D%@e |  BNMM? ]`"X  ""??3` >+j` >+k` >+l` Xn` Xo`  q3d6PT23 M NM4 3Q  WCEQ ; Q ; Q3_  NM  Nd43_  NM  Nd4E4 3Q  8 BuffersQ ;  Q ;  Q3_  NM   4E4 3Q  3 BuffersQ ; Q ; Q3_  NM  4E4 3Q 1 BufferQ ; Q ; Q3_  NM   4E4D$% M 3O&lQ4$% M 3O&kQ4FAD 3O>m 3 b#M43*$@@N#M! M4% M3Ob&jQ 0Request Size (K bytes)'4% & MZ3OQ&qQ &Throughput (MB/s)'4523  43" V[3O% M3O&oQ4444% XZ M03O&&nQ r7Write Throughput - 1 Fast Disk, Various Request Depths'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@e\D|@Ilpo?%O??"(@%;@'ݧ?a4)?TW@_c@k@-ːD?Hq@T7@Z@" [?@1DH@n(1@Æ,[:@ج%g@mV?@\L-@A,T @/F@ e|샂@̋@IT@pn6@MB@JB@9ͮe^@e >@   dMbP?_*+%"??uU(  j^ 9 #  i] `t0Xz  BMNN?^9]0X  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+r` >+s` >+t` 8|` }3dO^H023 M NM4 3Q  WCEQ ; Q ; Q3_  NM  N43_  NM  N4E4 3Q  3 BuffersQ ;  Q ;  Q3_  NM  4E4 3Q  8 BuffersQ ;  Q ;  Q3_  NM   4E4 3Q 1 BufferQ ; Q ; Q3_  NM   4E4D$% M 3O&tQ4$% M 3O&sQ4FAjw 3O 3 b#M&|43*4@@N#M&|! M4% {Y%M3Om&rQ 0Request Size (K bytes)'4%   M Z3OY&rQ &Throughput (MB/s)'4523  43" 3O % M3OQ4444% 4! M:3O&&}Q b/Write 4 Disk Stripes Throughput vs Requst Depth'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@e,qE@ig¸?0)?x>?a >@q?÷B@Ai?K%ؘ@6(Aީ@&h@MNۤ?-蟠!@gEl@p"@f^ ??!%@@(H!'@O`@۞A*@X#@37e+@ 4H@T3v,@M(@;*@(\4@I*:.@mL+@UF.+@:eK@e z  BMNN?]9]1X  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+u` >+v` kXw` x` Vy` z` {(  ~  <Q GH& @ se]`Q4X <Bogus<w 3dVg723 M NM4 3Q  8 BuffersQ ; Q ; Q3_  NM   4E4 3Q  3 BuffersQ ;  Q ; Q3_  NM  4E4 3Q 1 BufferQ ;  Q ; Q3_  NM   4E4D$% M 3O&vQ4$% M 3O&uQ4FAY 3Ok*3 b#M&{43*4@@N#M&y! M4% YM 3Ob&zQ 0Request Size (K bytes)'4%  aM Z3O+Q&zQ &Throughput (MB/s)'4523  43" 44% ! M:3O&&xQ b/Read 4 Disk Stripes Throughput vs Requst Depth'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@e`F 3@QF@?iO?s[ @=#F@ k @I[.*%@/kJ$@5q@./*@$9x)@3n@%Z.@^̲S-@ͫ"@_'0@h.@ᰄ%@(鐷j1@mZ/@t˧<)@;7@0@2 v,@e >@   dMbP?_*+%"??rU  (  d^   #  ]  `+` >+` >+3dTT23 M NM4 3Q 1 DiskQ ; Q ; Q3_4E4 3Q 2 DisksQ ; Q ; Q3_  NM  d4E4 3Q 3 DisksQ ; Q ; Q3_  NM  d4E4 3Q 4 DisksQ ; Q ; Q3_ NM   d4E4D$% M 3O&Q4$% M 3O&Q4FA r 3O 3 b#M43*4@@N#M! M4% l_ AM 3O`&Q 0Request Size (K bytes)'4% .QM Z3OP&Q &Throughput (MB/s)'4523  43" 23O-?;% M3O&aQ423 M NM4444% )d M:3O&~Q R'Read Throughput vs Stripes 3 deep Fast'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@eJ\@, @{/d ~?7~f>?/IY)@9ή@Osp@cuL@罵@DfC#@1\q%@7&wz$@)LzO@E&@c)@_7r&{)@۵0C @!oM-(@$~e-@߼kb-@`Jkc@! (@(,/@:N/@|kIc0@}n)@ES-@auڡ/@[~HJ@@u+@e6ݣ.@V30@e z  BMNN?]=X  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` ! ` >+` >+`  ` t` N [3dV23 M NM4 3Q 1 DiskQ ; Q ; Q3_4E4 3Q 2 DisksQ ; Q ; Q3_  NM  d4E4 3Q 3 DisksQ ; Q ; Q3_  NM  d4E4 3Q 4 DisksQ ;  Q ; Q3_ NM   d4E4D$% M 3O&Q4$% M 3O&Q4FAW 3OA 3 b#M-&43*4@@N#M&! M4% J VM 3O6b&Q 0Request Size (K bytes)'4% M Z3O.Q&Q &Throughput (MB/s)'4523  43" 44% V M03Oj&Q H"Write MBps vs Stripes 3 deep Fast'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@eńW@<-N@$1'@{b@@1 NI@r@R@l.z@bX@$E@4->`@d$T@E׏$@W##@+#@/(@ bm5%@lu5R'@hZ)@S!+@`.=&@Tu+@"S-@5y@F@'@ŧ!-@s&ն.@Ld@OG'@e?9+@\%h#/@e z  BMNN?]X  "??3` e c` ` >+` >+` >` j` ,F3d$!23 M NM4 3QQ ; Q ; Q3_4E4 3QQ ; Q ; Q3_4E4 3QQ ; Q ; Q3_4E4 3QQ ; Q ; Q3_4E4 3QQ ; Q ; Q3_4E4 3QQ ; Q ; Q 3_  NM  d4E4 3QQ ; Q ; Q 3_  NM  d4E4 3QQ ; Q ; Q 3_ ` NM  $$d4E4D$% M 3O&Q4$% M 3O&Q4FAu~ y 3Op$ 3 b#M-&43*@??0#M&! M4% L ?M 3O;Y&Q ,Request Size (bytes)'4% }yM Z3OIN&Q $Cost (CPU ms/MB)'4523  43" 44% \U ~M03Ow&Q 2CPU miliseconds per MB '44e@@@@@@@@@@@@@@@@ @ @ @ @ @ @ @ @0@0@0@0@0@0@0@0@@@@@@@@@@@@@@@@@P@P@P@P@P@P@P@P@`@`@`@`@`@`@`@`@h@h@h@h@h@h@h@h@ee pp  0Q  @OC]`QX <all costs about the same<g   >@    dMbP?_*+%" ??U (   v   <NMM?<]`X  "??3` t` \I` \I` \I` t` B *( |̜ r  0nQ  @ L ]nQT < 2 busses<3@xx  6nQ @A?  ]nQ $<1 Bus<?3d23 M NM4 3Q  ReadQ ; Q ; Q3_  NM  4E4 3Q WriteQ ;  Q ; Q3_  NM   d4E4 3Q  WCEQ ;  Q ; Q3_  NM  4E4 3Q  ReadQ ; Q ; Q3_  NM  N4E4 3Q WriteQ ; Q ; Q3_  NM   N4E4 3Q  WCEQ ; Q ; Q3_  NM  N4E4D$% M 3O&Q4$% M 3O&Q4FA   3O3 bM[&43*9@@N#M&! M4% yM 3O&Q 0Request Size (K bytes)'4% "MZ3Ok&Q &Throughput (MB/s)'4523  43" C]$3OD=J% M3O&Q423 M NM4444%  (2M:3O&Q 0One or Two SCSI Busses'44e@@@@@@@@@@@@ @ @ @ @ @ @0@0@0@0@0@0@@@@@@@@@@@@@P@P@P@P@P@P@`@`@`@`@`@`@h@h@h@h@h@h@ewn?3?{IIN@QF@?ig¸?{b@3@"?}x@=#F@q?R@}/@FN@׈@/kJ$@6(Aީ@4->`@i$75@ 51 @q0u &@$9x)@gEl@+#@_Z6@"LcX@w0@^̲S-@@hZ)@iB6@~$%%@!pd3@h.@X#@"S-@*=,7@%۷ӡ,@DqL˝3@mZ/@M(@s&ն.@߈o7@xhP0@e#@   dMbP?_*+%"??IUD0,( \T0\T 6 v  <MNN?]p  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3`  ` )` \` >h` >h`  ` ?п3d?23 M NM4  3Q Read FSQ ; Q ; Q3_ NM   4E4  3Q  ReadQ ;Q ; Q3_  NM   N4E4  3Q $FS no-buffer WCEQ ;%Q ; Q3_  NM  N4E4  3Q &FS buffered writeQ ; Q ; Q3_  NM  43_  NM  4E4D$% M 3O&Q4$% M 3O&Q4FA  3O3 bM&43*A@N#M&! M4% S!M 3O*&Q 0Request Size (K Bytes)'4% uQdM Z3Ow&Q &Throughput (MB/s)'4523  43" 3Oq4% M3O&Q423 M NM4444% Rb<M03O&Q *Three Disks, 1 Deep'44 e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@p@p@p@p@eU @J*@WSF@['H0@x1@(o @F>@@@Zpi5@$o'@; -@-@E6@aEF@#uF5@]M4!(#@25@@jk5@2%@]˹3@! ;@g( 45@u}'@01y!@s *@ NbV4@*e(@-M.#@4@𳞱 @qU)@MC!@aeM@Z#@G6>)@e ~v  <MNN? ]d  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` i ` \` >h` >hп3daw23 M NM4  3Q  ReadQ ;FNQ ; Q3_  NM   N4E4  3Q  WCEQ ;OWQ ; Q3_  NM  4E4  3Q Read FSQ ;4<Q ; Q3_  NM   4E4  3Q WCE FSQ ;=EQ ; Q3_  NM  N4E4D$% M 3O&Q4$% M 3O&Q4FAB@ 3OQ 3 bM43*A@N#M! M4% !M 3O&Q 0Request Size (K Bytes)'4% ?MZ3Ok&Q &Throughput (MB/s)'4523  43" 44% R<M03O&Q *Three Disks, 3 Deep'44 e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@p@p@p@p@eM*@Da@دӣ&@ZK)@ۂ@~H'@u= 3@qfJ@@6% @e!/@/9@qܮM@ƛt @ 6@/:@8py"@ @0v7@lU9@Ng*%@ymTi@(Q8@9:Qc6@''@_0M@y4@1U+@"HW*@O O@ak+@i})@8aDH)@PJ@א;V,@k+$@]9,e)@e >@   dMbP?_*+%"?? U T0  uTable 3 - Variation across disk generation - The table shows the elapsed time in ms for a cache hit and prefetch hit of varying request sizes directly at the drive. Times are measured from a user-level thread running through the NT file system. For the laNarrow-ST15150N Fast-ST15150WUltra-ST34371W Size Cache Hit Prefetch Hit Cache Hit Prefetch Hit Cache Hit Prefetch Hit0?X@L@@W@M@p@>@0?@Y@O@@X@M@p@@@0@[@?Y@M@p@A@0@`@@W@@\@N@h@D@0 @?@a@a@U@h@I@00@pp@@f@``@h@R@0 @@0{@x@@@h@^@0 P@0@І@0@Py@x@j@"y4444444@(  p  6NMM? p]`  "??3` ` ` *` v` v`P 0( @A@A  r   0pu  @ CA4]pu: E<FElapsed time vs Request Size Controller Cache vs Controller Prefetch<EX~~   <Uu GH} @ v 1A]`UuK <odd< 3dS""23 M NM4 3Q  Ultra CachedQ ; Q ; Q3_ $ MM ] f3f3<<4E4 3Q  Fast CachedQ ; Q ; Q3_  MM ]  d43_  MM ]  d4E4 3Q  Narrow CachedQ ; Q ; Q3_  MM ]  d4E4 3Q "Narrow PrefetchQ ; Q ; Q3_  MM ]  Nd4E4 3Q  Fast PrefetchQ ; Q ; Q3_  MM ]  Nd4E4 3Q  Ultra PrefetchQ ; Q ; Q3_ % MM ] f3<N4E4D$% M 3O&Q4$% M 3O&Q4FA 7 3O_A'3*#M&43*@,#M&! M4% ^ BM3O&Q 0Request Size (K bytes)'4% }M Z3O&Q &Elapsed Time (ms)'4523  43d"  !3O VB% M3O&Q423 M NM443_  M MM ] MM<4444eee >@   dMbP?_*+%"??mU8(  8v 8 <NMM?]`|  "|??3` :I` >+` >+` >+` I` IX<(  <r < 0Tg  @=]Tg <4-disk write- 8 deep<nxx < 6g  @H'8^]g  <1-disk write 8-deep<k~~ < <lh G7Hg @  p  ]`lh  &<'Extend = 1-disk 1 deep = 4-disk 1 deep<&<3d23 M NM4 3Q  8 Buf, ExtendQ ;  Q ; Q3_  MM   43_  MM   4E4 3Q  8 Buf, WriteQ ; Q ; Q3_  MM   d4E4 3Q  1 Buf, WriteQ ; Q ; Q3_  MM   ` `d4E4 3QQ ;  QQ3_4E4 3Q  4-Disk WriteQ ;  Q ; Q3_  MM  d4E4D$% M 3O&Q4$% M 3O&Q4FA [ 3OJ3 b#M43*4@@N#M! M4% M 3O4&Q 0Request Size (K bytes)'4% bMZ3Ok&Q &Throughput (MB/s)'4523  43" 44% M:3Oh(&Q @Allocate/Extend while Writing'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@ek?yǒ7?@T?0#0lr?0#0lr?E5?1$N@DЎ?ԈWs@ԈWs@b?|)t8@]>@?Z'Nl@Z'Nl@Av?,ːg!@?CC@R$@CC@R$@H@BI!@o91@qs-@qs-@g;@ؼ!@?exS@'JC1@'JC1@#f8[@%R!@ la@$8T1@$8T1@l6!@PxU@ j[1@ j[1@e >@   dMbP?_*+%"??dU T(  Tv T <NMM? ]`)  ")??3` >+` >+` k ` k ` k ` k _` k 0X(  Xx X 6M @A?| ]M $<Fast Wide SCSI<Qd5xx X 6N @A?B]N $ < Ultra SCSI<8 d5~~ X <L @AA?S]L| $<.< d50@0@?3d23 M NM4 3Q ST15150WQ ;FcQ ; Q3_  MM  P4E4 3Q ST34371WQ ;$AQ ; Q3_ MM   P4E4D$% M 3O&Q4$% M 3O&Q4FAu 3O;3*??M&43*@N#M&! M4% )wM 3OEV&Q "Radial Distance'4% owMZ3Ok&Q &Throughput (MB/s)'4523  43d" 3_ M MM  MM<444%  M:3O&Q >Variation Across Disk Surface'44e????????UUUUUU?UUUUUU??????? 333333? 333333? UUUUUU? UUUUUU? wwwwww? wwwwww? ? ? ? ???????""""""?""""""?333333?333333?DDDDDD?DDDDDD?UUUUUU?UUUUUU?ffffff?ffffff?wwwwww?wwwwww???????????????eףp= @= ףp="@ףp= @= ףp="@@Q8"@ףp= @= ףp="@ףp= @= ףp="@Q@Q8"@HzG@Q8"@)\(@Q8"@ ףp= @p= #"@ @ Q"@ {Gz@ Q"@ q= ףp@ Q"@ Gz@ Q"@ ףp= @ Q"@Q@Q"@ffffff@p= #"@ףp= @33333!@p= ף@RQ!@RQ@L!@@)\ @p= ף@Gz @333333@333333 @Q@(\@p= ף@Q@Gz@Gz@Gz@@333333@{Gz@zG@(\@q= ףp@(\@ףp= @Gz@e TT>@   dMbP?_*+%"??sU>@   dMbP?_*+%"??sU>@   dMbP?_*+%"??sUD(  Dv D <NMM?]`$  "$??3` h` >h` >h` >h` XA` hH(  H~ H <\ GH @  ]`\9 <real?<H0@0@@3d23 M NM4 3Q  Unaligned ReadQ ; Q ; Q3_4E4 3Q  Aligned ReadQ ; Q ; Q3_  MM   N4E4 3Q  Aligned WriteQ ;QQ3_  MM   N4E4 3Q "Unaligned WriteQ ;#QQ3_ MM   d4E4D$% M 3O&Q4$% M 3O&Q4FA u 3OH 3 b#M&43*N#M&! M4% Y+M 3O<v&Q ,Request Size (bytes)'4% MZ3Ok&Q &Throughput (MB/s)'4523  43" =3O\5% M3O&Q423 M NM4444% !: M:3Oh&Q D Alignment, 4-disk(ultra), 3-deep'44e@@@@ @ @0@0@@@@@P@P@`@`@h@h@eFd@mn@|@@:rc @o9u!@Z #@5g1@ />*@`Hw0@<r$@=@uhC%e6@q pc6@,,@j<,<(@)%ǻ9@ bW=@Ϗc1@8@/@qe\ ;@n?@%w75@eZ&T3@>x!Km=@:@R5@n>@p@@YV5@e DD>@ ՜.+,D՜.+,x PXl t| ; Microsoftt7  Fig2Fig3Fig4Fig5Fig6Fig7Fig8Fig 9Fig10Table3Fig11Sheet7Sheet6Sheet5Fig 12Chart7  WorksheetsChartsDocumentSummaryInformation8yT_9381009983 Fp'ƾPH'ƾOle CompObj25b 6> _PID_GUIDAN{CECA7635-4128-11D1-AE3B-0080C7F3EC95} FMicrosoft Excel ChartBiff8Excel.Sheet.89qOh+'089ǡʱZT<=Gٞ=Ec)۟r{u}׀'cA.ҞsVwy] CKheh mZB[PN30^ע5LoȯtZ 5kkjFcEFKG"|ƎpG􆕊uFGМK퇔[{:7LIۚعlԻpsQsv־4*\rVRrWη_uJӒ3Ћ9m*@2$'jDMUCy *kU0)*i(J3OY;wrjU:Hu&(i}5j_ӵ8AsRÓ~+1H%:")jF}%:r2;Og5+~[F̈́\yUY VVY7[+B_Ը2Zך±kkFRCTe~ߟ*ԊRz4jg'_ :fl~jhUo'C'KSmtLeC-UNLݮSZnQ+UGꠞlQת:VWr6j#& Ű v^ { A8?oX&l۞}:oQKu\Tڅ3tAǭj;F m[wJBsڬџL=O2uKI7z'RDbHLMOԓx4k嶰W1\7묵fЍL wvuEd3joQj"%zz2AmZ["&#jMDfՁhu"Z֭D+AГ%DM>l,_k`5bg`%`9ڗk}GM:&:j簗쁽}% {`7E4A)~ j?5ڕ ۑjs|YWZ=L2\ѡL*{&6=ͽ|Oe fFxV0}Vsms ]`Wsɥa+}vHC{/]dAZۓ}.ri;W;O .lc#cm0qJ+7n͵?=OvHEIVS[Ètܝٮ;;NʚǭP^5H»{,1,Ea>'hu|M/͓Hӛ92!,7>w˱@ٜ+sfq,\:rp1jۏf'es5FM(`2[La!= Sv<ƾ9 5΂ٜc皫7zzt9"GG*@I2P(aJ-P!n0DRD|g`0ˇpI lC0< Sa<aaL$fr#RGG gɞc!S{v+y9/8~\b7r]nw2|S+I2X&$#0U,]oW4r?hK;W<=613ڨGncDŒ3sNz 3W0|2K9X `!,'Y7y0g,3`:<`iә 4Mgch 3a66ՕsZّdGr=g/aګte.y=Wsff~SWKfܞ&b ܬ?9Eϑ8\ke(6޽h{A/bыFl҈Q;TbB,Si M1lzθ.E$wEx5db-YYC1ˊ4]DWt%[f=bOsO"S8N*K#b >\{c%}B"՞\7I+t{"j)v9(ElmPh~d \f=3?,,, g3C!x`Z Z bWjF|4یf,93㏡7884<=?jlʳY7 f nf`*|c?yu3uFQe=]:ZOi{,3rIé0j8C"0 0!mFHJx\}ݑ?fyn&伙?ZT ρHSoYyOem.= E췂zwg:0g/ |8EF5$ZWuA9_AJo\e K66dggf 8.#k˂s'yrS_ꋟ8 ڭ7ց0*tIp1+e>5W+G(7ז +_2[T]WWiΣŜk8Ά,? TM՚:hFZAh˺nfi˙g\ΈـѲԢJ$p g0 k.7\+Gh1rWl?i5㪜,D// |ʑ>!FzkѺD.u<օ3YPHوr#71dz>Ϧui+gF&|nKWASq54Cus@mKTDeKp.cVH{C>AcÕjh MXnєs6VFTײյͦo`p{w.vs 8g7m9bI;O4$5ɚvlgshWU|;tړ5B=.?yp&"-H6h Bʭ%4fs57%#MJטvԐc_ d>\ t ړ)#jDJvO/rv+cbܗ9]}b1z= QV(p94(ŕH l]_s&5O}ea rMR\Јd&єf5m?Y`%W1]cV{ 4#\DrzUCڪIA>˲^%ytt'Io N] Qqر:A GB>^z淹*SstS7zÇ7&b7mm} Ҝo\{21O6"ҨЋe&ϽY3 ]ޞF2 ԧaŋJ"- = EB/ p?epɊ\ϟQֽB{Y/#W~Fc =_${jbh-ʜ1ۋ옉!UqYoۓyQnG|JXۋ מ"HZMvR~Db\v˴Qn:UهތHzHxT^AaWeHO.GR>^$$zqg/Jf4w7}.h'yT~*/VrPeΘnEѨUBO%f۞͋&OA~(ɸ`y)ҋd/~I$FiFH=݋i(I3Pĩ|o/E|()Qbe:G^ɝ 4'Ƌ"[$z/rԿ1UCxliǓ*E23ߋ)Vl"ȎFLz=ŊMшH1:֋.:\z)]D9U錿O;=(EzFVHG<]/bN6__ |_Asezdʢ/TM T3}{3Q58<.1u3\ gd3מ"(Eˋ_*/L$EiiFgNG{h-]C vU&Dr ~4‡K_$BON>_E_ ޱ=պ4'MQYES\*sto/c&%f͋&B.15zQqË"Xm3!ŋN4z3c08L |H#9QFuw<yĭ,2EF"޵i]w-q(]ϴ@޵C{*]O$(#=mmOG~K+.w{.^3q]Q,ڽnK8D1Gc4uU^3Q5(4=.1ikvkķfjrkS,_/]Fqŏw40w5UF:wHCy%%xxI*Ю:OG.sgpU?_ZhTɛ~h6-qݷ3فs"^4͡ܯYrt9^dt~/b&%f͋ ]EzR /J__H1:֋n:;xQQtԧaf~/=y|{Y?Kvi5^l],xT}$K$z$z|v1-Z<{3Q5$h\bgfl7/ÃO }{QkO^$&;8繛D(i\t]77yDЩq/\HX#}/zXY]5孏"q9oIJYz#~R514xxyȊz$.1sMi ^4ôȞۋfŏI$ng/*];"Y =}NËls(s}O{$.'c>f~u?{\be\ xWu?ŵ9|As"r({RGo =A9c:Ƿ1UB%fƿmOEa.xT׋ s7Xmtө>=wӹқ u9hg{PvU(ee~$Edes\beʚxWG3f1]i%Sy*ޞzP*sto/c&%fO0ٛ - E,Ë/b?$csETtԧa^?Oʧ{P6Ջr x* {Y~~܉ ]ѦO,"KU^hLʜ1}̷%3w'A<]l0s,ɚ\bk"g{II _*/RM$nEH7~#06r:i].*E2|\]HɉRl*ET?As"O8&8"[U.=7A9c:ͷ1UC$^47& _/rX";"2QY׊\}9EgBJ[OEy:8'NS=)L_pɠ%s6ikyiuꪎ-+En;}IEjd|V %UBgu\V4]@Zoq|KrSͱOdVW)jಾ> \zv:]S~M1j'Mff1i~@mxvfBf`3˶ [>{5 r 5er%5B.vk8(jva Ebva`fX8.sZXe)Jr#0GG6mж]?6fN(bEz&7lA1 ֱn-nò}-VafMTYmXn/{`7,8tu^d1=>G(8ʱrL?ƹ^~k|W/RNj^6q)0<-I*ω%|E|Qߠ}oQ-y|6~/eaڧ>cl)dߓ$:1-clgy~nrurj/| -pyCó/p*Tra" vN(V᱿ᵿq_7^`?j 59aOVe g4m;ݦv-i_ç?|o&1ל'8kW5{4^6ĺf:@;H>9x $}jqp>ߧK2ܩg{n3[F=>g0>H8q> | rt~@ӏ~F/+cxKd5מp>{B!BAZŏ0^sc[f"8\n ^5~spd}*ь<)Ҋmaqہ2rNcWֿ]Qjtꐛlx*f8A^}3a?(ބ7xށw=xm j/{{{蛻5_4|em1|~w;gq}OlΆdFd1r__~eNcoo\s8>+دx/3~?+[_1_w>S$| y~ރw⼆x!kś/5ëW /Kp /1Q^`Am{;̽]zt8{[ils$~ν-{Ѵm{к[g=_ '<Zة[/gjj2_lSNY v+h~62BQhνwTֿa#vӞ-I~i6f6[ٶа}wB117>wK[5}_"r_q8W+4|[w&UY'T ?jvje> XlgmPsL_Ycodޠr@]Kufsiq~ -ͰQlPe{s&55ӿ(v5GQrC1 /Ra6:qLW>4/Kp^c<~k/U3gpsHx>fIJ|Xz#1e{[ʭcb#k^DfqKM0ֳ%8nx`o O(_|[Yw'?>'8 @(bxބ 3zXkYֲZ[1֚c]M+l셯({XuQe ob#lN uC~$!b3F0+`.V<T+@Y. hZ[m8x_# Ͱvn~vQ9F#xpi9o1/FG1VbEԣ:Q"XD]su/"K3O-fZ<~s]cmN||qL/6:=V"n%2[V"UH ^!,$D(m6aq$vPd(f^,?Ǖ\q"e*XYI ۉ7Mx xއ#NjMa[)>>I1|=x m|cOic];5 a#n]{>|`~GC7[w~T!_}},6F׼kxއJ`=l=xN_kU'uc" N§Ϙ-|n"f\\l /99|O$|?DY󗯔 >A'(=bO3FB a#UgqFR|>X>#F_mͰ6׆oCZ봭6sOo5oQ9=|;9Z1ݔ-j#WE\06a2.-a9wE`0zUGO[^CTƟ6tz+rYFW1=Bfty0m_;u7bAߠjBȥu}R{ sjƱL׶L9{,߫ʪz]ous T|;W뽉cKFk-V|Uz[,ŕuH%Dd*<   C A ? 2JkZ Fkl&lA`!kZ FklDD`XkiPx]RO@~w NXAU  au81pLh C?L'3!;߅l{}w1Hj'5)xٔ3Vӭ /aѠIeFWcX0JMpI.$?,&ԅ0sS:?Ox;OQ_?!S|dE-V|wF~݄0gZIWIl[ъݚ@QzDdSARwYu`[X*B%c{> :?N,{N)D %\T숹hKKe^bxAٱ(;i\{Ky> S,#C랧_mĔ$)ug!g4Lxg캿XY82}_T{$1jxm\yv2SN"n"oL.߮qEcJF~ 2Ԓ DdKfB   S A ? 2' .ڥڈp B`! .ڥڈpD$%p* x\ ln{4G'ADc1O5rS*i*ihGL`0BGy4$`lN$Jm>Jm5iQxfvgwvow;JMm|C#2h 4H@@__ϩʗtY@ !QJDAR9Z^1 ^&c}I#tbWa\sM&Y!URDy·=f)A\GwVeWbedm^aI#łEv; iT0r<]Cv`O׭B]}U )aZŵZ woaA'b Y!cRm4r,~09Бפ!')i^P3#w#pO+eYd,}Z}uy6RwqCsPR5k نs _g10fKv9,$1ds CVlȊ ˆeCϐ3do %CvɐVP1KJ 0r^UyERX cמOwliIzsjsw|42zʿOk| -\/[{g< P.x(|R$cIHӐpHDtl'#-@ |R)2 A(6zvH ĩ :gۚ~3Cħ|ZE>I>{H|Wg'l:Gu|6GQ 8mjS58@VN/3 |$IG!75OB4Oĭܚm/언_6p[  g|VHV 5[)n).pE ;5u\JWx}R/]@K- Hjk#4^ըe x,dAx߃99wrVYpztN18*q: NZ7Aĩi7v NީsD|&LvGmcNv:3`V'.Y/w3,%7,XKoXyb)ae6<X}òf` O,=I=8e kqϹq.g"FTΐ!pbe<"xn YK ѻL65kջD4lnb?ȶ7lFi{OֹD;l|ڀ:~J'mz1**?fDB ͤĴLKqQ[U{5BU̜k7jI:#ebCD=6 M~a BJ9+XV DZ:##XUoI XzC 5%gC|V= |-Ԭ5bh%dzBM`Ԁو>B{ kXDY^c=RP͡ {[h:[hWc>A zXl*IaN~,TE?oՋc (Kԫ?F~Ao Ucg xê 7NdYc!6HBߦ^zڏB31s1&J%걱?:i=p?Fyۖl oTPE '0z9QiOYuh[u| #.k.3G*8 aPi>JjˌQp өAU2[,Y@ >Z2S6rDݕ+yT\fۙJň<ND!Ȯ8գoxx!cu_gX\ĝrBt0掃}zXXT F!Fc>SmDdz,5+fģ G`XT_BD[1] -|/ŝcyϝ0W6c9M)&9*ߦs<Ӟ;lLq0y,G=w;Jq0y,;0>۝aX6ynZa2X96y5ȹe4 7!.oQߘIK yAȴ@䲼0;]4|Np |Qi![ej.h5p$MeS,ϸlj[?we?˖cvmiO΃(wn {tC\eEY(*džUaR:Tgyl.>l'ۙ_\?hD?6'Q0 rOhQ%Kac-h{]%x0*b2/s*y![">#] : v'"8b'jO^Eu(;^zV x;?Bo|0…- ~UEТMj2;|tF/<#fUe b%Kqjކ?Ymg3۳ùgO,Dס9Vc6i&S9rzӯ ^*1QZQqz'3?v:O5.kTG5{B/m#Q/B-,,++]6n`oN.2l+o=z'Zo} /~oܗ/l;eE*>՛fuM DlRt?1˽ 挟B9c[3ksh~k)+V%uv{{o3G3azwqWgYV?>beE\P5OH/ViV$aUeVzH#g׋ e"VѾrkOCNȺ 6^D Dd <  C A2 ʨ{63FG j UPw`!b ʨ{63FG 7C4.,0 x[}lw;9GRң>3qWM+d)u \ ؈ 鄐PAHiTQ)CԈ"RRKIBćj{3=۷3o~oߜ$"eQ, MJLV\Ә&þ"(?aժj5sknǰr.HJ$)P~ Tl^{.AGUUqC-^3Mx+GkmgiMiy1m=n9YfՈӻP<o=G|h_ߖēmto\xj'dG=_oK+ޘ39#hli=Ř)^יZK2X-(KQ;t}JקtiK+YTK~y{^+v;tǔҝQ+JwE*JWQ %`t6%A/fa*;ɹnԋ5[RF N 2 2I)C7%VcQ+JS׉6AuR:p)\c ר5p@\NJT8FakFCP1UXg}c8N׍; z58 uJaRX' Mx9ޓj'x_P.(\ kաpu(\**y^N* ezZa=A&XAMNH9{5jKq{Tm>4;۸1$,ܱ0vw{C"9NE;<~ɄX\E2; eolhdN5e{CԼR>=qIhAk!CB֏3EZӰ_oHd`[Rw`?NHdPWa__ ٘Hd0 j?hHF=F"qvQ1x_Hd~ F~ ~VZ}㰒Q1Xa̚!r߅LȖa /< 4ېO)գ''͙"EM!a͙pT 煃?gLW5iߜ?mב3 ,,9ӟq-2V`ߝ;;:zS u)XHn;zXU?/oҿ9*/`{MBr8nxDu >m|r8.jƒ$kP%^r88 igqr8l;wf:6)2_-VL'+z'=`&L(o0 O&Տ`&tL(8 >PV&fB5  e՘ j0 '̄̄cdBY 3Ḡc8Q93|OefBbF}?Z?Y+6a_LULCr8gB D&pPM̈́GNANr8.̈́.!.Aun&:7ppP`;F;wˋjؗgq ox\G. ~3qs,Q!kn*Xk$[&כ s~!1b3b=`{51ñ4KG3Xd+8N+)X i3CQ>Ţ 3J| هLC%,dشZ71fEc5k`hlYn}uW;04.FOJ1v7a.cňF}aG/6=bέkn^>Ӷ Dd<  C A27 ~gJXd?: s[`! ~gJXd?:6?$\.p* x[lG~3w9h*AXq.vXM(AP*F-`Sb bQG*)FH ɁRRTuiIU@Tff9Ht7߾{ogg RU`~S\/ 2g,3n:b[ q] JnGފtd2mL[i C<q 7ܹ < a?+SDkO;VdOୌA9H[똯u<Ϻ6ݖZU~ +Mn&ML<7?4}dd| >|ij!a__zfzF0FҸY^^eB0qXZpF4F4v+6G a3$ a; IXaMkݗv ݄&0aOaaF{G  +sT2.UJOc䭯ު_lwL&w]bΙG0ia:g0ka:g/e 9޴03l[a:gnG.OWU:K\g(q%{⺃ ]ĵn+^$ uyz'):E\q"ŵXwKr}B\'קQ(q}>B\g=FD=?WxCѼDQWҳvxD2}{IWlg!u_k)ht^/-K1WtIx 1q%,YVL"b[p?̃K2?"f:1{@XezoDtbg ɄէtWD̺l= 60a dzWDĝgO+vAdz*@H< 1 tg`B#b6醑:Fq4F^9{2퍈َH׉wwa ɴ3"f]RLXulKGl[hFMFFf#b&T=nZ1{c1-+/B@S\٢2_b<Ʋhb1=ĈZ>SqKqycw0^Ee* R).bl\R("2&0 E]zjЫҞ|(F6?=3;\>k3ڽvըeX~ٸ/D_+&UF2R.i5FҺu./}u/{EUE> E=9ugΚ'p]@ht+d2@CtoN]KEgM~}0Sh.b] XEA:u9 5;v"VJ[`Ѭ.z֩ 0*cv3h.bݸ]')D*e1YM]uUKyUN_ݺ m d~FF\ࡑL{ך'G[6frYh )o&q SC::Ϧ}m Z׺޽VҎRcrq t$r>&mnjNJe}Ic6ma[vk4&jNoeBH{|C"ZQjo6EX6$]` V6g;o7=g-<wjvdW>48bW'rc㙾\+sc-I?q3cooT]/Jw{ ᫚ddxDZйQ{)+~s8tLg{7l7i ߠꬽﯼG]e-j*0>!6CKu` ZǦ >E%|9ЅQc fbus@fo )ruJR)xl.￳xNzk=⭍!M#lnuGҏ]Gqqxz0]cVRyJz<`9=}YZ%}ujWFsP-u<  8d%No}> _!C~ZgM~}żv=>ԨX-GŃ8*>Hƅ_,^(gQ'jcws}ngwvgNm/9G̯bn[>:9k8, Dd <  C A2 Ëdv6(x :f`!p Ëdv6(="("> xśhl)ӭC,s՛Q̙7dbZ&b;;d9?V(m-P0 @L6,[G Q` :FǨX{y^{7}w{G{: jU'bQjBiM.ci=BŢ&Ukom}#kɴ~օi]?on-@x(OCQ[Q"{?-1C>koKϗuȢgq{OQڞ{Ex ;鳓q>(]>"%eU.:Gc:.b8?Uj?Tײ5P {)dc|>#rG\ r1q# & ,PJvxxobbR_#ԥʳk>gL3X"0kY6ֱ&} FE7(L15ǽNō7{|bF.Ϧ4,K#{=Ȟob7&m*񡏓^zYam9X+_5W+2j\?9?P(txNC풬Zkmmgm;k]uiF>QIj}im?F%6`BkT05*AxAkT kه<km^5* 5*5*Q5*5*E85*8\b$"iJqQ;q\$xHp%8c Xc,1Kp%8c Xcs81cs81cs81cs81c,1Kq86smkk1cccccl'NNNc9ƺ9ƺ9z8z8ci Ƙ7w:̽*Qs4e/;J3oȶ38ǦU~f>~35HiQId-ZUFX$kHֆ$ 2"dۑU=d]H UFvY#g W:D Ҫ 3n"YiկњDv,Hp!l4y$Wu[dFdpMdx ˜:DFkuV!; s "H6$ 52{2ȿVu;dtg"{t 24~z0Qu;dt?k"{t QxY,]5i5CnMdOW@Z! -HQ$Qu;d0~ j sn-&w Wu;d1]ëxI$Wu;dy2WVy$Pu;d2D?i5 %2™>B?i5yUCV)| 4TY$,e+K3IP7'Ǘ{@X>"E"8XFҊ,)k,"b@Vk,!bDmXAIJ Y:e/!^dk1x\$6!-d5< Va 8Xc KYbZKpvX KKp>X!k,bEsX˒ bĒ2dY\ X6*.xK!Ⲵ%\kle!wⲴy찴%.p"C~esbe!#<WAa4@\.xW-6d=\=pA;,݆<˲>uK,=̆˒[޷Ē62\ ܆Ò1d/\~ȳ,+l@BbJyQ;#6Y]AwX'4o#_jNeC.)4o*l75Ox޻b*Oqy~ wW/;ˎ9=18<Eȹ!*~߯ #j6<;vDXo(Yv(գp=9vr&'| O{]w;J{ڒ>olSoL#/9+ϔ{+s:Jώ5tM(LBi9/JʎhOv~8>oOX,Їt;/u NEt_ƺtgzWD a-juAѳQ:\6rt! Kt~쀳 O*lz,=Z5Wr쿄i`3S8X4lԊaqߣGmOJCRj]S ?T7Dd<  C A2?A^$cjr.fq`!A^$cjr.\ )] 0E?)x[ytERՍ H`n !,Qa! a @ a \@& Q6A@@QM#:>`F9?\ >AF6q}ܐa杇糺~_}U4C { Bڧitd?Zi7GӚjifSM.zh\KUA4hF\wAFc6l&4QV]jT{F\4kwka( ScvWxӈΌf=S㰟iYm+DT 87nH}1zeyhݦ⮔ VFoH/ưXc05sX0+B]Hͼ?☞4EcF#6O+`I&c8 P="ʓebb$9f 9k ss}rgh֘ÛL3B3@X+F7يE)xs}͙7`]i{_W>M{Scdٹ]FnWٮ9QucKDv٫]|k}f |Y" j]م^M~$d=b=cTZY1?pPž f̆|5Vk*|.WZ-RE#-VTuc46-%,0{nΚ =1ݞͺV6Cn(O@NV[WHڝ9A6QU_˺XgeIWY{}^;X+`yȷl-V |bPuM+}7cDbH0ǽs mPNZ1+-`A, X.,Rkd6^Wl.@g=ɳYgOhSž[=W=W=W^;7];n}`_؃Pẁ{@[A;z\k*O7' w.(]T^Jލf@K-<z x6QfDmM1&21Mab.sBH/hʋU`s'VVҙetה^Dz!-cE;ҳq;.Pv`yH;{ic: H(ޏ;bg{%f TR7+eڧߕ 8&`D:mL5D_cĘ&61Libn` R<[0=Y% xǑUܧœ4 zƩ`舽lg8{پ[o u;F`Z=_l6[J` xx (yn+FhHXyH#=lŒ9z5wvbH;qI%ƺ(V͹vGE>B5/S">z(K/{IGcF+c uُ2?hG[?׏1ˏ1ۏ9ˏ9~[pT>VzyJO]Y[{dcckRjOCճwHkyD⃁GG||(;{Q>@%Ih8{o?я}TOP)p8pc/1)X'H;~s>1ACCBղPjB4[{@A~3:b_ݢ=EH:耊}E$0JJFW e>a#>HQvPv%J4ٱ*8c*fCZQ$MB_GҳUDAoGG`JTgaHݲ;vѐ},4k@ܥlu2쎀F!fawGl vQ/c]Ʈć2ghR6it~7|΅8S&_Bݟs `\$%]: `^3JfL=L"R/Q,ze0IK[ =l}NN4^># AYm]P>;gϾxx٩:-VB0Vp+Jl,%IA#ꨊ7iaCF1GJZ H]L6ͽo/ꋏd ȯ@5cpˮdUz_jkN`^f@2 K#P}Kh}!|6A/diz>0Lgq 6FY7S1T6Pd$+*Gz{7vd=JaEc"y V^`EH),S aO~QWFa1wƟ0g:x]ՔV·d}_?Q#s,J%?u=砜|?mg+S&21 m_k{dKB&KzhV{иԺ-ү]v܉DZ]{go;*`*y,{[yGm7e(K~?6؋~|ۃrgUmnk;`.ؽ'V =>`W|bb~ ih%>6ya<^5$T;uM]bPö ߵG^6cMK{#|{[k~kDo,6o)z͠`iP[gCROTֿSVVev^vZgiqNy2-0kc^-[afZnWfv>W_}uFNl`Ǒ[cľd1/3 ylTfw6xml#S?`@S qIk(5Ѧ5>/| Wڙr:(3bDZE4aB^ZO(nroYc-:qr`%?/ꓱ`4ܝYʌ +3M]ke3bgd6͖,L\ZĘ˗Rc0SޭBO!h7"XcEi]d qALQxEevE} @Wڙ?Y`̒2, ']wZΡ$uobs'PYO^ƯSޫOQ;-X2SK6-sEf*?hLn+~LZT[Y9609j9ugIѢzQ~ u_\G?<{pUonZP- '5s{2'̂j1"fmqg?Cz:AM.-Spu^)'Fh;>YVˆ"˦K?@ABCDEFGHIJKLMNPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~]Aɘ!ł!\~Ny>3{1"fqMQNk}]=zSy^\`?O^4"ɪ ,24"i2PHl1Vߋ;֢P wEdLO!h)}*Qq˼:eE\kE}Sޫ֢d܅Y1g@(, TvEt+ szWL6b1&Xzefik-"Mb1AlFQLCCʡ$ʻբl{YA3nsN/~:< PU_MH &u|v#Sޫ8bVc`se:ZD'rk 6wR1Tر}Q `6Zꓑ`4ܝY(Xzefik-lFbY  ~CE:ӢaK!PNyZDIW43-Zk^jzӟ$W<U/Ȏ է`oA}^}hg>Z1M0iУox'>GoufzOR>&0'p{I1wEF QnөȲli:p;֢e ŔL,4^lyؑ}UvUDviZZPp/aDO=- [tDtؠ#41̇h4\hqbo޼E|a">vBrEOMz/PBGS/cfDscuG _A<&9Nچ6{4&Xq?BDE1˜V>ܧwBM}S~9FrMցV<̋2T;h!2)`/h>t NE3/ZdVlKh Ve[v,zQכs_/:~ 5H͋wC~`8V^t5Ze8i<Ȣ&![BEdh wJ} ">hrOq&JhRRu^-ZyJr ywe;MVhKCYdӏ 2u;G޻L8}\f\R׈oPKeȗ`約VKM~;O1YF-wq.HV;4'\6q/7V @[aLqM8eEE-("ʤd(SШT4{Ɠy"#@Q&KCܟ,|25/ )20/զ,;⋜^ԮvMP'mC|Ӌ/=ǝE|:،}KLYEj&zbV͕E#-P/~KcPFEIlM{QF3ACRьO/Ex‡ƠzQ9{{1: 5BߤMrGƋrG|;O'/Y鋢q69%h:&ȟcqg{Q_ ,vhSgߋ*dy?VWm'X-0/P@CQEIlMo f/`9 3Q^TJ#S.w0P/<ɦ?-(1?5/`֮W=si΋Z 4e8iϋVҜlfGGwo};4cLyErMEz^Sm(}#ʤd(֬T}xҩhE[)^y&mP/q?)h<ԘS~_g80/Wd=(%I&/ "&b68l/L*ߙ2q5؋j j5ArMxfmyQ7ODtfŚ͈o= y><4zq6cM*ċj8xUφUϜ?rpi_TEfIM>ËAD1 Ǽss9l/;.29ܧ~(}{I5L&L'(q6D" *FQeR2[^l I9ic2kJ?/r34L$ǡ^ 3ij^tR w*d[0 ӮV7j/.h!M'mC|YӋzc[?⸳9E<NvhS?|sq/&|(y5DrM5f0/P=G=PFIlM{QF3DEqNg*{zy3oN}B R/+-~d8W=Z3f/Q|Llavs!yu>ΡO}/q^Tzu4e,S%Iۄ[a^*k#d#(ld "Ќ󴯉xۋP7ΊVhHCts^tN#S"jp.3׭>F;ș݀Kh((ِ|b 4lr0m/7oL_pF3B9쨯Ȼ4e$|8iYwEzSR;Mpwe41ZH@M" κ |2Uqw6Ŧ?eϺ{b/b]9Oû0exixW|pYIF#̰3QU !}x Ӫ\CPJI @EEm,Q8)`/bւRHCؓ.:n/ 7܌ܯJ8ԋX?TV=NS"΋j~_c88:5kZ/($I&Af"&C"*|^qά84*LDqw#|cJu'm>ü(C"Չ19NJfk;؋2H5b*44as$hVe;R=J8ԋ̬ɜzQ*B;Jw#Dpem΢ѹ#E?ZA UG0>dN/ZE p ָo3}g\WRتRWixQ!#>T/R%[4I&$mh-켈@t8l/:?JķE}y&SJt ]T8iya<(JGQ(ٚgo/hTcT4c"SxzkSmSj\ʫ@ڬ]p3bSE5AԀ| MELd}@#"~KR]shS_ay {{Q7nC"*U8i}}gyQpDRFWh롣路ml_'qE mOg{QBUc]y3[ThhtIp mV/R 1`+`mqg{lnNԟqVt {{1uFqL gayQ):eDִ1؋b#t0͞!ŻH?/zn$}#~ ~I C9kSs^tLABhLvYt3SosiW Qͧ&q6=J^DLV\e~`gF~`fF>7WWԋ2uZpM87c<̋2T2)iMe4c a*qn&ko/ڂUQzF7/:N@Լ2#UϜ#FEgDȗPJhHa>+hK/co#"9vhSG~uV߉TR)NId ޷ü(C|Q&%5-pD >4 񻵿ۧ^}wP/:S>O 3{q.5/,O^k h9k1Q 4J8igȖ:ȘҧB_T~\(*4oP{}І%>忪I>s/y>&]T4Kjf=[ͮY]en&F_e9+XC$wP; K8^$seZt)ٚvƯl7 h0]~&l߯q\6]k9]+Y% IC2fO9 ;v`1>{7LNJohv3gx5x]& oFL'mC|~'1T,{aghKfiFz~M'yz.z˝YdE:>=I U&JeqR2[Q^ьQHC) ⏝7ȩ8ԋvYO|B?♬X?pSG}tZ̿4Jr mWX2w>1{MNxMEf\sg/qe2BŘ8ihXa^Z/Upthe4c(l[u|wEsU18O\z3sg]5-t\M{oKۜEsG|Ӌޡ>aF$I&C6"}B \2ċ̸pW=u{Ժ {HcćgP-E4(i{F֨4LuE񊍽=&Vq/aSH؋)x 6s2("F|m;oPџ|>s_79ȜyK y.XdbNHk-z!7W w%)u*ud gCEEy*LJfk3؋2ӕ44+l]yQnN̂Ft8ԋ^1giܟzEU. i֮ts3g 9]Zu|^uoo3ou mWXN2&z kXq#">8n.\|y&sur^"I΀,ay<(*cg#ʤd>F4%Ldu|E^4=YW,o-V!'mC[17馈5jdqѐf;z ۱ |J d g)g.$s{Q6}NܦDIlM{{ SbO !RE?CssIzkbSG>E{r LJfk^߻"@3[$Rьϸso?g}"f@Sqwą9]tj_I:nDzkzV"CA' o2JF֯MAIV"&{>Řڅܻ*whS/?E>R&vwm'-0/PQލ(ٚ"֨ h5}sv{d ǡ^2)^nؿoBx& 2Gͽ[Y6RF>R!R(V;ODt@(ำs۬84W=M}τGQN8ipF_-0/PݦeR2[^3vOZW>nXHE2.Tn5Dt0ܙ`f 0 ""xeD.h4`LY{}~.?yO?=9Ah["Cɤ6rzY.trޏq"awsUD;RLb`m5(0EdO֢gBuBd3'ڡObI.;Il_-:yz'UƑ̴h]VLw_ԨQ# y@54/:ވ!39}zCJAⷾ->wߣhi_R=Obm4}b9 %3}%>Zh3~qE@ /->[Il_-yz#}r~-3-ZmMs/r?O TҧI54_"!O_Pt2o{[?C<v֢xj&Y7~ZP]06FdO_֢gWRk3C(~÷Y@@..&EzRjUZAY?hۼ`tވ1K%H549[Ȅh#|چ3ZGDZ$C̷V]j?KYءk 7(1"P2ӧ(Y?ê:IzqNE?/|ԗHl_-Z\JőLj ^EjkDs){j5Ev DQ|oY.t?a4ؾZT:sW-@.ʹHrW_9y3:ďu #48 {hB$d/!n{[VZ |;Yo-*S;܎ M$vwe%Tsƪ2i%>N<Ivj԰WOբ2}'ZJ5iTT3Ns~(}hN1䟩6]TA 6Ȣ%#"!;jp]fEK~Wg};NM}v$1:7ءk(w+ r߻b.((Юħ;k=vS-gr׽JkWe WCVaؾ%Yܝ]w#֦Ѯ }cQ@kʋ?E*kW3ʰ =R,+!o *ȟzdi}A->wxo֢UKU-ۨD5ءk"}~ZP]Oa<Q>E⣯A#To/hRc~cEZ֢gxSf3'O;kхP y.]]ďؾZZGuyjRhQ9Y\56/g5ւsU5&y} ًȸElHMEg~>Wzk RrZءk"EE1Oxƴ2i%>#jJ&>|8}l<cEyZBVF0e幯֜r_[jԓT?F"v%Z$DBO=Lgaok|Ku/RUX|2?O<v֢J5c5U"+;tM%Tt"P2ӧ+H|Djr&>|hof;kQO%KIbjQm|NjQ%pH/+0ɪX@k?[ȽNqgH54W8[^Vsm-w]*:OhC_!&|5YP5j{ r?-J)"P2ӧ˼hќN;<EA |$oZL= o>:>KY 2ӽNB=A Oc&b Q;sm-z[t$\jL˗zkQzx>*Sءk" r?-J.wFdOzkQⳋyud3Hdg-58cER~ТUjQv_\m񦏾hՃ3hg`|3xDvI֢~3/'"=E%*G%j&ٯ r?-J.0n(CL{kQ3z[ݜ仵uv>Hl_-*QHߞjQ)LgyFs~w|>-iתT OA`&\'!O.}YkQ5.\g?8>3V=uC m#P>DCs:}v$k]B;0Z#P2ӧ= Yuvz7ecwӺcN:$։oh /ogu9(FkZtBׁxˠCI׻BJ&DB6wS?v5H׉/y?-&~-_>8/b[t5)G2%T'x3FsDJfuo-{#zTu%;q51] EGGy+[0ؾZ$٫4=LsFv=LF/4v(YŖ~JC,ZTl t +eI54)YuB$dv@m-5:ozsyާq_ٵh$"i;T{k$thdNdY dv-J>e(ӗH|4As]&>;kݴ4Pբ:S\-΅{9,Wy\="݈q#!1xbvY(d3Lࡒi}>\Q>qWv-mG>$;}|C9ҢC^QQ>EET2uq\i>ǵnZM8)nؕG-ߴ穧3Z4 J/o4vmMkQf1>{>>xbvq"!܋|C%*FM3/_Y~]hڊuh/پءk/>p$kQBe(Zi>f3'IuZtXCS\KbjU:3]ʅ;mHGsίi8͎EY[ 9[54wy Xt"nؽEߨd{y!=I! p B/v4s\Kvґ̮E q.((CL$I|&TsyY&>"~$9 >ʫS:;A$O֛9]O8?dؓd]Ns?RsVy?-(## ;t Mr$B$d"nh߫}UgAߔ婰 Gv1aw8Tx8fȺ Ӣ근cEDJf[T$4BءdI5u~ݴ : > MWض[t:WCw'tVDۼph{]8q )J*vۜȊ-dB$dWEn$vokߜZ|2/ߏn Dv߄_.v4r-1G2%T<:yIDJft ĩHhj6ϧ9}s\M>Eiaa~SIl_-F?O=uբٰSj}qΪ[Eۼp>Nuø|%JՆu Mܮ.uB$dw# =ZCh(Wl2J>1Zt%V Wr&V O.^1/ %3}Eτ ~4q5 }tӢIz㴸c EyjJEW")5N箻 geǛ>61w ȫAc2&y^ ~+Y5eB6wؽEr>ZSl2/'-'&M} ބ`ds"o}O\17 %3}-P}Q3zgeN%c[E: zǘG9Ѣ:TB~ w:K/Jg>+6XQJ#c"k]58^ ]C<,Z<2!ɼgeaZr~W7Xgy:`^fv Aނu r_mtOSPS<# %3}YbET<5fI:sӮc<ȟfc;Sh.OgMn3(O< ؾZ4HgrnZ4y\ m~{UjyGjJ= !-*QFyءkhu^봅HEkZ$hwi.߽%Mmj 4{j?- r?-J>DdO]:}&TxB&>$7- : UF& 'qyzE#pme 0omu_'Yh3iIo-3q#;tMȑP @L[cBDJfԥAgBog]:c[{Sh$D: 2E3S|-z(_Ƨ`o[4Ze8C]C<{M{Y*W z5G嗻kUW!;tMW%T|+Ư#P2ӧzkQ3V} ?Y8)F'ᣓ|;E⛩yz,]\ wK/H>慳-V |_t=N@׃#C$gGd#1ŜA6/t/HXf ]h Ӣ8ߌ2CE4B5fw@t/YށÿNIbjEp{}Z4 'Q /G-G"v3h5lr;H"ߥoTY!oiTX5 r?-J>) %3}:[ >I>$]NS_)P|MW[>yfТ8pJM/%Zm`L:x :ꠤbI>݉B&DB r\{[Ne7 _NVj:4 &AtAE U'߀1& %3}:[GMh6goor֢Fz'}H|s~Т86ܙiK$ۦ9lr-pӾ16*E-.!@Vlբ(#B=*cZ$Wʩ߬˾*1P]zw;/Ze(IZ4Q8_Eb:N{CVv xG?3]Uu+9` pM𐇄G^AQDS<½kiδAZ 57mo}nNMrreut}9{s}O3 Iբ|7sZT|9:.-*hJgU /<`{3` ǎhF/h{a$̪Țo |1AVVÙ(*|}F~^5EeuŚ&+aymZXXNFXh=bH:,3PGlEjxzԸl Iբ:"*Yei"y+>k{uy#BZN{QbPfa 2/L `$VZE}N۾}!X}|_k{HyD栤ӡ]=̃js)aym$Yc3a]ea~kz5d0Րt횣k[ϯ gӴ,k{>^{1uD,u$v ʅJ֣1r](6a8u(j˃ixԺȱ1Ϯ@ax"ek=t10E./Abצ֢|VۭHfrN4pEQw`0ԐtP-WszWYϰK5(l/[.~ƯACAhYԧϋF26GA΋Nj+Em]L |5L6$v kN"a`C$}H{ /EXPɨÎ<̃iK"/ފeXf^"fgZl& _Z99:t&I:Mk[nESP6։΋:ghuyP/S=uw&3#t12[լ+Jfk^ RO *Ec&aLƠ’;&5`Zj$hV,2t\`-rmhclbat|Ƿ}~leZ^jhK}d)aym:2Nuef}Qw6o-^z[6$T6?jcy1]Ǯ?3:Uܛb{mѠ4'^J"5$}h| )л<M`%G" -V֠ex"oL`+aym:,NFXXFZl&e&uEht 6 (Z4^sZ46-w)KBͳ.ŌFShQeg(߶Ca|/f)""f+n}5$n-j/2䛦s?F:nkHFKkHݹE.gsdͭ,_Y1DueiUd+a'k[$b5嶔u]-N\knJuիVN.]W^-YbuEhoHwE#Y]#CHNiWA[ujvך9s̎[ڳUͭM-9~mm'SƢSJ(_UvV:ݧ:Yq)லzhiUYt;W,-_WQV_QɥlgFqYd{I5̏l|e h݊uNNGKL.}a]Ntz|_<;K[d߇(wܓkH*s,=i vXj|y^;LSvxZqWvm貦_dҊ*&~EU+U-_U|GYCe%<3ggN1>NS8uLښC%= "SjEm?k\ey)J/a{NYGXp^❯yT:=zC o]7{qkSQ|F;d.جK[llmŋcIfaW)*a6d$=3. Dz\}۶ *tQXQطm{E@f̲,{J<5(H/ y̜jfN©3JOZ۶X[vubBBmF#`s~Rv6f(Z6hA=;a8+e[ ړ`ujar1 ,(7 {тZok=dL+W۫ @8ͦWCU _o׆^Mm7wx6:2Ҭv`u؈"lٺf4۹Zogy-NIMފ&,mۣGLGo`۽7mۘY*<%<[L=o3JO~۶\zFUYPFsDℇ/<Qp;;eP65<V ;i uP0#00 5z;ɫ{xeA{{3̧̝-IYguG]28`%08I683 ay7μ3?̹8s.Nqڌ^@0 9`8r=qsx ^;NPC8N,tLv})5y+Fn*=2[+uP v8NBy1b<x7F1QgcmJͱ< ׫b?D*|Y%[YŎ;֑Zu]uysAMVp}7BZ,L2V8ZgLaHv;hlW ¤Tzk8LCMZez(x@+H9ZFkŚ@+41bx&Ƴ1މn:buh#F[1ڌѶpiy*_pl|Yeʽ&}R[>a/tj;ʿsV~FuvV3fߞifXdj!+{u<#eWvv UI -W2s ֯vy;˴8'Lpo^=M<`s`#1pXJyWHzB|wU`$?!z zl>t=@O /!`x #T12 J.Hh#tD2#\Vu:e3H}bCjt0ukoMbhZ 8&TJoU5I$5(]C,:e|WǝGu:^_%ݮڭ %(KLgu$+A NFm0yl?cVqL3*vuY9ql5FyL?{qٹ0)O~: s2tVuPb@DN΃!'>7|`7x9C)cvDmbI"_x~/1f咽?:G8ܹ룦twX ՓчDݿycX$e0q9lqp ~Ei}BG޻}I۽o:KvCB{zd>2~`er`N݋k P gC`47L~!u< ^~^\GhߝJeOkw){2wgUdgWjXR%@BBBH^E -!NP@BoRuwu-( 6qV +b{o&a޹7?'̛{̙眙;a5~m}zAUϒu}'q?mx/ ++@S{w??wآ;y{l+{bw?~jw;D\[*jǚ:CNӃ4nT{D2|eXd:X 3G8#. F\"|h~^+;űBv`2ƾ.zpy&:Q\W9ZoD}7F! 3EMXaPG^[Fd3{%5jD%y*nOڍ ۴_G~mg-JW갚4qU}R$?nZ%΃Ci g- 8cTĿ( ζUb&]`E۠U`Z\(M leC! 9-*2lqu,ȧ!N7ۇ:,?2JEnaܦ]/Z+@&] ^B\kY]d./ >?L級} )NQpWGyEUwբLUq s+[2poq~qUwA}W䱕j((_UU#G#tNv֢Lq٧4B&"ۣ*6֢$k-#C{?a&]P5 hQ&jTQiQG/P8Sg9;Ð?x# ձ66Ȍ#bd$hy+[cjܦJEȦˑ*LǓO_kݴ(@O|qvL2g- 8cTCq3^'VaX+5k.h.}>ZJ5բfˑǣҢV*mPs1S;|Va6%ȿ%X^֥u;1"Fv?rr E CUs&]ݴ(YPTT퓅Q vSPEsEg;COCg^t}_UnvZ jM}W-JU3kZ/7(2Lt\O" qBᜮݴ( 3, *baPG~MEEoh%*o+[ 5&֢ TVA}Q'Yhݴ(@>G=a^Egj;eE?C{{IjQs֜E(JB4_qsؿZTM5E-Yj"GծԈ63È9:o)gBfbFu?3h@Lٽ_lj"Q֢ʶ?⏰ψ}W-JSY hQ#EȴwWs qp041iРiCwȼ.-l*FvsC~Zd37gF6w\LkWcd%%`1}ȫ4n u->PEsv1b{$fTv^Gľv5R3ejV~[RA%iLno qRᜥ̂s|*Zۇ:u#bd/ _uzK:aܦ=I'֢TT)Rwբ 5x:eb*n]+{!  #>)O2jQ̂hv 2"F0FԻT2Q俏sUY2nDg*(u >oPEs1◑pGUl nZ6G{Ѣ*#"~EѦv98˾2.Sφhg?l?Afܧ͈ AwEx+[xF fܦ>V<}i2* "׉~E*ZSC+o}W-bnx}ZZlxTZJej.fjgϪvԑE( C[=bwROVʨ5Gu9a%Է9T}™uMT`}2!wӢY,eXd:(Q=.DU&=oE[[Pɽ'fZ,SrZTȴd+83p430cI'͔7v h̼Oeetrr$*=Q{ƫisDWf-j]^ cY\fu)r7- P}$fz("9]E HLbB$R{$MwYv*E-fJ}W-JWY}3jQ3b]dZ?C/n2}9[Rv'5F{k g0`?l_AfԢ"#9x%*(}z ۴?bf\7yDJog? -!w">16C*g-9[Ti(]b㕯 h4}f?S?*֢`ӴmjgG|ٷ[}yyH_| 2>mFӡE=E| K,wE?5F6]~X'nj}»Fkݴ(@[ =a.v"h i gNTL~ Z>}1>Gqľ5RY}jQcqkas&{Q0,N׋r0A9wгuEӁ(ލz~ekݡV+]9]׋|b!l}9DCEbl2,2!֋|b@$z^TzQ!m#=pEjs3Uӂ֋yq&{"9YiQf@>w"9g-bD/r)"'?]jܦ}Z)+Z2oj f?lpf!wӢ^16CW|Ơ[ ga4 J~>ԑϵBVd@ƈ}˵sٯl-wL8MwE?Au?0O\*~>Ohݴ(@x2,2g- 8cTG"M\ik֢7`zS bEXOТ:΍[3EMT&[pxNnh>br8;ُ"gZ +2jX"GJGW^jesmUy{#GቧfRC퓅jDV".eXd:Ӝ9Z4j?xoj8Z*&'}W-JUYizZR<ey4ҙa,sjwe#dT16#':s4FcR V^ȝj>?Y . /<*quѽr7- PPEs:YQ=!EٻCkϭ](ixEUE41-j oGEK$Cg(STGA31Iȿ0`?lZ!1 cD2QkQ}UC->S[^j>]uvZwHʷa[x9"GE<-.@U$Wz("9?guQ7)K&B$ ;Q2qj.WHp4R"]yESsgh!*fKdZgOye,{"VP|.|Y,)pz\C&ae]|PϿٴ.'֢b=uIKt0^Zh̬EQCΩ83Ќ󩺜 gC5|ar1EzOo$Eo"Ӣd| 3K4Ot3k7}#/sJǀ̼I"_ZtL&wi};kqzWab`@4GCE rl2,2לXaTb?,1J*MӢ1r!NCQEDž_q 塌BNϻM"FY+6"nE9@fZ,Syb9؈hsѦeJʎo@G|#?f\!*yٯl-Rs=6S=cE `a;"G+4nZ*`=a霮u֢3FUS3^'f%Z4 =JΠr:l&E7i]ZtD,BU;S;̓syGK4Uut}#_^+WzȮ@z~ek_;jҥ}߯q֢bfKa耘Gv֋5E>rl2,2Zpƨn"׋0WnvZ4j8DNhDjs3GSE'耘 6ʯ _7_)YpfZNt3b b?lȗ:k#:!#)POEG`RQgՓQak-:&f㉗V1<sE6h̬ErS.xd]?-(@U$y("99R"l6P p6n4ZF*E)FZtHejVF_5M30u*B8-3TDG^攎[Fd]#z+[ K;ݴC سtPHu/Df֢(92,2YZpƨˇ#lϖp6ZBʧi8edUbO$EXQ)D ajg٪#ŠE}'?Ny 9 VB'#':/&d^Aƈr0.Gy֢=ɟh(@e*֮/0*'by v #=aƟg׮BՐwGqyJk| (G`?'] 1l?7l:73GN<%+ɤ_5gqu7.|sډ]*EWv9zhsv>Eڝ*$ aL~OCG5R Ltw O$ B֤h0pӽ}W-bnx*N@FQ88Cpf3p4O!t3Qdbb?lG[ +oHD =ʔKsދCMc ۴\U6㪼r+)b?l>r7- PM`}=a霎t"L"o"߼7k-*BUV.GPF]Z{x*L@'GTZ; &a!WGgRJdԢ?~Sk96~ ȇ 3j#VE/V;俏iܦ;6㪼="y#x؏Bzh]G5^ Ltyh˞TGv!"xO#{ZtTq< M@Fߜ5;@9˾2{#}l}A>ёAV>Nh}"3|ʄ ۴' g-:,˧鰸'݀MTcdWX'eXd:O:kaqQՔmx=h$4zNe7XbUTY谸l<>p;꿩qRnEts䣰'}#y1ˑBدl-y.o}/g=lI;v>3ӎt@# h)АiQjlk LE>g*x=:'^ԉ4Du$]鑄֋+DD)ȟBiWȹ_y}A֑?E6E*&(uiVʨ|(wa3kMTPyʰtNr֢3FU[F# _'k-  *^Awբ#*:NkQ(q D[WռQCp3fB}!~yyab?lBVd@']u.Eο9oN0pnooRak-Lt?>L$ɭ@!wӢTCdKeXd:w;kQVfDmgk-5 [2Ojh6ʯ*|j[p!+T~q;5aPGYQ;ёv1S]CXZt@ހLjwӢ:^tP# /j!wӢHk L6g- 8cTeH8skR h8&Zt@e.jV6`G3\!O(Y#ŠE@'Oxwݕr7- Pz("9mEgTC^ gNt TZA ki8!#])#-B6Ez3- q7jw[/Z4ԑײ@Vd"Fto'E_ULXMmUy{#'V}oJCE eXd:79kQ.]% xo$Z4Ua`Zt@e.jV+FHF(SeE;?o䤤upcYڋ ~+^:^N3V+6.olb)bӓ$|OlJEO#1O%ɷz+댶L6eyN+\Ul6lD"])5pm窦`"z?S[s&j x ސ4–&CbkZlllL#~m6|.|0^۠&sqqq\o;ן~sp_+Cc s{j 1cd/w`nѽU!.-J~ 66 T$|n<>?O\Gj3bu>lll|;c*VR>2~]E1걈@0-vD/ޱa aKנ}>!+Phga`m3xl_+:^7::32L4W"v8ZCz,-,;1^;<<uɭVh,] 0LYl@bz5ik 3~c|WJOz[0 ڌG& ߈YkK+K0rb̃́xO#տ;+bծ^NBUĽ8V7V]'obk5xc""z LO쌧]]0::Cq;!>:v`VoQ2ber`YhgtMd#I*k&TS#ܳ  `/ ˅_irW7ѕbS##>m3z䣍x-aY3fho5HN#|c@S 8ʂh3=,o;/JUj /& :JRy93)ph8h3ךi,\o6>?V c# b5?8RM+&20[A8 b 1C%(z)9tXc"c4œujz5jZ`rW]ܻ>0"W5Úxe]7Xhk;ku Y@ʏ[ XvV5`gQD!k1@WVi'߂Fꀑ:nuJCU מq^o\|.oˏ]Jm, * ֬굈Ո5K f{# GRkmKY`%Xm.fzϞmTZyI)~UM宜rW#!'Ӂ5+-Qy* k.j͛5)Spj`1,ЧPՅ55b/\rW弫] ,0ĵo 0}ꏨxxkf|>#:| h͈Z:`7&zp)tܧ̻nPeJS1:yWFgZ &G9`!q ,aΔyW]xʖ#L߲86$:L &$D(AQpǀF0lJ\1ĉ..( ;*]UuiLgtשsϩ)yژ|8 L0Z2zVCH)2Ӫ%ZQڿ{;G&ƃTLoԒXXdm`H܉vGboO?;*=E3ʉ3#+pޓci&Y̼b~K zgrrS{n]nazV_ /0x1(#(d=I%XOV>h~գk+ jT|K.]eW7.guF"WCtDA=$< OCᝤ bݫWjaQfCT?eM=8:0H_F/{ >p`pYgI@eXeˣΚnt4Y$d$sʩ'`b~F0bM#kae0E[l3vcB+Vodׇ*N}BVz3^ov0v_|PK_ S'1S[SFa}&Fή}R~b9;a$NTQA'+baoE?k\gӾ F4ɐ;ðs~8\41%]}T=irQӍuE`b8LƌB|"y#3Hd3%P`T4dl0#VsZjԪEZwhJa a:g72n7QqU˩&+هуF[lCOVG*j/(go~hK2$3f83 &Ђ_s}W.˻ +/ڟJaʉRJJ! vsyE{&vا/xj_eͼb~Kwʨ'CM0:1g%4R%bv0a1Ԙa'jD c?r$sVT}QRVRkVNS'pLjusVj+,{6^ՄtR,T(>'v^|%b_vqw`}:Nd΁<]?rh? K'i;USK#/'I?;yœ\}^jk m;-QزvCCx0p%Gg"Eg> ~G? sK16%uq{\ ,p-aY bB71/?r!WyOt%W_rJwJr%{ӫ2g/$"88UO0|:&v1']3=^ki }֪'hwM[\?SWnkɹxo+Vhڢ/N ƙx&=?gwЯ-)#ՙ\LrS 9雈l m |7#5 Dsڗ`Zn;ܷ>{};8!gV|7WSD_3M0;NX]0q]$ޗy*tTꉰ [BTI]GogDBa)?a,6l p ZbZӄ=eJD>KiiЗq4Xoq<5ep< ͔8 D`m `KvFCD>fi]1O{}':8)3nEF:o^s0z5tv5PO3S;**RMPWm-Qs7Gk@ m<HcڱFgL{̸yZ{P} b4tvJ[&kL,Lx*ZYS/S+Ah澕cIц1JѰ!JXMxXV9sŢCU[]*o] ~!Q,!"8[Fˉ682Iv-xsW'фqhmiSz8z #1N(D(L#`0g,؛/W`a ̂ȮکPO?SeW\u0W ;aTNTQV%pZsEK\l`l%]2΀kC゚&Yp|2퓰ޏ~T\_?g&dN0ښ B'܇|a77G[ꉙ3'^ש]a3s\<%,|{&]ߧvDЃxMm4+6A5W̞I T -ƛ<6 ?ă6i8H؃qϝ:0K{>PA @&drSg&./ON bNbQ1ɓ**Rޗ޴Onc#^0EK Lot勮@ ~*?}vaO_&dT{ ]AJc]~wWxGx2]S2RT<oxSG ؏z-] O_Ƞ ݕFdp3933 'F(vw0xk :,T_fn]S`h 5Ai<)]EvTAUY>؍~\`F\`|̏DWcX 7b= 7EkթW34 were!4Α%u(xh澕d-BAh#(=ɚgBiZ a sku b{W63gjX6hv) ci" 75p:,vת֯O{|75h-G3ox4k*BHzc w^A]\/*6@hEظ/M]W˵ ,_D^g5pK"+S.o m+;>6Fp]AMښmpfpx>W{mH0͂ӷ EJ}9 . Sق*ܨYBYF8tHLQzL/Ԣ=ZzԒ@2H>9^-O/ Z!v O!Ye`۵,=YKӿRUq+hn$D2^$c zHLlk]2F0]`%\&dNɃ"( =LӞvS #0 )}%v1Ch81qW1Y| +)Cˉtf_:h!|vsXx }u.ZFS!X(DqhU "ʃhc?E`CcxK[6o0zViϕZ#*DKTMgW$k5<ޅDžx\%m{3x?_ρ,< M!6I[m@|m6ܯy ˱>~`ƌcFzUo2ukJ0;Y;ODOx$~3`$`d3 $Vt ]miD3^ 2~eM+)CQDIՓ" ehYƽKT]x^z'Z"C2PY6u<L*@(=dFJVjj+E}3*%{Wʮn]m2k=ѤU:kI;%Yԃ,<";vP2ɮttbeЁ- $6`ɮ8UdW,D,8SfFB5M^eJ"zZ/+A)R.\ԓKԝ3mI|:kD[wfW#kL+2 "5=u.sŔ+|HKx/DYF BSWY_N;UWGҾ+݁rH|lAkW-3i'ď:B'~qVFggvtv'AʋqDVw!uQRj;uSL^֮tsX*AZ?n iDKЃ& =hd4`z3jUrU@,PD^2y*bb3KΛgS_:VL72,,Cypb"0 ٖOoV/'kW(֮t1ÚTOokR5YɸY Up "%e'o33L,_eal4'[tIWrZS^v ekWõLUkkWP3XiŸWE~|!]2r7]D]UP 䫍|Kنv%h]b*P^d h}X*Ʋ^4VAzߍ˺ԫgQP dA0&襭f%v%`DL=hS6 vk_qv%뵫2k6=*P9kS).JEX @*؅, uuX$K'c,@L,BSH};ihWv%i=rx>VdfLďјC#!uю?.\JmKjhzXUƌ.QQS}lv3ј 4& rB~@Ҏ\0ꝁoڦjHXc`fb,|*:+[jgDjѿKϝ}j1,b &̸ZX5ȋ˘ ]r29ACboUqtd^ja; }6X8\mp]POuPskl3=荓ݪ3. v3IŎ^ק%zF-G8c8?Z^WqpԂJe/!rp]S@}Ez]+Jګ]iRI DuvgW]:|fH;߂V4Z39̤$|C6NTf[._MRw W|[J`T^oЖ|!%"bs&9uf$+nt9K/\ EeiYZNZzA ?H,bw)5ul^=\|oT0wվtڛܜb1Nq0^#J@Mد$ЋDt!GsA3hQHwiv*(<Z( &i׻:ʵEEΝ"s9П6f\;Ff` Z@25:Xyћ(Y}Wh2WG2\;:*/C^k+l qԫ73sMaTDz0ѨUf}pi}֫jlQv*l?l 'R㰹Xe.2$J [h*=߄('Ʒxoqf|Cq(800$4xCS4cwb<ƹ0^ V _ɻ898f|3Xm5z~~6/@NӌWExa Ys_Ռotj_ cVp9kbb њ7$VGa, Ʊ0Nq+" 㑚qkB_~ p_qqXkvxf dg`,7$f+Q'߭F2#|#qx)QUCexOQi`gRA,!2Ɠ (x<}ۦ"H2P*T'K?K{tQg~~~47یa8^wnf p=c6F sSx #I洟S~}}[Dk_C-4\Y1539;?Kd| |? 2ǓmXi]Y E'ܛ|aWG4RMh~;8{ ߟhX~~Dޏ)xq ?F4oE ߭ξ?uqgf3!mx,2>?gɏ3湌}6t|eyIl2$qm"u$RW"3(8t*JNs1}:~׋W}>HSf>= oaw{XC1X,lbK'o!\µԑL]ԙF(R8ӫ\`WƷ΢+w3kw?T| a;NOScW뷹D=(|}#LviGo~Lgd4{;V1<+I ǐ<=;cG;MXC%K(;c8;WD0<NӜ&NxB]N̡WUas1ۈo=B##qW9bH Fe0g3N3ag3woH~06qf3 02$qfƿ3Rӎr sf>~~-!\m!R(X~ ƽFHxfCEQ0.u0~݆0.ԌqXV O.G8yFywT,Yl K]/\W߭'zOB %bÝQ00øM`_jWw9f㍦f-܌֘KJ%R{KKc,/+Jp#Xւ9 XO a!ĭOߘ`*/ISTutYG7070G6͠ 4zPPM*ʇ̹57z ]Ck+d;;w{k\:CwkJzw imt)Kgnn& RJ#$Ds>rٹ Qn. Tf 2(!43t3 |&ԙ&2Pkx0l5W s#ʍd&5Q`4c6Pƃ &QNvkS))٥'}[@:bij Ju9(@;@H'~OD݉Jf6špǥu@ BX+ȷUl`&OB)X(kR6 2m暹ꫤb=g pzN{k}JֳQĥ黕:3eyJ+u5YQȯP^7.g$M_ d3E n[ms\-2}5rM[ib4+ |WʹBIYCOեQ kh+PsYˬ^.W ש/K\.d y]R߻6&-aUtUN{t 徘?xas~E9U ϱ,]IGZH,s.e6P /lƍ6¬~O,Ҧ8`vج﫷 ͞0E}^yyE Ap'i3vEl:O_Yc@j ;8ߏI{eʟs;֢=hy^9Onh(NZXwEho{yxѢN?: n O^01F,n3z$oZFcz͝o+{-e%݊ oenŢCnd o`N¬Z+HZ6;Xj>qc-:Ȯ xv$VFU]LZ|j4-H{h>oDF3[-1 +o 'O9afE+QEaV{.Tҍ=cz^H܊e/icYckQKSqr0(l/[Ǻ:N_^f*3;- gmw)^Eڴ[`vSyуh7ۺϷ׺[-BY?Br:0ϋd*w/h~^k-͝hwv 1dϵ-0e}Oߴ0>UMITرdw5a3;1`N¬X;K"mzHfkO^~hZԏChjmN_E#QY']6vsfc ǐQ `(a$1a&Y $Mk5w͝?v*X_ÚB%uLVS(j/;mWf6ZpWtllkO^atE;QÝo}>I"#ڟFEC7\shUzW-wUgΏy͌R.֓0_{5I{H0բ0f lD^ "yy;઎+qNM{235vX^B+2&Eb3Yl6FX Xb;vTJUf\J>͸x{V5{|N:>A_~O~7-nڍ}B#uLwinZP]hG<ʨdOO;kQ3Z!3V H;-P dNۮZľOТ0K.OeТ32de ߁wN' 2oHȶ1侯qkQOߤ7`&'p6uߍ0u((<4v1M+P+bGL}t :Etr=K߿֮h ^B{vծ\w.[hH2)W;E0nGU ND*;u u9QLd3_LQ|ϱ^.ŽZO=I7֢D)N||s ߻m]|b'62*7#ܻJ](!Nu'Ľ[} v9MljQ?Q'\n]7cwPWowcJV|Ro q0QP'Â\DLր$3E|Ѫ⦷Rܫ2loEw{^ &~MXS ;kmM-h=ʨdO_pZD[,>#IvZtU젫kPkvբb|z= Z¹V-A~y?Xq0^Y+Qj׀|?4h?V;QP'?aCf"&by_~`JhQZRhMO{T6{*E{b;ꘜV Yob=ZG>=AbZDK,>"6֢ZtElB:m#E웽JChQoU6~"UZou5hk@cѢH"Y/0Tr?mļT2K%ps~>8iZ8َ:&|J#iLZP]kК=ʨdO9kQ3jbQc]_K%v"ޮZTX8񸴨RdQ9~*dU !SUBv2:CN&LkbMz߿Ev"3ĘC6v1%T eT2ݧ(S 3>/j9⼨>+hB[EljfO/Т~:aĥENƧ. ~ܡݴm ȷa݆(cq>f"&kXi-Jȯ6iM:ݵIAَ:&\FTіxQtu")L,3fk- ]EꔏZTd,5j*M43K S|#NaEn "& \3E|?Kݜt|nӿonE}87f;p|MbseT2ݧ۝(Y1ٱ4"bJ;-:-^b1ΈmW-ꭲDO;ChQdaEɸya(-_累.TM7!#b;[-ڍZDȷ'c;=b;Z j'nM mU&| h[ih!QYHꊘ6ۣJt @V4Wij\4Qɸ&rF CDeB/yhۮZvuOChcҢrGsü/W-GQ]Р]Ȉ*bOt91Ldoea9&ʍ?OE9I]3r$쬮9M#wӢꢘQF%}E9رFZ"d\=SEls,ELĶSϧZ#iW]AaxTKD],>@Ex畆itb;v-R)q׮EfsڵHu:Q ߆er;Ю9YJI>I~4bM?Mև9˜d#+`;iQ@uNL@(>]EϘjO$_Xk1mW-"8OM!(9!DqiEM&da)έJV|1bo1TqB6Z/ 3ioF&dSmvl?i6ɯYW~7r *@FPn(M8eT2ݧ/8kQ3Z)KJFr]BTv x>,ۮZT"SF SH^® :}qaWcv++y2jQ5j=b!a?ېgUk¥wГ*Mcm g;t\j#}eZtA-7ߣZ)ⳋ*bc-kEdC#FۮZľZTruZ4 E)hҢEI+>v\][sPu N>φX4-қy;T2K4sZW|g-nzQDlG>qݴ(,UyQtv֢\DLTD)&D#k@t֢PPԠ !](W*wo̊MC?0nv^Tl;E#l*On]P'|^DL6C סGlgZwLmG~Ůz!D}uLX#w=/Ή2eT2ݧӜ(9QBD~,>ߍ,'w#]ỢhĶQ5ϧZء4au5Uea*έM|Gk N>Y6#"`)GlgZ-R0ܦI*lE'tC}lG"Mk:jy2uWeE?CחIljQNӉZ%NO]*~ 6}ܫɄ :*U iv1 dDl_#e;Zw}dm_Z$`L uLFE{<eT2ݧuZ=1X|x;" ЊmW-zBe<&Т'#Hه]TTuQ ~ܨuN:<1@zdDlGC|YQ֋1D]У g|\ >/W|`7¾ޅ}!G "IZ-RFTEZGLhg- |vQ%X|Ƶ9YkYYbZ.E 5ƄТb]i԰DŮmgΝ*vhv|s5">%JLksdQs&ԩݴ(;aa1g'.crH df- ΋hOxQtu֢gLX<ϸ؞֢33edU]ӰZk}QaEsageX]̶[`av1k* d[0T4GNvZvLS/mRG^{~~'T+ӿLu7*+7mb Hxy2cnIfֺUGQF%}ZnfUΥG !.d-E5ү}ӺZZ-C[HljYͧėh7R' ~-^9+T[XK߁LGBI'Oze ;m$c"&\LrGOQ~#ޝXBd+.VzMZK2TkLF2*S/f- |TY>5I}s3kEM&9VYhۮZľYS⻳tZt],7bӢMWS?sJËJV|\Nwbxo 3u3 -lgZnӚ-j]s[2km&V5u;[OŒ̬E&9 mGL{7$0UoYڔ~a޻!*k" hӉmW-vuOa޻16w+|F&w땕{'~` E)n:y{7#Qɕ؃i-Nk6Kw\稹YnIњX@lǡE5rW-6IhueT2ݧtעgLX8b['j[-vv-SѴZ4H^®^!XѦ~k+>6\}W,bVRouxɑ| §ɩТYa |3 ޠ]~K1j )fQd+L6X(Z'Ǣ(>}YGANX|DU vZFG8Gke-E_4O^%jїb&[İT:M9]E?9+޻䉯_LddLIn Lk\y:ttL~漨Fʹh 麘FlGҿxђ̬Ej9 2*S/΋&{4CYPEyEIUr8HbU7|z.yxc^ENDS?sHÛEk-#ȋlt%G:r/f-b"&":9#̴}06IC,I覘DStSLdݴ( xQt&עka'e%݌A9nFYkQ+:n&E֫NxB}"_U 0]i94ӾG@?YP5c'f"&7e\3E|_vBC~ynRak-Xm6},c2D%-ZPDR{Qt&"g *dQ,>[*%˥EiRRYMerEqj>{EZx#uv]|)V,Pu_Kt/뺙c9zv>cc·…TmȣJtƁbZZd@RrbUn]V EYju]mg Ê}>G /Ѧ1':yi#Y2&9"z9δ]W\bzf*[)nIVbDg, ЊmW-bԨۧx#nw_͹Dü8KU=GAu߈ 1huM tn2oHȘɄܷ#[z& okO(@Tv}&Ji6>v1ҧ4r7 BeT2ݧI/+Z="ge{JY@F֏v..S)KD!ԑdu_ NV~,7 ˤߊj䥈TJ9u uW=F2&bi#3G7>3ܦ?Oݓ{ϔ^>4RV OD1uLͧZ-G{ԣJt>c䃱M*鿓Ӣ&a|hOۮZnj>%JVo~v]NƷWC ,QpVݴk#s*5v1ɫ-uL(ai-{ɏj >G~-[SmdMh# F>iQ@Q>K2*Jg-%{4LU:IvZ*EPvcĶoT-H aW jüQqV|˨EwCwA>HUQP'/ GIdLdaiDCZSoVDТ>bʰQDŽk]k| _xqhQӁS=%%=(+=y:/(ZGͧPZH .Z7e)9W|V:T- xG߃uB2cvYԀLk$R6|Qݴ "Ř?o_Eq̄HbD9 (@x޶r TQ(#B@ C$UE!UU  Zy+LEI60gvs?~s87ˬ9TT2M̫鏍ՌɦhFDj>SۋX)^(?ziV2}_=qPfEG+wQ͡:nM EwX]tg?BYj})~%X_ґZ9AsBECn_PJM̫5͈lf ~Qsm/*H@12SlEͥ=uËJVPPqg߱K~QGc/.U֥lr-8hW{M Mes~DqC{nǕԷT;eu\Xۋ*,G^ҁWZ1NqМyK2(WӫQy{8h>nE?C$xŦ^TqzQ%ztN;Ӭz1vxi_c UPS4^+Ȋ}Ȉkhq?734Ju>wE; s @ 7"jLBidS%j؋H;@3F&4 CQ J9mEd2σFyqMP]^úVo4J v_8oT^xi_+@~VA7v9 +ATa3w(nh/2g$l룹N={i~wKP}V8hNtr3/rӌd^M[{>+y]&O0;&pMh,feceJ#NUz/{EfPP$]skvHqvSfk?'bVp㉗Jqޢk>b>^{Ncn5o(:1K~:d]ADdQ䲏l)ۋ.t'~LŃw5o&.םi(-x%8AsH{G={xyAɼfv4#V C3.)l \tQĻT{]Pe}R9@z^w']?;T+VM]1Q4^2&b<9rW,=^{S:gӌ:zʦ'rRb5 yKU$cPmS%jj{Qe fyҙ󷯵(n\ (ԋJ,gGIE; ͋hs8oR58xQ_Ew͡M{9#=>EGۏ;VMݥ͡W3׾s}/kdwɓ(g^8hNha̋\r2(WSz2hEfvF~fO9i{QܰHqh(6=jTt%?E3[~QGX܊QlEMjOE%V%Ԩfh_9+>BqޤͼҪf "g͡""㲄-1ڋB1ۓ'}4ש/cNY2#`e֗9D=f^RMDbS%jU;)h>sN'Ó(6jl}Eep{3N/[`4<ѯ8x9#wVnR4^Zd>dDDdiW܈"z濆9OshS9븰mv(GVk/8hN4Tyˍ6eP2hU~ |k!2'9\ fF6=ËZW ]4zWO׫z/9~䝱 ,1K^AVE@DdM~ԩ`C\Fƒ>Ӭ.UoEmv2FyK5AGYkS%jZiEfz服ܤEpB(Ŧ^DlS@^5_/^գkj YG9CekXY3>sFqC{Q: 9^=7Н̋vZ[(el8hNPyͼȥ+W)y5kEfcChFV:m/ʃGe ԋJԨ~=gPcOh^DwiZ+Jէb>^{Nr>FqzKȺu;m2!a18l/7'hjD"?6Z[|MTY\+q;4뮊ૣ&KreV5[_#0sVIq9_ r^;/Z.ZqNѽn*vyuc,x]uFˢu>7|j%@e)W78ڤ]Iؼ#E?akkWt-NB.!B9ҙEIT7߼OΈ/brG уE+.Jk,.DD uJhCB .1<Jgq-럔w=Cb rFLY2#r5Dk8+Tb}zbw`R%'Qfr…H2LW2X]lZeFd8rTu*4q8{#fbt'˾TUvcs D3Pbv!v9 fM!S./;?gH6LՌ3H2glʝO\¡lR&Mx>Q82 6@廹M܈ .Y[۬pHٱܑ1D*N{u" =*RNHDz޻g,60Cϰam#䨩>~w}OF3-DC܃rFAȌ C r02i'WoCKS.><7Qɴ{s7&ۑBw\|p\Ɗ SsjOBSfCwF)hTZN^v Y= {j1j2$Έ\ +cuڳ Zq} as:nWĞIDVԧ:~)WG]z鑗3p8`65ΖI[?_ P?v 6+*Py){2DkCl@S\w6U{2bԨ }*vUT Kr ~9C:H|nKg@6,WhS)wz~pC zCnE.L eM̫c/r4+{XfS@;Vۋ5|XͧAibS/"m6//:˷@=yP#iT?kpvb"b/8hdߐ&""#]"Լi:E̋8.\fkFD=f^R-)y5iEUO,(FnJBt\\^wt9D{9Èe-<0$vqK҃Dv#ƗX 2px5OA^K|4ש_N1-saOq^ԋme6eP2_{Q!^E3"w?\h4H6T{1!"4/Jhuʋ9LNJ6A)C/ߐ&txPwxj1_EnRO{>wEM0Ƹ>w|d^yK5OM̫'^D偆~*^E3'Z x]E3[X)g(zijOEM0q<,/JU#'RfEͰjO9As%xh`#8 E>sH:B՛-!!'g9o-yK5C,Ayɦ JEfDM,E3/ZijESShxSlE ՞6ĵ_04/k~!^7{'T lf}1,95"""kğy>$zFoj܋1/w6d0AsB#r3/rWP۔Aɼ3"G5z\E3'|i{llh4D%U"qxQ2ֈY/Y#sgC:M@>pRKF؇Ұ޾ØR^Dg''k|4ש%$_ʇPV|8hN\TSBy6eP2{T1,fd-3jNEᆓ"44zZ)6ꛪ=ËN@B&j$8i5{7_yV}0=As%O׋( sG7%Y5Nu:ߋa4H)z*=h;ʤdox{Qjޒf}>t~}$=wL/*@'DyOg/߶|4FNRhϯRoL߀I$YleB6ȍ$ηɝZ os_hmͅ;:L[&l|GHc,6~^Q=P&%35F[A#Ty]*mirov:vľ^$9M]jyCgf/uNzڥ-I$ՁE- 1XZ2ERJaZ4w闬~źƒ|$N:&R] , (vx{QY^O xe*;n}g/zyv6ľ^$1Ab{9.5s :ˌ75w Sol8/zVc_&dq$qH9iq.ڣ]p]"ݣ$q1:ETgx5Zk@ErK*I}mpwZ:k֑ľ^$1GSzg}bYc%wwwZWg[i'D;J?`Jt 6rA]ii^P&%35=;4/ܔf 0WZ Ze+*8wmX޵jI{v9κ,wp+2VKt My1@ܚqf}!4Ib_/3Ջz`OwMV|}5gegzނ$N:&62MX$qHjQXâKU>̭%N:&zH62/D(>EfBUSLZ|-EujI$^\O[by 9:cFsugn"`Kt M.d:u! ‹E$qHޘOeEs~9h~^7%N:&r0 C.EP&%35]EfBU3RLΉ(׮tSpS\Neh Hb_/*Ыz>u~: m|=5Zw^ ^ _+Qݭ|y* dC#Erv1Y]qUuyQ mt+rTO'ȩETx&ڴ2)E5 4x:RL~7r>/Eo tg!}HSk /Kܙy\ wrU^Tm!2eXq+It M^y~$qH~o'W[4w_Oʲ\ً!oǚ83ET!ILM{{QPUT4|h&7|s44| bٷ:,f|fN g&y-:~jG@5/ y%η}OT(;/~9(Q^tWpd1&x-]*$*ϋ"&U0LJfj^݋"̈́O\frNTw^TS\DTZ=IEt}|Ocxg jeu:^{F[P΋nbtft3׀|$zf!i%6dA=N-#EЕ݋Ts/ޫuEhVN]6[5'~?/ƭt Ej-F8YH+dۋ.E}rͅ /j&GUq& r?/Ҁ2)i9g/4kVJE3ɇ^T5BFxľ^tYתEWjE_rUORw_5a {-^A vAm$q143_׺ -h5/! ̷\WvWkr~}{9j:GUq&0(RsfILM3߫{QYAT4+SaeSyQܰLͥrhTľ^$)]a'^tAYEy+~9Rٯk/s]yw삺Ut9&y-:!o\J$U2IyWe^/_܌.r ItLp79OYdU6%LJfj*W}QU@#Tt1*5* 97E5jkt$]ԫp}zEbZR/}8Q goeyjhU}Q} m)}zb/ޣ 'vcTy@o/:k!%;oh/ 0TeS_4z%tLA*|?SHfϋ":5mB@ԴۋBTѩhV·FMu* h!4Z&}|O _r65*)z_ӜJe,.x: 'UHSXMEdf ?0m/rɑ) ,cKŷ_^~?PUVC%N:rZZbyWDUƠ (Vy{WPME3,ycZ}ͻՓT"6$.f2t] {ǝ7ǓV;JsRp*9 C7@(ndY/,d7dBtgүyEW%qſpUOT/o'd@i }1e ^dp"밐Us%ηɝ•ĢKo>4@ FNJtL]ϋ"JuR}_$qR2Sӡ^i&T44+QuNEL=HzhGObx9 5EWV2-n/it@ njIt MAdV/P2UEi.E/E@DItLsΪ:xDG@Vԡ[okf̚_Y*-ڎ.q  UfMkKbT%\ BB7ƛ+u9yߝs2?Y? jn.~WYۺh5yb%׵axkگ[}\4=mjAN<.OqP'Â, 2!z0==ԓvэ$ʷΪϪq.3dz50oߝ*A'N]!4ʸdzL'8Fs$dr}I688IXI#Kbܕ>u߄h<\κ&p֝51YX>OqP'y%DB]׈ Gc)ȏQ8Cmv7'$dWHq\QMX# (1%g/4Bu?NRK&yd'Nvp _N$6D\$g2=nڅ6~F|5vL 7{c͘?6|vMosNgCftx* ;៧aO vEG=1#}Q{zwĸٍ7*JOԓpaE!3|ᎀ2.S9tsQg0(wN1z1z$6}:Kl]A4L'mj;#>-=z ϗ^|_% 2=m!{ᢓpхp]$QP]Px+:]T查X NIqDn\Q=Qq:(Ӽ.;v†S11NRwuu&P.*!hZʿ1poPv~'m)!z>-dBk#Xq?'vϷQKˀ!62ޫ]ϋ=܍G+S$}"y#4r7ETO.2.^g4O7yn ϋ[h =y7^$6t)O =J]%g\W)[U3T ["J/I=n]."!;EH8.<}M~oM O2,l (峜BY[5r7ET;QʸdzL{]T_ Pۨ"zhv4g<|$uWsntUY\&?\U_9. δ]矦:.hL*}wZ-2 w# mouj&4ܦӟEtF@˱*z>[4r7ET?fe\2=g]L1] ܂JRwurzࢿ##RsrGSfESpQ:=r<<>GRۇ:i EF ~-Rm]55ܦ}zrq5=xc(iOW:E4n@(1=(fB&3٨v۬]7r#V$6{t2"#Rs5jѦv #^Q=ZjAN|$I=nGh}u`0 Vr!6)ǝ]T$(;IqD\QM(5e\2=.*Ō5)8)NL[D>vx3Vgu8oB'HbӦާ/rpQߎhNEwi+1Պ6~#"=unZ|uCVdS dB$dϰmvQ}"_x㏾ۦܑٓ}1]>kVnoQћyR[9}Ȓ캈j'P%c-gPv  ǷyҲ;}ޅs]/D/wIu(fq>w_710gjw[wG _C{o~rt=z# |G{߈s[U EW'z>iP-.RL(cʸdzL)1{TxKkJ"f]ަ'vQž {RwuQ/$fƷs\59\Y|JS .Zd%<+y2W%m8"!{ }يE"uw 1iMwr\\]Tm1ҋ1fV>iS$3(7qgwQ3ZW) )_.*aaJ#Y]ާlg]T=K\ūf:a+Spn̜Xy#>袅 A^}@-?-t<= ZXQ{ZK_ SvogE6xhWڈ!3(_5x'(E0ZDՊM\4E|70b4 3}ƫ)|J/m S}(S7G|a{ ]"D\g-D <ۇnM0IEo\]Q._]Tٴz p>E0aSK=/]lh)wS1s"M=]x;}9t@Liz> {E1S>HqEڹlx_ Hb3ާld]4][ϲKu\V3Ye.939%J̿+W%mY]uH/,^r8fBSvYշXhm[xf9|uN֤F%E Am >~Q3z?O$fbGM-Fg]gFLI$uWTz g$Y/x̙yjVvfC+-F7_4DA^]P%vDOtr9=qۣ NGErc:4偱i 7v7̀}[7 dfET}܁r(K&[EQ̄7/Ԋu/PRWw8/Tӵ,Iw B4$vokw3SpWu;۟o9Rۇ:YХdB$dǩMC=iI$u1d胟quPj-Mvw g5̈́g:|hS#wsWD5; 2.ӌb&TDb&gyJy]=|G$吏rqNg{HwLߚ$s7/q N6yIqV!CN]y&CNxbC<#󂁬HV"!/>H혏*rs߀z 1iLR[LOnR xR'rBѬ(JqJK@LEgIAfZL~wI];۩1$uWIl:-C kȒg#q1WdröU:)-2RJ@^ ,_Ny@fD%Xn;|&KN\$wԺɔĦ}ZA0)L m*TendF梈*oCP%cäo2'%TVNs <=+a&uWunblxh a(@mj 9.Z-y @9K F~ʆ"!Ř_a[xW!6ԻsEEoQSTUԓpQFꢐ*7qd4@\GrM"1P+6qQx+vP$6-Kx1r~\DžUѦE#>-=W1 8HF :yzF\iwd .jUw1r 8jM}lgCkٴz3EOZ#wsQD5ĵ(ʸdzL?wvQ!^OsE"1s jXolP6]]$p.*ZGF븘f=.ؐkEQ󢗱zUz>Xɪx_@ߘwGUiyGE{svIv7YЀ>y!9/*\Q]J2.=.bvw\H伨ԭVnv.ꄣ;.&ޢNm]TXCa(O4r7ET]Ӏ2..bşQ"1{+GԚEx Ut1:ϫI.zN7X[M[sQnA/TTiO{6o /[ .}7[-2Hfc3]|Tx4\$9p!6mHč(4kHqdCd#/ (qnuvQ3z?H$fr'c ύJ]ԋUY/x?FꢙjVoV.҄y<)֮MqIqVv=<@ZѼy&DB:r"ٟ]~ui_MotvQfF`_6~׿T#wsQDe(q9(Y}"1{Ԋm/Xn3IEjE&\41<^3{?WqVVi`(yעSINт, 2!З\&=IozL5\erwFZI X?5+*RqPκ+C݀2 wE1]+1Zk%Db&g(w]pV'C^P-{f.x_L+2<*!V P6H]zu^Ük5ig7G8w~\Bȯqve=]x[#wsQDÿCM@Li$FA#TDbv^IYZJ5run4ܦC o"ڌF.Xc´5obE0V@LgE1ĬO[HE}XQ?CRwuQ[՞E1^Zxub.싿0bYqW:g^~3h Ʈ ':J2aE!T;XE wջc3Fr{x> V!VROE\F@Zʿ$%K]_cz-$64b`EF} >?!3Ӯ,.5\$ m?<"qT=_1ghsZQ4]VA6,}A\XdQ!MdBH@@a GmWU7nӓsZn_}/ums)#SZ_1eX܍ݾy08y0-XC xEtF`-|v< 3h|0+L FHҿ?^>S.+ WL:*O՝K:1E"[u2^f>X<FƄ_">Eȷ}kwhwA@x %Trw+StZԉX%v՝!>u#{9s]y0-͝mogf tc|b`-Flpm&<0H%mjZ )OOEL}kQvkY֢=iI;&<yN xEZLX}~LCoioo-:E$IբGڶ2:}@^bx?s\x.?40_]"Ta4 ,F]֕M$Kk훓1|| ֢ Y QX.xD>B`Z:@E2^f>X:pW$lՇgeFR[wO5-Z$)Zԁ{KܥVw^tw2f1Vr<N_#0.(3A1H 7(E2/xK}6)ZԅմuuKxtc"<y~?2釁~L>ύ^E/C[|%T䳑\<ue/Vz΋uѱʅ3>G|08A_58{s_&̆.%Kk|C> y);<uf%-AK;_b=<y*2,ewk t(%Zc{ַ`Wv WiIբnU_鞞բYK\=ߋy1fM7Т~;Ga0%F3Yr!g}EKJkQue~}cnB*P -V7UBU74_ ٪A( $A#)Gԭ56mVi)XStJՍX}@ rțOBSw1pmm'M_&-t@cUÐ@Q\,S:%&S3xxVDڰ޲m$ ʉX˒k%&& ɍ_+ H:4omd Rjnoui=|7]cY 8O ݆/|\kn: jD޷z߾ҵE &XO3X+͈mUUe Q2ďfVf목꫉5\;6RtJ6ZY3MGAStF%lYPFQa|YKbos\|eX1LH琟O[Oіpmmx jIӝ%Vcbli1zۥNoD 6m":No Y-7&VmCFo9V4Nފ2%m-bբފ2>AQ-MhFkAc}#nnUIfS^hh-n'dvjQcm3@oGtsUlYX K|?_^iAj;n7 l7q-9 4 V7,ͶQGˮw|bγDaN8=Ż?v^'kS)P HBw)Xwh;:=H qJ|]"QG_^xRAs]jfotv-ԳܜkZpmKhEiVݪ&U+|Gb=VY!Zè'_yunPv׺;U54IIPu֫F}:iς˭qNPP~|Viʪz:fVYYmeյ~} אw);ۓX|ڭgM;Aׅ*SnM59 4s{n:@Cph @3phZ@+x$m%,/9(\Л/ik`yQH~{6:Z+ 0ў, 8ԋ/ {:Ű5R9nM⽌^>sw}B/ܾu2QSx0L,y`!X AXJ zu}Un/ ^9{}(s{WݲH1bNJ{3ƭbwN%1gӘ{whQ!O2yW UoɿrU>u"Ao~U&9,>۲Ȍ̪Ʈwxzf;u%Uz:6=2ʮc'*571l MZ}|dqR.6/v΍1⟃bXHntP}FpUUTdʰ R:4XKh*4L.8Cz:V'~_?WH ^9 Ky_}i/g9{~/ sݻ3b1cX=T% VW< 0\3 l^PGYuCa36opNe|kw TyYuY?躚W牸g<2?<9=pއ>ع"ٟ(m#UC9+=ڗVdcU}HQZہ6 <@^kZ2 䕀bqr]rZNiHw]@7!<⹏|˫wY'VbX/^ot2^YIPG,H~;`}`2nmԍA_cƦ5ldum:d-R\ va/מ*کeZ$DDDje:.LtfPK:Kd:]`0:iyЁzA'0t]+Qd aACUew]nuQXm#Aut3[=dcRfiilCqĶ.w`w|(vwv5>u3moSö+ u{;+~;Xv1V[uN[]iZ]B^N\an+|H<k^xe5n]Z<^W@|;?2qx[}l7Ŋ٠KIޘ0<≶bmbE[l%=LttWMH<' +)?bQO<ݹFfrJݱ[D/%fu4sʢ]߳=+Gg28f}Cnޮ[Gozzz2wTok X{h}tofr5QO<׀ul>ۍNSx$gyYϒWqhGɎOQSu/5Qco5jicmqc}E3B̮r'LϐUy}&7.qUiݖU>T~ r8=jK@SI?UnL*CFF*K7D:Q]eol|vNơ 2>w|y3(ͤLin2iwC?97ύ]^[o-?/M oYO\c(!qp >[K^hX[?a.ԟz.+6JeKZoApqOR}Vz*%AeԙOlGu&d^ vNV?ާߨ,jt噂|&ͻ_ot#QHWx9wN3xâszϧ|.?HsNQz[6sfB{[iw蘭/o/JA=$(oI~MR xٓ}<=iK F󟈯sf'Ziq(NJr\]o'bg߄şrăbQ5VƈՓa /#X] {vm` %71[ϱ fn|>p&'(?Mb>9eR' gb biLzEz[(D/r/r+]#nS\,5.8,=0:pwNx,Ţ̚z6Qo&gpt<2OO3x% fl0#?%[JB[To=)!Q.J}.LB<8*FcJhJ%XY˘IK|b!j*kXAUO.VzJ,OukW&쳰"kaU.c=Xy0΃qx1=l!PCS6:QId^*H#Ч 9'a ޛf42̬Goƺ<bmٵ|*nm:wsXp1sΠ)'Lԟux<2L'̦ 0 l"߮m;g7}E]ڕsveUPٕA, g{AN!%zslYFs}AݴUX=aX1*<≥9XX0 0΄q8eFaQ9D3af-ESa=|0N q4k(,vާYgqUd jӛ>bGbm[b>֮,8Z#͊= /uΠ!A'ѕ(Vq(<2 #ь@ ^I%WhTҲ?̊"kC"dAU1Uלք(A$sr H9GF.{遾ݗ92᫯.8oar0x EhP{s;Zpے 6SM)eoLk`14A ^#։tgGEћl5(ห }PuEqJpwڑn7缦 5&0ƿARFkjEjy6󣌻m׀ -߬]0? 0R a5k0D))y_ӯYK?t#z_]GFJ50Y(mz$v6^-*F?~37`}Xg7Cc9kr_ =Z}vYVmWWbvMꌖt^R[hoy_p~#a>7/U#jkiZnw<' ?z=CKl['>'a+tnQ'~x|&Kx$(Qm1_Bwŗ2jw"W|U _vg}]mWc~F44-(UKJךRmуDE[ [-уm c(Z}>TS.m{=xߨ 3/)Z kd.޼kۮ5_j ڦ#;)qJsIGO8}s]=F `='gV=+Ly-:ly;yGm`(?@t53-ŗ*說¶FKASM戯#o#y;9G{1CY-`n(J7 ]KA݀4$(cBc?c9_9H$y 1yu:DcmJZ@W~o5`>SgC]g1-g1[̽_XF-|u J, ]5 v9J ҍ|H#ԂZ06F;Q`CL3 8%_q^c8(㮚n!ѫϬL`њtPS?x|'hG3|C"H"1%J%/`k~_|(!=,y,SKe `KJ\?cLJHn<}= @:؄mVd!~F3Ju9ُO¹asc/%gm//'k~/`9?k~Ӿ&,ܚ`ys[ ~~~a9V79zkޚ.vb۱m̵F,/؄akrN%yj2\>ߣ9wاo}yzOJԏ9av?vu>bywS]u8uΥѹ\nvc E:;OR_LjΣDa Rl [`_SܙNNw:9¤Kp;gwNw[-Ŗ9/,#9ޜY5u8S>g~XXnKu3nXKWJX-y8&̀02Ff,j[Xq9 2+97pFG!xYQo!;a.}ZCpF7qz݊_m/SvbE9^+MRr<%a%lv.Zs }|y㫂#,SW+Q5 w>R%d%ZׯtB,OIg$,`ț?M!'Q 8308v&3x0Lw*[VE"%2" sd|Gz^㭯 ]`%+`h ]8;'`G" O53r9׍w `"sS03 Gzs [2$k"_ܧ7M՛ gA`J[5`q"M/v}g|fVb:vd)9;ǬCcNY>Cy8?~0Fj` W#0O{.-}i_yxqg;b>ٽ`!Pl#]/L vum8Y]`HSY̆,tXIwY'>ߝH7a Cm􃙁ieҥܿ8) \y~m&w 8=q0xMFuSO/.!]%LDacTz#zz)yҗ.̹:ſ\3Y٣Oj%eY]A= $(Q8IFЃ?4a͛Y7փhF'%m/pLl;<M=X/|QmlY_@t04Вf& 9;,ƞq 8v0x{uwP`'Gz ?88׍pQڮg z}LB?#Ghb bv#2>! \‚jIX(y8ˍr15)|_5X# fڵoݖ9(m:`(։^u ]Ga!^y)Rv|*'9y Kp 6DT+W[D8_mo}i_N)ǨfQ>+s&}I.S9[:u u_/ys~94šnf\u1!1g?qf+7z8{]f'vK~i7-  *NÊ0uw h aa3j,?ˋ!_s9\{~92f5ۜZp} ӂxSKkBר/@{oAGú˿P X^L#PK8XnuڤF?%{}5^ `Xھ%[+ʵŸGqWCI0[q& >5Yr|<0V `#<]foq}E(wa8(wا7R|yo;2z=hA&7'YAa[Fzב6?u۝cFϜYv;;ÙJK(i\7_XF余4%H#u1xshNV>Z[z;)fg/;_89{u̎'s|8oY ;;@ +[t724Ҳ#sdNhXc6/7'K^Ek9*~؆?x=y;MVrZDj.6Jzǐ?s0vc(bv ˈY_8wḓFG\3L嬀5v6&Jmr~ ;y[83mM0-{l-6Xف_¯~D{HcV?9/;2$k7Z=9!_o.nѵ[YOG`A查St;4GFO]DiZ6͞9gCW5MWwGZjK$M)~lvgF\l!J%-\ ?؆*l;VlyZR/#qDCH0}dOas|Qk|G|_aW DI4<;f85Wr Y+`\vZeXGml͘AZZ~_2s#r]lvX;8Gcf iEL|n,|ًۓ@|fLr~-–aʳᏧ}5/}gu5秙RHzlDl&{xFn6[gm-[I2Yхx|i}sf`SHh0;X-srP}rPqSf͵ckmv9f]a' @KS#p{-sm`_NR`G){A#!{odba?_@X_=Wbʳ/b}5ʸkՖmkJvZ ZmeތlAK[уjz3>fI[-+曝e5&{-ai'XGqO4HK4cQٯҚO#ۮV7'0DLlFnuz͔b3qmkZAv\Jai2Ǔ?9$׍4;-'k_yiңGifqזmlжkQݘl޳YfeAwۉmVJhYc|۱s-:#;]m$7諛m8+9DWZ@۵xw̎3͞k8c 5gWHmL7M 6x*T8rxLS0mžak}a]kmV'vIۼ >V xZFm.%/6Rh7ע+) Jϐj6Jz"\7j(7ƙWpJX] 8o}lCm|}Qp 㕦-ލ7[YkިAvٝsUfeWWZ_]=pզ}u(J=]3@?R̡4Qy֧sb ukc:0Tl &Fbgw^mؙM%=cy9 a&w6D]b[%ۮv`jܵIw>9:KYfMH4viumv-],s )Y9k,OJLZ\1Lyx#zfۭ ;,m ]K-BXX?-,/3;O3G/% (|Q{0h(53}u5Q|-^Y]A<ēA< ӍN5lpΦ2it]olv%]&X7G7sQfNׇx9{ g0bn6$Gjz[w$۶kVmL3rZB۶i-쬇FcdΑxRv\N8?02+R?-X?Ly3Oe4IcoJG(f44f#k?́Qo<.F;3O3j;Dؘ `b =&fW67'pd1M'amk'ioװ5)$坷00J *,;>}pO`.a*{nJ7R➞<=g}d]wSUnWGa청I] [NǃXVGQ݀G[~ B<@ IGA<"8[GXV,xs_98Yg{\o`p9uYNi8 ou$%w xEA  H: 񱀈Y~32BēA|IGA"2C{;~&7'W;EW?^^ħ~a;ƹ_aﳈug#xAYWg=IE i'ȗzyyA;Y?q).7V9'e %;˅*G=e+Xw9 [j,ɋeQr`9?t츲 [N̟wiQݧZ{?CEN1wSJaaerX*bWrUvjcۜkܭor*aW`˱2Xi.Jpnq)5:mwba2N =_v CERq:f܋UuhP4A!=yCwcӁ7:ca/w06đe]g.:zkxn^Oqz&w{}3KWД΁YmNط-vkعL41 da㐝6e+U:wq%V u]A 7-څc!ݥ`laK$kpcx$ g1rF(c"dz} j_fWŰxE|M@, bE tF([ĕ"^kKZpnIGA".2w e#m~Cd#esQ #Ǜq-4\6 e ]uceDA"."XXn>GQ/D<".y ލW\ߜYE|zY,sd5VAv;"g%J !#`ΧA3X9nof/WpgُwvՌi3d->gѬ:ì>MeYvc?`?a{8.wG!=V*&qUn:eh-1?r I>'\sѷE*'=vqSe7Oߏ<o\l[-RTvM1{ʺ@yvXz¶N2by/m7Ź|cv6('b~Up.mf@ӿn|o7pwXd rS䝒6;V [s4Ú߃i~!185J՜-NbFM\fik~i[hd 3.v`JG|13B\O$Ǣ#юa [?쯻mŬca(ɪ su,s瘹2#Yv'6n8?=aiVڙt C`h<,ZKY;*>K8އ0$ zsm%@u̪$Y2uS12seUneH[\9'u0;ZO1ȊAY'7N>gߡߖ,ފ°%o_X}_0ج_8wا˻Wo[vYAVfMpn/ix L~Qv6e}4բ^󹿨4t q|Oſ꿈AyY1.+qe]އK w~p6u4` _yr%:W ӖQ))}:%SAY'%ǻF6_,EKiРincϚ54NVO[j6YpjI3$̜Ts2SD␟ Y޽}PuVeTdNlǎ 2h:6JK:*v ]gAyNuT^uƺjIp3ijpSNac| $W$|?gG[)UiUSj46AK:j#,_dHURA(D9?J7q'Z/s:꣟PCZQ0yZd^C&r޺uYE[RA7~|L)9S|^/0-u|PdZ"(FcCd-ĽwHZsբcAo_Q뤶kQ UOkhP&CbEg,)5Z4-j5ђE?ekQ':^h7K,%w HӫiG>Z$.޶.g>\Ғiþ/ZABLK:jqiQ U!VϠ,ӎ}1TI>> EԧH6c-Z$49-Jwn:&}'w}QKh-6'h"u}h-zDuO5@2avQGA/uyd |eg]-H[d>AE| WZtH@k['ϴ[ʋnkQ UV͠,oBkIcFPݮ^ђLԱ:oZԎ^Y;ҒE֟&E'O`IҴU8Zf4{>hJ׊H za<ơhOHUbz_?B%<΅lǿa^7 E3hIGj z9y8-^kPFEiZLPS=d~kV=Vouڪ7jpSW h1l|4-ٱb#e{O3z|_fD[Qc a<*̈́  emH֢s/Y}@ ?f(5l~8:Շg[[K:jҧ㐇Ӯy2*xN?][TǓ™~^{^]mKh =W/jI.ᦆOЮnM&O4ndKڛ;׏r@$IGxG ">q%CO]%9߀>ڹ_I2<7T}%Nۣq~wPuPO`6("^@A=oQ&3=['u)-Z$ܼfnB^nMw׫&8cy5\Eqz*ZQ0;~q +OK6zxqv7ڹ_\ιARի:5CvnqiQ UO(AY-yi?H '=GFd V=?+E'C{p$ڋj פ]8>%NC8(à,WBkQ3AUYݒ=Q;zX:ԿtGUGK:<ǭ?~פ,-R%{ߎs6?"hVFa0K "AvuYE[΢ACkQAF`/ZQD<"U{u+2*xN E1?ߓ™/ Dml-B [ukuVYK: 7Zz>-:>Y <EaӢhsғ|\==%?Z/$ʫ;%}HfRM{s_K;h\䵽kqh @j:ȟ7紤a<!k9ڕI|k|dVՒZ'2O8(5=:2*xNE1 ʤpD7F)TݨjpS hA_u"ѸHˢ_͏|v6uFAǵaylˤ>=,N'ܻ։U)y8-ꬮ4("e5LPݦ%3y]XکvZF`iI"vOZt­ YR ]ڈD_f5vE>=EK:j# M JU[ڹ7Lptf] ZQD,<PuP ʨ97t(YtU*)<+lZ5l*6 tX-nnT5~Qظ'}>}-j~SQu3vN0;-i TeikG{r.?ktAkoVm(C-Oˆ %CvBqiQ U7Uؠ,ӛCkQ3Au*:Zl5)uT%tGt؉jQնoۃjQ6ƔMI7v_Oħ)ZgZQ0 Aj dWӾԣ+-R6.nBkΕ/-6?5 ֤WB/_QDFCNbe2("hQZ™.hp`-.aX*]%V2֟O@RTY溤j%ڛaxCZTjQuvڏ<  ?z{ |i?2ȮRu]>ZtOʥk}8/>jpZt-NwKiIGy!E1TT5("Rh-q&nU9™' {A`-jUt;˯%V[qOW&E'Q1iZ4{OpF'idɿȖ< ֢SnAJ\+O։My8-rb ʨ9-Z骲Jgi𹁵=G$IբVğ%EТ)EY~?3s/ʫsO KaZ;O;m*=<ZQ0y@A&RѠ!U1EվqS'/kvg)̙}gz]p5mN_TUVKTSUCwA Ozx)/?\8d[州UwEȗbtUm_]`4utT ^\8ھ{X%2*xN3 8W_S]ڛw k[KMߥwk봤ö}i[(qھ2l$oD~%'Zμ^2'*z̨aIIX/<)?d|U Mz]Zߢ%}ვ7RM:3Hj== Zb d |i] ۮ.J|kQ;.a/d] Pe+UL18#2ie]kQ :7à,ӳ9 GFPNdpfƲMMZt z [)-Z$\b)Ӻ³hUzdh\R^_k7̦3h >*G*ӒZ3h >$*QEdvrfgvL}8/Q_\}ٵh-U!-u"cqiQ UUzUIGEij(YUwuT%3QGYk/"i]:&]EivNVeԢBe!YZ4]XOst1du ܺ8VZO>Jud1Z.MOwiWK|k;^+HkP%0VBU։֎!E1TտQ%9-ZbKQ?U28om-%UF+N8etX-b["eECi/YdN4.ƃڊ>~?̥3,UG|OPA ]LOȰO:G~IdJ3!KՅ *.t\%駼ؒEyog1DiB:M֒ZfopCuSݫ)IGE酡K8*{~U%3y-kLX]whAu ;$VTOMT-diä́(-:تĬi;zsS}R8ӎ!%&uD-Gw{N!V'yn*7UElPFEϩECqFT?"n+O֢;WI: 7ǭ?I@ԍJw}Z^gqgGExMyvLٵU5ȝi "ANW%K|k|fMڇ l qw[_JlA$Ndl;y8-zHQs+8TpV근-Uտ(}ztX-c[ҶT~_V-_7g>׭R#>Wf~y(#IhO⑧AEyt6-v.Ϙ@ZE,\h6g-گJX*ZtPI:jȨ[scGLiI~MFbG%}  q_t4a ]H|sR=O_Т<:o\MVUn].ՊjM**@~wcQP'q"!ȸoO=LkTRm!f6_ZTF`\2dbG]h١iQ@0QF%}zYʠ׷a(d/m[;hE@zShخZTNԢ2(miD}!ΒUDӼpA3iw @bG]CY@$d ɟؙ"y@m5Ih9nZPk"Z4r7- sFGLYg-}<3LF~]-$-14Ǽm;HlW-UӹZOaE lzhj^累.ϨF3jbG]C݂,ǨEB$di'#bؙ"ؠ"Ym_nR/>NtĎ&ҽA#wӢAތQF%}zY=M8ogRLV>BAfVU7t:x#)5Xr;Ԏ6 獆#0NN{8 ad̻ILksQ' >YͻiQ>&>9^;HTCcGL'Zl(o<7qLUƶZC s zFU7;i-ʧ]شHtuѦy㳲 ZdӮ}T Ƨ$v5ɏZyKDv=&g֢~Ioa,jK~aQPiw>P(ЮG"hWv!PnLuoPUo]@p-Ek6M]ux y8⳻@TE&U[k]Pûx kIlW-lRӾZK=iEI$UU;j!-1rB {9QP'eAfӾJ;<=TM ?;Z$+U޴sZ=;[y;*&; EFEϸ أJt>QX|6LJhW0Pv"WSNJEo/a(d3fṯVy[1vQP'fCf"!c${߆} yYTZTC *Z;Hmd6ҧ`yqhQ-ţ:O3.TZTjEC'"P!F1Eݴ(zc,(>mt֢gBIb)IG 5s>^vբyj E7sClZ$Y]Pjh 5 7b4QP's/"!;D#̴IsBuw֢$1jiQDhE>^УJt>S4'I%Z~5 /A v"Mz6ТT o [Zs_8ݴU߫Ď::g- %=X|6o >/PuMFE 1ӣJY Y }@~k-Gu u\+!2!*O{4g֢k"] K;'~iGTE_ylwӺI|O4ȄN.k}df z(!2*ӯ.P}{bYfN:cuqU7y:֍sƗic/si^8ռ[8 /K_1tɓzdB$d񧴕xλF:6K^ _nE|es;evMjǒ̬EU7QF%}O)PX|֮NE)Ajta7'R674AEV{:慳D_9ĠE9?D!41M5ɓeu݅ 5C ~J@YM16~Z40.x>A"˚Eҗdf- .NmeT2ݧZh17 WS_TdEx7}UخZ4Ned[M;)%쾘WL¹V_6,+y0jO T=z:[]`dF-"!Gtg >f5EM7!܄5,t(mפ*df- ΣJ4㍵>\䞨I[j͛<7al&]Q՛VF#~oԝIͽ{&) 6t|Ify9L8ݺN!@Vg$"!{[hܡwOXBQ?#6I9JO8"'ӐQd#uK-ZPuj2*S$ϺxX|&ERM}$iKW'k=BOd]zd#'x+p[ܓd,(=I&T;䅈|Ď:Ag-*D.$d9\O#3EcRQy~tIh,ĄXX$ݴ(1yQtv֢gx--ձL _@zC $]hm[D- %nI'TVmĕsδ;6 [kpd5 5XP fӒ̬EU2.(>Eτ=.g'ٯ>rJ;-: 5>6ߠ~yb{-hڈވ0hWǦM^.((>MgaEzrn,>;~?nuӢs\N2:N-i'ӢQ/iK}])Ӽp85?=Kc;=C<ɓdB$d!aHKme6OwӢlD:pB62Z_B#wӢ1r=ʨdO;؄/}+h:E"[u@;xB; E*7pN2ZK:N,쾐*BuVbx'(Nqe"c]Dl'1ZHk'vK1yKD&DA/sξaZds~D&~.(y8}p֭9#QPnKinP@zxGLiR k |KhϋgY/K龝vur䏐?-:_[]tk$4d}_1 gwˣ)1p F=Сe u :#Y tK^Ed܂XTлthCj$-j F@Ŏ&mFͧxQt&vYϥ<#{ےS;/DcE#T&W=$jQ6ZNb:{|ޭ:sArL;~TU-󭵨YY/t>2EcUT)]D-ҚL}!۫*s?YqU׼JZ4} ȫ8|<̨E ¹6bN *9=L䝫|]=JlӬ{Pd-[cuMՎbIcL(>ua2z4B$Т~v-Ax:L;-USI(-Hiӥ`ѥ)Ź{iOF|bC<;i ͳE =Lk(H~p6 l3XkѣMM ○uMAFEUGLib {-m³+TX|&Do[w jS<ETT$jѣMi˄OH]LY&4; 刿弒&%n]P'_|_T"!{kن"vH.Ww+R7/Nͻ͠ȅ64QD*ZiQ@/cQF%}aT ΀u_W_xvբ_uEբ6 ]^'q",RnZ4' /EHk/v֢dBA];Z$Te.﫛$֢1cuM$iQ@us0QF%}Y]-cC/7|[kQ: &EcTlkGh,9M/TY.*i^85'!CN)ݧ@^^QP'_dEc [+;i-wϐ6w6o߯7 Gv_P5;ꚬo4r7- :yto=ʨdO9k4B?NihE''tE?WVX%nRoM™u0u!L8y$v. cAc"!? 5@V&fBWr6_>YF"6 7 .7IkRv|%Y"x֣JtA_L9봟֢NuopZ|$o^UӬZ4XCSj}]Ԏ6 ga>[8KAbG]C}3Z 2!{~JgN{aͼռe#Bk}FY]닞ݴ(GL4g-ՁFfL~2֢vht;_c.˫+(cW|1gfWFA@0kR;<{ڵ Zr9RȲڪ_ڵ 4zޅy]uK?>)r|;}ez>Jz$=+g-ggOb%:SXus'Rc-JFbbɜ d|Gy>Ӣn",ҫgrEݘ5yFV@0ǣ"a}ıգFhvtVT+`Z2wɱ]?cm.9f'OCe?tv[;xf(3'.vb./Uv`T}۵e2PrILe>YݬK,iQW?XW|1Z1^H f-J)MrE-F!'|ъ*CeZN;բLΔŝ6/V~M'Z(kQ3jlBleZ$)P|Z<(-WLz+??Wp*ȿk,{]C_K]?/l7#Y~Z$ԳU=<z\̤Vne/Y/YdNCuMF&xNj6Y^=tEY+^ֈ f{#dZt5h ``V$6يO+z^, y:yT;-d',{]C_ϗ"l,"=}KR̝g'e?SaZ[[!QaY&2ܝu{uݘ%^zӥLƴ`&C'|k :F-h,բt;?(ԢB>9O6~:OE9}u }=/qYgң"0}r},?i-ORs' V3wEI``I,{]6TiQWt,ҫg֢nꍩ#cr@0;GӅvc-:3f:03,բ S-J#vnrd݂r_UN7!)cǜd9<j`(#='E}ie N̝UOFaYXH1 Y&_ouYOY^Sɦ^=4ǵ/^1A<q~QލsEMʚPf#VzzTRE-ɵ}3UGOѠO9 zg8o$}.T_̓xzZmxaE~k-O& s|vʬn/zswZ%mlW|1MuE?SWo fIюވbw6Q4Q1IȲ[-JV;2ɧt?h1I ]Ί6V~A?"sȹ9xK98,3lk-z$ˁ"פ/22m{La͊gtӬٽs5EPȠ#RQ-ZVSQ⢶A4aWkor;ArDY +鹴LѦeZ_Rzra+c%!smhH""WfE=a[>4*kZ#iJPZKbrߡ>vtItLq*Q;GUIaZƻȸr|Uh֧xAO^rL>}[lW&BAO }o.k&P /ʘE)wsU}3>->,8}4݅j9}J?pi3~J:Z>5\-'`ifP㕢Rm߆]3AzI{ԥq3Mfsguʧ~;BCpvn"/[Dj9MraH']Yt5%쪶 Y*nN;F+:fn3vm i77O4`uYʧ~㴫}UړGԗn)qr!w8*q]"8Q?G+S)Z/VËm5QJ`2 E&'W{%}IVYѾY\]Wi{8%-{4`f3f[Džx\x?rJgqz-R-ĒCD+>]'@"D]؉0X K?/5Meb+^qqt5et@t:At1.=ВO]gr_<ăt<τW @"B,Y.yܗ/=ԓ*[:]*JTEt2x(B(bbrbrW1+6(5#d~k'L)Їjj>\~x$5,u5< +XJ}T3xSr6`V7FmEιK Vͤn:H§rW4Ofo8P>cW0¯p6KdĹ &*vU#wP:( Rђu(%,K->X{@"$U9^rW]]x=Lc&әQ PaU&aFyMXk?+7rStN3b6]DN'zҡ~Bi?CA>^ CF#Af6lezN3N-]`F#$Dk"ԙh81§XPyVK'M-̣Dx0ԜnV=/W[16oӮ nws =~7x?* Ŕ;D\h.aW)-hcL܃2, B OƁ̴?3G?}//4C*°B%wQ\;R?'8zPiZ@NoNtdF딇p}0h7cg(zhwG=V*?8g<&^Q:kd?]#1tu\nD%ujMxȉ46v(Wq 1$& \K/y̻ kxV5U9 ޜgҀ5c-sa4 B8D`5eG>DWo+zH/DK  >[6!?kSE/]lb]䮁M:@SiL'QӡԿL޴^DG/" ߛx ^W1K{*RSSxWe󒊮:9x߅wmmK7au7uy jWJ3ހRm KQ:N<]h7o7:-Rr_̌;zƽSmX[M~j$f8Y3̦3ÁkVqf}$Y3>k/w<{]&nѾng|JGu^ٌwx9m58W3ܛVI594kPZu:X= &e?`\N-Umkk݊]Z(_ƚhׄ5rO >\Ɨ _w7ЛK|@ u D`+֌]&`-X+v+ڇiclZ&kP&W"u9{po }jƇj|ƯW*$nWVjj<ﳒϛ+lKתӆg՞E2Z0h4/cЭ1|xoTd0}+P={+eWf`GnQrb]oۢ H:OK9g)-}_PW:1R߈a[6!sMB~վS}>=8s1M_< zOA~=ކa(ZWӮ+o R zCu}oʰmz9is^!wm0>} )=&+B;th pCx}>>l3ØŇQ.B&:>Wg=uHkyz5Ck`kW)zc/`:_p)EwxĬwYڵ5Vsm%uhS i!\ʧ<W)puG%Lïpb-"mꝅo{T;Z5!`]ρhC67ҺИ6<OtAx0+܍ afM+EKAA+)}/@g]W3ǤXvJS/ Hb >j(b( 09A=vz(:ϜP,.uĒ4Ʈ֜ߊpƮ, gҨ:2VuA_iǮ;5HJ|c.,v b13wt׻|:iYcm)׆9/<2jmJ{#~tWSRŸ~!)H}Wk![^'̏ ]}U73`۰(nBҊ@}OURO%QbLAїnW=ŏK.Ko ۮԲ( ӂ<#.X/x&OwY{A=H#/U?oN+2v5fN܈5Šbc,}jN-ᐊ@{tle^-Ǯ&zu/:3ݰ޾SX9v1.[Pr^,K7M|34~Bob4EZq"Z䧾<+G+X'7uWGψݤt$J29^XH7tozbjn Z]Fj_bzcWkXўtEQ.xWcM7zUg2I|!kf\?5zR]WłN}|!u_hS3V@"u$Ǯ|GI`.X3cR'+yYԜ4dp^},R |C:|4-A*4#:Q3u(kh-ؕ}WcW*Ni͟Vg|+V+{=PѝVvSzrRXQv҈vXډ(/v]fy+-W7tޯtj ۦA ZBZѺA1 =H#*҈6DWkj mJ$5B׸ջEjIUt ׫%`ŪX:Rká.ׁA#uQƮjDtOeJ-X)h HS:lڊDGu,]5XSjmH__A=/挠?2vUѕpuLbhϤjqQb)9A/ okh4Tt5|5߾|UKWZw\:;xt1ZP,@+29@t6g!ډ^WS%--Gp2\4s2X ,*Pw%8TEjjPHՋ4cWgkMGץX`ɪvK7J@].JVZkj;Vٗ| /F~qʕUïjO{Jꑾ/L=/JQ]eLY+>?XzcҍDS9j_)[ %тiFk% ? h%}Uz'Fѡڗ/]eQ2`\ `ܐk4zj&'*ARTŸNQWuQ,X J%rʠ hf (z#{*v+/;k_kxȥXc0B1o|ʄU:a,Ye/E/yűHq,R)KJ~UTH7˩2ZO\XƢ,.Sz~t-t~u=~шV4D3Gݯ#r$uSPk־zZ]\NՆW.ONi_ k)[U\k+^6e`UH([Y\qV^$]E/NJ;A558^)筫.u .&A~Ve|X=nqјz)D&vP{b0UF+@A @\ p 9@vαi]kX\ԐǨov8qANsYb^]/~ 5U+Q,R\eKqniJWPgH"*ʔlIz7'ȥq<-.+F!WCa=B`ɜ11o'=Y~~>X,? GPa]vyBΏ rWdS. <*lʹYyG` `J3h﷞?߷&;ǸcF[Fr\o)~a-~3. X/ʷ=Xg/هu`C-:d=GYO&"垢lHJ_ /W89Y^+jYG}Wkex/-`!^ <*|e>X%GK2b~^rZ?"sd}u՝Wk_}ۇOb{2sGPzh^? mo؛v.8;h=며~Fc2$y(3zŗ—z+9e[JŜ=L/EY/ ;k򫈇;;ptm*X#ciAf8#Q=B0yK?bGr)qhr*}A=koJa-2z2'Ǟ> ptQ"~3 |4b>2HyG+(=YFyQ%T"y3Y[Tz(W(pKx+( Z7@WFpXb1ˌ_FS}px+z1q/ c״5Rڔ$Ʈgg376#*`C5% ' (EFbXdUķƂq@ {cۛԳ6Rޑ(cZG]ӓIJoG{=xnT}ѳlHJ%SgS'PkF~-6P~ <_}:.է ($OeI])>\NZ"n6]p#<_>p/y#(s8ŃΝ\NƮ; ,8+ {0mme}ab_UdڄU]?:{>Qh4dm־OwYwq{X֐^_AW(2=~)7se51XO>69ptVxK<=?=_M/&Ihӌ]AI?<5W+_]E5꫏ў (cW_=v=5J+}%&L1G-`Mz?&HEhƩ`1 %oR|1#v%n"a~Xn(`-ͭzwdO]$1ve2} =D=@SuEI Rns^?,Kz` ~3eTzqݕ\MYG}Wꏲ]]Fj5Ra K?{&Jv[-ҫ9JX!">|ad>@W9KtKbk?xG2v݋& ƠcЃ1h5K~ {K~29H}sF|۱vv&z'}&M@p'$Dzj?G+$]2݋F1&i=Xi( ox_i֍}ȍX&|_#UG:N"n}?ZqV ʻhPPc a''֭AzQ;Ltu:^,t$:SgW^Xn}%)^G=|G./0]Ch,4 Oj~X//H7{/]/ߵp^g,Kw]|Wz;#zO7 F׹Գ6P#zIGW/,GGz-%_!S~|i/~7Fj$U5zVpWh_|nMz~·pK8[7FZp3w+z06ȷ֛՗(G#+y(ӞmԷY^+FVX0봡ζEqE\s~a-G8jz/uv,tƦAZqeJ;N}rf"tk,˧U',H{#mGW2vj=p}lPcWo"KEv,?܁_ {=%&_W$$+!o_}W7]$aQ|C}\L.ч+m5lޢ/7`i*ZQ[aA6~%Ԝ6U_/f5zn#,4Jͩ%R템r\s_ Avߋުl yl;:Ӣ}hDGZVﴚq^SVMHS, 7G[9X-h:qo\[I=-՛h=)N|uX}տ.|c|C<}tb޿ +͸|CԾ$/tҾ]7sD_<};y# Uv}o+/e=۬)~ 46x !㯓r)q2"`9Wױ*IWܻS_W{#|}{nz}5RNjn&niwb{= ^7}'F[;`B/ZדhIP_߭MA濋:vwB`%VxmU_LyiCTO!?㭸v+ZQO+lE݂NFOn[UfICz{#y[`׀՜&ykDJ=־7o߈Гk-o}2^6%Q{[ӆmp,SU~~s㿍,v=(6.[iaM%Z17aZo=0~Ɠf\ϡvA3na 2?e7 Xމ 2 Jq0`7fz,Rǰ_qXG{H],-($FƼ@AՌ'-E%qf ZCIq*ol+[aWxn@-5I0n `<ƣmIGaB37z-5͇c|ƚw%cX#mIe =kVlO'\|q[Xԗ+(̱vV k_)F.8\Fmg1`l +30/ _y FDxbvRK4ud쥪v, Pq0( %U4yeAcvP16ޮ{%].]%AqPE@!]9NcroJ{;jc޸,?SX cFS 4u[ XhKvm҈4ʥQ> I4nkrh3|w`oKz t@4'n}nzαMX7u{^Ǻ.BY|{wKļy]Ӎ3/%W/" bwٵbC!hD[*v'}~~w~#ep ۛkZ DOWrT%*cN{zQZFt#%jXh'4Ê-( вX?n%"f:"A PtE,XJ}tJs~S6YmR9k }3gyb.̫/G˓Uï4J7?d__^O?ԡ?/_F'[ysm,3cl]n:ZѲ<l|'t]mmmJ|L6q -ʬBw%33| ( *p"e*2<(e@)=銓.0(kZl1e͠ZhﴎVؒ`Ôak_lK: G4CI0~e͆^/D8v }ߧI}0n>|[Qь? XKDovl#n;Kl=;.mQR3 X׌wfS(EƐy`5d41ƞ f9R9k$4|5r(?s1Zͧ)M5 Oad+=&QS [x(xccÔk= ql=zGǬk?Osl"DY~X 5XQk{ ̹RX MĭZ9W~ zf,z+[.g[2N!"D=E㔙@zcz^c۠1ު?b_W+B_V-SLaڑzQ{q(+,w+D,K_֫">˭`of͵wVYO7,'f =gۣ+9 -4ofu!<v3x6Ѣ1~?in΃qN{SQ0yZf{1F&j3P1Z4 ̓xοkl鸭@[ss)}r '0EqVʠbYM[ٌ֢XFX}6%Y-WkM Ef-t6XۭfJ:vS$hs-H0-Zԟ_G_973973jRth)pZ֦a" |H f>滒Тb:.Rњ_}'5b)Т"U=,(Xfm<y6FthQZTӭJ<:TT0%V6u?HBf;uF բh:Z΍">Z!_Holz}E_䱪˨mZ7m&9y2frVr[0-Vp QE)Z$)^Z4ũ5ҟ&sQTus4ϟ=pZ4שj΅qN=SQ0աHu*[bffޒZ4BaꖟhSטJ:j\́ iQU] P@,ѦuBku:3f2 E5ПP-lT MtX-6<:}Bs8l\,vYu>2Ś矎J(J(_.a]SꚒڇkb6ƇI-A%w;E1%n_ iWU 7 8mH:*D ]qp2:a3ǝjj]lhVVOYEj&IhN.~'7/#v_wL_s4Oyv<h8\g=0% ,}ڹ-i#kZ${Ѿ>6AFfc 3g;1SQDvO`N깿,ѦCkȁM=s-{#O֢FMt662J:ğ%ES=2Jd0/ѳyv6LE΍LZc)3S K3`6/*&s(=d5%Z]Z䱪hu)Q% ED)l:1$Z$36 KZ3sܨgH:ğ$hk\{~kڙ-}K?86p%0$28tiۊnTLg s~?[GN0΁OΟ 9'Db E?1#fyKBkzZEh d5g2+t>ppZgUԨQ,2KiZ:kQu::T&I:cs>[f9eH6.9ެZv;gEJg>Ōa~H?ɊHQ0Ffc|tN)f:_yJBk<_?9Q}B,~*X&: \zL'2+t>9 iQUX,Ѧ`Eq =b3٧}FeI`-*ve܃!Z$l-|5ҟU$N̪eo>~?]yߧ=cXI:j&251ZtY1|bXs%}H # \Dh-|AӜ'T(Ϊ@,Ѧ Eq C H֢>רEb/?MsRzKG_EgG|}cA~!dxk4a9vfܮ{T1Z4EqɗiT爑hLu>3$Odю(ΪT,2KZl{ O֢ a=6oH:Mѣբ2Ldz<(Θ}Ѣtiãq1/ƓD Lu9̎3#f[=}h-:_KۖoroqZ8cbP]$0]U,Ѧg{W2= } ީW%q{QeTDE+]bڟMB87]]g,Lduy0Dv]{ =7 ˯}l$_T"֢ɨufY/džIfO`N*2*D~Z67>rVgp`iҶZT5,n6arCaHl/ТGX "%#<wGE,VL`熤a"FlՈ1|bzy:Η/*CӢovԘALI:j iQUm-F,ѦGBkQfݵ' Y55&ӢjF5tXhH:mvk$ -?48J2QԹ5odl'861^[؎؎#v dyOFb3M!,Al0Lj*r9`soߪFjA}7?V}}iyrpo_0+NO;ughV EN{'(㎡NnCfpE!;?Lp%S\j֪uaܦY͝g/0{sՓ8 /ڤzQHums@LEoND4Hؤ6ڋ ۼMk]H٧h.@yTV+-sr[|4XC N[~xQhO@n/Q/S;16rexr{/ ^odlIwLnFEMhkʸd(&L>BOlE '6 j>Ifnq(1/ZrWG ~Jr_bxC#/@@֌:Ot{޴2hn/;iw󢩼ͻ߇7wzAFEJee\2]g/ 5kUw&\}Z*4$v"/ڮӁv@ļHj4ר[Vü8{#[h>/,Dc7;{ Yp8^$ӷ ?KuРM/>EsxdYjn^Q6KkًB͚@LnWx^t2C7BIzhMͧ)x5'R]X텟;`S>3봗q =h-qP'o"2 5#ϕ8^$g7'Mm{aUt'IwpO< YqDkn^Q-(68{QPىhv~Dר΋^/FWK<]h٠Sc ^47BO єLj iTmi_][q"8dUF/hZǵ^/-ۋZ mW'YWFoCfzOc"ogin^Q (pH3:Lj#Bk/߻Ο-$vjWnmh&^Dk#-U:; ~g?C|Ml/N}ah|As%^;{Q5/zѶzռ“8H}T͋" 2.fg/Ǝ#)x'q\2Lͱ~~ Y޵LٞĮ^T*#CLJ)x4^56%ERSΊ[ ~ouGqQE:[b+C|@ n0i/JuLǓ1.{PW]޸Oquy|NIӔLJHc~\fFuUoր2.iDo!dA"[¯+:ʄFNDV5:.Mg06*|0~ޤr>LJ{8$q1OZɄ]tt]9 ^Im)\]ڋryHcrTn4r7/z>(u"iJD3(^tyL($v"fOm)xQ.!1/*S;'aޗ)F@UV(nQ om$q1ɏX뺅h74J#EŒ˪͠MN̝K{Q 'pO0J$;&L#w󢈪mu@L`Pe$q\2KFA>W7Į^TaF&p ^T P`b^4FmΏ +>oaJP%~C$q1[mȌ^$DB67џxG@Euq\V5wmIhXS;I$hFE!UZm@EP>2xD4ʋZ{Qo NC+VĮ^$lSi ^TۡƾDh ~?Ԋ6oS^uw}fQ pOt&2c]~dB6wȺS<ijIU^4闻ݼ7P;ơcRqDnkn^QeqtMw;{QPD4{ڋz£{Km)H̀O)xQ!o yX~X٢/4}QN oی@EӭdFf jq?8^4S)+ Nz\n^ëpߊrxIwLhFEU?mv@LtE U-W'͕_΋:EOzpu#/P0uQ*޺4R٨ݼ?27`mIHcou"!*54ߧ"G74_ [{Q1oAbqcݼ(ҟ6+KkًDӠҟIxj"I>47| &hD<Ջ&R>ً'R]UV'[gg$dX4uO;Sv8[Ȫ d- } %E ߜl1hnӿ?(a^C yQDuP%5Efx -≉h&FaM,k/gmLy >Hu]n6BYuN"^NE [qP'_gAVe:DB6gI"xS UOn/'^x!IwLNe^Q'M (隮vPzV[h&?{jk/O'GzQe>M^NbOʋƨsMlXF/ZL ڋ^~t> B)ERQEavʠM W*g/Nz .|WP.ϡN;˘yQD2.iE 2~%Sfo^tYe@ 8Į^22OS\c\IDua=죯uݣn^F%K,Ȃ!B&DB6O: Lڋ.$CQya FJIZ]#y2h i$8miF]翊r@LtwEy~%౉h&?xoyڻ27Y!zuջDj>-HFd{+?u3?*v^hgwˣ<{mIw u9y7 "ӝG{b 5hn[ W\g/ᷩP[c"Fkn^Qehcʸd3(,/Z.ID3(W9iՋLSl(y\Hdr^cQ_9EU_R6,8,ȺӞM㗩~$qHjT4ӠM*YWFq t*ߒqD*ZJ4r7/JʸdSH44}Zh&RYaE>zQ:|[#)/ ñVN7 *h5pf3^T+}?OB| ы #ۋp GO5hn_ͺe̤J/H$(O#wJ-?KksU@s_@8$N‹$c[Q)xQ/F+%]HݽQg[/*z9:)/7ejEO6U_⻾2iO1!XoKOtwlȺ~; ǣEt{ v‰mPX3ً Na8O.q19 aET碽P%5؀FV$q\2'A-|e£3GzQ?Vg[/*} xR^$Wg1SpSqj]N*@ބCNudF2!\@$Niuҥ_vc*v.ȅãIc"-in^Q=P%5}ً"̈́fr_4oíD8Pa$ W'kOE9\ 5 S]ޗ(y_8w~7/*Ş[ ]<U*M`+h2!1Ht{TR=EߤyàM7e]\ڋ:'t}Yݼ(;EʸdU^i&TkD4!{ڋzÐ lZ6IEjot)EEpKq*j ~/"ZHK I:?yQ.v6pQ.N;k}CET#hʸd^i&Tgh&BOGVv h?FzQe>Eؿ8/:Y0g(kn괳i8F%#,Ȃ!Bր@Ȧ/q5I]Iۖ)4-ޥ֑kj:{Wi:m8` JwݯzWH?@@L״J;LjD4AwG. Į5\*e>Lrpl$]Rar<ü/U-*CRR ȡ$;:pjzrk/>q8'Oq0jn^QeP%5Ef@Z̷'u{NދFtq(ds3@ &C~+* l>t{G ߜoܦ ;?Њ'~.,q1jETѾP%5ً"̈́j>S"}Ϊ΋+4n(Q6u.-FDx.(2ܹvFy^AJ ĥwp俎ujVsLfΜY{ګּQfU6pb -ڤQx*5ؕLƽKyfodާ]I]FFEv54 NZDE gE܋ p(9y(!<4FAЈf;<Ɏݴ(xeR2ӧZ1qodT=O{ljѶduZ<.yKܗAj2G41)|ʹFc"&@Bk ɧϣ?E>2#TuOY] r7- ׄP&%3}:E>20%ydf9E֢wt֢?UE8&bhciwdVpGE} EE=v54 2&bsjCEq0õ:Pӛެ^;>,{h95\NA\P*lkE"OZ_Y]Ru|Ȭ 2_%DdZ-''<  C A2,}z~65s`!,}z~6$~p'x] tVՕ&m,\E塔bTr `S.J 5(u%c@$$$Ϊ3]ν7ɱ3~_9{gsr2}'900 ^ af5r3̳gRCb yKgϪ6EK/0Vr 1 .j7%hB3R6,*X_ze{6tVwO?f|ѯώ?_RCoI sgv.[{d9cv{]#^m ~pX _P4.)pc6,&ze4^#dkVgO}AfTt}%rs}eAPODOlju'c g>Lqg{/sd)ؗRҝ5Η5L֏a^ZZ*k\zeR~=lv^ L3S:|=~$_?7@T皧@6ɄM&#1ž#9!v0&>3s/iE:Ӯ 9r\cGXcy\2oq4cD^ղ*KKCKp3s C yw+#~Vw5xal&~+'~Uįo08>'~_=;Wh+$EV(WԿA / }6!?{LZoИvg9:f$k6Õ upɔoc|Ϥ`a,N$5 $3<(י$FMdKɨ`1>I2kIZ`T`$元${ޅMv&ɬY!H]P{Qr~$au$hQ8Ư5I6՚ RVH[wha>eGoOU&xB!D{74rO/`L$KY,>MoBa 3V,[Ob' ZE4[U81?]'t]Ik/$^_<RSc1@ӭWY5ica}{zalFv{=YߟZF5ř^dޟǗL}$b>,h~^QAɚҾ??+1FՌ&~ْuV9}÷K }K$nQd~rPaīIg*_T8w] )*)'~;dِ?9ɯnY1 #a|Tvv>|Mqdډ51dpWĺs,F  ]ΖgK ˑ#HkB] ^v??%k>zVk_uzaibѼ{/(xqQA[P42QWYu&} amE;;硌2d9v&gsp7wH3oR),eH :K۝~xEu}-mdқgӧPge{4-kNKoMoET3(rǤ}]v9Drgrغy<CQd@bwdZ9;myYqZe)]Z+5>5da Hr–VBX aD(FvaLu{ԆgY2uv^;׍-XOeޞ]z]..dd|KoK>٥7%қOvZ-d3,$laA &a-m!0a ksg|e_ Wsij:ۍ1!?y#- )K`,Ut^F#K d8e(%Oӹo yu;B_;|5H_S~߉P~$;ENy9%~w5o~ 5Կ'Z6 ~5D>1Kdus?(#q 2X#/^OWLXOQP 2Ƹn0U!_$TIvjίcƗ2A-4zJu&ɬ&HUF1U5, MY^8q0UįG4Ify Pa0(ZM5H$Y`TPǯ5IfEnaqyv ԫaI_{ =ӕ)d]x(y9YDZ7Xc9 V9 i~OBABuhh(2^"km#*6G3mTm%w;5iEIv0vZۍ3Q`p6c~ ݲ䮻PXTDkQ evgcLttd]w&PGZH(E1?]Fu_դ5H#VQQ`1?]Nuh[%'QVQ`1c~z]=(u4iՙɩXZ<11#u7VU,F,թ%4vM4G-z?mzQ@-1G5g:tɢ^eZT/dR¼vzd9A-۱}?Qj5e OWtqu`3܈ڸ&6~h:槫E:=hHkBswDFLrMQ`~:ӣƄVXe~dmlv+0?]=FX+Em,VW+0?]=}flxQ`-IN6N%^?3`gdm4kti#ٺc8ڨVϛhc㭝R}kg}s\:Mu CM{uwzh%\ŗeMzY\J/^\p=_7rBj\U$\ŗ6t=Ԉub 咭jP]P|YTY to3+;F$S]?ZHv3s1z$H{`1Fu}Y#YM3Ы1zl5^d'Ҟ18>QB?w,h>cvuoz$ kFvOΖoig;6k1ox>N Ad-`8iASϝCيlNd+fA6/,Ŏ:7ũn}ىQ/g_V.rċ k'G-|)q"as-;[W߄-Dc\b"G;/ &6ǭ̋l29"E9"=CEμ61d^ZLu^poqE^mE&a{W SSHNy '3/y); ʋĹ̋Aʣ[.]w^2Ьݫt;C<4od#}>wnUr) ,;fL~VwPFYeH#>n] Җ ѳaKk 8{y{9{]FII-,soA] Nw~Q`M^-[6̝smc-XXRn`˿`vm,<1=W*_#n+tIvAY*g}vop"~՞:|eH0._"}2ا->lvۿ[9ge~{#gw2&3NfYJ[5yX'aLSu.mISu=bObjInfoWorkbook46USummaryInformation(7DocumentSummaryInformation8                           ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~  ? @ Ba=   ==98X1aArial1aArial1aArial1aArial1saArial1saArial1aArial1saArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aCourier1*a MS Sans Serif1.aTimes New Roman1aArial1aHelv1aGeneva1.aTimes New Roman1.aTimes New Roman1aArial1.aTimes New Roman1aArial1*a MS Sans Serif1.aTimes New Roman1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1$aArial1 aArial1aArial1aArial1aArial1aArial1saArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1iaArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1daArial1aArial1daArial1UaArial1aArial1aArial1aArial1aArial1daArial1ZaArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial1aArial"$"#,##0_);\("$"#,##0\)!"$"#,##0_);[Red]\("$"#,##0\)""$"#,##0.00_);\("$"#,##0.00\)'""$"#,##0.00_);[Red]\("$"#,##0.00\)7*2_("$"* #,##0_);_("$"* \(#,##0\);_("$"* "-"_);_(@_).))_(* #,##0_);_(* \(#,##0\);_(* "-"_);_(@_)?,:_("$"* #,##0.00_);_("$"* \(#,##0.00\);_("$"* "-"??_);_(@_)6+1_(* #,##0.00_);_(* \(#,##0.00\);_(* "-"??_);_(@_) #,##0\K\B 0\K\B 0.0% 0.0000.0 0.0000000 0.000000 0.00000 0.0000 0.00000000 #,##0.0""\ #,##0;""\ \-#,##0!""\ #,##0;[Red]""\ \-#,##0"""\ #,##0.00;""\ \-#,##0.00'"""\ #,##0.00;[Red]""\ \-#,##0.00=8_ ""\ * #,##0_ ;_ ""\ * \-#,##0_ ;_ ""\ * "-"_ ;_ @_ .)_ * #,##0_ ;_ * \-#,##0_ ;_ * "-"_ ;_ @_ E@_ ""\ * #,##0.00_ ;_ ""\ * \-#,##0.00_ ;_ ""\ * "-"??_ ;_ @_ 61_ * #,##0.00_ ;_ * \-#,##0.00_ ;_ * "-"??_ ;_ @_ \+0\ 0""$"#,###.##\ ;\("$"#,###.##\) [Red]Generalm/d[Yellow]General 00000000 00000 yy/mm/d "$"#,##0.00 \ \ \ @ \ \ \ \ \ \ @#,##0,_);\(#,##0,\)0+_(* #,##0,_);_(* \(#,##0,\);_(* "-"_);_(@_)0_@\ \ \ \ \ \ \ \ \ \ \ @4/_(* #,##0.0_);_(* \(#,##0.0\);_(* "-"??_);_(@_)0+_(* #,##0_);_(* \(#,##0\);_(* "-"??_);_(@_)83_(* #,##0.000_);_(* \(#,##0.000\);_(* "-"??_);_(@_):5_(* #,##0.0000_);_(* \(#,##0.0000\);_(* "-"??_);_(@_) #,##0,\9\1#,##0.000\2\8!"$"#,##0.00;[Red]"$"#,##0.00 General_) 0000 000000hh:mm:ss\ AM/PM_) "$"0,000 "$"#,### "$"#,##0;6_("$"* #,##0.0_);_("$"* \(#,##0.0\);_("$"* "-"_);_(@_) 0.000% "$"#,##0.0_);\("$"#,##0.0\)=8_("$"* #,##0.0_);_("$"* \(#,##0.0\);_("$"* "-"??_);_(@_)94_("$"* #,##0_);_("$"* \(#,##0\);_("$"* "-"??_);_(@_)A<_("$"* #,##0.000_);_("$"* \(#,##0.000\);_("$"* "-"??_);_(@_)#,##0.0_);\(#,##0.0\)#,##0.000_);\(#,##0.000\)"$"#,\);\("$"#,##0\)"$"#,\);\("$"#,\)"$"#,;\("$"#,\)"$"#.;\("$"#,\) "$"#.#"$"#,##0.00_);\("$"#.##0\)"$"#.##0_);\("$"#.##0\)#,##0.0_);[Red]\(#,##0.0\)% "$"#,##0.0_);[Red]\("$"#,##0.0\)"#,##0.0_%\);[Red]\(#,##0.0%\) #,##0.0_%;[Red]\(#,##0.0%\)#,##0.0%;[Red]\(#,##0.0%\)#,##0.0%;\(#,##0.0%\) 0.0000% 0.00000%!#,##0.00%;[Red]\(#,##0.00%\) 0.0%;\(0.0%\) 0.000"%" 0.0"%""$"#,##0_);\("$"#,##0.0\) "$"#.##$"$"#,##0.000_);\("$"#,##0.000\)&!"$"#,##0.0000_);\("$"#,##0.0000\)2-_(* #,##0.0_);_(* \(#,##0.0\);_(* "-"_);_(@_)4/_(* #,##0.00_);_(* \(#,##0.00\);_(* "-"_);_(@_)61_(* #,##0.000_);_(* \(#,##0.000\);_(* "-"_);_(@_)""#,##0;\-""#,##0""#,##0;[Red]\-""#,##0""#,##0.00;\-""#,##0.00#""#,##0.00;[Red]\-""#,##0.0050_-""* #,##0_-;\-""* #,##0_-;_-""* "-"_-;_-@_-=8_-""* #,##0.00_-;\-""* #,##0.00_-;_-""* "-"??_-;_-@_-#,##0;[Red]\(#,##0\)2-_-* #,##0.0_-;\-* #,##0.0_-;_-* "-"??_-;_-@_-.)_-* #,##0_-;\-* #,##0_-;_-* "-"??_-;_-@_-#,##0.0;[Red]\(#,##0.0\)0.0%;[Red]\(0.0%\)#,##0;\(#,##0\)"SFr."#,##0;"SFr."\-#,##0#"SFr."#,##0;[Red]"SFr."\-#,##0$"SFr."#,##0.00;"SFr."\-#,##0.00)$"SFr."#,##0.00;[Red]"SFr."\-#,##0.00@;_ "SFr."* #,##0_ ;_ "SFr."* \-#,##0_ ;_ "SFr."* "-"_ ;_ @_ HC_ "SFr."* #,##0.00_ ;_ "SFr."* \-#,##0.00_ ;_ "SFr."* "-"??_ ;_ @_  #,##0.00;[Red]\(#,##0.00\)! #,##0.000;[Red]\(#,##0.000\)# #,##0.0000;[Red]\(#,##0.0000\) mmmm\-yy #,##0.0000_);\(#,##0.0000\)#,##0""_);\(#,##0""\)!#,##0""_);[Red]\(#,##0""\)"#,##0.00""_);\(#,##0.00""\)'"#,##0.00""_);[Red]\(#,##0.00""\)=8_ * #,##0_)""_ ;_ * \(#,##0\)""_ ;_ * "-"_)""_ ;_ @_ :5_ * #,##0_)__ ;_ * \(#,##0\)__ ;_ * "-"_)__ ;_ @_ E@_ * #,##0.00_)""_ ;_ * \(#,##0.00\)""_ ;_ * "-"??_)""_ ;_ @_ B=_ * #,##0.00_)__ ;_ * \(#,##0.00\)__ ;_ * "-"??_)__ ;_ @_ #,##0\ "F";\-#,##0\ "F"!#,##0\ "F";[Red]\-#,##0\ "F""#,##0.00\ "F";\-#,##0.00\ "F"'"#,##0.00\ "F";[Red]\-#,##0.00\ "F";6_-* #,##0\ "F"_-;\-* #,##0\ "F"_-;_-* "-"\ "F"_-;_-@_-83_-* #,##0\ _F_-;\-* #,##0\ _F_-;_-* "-"\ _F_-;_-@_-C>_-* #,##0.00\ "F"_-;\-* #,##0.00\ "F"_-;_-* "-"??\ "F"_-;_-@_-@;_-* #,##0.00\ _F_-;\-* #,##0.00\ _F_-;_-* "-"??\ _F_-;_-@_- d/m/yy d/m/yy\ h:mm #,##0" F"_);\(#,##0" F"\)#!#,##0" F"_);[Red]\(#,##0" F"\)$"#,##0.00" F"_);\(#,##0.00" F"\))#$#,##0.00" F"_);[Red]\(#,##0.00" F"\)$#,##0" $";\-#,##0" $"%#,##0" $";[Red]\-#,##0" $" &#,##0.00" $";\-#,##0.00" $"%' #,##0.00" $";[Red]\-#,##0.00" $" (d\.m\.yy) d\.mmm\.yy *d\.mmm +mmm\.yy,d\.m\.yy\ h:mm -0" " .0.00" " /0.0" "0 0.000" "1 0.0000" "2 0.00000" " 3hh:mm 4hh:mm:ss5 m/d/yy\ hh:mm60.00_);[Red]\(0.00\)70.000000000000000%80.00000000000000%90.0000000000000000%:0.0000000000000%;0.000000000000%<0.00000000000%= 0.0000000000%> 0.000000000%? 0.00000000%@ 0.0000000%A 0.000000%B.00                + )  & ) &  & ) &     &   & ) ) ) ) ) ) & ) &  ( +    (  ( + (   (   (  + + +             + + + + + + + + + + + + + + + + + + ( + ( , *   *    *      *    *  * * * * *   *  "  ,       ,        '   , , ,             , , , , , , , , , , , , , , , , ,   ,  7 "@ @ 8                                                                               Comma [0]_12~3SO2Comma [0]_Channel TableComma [0]_Full Year FY96Comma [0]_larouxComma [0]_laroux_1Comma [0]_laroux_1_12~3SO2Comma [0]_laroux_12~3SO2Comma [0]_laroux_2Comma [0]_laroux_2_12~3SO2Comma [0]_laroux_3Comma [0]_laroux_MATERAL2&!Comma [0]_laroux_mud plant boltedComma [0]_MACRO1.XLMComma [0]_MATERAL2 Comma [0]_mud plant bolted! Comma [0]_P&L"Comma [0]_Q1 FY96#Comma [0]_Q2 FY96$Comma [0]_Q3 FY96%Comma [0]_Q4 FY96&Comma [0]_QTR94_95' Comma [0]_r1(Comma [0]_Sheet1)Comma [0]_Sheet1_laroux*Comma [0]_Sheet4+ Comma_12~3SO2,Comma_Channel Table-Comma_Full Year FY96.Comma_Jim Pic.xls Chart 4/Comma_Jim Pic.xls Chart 50Comma_Jim Pic.xls Chart 61 Comma_laroux2Comma_laroux_13Comma_laroux_1_12~3SO24Comma_laroux_12~3SO25Comma_laroux_26Comma_laroux_2_12~3SO27Comma_laroux_38Comma_MACRO1.XLM9Comma_MATERAL2:Comma_mud plant bolted; Comma_P&L<Comma_PERSONAL'="Comma_PERSONAL_Jim Pic.xls Chart 4'>"Comma_PERSONAL_Jim Pic.xls Chart 5'?"Comma_PERSONAL_Jim Pic.xls Chart 6(@#Comma_PERSONAL_pictures.xls Chart 1)A$Comma_PERSONAL_pictures.xls Chart 10)B$Comma_PERSONAL_pictures.xls Chart 11)C$Comma_PERSONAL_pictures.xls Chart 12(D#Comma_PERSONAL_pictures.xls Chart 2(E#Comma_PERSONAL_pictures.xls Chart 3(F#Comma_PERSONAL_pictures.xls Chart 4(G#Comma_PERSONAL_pictures.xls Chart 5(H#Comma_PERSONAL_pictures.xls Chart 6(I#Comma_PERSONAL_pictures.xls Chart 7(J#Comma_PERSONAL_pictures.xls Chart 8(K#Comma_PERSONAL_pictures.xls Chart 9LComma_pictures.xls Chart 1 MComma_pictures.xls Chart 10 NComma_pictures.xls Chart 11 OComma_pictures.xls Chart 12PComma_pictures.xls Chart 2QComma_pictures.xls Chart 3RComma_pictures.xls Chart 4SComma_pictures.xls Chart 5TComma_pictures.xls Chart 6UComma_pictures.xls Chart 7VComma_pictures.xls Chart 8WComma_pictures.xls Chart 9X Comma_Q1 FY96Y Comma_Q2 FY96Z Comma_Q3 FY96[ Comma_Q4 FY96\Comma_QTR94_95 ]Comma_r1^ Comma_Sheet1_Comma_Sheet1_laroux` Comma_Sheet4abcCurrency [0]_12~3SO2dCurrency [0]_Channel Table eCurrency [0]_Full Year FY96fCurrency [0]_larouxgCurrency [0]_laroux_1"hCurrency [0]_laroux_1_12~3SO2 iCurrency [0]_laroux_12~3SO2jCurrency [0]_laroux_2"kCurrency [0]_laroux_2_12~3SO2lCurrency [0]_laroux_3"mCurrency [0]_laroux_3_12~3SO2nCurrency [0]_laroux_4!oCurrency [0]_laroux_MATERAL2)p$Currency [0]_laroux_mud plant boltedqCurrency [0]_MACRO1.XLMrCurrency [0]_MATERAL2"sCurrency [0]_mud plant boltedtCurrency [0]_P&LuCurrency [0]_Q1 FY96vCurrency [0]_Q2 FY96wCurrency [0]_Q3 FY96xCurrency [0]_Q4 FY96yCurrency [0]_QTR94_95zCurrency [0]_r1{Currency [0]_Sheet1|Currency [0]_Sheet1_laroux}Currency [0]_Sheet4~Currency_12~3SO2Currency_Channel TableCurrency_Full Year FY96!Currency_Jim Pic.xls Chart 4!Currency_Jim Pic.xls Chart 5!Currency_Jim Pic.xls Chart 6Currency_larouxCurrency_laroux_1Currency_laroux_1_12~3SO2Currency_laroux_12~3SO2Currency_laroux_2Currency_laroux_2_12~3SO2Currency_laroux_3Currency_laroux_3_12~3SO2Currency_laroux_4Currency_MACRO1.XLMCurrency_MATERAL2Currency_mud plant bolted Currency_P&LCurrency_PERSONAL*%Currency_PERSONAL_Jim Pic.xls Chart 4*%Currency_PERSONAL_Jim Pic.xls Chart 5*%Currency_PERSONAL_Jim Pic.xls Chart 6+&Currency_PERSONAL_pictures.xls Chart 1,'Currency_PERSONAL_pictures.xls Chart 10,'Currency_PERSONAL_pictures.xls Chart 11,'Currency_PERSONAL_pictures.xls Chart 12+&Currency_PERSONAL_pictures.xls Chart 2+&Currency_PERSONAL_pictures.xls Chart 3+&Currency_PERSONAL_pictures.xls Chart 4+&Currency_PERSONAL_pictures.xls Chart 5+&Currency_PERSONAL_pictures.xls Chart 6+&Currency_PERSONAL_pictures.xls Chart 7+&Currency_PERSONAL_pictures.xls Chart 8+&Currency_PERSONAL_pictures.xls Chart 9"Currency_pictures.xls Chart 1#Currency_pictures.xls Chart 10#Currency_pictures.xls Chart 11#Currency_pictures.xls Chart 12"Currency_pictures.xls Chart 2"Currency_pictures.xls Chart 3"Currency_pictures.xls Chart 4"Currency_pictures.xls Chart 5"Currency_pictures.xls Chart 6"Currency_pictures.xls Chart 7"Currency_pictures.xls Chart 8"Currency_pictures.xls Chart 9Currency_Q1 FY96Currency_Q2 FY96Currency_Q3 FY96Currency_Q4 FY96Currency_QTR94_95 Currency_r1Currency_Sheet1Currency_Sheet1_larouxCurrency_Sheet4  Header1 Header2Normal_12~3SO2 Normal_BidNormal_Certs Q2Normal_Certs Q2 (2)Normal_Channel TableNormal_Channel Table_1"Normal_Channel Table_1_Macro2#Normal_Channel Table_1_Module1Normal_Channel Table_2'"Normal_Channel Table_Channel Table Normal_Channel Table_Macro2!Normal_Channel Table_Module1Normal_Cost SummNormal_Focus goalsNormal_Full Year FY96Normal_Jim Pic.xls Chart 4Normal_Jim Pic.xls Chart 5Normal_Jim Pic.xls Chart 6 Normal_larouxNormal_laroux_1Normal_laroux_1_12~3SO2Normal_laroux_12~3SO2Normal_laroux_2Normal_laroux_3Normal_MACRO1.XLM Normal_Macro2Normal_MATERAL2Normal_Module1Normal_Module1_1Normal_Module5Normal_mud plant bolted Normal_P&LNormal_PERSONALNormal_PERSONAL_1(#Normal_PERSONAL_Jim Pic.xls Chart 4(#Normal_PERSONAL_Jim Pic.xls Chart 5(#Normal_PERSONAL_Jim Pic.xls Chart 6)$Normal_PERSONAL_pictures.xls Chart 1*%Normal_PERSONAL_pictures.xls Chart 10*%Normal_PERSONAL_pictures.xls Chart 11*%Normal_PERSONAL_pictures.xls Chart 12)$Normal_PERSONAL_pictures.xls Chart 2)$Normal_PERSONAL_pictures.xls Chart 3)$Normal_PERSONAL_pictures.xls Chart 4)$Normal_PERSONAL_pictures.xls Chart 5)$Normal_PERSONAL_pictures.xls Chart 6)$Normal_PERSONAL_pictures.xls Chart 7)$Normal_PERSONAL_pictures.xls Chart 8)$Normal_PERSONAL_pictures.xls Chart 9 Normal_pictures.xls Chart 1!Normal_pictures.xls Chart 10!Normal_pictures.xls Chart 11!Normal_pictures.xls Chart 12 Normal_pictures.xls Chart 2 Normal_pictures.xls Chart 3 Normal_pictures.xls Chart 4 Normal_pictures.xls Chart 5 Normal_pictures.xls Chart 6 Normal_pictures.xls Chart 7 Normal_pictures.xls Chart 8 Normal_pictures.xls Chart 9Normal_PROD SALES% Normal_PROD SALES by Region Pg 2Normal_PRODUCTNormal_Q1 FY96Normal_Q2 FY96Normal_Q3 FY96Normal_Q4 FY96Normal_QTR94_95 Normal_r1Normal_Req Summ Normal_Sheet1Normal_Sheet1_laroux Normal_Sheet4Normal_SummaryPercent_12~3SO2Percent_laroux8 ``i̜̙3f3333f3ffff333ff333f33f33BBB\Chart2ӝFigure2Figure3Figure45GFigure 5oFigure6Figure7Figure 8Figure 9*3CNT1ProfilesGrayDesktopV1AnalysisSummary.xlslaroux FIOStripingDriver AlignmentCaching (Writes)CachingWCEOverheadCPUTimeConfigurations (64k)Configurations (8k) ReadWritePaper-MultiBusPaper-MultiDisk Paper-OneDiskDataHeaderAnalysisSummaryYYYYYYYYYY Y Y Y ZL @@ @0@@@P@`@h@ZL QF@?=#F@/kJ$@$9x)@^̲S-@h.@mZ/@0@ZL ig¸?q?6(Aީ@gEl@@X#@M(@mL+@ZL {b@R@4->`@+#@hZ)@"S-@s&ն.@\%h#/@ZL wn?3@}/@i$75@_Z6@iB6@*=,7@߈o7@ZL  3?"?FN@ 51 @"LcX@~$%%@%۷ӡ,@xhP0@ZL  {IIN@}x@׈@q0u &@w0@!pd3@DqL˝3@e#?cuL@7&wz$@_7r&{)@߼kb-@:N/@auڡ/@C]PG0@ZL ńW@@l.z@d$T@/(@S!+@5y@mԿv@ZL <-N@1 NI@bX@E׏$@ bm5%@`.=&@F@'@`'@ZL $1'@r@$E@W##@lu5R'@Tu+@ŧ!-@Z /@ZL  {b@R@4->`@+#@hZ)@"S-@s&ն.@/@ZL ŰM@M;@H=Uw,@VH3@܍%2 @̛5~ow?'?/ۈ9z?ZL mdO@gD;`?@^U IP0@D|@? @x@ G=v??ZL 2P@X9׋K@@ C9:^1@;]N @(dsD@p D@R8DF?,f?ZL E8yN@@@Q1@$GH!@~$noD@^f@XU?1?) 2?ZL -CO@§>@|>H.@/A @7c@&rf@{E??h?ZL ꈦvP@S\@@mP:0@6@1Q@OC@GęS ?Vؖ۱g?ZL P@@@|u?1@ib{ @>hE@Q;@;`lu?7]?ZL  wP@y&@@@;.c1@0I @&?Ai?MNۤ?f^ ?O`@ 4H@(\4@|]"@ZL ig¸?q?6(Aީ@gEl@@X#@M(@3y-@ZL 0)?÷B@&h@p"@(H!'@37e+@;*@,-@ZL ,qE@a >@K%ؘ@-蟠!@?!%@۞A*@T3v,@gJ -@YY-CNT1ProfilesGrayDesktopV1SCSIredux.xlslaroux ReadWriteDriverWCEPaper-Alignment BufferCache BufCache2CostHowManyBuffers Paper-RAIDPaper-BufCache Paper-Cost Paper-OneDiskPaper-MultiDiskPaper-AllocateDataHeaderYYYYYYYYY Y ZL @@ @0@@@P@`@h@ZL 2_[h["@_ݴ"@? gt"@h8!@eYB"@ 3["@_1M@]@ZL  D@`=sh @ٷA @;/;Q @J2@ Ma^@iU|@iCg@ZL #EN@PB@z@waR@^q@宭@`x7@Vcy@ZL "K D@ X9@,1@G-@c2Uk+@O1@Լ|N.@/0@ZL #-6N@UvG@jq"A@гY%\6@): 5@): 5@|!8@<,oڀ>@ZL 'bM@ӣH@Q`ɯ@@s w7@-!K(5@Jwn6@7@s(\-@u@X9@&1?{?[d;""?ZL &:O@ v>@Hx@'/@nrww@Sㅈ@)\RUU@(?G?ZL AV?56!?+|?Pk6?Sㅈ? 033?t?!r033?ZL Z,y?J?eW½?p̺?:Ȗ??(?W-bff?ZL ?*iӹ? @'?.33?cff?9Ȗ?{?|/33?ZL !_e}?y?@'? ףPUU?;Ȗ?t?QUU?Sㅈ?ZL "?yX?vn?s(\?u?X9?&1̼?{?[d;""?ZL $&:? v?Hx@'?nrww?Sㅈ?)\RUU?(?G?Y ZL @@ @0@@@P@`@h@ZL +uR@ =!@Ŵ=޿!@+!@A{!@d,5J!@d,5J!@f!@ZL @T?DЎ?]>@??o91@?exS@ la@PxU@ZL bH砑@ƾ @#!@ I!@ɟµ!@ ɏ!@$!@89!@ZL  #V"@j-c@t$#@R@A[fwh@"߻@u p@2 4@ZL  ?a4)?-ːD?" [?Æ,[:@A,T @IT@Jo@ZL  \D|@"(@TW@Hq@@ج%g@/F@;uZ[3@Y YYY h          # AcctCodes;#" Address1Cell<" Address2Cell<Advance: CCCell: CityCell<CoCell: Code;+  code2;25 Conf;+! CountryCell: Date;+ Date2;25% Description;+& Description2;25  EmailName:EmpCell:EndDate: ' Entertainment;25 Exp2;25 Firm;25! Lodging;+ Meals;+! Mileage;+ Miles;+ Misc;+NameCell:OthAcct1:"OthAcct2:#OthTot1:"OthTot2:#! Persons;25 PostalCell< Purpose: Rate;+  rate2;25 RegionCell:  StartDate: SubTotExp:, & SummExpenses;#TotConf:, TotEntExp:6TotExp:.  TotLodging:,Totmeals:, TotMileage:,TotMiles:,TotMisc:, TotSummExp:$ TotTransp:,  Transp;+ U.S.;+ Version:z@GA       3  @@  4hIHQ Sheet_Titlereawd<0sT00~(DHwXw@wd0sT0#4~,4w#0sT04~ w0~#0sT04~`~~,`~~( 004~6~ QS0x000~`u~^n0$0 0000 Q-C:\NT1\ProfilVersionsppestop\V1\SCSIredux.xlsry.xlspHΝ08wlXw"w~RpT0#% {ǒQ4~#w~6~|#w~w4~6~~6~``u~w4~6~u~6~w/wC4~`~w~@,|0@B<@B~0RT0L@B`@Bu0AT0|0@B0@B620  "??3` t` \I` \I` \I` ` tB@*(  r  0b   @ S ]b PJ < 2 busses<3@xx  6c  @A?Q |]c Y $<1 Bus<?3d23 M NM4 3Q  ReadQ ; Q ; Q3_  MM  4E4 3Q WriteQ ;  Q ; Q3_  MM   d4E4 3Q  WCEQ ;  Q ; Q3_  MM  4E4 3Q  ReadQ ; Q ; Q3_  MM  N4E4 3Q WriteQ ; Q ; Q3_  MM   N4E4 3Q  WCEQ ; Q ; Q3_  MM  N4E4D$% M 3O&Q4$% M 3O&Q4FA 3Omk$ 3 bM[&43*9@@N#M&! M4% 7M 3Om&Q 0Request Size (K bytes)'4% QMZ3O]&Q &Throughput (MB/s)'4523  43" m3O=J% M3O&Q423 M NM4444% 8 CM:3O&Q 0One or Two SCSI Busses'44e@@@@@@@@@@@@ @ @ @ @ @ @0@0@0@0@0@0@@@@@@@@@@@@@P@P@P@P@P@P@`@`@`@`@`@`@h@h@h@h@h@h@ewn?3?{IIN@QF@?ig¸?{b@3@"?}x@=#F@q?R@}/@FN@׈@/kJ$@6(Aީ@4->`@i$75@ 51 @q0u &@$9x)@gEl@+#@_Z6@"LcX@w0@^̲S-@@hZ)@iB6@~$%%@!pd3@h.@X#@"S-@*=,7@%۷ӡ,@DqL˝3@mZ/@M(@s&ն.@߈o7@xhP0@e# \%   dMbP?_*+%"0{T0??U0 (  j^ ? # ] `\z  BNMM?!]`0  "0??3` >+` >+` & ` & ` hj` hj` hj4 P( 333 P P B?Q @AA? z ]?Q4 $<Write<4~~ P <?Q @AA? A]?Q| $<Read<4} P H<@Q @AA?%fF -]<@QԮ $ < Write +WCE<4D 3dI 23 M NM4 3Q WriteQ ;  Q ;  Q3_  NM ]  4E4 3Q  ReadQ ; Q ; Q3_  NM   4E4 3Q  Write + WCEQ ;  Q ;  Q3_  NM  x4E4D$% M 3O&Q4$% M 3O&Q4FA* : 3Oe 3 bN#M&43*@N#M& ! M4% jK3UM3O& Q 0Request Size (K-Bytes)'4% R,MZ3Ok& Q &Throughput (MB/s)'4523  43" 44%  vM:3OA&Q 6Out of the Box Throughput'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@e D@2_[h["@#EN@`=sh @_ݴ"@PB@ٷA @? gt"@z@;/;Q @h8!@waR@J2@eYB"@^q@ Ma^@ 3["@宭@iU|@_1M@`x7@iCg@]@Vcy@e z  BNMM??]`  "??3` >+` >+` r D ` r D ` j ` j` hj5` hj6f0TN(  T T B3Q @AA?j  ]3Qx $<Read<5} T H 4Q @AA?@a ] 4Q $<Write<63dr!23 M NM4 3Q  ReadQ ;"" Q ; Q3_  NM   4E4 3Q WriteQ ;## Q ; Q3_  NM ]  4E4 3Q  Write + WCEQ ;'' Q ; Q3_  NM  <4E4D$% M 3O&Q4$% M 3O&Q4FA J 3O 3 bN#M& 43*T@$@@N#M& ! M4% K%UM3O& Q 0Request Size (K Bytes)'4% N, MZ3O& Q 0Overhead (cpu msec/MB)'4523  43" % 3O$ X0% M3O&Q423 M NM4444% vM:3OA&Q 2Out of the Box Overhead'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@eK D@-6N@bM@ X9@UvG@ӣH@,1@jq"A@Q`ɯ@@G-@гY%\6@s w7@c2Uk+@): 5@-!K(5@O1@): 5@Jwn6@Լ|N.@|!8@7@`Q@@e >@   dMbP?_*+%"?? U@ (  |  BMNN?x <]ȸ  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+!` >+"` >+#` N /3d!H23 M NM4 3Q ST34371WQ ;  Q ;  Q3_ 33> NM ]  4E4 3Q ST15150WQ ;  Q ;  Q3_  NM ]  4E4D$% M 3O&#Q4$% M 3O&"Q4FAAH 3Oyp h 3 b#M43*@N#M! M4% : M 3O&!Q 0Request Size (K bytes)'4%  MZ3Ok&!Q &Throughput (MB/s)'4523  O43" 44% M M03O&/Q 8Unbuffered Read Throughput'44e@@@@ @ @0@0@@@@@P@P@`@`@h@h@e+uR@#V"@ =!@j-c@Ŵ=޿!@t$#@+!@R@A{!@A[fwh@d,5J!@"߻@d,5J!@u p@f!@2 4@e |  BMNN?x @ <]  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+$` >+%` >+&` v0 -` v0 .` %1` %v2PHP0(  3d},Y23 M NM4 3Q UltraQ ;  Q ;  Q3_  NM  4E4 3Q  WideQ ;  Q ;  Q3_  NM   4E4D$% M 3O&&Q4$% M 3O&%Q4FAO 3OE* 3 b#M&143*$@@N#M! M4% g M 3OG&2Q 0Request Size (K bytes)'4% 5MZ3Ow&$Q &Throughput (MB/s)'4523  O43" (3O~% M3O&-Q4444% M M03O&.Q :Unbuffered Write Throughput'44e@@@@ @ @0@0@@@@@P@P@`@`@h@h@e@T??DЎ?a4)?]>@?-ːD??" [?o91@Æ,[:@?exS@A,T @ la@IT@PxU@Jo@e |  BMNN? px <]  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+'` >+(` >+)` 0 03dlZL23 M NM4 3Q UltraQ ;  Q ;  Q3_  NM ] 4E4 3Q  WideQ ;  Q ;  Q3_  NM ]  4E4D$% M 3O&)Q4$% M 3O&(Q4FA{+ q 3OT4 3 b#M43*@N#M! M4% U M 3OD&'Q 0Request Size (K bytes)'4%  M Z3Ok&'Q &Throughput (MB/s)'4523  O43" 44% M M03O&0Q F!Unbuffered Write Throughput (WCE)'44e@@@@ @ @0@0@@@@@P@P@`@`@h@h@ebH砑@\D|@ƾ @"(@#!@TW@ I!@Hq@ɟµ!@@ ɏ!@ج%g@$!@/F@89!@;uZ[3@e |  BNMM?!<]`8  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` N R` >+S` >+T` >+U` YN`86(  8x 8 6L)Q @A?"*]L)Q $ < Ultra Read<YC 4<~~ 8 <Q @A?d ]Q $ < Fast Read<Y? xx 8 6Q @A?8 O]QT $ < Ultra Write<YD xx 8 60Q @A? > 0y ]0Q $ < Fast Write<Y@ @п3d23 M NM4 3Q ST34371WQ ;  Q ;  Q3_ 33> NM ]  4E4 3Q ST15150WQ ;  Q ;  Q3_  NM ]  4E4 3QQ ; Q ;  Q3_  NM   43_  NM   4E4 3QQ ;  Q ;  Q3_ # NM  43_  NM  43_  NM  43_  NM  43_  NM  43_  NM  43_  NM  43_  NM  4E4D$% M 3O&UQ4$% M 3O&TQ4FAY 3OdP 3 b#M43*@N#M! M4% e;M 3O&SQ 0Request Size (K bytes)'4% qCMZ3Ok&SQ &Throughput (MB/s)'4523  43" 44% KGM03O&RQ .Unbuffered Throughput'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@e+uR@#V"@@T?? =!@j-c@DЎ?a4)?Ŵ=޿!@t$#@]>@?-ːD?+!@R@?" [?A{!@A[fwh@o91@Æ,[:@d,5J!@"߻@?exS@A,T @d,5J!@u p@ la@IT@f!@2 4@PxU@Jo@e |  BNMM? !<]`  "??3`  ` >+V` >+W` >+X` Zp<(  <~ < <<"Q @A?U U]<"QPŢ $<Fast Write WCE<Zbar~~ < <DQ @A?TD]DQŢ $<Ultra Write WCE<ZfLtrr < 0Q  @C]QƢ  <!WCE Unbuffered Wirte Throughput <  3d23 M NM4 3Q UltraQ ;  Q ;  Q3_  NM ] 4E4 3Q  WideQ ;  Q ;  Q3_  NM ]  4E4D$% M 3O&XQ4$% M 3O&WQ4FA - | 3OtU 3 b#M43*@N#M! M4% 5g9M 3O3&VQ 0Request Size (K bytes)'4% =M Z3Ok&VQ &Throughput (MB/s)'4523  43" 444e@@@@ @ @0@0@@@@@P@P@`@`@h@h@ebH砑@\D|@ƾ @"(@#!@TW@ I!@Hq@ɟµ!@@ ɏ!@ج%g@$!@/F@89!@;uZ[3@e >@   dMbP?_*+%"??/U ( GM  v  <MNN?xZ]Xˢ  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+9` >+I` >+J` >+K?3d23 M NM4 3Q  ST34371W, ReadQ ; Q ; Q3_4E4 3Q  ST15150W, ReadQ ;!! Q ; Q3_4E4 3Q "ST34371W, WriteQ ; Q ; Q3_4E4 3Q "ST15150W, WriteQ ;"" Q ; Q3_ f3< NM  f3<Nd4E4 3Q  ST34371W, WCEQ ; QQ3_4E4 3Q  St15150W, WCEQ ;$$ QQ3_4E4D $% M 3O&KQ4$% M 3O&JQ4FA3OcO 3 b#M43*#M! M4% e wM3Ov&IQ ,Request Size (bytes)'4% zeMZ3Oj&IQ &Cost (ms/request)'4523  O43" , H3O, % M3OQ4444% G}M03O&9Q >Single Disk - CPU per Request'44ee?&:?*iӹ? v? @'?Hx@'?.33?nrww?cff?Sㅈ?9Ȗ?)\RUU?{?(?|/33?G?e n^   #  ]  `̢z   BMNN?:]̢  "??3` I,` 3` IL` >+P` >+Q` $C`` Rd(  ~  <Q GH @ &]`QϢ (<)cpu idle because non-WCE writes so slow<, (3dg>F23 M NM4 3Q  ST34371W, ReadQ ; Q ; Q3_  NM   4E4 3Q  ST15150W, ReadQ ;  QQ3_  NM  N4E4 3Q "ST34371W, WriteQ ; QQ3_  NM  N4E4 3Q  Fast WriteQ ;  Q ; Q3_ f3< NM  f3<Nd4E4 3Q "Ultra WCE writeQ ; QQ3_  NM  4E4 3Q  ST15150W, WCEQ ;  QQ3_ % NM  %N4E4D$% M 3O&QQ4$% M 3O&PQ4FA. \ 3Oa3 b#M&343*MbP?N #M&3! M4% r.M 3Om&dQ 0Request Size (K bytes)'4% |rM Z3O6&`Q  Cost (CPU%)'4523  43" 44% 1M:3O[&LQ "CPU Utilization'44e@@@@ @ @0@0@@@@@P@P@`@`@h@h@eW!8,?| ?3"f䩋?;?aB? DO?UW?Op?;?*A?Yx?|ܰ??1䌷?H c?%έ?7G8;?B0.?!'?"?QHRU?Ga?kĚ8? Vצ?Ph͢?!@?ŗ7|߇?KD?Т?p* 8?v @?18Iǐ?Չo?N$y?LQD.?FO~ /?_ օ?:9 ?̯(u 1?`[u?kD3]?h̿?(N?kL{?0u|?@C0x?9??^κy?e z   BNMM?9E]`Ң  "??3` 4%*` 4%+` -IM` >+[` >+\` gc` e3d&_S23 M NM4 3Q  ST34371W, ReadQ ; Q ; Q3_4E4 3Q  ST15150W, ReadQ ; Q ; Q3_4E4 3Q "ST34371W, WriteQ ; QQ3_  NM  Nd4E4 3Q "ST15150W, WriteQ ; QQ3_ f3< NM  f3<Nd4E4 3Q  ST34371W, WCEQ ; QQ3_4E4 3Q  ST15150W, WCEQ ; QQ3_ % NM  %Nd4E4D$% M 3O&\Q4$% M 3O&[Q4FA@5 n 3O|3 b#M&e43*.N#M&*! M4% r .M 3O7m&cQ 0Request Size (K bytes)'4% _kM Z3O*!@&+Q  Cost (ms/MB)'4523  43" 44%  M:3O&MQ 2CPU milliseconds per MB'44e@@@@ @ @0@0@@@@@P@P@`@`@h@h@eAVL@_e}M@Z,yM@?yXM@I@&:O@56!;@y<@J<@vn>@*i9@ v>@+|-@@',@eW-@s(\-@ @'.@Hx@'/@Pk6@ ףPUU@p@u@.33@nrww@Sㅈ@;Ȗ@:Ȗ@X9@cff@Sㅈ@ 033@t@@&1?9Ȗ@)\RUU@t?QUU?(?{?{?(?C?Sㅈ?:Ȗ?[d;""?m?G?e z   BNMM?<]`Ӣ  "??3` F#N` IO` >+]` >+^` >+_` F#b3dF23 M NM4 3Q  Fast ReadQ ; Q ; Q3_4E4 3Q  Ultra ReadQ ;!! QQ3_4E4 3Q  Fast WriteQ ; QQ3_  NM  Nd4E4 3Q  Ultra WriteQ ;"" QQ3_ f3< NM  f3<Nd4E4 3Q "Ultra Write WCEQ ; QQ3_ f3< NM  f3<Nd4E4 3Q  Fast write WCEQ ;$$ QQ3_ % NM  Nd4E4D$% M 3O&_Q4$% M 3O&^Q4FA @ 9 3OT3 b#M&N43*???NB#M&N! M4% ra.M 3Om&bQ 0Request Size (K bytes)'4%  ]\M Z3O5j&]Q &Cost (ms/request)'4523  43" kRD3OgWrw% M3O&aQ423 M NM4444%   M:3O&OQ <CPU milliseconds per Request'44e@@ @0@@@P@`@h@eAV?_e}?Z,y??yX??&:?56!?y?J?vn?*iӹ? v?+|?@'?eW½?s(\? @'?Hx@'?Pk6? ףPUU?p̺?u?.33?nrww?Sㅈ?;Ȗ?:Ȗ?X9?cff?Sㅈ? 033?t??&1̼?9Ȗ?)\RUU?t?QUU?(?{?{?(?!r033?Sㅈ?W-bff?[d;""?|/33?G?e  >@   dMbP?_*+%"??dU (  j^  #  -] `(٢z  BMNN?]٢  "??3` j:` r D;` >+<` >+=` j>` r D?` H3dr;23 M NM4 3Q Read FSQ ; "" Q ;  Q3_  NM ]  d4E4 3Q Write FSQ ; ## Q ;  Q3_  NM ]  d4E4 3Q  Write FS + WCEQ ; '' Q ;  Q3_  NM ] d43_  NM ] d43_  NM ] d43_  NM ] d43_  NM ] d4E4 3Q writeQ ; QQ3_  NM  N43_  NM  N4E4 3Q writeQ ; QQ3_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d43_ $ NM  $$d4E4D$% M 3O&=Q4$% M 3O&<Q4FA;} 3O 3 bN#M&>43*N@$@@N#M&?! M4% M SM3Oc&HQ 0Request Size (K Bytes)'4% f MZ3Ok&;Q 0Overhead (cpu msec/MB)'4523  43" 44% 3 hM:3O9y&:Q 2Out of the Box Overhead'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@eK D@-6N@bM@?yXM@Z,yM@ X9@UvG@ӣH@vn>@J<@,1@jq"A@Q`ɯ@@s(\-@eW-@G-@гY%\6@s w7@u@p@c2Uk+@): 5@-!K(5@X9@:Ȗ@O1@): 5@Jwn6@&1?@Լ|N.@|!8@7@`Q@@[d;""?:Ȗ?e z  BNMM?]`Dۢ  "D??3` hj@` &A` >+B` >+C` hjD` &E`  GPH 0(   z3d%23 M NM4 3Q  Write WCEQ ;  Q ;  Q3_  NM ] N4E4 3Q  ReadQ ;  Q ;  Q3_  NM ]  N4E4 3Q  FS Write + WCEQ ;  Q ;  Q3_  NM ]  x4E4 3Q WriteQ ;  Q ;  Q3_ $ NM ] $N43_ $ NM ] $N4E4 3Q FS ReadQ ; Q ; Q3_  NM ]  x4E4 3Q FS WriteQ ;  Q ;  Q3_ 3ff9 NM ] x4E4D$% M 3O&CQ4$% M 3O&BQ4FApS 3O b3 bN#M&D43*@N#M&E! M4% OM'SM 3O0d&GQ 0Request Size (K-Bytes)'4% MZ3Oe&AQ &Throughput (MB/s)'4523  43"  ?K3O CE% M3O&FQ423 M NM4444% }M:3O&@Q 6Out of the Box Throughput'44e@@@@@@@@@@@@ @ @ @ @ @ @0@0@0@0@0@0@@@@@@@@@@@@@P@P@P@P@P@P@`@`@`@`@`@`@h@h@h@h@h@h@ebH砑@+uR@#EN@@T?2_[h["@ D@ƾ @ =!@PB@DЎ?_ݴ"@`=sh @#!@Ŵ=޿!@z@]>@?? gt"@ٷA @ I!@+!@waR@?h8!@;/;Q @ɟµ!@A{!@^q@o91@eYB"@J2@ ɏ!@d,5J!@宭@?exS@ 3["@ Ma^@$!@d,5J!@`x7@ la@_1M@iU|@89!@f!@Vcy@PxU@]@iCg@e >@    dMbP?_*+%" ?? U` 8(  |  BNMM?]`ߢ  "??3` >+f` >+g` >+h` :i` :m` :p(  ~  <o GlHp @  ]`o <Bogus<i 3db5A23 M NM4 3Q 1 BufferQ ;  Q ; Q3_  NM ]  4E4 3Q  3 BuffersQ ;  Q ; Q3_  NM ] 4E4 3Q  8 BuffersQ ;  Q ; Q3_  NM ]  4E4D$% M 3O&hQ4$% M 3O&gQ4FAyub  3OV%3 b#M&m43*$@@N#M&m! M4% *M 3Ob&fQ 0Request Size (K bytes)'4% NM Z3O2Q&fQ &Throughput (MB/s)'4523  43" 44% Nv M:3O1&&pQ r7 Read Throughput - 1 Fast Disk, Various Request Depths'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@e#V"@ ڢ@/ETa@j-c@s\@@*@t$#@KFX@8C@R@n5@~6Z@A[fwh@B @@"߻@Ċm^@@u p@.@{}q!@'2 @3D@;D%@e |  BNMM? ]`4  "4??3` >+j` >+k` >+l` Xn` Xo`  q 3d6PT23 M NM4 3Q  WCEQ ; Q ; Q3_  NM  Nd43_  NM  Nd4E4 3Q  8 BuffersQ ; Q ; Q3_  NM   4E4 3Q  3 BuffersQ ; Q ; Q3_  NM  4E4 3Q 1 BufferQ ; Q ; Q3_  NM   4E4D$% GM 3O&lQ4$% GM 3O&kQ4FAD 3O>m 3 b#M43*$@@N#M! M4% M3Ob&jQ 0Request Size (K bytes)'4% & MZ3OQ&qQ &Throughput (MB/s)'4523  43" V[3O% GM3O&oQ4444% XZ M03O&&nQ r7Write Throughput - 1 Fast Disk, Various Request Depths'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@e\D|@Ilpo?%O??"(@%;@'ݧ?a4)?TW@_c@k@-ːD?Hq@T7@Z@" [?@1DH@n(1@Æ,[:@ج%g@mV?@\L-@A,T @/F@ e|샂@̋@IT@pn6@MB@JB@9ͮe^@e >@   dMbP?_*+%"??uU(  j^ 9 #  i] `z  BMNN?^9]`  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+r` >+s` >+t` 8|` }3dO^H023 M NM4 3Q  WCEQ ; Q ; Q3_  NM  N43_  NM  N4E4 3Q  3 BuffersQ ; Q ; Q3_  NM  4E4 3Q  8 BuffersQ ; Q ; Q3_  NM   4E4 3Q 1 BufferQ ; Q ; Q3_  NM   4E4D$% M 3O&tQ4$% M 3O&sQ4FAjw 3O 3 b#M&|43*4@@N#M&|! M4% {Y%M3Om&rQ 0Request Size (K bytes)'4%   M Z3OY&rQ &Throughput (MB/s)'4523  43" 3O % M3OQ4444% 4! M:3O&&}Q b/Write 4 Disk Stripes Throughput vs Requst Depth'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@e,qE@ig¸?0)?x>?a >@q?÷B@Ai?K%ؘ@6(Aީ@&h@MNۤ?-蟠!@gEl@p"@f^ ??!%@@(H!'@O`@۞A*@X#@37e+@ 4H@T3v,@M(@;*@(\4@I*:.@mL+@UF.+@:eK@e z  BMNN?]9]  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` >+u` >+v` kXw` x` Vy` z` {(  ~  <, GH& @ rc]`, <Bogus<w 3dVg723 M NM4 3Q  8 BuffersQ ; Q ; Q3_  NM   4E4 3Q  3 BuffersQ ;  Q ; Q3_  NM  4E4 3Q 1 BufferQ ;  Q ; Q3_  NM   4E4D$% M 3O&vQ4$% M 3O&uQ4FAY 3Ok*3 b#M&{43*4@@N#M&y! M4% YM 3Ob&zQ 0Request Size (K bytes)'4%  aM Z3O+Q&zQ &Throughput (MB/s)'4523  43" 44% ! M:3O&&xQ b/Read 4 Disk Stripes Throughput vs Requst Depth'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@e`F 3@QF@?iO?s[ @=#F@ k @I[.*%@/kJ$@5q@./*@$9x)@3n@%Z.@^̲S-@ͫ"@_'0@h.@ᰄ%@(鐷j1@mZ/@t˧<)@;7@0@2 v,@e >@   dMbP?_*+%"??rU  (  d^   #  ]  `z  BMNN?]  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` =~` >+` >+` >+3dTT23 M NM4 3Q 1 DiskQ ; Q ; Q3_4E4 3Q 2 DisksQ ; Q ; Q3_  NM  d4E4 3Q 3 DisksQ ; Q ; Q3_  NM  d4E4 3Q 4 DisksQ ; Q ; Q3_ NM   d4E4D$% M 3O&Q4$% M 3O&Q4FA r 3O 3 b#M43*4@@N#M! M4% [_ AM 3O`&Q 0Request Size (K bytes)'4% .SM Z3OP&Q &Throughput (MB/s)'4523  43" 53O+?;% M3O&aQ423 M NM4444% r M:3O&~Q R'Read Throughput vs Stripes 3 deep Fast'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@eJ\@, @{/d ~?7~f>?/IY)@9ή@Osp@cuL@罵@DfC#@1\q%@7&wz$@)LzO@E&@c)@_7r&{)@۵0C @!oM-(@$~e-@߼kb-@`Jkc@! (@(,/@:N/@|kIc0@}n)@ES-@auڡ/@[~HJ@@u+@e6ݣ.@V30@e z  BMNN?]  M\\BARCSUP\HP1W odXLetterPRIV''''"dX??3` ! ` >+` >+`  ` t` N [3dV23 M NM4 3Q 1 DiskQ ; Q ; Q3_4E4 3Q 2 DisksQ ; Q ; Q3_  NM  d4E4 3Q 3 DisksQ ; Q ; Q3_  NM  d4E4 3Q 4 DisksQ ;  Q ; Q3_ NM   d4E4D$% M 3O&Q4$% M 3O&Q4FAW  3OA 3 b#M&43*4@@N#M&! M4% J VM 3O6b&Q 0Request Size (K bytes)'4% M Z3O.Q&Q &Throughput (MB/s)'4523  43" 44% V M03Oj&Q H"Write MBps vs Stripes 3 deep Fast'44e@@@@@@@@ @ @ @ @0@0@0@0@@@@@@@@@P@P@P@P@`@`@`@`@h@h@h@h@eńW@<-N@$1'@{b@@1 NI@r@R@l.z@bX@$E@4->`@d$T@E׏$@W##@+#@/(@ bm5%@lu5R'@hZ)@S!+@`.=&@Tu+@"S-@5y@F@'@ŧ!-@s&ն.@Ld@OG'@e?9+@\%h#/@e z  BMNN?]  "??3` e c` ` >+` >+` >` j` ,F3d$!23 M NM4 3QQ ; Q ; Q3_4E4 3QQ ; Q ; Q3_4E4 3QQ ; Q ; Q3_4E4 3QQ ; Q ; Q3_4E4 3QQ ; Q ; Q3_4E4 3QQ ; Q ; Q 3_  NM  d4E4 3QQ ; Q ; Q 3_  NM  d4E4 3QQ ; Q ; Q 3_ ` NM  $$d4E4D$% M 3O&Q4$% M 3O&Q4FAu~ 3Op$ 3 b#M&43*@??0#M&! M4% L ?M 3O;Y&Q ,Request Size (bytes)'4% yM Z3OIN&Q $Cost (CPU ms/MB)'4523  43" 44% \U ~M03Ow&Q 2CPU miliseconds per MB '44e@@@@@@@@@@@@@@@@ @ @ @ @ @ @ @ @0@0@0@0@0@0@0@0@@@@@@@@@@@@@@@@@P@P@P@P@P@P@P@P@`@`@`@`@`@`@`@`@h@h@h@h@h@h@h@h@eŰM@mdO@2P@E8yN@-CO@ꈦvP@P@ wP@M;@gD;`?@X9׋K@@@@§>@S\@@@@y&@@@H=Uw,@^U IP0@ C9:^1@Q1@|>H.@mP:0@|u?1@;.c1@VH3@D|@;]N @$GH!@/A @6@ib{ @0I @܍%2 @? @(dsD@~$noD@7c@1Q@>hE@&@    dMbP?_*+%" ??U (   v   <NMM?<]`@   "@ ??3` t` \I` \I` \I` t` B *( |̜ r  0G   @ L ]G 8 < 2 busses<3@xx  6G  @A?  ]G T: $<1 Bus<0@0@?3d23 M NM4 3Q  ReadQ ; Q ; Q3_  MM  4E4 3Q WriteQ ;  Q ; Q3_  MM   d4E4 3Q  WCEQ ;  Q ; Q3_  MM  4E4 3Q  ReadQ ; Q ; Q3_  MM  N4E4 3Q WriteQ ; Q ; Q3_  MM   N4E4 3Q  WCEQ ; Q ; Q3_  MM  N4E4D$% M 3O&Q4$% M 3O&Q4FA   3O3 bM[&43*9@@N#M&! M4% yM 3O&Q 0Request Size (K bytes)'4% "MZ3Ok&Q &Throughput (MB/s)'4523  43" C]$3OD=J% M3O&Q423 M NM4444%  (2M:3O&Q 0One or Two SCSI Busses'44e@@@@@@@@@@@@ @ @ @ @ @ @0@0@0@0@0@0@@@@@@@@@@@@@P@P@P@P@P@P@`@`@`@`@`@`@h@h@h@h@h@h@ewn?3?{IIN@QF@?ig¸?{b@3@"?}x@=#F@q?R@}/@FN@׈@/kJ$@6(Aީ@4->`@i$75@ 51 @q0u &@$9x)@gEl@+#@_Z6@"LcX@w0@^̲S-@@hZ)@iB6@~$%%@!pd3@h.@X#@"S-@*=,7@%۷ӡ,@DqL˝3@mZ/@M(@s&ն.@߈o7@xhP0@e#@ @Th  Jim Gray  Jim Gray Microsoft Excel@?ռ՜.+,D՜.+,D PXl t|  Microsoftt2   Figure2Figure3Figure4 Figure 5Figure6Figure7 Figure 8 Figure 9Chart2  WorksheetsCharts 6> _PID_GUIDAN{CECA7635-4128-11D1-AE3B-0080C7F3EC95} FMicrosoft Excel ChartBiff8Excel.Sheet.89q_937943579A1< FH(ƾ1d(ƾOle PRINT9; ?CompObjb  *   ''   Arial !w*wgw - Arial !w*wgw -- Arial !w*wgw  --- Arial -!w*wgw - - Arial !w*wgw  -----"System  -'- -- !!-- -'--- - - $GGG--- -'-- - CYe e++GG-- -'-- - Y- G GG-- -'-- -  - G -ee++GG-NNqq''-- -'-- - !!-- -'-- - *-- -'-- - *=-  -  $MjM%0M-- -'-- -  * $ -- -'-- -  *  $7-- -'-- -  */_ $o"?o\R?o"-- -'-- -  *; $&.CK&h K&.-- -'-- -  * $;-- -'-- -  *+ $;Xu;-- -'-- -  * 8 $He0HM+0H-- -'-- -  *= Cj 0-- -'-- -  *  -- -'-- -  *P }C-- -'-- -  *_ R-- -'-- -  * C -- -'-- -  * -- -'-- -  * u-- -'-- -  *{8 en+-- -'-- -  *0=-  `m"/-@M#0@M]j@M]0@M#j-- -'-- - *- #-  -- -'-- - *[- M-kNkkkN-- -'-- - *_- Q-oRooRo-- -'-- - *- F-& &C& &C-- -'-- - *- --- -'-- - *- t-uu-- -'-- - *T8- hF*-dHG+dHedH+dHGe-- -'-- - *-  - =   /_/_;;++ 8- =PP__{8- 0=[[__T8=--  $=Z= =-- -'---  * $-- -'---  *  $ ' -- -'---  */_ $_|/_LB/_-- -'---  *; $3;X;-- -'---  * $+-- -'---  *+ $+He+-- -'---  * 8 $8U 8= 8-- -'---  *=- -  3Z -- -'-- - * -- -'-- - *P m3-- -'-- - *_ |B-- -'-- - * 3-- -'-- - * -- -'-- - * e-- -'-- - *{8 U^-- -'-- - *0=-  - P]-0= 0=MZ0=M 0=Z-- -'-- - *- --- -'-- - *[- {=-[>[x[x[>-- -'-- - *_- A-_B_|_B_|-- -'-- - *- 6-33-- -'-- - *- --- -'-- - *- d-ee-- -'-- - *T8- tX6-T87T8qUT8qT87U-- -'-- - *-- -'-- - *-- -'-- - ----- -'-- - 8U *2 jOut of the Box Overhead<///+8/+<)+/++/--- -'-- - -- -'-- - --- -'-- -   2 0 2 L10 2 20 2 h30 2 40 2 50 2 60 2 70 2 .80-- -'-- - --- -'-- -   2 020 2 40 2 80 2 E16 2 32 2 64 2 [128 2 192-- -'-- - ----- -'-- - E (2 PRequest Size (K Bytes)    --- -'-- - ---- -'-- - H  Arial !w*wgw - 2 ROverhead (cpu msec/MB)- --- -'-- - -- -  Y-- -'---  Z-- -'---  Z-  I - - $ 2 sRead6***-- -'-- - Z-- -'-- - Z- I - -  42 WriteK*-- -'---  Z-- -'---  Z-  I - - -2 | Write + WCEK*,K62-- -'-- - Z-- -'-- - -- -'-- - - -   !!-- '  '  'ObjInfo:>Workbook 6OlePres000=? \XSummaryInformation(@                         ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > A Z C D E F G H I J K L M N O P Q R S T U V W X Y \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v y z { | } ~  Ba= =x8X1HArial1HArial1HArial1HArial1sHArial1sHArial1HArial1sHArial1HArial1HArial1HArial1HArial1HArial1HArial1HArial1HArial1HArial1HArial1HArial1HArial1sHArial1HArial1HArial"$"#,##0_);\("$"#,##0\)!"$"#,##0_);[Red]\("$"#,##0\)""$"#,##0.00_);\("$"#,##0.00\)'""$"#,##0.00_);[Red]\("$"#,##0.00\)7*2_("$"* #,##0_);_("$"* \(#,##0\);_("$"* "-"_);_(@_).))_(* #,##0_);_(* \(#,##0\);_(* "-"_);_(@_)?,:_("$"* #,##0.00_);_("$"* \(#,##0.00\);_("$"* "-"??_);_(@_)6+1_(* #,##0.00_);_(* \(#,##0.00\);_(* "-"??_);_(@_) #,##0\K\B 0\K\B                + ) , *  MChart8mFigure26Sheet2-CNT1ProfilesGrayDesktopV1SCSIredux.xlslaroux ReadWriteDriverWCEPaper-Alignment BufferCache BufCache2CostHowManyBuffers Paper-RAIDPaper-BufCache Paper-Cost Paper-OneDiskPaper-MultiDiskPaper-AllocateDataHeaderYYYYYYYYY Y ZL @@ @0@@@P@`@h@ZL 2_[h["@_ݴ"@? gt"@h8!@eYB"@ 3["@_1M@]@ZL  D@`=sh @ٷA @;/;Q @J2@ Ma^@iU|@iCg@ZL #EN@PB@z@waR@^q@宭@`x7@Vcy@ZL "K D@ X9@,1@G-@c2Uk+@O1@Լ|N.@/0@ZL #-6N@UvG@jq"A@гY%\6@): 5@): 5@|!8@<,oڀ>@ZL 'bM@ӣH@Q`ɯ@@s w7@-!K(5@Jwn6@7+` >+` j` r D3d23 M NM4 3Q  ReadQ ;"" Q ; Q3_  MM ]  4E4 3Q WriteQ ;## Q ; Q3_  MM ]  4E4 3Q  Write + WCEQ ;'' Q ; Q3_  MM ] 4E4D$% M 3O&Q4$% M 3O&Q4FA1 3O]q : 3 bN#M&43*T@$@@N#M&! M4% M3OS &Q 0Request Size (K Bytes)'4% MZ3O Z&Q 0Overhead (cpu msec/MB)'4523  O43" CY3OJX0% M3O&Q423 M NM4444% PhM:3OA&Q 2Out of the Box Overhead'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@eK D@-6N@bM@ X9@UvG@ӣH@,1@jq"A@Q`ɯ@@G-@гY%\6@s w7@c2Uk+@): 5@-!K(5@O1@): 5@Jwn6@Լ|N.@|!8@7@`Q@@e> `   dMbP?_*+%"0{T0??U(  j^ ? # ] ``Ǣz  BNMM?!]`  "??3` >+` >+` & ` & ` hj` hj3dI 23 M NM4 3Q  ReadQ ; Q ; Q3_  MM ]  4E4 3Q WriteQ ; Q ; Q3_ 3f9 MM ] 4E4 3Q  Write + WCEQ ; Q ; Q3_ MM ]  4E4D$% M 3O&Q4$% M 3O&Q4FA* : 3Oe 3 bN#M&43*@N#M& ! M4% jK3UM3O& Q 0Request Size (K-Bytes)'4% R,MZ3Ok& Q &Throughput (MB/s)'4523  O43" 44%  vM:3OA&Q 6Out of the Box Throughput'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@e2_[h["@ D@#EN@_ݴ"@`=sh @PB@? gt"@ٷA @z@h8!@;/;Q @waR@eYB"@J2@^q@ 3["@ Ma^@宭@_1M@iU|@`x7@]@iCg@Vcy@e z  BNMM??]`p  "p??3` >+` >+` r D ` r D ` j ` j3dr!23 M NM4 3Q  ReadQ ;"" Q ; Q3_  MM ]  4E4 3Q WriteQ ;## Q ; Q3_  MM ]  4E4 3Q  Write + WCEQ ;'' Q ; Q3_  MM ] 4E4D$% M 3O&Q4$% M 3O&Q4FA J 3O 3 bN#M& 43*T@$@@N#M& ! M4% K%UM3O& Q 0Request Size (K Bytes)'4% N, MZ3O& Q 0Overhead (cpu msec/MB)'4523  O43" %n3O$mX0% M3O&Q423 M NM4444% vM:3OA&Q 2Out of the Box Overhead'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@eK D@-6N@bM@ X9@UvG@ӣH@,1@jq"A@Q`ɯ@@G-@гY%\6@s w7@c2Uk+@): 5@-!K(5@O1@): 5@Jwn6@Լ|N.@|!8@7@`Q@@e >@   dMbP?_*+%"?? U>@ "X ,    !''  ' !--  --'-- !--  $$55$$5---'-- 1$w7~$ $$}$}k$kY$YG$G5$5--'-- !w7~-5$ 5$5$--'-- !-5$ $ Small Fonts!w*wgw -"$"$"$"$}"}$k"k$Y"Y$G"G$5"5$$ Small Fonts!w*wgwr -$$AA__||--"System  -'--- ---'--- 0---'--- 0y3--  $5v:{50{5v---'--- 0P $RWRMR---'--- 0m $otojo---'--- 0 $---'--- 0 $---'--- 0 $---'--- 0 $---'--- 0 $---'--- 0V3 ]:S0---'--- 0qP xWnM---'--- 0m tj---'--- 0 ---'--- 0 ---'--- 0 ---'--- 0 ---'--- 0 ---'--- 0Z3- d=V/-\5W0\5a:\5a0\5W:---'--- 0mP- wZiL-oRjMoRtWoRtMoRjW---'--- 0m- wi-ojotojot---'--- 0- ----'--- 0- ----'--- 0- ----'--- 0- ----'--- 0-  ----'--- 0--y3 PPmm-V3qPqPmm-Z3mPmPmmy3--  $3t8y3~.y3t---'---  0P $PUPKP---'---  0m $mrmhm---'---  0 $---'---  0 $---'---  0 $---'---  0 $---'---  0 $---'---  0V3--   [8Q.---'--- 0qP vUlK---'--- 0m rh---'--- 0 ---'--- 0 ---'--- 0 ---'--- 0 ---'--- 0 ---'--- 0Z3- -  b;T--Z3U.Z3_8Z3_.Z3U8---'-- - 0mP- uXgJ-mPhKmPrUmPrKmPhU---'-- - 0m- ug-mhmrmhmr---'-- - 0- ----'-- - 0- ----'-- - 0- ----'-- - 0- ----'-- - 0- ----'-- - 0---'-- - 0---'-- - ! Arial !w*wgw  ------'-- - $D  *2 FOut of the Box Overhead  ----'-- - !---'-- - !----'-- - !  2 0 2 10 2 20 2 30 2 z40 2 h50 2 V60 2 D70 2 280---'-- - !----'-- - !  2 120 2 N40 2 k80 2 16 2 32 2 64 2 128  2 192 ---'-- - ! Small Fonts!w*wgw | - - - ---'- - - f (2 hRequest Size (K Bytes)- ---'- - - !- - ---'- - - F  - A jjH ( k A jjH ( k -  - ---'- - - ! Arial !w*wgw - - -   x7~---'- --  v8---'- --  v8-  B BB- -  $>BFB>  2 :Read ---'- - - v8---'- - - v8- W WW- -   [S 2 OWrite ---'- --  v8---'- --  v8-  k kk- -  rf-kgkokokg 2 c Write + WCE  ---'- - - v8---'- - - !---'- - - !- -   -- ' ! '  'Oh+'08@Th  Jim Gray  Jim Gray Microsoft Excel@?ռ՜.+,D՜.+,< PXl t|  Microsoftt8  Figure2Sheet2ChartDocumentSummaryInformation8_937943578E FP<{(ƾ|(ƾOle PRINTBDB .8  WorksheetsCharts 6> _PID_GUIDAN{CECA7635-4128-11D1-AE3B-0080C7F3EC95} FMicrosoft Excel ChartBiff8Excel.Sheet.89q i -   ''   Arial] !w*wgw] - Arial !w*wgw  --- Arial Z!w*wgw Z -----"System  -'- -- !!---'--- -- $i[[_i_i[----'--- cWii *i*ii[i[---'--- - [i [__i[i- [i_i-_U_iUi*U*iUiUi[U[i_i_si_is_s_sc_cs _ s_s^_^s_s_---'--- !!---'--- :H---'--- :H- - $---'-- - :Hf $vxvUvx---'-- - :H $@---'-- - :H $---'-- - :H` $ppOp---'-- - :H  $:---'-- - :H $)J)---'-- - :H[ $kkJk---'-- - :H ---'-- - :HCf t2U---'-- - :H= n@,---'-- - :HD u3---'-- - :H2` c!O---'-- - :H  O: ---'-- - :H! R---'-- - :H0[ aJ---'-- - :H ---'-- - :H5f b(Y---'-- - :H (<---'-- - :H< i/---'-- - :H` IS---'-- - :H#  P6---'-- - :H I---'-- - :H[ (N---'-- - :H- -  ff``  [3f- CfCf==DD2`2`  !!0[- 5f5f<<``# # [--  $yy---'---  :Hf $fhfEfh---'---  :H $r0r---'---  :H $---'---  :H` $`}`?`}---'---  :H  $ y*  y---'---  :H $:---'---  :H[ $[|[:[---'---  :H- -  ---'-- - :HCf d"E---'-- - :H= ^0---'-- - :HD e#---'-- - :H2` S?---'-- - :H  ?*---'-- - :H! B---'-- - :H0[ Q|:---'-- - :H-  -  ---'-- -  :H5f RI---'-- -  :H ,---'-- -  :H< Y---'-- -  :H` 9}C---'-- -  :H#  @&---'-- -  :H 9---'-- -  :H[ x>---'-- -  :H---'-- -  :H---'-- -  ------'-- -  U -2 jOut of the Box Throughput<///+8/+////////----'-- -  ---'-- -  ----'-- -    2 70% 2 2% 2 4% 2 h6% 2 8% 2 310%%---'-- -  ---'-- -    2 2% 2 T40% 2 8% 2 16%% 2 ;32%% 2 64%% 2 {128#%%% 2 $192#%%%---'-- -  ------'-- -  r (2 Request Size (K-Bytes)0%))%%-"%00"%%----'-- -  -----'-- -  k  Arial $!w*wgw $ -2 {Throughput (MB/s)y-----'-- -  ---'-- -  - -  !!- -'  '  'CompObjbObjInfoCGWorkbook[ 56OlePres000FHx / Ba= =x8X1HArial1HArial1HArial1HArial1sHArial1sHArial1HArial1sHArial1HArial1HArial1HArial1HArial1HArial1HArial1HArial1HArial1HArial1HArial1HArial1sHArial1sHArial1HArial1HArial"$"#,##0_);\("$"#,##0\)!"$"#,##0_);[Red]\("$"#,##0\)""$"#,##0.00_);\("$"#,##0.00\)'""$"#,##0.00_);[Red]\("$"#,##0.00\)7*2_("$"* #,##0_);_("$"* \(#,##0\);_("$"* "-"_);_(@_).))_(* #,##0_);_(* \(#,##0\);_(* "-"_);_(@_)?,:_("$"* #,##0.00_);_("$"* \(#,##0.00\);_("$"* "-"??_);_(@_)6+1_(* #,##0.00_);_(* \(#,##0.00\);_(* "-"??_);_(@_) #,##0\K\B 0\K\B                + ) , *  MChart7Figure2L5Sheet2-CNT1ProfilesGrayDesktopV1SCSIredux.xlslaroux ReadWriteDriverWCEPaper-Alignment BufferCache BufCache2CostHowManyBuffers Paper-RAIDPaper-BufCache Paper-Cost Paper-OneDiskPaper-MultiDiskPaper-AllocateDataHeaderYYYYYYYYY Y ZL @@ @0@@@P@`@h@ZL 2_[h["@_ݴ"@? gt"@h8!@eYB"@ 3["@_1M@]@ZL  D@`=sh @ٷA @;/;Q @J2@ Ma^@iU|@iCg@ZL #EN@PB@z@waR@^q@宭@`x7@Vcy@ZL "K D@ X9@,1@G-@c2Uk+@O1@Լ|N.@/0@ZL #-6N@UvG@jq"A@гY%\6@): 5@): 5@|!8@<,oڀ>@ZL 'bM@ӣH@Q`ɯ@@s w7@-!K(5@Jwn6@7+` >+` hj` &3d23 M NM4 3Q  ReadQ ; Q ; Q3_  MM ]  4E4 3Q WriteQ ; Q ; Q3_ 3f9 MM ] 4E4 3Q  Write + WCEQ ; Q ; Q3_ MM ]  4E4D$% M 3O&Q4$% M 3O&Q4FAC@ m3O4 3 bN#M&43*@N#M&! M4%  mM3O&Q 0Request Size (K-Bytes)'4% >EMZ3Ok&Q &Throughput (MB/s)'4523  O43" 44% aM:3OA&Q 6Out of the Box Throughput'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@e2_[h["@ D@#EN@_ݴ"@`=sh @PB@? gt"@ٷA @z@h8!@;/;Q @waR@eYB"@J2@^q@ 3["@ Ma^@宭@_1M@iU|@`x7@]@iCg@Vcy@e> Vcy   dMbP?_*+%"??uU(  j^ ? # ] ``Ǣz  BNMM?!]`  "??3` >+` >+` & ` & ` hj` hj3dI 23 M NM4 3Q  ReadQ ; Q ; Q3_  MM ]  4E4 3Q WriteQ ; Q ; Q3_ 3f9 MM ] 4E4 3Q  Write + WCEQ ; Q ; Q3_ MM ]  4E4D$% M 3O&Q4$% M 3O&Q4FA* : 3Oe 3 bN#M&43*@N#M& ! M4% jK3UM3O& Q 0Request Size (K-Bytes)'4% R,MZ3Ok& Q &Throughput (MB/s)'4523  O43" 44%  vM:3OA&Q 6Out of the Box Throughput'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@e2_[h["@ D@#EN@_ݴ"@`=sh @PB@? gt"@ٷA @z@h8!@;/;Q @waR@eYB"@J2@^q@ 3["@ Ma^@宭@_1M@iU|@`x7@]@iCg@Vcy@e z  BNMM??]`p  "p??3` >+` >+` r D ` r D ` j ` j3dr!23 M NM4 3Q  ReadQ ;"" Q ; Q3_  MM ]  4E4 3Q WriteQ ;## Q ; Q3_  MM ]  4E4 3Q  Write + WCEQ ;'' Q ; Q3_  MM ] 4E4D$% M 3O&Q4$% M 3O&Q4FA J 3O 3 bN#M& 43*T@$@@N#M& ! M4% K%UM3O& Q 0Request Size (K Bytes)'4% N, MZ3O& Q 0Overhead (cpu msec/MB)'4523  O43" %n3O$mX0% M3O&Q423 M NM4444% vM:3OA&Q 2Out of the Box Overhead'44e@@@@@@ @ @ @0@0@0@@@@@@@P@P@P@`@`@`@h@h@h@eK D@-6N@bM@ X9@UvG@ӣH@,1@jq"A@Q`ɯ@@G-@гY%\6@s w7@c2Uk+@): 5@-!K(5@O1@): 5@Jwn6@Լ|N.@|!8@7@`Q@@e >@   dMbP?_*+%"?? U>@  9 . h -   !''  ' !--  --'-- !--  $:88::8---'-- 4:: :h:hP:P8:8--'-- !-8: 8:8:-8:: Arial d!w*wgw d -7:7:7:h7h:P7P:878::::UUpp--"System  -'--- ---'--- 35---'--- 35BH--  $J?ODJIEDJ?---'--- 35?c $e<jAeF`Ae<---'--- 35A~ $>CH{C>---'--- 35E $BGLGB---'--- 35C $@EJE@---'--- 35B $?DID?---'--- 35~ ${{---'--- 35l $i nsni---'--- 35H OE---'--- 35c j`---'--- 35~ {---'--- 35 ---'--- 35 ---'--- 35 |---'--- 35 |---'--- 35  ~---'--- 35H OE---'--- 35Zc ajW`---'--- 35Q~ XN{---'--- 35[ bX---'--- 35V ]S---'--- 35W ^T---'--- 35V ]S---'--- 35Q X N---'--- 35--BH ?c?cA~A~EECCBB~~l3f-Hcc~~-HZcZcQ~Q~[[VVWWVVQBH-- $H=MBHGCBH=---'--- 35?c $c:h?cD^?c:---'--- 35A~ $~<A~FyA~<---'--- 35E $@EJE@---'--- 35C $>CHC>---'--- 35B $=BGB=---'--- 35~ $y~~y---'--- 35l $g lqlg---'--- 35H--  MC---'--- 35c h^---'--- 35~ y---'--- 35 ---'--- 35 }---'--- 35 z---'--- 35 z---'--- 35  |---'--- 35H--  MC---'--- 35Zc _hU^---'--- 35Q~ VLy---'--- 35[ `V---'--- 35V [Q---'--- 35W \R---'--- 35V [Q---'--- 35Q V L---'--- 35---'--- 35---'--- ! ArialD 2!w*wgwD 2 ------'--- $W  -2 YOut of the Box Throughput ----'--- !---'--- !----'--- !  2 ,0 2 ,2 2 z,4 2 a,6 2 I,8 2 1&10---'--- !---'--- !  2 E20 2 `40 2 {80 2 16 2 32 2 64 2 128  2 192 ---'--- ! Arial !w*wgw - - - ---'- -- f (2 hRequest Size (K-Bytes)- ---'- -- !- - ---'- -- $?  Arial d!w*wgw d - 2 Throughput (MB/s)-  - ---'- -- !---'- -- !- -  -- ' ! '  'SummaryInformation(IDocumentSummaryInformation8_942005589QL F(ƾ(ƾ1Table ToOh+'08@Th  Jim Gray  Jim Gray Microsoft Excel@?ռ՜.+,D՜.+,< PXl t|  Microsoftt7  Figure2Sheet2Chart7  WorksheetsCharts 6> _PID_GUIDAN{CECA7635-4128-11D1-AE3B-0080C7F3EC95}  FMicrosoft Word Picture MSWordDocWord.Picture.89q  FMicrosoft Word Picture MSWorGoKv07B#Hh!9,m{Ƅm&l)aK Oxև0[O-4:80 &l4aDX a%-'l9a H^BX aN{DZmfћiS02GtVg\[Nzdez0 d6*P(KP*K{Y[d5+STK9t_-&~ۉko=[]8;Bveo}Vۿ#įJσo;F~OE~fj;D5P{P{=ᑿO!%ۯ }-%٘IӥϠLQ]XseO9) F7g$_/5ʂ$+q3S)U|,/$YYr*X¯׍.5${u#x_}o|,/$si[{~M%~dF8ƩހCQdWK$Wh>ڞM :Of7|iEy }!I>>g8} BZGꑥ6 YN߫AGogAMloB۶_#kMzȲ> Y^@}Yx-!BX[g/KyLgڙ3ŗeYgZ),C=L z$ϑA`\k_f\Ul>AtU *Yr.]Ժb+w3@7Wc"kQ`Gл1?]Ruפ5"N:(FyYkv ?;vu 5ih%QxG~l;3WY;Yvh#XoVsQ`{qnc~r],>Ikl4`;"kg{0 c~j],nѤ5 Dk[ U&%6GmxŏTн)K՚vhm|YkaesY1?C hY+MZkEiѴ k1&#)sb~&ӥdq'5ƈÚ(ʉ隐N6%a|U#:@q!{ Owh!aԂqSm!]IhツP%CbC)αߗVPtN6'svcqV_w;)~qb~H3~ѣ'%Oc\"F\'(x '[tzN+D9D`̰߷wҞ(`{%T{=U=QP%b{ؕ^dӞ(.Fu^dNė<퉂m.^dA{ѿ2{{=-M{W[--YgߞQw -|hF^d ܢΈ,%g 寝ʔ+liW93ٔS@;33:eGᣲ:g:D/pe1e _S v b<h|{k6k}3Oz#;/nvlT-`7_*/4+u3 ;E~۸`;%%GkdGB4\,euVfSweIhC -:c%3H~Zzp[r=GN-ӧP)-䳾 (S^ȫ˒Wlŵ9 =Dd(fSP<  C A2s o:PS `! s o:PSjT:(e - x[}pU?{s_K ZP|q TuC;M0@"@>mm-:v0im?Q[:jVmF*gf}J汻svw1hg㧂e e%>xd5H$f ZzNg ~N ~it6qVEvjv oLށubu,iކ޾[.wڎjVZw2x͹''W^9O(h`?C]L,TȫEc=@Xkx9ђZ4W^{,ɰ{4wȺ 7X9f8ɮ`9^k~{,gw)Y:HD2TRm;ޖTyǵP(Yk=qx7I0-7ڭ!,- ߇%Y+sgk _JVu% YɚHD2' V%Srld$;L$;ES$HQH:&$"Y6ll_*5\5qzv Ve#Ծ ZX'kR-S!vȹ+w U${¯d3#}ɾuҷm#}I2>}w cEҷHJҷ-B}:f*ڥDpC({Z_պt0d>{K7!,j-cVBXn2c #`X~6cyYw䄰(F1cY [anBX,ۭ/ڄK0cY5!,i^-񟗕)w0`2%˶b[,Sס dYd,+lpBv}{UDABȆL!VumHAv4Kxwߎv2^ `9:L{UNٓG"=) {"Oyg d17xŨx` ai*<?:M6= # !UHfNQi`%<6C{],dӦeslt.I*sԙjC|T)Os0"me]$ \)^bcweN~ɆUx*v8;9 3gñg7bt@@̭9M{929PEb-swr7x| '^o6Iy?YL9^J=)5K~OŶGgx}Zx[AcICwsj7Oǁg];xgօY_iU)0/xUQ'rX:$wMȉz;Ⱦ1s/8uvxDb|swO%TȘ.^([bTc}ۊsDVbYgZ/oו壉\KEn9<}U1?>ω;dwb#+238>!Ų M׵F٦P_QMYa5Fcw0AF?73~aF* }ڭ-K<_;-_Ǐ (kʨ/ڿ/b H,TQȚ9^"[ ̹_;Gڋ6e⯣Y³[ 70Id FMD$uyY+v?m |I6d(DY7릕-D-ўD+95̧r>- ?vY w)k7~Y[o\jE$C{NA?I$}Hҷm"}o)>4ݱT{ߩγW¯`ZU#=#j TMA' aQ+͌!=.!,j%E63x鄰gr/ aQcr=T™İ4biA,F]:.V; 9^Ͽ g&^ bT]4\O5/ OSѱ<Sqئ<K_O5_F-&OEScTt,a<8*j O͉SѱTx*:nD᡺-S]_̂wEn,o'#,7XK!k`^|-!d8L!{֋`B0Bvz+ !o ~؊'wk<#ʭ !v 0G,ʁpBf5fF/v2Ȗ0B:a2㽖gY'a'pNϱ,E c9erVCLζ]D|NdUrq2drB~ϙҹ#WerFcq8 )r-%[xԉ'HL6%ser'e39Y=Lzlx39VcLz39kBgܙ|&39YL^wemeMb_5FCer 83iчTb#PBڕ[X>[}8^p3g~7w߫>~7#39j7frnM|x߹BT~o77aN[OJM.hs9L Ӗ㭔eZYV2+jY 6 kZDdH<  C A2AZ;=7ROI`!Z;=7ROIT-8`+X- x\}p?wK{y@4)ek(<_E(`e!_)2m-uP`RqәJC(F2Q`@-ܻ{~eu0/{}={ hF"%)j:)QƳ, ߡǼ[ klSG\ƦEIBЄ ]\_Auzx3ӣ =ѫG0yh+Kc똥5ٗ޴>q[ݎʥ˞ ]_o9_; ?O^ao?:j{gmp8|_\VoW>9F{|_g6 6>)nuV|cN]eU72GAVr<d/GDK bQE*3K2r[p43cE*cbܓڻyL:NO瀤yLa8~+a0 daÁ{2*[; Jp^ VEJ_+ @~]F!JR ]tqI7t#Y}++j'4:Bg/ FRD.c~Cs˜Fb03^IN.NL:wҟEJNϦn:閒n)֒n-vn'"["]鮐 Hgsp,"6 !f;c1Tsz:aW`?2 :tR*T&M'Beth:)*R2i:)*11#~e0&JP&݄ a=CX#uaEX‚] ' NºV ZJXK <:NAN΃"Jޚ"bP"0zoq;?n[kx&U( l3m1lqj+ ^Z؍6k-wGR^%"/mxtֲZi 6{7;~67[Clm^G[Bq!F]?s C=m3^( jZF dlo=pf@?|5Ѝ,U 5{Fɉ!N"Nn)3O3O""ãgl%'f#ڐ;Z6fn'>%'f!E& hcFWfvS소,f>8@N'̓)3?B@&ƣm!-_olI>! {vOdVOb ܐ:cJئw$sd1-! ЏV8b;'d^! 9Eo[N8K&QƼA%vITGavH$- ^|U!%IT J*R&Q٘-aY^x 2JRaC_0fx tF=ݳ%ƥ1&egFux,ɕsiμ+O1ߺu!5O&,YFgI+w0.ŸtTHZY#>!jkyij_Y_ʲZ*_-Ze F2F[oTwNՖw77~gJVp]X8cWQ]2:vyt΃sGTWVW*}>#拽Ro6N?3{4~$$$!# r51P5%Q#U]ԕ.fhwԉv=N[db6newj9}}Kn~}}@xq} כOb>1˱#9//9_ml'_.3e}iTSe˸/W _=Nїs,˭j{m*Hїs-7/Gn~_G_k}9yN<,|9v+}Yjeї!͗Qp{3޴W)z2'oF kOpQF1ua|EuyeUtβh蒺ʻ@$ߠ' hoۇ],$cm`m@[^sGϷ0~1&߂ܧV.~gŏN|粎V崞]_:gA]yΘ/>zX C`dw^i~?HxܧQ@׼79p~V.,?B>9};b;C~(2aU:+odӱN5B~V~m~ f|Y.3#ķ' 6LM2SLř⺲˪!_@e==[w^k=fzLƳ,ϖY&e l{x {"by>*{p*Zҋ_Kmim"e6C\땝Ɛ4X|GqµKYD4/c; S%Ȗb?x\xl}moߺVR_]E͗qg9 b,"IRJȏY`GѤќ;fG2VpYLhvazzS iA9MMV7_dRgb?YudKu_>*^o]sPc 5y+Ǵ̄0vįw<[nܶꅂ܂]"xXhaR xP~Nȓy<~l\tuj>Q?ёza/:bl&Sx MDd$f00<  C A21 |И@Ěh S`! |И@Ěh|to:Z -x] pV>OOB0Z-q"8Q$TP@%> @F3ʴڑҪP2<|P0) ڇZ;DAI_: =w99{콻!PtU @ؿ]EX Ŕ&-Fa2Z,P4ZZZx.f!]DWΩ J]Rr(L"@/ΞT4Զ4)AK*90] p]Ǭ-?Gxu M̿JNs>N.V7W:hͲ;'a+WJANؕ^~+2u#J)-ܺg67" +]yqmRr_. ?|cbނI'_#ݯy+&L#GbCޯSUI]Cw g!ʱ;sZ[/wз- yNa*w:OOTQNV( EhmMPZEUΊlp{k`ofT*%LŤOg*G7j=ØIVr ~~պvCV( EhmMPZEUΊY\-JM֫ā6P&*DEhm-SUV혢S4okҿb9K+I)i$t?MwP # :)ooooo7Lɫ#yՇ. )w ]iB1cUC_ z%2R; eiAHlr1T}CRFġx'eMe?[5$ t7)ĩrq8 .1*D`B\$KxSɩy~.E+ܮa|1"jQCX!.?%|Fw;Be?#T2rEv cwܨCF<5ӽyR%50~#});`,ZAOwDL8fx fLc!>ׄl<9l ̅ujy:7"drN2! ZөMh9҄l j}鰈^DŽY[ɏh9UYXÖQ[V4\*S V'豔hkܱxKƻȈO%ğEEƜz,/2x4˧ #9XGoDX1x-{FR4Xz|Q[JF!?)GPy5磝dpJC&Qx,Iqۛ< Mj'(n[O1zC&Q-Q6< IxMZ(^kXA5$ݴ} n80 Io+8^ [x^sW%8s:76DkJg8mpO#B7nJ‡*Å<"B3DrJ<h=O {^/eiM{nUnz,* =7{Y&1~I>EOv"קYـMٴM/igށNnIr/Žo֎(jO9֬kU_n-O};;+NnuIo֗ 8/W4HȯtwS?.N/њ-"dǙmyZ i΋&dorZk.L pYWC29'>ELΑ&d=^.<,"dlNlu83;xDȮxAi57ПVsZA5u0kyj='tLGp:", r?lƟº4x;㰗۞07N8㈰0x4!8Z'Ez,1:%To:5f\N"j [qM8 x/5ܑ-͸&\Lz|R^ʌk?a$?A:p|j^٦kukXo6r4(yZZ/A-O/8B?w WEnYr;Ra<5v696;<VՍ '7̬7ugTglqX,[K짔KVZyyFl9Qqt:9r=F:\/fNVk[>9 ^loe@~ؾ h3qy ߿rf8Қ7yΚOv*XsY3fiּ͛Ig͜[SoO YZshCִ5:Ys^dg+,YgΞ=uNF{V=,9,`a:{f1Z'==ë,9<`^{ {^dZ;[t2VixݘMGl:BgA8iytr{VG|X믝Z߆/UN^@yajkA終7K_v4?wK}ĹTdID7)M֕7߳J,n2> Wrpj!p!Ozz3*ڃwe=ΘqٮSBm'ҦPwZhhS}KW-9Ӓ1W;ВrG *gF! :mw&oT#9m$CEy_6YZsLf~ld}WW) #1l_5S&m4h6|O/\TƴqlDd$'VU<  C A2dvNP@"{@`!8vNP@"{W3a,x\}l޻}ɥC)pqiMJ RBZPVZP*ga78,B D(E(?(mO+ $6E!(%PrgfggַkR<3ޛ35sgO m,zk1ybGiĈ511lEدk4>S Нyǫ9jJRlD]at|g*>p=+Z[x/`  }~]󯡇~ݽ]ag2\OZVWAJ$2ubWR7w2=)mxG}7y/|*s֗w9^gwgj| >*&B9~ʼj:0Xjʜ V4fqN.:W:ގoUO|Ԏ2>\B#69y-9ֽ>)·<1a9'@.Ou8!'猚4ӟ}R_ieXIud99ex82sQ8##FEĚc1 *UW)Y\#=9S~7 V#EpƩ55Fc7EN|,c%$bO"6(bu ֌X3bʸ0/CV uCl'b;;AĎ!v yyϝ0&bݴFP0&SԪ_/w̫Trի]d˞U, *.q <$6!q D,)2XáfpDphE{}h hsp>C{Ohm@{=h֠.jOPU[T;$qyYy#:W0#nu X \&f ہJ퍉*LM^[iy5-v=PG+k +o*]nsiZXT{`UП$WIeY=GfÙ1̥G?_4@n)uuoR̟b3_r~;s zPvL2ȎnyN4{} }Y}P l62~/c%!Yu"'^YīM!C^':Kg8ݍαKV//[EV3TOԧ~d7n+yd6'}\ct.μŁ)P?6a~_1s~[m_c8^zWr.+՛?͙'\@a'&cꯢO&uoϳl9L7s-|ZqSյ0T⾖}R?ΚxCw䦬Oxع? 3b);WLRo|RoFrx0V\^;W<U$.7v4"o \[3&UEc/͌=g54yTf=p8TvLjjZjʵdRS*Ȝ2"5PROȸ޷';V:B=㙟*sYIՄ,b)iJJ#-k&{',gWUVXΈbD=X2bu"ւLxR)Xjzc"jVGR MyKr'kb+#VFNZkALNƳJ0/M"g{{ &[[v/B"zA̽!Ċnaϒ;f\3&odvb ~~=pX R Ð:ޥ- 7Oh-w=A{M> h8ڻ퍡7|LwFwD{#hoTcoFl{k=;p+97FZhǼ,W~O 1qkY^xb"&=hམYel$E*mEj(tQeX64a*]kۿޞ o@>]1yvҠV~ $}$&f' %&Qz}11{ˠd ^}#&fG &{x{8&fOTN2ksygOIf+a.11Ǡِu'^~3ռXpͫ| ~cϩ&~;f˧2h}z?p6NUmרL5/.Jw3UxnڶZ<\Fm; Q%pm;կծx FbS;.r׼uҷJy'թDԩ&8i/ zT~ u*<:MujD e$@z Eԩ\Ft*oHujkDN姥Sl Щ}թ"T.fb\F(h:KγJ3[ZתܧVV:FIu,ԼuI Q밗|5h+٬ 0 ;Tc~kY Ҏ>,A:,ER,Sy:\͗6ƭ~y̑}ʑǝx)9_trm':KS.,m1lq;cK0Lֶ^b׻ BYnYYGMٝn+K~͆1skUZy/LI%v_:1T7ׂ&j&jhk_, M+WTHB5ـZMw-Ke05zlwڪϯX+Y9bݶ9]`7n3u0Vܛ{ENꦓ0ߊccLq#"W]}5+!8[ <[4[…b?S4rL. /0w}>wQWi+B.8kM7ofD3@1#f?A@Kg6u&EKQ B) 2$JIFkݘIj57%hZ=ݷܿkQݾsۿ *΂ROU%xRU'P` ,;NTҪm?'84JUW2o<ޱ@-|]$PbeH *^YehcfWcv* 0mղ%cbu" c?l H Itڽ$P碜voRZo9-Ts. {Yy갷\v[Ñw&gݫ;rRGص+\ϲ|꿿F(Mk%dw' |+lṲ/ɑzHG? ^ASjr#Pfe (fo*BcB(}(J_ I^ϯӈGM|_;6;j0%e-#6Z k%0fBXĭͮE5,b'E{{{E>|vzՠݔas^V0yAY" ڰ# @–6k%:syjLR|7 + [ !m'l?a {w=a'xu!Em!fS~??-QwSG+}Bu V6$R.GDj+|(R[3!xRƾDzH^/%y$oi@ \O&$[!$y?cQp4OVm$oG^%yHkyZ#y#y/*F䥵GU!/Z?&ϭti[z={ָԞ yW~U"LVzdrϤ4^7\w\~^a|uV@'0b&&dz  1QOly33u̎B?ϵ^ 1oQx7bEDNOy!f]FAmF_4L$++_W&Q$ўҹhWAڥݤ< {tٷmxV=#Ym3~x6êWq$]=#x)Vh#YA&ǑA<cխ4Շ~^ƃͰZ2gX?`i3=,g.؞HE@?^U<ٵ05O%I P4IrL_gbMsEnMds'eٷlLp]>;`!.""S}`<0ՈT<_>C\DDGC\^LC!.lM=&o#}br{8Lƃa5g\R*6Jf>=y 2 #|Ͱz1cy=Wx +]r{G؇=>6굌=—G:_i3d!i3Y:4TkXքLՍ;\1݉ =0n=q ]rYV=U|cQ=Uȴ#oOb#|mKTOFͥX3|ɩ[Onir~`upC2E&]YWeUޕ]\!leouˊowFcRHS_۠<`S4e%ju6acJ Ě\"d d.Vbh㭹^\; V rm0B`Z ukJպ^6p uZg<#m6}ӻ::W*t)E$sU|M굖W#w>I>j-zIEȧgLn#ЧM&9ܟ OV'ZNe|ln(G+n lWf >͑m&6{fD~~*o}}OG[%hlcbŵlʏ3<ؾ&א'B]ֿ*c> ^!>Rk<"Pm!|P1\.%.>-'/ܱ,׍EϜCREAGէių-Wc/=S=UvT4GS{jn@ Ʌw mJZ㭦R)>h*G1}_ro>(}0Jv ;D*S/vܱNQ)-$l!a LX-aPk_{oֻVpzR3T{|G1o4%u-$l!a LX-a쏒_=3 ḮLz$aOGXaa;E ԛ̽S߆oY50hW~x zC>` `H"{EBxRt7GAۇ'yI#$o-[Bӯѹ 'y#H^k$y$n8 oBGF'I}$GzH^7[KzP3SftN&B ,O} i]:[3`B,mv0nÃͰOf{k`!.ݚpw02iZMr1m/ΥX3:|n0ܪ,F v`gl8B;0-]ug׏ꄔXW|3KU3._.vÈ#Ggx!@Zh@@Z-ĉiE-rwY07עО*O@k^'Z8މ>8%>w {,8_cn+[{,o]]!X=cH|E6,g&Bv1X X\Ğ3”F]=}¢A;1>!V)|lWWׁUgnIkU[5]{wۨ(c,Xݦ\QV:;,89aq*g|1K˴cv u2KʜCīVU+};T.AZYDxc ._r WyGjmzsFeJ+S Ҝ`u 9~lxT,ӛwgjO&cqtR&(/ˉVJeG?u4_y+B|(Jv-vT5;5"6lPZ]c鯕5ns&m~ObWjs"~`cސNE-"l*aS #0}?WLF2–v?aaOvG{?B6$z3CdɦwE+m_rVZ:G<p%RcgC#>AV ;{ɻ]Ef$oɻ:IkWwf[piN~H#pVdXbH_4Zk$0E65qereH.'cX_>4f#3C\X\S m qmYe=@"P2'2>] p!.DƧimM\oY!.3"lx>6efd|o[1Dŧoh6Vw4s)Vu)oő[DQ Oaj3/W_Kd?~wf0Zg+vr#G)g^W˙'Ά;L$U Mtoq ?'Vp$'}KxgO§=}8{s{Fr=}PzÙ='XjgKDc1îS7{_[ 3GSpu]ޝ}`Z7Ji0b6c!o{ IgPq6OAD| 93O<*9|9Ɋ'_n;|Kt'cRJ!Rw"EzEpJ8yShB"DQޛy,WDIk HɊL>y"t*OY+S /sG/**l{y"t*OY+S /sG/**l{3އ6%$uLҪ0)@JRPq#P0Y{1к8 ~P m P(j-4!ѦT"4%@$[-u{fsww{Qss|owF0((8q0Ŀ~ X!,V ƅUDdRZ!68_!#,]94Z*$K } evhCyRD,CZ~>I#LE^oY+{O[] fzrWƾg_\[GN>y/'"iV Ȭ(6wt6~h'-Qm#Y~rc-3[U33`=Mυ&U1K~1Y̜ Θ,à3Bj_g3 OB,a3NLe)7Bgsi*zKqA2 ,AVEA."F{ ߼g'}U&2>`(yGwg{7fRv%KUVE~ SnR–m'8a@-nVN9-'.fLM(qSdmX*ቼO}CɜJFjCvڴN=[OE=38eZ cLYUL19⺞frxPw䯕B\+(g75w]$'MZ%GsS.9M|=gTr=`i])7sk^Qsڳ0O[=w nģFl!\X+1SO>?QvrV@S[ j̓_ɲ. fJ5]#᯲83*/f͆A1Jɬ ѥ PF~FG*?)=ç"&rDjBtf"3 g"!WăɺT~#-e݁^moT$a;LDkQDsGgES˖g*ol'$~̙mcIɰksg^>ĵ}|,2Ku >TKݥ˥ʍW২KGMwU3Q)ϭ/XԼlea(4x!j9/ {ds>ƿ gD\4_L5m.q+n#r~ V-4Fe[b~&CZQ/~ۋ-`qr}[쿁Q(gc$<ώ},؍3TЭ]ܣU+O5 Ӟ,{(6TKfW|^>=ouΛxq!2EXa [HX5a"Q)4gԨtr]mr/,+>s ~=lOvCuEBVMX5aA! NvK&6a唫r1i5DX8a^d܄27Y(K&Ï$؝h_R s=`'K̅sf/uӚ !I\}H zs(gMe|?I&Nobҝ-8+6mr[FjѳS# ^9V0Q8#Q:Oʲ6 fjz1 xUIqgw"3fR2LezxHA1SOF^ OZ 0GAR/f+Y28f)"Vt2(fg*[ϊO}6{uŪCۈQfDzO}6kvȫ5jLW~ i7q풀SWOEGv{%(s'%>·x^6{˯Fo`6q7V)89tD{<@,ͼ8se1|iC2 qIug:sZ Fc/ٕJ\[Je͔+^VvHM+_9rąeg2ǚqU]ƺN:f2˰Y* > 0 Dd0  # A2 d`4H4v]E q`! d`4H4v]E"X!0*"N x\}UG?}mŊZm&`cUe|U/|,].ЅE`S DJĆƦIH Mgf̽s}d{sfwΙ{},mp+!M~eJ^Ymfsjހ{XF"rJ H[nR}H &!,G ^!4CJOރ6Le I˜."kk|բ qɁ!q1|^+)kMmTh W}%QY&L`kӱ%rqkD{\(7`%F6^qlP`&mX l lF6novmkU*zr]Fj;maj*Տn85ı& «[ ⢞>޿MVZ$) kMzџ86*Q lP`M`R-<XvZ.vhtsf l l l . ؛{_` O}v~I{aSmYك֠>f囔}1wg$P=+ hLVN[`ehZRq(6#LK03,PzD2[Ё=x!otX3ɬNA?EXKSþHf/nE8lE)̮ͫT7ߎd+zg9P&8388Cz-bFd'YX.OD0e3F1r;$f1.0^ `e$$J1.1B複ɐĸc'C"r\ĥ{Q;G1r $0.1dVׁY<:0^rX u\5v L҃NK Yh,5 .Bk1rُ5֢ B&؉68 .mĘĂrPN8.d l7BGqđ~ E9="U 0cQ[m1FPNBg8x-B'qn2βmĂrecaٳXO1:p Aq.ĂrC(B{pB o  PvLF#{F Dz[>wl{${oQѼx#ǯlb.`ҷ]ctM~3B?V1mszXik.[xܵ-V+w-`;'XuɿmLp\{׽^,#\ ÂǙw/KO 7y7|ϡ0g*|f. ڗ[c U.C@9=ʺ7z W0c!S[0LY*ac{g%8b,̰>9wA(BYF8;U.B(.)݃XP9c{#78Q[hm9G  e=Mv B|Hm8ll/v\-T9c~~s^Oqvߚb(r*wj66;~G9wD ]97vuuX y |-L0mv<4bwMT/ =;Ў/y+4{A^Oҽc'̓wI݃-q=أksY'fw o\m,|"3=H7Ef! $\96ƼfyטgޢMoU$]&ÿ|JGSZQ/,MƷ%w:V)xpr'^-|bC5Ov{8gKO ?bS#[#L=yl^?]_۽ p+m:O_o.Z:g~ &ajJ'Y^&ex;?;Cx<켣sʼt![j|~zyaqǗjvvx8`(i;jϮmXPn#7b(PL_ W<;dg9~ș^skʱd M_Ue^ehqDd0  # A2>MO2?&I"~`!>MO2?&I".!0*"xZ]lTE>wnT5`$6Ha+O" A[l H!<à 6}(Bb|CJ!Q̝sޝv/ٝ_|̹ߝ9;TsYES5#T(x4k5af6L~(W8ޛ}qwgbWU!Z=B+QEge_4#!1>%/︂"jr\"`xe^?gz8I `}_VeY>D#6Gbs~S]$CcaaMb9r5DX0fst,*Av;#9q8ۙZWa]a^KS_蟂K4wo߃Hi:*~v?Įds惗4C!a9šk",EX-r&/{&6&4a H5®v[=$!ay,41xg^֞#g9oFʈ?mE{DW á7*ݿuI-D~&LϓFoZ_y -p>V^vjb6Z> b삸Zk=ι0kG*^ٷg0J!$Ї*GEW8x4`*ЇJGEW S5=\y^T.T2]\Ty^ԯ..=\yXG#=\:%~J't(cYV PZSU4bMxujS@*                         ! " # $ % & ' / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~   [$@$NormalmH <A@<Default Paragraph Font $(,048;>AEIMRi| +>NSTUVWXYZ[\]^_`abcdhkr $(,048;>AEIMRi| +>A  !"#$%&N N"NWNMl,2$kmZ96al @&cb(  \@ DB d8s.  `  c $DB 1'g.T  C "4&,TB  C ++4&,+TB  C )4&)TB  C (4&(TB  C &4&&TB   C %4&%TB   C #4&#TB   C "4&"T   C "4&,TB   C ",TB  C ,,TB  C ++,+TB  C ))TB  C ((TB  C &&TB  C %%TB  C ##TB  C ""TB  C ,4&,TB  C ,,TB  C ,,TB  C ,,TB  C ,,TB  C  , ,TB  C l",m",TB  C P$,Q$,TB  C 4&,5&,  BClDEF$ 9l*STA@%B%*   BCDEF$3ff 9*TY<! @D#B%+ ! BCDEF$ 9*|TW-@S"B%) "  BtCsDEF:t9:s9: @`Q** #  BtCsDEF:t9:s9: @`2)) $  BsCsDEF9s99s99 @`mc(( %  BsCsDEF:s::s:: @`\&C' &  BsCsDEF:s::s:: @`@!F&!& '  BsCsDEF:s::s:: @`$#%#& (  BsCsDEF:s::s:: @`%w%{%% )  BtCsDEF3ff3ff:tss: @`*N+ *  BtCsDEF3ff3ff:tss: @`)) +  BsCsDEF3ff3ff9sss9 @`m '}' ,  BsCsDEF3ff3ff:sss: @`\%/& -  BsCsDEF3ff3ff:sss: @`@!$!$ .  BsCsDEF3ff3ff:sss: @`$#### /  BsCsDEF3ff3ff:sss: @`% #{%~#T 0 C `))NB 1 3 w))NB 2 3 ))NB 3B 3 ))NB 4 3 w))T 5 C '(NB 6 3 ''NB 7 3 '(NB 8B 3 '(NB 9 3 ''T : C m&t&NB ; 3 &;&NB < 3 ;&]&NB =B 3 ;&]&NB > 3 &;&T ? C \$$NB @ 3 s6$X$NB A 3 X${$NB BB 3 sX${$NB C 3 6$X$T D C @!"!D#NB E 3 W!"z! #NB F 3 z! #!-#NB GB 3 W! #z!-#NB H 3 z!"! #T I C $#"#"NB J 3 ;#0"^#S"NB K 3 ^#S"#u"NB LB 3 ;#S"^#u"NB M 3 ^#0"#S"T N C %<"{%"NB O 3 %S"B%u"NB P 3 B%u"d%"NB QB 3 %u"B%"NB R 3 B%S"d%u"~ S 6] #" ~ T 6(V,0- ~ U 6(*+ ~ V 6I)#* ~ W 6'( ~ X 6;&' ~ Y 6$% ~ Z 6-#$ ~ [ 6 !"  ~ \ 6 1-] .  ~ ] 6 1-A .  ~ ^ 6 1-% .  ~ _ 6 E1-C .  ~ ` 6)!1-'" . ~ a 6 #1- $ . ~ b 6$1-)& . ~ c 6{-#[.  d B#r* ` e c $)4&,NB f 3  9)) g  B\C[DEF.\..[.. @`H))~ h 6:T)&.* NB i 3 3ff 9** j  B\C\DEF3ff3ff.\\\. @`H*+~ k 6:* %Y+ NB l 3  9,,T m C <+K,NB n 3 S+v,NB o 3 v,4,NB pB 3 S,v4,NB q 3 v+,~ r 6:+e%, Z s S DB 1'g.` t c $'M d8s.T u C M*"[7,TB v C M* +[7 +TB w C M*)[7)TB x C M*([7(TB y C M*&[7&TB z C M*%[7%TB { C M*#[7#TB | C M*"[7"T } C M*"[7,TB ~ C M*"N*,TB  C *,M*,TB  C * +M* +TB  C *)M*)TB  C *(M*(TB  C *&M*&TB  C *%M*%TB  C *#M*#TB  C *"M*"TB  C M*,[7,TB  C M*,N*,TB  C %,,&,,TB  C  ., .,TB  C /,/,TB  C 1,1,TB  C 3,3,TB  C 5,5,TB  C [7,\7,  BC,DEF$ 9,)S|@?+(i6*  BChDEF$3ff 9h)QS5|@?+&i6+  BCpDEF$ 9p)OS6|@?+ &i6+   BsCsDEF:s9:s9: @`+h*x+*   BsCrDEF9s99r99 @`,)Q-.*   BsCsDEF9s99s99 @`.)5/)   BsCsDEF:s9:s9: @`0( 12)   BsCsDEF9s99s99 @`s2(22)   BsCsDEF9s:9s:9 @`W4n(4(   BsCsDEF:s::s:: @`/6n(6(   BsCsDEF3ff3ff:sss: @`+Y+x++   BsCsDEF3ff3ff9sss9 @`,Q*Q-*   BsCsDEF3ff3ff9sss9 @`.)5/)   BsCsDEF3ff3ff:sss: @`0' 1)(   BsCsDEF3ff3ff9sss9 @`s2&28'   BsCsDEF3ff3ff9sss9 @`W4 '4}'   BsCsDEF3ff3ff:sss: @`/6&6!'T  C +*+Y+NB  3 +*?++NB  3 ?++a+7+NB B 3 ++?+7+NB  3 ?+*a++T  C ,k)\-)NB  3 ,w)-)NB  3 -):-)NB B 3 ,)-)NB  3 -w):-)T  C .L(@/(NB  3 .W(.z(NB  3 .z(/(NB B 3 .z(.(NB  3 .W(/z(T  C 0,'1'NB  3 08'0Z'NB  3 0Z'0}'NB B 3 0Z'0}'NB  3 08'0Z'T  C ~2&2 'NB  3 2&2&NB  3 2&2&NB B 3 2&2&NB  3 2&2&T  C b4%4i&NB  3 n4&4$&NB  3 4$&4F&NB B 3 n4$&4F&NB  3 4&4$&T  C ;6%6R&NB  3 F6%i6 &NB  3 i6 &6/&NB B 3 F6 &i6/&NB  3 i6%6 &~  6+ 4" ~  6f)(,*- ~  6f)**+ ~  6 )&)*** ~  6 )'**( ~  6 )/&** ' ~  6 )$**% r  6  r  6  r  6  r  6   r  6! !r  6" "r  6# #r  6$ $r  6% %r  6& &~  B' 'N  S B S  ? Nl9N"_t{G tm Gt P!t >t: Zta t ot t tt t..N"_tOO@@N@GTimes New Roman5Symbol3& Arial"phFF!r0Catharine van IngenHeather CampbellCompObjKNhObjInfoWordDocumentMO SummaryInformation(P G Nbjbjَ ?]:::jjjjj~j:lkkkkllllll$lnp%l:kIjkkk%lkckkkk:kN\kkkkk:k <jjkk Striping Read Throughput 0 5 10 15 20 25 30 35 2 4 8 16 32 64 128 Request Size (Kbytes) Throughput (MB/s) Controller-Based Striping Host-Based Striping Array-Based Striping Striping WriteThroughput 0 5 10 15 20 25 30 35 2 4 8 16 32 64 128 Request Size (Kbytes) Throughput (MB/s)  &()+,.02468:<>@BDFGIJLMOQSUWY[^`uvw    "B*CJOJQJhnH CJ5B*CJOJQJhnH B*CJOJQJhnH 5B*CJOJQJhnH  jUmHM'(*+-.12569:=>ABEFHIKLNORSVW '(*+-.12569:=>ABEFHIKLNORSVWZ[_`vw   !"89KLMQWZ[_`vw   !"89KLMN"789JN5B*CJOJQJhnH CJ5B*CJOJQJhnH N N!"# $ %Oh+'0h  $ 0 <HPX`ssCatharine van IngenathNormalnHeather Campbellen2atMicrosoft Word 8.0@@4<@< {@%c3@ @`u+(,(lL o+~(S,( Oo+~(S,(L o+~(S,( Ko+~(S,( F  B@C6DEF{@'@6 @`o+(,( G  BCmDEF{^m ^ @`,(S,( H  BCmDEF{F@mF @`o+~(S,( I zBC DEF  @`K,(M,(NB J 3 {o+(,( L +(,( N+(,( L  BC,DEF{, @`+(+( M  B3C>DEF{>#c3> @`+(,(lL j+t(N,( Yj+t(N,(L j+t(N,( Uj+t(N,( P  BAC6DEF{A'A6 @`j+( ,( Q  BCmDEF{^m ^ @` ,}(N,( R  BCnDEF{FAnF @`j+t(N,( S zBC DEF  @`F,(H,(NB T 3 {k+( ,( L |+(,( X|+(,( V  BC,DEF {, @`|+(+( W  B3C>DEF@ {>#c3> @`|+(,(~ \ 6+)-* L ~-K)/s+ ~-K)/s+DocumentSummaryInformation8 _942048167S F h(ƾ`)ƾ1Table. CompObjRUh՜.+,D՜.+,0 hp  MSFTitl   Title 6> _PID_GUIDAN{BDEEA113-57DA-11D1-9274-0000F81E9F4D}{>&>5 @`-b*..}* _  BCkDEF{\k\ @`..G*r.}* `  BCmDEF{G>mG @`-?*r.v* a zBC DEF  @`j.M*m.Q*NB b 3 {-e*..y* L -R*:.y* f-R*:.y* d  BC+DEF{ + @`-d*.y* e  B4C@DEF{@$c4@ @`-R*:.r*lL -5*n.s* q-5*n.s*L -5*n.s* m-5*n.s* h  B>C5DEF{>&>5 @`-X**.s* i  BCmDEF{^m ^ @`*.<*n.s* j  BClDEF{F>lF @`-5*n.k* k zBC DEF  @`f.A*h.G*NB l 3 {-Z**.n* L -G*6.o* p-G*6.o* n  BC+DEF@{ + @`-Y*.o* o  B4C@DEF`@{@$c4@ @`-G*6.h*lL --*|.l* {--*|.l*L --*|.l* w--*|.l* r  B?C6DEF{?'?6 @`-Q*8.l* s  BCmDEF{^m ^ @`8.6*|.l                           ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~       0!"#$%&')*+,-./2345678:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxz{|}~ [$@$NormalmH D@D Heading 1$@&56B*OJQJhnH H@H Heading 2$@&56B*CJOJQJhnH F@F Heading 3$@&5B*CJOJQJhnH <A@<Default Paragraph Font@B@@ Body Text5B*CJOJQJhnH &';ANO\bgmt{ Trsk 1 &';ANO\bgmt{  |(23,2$e}ɺԫ)/@ (2 (  <   # 'B  3 &~  B ~  B B   3 % ~   B  B   3 $ ~  B# vUT (,!w,$ R# "  zBmChDEF%%mi_O94IZdhhdlZNI44kN44Nl94ON_kimmLP@`(^!+$ V  BCDEdFn)KldF##C_ygI)48@`W+#+$   BC DE,F6      @`R)$Z+$ V  BCDEdFn*Mk6RpsW>)fJ*    48@`(#T)$   B C DE,F6       @`(!(# V  BCDEdFnpR66Qp r)V>>W)s 48@`([!W)!   BC DE,F6        @`T)[!]+a! V  BCDEdFnpQ6gF$ $Db)z>Vr48@`Z+[!+!   B C DE,F6       @`+!+# V  BCDEdFn .QqfG$"B^xiL,  48@`U+#+$   BCDE,F6     @`P) $Z+$ V  BCDEdFn -P o7RqvZA,gK+    48@`(#T)$   BCDE,F6     @`(!)# V  BCDEdFnqR 77 Rqv,YAAZ,v48@`(Y!Y)!   BCDE,F6      @`T)Y!^+b! V  BCDEdFnqR7h H%#C`,yAYv48@`Z+Y!+!   BCDE,F6    @`+!+#    ZBPCDEFLaaIj6jjjjjcj+jjjjVj)jjjjj  jjsj[j?j"jjjjjjljUjAj1j)j%j2FAP_kybJ0~hgO9%Q  !:5M\Z_____&_D___z________________B_e_____ _'_?_P_Ij@`("+$  ! BC DEF**  < _ * a    , P l  lP,a*_<    VX@`*"+"  " B CPDE0F:  P P    @`*"*"  # B?C DE0F:  ? ?  @` *"*"  $ B CPDE0F: P J JDJNO N JP@` *"*"  % BxC DEF**  ! 5 L f   ; S h x xhS;fL5!    VX@`O)" *" ^ & "BqC&DEhFrk h^T:F^:+ $ &&5DP`^=hqnqpnjhk 68@`O)'")"  ' BCSDE0F:  SI @`)")," 6 ( BCDETF^  %T9Og~j30th]E/Q  ,0@`(")" 6 ) BCDETF^b>%{ ` A! !A` 9b,0@`(")6#  * BdC DEF**d^\UL=-xZ<  < Z x   - = L U \ ^ X^ b db^dVX@`)0#)6#  + B CDE0F:     @`)3#)$  , BC DE0F:     @`)$+$  - B CDE0F:     @`+0#+$  . BC DEF**fD"tU:! ! : U t " D f       VX@`+0#+6#  / BCDE0F:     @`+"+3#  0 BCDEF&LD(<D@`)/!*!  1 BC DEF"   @`*!*!  2 BIC{DE0F:  I{Iq   @`)!*!  3 BCfDE0F: \f  @`)! *!  4 BCDE0F:    @`*,!*!  5 BC#DE0F: ! ### !@` *,!*!  6 BfCDEF" f\@`*!*!  7 B CDEF" @`*!*!  8 ZBCDEF!!wb<  wo aP<( <b*JwDH@`L*"*~# ^ 9 "BCDEhFr~st!tBthn`M-2Tjx~hB!t}yus~68@`*"*# ^ : "BC"DEhFr  . B"T"hxxqfTB.   68@`*"*# ^ ; "BC"DEhFr  -"A"U gwwp eUA-   68@`I*"*# ^ < "BCDEhFr|  R3  b <  <b,M||  | 68@`I*"*#  = jBCvDEF##t1vAtPp\ig_nRsEv6v*snh `VK@3(  +6BPat 7t1HL@`) ")[" 6 > BFCKDETF^KKKH+C6;?.C!FC9:95*/3&:>AAAK,0@`)8")]" 6 ? B;CHDETF^ %09!@-E;H;>0;&72)  ,0@`):")]" V @ BLC8DEdFnGG;/"  ,8 8 /%'1 ; G G G KLKG48@`)"):" ^ A "BvCDEhFrvq m c V D2   2DVcmqlqtvt q v68@`)"))"  B BC0DE0F: 0 ++&+/0/ +0@`)&")>"  C B?CDE0F:  ??  @`)6")>" n D 2BCDEpFzM  2|CpSbbSoC{2![}<c$D"%M:<@`)!*"  E B+CDE,F6 +! @`*!*S"  F zBCDEF%%*?Th{|o`O=*'9JXguveQ?*LP@`G*P"*" V G BCDEdFn/V~%?_dF/zV /  48@`)("G*"  H B+CDE0F: &! +& +*&"!&@`)!**"  I BCWDE0F: RM WRWVROMR@`*!*!  J bB"CDEF""+>Uk "p [I:,! {bK5 FH@`+"u,3#  K zB CDEF%% +=LXbkrw{{d}N7$$7Nd{|ulbS B0  LP@`+"w,6#  L B,CvDEF**   % : P g #,6CQ a"v,v*a$L< /" gP:%  VX@`+"w,"  M BCDE0F:     @`+"+6# ^ N "BCDEhFr Z 7 ufY'K5?C2U'gz68@`)!))" 6 O BCCDETF^ 269X7~.# -8A~CX<4' ,0@`~)!)*"  P BCDEF** &1p<]GMT>a1o%|  xgZ)L7@F2X'k} VX@`)!)"  Q BCSDE0F: MI SOSROLIM@`)")," B S 3 ! ~ T BT  (*T "#& p#  V BCDEHFRRR>%<WsH XCgX10W    >oB`w/G`y)i<PM4_qobM5G{4tzW.rz?qf^UNZI7C@>@`!"#y$  W BC5DEF22 +sAIZvyC =`yQ.8v_[?!3q.ljS@0 $5 0)"V ,cC'fh@`!"#Z$  X BCDEHFR_m}#7mMJb(v&(@`A###f#  Y BCDEF&si @` ##$&  Z zBCDEFr?66 @`M"*$#%  [ zBC DEFr? 3 @` x$,"%  \ zBCDEFf @` #`"$  ] BC*DEHFRVQ*p_K 6%  !/#?'Q*&(@`"-$9#B$ 6 ^ BCMDETF^YM&~rl l0pSuw|,0@`{"##$  _ BXCDE<FFOOTMA4%eL~7y)um]F*  "0@P_q !(. 36*<8CDKOVTbXrT&{&md] YVQJA8s1^,Q(C'9(..+8+C.K3R:VEYZ_vfnw~&{T@`!$! %  ` ZB)CDEFAA)}mZE*O}NaH/ vf R=*&=RimU<.%Li3U}*8Ggc}7Sg|y]1@S#t)}@`N% &  a B?CHDEFݿ))?8,, |P$zbKw6R%1 Fu%3AO#]6i={ADHHHHDFjDCA=;:.8?8TX@`l% &  b rB6CDEFݿ66 @` #& &  c rB5CDEFݿ55 @` z%%  d BC]DE0F:ݿ J]|~|w|me]TFF&=J@` % &  e BCNDEHFRRR^>pP/ qCc7 oL.jG/ y'O0#8ALT[^d@j%qt zeP ;''.5> O_0mGy^x5J[k0W7YuNC5&Ck2Tzsme^@`g ""$  f BCDEF22vVz3S+lCdE)Uf+Gf>m(Qu.Z.JhqaQ:BZ4x'fh@` #"u$  g BCmDEHFRmh\N> .  ')/J<mFQ]fm&(@` #!# ^ h "BCDEhFrZZvU5.V{~O# O|tQ.1W}  5!b*5?JRK]sfnu{L#c*z/6>EMV_r|^@ r)d5RC=S&ctu`N@72$[-}V5}v@` !=##$  i B)CDEF22#=[~b8 $P~kH,%H)]nb6'OwZ5 HoxwoSf.] TMF>w7X1;*#% fh@`F!^#[#$  j BCyDEHFRy}  #,5AxNQ\.hqy&(@`"#k#!$  k ZBCDEFAAVH06N#s !O~pU?+-P p~ &8K^u,E[r*F`nqM' z%N<&Ti|m~Tg8Q8jP9|"l^V@` %!&  l BC DEFݿ)))Ee#kIVpA/ =g{` B #  xX<#TX@`N %L!-&  m rBCDEFݿ @`` >& &  n rBCDEFݿ, @`L!%!&  o BC4DE0F:ݿ @4nn:lTik^~P=#@@` &!& B q 3  ~ r B r  ~ s B s   T % $ # R L % v{$ |% v{$l t  0BCDEF 88S;A6$ +l=SNA`/u%d(? QHmr:ZmoTSpT3Srt@`!9m$  L % v{$ {% v{$ u  BCDEF H!v6$K@ G_"^z:\_7}Z>Yx^!`:7jLG%m-?IA&S ,#LDkh!4CMSZ^d.N]jtx{eL&zna^#  d1ATm`t&z5XcoQObXRT+\oVPuLUF:>*3#j6$}bK <- kB ,j>B[uRtK"HTX@`% v{$ *L  " z "Z2 v S  h v! lL c!" yc!"  w BCDEF 11kv|\>~8w5m7]?HG8I&G 1"+1n$^ O$C):00=*I#\_ cgny!?h-[n}Vwcd@c!P"  x BXCDE(F0  )@B}a}2X@5"E"  L N $ N $T }  BC0DETF^ -N~V|bxmmwc}N8' %l%w0-,0@`Nk"$ RL  #  #L _" # _" # L _" # _" # ~  BCDEF& ?i?@`_""    BCDEF  P$ P @`&" #    B!CDE(F2  zP!U<;$zP@`}", # @L v"v" v"v"L |"q" |"q"  tBCDE F I@@|"q"   tBCDE F cP@"P"   |BCDEF d9i @"?" XL v"v" v"v"NB  3  v"" NB  3  "." NB  3  "C" NB  3  "R" NB  3  &"j" NB  3  /"v" *L B # B #  BCDE8F@ /On7WulK/ @o"# L B # B #\L B " B "4   BCDEF 11m]"O)I5E(p X $0QX=:DAYo|u_5k$}jo>dh@`B "    BCDEF__ ## "eg3)[vyi`YL@,m[K HL@`a " L "Q# "Q#@  BCDETF\ "<R4`Qlhzzi,\BS`OXe~+,@"Q# Z2  S  "" B  3  ~  B   <T !R)'+ # V  BCZDEdFn "+2<sCQK5PVZZRG<"8:/Z%| 48@`t"*"+ V  BC4DEdFn~ h$Q'<+*1341%(;Of {48@`B"*"*   zBOC@DEF%% %/ 1-1@2U4k46688::<$<3>>>D@I@M<O8K1D)5"  fD&LP@`:"*"*   zB\CDDEFEEe< $>S-\V[cSeK`HT@61& &5Kg|tqxYHBJ`fbYL5("$,7(D.S.W.[1]5]9Y>QBFD3D$@7 * $.iJSlGMe@`!d*A"+   BCDEF--5 GV\ V<-/G)]/r:Og}gaep{xpnzx`D'zX25 \`@`!*V"F+   ZB'CCDEF!!qC>2   #'u%W='|`!G6/Pl  '-<:TAqCDH@`#*m$+ V  BgCqDEdFn'q2o<kEeO^VU^Kb@e5g` R@4+"  &1<Sdm'q48@` $+=$J+   ZB'CCDEF!!qC>2   #'u%W='|`!G61Pl '-<:TAqCDH@`%*&+ V  BgCqDEdFn'q2o<kEeO^VU^Kb@e5g` R@4+"  &1<Sdm'q48@`%+%J+ 6  BCDEFMa tS,B[swfWWPF5#t]H7*.0y.`(L!7& }V*3`gAtO-~jUA, veVC1,B]|oeXG3s`OB:&sQ 3"FBBFOMXfOw:^jYI<.#@g +Px Lz'2._8ALXeCrn7[}  6Mlp@` #R)'N+ 6  BC?DETF^+ Hh+4:?f?F<-4) ,0@`?&+&>+   BSCvDEDFN +8I$SAQaGk8r'vp^> $(@`#*D#++ V  BCDEdFn|~&1@sQ``Ko5z ~xog bZ$O3BF1W"es|48@`&*&+ 6  BhCHDEF  2EViz !39?@DFFH=F]F}DDB?=;9!' Eg%6FWj}.;@!?A9a3,*,$$.13=`L:]hhb]iWOJ45 c;yrf[jPNE,;2)g? nR8         | i T ? 6 + #)0k8O?4IPYajyoXE8/'$\ (s&3<#B?Q?`@q@@?;5.! <ilp@`:#p)&+   ZBCDEF!!ev vm^K6! !g0B?"M Zep ~):M\eDH@`&*&*   BoCDDEF11$+5>5IITZ^hkmvomf^UKD>3( b 0DA(y`F+ ; O$1BSbu $dh@`%)&* V  BsCDEdFnQKD6) zc"I-18@ E`&oKsmqkbXQ48@`&1*&* v  :BCDEtF~ Ip (9K`uz\>"| shZJ7 &/< E I<@@`w#)#+* v  :BCDEtF~1C^ }+<OZi|n3 a>  "1<@@`#)J$* 6  BkCDETF^ -<KZekig`>VP+1Kcz ,0@`#)#* v  :BCDEtF~&9K bv$+19FWkoBk U >) &<@@`#):$) V  BCDEdFnE +>Tm}C d@" 48@`g$)$) V  BCDEdFn Er "9Qji@{jS>* 48@`r$)$)   ZBC$DEFaa<sO- l O7"(+-/1q3]5J9;:,>DI OXk*; L[$_$f#q! /Oo3`&Gk>$IVbmv~oO~>|<v9m5c/V+E&4   ~^<@`#*%*   B*CDE4F>MMn= v Ep#P'6-2:?GYt!)/6G_0Ic}!=[yL$L*.&.!-)%!n J#n@`#-*%*   ZBCDEF!!m\K:)  I':RmI" mDH@`$)U%) V  BCDEdFnIy 1KcxrK' r\C-48@`$)F%) v  :BCDEtF~ =v"7OgvYA0%zU3<@@`j%)% * V  BCDEdFn >e zz|1H]o~Z6 o W=& 48@`~%)%) v  :BCDEtF~& .[ 8v &/17MB UdsX|2zm` SD9-&<@@`%)2&*   ZBCDEF!!TK>C- @k /:APaa1pzeG0'! vg\TDH@`&){&* BB  3 ' BB @ 3 ' BB  3 ' BB @ 3 ' ~  B   vUT ((w,+ #   zBmCgDEF%%mi_O94IZdggdlZNI44kN44Nl94ON_kimmLP@`((++ V  BCDEdFn)KleF$$D`zgI)48@`W+3+++   BC DE,F6      @`R)+Z++ V  BCDEdFn*Lk6RpsW>)fJ*    48@`(0+T)+   B C DE,F6       @`(,)(3+ V  BCDEdFnpR66Qp r)V>=W(s 48@`((W)/)   BC DE,F6        @`T)(]+( V  BCDEdFnpQ6gF$ $Db(z=Vr48@`Z+(+2)   B C DE,F6       @`+/)+5+ V  BCDEdFn .QqfH%#C_yiL,  48@`U+3+++   BCDE,F6    @`P)+Z++ V  BCDEdFn-P n7RqvZA,gK+48@`(.+T)+   BCDE,F6     @`(+))3+ V  BCDEdFnqR 78 Srv,ZABZ-v 48@`((Y)/)   BCDE,F6       @`T)(^+( V  BCDEdFnrS8h H%#C`-yBZv48@`Z+(+4)   BCDE,F6    @`+/)+7+   ZBPCDEFLaaIj6jjjjjcj+jjjjVj)jjjjj  jjsj[j?j"jjjjjjljUjAj1j)j%j2FAP_kyaJ0~hgO9%Q  !:5M\Z^^^^^&^D^_^z^^^^^^^^^^^^^^^^B^e^^^^^ ^'^?^P^Ij@`(~)++   BC DEF**  < _ * a    , P l  lP,a*_<    VX@`*0*+6*   B CPDE0F:  P P    @`* **3*   B?C DE0F:  ? ?  @` * ***   B CPDE0F: P J JDJMO M JP@` ***6*   BxC DEF**  ! 5 L f   ; S h x xhS;fL5!    VX@`O)0* *6* ^  "BqC&DEhFrk h^T:F^:+ $ &&5DP`^<hqnqpnjhk 68@`O)))4*   BCTDE0F:  TJ @`)|))) 6  BCDETF^  %S9Og~j20tg]E/Q  ,0@`(~))Q* 6  BCDETF^b>%{ _ A! !A_ 9b,0@`(P*)*   BdC DEF**d^\UL=-xZ<  < Z x   - = L U \ ^ X^ b db^dVX@`)*)*   B CDE0F:     @`)*)+   BC DE0F:     @`)+++   B CDE0F:     @`+*++   BC DEF**fD"tU:! ! : U t " D f       VX@`+*+*   BCDE0F:     @`+0*+*   BCDEF&LD(<D@`)(*v)   BC DEF"   @`*s)*x)   BIC{DE0F:  I{Iq   @`);)*x)   BCfDE0F: \f  @`) ) *?)   BCDE0F:    @`*(*)   BC#DE0F: ! ###!@` *(*8)   BfCDEF" f\~@`*4)*v)   B CDEF" @`*t)*w)   ZBCDEF!!wb<  wo aP<( <b*JwDH@`L*p*** ^  "BCDEhFr~st!tBthn`M-2Tjx~hB!t}yus~68@`*m*** ^  "BC"DEhFr  . B"T"hxxq fTB.   68@`*n*** ^  "BC"DEhFr  -"A"U gwwp eUA-   68@`I*n*** ^  "BCDEhFr|  R3  b <  <b,M||  | 68@`I*p***   jBCvDEF##t1vAtPp\ig_nRsEv6v*snh `VK@3(  +6BPat 7t1HL@`)))) 6  BFCKDETF^KKKH+C6;?.C!FC9:95)/3&9>AAAK,0@`)))) 6  B;CHDETF^ %09!@-E;H;>0;&61)  ,0@`)))) V  BLC8DEdFnGG;/"  ,8 8 .%'1 ; G G G KLKG48@`)))) ^  "BvCDEhFrvq m c V D2   2DVcmqlqtvt q v68@`))))   BC0DE0F: 0 ++&+/0/ +0@`))))   B?CDE0F:  ?? @`)))) n  2BCDEpFzM 2|CpSbbSoCz2![}<c$D"%M:<@`)O)**   B+CDE,F6 +! @`*v)*)   zBCDEF%%*?Th{|n`N=*'8JXgu~veQ?*LP@`G*)*"* V  BCDEdFn.V~%?_dF/yV .  48@`))G**   B+CDE0F: &! +& +*&"!&@`)L)*)   BCWDE0F: RM WRWVRNMR@`*L)*x)   bB"CDEF""+>Uk "p [H:,! {bK5 FH@`+3*u,*   zB CDEF%% +=LXbkrw{{d}N~7~$~~~$7Nd{|tlbS B0  LP@`+k*w,*   B,CvDEF**   % : P g #,6CQ a"v,v*a$L< ." gP:%  VX@`+0*w,k*   BCDE0F:     @`+3*+* ^  "BCDEhFr Y 7 ufY'K4?C2T'gy68@`)!))) 6  BCCDETF^ 269W7}.# -8A}CW<4' ,0@`~)#)))   BCDEF** &1p<^GNT?a2o%|   xgZ*L8@G2Y'k~ VX@`))))   BCTDE0F: NJ TPTSPMJN@`)|))) B  3  T _-%u0?) 8# @L p-'u0?) mp-'u0?)lL -~(V0?) -~(V0?)L -~(V0?) -~(V0?)    BCDEFq8 @`-(/?)     BzCDEFqz%z @`/(V0?)     BICDEFqFILlF @`-~(V0()    zBC*DEF** @`=0(E0( NB   3 q-(/3)  L -(/4) -(/4)   B)CDEFq<))< @`-(-/4)    BC&DEFq)&b)& @`-(/) lL -^(H0) -^(H0)L -^(H0) -^(H0)   BCDEFq9 @`-(u/)    ByCDEFqy&y @`u/w(H0)    BJCDEFqFJKnF @`-^(H0)   zBC+DEF++ @`/0(70( NB  3 q-(u/)  L -(/) -(/)   B)CDEF@q<))< @`-(/)    BC&DEF`@q)&b)& @`-(/( lL -I(u0 ) &-I(u0 )L -I(u0 ) "-I(u0 )   BCDEFq8 @`-(/ )    BzCDEFqz&z @`/b(u0 )    BICDEFqFIKlF @`-I(u0(    zBC*DEF** @`[0r(c0( NB ! 3 q-(/(  L -(/( %-(/( #  B)CDEF q;)); @`-(K/(  $  BC%DEF` q)%b)% @`-(/( lL -/(r0( 0-/(r0(L -/(r0( ,-/(r0( '  BCDEFq9 @`-(/(  (  BxCDEFqx%x @`/H(r0(  )  BICDEFqFILmF @`-/(r0(  * zBC*DEF** @`Y0Y(a0g( NB + 3 q-(/(  L -j(/( /-j(/( -  B(CDEF q;((; @`-(I/(  .  BC&DEF`` q(&b(& @`-j(/( lL -(b0( :-(b0(L -(b0( 6-(b0( 1  BCDEFq8 @`-{(/(  2  BzCDEFqz'z @`/'(b0(  3  BICDEFqFIKlF @`-(b0(  4 zBC*DEF** @`I08(P0F( NB 5 3 q-(/(  L -J(/( 9-J(/( 7  B)CDEFq<))< @`-(9/(  8  BC&DEFq)&b)& @`-J(/( lL -'F0( D-'F0(L -'F0( @-'F0( ;  BCDEFq7 @`-](s/(  <  BzCDEFqz%z @`s/ (F0(  =  BICDEFqGILmG @`-'F0(  > zBC+DEF++ @`-0(40(( NB ? 3 q-f(s/(  L -,(/( C-,(/( A  B*CDEFq<**< @`-c(/(  B  BC%DEFq*%b*% @`-,(/( lL -'n0( N-'n0(L -'n0( J-'n0( E  BCDEFq7 @`-Y(/(  F  BzCDEFqz&z @`/(n0(  G  BICDEFqFIKlF @`-'n0(  H zBC*DEF** @`U0(\0#( NB I 3 q-a(/(  L -'(/( M-'(/( K  B*CDEF q<**< @`-_(D/(  L  BC'DEF q*'b*' @`-'(/( lL p-'30( Xp-'30(L p-'30( Tp-'30( O  BCDEFq7 @`p-8(`/(  P  ByCDEFqy%y @``/'30(  Q  BICDEFqFIKmF @`p-'30t(  R zBC*DEF** @`0'"0( NB S 3 qq-A(`/(  L -(/( W-(/( U  B)CDEF q<))< @`->( /(  V  BC%DEF q)%a)% @`-(/h( lL -'Y0r( b-'Y0r(L -'Y0r( ^-'Y0r( Y  BCDEFq8 @`-(/r(  Z  BzCDEFqz&z @`/'Y0r(  [  BICDEFqFIKlF @`-'Y0[(  \ zBC*DEF** @`?0'G0' NB ] 3 q-'(/e(  L -'/g( a-'/g( _  B)CDEFq<))< @`-$(//g(  `  BC&DEFq)&a)& @`-'/O( lL -'K0V( l-'K0V(L -'K0V( h-'K0V( c  BCDEFq8 @`-(x/V(  d  ByCDEFqy&y @`x/'K0V(  e  BICDEFqFILlF @`-'K0>(  f zBC*DEF** @`10'90' NB g 3 q- (x/J(  L -'/K( k-'/K( i  B*CDEF q;**; @`- ("/K(  j  BC%DEF q*%b*% @`-'/2( @L m-&q00( m-&q00(lL -o'S00( w-o'S00(L -o'S00( s-o'S00( n  BCDEFq8 @`-'/0(  o  ByCDEFqy%y @`/'S00(  p  BICDEFqFILmF @`-o'S0(  q zBC*DEF** @`:0'B0' NB r 3 q-'/#(  L -'/%( v-'/%( t  B(CDEFq:((: @`-'*/%(  u  BC%DEFq(%b(% @`-'/ ( lL -O'E0( -O'E0(L -O'E0( }-O'E0( x  BCDEFq8 @`-'r/(  y  BzCDEFqz%z @`r/h'E0(  z  BJCDEFqFJLnF @`-O'E0'  { zBC*DEF** @`,0x'30' NB | 3 q-'r/(  L -'/( -'/( ~  B*CDEF@q;**; @`-'/(    BC'DEF`@q*'c*' @`-'/' lL -:'q0' -:'q0'L -:'q0' -:'q0'   BCDEFq8 @`-'/'    ByCDEFqy&y @`/S'q0'    BICDEFqFIKmF @`-:'q0'   zBC*DEF** @`X0c'`0q' NB  3 q-'/'  L -u'/' -u'/'   B(CDEF q<((< @`-'H/'    BC&DEF` q(&a(& @`-u'/' lL - 'o0' - 'o0'L - 'o0' - 'o0'   BCDEFq8 @`-'/'    BzCDEFqz%z @`/9'o0'    BICDEFqFILmF @`- 'o0'   zBC*DEF** @`V0I']0W' NB  3 q-'/'  L -['/' -['/'   B)CDEF q;)); @`-'F/'    BC&DEF`` q)&b)& @`-['/' lL -&_0' -&_0'L -&_0' -&_0'   BCDEFq9 @`-l'/'    BzCDEFqz%z @`/'_0'    BICDEFqFILlF @`-&_0'   zBC+DEF++ @`F0)'M07' NB  3 q-u'/'  L -;'/' -;'/'   B)CDEFq;)); @`-s'6/'    BC&DEFq)&b)& @`-;'/' lL -&C0' -&C0'L -&C0' -&C0'   BCDEFq7 @`-N'p/'    BzCDEFqz%z @`p/&C0'    BICDEFqFIKlF @`-&C0'   zBC*DEF** @`*0 '10' NB  3 q-W'p/'  L -'/' -'/'   B*CDEFq<**< @`-T'/'    BC&DEFq*&b*& @`-'/~' lL -&k0' -&k0'L -&k0' -&k0'   BCDEFq9 @`-I'/'    BzCDEFqz%z @`/&k0'    BICDEFqFILlF @`-&k0'   zBC*DEF** @`Q0'Y0' NB  3 q-R'/'  L -'/' -'/'   B*CDEF q;**; @`-P'A/'    BC&DEF q*&b*& @`-'/z' lL m-&00|' m-&00|'L m-&00|' m-&00|'   BCDEFq9 @`m-)']/|'    BzCDEFqz&z @`]/&00|'    BICDEFqFILlF @`m-&00e'   zBC*DEF** @`0&0& NB  3 qn-2']/q'  L -&/q' -&/q'   B*CDEF q<**< @`-/'/q'    BC&DEF q*&b*& @`-&/Y' lL -&V0c' -&V0c'L -&V0c' -&V0c'   BCDEFq9 @`-'/c'    BzCDEFqz%z @`/&V0c'    BICDEFqFILlF @`-&V0K'   zBC*DEF** @`<0&D0& NB  3 q-'/V'  L -&/X' -&/X'   B)CDEFq;)); @`-',/X'    BC&DEFq)&c)& @`-&/?' lL -&G0G' -&G0G'L -&G0G' -&G0G'   BCDEFq8 @`-&u/G'    BxCDEFqx%x @`u/&G0G'    BICDEFqGILmG @`-&G0/'   zBC+DEF++ @`.0&60& NB  3 q-&u/:'  L -&/<' -&/<'   B)CDEF q;)); @`-&/<'    BC%DEF q)%b)% @`-&/#' @L _-%c07' 7_-%c07'lL -v&E07' -v&E07'L -v&E07' -v&E07'   BCDEFq8 @`-&r/7'    BzCDEFqz&z @`r/&E07'    BJCDEFqFJKnF @`-v&E0'   zBC*DEF** @`,0&30& NB  3 q-&r/+'  L -&/,' -&/,'   B*CDEFq<**< @`-&/,'    BC&DEFq*&a*& @`-&/' lL t-U&70' t-U&70'L t-U&70' t-U&70'   BCDEFq8 @`t-&d/'    BzCDEFqz&z @`d/n&70'    BICDEFqFIKlF @`t-U&70&   zBC+DEF++ @`0&%0& NB  3 qu-&d/ '  L -&/ ' -&/ '   B)CDEF@q<))< @`-&/ '    BC&DEF`@q)&b)& @`-&/& lL -@&c0' -@&c0'L -@&c0' -@&c0'   BCDEFq8 @`-&/'    ByCDEFqy%y @`/Y&c0'    BICDEFqGILlG @`-@&c0&   zBC*DEF** @`J0j&R0x& NB  3 q-&/&  L -|&/& -|&/&   B*CDEF q;**; @`-&:/&    BC%DEF` q*%b*% @`-|&/& lL -'&a0& -'&a0&L -'&a0& -'&a0&   BCDEFq8 @`-&/&    BzCDEFqz&z @`/@&a0&    BJCDEFqFJKmF @`-'&a0&   zBC*DEF** @`H0P&O0^& NB  3 q-&/&  L -b&/& -b&/&   B*CDEF q;**; @`-&8/&    BC&DEF`` q*&b*& @`-b&/& lL -&Q0& -&Q0&L -&Q0& -&Q0&   BCDEFq8 @`-s&~/&    BxCDEFqx&x @`~/&Q0&    BICDEFqFIKmF @`-&Q0&   zBC*DEF** @`800&?0>& NB  3 q-|&~/&  L -A&/& -A&/&   B*CDEFq<**< @`-y&(/&    BC%DEFq*%b*% @`-A&/& lL r-%50& r-%50&L r-%50&  r-%50&   BCDEFq7 @`r-U&b/&    BxCDEFqx%x @`b/&50&    BICDEFqFILmF @`r-%50&   zBC*DEF** @`0&#0& NB   3 qs-^&b/&  L -#&/&  -#&/&    B(CDEFq;((; @`-[& /&     BC%DEFq(%b(% @`-#&/& lL -%\0& -%\0&L -%\0& -%\0&   BCDEFq7 @`-P&/&    ByCDEFqy%y @`/%\0&    BICDEFqFIKmF @`-%\0&   zBC*DEF** @`C0 &K0& NB  3 q-Y&/&  L -&/& -&/&   B(CDEF q<((< @`-V&3/&    BC&DEF q(&b(& @`-&/& lL _-%"0& "_-%"0&L _-%"0& _-%"0&   BCDEFq7 @`_-0&O/&    BzCDEFqz%z @`O/%"0&    BICDEFqGILlG @`_-%"0l&   zBC*DEF** @` 0%0% NB  3 q`-8&O/w&  L -%s/x& !-%s/x&   B)CDEF q<))< @`-6&.x&     BC%DEF q)%a)% @`-%s/`& lL -%G0j& ,-%G0j&L -%G0j& (-%G0j& #  BCDEFq7 @`-&u/j&  $  BxCDEFqx&x @`u/%G0j&  %  BICDEFqFIKmF @`-%G0R&  & zBC*DEF** @`.0%60% NB ' 3 q-&u/^&  L -%/_& +-%/_& )  B)CDEFq<))< @`-&/_&  *  BC%DEFq)%a)% @`-%/F& lL w-%:0M& 6w-%:0M&L w-%:0M& 2w-%:0M& -  BCDEFq9 @`w-%f/M&  .  BzCDEFqz&z @`f/%:0M&  /  BICDEFqFILlF @`w-%:06&  0 zBC*DEF** @` 0%(0% NB 1 3 qx-&f/A&  L -%/B& 5-%/B& 3  B*CDEF q;**; @`-&/B&  4  BC&DEF@ q*&c*& @`-%/*& B 9 3  T j.&1I* i# @L {.(1I* {.(1I*lL .)a1I* C.)a1I*L .)a1I* ?.)a1I* :  BCDEFq8 @`.)0I*  ;  BzCDEFqz%z @`0)a1I*  <  BICDEFqFILlF @`.)a11*  = zBC*DEF** @`G1)O1) NB > 3 q.)0<*  L .)0>* B.)0>* @  B)CDEFq<))< @`.)70>*  A  BC&DEFq)&b)& @`.)0%* lL .g)S1(* M.g)S1(*L .g)S1(* I.g)S1(* D  BCDEFq8 @`.)0(*  E  ByCDEFqy&y @`0)S1(*  F  BJCDEFqFJKnF @`.g)S1*  G zBC+DEF++ @`91)A1) NB H 3 q.)0*  L .)0* L.)0* J  B)CDEF@q<))< @`.))0*  K  BC&DEF`@q)&b)& @`.)0* lL .R)1* W.R)1*L .R)1* S.R)1* N  BCDEFq8 @`.)0*  O  BzCDEFqz&z @`0k)1*  P  BICDEFqFIKlF @`.R)1)  Q zBC*DEF** @`f1|)m1) NB R 3 q.)0*  L .)0* V.)0* T  B)CDEF q;)); @`.)V0*  U  BC%DEF` q)%b)% @`.)0) lL .9)|1) a.9)|1)L .9)|1) ].9)|1) X  BCDEFq9 @`.)0)  Y  BxCDEFqx%x @`0R)|1)  Z  BICDEFqFILmF @`.9)|1)  [ zBC+DEF++ @`c1b)k1p) NB \ 3 q.)0)  L .t)0) `.t)0) ^  B(CDEF q;((; @`.)S0)  _  BC&DEF`` q(&b(& @`.t)0) lL .)l1) k.)l1)L .)l1) g.)l1) b  BCDEFq8 @`.)0)  c  BzCDEFqz&z @`01)l1)  d  BICDEFqFIKlF @`.)l1)  e zBC*DEF** @`S1B)Z1P) NB f 3 q.)0)  L .S)0) j.S)0) h  B)CDEFq<))< @`.)C0)  i  BC&DEFq)&b)& @`.S)0) lL .(P1) u.(P1)L .(P1) q.(P1) l  BCDEFq7 @`.g)}0)  m  BzCDEFqz%z @`}0)P1)  n  BICDEFqGILmG @`.(P1)  o zBC*DEF** @`71#)>11) NB p 3 q.p)}0)  L .5)0) t.5)0) r  B*CDEFq<**< @`.m)'0)  s  BC%DEFq*%a*% @`.5)0) lL .(x1) .(x1)L .(x1) {.(x1) v  BCDEFq8 @`.b)0)  w  BzCDEFqz&z @`0)x1)  x  BICDEFqFILlF @`.(x1)  y zBC*DEF** @`_1)f1-) NB z 3 q.k)0)  L .0)0) ~.0)0) |  B*CDEF q<**< @`.h)O0)  }  BC&DEF q*&b*& @`.0)0) lL {.(>1) {.(>1)L {.(>1) {.(>1)   BCDEFq7 @`{.B)k0)    ByCDEFqy%y @`k0(>1)    BICDEFqFIKmF @`{.(>1~)   zBC*DEF** @`%1(,1 ) NB  3 q|.J)k0)  L .)0) .)0)   B)CDEF q<))< @`.H)0)    BC%DEF q)%a)% @`.)0r) lL .(c1|) .(c1|)L .(c1|) .(c1|)   BCDEFq8 @`.()0|)    BzCDEFqz&z @`0(c1|)    BICDEFqFIKlF @`.(c1d)   zBC*DEF** @`J1(Q1( NB  3 q.1)0p)  L .(0q) .(0q)   B)CDEFq<))< @`..):0q)    BC&DEFq)&a)& @`.(0X) lL .(U1_) .(U1_)L .(U1_) .(U1_)   BCDEFq8 @`. )0_)    ByCDEFqy%y @`0(U1_)    BICDEFqFILlF @`.(U1H)   zBC*DEF** @`<1(C1( NB  3 q.)0S)  L .(0T) .(0T)   B*CDEF q;**; @`.),0T)    BC%DEF q*%b*% @`.(0<) @L x.'|19) x.'|19)lL .y(]19) .y(]19)L .y(]19) .y(]19)   BCDEFq8 @`.(09)    ByCDEFqy%y @`0(]19)    BICDEFqFILmF @`.y(]1")   zBC*DEF** @`D1(L1( NB  3 q.(0-)  L .(0.) .(0.)   B(CDEFq:((: @`.(40.)    BC%DEFq(%b(% @`.(0) lL .X(P1) .X(P1)L .X(P1) .X(P1)   BCDEFq8 @`.(|0)    BzCDEFqz%z @`|0r(P1)    BJCDEFqEJLnE @`.X(P1)   zBC*DEF** @`61(>1( NB  3 q.(|0 )  L .(0) .(0)   B*CDEF@q;**; @`.(&0)    BC'DEF`@q*'c*' @`.(0( lL .C(|1) .C(|1)L .C(|1) .C(|1)   BCDEFq8 @`.(0)    ByCDEFqy&y @`0\(|1)    BICDEFqFIKmF @`.C(|1(   zBC*DEF** @`c1m(j1{( NB  3 q.(0(  L .(0( .(0(   B(CDEF q<((< @`.(R0(    BC&DEF` q(&a(& @`.(0( lL .*(y1( .*(y1(L .*(y1( .*(y1(   BCDEFq8 @`.(0(    BzCDEFqz%z @`0C(y1(    BICDEFqFILmF @`.*(y1(   zBC*DEF** @``1S(h1a( NB  3 q.(0(  L .e(0( .e(0(   B)CDEF q;)); @`.(P0(    BC&DEF`` q)&b)& @`.e(0( lL . (i1( . (i1(L . (i1( . (i1(   BCDEFq9 @`.v(0(    BzCDEFqz%z @`0"(i1(    BICDEFqFILlF @`. (i1(   zBC+DEF++ @`P12(W1A( NB  3 q.(0(  L .D(0( .D(0(   B)CDEFq<))< @`.|(@0(    BC&DEFq)&b)& @`.D(0( lL .'M1( .'M1(L .'M1( .'M1(   BCDEFq8 @`.X(z0(    BzCDEFqz%z @`z0(M1(    BICDEFqFILlF @`.'M1(   zBC*DEF** @`41(;1"( NB  3 q.a(z0(  L .&(0( .&(0(   B*CDEFq<**< @`.^($0(    BC%DEFq*%b*% @`.&(0( lL .'u1( .'u1(L .'u1( .'u1(   BCDEFq9 @`.S(0(    BzCDEFqz%z @`0'u1(    BICDEFqFILlF @`.'u1(   zBC*DEF** @`[1(c1( NB  3 q.\(0(  L .!(0( .!(0(   B*CDEF q;**; @`.Y(L0(    BC&DEF q*&b*& @`.!(0( lL x.';1( x.';1(L x.';1( x.';1(   BCDEFq9 @`x.2(g0(    BzCDEFqz'z @`g0';1(    BICDEFqFIKlF @`x.';1o(   zBC*DEF** @`"1')1' NB  3 qy.;(g0y(  L .(0{( .(0{(   B*CDEF q<**< @`.9(0{(    BC&DEF q*&b*& @`.(0c( lL .'`1l( .'`1l(L .'`1l( .'`1l(   BCDEFq9 @`.(0l(    BzCDEFqz%z @`0'`1l(    BICDEFqFILlF @`.'`1U(   zBC*DEF** @`G1'N1' NB  3 q."(0`(  L .'0a( .'0a(   B)CDEFq;)); @`.(70a(    BC&DEFq)&c)& @`.'0I( lL .'R1P( .'R1P(L .'R1P( .'R1P(   BCDEFq8 @`.'0P(    BxCDEFqx%x @`0'R1P(    BICDEFqGILmG @`.'R19(   zBC+DEF++ @`91'@1' NB  3 q.(0D(  L .'0F( .'0F(   B)CDEF q<))< @`.()0F(    BC%DEF q)%b)% @`.'0-( @L j.&n1@( hj.&n1@(lL .'P1@(  .'P1@(L .'P1@(  .'P1@(   BCDEFq8 @`.'|0@(    BzCDEFqz&z @`|0'P1@(    BJCDEFqFJKnF @`.'P1)(   zBC*DEF** @`61'>1' NB  3 q.'|03(  L .'05(  .'05(    B*CDEFq<**< @`.'&05(     BC&DEFq*&a*& @`.'0( lL ._'B1 ( ._'B1 (L ._'B1 ( ._'B1 (   BCDEFq7 @`.'n0 (    BzCDEFqz&z @`n0x'B1 (    BICDEFqFIKlF @`._'B1(   zBC+DEF++ @`(1'01' NB  3 q.'n0(  L .'0( .'0(   B)CDEF@q<))< @`.'0(    BC&DEF`@q)&b)& @`.'0' lL .J'n1 ( !.J'n1 (L .J'n1 ( .J'n1 (   BCDEFq8 @`.'0 (    ByCDEFqy%y @`0c'n1 (    BICDEFqGILlG @`.J'n1'   zBC*DEF** @`U1t'\1' NB  3 q.'0'  L .'0(  .'0(   B*CDEF q;**; @`.'E0(    BC%DEF` q*%b*% @`.'0' lL .0'l1' +.0'l1'L .0'l1' '.0'l1' "  BCDEFq8 @`.'0'  #  BzCDEFqz&z @`0I'l1'  $  BJCDEFqFJKmF @`.0'l1'  % zBC+DEF++ @`R1Z'Z1h' NB & 3 q.'0'  L .l'0' *.l'0' (  B*CDEF q;**; @`.'B0'  )  BC&DEF`` q*&b*& @`.l'0' lL .'[1' 5.'[1'L .'[1' 1.'[1' ,  BCDEFq8 @`.}'0'  -  BxCDEFqx%x @`0)'[1'  .  BICDEFqFIKmF @`.'[1'  / zBC*DEF** @`B19'I1G' NB 0 3 q.'0'  L .K'0' 4.K'0' 2  B*CDEFq<**< @`.'20'  3  BC%DEFq*%b*% @`.K'0' lL |.&?1' ?|.&?1'L |.&?1' ;|.&?1' 6  BCDEFq7 @`|._'l0'  7  BxCDEFqx%x @`l0 '?1'  8  BICDEFqFILmF @`|.&?1'  9 zBC*DEF** @`&1'.1)' NB : 3 q}.h'l0'  L .-'0' >.-'0' <  B(CDEFq;((; @`.e'0'  =  BC%DEFq(%a(% @`.-'0' lL .&g1' I.&g1'L .&g1' E.&g1' @  BCDEFq8 @`.Z'0'  A  ByCDEFqy%y @`0'g1'  B  BICDEFqFILmF @`.&g1'  C zBC*DEF** @`N1'U1$' NB D 3 q.c'0'  L .('0' H.('0' F  B(CDEF q<((< @`.`'=0'  G  BC%DEF q(%b(% @`.('0' lL j.&-1' Sj.&-1'L j.&-1' Oj.&-1' J  BCDEFq7 @`j.9'Y0'  K  BzCDEFqz%z @`Y0&-1'  L  BICDEFqGILlG @`j.&-1u'  M zBC*DEF** @`1&1' NB N 3 qk.B'Z0'  L .'~0' R.'~0' P  B)CDEF q<))< @`.?'0'  Q  BC%DEF q)%a)% @`.'~0i' lL .&R1s' ].&R1s'L .&R1s' Y.&R1s' T  BCDEFq7 @`. '0s'  U  BxCDEFqx&x @`0&R1s'  V  BICDEFqFIKmF @`.&R1\'  W zBC*DEF** @`91&@1& NB X 3 q.('0g'  L .&0h' \.&0h' Z  B)CDEFq<))< @`.&')0h'  [  BC%DEFq)%a)% @`.&0P' lL .&D1W' g.&D1W'L .&D1W' c.&D1W' ^  BCDEFq9 @`.'q0W'  _  BzCDEFqz%z @`q0&D1W'  `  BICDEFqFILlF @`.&D1@'  a zBC*DEF** @`+1&21& NB b 3 q. 'q0K'  L .&0L' f.&0L' d  B*CDEF q;**; @`. '0L'  e  BC&DEF@ q*&c*& @`.&04' ~ k B k  T t/'2R+ #  @L /)2R+ /)2R+lL /*k2R+ u/*k2R+L /*k2R+ q/*k2R+ l  BCDEFq8 @`/*1R+  m  BzCDEFqz%z @`1*k2R+  n  BICDEFqFILlF @`/*k2;+  o zBC*DEF** @`R2*Y2* NB p 3 q/+1F+  L /*1G+ t/*1G+ r  B)CDEFq<))< @`/+B1G+  s  BC'DEFq)'c)' @`/*1/+ lL /q*]22+ /q*]22+L /q*]22+ {/q*]22+ v  BCDEFq8 @`/*12+  w  ByCDEFqy&y @`1*]22+  x  BJCDEFqFJKnF @`/q*]2+  y zBC*DEF** @`D2*K2* NB z 3 q/*1&+  L /*1'+ ~/*1'+ |  B)CDEF@q<))< @`/*41'+  }  BC&DEF`@q)&a)& @`/*1+ lL /\*2+ /\*2+L /\*2+ /\*2+   BCDEFq8 @`/*1+    BzCDEFqz&z @`1u*2+    BICDEFqFIKlF @`/\*2+   zBC*DEF** @`p2*w2* NB  3 q/*1+  L /*1+ /*1+   B)CDEF q;)); @`/*`1+    BC%DEF` q)%b)% @`/*1* lL /B*2+ /B*2+L /B*2+ /B*2+   BCDEFq9 @`/*1+    BxCDEFqx%x @`1\*2+    BICDEFqFILmF @`/B*2*   zBC+DEF++ @`n2l*u2z* NB  3 q/*1*  L /~*1* /~*1*   B(CDEF q;((; @`/*]1*    BC&DEF`` q(&b(& @`/~*1* lL /"*w2* /"*w2*L /"*w2* /"*w2*   BCDEFq8 @`/*1*    BzCDEFqz&z @`1;*w2*    BICDEFqFIKlF @`/"*w2*   zBC*DEF** @`]2K*e2Y* NB  3 q/*1*  L /]*1* /]*1*   B)CDEFq;)); @`/*M1*    BC&DEFq)&b)& @`/]*1* lL /*[2* /*[2*L /*[2* /*[2*   BCDEFq7 @`/q*1*    BzCDEFqz%z @`1*[2*    BICDEFqGILmG @`/*[2*   zBC*DEF** @`B2-*I2;* NB  3 q/y*1*  L /?*1* /?*1*   B*CDEFq<**< @`/w*11*    BC%DEFq*%a*% @`/?*1* lL /)2* /)2*L /)2* /)2*   BCDEFq8 @`/l*1*    BzCDEFqz&z @`1*2*    BICDEFqFILlF @`/)2*   zBC*DEF** @`i2(*p26* NB  3 q/u*1*  L /:*1* /:*1*   B*CDEF q<**< @`/r*Y1*    BC&DEF q*&b*& @`/:*1* lL /)H2* /)H2*L /)H2* /)H2*   BCDEFq7 @`/K*u1*    ByCDEFqy%y @`u1)H2*    BICDEFqFIKmF @`/)H2*   zBC*DEF** @`/2*62* NB  3 q/T*u1*  L /*1* /*1*   B)CDEF q<))< @`/Q*1*    BC%DEF q)%a)% @`/*1{* lL /)m2* /)m2*L /)m2* /)m2*   BCDEFq8 @`/2*1*    BzCDEFqz&z @`1)m2*    BICDEFqFIKlF @`/)m2n*   zBC*DEF** @`T2)[2) NB  3 q/:*1y*  L /*1z* /*1z*   B)CDEFq<))< @`/8*D1z*    BC&DEFq)&a)& @`/*1b* lL /)_2i* /)_2i*L /)_2i* /)_2i*   BCDEFq8 @`/*1i*    ByCDEFqy%y @`1)_2i*    BICDEFqFILlF @`/)_2R*   zBC*DEF** @`F2)N2) NB  3 q/*1]*  L /)1^* /)1^*   B*CDEF q:**: @`/*61^*    BC%DEF q*%b*% @`/)1F* @L /(2C* 5/(2C*lL /)h2C* /)h2C*L /)h2C* /)h2C*   BCDEFq8 @`/)1C*    ByCDEFqy%y @`1)h2C*    BICDEFqFILmF @`/)h2,*   zBC*DEF** @`O2)V2) NB  3 q/)17*  L /)18* /)18*   B(CDEFq:((: @`/)>18*    BC%DEFq(%b(% @`/)1 * lL /b)Z2"* /b)Z2"*L /b)Z2"* /b)Z2"*   BCDEFq9 @`/)1"*    BzCDEFqz%z @`1{)Z2"*    BJCDEFqFJMnF @`/b)Z2 *   zBC*DEF** @`A2)H2) NB  3 q/)1*  L /)1* /)1*   B*CDEF@q;**; @`/)11*    BC&DEF`@q*&c*& @`/)1) lL /M)2* /M)2*L /M)2* /M)2*   BCDEFq8 @`/)1*    ByCDEFqy&y @`1f)2*    BICDEFqFIKmF @`/M)2)   zBC*DEF** @`m2v)t2) NB  3 q/)1*  L /)1* /)1*   B(CDEF q<((< @`/)]1*    BC&DEF` q(&a(& @`/)1) lL /3)2) /3)2)L /3)2) /3)2)   BCDEFq8 @`/)1)    BzCDEFqz%z @`1M)2)    BICDEFqFILmF @`/3)2)   zBC*DEF** @`k2])r2k) NB  3 q/)1)  L /o)1) /o)1)   B)CDEF q;)); @`/)Z1)    BC&DEF`` q)&b)& @`/o)1) lL /)t2) /)t2)L /)t2) /)t2)   BCDEFq8 @`/)1)    BzCDEFqz%z @`1,)t2)    BICDEFqFILlF @`/)t2)   zBC+DEF++ @`Z2<)b2J) NB  3 q/)1)  L /N)1) /N)1)   B)CDEFq<))< @`/)J1)    BC&DEFq)&b)& @`/N)1) lL /(X2)  /(X2)L /(X2) /(X2)   BCDEFq8 @`/a)1)    BzCDEFqz&z @`1 )X2)    BICDEFqFIKlF @`/(X2)   zBC*DEF** @`>2)F2,) NB  3 q/j)1)  L /0)1)  /0)1)    B*CDEFq<**< @`/h).1)     BC%DEFq*%b*% @`/0)1) lL /(2) /(2)L /(2) /(2)    BCDEFq9 @`/])1)    BzCDEFqz%z @`1 )2)    BICDEFqFILlF @`/(2)   zBC+DEF++ @`f2)m2') NB  3 q/e)1)  L /+)1) /+)1)   B*CDEF q;**; @`/c)V1)    BC&DEF q*&b*& @`/+)1) lL /(E2)  /(E2)L /(E2) /(E2)   BCDEFq9 @`/<)r1)    BzCDEFqz&z @`r1(E2)    BICDEFqFIKlF @`/(E2x)   zBC*DEF** @`,2(32) NB  3 q/E)r1)  L / )1) / )1)   B*CDEF q<**< @`/B)1)    BC&DEF q*&b*& @`/ )1l) lL /(j2v) */(j2v)L /(j2v) &/(j2v) !  BCDEFq9 @`/")1v)  "  BzCDEFqz%z @`1(j2v)  #  BICDEFqFILlF @`/(j2_)  $ zBC*DEF** @`Q2(X2( NB % 3 q/,)1j)  L /(1k) )/(1k) '  B)CDEFq;)); @`/))A1k)  (  BC&DEFq)&c)& @`/(1S) lL /(\2Z) 4/(\2Z)L /(\2Z) 0/(\2Z) +  BCDEFq7 @`/)1Z)  ,  BxCDEFqx%x @`1(\2Z)  -  BICDEFqGILmG @`/(\2C)  . zBC+DEF++ @`C2(K2( NB / 3 q/)1N)  L /(1O) 3/(1O) 1  B)CDEF q<))< @`/ )31O)  2  BC%DEF q)%b)% @`/(17) @L t/'x2J) t/'x2J)lL /(Z2J) ?/(Z2J)L /(Z2J) ;/(Z2J) 6  BCDEFq8 @`/(1J)  7  BzCDEFqz&z @`1(Z2J)  8  BJCDEFqFJKnF @`/(Z23)  9 zBC*DEF** @`A2(H2( NB : 3 q/(1>)  L /(1?) >/(1?) <  B*CDEFq<**< @`/(11?)  =  BC'DEFq*'b*' @`/(1') lL /i(L2)) I/i(L2))L /i(L2)) E/i(L2)) @  BCDEFq7 @`/(y1))  A  BzCDEFqz&z @`y1(L2))  B  BICDEFqFIKlF @`/i(L2)  C zBC*DEF** @`32(:2( NB D 3 q/(y1)  L /(1) H/(1) F  B)CDEF@q<))< @`/(#1)  G  BC&DEF`@q)&a)& @`/(1) lL /S(x2) S/S(x2)L /S(x2) O/S(x2) J  BCDEFq8 @`/(1)  K  ByCDEFqy%y @`1m(x2)  L  BICDEFqGILlG @`/S(x2(  M zBC*DEF** @`_2}(f2( NB N 3 q/(1)  L /(1 ) R/(1 ) P  B*CDEF q;**; @`/(O1 )  Q  BC%DEF` q*%b*% @`/(1( lL /:(v2( ]/:(v2(L /:(v2( Y/:(v2( T  BCDEFq8 @`/(1(  U  BzCDEFqz&z @`1S(v2(  V  BJCDEFqFJKmF @`/:(v2(  W zBC+DEF++ @`\2c(d2r( NB X 3 q/(1(  L /u(1( \/u(1( Z  B*CDEF q;**; @`/(M1(  [  BC&DEF`` q*&b*& @`/u(1( lL /(e2( g/(e2(L /(e2( c/(e2( ^  BCDEFq8 @`/(1(  _  BxCDEFqx%x @`12(e2(  `  BICDEFqFIKmF @`/(e2(  a zBC*DEF** @`L2C(T2Q( NB b 3 q/(1(  L /U(1( f/U(1( d  B*CDEFq;**; @`/(<1(  e  BC%DEFq*%b*% @`/U(1( lL /'I2( q/'I2(L /'I2( m/'I2( h  BCDEFq7 @`/h(w1(  i  BxCDEFqx%x @`w1(I2(  j  BICDEFqFILmF @`/'I2(  k zBC*DEF** @`02$(822( NB l 3 q/q(w1(  L /7(1( p/7(1( n  B(CDEFq;((; @`/n( 1(  o  BC%DEFq(%a(% @`/7(1( lL /'q2( {/'q2(L /'q2( w/'q2( r  BCDEFq8 @`/c(1(  s  ByCDEFqy%y @`1(q2(  t  BICDEFqFILmF @`/'q2(  u zBC*DEF** @`X2 (`2.( NB v 3 q/l(1(  L /2(1( z/2(1( x  B(CDEF q<((< @`/j(H1(  y  BC%DEF q(%b(% @`/2(1( lL t/'72( t/'72(L t/'72( t/'72( |  BCDEFq7 @`t/C(d1(  }  BzCDEFqz%z @`d1'72(  ~  BICDEFqGILlG @`t/'72(   zBC*DEF** @`2'%2 ( NB  3 qu/L(d1(  L /(1( /(1(   B)CDEF q<))< @`/I(1(    BC%DEF q)%a)% @`/(1s( lL /'\2}( /'\2}(L /'\2}( /'\2}(   BCDEFq7 @`/)(1}(    BxCDEFqx&x @`1'\2}(    BICDEFqFIKmF @`/'\2f(   zBC*DEF** @`C2'K2' NB  3 q/2(1q(  L /'1r( /'1r(   B)CDEFq<))< @`//(31r(    BC%DEFq)%a)% @`/'1Y( lL /'N2a( /'N2a(L /'N2a( /'N2a(   BCDEFq9 @`/ ({1a(    BzCDEFqz%z @`{1'N2a(    BICDEFqFILlF @`/'N2I(   zBC*DEF** @`52'<2' NB  3 q/({1T(  L /'1V( /'1V(   B*CDEF q:**: @`/(%1V(    BC&DEF@ q*&c*& @`/'1=( B  3   T /2#  #  @L /!2#  /!2#lL 0"2# 0"2#L 0"2# 0"2#   BCDEFq9 @`0Q#2#    BzCDEFqz%z @`2"2#    BICDEFqFILmF @`0"2#   zBC*DEF** @`2#2# NB  3 q0[#2#  L I0 #&2# I0 #&2#   B)CDEFq;)); @`I0X#1#    BC&DEFq)&c)& @`I0 #&2# lL 0"2# 0"2#L 0"2# 0"2#   BCDEFq9 @`01#1#    BzCDEFqz&z @`1"2#    BJCDEFqFJLmF @`0"2m#   zBC*DEF** @`2"2" NB  3 q0:#1y#  L ;0"2y# ;0"2y#   B*CDEF@q<**< @`;07#1y#    BC&DEF`@q*&b*& @`;0"2a# lL 10"2p# 10"2p#L 10"2p# 10"2p#   BCDEFq7 @`10# 2p#    BzCDEFqz&z @` 2"2p#    BICDEFqFIKmF @`10"2X#   zBC*DEF** @`2"2" NB  3 q20%# 2d#  L g0"E2e# g0"E2e#   B)CDEF q<))< @`g0"#1e#    BC%DEF` q)%a)% @`g0"E2L# lL .0"2V# .0"2V#L .0"2V# .0"2V#   BCDEFq8 @`.0#2V#    ByCDEFqy%y @`2"2V#    BICDEFqFILlF @`.0"2?#   zBC*DEF** @`2"2" NB  3 q/0 #2J#  L e0"B2K# e0"B2K#   B)CDEF q<))< @`e0#1K#    BC&DEF`` q)&a)& @`e0"B23# lL 0u"25# 0u"25#L 0u"25# 0u"25#   BCDEFq7 @`0"25#    ByCDEFqy&y @`2"25#    BICDEFqFIKmF @`0u"2#   zBC+DEF++ @`2"2" NB  3 q0"2)#  L U0"22*# U0"22*#   B(CDEFq<((< @`U0"1*#    BC&DEFq(&b(& @`U0"22# lL 0V"2# 0V"2#L 0V"2# 0V"2#   BCDEFq8 @`0"1#    BzCDEFqz%z @`1p"2#    BJCDEFqGJMmG @`0V"2"   zBC*DEF** @`2"2" NB  3 q0"1 #  L 90"2 # 90"2 #   B)CDEFq<))< @`90"1 #    BC%DEFq)%b)% @`90"2" lL *0R"2# *0R"2#L *0R"2# *0R"2#   BCDEFq8 @`*0"2#    ByCDEFqy&y @`2k"2#    BICDEFqFIKmF @`*0R"2"   zBC+DEF++ @`2{"2" NB  3 q+0"2#  L `0">2# `0">2#   B)CDEF q;)); @``0"1#    BC&DEF q)&b)& @``0">2" lL /1"2" /1"2"L /1"2" /1"2"   BCDEFq8 @`/"1"    BzCDEFqz%z @`1J"2"    BICDEFqFIKlF @`/1"2"   zBC*DEF** @`2["2i" NB  3 q/"1"  L &0l"2" &0l"2"   B*CDEF q<**< @`&0"1"    BC%DEF q*%b*% @`&0l"2" lL 0"2" 0"2"L 0"2" 0"2"   BCDEFq9 @`0"2"    ByCDEFqy&y @`20"2"    BICDEFqFIKmF @`0"2"   zBC*DEF** @`2A"2O" NB  3 q0"2"  L L0S")2" L0S")2"   B(CDEFq;((; @`L0"1"    BC&DEFq(&b(& @`L0S")2" lL 0!2"  0!2"L 0!2" 0!2"   BCDEFq7 @`0i"1"    ByCDEFqy%y @`1"2"    BICDEFqFILlF @`0!2"   zBC+DEF++ @`2%"23" NB  3 q0r"1"  L =07"2" =07"2"   B*CDEF q;**; @`=0o"1"    BC%DEF q*%b*% @`=07"2" @L / 2" f / 2"lL 0!2"  0!2"L 0!2"  0!2"    BCDEFq7 @`0C"1"     BzCDEFqz%z @`1!2"     BICDEFqFILlF @`0!2"    zBC*DEF** @`2!2 " NB   3 q0K"1"  L F0"#2"  F0"#2"    B)CDEFq;)); @`F0I"1"     BC%DEFq)%a)% @`F0"#2s" lL 0!2u"  0!2u"L 0!2u"  0!2u"    BCDEFq9 @`0""1u"     ByCDEFqy%y @`1!2u"     BJCDEFqFJLnF @`0!2^"    zBC*DEF** @`2!2! NB   3 q0+"1i"  L 80!2j"  80!2j"    B)CDEF@q:)): @`80("1j"     BC&DEF`@q)&c)& @`80!2R" lL .0!2`"  .0!2`"L .0!2`"  .0!2`"    BCDEFq9 @`.0 "2`"     BzCDEFqz&z @`2!2`"     BICDEFqFIKlF @`.0!2I"    zBC*DEF** @`2!2! NB   3 q/0"2S"  L d0!B2U"  d0!B2U"    B)CDEF q<))< @`d0"1U"     BC&DEF` q)&b)& @`d0!B2=" lL +0!2G" ) +0!2G"L +0!2G" % +0!2G"    BCDEFq9 @`+0!2G"  !   BzCDEFqz%z @`2!2G"  "   BJCDEFqFJLmF @`+0!2/"  #  zBC*DEF** @`2!2! NB $  3 q,0!2:"  L b0!?2<" ( b0!?2<" &   B(CDEF q:((: @`b0!1<"  '   BC&DEF`` q(&c(& @`b0!?2#" lL 0f!2&" 3 0f!2&"L 0f!2&" / 0f!2&" *   BCDEFq8 @`0! 2&"  +   BzCDEFqz%z @` 2!2&"  ,   BICDEFqFILlF @`0f!2"  -  zBC*DEF** @`2!2! NB .  3 q0! 2"  L R0!/2" 2 R0!/2" 0   B)CDEFq<))< @`R0!1"  1   BC'DEFq)'b)' @`R0!/2" lL /G!2" = /G!2"L /G!2" 9 /G!2" 4   BCDEFq8 @`/!1"  5   ByCDEFqy%y @`1`!2"  6   BICDEFqFIKmF @`/G!2!  7  zBC+DEF++ @`2q!2! NB 8  3 q0!1!  L 60!2! < 60!2! :   B)CDEFq;)); @`60!1!  ;   BC%DEFq)%b)% @`60!2! lL '0C!2" G '0C!2"L '0C!2" C '0C!2" >   BCDEFq8 @`'0!2"  ?   BzCDEFqz%z @`2\!2"  @   BICDEFqFILmF @`'0C!2!  A  zBC*DEF** @`2l!2z! NB B  3 q(0!2!  L ]0~!;2! F ]0~!;2! D   B*CDEF q<**< @`]0!1!  E   BC&DEF q*&a*& @`]0~!;2! lL /"!2! Q /"!2!L /"!2! M /"!2! H   BCDEFq9 @`/!1!  I   ByCDEFqy&y @`1;!2!  J   BICDEFqFIKmF @`/"!2!  K  zBC+DEF++ @`2K!2Z! NB L  3 q/!1!  L #0]!2! P #0]!2! N   B)CDEF q<))< @`#0!1!  O   BC&DEF q)&b)& @`#0]!2! lL 0!2! [ 0!2!L 0!2! W 0!2! R   BCDEFq8 @`0u!2!  S   BzCDEFqz%z @`2"!2!  T   BICDEFqFILmF @`0!2!  U  zBC*DEF** @`22!2@! NB V  3 q0~!2!  L H0D!&2! Z H0D!&2! X   B)CDEFq<))< @`H0{!1!  Y   BC&DEFq)&b)& @`H0D!&2! lL 0 2! e 0 2!L 0 2! a 0 2! \   BCDEFq7 @`0Z!1!  ]   ByCDEFqy%y @`1!2!  ^   BICDEFqGILlG @`0 2!  _  zBC*DEF** @`2!2$! NB `  3 q0b!1!  L :0(!2! d :0(!2! b   B*CDEF q<**< @`:0`!1!  c   BC&DEF q*&b*& @`:0(!2! @L /2!  /2!lL 0 2! p 0 2!L 0 2! l 0 2! g   BCDEFq9 @`0I!1!  h   ByCDEFqy&y @`1 2!  i   BJCDEFqFJKnF @`0 2!  j  zBC*DEF** @`2!2! NB k  3 q0R!1!  L 80!2! o 80!2! m   B)CDEFq;)); @`80O!1!  n   BC&DEFq)&b)& @`80!2y! lL / 2|! z / 2|!L / 2|! v / 2|! q   BCDEFq8 @`/(!1|!  r   BzCDEFqz&z @`1 2|!  s   BICDEFqFILmF @`/ 2e!  t  zBC*DEF** @`2 2  NB u  3 q/1!1p!  L *0 2q! y *0 2q! w   B)CDEF@q<))< @`*0/!1q!  x   BC&DEF`@q)&b)& @`*0 2Y! lL 0 2g!  0 2g!L 0 2g!  0 2g! {   BCDEFq7 @`0!2g!  |   BxCDEFqx%x @`2 2g!  }   BICDEFqGILmG @`0 2P!  ~  zBC*DEF** @`2 2  NB   3 q!0!2[!  L V0 32\!  V0 32\!    B)CDEF q<))< @`V0!1\!     BC%DEF` q)%a)% @`V0 32D! lL 0 2N!  0 2N!L 0 2N!  0 2N!    BCDEFq7 @`0 2N!     ByCDEFqy&y @` 2 2N!     BJCDEFqFJKnF @`0 26!    zBC*DEF** @`2 2  NB   3 q0! 2B!  L T0 12C!  T0 12C!    B*CDEF q<**< @`T0!1C!     BC&DEF`` q*&a*& @`T0 12*! lL  0l 2-!   0l 2-!L  0l 2-!   0l 2-!    BCDEFq7 @` 0 1-!     ByCDEFqy%y @`1 2-!     BICDEFqFIKlF @` 0l 2!    zBC+DEF++ @`2 2  NB   3 q0 1!!  L D0 !2"!  D0 !2"!    B*CDEFq<**< @`D0 1"!     BC%DEFq*%b*% @`D0 !2 ! lL /N 2!  /N 2!L /N 2!  /N 2!    BCDEFq8 @`/ 1!     ByCDEFqy%y @`1g 2!     BICDEFqFIMlF @`/N 2     zBC*DEF** @`2w 2  NB   3 q/ 1!  L (0 2!  (0 2!    B)CDEFq;)); @`(0 1!     BC%DEFq)%b)% @`(0 2  lL 0I 2 !  0I 2 !L 0I 2 !  0I 2 !    BCDEFq8 @`0 2 !     BzCDEFqz%z @`2b 2 !     BICDEFqFIKlF @`0I 2     zBC+DEF++ @`2s 2  NB   3 q0 2   L O0 -2   O0 -2     B)CDEF q;)); @`O0 1      BC%DEF q)%b)% @`O0 -2  lL /( 2   /( 2 L /( 2   /( 2     BCDEFq8 @`/ 1      BzCDEFqz%z @`1B 2      BICDEFqGILmG @`/( 2     zBC*DEF** @`2R 2`  NB   3 q/ 1   L 0d 1   0d 1     B)CDEF q<))< @`0 x1      BC%DEF q)%b)% @`0d 1  lL 0 2   0 2 L 0 2   0 2     BCDEFq8 @`0| 1      ByCDEFqy&y @`1( 2      BICDEFqFIKlF @`0 2     zBC*DEF** @`29 2G  NB   3 q0 1   L :0J 2   :0J 2     B*CDEFq;**; @`:0 1      BC%DEFq*%b*% @`:0J 2  lL /2   /2 L /2   /2     BCDEFq8 @`/` 1      ByCDEFqy%y @`1 2      BICDEFqFILmF @`/2     zBC+DEF++ @`2 2+  NB   3 q/i 1   L ,0. 2   ,0. 2     B)CDEF q;)); @`,0f 1      BC&DEF@ q)&c)& @`,0. 2  B  3   T 0 3$  #  @L 0#3$ 2 0#3$lL 1#3$  1#3$L 1#3$  1#3$    BCDEFq9 @`1[$ 3$     BzCDEFqz%z @` 3$3$     BICDEFqFILmF @`1#3$    zBC*DEF** @`3$3&$ NB   3 q1d$ 3$  L S1)$13$  S1)$13$    B)CDEFq;)); @`S1a$2$     BC&DEFq)&c)& @`S1)$13$ lL 1#3$  1#3$L 1#3$  1#3$    BCDEFq9 @`1:$2$     BzCDEFqz&z @`2#3$     BJCDEFqFJLmF @`1#3w$    zBC*DEF** @`3#3$ NB   3 q1C$2$  L E1 $#3$  E1 $#3$    B*CDEF@q<**< @`E1A$2$     BC&DEF`@q*&b*& @`E1 $#3k$ lL ;1#3y$  ;1#3y$L ;1#3y$  ;1#3y$    BCDEFq7 @`;1&$+3y$     BzCDEFqz&z @`+3#3y$     BICDEFqFIKmF @`;1#3b$    zBC*DEF** @`3#3# NB   3 q<1.$+3m$  L r1#O3n$  r1#O3n$    B)CDEF q<))< @`r1,$2n$     BC%DEF` q)%a)% @`r1#O3V$ lL 91#3`$  91#3`$L 91#3`$  91#3`$    BCDEFq8 @`91 $)3`$     ByCDEFqy%y @`)3#3`$     BICDEFqFILlF @`91#3H$    zBC*DEF** @`3#3# NB   3 q:1$)3T$  L o1#M3U$  o1#M3U$    B)CDEF q<))< @`o1$2U$     BC'DEF`` q)'b)' @`o1#M3<$ lL (1~#3?$  (1~#3?$L (1~#3?$  (1~#3?$    BCDEFq7 @`(1#3?$     ByCDEFqy&y @`3#3?$     BICDEFqFIKmF @`(1~#3($    zBC*DEF** @`3#3# NB   3 q)1#33$  L _1#<34$  _1#<34$    B(CDEFq<((< @`_1#24$     BC&DEFq(&a(& @`_1#<3$ lL  1`#3 $   1`#3 $L  1`#3 $   1`#3 $    BCDEFq8 @` 1#2 $     BzCDEFqz%z @`2y#3 $     BJCDEFqGJLmG @` 1`#3 $    zBC*DEF** @`3#3# NB   3 q1#2$  L C1# 3$  C1# 3$    B)CDEFq<))< @`C1#2$     BC%DEFq)%b)% @`C1# 3# lL 41[#3$  41[#3$L 41[#3$  41[#3$    BCDEFq8 @`41#$3$     ByCDEFqy&y @`$3t#3$     BICDEFqFIKmF @`41[#3$    zBC+DEF++ @`3#3# NB   3 q51#$3$  L k1#H3$  k1#H3$    B)CDEF q;)); @`k1#2$     BC&DEF q)&b)& @`k1#H3# lL 0;#3#  0;#3#L 0;#3#  0;#3#    BCDEFq8 @`0#2#     BzCDEFqz%z @`2T#3#     BICDEFqFIKlF @`0;#3#    zBC*DEF** @`3d#3r# NB   3 q0#2#  L 01v#3#  01v#3#    B*CDEF q;**; @`01#2#     BC%DEF q*%b*% @`01v#3# lL 1!#3# ' 1!#3#L 1!#3# # 1!#3#    BCDEFq9 @`1#3#     ByCDEFqy&y @`3:#3#     BICDEFqFIKmF @`1!#3#  !  zBC*DEF** @`3K#3Y# NB "  3 q 1#3#  L V1\#33# & V1\#33# $   B(CDEFq;((; @`V1#2#  %   BC&DEFq(&b(& @`V1\#33# lL 1#3# 1 1#3#L 1#3# - 1#3# (   BCDEFq7 @`1r#3#  )   ByCDEFqy%y @`3#3#  *   BICDEFqFILlF @`1#3#  +  zBC*DEF** @`3.#3<# NB ,  3 q1{#3#  L H1A#%3# 0 H1A#%3# .   B*CDEF q;**; @`H1x#2#  /   BC%DEF q*%a*% @`H1A#%3# @L 0!3#  0!3#lL 1"3# < 1"3#L 1"3# 8 1"3# 3   BCDEFq7 @`1L# 3#  4   BzCDEFqz%z @` 3"3#  5   BICDEFqFILlF @`1"3#  6  zBC*DEF** @`3#3# NB 7  3 q1U# 3#  L P1#.3# ; P1#.3# 9   B)CDEFq;)); @`P1R#2#  :   BC%DEFq)%a)% @`P1#.3|# lL  1"3# F  1"3#L  1"3# B  1"3# =   BCDEFq9 @` 1+#2#  >   ByCDEFqy%y @`2"3#  ?   BJCDEFqFJLnF @` 1"3h#  @  zBC+DEF++ @`3"3" NB A  3 q 15#2s#  L B1" 3t# E B1" 3t# C   B)CDEF@q:)): @`B12#2t#  D   BC&DEF`@q)&c)& @`B1" 3\# lL 81"3j# P 81"3j#L 81"3j# L 81"3j# G   BCDEFq9 @`81#(3j#  H   BzCDEFqz&z @`(3"3j#  I   BICDEFqFIKlF @`81"3S#  J  zBC*DEF** @`3"3" NB K  3 q91#(3^#  L o1"L3_# O o1"L3_# M   B)CDEF q;)); @`o1#2_#  N   BC&DEF` q)&b)& @`o1"L3G# lL 51"3P# Z 51"3P#L 51"3P# V 51"3P# Q   BCDEFq9 @`51"%3P#  R   BzCDEFqz%z @`%3"3P#  S   BJCDEFqFJLmF @`51"39#  T  zBC*DEF** @`3"3" NB U  3 q71#&3D#  L l1"I3E# Y l1"I3E# W   B(CDEF q:((: @`l1#2E#  X   BC&DEF`` q(&c(& @`l1"I3-# lL %1o"30# d %1o"30#L %1o"30# ` %1o"30# [   BCDEFq9 @`%1"30#  \   BzCDEFqz%z @`3"30#  ]   BICDEFqFIMlF @`%1o"3#  ^  zBC*DEF** @`3"3" NB _  3 q&1"3$#  L \1"93%# c \1"93%# a   B)CDEFq<))< @`\1"2%#  b   BC&DEFq)&b)& @`\1"93 # lL  1Q"3# n  1Q"3#L  1Q"3# j  1Q"3# e   BCDEFq8 @` 1"2#  f   ByCDEFqy%y @`2j"3#  g   BICDEFqFIKmF @` 1Q"3"  h  zBC+DEF++ @`3z"3" NB i  3 q 1"2#  L @1"3# m @1"3# k   B)CDEFq;)); @`@1"2#  l   BC%DEFq)%b)% @`@1"3" lL 11L"3 # x 11L"3 #L 11L"3 # t 11L"3 # o   BCDEFq8 @`11"!3 #  p   BzCDEFqz%z @`!3f"3 #  q   BICDEFqFILmF @`11L"3"  r  zBC*DEF** @`3v"3" NB s  3 q21"!3#  L g1"E3# w g1"E3# u   B*CDEF q<**< @`g1"2#  v   BC'DEF q*'b*' @`g1"E3" lL 0,"3"  0,"3"L 0,"3" ~ 0,"3" y   BCDEFq8 @`0"2"  z   ByCDEFqy&y @`2E"3"  {   BICDEFqFIKmF @`0,"3"  |  zBC*DEF** @`3U"3c" NB }  3 q0"2"  L -1g" 3"  -1g" 3"    B)CDEF q<))< @`-1"2"     BC&DEF q)&a)& @`-1g" 3" lL 1"3"  1"3"L 1"3"  1"3"    BCDEFq8 @`1" 3"     BzCDEFqz%z @` 3+"3"     BICDEFqFILmF @`1"3"    zBC*DEF** @`3;"3I" NB   3 q1" 3"  L S1M"03"  S1M"03"    B)CDEFq<))< @`S1"2"     BC&DEFq)&b)& @`S1M"03" lL 1!3"  1!3"L 1!3"  1!3"    BCDEFq8 @`1c"2"     ByCDEFqy%y @`2"3"     BICDEFqGIMlG @`1!3"    zBC*DEF** @`3 "3." NB   3 q1l"2"  L E11""3"  E11""3"    B*CDEF q<**< @`E1i"2"     BC%DEF q*%b*% @`E11""3" @L 0 3"  0 3"lL  1!3"   1!3"L  1!3"   1!3"    BCDEFq9 @` 1S"2"     ByCDEFqy&y @`2!3"     BJCDEFqFJKnF @` 1!3"    zBC*DEF** @`3"3" NB   3 q 1["2"  L B1!" 3"  B1!" 3"    B)CDEFq;)); @`B1Y"2"     BC&DEFq)&b)& @`B1!" 3" lL 0!3"  0!3"L 0!3"  0!3"    BCDEFq8 @`02"2"     BzCDEFqz&z @`2!3"     BICDEFqFILmF @`0!3n"    zBC*DEF** @`3!3! NB   3 q0;"2y"  L 41"3{"  41"3{"    B)CDEF@q<))< @`418"2{"     BC&DEF`@q)&b)& @`41"3b" lL *1!3q"  *1!3q"L *1!3q"  *1!3q"    BCDEFq7 @`*1"3q"     BxCDEFqx%x @`3!3q"     BICDEFqGILmG @`*1!3Y"    zBC*DEF** @`3!3! NB   3 q+1&"3d"  L a1!>3f"  a1!>3f"    B)CDEF q<))< @`a1#"2f"     BC%DEF` q)%a)% @`a1!>3M" lL '1!3W"  '1!3W"L '1!3W"  '1!3W"    BCDEFq7 @`'1"3W"     ByCDEFqy&y @`3!3W"     BJCDEFqFJKnF @`'1!3@"    zBC*DEF** @`3!3! NB   3 q)1 "3K"  L ^1!<3L"  ^1!<3L"    B*CDEF q<**< @`^1 "2L"     BC'DEF`` q*'b*' @`^1!<34" lL 1v!36"  1v!36"L 1v!36"  1v!36"    BCDEFq7 @`1!36"     ByCDEFqy%y @`3!36"     BICDEFqFIKlF @`1v!3"    zBC*DEF** @`3!3! NB   3 q1!3+"  L N1!+3,"  N1!+3,"    B*CDEFq<**< @`N1!2,"     BC%DEFq*%a*% @`N1!+3" lL 0W!3"  0W!3"L 0W!3"  0W!3"    BCDEFq8 @`0!2"     ByCDEFqy%y @`2q!3"     BICDEFqFILlF @`0W!3"    zBC*DEF** @`3!3! NB   3 q0!2 "  L 21!3 "  21!3 "    B)CDEFq;)); @`21!2 "     BC%DEFq)%b)% @`21!3! lL #1S!3"  #1S!3"L #1S!3"  #1S!3"    BCDEFq8 @`#1!3"     BzCDEFqz%z @`3l!3"     BICDEFqFIKlF @`#1S!3!    zBC+DEF++ @`3|!3! NB   3 q$1!3"  L Z1!73 "  Z1!73 "    B)CDEF q;)); @`Z1!2 "     BC%DEF q)%b)% @`Z1!73! lL 02!3!  02!3!L 02!3!  02!3!    BCDEFq8 @`0!2!     BzCDEFqz%z @`2K!3!     BICDEFqGILmG @`02!3!    zBC*DEF** @`3\!3j! NB   3 q0!2!  L 1n!2!  1n!2!    B)CDEF q;)); @`1!2!     BC%DEF q)%b)% @`1n!2! lL 1!3!  1!3!L 1!3!  1!3!    BCDEFq8 @`1!2!     ByCDEFqy&y @`22!3!     BICDEFqFIKlF @`1!3!    zBC*DEF** @`3B!3P! NB   3 q1!2!  L E1T!"3!  E1T!"3!    B*CDEFq;**; @`E1!2!     BC%DEFq*%b*% @`E1T!"3! lL 1 3!  1 3!L 1 3!  1 3!    BCDEFq8 @`1j!2!     ByCDEFqy%y @`2!3!     BICDEFqFILmF @`1 3!    zBC*DEF** @`3&!34! NB   3 q1s!2!  L 718!3!  718!3!    B)CDEF q;)); @`71p!2!     BC&DEF@ q)&b)& @`718!3! B  3  ~  B  T 1"5% / # @L 2$5% d 2$5%lL '2$4%  '2$4%L '2$4%  '2$4%    BCDEFq9 @`'2d%4%     BzCDEFqz%z @`4%4%     BICDEFqFILmF @`'2$4%    zBC+DEF++ @`4!%4/% NB   3 q(2n%4%  L ^23%;4%  ^23%;4%    B)CDEFq;)); @`^2k%3%     BC&DEFq)&c)& @`^23%;4% lL 2$4%  2$4%L 2$4%  2$4%    BCDEFq9 @`2D% 4%     BzCDEFqz&z @` 4$4%     BJCDEFqFJKmF @`2$4%    zBC*DEF** @`4%4% NB   3 q2L% 4%  L P2%-4%  P2%-4%    B*CDEF@q<**< @`P2J%3%     BC&DEF`@q*&b*& @`P2%-4t% lL E2$5%  E2$5%L E2$5%  E2$5%    BCDEFq7 @`E2/%54%     BzCDEFqz&z @`54$5%     BICDEFqFIKmF @`E2$5k%    zBC*DEF** @`4$4$ NB   3 qF28%54w%  L |2$Y4x%  |2$Y4x%    B)CDEF q<))< @`|25%3x%     BC%DEF` q)%a)% @`|2$Y4_% lL C2$5i% ' C2$5i%L C2$5i% # C2$5i%    BCDEFq8 @`C2%34i%     ByCDEFqy%y @`34$5i%     BICDEFqEILlE @`C2$5Q%  !  zBC*DEF** @`4$4$ NB "  3 qD2%34]%  L z2$W4^% & z2$W4^% $   B)CDEF q<))< @`z2%3^%  %   BC'DEF`` q)'b)' @`z2$W4F% lL 32$4H% 1 32$4H%L 32$4H% - 32$4H% (   BCDEFq7 @`32$#4H%  )   ByCDEFqy&y @`#4$4H%  *   BICDEFqFIKmF @`32$41%  +  zBC*DEF** @`4$4$ NB ,  3 q42$#4<%  L j2$G4=% 0 j2$G4=% .   B(CDEFq<((< @`j2$3=%  /   BC&DEFq(&a(& @`j2$G4%% lL 2i$4*% ; 2i$4*%L 2i$4*% 7 2i$4*% 2   BCDEFq8 @`2$4*%  3   BzCDEFqz%z @`4$4*%  4   BJCDEFqGJLmG @`2i$4%  5  zBC*DEF** @`4$4$ NB 6  3 q2$4%  L M2$+4% : M2$+4% 8   B)CDEFq;)); @`M2$3%  9   BC%DEFq)%b)% @`M2$+4% lL >2e$5%% E >2e$5%%L >2e$5%% A >2e$5%% <   BCDEFq7 @`>2$.4%%  =   ByCDEFqy&y @`.4~$5%%  >   BICDEFqFIKmF @`>2e$5%  ?  zBC+DEF++ @`4$4$ NB @  3 q?2$.4%  L u2$R4% D u2$R4% B   B)CDEF q<))< @`u2$3%  C   BC&DEF q)&b)& @`u2$R4% lL 2D$4% O 2D$4%L 2D$4% K 2D$4% F   BCDEFq8 @`2$3%  G   BzCDEFqz%z @`3]$4%  H   BICDEFqFIKlF @`2D$4$  I  zBC*DEF** @`4n$4|$ NB J  3 q2$3$  L ;2$4$ N ;2$4$ L   B*CDEF q;**; @`;2$3$  M   BC%DEF q*%b*% @`;2$4$ lL )2*$4$ Y )2*$4$L )2*$4$ U )2*$4$ P   BCDEFq9 @`)2$4$  Q   ByCDEFqy&y @`4C$4$  R   BICDEFqFIKmF @`)2*$4$  S  zBC*DEF** @`4T$4b$ NB T  3 q*2$4$  L `2f$=4$ X `2f$=4$ V   B(CDEFq;((; @``2$3$  W   BC&DEFq(&b(& @``2f$=4$ lL 2$4$ c 2$4$L 2$4$ _ 2$4$ Z   BCDEFq7 @`2|$ 4$  [   ByCDEFqy%y @` 4($4$  \   BICDEFqFILlF @`2$4$  ]  zBC*DEF** @`48$4F$ NB ^  3 q2$ 4$  L R2J$/4$ b R2J$/4$ `   B*CDEF q;**; @`R2$3$  a   BC%DEF q*%a*% @`R2J$/4$ @L 2"5$  2"5$lL $2#4$ n $2#4$L $2#4$ j $2#4$ e   BCDEFq7 @`$2V$4$  f   BzCDEFqz%z @`4$4$  g   BICDEFqFILlF @`$2#4$  h  zBC*DEF** @`4$4 $ NB i  3 q%2^$4$  L [2$$84$ m [2$$84$ k   B)CDEFq;)); @`[2\$3$  l   BC%DEFq)%a)% @`[2$$84$ lL 2#4$ x 2#4$L 2#4$ t 2#4$ o   BCDEFq9 @`25$4$  p   ByCDEFqy%y @`4#4$  q   BJCDEFqFJLnF @`2#4q$  r  zBC+DEF++ @`4#4# NB s  3 q2>$4|$  L M2$*4}$ w M2$*4}$ u   B)CDEF@q;)); @`M2;$3}$  v   BC&DEF`@q)&c)& @`M2$*4e$ lL B2#5s$  B2#5s$L B2#5s$ ~ B2#5s$ y   BCDEFq9 @`B2 $24s$  z   BzCDEFqz&z @`24#5s$  {   BICDEFqFIKlF @`B2#5\$  |  zBC*DEF** @`4#4# NB }  3 qC2($24g$  L y2#V4h$  y2#V4h$    B)CDEF q;)); @`y2&$3h$     BC&DEF` q)&b)& @`y2#V4P$ lL @2#5Z$  @2#5Z$L @2#5Z$  @2#5Z$    BCDEFq9 @`@2$04Z$     BzCDEFqz%z @`04#5Z$     BJCDEFqFJLmF @`@2#5B$    zBC*DEF** @`4#4# NB   3 qA2$04M$  L w2#T4O$  w2#T4O$    B(CDEF q:((: @`w2 $3O$     BC&DEF`` q(&c(& @`w2#T46$ lL 02x#49$  02x#49$L 02x#49$  02x#49$    BCDEFq9 @`02#49$     BzCDEFqz%z @`4#49$     BICDEFqFIMlF @`02x#4"$    zBC*DEF** @`4#4# NB   3 q12#4,$  L f2#D4.$  f2#D4.$    B)CDEFq<))< @`f2#3.$     BC&DEFq)&b)& @`f2#D4$ lL 2Z#4$  2Z#4$L 2Z#4$  2Z#4$    BCDEFq7 @`2#4$     ByCDEFqy%y @`4s#4$     BICDEFqFIKmF @`2Z#4$    zBC+DEF++ @`4#4# NB   3 q2#4$  L J2#(4$  J2#(4$    B)CDEFq<))< @`J2#3$     BC%DEFq)%b)% @`J2#(4# lL ;2V#4$  ;2V#4$L ;2V#4$  ;2V#4$    BCDEFq8 @`;2#+4$     BzCDEFqz%z @`+4o#4$     BICDEFqFILmF @`;2V#4#    zBC*DEF** @`4#4# NB   3 q<2#+4 $  L r2#O4 $  r2#O4 $    B*CDEF q<**< @`r2#3 $     BC'DEF q*'b*' @`r2#O4# lL 25#4#  25#4#L 25#4#  25#4#    BCDEFq8 @`2#3#     ByCDEFqy&y @`3N#4#     BICDEFqFIKmF @`25#4#    zBC*DEF** @`4^#4l# NB   3 q2#3#  L 82p#4#  82p#4#    B)CDEF q<))< @`82#3#     BC&DEF q)&a)& @`82p#4# lL &2#4#  &2#4#L &2#4#  &2#4#    BCDEFq8 @`&2#4#     BzCDEFqz%z @`45#4#     BICDEFqFILmF @`&2#4#    zBC*DEF** @`4E#4S# NB   3 q'2#4#  L ]2W#:4#  ]2W#:4#    B)CDEFq<))< @`]2#3#     BC&DEFq)&b)& @`]2W#:4# lL 2"4#  2"4#L 2"4#  2"4#    BCDEFq8 @`2l#4#     ByCDEFqy%y @`4#4#     BICDEFqGILlG @`2"4#    zBC*DEF** @`4)#47# NB   3 q2u#4#  L O2;#,4#  O2;#,4#    B*CDEF q<**< @`O2s#3#     BC%DEF q*%b*% @`O2;#,4# @L 1"4# . 1"4#lL 2"4#  2"4#L 2"4#  2"4#    BCDEFq9 @`2\#4#     ByCDEFqy&y @`4#4#     BJCDEFqFJKnF @`2"4#    zBC+DEF++ @`4#4'# NB   3 q2e#4#  L M2*#*4#  M2*#*4#    B)CDEFq;)); @`M2b#3#     BC&DEFq)&b)& @`M2*#*4# lL 2"4#  2"4#L 2"4#  2"4#    BCDEFq8 @`2;#3#     BzCDEFqz&z @`3"4#     BICDEFqFIKmF @`2"4x#    zBC*DEF** @`4"4# NB   3 q 2D#3#  L ?2 #4#  ?2 #4#    B)CDEF@q<))< @`?2B#3#     BC&DEF`@q)&b)& @`?2 #4l# lL 42"4z#  42"4z#L 42"4z#  42"4z#    BCDEFq7 @`42'#$4z#     BxCDEFqx%x @`$4"4z#     BICDEFqGILmG @`42"4c#    zBC*DEF** @`4"4" NB   3 q52/#$4n#  L k2"H4o#  k2"H4o#    B)CDEF q<))< @`k2-#3o#     BC%DEF` q)%a)% @`k2"H4W# lL 22"4`#  22"4`#L 22"4`#  22"4`#    BCDEFq7 @`22 #"4`#     ByCDEFqy&y @`"4"4`#     BJCDEFqEJKnE @`22"4I#    zBC*DEF** @`4"4" NB   3 q32#"4U#  L h2"F4V#  h2"F4V#    B*CDEF q<**< @`h2#3V#     BC'DEF`` q*'b*' @`h2"F4=# lL "2"4@#  "2"4@#L "2"4@#  "2"4@#    BCDEFq7 @`"2"4@#     ByCDEFqy%y @`4"4@#     BICDEFqFIKlF @`"2"4)#    zBC*DEF** @`4"4" NB   3 q#2"44#  L X2"545#  X2"545#    B*CDEFq<**< @`X2"35#     BC%DEFq*%a*% @`X2"54# lL 2a"4!#  2a"4!#L 2a"4!#  2a"4!#    BCDEFq8 @`2"3!#     ByCDEFqy%y @`3z"4!#     BICDEFqFILlF @`2a"4 #    zBC*DEF** @`4"4" NB   3 q2"3#  L <2"4#  <2"4#    B)CDEFq:)): @`<2"3#     BC%DEFq)%b)% @`<2"4" lL -2\"4#  -2\"4#L -2\"4#  -2\"4#    BCDEFq7 @`-2"4#     BzCDEFqz%z @`4u"4#     BICDEFqFIKlF @`-2\"4#    zBC+DEF++ @`4"4" NB   3 q.2"4#  L d2"A4#  d2"A4#    B)CDEF q<))< @`d2"3#     BC%DEF q)%b)% @`d2"A4" lL 1;"4"  1;"4"L 1;"4"  1;"4"    BCDEFq8 @`1"3"     BzCDEFqz%z @`3U"4"     BICDEFqGILmG @`1;"4"    zBC*DEF** @`4e"4s" NB   3 q1"3"  L *2w"4"  *2w"4"    B)CDEF q;)); @`*2"3"     BC%DEF q)%b)% @`*2w"4" lL 2""4" # 2""4"L 2""4"  2""4"    BCDEFq8 @`2"4"     ByCDEFqy&y @`4;"4"     BICDEFqFIKlF @`2""4"    zBC*DEF** @`4L"4Z" NB   3 q2"4"  L O2]",4" " O2]",4"    B*CDEFq;**; @`O2"3"  !   BC%DEFq*%b*% @`O2]",4" lL  2"4" -  2"4"L  2"4" )  2"4" $   BCDEFq8 @` 2s"3"  %   ByCDEFqy%y @`3"4"  &   BICDEFqFILmF @` 2"4"  '  zBC*DEF** @`4/"4=" NB (  3 q 2|"3"  L A2A"4" , A2A"4" *   B)CDEF q;)); @`A2y"3"  +   BC&DEF@ q)&b)& @`A2A"4" B 0 3  ~ 1 B1  B S  ?  !"#$%&'eE \ t  tk  t1 ?'6utu t0 #Pt/  =t Ot Yt 4t Ot x*tDty% tio t9p g t8dz tf ] t+ | t 3V tE t- . o tB tG% &t  tK 7 M~ t 5 t tslOtr  Ptq9tp% VtT/ vtS% tR|t3t d?t . tw Ut #K bt)6:)@B@GTimes New Roman5Symbol3& Arial"phff!~0+Jim GrayCatharine van IngendDocWord.Picture.89qOh+'0 0< X d p |1Sequential I/O in NT - Achieving Top PerformanceenequCatharine van Ingenath Normal.dota Jim Grayta5m Microsoft WoObjInfoObjectPoolTW)ƾ)ƾWordDocument SummaryInformation(VX(G bjbjَ )] *JJJJJ$`JJJJJJJ> x 422 MBps 142 MBps 133 MBps 72 MBps 10-15 MBps 9 MBps SCSI File System Application Data PCI SCSI Disks Disks 40 MBps 31 MBps ()2;FMP\dhjux5B*CJOJQJhnH 5B*CJOJQJhnH 56B*CJOJQJhnH CJB*CJ jUmH)2;<=FNOP\cdijvwx)2;<=FNOP\cdijvwx¿ N N!"#{$!%Oh+'0`   ( 4@HPXss Jim Gray im NormalyCatharine van Ingen2thMicrosoft Word 8.0@F#@+@LBsDocumentSummaryInformation811TableaSummaryInformation([DocumentSummaryInformation8T՜.+,D՜.+,4 hp   Microsoft-   Title 6> _PID_GUIDAN{5595A601-4344-11D1-AE3D-0080C7F3EC95}:?AZPOlCԩSu|.ĻSTSu*Hԩu.q~AK̊8}2DDɐxdvN"%ʱ5;ck<кVuέ';u'LOsuhj`mbò.wORՉ6=;R8~Sg۵:Bld.!md!+m$H#eI]h-|z ˄jlr!wjwW;w$=ֹ_86o.jl6?9.d?u6^ixϴT9rkGKc[]pNY}w|>{#֞ܰ+tg{mW}\HڭM% m{];Ǧ$5畐&z̈Q7m??{4{Vy7>bێ<=6GeDd#(<  C A20$pbtE# Gw`!$pbtE#RcZ%x] Օ> CщJX3n$vlё Nd` X%ApQ ~JhVjڔ&Y+Uf{ynkѷϻ}wν95b"@?O ?9Fde Ifݼ3z[2`_+|6U{1HXv` ’޶ܴz4G!5p-bgns[ػQ:T?wn o^ߊ0[b]B*?>y<۷nݸh\µ.s\oח{G3L)K[Pm}y 1XкuDFs>xdLzF$mvBDX s hN%ZN.TH|χA-Ӳ jskb#VYGbKflFٛ kh[]l~ɤud5?6&#-ێmEE=8F26 } }gϙq9wR'WyF8 ׯkS2L{ {*]a?L%Ϸ#B&W\yzmY|ld|!zmVY/vD XmoB&YJ6^`2ɚ:d3xF^3!l;4\k \ۧ#BvɂI˾꫏I FQ eSiL) JkP`y&+",5'< ?",4l'#,% ,K`#,'"Ҩa4e1쁇`{DX4&4YTFezpTd:CEM1q nx;uq.a}ƒq NhP=.j.UhP-԰DՆgrXbގ IT|YL IT0 5v4j8NzqtѦv4ӰDmgx;TN%s ^kgo ,v7Bg\c;e?gCg8N`YgB4ge,C6 Ǣ3㳚Yp,geN 2'>+݋ԐYp,ge}?d|K_S S1 +2ތHMغn[?%91~Q]sbpX֞{PZ}@<+Zn+oәWW(1nns [=q1ShTfPίyyd%%q.| ؠC*@ʦKҒ m0O3,;d< wHfqIU$<68 mÙ%{W Zyjɣzu ~zO~÷1?`4 M[[S%U'j5W7O7$Ͷ->̼cp#^sZVʱZu-G :oיGK$ t線+,z׈ {>{3Qy?{TI g:`͌ QM[&WUܿ:UCqlxgAڕt_‹` Zj٨mwnesOT'Z{ju v[p𯞋{0I_% }?%}+I d6;;I^!}HZJx鮮jTvI_ 雏Ts9wz&MHlK׿׳fSL{ {,Ís0`.=2u} l^ga<ߞ< uj=Pg^`6{rdm] >h]!,CO^XϷ;"B&YSl~a^{`'{NutȎ۠`v2 &Y/>j s B]BN|0M1Ŧ$(m:aB-dȀ`pry9/,԰2Kr`mZ4X~a4dɢRaj$rW4XVhXK`y dh8y*ɉJ2࡞d/Fe.݊I׺u؍mCmQpǑ hPa1x02aގ. QM,^Z#8f6#hPj8Nm4!ϵ!ϵv4hN:j#5"5v4笞/uV'>ǜvHYug8N`9v+C{,d|KO|V{ykq,8>YYVBgAdkL_>=3[=o)۰^Hz7շizC"Tύ5_=fYEV̊*PΫbk%=&빒R樞bɂWυUYsW1rpW]뷻z*SY=wY=wrz*PU]CF^lk\qíF&g38~1>VdMU<rVΰc_깺t=vHTc=F7N5oOZAl_OoCyOxG<6SQwumX_6F5|o:fߍD|wyn}C|uXk5wUkz)'~wO}4;9g'i+)ovIcvʟ33g>5G38g$ܜ 3'AS,}礑1'Ie댑wn344v:kvelv̓ 2~:e&fg 8yLϘc83y,dxÌ_}sߣ5]l/X:vneiD _!"?{jĔ $5.liO{֎tV?Gdz}bGl~?+:g}4dhA>٣e;p9T]piP}YޗFa{LK|?5%>"kKC#Q"Z=k(q(RnG&Pݫ]cn7&5QRݲTF \+g{ `c5$EQ$\"?]wPD؋L)ddU$L$Gy$[N$DM$sz4XBAǯ?fmw]xDS]qt f`9 Z`3QhZ`: [L7oԜKVK^&}IE>ОHJI_;D:X[m_5MZH:ҷF7.tkՒIҷG<黜b7kO۾%oۥIw6eR2[1};V}ԷEa>sG8Л7nC$k3y7C>KA*K7AOβX5fׄND*_=_FVgZAA!KW'@"c0^{!W6մ5 ُR!Kצfkk? wvm'0N!K׮'\cD5 Am{f(d(ɫؙyENaax(mQ:I!KwDrXkay VӰҴ5 X;'U#Xx0O3i{ 6F!;[~]~]99Xi?`dTnJ\eB^.M˜.X՗t5 *d2#Yh\Oe-7DE^9Xՙ]"]5Zց׸h JB+G4X$CB>EXA6, C}57a9֓iwSR~e NpeqT9!3`Y q?e|ݥ9A:e7D֐r {2C?o4Q&תlY+eNYeDh3'<7Qfeܤٙa+!312/N^29&"o  'CƋQw_UQ5Eΐi̼~ɼq2%{BIS6"od2.N+2DjGcrgJsoľI{!ƳFULʪ>Ryl܈RdJVb6K:L<+c{lɔc;~s[;z)C3ghɔcFȻO)7lL)=X\Lu![JyJyu51*j}y䩹!Dzԗ!O˓<Վ<>X^!ǒOy_;:> *[_/W_J[ufw2ޕYP %1pO~A}s 5'5%&ݙB7o_[[bP{eFŁ(G5/]G^5GPr]`:7Et}GTp{/3NG)q/\Vxlz |{ 3{w4qo֤;+ ,p$+{" o_[dyFf]>M%+W_ܿ* _3fms6|?Kem;<[^'i Dd"B  S A? 2uP[rCQ>`!IP[rC"rh`U03$x\ xEke >CAx Q%„@" ("KD@eA3<\ƧF#(~bQ ߩ{{䫜sNWVW!tOkh]R Pc;2M3)"3b~ 6a:oh(DA\!%4򋩰Zd.W:uD摚7m"4`P&2 ~}0>^tsR,>!~zun q[?>5 q7Cq83c1NX=YX贘{.?t؆bm~WG>< Z?AY<|W7p=y'&_x NxAU ODȓqdU 2HY"uW"qd*R^ڋđ*RH*yArT$^ đ*RH*yȂ*Rg^j!g^ e+PV糅k-vF F z@~ȯaY}xۇՑW!"\M&Dy"5PYIt#wa&rW&&@>!| {@~Q7[E'(D D@NyB1:?'搎hv+}D+[2Mᣤ%=Z&Gx/ݎ_V͊rV'C۷el2M-n;jY'x8\!dO0,y[;M~^ ^ kOhNh-c?JJvv܍\Nƒ o׳@y+*|޾/3HfV2T iiVArcKP@| |6ݚ:)2rf @" @ڟ nd2y4)m6{;HўFpZ)6쵗9k09w[~%m_nPN%RzC)@3y p U=Ǡ1"gMȕF ySz oVSAz2D7k]k&4L?1xy4rR!J< ޾C޶"Ŝ{z="ɢtr_Ō͙tעCg-[ q82 _5;>|%we+*#;ҹw={nE?uDmPQOLw4>(H &Xn؜/*Y'W1.C쾘DzB'7/:sMvJ l^郲=m,:H;iPwl6Ɯ9yy40Gj\7Ƈga0=Ƹo4p^Ejp!78pr?j;q;9;~i ypt8לyO ivcOi7#8tp?,r猁3(9gV}lql9?Nc_z8bԱs9_> =wꕬy>Os6uĈs{lާ6ٵnd[#:Q+ F죋s(e{WT6hNE󋲻9=3\B0Bdr`+4?FDEK 'ī2lvoVMaAf@[ADH5p['#MxO->/S\dt4}l4X )ΊhЙ hO^K ϗ=7(oኁq~%~3֛EZJ0F|@ʫ@F&a\,WB.<_x{%|&adb+eA[&02e{ͨɝЯPkȿl@6r<3Ǐuʉ<sd;`䴗ZBJқ5B5IK 7eG~usgi|򞀉/ 70 #/ +˃#؊:M!,6:|IDnEnzȪO|Cnd/6(amy\JkBz7nw ädnp  dGR!mlV8f+^(l@S}7Ȱz=諧tz[HW #DBB 7A=tY]SlĝCI'hS>"SA>=niqW.~a%޷l'.}!_C+UЪ`{1;m %HIghS I Aa$(ƾ1hzWD|]~ a 0 ʷ.+ }8^y%vryS!ӧ7MX` so{k_IkJdvCYP ʋWWYNyWUx/^> mY^FoݾX>%ᇾ-ݿi|*߁Aa-(Yi}y@J۟Kx;HΟj,ǿө{obyFKJ< o?N-RfQT#e4܅K-$}Z>26P)q \+\xHy@<dr%oHx;H9[SL݃I;΂Q:"+#Y+S wWBIx %ovjR?J9R>@c|\z8rc ?F)2aG/(y' o')P skj)=S*em%:ȍȯ-uMN )ۄ_WNET#Nx p]~)UExFDksq> g gx@+BHx:ފkP:7$vrT':7Pw퐹o;uYvghi;-3*sN?_,~ӞTWI> zMįvS1dy4 ]{b)lto&uNDc q1u2=딽3Nhg܋N)t%t+xOʲ>=y뙄s ^q{99LijxjDǍs vr=1k~y,pt8Ssr=14ߍI8?Mqysb"lq~99i!ݮCq#tĮSN>2c؟cgN9 1X"#:GGb)qe5%ar~9t[vT}yw~:]p׎_|lk}moǏ,H}0f.F:ǯ}uqPcX#mҷm'}ϑ>4E}$2B!yH$v}BwiڧY=qlix[.i8YFam|7Lgy?A\Z!.r䪹,9w\nuTj.@ qCW&vW`j.o UN\vCm*ÅGi=Y fA<bF̒5^{g?F]1#Ot.[g+FbF\6h#13Dr6܃玘':ӅgQm䙋gFsFbF\!թ|/+_7b|:03TmM|ʛb|z=af.M|ʛ{0>H]KfF=03 iM|ʛb|ڜ03 ϥWONr0Vf7aG̨eP}Gy獄Qx./k#ϫy^LEyby*af#8F 3\i#0ܝ03 m #ϭ 3\nF5yV$̌p)$O+ȗOo(譎 ނ Lto9iM`&4`iΎɋ~ufK0_8j͑ZK2=%G:(+m@I[68z;a|5HA9-ku՛+1Wll>Ƴ{ZV涒t 9A[ȹ㥕lmsecZn ;leeB9:8c~^mf} ::wh`W+Qlp" 'biFnn%/:&ڰ?_kG(rEo׷sJi;gmRbqξfz{ v~m u7X|ゅKnn,LӅEַ)qWpswĔ5%~g;X}R, 1'l TC${?&]-|x&scj17ཞ`΂k4xkVߛ8A5 hdFmj%Nwg~# w>|r=e-gV^tnI/[^jC/qEI||#{}E~ӴF/\ZhCSCY{\8{{.en_3V*ͪbY5Oyy%fʛסϮ*,]>9)9l|eeqzqsgKѲfKw˿]z_zW|gp" .DSvw#ݙ1v2i^S\Gn}wyVb:Bipެ*hJ7jrvuH~WV6 6OA+o/rc5k3">(޹f-D,Ila[Mj6M%@pXB;B夶OApo@:%SA36c$"3<5}@ lMm"l5a O|¦6aœ^ʞ4\W k'l%a+ {Nv#=>#3N"Dފ2W!F"?ᢲɯȗy舀՝lYr't OvjxRa(-C B_Uҷ-SMf+}&71σ- {=GzH_As }I_?{!}kIzL|%W~,(͑o=Jj-,e "G9\>v<1#Ot.)<Č<ѹ,FycF\ysD۬YmUjiGmƓZ!(mm|$ZbZmZmL5F3XqEznR! 3%νח{W4uҼ9YiJ݄+\kVy\ipKfi:c W2Fbϡıg μO2l1?ɰ_3 {ԶI->0 b| ;OG?A魏>g 7l8ϟ/^V ^IiRPFդwkgW\NCds(ˢCɕqGIVFz]9pF]6i*]-kwwDd!<  C A2CVF\#d{D`!VF\#d{TASZ% x\ pU}ey*ب p БEkYX԰1`6[g"uM@RM F(ZQʈN-i#cj:#XM6^S2/?R 6q0C 'Jm#qal#J cNwws:?IJn۝yT?_I $se!kE*Ape}.`0qwtVcZq D,?LI!\?['n}>It"Y']zEY3U ?8ܰ`|q/?q+ڿ(?#D+LS5Y` IP9sqk,eɕIq|Dh4N_zЪI(r&>]Kާe4~[_4qU3ZD92Xa M"laC 6(nTܴ'K}>se=T^ty\-.0J>cۅj oT 5@$&6w_^`F46$ { {/ 0rxqsr.F^.lF#dLe]5&b'I3*qڀ WZsZf`0-h-CSC ~W1o4k#~MA~-t.wfoAj 7sѬ !ab?4ǓW Đ63w`d1f!܃5X]:nbF]vC+vE$vY ¡d1.~# a>*e<D#hOV0%zSjvNjNf{ _{XmuAf>WC!MÚe$1w1G#슐f$#וX.ۑIveHF3upiu6$ߌdb^5e;*"Fd;#X56d<)Du@")$I&z-}4yWk2-RfUyb}鷤؃밍|tJZ~v[Efa&π29">?vy2'"# ,vo"vKuPOSOg_"f?NLEυo"W&QOwz#@Ò}Cͯ&/i\4yA]E+-h\dKX oъR݊ i}h)ؼS*G\"KYFid!idD 5Re!~}V۹s3sG'=-{їnj8q|U mѠUI{va~Oeުi ,ry0nƦ CvUq"\D-o|{o|R-X>pyf|;>Z<77doٸL'JjTcVuk}#7AM{KM5nm%42{B˥|Κ 7᬴'NV^2sծO %;u鑙SVY}neD#LX~wZjN69zeXۜ|vOqV|r .̫$IYNڠ2ț>2]˪0%W?S19>ȭ 8i'' k' 'Z&6*„m #72wGHkg֫G{jxm^_tI홴8Lrk#b`Nv k' 'Z&6*ªs~3`a[IJ6'(aG ;A R%Ks 'ù? L1o蛷2#'&EN>ة!8}h{<әe(wjⷅuNⷉm*\KV0[6U%$Czw㽬{8*`6~XCc!tgmQa nR7ܭ!M88q9*~oR~=m: "2pLX1r6; )u5.{[Q*Hq筃!`hOϯ2>6ڼW1Z]J5wH9U6kl[lFx:`S4Vhl({ۅ1´} rDFx5HjI)O1f-2̋<3]Ey[Ey ]Ey**ܭ^ʂlY8~lY(+mXx~PFB2UQ'{+NĽ[qRm #mo&ʁ.^RyGSݭU*Y,[e"i5&g`MeYľR}\q>\Ykrѭ}e\iYN58} tLg~T=2Vg'[;.?7f?qOt%OҢS:B~R[667 {^m?( _>S&v"TMl<V.0zGYLm;d/7x#n oF}eʙF9s͇~ZNu_ꋾ|7ZEuE)SKheq[/:XŞ|;fܫ?GDPMܾ?Yj߯c݋mVp^d|Zij,d={6UtY=M*N~; \IcUrUտk͊jlUw_~>#֑[[j3Fv97O5e16xU|օs>`"&.BE_Vf[g\;N7NNN52H5TH͛f|e\S4i\Lu5SG͏U-_ZUs489)E 6woX1Kz:$yRU^tٽ+xl5?ZzMUk4m5=8(%%"-S׃WD\l͵صM0/x =_\͒fkeEO:ԭ =2O*_S#3b]SvL`ejzj`AC|_j1 L[ ZQPRC7G %O_G ?c,9ظ5sIe=KIXVՖpۄ7aӛjo{Ǻܦߠm=3 ЖJZ3T^^噦*{L5.C2=$Or?$wOI+l8\}JS.]?*U[}R'}>zU?_jޣZ{T{wJr^.}aŚj{B uO¥pL4qq\f| յ/ldk*h-C/{\TaTk\,5=*}TO3,7!\oqx2$ʧ4ic5iSnqx}2gm0bxC %tt jq顿 ʈ*au?7?Qcn[dQMZS,m(wDlxvˤ vY՚5nn<"mmK6F0;iY'3;c#>Ȝ݇ ;1lLM^M¶m4K}/oE˨129|ĶM%ltR q+r>P]}*ge&pP=ݏT_S)d!9C9+3ZM2dgq>b0=ϷgoψAY Yͷ'ȷ`V fsmd%reFI|[&xQ/42YY-kLNxϷ6H3M=& okr홪|Ϸ]!>`26feȷgmh\ݥo])d~d|{fǹ xEYUjGo~,#1hҚդ:H6ݶ1029BĶM#3ٜkrɷGՍ6ߚg y䝳2do&"4Jfͷ;ɷ;iie=O-`}Sa5L7_ƀQ  @"h buT/1P =`Eȗ`%X l0 [0zmrUi$O%Kw݉|ՂՎ]Z}4cwIcY},ztzO2c1yV,A:ƁN)`fX9b.K@ŢA $/Hi`$Y?ZµA<{0x@|*A[ Рh( * h)Az }AdNAdDfAV5)m"Xn{) JJs[gj]yEL2\M=3jvk|v{("fLam^ac6]H"*n-[U1ɇIЖk1-T?E.𤋮ƪ` nc@6T0<`%Xk`4Z V`xSA>p Ftf|[y6"ލU:b{JѝaI2ɫןKGoo%ތS|@~F&c0"#Gwenm띣֪fIGb;uve-:pcF^:ˮe%=Yb_5-݀=q?K-+2{\ڮ9c4;=FOd$''Z`ΦJ"b :$-f5,Vf)(s-+;h;4bdX9ѲOfֳ"b3};=<Ľ<==Ľ==>Ľ>=?Ľ? D@!! !io'^?Hpƃ;A i`:aŶ4g דGki_['~ΓLN234y4e>X^h Vdg=gvLE#^Vu!avxULSī+}vnC=Ӟ/CF $;HA `z\CV "[0%*Af KXJXKP"ٖWlIp*wȡ,gܚ;ӲN[]eDRh;KټgVVf䊯8:ϫ?fڣe K/?N--&jΓA3Qr_v,"aoM_ecLMi4YMm3c;W~"eW*k_9 *ҷY]mk7`]ٰYO}- kz*|G@tY^s]N ,fGcׯ>b=wY}L{c~ fՏY5EbW曪;,.]] FPOaN*0}Ǐ6G]P봿 ^/p6ѿ 9 $FFFBgdG鬒{AE0}^^&^ #6 ,Osz XE}ڽ,{E|p՗mֈV6+(כI2V|f2_y<<2K|>Y&v/}Fݺz%׉1e& #Y dNG`9c bx49;^E ?9@3`.ZChk,* a5X\=m B +'ZwAg6]Co |Ih2ΰ &v?exrþ=gS,^ `rOH2eXvߙq&Ӂ$Of5YI9⬰p"1(Ka%H12L瀹1hAmjh;32vrv ;;[{RvK_X|6KY#rY3sky4v>{hr&]G^ +u"z,KH˄n0Y%Kh+1Ō-fN1sDFY둹YvWXmyD}~a%{oCA X?#yn; S`> a9kY0ٴĊLBk#YGv5d k{og37ᷴ!/Nȉ(&39N7ӶUGˮvB[Ur\}Z}48Q|یsn3Rtԧ}J0}F ?YWO~zU-MJ2ӈ̝kUQ?d OSIȝh8Ms8GN}>Ș|ލF. hٛ'iˢ>}dlfv~uOzT__d}A ѕ*U5A_idu2NWƘS*a :7/{Qw=]w|%Ee--/yFEj /"f@e}z ׯ waNڿ4p"P{dѺI?ԜU7Gk1uuoTLB4J3m Cwy`f] nVT aE\s/'ցvbKsB##mp6K?dRnsqL} \'O+Zg< ɕ Ϝ)G䐳D2gG墳LrVQ/ gr i':AF?9/V%yyUk!8oˋd3zS*8W!![N|`sC!U`20iwrfюΘA::w~f80=vCNj^[f[%3Ki9e m:K_:Ko-,CM?Xl/mWuƟqpXJ3+ Gi.LSr&zݫW@4q-̑Ls q/ܻ܋@Qrs~<<ǽ]L;kZNcMWb ?F0<@sefBIft;HsmuLu2<X}X]ys [kpptkgp\`R6X?C@{{ 3 3}'D9lࡻ!%<ݮnxY>g:J+uXκ kґ$w4I₧Qh0޴fXJB~tXO(ֵ CT ֫45 WJuxcR:V㑎/DYi2 5܃ ڧ!1φO΃oZc8+u[/8[i&{L;pY I0DH4Bѐ[`4XsqO|+m^b iA<Ȯη7u?ܦ4 $i(YqL#/wD+Տ֒ZS~p^V;_F-9N ]I5$y_n2HSUK ZbɛjYK& IC,i%墾'g!i}8u 5Tjh^xzbmF2u W]፹1gjy|heS{iT HzDLWI~/!Ht2X'K/'uaPKm UTP?)&/u7WMGK/T}+".䒬DY5Z*h)Q=gIA=#"ƿ~@i>ꢭ4UW C[o^@=uizTAYqXNY[dF~g˃RGNDa!:HV ].u 2@gK&zK0 W+euo=$uK5])54Bj\$)M5JZ@_`0c` LsmrmK>{nc`׎!ֹ C>$%b;;m̰hڝ= on7>jh m T~؉W<_b7鋼'؍ڙ8űY^{7 _F6G6T%jZڋoio}#ڟ@YqP^x :uo9T\]35Rx.GJ54ޮx⽚D> =$$i~b pn󒸛R P)T>ꩈzءcgn]=nq{b퇝Y͆־ֺ бĝL"$9ͭQn:!bo5Fdu_)hJc1|xN{Sl^Zq0E>bFfFt3k٥Ɋ0ʧ<*Ȯj"㪇fWZJkoBlY֦`m}+e@݅&W ]Ӱ F0kt3›u+[cHRgxu6[|rHݐq} ]a1Q{Q^e᱕Q2!?3A xdXm02Sx# :n,x.g֘P4xY»1~a 9^^e~1'|UY9Joupx𘅰9 +}L³FFzj\eqB_.]Mie^f7o+#;R˼+X7PC_wSRr`ő_\֗8-lĽ@t ZF7Syc6䍙bѯ Į꼶0"nw+%,樾#q54l< ls!B zNqZ`>XF̫v`<}J"zNぼ@B<97d%em:[m=xb20v0GQ0q7c[ IFMt$.Z!*lᐮtʧewnio 52;~.*K#߈pN:5(9#P7 #PD:e yߡ֚:fP_KQ_Bf tA^5Xx.)a-(Sx6u7Q[A-A;u5lB3kSfqIF9FO@="}}M%e| Xf |nG 8Q2o02gj0Y7ڪ3e72`:=!VBQ-GD_ *ϲ +ێz'`#X,m` s!`b$bC`9c&:wvqX:wWaمLX#1K!< ڷ;8=ȿZ AۑbuT3!7~p:zw8PX}y)Ww8ֽpju֡]n={dJ N!\U;5_>ZW>+Fc]ma{{ :CG@ 79)y~ԭ$R_~ו"ݤL_);+ )wG['m(? °\bo*u2PQp#~9 sc#n4{ K iZ\SO]>N=xJ$$6䔽A rqrӔ]QHFkctŭݨ_;ZxݞNJJFi }GMaFQ}M i8- @ M(JOԅVQo<}QMh_cO@5ƽgCi n]Gh'եxL1aNbD\t:j@70oԐ}?RGzF=Hk]a+F>|NY`7Yx ljonUDorlf}+:D^럨*P%J <߂d4̅Y8?|1,]ǵz?ܐsrcΟ j;v-\s>D.-QseQq+~HO$8҇sy+&_jr^)ǹM+\xHȈ+˔ xW_u| ^rr&s"M4lKx9gQao_?^ԓ{RW'b=>kÛOYh4"|H6 N4,: :IaEi>_ԓ: )]HX D1v?KޑfJũPgK'lb5%sj3wg R Q`NCު`Cy]擎ϯ/ y9ofJiؾO]Tr\ QcRn܄0X@"[ b- J.(_X㽨?VXew!hwO,&͛7a.-~!Ѽ<6Ǐ+ ٺ 4TӬ cn=mҍ` T9%M2W߈?{$ܒh!}.[}2*=_U89K"˰B5iv:uӴwp ָbR=^8g]WS5g|;;G@^͝6ATk!4Q:;K3k[bWA4Owj20{ײI6ۥxz.' Mߎ&=G0u7Z;G.LrlegM[`0ʁu#Ž/yҗI?\_|(5T_GG^r<*4"Ҍ K+~I jjU:c7){[ư/Vv\;}YX @FvXMZ{0f&M4L~C}oқ(b`?3 Xzʳ̫kƠbOބw=r5V7,po!\vX"+QI_Xe1sܒT[>kݞϕ\~yvXFG.*]teP闕 q~)\Rf~]po#koWMc66ګ)Fw瞎~=KA.iz9)}+_rʺZ4' kzL^$iLW;m`"p{?ͳ=h1;8sεd'Ab"]e BHe0ٳk!KvT$DJAYK?ܛ[̝sqy<<9޹w._kU^2NvH-e}KrP!i Y^ {>C6*[2~UHԡǠEc)&tAg6ρ0kaű.u(G8i '݄wt߮@֢4\^S[3ueWt_jZ6,?bR^CK``<`cL ;^SLFȻ2qD_K>QM(>n=XY_W-QLJ1&R<-O^U&okb7|XKfQ7Ud p]JfHIڔ‚RXV 8>uB_H.Yed.#^WVK6Y/9ȁCV^!W r$ғAY|ʌlʌ 21[\{">! U{ՂؔSޒd(@nO)F9;QQXY ve ?űaQFTQՐo8~KtND[f7R{buRѶxG RcbY?% @ u׭~5PYfw,=Nϩ!yߥ~MWaD駥5GR\BJ!}x*D~ ƀ 3 AU ʃ#ui}?r1/Zˬ^L_ì_E1k=kOyQЮ() 8&_6|;8qZ~Ú +  {$9bs&+lr؛-eLd'(8ª{ެܭ)mB h+lMV*iEF/+Y;.I x>$7hz!*޼v^|GZ 4πpOw.Ȝ.Ĭ(l) zH%iI9?*?e^ SMՕ19T<-*]dho>M]{K?GYqLy+9N}Ӓ9Gs WgGtAւ4'RmANn /ȥ-줶MN ǎ7G'\)~4.q|w~9?ϗ(a)亨'`Af(>|=e륤gPa; vݍ*dQHUdP[Y6 2=4==\G[>@cV7kc"kh4E>Ket>eiπ}@<D`$U}+r6C }%}V嬀Yٖ-g{|]fޮE?F?a~v{2c\ek炷=@^"I$jňX ֖GXgJz$IiB)3u05gϣ=r'ڵ#S$ѐb^\j1֎r\ƞ+;SU,ZTKJt(IC?U!`x(oK}+h :W TAEP%/ B\G[,zN${Rhoivexv8+Ѭ1ʨ}5Ծ&3qfp] x k$A?DWϸ2`5S'/X[vqU2F2}%󌐌$? {Yv>mciopBӓe8&FDv/)d a/d/ g1-Of!fɽߔ̞7$+}$#hmɊӋ>z/aCȸwkc*uw7uL=ME'ϽX ¾5+M;tfƊk`e?Ȝ=c5(9A'֜CN1hS$"١ ^]{Z ф%8N,ecT{<`mo~ā'A3ZЮ%[r_seُ=JRĀ$֝y$Ǧ!kaYr4~.N4s,/YQEƜ7cA-i}?uC pQ#oP{J t{H4@MP > { ȼ(<OdrY{pAM@꽟!̿aÑ3'Si{0,8Oeدkζ#ހ9ܟQV飉0 nb}(M~ t_n#ԎȔ yW3Kѿ.]' 򠚴CۣY ^*1cV2x }>r"MDe&+;aPwkqW,-GS=C|k8`ѓX CKhh0ǣX)&~Ʋ`0@}A/wkt,acw`3y.鰝ga$zJv`k؉;F|3>gJqvbCcMʪ˧XW`q/9W㹵p.U[K沾ӛ|2o!XȼX=.cMS̽QV65Qx:ީbVտ[aI_0sK~E2_ &l6,lk1ֆc=_DYN,g{k/ i)758JvZxJw>ryw Dwy>IN¢\KrWĹ'e?稯}…?S<)RA5I HSCV+^% ыz3}8/9 =B--VQ+b\J2wZ%㜖ZR}v:U RS0:E)->qy|z[̼O-o^V|zm54h06Wm[ѣ{l-h/mn[Nn'DzkZJۋm.6Oosې?W(ڗ1wh\p6Gmv[oϤ*MoQh[sf:zz[̼Doϣ+>O-g+\F-#etkI9*K΄JٔSoOSvʮsO%h/;5Xs5A x@fN V]d2 /~ڂV)u@-PT@}އ.Z7]7FuihTBJ[5%+uVbE,=gxLzcX,D]qQ,>h YArns AqPDj b8恵߶z1;b 8 @7~$ dEّ@$- Vv8v x{vuGVLƂ1v::cSmTpةיdX"6Y( I}CDǂq6Tykv}>.$v|Ȩь*j1Pāit@?"F69,x6{7>+>1P T1 > 6aJ8WNXVXtZZV%኶&*\6{Ȩ.F*RUƍ8V 9#(V(FvX79FuZ[:Sdc(:^u+W6,bX<'B]i1hqOi CD^2< % a3`3&جߠ]7^ {^JIv?n1Ov _:v"kx"ky"kz"k{"k|"k}"k~"k"{Dr=O2 >HPD2 T1hZgAQKAJ;ySHOtpqޞ'@ulQwrU꯰eF¨lv9:Fu/;Luu>OK6W+>v{Lz6AiP< 0@_UBI%QD$&qO&G}%g}'1Fc%1fc'!Il.$ 9cMqt۝j/~3)A[㎵Y8osi~<^2oY33F&(&-# YT"/~l3L(fQ4,.8s2 YeGV QյWmu8Ѻ9l!mF75?K9GMj떝5i؍3 69ks6->v}%2Q ƽrkuT%Uu!y]r_͹Y:ĵ* E1qb,ԨlbýAaq;6dYvdZv0oP6)y737e=_q5+(`1 (G<2l|n|.;dgrA=GLnZk8߂U8AL&F;FSTb6)K'xMN&c?~&u#߷{8UVgĹ`> ٙ5 JM%ބdq,(k`+VPV-9WYcq6pzgUdV~&Idbk8ߞ|s(K<2p=w62w>'6,3Tj V0O%8E%Vp7jK6K/鶫H:-xgkeUWZOڠ&NYU*&@4TފQ*gEƈ~` D!> 6#瘚4~pa?9w0Bg { @ި/}F_ >6GXiUqې>eǾc7v,Zi=`bXIU}}T'i܅c)w(/ A[*,V`T(J{Vd3?G}k2-mFOtY2pv'4Ujp49-/ڹ]W^L@8yMYo6{*qo%P8F Vn{RYU;`#?fX |0pĩwڨszC3Q5ι0r[{>Uc?Y:;PZyF vGh~7VɺK5zzC&]dSϊlќ}V+jT_s}`xƊgxv^{*m};Fpj=LhRN穊5dk*vYҟx^w.?4[On1FIFyibXÐ:GjU9DYÒԗ62JI#0C(QQ#6BF!)1\zGƭBRnHa“Fy KZEJ3,lXލ~p3ay$ܴςGkU?n٫w 8>SOgy;yG~&yGރZ~o28k6 ޻9G_cqS⑃`?PN0>SN sZk9RKW0MA)FSQk;aj:ozwZtVJZ"7&[,7niUw` YOojn3ke,'>WqgZӻCݢlԵ[-ɗOREg9%V#>h/ Ƴz-lg.ipc׿gWfcfک}ZxotKC?LWSN2XGlGZ넦ÍŪ(kbUƻu}k-`}X4u.3S[? Yy?ՊŽ&M]բ /~oEƵ4ӢK{Uvk}._5un  Z)fk"/߆qY}nwr'ZM&gzz됦B0wE f.@wEGG`X椉ϊhs\ъzWj{WUvE7{}t%Zr.΋/xC <#"#h݉aA܂^mu\ t(ڴ L1RYkE(n7R~riXd␬kÍ~ `N{Y6pk-LjMJ׉A QiQw)OB`jVuO'RE:wu<ʹ(xഏGO)?ψ>^ڡ>ӖYqM]@B`)(eY+$zk-R]q^|jn_/@b:M]/`zswZg&h YOwzNXƤrh8;d-ʁN34uVoV)9ZtoK3-d98@{`ޝkmVkY[5un osE )f CֻȄHM}˞nߧh0Y,kv50k:ܘ| "?Rue}˵}XF h :{д0S*kڭYf/B*'ʹ(oW}rR+Xza/OBA"0XVj+/^M]@[Cb6<3H1kcYI6Z{p[R?OpZt\m$Q߫;7&`4<;-F,eӍ3Ū5 M|F`)CӢ״ Zf8𲦮jb_>mN]5OL J#X"gdߎٞ;14ei-f΄7? Z4Zc3cFE#N}+ >^YN;-JgMXZ:kÍn`Nzxe}ʵ}XhH㨐(w;\#4uV"|ʧТt̗=ևiE9-'|3:X 2}tg\-5SKk4un /w)fͭq6Z~7B:{N7R÷guE7״m6}9ESd+0wE~V}@we}Znl~VM]09yrziy}AM]"囉|z/Zt|ofZr=?H nQPsu[V=SN0j`9FSp'`N {ۀV6ptkR> j(M|>F9v YxY@GM].| Alfveg.qz3WnFhTٵpc|}b5j_Yl>Wy(}LqE}-0Ipcw `}6&% %Ч/"gaKeQS*d-?<>"㡪>H,(@vQEP6 BFF?>d`dܞ03ÂDdCaߌ~Dyu61vn^T[яjNoOin^j'a (}tMp0&!ЅSKF3<y5x3tr0PNIu%Nif^TnA5̋r T`?:PSnTNEqdO./=^׌CH4G$j(_?W`\)w"ҦP) xPIz)@wċU^t_#p]S97F~;d9X'hCVXh { :pNy!q.tAs%ݼP ܴݼ(NB*%5E!q$:Q{ ڋegR71:r]: xFe@WTdL80e<./9=or^/znȮ|'uym1mZ]yX LWplܷ'"QFE`d@%bp}tMufDu;G5C:V<ד0Zp]t}^t$(̋΂P]`gEE`}sx}gvP'EDDd@ "IUE]=JYxN،Cܷ' Fũ&Y/(g/A:r_2ZS~5Cn&s]Sa^Pk#,5_3{95U?Jzv6\̳~1SCJ+"٫HDd]8"_U9ʠM||º؇xeZ)HyQLH (}tM/qfDu3TDHTY^TS65eO129^T xXGTcXd^TU)SB|I>ЃW| ==ZhAd{=HL8ĠMfC}ǚ7`^;Sz࿐yQ*_J/ig/ 5P XўȚ<\7cEY kbq]R xQ /Aȼ(]]w#To@~s zВ?1s}{pF{dq9rʓEB3 {47sz;{X#]x5^5yT#w8U,g9gF/i'g/"C%, {h=ǘ<]r!`Ns xꖀ>u9yԬqV#>r ^dܧyE+ܷ:y{ Ȉ( [^@o?0 Y<] =oXOϵýl]Hm1:#,NoiodF]qlyeCr_2]v׌}, hHj3%rVWgErW"_PCu4j\0NW5qΣRq B,Dz}{rG-P7C*<X8omܦNByQi,ƗAc4) Pݼ(N!ekF/i5#[a;BT$:cmz&TYRe ;[8(wR@ 5'Eb5QȼC 5{K|U?EE#  a4P'϶ +.4 2d{=o74d].EUm PSv͋T-.R~Pf:{QY$M, hFMIoEr˕{X܍QERx8*IgjO/@=}10NW)wr*)F/jG{C`%)NnCfl|vQK&9=O=4hnS/S^ds\U pQm](j!rc@KkEF!:hVڋr#&r+grW/"mtt&/p{SqAOݡѦ:ql< w5gئsE"SC Yal$|^}@l/:x>eLDQz ͋>ATyr W"-ًH#9Q oE==n-ue x!k(bcz}O𢓱o7U#:L9>?nEuՅl1Ǩ)N~-c8ގ~Dy.;-̼kuZXauh;++bv1}{yQ|cI@KkYeEfDu +jszѻ^T ݰ\ΖK13]BϠ^TہjTD ڣI 7=?cs#Yf/s$`eP'ً*>EORhl/2/g+SC|~v̪Gl."==wZh.z=#ʓEc:1hnS/f^6㪲j؆fF>yQ*G.x:%5ًƊql &r_2H]=ڋ,]eE^D{#Wtt潑+7/Ðت8L,YShi >(NR'oCp/dCuťº^gхV{QۓeH4[#w8U1'%5]Eq͈j<̌D3_ <>cE膩/|IF6Kx8/*jl̋KϨkO YU?ec">m Lixcܷ:Z+IXxB@B s٨ZnR6UQS?)Nc:s8 *v4q=)P mQ~OUw p.(&AD5r7όSI`t (}tM 3{f]HU|EH ?/}ģF_Ag6j}h rMrؐ(_ 6B{1 (O݋DxwAsz7|y$pb\$( 24r7/(P=+12dW9{$&fDUr_yH^ͬhdcxQO5F%E؛#Y*0BѦzG/=S40FOtmȌÉ6@sq0 L!ȓH~Asz|"UwV0.ܷ'FEql/ g/"z! Q}U"ь։X{c2YՋ&: xѝx-DET?ORqa^/zȒ}0}{ +60< LMAs:}tRu7/E-=bjn^zT rN/iwg/kFT;Gf^T ?G|=ڋN11SVAZZS5z'Ec!(̋^G>qO<EӠ MEmܷ:y'g/-;dK,W#(Oݍx\rQzWg*9G܃B}{kn^_vܗL״FJBHDȟ՜΋J)GD*^>̋E?|h7zi?1h)& ^5==;XȚ uPC y."翛wN:4;:{Q!me+ E! )I$*ݼ(N5Sgʃr_2]6^DA_(4D_OX?m<Χȣ|<3ՋHt5O ȼ*P uEq].lNPC\ "@""{N8ϥ<^D9LڠM^4bh)&@ܷ'exْEqyr?'6qfD(4{p萵="K#{.cXn^4N2]tbAoO:"ѧũf|Pwf6Qh6ǽ^4C3.+N6j<5L[dfd^4 B*SV#8"(u٢.SCY d2- [xM@y^kɵ\gzp+֗bOu:Pu7n&Sx(+yW7Y5z\5r_2]Әw+jFT{N/]eG-܌O1>攻ziSSk<ȼVM_k8y5PL!(NΝQDDd+S>g'{E^RAsjt̠M|y$||) ͋T%d?8{Q\3*D3F.yCG|BSEV5~J&6T,2/aӊA~lgV'(P'?r@+d{s}Jݏ>hܦV]t{{~/l,]Tmg]E-ԺW9"2&2(# ""!(E -DHB "(Bt\a>eQoĹgAJ^U'޾/wuwuWP, (}tM9{Q|7a /5$uz(5X zpu퍽(K$/:tVڣM!\Pv7iה1I~O)':Ax3#) Le$u$As봽y 0Hݼ(NΥP~EQca/H4HDU%^4ә)^<>I ̋ܵ0շBp}a,C}ou]dFvqōy "Ww}w4zE=jR삞rpۓ;hFEuqG@5难ED3' FQ ߞ䆣q:uj<%/%SovFEOPT_K+8h #:ߢ P'ً.mr6܃Kd{P"#9E]+ |r [{0Zv0rۓD4N#w8lB1>%5EQs|'fZ1ϴbbiXL18w"fO;ar-ȼh4u:F ɥoOݼ(N5 (rJ_2]ם(S핃#,&:ڋqdc§)^,P\Hjl̋P^[asESu~ qE)pC \1nrl/z{#f6ioӡx9oO=ũJ0bp@KkًX>hk"!n4ڋ*85~m ? |b=x/w>Gc"&F3pr@l/B; W4?{V9{Qp! HoO=4r7/ I؟"8%5]Ef 7]#ь^TC3Pd^ xQo9XsequU?cQEu9rȉPR,}{ϳ ZZ" ȶat[GE7D)"-vpkµlK(^^4ܷ6F]q؋"-%5]q͘|$xmdޕO}ɷ)ž^ӂ+]< Itj[h\Tm5JNQ./=g9ϣɶȁМȗu0D~ ٵoWu7/J#E3Z8dpBFEq"L!%5Eq͘c*FQ¥Y{H#1.]sW/bmF4=/J٤FId^#YagAp66xQiNgL)Js,JSMdpd+2 @՜ySAs*v?4")0X}{ҔZin^ Yؖ~ܗLtFM&h3'MN0St]Pib^4Xތ̋틝wp혩>_gݪjX mq?#3̧P'/!3z58: {WvtNyߧZ4yQMh&L8 lyQj&hP8{Q|7G_'{X{Qyt >EՋXj< MG7#j0yq3|(_v|yT>s1fܭM@l/U GmUwT jb~*=FޠyQo1%5}ًR}M!Wd|:;^TFb-sW/J%mPw^]&5zEEFuøUwa @ R=Sl i@l/HW@,U?6{!:Sƅ(C؝dЬsߞ4r7/jsx /ig/ʐB#ҌWd[!\pM @>4o zkJ(COPvTcNuE=q2'pCY*"bwdhC\ΓE|? 7uF|1,=?\yQ*P>Eq͘CY!͆Q"Bmh^C* *^4|znEeC ̋x&x]ԣqsگ(y7>H 8Nւ,El9Qhϭ (/ٙxE 8w4^,/!o$5DEޥ չ=qu9^g>ȸN;Kր,y\wR4}{׷"kl c"&$/s߫¨U#T^nHIUa~{zgLireJ?R7駳zI,%(;>_2Q~G]ھúCe9q_ԗhFJVP, 3;tg#8'~ VчCFWQ:~fO_6g;'Ϥ_T Q>A_W"\[3vxR'NQ( }{ +5Qɞ-!~?m[hb n^Wnp/AW%8B~2@#w8iG|@Kkwg/+4L}NfD^t@|) ]yC$E{囤ȼ+*Qq"u+΍=/dl&l6xڝRovEE)7P:8W7D9|E]sِ a0~/lܦa͋ȗi\+8  5r7/S]HQP难EFa8*$Ӭ|DM&QLzkBw#r%g?PT_.UgsگFO\!bHAN q55 k4<^tu,FM6ٴ}-u7/:(_i&zrP.d?yQJr)J_2]M^tPh8PpKv4ˣCdE^t L1_QzAy<S#5^̋obx T#g͙Rva^\,s\CYpC|Y.+JqZ@l/O?W\|%Uw=rXHg q#g}{ݼ(N#fR(}tM9{Q\3j=" K_-N0 .8w"֦XU x,"2/87jøRq櫺ϋ<QP'ًpa@Vys~k ]ԥ>QWgʸ\LF=YOD}5r7/S]ˠP.u"h=0UwLD3 LypNiE"΍eR zk3U x!YLYoJo~[qSD9W3i9ULDϹouVdb@GmX$8O=ԑpAszƿًv<1gQ,;XoOin^:E3S5%5Eq͘>f_s4}}.^4//)ǐs"d ugTϧOis9^|. : s=ɧ[hd7b"^R g4+t7/Dq2 d{|͋Tc):dS5ZF4L D3^_E׍[{*~l EW}<%E#7FE'uڣM"\{khhqJf8DpC|Y.͸70^G, %ݼh+^bdݫyQ'lM2%5}ً1U{lf9‡ivN|m( ]h/i_q xGr162/:o8ø:_c_~\ec=,Ȃ!ǜ&vsQ{Mޗ_uܹ|L"Z/ǰ]d2%s.%zwũ ֐΀җLtw5cX#xMd#k kg5( ]װwU);/Yy2T`0Xg<)NȮf*DϹou R#Y!U 8ڻ&_#{@ [> g/- @[vݢw ~Zdhl0U[*8DT> }ڋzkCu^ڪd^G#5~y&rߍW DQ:Ό2<Aq_\pdYDD1IX'9Yr [gw]]]Aw۟K}׋v=]AgQ8\rҒGgڋ"y5VI>F˺}op}ާܵ'#QBnE1Udas]TM{[{QQ][yU#z0j8ħ֋h-OEeA[Tob^9f4Y{Ѧo|]{hE=$+Ggڋh'^D4hmPjI̋ꐣ!ǟK]8pӮ:H/8OkUFd2""sȐ0^DWJCI1!v^Mp2t4)wKHI!jmP)w%S5-H>Q< 6 6$یo{ɫ`.N6Mxꒆ} R=dQWoɺiO2hWMX>=Tk.h:>L{(ѕPI=ۏVgLΫ?0:˂F>=@V(z N+iFcxў Q]y/ў5^TVc֋h{O-E^Tyb^DoS[Zh=i5 >A9C?)wJ~Y($k$'GyhnR+(77`-g7. 8=OryTLaNHJjʬ(֌΁)hVD_[U^3-לr[/*Am񔝆?<1/wƿqOu<}sxQ_Tuz>`>=T ~6qP0^D'MYMKy+ڋ*e}؁NkOSr;/1bZHJjb͈?OD3{{>#fqmY)S}UB5j%1Go_W'4Y<+cPQ)wJ^c@ߧMDDv2^g="ڋVz`"1/"><]NO3/"'H֠o `1Fܵ*YZ2""` 3BL{I2&uZ)v^ GX8=yV(/b<R~gEfDu6 KD3zoH?_7#O2ƫr[/xZQļh%>GL4618=TɿA0?$ko}Nyh?̣\ܤ>Go^2`ܵ'I΋bBJW2URk/"! Q] $E;aH^>zz^DL, /ZL,L̋v$>p;| Cz]{7"+֐ Bx]9"z?H^ hnR?/v^4/x? b &p]{BoxP!j3<6C!+g^kFTD4DGh=~>eE$:x N6cx Ƣ_$E.]R|T.*>D"oO0r]{4 +z-HDdy4Fq3EchnRG{X{Qy0yy0S9H!j/c )]TMZ{QQ]OD39T=>bE50N ֋Uӌ4hQ1=1/sɒCWG{#S8~|(|1oNzOG#""3I\Hi/*{!5_u;/* #a,$^)w R 1!. c ܕL=k/4R $/G6*«.)R9>HË E5&$Eޥ!^C͸:F#뿘}W>xSCm#~!0:$kw0Ny^sz1 -<[*Ǘ x/7#S>CSP <>ĘF1]N9 g.B.bƝrW2UIdzό5"`ÍhF3v~N:1cz&i2KhA3^aaH3 RGTE /0c ܵ*YZ2"" [Oq$1M}_^ã[x1<(wI)M!󢘪P܌q]HJjŚ=pE"#@h+"7|q;6b ƭr[/QxeƻyQ y%p͒R8iXwƷXKx2]{f@6k2F?<^yMC:v^ gkЅh 1]{BR!󢘪c@HJj:ڋb͈ $ͺ!ѵ?o6n& Dq-r[/j<$ixёTcTb^TM, 59N/?^t2KBJW2Uӧ4@>b8f]?b1*U\z^D>=XfxT³yQ!D lg>ESx~E{X׏"fpXQq2p""jVfڋ!qy%|\Iz"""{,$¢QxFs~k/p߉qWFkOhdv( NRFHCTwCD4C ~mEyy Z[F64U؛!yQ)P!9t,Nc/jױg6n(wJ~] UFy)wB>"rQer,Ņ(p;ƽ,]rמBr;/N` )]TMX3Ѭ C"SyQq&>M8QnEM*!ixQ @5%E?E;Æh=կ`.9wkYGHOkU[Ȋ5d3!p"zϢ''i47\؋j W7[Xmp ܵ'_"QBnE1Uk(t%S5ڋjC dG"Q7hIv`EGؑk!a(ZB9nNËꂋP# R Ԍ{E{Gi? \ʚl4&FkUk Ȋ^DDDvQi/$e4O:k/p~1eQړE1T]E;ҕLJk/5#Y"Dcgc/:NtbljhQ("WuOWEϗpUb^T $NuFGk H> qܵ*h!]3ЗQi/}l=x\7l8-0.cЏQړ(G!xm "#QJj^D}4Du/D4+@XlcE5+X[q4F>֋Hr<1 /ʆ>؛K_D :F~xvp:k 8FkU –M2ʓ_&yyp=ӕw1Du;jX9q.k]=џ~&󮘪 BJW2U3!i:l6jܕ2Eػڊ&YY{q(r[j(i<. 831jʱޑE y<*<(dLCPCyٕBAHy_xhFsz ZReAKV 1,h(wI T( d'Z{QQ */ 5-؋c>bz=wk%ix0w%S5=ڋb͈qX%vYzQWQ.v`s[/ʕwktgA>_=/ha0[{k+B~p4F;VD%?ƄLO{&βJfZ̺P$E%ܤ-nEo)4eKpd1]{BOnr;/x+iŚ?k/ hh97"yQQ+1V&彿5Rhs*ɡi:N/u_/j ٬-ySP%?zjqo0ϴL/zDZ>n^TugY=]{TX_+iCìD4kEocsB7l% D)anE9KË$9؋][xP%^4#?bo L{7x6&*t&”d%U(%zyaJjڋbz/G?y|UEo=5ltDeQ\pCtfԶm 4A% v`¾@QAPEP\[vߩ[o, ֫y9o~Uu+^HD3ޕ>ObE ? C¯υ'qEЫ|ܟd^T9yQ=ީ9lqE >G7 <=mh ' "LD'*϶;Q|'<ȢK}+BLm D r?/JSՓQ=CLMϋvlU4LՃRy(1 z ׎͋G#WFKWUE͇?;6hwvZ2GaŧeWtߧ{a4v"< M ^4DLv=CTm/sGg.Q|㪺s ߌ6W  4U#CLMfLUH3ьρ\O/8{ѩrbYt\Xr_/wuO;3"{3)zʧ){@ihtgz v,}^mh@Va%czvqN<^g^ȳdS'L?Wyhl#>MEqo`3\ ~E*EsSʃ1EE^TW>X՗ UEݟ>Pļ ?,^|Z}Գxuq&ZH#>SyhTV!c"&kCٷBI{o%0G>.Do82yݖ}])C|W< yo$ϻTi*%35]f*4*ػfDyx\,<@VwWt0:VBg!>kݬ$n\9FnΣ֢WK-Tچ&& +zKBiʳ=*o8mhRg^Who3Zb79 P 7(MU_A< o/JkTSD4qVOuZpZrBt(U6uz3/ڛjlH̋x_(>MK:sαq6xQmSMZw9mC52>Y3 <^yz.9QkIsmmuyCd+~^ :_E Ty(^m SS~"LmX9ًΔ%QC9 1R^t$YӚ (zmSJ@Vsqy >Si1bA^DVyh.dV/ZWdil5MSyuT_hR/3G]ƕ݋rejlAT&㈯ ۘd?DCLM# 2E5Ry(qF^^t,FΖ*"驺?UI#1^`d:.$XVaO3lx˛vC_?N2zC$_BfݧDL֑D_xgۋq(R.Q|Ro/:FFhb1~.Uyh  r?/JS5=oԉ)ݼ%: ~}4 1 Zx"< M Nd4Nu["~,]=qU~^C+41?Qyh- r?/JS'[#ZM=}Tچ&yO'90ٍzm\$hSytX<qf*Jqw.糅 r?LSL~*8%35@f̴fL$4|9Fc7b 3YShS3pqj dsR*m8H 'J՗8mCYI͢K/u?/NESY3mҝR)Cۤ 1(MU*RYQEQДw״N$p>#=^4\~"H ׋X?u}hcA+ [=^OllۈL*<2UGJqچ&ÙgzKfۋ@7cܥ=79+)S7`l_mmAEi-1_WdfLoZf׋اwth^ԟ*2؀_zտP}D?&qfVjbgIf~"BE{y9϶<`>QUsf\V(Wc&x5$ Cۤ9~^.G,Qdt {QZ3'Y)Vc2>W:{Q|ϯb\xIpEhSً}Z2(Vvp{o{vW挪>E1 7mh@Va%c"&{^ʍ0^ Os|T!Z'ߊmyhDs r?/JSM se(?(S}Eeh6 DOc$>ER1L>#Fȧ }׋W2jH̋xe)~+uuϋi(܎Rpچ&^t5h!.8϶$`.S_Wʪz яu eyQj\(CLM?fL&'Yc*>8{Q\,CSS"6t2/*7yxg5ΜX8OMbϖ I݉BDL.-JEm/w,ԟy{QZ!(7!>]0+SA^4K45- /*4(MU*E2eo/JkT_S^"h0Fs KP1JA zk3WgE=hX X~V\eD]oQECpG]b< M0wb7P܈{ٞGuzEs 'yۋQh,!n4Bp&n[L5^އ(CLMgx{QZ3nKD _z8{P] ]y?׋?Pdb ۫~uq8[6h1''mh;i3,T"ާRϛfZ4wx/Lo/*,ELES  4<q %35EQK0>jfεpF,^4}"f12yh\Ȭ^DLe/Em/wW-{ى^TH)v8b(>6=- r=1\JQfLLD3yvL&6!^|ݽYEb8ډMXKY8iQJy-J䏻Yi3GwvAEm/z[C-;5E\C +%8mAtAEiqbe(#^֌vPD4f].ʦD6F\"8"^KkӣxQ7j5\ijޖ~u^~^4:t8^vCI/*UL\+ogۋx'ՙ ,oc^ԗڈdwDKmD~^-@Q"֨h_tV"./sR1>T.M^WqO2~7ļh8./Ss|nhtߧ=:񸇜%@ C$DV`!c"&L"̶;:"~s͢K9_~^ԙʻΘr&50BQQs CLM;y{kthcfAًEy$![pEM ݟ:uh.yQRsN}txZx zC$o@V`" E3yYi 0^9j;a'.&/wW/jVDGKW CۄρcyQL(CLMo\jhj'9x,g/#cd<-8]pE~^=w<ܿɶy #VD@VFu5b8]*˛mh~Fc"&[OgEGۙ@iQ\{om}AB$Ȫ &PrL$D`"Q-O (**l"*,33 3b;{>n}WUwuۋB3 ǩ_Nǯ v^4X^]E_,;mҙjhv^QMz5JW2]ӛ(ҌʜD4@6Yl/Ma6 ؀g6mt[ ^4X#5$Et|pxߏ gM MȸO{Ọ1OtbMZ1 J6o+KOUs~O~O͛:4S.WGk/zLև5E{x)]ۄFnEի*rW2]ˬ(Ҍ/ xVBǦgfl/0q;֋Jm?U8EƤϗTϋđANTkLSggjZ^,ʆpJܵ uVqȌ^DL̄&<^{ѸT4SꝣmQ 7£p&ETQ<dY{QSɝ^|O8XLQM|AnEtI ^AjL̋M!^ ;lsߧ=Ə:\)Z8d}Mt{CDSO 0h_{X!Q k[-iv^QMt~dh͘d|hDb{O{P G^WaļhT rꂎ77qzgEcce4Ms6Z_/b"&T O{yNK}q|nEe@[  wm~o:΋"ܕL״E1<F:6>#Kon*m) Sh,&5j$zO=yT,׋{꽑8c{0YFQlMN.l]<^0/ԓu ǩՙ .ۋBrGhVȹkET/&e,]tMX{QSьC=;a[l/_Sl_OAnEl߱?H['5%Ek:/0 ؅'c :9wmC<;PXlAn/{s?Mtzcl\ o<*632轹a7/:- Y3u2/M?S+y|~HN? jR \]5?xDO3PVV7HuyEWToL }T;9"?)&< MDhvQ})db?Ҍ_'Y&Dy!)A~YY9)yRcbb"yT I~ ;xRyN/,L>!Mܵ u1ɘ:b% L,t'_MDzPh(ƈ]~k'4r;/dOZ{QShVJHQY^TR%֋Xaz*/%#bFE!ΜL ^4tƟD>!8wmCd]LdmX@~yjqIǗyQ EWp&FnEUCZ+#^-ƿT6h3kg^T!#RtzQ!isO؟EmK̋${7~z8{ɍ^8P #^ć(N>$ы^Slt{Q>DWsc:KQ@J՟)& s6qFnEU*6+_Hi>0ͪQ;5sl/wUߎ֋اRBٗR`cxFߒx)hʝnCߊGmCfDLa ?DDg׋2y5K3Ixї[ڴN~g FI? J3Oȏ<^ ] 0h.\jZJq) _/^/Pe) ]tMo"h0U?MDҬ [l&<\pnEMǰ?KvN6}R)~BoE:Q$;؛vk7Y{]x<^tȑEmm:Sc{QN,1a!QEp& FnE 怪߈ܕLVk/:*1@d<jL Ofs[/:*U>O}S|فMb^ΪףhaP]Udc{1VASiEĹkc 51]Og: L=PwNn2h _c{VR(z2kOir;/ȸl*Nzb,^Lqܵ u1Ȃ&@41Y;Z Γ&_7R Pwm5olwcϋ|P?8"fu؟R#r ļr8^G=ô~J3p#djxVA/Њs6ɷ"j c"&NZ\ۋp$aP V&?<^9#gzo}r&Ua|8wm~΋"\+jk/bf S݅ьMu^O 9Z-Nx8"n؟֥Ey=jyQT 9LYYSkR?J0Q|m. :TXE;½2bSWY{N +`| 8wm~FnEU?≀ҕLt)>&afȑۋJiGRmh'iz؟EļH*xW#g>ȸOƏb:(@qN>/YФUOZNΓ&vK=O϶> ^%5f-[Eߖs#QkDQ|aQAWXQ]YMX3*RLz# \ػ:Ca $w.fO;s}ؑwI7VU6 :YmEڌw Mu Y/Z1"luT#OF̢yݼhZrJb}DP2ݼ(KpGyDKfje5QTfM\8ů {QU/1zhNϧs=j=Qj^$}QV_8XڶWZ.Gw M- }5NDVDU~TCs\7FY4ORE-6g/:갃9>aWLTfyQS8cJDKfjVi:eF%ܗLVj3HIEȎxA8IHEJ=ylM͋鋢r|E[|UxX("VbƱQ9&IȬ^$DBv7UGڋ>Sh^^tH-e7qH-c"Dž1e.'pDd萪hj*}ɤCj"^iC8RP8 xQOEKX*r/2+!~mk}y|6G^xy 6%!i k^ڋHޢyFً'+>.W!S-n^CAhHatXj JE3NT^p )BHE=VEU*5/:bl~38wa^j2Uw MEkhiDև;#ڋ~eRkuFUgU5hT3 U1.rF5fB0}Nf2_:28ACq]Hs9xQcSIH}eeK],u7/:qTM2ϱI0Ja;mE5͓' :s 'j"J8Cr1>e. s(}LM蠚ijzBr_2YF OE0CدU8zWSu^*YzUKh1x8 lж1iŐw MyȪ-dhnD6+?P $ok/"Io뺛VŨY[c"O w,I^y/^$mfAפ&_b/:B}q1q$w"fO9xnԼHq_TeK}™Oz h,i!' z I^$][4ORrg/ڧ_*B*6'@6 Comment ReferenceCJ,, Comment Text8V@8 FollowedHyperlink>*B* 8Y8 Document Map-D OJQJ.P@. Body Text 2B*&L@& Date$a$CJ0O0 Style1@& CJOJQJD>@D Title$<@&a$5CJ KHOJQJq@FAD Jfg x y 12tuv /128AAAAAAAAAAAAAAFFHHHHHHJ@FG !"#$%& ' ( ) *D#'(* +,-. N !" # $ ' ) *, 0-.789:;<=>?@ABF6.H/I0J1 Jfg x y 12tuv /128AAAAAAAAAAAAAAFFHHHHHHJK      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJK@F78J^ghwx%&QRewxyY Z   VW;`UR)* !!" w#x#@&A&_)`)**,,T/V///A1B1223377,9-99::$;;%<==??AAEEFFHHYJZJ+L,LNNOO]Q^Q=S_TaTpTTTpUU`VVWFWGWXXZ[[[s\t\^^(a)abbeergsghhjjTlVlnn!q"q8t9tvvwwl{m{9}:};}Ẅ́΄opĈňΊϊ#'(<@DEqtwxcd,-wyÙ͛Λ899:;K^rsx~áġȡ͡ѡ֡ۡ "'(+049>CHILQV[`ejkoty~Ƣ̢Ңآޢߢy{ʦ˦ѫҫȮɮϮܮ $)*8=BGLMV[`ejkrx}¯ȯͯίگ߯  &,-9>CHMNWY[]_`moqsuv}°ԵյST#$5lmyzp~YZg!"  ij_`}|)P-.?TZw]^x12UV>@N!67BfEs=s  +            HIS| 4>GKPY_`akv !',06<AHPS[\bclprts=a'mJ:   !g!!"#"$"w""" #D#z#####T$f$$$%O%%%%<&w&&&&A'''+(((((( )!)_)k)r)s)++3+n,,,,).*.=.R.S.^......A/k/l////0J000000'1A1B1W11111142434F4[4q4r444 5 5505U5l555576N6e6w6x6667e7g7778>8888819l99:S:::;;;c;n;q;r;,=:=P=AA BCCCR#:Aix{ VH~@FXXXXXXX#&(=FL!TT0JLJacg~ ///HHHK:::::::::::H67o2$*I)*If'Ͳ92$kZ Fkl&"2$%%)0o 2$Wcᬈ 99 2$DOo2$ۀ+Ifm9@%6d (  't" \  3 ", b # S #A ?#" b ' 3 '#" 0 b ( 3 (#" ( b * 3 *#"  b , 3 ,#"  b . 3 .#"  | \ N 3  N"1    c R.0e0e ``TT`TT" V  # D"+ Dt ? 3 3"~  B .??!~  B -???V  # F"% FV  # &" &\  3 '"> '\  3 0" * 0V  # L"  L  c R5.0e0e ``TT`TT" 5V  # 6" 6b +'   3"`  C ,+'> ,B   *'b  +p#   3"` - C - +p#h B     P+"0\   3  "  V   # 4 "  4V  # 3" 3V  # 2" 2h  +p#  3"Z  3 ) +p# )B    P+"b 0*p#  3"`  C )*p#7 B   0*p#B S  ?y" T/=H#St\bn"qwW9mZgx@F %4c&C49"tx%4))&T %4 QF'4)r(4%4.R$0<&U4 %4 t$4y~ f4#ih#b0y'Pt') )&`P(J P*y%* P,Ky$01#Q4Ny%P4u%4@&4@y(%tI',4 _Hlt403552205 _940593718 _942005557 _942005589 _942005606 _938170281 _940590431 _940590550 _940590998 _940591131 _941987468 _942036436 _942047912 _942048080$/+/+/+/+CCCCCCCCCAF@@@@@@@@ @ @ @ @ @'/+/+/+/+CCCCCCCCCAF(2P Z '(==GG}ZZɅӅOR‹^b-4R\q}#($+7A]g%)4;<D7AEP=?@ +47:DIJMN[ltu*DJLT,/,<  EJis>D'.o| ?"@"J"^"""""""""""""""""##M#\#|####j$t$w$$$$%"%%%/%S&\&&&&&&&&&&'''''$'%'K'L'N'T'`'a'e'j'l'r'{''''''''''''((3(=(>(J(K(L(O(\(g(h(j(}(((((((%)0)1)6)+2+4.;.G.P.S.V.`.e.f.i.k.x.........../ /t/y/|//T0]000011111C1N1O1T1X1c1d1m1o1|133=4D4P4Y4e4o4 55555"5#5)5156575:5;5H5d5j5s5|55555/666C6L6j6m6n6t6~666666666666666666666666666677777$7%71787E7o7t7w77888888993969;9<9?9E9r9s9w9}9999999: : :::: :!:#:0:F:H:\:_:c:q:s:::::::::::::::;;;;*;+;0;3<9<CC>FAF\0a0118FCHILQV[`ejkoty~Ƣ̢ҢآޢߢҫȮɮϮܮ $)*8=BGLMV[`ejkrx}¯ȯͯίگ߯  &,-9>CHMNWY[]_`moqsuv}?@  +     HIS 4>GKPY_`av ',AH[bcl>FAF@D|@F@@@@ @@@@ @@@@@@UnknownJim Gray Greg SmithGz Times New Roman5Symbol3& z ArialO1CourierCourier New7&  Verdana?5 z Courier New5& z!Tahoma"1hj$&W%7U%7$i3'Xo!20dZ00Sequential I/O in NT - Achieving Top PerformanceCatharine van IngenJim GrayCompObjj  FMicrosoft Word Document MSWordDocWord.Document.89q