diff --git a/Foreign/CUDA.hs b/Foreign/CUDA.hs
--- a/Foreign/CUDA.hs
+++ b/Foreign/CUDA.hs
@@ -1,7 +1,7 @@
 --------------------------------------------------------------------------------
 -- |
 -- Module    : Foreign.CUDA
--- Copyright : (c) [2009..2010] Trevor L. McDonell
+-- Copyright : (c) [2009..2011] Trevor L. McDonell
 -- License   : BSD
 --
 -- Top level bindings. By default, expose the C-for-CUDA runtime API bindings,
diff --git a/Foreign/CUDA/Analysis.hs b/Foreign/CUDA/Analysis.hs
--- a/Foreign/CUDA/Analysis.hs
+++ b/Foreign/CUDA/Analysis.hs
@@ -1,20 +1,16 @@
 --------------------------------------------------------------------------------
 -- |
 -- Module    : Foreign.CUDA.Analysis
--- Copyright : (c) [2009..2010] Trevor L. McDonell
+-- Copyright : (c) [2009..2011] Trevor L. McDonell
 -- License   : BSD
 --
 -- Meta-module exporting CUDA analysis routines
 --
 --------------------------------------------------------------------------------
 
-module Foreign.CUDA.Analysis
-  (
-    module Foreign.CUDA.Analysis.Device,
-    module Foreign.CUDA.Analysis.Occupancy
-  )
+module Foreign.CUDA.Analysis (module Analysis)
   where
 
-import Foreign.CUDA.Analysis.Device
-import Foreign.CUDA.Analysis.Occupancy
+import Foreign.CUDA.Analysis.Device     as Analysis
+import Foreign.CUDA.Analysis.Occupancy  as Analysis
 
diff --git a/Foreign/CUDA/Analysis/Device.chs b/Foreign/CUDA/Analysis/Device.chs
--- a/Foreign/CUDA/Analysis/Device.chs
+++ b/Foreign/CUDA/Analysis/Device.chs
@@ -1,7 +1,7 @@
 --------------------------------------------------------------------------------
 -- |
 -- Module    : Foreign.CUDA.Analysis.Device
--- Copyright : (c) [2009..2010] Trevor L. McDonell
+-- Copyright : (c) [2009..2011] Trevor L. McDonell
 -- License   : BSD
 --
 -- Common device functions
@@ -11,7 +11,7 @@
 module Foreign.CUDA.Analysis.Device
   (
     Compute, ComputeMode(..),
-    DeviceProperties(..), DeviceResources(..), Allocation(..),
+    DeviceProperties(..), DeviceResources(..), Allocation(..), PCI(..),
     resources
   )
   where
@@ -39,38 +39,65 @@
 --
 data DeviceProperties = DeviceProperties
   {
-    deviceName               :: String,         -- ^ Identifier
-    computeCapability        :: Compute,        -- ^ Supported compute capability
-    totalGlobalMem           :: Int64,          -- ^ Available global memory on the device in bytes
-    totalConstMem            :: Int64,          -- ^ Available constant memory on the device in bytes
-    sharedMemPerBlock        :: Int64,          -- ^ Available shared memory per block in bytes
-    regsPerBlock             :: Int,            -- ^ 32-bit registers per block
-    warpSize                 :: Int,            -- ^ Warp size in threads (SIMD width)
-    maxThreadsPerBlock       :: Int,            -- ^ Max number of threads per block
-    maxBlockSize             :: (Int,Int,Int),  -- ^ Max size of each dimension of a block
-    maxGridSize              :: (Int,Int,Int),  -- ^ Max size of each dimension of a grid
+    deviceName                  :: String,              -- ^ Identifier
+    computeCapability           :: Compute,             -- ^ Supported compute capability
+    totalGlobalMem              :: Int64,               -- ^ Available global memory on the device in bytes
+    totalConstMem               :: Int64,               -- ^ Available constant memory on the device in bytes
+    sharedMemPerBlock           :: Int64,               -- ^ Available shared memory per block in bytes
+    regsPerBlock                :: Int,                 -- ^ 32-bit registers per block
+    warpSize                    :: Int,                 -- ^ Warp size in threads (SIMD width)
+    maxThreadsPerBlock          :: Int,                 -- ^ Max number of threads per block
+#if CUDA_VERSION >= 4000
+    maxThreadsPerMultiProcessor :: Int,                 -- ^ Max number of threads per multiprocessor
+#endif
+    maxBlockSize                :: (Int,Int,Int),       -- ^ Max size of each dimension of a block
+    maxGridSize                 :: (Int,Int,Int),       -- ^ Max size of each dimension of a grid
 #if CUDA_VERSION >= 3000
-    maxTextureDim1D          :: Int,            -- ^ Maximum texture dimensions
-    maxTextureDim2D          :: (Int,Int),
-    maxTextureDim3D          :: (Int,Int,Int),
+    maxTextureDim1D             :: Int,                 -- ^ Maximum texture dimensions
+    maxTextureDim2D             :: (Int,Int),
+    maxTextureDim3D             :: (Int,Int,Int),
 #endif
-    clockRate                :: Int,            -- ^ Clock frequency in kilohertz
-    multiProcessorCount      :: Int,            -- ^ Number of multiprocessors on the device
-    memPitch                 :: Int64,          -- ^ Max pitch in bytes allowed by memory copies
-    textureAlignment         :: Int64,          -- ^ Alignment requirement for textures
-    computeMode              :: ComputeMode,
-    deviceOverlap            :: Bool,           -- ^ Device can concurrently copy memory and execute a kernel
+    clockRate                   :: Int,                 -- ^ Clock frequency in kilohertz
+    multiProcessorCount         :: Int,                 -- ^ Number of multiprocessors on the device
+    memPitch                    :: Int64,               -- ^ Max pitch in bytes allowed by memory copies
+#if CUDA_VERSION >= 4000
+    memBusWidth                 :: Int,                 -- ^ Global memory bus width in bits
+    memClockRate                :: Int,                 -- ^ Peak memory clock frequency in kilohertz
+#endif
+    textureAlignment            :: Int64,               -- ^ Alignment requirement for textures
+    computeMode                 :: ComputeMode,
+    deviceOverlap               :: Bool,                -- ^ Device can concurrently copy memory and execute a kernel
 #if CUDA_VERSION >= 3000
-    concurrentKernels        :: Bool,           -- ^ Device can possibly execute multiple kernels concurrently
-    eccEnabled               :: Bool,           -- ^ Device supports and has enabled error correction
+    concurrentKernels           :: Bool,                -- ^ Device can possibly execute multiple kernels concurrently
+    eccEnabled                  :: Bool,                -- ^ Device supports and has enabled error correction
 #endif
-    kernelExecTimeoutEnabled :: Bool,           -- ^ Whether there is a runtime limit on kernels
-    integrated               :: Bool,           -- ^ As opposed to discrete
-    canMapHostMemory         :: Bool            -- ^ Device can use pinned memory
+#if CUDA_VERSION >= 4000
+    asyncEngineCount            :: Int,                 -- ^ Number of asynchronous engines
+    cacheMemL2                  :: Int,                 -- ^ Size of the L2 cache in bytes
+    tccDriverEnabled            :: Bool,                -- ^ Whether this is a Tesla device using the TCC driver
+    pciInfo                     :: PCI,                 -- ^ PCI device information for the device
+#endif
+    kernelExecTimeoutEnabled    :: Bool,                -- ^ Whether there is a runtime limit on kernels
+    integrated                  :: Bool,                -- ^ As opposed to discrete
+#if CUDA_VERSION >= 4000
+    canMapHostMemory            :: Bool,                -- ^ Device can use pinned memory
+    unifiedAddressing           :: Bool                 -- ^ Device shares a unified address space with the host
+#else
+    canMapHostMemory            :: Bool                 -- ^ Device can use pinned memory
+#endif
   }
   deriving (Show)
 
 
+data PCI = PCI
+  {
+    busID       :: Int,         -- ^ PCI bus ID of the device
+    deviceID    :: Int,         -- ^ PCI device ID
+    domainID    :: Int          -- ^ PCI domain ID
+  }
+  deriving (Show)
+
+
 -- GPU Hardware Resources
 --
 data Allocation      = Warp | Block
@@ -90,15 +117,15 @@
 
 
 -- |
--- Extract some additional hardware resource limitations for a given device
--- TLM: default to highest compute capability, when no specific data available?
+-- Extract some additional hardware resource limitations for a given device. If
+-- an exact match is not found, choose a sensible default.
 --
 resources :: DeviceProperties -> DeviceResources
-resources dev = fromMaybe err (lookup compute gpuData)
+resources dev = fromMaybe def (lookup compute gpuData)
   where
-    compute = computeCapability dev
-    err     = error $  "No data for device: "
-                    ++ shows (deviceName dev) " (compute " ++ shows compute ")"
+    compute             = computeCapability dev
+    def | compute < 1.0 = snd $ head gpuData
+        | otherwise     = snd $ last gpuData
 
     gpuData =
       [(1.0, DeviceResources 32  768 8 24 16384 512  8192 256 2 Block)
@@ -106,6 +133,5 @@
       ,(1.2, DeviceResources 32 1024 8 32 16384 512 16384 512 2 Block)
       ,(1.3, DeviceResources 32 1024 8 32 16384 512 16384 512 2 Block)
       ,(2.0, DeviceResources 32 1536 8 48 49152 128 32768  64 1 Warp)
-      ,(2.1, DeviceResources 32 1536 8 48 49152 128 32768  64 1 Warp)
       ]
 
diff --git a/Foreign/CUDA/Analysis/Occupancy.hs b/Foreign/CUDA/Analysis/Occupancy.hs
--- a/Foreign/CUDA/Analysis/Occupancy.hs
+++ b/Foreign/CUDA/Analysis/Occupancy.hs
@@ -1,7 +1,7 @@
 --------------------------------------------------------------------------------
 -- |
 -- Module    : Foreign.CUDA.Analysis.Occupancy
--- Copyright : (c) [2009..2010] Trevor L. McDonell
+-- Copyright : (c) [2009..2011] Trevor L. McDonell
 -- License   : BSD
 --
 -- Occupancy calculations for CUDA kernels
diff --git a/Foreign/CUDA/Driver.hs b/Foreign/CUDA/Driver.hs
--- a/Foreign/CUDA/Driver.hs
+++ b/Foreign/CUDA/Driver.hs
@@ -1,32 +1,32 @@
 --------------------------------------------------------------------------------
 -- |
 -- Module    : Foreign.CUDA.Driver
--- Copyright : (c) [2009..2010] Trevor L. McDonell
+-- Copyright : (c) [2009..2011] Trevor L. McDonell
 -- License   : BSD
 --
 -- Top level bindings to CUDA driver API
 --
 --------------------------------------------------------------------------------
 
-module Foreign.CUDA.Driver
-  (
-    module Foreign.CUDA.Ptr,
-    module Foreign.CUDA.Driver.Context,
-    module Foreign.CUDA.Driver.Device,
-    module Foreign.CUDA.Driver.Error,
-    module Foreign.CUDA.Driver.Exec,
-    module Foreign.CUDA.Driver.Marshal,
-    module Foreign.CUDA.Driver.Module,
-    module Foreign.CUDA.Driver.Utils
-  )
-  where
+module Foreign.CUDA.Driver (
 
+  module Foreign.CUDA.Ptr,
+  module Foreign.CUDA.Driver.Context,
+  module Foreign.CUDA.Driver.Device,
+  module Foreign.CUDA.Driver.Error,
+  module Foreign.CUDA.Driver.Exec,
+  module Foreign.CUDA.Driver.Marshal,
+  module Foreign.CUDA.Driver.Module,
+  module Foreign.CUDA.Driver.Utils
+
+) where
+
 import Foreign.CUDA.Ptr
-import Foreign.CUDA.Driver.Context
+import Foreign.CUDA.Driver.Context      hiding ( device, useContext )
 import Foreign.CUDA.Driver.Device
 import Foreign.CUDA.Driver.Error
 import Foreign.CUDA.Driver.Exec
-import Foreign.CUDA.Driver.Marshal      hiding (useDeviceHandle, peekDeviceHandle)
+import Foreign.CUDA.Driver.Marshal      hiding ( useDeviceHandle, peekDeviceHandle )
 import Foreign.CUDA.Driver.Module
 import Foreign.CUDA.Driver.Utils
 
diff --git a/Foreign/CUDA/Driver/Context.chs b/Foreign/CUDA/Driver/Context.chs
--- a/Foreign/CUDA/Driver/Context.chs
+++ b/Foreign/CUDA/Driver/Context.chs
@@ -1,39 +1,36 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE CPP, ForeignFunctionInterface, EmptyDataDecls #-}
 --------------------------------------------------------------------------------
 -- |
 -- Module    : Foreign.CUDA.Driver.Context
--- Copyright : (c) [2009..2010] Trevor L. McDonell
+-- Copyright : (c) [2009..2011] Trevor L. McDonell
 -- License   : BSD
 --
 -- Context management for low-level driver interface
 --
 --------------------------------------------------------------------------------
 
+module Foreign.CUDA.Driver.Context (
+
+  -- * Context Management
+  Context(..), ContextFlag(..),
+  create, attach, detach, destroy, device, pop, push, sync, get, set,
+
+  -- * Peer Access
+  PeerFlag,
+  accessible, add, remove,
+
+  -- * Cache Configuration
+  Cache(..), Limit(..),
+  getLimit, setLimit, setCacheConfig
+
+) where
+
 #include <cuda.h>
 #include "cbits/stubs.h"
 {# context lib="cuda" #}
 
-module Foreign.CUDA.Driver.Context
-  (
-    Context, ContextFlag(..),
-#if CUDA_VERSION >= 3010
-    Limit(..),
-#endif
-#if CUDA_VERSION >= 3020
-    Cache(..),
-#endif
-    create, attach, detach, destroy, current, pop, push, sync,
-#if CUDA_VERSION >= 3010
-    getLimit, setLimit
-#endif
-#if CUDA_VERSION >= 3020
-    , setCacheConfig
-#endif
-  )
-  where
-
 -- Friends
-import Foreign.CUDA.Driver.Device
+import Foreign.CUDA.Driver.Device       (Device(..))
 import Foreign.CUDA.Driver.Error
 import Foreign.CUDA.Internal.C2HS
 
@@ -60,24 +57,41 @@
     { underscoreToCase }
     with prefix="CU_CTX" deriving (Eq, Show) #}
 
-
-#if CUDA_VERSION >= 3010
 -- |
 -- Device limits flags
 --
+#if CUDA_VERSION < 3010
+data Limit
+#else
 {# enum CUlimit_enum as Limit
     { underscoreToCase }
     with prefix="CU_LIMIT" deriving (Eq, Show) #}
 #endif
-#if CUDA_VERSION >= 3020
+
 -- |
 -- Device cache configuration flags
 --
+#if CUDA_VERSION < 3020
+data Cache
+#else
 {# enum CUfunc_cache_enum as Cache
     { underscoreToCase }
     with prefix="CU_FUNC_CACHE" deriving (Eq, Show) #}
 #endif
 
+-- |
+-- Possible option values for direct peer memory access
+--
+data PeerFlag
+instance Enum PeerFlag where
+
+
+#if CUDA_VERSION >= 4000
+{-# DEPRECATED attach, detach "deprecated as of CUDA-4.0" #-}
+{-# DEPRECATED BlockingSync "use SchedBlockingSync instead" #-}
+#endif
+
+
 --------------------------------------------------------------------------------
 -- Context management
 --------------------------------------------------------------------------------
@@ -130,10 +144,38 @@
 
 
 -- |
+-- Return the context bound to the calling CPU thread. Requires cuda-4.0.
+--
+get :: IO Context
+#if CUDA_VERSION < 4000
+get = requireSDK 4.0 "get"
+#else
+get = resultIfOk =<< cuCtxGetCurrent
+
+{# fun unsafe cuCtxGetCurrent
+  { alloca- `Context' peekCtx* } -> `Status' cToEnum #}
+  where peekCtx = liftM Context . peek
+#endif
+
+
+-- |
+-- Bind the specified context to the calling thread. Requires cuda-4.0.
+--
+set :: Context -> IO ()
+#if CUDA_VERSION < 4000
+set _   = requireSDK 4.0 "set"
+#else
+set ctx = nothingIfOk =<< cuCtxSetCurrent ctx
+
+{# fun unsafe cuCtxSetCurrent
+  { useContext `Context' } -> `Status' cToEnum #}
+#endif
+
+-- |
 -- Return the device of the currently active context
 --
-current :: IO Device
-current = resultIfOk =<< cuCtxGetDevice
+device :: IO Device
+device = resultIfOk =<< cuCtxGetDevice
 
 {# fun unsafe cuCtxGetDevice
   { alloca- `Device' dev* } -> `Status' cToEnum #}
@@ -142,8 +184,8 @@
 
 -- |
 -- Pop the current CUDA context from the CPU thread. The context must have a
--- single usage count (matching calls to attach/detach). If successful, the new
--- context is returned, and the old may be attached to a different CPU.
+-- single usage count (matching calls to 'attach' and 'detach'). If successful,
+-- the new context is returned, and the old may be attached to a different CPU.
 --
 pop :: IO Context
 pop = resultIfOk =<< cuCtxPopCurrent
@@ -155,7 +197,7 @@
 
 -- |
 -- Push the given context onto the CPU's thread stack of current contexts. The
--- context must be floating (via `pop'), i.e. not attached to any thread.
+-- context must be floating (via 'pop'), i.e. not attached to any thread.
 --
 push :: Context -> IO ()
 push ctx = nothingIfOk =<< cuCtxPushCurrent ctx
@@ -175,37 +217,101 @@
 
 
 --------------------------------------------------------------------------------
+-- Peer access
+--------------------------------------------------------------------------------
+
+-- |
+-- Queries if the first device can directly access the memory of the second. If
+-- direct access is possible, it can then be enabled with 'add'. Requires
+-- cuda-4.0.
+--
+accessible :: Device -> Device -> IO Bool
+#if CUDA_VERSION < 4000
+accessible _   _    = requireSDK 4.0 "accessible"
+#else
+accessible dev peer = resultIfOk =<< cuDeviceCanAccessPeer dev peer
+
+{# fun unsafe cuDeviceCanAccessPeer
+  { alloca-   `Bool'   peekBool*
+  , useDevice `Device'
+  , useDevice `Device'           } -> `Status' cToEnum #}
+#endif
+
+
+-- |
+-- If the devices of both the current and supplied contexts support unified
+-- addressing, then enable allocations in the supplied context to be accessible
+-- by the current context. Requires cuda-4.0.
+--
+add :: Context -> [PeerFlag] -> IO ()
+#if CUDA_VERSION < 4000
+add _   _     = requireSDK 4.0 "add"
+#else
+add ctx flags = nothingIfOk =<< cuCtxEnablePeerAccess ctx flags
+
+{# fun unsafe cuCtxEnablePeerAccess
+  { useContext      `Context'
+  , combineBitMasks `[PeerFlag]' } -> `Status' cToEnum #}
+#endif
+
+
+-- |
+-- Disable direct memory access from the current context to the supplied
+-- context. Requires cuda-4.0.
+--
+remove :: Context -> IO ()
+#if CUDA_VERSION < 4000
+remove _   = requireSDK 4.0 "remove"
+#else
+remove ctx = nothingIfOk =<< cuCtxDisablePeerAccess ctx
+
+{# fun unsafe cuCtxDisablePeerAccess
+  { useContext `Context' } -> `Status' cToEnum #}
+#endif
+
+
+--------------------------------------------------------------------------------
 -- Cache configuration
 --------------------------------------------------------------------------------
 
-#if CUDA_VERSION >= 3010
 -- |
--- Query compute 2.0 call stack limits
+-- Query compute 2.0 call stack limits. Requires cuda-3.1.
 --
 getLimit :: Limit -> IO Int
+#if CUDA_VERSION < 3010
+getLimit _ = requireSDK 3.1 "getLimit"
+#else
 getLimit l = resultIfOk =<< cuCtxGetLimit l
 
+{# fun unsafe cuCtxGetLimit
+  { alloca-   `Int' peekIntConv*
+  , cFromEnum `Limit'            } -> `Status' cToEnum #}
+#endif
+
 -- |
--- Specify the size of the call stack, for compute 2.0 devices
+-- Specify the size of the call stack, for compute 2.0 devices. Requires
+-- cuda-3.1.
 --
 setLimit :: Limit -> Int -> IO ()
+#if CUDA_VERSION < 3010
+setLimit _ _ = requireSDK 3.1 "setLimit"
+#else
 setLimit l n = nothingIfOk =<< cuCtxSetLimit l n
 
-{# fun unsafe cuCtxGetLimit
-  { alloca-   `Int' peekIntConv*
-  , cFromEnum `Limit'            } -> `Status' cToEnum #}
-
 {# fun unsafe cuCtxSetLimit
   { cFromEnum `Limit'
   , cIntConv  `Int'   } -> `Status' cToEnum #}
 #endif
-#if CUDA_VERSION >= 3020
+
 -- |
 -- On devices where the L1 cache and shared memory use the same hardware
 -- resources, this sets the preferred cache configuration for the current
--- context. This is only a preference.
+-- context. This is only a preference. Requires cuda-3.2.
 --
 setCacheConfig :: Cache -> IO ()
+#if CUDA_VERSION < 3020
+setCacheConfig _ = requireSDK 3.2 "setCacheConfig"
+#else
 setCacheConfig c = nothingIfOk =<< cuCtxSetCacheConfig c
 
 {# fun unsafe cuCtxSetCacheConfig
diff --git a/Foreign/CUDA/Driver/Device.chs b/Foreign/CUDA/Driver/Device.chs
--- a/Foreign/CUDA/Driver/Device.chs
+++ b/Foreign/CUDA/Driver/Device.chs
@@ -1,23 +1,23 @@
-{-# LANGUAGE ForeignFunctionInterface, EmptyDataDecls #-}
+{-# LANGUAGE CPP, ForeignFunctionInterface, EmptyDataDecls #-}
 --------------------------------------------------------------------------------
 -- |
 -- Module    : Foreign.CUDA.Driver.Device
--- Copyright : (c) [2009..2010] Trevor L. McDonell
+-- Copyright : (c) [2009..2011] Trevor L. McDonell
 -- License   : BSD
 --
 -- Device management for low-level driver interface
 --
 --------------------------------------------------------------------------------
 
-module Foreign.CUDA.Driver.Device
-  (
-    Device(..), -- should be exported abstractly
-    DeviceProperties(..), DeviceAttribute(..), ComputeMode(..), InitFlag,
+module Foreign.CUDA.Driver.Device (
 
-    initialise, capability, device, attribute, count, name, props, totalMem
-  )
-  where
+  -- * Device Management
+  Device(..), -- should be exported abstractly
+  DeviceProperties(..), DeviceAttribute(..), ComputeMode(..), InitFlag,
+  initialise, capability, device, attribute, count, name, props, totalMem
 
+) where
+
 #include <cuda.h>
 #include "cbits/stubs.h"
 {# context lib="cuda" #}
@@ -108,7 +108,6 @@
 -- exports actual option values.
 --
 data InitFlag
-
 instance Enum InitFlag where
 
 
@@ -229,35 +228,57 @@
   u32 <- attribute d MaximumTexture3dHeight
   u33 <- attribute d MaximumTexture3dDepth
 #endif
+#if CUDA_VERSION >= 4000
+  ae  <- attribute d AsyncEngineCount
+  l2  <- attribute d L2CacheSize
+  tm  <- attribute d MaxThreadsPerMultiprocessor
+  mw  <- attribute d GlobalMemoryBusWidth
+  mc  <- attribute d MemoryClockRate
+  pb  <- attribute d PciBusId
+  pd  <- attribute d PciDeviceId
+  pm  <- attribute d PciDomainId
+  ua  <- toBool `fmap` attribute d UnifiedAddressing
+  tcc <- toBool `fmap` attribute d TccDriver
+#endif
 
   return DeviceProperties
     {
-      deviceName               = n,
-      computeCapability        = cc,
-      totalGlobalMem           = gm,
-      totalConstMem            = cuTotalConstMem p,
-      sharedMemPerBlock        = cuSharedMemPerBlock p,
-      regsPerBlock             = cuRegsPerBlock p,
-      warpSize                 = cuWarpSize p,
-      maxThreadsPerBlock       = cuMaxThreadsPerBlock p,
-      maxBlockSize             = cuMaxBlockSize p,
-      maxGridSize              = cuMaxGridSize p,
-      clockRate                = cuClockRate p,
-      multiProcessorCount      = pc,
-      memPitch                 = cuMemPitch p,
-      textureAlignment         = cuTextureAlignment p,
-      computeMode              = md,
-      deviceOverlap            = ov,
+      deviceName                        = n,
+      computeCapability                 = cc,
+      totalGlobalMem                    = gm,
+      totalConstMem                     = cuTotalConstMem p,
+      sharedMemPerBlock                 = cuSharedMemPerBlock p,
+      regsPerBlock                      = cuRegsPerBlock p,
+      warpSize                          = cuWarpSize p,
+      maxThreadsPerBlock                = cuMaxThreadsPerBlock p,
+      maxBlockSize                      = cuMaxBlockSize p,
+      maxGridSize                       = cuMaxGridSize p,
+      clockRate                         = cuClockRate p,
+      multiProcessorCount               = pc,
+      memPitch                          = cuMemPitch p,
+      textureAlignment                  = cuTextureAlignment p,
+      computeMode                       = md,
+      deviceOverlap                     = ov,
 #if CUDA_VERSION >= 3000
-      concurrentKernels        = ck,
-      eccEnabled               = ee,
-      maxTextureDim1D          = u1,
-      maxTextureDim2D          = (u21,u22),
-      maxTextureDim3D          = (u31,u32,u33),
+      concurrentKernels                 = ck,
+      eccEnabled                        = ee,
+      maxTextureDim1D                   = u1,
+      maxTextureDim2D                   = (u21,u22),
+      maxTextureDim3D                   = (u31,u32,u33),
 #endif
-      kernelExecTimeoutEnabled = ke,
-      integrated               = tg,
-      canMapHostMemory         = hm
+#if CUDA_VERSION >= 4000
+      asyncEngineCount                  = ae,
+      cacheMemL2                        = l2,
+      maxThreadsPerMultiProcessor       = tm,
+      memBusWidth                       = mw,
+      memClockRate                      = mc,
+      pciInfo                           = PCI pb pd pm,
+      tccDriverEnabled                  = tcc,
+      unifiedAddressing                 = ua,
+#endif
+      kernelExecTimeoutEnabled          = ke,
+      integrated                        = tg,
+      canMapHostMemory                  = hm
     }
 
 
diff --git a/Foreign/CUDA/Driver/Error.chs b/Foreign/CUDA/Driver/Error.chs
--- a/Foreign/CUDA/Driver/Error.chs
+++ b/Foreign/CUDA/Driver/Error.chs
@@ -2,7 +2,7 @@
 --------------------------------------------------------------------------------
 -- |
 -- Module    : Foreign.CUDA.Driver.Error
--- Copyright : (c) [2009..2010] Trevor L. McDonell
+-- Copyright : (c) [2009..2011] Trevor L. McDonell
 -- License   : BSD
 --
 -- Error handling
@@ -82,6 +82,17 @@
 #if CUDA_VERSION >= 3020
 describe OperatingSystem             = "operating system call failed"
 #endif
+#if CUDA_VERSION >= 4000
+describe ProfilerDisabled            = "profiling APIs disabled: application running with visual profiler"
+describe ProfilerNotInitialized      = "profiler not initialised"
+describe ProfilerAlreadyStarted      = "profiler already started"
+describe ProfilerAlreadyStopped      = "profiler already stopped"
+describe ContextAlreadyInUse         = "context is already bound to a thread and in use"
+describe PeerAccessAlreadyEnabled    = "peer access already enabled"
+describe PeerAccessNotEnabled        = "peer access has not been enabled"
+describe PrimaryContextActive        = "primary context for this device has already been initialised"
+describe ContextIsDestroyed          = "context already destroyed"
+#endif
 describe Unknown                     = "unknown error"
 
 
@@ -107,17 +118,12 @@
 cudaError :: String -> IO a
 cudaError s = throwIO (UserError s)
 
-
 -- |
--- Run a CUDA computation
+-- A specially formatted error message
 --
-{-
-runCUDA f = runEMT $ do
-  f `catchWithSrcLoc` \l e -> lift (handle l e)
-  where
-    handle :: CallTrace -> CUDAException -> IO ()
-    handle l e = putStrLn $ showExceptionWithTrace l e
--}
+requireSDK :: Double -> String -> IO a
+requireSDK v s = cudaError ("'" ++ s ++ "' requires at least cuda-" ++ show v)
+
 
 --------------------------------------------------------------------------------
 -- Helper Functions
diff --git a/Foreign/CUDA/Driver/Event.chs b/Foreign/CUDA/Driver/Event.chs
--- a/Foreign/CUDA/Driver/Event.chs
+++ b/Foreign/CUDA/Driver/Event.chs
@@ -1,30 +1,26 @@
-{-# LANGUAGE ForeignFunctionInterface, EmptyDataDecls #-}
+{-# LANGUAGE CPP, ForeignFunctionInterface, EmptyDataDecls #-}
 --------------------------------------------------------------------------------
 -- |
 -- Module    : Foreign.CUDA.Driver.Event
--- Copyright : (c) [2009..2010] Trevor L. McDonell
+-- Copyright : (c) [2009..2011] Trevor L. McDonell
 -- License   : BSD
 --
 -- Event management for low-level driver interface
 --
 --------------------------------------------------------------------------------
 
+module Foreign.CUDA.Driver.Event (
+
+  -- * Event Management
+  Event, EventFlag(..), WaitFlag,
+  create, destroy, elapsedTime, query, record, wait, block
+
+) where
+
 #include <cuda.h>
+#include "cbits/stubs.h"
 {# context lib="cuda" #}
 
-module Foreign.CUDA.Driver.Event
-  (
-    Event, EventFlag(..),
-#if CUDA_VERSION >= 3020
-    WaitFlag,
-#endif
-    create, destroy, elapsedTime, query, record, block
-#if CUDA_VERSION >= 3020
-    , wait
-#endif
-  )
-  where
-
 -- Friends
 import Foreign.CUDA.Internal.C2HS
 import Foreign.CUDA.Driver.Error
@@ -45,7 +41,6 @@
 --
 newtype Event = Event { useEvent :: {# type CUevent #}}
 
-
 -- |
 -- Event creation flags
 --
@@ -53,7 +48,6 @@
     { underscoreToCase }
     with prefix="CU_EVENT" deriving (Eq, Show) #}
 
-
 -- |
 -- Possible option flags for waiting for events
 --
@@ -129,12 +123,14 @@
   , useStream `Stream' } -> `Status' cToEnum #}
 
 
-#if CUDA_VERSION >= 3020
 -- |
--- Marks all future work submitted to the (optional) stream wait until the given
--- event reports completion before beginning execution.
+-- Makes all future work submitted to the (optional) stream wait until the given
+-- event reports completion before beginning execution. Requires cuda-3.2.
 --
 wait :: Event -> Maybe Stream -> [WaitFlag] -> IO ()
+#if CUDA_VERSION < 3020
+wait _  _   _     = requireSDK 3.2 "wait"
+#else
 wait ev mst flags =
   nothingIfOk =<< case mst of
     Just st -> cuStreamWaitEvent st ev flags
diff --git a/Foreign/CUDA/Driver/Exec.chs b/Foreign/CUDA/Driver/Exec.chs
--- a/Foreign/CUDA/Driver/Exec.chs
+++ b/Foreign/CUDA/Driver/Exec.chs
@@ -1,31 +1,26 @@
-{-# LANGUAGE GADTs, ForeignFunctionInterface #-}
+{-# LANGUAGE GADTs, CPP, ForeignFunctionInterface, EmptyDataDecls #-}
 --------------------------------------------------------------------------------
 -- |
 -- Module    : Foreign.CUDA.Driver.Exec
--- Copyright : (c) [2009..2010] Trevor L. McDonell
+-- Copyright : (c) [2009..2011] Trevor L. McDonell
 -- License   : BSD
 --
 -- Kernel execution control for low-level driver interface
 --
 --------------------------------------------------------------------------------
 
+module Foreign.CUDA.Driver.Exec (
+
+  -- * Kernel Execution
+  Fun(Fun), FunParam(..), FunAttribute(..), CacheConfig(..),
+  requires, setBlockShape, setSharedSize, setParams, setCacheConfigFun,
+  launch, launchKernel
+
+) where
+
 #include <cuda.h>
 {# context lib="cuda" #}
 
-module Foreign.CUDA.Driver.Exec
-  (
-    Fun(Fun), FunParam(..), FunAttribute(..),
-#if CUDA_VERSION >= 3000
-    CacheConfig(..),
-#endif
-    requires, setBlockShape, setSharedSize, setParams,
-#if CUDA_VERSION >= 3000
-    setCacheConfigFun,
-#endif
-    launch
-  )
-  where
-
 -- Friends
 import Foreign.CUDA.Internal.C2HS
 import Foreign.CUDA.Driver.Error
@@ -35,9 +30,19 @@
 -- System
 import Foreign
 import Foreign.C
+import Data.Maybe
 import Control.Monad                            (zipWithM_)
 
 
+#if CUDA_VERSION >= 3020
+{-# DEPRECATED TArg "as of CUDA version 3.2" #-}
+#endif
+#if CUDA_VERSION >= 4000
+{-# DEPRECATED setBlockShape, setSharedSize, setParams, launch
+      "use launchKernel instead" #-}
+#endif
+
+
 --------------------------------------------------------------------------------
 -- Data Types
 --------------------------------------------------------------------------------
@@ -56,10 +61,12 @@
     , MAX_THREADS_PER_BLOCK as MaxKernelThreadsPerBlock }
     with prefix="CU_FUNC_ATTRIBUTE" deriving (Eq, Show) #}
 
-#if CUDA_VERSION >= 3000
 -- |
 -- Cache configuration preference
 --
+#if CUDA_VERSION < 3000
+data CacheConfig
+#else
 {# enum CUfunc_cache_enum as CacheConfig
     { underscoreToCase }
     with prefix="CU_FUNC_CACHE_PREFER" deriving (Eq, Show) #}
@@ -69,9 +76,9 @@
 -- Kernel function parameters
 --
 data FunParam where
-  IArg :: Int     -> FunParam
-  FArg :: Float   -> FunParam
-  TArg :: Texture -> FunParam           -- deprecated
+  IArg :: Int             -> FunParam
+  FArg :: Float           -> FunParam
+  TArg :: Texture         -> FunParam
   VArg :: Storable a => a -> FunParam
 
 
@@ -92,8 +99,8 @@
 
 
 -- |
--- Specify the (x,y,z) dimensions of the thread blocks that are created when the
--- given kernel function is lanched
+-- Specify the @(x,y,z)@ dimensions of the thread blocks that are created when
+-- the given kernel function is launched.
 --
 setBlockShape :: Fun -> (Int,Int,Int) -> IO ()
 setBlockShape fn (x,y,z) = nothingIfOk =<< cuFuncSetBlockShape fn x y z
@@ -116,7 +123,7 @@
   { useFun   `Fun'
   , cIntConv `Integer' } -> `Status' cToEnum #}
 
-#if CUDA_VERSION >= 3000
+
 -- |
 -- On devices where the L1 cache and shared memory use the same hardware
 -- resources, this sets the preferred cache configuration for the given device
@@ -127,6 +134,9 @@
 -- synchronisation point for streamed kernel launches.
 --
 setCacheConfigFun :: Fun -> CacheConfig -> IO ()
+#if CUDA_VERSION < 3000
+setCacheConfigFun _  _    = requireSDK 3.0 "setCacheConfigFun"
+#else
 setCacheConfigFun fn pref = nothingIfOk =<< cuFuncSetCacheConfig fn pref
 
 {# fun unsafe cuFuncSetCacheConfig
@@ -135,9 +145,9 @@
 #endif
 
 -- |
--- Invoke the kernel on a size (w,h) grid of blocks. Each block contains the
--- number of threads specified by a previous call to `setBlockShape'. The launch
--- may also be associated with a specific `Stream'.
+-- Invoke the kernel on a size @(w,h)@ grid of blocks. Each block contains the
+-- number of threads specified by a previous call to 'setBlockShape'. The launch
+-- may also be associated with a specific 'Stream'.
 --
 launch :: Fun -> (Int,Int) -> Maybe Stream -> IO ()
 launch fn (w,h) mst =
@@ -152,6 +162,54 @@
   , useStream `Stream' } -> `Status' cToEnum #}
 
 
+-- |
+-- Invoke a kernel on a @(gx * gy * gz)@ grid of blocks, where each block
+-- contains @(tx * ty * tz)@ threads and has access to a given number of bytes
+-- of shared memory. The launch may also be associated with a specific 'Stream'.
+--
+launchKernel
+    :: Fun                      -- ^ function to execute
+    -> (Int,Int,Int)            -- ^ block grid dimension
+    -> (Int,Int,Int)            -- ^ thread block shape
+    -> Int                      -- ^ shared memory (bytes)
+    -> Maybe Stream             -- ^ (optional) stream to execute in
+    -> [FunParam]               -- ^ list of function parameters
+    -> IO ()
+#if CUDA_VERSION >= 4000
+launchKernel fn (gx,gy,gz) (tx,ty,tz) sm mst args
+  = (=<<) nothingIfOk
+  $ withMany withFP args
+  $ \pa -> withArray pa
+  $ \pp -> cuLaunchKernel fn gx gy gz tx ty tz sm st pp nullPtr
+  where
+    st = fromMaybe (Stream nullPtr) mst
+
+    withFP :: FunParam -> (Ptr FunParam -> IO b) -> IO b
+    withFP p f = case p of
+      IArg v -> with v (f . castPtr)
+      FArg v -> with v (f . castPtr)
+      VArg v -> with v (f . castPtr)
+      TArg _ -> error "launchKernel: TArg is deprecated"
+
+
+{# fun unsafe cuLaunchKernel
+  { useFun    `Fun'
+  ,           `Int', `Int', `Int'
+  ,           `Int', `Int', `Int'
+  ,           `Int'
+  , useStream `Stream'
+  , castPtr   `Ptr (Ptr FunParam)'
+  , castPtr   `Ptr (Ptr ())'       } -> `Status' cToEnum #}
+
+#else
+launchKernel fn (gx,gy,_) (tx,ty,tz) sm mst args = do
+  setParams     fn args
+  setSharedSize fn (toInteger sm)
+  setBlockShape fn (tx,ty,tz)
+  launch        fn (gx,gy) mst
+#endif
+
+
 --------------------------------------------------------------------------------
 -- Kernel function parameters
 --------------------------------------------------------------------------------
@@ -173,11 +231,7 @@
 
     set f o (IArg v) = nothingIfOk =<< cuParamSeti f o v
     set f o (FArg v) = nothingIfOk =<< cuParamSetf f o v
-#if CUDA_VERSION < 3020
     set f _ (TArg v) = nothingIfOk =<< cuParamSetTexRef f (-1) v
-#else
-    set _ _ (TArg _) = return ()
-#endif
     set f o (VArg v) = with v $ \p -> (nothingIfOk =<< cuParamSetv f o p (sizeOf v))
 
 
@@ -202,10 +256,8 @@
   , castPtr `Ptr a'
   ,         `Int'   } -> `Status' cToEnum #}
 
-#if CUDA_VERSION < 3020
 {# fun unsafe cuParamSetTexRef
   { useFun     `Fun'
   ,            `Int'    -- must be CU_PARAM_TR_DEFAULT (-1)
   , useTexture `Texture' } -> `Status' cToEnum #}
-#endif
 
diff --git a/Foreign/CUDA/Driver/Marshal.chs b/Foreign/CUDA/Driver/Marshal.chs
--- a/Foreign/CUDA/Driver/Marshal.chs
+++ b/Foreign/CUDA/Driver/Marshal.chs
@@ -1,39 +1,43 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE CPP, ForeignFunctionInterface #-}
+{-# OPTIONS_HADDOCK prune #-}
 --------------------------------------------------------------------------------
 -- |
 -- Module    : Foreign.CUDA.Driver.Marshal
--- Copyright : (c) [2009..2010] Trevor L. McDonell
+-- Copyright : (c) [2009..2011] Trevor L. McDonell
 -- License   : BSD
 --
 -- Memory management for low-level driver interface
 --
 --------------------------------------------------------------------------------
 
-module Foreign.CUDA.Driver.Marshal
-  (
-    -- * Host Allocation
-    AllocFlag(..), mallocHostArray, freeHost,
+module Foreign.CUDA.Driver.Marshal (
 
-    -- * Device Allocation
-    mallocArray, allocaArray, free,
+  -- * Host Allocation
+  AllocFlag(..),
+  mallocHostArray, freeHost, registerArray, unregisterArray,
 
-    -- * Marshalling
-    peekArray, peekArrayAsync, peekListArray,
-    pokeArray, pokeArrayAsync, pokeListArray,
-               copyArrayAsync,
+  -- * Device Allocation
+  mallocArray, allocaArray, free,
 
-    -- * Combined Allocation and Marshalling
-    newListArray,  newListArrayLen,
-    withListArray, withListArrayLen,
+  -- * Marshalling
+  peekArray, peekArrayAsync, peekListArray,
+  pokeArray, pokeArrayAsync, pokeListArray,
+  copyArrayAsync,
+  copyArrayPeer, copyArrayPeerAsync,
 
-    -- * Utility
-    memset, getDevicePtr, getBasePtr, getMemInfo,
+  -- * Combined Allocation and Marshalling
+  newListArray,  newListArrayLen,
+  withListArray, withListArrayLen,
 
-    -- Internal
-    useDeviceHandle, peekDeviceHandle
-  )
-  where
+  -- * Utility
+  memset, memsetAsync,
+  getDevicePtr, getBasePtr, getMemInfo,
 
+  -- Internal
+  useDeviceHandle, peekDeviceHandle
+
+) where
+
 #include <cuda.h>
 #include "cbits/stubs.h"
 {# context lib="cuda" #}
@@ -42,10 +46,12 @@
 import Foreign.CUDA.Ptr
 import Foreign.CUDA.Driver.Error
 import Foreign.CUDA.Driver.Stream               (Stream(..))
+import Foreign.CUDA.Driver.Context              (Context(..))
 import Foreign.CUDA.Internal.C2HS
 
 -- System
 import Data.Int
+import Data.Maybe
 import Unsafe.Coerce
 import Control.Applicative
 import Control.Exception.Extensible
@@ -53,7 +59,7 @@
 import Foreign.C
 import Foreign.Ptr
 import Foreign.Storable
-import qualified Foreign.Marshal as F
+import qualified Foreign.Marshal                as F
 
 #c
 typedef enum CUmemhostalloc_option_enum {
@@ -111,6 +117,56 @@
     useHP = castPtr . useHostPtr
 
 
+-- |
+-- Page-locks the specified array (on the host) and maps it for the device(s) as
+-- specified by the given allocation flags. Subsequently, the memory is accessed
+-- directly by the device so can be read and written with much higher bandwidth
+-- than pageable memory that has not been registered. The memory range is added
+-- to the same tracking mechanism as 'mallocHostArray' to automatically
+-- accelerate calls to functions such as 'pokeArray'.
+--
+-- Note that page-locking excessive amounts of memory may degrade system
+-- performance, since it reduces the amount of pageable memory available. This
+-- is best used sparingly to allocate staging areas for data exchange.
+--
+-- This function is not yet implemented on Mac OS X. Requires cuda-4.0.
+--
+registerArray :: Storable a => [AllocFlag] -> Int -> Ptr a -> IO (HostPtr a)
+#if CUDA_VERSION < 4000
+registerArray _     _ = requireSDK 4.0 "registerArray"
+#else
+registerArray flags n = go undefined
+  where
+    go :: Storable b => b -> Ptr b -> IO (HostPtr b)
+    go x p = do
+      status <- cuMemHostRegister p (n * sizeOf x) flags
+      resultIfOk (status,HostPtr p)
+
+{# fun unsafe cuMemHostRegister
+  { castPtr         `Ptr a'
+  ,                 `Int'
+  , combineBitMasks `[AllocFlag]' } -> `Status' cToEnum #}
+#endif
+
+
+-- |
+-- Unmaps the memory from the given pointer, and makes it pageable again.
+--
+-- This function is not yet implemented on Mac OS X. Requires cuda-4.0.
+--
+unregisterArray :: HostPtr a -> IO (Ptr a)
+#if CUDA_VERSION < 4000
+unregisterArray _           = requireSDK 4.0 "unregisterArray"
+#else
+unregisterArray (HostPtr p) = do
+  status <- cuMemHostUnregister p
+  resultIfOk (status,p)
+
+{# fun unsafe cuMemHostUnregister
+  { castPtr `Ptr a' } -> `Status' cToEnum #}
+#endif
+
+
 --------------------------------------------------------------------------------
 -- Device Allocation
 --------------------------------------------------------------------------------
@@ -184,10 +240,7 @@
 peekArrayAsync n dptr hptr mst = doPeek undefined dptr
   where
     doPeek :: Storable a' => a' -> DevicePtr a' -> IO ()
-    doPeek x _ =
-      nothingIfOk =<< case mst of
-        Nothing -> cuMemcpyDtoHAsync hptr dptr (n * sizeOf x) (Stream nullPtr)
-        Just st -> cuMemcpyDtoHAsync hptr dptr (n * sizeOf x) st
+    doPeek x _ = nothingIfOk =<< cuMemcpyDtoHAsync hptr dptr (n * sizeOf x) (fromMaybe (Stream nullPtr) mst)
 
 {# fun unsafe cuMemcpyDtoHAsync
   { useHP           `HostPtr a'
@@ -233,10 +286,7 @@
 pokeArrayAsync n hptr dptr mst = dopoke undefined dptr
   where
     dopoke :: Storable a' => a' -> DevicePtr a' -> IO ()
-    dopoke x _ =
-      nothingIfOk =<< case mst of
-        Nothing -> cuMemcpyHtoDAsync dptr hptr (n * sizeOf x) (Stream nullPtr)
-        Just st -> cuMemcpyHtoDAsync dptr hptr (n * sizeOf x) st
+    dopoke x _ = nothingIfOk =<< cuMemcpyHtoDAsync dptr hptr (n * sizeOf x) (fromMaybe (Stream nullPtr) mst)
 
 {# fun unsafe cuMemcpyHtoDAsync
   { useDeviceHandle `DevicePtr a'
@@ -274,6 +324,65 @@
   ,                 `Int'         } -> `Status' cToEnum #}
 
 
+-- |
+-- Copies an array from device memory in one context to device memory in another
+-- context. Note that this function is asynchronous with respect to the host,
+-- but serialised with respect to all pending and future asynchronous work in
+-- the source and destination contexts. To avoid this synchronisation, use
+-- 'copyArrayPeerAsync' instead.
+--
+copyArrayPeer :: Storable a
+              => Int                            -- ^ number of array elements
+              -> DevicePtr a -> Context         -- ^ source array and context
+              -> DevicePtr a -> Context         -- ^ destination array and context
+              -> IO ()
+#if CUDA_VERSION < 4000
+copyArrayPeer _ _   _      _   _      = requireSDK 4.0 "copyArrayPeer"
+#else
+copyArrayPeer n src srcCtx dst dstCtx = go undefined src dst
+  where
+    go :: Storable b => b -> DevicePtr b -> DevicePtr b -> IO ()
+    go x _ _ = nothingIfOk =<< cuMemcpyPeer dst dstCtx src srcCtx (n * sizeOf x)
+
+{# fun unsafe cuMemcpyPeer
+  { useDeviceHandle `DevicePtr a'
+  , useContext      `Context'
+  , useDeviceHandle `DevicePtr a'
+  , useContext      `Context'
+  ,                 `Int'         } -> `Status' cToEnum #}
+#endif
+
+
+-- |
+-- Copies from device memory in one context to device memory in another context.
+-- Note that this function is asynchronous with respect to the host and all work
+-- in other streams and devices.
+--
+copyArrayPeerAsync :: Storable a
+                   => Int                       -- ^ number of array elements
+                   -> DevicePtr a -> Context    -- ^ source array and context
+                   -> DevicePtr a -> Context    -- ^ destination array and device context
+                   -> Maybe Stream              -- ^ stream to associate with
+                   -> IO ()
+#if CUDA_VERSION < 4000
+copyArrayPeerAsync _ _   _      _   _      _  = requireSDK 4.0 "copyArrayPeerAsync"
+#else
+copyArrayPeerAsync n src srcCtx dst dstCtx st = go undefined src dst
+  where
+    go :: Storable b => b -> DevicePtr b -> DevicePtr b -> IO ()
+    go x _ _ = nothingIfOk =<< cuMemcpyPeerAsync dst dstCtx src srcCtx (n * sizeOf x) stream
+    stream   = fromMaybe (Stream nullPtr) st
+
+{# fun unsafe cuMemcpyPeerAsync
+  { useDeviceHandle `DevicePtr a'
+  , useContext      `Context'
+  , useDeviceHandle `DevicePtr a'
+  , useContext      `Context'
+  ,                 `Int'
+  , useStream       `Stream'      } -> `Status' cToEnum #}
+#endif
+
+
 --------------------------------------------------------------------------------
 -- Combined Allocation and Marshalling
 --------------------------------------------------------------------------------
@@ -363,6 +472,43 @@
 
 
 -- |
+-- Set the number of data elements to the specified value, which may be either
+-- 8-, 16-, or 32-bits wide. The operation is asynchronous and may optionally be
+-- associated with a stream. Requires cuda-3.2.
+--
+memsetAsync :: Storable a => DevicePtr a -> Int -> a -> Maybe Stream -> IO ()
+#if CUDA_VERSION < 3020
+memsetAsync _    _ _   _   = requireSDK 3.2 "memsetAsync"
+#else
+memsetAsync dptr n val mst = case sizeOf val of
+    1 -> nothingIfOk =<< cuMemsetD8Async  dptr val n stream
+    2 -> nothingIfOk =<< cuMemsetD16Async dptr val n stream
+    4 -> nothingIfOk =<< cuMemsetD32Async dptr val n stream
+    _ -> cudaError "can only memset 8-, 16-, and 32-bit values"
+    where
+      stream = fromMaybe (Stream nullPtr) mst
+
+{# fun unsafe cuMemsetD8Async
+  { useDeviceHandle `DevicePtr a'
+  , unsafeCoerce    `a'
+  ,                 `Int'
+  , useStream       `Stream'      } -> `Status' cToEnum #}
+
+{# fun unsafe cuMemsetD16Async
+  { useDeviceHandle `DevicePtr a'
+  , unsafeCoerce    `a'
+  ,                 `Int'
+  , useStream       `Stream'      } -> `Status' cToEnum #}
+
+{# fun unsafe cuMemsetD32Async
+  { useDeviceHandle `DevicePtr a'
+  , unsafeCoerce    `a'
+  ,                 `Int'
+  , useStream       `Stream'      } -> `Status' cToEnum #}
+#endif
+
+
+-- |
 -- Return the device pointer associated with a mapped, pinned host buffer, which
 -- was allocated with the 'DeviceMapped' option by 'mallocHostArray'.
 --
@@ -394,7 +540,6 @@
   where
     alloca' :: Storable a => (Ptr a -> IO b) -> IO b
     alloca' = F.alloca
-
 
 -- |
 -- Return the amount of free and total memory respectively available to the
diff --git a/Foreign/CUDA/Driver/Module.chs b/Foreign/CUDA/Driver/Module.chs
--- a/Foreign/CUDA/Driver/Module.chs
+++ b/Foreign/CUDA/Driver/Module.chs
@@ -2,22 +2,21 @@
 --------------------------------------------------------------------------------
 -- |
 -- Module    : Foreign.CUDA.Driver.Module
--- Copyright : (c) [2009..2010] Trevor L. McDonell
+-- Copyright : (c) [2009..2011] Trevor L. McDonell
 -- License   : BSD
 --
 -- Module management for low-level driver interface
 --
 --------------------------------------------------------------------------------
 
-module Foreign.CUDA.Driver.Module
-  (
-    Module,
-    JITOption(..), JITTarget(..), JITResult(..),
-    getFun, getPtr, getTex,
-    loadFile, loadData, loadDataEx, unload
-  )
-  where
+module Foreign.CUDA.Driver.Module (
 
+  -- * Module Management
+  Module, JITOption(..), JITTarget(..), JITResult(..),
+  getFun, getPtr, getTex, loadFile, loadData, loadDataEx, unload
+
+) where
+
 #include <cuda.h>
 #include "cbits/stubs.h"
 {# context lib="cuda" #}
@@ -38,7 +37,7 @@
 import Control.Monad                            (liftM)
 import Control.Exception.Extensible             (throwIO)
 import Data.ByteString.Char8                    (ByteString)
-import qualified Data.ByteString.Char8 as B
+import qualified Data.ByteString.Char8          as B
 
 
 --------------------------------------------------------------------------------
diff --git a/Foreign/CUDA/Driver/Stream.chs b/Foreign/CUDA/Driver/Stream.chs
--- a/Foreign/CUDA/Driver/Stream.chs
+++ b/Foreign/CUDA/Driver/Stream.chs
@@ -2,21 +2,23 @@
 --------------------------------------------------------------------------------
 -- |
 -- Module    : Foreign.CUDA.Driver.Stream
--- Copyright : (c) [2009..2010] Trevor L. McDonell
+-- Copyright : (c) [2009..2011] Trevor L. McDonell
 -- License   : BSD
 --
 -- Stream management for low-level driver interface
 --
 --------------------------------------------------------------------------------
 
-module Foreign.CUDA.Driver.Stream
-  (
-    Stream(..), StreamFlag,
-    create, destroy, finished, block
-  )
-  where
+module Foreign.CUDA.Driver.Stream (
 
+  -- * Stream Management
+  Stream(..), StreamFlag,
+  create, destroy, finished, block
+
+) where
+
 #include <cuda.h>
+#include "cbits/stubs.h"
 {# context lib="cuda" #}
 
 -- Friends
diff --git a/Foreign/CUDA/Driver/Texture.chs b/Foreign/CUDA/Driver/Texture.chs
--- a/Foreign/CUDA/Driver/Texture.chs
+++ b/Foreign/CUDA/Driver/Texture.chs
@@ -1,33 +1,33 @@
 {-# LANGUAGE ForeignFunctionInterface #-}
+{-# OPTIONS_HADDOCK prune #-}
 --------------------------------------------------------------------------------
 -- |
 -- Module    : Foreign.CUDA.Driver.Texture
--- Copyright : (c) [2009..2010] Trevor L. McDonell
+-- Copyright : (c) [2009..2011] Trevor L. McDonell
 -- License   : BSD
 --
 -- Texture management for low-level driver interface
 --
 --------------------------------------------------------------------------------
 
+module Foreign.CUDA.Driver.Texture (
+
+  -- * Texture Reference Management
+  Texture(..), Format(..), AddressMode(..), FilterMode(..), ReadMode(..),
+  create, destroy,
+  bind, bind2D,
+  getAddressMode, getFilterMode, getFormat,
+  setAddressMode, setFilterMode, setFormat, setReadMode,
+
+  -- Internal
+  peekTex
+
+) where
+
 #include <cuda.h>
 #include "cbits/stubs.h"
 {# context lib="cuda" #}
 
-module Foreign.CUDA.Driver.Texture
-  (
-    Texture(..), Format(..), AddressMode(..), FilterMode(..), ReadMode(..),
-#if CUDA_VERSION < 3020
-    create, destroy,
-#endif
-    bind, bind2D,
-    getAddressMode, getFilterMode, getFormat,
-    setAddressMode, setFilterMode, setFormat, setReadMode,
-
-    -- Internal
-    peekTex
-  )
-  where
-
 -- Friends
 import Foreign.CUDA.Ptr
 import Foreign.CUDA.Driver.Error
@@ -39,12 +39,17 @@
 import Foreign.C
 import Control.Monad
 
+#if CUDA_VERSION >= 3020
+{-# DEPRECATED create, destroy "as of CUDA version 3.2" #-}
+#endif
 
+
 --------------------------------------------------------------------------------
 -- Data Types
 --------------------------------------------------------------------------------
 
--- |A texture reference
+-- |
+-- A texture reference
 --
 newtype Texture = Texture { useTexture :: {# type CUtexref #}}
 
@@ -54,19 +59,22 @@
   peek p      = Texture `fmap` peek (castPtr p)
   poke p t    = poke (castPtr p) (useTexture t)
 
--- |Texture reference addressing modes
+-- |
+-- Texture reference addressing modes
 --
 {# enum CUaddress_mode as AddressMode
   { underscoreToCase }
   with prefix="CU_TR_ADDRESS_MODE" deriving (Eq, Show) #}
 
--- |Texture reference filtering mode
+-- |
+-- Texture reference filtering mode
 --
 {# enum CUfilter_mode as FilterMode
   { underscoreToCase }
   with prefix="CU_TR_FILTER_MODE" deriving (Eq, Show) #}
 
--- |Texture read mode options
+-- |
+-- Texture read mode options
 --
 #c
 typedef enum CUtexture_flag_enum {
@@ -79,7 +87,8 @@
   { underscoreToCase }
   with prefix="CU_TEXTURE_FLAG" deriving (Eq, Show) #}
 
--- |Texture data formats
+-- |
+-- Texture data formats
 --
 {# enum CUarray_format as Format
   { underscoreToCase
@@ -96,8 +105,8 @@
 -- Texture management
 --------------------------------------------------------------------------------
 
-#if CUDA_VERSION < 3020
--- |Create a new texture reference. Once created, the application must call
+-- |
+-- Create a new texture reference. Once created, the application must call
 -- 'setPtr' to associate the reference with allocated memory. Other texture
 -- reference functions are used to specify the format and interpretation to be
 -- used when the memory is read through this reference.
@@ -109,16 +118,18 @@
   { alloca- `Texture' peekTex* } -> `Status' cToEnum #}
 
 
--- |Destroy a texture reference
+-- |
+-- Destroy a texture reference
 --
 destroy :: Texture -> IO ()
 destroy tex = nothingIfOk =<< cuTexRefDestroy tex
 
 {# fun unsafe cuTexRefDestroy
   { useTexture `Texture' } -> `Status' cToEnum #}
-#endif
 
--- |Bind a linear array address of the given size (bytes) as a texture
+
+-- |
+-- Bind a linear array address of the given size (bytes) as a texture
 -- reference. Any previously bound references are unbound.
 --
 bind :: Texture -> DevicePtr a -> Int64 -> IO ()
@@ -131,7 +142,8 @@
   ,                 `Int64'       } -> `Status' cToEnum #}
 
 
--- |Bind a linear address range to the given texture reference as a
+-- |
+-- Bind a linear address range to the given texture reference as a
 -- two-dimensional arena. Any previously bound reference is unbound. Note that
 -- calls to 'setFormat' can not follow a call to 'bind2D' for the same texture
 -- reference.
@@ -150,7 +162,8 @@
   ,                 `Int64'       } -> `Status' cToEnum #}
 
 
--- |Get the addressing mode used by a texture reference, corresponding to the
+-- |
+-- Get the addressing mode used by a texture reference, corresponding to the
 -- given dimension (currently the only supported dimension values are 0 or 1).
 --
 getAddressMode :: Texture -> Int -> IO AddressMode
@@ -162,7 +175,8 @@
   ,            `Int'                   } -> `Status' cToEnum #}
 
 
--- |Get the filtering mode used by a texture reference
+-- |
+-- Get the filtering mode used by a texture reference
 --
 getFilterMode :: Texture -> IO FilterMode
 getFilterMode tex = resultIfOk =<< cuTexRefGetFilterMode tex
@@ -172,7 +186,8 @@
   , useTexture `Texture'              } -> `Status' cToEnum #}
 
 
--- |Get the data format and number of channel components of the bound texture
+-- |
+-- Get the data format and number of channel components of the bound texture
 --
 getFormat :: Texture -> IO (Format, Int)
 getFormat tex = do
@@ -185,7 +200,8 @@
   , useTexture `Texture'                } -> `Status' cToEnum #}
 
 
--- |Specify the addressing mode for the given dimension of a texture reference
+-- |
+-- Specify the addressing mode for the given dimension of a texture reference
 --
 setAddressMode :: Texture -> Int -> AddressMode -> IO ()
 setAddressMode tex dim mode = nothingIfOk =<< cuTexRefSetAddressMode tex dim mode
@@ -196,7 +212,8 @@
   , cFromEnum  `AddressMode' } -> `Status' cToEnum #}
 
 
--- |Specify the filtering mode to be used when reading memory through a texture
+-- |
+-- Specify the filtering mode to be used when reading memory through a texture
 -- reference
 --
 setFilterMode :: Texture -> FilterMode -> IO ()
@@ -207,7 +224,8 @@
   , cFromEnum  `FilterMode' } -> `Status' cToEnum #}
 
 
--- |Specify additional characteristics for reading and indexing the texture
+-- |
+-- Specify additional characteristics for reading and indexing the texture
 -- reference
 --
 setReadMode :: Texture -> ReadMode -> IO ()
@@ -218,8 +236,9 @@
   , cFromEnum  `ReadMode' } -> `Status' cToEnum #}
 
 
--- |Specify the format of the data and number of packed components per element
--- to be read by the texture reference
+-- |
+-- Specify the format of the data and number of packed components per element to
+-- be read by the texture reference
 --
 setFormat :: Texture -> Format -> Int -> IO ()
 setFormat tex fmt chn = nothingIfOk =<< cuTexRefSetFormat tex fmt chn
diff --git a/Foreign/CUDA/Driver/Utils.chs b/Foreign/CUDA/Driver/Utils.chs
--- a/Foreign/CUDA/Driver/Utils.chs
+++ b/Foreign/CUDA/Driver/Utils.chs
@@ -2,22 +2,18 @@
 --------------------------------------------------------------------------------
 -- |
 -- Module    : Foreign.CUDA.Driver.Utils
--- Copyright : (c) [2009..2010] Trevor L. McDonell
+-- Copyright : (c) [2009..2011] Trevor L. McDonell
 -- License   : BSD
 --
 -- Utility functions
 --
 --------------------------------------------------------------------------------
 
-module Foreign.CUDA.Driver.Utils
-  (
-    driverVersion
-  )
+module Foreign.CUDA.Driver.Utils (driverVersion)
   where
 
 #include <cuda.h>
 {# context lib="cuda" #}
-
 
 -- Friends
 import Foreign.CUDA.Driver.Error
diff --git a/Foreign/CUDA/Ptr.hs b/Foreign/CUDA/Ptr.hs
--- a/Foreign/CUDA/Ptr.hs
+++ b/Foreign/CUDA/Ptr.hs
@@ -1,7 +1,7 @@
 --------------------------------------------------------------------------------
 -- |
 -- Module    : Foreign.CUDA.Ptr
--- Copyright : (c) [2009..2010] Trevor L. McDonell
+-- Copyright : (c) [2009..2011] Trevor L. McDonell
 -- License   : BSD
 --
 -- A common interface for host and device pointers. While it is possible mix the
diff --git a/Foreign/CUDA/Runtime.hs b/Foreign/CUDA/Runtime.hs
--- a/Foreign/CUDA/Runtime.hs
+++ b/Foreign/CUDA/Runtime.hs
@@ -1,30 +1,30 @@
 --------------------------------------------------------------------------------
 -- |
 -- Module    : Foreign.CUDA.Runtime
--- Copyright : (c) [2009..2010] Trevor L. McDonell
+-- Copyright : (c) [2009..2011] Trevor L. McDonell
 -- License   : BSD
 --
 -- Top level bindings to the C-for-CUDA runtime API
 --
 --------------------------------------------------------------------------------
 
-module Foreign.CUDA.Runtime
-  (
-    module Foreign.CUDA.Ptr,
-    module Foreign.CUDA.Runtime.Device,
-    module Foreign.CUDA.Runtime.Error,
-    module Foreign.CUDA.Runtime.Exec,
-    module Foreign.CUDA.Runtime.Marshal,
-    module Foreign.CUDA.Runtime.Thread,
-    module Foreign.CUDA.Runtime.Utils
-  )
-  where
+module Foreign.CUDA.Runtime (
 
+  module Foreign.CUDA.Ptr,
+  module Foreign.CUDA.Runtime.Device,
+  module Foreign.CUDA.Runtime.Error,
+  module Foreign.CUDA.Runtime.Exec,
+  module Foreign.CUDA.Runtime.Marshal,
+  module Foreign.CUDA.Runtime.Thread,
+  module Foreign.CUDA.Runtime.Utils
+
+) where
+
 import Foreign.CUDA.Ptr
 import Foreign.CUDA.Runtime.Device
 import Foreign.CUDA.Runtime.Error
 import Foreign.CUDA.Runtime.Exec
 import Foreign.CUDA.Runtime.Marshal
-import Foreign.CUDA.Runtime.Thread
+import Foreign.CUDA.Runtime.Thread              ( exit )
 import Foreign.CUDA.Runtime.Utils
 
diff --git a/Foreign/CUDA/Runtime/Device.chs b/Foreign/CUDA/Runtime/Device.chs
--- a/Foreign/CUDA/Runtime/Device.chs
+++ b/Foreign/CUDA/Runtime/Device.chs
@@ -1,23 +1,30 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE CPP, ForeignFunctionInterface, EmptyDataDecls #-}
 --------------------------------------------------------------------------------
 -- |
 -- Module    : Foreign.CUDA.Runtime.Device
--- Copyright : (c) [2009..2010] Trevor L. McDonell
+-- Copyright : (c) [2009..2011] Trevor L. McDonell
 -- License   : BSD
 --
 -- Device management routines
 --
 --------------------------------------------------------------------------------
 
-module Foreign.CUDA.Runtime.Device
-  (
-    ComputeMode(..), DeviceFlag(..), DeviceProperties(..),
+module Foreign.CUDA.Runtime.Device (
 
-    -- ** Device management
-    choose, get, count, props, set, setFlags, setOrder
-  )
-  where
+  -- * Device Management
+  ComputeMode(..), Device, DeviceFlag(..), DeviceProperties(..),
+  choose, get, count, props, set, setFlags, setOrder, reset, sync,
 
+  -- * Peer Access
+  PeerFlag,
+  accessible, add, remove,
+
+  -- * Cache Configuration
+  Limit(..),
+  getLimit, setLimit
+
+) where
+
 #include <cuda_runtime_api.h>
 {# context lib="cudart" #}
 
@@ -52,8 +59,12 @@
 -- Data Types
 --------------------------------------------------------------------------------
 
-{# pointer *cudaDeviceProp as ^ foreign -> DeviceProperties nocode #}
+-- |
+-- A device identifier
+--
+type Device = Int
 
+{# pointer *cudaDeviceProp as ^ foreign -> DeviceProperties nocode #}
 
 -- |
 -- Device execution flags
@@ -92,6 +103,18 @@
 #if CUDART_VERSION >= 3010
     ee <- cToBool      `fmap` {#get cudaDeviceProp.ECCEnabled#} p
 #endif
+#if CUDART_VERSION >= 4000
+    ae <- cIntConv     `fmap` {#get cudaDeviceProp.asyncEngineCount#} p
+    l2 <- cIntConv     `fmap` {#get cudaDeviceProp.l2CacheSize#} p
+    tm <- cIntConv     `fmap` {#get cudaDeviceProp.maxThreadsPerMultiProcessor#} p
+    mw <- cIntConv     `fmap` {#get cudaDeviceProp.memoryBusWidth#} p
+    mc <- cIntConv     `fmap` {#get cudaDeviceProp.memoryClockRate#} p
+    pb <- cIntConv     `fmap` {#get cudaDeviceProp.pciBusID#} p
+    pd <- cIntConv     `fmap` {#get cudaDeviceProp.pciDeviceID#} p
+    pm <- cIntConv     `fmap` {#get cudaDeviceProp.pciDomainID#} p
+    tc <- cToBool      `fmap` {#get cudaDeviceProp.tccDriver#} p
+    ua <- cToBool      `fmap` {#get cudaDeviceProp.unifiedAddressing#} p
+#endif
 
     --
     -- C->Haskell returns the wrong type when accessing static arrays in
@@ -108,49 +131,61 @@
 
     return DeviceProperties
       {
-        deviceName               = n,
-        computeCapability        = v1 + v2 / max 10 (10^ ((ceiling . logBase 10) v2 :: Int)),
-        totalGlobalMem           = gm,
-        totalConstMem            = cm,
-        sharedMemPerBlock        = sm,
-        regsPerBlock             = rb,
-        warpSize                 = ws,
-        maxThreadsPerBlock       = tb,
-        maxBlockSize             = (t1,t2,t3),
-        maxGridSize              = (g1,g2,g3),
-        clockRate                = cl,
-        multiProcessorCount      = pc,
-        memPitch                 = mp,
-        textureAlignment         = ta,
-        computeMode              = md,
-        deviceOverlap            = ov,
+        deviceName                      = n,
+        computeCapability               =
+          v1 + v2 / max 10 (10^ ((ceiling . logBase 10) v2 :: Int)),
+        totalGlobalMem                  = gm,
+        totalConstMem                   = cm,
+        sharedMemPerBlock               = sm,
+        regsPerBlock                    = rb,
+        warpSize                        = ws,
+        maxThreadsPerBlock              = tb,
+        maxBlockSize                    = (t1,t2,t3),
+        maxGridSize                     = (g1,g2,g3),
+        clockRate                       = cl,
+        multiProcessorCount             = pc,
+        memPitch                        = mp,
+        textureAlignment                = ta,
+        computeMode                     = md,
+        deviceOverlap                   = ov,
 #if CUDART_VERSION >= 3000
-        concurrentKernels        = ck,
-        maxTextureDim1D          = u1,
-        maxTextureDim2D          = (u21,u22),
-        maxTextureDim3D          = (u31,u32,u33),
+        concurrentKernels               = ck,
+        maxTextureDim1D                 = u1,
+        maxTextureDim2D                 = (u21,u22),
+        maxTextureDim3D                 = (u31,u32,u33),
 #endif
 #if CUDART_VERSION >= 3010
-        eccEnabled               = ee,
+        eccEnabled                      = ee,
 #endif
 #if CUDART_VERSION >= 3000 && CUDART_VERSION < 3010
-        eccEnabled               = False,       -- not visible from runtime API < 3.1
+        -- not visible from runtime API < 3.1
+        eccEnabled                      = False,
 #endif
-        kernelExecTimeoutEnabled = ke,
-        integrated               = tg,
-        canMapHostMemory         = hm
+#if CUDART_VERSION >= 4000
+        asyncEngineCount                = ae,
+        cacheMemL2                      = l2,
+        maxThreadsPerMultiProcessor     = tm,
+        memBusWidth                     = mw,
+        memClockRate                    = mc,
+        tccDriverEnabled                = tc,
+        unifiedAddressing               = ua,
+        pciInfo                         = PCI pb pd pm,
+#endif
+        kernelExecTimeoutEnabled        = ke,
+        integrated                      = tg,
+        canMapHostMemory                = hm
       }
 
 
 --------------------------------------------------------------------------------
--- Functions
+-- Device Management
 --------------------------------------------------------------------------------
 
 -- |
 -- Select the compute device which best matches the given criteria
 --
-choose     :: DeviceProperties -> IO Int
-choose dev =  resultIfOk =<< cudaChooseDevice dev
+choose :: DeviceProperties -> IO Device
+choose dev = resultIfOk =<< cudaChooseDevice dev
 
 {# fun unsafe cudaChooseDevice
   { alloca-      `Int'              peekIntConv*
@@ -162,8 +197,8 @@
 -- |
 -- Returns which device is currently being used
 --
-get :: IO Int
-get =  resultIfOk =<< cudaGetDevice
+get :: IO Device
+get = resultIfOk =<< cudaGetDevice
 
 {# fun unsafe cudaGetDevice
   { alloca- `Int' peekIntConv* } -> `Status' cToEnum #}
@@ -174,7 +209,7 @@
 -- capability >= 1.0
 --
 count :: IO Int
-count =  resultIfOk =<< cudaGetDeviceCount
+count = resultIfOk =<< cudaGetDeviceCount
 
 {# fun unsafe cudaGetDeviceCount
   { alloca- `Int' peekIntConv* } -> `Status' cToEnum #}
@@ -183,8 +218,8 @@
 -- |
 -- Return information about the selected compute device
 --
-props   :: Int -> IO DeviceProperties
-props n =  resultIfOk =<< cudaGetDeviceProperties n
+props :: Device -> IO DeviceProperties
+props n = resultIfOk =<< cudaGetDeviceProperties n
 
 {# fun unsafe cudaGetDeviceProperties
   { alloca- `DeviceProperties' peek*
@@ -194,8 +229,8 @@
 -- |
 -- Set device to be used for GPU execution
 --
-set   :: Int -> IO ()
-set n =  nothingIfOk =<< cudaSetDevice n
+set :: Device -> IO ()
+set n = nothingIfOk =<< cudaSetDevice n
 
 {# fun unsafe cudaSetDevice
   { `Int' } -> `Status' cToEnum #}
@@ -204,8 +239,8 @@
 -- |
 -- Set flags to be used for device executions
 --
-setFlags   :: [DeviceFlag] -> IO ()
-setFlags f =  nothingIfOk =<< cudaSetDeviceFlags (combineBitMasks f)
+setFlags :: [DeviceFlag] -> IO ()
+setFlags f = nothingIfOk =<< cudaSetDeviceFlags (combineBitMasks f)
 
 {# fun unsafe cudaSetDeviceFlags
   { `Int' } -> `Status' cToEnum #}
@@ -214,12 +249,160 @@
 -- |
 -- Set list of devices for CUDA execution in priority order
 --
-setOrder   :: [Int] -> IO ()
-setOrder l =  nothingIfOk =<< cudaSetValidDevices l (length l)
+setOrder :: [Device] -> IO ()
+setOrder l = nothingIfOk =<< cudaSetValidDevices l (length l)
 
 {# fun unsafe cudaSetValidDevices
   { withArrayIntConv* `[Int]'
   ,                   `Int'   } -> `Status' cToEnum #}
   where
       withArrayIntConv = withArray . map cIntConv
+
+-- |
+-- Block until the device has completed all preceding requested tasks. Returns
+-- an error if one of the tasks fails.
+--
+sync :: IO ()
+#if CUDART_VERSION < 4000
+sync = nothingIfOk =<< cudaThreadSynchronize
+{# fun unsafe cudaThreadSynchronize { } -> `Status' cToEnum #}
+#else
+sync = nothingIfOk =<< cudaDeviceSynchronize
+{# fun unsafe cudaDeviceSynchronize { } -> `Status' cToEnum #}
+#endif
+
+-- |
+-- Explicitly destroys and cleans up all runtime resources associated with the
+-- current device in the current process. Any subsequent API call will
+-- reinitialise the device.
+--
+-- Note that this function will reset the device immediately. It is the caller’s
+-- responsibility to ensure that the device is not being accessed by any other
+-- host threads from the process when this function is called.
+--
+reset :: IO ()
+#if CUDART_VERSION >= 4000
+reset = nothingIfOk =<< cudaDeviceReset
+{# fun unsafe cudaDeviceReset { } -> `Status' cToEnum #}
+#else
+reset = nothingIfOk =<< cudaThreadExit
+{# fun unsafe cudaThreadExit  { } -> `Status' cToEnum #}
+#endif
+
+
+--------------------------------------------------------------------------------
+-- Peer Access
+--------------------------------------------------------------------------------
+
+-- |
+-- Possible option values for direct peer memory access
+--
+data PeerFlag
+instance Enum PeerFlag where
+
+-- |
+-- Queries if the first device can directly access the memory of the second. If
+-- direct access is possible, it can then be enabled with 'add'. Requires
+-- cuda-4.0.
+--
+accessible :: Device -> Device -> IO Bool
+#if CUDART_VERSION < 4000
+accessible _   _    = requireSDK 4.0 "accessible"
+#else
+accessible dev peer = resultIfOk =<< cudaDeviceCanAccessPeer dev peer
+
+{# fun unsafe cudaDeviceCanAccessPeer
+  { alloca-  `Bool'   peekBool*
+  , cIntConv `Device'
+  , cIntConv `Device'           } -> `Status' cToEnum #}
+#endif
+
+-- |
+-- If the devices of both the current and supplied contexts support unified
+-- addressing, then enable allocations in the supplied context to be accessible
+-- by the current context. Requires cuda-4.0.
+--
+add :: Device -> [PeerFlag] -> IO ()
+#if CUDART_VERSION < 4000
+add _   _     = requireSDK 4.0 "add"
+#else
+add dev flags = nothingIfOk =<< cudaDeviceEnablePeerAccess dev flags
+
+{# fun unsafe cudaDeviceEnablePeerAccess
+  { cIntConv        `Device'
+  , combineBitMasks `[PeerFlag]' } -> `Status' cToEnum #}
+#endif
+
+
+-- |
+-- Disable direct memory access from the current context to the supplied
+-- context. Requires cuda-4.0.
+--
+remove :: Device -> IO ()
+#if CUDART_VERSION < 4000
+remove _   = requireSDK 4.0 "remove"
+#else
+remove dev = nothingIfOk =<< cudaDeviceDisablePeerAccess dev
+
+{# fun unsafe cudaDeviceDisablePeerAccess
+  { cIntConv `Device' } -> `Status' cToEnum #}
+#endif
+
+
+--------------------------------------------------------------------------------
+-- Cache Configuration
+--------------------------------------------------------------------------------
+
+-- |
+-- Device limit flags
+--
+#if CUDART_VERSION < 3010
+data Limit
+#else
+{# enum cudaLimit as Limit
+    { underscoreToCase }
+    with prefix="cudaLimit" deriving (Eq, Show) #}
+#endif
+
+
+-- |
+-- Query compute 2.0 call stack limits. Requires cuda-3.1.
+--
+getLimit :: Limit -> IO Int
+#if   CUDART_VERSION < 3010
+getLimit _ = requireSDK 3.1 "getLimit"
+#elif CUDART_VERSION < 4000
+getLimit l = resultIfOk =<< cudaThreadGetLimit l
+
+{# fun unsafe cudaThreadGetLimit
+  { alloca-   `Int' peekIntConv*
+  , cFromEnum `Limit'            } -> `Status' cToEnum #}
+#else
+getLimit l = resultIfOk =<< cudaDeviceGetLimit l
+
+{# fun unsafe cudaDeviceGetLimit
+  { alloca-   `Int' peekIntConv*
+  , cFromEnum `Limit'            } -> `Status' cToEnum #}
+#endif
+
+
+-- |
+-- Set compute 2.0 call stack limits. Requires cuda-3.1.
+--
+setLimit :: Limit -> Int -> IO ()
+#if   CUDART_VERSION < 3010
+setLimit _ _ = requireSDK 3.1 "setLimit"
+#elif CUDART_VERSION < 4000
+setLimit l n = nothingIfOk =<< cudaThreadSetLimit l n
+
+{# fun unsafe cudaThreadSetLimit
+  { cFromEnum `Limit'
+  , cIntConv  `Int'   } -> `Status' cToEnum #}
+#else
+setLimit l n = nothingIfOk =<< cudaDeviceSetLimit l n
+
+{# fun unsafe cudaDeviceSetLimit
+  { cFromEnum `Limit'
+  , cIntConv  `Int'   } -> `Status' cToEnum #}
+#endif
 
diff --git a/Foreign/CUDA/Runtime/Error.chs b/Foreign/CUDA/Runtime/Error.chs
--- a/Foreign/CUDA/Runtime/Error.chs
+++ b/Foreign/CUDA/Runtime/Error.chs
@@ -2,22 +2,23 @@
 --------------------------------------------------------------------------------
 -- |
 -- Module    : Foreign.CUDA.Runtime.Error
--- Copyright : (c) [2009..2010] Trevor L. McDonell
+-- Copyright : (c) [2009..2011] Trevor L. McDonell
 -- License   : BSD
 --
 -- Error handling functions
 --
 --------------------------------------------------------------------------------
 
-module Foreign.CUDA.Runtime.Error
-  (
-    Status(..), CUDAException(..),
-    cudaError, describe,
-    resultIfOk, nothingIfOk
-  )
-  where
+module Foreign.CUDA.Runtime.Error (
 
+  Status(..), CUDAException(..),
 
+  cudaError, describe, requireSDK,
+  resultIfOk, nothingIfOk
+
+) where
+
+
 -- Friends
 import Foreign.CUDA.Internal.C2HS
 
@@ -64,6 +65,12 @@
 --
 cudaError :: String -> IO a
 cudaError s = throwIO (UserError s)
+
+-- |
+-- A specially formatted error message
+--
+requireSDK :: Double -> String -> IO a
+requireSDK v s = cudaError ("'" ++ s ++ "' requires at least cuda-" ++ show v)
 
 
 --------------------------------------------------------------------------------
diff --git a/Foreign/CUDA/Runtime/Event.chs b/Foreign/CUDA/Runtime/Event.chs
--- a/Foreign/CUDA/Runtime/Event.chs
+++ b/Foreign/CUDA/Runtime/Event.chs
@@ -1,33 +1,35 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE CPP, ForeignFunctionInterface, EmptyDataDecls #-}
 --------------------------------------------------------------------------------
 -- |
 -- Module    : Foreign.CUDA.Driver.Event
--- Copyright : (c) [2009..2010] Trevor L. McDonell
+-- Copyright : (c) [2009..2011] Trevor L. McDonell
 -- License   : BSD
 --
 -- Event management for C-for-CUDA runtime environment
 --
 --------------------------------------------------------------------------------
 
-module Foreign.CUDA.Runtime.Event
-  (
-    Event, EventFlag(..),
-    create, destroy, elapsedTime, query, record, block
-  )
-  where
+module Foreign.CUDA.Runtime.Event (
 
+  -- * Event Management
+  Event, EventFlag(..), WaitFlag,
+  create, destroy, elapsedTime, query, record, wait, block
+
+) where
+
 #include <cuda_runtime_api.h>
 {# context lib="cudart" #}
 
 -- Friends
 import Foreign.CUDA.Runtime.Error
-import Foreign.CUDA.Runtime.Stream                      (Stream(..), defaultStream)
+import Foreign.CUDA.Runtime.Stream                      ( Stream(..), defaultStream )
 import Foreign.CUDA.Internal.C2HS
 
 -- System
 import Foreign
 import Foreign.C
-import Control.Monad                                    (liftM)
+import Control.Monad                                    ( liftM )
+import Data.Maybe                                       ( fromMaybe )
 
 
 #c
@@ -53,7 +55,13 @@
     { underscoreToCase }
     with prefix="CUDA_EVENT_OPTION" deriving (Eq,Show) #}
 
+-- |
+-- Possible option flags for waiting for events
+--
+data WaitFlag
+instance Enum WaitFlag where
 
+
 --------------------------------------------------------------------------------
 -- Event management
 --------------------------------------------------------------------------------
@@ -119,6 +127,24 @@
   { useEvent  `Event'
   , useStream `Stream' } -> `Status' cToEnum #}
 
+
+-- |
+-- Makes all future work submitted to the (optional) stream wait until the given
+-- event reports completion before beginning execution. Requires cuda-3.2.
+--
+wait :: Event -> Maybe Stream -> [WaitFlag] -> IO ()
+#if CUDART_VERSION < 3020
+wait _  _   _     = requireSDK 3.2 "wait"
+#else
+wait ev mst flags =
+  let st = fromMaybe defaultStream mst
+  in  nothingIfOk =<< cudaStreamWaitEvent st ev flags
+
+{# fun unsafe cudaStreamWaitEvent
+  { useStream       `Stream'
+  , useEvent        `Event'
+  , combineBitMasks `[WaitFlag]' } -> `Status' cToEnum #}
+#endif
 
 -- |
 -- Wait until the event has been recorded
diff --git a/Foreign/CUDA/Runtime/Exec.chs b/Foreign/CUDA/Runtime/Exec.chs
--- a/Foreign/CUDA/Runtime/Exec.chs
+++ b/Foreign/CUDA/Runtime/Exec.chs
@@ -1,32 +1,26 @@
-{-# LANGUAGE GADTs, ForeignFunctionInterface #-}
+{-# LANGUAGE GADTs, CPP, ForeignFunctionInterface #-}
 --------------------------------------------------------------------------------
 -- |
 -- Module    : Foreign.CUDA.Runtime.Exec
--- Copyright : (c) [2009..2010] Trevor L. McDonell
+-- Copyright : (c) [2009..2011] Trevor L. McDonell
 -- License   : BSD
 --
 -- Kernel execution control for C-for-CUDA runtime interface
 --
 --------------------------------------------------------------------------------
 
+module Foreign.CUDA.Runtime.Exec (
+
+  -- * Kernel Execution
+  FunAttributes(..), FunParam(..), CacheConfig(..),
+  attributes, setConfig, setParams, setCacheConfig, launch
+
+) where
+
 #include "cbits/stubs.h"
 #include <cuda_runtime_api.h>
 {# context lib="cudart" #}
 
-module Foreign.CUDA.Runtime.Exec
-  (
-    FunAttributes(..), FunParam(..),
-#if CUDART_VERSION >= 3000
-    CacheConfig(..),
-#endif
-    attributes, setConfig, setParams,
-#if CUDART_VERSION >= 3000
-    setCacheConfig,
-#endif
-    launch
-  )
-  where
-
 -- Friends
 import Foreign.CUDA.Runtime.Stream
 import Foreign.CUDA.Runtime.Error
@@ -81,7 +75,9 @@
         numRegs                  = nr
       }
 
-#if CUDART_VERSION >= 3000
+#if CUDART_VERSION < 3000
+data CacheConfig
+#else
 -- |
 -- Cache configuration preference
 --
@@ -184,7 +180,6 @@
     peek'     = peek . castPtr
 
 
-#if CUDART_VERSION >= 3000
 -- |
 -- On devices where the L1 cache and shared memory use the same hardware
 -- resources, this sets the preferred cache configuration for the given device
@@ -195,6 +190,9 @@
 -- synchronisation point for streamed kernel launches
 --
 setCacheConfig :: String -> CacheConfig -> IO ()
+#if CUDART_VERSION < 3000
+setCacheConfig _  _    = requireSDK 3.0 "setCacheConfig"
+#else
 setCacheConfig fn pref = nothingIfOk =<< cudaFuncSetCacheConfig fn pref
 
 {# fun unsafe cudaFuncSetCacheConfig
diff --git a/Foreign/CUDA/Runtime/Marshal.chs b/Foreign/CUDA/Runtime/Marshal.chs
--- a/Foreign/CUDA/Runtime/Marshal.chs
+++ b/Foreign/CUDA/Runtime/Marshal.chs
@@ -2,35 +2,35 @@
 --------------------------------------------------------------------------------
 -- |
 -- Module    : Foreign.CUDA.Runtime.Marshal
--- Copyright : (c) [2009..2010] Trevor L. McDonell
+-- Copyright : (c) [2009..2011] Trevor L. McDonell
 -- License   : BSD
 --
 -- Memory management for CUDA devices
 --
 --------------------------------------------------------------------------------
 
-module Foreign.CUDA.Runtime.Marshal
-  (
-    -- * Host Allocation
-    AllocFlag(..),
-    mallocHostArray, freeHost,
+module Foreign.CUDA.Runtime.Marshal (
 
-    -- * Device Allocation
-    mallocArray, allocaArray, free,
+  -- * Host Allocation
+  AllocFlag(..),
+  mallocHostArray, freeHost,
 
-    -- * Marshalling
-    peekArray, peekArrayAsync, peekListArray,
-    pokeArray, pokeArrayAsync, pokeListArray,
-    copyArray, copyArrayAsync,
+  -- * Device Allocation
+  mallocArray, allocaArray, free,
 
-    -- * Combined Allocation and Marshalling
-    newListArray,  newListArrayLen,
-    withListArray, withListArrayLen,
+  -- * Marshalling
+  peekArray, peekArrayAsync, peekListArray,
+  pokeArray, pokeArrayAsync, pokeListArray,
+  copyArray, copyArrayAsync,
 
-    -- * Utility
-    memset
-  )
-  where
+  -- * Combined Allocation and Marshalling
+  newListArray,  newListArrayLen,
+  withListArray, withListArrayLen,
+
+  -- * Utility
+  memset
+
+) where
 
 #include <cuda_runtime_api.h>
 {# context lib="cudart" #}
diff --git a/Foreign/CUDA/Runtime/Stream.chs b/Foreign/CUDA/Runtime/Stream.chs
--- a/Foreign/CUDA/Runtime/Stream.chs
+++ b/Foreign/CUDA/Runtime/Stream.chs
@@ -2,22 +2,20 @@
 --------------------------------------------------------------------------------
 -- |
 -- Module    : Foreign.CUDA.Runtime.Stream
--- Copyright : (c) [2009..2010] Trevor L. McDonell
+-- Copyright : (c) [2009..2011] Trevor L. McDonell
 -- License   : BSD
 --
 -- Stream management routines
 --
 --------------------------------------------------------------------------------
 
+module Foreign.CUDA.Runtime.Stream (
 
-module Foreign.CUDA.Runtime.Stream
-  (
-    Stream(..),
+  -- * Stream Management
+  Stream(..),
+  create, destroy, finished, block, defaultStream
 
-    -- ** Stream management
-    create, destroy, finished, block, defaultStream
-  )
-  where
+) where
 
 #include <cuda_runtime_api.h>
 {# context lib="cudart" #}
diff --git a/Foreign/CUDA/Runtime/Texture.chs b/Foreign/CUDA/Runtime/Texture.chs
--- a/Foreign/CUDA/Runtime/Texture.chs
+++ b/Foreign/CUDA/Runtime/Texture.chs
@@ -2,19 +2,20 @@
 --------------------------------------------------------------------------------
 -- |
 -- Module    : Foreign.CUDA.Runtime.Texture
--- Copyright : (c) [2009..2010] Trevor L. McDonell
+-- Copyright : (c) [2009..2011] Trevor L. McDonell
 -- License   : BSD
 --
 -- Texture references
 --
 --------------------------------------------------------------------------------
 
-module Foreign.CUDA.Runtime.Texture
-  (
-    Texture(..), FormatKind(..), AddressMode(..), FilterMode(..), FormatDesc(..),
-    bind, bind2D
-  )
-  where
+module Foreign.CUDA.Runtime.Texture (
+
+  -- * Texture Reference Management
+  Texture(..), FormatKind(..), AddressMode(..), FilterMode(..), FormatDesc(..),
+  bind, bind2D
+
+) where
 
 -- Friends
 import Foreign.CUDA.Ptr
diff --git a/Foreign/CUDA/Runtime/Thread.chs b/Foreign/CUDA/Runtime/Thread.chs
--- a/Foreign/CUDA/Runtime/Thread.chs
+++ b/Foreign/CUDA/Runtime/Thread.chs
@@ -1,40 +1,26 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
 --------------------------------------------------------------------------------
 -- |
 -- Module    : Foreign.CUDA.Runtime.Thread
--- Copyright : (c) [2009..2010] Trevor L. McDonell
+-- Copyright : (c) [2009..2011] Trevor L. McDonell
 -- License   : BSD
 --
 -- Thread management routines
 --
 --------------------------------------------------------------------------------
 
-#include <cuda_runtime_api.h>
-{# context lib="cudart" #}
-
 module Foreign.CUDA.Runtime.Thread
-  (
-#if CUDART_VERSION >= 3010
-    Limit(..), getLimit, setLimit,
-#endif
-    sync, exit
-  )
-  where
+  {-# DEPRECATED "superseded by functions in Device module" #-} (
 
--- Friends
-import Foreign.CUDA.Runtime.Error
-import Foreign.CUDA.Internal.C2HS
+  -- * Cache configuration
+  D.Limit(..),
+  getLimit, setLimit,
 
--- System
-import Foreign
-import Foreign.C
+  -- * Thread management
+  sync, exit
 
+) where
 
-#if CUDART_VERSION >= 3010
-{# enum cudaLimit as Limit
-    { underscoreToCase }
-    with prefix="cudaLimit" deriving (Eq, Show) #}
-#endif
+import qualified Foreign.CUDA.Runtime.Device      as D
 
 --------------------------------------------------------------------------------
 -- Thread management
@@ -45,10 +31,10 @@
 -- an error if one of the tasks fails.
 --
 sync :: IO ()
-sync =  nothingIfOk =<< cudaThreadSynchronize
-
-{# fun unsafe cudaThreadSynchronize
-  { } -> `Status' cToEnum #}
+sync = D.sync
+#if CUDART_VERSION >= 4000
+{-# DEPRECATED exit "use 'Foreign.CUDA.Runtime.Device.sync' instead" #-}
+#endif
 
 
 -- |
@@ -57,31 +43,28 @@
 -- Implicitly called on thread exit.
 --
 exit :: IO ()
-exit =  nothingIfOk =<< cudaThreadExit
-
-{# fun unsafe cudaThreadExit
-  { } -> `Status' cToEnum #}
+exit = D.reset
+#if CUDART_VERSION >= 4000
+{-# DEPRECATED exit "use 'Foreign.CUDA.Runtime.Device.reset' instead" #-}
+#endif
 
 
-#if CUDART_VERSION >= 3010
 -- |
--- Query compute 2.0 call stack limits
+-- Query compute 2.0 call stack limits. Requires cuda-3.1.
 --
-getLimit :: Limit -> IO Int
-getLimit l = resultIfOk =<< cudaThreadGetLimit l
+getLimit :: D.Limit -> IO Int
+getLimit = D.getLimit
+#if CUDART_VERSION >= 4000
+{-# DEPRECATED exit "use 'Foreign.CUDA.Runtime.Device.getLimit' instead" #-}
+#endif
 
+
 -- |
--- Set compute 2.0 call stack limits
+-- Set compute 2.0 call stack limits. Requires cuda-3.1.
 --
-setLimit :: Limit -> Int -> IO ()
-setLimit l n = nothingIfOk =<< cudaThreadSetLimit l n
-
-{# fun unsafe cudaThreadGetLimit
-  { alloca-   `Int' peekIntConv*
-  , cFromEnum `Limit'            } -> `Status' cToEnum #}
-
-{# fun unsafe cudaThreadSetLimit
-  { cFromEnum `Limit'
-  , cIntConv  `Int'   } -> `Status' cToEnum #}
+setLimit :: D.Limit -> Int -> IO ()
+setLimit = D.setLimit
+#if CUDART_VERSION >= 4000
+{-# DEPRECATED exit "use 'Foreign.CUDA.Runtime.Device.setLimit' instead" #-}
 #endif
 
diff --git a/Foreign/CUDA/Runtime/Utils.chs b/Foreign/CUDA/Runtime/Utils.chs
--- a/Foreign/CUDA/Runtime/Utils.chs
+++ b/Foreign/CUDA/Runtime/Utils.chs
@@ -2,17 +2,14 @@
 --------------------------------------------------------------------------------
 -- |
 -- Module    : Foreign.CUDA.Runtime.Utils
--- Copyright : (c) [2009..2010] Trevor L. McDonell
+-- Copyright : (c) [2009..2011] Trevor L. McDonell
 -- License   : BSD
 --
 -- Utility functions
 --
 --------------------------------------------------------------------------------
 
-module Foreign.CUDA.Runtime.Utils
-  (
-    runtimeVersion, driverVersion
-  )
+module Foreign.CUDA.Runtime.Utils (runtimeVersion, driverVersion)
   where
 
 #include <cuda_runtime_api.h>
diff --git a/Setup.hs b/Setup.hs
--- a/Setup.hs
+++ b/Setup.hs
@@ -1,18 +1,96 @@
+import Distribution.PackageDescription
+import Distribution.PackageDescription.Parse
+import Distribution.Verbosity
+import Distribution.System
 import Distribution.Simple
+import Distribution.Simple.Utils
+import Distribution.Simple.Setup
+import Distribution.Simple.Command
 import Distribution.Simple.Program
 import Distribution.Simple.LocalBuildInfo
-import Distribution.Simple.PreProcess hiding (ppC2hs)
-import Distribution.PackageDescription
+import Distribution.Simple.PreProcess           hiding (ppC2hs)
+
+import Control.Exception.Extensible
 import System.FilePath
+import System.Directory
+import System.Environment
+import System.IO.Error                          hiding (catch)
+import Prelude                                  hiding (catch)
 
 
+-- Replicate the invocation of the postConf script, so that we can insert the
+-- arguments of --extra-include-dirs and --extra-lib-dirs as paths in CPPFLAGS
+-- and LDFLAGS into the environment
+--
 main :: IO ()
 main = defaultMainWithHooks customHooks
   where
     preprocessors = hookedPreProcessors autoconfUserHooks
     customHooks   = autoconfUserHooks {
+      postConf            = defaultPostConf,
       hookedPreProcessors = ("chs",ppC2hs) : filter (\x -> fst x /= "chs") preprocessors
     }
+
+    defaultPostConf :: Args -> ConfigFlags -> PackageDescription -> LocalBuildInfo -> IO ()
+    defaultPostConf args flags pkg_descr lbi
+      = let verbosity = fromFlag (configVerbosity flags)
+        in do
+          noExtraFlags args
+          confExists <- doesFileExist "configure"
+          if confExists
+             then runConfigureScript verbosity False flags lbi
+             else die "configure script not found."
+
+          pbi <- getHookedBuildInfo verbosity
+          let pkg_descr' = updatePackageDescription pbi pkg_descr
+          postConf simpleUserHooks args flags pkg_descr' lbi
+
+
+runConfigureScript :: Verbosity -> Bool -> ConfigFlags -> LocalBuildInfo -> IO ()
+runConfigureScript verbosity backwardsCompatHack flags lbi = do
+  env               <- getEnvironment
+  (ccProg, ccFlags) <- configureCCompiler verbosity (withPrograms lbi)
+
+  let env' = foldr appendToEnvironment env
+               [("CC",       ccProg)
+               ,("CFLAGS",   unwords ccFlags)
+               ,("CPPFLAGS", concatMap ("-I"++) (configExtraIncludeDirs flags))
+               ,("LDFLAGS",  concatMap ("-L"++) (configExtraLibDirs flags))
+               ]
+
+  handleNoWindowsSH $ rawSystemExitWithEnv verbosity "sh" args env'
+
+  where
+    args = "configure" : configureArgs backwardsCompatHack flags
+
+    appendToEnvironment (key, val) [] = [(key, val)]
+    appendToEnvironment (key, val) (kv@(k, v) : rest)
+     | key == k  = (key, v ++ " " ++ val) : rest
+     | otherwise = kv : appendToEnvironment (key, val) rest
+
+    handleNoWindowsSH action
+      | buildOS /= Windows
+      = action
+
+      | otherwise
+      = action
+          `catch` \ioe -> if isDoesNotExistError ioe
+                              then die notFoundMsg
+                              else throwIO ioe
+
+    notFoundMsg = "The package has a './configure' script. This requires a "
+               ++ "Unix compatibility toolchain such as MinGW+MSYS or Cygwin."
+
+
+getHookedBuildInfo :: Verbosity -> IO HookedBuildInfo
+getHookedBuildInfo verbosity = do
+  maybe_infoFile <- defaultHookedPackageDesc
+  case maybe_infoFile of
+    Nothing       -> return emptyHookedBuildInfo
+    Just infoFile -> do
+      info verbosity $ "Reading parameters from " ++ infoFile
+      readHookedBuildInfo verbosity infoFile
+
 
 -- Replicate the default C2HS preprocessor hook here, and inject a value for
 -- extra-c2hs-options, if it was present in the buildinfo file
diff --git a/cbits/stubs.c b/cbits/stubs.c
--- a/cbits/stubs.c
+++ b/cbits/stubs.c
@@ -122,4 +122,30 @@
 }
 
 #endif
+#if CUDA_VERSION >= 4000
+CUresult CUDAAPI cuCtxDestroy(CUcontext ctx)
+{
+    return cuCtxDestroy_v2(ctx);
+}
 
+CUresult CUDAAPI cuCtxPopCurrent(CUcontext *pctx)
+{
+    return cuCtxPopCurrent_v2(pctx);
+}
+
+CUresult CUDAAPI cuCtxPushCurrent(CUcontext ctx)
+{
+    return cuCtxPushCurrent_v2(ctx);
+}
+
+CUresult CUDAAPI cuStreamDestroy(CUstream hStream)
+{
+    return cuStreamDestroy_v2(hStream);
+}
+
+CUresult CUDAAPI cuEventDestroy(CUevent hEvent)
+{
+    return cuEventDestroy_v2(hEvent);
+}
+
+#endif
diff --git a/cbits/stubs.h b/cbits/stubs.h
--- a/cbits/stubs.h
+++ b/cbits/stubs.h
@@ -113,6 +113,20 @@
 // CUresult CUDAAPI cuGraphicsResourceGetMappedPointer(CUdeviceptr *pDevPtr, unsigned int *pSize, CUgraphicsResource resource);
 #endif
 
+#if CUDA_VERSION >= 4000
+#undef cuCtxDestroy
+#undef cuCtxPopCurrent
+#undef cuCtxPushCurrent
+#undef cuStreamDestroy
+#undef cuEventDestroy
+
+CUresult CUDAAPI cuCtxDestroy(CUcontext ctx);
+CUresult CUDAAPI cuCtxPopCurrent(CUcontext *pctx);
+CUresult CUDAAPI cuCtxPushCurrent(CUcontext ctx);
+CUresult CUDAAPI cuStreamDestroy(CUstream hStream);
+CUresult CUDAAPI cuEventDestroy(CUevent hEvent);
+#endif
+
 #ifdef __cplusplus
 }
 #endif
diff --git a/configure b/configure
--- a/configure
+++ b/configure
@@ -1,4921 +1,4547 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.61 for Haskell CUDA bindings 0.3.2.
-#
-# Report bugs to <tmcdonell@cse.unsw.edu.au>.
-#
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-# 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
-# This configure script is free software; the Free Software Foundation
-# gives unlimited permission to copy, distribute and modify it.
-## --------------------- ##
-## M4sh Initialization.  ##
-## --------------------- ##
-
-# Be more Bourne compatible
-DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
-  emulate sh
-  NULLCMD=:
-  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
-  # is contrary to our usage.  Disable this feature.
-  alias -g '${1+"$@"}'='"$@"'
-  setopt NO_GLOB_SUBST
-else
-  case `(set -o) 2>/dev/null` in
-  *posix*) set -o posix ;;
-esac
-
-fi
-
-
-
-
-# PATH needs CR
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  echo "#! /bin/sh" >conf$$.sh
-  echo  "exit 0"   >>conf$$.sh
-  chmod +x conf$$.sh
-  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
-    PATH_SEPARATOR=';'
-  else
-    PATH_SEPARATOR=:
-  fi
-  rm -f conf$$.sh
-fi
-
-# Support unset when possible.
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
-  as_unset=unset
-else
-  as_unset=false
-fi
-
-
-# IFS
-# We need space, tab and new line, in precisely that order.  Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-as_nl='
-'
-IFS=" ""	$as_nl"
-
-# Find who we are.  Look in the path if we contain no directory separator.
-case $0 in
-  *[\\/]* ) as_myself=$0 ;;
-  *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
-done
-IFS=$as_save_IFS
-
-     ;;
-esac
-# We did not find ourselves, most probably we were run as `sh COMMAND'
-# in which case we are not to be found in the path.
-if test "x$as_myself" = x; then
-  as_myself=$0
-fi
-if test ! -f "$as_myself"; then
-  echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
-  { (exit 1); exit 1; }
-fi
-
-# Work around bugs in pre-3.0 UWIN ksh.
-for as_var in ENV MAIL MAILPATH
-do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-for as_var in \
-  LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
-  LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
-  LC_TELEPHONE LC_TIME
-do
-  if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
-    eval $as_var=C; export $as_var
-  else
-    ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
-  fi
-done
-
-# Required to use basename.
-if expr a : '\(a\)' >/dev/null 2>&1 &&
-   test "X`expr 00001 : '.*\(...\)'`" = X001; then
-  as_expr=expr
-else
-  as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
-  as_basename=basename
-else
-  as_basename=false
-fi
-
-
-# Name of the executable.
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
-	 X"$0" : 'X\(//\)$' \| \
-	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-echo X/"$0" |
-    sed '/^.*\/\([^/][^/]*\)\/*$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\/\(\/\/\)$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\/\(\/\).*/{
-	    s//\1/
-	    q
-	  }
-	  s/.*/./; q'`
-
-# CDPATH.
-$as_unset CDPATH
-
-
-if test "x$CONFIG_SHELL" = x; then
-  if (eval ":") 2>/dev/null; then
-  as_have_required=yes
-else
-  as_have_required=no
-fi
-
-  if test $as_have_required = yes && 	 (eval ":
-(as_func_return () {
-  (exit \$1)
-}
-as_func_success () {
-  as_func_return 0
-}
-as_func_failure () {
-  as_func_return 1
-}
-as_func_ret_success () {
-  return 0
-}
-as_func_ret_failure () {
-  return 1
-}
-
-exitcode=0
-if as_func_success; then
-  :
-else
-  exitcode=1
-  echo as_func_success failed.
-fi
-
-if as_func_failure; then
-  exitcode=1
-  echo as_func_failure succeeded.
-fi
-
-if as_func_ret_success; then
-  :
-else
-  exitcode=1
-  echo as_func_ret_success failed.
-fi
-
-if as_func_ret_failure; then
-  exitcode=1
-  echo as_func_ret_failure succeeded.
-fi
-
-if ( set x; as_func_ret_success y && test x = \"\$1\" ); then
-  :
-else
-  exitcode=1
-  echo positional parameters were not saved.
-fi
-
-test \$exitcode = 0) || { (exit 1); exit 1; }
-
-(
-  as_lineno_1=\$LINENO
-  as_lineno_2=\$LINENO
-  test \"x\$as_lineno_1\" != \"x\$as_lineno_2\" &&
-  test \"x\`expr \$as_lineno_1 + 1\`\" = \"x\$as_lineno_2\") || { (exit 1); exit 1; }
-") 2> /dev/null; then
-  :
-else
-  as_candidate_shells=
-    as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  case $as_dir in
-	 /*)
-	   for as_base in sh bash ksh sh5; do
-	     as_candidate_shells="$as_candidate_shells $as_dir/$as_base"
-	   done;;
-       esac
-done
-IFS=$as_save_IFS
-
-
-      for as_shell in $as_candidate_shells $SHELL; do
-	 # Try only shells that exist, to save several forks.
-	 if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
-		{ ("$as_shell") 2> /dev/null <<\_ASEOF
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
-  emulate sh
-  NULLCMD=:
-  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
-  # is contrary to our usage.  Disable this feature.
-  alias -g '${1+"$@"}'='"$@"'
-  setopt NO_GLOB_SUBST
-else
-  case `(set -o) 2>/dev/null` in
-  *posix*) set -o posix ;;
-esac
-
-fi
-
-
-:
-_ASEOF
-}; then
-  CONFIG_SHELL=$as_shell
-	       as_have_required=yes
-	       if { "$as_shell" 2> /dev/null <<\_ASEOF
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
-  emulate sh
-  NULLCMD=:
-  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
-  # is contrary to our usage.  Disable this feature.
-  alias -g '${1+"$@"}'='"$@"'
-  setopt NO_GLOB_SUBST
-else
-  case `(set -o) 2>/dev/null` in
-  *posix*) set -o posix ;;
-esac
-
-fi
-
-
-:
-(as_func_return () {
-  (exit $1)
-}
-as_func_success () {
-  as_func_return 0
-}
-as_func_failure () {
-  as_func_return 1
-}
-as_func_ret_success () {
-  return 0
-}
-as_func_ret_failure () {
-  return 1
-}
-
-exitcode=0
-if as_func_success; then
-  :
-else
-  exitcode=1
-  echo as_func_success failed.
-fi
-
-if as_func_failure; then
-  exitcode=1
-  echo as_func_failure succeeded.
-fi
-
-if as_func_ret_success; then
-  :
-else
-  exitcode=1
-  echo as_func_ret_success failed.
-fi
-
-if as_func_ret_failure; then
-  exitcode=1
-  echo as_func_ret_failure succeeded.
-fi
-
-if ( set x; as_func_ret_success y && test x = "$1" ); then
-  :
-else
-  exitcode=1
-  echo positional parameters were not saved.
-fi
-
-test $exitcode = 0) || { (exit 1); exit 1; }
-
-(
-  as_lineno_1=$LINENO
-  as_lineno_2=$LINENO
-  test "x$as_lineno_1" != "x$as_lineno_2" &&
-  test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2") || { (exit 1); exit 1; }
-
-_ASEOF
-}; then
-  break
-fi
-
-fi
-
-      done
-
-      if test "x$CONFIG_SHELL" != x; then
-  for as_var in BASH_ENV ENV
-        do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
-        done
-        export CONFIG_SHELL
-        exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"}
-fi
-
-
-    if test $as_have_required = no; then
-  echo This script requires a shell more modern than all the
-      echo shells that I found on your system.  Please install a
-      echo modern shell, or manually run the script under such a
-      echo shell if you do have one.
-      { (exit 1); exit 1; }
-fi
-
-
-fi
-
-fi
-
-
-
-(eval "as_func_return () {
-  (exit \$1)
-}
-as_func_success () {
-  as_func_return 0
-}
-as_func_failure () {
-  as_func_return 1
-}
-as_func_ret_success () {
-  return 0
-}
-as_func_ret_failure () {
-  return 1
-}
-
-exitcode=0
-if as_func_success; then
-  :
-else
-  exitcode=1
-  echo as_func_success failed.
-fi
-
-if as_func_failure; then
-  exitcode=1
-  echo as_func_failure succeeded.
-fi
-
-if as_func_ret_success; then
-  :
-else
-  exitcode=1
-  echo as_func_ret_success failed.
-fi
-
-if as_func_ret_failure; then
-  exitcode=1
-  echo as_func_ret_failure succeeded.
-fi
-
-if ( set x; as_func_ret_success y && test x = \"\$1\" ); then
-  :
-else
-  exitcode=1
-  echo positional parameters were not saved.
-fi
-
-test \$exitcode = 0") || {
-  echo No shell found that supports shell functions.
-  echo Please tell autoconf@gnu.org about your system,
-  echo including any error possibly output before this
-  echo message
-}
-
-
-
-  as_lineno_1=$LINENO
-  as_lineno_2=$LINENO
-  test "x$as_lineno_1" != "x$as_lineno_2" &&
-  test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || {
-
-  # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
-  # uniformly replaced by the line number.  The first 'sed' inserts a
-  # line-number line after each line using $LINENO; the second 'sed'
-  # does the real work.  The second script uses 'N' to pair each
-  # line-number line with the line containing $LINENO, and appends
-  # trailing '-' during substitution so that $LINENO is not a special
-  # case at line end.
-  # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
-  # scripts with optimization help from Paolo Bonzini.  Blame Lee
-  # E. McMahon (1931-1989) for sed's syntax.  :-)
-  sed -n '
-    p
-    /[$]LINENO/=
-  ' <$as_myself |
-    sed '
-      s/[$]LINENO.*/&-/
-      t lineno
-      b
-      :lineno
-      N
-      :loop
-      s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
-      t loop
-      s/-\n.*//
-    ' >$as_me.lineno &&
-  chmod +x "$as_me.lineno" ||
-    { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
-   { (exit 1); exit 1; }; }
-
-  # Don't try to exec as it changes $[0], causing all sort of problems
-  # (the dirname of $[0] is not the place where we might find the
-  # original and so on.  Autoconf is especially sensitive to this).
-  . "./$as_me.lineno"
-  # Exit status is that of the last command.
-  exit
-}
-
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
-  as_dirname=dirname
-else
-  as_dirname=false
-fi
-
-ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in
--n*)
-  case `echo 'x\c'` in
-  *c*) ECHO_T='	';;	# ECHO_T is single tab character.
-  *)   ECHO_C='\c';;
-  esac;;
-*)
-  ECHO_N='-n';;
-esac
-
-if expr a : '\(a\)' >/dev/null 2>&1 &&
-   test "X`expr 00001 : '.*\(...\)'`" = X001; then
-  as_expr=expr
-else
-  as_expr=false
-fi
-
-rm -f conf$$ conf$$.exe conf$$.file
-if test -d conf$$.dir; then
-  rm -f conf$$.dir/conf$$.file
-else
-  rm -f conf$$.dir
-  mkdir conf$$.dir
-fi
-echo >conf$$.file
-if ln -s conf$$.file conf$$ 2>/dev/null; then
-  as_ln_s='ln -s'
-  # ... but there are two gotchas:
-  # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
-  # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
-  # In both cases, we have to default to `cp -p'.
-  ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
-    as_ln_s='cp -p'
-elif ln conf$$.file conf$$ 2>/dev/null; then
-  as_ln_s=ln
-else
-  as_ln_s='cp -p'
-fi
-rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
-rmdir conf$$.dir 2>/dev/null
-
-if mkdir -p . 2>/dev/null; then
-  as_mkdir_p=:
-else
-  test -d ./-p && rmdir ./-p
-  as_mkdir_p=false
-fi
-
-if test -x / >/dev/null 2>&1; then
-  as_test_x='test -x'
-else
-  if ls -dL / >/dev/null 2>&1; then
-    as_ls_L_option=L
-  else
-    as_ls_L_option=
-  fi
-  as_test_x='
-    eval sh -c '\''
-      if test -d "$1"; then
-        test -d "$1/.";
-      else
-	case $1 in
-        -*)set "./$1";;
-	esac;
-	case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
-	???[sx]*):;;*)false;;esac;fi
-    '\'' sh
-  '
-fi
-as_executable_p=$as_test_x
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
-
-exec 7<&0 </dev/null 6>&1
-
-# Name of the host.
-# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
-# so uname gets run too.
-ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
-
-#
-# Initializations.
-#
-ac_default_prefix=/usr/local
-ac_clean_files=
-ac_config_libobj_dir=.
-LIBOBJS=
-cross_compiling=no
-subdirs=
-MFLAGS=
-MAKEFLAGS=
-SHELL=${CONFIG_SHELL-/bin/sh}
-
-# Identity of this package.
-PACKAGE_NAME='Haskell CUDA bindings'
-PACKAGE_TARNAME='cuda'
-PACKAGE_VERSION='0.3.2'
-PACKAGE_STRING='Haskell CUDA bindings 0.3.2'
-PACKAGE_BUGREPORT='tmcdonell@cse.unsw.edu.au'
-
-ac_unique_file="Foreign/CUDA.hs"
-# Factoring default headers for most tests.
-ac_includes_default="\
-#include <stdio.h>
-#ifdef HAVE_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_STAT_H
-# include <sys/stat.h>
-#endif
-#ifdef STDC_HEADERS
-# include <stdlib.h>
-# include <stddef.h>
-#else
-# ifdef HAVE_STDLIB_H
-#  include <stdlib.h>
-# endif
-#endif
-#ifdef HAVE_STRING_H
-# if !defined STDC_HEADERS && defined HAVE_MEMORY_H
-#  include <memory.h>
-# endif
-# include <string.h>
-#endif
-#ifdef HAVE_STRINGS_H
-# include <strings.h>
-#endif
-#ifdef HAVE_INTTYPES_H
-# include <inttypes.h>
-#endif
-#ifdef HAVE_STDINT_H
-# include <stdint.h>
-#endif
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif"
-
-ac_subst_vars='SHELL
-PATH_SEPARATOR
-PACKAGE_NAME
-PACKAGE_TARNAME
-PACKAGE_VERSION
-PACKAGE_STRING
-PACKAGE_BUGREPORT
-exec_prefix
-prefix
-program_transform_name
-bindir
-sbindir
-libexecdir
-datarootdir
-datadir
-sysconfdir
-sharedstatedir
-localstatedir
-includedir
-oldincludedir
-docdir
-infodir
-htmldir
-dvidir
-pdfdir
-psdir
-libdir
-localedir
-mandir
-DEFS
-ECHO_C
-ECHO_N
-ECHO_T
-LIBS
-build_alias
-host_alias
-target_alias
-CXX
-CXXFLAGS
-LDFLAGS
-CPPFLAGS
-ac_ct_CXX
-EXEEXT
-OBJEXT
-build
-build_cpu
-build_vendor
-build_os
-host
-host_cpu
-host_vendor
-host_os
-target
-target_cpu
-target_vendor
-target_os
-NVCC
-CC
-CFLAGS
-ac_ct_CC
-CPP
-GREP
-EGREP
-cuda_cppflags
-cuda_ldflags
-cuda_c2hsflags
-LIBOBJS
-LTLIBOBJS'
-ac_subst_files=''
-      ac_precious_vars='build_alias
-host_alias
-target_alias
-CXX
-CXXFLAGS
-LDFLAGS
-LIBS
-CPPFLAGS
-CCC
-CC
-CFLAGS
-CPP'
-
-
-# Initialize some variables set by options.
-ac_init_help=
-ac_init_version=false
-# The variables have the same names as the options, with
-# dashes changed to underlines.
-cache_file=/dev/null
-exec_prefix=NONE
-no_create=
-no_recursion=
-prefix=NONE
-program_prefix=NONE
-program_suffix=NONE
-program_transform_name=s,x,x,
-silent=
-site=
-srcdir=
-verbose=
-x_includes=NONE
-x_libraries=NONE
-
-# Installation directory options.
-# These are left unexpanded so users can "make install exec_prefix=/foo"
-# and all the variables that are supposed to be based on exec_prefix
-# by default will actually change.
-# Use braces instead of parens because sh, perl, etc. also accept them.
-# (The list follows the same order as the GNU Coding Standards.)
-bindir='${exec_prefix}/bin'
-sbindir='${exec_prefix}/sbin'
-libexecdir='${exec_prefix}/libexec'
-datarootdir='${prefix}/share'
-datadir='${datarootdir}'
-sysconfdir='${prefix}/etc'
-sharedstatedir='${prefix}/com'
-localstatedir='${prefix}/var'
-includedir='${prefix}/include'
-oldincludedir='/usr/include'
-docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
-infodir='${datarootdir}/info'
-htmldir='${docdir}'
-dvidir='${docdir}'
-pdfdir='${docdir}'
-psdir='${docdir}'
-libdir='${exec_prefix}/lib'
-localedir='${datarootdir}/locale'
-mandir='${datarootdir}/man'
-
-ac_prev=
-ac_dashdash=
-for ac_option
-do
-  # If the previous option needs an argument, assign it.
-  if test -n "$ac_prev"; then
-    eval $ac_prev=\$ac_option
-    ac_prev=
-    continue
-  fi
-
-  case $ac_option in
-  *=*)	ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
-  *)	ac_optarg=yes ;;
-  esac
-
-  # Accept the important Cygnus configure options, so we can diagnose typos.
-
-  case $ac_dashdash$ac_option in
-  --)
-    ac_dashdash=yes ;;
-
-  -bindir | --bindir | --bindi | --bind | --bin | --bi)
-    ac_prev=bindir ;;
-  -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
-    bindir=$ac_optarg ;;
-
-  -build | --build | --buil | --bui | --bu)
-    ac_prev=build_alias ;;
-  -build=* | --build=* | --buil=* | --bui=* | --bu=*)
-    build_alias=$ac_optarg ;;
-
-  -cache-file | --cache-file | --cache-fil | --cache-fi \
-  | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
-    ac_prev=cache_file ;;
-  -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
-  | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
-    cache_file=$ac_optarg ;;
-
-  --config-cache | -C)
-    cache_file=config.cache ;;
-
-  -datadir | --datadir | --datadi | --datad)
-    ac_prev=datadir ;;
-  -datadir=* | --datadir=* | --datadi=* | --datad=*)
-    datadir=$ac_optarg ;;
-
-  -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
-  | --dataroo | --dataro | --datar)
-    ac_prev=datarootdir ;;
-  -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
-  | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
-    datarootdir=$ac_optarg ;;
-
-  -disable-* | --disable-*)
-    ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null &&
-      { echo "$as_me: error: invalid feature name: $ac_feature" >&2
-   { (exit 1); exit 1; }; }
-    ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'`
-    eval enable_$ac_feature=no ;;
-
-  -docdir | --docdir | --docdi | --doc | --do)
-    ac_prev=docdir ;;
-  -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)
-    docdir=$ac_optarg ;;
-
-  -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)
-    ac_prev=dvidir ;;
-  -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)
-    dvidir=$ac_optarg ;;
-
-  -enable-* | --enable-*)
-    ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null &&
-      { echo "$as_me: error: invalid feature name: $ac_feature" >&2
-   { (exit 1); exit 1; }; }
-    ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'`
-    eval enable_$ac_feature=\$ac_optarg ;;
-
-  -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
-  | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
-  | --exec | --exe | --ex)
-    ac_prev=exec_prefix ;;
-  -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
-  | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
-  | --exec=* | --exe=* | --ex=*)
-    exec_prefix=$ac_optarg ;;
-
-  -gas | --gas | --ga | --g)
-    # Obsolete; use --with-gas.
-    with_gas=yes ;;
-
-  -help | --help | --hel | --he | -h)
-    ac_init_help=long ;;
-  -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
-    ac_init_help=recursive ;;
-  -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
-    ac_init_help=short ;;
-
-  -host | --host | --hos | --ho)
-    ac_prev=host_alias ;;
-  -host=* | --host=* | --hos=* | --ho=*)
-    host_alias=$ac_optarg ;;
-
-  -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)
-    ac_prev=htmldir ;;
-  -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \
-  | --ht=*)
-    htmldir=$ac_optarg ;;
-
-  -includedir | --includedir | --includedi | --included | --include \
-  | --includ | --inclu | --incl | --inc)
-    ac_prev=includedir ;;
-  -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
-  | --includ=* | --inclu=* | --incl=* | --inc=*)
-    includedir=$ac_optarg ;;
-
-  -infodir | --infodir | --infodi | --infod | --info | --inf)
-    ac_prev=infodir ;;
-  -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
-    infodir=$ac_optarg ;;
-
-  -libdir | --libdir | --libdi | --libd)
-    ac_prev=libdir ;;
-  -libdir=* | --libdir=* | --libdi=* | --libd=*)
-    libdir=$ac_optarg ;;
-
-  -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
-  | --libexe | --libex | --libe)
-    ac_prev=libexecdir ;;
-  -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
-  | --libexe=* | --libex=* | --libe=*)
-    libexecdir=$ac_optarg ;;
-
-  -localedir | --localedir | --localedi | --localed | --locale)
-    ac_prev=localedir ;;
-  -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
-    localedir=$ac_optarg ;;
-
-  -localstatedir | --localstatedir | --localstatedi | --localstated \
-  | --localstate | --localstat | --localsta | --localst | --locals)
-    ac_prev=localstatedir ;;
-  -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
-  | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)
-    localstatedir=$ac_optarg ;;
-
-  -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
-    ac_prev=mandir ;;
-  -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
-    mandir=$ac_optarg ;;
-
-  -nfp | --nfp | --nf)
-    # Obsolete; use --without-fp.
-    with_fp=no ;;
-
-  -no-create | --no-create | --no-creat | --no-crea | --no-cre \
-  | --no-cr | --no-c | -n)
-    no_create=yes ;;
-
-  -no-recursion | --no-recursion | --no-recursio | --no-recursi \
-  | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
-    no_recursion=yes ;;
-
-  -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
-  | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
-  | --oldin | --oldi | --old | --ol | --o)
-    ac_prev=oldincludedir ;;
-  -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
-  | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
-  | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
-    oldincludedir=$ac_optarg ;;
-
-  -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
-    ac_prev=prefix ;;
-  -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
-    prefix=$ac_optarg ;;
-
-  -program-prefix | --program-prefix | --program-prefi | --program-pref \
-  | --program-pre | --program-pr | --program-p)
-    ac_prev=program_prefix ;;
-  -program-prefix=* | --program-prefix=* | --program-prefi=* \
-  | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
-    program_prefix=$ac_optarg ;;
-
-  -program-suffix | --program-suffix | --program-suffi | --program-suff \
-  | --program-suf | --program-su | --program-s)
-    ac_prev=program_suffix ;;
-  -program-suffix=* | --program-suffix=* | --program-suffi=* \
-  | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
-    program_suffix=$ac_optarg ;;
-
-  -program-transform-name | --program-transform-name \
-  | --program-transform-nam | --program-transform-na \
-  | --program-transform-n | --program-transform- \
-  | --program-transform | --program-transfor \
-  | --program-transfo | --program-transf \
-  | --program-trans | --program-tran \
-  | --progr-tra | --program-tr | --program-t)
-    ac_prev=program_transform_name ;;
-  -program-transform-name=* | --program-transform-name=* \
-  | --program-transform-nam=* | --program-transform-na=* \
-  | --program-transform-n=* | --program-transform-=* \
-  | --program-transform=* | --program-transfor=* \
-  | --program-transfo=* | --program-transf=* \
-  | --program-trans=* | --program-tran=* \
-  | --progr-tra=* | --program-tr=* | --program-t=*)
-    program_transform_name=$ac_optarg ;;
-
-  -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)
-    ac_prev=pdfdir ;;
-  -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)
-    pdfdir=$ac_optarg ;;
-
-  -psdir | --psdir | --psdi | --psd | --ps)
-    ac_prev=psdir ;;
-  -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)
-    psdir=$ac_optarg ;;
-
-  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
-  | -silent | --silent | --silen | --sile | --sil)
-    silent=yes ;;
-
-  -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
-    ac_prev=sbindir ;;
-  -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
-  | --sbi=* | --sb=*)
-    sbindir=$ac_optarg ;;
-
-  -sharedstatedir | --sharedstatedir | --sharedstatedi \
-  | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
-  | --sharedst | --shareds | --shared | --share | --shar \
-  | --sha | --sh)
-    ac_prev=sharedstatedir ;;
-  -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
-  | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
-  | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
-  | --sha=* | --sh=*)
-    sharedstatedir=$ac_optarg ;;
-
-  -site | --site | --sit)
-    ac_prev=site ;;
-  -site=* | --site=* | --sit=*)
-    site=$ac_optarg ;;
-
-  -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
-    ac_prev=srcdir ;;
-  -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
-    srcdir=$ac_optarg ;;
-
-  -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
-  | --syscon | --sysco | --sysc | --sys | --sy)
-    ac_prev=sysconfdir ;;
-  -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
-  | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
-    sysconfdir=$ac_optarg ;;
-
-  -target | --target | --targe | --targ | --tar | --ta | --t)
-    ac_prev=target_alias ;;
-  -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
-    target_alias=$ac_optarg ;;
-
-  -v | -verbose | --verbose | --verbos | --verbo | --verb)
-    verbose=yes ;;
-
-  -version | --version | --versio | --versi | --vers | -V)
-    ac_init_version=: ;;
-
-  -with-* | --with-*)
-    ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null &&
-      { echo "$as_me: error: invalid package name: $ac_package" >&2
-   { (exit 1); exit 1; }; }
-    ac_package=`echo $ac_package | sed 's/[-.]/_/g'`
-    eval with_$ac_package=\$ac_optarg ;;
-
-  -without-* | --without-*)
-    ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null &&
-      { echo "$as_me: error: invalid package name: $ac_package" >&2
-   { (exit 1); exit 1; }; }
-    ac_package=`echo $ac_package | sed 's/[-.]/_/g'`
-    eval with_$ac_package=no ;;
-
-  --x)
-    # Obsolete; use --with-x.
-    with_x=yes ;;
-
-  -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
-  | --x-incl | --x-inc | --x-in | --x-i)
-    ac_prev=x_includes ;;
-  -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
-  | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
-    x_includes=$ac_optarg ;;
-
-  -x-libraries | --x-libraries | --x-librarie | --x-librari \
-  | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
-    ac_prev=x_libraries ;;
-  -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
-  | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
-    x_libraries=$ac_optarg ;;
-
-  -*) { echo "$as_me: error: unrecognized option: $ac_option
-Try \`$0 --help' for more information." >&2
-   { (exit 1); exit 1; }; }
-    ;;
-
-  *=*)
-    ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
-      { echo "$as_me: error: invalid variable name: $ac_envvar" >&2
-   { (exit 1); exit 1; }; }
-    eval $ac_envvar=\$ac_optarg
-    export $ac_envvar ;;
-
-  *)
-    # FIXME: should be removed in autoconf 3.0.
-    echo "$as_me: WARNING: you should use --build, --host, --target" >&2
-    expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
-      echo "$as_me: WARNING: invalid host type: $ac_option" >&2
-    : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
-    ;;
-
-  esac
-done
-
-if test -n "$ac_prev"; then
-  ac_option=--`echo $ac_prev | sed 's/_/-/g'`
-  { echo "$as_me: error: missing argument to $ac_option" >&2
-   { (exit 1); exit 1; }; }
-fi
-
-# Be sure to have absolute directory names.
-for ac_var in	exec_prefix prefix bindir sbindir libexecdir datarootdir \
-		datadir sysconfdir sharedstatedir localstatedir includedir \
-		oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
-		libdir localedir mandir
-do
-  eval ac_val=\$$ac_var
-  case $ac_val in
-    [\\/$]* | ?:[\\/]* )  continue;;
-    NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
-  esac
-  { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
-   { (exit 1); exit 1; }; }
-done
-
-# There might be people who depend on the old broken behavior: `$host'
-# used to hold the argument of --host etc.
-# FIXME: To remove some day.
-build=$build_alias
-host=$host_alias
-target=$target_alias
-
-# FIXME: To remove some day.
-if test "x$host_alias" != x; then
-  if test "x$build_alias" = x; then
-    cross_compiling=maybe
-    echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
-    If a cross compiler is detected then cross compile mode will be used." >&2
-  elif test "x$build_alias" != "x$host_alias"; then
-    cross_compiling=yes
-  fi
-fi
-
-ac_tool_prefix=
-test -n "$host_alias" && ac_tool_prefix=$host_alias-
-
-test "$silent" = yes && exec 6>/dev/null
-
-
-ac_pwd=`pwd` && test -n "$ac_pwd" &&
-ac_ls_di=`ls -di .` &&
-ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
-  { echo "$as_me: error: Working directory cannot be determined" >&2
-   { (exit 1); exit 1; }; }
-test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
-  { echo "$as_me: error: pwd does not report name of working directory" >&2
-   { (exit 1); exit 1; }; }
-
-
-# Find the source files, if location was not specified.
-if test -z "$srcdir"; then
-  ac_srcdir_defaulted=yes
-  # Try the directory containing this script, then the parent directory.
-  ac_confdir=`$as_dirname -- "$0" ||
-$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-	 X"$0" : 'X\(//\)[^/]' \| \
-	 X"$0" : 'X\(//\)$' \| \
-	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-echo X"$0" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\/\)[^/].*/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\/\)$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\).*/{
-	    s//\1/
-	    q
-	  }
-	  s/.*/./; q'`
-  srcdir=$ac_confdir
-  if test ! -r "$srcdir/$ac_unique_file"; then
-    srcdir=..
-  fi
-else
-  ac_srcdir_defaulted=no
-fi
-if test ! -r "$srcdir/$ac_unique_file"; then
-  test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
-  { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2
-   { (exit 1); exit 1; }; }
-fi
-ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
-ac_abs_confdir=`(
-	cd "$srcdir" && test -r "./$ac_unique_file" || { echo "$as_me: error: $ac_msg" >&2
-   { (exit 1); exit 1; }; }
-	pwd)`
-# When building in place, set srcdir=.
-if test "$ac_abs_confdir" = "$ac_pwd"; then
-  srcdir=.
-fi
-# Remove unnecessary trailing slashes from srcdir.
-# Double slashes in file names in object file debugging info
-# mess up M-x gdb in Emacs.
-case $srcdir in
-*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;
-esac
-for ac_var in $ac_precious_vars; do
-  eval ac_env_${ac_var}_set=\${${ac_var}+set}
-  eval ac_env_${ac_var}_value=\$${ac_var}
-  eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}
-  eval ac_cv_env_${ac_var}_value=\$${ac_var}
-done
-
-#
-# Report the --help message.
-#
-if test "$ac_init_help" = "long"; then
-  # Omit some internal or obsolete options to make the list less imposing.
-  # This message is too long to be a string in the A/UX 3.1 sh.
-  cat <<_ACEOF
-\`configure' configures Haskell CUDA bindings 0.3.2 to adapt to many kinds of systems.
-
-Usage: $0 [OPTION]... [VAR=VALUE]...
-
-To assign environment variables (e.g., CC, CFLAGS...), specify them as
-VAR=VALUE.  See below for descriptions of some of the useful variables.
-
-Defaults for the options are specified in brackets.
-
-Configuration:
-  -h, --help              display this help and exit
-      --help=short        display options specific to this package
-      --help=recursive    display the short help of all the included packages
-  -V, --version           display version information and exit
-  -q, --quiet, --silent   do not print \`checking...' messages
-      --cache-file=FILE   cache test results in FILE [disabled]
-  -C, --config-cache      alias for \`--cache-file=config.cache'
-  -n, --no-create         do not create output files
-      --srcdir=DIR        find the sources in DIR [configure dir or \`..']
-
-Installation directories:
-  --prefix=PREFIX         install architecture-independent files in PREFIX
-			  [$ac_default_prefix]
-  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
-			  [PREFIX]
-
-By default, \`make install' will install all the files in
-\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc.  You can specify
-an installation prefix other than \`$ac_default_prefix' using \`--prefix',
-for instance \`--prefix=\$HOME'.
-
-For better control, use the options below.
-
-Fine tuning of the installation directories:
-  --bindir=DIR           user executables [EPREFIX/bin]
-  --sbindir=DIR          system admin executables [EPREFIX/sbin]
-  --libexecdir=DIR       program executables [EPREFIX/libexec]
-  --sysconfdir=DIR       read-only single-machine data [PREFIX/etc]
-  --sharedstatedir=DIR   modifiable architecture-independent data [PREFIX/com]
-  --localstatedir=DIR    modifiable single-machine data [PREFIX/var]
-  --libdir=DIR           object code libraries [EPREFIX/lib]
-  --includedir=DIR       C header files [PREFIX/include]
-  --oldincludedir=DIR    C header files for non-gcc [/usr/include]
-  --datarootdir=DIR      read-only arch.-independent data root [PREFIX/share]
-  --datadir=DIR          read-only architecture-independent data [DATAROOTDIR]
-  --infodir=DIR          info documentation [DATAROOTDIR/info]
-  --localedir=DIR        locale-dependent data [DATAROOTDIR/locale]
-  --mandir=DIR           man documentation [DATAROOTDIR/man]
-  --docdir=DIR           documentation root [DATAROOTDIR/doc/cuda]
-  --htmldir=DIR          html documentation [DOCDIR]
-  --dvidir=DIR           dvi documentation [DOCDIR]
-  --pdfdir=DIR           pdf documentation [DOCDIR]
-  --psdir=DIR            ps documentation [DOCDIR]
-_ACEOF
-
-  cat <<\_ACEOF
-
-System types:
-  --build=BUILD     configure for building on BUILD [guessed]
-  --host=HOST       cross-compile to build programs to run on HOST [BUILD]
-  --target=TARGET   configure for building compilers for TARGET [HOST]
-_ACEOF
-fi
-
-if test -n "$ac_init_help"; then
-  case $ac_init_help in
-     short | recursive ) echo "Configuration of Haskell CUDA bindings 0.3.2:";;
-   esac
-  cat <<\_ACEOF
-
-Some influential environment variables:
-  CXX         C++ compiler command
-  CXXFLAGS    C++ compiler flags
-  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
-              nonstandard directory <lib dir>
-  LIBS        libraries to pass to the linker, e.g. -l<library>
-  CPPFLAGS    C/C++/Objective C preprocessor flags, e.g. -I<include dir> if
-              you have headers in a nonstandard directory <include dir>
-  CC          C compiler command
-  CFLAGS      C compiler flags
-  CPP         C preprocessor
-
-Use these variables to override the choices made by `configure' or to help
-it to find libraries and programs with nonstandard names/locations.
-
-Report bugs to <tmcdonell@cse.unsw.edu.au>.
-_ACEOF
-ac_status=$?
-fi
-
-if test "$ac_init_help" = "recursive"; then
-  # If there are subdirs, report their specific --help.
-  for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
-    test -d "$ac_dir" || continue
-    ac_builddir=.
-
-case "$ac_dir" in
-.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
-*)
-  ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
-  # A ".." for each directory in $ac_dir_suffix.
-  ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'`
-  case $ac_top_builddir_sub in
-  "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
-  *)  ac_top_build_prefix=$ac_top_builddir_sub/ ;;
-  esac ;;
-esac
-ac_abs_top_builddir=$ac_pwd
-ac_abs_builddir=$ac_pwd$ac_dir_suffix
-# for backward compatibility:
-ac_top_builddir=$ac_top_build_prefix
-
-case $srcdir in
-  .)  # We are building in place.
-    ac_srcdir=.
-    ac_top_srcdir=$ac_top_builddir_sub
-    ac_abs_top_srcdir=$ac_pwd ;;
-  [\\/]* | ?:[\\/]* )  # Absolute name.
-    ac_srcdir=$srcdir$ac_dir_suffix;
-    ac_top_srcdir=$srcdir
-    ac_abs_top_srcdir=$srcdir ;;
-  *) # Relative name.
-    ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
-    ac_top_srcdir=$ac_top_build_prefix$srcdir
-    ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
-esac
-ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
-
-    cd "$ac_dir" || { ac_status=$?; continue; }
-    # Check for guested configure.
-    if test -f "$ac_srcdir/configure.gnu"; then
-      echo &&
-      $SHELL "$ac_srcdir/configure.gnu" --help=recursive
-    elif test -f "$ac_srcdir/configure"; then
-      echo &&
-      $SHELL "$ac_srcdir/configure" --help=recursive
-    else
-      echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
-    fi || ac_status=$?
-    cd "$ac_pwd" || { ac_status=$?; break; }
-  done
-fi
-
-test -n "$ac_init_help" && exit $ac_status
-if $ac_init_version; then
-  cat <<\_ACEOF
-Haskell CUDA bindings configure 0.3.2
-generated by GNU Autoconf 2.61
-
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
-This configure script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it.
-_ACEOF
-  exit
-fi
-cat >config.log <<_ACEOF
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-
-It was created by Haskell CUDA bindings $as_me 0.3.2, which was
-generated by GNU Autoconf 2.61.  Invocation command line was
-
-  $ $0 $@
-
-_ACEOF
-exec 5>>config.log
-{
-cat <<_ASUNAME
-## --------- ##
-## Platform. ##
-## --------- ##
-
-hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
-/bin/uname -X     = `(/bin/uname -X) 2>/dev/null     || echo unknown`
-
-/bin/arch              = `(/bin/arch) 2>/dev/null              || echo unknown`
-/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null       || echo unknown`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
-/usr/bin/hostinfo      = `(/usr/bin/hostinfo) 2>/dev/null      || echo unknown`
-/bin/machine           = `(/bin/machine) 2>/dev/null           || echo unknown`
-/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null       || echo unknown`
-/bin/universe          = `(/bin/universe) 2>/dev/null          || echo unknown`
-
-_ASUNAME
-
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  echo "PATH: $as_dir"
-done
-IFS=$as_save_IFS
-
-} >&5
-
-cat >&5 <<_ACEOF
-
-
-## ----------- ##
-## Core tests. ##
-## ----------- ##
-
-_ACEOF
-
-
-# Keep a trace of the command line.
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Strip out --silent because we don't want to record it for future runs.
-# Also quote any args containing shell meta-characters.
-# Make two passes to allow for proper duplicate-argument suppression.
-ac_configure_args=
-ac_configure_args0=
-ac_configure_args1=
-ac_must_keep_next=false
-for ac_pass in 1 2
-do
-  for ac_arg
-  do
-    case $ac_arg in
-    -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
-    -q | -quiet | --quiet | --quie | --qui | --qu | --q \
-    | -silent | --silent | --silen | --sile | --sil)
-      continue ;;
-    *\'*)
-      ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
-    esac
-    case $ac_pass in
-    1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;;
-    2)
-      ac_configure_args1="$ac_configure_args1 '$ac_arg'"
-      if test $ac_must_keep_next = true; then
-	ac_must_keep_next=false # Got value, back to normal.
-      else
-	case $ac_arg in
-	  *=* | --config-cache | -C | -disable-* | --disable-* \
-	  | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
-	  | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
-	  | -with-* | --with-* | -without-* | --without-* | --x)
-	    case "$ac_configure_args0 " in
-	      "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
-	    esac
-	    ;;
-	  -* ) ac_must_keep_next=true ;;
-	esac
-      fi
-      ac_configure_args="$ac_configure_args '$ac_arg'"
-      ;;
-    esac
-  done
-done
-$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; }
-$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; }
-
-# When interrupted or exit'd, cleanup temporary files, and complete
-# config.log.  We remove comments because anyway the quotes in there
-# would cause problems or look ugly.
-# WARNING: Use '\'' to represent an apostrophe within the trap.
-# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
-trap 'exit_status=$?
-  # Save into config.log some information that might help in debugging.
-  {
-    echo
-
-    cat <<\_ASBOX
-## ---------------- ##
-## Cache variables. ##
-## ---------------- ##
-_ASBOX
-    echo
-    # The following way of writing the cache mishandles newlines in values,
-(
-  for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do
-    eval ac_val=\$$ac_var
-    case $ac_val in #(
-    *${as_nl}*)
-      case $ac_var in #(
-      *_cv_*) { echo "$as_me:$LINENO: WARNING: Cache variable $ac_var contains a newline." >&5
-echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;;
-      esac
-      case $ac_var in #(
-      _ | IFS | as_nl) ;; #(
-      *) $as_unset $ac_var ;;
-      esac ;;
-    esac
-  done
-  (set) 2>&1 |
-    case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(
-    *${as_nl}ac_space=\ *)
-      sed -n \
-	"s/'\''/'\''\\\\'\'''\''/g;
-	  s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"
-      ;; #(
-    *)
-      sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
-      ;;
-    esac |
-    sort
-)
-    echo
-
-    cat <<\_ASBOX
-## ----------------- ##
-## Output variables. ##
-## ----------------- ##
-_ASBOX
-    echo
-    for ac_var in $ac_subst_vars
-    do
-      eval ac_val=\$$ac_var
-      case $ac_val in
-      *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
-      esac
-      echo "$ac_var='\''$ac_val'\''"
-    done | sort
-    echo
-
-    if test -n "$ac_subst_files"; then
-      cat <<\_ASBOX
-## ------------------- ##
-## File substitutions. ##
-## ------------------- ##
-_ASBOX
-      echo
-      for ac_var in $ac_subst_files
-      do
-	eval ac_val=\$$ac_var
-	case $ac_val in
-	*\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
-	esac
-	echo "$ac_var='\''$ac_val'\''"
-      done | sort
-      echo
-    fi
-
-    if test -s confdefs.h; then
-      cat <<\_ASBOX
-## ----------- ##
-## confdefs.h. ##
-## ----------- ##
-_ASBOX
-      echo
-      cat confdefs.h
-      echo
-    fi
-    test "$ac_signal" != 0 &&
-      echo "$as_me: caught signal $ac_signal"
-    echo "$as_me: exit $exit_status"
-  } >&5
-  rm -f core *.core core.conftest.* &&
-    rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
-    exit $exit_status
-' 0
-for ac_signal in 1 2 13 15; do
-  trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
-done
-ac_signal=0
-
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -f -r conftest* confdefs.h
-
-# Predefined preprocessor variables.
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_NAME "$PACKAGE_NAME"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_VERSION "$PACKAGE_VERSION"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_STRING "$PACKAGE_STRING"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
-_ACEOF
-
-
-# Let the site file select an alternate cache file if it wants to.
-# Prefer explicitly selected file to automatically selected ones.
-if test -n "$CONFIG_SITE"; then
-  set x "$CONFIG_SITE"
-elif test "x$prefix" != xNONE; then
-  set x "$prefix/share/config.site" "$prefix/etc/config.site"
-else
-  set x "$ac_default_prefix/share/config.site" \
-	"$ac_default_prefix/etc/config.site"
-fi
-shift
-for ac_site_file
-do
-  if test -r "$ac_site_file"; then
-    { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5
-echo "$as_me: loading site script $ac_site_file" >&6;}
-    sed 's/^/| /' "$ac_site_file" >&5
-    . "$ac_site_file"
-  fi
-done
-
-if test -r "$cache_file"; then
-  # Some versions of bash will fail to source /dev/null (special
-  # files actually), so we avoid doing that.
-  if test -f "$cache_file"; then
-    { echo "$as_me:$LINENO: loading cache $cache_file" >&5
-echo "$as_me: loading cache $cache_file" >&6;}
-    case $cache_file in
-      [\\/]* | ?:[\\/]* ) . "$cache_file";;
-      *)                      . "./$cache_file";;
-    esac
-  fi
-else
-  { echo "$as_me:$LINENO: creating cache $cache_file" >&5
-echo "$as_me: creating cache $cache_file" >&6;}
-  >$cache_file
-fi
-
-# Check that the precious variables saved in the cache have kept the same
-# value.
-ac_cache_corrupted=false
-for ac_var in $ac_precious_vars; do
-  eval ac_old_set=\$ac_cv_env_${ac_var}_set
-  eval ac_new_set=\$ac_env_${ac_var}_set
-  eval ac_old_val=\$ac_cv_env_${ac_var}_value
-  eval ac_new_val=\$ac_env_${ac_var}_value
-  case $ac_old_set,$ac_new_set in
-    set,)
-      { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
-echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
-      ac_cache_corrupted=: ;;
-    ,set)
-      { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5
-echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
-      ac_cache_corrupted=: ;;
-    ,);;
-    *)
-      if test "x$ac_old_val" != "x$ac_new_val"; then
-	{ echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5
-echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
-	{ echo "$as_me:$LINENO:   former value:  $ac_old_val" >&5
-echo "$as_me:   former value:  $ac_old_val" >&2;}
-	{ echo "$as_me:$LINENO:   current value: $ac_new_val" >&5
-echo "$as_me:   current value: $ac_new_val" >&2;}
-	ac_cache_corrupted=:
-      fi;;
-  esac
-  # Pass precious variables to config.status.
-  if test "$ac_new_set" = set; then
-    case $ac_new_val in
-    *\'*) ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
-    *) ac_arg=$ac_var=$ac_new_val ;;
-    esac
-    case " $ac_configure_args " in
-      *" '$ac_arg' "*) ;; # Avoid dups.  Use of quotes ensures accuracy.
-      *) ac_configure_args="$ac_configure_args '$ac_arg'" ;;
-    esac
-  fi
-done
-if $ac_cache_corrupted; then
-  { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5
-echo "$as_me: error: changes in the environment can compromise the build" >&2;}
-  { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
-echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-
-ac_config_files="$ac_config_files cuda.buildinfo"
-
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-if test -z "$CXX"; then
-  if test -n "$CCC"; then
-    CXX=$CCC
-  else
-    if test -n "$ac_tool_prefix"; then
-  for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC
-  do
-    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
-if test "${ac_cv_prog_CXX+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -n "$CXX"; then
-  ac_cv_prog_CXX="$CXX" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_CXX="$ac_tool_prefix$ac_prog"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-IFS=$as_save_IFS
-
-fi
-fi
-CXX=$ac_cv_prog_CXX
-if test -n "$CXX"; then
-  { echo "$as_me:$LINENO: result: $CXX" >&5
-echo "${ECHO_T}$CXX" >&6; }
-else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
-
-
-    test -n "$CXX" && break
-  done
-fi
-if test -z "$CXX"; then
-  ac_ct_CXX=$CXX
-  for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC
-do
-  # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
-if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -n "$ac_ct_CXX"; then
-  ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_CXX="$ac_prog"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CXX=$ac_cv_prog_ac_ct_CXX
-if test -n "$ac_ct_CXX"; then
-  { echo "$as_me:$LINENO: result: $ac_ct_CXX" >&5
-echo "${ECHO_T}$ac_ct_CXX" >&6; }
-else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
-
-
-  test -n "$ac_ct_CXX" && break
-done
-
-  if test "x$ac_ct_CXX" = x; then
-    CXX="g++"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools
-whose name does not start with the host triplet.  If you think this
-configuration is useful to you, please write to autoconf@gnu.org." >&5
-echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools
-whose name does not start with the host triplet.  If you think this
-configuration is useful to you, please write to autoconf@gnu.org." >&2;}
-ac_tool_warned=yes ;;
-esac
-    CXX=$ac_ct_CXX
-  fi
-fi
-
-  fi
-fi
-# Provide some information about the compiler.
-echo "$as_me:$LINENO: checking for C++ compiler version" >&5
-ac_compiler=`set X $ac_compile; echo $2`
-{ (ac_try="$ac_compiler --version >&5"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compiler --version >&5") 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }
-{ (ac_try="$ac_compiler -v >&5"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compiler -v >&5") 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }
-{ (ac_try="$ac_compiler -V >&5"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compiler -V >&5") 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }
-
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files a.out a.exe b.out"
-# Try to create an executable without -o first, disregard a.out.
-# It will help us diagnose broken compilers, and finding out an intuition
-# of exeext.
-{ echo "$as_me:$LINENO: checking for C++ compiler default output file name" >&5
-echo $ECHO_N "checking for C++ compiler default output file name... $ECHO_C" >&6; }
-ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
-#
-# List of possible output files, starting from the most likely.
-# The algorithm is not robust to junk in `.', hence go to wildcards (a.*)
-# only as a last resort.  b.out is created by i960 compilers.
-ac_files='a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out'
-#
-# The IRIX 6 linker writes into existing files which may not be
-# executable, retaining their permissions.  Remove them first so a
-# subsequent execution test works.
-ac_rmfiles=
-for ac_file in $ac_files
-do
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;;
-    * ) ac_rmfiles="$ac_rmfiles $ac_file";;
-  esac
-done
-rm -f $ac_rmfiles
-
-if { (ac_try="$ac_link_default"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_link_default") 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
-  # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
-# So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
-# in a Makefile.  We should not override ac_cv_exeext if it was cached,
-# so that the user can short-circuit this test for compilers unknown to
-# Autoconf.
-for ac_file in $ac_files ''
-do
-  test -f "$ac_file" || continue
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj )
-	;;
-    [ab].out )
-	# We found the default executable, but exeext='' is most
-	# certainly right.
-	break;;
-    *.* )
-        if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
-	then :; else
-	   ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
-	fi
-	# We set ac_cv_exeext here because the later test for it is not
-	# safe: cross compilers may not add the suffix if given an `-o'
-	# argument, so we may need to know it at that point already.
-	# Even if this section looks crufty: it has the advantage of
-	# actually working.
-	break;;
-    * )
-	break;;
-  esac
-done
-test "$ac_cv_exeext" = no && ac_cv_exeext=
-
-else
-  ac_file=''
-fi
-
-{ echo "$as_me:$LINENO: result: $ac_file" >&5
-echo "${ECHO_T}$ac_file" >&6; }
-if test -z "$ac_file"; then
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { echo "$as_me:$LINENO: error: C++ compiler cannot create executables
-See \`config.log' for more details." >&5
-echo "$as_me: error: C++ compiler cannot create executables
-See \`config.log' for more details." >&2;}
-   { (exit 77); exit 77; }; }
-fi
-
-ac_exeext=$ac_cv_exeext
-
-# Check that the compiler produces executables we can run.  If not, either
-# the compiler is broken, or we cross compile.
-{ echo "$as_me:$LINENO: checking whether the C++ compiler works" >&5
-echo $ECHO_N "checking whether the C++ compiler works... $ECHO_C" >&6; }
-# FIXME: These cross compiler hacks should be removed for Autoconf 3.0
-# If not cross compiling, check that we can run a simple program.
-if test "$cross_compiling" != yes; then
-  if { ac_try='./$ac_file'
-  { (case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; }; then
-    cross_compiling=no
-  else
-    if test "$cross_compiling" = maybe; then
-	cross_compiling=yes
-    else
-	{ { echo "$as_me:$LINENO: error: cannot run C++ compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot run C++ compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-    fi
-  fi
-fi
-{ echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
-
-rm -f a.out a.exe conftest$ac_cv_exeext b.out
-ac_clean_files=$ac_clean_files_save
-# Check that the compiler produces executables we can run.  If not, either
-# the compiler is broken, or we cross compile.
-{ echo "$as_me:$LINENO: checking whether we are cross compiling" >&5
-echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6; }
-{ echo "$as_me:$LINENO: result: $cross_compiling" >&5
-echo "${ECHO_T}$cross_compiling" >&6; }
-
-{ echo "$as_me:$LINENO: checking for suffix of executables" >&5
-echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6; }
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_link") 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
-  # If both `conftest.exe' and `conftest' are `present' (well, observable)
-# catch `conftest.exe'.  For instance with Cygwin, `ls conftest' will
-# work properly (i.e., refer to `conftest.exe'), while it won't with
-# `rm'.
-for ac_file in conftest.exe conftest conftest.*; do
-  test -f "$ac_file" || continue
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;;
-    *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
-	  break;;
-    * ) break;;
-  esac
-done
-else
-  { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-rm -f conftest$ac_cv_exeext
-{ echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5
-echo "${ECHO_T}$ac_cv_exeext" >&6; }
-
-rm -f conftest.$ac_ext
-EXEEXT=$ac_cv_exeext
-ac_exeext=$EXEEXT
-{ echo "$as_me:$LINENO: checking for suffix of object files" >&5
-echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6; }
-if test "${ac_cv_objext+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.o conftest.obj
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
-  for ac_file in conftest.o conftest.obj conftest.*; do
-  test -f "$ac_file" || continue;
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf ) ;;
-    *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
-       break;;
-  esac
-done
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute suffix of object files: cannot compile
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-rm -f conftest.$ac_cv_objext conftest.$ac_ext
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_objext" >&5
-echo "${ECHO_T}$ac_cv_objext" >&6; }
-OBJEXT=$ac_cv_objext
-ac_objext=$OBJEXT
-{ echo "$as_me:$LINENO: checking whether we are using the GNU C++ compiler" >&5
-echo $ECHO_N "checking whether we are using the GNU C++ compiler... $ECHO_C" >&6; }
-if test "${ac_cv_cxx_compiler_gnu+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-int
-main ()
-{
-#ifndef __GNUC__
-       choke me
-#endif
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_cxx_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_compiler_gnu=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_compiler_gnu=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-ac_cv_cxx_compiler_gnu=$ac_compiler_gnu
-
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_cxx_compiler_gnu" >&5
-echo "${ECHO_T}$ac_cv_cxx_compiler_gnu" >&6; }
-GXX=`test $ac_compiler_gnu = yes && echo yes`
-ac_test_CXXFLAGS=${CXXFLAGS+set}
-ac_save_CXXFLAGS=$CXXFLAGS
-{ echo "$as_me:$LINENO: checking whether $CXX accepts -g" >&5
-echo $ECHO_N "checking whether $CXX accepts -g... $ECHO_C" >&6; }
-if test "${ac_cv_prog_cxx_g+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_save_cxx_werror_flag=$ac_cxx_werror_flag
-   ac_cxx_werror_flag=yes
-   ac_cv_prog_cxx_g=no
-   CXXFLAGS="-g"
-   cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_cxx_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_prog_cxx_g=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	CXXFLAGS=""
-      cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_cxx_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  :
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_cxx_werror_flag=$ac_save_cxx_werror_flag
-	 CXXFLAGS="-g"
-	 cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_cxx_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_prog_cxx_g=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-   ac_cxx_werror_flag=$ac_save_cxx_werror_flag
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_prog_cxx_g" >&5
-echo "${ECHO_T}$ac_cv_prog_cxx_g" >&6; }
-if test "$ac_test_CXXFLAGS" = set; then
-  CXXFLAGS=$ac_save_CXXFLAGS
-elif test $ac_cv_prog_cxx_g = yes; then
-  if test "$GXX" = yes; then
-    CXXFLAGS="-g -O2"
-  else
-    CXXFLAGS="-g"
-  fi
-else
-  if test "$GXX" = yes; then
-    CXXFLAGS="-O2"
-  else
-    CXXFLAGS=
-  fi
-fi
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-# Determine the target platform
-#
-ac_aux_dir=
-for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
-  if test -f "$ac_dir/install-sh"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/install-sh -c"
-    break
-  elif test -f "$ac_dir/install.sh"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/install.sh -c"
-    break
-  elif test -f "$ac_dir/shtool"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/shtool install -c"
-    break
-  fi
-done
-if test -z "$ac_aux_dir"; then
-  { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" >&5
-echo "$as_me: error: cannot find install-sh or install.sh in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-# These three variables are undocumented and unsupported,
-# and are intended to be withdrawn in a future Autoconf release.
-# They can cause serious problems if a builder's source tree is in a directory
-# whose full name contains unusual characters.
-ac_config_guess="$SHELL $ac_aux_dir/config.guess"  # Please don't use this var.
-ac_config_sub="$SHELL $ac_aux_dir/config.sub"  # Please don't use this var.
-ac_configure="$SHELL $ac_aux_dir/configure"  # Please don't use this var.
-
-
-# Make sure we can run config.sub.
-$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
-  { { echo "$as_me:$LINENO: error: cannot run $SHELL $ac_aux_dir/config.sub" >&5
-echo "$as_me: error: cannot run $SHELL $ac_aux_dir/config.sub" >&2;}
-   { (exit 1); exit 1; }; }
-
-{ echo "$as_me:$LINENO: checking build system type" >&5
-echo $ECHO_N "checking build system type... $ECHO_C" >&6; }
-if test "${ac_cv_build+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_build_alias=$build_alias
-test "x$ac_build_alias" = x &&
-  ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
-test "x$ac_build_alias" = x &&
-  { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5
-echo "$as_me: error: cannot guess build type; you must specify one" >&2;}
-   { (exit 1); exit 1; }; }
-ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
-  { { echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&5
-echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&2;}
-   { (exit 1); exit 1; }; }
-
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_build" >&5
-echo "${ECHO_T}$ac_cv_build" >&6; }
-case $ac_cv_build in
-*-*-*) ;;
-*) { { echo "$as_me:$LINENO: error: invalid value of canonical build" >&5
-echo "$as_me: error: invalid value of canonical build" >&2;}
-   { (exit 1); exit 1; }; };;
-esac
-build=$ac_cv_build
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_build
-shift
-build_cpu=$1
-build_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-build_os=$*
-IFS=$ac_save_IFS
-case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
-
-
-{ echo "$as_me:$LINENO: checking host system type" >&5
-echo $ECHO_N "checking host system type... $ECHO_C" >&6; }
-if test "${ac_cv_host+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "x$host_alias" = x; then
-  ac_cv_host=$ac_cv_build
-else
-  ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
-    { { echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&5
-echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_host" >&5
-echo "${ECHO_T}$ac_cv_host" >&6; }
-case $ac_cv_host in
-*-*-*) ;;
-*) { { echo "$as_me:$LINENO: error: invalid value of canonical host" >&5
-echo "$as_me: error: invalid value of canonical host" >&2;}
-   { (exit 1); exit 1; }; };;
-esac
-host=$ac_cv_host
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_host
-shift
-host_cpu=$1
-host_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-host_os=$*
-IFS=$ac_save_IFS
-case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
-
-
-{ echo "$as_me:$LINENO: checking target system type" >&5
-echo $ECHO_N "checking target system type... $ECHO_C" >&6; }
-if test "${ac_cv_target+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "x$target_alias" = x; then
-  ac_cv_target=$ac_cv_host
-else
-  ac_cv_target=`$SHELL "$ac_aux_dir/config.sub" $target_alias` ||
-    { { echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $target_alias failed" >&5
-echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $target_alias failed" >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_target" >&5
-echo "${ECHO_T}$ac_cv_target" >&6; }
-case $ac_cv_target in
-*-*-*) ;;
-*) { { echo "$as_me:$LINENO: error: invalid value of canonical target" >&5
-echo "$as_me: error: invalid value of canonical target" >&2;}
-   { (exit 1); exit 1; }; };;
-esac
-target=$ac_cv_target
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_target
-shift
-target_cpu=$1
-target_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-target_os=$*
-IFS=$ac_save_IFS
-case $target_os in *\ *) target_os=`echo "$target_os" | sed 's/ /-/g'`;; esac
-
-
-# The aliases save the names the user supplied, while $host etc.
-# will get canonicalized.
-test -n "$target_alias" &&
-  test "$program_prefix$program_suffix$program_transform_name" = \
-    NONENONEs,x,x, &&
-  program_prefix=${target_alias}-
-
-# Search the user's PATH for the 'nvcc' compiler. If it is found, add this
-# prefix to the include and library search directories. Additionally, set nvcc
-# as the C preprocessor for c2hs (only, or it won't try to link cudart)
-#
-# Extract the first word of "nvcc", so it can be a program name with args.
-set dummy nvcc; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
-if test "${ac_cv_path_NVCC+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  case $NVCC in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_NVCC="$NVCC" # Let the user override the test with a path.
-  ;;
-  *)
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_path_NVCC="$as_dir/$ac_word$ac_exec_ext"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-IFS=$as_save_IFS
-
-  ;;
-esac
-fi
-NVCC=$ac_cv_path_NVCC
-if test -n "$NVCC"; then
-  { echo "$as_me:$LINENO: result: $NVCC" >&5
-echo "${ECHO_T}$NVCC" >&6; }
-else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
-
-
-if test "$NVCC" != ""; then
-    cuda_prefix="$(dirname $(dirname $NVCC))"
-    cuda_c2hsflags+="--cpp=$NVCC --cppopts=-E "
-    CPPFLAGS+="-I${cuda_prefix}/include "
-#    CC=${NVCC}
-
-    case $target in
-    x86_64*) LDFLAGS+="-L${cuda_prefix}/lib64 " ;;
-    *)       LDFLAGS+="-L${cuda_prefix}/lib "   ;;
-    esac
-fi
-
-# Snow Leopard (Mac OS X 10.6) provides a C extension for creating lambda-like
-# closure expressions (blocks), the syntax for which confuses the c2hs
-# preprocessor. We disable this by undefining the __BLOCKS__ macro.
-#
-{ echo "$as_me:$LINENO: checking for Apple Blocks extension" >&5
-echo $ECHO_N "checking for Apple Blocks extension... $ECHO_C" >&6; }
-if test -r "/System/Library/CoreServices/SystemVersion.plist"; then
-    SNOWLEOPARD=`grep '<string>10.6' /System/Library/CoreServices/SystemVersion.plist`
-fi
-if test "$SNOWLEOPARD" != ""; then
-    cuda_c2hsflags+="--cppopts=-U__BLOCKS__ "
-    { echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
-else
-    { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
-
-# Make sure both the driver and runtime are found
-#
-longerror='
-********************************************************************************
-
-The configuration process failed to locate your CUDA installation. Ensure that
-you have installed the driver and developer toolkit, available from:
-
-  http://developer.nvidia.com/object/cuda.html
-
-Then make sure that "nvcc" is available in your PATH, or set the appropriate
-directories with --extra-include-dirs and --extra-lib-dirs.
-
-********************************************************************************'
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}gcc; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -n "$CC"; then
-  ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_CC="${ac_tool_prefix}gcc"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { echo "$as_me:$LINENO: result: $CC" >&5
-echo "${ECHO_T}$CC" >&6; }
-else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_CC"; then
-  ac_ct_CC=$CC
-  # Extract the first word of "gcc", so it can be a program name with args.
-set dummy gcc; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -n "$ac_ct_CC"; then
-  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_CC="gcc"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
-  { echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
-echo "${ECHO_T}$ac_ct_CC" >&6; }
-else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
-
-  if test "x$ac_ct_CC" = x; then
-    CC=""
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools
-whose name does not start with the host triplet.  If you think this
-configuration is useful to you, please write to autoconf@gnu.org." >&5
-echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools
-whose name does not start with the host triplet.  If you think this
-configuration is useful to you, please write to autoconf@gnu.org." >&2;}
-ac_tool_warned=yes ;;
-esac
-    CC=$ac_ct_CC
-  fi
-else
-  CC="$ac_cv_prog_CC"
-fi
-
-if test -z "$CC"; then
-          if test -n "$ac_tool_prefix"; then
-    # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}cc; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -n "$CC"; then
-  ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_CC="${ac_tool_prefix}cc"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { echo "$as_me:$LINENO: result: $CC" >&5
-echo "${ECHO_T}$CC" >&6; }
-else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
-
-
-  fi
-fi
-if test -z "$CC"; then
-  # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -n "$CC"; then
-  ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-  ac_prog_rejected=no
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
-       ac_prog_rejected=yes
-       continue
-     fi
-    ac_cv_prog_CC="cc"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-IFS=$as_save_IFS
-
-if test $ac_prog_rejected = yes; then
-  # We found a bogon in the path, so make sure we never use it.
-  set dummy $ac_cv_prog_CC
-  shift
-  if test $# != 0; then
-    # We chose a different compiler from the bogus one.
-    # However, it has the same basename, so the bogon will be chosen
-    # first if we set CC to just the basename; use the full file name.
-    shift
-    ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
-  fi
-fi
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { echo "$as_me:$LINENO: result: $CC" >&5
-echo "${ECHO_T}$CC" >&6; }
-else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
-
-
-fi
-if test -z "$CC"; then
-  if test -n "$ac_tool_prefix"; then
-  for ac_prog in cl.exe
-  do
-    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -n "$CC"; then
-  ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { echo "$as_me:$LINENO: result: $CC" >&5
-echo "${ECHO_T}$CC" >&6; }
-else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
-
-
-    test -n "$CC" && break
-  done
-fi
-if test -z "$CC"; then
-  ac_ct_CC=$CC
-  for ac_prog in cl.exe
-do
-  # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -n "$ac_ct_CC"; then
-  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_CC="$ac_prog"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
-  { echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
-echo "${ECHO_T}$ac_ct_CC" >&6; }
-else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
-
-
-  test -n "$ac_ct_CC" && break
-done
-
-  if test "x$ac_ct_CC" = x; then
-    CC=""
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools
-whose name does not start with the host triplet.  If you think this
-configuration is useful to you, please write to autoconf@gnu.org." >&5
-echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools
-whose name does not start with the host triplet.  If you think this
-configuration is useful to you, please write to autoconf@gnu.org." >&2;}
-ac_tool_warned=yes ;;
-esac
-    CC=$ac_ct_CC
-  fi
-fi
-
-fi
-
-
-test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH
-See \`config.log' for more details." >&5
-echo "$as_me: error: no acceptable C compiler found in \$PATH
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-
-# Provide some information about the compiler.
-echo "$as_me:$LINENO: checking for C compiler version" >&5
-ac_compiler=`set X $ac_compile; echo $2`
-{ (ac_try="$ac_compiler --version >&5"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compiler --version >&5") 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }
-{ (ac_try="$ac_compiler -v >&5"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compiler -v >&5") 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }
-{ (ac_try="$ac_compiler -V >&5"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compiler -V >&5") 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }
-
-{ echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
-echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6; }
-if test "${ac_cv_c_compiler_gnu+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-int
-main ()
-{
-#ifndef __GNUC__
-       choke me
-#endif
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_compiler_gnu=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_compiler_gnu=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-ac_cv_c_compiler_gnu=$ac_compiler_gnu
-
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
-echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6; }
-GCC=`test $ac_compiler_gnu = yes && echo yes`
-ac_test_CFLAGS=${CFLAGS+set}
-ac_save_CFLAGS=$CFLAGS
-{ echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
-echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6; }
-if test "${ac_cv_prog_cc_g+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_save_c_werror_flag=$ac_c_werror_flag
-   ac_c_werror_flag=yes
-   ac_cv_prog_cc_g=no
-   CFLAGS="-g"
-   cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_prog_cc_g=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	CFLAGS=""
-      cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  :
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_c_werror_flag=$ac_save_c_werror_flag
-	 CFLAGS="-g"
-	 cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_prog_cc_g=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-   ac_c_werror_flag=$ac_save_c_werror_flag
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
-echo "${ECHO_T}$ac_cv_prog_cc_g" >&6; }
-if test "$ac_test_CFLAGS" = set; then
-  CFLAGS=$ac_save_CFLAGS
-elif test $ac_cv_prog_cc_g = yes; then
-  if test "$GCC" = yes; then
-    CFLAGS="-g -O2"
-  else
-    CFLAGS="-g"
-  fi
-else
-  if test "$GCC" = yes; then
-    CFLAGS="-O2"
-  else
-    CFLAGS=
-  fi
-fi
-{ echo "$as_me:$LINENO: checking for $CC option to accept ISO C89" >&5
-echo $ECHO_N "checking for $CC option to accept ISO C89... $ECHO_C" >&6; }
-if test "${ac_cv_prog_cc_c89+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_cv_prog_cc_c89=no
-ac_save_CC=$CC
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <stdarg.h>
-#include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-/* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
-struct buf { int x; };
-FILE * (*rcsopen) (struct buf *, struct stat *, int);
-static char *e (p, i)
-     char **p;
-     int i;
-{
-  return p[i];
-}
-static char *f (char * (*g) (char **, int), char **p, ...)
-{
-  char *s;
-  va_list v;
-  va_start (v,p);
-  s = g (p, va_arg (v,int));
-  va_end (v);
-  return s;
-}
-
-/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default.  It has
-   function prototypes and stuff, but not '\xHH' hex character constants.
-   These don't provoke an error unfortunately, instead are silently treated
-   as 'x'.  The following induces an error, until -std is added to get
-   proper ANSI mode.  Curiously '\x00'!='x' always comes out true, for an
-   array size at least.  It's necessary to write '\x00'==0 to get something
-   that's true only with -std.  */
-int osf4_cc_array ['\x00' == 0 ? 1 : -1];
-
-/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
-   inside strings and character constants.  */
-#define FOO(x) 'x'
-int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
-
-int test (int i, double x);
-struct s1 {int (*f) (int a);};
-struct s2 {int (*f) (double a);};
-int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
-int argc;
-char **argv;
-int
-main ()
-{
-return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];
-  ;
-  return 0;
-}
-_ACEOF
-for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
-	-Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
-do
-  CC="$ac_save_CC $ac_arg"
-  rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_prog_cc_c89=$ac_arg
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
-fi
-
-rm -f core conftest.err conftest.$ac_objext
-  test "x$ac_cv_prog_cc_c89" != "xno" && break
-done
-rm -f conftest.$ac_ext
-CC=$ac_save_CC
-
-fi
-# AC_CACHE_VAL
-case "x$ac_cv_prog_cc_c89" in
-  x)
-    { echo "$as_me:$LINENO: result: none needed" >&5
-echo "${ECHO_T}none needed" >&6; } ;;
-  xno)
-    { echo "$as_me:$LINENO: result: unsupported" >&5
-echo "${ECHO_T}unsupported" >&6; } ;;
-  *)
-    CC="$CC $ac_cv_prog_cc_c89"
-    { echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5
-echo "${ECHO_T}$ac_cv_prog_cc_c89" >&6; } ;;
-esac
-
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-{ echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5
-echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6; }
-# On Suns, sometimes $CPP names a directory.
-if test -n "$CPP" && test -d "$CPP"; then
-  CPP=
-fi
-if test -z "$CPP"; then
-  if test "${ac_cv_prog_CPP+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-      # Double quotes because CPP needs to be expanded
-    for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
-    do
-      ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
-  # Use a header file that comes with gcc, so configuring glibc
-  # with a fresh cross-compiler works.
-  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-  # <limits.h> exists even on freestanding compilers.
-  # On the NeXT, cc -E runs the code through the compiler's parser,
-  # not just through cpp. "Syntax error" is here to catch this case.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-		     Syntax error
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null && {
-	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       }; then
-  :
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  # Broken: fails on valid input.
-continue
-fi
-
-rm -f conftest.err conftest.$ac_ext
-
-  # OK, works on sane cases.  Now check whether nonexistent headers
-  # can be detected and how.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <ac_nonexistent.h>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null && {
-	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       }; then
-  # Broken: success on invalid input.
-continue
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-
-rm -f conftest.err conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then
-  break
-fi
-
-    done
-    ac_cv_prog_CPP=$CPP
-
-fi
-  CPP=$ac_cv_prog_CPP
-else
-  ac_cv_prog_CPP=$CPP
-fi
-{ echo "$as_me:$LINENO: result: $CPP" >&5
-echo "${ECHO_T}$CPP" >&6; }
-ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
-  # Use a header file that comes with gcc, so configuring glibc
-  # with a fresh cross-compiler works.
-  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-  # <limits.h> exists even on freestanding compilers.
-  # On the NeXT, cc -E runs the code through the compiler's parser,
-  # not just through cpp. "Syntax error" is here to catch this case.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-		     Syntax error
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null && {
-	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       }; then
-  :
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  # Broken: fails on valid input.
-continue
-fi
-
-rm -f conftest.err conftest.$ac_ext
-
-  # OK, works on sane cases.  Now check whether nonexistent headers
-  # can be detected and how.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <ac_nonexistent.h>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null && {
-	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       }; then
-  # Broken: success on invalid input.
-continue
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-
-rm -f conftest.err conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then
-  :
-else
-  { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details." >&5
-echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-{ echo "$as_me:$LINENO: checking for grep that handles long lines and -e" >&5
-echo $ECHO_N "checking for grep that handles long lines and -e... $ECHO_C" >&6; }
-if test "${ac_cv_path_GREP+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  # Extract the first word of "grep ggrep" to use in msg output
-if test -z "$GREP"; then
-set dummy grep ggrep; ac_prog_name=$2
-if test "${ac_cv_path_GREP+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_path_GREP_found=false
-# Loop through the user's path and test for each of PROGNAME-LIST
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  for ac_prog in grep ggrep; do
-  for ac_exec_ext in '' $ac_executable_extensions; do
-    ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
-    { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
-    # Check for GNU ac_path_GREP and select it if it is found.
-  # Check for GNU $ac_path_GREP
-case `"$ac_path_GREP" --version 2>&1` in
-*GNU*)
-  ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
-*)
-  ac_count=0
-  echo $ECHO_N "0123456789$ECHO_C" >"conftest.in"
-  while :
-  do
-    cat "conftest.in" "conftest.in" >"conftest.tmp"
-    mv "conftest.tmp" "conftest.in"
-    cp "conftest.in" "conftest.nl"
-    echo 'GREP' >> "conftest.nl"
-    "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
-    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
-    ac_count=`expr $ac_count + 1`
-    if test $ac_count -gt ${ac_path_GREP_max-0}; then
-      # Best one so far, save it but keep looking for a better one
-      ac_cv_path_GREP="$ac_path_GREP"
-      ac_path_GREP_max=$ac_count
-    fi
-    # 10*(2^10) chars as input seems more than enough
-    test $ac_count -gt 10 && break
-  done
-  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
-
-    $ac_path_GREP_found && break 3
-  done
-done
-
-done
-IFS=$as_save_IFS
-
-
-fi
-
-GREP="$ac_cv_path_GREP"
-if test -z "$GREP"; then
-  { { echo "$as_me:$LINENO: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5
-echo "$as_me: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-else
-  ac_cv_path_GREP=$GREP
-fi
-
-
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_path_GREP" >&5
-echo "${ECHO_T}$ac_cv_path_GREP" >&6; }
- GREP="$ac_cv_path_GREP"
-
-
-{ echo "$as_me:$LINENO: checking for egrep" >&5
-echo $ECHO_N "checking for egrep... $ECHO_C" >&6; }
-if test "${ac_cv_path_EGREP+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
-   then ac_cv_path_EGREP="$GREP -E"
-   else
-     # Extract the first word of "egrep" to use in msg output
-if test -z "$EGREP"; then
-set dummy egrep; ac_prog_name=$2
-if test "${ac_cv_path_EGREP+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_path_EGREP_found=false
-# Loop through the user's path and test for each of PROGNAME-LIST
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  for ac_prog in egrep; do
-  for ac_exec_ext in '' $ac_executable_extensions; do
-    ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
-    { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
-    # Check for GNU ac_path_EGREP and select it if it is found.
-  # Check for GNU $ac_path_EGREP
-case `"$ac_path_EGREP" --version 2>&1` in
-*GNU*)
-  ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
-*)
-  ac_count=0
-  echo $ECHO_N "0123456789$ECHO_C" >"conftest.in"
-  while :
-  do
-    cat "conftest.in" "conftest.in" >"conftest.tmp"
-    mv "conftest.tmp" "conftest.in"
-    cp "conftest.in" "conftest.nl"
-    echo 'EGREP' >> "conftest.nl"
-    "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
-    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
-    ac_count=`expr $ac_count + 1`
-    if test $ac_count -gt ${ac_path_EGREP_max-0}; then
-      # Best one so far, save it but keep looking for a better one
-      ac_cv_path_EGREP="$ac_path_EGREP"
-      ac_path_EGREP_max=$ac_count
-    fi
-    # 10*(2^10) chars as input seems more than enough
-    test $ac_count -gt 10 && break
-  done
-  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
-
-    $ac_path_EGREP_found && break 3
-  done
-done
-
-done
-IFS=$as_save_IFS
-
-
-fi
-
-EGREP="$ac_cv_path_EGREP"
-if test -z "$EGREP"; then
-  { { echo "$as_me:$LINENO: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5
-echo "$as_me: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-else
-  ac_cv_path_EGREP=$EGREP
-fi
-
-
-   fi
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_path_EGREP" >&5
-echo "${ECHO_T}$ac_cv_path_EGREP" >&6; }
- EGREP="$ac_cv_path_EGREP"
-
-
-{ echo "$as_me:$LINENO: checking for ANSI C header files" >&5
-echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6; }
-if test "${ac_cv_header_stdc+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <float.h>
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_header_stdc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_cv_header_stdc=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-if test $ac_cv_header_stdc = yes; then
-  # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <string.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "memchr" >/dev/null 2>&1; then
-  :
-else
-  ac_cv_header_stdc=no
-fi
-rm -f -r conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <stdlib.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "free" >/dev/null 2>&1; then
-  :
-else
-  ac_cv_header_stdc=no
-fi
-rm -f -r conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
-  if test "$cross_compiling" = yes; then
-  :
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <ctype.h>
-#include <stdlib.h>
-#if ((' ' & 0x0FF) == 0x020)
-# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-#else
-# define ISLOWER(c) \
-		   (('a' <= (c) && (c) <= 'i') \
-		     || ('j' <= (c) && (c) <= 'r') \
-		     || ('s' <= (c) && (c) <= 'z'))
-# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
-#endif
-
-#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
-int
-main ()
-{
-  int i;
-  for (i = 0; i < 256; i++)
-    if (XOR (islower (i), ISLOWER (i))
-	|| toupper (i) != TOUPPER (i))
-      return 2;
-  return 0;
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_link") 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; }; then
-  :
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-ac_cv_header_stdc=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-
-
-fi
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5
-echo "${ECHO_T}$ac_cv_header_stdc" >&6; }
-if test $ac_cv_header_stdc = yes; then
-
-cat >>confdefs.h <<\_ACEOF
-#define STDC_HEADERS 1
-_ACEOF
-
-fi
-
-# On IRIX 5.3, sys/types and inttypes.h are conflicting.
-
-
-
-
-
-
-
-
-
-for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
-		  inttypes.h stdint.h unistd.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-{ echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-
-#include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  eval "$as_ac_Header=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	eval "$as_ac_Header=no"
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
-	       { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-
-for ac_header in cuda.h cuda_runtime_api.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  { echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
-	       { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-else
-  # Is the header compilable?
-{ echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-#include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_header_compiler=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_header_compiler=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <$ac_header>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null && {
-	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       }; then
-  ac_header_preproc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  ac_header_preproc=no
-fi
-
-rm -f conftest.err conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6; }
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-  yes:no: )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-    ac_header_preproc=yes
-    ;;
-  no:yes:* )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
-    ( cat <<\_ASBOX
-## ---------------------------------------- ##
-## Report this to tmcdonell@cse.unsw.edu.au ##
-## ---------------------------------------- ##
-_ASBOX
-     ) | sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-{ echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  eval "$as_ac_Header=\$ac_header_preproc"
-fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
-	       { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-
-fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-else
-  { { echo "$as_me:$LINENO: error: could not find CUDA headers${longerror}" >&5
-echo "$as_me: error: could not find CUDA headers${longerror}" >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-done
-
-{ echo "$as_me:$LINENO: checking for library containing cuDriverGetVersion" >&5
-echo $ECHO_N "checking for library containing cuDriverGetVersion... $ECHO_C" >&6; }
-if test "${ac_cv_search_cuDriverGetVersion+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_func_search_save_LIBS=$LIBS
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char cuDriverGetVersion ();
-int
-main ()
-{
-return cuDriverGetVersion ();
-  ;
-  return 0;
-}
-_ACEOF
-for ac_lib in '' cuda; do
-  if test -z "$ac_lib"; then
-    ac_res="none required"
-  else
-    ac_res=-l$ac_lib
-    LIBS="-l$ac_lib  $ac_func_search_save_LIBS"
-  fi
-  rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext &&
-       $as_test_x conftest$ac_exeext; then
-  ac_cv_search_cuDriverGetVersion=$ac_res
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext
-  if test "${ac_cv_search_cuDriverGetVersion+set}" = set; then
-  break
-fi
-done
-if test "${ac_cv_search_cuDriverGetVersion+set}" = set; then
-  :
-else
-  ac_cv_search_cuDriverGetVersion=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_search_cuDriverGetVersion" >&5
-echo "${ECHO_T}$ac_cv_search_cuDriverGetVersion" >&6; }
-ac_res=$ac_cv_search_cuDriverGetVersion
-if test "$ac_res" != no; then
-  test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
-
-else
-  { { echo "$as_me:$LINENO: error: could not find CUDA driver library${longerror}" >&5
-echo "$as_me: error: could not find CUDA driver library${longerror}" >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-{ echo "$as_me:$LINENO: checking for library containing cudaRuntimeGetVersion" >&5
-echo $ECHO_N "checking for library containing cudaRuntimeGetVersion... $ECHO_C" >&6; }
-if test "${ac_cv_search_cudaRuntimeGetVersion+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_func_search_save_LIBS=$LIBS
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char cudaRuntimeGetVersion ();
-int
-main ()
-{
-return cudaRuntimeGetVersion ();
-  ;
-  return 0;
-}
-_ACEOF
-for ac_lib in '' cudart; do
-  if test -z "$ac_lib"; then
-    ac_res="none required"
-  else
-    ac_res=-l$ac_lib
-    LIBS="-l$ac_lib  $ac_func_search_save_LIBS"
-  fi
-  rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext &&
-       $as_test_x conftest$ac_exeext; then
-  ac_cv_search_cudaRuntimeGetVersion=$ac_res
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext
-  if test "${ac_cv_search_cudaRuntimeGetVersion+set}" = set; then
-  break
-fi
-done
-if test "${ac_cv_search_cudaRuntimeGetVersion+set}" = set; then
-  :
-else
-  ac_cv_search_cudaRuntimeGetVersion=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_search_cudaRuntimeGetVersion" >&5
-echo "${ECHO_T}$ac_cv_search_cudaRuntimeGetVersion" >&6; }
-ac_res=$ac_cv_search_cudaRuntimeGetVersion
-if test "$ac_res" != no; then
-  test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
-
-else
-  { { echo "$as_me:$LINENO: error: could not find CUDA runtime library${longerror}" >&5
-echo "$as_me: error: could not find CUDA runtime library${longerror}" >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-
-# Populate the buildinfo, with the search paths and any target specific options
-#
-cuda_cppflags="$CPPFLAGS"
-cuda_ldflags="$LDFLAGS $LIBS"
-
-
-
-
-cat >confcache <<\_ACEOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs, see configure's option --config-cache.
-# It is not useful on other systems.  If it contains results you don't
-# want to keep, you may remove or edit it.
-#
-# config.status only pays attention to the cache file if you give it
-# the --recheck option to rerun configure.
-#
-# `ac_cv_env_foo' variables (set or unset) will be overridden when
-# loading this file, other *unset* `ac_cv_foo' will be assigned the
-# following values.
-
-_ACEOF
-
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, we kill variables containing newlines.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-(
-  for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do
-    eval ac_val=\$$ac_var
-    case $ac_val in #(
-    *${as_nl}*)
-      case $ac_var in #(
-      *_cv_*) { echo "$as_me:$LINENO: WARNING: Cache variable $ac_var contains a newline." >&5
-echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;;
-      esac
-      case $ac_var in #(
-      _ | IFS | as_nl) ;; #(
-      *) $as_unset $ac_var ;;
-      esac ;;
-    esac
-  done
-
-  (set) 2>&1 |
-    case $as_nl`(ac_space=' '; set) 2>&1` in #(
-    *${as_nl}ac_space=\ *)
-      # `set' does not quote correctly, so add quotes (double-quote
-      # substitution turns \\\\ into \\, and sed turns \\ into \).
-      sed -n \
-	"s/'/'\\\\''/g;
-	  s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
-      ;; #(
-    *)
-      # `set' quotes correctly as required by POSIX, so do not add quotes.
-      sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
-      ;;
-    esac |
-    sort
-) |
-  sed '
-     /^ac_cv_env_/b end
-     t clear
-     :clear
-     s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
-     t end
-     s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
-     :end' >>confcache
-if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
-  if test -w "$cache_file"; then
-    test "x$cache_file" != "x/dev/null" &&
-      { echo "$as_me:$LINENO: updating cache $cache_file" >&5
-echo "$as_me: updating cache $cache_file" >&6;}
-    cat confcache >$cache_file
-  else
-    { echo "$as_me:$LINENO: not updating unwritable cache $cache_file" >&5
-echo "$as_me: not updating unwritable cache $cache_file" >&6;}
-  fi
-fi
-rm -f confcache
-
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-# Transform confdefs.h into DEFS.
-# Protect against shell expansion while executing Makefile rules.
-# Protect against Makefile macro expansion.
-#
-# If the first sed substitution is executed (which looks for macros that
-# take arguments), then branch to the quote section.  Otherwise,
-# look for a macro that doesn't take arguments.
-ac_script='
-t clear
-:clear
-s/^[	 ]*#[	 ]*define[	 ][	 ]*\([^	 (][^	 (]*([^)]*)\)[	 ]*\(.*\)/-D\1=\2/g
-t quote
-s/^[	 ]*#[	 ]*define[	 ][	 ]*\([^	 ][^	 ]*\)[	 ]*\(.*\)/-D\1=\2/g
-t quote
-b any
-:quote
-s/[	 `~#$^&*(){}\\|;'\''"<>?]/\\&/g
-s/\[/\\&/g
-s/\]/\\&/g
-s/\$/$$/g
-H
-:any
-${
-	g
-	s/^\n//
-	s/\n/ /g
-	p
-}
-'
-DEFS=`sed -n "$ac_script" confdefs.h`
-
-
-ac_libobjs=
-ac_ltlibobjs=
-for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
-  # 1. Remove the extension, and $U if already installed.
-  ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
-  ac_i=`echo "$ac_i" | sed "$ac_script"`
-  # 2. Prepend LIBOBJDIR.  When used with automake>=1.10 LIBOBJDIR
-  #    will be set to the directory where LIBOBJS objects are built.
-  ac_libobjs="$ac_libobjs \${LIBOBJDIR}$ac_i\$U.$ac_objext"
-  ac_ltlibobjs="$ac_ltlibobjs \${LIBOBJDIR}$ac_i"'$U.lo'
-done
-LIBOBJS=$ac_libobjs
-
-LTLIBOBJS=$ac_ltlibobjs
-
-
-
-: ${CONFIG_STATUS=./config.status}
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5
-echo "$as_me: creating $CONFIG_STATUS" >&6;}
-cat >$CONFIG_STATUS <<_ACEOF
-#! $SHELL
-# Generated by $as_me.
-# Run this file to recreate the current configuration.
-# Compiler output produced by configure, useful for debugging
-# configure, is in config.log if it exists.
-
-debug=false
-ac_cs_recheck=false
-ac_cs_silent=false
-SHELL=\${CONFIG_SHELL-$SHELL}
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-## --------------------- ##
-## M4sh Initialization.  ##
-## --------------------- ##
-
-# Be more Bourne compatible
-DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
-  emulate sh
-  NULLCMD=:
-  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
-  # is contrary to our usage.  Disable this feature.
-  alias -g '${1+"$@"}'='"$@"'
-  setopt NO_GLOB_SUBST
-else
-  case `(set -o) 2>/dev/null` in
-  *posix*) set -o posix ;;
-esac
-
-fi
-
-
-
-
-# PATH needs CR
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  echo "#! /bin/sh" >conf$$.sh
-  echo  "exit 0"   >>conf$$.sh
-  chmod +x conf$$.sh
-  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
-    PATH_SEPARATOR=';'
-  else
-    PATH_SEPARATOR=:
-  fi
-  rm -f conf$$.sh
-fi
-
-# Support unset when possible.
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
-  as_unset=unset
-else
-  as_unset=false
-fi
-
-
-# IFS
-# We need space, tab and new line, in precisely that order.  Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-as_nl='
-'
-IFS=" ""	$as_nl"
-
-# Find who we are.  Look in the path if we contain no directory separator.
-case $0 in
-  *[\\/]* ) as_myself=$0 ;;
-  *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
-done
-IFS=$as_save_IFS
-
-     ;;
-esac
-# We did not find ourselves, most probably we were run as `sh COMMAND'
-# in which case we are not to be found in the path.
-if test "x$as_myself" = x; then
-  as_myself=$0
-fi
-if test ! -f "$as_myself"; then
-  echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
-  { (exit 1); exit 1; }
-fi
-
-# Work around bugs in pre-3.0 UWIN ksh.
-for as_var in ENV MAIL MAILPATH
-do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-for as_var in \
-  LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
-  LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
-  LC_TELEPHONE LC_TIME
-do
-  if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
-    eval $as_var=C; export $as_var
-  else
-    ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
-  fi
-done
-
-# Required to use basename.
-if expr a : '\(a\)' >/dev/null 2>&1 &&
-   test "X`expr 00001 : '.*\(...\)'`" = X001; then
-  as_expr=expr
-else
-  as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
-  as_basename=basename
-else
-  as_basename=false
-fi
-
-
-# Name of the executable.
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
-	 X"$0" : 'X\(//\)$' \| \
-	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-echo X/"$0" |
-    sed '/^.*\/\([^/][^/]*\)\/*$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\/\(\/\/\)$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\/\(\/\).*/{
-	    s//\1/
-	    q
-	  }
-	  s/.*/./; q'`
-
-# CDPATH.
-$as_unset CDPATH
-
-
-
-  as_lineno_1=$LINENO
-  as_lineno_2=$LINENO
-  test "x$as_lineno_1" != "x$as_lineno_2" &&
-  test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || {
-
-  # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
-  # uniformly replaced by the line number.  The first 'sed' inserts a
-  # line-number line after each line using $LINENO; the second 'sed'
-  # does the real work.  The second script uses 'N' to pair each
-  # line-number line with the line containing $LINENO, and appends
-  # trailing '-' during substitution so that $LINENO is not a special
-  # case at line end.
-  # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
-  # scripts with optimization help from Paolo Bonzini.  Blame Lee
-  # E. McMahon (1931-1989) for sed's syntax.  :-)
-  sed -n '
-    p
-    /[$]LINENO/=
-  ' <$as_myself |
-    sed '
-      s/[$]LINENO.*/&-/
-      t lineno
-      b
-      :lineno
-      N
-      :loop
-      s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
-      t loop
-      s/-\n.*//
-    ' >$as_me.lineno &&
-  chmod +x "$as_me.lineno" ||
-    { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
-   { (exit 1); exit 1; }; }
-
-  # Don't try to exec as it changes $[0], causing all sort of problems
-  # (the dirname of $[0] is not the place where we might find the
-  # original and so on.  Autoconf is especially sensitive to this).
-  . "./$as_me.lineno"
-  # Exit status is that of the last command.
-  exit
-}
-
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
-  as_dirname=dirname
-else
-  as_dirname=false
-fi
-
-ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in
--n*)
-  case `echo 'x\c'` in
-  *c*) ECHO_T='	';;	# ECHO_T is single tab character.
-  *)   ECHO_C='\c';;
-  esac;;
-*)
-  ECHO_N='-n';;
-esac
-
-if expr a : '\(a\)' >/dev/null 2>&1 &&
-   test "X`expr 00001 : '.*\(...\)'`" = X001; then
-  as_expr=expr
-else
-  as_expr=false
-fi
-
-rm -f conf$$ conf$$.exe conf$$.file
-if test -d conf$$.dir; then
-  rm -f conf$$.dir/conf$$.file
-else
-  rm -f conf$$.dir
-  mkdir conf$$.dir
-fi
-echo >conf$$.file
-if ln -s conf$$.file conf$$ 2>/dev/null; then
-  as_ln_s='ln -s'
-  # ... but there are two gotchas:
-  # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
-  # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
-  # In both cases, we have to default to `cp -p'.
-  ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
-    as_ln_s='cp -p'
-elif ln conf$$.file conf$$ 2>/dev/null; then
-  as_ln_s=ln
-else
-  as_ln_s='cp -p'
-fi
-rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
-rmdir conf$$.dir 2>/dev/null
-
-if mkdir -p . 2>/dev/null; then
-  as_mkdir_p=:
-else
-  test -d ./-p && rmdir ./-p
-  as_mkdir_p=false
-fi
-
-if test -x / >/dev/null 2>&1; then
-  as_test_x='test -x'
-else
-  if ls -dL / >/dev/null 2>&1; then
-    as_ls_L_option=L
-  else
-    as_ls_L_option=
-  fi
-  as_test_x='
-    eval sh -c '\''
-      if test -d "$1"; then
-        test -d "$1/.";
-      else
-	case $1 in
-        -*)set "./$1";;
-	esac;
-	case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
-	???[sx]*):;;*)false;;esac;fi
-    '\'' sh
-  '
-fi
-as_executable_p=$as_test_x
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
-exec 6>&1
-
-# Save the log message, to keep $[0] and so on meaningful, and to
-# report actual input values of CONFIG_FILES etc. instead of their
-# values after options handling.
-ac_log="
-This file was extended by Haskell CUDA bindings $as_me 0.3.2, which was
-generated by GNU Autoconf 2.61.  Invocation command line was
-
-  CONFIG_FILES    = $CONFIG_FILES
-  CONFIG_HEADERS  = $CONFIG_HEADERS
-  CONFIG_LINKS    = $CONFIG_LINKS
-  CONFIG_COMMANDS = $CONFIG_COMMANDS
-  $ $0 $@
-
-on `(hostname || uname -n) 2>/dev/null | sed 1q`
-"
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<_ACEOF
-# Files that config.status was made for.
-config_files="$ac_config_files"
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-ac_cs_usage="\
-\`$as_me' instantiates files from templates according to the
-current configuration.
-
-Usage: $0 [OPTIONS] [FILE]...
-
-  -h, --help       print this help, then exit
-  -V, --version    print version number and configuration settings, then exit
-  -q, --quiet      do not print progress messages
-  -d, --debug      don't remove temporary files
-      --recheck    update $as_me by reconfiguring in the same conditions
-  --file=FILE[:TEMPLATE]
-		   instantiate the configuration file FILE
-
-Configuration files:
-$config_files
-
-Report bugs to <bug-autoconf@gnu.org>."
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF
-ac_cs_version="\\
-Haskell CUDA bindings config.status 0.3.2
-configured by $0, generated by GNU Autoconf 2.61,
-  with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
-
-Copyright (C) 2006 Free Software Foundation, Inc.
-This config.status script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it."
-
-ac_pwd='$ac_pwd'
-srcdir='$srcdir'
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-# If no file are specified by the user, then we need to provide default
-# value.  By we need to know if files were specified by the user.
-ac_need_defaults=:
-while test $# != 0
-do
-  case $1 in
-  --*=*)
-    ac_option=`expr "X$1" : 'X\([^=]*\)='`
-    ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
-    ac_shift=:
-    ;;
-  *)
-    ac_option=$1
-    ac_optarg=$2
-    ac_shift=shift
-    ;;
-  esac
-
-  case $ac_option in
-  # Handling of the options.
-  -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
-    ac_cs_recheck=: ;;
-  --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
-    echo "$ac_cs_version"; exit ;;
-  --debug | --debu | --deb | --de | --d | -d )
-    debug=: ;;
-  --file | --fil | --fi | --f )
-    $ac_shift
-    CONFIG_FILES="$CONFIG_FILES $ac_optarg"
-    ac_need_defaults=false;;
-  --he | --h |  --help | --hel | -h )
-    echo "$ac_cs_usage"; exit ;;
-  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
-  | -silent | --silent | --silen | --sile | --sil | --si | --s)
-    ac_cs_silent=: ;;
-
-  # This is an error.
-  -*) { echo "$as_me: error: unrecognized option: $1
-Try \`$0 --help' for more information." >&2
-   { (exit 1); exit 1; }; } ;;
-
-  *) ac_config_targets="$ac_config_targets $1"
-     ac_need_defaults=false ;;
-
-  esac
-  shift
-done
-
-ac_configure_extra_args=
-
-if $ac_cs_silent; then
-  exec 6>/dev/null
-  ac_configure_extra_args="$ac_configure_extra_args --silent"
-fi
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF
-if \$ac_cs_recheck; then
-  echo "running CONFIG_SHELL=$SHELL $SHELL $0 "$ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6
-  CONFIG_SHELL=$SHELL
-  export CONFIG_SHELL
-  exec $SHELL "$0"$ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
-fi
-
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
-exec 5>>config.log
-{
-  echo
-  sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
-## Running $as_me. ##
-_ASBOX
-  echo "$ac_log"
-} >&5
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-
-# Handling of arguments.
-for ac_config_target in $ac_config_targets
-do
-  case $ac_config_target in
-    "cuda.buildinfo") CONFIG_FILES="$CONFIG_FILES cuda.buildinfo" ;;
-
-  *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
-echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
-   { (exit 1); exit 1; }; };;
-  esac
-done
-
-
-# If the user did not use the arguments to specify the items to instantiate,
-# then the envvar interface is used.  Set only those that are not.
-# We use the long form for the default assignment because of an extremely
-# bizarre bug on SunOS 4.1.3.
-if $ac_need_defaults; then
-  test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
-fi
-
-# Have a temporary directory for convenience.  Make it in the build tree
-# simply because there is no reason against having it here, and in addition,
-# creating and moving files from /tmp can sometimes cause problems.
-# Hook for its removal unless debugging.
-# Note that there is a small window in which the directory will not be cleaned:
-# after its creation but before its name has been assigned to `$tmp'.
-$debug ||
-{
-  tmp=
-  trap 'exit_status=$?
-  { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status
-' 0
-  trap '{ (exit 1); exit 1; }' 1 2 13 15
-}
-# Create a (secure) tmp directory for tmp files.
-
-{
-  tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
-  test -n "$tmp" && test -d "$tmp"
-}  ||
-{
-  tmp=./conf$$-$RANDOM
-  (umask 077 && mkdir "$tmp")
-} ||
-{
-   echo "$me: cannot create a temporary directory in ." >&2
-   { (exit 1); exit 1; }
-}
-
-#
-# Set up the sed scripts for CONFIG_FILES section.
-#
-
-# No need to generate the scripts if there are no CONFIG_FILES.
-# This happens for instance when ./config.status config.h
-if test -n "$CONFIG_FILES"; then
-
-_ACEOF
-
-
-
-ac_delim='%!_!# '
-for ac_last_try in false false false false false :; do
-  cat >conf$$subs.sed <<_ACEOF
-SHELL!$SHELL$ac_delim
-PATH_SEPARATOR!$PATH_SEPARATOR$ac_delim
-PACKAGE_NAME!$PACKAGE_NAME$ac_delim
-PACKAGE_TARNAME!$PACKAGE_TARNAME$ac_delim
-PACKAGE_VERSION!$PACKAGE_VERSION$ac_delim
-PACKAGE_STRING!$PACKAGE_STRING$ac_delim
-PACKAGE_BUGREPORT!$PACKAGE_BUGREPORT$ac_delim
-exec_prefix!$exec_prefix$ac_delim
-prefix!$prefix$ac_delim
-program_transform_name!$program_transform_name$ac_delim
-bindir!$bindir$ac_delim
-sbindir!$sbindir$ac_delim
-libexecdir!$libexecdir$ac_delim
-datarootdir!$datarootdir$ac_delim
-datadir!$datadir$ac_delim
-sysconfdir!$sysconfdir$ac_delim
-sharedstatedir!$sharedstatedir$ac_delim
-localstatedir!$localstatedir$ac_delim
-includedir!$includedir$ac_delim
-oldincludedir!$oldincludedir$ac_delim
-docdir!$docdir$ac_delim
-infodir!$infodir$ac_delim
-htmldir!$htmldir$ac_delim
-dvidir!$dvidir$ac_delim
-pdfdir!$pdfdir$ac_delim
-psdir!$psdir$ac_delim
-libdir!$libdir$ac_delim
-localedir!$localedir$ac_delim
-mandir!$mandir$ac_delim
-DEFS!$DEFS$ac_delim
-ECHO_C!$ECHO_C$ac_delim
-ECHO_N!$ECHO_N$ac_delim
-ECHO_T!$ECHO_T$ac_delim
-LIBS!$LIBS$ac_delim
-build_alias!$build_alias$ac_delim
-host_alias!$host_alias$ac_delim
-target_alias!$target_alias$ac_delim
-CXX!$CXX$ac_delim
-CXXFLAGS!$CXXFLAGS$ac_delim
-LDFLAGS!$LDFLAGS$ac_delim
-CPPFLAGS!$CPPFLAGS$ac_delim
-ac_ct_CXX!$ac_ct_CXX$ac_delim
-EXEEXT!$EXEEXT$ac_delim
-OBJEXT!$OBJEXT$ac_delim
-build!$build$ac_delim
-build_cpu!$build_cpu$ac_delim
-build_vendor!$build_vendor$ac_delim
-build_os!$build_os$ac_delim
-host!$host$ac_delim
-host_cpu!$host_cpu$ac_delim
-host_vendor!$host_vendor$ac_delim
-host_os!$host_os$ac_delim
-target!$target$ac_delim
-target_cpu!$target_cpu$ac_delim
-target_vendor!$target_vendor$ac_delim
-target_os!$target_os$ac_delim
-NVCC!$NVCC$ac_delim
-CC!$CC$ac_delim
-CFLAGS!$CFLAGS$ac_delim
-ac_ct_CC!$ac_ct_CC$ac_delim
-CPP!$CPP$ac_delim
-GREP!$GREP$ac_delim
-EGREP!$EGREP$ac_delim
-cuda_cppflags!$cuda_cppflags$ac_delim
-cuda_ldflags!$cuda_ldflags$ac_delim
-cuda_c2hsflags!$cuda_c2hsflags$ac_delim
-LIBOBJS!$LIBOBJS$ac_delim
-LTLIBOBJS!$LTLIBOBJS$ac_delim
-_ACEOF
-
-  if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 68; then
+# Generated by GNU Autoconf 2.61 for Haskell CUDA bindings 0.4.0.0.
+#
+# Report bugs to <tmcdonell@cse.unsw.edu.au>.
+#
+# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
+# 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+# This configure script is free software; the Free Software Foundation
+# gives unlimited permission to copy, distribute and modify it.
+## --------------------- ##
+## M4sh Initialization.  ##
+## --------------------- ##
+
+# Be more Bourne compatible
+DUALCASE=1; export DUALCASE # for MKS sh
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+  emulate sh
+  NULLCMD=:
+  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+  # is contrary to our usage.  Disable this feature.
+  alias -g '${1+"$@"}'='"$@"'
+  setopt NO_GLOB_SUBST
+else
+  case `(set -o) 2>/dev/null` in
+  *posix*) set -o posix ;;
+esac
+
+fi
+
+
+
+
+# PATH needs CR
+# Avoid depending upon Character Ranges.
+as_cr_letters='abcdefghijklmnopqrstuvwxyz'
+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
+as_cr_Letters=$as_cr_letters$as_cr_LETTERS
+as_cr_digits='0123456789'
+as_cr_alnum=$as_cr_Letters$as_cr_digits
+
+# The user is always right.
+if test "${PATH_SEPARATOR+set}" != set; then
+  echo "#! /bin/sh" >conf$$.sh
+  echo  "exit 0"   >>conf$$.sh
+  chmod +x conf$$.sh
+  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
+    PATH_SEPARATOR=';'
+  else
+    PATH_SEPARATOR=:
+  fi
+  rm -f conf$$.sh
+fi
+
+# Support unset when possible.
+if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
+  as_unset=unset
+else
+  as_unset=false
+fi
+
+
+# IFS
+# We need space, tab and new line, in precisely that order.  Quoting is
+# there to prevent editors from complaining about space-tab.
+# (If _AS_PATH_WALK were called with IFS unset, it would disable word
+# splitting by setting IFS to empty value.)
+as_nl='
+'
+IFS=" ""	$as_nl"
+
+# Find who we are.  Look in the path if we contain no directory separator.
+case $0 in
+  *[\\/]* ) as_myself=$0 ;;
+  *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+done
+IFS=$as_save_IFS
+
+     ;;
+esac
+# We did not find ourselves, most probably we were run as `sh COMMAND'
+# in which case we are not to be found in the path.
+if test "x$as_myself" = x; then
+  as_myself=$0
+fi
+if test ! -f "$as_myself"; then
+  echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
+  { (exit 1); exit 1; }
+fi
+
+# Work around bugs in pre-3.0 UWIN ksh.
+for as_var in ENV MAIL MAILPATH
+do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
+done
+PS1='$ '
+PS2='> '
+PS4='+ '
+
+# NLS nuisances.
+for as_var in \
+  LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
+  LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
+  LC_TELEPHONE LC_TIME
+do
+  if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
+    eval $as_var=C; export $as_var
+  else
+    ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
+  fi
+done
+
+# Required to use basename.
+if expr a : '\(a\)' >/dev/null 2>&1 &&
+   test "X`expr 00001 : '.*\(...\)'`" = X001; then
+  as_expr=expr
+else
+  as_expr=false
+fi
+
+if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
+  as_basename=basename
+else
+  as_basename=false
+fi
+
+
+# Name of the executable.
+as_me=`$as_basename -- "$0" ||
+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
+	 X"$0" : 'X\(//\)$' \| \
+	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
+echo X/"$0" |
+    sed '/^.*\/\([^/][^/]*\)\/*$/{
+	    s//\1/
+	    q
+	  }
+	  /^X\/\(\/\/\)$/{
+	    s//\1/
+	    q
+	  }
+	  /^X\/\(\/\).*/{
+	    s//\1/
+	    q
+	  }
+	  s/.*/./; q'`
+
+# CDPATH.
+$as_unset CDPATH
+
+
+if test "x$CONFIG_SHELL" = x; then
+  if (eval ":") 2>/dev/null; then
+  as_have_required=yes
+else
+  as_have_required=no
+fi
+
+  if test $as_have_required = yes && 	 (eval ":
+(as_func_return () {
+  (exit \$1)
+}
+as_func_success () {
+  as_func_return 0
+}
+as_func_failure () {
+  as_func_return 1
+}
+as_func_ret_success () {
+  return 0
+}
+as_func_ret_failure () {
+  return 1
+}
+
+exitcode=0
+if as_func_success; then
+  :
+else
+  exitcode=1
+  echo as_func_success failed.
+fi
+
+if as_func_failure; then
+  exitcode=1
+  echo as_func_failure succeeded.
+fi
+
+if as_func_ret_success; then
+  :
+else
+  exitcode=1
+  echo as_func_ret_success failed.
+fi
+
+if as_func_ret_failure; then
+  exitcode=1
+  echo as_func_ret_failure succeeded.
+fi
+
+if ( set x; as_func_ret_success y && test x = \"\$1\" ); then
+  :
+else
+  exitcode=1
+  echo positional parameters were not saved.
+fi
+
+test \$exitcode = 0) || { (exit 1); exit 1; }
+
+(
+  as_lineno_1=\$LINENO
+  as_lineno_2=\$LINENO
+  test \"x\$as_lineno_1\" != \"x\$as_lineno_2\" &&
+  test \"x\`expr \$as_lineno_1 + 1\`\" = \"x\$as_lineno_2\") || { (exit 1); exit 1; }
+") 2> /dev/null; then
+  :
+else
+  as_candidate_shells=
+    as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  case $as_dir in
+	 /*)
+	   for as_base in sh bash ksh sh5; do
+	     as_candidate_shells="$as_candidate_shells $as_dir/$as_base"
+	   done;;
+       esac
+done
+IFS=$as_save_IFS
+
+
+      for as_shell in $as_candidate_shells $SHELL; do
+	 # Try only shells that exist, to save several forks.
+	 if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
+		{ ("$as_shell") 2> /dev/null <<\_ASEOF
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+  emulate sh
+  NULLCMD=:
+  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+  # is contrary to our usage.  Disable this feature.
+  alias -g '${1+"$@"}'='"$@"'
+  setopt NO_GLOB_SUBST
+else
+  case `(set -o) 2>/dev/null` in
+  *posix*) set -o posix ;;
+esac
+
+fi
+
+
+:
+_ASEOF
+}; then
+  CONFIG_SHELL=$as_shell
+	       as_have_required=yes
+	       if { "$as_shell" 2> /dev/null <<\_ASEOF
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+  emulate sh
+  NULLCMD=:
+  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+  # is contrary to our usage.  Disable this feature.
+  alias -g '${1+"$@"}'='"$@"'
+  setopt NO_GLOB_SUBST
+else
+  case `(set -o) 2>/dev/null` in
+  *posix*) set -o posix ;;
+esac
+
+fi
+
+
+:
+(as_func_return () {
+  (exit $1)
+}
+as_func_success () {
+  as_func_return 0
+}
+as_func_failure () {
+  as_func_return 1
+}
+as_func_ret_success () {
+  return 0
+}
+as_func_ret_failure () {
+  return 1
+}
+
+exitcode=0
+if as_func_success; then
+  :
+else
+  exitcode=1
+  echo as_func_success failed.
+fi
+
+if as_func_failure; then
+  exitcode=1
+  echo as_func_failure succeeded.
+fi
+
+if as_func_ret_success; then
+  :
+else
+  exitcode=1
+  echo as_func_ret_success failed.
+fi
+
+if as_func_ret_failure; then
+  exitcode=1
+  echo as_func_ret_failure succeeded.
+fi
+
+if ( set x; as_func_ret_success y && test x = "$1" ); then
+  :
+else
+  exitcode=1
+  echo positional parameters were not saved.
+fi
+
+test $exitcode = 0) || { (exit 1); exit 1; }
+
+(
+  as_lineno_1=$LINENO
+  as_lineno_2=$LINENO
+  test "x$as_lineno_1" != "x$as_lineno_2" &&
+  test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2") || { (exit 1); exit 1; }
+
+_ASEOF
+}; then
+  break
+fi
+
+fi
+
+      done
+
+      if test "x$CONFIG_SHELL" != x; then
+  for as_var in BASH_ENV ENV
+        do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
+        done
+        export CONFIG_SHELL
+        exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"}
+fi
+
+
+    if test $as_have_required = no; then
+  echo This script requires a shell more modern than all the
+      echo shells that I found on your system.  Please install a
+      echo modern shell, or manually run the script under such a
+      echo shell if you do have one.
+      { (exit 1); exit 1; }
+fi
+
+
+fi
+
+fi
+
+
+
+(eval "as_func_return () {
+  (exit \$1)
+}
+as_func_success () {
+  as_func_return 0
+}
+as_func_failure () {
+  as_func_return 1
+}
+as_func_ret_success () {
+  return 0
+}
+as_func_ret_failure () {
+  return 1
+}
+
+exitcode=0
+if as_func_success; then
+  :
+else
+  exitcode=1
+  echo as_func_success failed.
+fi
+
+if as_func_failure; then
+  exitcode=1
+  echo as_func_failure succeeded.
+fi
+
+if as_func_ret_success; then
+  :
+else
+  exitcode=1
+  echo as_func_ret_success failed.
+fi
+
+if as_func_ret_failure; then
+  exitcode=1
+  echo as_func_ret_failure succeeded.
+fi
+
+if ( set x; as_func_ret_success y && test x = \"\$1\" ); then
+  :
+else
+  exitcode=1
+  echo positional parameters were not saved.
+fi
+
+test \$exitcode = 0") || {
+  echo No shell found that supports shell functions.
+  echo Please tell autoconf@gnu.org about your system,
+  echo including any error possibly output before this
+  echo message
+}
+
+
+
+  as_lineno_1=$LINENO
+  as_lineno_2=$LINENO
+  test "x$as_lineno_1" != "x$as_lineno_2" &&
+  test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || {
+
+  # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
+  # uniformly replaced by the line number.  The first 'sed' inserts a
+  # line-number line after each line using $LINENO; the second 'sed'
+  # does the real work.  The second script uses 'N' to pair each
+  # line-number line with the line containing $LINENO, and appends
+  # trailing '-' during substitution so that $LINENO is not a special
+  # case at line end.
+  # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
+  # scripts with optimization help from Paolo Bonzini.  Blame Lee
+  # E. McMahon (1931-1989) for sed's syntax.  :-)
+  sed -n '
+    p
+    /[$]LINENO/=
+  ' <$as_myself |
+    sed '
+      s/[$]LINENO.*/&-/
+      t lineno
+      b
+      :lineno
+      N
+      :loop
+      s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
+      t loop
+      s/-\n.*//
+    ' >$as_me.lineno &&
+  chmod +x "$as_me.lineno" ||
+    { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
+   { (exit 1); exit 1; }; }
+
+  # Don't try to exec as it changes $[0], causing all sort of problems
+  # (the dirname of $[0] is not the place where we might find the
+  # original and so on.  Autoconf is especially sensitive to this).
+  . "./$as_me.lineno"
+  # Exit status is that of the last command.
+  exit
+}
+
+
+if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
+  as_dirname=dirname
+else
+  as_dirname=false
+fi
+
+ECHO_C= ECHO_N= ECHO_T=
+case `echo -n x` in
+-n*)
+  case `echo 'x\c'` in
+  *c*) ECHO_T='	';;	# ECHO_T is single tab character.
+  *)   ECHO_C='\c';;
+  esac;;
+*)
+  ECHO_N='-n';;
+esac
+
+if expr a : '\(a\)' >/dev/null 2>&1 &&
+   test "X`expr 00001 : '.*\(...\)'`" = X001; then
+  as_expr=expr
+else
+  as_expr=false
+fi
+
+rm -f conf$$ conf$$.exe conf$$.file
+if test -d conf$$.dir; then
+  rm -f conf$$.dir/conf$$.file
+else
+  rm -f conf$$.dir
+  mkdir conf$$.dir
+fi
+echo >conf$$.file
+if ln -s conf$$.file conf$$ 2>/dev/null; then
+  as_ln_s='ln -s'
+  # ... but there are two gotchas:
+  # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
+  # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
+  # In both cases, we have to default to `cp -p'.
+  ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
+    as_ln_s='cp -p'
+elif ln conf$$.file conf$$ 2>/dev/null; then
+  as_ln_s=ln
+else
+  as_ln_s='cp -p'
+fi
+rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
+rmdir conf$$.dir 2>/dev/null
+
+if mkdir -p . 2>/dev/null; then
+  as_mkdir_p=:
+else
+  test -d ./-p && rmdir ./-p
+  as_mkdir_p=false
+fi
+
+if test -x / >/dev/null 2>&1; then
+  as_test_x='test -x'
+else
+  if ls -dL / >/dev/null 2>&1; then
+    as_ls_L_option=L
+  else
+    as_ls_L_option=
+  fi
+  as_test_x='
+    eval sh -c '\''
+      if test -d "$1"; then
+        test -d "$1/.";
+      else
+	case $1 in
+        -*)set "./$1";;
+	esac;
+	case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
+	???[sx]*):;;*)false;;esac;fi
+    '\'' sh
+  '
+fi
+as_executable_p=$as_test_x
+
+# Sed expression to map a string onto a valid CPP name.
+as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
+
+# Sed expression to map a string onto a valid variable name.
+as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
+
+
+
+exec 7<&0 </dev/null 6>&1
+
+# Name of the host.
+# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
+# so uname gets run too.
+ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
+
+#
+# Initializations.
+#
+ac_default_prefix=/usr/local
+ac_clean_files=
+ac_config_libobj_dir=.
+LIBOBJS=
+cross_compiling=no
+subdirs=
+MFLAGS=
+MAKEFLAGS=
+SHELL=${CONFIG_SHELL-/bin/sh}
+
+# Identity of this package.
+PACKAGE_NAME='Haskell CUDA bindings'
+PACKAGE_TARNAME='cuda'
+PACKAGE_VERSION='0.4.0.0'
+PACKAGE_STRING='Haskell CUDA bindings 0.4.0.0'
+PACKAGE_BUGREPORT='tmcdonell@cse.unsw.edu.au'
+
+ac_unique_file="Foreign/CUDA.hs"
+# Factoring default headers for most tests.
+ac_includes_default="\
+#include <stdio.h>
+#ifdef HAVE_SYS_TYPES_H
+# include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_STAT_H
+# include <sys/stat.h>
+#endif
+#ifdef STDC_HEADERS
+# include <stdlib.h>
+# include <stddef.h>
+#else
+# ifdef HAVE_STDLIB_H
+#  include <stdlib.h>
+# endif
+#endif
+#ifdef HAVE_STRING_H
+# if !defined STDC_HEADERS && defined HAVE_MEMORY_H
+#  include <memory.h>
+# endif
+# include <string.h>
+#endif
+#ifdef HAVE_STRINGS_H
+# include <strings.h>
+#endif
+#ifdef HAVE_INTTYPES_H
+# include <inttypes.h>
+#endif
+#ifdef HAVE_STDINT_H
+# include <stdint.h>
+#endif
+#ifdef HAVE_UNISTD_H
+# include <unistd.h>
+#endif"
+
+ac_subst_vars='SHELL
+PATH_SEPARATOR
+PACKAGE_NAME
+PACKAGE_TARNAME
+PACKAGE_VERSION
+PACKAGE_STRING
+PACKAGE_BUGREPORT
+exec_prefix
+prefix
+program_transform_name
+bindir
+sbindir
+libexecdir
+datarootdir
+datadir
+sysconfdir
+sharedstatedir
+localstatedir
+includedir
+oldincludedir
+docdir
+infodir
+htmldir
+dvidir
+pdfdir
+psdir
+libdir
+localedir
+mandir
+DEFS
+ECHO_C
+ECHO_N
+ECHO_T
+LIBS
+build_alias
+host_alias
+target_alias
+CC
+CFLAGS
+LDFLAGS
+CPPFLAGS
+ac_ct_CC
+EXEEXT
+OBJEXT
+build
+build_cpu
+build_vendor
+build_os
+host
+host_cpu
+host_vendor
+host_os
+target
+target_cpu
+target_vendor
+target_os
+NVCC
+CPP
+GREP
+EGREP
+cuda_cppflags
+cuda_ldflags
+cuda_c2hsflags
+LIBOBJS
+LTLIBOBJS'
+ac_subst_files=''
+      ac_precious_vars='build_alias
+host_alias
+target_alias
+CC
+CFLAGS
+LDFLAGS
+LIBS
+CPPFLAGS
+CPP'
+
+
+# Initialize some variables set by options.
+ac_init_help=
+ac_init_version=false
+# The variables have the same names as the options, with
+# dashes changed to underlines.
+cache_file=/dev/null
+exec_prefix=NONE
+no_create=
+no_recursion=
+prefix=NONE
+program_prefix=NONE
+program_suffix=NONE
+program_transform_name=s,x,x,
+silent=
+site=
+srcdir=
+verbose=
+x_includes=NONE
+x_libraries=NONE
+
+# Installation directory options.
+# These are left unexpanded so users can "make install exec_prefix=/foo"
+# and all the variables that are supposed to be based on exec_prefix
+# by default will actually change.
+# Use braces instead of parens because sh, perl, etc. also accept them.
+# (The list follows the same order as the GNU Coding Standards.)
+bindir='${exec_prefix}/bin'
+sbindir='${exec_prefix}/sbin'
+libexecdir='${exec_prefix}/libexec'
+datarootdir='${prefix}/share'
+datadir='${datarootdir}'
+sysconfdir='${prefix}/etc'
+sharedstatedir='${prefix}/com'
+localstatedir='${prefix}/var'
+includedir='${prefix}/include'
+oldincludedir='/usr/include'
+docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
+infodir='${datarootdir}/info'
+htmldir='${docdir}'
+dvidir='${docdir}'
+pdfdir='${docdir}'
+psdir='${docdir}'
+libdir='${exec_prefix}/lib'
+localedir='${datarootdir}/locale'
+mandir='${datarootdir}/man'
+
+ac_prev=
+ac_dashdash=
+for ac_option
+do
+  # If the previous option needs an argument, assign it.
+  if test -n "$ac_prev"; then
+    eval $ac_prev=\$ac_option
+    ac_prev=
+    continue
+  fi
+
+  case $ac_option in
+  *=*)	ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
+  *)	ac_optarg=yes ;;
+  esac
+
+  # Accept the important Cygnus configure options, so we can diagnose typos.
+
+  case $ac_dashdash$ac_option in
+  --)
+    ac_dashdash=yes ;;
+
+  -bindir | --bindir | --bindi | --bind | --bin | --bi)
+    ac_prev=bindir ;;
+  -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
+    bindir=$ac_optarg ;;
+
+  -build | --build | --buil | --bui | --bu)
+    ac_prev=build_alias ;;
+  -build=* | --build=* | --buil=* | --bui=* | --bu=*)
+    build_alias=$ac_optarg ;;
+
+  -cache-file | --cache-file | --cache-fil | --cache-fi \
+  | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
+    ac_prev=cache_file ;;
+  -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
+  | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
+    cache_file=$ac_optarg ;;
+
+  --config-cache | -C)
+    cache_file=config.cache ;;
+
+  -datadir | --datadir | --datadi | --datad)
+    ac_prev=datadir ;;
+  -datadir=* | --datadir=* | --datadi=* | --datad=*)
+    datadir=$ac_optarg ;;
+
+  -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
+  | --dataroo | --dataro | --datar)
+    ac_prev=datarootdir ;;
+  -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
+  | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
+    datarootdir=$ac_optarg ;;
+
+  -disable-* | --disable-*)
+    ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
+    # Reject names that are not valid shell variable names.
+    expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid feature name: $ac_feature" >&2
+   { (exit 1); exit 1; }; }
+    ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'`
+    eval enable_$ac_feature=no ;;
+
+  -docdir | --docdir | --docdi | --doc | --do)
+    ac_prev=docdir ;;
+  -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)
+    docdir=$ac_optarg ;;
+
+  -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)
+    ac_prev=dvidir ;;
+  -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)
+    dvidir=$ac_optarg ;;
+
+  -enable-* | --enable-*)
+    ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
+    # Reject names that are not valid shell variable names.
+    expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid feature name: $ac_feature" >&2
+   { (exit 1); exit 1; }; }
+    ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'`
+    eval enable_$ac_feature=\$ac_optarg ;;
+
+  -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
+  | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
+  | --exec | --exe | --ex)
+    ac_prev=exec_prefix ;;
+  -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
+  | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
+  | --exec=* | --exe=* | --ex=*)
+    exec_prefix=$ac_optarg ;;
+
+  -gas | --gas | --ga | --g)
+    # Obsolete; use --with-gas.
+    with_gas=yes ;;
+
+  -help | --help | --hel | --he | -h)
+    ac_init_help=long ;;
+  -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
+    ac_init_help=recursive ;;
+  -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
+    ac_init_help=short ;;
+
+  -host | --host | --hos | --ho)
+    ac_prev=host_alias ;;
+  -host=* | --host=* | --hos=* | --ho=*)
+    host_alias=$ac_optarg ;;
+
+  -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)
+    ac_prev=htmldir ;;
+  -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \
+  | --ht=*)
+    htmldir=$ac_optarg ;;
+
+  -includedir | --includedir | --includedi | --included | --include \
+  | --includ | --inclu | --incl | --inc)
+    ac_prev=includedir ;;
+  -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
+  | --includ=* | --inclu=* | --incl=* | --inc=*)
+    includedir=$ac_optarg ;;
+
+  -infodir | --infodir | --infodi | --infod | --info | --inf)
+    ac_prev=infodir ;;
+  -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
+    infodir=$ac_optarg ;;
+
+  -libdir | --libdir | --libdi | --libd)
+    ac_prev=libdir ;;
+  -libdir=* | --libdir=* | --libdi=* | --libd=*)
+    libdir=$ac_optarg ;;
+
+  -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
+  | --libexe | --libex | --libe)
+    ac_prev=libexecdir ;;
+  -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
+  | --libexe=* | --libex=* | --libe=*)
+    libexecdir=$ac_optarg ;;
+
+  -localedir | --localedir | --localedi | --localed | --locale)
+    ac_prev=localedir ;;
+  -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
+    localedir=$ac_optarg ;;
+
+  -localstatedir | --localstatedir | --localstatedi | --localstated \
+  | --localstate | --localstat | --localsta | --localst | --locals)
+    ac_prev=localstatedir ;;
+  -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
+  | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)
+    localstatedir=$ac_optarg ;;
+
+  -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
+    ac_prev=mandir ;;
+  -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
+    mandir=$ac_optarg ;;
+
+  -nfp | --nfp | --nf)
+    # Obsolete; use --without-fp.
+    with_fp=no ;;
+
+  -no-create | --no-create | --no-creat | --no-crea | --no-cre \
+  | --no-cr | --no-c | -n)
+    no_create=yes ;;
+
+  -no-recursion | --no-recursion | --no-recursio | --no-recursi \
+  | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
+    no_recursion=yes ;;
+
+  -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
+  | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
+  | --oldin | --oldi | --old | --ol | --o)
+    ac_prev=oldincludedir ;;
+  -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
+  | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
+  | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
+    oldincludedir=$ac_optarg ;;
+
+  -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
+    ac_prev=prefix ;;
+  -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
+    prefix=$ac_optarg ;;
+
+  -program-prefix | --program-prefix | --program-prefi | --program-pref \
+  | --program-pre | --program-pr | --program-p)
+    ac_prev=program_prefix ;;
+  -program-prefix=* | --program-prefix=* | --program-prefi=* \
+  | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
+    program_prefix=$ac_optarg ;;
+
+  -program-suffix | --program-suffix | --program-suffi | --program-suff \
+  | --program-suf | --program-su | --program-s)
+    ac_prev=program_suffix ;;
+  -program-suffix=* | --program-suffix=* | --program-suffi=* \
+  | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
+    program_suffix=$ac_optarg ;;
+
+  -program-transform-name | --program-transform-name \
+  | --program-transform-nam | --program-transform-na \
+  | --program-transform-n | --program-transform- \
+  | --program-transform | --program-transfor \
+  | --program-transfo | --program-transf \
+  | --program-trans | --program-tran \
+  | --progr-tra | --program-tr | --program-t)
+    ac_prev=program_transform_name ;;
+  -program-transform-name=* | --program-transform-name=* \
+  | --program-transform-nam=* | --program-transform-na=* \
+  | --program-transform-n=* | --program-transform-=* \
+  | --program-transform=* | --program-transfor=* \
+  | --program-transfo=* | --program-transf=* \
+  | --program-trans=* | --program-tran=* \
+  | --progr-tra=* | --program-tr=* | --program-t=*)
+    program_transform_name=$ac_optarg ;;
+
+  -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)
+    ac_prev=pdfdir ;;
+  -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)
+    pdfdir=$ac_optarg ;;
+
+  -psdir | --psdir | --psdi | --psd | --ps)
+    ac_prev=psdir ;;
+  -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)
+    psdir=$ac_optarg ;;
+
+  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
+  | -silent | --silent | --silen | --sile | --sil)
+    silent=yes ;;
+
+  -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
+    ac_prev=sbindir ;;
+  -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
+  | --sbi=* | --sb=*)
+    sbindir=$ac_optarg ;;
+
+  -sharedstatedir | --sharedstatedir | --sharedstatedi \
+  | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
+  | --sharedst | --shareds | --shared | --share | --shar \
+  | --sha | --sh)
+    ac_prev=sharedstatedir ;;
+  -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
+  | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
+  | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
+  | --sha=* | --sh=*)
+    sharedstatedir=$ac_optarg ;;
+
+  -site | --site | --sit)
+    ac_prev=site ;;
+  -site=* | --site=* | --sit=*)
+    site=$ac_optarg ;;
+
+  -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
+    ac_prev=srcdir ;;
+  -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
+    srcdir=$ac_optarg ;;
+
+  -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
+  | --syscon | --sysco | --sysc | --sys | --sy)
+    ac_prev=sysconfdir ;;
+  -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
+  | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
+    sysconfdir=$ac_optarg ;;
+
+  -target | --target | --targe | --targ | --tar | --ta | --t)
+    ac_prev=target_alias ;;
+  -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
+    target_alias=$ac_optarg ;;
+
+  -v | -verbose | --verbose | --verbos | --verbo | --verb)
+    verbose=yes ;;
+
+  -version | --version | --versio | --versi | --vers | -V)
+    ac_init_version=: ;;
+
+  -with-* | --with-*)
+    ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
+    # Reject names that are not valid shell variable names.
+    expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid package name: $ac_package" >&2
+   { (exit 1); exit 1; }; }
+    ac_package=`echo $ac_package | sed 's/[-.]/_/g'`
+    eval with_$ac_package=\$ac_optarg ;;
+
+  -without-* | --without-*)
+    ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'`
+    # Reject names that are not valid shell variable names.
+    expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid package name: $ac_package" >&2
+   { (exit 1); exit 1; }; }
+    ac_package=`echo $ac_package | sed 's/[-.]/_/g'`
+    eval with_$ac_package=no ;;
+
+  --x)
+    # Obsolete; use --with-x.
+    with_x=yes ;;
+
+  -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
+  | --x-incl | --x-inc | --x-in | --x-i)
+    ac_prev=x_includes ;;
+  -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
+  | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
+    x_includes=$ac_optarg ;;
+
+  -x-libraries | --x-libraries | --x-librarie | --x-librari \
+  | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
+    ac_prev=x_libraries ;;
+  -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
+  | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
+    x_libraries=$ac_optarg ;;
+
+  -*) { echo "$as_me: error: unrecognized option: $ac_option
+Try \`$0 --help' for more information." >&2
+   { (exit 1); exit 1; }; }
+    ;;
+
+  *=*)
+    ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
+    # Reject names that are not valid shell variable names.
+    expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid variable name: $ac_envvar" >&2
+   { (exit 1); exit 1; }; }
+    eval $ac_envvar=\$ac_optarg
+    export $ac_envvar ;;
+
+  *)
+    # FIXME: should be removed in autoconf 3.0.
+    echo "$as_me: WARNING: you should use --build, --host, --target" >&2
+    expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
+      echo "$as_me: WARNING: invalid host type: $ac_option" >&2
+    : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
+    ;;
+
+  esac
+done
+
+if test -n "$ac_prev"; then
+  ac_option=--`echo $ac_prev | sed 's/_/-/g'`
+  { echo "$as_me: error: missing argument to $ac_option" >&2
+   { (exit 1); exit 1; }; }
+fi
+
+# Be sure to have absolute directory names.
+for ac_var in	exec_prefix prefix bindir sbindir libexecdir datarootdir \
+		datadir sysconfdir sharedstatedir localstatedir includedir \
+		oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
+		libdir localedir mandir
+do
+  eval ac_val=\$$ac_var
+  case $ac_val in
+    [\\/$]* | ?:[\\/]* )  continue;;
+    NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
+  esac
+  { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
+   { (exit 1); exit 1; }; }
+done
+
+# There might be people who depend on the old broken behavior: `$host'
+# used to hold the argument of --host etc.
+# FIXME: To remove some day.
+build=$build_alias
+host=$host_alias
+target=$target_alias
+
+# FIXME: To remove some day.
+if test "x$host_alias" != x; then
+  if test "x$build_alias" = x; then
+    cross_compiling=maybe
+    echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
+    If a cross compiler is detected then cross compile mode will be used." >&2
+  elif test "x$build_alias" != "x$host_alias"; then
+    cross_compiling=yes
+  fi
+fi
+
+ac_tool_prefix=
+test -n "$host_alias" && ac_tool_prefix=$host_alias-
+
+test "$silent" = yes && exec 6>/dev/null
+
+
+ac_pwd=`pwd` && test -n "$ac_pwd" &&
+ac_ls_di=`ls -di .` &&
+ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
+  { echo "$as_me: error: Working directory cannot be determined" >&2
+   { (exit 1); exit 1; }; }
+test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
+  { echo "$as_me: error: pwd does not report name of working directory" >&2
+   { (exit 1); exit 1; }; }
+
+
+# Find the source files, if location was not specified.
+if test -z "$srcdir"; then
+  ac_srcdir_defaulted=yes
+  # Try the directory containing this script, then the parent directory.
+  ac_confdir=`$as_dirname -- "$0" ||
+$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+	 X"$0" : 'X\(//\)[^/]' \| \
+	 X"$0" : 'X\(//\)$' \| \
+	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
+echo X"$0" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+	    s//\1/
+	    q
+	  }
+	  /^X\(\/\/\)[^/].*/{
+	    s//\1/
+	    q
+	  }
+	  /^X\(\/\/\)$/{
+	    s//\1/
+	    q
+	  }
+	  /^X\(\/\).*/{
+	    s//\1/
+	    q
+	  }
+	  s/.*/./; q'`
+  srcdir=$ac_confdir
+  if test ! -r "$srcdir/$ac_unique_file"; then
+    srcdir=..
+  fi
+else
+  ac_srcdir_defaulted=no
+fi
+if test ! -r "$srcdir/$ac_unique_file"; then
+  test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
+  { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2
+   { (exit 1); exit 1; }; }
+fi
+ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
+ac_abs_confdir=`(
+	cd "$srcdir" && test -r "./$ac_unique_file" || { echo "$as_me: error: $ac_msg" >&2
+   { (exit 1); exit 1; }; }
+	pwd)`
+# When building in place, set srcdir=.
+if test "$ac_abs_confdir" = "$ac_pwd"; then
+  srcdir=.
+fi
+# Remove unnecessary trailing slashes from srcdir.
+# Double slashes in file names in object file debugging info
+# mess up M-x gdb in Emacs.
+case $srcdir in
+*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;
+esac
+for ac_var in $ac_precious_vars; do
+  eval ac_env_${ac_var}_set=\${${ac_var}+set}
+  eval ac_env_${ac_var}_value=\$${ac_var}
+  eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}
+  eval ac_cv_env_${ac_var}_value=\$${ac_var}
+done
+
+#
+# Report the --help message.
+#
+if test "$ac_init_help" = "long"; then
+  # Omit some internal or obsolete options to make the list less imposing.
+  # This message is too long to be a string in the A/UX 3.1 sh.
+  cat <<_ACEOF
+\`configure' configures Haskell CUDA bindings 0.4.0.0 to adapt to many kinds of systems.
+
+Usage: $0 [OPTION]... [VAR=VALUE]...
+
+To assign environment variables (e.g., CC, CFLAGS...), specify them as
+VAR=VALUE.  See below for descriptions of some of the useful variables.
+
+Defaults for the options are specified in brackets.
+
+Configuration:
+  -h, --help              display this help and exit
+      --help=short        display options specific to this package
+      --help=recursive    display the short help of all the included packages
+  -V, --version           display version information and exit
+  -q, --quiet, --silent   do not print \`checking...' messages
+      --cache-file=FILE   cache test results in FILE [disabled]
+  -C, --config-cache      alias for \`--cache-file=config.cache'
+  -n, --no-create         do not create output files
+      --srcdir=DIR        find the sources in DIR [configure dir or \`..']
+
+Installation directories:
+  --prefix=PREFIX         install architecture-independent files in PREFIX
+			  [$ac_default_prefix]
+  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
+			  [PREFIX]
+
+By default, \`make install' will install all the files in
+\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc.  You can specify
+an installation prefix other than \`$ac_default_prefix' using \`--prefix',
+for instance \`--prefix=\$HOME'.
+
+For better control, use the options below.
+
+Fine tuning of the installation directories:
+  --bindir=DIR           user executables [EPREFIX/bin]
+  --sbindir=DIR          system admin executables [EPREFIX/sbin]
+  --libexecdir=DIR       program executables [EPREFIX/libexec]
+  --sysconfdir=DIR       read-only single-machine data [PREFIX/etc]
+  --sharedstatedir=DIR   modifiable architecture-independent data [PREFIX/com]
+  --localstatedir=DIR    modifiable single-machine data [PREFIX/var]
+  --libdir=DIR           object code libraries [EPREFIX/lib]
+  --includedir=DIR       C header files [PREFIX/include]
+  --oldincludedir=DIR    C header files for non-gcc [/usr/include]
+  --datarootdir=DIR      read-only arch.-independent data root [PREFIX/share]
+  --datadir=DIR          read-only architecture-independent data [DATAROOTDIR]
+  --infodir=DIR          info documentation [DATAROOTDIR/info]
+  --localedir=DIR        locale-dependent data [DATAROOTDIR/locale]
+  --mandir=DIR           man documentation [DATAROOTDIR/man]
+  --docdir=DIR           documentation root [DATAROOTDIR/doc/cuda]
+  --htmldir=DIR          html documentation [DOCDIR]
+  --dvidir=DIR           dvi documentation [DOCDIR]
+  --pdfdir=DIR           pdf documentation [DOCDIR]
+  --psdir=DIR            ps documentation [DOCDIR]
+_ACEOF
+
+  cat <<\_ACEOF
+
+System types:
+  --build=BUILD     configure for building on BUILD [guessed]
+  --host=HOST       cross-compile to build programs to run on HOST [BUILD]
+  --target=TARGET   configure for building compilers for TARGET [HOST]
+_ACEOF
+fi
+
+if test -n "$ac_init_help"; then
+  case $ac_init_help in
+     short | recursive ) echo "Configuration of Haskell CUDA bindings 0.4.0.0:";;
+   esac
+  cat <<\_ACEOF
+
+Some influential environment variables:
+  CC          C compiler command
+  CFLAGS      C compiler flags
+  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
+              nonstandard directory <lib dir>
+  LIBS        libraries to pass to the linker, e.g. -l<library>
+  CPPFLAGS    C/C++/Objective C preprocessor flags, e.g. -I<include dir> if
+              you have headers in a nonstandard directory <include dir>
+  CPP         C preprocessor
+
+Use these variables to override the choices made by `configure' or to help
+it to find libraries and programs with nonstandard names/locations.
+
+Report bugs to <tmcdonell@cse.unsw.edu.au>.
+_ACEOF
+ac_status=$?
+fi
+
+if test "$ac_init_help" = "recursive"; then
+  # If there are subdirs, report their specific --help.
+  for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
+    test -d "$ac_dir" || continue
+    ac_builddir=.
+
+case "$ac_dir" in
+.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
+*)
+  ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
+  # A ".." for each directory in $ac_dir_suffix.
+  ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'`
+  case $ac_top_builddir_sub in
+  "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
+  *)  ac_top_build_prefix=$ac_top_builddir_sub/ ;;
+  esac ;;
+esac
+ac_abs_top_builddir=$ac_pwd
+ac_abs_builddir=$ac_pwd$ac_dir_suffix
+# for backward compatibility:
+ac_top_builddir=$ac_top_build_prefix
+
+case $srcdir in
+  .)  # We are building in place.
+    ac_srcdir=.
+    ac_top_srcdir=$ac_top_builddir_sub
+    ac_abs_top_srcdir=$ac_pwd ;;
+  [\\/]* | ?:[\\/]* )  # Absolute name.
+    ac_srcdir=$srcdir$ac_dir_suffix;
+    ac_top_srcdir=$srcdir
+    ac_abs_top_srcdir=$srcdir ;;
+  *) # Relative name.
+    ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
+    ac_top_srcdir=$ac_top_build_prefix$srcdir
+    ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
+esac
+ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
+
+    cd "$ac_dir" || { ac_status=$?; continue; }
+    # Check for guested configure.
+    if test -f "$ac_srcdir/configure.gnu"; then
+      echo &&
+      $SHELL "$ac_srcdir/configure.gnu" --help=recursive
+    elif test -f "$ac_srcdir/configure"; then
+      echo &&
+      $SHELL "$ac_srcdir/configure" --help=recursive
+    else
+      echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
+    fi || ac_status=$?
+    cd "$ac_pwd" || { ac_status=$?; break; }
+  done
+fi
+
+test -n "$ac_init_help" && exit $ac_status
+if $ac_init_version; then
+  cat <<\_ACEOF
+Haskell CUDA bindings configure 0.4.0.0
+generated by GNU Autoconf 2.61
+
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
+2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+This configure script is free software; the Free Software Foundation
+gives unlimited permission to copy, distribute and modify it.
+_ACEOF
+  exit
+fi
+cat >config.log <<_ACEOF
+This file contains any messages produced by compilers while
+running configure, to aid debugging if configure makes a mistake.
+
+It was created by Haskell CUDA bindings $as_me 0.4.0.0, which was
+generated by GNU Autoconf 2.61.  Invocation command line was
+
+  $ $0 $@
+
+_ACEOF
+exec 5>>config.log
+{
+cat <<_ASUNAME
+## --------- ##
+## Platform. ##
+## --------- ##
+
+hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
+uname -m = `(uname -m) 2>/dev/null || echo unknown`
+uname -r = `(uname -r) 2>/dev/null || echo unknown`
+uname -s = `(uname -s) 2>/dev/null || echo unknown`
+uname -v = `(uname -v) 2>/dev/null || echo unknown`
+
+/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
+/bin/uname -X     = `(/bin/uname -X) 2>/dev/null     || echo unknown`
+
+/bin/arch              = `(/bin/arch) 2>/dev/null              || echo unknown`
+/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null       || echo unknown`
+/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
+/usr/bin/hostinfo      = `(/usr/bin/hostinfo) 2>/dev/null      || echo unknown`
+/bin/machine           = `(/bin/machine) 2>/dev/null           || echo unknown`
+/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null       || echo unknown`
+/bin/universe          = `(/bin/universe) 2>/dev/null          || echo unknown`
+
+_ASUNAME
+
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  echo "PATH: $as_dir"
+done
+IFS=$as_save_IFS
+
+} >&5
+
+cat >&5 <<_ACEOF
+
+
+## ----------- ##
+## Core tests. ##
+## ----------- ##
+
+_ACEOF
+
+
+# Keep a trace of the command line.
+# Strip out --no-create and --no-recursion so they do not pile up.
+# Strip out --silent because we don't want to record it for future runs.
+# Also quote any args containing shell meta-characters.
+# Make two passes to allow for proper duplicate-argument suppression.
+ac_configure_args=
+ac_configure_args0=
+ac_configure_args1=
+ac_must_keep_next=false
+for ac_pass in 1 2
+do
+  for ac_arg
+  do
+    case $ac_arg in
+    -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
+    -q | -quiet | --quiet | --quie | --qui | --qu | --q \
+    | -silent | --silent | --silen | --sile | --sil)
+      continue ;;
+    *\'*)
+      ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
+    esac
+    case $ac_pass in
+    1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;;
+    2)
+      ac_configure_args1="$ac_configure_args1 '$ac_arg'"
+      if test $ac_must_keep_next = true; then
+	ac_must_keep_next=false # Got value, back to normal.
+      else
+	case $ac_arg in
+	  *=* | --config-cache | -C | -disable-* | --disable-* \
+	  | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
+	  | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
+	  | -with-* | --with-* | -without-* | --without-* | --x)
+	    case "$ac_configure_args0 " in
+	      "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
+	    esac
+	    ;;
+	  -* ) ac_must_keep_next=true ;;
+	esac
+      fi
+      ac_configure_args="$ac_configure_args '$ac_arg'"
+      ;;
+    esac
+  done
+done
+$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; }
+$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; }
+
+# When interrupted or exit'd, cleanup temporary files, and complete
+# config.log.  We remove comments because anyway the quotes in there
+# would cause problems or look ugly.
+# WARNING: Use '\'' to represent an apostrophe within the trap.
+# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
+trap 'exit_status=$?
+  # Save into config.log some information that might help in debugging.
+  {
+    echo
+
+    cat <<\_ASBOX
+## ---------------- ##
+## Cache variables. ##
+## ---------------- ##
+_ASBOX
+    echo
+    # The following way of writing the cache mishandles newlines in values,
+(
+  for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do
+    eval ac_val=\$$ac_var
+    case $ac_val in #(
+    *${as_nl}*)
+      case $ac_var in #(
+      *_cv_*) { echo "$as_me:$LINENO: WARNING: Cache variable $ac_var contains a newline." >&5
+echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;;
+      esac
+      case $ac_var in #(
+      _ | IFS | as_nl) ;; #(
+      *) $as_unset $ac_var ;;
+      esac ;;
+    esac
+  done
+  (set) 2>&1 |
+    case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(
+    *${as_nl}ac_space=\ *)
+      sed -n \
+	"s/'\''/'\''\\\\'\'''\''/g;
+	  s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"
+      ;; #(
+    *)
+      sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
+      ;;
+    esac |
+    sort
+)
+    echo
+
+    cat <<\_ASBOX
+## ----------------- ##
+## Output variables. ##
+## ----------------- ##
+_ASBOX
+    echo
+    for ac_var in $ac_subst_vars
+    do
+      eval ac_val=\$$ac_var
+      case $ac_val in
+      *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
+      esac
+      echo "$ac_var='\''$ac_val'\''"
+    done | sort
+    echo
+
+    if test -n "$ac_subst_files"; then
+      cat <<\_ASBOX
+## ------------------- ##
+## File substitutions. ##
+## ------------------- ##
+_ASBOX
+      echo
+      for ac_var in $ac_subst_files
+      do
+	eval ac_val=\$$ac_var
+	case $ac_val in
+	*\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
+	esac
+	echo "$ac_var='\''$ac_val'\''"
+      done | sort
+      echo
+    fi
+
+    if test -s confdefs.h; then
+      cat <<\_ASBOX
+## ----------- ##
+## confdefs.h. ##
+## ----------- ##
+_ASBOX
+      echo
+      cat confdefs.h
+      echo
+    fi
+    test "$ac_signal" != 0 &&
+      echo "$as_me: caught signal $ac_signal"
+    echo "$as_me: exit $exit_status"
+  } >&5
+  rm -f core *.core core.conftest.* &&
+    rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
+    exit $exit_status
+' 0
+for ac_signal in 1 2 13 15; do
+  trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
+done
+ac_signal=0
+
+# confdefs.h avoids OS command line length limits that DEFS can exceed.
+rm -f -r conftest* confdefs.h
+
+# Predefined preprocessor variables.
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_NAME "$PACKAGE_NAME"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_VERSION "$PACKAGE_VERSION"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_STRING "$PACKAGE_STRING"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
+_ACEOF
+
+
+# Let the site file select an alternate cache file if it wants to.
+# Prefer explicitly selected file to automatically selected ones.
+if test -n "$CONFIG_SITE"; then
+  set x "$CONFIG_SITE"
+elif test "x$prefix" != xNONE; then
+  set x "$prefix/share/config.site" "$prefix/etc/config.site"
+else
+  set x "$ac_default_prefix/share/config.site" \
+	"$ac_default_prefix/etc/config.site"
+fi
+shift
+for ac_site_file
+do
+  if test -r "$ac_site_file"; then
+    { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5
+echo "$as_me: loading site script $ac_site_file" >&6;}
+    sed 's/^/| /' "$ac_site_file" >&5
+    . "$ac_site_file"
+  fi
+done
+
+if test -r "$cache_file"; then
+  # Some versions of bash will fail to source /dev/null (special
+  # files actually), so we avoid doing that.
+  if test -f "$cache_file"; then
+    { echo "$as_me:$LINENO: loading cache $cache_file" >&5
+echo "$as_me: loading cache $cache_file" >&6;}
+    case $cache_file in
+      [\\/]* | ?:[\\/]* ) . "$cache_file";;
+      *)                      . "./$cache_file";;
+    esac
+  fi
+else
+  { echo "$as_me:$LINENO: creating cache $cache_file" >&5
+echo "$as_me: creating cache $cache_file" >&6;}
+  >$cache_file
+fi
+
+# Check that the precious variables saved in the cache have kept the same
+# value.
+ac_cache_corrupted=false
+for ac_var in $ac_precious_vars; do
+  eval ac_old_set=\$ac_cv_env_${ac_var}_set
+  eval ac_new_set=\$ac_env_${ac_var}_set
+  eval ac_old_val=\$ac_cv_env_${ac_var}_value
+  eval ac_new_val=\$ac_env_${ac_var}_value
+  case $ac_old_set,$ac_new_set in
+    set,)
+      { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
+echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
+      ac_cache_corrupted=: ;;
+    ,set)
+      { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5
+echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
+      ac_cache_corrupted=: ;;
+    ,);;
+    *)
+      if test "x$ac_old_val" != "x$ac_new_val"; then
+	{ echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5
+echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
+	{ echo "$as_me:$LINENO:   former value:  $ac_old_val" >&5
+echo "$as_me:   former value:  $ac_old_val" >&2;}
+	{ echo "$as_me:$LINENO:   current value: $ac_new_val" >&5
+echo "$as_me:   current value: $ac_new_val" >&2;}
+	ac_cache_corrupted=:
+      fi;;
+  esac
+  # Pass precious variables to config.status.
+  if test "$ac_new_set" = set; then
+    case $ac_new_val in
+    *\'*) ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
+    *) ac_arg=$ac_var=$ac_new_val ;;
+    esac
+    case " $ac_configure_args " in
+      *" '$ac_arg' "*) ;; # Avoid dups.  Use of quotes ensures accuracy.
+      *) ac_configure_args="$ac_configure_args '$ac_arg'" ;;
+    esac
+  fi
+done
+if $ac_cache_corrupted; then
+  { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5
+echo "$as_me: error: changes in the environment can compromise the build" >&2;}
+  { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
+echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+
+
+ac_config_files="$ac_config_files cuda.buildinfo"
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
+set dummy ${ac_tool_prefix}gcc; ac_word=$2
+{ echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+if test "${ac_cv_prog_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+    ac_cv_prog_CC="${ac_tool_prefix}gcc"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  { echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6; }
+else
+  { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_CC"; then
+  ac_ct_CC=$CC
+  # Extract the first word of "gcc", so it can be a program name with args.
+set dummy gcc; ac_word=$2
+{ echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_CC"; then
+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+    ac_cv_prog_ac_ct_CC="gcc"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+  { echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6; }
+else
+  { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
+fi
+
+  if test "x$ac_ct_CC" = x; then
+    CC=""
+  else
+    case $cross_compiling:$ac_tool_warned in
+yes:)
+{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools
+whose name does not start with the host triplet.  If you think this
+configuration is useful to you, please write to autoconf@gnu.org." >&5
+echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools
+whose name does not start with the host triplet.  If you think this
+configuration is useful to you, please write to autoconf@gnu.org." >&2;}
+ac_tool_warned=yes ;;
+esac
+    CC=$ac_ct_CC
+  fi
+else
+  CC="$ac_cv_prog_CC"
+fi
+
+if test -z "$CC"; then
+          if test -n "$ac_tool_prefix"; then
+    # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
+set dummy ${ac_tool_prefix}cc; ac_word=$2
+{ echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+if test "${ac_cv_prog_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+    ac_cv_prog_CC="${ac_tool_prefix}cc"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  { echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6; }
+else
+  { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
+fi
+
+
+  fi
+fi
+if test -z "$CC"; then
+  # Extract the first word of "cc", so it can be a program name with args.
+set dummy cc; ac_word=$2
+{ echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+if test "${ac_cv_prog_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+  ac_prog_rejected=no
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+    if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
+       ac_prog_rejected=yes
+       continue
+     fi
+    ac_cv_prog_CC="cc"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+IFS=$as_save_IFS
+
+if test $ac_prog_rejected = yes; then
+  # We found a bogon in the path, so make sure we never use it.
+  set dummy $ac_cv_prog_CC
+  shift
+  if test $# != 0; then
+    # We chose a different compiler from the bogus one.
+    # However, it has the same basename, so the bogon will be chosen
+    # first if we set CC to just the basename; use the full file name.
+    shift
+    ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
+  fi
+fi
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  { echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6; }
+else
+  { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
+fi
+
+
+fi
+if test -z "$CC"; then
+  if test -n "$ac_tool_prefix"; then
+  for ac_prog in cl.exe
+  do
+    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
+{ echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+if test "${ac_cv_prog_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+    ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  { echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6; }
+else
+  { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
+fi
+
+
+    test -n "$CC" && break
+  done
+fi
+if test -z "$CC"; then
+  ac_ct_CC=$CC
+  for ac_prog in cl.exe
+do
+  # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+{ echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_CC"; then
+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+    ac_cv_prog_ac_ct_CC="$ac_prog"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+  { echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6; }
+else
+  { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
+fi
+
+
+  test -n "$ac_ct_CC" && break
+done
+
+  if test "x$ac_ct_CC" = x; then
+    CC=""
+  else
+    case $cross_compiling:$ac_tool_warned in
+yes:)
+{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools
+whose name does not start with the host triplet.  If you think this
+configuration is useful to you, please write to autoconf@gnu.org." >&5
+echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools
+whose name does not start with the host triplet.  If you think this
+configuration is useful to you, please write to autoconf@gnu.org." >&2;}
+ac_tool_warned=yes ;;
+esac
+    CC=$ac_ct_CC
+  fi
+fi
+
+fi
+
+
+test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH
+See \`config.log' for more details." >&5
+echo "$as_me: error: no acceptable C compiler found in \$PATH
+See \`config.log' for more details." >&2;}
+   { (exit 1); exit 1; }; }
+
+# Provide some information about the compiler.
+echo "$as_me:$LINENO: checking for C compiler version" >&5
+ac_compiler=`set X $ac_compile; echo $2`
+{ (ac_try="$ac_compiler --version >&5"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_compiler --version >&5") 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }
+{ (ac_try="$ac_compiler -v >&5"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_compiler -v >&5") 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }
+{ (ac_try="$ac_compiler -V >&5"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_compiler -V >&5") 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }
+
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+ac_clean_files_save=$ac_clean_files
+ac_clean_files="$ac_clean_files a.out a.exe b.out"
+# Try to create an executable without -o first, disregard a.out.
+# It will help us diagnose broken compilers, and finding out an intuition
+# of exeext.
+{ echo "$as_me:$LINENO: checking for C compiler default output file name" >&5
+echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6; }
+ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
+#
+# List of possible output files, starting from the most likely.
+# The algorithm is not robust to junk in `.', hence go to wildcards (a.*)
+# only as a last resort.  b.out is created by i960 compilers.
+ac_files='a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out'
+#
+# The IRIX 6 linker writes into existing files which may not be
+# executable, retaining their permissions.  Remove them first so a
+# subsequent execution test works.
+ac_rmfiles=
+for ac_file in $ac_files
+do
+  case $ac_file in
+    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;;
+    * ) ac_rmfiles="$ac_rmfiles $ac_file";;
+  esac
+done
+rm -f $ac_rmfiles
+
+if { (ac_try="$ac_link_default"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_link_default") 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+  # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
+# So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
+# in a Makefile.  We should not override ac_cv_exeext if it was cached,
+# so that the user can short-circuit this test for compilers unknown to
+# Autoconf.
+for ac_file in $ac_files ''
+do
+  test -f "$ac_file" || continue
+  case $ac_file in
+    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj )
+	;;
+    [ab].out )
+	# We found the default executable, but exeext='' is most
+	# certainly right.
+	break;;
+    *.* )
+        if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
+	then :; else
+	   ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
+	fi
+	# We set ac_cv_exeext here because the later test for it is not
+	# safe: cross compilers may not add the suffix if given an `-o'
+	# argument, so we may need to know it at that point already.
+	# Even if this section looks crufty: it has the advantage of
+	# actually working.
+	break;;
+    * )
+	break;;
+  esac
+done
+test "$ac_cv_exeext" = no && ac_cv_exeext=
+
+else
+  ac_file=''
+fi
+
+{ echo "$as_me:$LINENO: result: $ac_file" >&5
+echo "${ECHO_T}$ac_file" >&6; }
+if test -z "$ac_file"; then
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+{ { echo "$as_me:$LINENO: error: C compiler cannot create executables
+See \`config.log' for more details." >&5
+echo "$as_me: error: C compiler cannot create executables
+See \`config.log' for more details." >&2;}
+   { (exit 77); exit 77; }; }
+fi
+
+ac_exeext=$ac_cv_exeext
+
+# Check that the compiler produces executables we can run.  If not, either
+# the compiler is broken, or we cross compile.
+{ echo "$as_me:$LINENO: checking whether the C compiler works" >&5
+echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6; }
+# FIXME: These cross compiler hacks should be removed for Autoconf 3.0
+# If not cross compiling, check that we can run a simple program.
+if test "$cross_compiling" != yes; then
+  if { ac_try='./$ac_file'
+  { (case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_try") 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+    cross_compiling=no
+  else
+    if test "$cross_compiling" = maybe; then
+	cross_compiling=yes
+    else
+	{ { echo "$as_me:$LINENO: error: cannot run C compiled programs.
+If you meant to cross compile, use \`--host'.
+See \`config.log' for more details." >&5
+echo "$as_me: error: cannot run C compiled programs.
+If you meant to cross compile, use \`--host'.
+See \`config.log' for more details." >&2;}
+   { (exit 1); exit 1; }; }
+    fi
+  fi
+fi
+{ echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6; }
+
+rm -f a.out a.exe conftest$ac_cv_exeext b.out
+ac_clean_files=$ac_clean_files_save
+# Check that the compiler produces executables we can run.  If not, either
+# the compiler is broken, or we cross compile.
+{ echo "$as_me:$LINENO: checking whether we are cross compiling" >&5
+echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6; }
+{ echo "$as_me:$LINENO: result: $cross_compiling" >&5
+echo "${ECHO_T}$cross_compiling" >&6; }
+
+{ echo "$as_me:$LINENO: checking for suffix of executables" >&5
+echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6; }
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_link") 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+  # If both `conftest.exe' and `conftest' are `present' (well, observable)
+# catch `conftest.exe'.  For instance with Cygwin, `ls conftest' will
+# work properly (i.e., refer to `conftest.exe'), while it won't with
+# `rm'.
+for ac_file in conftest.exe conftest conftest.*; do
+  test -f "$ac_file" || continue
+  case $ac_file in
+    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;;
+    *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
+	  break;;
+    * ) break;;
+  esac
+done
+else
+  { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link
+See \`config.log' for more details." >&5
+echo "$as_me: error: cannot compute suffix of executables: cannot compile and link
+See \`config.log' for more details." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+rm -f conftest$ac_cv_exeext
+{ echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5
+echo "${ECHO_T}$ac_cv_exeext" >&6; }
+
+rm -f conftest.$ac_ext
+EXEEXT=$ac_cv_exeext
+ac_exeext=$EXEEXT
+{ echo "$as_me:$LINENO: checking for suffix of object files" >&5
+echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6; }
+if test "${ac_cv_objext+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.o conftest.obj
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_compile") 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+  for ac_file in conftest.o conftest.obj conftest.*; do
+  test -f "$ac_file" || continue;
+  case $ac_file in
+    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf ) ;;
+    *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
+       break;;
+  esac
+done
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile
+See \`config.log' for more details." >&5
+echo "$as_me: error: cannot compute suffix of object files: cannot compile
+See \`config.log' for more details." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+rm -f conftest.$ac_cv_objext conftest.$ac_ext
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_objext" >&5
+echo "${ECHO_T}$ac_cv_objext" >&6; }
+OBJEXT=$ac_cv_objext
+ac_objext=$OBJEXT
+{ echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
+echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6; }
+if test "${ac_cv_c_compiler_gnu+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+#ifndef __GNUC__
+       choke me
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_compile") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } && {
+	 test -z "$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       } && test -s conftest.$ac_objext; then
+  ac_compiler_gnu=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+	ac_compiler_gnu=no
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ac_cv_c_compiler_gnu=$ac_compiler_gnu
+
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
+echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6; }
+GCC=`test $ac_compiler_gnu = yes && echo yes`
+ac_test_CFLAGS=${CFLAGS+set}
+ac_save_CFLAGS=$CFLAGS
+{ echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
+echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6; }
+if test "${ac_cv_prog_cc_g+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_save_c_werror_flag=$ac_c_werror_flag
+   ac_c_werror_flag=yes
+   ac_cv_prog_cc_g=no
+   CFLAGS="-g"
+   cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_compile") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } && {
+	 test -z "$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       } && test -s conftest.$ac_objext; then
+  ac_cv_prog_cc_g=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+	CFLAGS=""
+      cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_compile") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } && {
+	 test -z "$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       } && test -s conftest.$ac_objext; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+	ac_c_werror_flag=$ac_save_c_werror_flag
+	 CFLAGS="-g"
+	 cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_compile") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } && {
+	 test -z "$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       } && test -s conftest.$ac_objext; then
+  ac_cv_prog_cc_g=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+   ac_c_werror_flag=$ac_save_c_werror_flag
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
+echo "${ECHO_T}$ac_cv_prog_cc_g" >&6; }
+if test "$ac_test_CFLAGS" = set; then
+  CFLAGS=$ac_save_CFLAGS
+elif test $ac_cv_prog_cc_g = yes; then
+  if test "$GCC" = yes; then
+    CFLAGS="-g -O2"
+  else
+    CFLAGS="-g"
+  fi
+else
+  if test "$GCC" = yes; then
+    CFLAGS="-O2"
+  else
+    CFLAGS=
+  fi
+fi
+{ echo "$as_me:$LINENO: checking for $CC option to accept ISO C89" >&5
+echo $ECHO_N "checking for $CC option to accept ISO C89... $ECHO_C" >&6; }
+if test "${ac_cv_prog_cc_c89+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_cv_prog_cc_c89=no
+ac_save_CC=$CC
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <stdarg.h>
+#include <stdio.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+/* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
+struct buf { int x; };
+FILE * (*rcsopen) (struct buf *, struct stat *, int);
+static char *e (p, i)
+     char **p;
+     int i;
+{
+  return p[i];
+}
+static char *f (char * (*g) (char **, int), char **p, ...)
+{
+  char *s;
+  va_list v;
+  va_start (v,p);
+  s = g (p, va_arg (v,int));
+  va_end (v);
+  return s;
+}
+
+/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default.  It has
+   function prototypes and stuff, but not '\xHH' hex character constants.
+   These don't provoke an error unfortunately, instead are silently treated
+   as 'x'.  The following induces an error, until -std is added to get
+   proper ANSI mode.  Curiously '\x00'!='x' always comes out true, for an
+   array size at least.  It's necessary to write '\x00'==0 to get something
+   that's true only with -std.  */
+int osf4_cc_array ['\x00' == 0 ? 1 : -1];
+
+/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
+   inside strings and character constants.  */
+#define FOO(x) 'x'
+int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
+
+int test (int i, double x);
+struct s1 {int (*f) (int a);};
+struct s2 {int (*f) (double a);};
+int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
+int argc;
+char **argv;
+int
+main ()
+{
+return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];
+  ;
+  return 0;
+}
+_ACEOF
+for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
+	-Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
+do
+  CC="$ac_save_CC $ac_arg"
+  rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_compile") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } && {
+	 test -z "$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       } && test -s conftest.$ac_objext; then
+  ac_cv_prog_cc_c89=$ac_arg
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
+fi
+
+rm -f core conftest.err conftest.$ac_objext
+  test "x$ac_cv_prog_cc_c89" != "xno" && break
+done
+rm -f conftest.$ac_ext
+CC=$ac_save_CC
+
+fi
+# AC_CACHE_VAL
+case "x$ac_cv_prog_cc_c89" in
+  x)
+    { echo "$as_me:$LINENO: result: none needed" >&5
+echo "${ECHO_T}none needed" >&6; } ;;
+  xno)
+    { echo "$as_me:$LINENO: result: unsupported" >&5
+echo "${ECHO_T}unsupported" >&6; } ;;
+  *)
+    CC="$CC $ac_cv_prog_cc_c89"
+    { echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5
+echo "${ECHO_T}$ac_cv_prog_cc_c89" >&6; } ;;
+esac
+
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+
+# Determine the target platform
+#
+ac_aux_dir=
+for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
+  if test -f "$ac_dir/install-sh"; then
+    ac_aux_dir=$ac_dir
+    ac_install_sh="$ac_aux_dir/install-sh -c"
+    break
+  elif test -f "$ac_dir/install.sh"; then
+    ac_aux_dir=$ac_dir
+    ac_install_sh="$ac_aux_dir/install.sh -c"
+    break
+  elif test -f "$ac_dir/shtool"; then
+    ac_aux_dir=$ac_dir
+    ac_install_sh="$ac_aux_dir/shtool install -c"
+    break
+  fi
+done
+if test -z "$ac_aux_dir"; then
+  { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" >&5
+echo "$as_me: error: cannot find install-sh or install.sh in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+# These three variables are undocumented and unsupported,
+# and are intended to be withdrawn in a future Autoconf release.
+# They can cause serious problems if a builder's source tree is in a directory
+# whose full name contains unusual characters.
+ac_config_guess="$SHELL $ac_aux_dir/config.guess"  # Please don't use this var.
+ac_config_sub="$SHELL $ac_aux_dir/config.sub"  # Please don't use this var.
+ac_configure="$SHELL $ac_aux_dir/configure"  # Please don't use this var.
+
+
+# Make sure we can run config.sub.
+$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
+  { { echo "$as_me:$LINENO: error: cannot run $SHELL $ac_aux_dir/config.sub" >&5
+echo "$as_me: error: cannot run $SHELL $ac_aux_dir/config.sub" >&2;}
+   { (exit 1); exit 1; }; }
+
+{ echo "$as_me:$LINENO: checking build system type" >&5
+echo $ECHO_N "checking build system type... $ECHO_C" >&6; }
+if test "${ac_cv_build+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_build_alias=$build_alias
+test "x$ac_build_alias" = x &&
+  ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
+test "x$ac_build_alias" = x &&
+  { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5
+echo "$as_me: error: cannot guess build type; you must specify one" >&2;}
+   { (exit 1); exit 1; }; }
+ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
+  { { echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&5
+echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&2;}
+   { (exit 1); exit 1; }; }
+
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_build" >&5
+echo "${ECHO_T}$ac_cv_build" >&6; }
+case $ac_cv_build in
+*-*-*) ;;
+*) { { echo "$as_me:$LINENO: error: invalid value of canonical build" >&5
+echo "$as_me: error: invalid value of canonical build" >&2;}
+   { (exit 1); exit 1; }; };;
+esac
+build=$ac_cv_build
+ac_save_IFS=$IFS; IFS='-'
+set x $ac_cv_build
+shift
+build_cpu=$1
+build_vendor=$2
+shift; shift
+# Remember, the first character of IFS is used to create $*,
+# except with old shells:
+build_os=$*
+IFS=$ac_save_IFS
+case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
+
+
+{ echo "$as_me:$LINENO: checking host system type" >&5
+echo $ECHO_N "checking host system type... $ECHO_C" >&6; }
+if test "${ac_cv_host+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test "x$host_alias" = x; then
+  ac_cv_host=$ac_cv_build
+else
+  ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
+    { { echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&5
+echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_host" >&5
+echo "${ECHO_T}$ac_cv_host" >&6; }
+case $ac_cv_host in
+*-*-*) ;;
+*) { { echo "$as_me:$LINENO: error: invalid value of canonical host" >&5
+echo "$as_me: error: invalid value of canonical host" >&2;}
+   { (exit 1); exit 1; }; };;
+esac
+host=$ac_cv_host
+ac_save_IFS=$IFS; IFS='-'
+set x $ac_cv_host
+shift
+host_cpu=$1
+host_vendor=$2
+shift; shift
+# Remember, the first character of IFS is used to create $*,
+# except with old shells:
+host_os=$*
+IFS=$ac_save_IFS
+case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
+
+
+{ echo "$as_me:$LINENO: checking target system type" >&5
+echo $ECHO_N "checking target system type... $ECHO_C" >&6; }
+if test "${ac_cv_target+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test "x$target_alias" = x; then
+  ac_cv_target=$ac_cv_host
+else
+  ac_cv_target=`$SHELL "$ac_aux_dir/config.sub" $target_alias` ||
+    { { echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $target_alias failed" >&5
+echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $target_alias failed" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_target" >&5
+echo "${ECHO_T}$ac_cv_target" >&6; }
+case $ac_cv_target in
+*-*-*) ;;
+*) { { echo "$as_me:$LINENO: error: invalid value of canonical target" >&5
+echo "$as_me: error: invalid value of canonical target" >&2;}
+   { (exit 1); exit 1; }; };;
+esac
+target=$ac_cv_target
+ac_save_IFS=$IFS; IFS='-'
+set x $ac_cv_target
+shift
+target_cpu=$1
+target_vendor=$2
+shift; shift
+# Remember, the first character of IFS is used to create $*,
+# except with old shells:
+target_os=$*
+IFS=$ac_save_IFS
+case $target_os in *\ *) target_os=`echo "$target_os" | sed 's/ /-/g'`;; esac
+
+
+# The aliases save the names the user supplied, while $host etc.
+# will get canonicalized.
+test -n "$target_alias" &&
+  test "$program_prefix$program_suffix$program_transform_name" = \
+    NONENONEs,x,x, &&
+  program_prefix=${target_alias}-
+
+# Search the user's PATH for the 'nvcc' compiler. If it is found, add this
+# prefix to the include and library search directories. Additionally, set nvcc
+# as the C preprocessor for c2hs (only, or it won't try to link cudart)
+#
+# Extract the first word of "nvcc", so it can be a program name with args.
+set dummy nvcc; ac_word=$2
+{ echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+if test "${ac_cv_path_NVCC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $NVCC in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_NVCC="$NVCC" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+    ac_cv_path_NVCC="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+IFS=$as_save_IFS
+
+  ;;
+esac
+fi
+NVCC=$ac_cv_path_NVCC
+if test -n "$NVCC"; then
+  { echo "$as_me:$LINENO: result: $NVCC" >&5
+echo "${ECHO_T}$NVCC" >&6; }
+else
+  { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
+fi
+
+
+if test "$NVCC" != ""; then
+    cuda_prefix="$(dirname $(dirname $NVCC))"
+    cuda_c2hsflags="--cpp=$NVCC --cppopts=-E "
+    CPPFLAGS+=" -I${cuda_prefix}/include "
+#    CC=${NVCC}
+
+    case $target in
+    x86_64*) LDFLAGS+=" -L${cuda_prefix}/lib64 " ;;
+    *)       LDFLAGS+=" -L${cuda_prefix}/lib "   ;;
+    esac
+fi
+
+# Recent versions of Mac OS X (10.6 and later) provides a C extension for
+# creating lambda-like closure expressions (blocks), the syntax for which
+# confuses the c2hs preprocessor. We disable this by undefining the __BLOCKS__
+# macro.
+#
+{ echo "$as_me:$LINENO: checking for Apple Blocks extension" >&5
+echo $ECHO_N "checking for Apple Blocks extension... $ECHO_C" >&6; }
+if test -r "/usr/include/stdlib.h"; then
+    BLOCKS=`grep __BLOCKS__ /usr/include/stdlib.h`
+fi
+if test "$BLOCKS" != ""; then
+    cuda_c2hsflags+="--cppopts=-U__BLOCKS__ "
+    { echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6; }
+else
+    { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
+fi
+
+# Make sure both the driver and runtime are found
+#
+longerror='
+********************************************************************************
+
+The configuration process failed to locate your CUDA installation. Ensure that
+you have installed the driver and developer toolkit, available from:
+
+  http://developer.nvidia.com/cuda-downloads
+
+Then make sure that "nvcc" is available in your PATH, or set the appropriate
+directories with --extra-include-dirs and --extra-lib-dirs.
+
+********************************************************************************'
+
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+{ echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5
+echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6; }
+# On Suns, sometimes $CPP names a directory.
+if test -n "$CPP" && test -d "$CPP"; then
+  CPP=
+fi
+if test -z "$CPP"; then
+  if test "${ac_cv_prog_CPP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+      # Double quotes because CPP needs to be expanded
+    for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
+    do
+      ac_preproc_ok=false
+for ac_c_preproc_warn_flag in '' yes
+do
+  # Use a header file that comes with gcc, so configuring glibc
+  # with a fresh cross-compiler works.
+  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+  # <limits.h> exists even on freestanding compilers.
+  # On the NeXT, cc -E runs the code through the compiler's parser,
+  # not just through cpp. "Syntax error" is here to catch this case.
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+		     Syntax error
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null && {
+	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+  # Broken: fails on valid input.
+continue
+fi
+
+rm -f conftest.err conftest.$ac_ext
+
+  # OK, works on sane cases.  Now check whether nonexistent headers
+  # can be detected and how.
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <ac_nonexistent.h>
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null && {
+	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       }; then
+  # Broken: success on invalid input.
+continue
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+  # Passes both tests.
+ac_preproc_ok=:
+break
+fi
+
+rm -f conftest.err conftest.$ac_ext
+
+done
+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
+rm -f conftest.err conftest.$ac_ext
+if $ac_preproc_ok; then
+  break
+fi
+
+    done
+    ac_cv_prog_CPP=$CPP
+
+fi
+  CPP=$ac_cv_prog_CPP
+else
+  ac_cv_prog_CPP=$CPP
+fi
+{ echo "$as_me:$LINENO: result: $CPP" >&5
+echo "${ECHO_T}$CPP" >&6; }
+ac_preproc_ok=false
+for ac_c_preproc_warn_flag in '' yes
+do
+  # Use a header file that comes with gcc, so configuring glibc
+  # with a fresh cross-compiler works.
+  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+  # <limits.h> exists even on freestanding compilers.
+  # On the NeXT, cc -E runs the code through the compiler's parser,
+  # not just through cpp. "Syntax error" is here to catch this case.
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+		     Syntax error
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null && {
+	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+  # Broken: fails on valid input.
+continue
+fi
+
+rm -f conftest.err conftest.$ac_ext
+
+  # OK, works on sane cases.  Now check whether nonexistent headers
+  # can be detected and how.
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <ac_nonexistent.h>
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null && {
+	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       }; then
+  # Broken: success on invalid input.
+continue
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+  # Passes both tests.
+ac_preproc_ok=:
+break
+fi
+
+rm -f conftest.err conftest.$ac_ext
+
+done
+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
+rm -f conftest.err conftest.$ac_ext
+if $ac_preproc_ok; then
+  :
+else
+  { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check
+See \`config.log' for more details." >&5
+echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check
+See \`config.log' for more details." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+
+{ echo "$as_me:$LINENO: checking for grep that handles long lines and -e" >&5
+echo $ECHO_N "checking for grep that handles long lines and -e... $ECHO_C" >&6; }
+if test "${ac_cv_path_GREP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  # Extract the first word of "grep ggrep" to use in msg output
+if test -z "$GREP"; then
+set dummy grep ggrep; ac_prog_name=$2
+if test "${ac_cv_path_GREP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_path_GREP_found=false
+# Loop through the user's path and test for each of PROGNAME-LIST
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_prog in grep ggrep; do
+  for ac_exec_ext in '' $ac_executable_extensions; do
+    ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
+    { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
+    # Check for GNU ac_path_GREP and select it if it is found.
+  # Check for GNU $ac_path_GREP
+case `"$ac_path_GREP" --version 2>&1` in
+*GNU*)
+  ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
+*)
+  ac_count=0
+  echo $ECHO_N "0123456789$ECHO_C" >"conftest.in"
+  while :
+  do
+    cat "conftest.in" "conftest.in" >"conftest.tmp"
+    mv "conftest.tmp" "conftest.in"
+    cp "conftest.in" "conftest.nl"
+    echo 'GREP' >> "conftest.nl"
+    "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
+    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+    ac_count=`expr $ac_count + 1`
+    if test $ac_count -gt ${ac_path_GREP_max-0}; then
+      # Best one so far, save it but keep looking for a better one
+      ac_cv_path_GREP="$ac_path_GREP"
+      ac_path_GREP_max=$ac_count
+    fi
+    # 10*(2^10) chars as input seems more than enough
+    test $ac_count -gt 10 && break
+  done
+  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
+
+
+    $ac_path_GREP_found && break 3
+  done
+done
+
+done
+IFS=$as_save_IFS
+
+
+fi
+
+GREP="$ac_cv_path_GREP"
+if test -z "$GREP"; then
+  { { echo "$as_me:$LINENO: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5
+echo "$as_me: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+else
+  ac_cv_path_GREP=$GREP
+fi
+
+
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_path_GREP" >&5
+echo "${ECHO_T}$ac_cv_path_GREP" >&6; }
+ GREP="$ac_cv_path_GREP"
+
+
+{ echo "$as_me:$LINENO: checking for egrep" >&5
+echo $ECHO_N "checking for egrep... $ECHO_C" >&6; }
+if test "${ac_cv_path_EGREP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
+   then ac_cv_path_EGREP="$GREP -E"
+   else
+     # Extract the first word of "egrep" to use in msg output
+if test -z "$EGREP"; then
+set dummy egrep; ac_prog_name=$2
+if test "${ac_cv_path_EGREP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_path_EGREP_found=false
+# Loop through the user's path and test for each of PROGNAME-LIST
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_prog in egrep; do
+  for ac_exec_ext in '' $ac_executable_extensions; do
+    ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
+    { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
+    # Check for GNU ac_path_EGREP and select it if it is found.
+  # Check for GNU $ac_path_EGREP
+case `"$ac_path_EGREP" --version 2>&1` in
+*GNU*)
+  ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
+*)
+  ac_count=0
+  echo $ECHO_N "0123456789$ECHO_C" >"conftest.in"
+  while :
+  do
+    cat "conftest.in" "conftest.in" >"conftest.tmp"
+    mv "conftest.tmp" "conftest.in"
+    cp "conftest.in" "conftest.nl"
+    echo 'EGREP' >> "conftest.nl"
+    "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
+    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+    ac_count=`expr $ac_count + 1`
+    if test $ac_count -gt ${ac_path_EGREP_max-0}; then
+      # Best one so far, save it but keep looking for a better one
+      ac_cv_path_EGREP="$ac_path_EGREP"
+      ac_path_EGREP_max=$ac_count
+    fi
+    # 10*(2^10) chars as input seems more than enough
+    test $ac_count -gt 10 && break
+  done
+  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
+
+
+    $ac_path_EGREP_found && break 3
+  done
+done
+
+done
+IFS=$as_save_IFS
+
+
+fi
+
+EGREP="$ac_cv_path_EGREP"
+if test -z "$EGREP"; then
+  { { echo "$as_me:$LINENO: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5
+echo "$as_me: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+else
+  ac_cv_path_EGREP=$EGREP
+fi
+
+
+   fi
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_path_EGREP" >&5
+echo "${ECHO_T}$ac_cv_path_EGREP" >&6; }
+ EGREP="$ac_cv_path_EGREP"
+
+
+{ echo "$as_me:$LINENO: checking for ANSI C header files" >&5
+echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6; }
+if test "${ac_cv_header_stdc+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <stdlib.h>
+#include <stdarg.h>
+#include <string.h>
+#include <float.h>
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_compile") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } && {
+	 test -z "$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       } && test -s conftest.$ac_objext; then
+  ac_cv_header_stdc=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+	ac_cv_header_stdc=no
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+if test $ac_cv_header_stdc = yes; then
+  # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <string.h>
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  $EGREP "memchr" >/dev/null 2>&1; then
+  :
+else
+  ac_cv_header_stdc=no
+fi
+rm -f -r conftest*
+
+fi
+
+if test $ac_cv_header_stdc = yes; then
+  # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <stdlib.h>
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  $EGREP "free" >/dev/null 2>&1; then
+  :
+else
+  ac_cv_header_stdc=no
+fi
+rm -f -r conftest*
+
+fi
+
+if test $ac_cv_header_stdc = yes; then
+  # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
+  if test "$cross_compiling" = yes; then
+  :
+else
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <ctype.h>
+#include <stdlib.h>
+#if ((' ' & 0x0FF) == 0x020)
+# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
+# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
+#else
+# define ISLOWER(c) \
+		   (('a' <= (c) && (c) <= 'i') \
+		     || ('j' <= (c) && (c) <= 'r') \
+		     || ('s' <= (c) && (c) <= 'z'))
+# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
+#endif
+
+#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
+int
+main ()
+{
+  int i;
+  for (i = 0; i < 256; i++)
+    if (XOR (islower (i), ISLOWER (i))
+	|| toupper (i) != TOUPPER (i))
+      return 2;
+  return 0;
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_link") 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+  { (case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_try") 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+ac_cv_header_stdc=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+fi
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5
+echo "${ECHO_T}$ac_cv_header_stdc" >&6; }
+if test $ac_cv_header_stdc = yes; then
+
+cat >>confdefs.h <<\_ACEOF
+#define STDC_HEADERS 1
+_ACEOF
+
+fi
+
+# On IRIX 5.3, sys/types and inttypes.h are conflicting.
+
+
+
+
+
+
+
+
+
+for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
+		  inttypes.h stdint.h unistd.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+{ echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+$ac_includes_default
+
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_compile") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } && {
+	 test -z "$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       } && test -s conftest.$ac_objext; then
+  eval "$as_ac_Header=yes"
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+	eval "$as_ac_Header=no"
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+	       { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
+done
+
+
+
+
+for ac_header in cuda.h cuda_runtime_api.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+  { echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+	       { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+else
+  # Is the header compilable?
+{ echo "$as_me:$LINENO: checking $ac_header usability" >&5
+echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+$ac_includes_default
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_compile") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } && {
+	 test -z "$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       } && test -s conftest.$ac_objext; then
+  ac_header_compiler=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+	ac_header_compiler=no
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+echo "${ECHO_T}$ac_header_compiler" >&6; }
+
+# Is the header present?
+{ echo "$as_me:$LINENO: checking $ac_header presence" >&5
+echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <$ac_header>
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null && {
+	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       }; then
+  ac_header_preproc=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+  ac_header_preproc=no
+fi
+
+rm -f conftest.err conftest.$ac_ext
+{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
+echo "${ECHO_T}$ac_header_preproc" >&6; }
+
+# So?  What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
+  yes:no: )
+    { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
+    ac_header_preproc=yes
+    ;;
+  no:yes:* )
+    { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+    { echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
+echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
+    { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
+echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
+    { echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
+echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
+    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+    { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
+echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
+    ( cat <<\_ASBOX
+## ---------------------------------------- ##
+## Report this to tmcdonell@cse.unsw.edu.au ##
+## ---------------------------------------- ##
+_ASBOX
+     ) | sed "s/^/$as_me: WARNING:     /" >&2
+    ;;
+esac
+{ echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  eval "$as_ac_Header=\$ac_header_preproc"
+fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+	       { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+
+fi
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+else
+  { { echo "$as_me:$LINENO: error: could not find CUDA headers${longerror}" >&5
+echo "$as_me: error: could not find CUDA headers${longerror}" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+done
+
+{ echo "$as_me:$LINENO: checking for library containing cuDriverGetVersion" >&5
+echo $ECHO_N "checking for library containing cuDriverGetVersion... $ECHO_C" >&6; }
+if test "${ac_cv_search_cuDriverGetVersion+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_func_search_save_LIBS=$LIBS
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+/* Override any GCC internal prototype to avoid an error.
+   Use char because int might match the return type of a GCC
+   builtin and then its argument prototype would still apply.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+char cuDriverGetVersion ();
+int
+main ()
+{
+return cuDriverGetVersion ();
+  ;
+  return 0;
+}
+_ACEOF
+for ac_lib in '' cuda; do
+  if test -z "$ac_lib"; then
+    ac_res="none required"
+  else
+    ac_res=-l$ac_lib
+    LIBS="-l$ac_lib  $ac_func_search_save_LIBS"
+  fi
+  rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_link") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } && {
+	 test -z "$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       } && test -s conftest$ac_exeext &&
+       $as_test_x conftest$ac_exeext; then
+  ac_cv_search_cuDriverGetVersion=$ac_res
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+      conftest$ac_exeext
+  if test "${ac_cv_search_cuDriverGetVersion+set}" = set; then
+  break
+fi
+done
+if test "${ac_cv_search_cuDriverGetVersion+set}" = set; then
+  :
+else
+  ac_cv_search_cuDriverGetVersion=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_search_cuDriverGetVersion" >&5
+echo "${ECHO_T}$ac_cv_search_cuDriverGetVersion" >&6; }
+ac_res=$ac_cv_search_cuDriverGetVersion
+if test "$ac_res" != no; then
+  test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+
+else
+  { { echo "$as_me:$LINENO: error: could not find CUDA driver library${longerror}" >&5
+echo "$as_me: error: could not find CUDA driver library${longerror}" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+{ echo "$as_me:$LINENO: checking for library containing cudaRuntimeGetVersion" >&5
+echo $ECHO_N "checking for library containing cudaRuntimeGetVersion... $ECHO_C" >&6; }
+if test "${ac_cv_search_cudaRuntimeGetVersion+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_func_search_save_LIBS=$LIBS
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+/* Override any GCC internal prototype to avoid an error.
+   Use char because int might match the return type of a GCC
+   builtin and then its argument prototype would still apply.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+char cudaRuntimeGetVersion ();
+int
+main ()
+{
+return cudaRuntimeGetVersion ();
+  ;
+  return 0;
+}
+_ACEOF
+for ac_lib in '' cudart; do
+  if test -z "$ac_lib"; then
+    ac_res="none required"
+  else
+    ac_res=-l$ac_lib
+    LIBS="-l$ac_lib  $ac_func_search_save_LIBS"
+  fi
+  rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_link") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } && {
+	 test -z "$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       } && test -s conftest$ac_exeext &&
+       $as_test_x conftest$ac_exeext; then
+  ac_cv_search_cudaRuntimeGetVersion=$ac_res
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+      conftest$ac_exeext
+  if test "${ac_cv_search_cudaRuntimeGetVersion+set}" = set; then
+  break
+fi
+done
+if test "${ac_cv_search_cudaRuntimeGetVersion+set}" = set; then
+  :
+else
+  ac_cv_search_cudaRuntimeGetVersion=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_search_cudaRuntimeGetVersion" >&5
+echo "${ECHO_T}$ac_cv_search_cudaRuntimeGetVersion" >&6; }
+ac_res=$ac_cv_search_cudaRuntimeGetVersion
+if test "$ac_res" != no; then
+  test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+
+else
+  { { echo "$as_me:$LINENO: error: could not find CUDA runtime library${longerror}" >&5
+echo "$as_me: error: could not find CUDA runtime library${longerror}" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+
+# Populate the buildinfo, with the search paths and any target specific options
+#
+cuda_cppflags="$CPPFLAGS"
+cuda_ldflags="$LDFLAGS $LIBS"
+
+
+
+
+cat >confcache <<\_ACEOF
+# This file is a shell script that caches the results of configure
+# tests run on this system so they can be shared between configure
+# scripts and configure runs, see configure's option --config-cache.
+# It is not useful on other systems.  If it contains results you don't
+# want to keep, you may remove or edit it.
+#
+# config.status only pays attention to the cache file if you give it
+# the --recheck option to rerun configure.
+#
+# `ac_cv_env_foo' variables (set or unset) will be overridden when
+# loading this file, other *unset* `ac_cv_foo' will be assigned the
+# following values.
+
+_ACEOF
+
+# The following way of writing the cache mishandles newlines in values,
+# but we know of no workaround that is simple, portable, and efficient.
+# So, we kill variables containing newlines.
+# Ultrix sh set writes to stderr and can't be redirected directly,
+# and sets the high bit in the cache file unless we assign to the vars.
+(
+  for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do
+    eval ac_val=\$$ac_var
+    case $ac_val in #(
+    *${as_nl}*)
+      case $ac_var in #(
+      *_cv_*) { echo "$as_me:$LINENO: WARNING: Cache variable $ac_var contains a newline." >&5
+echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;;
+      esac
+      case $ac_var in #(
+      _ | IFS | as_nl) ;; #(
+      *) $as_unset $ac_var ;;
+      esac ;;
+    esac
+  done
+
+  (set) 2>&1 |
+    case $as_nl`(ac_space=' '; set) 2>&1` in #(
+    *${as_nl}ac_space=\ *)
+      # `set' does not quote correctly, so add quotes (double-quote
+      # substitution turns \\\\ into \\, and sed turns \\ into \).
+      sed -n \
+	"s/'/'\\\\''/g;
+	  s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
+      ;; #(
+    *)
+      # `set' quotes correctly as required by POSIX, so do not add quotes.
+      sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
+      ;;
+    esac |
+    sort
+) |
+  sed '
+     /^ac_cv_env_/b end
+     t clear
+     :clear
+     s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
+     t end
+     s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
+     :end' >>confcache
+if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
+  if test -w "$cache_file"; then
+    test "x$cache_file" != "x/dev/null" &&
+      { echo "$as_me:$LINENO: updating cache $cache_file" >&5
+echo "$as_me: updating cache $cache_file" >&6;}
+    cat confcache >$cache_file
+  else
+    { echo "$as_me:$LINENO: not updating unwritable cache $cache_file" >&5
+echo "$as_me: not updating unwritable cache $cache_file" >&6;}
+  fi
+fi
+rm -f confcache
+
+test "x$prefix" = xNONE && prefix=$ac_default_prefix
+# Let make expand exec_prefix.
+test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
+
+# Transform confdefs.h into DEFS.
+# Protect against shell expansion while executing Makefile rules.
+# Protect against Makefile macro expansion.
+#
+# If the first sed substitution is executed (which looks for macros that
+# take arguments), then branch to the quote section.  Otherwise,
+# look for a macro that doesn't take arguments.
+ac_script='
+t clear
+:clear
+s/^[	 ]*#[	 ]*define[	 ][	 ]*\([^	 (][^	 (]*([^)]*)\)[	 ]*\(.*\)/-D\1=\2/g
+t quote
+s/^[	 ]*#[	 ]*define[	 ][	 ]*\([^	 ][^	 ]*\)[	 ]*\(.*\)/-D\1=\2/g
+t quote
+b any
+:quote
+s/[	 `~#$^&*(){}\\|;'\''"<>?]/\\&/g
+s/\[/\\&/g
+s/\]/\\&/g
+s/\$/$$/g
+H
+:any
+${
+	g
+	s/^\n//
+	s/\n/ /g
+	p
+}
+'
+DEFS=`sed -n "$ac_script" confdefs.h`
+
+
+ac_libobjs=
+ac_ltlibobjs=
+for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
+  # 1. Remove the extension, and $U if already installed.
+  ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
+  ac_i=`echo "$ac_i" | sed "$ac_script"`
+  # 2. Prepend LIBOBJDIR.  When used with automake>=1.10 LIBOBJDIR
+  #    will be set to the directory where LIBOBJS objects are built.
+  ac_libobjs="$ac_libobjs \${LIBOBJDIR}$ac_i\$U.$ac_objext"
+  ac_ltlibobjs="$ac_ltlibobjs \${LIBOBJDIR}$ac_i"'$U.lo'
+done
+LIBOBJS=$ac_libobjs
+
+LTLIBOBJS=$ac_ltlibobjs
+
+
+
+: ${CONFIG_STATUS=./config.status}
+ac_clean_files_save=$ac_clean_files
+ac_clean_files="$ac_clean_files $CONFIG_STATUS"
+{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5
+echo "$as_me: creating $CONFIG_STATUS" >&6;}
+cat >$CONFIG_STATUS <<_ACEOF
+#! $SHELL
+# Generated by $as_me.
+# Run this file to recreate the current configuration.
+# Compiler output produced by configure, useful for debugging
+# configure, is in config.log if it exists.
+
+debug=false
+ac_cs_recheck=false
+ac_cs_silent=false
+SHELL=\${CONFIG_SHELL-$SHELL}
+_ACEOF
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+## --------------------- ##
+## M4sh Initialization.  ##
+## --------------------- ##
+
+# Be more Bourne compatible
+DUALCASE=1; export DUALCASE # for MKS sh
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+  emulate sh
+  NULLCMD=:
+  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+  # is contrary to our usage.  Disable this feature.
+  alias -g '${1+"$@"}'='"$@"'
+  setopt NO_GLOB_SUBST
+else
+  case `(set -o) 2>/dev/null` in
+  *posix*) set -o posix ;;
+esac
+
+fi
+
+
+
+
+# PATH needs CR
+# Avoid depending upon Character Ranges.
+as_cr_letters='abcdefghijklmnopqrstuvwxyz'
+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
+as_cr_Letters=$as_cr_letters$as_cr_LETTERS
+as_cr_digits='0123456789'
+as_cr_alnum=$as_cr_Letters$as_cr_digits
+
+# The user is always right.
+if test "${PATH_SEPARATOR+set}" != set; then
+  echo "#! /bin/sh" >conf$$.sh
+  echo  "exit 0"   >>conf$$.sh
+  chmod +x conf$$.sh
+  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
+    PATH_SEPARATOR=';'
+  else
+    PATH_SEPARATOR=:
+  fi
+  rm -f conf$$.sh
+fi
+
+# Support unset when possible.
+if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
+  as_unset=unset
+else
+  as_unset=false
+fi
+
+
+# IFS
+# We need space, tab and new line, in precisely that order.  Quoting is
+# there to prevent editors from complaining about space-tab.
+# (If _AS_PATH_WALK were called with IFS unset, it would disable word
+# splitting by setting IFS to empty value.)
+as_nl='
+'
+IFS=" ""	$as_nl"
+
+# Find who we are.  Look in the path if we contain no directory separator.
+case $0 in
+  *[\\/]* ) as_myself=$0 ;;
+  *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+done
+IFS=$as_save_IFS
+
+     ;;
+esac
+# We did not find ourselves, most probably we were run as `sh COMMAND'
+# in which case we are not to be found in the path.
+if test "x$as_myself" = x; then
+  as_myself=$0
+fi
+if test ! -f "$as_myself"; then
+  echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
+  { (exit 1); exit 1; }
+fi
+
+# Work around bugs in pre-3.0 UWIN ksh.
+for as_var in ENV MAIL MAILPATH
+do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
+done
+PS1='$ '
+PS2='> '
+PS4='+ '
+
+# NLS nuisances.
+for as_var in \
+  LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
+  LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
+  LC_TELEPHONE LC_TIME
+do
+  if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
+    eval $as_var=C; export $as_var
+  else
+    ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
+  fi
+done
+
+# Required to use basename.
+if expr a : '\(a\)' >/dev/null 2>&1 &&
+   test "X`expr 00001 : '.*\(...\)'`" = X001; then
+  as_expr=expr
+else
+  as_expr=false
+fi
+
+if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
+  as_basename=basename
+else
+  as_basename=false
+fi
+
+
+# Name of the executable.
+as_me=`$as_basename -- "$0" ||
+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
+	 X"$0" : 'X\(//\)$' \| \
+	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
+echo X/"$0" |
+    sed '/^.*\/\([^/][^/]*\)\/*$/{
+	    s//\1/
+	    q
+	  }
+	  /^X\/\(\/\/\)$/{
+	    s//\1/
+	    q
+	  }
+	  /^X\/\(\/\).*/{
+	    s//\1/
+	    q
+	  }
+	  s/.*/./; q'`
+
+# CDPATH.
+$as_unset CDPATH
+
+
+
+  as_lineno_1=$LINENO
+  as_lineno_2=$LINENO
+  test "x$as_lineno_1" != "x$as_lineno_2" &&
+  test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || {
+
+  # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
+  # uniformly replaced by the line number.  The first 'sed' inserts a
+  # line-number line after each line using $LINENO; the second 'sed'
+  # does the real work.  The second script uses 'N' to pair each
+  # line-number line with the line containing $LINENO, and appends
+  # trailing '-' during substitution so that $LINENO is not a special
+  # case at line end.
+  # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
+  # scripts with optimization help from Paolo Bonzini.  Blame Lee
+  # E. McMahon (1931-1989) for sed's syntax.  :-)
+  sed -n '
+    p
+    /[$]LINENO/=
+  ' <$as_myself |
+    sed '
+      s/[$]LINENO.*/&-/
+      t lineno
+      b
+      :lineno
+      N
+      :loop
+      s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
+      t loop
+      s/-\n.*//
+    ' >$as_me.lineno &&
+  chmod +x "$as_me.lineno" ||
+    { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
+   { (exit 1); exit 1; }; }
+
+  # Don't try to exec as it changes $[0], causing all sort of problems
+  # (the dirname of $[0] is not the place where we might find the
+  # original and so on.  Autoconf is especially sensitive to this).
+  . "./$as_me.lineno"
+  # Exit status is that of the last command.
+  exit
+}
+
+
+if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
+  as_dirname=dirname
+else
+  as_dirname=false
+fi
+
+ECHO_C= ECHO_N= ECHO_T=
+case `echo -n x` in
+-n*)
+  case `echo 'x\c'` in
+  *c*) ECHO_T='	';;	# ECHO_T is single tab character.
+  *)   ECHO_C='\c';;
+  esac;;
+*)
+  ECHO_N='-n';;
+esac
+
+if expr a : '\(a\)' >/dev/null 2>&1 &&
+   test "X`expr 00001 : '.*\(...\)'`" = X001; then
+  as_expr=expr
+else
+  as_expr=false
+fi
+
+rm -f conf$$ conf$$.exe conf$$.file
+if test -d conf$$.dir; then
+  rm -f conf$$.dir/conf$$.file
+else
+  rm -f conf$$.dir
+  mkdir conf$$.dir
+fi
+echo >conf$$.file
+if ln -s conf$$.file conf$$ 2>/dev/null; then
+  as_ln_s='ln -s'
+  # ... but there are two gotchas:
+  # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
+  # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
+  # In both cases, we have to default to `cp -p'.
+  ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
+    as_ln_s='cp -p'
+elif ln conf$$.file conf$$ 2>/dev/null; then
+  as_ln_s=ln
+else
+  as_ln_s='cp -p'
+fi
+rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
+rmdir conf$$.dir 2>/dev/null
+
+if mkdir -p . 2>/dev/null; then
+  as_mkdir_p=:
+else
+  test -d ./-p && rmdir ./-p
+  as_mkdir_p=false
+fi
+
+if test -x / >/dev/null 2>&1; then
+  as_test_x='test -x'
+else
+  if ls -dL / >/dev/null 2>&1; then
+    as_ls_L_option=L
+  else
+    as_ls_L_option=
+  fi
+  as_test_x='
+    eval sh -c '\''
+      if test -d "$1"; then
+        test -d "$1/.";
+      else
+	case $1 in
+        -*)set "./$1";;
+	esac;
+	case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
+	???[sx]*):;;*)false;;esac;fi
+    '\'' sh
+  '
+fi
+as_executable_p=$as_test_x
+
+# Sed expression to map a string onto a valid CPP name.
+as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
+
+# Sed expression to map a string onto a valid variable name.
+as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
+
+
+exec 6>&1
+
+# Save the log message, to keep $[0] and so on meaningful, and to
+# report actual input values of CONFIG_FILES etc. instead of their
+# values after options handling.
+ac_log="
+This file was extended by Haskell CUDA bindings $as_me 0.4.0.0, which was
+generated by GNU Autoconf 2.61.  Invocation command line was
+
+  CONFIG_FILES    = $CONFIG_FILES
+  CONFIG_HEADERS  = $CONFIG_HEADERS
+  CONFIG_LINKS    = $CONFIG_LINKS
+  CONFIG_COMMANDS = $CONFIG_COMMANDS
+  $ $0 $@
+
+on `(hostname || uname -n) 2>/dev/null | sed 1q`
+"
+
+_ACEOF
+
+cat >>$CONFIG_STATUS <<_ACEOF
+# Files that config.status was made for.
+config_files="$ac_config_files"
+
+_ACEOF
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+ac_cs_usage="\
+\`$as_me' instantiates files from templates according to the
+current configuration.
+
+Usage: $0 [OPTIONS] [FILE]...
+
+  -h, --help       print this help, then exit
+  -V, --version    print version number and configuration settings, then exit
+  -q, --quiet      do not print progress messages
+  -d, --debug      don't remove temporary files
+      --recheck    update $as_me by reconfiguring in the same conditions
+  --file=FILE[:TEMPLATE]
+		   instantiate the configuration file FILE
+
+Configuration files:
+$config_files
+
+Report bugs to <bug-autoconf@gnu.org>."
+
+_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF
+ac_cs_version="\\
+Haskell CUDA bindings config.status 0.4.0.0
+configured by $0, generated by GNU Autoconf 2.61,
+  with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
+
+Copyright (C) 2006 Free Software Foundation, Inc.
+This config.status script is free software; the Free Software Foundation
+gives unlimited permission to copy, distribute and modify it."
+
+ac_pwd='$ac_pwd'
+srcdir='$srcdir'
+_ACEOF
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+# If no file are specified by the user, then we need to provide default
+# value.  By we need to know if files were specified by the user.
+ac_need_defaults=:
+while test $# != 0
+do
+  case $1 in
+  --*=*)
+    ac_option=`expr "X$1" : 'X\([^=]*\)='`
+    ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
+    ac_shift=:
+    ;;
+  *)
+    ac_option=$1
+    ac_optarg=$2
+    ac_shift=shift
+    ;;
+  esac
+
+  case $ac_option in
+  # Handling of the options.
+  -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
+    ac_cs_recheck=: ;;
+  --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
+    echo "$ac_cs_version"; exit ;;
+  --debug | --debu | --deb | --de | --d | -d )
+    debug=: ;;
+  --file | --fil | --fi | --f )
+    $ac_shift
+    CONFIG_FILES="$CONFIG_FILES $ac_optarg"
+    ac_need_defaults=false;;
+  --he | --h |  --help | --hel | -h )
+    echo "$ac_cs_usage"; exit ;;
+  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
+  | -silent | --silent | --silen | --sile | --sil | --si | --s)
+    ac_cs_silent=: ;;
+
+  # This is an error.
+  -*) { echo "$as_me: error: unrecognized option: $1
+Try \`$0 --help' for more information." >&2
+   { (exit 1); exit 1; }; } ;;
+
+  *) ac_config_targets="$ac_config_targets $1"
+     ac_need_defaults=false ;;
+
+  esac
+  shift
+done
+
+ac_configure_extra_args=
+
+if $ac_cs_silent; then
+  exec 6>/dev/null
+  ac_configure_extra_args="$ac_configure_extra_args --silent"
+fi
+
+_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF
+if \$ac_cs_recheck; then
+  echo "running CONFIG_SHELL=$SHELL $SHELL $0 "$ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6
+  CONFIG_SHELL=$SHELL
+  export CONFIG_SHELL
+  exec $SHELL "$0"$ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
+fi
+
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF
+exec 5>>config.log
+{
+  echo
+  sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
+## Running $as_me. ##
+_ASBOX
+  echo "$ac_log"
+} >&5
+
+_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF
+_ACEOF
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+
+# Handling of arguments.
+for ac_config_target in $ac_config_targets
+do
+  case $ac_config_target in
+    "cuda.buildinfo") CONFIG_FILES="$CONFIG_FILES cuda.buildinfo" ;;
+
+  *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
+echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
+   { (exit 1); exit 1; }; };;
+  esac
+done
+
+
+# If the user did not use the arguments to specify the items to instantiate,
+# then the envvar interface is used.  Set only those that are not.
+# We use the long form for the default assignment because of an extremely
+# bizarre bug on SunOS 4.1.3.
+if $ac_need_defaults; then
+  test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
+fi
+
+# Have a temporary directory for convenience.  Make it in the build tree
+# simply because there is no reason against having it here, and in addition,
+# creating and moving files from /tmp can sometimes cause problems.
+# Hook for its removal unless debugging.
+# Note that there is a small window in which the directory will not be cleaned:
+# after its creation but before its name has been assigned to `$tmp'.
+$debug ||
+{
+  tmp=
+  trap 'exit_status=$?
+  { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status
+' 0
+  trap '{ (exit 1); exit 1; }' 1 2 13 15
+}
+# Create a (secure) tmp directory for tmp files.
+
+{
+  tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
+  test -n "$tmp" && test -d "$tmp"
+}  ||
+{
+  tmp=./conf$$-$RANDOM
+  (umask 077 && mkdir "$tmp")
+} ||
+{
+   echo "$me: cannot create a temporary directory in ." >&2
+   { (exit 1); exit 1; }
+}
+
+#
+# Set up the sed scripts for CONFIG_FILES section.
+#
+
+# No need to generate the scripts if there are no CONFIG_FILES.
+# This happens for instance when ./config.status config.h
+if test -n "$CONFIG_FILES"; then
+
+_ACEOF
+
+
+
+ac_delim='%!_!# '
+for ac_last_try in false false false false false :; do
+  cat >conf$$subs.sed <<_ACEOF
+SHELL!$SHELL$ac_delim
+PATH_SEPARATOR!$PATH_SEPARATOR$ac_delim
+PACKAGE_NAME!$PACKAGE_NAME$ac_delim
+PACKAGE_TARNAME!$PACKAGE_TARNAME$ac_delim
+PACKAGE_VERSION!$PACKAGE_VERSION$ac_delim
+PACKAGE_STRING!$PACKAGE_STRING$ac_delim
+PACKAGE_BUGREPORT!$PACKAGE_BUGREPORT$ac_delim
+exec_prefix!$exec_prefix$ac_delim
+prefix!$prefix$ac_delim
+program_transform_name!$program_transform_name$ac_delim
+bindir!$bindir$ac_delim
+sbindir!$sbindir$ac_delim
+libexecdir!$libexecdir$ac_delim
+datarootdir!$datarootdir$ac_delim
+datadir!$datadir$ac_delim
+sysconfdir!$sysconfdir$ac_delim
+sharedstatedir!$sharedstatedir$ac_delim
+localstatedir!$localstatedir$ac_delim
+includedir!$includedir$ac_delim
+oldincludedir!$oldincludedir$ac_delim
+docdir!$docdir$ac_delim
+infodir!$infodir$ac_delim
+htmldir!$htmldir$ac_delim
+dvidir!$dvidir$ac_delim
+pdfdir!$pdfdir$ac_delim
+psdir!$psdir$ac_delim
+libdir!$libdir$ac_delim
+localedir!$localedir$ac_delim
+mandir!$mandir$ac_delim
+DEFS!$DEFS$ac_delim
+ECHO_C!$ECHO_C$ac_delim
+ECHO_N!$ECHO_N$ac_delim
+ECHO_T!$ECHO_T$ac_delim
+LIBS!$LIBS$ac_delim
+build_alias!$build_alias$ac_delim
+host_alias!$host_alias$ac_delim
+target_alias!$target_alias$ac_delim
+CC!$CC$ac_delim
+CFLAGS!$CFLAGS$ac_delim
+LDFLAGS!$LDFLAGS$ac_delim
+CPPFLAGS!$CPPFLAGS$ac_delim
+ac_ct_CC!$ac_ct_CC$ac_delim
+EXEEXT!$EXEEXT$ac_delim
+OBJEXT!$OBJEXT$ac_delim
+build!$build$ac_delim
+build_cpu!$build_cpu$ac_delim
+build_vendor!$build_vendor$ac_delim
+build_os!$build_os$ac_delim
+host!$host$ac_delim
+host_cpu!$host_cpu$ac_delim
+host_vendor!$host_vendor$ac_delim
+host_os!$host_os$ac_delim
+target!$target$ac_delim
+target_cpu!$target_cpu$ac_delim
+target_vendor!$target_vendor$ac_delim
+target_os!$target_os$ac_delim
+NVCC!$NVCC$ac_delim
+CPP!$CPP$ac_delim
+GREP!$GREP$ac_delim
+EGREP!$EGREP$ac_delim
+cuda_cppflags!$cuda_cppflags$ac_delim
+cuda_ldflags!$cuda_ldflags$ac_delim
+cuda_c2hsflags!$cuda_c2hsflags$ac_delim
+LIBOBJS!$LIBOBJS$ac_delim
+LTLIBOBJS!$LTLIBOBJS$ac_delim
+_ACEOF
+
+  if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 65; then
     break
   elif $ac_last_try; then
     { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
diff --git a/configure.ac b/configure.ac
--- a/configure.ac
+++ b/configure.ac
@@ -1,7 +1,7 @@
-AC_INIT([Haskell CUDA bindings], [0.3.2], [tmcdonell@cse.unsw.edu.au], [cuda])
+AC_INIT([Haskell CUDA bindings], [0.4.0.0], [tmcdonell@cse.unsw.edu.au], [cuda])
 AC_CONFIG_SRCDIR([Foreign/CUDA.hs])
 AC_CONFIG_FILES([cuda.buildinfo])
-AC_PROG_CXX
+AC_PROG_CC
 
 # Determine the target platform
 #
@@ -14,25 +14,26 @@
 AC_PATH_PROG(NVCC, nvcc)
 if test "$NVCC" != ""; then
     cuda_prefix="$(dirname $(dirname $NVCC))"
-    cuda_c2hsflags+="--cpp=$NVCC --cppopts=-E "
-    CPPFLAGS+="-I${cuda_prefix}/include "
+    cuda_c2hsflags="--cpp=$NVCC --cppopts=-E "
+    CPPFLAGS+=" -I${cuda_prefix}/include "
 #    CC=${NVCC}
 
     case $target in
-    x86_64*) LDFLAGS+="-L${cuda_prefix}/lib64 " ;;
-    *)       LDFLAGS+="-L${cuda_prefix}/lib "   ;;
+    x86_64*) LDFLAGS+=" -L${cuda_prefix}/lib64 " ;;
+    *)       LDFLAGS+=" -L${cuda_prefix}/lib "   ;;
     esac
 fi
 
-# Snow Leopard (Mac OS X 10.6) provides a C extension for creating lambda-like
-# closure expressions (blocks), the syntax for which confuses the c2hs
-# preprocessor. We disable this by undefining the __BLOCKS__ macro.
+# Recent versions of Mac OS X (10.6 and later) provides a C extension for
+# creating lambda-like closure expressions (blocks), the syntax for which
+# confuses the c2hs preprocessor. We disable this by undefining the __BLOCKS__
+# macro.
 #
 AC_MSG_CHECKING(for Apple Blocks extension)
-if test -r "/System/Library/CoreServices/SystemVersion.plist"; then
-    SNOWLEOPARD=`grep '<string>10.6' /System/Library/CoreServices/SystemVersion.plist`
+if test -r "/usr/include/stdlib.h"; then
+    BLOCKS=`grep __BLOCKS__ /usr/include/stdlib.h`
 fi
-if test "$SNOWLEOPARD" != ""; then
+if test "$BLOCKS" != ""; then
     cuda_c2hsflags+="--cppopts=-U__BLOCKS__ "
     AC_MSG_RESULT(yes)
 else
@@ -47,7 +48,7 @@
 The configuration process failed to locate your CUDA installation. Ensure that
 you have installed the driver and developer toolkit, available from:
 
-  http://developer.nvidia.com/object/cuda.html
+  http://developer.nvidia.com/cuda-downloads
 
 Then make sure that "nvcc" is available in your PATH, or set the appropriate
 directories with --extra-include-dirs and --extra-lib-dirs.
diff --git a/cuda.cabal b/cuda.cabal
--- a/cuda.cabal
+++ b/cuda.cabal
@@ -1,5 +1,5 @@
 Name:                   cuda
-Version:                0.3.2.2
+Version:                0.4.0.0
 Synopsis:               FFI binding to the CUDA interface for programming NVIDIA GPUs
 Description:
     The CUDA library provides a direct, general purpose C-like SPMD programming
@@ -8,30 +8,12 @@
     functions from Haskell-land. You will need to install the CUDA driver and
     developer toolkit.
     .
-    <http://developer.nvidia.com/object/cuda.html>
+    <http://developer.nvidia.com/cuda-downloads>
     .
     The configure script will look for your CUDA installation in the standard
     places, and if the nvcc compiler is found in your PATH, relative to that.
     .
-    > CHANGE LOG
-    >   0.3.2
-    >    - Initial support for CUDA 3.2
-    >
-    >   0.2.2
-    >    - Foreign.CUDA.Analysis.optimalBlockSizeBy
-    >
-    >   0.2.1
-    >    - Improved cabal configuration phase
-    >    - Fixes for SDK 3.1 release changes
-    >    - Additional CUDA 3.1 bindings
-    >
-    >   0.2
-    >    - Occupancy calculator
-    >    - Textures
-    >    - Additional CUDA 3.0 bindings
-    >
-    >   0.1
-    >    - Initial release
+    This release is for version 4.0 of the CUDA toolkit.
 
 License:                BSD3
 License-file:           LICENSE
@@ -50,6 +32,7 @@
                         config.sub
                         install-sh
                         cuda.buildinfo.in
+                        cbits/stubs.h
 
 Library
   Exposed-Modules:      Foreign.CUDA
@@ -89,4 +72,9 @@
   Build-depends:        base >= 3 && < 5, bytestring, extensible-exceptions
   Extensions:
   ghc-options:          -Wall -O2
+
+
+source-repository head
+    type:               git
+    location:           https://github.com/tmcdonell/cuda
 
diff --git a/examples/Makefile b/examples/Makefile
deleted file mode 100644
--- a/examples/Makefile
+++ /dev/null
@@ -1,18 +0,0 @@
-ifneq ($(emu),1)
-    PROJECTS := $(shell find src -name Makefile)
-else
-    PROJECTS := $(shell find src -name Makefile | xargs grep -L 'USEDRVAPI')
-endif
-
-
-%.do :
-	$(MAKE) -C $(dir $*) $(MAKECMDGOALS)
-
-all : $(addsuffix .do,$(PROJECTS))
-	@echo "Finished building all"
-
-clean : $(addsuffix .do,$(PROJECTS))
-	@echo "Finished cleaning all"
-
-clobber : $(addsuffix .do,$(PROJECTS))
-	@echo "Finished cleaning all"
diff --git a/examples/common/common.mk b/examples/common/common.mk
deleted file mode 100644
--- a/examples/common/common.mk
+++ /dev/null
@@ -1,413 +0,0 @@
-# ------------------------------------------------------------------------------
-#
-# Copyright 1993-2009 NVIDIA Corporation.  All rights reserved.
-#
-# NVIDIA Corporation and its licensors retain all intellectual property and 
-# proprietary rights in and to this software and related documentation. 
-# Any use, reproduction, disclosure, or distribution of this software 
-# and related documentation without an express license agreement from
-# NVIDIA Corporation is strictly prohibited.
-#
-# Please refer to the applicable NVIDIA end user license agreement (EULA) 
-# associated with this source code for terms and conditions that govern 
-# your use of this NVIDIA software.
-#
-# ------------------------------------------------------------------------------
-
-# ------------------------------------------------------------------------------
-# Common Haskell/CUDA build system
-# ------------------------------------------------------------------------------
-
-.SUFFIXES : .cu .cu_dbg.o .c_dbg.o .cpp_dbg.o .cu_rel.o .c_rel.o .cpp_rel.o .cubin .ptx
-
-# No CUDA compatible device present
-# MAIN_DEVICE     := $(shell ghc -e "Control.Monad.liftM (Data.Either.either id Foreign.CUDA.deviceName) (Foreign.CUDA.props 0)")
-# ifeq ($(MAIN_DEVICE),"Device Emulation (CPU)")
-#     emu		:= 1
-# endif
-
-# Add new SM Versions here as devices with new Compute Capability are released
-SM_VERSIONS     := sm_10 sm_11 sm_12 sm_13
-
-# detect OS
-OSUPPER         := $(shell uname -s 2>/dev/null | tr [:lower:] [:upper:])
-OSLOWER         := $(shell uname -s 2>/dev/null | tr [:upper:] [:lower:])
-DARWIN          := $(strip $(findstring DARWIN, $(OSUPPER)))
-ifneq ($(DARWIN),)
-    SNOWLEOPARD := $(strip $(findstring 10.6, $(shell egrep "<string>10\.6.*</string>" /System/Library/CoreServices/SystemVersion.plist)))
-endif
-
-# detect if 32 bit or 64 bit system
-HP_64           := $(strip $(shell uname -m | grep 64))
-
-# Basic directory setup
-CUDA_INSTALL_PATH ?= /usr/local/cuda
-CUDA_SDK_PATH     ?= /Developer/GPU\ Computing/C
-
-SRCDIR          ?= .
-ROOTDIR         ?= ..
-ROOTBINDIR      := $(ROOTDIR)/../bin
-BINDIR		:= $(ROOTBINDIR)/$(OSLOWER)
-ROOTOBJDIR      := obj
-LIBDIR          := $(ROOTDIR)/../lib
-COMMONDIR	:= $(ROOTDIR)/../common
-
-# Compilers
-NVCC            := $(CUDA_INSTALL_PATH)/bin/nvcc
-GHC             := ghc
-C2HS            := c2hs
-HSC2HS          := hsc2hs
-CXX             := g++
-CC              := gcc
-LINK            := g++ -fPIC
-
-# Includes
-INCLUDES        += -I. -I$(CUDA_INSTALL_PATH)/include -I$(COMMONDIR)/include -I$(COMMONDIR)/src
-
-# architecture flag for cubin build
-CUBIN_ARCH_FLAG :=
-
-# Warning flags
-CXXWARN_FLAGS := \
-        -W -Wall \
-        -Wimplicit \
-        -Wswitch \
-        -Wformat \
-        -Wchar-subscripts \
-        -Wparentheses \
-        -Wmultichar \
-        -Wtrigraphs \
-        -Wpointer-arith \
-        -Wcast-align \
-        -Wreturn-type \
-        -Wno-unused-function
-
-CWARN_FLAGS := $(CXXWARN_FLAGS) \
-        -Wstrict-prototypes \
-        -Wmissing-prototypes \
-        -Wmissing-declarations \
-        -Wnested-externs \
-        -Wmain
-
-GHCWARN_FLAGS := \
-        -Wall
-
-# cross-compilation flags
-ifeq ($(x86_64),1)
-    NVCCFLAGS	+= -m64
-    ifneq ($(DARWIN),)
-        CXX_ARCH_FLAGS 	+= -arch x86_64
-    else
-        CXX_ARCH_FLAGS	+= -m64
-    endif
-else
-ifeq ($(i386),1)
-    NVCCFLAGS	+= -m32
-    ifneq ($(DARWIN),)
-        CXX_ARCH_FLAGS	+= -arch i386
-    else
-        CXX_ARCH_FLAGS	+= -m32
-    endif
-else
-    ifneq ($(SNOWLEOPARD),)
-        NVCCFLAGS	+= -m32
-        CXX_ARCH_FLAGS	+= -arch i386 -m32
-    endif
-endif
-endif
-
-# Compiler-specific flags
-NVCCFLAGS       +=
-GHCFLAGS        += $(GHCWARN_FLAGS) -i$(SRCDIR) -i$(COMMONDIR)/src -i$(OBJDIR) -odir $(OBJDIR) -hidir $(OBJDIR) --make
-CXXFLAGS        += $(CXXWARN_FLAGS) $(CXX_ARCH_FLAGS)
-CFLAGS          += $(CWARN_FLAGS) $(CXX_ARCH_FLAGS)
-LINK		+= $(CXX_ARCH_FLAGS)
-
-# Common flags
-COMMONFLAGS     += $(INCLUDES) -DUNIX
-
-# Debug/release configuration
-ifeq ($(dbg),1)
-    COMMONFLAGS += -g
-    GHCFLAGS	+= -prof -auto-all -fhpc
-    NVCCFLAGS   += -D_DEBUG
-    CXXFLAGS    += -D_DEBUG
-    CFLAGS      += -D_DEBUG
-    BINSUBDIR   := debug
-    LIBSUFFIX   := D
-else
-    COMMONFLAGS += -O2
-    GHCFLAGS	+= -O2
-    BINSUBDIR   := release
-    LIBSUFFIX   :=
-    NVCCFLAGS   += --compiler-options -fno-strict-aliasing
-    CXXFLAGS    += -fno-strict-aliasing
-    CFLAGS      += -fno-strict-aliasing
-endif
-
-# Device emulation configuration
-ifeq ($(emu),1)
-    NVCCFLAGS   += -deviceemu
-    CUDACCFLAGS +=
-    BINSUBDIR   := emu$(BINSUBDIR)
-    LIBSUFFIX   := $(LIBSUFFIX)_emu
-    # consistency, makes developing easier
-    C2HSFLAGS   += --cppopts=-D__DEVICE_EMULATION__
-    GHCFLAGS    += -D__DEVICE_EMULATION__
-    CXXFLAGS    += -D__DEVICE_EMULATION__
-    CFLAGS      += -D__DEVICE_EMULATION__
-endif
-
-# architecture flag for cubin build
-CUBIN_ARCH_FLAG :=
-
-# Libraries
-LIB             += -L$(LIBDIR) $(addprefix -l,$(EXTRALIBS))
-ifeq ($(HP_64),)
-   LIB          += -L$(CUDA_INSTALL_PATH)/lib
-else
-   LIB          += -L$(CUDA_INSTALL_PATH)/lib64
-endif
-
-# If dynamically linking to CUDA and CUDART, we exclude the libraries from the LIB
-ifeq ($(USECUDADYNLIB),1)
-    LIB         += -ldl -rdynamic
-else
-    # static linking, we will statically link against CUDA and CUDART
-    ifeq ($(USEDRVAPI),1)
-        LIB     += -lcuda
-    else
-        LIB     += -lcudart
-    endif
-endif
-
-ifeq ($(USECUFFT),1)
-    ifeq ($(emu),1)
-        LIB     += -lcufftemu
-    else
-        LIB     += -lcufft
-    endif
-endif
-
-ifeq ($(USECUBLAS),1)
-    ifeq ($(emu),1)
-        LIB     += -lcublasemu
-    else
-        LIB     += -lcublas
-    endif
-endif
-
-ifeq ($(USECUDPP),1)
-    CUDPPLIB := cudpp
-
-    ifneq ($(HP_64),)
-        CUDPPLIB := $(CUDPPLIB)64
-    endif
-
-    ifeq ($(emu),1)
-        CUDPPLIB := $(CUDPPLIB)_emu
-    endif
-
-    LIB     += -l$(CUDPPLIB)
-endif
-
-# Library/executable configuration
-ifneq ($(STATIC_LIB),)
-    TARGETDIR   := $(LIBDIR)
-    TARGET      := $(LIBDIR)/$(basename $(STATIC_LIB))$(LIBSUFFIX)$(suffix $(STATIC_LIB))
-    LINKLINE     = ar rucv $(TARGET) $(OBJS); ranlib $(TARGET)
-else
-ifneq ($(DYNAMIC_LIB),)
-    TARGETDIR   := $(LIBDIR)
-    TARGET      := $(LIBDIR)/$(basename $(DYNAMIC_LIB))$(LIBSUFFIX)$(suffix $(DYNAMIC_LIB))
-    CFLAGS      += -fPIC
-    CXXFLAGS    += -fPIC
-    NVCCFLAGS   += -Xcompiler -fPIC
-    ifneq ($(DARWIN),)
-    LINKLINE     = $(LINK) -dynamiclib -o $(TARGET) -install_name "@rpath/$(notdir $(TARGET))" $(OBJS) $(LIB)
-    else
-    LINKLINE     = $(LINK) -shared -o $(TARGET) -Wl,-rpath,$(notdir $(TARGET)) $(OBJS) $(LIB)
-    endif
-else
-    TARGETDIR   := $(BINDIR)/$(BINSUBDIR)
-    TARGET      := $(TARGETDIR)/$(EXECUTABLE)
-    ifneq ($(HSMAIN),)
-        ifeq ($(suffix $(HSMAIN)),.chs)
-            FOO      := $(HSMAIN)
-            CHSFILES += $(FOO)
-            HSMAIN    = $(OBJDIR)/$(basename $(FOO)).hs
-        endif
-
-        ifeq ($(dbg),1)
-#            OBJS     += $(OBJDIR)/ptxvars.cu.o
-            LINKLINE  = $(GHC) -o $(TARGET) $(LIB) $(OBJS) $(GHCFLAGS) $(HSMAIN)
-        else
-            LINKLINE  = $(GHC) -o $(TARGET) $(LIB) $(OBJS) $(GHCFLAGS) $(HSMAIN)
-        endif
-    else
-        LINKLINE = $(LINK) -o $(TARGET) $(OBJS) $(LIB)
-    endif
-endif
-endif
-
-# check if verbose
-ifeq ($(verbose),1)
-    VERBOSE     :=
-else
-    VERBOSE     := @
-endif
-
-
-# ------------------------------------------------------------------------------
-# Check for input flags and set compiler flags appropriately
-# ------------------------------------------------------------------------------
-ifeq ($(fastmath),1)
-    NVCCFLAGS   += -use_fast_math
-endif
-
-ifeq ($(keep),1)
-    NVCCFLAGS       += -keep
-    NVCC_KEEP_CLEAN := *.i* *.cubin *.cu.c *.cudafe* *.fatbin.c *.ptx
-endif
-
-ifdef maxregisters
-    NVCCFLAGS   += -maxrregcount $(maxregisters)
-endif
-
-# Add cudacc flags
-NVCCFLAGS += $(CUDACCFLAGS)
-
-# Add common flags
-NVCCFLAGS += $(COMMONFLAGS)
-CXXFLAGS  += $(COMMONFLAGS)
-CFLAGS    += $(COMMONFLAGS)
-
-ifeq ($(nvcc_warn_verbose),1)
-    NVCCFLAGS += $(addprefix --compiler-options ,$(CXXWARN_FLAGS))
-    NVCCFLAGS += --compiler-options -fno-strict-aliasing
-endif
-
-
-# ------------------------------------------------------------------------------
-# Set up object files
-# ------------------------------------------------------------------------------
-OBJDIR  := $(ROOTOBJDIR)/$(BINSUBDIR)
-OBJS    += $(patsubst %.cpp,$(OBJDIR)/%.cpp.o,$(notdir $(CCFILES)))
-OBJS    += $(patsubst %.c,$(OBJDIR)/%.c.o,$(notdir $(CFILES)))
-OBJS    += $(patsubst %.cu,$(OBJDIR)/%.cu.o,$(notdir $(CUFILES)))
-
-# ------------------------------------------------------------------------------
-# Set up preprocessed Haskell files
-# ------------------------------------------------------------------------------
-DEPS	+= $(patsubst %.chs,$(OBJDIR)/%.hs,$(notdir $(CHSFILES)))
-DEPS	+= $(patsubst %.hsc,$(OBJDIR)/%.hs,$(notdir $(HSCFILES)))
-
-# ------------------------------------------------------------------------------
-# Set up cubin output files
-# ------------------------------------------------------------------------------
-CUBINDIR := $(SRCDIR)/data
-CUBINS   += $(patsubst %.cu,$(CUBINDIR)/%.cubin,$(notdir $(CUBINFILES)))
-
-# ------------------------------------------------------------------------------
-# Set up PTX output files
-# ------------------------------------------------------------------------------
-PTXDIR  := $(SRCDIR)/data
-PTXBINS += $(patsubst %.cu,$(PTXDIR)/%.ptx,$(notdir $(PTXFILES)))
-
-
-# ------------------------------------------------------------------------------
-# Rules
-# ------------------------------------------------------------------------------
-default: $(TARGET)
-
-%.subdir :
-	$(VERBOSE)$(MAKE) -C $* $(MAKECMDGOALS)
-
-$(OBJDIR)/%.c.o : $(SRCDIR)/%.c $(C_DEPS)
-	$(VERBOSE)$(CC) $(CFLAGS) -o $@ -c $<
-
-$(OBJDIR)/%.cpp.o : $(SRCDIR)/%.cpp $(C_DEPS)
-	$(VERBOSE)$(CXX) $(CXXFLAGS) -o $@ -c $<
-
-$(OBJDIR)/ptxvars.cu.o: makedirectories
-	$(VERBOSE)$(NVCC) -g -G --host-compilation=C -D__DEVICE_LAUNCH_PARAMETERS_H__ -Xptxas -fext -o $@ -c $(CUDA_INSTALL_PATH)/bin/ptxvars.cu
-
-$(OBJDIR)/%.cu.o : $(SRCDIR)/%.cu $(CU_DEPS)
-	$(VERBOSE)$(NVCC) $(NVCCFLAGS) $(SMVERSIONFLAGS) -o $@ -c $<
-
-$(OBJDIR)/%.hs : $(SRCDIR)/%.chs
-	$(VERBOSE)$(C2HS) $(C2HSFLAGS) --include=$(OBJDIR) $(addprefix --cppopts=,$(INCLUDES)) --output-dir=$(OBJDIR) --output=$(notdir $@) $<
-
-$(OBJDIR)/%.hs : $(SRCDIR)/%.hsc
-	$(VERBOSE)$(HSC2HS) $(INCLUDES) -o $@ $<
-
-$(CUBINDIR)/%.cubin : $(SRCDIR)/%.cu cubindirectory
-	$(VERBOSE)$(NVCC) $(CUBIN_ARCH_FLAG) $(NVCCFLAGS) $(SMVERSIONFLAGS) -o $@ -cubin $<
-
-$(PTXDIR)/%.ptx : $(SRCDIR)/%.cu ptxdirectory
-	$(VERBOSE)$(NVCC) $(CUBIN_ARCH_FLAG) $(NVCCFLAGS) $(SMVERSIONFLAGS) -o $@ -ptx $<
-
-#
-# The following definition is a template that gets instantiated for each SM
-# version (sm_10, sm_13, etc.) stored in SMVERSIONS.  It does 2 things:
-# 1. It adds to OBJS a .cu_sm_XX.o for each .cu file it finds in CUFILES_sm_XX.
-# 2. It generates a rule for building .cu_sm_XX.o files from the corresponding
-#    .cu file.
-#
-# The intended use for this is to allow Makefiles that use common.mk to compile
-# files to different Compute Capability targets (aka SM arch version).  To do
-# so, in the Makefile, list files for each SM arch separately, like so:
-#
-# CUFILES_sm_10 := mycudakernel_sm10.cu app.cu
-# CUFILES_sm_12 := anothercudakernel_sm12.cu
-#
-define SMVERSION_template
-OBJS += $(patsubst %.cu,$(OBJDIR)/%.cu_$(1).o,$(notdir $(CUFILES_$(1))))
-$(OBJDIR)/%.cu_$(1).o : $(SRCDIR)/%.cu $(CU_DEPS)
-	$(VERBOSE)$(NVCC) -o $$@ -c $$< $(NVCCFLAGS) -arch $(1)
-endef
-
-# This line invokes the above template for each arch version stored in
-# SM_VERSIONS.  The call funtion invokes the template, and the eval
-# function interprets it as make commands.
-$(foreach smver,$(SM_VERSIONS),$(eval $(call SMVERSION_template,$(smver))))
-
-$(TARGET): makedirectories $(DEPS) $(OBJS) $(CUBINS) $(PTXBINS) Makefile $(addsuffix .subdir,$(SUBDIRS))
-	$(VERBOSE)$(LINKLINE)
-
-cubindirectory:
-	$(VERBOSE)mkdir -p $(CUBINDIR)
-
-ptxdirectory:
-	$(VERBOSE)mkdir -p $(PTXDIR)
-
-makedirectories:
-	$(VERBOSE)mkdir -p $(LIBDIR)
-	$(VERBOSE)mkdir -p $(OBJDIR)
-	$(VERBOSE)mkdir -p $(TARGETDIR)
-
-
-tidy : $(addsuffix .subdir,$(SUBDIRS))
-	$(VERBOSE)find . | egrep "#"  | xargs rm -f
-	$(VERBOSE)find . | egrep "\~" | xargs rm -f
-
-clean : tidy
-	$(VERBOSE)rm -f $(OBJS)
-	$(VERBOSE)rm -f $(CUBINS)
-	$(VERBOSE)rm -f $(PTXBINS)
-	$(VERBOSE)rm -f $(TARGET)
-	$(VERBOSE)rm -f $(NVCC_KEEP_CLEAN)
-	$(VERBOSE)rm -f $(ROOTBINDIR)/$(OSLOWER)/$(BINSUBDIR)/*.ppm
-	$(VERBOSE)rm -f $(ROOTBINDIR)/$(OSLOWER)/$(BINSUBDIR)/*.pgm
-	$(VERBOSE)rm -f $(ROOTBINDIR)/$(OSLOWER)/$(BINSUBDIR)/*.bin
-	$(VERBOSE)rm -f $(ROOTBINDIR)/$(OSLOWER)/$(BINSUBDIR)/*.bmp
-
-clobber : clean
-	$(VERBOSE)rm -rf $(ROOTOBJDIR)
-
-spotless:
-	$(VERBOSE)rm -rf .hpc
-	$(VERBOSE)rm -f $(EXECUTABLE).{aux,hp,prof,ps}
-	$(VERBOSE)rm -f *.html
-	$(VERBOSE)find . -name "*.tix" -print0 | xargs -0 rm -f
-
diff --git a/examples/common/include/cudpp/LICENSE b/examples/common/include/cudpp/LICENSE
deleted file mode 100644
--- a/examples/common/include/cudpp/LICENSE
+++ /dev/null
@@ -1,25 +0,0 @@
-Copyright (c) 2007-2009 The Regents of the University of California, Davis
-campus ("The Regents") and NVIDIA Corporation ("NVIDIA"). All rights reserved.
-
-Redistribution and use in source and binary forms, with or without modification, 
-are permitted provided that the following conditions are met:
-
-    * Redistributions of source code must retain the above copyright notice, 
-      this list of conditions and the following disclaimer.
-    * Redistributions in binary form must reproduce the above copyright notice, 
-      this list of conditions and the following disclaimer in the documentation 
-      and/or other materials provided with the distribution.
-    * Neither the name of the The Regents, nor NVIDIA, nor the names of its 
-      contributors may be used to endorse or promote products derived from this 
-      software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
-ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
-WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
-IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
-INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
-BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
-DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 
-LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 
-OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF 
-ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/examples/common/include/cudpp/cudpp_globals.h b/examples/common/include/cudpp/cudpp_globals.h
deleted file mode 100644
--- a/examples/common/include/cudpp/cudpp_globals.h
+++ /dev/null
@@ -1,56 +0,0 @@
-// -------------------------------------------------------------
-// cuDPP -- CUDA Data Parallel Primitives library
-// -------------------------------------------------------------
-// $Revision: 5632 $
-// $Date: 2009-07-01 14:36:01 +1000 (Wed, 01 Jul 2009) $
-// -------------------------------------------------------------
-// This source code is distributed under the terms of license.txt in
-// the root directory of this source distribution.
-// -------------------------------------------------------------
-
-/**
- * @file
- * cudpp_globals.h
- *
- * @brief Global declarations defining machine characteristics of GPU target
- * These are currently set for best performance on G8X GPUs.  The optimal
- * parameters may change on future GPUs. In the future, we hope to make
- * CUDPP a self-tuning library.
- */
-
-#ifndef __CUDPP_GLOBALS_H__
-#define __CUDPP_GLOBALS_H__
-
-const int NUM_BANKS = 16;                        /**< Number of shared memory banks */
-const int LOG_NUM_BANKS = 4;                     /**< log_2(NUM_BANKS) */
-const int CTA_SIZE = 128;                        /**< Number of threads in a CTA */
-const int WARP_SIZE = 32;                        /**< Number of threads in a warp */
-const int LOG_CTA_SIZE = 7;                      /**< log_2(CTA_SIZE) */
-const int LOG_WARP_SIZE = 5;                     /**< log_2(WARP_SIZE) */
-const int LOG_SIZEOF_FLOAT = 2;                  /**< log_2(sizeof(float)) */
-const int SCAN_ELTS_PER_THREAD = 8;              /**< Number of elements per scan thread */
-const int SEGSCAN_ELTS_PER_THREAD = 8;     /**< Number of elements per segmented scan thread */
-
-const int maxSharedMemoryPerBlock = 16384; /**< Number of bytes of shared
-                                              memory in each block */
-const int maxThreadsPerBlock = CTA_SIZE;   /**< Maximum number of
-                                             * threads in a CTA */
-
-#define AVOID_BANK_CONFLICTS /**< Set if by default, we want our
-                              * shared memory allocation to perform
-                              * additional computation to avoid bank
-                              * conflicts */
-
-#ifdef AVOID_BANK_CONFLICTS
-#define CONFLICT_FREE_OFFSET(index) ((index) >> LOG_NUM_BANKS)
-#else
-#define CONFLICT_FREE_OFFSET(index) (0)
-#endif
-
-#endif // __CUDPP_GLOBALS_H__
-
-// Leave this at the end of the file
-// Local Variables:
-// mode:c++
-// c-file-style: "NVIDIA"
-// End:
diff --git a/examples/common/include/cudpp/shared_mem.h b/examples/common/include/cudpp/shared_mem.h
deleted file mode 100644
--- a/examples/common/include/cudpp/shared_mem.h
+++ /dev/null
@@ -1,115 +0,0 @@
-// -------------------------------------------------------------
-// cuDPP -- CUDA Data Parallel Primitives library
-// -------------------------------------------------------------
-// $Revision: 5633 $
-// $Date: 2009-07-01 15:02:51 +1000 (Wed, 01 Jul 2009) $
-// -------------------------------------------------------------
-// This source code is distributed under the terms of license.txt
-// in the root directory of this source distribution.
-// -------------------------------------------------------------
-
-/**
- * @file
- * sharedmem.h
- *
- * @brief Shared memory declaration struct for templatized types.
- *
- * Because dynamically sized shared memory arrays are declared "extern" in CUDA,
- * we can't templatize their types directly.  To get around this, we declare a
- * simple wrapper struct that will declare the extern array with a different
- * name depending on the type.  This avoids linker errors about multiple
- * definitions.
- *
- * To use dynamically allocated shared memory in a templatized __global__ or
- * __device__ function, just replace code like this:
- *
- * <pre>
- *  template<class T>
- *  __global__ void
- *  foo( T* d_out, T* d_in)
- *  {
- *      // Shared mem size is determined by the host app at run time
- *      extern __shared__  T sdata[];
- *      ...
- *      doStuff(sdata);
- *      ...
- *  }
- * </pre>
- *
- *  With this
- * <pre>
- *  template<class T>
- *  __global__ void
- *  foo( T* d_out, T* d_in)
- *  {
- *      // Shared mem size is determined by the host app at run time
- *      SharedMemory<T> smem;
- *      T* sdata = smem.getPointer();
- *      ...
- *      doStuff(sdata);
- *      ...
- *  }
- * </pre>
- */
-
-#ifndef __SHARED_MEM_H__
-#define __SHARED_MEM_H__
-
-
-/** @brief Wrapper class for templatized dynamic shared memory arrays.
-  *
-  * This struct uses template specialization on the type \a T to declare
-  * a differently named dynamic shared memory array for each type
-  * (\code extern __shared__ T s_type[] \endcode).
-  *
-  * Currently there are specializations for the following types:
-  * \c int, \c uint, \c char, \c uchar, \c short, \c ushort, \c long,
-  * \c unsigned long, \c bool, \c float, and \c double. One can also specialize it
-  * for user defined types.
-  */
-template <typename T>
-struct SharedMemory
-{
-    /** Return a pointer to the runtime-sized shared memory array. **/
-    __device__ T* getPointer()
-    {
-        extern __device__ void Error_UnsupportedType(); // Ensure that we won't compile any un-specialized types
-        Error_UnsupportedType();
-        return (T*)0;
-    }
-    // TODO: Use operator overloading to make this class look like a regular array
-};
-
-// Following are the specializations for the following types.
-// int, uint, char, uchar, short, ushort, long, ulong, bool, float, and double
-// One could also specialize it for user-defined types.
-
-#define SPEC_SHAREDMEM(T, name)                                                         \
-    template <> struct SharedMemory <T>                                                 \
-    {                                                                                   \
-        __device__ T* getPointer() { extern __shared__ T s_##name[]; return s_##name; } \
-    }
-
-SPEC_SHAREDMEM(int,    int);
-SPEC_SHAREDMEM(char,   char);
-SPEC_SHAREDMEM(long,   long);
-SPEC_SHAREDMEM(short,  short);
-SPEC_SHAREDMEM(bool,   bool);
-SPEC_SHAREDMEM(float,  float);
-SPEC_SHAREDMEM(double, double);
-
-SPEC_SHAREDMEM(unsigned int,   uint);
-SPEC_SHAREDMEM(unsigned char,  uchar);
-SPEC_SHAREDMEM(unsigned long,  ulong);
-SPEC_SHAREDMEM(unsigned short, ushort);
-
-SPEC_SHAREDMEM(uchar4, uchar4);
-
-#undef SPEC_SHAREDMEM
-#endif // __SHARED_MEM_H__
-
-// Leave this at the end of the file
-// Local Variables:
-// mode:c++
-// c-file-style: "NVIDIA"
-// End:
diff --git a/examples/common/include/cudpp/type_vector.h b/examples/common/include/cudpp/type_vector.h
deleted file mode 100644
--- a/examples/common/include/cudpp/type_vector.h
+++ /dev/null
@@ -1,51 +0,0 @@
-// -------------------------------------------------------------
-// cuDPP -- CUDA Data Parallel Primitives library
-// -------------------------------------------------------------
-// $Revision: 5632 $
-// $Date: 2009-07-01 14:36:01 +1000 (Wed, 01 Jul 2009) $
-// -------------------------------------------------------------
-// This source code is distributed under the terms of license.txt in
-// the root directory of this source distribution.
-// -------------------------------------------------------------
-
-#ifndef __TYPE_VECTOR_H__
-#define __TYPE_VECTOR_H__
-
-/** @brief Utility template struct for generating small vector types from scalar types
-  *
-  * Given a base scalar type (\c int, \c float, etc.) and a vector length (1 through 4) as
-  * template parameters, this struct defines a vector type (\c float3, \c int4, etc.) of the
-  * specified length and base type.  For example:
-  * \code
-  * template <class T>
-  * __device__ void myKernel(T *data)
-  * {
-  *     typeToVector<T,4>::Result myVec4;             // create a vec4 of type T
-  *     myVec4 = (typeToVector<T,4>::Result*)data[0]; // load first element of data as a vec4
-  * }
-  * \endcode
-  *
-  * This functionality is implemented using template specialization.  Currently specializations
-  * for int, float, and unsigned int vectors of lengths 2-4 are defined.  Note that this results
-  * in types being generated at compile time -- there is no runtime cost.  typeToVector is used by
-  * the optimized scan \c __device__ functions in scan_cta.cu.
-  */
-template <typename T, int N>
-struct typeToVector
-{
-    typedef T Result;
-};
-
-#define TYPE_VECTOR(type, name)                                                 \
-    template <> struct typeToVector<type, 2> { typedef name##2 Result; };       \
-    template <> struct typeToVector<type, 3> { typedef name##3 Result; };       \
-    template <> struct typeToVector<type, 4> { typedef name##4 Result; }
-
-TYPE_VECTOR(int,         int);
-TYPE_VECTOR(float,       float);
-TYPE_VECTOR(unsigned int, uint);
-
-
-#undef TYPE_VECTOR
-#endif
-
diff --git a/examples/common/include/operator.h b/examples/common/include/operator.h
deleted file mode 100644
--- a/examples/common/include/operator.h
+++ /dev/null
@@ -1,114 +0,0 @@
-/* -----------------------------------------------------------------------------
- *
- * Module    : Operator
- * Copyright : (c) 2009 Trevor L. McDonell
- * License   : BSD
- *
- * A template class for unary/binary kernel operations
- *
- * ---------------------------------------------------------------------------*/
-
-
-#ifndef __OPERATOR_H__
-#define __OPERATOR_H__
-
-#include <float.h>
-#include <limits.h>
-
-
-/*
- * Template class for an operation that can be mapped over an array.
- */
-template <typename Ta, typename Tb=Ta>
-class Functor
-{
-public:
-    /*
-     * Apply the operation to the given operand.
-     */
-    static __device__ Tb apply(const Ta &x);
-};
-
-template <typename Ta, typename Tb>
-class fromIntegral : Functor<Ta, Tb>
-{
-public:
-    static __device__ Tb apply(const Ta &x) { return (Tb) x; }
-};
-
-
-/*
- * Template class for binary operators. Certain algorithms may require the
- * operator to be associative (that is, Ta == Tb), such as parallel scan and
- * reduction.
- *
- * As this is template code, it should compile down to something efficient...
- */
-template <typename Ta, typename Tb=Ta, typename Tc=Ta>
-class BinaryOp
-{
-public:
-    /*
-     * Apply the operation to the given operands.
-     */
-    static __device__ Tc apply(const Ta &a, const Tb &b);
-
-    /*
-     * Return an identity element for the type Tc.
-     *
-     * This may have special meaning for a given implementation, for example a
-     * `max' operation over integers may want to return INT_MIN.
-     */
-    static __device__ Tc identity();
-};
-
-/*
- * Return the minimum or maximum value of a type
- */
-template <typename T> inline __device__ T getMin();
-template <typename T> inline __device__ T getMax();
-
-#define SPEC_MINMAX(type,vmin,vmax)                                            \
-    template <> inline __device__ type getMin() { return vmin; };              \
-    template <> inline __device__ type getMax() { return vmax; }               \
-
-SPEC_MINMAX(float,        -FLT_MAX,  FLT_MAX);
-SPEC_MINMAX(int,           INT_MIN,  INT_MAX);
-SPEC_MINMAX(char,          CHAR_MIN, CHAR_MAX);
-SPEC_MINMAX(unsigned int,  0,        UINT_MAX);
-SPEC_MINMAX(unsigned char, 0,        UCHAR_MAX);
-
-
-/*
- * Basic binary arithmetic operations. We take advantage of automatic type
- * promotion to keep the parameters general.
- */
-#define BASIC_OP(name,expr,id)                                                 \
-    template <typename Ta, typename Tb=Ta, typename Tc=Ta>                     \
-    class name : BinaryOp<Ta, Tb, Tc>                                          \
-    {                                                                          \
-    public:                                                                    \
-        static __device__ Tc apply(const Ta &a, const Tb &b) { return expr; }  \
-        static __device__ Tc identity() { return id; }                         \
-    }
-
-#define LOGICAL_OP(name,expr,id)                                               \
-    template <typename Ta, typename Tb=Ta>                                     \
-    class name : BinaryOp<Ta, Tb, bool>                                        \
-    {                                                                          \
-    public:                                                                    \
-        static __device__ bool apply(const Ta &a, const Tb &b) { return expr; }\
-        static __device__ bool identity() { return id; }                       \
-    }
-
-BASIC_OP(Plus,  a + b,    0);
-BASIC_OP(Times, a * b,    1);
-BASIC_OP(Min,   min(a,b), getMax<Ta>());
-BASIC_OP(Max,   max(a,b), getMin<Ta>());
-
-LOGICAL_OP(Eq,  a == b,   false);
-
-#undef SPEC_MINMAX
-#undef BASIC_OP
-#endif
-
diff --git a/examples/common/include/utils.h b/examples/common/include/utils.h
deleted file mode 100644
--- a/examples/common/include/utils.h
+++ /dev/null
@@ -1,146 +0,0 @@
-/* -----------------------------------------------------------------------------
- *
- * Module    : Utils
- * Copyright : (c) 2009 Trevor L. McDonell
- * License   : BSD
- *
- * ---------------------------------------------------------------------------*/
-
-
-#ifndef __UTILS_H__
-#define __UTILS_H__
-
-#include <math.h>
-#include <stdio.h>
-
-
-/*
- * Core assert function. Don't let this escape...
- */
-#if defined(__CUDACC__) || !defined(__DEVICE_EMULATION__)
-#define __assert(e, file, line) ((void)0)
-#else
-#define __assert(e, file, line) \
-    ((void) fprintf (stderr, "%s:%u: failed assertion `%s'\n", file, line, e), abort())
-#endif
-
-/*
- * Test the given expression, and abort the program if it evaluates to false.
- * Only available in debug mode.
- */
-#ifndef _DEBUG
-#define assert(e)               ((void)0)
-#else
-#define assert(e)  \
-    ((void) ((e) ? (void(0)) : __assert (#e, __FILE__, __LINE__)))
-#endif
-
-
-/*
- * Macro to insert __syncthreads() in device emulation mode
- */
-#ifdef __DEVICE_EMULATION__
-#define __EMUSYNC               __syncthreads()
-#else
-#define __EMUSYNC
-#endif
-
-
-/*
- * Check the return status of CUDA API calls, and abort with an appropriate
- * error string on failure.
- */
-#define CUDA_SAFE_CALL_NO_SYNC(call)                                           \
-    do {                                                                       \
-        cudaError err = call;                                                  \
-        if(cudaSuccess != err) {                                               \
-            const char *str = cudaGetErrorString(err);                         \
-            __assert(str, __FILE__, __LINE__);                                 \
-        }                                                                      \
-    } while (0)
-
-#define CUDA_SAFE_CALL(call)                                                   \
-    do {                                                                       \
-        CUDA_SAFE_CALL_NO_SYNC(call);                                          \
-        CUDA_SAFE_CALL_NO_SYNC(cudaThreadSynchronize());                       \
-    } while (0)
-
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/*
- * Determine if the input is a power of two
- */
-inline bool
-isPow2(unsigned int x)
-{
-    return ((x&(x-1)) == 0);
-}
-
-
-/*
- * Compute the next highest power of two
- */
-inline unsigned int
-ceilPow2(unsigned int x)
-{
-#if 0
-    --x;
-    x |= x >> 1;
-    x |= x >> 2;
-    x |= x >> 4;
-    x |= x >> 8;
-    x |= x >> 16;
-    return ++x;
-#endif
-
-    return (isPow2(x)) ? x : 1u << (int) ceil(log2((double)x));
-}
-
-
-/*
- * Compute the next lowest power of two
- */
-inline unsigned int
-floorPow2(unsigned int x)
-{
-#if 0
-    float nf = (float) n;
-    return 1 << (((*(int*)&nf) >> 23) - 127);
-#endif
-
-    int exp;
-    frexp(x, &exp);
-    return 1 << (exp - 1);
-}
-
-
-/*
- * computes next highest multiple of f from x
- */
-inline unsigned int
-multiple(unsigned int x, unsigned int f)
-{
-    return ((x + (f-1)) / f);
-}
-
-
-/*
- * MS Excel-style CEIL() function. Rounds x up to nearest multiple of f
- */
-inline unsigned int
-ceiling(unsigned int x, unsigned int f)
-{
-    return multiple(x, f) * f;
-}
-
-
-#undef __asert
-
-#ifdef __cplusplus
-}
-#endif
-#endif
-
diff --git a/examples/common/src/C2HS.hs b/examples/common/src/C2HS.hs
deleted file mode 100644
--- a/examples/common/src/C2HS.hs
+++ /dev/null
@@ -1,224 +0,0 @@
---  C->Haskell Compiler: Marshalling library
---
---  Copyright (c) [1999...2005] Manuel M T Chakravarty
---
---  Redistribution and use in source and binary forms, with or without
---  modification, are permitted provided that the following conditions are met:
--- 
---  1. Redistributions of source code must retain the above copyright notice,
---     this list of conditions and the following disclaimer. 
---  2. Redistributions in binary form must reproduce the above copyright
---     notice, this list of conditions and the following disclaimer in the
---     documentation and/or other materials provided with the distribution. 
---  3. The name of the author may not be used to endorse or promote products
---     derived from this software without specific prior written permission. 
---
---  THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
---  IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
---  OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
---  NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 
---  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
---  TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
---  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
---  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
---  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
---  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
---
---- Description ---------------------------------------------------------------
---
---  Language: Haskell 98
---
---  This module provides the marshaling routines for Haskell files produced by 
---  C->Haskell for binding to C library interfaces.  It exports all of the
---  low-level FFI (language-independent plus the C-specific parts) together
---  with the C->HS-specific higher-level marshalling routines.
---
-
-module C2HS (
-
-  -- * Re-export the language-independent component of the FFI 
-  module Foreign,
-
-  -- * Re-export the C language component of the FFI
-  module Foreign.C,
-
-  -- * Composite marshalling functions
-  withCStringLenIntConv, peekCStringLenIntConv, withIntConv, withFloatConv,
-  peekIntConv, peekFloatConv, withBool, peekBool, withEnum, peekEnum,
-
-  -- * Conditional results using 'Maybe'
-  nothingIf, nothingIfNull,
-
-  -- * Bit masks
-  combineBitMasks, containsBitMask, extractBitMasks,
-
-  -- * Conversion between C and Haskell types
-  cIntConv, cFloatConv, cToBool, cFromBool, cToEnum, cFromEnum
-) where 
-
-
-import Foreign
-       hiding       (Word)
-		    -- Should also hide the Foreign.Marshal.Pool exports in
-		    -- compilers that export them
-import Foreign.C
-
-import Monad        (liftM)
-
-
--- Composite marshalling functions
--- -------------------------------
-
--- Strings with explicit length
---
-withCStringLenIntConv    :: String -> (CStringLen -> IO a) -> IO a
-withCStringLenIntConv s f = withCStringLen s $ \(p, n) -> f (p, cIntConv n)
-
-peekCStringLenIntConv      :: CStringLen -> IO String
-peekCStringLenIntConv (s,n) = peekCStringLen (s, cIntConv n)
-
--- Marshalling of numerals
---
-
-withIntConv   :: (Storable b, Integral a, Integral b) 
-	      => a -> (Ptr b -> IO c) -> IO c
-withIntConv    = with . cIntConv
-
-withFloatConv :: (Storable b, RealFloat a, RealFloat b) 
-	      => a -> (Ptr b -> IO c) -> IO c
-withFloatConv  = with . cFloatConv
-
-peekIntConv   :: (Storable a, Integral a, Integral b) 
-	      => Ptr a -> IO b
-peekIntConv    = liftM cIntConv . peek
-
-peekFloatConv :: (Storable a, RealFloat a, RealFloat b) 
-	      => Ptr a -> IO b
-peekFloatConv  = liftM cFloatConv . peek
-
--- Passing Booleans by reference
---
-
-withBool :: (Integral a, Storable a) => Bool -> (Ptr a -> IO b) -> IO b
-withBool  = with . fromBool
-
-peekBool :: (Integral a, Storable a) => Ptr a -> IO Bool
-peekBool  = liftM toBool . peek
-
-
--- Passing enums by reference
---
-
-withEnum :: (Enum a, Integral b, Storable b) => a -> (Ptr b -> IO c) -> IO c
-withEnum  = with . cFromEnum
-
-peekEnum :: (Enum a, Integral b, Storable b) => Ptr b -> IO a
-peekEnum  = liftM cToEnum . peek
-
-
-{-
--- Storing of 'Maybe' values
--- -------------------------
-
-instance Storable a => Storable (Maybe a) where
-  sizeOf    _ = sizeOf    (undefined :: Ptr ())
-  alignment _ = alignment (undefined :: Ptr ())
-
-  peek p = do
-	     ptr <- peek (castPtr p)
-	     if ptr == nullPtr
-	       then return Nothing
-	       else liftM Just $ peek ptr
-
-  poke p v = do
-	       ptr <- case v of
-		        Nothing -> return nullPtr
-			Just v' -> new v'
-               poke (castPtr p) ptr
--}
-
--- Conditional results using 'Maybe'
--- ---------------------------------
-
--- Wrap the result into a 'Maybe' type.
---
--- * the predicate determines when the result is considered to be non-existing,
---   ie, it is represented by `Nothing'
---
--- * the second argument allows to map a result wrapped into `Just' to some
---   other domain
---
-nothingIf       :: (a -> Bool) -> (a -> b) -> a -> Maybe b
-nothingIf p f x  = if p x then Nothing else Just $ f x
-
--- |Instance for special casing null pointers.
---
-nothingIfNull :: (Ptr a -> b) -> Ptr a -> Maybe b
-nothingIfNull  = nothingIf (== nullPtr)
-
-
--- Support for bit masks
--- ---------------------
-
--- Given a list of enumeration values that represent bit masks, combine these
--- masks using bitwise disjunction.
---
-combineBitMasks :: (Enum a, Bits b) => [a] -> b
-combineBitMasks = foldl (.|.) 0 . map (fromIntegral . fromEnum)
-
--- Tests whether the given bit mask is contained in the given bit pattern
--- (i.e., all bits set in the mask are also set in the pattern).
---
-containsBitMask :: (Bits a, Enum b) => a -> b -> Bool
-bits `containsBitMask` bm = let bm' = fromIntegral . fromEnum $ bm
-			    in
-			    bm' .&. bits == bm'
-
--- |Given a bit pattern, yield all bit masks that it contains.
---
--- * This does *not* attempt to compute a minimal set of bit masks that when
---   combined yield the bit pattern, instead all contained bit masks are
---   produced.
---
-extractBitMasks :: (Bits a, Enum b, Bounded b) => a -> [b]
-extractBitMasks bits = 
-  [bm | bm <- [minBound..maxBound], bits `containsBitMask` bm]
-
-
--- Conversion routines
--- -------------------
-
--- |Integral conversion
---
-cIntConv :: (Integral a, Integral b) => a -> b
-cIntConv  = fromIntegral
-
--- |Floating conversion
---
-cFloatConv :: (RealFloat a, RealFloat b) => a -> b
-cFloatConv  = realToFrac
--- As this conversion by default goes via `Rational', it can be very slow...
-{-# RULES 
-  "cFloatConv/Float->Float"   forall (x::Float).  cFloatConv x = x;
-  "cFloatConv/Double->Double" forall (x::Double). cFloatConv x = x
- #-}
-
--- |Obtain C value from Haskell 'Bool'.
---
-cFromBool :: Num a => Bool -> a
-cFromBool  = fromBool
-
--- |Obtain Haskell 'Bool' from C value.
---
-cToBool :: Num a => a -> Bool
-cToBool  = toBool
-
--- |Convert a C enumeration to Haskell.
---
-cToEnum :: (Integral i, Enum e) => i -> e
-cToEnum  = toEnum . cIntConv
-
--- |Convert a Haskell enumeration to C.
---
-cFromEnum :: (Enum e, Integral i) => e -> i
-cFromEnum  = cIntConv . fromEnum
diff --git a/examples/common/src/PrettyPrint.hs b/examples/common/src/PrettyPrint.hs
deleted file mode 100644
--- a/examples/common/src/PrettyPrint.hs
+++ /dev/null
@@ -1,61 +0,0 @@
---------------------------------------------------------------------------------
--- |
--- Module    : PrettyPrint
--- Copyright : (c) 2009 Trevor L. McDonell
--- License   : BSD
---
--- Simple layout and pretty printing
---
---------------------------------------------------------------------------------
-
-module PrettyPrint where
-
-import Data.List
-import Text.PrettyPrint
-import System.IO
-
-
---------------------------------------------------------------------------------
--- Printing
---------------------------------------------------------------------------------
-
-printDoc :: Doc -> IO ()
-printDoc =  putStrLn . flip (++) "\n" . render
-
---
--- stolen from $fptools/ghc/compiler/utils/Pretty.lhs
---
--- This code has a BSD-style license
---
-printDocFull :: Mode -> Handle -> Doc -> IO ()
-printDocFull m hdl doc = do
-  fullRender m cols 1.5 put done doc
-  hFlush hdl
-  where
-    put (Chr c) next  = hPutChar hdl c >> next
-    put (Str s) next  = hPutStr  hdl s >> next
-    put (PStr s) next = hPutStr  hdl s >> next
-
-    done = hPutChar hdl '\n'
-    cols = 80
-
-
---------------------------------------------------------------------------------
--- Layout
---------------------------------------------------------------------------------
-
---
--- Display the given grid of renderable data, given as either a list of rows or
--- columns, using the minimum size required for each column. An additional
--- parameter specifies extra space to be inserted between each column.
---
-ppAsRows      :: Int -> [[Doc]] -> Doc
-ppAsRows q    =  ppAsColumns q . transpose
-
-ppAsColumns   :: Int -> [[Doc]] -> Doc
-ppAsColumns q =  vcat . map hsep . transpose . map (\col -> pad (width col) col)
-  where
-    len   = length . render
-    width = maximum . map len
-    pad w = map (\x -> x <> (hcat $ replicate (w - (len x) + q) space))
-
diff --git a/examples/common/src/RandomVector.hs b/examples/common/src/RandomVector.hs
deleted file mode 100644
--- a/examples/common/src/RandomVector.hs
+++ /dev/null
@@ -1,101 +0,0 @@
-{-# LANGUAGE FlexibleContexts, ParallelListComp #-}
---------------------------------------------------------------------------------
---
--- Module    : RandomVector
--- Copyright : (c) 2009 Trevor L. McDonell
--- License   : BSD
---
--- Storable multi-dimensional arrays and lists of random numbers
---
---------------------------------------------------------------------------------
-
-module RandomVector
-  (
-    Storable,
-    module RandomVector,
-    module Data.Array.Storable
-  )
-  where
-
-import Foreign                                          (Ptr, Storable)
-import Control.Monad                                    (join)
-import Control.Exception                                (evaluate)
-import Data.Array.Storable
-import System.Random
-
-
---------------------------------------------------------------------------------
--- Arrays
---------------------------------------------------------------------------------
-
-type Vector e = StorableArray Int e
-type Matrix e = StorableArray (Int,Int) e
-
-withVector :: Vector e -> (Ptr e -> IO a) -> IO a
-withVector = withStorableArray
-
-withMatrix :: Matrix e -> (Ptr e -> IO a) -> IO a
-withMatrix = withStorableArray
-
-
---
--- To ensure the array is fully evaluated, force one element
---
-evaluateArr :: (Ix i, MArray StorableArray e IO)
-            => i -> StorableArray i e -> IO (StorableArray i e)
-evaluateArr l arr = (join $ evaluate (arr `readArray` l)) >> return arr
-
-
---
--- Generate a new random array
---
-randomArrR :: (Ix i, Num e, Storable e, Random e, MArray StorableArray e IO)
-           => (i,i) -> (e,e) -> IO (StorableArray i e)
-randomArrR (l,u) bnds = do
-  rg <- newStdGen
-  let -- The standard random number generator is too slow to generate really
-      -- large vectors. Instead, we generate a short vector and repeat that.
-      k     = 1000
-      rands = take k (randomRs bnds rg)
-
-  newListArray (l,u) [rands !! (index (l,u) i`mod`k) | i <- range (l,u)] >>= evaluateArr l
-
-
-randomArr :: (Ix i, Num e, Storable e, Random e, MArray StorableArray e IO)
-          => (i,i) -> IO (StorableArray i e)
-randomArr (l,u) = randomArrR (l,u) (-1,1)
-
-
---
--- Verify similarity of two arrays
---
-verify :: (Ix i, Ord e, Fractional e, Storable e)
-       => StorableArray i e -> StorableArray i e -> IO (Bool)
-verify ref arr = do
-  as <- getElems arr
-  bs <- getElems ref
-  return (verifyList as bs)
-
-
---------------------------------------------------------------------------------
--- Lists
---------------------------------------------------------------------------------
-
-randomListR :: (Num e, Random e, Storable e) => Int -> (e,e) -> IO [e]
-randomListR len bnds = do
-  rg <- newStdGen
-  let -- The standard random number generator is too slow to generate really
-      -- large vectors. Instead, we generate a short vector and repeat that.
-      k     = 1000
-      rands = take k (randomRs bnds rg)
-
-  evaluate [rands !! (i`mod`k) | i <- [0..len-1]]
-
-randomList :: (Num e, Random e, Storable e) => Int -> IO [e]
-randomList len = randomListR len (-1,1)
-
-
-verifyList :: (Ord e, Fractional e) => [e] -> [e] -> Bool
-verifyList xs ys = all (< epsilon) [abs ((x-y)/(x+y+epsilon)) | x <- xs | y <- ys]
-  where epsilon = 0.0005
-
diff --git a/examples/common/src/Time.hs b/examples/common/src/Time.hs
deleted file mode 100644
--- a/examples/common/src/Time.hs
+++ /dev/null
@@ -1,52 +0,0 @@
---------------------------------------------------------------------------------
---
--- Module    : Time
--- Copyright : (c) 2009 Trevor L. McDonell
--- License   : BSD
---
--- Simple timing benchmarks
---
---------------------------------------------------------------------------------
-
-module Time where
-
-import System.CPUTime
-import Control.Monad
-
-
--- Timing
---
-data Time = Time { cpu_time :: Integer }
-
-type TimeUnit = Integer -> Integer
-
-picosecond, millisecond, second :: TimeUnit
-picosecond  n = n
-millisecond n = n `div` 1000000000
-second      n = n `div` 1000000000000
-
-getTime :: IO Time
-getTime = Time `fmap` getCPUTime
-
-timeIn :: TimeUnit -> Time -> Integer
-timeIn u (Time t) = u t
-
-elapsedTime :: Time -> Time -> Time
-elapsedTime (Time t1) (Time t2) = Time (t2 - t1)
-
-
--- Simple benchmarking
---
-{-# NOINLINE benchmark #-}
-benchmark
-  :: Int                -- Number of times to repeat test
-  -> IO a               -- Test to run
-  -> IO b               -- Finaliser to before measuring elapsed time
-  -> IO (Time,a)
-benchmark n testee finaliser = do
-  t1    <- getTime
-  (r:_) <- replicateM n testee
-  _     <- finaliser
-  t2    <- getTime
-  return (elapsedTime t1 t2, r)
-
diff --git a/examples/common/src/cudpp/LICENSE b/examples/common/src/cudpp/LICENSE
deleted file mode 100644
--- a/examples/common/src/cudpp/LICENSE
+++ /dev/null
@@ -1,25 +0,0 @@
-Copyright (c) 2007-2009 The Regents of the University of California, Davis
-campus ("The Regents") and NVIDIA Corporation ("NVIDIA"). All rights reserved.
-
-Redistribution and use in source and binary forms, with or without modification, 
-are permitted provided that the following conditions are met:
-
-    * Redistributions of source code must retain the above copyright notice, 
-      this list of conditions and the following disclaimer.
-    * Redistributions in binary form must reproduce the above copyright notice, 
-      this list of conditions and the following disclaimer in the documentation 
-      and/or other materials provided with the distribution.
-    * Neither the name of the The Regents, nor NVIDIA, nor the names of its 
-      contributors may be used to endorse or promote products derived from this 
-      software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
-ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
-WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
-IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
-INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
-BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
-DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 
-LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 
-OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF 
-ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/examples/common/src/cudpp/scan_cta.cu b/examples/common/src/cudpp/scan_cta.cu
deleted file mode 100644
--- a/examples/common/src/cudpp/scan_cta.cu
+++ /dev/null
@@ -1,617 +0,0 @@
-// -------------------------------------------------------------
-//  cuDPP -- CUDA Data Parallel Primitives library
-//  -------------------------------------------------------------
-//  $Revision: 5633 $
-//  $Date: 2009-07-01 15:02:51 +1000 (Wed, 01 Jul 2009) $
-// -------------------------------------------------------------
-// This source code is distributed under the terms of license.txt
-// in the root directory of this source distribution.
-// -------------------------------------------------------------
-
-/**
- * @file
- * scan_cta.cu
- *
- * @brief CUDPP CTA-level scan routines
- */
-
-/** \defgroup cudpp_cta CUDPP CTA-Level API
-  * The CUDPP CTA-Level API contains functions that run on the GPU
-  * device.  These are CUDA \c __device__ functions that are called
-  * from within other CUDA device functions (typically
-  * \link cudpp_kernel CUDPP Kernel-Level API\endlink functions).
-  * They are called CTA-level functions because they typically process
-  * s_data "owned" by each CTA within shared memory, and are agnostic of
-  * any other CTAs that may be running (or how many CTAs are running),
-  * other than to compute appropriate global memory addresses.
-  * @{
-  */
-
-/** @name Scan Functions
-* @{
-*/
-
-#include "cudpp/cudpp_globals.h"
-#include "cudpp/type_vector.h"
-// #include <cudpp_util.h>
-#include <math.h>
-// #include <cudpp.h>
-
-/**
- * @brief Macro to insert necessary __syncthreads() in device emulation mode
- */
-#ifdef __DEVICE_EMULATION__
-#define __EMUSYNC __syncthreads()
-#else
-#define __EMUSYNC
-#endif
-
-/**
-  * @brief Template class containing compile-time parameters to the scan functions
-  *
-  * ScanTraits is passed as a template parameter to all scan functions.  By
-  * using these compile-time functions we can enable generic code while
-  * maintaining the highest performance.  This is crucial for the performance
-  * of low-level workhorse algorithms like scan.
-  *
-  * @param T The datatype of the scan
-  * @param oper The ::CUDPPOperator to use for the scan (add, max, etc.)
-  * @param multiRow True if this is a multi-row scan
-  * @param unroll True if scan inner loops should be unrolled
-  * @param sums True if each block should write it's sum to the d_blockSums array (false for single-block scans)
-  * @param backward True if this is a backward scan
-  * @param fullBlock True if all blocks in this scan are full (CTA_SIZE * SCAN_ELEMENTS_PER_THREAD elements)
-  * @param exclusive True for exclusive scans, false for inclusive scans
-  */
-template <class T, class oper, bool backward, bool exclusive,
-          bool multiRow, bool sums, bool fullBlock>
-class ScanTraits
-{
-public:
-
-    //! Returns true if this is a backward scan
-    static __device__ bool isBackward()    { return backward; };
-    //! Returns true if this is an exclusive scan
-    static __device__ bool isExclusive()  { return exclusive; };
-    //! Returns true if this a multi-row scan.
-    static __device__ bool isMultiRow()    { return multiRow; };
-    //! Returns true if this scan writes the sum of each block to the d_blockSums array (multi-block scans)
-    static __device__ bool writeSums()     { return sums; };
-    //! Returns true if this is a full scan -- all blocks process CTA_SIZE * SCAN_ELEMENTS_PER_THREAD elements
-    static __device__ bool isFullBlock()   { return fullBlock; };
-
-
-    //! The operator function used for the scan
-    static __device__ T op(const T &a, const T &b) { return oper::apply(a, b); }
-
-    //! The identity value used by the scan
-    static __device__ T identity() { return oper::identity(); }
-};
-
-//! This is used to insert syncthreads to avoid perf loss caused by 128-bit
-//! load overlap that happens on G80.  This gives about a 15% boost on scans on
-//! G80.
-//! @todo Parameterize this in case this perf detail changes on future GPUs.
-#define DISALLOW_LOADSTORE_OVERLAP 1
-
-/**
-* @brief Handles loading input s_data from global memory to shared memory
-* (vec4 version)
-*
-* Load a chunk of 8*blockDim.x elements from global memory into a
-* shared memory array.  Each thread loads two T4 elements (where
-* T4 is, e.g. int4 or float4), computes the scan of those two vec4s in
-* thread local arrays (in registers), and writes the two total sums of the
-* vec4s into shared memory, where they will be cooperatively scanned with
-* the other partial sums by all threads in the CTA.
-*
-* @param[out] s_out The output (shared) memory array
-* @param[out] threadScan0 Intermediate per-thread partial sums array 1
-* @param[out] threadScan1 Intermediate per-thread partial sums array 2
-* @param[in] d_in The input (device) memory array
-* @param[in] numElements The number of elements in the array being scanned
-* @param[in] iDataOffset the offset of the input array in global memory for this
-* thread block
-* @param[out] ai The shared memory address for the thread's first element
-* (returned for reuse)
-* @param[out] bi The shared memory address for the thread's second element
-* (returned for reuse)
-* @param[out] aiDev The device memory address for this thread's first element
-* (returned for reuse)
-* @param[out] biDev The device memory address for this thread's second element
-* (returned for reuse)
-*/
-template <class T, class traits>
-__device__ void loadSharedChunkFromMem4(T        *s_out,
-                                        T        threadScan0[4],
-                                        T        threadScan1[4],
-                                        const T  *d_in,
-                                        int      numElements,
-                                        int      iDataOffset,
-                                        int      &ai,
-                                        int      &bi,
-                                        int      &aiDev,
-                                        int      &biDev)
-{
-    int thid = threadIdx.x;
-    aiDev = iDataOffset + thid;
-    biDev = aiDev + blockDim.x;
-
-    // convert to 4-vector
-    typename typeToVector<T,4>::Result  tempData;
-    typename typeToVector<T,4>::Result* inData = (typename typeToVector<T,4>::Result*)d_in;
-
-    ai = thid;
-    bi = thid + blockDim.x;
-
-    // read into tempData;
-    if (traits::isBackward())
-    {
-        int i = aiDev * 4;
-        if (traits::isFullBlock() || i + 3 < numElements)
-        {
-            tempData       = inData[aiDev];
-            threadScan0[3] = tempData.w;
-            threadScan0[2] = traits::op(tempData.z, threadScan0[3]);
-            threadScan0[1] = traits::op(tempData.y, threadScan0[2]);
-            threadScan0[0] = s_out[ai]
-                           = traits::op(tempData.x, threadScan0[1]);
-        }
-        else
-        {
-            threadScan0[3] = traits::identity();
-            threadScan0[2] = traits::op(((i+2) < numElements) ? d_in[i+2] : traits::identity(), threadScan0[3]);
-            threadScan0[1] = traits::op(((i+1) < numElements) ? d_in[i+1] : traits::identity(), threadScan0[2]);
-            threadScan0[0] = s_out[ai]
-                           = traits::op((i     < numElements) ? d_in[i]   : traits::identity(), threadScan0[1]);
-        }
-
-#ifdef DISALLOW_LOADSTORE_OVERLAP
-        __syncthreads();
-#endif
-
-        i = biDev * 4;
-        if (traits::isFullBlock() || i + 3 < numElements)
-        {
-            tempData       = inData[biDev];
-            threadScan1[3] = tempData.w;
-            threadScan1[2] = traits::op(tempData.z, threadScan1[3]);
-            threadScan1[1] = traits::op(tempData.y, threadScan1[2]);
-            threadScan1[0] = s_out[bi]
-                           = traits::op(tempData.x, threadScan1[1]);
-        }
-        else
-        {
-            threadScan1[3] = traits::identity();
-            threadScan1[2] = traits::op(((i+2) < numElements) ? d_in[i+2] : traits::identity(), threadScan1[3]);
-            threadScan1[1] = traits::op(((i+1) < numElements) ? d_in[i+1] : traits::identity(), threadScan1[2]);
-            threadScan1[0] = s_out[bi]
-                           = traits::op((i     < numElements) ? d_in[i]   : traits::identity(), threadScan1[1]);
-        }
-        __syncthreads();
-
-        // reverse s_data in shared memory
-        if (ai < CTA_SIZE)
-        {
-            unsigned int leftIdx = ai;
-            unsigned int rightIdx = (2 * CTA_SIZE - 1) - ai;
-
-            if (leftIdx < rightIdx)
-            {
-                T tmp           = s_out[leftIdx];
-                s_out[leftIdx]  = s_out[rightIdx];
-                s_out[rightIdx] = tmp;
-            }
-        }
-        __syncthreads();
-    }
-    else
-    {
-        int i = aiDev * 4;
-        if (traits::isFullBlock() || i + 3 < numElements)
-        {
-            tempData       = inData[aiDev];
-            threadScan0[0] = tempData.x;
-            threadScan0[1] = traits::op(tempData.y, threadScan0[0]);
-            threadScan0[2] = traits::op(tempData.z, threadScan0[1]);
-            threadScan0[3] = s_out[ai]
-                           = traits::op(tempData.w, threadScan0[2]);
-        }
-        else
-        {
-            threadScan0[0] = (i < numElements) ? d_in[i] : traits::identity();
-            threadScan0[1] = traits::op(((i+1) < numElements) ? d_in[i+1] : traits::identity(), threadScan0[0]);
-            threadScan0[2] = traits::op(((i+2) < numElements) ? d_in[i+2] : traits::identity(), threadScan0[1]);
-            threadScan0[3] = s_out[ai]
-                           = traits::op(((i+3) < numElements) ? d_in[i+3] : traits::identity(), threadScan0[2]);
-        }
-
-
-#ifdef DISALLOW_LOADSTORE_OVERLAP
-        __syncthreads();
-#endif
-
-        i = biDev * 4;
-        if (traits::isFullBlock() || i + 3 < numElements)
-        {
-            tempData       = inData[biDev];
-            threadScan1[0] = tempData.x;
-            threadScan1[1] = traits::op(tempData.y, threadScan1[0]);
-            threadScan1[2] = traits::op(tempData.z, threadScan1[1]);
-            threadScan1[3] = s_out[bi]
-                           = traits::op(tempData.w, threadScan1[2]);
-        }
-        else
-        {
-            threadScan1[0] = (i < numElements) ? d_in[i] : traits::identity();
-            threadScan1[1] = traits::op(((i+1) < numElements) ? d_in[i+1] : traits::identity(), threadScan1[0]);
-            threadScan1[2] = traits::op(((i+2) < numElements) ? d_in[i+2] : traits::identity(), threadScan1[1]);
-            threadScan1[3] = s_out[bi]
-                           = traits::op(((i+3) < numElements) ? d_in[i+3] : traits::identity(), threadScan1[2]);
-        }
-        __syncthreads();
-    }
-}
-
-
-/**
-* @brief Handles storing result s_data from shared memory to global memory
-* (vec4 version)
-*
-* Store a chunk of SCAN_ELTS_PER_THREAD*blockDim.x elements from shared memory
-* into a device memory array.  Each thread stores reads two elements from shared
-* memory, adds them to the intermediate sums computed in
-* loadSharedChunkFromMem4(), and writes two T4 elements (where
-* T4 is, e.g. int4 or float4) to global memory.
-*
-* @param[out] d_out The output (device) memory array
-* @param[in] threadScan0 Intermediate per-thread partial sums array 1
-* (contents computed in loadSharedChunkFromMem4())
-* @param[in] threadScan1 Intermediate per-thread partial sums array 2
-* (contents computed in loadSharedChunkFromMem4())
-* @param[in] s_in The input (shared) memory array
-* @param[in] numElements The number of elements in the array being scanned
-* @param[in] oDataOffset the offset of the output array in global memory
-* for this thread block
-* @param[in] ai The shared memory address for the thread's first element
-* (computed in loadSharedChunkFromMem4())
-* @param[in] bi The shared memory address for the thread's second element
-* (computed in loadSharedChunkFromMem4())
-* @param[in] aiDev The device memory address for this thread's first element
-* (computed in loadSharedChunkFromMem4())
-* @param[in] biDev The device memory address for this thread's second element
-* (computed in loadSharedChunkFromMem4())
-*/
-template <class T, class traits>
-__device__ void storeSharedChunkToMem4(T   *d_out,
-                                       T   threadScan0[4],
-                                       T   threadScan1[4],
-                                       T   *s_in,
-                                       int numElements,
-                                       int oDataOffset,
-                                       int ai,
-                                       int bi,
-                                       int aiDev,
-                                       int biDev)
-{
-    // Convert to 4-vector
-    typename typeToVector<T,4>::Result tempData;
-    typename typeToVector<T,4>::Result* outData = (typename typeToVector<T,4>::Result*)d_out;
-
-    // write results to global memory
-    if (traits::isBackward())
-    {
-        if (ai < CTA_SIZE)
-        {
-
-            unsigned int leftIdx = ai;
-            unsigned int rightIdx = (2 * CTA_SIZE - 1) - ai;
-
-            if (leftIdx < rightIdx)
-            {
-                T tmp = s_in[leftIdx];
-                s_in[leftIdx] = s_in[rightIdx];
-                s_in[rightIdx] = tmp;
-            }
-        }
-        __syncthreads();
-
-        T temp = s_in[ai];
-
-        if (traits::isExclusive())
-        {
-            tempData.w = temp;
-            tempData.z = traits::op(temp, threadScan0[3]);
-            tempData.y = traits::op(temp, threadScan0[2]);
-            tempData.x = traits::op(temp, threadScan0[1]);
-        }
-        else
-        {
-            tempData.w = traits::op(temp, threadScan0[3]);
-            tempData.z = traits::op(temp, threadScan0[2]);
-            tempData.y = traits::op(temp, threadScan0[1]);
-            tempData.x = traits::op(temp, threadScan0[0]);
-        }
-
-        int i = aiDev * 4;
-        if (traits::isFullBlock() || i + 3 < numElements)
-        {
-            outData[aiDev] = tempData;
-        }
-        else
-        {
-            if (i   < numElements) { d_out[i]   = tempData.x;
-            if (i+1 < numElements) { d_out[i+1] = tempData.y;
-            if (i+2 < numElements) { d_out[i+2] = tempData.z; }}}
-        }
-
-#ifdef DISALLOW_LOADSTORE_OVERLAP
-        __syncthreads();
-#endif
-
-        temp = s_in[bi];
-
-        if (traits::isExclusive())
-        {
-            tempData.w = temp;
-            tempData.z = traits::op(temp, threadScan1[3]);
-            tempData.y = traits::op(temp, threadScan1[2]);
-            tempData.x = traits::op(temp, threadScan1[1]);
-        }
-        else
-        {
-            tempData.w = traits::op(temp, threadScan1[3]);
-            tempData.z = traits::op(temp, threadScan1[2]);
-            tempData.y = traits::op(temp, threadScan1[1]);
-            tempData.x = traits::op(temp, threadScan1[0]);
-        }
-
-        i = biDev * 4;
-        if (traits::isFullBlock() || i + 3 < numElements)
-        {
-            outData[biDev] = tempData;
-        }
-        else
-        {
-            if (i   < numElements) { d_out[i]   = tempData.x;
-            if (i+1 < numElements) { d_out[i+1] = tempData.y;
-            if (i+2 < numElements) { d_out[i+2] = tempData.z; }}}
-        }
-    }
-    else
-    {
-        T temp;
-        temp = s_in[ai];
-
-        if (traits::isExclusive())
-        {
-            tempData.x = temp;
-            tempData.y = traits::op(temp, threadScan0[0]);
-            tempData.z = traits::op(temp, threadScan0[1]);
-            tempData.w = traits::op(temp, threadScan0[2]);
-        }
-        else
-        {
-            tempData.x = traits::op(temp, threadScan0[0]);
-            tempData.y = traits::op(temp, threadScan0[1]);
-            tempData.z = traits::op(temp, threadScan0[2]);
-            tempData.w = traits::op(temp, threadScan0[3]);
-        }
-
-        int i = aiDev * 4;
-        if (traits::isFullBlock() || i + 3 < numElements)
-        {
-            outData[aiDev] = tempData;
-        }
-        else
-        {
-            // we can't use vec4 because the original array isn't a multiple of
-            // 4 elements
-            if ( i    < numElements) { d_out[i]   = tempData.x;
-            if ((i+1) < numElements) { d_out[i+1] = tempData.y;
-            if ((i+2) < numElements) { d_out[i+2] = tempData.z; } } }
-        }
-
-#ifdef DISALLOW_LOADSTORE_OVERLAP
-        __syncthreads();
-#endif
-
-        temp       = s_in[bi];
-
-        if (traits::isExclusive())
-        {
-            tempData.x = temp;
-            tempData.y = traits::op(temp, threadScan1[0]);
-            tempData.z = traits::op(temp, threadScan1[1]);
-            tempData.w = traits::op(temp, threadScan1[2]);
-        }
-        else
-        {
-            tempData.x = traits::op(temp, threadScan1[0]);
-            tempData.y = traits::op(temp, threadScan1[1]);
-            tempData.z = traits::op(temp, threadScan1[2]);
-            tempData.w = traits::op(temp, threadScan1[3]);
-        }
-
-        i = biDev * 4;
-        if (traits::isFullBlock() || i + 3 < numElements)
-        {
-            outData[biDev] = tempData;
-        }
-        else
-        {
-            // we can't use vec4 because the original array isn't a multiple of
-            // 4 elements
-            if ( i    < numElements) { d_out[i]   = tempData.x;
-            if ((i+1) < numElements) { d_out[i+1] = tempData.y;
-            if ((i+2) < numElements) { d_out[i+2] = tempData.z; } } }
-        }
-    }
-}
-
-/** @brief Scan all warps of a CTA without synchronization
-  *
-  * The warp-scan algorithm breaks a block of data into warp-sized chunks, and
-  * scans the chunks independently with a warp of threads each.  Because warps
-  * execute instructions in SIMD fashion, there is no need to synchronize in
-  * order to share data within a warp (only across warps).  Also, in SIMD the
-  * most efficient algorithm is a step-efficient algorithm.  Therefore, within
-  * each warp we use a Hillis-and-Steele-style scan that takes log2(N) steps
-  * to scan the warp [Daniel Hillis and Guy Steele 1986], rather than the
-  * work-efficient tree-based algorithm described by Guy Blelloch [1990] that
-  * takes 2 * log(N) steps and is in general more complex to implement.
-  * Previous versions of CUDPP used the Blelloch algorithm.  For current GPUs,
-  * the warp size is 32, so this takes five steps per warp.
-  *
-  * Each thread is responsible for a single element of the array to be scanned.
-  * Each thread inputs a single value to the scan via \a val and returns
-  * its own scanned result element.  The threads of each warp cooperate
-  * via the shared memory array \a s_data to scan WARP_SIZE elements.
-  *
-  * Template parameter \a maxlevel allows this warpscan to be performed on
-  * partial warps.  For example, if only the first 8 elements of each warp need
-  * to be scanned, then warpscan only performs log2(8)=3 steps rather than 5.
-  *
-  * The computation uses 2 * WARP_SIZE elements of shared memory per warp to
-  * enable warps to offset beyond their input data and receive the identity
-  * element without using any branch instructions.
-  *
-  * \note s_data is declared volatile here to prevent the compiler from
-  * optimizing away writes to shared memory, and ensure correct intrawarp
-  * communication in the absence of __syncthreads.
-  *
-  * @return The result of the warp scan for the current thread
-  * @param[in] val The current threads's input to the scan
-  * @param[in,out] s_data A pointer to a temporary shared array of 2*CTA_SIZE
-  * elements used to compute the warp scans
-  */
-template<class T, class traits,int maxlevel>
-__device__ T warpscan(T val, volatile T* s_data)
-{
-    // The following is the same as 2 * 32 * warpId + threadInWarp =
-    // 64*(threadIdx.x >> 5) + (threadIdx.x & (WARP_SIZE-1))
-    int idx = 2 * threadIdx.x - (threadIdx.x & (WARP_SIZE-1));
-    s_data[idx] = traits::identity();
-    idx += WARP_SIZE;
-    s_data[idx] = val;                                 __EMUSYNC;
-
-        // This code is needed because the warp size of device emulation
-        // is only 1 thread, so sync-less cooperation within a warp doesn't
-        // work.
-#ifdef __DEVICE_EMULATION__
-    T t = s_data[idx -  1]; __EMUSYNC;
-    s_data[idx] = traits::op((const T&)s_data[idx],t); __EMUSYNC;
-    t = s_data[idx -  2]; __EMUSYNC;
-    s_data[idx] = traits::op((const T&)s_data[idx],t); __EMUSYNC;
-    t = s_data[idx -  4]; __EMUSYNC;
-    s_data[idx] = traits::op((const T&)s_data[idx],t); __EMUSYNC;
-    t = s_data[idx -  8]; __EMUSYNC;
-    s_data[idx] = traits::op((const T&)s_data[idx],t); __EMUSYNC;
-    t = s_data[idx - 16]; __EMUSYNC;
-    s_data[idx] = traits::op((const T&)s_data[idx],t); __EMUSYNC;
-#else
-    if (0 <= maxlevel) { s_data[idx] = traits::op((const T&)s_data[idx], (const T&)s_data[idx - 1]); }
-    if (1 <= maxlevel) { s_data[idx] = traits::op((const T&)s_data[idx], (const T&)s_data[idx - 2]); }
-    if (2 <= maxlevel) { s_data[idx] = traits::op((const T&)s_data[idx], (const T&)s_data[idx - 4]); }
-    if (3 <= maxlevel) { s_data[idx] = traits::op((const T&)s_data[idx], (const T&)s_data[idx - 8]); }
-    if (4 <= maxlevel) { s_data[idx] = traits::op((const T&)s_data[idx], (const T&)s_data[idx -16]); }
-#endif
-
-    return s_data[idx-1];      // convert inclusive -> exclusive
-}
-
-/** @brief Perform a full CTA scan using the warp-scan algorithm
-  *
-  * As described in the comment for warpscan(), the warp-scan algorithm breaks
-  * a block of data into warp-sized chunks, and scans the chunks independently
-  * with a warp of threads each.  To complete the scan, each warp <i>j</i> then
-  * writes its last element to element <i>j</i> of a temporary shared array.
-  * Then a single warp exclusive-scans these "warp sums".  Finally, each thread
-  * adds the result of the warp sum scan to the result of the scan from the
-  * first pass.
-  *
-  * Because we scan 2*CTA_SIZE elements per thread, we have to call warpscan
-  * twice.
-  *
-  * @param x The first input value for the current thread
-  * @param y The second input value for the current thread
-  * @param s_data Temporary shared memory space of 2*CTA_SIZE elements for
-  * performing the scan
-  */
-template <class T, class traits>
-__device__ void scanWarps(T x, T y,
-                          T *s_data)
-{
-    T val  = warpscan<T, traits, 4>(x, s_data);
-    __syncthreads();
-    T val2 = warpscan<T, traits, 4>(y, s_data);
-
-    int idx = threadIdx.x;
-
-    if ((idx & 31)==31)
-    {
-        s_data[idx >> 5]                = traits::op(val, x);
-        s_data[(idx + blockDim.x) >> 5] = traits::op(val2, y);
-    }
-    __syncthreads();
-
-#ifndef __DEVICE_EMULATION__
-    if (idx < 32)
-#endif
-    {
-        s_data[idx] = warpscan<T,traits,(LOG_CTA_SIZE-LOG_WARP_SIZE+1)>(s_data[idx], s_data);
-    }
-    __syncthreads();
-
-    val  = traits::op(val, s_data[idx >> 5]);
-
-    val2 = traits::op(val2, s_data[(idx + blockDim.x) >> 5]);
-
-    __syncthreads();
-
-    s_data[idx] = val;
-    s_data[idx+blockDim.x] = val2;
-}
-
-/**
-* @brief CTA-level scan routine; scans s_data in shared memory in each thread block
-*
-* This function is the main CTA-level scan function.  It may be called by other
-* CUDA __global__ or __device__ functions. This function scans 2 * CTA_SIZE elements.
-* Each thread is responsible for one element in each half of the input array.
-* \note This code is intended to be run on a CTA of 128 threads.  Other sizes are
-* untested.
-*
-* @param[in] s_data The array to be scanned in shared memory
-* @param[out] d_blockSums Array of per-block sums
-* @param[in] blockSumIndex Location in \a d_blockSums to which to write this block's sum
-*/
-template <class T, class traits>
-__device__ void scanCTA(T            *s_data,
-                        T            *d_blockSums,
-                        unsigned int blockSumIndex)
-{
-    T val  = s_data[threadIdx.x];
-    T val2 = s_data[threadIdx.x + blockDim.x];
-    __syncthreads();
-
-    scanWarps<T,traits>(val, val2, s_data);
-    __syncthreads();
-
-    if (traits::writeSums() && threadIdx.x == blockDim.x - 1)
-    {
-        d_blockSums[blockSumIndex] = traits::op(val2, s_data[threadIdx.x + blockDim.x]);
-    }
-
-
-#ifdef __DEVICE_EMULATION__
-    // must sync in emulation mode when doing backward scans, because otherwise the
-    // shared memory array will get reversed before the block sums are read!
-    if (traits::isBackward())
-        __syncthreads();
-#endif
-}
-
-
-/** @} */ // end scan functions
-/** @} */ // end cudpp_cta
diff --git a/examples/common/src/cudpp/scan_kernel.cu b/examples/common/src/cudpp/scan_kernel.cu
deleted file mode 100644
--- a/examples/common/src/cudpp/scan_kernel.cu
+++ /dev/null
@@ -1,113 +0,0 @@
-// -------------------------------------------------------------
-// cuDPP -- CUDA Data Parallel Primitives library
-// -------------------------------------------------------------
-//  $Revision: 5633 $
-//  $Date: 2009-07-01 15:02:51 +1000 (Wed, 01 Jul 2009) $
-// -------------------------------------------------------------
-// This source code is distributed under the terms of license.txt
-// in the root directory of this source distribution.
-// -------------------------------------------------------------
-
-/**
- * @file
- * scan_kernel.cu
- *
- * @brief CUDPP kernel-level scan routines
- */
-
-/** \defgroup cudpp_kernel CUDPP Kernel-Level API
-  * The CUDPP Kernel-Level API contains functions that run on the GPU
-  * device across a grid of Cooperative Thread Array (CTA, aka Thread
-  * Block).  These kernels are declared \c __global__ so that they
-  * must be invoked from host (CPU) code.  They generally invoke GPU
-  * \c __device__ routines in the CUDPP \link cudpp_cta CTA-Level API\endlink.
-  * Kernel-Level API functions are used by CUDPP
-  * \link cudpp_app Application-Level\endlink functions to implement their
-  * functionality.
-  * @{
-  */
-
-/** @name Scan Functions
-* @{
-*/
-
-#include "cudpp/cudpp_globals.h"
-#include "cudpp/scan_cta.cu"
-#include "cudpp/shared_mem.h"
-
-/**
-  * @brief Main scan kernel
-  *
-  * This __global__ device function performs one level of a multiblock scan on
-  * an arbitrary-dimensioned array in \a d_in, returning the result in \a d_out
-  * (which may point to the same array).  The same function may be used for
-  * single or multi-row scans.  To perform a multirow scan, pass the width of
-  * each row of the input row (in elements) in \a dataRowPitch, and the width of
-  * the rows of \a d_blockSums (in elements) in \a blockSumRowPitch, and invoke
-  * with a thread block grid with height greater than 1.
-  *
-  * This function peforms one level of a recursive, multiblock scan.  At the
-  * app level, this function is called by cudppScan and cudppMultiScan and used
-  * in combination with vectorAddUniform4() to produce a complete scan.
-  *
-  * Template parameter \a T is the datatype of the array to be scanned.
-  * Template parameter \a traits is the ScanTraits struct containing
-  * compile-time options for the scan, such as whether it is forward or
-  * backward, exclusive or inclusive, multi- or single-row, etc.
-  *
-  * @param[out] d_out The output (scanned) array
-  * @param[in]  d_in The input array to be scanned
-  * @param[out] d_blockSums The array of per-block sums
-  * @param[in]  numElements The number of elements to scan
-  * @param[in]  dataRowPitch The width of each row of \a d_in in elements
-  * (for multi-row scans)
-  * @param[in]  blockSumRowPitch The with of each row of \a d_blockSums in elements
-  * (for multi-row scans)
-  */
-template<class T, class traits>
-__global__ void scan4(T            *d_out,
-                      const T      *d_in,
-                      T            *d_blockSums,
-                      int          numElements,
-                      unsigned int dataRowPitch,
-                      unsigned int blockSumRowPitch)
-{
-    SharedMemory<T> smem;
-    T* temp = smem.getPointer();
-
-    int devOffset, ai, bi, aiDev, biDev;
-    T threadScan0[4], threadScan1[4];
-
-    unsigned int blockN = numElements;
-    unsigned int blockSumIndex = blockIdx.x;
-
-    if (traits::isMultiRow())
-    {
-        //int width = __mul24(gridDim.x, blockDim.x) << 1;
-        int yIndex     = __umul24(blockDim.y, blockIdx.y) + threadIdx.y;
-        devOffset      = __umul24(dataRowPitch, yIndex);
-        blockN        += (devOffset << 2);
-        devOffset     += __umul24(blockIdx.x, blockDim.x << 1);
-        blockSumIndex += __umul24(blockSumRowPitch << 2, yIndex) ;
-    }
-    else
-    {
-        devOffset = __umul24(blockIdx.x, (blockDim.x << 1));
-    }
-
-    // load data into shared memory
-    loadSharedChunkFromMem4<T, traits>
-        (temp, threadScan0, threadScan1, d_in,
-         blockN, devOffset, ai, bi, aiDev, biDev);
-
-    scanCTA<T, traits>(temp, d_blockSums, blockSumIndex);
-
-    // write results to device memory
-    storeSharedChunkToMem4<T, traits>
-        (d_out, threadScan0, threadScan1, temp,
-         blockN, devOffset, ai, bi, aiDev, biDev);
-
-}
-
-/** @} */ // end scan functions
-/** @} */ // end cudpp_kernel
diff --git a/examples/common/src/cudpp/vector_kernel.cu b/examples/common/src/cudpp/vector_kernel.cu
deleted file mode 100644
--- a/examples/common/src/cudpp/vector_kernel.cu
+++ /dev/null
@@ -1,444 +0,0 @@
-// -------------------------------------------------------------
-// CUDPP -- CUDA Data Parallel Primitives library
-// -------------------------------------------------------------
-//  $Revision: 5632 $
-//  $Date: 2009-07-01 14:36:01 +1000 (Wed, 01 Jul 2009) $
-// -------------------------------------------------------------
-// This source code is distributed under the terms of license.txt in
-// the root directory of this source distribution.
-// -------------------------------------------------------------
-
-/**
- * @file
- * vector_kernel.cu
- *
- * @brief CUDA kernel methods for basic operations on vectors.
- *
- * CUDA kernel methods for basic operations on vectors.
- *
- * Examples:
- * - vectorAddConstant(): d_vector + constant
- * - vectorAddUniform():  d_vector + uniform (per-block constants)
- * - vectorAddVectorVector(): d_vector + d_vector
- */
-
-// MJH: these functions assume there are 2N elements for N threads.
-// Is this always going to be a good idea?  There may be cases where
-// we have as many threads as elements, but for large problems
-// we are probably limited by max CTA size for simple kernels like
-// this so we should process multiple elements per thread.
-// we may want to extend these with looping versions that process
-// many elements per thread.
-
-// #include "cudpp_util.h"
-// #include "sharedmem.h"
-// #include "cudpp.h"
-
-/** \addtogroup cudpp_kernel
-  * @{
-  */
-
-/** @name Vector Functions
- * CUDA kernel methods for basic operations on vectors.
- * @{
- */
-
-#if 0
-/** @brief Adds a constant value to all values in the input d_vector
- *
- * Each thread adds two pairs of elements.
- * @todo Test this function -- it is currently not yet used.
- *
- * @param[in,out] d_vector The array of elements to be modified
- * @param[in] constant The constant value to be added to elements of
- * \a d_vector
- * @param[in] n The number of elements in the d_vector to be modified
- * @param[in] baseIndex An optional offset to the beginning of the
- * elements in the input array to be processed
- */
-template <class T>
-__global__  void vectorAddConstant(T   *d_vector,
-                                   T   constant,
-                                   int n,
-                                   int baseIndex)
-{
-    // Compute this thread's output address
-    unsigned int address = baseIndex + threadIdx.x +
-        __mul24(blockIdx.x, (blockDim.x << 1));
-
-    // note two adds per thread: one in first half of the block, one in last
-    d_vector[address]              += constant;
-    d_vector[address + blockDim.x] += (threadIdx.x + blockDim.x < n) * constant;
-}
-#endif
-#if 0
- /** @brief Add a uniform value to each data element of an array
-  *
-  * This function reads one value per CTA from \a d_uniforms into shared
-  * memory and adds that value to all values "owned" by the CTA in \a
-  * d_vector.  Each thread adds two pairs of values.
-  *
-  * @param[out] d_vector The d_vector whose values will have the uniform added
-  * @param[in] d_uniforms The array of uniform values (one per CTA)
-  * @param[in] numElements The number of elements in \a d_vector to process
-  * @param[in] blockOffset an optional offset to the beginning of this block's
-  * data.
-  * @param[in] baseIndex an optional offset to the beginning of the array
-  * within \a d_vector.
-  */
-template <class T>
-__global__ void vectorAddUniform(T       *d_vector,
-                                 const T *d_uniforms,
-                                 int     numElements,
-                                 int     blockOffset,
-                                 int     baseIndex)
-{
-    __shared__ T uni;
-    // Get this block's uniform value from the uniform array in device memory
-    // We store it in shared memory so that the hardware's shared memory
-    // broadcast capability can be used to share among all threads in each warp
-    // in a single cycle
-    if (threadIdx.x == 0)
-    {
-        uni = d_uniforms[blockIdx.x + __mul24(gridDim.x, blockIdx.y) + blockOffset];
-    }
-
-    // Compute this thread's output address
-    int width = __mul24(gridDim.x,(blockDim.x << 1));
-
-    unsigned int address = baseIndex + __mul24(width, blockIdx.y)
-        + threadIdx.x + __mul24(blockIdx.x, (blockDim.x << 1));
-
-    __syncthreads();
-
-    // note two adds per thread: one in first half of the block, one in last
-    d_vector[address]              += uni;
-    if (threadIdx.x + blockDim.x < numElements) d_vector[address + blockDim.x] += uni;
-}
-#endif
-
-/** @brief Add a uniform value to each data element of an array (vec4 version)
-  *
-  * This function reads one value per CTA from \a d_uniforms into shared
-  * memory and adds that value to all values "owned" by the CTA in \a d_vector.
-  * Each thread adds the uniform value to eight values in \a d_vector.
-  *
-  * @param[out] d_vector The d_vector whose values will have the uniform added
-  * @param[in] d_uniforms The array of uniform values (one per CTA)
-  * @param[in] numElements The number of elements in \a d_vector to process
-  * @param[in] vectorRowPitch For 2D arrays, the pitch (in elements) of the
-  * rows of \a d_vector.
-  * @param[in] uniformRowPitch For 2D arrays, the pitch (in elements) of the
-  * rows of \a d_uniforms.
-  * @param[in] blockOffset an optional offset to the beginning of this block's
-  * data.
-  * @param[in] baseIndex an optional offset to the beginning of the array
-  * within \a d_vector.
-  */
-template <class T, class op, int elementsPerThread>
-__global__ void vectorAddUniform4(T       *d_vector,
-                                  const T *d_uniforms,
-                                  int      numElements,
-                                  int      vectorRowPitch,     // width of input array in elements
-                                  int      uniformRowPitch,    // width of uniform array in elements
-                                  int      blockOffset,
-                                  int      baseIndex)
-{
-    __shared__ T uni;
-    // Get this block's uniform value from the uniform array in device memory
-    // We store it in shared memory so that the hardware's shared memory
-    // broadcast capability can be used to share among all threads in each warp
-    // in a single cycle
-    if (threadIdx.x == 0)
-    {
-        uni = d_uniforms[blockIdx.x + __umul24(uniformRowPitch, blockIdx.y) + blockOffset];
-    }
-
-    // Compute this thread's output address
-    //int width = __mul24(gridDim.x,(blockDim.x << 1));
-
-    unsigned int address = baseIndex + __umul24(vectorRowPitch, blockIdx.y)
-        + threadIdx.x + __umul24(blockIdx.x, (blockDim.x * elementsPerThread));
-    numElements += __umul24(vectorRowPitch, blockIdx.y);
-
-    __syncthreads();
-
-    for (int i = 0; i < elementsPerThread && address < numElements; i++)
-    {
-        d_vector[address] = op::apply(d_vector[address], uni);
-        address += blockDim.x;
-    }
-}
-
-#if 0
-/** @brief Adds together two vectors
- *
- * Each thread adds two pairs of elements.
- * @todo Test this function -- it is currently not yet used.
- *
- * @param[out] d_vectorA The left operand array and the result
- * @param[in] d_vectorB The right operand array
- * @param[in] numElements The number of elements in the vectors to be added.
- * @param[in] baseIndex An optional offset to the beginning of the
- * elements in the input arrays to be processed
- */
-template <class T>
-__global__ void vectorAddVector(T       *d_vectorA,        // A += B
-                                const T *d_vectorB,
-                                int     numElements,
-                                int     baseIndex)
-{
-    // Compute this thread's output address
-    unsigned int address = baseIndex + threadIdx.x +
-        __mul24(blockIdx.x, (blockDim.x << 1));
-
-    // note two adds per thread: one in first half of the block, one in last
-    d_vectorA[address]              += d_vectorB[address];
-    d_vectorA[address + blockDim.x] +=
-        (threadIdx.x + blockDim.x < numElements) * d_vectorB[address];
-}
-#endif
-
-/** @brief Add a uniform value to data elements of an array (vec4 version)
-  *
-  * This function reads one value per CTA from \a d_uniforms into shared
-  * memory and adds that value to values "owned" by the CTA in \a d_vector.
-  * The uniform value is added to only those values "owned" by the CTA which
-  * have an index less than d_maxIndex. If d_maxIndex for that CTA is UINT_MAX
-  * it adds the uniform to all values "owned" by the CTA.
-  * Each thread adds the uniform value to eight values in \a d_vector.
-  *
-  * @param[out] d_vector The d_vector whose values will have the uniform added
-  * @param[in] d_uniforms The array of uniform values (one per CTA)
-  * @param[in] d_maxIndices The array of maximum indices (one per CTA). This is
-  *            index upto which the uniform would be added. If this is UINT_MAX
-  *            the uniform is added to all elements of the CTA. This index is
-  *            1-based.
-  * @param[in] numElements The number of elements in \a d_vector to process
-  * @param[in] blockOffset an optional offset to the beginning of this block's
-  * data.
-  * @param[in] baseIndex an optional offset to the beginning of the array
-  * within \a d_vector.
-  */
-template <class T, class op, bool isLastBlockFull>
-__global__ void vectorSegmentedAddUniform4(T                  *d_vector,
-                                           const T            *d_uniforms,
-                                           const unsigned int *d_maxIndices,
-                                           unsigned int       numElements,
-                                           int                blockOffset,
-                                           int                baseIndex)
-{
-    __shared__ T uni[2];
-
-    unsigned int blockAddress =
-        blockIdx.x + __mul24(gridDim.x, blockIdx.y) + blockOffset;
-
-    // Get this block's uniform value from the uniform array in device memory
-    // We store it in shared memory so that the hardware's shared memory
-    // broadcast capability can be used to share among all threads in each warp
-    // in a single cycle
-
-    if (threadIdx.x == 0)
-    {
-        if (blockAddress > 0)
-            uni[0] = d_uniforms[blockAddress-1];
-        else
-            uni[0] = op::identity();
-
-        // Tacit assumption that T is four-byte wide
-        uni[1] = (T)(d_maxIndices[blockAddress]);
-    }
-
-    // Compute this thread's output address
-    int width = __mul24(gridDim.x,(blockDim.x << 1));
-
-    unsigned int address = baseIndex + __mul24(width, blockIdx.y)
-                           + threadIdx.x + __mul24(blockIdx.x, (blockDim.x << 3));
-
-    __syncthreads();
-
-    unsigned int maxIndex = (unsigned int)(uni[1]);
-
-    bool isLastBlock = (blockIdx.x == (gridDim.x-1));
-
-    if (maxIndex < UINT_MAX)
-    {
-        // Since maxIndex is a 1 based index
-        --maxIndex;
-        bool leftLess = address < maxIndex;
-        bool rightLess = (address + 7 * blockDim.x) < maxIndex;
-
-        if (leftLess)
-        {
-            if (rightLess)
-            {
-                for (unsigned int i = 0; i < 8; ++i)
-                    d_vector[address + i * blockDim.x] =
-                        op::apply(d_vector[address + i * blockDim.x], uni[0]);
-            }
-            else
-            {
-                for (unsigned int i=0; i < 8; ++i)
-                {
-                    if (address < maxIndex)
-                        d_vector[address] =
-                            op::apply(d_vector[address], uni[0]);
-
-                    address += blockDim.x;
-                }
-            }
-        }
-    }
-    else
-    {
-        if (!isLastBlockFull && isLastBlock)
-        {
-            for (unsigned int i = 0; i < 8; ++i)
-            {
-                if (address < numElements)
-                    d_vector[address] =
-                        op::apply(d_vector[address], uni[0]);
-
-                address += blockDim.x;
-            }
-        }
-        else
-        {
-            for (unsigned int i=0; i<8; ++i)
-            {
-                d_vector[address] =
-                    op::apply(d_vector[address], uni[0]);
-
-                address += blockDim.x;
-            }
-        }
-    }
-}
-
-
-/** @brief Add a uniform value to data elements of an array (vec4 version)
-  *
-  * This function reads one value per CTA from \a d_uniforms into shared
-  * memory and adds that value to values "owned" by the CTA in \a d_vector.
-  * The uniform value is added to only those values "owned" by the CTA which
-  * have an index greater than d_minIndex. If d_minIndex for that CTA is 0
-  * it adds the uniform to all values "owned" by the CTA.
-  * Each thread adds the uniform value to eight values in \a d_vector.
-  *
-  * @param[out] d_vector The d_vector whose values will have the uniform added
-  * @param[in] d_uniforms The array of uniform values (one per CTA)
-  * @param[in] d_minIndices The array of minimum indices (one per CTA). The
-  *            uniform is added to the right of this index (that is, to every index
-  *            that is greater than this index). If this is 0, the uniform is
-  *            added to all elements of the CTA. This index is 1-based to
-  *            prevent overloading of what 0 means. In our case it means
-  *            absence of a flag. But if the first element of a CTA has
-  *            flag the index will also be 0. Hence we use 1-based indices
-  *            so the index is 1 in the latter case.
-  * @param[in] numElements The number of elements in \a d_vector to process
-  * @param[in] blockOffset an optional offset to the beginning of this block's
-  * data.
-  * @param[in] baseIndex an optional offset to the beginning of the array
-  * within \a d_vector.
-  *
-  */
-template <class T, class op, bool isLastBlockFull>
-__global__ void vectorSegmentedAddUniformToRight4(T                  *d_vector,
-                                                  const T            *d_uniforms,
-                                                  const unsigned int *d_minIndices,
-                                                  unsigned int       numElements,
-                                                  int                blockOffset,
-                                                  int                baseIndex)
-{
-    __shared__ T uni[2];
-
-    unsigned int blockAddress =
-        blockIdx.x + __mul24(gridDim.x, blockIdx.y) + blockOffset;
-
-    // Get this block's uniform value from the uniform array in device memory
-    // We store it in shared memory so that the hardware's shared memory
-    // broadcast capability can be used to share among all threads in each warp
-    // in a single cycle
-
-    if (threadIdx.x == 0)
-    {
-        // FIXME - blockAddress test here is incompatible with how it is calculated
-        // above
-        if (blockAddress < (gridDim.x-1))
-            uni[0] = d_uniforms[blockAddress+1];
-        else
-            uni[0] = op::identity();
-
-        // Tacit assumption that T is four-byte wide
-        uni[1] = (T)(d_minIndices[blockAddress]);
-    }
-
-    // Compute this thread's output address
-    int width = __mul24(gridDim.x,(blockDim.x << 1));
-
-    unsigned int address = baseIndex + __mul24(width, blockIdx.y)
-                           + threadIdx.x + __mul24(blockIdx.x, (blockDim.x << 3));
-
-    __syncthreads();
-
-    unsigned int minIndex = (unsigned int)(uni[1]);
-
-    bool isLastBlock = (blockIdx.x == (gridDim.x-1));
-
-    if (minIndex > 0)
-    {
-        // Since minIndex is a 1 based index
-        --minIndex;
-        bool leftInRange = address > minIndex;
-        bool rightInRange = (address + 7 * blockDim.x) > minIndex;
-
-        if (rightInRange)
-        {
-            if (leftInRange)
-            {
-                for (unsigned int i = 0; i < 8; ++i)
-                    d_vector[address + i * blockDim.x] =
-                        op::apply(d_vector[address + i * blockDim.x], uni[0]);
-            }
-            else
-            {
-                for (unsigned int i=0; i < 8; ++i)
-                {
-                    if (address > minIndex)
-                        d_vector[address] =
-                            op::apply(d_vector[address], uni[0]);
-
-                    address += blockDim.x;
-                }
-            }
-        }
-    }
-    else
-    {
-        if (!isLastBlockFull && isLastBlock)
-        {
-            for (unsigned int i = 0; i < 8; ++i)
-            {
-                if (address < numElements)
-                    d_vector[address] =
-                        op::apply(d_vector[address], uni[0]);
-
-                address += blockDim.x;
-            }
-        }
-        else
-        {
-            for (unsigned int i=0; i<8; ++i)
-            {
-                d_vector[address] =
-                    op::apply(d_vector[address], uni[0]);
-
-                address += blockDim.x;
-            }
-        }
-    }
-}
-
-
-/** @} */ // end d_vector functions
-/** @} */ // end cudpp_kernel
diff --git a/examples/src/bandwidthTest/BandwidthTest.hs b/examples/src/bandwidthTest/BandwidthTest.hs
deleted file mode 100644
--- a/examples/src/bandwidthTest/BandwidthTest.hs
+++ /dev/null
@@ -1,221 +0,0 @@
---------------------------------------------------------------------------------
---
--- Module    : Fold
--- Copyright : (c) 2009 Trevor L. McDonell
--- License   : BSD
---
--- Reduce a vector to a single value
---
---------------------------------------------------------------------------------
-
-module Main where
-
--- Friends
-import PrettyPrint
-
--- System
-import Numeric
-import Data.List
-import Control.Monad
-import Control.Exception
-import System.Exit
-import System.Environment
-import System.Console.GetOpt
-import Text.PrettyPrint
-
-import Foreign
-import qualified Foreign.CUDA               as CUDA
-import qualified Foreign.CUDA.Runtime.Event as CUDA
-
-
---------------------------------------------------------------------------------
--- Options
---------------------------------------------------------------------------------
-
-data TestMode = Quick | Range | Shmoo
-  deriving (Eq,Show,Read)
-
-data MemoryMode = List | Pageable | Pinned | WriteCombined
-  deriving (Eq,Show,Read,Ord,Enum)
-
-data CopyMode = HostToDevice | DeviceToHost | DeviceToDevice
-  deriving (Eq,Show,Read,Ord,Enum)
-
-data Options = Options
-  { testMode   :: TestMode
---  , memoryMode :: [MemoryMode]
---  , copyMode   :: [CopyMode]
-  , device     :: Int
-  , range      :: (Int,Int,Int)
-  }
-  deriving (Show)
-
-defaultOptions :: Options
-defaultOptions = Options
-  { device     = 0
-  , testMode   = Quick
---  , memoryMode = []
---  , copyMode   = []
-  , range      = (kilobyte, kilobyte, 10*kilobyte)
-  }
-
-kilobyte, megabyte :: Int
-kilobyte = 1 `shift` 10
-megabyte = 1 `shift` 20
-
-options :: [OptDescr (Options -> Options)]
-options =
-  [ Option ['d'] ["device"]    (ReqArg (\d opts -> opts { device = read d }) "ID")                           "numeral of device to test"
-  , Option ['t'] ["test"]      (ReqArg (\t opts -> opts { testMode = read t}) "MODE")                        "testing mode: Quick | Range | Shmoo"
---  , Option ['m'] ["memory"]    (ReqArg (\m opts -> opts { memoryMode = read m : memoryMode opts}) "MODE")    "memory copy mode: List | Pageable | Pinned | WriteCombined"
---  , Option ['c'] ["copy"]      (ReqArg (\c opts -> opts { copyMode = read c : copyMode opts}) "DIRECTION")   "memory copy direction: DeviceToHost | HostToDevice | DeviceToDevice"
-  , Option ['s'] ["start"]     (ReqArg (\s opts -> opts { range = let (_,i,e) = range opts in (read s,i,e)}) "BYTES") "starting transfer size"
-  , Option ['i'] ["increment"] (ReqArg (\i opts -> opts { range = let (s,_,e) = range opts in (s,read i,e)}) "BYTES") "transfer test size increment"
-  , Option ['e'] ["end"]       (ReqArg (\e opts -> opts { range = let (s,i,_) = range opts in (s,i,read e)}) "BYTES") "ending transfer size"
-  ]
-
-
---------------------------------------------------------------------------------
--- Testing
---------------------------------------------------------------------------------
-
--- Benchmarking
---
-bench :: Int -> IO a -> IO Double
-bench n testee =
-  let iter = 10
-      size = fromIntegral (iter * n) * fromIntegral (sizeOf (undefined::Int))
-  in
-  bracket (CUDA.create []) CUDA.destroy $ \start ->
-  bracket (CUDA.create []) CUDA.destroy $ \stop  -> do
-    CUDA.record start Nothing
-    replicateM_ iter testee
-    CUDA.record stop  Nothing
-    CUDA.sync
-    ms <- realToFrac `fmap` CUDA.elapsedTime start stop
-    return $ 1E3 * size / (fromIntegral megabyte * ms)
-
-
--- Bandwidth testing for the various copy modes
---
-bandwidth :: CopyMode -> MemoryMode -> Int -> IO Double
-
-bandwidth HostToDevice List     n =
-  bench n (CUDA.withListArray [1..n] (\_ -> return ()))
-
-bandwidth HostToDevice Pageable n =
-  CUDA.allocaArray n $ \d_ptr ->
-  withArray [1..n]   $ \h_ptr ->
-  bench n (CUDA.pokeArray n h_ptr d_ptr)
-
-bandwidth HostToDevice x n        =
-  CUDA.allocaArray n $ \d_ptr ->
-  let f = if x == WriteCombined then [CUDA.WriteCombined] else [] in
-  bracket (CUDA.mallocHostArray f n) (CUDA.freeHost) $ \h_ptr -> do
-  pokeArray (CUDA.useHostPtr h_ptr) [1..n]
-  bench n (CUDA.pokeArrayAsync n h_ptr d_ptr Nothing)
-
-bandwidth DeviceToHost List     n =
-  CUDA.withListArray [1..n] $ \d_ptr ->
-  bench n (CUDA.peekListArray n d_ptr)
-
-bandwidth DeviceToHost Pageable n =
-  allocaArray n             $ \h_ptr ->
-  CUDA.withListArray [1..n] $ \d_ptr ->
-  bench n (CUDA.peekArray n d_ptr h_ptr)
-
-bandwidth DeviceToHost x n        =
-  let f = if x == WriteCombined then [CUDA.WriteCombined] else [] in
-  bracket (CUDA.mallocHostArray f n) (CUDA.freeHost) $ \h_ptr ->
-  CUDA.withListArray [1..n]                          $ \d_ptr ->
-  bench n (CUDA.peekArrayAsync n d_ptr h_ptr Nothing)
-
-bandwidth DeviceToDevice _ n      =
-  CUDA.withListArray [1..n] $ \d_src ->
-  CUDA.allocaArray n        $ \d_dst ->
-  (\x->2*x) `fmap` bench n (CUDA.copyArray n d_src d_dst)
-
-
--- Testing modes
---
-runTests :: [Int] -> IO [(String,[Double])]
-runTests bytes = sequence $
-  [ run m c | m <- [List ..], c <- [HostToDevice,DeviceToHost]] ++ [ run Pageable DeviceToDevice ]
-  where
-    run m c =
-      mapM (\b -> bandwidth c m (b `div` sizeOf (undefined::Int))) bytes >>= \t ->
-      return (sc c ++ sm m, t)
-
-    sc DeviceToHost   = "D->H"
-    sc HostToDevice   = "H->D"
-    sc DeviceToDevice = "D->D"
-    sm List           = " (List)"
-    sm Pinned         = " (Pinned)"
-    sm WriteCombined  = " (WC)"
-    sm Pageable       = ""
-
-
---------------------------------------------------------------------------------
--- Main
---------------------------------------------------------------------------------
-
-printQuick :: [(String,[Double])] -> IO ()
-printQuick = printDoc . ppAsRows 1 . (++) header . map k
-  where
-    k (x,y) = text x : map float' y
-    float'  = text . flip (showFFloat (Just 2)) ""
-    header  = map (map text) [["Mode", "Bandwidth (MB/s)"]
-                             ,["----", "----------------"]]
-
-printMany :: [Int] -> [(String,[Double])] -> IO ()
-printMany xs tests =
-  printDoc . ppAsRows 1 . (++) header . zipWith k xs . transpose . snd . unzip $ tests
-  where
-    k b ys  = int b : map float' ys
-    float'  = text . flip (showFFloat (Just 2)) ""
-
-    titles    = "Size (bytes)" : fst (unzip tests)
-    seperator = map (flip replicate '-' . length) $ titles
-    header    = map (map text) [titles,seperator]
-
-
-parseOptions :: [String] -> IO (Options, [String])
-parseOptions argv =
-  case getOpt Permute options argv of
-    (o,n,[])   -> return (foldl (flip id) defaultOptions o, n)
-    (_,_,errs) -> do putStrLn $ concat errs ++ usageInfo header options
-                     exitFailure
-  where
-    header = "Usage: bandwidthTest [OPTION...]"
-
-shmooBytes :: [Int]
-shmooBytes =
-  [    kilobyte,   2*kilobyte  ..  20*kilobyte ] ++
-  [ 22*kilobyte,  24*kilobyte  ..  50*kilobyte ] ++
-  [ 60*kilobyte,  70*kilobyte  .. 100*kilobyte ] ++
-  [ 200*kilobyte, 300*kilobyte ..   1*megabyte ] ++
-  [   2*megabyte,   3*megabyte ..  16*megabyte ] ++
-  [  18*megabyte,  20*megabyte ..  32*megabyte ] ++
-  [  36*megabyte,  40*megabyte ..  64*megabyte ]
-
--- Main
---
-main :: IO ()
-main = do
-  (opts,_) <- parseOptions =<< getArgs
-  props    <- CUDA.props (device opts)
-  putStrLn $  "Device " ++ show (device opts) ++ ": " ++ (CUDA.deviceName props)
-
-  let (s,i,e) = range opts
-      bytes   = [s,(s+i)..e]
-
-  case testMode opts of
-    Quick -> putStrLn "Quick mode: Bandwidth of 32MB transfer"
-    _     -> putStrLn "Bandwidth measured in MB/s"
-
-  putStrLn "Please wait...\n"
-  case testMode opts of
-    Range -> runTests bytes         >>= printMany bytes
-    Shmoo -> runTests shmooBytes    >>= printMany shmooBytes
-    Quick -> runTests [32*megabyte] >>= printQuick
-
diff --git a/examples/src/bandwidthTest/Makefile b/examples/src/bandwidthTest/Makefile
deleted file mode 100644
--- a/examples/src/bandwidthTest/Makefile
+++ /dev/null
@@ -1,18 +0,0 @@
-#
-# Baking!
-#
-
-# ------------------------------------------------------------------------------
-# Input files
-# ------------------------------------------------------------------------------
-EXECUTABLE      := bandwidthTest
-
-HSMAIN          := BandwidthTest.hs
-CUFILES         :=
-
-EXTRALIBS       :=
-
-# ------------------------------------------------------------------------------
-# Haskell/CUDA build system
-# ------------------------------------------------------------------------------
-include ../../common/common.mk
diff --git a/examples/src/bandwidthTest/results/GT120.pdf b/examples/src/bandwidthTest/results/GT120.pdf
deleted file mode 100644
Binary files a/examples/src/bandwidthTest/results/GT120.pdf and /dev/null differ
diff --git a/examples/src/bandwidthTest/results/Tesla.pdf b/examples/src/bandwidthTest/results/Tesla.pdf
deleted file mode 100644
Binary files a/examples/src/bandwidthTest/results/Tesla.pdf and /dev/null differ
diff --git a/examples/src/fold/Fold.chs b/examples/src/fold/Fold.chs
deleted file mode 100644
--- a/examples/src/fold/Fold.chs
+++ /dev/null
@@ -1,79 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
---------------------------------------------------------------------------------
---
--- Module    : Fold
--- Copyright : (c) 2009 Trevor L. McDonell
--- License   : BSD
---
--- Reduce a vector to a single value
---
---------------------------------------------------------------------------------
-
-module Main where
-
-#include "fold.h"
-
--- Friends
-import C2HS
-import Time
-import RandomVector
-
--- System
-import Control.Exception
-import qualified Foreign.CUDA.Runtime as CUDA
-
-
---------------------------------------------------------------------------------
--- Reference
---------------------------------------------------------------------------------
-
-foldRef :: Num e => [e] -> IO e
-foldRef xs = do
-  (t,r) <- benchmark 100 (evaluate (foldl (+) 0 xs)) (return ())
-  putStrLn $ "== Reference: " ++ shows (fromInteger (timeIn millisecond t)/100::Float) " ms"
-  return r
-
---------------------------------------------------------------------------------
--- CUDA
---------------------------------------------------------------------------------
-
---
--- Note that this requires two memory copies: once from a Haskell list to the C
--- heap, and from there into the graphics card memory. See the `bandwidthTest'
--- example for the atrocious performance of this operation.
---
--- For this test, cheat a little and just time the pure computation.
---
-foldCUDA :: [Float] -> IO Float
-foldCUDA xs = do
-  let len = length xs
-  CUDA.withListArray xs $ \d_xs -> do
-    (t,r) <- benchmark 100 (fold_plusf d_xs len) CUDA.sync
-    putStrLn $ "== CUDA: " ++ shows (fromInteger (timeIn millisecond t)/100::Float) " ms"
-    return r
-
-{# fun unsafe fold_plusf
-  { withDP* `CUDA.DevicePtr Float'
-  ,         `Int'
-  }
-  -> `Float' cFloatConv #}
-  where
-    withDP p a = CUDA.withDevicePtr p $ \p' -> a (castPtr p')
-
-
---------------------------------------------------------------------------------
--- Main
---------------------------------------------------------------------------------
-
-main :: IO ()
-main = do
-  dev   <- CUDA.get
-  props <- CUDA.props dev
-  putStrLn $ "Using device " ++ show dev ++ ": " ++ CUDA.deviceName props
-
-  xs   <- randomList 30000
-  ref  <- foldRef xs
-  cuda <- foldCUDA xs
-
-  putStrLn $ "== Validating: " ++ if ((ref-cuda)/ref) < 0.0001 then "Ok!" else "INVALID!"
-
diff --git a/examples/src/fold/Makefile b/examples/src/fold/Makefile
deleted file mode 100644
--- a/examples/src/fold/Makefile
+++ /dev/null
@@ -1,18 +0,0 @@
-#
-# Baking!
-#
-
-# ------------------------------------------------------------------------------
-# Input files
-# ------------------------------------------------------------------------------
-EXECUTABLE      := fold
-
-HSMAIN          := Fold.chs
-CUFILES         := fold.cu
-
-EXTRALIBS       := stdc++
-
-# ------------------------------------------------------------------------------
-# Haskell/CUDA build system
-# ------------------------------------------------------------------------------
-include ../../common/common.mk
diff --git a/examples/src/fold/fold.cu b/examples/src/fold/fold.cu
deleted file mode 100644
--- a/examples/src/fold/fold.cu
+++ /dev/null
@@ -1,223 +0,0 @@
-/* -----------------------------------------------------------------------------
- *
- * Module    : Fold
- * Copyright : (c) 2009 Trevor L. McDonell
- * License   : BSD
- *
- * ---------------------------------------------------------------------------*/
-
-#include "fold.h"
-
-#include "utils.h"
-#include "operator.h"
-#include "cudpp/shared_mem.h"
-
-
-/*
- * Compute multiple elements per thread sequentially. This reduces the overall
- * cost of the algorithm while keeping the work complexity O(n) and the step
- * complexity O(log n). c.f. Brent's Theorem optimisation.
- *
- * Stolen from the CUDA SDK examples
- */
-template <unsigned int blockSize, bool lengthIsPow2, class op, typename T>
-__global__ static void
-fold_recursive
-(
-    const T     *d_xs,
-    T           *d_ys,
-    int         length
-)
-{
-    SharedMemory<T> smem;
-    T *scratch = smem.getPointer();
-
-    /*
-     * Calculate first level of reduction reading into shared memory
-     */
-    unsigned int i;
-    unsigned int tid      = threadIdx.x;
-    unsigned int gridSize = blockSize * 2 * gridDim.x;
-
-    scratch[tid] = op::identity();
-
-    /*
-     * Reduce multiple elements per thread. The number is determined by the
-     * number of active thread blocks (via gridDim). More blocks will result in
-     * a larger `gridSize', and hence fewer elements per thread
-     *
-     * The loop stride of `gridSize' is used to maintain coalescing.
-     */
-    for (i =  blockIdx.x * blockSize * 2 + tid; i <  length; i += gridSize)
-    {
-        scratch[tid] = op::apply(scratch[tid], d_xs[i]);
-
-        /*
-         * Ensure we don't read out of bounds. This is optimised away if the
-         * input length is a power of two
-         */
-        if (lengthIsPow2 || i + blockSize < length)
-            scratch[tid] = op::apply(scratch[tid], d_xs[i+blockSize]);
-    }
-    __syncthreads();
-
-    /*
-     * Now, calculate the reduction in shared memory
-     */
-    if (blockSize >= 512) { if (tid < 256) { scratch[tid] = op::apply(scratch[tid], scratch[tid+256]); } __syncthreads(); }
-    if (blockSize >= 256) { if (tid < 128) { scratch[tid] = op::apply(scratch[tid], scratch[tid+128]); } __syncthreads(); }
-    if (blockSize >= 128) { if (tid <  64) { scratch[tid] = op::apply(scratch[tid], scratch[tid+ 64]); } __syncthreads(); }
-
-#ifndef __DEVICE_EMULATION__
-    if (tid < 32)
-#endif
-    {
-        if (blockSize >= 64) { scratch[tid] = op::apply(scratch[tid], scratch[tid+32]);  __EMUSYNC; }
-        if (blockSize >= 32) { scratch[tid] = op::apply(scratch[tid], scratch[tid+16]);  __EMUSYNC; }
-        if (blockSize >= 16) { scratch[tid] = op::apply(scratch[tid], scratch[tid+ 8]);  __EMUSYNC; }
-        if (blockSize >=  8) { scratch[tid] = op::apply(scratch[tid], scratch[tid+ 4]);  __EMUSYNC; }
-        if (blockSize >=  4) { scratch[tid] = op::apply(scratch[tid], scratch[tid+ 2]);  __EMUSYNC; }
-        if (blockSize >=  2) { scratch[tid] = op::apply(scratch[tid], scratch[tid+ 1]);  __EMUSYNC; }
-    }
-
-    /*
-     * Write the results of this block back to global memory
-     */
-    if (tid == 0)
-        d_ys[blockIdx.x] = scratch[0];
-}
-
-
-/*
- * Wrapper function for kernel launch
- */
-template <class op, typename T>
-static void
-fold_dispatch
-(
-    const T     *d_xs,
-    T           *d_ys,
-    int         length,
-    int         blocks,
-    int         threads
-)
-{
-    unsigned int smem = threads * sizeof(T);
-
-    if (isPow2(length))
-    {
-        switch (threads)
-        {
-        case 512: fold_recursive<512,true,op,T><<<blocks,threads,smem>>>(d_xs, d_ys, length); break;
-        case 256: fold_recursive<256,true,op,T><<<blocks,threads,smem>>>(d_xs, d_ys, length); break;
-        case 128: fold_recursive<128,true,op,T><<<blocks,threads,smem>>>(d_xs, d_ys, length); break;
-        case  64: fold_recursive< 64,true,op,T><<<blocks,threads,smem>>>(d_xs, d_ys, length); break;
-        case  32: fold_recursive< 32,true,op,T><<<blocks,threads,smem>>>(d_xs, d_ys, length); break;
-        case  16: fold_recursive< 16,true,op,T><<<blocks,threads,smem>>>(d_xs, d_ys, length); break;
-        case   8: fold_recursive<  8,true,op,T><<<blocks,threads,smem>>>(d_xs, d_ys, length); break;
-        case   4: fold_recursive<  4,true,op,T><<<blocks,threads,smem>>>(d_xs, d_ys, length); break;
-        case   2: fold_recursive<  2,true,op,T><<<blocks,threads,smem>>>(d_xs, d_ys, length); break;
-        case   1: fold_recursive<  1,true,op,T><<<blocks,threads,smem>>>(d_xs, d_ys, length); break;
-        default:
-            assert(!"Non-exhaustive patterns in match");
-        }
-    }
-    else
-    {
-        switch (threads)
-        {
-        case 512: fold_recursive<512,false,op,T><<<blocks,threads,smem>>>(d_xs, d_ys, length); break;
-        case 256: fold_recursive<256,false,op,T><<<blocks,threads,smem>>>(d_xs, d_ys, length); break;
-        case 128: fold_recursive<128,false,op,T><<<blocks,threads,smem>>>(d_xs, d_ys, length); break;
-        case  64: fold_recursive< 64,false,op,T><<<blocks,threads,smem>>>(d_xs, d_ys, length); break;
-        case  32: fold_recursive< 32,false,op,T><<<blocks,threads,smem>>>(d_xs, d_ys, length); break;
-        case  16: fold_recursive< 16,false,op,T><<<blocks,threads,smem>>>(d_xs, d_ys, length); break;
-        case   8: fold_recursive<  8,false,op,T><<<blocks,threads,smem>>>(d_xs, d_ys, length); break;
-        case   4: fold_recursive<  4,false,op,T><<<blocks,threads,smem>>>(d_xs, d_ys, length); break;
-        case   2: fold_recursive<  2,false,op,T><<<blocks,threads,smem>>>(d_xs, d_ys, length); break;
-        case   1: fold_recursive<  1,false,op,T><<<blocks,threads,smem>>>(d_xs, d_ys, length); break;
-        default:
-            assert(!"Non-exhaustive patterns in match");
-        }
-    }
-}
-
-
-/*
- * Compute the number of blocks and threads to use for the reduction kernel
- */
-static void
-fold_control
-(
-    int         n,
-    int         &blocks,
-    int         &threads,
-    int         maxThreads = MAX_THREADS,
-    int         maxBlocks  = MAX_BLOCKS
-)
-{
-    threads = (n < maxThreads*2) ? ceilPow2((n+1)/2) : maxThreads;
-    blocks  = (n + threads * 2 - 1) / (threads * 2);
-    blocks  = min(blocks, maxBlocks);
-}
-
-
-/*
- * Apply a binary operator to an array, reducing the array to a single value.
- * The reduction will take place in parallel, so the operator must be
- * associative.
- */
-template <class op, typename T>
-T
-fold
-(
-    const T     *d_xs,
-    int         n
-)
-{
-    int blocks;
-    int threads;
-    T   gpu_result;
-    T*  d_data          = NULL;
-
-    /*
-     * Allocate temporary storage for the block-level reduction
-     */
-    fold_control(n, blocks, threads);
-    cudaMalloc((void **) &d_data, sizeof(T) * blocks);
-
-    /*
-     * Recursively fold the partial block sums to a single value
-     */
-    fold_dispatch<op,T>(d_xs, d_data, n, blocks, threads);
-
-    n = blocks;
-    while (n > 1)
-    {
-        fold_control(n, blocks, threads);
-        fold_dispatch<op,T>(d_data, d_data, n, blocks, threads);
-
-        n = (n + threads * 2 - 1) / (threads * 2);
-    }
-    assert(n == 1);
-
-    /*
-     * Read back the final result
-     */
-    cudaMemcpy(&gpu_result, d_data, sizeof(T), cudaMemcpyDeviceToHost);
-    cudaFree(d_data);
-
-    return gpu_result;
-}
-
-
-// -----------------------------------------------------------------------------
-// Instances
-// -----------------------------------------------------------------------------
-
-float fold_plusf(float *xs, int N)
-{
-    float  result = fold< Plus<float> >(xs, N);
-    return result;
-}
-
diff --git a/examples/src/fold/fold.h b/examples/src/fold/fold.h
deleted file mode 100644
--- a/examples/src/fold/fold.h
+++ /dev/null
@@ -1,32 +0,0 @@
-/* -----------------------------------------------------------------------------
- *
- * Module    : Fold
- * Copyright : (c) 2009 Trevor L. McDonell
- * License   : BSD
- *
- * ---------------------------------------------------------------------------*/
-
-#ifndef __FOLD_H__
-#define __FOLD_H__
-
-/*
- * Optimised for Tesla.
- * Maximum thread occupancy for your card may be achieved with different values.
- */
-#define MAX_THREADS     128
-#define MAX_BLOCKS      64
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/*
- * Instances
- */
-float fold_plusf(float *xs, int N);
-
-
-#ifdef __cplusplus
-}
-#endif
-#endif
diff --git a/examples/src/matrixMul/LICENSE b/examples/src/matrixMul/LICENSE
deleted file mode 100644
--- a/examples/src/matrixMul/LICENSE
+++ /dev/null
@@ -1,187 +0,0 @@
-NVIDIA Corporation GPU COMPUTING SDK END USER LICENSE AGREEMENT ("Agreement")
-
-BY DOWNLOADING THE SOFTWARE AND OTHER AVAILABLE MATERIALS, YOU  ("DEVELOPER")
-AGREE TO BE BOUND BY THE FOLLOWING TERMS AND CONDITIONS OF THIS AGREEMENT.  IF
-DEVELOPER DOES NOT AGREE TO THE TERMS AND CONDITION OF THIS AGREEMENT, THEN DO
-NOT DOWNLOAD THE SOFTWARE AND MATERIALS.
-
-The materials available for download to Developers may include software in both
-sample source ("Source Code") and object code ("Object Code") versions,
-documentation ("Documentation"), certain art work ("Art Assets") and other
-materials (collectively, these materials referred to herein as "Materials").
-Except as expressly indicated herein, all terms and conditions of this Agreement
-apply to all of the Materials.
-
-Except as expressly set forth herein, NVIDIA owns all of the Materials and makes
-them available to Developer only under the terms and conditions set forth in
-this Agreement.
-
-License:  Subject to the terms of this Agreement, NVIDIA hereby grants to
-Developer a royalty-free, non-exclusive license to possess and to use the
-Materials.  Developer may install and use multiple copies of the Materials on a
-shared computer or concurrently on different computers, and make multiple
-back-up copies of the Materials, solely for Licensee's use within Licensee's
-Enterprise. "Enterprise" shall mean individual use by Licensee or any legal
-entity (such as a corporation or university) and the subsidiaries it owns by
-more than 50 percent.  The following terms apply to the specified type of
-Material:
-
-Source Code:  Developer shall have the right to modify and create derivative
-works with the Source Code.  Developer shall own any derivative works
-("Derivatives") it creates to the Source Code, provided that Developer uses the
-Materials in accordance with the terms and conditions of this Agreement.
-Developer may distribute the Derivatives, provided that all NVIDIA copyright
-notices and trademarks are used properly and the Derivatives include the
-following statement: "This software contains source code provided by NVIDIA
-Corporation."  
-
-Object Code:  Developer agrees not to disassemble, decompile or reverse engineer
-the Object Code versions of any of the Materials.  Developer acknowledges that
-certain of the Materials provided in Object Code version may contain third party
-components that may be subject to restrictions, and expressly agrees not to
-attempt to modify or distribute such Materials without first receiving consent
-from NVIDIA.
-
-Art Assets:  Developer shall have the right to modify and create Derivatives of
-the Art Assets, but may not distribute any of the Art Assets or Derivatives
-created therefrom without NVIDIA's prior written consent.
-
-No Other License: No rights or licenses are granted by NVIDIA to Developer under
-this Agreement, expressly or by implication, with respect to any proprietary
-information or patent, copyright, trade secret or other intellectual property
-right owned or controlled by NVIDIA, except as expressly provided in this
-Agreement.
-
-Intellectual Property Ownership: All rights, title, interest and copyrights in
-and to the Materials (including but not limited to all images, photographs,
-animations, video, audio, music, text, and other information incorporated into
-the Materials), are owned by NVIDIA, or its suppliers. The Materials are
-protected by copyright laws and international treaty provisions. Accordingly,
-Developer is required to treat the Materials like any other copyrighted
-material, except as otherwise allowed pursuant to this Agreement. 
-
-
-Term of Agreement:  This Agreement is effective until (i) automatically
-terminated if Developer fails to comply with any of the terms and conditions of
-this Agreement; or (ii) terminated by NVIDIA.  NVIDIA may terminate this
-Agreement (and with it, all of Developer's right to the Materials) immediately
-upon written notice (which may include email) to Developer, with or without
-cause.
-
-Defensive Suspension: If Developer commences or participates in any legal
-proceeding against NVIDIA, then NVIDIA may, in its sole discretion, suspend or
-terminate all license grants and any other rights provided under this Agreement
-during the pendency of such legal proceedings. 
-
-
-No Support:  NVIDIA has no obligation to support or to continue providing or
-updating any of the Materials.
-
-No Warranty:  THE SOFTWARE AND ANY OTHER MATERIALS PROVIDED BY NVIDIA TO
-DEVELOPER HEREUNDER ARE PROVIDED "AS IS."  NVIDIA DISCLAIMS ALL WARRANTIES,
-EXPRESS, IMPLIED OR STATUTORY, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
-WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NONINFRINGEMENT.
-
-Limitation of Liability: NVIDIA SHALL NOT BE LIABLE TO DEVELOPER, DEVELOPER'S
-CUSTOMERS, OR ANY OTHER PERSON OR ENTITY CLAIMING THROUGH OR UNDER DEVELOPER FOR
-ANY LOSS OF PROFITS, INCOME, SAVINGS, OR ANY OTHER CONSEQUENTIAL, INCIDENTAL,
-SPECIAL, PUNITIVE, DIRECT OR INDIRECT DAMAGES (WHETHER IN AN ACTION IN CONTRACT,
-TORT OR BASED ON A WARRANTY), EVEN IF NVIDIA HAS BEEN ADVISED OF THE POSSIBILITY
-OF SUCH DAMAGES.  THESE LIMITATIONS SHALL APPLY NOTWITHSTANDING ANY FAILURE OF
-THE ESSENTIAL PURPOSE OF ANY LIMITED REMEDY.  IN NO EVENT SHALL NVIDIA'S
-AGGREGATE LIABILITY TO DEVELOPER OR ANY OTHER PERSON OR ENTITY CLAIMING THROUGH
-OR UNDER DEVELOPER EXCEED THE AMOUNT OF MONEY ACTUALLY PAID BY DEVELOPER TO
-NVIDIA FOR THE SOFTWARE OR ANY OTHER MATERIALS.
-
-Applicable Law: This Agreement shall be deemed to have been made in, and shall
-be construed pursuant to, the laws of the State of Delaware. The United Nations
-Convention on Contracts for the International Sale of Goods is specifically
-disclaimed.
-
-Feedback: In the event Developer contacts NVIDIA to request Feedback (as defined
-below) on how to optimize Developer's product for use with the Materials, the
-following terms and conditions apply the Feedback:
-
-1.	Exchange of Feedback. Both parties agree that neither party has an
-obligation to give the other party any suggestions, comments or other feedback,
-whether verbally or in code form ("Feedback"), relating to (i) the Materials;
-(ii) Developer's products; (iii) Developer's use of the Materials; or (iv)
-optimization of Developer's product with NVIDIA product(s).  In the event either
-party provides Feedback to the other party, the party receiving the Feedback may
-use and include any Feedback that the other party voluntarily provides to
-improve the (i) Materials or other related NVIDIA technologies, respectively for
-the benefit of NVIDIA; or (ii) Developer's product or other related Developer
-technologies, respectively for the benefit of Developer.  Accordingly, if either
-party provides Feedback to the other party, both parties agree that the other
-party and its respective Developers may freely use, reproduce, license,
-distribute, and otherwise commercialize the Feedback in the (i) Materials or
-other related technologies; or (ii) Developer's products or other related
-technologies, respectively, without the payment of any royalties or fees.
-  
-2.	Residual Rights. Developer agrees that NVIDIA shall be free to use any
-general knowledge, skills and experience, (including, but not limited to, ideas,
-concepts, know-how, or techniques) ("Residuals"), contained in the (i) Feedback
-provided by Developer to NVIDIA; (ii) Developer's products, in source or object
-code form, shared or disclosed to NVIDIA in connection with the Feedback; or (c)
-Developer's confidential information voluntarily provided to NVIDIA in
-connection with the Feedback, which are retained in the memories of NVIDIA's
-employees, agents, or contractors who have had access to such (i) Feedback
-provided by Developer to NVIDIA; (ii) Developer's products; or (c) Developer's
-confidential information voluntarily provided to NVIDIA, in connection with the
-Feedback.  Subject to the terms and conditions of this Agreement, NVIDIA's
-employees, agents, or contractors shall not be prevented from using Residuals as
-part of such employee's, agent's or contractor's general knowledge, skills,
-experience, talent, and/or expertise. NVIDIA shall not have any obligation to
-limit or restrict the assignment of such employees, agents or contractors or to
-pay royalties for any work resulting from the use of Residuals.
-
-3.	Disclaimer of Warranty. FEEDBACK FROM EITHER PARTY IS PROVIDED FOR THE
-OTHER PARTY'S USE "AS IS" AND BOTH PARTIES DISCLAIM ALL WARRANTIES, EXPRESS,
-IMPLIED AND STATUTORY INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  BOTH PARTIES DO NOT
-REPRESENT OR WARRANT THAT THE FEEDBACK WILL MEET THE OTHER PARTY'S REQUIREMENTS
-OR THAT THE OPERATION OR IMPLEMENTATION OF THE FEEDBACK WILL BE UNINTERRUPTED OR
-ERROR-FREE.
-
-4.	No Liability for Consequential Damages. TO THE MAXIMUM EXTENT PERMITTED
-BY APPLICABLE LAW, IN NO EVENT SHALL EITHER PARTY OR ITS SUPPLIERS BE LIABLE FOR
-ANY SPECIAL, INCIDENTAL, INDIRECT, OR CONSEQUENTIAL DAMAGES WHATSOEVER
-(INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF BUSINESS PROFITS, BUSINESS
-INTERRUPTION, LOSS OF BUSINESS INFORMATION, OR ANY OTHER PECUNIARY LOSS) ARISING
-OUT OF THE USE OF OR INABILITY TO USE THE FEEDBACK, EVEN IF THE OTHER PARTY HAS
-BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
-
-5.	Freedom of Action.  Developer agrees that this Agreement is nonexclusive
-and NVIDIA may currently or in the future be developing software, other
-technology or confidential information internally, or receiving confidential
-information from other parties that maybe similar to the Feedback and
-Developer's confidential information (as provided in subsection 2 above), which
-may be provided to NVIDIA in connection with Feedback by Developer. Accordingly,
-Developer agrees that nothing in this Agreement will be construed as a
-representation or inference that NVIDIA will not develop, design, manufacture,
-acquire, market products, or have products developed, designed, manufactured,
-acquired, or marketed for NVIDIA, that compete with the Developer's products or
-confidential information.
-
-RESTRICTED RIGHTS NOTICE: Materials has been developed entirely at private
-expense and is commercial computer software provided with RESTRICTED RIGHTS.
-Use, duplication or disclosure by the U.S. Government or a U.S. Government
-subcontractor is subject to the restrictions set forth in the license agreement
-under which Materials was obtained pursuant to DFARS 227.7202-3(a) or as set
-forth in subparagraphs (c)(1) and (2) of the Commercial Computer Software -
-Restricted Rights clause at FAR 52.227-19, as applicable.
-Contractor/manufacturer is NVIDIA, 2701 San Tomas Expressway, Santa Clara, CA
-95050.
-
-Miscellaneous: If any provision of this Agreement is inconsistent with, or
-cannot be fully enforced under, the law, such provision will be construed as
-limited to the extent necessary to be consistent with and fully enforceable
-under the law. This Agreement is the final, complete and exclusive agreement
-between the parties relating to the subject matter hereof, and supersedes all
-prior or contemporaneous understandings and agreements relating to such subject
-matter, whether oral or written. This Agreement may only be modified in writing
-signed by an authorized officer of NVIDIA. Developer agrees that it will not
-ship, transfer or export the Materials into any country, or use the Materials in
-any manner, prohibited by the United States Bureau of Industry and Security or
-any export laws, restrictions or regulations. 
diff --git a/examples/src/matrixMul/Makefile b/examples/src/matrixMul/Makefile
deleted file mode 100644
--- a/examples/src/matrixMul/Makefile
+++ /dev/null
@@ -1,18 +0,0 @@
-#
-# Baking!
-#
-
-# ------------------------------------------------------------------------------
-# Input files
-# ------------------------------------------------------------------------------
-EXECUTABLE      := matrixMul
-
-HSMAIN          := MatrixMul.hs
-CUFILES         := matrix_mul.cu
-
-EXTRALIBS       := stdc++
-
-# ------------------------------------------------------------------------------
-# Haskell/CUDA build system
-# ------------------------------------------------------------------------------
-include ../../common/common.mk
diff --git a/examples/src/matrixMul/MatrixMul.hs b/examples/src/matrixMul/MatrixMul.hs
deleted file mode 100644
--- a/examples/src/matrixMul/MatrixMul.hs
+++ /dev/null
@@ -1,114 +0,0 @@
-{-# LANGUAGE CPP #-}
---------------------------------------------------------------------------------
---
--- Module    : MatrixMul
--- Copyright : (c) 2009 Trevor L. McDonell
--- License   : BSD
---
--- Matrix multiplication using runtime interface and execution control instead
--- of calling C functions via the FFI.
---
---------------------------------------------------------------------------------
-
-module Main where
-
-#include "matrix_mul.h"
-
--- Friends
-import Time
-import RandomVector
-
--- System
-import Data.Array
-import System.IO
-import Foreign
-import qualified Foreign.CUDA as CUDA
-
-
---------------------------------------------------------------------------------
--- Reference
---------------------------------------------------------------------------------
-
-matMult :: (Num e, Storable e) => Matrix e -> Matrix e -> IO (Matrix e)
-matMult mx my = do
-  x <- unsafeFreeze mx
-  y <- unsafeFreeze my
-  let ((li, lj), (ui, uj))  = bounds x
-      ((li',lj'),(ui',uj')) = bounds y
-      resBnds | (lj,uj) == (li',ui') = ((li,lj'),(ui,uj'))
-              | otherwise            = error "matrix dimensions must agree"
-
-  newListArray resBnds [sum [x!(i,k) * y!(k,j) | k <- range (lj,uj)]
-                         | i <- range (li,ui)
-                         , j <- range (lj',uj') ]
-
-
---------------------------------------------------------------------------------
--- CUDA
---------------------------------------------------------------------------------
-
-matMultCUDA :: (Num e, Storable e) => Matrix e -> Matrix e -> IO (Matrix e)
-matMultCUDA xs' ys' = doMult undefined xs' ys'
-  where
-    doMult :: (Num e', Storable e') => e' -> Matrix e' -> Matrix e' -> IO (Matrix e')
-    doMult dummy xs ys = do
-
-      -- Setup matrix parameters
-      --
-      ((li, lj), (ui, uj))  <- getBounds xs
-      ((li',lj'),(ui',uj')) <- getBounds ys
-      let wx = rangeSize (lj,uj)
-          hx = rangeSize (li,ui)
-          wy = rangeSize (lj',uj')
-          hy = rangeSize (li',ui')
-          resBnds | wx == hy  = ((li,lj'),(ui,uj'))
-                  | otherwise = error "matrix dimensions must agree"
-
-      -- Allocate memory and copy test data
-      --
-      CUDA.allocaArray (wx*hx) $ \d_xs -> do
-      CUDA.allocaArray (wy*hy) $ \d_ys -> do
-      CUDA.allocaArray (wy*hx) $ \d_zs -> do
-      withMatrix xs $ \p -> CUDA.pokeArray (wx*hx) p d_xs
-      withMatrix ys $ \p -> CUDA.pokeArray (wy*hy) p d_ys
-
-      -- Launch the kernel
-      --
-      let gridDim   = (wy`div`BLOCK_SIZE, hx`div`BLOCK_SIZE)
-          blockDim  = (BLOCK_SIZE,BLOCK_SIZE,1)
-          sharedMem = 2 * BLOCK_SIZE * BLOCK_SIZE * fromIntegral (sizeOf dummy)
-
-      CUDA.setConfig gridDim blockDim sharedMem Nothing
-      CUDA.setParams [CUDA.VArg d_xs, CUDA.VArg d_ys, CUDA.VArg d_zs, CUDA.IArg wx, CUDA.IArg wy]
-      CUDA.launch "matrixMul"
-
-      -- Copy back result
-      zs <- newArray_ resBnds
-      withMatrix zs $ \p -> CUDA.peekArray (wy*hx) d_zs p
-      return zs
-
-
---------------------------------------------------------------------------------
--- Main
---------------------------------------------------------------------------------
-
-main :: IO ()
-main = do
-  dev   <- CUDA.get
-  props <- CUDA.props dev
-  putStrLn $ "Using device " ++ show dev ++ ": " ++ CUDA.deviceName props
-
-  xs <- randomArr ((1,1),(8*BLOCK_SIZE, 4*BLOCK_SIZE)) :: IO (Matrix Float)
-  ys <- randomArr ((1,1),(4*BLOCK_SIZE,12*BLOCK_SIZE)) :: IO (Matrix Float)
-
-  putStr   "== Reference: " >> hFlush stdout
-  (tr,ref) <- benchmark 100 (matMult xs ys) (return ())
-  putStrLn $  shows (fromInteger (timeIn millisecond tr) / 100::Float) " ms"
-
-  putStr   "== CUDA: " >> hFlush stdout
-  (tc,mat) <- benchmark 100 (matMultCUDA xs ys) (CUDA.sync)
-  putStrLn $  shows (fromInteger (timeIn millisecond tc) / 100::Float) " ms"
-
-  putStr "== Validating: "
-  verify ref mat >>= \rv -> putStrLn $ if rv then "Ok!" else "INVALID!"
-
diff --git a/examples/src/matrixMul/matrix_mul.cu b/examples/src/matrixMul/matrix_mul.cu
deleted file mode 100644
--- a/examples/src/matrixMul/matrix_mul.cu
+++ /dev/null
@@ -1,110 +0,0 @@
-/*
- * Copyright 1993-2009 NVIDIA Corporation.  All rights reserved.
- *
- * NVIDIA Corporation and its licensors retain all intellectual property and 
- * proprietary rights in and to this software and related documentation. 
- * Any use, reproduction, disclosure, or distribution of this software 
- * and related documentation without an express license agreement from
- * NVIDIA Corporation is strictly prohibited.
- *
- * Please refer to the applicable NVIDIA end user license agreement (EULA) 
- * associated with this source code for terms and conditions that govern 
- * your use of this NVIDIA software.
- * 
- */
-
-/* Matrix multiplication: C = A * B.
- * Device code.
- */
-
-#ifndef _MATRIXMUL_KERNEL_H_
-#define _MATRIXMUL_KERNEL_H_
-
-#include <stdio.h>
-#include "matrix_mul.h"
-
-#define CHECK_BANK_CONFLICTS 0
-#if CHECK_BANK_CONFLICTS
-#define AS(i, j) cutilBankChecker(((float*)&As[0][0]), (BLOCK_SIZE * i + j))
-#define BS(i, j) cutilBankChecker(((float*)&Bs[0][0]), (BLOCK_SIZE * i + j))
-#else
-#define AS(i, j) As[i][j]
-#define BS(i, j) Bs[i][j]
-#endif
-
-////////////////////////////////////////////////////////////////////////////////
-//! Matrix multiplication on the device: C = A * B
-//! wA is A's width and wB is B's width
-////////////////////////////////////////////////////////////////////////////////
-extern "C" __global__ void
-matrixMul(float* A, float* B, float* C, int wA, int wB)
-{
-    // Block index
-    int bx = blockIdx.x;
-    int by = blockIdx.y;
-
-    // Thread index
-    int tx = threadIdx.x;
-    int ty = threadIdx.y;
-
-    // Index of the first sub-matrix of A processed by the block
-    int aBegin = wA * BLOCK_SIZE * by;
-
-    // Index of the last sub-matrix of A processed by the block
-    int aEnd   = aBegin + wA - 1;
-
-    // Step size used to iterate through the sub-matrices of A
-    int aStep  = BLOCK_SIZE;
-
-    // Index of the first sub-matrix of B processed by the block
-    int bBegin = BLOCK_SIZE * bx;
-
-    // Step size used to iterate through the sub-matrices of B
-    int bStep  = BLOCK_SIZE * wB;
-
-    // Csub is used to store the element of the block sub-matrix
-    // that is computed by the thread
-    float Csub = 0;
-
-    // Loop over all the sub-matrices of A and B
-    // required to compute the block sub-matrix
-    for (int a = aBegin, b = bBegin;
-             a <= aEnd;
-             a += aStep, b += bStep) {
-
-        // Declaration of the shared memory array As used to
-        // store the sub-matrix of A
-        __shared__ float As[BLOCK_SIZE][BLOCK_SIZE];
-
-        // Declaration of the shared memory array Bs used to
-        // store the sub-matrix of B
-        __shared__ float Bs[BLOCK_SIZE][BLOCK_SIZE];
-
-        // Load the matrices from device memory
-        // to shared memory; each thread loads
-        // one element of each matrix
-        AS(ty, tx) = A[a + wA * ty + tx];
-        BS(ty, tx) = B[b + wB * ty + tx];
-
-        // Synchronize to make sure the matrices are loaded
-        __syncthreads();
-
-        // Multiply the two matrices together;
-        // each thread computes one element
-        // of the block sub-matrix
-        for (int k = 0; k < BLOCK_SIZE; ++k)
-            Csub += AS(ty, k) * BS(k, tx);
-
-        // Synchronize to make sure that the preceding
-        // computation is done before loading two new
-        // sub-matrices of A and B in the next iteration
-        __syncthreads();
-    }
-
-    // Write the block sub-matrix to device memory;
-    // each thread writes one element
-    int c = wB * BLOCK_SIZE * by + BLOCK_SIZE * bx;
-    C[c + wB * ty + tx] = Csub;
-}
-
-#endif // #ifndef _MATRIXMUL_KERNEL_H_
diff --git a/examples/src/matrixMul/matrix_mul.h b/examples/src/matrixMul/matrix_mul.h
deleted file mode 100644
--- a/examples/src/matrixMul/matrix_mul.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Copyright 1993-2009 NVIDIA Corporation.  All rights reserved.
- *
- * NVIDIA Corporation and its licensors retain all intellectual property and 
- * proprietary rights in and to this software and related documentation. 
- * Any use, reproduction, disclosure, or distribution of this software 
- * and related documentation without an express license agreement from
- * NVIDIA Corporation is strictly prohibited.
- *
- * Please refer to the applicable NVIDIA end user license agreement (EULA) 
- * associated with this source code for terms and conditions that govern 
- * your use of this NVIDIA software.
- * 
- */
-
-#ifndef _MATRIXMUL_H_
-#define _MATRIXMUL_H_
-
-/* Thread block size */
-#define BLOCK_SIZE 16
-
-/* Matrix dimensions
- * (chosen as multiples of the thread block size for simplicity)
- */
-#define WA (3 * BLOCK_SIZE) /* Matrix A width  */
-#define HA (5 * BLOCK_SIZE) /* Matrix A height */
-#define WB (8 * BLOCK_SIZE) /* Matrix B width  */
-#define HB WA  /* Matrix B height */
-#define WC WB  /* Matrix C width  */
-#define HC HA  /* Matrix C height */
-
-#endif /* _MATRIXMUL_H_ */
-
diff --git a/examples/src/matrixMulDrv/LICENSE b/examples/src/matrixMulDrv/LICENSE
deleted file mode 100644
--- a/examples/src/matrixMulDrv/LICENSE
+++ /dev/null
@@ -1,187 +0,0 @@
-NVIDIA Corporation GPU COMPUTING SDK END USER LICENSE AGREEMENT ("Agreement")
-
-BY DOWNLOADING THE SOFTWARE AND OTHER AVAILABLE MATERIALS, YOU  ("DEVELOPER")
-AGREE TO BE BOUND BY THE FOLLOWING TERMS AND CONDITIONS OF THIS AGREEMENT.  IF
-DEVELOPER DOES NOT AGREE TO THE TERMS AND CONDITION OF THIS AGREEMENT, THEN DO
-NOT DOWNLOAD THE SOFTWARE AND MATERIALS.
-
-The materials available for download to Developers may include software in both
-sample source ("Source Code") and object code ("Object Code") versions,
-documentation ("Documentation"), certain art work ("Art Assets") and other
-materials (collectively, these materials referred to herein as "Materials").
-Except as expressly indicated herein, all terms and conditions of this Agreement
-apply to all of the Materials.
-
-Except as expressly set forth herein, NVIDIA owns all of the Materials and makes
-them available to Developer only under the terms and conditions set forth in
-this Agreement.
-
-License:  Subject to the terms of this Agreement, NVIDIA hereby grants to
-Developer a royalty-free, non-exclusive license to possess and to use the
-Materials.  Developer may install and use multiple copies of the Materials on a
-shared computer or concurrently on different computers, and make multiple
-back-up copies of the Materials, solely for Licensee's use within Licensee's
-Enterprise. "Enterprise" shall mean individual use by Licensee or any legal
-entity (such as a corporation or university) and the subsidiaries it owns by
-more than 50 percent.  The following terms apply to the specified type of
-Material:
-
-Source Code:  Developer shall have the right to modify and create derivative
-works with the Source Code.  Developer shall own any derivative works
-("Derivatives") it creates to the Source Code, provided that Developer uses the
-Materials in accordance with the terms and conditions of this Agreement.
-Developer may distribute the Derivatives, provided that all NVIDIA copyright
-notices and trademarks are used properly and the Derivatives include the
-following statement: "This software contains source code provided by NVIDIA
-Corporation."  
-
-Object Code:  Developer agrees not to disassemble, decompile or reverse engineer
-the Object Code versions of any of the Materials.  Developer acknowledges that
-certain of the Materials provided in Object Code version may contain third party
-components that may be subject to restrictions, and expressly agrees not to
-attempt to modify or distribute such Materials without first receiving consent
-from NVIDIA.
-
-Art Assets:  Developer shall have the right to modify and create Derivatives of
-the Art Assets, but may not distribute any of the Art Assets or Derivatives
-created therefrom without NVIDIA's prior written consent.
-
-No Other License: No rights or licenses are granted by NVIDIA to Developer under
-this Agreement, expressly or by implication, with respect to any proprietary
-information or patent, copyright, trade secret or other intellectual property
-right owned or controlled by NVIDIA, except as expressly provided in this
-Agreement.
-
-Intellectual Property Ownership: All rights, title, interest and copyrights in
-and to the Materials (including but not limited to all images, photographs,
-animations, video, audio, music, text, and other information incorporated into
-the Materials), are owned by NVIDIA, or its suppliers. The Materials are
-protected by copyright laws and international treaty provisions. Accordingly,
-Developer is required to treat the Materials like any other copyrighted
-material, except as otherwise allowed pursuant to this Agreement. 
-
-
-Term of Agreement:  This Agreement is effective until (i) automatically
-terminated if Developer fails to comply with any of the terms and conditions of
-this Agreement; or (ii) terminated by NVIDIA.  NVIDIA may terminate this
-Agreement (and with it, all of Developer's right to the Materials) immediately
-upon written notice (which may include email) to Developer, with or without
-cause.
-
-Defensive Suspension: If Developer commences or participates in any legal
-proceeding against NVIDIA, then NVIDIA may, in its sole discretion, suspend or
-terminate all license grants and any other rights provided under this Agreement
-during the pendency of such legal proceedings. 
-
-
-No Support:  NVIDIA has no obligation to support or to continue providing or
-updating any of the Materials.
-
-No Warranty:  THE SOFTWARE AND ANY OTHER MATERIALS PROVIDED BY NVIDIA TO
-DEVELOPER HEREUNDER ARE PROVIDED "AS IS."  NVIDIA DISCLAIMS ALL WARRANTIES,
-EXPRESS, IMPLIED OR STATUTORY, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
-WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NONINFRINGEMENT.
-
-Limitation of Liability: NVIDIA SHALL NOT BE LIABLE TO DEVELOPER, DEVELOPER'S
-CUSTOMERS, OR ANY OTHER PERSON OR ENTITY CLAIMING THROUGH OR UNDER DEVELOPER FOR
-ANY LOSS OF PROFITS, INCOME, SAVINGS, OR ANY OTHER CONSEQUENTIAL, INCIDENTAL,
-SPECIAL, PUNITIVE, DIRECT OR INDIRECT DAMAGES (WHETHER IN AN ACTION IN CONTRACT,
-TORT OR BASED ON A WARRANTY), EVEN IF NVIDIA HAS BEEN ADVISED OF THE POSSIBILITY
-OF SUCH DAMAGES.  THESE LIMITATIONS SHALL APPLY NOTWITHSTANDING ANY FAILURE OF
-THE ESSENTIAL PURPOSE OF ANY LIMITED REMEDY.  IN NO EVENT SHALL NVIDIA'S
-AGGREGATE LIABILITY TO DEVELOPER OR ANY OTHER PERSON OR ENTITY CLAIMING THROUGH
-OR UNDER DEVELOPER EXCEED THE AMOUNT OF MONEY ACTUALLY PAID BY DEVELOPER TO
-NVIDIA FOR THE SOFTWARE OR ANY OTHER MATERIALS.
-
-Applicable Law: This Agreement shall be deemed to have been made in, and shall
-be construed pursuant to, the laws of the State of Delaware. The United Nations
-Convention on Contracts for the International Sale of Goods is specifically
-disclaimed.
-
-Feedback: In the event Developer contacts NVIDIA to request Feedback (as defined
-below) on how to optimize Developer's product for use with the Materials, the
-following terms and conditions apply the Feedback:
-
-1.	Exchange of Feedback. Both parties agree that neither party has an
-obligation to give the other party any suggestions, comments or other feedback,
-whether verbally or in code form ("Feedback"), relating to (i) the Materials;
-(ii) Developer's products; (iii) Developer's use of the Materials; or (iv)
-optimization of Developer's product with NVIDIA product(s).  In the event either
-party provides Feedback to the other party, the party receiving the Feedback may
-use and include any Feedback that the other party voluntarily provides to
-improve the (i) Materials or other related NVIDIA technologies, respectively for
-the benefit of NVIDIA; or (ii) Developer's product or other related Developer
-technologies, respectively for the benefit of Developer.  Accordingly, if either
-party provides Feedback to the other party, both parties agree that the other
-party and its respective Developers may freely use, reproduce, license,
-distribute, and otherwise commercialize the Feedback in the (i) Materials or
-other related technologies; or (ii) Developer's products or other related
-technologies, respectively, without the payment of any royalties or fees.
-  
-2.	Residual Rights. Developer agrees that NVIDIA shall be free to use any
-general knowledge, skills and experience, (including, but not limited to, ideas,
-concepts, know-how, or techniques) ("Residuals"), contained in the (i) Feedback
-provided by Developer to NVIDIA; (ii) Developer's products, in source or object
-code form, shared or disclosed to NVIDIA in connection with the Feedback; or (c)
-Developer's confidential information voluntarily provided to NVIDIA in
-connection with the Feedback, which are retained in the memories of NVIDIA's
-employees, agents, or contractors who have had access to such (i) Feedback
-provided by Developer to NVIDIA; (ii) Developer's products; or (c) Developer's
-confidential information voluntarily provided to NVIDIA, in connection with the
-Feedback.  Subject to the terms and conditions of this Agreement, NVIDIA's
-employees, agents, or contractors shall not be prevented from using Residuals as
-part of such employee's, agent's or contractor's general knowledge, skills,
-experience, talent, and/or expertise. NVIDIA shall not have any obligation to
-limit or restrict the assignment of such employees, agents or contractors or to
-pay royalties for any work resulting from the use of Residuals.
-
-3.	Disclaimer of Warranty. FEEDBACK FROM EITHER PARTY IS PROVIDED FOR THE
-OTHER PARTY'S USE "AS IS" AND BOTH PARTIES DISCLAIM ALL WARRANTIES, EXPRESS,
-IMPLIED AND STATUTORY INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  BOTH PARTIES DO NOT
-REPRESENT OR WARRANT THAT THE FEEDBACK WILL MEET THE OTHER PARTY'S REQUIREMENTS
-OR THAT THE OPERATION OR IMPLEMENTATION OF THE FEEDBACK WILL BE UNINTERRUPTED OR
-ERROR-FREE.
-
-4.	No Liability for Consequential Damages. TO THE MAXIMUM EXTENT PERMITTED
-BY APPLICABLE LAW, IN NO EVENT SHALL EITHER PARTY OR ITS SUPPLIERS BE LIABLE FOR
-ANY SPECIAL, INCIDENTAL, INDIRECT, OR CONSEQUENTIAL DAMAGES WHATSOEVER
-(INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF BUSINESS PROFITS, BUSINESS
-INTERRUPTION, LOSS OF BUSINESS INFORMATION, OR ANY OTHER PECUNIARY LOSS) ARISING
-OUT OF THE USE OF OR INABILITY TO USE THE FEEDBACK, EVEN IF THE OTHER PARTY HAS
-BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
-
-5.	Freedom of Action.  Developer agrees that this Agreement is nonexclusive
-and NVIDIA may currently or in the future be developing software, other
-technology or confidential information internally, or receiving confidential
-information from other parties that maybe similar to the Feedback and
-Developer's confidential information (as provided in subsection 2 above), which
-may be provided to NVIDIA in connection with Feedback by Developer. Accordingly,
-Developer agrees that nothing in this Agreement will be construed as a
-representation or inference that NVIDIA will not develop, design, manufacture,
-acquire, market products, or have products developed, designed, manufactured,
-acquired, or marketed for NVIDIA, that compete with the Developer's products or
-confidential information.
-
-RESTRICTED RIGHTS NOTICE: Materials has been developed entirely at private
-expense and is commercial computer software provided with RESTRICTED RIGHTS.
-Use, duplication or disclosure by the U.S. Government or a U.S. Government
-subcontractor is subject to the restrictions set forth in the license agreement
-under which Materials was obtained pursuant to DFARS 227.7202-3(a) or as set
-forth in subparagraphs (c)(1) and (2) of the Commercial Computer Software -
-Restricted Rights clause at FAR 52.227-19, as applicable.
-Contractor/manufacturer is NVIDIA, 2701 San Tomas Expressway, Santa Clara, CA
-95050.
-
-Miscellaneous: If any provision of this Agreement is inconsistent with, or
-cannot be fully enforced under, the law, such provision will be construed as
-limited to the extent necessary to be consistent with and fully enforceable
-under the law. This Agreement is the final, complete and exclusive agreement
-between the parties relating to the subject matter hereof, and supersedes all
-prior or contemporaneous understandings and agreements relating to such subject
-matter, whether oral or written. This Agreement may only be modified in writing
-signed by an authorized officer of NVIDIA. Developer agrees that it will not
-ship, transfer or export the Materials into any country, or use the Materials in
-any manner, prohibited by the United States Bureau of Industry and Security or
-any export laws, restrictions or regulations. 
diff --git a/examples/src/matrixMulDrv/Makefile b/examples/src/matrixMulDrv/Makefile
deleted file mode 100644
--- a/examples/src/matrixMulDrv/Makefile
+++ /dev/null
@@ -1,18 +0,0 @@
-#
-# Baking!
-#
-
-# ------------------------------------------------------------------------------
-# Input files
-# ------------------------------------------------------------------------------
-EXECUTABLE	:= matrixMulDrv
-
-HSMAIN		:= MatrixMul.hs
-PTXFILES	:= matrix_mul.cu
-
-USEDRVAPI	:= 1
-
-# ------------------------------------------------------------------------------
-# Haskell/CUDA build system
-# ------------------------------------------------------------------------------
-include ../../common/common.mk
diff --git a/examples/src/matrixMulDrv/MatrixMul.hs b/examples/src/matrixMulDrv/MatrixMul.hs
deleted file mode 100644
--- a/examples/src/matrixMulDrv/MatrixMul.hs
+++ /dev/null
@@ -1,155 +0,0 @@
-{-# LANGUAGE CPP #-}
---------------------------------------------------------------------------------
---
--- Module    : MatrixMul
--- Copyright : (c) 2009 Trevor L. McDonell
--- License   : BSD
---
--- Matrix multiplication using driver interface
---
---------------------------------------------------------------------------------
-
-module Main where
-
-#include "matrix_mul.h"
-
--- Friends
-import RandomVector
-
--- System
-import Numeric
-import Data.Array
-import Control.Exception
-import Data.Array.Storable
-import Foreign.Storable
-import qualified Data.ByteString.Char8 as B
-import qualified Foreign.CUDA.Driver   as CUDA
-
-
--- Return the (width,height) of a matrix
---
-getSize :: Storable e => Matrix e -> IO (Int,Int)
-getSize mat = do
-  ((li,lj),(ui,uj)) <- getBounds mat
-  return (rangeSize (lj,uj), rangeSize (li,ui))
-
---------------------------------------------------------------------------------
--- Reference implementation
---------------------------------------------------------------------------------
-
-matMult :: (Num e, Storable e) => Matrix e -> Matrix e -> IO (Matrix e)
-matMult mx my = do
-  x <- unsafeFreeze mx
-  y <- unsafeFreeze my
-  let ((li, lj), (ui, uj))  = bounds x
-      ((li',lj'),(ui',uj')) = bounds y
-      resBnds | (lj,uj) == (li',ui') = ((li,lj'),(ui,uj'))
-              | otherwise            = error "matrix dimensions must agree"
-
-  newListArray resBnds [sum [x!(i,k) * y!(k,j) | k <- range (lj,uj)]
-                         | i <- range (li,ui)
-                         , j <- range (lj',uj') ]
-
-
---------------------------------------------------------------------------------
--- CUDA
---------------------------------------------------------------------------------
-
---
--- Initialise the device and context. Load the PTX source code, and return a
--- reference to the kernel function.
---
-initCUDA :: IO (CUDA.Context, CUDA.Fun)
-initCUDA = do
-  CUDA.initialise []
-  dev     <- CUDA.device 0
-  ctx     <- CUDA.create dev []
-  ptx     <- B.readFile "data/matrix_mul.ptx"
-  (mdl,r) <- CUDA.loadDataEx ptx [CUDA.ThreadsPerBlock (BLOCK_SIZE*BLOCK_SIZE)]
-  fun     <- CUDA.getFun mdl "matrixMul"
-
-  putStrLn $ ">> PTX JIT compilation (" ++ showFFloat (Just 2) (CUDA.jitTime r) " ms)"
-  B.putStrLn (CUDA.jitInfoLog r)
-  return (ctx,fun)
-
-
---
--- Allocate some memory, and copy over the input data to the device. Should
--- probably catch allocation exceptions individually...
---
-initData :: (Num e, Storable e)
-         => Matrix e -> Matrix e -> IO (CUDA.DevicePtr e, CUDA.DevicePtr e, CUDA.DevicePtr e)
-initData xs ys = do
-  (wx,hx) <- getSize xs
-  (wy,hy) <- getSize ys
-  dxs     <- CUDA.mallocArray (wx*hx)
-  dys     <- CUDA.mallocArray (wy*hy)
-  res     <- CUDA.mallocArray (wy*hx)
-
-  flip onException (mapM_ CUDA.free [dxs,dys,res]) $ do
-  withMatrix xs $ \p -> CUDA.pokeArray (wx*hx) p dxs
-  withMatrix ys $ \p -> CUDA.pokeArray (wy*hy) p dys
-  return (dxs, dys, res)
-
-
---
--- Run the test
---
-testCUDA :: (Num e, Storable e) => Matrix e -> Matrix e -> IO (Matrix e)
-testCUDA xs' ys' = doTest undefined xs' ys'
-  where
-    doTest :: (Num e', Storable e') => e' -> Matrix e' -> Matrix e' -> IO (Matrix e')
-    doTest dummy xs ys = do
-      (widthX,heightX)      <- getSize xs
-      (widthY,_)            <- getSize ys
-      ((li, lj), (ui, uj))  <- getBounds xs
-      ((li',lj'),(ui',uj')) <- getBounds ys
-      let resBnds | (lj,uj) == (li',ui') = ((li,lj'),(ui,uj'))
-                  | otherwise            = error "matrix dimensions must agree"
-
-      -- Initialise environment and copy over test data
-      --
-      putStrLn ">> Initialising"
-      bracket initCUDA (\(ctx,_) -> CUDA.destroy ctx) $ \(_,matMul) -> do
-
-      -- Ensure we release the memory, even if there was an error
-      --
-      putStrLn ">> Executing"
-      bracket
-        (initData xs ys)
-        (\(dx,dy,dz) -> mapM_ CUDA.free [dx,dy,dz]) $
-         \(dx,dy,dz) -> do
-          -- Repeat test many times...
-          --
-          CUDA.setParams     matMul [CUDA.VArg dx, CUDA.VArg dy, CUDA.VArg dz, CUDA.IArg widthX, CUDA.IArg widthY]
-          CUDA.setBlockShape matMul (BLOCK_SIZE,BLOCK_SIZE,1)
-          CUDA.setSharedSize matMul (fromIntegral (2 * BLOCK_SIZE * BLOCK_SIZE * sizeOf dummy))
-          CUDA.launch        matMul (widthY `div` BLOCK_SIZE, heightX `div` BLOCK_SIZE) Nothing
-          CUDA.sync
-
-          -- Copy back result
-          --
-          zs <- newArray_ resBnds
-          withMatrix zs $ \p -> CUDA.peekArray (widthY*heightX) dz p
-          return zs
-
-
---------------------------------------------------------------------------------
--- Test & Verify
---------------------------------------------------------------------------------
-
-main :: IO ()
-main = do
-  putStrLn "== Generating random matrices"
-  xs <- randomArr ((1,1),(8*BLOCK_SIZE, 4*BLOCK_SIZE)) :: IO (Matrix Float)
-  ys <- randomArr ((1,1),(4*BLOCK_SIZE,12*BLOCK_SIZE)) :: IO (Matrix Float)
-
-  putStrLn "== Generating reference solution"
-  ref <- matMult xs ys
-
-  putStrLn "== Testing CUDA"
-  mat <- testCUDA xs ys
-
-  putStr "== Validating: "
-  verify ref mat >>= \rv -> putStrLn $ if rv then "Ok!" else "INVALID!"
-
diff --git a/examples/src/matrixMulDrv/matrix_mul.cu b/examples/src/matrixMulDrv/matrix_mul.cu
deleted file mode 100644
--- a/examples/src/matrixMulDrv/matrix_mul.cu
+++ /dev/null
@@ -1,110 +0,0 @@
-/*
- * Copyright 1993-2009 NVIDIA Corporation.  All rights reserved.
- *
- * NVIDIA Corporation and its licensors retain all intellectual property and 
- * proprietary rights in and to this software and related documentation. 
- * Any use, reproduction, disclosure, or distribution of this software 
- * and related documentation without an express license agreement from
- * NVIDIA Corporation is strictly prohibited.
- *
- * Please refer to the applicable NVIDIA end user license agreement (EULA) 
- * associated with this source code for terms and conditions that govern 
- * your use of this NVIDIA software.
- * 
- */
-
-/* Matrix multiplication: C = A * B.
- * Device code.
- */
-
-#ifndef _MATRIXMUL_KERNEL_H_
-#define _MATRIXMUL_KERNEL_H_
-
-#include <stdio.h>
-#include "matrix_mul.h"
-
-#define CHECK_BANK_CONFLICTS 0
-#if CHECK_BANK_CONFLICTS
-#define AS(i, j) cutilBankChecker(((float*)&As[0][0]), (BLOCK_SIZE * i + j))
-#define BS(i, j) cutilBankChecker(((float*)&Bs[0][0]), (BLOCK_SIZE * i + j))
-#else
-#define AS(i, j) As[i][j]
-#define BS(i, j) Bs[i][j]
-#endif
-
-////////////////////////////////////////////////////////////////////////////////
-//! Matrix multiplication on the device: C = A * B
-//! wA is A's width and wB is B's width
-////////////////////////////////////////////////////////////////////////////////
-extern "C" __global__ void
-matrixMul(float* A, float* B, float* C, int wA, int wB)
-{
-    // Block index
-    int bx = blockIdx.x;
-    int by = blockIdx.y;
-
-    // Thread index
-    int tx = threadIdx.x;
-    int ty = threadIdx.y;
-
-    // Index of the first sub-matrix of A processed by the block
-    int aBegin = wA * BLOCK_SIZE * by;
-
-    // Index of the last sub-matrix of A processed by the block
-    int aEnd   = aBegin + wA - 1;
-
-    // Step size used to iterate through the sub-matrices of A
-    int aStep  = BLOCK_SIZE;
-
-    // Index of the first sub-matrix of B processed by the block
-    int bBegin = BLOCK_SIZE * bx;
-
-    // Step size used to iterate through the sub-matrices of B
-    int bStep  = BLOCK_SIZE * wB;
-
-    // Csub is used to store the element of the block sub-matrix
-    // that is computed by the thread
-    float Csub = 0;
-
-    // Loop over all the sub-matrices of A and B
-    // required to compute the block sub-matrix
-    for (int a = aBegin, b = bBegin;
-             a <= aEnd;
-             a += aStep, b += bStep) {
-
-        // Declaration of the shared memory array As used to
-        // store the sub-matrix of A
-        __shared__ float As[BLOCK_SIZE][BLOCK_SIZE];
-
-        // Declaration of the shared memory array Bs used to
-        // store the sub-matrix of B
-        __shared__ float Bs[BLOCK_SIZE][BLOCK_SIZE];
-
-        // Load the matrices from device memory
-        // to shared memory; each thread loads
-        // one element of each matrix
-        AS(ty, tx) = A[a + wA * ty + tx];
-        BS(ty, tx) = B[b + wB * ty + tx];
-
-        // Synchronize to make sure the matrices are loaded
-        __syncthreads();
-
-        // Multiply the two matrices together;
-        // each thread computes one element
-        // of the block sub-matrix
-        for (int k = 0; k < BLOCK_SIZE; ++k)
-            Csub += AS(ty, k) * BS(k, tx);
-
-        // Synchronize to make sure that the preceding
-        // computation is done before loading two new
-        // sub-matrices of A and B in the next iteration
-        __syncthreads();
-    }
-
-    // Write the block sub-matrix to device memory;
-    // each thread writes one element
-    int c = wB * BLOCK_SIZE * by + BLOCK_SIZE * bx;
-    C[c + wB * ty + tx] = Csub;
-}
-
-#endif // #ifndef _MATRIXMUL_KERNEL_H_
diff --git a/examples/src/matrixMulDrv/matrix_mul.h b/examples/src/matrixMulDrv/matrix_mul.h
deleted file mode 100644
--- a/examples/src/matrixMulDrv/matrix_mul.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Copyright 1993-2009 NVIDIA Corporation.  All rights reserved.
- *
- * NVIDIA Corporation and its licensors retain all intellectual property and 
- * proprietary rights in and to this software and related documentation. 
- * Any use, reproduction, disclosure, or distribution of this software 
- * and related documentation without an express license agreement from
- * NVIDIA Corporation is strictly prohibited.
- *
- * Please refer to the applicable NVIDIA end user license agreement (EULA) 
- * associated with this source code for terms and conditions that govern 
- * your use of this NVIDIA software.
- * 
- */
-
-#ifndef _MATRIXMUL_H_
-#define _MATRIXMUL_H_
-
-/* Thread block size */
-#define BLOCK_SIZE 16
-
-/* Matrix dimensions
- * (chosen as multiples of the thread block size for simplicity)
- */
-#define WA (3 * BLOCK_SIZE) /* Matrix A width  */
-#define HA (5 * BLOCK_SIZE) /* Matrix A height */
-#define WB (8 * BLOCK_SIZE) /* Matrix B width  */
-#define HB WA  /* Matrix B height */
-#define WC WB  /* Matrix C width  */
-#define HC HA  /* Matrix C height */
-
-#endif /* _MATRIXMUL_H_ */
-
diff --git a/examples/src/scan/Makefile b/examples/src/scan/Makefile
deleted file mode 100644
--- a/examples/src/scan/Makefile
+++ /dev/null
@@ -1,18 +0,0 @@
-#
-# Baking!
-#
-
-# ------------------------------------------------------------------------------
-# Input files
-# ------------------------------------------------------------------------------
-EXECUTABLE      := scan
-
-HSMAIN          := Scan.chs
-CUFILES         := scan.cu
-
-EXTRALIBS       := stdc++
-
-# ------------------------------------------------------------------------------
-# Haskell/CUDA build system
-# ------------------------------------------------------------------------------
-include ../../common/common.mk
diff --git a/examples/src/scan/Scan.chs b/examples/src/scan/Scan.chs
deleted file mode 100644
--- a/examples/src/scan/Scan.chs
+++ /dev/null
@@ -1,112 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
---------------------------------------------------------------------------------
---
--- Module    : Scan
--- Copyright : (c) 2009 Trevor L. McDonell
--- License   : BSD
---
--- Apply a binary operator to an array similar to 'fold', but return a
--- successive list of values reduced from the left (or right).
---
---------------------------------------------------------------------------------
-
-module Main where
-
-#include "scan.h"
-
--- Friends
-import C2HS                                     hiding (newArray)
-import Time
-import RandomVector
-
--- System
-import Control.Monad
-import Control.Exception
-import qualified Foreign.CUDA as CUDA
-
-
---------------------------------------------------------------------------------
--- Reference
---------------------------------------------------------------------------------
-
-scanList :: (Num e, Storable e) => Vector e -> IO (Vector e)
-scanList xs = do
-  bnds    <- getBounds xs
-  xs'     <- getElems  xs
-  (t,zs') <- benchmark 100 (return (scanl1 (+) xs')) (return ())
-  putStrLn $ "List: " ++ shows (fromInteger (timeIn millisecond t`div`100)::Float) " ms"
-  newListArray bnds zs'
-
-
-scanArr :: (Num e, Storable e) => Vector e -> IO (Vector e)
-scanArr xs = do
-  bnds  <- getBounds xs
-  zs    <- newArray_ bnds
-  let idx = range bnds
-  (t,_) <- benchmark 100 (foldM_ (k zs) 0 idx) (return ())
-  putStrLn $ "Array: " ++ shows (fromInteger (timeIn millisecond t)/100::Float) " ms"
-  return zs
-  where
-    k zs a i = do
-      x <- readArray xs i
-      let z = x+a
-      writeArray zs i z
-      return z
-
-
---------------------------------------------------------------------------------
--- CUDA
---------------------------------------------------------------------------------
-
---
--- Include the time to copy the data to/from the storable array (significantly
--- faster than from a Haskell list)
---
-scanCUDA :: Vector Float -> IO (Vector Float)
-scanCUDA xs = do
-  bnds  <- getBounds xs
-  zs    <- newArray_ bnds
-  let len = rangeSize bnds
-  CUDA.allocaArray len $ \d_xs -> do
-  CUDA.allocaArray len $ \d_zs -> do
-  (t,_) <- flip (benchmark 100) CUDA.sync $ do
-    withVector xs $ \p -> CUDA.pokeArray len p d_xs
-    scanl1_plusf d_xs d_zs len
-    withVector zs $ \p -> CUDA.peekArray len d_zs p
-  putStrLn $ "CUDA: " ++ shows (fromInteger (timeIn millisecond t)/100::Float) " ms (with copy)"
-
-  (t',_) <- benchmark 100 (scanl1_plusf d_xs d_zs len) CUDA.sync
-  putStrLn $ "CUDA: " ++ shows (fromInteger (timeIn millisecond t')/100::Float) " ms (compute only)"
-
-  return zs
-
-{# fun unsafe scanl1_plusf
-  { withDP* `CUDA.DevicePtr Float'
-  , withDP* `CUDA.DevicePtr Float'
-  ,         `Int'
-  } -> `()' #}
-  where
-    withDP p a = CUDA.withDevicePtr p $ \p' -> a (castPtr p')
-
-
---------------------------------------------------------------------------------
--- Main
---------------------------------------------------------------------------------
-
-main :: IO ()
-main = do
-  dev   <- CUDA.get
-  props <- CUDA.props dev
-  putStrLn $ "Using device " ++ show dev ++ ": " ++ CUDA.deviceName props
-
-  arr  <- randomArr (1,100000) :: IO (Vector Float)
-  ref  <- scanList arr
-  ref' <- scanArr  arr
-  cuda <- scanCUDA arr
-
-  return ()
-
-  putStr   "== Validating: "
-  verify ref ref' >>= \rv -> assert rv (return ())
-  verify ref cuda >>= \rv -> putStrLn $ if rv then "Ok!" else "INVALID!"
-
diff --git a/examples/src/scan/scan.cu b/examples/src/scan/scan.cu
deleted file mode 100644
--- a/examples/src/scan/scan.cu
+++ /dev/null
@@ -1,204 +0,0 @@
-/* -----------------------------------------------------------------------------
- *
- * Module    : Scan
- * Copyright : (c) 2009 Trevor L. McDonell
- * License   : BSD
- *
- * ---------------------------------------------------------------------------*/
-
-#include "scan.h"
-
-#include "utils.h"
-#include "operator.h"
-#include "cudpp/cudpp_globals.h"
-#include "cudpp/scan_kernel.cu"
-#include "cudpp/vector_kernel.cu"
-
-template <typename T>
-struct scan_plan
-{
-    T           **block_sums;
-    size_t      num_levels;
-};
-
-static inline unsigned int
-calc_num_blocks(unsigned int N)
-{
-    return max(1u, (unsigned int)ceil((double)N / (SCAN_ELTS_PER_THREAD * CTA_SIZE)));
-}
-
-
-/*
- * This is the CPU-side workhorse of the scan operation, invoking the kernel on
- * each of the reduction blocks.
- */
-template <class op, typename T, bool backward, bool exclusive>
-static void
-scan_recursive
-(
-    const T             *in,
-    T                   *out,
-    scan_plan<T>        *plan,
-    int                 N,
-    int                 level
-)
-{
-    size_t      num_blocks = calc_num_blocks(N);
-    bool        is_full    = N == num_blocks * SCAN_ELTS_PER_THREAD * CTA_SIZE;
-
-    dim3        grid(num_blocks, 1, 1);
-    dim3        block(CTA_SIZE, 1, 1);
-    size_t      smem = sizeof(T) * CTA_SIZE * 2;
-
-#define MULTIBLOCK      0x01
-#define FULLBLOCK       0x04
-    int traits = 0;
-    if (num_blocks > 1) traits |= MULTIBLOCK;
-    if (is_full)        traits |= FULLBLOCK;
-
-    /*
-     * Set up execution parameters, and execute the scan
-     */
-    switch (traits)
-    {
-    case 0:
-        scan4
-            < T, ScanTraits<T, op, backward, exclusive, false, false, false> >
-            <<<grid, block, smem>>>(out, in, NULL, N, 1, 1);
-        break;
-
-    case MULTIBLOCK:
-        scan4
-            < T, ScanTraits<T, op, backward, exclusive, false, true, false> >
-            <<<grid, block, smem>>>(out, in, plan->block_sums[level], N, 1, 1);
-        break;
-
-    case FULLBLOCK:
-        scan4
-            < T, ScanTraits<T, op, backward, exclusive, false, false, true> >
-            <<<grid, block, smem>>>(out, in, NULL, N, 1, 1);
-        break;
-
-    case MULTIBLOCK | FULLBLOCK:
-        scan4
-            < T, ScanTraits<T, op, backward, exclusive, false, true, true> >
-            <<<grid, block, smem>>>(out, in, plan->block_sums[level], N, 1, 1);
-        break;
-
-    default:
-        assert(!"Non-exhaustive patterns in match");
-    }
-
-    /*
-     * After scanning the sub-blocks, we now need to combine those results by
-     * taking the last value from each sub-block, and adding that to each of the
-     * successive blocks (i.e. scan across the sub-computations)
-     */
-    if (num_blocks > 1)
-    {
-        T *sums = plan->block_sums[level];
-
-        scan_recursive
-            <op, T, backward, true>
-            (sums, sums, plan, num_blocks, level+1);
-
-        vectorAddUniform4
-            <T, op, SCAN_ELTS_PER_THREAD>
-            <<<grid,block>>>
-            (out, sums, N, 4, 4, 0, 0);
-    }
-
-#undef MULTIBLOCK
-#undef FULLBLOCK
-}
-
-
-/*
- * Allocate temporary memory used by the scan.
- */
-template <typename T>
-static void
-scan_init(int N, scan_plan<T> *plan)
-{
-    size_t level        = 0;
-    size_t elements     = N;
-    size_t num_blocks;
-
-    /*
-     * Determine how many intermediate block-level summations will be required
-     */
-    for (elements = N; elements > 1; elements = num_blocks)
-    {
-        num_blocks = calc_num_blocks(elements);
-
-        if (num_blocks > 1)
-            ++level;
-    }
-
-    plan->block_sums = (T**) malloc(level * sizeof(T*));
-    plan->num_levels = level;
-
-    /*
-     * Now, allocate the necessary storage at each level
-     */
-    for (elements = N, level = 0; elements > 1; elements = num_blocks, level++)
-    {
-        num_blocks = calc_num_blocks(elements);
-
-        if (num_blocks > 1)
-            cudaMalloc((void**) &plan->block_sums[level], num_blocks * sizeof(T));
-    }
-}
-
-
-/*
- * Clean up temporary memory used by the scan
- */
-template <typename T>
-static void
-scan_finalise(scan_plan<T> *p)
-{
-    for (size_t l = 0; l < p->num_levels; ++l)
-        cudaFree(p->block_sums[l]);
-
-    free(p->block_sums);
-}
-
-
-/*
- * Apply a binary operator to an array similar to `fold', but return a
- * successive list of values reduced from the left. The reduction will take
- * place in parallel, so the operator must be associative.
- */
-template <class op, typename T, bool backward, bool exclusive>
-void
-scan
-(
-    const T     *in,
-    T           *out,
-    int         length
-)
-{
-    scan_plan<T> plan;
-    scan_init<T>(length, &plan);
-
-    scan_recursive<op, T, backward, exclusive>(in, out, &plan, length, 0);
-
-    scan_finalise<T>(&plan);
-}
-
-
-// -----------------------------------------------------------------------------
-// Instances
-// -----------------------------------------------------------------------------
-
-void scanl_plusf(float *in, float *out, int N)
-{
-    scan< Plus<float>, float, false, true >(in, out, N);
-}
-
-void scanl1_plusf(float *in, float *out, int N)
-{
-    scan< Plus<float>, float, false, false >(in, out, N);
-}
-
diff --git a/examples/src/scan/scan.h b/examples/src/scan/scan.h
deleted file mode 100644
--- a/examples/src/scan/scan.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/* -----------------------------------------------------------------------------
- *
- * Module    : Scan
- * Copyright : (c) 2009 Trevor L. McDonell
- * License   : BSD
- *
- * ---------------------------------------------------------------------------*/
-
-#ifndef __SCAN_H__
-#define __SCAN_H__
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/*
- * Instances
- */
-void scanl_plusf(float *in, float *out, int N);
-void scanl1_plusf(float *in, float *out, int N);
-
-
-#ifdef __cplusplus
-}
-#endif
-#endif
diff --git a/examples/src/simpleTexture/Makefile b/examples/src/simpleTexture/Makefile
deleted file mode 100644
--- a/examples/src/simpleTexture/Makefile
+++ /dev/null
@@ -1,18 +0,0 @@
-#
-# Baking!
-#
-
-# ------------------------------------------------------------------------------
-# Input files
-# ------------------------------------------------------------------------------
-EXECUTABLE      := simpleTexture
-
-HSMAIN          := SimpleTexture.hs
-CUFILES         := simpleTexture.cu
-
-EXTRALIBS       := stdc++
-
-# ------------------------------------------------------------------------------
-# Haskell/CUDA build system
-# ------------------------------------------------------------------------------
-include ../../common/common.mk
diff --git a/examples/src/simpleTexture/SimpleTexture.hs b/examples/src/simpleTexture/SimpleTexture.hs
deleted file mode 100644
--- a/examples/src/simpleTexture/SimpleTexture.hs
+++ /dev/null
@@ -1,68 +0,0 @@
-{-# LANGUAGE ParallelListComp #-}
---------------------------------------------------------------------------------
---
--- Module    : SimpleTexture
--- Copyright : (c) 2009 Trevor L. McDonell
--- License   : BSD
---
--- Demonstrates texture references. Takes an input PGM file and generates an
--- output that has been rotated. The kernel performs a simple 2D transformation
--- on the texture coordinates (u,v).
---
---------------------------------------------------------------------------------
-
-module Main where
-
-import Data.Array.Unboxed
-import Graphics.Pgm
-import qualified Foreign.CUDA                 as CUDA
-import qualified Foreign.CUDA.Runtime.Texture as CUDA
-
-
-imageFile, outputFile, referenceFile :: FilePath
-imageFile     = "data/lena_bw.pgm"
-outputFile    = "data/lena_bw_out.pgm"
-referenceFile = "data/ref_rotated.pgm"
-
-rotation :: Float
-rotation = 0.5          -- radians
-
-
-main :: IO ()
-main = do
-  img <- either (error . show) head `fmap` pgmsFromFile imageFile
-  ref <- either (error . show) head `fmap` pgmsFromFile referenceFile
-  runTest img ref
-
-
-runTest :: UArray (Int,Int) Int -> UArray (Int,Int) Int -> IO ()
-runTest img ref' = do
-  rotated <- transform (amap (\x-> fromIntegral x/255) img)
-  arrayToFile outputFile (amap (\x -> round (x*255)) rotated)
-  if verify (elems ref) (elems rotated)
-     then putStrLn "PASSED"
-     else putStrLn "FAILED!"
-
-  where
-    ref          = amap (\x -> fromIntegral x / 255) ref'
-    verify xs ys = all (< epsilon) [abs ((x-y)/(x+y+epsilon)) | x <- xs | y <- ys]
-    epsilon      = 0.05
-
-
-transform :: UArray (Int,Int) Float -> IO (UArray (Int,Int) Float)
-transform pgm =
-  let bnds@((x0,y0),(x1,y1)) = bounds pgm
-      width   = x1-x0+1
-      height  = y1-y0+1
-      desc    = CUDA.FormatDesc (32,0,0,0) CUDA.Float
-      texture = CUDA.Texture True CUDA.Linear (CUDA.Wrap,CUDA.Wrap,CUDA.Wrap) desc
-  in
-  CUDA.allocaArray (width * height) $ \d_out ->
-  CUDA.withListArray (elems pgm)    $ \d_tex -> do
-    CUDA.bind2D "tex" texture d_tex (width,height) (fromIntegral $ height * 4)
-    CUDA.setConfig (width `div` 8,height `div` 8) (8,8,1) 0 Nothing
-    CUDA.setParams [CUDA.VArg d_out, CUDA.IArg width, CUDA.IArg height, CUDA.FArg rotation]
-    CUDA.launch "transformKernel"
-
-    listArray bnds `fmap` CUDA.peekListArray (width*height) d_out
-
diff --git a/examples/src/simpleTexture/data/lena_bw.pgm b/examples/src/simpleTexture/data/lena_bw.pgm
deleted file mode 100644
--- a/examples/src/simpleTexture/data/lena_bw.pgm
+++ /dev/null
@@ -1,5 +0,0 @@
-P5
-# Created by IrfanView
-512 512
-255
-¢¢¢¡¢£ ¤ ¡¢¡¡¦¦¦¥¦«ª¯­ª¬¬§®¨¦¡ vuiaa^\Waf`fcghihgnmkkihmmmlkkknljmmmmkgiiklounquyvpzxy}zy||{z}~~}~~~~}|~}y{|ywzyvurppsiffhptvy¢¢¡±ÀÆÍÏÔÔÕØÚÚÙÚÜ×ÒÌÀ¬zjidggnhqsuwuvvy{~yvux|yu{z|yw{ux{{wzyy{z{v{}|}}{||}uuz~}}{~|y|}~w{ryswvsx|£§©«©¢¢¢¡¢£ ¤ ¡¢¡¡¦¦¦¥¦«ª¯­ª¬¬§®¨¦¡ vuiaa^\Waf`fcghihgnmkkihmmmlkkknljmmmmkgiiklounquyvpzxy}zy||{z}~~}~~~~}|~}y{|ywzyvurppsiffhptvy¢¢¡±ÀÆÍÏÔÔÕØÚÚÙÚÜ×ÒÌÀ¬zjidggnhqsuwuvvy{~yvux|yu{z|yw{ux{{wzyy{z{v{}|}}{||}uuz~}}{~|y|}~w{ryswvsx|£§©«©¢¢¢¡¢£ ¤ ¡¢¡¡¦¦¦¥¦«ª¯­ª¬¬§®¨¦¡ vuiaa^\Waf`fcghihgnmkkihmmmlkkknljmmmmkgiiklounquyvpzxy}zy||{z}~~}~~~~}|~}y{|ywzyvurppsiffhptvy¢¢¡±ÀÆÍÏÔÔÕØÚÚÙÚÜ×ÒÌÀ¬zjidggnhqsuwuvvy{~yvux|yu{z|yw{ux{{wzyy{z{v{}|}}{||}uuz~}}{~|y|}~w{ryswvsx|£§©«©¢¢¢¡¢£ ¤ ¡¢¡¡¦¦¦¥¦«ª¯­ª¬¬§®¨¦¡ vuiaa^\Waf`fcghihgnmkkihmmmlkkknljmmmmkgiiklounquyvpzxy}zy||{z}~~}~~~~}|~}y{|ywzyvurppsiffhptvy¢¢¡±ÀÆÍÏÔÔÕØÚÚÙÚÜ×ÒÌÀ¬zjidggnhqsuwuvvy{~yvux|yu{z|yw{ux{{wzyy{z{v{}|}}{||}uuz~}}{~|y|}~w{ryswvsx|£§©«©¢¢¢¡¢£ ¤ ¡¢¡¡¦¦¦¥¦«ª¯­ª¬¬§®¨¦¡ vuiaa^\Waf`fcghihgnmkkihmmmlkkknljmmmmkgiiklounquyvpzxy}zy||{z}~~}~~~~}|~}y{|ywzyvurppsiffhptvy¢¢¡±ÀÆÍÏÔÔÕØÚÚÙÚÜ×ÒÌÀ¬zjidggnhqsuwuvvy{~yvux|yu{z|yw{ux{{wzyy{z{v{}|}}{||}uuz~}}{~|y|}~w{ryswvsx|£§©«©¤¤¡ ¡¥¤¨ªª«­¯ªª°««§§zwnme_\^Y^_aeebckgijhkkidigkkejhikiflhnghkohlompwsvwwyvy{yz}y~~|{}|}~~z|~{z|~}~~~}}{xyz{{wtssvloiihenmxz £©¹ÁÈÏÒÕÖ××ÚÙÙÚÛ×ÑÈº£neagehponxsvuvwyy}yyuzy|z|{zy{uvt{wuzx{~}{}|zx}|z{{vv~zx||~}}{|y{vsqzyz}~{fM  £ ¡¢¢  ¤¥¨§¨ªªª«®¬­©§¦¦y}kj`aY^[b\c```fhlogecigjejfcghlkkdjhjjheerfjkmpxwrwuwx{y{{|}x~|z}~{}~}|~~~~}|~{}~~~}~}{|{{z|z{~wttpoomgggeervy~}£¡®ÁÇËÐÔÔ×ØØÙÜÜÛØÔÍÃ²libeflhqtssw{vrwzxuxz~zy{}~xxuy{x|x~vz}{{x|z{yw}z}zzz~z|xz{}|~|~~{wxu~}~~zp\N?:  ¤¢¦©©¨¯­­«ª®ª¬¥¤¢{yrm]]ZSVVW\[c`chmjljhgechilfhgcjghjfgkiiikimnpnqssvyz}|~~|}zzx{~~~~~|~}}~}~}}|~}{~yxuvyxtvqqtnjilceqtyz~¢  ¤´ÁÉÍÐÔÖÖ×ÙÙÚÚÚ×ÑÈ»©zf`fholrqtrvwrswuwwxt{wuy{z}x}|{|v{z|~|||~|z|x|zv~{y}yyvz~~y~}}{|w~|q^SFC26. £¡¡ ¨¥ª¨¯¨«©ª®­§¨©¤¢|xnr`^ZWW\\_^fchhgheimjfhdkkgfjikglgelrfjkgqmqmpmqwuvxy{vxz}~{}}y~~|z||{~}||}|}|~~~}~{x}y~zvytrqqlnpniegkjrux¢©ºÃËÎÔÓÔ×ØÚ×ÙÛØÕÌÄ³nffmljpnrqtv{wv|wzuy|vwzwwv{|{wtwzx{|{~}{vz~zy|}z|x||z}{{}|{~}}}zl_H@11-.0¡¢¢¢¤¦©§ª¨ª­¨¬¬¬©¨ª yyqj`^[\Y[Y[a\debcefkeifbhioigkjiggeckfccnhlmliqrstqus|wv|~x}~}y}|}~}|~|~}}~z|~~~}|}}~||z{}{}v{|}}{~|}twwwsrppnpgnigekouv{¡¢   ³¾ÆÍÒÒÕÖØÙØØÙÚ×ÔË½ªzmihhlnposuutuxyuyvxzw{ww}xyxuxzy|zz{~yz{}~{ty}y~~zz{}}|}}}}~}{~~|vi`R<5-0/-+   §¥ª¥§©«­¬¦§©¤¨¤£{qh`ZYXZ[_bh_adcdhhgefhghcgeknjdggeghedinlnokllqtxswz{|y}y{{z{~{}}~}~}}~~~~~~||~~~|~}~||~~|xw{puuyuprupknjnigdmqw|¢£¡¨¸ÃÊÍÒÕÕØ×ØØÚÛÙÖÏÆ·£middjhkmnsmuuzztxvty{yuyyuwwwvuxwwvxxy{|}yzu~z|yyz|~|z{||}z|||~}rj[L</12/-23¥¢¤¦¨¨©««««¬®ª©¦§§~tjj_[YZVWW]b\ae_chfeeiifiljjfghfgjhhngdehgjqmproqstswwy~{|z|{|~~}|~}~~~}{}~~~}}~|}||ywwyxuqqukmmnglhlijqw   ­»ÆËÐÔÔÖÖØÚÚÝÚØÔÌ¾¯~jgjhgjppqosuxyxxztzyxy}wtzxzzwvxuwx|wxz|w|{{|~|{y{yy{}~z|}|}}}|viWG75+-+/--/¡£¤¢£§«©§ª©©¥¥¬¤ª§¦§¢}tled^TYXWa^X_`ddgkhgfhjimjlkijef`hgdfhffbhlqplrpsrvwxtxzy{yzyy}}|{~~~~~}~~||~{||}{{~~}x|xxyyxttpqqpnnkoigehnyx£  ¡£¡   ¦µÃÉÍÒÔÕÙÙÛÙÛÚÛÙÒÈ¸§sigigjkmqoursvzxxvxy{yy|zwuz}ruyv{wyy{yyzwvy{xz}zyz|||xz{z|n^I;23).+/.01   ¤¦¦¦¨ª§§¬«©§¨§¨¦¢£{rmigZVZ_[\Y_acefcjhihnmijmkplfigfkiedffjeinqpnqsrwzyttw{yvwy{z}~|}}z}|~}~|~~~~}|~|}~}|~x|}y~{urxojnlpqookfcgjuz¡¡ ¢ £ ¡¡£¡¢¡ª»ÄÉÍÑÕÕ×ÙÚÛÛÝØØÎÅ³jgjhmssltsps|rxvu{ws|vyw{x|{vxx||vz}vywz~z{}{|}}vy|}~|~|}}{sl^F8;A0*(-,101 ¥¦§§ª¦¨¨§¨§ª¨¥¨¥¤¥¡}~qjcZ]XW__]_bcgeahggkklgknjhrjgebhimefafdiiniorrrqwuvvx{|z||zzx||}|~{}}~}~~}}~~}~~~{|}|zwyz|zywuuukspntimkjggmpvv ¥¢¡¡  ¡ ¥¤£ £¥£¡£µÂÈÎÐÔ××ÙÚÚÚÚÛØÒÌ¾®yfjjljjlpoouuqstqxuzyuz|zwzyuvwrw|z|wtxz}}xy~~}}z|}zz|z|~|qgYB5.1G31105303£¢¢¦¨¤¨©©©¬¨¦§¥©¨¢¥ ysmpd\]Y[[Z[Zbgfidgfjkngkkihdkigggifkjecegimommnnqvqtuwwx{}}~}}~~~~~~~~}~~~~}~~|{~{z{xywtvumss}jnphihiiopy ¡ ¡£¡£   ¢¡¡¢¢£¡  ¡«¹ÃÉÍÑÕ×ØÚÛÛÚÜÛÖÏÄ¹¤oiilhmlkjoztvrsuyztsxw~~xyvwz|y{w{|xzzxy}yz~|{{|~y~~~~}zodT@42*+2//-,4-60 ¤¡¡¢¤¤«¤¦¥¦©©¥¦§¨¦§¦¥ zlgb\YSZX\Z[^ffgd_bjonjmgnlbjfeifneehghcchhjooorrqqrxy{y||w|}|}~~~|~~}|{z~}{}tuz}syvqrs{vnhmljefkrwx £¥¦£¢£¢¢¤ ¥¡¢£¡¡¢±ÁÇÎÑÔÖ××ÛÛÜÜÛÚÔÎÃ³{qhhcjqklryusrqrvyyxxv{yuxs}yzvwvy}v{}}{xx}|~}~zp_Q=.10)(0+10/,)14£¡¥¦©¨¥¥§¦¦¦¥£¨¤¥¦£ ¡yolg^X\YSX^^W`gcoddemheghgjnlhkjbinhdfedfggflnpoqtpyutuxv|y}}{}yy}}}~~{}~z~}}~|~}{}~|}ztqrpqquwoomshkhheoqy¢¡¢ ¡¤¢¡ ££¤¢£ ¢ ¢ ¡ ¡¡ª¶ÁËÎÓ×ÙØØÙÜÚÜÛ×ÑÊº«vcfokginqtuttwyyvxv{w{y}wyz}~{yzyy}|~~{y}}}}{p_P</,1*,-(13./+'-5¡  ¡¡¥¥¦¦¨¦¤©¦ª¦¤§§¡¡©¤£¡ }tmd^c^W]X\a_afibcefeidhmigigglggighbbgeeglnkmrprxqyuvuuwz}yy|{w{~~~}}~~~}~{{~~|}~~~{|~~|}}{{yttuppusmokqgejfgnsw ¡¦ ¡¤¢ ¡¦£¥¢¤¡¤¢£¤  ¡ ¬»ÇÌÑÔ×ÚÙÚÙÛÛÚÛÔÍÅ°ifggllknpunzqwxsvwy}|~x|{~yw{zz{y|{y|w}|}}zm\S81*'.3--*2.1-01.1 ¡ £¡¥¥¤¥¢¦©¢§¥¦©££ ¥¥¢¡~p_bWUVY___a`akcdcikmjhqkjighigmfimfnieejkoqtntsss{z|ywxxu}~yz{}~~}~~~|~~|}~}}y{z}zuxuxsqtrlnmqjkeegmqsz¢¡££¢¢¡¥¡¢¡¡   ¦¥£¢£¢¢¡  ´ÀÈÏÒÕÖÚÙÙÚÛÛÛ×ÓË¿­tggfgjjmqqquprwuwy~x}vxyz{xzy|{yx}{zx|{|}~}}lbK@0&-11-1.1;23,*,,4¡¢¢  ¡££¥¦¥¤¦ª¨££¢¢¥¤ ££¡~sf^bTWZX^`_cbejigjkmigmkiffgeifeeikdhggdhlpppqrnsyuuwvxvy}z|s{||{~}~~~~|~}~}~|||z}}~~|~}}~y|y{xyyxsosrlmjimhdelptz£¤¢¢£¡¤ ¢¡¥¤¤£¢¤¤ £¡ ¡ ¤ª¹ÅËÏÒÖØÙÙÛÛÝÞÚÕÏÆ¸¡pcppljpvqqmtwuwrzyyyx{{zzw}uv~zsxzxy~~~~|odQ?42++6B51-/83/1-5-4 ¡¢§§¦¨¥§ £§¡¥¤¦¤¤¡¡¤¡£ ¡}xnid\bWU]\bb\ecgifewjijegilgjmh^cfbglcgeghkopoqrptqwruzyx}zz|}{{yy~~~}~~~~~~{{|}}~|{{~|z~~~~|}zz{z{z|yqopqpoimiokjgloor¡£¢¤¢£¦§ ¢¡¡  ¢¡¡¡£¡   ²½ÈÏÑÔÔ×ÙÚÛÛÜÚØÖÌÄ®xhhmqjhprpnuvtwtwzsx{~t|sz~{|{x|{}|~n_G;3-,-()0051,)+/.0.72¢¡¢§¤¦ª¥¥¡¥¥£¨¢¥¢¢  yxhaZ\WYa_`^dbbcfagjfghhccfglgadhcjfghegimnmtsnouxrv|utwwwu}}zz{~}|~~~}z}}~}~}~}~|}||{~}|}~}||~}~yzy{{xwxzsrtpnlqtkiiffhmlq~£¤£¢ ¤££ ¡  ¢¤¢£ ¢ £ §·ÄÉÑÑÖÖØÙÚÚÚÛÜØÔËº¤kjfijknuslyqxvtuvrsqy{}~{xwzvuyxu|~}sZG514(),+,64>/34*/11735¡ ¢¦¨§ª¦¥ª¤¥£¤£££ £  ¤¤}tec_UXWW^_acfbckkhigeefhjgegggjmmfcdkhgijgijlknqqsqs|wu|yvy~x}}|~~~~}~|~~|}~~|}~~~}~{}~~}~~{~||~~}|~{{~~~{{x}vwxvzrrqpllppijmhlooqy£¡¢¡£¥  £  ¢ ¤¢ ¢ ¡¬¾ÆÌÐÔ×ØÙÛÙÜÛÝÛÕÎÂ³~pkekslmnqtqtwquyrxvzwy{xxy{tzy{wx{|~|q`G8299.5?22052..///0//0< ¢¢££§¦¤¥¨©¦£¥¤¢¥ ¥¥ ¡xqic]XXYV\]a]^bfdejmeighggbenikgdgiibeggkknjjltloosxww|xz|wy{t|}}x{~~}~~~~}~}~}||~~{}~}~}~}}~{~~}z}}|}||{||||y~xxzywvttnomnkkmjjkknvuu|¤¡¥¤¢¤¡£§£¡ ¡¡ ¢  ¢§³ÅÉÎÓÕÙÙÚÜÚÛÛÛØÒË¿©seigmlpqpvuz|vz}ytwzvz~wyxxzvuxw{yw~}}q^I:J>//+,/+1'+3+-+6037756£¢¡¢ £§¦¨§¤§¨¤§¥ ££¢¢¢¢¢£}xrf`_XURX[e_\`a`ehkingliihdhjmfgggebhibhhmjpqonppsqxv{xy{xvy|x}}}~~||zz}~}~~}~}|}y}{}~~{}}~|z~|~}}z|~~~|}}z~{z}{}~}~||{}~|~{}~}{yyusonjlnljhhhmopwy~¡¢¡¢¡£¡¡¢§¦£¡ ¡ ¡¢ ­¼ÆËÑÕÕÙÙÛÛÝÝÜÛÖÏÇº¥jedijmkrvqvyyvyzv}|z}{x||zzxyztv|{~zy}n^G8>II10'.+-/('.-,*/123669£  ¦ £¥¦¥¨¦¨©¥¦¤¡¢ £ ¡¡ ¡ytlc\UWVMRS`]^addggdidkekfggiiehfddikgfehgljmnlkqqqrwzzwwv}uzz{}{z}}~|{}|}|~~|~~~~y~z}|~{}~z~||}|~~|y~~y~~~~{}}~}{}~|~}{~~~|}zyy{|{~wuqlpqkkjgiimlspuw~¢¢¡¤ ¡¡¢¢¡ £   ¢³ÄËÎÓÕØØÙÛÜÜÞÝÛÕÎÂ²xchjlmnorrtr|}yz~~y|{xz|uxwwzw||}w{{~}o_R51'/:4-&'$(.*)--../73:;//¡¡ ¡   §§©¥¨¤ª¥¤¦¦§¢¥   £ ¦yqmb`VZ\SUTU_^agedkggiigkjtkgjjldhgdicfghkkmlkkjostuux|xwt{~{}~|z{~~{~{}~~~|~}{}}{~|~}wx}||z~}~}~~~{||~~}{|{~~~~|~~}z~~z{}~{~}}}{}}{y|vxz|yzswknpnqjlfiinrvyy~ ¤ ¢¡¡££¡¡ ¢    ¬½ÇÍÑÕÖ×ÚÚÜÜÝßÝØÐÈÀ¥mgghporsrlo}}|y{{wy}{~|zywstz~zwx~z~~~q^F6+/,.5/-'+(,.-.,22/,1933/0¡¡ ¡  £¤¥¥©¨§¬§£¥¤¥¢ ¡¢¡ {vof_UXRUSU__b_eefdifcjfilgginhdikbhffciigllklnmrurusy}x{wu{y{y}|~}}w|~|~~|~}}{|}}{}xy{x}z{||z~{}{|}z|}}|~{~~~~z}~~~}|}~}|~||z}}}|zz{{}uy|yqzvtnronljjlkroxz ¡§¢¢¡¡¦  ¢   ¡¢°ÃËÏÒ×ØØÛÚÚÝÝÝÜ×ÐÅ´}dfkjmlnttstxywwv{yy{wyxyzxx{w|}~{zspXI4*&('00./*,+.,.-0-/1496/58L   ¢ ¦£¨©¨ª©ª¨¥©©¥¥ ¢ ¡¡¤¡¥ ¥rpfgZYWRV\]`h`aahjjfflghiiikjeihgejjjfdgkjmingmrprtsuvw{xx|zy{}{~}~}y~|z~}~}|}{{}~{~{|}{yzxyz{|}zv{~}}|}{z|{zz|||{~~~zz~~}~}}{}}|}|y~|}{}wqvv{rzwnlqqpoolllnrsv} £¡¡¢¡¢¡¡¡ ¡ ¡¨ºÇÌÐÔÖØÚÙÜÝÝÝÝÙÔËÂ«nghjkoqqttrsuy|yy}|xx}{{xw{vx{w|||{lYF20/'&+--+/35)**921524/52.22> £ ¥¢¢¢¥¦¦§¤¨¦§¦¥¥¤¦¥£ ¢£¤¢¡tqe_Y\ZWTZ\]cdd`hejkkhhqhcfilgfhffdgifdekenimjjmoqttvuwyyz{y~}yy{~}}~~||~}~~}}|~|w{|{xy{{}w{~{{~}~}z}y~}}{~}||~~~{xy{{~}~{}yyzsvxuvwturqlqllmlhkrtw{¤ ¡¡ ¡£  ³ÄÆÐÒÕØÙØÛÝÜÝÞÝØÒËºfbirmqqwvqtutst}|u|s|xzzxwxx{}zp^J.+',-.10-1-(-/6)..043251.4898¡ ¡¥  ¡ ¡£¤¤¦¥¥§¨¨¬ª©©¨¦¦ ¡¤¢¢¥ }qqfa^[VVW^_`aagbceinlpnmogejllcedflhlggikjkjlmnossuuzw}||{z{zv|{}||{{~|~}||}~~~~~~~}~|}zyt{{{{y~y|}~y~~~z~~{~}}xz~~|||}~~~~}~|{y}|~}{~}z{|~~}zyypvxtwvvvrpkpppljlqm||~ ¤¢¢  ¡¡ ¡¡§¸ÆËÎÓÖ×ÙÚÞÞÞÝÞÜ×ÐÆ®vkjkjinoqstuzuwy|}|uyyww{y}||y~|~~zl[H5(*'*11*-,1/,.5-0441204.0-4582 ¡ ¢ ¡¥¨¥ª¨©©§ª©¦¦¦¨¥£¢ £ ¤xmid\YVV\[cb_]aefefggnhlmmklkndceechgbdfggjijmquqpquutyzwxxy~xvw~{|}~}~{z}~y{{}~{}}}~}}~}{|wx|z{{y}|xm|}~||w{|~~~}{||}{|z~~}}|}}~~~x~}|~~z~~~{{~}}}z}|||~y|w|xwxwsshtpmmolikijjsxz ¡¢¡   ¡¡¡  ¡µ½Ç¿ËÑÑÔØÙÛÚÞÞÝÚÒÌ» sotjvpqrvyuutvwuy{yzyw|}w||}}xnVC203()+84.)/.*+/103753323.23<88   ¡£ ¡¡¤¡ ¤¥¤§§ª©ªªª«ª¦©§¨¤      £ ¤¤}voe_X]Y]X_`\_ahcadgiihghkhjjndfgffccifiimjijopkooruuuvv{{x|~wx|~|}~{|}}~~~}~~~|||{y~z|z{uux|{yz{~}|}~~}}|z|x|z}w}}|~~~}{}|~~~z~|}}~|}}|y~~~}yvzyyrumqnkmrlghknmrt{|  ¢¡   ¢¡¢¢²ÁËÐÓÖØØÜÝßÞÞÞÝÙÔÉ¸nkihmkourqtstxuyy||}|x}{|~||~xk^F83&%/1'(543363*.9:63511.10022:77   ¡¢ ¢¢¡ £¡¤¥£¨©¦¦¨¦§§§¥¥§¨¦  ¢ ££¡{smf^`QU[\aZ[fbc`cigfjkihikhbggcgggce`ifffhfoonslstrpvru{szx}|{zv~z|}~|~}}}~}|~~}}~}}|}||zz|y~x{wu{zw|w|||{|{yy}xy~~z}~}z|~~|~}|~|y~~|y{}}||{}|~~|{|||xuryrporjtnogloputw|| ¡¤¡ ¡«ºÉÍÒÕ×ÚÚÚÞßÝßÞÝÖÏÀ°riigijnisqotvuvwzyyzxyx{~|{qbK9.+(%*,*+-27<243085-03:105037;428   £¦¡£¢ §£¥¦¦©¦¨¨©¨§§¦¨¥¨§££¡ ¡¦¢¢}rmc_\VYYXX]abcebghohhghgiiiggjglhggffd_bjhgkknqotruvvuvzzyu{|w||y{|{~{{|~}{|}|y}~||~~~|~}{~~{y|{{z{yyz{xz{z|z{}zv{xx{zvwzw||}~{~~|||~~{~{}~|~xz}{~}{}|xxvs{vqwrnnqrkxphnnosuxw}   ¡µÁËÐÕÕÙÞÝßÝßÞßÞÜÑÉ½¦igkbokpqrqsruv{x|}|wzw{y}uaF4-++(,+%+.0,6:05C4343173312/57410-    ¡¢¥¡¢¢ §¢¤£¤¦¨§¦§¦¦§¦©©¤©§¨¡¢¡¡¡   ujl`XYUU]W]eacgdcbfckhdgfgfgedhhebhehkikhjfmlnosonsvwtuvzywxxuy{~y}xw}|~~|~|~|}|zy|z|~~}z~||~}}}}}y}~}}z}|{zzz~}x}|}|~~|zx{|wywwx}}zvy~~{|}~}|~}~|{~{|z|~~}||||~zy}u}wuzvrvyqprvqomgjmnpvxy{ ¡  ¡¨¹ÇÌÔÕØÚÛÞÜÝÞÞßÞÔÍÉ²{icjhdkqrtrqqvwyw||||y}}zj[J;)**())/-.5528:87843.16120-3/865/1+¢««¤¢¡¢¡¦¤¥ª¦©¨¦ª§©¨¥¦§§¤¢£¤    ¡ ¡ ¡~wke]YRSRR[XeY[dcigfigecfbgdejfiffch`eikhiiknklrroorwuqu{{sxyqyzz{wyz~z{|z{|}}y}xz|~}|~~}{{|~~}|~|~|{}w{{|wv~xwz}|||~}~zvu{uzyzvxx|{z|~~}~~}~~~y~x|z|}|{|}~{~{{zx~zxuur|wzsqsooolmhnkwr|   ¢­¿ÈÑÔÖÛÛÜÜÞßßàÞÝÔÌ¿¨q_`ggokonvsuqt|}|x|z{vi[B8+'),*,).,-.1/,1136446.:3:311.442+,+ £ ¡£¢¢¤¤¤£¦¥©©§¨¨¥ª¨§¢¥£¤¤£¡¢¢¢¢¡ ¢¡¢ ¢|upc\SPRWRW[Z_]cbicglhfhccfddjeegefggiggcdhfimlootsrqvvs{xxwvvuyx}}y{}{|}zz~|~~|}z|y|||~{}~}~|~~|~~}|~}~}}}}~}|y{~{{xuz~}xvy{}~|yzvzvwxxuvv{yvz{}}|}}}}}~~{}}}}}|}}~{{}}}~x|~|}}yvyyuvz}uxtsmoikhhkjpr|~~  ¢£¹ÅÍÒÔØÛÝÞÜÞÞßàÞÙÒËº}fbacjhnnoorsqwvvuy{~y~ul\K7,+01,()**'.4042576=98<5744274.,1//33¤¤ ¢¢  ¤¡¤ §§§¨©¨¦¢¤¤¤¥¡£¢£¦¡£¡¡¢¢¢}vl`WZWQSSV\bbccedfeegmodeifdfdgcihgdiifadghgpqlqpuutuutx{uuzuszvv|||{|||||z}~y|~yyx|{~}}zz}~~~|~}}{~~{yyzwx|yz|yvzyz{zutt|uxxytwzv{z~yy}}|}|z~~~~}z}~}}~|}}{{{z~}~{}~~|zz~|zxwsvrsstssuonpilmmrvv{}¢  ¯ÀÈÏÒ×ÚÜÝÞÝÞáàßÝ×ÐÅ°taacpnolmpqrvxxpvx|}xl\J5+&,(-1+00,(.:@BJD>??@8=2340242.1,,..9¤¤¥¡£¡¢ ¢£¢¡¢¡¦¥£¥§ª¨¦¥¥¥¤¢  £¥¤§¥¡¤¡ ¡¡¡ ¡¡¢¥zthc_XSOPU[c[Zdajjgfhdgcdifjeffdfcdldchfkeiiimtossurrxxuyu{zyz|xxyyx~vxyz~{z}}~}~~|y}z~|zx||}~|~}~}}~}~|~uyxy|{xurxwyyyy{yy{twxv{xxvzyw{}~}~~~z||z}|~}|~yy}}}z~|{~|}{|~{zwuyqsttvvrnuqqstlmnrqy||   ¦·ÄÌÔÖØÚÜÝÞÝàààÝÙÒÉÀ¢kcehhrgkpnnqusvxz{xyo[K81,%,1,)*-3-(,02374070334000.//4/,,.+/2¢¢ ¡£  £¤¡ ¦£¥§©ª©¨§¦¤¥£  £¢£    ¢¡ ¢¡¡¢¡¢¡~ysfd_XSPSXZYbVXkffpifldbbdefegecdjdfbibfefchfhknporruzxytwxyww}zwvvz{xz{wz~~|{|{z}y{|}|~z}}|{~||}~|{~~z}~||z||~}zzzywttuxyttyvxyxxyvxszxxyx|~{~~~|~~|~~{~}|}}}}z~~~~z~~z}|w~|zxxxrtqtqusnxtnnllrmpr~z{ ®ÀËÐÕ×ÚÚÝÞÝßàáÞÜÕÍÆ®xdbimkmjoqtpqoptx|y|}{paP56.+,+-)-(*.4.3:55393;41.47600,.0--,,.),¡¡ ¢ ¥¤©©§«¨¤¢¡ ¢¥ ¡¤¥ ¡ ¢¡¡¡¡¢¢~|ohd]VYQQSY]Xbdigechedkfggehgiimabkcdaiehggijinpnprsqzxxyytwxwzz{~y|y}{yzy||}{}{|{}|{|~}{|}~}~~|}|}|}{{}z|x}yxxwswvzzvyxttuvxuqsuxww||}|~{z~~|w|}|}}|}}|}}||}{|{}zzyzxuqyurrrwsqxrnpmlnqsxw}|£µÄËÒ×ÙÛÜÜÞßÞßßàÚÔËº¢kcgglgimjqnqksrxz|vp^Q=..+,(()+.*+40.6569;<5335191230/42+/---(0£ ¢£¥¡£ ¢¡£¦§©¨ª§¬¥¡ ¡ ¢¥  ¡  ¡¢ylb]VUOYWV`_\_dcdgidfjgjljifemkcekjehbbkiehlmlolqrqr|{w{xxttuvy|{x~{|z{x}x|}v{z{~z|y}|~~~z|}~~~~}}}|}}|}z~{~~{uy}||zy{rztuqwxqwztvtzvyswt|zzy{|}z|~}|{{}~~|{{}z~{|}~}uwwx~zwuu{urtqsqpnomlmjlmqrwy  ¯½ÈÏÔØÚÝÛÞÞÜßàÞÞ×ÎÆ³xdafilmkioltquvyy}wq^H?,0,'*+),./0//865;9D>=:914532823/-+-,/3-(,¢¢¡¡¤¤¡  ¢¤§§­©©®¥£     ¤ ¡¢£ ¢|uia_]SOWUZ][addhaclibegjdeieejohdffecifeefjljkmnrrwusytxzzxyy}|~y}{}{{z|}||~{{||~}~}}~}}}|~z~~~~}}~~}{~z~~{|x{|ytx|~y|y}{uuxststwwwxv}~xvwwzz}{}||y~{}}~{~~}|{~}|{zy{{||tuypposttuprmjlkoqprrz}¶ÅÌÑÔÙÙÛÞßÝÞßàßÚÒÍÁ§jbifkjimorrptwyxzkaO91++().0-)10122516;94:84=7:531341,*+...0/*0¡¡¡¡ ¡¢¢§«©­©£¡¡ ¢¥¤  ¡¡¢¡¡¦  }qia`XRNRS`\]a`bbecdigjeigbjafbgjieekdfgjghlrmknouwvtvxwysvzvz|zy{yw{{}{|}~~x{{}zz~~~}{}{~|~||||{~}y~~{zzy|~|{~z}z«°¨³¢£vy{vsvyuz|{|wvzyzzyx|z}xzy~}z~|~|{}}}}y|||yyuwwqsvnuvqonnfkmjosptz~©ºÈÐÐÖÙÜÝÝßÞßßßÝ×ÐÈ²vdcjehlkpxpory}~wf^P:/+00/+-++)/1,10451999>;:4332/76;1/+,,/3/-0,¤¤¡¤¢ ¢££¤§¦¦§¤ ¤¤¡¤¦£¤  £¢¡¡¤{tif\YVNUR]ZYZ_^dcidgfmihlglhjdkikeffegffkgmtmomuttrsw|xvzy{yz~xz|zyy}y{y}~~z|~y~{}}}~~z~x~~~~{yz~|{{~~±¸±º©¢²±¦¦®·¬¤§|{rwvvvswywv{zxx|||}~}||}y}}}}y~{}|}}{}}{{}{|{wvtwsqtoouwqnnqmjjopuswx²ÀÌÎÔÖÜÜÝÞßààßßÛÕÎÀ«lafuiimuuvty|}|shWR?.,+++310+)*0-.0345;:7:7;4777=5*:2/5+--.-3,,/££¥¤£¡¤¤¢«ª¨ª¡ ¤¢¢¥¡¡£¤¨¤¢£|kfaZYQUS]Zcbadagghglhelmqkedgedeekeficgjelqjonoqqrvwyywxz|v{{{yz|z~~}}|~}|}~~{~~z~~~||~~~|}z}}}{}||}~~~}y|´³¡·¯¤§´±®¾½­°»À¾®§§§yxtqsuqvuptzx{z|zz|{}|{|{y|}}~|}{|{y~}}|{z{{wwxxvvsvuptuqponkjpgkpquvx¨¹ÆÌÒÕØÛÜÞàÝßßßÝÚÑÌ½ }nm}oonpuor{u}wiXB/-.,-*,100,*.2042285779@>;:87232,/++0+-/-*.00-££  ¡ ¤¢¢£ª§ªª¬¨¤¢¢¥¢ ££¡ ¡¤£¤¢¡}lh\^XSRU\Z^_[]_gcegljhjijmddhfldgeeieghiklpoqrnoqlovvxy|ywy||{{|z{}|||{}y}~}}~{}}~~}|~~~}}}{ §­©«¸® ²²¨¢²À·§±ÁÀ³¯»ÄÂ¶¤¢ }zyquuussuy{y{z~{|yy~}~}z~}|||~}y{yvxxywuqopotnrrpllkmlprwx{|¯¿ËÎÑ×ÙÜÝÞÞÝàÞßÜ×ÐÅ¯shlifntrr{|zrmaM;,'.(%))+,*)/0222:<33;66=9:873341-*),--0/(.,/05£££ £ ¢ ¤¨©ª©­©£ ¡¢¢¢¡ ¢§¢£¢ xod_\[SRWWZ\`_hbbdddeefhfhjdjegjgifeaeeehkjoosqrpppqxvwwyxuvzx|{}|}|z}{~z~}}~~|~~}~~y|}~{}~y{}z}}£³¡§ª²¬­¹´¢®¸¶°¨ºÆ¸¬²¼Âº±¯¸¿Â»®zvwswyssvsxzy|y}}|{~~{}z{~~|}~~|{~}|~|uxxyxwuunrprorpmlkinlppzv|£·ÄËÒÖÙÙÚÜÞßààáÞÚÖË¼©kngkowtv||ui\L2+%)+-1*,*0,,+015278536H:?897?>84+-&+,))05/251/,¡¡¢¡   ¢¦¤©«®¦¨§¡¡£¤§£§ £ ¡ £¢¤¡¡ylbX^QSXY\[^Zccbcbkfjieijhcfffcghjffdffhgnlpnqorsmttxy|y{{{zzy|~}z{|x|z}~z~z|}|~}~{}~|}||~{y{} ¤´°¦²¡¦¯³´¯µº«©¯¹º²®´¸¹±¨²¹º¿ÀÁÁ½»«uuprzoszyvy{{{|zz~~}}{|{}|{~{}~~}}}~yyuuyuyx|wmpmronookjnlnpsv}}©¼ÇÍÒÖØÛÛÝßßàâáÞÚÒÉ¶nklux}zsg]G90)%))**,,),--).25919677685;65368,0.(),++,*/+0+/2¡¡¡¡¢ £¦ª«­©«¥  ¤¥¥¤ ¥¡¤ ¡£¢£¥£¡tid\WVRSSYY[^aX^bbdglfgfieggbfehhjhongffllomorropuvwuzzxux{wuxx|}z}~|{}||{}~z~}}{~}||}~{~}}|~}~ ©°®¯¦¡§°©ª¹Á¹«¸µ®«©´º°§¥±²³·»¾¿»¸½¼½½»±rrmorxxwz{xxyy~||~}~{~~{|}z~|{{|wvtytyxvrqtvssnqoonmjjgnhoptt{´ÀÊÑÔ×ÚÚÜààáãâáÝ×Ï¿«wqoxrwzze]J3-+*()+)*/--,*-/-.7307223643266822//&++-*/0,+-0()/  ¢¢¡ ¨§«¨ª©¥¢ ¤£¥¥¡¡¢ £¤§¡¢¤¢~wmeaTVRRPXY_\ZXffeefihgiefieblifddfhlfgbmglljmtqsttwuxyw}|~twzxyz|}}{z}zz~{{~}}~~||~~~~}~|~~~}|~­­¡ª´¬¡¦«©¤¶¸¸­¹¹¹®©¸º¶ ­­¨¯µÀµ¯®º¼½¼ÁÄÂ¾»¶®|vuswvrusw{vy}||~{}{}{|}~~z|||}~|{{txv{xwux{twqospoplmhlgkmmpwv~¨ºÄÍÑÖØÚÛÜßàâãããÝÕÎ¾¦tptvwwsdL91*)'(),-+(+../*.+22:641384532/4100/2+,///2,-/*(1,,¢¢¡¡  £¤§§¨ª§§¥¤¢£¢££¤¦£££¡¥¦¦¢£}vhf_USPOZVW^\]^fbfcglgkfejkaklffiiedjijkpnkjlksqswrvx{xz}y{xwyx}}{{{}~}|z|~|}~|{~~z}~{}~z}~¢¥¡¯°¡¨­¦¯´±¬¸²µ°¨³¸¶¬ ©¬«ª­·µ®¨¶»¾¹­·¿ÄÂÁ¾¿½¶¯£jmsruvw{t{{||{}}~|~{yx|w{{|y{}vzwwwywwvoqrtqorrpqsljjhkmrnu|«¾ÈÏÔ×ØÜÞààààãâàÛÔÉ¶}vyyvsgO9.-,($%(+/+,+..1+-2593;617-053323143,0+3321143*,),,) ¡¢¤¥¨¦©ª©¦ª ¡¤¢¤¤£¥£¤¢££¦¡¦  zvla]UQSXXVZb`\ag`fcefjhhb^legjhdgchljeciglllrptyvurtyzzxwy{z{xx}}~y~~}|}~y}~}~zz}{~zz~}{|~|y{~~¡©«¢¡¡ ¬¬§¨²º¬°²¹»«­­±«§¨µ®¤¬¸»»µ­µ»ÀÃ¾´·ÀÆÀÃÁÀ´urptssuu{vx|z|z}}}}|||~~zv}~{||{v{{zzvyxusvmpsuoomoqsrmijejolry{}´ÅÌÐÖÙÜÞßàßàãäãÞÙÑÈ±wy}naO?0'&,0*-),.400/450779757708-6703,3)(-3525.41./0/11*/2¢£ ¢§¦§¦ª¦ª¦¦¢¡¢¡¥¤¤¤¡¢££¢¢¦§¢¤£¢ wpbZUINRVWYXW\]__]beeehe_bggebghfggoggfiefoonpwxuttxw{vyuyv|{~zz~}~{~}|}~~y}~~z~}~}{~}}{xz}}~}|¢ ª¢¥®©¨³¬£¨»¿µ²®²°§²·°¥§°»À°¥®·¾¸³¸¹½ÂÂÄ¿¿ÀÆÅ¼¯}poqu{stvtz|~}}z{}~|}~{y~xu}}y{z|zvu|uvy|orrtrtoqqkpkklik|ktv{~«¾ÉÏÓ×ÚÝÝàßáââãâÝ×Ð¿¤ypbY<2.5%+)'(66+00524206467589133546-.**-/359:/10+//)*++.2¡¡£ ¢¦¨¬«ªª¦¤¡}¡£¥¤¥£¥¡¡¤§¨¦¥¥¥¡¢£xl_[TOONQWTXX]ab^_dhdefkbdddfkihhfdjghiiifonknq{sssxxxwzwwx{|vvx}~}|y{{~y}~~|~|{x~|z|~~}|z¡¡«¤­ ¨µ¶µ§¹·¨¶º·«¦§º»®­¯´º»°ªµ»ÃÃÁ·¾¾ÀÉÉÊÄ¿¸¨yposswysuz|~}}{~y{~zy}~}}yz|yw|{{vzvwxuwuktsrsnqtolmpkidp{lrz|²ÂËÓÖÜÜÞßßááääâãÝ×Ì¶xgSA,').(,**$14(*./3553534364043633/.**077421/.,*(6'*/-60, ¥£§¥¬­«ª¥¤ |{z~¡¥§£¤¥¥¥¤¡¥§¦¨¤¨¤¢}wk^YVMOMRUWR][\cc`]_^_bdd_ehddcdebeeggongfhkmkrtspqwttvxxzxw{y}~yyz~zy|z~|{|~|{z{z{|||{{|}{z|{y}|xy~¦©¦¢©¬¢§±µ²­§¶¯¥­»º±¥£·À½±¬µ»¼¼º»¹»ÃÄÇÈÄÁ¿ÄÅÂ´qpomvps}||z{|~{~y{x}|y|w~|zw}zwyrqqouorrptqooouimrmmjjmopyx~¤·ÆÐÒÚÝßßÞàáãääãáÚÓÇ¦xX?2,)-&',&+&-)/04889:7;14=58250355/21,2/67;9/..8-'*,--2.-  ¢¢£¥£¨§­­§©¢¢}|xvwx}¡£¤¨¥£§¦¢¥£¤§ ¥¡  ~rhbXTMLNVUTWZ`^_c\badaddbihd_gbifba^ekmlmjiionqprvqstzuvw{z{yxx|||}ytz|yxw{}|z}{||}~|}}wxy|{wwzvsx{ ¢££ ª§§­¥¤ §´°¯¬¬¥«±¹º©¡´´½¹°¬»ÃÃ¹²¹¾ÀÁÄÂ¿Ã¿ÁÄÈÆÃÃ½¨vqnlsu|{yzy}|}zuxvx{~{zzx~{{yzxwsvutrrqnpolnsmllmjighkhnosps{~¬ÀÍÒÕÛÜÝßàáâãâäáÞÙÍ¸L/,-)*)&.3&+)3-)+647911878005=2;=4229--/6:23/-01*(+/--1,2¢¢£¡£§«¨¯¯§ª¥ |yswusx¢¦¥¥¤¤§£¤¤¡ ¤¦¥¤£qjbYTMNLMNWefZceb_a]_cdebbgccecbdbcceiifjiiklmspnuqyvuswuuxzvxxxw{zz{z{wwwxw||~|}}}~|~||z~{x~~¥}~tsxz}|©¢§ ¢°°¬¬¥©¯¬©£«¸¶¬ª¬¯¼²«¯¹ÂÅ¾µ±¾ÃÅÂ¼ºº¿ÅÇÃÇÃ¾¾ÆÉÅ°~nmmqwvxuvvwywx}zxyxxwy}vxzz~|{{vwsrrqvuwsrunrpnmoniiggkhmpkstt|¡·ÊÍÒ×ÜÜÞáããâãääâß×»C*+'*+&(,1*/4+1)/.46566016533552,,.4..32.1/-.1-9/93,+'/04  ¤¡ª©ª¬«¬¨§¢¡wtonhqw¥¡©¨¨¢¦¨¤¥ ¤¥¢ ¥¥¡vj_XSONRVU_b[\[`^dhibbaeeb_aegaadedbhlfknlijlmpppqkwr}pttxqww{wyw{uwywxy~{yzx}z~{{|~~}|}}}{||~{y|®´£|z}}wy}x ¦¯¤ª©­¨©¬«¬¸²¯®µ·°¨«ººÀ¾´´¹À½Â¾º»¿ÃÇÉÃ¾½Á¿ÄÈÉÉÂ¹¤pomxywpryvwwu}yvx}{szy~vzxy|yzw{yysvpsrprpuqqmoiilikcfbhjjnsuxªÂÇÏÔÙÛÝßàäåäæåáàÖ´p." )%($'),/.031)-4944230222433./-.-0010L7315/.+667/-.9328¢¢¥¬§©ª««©§¡zynjkelt~ ©©¥¦£¦¥¤¢£§¢¥¥¥¢ ¡{oa]UYSIJLTZQVS\][c`fni`]dccbag_eajfhfgcjhgkonopoqq}svrxzvuy||wwyzyzzy}z{~yzz}~|}|~{u{y{w¦«}|zzy~v{|v|y~¤ ¬ª¦ ¤³±¤ ¡§°¨«©¹»¶°§¥·À¾³²¶¼ÁÂ·³´ÀÁÂÂ½Á¾¿¿ÄÈÇÆÁÄÅÉÅ·jssslttpptqwzx|xyvwzyvxxsvyyzzuvvvrutsursooqolpnlkhgfgnjpout}±ÂÉÏÕØÜÝßâääææåß×¸p)$"-'(*---)/3'-25478;55473<<:1+.,-*+14235425+'*137*-,/721¡¡¢§ª©«®«©¤ ~umebdgs|¡¤¦¦«¤¨¡«§¦£¢¥¥¥£¥xodWWRJLNRR[YWU^X[_`abac^[cad`ec_djgbbgeihiqkslmotussuzqq|uvyxzvysxyyyzz|z}{}}{{|{}{~}z~{}}{y{~~z|v|yytxxxxx{x| ££ª¢£§ ¢­°¯­¥«®µ¾ª£³·¼¾µ±¯½ÀÀ·¨°¼ÅÀÀº²»ÁÅÇÂÂÂÂÂÃÉÎÉÆÂ·¥xrruopoqxzuxvxuvv{{xuzwxtxswwwtwturrspopqhkllnmeiefbhiopqwy©ºÆÏÖÙÜßáãäååæâØÃ7"&*')*(.().00224388452554564-.,-).*118;/40,./**--/,*37982¤¤¥¦¥«¬°¦ª¤¤zrgf[[gq{©©¦¥¦¤¤¥¢¨£¦¨¤¢§£slb[SMJRMSTVSZW]X\aa]_``a^ce`c`f`ffbibfggicginjqpnsqyputsowxyuz{ry|~wxx|xxyz{|}||~{||zx|yz}±y{{|}|{w~}{|}}z}|~{ ¢¤ ¤¥¢£ ¯¥¬­¥§±·¶´´°±¼ÁÀ´¶½¼¿·­®¸¿ÂÃ¸°º½ÀÄÅÀ»½ÃÇÉÉÊÆÂ½ÄÅÇ¸~liloppqswvustuxy{wzw|www|xzvyuuwtsqpmtqoohmikgili_bmmiouw°¾ËÕÙÛÞâãææäâÚÌ¦Z$'''(+++*,2)'/./5344782777450,/+,/-+137631/++,+0.-1/346;:3¦¦¨©®±¬­¨©¡ztihZ\[cpx¢¦©¤¦§¦¢¥¤££©£ª¥¢§¡|vja]PQHKMKPPUUZ_\b^`^c_Z`_gdecbbddbeffkifhikjmmhlmnvxrvwppyryvzw{sy|zyw{}zxv}zz{{{}zy{}{{|}y||¯Åop}|{z{{|zvv|yzwy|~y}}§ ¤¬®³¶¯¥¤¬¶·½¾¼»¹¾¿µ°°·¼¿Àº·¿¼ÀÇÀ¹µ½¿ÂÈÇÅÀÃ¾ÃÂÃËÈÃ¶ oiniloonpsttvzwrxwsyxvuuvvtuqsuusqpksnmkloijmmghcejloqsx³ÈÐÖÚàãäååáÛÑ·y3!&)'"$&*+*31+34/485512.;=4482(----+.246270.,*)-*/(13787310¤¤©­®®­¬¨§xle\RQWcqy ¦¤¨£¨¤¤¨¦¤££¤¤¦¢£¢ul_YOJJIOTWOSVUXY]___]_^_aea^ibcff_ggfcihjiigomijspmtsu}rrywwrusvus{}{{{z}{x{v}}|~~}y~zx|zzz°hem~{{ztyxvtvzzw||vyzyzx~uy¢¥ §§¬µ²¡ ¬¯°·µ¸·º½¼º±ª¹½¾»´¹¼ÁÂ¿»¶®´ÂÃÃÂÁÀÀ¿ÃÃÉÆÆÃÁÁÁ¿°~milkmnkruturuvvrwsvuwuvtvsxwqsspsptqqpphkjleihhdhlmnz¤¸ÏØÛßãääàÚÑ»D'&"*)*%)(*.+1.127;<56533;492,,'++((01-731.7..+-/)./00630,'$§§ª­°®ªª¥ ¡ ui_UQOXhlx¡¨¥ª¦¥§¥£¦§¦¡£¢¢¥¤ |tq_UNMIGLQPUVZXZ_]\^\b[ba`a__bcbfkadhbgnjgfdmfiiemonruqurrwzxsqquwuzyzzy|z}y}xy||}|yyzzv}z½¨lZWjmwx}vyzoz|ysy|yxzu{zq~}~| ¤´º°¥¤¢¬¸³­­º»¾¼°°º½½¿»·±·Ã¿Á½±­µ¾ÁÆÄ¾½ÂÄÇÄÆÇÇÂÂÁÀÀÅÄÁº£}njgmgmjqos}qpspwssst{wvtrtwroroosllloknkjkibfdbejloq}ªÊÕØÞáãÞÙÓ¾V0#+#%+++)*)*.5,384;827<784;864-,.*/-21551-).+...0..866;6,&" ªª²¬¯±««ª }oe]XGNZfrz¦££¨§§£¨¨¥§¤¥¢ ¥£wndZQRIFNJOPTW[\`[]\_b^^_bbafhbb`bc`ghbdhbemgijfjksqqpruoqpsrusqvvw|}zx{~|zx}{yz|{}z}x{{tsy}¡Ï¨faZns}yxzxww~zusyww|wus}~wy{¤¤±¸¬«²¶µ­ª´¹¸º·¯©·¼¿Á·¨¶¿ÃÂ½³¶¹¿ÂÀ¾Á½¼ÃÈÈÇÂ¿ÂÂÂÃÄÅÃ½¾ÃÃÀ©vedaihjnlqoqqlspqrntvstusutsooookllnklllikgidehjrpyz{ºÌÔÛßÛ×Ó¿W3)(*$,**./-(-*410876:173::63441(&*,2224193/))./*//875:75+&#§§§®«­¦ª¤vlZPJKOUdnw¥£¢¦«¥¨¥¥¡¥£¥¥¤¥ ¡~umcVUPHDKVQSTZ_^\]d_`d^f`b`bddeg_befhfbcddgeiljmoopqotrrqskrxsruwtsx}zvxt|wx|zz{w|x||}||}y|y}{±i_enstttv|}tw{vz|yxtxsu{|y{}~{¡«©¥£¦²·±¬¤§¶·¸±«®º¹¼»±¶¹·¼ÄÀ¶³¹ÂÂÂ½¶º¿ÃÄÅÅÃÂ¿ÂÇÇÇÅÂ¼À¾ÃÇÈÈÄ»¡ldfgipijgjnmsossmstssqqrputpokompnjgljjmldhfifksrv®ÅÐÙÚ×Ï¾b0,%&*,-/(+,*.++051041.5:67547-+,.-,-02503,-+-()0*,395;?:<)#¬¬¯®­«¨¡~zk^RNLJQYbqw¡¤£¦¥ª¨¦££¥¥¥¢¢¥¤¢ }sj^SVFIFPMTXX[T\ZZb]_bdadac`cacbcecifebhddnjkjnpmqlptqonstppuutxwxtuvwyxwvx~{~zy|~}{}~{|y{rmpsoswxvz~{tvtw{~x|p{y~}~©£«²º¬¤³·´±¦ª·´¸¹³²¶µ¸¾¾³´´¶¼ÅÅ½º¹¼¿Á¾¾Ã¼¿ÃÅÉÉÊÃÁ¼ÁÇÊÉÅÈÉÆÉ½ªpffnljhjiikhioqrrptsorrpqrlpkpnpkikngijghafflopsu¥ÀËÕÒË¸Z6'++**,,,,)*(.+2,;3-162335778//2,032176496/++20,0./4:<?48+!ªª«¬¬©¥£uueUPLHJQXgry ¥¤¨¦¨§©¤££¥ª¤§¥§£¢}tlcPTPEDKNQT^T[aW\cahkfhkkgahdgbhb`cfcfhmjflljlgkqqusswnorrtuuuuuvtzuyuwuxw}yz~|w~w||}zrmllqtmlsvv{|wsyrzxw{uuwx~{|~u¡¢¬­©©©°»·¦¢¨¹¼·®¦¡¸¾¾º³¬®ºÀÀÃ½¼¹¿ÆÅÂ½º»ÄÆÇÉÉÄÄÁÁÅÄÄÆÈÆÄÈÈÌËÉÂ¬o`ed`bglggljnjioqqprnrtnnmqlplriikjknjegb_gkmqpz}~ ¸ÈÌÁ­S1-'/.*,//),.,,/626003400547342,+1,:1858@84642+/.1105=>?E<0&"#¯¯ª¨«§¦¤¡uj_QHJJQW^gqv£§¦¨ª¥§¢££¤§¢¤¤£¢ ~sn]PPFHILPWVXWT[\]_dhibadal_`fhacdchcee`iafjkklolmopwvvjmmoqvtqvuxvxvwxxuyx|www{|w{z{yy}{|{plmtrrnrzvwwupo{{{xrz|}}}yw~{yz¢¤®¨©­µ²©¡ª±¼»®¥®°¸Á¹¯§¯µ»ÀÆÄ¸´ÀÅÅÃ¼¹¹ÃÄÅÈÂÃÀ¾ÃÄÉÈÇÀÁ¾ÀÆÌÌÊÈÇÌÅ³ka_bdcegfekjjoqppvuopqprnsjoimhikhnmkkmi`cjgnqy{²½·¢S5-++-2,)*)-)-2,,1/'41001<;2142/-,02?4763-4.12)*231.14EBL?<.%"6¬¬¬«ª¨£¡~re[PKLGNW`fox¢ ¥¤¦ª«§¥¥¥¦§¢¢£¡¡£ysi_QKOHGMPSUS_ZX]^]eecc_cnqgbeb]a`dgbde]bahehhooomnpqrpqzusrwuorzqszxtypuywyzvy}zz}~|v|{sw{~|mrqnpuwsyssqmklzxwvtz}{{|yx|}x}yw£££³°¡««²³®©±´¼¼¾¸®¯³¿ÂÃ¿¹¹½¿ÄÈÀ¹¼¿ÄÇÃÁÃÁÁÅÅÆÆÆÁ¼¼ÃÅÈÈÌËÉÇÆÌËÉµrbW]]bb\cegekmhprpmpqqjnlmijilmoqoilggecdjinpv  tI11(),13-)(+,.2240/2502/:761<921)()/2=>725.2*+0+*95/8>DJHC52+!4a««­ª¨§¢}xl_RSKJGQWcelx¢¨©ªª©¨©¥¨¦£¢¡£¡¡zyl]TLLHEGNPU\VX]d`df^fdf\_faaeda^af`bee`ehgfmkljmklumqnqwtuptuuruyvw}vxwyzxyxzxz}}yz~xy|uz¢vinvoryvuqnslnntrqvruy}|{|{u|xs}y|£¨«£ ª´´¦¡³½¼¸·¯²¹¼ÀÀ»À¼»ÁÅÅ¾¸¹ÀÅÇÅÀºÀÅÄÆÇÆÄ½»ÃÅÇÇÉÈÂÂÇËÊËÌÊËÃ´ p\_\_^[]ebdfikjsolhnoonkgieknlkonhmfhfceginux|~£mO43,./2'*,.'/3/1*13554471450,01-,+(,/6;:611-<2,,005578@E@E;*%$$3^¯¯ª¬§¢¡ypcXPMLMNOXcgty~ ¢¤¦«§¦¦¨¦£¥¢¤£¦¤¡}ym[UGPIGMRRWXVY]`[\]ca\bdefdcjee\eefabbaekhkkiiolomtqrptovtotqsrtwuw}xxxwx|zyw{}{y{~||xxyy´µ}mooqtupqklqiolpppvtyvzo~yty~zx~¤¥ ©«£¨¶¹·¬¯µ´¹»¼¸³³¿ÁÂÃ¿¾³½ÂÄÅÂ»¾ÃÉÇÅÄÄÀÀÁÁÄÅÇÆÆÃÃÇÈÅÉÄÃÇÅÈËÈrmljcYXa^e`fgepkkkopnonjiikkjdjqfhgfg`fcjnmr~~}z|qQ:0-/0-+&&/).&()/25;<D95123.11--*&)(/6459799<0.5403564=DCC7/&! &2Uyªªª§¡¤{sl\UMNOJLVTZgvw¤ ¨¨¦ª¤§§§«¤¡¦¤§¥¡¡zqgbSMJGJLQSTXeX_`_cdeecahhedcgfgaegd`daefdcfkijnlngsnprsrrpnrorxtuzyxvtxuxtzz~zw|~}|z|z{}Æ©uqqortrrtnqjhpsquxwvuv{x{n|~}~xzw~  ¦®«­»·²²¨¶¹»¾²¬»¾¿ÀÀ¿¼¹ÀÂÄÅº½½ÀÈÈÊÇ¾ºÄÅÈÆÃ½Á¾¾ÅÈÅÆ¿º·´»ÁÉËÐÑ»¬ª¢iXY]]_hgnmpmmrkigimljhjfjhkhed`cc`glotu|¡~xvu{|~{W@.-,*(&/)+3)%))*/136436446/3-+,.-(*.0353866./-,2/163?=CBF;2/%"!0Rp¬¬¦¥ ¤~vm`VQMRXNORT^ks| ¤¦¥§ª¤¥©¥¦©£¡ ¨  ~rf]THMGINSPSUUS`d]eef^]`_f`caeadbdbddfgceidogckhpkjkprlrvuwnuuvux}xzvxoxuvq|wx{v{{wz{{zuªnqtuvniinghmmqnswuxxqvzxvt~}{~}}{z|¡¨ª±´«¨¬³¸¶»¹¶µµ»¾À½²´¿¿ÂÄÄ½¸¼¼ÁÈÅÅ¿ÃÀÃÅÅÆÃº»¿ÂÅÆ¾¶±´¹¸ÀÅÌÑÔ×ÚÙÖÕÐÌÀp^SX_`bfljjkncpkkgjefjfgllmggdfbdpmots~ wzwrvuwz jG-,--*+-'5/)+'(.156372518<5630,-,*0+6658C521--+110165=CGA8/(&$"'0Jo§§§¥¤  |wd]ORnPONIPZafqz¡¤£¦¥¦¦©©©¥¥£¦¡¡ ¤¡ |qg_VNIMJKSPTVVX]_^\kdabe^b_b`deafedfbceakdfidkpimookrtorxvvpuqorrzytuzu{z{u{|{xvvz{{z}z©sptqqrjmmpjglqsox|uuxpzw{qz|v}y|y{t¡ ¦¶´¨§¬´¹¶·²±´»ÁÃºµ²µ»¿ÀÀ¼¶µ¿ÃÆÀ¼ÁÂ¿ÇÆÆÄÂ½½¾ÄÃÂÀµµ¯»ÆÊÏÒÓÖ×ÝÚßâãäââÞÊ¢jTWZZdelmljmjnehidbjglkggdeegd`bhkmtwywtqnruru}pU5,.(*//(''+(*(,238/3677861010**-.004;29:213.500310467AMM?7*%&!#,Fb}¨¤¤¢¤zl]QNPOTUTPPXZfwx¢£¨©¨¬©¨¥«¦¦¥¤¡¤¡yso`YPFJNOKU^XUX[_`hqccebbh`i`aebhdbaheeeelfidiponormvvqtqqrpnquryrwxywuyswzzz{zzw{uy}y{{|¤~ppznlklnjhollouutxtrssvsj~zs}vy|vy~}w ¢¨¬¨©µ¸½½¯¯»¹¼ÃÂ²¨µ½¿Ã¼´´½À»ÁÈÆ¶´ÁÅÆÈÅ½º¾ÁÂÄ¼·´¸¹ÀÅÑÑÒÓÕ××ÙÚÚÛàããåãäÜÊ[YXXY\eigejllhffcfeghhiidhei``jjhnlw yuwijlprnt{~vX<21(*/03,&),8''+-210534352-1++/+-+2/:957865..,/6104;89FNI>7&$),1;[v£¨§§¡yqhYQPXUVYSQIWagn{¡¤©¥¨¦§¨««©¥¥£¤ ¢ztg`WOILIQSSWYWX^debia_f_cceib]fecbcggddffffjkgiqnroyqtz~poruqtoxqro||ww|wu}|yxz|wx{{~}{vuqqpmjmcgitoiq|w{yvuswpjzz}{ywyzwv{~£ª¡¥­®¶´­²³¼ÁÁÁºµ¶´¾ÀÀ»³²¹ÀÂÆÆÂ´·ÄÌÅÄ½¹»ÀÅ¼½²«µ½ÈÇÏÐÔÖ×ÔÕ×ØÙ×ØØÛÞââäåãÚ»yTRSRY`aeiihddbfcecdchghegd`^cfhkmkv|{vsneafhfhnx{|Z@8/.-***,-$&.2,.043144332313+)(-**+6/8>90-27/11-0.069AGOUL;3($$1>Vk¢ª¢¢£~tm`^QMSRTUUXPW_ks~¤£¤¨¥¥ª§¦§¨¨¤¤¥£¡£}zrk]WVMJBKMTRSX\^]__\a`[babghccd^acefiefbffhhkklgpnmpkpruvowxovu|zwy{xwv}x|wy{uvvwz}||ztnjnimnijonlnrus}qprwro|{~}|w~zv|y~~x~{w¨¤¬¯¶´¯ª±¾¿ÃÁ·°­»»¿½µ¯³À¾ÁÂ¿¾À»¾ÂÃÃÀ¸¶¾¾»·µ°·ÀÉÏÓÒÒÓÑÖÚ×ÓÔÒÖ×ÖÖØÛßãáææâÕ¡aRLQV\adchgfbehhecefgbdhdf_ediglrsrxplg]aZcdgqymG-*.1++-0)*)/55-1,19<-02<042537--)*/34879//,2/..,0025=DJYQH<3*,0CYp¦©¤wpkYSOQSRSPSUTXcir~£¢¥¥¨§§¦¥§«§¤§£¥£}xshZWOJKDKPTZW\[^X]d`b`ge^\]bjdhafgg`jfcahghijlnqolmpnssrqoosqzxyr||y{{wywzzwzwv{w|~}~tujmpgmmrmnonxruv{pspnwywz{w{rv~|s~vz{}{¡~¥£¢©®©ª«´ºÂ½±«¶·ºÁÅ¶«³¸»ÄÅ¿¹´·ÂÄÅÆ¾··º¼»´°·ÁÃÉÒÒÖÓØÓÒÑÒ××ÖÒÒÔÖÖÙ××ÜàãâãáÜ»YJRZ[\cacfgdkedbhhefddaeg^][`emmqsyqe`][[TYanmwoO5,*14',9&,,$9*0.319752154765...-'*/6A5<;70-(120**2/7;DMPQNF<.'0<Xn ¥ª££{qg^OPSRQRTSWRWV]in}¡¤©«§¦§¥«ª§¤¨¦£¢¢zsgZWQMMKLPVWX[]^_a]\cfiq^bagg^g_bbdccgcggjhilginlnononptuqvtqvpuuxwwvvuyy{{|swqy}|y|zzzunksninhtnrptwrx|uuyqny|||uu}z}zxywv~r}}v|xv}|y ­«­¦­´½Ä¹ª¨³»¿Á»µ©¹ÀÂÂ½´®µ½ÂÂÄ¿¸±²·³²¯·»ÆÏÏÒÕÕÖÑÐÔÑÒÐÐÕØÓÒÑÓÖ××Ö×ÛáàâãÝÍ«tPKUXX^ccgbdiddkdcacggbfebaa_ihlpp{vjYXQUQVX`kpxrX7)*)/)&((.),.*2-.4/4392/616312*.1*,04:78;2-.6-5.-/56;A<MFMK@9/0;Sk~¡ §¢¢wqa^TOSOT\VQLTUU^irx¢¡¥¨§§¤©¦ª¨¤£¨¥  ¡|vmj]QPHKNHQUWYX_```__`bif`gdc`^hgc_e^edhggfifikornwitrsqoprsprqxuuzw}xwx|zzy|xyz}{|w~~ytokijkqrloontwxs}u}vsl~}y{~nsxw{st|~xln{z}{~¡¡¥¦£¬³µ¹±·º»ÀÂ³³¸ºÁÅÁ¶®´ºÂÃÄ½³­³²ª¥­¼ÃÈÊÏÔÕÕÖÔÓÐÌÑÒÒÒÏÑÕÔÒÏÐÑÖ×Õ×ÚÞââáàÜÍ¤fMOSVXZcd`cdceeeeabcabd`c]Y\ejqps~ul^UNPRNRVfpth@3-1')'&#%(+()+/1/68446?4230-/))+,'/296;10+'-2*0,0/4:@AEJ@LF://CQl} {sf_WNLVQWTTUTXX[bnr|~¥¦§¨¨§¨ª§¦§¨¦£¢~ulqhSSIHIIMUWZZZc_^_ccabg\echc`ciiidc_cgbcgedbfonoomqwtpprp|uqsw{qyxy{zv|syz{}yx{yyz|qomokemmoolpvu|ztrvsqt{{wysqwyt{zsn{|vt|zv|z{{¡¦¬¬´§©°¼¼Á¹¼¶°½½ÅÇÂµ³¾ÁÀ¾¸·°«¬ª©¯´ÂÈÐÑÔÒÎÕÔÕÓÒÑÌÎÒÓÓÏÏÑÓÓÏÊÏÏÒÖ×ØÙàààÞãßÊXRWPVU\]`b]deb`bd^da`adaa[`enmnw}}tjYUS?DCGS[ju|kQ20)-##$"')/6+,04613646,180/011-+-4+0052710.-/2-04236=DHHKA@B<>ERfw}vh^UQORWXVUZSXVU\_gqw}¢£§©§§ª¦ª§§§¤¦¤£¡}uqie]WRKOPRUTVX]]^c_]bdbe`f]bd]fjnhhidhff`imegklnpnqpsvtssntvtuzruv~rwyz}wyyx|yz|~{w}wnekmnhqqhlmmkt|rxxvm{}{}tw{{|x|qxsl~~{}{~¤¨¦§®©¤ª´¾Àº±ª¸»¾¾ÃÄº½¼¾¿»¶®©­¬ª©³½ÄÇÏÒÒÔÓÕÏÑÑÐÑÍÐÑÐÍÒÑÎÐÏÑÓÕÎÌÎÏÒØÙÖÜààÞàáØºvUOQVVW\_[\]faadaefec`_bcb`ahjqq ~xi_RF9@==MZdnvtT6*)#)),')((+*--;73<6676056643.-$)-2258<821)+-*..4342==FNQOB?7<K[jv tncWOPUUUVX`WWTP[[Xfpw  ¤¨¨©¦¨«¨©§§¥¥¦¢¦xsj`ZUOLTJQV[W[\X\\[aaea`ec`ecdglggddfcbeeffhjikjjnqoopptrrtussuruvvyxzy}vx{y{y}zz}tsihjenmirjqp{qyuqpsr~~x|xsz{t|yxuw}trnz{~§¤«¬«»Äµ¦¤±»¼¿µ»²»ÂÁÃ¹¥ «©¥¨´½ÉÌÎÐÛØÐÖÑÑÎÍÌÐÐÎÐÓÒÐÏÏÐÍÍÏÒÔÔÓÊËÎÔ×Ú×ßààÝßàÑ§mWJONVVaY\b_a_^^bif^a`\bX`bhppr| vf`O@598:AU\rp{~^7)*$#&(*&)'%-(/,315>3A5849642,)&&.135598./-)47+2:BMH<?@EQZ=F<;IPfx|riXRQQVZW[YZ^XVRZ]bkt|¡£¤¥¤©¨¥¤¨¦£¡¦§¥¤¡{sma[RMKSQRS\XY[_\`^abc_dfdde_bldkgecd`cfdefdllmknlntnstpqrtworytvvyzxuws{zu}{|y}}{~~|qpkihemgkrspvuqyvjl|z~|vys|ywxyskt}smuxyw~}w£¤£­¯´¬°³¯µ·¾³¬±µº¿À¿ºª¥¯½ÆÉÔÔÓÔØ×ÑÑÑÊÅÊÊËÏÍÐÑÐÒÌËÍÑËÍÏÓÔÕÒËÎÒÖ×ÖØÜÞÞÜÝÙÇ¡lMKPPSXZ[^afaabbd^[b`]^[`cfkrt{{laPB<7/39MXcnvzmH4+0%&'*('))(,2/6:;371-6722941.-('0726<47-0--*,0-8<FEPB@CTGADBKZhv|rj^XUNPVYV[[X[RROU[cim}£¡¨¥§«¦¥¦©¢©¤©©¤¢|rj`YWMMGMMPRW\_Z_]`\`]a`ecghggjhfbeggbggfidjojjkoshkqntqstuusoxuvyyytxyzvzxyw|z}|ttmnlqljoigrnpsmnxolvy|zrxssz|trqxrotvw}z{|}~|¢£§®¯¦£«´³»¹²§°·½À¹±ª¯©­¾ÂÊÑÑÑ×ÕÓÔÖÓÎÍÍÇÇÊÍÑÏÍËÍÐÐÌËÎÎÎÍÏÐÔÔÒÍÉÏÓÓÑÖÙáàÞÝØÆhPKMTUP\\[a`ba_ac]ea_]\`dhjtu||peXE<2-78AQWeuu{oP4'+&&*/2'-(+1./5;:;35948785230)0&.1;9=60/+,%(,.-4C@?<EFBJTJJBPZj|~{qdYUNUWVW[UZWXSUXT[_jo{¡¢¦¥¨¥¨¨¦£¥¦¦¦¦¥ tqi_VSNJIMQWTV\[X`ac``^e_`dldafdmefjcdfagafcjknoiominvovypstvvtswzwvzwx|{}}zuyyy{wmlrpenfhqlopstrulplytvyuvpslp{lr~topuvsz|{sz¢©¤£¬°·¸²ª®¯·¾À­¤ ¥¸ÃÇÊËÔ×ÓÔÔÏÍÏÍÏÎÌÎÊÇÎÏÑÎÌÍÎÎÐÊÉÎÐÎÎÏÌÑÕÐÌÌÓÕÐÒÖßäßÛÞÙÄ[JRLOTXWW[b_^^]^]^^`^be^gnptx}zljRI?3-05:GW_mswZ<15,&0)('+-+0-5:<:359/<45612.,/-**4<>:9331-,3/2/>59;;=AFAIPIJLXgr~}rbZXSSTVUYYWZZZVVXUZ`kpy|£¥¥©¥©§¤¤§¥¨¥¥¦¢tnj`YOOIIMTX\Y^[]__`a^\cibghe`kihfgaff`gebeikkmojikpnqqyrstuouvrzv}~}zzxyr|yyvsz|{tgnkfjnijpkktoqtpjuy}zwqtupmu}wnqrrlxz{vxz}{r}~¥¨¥«±»½«­´²²¿¿± ®µÅÏÏÏÎÐØÖÏÏÏËÉÈËÌÎÑÐÅÆÏÐÏÎÎÏÌÏÏËÉÎÐÐÍÉËÏÑÑÐÕØÓÖÙÜááÞÚÝ×¯pTNNPSSYZYXXZfcac_aa^_`_dgor}{rd]P93)*,4BL[fkqz~fE/*&<<HF;),**-4:6>745689:/645/,2--+769<26.3+,,0,)7?8;9<DLMJMPPZcrwob[RTRR\W]VXZZVUWXRVafot} £¢¥¥¤ª¨¥¥¦¡¤¤¡¡¤ yrma\NHHMNPUV\X_\adaa_`di_die_edfhg]ed`fgbglgihjjopjpsmqrxtwsrtyywyy{xx{ur{x|y}znklskikonpsmlqqupisz|vsq{ts{rywxrejwtx~yy~ysy©¦¨²¹µ®¨µµ¯±½­ ¯¼ÂÆÉÍÑÐÎËÓÓÌÇÈËÍËËÎÐÍÏÌÇËÏÐÓÏÎÍÏÌÍÈÉÊÎÍËÍÎÓ×ØÕÚÔØÜßãåãÜÜÚËeOIPNQSQWTXVZ]\X]]]ZW\dfhov{|rf[N9+('0,<KUckquz¡kH2)/0RU;=9:/++255374230556:6//,/-(04579861,0-/830.8>7>BCJLJKCQ[dpy|se]OSWZUY\\ZU]ZRSYVWY\hr|}¢¥¦¥£§§«¤§¥¥¨¦¡¡ ~{ocb\PLMFKSWTVY_`_```^]ba]bgaabbdfbfb^dahbejjjikkjmnktkstsststvvwuwy|v||yvwy{y{y~tiknofhnnprznrqtplvxvzwtttuvyukyxkcfsrs}{~|v~ ¦°¶³¬§¶µ·³¬¢¦¡¨¼ÆÉËÌÇÉÌÏÎÌÆÌÎÉÉÏÑÖÓÎÎËÈÍÌÆËÍÏÌËÌÍËËÊÊÇËÑÐÔÏÖ×ØÕÚÙØÛßâäåáÝÜÛÁXKKNJURSUXYXYUWXZZ\_]cggsv{ |wg]M?/,(--:FSbcisuvY=*33*)1,,/-.*-1/36237/34498600*-+.3<8;30../.3.472054<=I?ENKSPWcmx {{wibWVTTR\[\aZVZ[[X[XTWXdo|¡¥¡¤£¨¨§ª¤¢£¡£¢££ xyod_]SNHMQUXY[[_b_adfb][e^bda`_efcYceccbiehlhhdjimuqpsnystusvtvwzwsytv{zzvzxw}{~tmnkjmmonsmsnowookvuvztsyvzwtssrvnhmuto~}yw¡ ¬«¦¢§¶¬¹±¤°ÃÈÍÌÎÎÌÉÆÊÍËÅÅÇÍÒÒÓÖÔÎÏÐÊÈÊÆÅÉÆËÉÈÅÆÈÉÌÑÑÖØÙÏÔØÙÒÔ×ØØÞßßãààÜßÚ¾LGJMONLUSUTYUW^[[Y[_afhru~~wi\I61($,07:Sa`hkw{dA*(/%)-'3,')*/*5435363.37420-.,/,0159=CB.-015924.02.4A=CGIPQRVcpy£yynbVRQUUQXicZ\[[ZWXRVTVccqu~¡£¤§ª¦§§¤ª¥¨¦ ¡~yliaWRNKTNPT[^\d`bddebfaf^^hab_ghg]`kfcb`gikmggjnknmyvltossssszuxuxwzy{{|}{z}|ytvpikjjnq{rrnno{qqttxurtssyqcotrhnoqmw}xu}v{y £¬§¢±µ°ª¬  ©ÁÌÏÏÍÐÏÏÍÈÄÇÉÌËÊÌÙ×ÐÎÐÑÍÊËÉÇÅÂÄ¿ÃÉÇÊÉÆÑÐÚÕÚØÖÔÐ×ÕÔÏÓÔÔÚÛÚàãäÞßãÖ¨_TRKJHIPPVOXXW^YZYV^_ehqvp`WN<.$%$+6=IOefqxypP8''$&%,-+(+*3004776115?;5500.+#(+,46;<@8.+001161146189AAPLMO]gpx ¤¡ssh]SVPXXXX^\[YZXX]WPVVXackz¡¥§¤©©§©¤ª§§¤¥¥ ~sqd`YSLFMMNWTWa_ca^`pcc`d_beebefccfjeffcaghkgdjijkkqmlttqwyvurtsvusrvtrxy{}|}wrqrqmlilltvnosjmvnquwvrutyyojmslcfmpqswqw|yx}}|~¡§¤¥´»µ«®¾¼ÄÑÏÍËÎÏÍÌÉÄÁÉÎÐÍÊÖÕÍÉÊÎËÉÄÈÇÆÂ¼ÀÂÄÏÒÐÈÑÍ×Ó×ÖÓÒÊÏÏÐÍÎÍÐÏÕÓÖÛÞÞÛàÝÄiYNMKGQPQNTSRVSXWX``giqw}~xmdVM>/%#+,16COdafty~c>*))&#(/*,+01027:14:67395550&,)$',/7<6;10(+*30023/0:5=6;?IIO[hqy £££kkeUOSSZXVZYZX]ZZZVZWOXT^dow¢£¦£¤¥©¨¦§¥¤¤¥¢wqkvYRGGOWU]XW_^`eX^aheh\badcbf_d`ejhcegaeigbdehlmootlquvzxxprsstuwywyxvzx|{}uuxssmkryojtvppvlpsttxztx{xqrstnmprrry|vv{{s|zxz§­±µ¥¬¼ÊÉÈÎÎËËÉÊÊÉÊÉÈÈÏÒÐÉÇÏÑÍÇÅÈÉÁÃÈÌËÄÈÎÆÑÓÑÊÍÍÔÑÏÌÈÏÇÉËÌÍÎÍÌÐÔÓÓÕ×ÙÙÜßÕ·y`VPOKJPMLUXT]XRSV]`ipu{~sbXK;.&.@5,*;P\`jjslK95,&#$$*/+,1/2:675?>521931,,,*&%1159<;3-+*175350567?G;=6?FOUbsy¡¤¤cc[TTWVSVXY_]Z^[]\VVRRZ\Zejz~¢¡©¤¦©¨¦¨§§¢¥¢¨£{nj`YPNJNOKR]\W^baaecc`gZhdcdbc]gg`caddhfiifjhgkliqoqpsr}yssxstxuvwwyw{xzvu~{rrzsovonyjinqorokoxrtztoxohnqpl}zpzztsx||yzy~}v|~¥«©²¨~¦¿½»ÊÎÊÉÊÇÈÊÊÌÌÊÍÌÌÈÏÎÇÂÅÊÇÆÁºÄÅÃÄÎÓÌÊÒÅÌÓÌÇÇÄÇÅÄÄÄÉÏÍÌÎÏÓÏÓÒÓ×ÖÓÔÕÙÝÞÞØÍ¸}jTLFJIKLLSSZYV[`_im|}scUL:0,)#)9B>;T[]dnttY3(+,$$('&'(,-73;;7;<4-4351.,,1.)*2:=;791,,,-6557;9:;??A?9=FQcl¢¤¢¥``WPTVXUWX[`\_[[Y^ZXUYUYggkw ¡¢¤£¤©¥§¦¨¦¤¢¡£~{oiaYRMKJMMMXW_^__aadh_jafdfaadc`ccbhgibmhhfiipiglnltsr{u|twsusqzu|y}yw{vyzwopqpqsxvonnnpkpqpoosvor{skp}pwq{xk~}ql|zwzzx~|¦ª®¤zx¯·ÄÆÀÅËÎÉÉÆÁÅÊÍÏÐÐÎÉÃÃËÊÉÅÃ¾ÁÄÀÀÅÌÆÍÔÏÉÍÄÄÊÅÄÃÅÆÆÉÈÉÈÍÑÏÒÑÒÔÒÓÐÕÔÒÕØ×ÚÛÞââÝÌ´aFDCHIKIWWRWUV]bdnv}£|rdYR73)-(,<;30<O]`gyy|f=')$((%('&/12.<D776555837190,-.+0,07>983//))388248338869<<EEWgx¢¨£¥¢ZZTRSZSY[WW^]`[YX_ZZUUSV\kjxz¡ ¢§¦¦¥£¦£§¡££¡~yqja_SJHJIMLS_U\`_d]b_bad`cga`da^ccc`dd`gblgjhdjklpmlqputrqqzpsoystuw~zyy}}xvnjrkmlrwuuqpmpmrputrtwzuvrqyx}x|y|vuvyxryx|y{z©© {¢»¿¿¼ÈÄ¾ÁÊËÉÉÃÁËÏÐÐÐÏÉÅÀÃÉÎËÈ¾½ÇÌÂ¾ÎÇÍÑÐÈÆÀÆÈÄÄÉÏÑËÊÍÈÌÏÑÓÓÒÏÓÔÒÓÑÓÔÔÖÕ×ÜÛÝâáßÚÂ_MQMDFKSLSNRVb`hmu{~{qdWS;2-,,.)",/2?UYakvzjJ7,--$)$&(&,0,92:;>799977740/))$.,02;=;5/*/+0/04:36.669@;C>CRco££¦¢£¦¦¦WWMXQ]^]WWZ\WXZVZb]VVXSY]cjvz  ¡£¥§§©¢¦¥¦¤ª§¥¡£xsk_XQJLKONQWT[^]^cb_ejcdibfaffeacgcbfejfffefkipmmnlmnqtvrrrpw{xyutwsuzxzxmhlrklnmusuknkkkomrrp{tts|nm|xwx|zuqzqzz~{~q}£ª¢ª¿ÄÅÀ½¿ÅÁÀ¿ÃËÏÊÄÃÌÏÍÎÍÊÊÆ»ÆÇÈÉÄ¿ÌÑÆ¹ÇÅÄÅÈÇÆÉËÊÊÉÊÍÑÍÊÐÌÌÏÍÏÔÓÑÎÒÑÓÐÑÔÔÖÖØÚÛÙÝäáâÛÂnkR=DHMPQQUW\afkq|}ªymfYS=0')&&,*(11=FO]drv}tX2)$*'%'&(/++*0<613;6D97722386+*%/18A:950,+19/,;65<166;:>ABGOYm}¡£¤¦¥¢¢¦ZZUUUYYY\ZYYYZ[\_XXVSWVZ`cqu£¤¦ ¥¤¤¨¤£¦¦ ££ |yqkb]SOKLHLUXXUZa\`]Zefdabc_`eeeacdh_fgkodfdgigjlnmmoqpswqutrvuvtuuy}ttu|xtpjhinhnnsyxpnvroonolmortzprputpzznu{spy~~|y}¯¼ÆÇÆÄ½¼¾ÇÃ¾ÁÊÏÊÄÁÅÊÊÇÈÇÅÅÆÃÂÉÍËÄÅÑÆ¸ÀÅÄÁÁÊÏÏÎËÎÌÌÍÍÐÎÏÐÍÏÏËÑÒÏÐÎÒÓÓÓÒÓÖ×ØÖÚÙÚßàááÜÅwTBEGHGOQMSU^gmsz|xqjYN@5=22*)#**44=NWags|~`>,%"%&(*%',+-,./6;:8767757725,,*,-067552,.130-.9534?;0:299>O]jz¤¥£¥£¤¤£¢YYZQS[Y[`\X`Y^]Z]^[WUXXZ]eos}¡¥¥¦¦¥¥¨¨¬§¨§£¢ ~~rnc_WMIGMNSUU\[^_^afc_bc^]b`aefaaddeghf`chhdenlmlqooqvuvuvxuvuwuyvzyvyxzzsjnsofioonrtqosnqqmuqipspmqsuswrquy~wq{xz~¦³¿ÇÅÆÆÄÄÃ·ÂÊÅÀ½ÂÈÅÃÂÁÆÆÅÆÂÄÅÆÆÈÎËÃºÅÅÁÅÌÎÊÂÅÎÐÒÐÍÏÎÌÍÐÎÍÑÑÏÐÐÍÒÐÑÑÐÓÓÖÍÏÔÕÕÔØÔÔÙÜÜáåÛÄ`A@CCFHOMUX]ajs¡}xlf[P@4-*1)'#(*./8FWYiguqG-3(#(%*+&*(6/5.5A76835067:5//2.1-5:9@F;5-,.8<045342741577>LZqy¢¤¦¤§¤¤£¡ZZVXV_\^Z\\Y][b[VX\XUYZ[afmr£¦¤©¥¥¥¥©¤£¨£¤¢~{mkbcWMHFLQQVQY\Z`Z]cd]cecifegefhbecdgcg_cgdgihjnqmnpruruuusxwtyysrstwxxxvkirojgchmnuuvqmqxpoortvripqovuqky|pvu~yy||{t{»Â¿ÀÂÄÆÃÇÇÀ¹ÌÊÃ¼»¹ÃÄÂ¿¿¿¾ÄÄÅÅËÈÉÆÈÀ½ÃÈÉÈÏÓÑËÁÄËÓÓÎÏÑÍÌÍÎÒÍÐÓÎÏËÍÏÏÐÎÓÑÐÊÉÓÓÕÔÓÑÐÔ×ÔÝããÙÂ|K<B;DFKLUX\fku{ xoe]NB4,51**%(.1*5>LY[^ntV4*')$.****2+1+05:773073649620++*50386350'--18744137255084>OSh}¢£¤¦¥¤¤¥¥¡TT\W^^[]][Z^`Za^YZ^]YVVaaemx £¥¦¦¨¥¨¦¢¥¤¤¡zrl^cTLIMNQRXWW]^a[`^__\^`iegebff_fdacgfb`kefggikplgkpqturvtuvyzxtuuuqs{zsqnh^gcdfjgkt{svvpsnnqxruyvxotnrqyxqnyx~{w}|}©³¶ÄÂ¿ÄÇÄÉÆÉÄ¼»ÄÃÀ½½¼ÃÄÂ¾¼»ÂÈÅÆÃÃÀ¼ÂÉËÊÍÏÈÇÏÐÑËÅÃÍÖÏÎÏÓÍÎÎÏÑËÓÐÍÈÈÍÍÎÏÑÏÎËÍÕÔÖÕÔÐÒÕÓÓ×àßÞÖµr>46?EGKSXYdlr|~vqdZNE3/,'*+%%%,(.49KX]hzxb@-,+'(,.0)(,,5-2194<74.235G33/0,2033;13,+)).0132>@63/2233:ETfz¡¥¥¥¢¥£§¡£UUUTP^[^^Z^\Y\\Y][VYVV]^`dt|£¢¦§¦¦¡¦¢¦¢¡¡£ymh[^YLLNGKRQ[\]aZ`_c`e]c_hcljhdc_bbdbbdkdagfgpiknmksonsttwtzxvzwtoorsq¼|ree]mieaklckonssuswlitnjspqtxskmvqwu|wvx~~|y®°³²´¶Ã¿ÁÉÊÆÆÅÈÀ¶¹ÄÆÁ½ºº¾ÄÂÃ¿½ÆÄÀ»»ÁÆÇÎÐÍÌÍÍÂÇÑÑÐÌÆÅÎÒÎÌÓÑÎÍËÐËÏÏÊÊÊÒÎÓÐÕÑÑÐÏÐÓÙÖÕÖÕØÔÓÚÛÖÜáÕ§Z;8;BELPV^^mqy~|vk_ZB;,-.(,+*%*&,17AKZdr{zsS/*++,'*2+-3.041:44426844:76131-,-3<;<.1+,+(142301E52/23.:=Lfv ¨§©¡¥¦££ ¤TTTRWZY^]]]`[`^^]]Y]V[Y`eips¤¤¤£¢¢¢¨¢«¤ ¤£wqj_WWPKNJOSUSW[a]`_^[^fe_adeehabc^bc_]decfgejigkmopotonrpvxvtqw{mttqq|²Ä|mddidhlgcjilopoqrqsnnokprjrpmjssrjy}{vxvy{}{}r|z{{wª¶¼»±®°°ÁÅÀÄÍÇÁÀÁÃ¿¸¾ÆÆ¾µ¶»ÁÈÆ¿³¼º»»¾ÃÌÉÉËÏÍÌÍÊÂÇÎÓÏÍÈÆÍÑÊÊÐËÈËÏÏÐÕÎÎÌÕÔÑÐÑÐÐÏÌËÏØÙ××××Ú×ÞÜÒÜÝÚÅE<A@DGOQW`kpz~rj]UC8/*,(02',')',0?IU]_rw}uW6'-+,((+,')7).45592658?@3>672-,,-+3?:628*-/2-=340/151,469;D[ny¢¡¡¤¦££¦¦£¥¢¢XX[TXa[cZ]U[Y[__\]XZZ[XYbhqv¡¢¤¡¤  ¢¡§¡¡¡¢ wpiaYSLLMKJTWV_\[[_^^a`^b\aifhbfffd`b`cgeeegehkimljotlrpusqwqqrrqnpjos¼¸xgdfggkljepjnsrjrsmsmqtrqrusnnqpmp{z{w|oy}uuz~yuv~|¢¼Ã½º­µ³¹¼ÇÇ¼ÉÉÂ¼½ÃÅÁº¶ÄÅÁ»ÀÂÁÀ±¬¶»ÂÄÄÆËÍÎÊÍÏÈÍÎÉÄÈÎÎÒÎÅÅÑÌÉÐÎÊÎÏÑÑÓÎÎÌÎÍÎÍÏÍÎÑÍÊÌÔÔÓÕÕÖÙ×ÞÛÕÚÙØ×°V><@BBLPZ\bmu~}tk^QA:1.,0-.0&0)(-+/AHTZmvu}gC6()/,+-.)1*(1.561:932<8261626-3-40347210)0/553:62/.4,+.:<IUi|¡¡¢¢££££¤£¦£¤]]ZW]\\X_Y\\XZSWX_[YXXZVcesx  ¡¤¦¥¢£¤£££¢¥¢ £ zpoc`XLOLNRPVW[Z_[Y^``gad_`fefbffcebccd`gdjdhehijmmnvrsvwsqtmotswpqnrrÆªudbbbghlpehostpmqoplqsmqxukouuqrqvyy|luus}zv{x}w ­­µÅ¿¸´³¾¾¸¼ÈÂ½ÃÆ»ºÁÁÅ¾¸³ÀÈÁ¾º¯¸´¹»ÃÆÇÈÆÅÈÍÉÌÍÎÌÍÎÇÆÎÓÔÑÅ»ÑÎÍÑÑÍËÍÐÑÐËÎÍÍÎÍÍËÌÍÎÊÈÊÎÏÑÖ×ØÖÖßÝÚßÞÞàÂpTYVFAENUahmt{zrk]TC<5**-,*-*%&$%)/6BNXbou{}~sK1(.&**))(++;3.11;2784:7;061>1.(/24<88;31/15363><:505)(,-5NWhv¢¡ ¢¥ ¤£¦£¥XXXYXZ_dY\`^ZZ]ZY[YXVXUT_foxz¥£¨¥¢¥¥££¡¥££§¢xpia^WNDEPUSQVYWY][^cc`gfacbadadjdead`gdgafejjgjilnptrunvtsstswsooosmºÇ¨ocYfjkjsmdlsnqhlvphrosntpmmrrvr|{yrz}yy{z{}z|z}{txsxt}pw£­¶±¬¿Ç¿º¼¼Ã¸³ÆÁ¸µÀÁ»ÀÀÁÇÂ¹µÃÁ´µ¶ÁÀÁÂÄÉÆÈËÃÆÍÏÊÉÌÎÎÐÓÉÃÓÑÎÇÀËÓÏËÏÏÍÍÎÐÌÌÎÐÏÏÍËÆÇÊÊÅÊËÐÏÒÕÖÚÕÖÚÞÝßâßÞÐ¥{aP8EJJSW]nv|¡{qi\VA91.---+..)+&(+.-4GMXahrx{x_7,))*-++1*0-4014970/-06522591//,.6257:415,,4/75;7170.((.88Kfy¡¡¤¤¥ ¢¢¢¥£¡[[X^[Z\\_XYXY[__YZVURYWS^fpv¢¢£££¥¥£©¡¢¢¢¢¦¢~tkdUWLNKMOXVRVW[`^Z^`b_eabffedbfcefcbedh_fdlmiqppnpsrqqtptvtwvsqkiooÆÇ©hbhebqtafhkkkjkpuklwmtstopxvvyxs{uw{vxy}{s|~|{pfqpny­¦¬¯¹´¶ÃÈÅ¾»À½²º¼½¶ºÅÂÂ¾ÀÄÅ¾°¬¹¾À¿ÅÆÇÄÄÀÆÉÊÈÃÆÊÌÊËÍËÌÏÎ¿ÊÑÑÎÆÈÍÎÍÉËÍËÉÍÌÌÊÌËÉÌÍÊÈÊÎÏÌÎÒÕÔÔÕÙÙÖ×ÜßßâãàßÌ¤mI7>HKQUblxy|oi[TF96/.+/20(-'%')(*36CN[ajpw}~gB1++()+0')-1024.3>;7034877:6/42+365:778.*2/-577<;000,%!(.2E\r ¥£¡¢  ¡¢¢¡ ^^\ZZY\]_YX\]ZZ^]]WXW[]UZelp| ¡¥£¥¦¤¤£¥ ¥ ¢©¥¢zsib[QMGJOQOWYQUVa^]`bdb``bbgddegiejefefdifllmmqmnkkqoopqlrruolmkhjow«Ï¾£tbja`egggmmknknpmlrhhotqsupw}zzvtzwv|wx|{zvxnloro¯·®£­¼Á¶ÀÊÈÀº¼À´³µ·Á»»ÃÆÂ¼·³²«³¾ÇÇÂÀÅËÄÂ»ÀÄÈÈÅÃÂÍÏËÍËËÌÎÅÂÉÑÑÊÉÆÊÎÌËÌÎÊÆÊÆÈÃÆÃËÐÑÑÎÎÑÍËÊÒÔÒÔÕ×ÖÔ×ÞßßáäáÝÌ¡a87EGOXbo{{ok^SK@15/,0)*2,+)(%(&(-<BOZ^gl{¬²¸ÁÃÈÇ¼¡¤¬¢pJ/*)/0+)41++-028:9;@5101<4498561731/:2381,.4773;9841/)*##1;\h} ¡¤ ¢££  £¤  ¡XXd]V]\W]]^b^[_\\]V]QSXV]bjv~¡¦¥¨¥¤¦¤¥¥¢¤£¨££¡~wrm^[OQIGPUQVWWXXe__`]`][`ccbbdljgbdf`bbhhhmnifjlprnlltutswoqmrookoqÌÎ¶qcefjiejjhkngokhpsqjntnqxopzuuvzzxorx|z|~}|yt{kjugz§¯»´¶±±¸ÃÀ¶ÃÉÅµ²¸·¸¶±¿Â¾·ÁÂµ­¥®»ÁÅÈÌÄÀÀÊÈÈÂ¿À¿ÉÇÅÆÈÍÌÍÎÌÎÏÊÅÆÊÒÌÏËÈÏÑÏËÌÊ¿½ÁÇÉÊÊÍÏÖÓÓÐÍÏÌÎÎÒÓÒÖÕÔÕÔ×ÞÞßáäãÝÆ>6=BKW`mv}qlbRC=72-+()./+,&1)%'$',5BOTd¦ÃÂÉÒÚÚÛØÐÃª¬³ÇÄ«q\5,+'&*/-)9352/76/7:5720-8379<73.900;745+--675<3072140.'(,;Pe{¡£¡¢ ¡  ¡``YaY\X^]WZXZ][[YVX\TOPW[bjs£¢¢£¥¢¤§ ¦£¥£¥ ¤¤~ztneYQONILOTUWV^`]]bZ[a]^a`edaeglfadhcglfgmoljmfokmrlqousttqplmjofky³ÕÈ­w`cfpijhbfiiisnlinrpqrqpmlxvnu~uuu|}||{y}}ngfkz«¸µ³µ¹¿»¶ºÁ»·¿½½±»¼½º·¸ÂÃ¸¯±¬­·º¿ÀÇÈÈÊÅÃÃÄÉÈÂÁ½¼ÇÊÊÇÉÍÐÎÏÌÈÉÈÌÊËÌÌÌÊÈÌÎÈÄÆ¿¿ÆÍÌÌÍÎÎÑÒÔÓÎËÎÐÌÐÓÓÒÒÕÖÓÔÝßßàãàáÜ²X5=BJR_hp~~vg\R>>2+..,1-(0*),&(("'-.=Nh¿ÉÉÓØÝÚÕÕÔÏÈ¾¹ÆËÓÍÀ©Y?/-,.*),1.0-(106718379567;AA:960;853/-6.,0/0288;810,..,+,7M`q£¡ ¡ ¡¢¡¡  ZZac[W[[\XY[UWYTVTVVRUSW\flw ¤¤¤¦£¢¤¤¡¦£¨¢¤}|mg]XSEOJQQRY\]Y`_^^\Z`bf_hlacciaea^bejhixpoiljkigojpnootrnopqkkiiÅÓÂ¥rebbnmjdhijlnmslgptpsumhlkldp}ztsu|v{yv}}sn~ytmkr¤¬º²¸½¼Â¶°ºÂ´³´¾½¼¼½¾¿·±´¨¢©¶µ¹Å¿¿ÂÄÃÆÈÄÃÁÃËÈÇÄ¾ÂËÉÉÅÌÎÍËÈÊÆÈÊÍÈÇÍÏËÈÄÅÃÇËÊÈÇÌËÊÌÎÏÌËÒÔÓÐËÊÊÑÔÔÎÑÓÖ×ÖÙááàââßßÄh33BI[]km}vb^UH852'(,/--+.-%"&###&2Iq®ÆÍÒÚàÚØÓÎÍÃÂÅÍÒÚ×ÚÚ×Ï°pF.)+++2)(6A5)22<::547534969>BA7411;84:2.0,,2516;6600+++.6<LZs ¢£ ¢ ¡ ¡[[_VX]WX[YVWTV[\TVSTUTSUYbit¤¡¤¨¥¢¥¥¡ ¡¢¡£ {ypfZROIIPRPNRU[[]\\Z_``_bb`a__]b`b`^``dhfcgggjpjlonjopwjppoollmkdlÓÏ¿¡|i^aghdjhgdjckirvqquspkmooheoyypn|y{}}mck|wrpqkw¤¯© µÂÀÂ¾Á¼®¯¸´¯¯¾Å¼Á¿ÆÄ´¤¥¬«¼Â»¼ÂÁÀÀÄÅÅÇÉÃÀÅÊÊÃÁÁÊÇÊÃÃËÌÊËÌÊÆÅÍÌÇÆÇÅÁÅÆÇÊÓÒÎËÅÅÌÍÎÏÏÌÑÔÑÔÎÆÇÌÒÓÑÑÑÓÖÖ×ÜßáááàÞÓB:?LRYjw|~{si^RH360.0*-1*++&(#%""'1@|·ÐÐÖßàÕÕÐÄ¹½ÂÍÑÔ×ØÔ×ÛÝÜÉ?))'++.*)*+-).+39:216663420537700653751+5,5165<7/-*'$&268MYl~¢£¤¡¤£  ¡   WWX\Z]XW^T^VVXV[U^YVSXWTYdipx¢££¥¥¦¢¥¡§¤¡¢£¢¤¢zsla`THEFLNPOUWZUZW]Y_aXc]]]bb__^b^aefg`^dfbcfhmjkpmnqwpnqmroniflby¾ÙÊ·uk\dgkeiakjhmhkqurxunqiyvljpwumyzxur~}z}mpw{}xpppn~®«±®¥ª°ÆÇÀÀ¼»²­¨®°¬µ¼¼ÄÀÁ¾©¥ª´»··ÅÀ¸¹ÁÀÀÀÃÅÆÉÉÄ¾ÅÊÄÃÆÅÆÈÂÂÁÅËÌÌËÉÃÇËÆ¿¼ÄËÌÏÉÈÐÔÑÎÈÄÇÊÌÎÏÐÎÎÑÓÑÌÈÏÏÔÒÐÍÓÕÔ××ÚßâÝßßÚ­S4=FP[gpz}olgRF9.1--.0,-'(*(&2&&,E»ÓÕÛÜÚÕÎÄ»·ÀÌÐÏÐÔ×ÙÖØÙÚÙÒ·O"#$'.+0,/04)194>A=3988>/18054.<48678;44/.31;6E=5.*'$),,>Xiy¡¢§¡ ¡¡ ¢  UUXXXU\\ZYYYX\[^\a]TSOUQWajty¡¡¥¥¥¤¤ ¦£¦¤££¡¢¡wrfa\PEBCJONQSVYZTWWZ`^]_^^`\_a`_`]^cae^ehmgegejgijnikmlolpoihebdc×ØÉ¥{lf`emiecgmmnnqlpw|qgomuqvsnht{ztniz|~}~v{|xnnyypqnrqu«­²°±¬¯ÁÈÁº¹°¹¬ª©«¯²¹ÁÆ»­¯¯¹¹ºÅÃµµÀ¾¼½ÅÆÂÄÄÃÆÈÄ¹»ÈËÅÄ¿ÂÄÈÆÅÂÆÍÌÈÅÃ¿¿ÀÂÃÌÏÍÐÍÈÊÏÐÐÎÈÃÇËÌÎÎÍÎÎÑÑÐÐÎÑÒÑÓÑÒÐÒÕÕÖÞäÞßàØÃx?<GKY`nv~xnk`UI;1*.).(*'%$#' %'.NÀÎØÚÜÕÏÉ·¶¾ÆÎÐÑÕÛßßââááÙÒÔÇo%&*/,,(/.-.0136663703AAM72+241553557242//46C8<@95)0)+,3F^u¡¢¦©¤¡   ``ZXZV]\ZWTVUWZY[ZWUTQZPSdho~¢£¥¡¥£¤¦£¡£¤¤¡  wpk`SNECKJPSVQUV\VW]`[_Zaa]a_ac_a^`_dae`eaheejfhhikhljoonklllfcdil£ÝÒ½ymj_diccjiigrmkjqsupmtoprxtoo~vmzy|~|y}s~qjpw{m``hl|¦§¡¢¬¶·¸·­»È¸®¬²²´°­¨®¶¾¶´¨«¯»ÀÀ»»À»µµ½¿¿ÀÇÄÃ¾ÃÀÃÄ¿»ÃÌÆÂ¿ÀÂÆÆÇÄÆÆËÈ¾»»ÁÃÇÈËÐÎÍÍÏÇÉÎÐÏÏÊÇÈÊÌÎÏÑÍÎÒÑÑÏÐÒËÐÓÑÑÒÔÕÓÚàâááÜÎN8BKS\nz{wnebN?82-*)+,&*$#&&"-5k£ÄÏÙàÙÐË¾³ºÊÎÍÖØÜàáãäåèçæâÜÜ×0*((,+1,-,/25;=365051<6=879:2332/64:50/2.8638375/-&()-DVn¥¦£¨¡   ¡ ^^WY[XXVYUXYY[YXXYXVTUUWW`hs|¡£¤¥¡££¤£¡£¤££§¦¥yth^SPEJENIQLYQTZT^Z^]__f`ab_^a^a_]Ya^edddhlhilkkjihjiktjnnslhgflyÃÚÌ¶§}ngd\_jfjjiqphntjjmwursvsutysvsyzs{yz~wty}y{vldkhp«©¤¦®»»½¶¦¶¿¶°©«±±²´´²°° «¸¹ºÂÁ¼·¶¾»³±¹ÁÂÁÆÂ¿ÀÂÄÅÇÀ»ÁÆÇ¾ÀÃÁÅÇÅÅÂ¼¾ºÂÄÉÈÈÉÈËËÏÎÏÉÉÊÏÏÍÎÉÉÈÌÌÎÐÏÌÌÏÏÒÐÎÊÊÏÒÑÎÓÒÖØÙßáâß×¾sBBMUaiqwmb[NC:1-++(('!!(%(*@x°ÇÑÙßÙÐÂ«¯ÀÏÓÐ×Ýàááâßääåççæåâß¾O!),)-',5-*/:7;=80315=639022-2472720-,93<.67666;+1'+*=Kiz§¢¢£¡ ¡¡¡WWX^YUZZZ^\]W\Y^\\^\WYOT[dos|£¤¦¥¢¥¤¥££¢¢¤£xyrk\NNKFEHHMKNRXY\[[_]cc`bcb`cbed]`affbed`lgfeemkjljnomoorljnifdkØ×Ã³ªrha_gijkeilqoohfrsuppypms}{oqv~zus|{~ywnjwzx~vkkjip¢«®¦­ª°²¿½°©¥©±º´¯¬§­¯·¿¶¡¨ª¾½¼½½½³³µÀ¾ºµ»ÁÄÄÄ¾ÁÄÃÃÅÅ¿¼ÀÅÅ½½ÂÂÀÁÀº´¾ÄÅËÌËÉËÈÉÌÊÏÎÉÈÈÇËÎÎÌËÅÅÊÍÌÏÎÍÏÐÎÏÍËÊÊËÍËÍÑÒÙÖÝãáßÛÍ \>AWZmt{xoc\RB3,-&)&'2$!#'0L¸ÌÔÜÜÕÍ¸¡§ÃÐÓ×ÙÝÝÞâßÞàÞàáääêêèãÓ~*(.)+2.*+0/.389376:6483610--.41071/+2407:231=61,*)=CJft ¡¢£££   ¡ VVTXV]ZY\]_\^^]a^_ZXX[TXZbmtz¡¡£¨£¨¨¥¥¢§££¥¡¤ ~sj]XNCBHIKNRRSVV]Z\Zc`a``b``bcbe`bdba``g`dfmfkfjiijnmsqrmmlpjbck ÖÐÃ­« rffhakccjmqorjclvvtrlrutwrtwxy|qp{}~ywv~sdr|x|{qjokev¥¦®°®µµ¹ºº¬¡¡££¬³°²²·µ¹¬  ©±°±µ·»±·¾¹»¼º¾Â»º½Æ½Â¼¾ÈÃ¿ÂÄÅÃ¸¼ÇÃ¼¼Á»¶¸»ÁÅÇÉÌÏÊÉÉÊÊÉÊÐÏÊÉÈÄÃÇÏÍÌÇÀÇËÌÍÍÎÊÍÍÊÌÌÊÇÉÊÎÎÏÐÔØÛààßÜÙ¾LGJTjr}vkg]TC02,+$)!$%&'2`¼ÍÔÚÙÓÆ«¯ÉÐÒÙÝÙÜÜÝàßÞÛÝÝßáâäêêåÛ3(**'),.*110025;556912/.+/2/8.52.1/,..94:>59-4,/.31EWq ¡¡ ¡¥¡     YYUX[WTZZYYYY_^Z_`^UYYYW]civ}¡¥¢¤¨¤©§§§§¤¢¦£¡|teYULIBDHFJPNPYZ]_^[]]ebbhcbbibab_bcdhc_fdfickhghhiiqsqnoohiheh{«ÕÒÀ±§wici`cd`i`hokeginw~snlmxvnkx|wkpm~~|tn{qj]u{zqonliw ¢¦«º¸´´¶²­©¡¢¦£¥²¸Á¿´¦¢¬­²·º´«²¹³´¹½½¿¼¸¾¿¿ºÄÄÂ¹µ¿ÈÄÂÂÅÅ¿¾½ÄÀ¹¶µ¶ÁÅÊËÆÈÉÍÌÈÈÊÌÊËÎÊÈÈÉÇÄÂÆÈÊÅÃÅÇÏÌÏÎËÉÍÊÌÏÍËÊËÒÒÐÍÎÕØÝâáÝÝÓ²iKKUho{ {ohYG7+'&' #"%#-Ck²ÆÐÖ×ÖÍ»¡·ÎÓÒÙÙÛÛØÙÚÙÚÙØÜÞÜÞßâééæÞµA&**,,*),4..05138<F.,0181+,259<://,8-/24233516,042DWh  £¡¢¡ ¡¡  ZZ^W\[Xd`Y^_]Zf`_b[WZ\YR[amux¡¡¢¥¥§¨§¥¤¦¦¢¢ ¤¡vme[WQEFJDLJIKPUX]c_Z[a_bba_cegaeddcbdcceadijikiekkjoqrmrqlwihdhÊØÑÁ·tiegcb`hkgjqiinkox~wmmmtoss~tjmw|vot}~scnv~{~zqjpreh¥«£¨´¸¼«±®¬ª¤¥¥ §¦¯¼Â¬¤¦¯ºº¶¯¶´¬§«·ºµºÀÂÂ»´¿ÃÁº¿ÁÀ¹¶ÄÊÂÂÅÃÃÀ·²º¶¹¼¼ÈÇÇËÉÇÈÈÉÄÆËÌÌÌÉÆÄÇÊÉÇÅÂÁÊÈÄÅÃÍÊÌÐÍÊÉËÍÏÐÏÏÑÑÓÒÌÍÑ××ÞßÞÝÛÈYIVap{£¡|yoYWD2**%#'#)/HµËÔÙÖÐÈ³ºÌÒÕÛÜÜÙÙØØ×ØØÖÓÙÛÛÜÜÝæééßÅ_+*,%',+-24;3:@2477-1930-32;64/)',114218359821.-9=Fgy  £¡  ¡  ZZ^U]`_]\YZ_[\_`_^[[YZVZXdpow~¢¥¥¥©¦¨¤¤£¦¢¦¥£ }wmh`UORHHKJKENWTR\a[]`bacfb__bdhb_edaegccceefiefknghmoprrquwhdfjÛÕÍÃ¢uf_c`befhhffjmljtvzqpiip~yrrhr|}~wrz|znnzzw|ytjmnjYe§¤¯­¤¯´º·¯¦«©¦«£¤¢§½²¥ª£±°»Ã»²´¶²©¥±Á¾»¾ÃÆ½³·ÄÂ¸¶ºÅ¿¸¶ÄÇÃÂÁÆÀ°©¹ÀÅÄ½ÂÊÇÆÊÈÅÂÃÇÅÈËÍÊÈÈÄÈÊÉÉÈÃÂÇÈÇÇÃÊÎÍÏÒÌÇÏÐÏÐÑÑÎÒÐÐÏÑÏÖ×ÛßÞÛÞÑºzLR[oz uh_OE0+#"$"#%1S»ÉÔÚØÎÀ«·ÉÑÚÝÛÙ××ÕÔÓÒ×Ù×ÙÕÔÒ×ÚÝâèéßËs++)+(0+.6/.113/:3;438/3.3-3*,+)$*7-/1889998737.7EWo  ¡¢¢ ¤ ¡ ¡aa[XV^WZ^Y_]_]cd_]Z]ZTO[[binz¡¥§¦¨¥¨¦ª§¨¥§¨¥¡¡xpf\QJPMJOPMLLWV\[a_`ehdalccccdch^cdceed`chgggjkjkjnlpsqtxsrikgm­ÝÓÉ¼¬tb`]]igjldihkiovpisyl^fu}uijxywtzyphtz~wy~riotqee¨¨®¦´±®±¸´¥«¡¦¡§¤¨¦®··¦¦¨®µº¶º¾µ¯¯¬¬«°¹ÇÄ»½ÃÀ»±´¹º½¸¼Â¿º·ÀÉ¿»·¬´ºÂÇÉÊÄÀÅÈÄÆÆÇÄ½ÂÄÄÇÍÊÉÆÄÇÈÉÉÈÈÆÇÆÎÌÈÊÌÏÐÑÎËÐÑÑÏÒÓÎÍÐÏÌÍÎÒÔÑØÜÙßÚÎªiNZpx}pjbX>/-##!#*7_£ÄÏÖÙÑË»¯¿ÆÕÚÙÛÚØÖÕÔÒÑÒÕÖ×ÓÏÉÊÕÔÞáçêàÎ,(),*-+./11367.70222.+.34/11.&+..8608;96:2060-.?Mj~¡ ¡¡ ZZ\[`[[`cX]]]a``c\b__VUY]hlly~¢¢ªª«¥¥§©¨¦£¥£§¤£{sl\SNIKMJHOPMWS[Z_\a]df`cab`hhfibfccbdgieeeedfnkprprsmtsqqynjiq°ÙÒ¿¸±q_]\b`lidghifpsvotqeYcppjlz~~~xs|u|uqrv|xury~vpovnij¨ª«¯¯º±®¨¨£§¢¡¤¤°¸¹« ¢¯¯º¯®²µ²¸¸¶¬¯­¶¸³¾ÆÁ¹ÂÅÂ½²µ¼µº¹¼ÄÃº°·»¯ª³ÂÅÉÈÉËÉÃÂÃÇÆÁÅÆ¾¼¹¾ÄÉÌËÈÉÆÆÇÊÉÉËÆÆËÊÌÊÌÐÓÐÎÏÎÐÏÏÎËËÈËÌÊÌÐÏÎÐÔÖÕÙßÖÄRWhx~ uli`b:*%!&*Cq¨ÉÒÜÚÑÉ´²ÅÌÔÛÜÚÙ×ÖÕÒÑÒÒÒ×ÓÎÐÊÈÎÔ×ÝßåèãÓ/-,*(+-),//18811<;:0/-/,/01+/&(12424/<67265//38Eap  ¡¡ __Y\Y_Y\]]``_a\^`a`^b_Y[[dkr~¡££ª¦¤§¦¦©¦§§¨¨£uqk`WLFDIFMNSOXX\\\abddabd`cdbdicdchicccfeejgihjnlmpmjoslnnkleg|Å×ÎÀ»¢¡j\Za^ccbeclkpjlqqn`Y_luunsv~{{~x}}~~~slhr}tpv~sptjfjt££±­¯³³µ©¨¢ ¥©§³³±§¢°¶»µ¸°«¯µ±®´·¶µ¼À´²ÇÄ¹´¿ÃÀ¸¶¸µ³¹·¹ÃÁ°£®¶¹»ÅÉÉÇÇÇÈÇÁ¿ÄÈÅÅÈÄ¾»¹½ÇÉÌËÈÈÅÈËËÌËÍÊËËÌÐÍÏÐÍÊÇÉÅÈÇÇÈÈÌÏÎÏËÑÏÏÑÑÒÔ×ÙÖÑ¨k^mv|~qp\TF2,($&/M¶Ë×ÝÙÍÀ«¬ÆÎÕØ×ØØØÖÔÒÒÐÑÐÎÓÐÌËÈÍÐÖØÛÝäèåÕ,'&('*0/03.1201675./,.2114*/*-%/-3+0-17744-.,/>Vo£¡  ¡]]_Ya]b`^]a`c\`]`c]_j^bbaanu{¥¤¨¬§§¨©¨¥§¨¥¢£wng^SOMIMNPDQVXZ]_\_`a_^cbbc_dfkeebcf_hckjflmhhjlpnlpoqupnjci`hÕ×ÉÃ­««md[`ggcaliopockko[Vgrqyvxzuxy~~wpz~znpoy~ztyzrwngiy    ­´­±««ª£¤¢®¶µ«§°¹··º¶µ®¯²¯«²¾À»¹Ä¼¯µÁ½µ°ÁÃ¼¹ÀÂ·³¶¹¹¶­®´ÁÀ¾¾ÄÈÇÅÈÅÇÇÁ¾ÁÇÈÇÇÄÄ¼¹ÂÈÉÊÈÈÅÄÇÈÉÉÎÐÏÐÈÎÍËÉÆ¾ÁÃÇÈÈÉÌÍÌÍÍÎÌÎÍÎÏÐÒÔÖ××ÕÃqjv~{piZP?4+(+>dÁÑÛÙÔÎÀ§£¶ÇÌ×××ÕÖÖÕÖÖÒÏÎÉÃÈÒÌËÌÏÒÓÖÙÜàáæãÖ'*&)(+,,265>4860-3(*+,.3/.++&/+-11/2=6631-**25Md|¡¡ ¡¡¡ \\_^cZ_b]^j_fb``ae^b`b]Yablw|¡§¥¦¦¦¨¥«ª¨¨¦§¦¦¤¡{pmc[UHLNLQQRQUZWZ\^`babcbgfdiedcebdbdgdgkhlkgllllilopqmrwlif`cÙÖÏ¼«©pe^`cjlhjfniljlaS_juprusv|y}}~zq{{wtgt}~~~|{zqllcq£ª¨¢¡¦©±±§¦¡¢ª¢©¸µ§¥±²¶´¶´¹µ°°ª§¬¶°¼Â»µ¼¾´­²½¾²´½Áºµ¾À¸®ª¤ ³¾ÀÁÃÁ½»ÂÈÇÆÆÊÉÇ»ºÀÇÈÇÆÇÃ¿½¿ÉÉÊÊËÆÄÅÇÄËÑÍÍÉÀ¾ÁÅÁ¿ÇÈÌÌÎÎÍËÉÉÌÏÎÍÎÏÍÐÒÏÔØØÙÒÃ¢}xvrlc_WG.-9V¬ÅÕÙØÑÈ¹®£¯ÀÊÐÔ×ÕÖÔÕÓÑÒÔÏÐÉ¾ÃÈÌÊÌÌÐÕÖÚÙÜáâéåÔ)'&))16106981;*/+-).'),530,216-.1;2636,,%'*13BVo¢¡^^_]]]a`c]c`gdba_f_aa_b_`emqw ¥¤¥«©ª¤ª¨ª§¨¡¦¥¡ {qhcTSMNJKMNUVV[X^b^g`h__cdd_kdfcaiffca_dkmjjnfmlkkrmrspnmjnhdmØÒÔ¹¸xok^ehhhabqhide`RVmrsqywnrxxuy~xvyx{}yvq~yvoebjx¦¬¬¢¤¬¤¥£¡ ¨©¨¬¨°¡¡ª¼·²¶³¹¶³²«««±¼½µÂ½´´·»·¶²¸¾±±½¿»°¹¸§¦©´ÃÂ½º¼À¼ÁÄÈÇÅÉÈÆÂ¼½¿ÀÆÄÆÆÆÁ½ÂÉÉÊÍÈÄÄÂ¾ÃÎÍÂ¸³¾ÄÃÅ½ÅÍËÊËÎÍÌËÄÏÍÌËÎÏÎÎÐÌÐÖÕ××ÖÇ©xk_QF8<IrºÐÚÚÓËÄ´«¨¸ÈËÑØØÖÔÕÓÕÐÒÐÐÌÊÆÄÊËÊÈËÐÐÔ×ÚÜÜââäáÓ&$$'*,..07;9B=242-1-0,++,.(*52,7403/27))%!%87Jf  ¡£ ¢___e^b_abc^cebae`eb^a^]]\coq{ £§§¨¨¨¦¨§¤¥¦¤£§£¢zpkdXTUIMPTSQXX[a\`\bbfedggcga`bnehafedgfekjfhhmopnlopqrqokjdep¶ÙÔÈÇ«wuhbcfic]kkhgjeY`ktxyxsuow~}uy~zusqz~zxm{maai«²­§¤¡¢¢¤µº« ¬ª´½·µ°³µ®¶´­±µº¹²µÁÀ²¸¹¶¹°®º¿´±·Áµ©¨«¼»³¾Â½³¶¿ÂÀÁÇÊÅÂÄÇÂÃÃÀ¿ÅÅÄÃÅÇÄÀÁÇÉËÊÇÆÀ¿¶º¶¤¯ÁÈÉÄÆÃÄÌËËÉËËËÊÅÌÎÊÍÌËÏÍËÍÑÓÖÖÔ×ÖÍ¿|wfYPDKa·ÉÒÜ×ÏÁ·°ª©½ËÎÔ×ÜØÕÓÐÓÑÏÑÌÏÊÈÉÉÍËÌËÍÏÓÔ×ÚÜÝáâáßÓ('%))-556387798(111*.+.,,)),,05182531/(#! %,GYv  ¢¤¢¡ ¡¡^^e`bba^baekcaabb`b\``_^^flq~¢¨¦¥¤¥¦ª©ª¥¤§¨¨¤¤znkcVTNJLOMSPY[_a\\aacfaaajfbgafjfpgggceefgmmkljollpqqotrphfebwÎÛÊÆÉ}gmZb`^bcgdigb^hlqu|wrqvzrqtsz}|vifpyy{~yv{~z~yn\[o}¢ ±µ«¨³»¬£¬­²«²¾º¯³­­·º¼¶º©´²³¸¿¿·µµ»¸±®¸¾·®±´£¨°½Ã½½¿½¸µ¶·¿ÃÁÂÄÃÁÆÆÇÆÄÃÁÃÄÁÄÈÇÂ¼ÃËÉÌÊÆ¾¶©§­¿ÆÊÉÇÉÅÅÆÍÌÉÉÉËÈÈÇÊÊËÍËËËÈËÍÎÕÔÔÔ×ÙÖÂ¡xpcYVZw¥ÁÓÜÕÎÊ¿°µ­­¿ËÐÖÖÕÖÖÒÏÎÒÒÐÍÌÌÉÉÇÉÊËËÌÐÔÔÖ×ÙÛßâááßÐ|&/',12+11335;760.5321///.)(+606=258>0( " $)@Tj¡¢£¡¢  ¡cce`cb\dccccdb`da`_^e\X[afjq~¤£¢¨¤§¤©¤¥©ªª¬©§©£xsj_XTOJOQQOVWYaa^\edgfbcfhlhldfhdlgjf`fdielmmrpkmnosvqttnljcdÐØÊÐÂxqke][`cabgda^kpnqrytkr~}smm}vneq}zxx|{}yt}zuf\^d{§¡¢ ­¥¯¶®¢­¬¬­®ª«°º¸®°­¹¼¿º°¨ª°²´³¾¼±®¯¶¸´±¹¾« ¨­´°·ºÀÃ¿¾¶¸´´¹À¿½¼ÃÅÇÄÂÅÀÄÃÇÄÄÅÃÊÇÂÁÉËËÍÈ¹ ³ÄÅÈËÆÊÉÆÈÇËÌÉÅÈÊÊÉÈÇÉÉÊÈÆÉÈÍÊÌÑÔÖÒÔÚÚÔÀ}tp_dqºÌ×ÛÕË¿²À¸±²ÄÊÏÖØÖÒÓÒÏÏÎÍÍÍËÊÊÉÄÇÈÊÊËÏÐÔÖÙØÚÚÝáãßÝÌl'+))012233254E00/32/-,3.7-16877858;30,# $0Kb¢  ¡ ccabdcdbdbdagebd`_a_^b`^bejoy¢¡¤§§¥§¨ª¨§£§¨ª§¥¢zrj`XOMJOORQZTVY_^a_d_dafeegbfhjfjijcfccdcghhrillqltokwospiihfÔÒÐÎ±wwoed\\b^dhh`emmnpqnpnpvrj`jwuqejz~~vu~|uzsqz|mf_p}¥¦¥¢´²¡²¬·­«ª©«ª°¶ºµµ¶¼¾¿±¨¬«¯µ°±¿ºµ­´·µ¶®­£§°·³µ±°¶¾Á¾¸¼»´±½Á¾¿ÀÄÅÃÆÃ¿»ÇÈÉÈÄÃÄÇËÃÇÊÈÅÃ®¨¶ÄÃÂÇÇÊÇÇÉÉÌÌÇÅÉÈÌÊËÉÈÇÇÄÁÆÆÌÊÊÌÐÐÔÓØ×ÙÍº~uowµÇÓÝ×ÏÇ¾¶½¿²»ÅÎÑÖÔÔÕÒÑÐÏÊÉÌÎËÉÈÉÇÈÈÍÍÊÎÏÏÒÕÙÚÛÜÝßàÝÜÊZ,/)&%--0..--4=67A664/12.-51302,63173,&!!+9\u ¡ ¡¡¡¤aa`bbdbj`decdccibdj_]]_b\ejq~¡¥¤§¨¦¥¦¨§£¥«¦«¥¤}sja[VLIROTOUSTW_]_[dbdacabebgdcijjbiddcccehorklmnooqmrqqqldfiªßÓÔÈ¶¡zutstf_aWZc`chqmquskfjqyk_\f{utughv|~}}~|vqmpwyzvjben£¤¢§§ª´²¯«­©¯­®ª©¿¾º¯©¹¿¶®²¬§°´³°·»±¶³´²¨°µ·»¹¶³²°¹ÀÀ¾»º¸µº¼½Ã¾»ÀÃÅÃÁ½ÃÇËÊÅÄÂÆÍÄÅÊÄ°©¦°¸»»¾ÃÃÅÆÉÊÉÉÊÍÉÉÊËÊÊÊÈÈÅÄÄÄÄÁÇÈÌÉËÏÑÑÓÓÔÓËª~¬ÄÐØÛÙÌÄ·¿¼¼µÀÉÎÔÕÖÑÒÓÑÐÐÌÈÉÌÎÌÈÅÈÇÊËËËÎÑÐÐÒÕØÚÚÛÝàáÜßº>(1-*+,22,10263674772.+**--/4;1565432'##&4Rk~ ¤£ eebccccebdbccfcbdi`_cb^^dcnt}¢¤¥§¥¨¦¨«¬©§©§§¤¤¨zvneYRIJMQMPVXVU^^]`geda`hegfechgcbifb`b[gellkgillknoosolnf_]j¶ãÖÏ»±vlwtgc^[ee^hllhlyqccovodbhuzvuqv{zywy{~|sqwyxwtlfks¢¡¤¤©¥©¯®°²ª®¬°³¯±°²»µ²§©µ·³¯©©¬¶·°°¾¼¶®«¥ µÀ¾¾·¸³¯²²¼ÀÁ½»µ¹¹¹ÁÃ¿¼»½ÂÁ½¹¾ÅËÉÈÈÆÇÉÉÉÃµ¦¶½Ã¾¼¿¾ÃÅÃÊËÇÅÊÈÇËÍÈÊÈÉÇÆÈÅÆÄÄ¿ÃÅÇÉÇËÎÏÏÎÏÑÑ¾µÀÍØÛÓÏÆ·ºÁ¿±ºÃÈÐÔÕÓÓÒÑÐÐÏËÈÈÍÏËÊÈÆÇËÌÌÇÌÎÒÓÒÕ××ØØÝÜßàÝÞ®4).*0-343,.2.6428620-//(.-*.521456862'#$*;_s¡£ ¤ ¡  eei_b`_iigbcbefcb`bac`Zcbgouz¢¢¦¤§¨©¬§¨§¥©¨§¢ yuqgYOPIHOQRVXS]][bedhlfgecfeffi`^jkeh_d_fdchjfmnhqoolpnkhgb_i¯Þ×Éºy{vmie\cffjkhlpjh``nne_ensvuttxwwwt{{z|}}xpq||tslllq£©¢®®¨ª­±¬¬­­±²±¸¸«¦¨­³¯ª§­µ»°­¯°µ¸¬±Á½®¡¢«­²¹¿¾··º´³¹¸·¾¾Àº»»¹ºÁ¾½¿º¾ÁÀ¹ÀÅÉÆÊÌÈÉÆÇÆµ¤³¹ÁÃ¾¾ÀÁÃÆÇÄÈÆÈÇÇÄÊËÇÈÈÇÅÊÆÇÆÅÅÃÁÅÄÄÉÄÈËÌÏÎÍÖË§·ÃÍÑÙØÐÇ¹´½Â·®¹ÆÆÐÓÔÔÒÒÑÏÐÌÉÈÊÌËÊÈÆÈÈËËËÊËÎÏÑÕÔ×ÖØØÚÝÜâÝÞÙ*&))/6.9<1/0.40/2046.&*),*+-21/74/3(*-&&-@Qo £¡ £¡ bbhbfcedeaaaacb`h`bbcbacchnw} §¤¦§¥ªª¨«¨ªª§ª¨« |spcZMPLORNVVYX\[]]a_ddfeafeeggcabgdic`gbggjbgfknjjmtlkigfb^_oÁÝÑÀ²}vtoahh_blfioiebdhg_Zduvswtwyvpmw|~{zvomr|~uxqqiisª¤¢¬²­«©«²­µ±²º§ª¨¡­®¬§£¬¾¿»±«­·µ©²³¢¦³¶µ°¯·¼ºµ¼¶²·¶´¯°¸ÂÀ»¸³°µ¿Á¾¼½¾Ã¾ÀÉÉÉËÌÊÅ¼³¨¤«±´»½¼ºÂÇÇÄÇÇÆÅÅÅÆÅÃÄÈÈÄÆÈÇÆÅÉÅÈÅÅÁÀÂÀÉÃÃÄÇÍÏËÔÎ¹¬ÁÈÔÛÕÒË¾·¸ÅÂ«²ÀÈÌÑÕÓÒÑÎÏÎÏÌÊÇÊÊÊÈÇÈËÉÈËËÌÊÎÑÑÒÔØØ×ÙÚÛÝÝÞÛÞÕ.).)+-43/010,-06/6:211.0-0%,136530/3-*-38Jay¤¢¡ cc``ihggecdgbdbbhe_cab`ghmqy~¥¦¤¥ª©ª°©«ª©ª¬­©|vmaXMMOJQQUTU[bZa`\cc]_celeehief_ghcdae_dbeckliikllnlnnjib^a×ÛÍÅ xxxmdmbbjiejgeZdthYYjnsnprzunbemx}}sjjtyvvstsviv¢ ¥¢vz¢¤¤§¦««­°²¸³°¦«¯¦­¤¡¬­°®±ÃÃ¼µ¬«²©¢¯³²¶¸²¬«°¼½º³¶³´µ°§ªµ¼¼¶´¬¬³¼ÁÁÂÁÂÃ¿ÅÉËÉÉÅ¹£¯¼½»¾¿¾¿»½ÁÄÂÃÅÆÁÃÃÄÃÂ½ÈÆÅÄÅÄÅÈÆÄÇÂÃÅ¾ºÂÄÄÂÁÆËÍËÐÐÃ»ÁÌÔ×ÒÍÀ³®ÁÈ»´¼ÆÍÏÓÒÔÑÐÏÍÍÍÉÈÊÉÇÉÇÅÉÌÌËÌËËÌÌÎÑÒÔÔ×ÔÖÙÚÛÞÝÞÜÞÎi')+&)143-7:-/21-27-21(-*.+,,04.5-5011//:I_r ¡  ¡ ¢ ¢ aafc^gaecff^eagbga_]_f\dkmnw£¦§¦¦¬¨ª©­ª«¬««ª¦¢ulb_OJNLMLRUY[bY\]_c^gbbagkcddcgcfebebbcedhciigllkjijjonb``dÙÙÑÃ~ujkjglfengb^fgh_\hrf_gttpgZer{yvwx{yslkv{rrtptr{ª¤~~¥ª¥§¯¯µ¶³·¦¥¤©¥¥® ª¸¹´´À¿»¯§¢²¹¹³°³²±²§¯½À¸´±·³´¯±­«³¾¼³¬«³¼ÁÄÇÆÅÀ»ÄÇÃÀ¶¥¤¯½À½ÄÄ½¿¾¿¶¿½»¾ÄÁ½ÂÂÄÃÂ¿ÃÈÄÂ¾Á¾ÄÄÄÅÅÄÄÀ¹½¾Ã¿¾¿ÂÆÈÍÑÄ­¾ÇÏØÐÉÅº¹·ÁÀ¯²¿ÇÎÔÒÓÐÐÍÏÌËËÉÆÇÇÉÈÊÈÊÌÌÍÌÍÊËÌÍÍÏÑÓÖÓÔ×ÙÚÛÛÝÞÞÝÇS,(/22C555450518008++4)))'(,.15543715566FRj~¡ ¡¡ ¡ ffdfcb`^c`c`fbd^fha_ca`gcpqv £¥¤§¦¨ª¬«®­©ª¬§©§¢¡|tn`\KOLKIMZ\WYcV_afbhbaccaehd`gehhehg`ke_ehbhkmjjlmghlgj_YdgÙÖÍÃ¥zuhfgkmemlbdim`YZoqne_qqid_kv{yvtx|tqpfm{z{{wuupm¡¡x~  ¦¡£¦¤±½´±¥¬­¤¨¨¥¢¦¬¬¤¦«¾¼¯²¼¸°£¨³»·´«©ª¯±¯ª®º¿¶®«²³´³±¥§·¼¶±¯®²ÂÂ¿Â¾¹¬³´°°ª¨°µº½»½¿º·»µ³¶··¿Â¾½ÀÅÄÄÅÅ¼¹ÀÂÀ¾»ºÄÃÀÇÄÁÁ¾µ½ÁÀ¼ººÂÆÇÍÈ±¬¾ÃÊÐ×ÔÊ½³µÇÇ¸±¸ÅÉÔÔÓÒÏÎÎÌÈÊÆÈÊÈÈÇÇÈÇÉÊËÊËÎÍÉÊÍÍÍÐÑÓÒÔÔ×ÛÜàÝÞÞÞÞ¶B'(//2/382741271.0-/++(&)-51336638<57>?EL^v¡¡ ¢£¡¢ cce`hbde`cbaf_abefa^e^\fgmlx¢¦¤§§©¨««­«¬ª¬­¬¬¥¢sh`XOPNOKNTUYXaY`]`ef^d`acfggfbfdg^]afaebchehjnjnknijhii`^Xi¶ÝÓÊ·¯¢{}{jajojhlkinpocfhiifhnuplbpuzyv~~}ykoqsx~}zyxol| y   ££§ ¦«¤²·ª¨¬©ª§§¦¦¨­³µ¤¡¨½·­®²«®²´°°¯ª¯°©­±µ¬°µ»·¯§±¶½³ª¨¨¶»ºµ³º¾¾¶´µ®¡§¬¬²´¹¾¾Á¸»°±«¶µ³¶½º¿¿¾¼¿ÈÅÆÄÅ¿¶¸¿Â¿½¼º¿½ÃÁÀ¿¼µºº¾»¸¶ÀÃÃÉÊ¼ ©»ÅÆÎÕÌÃ¿ÀÁÃÉ¿µ¹ÅÄËÓÔÔÐÎÍÌÍÊÄÇÆÇËÈÉÉÆÉÇÊÊÌÌÎËËÉÍÏÉÍÌÍÒÐÒÕØÝÜÝßÜÞÞÚ04//2323256:2,76,00)*)&)-44+135//68:BBCIWi~ ¡£¢¢¢ ¢  ffece``dacaaccdfejbd`_aggmsu~¤£¤¥¦©¬¬°¬­¬¨­²­­­«¥ ~ul^_LNMOPWTZ\`Y[a`^ge`e`ddf_cefccec__fadfhidhhlglklgikdba]ZvÏÝÓÊ¹­y{maggkgbgnnpllolbbkjrophvwposwyolrpz~~}{vpnz¦§sy¡£«¯©©±®ª§§«© ¨£§µ¶·£ª¼¯£¦®°¹³¯®­°®¯¬®´²±ª«¶·«©±À·µ®¨­¸À»³¼¼¿­¦©«µ²´³¸½¾¾¹¡²°µ³·½½¼º¿ÃÆÃ¾¿ÁÇÈÃÃÀ¾·¸¼¾¾¾Á»½Â¿¿¼¾·²¹¾¼¹»¿¾¿ÂÈÆ¶«ÅÈÊÌÏÊ¼¿»ÅÉÅ¾µ¾ÇÇÍÒÔÓÐÏÊÍÍÈÇÈÊÉÈÉÊÊÈÉÊÉËÌÌÌÍÌËËËÍÈÈÉÊÒÒÒÓ×ÛÛÜÝÞÞàÖ3-/-+0/6/:344347121-.&'1-43-2942989?:EFTds  ¢ ¢¢ccg`ccagi`f``cbafeded`^eehqx}¥¢¦©©©¨ª¯¬­®««³¬«§¨qgc\RQGNPQWZle]X\_babe`bd`ebcfcdcfa`bf`ficchejfgjfinjjfaY]aÓÙÕÈÃ¦¦rkncekc_fihgommfgksh`hqorqnpy{ypjks}x}}zpjh}x¤£¤««±¥­¨£¦©¯®©¥§²·¸¬¥¬«²°­¬­µ´±±´´±´°ª®µ°¨ª´·±«±¹¹µ©­¹Àº·¸½Âµ¤§³ºº¸·µ¼¼¶¶ª£«µÀ¾½¿Ä¿¼¼ÃÈÃÀÀ½ÂÅÂ¿¼¹µ·¸¿¿Á¿¾¹¿¼½º½¸³µ¿¾½º·½¼½ÆÉÃ©«·ÈÕÒÑÈ¿µ®ÄÇÁ»¹ÃÊÌÎÏÒÑÒÏÍÌÍÌÉÉÇÈÌÉÉËÈÇÇÉÊÎÎÍÍÌËÉÊËÉÈÈÆÉÍÒÒÓÔØÙÝÞÞÝáßÑ~+',072657?54+6;963-22,*..21-,-3/.0>@@DIYn¡  ¢¢ ddgfdfccbdgcgegbfdacaf`bemquz¢¡§¤¦§«©ª®§­ªª­«®«ª¦£{soeZRJMQJNSTWbYZY[]`ddgfdcfcbcbcccb\d_ccfadiefgijjgfgeca[X\ÔÖÓÈ·µ¥ywvfejdcinhkkgegnvueenzqlhj{zqomz}y~}sjjt¡¤sx¤ ­¯ ¨ª¨¯­³²¬¨£­´µ®¡¨²¸·¯­§¥¯·±¯±²´¯§§°¶°¨©µ·±«ª¸¾º·»¾À½¾Áµ©ª®±²»»¼¼¼À½·»¶°°¶½¿¾¾ÂÅÁºÂÆÄ½Â¾¿ÀÁ»¸³³ººº¼º»¾µ¶¾¾¼·»µ²»Á»¹º¸»·¿ÆÇ»¦±ÁÈÔÓÓËÀ³­¾¿¸°¿ÉÈÏÎÐÏÍÍÎÌÌÊÌÊÉÇÈÊÇÅÈÈÉÈËÊÌÍÌÏÎÍÌËÍÉÉÆÆÆËÑÓÒÔÒ×ÚÞàÜßßÞÏd $),1/11,525/3056/+)-*)3,41.2559@8>@DJ]j¢¡¡   ¡ aacafbdiigba^\cdaa``faaggmpz¡¢¥©ª­¬«®­­ª¯«­®¬©£|tmh[TOIFKMOTTT[Z]\b^bbab_fef`de`badac`ffaccjegdifihhiefaWXc§ÛÜÑÆ´µ¦ytjodbjniokle`ckmkolrustroszwtnkx}{~|yrljvz{~££¦ ¨¦ ¥¦¡ «¯±·±±µª°®®¢¬³®±²µ¯¥¦¦®¸¶³±´¬­°­°®®¤©¹·±«¬½ÂÀÁ¿ÄÀ¸°«°¯´²®°²´¶¾À¾¿½À¹´¹½¼À¾¿ÂÃ»·ÃÁÀ¼º¶¹¼»¹³µ·¹º¼½º½¹±¹¾½µ¹·¯²¿¼··º¾¹½ÁÆ½¿ÇÍÏÐÉÅ¹¼¾ÄÁ¹½ÂÅÊÎÏÒÍÌÌÌÍÍËÉÈÉÊÊÈÊÃÄÄÇÈÇÉÌÍÍÍÍÌÉËËÏÆÃÂÃÄÎÓÒÔÓÓÔÜÝÞÜàáÞÂJ%#++)'1,',/26F6?8.13(')3/.,-0628A>DMIXkx  ¢¢¢ ¢£¡dd`ececgg_da``d_lecbb^efhntv ª¦¬«ª¬ª¯¯³®­¯¯«¨«£~uqaWRKMOLRNVX[Y\^`aX]ebgcgfaadacbc_^cef^]ebaabiflrgkgea^]Zk¾Ü×ÐÀ´·wplnbejrrmhnbcghlphprruu{ytrwrozvz}zztkifvxwvª´©¡¢¡¢§¡¡¯·¸·³¼¶  £¥«·±¶°©«±³¯­§¦¥µ¹°­®«²±¬©¨§¦°¸µ¯®²ÁÆÄº¸°«°¶¶¸¸´¶µ¶³±¹Á¼¿¼¿»º¸¸º»ÁÀ¾À»ººÁÀ¿¹°±¶¹µ··¹¶¹¹º¶»»³´»º°²´­­±¶·´¯º¹¹ºÀÇÅÊÎÍÇÂ·»ÇÃÀÀÈÇÇÊÏÒÎÍÊÈÌËÊËÊÊÇÅÉÈÅÇÃÅÉÉÉÊÈÉÎËÌÎËÉÍÌÉÃÂÀÆÇÎÐÐÑÐÒÔÛÜÞßàÞÛ¨3',%*0*+351++28215/4-'-(+73<2/;:<A<AIT[p}  ¢¡¢¡ ccd^`bebhi\cg^e`ge`ccffcflus §¦ªªª©®«¯°®­­¯¯¬«¨¥xqsdVVNINLOPSWZ\[__^^`]c`ahkeiaeba]fb_bdbfc^bcajkifdffdba\\sÄàÔÏÉ¶§®r{{ohtnllficehfmmkpllntz}xwt|}v|}xli`o{wv ¦¯¥¥¤¨­¨¥ª³µ¹´·ª¡£«µ¾­±²§¥­±­ª©£­®¸±©®°±­¦¬««£ª³¶¶³¶¿¿¶°°¯´¸·¸¹¸³¹½¸´²°¸½¾¹¾À¿¹¹¼À¿½¼¿Á»¹½¿µ´°«²°³·»¸¸»º®¶¼¶²¹¸¶³³ª¨¨¯¸¶¯¹¸¹¿ÉÈÈÇÅÂºÂÁÃÄÂÁÅËÌÏÔÓÏÐËÌÉÈÉÆÊÊÉÈÇÉÉÇÅÇÆÇÈËÌÉÍÊÊËÌÌËÍÌÅ½¾¿ÅÉÌÎÑÑÑÒ×ÛÜÜßÞÝÕ&##')))15.,,,714/-/+)*+*/503;055018>G[gv £ ¦¡¢   iic`ecadb^V^a^g_eadfegbeikovz¢¢¥§«¯««¬®²¯­­«­ª«¨¦{rr_[RRJGKSOTWYX_aZ]^c_]beac^cdba`dccbab_i_hbfckmjhiddfa[Z_vÎâÓËÇ¬´¼}|{m{tkmibgrcckniulpsvqpkr{zwyy~~yxmfr{x{¢££¦¤¨°²ª¥«­³­©¡¥¥¦£²»µ¶©©¥§±¯³´«¨£­²°­¯±¯­¤«§¦£¨´¸º³­­¯·¸¶µµµµ³´·»½²°±±²¹¼¼¾ÅÁ»··¼¿¿¾¼¿ºµ±±¶»·¬¦°²°ºº¼¹¹³®¸·¶°¸¸±©¨¤¤§°²³¹ÃÂÌÍÉÃ´ªªºÇÉÃÂÃÃÉÎÒÓÓÑÏËËÅÂÄÉÉÈÈÈÇÈÈÆÆÇÇÃÆÊÊËÉÎËÈÌÊÌÎÍÃ»·¼¾ÄÊËÎÒÑÐÔÔÝÛÚÝØÙÊh)'&$1*--3.-*443..+-)/'>0/078=63:.69OMit£¢     iig_^a_e`cccaaaaa```b_bekfpr|~¡¡©«¬¬¬­­¯°­¬¬«°­«¨§uocXQJGMJMLVZZVZ_bc]eec^]dc_dc_bcdebb^_g`eeaddlpkgjefka\X]{ÔÛÕÍ»³Â¸ wwvskpnjmghmjkgos|mgbirzxstyyxxrgp¨z§ «¨¬­¬°­³¦¥ §« ¤³²ª£¤°²¯ª¨©ª«¯±³³¨¨¦£³¸®°«­°°©¦ª¬©©¹³¬¬®±¸À¼¹´´®±±¹º®©²¶´¸¹·¼ÁÂ¾º»µ¹¿À»¸¸´´°«²´²ª©­²¸¸¹º·»­«µ³¬²³«¤¡§¢£«»¿ÇÑÌÃ¾¶®¥¨¹ÃÅÇÁÅÆÌÐÑÔÔÐÏÎÌÈ¼¿ÅÇÈÇÇÈÇÉÇÆÃÅÆÄÈËÈÈÉÎÍËËÍÌÏÉ¹·°´¹ÂÇÊÎÎÒÐÓÔ×ÚÚØØÙ¶A)$ &+./)+0-2,02605-'(.-++3:655+3'.;P\m| ¡     ¡¡  eeb`b_aifeae^_a`_`]`af`cdkqu{£ªªª«­®°­¯°¬­­±¬ª¨£¡zsngYQNHJKQUTU]Xb[_a`cf^dcd`^bbbdbg^adc^\dfegeeignggcfhe\Z_~ÒÙÓÈ²Áµz|yrtqryggjmoagolmmaSfuvyqp|{xqrsjv~¢wz¢©°´´±¬¨ª±§§¶±µ³¨¡¤¡§´¯¦ª¯¬­²¹³®¦¤©´²¬®«®®©©±®«¤ª¬°²¬²·¼¿¼ºº¸±®µ·´±«¯´¹º¸º¾Â¿½¹·¸»¼ºµ±¸¹·¯¨¤«¶¬­²·¹··¹¹´¥±³¥§°¦£¦°ºÆÏÏË¾³«±´½¿ÆÅÆÄÄÈÎÏÐÐÐÐÎÌÌÈÀ¾ÄÈÇÉÈÅÇÈÉÇÃÃÅÉÇÊÊÌÊÉÊÌÍÌÎÏÌ¾¯´«¬¸¿ÈÁÍÍÏÎÎÓ×ÙÚØ×Ö5.#%*--)5--;3/67:613+0.,.+84<74.)&3;Jav ¡¡££ ¡¢¢¡ ¢¥ ¡ __b]^bbe_db`a`c``cafaea[cjqqw ¢¨§«¬¯¬«­¬««®°®«ª§¦¢uqb[UNMLQRTUW^\_[`__`bddbc`b`dfbf_f_cdgbbccggheffjjicc`[Y[ÕÜÏÄÁ»³ts~woutggmogeoomec_gnruqs{~wstmhr¤wor  ¡°·´¬§©©«¡°¶±±³¯±ª­°¯««¯«¯¸´¸­¤§©³´°«¯¨ª­§¨¬¦¨¥¬³³³³·¶ººµ±²´´¶º¼²°­¹··»¾¿ÀÀ¼»·³²¶¶³··¹·°©¤±²¬¦°ºµµ·µ²£¦³©¥¥ª»ÄÊÎÇ¿º¦¡±¾Ä¼ÄÇÆÈÇËÍÐÍÏÏÍÎÎËÄÁÀÆÆÆÈÈÊÉÅÇÉÅÄÇÅÇÈËËÌÌËÍÌÍÍÏÎ¾¯¨©¥¨³ºÀ¿ËÏÍÍËÑÕÛÚÕÙÌm3."&+('*(*//2033?H7,)+1.26:1>27**$0?Vp¢¡  ¢ ¤¡¢¡¡¢   ¢¡cc^_bb_g^mic`a_ab`e`Zaaabehs} £¥¦¦­¬­ª°­ª¬­­®«­§¢¤xtbYOKNILONSV[[b_b`__cdcaed`babgcab_d_eabdbdgiecgekdegc^[`ßÙÎÈÂ±²±syzumifdhhfhwpijmrqjrw}svplipngxtlu¡­¥ ³³´§¡§£¬²´³¯±±«©ª£¬µ³®ª®±±²·´­§¯ª¯²¬¯«¨«¡¥®¯­¦®´¸´´²­³¦¤±´·¸º¸¶³­¬¶º»½À½¿¾¼´´«°±·¶³¸¹·²¯§­·­£²¸¶³¸´«¤®§¡¡´¿ÌÎÍÂ¹µ«©¸¸ÄÄÄÆÄÉËÑÐÌÍÏÌËËÍÈÅÄÂÃÆÈÇÈÇÈÇÈÇÆÈÈÇÇÊËËÊÉÍÍÈÌËÏÒÆ¶¥£¥§¤ª³ºÁÌÑËÈÊÑÓÚ×ÔØº=-))%)*-.,/+3321:A92%*.7,2356=730)(5Gax   ¢¢ ¥  ¢ ¡__bcge`c[a]``a[fd^fc]_^edfpty£¦©«ªª««¯¬®««©­­ª¦¤£}ysa\ULKLPSVX[W\^^[^`adbdaehd`^afdbca`cc]ccafhgfigkkfic`^W_àÛÒÊ²¿¹ ¨¢zzhjrddkihllelttlepsd`efnwylqv ª­±¯¦³¯°·´°¯«¤¦¨££²²°¯§«±­µµ³«¥¤¤£«­°²¨ ¡¬¬¬±­²·¶¦¡ª¯¯±°±·»»·¸µ«±»»¿¼¼»»¸³°®¯¬°³³²´µ¼·«¥±¸§¢·´²²®©¢ ²ÁÉÎÐÄ¾µ«®¼¾ººÂÃÄÇËÐÎÏÎÊÌÌËÊËÇÅÅÄÄÃÆÆÇÅÈÇÇÈÂÆÉÇÉÊÈÊÎËÊËÊÎÍÊÎÊ·­¢¥ §²ºÄÌÅÀ¿ÄÍÓÕÒÔÒ*--$).++,.0800+/60-42*--1-1021440/->Rm ¢¤¡£¡£ ¢¢¡¢ ¢ ¡__fecg^b_adbbbade_habb_aehru{}£¥¦§ª¯¬®¬¬¯¬«¯¬²¬©«¢|urd[USQNPSU_\[]^]_Zc\ffgefdbe_`ebdga`febeabggggejhhbecb^Y^ÙÛÑÂ·¼³ª·¥~vhpninnhccbeutrknw~rlfbddprm|§¤¨¬¨ª¦°ªª¬¬±¥¥««¤§¦¡¦³¶±®¬««°²°ª ¥±³¯¥¤¥¥¦°²°¤ª«¢£§­¶¸²°°»»½¹»±¯°¸º¼¹··±´µ¯¯²²³¶²²¶¾·¹«¤¸««±²®©¦ ¥¹ÈÐÎÉ¿´²¯¼ÃÃ¿ÂÂÃÆÉÍËÏÌËÊÊÈÇÈÉÅÆÄÆÅÅÇÆÉÈÊÇÆÇÅÈÇÈÊÇÉÈÉÌÍÍÌÍÏÊÌÍ½­©  ¥¯¼ÉÁ¬´»¼ÉÑÑÏÕÅ](%))3)0-+3-/51,/1.0*+,1..-1*213792>Hcv  ¢£¢¥¡¢ ¡  ¡¢ bb_`aa`dd_cj_``a`]f_]caajhms¢¥¡¬«¬««¬¯®­¯¬¬­­®¦£slaTXNQKNQWYY_^aba_bcabhef`gfa`c`ecbb`bcaebbdbibafghdcaXZYÚÙÌµÃ¶¤²®¨°ªzunqtmqnaSUhnrgglw}xvqhiffrqsuu¡¨¢§¦¡­±®®­«§¦¤¦£¬©©¨¦§£¤§µ³­ª§¡©§¢¦£¢£¡¥®¬¨®©¨«¢­¦ ª±§ª­´³²°³»¼º»µ¶­³µ·¸´°±°´¯­¨¯¶¹¶¹º¶·´±°°±«¥¡¡µÃÍÑÏ¿µ·°¹ÂÂ»ÅÃÂÇÊÉÎÉËÌÉÊÇÈÃÆÂÆÃÃÄÆÅÅÆÆÊÈÈÈÆÇÅÆËÉÊÊÆÉËÌËÏÍÐÊÉÏÇ³§¦¥´¾ºª´ÀÉÍÎÓÔ¢=',)(;2766-,50745:.-+*&*1-.-+039:IAEWq¤¡¢¢ £¡¡ ¥  ¢ ¡ ¡``b_b]_e[a\\__ab]cba]a^`ghov|¢¤ª¬«¬­°ª«­­­§¨«««¨¦vn_VQONMMRTYX_\_`c[`adbckcdd^`edcccaace`bgdbefhffhfcgfdWY\ÞØÇÅ¸¬¬± ©}qyutnaWS]rmlbjwxwwuwmg^s|¡qhnwy¡ §£¢ «²¯²¯¨£¤¢¤¥ª®©§«¨©«£©«²­¦¥©ª§¡§¢¨¬®¯®¤¡¡ª®®²«¬ª§±³¬­¶º¸»¼·µ«®´±³¯°®°°¬¤§¬¸µ´±²²®´®£¨¢§¤¬´ÈÎÊÄ¼²¨´ÀÂÁ½ÀÂÁÌÏÎÌËÇÊÉÈÆÃÁ»¿ÁÀ¿ÃÃÆÆÃÂÅÈÆÆÇÈÈÄÅÉËÊËÇËÌËÊÏÍÏÈËÏ»® ¥°¾¹¨²¾ÃÈÏÕÏs,,'+,1@8/.6/15>102+0))/.3/)')-3BKPOThy  ¢¢¡¢   ¡¢  ^^b]\_dfa\^a_`^d_b\^\aebgfix~¢§ªª«¨ª«©¬°¬¨©«­®§§£ujfZPTKNMSQYXa_]_^]bdbda__add_cc`dafac`bciebbdgeidggaf]_\]ÝÚÊÃ¬Â´©}}ypi[Xaha^ges|wsnusd`wunoq ¥¦¨¤«²²®«ª¡£¤¤¤¦«ª¨¨­¥©£ ¥¬®«¢¡¥§®¨¤«¨¡©«¨¨ £¬¬­¯«®¬­°°²©¯µ¹¼¹¹·­°­±°±³®®¯®«££¯±µ¹µ®®­¦¥£ ©¸ÁÆÎÁ¸³µ¶¹½»ÁÃÃÆÉÍÑÍÍÅÉÅÄÊÆÅÀ¾º¿Á½ÃÁÃÄÀÂÇÈÇÅÅÉÇÄÆÇÈÊÉÇÉÎÌÈÏÎÏÌÉÑÆ©¤ ©±¼·~¥¶ºÅÃÎÖ¹?-2-#&<7D-2.2/600.0'2()/16,,1.2:?FNNgt  ¡£¡¢¡  ¡ £  eece``]iY\b^d_a]^`d``eh_ceju}¢¥¦ª®ªª©­ª¬©¬­¦­¦¦¢¤¡ul`XYNPNNKOXT]_``d`hhicf_^eceebbebbdaaeacdedggcikc_dcc]ZT[ßÕÆ³¿Ä°¤¦¢¡{xhfdel_WPaptpmqoqgktnrx|  ¦ª«ªª©­©¦«£¢¡¤«¬©¨±ªªª ¢§®´¢¢§§§§§¬ª ¤¢¦¦¤ª©±°¯°­°¥®ª¥¬ººº´³²®ª§°°¯­®®¦¬¥¦¢«·¸·²¬¥ª¥¨´ÀÈÈÄ¼±¨®¿¿ÂÀ¾ÃÂÄÍÏÏÌÉËÆÇÄÃÄÂÀÁ½¿Â½¾ÂÀÄÃÄÅÈÉÈÇÈÊËÈÆÆÊÉÈÈÉÏÎÊÏÎÏÉÍÐ³£ ¨«²¼¾}§¸ºÀÅÑÓ/&&/'&).=31J:411,-++*,2/16*+1.9=LTU_p} ¡¢ ¡ ¡¡¡¢   aa]da\`\\_`[[]``ac^\beafahow£§ª«¬¨¨«©©ª©¬§ª«©¤£ulcWVKLMMLUWZ]_[[c__al`dcbc_bbdbcae`b]aacbcchaccihac_d_WV_¦ßÏº»½¸´®¤²µ§~wpjhdia]T_jtpinpj_dvmvupz ¬£¡§«¦¡¥¤§©­¦¦¦ ¨©©§¤¬­¤£ ¡¸°¦ ¤¦¨«¬¬ ¦¥¤¬¥¤«¨³°©³°¥²¦¢±¹¸º³­¯®¥¥¨®«¯°®£ª­§¯µ°­«¡¢ªºÂÎÉ¹¶­°´»µ´¿ÅÇÇÍËÌÎËËÈÈËÇÄ½º½ÂÀÅ¿¾½ÀÀÅÆÄÄÆÉÉÉÈÈÌÈÊÈÈÍÈÈÉÍÐÏÎÌÏÎÌÐÇ¤£©²¹¾{{¡­¶¹ÇÍØÈY$%'$%(()3//I@:5-,*'(3,253.+.227AJOZl|¢¢£  ¡ ¡¡ ¡  ¡  bba^ZZ_\]^W_[]aZW^b][_bbddpx¢¢«¨¨©«©««­¬§©ª«¨©¦¤ }vjf[XMKMRNQQV\Z]^c^c_d`aebdba^j_]becca_a``ffgheehf`da_\UXe«ÛÉÃÃ¹©­°¬­¬y}vmckgcZ]^qghkilk[Yuzbw~{z¢¢¡¨®¦¦ ¥­©­±¢¢ª«¥¥¦¥¤ ¡¡­®±ª¡££¥©¦¨ª©«§©¯®¨§¦¨³­´®£°«¦©­¸¸µ²¯¬ª§§¨¬°¬¬ ¢­ª¦©´¬ª¦ ¡§¶ÂÇÊÇ³¤±´¾¿º³¿ÂÄÍÒÒÎËËÈÈÇÆÅÃº·½ÀÂÃÂ¾Â»ÂÄÃÃÅÄÈÈÈÈÊÇÈÈÉÉÉÌÈÈËÍÐÎÏÍÐËÐÏ±¡¥¤¯·º}¡©®²·ÄÒÚ¹<%*%)&+)+418F740,-&+*./6405-,,5??ES`q¢ ¡¢¥¢    ¡ ¤  \\dh_Y^^_`_ab_````___g^`ejry¡£¨¨¨©®¬««­©®¬­®©ª§¤ umb^PIMOMMSU\\]_]d`_acgdhdeea^\_bbc_ecf^bdcffcdjb_ab_^YYVaµáÌÈ¿¤µ¸ª¨¡¡yikkfbcljmmhrkf]an{vjustvw«¦§¦ ¡¥«°³©¡¡ ¨¢ ¡¥¦ ¤¢ ©°ª¦§«  ¤¦¨¥¦¨««¥¤³±¨©¦¡¨®©«¤®µ°­¯§­¨¦¦¥¶¯­¤£²£ª¦¦¢ª¯½ÆÌ¿°«¢¦¸¼¶¹ÃÆÄÉÐÐÏÌÍËÊÈÇÂÁ¿Á¿¿ÂÂÃÁ¿¿Á¾ÄÄÄÆÄÇÉÉÊÉÉÈÆÆËÉËÈÈÉËËÏÏÏÏÎÌÐÀ¢£©¯´º~§­³³¶ÇÖ×-##')'&*.2142/6/3.)+0/:0/22,-/=CGHYl|¡ ¢£¡ ¡¡¤¡¡ __mi`_f_\]ac`a][_\b^^Zaebksv £¦§¨­«©­¬¬¬¬¯¨­«©©¤ umeZUMMIQTSX\_`\`c_ebad^a^bea]_`_caab`beddbigd]a_f`c[ZXTPhÇÝÌÂ«º¹³¢¤©ysjtsd`lillmnlflgtyy}mw}u|u££¦¤¨ ²´± ££¥ª¥ª¦ ¯¯¤ ¤±®¥¢¡§¦ ©¨­ª©²¬¤«¡¡§°«¥¨ªª¨§±­§¢¥¨¬«¦¡¨¢¡¢®ºÁÉÆ·­ª¨°»¸ººÄÇÇÉÌÎÎÎÉÊÇÅÄÂÀÁ¾¿ÃÁÁÁÁÀÂÀÀÁÇÄÆÇÇÈÇÆËÉÉÇÇÊÉÊÌÌÌËÌÎÏÐÏÒÓÐÏ¨¢©²¹·©¬«®®ºÍÛÏm&&%*(.()0/2.25//%,%*-.584/--057DQNbz¢¢¡   ¡¢aa_dc[\][``aa[][`]`bf^``amuv ¤¦©«¯¬ª­¬ªª«ªª­ª«ª¢vle\XOLMPSRUU]]\cd[acccbdbe_b``fe_`b`bggjjcdfcbj_da^][Y[UsÒÛÆ¶±½¶ ª´¬© y{|tvqwmknfigsne]t~}`t{|£ª £¡  ¦¥­§§  ¤ ¥¨«««¢£ª®¦¨¬¦¦¡©©£¢­¯«¡¯°ª§£¦ª®§  ¢¡¥«®ª«¨£ §«ª¡¤¥°ÁÇÅ¾µ¥«¸···ÀÄÅÉÌËÊÍÈÈÆÄÄÄÂÂÀÂ¾¾ÁÂÁÂÂÂÁÆÃÂÃÆÇÈÈÈÍÅÉÉÊÇÉÉÉÌÉÈËÍÍÎÎÐÒÏÒÏÓÀ¦±µ´£§¨§¥¬¸ÄÕÝµ=&%-&*)/)205-035E)&+.+-355/,+54CFE`o¡¡¢¢§  ¡]]^ab]]__]]^Ze^]\Y[`\]acdhmu¡¢¦¥©¬«¨¨®­§©¬«¬©«ªª©ykbaXSLLTRU[\X\\]`gac\c_c^c`e^bc`cedaadegg_aecafec`^\]YSS|ÏÕÁÀÂ½³±¹¸¡¤y|svtnncghgd``}ki{wv  ¡¡¥¢¢§£¢ §¦¥¦§«©© ¨¬³¦¡¤ª­­©©¤¥©±¥¤³­¨­¤¡©¦ ¢¡¬­¨§¢­¥¤«²ÁÊÃ´¬«®º¼«µÃÃÃÈËÍÈÉÈÇÅÃÅÁ¾À¿Ã¼»¿ÂÂÀÃÅÃÃÄÅÄÆÅÈÆÇÊÊÊÌÊÌÇÊÉËÌËÌÊÍËÏÑÒÑÑÒÏÌ£¨´¯£©¨ª§¨¿ÐÙ×.((-1+4+1/..84.);A))*.272/44/1<AGJ`x¢ ¡``]hh[[][]]ab`c]a\`^[`dbjnr{¡ £¨©­¦©ª«¬¥«­«­ª¨ª¬¢¤wmfZTQHKUPSY[\`[cd`ccbce`abe^aegb_h__abb_dba`_cdeef_ZZUQVyÒÎÂËÄ®¶ÂÀª¬£©zuzrlhojd_cw|winuvzyu}|££ ª¨ ££¢¥¥©§¦©©ª¡£¡£±¬¡¥¦©¨ª§¢¡ ¢¯¢«¤¡ªª¡¢ª£ ¢©¨£ ¢£¤ ®µ¿ÃÉ¾­¦«·´´¹¾ÄÈÁÄÈÅÅÂÅÂÃÀ»¹´º¾Ã¿½¿¾ÂÁÃÄÅÂÃÃÁÅÆÈÈÆËÉÊÍÌÍËÊÉÊËÊËËËÎÐÐÏÐÑÐÐÎµ§²±¥©¬¥¬É×ÞÉ`+*'%*17(210/4+/),/48044:80,1/5G;FSl ¢¡¡   cca`dc_bWZ^^^\a`][__\aibknu~  ¢¦¨¨©­©­¯ª¨«­¯¬©©¨¢£xog]OQHFNPVYXWZZ^b_ag_db^``cacc_a_^_^\aa`cbad]`bcg\aY\TQTÝËÉÈ¶¹¼À®«©©¦¤zx{omljk`Zbo{qmq{zu{~o}  ¢¢ª­¨¡¤£©¨¨¨¢¤¤¡ §¢¤¡¡¨¨¢¦©¥¬§¢©¦¡¨¬¦£¥¦¥¨£  ±ºÂÇ¾³ª±´°«®½ÆÇÉÊÉÅÅÁ¿¾¾½··³´¶¹½¿À½ÀÂÇÄÁÇÆÃÃÆÄÅÉÉÊÊÌËÉÊËËËÈÉÉËÉÊÍÌÏÑÑÓÐÔÐÎÃ¥±­¦«§£ºÎÚß®8*'$+(*0.225/-3>4()2F46:373/23CDEOez     £__a`face``__h__`b^e_cdcciqsy¥§­©­¬¬¬®¯¬¬«¬­«ª¦¤£|tmcSMKFULSXZYZ]\a`^`fa``_`bi^^dbcbbabce^cdbccdifd\^Y[TRX àÔÊ¾ÀËÃ°¤¾°­§¤}}|xjhmja[[zv~|yjryxuxlsz ¡¨ª¦¥~{£¥«¡¦¢¤£¤©¢©¤©­¨¥«¥¨¬§£ª¬¤«¦¢¡¢®·ºÈÇ·©©°»¼®º¾ÂÊÌÍÉÇÆ½Á¾¹¹¹µ´··¸¹ºÀÁÃÂÃÅÀÁÅÅÂÇÆÇÈÈËÊËËÌÊÌÊÊÊÉÈÊÌÉËËÍÐÒÑÑÏ×ÑÎª¨±¨¡¨£¢yt~²Ä×ÝÔ}(#)),+0-574332/:9.33ED=64=-87-1;IUm    ¡ ^^]]b]caed_]]]b^baa^ecfcfmvy~ ¡£¨§§¬©­ª­¬­°¬®¯«ª¤¡£|qbcUKJLQJRTTX\a]_[\^f`_^aa\^]]__`gdecdbbb[]bcg]c`][]WROUÙÓÊÄÐË¸¯¾È®±²§¨ukkkbYYkyz~{nv~wzx|wy}¥¡  ¡|{u|phXY^oª©¤§¤£¥¢¤££¤¢¡£¥«¤¡¤«  £¢¤¥¢¤«¢¢¤¹Á¾ÄÀ³¤¢²°ºÀÁ¼ºÊÌÍËÆÃ¿»»»ºµ¹¸ºº¼¿¾ÀÁÀÂÀÃÅ¿ÂÅÇÅÆÇÆÉËËËÌÊÊÌÌÉÍËÉÉÊÊÏÌÍÍÒÑÐÓÓÔÕÇ¥°¦£¦lglpx¨¿ÐÜßÃQ%$$))+1+186823=5:.463BD8:1/146/>Iaq  ¡  ^^``b^bbc_e_`^^^bbbahglknnzx¡ ¤¨««¬°­ª©«®¬«¬ª©§§££k]ZQJILIMMQT\\b\b\`[`da``c`b\^eadcbca`hbca_a`^ea_\^^TPORØÎËÐÍ½±ÁÎº¨¶­®wlc[Udxzzqhuywyx~¡zu¢¨¥ ~zskaKF©¥¢¦¡ ¢ ¤£ ¤¡¦£¦¢¡¤ ¤¨¡¢¤¦©»ÃÌ¿´°®¬­®¶ÄÅÄºÀÉÌÊÉÄº¾»º»»½»¾¹¼½¾ÄÅÀÃÂÃÂÅÂÆÇÈÆÇÅÇËËÉËÉËÈÉÊÊËÌËÇËÍÌÌÍÐÑÐÑÒÑÔÏ«¥¬wneT`lu~°ÆÖßÛ©6#()#%-.156;>0-17/2-.9HA4812-16>@Xj~¡¡¢ bb`bb_cec_a``^_`acgbdfkgiqs{ ££¥ª««­«ª¬¯­ª©ª¬«©§¥¡vm]\QPJHGLXVZYZ[_dd_a`ffc^__Z_^d`da`\^a`e`ebdbbaa_`\VUOMX¢ßÑÔÎ¹·ÅËÃ¡°±«©¦ ¤©qbY]r|x|fm~~wzvx £tlejinruvy{jY;}¢¡¤¢¡¡¤¤  ¦¤¨¢£¢£§¤¤¢©§¡¦²¼ÁÊÄ­ª«­°¿Ã¼ÆÊÃÄÃÈÇÅÀ»À½¾»¿¿À¾¼¿ÁÁÁÂÁÅÅÅÂÆÃÇÅÅÆÉÊËÈÉÈÉÍÍËÌÈÌÌÎÊÉÍÍÍËÐÏÕÒÒÒÓÑÀ¥¬w^^gd_]n¤»ÕÛÞÒx**!"$&--6.4,0/3..0+-0<=<424AF7;@Ca| £   ¢ ff_cbb^``]b^dd_`d`bdelkilnsy £¨©©¨¬¬­ª¬««ª¨¬«¨ª¦£xnb[UNHIHRMSVXZbXfdbb_`aba`^[]\cac`d_ac]abbghcdja``\VTTNTÞÚÕÃ¾ÉÉ¾©«¿³½«¨¨£}g`dgx~|}zhhv~smn~|zqc\ckinhg[Y][ipvqw£{hOo ¢ £¢¢ £§¦£¤£¥¢£ayª¨¦¤²ÁÅÀ¸²«¢°¯¹ÁÃ¾ÁÈÊÇÄÃÇÅÁ¾¼¸º¿½ÀÀ¿½¿ÀÁÀÃÄÄÆÅÆÅÇÆÉÆÅÇÆÈÌÈÆËÍËÌÉÌËÌÌËÉÉÊÎÌÍÏÑÓÓÔÒÑÉ££¨|fQORV]]e¯ÊÚÝÞºC&  !#%,,,-+06).5-.-+47;7227343<KUm¢ ¡ bb]adcbc\]bbddda`eccjighlmu{~¡¡ª®®ª¬««¯°­¬¬­©®ªª«¢xk\\SKDIJPQUTYXYZb`ec_]a_^]^`_ee^_a_efcbb_bbbbcb_]`\ZTLKOÚÙÈÃÑÓÄ¯¼Â»¢¥´ £ª ¢£pcuopx|~}x}cgy|w{s{{z|kSdwy}}umlnaU]^dj_r¢£~f\m¢ ¨©£§¢¨¤xkcR7>z©·ÁÈ¿­ª¨ªª»ÀÄÅÇÅÈÉÈÆÄÆÆÃÁ¾½½½½ÁÁÂ¿ÃÀÃ¼ÁÄÃÄÅÇÆÇÈÆËÉÆÆÉÊÈËÉÌÍÌÍËÉËÌÍÌËËÍÐÍÏÐÒÔÔÕÒÌ¯¢§¤eVQQPTcbco±ÇÕÝÝØ)##"#%$-+.2153+('..0619942-180;7H^w ¡ ¡  ``ee`bde^cdbc^cbbbecfgikjput~¥©¨ª¦«¬¬¬¬ª®­­­­¨§ª¤{ncZWRHDHHNVXX^Zabf`d^aaea`ae`d`]ga^^ba`_cbdae]`[b]_^XPPQÛÑËÒÒÃ·ÆÐ¾¤²ª ¢ª¢zxwxv~w{{~yz]i~zr}vx{~xu\[_wvtuvm`eWNbocV¦¤§££qfb`_hp{¡¬ vli ¡¢v~vU48N ¬»ÂÆ±¦¤°¤¤ºÄÂÊÐÌÉÌÊÄÁÀÂÆÃÁÀÂÁ½À¿ÂÂÀ½ÂÄÂÂÄÅÄÊÉÆÇÇÈÈÉÉÇÈÊÉÊÉÎÌËÊÈÊÌÌÊËËÊÌÏÎÐÒÓÔÖ×Ò´¢«uWOJVSZW`kp|²ÂÐÙÚÝÂ[&'%'$%(-,43+.02*--+380663/2116<?Og ¡¡£  ccdabaac^^`dcb_bhcagdjigkqvz¥ª«­©¬®®«­­«¯¬ª­­¨¦£¡yqcYOOEDGNOXZXZYab]eaac_e_fbi`c_cfffdac^achbed`__`_^[SNLTÞÓØÔÃ´ÁÓÉ­©°±«¬¨mr{|wp}zx~y~bllw}~pmp~ |zx[XoxwxvqrlQIKON£©¨¦¥¤¤~rptrk_Z`o¦¨¢¦§£ggwq¥dokG-3Y¶ÃÆ¶°ª¤¦¦³ÂÀ½ËÑÌÊÆÆÄ¿¿ÀÂÂÂÂÁÃÀÁÁ¾½½ÀÂÃÂÀÃÄÇÉÇÇÊÉÉÈÉÉËÆÍÍÊÌÌÍÊÊËËËÊËÊÍÌËÍÐÑÒÔÔÖÔ»¦¤¥ y_NKPVVaZ_hqy¦¾ÐÕÜÛÔ/!!&!*&'0+7-.71-,4+.0226=>=0678@L]r¤  ¡ccbaa`afac`_^aebg`^bddcikot}¢¥ª®­««¯­¯±¬«­«©¯©¨¦¤{ndZPJCKNNURRVWY\]a`bga`]`ee^d^d`ebdbfebfcbcbb_dac[XWTMOPÙÛÚÈ·ÉÒË´·Á¼¯««­¥£wvqwuwynx|}qeyvvt{sn~}y~kgv|}{xwhmhoe[QM8T¬«¥¨¦¨£ywnr|u}shcXix«~nfg[CPbZ?Ao}q`2"/{¤ ±ÃÅ´£¢¢ª¶¾½¹¼ÅÈÅÇÉÆ¿ÁÁÀÄÃÂÂÀÂÄÂÅ¿¼¿ÃÃÃÅÂÅÆÉÆÇÈÉÇÈÉÉËÇÈÍËÈÍÎÎËÊËÊËÊÊÊÊÍÌÎÐÑÖÓÒÌ½«lVKSXV[Yi_amv´ÆÓÙÚÜ®B' '&.<*,-1/-.32-**'-656=783.-59JUh{ ¤ ¤ ¡ ¢¡ ccda`acccfd`^bbbgcacbiejtnw|¤¤¨©¬¬¬ª¬±¯®­­¬®­ª«§ xqcZPLEEOKQORT]Zaa^^g^\_cbdced`beef__hce`afedbae]`YZVVMQQÖÝÌÃÍÒÆ»²ÉÆµ¢±¹¤¥ywos|ytros{zikl{xt~vpu}x~}zq~xqpnjlg\]XUXZaK:E}¦«¤£¡rshSEAEQ\ogbrgV`a_WX208AE23S^F*!,Y°ºÆ½¨¡ ´µ½Å¿ÀÀÅÄÅÇÅÁ¾ÂÂÂÆÅÂÅÃÃÁÂÃ¾ÀÀÀÁÁÄÅÅÅÈÉÈÈÆÉÇÈÊÊÈÆÉÉÊÍÎÎÌÇÉÌÉÎÍËÌÍÍÎÐÔÔÎÁ¬¢hXYOLT[cV\^^fx²ÁËÔÙÚÊh(,*$$).///4--.6-))*)+3363.4-/016Ecv¡¢ ¥¡ ¡ cccbf`a`b_el\bdjkfeighhirt}~¦¦¬ª±­ª®¬°°©®ª««¬§£¦¢tmbVSKGIIOMSUV[b\Z\^]`bc^jegjc_^eilccebbcabeaccgca^XXVQRT}ÜÖÂÒÖÊ¶¿ÉË¼¯¶¶³¤w¢¡²ompgj{tsqyq_fs~{lr{zvs~qfdefkbRIE=;?GC2?y£¦¨¢w|zztna_[SQVt`OEGRRQXCGCP;/,574(-@2&#+Gz¢µÇÄ³¢  ¸ÃÂÊÉÅÆÄÄÅÇÇÁ¾¾¿Ä¿ÈÅÂÇÁ¿ÀÂÁÀÁ¾ÀÂÄÄÄÂÇÇÉÆÅÅÈÊÇÈÊÆÅÊÈÍÍÍÍÌËÍÎÉÌÌÍÊÎÎÏÑÑÇ³©qaSPVRTWX\W_den²ºÈÔÕ×Ï1&$ %%$230.35)-7+())(--5776/.,.4NWh~¡¢¡¡¡¢¥¥¡ ¡aagcdcfaa_dfb``be`hfgimppw{} £§¨­ª®­«««°¬®¯®±°¬«¥ |ngaTJNFDLOTSSZ_[e^_^Zc_afcecc^`d`e_aabcf`dacfd`a\][`UOPO~×ÔÐØÎºÂÍÎº¸¼Å¶¥±§y~¦§tsflrox~xx~mYkowqxxoty~~{l[xzj\YfkbmXOOSOID:>GGx|peVR`dS@<PQ^smQ?AL@=?=F69E4+*1../+&&'*)H¸ÉÇ¯¦°¸»ÁÇÊÍÇÄÁÇÇÄÂÃ¾À¾ÁÂÅÄÃÆÀ¿ÀÀÁ½¾ÀÀÅÄÅÃÆÇÉÇÈÊÊÉÆÇÉÉÇÈÇËÎÎÌÊÉËÏÎÍÏÎÎËÎÒÍÆ²l][XSPWTWVY^Xamr¯¿ÃËÓÖ×¹P'()$-)0.15.3/+16),01/.84>21*),31Lbu¡ ¡ £ eefcccedebe`_g`edaihlgjijxw|¡¦¬­¬­®­®¬³®®®­¬±¨ª¨¢|of[RIKEKNPTPR\a^[_db^_ba`eccg``fgd``c\d_bbbfbac_]a^]ZURKoÃÛÚÑÀ¾ÍÍ¹±ÊÊ¿ª©¬¡z{p¨vimijnuq~v~wo\_tzxwvq~}~{z|udwrh\acgneaXV^hkaTGWY_}{~oME>ICGD=9Lbyd6:AY@@724156,(..*+.'&##+Qw­Ã¿®ª½ÂÁÂÆÆÇÉÃÂÂÉÄÂ¿ÁÂÀÂÄÅÅÆÃÁÁÀÁ¼¿ºÁÄÃÂÁÄÇÇÇÇÈÈÈÇÊÈÆÆÉÇÆÇÍÌÑÍÏÊÎÐÍÐÏÌÐËËÇ­~le]ZZZXUVXWZ^X^Ycu«º¾ÃÏ×ÙÐ+,(+&)-1*/1111,,2&,5;53448-,,)'06Kn}¢¡ ¡  ¢  ¡ ¢cc^balggedbabb_bfbehklmqnut}¡¦«¬®ª«¬©¬­ª¬®®¬¬©ª¥¦zsfTRPNAKKRTPT_a^]`__d_da_kh`c]`hfib`abdd`aeebdd_db_^XURMc°ßÖÃÃÑÌ¾·ÌÙÅ°º­£{l{vjenqmqtt{|l[aiwxwxv}vsxie{~pW`quvwcX\qtvyme`g^g~gptz}gYWMLH;26;GQj|e>;:9_N@5-.+(.'%*-4+(',/7^¨Á±¥µÃÅÈÇÉÉÈÅÄÂÃÂÅÃÃÀÁÂÁÄÂÅÅÂÁÁÄÂ¾»ÁÀÁÅÁÄÃÆÇÇÄÈÈÇÅÈÈËÆÈÉ¿ÂÉÐÏÌËÍËÍÍÏÍÐÏÈ¾¯{qb\R[T\`Z\RZXRZ`bfbq§´½ÂÊÐ×Ô¦D&e%-%--07-63732307*+..7971/..$'.>[w£¥¡¡¡¤ ¡  ¡  bbbgchehbfbbcgj\`jcbknkpmrx~¡¦¥ª«ª«°­­®ª®­¬ª¬±¬©¦ zreYPKGCJOQTSVZZ`fZ]bgdfe`^a^ff`ccab`eagff_dcbelb`_`^VYTQ]¡àÎÊÔÎÀ¸ÍÔÌ¶ºÄ¬kyvusnppnopyp[gnnruku~ypZl||rijttoftzykOIFUci\X^su\RLQfH7D85Akw_C9==8CYUG+,0(#$#%)GG'%2c]m·¾²¢¹ÆÆËÊËÊÈÆÃÅÄÀ½ÂÄ¿½ÁÁÀÀÂÂÀÃÂÅÅ¾¾¼ÀÁÁÁÂÄÁÄÅÅÆÇÅÅÊÉÇÅÇÉÃ½ÄÊÓÍÌËÍÍÑÐÐÌÉ¹naYZUVV[^]YW]TX[Vbenpv´³¸ÀÅÌÕÔ³X,%1-/%),2055,934.,/+)-/943-++6%,7K]|¡¨£  ¡£¢¢¡   ^^eccdigjdbb`c_behdehkonmtw{¡¢¬«§«¯­¬«­©­±©­®¯ª¨¦£ }vcTOFGIKQPSWV]]\\c[^abb__a[cbacgei`cebaae_hhgcbda`[bYVQMXÎÓÖÒÂ½Ë×Ë¹ÈÎ¾§¡tupx{t{ruxrqwlrsy~i`pxrrzumqz|}t`tx|}vfhvhahk~wwrU@SRId`OK^s|o[PTGUT00EAGllB/;HMLP<EU?80)*0&#&)$"$Iµ»¨ ·ÊÊÊÎÎÍÈÆÅÅÅÃÁ¾ÂÁÁÀÁ¾ÂÁÂÃ¿ÄÃÃÄ¿ÁÀÀÀ¾ÄÆÃÃÃÅÇÅÅÄÇÇÆÇÄÈÉÀÅÂÏÐÐÍÌÏÑÏÑÆ±v_ZYVZTSYXX\eV\]_]\dgp|¬½¼ÂÊÊÊÇW-$)+(&*326373,/.35;5.*42=870.*%%,8Tj££¤¢  ¢¡¡¢¤¡£ ¡bbbcefinkfdbaaa^afmjihhnlszz¢¤¨®«¬«ª¬«°¬«®®ª­­­­¥ |p]]ORKHMUSTP\[\ae^a``ccbae`d`ehdadc_addecchb`_da^[b^[SQQMkÃÞÔÉÇÍÕÊ»ÅÐË´®°¦t}olgzrswp{pl|wwofjqxuxmkxz~~|~}qcm{|jfs{gjllmu[cTBDLZNOOCSnrp_bkeIOE;LVUkwT=?I_]NKCHJ_26H+)&$$$! $-U°Á´¡¸¾ÆÈÂËÊÇÅÄÃÅÄÀÂÂÁÁÂÀÂÁ¿ÀÁÆÈÄÂ¿¾ÃÂÁÀ¾ÄÅÀÀÀÄÆÇÂÄÃÄÇÆÇÇÍËÉÈÊÑÓÍÏÒÎÑÉ¬~jaZUXWTYXVWW`a]W\\_aacs¡®´ÆÄÇÏÃc?0$'&)&)1/37.310427+253281;:4.((%).?bv¢¤¤¡ ¤¥¡¡  £¢¡¢¡  eeffgeccf_fdf`a]`cjiomoltuy¡¡©«ª­©«§ª«¬­­®«­¬­§§¦¡zm`ZPOHDKSLTW[\^`ae___bedgabg`_ceedj``afdbefa_`_d``\[ZUPNRiËßÊËÐÕË»ÃÏÊ¶½¹®yqju~rxxysvtj_itvr~rl{x}}{us}kgpl_q~zu|ynedSIAMA<496A@EERbpfYwXaa]]chn>AS[eQ962-O]d/./5.%( %1^³Ã´±½º³ÅÂÂÉÄÃÂÃÆÄÅÀÂÂÀÀÄÃÁ¾¾ÃÃÄÃ¿¿ÃÃÄ¿¾¿¿À¿¿¿ÄÃÄÆÂÄÂÆÇÊÍÌÌËÉËÏÌÒÒÏÐÍ»c\W\]RXYXTWSTV[\`\\`hipq¢§±¹ÂÇÅËÀ<00-('&0&,2023202.+/*-,7.23;5903+*)(1Ur¢¢§¤¡£¢¡ ¤¢££ aaccmfeghegde\d]`dcodljnnsy¡§«­®®ª««­§©®­«­«ª¨¦¦ {pf[ONIFNPRSTZb[_]`]^a^b`^f_h^adfafi`bdjg^gdf^da__b`Y]XQRN_¸ØÍÖÖÌÁÈÒÍºÆÃ®xih£{n{pnf\dnvsu|qs|}|zzbm}{rhj~{uwwdRN;F:<7=9798<ADI_ic[|bZtphflGZnn7.5<,*8cv:/)-%6+%<h¯À±ssºÃÃ»¸¿¼¾¿¾ÁÂÂÆÅÃÁ¼¾ÀÁÀ½»ºÁÀ¾½¼ÃÂÃÄÁÀÀÁ¾¾ÀÀÂÁÃÅÃÃÅÆÊÊÉÌËÊÊÇÉÏÎÒÍÌÈ¬tf\VZZcYY][YWVVYd`edrjlx§¯µ¿ÆÌÆËÄ7(+)&'+*/1/374012-+*06*)78367<680,+/3CZq¡¢¤£ £¢£¡ ¢¤£¡£  ggehafihfebfb__]`felhijlssu¤§ª©¬¬­«¬«¯±¯¬¬ª­¥¨¨¢¡}ja]NIKKMRQKRW^[d[a]`cegg_bdba^gcfg`c__^fbc`ac_c_^]\[^VSNNUÕÛÓÈÁÎÔË¸ÈÛÄ£¥wku¡¢q||pqj]n{p}~wp{}z~||y{usmanzkctvtmahaRC::@71;96:7889I\mf[{hOjmWKeyfDZu{=68OD;?If}6&!#)#*0>v¹¶¢sj~¹ÄÆÄÂ»»¸¶¹ºÀ¿ÃÃÂÄ¿ÀÁ¾Â¿¿¾½¿º¾½ÀÅ¿½Àº¿¾½¾ÀÂÁÁ¿ÃÂÃÄÃÇÇÅÄÉÉÆÇÈËÏËÌÊÀ `[]Z^^a][Z[YUR]Y\djt{ª°¶ÁÆÈÆÌÏ3&*+)*-2*--/326/4+,/011&+--327:66/.-27Pj £¤¥£¢¤£¢££ ¢¡¡¡ ¢hhijifkgigdbaccbbcblijmmntv¥§¨ªª¬ªª¨«¬¯°©­ª¬­©£¥~n`[TPIKOKLTSV[]`[_[Zbcedabb`dcbcamb_a]beddaca\^^_Zbc`\TQSQxÕàÉ¹ÊÔÎ¾ÃÕÒ¸¬¦w{w~}}siefhmxsumr|~z||zyvbc||}}e`osd^OLNLEGNNF@147?>A9?CVmlZzlRc`P6KkeZCvue2FIOS:+2ow8$ # "#+GVu¨Â¹qnv´¾ÃÆÃÀ¹½º¹¼¶¹½ÁÂÀ¿Á½¾¼¾ÃÂ¼µ¸º¾ÃÀÂº½Â¿º¾ÀÂÁÁÁÀÃÇÁÂÃÂÈÄÆÅÉÅÄÅÉËÉÅ¹£|ynY\[Z^]\YZ\XW[[Zguw¤°³¾ÁÃÂÎÒ´T*$))1.)+,+-650577-*00/*.0120:A89:654;C]r¤¤§¤¦¥¤¢ ¢¥¤¢¡£¡  ¤¢ kkiefheefgbd`]`cc^bigmoliqw~¤©ª¬ª«««««®¬¬«¬®¬¦¨¢ p^]RRRJHRNTT]Y]^Z_ae\`^``b^ad`bd`ffd[`a`ajbi^cc^d]ba[_dPRPqÍÛÅÆÒÍ¾ÄÏÍÂÂ¹¥zyg^`rprnz|oq}v}{y}mVz~~rce`^H<=;J\OLNNA=;6:;839DVjb]rRYW>95?Z`P\][KJ^b`N0$-xz'$"  %?X«Á²}ts|µ»ÀÆÄ½»³°³µ¶³½ÁÀÁÀ¾¾¼¾¾ÀÀ¼´µ¼¼¿¾¼¾À¾¿ººÂÄÁÀ¾ÃÄÄÄÅÄÄÅÇÄÊÅÇÃÅÈÈÄ¹h}~b``]e`VXWV[]afn| ¦¢¨®²¶»½ÁÇÐ¹c-*/2100-4002534124.-,)))-29<?=@?L2,/03Jiz¤¥¦¤¥¡¦¥¢¡¡¡¢¥¤¢¢¢  ¢ kkikjpedefa^fbe_dcdfcjhllo{~£§¨¬¨¯ª«­«ªª¬¬¯¬©¬ª¤£zncWXIDHGKTQVeW\]a`a^^cb]cb]`d`eieddcb^`fdjd`^_aeebea`_\RJO^²ÔÕÖËÀ¾ÏÍºÁÌº¡wa^frtnvtqz~~~|y}{u~|iF}wcaPKV?;;HGcaRSZE36.,37.2>Iis[rz\dK6.2;3GXfkPJOP]kN?4!..si#"" )]§¿­qr¢··¿ÀÂ¼ºµ²³²´³¹»¿¾¾¿¾¼¿¿½¾¹¼¹º½¿¿º½Á¿¾½»ÀÀ¿¾¿ÁÁ¿ÀÄÃÃÂÅÅÈÈÈÊÉÈÀ¹ xZUvugbac`U]Y^gru{¤¨«§¬±µ¶ºÂÈÎª_3&(+.,4-/,.52355:121)*1)**+-2132-9GN.2CSs£¢¤££¥¦¡  £¡¡ ¡   ¡£ ggiigogihjb^ddeefdafeekilny~¢§¥¬ª­­ª¬¬ª¬©«ª¬ª¨©§¤¢|pd]UTGEMINXR[[\`_^cZ_d`_acae_ccfeag`fca`]faccbbb_ccc^XXULLRÖàÑÂÆÒËµ·ÑÄ§­¥£{x¤¡zp_luqrk{|{wot{}{~yvsyfL{vgV]SL<0@JUajg[E>6;313544+9I`^ie_J0.(3..YpvA8MYlcX=4;!(.}F*'#2Z±º~xx­¿½¹ÀÀÂ·´±¯¶±²»½»¾¿»½¼¼½À½¿µº½½¾¹¼¼½¾¾½½ÃÁÀ¿ÃÁÁÁÂÃÄÆÆÅÅÅÅÉÌÉÄ¼nhfb]s~{mb^`f`dmv¥¤£¢¦ªª¬°±±ºÄÊÍ­T0.&')1-1,7.3:=:449>-*/(-/++,4<CH;2:91;;Rg £¥¦§£¡¤¡£££¢¢¤¢£¢¢ ¡   jjjhjljfhegeidibhbfcfgkhoqv}¥¦§«©ª©©¨§¬§©©ªª¬¦¤¡~ojYUMLLKOUSST[U^Z``]\a`d`dh^Yc^ce`i`^_hbaajeabccc`cba]YXPMMpÈßËÍÐÌ¹¸ÌÐ°·Ã±pv¥sl`Zowwv}t`nwzw~}xttjW}obYQQ;538I_nq\A@A5748+.7:1(8c|srteK)*)+2.BwT9=Phz]:*$*"#H|@T.":g¯½¡}{«ÄÅ½¾Á¾¼¶´³³µµ»»»»¹¿¼¹º¾»¾¸¾¹¼¼»¸¹»¿¾¾¿Àº½½¿¿ÁÂÂÃÄÁÃÇÈÇÇÆÆÇÈ½«XJaknbwmlqzy}¢ ¦¨§¤¡¥£¢¨ª±³µÁÎÎ§R,+&*-,+/.--7.851187:/03/*'),/39;BJ850629Wp¢¦¥¦¢¤§¤¢¤¦¤¤£¢¤¢£¢ £¤£¡ £  mmiejkjhcfgijih^eah`bigjpqy~¡¥¦©¬©©©®««­¨®«¬ª©©¦¢}tgYUMGKJLORTRYZa[][_]a]cf\`cZfbf```deacc`feddchgfafbb]\ZVOLb©ÙÓÔÈ¼ÀÉÊººËÁ ¨¢pyskjdkwuumn}~y~~~}{}w|z~oJ{}ca\OC7859KoraL200/73570-7;1-Mtu{rxd^P-/9*&,@q[>EY^f_L+*"'#*_z]g+'Br®²{®ÀÊÄÀÀÀ»µ³¸´²´¶¼ºº¼¹»¶¾¹¼¸º¼º¹·²¹¹»»¼¾¿ÀÁ¼¾ÀÀ¾¾ÂÂÀÃÁÂÃÇÉÇÅÂÀ·jQGNemlgu¡£¨¥¦¨¦¬¯§¥¤¨­´µÀÊÍ¯U**&,/'(4-124A94770572.-6/0())+3?:5520520Bf{¢¤¦¥¤¥¥¥¢¨££¦¢¤¤££¢ ¡£¥mmidchedlhhhied^cedbfkehpqv¢§£¨©«¨§­©«¬¬©ª«¬¬§¦§{me\TMFJHKOSSRUX]\acdaa`ai`afeabbaa``dbda_`_`_dbdccegcb\ZTSNPÒÝÏ½ÆÎÌ¶¹ÎË´±¥{£xyiokssz~qckyzwut~}rxsQtoYSF<748FemoR73/.-+1:<5*125+-\wkzkUL.007.+AoiQ=KVW\O0" 0/$&lkAk2Hy°²xu´¿ÇÆÃ¿À¹º¹´·´±´µ¶¹¹¸µ¶¶»¸´º»¼¸µ·¹¸½½º¹À¾À¼À½¿½½ÃÃÁÄÅÄÇÆÈÊÅÀ°TCh^QM[plkky   ¦§¨£¦¦©¤¥­®¨§©­µ·ÂÍÓµ`/&&'-%+.222;67B66<4130+13/17-237<1--'+454Yl|¥¢¤¥¤£¥¦§¦£¢§¥§£¢¢¡¢¢¡ ¤¢lllgcpgeke`ggfg_cd`fddgjqqpz¤¥ª§¬¬¬¬«§®¬®ªªª«­«¥¢ riYWNGIKJSQTX[^_Z_^_`a`\dci^cfbdedgd]eda]d]^^_`eeechacaYQOOUlËßÈÉÒÈ··ÎÍ»º¾¿£¥§y¨w~xjfqvqq}~sf`qsz~zzuzwvgmx_kyVC::<8<JgnQ9:/00.2+6>.*+/00/<c~S_d\333767BjxXG<M`_F.$ *0*"0T+HY|¶²|z¢¶ÀÄÅÅÃ¼··¼¸³±²´¶·¹¾·µ·º·³²³»¹º²¸¸¼½·º¼½¾¼½¿¿½ÀÁÀÃÀÁÄÇÈÆÉÉÇ¹_64C\hdYWbme]p¥¥¡¤¢£¥§¦¦£¦¦¥¥­«§±µºÅÏÒÀs3#&(#+-/0-575<68142,070+07*1405.4:5-)).00Dcv£¦©¤¡¢£¥¥£§©¨£¡£¡¢ ¢¢£¢¢¢ £¢ooikihhehejiieacehelhdiimms|}¥¤¤¬«««¬©§¯©«©­«¬­¨¦¢|neYQNDFNKVVXV[^^ab`Z`^_bbebebdbgecfdae]b`a_dd^`cdhchch`XURPPa»ÛÐÐË¹¼ÌÐ½¸ÅÉ¾£¯¦§§td_hqz||{vgcbvt}~|~~}~yqnty}s`XZjxqWUr_D?A9=8SgfP3282)(,5:C5+$%37.2btd?PVB-+,2:FlfZIMYi@$&#0I+-3G0b±¬ys¸¾ÂÆÇÅ¾µ·µ¹´°°µ¸¶¹¸···µ³³®´´³µ±´»¸¸··½¼¼¾¿ÂÀ¾¼¾ÁÁÄÁÄÄÆÇÇÆÀ\\C./;iytp``wk`h¤£§ ¥§¥§¨§§¥¦ª¥¬¯²¬¼ÁÇÎÑ¼v8.(*,%*',,312617=7-26;71-/-+040225411&.>02Og ¤¥¥£¥¥¢¥¥¢¤¦¦¤¥¡¢£ ££¢¥¡¡¢¢¡ kkknjihgiflcik_edaageejljtr¢§§«¯ª­¬¨¦¬«ª«¯¬ªª«ª¥~rm[YTEEMLRWVXY_V[_]`d\[^^dddaedgdbfadbbfcgd`a^gfdadedd^\^STSZ­ÜÝÐ¼ÅÐÓ¾³ÍÏÅª¥©¤´ªh]flz}i_cqw}x}zwxyz|wwv}uoaZNStoZUX>4FRA?RbUC85@B1---<DF0*#+48-Ft}yM3LI110.8JnshZ]ge~X'"$/aQFL_´v©»³¹ÃÇÇÁ¼´¶·²­±¶¶±»¹¹¸µµµ±µ²¶²¯³´·´¶¹´·¼º½ÁÂÀÃÁ½½ÂÂÁÂÇÄÁÁÀ³y@7O`>3Ba~vdepxia¤¦¦¢¥¥¦§¤©¦¤©¦§¬®·»ÀÆÍÑºp.)$&'&$+-036.55188=67;681*-*-,)-4;79>60+738Xp¥¥£©£¦¥¤£¢¤¨¥£¦¡¤£¢  ££¢ ¡jjijngiggjieidbgchfhaefjjqy£¢¨§­­«¬ª«­««¬«®ª««£¡|rhZZKFHQJSYSX^\[^_Xb^]d]e`_g_a_ea^e^_c[aefa^ccfdeeebcib\Y[ROVÉßÉÊÓÓÅ¶ÈÑÂ°¤³²°®m_eu}xfpwvzz|~wxu~}|ws{xmcPKXxyuXT@:<?OVURL@@>@769-/=OM/&#$'-6Gfks\;:<6+1307c{pNN[zvo[2"%(_vI \q­«yy|©¼Áµ¿ÄÅÆ¾¼²µ°ª°´·º³¸±ºº±µ¶²³³±´´²±¬µ²º½»»¾¿º¿¼»ºÀÁÂÂÁÂÂÀÀ¾¢Z01=Wg]?@Wsftyvdv¥¡¤£§ª¨¨ªªª¨¯¬··»ÀÃÎÏÁ|-'((%)*-.,001/78/187145721-,.-/1017204,2-53Jew¡£¨ ¤¦¥©¥¥¤¡¡ª¦¤£¡¡¤£¡¢§¤ ¥¤  ¡¡¡kkjmjhkheehgedchahajgbegkmt{££¦«¬ª©§°¬¯«­«¬¨ª«©¨vhYWLGIJIPYWZ^_[^_]a^ea[abaaaadeh^^]_\_d`add`behcjljffad][WRUh¦ÕÓÙÓÈ¾ÈÔÆ³¬ ®¹¬§¢gaenzz~{jmz}|}~yuvx{|wsx~{kjWTOcolO;9B@BEKVHDN=9:;;29<PO6-')''44^cMlE+/:7D83=dwcJ@^x}tdC)*+Uu!/x°²zwux¤½ÈÄÀÂÁÅÄÀ»¸¶±´´±´³¶º³³¶³¹·µ¯±±´µ±§«±¶¶½½¿¾º»¿½»º¿ÁÀÃÃÂ½¿»D,"*G^qp[<Gxxhjw}dj ¨«©¬­©©¯°¯±»¼ÂÃÇÍ¼;&$*8(,.2-/2/6554:564/17344.*+.8,32690192:4<Wi §¤¥¦£¥§¦¥¢¥£¨©¦¤£££¡¡ ¡¤¡¢£¡¢¡   ffhgfjhkghffgdcdgcdecclbemqu §©©«®®¨ª«©ª¨ªª«®¬ªª£tc]PH@JBOPSS]U[W]Z^^`_a^]\\_^_ehic_^a`^\c^`a\fjiikljfbfc`]`XYXvºßÚÌÃÏØÌ¹¶©¢¥ªº» «hbY`s}~wv}yvf`z|}ytwzppz|zv|{ohg^rnZOLHRMJIGB@IT]ROL??>811=\bI+'#%&*;<dH`r=-5;59;5MaICTnv]SD+&1L|Q'F°®zmwzª¼ÆÇÆÄÃ½Â¿¿¾¶³µ²°´µ³·µ­³¹²µ³°¬±­´±®­°°¶µ½Á»ºÀÃÂ¿»Â¼¿ÃÆÀÀ¹©X6/--8^krhK=_oh{to©¦¬ªª®¬®³´²ºÂÇÎ¿a8,%%()))/-/.2423144742:4>7,0,-,*3*554221--51H`o ¢¨£¨§¦¥¥©¥¦£¤¤¤¦¥§¤§¥¢¡£ ¢¢  ¡   ¡jjkjjgiglffddcdbiddbbkeihlrz¡¤¨ª«ª¬¬ªª®¯©ª«®¬¬­¬©¤ukYUNGCFGNOQW]YY\[]`c_]\b`ae^b`cbae^``baeba^`cddfelfejff`c[UZS_¥ÜÜÍÕÚÎ¼Ä½«­²¶´®lYWf~zy}tibk~zy{zwzxsxy~rxoV<6J\\FCDOZWSECLagPF=D?>-*28]wb-*&#&&(HLm;`X,-*,+**3?_RICTV`^Q=&%M|*,n¥~tt¬¾ÁÄÇÆÄÀ¼¿¿¼º¸¸µ¶¯µµ´µ¯³·´µ´°­®­­±®´·°ª°µ»»½½ÀÁÁÁ¿½½¾ÃÀ´¶qUMGF926GjmsmQEcjtyoi{©¨©«©®¬±¶´¹ÀÉÊ¹~;2*)4"%&**,-/25764336:;;=472/560-+-12206.0377:Sdw £¨¥§§¦£§¨¢¢¤£¤¡¨¡¡¦¡¤¢¡£¥¥¢¢ £ ¡ kknjhlqklfhfgbddiacdgef_aosy¦¥«¬­ª­ª««¨ªª¬¬¬®­©£¢ wf[SI@DKIWTWVYYYW]^\ZZ`bbZ_c`^]a`^_cg__^_d`b`cgkigfljlekfc_\VTXÆØØÝÓÆÆÐ½© ®¯«»°¦ s_bi~z{|slnt{}y|y{yww|{|~xwqcM723=C;MQSQ@ELVVbVHA=A>+$(,Trj@(('(+)/QXl5]D)(&/-6:<V[PE3>Hdg;0&-c£l!)F¬q{yw²¾ÀÃÆÈÃÃÁ¿Á½¼½ººµ·µ¹¶´³²³µµ´®°²®«¬°µ±º¯±°¶»½ÀÁ¾À¿ÀÁ¿¾¸½·¯¦qZRHP[V=ERgnue_Oszl|}bt¤¦£§ª­©¬¶¼ÅÎÍ­f3%),&$ #*/-+-112448?<64EC54@62/40+/03607:4100?DVk{¡¦§¤¥¦£¤¢¢©¦¥¨¤¦¢£¢ ¤¡¢¢¥§¢¢¡¢¡¥£ ttkmhondlhjjnhbcabacdceecnsw~§¥ªª¬ª¨©©¬­®°®«¬¬¯©¥  wg[MMKCHLOUUS]^^d``^[h`a`b_b```_Z^bcid_bacgbaeejcgfgmhgddga]YUW_ÌàÖÊËÔÏÂ¶¥¥¯§¹½¦kdmz~}xunjpzx}zxzyvx~~s{yumj\eciZTMF>?BTGHE@A`ZMGC=<=4-*-1<_~r6)%$,&*2S`a/d8*./4=PJ=>A2--8Wi\)'$6{8")Fhy^mwµÅÄ¾ÂÆÄÁ¿À¼½¼¾¾¸¸²¶¹µ²²¶·¸·¹±¬¯­ª¨«´µ´µ²µ¯¹ººÁ½À¼¿½»½»¶»¸²³¤w\LI\h_Q=FiffebJnovlg¢¦§§®°®µ¼ÊÐÆ^4())(/5('+,-24//-/13;7>87D41//,4*-)+)/23712.1?@JWp¥¥£¦«ª¨©§¤£¢¦§¦§¢¢¡£¤¤¤¢ ¢¢¡£¢ ¡ £gglmmlogrjnlhigc`abcecfbejsw£¥¨§­¨«­ªª®®¯¬®¯¬­¨£ |tcWWMJJFLPRRSX\Y]`\]^adecf`adba``]a^h\`]dbab_efefkhlmiffebbc]VTVl­ÝÎÌØØÊ¿¾´¨«©´¸¾¯tf~{}wjktu~~}x}zxv||ygihiivtkinZWSRTKB<=AUbZH;A..4,+*,@^qk*!!%**)8Pad0\.,*=:974;34,0'>dsM'""@m%@[e}ut`g¢¸ÀÇÆÃÂÄÂ¿ÂÂ¾¸ºº¹¶²¶µ³°­¶¸¸··¶¶¯«¥¦¨°´ºµ´²µ±¹º¼½ºº¿¾¸½·°¸ÀÀ¾»®§fQKJWnlRMX_\^aW[|ruvhd{ ¤¬®³µ»ÂÈÎ¿J4**+5(1%,',-..36213-9854?58/4)+.8/*,.+4161805BDBQgv~¦¨¨§¦¥©¦¡¤§¤¤¥¢£  £¢¢£¤¢£¢¤¢¢¡¡ ¢¢¡¢¡ ¢¡¡   kkjhhkmpjjiejcgddabb`]\b`jow §§«­®­­ª¬«®©¯°«ª­ª¦¥¡|ufVQJJIKNUUWNSW[[\]]_^]baabdg__aabfaba`_^cd`ceglihgkhflniffeb\YSWÂÍÝÙÑÈ»½Âº°¬·»º©kw}|{}urnpz{~~}}yv}zorzvw|v{yvqqdfheY[UA9>DQZZO;4.+(%&"0CBXmh-))$*0.2Vb^1e.).7<8/1;:5412>nvB-!,KYBp~{Qcpbn¢¾Ä¼ÅÆÄ¿ÁÀÀÂ¿¹¹º·¸µµ·°¯±²µ´·°¹´®ª¥¥¨«°µ·²±µº²¸½¸¼º¹»¶°³µ²¿ÂÃÀ¾±«w^SKDJotcKRdaXeXp{u|ke| ©´´ºÂÅÊÃ·?,,')*.*).%*01357:5611957:?4811,.))01/+/9:6=128GEDXry ¨¦¨¨¥¥¨¢£§¢£££¥¢¡£¢¡¡ ¢£¢¤£¤¢¤¡¢¡¡¡¥£¢¢¡¡nnmjkjfnhbififfebecc\b^ccfot{ ¦¦§§®­­«­²®­¬¬­ª¬§¬£wiXQIFIGMNRTVS[[\]YXeca_ca`ab_a_dcdb`_^_bee_eichggilihihgdfa^`[TTcÒàÑÏÈ¼ÁÄÇ¸¶»¹®i] uu|tusz{{ztztlp~~~zuyt^_dbYNK>HFVb^^U=:+-&%)'+FBfrM)%/*0/(/VJZ:X8&*-;;1+/:5)('?ppB)%4o}dm{AVnq±Ã¹¾ÃÃÀ¿ÀÀÂÁ¿¶µ··´²²°²±´´²´º±·±­©ª«¬®´¶·¸µºµ·¸»¹º·¹²´±¸¼¼Á¾Â¾¼¶¬n\\O;Ck|i[hgY_we|x}yrw¦²¸»ÇÍÊ½qC/,/&%,*-/)*14.677;94312<2675:21100,6-,,318:194:DGPbr~|xy¥¦¦§¦¦¨§¥¢¥¡¥¢¢§¦ ¢£¥¥¨¤¥££¢¢¡£¡  ¢    ¢ mmmlmkllieefggfdgdbf`b^b`ekry¡¨¦¨¨®«¬­«¬®°®±­­¬©¨¦uhXQJKCIKPKOWVW[[^Y^baa]bbca^`_bebdcfdbbc[hdehihjjnlijhojjieaa_YPYrÁâÏÒÌÀÀ¾ÇÄ·Àº¥wXhttxy{xnuu{y{{y}|~yxozziPFIMVXMFKHHSRe\heA931.++'%(2Fkz{@&#%$68@AG>=>J:2/EK=;117<-/-NoWI0+M~hx lFg~¸¿º¿Â¾À½ÁÂ¿¾¼»·¹µ¶µ®±²µ±³´³¹³²¬©¬°­¬²´¶¸»´¶³¶º½¶·²´´º¹¹¿ÃÂ¿ÁÄÁ¸²¢zf\^YGEpuohmfnk}zzxª·½ÅÈÇ¬|Y6--+0.)**/-+,0358935112/392:7269/--000+-17698.,8;:IZmx{z¥¤¨¨ª¥«¦§¥¢¡¢¡¢¢¤¤£¤ ¡££ ¥££¥¡ ¡¦¡¡¡ ¡ ¢¡   kkkjnkilieijhgfc`bdea^^b`hmqy¡£§©­©¬­­®«®«­¯¯²°ª«ª¤¢|qiZSLGGIKSQS[RWW[ZZ`cbd]]\_``Za_dfa`ecchgebbdghdijkkkjonjnndgf]VWT[Ô×ÍÆÂ¿Ä¼¿¿Æ¼pg}tpt~~{}xiv|}ywysw{|~rqe^rwofVD=C]YI@QWS_Y_`gQD630-2+*#/9Rxlq6"#(+1\a*:5:9569?;MWZQTQWN70\xTFE2_{x\y}jSw¬¸º¿¾½¾ºº½Á¾»¹º¶¸´·°±²¸²°²·³³­®©­°±­¬±²º¶ºµ¹µµºµ±´º»»»Á»ÀÆÆÅÅÀ¾¸²¨n_XY]JHtkjb\[\y£³»ÁÁ°h;23(0.,-/,+*)).63<29:846/17432:711*/*+/2/.2357525:=AHatwz ©¦©«¦¦¨¨¢¤¢£££¢¢££¡¢¥¤¥£¦¥  ¢£¢¤¢¡  ¡    ¢lljlkljldiigdeccbbgc_a^^\giox £§«ª­ª«©¯¬­ª«®¯¯¯¯«ª¢xeXXKKFGFONRQU]V]a\\g`a`ad`c_bc`a`_^badfb`cediihdiknkqponiljge\[WXRtµßÏÇÆÆÂÁ»ÁÆÁlv¥zqvpuyrpknx~vzyunlnuxyzwumqjedZ[PG=FOKGS[XLYcadY?B86985*'01<Zn`n?&-0A5V[*.1//25?<?O[Xa]]bYSM`yYPNKD{sU_h{|ku·­£¼ºº¾·º·¸»»½º¸´¸µ°±±°³²¯±°®±¯ª°­®¯²¬¨±µ¸³ºµ¸´µ¸¶º¿Á¼¿¹ÁÁÁÅÇÉËÇÅº»³|g[XZRBKxkM\DS>h~¥­¶¬Y@40,'(*+/-.4/*),34877B8866?98599559-(')+3,.73=3/06BHCPkv{}v£©§¨¦ª¨ª£¦¢ £¡¤£¥¤¥¥¡£¢££¤¡£¡ ¡££ ¢ ¡¡jjklkpmghhdcjhjeegc]_]]_]agp|¡¢£¥©®¬¬«¬³«­­¬­¯¯¯«¬£rdYOLDBDJOLTR[WVY\^_^a^`_^ab_`bdadca`_bcb``aiilglhjumlqkikmhl_d_YYUbÛÝ×ËÉ¿Â¿¿ÌÃ}¢~|xrstvpdelq|}upvrieo{|}nll[A>;APSKCIW\GL_h_dGBE6>4B60**6CQUHeF*-68AkF)-1453.2/A7;>HB:4E9<Tj9IM@>ojTUbyj·­§»¹¸¸´´±··»ºµ¸µ³®¨¬®¯°®²¯­­®²«²®®´­¯«®°³²´´²±¶º¿ÀÀÁÀÄÁÀÄÅÂÃÊÊÉÇÄÀ¹§qcWWXO:@gYRURG@¥mR5(*++&*.,)03221/.089482657:7=99;8/+***.1.124135++2=?LXk~~{|} ¥¦©©ª¢¥¨¤¨¢¦¤¡§¢¥¡¢¢¨¥¤¢¥¡ ¢   £££¢¢£¡¡¡¢  ¡   mmlnoklkegghfheifdacaa\\__js|¢ ª«­­®¬«­©¬²¯­¯ª­ªª£ti`RL@EJGQTTSTZ]XZY[c^_\ca`b\a_\_bdbcea]cadaeihfnjllkprpnollkif`]YUZÕÞàÕÉÃÄÄÁÉÀ}xyywswrnbjtw{ywnljpjo|rx|qhUC@@EL>=;GRPCI[bT\FFI<86302-,=CHUQbO2>FFEH-*/,..10228/+089<),+-B_7LJ?DkcE^{u|¥ªª´¶°³¯¯´¹µ»¹¶µ¯­ª««©©¬³°©«§­¬¯³¯­¯±¯®²®±°­²²º½ÄÄ¿ÃÀ¾Á¾ÅÃÄÁÅÆÉÉÆÂÂÁ² yg^RRQE.6~~URSY@Z¢{qqX8))$)).3,)/++.1513387:=;46<=576783/,')51041:0/516<<IQcx{{~~¢§¨«§¢¦§¨¦¦¦¤¡¥¦¦¡£¢¢¡¤££¢¡¢¢ £¡¤£¡¡¢ ¡ ¡£¢£¡¡ kkkjlkfigijgedcgb`_bb[\^]cinw ¦¥««­¬­«¬«®¯¯¯¯®«§©vlZTMEDHHLNPLSX[YX_b]_b^b]a_^e__\a^bafeabdcdfdhgmlgomlsmojkdkbcd^_VZÏØÜÞÐÆÍÅÆÅ¿¤¯{|t~~xvgeior{}~qqlisz~xx\\|tkXNG@TF;95:FG?AWZ`YHID75/0,0,:BEBE@^`AWMB1**.5-0,,--/1041/0,($#*;V<@KZK\Z6Qysxs§´µ±²©®¶¸±·¶²¯«§­¦§¢®µ³©ª¯¯®«³²ª°­«®±±««­¯²¿¿ÃÈÂ¾ÁÀÁÁÀÄÅÄÃÂÄÆÄÅÀÄÀµ«ob[JAP?,;xyVaVE?{}uk[9'#)*-..&+,.+26.656:9:<936367<582.).%),019:5810/8B@K`l{xw§¦¥§£§¨¦¤¦¦£¥£¥£¡ £¤¥ £¤¤¡¥£¡£¤¢¦£ £¢ ¢¡¤ £¤£¡¡¡ hhppnjkfhhkgeg_fhf`fa[Z`Z^gqx¦¨«©©¯¬°¬¬«¬­±°«¬«ª¨ wl`QIC@HHQNWWR[YUW]_e_aeb`_b_`e__\^b^aa`bbddcdigjjikqkssyjvjoigb_UW]ÐÔÓÙÙÍÉÄÉÊ½«µw{~||r`_gts{|zuvt}sn|}q\Ny|yqX@>A>GF;89698@XaMTOCB<D2/553?EOB3>^e]X_K125-.+//..14062.1)01%))4OEQhlRSX7Lgjtx£ªµ¶²­«²³µ²·²°ª©°©§£ª´±¬¬®«­³°´±«²©°°¯«¢¨ªº¾ÅÄÇÈÄ¿ÃÁÃÁÀÄÅÄÅÃÅÅÅÈÇÄÀ·«sfa]KIH8)=mY]TP5_~riS82($',+)(++/,47;683858;;>786:520.5.-)%)0138121/0=BBNbxywv¡¥¥¨¦£¥§¨¥¥¥£¤¥§¬¡¢£¤£¡£¤¥¨¥ £¢ ¤£¢£     £ ¢¡  ¡iijlhiiikfeijddfdecea]ZZVbhnt}¢ª¨¨ª¬«©¬ª¬¬¯°­¬¬®§¦¡um]PLCEJNSJPRT\`^_\aafdfbcgefbf__`_a`da]cdgdegjighmnssoknkpkoihc_UUZ~ÓÛÕÔÙÖÇÊÄÉ¿µv{}y~zljny{y}xwyqit|}~vcZxvtmccVBOF@=:57=.-5<UcCRDCGLQA6=42:FT:'3fjofXI('(-.4/1.20.-4;2+-.,-)+@]XfxfVV]?[ ¤¦¬±®³±°´·¸¹´·°©¨¬®¤¦©­¯«®°³°³´¯°¨«°¯°­«¤¡®º¿¾½ÁÆÈÈÁÆÃÅÅÂÇÇÇÈÅÅÃÈÊÇÂÀ¹¯yd^eU@;=+%<hU[NCArtgI320*'))&'//-28<=97645::@;9>9C?5406)2"(---/6210-85=FYm~~zv¢¥§¨¥©¦§¥¤¦§¦£¥¡¦¤¤¢£¡£¡§¡¥¥¥£¤ ¡¢¡¢£ ¡££¢  lljgmhgijfhifefb`ec`a[ZXWddo}|£¦©ª®¬ª©®©ª¯°­¬±¯®«§vhZMLDCHMPLORSY]YWY[bdaa`dd\abdd_gfaeca_cbehbhjicgmrprprnlnkllkb`ZZVÒÜÛÒÖÚÎÎÆÂº£wquv|w|wvrxv|zzsptptx~{vn[Z{qiXVSHJPMK<=:1/(*88FLHMC@DEUPG=;'5KQ7%6p[xw^W2(+*/:-+-0/50/:/))+(&)+@_kjWTX`Nr¦ µ¯¬©±·°°²´¶º»»¶³¬­­¥£¥ª¬¯¬²³®²´³®¨§ ¯³¬¬ª¢§±¼¼ÀÃÂÂÆÉÆÀÄÅÇÄÄÇÅÄÂÅÅÇÇÃÉÈ¼µ°i\bNQ?7/'0VjbJNLf~u`;-,.%,)%(++,.,1:8968556;77H:A941,.3,,*,+'..802.575GHasw~y|¢¤¢¥ª£¦¤¦¥¢§§¨¤¢¤¢¡£ ¤¤¢¡¥¡¥ ¢¢¡¡¢¤¡¢¢¡¢¡¡¢  ¡ mmmgkigkeeiggib_da_d`YX\[cgo|~©¬«¯¯ª«®­®¯¯®®±¯®¬£ vj]NIGEMKPNXTY\_XW_``\_cb^eabfb_bc_ce]]_]bbedeimfjkpprnpqnqnijdea_ZY|ÒÙÜÖÓÚÔÒÍÃ»rmjtyz{qqy|{~zugeluy}}wieXNgb]OG<CVYNB33-/,.*04<HTPEUCGT_K<8$8JN>(,]Yzl]4(-.2+00040,*03*.!'+%6<RnuVHS]ld{°¥½¶µ®³·¶µ¶¹¼¿¼¹¶µ®¬¥¢©¨¨®®°²±·¯­±ª©­¨¥¦«´»ÀÄÅÅÂÅÈÉÇÃÃÄÅÂÂÆÅÆÂÈÆÄÆÄÇÇ¾¸¬§raXPMF70,'4lbTGVK{]=2+2&+*()/,3-1-0=956:;87;3:B786213D./(,'*11820-/.9KVl|{v}¡¡¢¡¥¦¥¤£¤¥¢££¦¡¡¢¤¡£ ¢¦¡¤¢¡£¢§¤¢¥¢¢ ¢ ££¢  ¡¦jjcjfghkiilhke`acbc_\\WY[\jru~ ¦««««­¬®®²®±«¬­¬¯«wl^QNGFANORVW[^[[\ccbcccbbgdcjcfbc`bdcb_c^_cdfeijoslqpqovpllijgfc\XY|ÏÚÙÚÑ××ÖÌ¼¤uiejv||ssytw|z~upgffx~}yl]VCJSD203JfXH@-33))/*.31EaJ;ECWUZYD(,7GP7#.;Zu|nK)++0-18/+))(+,()"#$&5[iozjON^o|±²¶³¶±¶²µºµ»½»¸´´°©¨¡¢£¤¦¦¦¤ª±µµ¯¬ª¢¤¦©§¯¸½½ÀÃÃÆÀÆËÌÊÆÆÃÄÂÃÃÆÅÈÍÊÄÅÈÂÁÀº®¨xd_QI<6./+2M^UJSFp}pP44+-,*.,/10/0/334<65D2568;;94;=1-1.*0*)-/6735**1.7Rat}}¤¡¡¤¤¥¥§¥¢£¡¤¤¤¤¦¤¡¡    ¤¤¤££§¥£¡¢£¢£¡    £   kkkggclklikndhfdg_dc`Z^ZX^en|~¢£§§§¨ª¬­¬¬°°¯¬­¯®­ª¡¡}ukZQNGHKHIWVT^_[^]dcde`cgdfhbdbbbhafbdjcdcefhhifljontsuvqpqopggna^WZËÙ×ÛÔÏ×ÙÈ¯tdbovz|utxyzy~y|micprutv{u\B44<8.+8N_I53*-20)1.237IaXI>EFQT`;*.5HUB&'-Fut}a9)),--014*/+-"!!#&(6_w|mu\MZv£y±·µ³¶³·¶¸º»º½»¶´³«¥¥¢  ¦£¦«¬³¹´®¬¦¢¥­´¸º¼½ÁÄÃÈÄÇÈËÊÆÊÇÈÄ¿ÃÈÆÅÌÇÉÆÌÅÄÅ¾¶¨tg[RRB//2/+5MSOHI\`F,94,-512-40+.04425;>=8:;HA@>>>530+/'32(0.8311(,37:Xjx|} ¢¦£§¨¥¦¤¤§¤§£§£¦¡ ¡¡  ¤¦£¡£¤¢ ¤£¥  ¢  ¡ iiokhgiigjhgigl``ec_`WY[X\cit£¦«¬ªªª®®«­­«¯­®ª­©¢|pl\RMHIKFMOTO_Z`]\d]bb`ab_^gaaaeah_cd_`dbeeafjmfhlprtsrrtqrmrmjla_[[zÀÞ×ØØÎÒÚÐªxbd`kpxwopqvx~z}umipv~vzywuQ.'*1;4+;SO=80++,..4..*/<X^WA9@TV`M*&.?WP%)+9[g|[E>6.-(/)*&)#!"$(%.^zgi_[v´­w¥¦¼¶²³´µµ¹¼À¾¾¾¹´°ª¢¥¢¤¥¨«¬°µ¶²°¥¢¥«®µ¶µº¸ºÀÅÃÄÁÂÈÈÈÅÈÇÅÈÆÇÅÉÇÆÍÌÌÍÇÉÆÁ¸®vjZWVB4(-+()DXTQ@Q¤X806:35,,+0++30/:8:4:76;8;@F;9B963-3/,+'.6/3..++15:BZj~y ¥¤¤¥§¢¡¤§¨¦¥£¡¢¥¢¡¢¡£¢¥£ ¢¤¤¢ ¡¡¢ £¡   ffikfhhmeoifmbeaaa_c_[\ZX[ctx~¡¢¥§®©«¬¯¬­¬­­­ª¬¬©§¤£wn`TLLCKNLPSVXYb^_^]cadfhd_hice`caaeb`gfb]dcinjlgmmnotqnorroplljca]\n¶ßÚÕÚÕÑ×Äodgfioussnsqszvsrpov~~{xvq~}vxr]3-%)/<2CYG@20/+,0,027-/2E[PR:>JNYK<+-9cR$#)71Rqjh]^[G4#"%*$!%$$!2ZtZSeu³¶¤w¬º»¶¯µºº»ÀÁÁÀ½µ²§¨¤¤¡¡¡¥¤ª¯¬´·¶²­¦¤ ¥«­¬±¸¶¸º¼ÀÅÃÂ¿ÂÆÊËÆÉÇÈÇÅËÇÌÊËÍÌÉÍÊÍÇÃ¹¯£l]USG3+(.'%6YQL;I  £V5/1+*(/+0..1/22176=4@969?>=>;=;+4-*--,,//62/-///5>Pgv¢§£¤§¥¤¤¨¥¦¥¥£££  ££¡  ¢¡¡ ¥£¥¤¤¢£¢¢¢ ¡¡jjjhknhneibefbeedddba`]Z\djly¢©¨«©¬¬ª®®®¯®¬ª®¯­§¤ ~ufbURIBLKMPROW^e]Zcc_b`eb_eeehggf_ac_aacihlfdjfjlomlnnopsqpqmmmngd^^c¨ÝÝÖÚÚÑÍ®xmfgjighorouvrwnfgpzzz|md{smr{whV0+%*5?[^5-.++4)***.//+5ALTPM;?HUTD8'8gS#",9*;bbVPdmbW2%!)"#!'-O¢e\b|´ª¡¤y{¯½º®¯´´¿À¿¿Á¾µ®ª¥¢¥¢ ¦©¬µ¹¶²°¢¢§­­¬°»»»¼ÀÀÆÃÀÄÃÆÈËÈÉÇÉÇËËÊËÍÌÍÏÍÎÍÍÉÇ½´«ld[\J3'$/0,0PSK@Dr¢¨wJ30-..3+)+-3,41/2217826:A>8=>:37./6,0.'/)316-41978HWp~¤ ¥§©¤¥¦¥¦£¥¤ £¢¢ £¡  ¤¡¤£¢§¡   ¢   ddkikngigf`fgcbeefed\bZ\[dhqz~¤¨¥¯±­­©«©°±«¬®®®ª¨£wfcNGHHFSSRRT[][Z[`^a]fbffddecikda_eabbcdfhgghihlnlnrmtvwuoompnkj^facÎßÛÕÚ×Êkjihjjhijpwurwxumt{~~jWwzrpqqxnnuhF,'*,=W`U,-(.%+.63-*10+027IUND9>IJD?0DcY*,<<,2QW1=?JA=.)%##" )U rlhw¸µ¦¢z »º±´¦¶¼Ã¼¼½·µ¬ª¬¡¤¢ ¡§°´¶»±°£§¨§¯¯´º¸º½¾¿ÄÄÂÂÆÉËÈÉÊÈÉÈÊËÌËËÑÑÑÐÏÑÑÎËÀ¹®¤shXYL>-%)./.AITK>e­¢|L,,/20*+.1,1+336145491?9=7?>DG94/*,+1.2-/2<1)--06>N^v~¡¡¦§¤¢¤ §¢¤¢¤¦¡ ¡¢¢¡£ ¢§ ¢  ¢¡ ¡ ¡eefdcicgihgaedh`cfcgd`[XY`fnv £§§ª®««­ª¬¬°®¯®­­¨¨§ zmiTQJECNLNTQVZaZa[edda`f^aefafaegbbefcfcdjdiffgjmijpoqwvxrqoopmkhc_]wºÜÞÖÚÙÉkhpnqnrihpupmmvpty}sVespnpoeUVOV>..23Q_aM1*)(&,162.1:204.28SSHHEBDAB9?`W*->?6;VZ''+++(%$*  $I¤pkr ¹½§£¤¤¢¯´µ­£²ÁÀ·¹²»³©¦¥ § ¤ ¤£®¯³»µ¥¢¦¬«­´¶²¼¹¿ÃÂÅÄÆÆÃÃÉÎÊÈÌÅÇÈÊÊÍÏÎÓÕÓÒÐÓÓÐÇÁº³£yk_`R>,(&+-.5BLH?V«¥uM1+1//+)271,-4447:?4;68569@A>5.2/,-'+')-.63.+--68COo}~¡¡¡ ¡¡¡¡ ¡ ¤ ££¡§£¡¤ ¡hhhfigjfkehhgfhgbbde_e`Z\ckpw¤¥§©¬®ª«¬¯©®®±¬®¯¬©¥¢wkaQPCCGNPQOVZZ_]Z[`b^g`c_`eadfjdechdcecfbfihehdhip}|jotuspspsqppjda^j§ÜÞØÛØ»qmmorpqsmnvrkkbm}|wwzmWVbZ^NK@8@CAC44..Tab?-*',(,3:..7=10.402@PKI@<D9@MFXO(*J:4,X^&)&#-'"" %As£«qgs¶¾­¥¤¥¤£¥£««¢°¿¾¶­¬¼­§­©©«¡§ ¨¢®°¶µ¦¤©±­¯´»³¸½ÁÄÂÄÌÇÇÆÇÈÊÉÊÊÇÈÉÌËÊÏÏÑÑÒÐÓÔÔÐÌÈÂ¸¦lb\PE1%"%-.0?ELF<t²®M/.105-.0BD68>84894566:=AB8?@:403+/.+1222:70(,+46L_t{}¡ ¡££¡¢¡¡  £§ £¥¥¤   ¡¡    cccmgelfjdighgdba^b``^[[ZXclu ¤£¨¦«©«°««¬²±®«­®¯­¨¡zs`YPLHPQJOQTT^_]`a`eggcjdbilibhcbfegeedhdeiffabgo¦{lptrvoqvsnplfdb`hÑàÞÜÕ´yrsjptzwuspmofbhz|ywlcgP@?:HWOQIKM[[ZB8.6Th[2-(*-&-@B7-@91*.4+/:;AL9:A54HU]P16`:+-?op+-)"%%!"  %5o§sfr´¿±©¤¤£¥£¨£¨¶À»µ¬¶´«««¨©«¦¨¤ª¨²³¯¦¥§ª­¯³¸»·½ÁÀÁÀÇÈÃÁÊÈÉÉÊÇÉÉÆÉÍÊÐÐÎÑÒÒÐÐÓÒÐÉÄ¹ªxeaYF70&&&&,8ELO7U¨¬R/7:6:/9+5413A6554:3;97;AA>@;42/,.0010467857+*-16Phx| ¤  ¢¡ ¡£¡£ ¡£¡£¢¢     ¤¡¡ccemmiebnfjleggbeabbd^a[^`dmv¢¢¥©ª©¯®­­¬¬®®²®­¬¯®¦¡wleXUHFJMNLTTVZUX^ba^hjcehfekkeikdcdi`becadaceiil¹qnmrvrvnrrkokklebg~´ãáÞÔ¦tuqjtt~wssrfdch~{^K[ZPP<G[XN867NRG3*,5flJ4,)),-6EE9:;9)+-./:413C=A963DZ_c:Bj7,/3P7)-*%$ #!#3j xki}´´««¥¥¦¥§£§¯¬¢°ºÀ¾¼·¶±§¦§¨ª««©«¬­«§¢ ¢©¨«­®®µº¼»·ÃÃÀÃÃÉÆÄÈËÈÈÈÈÈÊËÌÎÎÒÏÍÎÒÔÐÏÓÔÍÉÄ¿±¤zlbWL60-,*&*)7ER?A¤©¥d93@>52*3;50/:6689869;:>C<CC>674.*+*03165>6/)-+-9Pq £¡¡¡ ¡£ ¢ ¡   £££  ggjfegehgfedgbfbic`c^^^[X`ihu¡¢¥ª­©¬¬«¯ª­²°®­­¬­ª¨uo_XOIGQGMOTOX]Z\\^bafhgbjhgfibjlcgbadgacccb`efo°£wmnrnwttppspsnomgkioÛäÝÔ¢qluqqvxw}slb`qvz~xrizkg_IFQRB/-3>7.)++<hnL-1+**/=F>13:413076C.+-;=?9216Ocnf\z?6,2;F$#'""'#(+b¥tq{ ´¹¥®­¨¨¡¨§©©¶±¨¦¯¸¼ÀÅ¸¸®¦©ª©ª­ª«­©¯ £¥¥©¦­ª°°º½¾¹º¾ÂÁÁÄÆÄÅÅÉÇÉÊÉÉÈÍÌÐÐÑÐÑÐÑÒÐÔÖÔÑËÃÁµ¤~n`QM::1,%&(*/6KF,v ®©k@3329.(.-14337;9;<9:C9<AA<<742.-..+2.083361)*,.D^t£¢¢¢¡  £¡  ¡¡¡   ¡jjhkgkikchffhcgccbd__`\Z[bbqw¢¤¨«¬­­­®°®®«­®¯«¬­© vnfZRFLNEQMUWY_]b]bgbefdgiigkifhibhebbeced`cbek¦xpqnxxrpstprvttupmpdp¼äßÖ«wmuqrtxuyxsdi~x}z|}zsoohbUXD3.,/2*1%.47imA')).-@KG7+5</,152A46)-6A;7741?aqiw~O?*55gX($""#5\©{v|·¹ª©¶²­ª¥¢°£©´­¬¯®¹¾Ã¿º¶«§««§«­¨¨«¥ ¤¥©«¨¬­³¶¹¾¾¾¾ºÃÃÅÇÊÇÆÆÆÊÍÊÊÊÈÊÊÐÐÏÑÓÑÒÒÓÔÖÒÎÉÃÃº§scQM<40(""&)25JQ0f¬¦rJ7018<./2645468769<9<<>BF@<5622-*)02-76<58(,)*4Jbz¢¦¤¡¡£ ¢ ¡¤¡ fflqjggkjfeedfgdcbgda][[Y^fqu£«ª­ª­¬¬¬¯¯¬­®®¬­­§¥¤pkcYSIDFRTSUU]`\^hedcffefgikjkdighcfbdbdabfgchnrqoruqrqrrutsusstnmmlktÙáÜ¼nqtunqorssr|}}qwvigjj`YS944559&($-93Zh@&'&.0GQ>07@A*),7475)+-9G:-873GHfknyXL::,]i@$%-Y {s{´¾ªª°¸¹­­©¨«­¦§¦¦µº½¾¿Ä¾³ª¤¨¬§§ª¦¢¥¦¥¨¦¨«®µ¸ºÀÁ¾ÀÀÁÅÃÄÊÇÉÉÃÊÊÊÊÉÉÍËÏÑÒÐÒÑÑÒÖÓÓÑÏÎÉÈ½«rfWPF6.%!")-0JX;L¥£¨¤hG6<15I9-28326:5;9==97>;@B<<;0-4,*/,0042654()/5<Yj ¦¥¢¡  ¡ ¡¡¢jjgljjgcegf_dcg``abca[\ZXajov£¢§ª¬¨®¯®¯¯ª¯¬­²«°®©¥leXTKGLSRUVV[[]c_ghfhehgdgmceeeeafcbbbacfjdjml~vmrnququxvuutupqvuvrniep|ÁááÈqvvqqmgmqw}|vuq}||iggcS=>75853C-(%&-(+Wn=(*.)8@>.47C3+/26=7010-C;0-0<KVIY[Ege^RS=g£o5! (Qxqz¯À¶¦­¹´º°²¯³²°¡¤¦¥©°¶ÀÇÅÊ¾°§¦¬­ª¥¢¢¤¡¢¥ª««ª¨ª´¸»½¿ÁÁÀÃÁÃÅÄÈÈËÄÊËÌÌËÊÌÈÐÌÑÐÐÒÒÑÑÓÓÐÑÏËÆ½¯tcUWG:,'#""'&1AYE?©¡£«cY88223C96;;1478<88>==B>AAB7>41-4+1./3355//+-37P_u¤¨¨§¥£  ¡¡¡eejhjehgedc^ddccdcb^ZYZ[idfhu{£¦¨«¨ª­®­°¯°­¯°­±­­¥¡or`ZQMORVUSSV[bdacegcdbcgddeceffhccdiaedfjgfhimsvqtrqursuxsvzytvsstsnpijs¤ÙâÍuzvuqqiir}|zyx}tkebc^H-0002?O>+&%,((0NoJ,368>2-,5<F/-2618B106:G<5%#-GiYMc;KX`]UVv¦]& *Evx{wª½¶¤ª¬¹³¸º¶´«µ³¦¢­¶ÂÈÆÃ¶­¤§¨©£¡¥£¡¥­ª©¦­±µ³º»¼¿ÂÁÄÁÂÅÁÅÆËÉÊÌÎÌÌÊÈÎÎÎÐÑÏÒÒÒÓÕÕÔÕÐÏÅÀ³¡{f^XM=3+%"()'1;SN7°§©©{aY@959**-58<1;45B@5@><;B=DC:80-*-02-/21570**'-8Rr¥¢¤¢¥£¢¦  kkikhkkjee``d_ij]aeY_^^\_`dlr}¤¨§©ª®®¯®®¯®¯¬¯®¯ª¬¦¢zlaXUNROS[YXZ\\\a\beadffgei`ecfgiagdjdblcejidmppwtrtrlpuvxuwwtsxsuvssrnmmÅâÐvxsntmj{w||{wh`^faL8;:/0@R[.$'("-'.EiX4FJN4*,.9B111.7646218GK98%&,7j\;fCAQF623NQ* @x©xov¡¶²ªªª®¼¸»½´´¬¶²¦£±¹ÅÆÄ¼®ª¡¥¦¡£¥§¤¢¨¤¨ª¬®ª¬³µ··¼½ÂÂÃÆÄÃÇÃÆÈÈÈÊÌÌÊÎÊËÐÏÑÎÓÑÑÔÓÕÓÕÕÖÑÐÊÃ·¢~ib]O=5-'"&()'2F_5d­£©©bmM,.1-,339?6;3:9=<=85<DC;=555.*-3530777<7-),3Jey¤£¤¥¡¥¢¥¡£¤ gggkhhheefbaece`a_\\\[^VY\flt£¨¨«¬ª«­°°°°¯®­©®®¨«~ukbWPINMPRW_`\`c^Z_abcfcfdaieiehjafbidhefhifflkv}loqonx|{txyvxvvxwurrroq|ÖØ©v~yrncuyzvxv\Y]U@.5/28R\\L**'**()+4YlL>><3.>AGJ0/*17F00,/=Q?87.'+7h`-JQKH.'"$.nh.!4i¢xyq{º«¦¦«®¬´¿Á¼¹º´¹¯©¤«´¼ÅÈÀ²¬§¢ ¡ª£¡ £¥©ª«®ª­ª°«±½»·¾ÁÄÀÃÀÇÇÂÈÇÆÈÌÊËÉÊÌËÏÌÍÎÐÑÒÑÓÔÓÔÓÕÓÑËÃ»ªwkYNH7-)*(*..*:V:P£©¨ª]tP/-30/46677<76959>;8<:<I<;B311.004578600-.33Rm~£§¦¥¥£££££¢¢¤hhhjggjgdbcef_d`^^^`^]]ZUWckt|¦©®¬®°­«°¬¯²¯®®°­¬¦¦wmdXPJNPJSY[W]]ba^g`fbdcccfgdefljjcghceffedhgfjpususqszvywv||vz{vuprvuvv½Ò«~{{qigqzoiQE.,0=2*Rp\h9'"'(.)*)4Hk_;1+//3L[F5,+469-,-2JT.3;(.-3RU*3LQ@*'# +EzJ,e yv~±ª§§¯°®¯¼Â»·º¹¹«|¯«±¹¿ÄÀ¶¯©¤ ©¡© §©©«­­¬®­²°¯¸·¸ºÃÃ¾À¾ÅÆÆÆÆÇÇÎÍÍÉÊÍÌÍÏÏÐÏÑÑÏÑÕÖÖ×ÖÖÑÍÈ»©wf^YM=0//('(*28TCH©©°Zq>-'14757;649:?8964<77=@981182/+-,1:8651*0,.9Ss¤§©¦¦¡£¤¡¡¢ ¢¡ddlfggj_bjdff`ja^a\\X_WXWZ`n|}¤¥ª©ª­­¯¬°¬±¯®­­®¨©¤¢tg_XKJKMNQW_Y\\_]`^cccelfeegdhfhidjhldfkaiigmkhmt|nov{tuzwzuwyywuywywtovxw}¸w~yriom^\B2-1A7'&AOcf2+(%67'(*+4IgK5$1.>VM44,;4.9*/*5XJ2=N.070-B-4NR>#" $3rZ0T}ovy¶¨¡¥¥«¯³³º¾º¸»»º®v¬«¸ÀÁ¾¸©ª ¡¥¡  £¡¨©®­¬­¬²­±°¯²´·»¼ÂÂÃÁÂÃÅÆËÅÃÌËÌÉÊÌËÉÎÍÏÒÑÓÐÐÖÔÕÕÕÖÓÑÊÀ°e_XLC7,-.')$-1T[<}§¨®£^m;3.7/&0676<5@=B@9;8;=><28565-31.-44422.'+)2E`t£¦¦£¤¡ ¤¡¤£ ¡    ¤££ ffeghgbfbffcbcd_ccc]Y^]UX[imx ¨«¬¬­®°¯¯¬°°­­­®¨©¤¡tjcSJIKKKXW\\Xaba[ggafcgdaigifiliceehhfihfhglmhnttvmuqqvtz{zuyvzyx~zyxuy~~pszvm{{{}u`SH1-6JC2&&+?mF2)(1D3'/+&)4I`:-);TWI8-*.7/9)+);_@*D\2,6&+/>5Od># ,O|g^rtoy«¯¢£¢¦¥ªµ¶½»¹¶¾»¸±s|§®ºÂ¿¶®¦¡ ¡¤¡¢¤©ª­©©«®°°²¯¶µ·´½ÀÁÃÁÅÃÃÇÇËÄÆÇÇÉÊÉËËÉÍÍÏÒÓÑÓÑÕÕÔÔÔÖÓÒÌÄ²£n]_VL=2/),*&'0FaAh¡©­£hYB3C<1+;52;9899@;A<:<<=;96,/1532.29762,*(.4D[s|¡¡¡¨¤ ££¢¢¤£¤¤¡£¥¦¤¢¡ ddfibicccffcaec[ae]c_][YX_dms~¨¤¨­«««¯­­®®±®¯®®­«¡¡ui\TTQKKORYVY\___]`bgedggdjdeeigmedhecfdgdimljlpprtwsppqprkqjsnnopjefy|qmqmtoz}}y|l_XN8/.EX8+!$%Dv?8*'IT20;)%%(3RH=8YaS<2%'(077*()?e:&:Z041$'3E3NzR  "1af |js£±¥ £ ¢¡¥¯³À¼¹¸»·º¹®£ª°·Â¸®§¦ £ ¡¥¤«ª®®«¬¬¯®¯³²³¶µ»½¾ÁÂÅÄÅÅÆËÉÅÇÅÇÉÉÊËËÌÎÍÎÑÐÏÐÒÓÒÕÖÓÑÔÍÃ¸ªtebXP<1+,('((0FdPh¤¬­«mXH0C8,).8=@99<?97??B??G?85/23/08826795,*+2ELlw¡¥¤¤£¡ ¡¢¡ ¡¡¢¢¦£¢¥¢¢¢ ¤ £ddhjcefjjecbdfa`cehab\YX[`blv¤¨¯¬®®¬¯¯°¬°¯³³¯®¯ª§sf`UPKQNQSRRX^]``_ef`eghbejfieinihjjfcffghiklkjskquvxsrnlqlollndkicegqwV\U|ygis~zzyrb[NF/),UZ.'"&$OzE0+:b4('8(&%&-6=Mbia?56'(/8:-*,,Qd,%-J;>8(03.-b`(!(>kzpn¦¼­¢ ¡¡¦¬¯»¼º»»º»º²­«´»¶§¨¦¥  ¥¥££¡¥¡¨¨¯«¯­­°¯®²´´²µ¸¹¾¼¿ÁÄÃÅÇÃÇÃÄÇÂÄÅÊÈÉÉÊÍËÌÏÎÏÑÑÑÒÕÖÒÐÎÊÇ¿¬se[XP@3*$%)(+07\IWª®ªXU-8<.-*08924<87;D>?@B@:71.*+3.1381812,),29Rr{ £¢§¥£  ¡   ¡¡¥¡£¤¡£¦¢¤£ffejfbjifbaicd^_a^_f^]ZZU_diyy¥ª«¬«®®®®°°°±¯°¯®««¥£vkdWOJLGNSUSST^^_ahbccffcfiihjgegkhddfbgkgikhilmqqtxwuzwvustsvqqqnpvuzqX[Tayzw_pz|yz~xlfWE+*=bY,'%!$O|R@.?O*$26</2-/6BkhdG5;)$!*95,%(6Xc)%*FQW8@D/'=wpA/#  1Squ}laj³®¡¡   ¢¡¦¬»º¾½´·¹·´¬¡´¸´¬£¦¦£¡¦¨£¢£¢¤¨¦¦¨¬°¬®¬®¯°±´´°²´¸¾À¼ÁÃÅÆÄÃÄÁÅÂÆÃÈÈÇÈËÌËÈÍÐÏÐÑÒÒÓÔÔÓÏÌÊËÆ³ve_aMC2+'&*((.5\GV«°ªdX-.902;7;49839=:=BF@<;>821.142/14539.+)30BXv¤¥¡¢¥¢¡¡¡¢ ¡¢¡¢¡¡§¤¢§££¦¢¥¥¡fffngcfhbde^fe^ab_`he^V[Y\dfu ¥§«ª¨¬­¯¯°­¯³¯±¬¬­ª© ~rg`WTOGKPRV\SX_]^adcddfhd`dkbiihffbhiieijejikknlmprwwvyvxxxuw}uwwy{v}~xKLarfq}{zwwrzohU:.2]nL&%!"'UZ>?53$'=,9>;<2FlpB8F54$&-+:7)&'6jL&)+>\\:::(+]t=(+($ (*Hxud[exº°¡ ££¥¢¢¥®»¾Á»·´¼·¸²ª®¸´«©¦¦§¡£¨¢£¦¥£¡¥¢¨§§««´²­°¯¯²±±³®®±µ»¼¿¿ÁÃÄÈÃÆÃÁÀÅÁÈÇÉÈËÉÉÌÌÌÏÐÒÏÑÔÔÓÕÒÒÍÍÅ³£vd`[U@3+&)*)'-4PHMx««°aZ65A28:>H;<>>;;;9DDA?9;861./72..565.2+,,3Jgz ¢¢¡¤£¢ ¢¢¤£¥¡¢ £¡£¤¤§¥§§¢¦§¤¡ ¡ ddffgeffgbcbab]`aaa_aZZVY]dht~ ¢¥©ª­©¬®±­¯°±­¯¯®¬«©smdWOIHKOLRUXZYb^bdbgegfdaffedehiiifhheihgjijopmqjquqsuy{xzuzyvuxyuvw¥anv¦¹¶}nys}||ppzuiV8/3BYyK*# $,K]QD&)*47#3HLCOhwVINH51''.(7>0%*Dr2*'*?]q=5*,A|:)#,3- !=uiVYp¸¸ §§¥§ª¥¡¨°¾¾½½ºµÀ¹·­®²·¯­²§ ££§¤¤§¤§©§©ª«®¯³°±¯±²±±¯°³±¸¸º¸¾À¾ÄÅÅÆÂÃÂÃÄÇÈÇÇÉÉËÍËËÐÏÎÒÓÔÒÔÐÑÑÑÌÅ±¥i`UN:1&%'&.+37SOGv¬²°lY68J25:@J<5:C?:8C<<@@?6./12@4252473,2**6ASjy|¢¢ £¦¢¨¢¢¡¡  £ ¢¤¤¨£¦§¥¢¥¦¦£¡ ddembac^gac_e```\]`_]_\XY\eiw¦§«­¬««¯­°¯­±®°°³­­£tlcQTNGMONRVW]_^^affag_`chblhgjgdddfghfhefflkjpnqrpswtqxvrwwyyxwyrwvv§®~½Áuttww~zstmZ:-.:?Yw?"% $+M_d4& $6$'/8GSenVOUC>1++--0<81+*Go.'(%7ct<)%,\f)+/82%#.cs^Yg³¹¬ ¨¦°«®©¥ ¨±¼¾¾ºº¸¾¼¶±¶²°´¬¡|¢ £¤¨£§®¨¨®¯®±±²°³¶µ°´±¯¶¶¶·¶º¹¾½ÃÂÃÄÂÁÅÄÁÇÄÆÆÆÉÌËÊÈÎÏÌÒÑÓÔÓÏÎÏÍËÅ¶¤j_QF<0/&$&+-(4CD9x¦±³uNGAG6?<RICA/2::A?;C?=:510/33/?36?880-*5;I_s~¥¢¤¦¡¢¤¢¢£¤¡ ¢  ¥£¡¡¥©§§¤££¤£ __ggeebgf^`fhbcdbag`_[]YZ[hin£¥¥©««¬­¯­±±±¯±¯³¬¬§ vk_USJGLNOTSW\X__bdecdfhefinfdgcfcbfdkabbffiikprsqqqtvpqw}u{uxv|w|}~­Znvw¡~{||}~tqxe@--7SHip, '#+/HfY)!(.3()1?Y`^PBF:90*&+)*+356)1ZX-"&&;ib<$#9j@+4?6-.*W¦`[b´Â¯¢¥°¬³²®¥¦¨´·¾½½¹¿½¹´¹´µµ¦jdh{{ ¢¤¥¥¨¨¦­±®²®°³³´±¯±°¯®³·´··¹¾Á¿ÂÅÄÃÄÁÀÃ¿ÃÄÄÅÈÆÊËÊÊÎÎËÐÐÔÓÔÑÐÎÌÍÅ·ª|eT>:6+)'((&*(.>Q1m¦³³~OBLH61?>@;97>:8@F:E=58121.2;./6285/+),2ASgv  £¤¢ £ ¡¡¢  ¢£¥¥£¤£¦¥¦¤£¢¢¡ ¢ hhhemcbhb`beaaadd]`^]\]_V_ehr}¥¥««¬¬­­¯­­°­±®®¬¬©¨¤ui]VRJFRRRVWRWX^_``acgdhlfghdhehheddgeicilgjhpoontnvwzsuywvwuxut|¨µ73=CCNYbu|}yql~q]4.2L^FvV!")%.:Zi9$%!/714GLF?;2=B-(+'%*(-00292.VF$$%,Sdl;#$Jm@DO:'!)E}tZc|©Å¹¤¨§ª²²·«¦§²¸ÀÀ¿¾Å¿¾¿»µ¸£mLHRetnyy¤ªª®®ª±³°³¶´¯²­¬¯°±²¯´·¶¸½½ÄÄÆÆÂÄÁÂ½¾ÂÅÄÆÆÊÊÇÈÉËÌÑÏÐÒÑÏÌÍÈÄ¼³ycG=6201*'*(-%,GX+]±²_CBB85?A:CJ@=@=EBNS>?68.0*640538>8/+013EVr~¡¢£¡¡ ¢¡¢¢  ¡  £¢¤¥£¢¢¥¤££¤ggdafcfed^_cddc`dbedd\`YYZ_jr~ £¥¨¨­®®°±¯±°°°±°­¬§§¡wkcWPODJRPWVZ_aY`_cfhihifdaf`Ygdcdgc_dbfghmjklktrvsuuuxxtvyywwuzÍÌ½¥E#%$&&'*=m|ymirq^TE.=?bFYl>$"$*4Ntq*""&<128?:40/.3?1(1)*+4,-433/,G6)((/eTl8(2[[61.(#:yx_cpÅ¹©«¥§°¸¹·«£¤³½ÃÁÀÂÅ¿½»¹¯ODGSY]djmgsy}~|¦¥¬°®µ³³¶´´³®±²®¯²®´¶·¶½ºÃÂÃÃÁÂ¾À¾ÃÄÂÂÄÇÄÈÉÉÇÉËÏÍÌÐÐÌÌÇÂ¹­¤oR@<7/1*&$%!%+.?_-P¹µ^?74>@D9848<=::HIFEH<5133.221/14311.2*1H]s ¢ ¤¢¡  ¡¤¢¨¡¡¤ bbgddaf`eddabcfeeca_`[_ZZ_dgt~¢¤§¦©®­°°±®¯°°±±±¬«¬ª¡yjaXXHIQNUWWSYZYZ_`edeiggiiglefdfjgbcagidfkcghlsnroxyqwuwvwuxuv¯äÊorV7%  $$)$H¥«{{oietjO904@Xe@j^("'*&:]i &*A+,.7329*34:0*/)+596-0773.IE.*+8_Hk=/3`A*$"*lb\l´Áª¥¬­²²¾¿»­®·½ÀÂÃÅÄÀ¿¾©xUSVX_a_fc[`hdcUentz}£¥­¯³²¶¶´±²²°¯¯µ­ª¯µ¹¶¹»ÁÁÀÁÀÁ»¾¿¾Ã¿¾ÃÁÄÇÉÈÊÈÌÎÐÍÍÎËÆÆ³®¤pdK?:6-+&'''')*.D`7>»´wQ243;FLC04B89A>EDE;9.4.2.00174685.)03:Rdw}¡£¢ ¡ ¢¡ £¡£¢¢¤¢£¡ccgcdcdedggciacched`b]\[_[cfv~¤¦©ª®¯®³®³³±¯°±®¬¬­¤xl^VPJLIMXRWRW[\c]ad^`hdgiefhhfg`fhcidiiggiimmmmquwxxutvzzxzxyx¶ß·l\345+'',&)7a­ÔÖ¼{ujUPlWF204;\EXI)'0),F_~q""''5-&/0/7684>I82)/.59-+%/GENYQ2<<4V2hN&/\5&& *L¦k[c°½­§©¬®´¸½Â»©¶»½½ÂÄÂÀÁÀuegluxwvtkf`gd[RMWT]fkr|¦­°¹µµ°«±²±±¯¯¬ª³µ¸¸½¿ÁÁÂ¿Â¼º»¾¼ÀÂÆÃÆÉÊÈÊÊÌÎÍÍËÉÀ·µ¨t`^F=8414*'%'''&1A[74}º¸¢zZ9:,;<IC=:=98??K=B555..,24/6907340+*2AUiz¢¢¢¡¡   ¡  ¢¢¢¢¡ ¢cceaeedcgddfidcacddc^]_ZXZafr}§¨¬¬¬­°¯³¯±®²²°²°ª¨¢si^SOJMOPOWWUWae`]bgffdgehddhfgmkjgfeghge`fjiiinsysttyuyzzy}yy}²Ñ®d253.-%(0;Tz¹ËÀº~oYIDTO@63?A`Gx+','(=Xcxq& #*3"*44;WA3;3FF8/*+:6.2*//+B_gNE2<_-ZR$,T0 &$"=unZ_{©¸­¥¬¬´±¸¿ÁÃ´¤©¶»»¼ÁÂÁÁ¹xvy~xtnjcZO?>DFJKXioz¥§°³°¯°±´³´¯«¬«¯²´ººÀÄÂÁÁ¿¼¸¼¼¾¾ÀÂÂÅÈÊÇÇÈËÌÌÆÃ¼®¥ynh^UC=87.+'(&(*)+/<O62|®»ª^19/39EL79C@9=?=;827:04+98304;;411+1.E`k¡¨¦¢¡  ¢ ¡ddiichfbfdf`hdaecc`e`^^[U[\mt¢¨§¬¯­®±³¯­²²³¯°²­©¨¤vk^SRKGIOTTTRZ^a]]_^eeoebgccbdghegcfjgebfihikgonsurrovvur~zz¡´oIH:=,%'(/U}«¡ulU@>WSB=<5V\ZG*'.$3WY[Vo)! ''%);KAOL;4):OH40*;,''&*%(.Il_2(Mc(J[*7M)!.:mdax¿° ª¯°·¹¹ÃÇ½®ª¬»¼ºÆÃÂ¿¹z}}th\KC:E==DLX]p§©¯°­­´¯®¬®­±¯¯±½½ºÀÃÀÂÂ½¼ºÁ¾½¼À¿ÀÄÈÇÅÃÂÂ¾¹®pfc^`[OHF>=C83(',(**/0;C8-y¬¼©`5;-869H>GB;;E@>;;747;30,-009=56451-6L\v¢¢£¢¥¡¡¡¢jjdlejhegh`bcdgiedf[b\^]V_`hs} §§«¬®­ª­°²®®²±¯°­­¬© {mbVLIKKTPW\WZYb]^^_fcngdkegcbda_eegebgfdcdfjnnmoortnuvuzv{|¤^E51,#',/Ozm[_m^?>I_V>57AZOkT./.5-Ea]T:~-!$(&'2L?B9,>R)3JS4(5=)'"+' &)3OfY<ha$3\9.?#(&*P¢rcr¾½¦ª®²¸»ÁÆÄ²¥¤©³»½ÀÅÃ½°ux¢ym`]RELBA?9EOXg©®«¨¬ª¨«ªª°¯®¶¹¼º¾ÀÀ¿À¾¼¸¼ÁÃÂ¾¾¾ÃÄ½¼»±«~qjXOTAJTVZ]WVVVF6/-0,,*0.7@;.u­·¥t?=485:N=BPDABGA<75*-501/1--38:81050:Ok|¤¡¡£¡    ¡     hhfhfdechjfhgabbiedc`_^]Z[_fn{£§ª®«¯­¬°¯®±°°²³°¯¨¨¡~h]RPMTTQRRWV]U\bbbeahkjegfhfc`cae]efclecfflmllionqttqxsvt¦H@7/,#%($QhYW\aI=LZS85A`^QY50))&D^\f@/~>%$.2D`LF;6<bE>[[B&4;((')&#'#,3N^euS%-[X/* #8t§ng¶Â¬¥ª¬´³¾ÂÆÆ¿«¢¡¨²»¾ÃÄÆÁ«|twy{£ }~sabWSGHD>>AN[x¡§«¦ª¤¦««­®³°¹¸»Ä½¿»Áº¹¼ÀÂÅÁÁ½¼Á¿¸°§naWWVMXOUSlnungikaT>3-4*+%&+1F@.x´µ£uE==423VB>CA<DC<=530+62053.385C876/7;Vm££¡¢ ¢ ¢ ffcbdicchfmffcbef`ccbb[ZW[aerx ¨«®®±ª­±°¯«­±³±²­¬©¡{g]SMLOVSPVTU^[e`_d_degkicggcegeae]bgebdggiehklpjmhopqvrzA01=;>*"*Q{ePRLqgNGJ:;?Ff]^;0,014[r^P')n^*#(1%3F:?8.),28Z\a;7/#$#(''%)/0XS_Q$+I[' 1b§q§Ã· ¦«¯³¸»ÆÆÃº¦¨ªº¾ÁÄÆÀonztz¤¢ ~}[iZ^USNKNHMN`v¤©§¥¨¦ªª­¬¯¬µµ¸À¿¾ÀÁ¿¹»Á¼Â¾¿¹·»´§vaTXR`_Vkfqf{xopd^U<965)*&')-AE0j«µ¤rV:7296FR9<=<=DB=6:2+.2/15/988789815@\q}£ ¢¥£¡¡ ccfchfhefljlehhhfc`be]SUYX_is~~¤§«±¯««®¯°¯²±°²±³­©¢xofXMNMPSTWZZ]b``_cdtkgfebgeefdfdaY^caabdnagddiiigmpqqpq¨\J:^sqB*$Fu_O8UY>3=43FOhbh:3636NykR0#1S|7'%+)3K?7*(&0'7WeeL5)"!++*)/'&*34Blm@*1/! !Jz{r£¿¸§§©«²¶½ÁÆÅ¿µ¨¡±´¾ÄÆÆ¼loqx~}z|rO{qu\mdjc]V]ZQY[bnw££££§ª¡¥¨®¯ºº¹¼ÀÁÁÁÁ½º»¹À¶¸´´¶­m[UY_gtkhqxylzrbcbZJ@6:7*)(0(3CA)d¢¶£r[812/6@K18A<>I?E338..A42<3034<457=<Ihx ¡  ¡¢¡¡ bbhcdgehikbjejcadbb_aWZWRU^jq|¤§««®¯­°¬®°­°¯²´¶´®© yqaXPKGGTRWXZYf^^bfhhefcbdgecddfcgbcfhagccbdgelomemmkpoz°¸yVk¤fOFg||vW;XQ70+3:GRlxeF@>CJYzb6"#&?pC//();SP2'%))/0TehZ-&('$(*..'')(0,7Ra=(!%  6zqmw»Â§£¬¬®·¿ÀÂÇÄ»¬¢¡¢¥¶ºÂÇÉ·dalqqrwuv}xt|mW3Ys`w}[Xqr{phdmc\c`gly ¥¤¥¦«®¹º¸¼ÀÂÁÂÂÀ¾¿½Á»²­­©oliekpw|ybenestok^OOSRG;<M8-6/+(1EJ*\·©pYO40258L49B;?F@:218/112/342956,37=DRp|~|   ¡¡ ccdhggfhjiblfgddefa\]ZT[X[agt¥®¬¯¯®¯¯±®±­±®±³­¬§¥ xp^[OJLLMTSRWYY]eaagdficbgggfbihcd``jedbcfieigniimmkksr±Á²¬« wwzhum;7;='39FLQZzp=FBLGOdr`+"!"7[kV,+1)0ZW4.*$##/Lgka4(+$'%*21--&,*%',;T&!-a¡shj¹Á°¤«§°¹»ÁÃËÈÃ¸°¨¨¦²º»ÄË²tUd_hlke^^bfeikiW>.Dn{SCdoHhn|}j^utolqpfmy¢¢¡£§«±¸¿ÄÄÄÆÃÁ¾»½À¿½·¬£|zzyonup^FWJEZ^T]NJMQIB>AM9)(&--8AK-dº®nc^--.27^;>D>@>9:12+,-576657740.15<H]w ¢ ¡   __dadcflgkdkaed^daa^]ZTVQY_gs}¡¦«®¯°°¯­®¯°±°­¯°««¥£ xicUOOILM[TTTW\e]\adcdibefdcc_ahabagic]`cdidbdjghippx¨»´¶¬¤­§fVRU\G9,;A)'2AQVewG*IVQU=cw_$ !!0SRm0/,-;S]0/-&$)3=^_kW3$/+*+,,3).**)-&'D>">¢ji|¯Åµ£ª¨­¯º¿ÄÈÈÊÀµ³¨®­¶½ÆÊ®dSU_b`dgd`JKHBPHP:6/8Qh^J/.BD@UpzVdvzusttwy¢ §®¯»½ÃÁÃÅÆÅ¿½¿½¿¾·©~wYPWH75688@F?AD>DLFADI@-.*%&.6GK,[·±togV01/6:S;<CAB;74/3.3.2.6035;50**3>Wk|~  ¡hhjeidamddbcdcbdjb]\]\TWQX^dt £¦«­°±®³°®²±°°³¯²¯¨¦¢£niULGIILMRUXU\__gbcdccfihcfdbcdfddaa]^^c_dcfbhgnw~¥«¬zN3B70.+-/:V\8JKQ\q{`1+?HXVJhsN(  "4\?g@&),5Y\+'%%#).0B[u_9)(+-0-'.,-3(/%#"'<!!(owdn¡¾¹¨©ª¯®¶½ÂÉËÊÇ¼¹µ«±·¿ÅÌ¦^OQO^WMDFWT@?B=7:741+24<67/+.0/9S{d`x|xz{|wy¡¢­¯¸ÀÂÀ¾ÄÂÃÂÁÁ½¿»³¢fl_G:9731303488<;A=FFA?FN2'*/'#+-HR+VµªpwqSD41/;[A8<D;87340010011.3034*&*4:Ro}¡¢¤¤ bbgceeebecbgaaaffd`^`UYTQS]iv~ ª¦«­­¯²®²µ±¯®±²°¬¬¨£|peTPPTHJLMRWY[][[bccgcdhiegfcce``c]^dhfb_d^b`dqzizyL+1+'!'$(<9KIQXVlvG2:APkOLjsK*+'*9`7PW/+).]d.(&#"%0/:H|wdA/'$)*+8..0(%##&$"(N mf»¿¦¬ª­¯³»ÂÆÊÆÉÂ»¹º¶µ¾ÄÈZGOVLOHG;4;@76852611434521-+,+('+6ELiy}y¡©¬²¹¿ÄÂÀÅÅÅÅÅÆÁÁ·ªrc`CE711657002/1/96;57>?HAG:.-0)$%&-HT-K¯±¥|rnSOD019SD=@@B7=0//2081.-0-794/(&-9^u ¡£bbigfdgcbcbgbccdZ\da[U\YPUVgr}¢¥ª¬­¯²±­²°³´±±¯¯­«§ zm`XZKHJJRTWVRY^\^cffjeffdbddbdfbacae`^c_]]^a_j¡¹»w_cfx]D+),!)BVg]MO\]hT<=D^hFTsxQ)'%*0d46IF,00bf.+',$'%'+/[z{mO2-*-'+(..+$#+29y¡l}©Ë´§­²¯°·»ÄÆËÅÂ¾¸¶º³»ÆÈOBGFFDC?9425423412.0/.1;0785@+.(&-**8^~}} ¢©´¶ºÁÅÃÆÈËËÇÅ¾¹­vW:<3152233310/-367968877;FF4*(1((&%-KN.I¬± mhULB5-7MG:;9E6<-.,2/4/-;99873-%%.>cy   ¡ccigda^bagdd`^_]]^b\\XVQRSQanz¤©©¨¬²­°³°°³²²°®­±©£ynbXYOJGJUSSTYX^VVea^eiidgaebfc_be``dc\^[\ZZ^dw¡ÈÎ¾}|kRE:NjdD(&$#(>eth[MOYj\XcOEKkOHa{{T%%-'0_=(6U9.1Xs.&*'#&$$/5oxqq_?&$#&+/23) %*&Z¬wg{ÁÂ¦¦«°¬µ³¹ÄÇÊÃÁÂº»¾¸ÂÅ¢WEA@J<5684143392.23-.-.+36?SG62.(.''/(6Wnz~¥ª´º¾ÂÆËÇÊÊËÊÁ»²ZM;8:068618>910/32277;@547?>22.30,-$+/FD/E¦´ne]GGJ03K>?<@A43/,0/130,988285+*&,Ig¢¡¡¡¡  \\`abb_]]d^]`^\_\]Z[RPQNMTXbms¤£«ª­¯²®°´±°³°²¯±­«¤zocSMFDFOIPVTVSYTYc[]^hfcgaf_ac]_da`a_c]\UX]a{ ±¥ÆÕË¤xthN20JRI4'$"!'?YusfNC<eb3AfTMNeEOltN"/)6W<#)>T=-^9,,*(&##($)@hxxqfF&")%'-/$)&" #D¡ec¹Å¯§¤«±°·¸ÀÃÌÈÃÂ¿¼¿¾½Ä§^I@ABB:51.04425735-**--//NBavn\F9-)&/('.;Vs} §©³º¾ÅÊÌÌÍÍÏÊÇºuJ=74:322<34GUZJ=;1./38A<8;8:550-,-*$++2DD-E¨·¢ab^I?>?7SF;:=:30../33207-11>50.(*4Rm ¡ ¡\\\]aa\X\\[a^YZ\^Z_TXSPKMMS]lr~¤«ª­­°¯¯¬¯°¯¯±¯¯°®¨¥ {qaTMEKGKMSSVYXXZ\_\___bfca]]`a`^`d`_^YVWWSTl­ÍÁ®ÐÑÅysW62EM:.'!" %3wl[F2.S~^E78YXN]YDPpK)#$1<Q?).:QV4[G%,41+%*(*)0>nyoleQ9+'',)"!%! 2j§q`~¬È¼§©ª«¯³¸¸ÂÉËÉÁÄ½¾ÃÁÅ¦XCKI>;B3//4////7.30-+-.+27EZ¡gN7*()+&)-Cct~¢«µ¼½ÅËÎÎËÐÐÊ¼d8592/26429>2U~|i[C0,+,332;78;1..433+'+.2LJ+A¡¹¬_ZXG1@4=LJ><:940,/,0//11668115..2@]y   bbd\^c_``^bb\\\^[Z\SZRPMKMPai{¢¦¬±¯±¯®¯°±³±²²¯±®ª¥ ynbUIJJBINSUWYXc^[^c`_e^dcaa^cg^]]c[ZYaXVRSTÍË¸·ÑÍ®w||h{hZ>WQ/()()# 2b{_4-)Cxe1(-/EYWdVN`a/'#"/0IE*0/7@3NS)/,+.*'('$*4Gf_HXSl]/()'#$!%RffÂÆ«¬¦¯²®µµ´ÄÈÊÃÆÄÀ½ÀÈ­aDHPJJE9).001044.*511(./J>D^¢ÀÀ¯vb:*&%'*,2Pn~|~ ¢§¯¸¿ËÌÒÔÑÒÎÅ§o@123--*/;8Pp[Ks^@-&)*/675976.(/32.*#-.N@,B ·¨`RfKB@;?UP<=;:2/1,/213/2062012+15Kj}  ¤^^aaaa^\]Z__[ZZYZ\XUOUYJLNQ\hs¢ª¬°¯¯¯²®°²°¯³°¯°­«£¢{pdWQHILKPTUXY\[[`_d`abaecb_cfa\cc^`]ZXWXWSWÍÆ³½Î¶yd[oOLU6,#"0.+*Xr`4&.7lvD$%)?Uiqc\c|xI8.,%,*?;)+0,./Fe*0.00.*1.*,/1::,1=NYU1*&" !1qj`x°È°¤¨¬³´®µ·¶ÊÌÈÆÁÅÅÅÃ¯iKPVUKE<2*))24=LB*.=;,'#'VV@Vx®ÉË¿°£aF+,:KJ?Nl{|yvx¤¦ªºÂÉÏÕ×ÔÔÌµzP611+*1,,66[E¡£jO6+*+*5768:5.3/.1-$&+-N?*6¡·©_XbXD@?>XB;<D<41,,31347730/.-+*0?\p  ``dii]\]a[]b\\`Z[WYRPOPMHJR]jw¤©­¯®³­­±´±±¯²´´±­¬¦xqaSHIMHNRXXYZ[aeafaadf^^c^ega_cdc\\\[[YWXUU}ÁÂ®ÄÅ~]miA>G3#%*822PucM=%&2_rM2&$+,H^{wb\Yup7.*)'F.-0&&7-'+>y|>,5*+(*+)2/.0..)),?H@8:$&& $Q ~`lÅ½¤¬®±·²±·¸ÃÎÊÈÆÁÇÅË·kPQXUNC816+)+3@QYP2<ON/%"&6Y@2H£ÌËÇÀ¿¹jH;>gkSJcz|xyvy£©³»ÇÐÒØ×ÖÓÁ[C124;4/++<9KK¯z^B7,*-1213720-11.-&'4>PG-6£²§ddUk@?I9^A<?;76,-/.0+5<2:2-///09J`w¡ aabb^e\`a]`_[]^[ZVTRQSPJGKQ^px £©®°­´²²¯®¯²°´¯´³µ±ª{k_YLHKNPVVS^```b]^dcde`]da[abfaf`a]]Z\ZVWRH]À´½Å´§gG-KQ+,$%AGTl[=-0%7LeF?.'#(1QVvWZRq445-*-,,$#'4*++3fJ2=5(')(-..,922()*393*(.HJ8;sf]ÂÉ´¤¯¶²¸¹¸·¿ËÎÊÆÇÉÃÈ½zP[]VPD7844*-38E[fY19]\L.')CpM7BËËÆÆÆÀ¬cGD]mS[tzutps§¬¶¿ÆÒÚÚÚÖÌnUD71@C?6,&;;DbiE³§ `K<4/0D-/3;44..4-1&'(5^=+3§¯©rYWeN@CGT??:9520,.8=1.136,*+.24AOm{£  ~ffca_c]d]`^c\c\\\VTWRSNJFLV^lv £¨­°²²¯¯­°³±´²¶±±²´¨ {pbTNFIJOTUUZZbe[dcdcfeecabcdcleecbea\\\ZTC9L¸­ºÁ°£xhe1(+)#%(-Joh]D*$.0MX;7E;-0*;GW_A`ZrA370.*-0)(4)/%&-QT6D//##&.&-67/+)&281*$(,4GIau_sªÍ¿ª£­ª²»µ¼¼ÈÈÊÆÅËÉÈÂ]ajeaVR@6201-.BG_rjF4[bYGABZlJ4W°ÏÌÌÎËÈ¿«XFX{x]Ykvrpqrw{¥°·ÀÆÐØÚØÔ½dNNN2;TO>*-FSFRKD²¨ kRD6(.6)*/-/3*.)2J?+1=`;*:ª±­{GThWFDWV6:B5613/11/.30100*./78AWr¡  |{cccabj\`cd]d^Y\[ZVVXUTNNHIR^lu §¥¬±¯­¯±°®³²µ¶²¶³­®¨¤{og\PHGJNUWR_a]hcdfbfdfacjheefkabbfe]___WF21I¹TSl¢¾Ãµ©\msV@$&'+&!/8uwZK6)'8NVH46KM/.1:BebMQdp9/..,*//0+7.*(*0DyxE?,)*,*-,*/:.*%&')+%&"$%-IiqUk½À¨¡¨­³¾ÃÊÊÊÄÁÆÇÆibfsni[TQMC;-*-DJ]tybC9SaTT[SG9A}ÄÑÎÐÒÌÎÇ·mLFk~j[`pplpuyz{ ¥±¸ÁÈÔØ×ÔÊ¨{YUg`<<^dXJCWhUJ:V¢°¥tM>;,,+(*,/0.1),1*'*,<a:,2{¨®³NOe\LAXV3:D=/+,/3121434534/637Gbs¡ ~ddabgd__baa[e`\Z[WY]QONLDIO\hv¤§ª¯®³±³²¶´±·µ´³µ¯ªª¢{raXNNQPPXQYZbcc^cjjggkaijcgijfffdekhcbXK;,/9t¸UBTn§ÏÑÁ²©¡gP.5452*&%)*1CWnbK.1,.KU9B4:KY5*3?JxjYV{q:.**-61.+%8(%&&,?fO4-1)4*)0,0=,'+%+*'",&#&/YwrQ\|±¢ª³»ÂÆÈÉÇÅÃÃÂgldswztnd``VN6.3DRYkrW:<OUYOK6@q¬ÎÒÑÒÒÌÎÉ·z]Sb~uebkoourvx~¢¡¦´·ÅÎ×Ú×ÕÆn\ixw]9Tac\UVYVE@z­­§pVE?/,,+((/0)+6+*-*,1Ef3-1r®¬¶RG`ZKIUY::4>33/,2246:654.,-0-6Rh~~~£hh`dcc``b^bdh_\[\\WUQOMJDGNWfx £§©®²¯°±®±´µ´³µ°²±±¬£ {qc[UNISSVRZY_a\aefhkkd`ekkl]gkhliqzkTFG@9/)+?¬qm­ÁÕÍÒÅµ¬k8)'*(-0##&./=\`RD773/<CQ=I7<CU:8=GTu`V~u?-&1)03..5@.+',(:SuL*,404+-**540*.*'&*'-(%+?|fPe¦¢¢¨ª»¸ÁÆÄÇÆÄÃÁÆÃlcpqy~|tuxneaK1+3C\ir}pX=96<9?MkÅÏÎÐÏÑÊÈÀ°s`f|}tenrw|tqz¢©±¼ËÕÖÚØÖ¿giluQ@Ufd_bQDGn ²¬¥mRE</47)-+.-(..','',3Pd1,4j¯§¸V?ZWLIVO76561->:/400=<51+1-.05Xk|¢§¬ddcc_cbace`__`YVZ]V[RLMIDJUZir¢¨«°°´±³°±µ¶µ·²µ²°­ª¢¢}yqg^VPPLRTY[[ahecefihhiiggfmecfkftjN827:1-40E«²Â¾¹ËßîáÒ»y?@*,).)()%(03S`[?87EC;7;TH<9>=HUNVPXuhXPs|H4$',://18;4'-*-4EO<*(091,+',-68'&%# $*024>m|SU~°¸¨°²´»¾ÃÆÉÊÃÅÃÅÂ lgquvu||ulWA/.Hcqotxq_Q?@JX~¼ÊËÉÊÎÌÅÃ¼£wis~zops{|wvyx¥«¯ÀÏÖÛÝØÏµboroYMJXXUJLr´¶±§jO@512.-0312(.-++**,2P_93:hª©¸\>V]XQ\P::785./.6532?94/,+,+0;`s¡£¥©®±ccigb]bd^bcad]]UZYZUROMJEDS\jv| ¦¬®°´°´´±³³³¶³³³°¯®£¢xrjYVKOSOVYZ_aficgaklhohhjemcgjkdkl;73>6069IUt¶¨¿¶ÂÞôñæÏ8:K/$'/'#&%-3SdPPGSRXG31?VUFESROa^ZD`hgIUmN6()64,-)?+*5,/*5=;7,'6?0'&(,/04&#-,!# *5<XbWe£Ã¬¬´±´½ÃÃÇÈÅÆÀÂÀjjrvzru}{}vdRCCQbrwv|xldet¢ºÄÆÉÌÎÑÎÉÆ¯pny~tqys{{|¢ª¸ÇÏÚÜÝÕÎ­}daj}qhWNNUcz¶µ±¬¦{hQD:760.//2842')44,/4SW125Z¨¹¡d=P^UR_JF34.333710*.68:322*.1Rc{¢¢¡¢¤¬ª¯µ¶bbdbehdbababa_`V]\ZWRRMJHDQ[ct{¤¨«­¯±³²´µ³³²µ²°´¶­¨¢yqe`VQWQY[Y]abdehggpjmjknmllhjcOC<C.42^dUM_w¦¸¯­ºäõñâÁr;3DdC&(')(&*1HfnlbXHE22)+6TPSZ^XVUXG@eht8RpYH/;>2('/>1+''#(/:91-6B>--5/,-16'"'#"! 8*L{cfÂÆ ¬°¹µÀÆÆÅÇÄÁÁ»ehq{zy{}{si_Z]^^nw¶»ÁÄÆÊÎÑÎÇµsp|}xrux|£©¶ÈÑÜßÜÖÊ¦|eYY`xypt²º´­¬wdRD0/7>52/5534/.47320ZW519Z«¾¢fEJcM`SMH81,02-1,+056:9.,2/+3Mf¡¢¤¢¦©­¬²²µ·¹cc_dffbb_beab[[\[VY[VNIIKISXk{~£¦¬­­°°²´²³¶µ´³±³³®«££qf]VQTURX\[Xbdagiilolinmklq|j@7/)*+58I~xx§µ¼ªµØëÙ½S=+2:mV*('--.@ZyrjU.+/&"'Bc5>X`TM@VLJgux1Nt¤hZFJ1--%-8+&$&(03-0,0;?96-+/2C:.3)#'#"+(:n_`{¬Í¾¤§­³ººÄÇÊÇÆÃ¾¼`auyz{~}{tkbhSJp|¨­°»ºÁÃÀ¹¯§ª|tv~}wvxz§­ºÂÏÜßàÕÊ¥}sf_\kw§®´®£|e\L5.4B?=775:800261226[U777[¥½°nRT\SeF>>24,-(.+,+0.647.*'//BYt ¢¡¢¢¤¬¯¯±²¶¶º»¿ggfgffc`cab_bcXX]ZZT\OKKI@QYhw£¥©¬±²³³³µ±´¶·µ´³¶¯ª¥¡qfaYUSXUXZ[_dibemnknpjnmrfy T.1,*.1:Fa¡°Ã¿¥ÍÍ´R72-/-3Sc?-3:Ifzh]k2$ *"0Lm'7XZNMHN]Ocw7S¦tsoI@1FR$2*($$*$+.4220171.900.)8.&$,""+RlVkÂË¯£§­¶¸¼¾ÇÈÉÅÃÄ¾a[lv{|{~}pmrilxqns¨§¬²²ª±´º¼² ~yvxrx~y©µÁÏÛßÞÖÉ©{vxu p]L8,/?KC=88:83/.1J6279[T.04X »µpULVXkB6C@F/-*.9-+13:4991*5ALav¡ ¦¨§} ¤¨ª­³µ¶··¸¸¼½¿kkgfbcfaagjc`][[ZWTRTOMIHGN[dt¦¨ª­²°²²³³·´µ·µµ´³²«¤£{ph]UQOPV\``a_ehjkjpqloppjlª=%-#)7>Mb¤Ä³L.3.*)$1Hq^P_jtkSIF]U*$&$()5\x-3`XPJNNN\]~zRd¨ons@79_I+.-0)#)).+7-/./0+**2,:-8'$$"$"!"9w_a¶Ê¹¥¨ª±µº¾ÂÊËÉÂÁ¿^_htw|xu}~~}kmj{n`x§¢¤¯­«ª®­}|tz{~~«¶¿ÐÛßâÖÉ²­­¤ub[N@1.8TSKF;65=83)0H6548SK,-3R¸µ~ZLMXeI7DA2,1210.)'19<80.69zWlx§² ¥«¬±±³µ¶¸»¸¸½º¾¿gghieihdkkf`__XY[XVPPORQDIKZg|£§ª«©°²³±µ´´²¶¹´·±´¬¥¤qe]VRVTYZ[`dbgiifpppmtqqnk@**'1Kbn}¯}¤º»tB21<:7,.7Fpmjh[VD5:Acg3'"%%)1<`y'5YaZH5EEVepzge¡mMnDEk_5&--+%*--*/.+,/0///3193-*1#$ ")]nXfÀÁ¢¤¨¯¯º½ÁÇÍÆÅÅÁ`_imtw~zmgw|cXthjrd¢§§³°°¨|v}x}{§´»ÎÚàãÙÍ´¨«§£|yqtp}X>B><?@B?BXZUE77794.-/7445BRO3/1S´¹^TETbS@8;,-1.606.2;;B4016BM\t¡§¨¬²´¶¹·¸º»¼½¹¼»¾¾ggfggnie`aga[_XZYZTTOQQJEHJYds}¥¨«¬­°±²²´·¸·¹´¹¶·°­¨¥ ugbTLQRR\]]cefigiqrpnonmjo¡U).4Ei£´~}¤³b@9?JE?28088LuxP9>/3FfyF'#$**/86[y68OjgZ-3MXhuiqpcJ\]K)#'-'*,&,(--+/34*).88./+"&&"!! %F|a\²Â­ªª³´¸ÁÂÈÊÅÆÀXRijs}~mwylZqnze}¦¦£¤}ywz||~¥°·ÌÙßãÜÎ·ª£¡iompp`t\C:L;CTVROWUSA:41;3(#+2.99JWQ03:L·¾dUA\cQ856./.021.(488544/5BYj{£¡¢¤¤ª­°±µ·¹»¼»¼¼¼½¹¼½»½eef`bkigech`Z_]XTTUTMOFEAIMVep¡¦¬¯®³±³µ¶µ¶·»¸µº´°«¨¨}tgaWMPWVZ`bj`fdlglnmjnnnjlze9AI\¡{tzp]RD@GF9*).11+/QqYD6Jkx>5..+-20-Qt4MI[a]9&2Sfowgospccwxh($&+2-02C)(*0...-),,/164,(%%# ""1jmbi»¶¡¡°®µ·¼ÄÄËÉÄÅYQ_flv|w{qn~{l¦~tx}~~¥«¹ËØßàÝÐº®£nxrwuqxkUA]OJO\VUQVTD65792-'1=31:PLT2,6N´ºoY9ZcN=2;422451'.5=?0--64Deo  ¡¡©­°²·¸º¸¸À½¼¾À½½»»½»¾gghifkjd^agaZXYVSUWURQKIFHGUft¤¦ª­¯³´³°´¶µ¶´´»»´³®§¦ujeWKOWTTZZ_cgklhmpqrsnmonpaotwr{rNAJXTPZXI970')+/.%&<p^Ni~jNNRH,6;((NqA:JSjgM+4\pdaqxtyswn1#%2:2-)+0.33*-20-.,.4526-%'%"&Y¡bfr¨¸£¢§²­²¶½ÅÈÊÅÃXPQ`klz}{}~wwy~~}¡¢©¿Ê×ÝãÛÓ¿´§}||}~vkQj^KQba`Y]RE:/97.%$34+18NGQ2+6N¯¾£u_7QgA8-68,,3/)(.;<735/+.Ocz  ©«°´¶ººº¾¾¼¾¾¿½¿¿¾¾¹»¹¼fficceb_aca__\X\RRURQKMHECHRhp|¦§©­®°³°³³¶··¸·´¹´¯±«¥qh\SNKRSVX\`c_edgkmnujkiiet¦¨nUEFCCED`jR71/'),*3'(46Cp~yrfptO*59#(:gDCEBmr[@1jjQRrvy4'(+-483),4320-'-623.363+/0&!":umbp¸©¦¯³³±¼ÁÊÈËÈ¡\OS\cqtz£z{~~}¡¥¬»ÆÒÝãÝÒÂµ®ª z}}lVfgM]h_b[a[N>5?5-&(22.2:<JO2*6N«À©{b;AeAA5)8/)/&,*3DH<,)%-7Kb{ ¤¡¦ª¯³¹»¹¼½¾¾À½ÀÀº½¾½½½¼¼¼¿ddfdbdc`^c]\]UYVTRTYPMHE>DMTcny¦«¬­¯³¯²³µ·¶¶·¸¸´±¶°¦¤viaRNHQQWY\_abgfjmlliiljkdmx ¤¡¥¬¡n^EJQK8?TdTP4,.0%*<6*$746>g}yyqE451&(0WUMD>cukWEjVNG]rurzxtYC3@,,('*3-,+-0/.-5+..*.)0&'*&  (^ jf~¨¿¨ ª²·¸´ÁÇÈÊÉ©_IU]cmut}¡¢¤¤¡¢ }~¥®¾ÈÑÚßÝÒÈ¸¶°¦£|}|rcii^dgef^aZN<6?9,'&44518;LF.-3H©»¥a><[J4<+70181+/3BB6*-*/2Pr¤«®´¹¸»¿¾¿ÀÁ¿Á¾½¼¼½¼½¿½»¼¼¼ddgdbddd\_^]XXRRUQRPMLFF<<JTdp~££¥ª­²°³¯´´µ²·¸¶¶¶³³®¦¥tgaULPQT]a]]abgfnilmklmklikn¦«©¥vo_OLEBCCR_VP@:+$#'2Q0/->829R}qxtv^L?08-'*3OMJE5?w|oa\J?J@am_bTT^]HYNJ++.,.202-(.1763//,,+'"#$!"=xsjoÀ²«¦ª°¶¼ÀÉËÏË¶`FQ\^gmqyy{ §§¦¢¤£¢¢§ ~{{¥©»ÈÏÕÞÞÕÈ»º¸­¨¡¢~|{wsntlhlnmheUQ?;D;.(*85,=<=FS254F«¼¥^89]A69+8:.72,11>:6,'()AUs}¡©®´¹º¼¾¼¿ÂÁÀÀÀÀ¿¿½½¾½¿¾½¼½¾¾hhbbca\`]\Y\XZWSQSTKME@<76?M\p¢ ¥«ª¬®°¸¶´¶³´··¸¸¸°®§¢yh\PRTNR\[^[_bejgmlomnglkomlx®§vsvo`G?=:BMicYM51('%9<[<1:FB6O`biirik^dF:3'*,"'<=KHF55NuvdKWa_g`WWi:>Y^<K350/-)+-.-+,/)34/.2)/1($ $#/d|dhz¤º«µ°³¶º¿ÅÊÌÎ»p<NU^enovxw ££ ¤ ¡£¥§ª¤§¤£¥¢§~}¡ª¶ÂÎÙÝÞ×Æ½ºº±«££}~zvnwpvqmjbaR=:@45%,640:?8JQ1/4F¡¦¼®d?A_M.9*.910),15970+(3+Cdw}~£§±¸¼¿¾¿ÀÁÂÂÁÂÁ¾À¿¿½½½½¾¾¼½¼¼¾ddae`X^[]YWSPTPRSSRLMDC<97CM_o{§§©®°°²¶²³¸¹·µµ¸´¶­¥£uf[VLPPZXWY^adgibkjnmlmmlllorrpmowjT=;8>SifT9<>6)%./NX:7AW\WleuLBIFAehPH.,+#"475>UR301Nr~w}xvpJIkm@?^F&+0/+,,,/-'+2'**/57-310//&&'+Eiej´¬±³µ»ºÃÃËÎÌÁ?ET`fpporx}¤¢¢¢¤¦¡¡¢¡¡¥¤ªª£¦°¬®¤¡«¬¡£ª¤£~~} ©´¿ÐØàßÖÇ¿ºº´¯ ytwpvurrk_UI>H94$,560@;>TJ3+3>£¹¯j<BV\./81;-*%(11:+-,(//Lf{¤¬±¶½ÀÀÂÄÅÃÂÀÁÁ¿À¿¿¿¿¾¼¼¾»½¿¿½¾ff^_\[Y\\^TXUTPMORSPHEE?>?AJWj{¤¦¨¯±¯±µ³·²·µ·µ¶¶·²«¦§sfZZPJNQ\]]_cbgnioonlljqjlmntupkgqokL>;JGO\n_A//<1+*1=USF;Ngjsl|nE;13OkaS2%%)&2@,9=_ZE605Fz_;<rKHr*)'+1,2*/1/,//'/-12>//002+)),6joadu¡´ª²µº½¼ÆÊÐÎÇ@?LY`jpquuw}  £¤§¥¥£¦ª¬«¦¥ ¤¦£¦£¦©«­¨©°­©¤¦¬°¤¦­¥§±´ÁÏØÜÞ×ÍÁ»¶·¯¦¢~yvrrsomoc`U=>?87)3729?;<H@2)7? £»°b9=ST,.5191.',1463)+*)6Oj|¦«²¶¼ÀÂÄÃÅÄÄÂÂÁ¾Á¼À¿¿¿¼»½¼½¼½»¾Àcc\`]XZXWZYSOQPPRRMKEE=>=;AM[k}£¦¨¬­²°³µ·²¹·¸¶¹·µ¶­¨¥vg`\OMTUUZY]d^hfjirnppoqllrtyxomltrfOCXav{xw\L83833*3.<^[QF]wvmfcH35EiuZE&$#&.4,3MShpQA7)3f{RB:BfRy¥¡Y+/)-.33//341&*+,),15064234)-,O¢}fen¹£±µ»»½ÀÃÈÍÌ¤?>GP[^kptw{|| §©¨¢¤¡ª«¬±ª©¨£¦©¤¥¨®°°®¬¥©¥¥¥§¦¦¢§~§¸ÂÌÖÚßÙÏÂ½µµ±¬¨£{z{wyrojhfYB=:86+4/29B<;GA2"-;©µ±¤k6;QH*%03C*)'+565/+**.>Xu ¨®µ¹¼¿ÁÄÅÅÄÄÃÄÀÀ¿½¿¿½¼½½½¾À½¿»½¾¿``]^]\W[\WUUVSNSTOPPDAC<>=HVZgx¨¦©­¯²²±µµ´¸·³¶·¶°¬¨¡¢ui`WOMQSW[b`d`fgfimoilnprnptzyn`nrxodpw\>778100.7NlaMOhs^ti^>@GllP.%#&&/1-8ObqiVP<<GLOmlS;\hs¥©q:035341031276-*/,).1.42,-00&&:nrlh¬¾ ³·¾À¾ÃÄÇÌ±L8CJW^dopv|zy~~ §«©¡£¢ª«®³«ª©¢¦£§¥¨¬­®­¬§¨ª¦¨¬¨«¢¢¡~~¥µÄÉÒÜÞÙÐÅ¸´³´°« ¤~|}yy|qpkcTEA:;4(.13<:6;PI,"*:v¦µ´¦n?9EN(#163+5-/6651**,3Der¡¢¦¯´¸½¿ÃÅÅÅÈÅÄÂÃÁ¿¾À¿À¼¼º»¼»½¼½½À¿¾[[Y\V]WZSRTVPUOLPHMKFCA;;:EJWnz¡¦©«¬²¯¶±³²²¶·¶·´µ®¯§£wk]VNNNPUYVY_agcjimpmlnoouru}rfku§ª¡x^OC8=99A?<9QudMFrhzoZXSLfu]@"!$'+)2*8<Pb{~cTWVPDDbtz{v~;@FID@B=/+--53-.,,)00,307,+1+(Q¤|gfp¿²«´»½½ÁÆÉÈ»Z56DPRajoqox~x¡¢ª©¤¥¥ª­©°¬­¬«­ª¬¬«©¬­¨¨¨©¨°¯­¨­ yz}¥®ÃËÑÚàÜÒÆ»¸´±®¨§~{zzzqpnd]J@/83(-8?@0>>RB1,):|§¯·¥t86KI)%0A81/)+321../-;Tlz¢¥ª³»½ÀÁÄÅÄÇÄÆÅÄÁÁÀ¿¿À¿¼¼½»º½¿Á¾¾¾ÀÁWW\\[ZVZTSUVUQSMSHMGA>::;=CPXiu¤¥­­¯²¯´±³±µ´·³³¶²°­¨£nd\YQONPU[\^_aeaejfjmlnrqv¤­¥¤vbKHF=?=CFFB8>_yWFQmxtzW[p^gyr\I*&$(($(1-039C[mtTamlbXZM[uDBia_QQULB&$(324)&/,*)/---+((,Bwl_jv¤¾¦±¼¿»½ÆËÍÁ{54=FKUflqpux{z¡¤¥¨¨¬§¬­¬°­­¬°²°¬­«©¬¬§¤¬°°²®±¬¨¢{z£°¾ÈÒÜàßÒÊ¿·°°¬®ª£~|y|vsmk\MG7;5315:71F8X>'#%5y¡¬²¥wE3F<)%*A3*)+2790+,-+;Zp ¡¬·¸¾¿ÂÇÇÆÄÆÆÃÃÃÃÁ¿Á¾¾¿¼¾½½¼¿Â¾¿½¿Á¿^^]\kc]XV[UUVTVNLLNKKAB=<;BOZgw¤¦««®±°°³²³¶´¸µ´¶´±®¨¡~oh^PPONWZZ\Xa`a]ddlnot  ¢¡¨ª¥ycRJLLVQ@6678=CF=2HeiSH[ixpSSayqvbD)'$))' +712-+5KSjfpuy|oj^Uhh?0^}ufSVXS/&-26-,0/,/40+*+(&',S¢{feoº³®¸¼Â¾ÂËÍÉ313>KS__nqtywzz ¢§©¨­§¦°¬´°­¨±µ´¯¯®¯¬«¥©­±­²«­ª¨£¡~|¬½ÅÖ×àÝÒÌÀ¸¬­­«­¨}~z|uxqj[F88;/+17A74I;S7/*'.t ±­yI2A5!!(C<,#/9575../(Ddv £©²¸½¿ÂÆÅÈÅÅÆÇÆÅÁÁÁÀÂ¾¿¿½¾¼½¿À¿À¾ÀÂÂÃYY[]gcVWSQTOSRRKJJHDFA>;99CNal{ ¦¨­®®±²´²²²¶¶·¶²·±­¤ tj]SONOUY[ZZ^baegfks ¢ ¢L<D48H_U<88<>=>AEE9PlfVLUwqNPatxbV>.+)1)+&((-)(.0>SOBGnu|~{viL:50-1_qb`_I/,343.9,.+0/-+0(()%0onfnu¦À«´¼¼ÃÂÉÐÌ¨=+)5@KTYequtty|}~}£¥¨®«¬©­¯¶µ­¨©ª±²±¯¶²°°°­®¯±°°©ª¤£}§»ÈÖÚàÜÓÌÂ¸­­¨§¤¦¢}zuunhXF98<3,3?I59D<U9+2+,g¤³«£Q.D@.-);9+(,383*..-3Qhy £ª²¸½¾ÀÂÅÅÆÄÃÄÂÂÁÃÁÂÀÀ¿À¾¿¿½¾¾¿Á¾ÁÀÁÁÃVVVWYXWTVROUKMRNLNKHI?>;57ALasz~£¡««®±±¯²µµ´µµ³¶´³³®¥¡th[PJMONRRXY[`gkgt{}pB/4.<PRT>54;?B?D79ADQg^QN\ZQl}[F<32374.,(+(-*/.16;OO?JjtrnL&#!'(7b|ujV>4.--.-/,/1-,..10*,6R©spt}µ´³»¿ÂÃÆÏÏ½W(%.4DLW^hovuvy|}~¢¢¤§¨«®­ª®²²³°¬©³²°±±±°°­®±¯±®­©©¨¥§ºÊÓ×ßÚÓÎÃ¸¯§¥¤¢¡ ~|v~pg^J8>;/+;:A=4CCU7++(/_§´§¥b9C6()*42+2589+/)*-4Vn¢¡¢¥¯·ºÀÀÂÄÅÅÄÃÄÅÄÅÂÂÂÃÁÂ¾¿À¾º¾¿ÁÂÃÂÃÂÅÆÄXXSSX_XTQOJMQ^LLLOGFIC>9;;CP\kx£¨«¬®°­³¯µ±²³²··¹´´¬§£reYUKOJSPTXZ\ffuyu{~{~t`SF752B[ZMK>@?@=8I=3>HVcXER\vwbo}t9440454/)/12-4,(0,14G]W@5>?SjM/#$(01D`~tgE78(-.1..,--.).2(()/:kqsvs»¨¶ÀÁÂÂÍÒÉ{, '.8GT`alov{{y}~~¤¦¦§ª­­¬¯±³°´¯°³°µ³®®®³²°²²±­©§¦¢¡{¦»ËÑ×ÜÛÖÏÇ·°ª§£¤£¢¢~~xzytjZE9?@0-/B<54N@W93**0\¡¬¤¥k292,*-,6)(13/3))++BYu¡¡¨±·º¼ÁÁÂÃÄÄÅÃÃÄÄÆÂÂÃÄÀÁÁ¿¿¿¿¾Á¿ÁÄÃÇÄÊÉÈSSUXRYVQOOQNOUOLJFFDBH>;68?M]kz¢¥ª¬¬±´¯±µ³®´¶¹¸´´­©§¢tdYWORPRVZ[^`hkxxstpiv~{vs[^VKEKNIMXK::=@86>9GQSmU;F`hhwvzrh?3,,72-,0/1*-/-0.1607:_a:++H\O1'%4Uav{oZFP9.-%2)/2+-..)&%()2\iyw²¸¬º¼À¾ÈÑÌ5%&/1:@Taenryvz{|||¥¥§§¬ª«¬±³´³³²°¬®®®­²¯­­²³°«ª¨¤£ ~¥¸ÄÑÚÝÝÛÐÇ¸±©¥¢¦ ¢~}{zkkW<4670.4B>54QLS3*((+\¥¬ ¡x</1&%$(.2)/97.)))-Bbs¡  ¡«´»½ÁÁÂÂÂÅÀÂÃÂÄÆÃÂÁÃÄÂÁÀÀ¾½À¿ÁÂÄÅÅÇÆÈÊÈPPUPNSSQKOIKNPQPKHHBF?;9>9=JYky¤¨«¯°²¯¯³²²³¶»µ°·¯°°§£~sk^YNINSWVV_`clkvmmoprquxhiei\h`^UUSYZ[=:BC4/9<BLbno<6JQr}|vNH<WW./2=2.+0//+.--2/58)+.@Y_=*@^?,%&!#/]bk}kZe^70*#)*/+&&13/%!)+;xul|u£Ì³¶¿»¼½ÊÑ®B)(-966FWahmuwzw|yzzz¢¦¨®®­­±°´³³´²´°°®¬µ­®°²­°ª¬®§¦£ {£³ÄÒÞßáÚÒÈ¶¯©¦¡¢¡¡|~vpbT<389-/9;617HTP52*),Q¦­¤ }C+7#!**/=2/33.(1+.Nhz¡¡£¬°¹¾ÀÀÃÄÂÀÃÁÁÃÂÃÄÃÁÁÁ¿ÁÁÁÃÁÂÀÂÂÄÄÆÇÇÈËÊÉWWUOSJOKNRIJLPOKJKJGA?;:;6>DXk{¡¥©¬®°°²±³²´µµ³²³±°¬§¢|of`XIJPQZ[[]`ihnfdkmnoqo|y\Y\MGZaXUXg^JO;FN636AIT`psX6<GUma888Mh6053...+//0--),864+4.I6QW:8YI5*#',YdlizxS/.724$*,)(1*&'"$2_¤svq¾Ì°½À¾ºÁÐÀb''),05CGU^gttxyx|}x~ ¢¦¬­¯®®²µ²®µ³¸º´´¬³«««°­¬¨¯¦£¥~ °ÆÏÜßßÝÓÈ¸­ª¦¡¢¢¡~x}pobR?;>:(/=4359F]K5+)&-L¡¬¥|¨T'/"&,)/J5560.1-*8Vn¡  £¢ ¦³µº¿ÁÄÀÂÀÁÁÂÂÁÁÂÀÃÄÂÁÁÂÄÁÁ¿¿ÃÆÆÄÈËÉÉÉËËÊSSPMPRQMNKMFKMPHGMJDCBK78?DHYjy~ ¦©¨­²±®±´²·µ³´¶µ°¯«§¡vg^VMOMZYZ^\bbbnhfnmlnvs||mN]ZGGQUJ]ecL?Y]NK31;EU^pvX<0<Cjm]ah@D>Gk297/,(,).952111118,+5A01990TR6(" (Ulj~C12+('()($'0$* ":vptxuÌ¾¹ÁÀ¼»ÊÊ4"%+*/7DLXagtsxt|}~x¦¦¨©¬«²­°°°´´·½·³®­­¨««¨ª¨®§¡ ¡z¤±ÁÌÙÝÞÜ×Ê´²¨¤£¤¤¢|ug`K:9;6+3@4329F\H2&&#.I ®¢~£W(0)+*'3L:3552*-*AZr¡¡¢  {£ª¶»¾ÁÄÄÂÄÂÀÁÁÁÀÁÂÁÃÂÃÁÃÄÄÄÂÁÃÇÆÅÇÌÌÊÊËÉÌËPPQLNNLOMMMOHIFFIIIFB=9;<7>G\ix£¥¨©«¯­³³³²±´°¯³´²°®¤oh[WMKTNVTYbba`ijnnkrnrtt|~jQPWSYOJfwq[A^}dXB<;GWluy\<17;Ols[esM4@lJ;:&(,)4/67254-/56./,3G63421KW9' +8NeopY=&%#&,'#"%2%!"(Zuonr¾Ç»½Å½½ÃÍ¬9.*-6-26?NYdlrqtu{{~¡§¨¥§««°²³¶³¯­²·³­¯­©¯°¯«¬©¢¢}}|¦®ºÒ×ÚÝÛØÌ·°©¥¤¦¡¢}zriaE=:71'19735:H_J1)(&+G¥ª£¤`+-$*:(3<=22.,,).I`y ¡¡ z¨²»»ÂÅÆÅÅÄÁÁÁÀÂÀÁÃÄÄÂÁÃÂÂÂÃÂÅÇÉÇÈÊËÍÌÌÍÍÊÌSSTRKKGSGIIHJHGFI?AF??<874CKWg}¡¢ª­ª®²¯¯µ°®´®°°±¯®«¤¥uh]QKIMQVWXY^jjgeimmlqrsquse??Yvfg{{^HF^i^IFI\kvjN:.+4:VQf\YmkA>L:B:*)*+4=226360-3113--H*-,&0@[;'!"0JXeoll¥vX-$""#$#$!! $8qsrorÅ¹º¾ÄÃÅËÁi10),9.74<MYdlptzwvw}¡¢¢¨¦¬¯¯±¯·®±²³·¯®®®ª²­©¨¦§¡£ ~}} ªµË×ÛÛÝ×Ì¿­©§¨§¡ ¢~||}yvkVB8E7.,46031:M\I2'(&):©¬¨¡o8,$()&3@D6:3/,/2Tj¢¦¤ }£°·¼¿ÀÄÄÄÃÂÁÂÂÂÀÄÃÃÃÁÃÃÂÁÂÅÄÆÈÇËÊÊÊËÏÍÌÍËÌÊPPJPHNFHHHOGBHJBDKCC<?@84;AHTft§§¬©­­°°²¯­°°±±¯®®«¥zh_RONURTV^\X_ahihiijqoprsnU9OyxZ>C]bo`UEIcrkE553978;5Wl\^p;28@=41*5.2>.32,=3,4201=85,:@.00JC($!:A`eqzgZ°yD)"+/)# !(&!$)Rwrsvz¶Ä¸½ÄÄÉÐÌ2()(4C,1;<KU_emt~yvxx}¢¦¢¦©©±®²¯¯¯°·±­­©«¯­¥¦¥¤zu§ºÃÐÛßÞÙÓ»ª§¢ª£vzreTD>93(&<11./3E\I-,(%*@x­³®}<*("#"0BC?,1824<Xt¯£Å¤¡  ®³¿½ÀÄÃÃÂÃÃÁÂÂÀÀÁÁÁÀÃÃÁÄÃÄÇÈÊÇÉÌÌÎÍÌÎÎÊËÍÌÍIIMJLMGKIJLOKKGFDCEEB=:77=CETgv¤§¨¬«¯¯°°­­¯°³°¯±®ª«¡uf[PILYRY_Ya`]begfjklnrrrqhRU~uYEBSmipa?E\rlK988?7B172Gq{]QzK2;;@991221A8-++42/+-/$//*AWi2)$6C.)(**Plqn`MY¤«lC,'*&!&"" ((2qhpswÅ»»ÃÆÊÏÑ³D)"$'.=03<BNPchlpzz{{z}¥¥¥­§­°°¬¯³±°¯­ª©ª©¬ª§¦¤¡ z}y¦°¹Ï×ßßÚÓ¿«¥¥£¡|~yymbN=?1+(/7.3048J^K0%%(#5v§¯¬G'0()#,A=:6/4-2F`x¥­²²¨±¸¾¿ÃÃÄÅÀÁÂÂÁÀÀÁÁ¿ÅÁÂÂÃÄÃÇÆÉËËÎÎÌÍÌÌÎÌÍÍÌÊÊNNKKIMMGPKIJKKJDD?BD=85514>HTjx¡¥¬¨¬¯®®¬«­®²²­°®®¨¨te\QKHHNYXgqnb_dcfjiojnonpvt¢r_AKEOp|hjF:]~{];:69HM7R423@]}jMb718E;94760D53/,/1-)/1.(+-Gj_0$$.D5*-(2Mon{rVJt¬¤pH,% !%(#*+*Mycpz}¬Ë»ÂÈËÐÕÈu4)!%'>D106<FQchkpvyy~¢¦©¥­¨ª²®®­°¯°¯±ª¨«­¨§¨¤¢}|}|¡«¸Î×Ýß×ÒÃª ¤¡ ¤ ~xvn`Q=>*(/3:.58==LWE0&%'$8s¢¯¦V8=# &37?9/6204Je}£¡¦ ¥°µ¼¿ÂÃÃÅÄÄÁÀÂÁÀ½¾¿¿ÃÁÂÃÃÄÈÈÉÉÌÎÌÍÎÍËÎÌÌÌÉÊÊÊJJLORMLKKJNLMRHEJFIC;?;6629FXgv£«¬­±¯«¯©ª­®®­°³±©¦¥tkXOPDNSOZrd_cbjlgjgnytTG.?IWojO?VX<357;eI>UH=6LqsXD'3@9A:@52H83,17+,)+*3''/KHT1(-3<8,,-=_mvhONy±n1 .!&++('/_mdpyÂÉÅÈÊÍÑÓ§.!$$'/9G77=GPS]dmmwsz~~¥©¦­««³¯­®°®±¯¬§§¬«§¨¦¤ ¢}z|||¢ª»ÊØÛßÚÕÈ© ¡¢vwj[F<5/0/743=89AO\G* #"$0l¨§e4D#0'-;3;+,');Zv¢¡¤ ©°º¾ÂÂÅÂÂÃÀ¾ÀÀÂ¾ÀÁÂÂÃÁÄÅÄÇÉÉÊËÍÑÐÐÎÏÌÎÌÊËËÌÈÌOOKKFGJGEIJJOHDFBBCA>=5275<GXjw~¢¥©«°°¯®­«­¯²±±±°©§¢uiUTEGJLO\y~g^`_ihfrz ¤aD:;50ERmzV?\|`8-,-4_uHGV68:rRlX<76773;80@C1)).&(2**9)&&>FDAGE>91)5<Q`erT8U_¶­P(#$($ (#:ymon ÐÆÇËÌÍÐÀ\& &"#%?N918?NSZaelpox|}|~£¡¦¢ª¬±¬¬¬®¬ª¬®­§¨«¦§§¡¢}z}~x{|¦®¸ÇÖÛÝÝ×Ë­¡¤¡~~wykWD=32*05:1>969K_O.'$%%2f¤¥~g<8"-8?4860,+<]y¢ ¡ £­¸¼ÀÃÅÂÃÂÂÂÂÀÀÃÁÁÁÁÁÁÄÂÇÆÉÈÌÍÌÐÐÒÑÐÐÌÍÌÊÊÊÉÊËTTNPHNKKKJPHGJJLE@@A;9131/AJ\kw¤¦¦ª®«ª¬¬©«¯²³°µ±°££ ~um^OJMLKK_{t\Y^]iiv£©©oE)-7:4PkvHQzz[172/*;tmHLU66V[Zo143597R=7B6+*$-%')$(0'*+@RLLCFL9-8GM[\x¡`<4Rs­h% $#%Z|mktµÍÆËÎÍÍÉ0"&&$*&CU8069LVZeeopru}x £ £¨¤­±©©§¬¨­°ªª««¥§ ¤¦yyxz|¦­¹Ê×ÝÞÝÛÏ´¢£¤ ~ywcPC70((,776D85>JWV0#%#,,a¡¦|oK6(#.87840-&/Mfz£¤¢ ¡¡¡«µ¼ÀÂÃÇÂÄÃÂÂ¿À¿ÁÁÂ¿ÁÁÄÃÆÇÈÊÍÌÍÐÑÑÐÒÏÏÏÍÊÈÈÈÇÇÊOOIFKMGROPMIIFFBED?FA96003AJ_ix¡¢£©®«²¬«®®«°¸±±²¯¨¨£¢reYJIFNDPZ~z_a]dt£¡wxd@&,81?n{b`xwH=1;<,3P{dCiZ29au~`C{K22<5;G=1:=.+%%)''%)0,1>RZ[PLTO1,GaWOb¤¦¨ uH3Ca~_%$#:~ump~ÆÇÊËÌÎÌ¤>%""#! *@V;74;EPZdelosv{x£¡ ¤ ¤ª¬¬¦£©«¬§¨«ª¨ª¦¤¥¦|ux|{}¡¬»ÈÏ×ÛßÜÕ»¡¤ª£~xvo_MC6)'*081>F9<@LVW-%)'.2]¢¬zuP- +9631+,'?Vl~£¢ ¢¥±¹¼ÀÁÄÃÃÃÂÁ¿ÀÀÁÁ¾ÀÀ¿ÂÅÈÈÉËÌÎÎÏÐÒÑÒÒÏÎÏÌÌÉÉËÊÉËRRLOLNNKNNNJMPLD@>D=983/1+:MVex¤¨ª¬¬­«¬¬¬«¬¯¯²­±¬§¥wcWNJHHHMUrn[dw£¤op|W1)75=_}RRzxG:>8>917bp\MjALxycrqAma8;B>;J52:<,'$&&  ,5CJaleVTLH/-S^Jbª´´®O(3QevX$%Ypnnq§ÅÈËËÌÎ´F'! "*%"(FW?;8<DUUifkpuv}| ¡£¢ ¢ ©¦©¤£©ª§©ª¨¦¨¥¤¡¥¡||{wz}z~¢«·ÁÌÔÝâÝ×Ã  }ug^IH3)5,3437K?COGV^+&(&'4T ©¡S("'9812-&%;\q£  ªµ»½ÂÃÂÅÂÂÁÁ¿¿¿Â¿ÀÃÂÂÆÇÉÊËÎÍÎÐÐÐÐÐÑÑÑÎÌÏÌÉÉÉËÉËJJRNKMIONUFPNIGBC>C>A;5752=ERex} ¢¦¬©¯®­­©¬«­¯¯±±°ª§¢ sdVPFKOIKUdnk¡vioqT63>Gl{}}\<bwQA;>B34AZhbGeS;MueuwFYx=;=19<71;60(!&*$%$)6-;CnzfVB:2/MVe{»··µ])2=\uF$#6o m}vu¾ÃÉÊËÏÂd(!"%% &.JUC4;CJQVgijpnz}}{~ ¢¢¢¤ªª©©§§©¨©¦¨¥¤¡|||wy{{z}§²¿ÆÓáâáØÉ~yoeYG:-(*-00-6B>DMBMX-( !2I¥¥¦S**80(++,2Hdv  §±»¾ÂÂÄÅÃÁÁÁ¿ÀÁÁÁÁÂÁÄÄÇÉÊÌÌÎÎÎÐÐÑÐÑÐÑÑÍÍÎÌÊËÊÊËÍOOOLKOKHIPHGJIGEFA=>::81,.6ATg| ¡¨©§ª°¬¬­«¬¨°°¯²­¬«£ ~taXQFEFILL\lvmrm{~ztX;9FOzwqhBNjZOfbzA25Sj\JLxK9WvvbuWZJ88)-97368/($")($(=H39>^qnO>89@Eeuzxu´»¸µg,%2KsL& $Oxoxvw¤ÇÈÎÎÍÌ0$%$& #(&(I\G5<EILYbflrst|z~~¡¡¡£ ¡¢¡£¨££¨¨¨¤¥¨¢¦¥ {z}wwxz{||¢®¹ÂÔàåãÜÎ¨¡}vkfWE1''*,8/+:CCAMHDX2$#!#5Hz¤¦§X+%,:+(-/*/Pd~ ®·ºÁÂÄÄÂÃÁÂÀÀÂÁÂÁÁÁÃÂÅÈÌÍÎÎÏÎÏÐÐÏÐÐÐÐÏÐÌÎÌÍÎÌÊÌÏOOQMNQJIIJJHEGFBD?@=5661+(4AYey¡¤¨®«®«­°­«®®®°±³®­©¦£qfYOHJQIIOV]ntmdhkkq{uvcH6C<mkpP@iaYHJ_V5?H_a[Pp~hK9bogkx [C\H%,((79?6;.,%(,)%'07/D<?SjjO8:LpdmtyfM»½¸y;"-<N5".krosv¿ÍËÍÌÍ¢8$#%($%'"#$LfN;BFDKW`glqqx~y~¢¢¤¨¡¥¤¥¡ £¥¢¥}z{yxzy{} ªµÄÔáäáÚÑ®¡ ~ytkbTC.,)/642.>A?<MCPT-%"%3Kq¦¦¥_,"#76+(3-59Xq£¡  §±¸ºÃÃÆÄÂÄÂÁÂÀÂÁÃÁÁÃÂÃÆÉËÎÐÏÐÎÏÎÐÐÑÎÏÒÐÏÎÍÐÎÌÌÌÍÏQQUOVNKFMJEEJGLICBB4711.001=Sgw|¥¦¬ª¬®®ª²²¯°®±®²°®©¤~qhWPJJEFNLZ[hoqw~vvztoq}}fI344bumhNLbTVR]I28VXYWL\wcT<[zbYp{^9CzR *')-&0/8.+-'+#"(5.5ZHGOW^R;Ji~pnrU@Q¢¡m4"$17.+ !"D{qvs~¨ÐÎÏÌÏ¸I&")%(+##$!'RaS<BIKT]afjqtvyw~¢¦¦¤¢ ¡£}}{}{z}xtv¢­²ÂÓßæãÜÑºyud]K:,)*,+444=H?=JILP3&"!!1Km¦©¥m,&#.0&*(.:<^q ¥¯¶»¾ÃÅÄÂÄÁÃÁÀ¾ÂÃÂÀÁÄÇÅÊÊÍÑÑÐÐÑÎÎÏÐÏÍÎÐÎÏÏÏÎÏÎÍÐÎÎOOPMTMMLJNFHJGKCCD@73332*+/DPgv ¢£«§«°°°¯°±¯±±²¯®¯©¤¢~qdUQHJPMPNSZZ]^djv|zzWF38Gmgf\H`g^Wh]87NkbRHEuT\^D^{\Opi:5un%$%).--/:21*0.,)8212f^hLK[JF[z£ptnXA;<YOAD.*$(91 #0"+'[uwxy¾ÌÍÊ¿Å~/!!&*(!'&&(0UdY@8HDRV\`fpuww}¡¡¥¤¤ £¤¢¤¡}|z{|{{{|}ytz}§°¹ÑàæäÝÒ¼|mcVE/(+)/,51ADAHDFGEI55" 1F\£¥ r67,,.'%-+KCc{ ¡ £ª³ºÂÃÇÅÄÄÄÂÁÂ¿¿ÂÂÁÁÄÄÊÊÍÍÑÏÑÑÑÑÏÌÍÏÏÌÏÎÏÏÏÐÐÏÐÌÎÎÍTTQQPIILKJLHNHMCB>>;8403/$2FVer}¡¤¨¨®¨®¯±°¯®­®±²µ¯®©¤¡ue^UMJIJSRUZ[]gk{jku{tW?:=H^USMWck`^eA8W_aUI?KyFFM>\pTEh¢k>1a5#&-/-2**+40.92//.)0RfI>DNGQcv`cYB1CW^G:1)$0,7."-OJlvqz}ÉÊÊ«¢;&!%'+&&+$%+Xk]<BGMRXXejlusu{}|¢  ¥¥£¥¡|vrx}~z|z{z~¡©°´ÎàååßÓÁ~~~ngP6)()+.,2+-9B@CRAADD-'"!/DX£C+(/*&#$.DMh¢ ¡¬µ¾ÁÅÅÄÄÃÂÃÃÀÀÄÃÂÂÃÇÈÊËÎÐÑÑÐÑÑÐÏÎÌÎÌÍÍÎÏÎÎÏÏÐÐÏÐÏÎPPONPMNSPKONRIIM@>?872.5*'/=N`w~ ¤©©¬®¯¬¯°¯°´±²¶²´°««¤}vmYNHEIJLQW__huxjgmry{|vh9:KUb[Y<Ddsrd\?;Qg]LBB:cn:/1AgtX>e¢qF5FR&'$/@-&.)I=;0+$'#),9a4-RNN_x¨wbPH@FmrO9.'""0/+"(Peh}jmqq¸ÉÃ¥|3##"($"*%()[k[@9FHOU]ggkstty}~~¡¡¢¦¢£¤£¡|yurv|x{{¤«²¸ÌÞææàÓÆ~}yprdJ0-,(-,46-0:CCORAIA7-!!#2;S©¡^74)&#(",JYt¤£ §µ¿¿ÄÆÆÅÃÂÂÃÃÁÃÂÀÁÁÅÆÊÌÌÏÑÒÏÎÐÎÎÏÍËÊËÍÎÏÍÎÐÏÏÎÍÏÏÐÐRRMLMNNNOLPIKNDHA::554/+*$1<Tauz¥§ª®¬­°«¯®®¯¯°³´´¯¬§¥}ui\MHDAIRUYf||~yljmknssrmT5BFTUXU2Fj~xbL>V[NFC?>G}X22<Mr~V<bM8;l*#%)0+*7KL?)'$#%696V86qqBO©¢pg`elf[C1$##$2%!"Lywyzgeklµ­£YC-#"*$*''""-YnZDAJNPR^_itqvu}~|{}¢¡¡££¡¡wrns||| «±ºÍÝåçßÔÃ|~vrk]=0--&*280+.C>EHKEGE04"##//G«^(<)!!-+*Phv «¹ÁÁÅÇÆÅÄÃÃÂÃÄÂÂÅÄÄÆÈËËÎÏÏÐÐÐÎÏÍÎÌÊÍÎÐÏÌÐÍÎÏÔÎÎÎÎÏÐTTVQTQMOPIPJGFCC@:?:;8./,&/=Naw~£¤§ª¬ª±¯­¯°¯¯°°´µ²¬¬¬ }zkZPFFEKV_v|ohgjllxtuqfIEMLI[b[=\rzxNEKZP@MG:9cyK.'5Xv_:SS08f>+-)04;JD;5+*.!!$GO=YZkXET]l¢_J;E3.(&"$/, "%Gvkmdv¢­n5($&""'.$/E$-Vq\NFCCMYWcjvqwyz}|~¢|sjlt|}}­¶»ÊØäèâÓÂ||urgK0-**/0,63/8CBGNK@LB36$# 0.>­_2;6%"!'.Xp~ ¢¥°¹ÁÁÄÇÄÅÂÁÂ¿ÃÂÂÀÀÃÆÈËËÌÏÐÐÏÐÏÎÍÎÍÌËÌËËÌÎÏÎÏÐÑÑÐÍÍÎÏVVTTPSPPOOOKJIG@A??865.-+(-AOfy ¥¦«««¬®¯¯°¯¯²³±²²±¬©£}yeWNKBIS_phibjnkjquwmgNDJ<>\]GRwsnAP\\HAQH.7w]L1%6Snc=IU10PF*0/9GL53.*&78# "59APh¡i?5@OYfqe?1*-('!'#%0&  )wª¡¦¤uw ª½±d0$##'%2&#''$+]qbZDEJK[Zimntx{w|¡¡ }wgou}|x|~«´¼ÈÔÞáÜÓ¾z|yrZ>.%)('%0-208?<@JHIK;.7)!"3(6u¬¢l@22#!&$.[u~¡  £¡¦³¼ÂÃÄÆÅÅÄÃÁÃÃÃÂ¿ÃÃÆÉËÎÎÏÐÏÏÑÎÌÎÌÍÍËÎÏÌÎÐÏÏÐÐÎÐÐÏÎÍÍSSWVTNOOPIJKJIGKHG>@<;+1)(3ETiv~¤¦§¯°­¯®¯®°®±´°³²³®©© ~skYSLU_mse`hikhruwurq]ENFG;[YSnxtvTKZNC=FBQ/FPK-,1LscG?e_14;f-2=HFC0.'-9I="%))0;GAkRO;+(4;K^smP0,$! %'%: ££¦ ¦« ©½ºª]@% &5(.')('3[igYGC<RX_ipqtvvy~¥¡tkrw|}xwz~§´½ÇÏÔÚÙÏ·}}~phN:,').+'412-7@ADE?IK=.4-%(703r¦¤~nP2*""%3T  ~¤¬¸¿ÁÅÅÄÂÄÃÄÁÄÀÂÃÂÆÆÈÉÌÎÍÏÏÍÎÎÍÎÎÍÌËÌËËËÏÏÏÏÐÏÐÏÑÏÐÍÎXXVSSMLVOIJPKHG@DBB@>>-++*9NXiu §§««­ª­®­¬®±¯±³´µ¯®°£vqbZXly~mf]^bcdgkptwzviXFM=;A[__nfxlVWNGC6/9L?chM?2-/9kfKAQ¡i8.>B/+7=7*/*1:OC)!'*7I87//+(')1?irpE,%#$'".*a¨©©§®©¬¦±´µ¸½¬vM5("%%&,)10/&&2Xh[V?:GTY_dnssu||~|~¡tlt{}~wwuz­¹ÄÊÍÓÒË¦~}woYC0))++()58215?<HR<EN;+0/(%4'*g¥¤¨yqP2-*$%%=\~¡¡©±ºÀÂÆÃÂÄÂÃÃÀÁÁÀÃÃÉÈËÌÊÍÎÎÍÎÏÐÌÎÌÎÍÏÍÍÌÌÎÏÏÑÒÑÐÑÑÐÐÐÍZZQNRLO[RKQQGHLHAD@;=>:1,+:JWez¤©§­¬®«®®«¬®­³¯±²°«¨£|nadh_gd\\Y\^^adcdjox}uzdXTK25J\bhagzjiWK@K.#2PkYS=A-*6`nSHTv¬B64}¥_/(,2+.0-29^G$&**9KB>9*($*2BJqbOE2''''%%+( $®¥¨¨´´©°¯³¸³¶´zL-(%!"!0,+&()$3`oc\GMLT\]emtoyy}~||} qlpwns~~~zzyy¦²ÁÉÌÌÌº|xvhH0,))-,.,05125:9HG:<J<(.5)#0)+V¢©©¡vU(#."!)Bd ¡­µ»¾ÂÆÆÄÄÁÁÀÂÀÃÃÆÅÉÉÌËËÌÎÍÌÍÎÏÍÍÍÏÐÎÏÍÏÐÐÍÏÐÒÑÐÏÎÏÎÎÍVVZPPNTKQOMIMPNEC?AA;97521<O\jv¡§§¨¨«­ªª®¬°°¯³³´±°ª§£ymihZSKNOWQZY__fbdhmuu}[]PIC>LVe^_nveQLC>!"8Xn`P<R4-2Wm]VUs µ[?6m¢r8*10,2L;93\L& $'2-8>I<3*.3TsC'%$%)$*+*%7¡³­¯®À³³·½¸²¯¦ [<5&# !&),//%&(%.]oX\HPLV]adjwsxw}{y|~twwV:68GWfrsw~xzy~ °¼ÄÈË¾¥~~{q]:2'+%//.,6;72=B@MK6?N:0/4/$*(%Wª¦ {_1'2',/Um¡ }¥­¶½ÁÃÆÄÅÃÄÀÃÅÂÄÄÆÉÈÍÍÍÍÎÎÍËÎÍÍÍÎÍÎÐÏÎÏÎÐÑÒÐÐÐÒÐÏÑÎÏÏÍLLSOPMNRQHPHHLJECBB:CA89/5ASbo}¤¦©©©­°¯®°­°°°´³±±°«¥}qi`QDOKNSV]Z_bihgjkntqi\NNTK?UdXPfz|bVOM5$#5g¥\X;@]=*9Qyl]bWk«¨j4.Q~;'-006GLA<O<$"#'!  )/:NB/4g°©}3"$!%*)-+,%$!!W­°¬´¹Ã³·½¼½·®¢s/()"!%$%$%+8-*-++,Wib_KIQ_^`akpquywxxy  vydA1/1?KX_Zcquy~y{~©¹¿ÈÆ­{viK0*'-2--)/9653;BEPF6BO<.031,+%'I¬©¡x_6$.7&:`z¡¡¤±»½¾ÆÄÅÆÄÄÂÄÂÃÅÆÇÉÍÌÌÎÎÎÍÍÌËÌÍÍÏÏÑÑÑÏÐÑÏÑÑÑÑÏÒÒÑÐÏÏÐÎRRQOUNRGJPNROSIFE@C?C>978=DVfu£¥¨ª­ª­¬¬¯¯¯°³±¶³¬¨¨¦~qdYIKIMNV\\[]aggjfpnpnkO<S[S9[^USmv[ML<&/:}pQ>2LnB,IHwn[cYr¯{A4I<"*5':CdY3F<-$""%!#&,/G^MBb°¤v=),)*,+01+! !/£¦ª±µÄ¶½¿Á¾¼­e4"!''($$%*)314.+&'.ZnqhGNT\bdeinssy{x~}}¡zuziWE;EQa][WTY\qvu{}¢³¼Å½ª ¥ |v`8-0.0+.,--83.3:CFK?@IP720044*&$>z¬¬}~~`6#(?0Acz§¶¼¾ÂÆÆÄÅÃÅÄÃÅÆÅÆÉÉÌÍÍÎÍÎÏÍÌÎÍÎÏÏÏÎÒÒÐÑÏÑÐÑÑÒÑÒÔÒÎÏÍÍÍMMUJOHOLKQIOQNHIF@C>?GE<=?MYgx}¦¨¨­«¯®¯­¯±«°°²²¯°¬«¦ |o`TKHCMRQRY[a_cbgholnojTIc`O=]^]Sm}{fXMG*!&.fhA4<fnE-NBlu]TYz}«S/@N##0$*CE?1F?F<%!#$$$#)+EUNt{V6+-12374'%!"Q¢¢¯Â¸½ÀÇÅ¼¡<#$"&&('&'**/,./.)$(_kpfMNS_ecjlpowtwxx|}~{wy}xrle_ekvtoi`cW`pwxz©½¾°¬§¢ ~lT/02*,00+-,;206=FFS95ER=/--7;$$!:u©«|^<)&6GJo¡¢«¸½ÁÄÄÄÅÄÃÃÆÃÅÅÇÇÊÍÍÐÎÎÏÎÐÍÏÍÏÏÏÑÏÏÒÓÓÒÒÒÑÒÐÐÒÒÒÐÐÌÏÍÔOOTQQNMNNMONMMIGAEKGED?BAFR\ly¥£©§§®­®ª¬­¬¯³°´±²°¯«¥¢{lYVMKMRTR^\Z`effoknnstlMJfdJ@_\TQNNlZGPG%#7WqmA4GjnR2/KuxdcWxxv¥f<D]+#",106Wdv^00(+'" "'1Yf~S5+)2>=73-#,-+:Ei¢®®±¶¾À¹®($%'$*.)+3-+-.2(0+10_oneMMObefktwquu}{x} ¢ztw}~~{}~}vnmgamyxz~±¼´°«¥¢sa@0.1067+)-)B12;8EHU;9BKE.,-6@(("2d¥ª~jH0!)NWt ¢®·ÀÂÃÆÄÃÄÄÅÅÀÅÇÇÈÌÏÎÏÏÏÏÎÏÐÏÏÎÎÐÎÍÑÑÒÕÒÒÑÒÔÑÐÒÑÐÏÏÍÎÎÐNNWONMMOMKMNKFFIIECEGCCGCERan}¡¦§©­¬«®«ª±²±°µ±³µ°­¨£yl]UJGFOSW[_`faehjnnwxxpRW_UC=bYRNAPaP:<1+&DubUM:U`cO<1>wobQour§wEOo¤j" &)1).lzB0,($"# "+WyU2)&0A2/M=;TRL]copz¨¤­^7&% #'.8:,0.*)*0&./*0ctsiQIP^flhtoquw}zz|  }{z~{~wvutowv~­¿»³®§¤umZ302,/830+*0@75@9IMTB?ILC0++78*$",]¥®z[R*%-Nc{¨±·ÀÁÅÄÅÃÅÄÃÄÂÇÉÈÊÍÏÑÏÍÍÐÐÏÐÏÎÐÎÐÎÐÒÑÒÔÑÑÑÑÑÑÐÑÑÏÎÎÎÎÐÐMMPOJHQONHJCIGLGDAAABIBLKLUgp}£¥¦§ªª§«¬­¬¬­®°²¶µ³®ª¤zodVNHKOOT\V\accgemy}qqdXbT98=T]WU=MVE3*"*JqtiMD]GXVRIB4EuiJEdzp©XWz~1 &+75&/o§LO6$&"#2o{lM+.#"IZDKeh^dm_n}mlz~{´´¶b0&"##%*;QIJEE,+,-&2;3+Wqyi\SQ[aijpvutv}~}~z}~£}zz|twvy¨³»¿»´¬¨¡~wi?.,.3-84-/3,=2:98M]M@8OQD2,,:1'&#+O¥¯|dY;''Oo ª¶»ÀÂÅÃÄÄÃÅÃÆÄÆÊÊÌÍÐÐÒÏÎÐÎÎÐÎÎÏÍÎÑÐÑÔÔÔÑÑÑÏÒÓÏÕÐÎÏÏÏÐÐÑNNTRSKQMOHJNONLGA@?FGKGIORYeu~£¤¤¨§ª«©¦ª«¬¯¯¯·µµµ¯«¥zl^TKGGQSU[\^c\cdkvyyuwfZQ-46=U`WUAKEB1%$5fyhG>>[TUDNFW<?k}_WSbqc¡nb~N#*<5)/q´wq0&Vx^F]N'"'I``chtorvajsjlps»ÎÏ,)$+#()19AMZ340*&0"**.4b~tdcORYhopoquwxz{y~~ |uy¬µ¾¿À¾¼¸²¨¦¡xuU6,.-*1/*1-/1;27<<I[`H=JE>6,-<-*-!,H£°¡{ab7*(Ry ¢­¶¾ÂÄÃÅÂÃÂÄÄÄÅÊËÍÌÌÏÐÐÐÎÎÎÐÐÐÎÎÎÎÏÏÐÓÑÓÓÒÑÑÑÐÎÏÏÍÏÎÌÐÑÓIIONRNRJIGRNSKILDC?DHLLJTRYiz|¥¢¢¨©§¨«¨©ªª­°±°±´³°®ª¥wp_ROKIMSUX\Za``eitwpsvl`C+*'2N`WYGL;</$4Z}x^H20?Gc\BFPiCGmp`UUviS§yaa0"#+=.)/h¤ª|69x`45TF/3DY]kmhv}¬¬qdufclr¢Ó×ÀQ$&)&#&(-17<?3/1/.0&$)&-gwy]dKT[gjrtrtuszy|}}|¡ª»ÅÇÂÁÃ½¹­ª¥£~xl>3/0..40+.+23>6:?:RXLOKSBF:41B)1+!$?«§wUb</0W} }¢®º¿ÂÅÄÂÄÇÃÆÅÅÇÉËÌÌÏÐÐÑÍÎÎÎÏÐÍÌÏÏÐÐÎÒÑÑÐÒÒÑÑØÏÐÐÐÎÐÐÐÑÒÓQQPQMHGMIELQOLKJCGEICGGLTU^lx¥¢¨©¤ª©©¨¨¬­®±¯°±´±²­¤xl]VRKGQRVVZ[c^_ejosrqzsH*-%+OVPMED=8,-Xa?8/1>FSV=<[xO\}re\byyfIfdw4'#&18+/V8(" "(Wb5':;IRSdb`fms¥¶³_dj^eu~ÀÔËw/(*(-+.)121,EA446131()-0dwzWeNV[`mlrrzxy~{|{|z}| ¡¦£¬ÁÆÇÃÂÂÀµ³¬¨¡vV1110.(/4/2+12;;=;D^\EAERBA83<M,-0((?w©ªtVdE-<c ©³¼¿ÁÆÃÀÀÅÃÄÅÇÉËÍÍÏÎÐÐÏÏÎÍÐÐÎÏÍÍÏÎÑÐÓÐÒÑÒÐÏÒÓÒÐÐÏÑÐÐÐÒÐÔKKLPKJIDSQOOPOLIEKGDCFJPU]bmz¢¦¥¨¨§«­©¯­¬¬¯±±²²°¯©¦¡xo]ZJKPKWVZaV_]ddefjpxY*''2LZV?BE@>+MmN2,+1=PLT?>PuVp~ghkoygSHTpX2.(3?.6Nq{rgG8$).CV=/5LJakdopknw°±¹Zbp_jw{¬ÏÓ 91.,3854198<>=9828340.007`w_hPS\dmlruxyxx{{|}zx}¡ ¤²¶¤¢¯½ÇÅÂÂÂÀ¸³¬¤tH525/2)..)115+7@>8A]bC>P[L:7.=L)..&!5p¥«nT`J:Jdª´º¿ÂÃÃÅÂÂÂÄÃÆÉËÌÎÎÑÒÏÏÏÏÏÏÍÎÌÍÑÏÐÐÒÑÑÒÒÑÑÐÒÑÑÐÏÑÒÑÒÒÒÑÔRRRVPPOSSOPSPMLIGFHB@@FLS]ck{ ££ª¨¥¨¦ª­¬¬±¯°±³±³´¯¬¦paUNJNORTVZY\^bfhgpxO8+,/HVSF>NGIEwoVC84,->FLLK>QZ\iqbgrk}mWAOjooF-)/@35Ki{cH-;&0CG4" *5V{}upx®½±eXoibt¤ÂÑ¹K.-//04300,331@676611.,+04\st_iUTcahpouwz|~y~|¡¤¤²º¿±¡£°¼ÈÈÀÂ¾Â·±¬¢}w`;13340.1-*+.23BH:7>c]J:FYD8@4@B-5((!1h ³oP]S>[k £¨±»¿ÃÅÂÃÂÄÄÅÈÆÈÌÎÍÐÐÑÏÐÑÐÏÎÌÌÏÍÐÏÒÑÏÏÑÓÑÑÒÒÓÒÒÒÒÐÓÓÑÒÖÔÔQQMLKGFKOQRJNCHJEGA:>@FMVacn{¡¢¦¦¨¨©¨©¬­±°´±´´µ¯®¬§ }lbTOINLTU\``b`akhnvrV?15:Kc[MERO`m~Z=;3154AJJUMDEL\fohZrn}uiIJk]~XJ>??MKFkiopC6C=JN:**'07S}©¬±¶½Q`cYavÂÌÃs85655@?>763793<?864,-2',,1Yop]nUV`djosvwzx|y~~~  ªºÂÅº¨¡¦´»ÊÇÁÂÀÁ¹²¨¢uB120342.5050253DH<5E^]IAFXC>>7F?5<+(#/X³|QX[Cft¡¬µ¾ÂÃÇÃÄÂÅÄÄÇÉÌËÏÒÐÐÑÏÏÎÌÐÌÎÍÎÏÎÎÏÏÏÏÑÐÑÑÑÓÒÒÐÒÓÐÑÔÔÒÐÑÔMMQMDFHOMHLPJJIIFDB8;;DJVbfq|¥£¦£§©«««ª­®®²²·µµ²¯ª¤}jgQMKGHRYSX__abfgspaU9-:9B]K:EZpu`B;@--0/2?@BH>CBR_^QEdplvrKFsxU|||fP?GL\OEV[SeIIB9AF+" -3Iv¥ª¨¸µ«[NhUQYi±ÈÅ~9'%+*)0177;9?<ABK@AA<99/89:[qtfpa]cjkorx{~}}¢°¾ÉÇÀ°¥¬²½ÇÆÄÀÅÅÁ°¨ {\6./101/12/.0-48RG:5Q_V@;FKF89<@62:+-./N®X[dLpz¢£°·¾ÂÃÄÃÁÂÄÆÈÉÊÍÎÎÓÑÐÑÐÏÍÍÎÍÍÎÍÍÎÎÑÑÑÐÐÑÑÐÑÓÒÒÑÒÕÓÑÒÖÒÓÓÔKKKIDFGJJKFINJJIEA?;==AHTVds ¡¢¢©§§¨ª®¬«««¯±³²³´°®¨¨|laXMNMKQVVX[]a_aiqkeV@1:<KW?Aat}ra459+-0./7JEAJKF;Q^RHCVv[nsUPKZmxsTCBV_]W_b]]M=1/>A*%$3I{¥«¤ «§¯¼°S[jXYbeÃÇ7+1&+1'31.12--/61A=;;-2.+*'&JopnfeS`klqqou~zxy|}}~y}§´ÅÌÊÁ·©¨³ÀÉÇÅÃÆÆÀ­¦£}uA6-5112,+/*,0.17KD:8QZSG;IOB>7?C4/2&'"0Bv¯£VVoVj| ¦®¸¿ÃÂÄÃÃÃÃÆÈÊËÍÐÏÐÑÑÐÏÎÏÎÏÍÍÍÎÎÏÐÒÑÐÏÐÑÑÒÑÓÓÒÓ×ÒÐÓÔÕÒÓÓÑFFLJIEHLIEEMLFIK?A>:<BGNR\hu¢¥¢©ª«ª©¦¬¨«®±±³·³°¯­©§ xq_VQIHSOLST\_`\grup|fPDPB8NRG`|XF>3BE0/?201IJ9XJA@KRFQB_|eg[VVFen^yw`>>Vho`UNJRI+%%6F2'/?Sµ©¥¦­´´¿»¬^XbZX^`u É©?)#$(31,+,143/18:;K@<C921,0/,JxjnbiQ^`hsqst}z{|£©¸ÊÎÌÆ»±«°ÄÌÊÈÆÆÃ¹«¨ wg4.)1041-11/+/.1>EB69WYTE;IOK6?AB3,+($+=w©¦YPrgt «³¹ÂÂÂÆÅÅÄÅÉÈÍËÎÑÐÑÒÒÐÏÐÎÎÏÏÏÏÎÎÏÏÑÐÏÎÏÒÑÒÑÔÕÔÑÐÐÒÔÓÔÓÒÔÔMMNCFGLGEGGKMJHFCC=<8?DKY_gp¡¡§§§ª§ª¨¨ª«­¬²±¸¶´²­¬¦ylfYJEFIJQ\V^]dfssivyhO29@?RIWvg/-26ED03;156NE7KQ><IZMFK[`wlMDPPYhwf:5Is}lNG9?D&&<7CKWo ¨³¶Å¾»Tl^ZZYo¾³\,'#*,13./(,23*,/30KB850042''/LtajhoV]binosxzwv~~~|~¡£ª¾ÍÐÍÇ»²­²ÅÍÍÉÆÀÃ¸±¥¡vF-011.701051./59@CF;=UOWG<@XG3EC;.3."'"+:r§£}bJknt§³½ÀÂÃÄÄÃÄÇÈÌÌÐÑÐÑÑÐÑÐÍÎÍÎÏÏÎÐÐÎÍÐÑÏÍÎÐÑÒÒÓÓÓÓÎÒÒÔÒÒÓÒÑÔÔGGLJFHIKIFBIIJC?=@D=B@DKT[ds}¡¦£¦¥««§©©ª¬±¯®³µ³³µ®¬§¡ynb[HBMJLRUP[Y_irjp{w`?6CA8QSfx|L$**,Zd3:D7/8HE4F^A=BNTBMWL|o6?J^frww}~H1JbB;,.1;-('5FZYfx~¦­°ÁÂ¾[]l`X]f|«Ào/)$(*)+<@/2010).4>/MD=<1,6.&%*Elfi[vXZceopqruy}{|~ ¤¤°ÂÑÎÍËÁµ¬°¾ÍÌÊÅÂ¿¹®©¡|h7---.--02.4-,)16@GB8JPYQHA@PB8BC9511*+#/>p¢£}wfMnzw}©¶¼ÁÄÃÅÄÄÄÈÊËÏÏÑÓÒÐÏÐÐÑÍÎÏÐÐÐÏÐÏÏÑÑÎÏÎÒÏÑÑÔÓÓÔÒÒÑÑÔÑÑÓÓÓÔIIFHHHFBEFA?CDDBB=F=BBFNOYbq|£¢¤¨ª©ªª­«®­¬®±³²´±¯ª¤¢xp^SOFHNLU^TVVexsnfwud<CB<D]mj{p<'/24:]:QE<9>HA:6\RA>DMEG@Ryp:1KWt~n{zd6iS/7,'+>K15CWfmdjs}¢¦®¸Â¿±e]ZVXY^rÁ9*&+,74/6D81.252+2=7J@=B,.4/+()@bcg`zYQ]ivnmwwx|}£©¯ÄÓÒÎÍÅ°§­¶ÆËÌÄÁ¿»¯¥|M/-7,1-+7.-71.,2<EB77RRZJGCEO=4FC1@04'+'&En «qeNv£«µ½ÄÄÆÄÂÄÆÈÌÌÍÌÒÑÑÑÏÎÐÏÏÏÏÏÑÐÑÏÎÎÑÏÍÎÎÏÐÒÓÕÖÔÔÓÓÒÑÓÓÒÑÓÔÔIIEJGFGK?IBEGGIDHAA>=HMOLU_pw{¢¥¦§¨©«¬ª¬¯°¯®¬²²±µ°¬§£zo`UJHDPOPPQ\]wpolj{u_3>A?Wolp{~g5(/9;4:SRHCC?P@40T_KI9HOD?OftS3HBPzzyitlyT§:#1;' *BX\bd_kagw§µ¿Å¹vVeb[YYpÁ>(,)%)7503767+1:00-@4DKLB57../*'Aibe_zdI\ahmutt|{~z~  ¥¨®ÃÎÑÍÌÀ­©±ºÈÎËÌÅ»¾±¤o<3,-+1.010/.*4754=@=FJPPQLDJI7/D86>22*+'(>o­tgIs~¡­¶¾ÀÄÃÄÅÆÈÉÎÍÒÎÐÒÑÍÒÐÏÐÎÐÏÐÑÐÑÏÏÏÑÏÏÐÎÑÒÑÔÕÓÒÓÓÒÐÒÔÔÕÔÓÓÔMMICEJ@HDCFDDBCD@;>=ABNNRT^ov}£¤¦©ª©¦ª¬«®­²°¯±µ²³´¬¦ {sbSHDEMSUUX]neffmwW5<ESdg^lywW9+6;41>WN=DKFEE<;@`LME@KCAG^hdB825Osskny}}.!+?* &Rsrki^_^n ®½Ä¾Rb`WV\e»µ@(*%(&,AQ83918//857/86CJP>:7.,%+(>jge[pdS\bfisou|z{}~ª°ÃÏËÐÎ¾±°¸ÉÓÓÐÌÊÀ¿³£M4(,-..+:8311,,1B7><:CHPLMFBHD78B9;9+0*&&&6n®qtDq  £®¹½ÃÅÄÄÄÇÊÌÍÎÒÑÑÐÑÏÏÏÐÐÏÏÑÑÒÐÏÐÎÎÎÏÎÎÑÔÒÒÔÕÔÒÕÓÔÒÒÓÓÓÔÓÓÓBBF@DA?JBFEDCGEA<?A<GGDJM\^i{¢¥§§©««¬¯¬®°°°±¹µ²²±®§¦~mbSEDGLJQQWjlkgfo{tU5KU[JFOwhaD,75;07DE>;DOE<CNMETXLC:>EFET^]b:-0=Rtup{;&(1Hi}~pmhs¦¦¨·ÃÀ§VYqUWbfu¦¾r)&(#%(7MPA300.'+706148FHGGA0.1&+(4dh_\n_LP[`gwptyyx{{~£¤±¶¾ÊÍÔÑËÃÁÅÍÔÊÁÁÀ¾¿µ¨y;*).+-3-8D313+.074<?ELIQKVC@LK?B@=G9//+%&%.j{¬t}Ks}£¯·¾ÃÄÄÅÇËÊÏÎÑÑÑÑÐÒÑÏÐÏÐÏÒÑÑÑÏÒÏÎÏÍÎÎÐÒÔÔÔÔÓÓÓÕÔÔÒÔÕÓÕÕÔÓÔII@;:>>E>C?FDHJACB@?DEBGNU]iz£§§¨¦¬©­®­¬²°²²·¶´³®®©¤}shPJFGJORS^~l`cgepvjS;IWD39S|gUC*7<43HQ@8>=RD;@P`NI\KNA;GHMRPTq]>,2;Xnz[&$#2Ul£¢}¤··¶ÂÃ²gXlfYbjw½8'0+,%*?UbF6:23++>.1*33AARPG12(+)(8`[a^nc[YZdgvpqwx{} ¡¡¤§§­²¹½¼ÉÓÏÊ¾º¯¯®®¹µµ¦zX<-*/',-55J30/.3972=EEGKSORE@ILCKE:F>/-$#'%*]{­w}M}}§±¹½ÁÆÄÈÊËÌÌÐÐÑÖÓÏÑÑÑÎÎÐÏÑÑÒÑÒÏÑÏÐÎÐÏÒÑÓÒÓ×ÓÕÔÔÔÓÒÕÐÓÕÒÔÒÕFFB;>A<?AEKIIAA@=B>@?CIFRU^hu  ¨¨ª­ª­­ª¯±¯­¶´±µµ²°®ª¡|neSEFIFKLVsn^_ddip{vjJ:GD5&4kwgW:16B2?LFA<9<\J>SQjfJ]\TRGJKQMGK[qS872J^vwqwk3)**'Caw¢¶¼³­«¿Ç¾ÂÄµwO]qW\ltµ´E,/.(%))A_jK1/20&*94654?DCUNM/*+-)):[jVWfgSN\^`oqsxu{|}  £­¹À³©¤ ¤ª¬|}y=/.*/.*2569/./0/836EE>GITPZGAFWPCA;IE/.$'&%(T§¢u}\| ¦°·»ÁÄÆÇÊÊÌÍÑÒÒÒÓÐÒÑÑÏÐÐÓÑÑÐÐÒÑÑÏÎÐÒÒÐÑÒÑÔØÕÕÔ×ÔÓÔÒÕÔÔÔÒÑÔEE<;;?=;BD?DCJCCCB@A@ECMSV_j}£¢£ª©«©ª­¥¯®¬²±´¶´²³±¯¨¢zlcQKJJJNTfua^_]edqhPB=:)';qv}mE:9D3;>EA:76ME?>AauUR``UWLPOOE@GmsRA::ATXWm]+&Rscdl¤¯ÅÊÄ¼¾ÎÊ¿Æ²~W^m[Q\r©Åu)((-%'))?_qR4+,3)):4475==FGGC3-4,'*9UfPYibZGV^dkpsz~}|{~¡}u{~X//2*30/49251132593>@IE:>TKYHDEQOBA:FG6-&%$$-A}¤tvc}|£­½¿ÁÅÆÊËÌÍÏÑÓÓÑÐÏÑÐÏÎÏÑÐÒÒÒÒÒÐÑÏÏÑÒÑÑÔÑÓÔÔÒÔÖÖÓÔÔÒÔÕÔÕÓÓÔEE<=;:8B@=D@?FBDEB:8?@LNJRYn}¤¤¤¨©¬¬­¬¬¯¬¯­±³·¶µ²±¬ª ~yn_NOEEHOYtk_Z\acismE6/)(/Wk]j;00A79>BC6926@FC?__R`if_VTWJOCA[wlJ329J^Ze}}T3):ph^n¢±ÄÉÏÍÌÑÈÃºS[ifZ[c{Æ.%%''*,(7KbI,*,4+'48565BIQEGL6/.-*,<`oNWd]THTX^jppsz{|~~}~~zqfguw9.,2)-1+020/7/4509/9FJC>FUFWLHPYA@=7;G2,$&+,0?z£rof~~¨³¹ÀÃÅÈÌÍÍÎÑÒÓÓÒÒÒÑÐÏÐÑÏÓÐÏÐÒÑÓÑÐÑÒÔÓÑÕÓÒÖÔÕÕÔÕÔÔÕÔÕÕÖÓÔÔÕ>>@<;6:?=:=<DGAG@@9;;BHKNU\iz¡¦¤¦ª¨ª®­©°±¯¯²´µ·¶°³²ª© zn^TIGAORlm[YX]gjreB45.)1^S2jjL35G=@?BB1;:489;@b~tT[mccbUOGHEACVylP>:Ll^drs`|{hYaut¾¼ÈÓÎÊÑÈ½ X]imYYcv¼µA(!% *-),)/BTI.0+-/'44.;;D;M<GN;((+.-/_vNZ]bRFR\bfolrsx|~~zshhlvx}|}zz~|wvzvry~relrzysb\agv[35//+/-/96/0-5/,8615QP88AXAUBNQY<B33DEC-'!+(*>o¡xjqz}©±¹ÀÄÇËÍÏÎÐÓÓÕÑÑÑÑÓÒÑÒÒÐÐÐÏÐÑÑÐÏÐÑÑÒÒÓÕÕÔÕÕÓÔ×ÕÔÔÕÔÒÕÔÔÕÖÔ5546<:7:;6<?BBCA=>?>?EHJNUZgu ¢¥¨®¬®­¬¯¯°¯³²²³²³³±´¬¥¤ymbN@CDUhveVW^]dr_A6+,2G\5)CWI@<=9:AONB85217>Hi}d`dicicOOOH@=G\znVF`nVP[wx`TWs®«vu§½¼ÅÕÍÏÊÁ¨eUitfY`k°Æ|-(./+,40,'$=PN0%*01..11;=D4GBJRE++,)/1VzFRVjNLJY`clowtwy{|{s]FGNYemoqyy|}wywt{upsmqrnkjjonnos~|}qWLCW_binicls|C,./,*/-576,1.1,2:28?II3=GT<O?HRR@F229DC2-!&'(6e l{ª´½¾ÆÉÌÎÎÑÑÔÓÒÒÒÓÑÑÒÑÓÒÑÑÏÎÎÐÔÏÒÑÑÓÒÒÓÓÔÓÔÔÔÕÔÖÔÔÓÖÔÔÔÕÕÙÕ9986:@<>=9?@I@@@;<;:DFLKRYal}¡¢¨¬°®¯ª±®¯²³²±³´°²´®­©¢zn`RHEHli[UVW^p¡{^D=.8<aU6'5DC;:?B7GLP?==01<5Mm{fmk]fhfZLLN?>LXzwayyN9Far`I:^|s«¶À¹ÅÐÐÐ¿´yL_nja[d¥É®<#&/122:2&$,5IN</(+4+)1.87@1CALOK,)'',6Up>KWlVMDRYfkpvuww~}}q[USVLIHMT\ahhjjkipnsga_]_Z[TQXYZcfpvvx}zsc]ZTZcdotppr}`4(5/-%0.4=3.521-6;6:EKN6HNS=LDPTRF?,.?UF<1#),*6av¤¡|£­·¼ÁÅÈÍÌÐÑÒÓÓÓÓÓÒÑÑÑÑÑÐÐÏÏÏÏÑÐÑÐÑÒÓÓÒÒÔÓÒÓÒÔ×ÖÕÕÔÓÕÕÖÖÔ×ÓÕ;;6<575@>B@DBC>>?@@?=JNOPacr{££¨«­¯¯±²´±²³µ±³²´³±­¬§¡tn\VKCYk[OVT\f}wZ;53@XVC-#(0.5?NL3AKT16H7:94GtljeYfnreV^TC9?M\z|HE=\KA@?Ro{ywv{®¿ÇÇÐÕÔÍÀ£VVhqXacvÄ»`&%'/,/12.,).3=IF/&)*0+5578>7A?KRM/%%)(1Rl?RQcWJHQ]fkhwwwy}{~z}sjdmdaXZSRWTQU]Z]ealoigff`c`WYYa]fnprvttzskongckt}w|v?,),/+0.1462+)).4:31@KA<0;RW@OGOPO=:**9WM@1&.0+4Y £~ ¤~y°·ºÃÆÉÍÏÒÓÖÓÓÒÓÒÑÑÓÒÑÑÐÑÒÎÏÑÐÒÓÒÑÐÑÒÓÒÓÔÔÕÔÕÕÖ×ÚÖÕÔÕ×ÓÔÕÔÔ9975494;;8>>D>@@?<>@=FQPT[ep{¢¤©­±®¬±°¶±±±±°³µµ³´°­¥wp^QKT|t\VOSZYstW@/8PN<?/0'+9=KMY6BMH54X><86Curn`dZ]gcfoiaWLQMXgx?66ME-8CZt¾ÓÙÙÓÒÈ¸M\hVV_u¶Å2-0++73.1,)**08HC4,67,/5468@55=IPR9*+.'3UgCQRaYRLR\Yeirzx||{~~}|}}wzx||tnjb^_^a`jliprrsnppmloikkknlkosz}}wxT3*,1**-012:-*-*+.714FIA85<WLHP>IRQD9+06OO>1$%0)1Q{ |~£­¸ÀÆÉÌÐÐÓÒÕÔÕÓÓÓÒÒÒÒÐÐÑÐÐÎÑÑÓÔÔÒÒÑÔÒÑÒÓÔÔÔÔÕÖÔ×ØÕÔÕÕÔÖÕÕÓÔ22:96>:;?<<@EGA>@>?CAIYXVZfpz¥¥©«­®¯¬²¯¯°¯²µ¶´·µ´ª¨¢¡wpYTYup`TNSR[eznS<0>T98>71&*C;;89:EVF26YT><<=|nccccb]Xhumjc[T^l|uUIFAQ7HRo|¯ÙààÔÍ¼k\j_Sbt¹Ç<,(/*20-31,3((15B>;,*/*3=696;>8>BGO=**2.2So8RVUVHLN[_eepquww{xyyy~~}~{ssnknnrtsv{~||~}}z}u80,.-3-107:4.-.022;;8FH877DZHLIKJRTG806=\a>.*+.+3Py£x¢{¦±½¿ÆÌÎÏÒÓÓÓÒÒÓÑÑÑÔÓÑÐÒÔÒÑÐÒÒÓÒÔÑÒÒÒÓÒÓÔÔÔÕÔÕÕÖÖÕÕÕÕÔÕÕÒÖÔÔ665977;;:@::B=B=<<8BCI[[^Vjv{ ¡¦©ª¯±®¯²®°±²¯µ¶¶°µ²®©£ti\d|z[PKMVZ^qzz{f\E7HG;AD6*,:8.7:-4>UD6:Je9829¤kKOb`c]`Wdakoha^dSZRke<=bGfg|ÐãÞÔÀ¥{XioZ^rÆ·U').1934610-,%):8A:=-)/02<8?7?@1:EJPA+,',3NhCJPXUKNPVbbepsuxx}{yy{|~~~|~{{xx{x{~©¨´¯²µ¬¢}L1+).1-.0,8;--0.2/2;<=O@399F`IEJQISTME.1;M`=102.)/Lj£{¢z|¤±»ÃÇËÍÑÔÓÖÔÓÕÓÔÑÐÓÑÒÑÓÑÒÐÐÐÕÓÍÔÓÓÐÓÔÔÔÔÕÕÕÕÕÕÔÓÕÔÔÔÓÓÔÓÔÓÓ884<?:<3=7==@=>;<;;IIOWR__fs~§¤¦«°®°®¯´±°³¶¹µ¶¸µ±¬ª¦unk¤dPKNOSWmzvuuc]J>DB6KP<-79,"3.-0?`K53EbB70?¯nN:UU`ehelba_UXaV=9?gxT:c\yzu{²ÜÚÌ¬_]neeo®´½}80,20795554-1&'3A7<81+,/2<@<?8A59;END/2016V_@CJSSPPSObcfpsrurx|~zzz{z~~~|{~}~|{wzz¤¨©±­²·«±ÆÁÇÇÂÅ´¥e;,.+0.2+62015//.+,2<28B487;K[JCOFJWL?B;58Q_E4$'/-2Ri§ |}|¨³¿ÄÉËÏØÓÒÔÔÖÓÓÒÒÒÒÔÓÒÔÓÒÒÑÒÓÒÔÓÔÖÕÕÕÔØÔÕÕÖÖÖÔÕÓÕÒÓÒÓÔÔÔÔÒÓ88:7>89;;==<BG?F<98DCMTQ_^dmx £¥«­¬¯¯°±±³´´´µ··³³®¬¥ ~yx¡^MKJRPU\oppuqbbSEE>>ScK;B2*&3+)/EbJ:<:`\/5<´gJ:;K_mmhlj[QMTdV::;QsrSsoxzzry¥ØÒ¹k]jgmyºº½A4+61,47370.,')%.1:578**,21?>04A<7;BH=0),2:M]J?UTMRKHLX``ksqvtqvvvywz{|~|~~}}|yxy~ªµ¸¼¯¾À³¹ÊÆÄËÉÄ²£xC-++(*.032255+))*(629155-27@JeJCJMLSK85/6EGZK4%(1+1Oc¦ {¥µ¾ÇËÏÓÔÒÕÖÑÔÓÒÒÓÑÑÒÒÒÑÓÒÒÐÒÒÔÔÓÒÓÕÓÕÔÔÔ×Ô×ÕÔÓÕÔÔÓÕÓÓÓÒÑÔÐÏ4486:67A9=@BC:A?@4:>ILST\[bqy¡ ¤®¯¯¯°²³¯¯¶°´µ¶³³³­¦§¡}{cJHGLQQTcufgtjfc?@@1@o}A=;.&&1)'2OfP=79]g3,E¶lG<3HP[lkvtkZT[^K;>7L^pbl|~sw«ÐÉm[jqi®½¼¨V.-7959652525',1,/,5=/<5*+.1695<B5?BDNH9..07GVD8UOROBBGSV_gmoptos|uw|y|x~z}{~~w}vyz}} ¦³­´±£¥¯¹±º»µ®[4,/.-)-./6146/*))+75<8=/526EMkL=MMOQJ>73BK<YU7+*--/Ng£~{z{ªµÀÈÌÑÓÕÕÕÕÐÓÔÒÔÕÐÓÓÔÕÒÓÔÔÓÓÔÕÔÔÔÕÕÖÕÖÖÔ×ÔÖÕÕÔÓÔÓÐÑÒÒÒÒÑÒÒÏ448:75;=9=7@9;>?@75<ESVZ[bcnw~¢¨§©­®°®³²«±µ¶²·³±®®ª§¢¥|[KFFILMSZlkghkbgUAJJ7NEB-&&-3%)BdbDF:9Pk>-B°mN1,AQVYYlyxk]\bG:R9CY__iwsÀÐ¸hUkrq¡¥´«¢n1.32+14402451/-0(/+3<6590++/5;89B>>>FKC>,)*8AQG4ZPVQ:EMVZeijnqtqwxvwvvy}vzx|~{{zw|}}}¡§¡ §¤¢ u;)*/'.*-+.C1.4+++)(1-:H<,,*59QoLBUQWUHH>7C<IWX7.0,+2O_§x{«·ÄÊÎÑÔÖ×ÕÔÕÔÒÒÔÕÑÑÒÔÒÓÒÓÓÕÔÔÓÓÓÖÕÔÖÖÔÕÕÕÕÕÔÔÒÐÑÑÑÓÐÐÑÏÏÏÎÐ::763455:;9@>@A::3;=DTSW[\`l{£¦¨®°­°´´±±µ²³´µ¶±¯¯©§«°¥}cHDABGLOSilhmjaXDALW?evO7&)$-+(1Qfb7NE5@mO;W©z}eB9;YPQJDX~uiZWPSLGPYQf¡rv¡¿ÍÎMctw«ºp;+.361+/57;:431*,(.(/7065130-/9B879=?DEEC8,/6<FK6TONM9JPQ[b_imhrpxssuuv|wzzx|~}||{||zz}T.1*((0)..09..1*0.%.4,7K91.):@QlM>QL]^F@;>G9A[T114.51R^§ }~x~«¸ÄËÏÓÒ××ÕÖÖÕÓÒÔÑÒÒÒÕÕÔÖÓÕÖÕÕÕÕÔÔÓÕÖ×ÕÖÔÕÒÔÓÒÑÐÒÎÐÒÏÍÎÎÎÍÎÍ::713:2;973=;6>:656=FPPX_^`jx©¨­«¯°´°²³¶³¶´¶·¸²¯®§§¬´´xhR@>@EEONYs¢oiejmlO7<?SE{aG<234//(-Ri^9EbJ3h_>b§©pzX47JTYW??V|qXjsR^Kfcbjxn|°ÖÔ½\^u}­Ê»y43,40..,04486;82.-,12495=564002:HC:8;>D?H;0/-6ITX;NUTH9CHMZ]bgljonvqrqupyxx{}}~~}z{yz~~}}h=.)01/0--,2<//303./46+7E4..-9BPlE=GF`TGB?CH=8T^:,1,52K`¥}z~ª»ÈÎÒÔÕ××××ÔÕÕÔÕÓÓÒÑÓÓÕÖÔÕÖÖÕÕÕÕÕ××××ÖÖÔÓÒÑÑÑÐÑÎÎÍÏÏÍÎÍÍÌÍÎ;;61858::939<;67957@CMUXXZZhr¢¡¤§©«®®²³±³²±µ´µ²µ¶³­­¦¤¡£p_OBACGLNWmkebfpsbE2786OX6,+/6+0*8WnQ0AiW8`\B|³snir?:OP\dA2J`ixNri}tm_£sm²ÍË]m~­©°Õ±P385::8:5;87?8968/1-186422,6733319B786BGGL;2-49JRVAUVOB:DEGNZ`iminonoqrrrvuwx{z~}~y~y|~~~|{b=*2.//0+--8?.0-22,->2-9D616,9EUfB=JDaRIODD@;8^^2-8-./Fk¥¡~zx{ «¿ÉÎÔÖÖØ×ÖÖÕÔÔÓÔÔÑÓÕÓÖÖÖØÖÖÖÖÕÖ×ÖÖØ×ØÕÕÓÒÐÒÒÐÏÏÍÍÍÍÍËËÌÍËÎÍ44.1297656:8;886787AJSQX_k[ds ¤¨¨°±²±³±³²¶´³¶¹µµ­¨ªyh\JEIDKLObgadlssfI7@31c\2&$.51*9CfmH.7XZJV\G±lkUYJM_lrM<:ST}uvS|zPm«¤ql°½Äe ««Ì»f4.096-44304<556?49.359534/03735753?C=8FF@F;54-4@QU?CUCK=>@LOQ\dfigmkknsrvt{xy{|{z|~}yy}~~|~bN1'+.0,5102<9255>4.4:308A86/.:EVdD:MHaWDNCD<:;[a8*6842Ap¦¢ }y||®¿ÇÍÒÖØ××ØÕÕÖÕÔÖÔÔÓÕÕÕÓ×Ö×××ÖÖ×ØÕÕ×ÖÕÔÓÐÏÎÎÎÍÌÌÍËËÌÍÌÌÎËÍÌÍ003/22625474:685646:DRXZ[ZYgp ¢¨¬¯³°´³²´´µ²±²·´±®¬¦£~sjXLKACHKOnoafeq|pXG/51>oP,+436-+/QmiE,6:ZOWVR³~qgCpx[Yfxz]E?=9Wl`|eaz²¬}uq©ÄÇ¨°ÐÇX<7478866517;>=66K:534695:82/<<><;=5?A@5?EJJJ><30?DWA?YNPE<EQNNW`cfdfghnsnwozzu{x~}{}zzwvw{|~}}~z\JM3%&2-,)//+91&,7?0.:616?:<30+;JU\G@NF]V<MO<:8>Ui?.4+3+9e¦£ £ {ys{¡±ÂÇÎÕØÖÚÙØ×ÖÖÓÓÕÔÕÔÔÖÔÕÖØ×ÚØØØÖ×ÖÔÔÓÔÐÓÏÏÍÎÌÍÍÍËÍÊÌÎÍÏËÍÍÍÍ@@32,/2056>?89;3473?HQ__WSUhq| ¢§«±±³µ²°±´³²¶³·´³±¬©xk[QFDCAGYmdbcfsyeI;5:6Kx K%%02.""8^n]C630SSWST¨¶b8Xmkp{vdEJ@A7bukoeK nvv®ÌÉ ÂÇ×¯e>853685:348:6<<B;?62,6;>7735.4=<=D65=GC:7=FBB9914<COF:XTRB6FHJHSV`dkkhigkosowuutwy{~~ytuvstwyvw|{xuu{ryo9TA5,(+-*&&*03.*0987;:2247:92.0>Q_XEIU@[T?PE>58EO^=00./4=h§~yvt}²ÄËÐÖØÙØÚØÖÖÕÕÓÕÔÕÕÕÕÕ××ÙØÙØ×Ù××ÓÓÓÒÑÐÏÎÎÍÎÍÌÍÍÍÌÌÍÎÎÏÏÐÐÏÐ88333452/1:48591;66>NX]]XVUbq| ª­®°³´±³´²²°µ´µ²´®©¦vlVRBA@EJ_¦h^`ihonW?01<9KqF+%132)$<g[C80+(5O^Ws¶·V7Kl~bnzfB>CJ2C_|^Xxr4why{·ÒÀ§³©ÜÂv94045-/249;76417470,-.'35:004/,7=;;B968BB:C>>D64/59?QN9LRJ=9@@GGTSXcdkkgeenlnowuvzvz{}}~}~utttrvvotrrww{ {E6X<(+0,'%*-//0,06<59D7-570259/+<Wl[DEREc]FOD>?C=TX?06444;e«¡}zytw°ÃÈÐ×ÚÚÚØØÖÖÔÕÕÓÕÕÓÕÖÖØØÙÙÙÙÙÙÕ×ÔÒÒÒÑÎÌÍÌÍÍÎÍÌÏÍÐÐÐÏÏÐÐÒÑÏÒ11001758056-32/.247DQZ`][VXao| ©ª®±±³±°²±³··´·¹±¯¬¡¡vnYOB?>DKc¢}dZdmnjeE1*4=<XrtA...4..'Gc]@;61(,>O`º­gB<ZsswnGLKT8Kxyj`uf9nzVzuz¢ÃÎ®³ÊÈ</.-//0+/4//436:<6A98,)(2872673F5979CH51C;;=8@?83435>KJ<IXQ?8;GKMOQU\biihhiniijtvvvv|~~yxuvzt||~|~a18U;++,,2'.,,-503733KC74?6285@(-:Js[=GLC]fKGE@<?>NZB.=H77<d¥°¢¤ }{vou°ÆÊÒØÚÛÚÙÙÖÕÖÖÙÖÖÔ×ÖÕ××ØØÙÙÙ×ÖÕÕÒÑÑÒÑÎÌÍÎÏÎÏÏÑÑÑÐÑÐÑÐÒÓÐÒÑÒ5532057:4-1330//046KW__a]]]dq|¦¬¯²®±´³±µ³´²º¶´±­¬¤ xnZSE?@JM_¡sa^bhrhV=7438A[|ZD.+/(+%3NbX?B>33*/<cº}z[:V|roUZX]Tjnv}ebXMl{Rflt¦ËÑµÎÇB3,3517<:834/679785=81,2,577.)20601786:5485;<69?=69/56EC7COTAA3HDNRNT[YZ_ebfnfkiqrruzy}~@.;W50.*/*,/*02>8:818N@9293639@*08Nt_INOFc\K@J7;H@MbF5?/342`©ª££}~zuuy²ÂÌÓ×ÙÛØØÙ×ÔÕÔ×ÕÕÕÕÖ×ØØÖØ××××ÖÓÕÐÐÐÐÎÎÏÏÎÐÐÑÑÐÑÔÒÒÐÒÑÒÒÔÔÒÔ--.0155233443011-0<Tnbbea`emrz ª©¯®®±±°°²±´¶³µµ°­ª¨|m`IC?@DO`¡t_^`i^NJAI543FXy|A7340+#&/NXM75A<8+$4l¡¼{|S=e|xu``gqzteTbv|wjTJTwkfkoÉÎ¥§¶ºØ¡Q55272554415425:=99;A<652558<738<4727;?=;;9>?B:>BEA;065BB6AOSG=7=FTUNWZ]Wcdhgknknpryw{{~|^,.>P5,/,*++3.,-<70945?E54401,1<(,5Iq[DMKE]_JAH<=>9M_Q/1.410\¨§¤¤||{uw°ÂÍÓØÚÙÛÙÚÚ×ÕÖ××Õ×ØÙ××Ö×ØÙ×ÖÖÕÕÒÓÐÐÑÏÐÒÐÑÒÐÑÏÐÒÐÓÑÓÒÓÔÓÓÓÓÓ==2.5415041/43/2-4?Tebiaj_fmv|¢£ª­°²¯³±²±±±³´·´²°¬§¥~nZVG=C?IayeVabWWTMH::CEJrf6:142*")7P_S64AE5.0A}¢¸vrLHyjh`u[PRQ}tqG6;ophxyÈ×ÂÄ»Õ»{711.3./4+-1-1-/7:741::40+/0;:422513814:8588829:9?<?=+.2<A;8LDG867<HIERSXU[Zfeeeiopnsxw{~|{?'-LC/=0)*+'01,2:42<677<71478/38++:Ns^FSPI^XHGHABBDNVO31285.X£ª¢~{wyru´ÆÍØÙÚÙÛÚÚÙÙÕÕÖÖÔØÙÙØ×××ØÙÕÒÔÓÒÑÐÑÒÐÏÑÒÓÓÔÓÒÐÓÔÑÑÒÓÑÒÔÒÓÑÒÑ5542/160.11/0000*3GWdhlgdbhor ¢«­­®±²®´®±°²¶±´´«ª¦£¡yn^OF?IDJYym\c`X`YJA;GOIMeV-67,-.&)4UaI38?G48BAi¼]uuRk ~gle}kBFVV|tz@67]|fq{¬ÕÛÍ¶ÕÂ~P7,()-,4950150,-/>84/::21&23A3..326101/579;=9;6<;A:>7.+56??8CAK=94;CIFEOTZ\Xaifflmposrw~|y¡¡¦¡¢Y2,3TD31"'+*/3-/2560C868=?2146+5>+0;Qt`EKCA_XSLMAEFBOUM930;8'Q¤¬§¢¡¡|~|svu¸ÄÎÒØÙÛÚÛÚÙ××Ø×ØÕ×ÙÖ×ÖÕÕÖÚÔÔÓÓÓÐÑÑÑÐÓÓÔÔÓÔÓÓÒÑÒÓÑÒÒÒÒÑÒÒÑÐÑ33/62702/2//.),.16MYeighfehj{|¡¥«¯¬¯±°°°²²±±³·³²®ª¤}p_TI=AGFUp}qhpbZ^UG@CWZOEcD4?9--))(=ZYL-1<D<7+2N²y\awkZ¢{lnsrpZGLa[[ouVOGipIuvÃÚßÇËÐI852-1.3436-20/2656=99?99,'-0892.67:2-/523;>:;6;>9C>?:+.27=>6<<M=949FED;LSYWX^dhhgimmnpt{~~{|£¥¥©©§¤;-+2MC.--+1+.2014116K58:?A01?7*27*1:Wv`CLPGbQMIOGEJTRNFA/0?<-P¡¬©¢¤¢}{yytvt¢¸ÈÐÕØÛÛÛÚÞÚØ×ØÕÖ×ØØÕÖÕÕÓÓÓÕÙÓÓÒÔÔÑÔÓÔÓÖÔÔÔÔÑÒÑÕÒÑÑÐÑÑÐÑÏÏÐÏ001.,3374/10//224@O_eeecgcily~£§­­¬­°²±°­°²³±µ³¯¬¦¦¢yndXNGECLSdv~ylinZMMEAI]iXO]?553*(&()?X\F),0D=822F¥lmtcsexy[ujoxhe_MNXSUaz`bcsh2fav¥ÏÚÏÑ¡R402-12455;;<260,439:;8=61.*02>81456=303/,+1:;864?9>H954/02<><;:IG832CCG;BCPUR]cbbihlkqopw|}¡­¥¥§«ªª ¡¡f*('2G73,,-,,0.-,1;6<B3@H:80281//5./?`yaFIOHeLIKJCBMDVVAF83:>1J¡±¤¦¦¢|xuxur£¸ÇÏÖÚÜÛÛÚÚÙÚÖÖÖÕ×ÕÖÖÖÓÔÒÓÔÓÓÒÔÓ×ÒÓÔÔÔÕÔÕÔÓÓÐÒÒÏÑÐÐÏÑÏÏÏÍÍÐÐ00/3+/-0302335214CRadehfhbfny¨ª¬°°±´±¯°®±²µ²³¯­¨¥¡zk`XKD@BJO[nvrggiUF@NDNc`YWb=;3,-*'+,Eb`F1(.;?=76A¦gdgUrwrq`htpylcdZVNGLT}sof<U|dd|¦ÄÎ G63824-222656:1553:07>57@935)/66>.50587.+-.,07<88487DB;600/79BA;;AF612=HMC;:@JPWYZ^bejijqqv{{~©¤¥¥ª¬¬­ª¬¢ ¡C%&-7I5-*0*.210.469:F<;@J3142?060751>`saHOOLiMTLFDDOLXL>J9;:6,H©®£¥¢  }{xupu§½ÇÑ×ÙÛÚ×ÙÚÛ×ØÖÕÔÕÕÕÕÔÔÒÓÕÔÕÕÔÓÔÔÓÖÔÓÔÔÔÖÓÒÒÑÎÏÏÐÐÎÏÐÎÐÏÏËÍÌ,,112--4916.02306;NYedgec]fqz ¥«®±®¬±®®²±±±³²µ´­¨§¥xp]UKB>FLR]gmlebldHINDW\_``V;5=3-)&'/Hd[A**-2;@@<@©`_cSfoyxpjn}mx}mil]MIKQ}pg}f5P~hmzºÆy442=40223931-12.6,*7<A74B70.)17<>./308>/+,00008797699D<73/109<?6A8E61/9FOE815AFOYX\^bdgilmtt|¥§¦ª¨©¬§«¨¥¢¤§¢r/')(>L3,)0(,4+.0:6;?:;><;10:AG=/-34/E[peDPQMhSYL?DDKK[L2LA?6<.Q§­¡¢¤£¢}xywqyªÀÍÓØÚÛÛÙÜÚÚØÖ×ÕØÓÔÓÕÕÔÓÓÕÕÔÖØÕÕÕÕÕÔÓÔÔÓÒÒÒÒÏÒÑÎÑÏÍÏÏÎÍÏÑËËË,,-1-1/33/0//1935AO[fmkij`gpw¡£¨­°®¯­­±°±°±®´±²®¨££vjaUKABKNUY`mjZck^IEGJMGK[`V@3@901'"-AdZE0/436>GJNw ZfnZK\hr{nwyv}~uoj[KHKu}adl-Dn_s»Â[..?B1-++.1./44/4.1/5GG?475-+,.69;3,040:22,21130:872935;@74825>=7;;<:65AFNJ9238>FUJRUabb]hmnquu{¥£¢  ¦©­°ª¨¡¨©®¤¥¤¢¢¡`30,-LO01(/.-03+2<3<D814AA..8FC'2,/98J^xiEMOJkQWH?GBKLRD0PN>342L¡«¡¡¥  }wrsz²ÄÏÖÚÜÜÛÚÛÛØ×ÖÖÔÔÔÓÒÔÔÓÓÓÕÕ×ÖØÖ×ÕÕÕÒÒÓÒÒÏÐÐÏÑÒÐÏÏÎÏÐÏÎÐÏÏÌÍÌ//./+-,0/1,.4.0-2@VZdqkihfakt¦¤©°®®±¯­²°­¶¯³³µ³«ª§ xm]OHB?ESSXfsi^inT67DQ=6Iar]7.@744%&.?dS?+&.96>KOOmVlmG5BDE^zzm~{xvtiTFPt¢b_¡l-:`Z}{Ã½T15ZA0+14363591-78067_@>;;6.'&068=22.02>52/-042/2:4:>7;:@23<53B=:6CA?7.6FNL>4,47:DELUZ`^_cflosu}}|¡¤¨¦¨¤¢¤¢¡¥¥¨§£¥¡¢©¨¤¦¦£¦A(+,1RC,0.0954/,582;F99:A7)05V=+3/4;6K]xjFZLKnNTHBLGEJOA4MX<.00E¦°£   {xrs}µÅÎÔÚÛÞÜØÛÚØÖÔÓÒÔÒÔÓÕÓÔÒÕ×ÖØÕÕØÖÖÔÓÓÑÒÐÐÒÏÐÏÏÏÎÎÎÏÎÎÏÍÐÎÍÌÌÊ..12.57.1.-2100/4JXX\dgedaelz£¦«°±²¯°²°±±±°¯°±³«¨¥£ {p\SJ??IONXdie[[hI88PI90Cm~Q3/6:<;,1(=cWC0*:A43CSVySieA/9;=BTw~q|ytf[Ni¤mhw~RDKPkQ¥§C8P\73/6/664354214.-;?@:9983/,389A/-(.27<5,-.-30/0488<16:73978:88:;?@@09DGNG91-03:DHKPX\[c`knuw||}}}¡©§©©¨¥£¢¦¨©©§¤¥¥««§«¬ª¤k8&'.2N>-,+3033/02747?@==?3,04J7.://76La|kNNKIqIVN?OMNLSA3IY=16+>ª®§¡¢¡~}{tst¸ÊÏ×ÙÜÜÛÚÜØØÕÒÔÒÔÓÓÓÔÕÕÕÖ×ÕÖÖ×Ö×ÕÔÔÒÒÏÐÎÏÍÍÍÍÎÎÌÏÍÌÏÐÌÍÌÍÉÆÈ..-,0812-,+-,24+5DTUV\_^`_fnz}¢©©­±±¯°°¯¬°°°²µ´°²«¨¤p_TIGDGPSZ`c`dVJI;<FD3.GxR/3>=>4,/2?YUD+25=7-;P[VbdE82864IUljpwhdc|v|n]LHx\AVP:@kF132853@932/1756/8@<;<9<+.,08>:/384-2>62-1-5135;94B;67879:7:;;6:B?A64;MHK@04--.27AHPWVX\\ipvuvz~ ¨«¯¦¦«¦¦§ª¦§¦¥¤¤¨­¬²°©£Y4(-,7J62319453105>37?>H831*04>7*/1476DZyhQORMrLLL?PWIRUE.JW<8@*@«±«¡££|~{uurºÈÑÙÛÝÝÜÛÚ×ØÔÓÔÒÒÒÓÒÔÕÕÕÕÖÖÖÖÖÖ×ÔÓÒÒÐÐÏÌËÍÑÎÌÍËËËÍËÌËÊÊÈÇÃÂ¾//.14695/(*-1807@@QPX\`_`cdny¤¨ª«°­­¯­®°µ°¯³³³²¬©¢¢ wp\OD@@HMOXibtvX6775:881MsW1.:0>8010;MNC.+/?2*<M_doxP/0A@7?QSltuoltnkvZYqeKisL68:KH<352055A;3/-61543:B@@A>5.0/46I=-213719;2*--//-2:969;30795969G;26C@C92;JBK<3.,/,/8?AJJSRZbektrx{x}~¬©§¥¦§¦¦­¦£¨¦¤©§¯§²­¨ xS0,)5@A53759862944447A6O542/099;+04-;9KfthCRTOnISPDSQKIND3VXE:D+G®²¦¨|zxqt|£»ËÓØÞÝßÞÚÙ×ÕÓÑÓÐÓÔÒÔÕÖÕÕÕ×××ÕÕÕÕÔÒÐÐÑÐÍÌÌÎÍÍÌËÊÌËÊËÊËÇÇÀ½¼µ­00,,.74202..--,0>:IMR_]adderz¡©ª¬­²­°±±±²°±²²¶²¯ª§¢ zk\OKCCFLPW^dyj95548;5+3MmcA)49@C90-8UFA3)/>--);etzW628F>?Z][jk}x~pjpquiLmkXszR66CG7538.,6788952/30/35@;;??00+-:7H<412440BB67/+11-/3/9;=;0:B523:>:75?F;804JBHDA.11,+45=>EQRVW]lmqwzzz{~§¥£ ¤¨¦§««©ª¤¥¨ª§ª¨©¤pQ+%*1D@04518;95434689:AL73117807238-;?MhtgGJOLoDLEAOWOFMJ7FWG3;+D­®£¡§~{{wsux¥¿ÍÓÙàÞÞÞÚØ×ÕÔÓÒÑÕÒÓÔÕÖ×Ö××ØØÕÔÕÔÔÑÐÎÏÍËÎÍÏÏÊÌÊÉÇÇÅÅÃÁ½»µ²§22,.53541/1.10-,25CLTYa`dirw£§©­®¯¯®­°°±²²±³³­²¬¨ zmZNG<@BLNV\qwO:21483;,1Y}^eH/38;GA00DR@E0%.5.+!;\y~i816GH@^kVomiowqhqys|\SWL`kZA<E<4?84220/23000+//-7;@9?B<5/--33F@/-126,2;7-,017-.316>=827:923/7<D;;E=937@LCNK;30-*()/7??ERP\bjotptvtu|~}¤¤¨¥©¬¬°¨«§¥¥§¦¦¦ £mQ-(*.?8328;<696953:57<?QA1.773/78040<GOhsdOMPNjHOHIKXNNXH3JYD46,B«¬¢¤}||vuu{®ÂÍÕ×ÜÞÝÜÚÙÖÔÓÑÑÒÕÓÔÕÔÖ×ÖÖ×ØÖÔÕÔÕÑÐÑÐÍÎÎÎÎÏÊÌÊÊÇÄÁ¿¾¸¶­¨qa4431.10.,+++-67/32;KQV\ddeny¤©ª«¯­­¬­¬²¯®°µ²´²²¯§¤ykYP@:<DCBUg|`D<3/,10B87fhS_C/1><DH90JGAC1--73-)(JxsM9.NRJPf[`zYb|w{oq¤PBHV]U\O>463;35/67:6766112;7>CBFL@13,*,6E=..24:44283-..632/-27<:58<=C948<=<;D972<IPEJK>=7344-.3=7>OOVYacfckorx{~|¤§¦¨¤¨«­¤¡¤£¤¥¥|mW.+14A9438;;699<777:16EM<748@/.299875DUdpgPWVKfIRKMOZQTWN>O_H;7.E¯«  |yxuu{²ÅÐÔÚÝÜÝÜÙÙÖÕÒÒÒÓÖÔÕÔÔÔÖÕÖÖÖÖÔÕÔÓÒÑÐÎÌÎÎÍÍÍÌËÊÇÃ¾µ³¯¦sbQ=;00.,+---..+&++/5478BJX_`ggnu~¢§§¯­¬«©°¯°¯²µ³²¯²¬­¥¦zlXNC?C?DKa{pR@888+,4BIHhRAXE408A:?C@FBEA2((741&,?¡w}[>8E\NJQV[wm]m[lzxqxµ¡]ENkokxY822/6012260141853879=ACGQ@77008:H>6.34=3:8;:2341776525:;:>=A@88479<9?9973;JFFFJ622..2.,36=?OHJK\V]XZ`jpuosyuq~§¤§¦¦ª¨£¡£¡{iT0+*5@:=@96;=48<47>;6?TH993;H36<34.2<=TangJXTQbMZKJO`QUTJ>R\F>:0P¬«}}ywrs·ÅÏ×ÚÜÝÛÙÙØØÕÓÓÒÔÕÕÔÒÓÕ×ÔÕÖÕÕÓÓÓÓÑÎÐÍÎÎÍÍÊÊÇÆÄ¿º´§ taMA8200,,+6/.0241/,)*36008=KT^adikqz¥¦ª«­­­®®«¯²¯°±°²°¬­§¦xhYPC56@HdvaVFWd2,*+CO_kL>LM>29@F;=AT=8E2(*75:$!0y¤wWA8@PMGEAVkxh~pZ\eqo{z£¤usywqnA11/-/25<423227005778EBNN7.11.3>K=471630937740327.*/1,8258>;<756<?A9C>9389@QIGIE<=5<,4+48:>:BFFGED@ELTZ^]fnqwqy{y¢¥¦¤¤¦¢vaA*,..9926886362;767085J?4247936/276?=?T`qfNVULaMZHMT`R\YI7L[G;;-V°¬~ztvuw¤»ÉÐÖÙÜÝÜÙ×ØÕÕÑÓÔÓÕÓÔÕÖÕÕÕÕÔÕÓÓÔÏÐÐÐÎÎÍÍÉÈÅÃÀ¼¹²©£jUA3320.+*((+)/3.0,-+*+'*2+24<EW_b`b_js¢£¦©¬¯«ª«¬¬²²±²³±³±¬¨¥£xj]H865F`_^Xs01)/8K^]J=AGA;=@>78JA;882'+4-7+--}¤_H?@YWMD@O\yrw|dTZwvSmzd>-(+(*,./132883234ADIFNQ2*'))4?S;2..//059;6/---50+*0455379>=:=8?HD@AA@3;>>LGGNMG=<9>C<8@?<8C::><BJJQO[Y`^afjxzvy£¢£¢¤ oYG33-70-46;437;;;9;:49:PC56888395,3<:ACT`rnR]]N`PSDPNYN\_JBJVM><1X°°¤}wvw}~|wwqu{¯ÀËÓ×ÛÜÜÚØØÖÕÕÐÓÔÕÕÑÓÓÔÔÔÓÓÔÐÒÑÑÏÏÑÏÏÌÊÈÄÁ½»´±¦fJ:4-*+*--++///+,,0/*.),.)5))1?@BT^^^]Zcsz¥¬¬ª®ª­¬«¯­°¯±µ³±®§¢ ~odXB8AIl®È]dsv/,))0FQUG<:;A9<927EI;,.?6+-1-3(#)b|ZNQb`PA8@\tpkPLdnZl¤ª«K46./-/157/4891642AIJEPM82))*-?W;030<20/6985,2434.43/53069;>BA9AF<F?C?94;5HHCQXJAF9<;8=>A;AADDHMR^[Y``bg]flrwxsw~¡¦¡¡ i[?9347545:777491>758957L>3696.,43..8A?>S\qlPSWTbRXKVIXOX^GADJQCM4T³±£|~qpwwyz}z{zwusuy³ÃÍÒÖÜÛÛØÖÕÕÒÔÓÒÔÔÔÒÓÒÔÓÔÓÑÒÓÒÑÑÏÐÎËÈÉÆÅ¾¸±¨ s^K;4*)#())*)*-//,,.=3/.(+,0()')-1?EKWbaY\dlz£¥¬¬®®®­«¬¯®¯¬²²µ²­ª¡ zqaSE<KvºÓ¡ZeZ¦e2&*-.>RMZ@35<H>>8?FG03152)/3*3*-4[zcbn^KB8:_hrQ<Ujphlp¢x{®¥pF<573624232231155BQSDSQ604,.->L<10-63--3975+0/174*.3381:;=<>>978>;;@A5.65<EBNWXJA?A=EIW^`\`ecbklmrsyuxxuvwyyz} ¡¤¨¨¦£¢¢£ ¦¢~k`A20/728:8B8>C297@:8-7;OI999;/3=72.7C7@N^rgLV]Z_VTFRMPQYVK;KIS<G5X´±zq~qnrops{~~{vrtt µÆÎÓØÝÚÙØ×ÔÔÓÒÒÒÔÑÔÒÒÓÒÒÑÒÐÒÐÑÐÑÍÎÌÈÃÁÁ¼¶¬ t^H@6,-4/$(&..0/2//-.00+/(')',)*%&.2@IKV]]X^^hu}¡£¦¨¬«¯°ª¨«±­®¯²¯­¬®¨ ym\SIUy£ÉÔRKKFb5,'&&:K^YC215EC86;H@;)35-*-/+.'%,X}pQWTME65CYtyC@TgeN`}wQFbp­¡pS<4/*(,-,3202051AQLFWL80')'0EI662314/-379:3+5366.*443167;:A;A=9@>8<;;955?EJQSQGCKJQU\mllknlty}}¤¤£¢ ¢£¦¨¨¨©©°«®«ªª¡¢ ¤¥ pIA>;6566<A:;;865:97488@?47?4-,9.5-5G4:M\qqUR\WbPXNRMWTSWA@MIJ@L;`¸®wn~rolnpstz}|{z{{~}{xrssr¥»ÉÐ×ÚÛÛØ×ÔÒÒÒÓÓÐÒÏÒÒÐÐÐÒÒÐÐÑÎÐÑÎÍÊÈÃ¿»¶¯§xbN=24-+'%$'#)31564..5044323/)+),**)-4<FMYVYUPWcr|¢¦¦­ª¬®®ªª°¯¬«®±¬¯®¦¥ymaW^¬ÔÜQE<<NE1*+%*3K`QC?9:@E@8DI832883**.)1+(-\zt iJGSOJ;78H]xzfCC]sYHf}_6EMTm¨¢c@('*$+.'.55+.1;PFDVN6,$))3<D:./-6/122240-(2061/-375./28=<=553:69<<95./0;D@CNNTXP]ddmlrrzx  ¡ ¦¢¤¥¥¦«ª¤§­°³¶¶»¹¶¯scQE;39>>418:6459857:=A574401874/8J99R[klQROWiUTKILYV[ZG=FIFKF:d´© rfzukhmqrqsvu{zu|x{}~zyvqtu®ÂËÔ××ÚØØÓÓÑÑÒÐÒÐÏÐÔÑÒÐÑÐÑÑÏÍÏÎÐÌÊÇÂ½¸±°¢o^H9/,#)(+*)(021;:;=22:=6338/,(&+%(,,(3?CHMUPKMVhx¡¦¬ª¯¬®­­¬®ª«­­®±°¯¦¤umcl­ÑÛIXWA?\²J?7@1&0E][LE@BAC9CN613:?D2)/5-32(8gyvxoz`KLXN<82=GUeZJQn¤`IT{¤vF?>5?t£³ ¤rC+'(*/+/-1217=JHOVF0-%'-3JO212,0.,.62757,01001-+14323889<864?A884210014IDGRYWQXejjmowvy}¡¡¤£©¬­·¶»½ÁÄÅÁ¶®rZD@6937616=73432<6==244*'28304I=;MXpmRROWbPYLQRUQ^bLIIPGG=Cd²£~reyvrihmoklpqzxsxwyyqwz{y}|~zzwwnr{³ÁËÔ×ÙÙÙ×ÑÑÐÐÑÓÑÐÏÑÕÑÐÎÏÏÏÏÎÏÎÌÍÊÇÃ¿»°¬¨uaP9/,*1-,(9$+,2>EDAD88467::5.-0(*+')*(3=CFJQNLJRbu~¡§«©®­®­®®®®ª­«­¯®¬©£vsp±ØÔMDufI;KfI5+6(*&BgVDJ=9?:JRG8143RM2.(00//.Apv~g}}gJOQ</.79DheUhbUXLv¨u`G,.Sz­µ¼¯l=+'*.//0/7259JHKWF30()%8ST4,/2124+/3;55/05307+22601;8;69C:27G;5643/0/3IHQLNOV]gjrqu~¥§§ª°µ»¼ÃÄÂÆÈÉÃ»¯jL70<434755021/844.90)44E9018G>JXjmTRS_aQ[NKQLL\^GEQP?J<>k±znisv}permnlqrqprtuurpuuvtuv}z~z{~|zyyyov|µÅÐÕØØÚÖÔÐÏÎÑÐÑÒÏÒÐÕÑÐÒÐÒÎÎÐÍÍÍËÇÅÅ»µ®¤nUA4-.&&'&)1025@GMPJI77576?D2;13*-%+%)'7;=AGLINHQas¥¨¨ª«¬«®©­®««±­±­®©§¡|»ÚÏM?TPEB8QtV2'),"(/;c`VI=98?MR=68;2YU:1.4/64.=kyqa[HE>*)+;Pv}empjUQ_p~xi]J:@V©«³®t>+0/1-3-64:CDOVR?65)2*:U_2-/14516029982--/-2026/3048999=4229E:49-/5-,?EJRPT_fjorw}{y §ª®´²¹ÁÁÁÄÆÆÈÇÇÈÄ¶¡iK=9395934,53964-3.(*.0+5/5S?NXirQLSUWMdGRMFNZ]IJMO@HG?n¢² ~zriymzxofompsoluqnqqrsruxotvtssv{z{~~}}zutps}µÇÏÓÕ×ØÖÔÐÍÏÐÏÏÏÐÒÒÐÐÐÑÐÏÐÐËÌÌËÇÉÁÁ¹²¬¢q\D600&$%((-2:<EGLOJPH88>@<A5741-022.&&%.88CHPOFIS_r¢¤§¬«®ª«¬ª®®¬®°±³¯¯§½Ó¾|I:FR?406nI2()-&.(?_[UFG=3:?G18998KlM07C57-16Ne}jotU93*,8K_v~V\hWSokn}p]^wY74H¡¡¥k;,/333/6<=AENZR>2/-3-@FQ743-149+000466-//421+/244646;>@@9:;@71846936<JPTQW\`qtuwy|~|~~¢  ©ª®²µ¼ÀÃÃÆÃÇÈÊÉÊÍÍÅ¾¦uVI>?:46;465<95.1,30<4;6=UOSYfrVGPPXUbMTQKQ^\JOQSGL>Enª¬~yyttzyrqrpnnwuqroptpnqompqsssuux~x{}}||xxsvs¢»ÉÑÓÖÖÕÔÑÍÌÏÎÎÐÍÌÑÑÐÑÑÑÐÒÑÎÉÌÉÄÃÃ¿¾·±¨x_J?1,-**/-34==DNTQTQNH@@?EHAA9932421-%)'-7;@JJEBJLXju{ ¢¨ªª¬®­ª©«ª®©¯­®©©¦¡»Ì­kF5?PVI20Uw4'$&($ &9T]XJED7<?D=/87:Bu[>;;,:40<DUf~ekvL(+2;[Wmo@N`fTWcbupPcm^M5Ji£g0*+*+.68JAEL`P;50*,47?T686/<755/./4098840/726:<77/3:>=AD887725=5/14;LSUSU_gnvyy{xz~| ¥­­¬³¸¹ÀÃÄÆÅÅÅÇÅÉÌËÎÏË¼¬rWD=:9556886:82244;159=FYXZos_KTO[S]DQRLN_[LJNPNRAHt±©x~t~}{usywqrrrrlpopnqmojnlminlmuorwzxxyv|yxy}~|z|zwrur¢¹ÆÍÑØ×ÕÓÏÎÌÍÌÍÏÎÑÒÓÏÏÎÒÐÒÒÐÊÈÆÂ¿½»¸°­vgJ9-,&/.-169;=AJNUKSMJIKKCH=>B<;793565-2.07BDCACADK\do~¢¥§ª¬ª¨ª«¬¤ª¬¯ª®¯«¨¤¡¬ÊÉ£jMB<R]J=5B©o1).--('+4KeXN9216HI2888:@mjM=:49606ICJhtX`tSRSUT`pTLCGhmVR[d{mGJFb`Qsvvy±O-+.615>>CBKXM;94*,.7EW@?3.7<60-1+659>21.183447320188?;968<>966:4/8<IPTYW`hsru{y}{| ¨¬­°²¹¹½ÀÃÅÄÅÆÇÉÈÊÉÈÌÌÉÊÂ®w_E<533204;1*02%0,1<=BZVWdpYIXO]OUFLNIT_SLDDTTN;H~¶¦s|zvw}wzsssrolqpimkiiljkiknglhimqorqrtpytzz}tx|{zx{vuxsrns¢¹ÈÍÑÔÔÒÐÍÍÍËÌÎÐÐÑÎÔÑÐÑÒÐÑÑÎËÆÄ¾½¸²¯¦eS7.))&/,5;;:ALOOTXYZMRT__RPFEKA;<26475/0.3BD<H>9?:GQ\kv}¤§®ª««©§¨««­«¬®¯¬¨¨¤ µÏË vTE?8MGH7?e¦¤U2'$)($!#4GZXO=+*4E<.4495CxjTGA=L?87=58Fp}dQ[w{wy}w¦\GQNOUwoX`Zj~VC=^uu wvVX¦«H:*+265;9@JRD2+'**+9K\=4..3941222+29<32/47552-49326;<:99:9;;5389/34DGRX\ditnv{|}{}~{}yz{}~¥«¬«±°¹º¾ÃÁÅÅÇÈÆÆÊÉÈÌÉËÊÊÌÊÂ²y\>411*/5*&)1))&137?QXK^vZFLLXOSIIPCQ^SPFANYJ6Jµ£zz~zx{tprrfhmkfhlldjjgiielkqqnwusrosmtrswussxxpomlprz¤»ÈÍÏÕÒÑÏËÌÌÍËÎÏÏÑÑÑÒÐÏÐÒÒÐÎÍÄÃ¾¹´¯¥p`H4%*&+-06>=?@GHMQVVOWOZ[oocgXVJBEB=5541-143BD?B:49=BJVhs}¢¤¨«¬©¨­ªª¬«©©¨°°­«¨©¬±Â¿{fWE>@@KW?`¦5'!&#),&"+1FVNI.*9>:-/4/8HkqhQ9;DB<=>()/Mr[Zjsouj?BRc]KZsk``cs{xcOLc¶}S4y¶©p=)*)0964@HWH;-1,2-6TT=51.970+1*/,5:6744,03.3.620*06>>>9;8?<63<8,57EJUU\^hwurzyzw|~{|}{}} £¬ª«³´·»¿ÁÅÄÄÅÈÉÆÊÉÇÈÊÊÇÌËËÌÎÊ¶w`@0-02,)%$&'$)4:BT[IWtYGQL]LWIMTBU\QRCBEED5M´¡~~|}}wwvxztrtqjiiiliffaag^fijiimshkhiimmokooilonlhfgj£¹ÄÎÏÔÑÒÎÍÈÍÌÌÐÐÐÐÒÑÒÑÐÏÑÏÑÏÌÈÁº¶°«{cP@36.)*+1998;?EKPSUXWTQRYXyytpcc\RPJI>@873377?<48;501:@J\mu£¨§«§¨«­§ª­©¬ªª°²±¶¾º²«rgVNBFB_aTV0*#/-0'''-,9MUT@0GT+%,-5-;YjeT<II>8MQ,"$;mxt\V<<NZiyq{ S>FOei\KVqvldinubcbt~³Åz~_:?°U1)0-925AJWL6-,(147U[9./.751-13.)0265330,2240/3438<B>F8::@4368:014=NHYVbmvyzyzpz}}}~{}}}{~{¡¥¨¬¬µ¹¹¼½¿ÄÅÃÇÇÆÆÇÈÇÊÌÊÊÊÈÌÌÏÑÎÇ²xV82.)&#(%#$)51APMJQs`CIOYMVGPP@P[LH@IJ@H4R³}}}vu}ssoqmkikhhbebefgadYablflecdeeiidhlkphdaae_` µÀÈÎÑÐÑÍÎËÈÊÏÏÐÏÍÐÐÎÑÐÑÐÒÑÏÌÃÀ¶±§xaF2.-*.027=C<?AECITQQRPRTVU[~yrogXUNNLI?;84<FA?87=5179DN[gs~ ¤§¨ª¬ª­¬ªªªª­¬«±¸½ÉÁ³uh[JDGTz]¨^>.)'*#(&)*.-3<H]PIYR#&+40;Spf`PKKE<YS(!1F~{waH3<BLWGUHG\XZ^lbX_aoqhwmglx{o°¸{]Q]LAE|¦|2*-1;><DFXF0/1,).8S\>/0,56..*42+/==6512/50.,1,37:9?<<5=;==@998.-08NPSZ^jou}ysz{y~{}|}y¡¨ª¬­´¸½¾¾ÁÁÃÁÅÇÅÆÉÊÉÉÉÌËÉÉÊÌÍÌÐÑÏÈ´jH2(%%)$"#'11CNH]Ul^@FNXOXNLNCOTFI@NC9P0[³}~~~zxttyrqmkahifdbcdg``_aeba_e\bc`dnmlnmc\ZXTXv¬ÀÉÏÐÐÎËÍËËÎÎÏÐÏÏÌÓÐÏÎÑÎÍÌËÉÅº²©`E3-+3125=;EAFBCILIUWTQRTVVXYypi^YTTQAD:<?GD?:584/2;ALUip|¡ªª©©ª®«­¬®ª«­­µ¼Â½ª¤ wmZOANntr¶¬`>-)#%'((&&%,.+.@Wb`pM #0188LtlaTLKAPkB$$ (8L|wgUIKTaJP|w7@do`_bYbfeb{ouosokos_«QAVIPNJic3.3:40>LZ@5..&%+9P_:0,-711,-50./6<6879230/-,0;7956=<6:DI@74;71.24GMQ[\jlostuz~~zy}|x|~{¢©®°µ¸»»¾À¾ÁÁÂÃÄÃÄÉÉÊÉÈÊÊÌÈÉÉÎËÌÐÐÒÐÃ¨]61*$$&&%04HJI[QlfBOJYJTIKKARTHIDGJ@P1]°}y}yw{nnqkhojibdc`b`a]c`]bX\`d]hnkqngd\VNMXk¬ÀÉÏÑÐÍÎÌÌËÍÏÐÒÒÑÐÏÐÐÎÏÎËÉÈÃÀ¶§iK-'-+-5A=AAGDCGKNPNUSRRQXTRST~}xk`\UVOFAB>MK;>8816.6AFUfr}¢§¨ª«¨©¬¯«ª­©¬µ´³´±¤¢ yi[PP`gÌ¢:1.$'.&('(%)0(*)3M^wvF!%)19CvwiSIOKaq@%""#)8QtwdYk\?Y|i>3Tw~ffdhskSY|nrmovj¤¡~YhC4R^PV37537CERA300,&+7QO54-+43./-/-'+476=62343--2049;95=<=?KJ@86762016=FQ_bggssqwzw{|zzyx~}} ¡£§§¬²¹·¹¿¾½¿¾ÁÂÀÀÂÄÆÅÇÉÇËÌÍËÊÌÐËÐÏÒÔÓÏ¾nJ,*( #%84MGHVQh`FHJVGOEGI;RNEKGOL;K3_«~}zuuqsprmggkdbc_a[aa`YYZaY`hotqnoi^PLHOh­¿ÈÎÏÏÍÌÌËÎÍÑÓÒÒÏÍÐÎÍÌÍÊÈÃÃ¼¶©sS8.(/2>HOJMJJKHKHOTQXQPYS[\VVUsmkb[YRNGFMQG?9952/1@LZ`p¡¥¥©§ª¨««««©§ª°°²«­§¢rh[TdZ´Ò~5-.,**'*/')2+('+5EP~E #&%.4@xoOJLNuxC0,-#'5<U}|hd[XtGCD8Xymbgqz\Gnuoyt~¥{N4-?gba±85536@IO:7/)%%);VL75228;2-,53+,6>8;8990:4115469737=DBHLB<5?;024:AJTefhjotnnury|x}~~¡¢¨§¬­±¶¶º¾¾¼Á½½½¾¿ÀÅÇÃÅÆÈÇÉÊËÉÊÌÍÍÎÑÒÔÒÐÆ«S2+&#%58KF7WWefD@IPFRHCI@IRAGKQD8G6e¦ |}z}{wrqppmmegbbdZ]_`YYZZ_cov{sxqi_SLGQc­ÃÊÏÐÎÎÍÌÊÍÏÒÓÔÒÏÏÎÐÏÍÍÊÁ¿¸²ªqSA2--7@CKOMOOIFMMHSSTYUS]RYY[YW|yuj^\UPPRSLIC<;.635?KXgn| ¢§§©ª§©©¨®­«©©¬¯¬§ª§£ym]^ldaÀÀ\'*2(''.)-*++''5?=HF}sB%$##29KsFHM`vb6-6*'(3HQWVMkxbc~EBO@=R}konxlKRyuwkikg4..Yc W3.6:FGM43*.'$)=bV?83-6;;204,,+4>739OF232105350:599<:@FLC8@884/8>NPY_cmnmpuuu{zx|}|~x¡¦­­®±µ¶¹»¼¼¾½½¼½ÁÁÄÂÃÃÁÊÇÊÈËËÎÊÊÌÏÑÒÒÑÔÔËºc9.!%+-=<0A[eb@>IKKP@ILCLSJFEJ=:B:r ¤z{w}yrtqtmjmhg\fb\UYU`_ivyzvupfYOLLb°ÁÌÎÑÐÎÎÎÎÐÑÔÔÓÐÐÐÎÏÏÏËÅ»±«¢_O:.,21?EGLMVOIPMRSRTTXXZ\YQRXWSUyvng`ZUQTSNEF72.*/@HTho|££§¦§ª§¬¦¬«©©¬¬®ª®«ª¦£soyp Ul¿;-,'%++(.+'**,%@ic]Xuh@& ")@qcAHUndD-19."+DdY]B8EVtljx`MA@RTE>]zqvptaUm£t{^dp} a3(2Ndm¢B188DK>26,-'-/8^IC10387562:/1-0485:FD33624,164616>>;EKSL9778217CSPWbdiwvvrsstzw}z||z{ ¥®¬­±µµ·¹»¾¾½¿½»¼ÁÁÅÄÁÂÁÆÇÈÈÊÉÌËÌÏÏÎÐÑÐÒÕÔÐÂsA0-1-;:38]b_F@LMNOHCPIZSJ@HL>3E<t¨ xzxz}tporhhelle]ZUXgihr~|rkiUIEPh±ÃÉÐÒÐÑÍÏÍÑÒÖÕÕÒÒÑÐÏÎÌÊÂ°©yY@/.)15=DKOPPJOOSMRQVVY_Wa^XUSSVPU{vnsba]_ZROE>0,*2?JUdqy£¤¨¨¦ª«©©ª¬¬­«««®­¨£ }x~³`tt..+*)/((&$&(!#+5k}{t{lXC-,*3KotF;HYXI<@5-,);eq`MA59Dfk~V?89FIPP?D_{zupjfu y~dMmcq¢J%,1Mp}©d744?<>53,-,+/=ZOG:23:3281502050<67?JD4364:33:><4AA8>LPPD;927379PO`Zfimstsyvvz{~~~zy¤£¨«±¯±´¸¶»¿¿¼¼¾¼¿¾ÁÄÂÃÂÀÈÅÉÉÈÌÍËÌÎÌÐÐÐÒÑÓÓÖÓÈ«yH.-68008VeaG>MGGOA@QEPSCDEF45E;z©{{{x{xx{runnnnqfcfZbbktw}rnaSNEVt¸ÄÉÑÐÒÑÒÏÐÑÒÕÖÔÓÒÒÑÏÏÍÉ¾¬kV<0'+)3=LPPUVSJNJNOXXX[[^[]]\RUMRW[|tqj`_bXSOK<0+*29DTdsz¢¦¨©«ªª¬¨ª¬­«°°®¬¬©¤wÅl_|zY3'--.+,,&&'#$$*;d~zph][g~lJ=FBPCEPX/&-:^wuN;;;CPvmMPL:;OPMVRDMhtu{zr}|u:A?<v~9,24ifªA36@?B=7440+3B[KG:68?<4714/-2:7:78??=87674125>@<=D96IOOG635<82<WQ[bdqqtsswwutw~~{{}y¢¢¤¦¨©¬®²µ¶»½ººº¼»½¿¾¿¿ÂÂÁÃÇÆÈÌÊÊËËÌÎÏÏÐÎÑÑÓÕÔÔÊ±L/.6/+-M\W@<FCDE;?D>NQHDDH14H;®~yvzvuvtrljkgg`[^rm~un`XPN`¼ÈÌÐÔÒÒÑÒÔÒÓÓÕÕÔÐÑÑÐÍÍÇ¸£oS;@&%(3;LYSTWSOKMMLNRYY[Z^c]VUUUNPTVysejfZXKD@6.+56AWes¢¥¨§ª«««¬©¬®«®«®¯°ª¦¥ §«½¹T_ntY8,*+)+.1,"'(' (.?YiodDFLP>DBHWC(,<f|~]?8;=HeybG;NE;;:EXU[PFTquyy|V/.-<¢j3%-Of±m11?>7632,.01=`O=950;55:-41/.71889A98=74332.2<C6CFB7HUOQ567770BVNW]flqvvvvxzz~{~~yy£ ¢¤©¨§¯´µµ·ºº¸º¹¼¾À¿¾¿½¾¿ÁÅÅÇÈÈÌËËÌËÎÏÐÏÓÐÒÓÔÕÖÍ·M30*)1G\U?7=AIE@;IDUL?KGF118>«|wwvuxspsqmjeedmwx}xohXSTi©¿ÊÏÐÒÑÓÑÔÒÐÓÕÕÔÐÑÐÎÍÎÉÂ³ZD/*5-1<JT]ZWUMNMSKOSY\`\cfa___TSRSW[|roj`ZRJC61*-6EUcv}££«§­­®¬­ª«««­¬­°®­¨£ ÂÇËEs_oTD871&&()*'(/+%*&1<BC;ET^kw~taHJQSZ<:;?D5;Ifh>,.1?IzVL:8DD6;9=Neb_LL`ys}~m3)&7¯a-+A[^¯A/>;80.(0)0/4^KCB1/@545651*-0-3@=@;=9984222/<C9AK?<MVV^A89/71?VPQYllrsswwz}|z~t{}£¢£¥©¦©«¯¶´³·¼¸µ¹º¾À¾¼¾½¿ÀÀÄÄÆÆÅÊÌÉÌÌÎÏÐÑÓÒÒÔÕÖÓÔÏºP6.(/BVT;2:=G>;9IJTI?P?D+/5F¨}z|zyxtvxn}kginruxldYU]y±ÄÍÐÕÕÓÒÓÒÓÔÔÒÕÔÒÏÏËÌÉÆ¹¤xT9+)*::NY[Z]YZVUQRNQ[a_c_ecb`^[TNSP[]}}zuodZQFC</('2GUgw} §«¯­¯®¬«©±«©­¬±³¯­©£¤¶ÖÛÀmDfDXNK@;0,-%.)%'*('/,3?H;''-6HUYLM?=9BEK;8<CNUioykK.+&*;c:79::LE889@YefXV[`kr||¢J# %j§²M*4UOµ\62577.,-())6XO?9235329=6715=52=?E=A2.1956468M4?B>?UU^cI<10/)7WRWZosqrqvy~|~rnu{~  ¢¡¤§§§ª­­³²²µ··¹º¸»¼»·À½¾ÃÅÅÅÇÃÃÉÉÉÌÍÏÐÎÏÒÒÔÒÔÖÔ××ÒºU0(6@PSA2=9B77@JFPC>K:C(.4K§{|~~xv}wywutnkmpy~wpj`Zb£ºÆËÑÔÒÕÖÕÔÔÓÓÕÖÕÑÒËÊÉÈ¿² gF0$*07FP[[]YVSVXVQPR\`agcnd_\\Y\ZRV\`||ytjbVGB:7*&6HUfo{¡¤¨­¯«®¯¯ª®®«¬­¯²®ª¦¦Ä×Ý¬cYdGY99>?81.,,1)/(%*03BQQ8 %$2ENB=A@C9;28<HT]hkqjk\G8- %.Tu5+5?=@U=@<>KdigSV\Wcqs£¤g0"%<±»93`Vb·686/0-&2+.-8UP:935<5160926333-;8C?A6+152916:Q@K:@FRY^`XA8,010MVI_ortsruyzspptx¤ ¤¥§©«­±¯³µ´´µ¹¸¹½º»½½¼¿ÀÂÄÃÄÄÆËÉÊÌÎÏÍÌÑÑÐÒÔÖÔØØ×Ò¹M44EMXB@E?C?>JNOUIKJ?I-69U­~yyzxxyrpptt{urmfamª½ÈÌÒÔÔÔÓÒÕÓÔÕÔÔÕÒÎËÈÃ¿¸¬|X;+%,5FNUZ^WYYUTRXRU\aheheei`\ZY]SV^ef~~{vh^UH?7-+7JTan|£¦¬®­¯®¯¬®®®®°±±°­§¤ÆÖØqxiV,0*662135?5379.:?AIN7,,,8KXKFBB9;5400=?AFHB@:?93$$%<as@.0E?@XHEC<@KgrhUWR[gpz¤|I((+]¥¿²b>pUL¤F.2.()*0-)15UHC34395/64764-377;=DAD36304748:S:DB9NO^cgeK51,-*BKMSovqwtwv~~zqpqx  ¤¢¥¥©¥¬©®±±¯´²±¸´¶·»¹½¾½À¾ÂÁÁÁÂÅÆÉÊÉÉÍÍÍÐÒÑÑÔÔÓÔÖ×ÕØÐµvC-9@O>/:3;46GORRDJCDF'28]©}|wwuvqsw|~}ztpfhz±ÁËÏÒÔÓÔÒÒÔÔÕÔÓÔÓÑÌÊÆÃº³£pQ9.,2>KTZ\U]aY\XYQWU_``kljib^^YX]XS]d^y|}pbVMA7)+8ASaq £§«®±²°¬­¯¬­°¬³¯«®¥¡ÎÛÑy¡^$#(6%+03:<:;545D=BLF>4,*8X_PB=78>8>?A358;03+.>11.),9VqO3(79CRPLGH@CTnlY[OT[i~\rF57H¡ÈWxU>¸j7948/13527;XHB7=6;6:;<;849:;<??ECI8563749:@[HG?8JUbhieY>60.->SM[qzsywvv~zzsfnx¡¢¤¡£¨©¥§«§«¯®°²³·°²µ·»À»¼½½¿ÀÁÁÃÃÈÆËÉÊÌÏÎÑÏÑÒÔÔÔÒÔ×ÙÚÙÏ³o;77GA/04=63?COF:LING)/8`£¦~~{xxztww|{~qnn¶ÄËÑÕÓÓÕÔÓÓÔÕÓÖÖÕÐÎÊÃ½³§gH44/9FUZYZW\\^a[YWUXciiunihg^_\WURW_`_yyu~~ymZXE2,,>HP]n~ ¦§­°±¯­­¬®­«®°°±«ª¦¦ÇÛÇu[sÅi$$ '#$/177;<<:8AH>OLG6/&:QG@;722:AA?C?5<,*+/1/=B8./9Npjpg<),7GQIKRGNKM`yfddSUgv|_tm\SD±­s_A9[·?2-++,0643=aKD:=9F5=5<:739368;<@DI9:A<?@5;A^IHB?NYchhg\?765,>QO_w{uzvsvzsltx ¡¢¥¦©¤¨©¢ª±«­°±µ±²²´¸»»»»º¿Á¿ÁÃÂÆÈÆÉÌÊÎÎÍÐÏÐÓÒÔÓÖÚ×ÚØ×Ï¯f9+>C-2.:-5FFH?=HNN<(1:iª¢z}yuxwtuzz~zuop§¼ÉÎÓÓÓÔÕÔÕÔÔÕÖÔÕÔÐÌÅÀº®|^B317DN\a^[[Z__^ZZYZejoksmie`b]UQT]_``ffjo{pePB3*/6GXdo}¤¬°¯®°±­±®°¯­®´±®«¨£¡®Ð¾gNLÄN#($-(.-+3360+31@MFFABA31557:3,04FT[IFA961#***,>L5-,33GQft[4.3:FC>GETHHKnue_UN\v}ditmbxyz[/2?¨®W.021/-3+19^G?A<8F367042,-.34<;@H@18:836427HEEC=K_gjnh]J;/*,=LGctxvxuvpqo{ ¢¤ ¢££¤¢¨¨©¯°­ª¬¯²°®³¶²µ¸¶¶¹¼¿¿Ã¿ÄÅÇÉÈÌÈÌÐÌÐÎÑÓÕÕÓÖØØ×ÛÙÙÎ£[/0;&*-1-6AMI<AFEJ6-2Cl«~{{~}z{|yx{}}ztu~°ÁÉÎÔÕÔÔÕÓÔÕÖÕÕÕÕÒÐÌÅ½³©rVE6<HOV```XVV\[\\Y[^gmutrokhb`][UY\bbfeXX^fyudOB5-+1KUds ¦ªª±¯³°±°°±²®²²´±±ª¦¢¤¼·l[Cg:%%%%*2*,0.6/(-/.DH79DG;2.,63,*(7EdbQ>6660%))**@bO/$&'9D\qg[7//B><@GTL@D[zqf[USw~og`Nj}^Oxª1-5Åu5.*-(,((->aD>8?;>/3-/72/)1:5=9;S=778/01-38AEBC>K\ivvgcO5(/+6PKWozv~srplm|¡¡¡£¥¡§¦§¬°¯¯®¯°±¯¸´³·ºµ¶·»½ÁÂÆÃÄÆÈÈËÈÍÍÌÏÒÐÐÕÓÒÖÖØØØÙÛØÈF09/)',21?KB;;B9E0&/?|­~x{~z}|~{z¢·ÅÊÐÔ×ÕÓÔÖÖÔÖÖÕÖÖÑÍÈÂ¸¯£{eRA=>LQ__`[]WY[]Z\[admjpoolgf_\c[\`]digfGGN^mx}¡  ¢{mXH1),6DV`oz¡¥«¯°°¯²¯¯°¬®²³¶²­ªª¨ ¬¦qd@LX(%%%0//-'*-22.--7FC438@?/)*2+,$-3Ogf^@6@<7&%)-,9m\<,%'-<QnleU/*9@JLJNG=HLbusdVPrrl:i|O8dÂ¯T.4qÒ¡6#'&$,'&-<`H:;56D31.39)-,0115@DHC753,/2+/7CJBJ9N\iuzjk\@*2*0NU[lzoqimkx~¡£¡¡¢¡¤©¨©­±°¬«¯°°´°´¶¸¶¸µº½¿ÂÃÃÆÆÉÉÊÉËÌÎÐÐÏÓÓÓÒÖÙÙÚÙÚÚÜØÁ~<9/-(*22<DA48<><-%/@®~}y}~||z}¨½ÇÎÒÕÖÖÓÔÔÖÕÔÓÔÔÓÑÍÊ¿¶ nYIBAKMU`b_YXX[[[[]adjominmnic_]^ZTZ`bfgh;;EVir~£¥¡¢¤t`H3.,4@Sbu¥©¯±µ°±°±¬¯±°´´µ±¯§¥ ·«tywCU6))'(%(4&&&)6..',E^A0-7;883..++)*?`mcc:7JHA+(0))6bd@&%+-;OcdVaH..BANFJFFJTFoxcYXu}zv{VyN-<«Å83dÚºM)#&*1%$+7]@:<48?32025-)/5325:@M?//03+-',3II=@B\esv}ni]A-0)/HQW]xr|efwu~¤¢¡£¦¥§¥«­±®­®®®°²¶¹µ¶º´¶¼ÂÁÀÂÂÃÅÅÆËÍÍËÍÎÑÐÓÑÒÓÖÖØÙÙÙÜÜÒ°k@5-)(3,:AC26?D=%%/I®~|}}~}~||¯¿ÈËÕ×Ø×ÔÔÕÖÔÕÓÕÓÒÏÌÉ¿²{bSFGEL[^cc]SZ]_a^`cccjltpoljceb[_X_`cbffg227N`hv{£¦£¥¤¡wgT6*&4AS]m¦ª±²³±¯²¯¯±±±²´³®¯«£ ¿Åz}MS>,()')(2****6,-.:^N3./:<5850+,/)/J^njY3+ORE.'(*&3RvT1'0)0R\LTYeC07AOLKJHFTB[sh]Xyvysvovt|£§{j>+9dÁ®Y;TÏÍe,'%%*%+-7YB=@5:D677682+15494=@C;5;<54/*/7IH=?EShnywsi`H2.*1OTUashsgu~¡¥¢ ¢¢¤¥¤¦«­®©­¯²µ¶³°µ¸½¸º»¿¾½ÁÃÄÄÁÅÉËÌËÌÏÏÑÒÐÓÔÖÕÖ×ÚÛÝÝÛÏT50,,/1<C:037DA,)5Q©~~~|±ÁËÑÖÙÛÕÕÓÔÔÔÔÓÔÖÐÎÌÅ¼©jVHDFIR^a]]YX\d^^\ccijoqstrhc^_]^[\cfhedfd((3GTdtz¥¢¢¥§£xkX;+*3@T`t¢¦¨®´²°°®°±±±³¶±±³¬­¤½ÚlrGMQ6-(**',,&%):,1*CgB0+4;.-3:0,+,&,ObtjI+(NYK7'*'#)LveC2&()KbMHL\dH8<E[V^I?K>Bmh_Z||hbojl|w¨¯^.$(5½APÆÑq& #$($%&0X;;A1?@01443,4)05-79>C66=7432(-2BI:4LWot|upjbK4-(-JMVck`umy|¡ £¢¦§¦¨«­¬®±¬²±´²±µ¶¼¹ºº¿¾»ÂÂÂÅÄÄÈÉËÌÊËÎÎÑÒÐÒÖÕ×ÛÚÙÜÝÜ×ÁI+'*/20<4/-5@?$)4`¤{{}z|´ÂÎÒ×ÙÙ×ÖÕÖ×ÖÓÓÕÕÒÍÈÁ¹£u`OMMSOUZd`_W\badacdhmqtvvmib\X\]^[a`hjihhg$$.8N]mr¡£¢¤§©¤}oV;*#/@R\q¦­«®±´¶²²²²¯³³³¯¬®¨££§ÖocFZb/$,$'.-)**17.-0Tf6014-.D=262.))2Qh}kJ1*<W?:*#)$'=`mT;,'*;iN?9Qm`E1B^d_RRG@;X[b^u\Rjuqwy¢§¯uQ+%%(P NO·Ó'#!#$#6P;JD3@G3/382(+),+06FKC9777-=>-/-A;66N_hux}qpjP1&)(NIRecj{v}{ ¢¢¡£¥§¨¬¨¨°¬®¬±²°´¶¶¶º»¼¿¿¾ÁÄÄÅÇÇÇÉÌËËÌÎÐÏÏÐÒÖÖØ×ÙÙÜÞÝÜÓ³f1%&/,1<:--2F5$%8a¡~~}|§·ÆÌÓ×Ø×ÕÓÓÕÖÖÓÓÒÒÐÏÈ¾³iVHHOPSTZ`^WW]cc`_ceioqrsok`]ZV`Z_\bddhgkdf&&*4BRbnv£¤¦«§§r]>-'.9J`s §¬°±°±¯³±³±®¯±´´²®¨§ºrH{~(%**1&''6/%+EeR3*)30)1?/9112//Ts}pQ,*:M=:&$("!,IaaC3%-<jWE;<XaaK9Mpb_XPC>DJ^\o]Rlpku®¥{P,$#$2bhN¸Ù/$%%$$'*3P;98.DC12-46.+-513:CQR@/3:7?<++7=:<9R`osuxul`T8.'';JPfgu~vy~¡¡¡¡¡£¤§¨«­©©«¬®±°²µµº···º¾½¾¿ÀÁÄÄÅÊÊÊÊÌÍÌÐÐÐÍÑÔÕÖÖÙÛßáÝÝÛË=$%'-8l9(-6A2#%6k¢}{~x}x¬ºÇÍÓ×ÙÙÕÔÖÖÖÕÓÒÐÐÑÍÈ½­t]LJKNWV]`^YUW`fdcaeflqtmoh_a[X]Y]^dghhikhid""&+4BNer ©¥¨«©«¢|^C(&-2Maq~ ¦«¯±±¯±¯¯±±¶µ²²°²¬ª¤¤qKx1!$"-4*/(*31,3[QA5+*)252501.4-.3KmrL(%3J;H-&+#"*8F`bJ0%.`UD98KcgYOKeeded[K?CR_sw\Qpjhµ¦xd8'+G|NºÛ²4!2$($(%9OD=<4FD1,14.+,)33357JY:-;781;--6?9;FWetvvxwicQ6+)'>C`igtyr{¡ ¡¥¦¦¥¤¥©¨¬¬­°²³°±·¹¶³¹½¿ÄÀÀÁÁÄÅÄÊÊËÌËÌÎÐÏÐÏÒÕÒÕÕØÛÛàÞÝÜÕºi'+')/16(,7<*&%8l}y{|vx  ¡©¶½ÆÎÕØ×ÖÕÔ×ÖÖÖÑÒÏÒÏÍÅ»¢mXLKPSVW\bVV\[^hhckkjnrohed\VYW]\]dhdhhgieje""*+16Hdn¥§«ª¬¬¡w^<+))3ASp¦«¯¯­¯°®¯¯µ¯±²²²°«ª¨ exÁLYJ,$"+04,,)+,44CR<40*,.-2<0(1,4002XorU7,6SDE;$+&"'-0Ab`F6+R[B57G[g_TLYigopwhZE?YjhXPrhx³|]dT4&"7K`ºÛºF$**(!&'5PH9<=MN264.4,.354-18JT92/768.)06:7:N\gsqnqtl]N-'&%AJYgjupq|¡ ¥£¦¢¥¥©§ª«ª®¯°²µ¸¶´´¶»¼½¾¼ÁÃÄÁÄÉÉÊÎÏÏÏÑÎÐÏÓÕÔØÕ×ÛÚÜÝÛÝÛÐD9$,+21.*30'!'<~ ||||z|x¤©°´¸ÁÅÊÏÓ×ÕØ××ØÖÕÖÔÒÓÐÎÊÂ¯~jXMOUW[_\YVZ[`cgkiknqqpmi`^aXWRWY^efhhfi_bgc%/3<Yh§§¨©ª¨¢ {a9'!&+BSs¤¨®®²±±²¯«­­°¯²´¶±«©¥j}ËFD=,'&*1,+'-/>38K?4/,,-/32/3,*0)00/QsrC*-/HSK?''("&/#-IbcY<>fJ7-;NL[[WL^ssqummL?RZ]VPgyy¥\=<M=!&8N¸´Ù¼L' ''#&%;SI2;<LH63-540+04/29<KF5317.3/,-373<T`]lijtzkb[43():K`dkxqy~~¤¤£ ¡§¤«ª­­­®¯³²³·³´¶¹·½½¾½ÂÃÆÇÄÆÉÊÊÌÎÐÏÏÓÑÏÔÔÖÖØÚÙÙÝÛÜÝÙ¼f*)(-0/(+/+#+D}z~z~|w{¤°²¶»ÀÇÊÎÑÔÖÕÖÖÖÕÖÔÕÔÒÏÌÌÅ¹¨waSPSY[_a\[XZ\fgehknoqrsmh`]XXV[XXaegfjiddibg!! ")3=bs¦§©¦¨©£¡{bB'##)?[o¡¦«¬±²²²±®¯­°¶³´´°±¬©¥{mk¦LT:('/0/*-'(:42@@1:/+,3(18-.*',(/.9Xxv8&&:HZH7)!%"*0#":HchRFeWB,3M?L]aKJ|lklsnV?LVZVJa¡wj3'5D3+=EsÂ±Ö¶>++*)&(CUC4:DON20454+.3083;8GA7*1..142-645;N^`mjupn]eZ90*,?Odbfzyqw}|x¢¢§¨§§«¨«¬¬®¬±µ´³²´¸¸º»½º½¿ÅÃÄÆËÇÊÌÌÍÐÓÑÐÒÔÔÕÖØÚÛÜÚÜÜßÜÏ:",&/1'&,*+&+I¥|zvyys{§¬·¹½¾ÁÊÌÏÓÕ×ÙØ×ÖÖÕÕÓÓÒÏÌÈÄ±mZRXXVZ``c\VZacffemonrpmgd]^[SSYY`_ghhfkfacie%%'#-58Qm}¥«¬©­«ª¢wW3!)(->Yp¤¤¤²±°³²²³®¯¯²´´¯³°®©¤¢{if{frt.&'(/30***109E:590/+332,3*)..-,,:_s.)..<^M5-$")*F%*5=L[h`h_C,1M@:UhVIqrlnejaMRQYRIYu ~;"':TH4:kÂ«¶Ó­8" "(FN=/5LXO021-50(2-<765CB52,03:E?5887JX`lmqigecb[?6&8<Qb`ozxz~{| £ ££¤¦«¬¬«®®°´¯±±·¶º¸»¾½»¾¿ÅÄÄÆÉÊÍÍÌÏÒÒÒÐÕÕÓÕÔ××ÙÜÝÜÝÝÝØ»b)')-1%').*M¢~xzyyyz|¤«°·½¿ÄÆÇËÌÑÓÖØÙ×ØÕÖ××ÓÑÎÑÍÄ¼­~dYY\V[bc_[ZX^ffcgjkpnpmmfd]ZZX\aY`glchedf]fii!!$''69Sgz£¬ª®¬©ª¦zP+'$3GWl¢¬¯³³·²°±°²®²²µ´´­¬ª¥ mkgm£3(+*23-.))//<=053-4-.+-29+80-*+2Mkp5#&*9SN11(')141(775@NTUZI91YN5GZcV_rih[]SOQZ]OO[v R&#-[N11i»´¶Ï .#(#%!$(JFJ13OgX0+/7.))42-*67M=34-.09/23;7=T^jsrnia^dmdC8',8R^Wtxvv}} ¡¢¤£§§±ªª¯­²±±¯²¶½¸¶¾¼»½½ÂÅÄÇÈÆËÌÍÎÑÐÐÑÑÕÕÔÕÔÖÙÚÛÛÝÜÝßÛÏ8((+'%$'**Z~~y{yyx¡«²¼ÃÄÅÆÆÇËÐÓÕÖØÙÖ×ÖÖÕÕÓÐÐÍÉÁ´£n]WY][[]e_[^_ejdfkkmpsojgabZXW\YXaadlegdd]fief'&*25P_y¡©­ª­­¬¤ mO.'$&/GZo¢¤«¯²¶´´±´³²³²´µ±¯®­«¤¤sxgz±i.5021//--2:>?9-361/3.14,/1/-22'5O|l5%%'-JXB4#$'?</"099746<G;--N\>9WiYUepeQbTFQ\YKUavy¡¥i' 0B5,1fºº¶Ä.")()$(LPM.8Hg\3.774.1;+/.:;O;5-)(16,.:=4CWblrkc`cfmocB2*2?T[Xjtw|¡ ¡¢¨£¦®­««²¯®«±·º»·»ºº¼º½ÀÁÃÆÉÊÌËÎËÐÑÓÏÐÒ×ÔÕÔÖ×ÙÚÚÝÝÝßÛÖ²S&$')!"*%.a|{|{z{~£®²½ÁÅÇÄÉÊÌÏÐÔ××Ù×Ø××ÔØÕÒÏÍËÄ»®yeZ]U^\[a_W[_caifijnqrtqie_ZXVWX^^cbglfia^bgdbn##)0+03I_v©«®­¬¤¡qU5&#',FZk~¨­°±³¶´°±¯²³±µµµµµ¯©¦~~E)+2:7()+-/9=:003;31+.0047590---9Zb;*$"+GYJ>$'/G>0%4=D7(#3<1-/8dO5Mef`UkjZX[KKXQPRaqls®¥vM)+-,/8Z·½¸¸r*'"',+.7WSU36F_N:74:5457530<:B;6-+*,00-8:7LW`jjb`_nrst^B.1*>`\beqx|~ ¦¨§¨¦¨ª©­¯¯°²²¶¹¸º·¸»¼¼¾ÁÃÂÇÇÉÌÍÍÏÐÐÏÐÓÔÓÓÒÖÖ×ÛÜÜÛÜÞàÚË0#' $$( "3k}z{z}x~¡­¸¿ÄÅÈÇÈÉËÍÏÒ×ÖÙÙØÙ×ÖÖÖÔÔÒÍÉ¾´¢scZ[V`Z[_]Z\cbjjkkmppuqlhd^[^Z[^]]hbiocg__]jekh   %-6?H_u£««®¬¨¤rP4! ,@Zn¢¨«¯´²±°°¯°³¬¶µ·¶¶²®­¥ ²~zp51+4:.%'-09@<00..5**+%-,3410-1+3?k|c7#$$'?WM9+'1J@:05<A8*#*16>63XX=AckeYqucWc[CQG=Udnkp¨krn1%."+0T·ººU*&!#%)8WUV);ITM//8;367/2117@G<?3,+/,0;:5<R[\b]dcfv~ztcG6.2;d]_lr~¡§¤¦§¤©ª«ªª¬¯°´³µ²¶»º¹¾º¾¿ÁÂÃÇÆËÉÍÌÎÏÐÏÎÒÒÕÔÔÕÕÖØÚÛÛÝÝßÛÔ¬E%&# #'#3v~~{x~~{y~°»ÃÇÊÍËÊÊÈÍÌÎÑÖØÛ×ØÖØ×××ÕÓÎÎÄº¨j^Y\^\][[`W]fgghkmqpsuqmc]^\\[Y]_ajbhk`ddacrgne$$.DB[v §«®ª¨¡vX7# $*<Yn£©«°±±±³®°´²±¯±¶³µ´­©¢¡ºyq7/*4;)&).6HB44/*+=0*'#.289)*+-%2L|uY6$-(*2@C9* 8L@3+*>J=+'&2:0/6N_=9RfX_ixrab[WOG7Wi{~j jgL-0+*0S¶¶­n=39(!"&*3VQF+9MPJ//9;/0+,22.7?A<A;,.,/1994<WV[fcins|yvqdK3'0>[Yboqw ¤¨££¨¦¨©«¬¬®°°³´³³¹¹Âº»½ÁÂÁÃÅÈÉÉÊÍÌÍÑÎÑÓÓÔÕÔÕÕÖÖØØÛÜÞßÜÙÅj&.1""$&  9{z|vywx¨¹ÃÊËÐÑÏÎÊÈÊÊÍÑÖÙÚÙØ×××××ÖÐÎÈ¿°¡ye`XZ\][[\XXafjkhrqpsvtpm[_W[\YWXbdigfjedagchkig  #(-EZr¤©©ªª¥v[9%$/?Un}£§©°²³´±±³±²¯²´µµµ²³ª© ®stp3(+:4/*)5A?46/*,16+23(+93(&&&()8d~nV3%(0+)8B6,$;U<55.548;,+/402.;NG4TgF_msqdZNRVK2Kawrky yC4-.6g»¬TAji)!)!%?SOM3@JKJ4168+2123-.<924A763.16<;7EOQaklrwxzyyqeK/*.K^Yjnqw ¡§¥«£§¨ª¬¬®®°²°³¶µ¼¼º¼ºÀÁÃÄÄÆÉÊËÎÐÏÐÏÓÒÒÓÒÓÔÔÖÖ××ÚÜÞÝÝÜÐ<+*$!"$!=}~}ww{³ÂÉÏÒÕÕÒÑÌÍËÉÏÑÕØÚ××ØØ×ÖÖÕÐËÅºªn`]V\]^\[ZX`ddeekprpptrqfe_XYZ\_aahjfjigda^ehifa %,=Wt§¨®««¦pS7 "$/?Ri}¡¦©­¯µ²³±²´²®´±·´¶¯®¨¦«gHF+.9/%/0<C:136*'2*,,)(,85%#$-,TmY=/1-024@1,)EU7644311?3'48,.+8OK=UaCYq{vkMDJEE9>Pt¤yYr¤w\P=Gµ<p¢/%%JWOL2EKA?23951=;/,23774504C5328A=<IS^jupwv}wyrdN,*0PZcikny~¡¡¢¤¨£¦§ª«­­±°²±´³´¹½»¼¾¾ÂÆÁÆÇÉÌËÌÎÐÑÑÔÒÑÒÑÕÖ×ÖÝØÖÙÛÞÜÞÞØ¶W #"%H}|}y{zw©¾ÈÌÔÖ××ÕÓÎÍÎÍÍÓÕ×ØØÙÙÙÕÔÒÑÌÈÀ·m`]\Z`\[____deflvustvsup``ZXTXZZ_ckhhidehc`fea_^!#"$,:Wi¤¬®«¬¨ tV7!"'/7Vk~¢§®°³±µ´°´±³±´µ¸µ²°«¨¦H-)&+85)44;:5--(+),.-()$80.&#("'=rzla<$*#&'/547)DK53;7'-16-,5?-+01GE6G`AKmxt\958<6=K g3Bpwnx¨­qVÂ¨C$%,*@PIF/?F;=84;21A>,250166333;:2;69<JP\isuuyyxuveN/-4YV[hot{¢¤¢ ¤¢£¥£§«¯­°°¯µ´³µ»»»º»ÀÀÅÃÂÆÈÊÍËÏÎÐÒÔÓÑÐÓÖÖÔØØÖ×ØÚÜßßÝÙÇu%(T~~}x~}xx|¯ÃÍÒÖØÙÙØÕÑÐÏÏÐÔ×ØÚÙØÚÙØÖÔÑËÄ¹¯sg__`]\[[YY_^agjlorprsrqha_Z[WVYbcfgfmljgfgegchbV")9Lo¡¦«®¬ª¦x]8#!#)3Sj¡ªª¯´²µ±°°³°³µ´µ¶°¯ª¨§wB*$,07977@83,.1,'&1/$//01.*% %7cj|dQ1((*,)+5=/1E@/482$)-0*09:33/(@B@<F@7c}~c<499?GV|Q5y=Uz²ª²È¨E###'FL=?0=F8CA9918AC4./52:10305>6/98;NUipyu|{{|xvvcR-+;SUbfouy¢¢ ¡¥¦¦¤¥«­³¯ª°±±´¸¹¼¸¼»¾ÀÁÄÁÆÊËÎÌÍÎÐÐÒÏÒÑ×ÓÖÔ×Õ×Ö×ÚÝÜÞÞÜÒ4 -a|}|xx{~¸ÉÏÓÙÚÛÙ×ÕÐÎÐÏÒÕÖÚÚÚÙØØ×ÖÔÐÇÀ´£~la`ad[\XYWXZ[^khlnlrqophb^a]WYX^beliejh_ck_`kih_["  ")5Je{¤¦­®­©¥{_>$#*7Ol¢¥¯²·³´³²´²²µ³´¶µ¶¯®«¥¡};0'.1378D?7()*8%+)2+,.)2,."'%+7R}tMsvR>4$,'&+(/59EL=&+92!&&(.)6F67*%>J>B414FlmD.AFTN^ vITC:p§­¬{/&-(.FM>5/:<2<C=<35AE6105733-362>/B>;KS^nx{s}||xyys]E2/JX^_lpwz|  ¢¤¦ ¡¥¤¨­¬¯°ª­´²¶¶¸¸»½»¼¿ÀÀÁÃÅÈÌËËÑÐÏÎÒÐÑÒÔÖÔÖ××ÖØÙÛÜÝßÝØ¶N!! -b{{~{zwtvy ¹ÊÒÖÙÛÚØØÔÓÒÒÓÔÕØÙÚÙØÙÙÖÕÑÍÆ¼«yed_ab][\WRZdd]flmputsogf^b]\YY^bcjjhhgggeioakjdVO!! &%5Iez£§¬­­­§|bC)$'(8Slz¡§ª±³²´²¯°¬µ¶±µµµµ±®¬¦¢C12.;B<>58*$%+-*+,/,,1/3)'$-)<XypI>mpB72(-'*.-*8;HJ?'.<7#&$'-6=H;<("<T?8FD4AfyqV<?Mfaa¡x_{[b ©tMP^M:(,/)4GJ;5.?<0NC?220>;495?>1,04-1-4HA=PRdr{xw{}y|{{pZE2+CYY`im{wz|~  £¡¦§§¦ª­¯¯ª®³±¶¶¸¸¸»½¾ÀÁÃÃÆÇÉÈÇÉÏÑÏÌÏÑÑÒÓÔÓÕÖÕ×ØÚÙÛÝßÜÚÄs"!3k~{{zv}{w|¥¾ËÐÕÙÛÚÙÔÓÒÑÑÓÕÔÖØÚØØÙÕÖÒÐÊÃ´£ufhe_c_\X^W\_[bklonrormkc_\_^Y^]`dhigiffkacdab^XVS#,*<Jez¤©®±°®¨xfI*%(7Of|ª«²®¯´²³®³³´³´±²µµ­ª¨ }sF615BE<4.2+)*/,<.)0+*//+'%%,4`y\A7>{lK>21-*((126EPF7&(2:)&.'0.7E95'-RH53;<d|otnl`RTjZ`z¼¬¥?-%-')$:M/8OL6/2=B7>8D1.2?9506?92141183;L@JPWny{z}~|yvvto\60-PZ\`hrz}|| ¢¡¦£¥¦¨­¯¬²³´·µ¶·¹»½¾ÂÀÄÄÅÆÉÈËÉÎÐÏÏÏÏÐÒÐÔÒÔÓÖ×ØÖØÚÛÜÛÙÏ-#5w{}{w{zwzy¬ÁÌÓÖØÛÙ×ÖÒÏÏÏÑÖÕØÙØÙ×ÕÔÓÐÍÆ»¯{pkihgge^^c\aaaghksuvqhif``Z\[\^cghijkgjgh^]ad_VQZ\ !*3Iiv¦¯®°«¦¢jG($%)6Of|£©¬®±²°²²¯²²±³¶´¶µ¯°¨¤|{sC;8<DE4111*++1,)**3.,'14/4.0D|yV>--M`GTI/,)./27<KPH6.&77+%##+19DE5()O^:@8>\xmiovyuipgqtC?r·¾±^9(#$"4`C+7M=1.7=>/;8?8+7::00.>:6920558CFAKMYpw{~|z{xzreP;0+O\[\fp|~ ¡¤¢£¥£¥¤«­¯­³¯³³²µµ¼¼¿ÀÀ¿ÃÃÅÇÇÉËÌÑÍÎÎÐÑÑÒÓÕÑÔÔÔÖÕ×ÙÙÜÜÜÚÓ­D&=z}}zz|xxz~±ÄÎÒÕÙÚØÖÒÏÏÐÎÑÔÖÙÙØÙØØÖÓÐËÃ´¦|qlhjkfed^]a_^b`mqwvuohjff\_XZ[^aejkklfgac^^]]\YRRP! "'6N]}¤«°®ª§~nF,%#(2Ocy ¨«±²±²²°±²°¶²²²²´±¬ª£¡yukSC9;DF6,+*+**.0.++.-6-',*7::IXL/'*4^UPR;40/+1./>SPC7.'*6/.*&+35BK<&"*R`H0937JXO\qxzyqnP>Q{®¸ªxW?($'3ZU2(BG>32<N=+<:@?08?:1,5=;1/23115CFEPVcox{{z}||}zumL:/.S\X`jmy¡¡¡¡¦¥¨©ª«­®±¯±±³´·»º¾½¿ÀÃÀÃÇÅÄÉÌÐÎÐËÏÐÏÑÒÔÔ×ÓÔÕÕÖØÙÙÛÛÜØÃj=}}}z}zx¯ÃÌÓ×××ÖÓÏÎÍÎÑÒÖÖÚÛÙÙÙØÕÒÌÇ¼¯ypojiicjebaeab`bmtqttqnijh``\[^^`ahgldjhhaiZ`^VVQSO!%'1Im|¤ª®ªª¦¡}mW4&&+>Nb~£§­°²®¯®°²®­­­«¬°±¬¦£tsdJ<?6:5-&.,-/22,*-1))<,,AIKRI;/1(/:ozPYS>/./,+#.EX<9;0&(/)+*()49GA6'"*McV95-)2<=Afmz~|}o_YM`}x¤[H;Ys7'2AJ72/<G70?<?B:6B490:==1/0150<JFKMXfoy|~|zzz{jG8//QY]gir|~¡¡¢¡¦¦«§¨©«­®°°¯´´ºº»¿Á¿½ÀÂÅÆÅÊÈÌÍÎÌÍÎÎÐÒÑÓÓÓÔÔÕÙ××ÙÛÛÚßÛÍ" F}}z{z}¶ÅÏÕÖØÕÓÑÍÌÌÏÓÒÖØÚÛÙÚ×ÖÒÒÌÂ¶¤~wttkmgffd`ababeekkpponnid_\ZZ]][dhghefig\]a`[X\TQQK!!!#!(.@g§©¬­«¦ |u[7)$.=Ncy£ªª®±®®ª¬ª¬««§©©©¬ªª¢ ywF:,.80,,1+00*,*.4540--8S^^=52.(+:9dZMZ[S7+7+%(3LR1?C5')4/*$./3=I1,3&.O]W@5/..866B`w{q|zjmVRefny©°µ¥yqr?5<QO8204A/3@;ISM5<720D;83.2)02BJDMQYgqw{w|y}{|n?8.7S\blmy||¡¢¡¤¦ª©ª¬©«®´·¹»º¿À¾ÀÁ¾ÅÆÇÉÉÊÍÍËÎÏÑÑÑÒÒÒÔÔÔÖÙØÕ×ÙÙÜÝÛÑ¤?!N|}y|||yz´ÈÎÔÖÖØÓÐÍËËÎÏÓÖÙÚÛØ×ÕÖÒÍÈ¿¬xxuysjifbZbc^bfabdnqqnpqg`\[XY\^bgjgegjk`\]_cYY[UUPQ!&-Fbs¢¨­¬«¨¢xX3,&,6Cdu ¦¬®²³²­­¬­­ª¨¦«­°­«¨¢zB>:.53(/,1,/*,-02>1..2@ViI,)+1/2/=\KM[YK.%703,;@4/4E7+-'12+232@Q7$5=9RZR=B0*+'4;AYwx|oxbmgE>16OgrXj¢qlvugR@9EG.6AH[[I8:324877.02..6GHIIR]ir}{zx~}}xw_F7*;S_belz{}|~¡ £ £¤£¦©«¦¦ª¯´²¸¹¸·¾¾¼¿ÁÀÅÇÉÇÉËÎËÍÍÎÏÎÐÓÒØÓÕÕÖ×Ö××ØÙÛÛÚÕ¶V#\~}~|||}¶ÈÎÔÖØÖÓÐÎËËÍÑÒÔÙÚÙÜÖÖÔÎÉÃµ¦~ywuzqhgg_^_cdcikifmnrkneab\^Z[[Z]gkhfaikcabhaSPT[WPP$!#4?[m¨§¬¬ª¦£u\4$",7K`r¢¨­®±²´­­¬®«¬ª«¯±°®©§£q;GM,.-*+-2*)+.*+-628+-6MG4)-/0222:`TXXVN:(3-06<3*.3;:(44-///4.-QJ'5;D\eF/@6!"&)3@JsouyaZsF$!%&2^X2:>RHFzo~sgjtgL[id_;=;9-*.4951.01/=GJNTWenv{y|{{zx]K>1FUclgr{z}¡¢ ¡¢¥¦©©¨¨¥ª¯µ±¸·¶¹½½½¾Á¿ÃÃÆÈÇÉËÊÎÎÍÎÎÏÒÑÔÓÕÓÔÙÕ×ØÙÚÙÙÛ×Æz!$_{w}|{¢»ËÐÓÖÖÕÑÍÍËËÎÎÒÕ×Ú×ÚÖÕÕÐÉ¼¬zwrwysijkf`fbb\behkolmnlaZ\X[ZX^b]mlhghcfb^]d^STV]YZX"%.JXp§¨­®­¨£uU/$%);Kcw¡©ª±±±±¯´¯¯²®¯­´²±°©¨ j6EN,)')0,(8-,.*+597-,01H/:/04945+3\VUNF?75,.>AK7206C=*-7<*82-+1LB%-7WgqA$;>%!"*/D\k|hi{nLj](#"+Ri+'')(3dG3;Hq|{}¢tRA.<F18720<6.0615@EER]\kqw|z|}zt[O5.IZ_bdp~ ¡¨¨§©ª©©¬§²®´¶º·º¹½¾½ÂÅÆÅÆÇÆÊÌÍÌËÎÏÐÑÏÒÓÓÕÕ×ÕÖÖØØÚÚÙ×Ï' 'm}{~z|z}|{}§¾ÊÏÓÖØ×ÑÎËËËÏÐÒÖÙÜÙ×ØÔÑÌÅ¹¨}uvs{tmgigcd`e]aghhjonmj_ab][XWW\^djihhd\``\c\VVW[\^^S$'/CRl¡ ¨¯®°¦§¡vV8'*.;Kcy£¥­¬²®¯´°°±²²²°´´°°°¥¦}jb;=E,+74,'-;,-,3-431+,*002325=56-14MXSNG@5?6(@@33&/.D>.671,+#%'7A:0(8Tnh8%4H6&74@Ra|tUqm[kcatO)!#*E{1#,-)LO( !,KIYHCHx¨¦~mmgE;DD560?764*665;HHLUX^jt}}{z~uRF49RVgigt~¡¡¤§©«¨¦«¬³±µ±µ¶¹¹¼Á¾ÁÂÃÅÆÅÉÊËÌÌÍÍÏÑÒÏÑÓÒÓÓÕÕÖÖÖÙ×ÙÚÙÔ²G /y||}«¾ÈÏÓÕÙÕÑÌÍÉÌÍÏÓ×ßÛÙÙÕÒÎÇÁ´xtqpttqigigk[_^eikkjpgied^[WWUSY`dfijkggZV\b__UWV`][Z\##"""+9Ni| ¦­¬ª®­£pX;%)*8Hcy §«­¯®´±°²²²±¯²´±±°®©« xcZ97?+/7123)89-0./24-)+5/.)-7<B40.'8JIGF>=.215>C41.,1BE5**(/)-#57E;7-1Xqf3 #=R-+5@D[^srLeq\Wx]~u8$*-:{A"-*2W.!%/DBA559OdX=HeiUN<32488=2)442FDJTVVdju||z|~~cNF+;LSf]kw ¢¨£¤§©§­­°®°²´²¹º½Â¿ÃÀÃÅÄÅÇËÉÍÎÎÏÎÍÏÒÑÓÓÓÔÖÖÕÖÖØ××ØØÖ¾^5u||}§¾ÅËÐÕÙÖÐÎËÇÉÎÑÓØÚÜÚÖÔÑÍÇ»­xvupwwjkgefc\[`gafienfddb\ZUUUV^echighhj^[[\b\X[V^\V_[  $#0-Mb}¥®­­¬ª¡qWC''*GG_u¥­«¬³°¯²³°³°²´³´²±¯¨¦£zkT45.(,2483+,-.,-,2-.3,-8108@=5/0*9@GKGA8:4,56;00+0;6DF7+/'-'"#0<>'*-6ZrcB$#*VU<@HR[``y{agxdY{}wZ)&+4xP%(%IF& $=@F;463FCK2<Igr}_C;79509,,.,?JCLXVbfmw{wz}~~gR>1KSaedr~£ ¢§¨¦ª©­«­¯¯°µ¶¸»¾À¿¿¿ÂÄÃÅÅÉÊÍÍÑÍÐÎÏÒÑÓÑÒÔÕÕÔÕÖÖÕØØØØË 3||}~~~¥³ÁËÐÓÖÒÏÎÊÈÉÎÒÓØÛÛÙÕÕÏËÄº¨zxvwsssrmjii``]W_efgcjhb`WUYSTY]`dfkmihcfaZda^aZYVZ`a^b!!!!(+2Ee~¡©©®¯©¤z]E%&3;Fhw¨¬®±°²°³°¯´´±²³¶²²¯¦¤|mX668-*3<@,(/()'.(762.00-39>=?50,107BOAF8:12<;3,.7-0BEJC,1*$('&6H4*&,>WiFR9#!>k]@JPZ`fywzwr`vuipzC(/<p`&)(F6$-(-AHI@0+0LC24?;=F}hA?7-/-2,029BFKSW[\kpy{z}xaR4/PVefev ¡£¢£§©¦¤©¯¬«©­±¶¶¹»ºÁ¿¾¿ÇÅÅÇÇÉÇÊËÐÑÏÐÏÏÐÑÒÕ×ÒÕÔÖÕÖÓ×ÛÚÖÎ( ;x||®½ÈÌÏÒÑÏÍËÇÉÏÐÔØÛÙÚÔÕÏÆÁ¶ xyvsrppoljhfb[ZZ^befcggaVUT[WZ\cbidkfggcd_Z`eZ\_Y[`[]ab&&!$&(*+.Lhw¢©¬«©¥w`4)-1EEcw¦ª­°±°³´²²²±²²´®°µ°ª¦¡¤wl_396*215D*(0.++-(8/)+0,2<IJC=0)3211@B>A;I7>A0**,++*79IU+'('.-(:K,(&8Q]L>\]4%,UlVFM`rajuty{cji_qtuyk0*0iv)*09(&&.:D=<?;.3L<-;><;1MTEB5,1.*)+,9CHPUX_djtw{~}}tVL63QVhfgx¢££¦¨¥¦¦¨ª®¬¯¯²µ¸¶¹¼¿À¾ÃÂÄÇÇÆÈÈÉÍÐÏÎÏÏÐÐÒÓÑÔÕ×ÕÕÔÔÖÚ×ØÓ²D >z{©µ¿ÉËÍÊÌËÉÇÉÎÑÖÚÜÛÖÕÓÌÆ¿±¡zuvuxppmlhogg`Yb_^cahj^Z\SLQXVecdihhccbi_]]`e_]_ZZ\X\]__%%$)! %'1B`u©ªª¨¥z]C.,4AM`w§ª¬­°±¯±°²±±°³´±¶°±ª©¢ ¢~qi6;7;2&33**+.)((382-*3.:DDC=B0(05/3?F<;7=>B@-+(150032KZ6)')*,2>A-")=]Z>6TlT;<=TgeSNdM@Vegmi\JZr}V-5Wr+,6/)&/-<C<26?(3E=:?57*/:=6B542(,,-29MOSUUcijqw{~z}|wmRG47VZgml} £¢£¢¤¦¦£ª¨§¥ª«±±¶··¸¸»ÀÂÁÃÁÆÇÅÉÉÉÊËÍÌÍÍÑÐÐÒÑÑ×ÔÖ×ÖÕ×Ö×Ö×Õ¿g"Dz}~¬ºÀÆÇÆÈÅÈÆÉÐÒØÚÛÚÙÔÑÌÉº¬}wrtrporpelkb``\Xcdeie\VMIKMU]cghjhkebdc]YUbcZ^a^d]X]dbb  #$!",1@]r¢§ªª©¡¡zaI6.3;JZt¥ª©®²±±²±³°¯±®´±´­²«¦¤zt:77<*.710&,'%&,3<.(+;GRTHA:0.,3(-1D?:65?A?67153316.9;J7%(++'+?E3+/NnV2;<alP401]}jAFVYA]|rh`A<@cqP4Xk5:3'!&'CD6B1-*$;H9D<37434:6D41.5)3038ENOV^imgqw}t{}~|hP;/=P]depy¡§ ¥§¥§©§¥¨«¬²¶¶µ¹¹¼¿ÀÂÂÀÃÇÄÉÇÈÉÊÌÌÍÍÏÍÏÕÐÓÓÕÕÕÓÕÕÖÖÖÖÕÍ0Nyz¨¹¾½½ÀÀÀÃÉÍÓÖÚÚÙÖÒÏÍÆ½§}tsqooqlkehc\`^YZ`egf`YOFAKP\cghhhgdf`e\[W[\]^X]`\d\^d_Z$$!%%"%3<Yt¥ª®©§¤|kG..;>I]x ¨®°±²°°®®±³³¯°±µª¬¨¡x61FE/'=3)).$%')95147TbeU;85.,-,+3=C;;=9>6101?./<35(20DW)",-,3==4%,UbF?6CLfbA&$;|}hf~\r}mWPD6?TrvmQY_-9G<#&$3B<;76.):>5I:4503101@2.'5+/4;?JPWX[lhlrtx~}~v^I53GSaflr}  ¡©§¥¤¤£©ªª¬¬°¶³¸¹º»¼ÁÃÁÀÇÇÉÈÆÊËÍÍÏÐÑÎÑÑÐÑÓÔÔÓÓÓÖÔÔ×ØÕÑ­HR{¥­³µµ²»ÁÉÏÕØÜÚØÖÒÎÊÄ¸¡yorljpoiiecaVb\\`efha]ZSNFNSZbemngdagf^XZW[]\^Zcc[a_aa`T**'%'"$#.8Tl£©«¨­¨¡|fT535BM[r¦©­°±³¯°²³­°±±±µ¶ªª¨¤ ¢h83VO61;()&-&+,.029HQbZH9202,),*58BD>=K:/4/,1<<5976.-8Cg4)*165/:A59XH=C9EJhqM'%$GlwY~skbY;BAr~j`lq:]v*!*;<@75;/.C<=E86-/450584,$.-07@HNTQY_nlnuvz{{}~{~|wuZD4=MY`dox¥¡£¤¡§©¬©««®³°¸¹»¸ºÀÁ¿ÁÂÉÆÈÅÉËËÌÐÐÎÍÎÓÒÓÓÔÕÕÔÔÕÕÕÕÖÕÓÂj\x|~ ¤©«©±ÀÉÑÕÕßØØÕÓÎÇÀ´¢zooiljhhm`b`W[]_diab_\YPMEQXaemojfadecYYUX`Y]_]eY\`df_XT++,.'$"'+6Qg ¦««©££lXA54BN]u¨©­±®°­²±®±°¯²²²´²«ª¦¥^@9dT3+6#$%(,"':6@U]\N8.2')-*-'*5=AA=;<21-804:D=:<7+2-8]C&3:<4*3MLRH589;::Onh8%$L¦ ul irZcUG;ADhpwzwL£&",.5;:51/5?1=>63-84/0236+.+-13@KUUTVdmrvsyz}}z~{umW:/@Raaflz ¢¤¥¥©¦ª®«­­°¯µ¹º¸¼¾Â¿ÀÄÄÄÇÈÆÉÎÎÎÐÎÐÑÔÒÒÕÓÔÕÔÓÕÖÖÖÖÖÒÉexsz¡±ÃÌÑÕ×ÝÚÕÔÐÍÉÂ¯wpqqokfef^]ZT^_agd_^^UMKJTR]bfomihg``bY\XUZW[d\d`_]`_ZPJ**% $#&0Ng|¤¨ª¬¦¤s]B::CH[q¥¨¬®¯³¯°¯¯°±¬±³¯³°«¨¢¢¤a?<`V741%'&))*>MMY\N>@1/-/*+((*+1AH58H;11.55;E@CEH;2)*+F?16<1.(-S`a<0.4558De{X5"$+GcoTntn{VSJ:1>2]yr|{s¨©X%$5-0:2*/'1<72/00036.1+(13/'.1:>JOX]ahmuuzyy}~{|{}zrbO6+BT_cqv{ ¡£¤¢£¤©§­«­¯®´¸··¹½½À¿ÁÂÅÅÉÈÈÈÊÌÍÏÏÏÐÑÓÔÕÔÖÓÔÒÔÔÖÖ×ÖÖÌ«lwwpuw}¯ÂÌÓÙÚÜÚ×ÖÑÌÆ¸ª|tnmlknd`^aXZZc]c`bcZVRNHORUaflknjea\^YXZXXZ\^bb`_ZagZUPG&&(%'(&14Hdt¥©¬¥¢£x]G9:?J]p©§«®²±±¬¯®°°¯´²³°²­¨¤ «g@H\[-;21*)1)/DPPND6/21.0/13//,19DB7BNA962;>9D=CD=::0-0?I9H8'))3Lmg8)*,270B]h^=C))1>:8Q`ls}iRD<+83HVr}¬¯8$,11:91-(,:>6043-31.9+/.1..0.7<CGP^`jlrtvwx{~{|y{{oUC46M__bqz ¡¡£§¤­°¯¯¯µµ·¸µ»¾¿ÁÃÃÅÇÄÅÉÉÉËÎÐÐÑÑÓÒÔÕÓÒÓØÕÒÔÖÕÓÖ×Ô¾~zijlryqww{|~~£³ÅÎÒÛÝÛÚÙÕÐËÁ¶¥usqrnkf^aea\YXY`e``_VOSKIRWWfhfflec__^ZXVT]V]\`^^\`cfYTKE''$"  ,))3FZr¢¦¢¢¥pcD2:>NXp¢¦¬­°°®®­¯°²¯´°²³°ª­¤¢­j:N]`176)*0+018<6;43393-2,04/+01:C76OGC640/<BA77?7D><29BG@4/'#0=ToW5+*&+73Gjka@CN*!0.-68Db~mQ9+00?DG{³ª³¢i(,214:=.1+4?58@34/27/-.+4,/)1,8@KOOTdomnpus{y~|z{{{xhR7.CTaXjt~¡ £¦¤¬¬®­®²±¶µ¹´¼¼ÀÁ¿ÄÃÃÇÈÉÉËËÎÑÒÒÒÐÑÓÓÓÔÕÕÔÕÖÖÔÖØØÊz{uabglqhootsv~}¡·ÆÏÖÜÜÝÙ×ÓÐÉ¾°¢xqmollijd\`R][\edf_WTWPKOSZ\cgijbe__\_WQW\VW\_`_\Y_c[[SG?$$(#&"&*#,Ne~©¡¤¢ v[E::=M]p¢¥§®­®¯¯±®®±¯°±³±°°§ª¤§a8G`D;:0))1)2*8223-/4/0/1)+<-)-4:=1<I<A7;1A=N:<.7;1387>:>-&+##);[f@6.'),5LVtynY4QM%.@31))6OsZ;,6;RN3Yovª©¨y4!',/0:.,(&1E6461+111/*((*/5.43:@MINZgnqtutuz~|{zyo\A01CU_`m| £¤§§§¨­«¯±²´µ¶¹µ¼¾ÀÀÀÇÅÄÅÉÉÊÌÍÌÐÒÑÒÑÒÓÔÐÔ×ÖÕÖÕÕÓÕØÙÑ¬~un[VX^o]gimjquvt{~¤»ÊÏ×ßÛÝ×ÕÔÎÅ¸¨{ttopkhbe^[[T]^fib`YPILIOS[]aahkfdidf__ZV_^Zbada^\\^WXPHD:''%)&!'$/Lh¡£¤¡¡v`IA<=KVn| £¨­®±­±±¯°±¯®±²±®®¨¤¤|\:J\?2?4,))((--.1,1270-+-,6>4*1<J48B@97536>LOB8--4805@E7-+('&(+FgO1351**5GkzwvoC6^=*=;2)(#>\]2.4BVYD[@W[%!13095.'$)8?7233)*6.+,%-(/:.+1;FIQTcjmoovuwwvzy~~ylPA33K[Zit} ¡¢¤£§©¨¬¬«®µ¯±µ·¸½¼½¿ÁÄÄÄÇÉÊËËÍËÏÏÏÑÒÓÒÕÒÔÔ×ÕÕÔÕÔ×ØÙÕ½rjiUMR`gZ[\cdjgnlvw{|ªÀËÐÙÛÝÜÖÖÑËÁ´¥uqpmlfba_[W]Z\`bcabQMMQLSXXdffhde`b]aZXTU_Z_abeb^Z`c[OLE5<&&& #)(3Mi|£§§¨¤pYG;?AL]n¡ª¬ª¯°°±¯¯°±±±´²²°¬©¦¡dBQ_@@I14+1(/-.031;2.1-+-*.6.*:J=,@G;43<:8C_TJ:3)'1+.02/02.*%'+QY6+654/-5Ec{xth7CU</5/#/.6Dwt;2/=fknfIKU{K)'104C;/&)'25/02.+'/,',*,+059:6DFKSYbinqstvtzy}~zyxvhF737PW]h}¤¡¤¤¢©¤¥ª«¨ª­®¬³¸¸º½»½ÂÀÀÀÆÄÇÉËËËÉÐÎÑÔÔÒÐÕÔÓÓÕÔÕÕÓÖ×ØÚØÈfY[MJOUgRPW]^^ccnnpvsxw}~~³ÃÎÓ×ÛÜÜ×ÕÎÇÀ®xqohfc_WSXNTU^`df[VOMCFITZbklhee`\__bYSWY_^ekhg^^ZZYVKFB>4$$& " #"*3Der¢ª¯¯ª©¡p[D<<@P\l¢¢°­¬«±°¯±®±±²±µ´±°ª¢¤|`GM`I<D+&'--,22344,8//0+1+0/31=G81DI=40-49FOQH:-+*1)(.771++(+&3PX/&1@A5/6<Ny}z}H1EL@+'(.6<H[aG0)=[w~w[YR~9#(33;;4%4*23-/3.1.--)$'&(+27>=CFEOU_iooswssuy~~{{yqVC51=PZan¢£ ££¤¦¦¨ª¬©¬ª´µ¶µ»½»¾¾¾ÃÃÄÃÇÊÉÌÍÐÐÑÓÑÑÓÖ×ÕÔÙÔÖØÖ×ÕØÛÙÒ­uWRONFOMaKLQVUU`_abffimoos{wyz}~¥¸ÆÏÔÙÛÝÛÕÐÌÅ¼­~tokge[VMOMNUY_feaZSMGDJRNZameeac_[bb][\Y^ZagfhcZ]]UVQK?=@5##$!')#(.E[n¦®®®¯¨¢xaC>ABIVl~¡¥ª«­ª­¯­¯°±±²³²³³ªª¦£ |vaRN^QI>+$'*)/2:;A5.1509+-/+:6;EA27D?:14389LAIM961&/')8500,')&':LD)+.=IN=5<Hc{js458>F;()-8@MD8A1)?V}l[bg^t.&)3/471(/)/3++.528))"&%*3+49CDCFMO\gnrostxt{zz}}~{uaL0.4MV^bv¡¡¥¤¦§«ª©©««¯¯´¶º½½¼¿ÁÁÀÂÄÇËÎÍÍÐÐÐÑÐÓÓÕÔÔÓØÕÖ××××ÛÙÚØ¹}cQRPK<>IMDCPQOQYX\XU_adbhmosutpt~{~|®ÁËÒÕÛÞÝÚÓÏÉÀ²¦yumddYYVLKWP\]_c_]VJHGIMURcjjhd]_^db]\_[V[^hjhi`^]\R\OMD<6:##%%"""$).;Uh}«®­¯®¬«¦jK?;9CSl{¢§«©©°¬®«±±²³±´·²¯«ª£~nmPDRRS9+%%(239B24-,+.-./,.3=?DD429CA?/1218A9AV;52/0-.).'-7,)''9928':8Aga_^\VxsR40.@XI((8A2930,78QQCXme|R(%/-224+!'/442*03+)(..$%,120:JBHHPS[jotrqwtssu~}yyymT1(1GQY[m ¥¦¥§©§©«¯ª­®µµ»½»½À¾¿ÁÁÅÈÊÌËÍÏÑÏÑÐÒÕÔÕÓÓÖÔÔØØØØÙÜÚØÄYIIMOIJULABFJLJNPZNUYXd^^`akjhenmtvtwv|¡ }x~¡¶ÇÍÓØÜÜÛ×ÓÎÇ¹«xng`[WQQGPOQ[eae]YVIAGLS\_fhfa]__b][\Z]Z]\]dnjfa]]V[NLF:899""(!#!,11Lk©ª­±¬°«¦oQ99<DQo}¢§ª­­¯²®°°²¯°¯µ³±±«§¦}jfWNR\cB)%,**/A:-+,'+1.+/.34>GH5/-?E?34665B?8CP:655.,,),$'60(*'=.-23RF)Guznj[cuB:06IbL+0F36>;,;HjM;Xhq>&,)0820&&+66.)21''1)*(%(,..2=GIKNU[eusuxwrvsus|vtyq\I0+9JU[er¡  ¡£¢§§©¨¨©«¬°¯±³¹¾»¸¼¾ÀÀÃÃÆÊÊÍÏÌÐÏÐÎÒÒÓ×ÓÕÓÖÓÖØØÙÚÛÚÚÎWDMSRDYaMFJFEDDGKRNQOTX]UY\]^`_cchknmnos{¤¢¢¼ÊÑÕÙÞÞÛ×ÑÉ½± {qj^WZSRPEMQUWZa^]SPEDMUWdairf`^]Z_\]`_WZ``adhjc`aa^OJJ<6759""  #%1)5Cc£¦¬±¯°­¨v]:59HTk|£©ª­«¯«°±²²±®±²´¯¯­¨¤~{sh]JK\^D%')',=B312/-..,7..,4@K772-BD>3+16<<F?BH<:122-,/)/0423311,--It@.Hyup``zgzU;1:HUH3BIEIK7Bi>,<EU\21*(312($%09//*-+1/1(+&(()8744FMMQT]jmqvxyvuwswuxz|eJ6&*>VV_mx ¢¤¥©¬¨¨®¬®­­°µ»»»¹½¿¿ÁÃÆÇÇÊÊÌÍÏÐÎÑÐÓÒÔÔÔÕÕÕÖÖØØÙÛÚÚÕ¥^IPSWGX_SIQOQMLOHPIHLQPUSSRQNXTX][b_eccenmzz ¥¼ÊÒÙÚÛÜØÔÎÄ¹§wj^\UTQIJFLRYbb_^ZSGHDPY`fbhle\]^\a^][[U^_ebied_[d]WJJE:715<  ##$&"$%5Dm¡¦¬°²®®©w`<4<MTi|¥¨©«°¬«²°°°®®³²²²¯«¥¤|lkz[CRY_9',*+0>;')),,*/++-/39HG4,1/CD9061/3AJ=@G668846-..+0*78910%10Ft.!#0_s[O\iov«pTO80/@LBZV_ZQ]au,(43:776473-*)%(0@/('+.--*-+-*1(::9>GSOR[drpwrx{{rvuxuxtr\9,,/DXcet}¢   ¥¦§¨§ªªª«ª¬²¶·¹¶½¾¾½ÅÄÅÉÊÈÉËÌÎÎÏÑÑÑÒÓÓÔÖÕÖÖØØØÚÙÙÛ×·bFQSZSX_RRPSQNQRJRSLJIJELHHNKMPQQSVM^^Z`cllp|¢ ­ÀËÓÙÝÝÜÖÒÊ¿²xja_TOKHDJPSU^`YWVPNKJPT]chjfcc`^Y_`]X[Z\g[fini^fbaZVNDJA:,44&&%%!!'.Eo©«¯¯°®©}lC;@FWgx£¦©«­­­±¬¯µ¬°³µ´´°®¦¡ r_p`D[Z`8&##+36.'&/-+',,-.-@DG@2+..=FA/0124?C@CG?6=6A;**(%..11543/91BT%"&CeaHScc«jpW+17WgYmsa?<Z<-./,/0660=02,(%/040),*+5+.(+4)*-/:9>JNMW^kqvyxx{utszvwuqcB.)%1D^ikw¢ ¢¤¤¥ª©¨ª§¬¨­±´´ºµº»¾¾ÂÂÅÆÊÊÊÉÌÎÏÏÏÑÒÓÕÓÓÓÕÖÕÖ×ØÛØÚÚØÅyMJTVP`_VY^XSVQSMWKNCH@JGJA?DFJGLFKGPOJIRWaetw}¡©¤¡£¶ÆÎÔÛÞÜÚÔÐÅº¦}pbYPKF:>=FIOTX\ZSVNILKQ\aclm]U][]`]^d]VZX[aeghdW^b]\PPO?6:234&&%"!!! (4Gg§«¯¯²®¨¢|kD4=JRju¤¤ª¬«­±±°²±®°²³´´®°¨£^QpdRY\^8%$)1;4)-0.-.(,*-/HGH>5//44KJ9..2328E@;FB:7DB<4))%5341297450,2%%$'-MV]O_tp_¥xC?KUgb[i@64'&7/)+.476GA2-**38-/)+)&)&%(,*,+45<:CUUP\eipvvtwvvvyxuwiN6$&-DRijq~ ¡££¤§¦ª¨©©®¯²²¹¹¹º¿¿ÀÂÆÄÆÈÈËÌÎÐÍÏÐÒÐÒÓÒÔÓÔÔÔÖØÛ×ÙÚÙÍJFMYRc\^_b][UQXP^PPMMGJB;>BD?D=>?C?AB>AARVX\kvy{ª®°©§¬¼ÈÒÕÚÙÙÙÓÊÀ°ri]SNJ@:=<EKNUVRMMPNKTQWbgimm^VXU\Y][^\WZY_bfhfg`_\^WWKC;::77<))"'  "!'0Df©¦°±¶¯©¢|xF7:FRdv¢§ª«¬­¯°­±²°²´³·¶®¬©¦¡pKQy}cQQY[3&"0::/*/,3*(%*.2=X?<:5*)--PM761/+7AC;<F>AEB=293().6<*74752/$#*",3-);afYfz~q|hKqViVe}r\H0&#/*,.063;3+.(--10))(&%,)+'),((.36;:FWXV`gptwqruxuvwywulO5'#.3MVfnx¢¢£¢¤¥¨¨¦«ª±°²´··½º¼»ÀÁÁÇÈÇÄÈËÑÏÏÍÑÑÐÐÔÒÔÕÔÕÕÖ×ÙÙ×ÚÚÓ«WENYYd\`a^`W\]`VVRWKULMDKD?B?:=3:8623/53;AJOZehotw­¸º¹µ® £±¿ÉÒÔØÙÙÔÐÊ¾¯{j^SOF?=8:@WPPYXKIEIQLU\Wllohe`[]^Y[W[`WZ[X]dfejeab\ZXOD??98645**)()%+,)'0Fd¢¨¬²´µ®ª£nG<8J[bz¡£¥©©¯±±°®°®­¯³´²´³¯¬§dA_uu]RSQU7',.77('%'-+%**0:MS41;6.*.0HE50)05<FC:7KA6=:>96;5))1=*,9==98+(.5;8,#+Gki^nzris_e^OMcp\I.(.'+./35<2,-,)*50-)&&(')'&(*',+1<DEKXX[fekvosttxrxswws_C+$&/FX_hr¡££¥©¨¨¨«²±±±´·»»½»½ÀÅÈÈÉÊÈËËÎÌÌÐÐÑÒÒÒÔÕÔÔÖÖØÙÙÙÚÛ×ºjKSXX`\jcbb`]`^_[ZXSWWNIIH@@>385175)+322178@LQbbfv­½¾ÁÁ»¯¦¥²ÃÌÒÖÚÙØÔÍÃ¶¨o]YNK@<748EPMPURNMOMT\^ahjlijb\Z[WUZUUX[^]Zbefffcaa\\PK<9<7454311/.-,52653Nh¦«±µ³¯­§¢lK>;NXf|§ª«¬¯¯­®®­®°µµµµ°±¬¦¡eMZx~[FBFE0()4=1)'&+/,&+.8JF>8.4=5/./@@5-++/COE>29>597>73<94113-'(.7>=4*,18..$(+LcmlpwcujnqPX_8BmoUC)'('//6:1.*6/,2--(**-.*'"(*,*)+28ADPUZ^ikpqqvnwvswxsphG2+$+6N[er{¡¢¤£¢¤¨««­±°®³·¶º¹¼¼¼ÃÃÆÄÇÇËËÌÌÎÎÐÐÐÒÑÔÓÕÓÔÕ×ØØÙØØ×ËMPT]`_dfdefi_Yb[ZZXYSPNLFC??<;938.-..0,,,15:A[Wo¥¶ÂÄÁÁ¼³§ ¦¹ÄÍÒÖ×ØÖÓÌÀ°¡yjWMKC:99>=HOLSQLOJHMZ_bhdpkqhe^[[XUYUSY[]Zadbiibcb`XTLI;:<8220200/086<;597Kk¢©­³´µ´¯«§lN=<GZdv£¥ª­®°®°°°®¯±³º¶´°®­§¤`Y[{_D=;:1&&44).,..8++2@584;..8B9+24<A;/-,4AEA=7;===;7/);;B>10+'-&1<=8<.171+(%,+B[jgn¦xeqdX`LaYJb]MK,(&)+571*(+,/3=:::+-+1'%#*))''.;CJFSYahhqnxrsvvxxv{ukM6+''3BSdm}~  ¢¤§¤¦¨©°´¯®³³³¶¶¸»¿ÁÄÄÃÇÇÌÌÌÌÏÍÎÏÐÏÒÔÕÓÔÔÖ×ÙÙØØÙØÒ¦YNV[``dmihefdfea]^X\WQOLHHII?;:4/30&'+*#%+545B`z¯ÀÆÈÆÂº´©¡¡¨¼ÇÐÒÓÙÔÔÏÇ»¬iYQFIA99;IJINQWOOMIDKWYZ^dllfe^_XU[]QR\TUXY`eclehc]^TSJG9>=73325..9FCFDBAADSgy¡§¯²µ¶¶²°­hT=@JZhx¥¬ª®±®±­®©°³²¶¸³´°¬¦£\^WhF@<1=)+27%,'+'319>7.+121.6>-(+,07=7*)6FCF8>>8:86<?717A5.&(,##&/AG9')693...+%;\fg¥qtIXa^yt{oT?(%&5367/(&$0(**,+)'#%-&$&('.109FKELVZbjmptrsvvutyykV7+(+.=L^kt ¢¤¤¤¨¦«±²®±³¶·¸·»¼ÀÁÂÄÂÅÆÈËËÍÍÏÐÑÐÎÒÓÕÖÕÕÖ×ØØ×Ù×ØÔ·fQU\^dcjkegcfhfff^_[XWTQQQGKD<<7242-.%'!"$&.5@d¨¿ÅÊÊÊÂ½«¯ÁËÑÖÖØÖÓÌÁ·¢x`NE>:8>8BELLSSTQF@CIRYZfdpkkfa\XVVRSPZNP_Y`ajlgffd\\WQE::A659338::MPMLKIDGFUfz«±±¶··´²«sYD<NZjv ¦ª«±°²±¯®¬­¯°¸·²²­§¤¢y`gVkHB448&&2A,+4139DB522*+205;:,,1/-7E?1/:G>>5D>34;8<@043/+)'(3+%(-;I9/%6O9/./01&0QdqPPdr{lhP-(!&176*$(-+,)"')-*-'$'+%/),/3;JJFPV`dilssspwvvrvxoa>.*)*4L_dw¢¤§©¨­°³±­±´¹¹»¼¿ÀÀÃÅÆÆÄÈÉÍÌÌÐÏÑÑÏÑÓÒÔÒÕÓÕÖØÖÙ×ØÖÉSUY]`eijglphggf_cbY`]XXTSJRH@9=8.10*3$$$0&#)Cs´ÃÉÌÍÒÆ¹¡¢·ÅÌÓÕ×ØÓÑÈ¾«{\VKH5;;C:HELORNOJHBEJV\`npnib^ZXTOUSUTXPRW[cejomrgb_[UIEB>H:5445=IISVPTOTNMRXew§¬²·¸»µ°«ybICRThu ¥«­±¯²±¯®­¯±²¹¶·°­«¦knb^rHD27.%446,-6-GNH>/))-*.-3?<5-.643>>47>D;55@J86M6C>111..)/(32+'%+3;8-6[D4;300$#3Mhvwg[_yd>\wl+)++37,.3)1).(,(*)/%$$**1((,-;JPMKYXehqvqvuqt|vyutcJ4+,(,@Sbpy£¢¦¤§©°¬­¬±´¶²¸·»¾ÂÂÄÃÅÄÉÈËÉÎÎÏÐÑÒÓÐÐÔÓÔÕÖ×ÖÖØÙÛØÍWUWZ_dbglhikmhndde`cbZUVVOOOFI>760)-/,,%"#,Es»ÅÌÎÏÏÅ´­½ÇÏÒÔÖÔÑÌÁµaJJA?52><?GGOLMPPFDLLSY^gnqorZZQYQTQVOSURVX]efkoqjd`VXUIIFD@@<44<>YY\XWXPRWV\`py¦ª³¸·¹·­©wcJBIZhs¢¨«®³­®°±±¯²­·´¼´®­®§ nq\lj]K0-+%122065;AO660214(,/623;47--3<5/;EF:0:CG776<CB2-////.&.2*+-''5E73LK=4)/(+()<Hkwsiphb\Vn}u2)01440&,)+)-%&#+*%&$00/*-*-4EOMMNY`emrtuzttu}wsx_C//''+8KXny}}¡¤ ¥©ª©©¬ª°´¶±´¹»¾ÀÀÃÅÇÆÆÆÉÉÌËÌÍÏÒÑÒÏÐÓÔÔÕ×Õ×ÖØÙÙÔ¯eQR_^faekikiohndgca^_`ZZ]XVLGI@=E:/+/,)('%#)Dk¹ÆÍÎÎÍÁ¬¡°ÀÇÌÐÓÔÒÎÃ¶§pP==75<66@DHGLMMIHEHJQ[^fijtgc\VSPJRTTQRRTNT^fjlttff`YZUOIOME@==86<^^\]XTSY[UYgry¤©²µ··³³¦ jNCRWhv¤§«ª°¯°°°°¯¯²´ºº¸°¯¬¨¢p|`mz^SU.%&)21':B>8<9/7,,3--,5/2-4*4.7+684BFA14<CM8:C:@</.+0/.0),466,$"5LG3;N:420*10*CCCp|¢ª rZeTdsxt5-.4--)/+**+./*(-+($'&')+*1=IOGKOT`hrrvqwswuzyqg?-)(?.9PVdvy¡¢¡¦¬«©¨«­®°µ´¸»¾½¿ÀÁÂÆÅÇÆÉÌÍÍÍÐÎÐÐÒÏÐÓÔÔÔÖ×ÔØØÙÙØÃuOSUWahimlejjlkdgge^a]TY\VTMIPIC=;;4./',%(,+Ck³ÃÇÌÌÊ¿¬ª¶¿ÆÎÏÐÐÉÅ¼¥tXB5?65:A>IDJJLBCDFBKSXcejkmfa\\UURRKMQSMVWX[bitprnhfb_XQLHOGD==98:BXXY_\[Y[da[hwz¥ª²´··´®«¤pTKWaer¥¨¬°±³³°°®±°´¹º·³¯©¦ qpap||b\[8,+'&5+1=1.340,,23/01/0,2302012021D@8*.=HP;?H<=@B*+./)*+(1896,'':ND4F=7;4/+55C@CE\sdGXf~wJ1,36,1%.*)+**+).(#&'"#(0..06>LLMJQ\ggurso~uuwyvbJ*'#),MNYcty~~ ¡¤¦©§©¨¨©®®®±¶º¼¾¾ÂÀÄÈÆÄÈËËÌÌÐÐÎÍÎÒÐÔÒÔÔÕÔÔÖ××Ø×ÖÇMPTYb`hklilmklihbb^i]VY\ZUWPIRJBA?:/.(-*)*-Ip®¾ÄÉÌÈÀ³«®­ºÃÇÉËÌÊÀ¸¬uUF95544:=B?DOSC@EBELOSaagmmnjaXPPSMOKNNNOXX_agiptuda^_YTPSOSDB>8;;DBTTYYZUZ[c`dkz¥ª°¶¶·¶´®¥sYEQbeq£¨«®±²±²³²°°±¶·¹¶³®«§ flaq|u[UR=-+)242.+*-0156+--/+*763B?0412*,)-:00.8>BM;3A71<<;9+*/-1),5A?71#/<I:H@<;59A@@8=FN>EIcu]bvWKA2.24.*+)*'-,(,/1(###"$*,5-.3:DILPQRjijty}suqxtte>+%#",=KVeo{}~¡¢¡¤£¤£§§©«¯¯³¸¶¶¼»¿ÁÂÁÄÅÇÊÈÊÊÎÏÎÑÎÐÑÑÔÔÕ×ÕÔÒÕ×ÖØ×Ð¢aJPY^_fjfmkjmmpjkhbbYdZ_YUNPRPIG>E<53-,5188Fl¦¸ÂÇÊÉÄ»¼¹¹ºÄËÈÈÅÃµ¤wYA;774067;DEGNNEA@FMISX`jikib]XRMGLIINJJNSV]bbdkrpsib_]TSSVVQL>=;8;DAUU[][YZbaflq{¤¬­²¶··³®¤w]FQ`gs£¦«¬±°¯±µ®²°²´¹¸¶³±­ª¡cmet{uZXQ47,17,(,1.-30/,-0'2+-445@;3102/0/*/*.29GER:0:72=AGA-)/00$&59?E:$-09?IJ,610?CV9;@IT;:HrLhzwz>3/*001.23).65(*&2)''"!&'015-6<HIKSZV[gipq|yvxsun[>."#!+4OWekt~~¡ ¥£¦£§¦­¯±­³º¶¸¸¹½ÁÀ¿ÃÅÇËÈÌÌÎÍÏÑÎÑÑÐÐÔÔÕÕÑÏÒÕÙÚ×ÔµjMRW_`hjminmkkhdgaia^c^\^WRTWUMFGB>:733,/78Ic µÄÈËÉÆÅÂÀ¿¾ÂÆ¿Á¼®¥zYE=6224356AFLBK@?CDMNSZ\bjjl^cfSRKJKOQQLLQPUYbjkqrsgfhe[USPRSHF::>?=B?VV]YVbbbdlmu¦ª¯³´·¶³¯©w^GY\ft¦ª©¬±¯¯±³³°µ²¸¸¸µ³±¬§¥[Xo{xpZXI,,,,8/,*/.0+28.-1-0,1517@:-+92760.*+)1;;>C959.-EGQS50260*$.B;TJ7)--7GW23;/5Fg[7/ETYFLwFHdwj3*+.04-+(0*.6*)*/+,($""(+,246BOKGEU^chgnvyvsuuqX:+!$+1=L[bhsx|}{¡£ ¦¦§¢¢¤§©¯´®±³³¶·¸¿¾¾ÃÁÃÆÇÉËÌÎÏÏÎÎÑÔÒÓÕÓÒÕÓÐÕÖ×ØÙÓÇNPUYX\dfjnpqllhhfeaaa_[_WUVWPMLKKCBA>4:69>HZ ·ÂÈÊÉÈÉÈÁÃ¾»¾´±© viOD?136949?EDKE?AAGFVTb`afhfea]^VSKEOJJNRTQTY_hgkqtlh`^[_URQLODD=;<GHFFRRWY__`iilsw©­²³¶µ´²¬§yeJM`ft~§¦¨ª±±±¯±°²´³µ¸¸³²¯­« VNpvmXS?,&,?/*-39/0,3--.170,*1-4@;9/2,50/113-6M:<E70+34JPZV.(476(!);?XaG.+.5=]L,9/-?\mJ/7Ah]g~PBTexs?132.---1//21.)'*+)&***1,,/8:HJEMQ]fednqyywoqfN*)!&,1AKQdeqx}}z|~}¡£¤§¡¤¥©¬°­®°±³¶¹»¿¿ÀÀÂÅÅÈÈÊËÍÍÎÏÑÐÓÔÓÒÖÕÔÑÓØÖ×××Í`PTTZa]fehmkoihifj]]ae]a^Y`TSQKGTIHFBACKIKO_¶ÃÉÎÍÎÏÊÆÃ¸µ¯§¡t`UK;614486@?BJK=AAAALSW^amihif[XZNPNJRKLKQNQXealprsoge`]]bVYQICD?4?=CIFDHHV\bbkklsxz¨¯®²µ³°«¬¢{eJR_gt¦¤­®¯°¯²²²¶¶¶¹¸³³±­§ ZLz}wg\L3(('71004.,-03'3-;94*+8/5@70--44-)./2<BO?DS?*147PZVW1,./1,&#4HWnXC3/23Qb,/;79Wl_59Ddu~^7DRR\lgO;+.5,*/)/+*,1))*&($%0%/A02=JMPOOacfgakmvtqeW8'"' &4HW[ehksz~z{{¢¡£¢£¢§¨¦¬¨¨§¬¯­°¸¹¸½¾¿ÀÁÃÄÇÉÇËËÍÎÏÒÐÑÑÔÑÖÔÓÓÓÖÕÚØØÔ±jKTV\[_gcgjjkginfe`a[fcb[[\ZSOPNROIMKFMKJOWj¡¶ÇËÑÑÒÓÍÈ¿º° rZKHE;6565D?EEHHIBA;GLQRXbjlneed`TVMTJGKKLKOPZbnhosoojfe]Z]]YRNKKCA=ABHA<:DDQVbgqprrry¥¬®°±°¯¯­¢xbPR[iq¥¤©²«¯±¬²¯±´µ¹·¸·±«­¦¡cNwrk\P3)4(94).343-18*06@75,3058B70),/,4.-4F>QPBNK<,,8=KVWU=)(+65+$/SGXfP=688<mB*7J:BWVOBOVxv?9N/4Ebc?*1.+,.))003-**$)"##%+2/1:DEMKQXhbfmijkreO5&!-"+-;O^ceiotuw|x¡¢ ¤ ¤¨¥ªª¥§ª«¯¯´²¶¸¾½¿½¾ÄÇÅÅÊÉÍÎÏÑÎÑÑÐÒÓÔÕÔÒÒ×Ù××ØÔÂ{MMVY`f_cdhhkfeeldg^\\bh__bb_RTQSMNKTNVPOW\s´ÅÍÓÕÓÓÌÅ»«¤|b]TL=@7535@?CLPJGEDADIQVZafijleh`ZSJIKGIINQLV[Zbhknuqmdgb^XbZXPOIC:=CGEB=6<>>P_\fqrtpts¦ª«³°°¯¯«¢ulPQ_hr£¦®°­®­¯±±²³³¶¶¸¶°°ª¦ kKi~vugQ+++-31*/=:.,?5,-9@50)52058<611/&+-0)6DZS<_^<2/?:ERU\S:*-*-.+*CZNGSG?:F2\a1.DD93QOLEQ\jLX:$2LhF+4/(4.*,54-()'$*&"$#)'*/7EJMPU[denedgTN9*# '+:IT^eejoruuz~z¢£¢  ¦¦«ª¥¨¦ª¯¯³²µ¹¹»½¾ÀÃÅÄÆÉÉÉÍÌËÌÑÒÒÓÓÔÕÔÔÔÖÙØÖ×ÕÊQTOZZ__fgbljeefjhcadbde]c`aXWRWUPVTZXZURR]u¢µÃÎÓÕÒÑÊÁ° p\TLIC>;7;:6IECJLK;DBDLVVWecoiigd][SOJGGAJLOLNW]]^lossqkegh]V\`WJSG9:@=GMLE@877PX]epmrqsouw¡§¨¬±°­®©£viZ[]in©©­¬­¯±±°´°´·¶º´³°­¨ mEaxkkgK+&%+1&*-2:18>?*(9B99.108E9G?5+&',+4)2ERD@yT;3,@>Yb\YUI-'/'0+,AaX@0AD34,EvQ+:AM1/[RIAXjH[H%4GX[3'(#%%,,03.&&&$/'$$%(),9?PQTR^ad_^ZL<,/-%-/-?HTaejhnsuwvx}{|z~   ¢¡¤§§¥¦ª©«±°¬³µ·¹º¾¾»ÁÀÄÅÆÊÈÎÌÍÍÐÒÑÒÔÓÔÓÓÕÔÙÕØØÕÎ YMRUb_bddedgbghmnag`__b\bbaZYXUTX\]V^\X[XZw ³ÄÎÒÒÐÊÂµ¤}iUPD@?<A;59?>I?NFIFB@LFPZ\dhhlhe``YbSIGEGDDCRPT[\\impqrmjdhfg^[]PHHA5@C?EHEK?966LT]hooqrkinw¤¬®®±¯®ª£vcTX`gm¡¦©­¬²°²°²±³³¶¶¶´´°­¨¥oCVulj`>,&%)0).,/=.,>:.2:C9.+2.0*DLGC30'-3/-5OQB<a?0+7<MUcUSZ>&*3.6-/\^G*,71./Kyv=1>CB8YNUCG`GNG(9IBR9')&!(-00-(%+$$-/&,(),6FHOPWR\YQC:8I*&-'#1;CT]_dcimpvwwvx}||~{¢§©ª§­­©°¯­²µ¹´»º¼¿ÃÁÃÆÇÈÈÈÎÍÎÏÓÐÓÕÕÖÕÔÓÖØÖÖ×ÕÑ³gINSX``]agbdfbgdggeb^ic`cfddUWWW[Wb[]`^[WZq±ÂÈÍÌÉÁ¹©zaZNMJL?AD:;AIILSMINJEIEXTagkkmphhe[XXIJF>BI>DLSV\]_kqqpjpmfeb`\\RKH?79>JEEFGD:5//BRU]fhdffdfu~¡¥­°³³²¬¦xfYWajq}¤ª­°°±²²³´´´µ··³¯¯ª¥£uOTnglZ3+*(+.801=41265'3;F69+*0/32LGF5.,/22*;TT@=~_:0.9@VXi_P_K,(-73,)FmV<!#*659`['3B6*ILRZNlymWD6>Q3EA0+*%06/1)$)+-(.32+*149BCHPQE:720,2&%,-5:IST[bfbhmqu{z}x{}|~ ¡¡¤¥¨¨«©¬®­¯®±´¶·¸º¾ÁÀÁÃÆÈÇÇÌÏÌÏÎÏÐÑÓÓÓÒÑÒÔÖ××ÖÕÖÀRNQSZc`eedealfgigcccgfbfd`b\^a_babgd\]Z]bn«¹ÄÆÆÂ¸©aWRGPULHFE>FLIEKLKGJBKLPV\blrmosh__QNKNLF?>@<HLQ\a_elpopnlihfba`XNDB7@>IDCCKF@>9**<GOX^Xc]abhr¡¨®³´³²¯¨iXU^bq ¥¨­°°±²´²¶´²¶¶º³°®ªª£z]Sb^_Z3(+-'(+5/39/9:,)-ID<4/-50/.MQ6)-0/5--2JU;;a?)'8DVOliOj]?/(.0+*4]eS&%+<A1DA.K,58OGkfls¤{V)1C'4S.$#",)-+((->(',+*,014783564/+&)'&'),2EONW^^`ekkmrtux{{{{z|¢¢  ¦§¨«§®¯­¯­²²²·¹»¼½¿ÁÁÄÈÈÇÊÊÌÍÏÏÒÐÏÓÔÓÒÓÖ×ÕÖÒÕÕÌVMTYZY[`bcdfdkkkkgdejejicfb_\efdggnhefb^\k| ®²¸µ²§}_UTS\T]OOCFKMOLNMKMJHFLJ[^]gitoik`ZZLPORPHE@B<JNWadhinypooniggbb_WPAB<=CMJB?A@<;7--7CIPU^XY`_lvz¡ª®±²²®ª¤mZV^hp~ ¦¨«²±±²²²¸³¶µº¹µ´°©¨¨`NKX]K+)03/+30-772::2&/?A?;0,342-OY6%,52/11AGG2BsR5, 1ISQjzegjYC6-3/.+LoY+()4@C0Xn0AD55BGcroqn©hB.800I."+'(/?-*4-/--'30/00010.'.-4&%(,8>DPQYbhhlmnlpsvy}y{y|}||~|~¡£¡¦ª§¬±°²¯±µ³´ºº¼¹¿Â¿ÀÅÇÇËÉÌÊÐÏÓÍÎÔÔÓÓÔÓÕØÔÖÖÓÑ¬`MQTXZZ`_b^d`jflhicghidebd^^bagdljiklididjs££¥ p^YOSGRNLDOIMKLKHQQNIHEIRTYbghprrbbZWTQGIMF?@@CFOS^ekilvvqsvphege[VPEA@@C;DE=BD=18.++6B?INU]VdZio| «¬°¯²¯«¦taY_fn£§«¯±°±´¶´µ´µ·¹¹µ°°©¦eDHWL7*133(&*...31-4:87E?H3/3115/Od5)&234,97DD4IlL=(%2McThwet_I7;B6/.7igA&E!,A95uM2W52<S_xopj }e>:#,D5"!,.-+%&34/3-+1,,,+$++)(()'59:ADLUMU]_Yanosvy{~~}~}¡ ¢¤¤¤¨¨¬¯°±°±²¶µ¸¹ºº¿À¿ÂÄÆÇÊÇÌÌËÎÐÑÓÓÔÓÔÓÖÔ×××ÖÔÑºpHOSXTY[[c`a`cfnjnfjkkjieeehbjhhklpnnlejhfowgYTTOGJJKOKMPTQUOKMJGGNPNR`^ekiood[ZWFKEEDEA<@AHN_fgrkprtxvprgdbh[SHHDAB=;?@B@C890/++25<CWP\Y]\`nz¨¨¯¯¯¯©§xiZ_jp{¢§¬®®±²´µ¶µµ¹»·¸µ°ª«£j=?NK4('1,0++/&1/7.9/.7?;</694962Qh1+-53-14/==6ZoJ6/(47]aisuclfJ4,/)4C-ao`/#,"(L4@x@LL:=ITmyyb|o`K42I')*(*(-')*1-39)(+2(%$&')847?KLMRUUY]\decipquvywy||y{|~|~ ¡¡£¤©§©¨­±±±±³º·º¹º»¾½¿ÂÂÆÅÅÉÌÌÎÏÏÐÕÒÓÕÒÓÕÖÖÕ×ØØÖÄKLQRSUYb`bfdddjgiinqlhecafeflnkttorlnijnkos{}~xoeWUUPNPROMUTSVZYOSPQMAFISXadnfgjgf^ZPOJBCAI9<;BEQSchemprwrrrqmcdf`ZSIIG:CA=7:<>7680,222:>9CSYRXYYis|¥§­®®¬«¤yt\clrw¥­°­°²µ²µ²³´·¶ºº¶®¦¥¤¢n>?ML-#-7).%+2-33,/1-98<>=4@-.C62Rj>',86.34CEH;`kB4%+/3]^hnuldjL5,'!1Z@So}J #,=O3Krf8AN44OvidIe}mlf8(:)*-2.0**,+)*#&*%)%&..20;>=>GQRT[\WW^cillwrux|{w{yzy{|~~{~~ ¤©¤¤¦¦«­¯±°¶¸µ¹º¾º¾¼ÀÁÄÂÅÆÈÉÉÌÍËÎÏÑÔÕÔÓÒÔÔÔÖÕ×ÖÍYFWQVU^\Ybbafdijmgmknpiihiecqoqtxpppnlqrnmporvqmhc]ZSTXTQUSU^[VUPUUOMBJFNTW]dbhkq[eRPIMGFBF=B=@@LQ\ijinmoqwztvqjli\XNHDEB>>?9=A<3542.//855:BHOPWTXct}¡¤­®¯¬ª¤wma`iu|¦©ª¯±¯²´²µµ³´´·¶³®§©¡¡m=9FQ-*/3*3-7JF0++)826?ED:8=78@>1JwO+&/2*20<<FI[]94&*+6IYfbk}nyc3'-$-N_Hil0$&0QT?Z|\.ON1Hzy_zw>5`uiqK39.-,58:=A99/')('%+')2:<@JDKSNXTVYc_^fnsrqux}{zxxxz}y~|~}|~§¤ ¥©¤ª¬­±°´·´¸º»º½¼»Á¿ÂÄÅÉÊÇÉËÏÍÍÒ×ÕÓÓÓÓÓ×ÔØÕÕÐ®fGRNOR\Y[c__`edmmiqompkdikknjxpstswoxqornmippnohe`YVWYZ^ZW[ca^U\ZWOFJFNMOW]_hmka`[XaSOGNILE;BA;IO[dlgrojruysomhme`[TNKJ@?<<:<;=@653?711985.@BLSVWSctx¤¨­°²±®§ycckry¢¨¬®®µ³³µµ´µ³·¸¶³¯ª¦¤i?>OE2190-*,98546)*.17@CHJ8@48@<+>l[5$8-(//8>T\^S7.,+'5I]pZJ||wh2$.#1X[_uM)&;9XI9wy:1UL:dxbz}b8?opaV55-,+,-1))(% )%#,+599AEHKMTWXW^`edbilotsxtvxvxzx{z}|~}}|~|} ¡¤¦¨«§©°¯¯°±¶³¸»½½½¼¾¿ÃÄÆÈÅÇÌÌÌÍÏÑÔÒÓÒÒÔÓ×Õ×ÔÓÔ¼|NNKSVQT\\abbdflkmhrmnojhnlsrustsqtorstwplhmffgfb_`[Z[Ya`a_fa`[VUXNNMQPPVY^ffffbfTO[NNUKJI@BA>=OT\fhlmuvwy|qpjhgdbSREJFA;88=>A<9787:/:::7:9<?INPQQVmu¥«±µ´³¯ª¢{rfcmo{¤§®¯­³´´²¶´·¶¹¸´³­«§¥^C;IG7518/:&.3.0:#'/31:D85;K11<569Pc=,3.+4029J`kB*1-'(.>dqZ=k}{vN+&(#Emile9"&<MITt`.4ECGqgoyfKRhP\C2%&$*(N7#&$&,-*,35795BFNTU[XXefmmkknurtvy{x{||zz}{~|{z~~~| ¡¡¥§¥£¨¨®ª¬¬°´²µ¶¶¼º½½¼ÁÄÃÂÄÈÊÍËÎÏÐÔÓÓÒÔÕÓÒÕ×ÕÖÕÆRIHMZX][^db^dgflomrokmlooptqytvvrsnrslptpmkghge^\]^Z\behgedh_WV\TOJTSPSV^bljb_]XQTKLNIRKM>JGCDR\bfztou{wunkjhd`]TEGB>=><;6>;682393322B:???=CLMOLZmv¦®³º¾»º³©zm`kn~ ¥«®°´²±´³´±¸¹»¹µ´²«¦¢tYF;EG;JD0/*'26)-6/+5849C>84::===23@dP11-'-).=Dea7/(.*&1Cdoi=Jv{h5!''$1dmdmD-# )=bUtvG"0BHfqjvxrhTLCHF)'$%+%6-)('-0;,..589:CNOVU[bakqppnoopopvux{{{||}~|}}££¦£§©¥©©­­±³°±±¶¹»¼¼¼¿ÃÄÄÂÅÇÊËÉÏÏÔÓÑÑÑÑÐÓ×ÕÕ×ÔÌVEIQRY[\\bcdfhhpnokjmsouqssuuyy{xtqttqqumjjekgegdbaa^gjmjjgcb^XVRMQTTVU^acdaUOVORKDDKKMDQJHLBNTYbiqsqvzyyukjom`]SMEH;:9<6@86241835--559:C@:;@>CGJSfsª·¼ÂÃÀÁ½¶¬uhaju|¤ª¬°²³²³º´´¸¹¶¸º³´¯¦tME9-@I?=46*1/54,30.+;80;A785564@E:05Z`7/+./%(AInd3/#%)()<`pq?6izN0*).0DhdvPG);WY`f2$+>JeirpkTOD@5H,),0$-/.*-20+/55/36@DKRY\^e_koqpuurrxtuxwyz|||{~|~~} ¡£¢£¦¤§©­©©°³²´´³µ·¼¹º¼¿ÂÅÃÃÆÇËËËÎÏÒÓÒÑÑÎÑÓÔÕÓÔÒÎ®`DCIQRXX^cbdhhiklpppqnnvtzwwrs{xsuorqwmoolfjhhbhda`ebjhoqmkk`a[VSKKPQV]^]ce]SNKOGFIEKGJIIHAJNQYafnwss{swwpjggc]YSJ@D8<6<;695146/+0/6338:994=A::ECGfu¢±ÁÃÈÈÈÅÄÂ¸£}igpu¤©±¯±²´°¶µ´»·¹¼¹µ²«ZC>15:=7-;;0,7>:,-/,/935?C468947=C=20MeT1(,05'=V}n;C&41-(9gjwB/Se:72('PqcwwFL<!%"/CRJ~V+$)5VR^jxjA1-&=4',3((2&53*-.131.9<MQS[]dcemmmpssvsrqtvuwz|~}||}|z}{~ £¢£¤§¦§§ª¨¯°±¶³µ¶´º»º¼¸½ÁÂÇÆÇÇÉÊÈÎÎÎÑÐÑÑÑÒÐÒÕÖÔÔÑ½wFBLUPUa]]fhjijhnomnmrr}uzxvtyytpuuupvqppokokggdbbbdlpppqijd]\[YSUP\[Zbfab][VUKLDA?IGKEBPBGNMWdjpqwru¤svuqibaU[VSFE>?<6::9A85788275311485417D=@A?H_xªºÅÈÎËÉÉÆÆ¼°hczqz¦¨°°±²³´·±µ¶º¸¹¹µ±¥wgQJ96??7031.&*:5-(7-,427DA:228<=;?=/+@Vi8))+)+=jnC1#//03FtlxC3?v|T>6),GUddNHN0  #<U@QzL2"-<IQ]s}h?,)7D.)%'.7/88/022612=KLT[^gbhjsosqttyrqrusvvv|}|}|}~|{¢¢£¤¨¦¬¨­©­¯±¯µ³³µ¶·º»º¾ÀÁÃÇÈÈÉÊÊÊÎÏÎÏÐÑÏÐÏÍÍ×ØÔÓÄJ@QTQYSQahgelkiqgjlprpsyuwzz|srtsrqrsttnopqkgikfdgioqxtwnifabXUUS[bba_dabVYOPC@GEJGFIFDaDJVRagmsvyzz{vrommca[WQJAB=<6893:>1373728A@//8>=317<?<=IJh{­¿ÉÈËËÊÇÈÇÀ·«ofos¤¦¬±³³´²¸²´·¸¹¸¹µ¯©rg\?;876,39>1+41..+/,6/6<<4;8489HA>249FhL%%*-0FscB0)134)>tg|J>@el=1*$$8PgtY,LA# $/UPAle8$):VCNh{n`M*4S1%,+($)0027068=JNXW_^fgfkprqtuswtusssuyx|}x}}}}y}{|~|££¤££¥§®©¨«°²²µ¶²²¶¸¼¹¹º¾ÃÅÈÇÅÇÌÈÌÌÍÎÎÏÑÑÑÏÓÐÖÕÕÓÊ¡TLLPPUWU[ZUUZenmjfliswxz{v{zvttwtvosrsrtkskkkikgmnqurutqpiic]]XVW]a_`cedeVURNDCICCOAAGJFGP_Yfimuz{zzvwnklh^[ZNOFI9@4:8?:9736<897:FQ116770/46:;>=Gi|·ÃÅÈÌÌËÉÈÇÄ·«shsp|¤§­¯±®¯¯¶´³´²·´´¯²¯§tmMD=41'1=N8):03(04*@B646;4>>?B:AM8(24Z_%&/,-QVE0*13.(Fsj@AIRuM+*'&,>`le-<L8&'*MNDGk~W+*;X:UbrRQ_[IW0+0 #&%)'/419=EFOWV[Zefllllmqpruwvzuwwqv|y{}~{{z|||}~¤¢¦£©¨ª«¦©¬­²¯°·±²·º¸¼½º¾ÂÅÆÄÅÊÉÉÌÎÍÍÌÏÑÐÑÒÓÔÕÕÔÔÒ¯f?HNSQYc`^dcdhiekinpryvwv|vv{wvyvyqrttrtmsijnlnooxwzyxtqpkhaa``\`_`cbdZ_`ZONNOIGJKKKWLELPRXfrqsy|z|{vtljndY[UHM;>:8903=B>551-1>;CK\00415825:A7::IhÀÃÅÇÊËÊÌÉÇÂº²¥{ers¢§¬±¯¯³°¶³²²¸µ¶³±´ª¨{vVG96./-9A007?1..?0QA:<68765A>;?>B(/1Tp<(1')SP>3+/*0,Sup}8@VJhS.)%)*1RduK+;L='':PVBGmo:#2_HFWyi>_soc*#%"$)*,24<DGOOVV_ejnhlooqmlquww{tvwrzzy~}{}}}||~~~¡¢¥¦¥£ª¨¥¥¨®®±±¯³²³¶·º»¿»¼ÁÀÅÃÄÎÈÌËÌÌÍÍÎÑÑÒÒÓÓÑÕÔÖÓ¾~BGJPPY[ljgeakg_dnqjuyqwyyxvxxvzvtsrsqumqnkoppqqvuz{{zwsmie^]Z```hgca`SZ[SNRSTKJNP\IHFRUSYdknxz||}|vtfjl^]TQJF:>37314799:K83<GFGMV//6416427;66;GjÂÄÅÇÊËÍÈÊÂÁºµ©~gnv} ¦­²±¯±­±µ°³´´¸µ´°¤¨q]?;44++7<'&174,,C/1?B>5<7B9?MAFGP2.+BjG73-.agMK;*2/88Zus|/:WJO]p>,+3'-Ueyg.->O8*2MZFFOaW,-HN;Wv|UdnxP1%##"%(,-2=?HNQ\\Wbbijfekkwpmrxvuxsx|uvyz{|~|}~|~ ¡¡¤¦¥¦§¥¥¦§¬ª±°®­³³·¸»º¹º¾¿ÀÃÅÆÈÄÉÇÍÏÎÎÏÑÐÑÑÑÒÒÔÒÔÒÆLNQEUUXUYkcff`dighpvswxxtuuy~vzw~wrwutslqqurotxy}~wvpkia]^`]^bggbZ[USXRYVWMXUINNELMNPXbhpvz}~y|uuhkhcWWQQ?<841/,.22483E:<GMQQZ]00846518>36:?FhÃÃÅÇÅÈÌÊÇÅÁ½·ªhlu}¢¢¨®°²±±°²´±µ´·³·²­®¤y}e]34111+/8+)5;4)J623<;-:A6@;KWETBQA989AKG7)3fYJK6.039?Piiy%2^MRD^1*%/8VzcO3-HF77:\[=@?X4'5LNQo|GS_vvP/!'$%+*07:>HNPYV[_aeejkiputstrx}vwxyuxxv{z}~{|~~|¡¡ ¤¤¥¢£¢§¨¨«±±¬®³±¸¹»¹·½¼¿ÁÂÄÃÇÈÉÈÉÍÍÍÍÒÐÐÓÒÒÓÓÓÔÓÌ ]DOMPQUSVY^bhbcigjqspsvzuyv{{|{tzstusptvwwxsu{~}yuqjg]][\X__c]VYVWMOVOS[UNWPKRIKNXZ^httz}{tomi`^XOIE@;A6++.:6679BA9BJM`ZX^55//55167<258?`xÀÂÂÂÉÇÈÈÆÂÂ¼´®hrtx¡¨®²±¯±²µ¶±³µ´·»²ª¯wigVV43870)4+-+27;/*79<9B59G:?=MSHXHNF006=AP<0;L<E=.34=>Lnqy)*U]IGpsB+"0:Pd}d4232CF8M^Z@A<>(35MKQhP>P]|_/#)*'.<?EJJMNYZ^]ioehknvrqvnzvwyzxx~z}z{}|{~~~ ¡¥¡¤¢¡£¡¦©®©®®ª¯±·´»½¹º¾½ÀÂÃÂÅÅÈÉÉÊÍÎÌËÏÏÐÓÑÎÕÔÓÓÔÒ²iHHMUUV\[\Xbc_`fgjjpqusspuwy~~|z}qvusovxxu|{}|}vsoffd[^eY_^cZWQUMSKKTTVVRSQSMKRZWannuv~|~{vmmg^TQQA97058.45145:37?CMSYZ]^Y--11411396837CVwÀÄÃÅÅÈÇÈÄÂ¿¹³¬dmo}¡ª«³°°±±±´³²´¶¶¶´¯«sc`VN37;B-&+$',9?9/+:H;2M;8C5C>LN@\FKN3-65>TD3M@1E=/1D>8Qvuv*)J]JJLgze=(+9Mw{i80&#'9;MYVJ<5E,))77<_\JMWf\12606GHNO^SSY\[ailmmpqtxuwrvxy|vy|zx~z||}}}~} ¡¨¤¢¤¦¥¥¨¨§«¯­­±²´¶¸¹¹À½¾ÂÀÁÆÅÄÉÌÈÌÌËÌÏÎÒÐÐÌÔÓÔ×ÖÕÀ{UKPSVZ\\`ZV_U\dknhussrkux~~~x}y{xwywyyv}{utqg^[b\^ZU\WQPJRPKNYUXUVXVQSRMLVf^iov~}}yne_VPMG;8706,3040458<=FJQX]dfa`**1.6.10<4,57?Qo¿ÁÄÄÈÈÆÆÅÁ½¸³§hmw ¡©ª²±µ²µ´³¶µ¶µ·µ³¯®¢xIWZ?/8F=0%-)*.>A<((5M14@8DF7@?MG<LFJU8665<UVEi¤v<.;H8&G>4Hvsr+"=ZJSEN]wY:7-G|db2&.*&2==[CRJ?CA-(3+8SnE9KOklcrY783=OQQNTXRXZdcjhinpptrtwuswz}yz}||~{~z{~|{~~}}¢ ¢¢¦§¨¥¤£¨§©©¬­¬­®´´·¶º¾½ÀÀÁÂÂÃÂÈÇÈËÊÌËÍÎÒÓÓÐÑÔÓÔÕÔÄe[_]RXY]^[UW[daeokgnmvpu{~~|w|yy{yxx~||sqic_[ZbYWQWQLOHJKOW\^_UYYSUQUNT[^eisu}|wuh_XNNF?9514--0-/4-45:FEOP\achdb++635.13:3-144Nl¸ÃÄÄÈÅÆÇÂÁ¿¶±whnw¤¢§°­µ´³´µ²¶´¶¶·°²®£~M^^D84G0+&+&'6=E;!%6H*.JF>U8A?IF8EHDT@859HgaF [945LC%2:9Hqqp1'/QMJCG?vv\:0>}]U-$141'01DAORC@F.'643It`-(>^eIQyY99JSPRQS^YZZ^edkjlnmpppyvyv|xxw~{}z|}|}|}~}~~£££¥§¥¢¥£¨©©¨«¬®¯­³¸¸¸¸ºÀ¿¿ÀÃÂÂÁÄÇÇÊÉÊÌÍÏÏÑÑÏÐÔÓÒÔÓÌuloe^^X][[Y\a^abkgjiex|~~y~}}~x|{wvkd^U\ZYTRNGMIGMEPVYZZ\Y[ZSVRPSY`]fpv}z{{wqe_TJ>;::922+))1-35:CHKR^[aidgil++635.13:3-144Nl¸ÃÄÄÈÅÆÇÂÁ¿¶±whnw¤¢§°­µ´³´µ²¶´¶¶·°²®£~M^^D84G0+&+&'6=E;!%6H*.JF>U8A?IF8EHDT@859HgaF [945LC%2:9Hqqp1'/QMJCG?vv\:0>}]U-$141'01DAORC@F.'643It`-(>^eIQyY99JSPRQS^YZZ^edkjlnmpppyvyv|xxw~{}z|}|}|}~}~~£££¥§¥¢¥£¨©©¨«¬®¯­³¸¸¸¸ºÀ¿¿ÀÃÂÂÁÄÇÇÊÉÊÌÍÏÏÑÑÏÐÔÓÒÔÓÌuloe^^X][[Y\a^abkgjiex|~~y~}}~x|{wvkd^U\ZYTRNGMIGMEPVYZZ\Y[ZSVRPSY`]fpv}z{{wqe_TJ>;::922+))1-35:CHKR^[aidgil
diff --git a/examples/src/simpleTexture/data/ref_rotated.pgm b/examples/src/simpleTexture/data/ref_rotated.pgm
deleted file mode 100644
--- a/examples/src/simpleTexture/data/ref_rotated.pgm
+++ /dev/null
@@ -1,5 +0,0 @@
-P5
-512
-512
-255
-_riuV3#(.,%*/L²oRÁ¯Y**-,8LB515?B13>I[M6>C5436311++-6CJOUX]lotvyx{|{{{{scD62BRYbstux   ¡   ¡£¢  ¡¢¡¡£°·ÃÊÓØÚÝßÚÒºE-(-1-*)*+().23565441313.+),17452-*41//<>;;=FKJNQXiw ¢£¤¤¤¤ rTUTRW]\\[[]\XZZ[][XUVUTTVUSXcgoy £¦§ª¥¥¦§¨©¨§§££¦¦¥¢xtpd[RLKLKJNSW^iaYZ\]`]]`^^_^ba`aa`Tlw{~[<*(,)*.C´yoµ¢[)/B72AE:2/5=72MgZB5@C85650-,)+/4:HOSV\gntuwxy}}z|yubH31CRYcq|{gmrtw{ ¡ ¡¢¢¡ ¡¡  ¢¡   £¡ £­¸ËÒÓØÚ×Êªj1,+-1.,+-'(+15133322230-.0),02760-+++-258::@FIMOS_n{ ££¤¥¤¥£¡TTTTV\\]b[YXY]\[\YVTTTTSSUQR\cmu| ¤§©¨¥¨§¥ª©©¦¥¥¦¨§§£ }wqh`]MNMNNRTWWY[YZ\^_]]bcc`cbcb`a_U`}¤xeM5-0,4C©£i;)1N<*@G<416DRIhubTKNOA<80./*+006=HPST[fmsttuz|{zyyubG,/CPYcr}gffipsux  ¤¡¡¤¢¡¢ £¡¡    ¢³ÁËÑÖÑ½U2*).((,+'&)/26033360550,++-+16:2..+)-.:::9?D?FNOWfs}¢£¥¤£¤£¤ ¢wUXYV[Z\]]\Y\`[[YWWTYYUSQUVVYclrx~¡£¤¦§¨§¦¦¨¦¦¥¦ª©¨¦¤¤{umd]SONMNOOQSTUYY[^]\__deacbcefccWPg~¨nnz_IGMSe®§fP<&%4W;,8IIA>Ji{qkylojR@=302.,-17@ISUZaimoqtuwvz}}{{u`?-/?TZcq{tphffgmrtwz~ ¢¢   ¢£ ¡¡ ¡­¿ÈÎÇ«zD1*-/)&+0*')/0113217552/*),214675,-',0-.9=9<CEJLOZkv£¥¥¢¤¤££¢][ZXYZZ\\]\ZYXUVZ[V\^XTSTSSX^fmvy  ¢¤¥§¨©¥¨¨©¨¨¨¨§©¥¦¢yqh_YNNKKNKMOTWYZ[__aa`aaccbaeeceZRUjq¨snuiqr¤¢i<%( &CZ6-:Zdaco¢ xUXdhcx\FA930.3+/4<EMR\almqtuuvy|~}}{uaG,):O_ho|wpprlgffiooux{|  ¢£¡¢¢¡¥¡  ¢    ­½Ä»`8/-.+-*-*))(+0251/2424./-*+/25942,,.//--458>?CNIO[m{¢£¥¥¢¥¥£¥££YXX]ZY[Y[[WYYTUWY\\[WVUVUSX\birty ¥¤¥©¨§¥§¦¥§£¥¨§¥¥¦¥¡}tkb^WQLLJJNOQTWYWY]]____cbddedadZUJVl~ozzgHWz¢T1%$$/QqIE`y|}wv|~L:>C?<HH<:@3.',-.29?GNU]iopouutw{{|yxs\B-+5G_ip|~uspppqhfffilsuywx}¡£¢¢¢¤¤£££¡   ®´¥S3/.+&*,.*.().14851/420/0,$+0249300,+/320105:>>DIQ_m £¦§¢¤¤£¤¥¢ c[Z[ZW\X\[YWWVVZZZYYY[ZWZWWX]fooy} ¤¤¦§¦¤¤¨§¨§¥¥¨¦¨¨¨©¥zqgb[SNKJMLOOSVYXZ_[`__`bdfgedccWUNRaxzp_QeyBJª§Y>86AIlvr}aELUUK5;<;428:5=70)**-09@HNP[hloqsstyx||vws[=+(/E^ip}ywutqpprmhhgedoppruw|~ ¡£££¢¢¡¡¡¤¥¢ ¢ ¡¡nI3-+)+*''*2/-/-6665630/1.*&*278;411.-1550215979?EN_p¥¦¤£¢£¢¤¢ ]\b^ZZYZY[U\XWWXYXZ\\XWYYWUXahkr{ £§¦¥¥¥§§¦©¨§§§¨¨«¬§¢tli`XRKKMKOOOVW\[^^`^^a\cadgd_bTZNR]k~}lu[>7fmjº¯vjrurytwiY@66AD=2:;8-1320575,.*,19AKJN\fkorvvtutwywyv`<+(3IVfo~xwyyvusqpoohghfdhiknqtvz}¢¡££¢£¢¡¦¤¡      eC/,,+.+(&(/3.11234787341+)')0::842-/0/200475<<9;BJ^o¡£££¡¢¡¡¢¡ hZ\]`ZZWW[YXVUWZY\]^^[UY[WWZ^gko| ¤¤¦¦¥¦¥¨«ª§¨©©©«ª¨¥¡xrlfYTPLIHJMQTUZ\\_^\[`bbcba_^bWZQOUdnzwhWUf¨º²¢¥¥]GAPGE9436J>0;855222022110.0,6=GLRYcloqsussttuwuoZ9%(0IYer}{{ywxywutrtnmjhjiegefhkkpxx ¡  ¡¢¢¢ ¡¡¢¡     ]>.,*,01,%*20//3344005541--)+4;:;41..3631009B@?=<DM`s¡¡¡¡¡¢   _\`\W[ZY[YWUXYY[]^^`]YYYUPY\chpw}¢¢£¥¦§§¦¨©©ª©ªª««§ª¦¤¡}vqi^VSQHKJNRTTVYZ]]__^`abcccabSYQHO`q{w¤°¦¬©x[sV0&(9CB:1,0BB;>:35023/0+)0.+.24<FIQYdmqpqtuttuvuunV8&(4KZev}{z{zxwyyvsrqoqnmnkkjhgkggjpuwx¢¡££¢¢ ¡£¡     ^;,,).,++)*6--.3655417652-++*56883./13132249?<:<>AN_v ¡¡£  ¢¡nZ\Z[YV[\YWX[\\^]\^_^Z\ZVUXZ^cmuy| ¡¢¤¥¥¥¦¨©ª­ªªªª««¬«©¦{rrc[TMJHKPPOSXYZ]`ab]_cfgaccbKPMB@Vct{fB6PD$ &7@FC:5-5F:B?62.54./-.0-1..0<EHPZgnrtvuutvvvvvmN0%&1HZhv~~yz{ywxyvstqqpmnmjjkjihedgloqvy{ ¢¡¡¢¡¢¡¢¡|^8/+**+.*+(,./11356653442/-++2583/-/0001158::7;=BGTfy¢£¡¡  YWWXXWXXWY]]\Z[]d__][]^^\\``agos{¢¤¤¤¥¦§©©ª¬¬«ª­¬¬«¨§¤{trj_WPNLKKNRV\[\^^__]_gdhc`cfQIOH7BM`~a^N94(.L<"!4CC=;=*2@;<C74.2323,+..4227=EGNXcnsuxyytswxwtkK0&'3EYjw~~}{z{{y{|xutsqponlmmkkmjffgiknrtx ¡ ¡ ¡¡¡¡¡yW90.,*/,)*+*,15687<56451--/+/67<?6-+,324695479>@?FZp} ¡¤¢¢ rUWYXZXXYZ\[Y[][^aa_\a^ba`]\aempy¡ ££¥¥©©©««¬««°¯¯¬ª¨¢ztog]VQLLKORTYXZ^]]_ba_``ceba\WSPA9>J|qLXm|~zqtj^I.&),,I;$#'2B>62/)*;<<?82/10.-+()*15:<ADJPVcsqtvyytuywuhK1('5FZlz}|~~}~yyxzzzywsrqprrlmmnmnljhhgfhlptx| ¦¡¡¡ ¡  tO9//-).-,*(*.555<2/47621.,.*/7:>@7+*054568147:9:;I\u¡¡   [_YXZWYYYZY[]]\]b`a_`^bca__]`hms~¤¥¥¥§©ª«¬¬©««¬«­¬©¦¡wqk`YOLKMNPRVXX^__^]b^a`bcaaZNNE@8=LiaHCN\ibL??9Xe;''+-E?%)*4>?=12/,:;57/1.142-)&,*/4;ACFHRYckpuuxxvuwvwshD/(+6L`ly~~~|~~~~{zzzvwwwvuspqtopnppjmhjjggfhnqrx}¡¡ £¡  kG1+02&'&&-1,.72464545533.-,,059;90++066334245937>M^w¡¢¡¡ |^YX[VZUY`]Y[]^_`^^`b]a`__]]^einu~¥¦¦¦§©¬¬¬¬¬ª¬¬­ª©¨¥}usf]XRQPKMPRUXW]^[\aa_babbaWGA99:EL]q][YTN>*&$(>\e8#)&=:)&+0@8<876/5=72231010,+)**,39ECHLQVbqrxwvvvtwttp_@-(+4L]oz}|~~|{{yxy{vvvxurqpnmmnplmjmiiiffjnqrt¡  ¢¡kC,*.+'%%)-+,-1883396334/.*,/04876-++-56588393457BRez¡¡¡  \VUVXZYZ_\Z\]]^`^]_cb_``^^]^cgkr}¡¤¤¥§©«­­«ª««®­¯¬«©§£|vna[VQOMMNQOWW[\[]^c_aba_bbP949@Q\`kxnileL1" "$,<oX7'(06(&)7??<752-.8:5:2..11+()&-,05@GJLQXbmsvtrtwsuwwr\7+))5J\qx~~~}~||||}~z|ssvxvttokpquvqmkrifgedflnmov|¡ f@-)))&#&()*+/69:63697961.-,+.6;:4.,)+01555893176ASl{   }VWVW[]_Z[^X^_`^__``ea^^`\Y]adipx~ ¤¤¦¨ª©©«¬«­­­®®¬ªª¨¥¡~xsh[UROLMMLOUUW[\]^b`_ab`bufJ86BQg[f~~}mefdL-&"&+0LmZ()01(#%&5<=:5.,,:8783.)*.*%%'.1029CLOPXajpurrsvuuvyoV7,*)5L^q{~~}~~}}x{}zywvwxwsutqnrsysnmmnjkhgghjmnrz|_9*.($$&('%+018835665684.,%'*/6:96/.*..3843254237@Sl{  ¡ ¢    bY\ZW[]X^`\^``dbaaaba`^d_`_^afouz ¤¤¥¨¨ª©ª­®°¯­­«­­«©¦¤ yrj_WRROOMLMQRY\^^]a`dbccazeK<GRejnt~|zaReh^J1&&,9_oN+12,$$&14691,).:<5330+*,)#%%+.035>IOMXbjqtptnuwy|wmU6*(,?Tbu|}~~~~~~{~||{yzywy{xutuupqrurmnlnikliffjosuz~  xY;/,)&+&(((,.4;944224430.+&&-29:74.,05.-6344222/9@Un ¡¢¢¢   ZZ\XY\[Z]]]fadebbba`_^^^]^^celsz¡££¥§¦ª¬««¯¯®­¬«­¯«©§¤£vpf`WVLLLONOSXZ]\\]ab_aceueackm|}{}zuzziae{}[>0,->^n78>JI'#,-/84/.*2A821///***&&)-889=GPRVagkspstuuuxwiM4,22EXgw}~~}~}|}~}~}}zzz{ywtuwrqptsmmlkkijijjkpsvvv|zZ7/&'()''(+/28:94202542/++'%07;;83-*11/13244/134:FYp¢£  j_][\[^^`^]aabdaabb`_c^^a^_bdjpx}¡££¥¥¨ªª¬«­¯°­¬¬­¯««ª¥£}rjaYVPKLNMQSUUYY][`a_^^apxunrx{|{{uq{nw~pX7.4KaN2Q8#-13:;-)&095/1/14**+'&()589;GUWWbflptruvusus`>+(3BO[ju}}{~}~~~~x{~~|y{{~}zxyzrsqqprrrqnjpnkijjlnpqtx|vV5*%$&)'*),.48463501654/)*()-29=92-.16925:930/48;Mav¡¤£  \ZZ[\^]_`b__dfbaac`bf`ab__ceknry¡¡£¥ª«©««¬®¯®­¬®®­«ª¨¤xog_YUJLKNQRTZ[[\Z\^_\]\tpmjkrtz|~w{_croZHGYgCaK%+0285,'%(20..11*,(*'(-,-2;:BQWY`innsrtvxvvwV4(&,=Palu{{{~~~~~}~|~~~yy|~xuywsstusroqpnmopnjihjlnrvy~oM0)$%(.,*,*-3443354=852,,/,.-08:61,,.6737;A41,-3?Rg|¡¤¨¢ q^]\\b[``abbedddbeedfaabbacgknpu ¤¨©ª¬«¬­®­­««­«¬­ªª¦£}sjf^UNLLMQRSWYXXZ]\_]^_lsaQPbcoyk}g^`\s~q`drkd¡£M)-0035.'(+20++/.'.,*+.)*048<CMVZbhmqsrpt{xtmP,%",CVbmw}{{~~~}}~|zy{|xy{yxvuxxroqonlkkkighiimpsux|oD,,)&*+'+**.1035213673/,,.+-.6>754/,.11200220+,07Kh|¡¤¦£   ]\^^]]`__bbcbcdccbb`aabab\ddkmqx~¤¦§©¬¬¬®­¬¬ª«««¬°¬­¨¦ xphaYUOLLPRQUXYXZ^_^bc`MMJ?<?I_v~hx{zqnotu}~sx|{\(),/7:4+0*/31-0-..++*/,+.39CDLT\cjmrststwzwfF*#$0G\cow|z|~~~}~}~~}~||}|{zv{ywqqsqomllkjhhhjmorsv{lF1*&**20.-*,1345545272/-,)&.056;?4)+-0221/./,(+3:Oh¡¤¢¢ ¡  u\^^a^a``ccbdcceddbea_`_c`bfhmru{££§ª««­¬«¬®¬­«®¬¬««¨¦£¡~tmf^ZUPIJOORUVUZ\^^bdb214859?JatqQ`}wztcb\]\`dszk{¦T%'117>4'.+03.*.+.-,*)+)(,/6<DHTYagmrswsvuxu[5%#);K]fmux|z}{~}}}~{~{}}{{|zy|yvuronklmkljjjkkkos{{{lA*+(2CA96.+,/465:622337/))&+.49<8/)),2845202,').6Wl¤¡¢¢  ^^_bab``bbccbbcdb`fe`^_b^\efhlrv}¡¡¨ª©«­¬¬ª®­­¬­©¨«­§££ zqib_UQJFKQLRRSYY[^[ba-,---17E]ewzeaprakiaRC=;?Gexxv}«¦ª¬S%%00894+%)35/+*,-2(%(+))*,5@HIRZbhqttvtuuuqQ0$(2CRbjqtw||{|~~~z|~~}~~~~|{y|{zywwvvspnmponolllljjolsw{}~a?108BA81-*+/0637>6.36212/**,38730+++..67974/)!%,<Vo£¢¢¡¡      {^_d`ccceebdbbabbbceda^b`_aeelpv} ¥¨§¨¬«ª«¬­­­­¨©«ª§§¤£ xmf^VOMJHPKMQVXXY[Z`c1-*&&).=KZfq{ytwxohlg^KH@>ANgyx}~ª£Y/'-2244*$)34-')*))(('(*)(+8EHGQWcipssr|swrcB)#+8P\fmruw}}|~~~}}z|~|}|}{~}z|zzzzzwvwvvtspkmpooonlljkkjpuy{|]:-(=N:,+')014768<5556436.,..15711+,.145<923.(&$,@Zq   ¡  dbcabbcbeffbacbbf`cfcaba__adintv¡¥¥§ª«¬¬«­¬­ª©«¦ªª©§¥¢}sle_TNJJKIMUSUWXZ[aa?2$!"(39E[^`qvutttpa]^M;?6JTY`wrnd7$)2022+%'1?1***'*)(&(*)(.;HJITZahqrsqusspX5$%.CYdhotvwz||}}~~~~~~~~~~||~~}{|}}|yyyy{yy{zwutrpnqopmnmjjkmstvwy}[9,/.)+/,),018778657632330/-413:221*/0549710.)((0E_x  ¢cb`bbb`cfdbcccbcabeicdcccafgmrsx|¡£¦¨ª­««¬ª¬¯ª««©©ª¨©¨¤ xrnf]QJIIGLOQTVX[Y\]:;2& '4>JV\behcb~qhYG7576BE<NUJWc~=().061)$&-31-('%((%$)(+018GNLOW_fptxyuwtlD($#5Padlsvvwz|z{}}~~|}}|~~~{|}{~~}|}zz}{xxy}|||wwvpmpnmookhjmoqsuxy}xT2-2+*+,+*//16:767986574/-+-04::511+233699210.++7Mbz ¢¢ jaabaaadeedebae_adefdbbdabeehmpt{}¢¥¦ª«¬¬¬©ª«©©¨©«­ª©©¦¢ypa]RNLHHJPOTXXXWZ_*:C<2.7BJP[m^HKKlr~i[TE:+10BPKJ]IQSrzP'(*/2/*''/5-+(&'*)%#('*-0<KMLMS^gktzyuso\5"(,BXdipuw{yz{|}~}}~|~~}~~}}}~}}}z~~|{y{}y{rwxstqolmnihhmnnpttv|~sO4,-%&,+++-07=8:9:?766940.--.3=9410//337:8320-,4?Rg|¡ ddhadefedcabacbcbaec``b`bedhimqw{¡¤¢««ª©ªª«©ª«©¬¬ª¬ªªª¨¢|sc\XRMFHHHKQVTUZ[^,,4CPQKDHJSWXTcZqkn~xXTH@2.7@U`iof]bd|R-*)-1-+((02-*(',.*%$',(+.=KLHKRcilpvwuoe?*%*<Rbikpwz}{z|~|~}~~~~~~}~~}~~~|z{}{xy{zzyxtwturqmnqmohklmmmrrz|qO/''%%*,-)+-7;:9:67446742/-,+055723-,156661-,+.5?Wl qdedbfga`aabaaabdccabbbbeccghkqrw~ ¡£§ªª«©©¨ªª¬«ª¬­©«ªªª¨¢¢xk_\VNIFDGMRRQSW\_2 "*AWcaX\XIJhvtmw|ldQ:.2;Qguxb^ghxc30/731.++-20+)*++,&('+(*0<IMLMQ_giowxujN,#(1K_cfmrux~|~|~~~~~|~~~|}{|ywzztvvvuvupkolkpqskhkhkjpux{|pK0''%#$'&+006325864344B521-,005782000583330.)(1/;Sk bbab`babd`bcabebcbieabddaacchmnv|¢§¨©¬«©©ª««¬««ªª«©¨©¨¤£zqg]YUQGDIMNPQTTX^D.&#'5OX_ltjj~n~pumG200>WsoSK]gc[8635=<0)+*0..2*&%'&),,,*0:FKMSU]ghotvnU1" 1FV`choswy~}}~|~~}}|~~~}}{}}~|zzz|ystvvuvsopopppnonlkhjmrryzz}}pK0)($$'&'.0-7779765334941,/-28887.*.358895/*$&*-9Rn tacdeebbbddceb`]bacebcbabb_^ceksx| ¤¥¨©©©¬¬«¬«ª©««¬«ª©¨¤¡¢~vka\UNIEINLMQSRT]WI>2+4;:;R||¡~^gg^`hli@4+4HazM<GDD<5654?2,,+,3580((*%$,.**,19DIPVZadflmrc?&(.;T^dfkry~}}~~~}~~~~}~~}{{|~~~}{zz{|zxqvwwustqnnqtqonjjklmpqvywz~~oJ3/)$$''&)+,/0<8512/39663/.0335672./547961+(&'*,>Vp   cedadc`bfcdda```d_da__`bd``bekrv~ £¨¨¨¨«ªª¬¬¨¨«¬­­¬«ª¥££|tj`WOKFFIJMPSPRZMO\XLB4-%-;Pe{r`ADA978FW{nU=/08Ve7/511/25680,2//82+*,,&$*,'*-.1;FIHK[efbhj_G1%.8GV_flqw}{y{|~~}~~~{|~}}~~~~~}}}~||}}{}yyxvyxxvrwsppqqrmnmlmlomprtuw|nK4-+'&%'++,,.297765349742.).467440-./13840-)-)(-?Wr   ycddbccbcfgbcbf_cba`_^d__``dehnrz¡¥¨§¨­¬©«¬©§©««¬­¬©§¦¤¢ypf]TNIHFELORRRVI?Udg\M8&$#1;B:2/2)($2<KOQ<:.3?^1)/,+,054:1+.-,*&'()*&$!&'//.5@KJJP]dgkgeE3+%0GV[bipw{{{zy||}}~~~}|}~~}~|{~~|}~{{{~|}~~~{yzxvzxvssvwwtsspnprolnmnoqrsylD+'%&(%',+.02494758=:51:2.-153934-./245><85.*&*.C`w¡ deebcdcdhgd`]_````_abb^\_^`ehjqx~¡¢¥§©¬«¨©«­««¬­¬¬ªª©¨§¥ ~ulaWSLLHGKLQSTVE8=JXfjS:-&$'*)/563-(-.5<HB745/?cz?-1-*-/156-)(.*)&('*)'%"#(/3-5?JGKTcbhg^J1),1=P^fmqvxwyyzz|~|~}~~~|}|~~}~~}~|~|~~~z|zzzwyurxxy{tstqpnmnljmpppswzhB'*,%&&%(*4,/154348:24360/+213833.,.157<><5./)0?I^z ~cdfceccdde^Za`_`a`a`ec`aaabgghsz¡¤¦©¬¨¨ª«­®­­®«ª««ª¨©ª¤xoe_ZOIKAIMPQSSL58BI\fkdP8A;3+)3<8/#'+2;?27>D?K]YU1&0,*,.063*'&++,'($*+&&$$,0226>JNOUcdg`QF)).@O]imosuyxxx{|}|{}~~~}z|{}}~~~~~~}{}~~~~|zyvtxvsx{ttroruspmllkmmpssvw{{iA/*)&')&*+.0/643537971543234021.00.024>87672,)/2Jb|¡ hbbbcbcccbabbb_```c`be`]b^`defmw ¤¥¨«©©¬««¬«¬¬ª©¨«¬ª¨¨¦¢|tle[ROLEFLQRSTQA;>@?Mdp`KADMM7032+&%)*5@:>FSWWD:8,%'-'',163,%(/*,())*'###&*,-09DKLNV^c\I85%+7O`a`kpsx{xxy{|}|~~~~~}{|}}}|}|{{}{{~~|yxzwwuuvtsutqprupmkjkllorsuwx}a>+#&%(*),--416776386346343084355/.0.35955561--1:Nh~ ¢¡ aba``babccda```_^ed^e`^^ad`bfmt|¡¢¤§¨¨««««ªª­¬ªª««¬«ª¨¦¤}ri]SOIGHKQQOSN>>:87>Pcg`R;>LLJB=9=<30-6COThslVC@4,))''*066++,+**--)+%#!"#)+-08CGMPX`[J7.,(8KW^^bmqvzzxyz|{~|{~}|}}~~~}}~~|{~|z}||{{v}yxuttstrtutqooqmfjjkmopqxx|_7(#$'(*)(,/144288346679863498654230.17564960-04:Hg¡¢¡ lccaaa`_gdbffa`a`ba^a`^\cfcccgry  ¡¥©ª©«­¬ª«¬««¬¬­«¬¬¨¨¥¡¡xpeYPIJIGLQQOC865453Ehsrl_N9:CA<=IRZMD<CT_poaZRE:)'&2044-,,)***+.-''##&-3;1:CHORV[K6-',;KOXafhsuzyxzz}}}~}|{~}}{}|~}{z|~~|}}}~}|~}}zyzyxwxvqrrrrrrrrtpnnnkmhllnptww|zZ7-'#,,.,.2*.46431.38547:841173696301113335/4,.5=Nh ¢¡  ehd`_``cc_i``aa``a]b]__bcabdhoty ¥§§©«­¬«¬¬¯¬¬­­ªª­©ª¥¤ |tk\UOPHEKOQN>1..045Hcwvuy[C541/7AIG=CTe^[ipeflkQJ1&%$*36/)+*)*)+0+))'),%/0/3@NQVNB3+(-;GUV\djnquwx{|}}}{~}|}~}~|~||||~~|}~}}}|}~~}||~|{||zyvwtrutrsqstspnnljlkkmmpqsu{zU2-(&),0*)1-/0470/22674;984136567210367885622/00<Li   uifa__a`d^^ace__`aa_a`\__`_bemtu¢¦©ª«ª¬««­¬«¬«­«¬¬«ª§¤¡{r^\SOKHJMML>.))(.8Kgvxw{uM=97578/07P`aaYPCC_`YK=+((,22-*-)+,)'+-*)%%)(,),7AMOQG4)%)6COVZ_hrttwyy{{|{}|}~}~||}}~~~~~}||}}|~~|{}~~|||}}{~|~||}|~~~}~|{|{xwwvqxvrpqpuvqononkjklklorv|{T2))('),)+*..289830/.8>@@:42365476//50587356323.;Pk   fca^_bb`a_`bb]___]^b_^\`b`caimq{ ¡¤¥©©©ª««¬«­­«¬¬««­¬ª¨¥¢tg^XNJJJLLPR2*((*1?Sgy|~oh]TIPN;6B^wYd\[PNZsteY>*+02,.'*(/0()(*)'%##$((,;FGHA31).8DQWVYbmrtvxxz{||||}}|y||}}~~~}~~|~~{~}}||~|||||~}}|}~}|}~~~}~{{}{zxxvtvwprtortpoqpmljjillnntz|~}uP1,++(),)-73016<>52248;<8617532530,00353248863/2;Qn ¡   s_`^afe_ac`_\``_`_^[__^^[^`aekq{ ¡¢¥©¬¬§ª¬­­¯¯­«­¬¯¯­¨©¥¡xof]TOMLIGJZ9/,,+.6>Jbp}~oislOKjrbTR`lt}|td1+-30,*)-34-*((('""#$&).9A;51.,+=HOW\_aiprsuuwy{}||}}|{{}}}}}}~}~|~}~|{~z}|}|~}|||~~~~}{z||yzywtuwsrrptrsoponmjjgjlootw{~|y{zz~rN1*++),+),/2217:866575333422320530-,-.15578311./:Sn¡  ¡baacdca`d\]^__]]`Z\__``c]`bglqw| ¢©ª©©ª¬®¬°¯¯¬­®­¬­ª©§¤¡~tf_ZSQLGHJX:3420/38ATZnr{ ¤sonla]Y`puZ_vzxO0.3/,1,,,1//))%'(%$'',2683-(),7HOSV\bhlrqoswwy{|{z~}}{}~|}~~~~~z}|}~}{}|}~}z{~z~|~}y|~}}|z{yx}{{wuvrstppppqnnnmjjihkplrv{{yuvutuwz{~tQ,+,,*)**0/1474756535325.232353230.2111687945/-/9Rl £  v_adaa^_dc\]`[[\__^^]``^]addkpsx| ¡¦©«¬ª«««­­¯¬­­­¬­®ª¨¥  |ob]WQIFFKX425:<=;GZb__kxsi|}r_NWdtiPWh|P002//,*/.-+/+)&%.*'+*-132.**16>IUU]dgjmossuuvvx|}z~~}}|~}~~}~}~|~}{z}~~{y}~}||~}}~}|zywxz{ywtvtusqnqnpoonlkiifittmryy~~{{xrstronrvz|oH.()+**.+./0550655456/33074/1311//-0111896432+*1<Qo¢¡¡`a`_`^`ah[^\[_`_][^\[]]\agcfkqxy¤©¬¬¬¬¬ª««°¯¬¬¬ª­®¬¬¨¦¤xj_XVSKKJQ2+3>FS]gpnk\\ew~wln}}stnwzsTT]kh^bu|oD//02,,0.--0/('&$).1/+/0.+*(-;=HOW^dlmmpqtsttuxxz|}~|{}}~}}{}|~~~~}z~}}~}|~~}}}ywyz|xvvvwvuupooopoprnjjjhpunprvx}zytonnlgghnoqu{jF3+(*,+'*+//46543667=CA7641-.1187++2/036:663/*,3:Pp¡¡   }``a]^_^^\]]]a`_\\\\[_^]acdcjmux~¢¦©©ª¯­«¬­­¬«­««¬­¬¬§¦¥¡|pg`XRLGJW3(-6=FUmwthTPWet}}||snrzmfeleW_qeG6*./0-,-)*03/)&(%'--+-/-)$%+7@FQWXciopstrqqtstuxzy|{~~}~~}~}~||}~}~{}}}|}|~||~}~{}}|zxwwxxwxzurqrqpqrpkkifjloqrtv}yurjggdb`_cfjps{~kC,)))+10020049942577@:;820./0686,''/743/2550)&'4<Sp¡   ¡d^acb_\_\^__aa_`^]_\\`_ccgjkmqtz~£¤¦©««­­¬©¬««®®¬ª¬¬«¨§¥¢wmhYUOHGQ<+*=A-2;Peh^QQ[aku} zsf[K_tO7.*.0/,*-**/21)%*,()+2.,*&(.5?JPWXZcmpqsusqrsuvqyyyyz{~}||~~~}~}~~}~~~~|}~|z}|zzz|~|z~|}||~~}}|z}|{wxwwxwxutuspppopmnnmlkimolptuv~xuthb`]ZTWWY`fnsw}~h?,)(*),.5.*177:<:50288445.//0550+)+.41//650+&""';Vs   ¡¢ cc^b\Z\^^\^__[`a`_^]b_cfhjgkmrxz¡¦¨¬«¬«¬¬¬¬©«­­¬«¬«¥¨¤¤ ~tk`XRLFI96/ET4!%+ARTU`edalmqqaivgS4/1.2-+0,+,/-'&.8*,)/,.+'/7>FMSW[afnoqsvvtvuvvuuwwxzz~}|}~||~~~~}~~~}|~~~}|}|{x|{{{{}~~~|{~}}~|{|z{y{uvxvtswttpomoqnlmqjjijlkoouw}zupke]ZWRQPOT[clqux|f?.+..--,0.,/-4=;33236972/.--28-,)(,101-1750)%!!(>Xu     la``a]\e^[]]]``\__aaaabefjijlptw¢¥©¬¬¬«¯¬«­­¬¬­¬«ª«¬ª¦¥¢yme[VOI91/2Ks9#!$*247K]_dehfg~{~¡¢}vO>3,0.(+%*.//(',0./.)')%'1>EHNUU^ahloqtsvvxwtxzuxz~|{}z~~~||~~~~~~~~~~|||z~}}~~~~}}~}~~}|||}~~|{}}}{|vuxwuvtqsqqrpsqkjhghghkjnpsvxzvpja[UPPLDCIRYahmttw{~~`;,()(+.5=0).65655323642015.2/0//,&&..023333(# "(;[w  a_chb^\\^]]]^_a^`^abdccgjgijotx ¢§ª«ª¬­««««©¨­­«««­«©¥¤¡}tlaVTS:-,->XG##%..''.3>BIUU\fr{z}qu{yaV?-1,&##+4.,)-11/35*&'*1:;@HNV\afnnqrssuvvxtwxy|z~|}}~~~~~}|y~}~}~}{||}}|~~}}z~}~}|~~~|xxuxwvrnprsroooolihfecfiknkosv|{unfZVPG@@<=AOUY_hnprwy}Z5+))))(/,..-15;6835776-021/01/0+,+*+.27201.&  '8\v¢¡l]egda\\][Y\^_a]_^`abbcihhiilpu{ ¤¨©¨««ª§©¬«®°®©«««ª©¨¤ {mh^YR2-*13?>'$(44+$&*+)--0:FLYeolm^^qVPUbig^X[`VA/'('%+,,5+'01.*$'&(3787=HRZadhnpqqoqtvuxvxxyzy}{|||~~~z|||y~}||~~~}~|~~~}|~}{}~|{|||}}||ytvxxwuunqrrrpnllmjigffcgjllooq{zvncXSG9;756?GNX]einqtx}{X3,+,/,)*.//038:;8455=5.46/021//,,(0,/32257/*$  )>]t¡ ¡  ¡ _`^ab`[^`\`_]^_^_`caccdfighlot{¢¥«¬ª«ªªª«««¬®­¬¬­«©ª§¥£¡vodYV0/+62-)%+490-)),-.0&$)2BBDEKC@@YjIBKPI75=N[X=.+)$$).2'&)+)((&)-358:AKV]cdgkmmnlntuxzxxxz|{|z{~~{|}~|}}~}~}~|}}}}|{{}|ywuwwxuuytnsqrqnmmkkjjfec`fjjlmpy{zrh\SF984/66:BJR[dfilty|sT4,++,-.,.--/28576969;6/24,-..01*,-300473781+$"'8\v   ¡ ¡t^]_gecadbdac__````acdedecfmru{| ¢§ª««­­¬«©©«««««ªªªª©§¦¥ {ri]V33342.''+/4410../0/**,*@@BIJLEDTvdI<AK6&0AIGF?.$&(*-++(+/0('&),/35=IRX_ffikmoroostwwyzxy}{|||~~}}}~~~}~zz~{|}~~}~}}}}{|{zwwwxuvwtoqnmponilnjghjgbeegjnqww~}wncYK@;3./016?JR^adjrvy~ oJ0)(*,+++-,,*..01322458520.-010.--/414654872*$#*@\x  ¡¡ ¡^__`bc`bac_a``dccabcaabchfhotxy~¢£¨ª¬¬««ªªª«ªªª©©©«ª«©§£ }oaY4875463.--/4:<438-/)/04;:=AFPX]f{lIITL9+<K4:I<(#$***+/84)!*..-006>LR[^chjlmktssrqwwy{xwz}~~}|~~}}~~||~|~~|{}~}}|}||{xyxu{wutqooqmqnnmmmkfjigggdfjpprty~~|sgaUJ@91*)-,6@HWZdcempuy~¯±¥sH/(%%+,+0,1.-00//5;6362361--./32/(*,/2784252,# %/D]x¡¡¡¡¡   £¡  yba`_b]abca^a`caaadf__bdgimmmwt{  ¤¨©©ª«ªª¬¬«©«§««ª««¬¨¦¤ul_256:;<=7;0(,<QC96/0/-3=E=<57>Het}iKSG2:C7,6E4%'*-06:2'%%+4343.8DNVY\fkhfhkrrqvstuxzxw~}~~~~}~~}}~~}|}~~{}|}|{||~|||}|{zwvvtppqpqsrpoolljjjljegdcghhnpry{}{siaRI<3*'*-07;GL[acffluwy{~«ÇÈÂÀ¹m;"$)+++*+-**00/4452.55;6.,+*+0,,)),655443440*'+5Hdz¢     ¡¡a^^]``_bb_]`bbbaabedcegghjjmqty}£¦¨©ª«¬ªª«©§«ªª©ªª«¬ªª¥ {rd,17349<?B6.)3JKE84845=@L[VA17@TetWRMA-1:.+;9'*-374,*$&'.+.2218HPVZ`gjhhjktuvuvuxv{}~~}~~~}~}~}}~|~z||}{~~}}|~}{{{yzwy{zwxrrrsutqqsokjkjlijjjdffefgkmopty{nj\UE4,+&*-27<DQZ[[_bhmtu{«¾ÐÔ××ÖÈ³h7'((*)+/,,+/24403631474)*))+++,))063015571)++/:Kd{¡ ¡     {^^`ab`_``]bbca`bbehdffiijnomrvy~¡¤¦©«¨­¬ª©«ª«¬¬ªª««ªªª¥ xk.*'*).1=E<8646@K>9:722:D\g^J?CKQXhsp^C883-4@*+,.-/G2()./-/255=ISVXabfeginqtrrwvw|~~~{}~}~|~~~}z}{}|{|~y{{{{{y{zzwwusrurpsrpponlkojjjjihdeeehkjnpu{{tmbYN@3+%%&,0.7AFKRYY^bimrx±»´¯¬¼ÎÖÙÚÛÙÔË¬w3$(,*)'*)*,21/1375130/,+-/+-../.1252343100..0=Mc{¡¡ ¡¡¡ £¡ c_`abbbbd_^_`^^bchfbdhhklknmouz~¥§©ªª©©©­ªª¬«ªª®¬ªªª¨¦¢{p2+')#%*0227EB:9<D?455206F\cWOKHFHQfk_NL=-34-+()'40,,0+.224<EKOXW^`fjhlopqpps{}~~~~~}|}~}}~{~|{|}~yz|y|{wyzzvssrqrssronspmmonmkkikkgea`dihlpuw~{si`TC5-$#*304@806=ILSZ`hdlx{{}¬ÂÎÑËÄÂÌØÕÖØÚØÓØØºxE))*)+)*,,/00/02152.+-0,,..0.2302621630/0137@Mby¢  ¡¡cd^ababba`cba__a`ccadegklmmntw}¤¦¦§«©©§ªª¨®©ªª¬¬ªª«ª©¥ }v0+))'&'&(&-?EKD:FI;246249CIHMUPPGLaq|¤vhf\C35,'$'(+/)2620349?FNVZX\^hlklnnmpr}~}~~~~|{|}~{|}|}|}|{|~zvz{zyxwvttttrsrrpmoqrooklkkiiiegfcbfhinmryyrf[M@3)&22*8;1.04<@KTW\\akuyw{}¶ÉÕÙÕÌÅËÓ×××ÝáßÞßàÙÃ:*(*)&).+,,.00749-020001/,1/,-,/4104303059>DPcw ¡¢ £ ¤¡  nc_bca``ebdcgfab`bddfcdhhiloqtx £¥§©©ªª«ª§ª«ª«««©­¬¬©£¡ |-&(2/,)+*#%(3:><@JTE005>C?92/QQPU_emqm~{njmXD9-%$+&)-/120/328AINQXX\^eihjlmnz~}~}~~~~}}~~~~}~~}~|{~y||}~~{yw}|yx}{yzxxxwuutssrpoponlmljhlgjkikidcdeglptu}xi[RH:-(*&)1+%)/136=FMRWYaehrvu{zz~£·ÊÙ×ÓÌÂÉÑÔÖÜáäæååæçäÝ½}=)*)*)+++,04593:83*/330../,*,*,/13240655=AESfz ¡¡ ¡   ``daa`abba_cd`baa^ahehikmlmprt{¡¥¤§ª«««ª§¨¬«¬ªª««¬­©¥¡,')-10.40-,)'.005=OWN5,2AAH?=;JMHalqopscYY_ioiWXD-(*..(.1&'(+.3:>FLNTY[`cfijkw|~}|}{|~}~~||~~{}{|~~}{z~}{{z|{{zwzvuuuuvtsrpqoklnnjjkjllkggfcbdflnsu{lbWM?4.*+*,*)'),.-488AFOWZZgmoorsv{·ÈÕÛÔÍÄÁÌÏÖÝáåçææçééèãÚÀq=*)**(*/-/3699>971/0343.,*+,*(,03244899?BFQf~  ¡  ¢    obca```a`a`bc`bdh`cdgkijjjknpsw} ¥¦¨ª«ª¬¬ª«­¬©¨ª­¬¬­¬§££¡+*-&,1579:86)++,047GhT?429?B8.9CFQdxnuypY<;D`eNGC=-'+'%'(%%)*,19=FKPSXY_bdfs~}~~~~{}{{}~~}~~|}}||}{y|~}zyyz}zyyywvwtsttqrooolmnmiijhmkjiffea`imloqxzqh]RH73,,)&('#(+/++/36?EINTZ^achik²ÇÓØØÎ¾¿ËÐÔÜáãäããããäéèèâÔ«k+*+)'(+.00698787109864/.+),.)+.255257;=@FVk~¡  ¡¢¡     cbcacbbdbdcbabca_^`bfijgilljnu|¤¤¤ª­¬«ª©®«ªª©ª¬«¬¬¬©§¦¡.-.+*+16?>CGB9-./47:FZjX;22<<155>NUnyqjyycSRTRG?0=83+'( "##'*,2;DKYVTVYZ^m|~~~{z~~~||~}~||}|{}|yxyyyxxuvxwvsrwtopoomlomqjhjmpmhjfcacbehimlry~{qcXSB6.',0*'%&((*&*,.05=BJKPVY[]iÄÎÜÚÓÆºÄÎÓÛàáààßßàààãçèçßÏR,'&((.3/044556A768540-(*.--*,/252/57<?AH\q~¡¢¤ ¡  tcccbccdeeddba`a`^^adekiimmklox|£¤¦¨©¬ªª¨©«­ªª­®¬®«««¨ª¥/.-,+)*/6=?U^RF=88;?.BjxmN51DD;39ADU}xfqyzxmbQB4)/;H0(."!"%*+8AINPT\YYbx~}}~|~~~~{|~~~|z}~}}}}~}}}{y~||}{vywsuvwywutusvtrrrooknmlkjmlnnjfddce`ciikmqr~wk_VO<382.-))%%%('(),*.02:<BEJOX·Ì×ÝÓÉ¼¿ËÓÚßáßßÝÝÝÜÝÜÝâæèäÛÁ*(&'(+,143223278676342/.-)))/123413/:?EL[o~  ¢¡¢ ¡ bbedcdifgdecbbc_b]_dcfihkhjknsy~¢£§¨««­«ªª«ª­®­­®«ª«©¨§¢/.*+.-$&.<=N`c]OD@83/8JdeF;@MGA75@\opgnuvo`U>6-*2MA*$$"$$&(,9INQPRY_r~~|~~~~}|~}~~~~|~{{{}~~~}{~~}~}~{|yx{zy{}wwxwvvvvuutssstqsrnnolniillifjkigffe`cggkppqwzpe[TF;3,1/**)*(++)&%(,+,/.55;EaÈÒÝÚÏ¾¹ÇÎÙßààÞÝÚÜÝÛÚÙÛßâæçäØ¨W(&%'),0/121-.443331721*)()/3+06313;:CJO[l   ¡¡¡  xbdcbagfgihdede^_^`b`bgdfhjioqw}~ ¢¤¨©ª«¬ª©ª«­­ª­¬­¬¬ªªª£,,+./0*%%-9JLTRLAA:0146>[s|ZBGAEKHB<OgllmpmwsjVRIPW\72,%%%+109JPPQRl~}~}|~~|~}}~|}z|~~~}|||zz|}~~}||}~~{|ywwwuwyywvyzwvuuvvuttrqqpommrljhgkkhhikjfeeg_bfghlmpq}}sjdWNA6./)*(-1+)*&&&')''&&(-0Dq¶Ð×ÛÓÇ¸ÆÎÓÛÝÞàÝÚ×ØØÕÒÕÔÜÞâæåÞÈ-$$'*0001/./0151/044/01(&*13/.-048>>?CL^o  ¡¡¡ ec_cdceimh`deda`bbbabdeefiimpru{~¡¦©ª««ª©©©ª«­¬¬­°¯°­¬ª¨¡5-*-241'$#-DMUN>---(1<==3<]swh\J0<KFCDQ\e^]ajuvbT^jrui\NI4/265;LRPg~}|~~{|{{}{zz|y}|{}{||~~|~}z{{}||||{{{}}|}|}{z|~zvxy{xuxzxxwwxuutyvtsrpqqsopnmkhhhjigfhhfdgea`daafhlpqx~wqi^TH>2-,-)-.-,*(*&&'&&&"&(-MÇÕÛÖÊº¼ÍÓ×ÜÜÜÛÙØÕÖÔÎÉÑÕÙÛßáæåØª['(&+//../-/1.202135++,(',/31-/445<>:>I`r¡ ~baccceecefebda`_aadcbddfhfippqy~ ¥¨ª«¬©©¬«ª­±®¯®¯¯¯¯®ªª¥¡@;0/363-,((.B][M=/"%+59<<=9?LbuoT?0/38<?KNMOTfr]OPgpz~~ulXNC89Fb{~}}}~}{{{{}{z|}|{|yz{|~~}{~}}xz||{|{{{|{zy{||}{}z~~|}~{xvyyxvyzxwvrvssqpttsspooppokmljijigiikhhfeee^^]_bglnnr{{rjcZNF<2,+,/,*,-**((,)&'$#&1Z¬ÐØÙÐÀ´ÃÑ×ÙÚÙÙØ×Ø×ÖÐÊÉÐÕØÛßáääÝÊ2,)((',22-./.,/0.03.,*''/-01/.18:616BP^q ¡   f^bbdfedgfedcb``dcedce`djfilmpt¡¥¥©©ª««­¬«¬«¬¬¬®®®­¬«©§¦LR9*-..51-++4DYdWM/'*2$(*BKFGGPlrhI2)'(*1;NFJZeumTY\cq{{gemcGLs{~~}}{{~}}~}zzz{{}|}{xy}}}~~~{|z|{{z{z|{y{zyxwx|{{{{}}}|z}}~{x|ywzwuuxwrvvsuqqrmqqqqqsnoponnnkljefhhhhgfgdeb`_[\dkjmpt|¡}xpg_ZP@70-*+,,..,,+(+*%%""'9xºÓÜÖÇ®µËÓÚÛÚØØÕÕÖÖÓÏÉËÐÔ×ÚÝáââßÖ¤U(,((*-36700/.133//.),()+/-0,//454/4:KZp     ££¡ aceeigghghfb`ccdecfaebddehjjqu|~¢¦¦§¨¬­­¬¬¬«­ª«¬¬­­­­«ª§£PWK/+)*,++.1,+>WaaJ3(4*"%0<KUJFShsq_E0/&'1EPBFTox`JEPX^jiZL]vt}|~}}z|{{}~}}}~~|{zzw}{y{}|||~}~}}~}yyz}z{z}|yxyzzwywz}wwz{{}|zz{xxwuvxxvusuxxsssospqrqpppptrnljnokgihgddffdfdccbedb^[]abhopsy}{uqi]UE<60+,,..*.-,**'"$$$*LÇ×ÜÓ»£ºÏÔØÚÙ×ÔÒÒÕÔÎÌÊÎÒÕÙÚÜßááàÛÉm5-.+.0/620630441..0//0*)1/0576237++6AXs¢ ¡   ndccebfjfefc`_edhaacdaggdhjjlptw~¢¤§¨§©­«¬­¬¬«­¯®®¯­«¬«¨¦SVVB5/*)-./3.*-7OkfU@-!!%54:AK]Y]zvbJ2'*5UNDI[hjTJHGGM_bOo~~~~~}}|}}|}}}|zz}yvxz||}~{||~~~~}zz~}yyxxzzzwz}ywwwuuwxtxvtuv|~zywvvvtstuvusstv}rpqnoplominpmpqnkjnnimihhcedcdfedeccaaaaa_aeinsuy~|ulcXMA:2/.,-,)-*-,,'&&0&.m¶ÎÚÙË®«ÇÑ×ÛÚ×ÔÒÑÑÓÓÎËÌÏÓÕØÚÜÞááßÝÒ;).).2131/541136302-.,)(+.503:71-+'1=Vp ¡  adehigfddfiddhhgc^cddhgdefhjkot|¢¦¦§¨«¬««­²ª«®®®°®«­®¬¦ UWVVQC2*(,02/,-,5LfmoQ2)!"%$(9PRMSeoZ?,*7DLMLKT]\D2(:Us~~~|}~{}}}{|}||yyzxvwxyy{{xxz|~|{zywyxwyvvvvvvrruuwurtuttvsvwqrz{xvssvqpuwutqrtsrwrnmmkhilkkmlijomklmmdmgfedcdcfededaaabaa][`cgjprw~zrj^VG=732.+)-.,,+*(($#*EÃÔÛÒº¦¹ÐÔÛÚ×ÕÔÒÑÐÎÑÍËËÎÑÔ×ÙÚÝßáßÜÛ¹L+))*+/3444540/4753-,.'+(,237754.*&,<Sn ¡¢¡¡ughhegnfghgeghieeabecbgacdfchmrx¥¦©««ª«««¬«««¬­°­®¯®­©KSTYVRN<**)-0420;1TgxvaD.")6CSFEWblncK/*09>?7<RkdA*S||}}~~|zw||yzxywyvwywyy{xxx{|{yxvwvxxvtrsttrutnprusrrsruvsrsqsuwwwpqrpopppnmnopnlmgiihhijifhhiginnkjlkkjebfgdefbabcaaa__]^[_bdilotz|tmcYQE=33.--,..+)'&%%"2d¬ÌØØÊ«¡ÂÑØÛÙ×ÕÒÐÐËÆËÌÉËÏÑÔÖØÙÚÝßàÝÝÆx)'-((3;46367437865.10)*+-/198851+(*;Rm ¡£¢hjiiikkhfdegggfeacdcffhddigfjquz£§©ª¬¬¬¬«¬««««­¯¬­°­®«¥AR^\UR\TE<847>.1FLOQgukK6/$#!$2FQJGDFWYSF3*.)3-3>Xogt}}|||{}{{{|~~~||}}zvyzzyxvwzvxvxwwxx{{}zzxtvruuttwtrrssvtkqqpoqoppnmlnotwtqqnoommmmjlijmkihijffdeecdbfgkkjkkhjjeccgedhddb`add_a`]]\`c_dgmsx}xpi]UMB:3+*(+,.,)%#%&'?ÀÒÙÒ¼ «ÇÓÙÛØÖÔÒÐÍÅÃÈÊÉËÎÒÔ×ØÚÛÜÞßßÝÙB)*+/33234632-409:21.)):/+066;340./>So zkiihhkjhfjeaghgbcedfbfcfgd`dnrv|¢¥§§ª­¬­¬­­«ª«¯¯®¬¬­­¬¨@UWa`WXfaXH:3-(%5OZYbjxgLH:,% !&/JMTLFC@A=?1.*,433U}~{}|}}{{{{{xz{|z|}~}~|yxxvxuuvxywtwwuvvwx{zwtrutsuxzw}zvuuqonomsrqnjllikilefggklgcefeb]`d_c_cdcflkgfhhfedjedfdbbbdgf^^b`_]``_dfjsu}}tlf\PA=52--.-.*'%#%&/S¡ÉÔÖÉ«µÌ×ÙÙ×ÕÓÑÏËÁÅÊËËËÏÓÕ×ÙÚÚÛÜßÞÝÙ¯[((./11231<5407>521.+,*.,,.93:84344ATo ¡ hgihhjiedjeghfidbgbdccbeeedchmrw| ¢¢§©ªª«­«©¬©«®¯¯«­®««¨;FT\ii]flhWC2+)%&-=Sjkdy[IHG7$$&'0?PYXJE@9<A?-'2Ag}~~~|~{z{zy||}}|zt|}|{{~~~}xuxwxxwwwvuruwvvvxtvvuuw||§¦ª®±¯®®¬«©¦¡}vqmpnlkiedcffjgabc`a_[Z]]][_]babeceefffcfecdb`c``cc_\a^__\Z]cfgnszyolbUI@640-,,*)'$!%&>~·ÐÕÐ¾ £½ÏÚÚØ×ÖÕÑÏÊÅÇÌËËÌÏÐÒÕØÙØÛÜÞÞÛÝÎr7(+/11/4664125930-,+()-,/4554136>CIZq {ijhddihefgfjdhdcdefcccecddbbhnrw}¡ £¥¨©©««©«­­±®¯­­¬¬««9ATPbrupflgP=,)*##4R_flvwN=DE@95,)3;LW[RIE@AD83_}~~}yxxy{yy|z{xuz|||z||}{wwwuxtwwxvstxtvtvzxxz¡¡¦³´µ¹º»¾ÀÃÅÁÀÀÃ¿ÁÀÂ¸¹¶¹±­¬¬|ztplgab_\\\]a_]XZVVYYYXZ_`bbbdeac`bcc`__aaaa^^_`^Z[]`cfiqvz}woc[TH72/-,)+*'%"#)P¥ÉÖÕÈ°¢¶ÈÔØ×ÖÕÓÒÑÌÉÈÈÉÊÊÌÏÏÑÔÖ×ØÚÜÝÝÜÝÓ<-..,0340+--,/41/.1.+-./.2200138BNN`s mmjfdgjgfhhigfeccbgdabcda^abdhmry¢§©¨©¬¬ª«­­®¯­¬­ª¬®¬4>LRVjzuigilX0%('%%,4NpcdsfJ18>FHA:9>;MXMLOKBAd}}{}}|{yxz{{yz{{yyx{|||}{yuuzxyxwvvuutswy||«±°·º¹¾ÀÀ¾¿ÂÀÀÀÇÉÃÀÅÅÀÄÈÈÅÅÈÄÂÁÇÂ½º¼¸ºµ¯­­¥pmg`\bhw~xm_UXWTRUY\]`bbc`a^\_`baaa_^]_a]\[Z[[^_dhmrx}}vf`WMA70+*))'*+$'9oµÐØÓ¿¥ÀÎÖÖÕÕÓÑÐÏÌÉÈÇÈÊÊÍÏÐÒÕÖ×ÙÚÜÝÝÝÝÝ´R1..04/0.+/.+.532221.),5/./.,03>HLPaullkiihhggfegfecccdbaaba^^_b`fknt~¡¥¨¨ª®®¬¬¬¬«¬¬­¬ª¬®¬(4I\YdmqruowlR<+"((+(@QRXfmiL8/39D:?<:@JKCOQ]x~y}}}|zyxyzzzzxyzwzzz||~ywuxyxvusuxvuxv¡®ªª¹À¿¿¼¼½ÁÃÀ»¿ÃÀ¿ÃÈÃÁÃÅÀ¿ÄÇÃÅËÈÁÁÅÉÃÀÃÃÁÃÄÆÄÆÂÀ¹µ«¡zpz¥´»²¤i]SQMRYYXZZ[]]_Z[__bb``]ac_ZXXZZYW[_acimx{yohdSJ=4/,))&##$*MÂÔÕÌ²©ÇÒÖÖÔÔÒÐÏÌÌÉÆÆÉÌËÎÑÓÓÖÖ×ÙÚÛÛÝÝÞÜÂ{0(*,.**.31,+01059<7,(+...-.*,1;BNUey¡pmkkljgihfgfedecbba`aba\a^``bgip{¢¥©««ªª«­­¬¬­®¬¬­­­#,=K]`gghp{{ysdC402.)-.4?R_kn^?402+%+472@A[x}~|{}|{{wwz{zuuyzyz|y}|}|{zxxvtxxvtuu­±°¼½±·½¿¾¹»»¹¾À·ºÁ¾¾ÀÅÅÁÁÄÃÁÁÆÅÂÆÉÄÂÂÄÃÀÀÁ½ÁÆÇÈÈÊÉÈÊÈÉÀº¼²£®ÁÐ×Þ×Ñ¾¥^VMNQTTUVUXY\]Z[\Z]_\Y[[[VV[[YYWWY\_dipw{}}|qleZJ>80-('&$"'/i°ËÖÒÄ§³ÉÔÖÕÔÓÒÏÎÌÊÉÇÈÉÊËÍÐÒÔ×ÖÖØÙÛÝÝÜÞßÖH$%**,*,30--0-45:A8/-*/..-*(,2;IOUdvmkjjlhiiiifgfjjfeccbccb`^^^\aenv{¡¨«©§©ª¬®¬­®°­­®¬®'(34SX_eVLmx~zkS>;5+&%(.7TdnvgL4.()**,0Jp}|||{y{}zvyzzxvxz|}{xz{{yxxxxwwusw|©ª´½³º¾³³¹»½¶¸º±·À¾º¿Á¹¿ÃÁÀÄÆÀ½ÁÅÄÂÅÉÆ¿ÄÆÄÂÂÄÂ¾ÃÆÆÈÉÊÇÆÊÊÊÆÈÍÐÊÔÛáââãáÝÒ·xcRLOTQSUSUUWUXZWXYVWWXXWVX\UWTSV\^bflqx{}ulf`OE:/.+' $#)@ÁÔØÌµ§ÀÎÕÖÓÒÑÑÐÍÊÉÉÇÉËÉÉÍÏÑÓÖÔÕ×ÚÜÞÞÝÞßÙ¶Z"#((+)+.0/040139>11.+*,1.*/.4;CJScwsjijkgihgkhgjjhffecdccd``^^]^bjnv¤§¨ª©ª««¬«¬®¯®°¬¬0)-0;K]n^GHYtvaL7,)&()+Fetiyh<++02.6f~~|}~{{z|}{z{xzyyz{|{vxvvvvtvwyuz| °°±¼·´¾·©²¶¸²²º¸¶º¶·¾Á¼º¿Â½¾ÆÅ¿¿ÁÂÂÆÇÂÁÂÅÆÂÂÃÀ¿ÅÉÆÄÉËÊÈÈËÇÇÆÊÑ×ÛàããäãäåãÞÖÃ°zdUSONONPQTRTVXWVTVWVTXWTTVZWXUV]`dhms{xpf^VM?0-&%!"$-W¨ËÙÔÄªµÊÓØÖÔÐÎÏÍÌÉÇÆÇÊËÊËÏÑÒÔÕÓÔÖÛÜÜÜÝÝàÞÎt2(('+*,++-1311052.-*))-20+-018?DQdy   ¡ jjhghhknhkhljhfeedebcd`^]\\]aelrv~¡£¦©¬ªª¬«©ª¬ª¬¯¯®­0&*)2@Sika>5Ux~kM1*(-,/;Q|vwgM,%19]~~~}}|zz|y}{{zxw}|yzzvuutswtx§§±¼°·»­´¹±°²¸·¬·¶¯¹¸±·»º¼¿¿º½ÄÃÁÀÅÀ½ÁÇÄÀÀÄÅÃÂÄÃ¾ÁÆÇÂÃÉËÉÊÉÅ¿¿ÇÐÖÙÝßáááââãââÞØÔÊºtd[RLMLNNNRRSRRRUSTQRSTVSTVUTTY^`fkpy|tkb]UD1)($#"&;yºÓÛÑ¿§«ÁÍÕÚÖÒÏÎÌÌÌÊÇÅÇÊËÊËÎÑÑÒÓÓÓÖØÛÛÝÝÝßßÒ/$#%+,.,3+./20,01.-+)+/24*,01:BHNc{   ufhjihmnglljhfhffdaacd]``\]][`hmx|¡¤¦©ª­­¬¬«­¬­°®°­5**(*1CbmpU99MriL6,*%,5Da_U5'U~~~}}|zz{z||}{vx}}y{}yxwww|±¤¬¬¥·µ®Â¶±²ª©«±´°´¸®±¸¯³»¸¶¿Ã½»ÀÂ¼¾ÃÃ¾¾ÂÃÀÃÅÂÀÄÇÅÁÀÃÂÀÁÇÆÃÆÆÂº¸ÂÍÔÚÚÚÚÛÜÞàâááâàßáßØÊ´q_UMONNPNMSPLOPQPMMPNPVSRNSUVZ`dlu{}yphbUC2*&""",PÊ×ÕÈµ«¹ÊÒÖÖÔÑÎËÉÌÍËÈÇÉËËËËÍÎÐÑÒÐÒÓÖØÛÞÞÜàßÚ¨N&&#&+-))*-000,062-.(*/01,,,/=BNRgx ¡¢ ijmkikmmmiegffgfdbcfcab`[Z]W^dis{~¡¢¨¦¬®¬«ª¬«««­°®­5-,''.8MfmqC8>Tnu[C2('-3DpuY_u~~~||zy{{z{yvx||{zzxz{}§²¨±«­¹­´¸±µ¬ª¬«±­°º®¬¸´±¼¾¶¼Â¿»¿À¹¶¿Âº¼ÁÂÀÂÆÆÀÁÆÉÄÂÅÆ¿ÁÅÇÄÃÆÁº·¿ÌÔ×ÙØØ××ØÙÛÝàááàÞßßßÝÕÊ½«}_SNILMKMLIHPNNMJJKJTMPPPOTX\diov{{tmfXI8-("!%7r³ÓØÐ¿­­ÂÎÔÕÓÒÐÎÉÈÌÍÉÆÈÈÊËËÌÍÍÎÍÐÑÒÓÕ×ÚÝÝÝßÞÚ»a)$"'*()-,/4233321)/+/2414-,06?FKay     {lokllklljfegifeefeeb_ba][YXZcgot{ ¥¦§ª¬¬ª®­¬«­¯«­4/-+((+9els`DALMbh}jQ?5626Q|}~}~~}|}}{}{|z{zzwxx}}|x{||z¨¤°©©¬§²²°·¯²­ ¨ª®¬©¸·¯¶¸¯¹Á¹´¼½·¹À½¹½À»¸ÂÂ¾¿ÆÆÃÁÅÇÄÁÆÆÀ½ÄÇÆÃÄÄ¹¶ÂÏÓÖ×Ø×ÖÖØÖÖÖÙÛÝßàßßÝÝÜÜÚ×ÔÊ¯saQJHLKJJJLJHIHHGHLNLOPMRVY]dmpx|sdXL?/*"!)NÈ×ÕÉ¶«´ÈÑ×ÖÒÑÐÎÉÈÌÊÈÉÊÊËÊÊÌÌÌËÊÍÒÒÓÒÔØÛÜÝÞÛÙÈp3)#&*),,-/-20:3//+*-,3412.-25AEJ^w¢sljjhihikiehhehhfhcaabc`[YY[]bjqy£¦¦¨©ª¬­«®­®­¬¬7,''*,+9Wpj|D?NOLPP}vfXO90M}~~}~~~~}~{y{|xz~z|}z{wvy´¡ª°¨±¨¯°©®¬±¸ª¨©¨®§°µ¬µ¾´°¿¿·»¿¶·Ã¾³¸Á¾¯¸ÄÂ½ÀÄÂÀÄÇÄÁÃÅÃÂÄÆÆÄÆÁµ¶ÄÌÒÔÖÖÔÕÖÕ×ÖÖÕ×Ø×ÛÞßÞÞÞßÞÛÜÛÙÐÂ­xYRTQOQQRLECJIADGHFHJKNTW[]glqw|{uhaYG2(&&8n®ÑÖÍ½®¬¾ËÓÕÔÓÐÏËÈÊÊÈÈËÌËÌÊÉÌÌÈÇÈÌÑÒÓÓÒÔÛÛÛÜÙØÌ4.%%'++,+/,1360.-)(..310/,+16>@I_y    |hjjikkkkjfhecgfddfgecb`\XXYZ]chr{¡¤¤§¨©¬¬¬­­¯­®¬:0(*2/0.<ilv_6?XMOGX_fkycPf}|~}}~~}~|{~{w~||}|xu¦¬¯¬­´¬·²¶°«·¯§«¬±«¨¸¬¦¶¹´»¾´·À·­ºÂ½½½¼µ¸¿¿ÀÁÂÃ¿ÃÇÄ¿ÂÅÁ»ÁÄÃ¾ÁÅ»±½ÍÒÕÔÓÓÒÓÓÓÔÕÔÕÖØ×ØØÙÙÙÞâáßÝÛÜÛÛÔË³oiicmojVMLZSCCDDBDEHJORUY_blry~wmf`V4,(.XÅÙÓÂ¶¯³ÅÎÔÒÒÑÐÎÉÈÊÉÆÈËÌÌÍËÉËÌÈÆÇÍÑÒÒÐÑÔÙÛÚÙ××ÕJ-)&)+.15120/40-+()+/8551.//4F@L_u¡¡ ¡ ¢ mmmllljikfgfgfdd_eddcab][YZXZ^fsx££§ª«ª¬¬¬¬®¬®®P8=%.03,5Xsq{9/IXVIKGKI`y~~}y|}|}}}}~|{}~z{{}}³¦¨±¬³²µ¶¯¸°³´®®«²¯©²³ª´³«´¾¹´»½²µ¿¼ºÀ¾³²½¾»½À½¾ÄÆÂÂÃÅÅÀÀÁ¾¿ÀÃ½¶½ÈÓÕØ×ÕÔÒÑÐÐÏÏÏÐÒÕÖ×ÕÒÓÔÙÞáããàÞÝÝÞáÙÆ¦¢ ¤¤¦ wprfPA?A;>BDGJOPX\dhpwzymgZJ9/->{¶ÒØÌº³±¹ËÑÕÒÑÐÏËÇÉÉÇÇÊËÊÌËËÊÊÉÇÆÅÌÑÐÐÐÑÓÔØÙÙØ×Ô®=-,'-1260/04431,,&*..145232/6BCK[p £¢£¢  mlkjlkljhegigefcdbaa``]\[ZZX[ekt{¡£¦©««¬¬­®®¯¯®nG7*,12.+Olqr[(.MYNOHDEF{}~|}}}~}}|}}|}}}}||~z|yz{¢ª£«­®°¶»¶·°­¶«¯°²·¬±¸©§¹°³»º²»½²°»½»½À¼¶½¿¹º¿¾º¾ÄÅÂÂÅÅÁÂÄÂ¼½Á¿ººÇÏÒÓÕ×Ö×ÓÒÐÍÌÌÌËÍÑÒÒÓÓÐÔØÜáãäãàáÞÝÞÞÙÑÏÒÔÓÒÐÄ¸«lSC<48;@CDHLPVY^ju{xpgXLA/7_ÇÔÏÃ¿·¶ÃÎÔÓÒÑÏÎÊÈÈÇÉÈÉËËÌÌÊÊÊÉÅÃÄÉÎÏÑÑÐÒÓÕ×ÙÙÔ×¸Z)'()8:;4/6F<92-.+(*,-331..135:F[q¢ ¢ ¡qkjkklmljghihhhde`bbbbb_WZZY_eipv¡¡£§ª«©­­­­®¯¯{\>/)/-/4DYimw=)4HSLIC\{~~}}~~~}~|{{ ¥©¤¦««µ´±´±·¶¯°¬µ¯ª¶´«¯®¨µ½µ²»¹²¸»´½¿»´¼Á¾¹¿Â¼½ÄÂÁÄÄÄÃÃÆÅÀ¼Ã½µ¼ÇÍÒÒÑÑÐÒÓÓÓÒÓÐÑÎÍÌÍÉÍÒÕÔÕÙÜßàßàááÞÛÚÜÞÝÞáààßáÞÝÕÍ¾¨jK>:>?@BAFJPT[fqx~{pj]XH:N¿ÖÔÆ·¼º¼ÊÑÔÒÒÐÎËÈÈÈÈÇÈÉÊÌÌËÉËÊÆÂÁÆÇËÍÐÐÑÏÎÒÔØØÔÓ¾d())*.89>20B?52/-,',,/486105016D\t      ¡ ¢ kkjlnligghfehfge`ad_c``]\\Z[adksz £ªª«¨©¬®®¯®®fI7.,/08>Jaru`)$/IN\v{|~}~}~{}} «£«¦©ªµ±µ²®¶»°·³¨®ª°²¬²µ«¨¸¹¶¼·°¶½·´¾À¸¸Â¿»ÀÄ½ºÀÅ¾¿ÅÅÀ¼ÄÄÁ½ÀÀµ¶ÄÑÓÓÒÑÑÐÏÏÐÑÒÓÓÔÔÓÒÏÍÍÑÖØÕØÙÜÝÛÙÙÙÙØØÚÛÛÜÝßâààßââàÚÔÆ¯gE=ANHAGILPX_jpw~rh_RDDh§Í×ÐÁ·¼µÁÌÒÔÒÎÎÍÈÇÇÇÇÈÇÊÌÌÌÌËËÎÄÂ¿ÂÆÊËÎÍÏÍÌÍÑÔÖÑÔÅo1)('&1-410;=03/*'(*+245641446=@Wt¡ £¡¡¢ ¡¡sjklkljjhjgfhghecdcbb`b``\ZY\cjmt~¢¥§©©ª¬«¬®­­uN<6+/17=@VusqE+*Hq~~~~}~~~|~|¡¨¦¥¥©«±­´°ª¹·­²¯«¨ª·±¯µ²°¸½´¹¾³²»º¶¼Áºµ¾Ã½¼ÃÁ¼¾ÄÂ¾ÄÉÇ¿ÁÄÃ¿ÀÀµ±ÂÎÓÓÒÓÑÒÒÐÏÏÎÏÐÒÒÒÑÒÒÐÒÖÕØØ××ÖØÖÓÓÔÔÔÖ×ØÛÛÚÚÜÝÜÙÜààÝÝÝÔÇ¦nTWYI8>EFJQYajn{rk_SIZ¾×ÕÈ¾¼¹½ÅÏÓÒÐÍÌÊÈÇÈÈÆÉÉÌÍÍÍËÊËÊÄ¾½¾ÃÆÇÉÌÎÌÉÉÍÑÒÐÒÆ~,.-'&'(+3142226?6+1237656./06<EWq    ¢  ¢  lkkmnjhhigeihifgh``abc`^_[Y[\_hpx¡£¦§©««­¬­¬¯WKA2.29>8Carpc<[z}~~~~|}|}~}|~}~¢²§§¤¨©®©«­¤­²®²±®§­´°¹²¤µ¿¾¹»¸³¹¼¯³¾¿·¸À¼½ÃÄ¼½ÅÄ»ÁÇÆÂÃÅÃ¼¿¾º´½ÌÒÕÑÎÏÐÒÒÐÎÍÌÌÍÎÎÎËÌÎÑÕ×ÖÓÓÔÓÑÏÑÓÔÕÒÔÖÕÖØÙÚ×ÕÖ×ÕÕÙÜÕÛÜÙ×ÍªwiP@7;?CJS\fox|{o`WVw±ÏØÎÀ»¼³ÂÈÑÓÑÏÌÊÉÉÈÈÉÈÉÊÍÌÍÌÊÊÌËÂ¹¹¹½ÂÅÁËÏËÃÁÄËÏÎÓÐ8,*+%((*011.12.5617A:<88415=6;HVo¡¡  ¡ ¡¢¢  £ wikmkihgihhikkgffbcdededba[Z[`fhs|¡¦§©«­®­®¯®u[JH;10;B::Koqy~z{}|~~~|~}~|||{z|~~¦®¨­§¦©©©¤¬£ª¡¦°¯ª¤ª«¬­»°®¸½»¼¹¸¼¿»¶¸·´¹À¿¶¼ÄÀ¹ÀÄÁ¾ÄÅÃ¿ÆÅ¾¼À»µºÈÒÕÔÑÏÌÎÍÐÏÎÎÎÍÎÍÎÎÊËÍÏÕ×ØÔÑÏÍÍÌÐÒÕÔÓÓÔÕÖ×Ö×ÕÑÑÔÓÓØÛÖÖÙÚÝßÑ½®a;6;?FPW\iov{{sd]hÄ××Æ¼¾µ¶ÅÎÒÓÎÎËÇÆÈÉÉÈÇÉÊÌÌÌÍËÊÌÈ¾¶°°·»¾¾ÆËÄ»»½ÇÊÌÑÎ2&&%&((*//2/11,**)1@AB>563=938>Rk  £ ¡     hhihjjhhjkiigihbddeeddb`^][[]dhrw£¨­«©«­­®­e_E@A92(:89Ai{}{z}~~~|~~~||}{}¢ª¥«§¡ ©¤¡¬¡§§¢¤ª¬ ­ª¬²´³µ»¹¹·¯¶¼·µº½²³¾Ä¿¼ÀÀ¹½Â½¼¿ÅÁÁÃÆÀ¹¼»¶½ÇÏÓÕÓÒÐÐÑÐÏÌËËÌÍÎÎÏÎÌÍÓÑÒÔÖÒÐÍÍÎÐÒÒÑÒÒÓÓÕÖÖÔÔÒÐÑÕÕÕØÝÚ×ÝßßßÞÜÕÏ¾pH56AKOW`gqy} |shg»ÑØÏ¼¼½µÁËÒÑÐÍÊÇÇÇÇÉÉÇÈÊËÍËËÌËÌÍÈ¸µ­©®²µ»ÄÈ´®±¸ÀÄÅÍÓE$'%(''(-0005,23-.356E@623541;>Qj¤£ ¢£ ¡¢ ykkjggfikihkhefcbcacbca`__]Z[ados{£¦§ª««««­®StA2?F@0+4Sqy{|~zz~}}}}}~z|{{¦«§®¥ ¥¤£¢£©£ª¦¨¨¡¦ª¨³³®³¶¶º½´©¸»µ¶¹³¯¸¿¼ºÀÃ½¶ÁÃ»¼Á½ºÁÅÄº»»³¶ÅÐÓÔÔÓÐÎÐÒÐÑÏÍÌÉÊÉËÊËÎÓ×ÖÒÎÐÍÌÌÏÒÒÒÒÒÑÐÒÒÑÔÔÔÔÔÓÔÖ×Ù×ÛÝÜÝßáââááàÚÒ±hB;;AIOX\jqz }soz¨ÌÕÑÂµ¿¯¸ÈÏÒÑÎÍÊÆÈÉÈÉÉÈÇÈÉËËÊËÊËÎÇ¶®©¥¥¨°·ÂÀ¦©²ºÁÃÊÑ®G%&%(*+,,/..1/6:7.215><72/144:DTi££¡ £¢¡¡  £¡   ¡¡ llhggefijekecfedgeb_`ab_^\ZZ\cknu{~¢¦©«¬¬­­®CO34=I?>i|{yz|||{{|~~~~~~~|}||}|{¡ ¤ª¥£¥¦§¢©¬«£©®©®®¤«±²¹º¸³··´¸»µ¯µ¿À¼¼Â¾¾ÁÁº¼ÃÅ·¹ÈÅ½¸º·¶¾ÊÑÒÔÒÐÐÎÏÐÎÎÏÎÏÎÌÉÉÈÊÐ×ØÕÓÍÉÊËÎÐÑÒÓÒÑÒÒÔÏÌÏÓÔÖÕÕÖÖÖ×Ö×ÜÝÝÞßßàáãààÞÑ®{H7<DIPZcmt}x~¿×ÖÉº¾¿·ÁÍÓÒÏÌÌÉÇÈËÆÇÆÇÈÉÈÌÊÈÊËÍÍÅ±§¥¥££©²½·­¸»ÃÌ×Âc)#%()+-.001//0782/-2::62/1269FUl¢££¢¡¡ ¡¢£¡¡£¡ ¡¢££  ~jiihhghkifeabdefdaba`b__][ZYbfhox¤¥¬¬¬­­®Ay`844Pgxxz|yy{|~~}{yz~||~~}~~~~~~zz}~¡¡¢¨©­¦¡§²¦«©¬³¨«°®°·µ®±¹¯²»·¬±¿¾¿¾ÁÀº¾Ã¾¶¾ÅÂ·½Ã¿¹¸µ²¾ÉÐÑÎÐÎÎÎÎÎÍËÌÎÍÍÎËËÉËÑÔ××ÔÍÎËÍÎÐÒÑÐÎÐÑÒÓÓÏÊÌÓÓ×Ø×ÔÕÖØÕÕ×ÙÛÞÞÞÞßááàßÜÖµ}V@<DMVYgow~~¸Î×Ï¿ºÂ¸ºÇÑÓÐÍÌÌÈÇÈÈÄÄÆÈÉËÉËÌËËËÎÎÁ¯£ ¤°º¦¦µ¸ÁËÕÉ(%))+/2*12322675/,,0586210346>Pj¡¢£¥¡¢¡£¤¢  ¡¡£¡¡  ljlkhgkhjgggfggfebeebb``\[Zadbfmt|¥§««ª©«¬EpjD?]tqyxx{{yy}|zy{}||}~~}~~~~~~}~~}¡¡¥®£¦¡¡§¨¥§­²§¢¯³­µ¸²±µ¯¥²¿²¯¸¿¸¸¿¿¾¾À¾º»¿Ä¿ºÂÁ¸µ´±½ÉÐÓÔÐÍËÊËÐÏÎÍÍÎÎÌÍÊÈÈÍÒ×ÓÒÌÆÇËÎÐÒÓÒÑÏÏÐÐÒÐÎÌÎÏÎÐÕÓÑÔÖ×Ø×ÕÔÕ×ÛÞßààáàßßÛÏ·_EB@KO[ipz~°ÈÓÓÆ´½»±ÀÌÔÓÏËÌÊÈÇÈÉÃÄÇÇÉÊÊÉÍÌÌÌÎÎÁ¯¢¤²¹¥°´¹ÆÕÓ9%(--02.25461.//.--21669<3-/1AUi~¢££¢£¡ ¡¡¡¡ ¢¡¢¢¢¢¡¡¡¡   hgiijmifgiehggfedccbeda\ZZ\^]cipz ¦©ªª«ªªMiduxvquyxy|yy|||{{{||}~{}}|~}}~¦¡§¥ ¬­°¦¦±¬¯µ®°¸µ­¯¹º³¹¼¸¶¼¼¶»¿½¸½ÁÄÂ½ÀÅ¼±®¦³ÄÎÒÔÑÎÇÈÉËÎÏÐÏÑÏÌËÉÅÇÆÐÍÓÒËÅÅÈÉÎÏÏÐÒÑÏÐÐÎÐÐÏÐÏÌÊËÏÏÏÒÔÕ××ÕÔÔÓÕÚßßààßÝßàÜÓÃ|\HHJS_it|©ÅÔÕÊ¸¶À·¸ÇÐÓÑÎÌÌÊÉÉÇÇÅÅÅÆÊÉÈÉÉËÌÌÎÎ¼®¤§¶³¦®²µÂÓÓ5('&()-.477;4011--/5238:70..1@Tj}¡£¢£££¢ ¡¡¡¢£¢¢¡ ¡£¡       lhiiihhffifgjhfbfdcbbb_Z[]ZWXZcny}¤¥¨©¬««[J|rpsvwtpyxxzzy{{~}{{|~~}~}}~~}~~~~}||~}~¡¨¨¡¢£¦¡¤®¦«´­¥¯¯§·¶©¯º¹²´º¸·½¾¸µ¼½´µ½À¾¼ÂÃ¿¶²­¯½ÌÓÑÓÑÍÉÇÈÇÉÍÎÏÏÎËÉÇÉÌÊËÍËÉÅÇÉÉÊÍÎÎËÎÐÏÎÎÎÏÔÐÐÏÎÊÈÊÏÐÓÓÓÔÕÔÔÕÕÖ×ÙÚÛÞãààáàÜÖÌ·r[OMU]ov|ºÎÕÐÂ¹½»¸ÂÉÑÓÏÌÊÊÉÉÉÇÆÅÆÄÅÉÊËÊÊËËËÌÊ»ª¦¢­¹²{§¯°°¿ÓÚªO*(%+*/,/5620+-,+-.223;52/-,13Ih}£¤¥¤¤£  ¢ ¢¢£¢ ¡¢¢¢¢¢¢    ¡¡¡geiddghifkffdfeeea`bb]\]\\YUY`jqw¡£¦ªªª«fiqrnqtxvruxvz}~|{}}{}||~}|}~{~}~}~~~}}|}}¡¤§ ¦©¸«¢°°®´°¥«¹³°¶¹¶³¸¸°¶½¹²¹Á»²¸À¾µºÁ¿´­¬­½ÈÓÙÔÑÏÍÌÍÍÉÇÈÉËËÇÆÇÈÎÑÏÉÈÄÅÇÉÊÎÌÌÎÏÏÎËËÍÍÑÐÐÏÍÎÎÉÈËÏÒÓÓÒÒÓÒÒÔÕÖÕÖÖÖÙÝßàááßÜÚÓÈ°jRRUbnx}°ÇÓÑÇº¾Ã¹¾ÆÍÑÑÍÌÊÈÇÅÈÈÆÆÆÅÅÉÊËËÌËÌËËË¹©¢¦±»£©«¬³ÂÒ×¶R*''**-/113.3/)(,,-145523-**.3Fd|¢¥¥¤¤¤¡¡£¤¤££¤¡  ¡¢¡ £ £ ¡ ¡¡¡  ndffggegchffeeddfbcab`[\\[XWX^fls}¤¥¥¨«¬klntoorvxvvww{}{z}x{zz}z~}}}~~~~~|}|~~}}}~|~~|  £¥ ­µ©®³¨¯¸­©²²ª¶º²±·»¹µ½½³·¾¿¸½ÀÀ¹·¿Âº®«­ºÇÎÓ×ÖÓÎÎÍÎÏÎÌËÇÆÅÃÀÂÄÎÒÏÉÅÃÊÐÌÊÎÏÏÐÐÎÎÉÈÍÑÒÐÎÎÌÌËÈÊÌÌÊÏÐÒÒÒÏÑÑÒÔÓÓÔÔÔØØÜààßßÝÜÛÏÀ¦jRYjs{¡»ÌÒÊ½¶Â½ºÅËÐÏÍÍÌÊÉÈÇÇÇÅÃÄÇÇÉÊÊÉËÊÎËËË»ª¤«´µ¡©§¥­ÂÔÝÁ`*%'(',-2/,.410+0-*/33663,*((/CYw£¤¥£¤¤¢¢¤¤§¤¦£¡¡¢¡¢ ¤¤¢¡¡ ¡   ¡ ¢ fgdkkjffhcgecbcceg^_]^][]ZUW]agoy~£¥©¨«jkmqsnqtuvvwz{{vz|z{z|z|}~}~~}~~||~~~~|}~~}{{ £¢¬§§³²ª±¯£¬°¦¨·µª´¸·¶¼À³¬»½´³½Â¸°¼Á¼²¬ªµÉÏÒÓÓÒÏËËÌÏÍÊÊÉÈÅÂ¿¿ÇÉÈÍÍÅÄÇÌÏÎÎÎÍÏÏÑÑÎÊÊËÓÏÍÍËÈÇÊÍÏÎÌÌÎÍÐÓÓÑÐÏÏÒÐÒÓÓÔÖ×ØÛÞáàÞÝÜÛÖÏ¿wjkpwx±ÅÒÔÈ¿ÂÃ¹ÂÌÎÎÌÌËÊÊÉÈÇÈÇÅÃÄÅÇÉËÊÊËÌÍÉÊÎ·¦£«µ±£§¥¿ÒÛÇq&$%%$(,,,00.0/,+)(*.179/,,%'1BZs ¢£¤¢££¡£¢¤¦¢¢¡¡¢£¢¡¡¡¡¢£¢¡¢¢  ¡£     sccgiehhjigfc^c`fd`^^\\Y\\YX\`dgr|¢¤¦§ªiklnsosvusvwxxywy||{z~{{{x~}~||}{~~~~}~~y{y~   ¦¤¡¬¬©®²¨«®¤¡³¶²°¶·²¶À¿¶¶¼¸³¹¿¼´·¾¼±­ª±¿ÎÓÕÓÏÌÊÈÊÍÎÍÍÊÈÇÆÄÃÄÉÑÅÄÇÆÅÈËÍÌÏÎÏÏÎÌÐÏÍÎÌÌÍÍÌËÈÈËÍÏÎÍÍÎÊÍÐÒÓÑÑÑÑÑÐÐÐÑÑÔÕ×ÙÚÝÞÝÙÜÜÙÑÅ®£¿ËÔÊ¿ÃÇ¿ÂËÍÏÌËËÊÇÉÈÇÇÇÈÆÃÆÆÉÉËÌÌÍÌÏÊËË·££¬µ§¢§§¢¼ÒÜÑ{4%&##%*+-20.61-)))).648/...&-9Yt¢£¥¥£¥¥£¤£§§¤¤£ ¡£¡¡ ¢¡££¡¡¢¡      cdhhghggeedb_bccc`^``_^^\YXV[`ekv £¦§©ijkmnmpussuuuu{{{{{zxy|z{}~~~|~}|~{{}~z~~}|| ¡¦¡¬¦ª­¢£²¬£ª¶³³·¶´¶»¾·¸»º­·Á¿³µ¿¼±ª§«¼ÉÏÑÔÓÏÌËÍÑÒÎÎÍÊÈÇÇËÍÌÊËÇÂÇÉÊËÌÌÌÌÍÎÎÏÌÎÒÑÎÍÌÍÎÌÌÍÏÑÑÐÎÌÍÊÇÇÍÏÒÑÐÑÑÑÏËÍÎÏÎÏÓÖÖØØÙ×ÖØØÖÕÍÈ¿¹³¶«¡³ÆÎÊÀ»Ã¾½ÆËÏÏÊÈÉÈÈÈÇÇÇÇÈÆÆÇÈÉÈÉËËÍÎÍËÊÐ³¢¨°µ§¥¤¼ÐÜÓ2("!"$',,5.-12+()+./354/,**%+8Xw¢¤¥£ ¤¥¦¤¥¦¦¤£¤¡¡£££¢¡£¢¡¡¡¢¡¡   ¡¡ ¡¢wghiniigffdc`ae`dd`bc^ba][YYY]cgry¢¥§¨ijikklnooruquyxxyzyvx{}}~~|~~}}~~~~{~~}|~}~~~|~~£¢¥¦°©¦§¨­®¬µ¶²³¾À¸­ºÂ·¯½Ã¼³¼½²§¨§²ÄÏÔÕÓÎÊÈÌÐÔÔÑÏËÈÃÃÅÉÐÑÍÈÆÅÊËÌÍÎÏÍÌÍÍÌÌÎÏÐÑÌÌÎÎËÈËÏÓÓÓÓÒÒÑÎÊÉÍÏÑÐÊÊÌÌËËÎÐÐÌÍÏÒÔÒÑÔÓÓÕÖ×Ø×ÕÖÓÑÒÎÆº¬­ÁÌÑÁ½ÃÀ·ÁÉÎÎÍËÊÅÅÈÇÇÅÆÆÇÆÈÇÈÈÈÉËËËÎÎËËÌ·¢«¶°¥«§¾ÑÝÚ G& !#$',,0.-.6,)-263584.-+'&)2Tl¢¥¥¤¡¤¤¥¤¢¤§¥¤££¤¤¦¡££¥¡¡¢££¡¢¡  ¡¡¢¢£¡   igjljheiieeccedbd^`cddb^]VXX[`gjq| ¦§imjhlnnoortuttwtwyzz{|||{x{}~~~}~~}~~~~~}}~~}|}~  ¢§ £¨§­®©¯¹»°ºÀ»´¶½»µ¶ÁÃ»º¾¸£¯ÀÈÍÒ×ÔÍÉÈÍÑÒÏÎÎÊÈÅÃÄÅÌÑÏÉÆËÎÏÏÍÎÏÐÑÏÌÉËÎÏÐÐÌÌËÊÇÄÉÍÏÑÎÑÓÒÒÒÏÏÐÎÏÏËÊÉÈÉÊÐÒÒÏÏÎÎÐÎÏÑÑÒÓÔ×ÕÖÕÕÕ×ÙÙ×ÏÇ¹¦¢¼ÇÌÉ¸´À¸ºÄÊÐÏÎÊÅÀÃÆÇÈÉÈÇÅÅÇÈÉÈÆÊËÉÌÎÎÍÌÎ´¤­´«§£}~¥¼ÏÛÙ®A$"#$%&*-1.,,21)-42.4654.(((+9Qn¡£¤¤¢¢¢¤¤¢¢¥¨§¥¤¥¢£¢¢££¡¢£¢¢¡¢¥ ¡   ¡ ¢¡ ¡   zgihhiiifecdcecbc__c`_ee^ZYXY[egnw¤§fhmhlolmpqsttuwtuxz{||x|{|zxz~}z|}~}~}~}~~}|}|}{}}}z{~~~}~¢§¦¤¬±¨¬¶¶±¶¾¼°·¼¾µ¶½Ä¾½¿Âµ£¸ÆËÍÎÐÏÍËÌÓÕÑËÉÈÄÀÃÄÊÉÉÉÆÅÉÍÏÐÒÑÎÎÌÐÏÍËËÌÍÎÏÌËÈÅÆÉËÍÎÍÌÎÐÏÐÑÑÐÐÐÐÎÌËÊÉÊÍÐÑÐÏÌÌÎÏÎÏÏÐÑÏÏÒÔÕÔÔÓÓ××ÕÓÑÏÄ«´ÄÊÉ¾±¹½ºÂÇÎÒÏÌÊÂ¾ÄÇÇÇÈÇÇÅÅÇÈÉÊÈÊÍËÊÍÎÍÎÌ³¤¯±¢©zqt ºÔÛÝ¹V&%%#.*,.121+03(,*+-2<850-*+07Qk¡¢¥¤¢¤£¤££¡¢¦¥¤¤¤¡£¢££££££¢¡ ¡¢¡ ¡¢  ¢¡ ¢¢¡ jehiihgiebgfdbbe`_`__a`_^\YYZ_bjs}¦¦fhiknmkkmoprtxwuvwwz}{|{{~zx{}{y|}~{{~z|}~~}~~}~{{~}z{|}~~|}~~~}~¤£²¬¥°µ°±¾½±®¸¿¼²½ÀÃº¾À½³¨°ÃÍÏÏÍËÆÆÇÊÑÖÒÎÌÆÂ¿¿ÁÂÊÅÄÂÂÃÆÇÊÎÓÐÏÍÊËÏÏÍÌÌËÊÊÉÄÆÉËÌÍÎÎÎÎÎÍÎÎÏÎÏÏÎÌËÌÎÍÎÏÎÏÏÎËËÌÐÍÍÎÎÏÎÍÐÐÓÓÕÓÓÒÓÑÏÏÑÑÅ³¤ÅÍÑÈº·ÁÀÆÈÍÒÒÏÍÊÂ¿ÄÆÇÇÇÆÆÅÆÉÉÊÉÇÉÎÎÍÍÎÎÌÍ°¢¬­£¢jmuºÒÛÛ¾a%"%(40//.2/,,/12*)1279610,,1;Pj~£¤§¤¤¤¦¤¥£¤££££¢¢ ¢¢¢¢¢¤£¤¢¢¡¢££¡¡     ¡ ¢iigjgghdbbffbcda^aa``_^][]\XZaeny~£hikglnlmpqprvwuuuxzx|zzy}|zuz~zz}}}~{}}~{}~}}yy{~~||}}}}z|}~~~¤£ª¥¨¯±¬´¾¸ª²»½··½¼¹¶¾»®© ¤¶ÇÍÐÏÍÌÈÈÊËÊÎÍÌÈÃÂÅÊÄ¼ÀÃÆÊÊÇÃÅÄÆÈËÍÐÌËÏÏÏÍÌËÊÄ¿ÀÇÌËÊÌÍÍÎÎÍÎÐÎÌÌÎÍÍÌÊÌÎÏÐÑÐÌÊËÍÎÌÍÍÎÎÎÍËËÌÌÍÏÐÏÑÐÏÎÎÍÌÓÏÆ«²ÌÓÑÃ¼¿ÁÀÇÌÐÓÐÎÌÈÁÂÆÇÆÅÇÆÆÆÄÅÈÊÈÇÉÍÏÎÎÎÎÏÎ´¢°¥¡ d`iw ºÓÜÜÂa'"&&)/22001011-0/-2676772.158Ii~ ¤¤£¨¤§¦¥¤¥¢£¤££¢  ¢ ¢¦¥¤¢¡¡¡¡£¢¡ ¢¡ ¡¢¡nggiggfbdbedcfdd^__]_c_]\^[Y\^cfq|fejklmpnlprrqsrswwwvxzxv}{||}}|~}~}{}}}~{}~{||{{}}}~~~}|||}~}|}~~v §¡¤¯´­­¹Ãµµ»¼¶¹»¾³µº¼°£ °¾ÈÉÊÊÊÊÉÌÏÏÌÇÃÅÄ¾½ÄÍÌÂºÃËÐÑÏÎÌÊÉÈÆÅÊÏÏÎËÊÊËÌËÅ¾ÀÆÊÇÉÊÊËÌÍÍÎÏÎÎÍÍÊÉËÊÌÏÏÏÑÎÊÉÍÍÍÎÍÌÍÍÍÌÊÈÌÊÊËËÌÍÍÌËÍÎÌÍÏÍÁ¯ª¾ÑÐÉ¼¿ÄÁÂÇÍÒÓÐÍÊÃÁÂÅÆÇÈÈÇÆÇÄÆÇÉÈÈÉÌÏÎÏÏÒÑÐ³¥®¤r\\c{§ÃÓÙÙ¾^&$%$$,/1115431384212799675206Ie£¤£¤¤¥¦¨¦££¥¥¦¥¢  ¡¢¤£¡¤  ¡¡£¤£¡¡   ¢¢ ¡ gfkfggedhhbaabb____`b^``\^Z^Z_dowddikgjopnoqpqtqrttuuwwwxz||}}~~~~}}}~~}}}{}~|}~~~~}|z}{}~~~}{{}zz¤¤¬®©«²¸¸µº»³«¸º³¯¶½³£ª¿ÇÊÉÈÇÅÄÅÊÏÐÎÈÇÇÇÄÀÁÈÏÆÂÅËÍÏÐÐÐÏÎÏËÃ¾ÌÐÎÍÌÌÌÊÇÆÅÈÉÈÅÄÅÆÉÉÊÌÌÍÌÍÍÎÌËÉÈÏÐÐÏÎÊÈÊÌËËÍÌËÌËËÉÉÇÊÊÉÊÈÇÇÆÆÅÈËÉÈÊÌÉÁµ¨¶ÇÏËÂ¸¿ÃÂÃÊÐÑÐÏÎÉÄÃÃÄÆÉÈÇÇÇÆÅÆÆËÈÈÉËÌÏÏÏÑÏÍ°¨ªrhc^c{¯ÅÓÛÛ¹S+(#&(0+.1326030032234798:02/7Ng}¢¦¢¥¤¥££§¥¤¦¦¢ ¢¢¡¡¢£¤¤ ¢¡¢££¢¡¢£¡ ¡odffgcffifcdbac`acc``db`\\[YX[^ipxedeeeinpjmnnqqqxuvxzwvx|xu}zy}~}}~~{{|~~|~}|y{{~}|z{}~~}{|~~~{~~}y~~{}~¢§¨£¨®°¬²¾¸ª«·º¬°¹¿¬¹ÇËÍÍÍÊÇÄÆÈÊËÉÉÊÌÉÉÈÆÁ¿ÄÇËÈÅÆÊËÎÏÏÓÐÈÃÆÉÉÊÎÐÎÊÅÈÎÐÏÍËÉÇÇÇÈÇÇÈÊËÍÌÍÏÏÍÊÍÏÏÌÇÇÊÌÊÈÈÎÍÊËÌÉÆÄÅÄÆÆÆÆÆÆÃÂÁÃÂÂÄÅÅÇÈÆÀ³§­ÀÍÍÇÁÁÃÂÃÆÍÏÏÎÍËÆÄÄÄÆÆÈÇÅÆÈÉÈÇÇÊÊÈÉËÍÏÐÐÑÐË¯ ¬¢v^\Z_fyµÊÔÙØ°O&$#*+.0414,.04/,,6423;=@D@H7:Icz £¥¥§¦¥¢ §¤¢¢¤£¢£ ¢¡¢¤££¢ ¡¡¡  £¡¡¡¡¢¡¡¢   edfiecehfdbb`ddaabcbb``_]^ZU[_ciryifefdhjlmmnoqsqvwzxuxxwwwvzzu||{{~~~}~}~}~|zyy{}{}~~~}}~}~~}{~~~}|wy||¤©¦¢¤°©­¹¾±«µ·³¬²»»¨±ÅËÍÏÎÍËÉÉÊËÈÃÁÂÆÆÆÊÌÉÁ¼ÄËÍÌÉÆÃÅÇÌÐÒÏÎÌÈÉÉÉÊÊÉÅÄÉÐÒÑÏÏÎÎÌÊÊÇÄÂÆÇÍÊÌÎÐÏÍÎÌÇÇÇÉÌÌËÊÅÉÊÉÉÉÈÃÂÄÁÁÃÄÃÀÆÄÂ¿½»ºÀÂÀÀÃÇÆÄ»¾ÇÌÉ¿½ÆÇÁÅÊÎÎÎÌËÉÅÅÅÅÅÄÅÇÅÆÉÊÈÉÈÉÈÉÊÌÍÏÑÐÐÏÉ¬¢¯`QT`dl|´ÈÔÙØ¯G(((&+-0044000/-,)--04<>45<543@dx¢¦£§¦¤£¥¥¤£ £¢¤¥£¢¢¤¢¢£¢¡¡¢¡¢ £¡ ¡ ¤¢ ¡  ¡sdegifcefed`aebabbddcca^]]]ZY[`doy}hgfhffimlnoopttrsxutwuuzyvxzy{|z{~~~~}~|{~~~~{||{yy{{|}~~~~~~}~~~xty|y}{x{£«£¦«ª¥¬»º²±¶µ¬¯±½³¡ ½ÉÎÌÎÎËÉÊÊÎÍÉÆÄÀÁÃÃÈËÈÃÆËÌÌÌÌÌËÈÆÇÅÎÐÐÐÍÌÍËÊÈÄÅÇÈÊÌÎÎÏÏÍÍÍÌËÆÃÄÄÇËÍÎÐÐÍÉÆÅÈÊÍÍÍËÊÈÇÇÇÈÇÅÄÄÄÃÂÁÁ¿¿ÁÁÂ¿¼¹¶¼¾½¼»¿ÂÄÁÄÇÇ¼¯ºÄÅÄÆÌÏÎÌÊÊÇÅÄÅÅÃÃÇÇÇÇÈÊÈÉÉÊËËÌÌÎÐÐÐÑÏÉ©¤¤lQOT\fqµÇÒÖÒ£E)(+&)*04231/+-2/'.17=72437040@_u¡¦¦¥¤¦§¥¤¥¢£¢¡¡££¢¢¢££¢£¡¤¢¡£¤¡¡ ¢ ¡¢¢¡¡ ¡¡    ¡deekhedbaf_`ccccecgdccb_\]]YY]cls}ddeaefghilnqosrpqtuu{vuy{xwyz||{|}||}|~~~~}}}|{|~}|}||~~}|~ztvywz{z~|~|{¢§­¤¨­°«®´¶±°²°³«°ÅÎÎÌËÉÊËÍÏÐÏÌÉÈÅÅÅÆÈÆÀÃËÏÍÍËÊÌÍÎÑÌÄÄÆÊÌÏÌËÍËÅÃÉÎËÉÉÈÊËËËËÍËÉÈÆÅÆÄÉËÎÑÏËÂÁÅËËÊËËÊÊÈÉÉÉÈÇÅÄÅÄÅÄÃÁ½¹¼¼¿¾¼º¹º·ºº¹º¼¼ÂÇÇ¼¬®¾ÄÅÅÊÌÌÍËÉÈÄÃÃÅÄÁÄÇÈÈÈÇÇÆÇÉÊÉÊÌËÎÏÐÐÕÑÍ¬§{[QSY\hr¹ÈÓÕÕ¨B8=*+'025100.+-0-,/5528EA;4243<`u¡¥¤¥ª©§£¤¥¡¤¡¡¢¢£¤£§¢£££¤¦£¤¤¡ ¤¥¤¢£¢¤£¢¢   ¡   ¡  yfefgcabeea__abbbbbcbb]`_^[XXW]gozheecdceghkmrppqpstrsxyzxzyvy{}|z{|{z|~~}~~}|{}~}y|~|}}}~|}~}~zv|}vyx||}y{z ¡§¥ ª¯©¤­¶´¬²³¬¡³ÆÐÎËÉÉÉËÎÏÏÎÌÈÅÃÄÆÊÅÀÀÆÉÊËÍÎÍÌÍÎÎÎËÅÄÆÉÊÉÈÉÆÄÉÌÎÍÍÍÈÈÈÆÄÄÅÅÃÉÇÈÊÊÊÊÌÎÌÆÀÃÇÌÊÊÉÉÈÉÉÊÊÊÇÆÇÆÆÅÇÃÂÄÁ½¹·ºº½¼¼º¹¸º¼¹¸¼ÆÉÄ³¦´ÅÅÇÊÐÎÊÊÇÆÅÂÁÂÃÃÂÄÇÈÈÈÉÇÆÉÊÊÉËËÎÐÐÒÐÓÔÎ¯¨_PUY[^gv¨¹ÈÑÖÔ F/?,))/03211,.//+*,,.8>@A8/,21=Xq¤¦£¥¦¦§¢¢¤¡¡¢¢¢¤¢¡¡¢¡¡£¤£¦¢¢¢¢¢£¦£ ¡¡££¤    ddeifecbfdaccefcbddddbba`VUUT[cis}jjhffefillopopqortrtvxxxwx{|yz||}{{{|}~}~}{|}}|||~}{}~~}~{}}|}}~~~|zyzxy{}~w|z} ¤¥£¬¬¢§±»´¨´´§«¸ÄÌÌÉÆÃÅÊÎÎÍÊÇÆÅÃÄÅÄ¿½ÃÊÊÍÊËËËÌÍËËÌÎËÈÉËÌÊÇÃ½ÂÌÎÍÍÍÎÊÈÈÇÅÄÄÂÁÄÆÈÌÊËÎÍÌÇÄÁ½ÄÊËÌÊÈÅÈÈÊÉÉÇÆÉÅÈÄÆÄÄÃÁ¿¼¶´µº¾¾º·¶³¶¸¸ÀÌÅ·±¸¿ÄÆÈÌÏÍÊÇÅÃÁ¿ÁÁÂÃÃÄÇÈÈÉÉÇÇÈÊËËËËÍÐÑÐÒÒÓÎ«¢£tROU\d_fy®¾ÆÐ×Ò?'+)'*10211/++.*))*+/5::40)*/06Tm¡¥¦§¥¥§¥¤£¢¢¢£££¢¡ £¤¡¢¢¢¢¢¡¢¢¡££¤¢¤£¢¥£¡¡¡{cbffkdddbdfeegebfgfdcbc_XXXXZ^cmyfggfddegjikooqqnpprvvxywvtwyzy|}|{}{|~~}}{{~}{z}~~}||||}}|}~|~|yz|~}~yvxy|~|z¤ ¡¤¨¡ª³¶°´µ¯¡»ÅÉÉÉÉÆÃÁÄÆÉÊÈÆÂÂÄÆÄÀ»½ÃÉÊËÌÌÊÉÊÌËÌÌÌÈÇÇÇÊËÉÃÁÄÊÍÌÌÌÎÍÉÈÈÈÇÇÆÅÅÆÆÉÊËÊÉÁÁÃÄÃÃÅÇËËÈÅÈÊÉÉÈÇÆÆÅÆÄÄÃÆÃÀ¾½»¶³³¹½¼·µ³°¹ÁÆÆ¹¯¶À¾ÅÅÌÎÌÊÈÆ¾¾À¾¿ÁÂÅÄÄÇÈÉÊÉÇÉÉÊÊÊËÌÍÐÑÐÑÑÒÌ­£^MRYY__gz³¾ÃÎÕÉ9%')&*045316.,+,-,*+.1:9/,)+;35Ok¢§§§¦¦¨¦¤£¡¡¢£¥¤¡ ¢££¢¢¢¤¡£¢¤¢¡¡¤£¢¢¡¢¦££    bbgdddbecdedcbdddbfba`a`XUWSTZ_iu|heddffeeeglnnqmmnoqswyzxxxwy{y|wxw{}|z{{||~{|{z{{|{|{{z{||{~~{z|~}}}}yy}{z|zz~y£¢¢¢¬³­¬®´¦¨¾ÊÍÌÊÉÈÊÈÃÁÃÂÂÀ½¼ÁÆÂ¼¼ÁÅÆÅÆËËËÌÍËÍÍÎËÉÈÈÆÄÅÂÀÄÇÈÈÊËÊÎÍÈÆÇÉÈÉÈÈÉÉÊËÎÏÉ¿»ÁÅÄÇÅÆÇÊËÊÈÊÌÈÇÇÇÆÄÃÅÃÃÀÁÁ¿¾º¼¹¶²°²²³·´²ºÈÌ¿®®½ÃÃÅÈËÎÊÉÅÁ½»À½¾ÀÃÃÄÅÇÇÆÉÊÈÈÉÊÊÉÊËÌÏÑÐÑÒÒË«£¢hOSXZY_em¶¾ÅÍÔ·a-&&*-./314541.)),*()*07:4/)+156Og¢§¦¦§¥¨§¤¤¡¤££¥¤¢¡¢££¢ ¢¤¢¡¤¥  ¢  ¡¢¡¢¢¡¤¤£¡¢¢¡  ¢ ~gfdccbccdedbadcacfeba^][WTUQTZblt|mhbdjigfghlljkmqnpqquvz{xzxyzzz{wwz}~z{yx}{~~}~||{y}{~|~~~~~~~~{}}y{}|{{||ywy}~}}¡¥¨²¯¨±®¨³»ÃÇÈÊÈÊÎËÆÃÂÁ¿¾½¾¼»º»ÂÅÇÈÆÄÄÅÄËÌÌÎÎÌÊÊËÊÈÄÀ¾ÂÆÈÉÈÉÉÉËËÆÄÇÈÈÈÉÉËÊÍÏÎÌÃ¶»ÇÉÇÈÇÇÈÉÊËÇÉÊÉÇÄÄÃÁ¾½½¾¾½Á¾¼¼¹·¸µ­«©ª¬°¹ÂÌÈ³¤±¼ÃÃÆÌËËÉÇÄÀ½¾À½¾ÂÃÃÆÆÈÇÇÊÊÊÉÉÉÊÊËÌÍÏÒÒÒÒÐÅª§{YNU\^W^iw¥µ¾ÄÊÉF+&'(...322111.--,*(*0126332/,37Mdv¡¦¦§¨¦¦¨£¦£¤¢££¦« ¤¢¡¡¢   ¡¡¡  ¡¢¡¡£ ¡¡ ¡  ¡kceecdddbegefgedffccc_]\[UURRUValr|hgijicfefhihijmnoprttswvvxy{zxy}yyx{~y|xy|||}{~~}~~~~{}{}~~~}}y|{{ywz~}{wx}{zvt~|~yz§ ¬¬¤«´¬®ÀÃÁ¿ÀÁÀÅÈÆÅÃÃÃÂÁÂÃ½¯´½ÄÆÆÈÉÇÄÄÄÇÈÉÌÍÌÊËÌÊÇÀ»¿ÇÉÉÉÉÊËÊËÉÇÅÅÆÆÇÊÊÉÈÈÌÏÍµ¬¾ÇÉÇÉÇÇÉÈÈÈÆÄÆÇÇÅÃÀ¿½»¼½¼»¼¼½½¼´²³¯¨¥£¤«¾ËÈ¼¯ª¸¹ÁÄÉËÈÊÉÆÃÀ¿Á¾¿»ÂÄÄÆÇÉÊÊËÌËÉÈÈÊÊÍÌÍÏÑÓÓÔÒÀ¦¥¡fQKTW[Z\g}©µ¿ÇÄU5,'*,+,.534775-/3/02112157<20376Jat ¤¥¨ª¨¨¨¥¥¦¥£¤¤¥£¡¡       ¡   ££¢     xbcfadfgfehhjhgfgbcdc`]\[VYXQRS]envjefgjgfgfijmlpnlkosrsstuv{{ywz}|{y{{}{yzz}{zzyy|{z~~|{{{{}|z~}{~|zz{~~{w|{y{yxvxutx~~¢«¢¡³¶¨²ÀÄÄÂÁÁ¿À½½¹½¾¿¾ÂÆÃ·±¸¾ÄÆÅÇÇÇÇÆÈÉÈÅÅÇÆÆÉÌËÈ¾¾ÄÊÌÊÈÈÉËËËÉÈÆÆÆÆÆÇÇÆÇÁÂÃº¬°ÁÇÉÇÈÇÉÉÆÆÆÅÃÁÁÅÇÂÁÀ¿½½¿¾½¶´¸»»¶³²­§¥£¦³ÃÌÀ¶±º½ÀÄÈÉËÇÅÆÄÀÁÀÃ¾À¿ÂÆÅÇÇÉÉËËËÊÊÉÈÉËÌÌÌÏÑÓÔÕÔ¼¥y[RRUVY][j¢µºÄÌ¾n3,'(-.+-033458:0-21/1301584127/44H]p~~¦¦§¦§£¦§¥¥¥£¤¤¤¤¡¢£¢    ¡¢  ¢¡  ¢¢   kcdghehecfgjiiehdaad`^]^VXTPPSU]hu{hedchfhhgijkkmmkjorqrstwwxyyzyx{{wwy{|{|{wyzxyz||~|y}z}~|}~}~~zx|{wxzwzxxywvv}¤¨©µ³¡ªº¾¾¿ÀÅÆÆÄÀ½¼¼º¸¹¿Â¼¸·¾ÂÃÁ¿ÀÁ¿ÁÄÈÉÈÇÂÂÂÂÅÆÅ¿½ÁÅËÍÌÉÅÇÉÊÌÊÊÉÉÈÇÄÅÄÄÃÀ½² ¨ºÄÃÃÄÅÄÉÈÆÆÅÄÂÁ¾À»»¼¾½¾¾¿¼¼º¶³´¹¸·³ª££®ÀÊÆ¸®¶ÀÀÁÇÌÌÈÇÄÂ¾¼ÀÂÁ¿¿ÀÁÅÆÆÇÉÉÉÊÊÊËÊÉÈÌÍÌÌÎÑÓÔÕÓ·¢z\SUSW[[aft§¼ÀÆÈ¤Q**)+*,0034845750,15+/2./46400//5:DWl}~x}¤¨§¨§¥§¦¥¤¤¥¦¦§£¡£¥¤¡¢¢¡¢£    ¡ ¢ ¡  zceeifeecdfkchhddbchdaa]ZURMLLOXajvdcfcfdfffggkjlklmmqopstvtuvzuxwwxvxyxzz{z~}x{{yz||}~}~}}}}~~||}yy¤°}|yvyxz{xwwrxx{}vyzz}¦£ª¯¥{¼ÂÀ¾¼¼»ÁËÇÃÂÁ¿º·º¿¼±ºÁÄÆÃÁ¿¿À¾¾¿ÃÉÆÇÄÅÅÅÄÅÀ·¼ÄÇÉÉÊÈÅÅÅÅÇÊÊËÊÈÈÉÉÆÄÅÀºª¥¹ÃÀÂÂÄÅÅÅÅÄÃÃÃÃÃÂ¼···¸¼¼»»º»»¶³´³µ²¨ ¤¸ÉÊÀ³¶ÀÂÃÄÍÍÌÅÆÄÀº½ÁÂÀÁÁÁÃÅÆÇÆËËÊËËÊËÌÊÉÊÌÍÍÏÑÓÓÓÇ°jSPUVX[`ho«»ÅÆÅ9)*,/.-..6;611540,.1,,,+/14621022<ERh{~|z}£¦¨¨¤¤¦§§¥¤£¤¤£¤¤¥££¡££¢ ¢££  ¡ ¡ pigfddggfhifdjbcacd]^b[VPPMLKMQ[fsabgiffcgcfgjkljlhjknrrqtuttwyyxwxsuvxvwxwx||zz{z{}~|~|}~}~}~|~|}zz ¤{{xwvttzyuuxxwzzvu}~~} £¢¬­©ÁÅÄÂÂÃ¿»½½¿ÃÅÅÂÂÀ¾·µ¼ÅÅÉÇÇÆÅÃÅÃÀÂÅÄÃÄÆÅÆÄÂ¼ºÂÇÆÇÇÅÃÂÃÀ¿ÁÅÇÉÉÉÉÊÌÉÈÇÂµ§¶»½¾ÀÃÆÆÆÃÁÂÃÃÄÄÄÀ¾¸µ¸¹º»»·¶¸¹¶´­­®©¡®ÂÎÄ·±¼¿¾ÁÆÐÌÊÈÉÄ»¹ÀÁÁÀÂÅÄÄÅÇÈÊÊËËËËÉËÌËÉÉÌÏÎÏÑÓÓÍ¶ s_USVWR[co~¡²¾ÆÈÁy,%*.0/.0027563223.-.*,-0/3434/003?CRkw~w{¢¦¨§¦£¤¦¦¥¥¤¢¢£¤¤¤¤£¤£¤¤¢¢¡ ¡¡  ¡   {hgcbeffehijedcaabc\]]ZVVROLKKNVbpegkiheegefhijkjjlkmpqprtrutuwxwuwvusxwyzxy||}}||}|}~~{}}}{~~~}~~z|y|}~{xuz|zwy~}yvy}yyy~|x|ª«¥µÅÆÆÄÅÇÅÂ½·¸¼¼½¾ÂÄ¿¸¾ÀÀÁÄÇÅÇÉÈÉÆÃÃÄ¿ÀÁÂÃÃÀ»¸¿ÈÊÉÈÇÅÃ½½ººº½ÂÂÇÈÈÈÉÊËÊÈ·¡±»½¼¿ÂÄÅÄÄÁ½ÀÄÅÅÅÂÀ»¶³·¸¸¹¹¸¯°³³³­¥¡£¢£»ËÉ»²¹Á½ÁÆÌÎÊÈÇÆÂ¿¿ÀÁÁÂÂÃÃÃÅÈÉÊËÊÉÈÉÉÌËËÊÊËÍÎÐÑÕÐÃªx]ZXTWYX]gvª¸ÅÉÊÄp.*0//0-2545586.372,+,-.6+330572.7BCOfvy{¡¦¦¦¦¥¦¦¥£¤¤¢£¥¥§¥¥¥¥¤¢¥¡ ¡ qedecdffhiecbfbb`^]\[^TXTVQKHKQ\gghefffjeefhhjimiklnqppsrsvutvzywvxwy{yx{|{|}}{z}~~}z|}}|~~~~}~|}||~zx}{zzwxyrvzzw}zy}||}{x~{}}~w{y¡¨©¥¼ÄÅÅÅÆÆÆÇÂÀ¿¾º·µ¶¸¶½ÅÇÃÁÂÃÂÁÃÅÇÉÈÆÃÀ¿ÀÀÁÁ¼¶»ÄÆÇÇÈÆÆÅÂÀ¾¿¼¼½¾¿ÂÂÅÊÉËÊÅ´«¹Â¿¾ÂÆÄÁÀÃÀ½¾ÂÅÇÆÂ¾¹µ³¶¸¶¸º¹¶³¬©°²ª¡¶ÈÍÁ·µ¿ÁÂÄËÎÌÊÇÅÂ¿ÀÂÁÁÃÃÂÃÃÃÆÈÊÊËÊËÊËÊËÌÌËÊËËÍÏÑÓÉ²g[ZZXTY[bl¥±ÀÇÆÍ¾e,*+/-/-.7==4422875/,+*+/.1306212<EEOdt{|~¡¥¥§¦¨¥¤¤¥¤££¤¥¦¦¥¥££  ~bbfefdcdldcbdc_]\]]Z[WSPPOKGIPW`ihfedfgfddefjgjjiknkmqsstvuqtxyxvxxw{}|{zy}zz{z{|}~{}~}|~}~||~~{{yzy}{{zwx|xuwwv}{v{}{{|~ux}}|z~|}zx{¨¥¡°ÁÃÂÅÄÇÆÃÀÀÃÃÄÁÂ¾¸®²¿ÇÊÈÇÅÄÅÃÂ¿¾ÂÈÊÅÅÀ¾½¼¼¸¶»ÆÈÇÅÅÅÂÅÇÅÄÅÄÃÄÂÃÁ¾ÀÅÉÉÆ¶¦ ±»Á¾»¿ÀÀ»¼À¿½¼¾¿ÁÂÁ¾º·µ¶¹¹¹º¹·¹´¨¥ª«¡¥ÂÎÇ¶®¸½ÁÂÄÊÌËÇÆÁÁ¾¿ÁÁÀÃÄÂÂÅÆÇÉÊÉÊËÌÊÊÊËËÊÊÌÌÌÌÎÐÑ»jZ\]X\[^_bo®¸ÃÅÇÌ®P('(,-.0356:42/5:6220,,++-24243428CFQdu||}¡£££¥¥¤¥¥¥¤¡£¤¦¤¥¤¡¡qbcdafdcccbdca_]Z[\Z[XTPQQMIGIOXlgfefeffhgddhjhiimoppoqnruuutuxvyywwwyy~~zyxz||||{~|{|~|{}~{}~|}|xx{¡uox{xyyz~|vuutzxrx{|}~r|{zyzyz~|z}¦ §º¿¿ÁÅÈÉÆÁ½¼¾ÀÀÂÄÁ¶­¹ÃÆÇÅÆÆÆÈÈÆÀ»»ÀÂÂÃÄÄÁ¾¸·¼¾¿ÃÅÅÆÆÅÆÇÇÆÅÆÅÄÆÆÅÄÃÂÆÉÄ­¡³º¼½¼»º»·¸¾ÀÂÀ¿¿¾½»º¹¶³´´º¹¸¸¸·´¯©¡£¡´ÉÍÀ²²¼½ÁÆÌÌËÊÈÅÁÀ¾¾ÁÁÂÄÅÄÃÆÆÆÉÊÉÈËËÌÊÉËËÊÊÊÊÍÍÎÎÁ¢g^U\ZX\]_dn|¥±»ÁÂÅÆ@+'*+0.17897<96555310./--.-0158437<>Las~{zx¢¢¡££¥§¥¥¥¦¤¦¥££¡~c_efeedfbada]_\Z[[YYWTQQRNMIFJPhfjdidfihhffgfhiinmnpqpnprruuuwvwvwvux{}zzyy|}|{|}{}|{z||~~}|~|}~|~zy|³¤rgmmxyvuy|xsyyzwtv{~{wxx~}}z|­½ÂÁ¿ÀÄÉÉÅÁ»»À¿¿½´­±½ÀÄÃÃÄÄÅÅÆÆÄÁÁ¾½½»¼ÀÁ»¸¼ÄÆÃÁÂÁÁÃÃÅÇÅÅÄÄÃÂÄÅÈÆÉÇÄÆÀ¨§²º¾¾¾»³µ¹»¿ÄÆÂ¾À¼·³²±²¯±°µ¸¸¶µµ¶³«¡®ÄËÄ¹µ»ÁÂÆËÑÎËÉÅÃÀÀ¼½ÀÂÂÂÅÅÄÅÆÅÉÈÇÊÌÌËÉÉÊÊÊÊËËÌÎÏÇ¨lUW\^bV[]dly¬²»½ÀÈºi/))*'.1365258951286.142.*+*2677337;?H]p}{xv| ¡¡¢¥¤¤¤¤¢¢ ¡ uffgdeda_^^_[a][Z[ZZVTUTTPMJDGPiihfhfedgjgcfijhfjklnqqrssttxwxvxvuuxz~zy{{zz|{x{}~{{z|{|}~}{}~}}~~{|¯dYepvuuuz|vqtywvru~|}|u}xw~x~{}~|}¯µ¹¿ÂÃÂ¿ÂÂÁÀÀÂÂÀ·­¬·¾¿ÀÀÀÁÃÄÂÂÁÃÅÅÄÂÃ¾¾½¶¯¹ÁÇÉÉÆÄÂÀ½¼½À¿ÁÄÃÃÂÄÃÃÄÇËÈÇ»¦¤±¹¿½½»·´µ¹º½ÁÅÄÀ¾¼¸±°­©ª«®²µ¸¶¶´³°ª¥ ¸ËÅ·²¾º½ÃÈÏÎËÊÆÃÁÁ¿¼¾ÀÆÂÀÃÅÆÆÇÉËÈÇÊÌËÊÊÊÊÊËÍÌÌÊÍÌµl[VVX]^Z[bhs «²·»ÃÊ¯P+(,**.-22432375148710/.,*-,16890/6=DGWlxv~ ¢    ¢ hbehfca^Z[]_`^[[_[ZXUVXROMJFFJilfhgfehhhfdhffhghlkkooqrtrsyxxxyxyxvy}zyy}{{}}{{}{{|{}{|}{z|~|~|{{y{}ªc]`nruwvxxsmluqtvvwzvwy{yw}w~ws{}~~}¨±²±µ¿ÆÇÃ¼¶¸½ÁÃÃÁµ­³»ÂÁÀÀÀÂÃÂ¿ÁÂÃÃÂÃÃÄÃÂÀ´¯»ÅÈÈÈÇÆÇÆÂ½¼ÀÀÁÁÃÅÅÆÄÃÃÆÇÇÃµ©´¼¿Ã¾¸²µ¹½¾½¼½¿ÃÀÀ¿¹µ·³¯¬«¬««­³·³²®¦ ¬½Ì¼¬°·µ½ÄÌÏÎÉÆÃÀ¿Á¿½¿ÁÄÂ¿ÃÆÆÅÇÇÉÉÊÉÍÌËÊÊÊËÉËÍÍÌË¼n]UVXZ_]`aqx¤®³µ¼ÇÄ<)&,(-..2/5614544:4:7001-,.+1277426@AIXm|yzxbchdaa^\_^Z]`]\]\[ZVW[TPMLIEDijgffedecdfegbchihlklmmqrsrsuyyvxxvxyyz{{z~~{~~}}}||}z~z|}||}~}~~}{|zy|zz~»¡g`enpqsvvtnlpqqvutuxzu|{{~{vyyx|msw|x¡±±®±·ºº¾Ä¾»¹»¼»¹´¯²¶º»»¼ÀÅÆÃÂ¿¿ÂÄÂÀÂÂÄÃÃ¿²·ÁÈÇÆÆÆÆÉÈÆÂÂÄÄÂÃÄÇÉÉÇÇÇÇÈÅº¨©º¾½½·±¯µ»ÀÂÃÁ»¸»¼¼»µ´´±¬°±°°¬¥£¬¯°ª¤©ºÄÂ´°·¹µÁÈÍÍÊÅÄÁ¼½¿¿¿ÁÁÃÄÂÄÆÅÅÆÇÉÈÉÊÌÍÍËÇÊÍÌÍÎÍÌÁr[WTUVV[^cjv ¢¨®²´¿ÌÃn0'&'+),040355667:;451-.3/0-,16561/17?JZk~|~j`__^`b_]]]\_^[a\[ZYXVWRNMKHGijkjccdedcdcddihhhghoqoppprrqyxvwvvy{vz{z{|}z|~|}|}}~}}|{||}{|}}|{z{{y{zÀ¤wiprmnwvsqmmoquwwurxtl}|||zytxx|xv|}³º²±µ¼½·²»¹¸º¿ÁÀ¶¨§³¾Á½º»½ÀÃÃÄÂ½¾ÄÅÅÄÂÂÁ½¶¯½ÅÈÈÆÅÆÅÇÆÅÅÅÅÅÀ½ÁÅÈÊÈÉËÊÊÃ°¤°»¼ºº³±·»½¾ÀÁÁ¾»½º¶±±­­¦¦¥¬¬±´°¦¡®¥¤¤³ÃÅº­·¾½ÄÆÉÌÈÆÃÀ¸¶º¼¿ÀÁÁÂÃÄÄÈÆÅÆÇÈËÌÉÌÍÎÌËËÎÍÏÏÎÃv_VYXUSV]`do¥¨©¯±³ÀË³`+&($)*.00243347:B@31+++).3+-12671+0;=HYl}|x|z\\]]]`_\]`]^a_[\[Z[\XXTQPKIJehklidfffeffhjjfegggknnnnoqqstuwwvxyyxyzx{}|{|}{~|}{{{{}{}|}~}~||zxzvx{sloroqtuopmmpsvuvwrtpq}}zyzwtx{s}}~}ª»»·²µ¼À½¸´³µ±º¿º®¦«±·½¾½½¾ÀÁÃÂÁ½¸¹½ÃÆÆÅÁ¸­²¼ÂÄÄÆÇÇÆÄÂÁÅÅÃÄÁ¿½ÀÄÈÇÈÉÊÈ¾©§±¹¾»¨°³½¾¾¾¾¿¾½¾¿¼·³µµ²°­®­¨¨©µ¯£  ¬ÀÈ¼±²¸·¾ÆÈÉÊÈÄ¿¸µ¶¸º¿ÀÁÂÃÂÅÆÈÉÈÈÈÆËËÉËÍÍÌÉËÎÎÎÍÉ°vZXUVUVUXY^m|¢¨ª«®²·ÄÌ«L%'+'&,,0/3322554:?51/,./.0..0534414<ADSj{}i_baad]\^`^`^`c`\ZXZYYVSPKJJfhkledfggfgdehhdbehhggkonmqrvtuyywwzxuvyyxyzz|{||~||z~}{xxy{y}}~|||}zy}~zyytx|{znmrqtvtqnmjpprxwsrsuoy|xy{zyxozxo{~~y~·Ã¿º¹»¼¼½¿¶·¸¸¹µ«©¶»ºµµµ´·»¾ÂÂÁÀ¼¹·¶»»¼¹µ´»½¾½½ÂÃÇÈÄÃÃÅÅÃÅÃ¿º¼ÁÄÈÉÊÇÂ¶ª¬·¾¾·¦¨±¸½¼½¿¿½½½»¸µ¶¸¸¸·µ¸·´¯¥¥§ª¡¢¶ÇÆ±§·»¹ÂÉËÈÇÃÁº´µ·»¾ÂÀÃÄÅÅÆÇÇÈÈÉÉÇÉÊÉËÍÌËËËÍÍÏÌ´bVWXXXVSXZbw£§¦¨­´»ÊËG,'''*--02444:<::956110.../1,/320100;@CShu}~`^ageaa^bac`^dc^YUY[ZYXVNKIljjjgfgjebfcehgefeefhiklnmquustwxxxyxyzxuxxz}}}}}}{zz{}wxxyy||{|{||z|~xz{x}|||plmpotwrknjjoorwwtttss}|vuyyurzvoyw|zy}~{²¼ÂÄÃÄ¿»·µ¹»¼½À·¨¥°»ÃÀ»¹¶·¸¸º¼ÃÁÀÀÁ¾¼¼¹±©«¸ÀÁ¿¾½ÀÀÂÁ¿½ÁÃÂÂÂÁÀ¾¼¾¿ÃÅÆÂµ¯®´¹½¹²®¯±¸º¹º½¾¾¾¿»·³´¶´·µ´ºº¶³¯¡¡«¿È¿¨©¶ºÁÆÊËÅÃ¿ºµ´¸»¾ÁÃÁÃÅÅÆÆÇÇÈÈÉÊÇÆÈÈËÎÎÍÍËÎÐÎ¿hZSWZ[ZWV[ao ¢££¢§®µÁÎÂ}4'%'*.0..36558964>6752.-**+0/13741/068CMgz{k_aba^d_^`a_aa__]YX[VYUWQNPjhgcghggfdegehhfgeefhklklnqtsrtuvvwxzyzwuxxyy}~}}}yy{xwy|{y{z{||{|~~|{}zzz||vnqqosproljmpssuxursrx}|sqxvyzvtrvy~|~t||{¬¯¬ºÀÆÈÅ¿¶±º»½ÁÄ¹©±¹»º¹¹º¿½Á½¾¾½º¸º½¿ÁÂÀ¹­°»À¾º¼À½¿Á¿½¾¿½¼¼¼¾¿¾ÀÁÁ¿¹¹²­¬±´º»¶ººº·¸¹¸¸¸¹¹»¼º·µµµ³²²³¸¶´¯°©¢¹Ä¼­©²¸¿ÃÆÇÄÁ¾»¹¶¸º¼¾ÀÁÃÃÄÆÇÆÈÈÈÈÉÉÈÅÇÇËÌÎËÌÌÎÏÆh]]\YZZ[XZ_m~£¤¡¥¥¥©±¹ÇÏ´]*'('+.-.022114867:7576,,((,0/46641//75EQfz~}`bca`ed__aaa`ba^][[ZXTQPOQijhgfdehfefgfdeceggffjlkkmsrppmqww{yvx|{wwzyy|}y{}{uz|{xy{||{z{~{}~||{{|}{}}|yknsrsrpmggknswxzpqprz{|vvy{wvyrpvx}xv~~{~|£²³´·¹¿ÅÆ¿¼º½½À¿¿µ¯¹¿¾ºµ³·º»»¼¿ÃÁ¹º¹¹¹ºº½µ®ºÀ¿»´µ¶µ¸»¾¿¾Â¾¼½¼¼¼¿ÁÄÄ½±§£­±µ´»½»½½¾»¾¿¼¹¹¹¶¸¶²±°°±³µ³··²²®­§¨°ÂÇ´ª°¶ºÂÂÄÆÁ¾º¸·¹»º¾ÀÀÂÃÃÅÉÇÇÉÇÇÇÈÈÉÇÇÆËÎÍËËÎÐÌ®tZYZa]ZYXWap~¦¦ª¬§§­¶ÀËÊ E&(4+)+,-00.//2763674312+))02047611/234@Sevuecbafc``aabbaa][XYZVUQPOMhihffifeeegfjbfeffiffjqnnnnnopoqvxzyw|zzyz{|x|yz|zzyx|z{zyyzz}~|z{{{|{|||}{nnorrkinlklkrxs{ssov|xtuzzytuzpstw|~}}}|w|{§­°»Á½¹º¹·µ¾Ä¼ÁÀµ­±»Á¿½¸¸»½¼º´¸½»¹ºµ¶¸¶¸°£¨¶ÁÁ½¸¶¶µ³²º»½ÁÀ½¾À¿ÀÂÅÃÁ¹­§´·¸º½¿½¾¼»»¿ÃÀ½»¹¹¸´±¬¯®±³··µ³¶µ±­¦ £¼Å»­°¶®»ÇÄÅÃ¿¾»¹º»¾¼¾À¾ÁÄÄÅÈÇÇÇÆÈÉÇÈÈÈÅÄÉÑÎÍÌÎÎ¿`WZ]^\YXW[m¦§¥«­«©¯½ÄÍÉ;%&)()*+.000211385569542*)(,-0014310./.6Ocs~¡ gcbacbbbc_aabaaaZZZYWTRMOgffedfgdfeddeccdbdefgioqjoqoppotvuxxx{z}x{{wx}z{{zxwx{~{{{xvzyy|y|yyz|}{x{~yz~{mpptpklkiqokptyzvvmzyxuyx{ulttquuxy~x~}vyt §§ªµ¼¾¿½´±¯µ¹»Á¾«®¶º¼ºº¼»½ÀÂ¿¹¶±³´¹¶·µ´®¥¥­´º¾¾¼¶º»·¶¸¹¹º¸´·¹»¾ÁÂ¼·±£¯ººº¸»¾½»½¼¼¼ÀÁÀ¾¾¼»´±¯®¯¬¯°¶²³··±¬§ ¤³ÃÃ³¨·º¹ÃÈÉÇÃ»ºº»½¿¾½¿Â¿ÁÂÃÅÈÆÇÇÅÇÈÆÆÆÈÀÁÇÎÐÎÏÑÍ¦p_[Z[`_XY]i~¢£¦¦¤¦§®±²¾ÆÍ»v3%$%&+--136453204624873.-+%'(-.-061/+.28E\p~¢¡¡ ¡¢¡ }~eeac`_`ca`bc_`^[XYYWTTRPedceddeeddefjfeefgghifkonpqqqrquvuwzxxvxwyzzy~xxyyxxyyy|zzyxx{x{{zy||x|yyxuv¥³rqtspkmhhnmoqvzwwst{z{wzvxtqrotzz{zy~y{y{u¬²¯°µ¶µ¸»¶°®­²¹¹°¨°»¼»²´·¹¼ÀÃÄÀ¾½¸¶¸¾À½¹­¡¬¼¾½À¿¾º»º¹µ¹º¹µ°­­­±³¾¿¹­¦¢¨±¸µ³³³¶±µ¸º¸¹»¾¿¿¿½ºµ³³®¬¦¦¦¨ª®³µ¯ª¦¬¾Äº®®´·ÁÇËÉÅÀ¼º»»¿¿¿ÁÀÂÃÁÀÄÅÇÈÇÆÈÉÉÈÆÇÇÀÁÃÏÒÏÏÍÀcZ[\\ab]\f|¥¦¦§¥¥ª­²ºÀÆÌ§T.,*!$*,-.389722/56579972+,*&(,)-/540)-49E]r} ¢¡  ¡¡¤¢¤¥£¢¡£¨recfecgbaaadga__XYVTUURPcdcfgfefdgbbhhfedfffigjlooqoportsvxyywwvwxxyxyxwxxxyyywy{{|{z{}|zzx~|zx{{~x¨¹nrqolkiejnnvsvywuryzuxx{zs{ssxz}~}}|w{vro}´´¶»½»´¯¯¬¬¬­±¸±¤ª¶¶·¶µ¸¸»½½¿ÃÂÂÀ»¹¸¹¸¶«­º½½½¿À¿¿½¼»¼½º¶µ±®®¯³»½¾²§¦¯°®²µµ´±°²µ¸¹·º½¾¾¼º¸±±²°®ª¨£¥¤¢¨¯®§£¡¤·Å¾¯­µ±¼ÆËÌÈÃ»¾¼½½¿ÁÁ¿¾ÁÂÃÃÄÄÆÇÇÇÈÇÈÉÇÇÈÁÅÈÍÏÑÎÉ®od^```admz££¥£¥§§¨®´¼ÁÅ´v=)'$%'),/35783222:8;876500-/#)+(,3521*.38FZr|¢£¡¡ £¤¢ ¢¡¢¥££¦¦¥££¢¥¬ccfbdfda`ahga]\]ZVRRTUSggdffheghkgddeeieffdgijjnnoqrprussvxyvywyyzyvy~wxwuy|{xxzz{}|z{{|{||{||xxyxz¬qstmljmjlnpuvtwuqu{yytxy~sosotsz{x}~w}uiqo¨µ´·¼½Á¼²®ªªª©°¯¥ª¯±­®¬²»¿ÃÁ¾¹¸»¾Á¿¾»¹²ª¥¥®²´²³¸¼¾¾¾»»¿¼º¹¼¸´µµ³º»¿¶©¬³²´µº¹²¯±´³·¸·¹»¾¼º·´°°®¯¯«ª§ªª§¥¢§ª½È·¦­¬³¾ÆËËÉÃ¼¼º»¾ÀÁÁ¾¿ÂÂÂÄÄÂÆÈÇÇÇÅÈÇÅÆÉÈÈÊÎÍÐÌÀ{{|lid_eq¥§¦¦¥¥§§ª´¹¿ÆÉ;.+*0,*(/037655456:896853.4--+*+)-540-+.06FWm¢¥¢  ¢£¡£¡¡¢¢¥¤¤¢££¢¤¦¢¤¥¤¢¢¡¢©±µwbbaefeebfhee_ZZXYVRRSPljdfeeggglmigfefefgfffimmmmmqqsutswwwvvwwwwxwzywvxrx{{{zzyxzzx{|}~}{x{{{|zxzz}pqtokknpnqqvyvuvt{}wwtqv|qqjirrz{{|zzyzomq²µ²¸¿¿¾»µ¶¯°°³µ«¨²·´®©§©²¹ÀÄÃ½·³³µ·»º½·«¢¬³³²±°²µ¹¶´¯®¯±­¯·¸¹»¼··º¿²®±¶¶µ´º¼±«­­¯¯³¶¹º»»¹·³¯°®­®«©£¥ª­§¡°ÂÁ±±´°ººÇËÊÇÂ½»»½¾¿¿½¼¿ÁÁÂÃÃÄÆÇÇÇÆÇÈÆÆÆÌËÉÉÌÍËÀ¢{upjr¡¤¥§§¦¤¨«®³»ÁÇ¾u1'()0(')11478:97657<96832111,.))+.13.-.378DTp~¢¥¦¥¤¢£¡¢¢¡  ¢¤¢£¢¢¦¤¦¦¤¥¦££¢£¡¢  ¡¦¬³·¢bcdfdcgfd`bfb][ZXVTQROgdbceehfegggijeifgeeeghlmlkkmsxutsuvtvuvuutty{xzzzvuv{~y{zwwxy}yxwz{{{y}{{zzx|¥trnkjljronrwztust{|wssmwxtthjrp{v{z}}vmol¨¯µ¹ÁÂÀ½¹±²²±²·¸¥£­´´µ´°ª«³µµ¹¿À¼½·µ³³³°ª¤¨±µ¶µ²¯²··´²­«°®§§©­±¹¿»»¼·®²¶¸¸µµ·¹µ³´±±®­®³³¶¶¶³±°±¯¬®¯­£  £§¢¬½Áµ¬¸¼¼½¼ÃÆÇÅÁ¾½¿¿¾ÀÂ¿½¿¿ÀÃÄÄÅÇÅÆÆÄÆÆÆÇÉËÊÉÇËÌÆ¡}~ ¢¢¤¦¦¦¨©¬¯°²¹ÃÆ¢R*)0,*+*+02756;:3745457;:3..;4-.-)3020/2016AQk|£§¥¢££££¢¡¡   ¡¡¢¡¥¤£¥¤¥¦¨¦¥¤£¤¡¢¢¡¡~~¥­°¶¹¾ghfgekifeacc_^WVRSRSQhddfijhgcecigeefedaeffhkhkjnpswwsqqtsvtstuvuvxwyzwwutxzvwvvwzywvyz|zz|{|zz|{vsmoillmnpssysor{z{wqoqvxvkgqtxxs||v}~~}~pinu¡¢¤´ÄÆÂ¹¯¬­®®°¶®¦®´µ°³²­¬°¹½·°±²¶¶·»½»¹± «µ»¸·¶¶³³µ´´³±²³¯¬«¨¬¶¼¿Á¼°°¶·¶´±±°µ¶¸º¶µµ´¯°¯°¯°°°°¯®«­®­ª¤ «¸Ä»­­µ½ÂÃ¾ÃÃÅÅÂÀÀÁÂÁÂÃÁ¿À¾¿ÃÂÂÅÆÅÆÅÄÄÅÇÊÌËÈÇÇÊÆ°x]t  ¡£¥¥¦§§©©­°³´¼ÊÄ>+*,-+.*+0458748:;65698@92013-(1-+0134+--26>Rhz¢£££¢ ¢£¢¢¢£¢    ¢£¤§¢¡£¤¤£¢¢¥¢¢¡  ~¤©±´¸»½®jiggfhjhc_b`]\XWURRRRghhgidchehffeidhfefhffbmnlknnpqwsrrrvuzquxwxvwxvvstuvx}}yxwvvxxyyxxz{{}yy}z{}~xolploqnlmmrwsjp~yvusqxovukkortvw{~{vv}nfn¢§¡¦­¸ÂÄ¶¯ª«ª°¶²¥¨¸½½·²°¬±³º¿¾¹³´¶±®±³·¹±¢£³º½º··»µµ³´³²³µ½¶µ´°²¸¾¿½²­±µµ´³±²°³µ¸¹¹¸¹º¶µ´³¬¯¬¨©§¨©ª´®«¨¥ ²¿Á°§±³ÂÄÈÇÅÄÅÅÃÁÁÁÁÂÁÂÁ¿¾¿ÂÂÂÃÄÄÅÅÄÃÃÅÇÉÊÉÆÄÆÈ¾a[hz¡¤¤¡¥¥¨©««¬¬°µ¸ÃÊ­a1((**,.+*.326778:;:=9<<=751-.-++*+-134,+,-35Kdy £¤¥¥¢¡£¡£¢¡ ¢¡££¤¢¢¤¢¡£¡¡¡  ~¤«¯³·¸»½¾gfeacjha_`a]\XXTPOOQdfhfhgegjedgfihhhgnlggjkijnnllorqrupusvtuqrovtvtrqquutuvvwuwuxwxxxwzwz{y|}}z{~{tokljmmllozqwtmsuvrvttvprqmop{wvx{~{||zyzmjy«®«¬­­¸¿¹µ²¯²¹¾¯¥­´»»»·µ´¸»º·º¹º···µ³³³¯¤§·½¾½¹¸º·µ³¯««®°¸¸¸¸½½¿Â¾·°²´·¸¶¸·²²´¶¶¹»»»ºº»¸·±¯­«¦¦¦¦¥¨¨©«¦£¥¸Ç½¦¦­·¿ÀÈÉÆÃÂÃÂÂÂÂÁÂÀÁÀ¿¼ÁÄÁÃÂÂÃÅÆÂÃÃÇÉÆÅÈÄÄÆÁ©zdfbt¢£¦¢¡¥©©ª©­¬¬°¼ËÅD-)%(**+))+./249889<=;E=88;51.1.,+,,/54.)++/2@\t¡¤¦§¥¢ ¢¡¡ ¡¡   ¤¤££  ¡¡£ª®³¶·º»»½³gefffedb`]^\ZVQSONQQfddgfhlmlgdfeeggigghigdhfekmllmqpnqnrzstwtspsxwwssruvutxuwwvrwyyzy|{xvwzvx|}|}|umihgnpioquqqsmyyvruvvusriknryxyw~~{x||woo¥¬±°´·¯¬²²³²°µ½¹¥¥²·¶´´²¯´½À¼¶´µ¸¶µµµ¶µ´¯£±µ¶·¶º½¿¼¸´²®ª¬«®«°¶¼ÂÃ¿´´·º¾¼»¹´ª­±°±²·ºº¸ºº¸´²®®­ª©§¥¢£  ¦¦ ³¼Áµ­¬±À¿ÁÇÈÄÀ¿ÀÃÃÂÃÄÀ¿À¾¾½ÀÂÁÃÃÂÃÅÅÃÃÅÆÆÅÅÆÄÆÅ­sdhlhlqy¤£¢§¨ªªªª¬«³¿Ëµn5,.+*+,/-.021356669:869<88<53.,,.,--.452.*++-?Xo¤¦¥£¡¢¡¡   ¡¡ ¡¡¢ ¢¡  ©°´·¹¹¹¼¼»¼fghcbccc_\ZWTTSPPRRjhfkihlljjdhfdfgdeeeifeghhfhimmoqooprtstruwqrvwtssrvvvtwwvtxvxwxwzwxxwwxxz{~}yrmnlhlnopqsnmot{|ustvtnqndkquuu}y||~~{}zspv§¬°¶¹»°¥¦¤¦¦¨±¶°¨±²²±´°«°·½À½½··´°¯°´´±©£­±¯­««­²´··´¶µµ´²°®¬­²¸¹³­°²·»º¸µ­©®³±°°°²µ¶¹º¹¸µ²°­§¯­©¨¤¡  ­¼¾·®«®¹ÂÄÆÊÉÄ¿¿ÀÂÅÄÂÆÀ¿À½½ÀÀÀÂÄÁÀÂÃÄÃÃÃÅÅÅÈÆÉÇ¿ZUfmkibi|¤ ¨¨§§ª®±»ÅÂ¡U0+.---.32/0216644468889;<><6110,0.,+/4854*++-:Sj£¥¥¢   ¡¡¢¢       ¥­³µ¸»¼ºº¼¼º¹nffdcbb]^\[XUSPRNNOcffiggjhggeecggfghfikggikhhiiklloooqsssxrtytqqprwttuuuwuyywwwwvwrzz{zzzwvvy}}}~vplllmkkroprsomx||tuwwmhrlmsz{qqys~~xw{wzrpn¡¤­¹»µª¢¡¢¤¥©±¨¡§±¯¯«®°­¯·º´¶»½½¼º¶¶°µ²«¢¬µ¶³¯±®­­¬°¬ªª¬¯³¸·´±³´¶±¬¬­°´µµ±©«­²µ³²±­ª¬­³·¸¸·²­«§¬¬ª¨¥ ¤»Ç¾ª¥­³¿ÅÉÉÉÆÄÀÁÁÁÆÅÃÃÁÁÁ½»¿À¿ÂÃ¿¿ÂÂÃÂÃÂÃÆÅÈÈÊÂ¨rLM[hjidag¥¦¤¦«²¸ÁÇ¯yB,.-+.+-/+,268776668769?@<<>9,/0++**035882-))+8Si~¢¢¦£¢   ¢    ¦ª°´·º»¼¼ºººº½ddfcb_\\[[[XTUSRONgegkjggghfefbiifefegkggjmlkiiikmnmmonorsssqtoqmorutsuvtsvx{wuwuvvwzzyyyuvyx{{~ulfielhhmpsrsmpwxvtvsulnpptq|{twwzyuts~wppw£¢¤¬¶½¸ª¡ ®¶¤¢®¶¶´±®ª¨¯¹º´²´µ²µº·¹ºº·­ £°´´³¯¯¯°³²±±¯¬©¦§®³±³µ·¸´®°°²´³´«¢¥©¬­«¯±°¬¨¥¤­­±³®ª¦¦¨««¨¥¡¬ÀÇ»©£´¾ÅÌÎËÈÈÄ¾ÀÂÁÂÄÄÂÁÃÁ¾¾À¿¾Á¿¿ÀÁÀÃÁÂÃÄÅÆÆÉÈ¸XQOUYbvqkfmy£¦ª®µ¿ÇÃT4)+)+-+*--+16;;866:848?CD<;962-+,(+/245666,*+2<Tk¡£¤¥¤¢ ¡¢¢¡¡¢£«±´·¹»½½½½¼»¼¼¼sddbb]YYYWXVTTRQSOgffhgeehifggdkjgeffeeffjkhikjhllqknmloomqrqsqrrpsttrqtvxuvyvtrxyyyzzyyyvw{y|vkhhfjmjnqpqrntwxsstwspro|yowuywv~}yuis|tqs¨¨¨°¶¹³ª¤¤£ ¡´¯¢¬¶¸¸µ±¯««°¶°²°±³²²²°±·½¹«£­´²®«ª¬«­¯®­°´°­©¦¨¤¦§­«¬­ª­±²µµ´«£«¨ªªª®®§ª°©¦¨¨¥£¦£ ¡  ¡£¦¢´ÁÂ´«©¶ÂÃËÎÇÆÆÂ¾¾¾ÁÃÅÄÁÂÄÃ¿ÁÁ¿¾¾¾ÀÀÀÁÅÄÄÃÂÅÅÅÆÀ£jeabbbajswudjz¢«³¹ÇÉ°l;0*''+1+)+,.17:8965:=79:>>=<;73/,-./01164560(+26Lk¡£¡£¤¢¡¡¦¡¡¡   ¢ª¯µ¹»»¼¾¿¾½½»»½½ge`a\ZYXZXRTUUTTQfcddgiffgehjcffeggfcc`bgigjkhhnjkllhjonopprqoqqqprvtrrsuvyxvxuxvux|y~wwv{{zxz{snjkkiomknqrpntuvssuxpqppuzyxqzryz{mqxtmlu¡¨¬¯´¶´®©¦¤¤¦®³¤£²¶¶·¶²°¯®³¹¬©¬¬­°´¶³°®®¬¢¥´¸µ¯«¯®¯°±«§¬®®©©ªª¦¥©¬ª¥§§©©¯­ª©¥¦®®«­­­¯¤¡§­¬ª«¦¡ ¡«½Á·¬§¨»Á½ÃÆÅÅÆÀ¾¿¿ÂÃÅÂÂÂÃÁÀÂ¿¾À¾¿ÁÁÀÂÃÃÃÄÅÅÆÅÁ©aCWhrtogfqu{vrokx¡¬·½Æ»Q4.+*(,.*(+--./259:7<;98:>:=AC5010-/,.0/47842+++5Nj}£¢¡££¡ £¡   ¢ §¯´·º½½½½¾½½½¼¼¼¼½zdb^_\[WYUSTUTSQQccehhjfgheefhfehheecaacfkfdghgdhilmjghlrpprpqnnmqrttsrttwxxuwvvzxwzxyvuv|{yzx}}qolnjgkolmprnptuvrvzrkrqxw{zuvvs}}~xovtgal ¬¬®²´²¯«§§¦¥®¶­§´¶µ¶µ°´¶ºº¶®¨­¬¨«°²´¶´ª§µ¹³¯«¯±²²²­¬°°­©¨§«¨¦­®«©ª®¬«°°¤£¬­¯­®®­±«£ ¦¨«¬«¦¥¡¢¥¢²Â¾«­¦ª»½º¿ÄÄÆÅÂÁÁÀÃÂÂÀÁÃÁ¿ÁÃÀ¿¾½ÀÀ¿ÂÁ¿ÂÄÆÇÇÆÃ¶C8Hj~xmim|yvjjt¡®¸À¿¥nB0)(%)-,)'+-,-/.23579876==;>@;63/,,++-1-5342.+)*2Jfz£¢ ¢¤¢¢¢ ¡¡¥«±¶·¸¾¾½»¼¼¾¾¼¼½½½§ec\^\ZZWXUYTPPLSbbbefhhhhfa`feeecchdbcbfgefeghgihiiigjmooqssvkqvtspspqvvyywvywvz}yxy{uxy{}}||~~zqnlgmimrqprooptvwvtvmnzwzxyxqzwx}~ysoyoehr¤§­¶¹±­ª¨¦¡¤¥°±¤¡­µ´³µ´°°¸»¾½µ¯°­ª«¯­¬®­¦§²±°®®±²±±³®¬®°°®­«¯«©«§¢¤§©©ª¬¬£©¬«­¯±¯«²«§¤¡£ £¡£§££¥©§¢§ºÅ´¤¦¦¯½¾¿ÁÃÅÅÂ¿ÀÁÁÀÁÂÂÄÃÀÂÃÂ¾¾¾¿ÁÀ¿ÀÀÁÂÃÅÆÈÇ¾T1/<Vu}okq|~~tjdw¬¹¾®fG2(&((**('*+0./134656<78;;9@??9321--,.0/23550,*.3@[u¡¡¢¤¡  ¡¡£ª°´¹»½½¿½»½½¾¾¼½¾¼½¿`^[[YZZYURQPQPX`abdegjhhfabcdgafcbbddhfcbegggihekhiimnpnttutpswttoqqstssuuw{xvy~xzzzz{xy~|z{}zroqjimnossoswsosuxurunptzwsxvwwux~~|~yosvjgjx¡¤©´¹¶­¨££¡¥ª³ª¡­´´´³°²­­µ¹º¼»µ³µ³µ¶³²¬§¡®³¶³²²±±³²°­«­¯°®«­®«©«¤ ¤¥©¡ ¡¦§©ª¨«®°­©¥©£§¦¡ £¦¥£±¿¿«£¨µÀÃÄÄÂÇÅÂÀÀÁÀÁÀÁÄÅÁÀÂÀÀ¼»½ÂÁ¾¿ÁÁÃÁÁÃÅÈÇ´{JA8;DTw}tmr{vngn|­´²nY?-'&&'(&',-/..06879863=76;<<>:550-,)--/214891--.<Wp¢¡ ¡ ¨®´¸º¾¿½½¼¼½½¼½»¼¼¼½¾¬]ZZ[_f`VUUQLLNP[ceeceeffghb_eeacda`dahgefejhhhffjhkkoloppqrqnprrrootrorusquzxzxxyyyyz{yz|}zokliilnnqonmpsqssvrvvuomvtrquyoxwx{yz~pq|skin ¢©³¸¶«¤¡£¤ª²±¡ ®¹º¸¸³±°²µ±¨¯±°±µ½ÀÁ½»²§¡®¯°°®±²¶µ¸³³®®°®®­«­«©«­¨£¥¨©©£¦¥¤§¦¥¦¯±®«§£§ª©¨§ ¢¹½´§¢¤°¹ÆÉÇÄÂÅÅÂÀ½À¾À¿ÁÃÁ½ÃÀ½¿¿º¼À¿ÀÁÁÂÁÂÂÆÇÈ»OS`XLCBQdswssvyrrw¦ª¡wpdO61-*)*((-10+./234258477<A@>A>6310,*/..03661..,->\u¢¡¡  ¦¬²¸º½¾¿¿¾¾½½¼¼¼¼½¾¼¿¿ÀWZ\]g`WUSPNOLMXdccdceddddcdgfbdedbaaeecefdhlhbefijkkilmnpoopqrrsvqrqrrvtvz}yvvw{vwyxyzz{y|zpirjglprqpqlmnststsytyrprstlwtrxvyqx}}w|olis¥¡¤ª°³±©¡¡©µ­¢©°³··¹¶º¹º²¬©©§¤¬²º¼½»µ«¥¬¬«¦¥¦©¥«®­¯­²µ²¯°®¬­¬¯²°©ª­®ª£§««¨ª§£¤¨­±«¢¢¤¤§ª¤¤¡¡ ¯Á¹¢£»ÂÈËÈÂÂÂÃÃÀÀÀÁ¿¾Á¿½¾ÁÀ»½¾»¾À¿¿ÁÂÂÁÄÅÆÆÅ¤R9Nbli\NJIVdp~{w{|}{{¡zsjV<1.+&*+,.1/-11112356969;????:5502/..0/06762-)+0D`t~ ¢ ª±¶¹½¿À¿¿¿¿¾¾¼»½¿¼¼½¾¿Àµ^\[ZZX[WRNNKIJ]ae_^afc``ccbbb`baadd`dbcffceefcfjjkjknnmlnsqpqqtvusoorqxyv|zwwwwyywxzz~{yz}wmlnkknpyqoprpkoorsvttwprttrswvw{w||ryz~~}{ujmi¨­­®¯®©£¨±£¦­°««­¯¯µ»¹²²®¬©«±´´±±²¯£¤±²¯®§¨©§§¦©¤§¤§¬®±°¯¦§¥©¬­ª«¬© ¢¡§«©©ª¬¬«¤£¦¦¦¨§¦¢¤ £££ºÃ°¬¼ÂÆÇÆÂÂ¾¿ÁÁÁÀÁ½½¿¼½À¿¿¿¾½½Â¿¿¾¾ÁÂÂÄÆÇÅº~=5I`mpnofb_^P\w}|~wm\>-+0**.0//+/010228=5588:?A@><850/-.03336752-(,7HYs~¡    §®¶»¼¿ÀÀ¿¾¿¿¿¿¼¼¼¼½¿¾½¿ÁÂXWUTWZWRNMPJF\_`_^``_aacddcbbbcaabbdd_dffdbcdeijkjknlllmqpopnrvrqrsqvwxtwwzzzyy|wxwx{|xy{sjkklklptttoqpopsrrwrrpopqqqtqu{z{yry}{~y}rnjq£¦¨°´µ°¨¤£¤©«¬®ªª«¬«®¯¬©ª«§ª«¶¹¼·²¬¢«µµ³²°¯­¬°¯¬©ª¦¤¦««¨  ¡¥¦£¥¨¨§¤ §¤ªª­©©¡¦¦¢ ¤¥¥¡¦¾¹ §¶½ÄÆÆÄÄÃÀ¿ÁÀÂÂ¾»¼¾º¼¿½½À¾½¼¼½¿¾¾ÂÀÁÃÄÂ¾ P():P_klonfb`\^dmtcE5.,,-2-+../-33468655::9;?CB<:<3.*+/1029620+),3:Pm~    ¢¬³¹½¿ÁÀÁÀ¿¿¿¾½¼»»¼¿¿¾¾ÀÁÁÁ`VTTURSQLMLLL[\_a``_a``bab^_`bbabbbehdabgebghkeghhilklmljmpsprspouwpwuruvywvvxyyvyyxvwuv|~slkjjjkmkppnnoqorpmnqqlposnlrnszz~z{~~z~zzxpoew¦ª«¯±²¯ª¦¥¤§®ª¤«¬«©­®¯±°¨¨¦¢¥¨«®µ»®¡­¯¯­®­¯¯°²³¶³³°«ª©¥¢ ¢£¢£ ¤¨¤¦¦ £¡ ª¨¥¡¤±Â¯£²¾ÃÇÈÆÃÄÃÁÂÁÀÀÀ¾¾º¶º¼¾º¼¾¾¿¾¼¾¿½¿ÂÂÂÅÃÀ½6),19GTX`d_^_Y`qkry|oR641.1/,,--1,034564968==;>@A@:941--..,/4542,)+08Lh{¢¢¡ ¡¨±·º¼ÀÂÁÁ¿¾½¾¼»º»º¼ÀÀ¿¿ÀÂÅÆVSUQOMMNMMLJW\]`b`^`aaehc`]^cdcddbccbcegecffhafeikijmlljknttv}spqqrrsvwsvzxwxvwww{{xxxy{}{qpnjkktqjknnnlomnnmjsrpvtuorppxxz~}{xu|~|pnfa¨ª¬®°®¨¢¢ ¦°¶¦­³­¬ª­±²··§¨ª¨¦¤¨©¤¢ ¢££¨²°¬«¦¦¨®®®°´¶´¶´²­ª¤£¤¤¡¤©©ª¡££ ¤§¦¤¢ ¢¤¦©  ecznw¬¼¸¡«¿ÅÇÉÈÆÄÄÃÀÁÀ¿ÀÀÀÀ¸´»½½¼¼½¾¿À¾¾¾ÀÀÁÂÁÄÀ¾­l667=@FHCNVVae_chd[McyvV8277.(-),..,1;75579999;<<>@B@75510---/8775/*+12Hct¡£¥£¡¤®¶»¾¿ÁÁÀÀ¾¾¾¿½¼¼¼¼½¿¿¿ÀÂÃÈÉÈgPSROPQNNKHJX[\^ab`efcge`a`_cd_`bbb``cefece`abfgijiijlmoomssutspptrqquxtuvvyxvxz{x{zxzz{{ttqnlmqulnomlkmnmtqrtvurrolpot{t{|w~~{||~}~}tmlfe£ª¯±®¨£ ¤±³§®±­«­®±±²±­ª¥¤§«°´³°¥¡®³±±­¨§©«­¬¬°²°³³±¯¨¢§ª¨¢¤§ªª   ¡ª©©§¤¥¨¥ p?<;;CW¸Ã®¶ÄÈÊÊÇÄÃÄÄÁ¾½¿½¾Á¾·¸»¼¹»¾½¾¿¾¾¾¼½ÀÁÁÁÁ¾·ZFGNZ^_aX\UX_jhkcUOIEMfxX<03-+/-+/5656;;568:9;:8<@?=@=9=95021.14561/+*,6H_t~¤¤¢£ ¡¬´º½ÀÂÂÁÁÀ¿¾¿¿¾¼½¼¼¾¾ÀÂÂÅÄÇÉÉ TVRMNMKKLGHTZ^_b`__b``__^\_ac_afdedbd`cdcdb_eihghgelimnpsrmqrrsrrrrqtyrtuwywuwzytx{yy||ysrrqrprqqsnmoqopoopupsoopnoqsvyu{yx~{}zv~xkoqix¡«°®¦ ¨°¤ª³±±«¬¯±²®¦¥¨¥£¦©¬´¶·±°¢¬¶¼²´­©©§ª«­¬®®¯¬«§§¢¢¦©ª¦§ª©¢¦ª©¦¥¦©¬©¨¨¢§¬§¢nedT@/(*Mp¨ÁÅ¤¬¿ÇÌÍÊÆÃÄÅÄÂ¿¿¾¼¾¿»»»¼»¸º»»¿½½¿¾½¼¿ÂÂÂÁ¼¨uRNILX[edpowtssmeWTQRSFF[ta@1/-./*)/8@711969868<=<<<?B@C:3150225651471.*,8G]p}~¢  ¢ ¡§±¹¾ÀÃÄÃÃÂÀ¾¾¿¿¾½½½¼¾ÀÁÃÃÅÆÇÊÊÊsSQONKLGHIJW`a[Z]\Z]`_^b_]_``abdccbddbdfbddacfcdmfhnnnopmomppqqpq{utstutvxwyyyyyutwxx{~vswtpruuvttnnrqpuonpqlooqrqurxyxyyw}~pt~~{rlqml¢§ª¢ ¢±®¤«®®­«¬±´´¬¥¥§¦¥§£¦®¯°²®§¨¯¶¶²­°¯¬­®¬¬§¬¬«¨£¡¢¢¤¥¦§££«¨¨¥¥§¥¤¦¦¦¥§§¥£uyr`H)#/F{¬Á·¶ÆÉËËÇÃÂÂÅÃÂÀ¿¼¾½½¸¸»»¹¹»ºº½½¿ÁÁ¿¾ÀÀÂÃ¿¶q][QLKKGDHXdu}nXUSSYQH7Nh~tL3/.0/-,..44113467:88;>;8<=<>854211/324443-1+09G[q¡¢ ¡¡¢­·½¿ÂÃÄÃÂÃÁÀ¿¿¾¾¾¾¾½¾À¿ÃÅÅÆÈÊÊË¬PPSQKKJHIOXc[XTX[X\__^^^]`_a`abbcebbacdabbadegehfeiknnnlnnnpqoqpqttqrwuvxx{|xx{zwxzz||ysutpomostwtponpspkmpkpqqmrsvvtuzsw||}sr~{{omskt £¢¡£§ ³¨¥«®¯«©­±´³®«§§¨¢§§§§¢¡©¦ ¥¤¨¬§£¨­®´²°±²±°­«§¢¡ ¡£¢¦¤¢¡¢¡¤££¤¢¢ |q{~xdF*#(8r¯»¡¼ÉÇÃÉÃÁÁÁÂÁ¿¾¾½¾¾½»¹º´·º»»¼¼¾À¿¾º¼¿ÀÃÃµ¯taTRPPILIJH[ijswqcV^UQGFSe V9,-0/4/5/642344869;;7=87::>;36,/200//0464/.+-3CTl|¢¤¢¥¯¸¾ÁÄÄÄÄÃÂÁÀ¿Á¾¿¾¾¼¼¾ÀÁÃÅÇÈÉÊÊÊË{ROKKKLLJJZ\WTVU\Z^_^^]a]^`aabagdga_`bdd`ccddgefihhjimnmnprsqqrrqsurpruww{zzxx{zz|{}~zqppmllmortstsrsrulmprrvpmsuxyxxut~|w|huy~yqnhk©©«©©¥¡§ª¯®««¯µ³¦ªª¨¨ª­¯°®¬¤ ¦©¦¤¢ ¢¦­¬«®«±¬®­¬­¯©§¥£¥¡©¬°«¥¤ ¢¢¢¤¢¡¡SCROM<*'+I´±¥»ÅÄÁÁ¾½¿¾ÀÁÀ¾½¼½¿¹¼¹·¶¹º·»»¼¿¾½¼º½¼¾Á¾µ®®¦¢{lb][]Y\RIE<<=_nna\WYJLQMcz £¢oH0,02750*/.3433566@><<<:79=;962.+-32//2676-).2<Oex¡ ¡  «²º¿ÂÄÅÆÅÄÃÂÁÀÀ¿¾¿¿¾¿¿ÀÂÄÇËÉÊÌÌËË¶OLLJIMLJGOSYXWX[]Z]]]]```ccegb`bda`]beebceeafighijkmoloomruussrqsttttrwwwxyxuzzzzz|||qmmpkimnnptwsttrrpnqnqrnrx|{wzwtx~||}qk|{yvqpgk¢¦¬±²ª¡¡¦¦§©®³¶±©ª©¦¦©­±±²·³¥¢¤²²°«©¤¢    ¡ £¤¥¦¦¦³¯¯­­ª¢¤¦©«§¡¢¦¡ £¤¢£dF;1-.,%$/c¶«±¸»Á¼º¹¸¹¼À¿¾¾¼¼¼¼»»¸µ·»¹·¹»¼¾º¾¾¼¾½½º¼¸µ¸´­¤uia[YXWVPE9326?KbbdWMMOK[¦¢}\=/5:;60+-037716659967599<<><72.-/24244=71,,0+4Nas~ ¤®µ»ÀÃÄÆÄÄÃÂÁÁÁÀÁ¿¿¾½¾ÀÂÄÄÉÌËÌÌÌÌÌËKLKNMHIJORUTTUWW[]\\]`ccchhejdadddaaeddcbddeffghijhlpopmpqqprprstutuuxxuuwvxwuwywwz|tjklliklmlsurrqqnqoroqroqwztx~wsyy||~vgmx|suogo ©«§   ¨±µ²®­©¥§«°¶´³·µ­¥ª±³°¯«¨¦§¥¦¢¡£¡  §¢¥­«   ¡£££ ¢¢¡|fVMD>:3-+'%+A|µ´¢¥º¹·¼¹·¹¸µ½¿¾¼»º»»¸º»¶µ¸¸·´¸»½¼¼ÁÁ¿¿¾½¸¹½¿¾½´­¤zod^XVSNHKC9,&/@Qh^TMIGIc¦§ xN34:74793-39:659468888:9<>E=8410.75674496/-007G\m¨±¹½ÂÄÄÅÅÅÅÃÂÁÂÁÀÀÀÀÀÁÁÄÅÅÉËÍÍËÊÌËÊ½PJKKIILINRQPRTWX[_[a_^bgecchneadhefaccddfdddefghijinonnoponrsqrqssprtvwwuvvwtvwxxwz}qkilmfdghhmnonqromoprsstpuupxzrx{uy}}w}kkxvw}wpjk{¨§¡¦¢¦£  ¤§¥¨ª®²·¶¶´²¬¢ °±±±°«¥¨§¦¦§©¨¨§£ ¢£  ££¢ ¡£qmU70012--,'+Deµª³À¿½º»¸¶µ¶º¼¾¾»»¹¸¸º¹µ´¸¶¸º¼½½»ÀÁÀÀÀ½¼µ¸ÀÂÀ½ºµ®¤xkb\VLIIA;4,)'2HPQSRL<Fk ¯­nP93105B><558>7:9:<>>><>@@A==7611621256:31-+-2BZk}   ¡£¬´º¾ÁÅÅÄÅÅÃÁÁÂÂÃÁÁÀÂÁ¿ÁÆÆÇÉÊÌÎÌÌËÊÉÊMNMNILKMLPSQUXY\][]a`hic`aa`eccfdbcedbbfeeccghhggfjmnmmoroopvvrtutstvwxutrvwxzyvy|smmqlgdgjdknqmnpnhsnrrrtovpnyuqwunz|}txynxxt}||kco¡  £¢¥¨¥¤¤ª¤£§­­¯¬©¨¤ªµ²°°¯¨§ª¨§ª¨ªª©ª¤¢ ¡¡£¥¥¥¢¢¢¥ ¡¡ttike^VC5,+/*+))Dl©´ ¾ÄÃÀ¹µ±³³·¼»¹¼¸¹ºµ´¸µ²µ´´´¸½¿¼»¾¿¿¾¼»¸²¹À¿ÁÂÀ¸µ²ªzme`^ZOF>81-,-05FVSMDBMk¦©§kJ;55231/-268668==?<<????<::6//0280233454/+,/<Qh ¤¯·¼ÀÅÇÆÄÄÃÃÄÂÁÂÃÁÁÂÁÁÀÃÇÈÉËÌÌÍÌÌÊÊÊÉÈ^SMGJLMKNSQRSUZ]\YZaaffcce_dedcbddafdbdfhecdgggfcdjkjklmiltpvttussttwvuutwxxxwyxy{vmlnicbhiikoroltpknlpopolnhoxryvorz}~z{ys|qp|~sv{rfbt¡¢¡¡£~¢¢£¤£ª¯£¤¦¦£¢£®³³µ°¯¤ªªª¨©¨¨­ª«¥¢£¤¥¥ªª©¡¦¦¨¤¢j`QFI5*,-/3''Bº«{«ÂÅÄ¾·²²±²¹»»º¸¶¶µ²³²±³±¬²µµ¹½»¾À¾¼¾º·µ¶ºÁ¿ÁÂ¿¾»¼¹®¤}od^cROH=3.1.)(2DSPOK@Oh¤©©|aC7936/+.36867799<98B?CB?=<500/0520/25531.-.7Kdx| ¡¡§±º½ÁÅÅÆÃÃÄÄÅÃÁÁÁ¿ÁÃÃÂÂÆÇËËÍÌÌÍËÊÊÊÉÈÈOOKNKLHKNMORTZU\[Z]_dbdb`cgfab`bccdbbecgfeegefgfgijlknqjlpppqssssssststuvxz{|xyxy~ukh_gffeenkqrlkqqohkrpokkierutzupys}~}}ru}xpw~u}zn_h}¡£¢ {¢¢ ¢¢£ª«¡¡ ¡¦«®¯¬¦¦¡¯¯­­©§¤¦©¨ª«©§¥¦¥ ¡£¤¥¦¨ª¨ ¢¤¢¦¢¢~]\GA:=3)'*?A&$=r¬¿¡uv±¿ÄÃ»¶±³³¶»º¹¹µ··²°´±±²­©®²³µº¼¿¾½¼½·°µ»¿ÂÃÅÇÆÆÄÁÁ»±§{la^WOI=3.-+*&)/DGLJFC?Y¤«¡jVD:620./4686898;<89<>CB@?<621/+3214527324216D]r¨³º¾ÂÅÅÅÃÃÃÄÅÃÁÁÁÁÂÃÂÃÄÇÇÊÌÌÌËÍÌÊÊÉÇÇÈÊhONOLLHGMORTWYVY[\]^daaa``aca`d`_eb`dfdbcdgdbdiggkkjjlmloormptsssttrrsuvvzvxytuw{ztofbihkifglpmkknmqmnqrlknjlolx}wzzt|yt{ynp{|||i\g ¡¡ ¥¬«¢¢  ¤¤¨¯­­®«¤¢¯­©§¥¢¤¤££§©©©¥¢¡¢¢ ¥§©££¥¤¢¢¢¡¢££|aSOD=320'$'.&"%F~±¶qv¶¿Ã¿¹´°²´µº¹¹·µ¶³³²³²´³®¬°«®³¸º»½¹¹¹µ²¶ºÀÅÆÈÊÉÇÄÁÃÀ¸¯¢mb]TOJ<1)(-/-.39BFKLAAX§¥t_TE/-0141153::7899<::?<?>974/0//005789541116=Vn~  ¬·»¾ÁÃÅÄÄÃÂÃÄÃÃÃÂÁÂÁÃÄÆÉÉÍÍÍÍÍÌÌËÈÈÉÊÉÊ¡JMOMNJFHOOSU[VVX[a_^]cd`^a^d`hc`ccadbc`aaeeeceedjllniillloqowpswwtqrtsxustz|svw{xqgdfehkllelmkknlppqprqlqrnqnmxwv|wrzuyvqx~tb_p¦}§¡ ¤§«®«¨©¨¥¥©­ª¥£¢£¢¡ £§¨¥ ¤¢¥¦ ¡£¦¢¥£¦§¤t]UND=63.('#!#"!!+]²£o|¤¹¾ÀÀ¶´³²³´µ¸½·¶µ²²³²±³²¯³³¯±°¹¹»»º¸¶³¹¼»¿ÃÄÅÈÉÇÅÂÄÁ½¶­ {nbXTUF8-&'+---08?EJNB._¤£¤§~gg\A-*20(368=:2649;:;?;C>995211/21129:774623=Qn|  ¡­¶¼¿ÁÃÄÃÂÂÂÂÂÀÂÂÁÂÂÁÃÆÈÊËÌÍÎÎÏÌÍËÉÉÉÉÊËÍqOOQPMGFNMQUVW\X\`\^cdd_acaddffdcgaaabccbgddddfejkmnkkmmnnsoqrsxwuvtsqrwttxzwwx{~sgdffghomgikmlkijlqrqojwsturtssv|st~}zx|zqt}~}{jaf}¢}¢ £¨®²±¬¨¤£¨¬®®«¨§¤¢£¥¦¢ ¡¢¦¦§¨¦©¤   ¡ugbXEIA>92--'(&!# $>x¬²wt­·¿¿¾¸µ¶³±´¶¸¸¶µµµ²°°¯°°°³¹±´±µ¹»¸ºµ´¶º½ÀÁÃÁÃÅÆÅÅÇÆÂ¾¶±©£ti]XTPC3+&&(*,*-05;DJB@\§¤§©ybpE0-55.,.3677:=?>:?A>DH?;32/./651056;<787;>Ni|¡ ¡ ¦°¸¾ÀÁÂÃÃÀÁÁÁÁÁÂÃÂÂÂÂÄÆÇÉÌÏÐÐÐÏÎÎÌËÉÉÊÊÊÍ¯OPRNKHEGLQTTWWWZ^_^dfebcc`bbdcgcafffhfhedacfegdhjjijjjpqqvpstvyutuupvwwtuwxuut{ ¨whccbhjlcillimomjjqtpompqsvtyrsxtpv~|vyupky~~|}{lek¤§¡~¡¡¢ ¢«¨ª­²´µ²°©¡®°¯±­ª§©ªª¬®¦¡¡¡¡¤¤|z©££¢¢mih\THcaJ@JMC=1,-)+&#'T¶¬s|·º½¿»µ³¶³³µ¶¸¸¸²´¶µ°­®­°³³´³²µ²·º¹·µ¸»½ºÀÂÃÂÂÂÄÄÆÉÇÈÃ¼·­¨~rg]Y[NB4*%"%&&(),19JVBBl¬¥¨©kgV84B:-++27=:9:<99;BCLIE<31.0+2-.-1678656:@Md{¡¡¢¢©²¸½ÁÁÂÁÂÁÁÁÀÁÂÃÁÂÂÂÃÄÇÉÊÌÏÐÑÑÎÎÍÎÌÊËÍËËÍÎ|OPPQMFHKOPRWW[X^b_]dlb`c`a^\`fc^dgjkgdcdadfdbeihhhijjmmommorvyzrqutxvuuwsstrrz¦À|jc`fhpofjjkikorrrsvoiqorsrwxuxwls}zu|uos|~~{w}xgfx¥¢ x¤®¬  ¤¥ª³¯°­£¢«¯°¯¬©¥§«©®²°¨¡¡¢ubXNq¡¡vq^fgZFHSjaC<@\RI710*)%(&6g«º~r¯À½¾À»¸¶³±´¶¸¸·¹µ´¶²®­¬«®³¶´³³¸µ·ºº²µ½½ÀÂÀÄÃÄÃÃÄÄÅÆÄÇÅÀ½¸±¨pg_XXN@2+((*'&')/0>MQG=n¡¦¨ª©_cD6<<6.2:<F@:819:;CFGDA757130./0.47686036<Ney¢¤©¥¨³¹¾ÀÂÂÀÁÁÁÁÀÁÂÂÁÂÂÂÃÇÈÉËÌÐÐÐÑÐÏÍÍÍÌÍÌÌÍÎÍ¸RSPQHHGGIOQUW]VX^^_fjc`^bc^abcba`fjhgedfedbebeiiihdimkknpqorxutqqqruuvwustrrry¥º£ob]ecggihgijmkmrtu{qmrrtpovptyqmx}|}}znr{zs{~wv|zpgl}y£¦¡ £¢¥§«©¤£¡¥§¨²°§£taaYMHvocnpozuk\US_uf<9:LUP<6C30+1'#6Q´±~x»ÄÀ¿¾¹º·±°´³µµ²³·³´±¯°¬¨¬³·´²µ¸´µ¹¶µ¼ÀÀ¿Á¿ÃÄÄÅÆÅÅÆÅÅÅÂÃÃ¿¸°§ph_^SK>4/-,%##&)*2=NTDHo ¨¨­¥|`QC/58248<DGB<7<><>DEAA647870023033355-018EYt   ¨¢£®¶»¿ÁÂÂÀÀÀÀÀÁÃÁÁÀÁÂÂÄÇÈËÌÎÐÑÑÑÑÐÍÌÍÎÏÎÍÌÍÎÎPOOLMGEJPRSTUUW[]bca]a`fmdbedfc_eihhdeddcdfecejhhfhijlooprrsttqsttuuuywtpprpxÁªueebbgehcfiieijnostrtspvstrmszlr~|~}}xkszvq}zruxvlio¢¦§¤¦©ªª§¢£~zz|ssldW`dmcgnrx{wdVRSkz]<;:?DUB1.-,"$%'?c¸¤{¤¾ÇÂ¾»¶¹¶°²¶¹´¹³°µ´´¯¯®©§¬±µ¶¸µµµ´¶·º¿ÀÀ¿ÀÀÁÄÆÆÄÄÆÅÄÅÉÅÆÆÃ¾·±ª¢qf`]VJ974,%!"&&-1:GR=H}¦ªªp[V:.7<25;ME=?E><9>>EB;752/22002731752.*+48Tn ¢­¶½ÀÂÁÂÂÁÁÁÁÀÀÀÂÂÁÂÄÄÇÉËÌÎÐÐÐÐÐÐÏÎÍÎÎÎÏÎÏÏÏÄVRRMLKHIMRPRUVVY^a_```cfhe]d``cbdjffdheec`dgdfjkiehhkjmnnoppsustvuwvwyxuprlor½·xdidijihegdhjknmlolmtqonqwrrsrn|~~vw|zvv{zwvsovwrlktu~¥¤£ ¡£¤¢¡£££¡~z|vnnoyxruwjP=CVtvM<DMEHU[2/'"  "'Fu¤¬¯ÂÆÃ¿¸¶µ²®²µ´´¶²±¶´´®­«¥§«±µ¶¹¸µ¸´µ¸¿ÀÀÁÀÂÁÁÅÆÄÄÃÊÊÆÆÊÊÉËÇÆ¿¹³ª~thcZPE93.&""#'(()+6KNKNw¡ª¬«t`Q56F9:;?>;=:;<8:>?=;:6/,-1122534674.'(+2Gg¢­¶¼ÀÃÃÃÃÁÁÂÁÀÀÀ¿ÂÁÂÄÆÈÊÍÎÏÐÐÐÐÏÐÐÏÎÏÏÏÏÏÎÎÎÏTXPHLGILPQT[XVX]\[_^]`acdbbb`d_chhief_dbabdffhjgcdgkilnmlmoqtuuustvwuxynonosÁÆ©hddhnljggijlnmkolkrtsollrtztjp~~|ty~wx}{x}xsqvytrjk¡z¡£¦££~wk\G<EfrP?HLJ<KZlU0# "%I³§~¡¸ÃÅÄ¾´µµ®®²²´³µ°²´¶¶²®¨¥¨¬±´·¶¹¶µ²´¼ÄÂ¾ÁÁÃÅÄÄÆÅÅÆÊÉÉËËÌËÌËËÆ¾º¶¨ti]PMC;2*'$"&(+,-29R]H^£«­§h\D;BC52=?9628>99<@?=:531,-7811545740+'%-@^w¡§°¶¼ÀÄÅÄÂÁÁÁÀ¿¾¿ÁÂÂÃÄÇÉËÍÎÐÐÐÏÏÎÐÏÎÏÎÏÏÎÍÎÍÍÍÌc[UNKIIJLLSWVVY[]\`^_abbbbdccefeeehfgbcaabb`eghefgkjhkmmlnpttttsutyuqsqrpprnºÆ®p`bbigfgchlinmjngiuxupmkkr}skv|z~{s}{ttz{{{~z~st{tqop|§¦£  ¢}~£¡ zkUSH@BYve9EWJ:.3Giw:'! -[¹|¨¾ÄÆÄ¾·³³°³±³´´´²´··¶³¬¨©«¬±²·µµµ³²º¿ÆÅÁÁÅÄÆÃÂÃÄÆÅÆÇÌÌÊÌÍÏÐÏÈÆÄ½³©sgZSND:1,(%'(((&+.<S]Q^¦­­¡hNEHG<7>ACB8:=A<=CF?<7763.0155312164.'&(9Ws¦³¹½ÂÄÄÃÂÂÁÁÀ¾¿ÁÁÁÂÃÆÈÊÍÍÍÏÐÏÐÏÍÎÎÎÎÎÏÏÐÎÏÍÍÍÍd[QIIKLNPRSSU[[]____`acb`decheafhfffacdedcbbehfhhjgklmmmnpssstsvvvsqrssommp¸Íµ}jbbgiefcghiponmeiry|togeqwnpvzy}}yz|uqwyxx}{rx{utsszv~¢¥ª¨¦¥£¡ y¢¦¤¤¤wwiOG@77EqoG@VN77,5F]sV&"!!=u£«zw³¿ÄÆÅ¾»µ¶³³²°¶µ³´··¶·²­©­­¬­±µ´±°°µ¾ÂÆÇÇÁÃÄÄÃÂÂÃÆÇÈÉËÍÎÎÏÑÒÑÎÌÈÃ¾µ©~odVWNC92,),)(('&)2@XMPm«°°}^ICA:=<CGEA7?A>@AC@?=3260-02/2./4751*))6Sp¥°º¼ÀÃÃÂÁÁÁÁÁ¾ÀÀÀÁÂÅÈÉËÍÎÎÏÎÏÐÏÌÍÍÎÍÎÎÎÑÐÐÏÎÏÎÍf^WQKGKIMLRWWYZ^a__`^`bb_acchgcadbcd]^cgeefcghgfihgmllmpnopprsrqtvpnstqojjo¼Íº¡k^afijediihkoplgjnvztqecrynuvx}|xx~uio|{vx~~tr{ysrrtyw©  ¢¢¨©§£rz¤¦¦¦¦¤wnQDD<68Tx]?Pa?3@=8/?wt-#!(Q®¢{¹¼ÃÅÅÀ½ºµ´µ¶´·´±µ·¶°¶²«ª¯°¬¨®¯°°®¯·ÃÂÅÇÇÄÂÃÃÄÄÁÄÆÇËËÌÎÐÑÑÑÓÓÑÏÊÆÂ½´¦yj_\WMB91/--++)'(-3DTHLq®²§{^C9434;=EJ>CHH@=?DAB711+/.00/.27673.+.8Om¦²º¾ÁÃÃÃÁÁ¿ÀÁÁÁÁ¿¿ÂÆÈÊÌÍÏÎÎÎÎÎÎÍÍÍÎÎÍÍÏÏÎÏÐÏÏÏÍkd]WOIKDGMQVWXXZ^^^][`a__a_bghe`aaefe`gfedefjfigfhihklnmkinnnnrrqsqrtvrmikpºÒÂ§oc`aeiefihglplfjkntpsnZdquvx{{xw{zpgt~{|vmswtrsoqy{¡¨©¦ br¤¨¥¦ ¢hMLA>AC^sKOdN4>MM6'+Zk@/)3k¯~ª´¸ÁÃÄÁ¿¼¸¸¶µ¶·±­´´¶µ²°ª¬¯±®¬­°­¬«´¼¾¿ÂÆÈÇÅÆÆÇÆÇÅÊÈÊËÍÑÔÒÐÑÐÑÓÑÎÊÃÃ¾²¥xgb^RNF;4-.*)'(().3JMJV§²²pXE48-37:@G>@B><<CD>912/0010.7885821-/5Oi|}§³»½ÁÃÄÄÂ¿¿ÀÀÁÀÀÀÁÃÇÉËÎÎÏÏÏÎÌÌÍËÌÎÍÍÎÎÏÏÏÏÐÐÏÎÎqnbZTQKIFKOSVXYY\Y[]^^]_^cgbbee``_efddghcdfcfdfedggkklnnkjqrppsurrstuqlmnik{²ÎÇ±ukgaa`diifhhllikkopnqd\hqwst{yx}xno|~~|~~xomxysttnw|y`a¨©¨¦¥£lWV[:2LSjTLozE:DQS:'-9{GQ=)Gª°uµ¼¹ÁÀÁ¿½»»¹¸²µ³°±³²´¹±®¬­®±®®®±«§ª¶¿ÀÂÃÇÊËÈÆÉÇÆÇÇÊÊËÌÍÑÒÑÑÑÏÏÔÔÐËÈÈÄ»°£wpe\XMG@7/*&%)('*2?KD7b©³­x]A640759NGA:;?;>B;82100060-3733602--6Kcy|}¨²½¾ÁÃÃÂÂÁÁ¿¿À¿¿ÂÃÄÆÊÌÎÐÏÐÐÏÎÌËËÍÎÌÎÏÏÏÏÐÐÏÎÎÎÏune\VQKLLKJOUUUX[[]]]a`_]`ed^bdaa`ddc`bbdgebdfeeeeehhijmmnoqmruutrttsnqmmihw§ÓÊµrkfb]ehecedklikmsrpm]bpqtsow}zs}sgr|{yz{~}zsjq|{xwto{~ ¦£ vpmjhkeTNr¢u[MRV:BWksQ`yxH@V^J3"&3dg^]2Z­¡x£½ÃÁÂ¿½¿½¼½¹µ´µ°°³³³³³¯«°­­¯¯­¯¯©¡­¹¾ÃÃÂÆÉÊÉÆÇÇÇÈÇÊÊÌÎÎÏÏÐÑÓÐÒÔÔÐÎÎËÇÁº®xi`[XSK;3+'&()*+.2<GB=h ¸µ¤sS3:2642>IL27?>>?:633/0012/1-3720/+,7Hav|ª³»¿ÂÄÂÂÂÂÀ¿ÀÁ¿ÀÁÂÃÆÉËÐÐÐÑÐÏÎÌÊÌÌËÌÎÏÏÐÑÑÐÏÏÐÎÎyrk^XSOJKKINSVYXY\[]`a``^_ba__becbe`cfcbbadehlgdgefghjikmlntssqqsorqqnmlkjem¦ÐÐ¸zoiccdcccjggfijnqrpeYhsqxuotqpsvmguywz{}}qlvz{ywqr¢z ¡ xnc]`_[PQJFAW~dSLMMHThmRk}nRKcS=8+"-]tMUPr«zªÂÆÅÃÀ½À½¼¼¸µ´´±²²±³´±¯«¯°®®¬­¯­¦¦´¾ÃÄÅÂÅÇÈÈÉÆÈÇÈÈÈÊÊÊÏÏÎÍÐÑÑÒÓÓÑÐÐÏÌÇÂº­wg]`YRF:/*&(&+,**1EX3Ez©¸²£jK=:9375>F>7>B@A:75/.-002023450.-.08FZsª³»ÀÂÃÂÃÂÁ¿¿¿ÀÀÁÁÂÂÆÉÌÏÏÐÐÏÍÎÌËËÍÎËÎÎÏÏÐÑÑÐÐÏÎÍ{uodYTPJHJNNQUZWY]ZZ__``_]]^d^_ddbca`abccbcfgg`bffefikgklkmqsrqpqossponplkfl×Ó¾¤{nffabadghehhgljlk_`mrttsvxrls}uosywv}|}vlmy|}{tjpsw¡wlb\_Y`dgbTPL<?d}y\U[LZ_bsz[Jvu]OVaQ4'(#'MkL3[§ x}±ÅÆÆÄÁ¿¼»º¹¸µ²°±³²°°®®¯®¯²ª¯«®®ª¤«¸¿ÂÃÅÅÂÂÆÉÊÉÉÉÆÇÈËËËÎÐÏÐÐÑÑÔÓÓÒÒÔÑÐÌÆÁµ©vjbZXLB5,&%%'(*'*:NN8C~®·°lC=93126;U=<@A@<8;.-.021/0111/...26@Vl¬´»ÀÃÅÂÃÂÁÀ¿ÀÁÁÁÂÃÄÇËÍÐÐÏÏÎÎÍÌÌËÌËËÌÎÍÏÏÏÑÒÒÐÎÌ|xsjaYRROKRMPQRSW\[\^ba`baaaca`bccacb_`cee_fgfc`bffehiijklmorqopssssonnkjggcÊÔÂ°¦qefdbbehkfgjlmdkbUcqwwrq{xhguttrvvu|}|vplw|~ynjuxqrjhgfmnrnppf[]O=;Myxvmkxl_je]im\fp]OndNSeaF-%&)$4T7f¤u ¹ÂÅÆÂ¿À¾¹¹¸¶³³®±µ²¯¯­ª¬«°²®­¯®¬©¨²»¾ÁÃÃÃÀÀÄÆÉÈÈËÇÇÈÇÊÍÎÑÐÑÑÑÑÑÑÔÔÔÕÓÒÐÌÉÁµ¨qe^_VI8.*&&('*(+0C[?4X°·¥y`J710125JH<9>@B:71--.0/114550+*.46=Rjª³»ÀÂÄÃÂÂÀ¿ÀÁÁÁÀÁÄÈÊÌÏÐÐÏÏÎÍÍÌÌËÌÌÌÎÐÐÐÐÐÐÒÒÐÏÍ{slmf[WQMNQNMSTW[[]^_`ceccbb^cccc`accabcedefefedcffeghiiknnnpmstsrspnnmhcdiÂ×Å´«¡qgdd`cgigddmomjh\Whtzwooumahyvtvuoox{wxxpot~~}xnl| rs|lhlqqpsuwrkeZPFC?HUpu`W]otfcxm[p]K]d[WfKJWnhF)$0,$-^qOw© vxª¾ÂÅÅÁÀÁ¾¸¶¶¶µ´°±²°±­ªª­®¯²ª«°­¨¥­¸¼¼¿ÃÃÂÁÃÄÈËÊÉÉÈÈÉÉËÎÐÏÏÐÑÑÒÑÒÓÓÔÓÕÕÒÑÎÈÀ´ª|mb^VM<2,((''"&),9IJ51r¡³«p\G;/-06<XE>=;>>30-.-/124936/++/405Mcw©µ¼ÀÁÃÄÂÁÀÀÀÁÁÂÀÁÃÇÊÌÏÐÐÏÏÎÍÍÌÌÍÍÍÎÏÐÑÑÑÑÑÑÑÏÎÎ|unlf^XRLLHKOTYY[X^```cdkddf_aede`beebaadcbcdcfecefffghmonkllmpoompopnifcdkz¾ÖÊº­¡vja_]`bhcfhklifd[`lsvvpppaanvtuxofoxvuyxlow|~}ukoqxqgr~zywrf`TE=B?FX]hrhZMXnpfdf^fN:EVYd\<BVg^A%#,*#*Es¬zp}´¿ÀÃÄÁ¿Á¿¸¶··´´°¯°¯±¬ª®­²°®§¥¬¬¨§±¹º¹¼ÀÅÃÁÂÃÅÊÊÉÉÇÈÉÊÌËÏÐÑÐÐÐÒÒÓÔÓÔÕÖÕÕÒÒÍÅ¿µ¨uhbWK>3,/)%%%''(0;E;2M´³¤weZQ.0/06FLC:;?=51..,01/1422002/0.1@`uª¶»¿ÁÂÃÂÁÁÀÀÁÂÂÁÂÆÈËÌÎÏÏÏÐÍÍÍÍÍÎÎÎÎÏÏÐÐÑÐÐÑÑÏÎÎyspia\UQLIIMRTUVX\``a`_cddagacbecbeeecbcdbba^dedfgfjkionmpopkpnsonoomjgefhy©ÕÐÁ¶¢pb^\`acbeihjhgfaimqponuocgqvtvrfguywz{rot{yyohror ¡¡ hdt{vm]RGJMSRSdUPYbVFRajap_][B68=Xq_9H[_V9$'B*=y­xt¥½ÂÀÂÂÀÀÁ¿»º¶·²¯®­«®³ª«¬¯³¯§¡¤¥¨®µ¶¹¹¼¿ÂÄÃÄÃÅÇÈÈÈÈÈÈÈÉÊÍÏÎÐÐÏÑÒÒÓÔÕÕÔÔÕÒÒÎÉÇÅ´¦vfXA930.'&&''(*.4;>;.g¯­ne[@84017JD>;;:83//,//2//0133/,--/:Yq  «¶»¾ÂÄÃÂÁÁÁ¿¿ÂÁÁÃÅÈÊÌÎÏÏÎÏÍÍÍÌÏÏÏÎÏÐÏÑÐÒÑÐÐÑÏÎÎ~ytof]WSNJIMNSVW[[aaa_Yabe`dbcfb`_adefd`cac``ddfcfdillkkmlkmklptonlmlmjgecjÆÓÊ¼£ue]\`dghhejkgfacnnpmhmtjdnstuwj\myxz~vlkv~}~{sibrqq~}¤¤nas|rkh\OO[hhf`PKNJSLEM_f`}}XZI544/`}YBNWXI-$3O9-vª¡yy±ÃÆÄÁ¿ÀÀ¿½º¸¶µ¯¨«¨ª²±¬®²±³¯¬ §²µ¶·º½¾¿ÃÅÆÆÅÉÉÈÈÉÉÉÉÊÌÉÏÍÏÐÑÑÑÐÐÔÔÔÔÔÕÒÐÍÊËÈ½­¡jWC94/-&'%&()+/.3?B:Bt¢¶«smfQJE6/1<JC<;::62.-.49012343,/,+.;Th¡ªµ¼ÁÂÃÂÂÂÂÁ¿¿ÂÂÁÂÅÈÊËÎÏÎÍÎÏÌÍÍÍÏÐÐÏÑÑÑÑÒÑÐÏÔÏÍÎ~yqi`XSNIIIKSWX\\`_`c`bbd`cbcca`acfced``_aaacbfcbfjljghkkhlmlpplnllnomjecnÆÖÎÃ¯}i\Z_cgie`jhhe_gmpqidlkagtqpspeesyvwslr{}{ypiizuv~b^zxpifk\SXhtvtfGMTPEADJdgfuUQ9,0/6c|S>JY\;$&<jI/g}w·ÁÅÅÁ¾¿Á¿¼¹·´³¬ª¨¥¨³®­¯°²¯­ª¡¥¬¯³¹ºº¼¿ÃÆÉÆÃÂÇÉÈÈËÊÉÉÉËÊÎÏÏÎÏÐÑÐÐÒÕÔÒÔÕÓÐÎÏÍËÅ·ªr\B<7//.('((**+),3AB,Qªµ§qvp\PHBC56KJC<<@:5.--10016662-+-*,1Jf|ª¶½ÁÂÅÃÃÁÁÁÀÁÂÀÂÃÆÉËÍÍÏÎÍÎÎÍÍÎÎÐÑÒÒÒÒÑÑÐÑÒÏÎÏÏÏ|sle^XMJLINPQUTV]]``_a^abheba^cfeeefbbccabbcedfffkmkkkjjknnljknpknmkmlgegÀ×ÏÃ·­sg`^bghd_eeebdmotshdmdZhqjnqhcnspsyyqnu||ztkloqy~l[kymffef_Yix}zu`FEB6=?CRgg`~l`K2+,0=rwVBEY_1"%NrN -g¡wiq©À¼ÂÂÀ¾¼½½¼¸·´®ª«¦£©®­°±±¶¯¬¨¡©¬¬¯¸¸º¿ÃÂÂÇÇÆÄÅÆÇÊÊÊËËÊÉÊÏÍÌÎÏÐÑÒÒÐÒÒÑÓÔÓÔÑÑÐÌÈÀ³¢wZE<730,('+,+*%&(.=E=:l´¯wneVIE@=8BQL;<>8410/11247<93001/-3Iav «¶ºÁÃÄÂÃÃÂÂÀÂÂÃÃÄÆÉËÍÍÎÍÌÍÍÍÍÎÏÎÏÒÒÔÑÑÑÐÐÐÏÏÐÏÐ}smkc]UOLJRMNUYXZY^__ba`_ebaccfgejhgceedcacadedghknmijmljkkkkjkoopnmiihegy¯ÛÒÂº¬¥nf_ceeababgbinkoo`cg]aleaoplhsrns}ypluw|yujswio|{}}b_zwg`gkd\]uvkT@67899?TqhaujZ@,)(+LztTGLfb2#-YX"+ct_g´¿»¿Á½º¹ººº¸µ²¬©«§¦ª®¬°±²µ±­§¡£ª¬­°µ»ºÀÂÁÀÂÄÆÄÅÆÅÆÊËÌÌÌÊÊÍÍÎÎÏÑÒÑÐÏÐÑÑÓÓÓÒÐÏÎÌÌÂµ¢v_H=8632/,-2**'),*4CJ2L}¥°­ ph`TD7?8>OJ>=<851/.02200<985.,+/8K_r«µ¹¿ÃÄÃÃÂÂÃÂÂÁÀÀÂÅÈÊËÍÍÌËÍÌÌÍÎÏÎÏÑÑÓÒÑÑÐÑÕÑÐÏÏÑytmc`\SNJKNSUV\Y\[]^_a]_c``a_`hcfeecffcddddeccgforlggikghjiijlmpqnnnrgdfkÉÔÉ¾®ªtmeab__baeddjlkkfchdZepfcormkspkvzuqqzv|~}xsm{ynt}|w^mo\^gqldi{bWI=8778<D[vnayeV2/1*/Xt]ValW-(2fX$ 0[thf³Àº¾½»¹µ·¶º¸´¯ª«¬¤¨«­­ª¬³¸³°§¤¡£¨©°³³¶º¾ÁÁÀÁÃÇÈÇÈÈÄÉËÌËËËÌËÌÍÍÎÏÐÐÎÏÐÑÑÒÓÒÓÏÎÎËÇ½­n`M@;<C?73/3/)(++*3=HB3X«¯§ze`ZI=@>>CZ@><95.-./03213698.+*/Fm]sª´»¿ÅÅÄÃÂÂÂÃÂÂÀÁÄÆÉËÊËÍÍÌËÌÌÎÎÏÍÏÑÑÓÓÒÒÑÐÒÒÑÐÐÐ~yoea[TPJGNQLNRW\X]^]^_aca^\``abfffbdgecehe`cihhkgedefghhiiimmproopovkiikÃÖËÃ²ªvsk^_[]`]b_ejjmibdpc_knhipnooojltvvx~|y{~{spnrqwr{uk{zg^itzsljxpOA=;79=<<HclfxlP/071<eq\dqmQ0+@so&#<gkfnnª»¼½¼¶µ±¶¶µ¶³®¨«¨¤§¨¨¦¦«²µ³°¨¥¨ª°¶¸··¹ÀÁÁÂÅÆÉÇÈÉÉÉÊËËÉÉÌËÊÊÌÍÌÌÎÎÏÐÑÐÒÓÓÓÒÏÍÊÃ·©j]QD?IURI:776-1.*+/5FP7>p¡ª± k\Z[LC?F?OH9<B<225:351*156555/4;Q[q¬µ½ÂÄÄÄÃÂÂÀÁÂÂÂÂÇÈÊËËÍÍÍÍÌÍÍÎÎÏÎÏÑÓÒÑÑÑÐÏÑÑÑÑÒÒytkf_YSIIKLMLLSUWX\^^[]__aabc]`fedbbbfhddeecfhgedddegfikjkjklprnqqssqlhgxµÖÒÉ¸¶}qkhc\]Z[cchiimf^df^_khhjidnvqqrtsw~vyz{spkturvv|~yrp``u~hfknkQ@:799>:3:FftsuaG0158JuxdYpwjI)&Im02VnURh¸º¹¹µ±°µ·±¶²«ª©£ §¦¥¥©­²¶µ°£¦«¬¯³·º»¹»½ÂÃÃÃÅÅÆÇÈÇÊÊÌËÉÊËËÊËÌÌÊÍÎÏÏÎÐÑÑÓÒÑÎÌÈ¿¯vhYKNT]f_U@9;@4*(%%*,:LH1F¢±® ^Ta]NAAERT78:96///22.-116483/3;H^n¬µ½ÁÅÆÅÄÂÁÁÂÁÁÂÂÆÈÊÌÍÍÍÎÎÍÎÎÎÎÏÏÐÏÐÑÑÐÑÐÐÑÒÑÐÑÓzyoghfVOMJJILNTWWY[[^]]_b]]a`__bbbdddgheacaaaba`flfehjjljihijoqpqsvqungdqØÔÓÃ·~xpgea`]^eejgghc`h`_fgbhofdottvzwuxyyty}yspg|xvz|puzraj|vimneP@?5147:509LltugT=124;XlM\xmUD-'C|y+GpeJkª£²º¸´²¬­³´´´³¬¬§¢¡¢¢¥¦«¬²¶³¬¡§¯­®°¶»½º¼¼ÀÂÂÃÄÁÅÇÇÆÉÍÌÌÉÉÊÊÊÉÊËÉËËÍÏÎÌÐÏÑÑÐÎÊÆ½©}k_WXacjh_TE<>L:-+)%%'-GI69d¥¸ªp\][bNDDPVI975651220++0179:3004A\nª³½ÁÅÆÅÄÂÂÁÂÁÀÁÅÅÈËÌÍÍÍÎÏÎÏÎÏÎÍÎÏÎÐÑÑÑÑÑÑÒÒÒÑÑÔxsokdYSNIIKMMTUTWZ\^]__^]_aad`bdeecekkfcb_^ce_cefgigefghhhiknoqqsqomgh`b¿ÕÐÇÅxsppfc]ac`ghigcfmhgliemtjlssux{qovysr{}rnmpmowzwyoxrirlt|iQC:B@87454,7Ts|vtfW5.+1?_x]A_sdXD/&3rxLXoTj²¥©¸¶±±¬­³·¹µ³¯¬¦¡  ¡¤§¬®¶¸±§£¦¨«­®·¼½¾¾ÀÀÃÁÁÄÄÄÇÆÆÅÊÉÈÈÉÉÈÈÉËÉÊÌÊÉÍÎËÎÐÎÍÎÎÇ»®|hYWZkrpmf_UH>?E9**,$%%*8E@-@¬°¡d^Wa^QHHUU;775121-,,+--3:A4314:Se{©·¿ÁÄÆÅÄÄÃÃÀÀÂÃÅÇÉÌÌÍÍÎÎÎÏÏÎÎÎÍÎÏÏÐÒÐÒÑÑÑÑÒÒÒÒÓ~xqkd^YQJKKIKPSUSW\_]^_^^`ddecabbdacfgfaa`cddaacdihgghigfkihlnporlmkfgdez´ØÎÈÇªusttkfbgdahekgelollmgipomnqorupijtxsruphffotqtzy~zvbv{mgu}vzw_HAJJ@:1-33-0QtzkibU9.//6djOIZ^`d>+$/Y^lwgw¥®¤®´´±­±¶¹º¸µ°¨¦¢¢¤¥©®µ¸­ ¥¥©¬­°µº¿À¿ÀÀÂÃÃÄÆÃÆÇÇÄÆÆÅÆÆÈÇÇÈÊÉÊËÊÉËÌËÌÏÎÍÌÊÂ°}cPHXn|tcYROFADJ6*-,'(%+0AH85Z¢³¨eLVd[MIPSG;53-.,+/5-),8962-.,0F]x§¶¾ÁÂÄÅÃÃÂÂÁÁÂÄÅÇÈËÍÎÎÎÏÏÎÏÏÎÍÎÏÎÐÑÑÐÑÑÐÐÐÒÒÓÒÐ~wnha\SNMJHLPQVWZ[\_[]]_aaa_b`abcbac`b`__`badbdbffhicjigljknqonrqpqkkgdm¦ÔÓËÌ°wptsomcjfhiflkimnlmieilmjmlnsrhbnu{|stg`cetpv{zxzsiylix{vqhVGINL;413680-Mn|kOSO4013HmbHCNKZcH&"'Gzp~}n§¨¨³µ²°³·¼»¶´¯§¤¡   ¤«±µ·¢¥¨¨¬¬³¶¹½¾¾¿ÁÂÄÁÄÅÅÅÇÊÅÅÆÄÂÄÇÇÈÇÈÈÊËÊÉÈÈÈÊÌÎÍËÅ¸bQOT\xnZMMOGACG8,*0*+(+/:K>,4rª­¥~TMW\SMO\NG<40,,*/001.59=13.*1;Vs ¥²»ÁÃÄÄÃÂÁÀÁÄÂÄÅÇÉÌÍÏÎÍÏÏÎÏÏÎÌÍÎÏÐÐÏÏÐÐÐÐÑÑÔÔÓÏ~zsme^ZSMIFJOPRRUW[[\Z[^`_bb^]`afjb_^^_`]^b`bcdd`cehihehjlppnlnqoqpjkfdgÐÔÐÍ¾©x}xuqiiiilgjgikgikdbgjllqlpwo^]mrv}|vjddgyq{|zznu{hk|}n^WMLMRO;2..592,Ahj@FF4054Gw]L@7@YmQ0$)Iy|evyt}¡§¯¯±²¶»½¹µ³°©¢¤¡¡«¯´³ ¤¨§«¬±¶¸º»¼ÀÂÂÀÀ¿ÃÂÅÆÉÉÅÄÄÅÂÆÇÇÆÆÆÆÉÊÈÈÈÈÈÌÍÌÇ»¥hSVYjmvsfRGDGEAAE7,-1,(&+-.DE6/H§¯®¡pOEYZYSXSKA2;3.0130/)3::5.((.7Oj|¡¥°ºÀÃÄÂÃÃÂÀÂÃÃÅÅÆÊÍÎÏÎÎÎÎÎÏÏÎÎÍÐÏÑÐÏÏÏÐÑÑÑÑÓÓÓÓ}vqkc_ZRKIMIJQTUY\Z\\\[]`a`\]a`cc``_____][cea`ccdegghhkkmmmmoopoonmifdc|³ÕÒÐ½­zxujhfklifaejijibcgkmjnlooj_fknv~qjhckxp}{~sz}seo~{rfl}r^LHRYRI9761.032.AhjA:;6A:6=LYN:-6Un`;('Dvzg^`jx|¡«³°±´·»¼º¶´¯©¥£¡ ¡£©¯±ª¡¤¥©¨¨ª«³´·º¼¾ÁÃ¾ÁÁÂÂÄÅÅÇÂÃÂÂÃÄÆÅÅÅÆÆÇÆÈÈÈÉÉÊËÇ¾§iYS\ltspo_UIA>EBFBF80.,/+)&(,8ND.1g«¯°`GJW[R^OA>?@3-0.21,*1<B<-,)(2Ifz£­¹¿ÂÅÅÄÃÃÃÂÃÄÅÆÇÉÍÏÐÑÏÎÎÎÏÏÍÌÍÏÎÎÏÐÐÏÏÑÑÑÒÓÓÓÓ¡ztoibaULJMKKNTVVYXX\_]]_\_^_bca^`_``_`^^_cbbdbcadefffhkmnnkmorqqqpkjgfo¦Ü×ÐÁ¬}~xngcigjeaejmjmcefglkjklicgplgs~{smjdsmm||zxox}p`r||phm~rbL>A__L>6555+/00/Fo{h=46863,7PQ<.,0FnqJ5.AfyoUThwx ¦­´¶µ¸¶º¼½»µ®¥¢¤¢¡¡¢¦¦±® ¤¥¨§©¨­²µ·¹·»ÀÁÁÂÁÄÃÄÆÄÃÃÂÁÁÃÂÄÄÃÄÄÄÆÄÅÈÉÇÇÆÃº¥gV]`bmodZYN?=@:;;9>=30/120,%&/:ML4.@|¦¬²¨zY>L]T[W?8C@0,./23,(/?D<2*'1-B]r£­·½ÀÃÅÄÅÃÄÄÃÃÅÇÇÉÌÏÏÐÏÍÍÍÏÎÍÍÎÎÎÎÐÑÐÎÎÐÑÑÑÓÕÓÒ¥ ||okba[SMKMKLPRSVVVW_`_^Z[Z___]]^]`b^a__bcbddccbdgeefhiklkjqmppqsqmihfgÉÜÓÂ²~}zmcedghejjmigdjcelgelnjiosmkuzwuugc{||~mmvyy{~|oj{}sggpiL<COcZF<6486,,15-Cjp_;-55,-5=@<5-008\iRDC>EglZNaxps{£©¬­³³´¸º½¾¾¼²«¨¥¢¤¡¦¡¨©¬¦¤¥©ª©§­²²¹¹·¸»½ÁÂÁÃÃÄÅÄÃÅÃÂÂÄÂ¿ÀÁÃÂÂÂÂÆÈÉÇÅÁ¹©i[Uholb]I>??;:96766<83/.021-'&)+?^=./U¬ª¶pQIUYWiK=<94.0120**.6@;4,),.:Tq¡£­¶»ÀÃÄÄÅÄÃÃÅÀÅÈÉÊÌÌÏÐÐÎÎÎÎÍÌÌÍÍÍÎÐÑÏÎÍÐÐÐÒÓÔÓÒ¤|tof\[WPLLLOSSTSSSV\`]`]]_^\`]]`_^`bdc``abcdec`cefhihiklkkmnpqpsrpmga_p­ØÔÇ±~|}tkmdedgmqmfefnhimifqpiiqsnmwyvtsjn{~nswwx|}~klxfacYC>Od`A6/049-'%167PcWkA/,+-3FF;454-'0QrYMMJ@Kj`=I`oµ³µ±³µ¶¸¼ÀÀ¿¹±«¨¦¢©¤¦¦©«­¢¦«ª«ª¬­®±¶´¶º¾¾¾ÀÁÃÄÄÆÅÅÄÁÁÀÂ¾¾ÂÂ¿¿ÅÃÄÅÆÆÀº¯wYXap{mKG:6658679858891.)../--&)/8PP1-7f¨±®hSPRU^[N;5751,--)+/1892-+))7Oiy¡¡¬´»¾ÁÅÅÄÄÃÄÄÂÄÇÊÌÌÍÏÐÏÏÏÏÏÍÍÍÍÍÎÏÏÐÏÎÎÎÏÐÑÓÔÔÓ¢  ¢yniaZVQLMGNPTTWWVZ_]_][[_`\^`_`a_bbbbabccadedgfefklhjjlnoloqtrspqnfa_fÏ×ÌÃ¡{tsumjcekllihjihkngfonhgtlgowvqoperrozwx~u}{xhq|l`UN?J_oQ1.,+4:.&&,07V]WgK+)'1;@56:83*./JjlOJL@EXZK>Z²·³µ³¶µ¸½¿¿¿¸´«§¨¨©ª¨©«©§¡¤©«¬¬«±°¯±µµ¶»½¼½¿ÁÁÁÄÃÃÃÃÂÂÀ¿¾¿À¿ÀÁÁÀÀÃÃ¼³fV`mtsZ<41210678<<887862/001.6?1+0Ed:.4Nu«½¬{bSLKT`UA7476.+33..159,+**+5Ihx ¨²»½ÁÄÄÄÃÄÃÃÅÄÇÊËÌÍÎÑÏÏÐÎÍÎÌÍÍÍÎÎÎÐÐÍÎÎÏÑÑÒÓÓÔ¤¤¢¡|sng`]YOGHKNPOUVVZ\[]Z\Y]^]\c`bb`acfadbcdcccddfhgjkjkglnllnqnlrpmkgc^bÎÙÓÈ¶¨{zrkmfnsollpuigijgghfbhpjep{spnecy|msxw~rp{~|zkw~gQE4<Qg^A/.01;>/(#&.5LZG^M,*.6970.069=?<H^lCDJLVPSZD[¤°µ³´³µ¸»¾¾¼»¸¶¬¨«¨©ª«ªª© £¤¨¬ª­­¯°°µ´µ¶¸»¾¾¾¾À½ÁÂÄÄÄÁÂ¾½¾½½½¾½¿¾¾¿À¸§sbcknh]C3210/3467?87768940../-53'*/AYQ735U£±¸«{_UIN^]I9/.23015-+/154/**+3Icv¤±º½ÁÄÅÄÃÄÄÃÄÄÇÉÌÌÎÏÑÐÏÏÍÌÎÍÍÎÎÏÎÎÐÐÍÎÏÐÓÒÓÔÔÔ¦¢¢ wplg`[TLKIMRRTUXZ[ZYXXX][^^baaaaacfdda`ccdccdfijjjhgijlknlqpnppmifb^`x¯ØÔÊ¸¯¡~yrqsmwuspqtnfdejie\\lmjdprmnl^]zlw|wpr~|wvriwj]P?4@fiG30-.6@C-$&',;ChENO3+,;;94//9IXUQBGTR;@WjZUZY\}­¥¶´²°´µ»¿¿¹·°»­ª©§©ª¬¨¦¥¡§§ª¬¬­±®±°²²³´µ·»»¹º¼¾¿ÂÄÅÄÁÀ¾»º»¼¾½¾À¾½º»³¡pnxxcOC4300./20124156566532+-*/,+)-6OZ:14Ek¡·µt^R=VaM>;4-7910*&+1450,+-1A]s ¢ ¡­¸¾ÁÃÄÄÃÃÃÄÄÄÇÊËÌÎÏÐÐÏÏÍÎÎÎÎÎÏÏÏÎÏÐÎÎÎÐÓÓÒÔ×Ô¥¢¢¡ }uohaXUNJHIMOQQSSWXWTV[^]^ba``ecaccddhadehdagceijjjklpnlnnnnnmokghe``hÑÖÍÂµ¡ª¥~t|{o|xstoqijhfmk`SZjc`fqpili_ivr~|ywx|}mcus\X@56Lh\>/+(,7GA,''%(;M^Y7`4++14=;>ETX^KA2.=QEJbp^TYflz§¡»¹¶¯±¯·¾À·°®´¯§§©¨ª«¨¤¢ £¦©«¬¬¬¯¯®±³³°°±³·¸·¹»À¾ÁÃÂÁÀ¿Á½¹º¼¿ÀÃÁÀ»·¶°vz|U:75510/20-,++,15313911.--**'(+0CUM556P¦¶³q`GBR^D69/046-*&+1553.--+:Xn    ªµ½ÀÂÄÃÃÃÂÄÅÅÇÉËÍÎÐÐÐÐÏÎÎÍÎÏÏÏÏÎÎÎÏÎÎÎÐÑÒÑÓÔÓ§¥££ yrmf^WOPLJKNQOOUVXYXW\[^^`abbb`__bdegdcbcdcd`beehllmmjlmlknonklmkc]`dÈÚÒÈÁ¥«¢z~wz{}}zvpimmjol]V_dYReqmiicctsv~wytz~}tir~xeUM<7Df\;74.,/>N:,%$%'2Q\a@HK-'*9IKXX_P<0.('0>QTloXPZpx££³»·¯³¦¯»¾º²°µ°¨¨ª©§§¥¢¤¨ª¬«ª¬­®®±³³±®±²¶¶¶¸¹º¼»ÂÁÀÁÀÀ¾¼»¸»ÀÂÁ½º³°©v`?2335569<2-)')*,20./../,+2)**+,02VV?11=]°»¨p]<>SO<55-092.()/531-+-,4Sj} ¡ §±¸ÀÁÄÄÃÄÅÃÄÃÅÇÊÌÐÒÐÐÐÏÏÎÍÎÏÐÐÐÏÎÎÎÍÎÎÑÐÑÑÓÔÔ£¦¤£ }zqh`[SOMHLOPOORSUVYU[[[^^_abccabcgfhddcbddccfeefgijqkjkklmnqllmle]\ZqÃØÖÍÁ²³ zt~~xinqppi\YfaXZggipijozhy~zzsqz}{nbwp]P@57QkQ39>3.2EP>)%$)).DWaW4[=//:APZNJ@;0'$')9UawpRM^~~®ºº´±¨¦³¿»º¹·³ª§©«©¦¡¢¤¨ª¬©ª¬®¯¯°±±°¯³µµµ¶¶¶¶ºº¾ÀÁÁÀÁÁ¾¼º½À¼À·¶¯ª n^E3126BNRTQI<0++*-96)*,./**-,*14122FXL-,1Hx¢µ¸£lP<AZI21434:)/-,0450-.-1Idy ¡¢ ¦°¸¾ÂÃÃÁÁÄÂÃÅÇÈËÌÎÐÐÑÑÏÍÍÍÎÏÐÐÐÏÏÎÎÎÏÐÑÐÓÒÒÔÔ££¡¡£¢{tog`YVQIGJLNOTRRSXZ[Z\Z[_`adibbacchgcdfeeedcedefglniglmijlljijgia^[m¡ÔÕÑÇ·µª¦s{zqouurjacf`[^oljmgfyviw|ts{}~}~pVrzg\H97@YcG5<874<S`9*'')'+9Q_ZFFE78==E@8762,-()*3HiqUQg®¤y}©³±®©¥²¼¿¿Â¸¶¬¥§¬ª£¡¥¡£¡¢¨©¬­­­­®¯±±±°°°´µ°²µ¶··¹¼¿ÂÂÁÀ¿¿¹¹º½º½¾¹µ«}_@7542;OkwurfTD:41-.2))(+.,(.*(053248RM;01=Sª¸³_==SWJ-.22:.0-*1672--+/B[r£¤ £®·¾ÂÄÃÁÁÂÂÄÄÆÉËÍÏÏÐÑÑÐÏÎÎÏÏÐÑÐÐÐÏÏÏÐÑÑÑÓÔÔÓÔ¥¢ ¡¡¡¡{vsmg_VOHDDINQPRRSWV\^_\[`ccadaabaeedcbfedgf`dccdfkjjfjkjkkjghihea\]_ÉÛÕÉ¿³«¸|~~yxryzshfdg\_gklnmd_vvhvyy}py~zvzs[W}n]P@;8L`P=<<991=bi>'&$*)+0BSHB<:5::8=1,0/-,.,))2KgupYTq³¨|}¦££¢±¹¼ÀÀ½¸®§¦¨§£¤¡ ¡£§ª¬«­­­¯¯±²°²¯®°±°¯±µ¶·¸º¼¼¿À¿»¿¿½»»½½¿½¹¯ y^K427736U~nZH?7-+++**+/1130.054246CQL114Dm­¼§sU>ETT3'*275/*+465/,)*+;Tlº§  «µ½ÀÂÄÃÄÂÃÄÅÇÉËÍÐÐÐÐÏÏÏÏÎÏÏÑÑÐÐÏÐÏÎÐÑÓÒÒÔÔÓÒ¦¦ ¢¡£¢{ztkb\SGBEJLKNKORUYZ^a[]beecbcacbgfdekeohhfdccaeeeeegihjkkljiiida[Y[}»ÛÕÏÉ¶²»¨~{ujhgdafjkiojaeyyzlnzxvvy}x|~}hUtnSA:;<QZF?;::32Dhg=*$#'+.*3I>97221106121.-,,)&-<Ynmq`_}¤«¡¡ ¦¦¡¡¬´»¿ÀÄ¾±§¥¦£¢¨¡¢¡¤¥¨¬®¯¯®°°´´°¯®¯¯¯¯ª¬¯²²´¼¼º¾¿¾¾ÀÀÁ¿½½¾¾¾»²nH9712:;DOm£lYK=8-,1--11363200;B544AQRA/.9O£³²lD<HN?'$/=8.('.38-,))*3Oi}¥¦³°¦¦³¼¿ÁÃÂÂÃÂÄÆÇÊËÍÐÐÑÏÏÎÏÏÏÎÐÑÑÑÑÑÐÐÏÐÑÒÒÒÓÓÒÓ£¦¡¡££¤¤¢ {xnc_UJDFEKHKOQOQVVZ___`^c`bbcfcaf`cifhihddcb^befhbjjgjjkkmgijfb^WYg¯ÕÙÐÉ¼µº¡{sjejeaiiggge_f|zy|ci}|u|{wdVzgI??=AQLGC<>6,/JmtQ)"&%-06A772/23010/0552,)(((&;h{pf^i³§££¢ «®«¨­±»¿ÃÇ¿±¨¡¢££¡ ¡¢¥§©¬²²°°±³°°¬®±¯²°­««®¯±·¹¹¼À¿¿ÁÁÂÀ½¼¾½¾»°b>85328QsqI§©£lNC@413.-//3574/-0B647?NMQ4,1@eªº°zV7<HK2&(1?:+(/650/)++/Hcw¦§¡¤ ¦±¸¼ÀÃÅÃÂÁÃÄÇÉÌÐÐÒÑÐÏÐÏÏÏÏÑÑÑÐÐÑÐÑÐÐÑÒÒÒÒÓÓÔ¡£¢¢£¢¢§¥¢|vnd_SOGHEFIJKNKOTSX\_\acb^`bbdcdcccfghiefda`c`fdddehkmjlkjjkgdea\[dÎàÔÎ¼ºµ¦«¡|uljnjfjlcijc_l|{ejy{~u}{zrXe{dCBOLSQGIJ?>-'-Eji2)*++6K^.-/21//-.20166-+!$$+KwtZZsµª¢¤¤¢«´®«°·»ÂÆÅ¿¯©£ £¡¡¢¦¦¦ª¬®°±²³´¯²¯°¯¯°¯¬¬®¯®°³¸¶·»¾ÀÁÃÂÂÀ¿ÀÁÀ¼­iJ854487Qka±¨|cNB803012246842,-23/59JILB.-4E£­¶©qI;?J<(#'9:0-/245/*-,.A[s  ¡¡  ¡¬³»ÀÂÄÃÂÃÃÅÈËÌÎÏÑÑÐÍÏÏÏÏÏÏÑÑÑÑÑÒÐÏÐÑÒÒÒÒÒÓÔ££¢¡¢¡¡¥¢££~wqkbWPLHCGGFIIHOVUZZ\^``a`a_bffdcjegghieheg`dcacdgbgikjhjfgfgfd`^\]r¹Ø×ÏÂ¾·®®¤¬¦§~qlsuonmiji^\ztmpvv|oz}}z{}n_aoW:=EMNWQKDA9)*3Nl|tF'%%'0LYA*--.-,-/0.//4,*%#&-Zzac|¨»¨¤¤¤££¯«¦ª±¶ÀÆÄ¼°©££¦§¨ª­®¯¯²´µ³²²±±±²°¬­«¯®±®°·¹¹¼ÁÃÄÅÄÂÂÄÅ¿¹ªU;3.--36A[zkG¨ª¢mTD9657<97799:4-(*4504=AJH323<\¢·²©d84C<)%*-52*(-341-0,*<Uo¡¡  §°º¿ÂÂÃÃÄÄÅÇÊÌÍÌÐÑÐÐÏÏÎÎÏÒÑÑÐÐÑÐÏÑÑÑÑÑÒÑÒÓÔ¤¥¤¢¡¤£¦¡££{tof[ONFCCFEKJHKRUW[\\^_acdbdciiigffdhcdjgfbacbccffehhhfiihgifdb_Z[hÓÙÑÇÃ¹¸±ª®¥ srstvupkjf\_zeqwuy{px}~z}yaVXK:=@DMYPC=?4*+6L^rK+#%-9?cA+./....1/3.,.+%!$%5gzjm²·©¤¤¤¦¦¦¦¥¥ª³½ÅÆ¼°¨¢£¡¢¡£¥§¨¬®°°±±³µ´±®®±³°­«ªª¬­­®¯¸¹ºÀÃÂÂÄÂÄÆÇÆÀ¸¡rA72--+-;9BSRGe¦­§v^LB4/:?>:86694,&*44,18:DKG1/3<q¢­´²¥{U<8?:,**-000./410-+*5Tl ¢ ¥¯·¾ÂÂÄÅÃÃÄÈËÌÎÐÐÐÐÑÑÐÏÏÏÐÑÐÏÏÐÒÑÐÐÐÐÒÒÒÒÓÔ¤££¤¢££¢¤¤¢yslaZSKFEHILMMNNWX[][]_eaecabfgfbfdef`bgedcbbfcachdfhgghflhhfdc_[X]w·ÙÕÌÆ²¼´¨¯¤~y{yuvmkkcY_v~~}z~knzy~}opy||~wlYTB=AACWeMB=8.*.@B]pz]1#*09?M9+/0+/0-.0/*(+%!"$&>xwn{·¶©¥¥¥§© ££ ¥²ºÃÃ¸­¦¢¥¢£¢¢¦©©¨­¯¬°³³´¶µ³¯¯®²­©§§ªªª¨«­±´¹¾ÂÀ¾ÂÅÇÊÊÊÄ½R42/*/,*1>JJL<b®©¢|iUH50<HED;75670+%02014:=GP9./9N¥°´­pI2?=.)*((.:84441,,-3Jf|¢¢¡¬´¼ÁÂÂÄÄÃÄÇÊÍÎÑÑÑÐÐÑÑÏÎÏÏÑÐÏÎÎÐÐÒÒÑÑÒÒÓÓÕÔ¤¤¤¤¤£¥¡ ¢ xwpfYVQKKHJNJNQPUXYW\a]`bddbdecddedeg`aegdcdaeddgfegefdgimgeddhc^ZZgÞÚÓÉ»º±©°¢¡¢¬{xyjik`Waw~~}{}{|vjnzy}os|~|w}vdM;AFBI\[I=74*$+:BQoppC-+2?E:*..-03,,/1+*+*$!#$'Hoo¤º²¨¦¦¢£¬«¢¥ ¦°ºÀ¿¶§¡¥¦¥¤¥¥¤¨©¦­­­®°²²¸´°¯®«ª©©¥¦¨¦£¥¦¨«¯·¼ÀÂÁÁÅÈÊÌÌÇ¶F21/331*+F\ZMCh£³±¨n[H1.APPL?83481(%+340:<:DOA0'.7c¡¨®°¡lI;<1)%%),7F8320//05E`w ¡©²¹ÀÁÃÄÃÂÅÇÊÌÎÐÑÔÒÏÑÐÏÏÐÐÐÐÏÎÏÐÑÓÓÑÒÑÒÔÔÕÔ¤¥¥ £¡¢¡¢¢¢ }ui_YSNPLKJIMKQSTYX\^^`bfebccbdfeefdccbeegddcbegbchfeehiighfegfaZZ^ÀÜ×Ë¸¿°®©¡£°¯yz{{wmmh_Yav}z}~||nclusxu{~~}yvsvjOIMJHSTLB4,)%''*2ImjfZ>.=HD80/+,/5/12..*)("#!#/\ksª²«¬ªª§¦ª¯®§¨±¼À¼²¨£¡¤£¥£¤§¤§¨©¨§©­ª¬«­®¬­®ª©§¦¥¥¦¦£¢¢¤ª®±¹¿ÂÃÅÈÉÌÎÏÉ²zH326?@=19KYXMFy©´¯©jZC00CVXSC:5583,&&2503<;>IA6(%.D} ©®¥g<50,"$+(0B>8562700@Ws§¯¸¾ÁÄÅÄÄÅÈËÎÏÐÑÒÒÏÐÐÏÐÒÒÑÐÏÎÏÑÒÓÓÒÒÒÔÔÔÔÕ££¤¡¢  ¡¢¡¡  ukf`TLLIHHIOJQRUX[`\\acbacaafddeeghdfege_^`e`decbddaahkkiggcdcb_\ZjÖÙÎÃ½³¾¯©¦£|{w~nb_fr|xx|}||igpwx~ps}z}~yuu{|sxryhc_RQVPHPYOC;1*&%'%(3D_aJaRAHUVF*')*//-130.)''"! 1m{jv²­«±°¬¬¬²²³£ª«²¼Àº®¦¥ ¤¤££¢£¤  ¡¢¡¢¡¢¡¢¦¨¤¢¡¢ ¢«°¶¸½ÂÇËÌËÎÏÉ¬pG21;EQSRPSYVIX°´®©jU@17BSUTMA81=80)(.640<<;@EA+')2[£²© `:-5$%*)+5>C;00110:Xt¡ª¶¼ÂÃÃÃÄÅÉÊÌÏÑÒÒÐÑÑÑÒÑÒÑÐÐÑÎÐÑÒÒÏÓÓÕÔÓÔÕÕ¤¢¢¤¥¤¢£¢£¤¤£xpjaXQLFFKMNOOTWX\`_]__dbcbcfceeefdceeefa_`cacd`cbabcekolhhheee`^Y\w°ÚÔÈÂ¶Â¯¨°¦}udhnsvxzztqvzw`fvxx~uz~}y}{yzobdSRQVYROIFOSCAQ^T?4-,**)')0=NRQU^\TZ[O=-)-,/--,+(#$(#"!9s£uixµ®ª·¸±±²°®µ¯«¯¹Á·«¦¥    ¡¡¤¨¬´¸½ÂÈÌÎÐÑÒÌ©kL=;3=[a``_]UOj´µ«}eOA@HORRXSJB99>8.&*254:?;:LI8*$(5m¡®¬¡ S6++)+9(/;B?834.*5Mi}¡¡¦±¹¾ÁÄÄÄÆÊËÌÎÑÒÓÒÑÑÑÑÑÑÑÐÐÐÏÐÑÓÒÑÓÒÒÔÕÕÕÔ¥ ¡££¤¤££¥¤¡|vpk_XPLKKMKMQQTY[`_^_\aefjfebhhfdcacdcdc`^c_dc]baabeciiihijdgda_ZYaÖÚÍ¼¹¼°ª®££¥¥vdsz{xvtvtoqvq\duv{xs|~y{}xx}}d_aab_bgdZKDJQKCAU]RC;3/-0+(,0<EHJ?Xcgkh\V5,***.-42*'#$"#B}so«¸«­µ¶··µ´¯¶³v|­´º°¥¦¦|zvqkfec[]\jr{ ¢¨°·»¿ÆËÑÔÔÔË£lQLSB>HU[a\VTa¥±³£kQ@BPWUXX[\VJ<9B:4-&0627=8:DO<)))+Ht¤¬¢N(.&')%&1A=:1-**/Hex¤­¶¼ÁÃÄÄÈÊÊÌÎÐÒÓÑÑÒÑÑÑÑÐÐÑÑÐÐÐÒÒÓÓÓÓÔÔÕÖÖ¦¤¢¡¥£¡¢£¢¢¢£ |unf\SRJLKLQQRRVWX[^]]adfecbccfggffddccdb_bbdcafaeccdffefejhedb`XX[}µÜÐ¼½»®³°¢§© ¢ztvuyx~xvusuxxi_hos{qq|}{yskp}wsvxvxxdja[I?OGC=DT[ZK930040,*,<CC>7FfdvzpiZE309@OSRF-'' 'Luu­¶©®¸³·»¸·¸·¸­¬´·®¦¥¡zvqmg[QSOKFGBJNXeoy¡§«´»½ÇËÑÖÖÕÍoVXggZGCOKQNc¥¦jKA<CMW^`_[`[QF<<@85*0105;3?;OC2-/)/X¨¨¤nB.)%#$#*6:8710),F`t ©³º¿ÂÅÄÆÉËÌÎÑÒÔÑÒÒÑÑÒÑÐÐÓÒÑÐÑÒÒÔÔÓÔÕÓÕÖ×¥¤£¢¤£¡££¢¤£¡  ~tohc]UPOILNNOSWTTV]]_ba`b^`bbacfccecccbba_abc`ccedffgfcfhihdddd^\Z^ÓÒÄÃ¹©·±¦±¬ osrrvu}}}xzxdepqszpt~~~|~~}~yuv~~tgO=B?A@NG>?K]`cK<558=61.0=EK=(2_`i{{{kZQV\bhO<+$$ +_yz·¸©«³¸¹¾»¸¹ºº´ª£§µ´«ª¥{ha`YSID>BA>@BIKU[djs|¤¨¯´»ÃËÑ×Ù×Ë¤tX`v}zod`bcl{hC>FONKSd`cab_XOA>C;71,/2:>4<BAP8,+)-@k¦«¦g<-)('$(0:564.*,@Zo ¤¯·¼¿ÂÅÆÊÌÍÏÒÓÒÒÒÒÑÑÒÑÐÑÒÑÒÒÐÑÓÔÓÓÓÔÕ×××¥£¤£££¤¤¤££¤ £¡ysnh`UTRKKOPQQVTUU[\\]^aaccaaaceabccb`bb`a`a``fbedefggeghgffdee][UZ¹×ÊÇ·µ¹¬ª·°©¥¤¨ wuoiku{}||u_htvv{ow~}z~xuxwsp||lW<39?CMRC;CS^abMA89682//0>DOC.*;VYqxy|i^POG9+&"! !4kv|¸³¦ª¯·½À½¹¸»º¸·±­ ¨¶³¬®vzuxppndWPMA@CBDDEIJNUU[bhhrx £§«¸ÂÌÔÙÙ×Í«~bfs{|vjTICb_RVcfhkhcaXM?=;85*+28964E=MD3/)(+Kx¥ª`9)5#&).:962+*%6Sk¢ «´¸¼ÁÄÆÊÍÎÏÑÓÓÒÒÒÒÒÓÒÑÑÓÓÒÒÓÓÓÔÔÕÔÕÕÖ×Ö¤¡¢££¤¤£¦¤¢¢£¤¡ ~zqje\URMJNOQPRVWT\[]`^`bf`babcbdbacdbb`_dbb^_]`bcbdggffcbgfebc`\VXd¤ÔÓÇ·³¼³¶¾°¨ª¨ª¦¦¥ xommpsrwyvegqu{|rw|~}{xturYGINPTWUECMVa_`GB=9830.336>KM;)+5AXhjwnQ95.(,'"!! &6}£}v¢¼°©«¬¯´¼¾¹¶»¹¸º·²¬¥­´²¯¨eeqllece\TPGDDHJRTQTUYcadpqsww}¢¥«¶¿ÇÑ×ØÕÍ³gkp|{obukbY]fb[ejnnllf^UB>;:6/-15>:6<BET9-))*7Wª¥V><3%&.8641.**4Mcz¡§¯¸¾ÁÃÇËÍÎÐÑÓÓÓÒÒÑÐÒÒÒÒÒÑÓÓÓÔÔÕÕÕÕÖÕÕÕÔ¤£¤¥¥¥¦¦¥¥¤¢¦¥££}uniaWTNKLPPMPUWX[^[\^ccebacacbedbacba`bccbcbdaacbcffdheffeccac^WV[ÊÚÇº½¼³»½¬¶±¥ª±¦¢¤¦£¡£yofjmqrqs{wglttxzpw~}}}yvu{le\c`__WMHGVY^b]HCH<620284+3FLC.&(-8FJ\v|U,''$$$# %#+Mws~¥³«¨¬¯¯±¹»º¸¹º¹¹·¶´®¯²°®cQZaed\cfca_ZW_\a][`aaboopsuy}{{¤ª´½ÄÌÕØÖÔÁlhhmowz}xoqrpwythYgkjkotrqpec^NC>0850.5@C:4FEOD2/)%,An¨ª§yV7:##)2750-++-Ebv~ §³ºÀÃÇËÌÎÐÓÕÓÔÒÒÑÐÑÒÒÒÓÒÒÒÓÕÕÕÕÕÕ×ÖÕÓÓ£¤¤¦§¨¦¤¤£¥¥¦¥¦¢zplc[TPKIMNPQUVV[aZ[__afdbaddbeeadbcaabd_`bccb_caaccdffeic`ba`]YWQg¸ÖÌÁÅ¿´¼¹¨º¼¤©°«¯£®uojlonnprwxndmuu{zprz|y~{vvmcjihffbRJMRU\c_aKFF>;B:7=;.,<HPB+'(/4/;ToC'*(&%"!".Zzyª­¦¦¬®°´·¾»¹º¸µ·º·¶¯´³´£oJPZ^efekottrpqwn^ibophhvvywy}~£ª²ºÂÊÕÙØÖÅ¡wc\Y]esyxoprwz~~tklppvptrnmihbWLD<87/,4;>:4=OPO8-($'2K¥°¯mL=/!!)74**-.4<[p§±·½ÂÆÉÌÎÑÒÓÓÒÓÓÒÒÑÑÒÓÓÒÓÕÓÔÕÖÖÕÖÖÖÔÒÒ¡¥¥¦¥¨§¥¥¦¦£¥¦§£¢¡~vph`[VLJIKPNTTVY]_Y_^^bacddb`fgfddc_bbdbb`bac`dbcbbcdegihdac_]XVUaÐÐÃÈ¼¾Æ¹±Ä¼¥®ª£²¡¤¦qifnoqonrysfbmswnfn{{{~}{z~zuz|eesrpc_^VIESWLYd]WTHEBCNLJD;1*4BNRA$#*7/0Ejg4,+($""3i}rw±¦¢¥¦¨ª±²¹»»½º¶´½»¸´¶´µVHValrtx~|bgowweb~~}||~z¦°¶ÀËÔ×ÚÖÎ±mdbhrymy{}|{zvvvrusrtqoomgaVI<8;5-27@<55DQSA/&'&(5^ª®§}hK/ $05+(1-5=Pl  }£¬µ½ÀÄÇËÏÑÒÓÓÓÔÓÒÒÒÐÒÒÓÔÔÕÕÖÖÖ××Ø×ÖÖÓÑ¢¢£¥¦§¦¦©§¦¥¦§¦¥¥¢ ztmf_VOOKMOPPSXWX_Z^__``cbaddcge^bcaccd`a``becbafdbcfdcdhe`a_ZYYVSs¶ÑÉÇ¿ÅË¸¹È·¨¸­¥§¤¦£vopqprxqptm`bqxsvmqz|}zwwy~y{~vkimuttdTWXIJXTHO\]_VPFDGHT[QG2+.4@]T0#.<:63Rpb6$!$"9pzrw®¢¡¡¤££©­°º»¿¼º·¹½¹µº¶¥kOVhv}`^oz}cf~£«µ½ÌÕÚÜØÐ¼{{{x|}||}~|xutvxyvpolj]K=8;8/,0><44<I[J6+''&,;pª¨¡{b?$ +7.)**1IIe}}©³º¾ÄÈÌÏÑÒÔÔÔÔÒÒÓÔÑÑÑÒÓÓÕÖÖÖ×Ù××ØÕÕÓÐ¢¢£¥¥¦§¦¨§§¦¥¦¦¥¥£¢¡~ysng[QNNMKMLWXWZ]ZX[[]_^`cb`cbb``bceddbbc`aabaaefddgbdef`a``\[ZTScÜÒËÄËÇ¹ÀÈ³¬»¨¢®¢«xuuwuq}xonhbkrtqfq}~wvw{zwuulkszxpYGFTSILWUDDPZXLOC@CEPWYV;*',4N_I),;>6.5F^W5%!%Bwxz ª¡¡¡¡¤¦ªµ¼¾½»¹»½¼¾»¶X]o~ r|{W]gtwde}~}¡§°ºÉÓÚÜÛÕË­¢ ~{yzzyyztsqmcSE8=?4.198347ASUB/)(&$.R~¦¥~T0!!+5/&'++;Lby z§±·½ÅÉÍÎÑÓÒÔÑÓÓÒÒÔÒÒÒÑÓÔÕÔÖ××ØØØØÕÔÔÐ ¡¤¥§§¥¦¦¦¨¨§§¥¢¤§¤¤|vrk`VMKMLJKPTY_d^YY[]`X^]__`^c`_`bbceccebaacabccccfgeee_da_][YTQTÅ×ÏÊÏÁ¸ÅÁ´½¼£¢°¢¤«u}uurtw{rlfjopu|hlsx{|}~vsuzz|vrr{zsWKA?GLDFOMD>EXbGLGHMFURS]T?4/)=`Z9*6I7+.1<]z{ZA0$)Pwz¤¬¡¢  ¡¡¢§°½½½¼º½Ã¾½¼¯fp¢¡ebiTELUbOXq{x|yx¦¬¶ÆÏÚÞÞÙÐ¿¬¬«§~|||zzzyuunh_O?986-.97325<K[L5+%%&%0`£¢~mG("#,.)%#%0Lcu ¬´½ÂÈËÍÕÓÓÕÒÑÓÒÒÓÒÒÒÓÔÔÔÔÖØØØÙØÖÖÓÓÒ¡¥¨©¨¤¦¦§ª©©¦¦¤¦§§¦¡xroc\TLMLMLSTXa`^ZZ]__]_aab`bcaa`a^`dbbdbaabbbbbbeffc_acaba^ZZWRSg¡ØÏÏÐÁÁËÁ·Ì½ª±µ©­¶|n~{uqw~|qebqrot}mcgv{y}|wqrxz|x|v{~|pbRFCOI>=@B=7;JPJNN?CCFKTUWMD<3;M[J)1YF1/-48_xM$&Ysw«© ¡ ¡¦­¶»½¾¾¿ÄÁ¿»srzS>G=215748CNXfqy}yvw|¤©µÂÌÕÜÞÝÖË¹­¨£||}y{vvumdU>4680+5=5337APVD/&$##*Cn¡ª¡b9')+,)%&%)@_t~|}§²½ÁÆÊÍÓÓÓÕÔÔÔÓÓÔÔÓÑÓÔÕÔÕ××ØØØ×ÖÖÔÓÐ¡¢¦¨§¨©§¥©¨¦¤¤¥©¨§¥£ }wqh`[KONNOQRUTUTYZ\^]]]cdbacbddca`_abacbdba`aa`acegebbgede`]YYRORzºØÔÒÃÌÏ¾ÂÍ¾´Á¸§²³¨­yx{x|u||m`alrpvzhckuz{}wvyxw{|{xxj]NAFK=:5861079AFURGC?;@JKQQIB?<CUS?8Of>:-52HzZ/ 0d{pwª© ¡¡©³¶½ÀÀÁÄÂÀ»wzmg{o?-/-*',*+*,2:GZkz|xvqsyz{~¥­ºÃÎÙÝàÝÔÇµ«¤ ~}ywzsk\F88=6+0751006HYK7&!#$),Sy£¥¡{\33)-(#%*)0Wq~|~¤®·ÀÅÊÏÓÔÕÕÔÕÕÔÔÓÔÔÔÔÔÔÕÕ×××××ÖÖÕÓÒÑ¡¢¤¤¦¦¨¦¦§§©§©©©¨¨¤¦}tnc\SNMJNMMPQUXZ[\`]```ccccacfdbdaadbbbbba^_``bcbeecacdde\][YSOOb£ÙÚÏÇÏÊºÄÍ·¼Çº±»´§«yptl{|p`etsu~~ufdqw{{{xxwvxzz}~l]I=>EI?=98:+*236:N^YTH?=>@CHFA?GKW\^MZu`KCAKCmoL,0o|ox¹© £¥¦£¤­µ½ÂÁÃÃÀ¾ª~~f:Oh|oQ:.++)&)'*(&)+1CZnz{vspquxy~¤«´¼ÇÓÛàâÜÑÁ´­¥¤  ~~zyysk_Q?::6-+440.17CPTC,'$#)/=\¢¥¡yR811'!!!$)Bc©´¾ÅÊÏÒÔÖÖÕÖÔÔÔÔÔÕÔÔÔÔÕÕÖ×Ö×Ø×ÓÓÓÒÒ¤¥¦ª¨§¦©§§¨¥§©¦¥¤¤¡wpe^]OPJNLKNNTVXYZ]_``__acccbebdd_acbcbcbbbbdbdgeabb_abdd_\\\TOMR{´ÙÒÌÓÅ¾ÎÈ¸¿ÉººÂ³¬©{usmlubgrvwzgp{}|{||zyyxxvqswrpuvih\GAAGIF@651+++/25CRYWPNK@;ACA@87FV]hkkvu[YVVPK^uU6Br|l~¡°¦ £¤¨©¦ ¦²»¿ÀÂÂÁ»{w[;6ERO62+/,,(+&+*'(3@CK]nvuqnpsuw|~£¬¶¾ÌÖÝàßÙÎ¾µ¯®ª§¥ ¢~}||vpeVC:96.+54025<?MYT?*$(&'0Cf¥¥vZ182+""$&6Vv|£¯ºÃÉÎÑÒÖ×ÖÖÕÕÕÔÓÔÔÔÔÔÕÕ××Ö×ØØÔÔÓÓÒ¢¥¤¥¨¦¥¥§¥§§£¥¨§§§§ª tmc^WPKJGKOOQTWYV\\]___`ccfeecccb`bbbabd`daaeghe`aa_`dec_\]YUSQMTÏÔÕÔÂÂÏÀ½ÈÃºÆÅ´»®|vypiy¡zsa_luw{lr}~z{zyy|||yopyxqdjmpll`QKC@??;:4/+.+/1/3;FRRQPKGG@;@749BQcnjhdc^]G1+,KpwYXzwp¦°¡£§ª¬«¥£±º½½ÁÁÀ±v{|{mR9/346225;12/,((&&3K]_YV^krpmrurtyz§°·ÀÏÙßáÜÕÉ¾¶¶¶®«¢~~}wog]F=?;/'.5.488;AOWT0&'%!&8Lr¡§ mE470""$2Mm{|ª¶ÁÉÍÑÓÕ×ÖÖÕÕÕÔÔÓÓÕÔÕÕÖ×ÖÖÖÖØÕÖÔÒÓ£¥¦¦¤¥¤¨©§§§§§¥§©ªª¤zngcZTPKMMLPOSXYZ\^\a__`addfhcacddcc`]ab`aabfedcbabbce_a_^^ZUTMMPq¯ÚÙÕÅÍÎ¿ÂÌ¾µÑÇ¸¿µ ª¤{pkzulgflruxgw}}~}~{yzvxxy|suv}|xqk[IAGEE:6.,),0.-+.1<??GSRKI@:=8312<MW`TDLSI3%"#,:dwku}ik±­¤¨±±­§ ´º»½ÂÂ¼£{w~~wok]C5//335=EEIFB;5/-,7Lfr`\^glpv|vwz~¨°·ÇÓÚßáÚÑÈ¼º¹¶±¬£¢ }y|ujcN=<8/(/736;86<HRWE)&  "/A[{£¤bA6.&%##*Ih||¦²½ÆÍÒÔÕ××××ÖÕÔÔÕÖÕÕÕÖØ××ÖÔÔÓÓÓÓÓÔ £§¦¥¥¦¦¥¨«¨§¨©¨ª«ª¦¢ tpiaVPLIJJNMQTV][__]\]b`abbc^_daa`ea_ab`a`abb``bcaaba`b`__]ZXTOMSÄÚÒÈÓÎºÇÌ¼ÂÐÅ¿Ì»®°¢vo¢¢ojmpqu~ncr~|~~}|x~}|}zsgRCOMH8121.+2040--1025?EBBD=?:5548LIS^JBHB+&!"(8K^locn·° ©¬°´²©®¸»¼ÅÃ¶v}|wvrh]QE:332647JfpxokjfVOD@CUnwtibblqwzwz|{¡¨±ÁËÓÛßÝØÏÃ¼º¹µ±«ª¦¡ }|vpgTD>6,*0551<;6<EKVZ3(#! &4H[~¡¢x_G1,+$%-Dg|{z ¬¹ÅÌÑÔÖ×ÙÙØÖÖÕÕÖ×ÕÕÖØØ×ÖÕÔÒÒÓÔÔÖ×¢¢¤§¦§¦§©ª©©©©©ªª¨¨¤¡xrmaXUQMHKJPTTVYZ\]]^]`abccb__baa`^\_`a`cb``aa`aa[^``acc_^^^]UOMOdÙÕÊÖË¾ÉÈ¼ËÐ¾ÆÌ¾¹³|xinty~vkdp}}{~{~{|zlbRIQTH=+-/--.////,10102952:<>9378EV\QKYLLD/$*8_ssc\nµ­£¨¬³·¸¯ ¡«¹¼¾ÃÃ§sowyvnd\NA>840/./4<]£¢¥~m[NJPi{wrmlqsxtwz|£©¹ÃÍÔÙÝÝ×ÈÁ¼¸µ´±¯ª¦£|yuiYG=:*-/476;B9?MGIPI-$!  *;Lc¨}pV9%).,(;\u}|x|¥³ÂÉÎÒ×ÖØÙØ×ÕÕÕÔÖÖÕÕ×ØÕÖÔÓÒÓÔÔÔÕ×¢¡¤¤¥¦¦§¨©©ªªª«««©¬¨¦¢}vrj^WQLGJKPRQSXW[]_a`\`cdddccbdda^^aeacf`^\`cbab``bccdc^_^^[VRMQRt¼ÕÕÖÉÃÏÄ¾ÏÍÀÈÊ¹À²¢~ztfjt|tlmsy|vvxxzf_y|p`VHE[YF6.++,.**+.410.3,160,/7B<0/18Kh]8?FNJ7" $8cs]Zw¥º«¦§¬µ¼½¶¥¥¬¶½ÂÄÁqoqoh^QID>631/.--AKh»Ã½·¹½³¨iUP[n||yvuuttvvx|~¢¨²ÀÈÎÕÛÞÚÑÉÀ¼µ³³°««©¥}|xvl_P?91.,/74<DCAGJFGT7)%! "0=Lo¨ xjO.&-53;Ssz{ ¬½ÅËÑÖØÙÙØØ×ÕÕÕÕÖÖÕÖØÖÕÕÓÒÒÔÕÖÖÕ £¥¥¥¤¥¨©¬«¬«©ª¬¬¬«§¦¢wqqaZSNKJLNNQW[[\^``a]afgh`addddc`_`ba`a__`bcccbbdefbb`]^_\WVUQQQ^ÇÚØÉÌÏÂÂÑÈÀÌÅÀÌ»§¦{~y{j`hu}~|zz|xokrxomw}||xbSewshUJ;AXYA6/-,,*/1-1:3.,/.3?1++3?:/'#+4UcI,6MXG/ "<n{^]|²¼ª§¦­´½Á¹©£¬¸¾ÂÄ±fkmje`O?;731.---07Ls¼ÊÈÅÃÆÅÁ·¤qe_gqx~~|{vwt{~~¥«¶ÁÈÒÚÞÞØÐÆ¾¶µ³°¬¬«§¤ ~wxpeTB:2-(,444;C?AJGJNF33%"!+26N§¤¡|fE-%,9GPl}|y|¦¶ÃÉÐÖÙÚÚÙØØÙ×ÕÕÖ×Ö×ÖÕÕÔÔÓÓÓÕÕ×Õ¡£¢¢¤¦¦©¨©©­¬ª¬¯®¬«©¦¡|uqiaWRNMJLPSV]Y]]]^_a`b`eacec^c`b`aec``abccabcdaacbbb^__b\YXWTOPLcÅÚÎÑÑÅËÐÃÄÐÂÇÖ¿´­vt{¤xf`hv|yyy{~vnou|}y{}rjp{xl`ZwobP909OU@70--/.52.2:6-*-37:3,+.C<6+%(.:SL23BZjN% ")C{t^`µº©«¬±¶¼Á¼«¤¯º¿ÄÂg`dfeYWK94412/+-+3>Qf­ËËÇÉÌËËÄµ|xvnp|{xyv~~}}¡¥­·ÀÎÖÚÜÜÖÎÄ¼¸²®­ª¦£¡ ¡}{wshYF<3*(,22.4?B?AJIHH?6)!"#..6\¥¤¨¡rZ6(&+;Sh|xz¡°ÀÈÌÓØÚÚØØÙÙØ×××ÕÕÖÕÕÔÔÔÓÒÔÖÖÕÖ¡¦¤¤¥ª©ª«¬«©¬¬¯­¬ª¨¢|snf]UMKKLORUXXZ_^^_a`_a`ce_abbaa_ac`abbebb_`__a`bcbd`ab^^\X]XUSORgÍÑÖÎÊÐÏÂËÍ¿ÊÐÃÂ¸ ¢||¦i_dl}z{}yrjpzz~{wyvkhw~vcY^bWB0+5HQD6.,').45/.>9./135:4-03@C85,),1235=4O|i:)$# !Iw]g¿¶§©¬°¸ÀÅ¼«¦¬¼ÃÇ½\aaXI@=:531/.*+-5GIABC·ÌËÎÑÌÍÇ¸¤uq{~{}{}~}} §°ºÆÐÖÛÝÛÕÌÄ¼µ¬¬§¤££¡  ~wwo^K?4)/-/0-/=A?=EFCBB7/$"!(/,:o¥¨¤kL8+#-Jf{|yyz¥·ÄÊÒÖØÙÙÚÚÙØ××ÖÖÕÔÔÔÒÓÓÓÓÔÕÖÖÖ£¥¦¦¦¨ª«¬¬¬¬ª¬¬­ªª¦¡}wrl`XSNONMORTXX\^^[^b^_aabbab^bdab__a_aca]^aba`acdcba`ea`]\]\XUSQVqÊÜËÎÔËÇÐËÀËÊÁÈ¹«µª¦¡{dcq|{tnqwz}utrmo}|rfWIIE:501CZ>.**(',5>:6:82.05473017EG:71+05)*/=2Ere3*,.$'Nx_i¶µ§ª±²·¿Å¼« §²»ÃÆ¬hU\[NC7343743/,*-*MRJ=:]°ÎÎÐÑÎÊÅº¡|u~}zz}~|¦±¶ÁÉÏ×ÜßÛÑËÂº±«¦¥£¥  |wtaOE9-+*.70.9CCEENAFC82.$!"30,Ho©§¢~fM3('8\{ ~yuv­ÀÈÏÔØÙÙÚÚÛÛÙØÖÕÕÖÔÓÒÓÔÔÕÕÕÕ××¢¥¥¦§¨¬®­¬¬ª«¬­­ªª§¥wte]XTPPLMQQTVX]]\]aa`cbab`a```bh]]`bbc`b`dc`_accccbbdb_\`^^YWUPOPhµÕÒÒÑÄÇÒÆÂÌÃ½Î¹¶Áª© ¢­ªw^_t}xusuy{|}rmjqz~}ykdYF623786J\H,*(*(*6CA53:2++17;?206EH36E0.2+%.1+;nO,'1/'(Zs`o¹®©¬±·ºÁÅ¿­¤µºÂÃXQRRF>423352200)%$-BhL7U¡ËÑÑÐÐÇÃº¢{wx{|¡¥°¼ÅÌÒÛßÞÖÏÈÀ¶¯ª¦£¢¡ ~yteUH=,').4339BAADOIEF@25,&&,0(+Q «§}sXL6((Mqyvtv¤¶ÃÍÔØÙÙÚÚÚÚÙØ×ÖÕÔÓÒÓÓÓÔÕÕÕÕÖ×¢¤¥§¨«ªª­©««¬­¯¯«ª©§£{vnbWWONMMNMQVXZ[]^_b\`b_`cb^___^^\_c`b``aaaa^cccedadca__b`_]XUQPOZºÖÛÐ¾ÈÏÃÁÌ·¾Î»¿Å°¨»¦¢©®©vdZ\n~ztv~zomjq~zsjY=+()+09O`R7+(*+*5D@30:9*-22573.2ER59LH032(64*@e@)+60,3_j]t¢´ª©®±·¼ÃÅ¿³¥¡¦µ»ÄºuOSMH@932305.054+%#'AcV>VÎÏÏÍÌÊÇº£~yv{~~¦¯¿ÆÎÖÚßÚÒÎÇ¼³­¨¥¡¡¢¢|wsf\I;,(*/.4299=BFKJCIC412,'$-*'8^©«¢f^C1/Bh{yuqx¬½ÉÑÔØÚÛÛÚÙÚÙ×ÖÕÓÓÓÒÒÒÔÕÕÖÖÖ×~¢¥¤¦¨©¨©«­­±®­­­¬«ª§£¢|vpeYTPQLNMLPRSZ\^\_cadbb`ca__``_`]]`a_``^aaccc`abcbdbbb``_]_\WROPNWµÚÕÅÌËÃÌÉ¹ÂÇºÈÈº¾Á²¤¨©¡¦£¤h[`m{qoy}{wqtqu|~w`@.+(%*9S_V:,()+,5CB34@9-.3561/,0DQ=0BY8;=9?7):q>+4:+"3sj^x¨´£§¬±·¾ÅÅÀµ§¢¤ªµ¾È«_LLF=7401/01,.@H:3-7IVF<e§ÉÌÉÌÐÎÈµ¨¨§¡¥®ª|ux}©µ¿ÇÖÙÝÛ×ÒÌÄ¶¯ª§£¢¤¡¡~|ui^P?.+)+,01+0:@CILGHH<./0-'&)%&<g§§~w^Y=->\w|zvtw£·ÅÍÓ×ÚÛÙ×ÚÚÙ×ÕÓÒÒÓÒÒÓÔÕÖÖÕÖÕ|¡£¤§¨¨««ª­¯¯­­¬«¯­ª¨¦£¡zqj_YRQNMMONQTZ]^\]^aaadcc`_^`a_\[]ad]ddedcfccbabbbebdhda`]`\ZWRPNQ[ÌÕÒÕËÆÍÆ½ÈÀ¹ÉÄ»ÅÆ¬¤­³²¬¬gft~{vkv~~~{t||}zx{|o\G7*(-:T`_<.*)),;KC35<>./.5A5,,,;]B,0?EKS991+?_F-A<%!<ud^~®´¤£¬³¶»ÃÅÀµ¬¨ª¬·ÂÀNGG?6301/07=03FVWOFJXQ@Ft®ÉÊËÍÏË¼®³¹¯«®¯¥|z~ ª¸ÃÏÕÙÜÛÚÒÊ¾³¬§¤£¥¢ |ukeVE2*)*.,3..9ACFJEGJC3*/3/*+'$+Fp¢«¥[`P?AZo~{xwtv°ÀËÑÖÙÛÚÙÚÛÙ×ÕÒÓÒÑÓÓÓÔÔÕÖÕÔÕ{£££¤¦¨««««¯°¯¬¬¬®®ªª§££wng^XUKKLOMQTWV[[\_ba___ea```^_]]_bb_cebb_ecbccaacdbcdbb^]][Z[URPRPa¹×ÝÍÍÌÀÄÌ¾ºÎ¿¿ÍÂ©£­¸¹±©©¢ke~|wwzy{wnjnu{~ysoxtwxvxvm]?,,0/H^aF1.*,-;KA/4;=1.-377*-)4PS-&+BR]P9,&3eHA?/""8{bf´¸¥©¬±·¾ÂÆÃ¹²¬¬²»Ã»jDAD@70/115ENG3:Y`\XTUGAY¶ÄÆÈÉÇ½´±¬©ª©¬£z~¡­½ÊÑÖÛÝÝ×ÐÆ¶²ª¦¦§£}wnfXF3()*,/4/-6A>?DC@EJ<./1211'$!.Nw§­ |qX\N@Zo|{ytty§¹ÆÎÕØÚÛÚÙÚÙØÕÓÓÒÐÔÒÓÔÔÔÕÖÔÔw~¢¤¤¦ªª©­«­¯®­¬­¯®««¨¥¡~rjaXWPKMMPSRUYZ\][]`_]]_adeba_]`b`b`acdcacbab`a`acefabba`a^Z^[YWPMPX}»ÖÕÓÍ¾ËÉºÄË»ÀÍ¼­¡¢§¯²±¹·ªottuz{wpffpv|~~|xpowxy|z}ztcD321/<_kP5+().5@7,2<=0-*3150)),Jb6&(2G`o@+#2WZ7-#$Czcj¹´¥§¬²¹¿ÄÈÅ¼µ³­³½Å¨`CAAA5./.2;O]ZD:CGOSMC<Ko¼ÂÃ¿¾¹®   ¢y|}¥´ÃËÔÜßßÝ×ÏÀ´­¨¥¨£~wrdZI2((),07204;?AFQ=;FD6.0049-'%$2Sª¨x\XXPQq{~|yxtut±ÁÌÓØÛÜÜÙÚÚ××ÓÑÒÑÓÔÓÔÓÓÔÕÔÓsz ¡¥¦ªªª««­®¯®«¬­¬­¬©ª¤wogaZPJLJNQRVZZYY[\]][_]`baa_^_afb``begka`a_`cde_efb___`^^\`a]_^RLLN\³ÖÛÏÇÍÅ¾ÌÎ¸ÇËº¯¦­®ª±º¸¦e{rqqtvpfgot|zwuqsyvruzti]PFA;7-2Tj_;&'(*58.,3CI7/07317+*+D\J&()8UjS3#*TW6%$#%Ehq»µ¢¨«²»ÁÅÈÉ¾¹¸·¶¾ÂSAA<>4)))1=PblfWH=<?9<Db¨¹·¶³®­¡~|~¡©¹ÃÐÙÝÞÝÚÖË¿°¨¤¤¢ ¢~zth\I2+,').011/6><BGB8AN<2/-08;)$#(<a©©zvRYbSdv~}}{uuszª¿ÌÓØÚÜÜÚÚÚ×ÕÔÓÒÑÒÕÔÔÓÔÕÔÓÓnv~¥§©«®«­®­­«ª¬«©®®«ª¦¤|tjd^VQMLMSQRWXXY[`\`_```_^`babdc_c`_cdbb_`aaedcbcfa_aa`^][ba^_ZVSOMLYy¬Ô×ÍÏÁÅÐÉÀÌË¹¹­  ©¬³¹º¦bu|rtrstphipsy{yrlmuunpshSJCMYC/*/@hjI/(-3<6+5@MQ92+-245,(*8dJ-('+CghB+.GT5%$+Wmp»°§ª­¶»ÂÇÉÈÀº·¹µ¿»OIGGB5,)+2<H^owrf[RMPRb|¤«¨© mk¥¡¤ }¢­»ÉÑÚÜÜÛÙÒÈ¶©¤¤¡~ylfO6.,+/*//1/28:=LJ9?KF7.,,47-&'")=r§¦ufX`gdu|zxvwqt¹ÈÐÕÙÛÜÜÛÙØÖÔÓÑÑÒÔÔÓÓÓÓÓÓÒnsx~ ¦¥§«««­­«®­«¬«­­­¬«¨¤ xpiaZWQMKPQQUXXW[_^_dcbb`^aac`eddda^`deeb`bcbacccedb`_`^`^ac`]YXXVROOZs¾ÖØÔÈÍÑÆÆÖÈÀÂµª£¡©ª²¹¶£zZ{xvtsvjbcox{yxkefp|tppoU<CQVP<*+05J_^;*4AK:017PN90)(-77,&&2V[-&&&@]cX6/1V<%!#2S¤v¥¼«¤¨®¶¼ÃÉÈÈÀ¹¸¼¼¾±eDMLH>43*,/<FSbox|tpnnqvm{w¡ ¡¤¡|¢°ÀÊÕØÛÜÜØÓÃ±¤¡¡¡}rjU:.*)'&-35116>AIJ?@GPC5-+/8.),$$2Nx ¯VRlkq||{xwurt´ÄÍÔØÛÝÞÝÚØÖÔÓÒÒÒÓÔÒÒÒÒÒÑÑlqvy¡¤©ªª«®¬«­­­¬¬¬ªª««¦££~tmf_[TNHGOMPTSV[[[[bbbbb_b_^`bdggb__dffcaadcddcafbab]_`acbcb`^\[XSPOQZ¾ÕÜÍ×ÒÆÎÔÈÅÏÂ¹³°±°³»¹¨k~zxzzwlcgoz}{vmflssk{zqneRHGE<H?0*(060ShU>;B>4/.8OP@0%',560(&,Eh:&$'9aOgL4)<G)"#+Vx®À«§©­³½ÃÉÇÃÀ¾º¾¾Â£\GQQE833/.,2EQXforv|qny££ £¢¤«´ÀÏÖÚÞÞÜÕÍ¿¨ £¡|wpkX8,')+)(35336=BFJ?6>FI?0,,73,.,'#1[¦ªjUVnxz~{yxtry¨¿ËÒÙÝÝÞÝÛÙØÕÕÓÒÓÓÔÓÒÒÒÑÑÑgnry¡¡©¨©ª¬«««¬®­­«§ª­©¦¤£¡|qhb[SPJGMOLOQVYY][\beabbc__bgdecdc^aeceba`abgf`baac_bacaabbaa_\ZSQQQSY®ÇÒÛÖÍÖÕÉÍÑÆ¾½ÁÁº¸¼¿±m{{x|}}xpqw{{}tldoy}{|m\hnl_ZNP@5264*+$+)+=Ue\J@5,*/<VT=5+$%.9:1**>YF$%'0QNK^I%2F/$"+Y~t²»©©ª­µ¾ÄÇÉÃÁÀ¼¿Â¿SPUOA7513-+09>Neqtv~uvwr¢¢££ ¦¦¢}¦«³ÂÊÓÙÞÞØÕÌ¸¦¡£§¢~}xslX;,&)+)+-4:539@EKK:;GMG90-3A+,.($';^©¦bNh|}{ytrv¸ÆÐÖÛßÝÜÛÙØ×ÕÓÑÓÔÔÓÒÑÐÐÐÏfmov} ¤§¦§ªª¬¬¬®­¬ª¨©ªª©¨¥¤ xmg_VPLJLLLPVVVXXY^a``ac`]a_dddcabaacedde``bdcdcdaf__abbb`eddba^WXSSPS`t¸ÙÚÕÚÔÊÒÖÉ½½ÂÄÅÀ¾ÅÁ¤{u}||~ytv{}z{tkjs}|{yhX[ZMRVR@.,.4+&%)((.<RbcTB4*+F^T:5(%,*1:50*1SD-))1;U1OU@230-^ro»¹¨©¬¯µ»ÃÆÉÅÂÁ½¾À¼|STUMF>=AB=5/,0G^klpv}zs|raez£¥¤¥¥¡¦« }£­¸¼ÎÕÛÝÜÚÔÊµ¤¢¡|zupZ?/))+,-,57306>EGSE>CNF>846F;+/('#-Ce©£~v[Yv~~{vrs|­ÁÍÓØÛÝÜÛÙØ×ÕÕÑÒÓÓÑÒÑÑÐÏÏfjptu} ¢¤§ª«­«««ª­­ª««§ª¨©§¥¢}smhbUMIJIHOOSTWZ[[`^`^c``a_a`fhaadaddbdgd``^`dbffbabbbdfccefafa\\YXTSWWb¬ËÓßÒÌÖÔÌÃ¾À¿¿½¾ÃÇ¸zy}{x{uqvvy|zvnmvr[I=?KVR>//48-'%())*.:IU`VH;;RgT77*%),09562/9B<.4;7PH3DYG5'-bllº¶¨©­¯µ¸¾ÅÊÇÁÃÀÀÃ®lSZYVSORVVXM>59IY^YLnsnlrvdY|¤§§¤ª­¤¤¥¡~¥¬³ÂÏØÛÝÝÛÕÇ²|{yo\B.)),.-,172/69@IPK?;IFD>63?F.60*,+3Cr ¤{whNd{|vtsy¤¼ÊÒÖÚÜÜÛÙ×ÖÕÓÓÒÑÒÏÑÒÑÏÏÐfglqsx|¡£¦§ª¬«®¬ª¬¬©©ª©««©©©£zulcZOKIHGNPRUXXYX[^_]]]Z`aa`a`_aaceddcfcb`^``bdhacbbdfdcdcfedb_\[[[[WWU\p°ËÐÑÜÒÏËÃÀÁÁ¿½¿ÉÂª©¤{z{{yzutxxz{ztpq{~mMFNDFPN;343@0'&&'())-06<FQCJaeM?4/(+,,/144/-EM??>2Ma--IWH#-nko¾°ª­°¯´¶¿ÄÊÈÄÄÄÅÈ«aZcda[]ahgibVMNW_eaetxkhwzqkx¡¥©¥£©«¦¥¢ }£¬»ÆÒÚÝÝÞÛÖÆ§ ~{zn[?.)(*-,+,6515<;K[WPGMMA>72;A:67)("(4T{¢§xcPt£~|yssyµÆÐÔÙÛÜÜÙ×ÖÔÒÒÒÑÐÏÑÔÑÐÑÐdeikpr{~£¤§«««ªª«ª©©©¨ª¬­«ªª¨¥xl^ZRPKHIJKMUYVVY[^Z\^___`dc`_]`b`_cecfe``\__c_adgdbcacdeeddcgcba^_ZWWUVYbt·ÊÜÖÐÌÅÄÆÁÁÁÂÄÃºª«xtuz~{suxxzztkgt}}{{{wfaYZ_ZYVT:66?H0$')+*(()'')/6:PhJ=G7.**),/1344;O[aT:2RdD&/D<$  7pik¼²¨­°­µ·½ÅÈÈÄÁÅÅÄdcnnoomuyxwtkghkiksw~|rn{~yv| ¦«¬§¤¥§§ª¤||©³¾ÍÕØÛàßÛÒÀ¦}}yp[=/',0-,,,/?45;8CPYNJERN@:<8D923*&"",;h¤ t~Xi}}ytsv}®ÁÌÓ×ÚÜÛÙÖÕÔÒÒÒÑÐÏÐÓÒÐÐÐceifnsvz ¢¤¨«ª©©©©ªª¬ª¬­«ª¬ªªª¤£qc\XSKDFFINRRRT[_]^`_b_ccdb_`daf`_beccjedaaaaa`dda___`cdadcdeded`b_][XUTTUeyÈÙÖÏÈÊÉÅÂÆÄÆÈÁ·¤slsy~ztrrsrwplo|~wwwnYXnklhbXE524HZ4)&'.3'-+&%%)/:\lMKE9,&*(,,/26D<AQ`b[T[wV1..*!!!3rmoÇ±¦©®°³·¶ÄÊÉÆÃÅÄÁcdqwzyxz{|{rr{}r~¢£©¯¬¦¥¦ªª©¨¡~}|§­¸ÅËÑØàâáÜÑ¸ ~|xs`<.(,--/*,+:959;<NXMBERUC<=:>;2-*%&$*5St«}q\|{yvtuy¥»ÈÐÖÚÛÛÙ×ÕÒÑÑÐÑÐÏÑÑÐÐÐÐbcfflqqz¡£¨©«¬ª¨¨ª«¬«««ªªª©©ª¦¢¢tlb\UPLEDINSPQTW[^\[^__ccbbaccabc`_bcacdcad`fca`_^^`^aeddfjjfdffgeda`^[ZWTTZf³ÍÙØ×ÒËÆÊÆÆÆÅº }miowzxooqssuvrr|~xjkuokiY=70/9PU<&#%67-14'',/2?dkQR>2*%(-43,(,3+-3?LTY^qm_K;)6rnu¡À³¦¦«®³µµ¿ËÉÇÆÈÇ¹gfu|}~¥©¦©ª§¨¨ª®®¬¨¤¢¡{vz¡¨²¼ÂÉÒÞãâÝ×Ë¶|zt_?./,,2.+*-0;26<<L]YC<DSK?89?B5//)))&&=b{¢¤wlq{{xvuv·ÆÏÔØÛÚØ×ÔÒÐÐÑÑÑÏÑÑÐÏÎÏa``bginv{£¦¦©«ªª«««««ªª«««©¨©§¤¢zqd]YTOEGLMMOSSRY__]`Z\^`acdc`dbabcacfdbfb^`ac`^b_ab`aeechkjffjefddbcd__\YTUV`z§ÖÜÞÜ×ÒÌÇÊÆÃ½¡xhdnrvvsqptstupt}~uifcR7244L\d?,)*:G0*5346;?Oj\LA4++(*183,,*+$&(,/?VGFTPNI@0 0zu~¤Â¯¨©­°°µ·ÁÌËÆÇÉÇ³rlmvz¤©¬¬­ª¦¨¨¯¯®¬©¨¤¤}{|~|~¢ª²»ÀÊØáäâÝÔÅ¨~{tc=/0.162/-1/787;;BY_QCBIKD=:?@7011)*('.En|©¢vz~g|{ywss³ÃÍÒÖÛÛÙÖÒÑÏÐÐÏÏÎÍÑÒÏÏÐdb^`cfpty £¥¨¨¨©­ª«¬ª¨©¬«­¬ªª¨£¡£~vmd[RMGEFKNMRRPV_^_a`^___aba``baac`dfebcdcdbcb_`ab_abdfgihkijjgeefeeb```[WVXT]}®ÔØ×ØØÖÏÍÍÊ¾¦yhbflpqpqsuplkdt}}theaR;84:]bcQ0('DH-)349AIHZdPA@-(.+*065-,&(##%&.-610-.-/=:'#=xg­À²¨¨°³¯µ¸ÃËÉÅÂÅÃ oisuu|{¢¦«¯¯­ª¨ª®°±«®ª©§£}|}{{~£©±¸ÃÑÜãäáÛÐÃ|wfE//0/64/.-04<:=:;K`ZE<DLIB8CB:642.*(&%,Rn¤up}yz}zwuu|®¿ÊÐÖÚÚØ×ÒÐÎÏÏÎÏÍÏÐÑÒÑÏab`bdfmqv~ ¢ª¨§ª¬ªª­¬¦©««¬¬­ª©¦¤¢}tk`XOLGHGGMPSPSYZ\]a__^__cfdaa^_babbcc```a`d_bbfc_a`difeffgilhhlieffdee][ZYWV_ÅÓÕÔÔ×ØÒÓÎ¾ }fddhigjlqtpkgfz{}|rebaK71/7MQgK8/,FO*%8-.;AM\W=9=7-++.,64)&%)%$%('')*+%*'$$'#!8|¤e~¯Ä­ªª±´³¶¹ÅÈÉÅÃÃ»iovtv{}~¤£§¬­­«§¦¬°­°°®«§¥¡~~}{xz{¡¨°»ÇÕàååà×Ë­zgH20..02*/+/14:A:6AYZJ@>IOI7>B<5<10+'%%&3X|¡ rq|}ztstx¥ºÈÐÖ×ÙØ×ÓÏÍÎÎÍÎÎÏÐÐÑÑÑ[^^`bfhmtz ¢¥§§ª®ª¨««ª©©««­­ª¨§§¥£yne\TOJKEILOSSTW\\`bc`]_cddb`a`_c]b`cb`adc_c`cceccb]bdeigffjkghihhjlfgfab^\[XYpÔÚÙÓÔÖÖÖÓÄªzffgihhihnsqkdjxkabV91;-&39Y`=0,<E,'3/'/;RM<2/5942.,+/8)'&''')-&''**)*$#% =ya±Á­¦¬²·¸¹¼ÄÉÉÆÃÅ·krxy{~~¡¤¤¥¤¦©ª¬¬§¦«®®¯°­ª¦£¢¡}~}{xy{{{~¤­±·ÊÚâåäÜÒÃzgK2..//0,-..2-=F?8>TZRF=AMM>8E>6:1--(#&%'<]¡q~zwtsu ¶ÆÏÕ×ØÙÖÔÐÍÍÍÌÍÏÏÐÑÑÐÎ`^a_`fgjoy~ £¥¨ª«¨©©¬®­¬­­««««¨©©§ }tk_XTKKGFKNQSVW[\^_]`]]_`__^bbbb[^dbbcdedbca[aa`_`^`cfiegihjhhhmkklkikcfb`]VW[zÀØÚÙÖÒÒÖØÒ¯kfgikonnnokfep|~{}te]\D.4:-&&*HtRA782+*4''-?I<1-16BB>92.0:/'%$)*+.,,*,-(*#$,'">~ f{®Â©«±³¶¸¶¾ÄÈÇÃÂÃ©sl{{|¢¤¦¥§¨«©ª«©ª¯­°°±­©¨¦¥{}|yvxz|z|~¤¬±½ÏÞäæãØÉ¬xjO0,-,/22-00129FE96LWVNC>AO@4<>9<7/-&$&$&0>m~|zvtss|²ÃËÔ××ØÖÓÏÍÌÌËÍÎÏÏÏÐÐÐb`aa_afeir{¡¥¦©¬§«ª«¬­¬­¬ª©ª««©¨©¤ungbXOMKBINPRRU[^\_^]]\a\aa_`adbb`abcedce`_`]`_b````befegggkjijnnmiljkiccb_WUWhÓÙÙÚÖÑÏÓÓ¶|mijnportsqibgxx}rsxv`XL6.:?0##$;boR>A+%"-/+4C=453467CJJ>.+52""((),1/2*,0,'##'(#F}}cw±¿¬¨¯¬®®´¿ÄÆÄÄÂÁlnxz|¡£¥¦§¢¥§ª¬¬«­®¯°®®°²°ª«¬¦£ ~|yxyz{{|¢ª±·ÇÕÞãáÚÐ¸xnN3-/-*-/++,045MH>8BVQTICCID56A<D?6.+%%'+,4Nr}|zxsrsv¬½ÉÒÔÕÖÕÓÐÍÌÌÌËÏÏÏÎÍÏÐd^]`abcdhpx¡¥¦¨©¨««¬ªªª­«ª©©©­©¨§¥¢vldWRNHFIMTPSUX]]]`[^``]`b`cc]_cccdbfdab`]^^^_cbbca`efjhgimkjlonkjmkfkggda]ZYYu¶ÔØ×Ø×ÓÑÏ¶jionquxusqjch{}{uywyzl_D12HC0%##'OwfUL0#'.524972575801>LSA37/%#%%%),+,.-..,(#%$ #Fye³Ä¯£¥£­¸ÂÅÈÄÂÀ±~fuy{|¡¡¥«­ª©©§ª®®­®®²³°¯±±°²¯¬ª¬¥¡~{wxyzz|§®´¾ËÕÛÛØÐ¼{qP5/0.,*/,.0/15>GA7;NTTJFDIF:<A?=FD4.'%&*')4Xz z}}|xrrsv£¹ÇÏÒÕÖÕÓÏÌÌÌÌÌÎÏÏÏÐÏÏca]^ceaafmu} ¡£¦ª©«ª¬«ª¬­«««¬¬¬¬«¨¦¢|sj]UMFHHKPOQRSW[\^[^``Z]`_`deaf`bccdda^^]````^`cda`cfegiikkkmnpnnlkklmhhb`_[XfÉÜØÖØÙ×ÒÃokmmqv|w{vtms~{|xz{eZ?.4KQ-'%!$<_|^`2##)60..2/AK@9>)7S[\TC0&(%')+-+*5+,/2-%%$ #H{a½Ã®¥²ÀÅÇÇÅÂÀ¦hcry ¢¤¥©«¯¯«¬¬®²³±°°°°¯®¯­¯°­¬¨¬§¢¡¡|zwwxxux}¡¬´¹ÃÌÑÒÓÏ½yrQ512/1-111//.0:CD?=LRYNLEEHGAJC<CF?0*&!&')/A`~{ywsot|¯ÂÌÐÓÖÔÑÏÌÊÊÊËÎÏÐÒÐÎÎa]^_dcccdjsw~  ¢¦©§©¬®«ªª¬­¬­­¬ª­«©©¤¥ wocVPNMGFMPQLQTYZ\]`^a^]^`__dcdccab_dgc``^b__`abbb`dhggghikqmmqpmplrkmkidca[WYs£ÌÝÚÖ×ÙØÎ¢zpqjrtwwwvsty~{~v`O=/-MY>($!$+Hwp]8##&<0**15AO@:NN=CZbeY<+)'-+,+)*)(+,-,$"" #@vb¸¿¥ µº¿ÃÇÇÄÀ½dcrw~¢¡£¡¡¤ª«¬°­¬¬¬±¯±²°²°®°®­®¯¬©©ª§¥ ~{{{yy|yux{¤®¶¾ÆÊÌÌÉ· |rT32332002-,..09@EA7KPPNKD@JKIHA>;>E>4-'#)-+1Gi ~ywwpsx§½ÇÌÐÓÓÑÐÍÍËÉÍÎÏÑÒÑÏÏaa`_baaadipuz ¤¨©ª«««¬¬®­ª¬­¬ª¬¬ª§¤¢|vj\XONHFLONNST_Y[^^\_\````^`bdce``beheabafe`_^_cdacfggfdhinklmrrtlmlkiifgd_\[aw¯×ÜÜØ×ÙÓµ~srnpruvpppu~~z{~t]P:,,GaJ&$ "(8Y~h7#"'03()5DC?46=;/5L^feXD4((*%(*)#&&&)*&"!"D|wb¸°£¬´»ÁÃÅÆÄÁ¸`gqv}¡¢¥¥¢£¡¨««¬¯®¬¨¨©®²±²®¬²®«ª««¬ª©¦¥¡|z}z{}{yzz¦¯¶½ÅÈÉÉ³ ¡¡xZ<22330//,,,/57=C<:FJOLRIACJTNB>8;CC?61&+-,,9Rl¢¡~{yxxsqs²ÁÊÎÐÔÑÑÎÍÌËËÍÐÒÓÒÐÐ_a]\[b`acenru ¢¦¨ª©¨«««¬¬¬¬«¬«¬«¬«©¦¢zn_ZRNJJKNMNRT[\ZX^[\_c``___^a_aa__cca_^acg]___cafccghhikjjnnlpnmmloniigii`_]]aªÍÜÝØÛ×Àsotqrqolils{y~}xhYM?++MjZ8%#"+3RwwO  &'1&'3EAC;2*++.7RfegbK@9703+(#')(')'##%-D~nc¢¥¬±³¹ÁÆÈÆÄÃ©najq} £¤§¨£¢£¦«¬¬²²°­­¬®°®®®­®°¬¨¬¯¯«¦¥¥¤ ~||{{{zz{}~¡ª²½ÂÆÆ¶¦£¡{a91010/+.00.,.4=B@<BGMNOPEADNM@=339HIA8,$'.*.B]z¤~|zyususx§»ÇÌÎÑÐÐÍËÌËÌÍÐÒÓÒÑÒ```^^_]a`aglu} ¢£¦¨««ª«¬­¬°­¬¬¬«®¯©©§¥ ~rhaXMKJJILORURVYX]]]`^\^^[^_ca__^_`_`\]`_ba_^`b`bbdfijflkhjmqroqponlmnijkeca``cz©ÍÜÝÝÛÐ¥ynqrtrpniis}zvd[TH20Gbo>"%%)7Vy~l/!"%(&&3SPB;.'')),=NWatqkf^[VPE??J?7..$5G@Uwa` ¢¢®²µ¶ÂÆÈÆÂÀaciqy~ £¨ª§£§§¨«®°´²²²°°¯°±²³®­­«««°­§§¦£  {~~}}}~|{|}©³»¿Ä·¬§£~x]8//001-/22-,+25:=<CJJRPWNFGQV<B706FSK>1)+.,,6Pa¡ ~}}zwurrr|±¿ÆÊÎÐÐÍÍÌËËÍÐÓÔÕÓÒY[__^_^_achnt|¡¢¥«¬ª§«­­®°®®©®®®®«©¨¥¡ ync]UQPNHGIMTSSTWX][^`]`a]c\^^\`c_^^_^^`da`aacfdabbghhgikiknqqpnptopnpnkkkg`d`^e}§ÏàáÞ×¾wnsusrqpjtyskh_M43@TmL%#')4Su~V$  &&+:DD<7*%'$#*23>IdpyvqtqjgW\]XK73+8>BOmvU\©­«¯·¹ÀÇÉÈÃÁY_hny ¤¨¨§©ª§¨¬­°²±²²²²µ¹·µ±­®­¬ª¬«ª§§£  ~zxwwy¦±¹¾µ®¨£}b6.212200/40/26:8<?DFHNQNVKIOTIB;++7KQK7//,.,/@Xt¦~~|{yvropt¥¶¾ÆÌÏÐÎÌÌÌÌÏÐÓÕÕÔÓ^_]_`b_]bbhmqu{ ¢©¨«ªª¬¬¬®¯®­®­­¬­¬©¦£~sg^ZRMEFIKPRRSRV[^^__\`_`b_]___a`_````bcbcdccfb``abedhghgjoppqpqrpqpnolmljgfb`_fÃÞâÝØ½ytwurnofx~}~{vnbA04APkX#"$'0Kf|t;$"%&.&1DG?.+)%$',/236HjkrvteNI?EH?2((*),Hmw]Z¹¯§¯¶»¿ÈÉÆÄ´zT_hlv ¤¦¨©««¬«¬¯²³³³³³´¸¸¶´°®­ª©ª«¨§¦¤¡¢~{~}ywwxz~~¡¯»³¯¨¤}_=0,0/501.10,00;58@C@B@RJPLEKRQE</,2B\^?5)&+.-2M\¢~zywtnkjhz¦´ÂÊÎÏÎÍÍÍÎÍÑÑÔÔÔÒ]\^]]_\^cedjoux|¢§ª¬¬««ª¬¬¬°­­­¬«®­ªª¥¤¡}pa\WRNHJJLNQRTX[^YZ^[]`___\`^]_aca_`acbcadbbcbaaccdcgigdhknoqstsrqqpnmonlmjebbclw»ÕÞßÔ¸vwxxtkj|{z{{}zo[<-6SIhW0#')+J_etg0$&,*-?SS6/,&$#&*'%*-6CLbhU7--187-$$#$)C}YZ¹¶¢¨³·¼ÁÈÊÅÅªdQYfqu}} ¢¥§ªª«­­¬¯±²³±¯´²¯°³´µ°¬ª¨ª«©¦§££¥ ~|||yyyz{y{­º¶°ª¥ {g7.-0.,.4../-,.454CED>@KQCP@JRQG>6-5:HXR@0&),+/@Uj¤|zuqnjfd_e|ª¼ÅËÏÏÏÎÍÎÏÑÒÓÔÔÔ\[]Z[^]\bdcekrx{¥©««¬®¬ª««°¬«¬«¬­­¬ª¦¦¤vja[UOKJJIKQQVVX[[[^_]^``]_a`b`adc_`addb__`_a]accccegiiginpnssrpnqponmoppojgiehhlx¦ÍàáÑ«{x{pim|ywt{nW5-;TQ]_)$-*1MYWB[;(%')(2LXI,&%##%%$#&&(-3<?80((*33*%'%#)I`aÄÁ¤¤ª²·¼ÁÇÉÆÄVR[fsuyz¡ ¤§§©«ª«­°±³°°³±®°°°²¯¯­¨§ªª¦¦£¤¤ |yx{}{ywyxuyy~²¾º³ª¦£{j>..-.,-11110,1855>DGA:@RCFHHOPPG<404=OZO=0-..41G^¢ ~|wxwqmfb_UVf³ÃÊÎÐÐÐÐÐÑÓÐÒÓÓÔ]]]_\__`cdehmorx} £¥¨«ª®­¬¬«¬«­¯ª««¬¬ª§¦£ zqh_WRKFIIJPVVVX]][\[[]_\]`abcbbba__`ab```accbabbfecegijjlnosrropttqqpprnokkmjllikqyÁ×ÜÉ¥{ztop}|rp{qR5.;_G^`9(*&1V\U;Nyk<..,-.?U[4)'((#%#$'(&&,/0.0+(*.*)"*)*4Reh¿Áª¦ª¯·½ÁÅÊÆÀST_hnsxx¢¡£¥¦¨¬¬­­®¯®±³²¶¯¯°±°¯¯¬©¨¨ª¨¨¥¡¤¡ztsw}~xrmpgmotwx|¢·½º´¬©¦ ~j=-0.///79200./364;EL?8AMN?MEGNRPIB75=ELWN5/3.118Ns£¤ ¡~{wspmle`[VOOVj©¼ÇÌÐÐÑÑÑÒÒÒÓÓÔÕca^^\_b_dekihmpu{~¢¤¦ª«¬­¬««­ª«­®­«¬«©§§¤¢xnfYUNIHIMLRWTW[\ZX\[]\[`cccaa`a_^[a_abcbbbdb_acdeedeegijmonnnotvvuprssnmonqommkfimy´ÏÓ»zzytu}~~}ts{v]57C\S^v3',(4R_]2(Wv|cA,,,,3J^Q-))'&'&'((**-.050+'%')(')/28XfiÂÂ¨¦«°µ»ÃÅÉÇ´tOX^hmsvz ¤¥¦§«­­­¬®¯°°¯°°¬®°®°®­­ªªª¨§¤ ¡£zurw~~{jfh[[X[[cnxv±¼¾¼¸±­¨ nC.0.,.+6@;1./14724AME5EMTIJIGJRSG?72?HBUV=1.1-/1;Xx¡§|wwwrojmkg`ZTLHM\xµÃÉÐÑÒÒÒÒÒÓÓÓÔÓ`_`_a_a_efhjilmsu{£§ª¬¬ª¬®¬«­««­­««««ª¨¦£ ~ui`XTLDEKLNUXV[VYYYZ^_]]_]_`bba`__bba`a`a_`a__bbbccfhifglmlmoorvusqpqqqpsstpppmnjlmy»¼vqsqwz|}wqymR96CZFhv?(,3:\^U1)7Ljn]>/)*+3_f=)*+.0,*)--,0-/70+'''(%%')08_\gÀ¼¤¦ª³¶ºÁÇÈÈ¬[NY`iootw~}¡¢£¤§ª©©©ª­¬«¯¯¯­­®®¬ª¬®©©¨¦§¤ ¥¤¡yrou|}oXHMT[Z[^edfnv²¿ÀÂÀºµ±ª¢pE1,,-/029@//232453<HL=8CSKJIMKORG753??@LXV7-55400Ciª§£||{yrqnlkklmid_UNJJOe­¿ÇÍÐÒÑÒÓÓÓÓÔÔÓ]]__`aacbdjjhjlqv{ ¡¥©«¬ª¬­¬«­¬««­¬¬ª«¬©§£¢¡wmgZSPJEINIOTRVYZY[c`]\]`a`]`]^`a_``\]_^_``ca_^_^aegikjilnlmponqsssuopqttsttuspqpoptvojip|~}votrYB039PT`u:.,(?bhM+#$3KWY]?++,/Gbf6(+0,-.+**+,+046+',*%!!"#60b`i¾»¢¨­±´¸ÀÉÉÈRMWbopsvz}~~ ¢¥§¦¥§¥§©¨ª®°®­¬­«©«ª¨©¨¦¦¦¤£¡vmkrye@47G[bjmlnqtw³ÀÄÂÁÁ¿¸²¬¥wJ1),+,-4563102.646>GD:2;RNHGLGKRLA<9<C::P\F1.3+039Su¨©£ ~{xuwrpomjdkmmollf]UOJL_¤½ÈÍÐÓÓÔÕÓÔÓÔÓÔda__^abecdihhjjosy¢¦ª©ª­«ª©ª«§­¯¬««¬««©§£uj`XWNFHIIOOOSVY]\[]\[Ybaa_]_b`a^_`^^^]^acb]^_cadcdilhikmkitukpsustrrqssqtsstsrrsuvw{ypigu|u{z|vlqnV>13>K\^^9,+/?pkH(!!%5WASTD:0.0YzZ6*.-.,((')+)*/:1,)&(*!!#*4_]c¸µ£¥°­±¹ÂÇÊÅ@N\dlptxzx £¥£¡¥£¤¨«¨ª²®¬ª¨¦©ª§¨¨¨¦£¡¢£voiqw|pJ31=Rivy{yvvv¨¼ÅÆÂÂÁÀ½¶¯§¡uJ/(-)*-3610420.586=IC;6<K[ICKKLOOGE<>EA:D]]=01.036?a§¥¡¡~yzturolihhebjlopqqlg^QHGY}¶ÅÍÑÔÒÔÓÒÓÓÔÔÕ]]]^_`babcgfhgilpw|£¥ª©ª«©ª©««­®¯­«¬¬ª©¨¦£¡yom]ZPIEHDGOSUTVZZZ[\ZZ_bbb`_^_`_^cc`_`dcbdaccccdccfighikkpomoquqrtttrrusuvurqrqw}vh_gy}lputvz}}phlkTB567KUXU3-03GgpS)  !-KO:<BPC@8DfS,.0/-'$#(,--.445&#(&#"#%-dbd·µ¢¥¯²³·ÄÊÎÁyFMZakoty{{|¡¥¦¥«««®¯¯©¦£§©§¦¨§¥¡ ¢|vkpw|mKCBRgw~~wuz©»ÄÆÃÁÁ¿Á¿´©¤}N1*+.--230/./0,572;FE878DVRFDLMSVLB?@C?::P`R804:864Hl¥ª¤££~~zxtrsrnhfebbb_hnttvurkfTOKYv±ÄËÐÓÓÓÓÒÒÓÓÔÕ___^_`adccdfgdiqpx}¢¤ª­ª¬««««ª««­¬¬¬««ª«¨¦¥¢vmbXSHCDEINRTSRSUZ[\]Y_cb`__b_`__`cca`d_accedcb^fheggffgi{onrtsqrttwxsvuvxuuuutzqWWf¤tw{||naSaSF>;9H\SK415<L_qc7" #+8_>0-7DQP4HspU81<2.'*,)+**.23-%$$& !/aaa¯­¢§°¶¸¼ÆÊË´k?KX]hoqqx{z¤§§¦¥©¥ª¬«§¤§¨¤¢¤¤¢ ¢ {pmsvc^ckzy¤³¾ÇÇÁÁÁÅÃ»«§¡zX8-*/0.-44-001/5616EF868@OcL?LRS]UFGEC?::DR\A36@6310U{¨ª¦¡¤¢|{yzytrousliebc\`a^eox|zysnf[UQUo®ÀÈÎÒÓÓÔÔÔÔÔÕÕb_acaaaabbecdeglrvz{ £¦ª«¬­¬¬ª©ªªªªªª©©ª©©¦¥¢}uh^UOJBDIKNQTSRTYZZZ[\__`^]`__acebca`baaeb_aedghhfhffedjµonstqtutuxutvvyzwyxvx~iZa~©ºÀ~|ynYJITP?5:U`]W88=DKWklI(('(-FR7$+7>;47OyR:=8+**3+,)),/14.*'&!! *egg®«§¯³¹¿ÆÌË§SAKV_gnpswxz}~¤££¢¥£¥©¦©©¥¥¥¥££¡¢¤¢ ¡smr}rt{¡­¸ÃÈÅÂÁÅÅ¼±ª¤{S3/.+./.66000+-/689BH876>I_]HDPI\VLKJE=87AKUO<4=/241<b¡­¦££zzzxzvssqoqmlmiib_]Z]^]drx~xrlcYTXnª½ÈÍÑÓÓÔÔÓÔÔÕÔ`_adbcbec_`bdhhloswx¡¢§ªªª«ªª«¬«ª«©§ª«««¬«§£¡{mdXSJGEFHNTSTUUUWX]_]]___`baafa_bdbebfbacaabceegfggeael¨pqtqsvvvuwxwzwvwy{mfr|~ZQk§£{¥xlVC>VXF6<KfagNBDLNBeqW7(&)(3QC1,/0-++6UusTA<-0/2/+((+-63-&$## 4fdg­°¤¥¬³ºÀÈÍÊC@IT]gnqtwx{|} £¡ ££¤¢ ¢£¥¥¤¡ £££¡ zuy~}}£©µ½ÇÆÅÄÅÃÀ·®¨[0.1+--/592,)*+/5;;:@304;CTmP@DFO]SBKMA9<A@N\K:00386*Iv©«¡ ¢¡~|{xtuurumjjllkgdheb_^\YYZ^dnwwqj`YYd¤¹ÆÍÒÓÓÓÔÔÕÕÔÔ^abc_``deaaeghklimuu| ¥¨©ª«ªªª«¬©¨«§«ªªª««¨¨¤uk^UMLIIJLNONRXSZVYZZZ_]_`dcbdb`bhcbbcdad``abdccfhfegiwvopssrsuxuvwxzxxxtkeeo|zWevmZg|ÀÐ¸o\DBPYH:?J^nmGFORUNYmlL'%*+2CJ@)+0/**+4Pxx[?-.281(+0.697,%#!  !1mii­¶««±·½ÄÊÎÌA?IPXemqstwz}||¢¡¡   ¡¤¤¤¡¢¢zww{|~}|}~¥²³«¢§°¹ÄÈÈÇÅÀÀ»³ª¡W3..-+.-373,+-001964523/49J_]B>JG[YGDLC>=>@GUZJ2108<59V§¬¤¡}~zxvwussqnkkjhdhha]`_`b`_ZYXYbgku}{vlhb_h ¶ÄËÑÓÔÔÓÔÔÕÔÔ]bbcbadbfeeffhgjnnptx|¤¦¨©ª«­«©©©ª¬««©ªª««ª¨¢|qdXUMJHHILPORTSXVYXY]`bbdca`_ddccbadba`bbaccdeddebbegzqpoqspsx{wxvvxvtomhgrw|zxtnWG;2TªÊÄ¥nZA=IL>5:HUtm;<HN^NOnxb:!#'02@>/'*3*'&,:TmrJ+(/:7--,//,3/*#" !"9pje³´¯³µ»»ÄÇËÁ{:9EKX_iruuxy|~|z{ ¡¢   ¢£¡zwvvz||z{ª¸Àº¯¨¨¬´ÂËËÊÇÃÀ¾»±¦^43/,(+/248-,.0..483:1-+/;CQfI=DJMZRCMFA<>C<LVP@603<=/Ar¦¨¡  }yyxvrttqqmjllghgacbc__`]___\VWWchot}zsnjeh}±ÂËÏÔÖÕÓÓÔÕÔÔ_``a^`bcihaggjjlmomsxz ¢¦©«©«ª©ª¬ª«¬­©«¬«ªª©§¢ wh\TNHFEHJOPORSWY[YWY]`ad`abacfgaabbdc__cddddeeaca`chvzmrrronpvzvyxwsrmflmqvx{¥­cM?4''$K¤²wgf`WSH;:3:JWrj8-?MdSOioL*$"(,/3.$&.,)()-;P_G3*.?<401/06-)*%#!"5spk¨´¯³·¼½ÁÄÇ¾^7:CNV[fntxzz{y{|x~ ¢    ¡}{|~®»ÃÃ½³ªª®»ÈÌËÊÄÃ¾½¹®£_7-0.+/.046/./-*238;?7.-+6@M\YC@PDU^TIEG8<>@HQRGA548846W ¬¨¢¡¥||}~yqutvromnkkiijfacfecda`__Z^a]YXZabqrw~trpjly­ÀÉÎÓÕÖÕÔÓÔÕÖ^_``_^bbcdbdfhkmmnmovz¢¦¦©©ª©¨¨¬¨«¬©ª«­­ªªª©§¢ypdWQKJFGHGNLRSRUYXW\[[^_]abddacffefheccceddddcbbacchlyvsrrqqpqswxyvsjmnnqtywuv¤:-&$$'-My¤~aYWXm_A3,6GRexf:5>LaSJf{X1&'%82,'%+3-(&')0;D?5-4=;300124-&%%$!9mniz¥®®³¹»½ÂÆÈ­^35?JS[elrxww{}}~  ¡ ¡ ­¼ÈÈÃ½¶¯­²¾ÈÊËÊÉÆ¿¾¶ª{|f8*1.+,/288...+)/52:H<1./0;FU\LFMMK_dMBEB?BDBOOHCA9;682Alª­©¡£~~~|ywzwxuprrqpnjljkhffebdcbcbabad^bfb`e]\`irx{ywpnrª½ÇÎÒÖ×ÖÔÔÕÕÖcbddg```addbdbgijjmstw~ £¥¦¨«ª¨©«©¨­ªª««ª©¬¬«¨£ }wn`UOKHFEGLQRPNRY\^ZW\`abbaca`_feffhceecefdadadccffkknrvwposuwsustmmnpusvwxuv{|s2#!#((5PqeTQEKUG03<MVgxeC9>HdRJb]5/+'0.,.++3/(()*,3::4.266.*-14/0+'&$!5qkgx±®´»¿¿ÃÈÊ©A.1<GQ]bmqvxxy}~~¢ «ºÇÌÊÅ»´®­²¼ÈÎÎËÄ½º´¬vv}h9*+-+,0-542-))))/.2??303.6CQZSDEMEV_VGDGBCFNPUO>IA@8212D£¯¬¢ ¤~~~|}~}zzyuuutrrsponlihikkiddfffbheddfgekngefedflqv}|vsy§»ÇÌÒÖÙØÖÔÓÕÕcbbafd`f`aaefdghimlnpsw¤¥¦¨ª«««©¦ª««¬ªª«¬¬«¦£|sgZUOJDCHGMMRVSV[\XW^bbdc`bfcbdddbefeccdedceccaehehinp{~sputpqpopostzwuvwuh5%$&(,/=\{r`WJ?NA*.=KUkoXMIJUYDV^;--,++,..*,;.)+,,,130.0/0../75340*$ # !7nhes¤©«´º½½ÄÊÊA).6ER]cjpuxvz| ©¶ÈÍÍÉÄ¼¯¨¯ºËÒËÀ·°¯ª¥|ikxf7*,.1./1124-*))(/2,7B952./?Qd_IBKLI]\KIKIEELFTP?=LL;/2.6^®¯£~yvwvssvxxuvysrqqpoqommkjghiigdhlkigjjhjkhhmmjkkjgilou|}}xwy·ÃÊÑÖÙØÕÓÔÖÖa`a_da`bce^dgijklljmrru{¢¥¥§«««¬ª©«®«ª©«­¬­­©¥¡ul`WPKBDGHKPMPQRX][Z]caaabddaccdebeeffcdcabcbbbfhffhllsroprppnptuvvyxwxx}°³V9.+)%').Gn~zrW;:8.4JRVoj[`SMYZPYlxk7251.+,/-,3:7.2)#*1020/./.*,/0311/'(%"$9sfez£¶¤³»¼½ÄÌÆ0%,4>GXbgrsvuwyx{}¦³ÃÎÎÌÌÅ³ª°¾ÍÒ¾±¦kbhxe8,-./.,42351+,,'15.3<>92//7J]lXGMKHS[UPJMEBIMPWE1ITH76:,Ez¢¬¦zsptooqrrppqrqrpppoopihkmiiilkhimpmnnroonloploqttnmnsuz|}~|{²ÁÊÐÕ×××ÔÔÖÖbabbcbabeb``bfildiilmnry}¡¥§¨«¬ª««¬­«©©ª«¬«¬­«§¥¤|ve[TNGDCHJQLMRUZ][\]a`_ba`cec_bcehcgjgdfdbcbadggigfhhlputtuustvvwxyuxxwwwµÌ­y\5423-%%('2Y|X3;KZEMT\jMBWXTYc^\[ouS831-,320.29,*)&&*-.5-,.2/),-34--+%""#%:pgg{ª¶­³½¿¾ÅÏÆ{2#+28CS[clsruvvwxz~¤­ÀÏÐÏÍÇº°¶ÂÇ¿®¢r_cn{d6-)..0023103+//.2:10:;:52-.;IkdOHPLE]UMJJFDDJKPH:;LU<9@37\««¡}}sonmnqplkoqnoutqmmoqnlsqmopnnpqpqqrtrqqtsttqtustspqrux{z{|©»ÇÎÓ×Ø×ÕÕ×Ödddddbbaaa`]_bcijhjmljnu{¤¤¥ª¬¬ª¨©ª¬®ª©¬¬¬­«¬ª©¦¡yle[SKDAGKNONWVZ^\]\^^`__abac^`fjjgdiicddbbbdgcfhfghihmrqsuvvuyvyxvwxuwuv¾Ø¯m\5:<90)#&$(?jz{d;/5AAPLNXkpG7=LXaph^X_pA1,*,+3/.+86-&$(%+,/,+/0-+,.41-*+($"%*>sliz¡¹§´»ÁÂÇÎÀu)%057BLXaiprwzxxz|£«ºÊÑÐÍÍÄÁÅÊÁ®¡vnhiqh6,+,,...<4./001,/8438875:-,4@Wm[GLFFS\KNLDBCFIKNA3CSM@78+?u¬¥ |wzqmiklnmmornnsrrqpputrpqtwxpstvuxww|vzvuuuwtvxwxvtvsvuy}¡¶ÅËÑÕ×Ö×ÖÖÕdfgedcbaa``_^aedkhkljklow|¢¥¦§©««­©©«ª©­¯¬­­ª«ª¨§¥¢~tl_VMHCDHKNPTUV^Z`^]^a_abbacedefgheghgdechcbgefeegkljmomqtwwvuvxuwuxuvvw³Ý»vYKB40.34/(<i~ke\C.*+C[_RJMme@1-9KcyrW[Z|X6,'-*50+*19+%$&)++--,-/./1./+,,.-*&'+?qkgt¶¯µ»¿ÃÈÐ¿d+(036CJU_gmou{yz}~¤©°ÂÌÍÎÑÌÊÏÅ³¡zsoiopsw`9,+(),,,55./003018414225:8*.5HhgSFLNHbTSRF@GEGKQK<9TWH7517[­¬xozvplihpnmppqqrruyvvxytvvxxzxy|zwzxyywwxvwxwyzy{wwwxwvw{~²ÀÉÏÔ×ÕÖÖÖÕfhegiedcdc^a]`cafgfiiilpt{~¢¢¦©ª¬¬«ªª«¬­®¬¯­¬«¬ªª¦ {rh\OLEDIINMVUPXY^b[[^ac`bedfhgghjhegebcdfgdfeefhgikjjqnpqtuqsqtuywwxwuv~ÂÁdF:4<UiQNZysYI7*'%3RhcQ@GsT,&".HYytQNXstG3*%+61(&*0))'&,,)*,-.042..///*//-)*,?sgft¸­¶½ÁÂÉÎ³W((+.3;DPZadjntwwz~}|¡¢§«¸ÆÌÌÇ»·´® ja_agu}~}a6+,-+*--093/05<0093164358<-*2AYr`GHMMWbSWIBHLMLQPE8APPA970K|¡¯§ |nlxuwrlioqrxwxwyywwuw}|{{}|}z}}{yzz~|{yz||yxy}ywvzyz|°¼ÅÍÑÕÕ×××Õbegikgaedd__`ba_cedehijpqu{}¡£¦©ªªª¬©©ª«¬­ª¬­®®­«ªª£vn`RLHFEEHINQSTW]]Z\]]`cghddeihhjheeffbfbhddggefhlkkjlmmmpsuusqtwvxvwwx|§°wB14U{y|~ZG7+#!#:frhG0JqO%$(,AQf~_PTpgC3(1=2-4'/,.')),)*0+)+/0450.110011'&<sgerº²¸¿ÁÀÉÐ²J''*,25;HQYdhkousuz{z ¡¢ª³¼¼·®¢mQKZdn\5,.(.*,,/8:135<69=41>551.45+/9OllVIOPLcYROHAOVKIJKC7L]K@;4;b°±}rfrtvyz{yutyzz~}{}|~~~}~}|~}|~~~}yz|{{| ²¿ÇÍÑÔÖØ××Öccfhffceddababbcccdfgghmpqs{~ §©«¬«©©¬ª«­®­®®¯±¯¯¬«§¡}qf[OMIGIIHLOQPV[\_[Z]`acggefhhjhceffhbddghdfhgegijhimlonpqrtxtvuuvwyxy}¡XJKX¦ m?2.*!&BgmW9+NsK,%%*9E[xqbZ^{[E:;B1BN1,-+(+0>.11.-..03332./1110+(<thir´¯·½¿½ÅË E#'2/25:AMPafilooqu{x «®«¦£uWUW_hv]2*,(,.,,-89.)1868C:45502.2:0-4FctcKKOLThLUNCJRPLIUK@HVTD;;3Lw²§wllvoy{x|{}~||~{}}|y|~|| ¬¹ÃÉÍÑÔÖØØÖ×ceecdgfdcba^`bbecdbbfhfjpnrz¢¥§ªª¬¨«¬««­­­­®®®¯®­ª¨¨¢xmcWOLGHJLLNQRSVY]]^`aa`efdefeggccefhhhfhigeeegghjjknonqqprvvuwuxyx{z|w~y¥©¢qJ,)( !-UxiC.0ThE.'*,5>Uzt^Rew[VIC6HT5&)-+.--12.-.*,,,04<123.--/+@wkltµ­´»»¼ÂÍB*+16-1:@ELW_celoqtx|}}~~¢¤¢o`ekpu|Z1,*-//,.037.)1:5>H>733471.44,/;Thk\FRMJdZLMLDOUPNTSH?NXMCBC<^³®|}qmxz{~~{|~{}}}}}£®µ½ÄÊÍÑÓÕ××××dfhefgggdbbdbddfdddbfffiknsw ¦¥¨¨ª¬­­¬¬«¬¬««­­®«¬¬©©¥ }tiZRNKGEKNRPRRWY][Y]^acceefgdddbehekiffefecefhhgiijkoprqqquvruuxz{}z}ª¶¨®§¨¡«¤uP8'$""-jg:'3_Z@94..3>Lvp_NWpqk_@9W^5$'.0,)+0--0/+*+*/142212-)'):mtrs°´µ¿½ºÂÇ5.)/?3148BORY_dimptv|}}{}~xpjv}\.,.///30/,2/-3627IC:32355+/3335H]ukPPNKTmJPJCIPVQTTL=CNPN@F;Q|£¯{xwv}{~|~|~ ©²¹¾ÃÊÌÑÔÖ×ØØ×dcgehifffa^bdefadcccddeikjpuy|¢¤¦§ª©¬¬«¬­«¬«¬­­®®­¬«¨¦¢vncYQNIDFLNMPPTTZWY\]cecfeddfeegeeegigcdgfdddhifiikjlooourtxvuuxtz{|µ¼³©t_A)$!#9n|^0%8XJ;FJ4,3@NekiGHbsprJDlh5$+743+-/.0.,.+)-+,1.110,)&&.isuwÀ··¾¾»ÁÊ;,(+3<02:AHPV\dejnpsyy~¡ {xv{~yyyyx~Y6,0./,+*)-/0.37349<;:21:7001542CUiscNNQObZGKHKNYVTZVHADHOFCFAf­¡}x|x~~{~{¤±¶½ÂÆÈÍÐÔÖØØ××ceffffdefeachfh_acbcjfdgiilnrv¡¥¦¦§©¬¬«®®­«­°®¯¯¬«­¬©¤xqmaWPHGEENNNPSTX\[aaeefedcefdbfedghjjhgifdgehhffgihnmprpruwuwvuuxv¦¯¤{jk^Y`V<)!" @tgG0)AU;6DQJ7=MNYxtma6S| e]^`m.$,12,(,++,+(--)+),/..-,+(();fmvw½Â¶À¾¼ÄÅ3&%&7B<659<JPW`ghkpru||z~|yroqvuuv~ |_<*+-/,)&*.-36858567;>903904./38;M_xmYLRPPlKNMKLU]QZ]OCAJIIFF?U~¡¬{v}~}}}|yx{§³»ÀÅÆÉÎÐÔÖØÙØ×ggigghdfhgffihec_cfdfecdeffkov|¢¦¦©©««ª«­®©«­­¯¯¬®®®¬¤ynd]MMIDFNMLMSOW]]]aafgccedcccefffghjhihehhffgdefhikkmqotusrquutuyzcS>=LD.'(')ImS3/-GO>5=FRJQWOLkuxIOpfK`p]+&-,/.+-++.-,+)+-+*.*.,++)),7drqwÁÁ»ÁÂÂÉÇ1##&1=I8148@IUXggjoqtwx{~|~xtqkgkqtz§°«~eB,&(-,'(,+.4<718967:=:12<>5/,196CSfrbDJNN[ZMVJKQWRSYVI>JIGGC=Bj¬y{|{z{yx¡¬·¿ÄÆÉËÍÏÒÖØÙØ×higgjogggefghheebdcbdgdbfffinsw ¦§ª«¬«¬««««««¬®®¬¯¯®­¨  |uggZQJFIMMMNQUW]^\bacdcbcdceeeheeehifheefggecbhjjihhklotvrrnruut}dM37J8*(..1TbB*)9ODB8:>BP_ZID^}nYd}s^mK*/;DK;/-,,/11/++,,,+.2-+0/*,<itts¸Ã»¾ÃÆÎÃu3&#&(9KE656<EOT^chlqsvvy{}}|~}zoia\enqx¡®¹Â´¦z\K4*)+))(.*.-6734C58A>428BD*000268GbqkVLPRMaPUOIOMVPWVJA@HNDHBAV«§~~~y{z{}¨²¾ÄÅÆÉËÌÍÏÓÖØØØjjiihkkhfegfegfd`ecgdffcgeeakqtz ¤§ª©¬¬­¬¬­«««¬¯®­­­¬­ª¤ |si]SPKFILIOOTUZ[`b`\``cccghcbiegghggfhhefggecggjfglkimrrqrsrqtqzkO5AF,$#26D_[=)'=RDB?9FOQVSPNSfnlw}~kv\NHHS82-,.,/255/-)).,//--.(()5kxuw¿¾º¿ÄÉÏÃq.##"%.ET>;8>FJNX_ehlrtstx}|{~~ti]X\]flx¤¹ÂÅÅ¹¨qPJ;.,.,/+./--2653B<8BF106AF5.7/268CXkpcPUURVZPQGTMNRSVWHGJOGCGAEl£«~}~||{v{¡¬·ÀÅÆÈÈÊËËÎÑÔÖØÙyihihjkiehicfhhjbddceccbgeccelrv|¢¤¤¨«¬«­¬­««©«¯¯¬«­®¬«§¤¡wod\VOHINGQSTUW\^\_[_cbcdcffdghhgihghfcceeeedfdgiiihknnnnopoppr}kQ<UC.%'.B\hV<.,:GPF@BQXUMCPYV\l}jprsw~yh\]H=2//-20012422*/.,.,+..%')8hopq±¿¹ÀÆÌÓÂj&!%#&'9NL>5<DEIV^_ahlrstx}|~~yureVTXbkry¬»ÃÆÇ¿²¦kCR=+*+,,*+10-1215<>:=<5.1:Q9./011;AMcmjZNVTM]UUPKPNWUZ^UGHNOEKED[²¢~|z|yv{£®»ÂÆÉÊÉÈÊÉÍÐÔ×ØÙghiggggeeieiffgccfedccdececcglqu{¡¢¡¨¦©©«¬ª©­«®¯¯®¬­®«©¨¥¢vkbWPIIHKRRTSW[\`a_^_cbddefbegheddgfdccdcacfhfedhijkmjmljlpnop|o]KOE/'$(AiiM21.9;KSOOZ_TMILMMXfsylo|jNN^G&(*.111/-*130/3,./-++'$#'3gqoo}µ¿ºÂÉÍÑÁg'$%"!#.IUH:<CGLSVYagiorvx{zz}|xoi_\\]fpz¦¶ÈÄº¶¯¢h=KH4--+**(.0.1298A><;?=+.3?=3+06.7BKZemfPV[UX]UTMOLRTS]]JINRNNM<Gy¦©}{~yz}©µÀÇÌÌÍËÌÌÌÍÏÔÖÙÙ{kkgccmhfgghhefdccdgbbcccdaabflpv} £§ª¨ª¬ªª¬­®°¯­­¬«¬­«§¤xod]VOHEKSTVWZ^\]`^^`fdfdffdcaefffheefdebabfhfdeggilklniglmkoxwgH?I5)&,CrfH67:86ATNFOZUMJCDFS_jmgqvwryj;OL)**/350,%'.32-1,-,-.0.&"!._srt}ªÁ¼ÄÉÌÏ½e(""&$#+=RXI<AGEMTX^ehsruy|z|~~|tlb__egmu§·±··´«  b8<U7/.,)**.1/-06:=944>:0-05;:123247AQ]jlaSVXX^WTQJMRPLV[TKMNPSO??_±||ywyyx­»ÅËÏÐÐÐÍÍÎÏÐÓÕØØmmjhfhhggghggfecccgbabcb]\abchnry¥¨¨¨«®­««­¬­­¬¬¬ª­®«¨§¤ zsldYTMJNRTXW]ZZ\]``\_cbbdfgdadgieeegddgddgfgdeecfkkkjijhilluqrG<C/#"1IcU=9ED4-2LO2=ZXTM>26>VlbWbkqn^\_?f`+037>DD>+'02/---.*)./(&*^urt~¦ÉÂÇÊÌÌ·[%!!$#&*KaUE<?HLPS[^enqtvv~}~|}ywjbcghow}­³¾´¥¢d66ID28*',,-/..56:@<79<=2*/563663757<FWbqmURYZZbTVNMNLHQ][NIEJRRD5Kz¢¦}|y{|y{ ³ÀÈÍÓÕÔÓÑÐÏÏÑÔÔÕ×llikjihhfeffedcccb`aab__`_a`gimv~ ¤§ªª­««¬¬¬«¬­­¬¬­­¬ª©§£vmf^VPMPOPPUY\YY_`_^`ebccefddfgleecedfggdegedecefffefkmjlnr~w`uy?)*)')9T]G8CTB/',Gi51L\`_V6)0Lh`NIN]f[XkXK_56AELTSS9-.--0,-.('*.%'! ,Wmov|¢ÅÆÈÌÌÌ¯O%!$#"%##<X_U=@DGMPWYflortw{}|yz~}vpqkhkou¥±·°µ¬e51CE33)),--0//676=D<=<520066/46730:=APZgn^QRUUaXTVLPNJNX\RJDAGDD>?f°~{{~|y{¡·ÃÌÑÕ×××ÔÏÏÑÒÔÔÕØqnklkkgjiggfefhfccaabbb^a^`^aeir{¡¦ª«ª©ªª­­¬­®®«­®­®­­«¥ }wlbZTPMMNKRV\[Z\^__`ecceeaadeggd^`eeafheggchfdfgdfeeljhhr~waty@(&'),;Y\JJND0("*Ce]+8Rdb_S@47jYJFN^eMEkTa[=IVUUU[X@3,,+,,+,+'&-)"!*Tpis{ÏÇÉÌÍÊ9""%"$$"".RdaK=@JILWZckprrwx{zxy|}~xpljlpmv}¦²³³«¨£g1+@J=/,,,,00,-3:27<?AD531165/07256;=@DS_pp[QPQ[_P^OPROLS^TPIBFG>O4R}£~z}}{{y~¤¸ÅÍÔ×ØÙ×ÕÓÒÑÐÑÕÕØkjikjhhhhjfhiligedbdbdb_^^^\_gns{¡¦¨§©ªª­¬­«¯°®¯®¬­­®­¨¢ypg]VOIMNMPVXWX]\^^_acbcecghjdafjgfgjigcfecfedelbcfggigm´¥hyi<&&%+/?YSSSE3,&!)9]uB7GOZhk\NHZWISfonK<Qam¤GNdmog`dZA71,*$+'()%#''! #*Qqdn{¿ÉÉËÌË8$$%$##$'*>^gXDCDDIQY_elqqtwxwx}||~|ukeegpuy¤¥¡¢{e5+6PD3.,-*-21,16548?9I=5018?255015:@<>IVdlfQRQZYRW\IPOJMWXQL@IF>GB>g¤~{z{|{x{£¹ÇÍÔØÚÙØÖÓÑÏÎÏÒÕ×qjjjgggjjkiiljhcfedecdc__]]]_dipv|¡¥§««©««ªªª¬¬®®®¬­¬¬««§¢~wkbYRLJKKLSVSTVW^]^aceccedhgeggggffidcdbefdaaccdgdbcfhy­ÇºvpwM6+$$)1Hcdf^D'!&'+7Kfe7EHL^nojfebVl|{nJ:NezFTzyto]CG90,.1*('#"##&#'+JxlnyÁÇÊÊÌÆ-#$')%&'$&)RgbTLDD@OW\agmvqtwzxxy}}|~~{vke]_jry{|i6,/>A4-)/+,01./2;55<<DK?447B;353,.4==7>QZkm]RPSSWTZLILLDTZPIDEHH=I8W¡~z{{xw{¢¹ÇÏÔÙÚÚØÕÓÐÏÏÏÒÕ×ighiiinlfnjkfhgfecaaeb^^^\]\^dkqz~¡£¥§¬©«¬««ª­ª¯°¯°­¬««ª¥¢yph_VJIJKMQRSSSW[^__bdcbfghgghddfded``d]`cbbbdcehedcag~½Í¸|}gXC1/-'%)2Njupj9&%$&-64OkO>BCE^syyzx|ZOD^d7Qu|saMXI100(&*&#" """)*Ew}lkw¶ÆÉÊÌÌr+$&'&#&)&%'<\n`[JC@LU\^chnpruuxzz{z{}~~~~~~ztoe`XZflov|}ztg8*)4F8.*+/443/026469:>KC964883641//7G99GR_jkQJNPUWQRHJQGITQFHDJL?>@Ev¥~}zzwxw{µÇÏÔØÚÚØÖÓÏÎÍÐÒÓÖrhjkihnnhmjghfggfcbbea`a^[]]Zcfnz}¡¤§©­°«ª««¬«­®®®­®¬¬«¨¤ uj`XNNOMNORTXWX[]^^``aegfhefgecbbbbbac`[`egcaabbc`a_g§ÈÒÅz~W-.(*(&%)4^xc`E'"&(.1-9UcFIE<:KZfswlr~L2=ete\jR21*$#!%'"#$$&((9wqnv²ÂÊÍÍ»g'"&()'#%&%#+NihaR>BKRZ_`djnouty}}}}}ywrogZVXTZamsv|}xuxzv3')2BD00+/31324335767;IG744770.863.3AC<>JVenbQLTOZQRNJOLBNSKHIKN@9A>^£~|{~zyz°ÃÎÒÖØÚØÖÒÎÍÌÏÐÒÔjklljllmnhcefhgecdeeaab_ZZZV`djsx~£¨¥ª¬¬¬«¯«¬¬¯¯¬­­«®®¬¨£{ng]SRLMIKPQSUW[Z[^__bdcadefdfdfedcedcb`begb]_b_b__`g­ªÅÏÀyh?')*,&%&0LslP^>(#(+/5''6RUNHA533?E\w{ajur}S/*3Tp|ls~`@5'$"&,)#"%)*'$:p}qmr°ÆÊÍÌ½Q' "$%''')=,&;]h]YLJMP\_bejorruw}}{{}~~~zne^[TJPRZ^fmsywzy~}}~ztt{s=%(*DN5.--43526335872;MF94686/2732205ACBFS]iq_LRNQVNUGMMFHQLDGHIB99BB¨zxz|¦½ËÐÕ×ÙØÕÑÍËËÌÏÑÒ|rnlkijhkjgeihdfiggc`_ea]ZYX\bipw}¡¥¦§©«©«­­¬¬­­¬­¯®®¯««¨ tj`XRMKHJNLPSUWXX[^^_bbaegfcggfgceeeddc`dh`]bc_][Z^q À¹»Ï¼X6*('+(),AmdHRdA&).,48,&+8OLHJ>421-4NJGT]Q\hi>,$+5Nap{`T=/'('& !$'" !2z}qvu­ËËÌÌ®[' $&()%('&0Lbh_XHKPY_cektrptuyzz{||zy{{kTHRLQX\_ekpvy{xxxyz}~~~~~|wuvz~;(*,=L<,.0777657557:88:KB55894-/874103=PJSYgmeSGNLYPSRKKI<LOIFEHI74B?a£~z~~zxwy·ÆÏÓÕ×ÖÔÑÎÌËËÍÎÑjgjhijjkkifhefhgdgdebcb_ZX[Z[bhnv £¥¦¦¨«®¬«®¯®­­¬®¯­®¬ª§£{neaVROHIMNOSTSX_\Y]]aeeehkfdfffdeddfcbaca_cdc^\YZ^v¶Ë¹¹Ç·£¦§KB6+&''/>e~pH=ZtC5>I;.50&)2>AGVTF><:=KMRWa_emP)#',1K^fw{nTC=2'&'$&# 6ooyv¯ËÎÊ¿±F("#"##*($'(&);`n\]SJPU_deiortuvvyy{{||||u^NR\`dinou{~~}||{w}}~wvwry}N1-,1K@33458:8699689079GD<88=40./6=5208MQXWYbu]KJLRUNTIGGCDLQIAEE<269D¡~z}zuvy°ÃÍÑÕ×ÖÕÒÏÍËËÍÏÐ{kllklkijhfgdgeeccfedb``[XWYX]bkv{¡£¤¨ª©«¬¬¬­®ª¯­­®­«­«¦¤¢vmd[TMJGLMPSVVXZZ[a^^`_eckjhfdfdccfgdbcc]_a^^\ZUTSo²Ê¾µÄÃ´²²±¸º¹º¿¿¼DBTB*),9YxkD4Bm~[JZiL451)%-85<Xe`VTPU_imqsy~mF'# !'7[djyz¨{nY7&" "!.grrt­ÎÍÀ¦`99*%#$,+,,-'$,IbfgdJMPZbgjjoqsuty|{z}~~xf]bpvwz|||}~{{zywsuvxW.)+0>C435288789;567666<MF76741)/38,489?FYVOUfjWBFLUNLKFDJDPULCDDF2/3?g¦~~}}~{xyzx~¨»ÇÏÕÖÖ×ÓÐÍËËËÍÏnmmkllkjhgfghfeebebcaa`\[]ZXZ^ioy~ ¢¤¨««¬¬¬¬®¯®¯®®­­®­ª¨§¢ {nhcUSNHIPQPVVTUY_c^]^^bdghhebfffc`bedaaabca`]YVSSbÇÂ³º¶´©¬¹ÊÐÌÔÞÜÆ6@]_I8?\i_M85PwkaosV:1/+"043DXm}rfZZitx{{d?,%"!$*E`jtnex§¢¨gA"/_qqs¬ÇÊµY5%##(3(/+''&(1WjojYMLQ]ahmoqrwxxx|{{~{}~rmr{}~||}~~{{z~~{{xvustttv^3&*,:@7248;:86579898659@?<5442*,,19359<>ITUJSnbKFLMSFPFFJLKQQGFGE9+/6P¥~~}}}zvyyy{³ÄÍÒÕÖÖÔÐÍËÊÊÌÏlkjkkmmjhfijggeddacab``\XZYYahmu{¡£¥¨«ª¬®®­­®¯¯¯®­­­­¨ª£ ungZSPIEKOQUUUTW^`^]_bbcggeccffdcabccaaa`a_^XVUSSUr²¸¡ncu·ÇÑáïç®S35AWh[]ggM@@;\}|uxgJ9)*&&563L\gruplagkpsm[W`N1&%! !2Nblzq_U^ °¥`)+\ttw£ÈÅ¥Y/# $),+*%(*)+DclmeRLPV^imqrrwxy|}z~~~}~{x}|||~|w{|zy{z|}yywuuxuvxzh9**/9B:22799:568;8672379<><333,)1192/468AQRLT^i_DHHNJLKFCODJOGCK>C,07Ht¢£{{{zzywx~«¾ÊÏÔÖÖÖÒÎÌÊÇÉÍokjkkmkhhghgfhffb_bbac`_Y\Z[_ehnv} ¡¥©«ª©«­®®¯¯°±®­­­­­¬¨¥¡}rj_VRNIIPNWTVTVZ[_aabainffbbeddedbcebcb``_\_XWWVSQ_²hOJtµ¹ÍêîØA,-0A\ry}{hb]Xmxu[A9-))(2.2@HOOWZaTDKQP>5ASO;1("%6M^hrqcWNVdld|iA!'Vvxy~¢Àµªj5"!$$#../*+)&%+ZlqmaYQRYdilnruwyy{}}{|~{||{z{z{y}|}|{|xx|~ mF.)*/=:55:8755977:>974689753-10.22,.(/27;GMK[QecQBBIKMNF?CBESJ@I@A>,28Z¤}zxz|zy¶ÆÎÒÔÖ×ÔÐÍËÈÈËjjkmmkihgieghfhcacebba`^^[[Z_fmrz ¤¨©«¨«­­­¯¬­°¯®­®®®­ª§£ync\URHJJMORTVVZW[a_`cfgegecggdfebca_`bc_[YZXXVWQBDm¢®aj·½ºÓðáS4-))7EXi}|~vpc_MB)$%)/0,6667?IRNNJE>3.0BYL;,#$5E\eorwqbP;DK^q~rK''Muyv|´¨³Y6&!!"&*/40-,**0EhswgbTPW]cllosvy}~z{~~}}}|}||}~|¡¡¢  ¥¡ wS2'(,6?9<9773555869885322765433101)(&&,42AKIRTYeaB>GLIIF;<GGPLAEHAF.-4K{©}}|{{{{z{­ÁÌÏÓÕØÖÑÎÌÊÇÈrlkjlliihigfhhiffc`a`aa^a\YY^belt| ¢¥§¨©«ª««­®­­¯°¯±¯®¬«©§|tjcZUMJMMORUYWX\]a_`deedefehhecccdb^^^`_]\Z[ZWVM94Cp¥­º¸Ýä»h5.*+-487;Suwka_fXA(#$&+/-.0,-09<EQU\ZTD:7ERL5&!!14;XnrxeM;7AT_{vF#$Gupnnl°«U6(! "%%.10.-.,+.Qmwl`^MUZafkpswz}zy}~}~~¡§§§¤£ ¡£¢£ {`C+*03=:547869?865454321257;795,*,*&%#'.1<IGFVWabRCBKDCEA;?IGQIIFEI<)1>e¤}}{}~z{y{¥¼ÇÍÐÒÕÖÑÏÌÊÇÇkjnojhhgiegkkgfhf`bcddaa_]ZZYahnx¤§§ª¬®®­®®®­®¯°°¯­¬¬«¨¡{qf\TOJIHNRRSUU\`a^aaadccccefdada`a`^]`^]\[Z[[XI4.1:X«¤½ÛÇB2473411)'5COWlqiUCThZD'#%((*20.),/135<7ENMPA72IUD1&%()0NhtoO4.;G\l?$ $%8Jrnfiilx±¸{N+$"$&),.-0'-13/Ahxy]aXQXbcjnqsrx|xv}|~~¢¦¨ªª©ª¥¡£¤¤¤£lV7,*.15/389;:<:9688421.4568475*'%%%#"$(14IG;>J]a_I>BBDF>9=ILRMDJIM>//7R¬}}}|||~³ÁÇËÏÒÒÐÍËÈÇÄthjjilhgjiiijgjcdddeedfac^[[^ahlu|¢¦¨¬««¬­¯®­®­°°¯°®®®¬«¦¡~wl`VQNIKOQQTVYZ\a]b]`bccgdfeedb`]af^`c`]\^\\^XG6-*.F}¥¯§¾Íªj94>=////)*4559MfeVC<3Wq_?'"%'#(0-+*-/,31.,5E4153/7CJ@-*+*2Kak ¢¤rJ*+1?J;,%#+*N`t{uonx{¥¶·vB)"#$$&)*-,.*)2/,.XpxpaeTT]djmpprtywy||~~¢¥¥¨««©©©ª¤¦©ª¥ tbJ-+-33258:@955536663486552.03-)%%'#$%$06?C:18R__O>9<=C<8@JOQK<EKJC1'.=r£~|z||~~~~¨ºÀÇËÍÍÌÈÈÃÀÀhjjgihgikjihghebcdcecda_^`[X^birw¥¨ª©ª¬¬¬®®¯¯¯±°­¯¯²­«¨¥ ynf[SLKQSTRTWXXXY^a_dbcdhghfcea_^bd_bdaabb^__UD9/1@_¦¶ºµ­³ÀM5BD4)*,0'&275:ScsM=4;^wbB%#''$%((-,)-/44*30=931,)/-6=;1+-6O\n¤­²°l?*'.470" 3\vz§´·µQ3(#&$%(-,*)+-$'('+=ewzcf`X]cjjpqqttux{}{~|~¨¦§ªªª¤§¨¨¦©®­§ zhL20036377:>936425686674321,-0.(%%&$$!#'1.8:43=Q[VB66;<A>9CGIG>@F@C4()7Z§}}||~||ª´¿ÄÈÈÇÃÀ¼¶¹zllihfdiihildefcdccb`a`c_^\Z[_fnsy~¢¤¨«¬«¬¬­®¯¯­¯°®¯¯°­«§§¢vmdYQNMOQRRTTSUW\^][_dc_bgdddba_db`bdcbddccUF>739Zy¡«¶¹¤ »yC=EA2'**4/*1@@Ccls[A6Coy`>'%))*'*,0/-0.44/,.7D-/87.&'1?8,0ARXg¦´¶¶¨i8##(13(":r§¢­´´±§8&'&'((-0/,+)++%&)-4QirkanbX[acjnopswx{{{~|~ ¤¥§¨©¨¢¡¥ª««±®¨ ~kTB63144559;928859<?<<<97571222+,-))(%##*.27/,-ARVK;3@?=747BEH>>@==8'%1K~~z|{z~~©²¸¾ÀÀ»·³­­ljehgfgilehbcddegea_aaa^_[ZY]ehkt}¦§«¬­­­®¯®®®¯°¯¯®¬¬ªª¤~uf[RMMLILPTSTUVY[\\[c`\]_``dcaaebchdcbdhmcF462<Qt¢®XA@@7.((.A006FU_km}cFARtsV6'&..,,0.,.-.1534.,.=33M`0%'096/8PUTp¸¹¸· |I,(*-2+K¤¢¦ªª®´³®¤u4!#%(.1.9C7-+,0/+-/1:[nrjje`S]aflpmrtu{xz~~~~¨¥¦©®ª¤¤¤¤§«ª«ª¦¢o\G9148::9>A>=AEKPROXW[XY`_^\WVPGG>851-+-.351++4CRRF@<85;33@GI@99<A>1*-@i}z{~}~~¤ª®´²¯¬©¤¢|jjljgghkifeecffecbdb``_^[[Yaddjpy¡¦¨­¬ª¬¬­¯®¯¯°¯¯¯°¯««¬¦¢~la[SNJIKLUTSTWVX\YV]_\__c`baa_[bciecdfptW:8CRZk²UON<1--&.IF78GakohpcTQ[xlM3,.41).0,,-,*/1300047/>YbC,3@A:.<VWVu}¤±¹¬dB,%(*.$ 'U£¤¤¦­©°·¹·²V*#$$)2@FL6201122/,+-0Kdpombj\Y^bkqmsqrwxy~{||}}¢¤¦¨©§¦¥¤¤§¨©©¦¡udWA=HNTZ[fmpqv¢qf]MG:6.1/+(/;HQP=/226208AJA65:>C<$'3U~~}~~~ ¡kikjhklghhgggggffbgcccc`[[Za`agmt{£¨ªª©ª©«®­­®®¯¯°±°¬­¬©¦¢umcXQKKJKLLNRVTWYYUZ^_a`ab^]babdegffjkxnE57[pz~}`T]Q7.+&&4DV<:Ievocp[`akyhR9134/-//..-/0/1310150,7OPM=EEJB/3SXcvxhbzWA6,%"%0"!%V¢¦¨­´°µ»¼¼»©S($$$)9KJQ;224632.,)184JmmjhhmXS[aehlsprvvy|{~}|~{} ¤¥§¨§¥¥¤§©§¦¤ ~rn`ht ¨ª²°µ·½º¾¿ÅÇÆÈÇÊÉÊÇÊÄÄ½½±¬¡taOF=7,-6BBIC7/0.0/19@B=135>=,$*@o~}~~~~fgihjlfegieiifdddcbbdc_ZZ\ZZZaht| ¦¨ª©¬««¬­®­¯°°°°°¯±®©¨£zsg\UNLHIIKPTTTWSWY[\_c`cea`acfeghhiiiog624AgxnaPXdUB3)%%2ESLGJdqrn[etuy^F5242,+/./3332.-22/+(**.CEFHIIRK2.ARiuw_DGDOUE7+$#(-$ ? ¦¨°»³¶½¿Á¿©j&$ #)5;=;A@7353..3.2*(:[pci]reUQ]bbfsqqux}|{~}}|}~¡¡¢¦¨¦¥¦¦¤¥¥¥¥¤¯²¼½ÄÅÈÈÌËÈÉÉËÊÌÎÏÎÐÐÐÒÓÓÒÑÓÑÑÐÏÌÆ¾µ¦r]H<438:BA+))*.11:A<2.08A1$%3^|~mhiieegifighhefcfdb`aa\]]]XWV[cnw}£¤¨««««¬­°¯¯¯°¯±±°±®¬©¦ vmaWOINOIJSSSTVXYa\^abacdddbhfef`efjeTA3.8EivTFIET_P@6*')1AXYQM_wvsmTbyqO:3.63/-,+/82443/.--0.*''.BQSQPOD74>OjqqbN=B_lT:)$"&/"Aª¨­±À¸¸¾ÁÄ»¡W)##&*/03-<;7654176.+--.HfgfcgvbTUW^ehpprvxy{}}|}~~~~~¢¤££¦©©¦¨©¦¤£¡¤¬µ¹À¿ÆÇÆÇÉÌËËËËÊÉËÊÊËÌÌÌÌÏÏÐÑÒÑÑÒÔÓÕÔÔÓÓÐÏÊÁ°hR:9.472,)')1.6=;3-,3=4'$+G~deeehfhgejeeefefe`bbc\\[\\XWZejpx ¥§§¨«¬­®°°°²±®±±¯¯­®ª©¤|oiaRPMHHHNLRSVXY\\aa`cceecciiklfdhcO:,+/<Su«~_FC>?VXQA62))/9UcYKNovr[Vj{w>5.-66.,,+25430:2/*,,-2('*BU_^YS@9<YqsoqjL6QynS6(&#%&*®®°µºÀ·»½½­|=%%#&',14::?989==21/-+&)5Mbbd^jgWQX[_`imppsswx~{y|}}|~{|~}~¤¤§¦§§§¦¦§«¬©©¤¡«·»ÀÃÃÆÆÇÈÈÇÉÊÈÊÉÊÈÉÉÉÊÊÍÍÌÍÍÏÑÑÑÐÑÑÒÓÓÔÕÓÔ×ÖÕÑÌÁ²~bH4080-*),/10:;0*084' ';k~nfggjhheffffeddcdcb^`\]]]YWVY`dluz¢¤¦ªª­­¯°¯±±¯±²±¯±±¯­«¨ ~nfXXRLGGMLQSVXY[ab^`cceej`dhfhiehZ>0*,5Fc®kGJK@H\_N?<4--19SpdLMaonO^xV?./42-),36121,01/+)**2**4G_qulZE9Beti]IAXkX:,$"!'()l«®«¯°¼µ³¯§ªf0%'$&+,76528>C?=;6413-%&)<\fe`_lbZRUZ_bjolruuwy}~~}yyz{z~{{|}} ¦§§©¦¦§§¦§«­¬«£ ¥°¶º½ÂÃÂÅÅÇÆÆÇÈÉÈÈÈÊÉÊÉÈÈÉÊÌÌÌÌÎÎÏÐÐÏÑÐÑÓÔÕÕÔ××ÕØØÕÑËÁ¬cL>93.+*-/.?\5(+1/'#&/N|fdckkgfhigfe`adchd`^]^ZZ][XX^afox¤¥¨¨¬­®¯°°°­®°°°²±±²¯ª¥¢th^XUIEGHKOSUXZ]``]deeghgdfghfklnR4/')?\w{XHJECKf[?3451-.7IijPKZskTjzd[Y@262++*2:41,,,2,*-+&*/.<G]vyxfM;Ggp_QT\]H9/%"!!**"$X ¥¤¢¦®¦¡ª±³i)'(*-210/58;AC><>:0.5/+*(/Hhg`^fg_SHTW^dimquuvy{zz{yyyx|{yyyx{}}¡£¨©­§¥£¥¦©§§©¨¤ ¡¡¦§ª¯µµ¹»ÀÁÂÅÄÅÅÆÇÇÉÈÇÉÊÊËÊËËÊÉÊËÊÌÎÍÏÏÏÎÑÒÑÒÒÓÕÔÕÖ×ØÙØØÙÖÑÃ²kP<3)'(,-493/+,-*)!&Avocdhffjhjgfea_c`da_^_]\Z][XYY_derz¢¤¦§ª­¬­¯±±°®°®°±±³´°«¦£¡yndYOIGIBIOTWX^^aebcfiijhjhhklmtS-+'+El}}rWID=AVgZ=17307<:DbkWNRkqawrZ?EV\39(()-/5?62/.1,&(($&*06=G^`fcWGKdyrpspS7*' "%%&'$V¬ÆÁf'()1630239<94:G@873-01.,*(3Qa]ZXgbYLMU\`djmrvxxxw{{}{wwzyz|xyz}|{|¤§ª¦¢¢§¥§¥¥¦¥¤ ¤ªª¦¦«¬¯±µºÀÂÃÅÅÄÅÇÆÆÈÈÇÈÈÈÉÊËÊÊÊËÌËËÍÌÎÎÏÏÐÒÒÒÑÓÓÓÒÔØ×ØØÙÙÚÛÚÓÅ¯kL/&%&(+-1/(')+'!/^eghjjhgfddda`bcad`^bb`a_[YYW[`elx¡¤¦¨ª¬­­¬­°¯®¬­±°²³³­«§¤¢tk_SKIIJKOTVSY[^bb_dehhhkkkmkitq4)+2Js~~hSG=:BXmY>5769BA7@[h^QRlunfA8;F[@;3++311<<50*(,&'&"&508=?IRUYIMcqI9.)$%&')'$!%L|ºÑÂd,+-13787960298DE?=;-3/-'()+=]gXU`a[PHKTX`hijrttvwwyz~uvxvwzwxz~|{{¦¢¢¢¥¦¤¦¥£¢¢ £ª««©£¥¨§«³³¹½ÁÂÃÄÄÆÇÈÆÆÈÉÉÉÈÇÈÇÉÈÊÉËËËËÌËÍÎÏÏÐÑÐÐÔÔÓÓÔ×Ø××ØÙÙÚÜÛÙÔÇ­\6&+%++./,&'(*)Lzwihlnihghfedbce`fb`bcba`]ZXYY]dhnx¡£§¨¬®­«¬®°¯¯®°¯¯¯°®¬¨§£zreZQMHKIOTUTV^ab_`cefkjlilmolsL00?Wu¢riZB;>JbiT>7;;AEB:<Sh]QXowv~cDA>OY=@6312545F>3*&&&&"#-@:6HEOOIMKQd¡}kndXB+&&'*+*! 'Ow{|xr¸ÒºX1..3=;854./3326KA>B973./()(3J\aOX^bWMIHS]^bfkpsttrrsxxvvutxwvw{}y}{}¤¢££¢£¡££¥¨¨¥¤££¦¨¬¯³·¹½¿ÁÃÄÄÆÆÅÅÇÉÇÅÆÆÈÇÈÈÈÉËÊÊËËËÍÏÏÍÌÑÑÑÓÓÒÔÓÕÖ×ÙÙÙÙÚÜÜÜÛØÐÁ£oC<+()(.0&$&'# $2o ffhjihijfdcbdeccc[adcbdb\YVXZahjs} §¨«¬¬®«¬®®¯®®®¯­¯±®¬©¤}ukbVKHJLLPTVUY]`bdcfcmlmkknokkP>[u¢¤|un[B@Vnzw\E<<>@CED?L\QJ`l|od_F7>E>>;974;629?2+*$%'%$%+442RZaN>LOJL`ZVTU_vtc@*&('-/+"!)>Wnmuukmu»Ñ³T//33401021,,1<5CFJI=<2/,*+(,;ZmYSV\fUKHOW[`dforrttrpvvtstrsuxxwywxxz|~  ¥§§§¥¤¢¢¨ª¬±¶¹»¿ÂÄÄÃÄÆÄÃÄÄÆÃÄÂÄÇÆÈÈÊÊÊËÊÉÌÍÎÎÍÎÐÏÐÐÒÔÔÒÓÖØ×××ÙÙÚÜÝÜÝÛÖË³U.#)(+*&"#%'!!,W|~zigiihihgechdcacc``a^_eb\\ZXY]dgox ¦¨ª­­°¬«­¬¯®°°°±±±®¬ª¤{rgZQKGHIMSTTYZ`fgefgilnomppoltyiw¦§rsmPCUxqVG<:7<@><EV]ADPfq\codR:4:;B<;<::87?;1)%#&((%&.11?\eB/OnlQC:;=BVqdE.#$(*-/&(,;Vjtilmdmy·Î©D24.),1.122+,06;7CILFE<0+,,(*4HfnFNUb\ROMOY_bdinqopsquurqqrstwyvtuyv||}| ¤¦¥¦   ¨¬­°²¹º¾¿ÂÃÂÂÃÂÀÁÃÅÃÂÂÀÆÅÆÆÈÇÇÊÊÉÊËÌÍÍÍÏÏÏÏÑÒÔÒÒÓÕÕÕ×ÚÙÙÜàÞÝÜÜÚ×Äf>*''(("""$$!:}yfgiiiggi`aefdbcd__a```^]]\\YZ\ciu}£¦©¬­°®­¯®¯®°°¯®°¯®¯¬§¢~vk^WOIGKORVTZ[_cedgillnnnsomjkr¦¡vmohKTwaI@69<>A5<I`\=<J[ze\_gjC565<>984JA65:7-'#"(*$#02-.?PL6PoE-,.6IoU.$"%*/61&5NX_|fnibm|ºÎJ-'+/)+*+/00/,.:6=FGMOJ4-0.+,-/QmREQU`XKKNRW`a`gkmooqpuppqrstpwuuuvvyz}}~¡ ¡ ¡§¬¬°±µ¹¼½ÀÁÁÁÁÀ¾¿ÁÄÃÁÂÀÂÄÅÅÆÆÄÆÈÊÉÉÉËÍÎÍÍÏÐÏÑÒÒÑÒÔÕÕ××ØÙÜÜÞÝÛÛÜÜ×Ê°yB.$#$%" #$  2_iggjgggddcedbdca_`a__`_\\]YY]benw¢¦§ª­®®®®­®²±°±°¯®¯­©¥¡|qg^WNLNPRSVY[`acadhlkppmonmlmlsªlmm\XqmTI;8<@AA9ETfh::BZw|c]YjgO7*48678@D72972+'%(*'(1/)*18URn`5)'-?g}b/%+,04578G`nyjfgev½È8*&,1.--//15211158BANPI=2.+*+,0AZf@ORWUPLORMUXZdijlinnomlnrnsopruusuyz|~z| §««­´·¹½¾¿¿¿¾¾¼½ÀÁÃÃÂÂÁÀÀÃÄÅÅÃÃÅÈÉÉÉËÊÍÏÌÎÐÏÐÐÒÐÑÑÔÕÖÖÖØÚÚÚÛÜÛÜÝÝÚÒµV,$)&"!"!&Nlghhfgfbcffbddec]_]^bc^^\_[Z\]bgr~£¨«¬¯¯¯±°¯³²³²±±¯¯®«¨£¡xnfZQOLMMPVX[\\dgdiilppnkomljfjpynkrsnuuVUB78=<=@:I_nb?4>Qaf~m\TwU>84385:F:3467-++*-//,(#/;?IXpQ>,'&4[¥J0+0:91NZcjw¬bhdh{ ÄÆt4+',14:32/.3746113=CFHGJ</(**(+1JaSERSWTPNIGKTZc`ejkjlmjhkllnlkiqqswxx||~|~¡ ¦«ª«²¶º¼¾¾½¿½½¼¼½ÀÁÂ¿À¾¾¿ÁÄÄÄÃÃÅÇÇÈÈËÉÊÍÌÎÎÎÐÐÑÑÐÐÒÔÔÔÕÖØÚÙÚÚÛÜÜÝÝÙÕÇ^4'-*" !#?k eehfefegiebd`aa_`bb^`bc^\\[[Y]fov}£¦­­®°¯°°®±°²²±°¯¯°­«¦¢}tj_YTPOQSYY[Z^adgigjpomorljiifjlt|}{mq_JSW@5:?:6;?OdoX859JLH`{}o]m~\132;?9::67782--,/7.%"#-HC@ICK60*(,2WªT2)0<9>Vhsv¥³_hhbt¥À´e+#'+,4=?65-/421//5>>GHDII>+)''(+<Wl@HKORNOCBJRW]_bhkhggfghfemjiimpqtuvz|~~}¡ ¢§ª¬¯¶ºº½¾¼½½½¼»½¾¾¾¾¾½¾ÁÄÂÂÂÁÂÃÆÇÇÈÉÊÈËÌËÌÍÎÎÎÏÏÎÏÓÓÔ×Õ×ÙÚÛÜÜÜÜÜÞÞÜÖÈ¨j6,#+X ¡£¦¥¡neeggcdhhdcbb`eabccbcb_`]][XW\`gnw~£¨¬­®­°±¯±±°°¯±±¯¯®¬«§yqf`XPOTRSWY\_`bghghjmpprikjkkmlort|po|¨~V@>PQ>?=>73=HWjoN405::3BYu}rSb}aE7<=/.48831812265)"!"136>D:<:3345Hp¢yI-%&AUQagq­³Yh_[cvÃ´K+$')./47450).:/4559BIK=HPJ:*%(-*1G]UADRRPPD?JOOXZ^bdeegjihfhjlhkmonpqqtx{|}~£¢¦ª­³·¸·»½¼¼½½½¼¼½¿¾½½½½¾¿ÀÁÀÁÂÂÃÅÇÈÈÉÉËÌËËÊËÍÏÏÐÏÏÒÔÔÕÕÖØ×ÙÛÚÜÜÛÜÝÞÛÙÏ°zA &Cw ¨®­­ddgifcdfffabbfbaa`dcba`^]][V\^bit|~¢¦¨ª¬®°®¯°²°¯°±±°±±±²¬¤ }umeZUQSTUV[_`ccefgjhlmmjilkkkllmsuzrbq © ZC7KPLC:=@34?L^pjC.277437KqkWYzhD;9/(+0&-./*1E<*(,'!"()+6FCBA=KQNJhk=($!BXajls©³µ~ZaXR^e¹ K)$)4512540/**564466B<CDELOJ4+*.-.9U^J@JRQTL9DFHJQTZ`acfhjhgcejkhknomnoosxy~y{}}~~|y} ¦«­®³¶µ¸º¼¾½»»»»½¿¿»¹¾¼½¾¿¿À¿ÁÀÃÄÅÇÈÆÆÉÊËËÊËÌÌÏÏÏÏÐÑÔÔÕÔÖ×ÙÙÚÛÛÛÜÝÞÝÜÚÒ»z>" !2f§±·¸´qdegkfdebcc^bdbccdefdcc_^]][Z[afqy} ¥§ª«¬±°¯­­¯±±¯²³³³²²°§£|xrhaYTSSSUZZ]_eafjifjlllkmhllklrwxliZ;3=UTSG:B?44?RmoR:38:D366OudG^nE-+'(+--/(-4J?0+45"##%)0672.3?GLWi|[5,&#9V^gm~¥³µOd[X^gº<)(*/:F93222-',9656:?>6C@IOPF5*+(/5GTRA9YPNL@=DCKNNRVX\abeacegfeekjklmnpotrutx||}}~}|svtyvx}~£§§¬¯³µ·¹»¾¼º¹¹¹»½¼ºº¼½½½¼¿À¿ÁÂÄÃÅÄÄÃÃÆÈÉËÊËÌÍÏÏÏÑÐÑÓÓÔÔÔÖ×ØÚÚÚÚÛÜÝÜÝÝÚÑ´?!!,I}®º¾À»fffifcbbed_`bbbccbdcbb_`]][WY\clt¡¥©¨«®¯®®®¯±°¯°²±±±®­ª§¡{umd^YSOQVW[^aebdcefjjkmmlllpklpswxv¦G14ENNXI>HG36D[pgC68C:KJ?9M{ybK`W1%'&+.21(/AD7-)?A1$ &(1' $()*+3Qu{_F=(-F\bhr¨µ´zU``X\j¶;)'%*>MH=6311*(.521;;?6<>AIJOA1.0/3:GQI<EQSPB;>@JNJISRUY\Y[c_efffghikiillnnpsvzxxzy{{y{}|xvtrruyux}}¢¦©¬®³µ·¶¹¼»¹¸¶¹¸¹»»º½¼»»º»½¾ÁÂÃÂÂÂÃÃÃÅÇÉÊÊËÌÎÏÏÏÑÐÑÕÔÔÔÔÕÖÖ××Ø×ÙÛÝÝÞÞÝÛÖ½F"6h¶¾ÁÁ¾xedfjbdbeda_bafbbaccce_``]WVVV^fpy~¡¦§ª«­°¯¯¯°²°±±²´³´²®®¬£¢sibYTRTRSX\[\`b`ffjjlkmlllpooprz g<7?MQYRMKOJ>@Mfyb>8?MEDR66Nyfw`STfoQ$$%)+42,5F:/*2?LB% "%%!!#$""$'=ltTYL8CYiot©¯¶­T_[Y[kµ1*(&+>R_I5.,/0+(21047:<65<AFLJ>/),/4=DHK:NUOGF@=EGGGNOQUZ\VYZ\befcfegffcghkmrtutxzyxutyxujhigirx~£§¬¬¯²²´µ¶¸¸º¸·¸¸·¸º¹¾¼º¸¶¸º¼¾ÁÀ¿ÁÂÂÄÅÆÇÊÊËÍÎÎÏÏÑÒÑÐÔÕÔÔÒÓÕÕÕÖÖÖ×ÙÚÜÝÝÞÝÚÒº:)Q}zz}}{w{|}zxv£¸ÂÅÅÁdddgfgbddddedfgcafeedcbb]UVTX]bit~£¦ª­¯¯¯®®°¯¯±²´µ³²²±¯«¨¢ynf]VOORVUTX[^`acfiejlnmonnooty~hKHHMT[^JNb^TGFYqvU<6>fLGQE5CqyhoW<?jqQ0%&%(.3AA1,(08RQ9#!##$#$$!! "2hfCAHI\bnt¢©ª¹±[b\Y]l­e.($%(:Qd]F0*+..---0267=::7=AEJ@71,*-6>MVIHMRIPE9>@EKMQNTVVVYZX\a`^_`bba^acdfjnsquvsrpnmjd]__emuy  ¦¬¬¯®®²´´´´¶¶µµ¶µµ¶·¸¸¸¶µ¶·º½Á¾¼ÀÂÃÄÄÄÄÉÉÉËÊÌÌÍÑÑÐÐÑÓÔÓÓÔÔÔÕÖÙ×Ö×ÙÛÜÜÝÞÛÙÒ¹G Cn~{{{qpplnlmsptolkm¥ºÄÈÉÇy`bgehcdbceedcgdefegabbc\XWYTY]boz¥¨¬°®±¯°°®°²²µµ´²²±¯®¬¤ }tic\SMOUSTWZ\]`aehgjnpnkkmnpun\\Z[VV`\HY}j_LH]vi:76Di`IWX:Fl{pgyqL7DeU1%'*.;FD0-,.5>W@(%$""&*%"$#"8f[/7@Uluwz£¨­¹µVkaY[r ¬G'(&''1G`mO3-,,01+*24577<?38:?EJD;/,.2>LRS?@QSRI<9;EEKSOJOPSWWUUZYY[Y\__]\^\]dgmmppgf`[XUZYc^lu} ¦©ª«ª¬°²µ²²´´²´µ°²²´³´··¶·´¶º½¾¼½ÁÁÀÃÄÃÆÈÉÉÉÌÌÎÐÐÑÏÏÒÒÓÔÔÓÔÕÖÙ×ÖÖ×ÙÚÚÛÜÛÚØÓÄ=#,_~|ysplgccda`^[]`_c^k¤ºÅÊÌÐehfbccbddfddbbcbbceca`_]YTURTY`jr{¡§«®®¯³°¯®®²²³´´²´²²±«¨£¡|rfaYOLNQRY_]\]adhliimnmlln|{~t`ab^U[g_GTnn\HEj{X80/>pkJeuTAYumitf?5Bjw]7+/2BC<0-46:9GB679*/+)! 3hK.:HX|¤¯µ¾»]_XX[v¬¨N(,*'))9JVSA.%)*---075:8;=<99?DJEB=1.18CLQL@ASRMB<9:AFLHFDFNMPOOQUTNQVWYYWVV[[]egfc^ZLENO[`lt{¡£¥¦¨§¨«­±±±²³±²µ±°°´´³¶·¶¸¸¸ºº¾¾¾¾¿ÀÂÃÂÄÅÉÈÊÌÍÍÐÐÑÏÎÏÒÓÓÒÓÕÕÕ×ÕÖÖ×ÙØÙÚÛÛÛÛÛÓ·B"Lx}yurtpnlgd`ZUQPTPMKNKUWh¦¿ÇËÍÎ{gefcccdccef`egcbegdba]\[WTUQSV`iry¥©­¯¯±¯¯±²´³µµµ´²±´³®«¦£ wmg^RMHORX\[[^baefggimmlnz{|zlaPXYNes^GSbndEKtyI/,+9dnW]T=Nuze^q[A8Al~T7.4465+/BFHG6E?WbM870 7XD--3Kn¤«³½Á´\\ZY_z¨£G(.)&(),6CPN=3+'-3,099;<;6@9<?AFEE;2.017@EPH=DPTNA>78:@EFB;B??ADFJOFILLNPORQTSVZ[X[NFCIQYgp¡¢£¤¨¦¨«¬®°°®°°±²²¯®¶²²¶·µ¸¼¹º»½½¿¿¿ÀÂÄÆÄÄÆÈÊËÌÌÍÏÏÏÎÐÒÒÒÑÒÕÕÔÖÖÖÖ××ÖØØÙÚÚÛÝÚÓºE !1s~}|wvtlhhdbbYZYOFC>@=<;<;=Da¥¼ÇÌÎÍgbedbdffdfhghfegfbceb_]\ZWVSRSUblqz¢§«®°¯®°²¯°²µ³³µ²±²³³®©¤£}si_VOLPOSYWZ^`a`fehihimwxng_PGLORsySCZikaCRp@31-9]nS]}gDBbzcS`wT94Ed}a91**/./8F_P6@XvzLVA%#7Q4 '2Gv¥«³¾Áµr_bYYcx®F-,*&)+)*3BKIB1+10-/4<?=35>>==>C@FC73511:?HOF=EMRJ@765:DDEB?945:;<>@C?ACHFLJJPOPKIIC?HX`kz¡ ¡£¦§§©ª¬®®®¬­­®°°¯±±²´±´µ¸¸¹¸º¾Á¾¼¾ÁÁÄÃÄÆÆÉËËÍÌÍÎÏÏÐÒÑÑÐÒÔÔÕÔÕÕÕÖÖÖ×ØÙÚÚÛÜÚØÏ¹2!*R|~~{{vuqsqojd_^\YVPJLF<733211443;U}»ÅËÌÌycceedghedhfkkfgfcbda^\^ZVZTQRV[dn{¡¤¨¬°®±°°±°±²³²´³³³³³²®¨¦£xnf^SOSOUW\[Y^c`ddcefkpv}ziZZTLVXpkJE^viZFb_29;05YeRUykQAQllRHftJ02:{oI/+//-4=F>47cwh3#"$+=@-()1Qª¡ª°½À¨k]_W_kª7(&'(*+*&*4>EE<3+*./148;869=9;<AEFG>=<5269?IF;<GMEG=955:BGLD:322433315<<==?<>FJGDC=?GTeq~¢¢£¦¥¦¨ªª§ª°¬«¬®®¯¯®±´³±²µ¶¶¶·»¼¼½½»¼¾ÂÄÄÇÈÉÉÊËÌÌÌÎÐÐÓÓÑÑÒÔÔÔÓÓÓÔÔÕÕÖ××ØØÙÚÙÚ×Ñ·? 2tz~||~zuxwwtqnjihce`\XTSPJIC?8111/,()+*+-Dm®¾ÅÇÊicfhieddcfhifiefd`efa__[WVQMNOS`gq|¤¥¨«®±±±²³³³³µµ¶µ´´´²°¬¨§ uh`TQMNNRVY^^\_ad^cej|~qs{nPXV[gn`EIi}sVFmzO49;7D`]Mbyn]TF]n\FQod?25QqC-)./&*30-+L}°¢T6/&1F>+"'8Y°©±¼Ä§_baXcp·7#$$+10)%*04;D>;1++,-0159:;9887AEBGIB86/348=C?89FBFE<721:CKKD93.-/---/4114:89=>9A<?HYkt}¡¡ ¡¥¨¥§©¤¨¯¯®¯¬«­®¯²²³°³µ¸¸´´¶¹¼¼¼»¼¾ÁÃÃÄÅÆÇÊÉÊÍÏÏÐÐÒÒÏÑÐÑÒÒÓÒÓÓÓÔÖØÖÕ×ØÙÙÙÙØ×Ñ½x7 -V}|{xwsturmpomifea`]\ZTNQOKIC@<5.+//,(""'&#(8Ux³¾ÂÆzfhdheffeehjcifbcbef`a`\WQPKLLOWalx ¤§¨­°²²±²´²²³µ¶¶¶´¶¶±­ª¦£|rdZWPKPSTWYV[^``aeht}snqu}~p[LKdzSHTtzTMob@<;54Ha_Ub`XRBRlnQ<Ry]:45_g6"%-&"',0'.h¡f?9/>J>(#%8Q¡¥±¾À\bgZgs´* &',45-+)*/4==:61***,-03:EC:88=CEHBB:434055>@=;;>=JG;202?FNLD=510,/,++*,//369<9>ASak}¢¤¥¨¦¥¨¨¨¬®¯°¯­«­­°°±°³³··´´··¸º½¼¼¼¿ÀÁÂÃÆÇÈÉÊËÌÎÎÏÐÐÐÐÐÐÑÐÔÒÔÔÓÔÕØ×Ö×ØØØØÙÙØ×Ï±w- <n{ywzyzssoplkjggjeb_^_`\UUQNLHGF=9975.,+))'"#)$ $*Ac£±»Ãphfdbfffghigefcbac_[^_[TSPNKLNR\ju¢¥©¬®°±²±³³³´´³µ¶···³²¯«¥ vi^ZVNMPQTX[[Z_acipzrpqppw~~xc?FoYAI]c`uR;=D95H^ZLcgF<5HnjJCVr¢`G::XW3 ## (45-,FnqY98A<@B.(+B]w¡±¿¿\gcXcvÄp.'./122-**(,7:9:7751,+--07;=?A=5;<A??>8592215:>>7::?CA524:@HJKH>3/.1.,/3/.-08??;K[fny¢¡ ¤§§¢¦¦¦¨ª¬­®­«¯­­­°±°±¶¶³´µ¸¸º¼»»»¼¾ÀÁÂÄÅÇÉËËËÍÍÏÏÎÌÎÏÏÑÒÓÓÓÓÓÔÕÖÖÕÖÖ×Ø×××ØØÖÏ²l:1Xyxqqruliigecaa`_\VVXUWWSNHEAD@@<7336./)+))$'$$%'+7Uu¢²¿zfedcdeffighbccabb^\][YUWRTKJINVcnv¢¦«¬®¯°±²²³µ´µ·¸··ºµ±°¬¥£zod_YPMNNQWZ[Y\^djx~pnnnputswsdGPd;:JcaltOBVm:>OXRGV{w=17Gd{_D@Ql£©c:3AlR !'09.).Mj~scB@C57>?3@Oaoqy±À»YbbQ^t·u-(./.00.-/&(2:877188121/1223=@A=::A9=>>?>8+,35:===:=:@:830:BIHHC>;43331.1.899=HWahpu ¢  ¤¤£££¥¨§¥§©¬¬«¯«¬®±±±²´¶³²µ¸·¸»º»»¼¾ÀÁÂÃÄÆÈÉËÍËÌÐÐÏÎÏÏÐÐÑÑÒÒÓÓÔÔÔ×ÕÕÖÖÖ×Õ×ÙÚ×ÕË®w5Lnukijkl]_[]\XX\XZOQPPQNHJIA@BA<58742120.*0,+((&(*0D_y§¹ocdfdfeeihdbbfb_^]]\Z\STSSNJGLT\hq{¤©«¬¯±²²²²´¶·¶¸µ··¶²µ¯§¤ wlc[SNNNTXZYXY\fhsvpikllnqrrrqhRbmI64MkvQdoPd_Z=D]]M@OxI0-8TjqWGHXt«¨bA2C{G' )841/=RkwnhTG:,(0::M]fdix¡¨´Â¶wWh`Zbz Âp-%+.3110-,)&)./4;745444235778?DBA;<97<B@>;1,/24;@@:;;<?><357BGCGHJ@<7244::?:=I\glowz|y~ ¡¡ ¢¢££¡¤¥¥¤¥¨«©¨ªª¬­®¯±±³´²²·¼·º¹·º¼»½ÀÁÃÃÃÄÆÉÊÌÊÉÌÏÏÎÎÏÏÏÐÑÑÒÖÓÔÓÔÕÕÕÕÕÕÕÔÔ×ÙÖ×ÕÎ±zT`yvd`]]g^URUVRQSPRQLJKJGFGA=A?@>:;:84210.+--+',)+17=Na°}bbdecdccedcbdb_][\\ZZVROPPJGINU_iw~£¥©«¯±°²²±´µµµµ¶·¶´³³¯«¥¢|si]XRONQTTRWY]cgklfeklnopqpqqmm|N:86Otm>_`QKRH4He[K?LzP1(/AZu~iUOTc|£¬cEB^zF,#"%)3=04E[c[X\L3%!,;Rejcfx­¶»Ã©o\g`Ydz§ºs*&)+2.100-,((--.462;336559<8587;?8;>:;==;<7-//37;=<78@???=627FEFGJGE::=;;:<<FShlotv{~|}}}¡£ ¡¡££¤¦¦§ª««¨««ª­®®­²¯°±¶º¸¸¹¹»»º»½¿ÂÄÃÁÄÆÆÉÇÈÉÎÎÎÍÌÎÏÐÐÒÒÓÓÓÓÓÓÕÕÔÔÕÕÕÓÕ×ÖÖÖÓÎ¼{iq~ubWSW^cOLNQNLIIJOLLJFFEICIGC@?B>;;99420--..**.307:EVo¦pbadchdedbbfa]_ZZ\[ZZXRQRPLKGINV`nw £¦ª¬«®°±³´´µ¶¶···¶¶·²®§¦¡xj`YPOMNNPRW[^`dhkjhlmlkooqqot|K4164Pz~~`H\`VO\E;R^QA?G{ZA-,09\uve[]XngGStqO.&'(/9=GJGW_ZSK:&&(.@Yaa_dr·ÀÀÀ]]j^[f®¼a//,-24541,)-.*.(/654//49=<A=><4288==::;A=>740/006<=;8:;A?B:32:DMEGFHGGD?E<@FR]fmny}~~{~~~}}}~ ¡  ¡ ¡¢£¤¥§§§¨§¨«¬¬¬­¯²°¯²¶··¶¹¹½¼º¼½¾ÀÁÂÁÁÄÆÈÈÊËÍÏÎÍÍÎÐÏÎÐÑÐÑÒÒÒÓÔÕÔÔÕÕÔÕÖÖÕÖ×ÕÓÌ±nxrfTLOQ[QEEIIFEKKLRNMHLKLJHIEDGIEA=<<8?<874//-/-27AKTiaciededcb_b^]_\[ZYZXVSTRSNMFFIS\itz¤§©ª«®±±²°²´¶¶¶·¶··¶´°ª§¤ zmg^UNKMLRUXV\^cccjhikjilnooxqA(+59_yr^@c[U[bG=_]I@<IuWK3.-0A`~m_`\fz{y¥m_kvO<2+/;AUSS[WLA>98;<CZegeks}©ÃÈÀ¾acmcZcµ°`-)/6555300),.),.3532//7:<<;:BB7699847;:>AB951/3438>8977>AA:729DGHJHGNRMHEBIM[ehmrz~zz}|z|{|}}¡¡£  ¡¢¡¢£¥¤¤¦©©«««¬®®±®«±²´³³´·¼¼»»º¼¾¿ÀÀÂÄÅÇÇÈÉËÍÍÌÌÍÎÎÎÏÐÏÐÑÒÒÒÔÓÔÕÖÖÕÕÕÔÔÕÕÕÕÓÌ¹~leSJJKLLBBFFJLOQKUPOONTTNMLIJKHNHDHB>@<=>;65455=GIMUf|uecgfeb_^\\\_a\Z\]ZYUTVURNLIDIQXbkw ¤¨«­®±³²±³´¶³µ¶¶µµ¶¶´®©¤¡vncXPKOOQTWY[\aaagfghijlkkrnJ..8Hrxp[JUa]ZdBHYMGD66mcH;9-,1Jgrg[TXrus¡rd{zbHAAAIV^d_SH8.,09D^mt}µÉËÅ¹Whnc_jµ¯J,+03763522/-*+,1763551/17:8788;:889:8;=9@B=8755:569:<836>D>8455;@MHFJSVSGHTS]gkqu||~z{||}}|¢  ¡¡¡£¥¥¢¥¤¨©©««ª®¯¯®¯±³³´²µ´¶º»º»»¼¾ÀÁÃÄÅÆÆÄÇÉËÍÌÌÍÍÍÎÏÑÐÑÑÒÑÒÕÓÔÔÕÕÓÓÔÕÔÕÕÖÖÖÕÏ¾ydXRL@>LOHGLNQNQRQTXRWQVUQONNQRLOOJGJHFCAA@<;>?>DJKOW^tfbfgdba]Y^^^__[\][[XUWZPOMJFEHS[gw~¤¦©¬­¯°±±²´´´´·¶µ¶¶µ´®¬¦£sg[VQOLORYZ\]aaieggfhijjnpQ0/=IiylcK\gc_R@RVDKJ:7]dQ@F@2/CMqseb[]nwpjwmzjWKACTcqq[A7+'#&<c{£«¶»ÀÄÌÐÈ¶{Yej\ap½¢L(,1-35234321...06758440095479=:68;;:64:7;>>;@437887:E;8:;>@8856:=AHFCNSPMQUS[flquw~}}|}~|{}}}~  ¥£¤¡¤¦¦§ª®«ªª¬­­¯¯°±±±³³µº»¹»¼¼¾Á¿ÂÂÂÄÅÆÉÈÊÍËËÍÌËÍÎÎÎÐÑÐÑÒÒÑÔÔÔÔÓÓÓÔÕÕÖÕÔÖ×ØÑ½¡|^RPMGHR]OIOQSSTQYUWXYXXYVTTUUTSRTMILMNHEDDBCDEFHQPPRXg|wbcc``a__^\Z\`\]_[[ZVXWSOLLIFDNU`mx¢¦©¬­°±±±µ³´¶·¶¶¶·¶µ¯®ª¥ wl`YWNINRYWUYY[^`cedgkgm}¥y\@7>EEitk`QZimbQBSSFFHM8_jWHCX?.BFYtuk\I\uyd^ywt}{lYH>EWza:342%#=i«·ÅÉÍÍËÍÆ¯vQejX^{¤¿£C00227405968531/359861144<12556779=:976568559<9658967<:>@;:><:75:;5=BFKGEPXRT^gnsvx~~~|}~}~|}}~}~}|   ¡£¢¡¦¥£¥§ª­ªª©ª«­®®°±±³³µ¸¸¸¹º¼½À¿ÀÂÁÄÅÆÈÈÉÊÊËÌÌÌÍÎÎÎÏÏÏÐÑÑÐÒÓÔÔÔÔÓÓÔÔÕÕÔÕÖØ×ÒÃ y`QNMPFS\XQSYXXWX^]^ZZ[Y[YZZXUW[YURRNOPLHIKLIHLNOUWVYWZmg\]\]_b^\_]]_`\[[ZZZZVYROMKIJHRYcr~¢¦¨«­°¯±¶µ³³³·¶·´µµ´±¯­§¡}tia[PKNPOUVX\\]^_cbfigt¡{x|iR?7<5RjaVL^rwiOHVXBD<DPtn]AA^X;49Ip~sXOWpiOV|ia||vmZ:4Ezv:%/>*.Ot£®¿ÆÍÑÍÎÂ²rVa`Ve¼J02734358778757236;88153055561033469;787469856877652316;;;;;A??84458?@CBFMMOV^ansvxz{|x{}|~|x}~{| ¡ ¡¡¡¢£¤£¦§¨ªªª¬¬­¯°°±²±µ¶·¸¸¹¼¾¿¿¿¿ÀÂÅÇÈÇÇÇÈÊËÌÎÏÍÏÏÏÏÏÐÏÔÐÑÒÓÔÔÔÓÒÓÓÕÕÕÓÕ×ÙØÒÂ¤z_LIOSOMY^UY__\X\_[`_^_^^Y`a][YZZXUROSUPLKGQOLLQXZ[Z[Y]ex\^b^`a]\_`^^a`_^[ZZ\XWSQOIIICKT^kv}¦ªª¬®­¯°³³¶²¶¶·¶µ´µ³±®¨£ xnd^VNLOORUXZbig``a`hh{q|ufS?39JbVJ@UqzsHMUH>4-6RoU><`lP928Wx{^VTnyiQGT|ce~y{oV>Au ?$"#'8\u{p{¨»½ÆÒÏÏÆ³~Ob_Xj­µ:.4/..144<86;>82-.1573-.79221/13-+/477875:;;87428?6354568=A>@AA<335205>GINPPUZajqquzzyv{|}z|zx}|z~¡¡¢¦¦§¦¨¨¨ª«¬­®°­¯±²´¶¶¶¶»»½¾¿¾¿À¿ÄÄÅÆÆÆÉÊÉÌÍÎÐÐÎÍÍÏÎÎÑÐÑÒÔÓÔÔÔÖÔÔÕÕÔÔÕ×ØÚÙÖÂmPGOSXTX_\^_^`_ab_cdddab`a__]TX[[WSRUWQQNNPQNTVW[^^\[]\ka`affb]`_aa_\f`[WWYZYXUPKJIGHKXamx¢¤§ªª­¯°³´µµ´³µ¶´³´´µ±­¦£|ri`YRKJRRU\^ky|d^^]gy np~ywuaG69EYZO4OnzuTOSGD2$/JzrN9;[k^I<4Actg]\iwiYIIfy\dy}}bGtN"$8Zkccr·¼ÀÉÒÒÉ¹`ge_q¶¸};/230+0679558E70-)+4785333351-1/-,.011684678>:516::<@875:AEAD=@>:82.003DDIPRSV_gqpruyxtz{{yzz}~}~|z ¡¦¦¦¦¦¦§¨ª«®¯¯««¯²²¶´´µ¹º»¿À¾¾ÀÀÀÄÅÅÅÅÆÈÉÊÊÊÍÎÍÌÍÎÏÎÏÒÒÒÓÔÓÒÓÕÕÕÕÔÔÓÖÕ×ÙÙÙÒ¾_MMRUTTb\_babdffdgffcbdca^``Y[[]]WUXYTRORRTRW\]\`\accfy^_cd_a`]`baabc`][U[[XYWWNMMFGIPZgt}¢¡¥§©®¯°°²±³²²´µ·µµ³³³¯©¥¡~ne[QNNRURXZom\\^jyoqrs}dL=CT\XXFUrvsTSOED6!%8nvR;9Qa\KIE?RqpefmuulbIFZt~{oo{z{q{<! &'1Z|klt~³¾¿ÎÔÒÉ°^jghy¦»°t0.21.2665<<:<:1.+++36:82034951/+-/00200029958;;637<>@9679@F=<::;;62///.4@KQTUW^flvvxyuw{|{{x|}|}}}y£¤¥£¥¨£¦¥¦©¬®¯®ª®²³´²³´¸ºº½¾½½¾¿ÁÃÃÄÄÄÅÅÈÇÈÈÊËÌÌÎÏÏÍÎÑÒÓÔÔÓÒÓÕÖÖÔÔÕÕÖÖØÚÛÚÙÔ¸XIKQVU^__gddgedegggmefeea`dYb^\]\ZZ][[VSTUTYW`egfggdil`ab``h_^````_b^^ZZYXYSSOPOHDIJRalt}£¦©­¬°±²³±²²µ´¶µ´µ¶³®ª¨¤tkbYOJKJNQUh~r^``qmljmxpK;FOS\]LYvtqa\SIC:'&4gvhF;OWQLL`FSurgjpn|ur\QNOevt{zto|wE*)#-^u~¤¶ÃËÕØÒÈ¬|^gis¯³£b1.2377328;<;8867./143;6/.26895.+,/01220137849<<969==;;9>:<::>;8;72210305:FNQTX\^gsvxyuuyvxzyz}z~|{z{¢¥¥¦¤§¤¤¤¤¦¬¬®®¬®²¯²±²³·¹¹¸½½¼½½¿ÁÁÃÄÃÅÇÇÆÈÉÉÉËÌÎÏÏÎÏÐÑÒÒÒÓÓÐÓÓÕÔÔÖ×Ö××ÙÚÚÚÙÓ¼ZHIQXY_^bgjheioiljkidgbcbb^``_\`][^a_WWWVV\`cgljlkhh|becabeb_`bdbaa`\[Y\YUSPOPMFCFGKWenz¤¥§©«®±¯´±²²²³µ´µ·¶³¯¯«¦ ~uf\RLIHNNO]wvheougmqxznK:EJHY\RbmkvigTOM;%$2ps_PPLTCHNgcZstbalmnjpgUSNYu{tknmulN8/,?e§w¯ÂÔÝßÖÆ¦|_ih­§Q3/86343385566<<524..0:9513346:600.-.-12/.13048:::89<<=>@=9:8;7:8655-17327>GHQUX\eloqrrttsuzyw|~~}|y{  ¡¢¤¡¤¥¤¦©««­®­±¯°¯°´·¸··ººº½À¾Â¿ÁÄÄÅÇÆÈÈÇÈÊËËÌÎÏÎÏÐÑÒÐÑÒÓÓÓÓÔØÔÕÖ×ØØØÙÚÙÚØÏ²PEOVX^_adjjgiiijlkkhihhdg```cbbb^```[ZVY^acgijmnlmjxccabdbaaa_baaa_\YZYWUSONKHHECJR]iv£§§ª¬±°°±³²³³³²¶¸´µ¯°¬¨¢yk`WOMEIKKUg~~sty~xlQ?KE=JZ[_hfwxn]RK7#'AunSCXVZN@DZtZfmjZQbs_g]LHP_o|{~|spyym\\e¡x~©ÈÛáØÇ rbmq¦²?56733547745:95><62,*0198222124:42/,-/-//-.00/25853579;<><>946?B;8565640/55>FMOXX]fkmrrnqtttwz{~yw|    £ ¡¢¥¦¥¦¨¬­­®®®¬®²µ·¶¸·¹¹»À¿¿¾ÀÅÂÄÆÅÆÈÇÅÈÊËÍÍÍÏÐÑÑÑÑÑÒÑÔÕÕÓÖÖÔÔÖ××ØÙÙØÙÙØÑ´}YNQU[^bcgghkhiijkklnffdeb]^]baf_`abbbZ]aeegkmoqnnp~fdbbb``bc`acb`a]ZYZYVTRPPLICADLS]my¥¨¬­¯°°±²´³±±´¸µ±³±¯®«££~rhYRJHLKFOTgxvxxtxzxvrkUHFFE=V^dbduz`PJ8%(EjK>FO[U?=JXX_eaODQlpne?=GSYclwusz~xuiyw}ÄÙ×Ãkcpw«¼¥|D01877569537789;;82/',07:9..03189941,,,.13.00220154159<;==;6536=??615:863048@LLQV[aghoposrtuuuw~}tu~ £¡ £¤¥¦¤¤¤§ªª«¬¬©«°³±µµ¶µ¶¹»¾À¿¾¾ÁÂÂÄÆÆÈÇÆÆÇÉÊËÍÎÏÑÑÐÑÒÒÑÔÕÔÓÓÕÕÓÕÖ××ØÚ×ØÙÙØÎ´VPSX\^`dadikihlklligggfg_`\]bca]beba_]`bggmsrpqpu| gebdbadba`acb`^[XYVTUURMKGD<9>HVco}£¦««­®°°°°´²°´·´³´´±¯¬¦¢ynaVNIGJGJOWajw}zqnozjhlnqssmdKKE=>O\c[aweTME*'M{y`=2=DNQKDBIIRZYMIH^_srN6:G=8EQ_p~o_i|{kaSHZtw}z|½ÔÃ^hs§Ê­}<25774551358:8508:72++068=4/../24;9501-.054550/03432588:<;;;<624:>7455588-136ALNQ]bfhmosurwvvw{}~tpv¢ ¡£¢¡£¤£¦¨¨¨©©¨¦ª®±¯²³²³³·ºº½¾¿ÁÁÂÀÁÃÅÇÅÇÇÇÈÉÉËÌÌÏÏÏÒÓÑÑÓÔÔÓÓÔÔÕÕÖÖÖ×ÙÙØØÚÚ×Ð´\RUXZ]bceilkjkkklkjhjgedc`c``cabece`^bfjlotvrupp|¦­ocefcefb`bche_]^ZYTTTTSOLGC:6:DKVgw£¥¨ª¬®°­±°³²²´´³³³³±®­ª§¡tl_OJHHLIKLUZbie^gw}oiklvtvpePHH56IU]S[uzbKE7*2ZqR706BMLMMFBBDSVFKISR^wlN;<3/38=OX\VZ^jt{wdQ@G]u|t}¦ÊÃZizª­Æ£h=53300211159:7517=711+-48::20*.004:>61,-.126.+*/11451325887:?679979=953895/.04AELZcbcjsssstvx{{||xqqw    ¢¢¤¥§©¥¦©ª§¥¨ª«²°±±³µ·¹¸¹»¿ÀÁÁÂÀÁÂÄÄÇÇÆÈÉÉËÌËÌÏÏÑÒÐÒÓÔÔÕÓÔÕÕÕÕÔÔÖ×ØÙØØØØÖÐ¹`UUW^[adfihijmoomjhihjfccb_bgeehccbdefmnprsrrrn¢ª°bbcbefdbafjfb\\\XVRRSUOKE?;9;@GS_jz ¡¥ª«­¯±±¯²²²´µ²¯°°°®®«©¤xm`UMGIIGIKOYZZ\bo~}mjkkostqiWOL@@EY_USggb`K7-"/\ygE4,0;CINKECE>HPRKEKEOdleXN<7.44<<BMc^[Zbj`F=AZw{u}¡ÅÄTp~«µÃQ:540--4342036<988<952-+/57<6.16361<<941/23232/.1/2331/148:89=??A77::;945880.038AKQW^cfjostuvx}~rpq|¡¡¡¢¥¤¢£¥¨¨¨¨¨«¬¯®®¯±µµ··¸¹½½¼ÀÁ¿¿ÁÃÅÆÃÆÇÈÉÊËËÉÏÐÐÐÐÐÒÒÒÓÓÓÔÔÔÔÔÔÕÖØØØØØØ×ÖÏ³[QRUV]`afikiklkkjfeehkhddbbgfgeeddeedkpurttrsr ¦­µ·ub`cfdcfdfbde_YYXZUSQQMLEC@>=<EUWgsz ¢¨«¬­±¯°±²³²±³®°°¯¯¯¬§¥~ufZRKEHOGLMQVZ]gw~vjilkqvwvl]VNLI=S]\VRKP]K7+%7d}`<--,5BEAAGLF?@IQQFFBEP^b\fcVGA?738FacPAE[L95F]}|v©ÈÉ_p§ÀÆL501/6:5310,-16::89>7/,*,37:;/11242-338952/./342.+.464317788;>=>;7899>6598841029=GPR[\enpsutvy~}tlq} ¡¡  £¤¥¨¨©©¦©¬¬­«¬¯°´¶¶¸¹ºº¹½¿À¿ÁÂÄÄÃÄÆÉÊÊËËÌÎÐÐÏÐÎÐÑÒÒÓÓÒÓÓÔÔÔÕÕÖØØ××Ø×Ø×Ð´`OQTY]_ccdfegiijgefhihgdcdfhihhdbfghmnttuwyut§ª°µº£dfffdfigdcbfb^]XWSTRSNLHDA>=<BIP\jv£¦©¬¯°°°®±³±¯°°°²¯¯®¬§¥ {m_VPHIHHLPQU\bs~|lejjosuxv{\WNTTGF]\SODGPI=.$Av}_A62323<ECASN@=@CFJMCAEOURW`nn_QEBAGeuTC?EIE9Vf}ztµÐÊ^v¤¥ÁÉ81-037410/0.2559<55<81+'*27<>5011264478860-/21364.-./33014448;;=:99:9=;=:48621229DQOZ^bhmrrqtwy}~{rlv  ¢¤§§§©¨¨§¬¬««¬¯±¶¶´¶¸¹º¸¼½¿¿ÁÁÀÅÄÄÆÇÈÉÉËÌÌÎÏÏÏÏÐÐÑÒÔÓÒÒÔÔÔÓÓÔÖ×Ø×ÖØØÙÙ×Ï¸UONTZ[X^]dddfgkhbefeghhfcfikjgfhhjkprswxyxss~¢ª±´¹»¾jhggfmigb_b`]\VSSRRRQOGE@><;<CNWcr~¤©«¬­±°°±²²®­¯°²®°²®¨¥¢¡uf]SMIJNKPPT\mwifiilpwzzdRFW]N@V\USO@JA<2,J~YB60//09II;CPRF@C:CGDEGMPIGIZjopkc][p}iA6=BQO^v}~{r±ÍÊ¥x±ÌÇv7.2344.-020/.425=<84861/,.3:G<3./2693948741-/13520/,13023530379;<>=8;;B@967<86305:FSSY\hlpqrrvv}{xot~¢   £¤¤¥¤¦¨¨«¬ª¬«®°²³´²·¸¹¸»¼¾¾ÀÀ¿ÄÄÃÅÄÄÆÊÌÌÌÍÌÏÏÎÐÐÑÑÐÑÓÒÓÔÔÓÓÔÖÖÖ×ÖÖ×ØÙØ×Ì®]MQTVX]]bacfceeddgfikihhglplokfgjnossttwwrr~¤ª­´¶¹¼¾¬hgffcfjha`b^\ZXXTRQQQMICAA;:<?GSboy~£¥¨©ª­®°¯¯±®¬­¯¯­°±°¯¨¥¢ymdVQJJIIJOUdxocfefimrttngPE\cWCF[\WUJID;7+SvQ<9-../0@J@7@YWOJHB<=FHNNJDBCLRamnxv{SJJ=Faav~{oz¹¿º°¤Â¹i4-520253.1310628AF?;:85-..47AB8..2460368875/-/11105-131386401459?>A6:?GE>:5>974445=TORUbprsttvvwxvp{~ ¡ ¡¥¥¦§¥¤¦§¦§©«¬¬®±°²···µ¸º¼¿¿¿ÁÁÀÃÃÃÅÈÊÊÌÍÌÍÎÎÏÏÐÑÐÐÒÑÑÓÔÓÔÔÔÔÕÖÕÖÖØØ××ÕÎ´]QQTV[^c_cddebdafhihkjlhlllnnmjloqsuusyvrt¢©®²µ¸ºº½½gfdcehc`___\\VTQONQPNOFC>:;;:BKZiq{¢¦¨©ª­®®¯°­«­­¯°±±³®¨§¤ si[VRJEEGPYnwcabcceilmqnl^NQbV@<LZ\WSED@@@^uK;5,38148GD;5AT[NLFA?EJNOLNEB@AGOT]mfdhPDaqz~qp«¾Çª® È£Q6311-35556344,,3EM>:99:/.-256E=40232/0/37785-)012001/+2984460+3:?=<98?JKEC=9772983:JTQV[lrstwwusrps~~ ¡¢¦¨¦¥§§¦¥¨ªª«¬®¯³¶¶¶·¶·¼¼¼ÀÀ¾ÀÁÀÁÄÆÉÉÊÊËÌÎÏÍÎÏÐÐÐÐÑÑÓÔÕÔÒÔÔÕÖÖÕÕ××ÖØ×ÕË´_MQTWZ\_b``eddddagekhhjioommmlossywvwzvsu¡©¯³··¸»»¼»±eeggcccbb\\YVRSSOPRPMLG@>@=:8<ER]jw¡¤§««ª¬®®®«©«­¯²²°±¯®©¥¢ yod\PIECFO]ti]_adbeiknmnpkQS[J78>P\SLCCHGUljC78/1;416AF=57@RVSMOPOMQUMGIFD@=?HQ]ntgP]onh^mtny¶Ë¿¡ª±ÉI20+,.35:9:1/2/04=H?;<=91/,-.3@C:43.230-/465130.10.0223343/43116999<<=@DEHNJ?<747752;RSOR_qxs}|vuplt¢¡¢¤¦¦£¨¨¥¦©ªª«¬®®²´³µ¶¸¶»¼»½½¾ÀÀÀÁÃÅÇÈÈÉÉËÍÏÏÎÌÏÏÏÏÏÏÒÓÒÓÓÓÔÔÔÕÔÔÔÕÖØØØÕÏ³_MQPW`_`_acbb_b`bdeijljkmpmlrntuwwwzywvv¤®´¶¹º»¹¼¼»¼fggcbcc`^\XUWRPPPQNHLIID@<969AJVbp|¡¥¨ª««­®­­«ª«®³³°°¯¯««¦¤wocVLFEFSkj`]^_dhghholptrbX[:2-.@RVQB>MOcwx\4?D53<?9:>LD@EJJK\[ZXZZXTNMOKOKCFRQ\dYG:CSgmcextv®Ë¿®¯×H1**/0456311034006<>=@?>40.+-6<J>400362.-1236540--.1017342/112379669;??:AIOOJA55723-/=MNLVkxwy}urnkw¡¢¢£¥¦¥¥¤£¦¨©¬«¬®®®²²´´¶¸º¼¼»¼¾¿¾¿ÀÃÅÇÉÉÉÉÊËÐÎÌÌÎÎÎÏÐÎÐÑÐÐÑÓÓÔÔÔÔÒÐÒÕÖ×××ÖÌ¶VQPRUX\`\^_`a`ccddeilkmmojmootywvvywxxx ¤ª±µ·º»¼ºº»»¹¸kdeecb`][\]XVRTSNLPLLKFE?>::8:ALXiv|¤¦§ªª¯®­­¬ª«¬¯¯¯°±¯¬«¨£{ti\RKFNbvyo[YY[_bgefhlntwre[S8*)&0KVTNHJ\u{hJ6<HO4GFACDEADO\ZRSX`fdbcaZZWS^\Z[^^_^T<9:DR\\Vf£}x§ÅÉ±¿ÇN40.13243013.351009A>;>?913//29GJ801-220115297751053.0552/2/0-488:7379<;>CLOON>982//0,<IOSevxv|vmkty¡¢£¢¦¦¤£¢¦§§¨­¯®­®±²¯²··µ¸»¼»¼½¾¿ÀÃÄÅÆÇÇÆÆÉËËÌÌÎÍÏÐÐÐÑÒÑÏÏÒÓÔÕÖÔÑÐÓÕ×ÖÙ××ÕÌ¬WJNQSYYY[][aacaaadfiknnmnonqpsxzxzvux|£ª¯³¶¹»¼¼¼¼¹»¼¼dddbb[ZZZXYVURRRQMKJHFHD@<:99<BO`ny¢¥«¬¯°­ª«­­««®¯¯°²®­ª¥¢ ~yraTOL\vvdYVS\Z]_bcfmlnytsodYB+*'-;N^U?Hf~tL610SZFKMCDLE=>KZhkWR\fgedfhlgckjkim`X^[F;@9CQX]eo¬­~w{ÂÎ·®¼ÄÄxD50//2281.451134526;>:AIA751/-5?T@42214.,-.1565479610000211,--15787658>?88DNRUVC<5..,,1AQL\luwt{hhz¡¡¢¥ ¦¤¢£¤¤¤§¤©¬¬¬­®²­°´´´¶º½»¹º½¾¾ÃÂÄÄÆÇÇÉÇÊËËÌÍÍÏÏÐÐÑÑÑÐÐÓÓÔÔÔÔÔÒÑÓÖÖ×ÖÖÖÓË®x[OOUVXWXY^^\b__acefjnmonmnpswwvwyvuwz¡©°µ¸¹»½¿¾¾½¼»¼¼½rgcba\ZYXZWTTUTRUNJKLHFFF>:;9:CHYfu¡§©©«­­¬«¬«««ª¯¯°±°®­¨¤£|xh\WVae`TNSU[[\`befikryxtvsr]?+*.6GXP@Ots4+*.7>ATO>AIKB@NFZrm`W_di_bjkdcjncfbWQX]J<LIJPfklZg~jzr©ÊÒÄ½Ë»q:013/10/124520433149??DJI8.+(),6DE63/-//11200/225::233/-03/.-013442625=A>;;LUYaUJ?31/0-8FJO\mxrxmmy| ¡¢£¢¡¢¤¥¥¨¬«ª«¬««°®³´·»»º»½½½ÀÁÂÂÇÇÇÇÇÉËËËÌÌÎÎÍÍÏÐÏÑÐÑÑÑÔÓÓÕÓÒÒÔ×Ø×××ÕÒÇ¬UMPRVTTV][Z__a``ehhjknkjliqwutwwtxvx¨¯´·º¼¼½¾¾½½½»¼½½ec_^]ZYXYRRTUUSRPMLNGECC=:99=>CP\ju¢¥¦ª¬®­«¬©««¬®¯°°¯®®«ª§¢xpj``eXMLLPWWXZ^bcefhtxsqu|R;138<LSC\|n='.4949JF<=>VLA>@If}xfeija[_e^Z\_fb\RQY^TKQR\YwzymbcV}icukpºÕÔÆÌ³W6652/,.154320/420.39?BCJN:-*(*-.BF<20001321./..537964311/31/.0142549=;<@EA<ITY^a`P@853-/:NPY_irjrly{~¡¢  £¦§¨©ª¨«©««¬­°±´ºº·¹º¼¾¾ÀÀÂÆÅÄÄÆÆÇÉËËËÌËÌÏÎÍÎÏÐÐÐÒÔÒÔÕÓÓÒÓÕ×ÖÖÖÖÕÕÌ®{XKOQQTTYYX[^cbcfhhiiphgjnpuvuwxutv{£«²¶¸»¾½½¼½¼¾½¼¼¼¼¾ye`]^\\WYUUWTPPNPLKIFFBC?C>9:7CIRao|¡¤¥ª¬¬­­¬¬¬«®¯¯°±³²²®«¨£}vpeeaRFLLOQT[\`dbbdhotsqufL8/:;HPMa{uB*,5827EB9::EJBE??[x|xjgd]`b`^dekjgb^\aZ^m_`u|zoPRywUeyyx´×ÞÌÏH44<1-.226:82/0///198<ABIOG511,),7@F2..023553.0../675543643363100.358>@9>FD>DSY`ff_Q>8.,,/>NRW`mcowxz~~ ¢¥¥§¦©©©ª©ª­«¯®¯³¶·¸¶¹¹¼»¼½¿ÂÃÃÂÄÅÅÈÈÊÉËÌÍÏÏÎÐÎÐÒÒÓÓÓÑÔÔÔÓÓÔÕ×ÖÖÕÔÔÒÈ¬tOKPSPPTQX[\_bbfiijjmjikoktssttqsx}¤ª¯´¸¹»¾¿¼¼¼½¾½¼½¾½¾¤ca]\XZXXWUSRROSWMLJHIHCB@:976>DKYkw ¢¥©ª¬­®¬¯®±°¯¯¯±´²³¯¬«§¡}ukh`PJHHPST[\\_`^beinmnyjV@4;=@OL`uvR0+6:1;MF?:748;::@Qpvfbab_`dijltuursobd|U~svf;f~xjoz±ËÖÑÅ928B8./523=<762/-03778>GFNN=2.'(*2FP@/-0-5762/10/+02:96762614222372238??9?@>DNVbhhg^N@/+/*/GRT\een|vx~~x}¢£¥¥¤¦§ª¨©ª«¬­¬­²´³·¸¹»»¼»¼½ÀÂÂÄÅÅÄÇÆÇÊÌÌËÎÎÎÐÎÏÑÐÑÑÒÒÓÔÔÓÓÓÔÕÖÕÔÔÕÓÒÆ¤yTHQLQUXZ[Z^`cgfdagjdejjkqrptrmqw}¨®´¸»¾½¾¾¼¼½½½½»½¼»½¾}^[Z[^`\WTSPMMOTPPLJKIDB><:66=BFQboy ¤§ª§«¬¬¬®°¯®®°±²³³°®¬©¢{sk_RJHJPRUXYZ^a`_cfehp}g]NCJ@>JTep{{_=1583<JEA:7664388FcymXNTUWcglejjpx}~ymvucurdXjpdR[zom}y£´¿ÆI.9U;3054489611433366=DHGJRH7.%'*/ATW3341499400,.+,39;6;88@>23445520/1:F<AB==LT`fijd]P=-/+-;LMScepxuu|| ¡¢¤£¤¦¦¨§¨¨¬«¬©«¯±²´··ºº¹¹¹¼ÀÀÂÄÃÄÅÅÆÆÊÊÊÊÌÍÎÎÎÎÐÐÐÐÑÒÓÓÔÔÓÒÒÕÖÖÕÖÖÖ×ÓÊ¨rUMKJPSVWY]\be[V_ghcchgimnqsqst|~¥¬²·º¼¾À¾¾½½½¼¼½¼¼¼¼¾¿«ZX[\df^VTSOMNMOPNJGJIFC>>>7669@KZjv~¡¦©«¬¬®¯°¯¯¯±°¯°³³²°«««¡znaUNKHIOOTZ[Z^`^cdghrwlfS?6?=D^lowx_=.7=3;?AB?3:720779Mvy^H=@IQV[VOFJSftu~v~qnkd\LLe}o[tdit¡½°U3>WB231/5423553720339CMQDTO>0)&(&7LQC683.473-.121,.26888:KE;8455422226AL>DA9ES^gntiiaM9/-(,EJMYgitps|}~}¡¡¢ ¢£¤¥¦§©¨¨«©ªªª®¯±²³µ¶¶¶¶º¼¿ÀÁÂÃÄÆÅÅÆÈÉÈËÌÍÍÍÍÎÏÏÑÑÑÑÓÔÔÓÒÑÒÔÔÕ×Ö×ÖÖÕÑÃ£vPHHMNQRWXQ\Z\ccch`cgghjkqoksz}¢ª±¶º¼¿¿À¿¿¾½½¼¼½½½½½¾¿ÀZ]\^`XXUQONJJLNOJGHBAD=>;63329DTdpz ¤©¬©ª®¯¯°¯®®®¯°±±²²®­ª¤}sdWRIGJNQTVXZZ_]adhjttwp^B7B=Gciepj]E03<<5:>AB><983986>`mO>7;HRRQQE;=JSLZpz}~nZC7DdpETpqfo¶¾z?D_A251-0048331542333@MNGKSD0/*,.3@DR=>3.1850-+12-)-6=847>CG>8744335369LGFD@@L\eqwskf]I7/((0>H\fhqttty£¢  ¡¤£¦§«¨¨©©§©©®°°°¯³´³¶·º¼½¾À¿ÁÁÄÇÄÅÇÊÈÊÊÊËËÍÎÏÌÎÑÑÐÓÓÒÓÓÒÓÓÕÔÖÔÕÕÖÔÓÔÅnNDDKTQVUU[_cfddedabeimjhigj}¤Ì ¥¯¶¹¼¾ÀÀ¿¿¿¿¿½»¼½¾¼½¾¾¿Áµ[YXWWZ[UPLNKIIKJFFHEFCC>876557CN_gu} £¥¨©©©®¬­®®¯¯¯²°²³´±­©¦£xj]WOIGJORUV]ZZ]_bhfupuwcF?A@Ja_Som]K869A9;?CML?:C?<;::@¦v]D4,<QQV[ZC:<@<>CRk||jB7?^zxW@V{hl|¬=@P?554205521227823348DNFKTK;41,206>OM:30.551.,.0.*+187757>?;:985847459EXHGC?DR_ku|rldWD/(''6BP^fkxyw|   ¢¢¤¦§¨¨§¨¨¨ª¬±°°®±³¶¸¹¹·º¼¾¿ÀÀÃÂÂÄÅÆÇÈÈÈÊËÍÍËÌÍÏÒÐÐÐÐÓÓÓÓÓÔÔÔÓÕÔÖÔÔÕÐÀ_IBIRQQTX_fedd`bd]\aeikgii·ÃÉ¥¬³º½¾ÀÀÀ¿¿¿¿¾½¼¼»¼¿¿¾¾ÁÁÂVVSTTVTQMOMLJIHGFCDDCC><<522/>GT]ky ¢¥¨¬¬®®®­¯¯®¯²°±±±±°­¬§¢{qh^RKIIMQUWYZ\a`abdsylvymW7=CQUEF`ufbK809C;;BKO@3?SK=938c¬oUD<7<LP_m]MCD@F4Dk{oow|t_PTcxkCB[fb}pRhO>@F69844115312267311309GHJOQ>4/,+.1:KY@5/./520.-03-+,02987;>9<71/33467:?RKDCB<L^ntxtokhT>1*'+@J]bdrywv ¡¤¥¥¦¦¦§§§¨ª¬°²®±²³¶³´¶º½½¾ÀÀÁÀÀÂÃÅÄÆÇÇÉÉÉÍÌÌÍÎÎÏÑÏÎÒÓÓÓÒÓÒÓÓÕÕÕÖÕÖÓÎ½gFEMOQQUYZUWYZ^^ZZcabih{¤´ÀÅ¡¨±¶º¾ÀÁÁÁ¿¾¿¾¼»º»º½Á¿¾¿ÀÁÄ¿_WTVQONNLMLLKIGHIEDABE@=<32014>JRcv~¢¦¨ª­¬¯®®®¯¯®°®²±³²°®©¨¦¡xm`UPMILLTSW^^__`^dutkvvb@9HVL36`sxuZ=27>;:=ELI44OXO;53<¬ ysiR:9ITfut_FBBLHMnrVYq~{~~^et}\/=YTqpRF67AB7777014701302211/,18>IJTSF82/*++4GTM6./,430/,.3.0/24797:?=>:2-2045878:DDBG@L]ip{wsph[K3(&'3DWbbqwvy ¢£££¤¤§¨§©©ª°²¯®®²´µ±¶º»¼¼»¾À¾ÁÀÁÂÃÅÅÅÈÈÈÉÊÍÌÎÎÏÑÐÐÓÒÓÔÔÓÓÒÓÓÒÕÕÔÓÓÒÎ¿_NFJMOSTUSX[\YVW\__au¬ºÂ¥®·º½¿ÁÁÀÀ¿¾¾¾¼»¼»»¾¿¿¾ÁÁÄÇÈSRTORNPNNKIJHEIIGDGEEA>:64/0.:@K\ky}¡¤§©¬ª¬¬®®­¬¬­®°²³³²­««¨£}si[UNJNNPTWUX[]__g|pgs}lO6ITC.-LoeyjRA=<AE3@JJ;5>KaN919cªyyw`LLUfwwoUDKQ\cscRR^tsv~vppwD?FKOqpV?8>@5403//--054212142114;CIRYN;82**./:TZE3-,-5:631540018349>?C>A65448>;426=EF?@DRfqwyxsjcS8..).>N]Zeotx}¡¢¢££¤¢¤¦§©®±°­«¯²´³´··¶¹¸¼¾¾¿¿À¿ÃÅÄÄÅÇÈÇÊÍËÌÌÏÎÏÐÓÑÒÕÔÒÒÒÔÒÑÔÔÔÕÔÔÓÌ¹_AFMHNPSW[[^[XY]`k¢³À¡«´¹½¿ÁÂÁÁÀ¾½¿¿½¼½¼½¾¿ÀÀÂÄÅÉÉÈbRUQNONJPIHKLMKKIEEBA@B@9424117BVbq{£¥¨ª««®­­­¬«¯¯¯°±³±¯¯®©£wm`ZQKJMKQWUVX]^cg~oko~u\CAG=+(JcJKVQD:<JPF<ISC74=O_U4-D¥{onocbls|mQV\hxvTHUZZ^m~~qfzu\ZWQ^skSFI@510-+(+.130--(../345<ADKZRB3*,+035FVT73/058965140-.11.3<;?AB@67?;630.17GH?=@P_jstwwoe[S51*08CU[Zfox¡  ¡¡££¥¤¥§¨¬¯¬«ª­®¯®±·¶···¹»¾¾¾¾½ÀÂÁÃÅÆÇÇÈÊÉËËËÍÏÎÎÎÒÕÓÒÒÒÑÐÐÒÒÓÓ×ÕÔÓÑº_LLNMTUXZ[][ZYdªµ§²º½¿ÃÄÃÂÀ¿¾¿¿¿¾¼½¼½¾¿ÂÃÃÆÅÈÊÉVSPLMLIHHHJJIKOJDGDA@B<:852,*09GXit|¢¤¦«®­¬«¬­®¬®®¯±±²±±°®«§¢}si^TOJIHMRQSU\[\h~tkgkz}scJ;@8++@Z?):A:2=JF=7=ORA8:;XeM=Ht§tm[iqcnv|wg]apvPGTZSPS}rae}odmeWegZ[aN:1/(,.030))*-+-/0.58=BCFNSC7/.*++.9NR=541/76363220,,5614:>DBH<8:8101+,0?HD95K\irusrulc]H91(-;Q[_dnsx  ¢¤¤¥¨§¨ª¨©««­­®°µ·³µµ¸¸º½½½¾½¿ÁÂÄÆÇÇÇÊÉÉÌÌÍÍÌÍÍÐÒÓÒÑÑÑÏÐÑÏÍÏÕÕÔÔÔÌ¶YHIKQUTXX\[^}§£®·½¿ÂÄÄÃÃÂÀ¿¿¾¾¾½¾¾½¿ÀÀÃÄÆÇÈÊËÊnQPQOIMGJKLJLKNHHIDC@B=?:83.-01CP`mz~£¦©¬«¬­«ª­®¯¯­¯°²²³³±®«¦|reYPLKLNOMVVTXXjrffhrvlWH9-*)9WA-*,.7<>84/5F_K>98CTfT>f¢¡~l_D\u{stztfcn~rWIMSJIM^}kgr[Qe_PQXdk{oZJ936360*('(+./.1/27=CB@HPNB3-/*&)2CQI;71266547-32/16434;>ABE?277/-.*)05AB87CWfsrmpuj`aYB9,.5I`]`lpt|¡¡£¤¥¥¨ª©¨¨¨©­°­±±±±³··¸ºº¼½¼ÀÁÁÂÃÅÆÆÇÈÈËÉÊÊÌÍÍÏÏÓÓÒÑÑÐÐÐÏÑÑÔÔÔÓÔÒÌ²^NMX]Z^ZZx¦²º¿ÁÃÄÄÃÂÂÁ¿À¿¾¿¾¾»½¿ÀÁÄÅÇÈÉÉÊË¨QROOJLKJIKIJJIHGEC@>A><763.-+-;IScuz£¦§¨ªª«¬¯­¬®°­°±³±µµ´±¬¨¢widTNLIKJLRWTVZmrjfelu}zeE64..@ZJ.&()6=462,.?Y[GB>5;[`OZ¬uiFCUmzrhjkrl`XVTLIHKhuxyfXPDJdrr|wSEC@;4*)'').012/.5;<;;BKVK5/.*(&+:WYF:325>956575542269<<<@GA96401./*+/6>:;BUblmipoicfgS<//-:WZ^jmpy¢¢¡¤©ª¨§§¦«®±°®®¯­±²´·¸¹ºº¼À¿ÀÀ¿ÁÄÅÅÅÇÈÈÇÊÌËÍÍÏÐÒÒÐÐÐÐÐÐÑÓÓÑÓÒÓÓÒÍ·d]dib^u¢ª´»ÀÃÄÆÅÄÄÂÁÀÀÁ¾¿¿¾¾¾¾ÁÂÄÇÉÉÊËÌÊÊxPLLJILLJGGJNHIKMEBB@>=6211/+&0;M\ly¢¦§¨¨©«¬­­­­­°¯°±µ´³¯°­¦¢}oe[TMFGIKQXTT^oladehqsR;2,5AWF50-'37)./*+8XbCGLPCA][K«yR=<Qs}llqqgcdfaZSKJUnbLVurjhc\L?2.,.//+-136674>GQO=3//)%'2HYJF;6569437:74414987:;<EI@3/36421,.3<::BS^^ljnhc`imaE50.5H\[hjpw| ¢ ¢¦§¥£¥¦¨ª®¯ª«­®°²²µ·µ¸¹»½¼¿Á¿ÁÂÃÄÅÅÈÇÆÉËËÊÊÎÎÎÏÏÏÏÐÐÑÑÒÒÒÒÓÓÓÔÕÊ©plnu¦¯¶½ÀÃÄÆÅÅÃÂÁÁÀÀÀ¾¿¾¾¿ÀÁÃÅÉËÊËÌÌËÌ²KIKKNNIIIKLMKKMIFDE@@;53302-'+5BQdw}¦¦¨©ª¬­®««®°®­®¯³³³²°­©¥wm`YMEGKMNPRW_ue_acem~^B;28KN<=7.+63((1)'9YcP<HfXHRWTiª´t[KFH^vkoxolknmlf][Zczw¡¦lv ¢§rgN?4,*+..01654<DJYC61,(&'-8SRI@83/=4243366475336<;BHC65;739=0+19;7:P[_hnnhadmriVB2'.EV^bjouy{}} ¡ ££££ £¤¥¨ª¨§ª«¯¯®°³¶¶·¸º»¹¼¿¾¿ÁÃÁÃÄÇÅÅÇÇÉÊÊËÍÎÎÎÍÎÐÐÑÑÑÑÑÓÔÓÔÕÔÒÊ¤x¨²¹¾ÂÄÄÆÅÃÄÂÁÁÂÁÁÀ¿¾¿ÀÁÅÅÆÊÌÌÌËËÌËÊ~MKLLFIKLONNKNLIGDCBB@86500.(%.;J]nx¡¤¥¨««­­¬ª¬¬«®¯°°°±²±¯¬¨¢zqh_UJFFMPSSS]{za^^aepjQ<47OF8><3.93)&.+'6Tg]::OXUPVS^µ{uaRN`ztqsy}|zvvtrnjklszx¨¢¢¬¢§©§µ¯x`A05.*)-/9=7;ELI94+-(+-5GYL?>61374057:852//845:>CD95;717=7,.5747BTamplcbksvsdP9,,9TV]emsxxz|  ¢£¦¢¡¢¥§ª¥§§©®°®®±³³µ·ºººº¾¼¾¿ÀÀÃÄÃÂÂÄÆÈÉÉÉÊÌÌÍÌÍÎÐÐÐÑÒÐÏÔÓÓÓÓÓÏ¶¤­¶»¿ÃÄÄÅÆÆÃÁÂÁÃÁÀÀÀÂÀ¿ÂÅÅÇÊËÎÍËËÌÊÊ»JLKLKJKJLMQKHGGFIHCC?<862/,,(*5GVhs}¢¦§¨©¬«¬««ª«­¯°¯°±²³¯­©¤vmaUOHEGMLQR^}w`[\ciuuZ@36HG;DLA:>5)'--(-FaaC/7<QRVYc¸zs`\wzp{~z{}|~vmmrxqq|}{slej¨±²­ ¢¤|dN7,)./7738BHN;3/,,,+2<TTG@8249638:;83-+-2125;?A:6769735+,/445DVcnpg``q|ysk\F,+2MT\clnz{|~ ¡ £¥¦¤¥§¨ª¦¦¨©ª¯®®¯²²³µ¸¸¹º¼½¼¼¾¾ÀÂÃÄÃÃÆÇÈÉÉÉÌÍÌÌÍÎÐÐÏÐÒÐÍÑÒÓÒÒÑ´¨°·½ÀÄÆÅÄÅÂÂÂÂÂÃÃÁÁÁÁÀÀÄÇÇÉÊËÌÍÌÌÉÊÉÊPQLHJMMLMMNIGGGIGBA>>7553.-*(2ES^ly¡¥¨§««¨©¨§ªª¬­®°±²²´°¯ª§£}sg[RHDFJLOP^~saZZ`g}|eL93EF:EVZB<2&%*-++=^lM3227ALS]­¥hq{xlam|pt{}oiwswyXGNI?:Nb~¦ §ª¢`A-,/4635=EI?23,01.03=ZN@943596;64230-,23458;CA;138764.--467CWblmcadqzxwqfT;-0CV]^fmu|~ ¡¡¡£¤¢¥¦§ª§¦ª¬«­­®®±³´¶¸¹º¼º¼¼¼½¼½¿ÂÄÄÆÆÇÇÈÊÈËÌÌÍÍÍÍÏÎÐÐÑÑÏÐÓÓ·ª³»¾ÂÆÇÅÃÃÄÄÅÂÁÂÁÀÂÃÂÂÂÆÈÊËÍÌÌÍÌËÊÊÉÉÅ\PKKMLLJHHIHEGIGLGC>;9896..+)/>KYhv¢£¦§¨©©ª¨¨¨ª¬¬­°±³´´³¯¬¨¦ xocVKDEGHKOa~r\X]]jnVF<@C>Bb{MB2'+1-/.=ZjZ?4-(-6<Ju¤¹o^jjvrgjntwtvmrvz~x^B@?;-6@Lswt\Ms£¢tP;55535<EJ?7642-,/-2JRG=397?;66107++,24406BKNH513611135597?S^ff`eltyyxuo_L.-BQY\ahpy ¡¢¡¢¢¡¢¦¦§§¨©ª¬®­°°°±´¹µ¸¹º»¼¼º¼¼»¾ÀÁÃÄÇÇÅÈÉÉËÉÌÍÍÌËÍÎÏÒÒÑÏÏ¼ ¡ª´¼¿ÃÅÅÅÃÃÄÄÄÂÁÁÀÀÂÃÃÂÄÇÈËÌÌÌÌÍËÊÊÉÇÇÉPPNNKMLIHKJFGKJIIG@:>:785,+++7GWft¢¥¥§§¨©©¨©®¬¯¯²²³µ³²¯­«©¤}vj^PIFHHKQ_mZVW[i}qaUGAD:;dlH7/140-.8Um\@30-,**2e­¥{zcnrtvuyz{|yus{|mu yiZ]SK@6<Sq|xeG@Kbt|}Y73.58=?=?:4/-+)).;TIC;:;<C12.051-+.01.3=ENV;3040.6C93:7=NY]bairx||wuugR;01KY[\dks|~¡¡ ¢  ¢¤§¨¨ª¨«®°°°°°³·µµ¶¸¸¶ºº»¹º¹½ÀÁÃÆÅÄÆÌÅÈÇÈËÍÌËËÍÎÏÐÑÀ¥£¯¸¼¿ÂÅÅÄÃÂÃÄÄÂÂÂÁÁÂÂÂÃÆÇÉÌÍÍÌËÍÌÊÈÈÉÉÉÊbJNMLNOJHJLJKLPKEDA>>=?<=43005BTcr{¢¤¤§¨¦©©¬ª¬¬®¯®±²³³²±±­«¥¢}piXKGIHHObl[UU[izvc_VF@=:ZvQ=/+04.*0PcR?:935/)4Pu²qoc]lnnnhnq{{}xzpZn}{~uiUF@Oj{`HDILV_¬fJ8445?>;50++,)-.3GQGB<<9=710/3620-*,/376DOC4/0.175/2::8MXYahmuv~zvvmXD2-CU[Zcirz||} ¡  ¡¢¥§§©©¨¬®°°°°±´´µ³´´³¶¸»¹»¹¼½¿ÃÄÅÃÄÇÆÈÈÉÉËËËËÌÍÏÃ«¤°¸½¿ÂÄÄÄÃÂÂÂÂÁÃÂÂÂÁÁÄÆÉÊËÌÍÎÎÍÌÌÉÈÈÊÊÊËMOPMRPLLKKJNLJIEC@CF@@>=;7505@N^ly ¢¢§¨¦§¨¨ªª«¬­­°±³·µ³´°¬¨¥¡xlaQLGDHQhiVSUYgzvtjb[?GLAYS4($/4,")Be]E@>=<40;>MshddUXUSGEGOX_glnnolwwjbhlt^hnhn¡yjjyo^Uctv´¢jXTJFP]`eY?549>;63.*-.+.6<\NB>;;9B324640**+32213=JD8/.-/25,-578EVTanqux{{zxyraH4.2RZ[djrz{~}¡¡¡£¦¤¥¨§©ª­­®°¯°°²²±±²´·º¹º¹¹º½ÀÀÂÃÄÄÆÇÈÊÉÉÊÉÊËÆ­§²º¾ÀÂÃÄÁÁÂÂÁÁÀÃÂÁÂÁÂÄÆÈËÍÎÏÏÏÏÎÍËÊÉÉÉÊËÎnOQRORJINPMMNIHHGHGDB?<;:9869@NZiv¢¢¢¥¦§¦§§¨ªª««­°±±µ´²³±¯¬§£|oeVNIECTvdUPSZfvrtlf]GFOOMe@+-21.(%:W^N95@D966-7K¡v_deO9><:7=GSZZjng^kzkZXYeutloeSNYnwd]XUID\¹®xWDXL79JdwcktM10<864/**03337JVC=956<;64452-++,33.6:BC=42,*.0/1:84?MTcptw}{~zzytiR;1.CT\dikxz ¡ ¢¢£¦§¨¦ª«¬¯®­¬°²²´´µµ¶·»º¼»»½¿ÀÂÃÃÅÅÅÈÇÇÉÉÇ²¡«´¹¿ÀÁÂÂÂÁÁÀÀÁÂÃÂÂÂÃÃÅÇÈÊÍÐÑÑÏÎÎÍÍËÉËËÊËÍ«PPPOPMLNNOJNLJIHFABC@@>B=89<ALWer} £¥§¨¦¨©«¬«©ª¬¬®¯²³²±³³°«¦£uj]SFBDW~_TQSZh~qjojcZC>?DGv{K)&.22.+4O[O=4:AB;723<b\glN7468;7>Ta_^gukcyvm]OKYgwoVLRs}}~xkRHDUu°³m``O3--=CK[nq«Y<444.**.134.1;[M?:95:B201341+,0411598C@51*)*-,0798>KWgsuy|{|yxvsiXC5.5R[aeku}   ¡£¤§¥¥¦¦¨©®ª«­°²³³´³³´·¹¹»½º½¾ÀÂÂÂÅÃÂÄÅÇÈ´¢«µº¾ÁÂÁÀÁÁÁÀÀÁÃÃÁÂÂÃÄÇÈÉËÎÐÐÐÑÏÍÌÎÌËÍÌËÍÎÍxPRPNOMMNONNKKJHIIDA@A<BAD@@BFRcny¡¢¤¦¥§¨©ª©©ª«¯®­¯°²³²²°®ª¥~zqdXJEETx^POVXk}ofhjaW@885:i_5')02,%-ATZH35:@?;99;Csp`i[A71=@AAHZeYZjrrrwnVBK^y]WUfqlju|o[S\rzq¢eE<.)-26V`m¥a962013,,.1*+4HX?;?69@>10-3/--.128566BF93,++--06<<>LZitxu}{|yxxwrgG903FXcido| ¢¥¦¢¥¨ª§¨©©©ª°±³³´³±²¶·¹º¹¹¼½ÀÁÀÁÂÂÁÁÄ¸¡¤®¸¼ÀÁÃÁÀÀÁÀÁÁÂÂÀÁÂÂÃÄÈÉËÌÏÑÑÑÑÑÏÍÌÍÍÍÍÍÎÎÍµSQNLMPONOOJIMLGKLECAA@>BD?EEIQ]ix| ¡¢¥¥¦¨©¨§¨©«­¬­­®±µ²²°®­¨¡vk`TLG_lWKMQVc{nhjkk`C3<47\yC---*($)9Q_O9-/4=>>@DL\zSccU=139FKIMQNKXbv}xfBC\zs_TTTdb_bis~wfcfpspfnJ4..+6JYS£k?380+-/,*'',6RJ>==4@D5//103/,1/53.7;I<960,.-16=<BNYlwyw|~}z{|{{qV=4-BT^aely ¥¤¡¥¦¤¥¨¦¬©¬¯°°±´¶±²´·¹º¸¸½½½¿ÀÁÂÂÂ·¥§±¹½¿ÁÀÂÁÀÀÀÀÁÁÀÃÁÁÂÃÅÈÈÌÌÏÑÐÐÐÑÐÏÍÍÎÎÎÎÌÏÏÏQPQQQROOPLJPNKMKGEC@DDEDCEKMRXet|¡£¤¨©ª¨©¨©««®¯°°¯´·µ´²°¯ª¤{qeYPLffQLOPUa{xjfkpeO=537OsU8-./*#'0FYUC*),26:@INRqr`otS823@OULHDAISgvsLG]sfb^ZXVT^[cmppqljkq|z}znonQ8++5HWYj£ªrJ7/0/-&+($(0?T;CC4:D>15134/,+10--6:>B<?:3422668;NZivzz}|~{{z||xcH>5<P[gciw¢¡¢¥¦£¥¦§©©©¬¯±°¯²²²³·¸»º¹»¾½¿¿¿Áº¨¥°¹¾ÀÃÂÃÂÁÁÁÀÀÀ¿ÁÂÁÄÅÅÈËÍÎÏÐÐÐÐÐÏÏÎÎÏÏÏÏÏÏÏÏÁSSUSSQMMWRMNKHJOHGFBHFEDHDHNRVanz ¢¢§¨¨ªª¨©««­­¯°°±µ´´²²¯«©¡}rm_TVvcNJPPS`vvielrnYD198D`[@232-)'+>V[N:+*035<CLTejvqU@76DRNMH@:A^_oz|lWNctUW^gmg```edlhrqpmsyjdhla[ry]@18fXJm¤M/.)'%*,%*(.ID=884GL:40324.)21.029?B<=<8?62569ANVhwz}~|{}zy|zwiUG44OS`biw ¡£¤¤¥¥§§¬©©¬®±°®­±±´·º¹¸¹¼½¿¿»ª©°¸½ÁÄÄÄÂÁÁÁÀÀ¿¿ÀÂÂÂÅÇÉÌÎÏÐÐÐÐÏÏÑÎÎÏÏÏÏÎÍÎÎÎÎUUVUSNMTPPKOMOPJHEDDBACHJJLTV_it} ££¦¦¥ª©©««««®°°±³³´³³²±¬¨¤ yreYd}YKIMOSb~qddlvqXB55;?Yv[;52/-+((5MaX?-.04844>N[}ysYE:<GWYOB:7?GQZ^cb]e}xCGEUdlqmstrqptoquwq^NT>46_©¬¤YG]iJ@W¢¯U/$$&'(%$$)9N?=;;DKE201/1,,374204;;3513::94=>=NTfsx{||~{~|yt\M96CP_eds} ¢¢£¦¦©ª«§©¬­°°®¬¯²µ³µ¶¶·¸»¾««´¹¾ÃÅÄÃÂÂÁÀ¿½¾ÁÁÁÂÃÆÈËÌÍÎÐÏÏÐÎÎÏÎÎÎÎÏÏÎÍÎÍÍÍÉ^SVSPPMSNQLNMONLHHGC@AEHJHKRX_dnz¡¢£¤¥¨¨©§ª­­¬®¯®³³µ¶´±²²«¨¢uk`rqPGHKMQa|ibclvrY?.2:=Ogxf5760,)&)-D^]M9*)7@7/5BNkzpQB>E\aTG@666>BETpyn}wQKMSMTWdq||{xsuysO?0+)2h¥µ´¢}]gD48aÀH/&%$%% $(1EJB8;=LN<0.164144010/;8442225=0ACBLQ]owz}|z~}}{weM@-ER_efm| ¢¢£¥¦¥¨«¦§ª«¬°°«­¯±±´¶·¸¸¬¨µº¿ÃÄÃÂÂÂÁÁÀ¾ÀÁÁÁÃÅÈÉÌÍÎÎÏÏÏÐÎÍÎÎÎÎÏÏÐÑÏÏÎÎÍÍXWPOPNMNIKPKNLIFIFA@?CEDGKNS]bkv¢£¢¥§©©©«­­®°­°°±´¶´²²°­©¤xpm}gKFFIMO`ocegrqY=-148GPkc?4<4*(')+9NaS?0,38:/,)8TryfUOS`gVMI?9527;Nt~rJOZa^WU`c`csv{|~[7+""4Nv¤«½ªpM/-4gµÅO(!" "#%')9PI77?LUN/,477452,1/.5664123330=IAJP^jsy{}{y~}iQE5>RZgikx¡¢¢££¤§©§¥¥§©ª­­­¬­­­²¶¸­©µ»¾ÁÃÃÁÀÀÀÀÁ¿ÁÀÀÀÃÆÉÊËÎÎÎÎÎÏÏÏÌÍÍÎÍÍÎÏÐÐÐÏÏÏÏÍmXWSOPNPKKMMMKIGKHECCFFCCDJQZbgs~¡¤¥§¨©«©¬«¬®­®®³´³²±²°­¬¥ ~vwYGBBEMRflbcfkkZ>6448CHU_E472,+(&%-=ZZL;,//<1,&*4P~xle[TQQQJ;0,+9RftiEHTdjb]djaUMb~dA)"&+GwV;2DyÐÎ|;#"#$&#&&1GN?25J`^E355:21-/1/21173//2.32<ECIQZgpw}|z{|}~q^K31MVbhjs} ¡£¤¤¦©¦¤¥§©¬©«­¬¬®®¯¬«µ»¾ÂÃÄÃÃ¿¿ÀÁÁÁÀ¿ÀÅÇÉËÍÎÏÎÎÍÍÍÍÌÍÎÍÏÎÎÏÏÏÏÐÐÏÎÍ£SNRORLKMNMJKEJNKIICHGDA?AFKTX`nx£¤¦§¦ª«¬«§®­®±²²³³²³²±«¥¡{tOC@CGLQegabjmiZCC@8?KJHZL:62/--)$*2G]TD2,,34.,(*6\}bIILSPC4)-;VXjb>ES\c^_irwfTR`x qL524CJzln´¡p@;MÊ³r*#*''$#%)BQA52>RbP91595.26/.423530/2056;CFIMVblv|zz~zcR=4CV]diq|¡¢¥¥¤¦£ ¢¦¨¨§©ª«¬®ª{¬·¾¿ÃÃÄÃÁÀÁ¿¿À¾ÀÁÂÄÈËÍÏÏÏÐÏÎÍÌËÊÍÏÍÎÎÎÏÏÏÐÐÎÎÎÏÍmOQPKOMMNNJHJNRKJJFGGE<=<@EMT^ho| ¤¦§©¬©ª¬¬¯°¯²±±²²³´³²«©¥}kO?@CHKMag\bimfQJIF;FTUPSZ<8;841/(/+;MOG<0&-441,%$4ysb[UMIA6+.;P[pcLX__aedemrsmb`twhTW]`nsVD\¦»«\E_·ÒªZ)'*(&"$&8IGE/7CVR?/177/9=5/./494.121425DGHNT^ku{~||~zhQD3:M[chqz¢¢£¥¥¤¢¢¢¢¤¦§§¨¨ª©|®µ½¿ÂÃÂÂÂÁ¿¿ÀÀ¿ÁÁÃÄÇÊÌÐÐÐÑÐÏÍËÊÍÍËÌÏÏÏÐÑÐÏÎÏÎÎÏÍ¬OMSQOMLPNNHNOPNMKHFFB<9<>DMS]bku}£§¨©ª«¬¬ª¯¯°²³³±³´¶´³¯«¨¤ eQCDEFIK[n__ch\TUOE@H[hYW\H96>7690-04>QFC6,,.649)+*Eu{}xbVE7*@Sf{OF_mvsrlhorqrmp}{ynZjzY;4X}ªº[RÆÍ@'#&(# #*HKN>4=KQJ415724@A6117>82521114BIFIR_ksz}z~|}}pVE49KX`dkw¡ £¤¤¢¡£¥¤£§¨©¨¢  ­¶¼ÀÂÃÂÂÂÁ¿¿¿ÁÀÁÁÂÃÇÊÍÐÐÐÑÏÎÎËÊÌÌÌÍÎÏÏÐÑÑÐÏÐÏÎÍÍÒyNQTNJIOMJGHMOONKIGEC?:<@CGOV[bnvy £¥©©«­¬­¯®°²²±±´µ³²´°­«¦£ ¡yfUHFBBBFUss`^_c\Y]TF@FXa]^^T?189;;2.0.5JIA?0((3321'&1U}vrun\RbsO;FZhu|~wtwxwxu{rjwjOSwlB+16`}gT³ÔÄz:()# #&8QSQ*7GMJ?24:24=B>575=:7301121@GIOW]kr{|z|}yr_H57JX`epx~ ¡ ¢£¢£¢¦¥¤£¥¨¥¡ ¢¡¯¶½ÁÃÃÂÃÂÀ¿¿ÀÁÁÁÂÂÃÈËÎÐÐÏÐÎÍÍÌËËÍÌËÎÎÎÏÐÐÑÑÑÎÎÍÎÎ·NMQOPONOKILOPQLDHIFB?<::?DJOT[eqw~¢¢£§¨ª­¬«±²±±°°²µµµ·´³°ª§¦¥®«° yhZMJDCBFMch^Ya_Y]TIEFS]ZZaaJ20:<<984/4GHBB8-(-2-2+*+=iyvznmryy~j]sc=<:FIZkuxux}}}dgjUrG*%'->Z~qÂÒ­A& "#%'(5RUQ92AJC>768636?;5114<90/0,-1<GIPZ\enwzw}}}}ybL:8EV_box ¡¢¦¥¦¦¤¢¤¢  ¡¡ ¡¡¡ £­¶½ÁÃÆÂÂÁÁ¿ÀÁÁÁÁÂÅÇÊÍÏÑÏÎÎÎÍÍÌÌËËËËÎÏÏÏÐÏÑÒÒÐÏÌÍÏÐMOSPQKGHKQOPKLIIIG@@=<>@CINMT]iu}¢¤¤§¬¬®®®±²³¯¯°¯µ¶µ¶´³±­ª§¨©«§zm`UMC@?BJVqwi^df`WKDMEPOGPeuR51757@C?51ADA=?1(+/.--&&,Wzy}uilnrt|vmf_]QJT{gEEHEC>GTcksvv{|~tkq}xQ+%##(8_¦­Ì¿t,#%()*+1CUOJ5?HB;??;<308<70.3;<50/0..;CENVYdkuzz}}}~~ykS;.?Q]`kw ¢¢¥¦¥¡ ¡¡¡¢¤¡ ­¸½ÁÂÃÃÂÁÀ¿ÁÁÂÁÀÂÄÊÊÍÏÑÐÏÏÍÍÌÌËÌÌÍÎÏÐÑÐÑÑÑÒÑÏÎÍÎÏÐÄPKMOOJIJPQPONMLIIJBBAA>AELNPT\alx¡¥¤§«®®®®°°¯¯°±³µ´µ¶³²¯®­«¦¥ zsjZRF@>BHO_wljkmZJFKIJD6CayiF0-58;BEA>AN>8871+/0+.,*.Jt}~~ykZVYmlSAFCO^KOryDAORNJIGKSdqmmoqtx £}Z:(#!6Ix¤¬§½Ì¡9#!$'&%)3NPM@5@E9=@@91/4::3/3<;70/0019DHOUYcksy{{|~|vpZ@0:R_Yjx¡  ¡¤£¡ ¡¡¢¡¢¢¢¡¡¡ ¡­¸¾ÀÂÂÄÁÁÀÀÀÁÂÁÀÃÆÉËÌÏÏÏÏÏÍÍÍÍÌÎÎÍÎÏÏÐÑÐÐÑÑÐÏÎÎÎÏÐÒKOOPLNMKLLHHILHHGA=>E>=BGKKNV[ep}¡¢¤¨«®®­­¯°°°°³³²´´µ´±±¯­©¤zpcUMC??BFSg{}vohge\HEDMB57R{u\D205;=>>>?H>31:2*,-+,20,=_rw}~|n`Z\SA6@HVcVV|vJ@GKOUWSNLV\^X^eju{£­£pS7.(#.@S|Á¯´Ä¬d)&!!$%0IULF39?86H@B5.2:=670@:62//529DGPVY_jrvy{x|~~}}|wn\E4:O\^hu¡¡¡¡¤¢¢  £ ¡¢¢¡£¯¸¼ÁÂÃÃÂÁÁÁ¿ÁÂÁÁÄÆÉËÍÏÏÏÏÏÍÍÌÍÎÏÎÎÏÐÐÐÑÑÐÐÑÐÎÎÎÍÎÑÑÐ\LLRRLFGNKJFHLLIC@A@A?=BEDFKRXal|¡¢§«®­®®®¯²±±²³³µ³´¶·µ±¬¨¨£~un\SGA?BBIThtzxoebjaK9=LE4/Eowg[C/08>@A9;H<0031-*+2.//03@O[bmv}tqjf\YZ[\e^lW@9IOPV]`^VUVXUTX\iu~£©¬¤~hXG4%*:<Y¸·¸ºu4'($"&$ALI@81;<3?:<<816@7315685/0549FDMVZ_gmrw|v||}|{}yq[E38IX\hw¡  ¡ ¡   £¢¡    ¢¯¸¼ÀÂÃÂÃÂÁÀ¿¿ÂÁÁÄÆÉËÌÏÏÎÎÎÍÌÍÍÎÐÐÏÐÐÐÑÑÓÑÐÑÒÎÍÏÏÐÑÐÒOQOLHEFHJHEFIIGDDDE<>=BEDFGRUZfs}¢¥©ª®°¯®¯°±¯­¯³²´´´µµ´¯¬©¥{sgZNG?FEFMWcorme_gfM78FC84:V|_`K923:@?7?G=1-473+,.005006AIGIOd|xx{|xrkctnC<:@?EP`bfea]VXRTSZh|xuy¦¬yWIG@:A?3;lµº¹°}A2G*!#"(1FJ=608>=5:9?@<;893/.2770-429GGOUZbihotz{z{}}{{{taH21EVZbs¢  ¡¡¢£¢£¡ ¢¡¢¡¢   ¢­¹¾ÁÃÄÂÂÁÂÁ¿ÂÂÁÁÄÆÊËÍÎÏÍÍÏÏÍÍÍÎÐÑÑÑÑÒÑÑÑÑÑÏÐÏÎÏÐÐÑÑÒÔhQNNHDEGJFFDCBCEGDA=???ABEINMU]ht£¥§©¬¯­¯¯±²²¯±´³µ´³¶¶³°¯«§ {o_VJC>BCJNWchlg]fhQ@;:96+0Lk`QTF<6;=85>FB:06==0-*3363129E832;Vrsj{`NF::9;?JVahqk^`c\SRSp}unn{xr²qF3,3?VN2/N¸º²xDTsZ+"%&'?JC813=>16;=CNK892-23563*.-8CHPTUajjmsvy~}|{{yzvcG73>QYao ¡   ¢¢£¤£¤¤££ ¡¡ ¡ ¡¢®¸½ÂÃÄÂÃÂÁÁÀÂÁÃÃÄÇÊÌÍÍÎÍÍÍÍÍÍÎÏÎÑÒÓÓÑÑÐÏÑÑÎÏÏÏÐÐÑÑÔÓÒ¦MLLIHFHJIHEABFDBC@?A???ADJMLSXbq~ ¢¥¦ª¬­®¯¯°³±²´³´³³³¶´³°«§¡vi\RKFDAEMT[`nk`[XJ@769730?fWBJKD>:;<8;CB63:GL;309</9536:6(%$3AWjq~liolmroHLF<989;=CGTakskdb\XR_x~onlpy}nj¢{^5#%+C@009T¨¶­Mi¢O+#&*6GJ8/3>E61?;IWM>;473<8:5,.28AIPSX`kimsvy{}}z{zzsdL;38KX_m~¡¡ ¡¡¤¢¡¤¢¢¡¡ ¡£¯·ºÂÄÄÃÃÂÃÂÁÂÁÁÁÄÆÉËÍÍÍÌÌÍÌÍÍÎÏÎÐÑÒÔÑÑÑÐÐÒÏÐÐÏÑÑÑÑÑÐÒÓnJIKFFGHFCDFDDCFFC@?A?>>?FIKPXany¤£¤¨­­­­¯²²±²±²µ³±²µ´²²®¬¥¡zqd[SIC?ELRV^hhbbYA64573?<B]\F?A@@@A=79DA224DURD39:48@=:>H2$%.5<HUh_KBELiy}]?>CGE<?@?@@GNWhqsnkaXXqwsc^l{pl[9$$03**.Az¶¨Dv²µ5&-)3FJ:02<H81:AOY:<D8535616--,3?KNPVZgmpuwxy~{zz{xkN;38LW\l}uw}¡  ¢  ¡£¢  ¢£   ®¶»ÁÅÄÃÂÂÂÂÃÂÁ¿ÂÄÇÉÊËÌÍÌËËËÍÎÏÐÎÐÑÑÓÒÑÑÑÑÕÒÐÏÐÐÒÓÔÒÒÓÒ®FIMGGGGFHACEDCEFB@AB=9;=DHJPYbjs| ¡¤¨©­®®±³±±²³´³³µ³µ·³¯¬©¦¢vkaXLD@EKRQWacdpf>42220:DN`cK?:78=DC?;H@4375Nf^LB<<>GB;CQD%# #&09ITXA79FeqS99:BJMFGFGJKHGN]jrui_Zd{{]Sd|{p}a4+**)'*4a©¤ez²¼8*3:1;K>406<;/7TcT78C>3373..+*,27BLSUZcmruwwyz{||wmT=06LV^kx~kqtvx  ¡ ¡  ¡  ¡£¡ ¢¢  ¡®·¾ÃÅÄÃÂÂÂÁÂÂÂÀÃÆÈËËËÍÍÍÌÌÍÎÎÏÎÎÐÑÓÓÓÒÒÐÐÒÑÑÑÒÐÐÑÓÔÒÒÓÔzJIIHGFEFECDAFGCCCCC?9<>DILOT\enx ¤§©­«®±²²²²³³²°´µµ¶³°­«¨¤¡{odYQHA?EMOU\edwhA41.,-0@JWYOH=215>B??LD7798?SmgQHA:CD>>^J+#$'$)5V\WF;=HedE99=>ATOLMKIQJ@EKQXjpg_\oznXXs {eP/(/--8_ª¥]1(@G.7EA510;FAQjgSBBLB;94-/-+,/18BLSRUajqtutz|~zyyxoT7-;LV^lxgfgnruw|¡ ¡¢  ¢¤£¡¢¢¡     ¤¯¸¿ÃÅÅÄÃÂÂÀÂÂÂÂÃÈÈËÌÍÍÍÍÍÍÍÎÎÎÏÏÐÐÒÑÐÐÑÐÏÑÑÑÑÒÓÒÑÓÔÓÒÒÓºGHFHGGEAH?BEIFEFBEA?>==CINOSX`mw~ ¦¨ª¬®°±³²°±²±³¶´¹µ´²±¬©¤vl`UJC?CIPPW`bqfE:57-*+3;IQOXI:8:?@=GPE68879?dnc\K<IJEG_]9+,+''8]kT<:<Dbm7.3@?>JOHCFEPLBCLRBNbd__aqx^Rd}¦xqsYE:=EJj¢¬ mX7(*NK.1AK;9:Ngov|olgbfXA?6.1,,+13<ENTV\dkppstwxx~}{{xkQ0*8KU^kxvjfffkqtvx   ¡¤¢   ¡¤ ¡   ¡ £®·¾ÃÆÆÅÃÁÁÁÃÀÀÂÄÆÉÌÌÍÍÍÎÎÎÎÎÏÎÎÏÏÏÑÐÑÑÑÑÑÒÒÑÐÑÓÑÒÓÓÓÒÒÓÓIHGBDA>B@BD@B?DCC@<<<==CLUWZWfpw~ £§©©¯±±³³±²²±³³³´´¶³³­ª¦£yndWOHCDFKNRX_udG;DI0.)*.;HR\PCB@=<<CHE51678:PnofYOMKHIbsN312*';itT<66A^}I3.069EIC>>FJKFFFLE?ESOY\jm`TSds¢¢it}idip¢©R;+& /UJ+2FXYU\sn]jrpylLC<42.4,.3:CLQX^glnqttvxy}}}}ynS6+3HYdivwpqohffgnqsxz}} ¡£ ¡¡¢¢  ¢¡   ­º¿ÂÅÆÄÄÃÃÁÁÁÁÃÆÈÉÌÌÍÍÎÎÏÏÏÎÎÎÍÎÏÎÑÑÑÑÑÑÑÒÒÒÑÔÔÐÒÒÑÑÒÒÓÓÆNLGB><><=AAA@?DCB@<>???@IXZ[^agpy £¤¦©­°±³³±°±²³±³³´²³²¯«¦¥¢~vm]ULE@CGLNS_seMF`n:.**,-;J\XQGE<86:=B?57576BTbjd^SKMLbrV104,-HntQ1,+8cgE3*+27;A?GKHIILFCHA>BCHM[a\WNTf~tv¡z|XXt¡x=)##%9bU8Bdwvvu¤w=AGNEPTI9A61+,.-03=FLV[fnpqtuuvz~}{zwiP6'-AVelv~sqpprkgffhmouxyz}¡ £¢¢¢¢¥¦¡¢¡  ­ºÁÁÃÆÅÄÃÃÂÀÀÂÃÅÇÊÌÍÍÎÎÎÏÏÏÎÎÎÎÏÏÐÑÑÑÒÑÑÐÑÒÒÒÑÐÑÒÒÒÑÑÒÓÓÓCD@;<?=<@>;<=BB@>>><>BBFQVT^]als{¡£§ª¯¯±²²³±°±±°±³´¶²¯­©¦¦¡|uhZMEBABFEJbzgXSs\.&(&'/=N^TIJA>98<EF123121?Tomh\MJM^pO66/)3Y|sG/('6^xaO=10/-7<BFMNR]QRPKLHKF@LTXXPKYqkz{ahP>e¦w?1-.9Kus`o`LceT>7>;:0<;8;<1+%+,/5=CKOUcknorssvyz|zvwhJ3+,9Rhlvxuurppqohggeelrrsuvz~¡¢£¢¢¢¡¢ ¢¦£¡ ¡   ª·¿ÁÃÄÃÂÂÂÀÁÂÂÄÆÈÉÌÎÎÎÎÏÏÎÏÏÍÍÎÎÎÐÑÏÐÐÐÐÐÑÒÓÔÑÏÑÑÑÒÓÔÔÓÓÓÒVHC=;;;8?=99>BDB>??><<DHNSRX\`enz¡¥«¬®±®°±°±±¯°°±±³³±°¬§£¢}p_RLC<>CCKg}w^av¢n?.)(((-@]_ZOFEA44@?5-.-407D\uvkNHL`eK?K/)9flD, $5Ppplp`TG</.1;?GS\a]]]bfhd[IANRXSOXhyqsq==b|tUq°°¥|`Xa^es}oQ>9@HC75=;3-3431:5/,,(.6<GLLTcjmquttvvv|vw{jM1()@Qakxwyywutqppqjhggcfljnrtxz¡¢¢£¢¢¤ £¦£¡  ¡  ©´½ÁÄÄÂÃÂÁÀÃÃÃÄÅÈËÍÎÎÍÍÏÎÎÏÏÍÌÍÏÏÐÐÏÏÐÐÑÑÑÒÓÓÓÑÒÒÑÒÓÓÓÔÔÒÓED;<;88:::9?BB@@?=<;:DEHNSWZ^^fqy¡©ª­°®¯°²¯³°±±²²´²´³¯ª¨¤¡|seWMC:>@BRvb`vO0-92)(3G`ZWLC5.-8>5'')/369Boz\DKXWGMO63Mp`?.$&.=QeX]ilgaYJ>599;GXldcfmrsnm[MPS[WLS_lrreQGX}z³¹¨vkPYSLB452FD54;56321124431...2;CKNT`gmpstussswvwtjG-&,=R^kw|zxwyxvurqqmlghkefgghmmpux}¡¢¢¡¢£¡¡¢¢¡¡    ¦²¼ÀÃÄÄÄÃÃÁÃÃÅÅÆÇËÎÐÐÐÎÎÎÎÏÎÎÍÎÐÏÐÏÏÐÏÐÑÑÑÒÓÓÓÓÒÒÐÑÓÓÔÔÒÒÑÓ_E?=;:98<=??>?DEA=;;9:AHNUWY\^_hq}£¨«®¯±¯±¯°¯®¯±±²²²²±ª¨¥¤zn^SHA;8BYµe\UW>941%(+:PY\TJ;,*8J?# $-+.3:Zb@DOJDKM7HeriM:0**-5::BHWlhZY][ZNC<=FXcgiqpnokeVOQZVPMZi|}nly±¶¢£¯«sxwJ1,3FB>50-;G;9=5521420/*.0-,019AHNU_jpoqutttswuvrdG-%/>U`mzy{{ywyywusrqonklljhgggjhjovyx}¡¡¡¤¢¢   ¡¢  ¡¡¦±»ÀÂÅÅÄÄÃÃÃÃÄÅÆÈËÍÏÐÐÏÎÍÎÏÎÍÍÍÎÎÎÐÐÐÎÏÑÑÑÒÔÔÓÓÓÓÒÒÔÒÓÔÓÓÒÓ¤B?<79<<:>;8<>@?>=?;78;@JSRW\Z[`ju ©©¬®­¯°°°¯¯¯°°°¯³´²®¬©¤¡sfVND75Dn ÂRIHuuF4*,&*(,<N`XQI?69RQ' #&'09X^ACBF@@DK`mcK>6263--,'18GY^QPNVdc\ZQOKV^kskkl`]VKKPSG<SbqbBKY1"-=CC;3-2A?>A84.140/.-/-/-105AFMT`kprsusuvtvvvsb>($+>Ran}zz{zxwywtsqpronohkljihgdfiortz|£¡¢ ¢¡¡¡ ¥  ¦°¹½ÁÄÄÅÅÃÄÄÃÂÆÈÈËÌÎÏÐÏÍÍÍÏÍÌÍÎÎÎÎÑÐÏÎÎÐÐÑÒÔÔÒÒÔÓÓÒÔÒÔÔÔÔÓÔÔd75677749<=<:<@A@B?;67=CNPUX_fZfnx¢¥«­¬®¯±²¯¯±±°°±±°²°¯©¥£ zn^SD7=O¶»rG<BbnI-(**$!)1@LPSQTKK_^8"$#*5`SALD<:=H]hW?456=E60'&&)0:P[QH@@JWbf^XTRNRwqli^X\VNFNI=?O\xwojV?9(=M-  *?GC><2,=C6F;601543+,1.14-15CELT_jptwxwvsuywurY<(%,;Pco}~~}y{{yyzyutuqqnnnlllhmjgdfhknpvw}¡¡¡  ¡¡¡¡ ¦°·½ÀÅÄÄÄÃÃÄÄÁÆÈÊËÌÍÏÐÏÏÎÏÎÍÍÍÍÍÎÏÐÐÏÍÎÑÏÑÒÔÔÓÒÔÔÓÒÓÒÔÔÕÓÔÕÖ¬797:569:;:<;<?B=@?>57:@GNSW\ZV]is| ¢©­¬¬¯±²®¯°¯°²¯°´³²¯¬©¦ }sf[E9BcÊ®WLC?FelJ0'&((&$'00=HKSY`jsJ'!" (CqmLIRS;8FZTH<2,0.9JSG5*%++,<R_LB<9DT`\[[_SL]imleXX]^UTQH6=Hjl\q~w{jV10'**;K) !*<A;55/%6<;@=5101/1-*().66:>DGMQ[mssvxzwtx{xvp\<+%-=Qcu~}}~}zzzyz{|xtsqqprnlmmlnmjighgilpsx~ ¢¤¡¢    £¬µ¼¾ÃÅÄÄÃÄÄÃÃÄÈËÌÌÎÏÐÏÏÐÏÏÌÍÍÍÎÎÎÏÐÏÎÎÎÐÑÑÓÔÓÓÓÔÓÓÓÒÔÔÔÔÔÕÕÔo:8666;:98:;=@A:==9657?EPSX[VTU_kw~¢§¬¬¯¯¬®­®±°°°°±³³´°°­©¥¡yj]MAJv²ÖX]XD;V{T1&),)$#"),069BQ[o|c9#!&6_}\GPKI>AFB></,,+*/Ci^F0)*)(*9_]L?79CNIJR]a\VX`gkh_]aUQNE<8CYwE?LampfUPLU]G*%,*7H.'*/<B=3/.+2A7<70//24.*'**,27>ACFMU_jmsrwywuwxxwpV8*'.@Wdt}}|~~~}zx{yvwwwuspqsonooplljhihfgemqsv|     ¢¡ ¡  ªµ¼¾ÃÄÄÃÃÄÃÃÅÄÈÊËÍÎÐÑÏÏÏÌÍÍÍÍÍÎÎÍÏÐÏÍÎÎÑÒÒÓÔÓÔÔÖÔÓÔÔÓÒÔÔÔÕÕÓ¹9688789:8:<>><<@?:766;AHR]^YWV\frz¢¦©«¯¯®¯®®°¯®°¯¯²²³¯°°¬¥¦yl_SI[ÄÉ|JoSA7Ud0))('*(&(---,1=KW}rH/,.D]wvQC??6529675+&))*+4PbcN82+((3E_UD813?H?;KVb_]\[qvqf^OGB:;<GUs{^RURSS8-))8Ss9'('4C0%&-8=;:67/0<74122.12.+))++16?DDINT\jpuwvwvuvuuskQ3)*/BWfu}}~~}~~}|{zywzyvvwvrpqqolnqmmlkkjhgfimpsu| £ ¡ ¥´»¿ÂÄÅÄÃÃÄÃÄÅÇÊÌÍÎÐÐÐÏÎÍÍÎÎÎÎÏÏÎÎÐÏÎÏÏÑÓÓÓÖÕÔÔÕÕÓÔÔÔÔÔÕÔÔÔÓÓx255:>98;=:;8?=8977766:DOY]\ZZ]gpw~¡¦ª¬¯®¯¯°°®®´°°±±²³²­¬©¥ |rcXVl¡Ñ·\JQC33U{B,$%&-'((*,*)+5DGgn_RUck||aD=9943:<9681&'(**+6QnhVF8/(',IVVE:,1IJ?<CWege\eprofP?57:ETZandjaT>' #"(;`a=%((;,'*/BB;:560/4;6352/02-(+(',.4<HHKOT]iqvvstvutwwtkJ/)).ATiv~}|~~~|{{}|z|wtuwwtsqllppwlnjnmgffeejnoot|¡¡¡£°¹¿ÁÄÄÄÃÂÂÅÅÆÈÊËÍÎÐÐÐÐÎÎÎÎÏÎÎÏÏÎÎÏÐÎÎÏÑÒÒÒÕÕÒÔÔÕÔÔÓÓÕÔÖÔÔÔÔÓÅ;758::69=9:88;;9766447BOY__^^agnt¢¦«¯¯±¯¯®­¯±±±±³²°°®«¨¤¡uj`bµÕLDQC64`G)!*,)'&%'/('1=NZezsv{|{wZJ@A;87>?B@;63.%&.*'+:Ufh]LH=748BdYI51?TVD8DWcbV`mwwshQ:2AH`a]tysfhlL.##"(/=u\5(,3.%%%1<><82/(3<7:70*)0-'%&+2009AHNOS\hnstqstvsvxudF.*(.AThw~~}~~|{{}}zyrvxxutuqkrrxwpnlpijhefhkmmpw ¢¬µ½ÀÃÄÃÂÅÃÄÄÅÇÉÌÎÐÐÐÐÏÎÏÍÍÎÏÐÐÐÎÎÎÎÎÎÏÑÑÒÑÓÔÔÔÔÖÕÔÔÓÔÔÕÔÕÒÔÓÒ8886857678638:8764466>LX^`cc_elqz~£¤©¯°±®­¯°°°°¯°³²°²°­©¤ {pgpÄÍBDQM<:_£H,&'(%('%*.(*;bkuz~ld^UG?A@8=<@GGA79;;0)(('#'7HUX__]TYLI[dWE5-ATXK=?RdLSev}|iK;=JZiepzf[bdZG/$')3Uk`)+4+%$%,97:6,+)3=5442,)*,&%%)..047FPNS]fmtsrrsvwzxudB/*)1IXlx}}~~~~~}}}{{yxywwyyutuupprtvnnloljljhfhlpsw~~ª³ºÀÂÃÃÃÄÄÂÃÄÆÈËÍÐÒÐÑÐÏÎÍÍÏÏÐÐÐÏÎÎÎÍÏÏÐÑÒÒÓÕÔÓÔÔÕÕÖÕÔÔÔÔÔÓÓÓÑÎH4687443:9979797:3765;L^accfcdhky¢¤¨ª­¯®­¯®®®°¯±±°±²²°¬© ~tq{«Í¨\<EWJ;>jL.)&&'')'*,(&5Rjq|th[LC=ILEE@956AQ[PB8=EG>.')'%#$0:;@PY]dab\YSC2-2:V[D:E[WDMfxzfXW\eqwwzq|{eXautY>-).3^mD38<>'!)-0470.+0>;411.-,*&'$(+377<CKPQ]elqqrstuu{xq^@/)+8O^o|~~~}}}~}}||{xx|zwutvuqqstolmljiljhiimuuxyz¨´ºÀÃÄÃÀÀÂÂÄÆÇÊÌÎÎÏÑÑÐÏÎÍÎÎÏÐÐÏÏÏÎÏÎÐÑÑÑÔÓÓÔÔÓÔÖÕÖØÕÔÔÔÓÓÓÓÓÑÐ45753768755789773/136Jbeeifeegjr{£¨©ª­¯¯®¬­­¯°°°²²´³²®ª¤¡|z¹ÈF:KPGGFuwI0&%*&).***)'+/8JPQ@3))1CRRI>713CWc_S;8LQK>0'$'""',,)1?EPRQLB=>1673CLLE=N[G<FWo||pmqwy|}u{yzxlo|pP8./C^`09`yO$'2/8:2-(*8;100021)-*%'(0999@QUU\ehorrsuutsuqS2+48KSdp{~|~~}~~}}z|~}{~||}{yxyturqpqtrpmkknjiikjmorqvx~¥°¹¿ÁÅÃÃÃÂÄÄÄÇÉÌÎÐÐÑÐÐÐÐÎÎÏÏÐÑÏÐÐÐÎÎÐÒÒÑÓÔÔÓÓÒÔÕÕÕÖÕÔÔÓÒÓÓÑÑÑÏÏT:8427674448<662/.//4BVdgigfecgox ¦©ª¬®­¬ª¬®¬°±°¯°²±®­­¦¤Á´nH>=GJYTo@,%'*(***'(!"$&+3=D<($&/?VXE:1-0<Qgdb@.<RS?9(%('##'.$#19;8;3,/4370009KJ==C@53@_spmosw||u}mftlP?6T]IGxp'&/1690*%(03/004.)))(&).)08:?LWX\gknsssvvvxvjF-')1HWfpx|z}}~~~~}{~~}|{xz{wxztqsurqqpqompqokiiimlrtx|¢¬·½ÀÂÃÂÂÂÄÄÆÈÊËÎÐÐÐÏÏÏÏÏÎÏÐÑÑÐÑÐÑÏÎÐÒÒÒÓÓÓÒÓÔÔÕÕÕÕÔÔÓÒÒÒÒÑÐÏÎÍ::6124431328101/00-3?P^fgedgacksy¡§¨«­­««­­«¯®®®­±¯¬®®ª¦¡«¾^F?>@Ncg¨`9.+*((*-(%&!"#&0;GD0(+*6LH=6.)*2OgicI+)=NC=9,%*'#&.1&+6789.&%*2700-1:EB??8=<Bixm]Zbjnx~uyj[Yco~o]YjqJ¥q3(00180)&(.2,+-1+*.(*+**,27;<HUX\ejpsrptxyurf9)#'6M[gsz|z~~~~~~|~yz||zuzzwuuvwvpopnllllkhhhkkorww|ªµ»¿ÂÄÃÃÂÂÄÆÇËÌÏÐÑÑÐÏÏÏÏÏÏÑÑÑÐÑÑÐÐÐÑÑÑÒÒÓÓÓÔÔÔÔÕÔÓÓÔÒÔÒÒÑÐÎÍÌÍÍc93/01011015222000.-9M[ddffdb`flr} ¥©©®­¬¬«««¬®­®®®¯¯°®¬¨¢Á¾^LCAEOvk¢²s4-/((*('%%&&(%(+0@OO:3/*-:563,')2J`ojP8,1>H<E=-&$$&+=0(+5>@6*&'-23,,/,9CD=;=;<U]ULABJ[q|vozqohjruyls|q¨.+-.275-,*/10.-/)-/++-/*+25=DHQXahlorssru|xpZ7%"(6S`itz|y~|}~~{~~{}||zyu~xysprrpnmkljhhgijqprux¨²¸½ÁÄÅÂÁÂÃÆÈËÍÏÑÑÑÏÏÐÏÏÏÏÐÑÐÐÑÑÒÐÏÐÑÒÒÒÒÒÓÔÔÔÔÕÔÔÓÔÒÑÑÐÏÎÍÍÌÌÍ§3121.04461.13231///6HXbddggidcfpz}£¦§«¬­«ª­««®®­«¬­­®®«©¤­Ç±cUNDFWpsÉ9),'(,)*(%%*,((/3?FJB>4002-00+*)-EZmsaH+'0FJIF7(""'-56,%4;A?41,)4:1/0*+?RD97:9868:86=J[t~^_v}nlhhilkuvu}~§}9#,21@:+,-,22+/-..,+(+*)+/4<ADPW^ejoqvttuwxnJ*$!/DTcirx{z}~}~}}|~||}}{|zxzwtrqomlmkkikhkkmnrw{~}£«´½ÁÂÃÃÃÄÄÆÈËÎÍÏÑÑÐÎÏÏÎÏÐÑÑÑÑÑÑÑÏÐÑÑÒÒÒÒÒÓÔÔÔÕÕÔÔÔÓÒÐÒÐÍÍÍÌÌÌÌÌg7:2226585231/1.,-17DR\bgkjheaelv| ¤§©¬¬­¬­ª©«°­«¬¬¬¯®®­§¢ºÄzj^SHCXgÄC++)*,+..)'')'(0;?CLKE@;6/*+/+,+)7Tj|rX7+.9JUJ;/)&&)@>4/14@=7<5+09846*#0BON=470*.1047?PfsjUfyikmeZIE>GJ]vzqt  «¦s.!.03:8/').41,*,-0,)&**(++09EHNW^dmtswvtuvvh@($+8IWelsvz}z|{}}{}~~}~{|z||z{{wwxtqnmmpmolkkkkhlntw{}¢©³»ÀÂÂÄÄÄÃÆÈËÌÎÍÐÐÐÑÐÏÎÏÐÐÑÐÏÐÐÒÏÐÐÑÐÒÑÑÒÓÔÕÕÖÕÔÓÒÑÐÏÐÏÎËËÌÌÌÌÍ·=92002552121/.,,213<FS^goifb`bhqz£¥¨««­®¯«ªª­¬¬ª¯­°±­©§£¢ ¥¼²|qhZPMa}ou¿¨D.++-+++))&(+-40A@AGF@CE=200-+++'0Hew{iP3,0AOVF11&$);D>5+,33154,/7@<:2$ ,M\P@72.,+&(.9JVbtynrvrdki`LD?:ACdw}y¡¯©n;&*2266/%&.6/+'**,)'&(*()*1>HEMT^fmrtqyvuunV5#&.AT`iptuz~|}~|}~~|{~|~}}~{}|{zzzxvwvutspmmoonnnnlljmllsy{{~¦±¸¿ÂÂÄÄÃÃÅÈÌÌÐÑÑÐÐÑÑÑÏÏÏÐÒÏÏÏÏÑÐÑÑÑÐÓÒÒÓÔÔÕÔÖÕÔÓÑÐÑÎÍÍÍÌËÍËÍÏÏÐz311104330/1///12127APY_cc`^`cdoz¡¡¦¬««­­­¬¬­­¬«­®¯­®«¨§¦©±±£ypbWUiid W.(++(&'(,.,2655;CIF=8:<<7740,,++.8PmvW4'+4<TOC:0$(1HB7423/./0++0>E95)%<U`S@;4+""$.2?S]bjxwvyqpnfVWX??>F]agx|sF&'/0120&%.85+)+('))&'*+((3CIGMX]enqsqturuiG-$)5M^ekquvy||}}~}~~~~|~}|~|||~~~~~zyyyz{wx{{wussmnqppnlmkjikpsuxx|£¬µ½ÁÂÃÄÃÃÅÈËÍÏÑÑÒÐÐÑÐÎÏÐÏÐÏÎÎÏÐÑÓÒÑÑÑÒÔÔ×ÔÕÕÔÕÔÓÑÐÏÍÍÌÌÍÌÎÎÏÑÐÐÅ940/04250/001222423;LWXY\__adhsy~¡¤§©«ª¬­­­¬­­­¬©¬­®­«©¬¸¹¨vh\Zg`z^<//2-*,*-8989894<CF=317;65743100.1Gcyl6(,+2>NUH=-&-BL9556+(*))-58AA=2%")IYWH<=5#!#08BP[`enpisrkbQ?5;3BGDO^VYfT,&,-42.&%*36/))&((($())+04?LLLV]dlstytvts`7' &?Ybgouvvx|{{}~~~~}|~||~||}}|}~||y{zxxy{}}ytvtnnplponjilnpttwx{ ¬´¼ÀÂÃÄÃÄÆÉÌÍÐÐÓÓÒÏÑÐÏÐÑÑÐÐÎÎÐÐÒÓÓÑÒÐÓÕÔÔÔÔÖÔÔÓÑÐÏÏÌËÊËÍÍÎÏÐÐÑÑÓ-21/022242020/041.6JTTUZ]^adglt{ £¦¦«­­­¬¬ªª¬ª¬­¬¬®¯®¯¶À¹§vofgsfqxhN>9931/039;:;400/6EB2.5903917210.05Rr|M,$&'+BRQB4($;Q?467."%%&+/2;CJ;*%)<SZI/7=9.'-;GOVbjXHO\~va^M<1226IK<WKJRfl,%+-32.(%+01-*'&(('#&()-/5DMMMPXegrwzwttkN)%&2J^flsvxyy{{{|~~~~}|~~~}~~|~|}~}|}{}~|{zz|z|wtyuqrplmnlggknnpsvu|~~¦¯¹¾ÃÄÄÃÄÆÉÌÎÏÐÑÑÐÐÑÑÑÑÒÑÐÏÏÎÐÑÓÒÓÓÓÕÔÓÔÕÕÔÔÓÒÑÑÐÎÍÌËËËÍÎÎÐÒÒÓÓÒÒL:42323223230/1.//2=IQPS\_`cehnsx~¡¤¨ªª¬¬ª««©©§ª¬ª©¬®±µ¿Â«£ vn~¡dblpWJC><51026774.)--7PK3.38.=<610.3/01Iil8'%#%0AGB8.(6HE2373($&+&+05>D9/14:RbV4*7BOBBDDJP[eQSR_{v_vaTLA6+29NWZgdW]\vf9'*)2.*)&+42))&(,,&$%))+,5ENIJOYfioszvqpZ4&$0CWeimsy{{z{}~}}|}~~|}}}~~~~}{z}}zyz}{{yrwuutqompmmjjmmnltrx|¡¬¶¼ÁÃÃÃÄÇÊËÌÏÑÒÒÑÑÑÒÑÑÑÐÐÑÐÎÐÑÓÐÐÓÓÓÔÕÕÕÔÕÔÓÑÑÑÏÌÌÌËÌÍÏÏÐÐÒÒÓÒÒÑ43/0,.-/54/.-10100>>HKPUY]afgiinv|¡¦©©ª¬¬¬¬ª«¨«ª©ªªª°¸¿º¬¤¡yz½abeYTC:550),/03150.,*5TK3,20-+35,/-,+./<`yQ3'#$(/5<</0)AB2)1:5'&%#(.4;G3*/8>Shj;&#->Rc_QOTPJQp}frt}e]S@119Gcnyradgmw;-,/400+)+00-*)++/'%&*))-4EMKKNWhinsxwqdE&*(:Rbejotx~~||~~~~|~|~~~}||{|{xx{vwvxuvvulqmlnqsngijkklrv{|¨±¹¾ÃÄÄÅÈÊËÌÏÑÓÒÑÑÑÑÑÑÑÑÐÐÐÐÐÑÔÒÓÓÒÓÔÔÖÖÕÕÔÓÑÏÎÍÌÌÍÍÍÐÐÐÑÑÓÓÒÒÐÐÏR1000.--210..0-3139:;DLPU]_bca^cnv| ¥§¨«ª«ª©©§©««©«¬«°¶µ±®§£|w¶·}NbEV<0*-.#&-+/./2/-+7WR60.20354-+*,),,=\b>(&*+*.4:45/=F:&,270)))')29FE7)26PejO/###6P^^fogWhstp{tQ3/09SjwdOXhnlE343;74,*+-2-+,+&('(*0**-6BKLORXcgkrxujH) #7KZcekqtw{}~~~}|~~}|~~}~~~}~}~{|xz{usvwtvtrnonqnkrmkljhkpsvzz|~¤®¸¼ÁÃÄÅÈÊËÌÏÑÓÓÑÒÒÑÑÒÑÐÐÒÑÐÐÑÒÒÔÓÓÕÕÔÕÖÖÕÔÑÏÍÍÍÌÌÌÏÏÐÑÑÑÒÒÓÒÑÐÏÏ0//10//./0-+,.3/,.138AFNV^a_][_elu|££¦©ª«ªªª©©©«ªª«¬²³²­©¨¥¢~³ÄÆ|R^]\K&#"&'+.*)**3/,-1Ob6,)*-/321+(,-+,6O}oO1%(...,0696DIA/'+65/,*).14:OH.*/@\pdH8.()9?AWp|}ikukhozkH6./BX}ZDKRMK;663>>0,*)./48-&(&$(,,**-5?HLTX]delmrnX5"'-EY`cfmt{{~}~~~~}}|~~}~~~}|{|}}|zzz|}xstwvwttopnorsonmkikmoqs|x{|~ª³º¾ÁÄÅÈÊÌÍÏÒÓÒÒÒÒÑÑÒÑÐÑÒÑÑÑÐÒÓÔÓÓÔÓÔÖ××ÕÓÑÏÎÍÍÍÍÎÐÑÓÒÑÒÑÑÑÑÐÎÍÎÌ[,-//+.20/,**--.-.0369>GR[^^^Y]\bmz¡¤§«ªª¨ª«ª©ª¬ªªª®¯¯«¨ª¥¡¾ÔÊdom8$$&(*0-'&(-5,/.NZA1*+.020-**.--)1IquZ;,--&'(*/38AJC5.').,+)'020-=F80+0Oh_JTWC<;2+/AWsxWJOGADH[|bE1*8GnvD0965125692,-/-2<3+***%%.,(*-/5@HKJTaecejl_;)*1<M[cimry{{{~|}~~~~}||}}}~|}~~|}}{{{{yyuvwwxsvtpnoqsonllklmmoquuwz~}¥°¸»¿ÂÅÈËÍÍÐÒÓÒÒÒÒÑÒÒÑÑÑÓÒÒÒÑÒÓÓÓÔÔÔÖ××ÖÔÑÒÎÍÌÍÍÏÐÐÑÐÑÑÒÒÑÑÏÏÍÌËË¥,,-/.1512.,../05333149@HTY`^YVS[kw}¡¤¦ª«ª§¨¬¬«¬««ª§©«¬¬¬ª¦¢Á×Ù¢x§P#&$(../')((51,2NV?3+,--222+30/0-0?k|cN:()'+))+,7CNJ<2+&)2//..0.+4@<7.0AY[@Rba\M:&$"(6FKL8140(*,>Ia\Q@5/9GtQ,-/,,.4386.-1/.+)(*++%"'&*/-/9GJHJVafihh[D1(&8LV]dkrx}}{yz|}~~}{}~~{{}~}~~~{}~~}~}{||~||}~|~yzwyxywtrvvssrrqnnqsmonnoqqrw}¡¬³º¾ÁÄÈÌÎÏÑÒÓÓÒÒÒÑÒÓÑÒÒÒÒÒÓÓÔÔÔÕÕÕÖÕÕÖÔÓÐÏÍÌÍÎÎÐÐÏÑÒÑÑÑÐÐÐÎÏÏÏËÌÌg..1/067510/.+,-.32.2:?BIQYZXPMS^lx¡¤¨¨ª©ª«¬¬®ªªª©©¬¬«­¬©¥¢ºÑ×´pw»e.%%'''1,(&*21%.QL80,,2,1.4200/-,/>bn_F,')'(-.06BNM?92)(++..42)&2<=)(+@WP==G\feT;,# $)/2/32/(*,3:CJ>42-8R~^,./*+.1372,*+,)'$'))&%"!$*4.3;GKFN^bdie\B+-*1EU_gnqxxxzyzy~}~~~~~}~~|~~~~|~~|~}|~~~z{zyzzyvstxw{wstqppmmlklmpqquy~~¦­º¾ÁÄÈÌÍÏÐÓÔÓÔÒÑÐÐÒÓÓÒÒÑÒÓÓÕÕÕÕÕÖ×ÕÔÔÓÑÐÎÌÌÍÏÐÐÐÐÒÒÒÑÐÐÏÐÎÎÎÏÍÌË±..--146330,+)(*+.1*.47AILXURLKLUbr{| ¢¦§¨©©©©«««¬«©¬««­­¬¨¦¢¢¦ÌÙÍ]Res,%&''(*+*)(21.3FG4/++/1-..0360.,'8b}{cK0$+(((,26=QG:>=2+0440.(&%3:;-',AYW89=HWikdJ:321'%/>:3('+/8@;78==;SatD,.0*,..47.(&',,)*&&+*&&#(-2238FKMP]eei]L6'+1CO_kmqtwxwyy||}{|~~|}|||~}~~}~~}~~~~}}{{xtvxtr|vxtqpuronnmkknosrvw{}}~ «µºÀÅÈËÌÏÒÓÔÓÒÒÓÒÑÑÑÒÓÔÒÒÓÓÕÖÖÕÕÖ×ÖÔÓÒÒÑÏÍÎÏÐÒÒÒÑÑÒÓÑÐÏÎÏÎÎÏÎÍËÇÅo...-.431-,-,,*(+/(*-1=DILOQLMHOYdmt~ ¤¨©©ª©¨¨©¨«©ª¬¬¯®¯¯­©¥£¿ÔÎ bTBSR2)((()*-*&',035E?65//,-.21540,+*(9h|cG6,+,)+//.8LL39C:.-171,))#+;A-'';]_C<:EBMaqgQ?CNF5/341( (+3<<4>HQQSAA5&$-()+/45/'&+,++%''*$$#$(.-05<HMMRYcb\H>2&/AUccfnqvzzxxz|}|~}~}}~~|{{~~|~|}{z}{~~~zxyvvuuwxtturntusnljkljnrsuvx{¨°¸½ÂÆÉÍÏÒÒÓÒÓÔÒÒÒÑÑÒÓÓÓÔÕÔÕÕÖÖÖ×ÖÖÔÒÑÑÑÎÎÐÐÑÓÓÒÒÑÑÏÐÐÎÍÏÎÍÏÎÌÊÄ¿©4/-,110.-01.*+,)+&&+07?CFILJJGKNZcjsy ¥¨¨©§¨¨¨©ªª¬¬¬«­®¯®«¦¥»Íº|eQGL7+*)(&),-,(*.55?<38/100.0.25-(&&+6jyqxfC711-*,-,%1IF117<9+33++*%%'7G3&)9V_BA;;8=J`haMAAHSH=:1411(+1BELXgi\?;4+(*('(+460'**-),-++*#"!$&*+-3?GLMS[bXC42(*:O\_\foswzyxz{{}~{~}|}|~}~~|~~|}{}}z|~}}|v{{ywturstttsrpnpnihjkmppquwy~|~¤­·¼ÁÅÉÍÐÒÓÔÓÔÓÒÒÓÓÐÑÑÔÔÔÕÖ×Ö×××Ø×ÖÕÒÐÐÐÏÏÑÒÓÓÓÓÑÑÐÏÏÐÎÎÏÎÎÌÌÉÆ¿¶¢a00/0-,-01-,)+.*)(()*1;@ACIOJBFIQW_jrv|¢¥¥¨©¨¨ª¨¨©¬¬¬¬¬°²®«¨¤ °¬srJQH?/'( *0-,*,272@<5420/+*+-35*$##':ltQooOBB=0/.,)&0=8,.4@?50*+'('*)3?>1(+LP>98652>Yloi_D9@FHA?DTRK<9=HZh~q^UMD8)(&+3361-/***+++.(&$""(0714@FKPS]ZG4+(->OS\bdluv|yyyy}}}|~}{}~~}~~~~}}{||}~~~}}~|}{}}|}}{yzyyxxwsssrsqrtqrronnklhjlmprw{z~{«µ¹¿ÆÊÍÏÒÓÔÔÓÓÓÒÓÔÑÑÑÒÓÕÕÖÖ×ØØ×ØØÕÕÒÐÐÐÐÏÑÓÔÓÓÓÒÐÎÐÎÏÎÎÍÎÏËÊÅ¾¶¦f631.--/./+,*+*+***+),6;;BGJEB@>FKQZenv £¦¦§¨©ªªª©¬«ª¬¬®°°®¬¤¢ ª¨x}fJPY0!#"'01+')434<:/374/+'&.63) #%'?qeB[t^IR>4./0*..;50005BC6,.,'),,/<A702DJ411144:Ttwvws^@47518COPKBMX]`juxiof[J;)%%(050+)*)*)*-.()'')(+5029IOTSQA2+(1>LQW_glntwwx{||~}~{|~~}}||{~~}|}}~|||~}~~~|}|~~~z{{zyxwvqssrrrrstqnnokllkmloqstw~~}¦²¸ÀÅËÍÏÓÒÓÕÐÒÓÒÓÓÑÒÒÓÓÔÓÕÖØØØØØÖÕÓÓÒÐÑÐÑÓÓÕÔÓÒÒÐÐÑÏÎÎÎÌÌËÊÇÁ¶¨iG61.,3.1//.,'(())&())'168=CD@<=;?@CO\goy ¢¦¦§§©ªª¬©«¬ª«¬®°°¬«§¥¢ £µ¦}roKVpU(!#*/-+)(+0/;:0154*)('*26-%# +GqyV:FdPRH<2+6004@C2'-0>EA9,('(*)*5:;BCRI5,*)+5FXryvx~qN=442399/6F\ecV[POYh[NA,(%(.42+.+)+*((0+*'&)*+.*0;IORP@0&'+:GQY]akqstwx{{}{}}{}~}||}~}|~||}}}~}{}~}|}}~||~}{~}~}~|||}zwvxsuwtqpqsusonmmlkilllopvx~«·¾ÃÈËÏÖÒÔÕÒÓÓÒÒÔÓÒÒÓÔÕÔÕÖØØÙÙØÖÕÔÒÑÐÑÑÒÓÔÔÔÔÒÒÐÐÐÎÍÍÍÌËÊÈÀ·¨lI4/-+**+,33/**+('*)(''&(/7?CDA95529BJR^jt¢£¥¨©ª««¬ª«¯­¬­®°°®«ª¨¥¢½Î£}i]Tx5%$'-.+*))/8=9/.-64-2,(11,##&6Wxe@0BowRXWS9(-0/=@62./7<EIO6,'(++-3/2AR_\7**'*/;Mfy{{ubHLCCC=,8Id`baYSAHelaUD*)-10-*(+(0)))+*)'##$'')2AHJMA0-%.9HRVW]gpswwyy{{|{||~}z|~|||}~~}{}~{~}}|z}|{}}{~|}|}|~~|~|~}z{{zxxwttzrprqpusopqolkjkmjmoqx|~~|z©´¼ÃÇËÐÓÔÕÔÔÕÕÔÔÓÔÓÓÓÔÕÔÖ×ØØØ×ÖÖÕÓÑÐÑÑÓÓÔÔÔÓÒÑÐÏÏÎÎÌËËÊÉÆÀ¸¨pM3.**(+.+-4/.11,*)))(+%''-4?A?A:5147=CIV`lx¢¥§¨«­­«¬ª­®­­®¯°±¯¯­©¥¢ÀÇ~YlZ;*',/10-,,39<60-*14+,)%/0+$('?jwV6,9fwUUZSE6--,7@<1,/2<<AON3%$*-361*0NeeD0+))*3?L`q|tzf\keKGYx{bVU\^hwom;+-02,.(*140*(')&%""#%(*4@B=62./1>IQY\\akrstvvxz|}||}}|{{~}}}}~{~}~~~~|}~}~}z{}}~||~}||}~~|{|}{yywutvuqsoqtrpoqonkjhiknppwz}~£®¹ÁÇÌÐÓÕÖÕÕÕÔÔÔÓÕÔÔÔÔÕÕÖ×××××ÖÓÓÓÓÒÓÒÓÓÓÓÔÒÐÏÏÏÍÌÍËËËÈÄÀ·¨pJ80-++-/-,-02352-./*/1.(*/.4BC<8993016>FS]ip|¡¥¨§¬®­®®­¬®¬«­®±²³®ª¨¥ ´LJ=-')+11.-,.8=62,+0-+*)-0-,$)-ErsB(+5RaRNYVK;7823=6/10,.43BGF;)(.88/).A[gE522/.07=H[o}v¨¡}j`qum]WZcymnvyx_2,13+,-+,/2.*)(%(%##&(-5981*+),=LPTYadjosppvwx{||{}~}{{}}|}{~}}}~}}}}}||{||}}}z{~~}||{w{yz{zytvuqsrpporonnmkijgjmmoty|~}«µ¾ÆËÏÒÔÖÖÖÖÕÔÕÔÓÔÔÔÓÔÕÖ××ÖØØÖÓÓÓÒÒÖÒÔÔÓÓÓÑÐÑÎÍÎÍËÊÉÇÄ¿¸¬uP7/-,*,0//./34364420.1122-0/2;?:66942105AKUdlu¡£©¬®­¬®®­¬­­®®­±³²°¯¬¨¢}x¼¡^KI/&()0/,*,1>A61,)*--'-,..(%%.AcS7-+8;ZPTVND=461482,-+-/1468H_9*085*(.<TaD1449466HY]]f|qqzraQW_lsVN\rm;.11.1,.-0---)($*)''**1342-)*08COSU^cgknpqsvuww{|z|~~}~~{}}~}~~|~~~~~|z}}y{}}|zz~}|{{||~}{{ywy{zyuuusuqoppppnnlliiggmxlqxx|}{}z~¢°»ÄËÏÒÒÖ×ÖÖÕÕÕÓÓÔÔÔÔÖÕÖ×ÖÖ×ØØÔ×ÓÓÓÔÓÔÔÒÑÒÐÏÎÌÍÏÍËÊÈÅÀ¶¬xS5-*)*-/31.07;69=8630134551.259@?:7753104;DNZfs{¢§©¬®­°°­¬®®°±¯²´´³®®¬¦¢mr©v]q<*,/43'',2@=433*),/*,.//'*.2>J?.*+16J\UTNG?40.8:/*,2223*04=QM93@7(#(2L`@+2;BIPYfjka^fs~zka~~{z{y[OXerb]hw}`8.01.+,0.+,1,('%&-//,-00.-*(59=IQZ_hklnosutuuvwz{}|~|{}~~}~~}}|~~~}~~z}~~|~~|~~}~~|}{{uxx|~zwvuvvutrnompooookijhkwporuy}~y}|} ¬·ÃÉÎÒÔÖ×××ÖÖÕÕÔÔÔÕÔÕÖ××ÖÖÕÕÔÔÔÒÓÓÔÕÕÔÓÒÑÏÏÌËÍÍÌÊÊÈÄ¼®\=+((*.158:/17669?8774654441037ADB<=88421-3@HR`my£¥©¬®°¯®­¯¯¯­¯°³³²±¯¬§¤zllpwd/2183(&+4@<1/))&*0++//.0/6>JF7/.0125TVUKC;931;7,),2434/-0/4ED<=1*#%+GX@++3=D]hvuq_PXbu}yw}wmkozo`_hi_Zj{bA0-/1/,-*,-11+&&$$+0-+./-%'&-:@JTU]dkoprrrqsssuw{y||~~}}~~~}~~~~|{}~~~|{~~|~}}{}}~|{}|}zwwwxwvxwqrpqppqrmjkghlmqpstz|w~{~§²¾ÈÏÓÖÖ×ØØ×ÖÕÔÕ×ÖÕÕÖØØ×ÖÕÔÒÓÓÔÕÕÕÕÖÕÓÓÒÑÏÏÌÌÍÎËËÊÇ¿¶¥b;/%%')249=A;6658:@><:9825577768?HJBA=:70-*07>IZfv| £§«¯¯¯°°°¯¯­°°±³±¯¬®©¦£ qhllv¬l4*/66(()5@;2-/)**.-*+*/.-?LN9.+013/0=MJGB:987?>./305865+-),7CD7()%')<RL**3:85DQlr`OQVblv~}~xpk[UVibF3,+/.-+,,),43.&(*+(+.0-,)%(/5EIRWW\iqpsttrqrstruyyz{z~}}}}}|}~}~}~~~~~y~~}|z{|}{|~{}z~}}}{|~{ywwvxxxxwutporqpqnnmkkjknonsuv|{w}zz ¬»ÇÌÑÔÖ×ÙÙØÖÕÕÕÕÖÖÔ×Ø×ÖÖÔÔÒÓÔÔÔÖ×ÖÖÕÔÓÒÑÐÏËÍÍÎÌËÇÃ¸ªqI1-,%$*09AEGG879?BE?A>;>>==A==:=?FMMGCB;4-*,46AQ_ow~¢¦ª¯¯®²±¯¯®®±±²´²²²°«©§¢yklitq80*370+.4;7.,2,)++0--,**3L]T1*-264.-5EIHCA;G<@<65:449;;51./7??0)('&'3ID405O@ '.DV\X]a^ahpu~ ¢}n]\moI6-0101+-.*+./+&)3+))-/,/'+08@IOUZ]ajoprtxsttuvusvxwyz|~|}|||}~~~~~~~~~||~}{}{z{{{|{{}}~{}|{||{yzxwwwusstuqonnpoklpnkiimmmpsu{|wx~¦µÂÉÎÔ×ØØØØ×ÕÔÔÕÖÖÕÕ×ØÕÕÓÓÒÓÔÔÖÕÕÖÖÖÔÒÐÏÏÍÍÍÍÍËÇÂ»­uQ6./'&)03?IOMK@8<?F?@GFBGHJIKEDBBDGPNMIHC:/,+/2;JXfny ¥«¬¯¯¯°°°¯¯°°±±±³°±¬ª©§£xu~}|sA1+07.&2693*(+,4/*//009,5M`O2+/664/+6@EM@@::>@7009=>>CB:;959<6-.-)*'/<802:dP(!#)2A?N\gekjgix{¥ s|wX<5+/.*.+',/0*&*2/.,**))%+5@GLRUX`blmpssuuvytvyvvx{~z||z|}}~~~|~~~~~~}{}{}~|}}}||}~~}~|{}{|~~{{{|{|zuvxvuxsrsoqoqpmjkhgjgijloqvw}}w~~z|¡®¾ÅÌÒ×ÙÚÙØØ×ÖÖÕÕÖ×Õ××ÖÕÔÓÒÓÔÕÖÖÕÖÖÖÔÒÐÏÎÍÎÎÍËÇÃ»±~Z@/*&'(),6DKMMMH@CDIJJPNNQOOQSROMNLPRSTQOK@92.))2DQ\gt¢§«®°´°¯°¯°±±®°²²±±²°«©¥¢{x^2(,64/3:=4&$+-/**+/*+/-5COA8129;2/*35<AA;85>81-/5=ABD>=?87<D4//+((&'72--7Rc' #'-+(.8HMRX`_iw|}mRD2.2*##&.1.*)0./14/(&)'1?@DKPX]dinprsttvvyuuxxyz}~|}~||~}~}||~~~~~~}|z}|}~}}~{~~}~}}|~}yxuwwvtoprtrqoppqjigfedhlmnnruz|{x{¨¹ÅËÐÖÙÚÙØØÙÙØÖ×ÖÕÖÖÕÕÔÔÔÓÓÔÖÕÕÖÖÕÕÔÓÐÐÏÌÍÍËÈÃ½±£cC7,)*/,+2=FMRPKLMOWU_]^`]XYYXVYYWSSTU\[UQIDA71*'-<KT`my ¥©­°²±°°°±²±±µ²±²³³°®«§¤ «xwkE4)/787B<0((+0--++022.-.3A9225<;0..014?C;89932417A@?=<911362340+))((/2+/0?J1%$-5,%&),.-56BJU_mxyuulqkT]emuui`a\A-*'&$'0-/-*/30.+&(%,6888CNU\aekqqqqqsvvuvvxx{y{}{}|~~}z~{z{~||}~}}}}|~}~}||||~}~~~|}||}|}}wvwzwwupoqrrrnnllkiicfefhlklqpx~{y{±ÀÆÍÔØÙÚÚÙÙÙØ×××ÕÔÕÔÔÓÔÓÓÒÕÖÕÕÖÕÔÔÔÒÐÐÏÍÍÍÈÄ½³¤qN4-'**+139EOQORMSX_hilljnkigccfc]_^^^__`YXPKD?84+*5?LVer¢¦«°³²²´²²°°²¯°¯±³±²®¬ª¦£­t[9)(/459:31***-//+-39330,020-,7=93-1201;A;<D90.259;A735662,,.52.02,)/10)052-*)*76.*&(-,.*%(1=DBQRRFFMsLFNVUH=?N^WE0(*(#)+7/%(*-*&''*.578;EOY_cgjnnnnmrwv{xyxy|{|{{|~{{~~}}{~~~~}~}}}~}}}|}}|{}~~{wuwvxwtuxnsrrqpllnlijifdackkmmnu|} |xsz¦·ÆËÒÖÙÙÚÚÚÚÙØÖÖÕÔÕÓÓÒÔÓÔÔÕÕÖÖ×ÕÔÔÔÓÑÏÏÍÍÊÆÀ·©|Y?/*-+')/7>GOUSYQUY^sxxyxzwywppsomlkof`ega]VNEB=8/*0?IVbnz¥¨¬®¯±°¯¯®¯°­¯´³³°³¯­¬¨¥¥Q2&(.4><7/0,**-1.*-1344-,*/.-1:=>3*-1,.9B==@7100:<?A;5-,*0+(/4.')4125522150(%)/360--../0.((*9BAEKG>@HgjN;AM8-+<KLO>3)#%'+-+')+-+'%$+0269BLS[defilmpnmqsuvw{wy{|{|{~}~|}~~~|}}}~z}~|{~~~~~|~|}|{{zwvvxwuxwoppnnqnkilmihghbcgfiloux{}xuv|®¿ÈÐÕÙÙÚÚÚÜÚÙØ×ÖÕÖÔÓÓÓÔÕÕÕÕÖ××ÖÔÔÔÓÑÏÏÎËÈÅ¼± jK6-)(&'*2=?HOVUQSRWYq|{{yxvrqpkkmjc^XPLE=3+,6AP[eq}£§¬­°°¯¯¯¯®¬­¯²³³´±¯±¯«¨¢d:-).9B?40-*+,/,*,,+/75.+-2515>B@:.+2*0;B@<?;45207@K?92,),-'+),&*11655565332,),/4684/43/*+015>=BFNSXXlkL?JO<%5E@=BF+"'),)+*/55%'*,+./38HPW]`fkkmmqtrspxwx{zxx}{}}|}~~}}}{}~}||||{~}}}}}~|}~xyyvywvutoponppmmlomghjhgffdimpsswxwst¤µÄÍ××ØÚÚÚÚÙÚ×ÖÖÕÓÓÒÓÒÓÔÕÕÕÖÖ×ÖÔÓÓÑÐÐÏÌÉÅÀ·©y_E3-+$%*16;ENPUVSRTUX`}zzutrmic]UOG8.,.5HT^ny¥ª®°°®¯°±¯®®¯¯²³´³´´°­¨¤ }I5119CD6-)*-,..*-+*/42-*,-00;HE<9.,,,4:A=8DE=641?EOKC6,-&.-,*+*-/+011457::;756**6KC970-.+,6=>9:7CF_izyhLWK53CE*2F6)#(*,16=0&$'.:0403=IPV\agjhhjntrtssuwzxxw}}~~~}}~~~|~||}}||}|}||}|~~}}|zzxuvwtoroprspppnlljjklfgfbdhikqru{}{xss{®ÀÉÐÔØÛÛÙØÙÚØ×ÕÔÒÓÓÒÒÓÕÕÖÖÖÖÖÕÔÓÓÏÏÏÍÉÄÀº®¡s[D3.(&,05:@JLQVVRRUUTSp~}yxwog_YN?3-+2<IWap¢§«®®¯±±±±²®±°²³´µµµ³¯¬¨£kA54:AE<2++//-**,-/-23.0//.1>DC=4-+,*2:C?8EIB8959G\QH<63/0-,,.-**/14,45:79=<>:-(/DQG;44427@DVO?43<NbygJNB32;2.6@+)+0384)&&%+..1201?KUX[cjkfhiottuvtuvyz|~|~~~~~}~|}~~}||||}~~}|}z|{{zzwz{xyurqqrurpspnkkjliikkgcfdehhmopry||zuuv~¥ºÆÏÔØÚÚÙØÛÚØÖÔÓÓÒÒÒÒÓÔÕÖÖÕÕÕÕÔÒÑÐÏÏÌÈÂ¼´«rZA3.,+,39;BHNSRQQSUSTU\}vmdSE:-+-5@P\ky¤©¬®°±²²±°±²²²²´¶´´´±®§¦ wR>;9<992,,-./1,,,/./001,..3DNC94-*)(-4BA7GE>:467BMLKH954410/,+'%2393*+)*04;CB74/3DHB98943;AXb`L4<KQZj|hc\C517$.C1)+.1.:9*')/.-1437COVV^bfggikotusuwwxz~~~~~}|}}~~~}~{{}}|~|{~}{{{{{zzz{xwvtsttrqrrqplnjmlijjifgfefgkknptz{zxsv±ÁËÑ×ÙÛÛÙÚÚÙ×ÔÒÓÑÑÓÒÓÔÔÔÕÕÔÔÔÒÑÑÐÎÍËÆ¿¸¯©rW?1*--08<?CJQQSRQRX[XXVqwl_RE2.(.9GU^r¤©¬°°²´±±³°±¯±²²µ´µ°­©§£ygMD<;124/)+,(43/-.-*34-*,4@UV@30-**)-6?=5>D95876>I@CR@752458,*('+.38-(*'%(0898=>:6:E?<73215BYi^OJHGGT`~hWGF>2.7-,+*)48,)--,/226?FNSW[abheinprrpqxx~~~~}~}}~|{||{{|{x{{{|zy{|yttsqrrrsroprolmoojjjjkifaadhhjnsx|{xwtuz¨ºÇÏÖÙÛÛÚØÛØ×ÕÓÒÒÑÔÒÓÔÓÓÕÕÔÓÓÑÒÑÐÏÌÉÃ½µ¬£mR?0().2=;>CFMUURTSWYYWRXyobRA1)+1>JXiv£§ª±²³µ´±°¯±±°°³´µ´±®©©¦¢{wndWB62.1-),,(-85.+++,60,*8QaO7,(+(+-.2:=4>@830.68A;=GG;777<>830,)+01.))$$''(*+9KJE;BF?/4:008EOQRPPLGFUoz¥wha_A561*'%*&0--42/164;CJQZYZ^dlklnonopr~~~|~}{}}~{~}z~}|~|}|}xx{yxwywurruqtsrqonroppmllkjijgfdc`dihlppw~|{xtusµÄÏÕÚÛÝÜÚÚÙ×ÕÓÒÒÑÓÔÔÔÒÔÕÔÓÒÑÑÐÐÐÎËÇÂ½µ­£iL5*()/68;AFJJSSPTXRTWVRVn{pdU=.%)3<O]n|££¨®±´´µ±¯¯³²°°²³·µ±¯­¬©¥yswtI>A:,),1.0,-,)(),-64+/=ZZ>1,,,0.+.1:=5?E<42333==;AF<78:A@47884570*'-.+)(,%",4>BA?HR@614:A;=49FUORXYjpq}pll_H62%%%((,/+740124=ELPWWZ]biiilmmnz~|~~~~~|~~~}~~~}|z}~|y~}|}~}{xz~xy{|zyyvwxuutsrrqpmpqnlmjijjhjhglgccfgknrt{~|{yvus|­ÁÍÔØÚÜÛÛÚÙ×ÕÔÒÑÑÓÕÔÔÔÔÔÓÓÒÐÑÏÎÏÎÊÆÄ½µ®¦fD1)(,2;;?BHMORVSSZSRRQSUVyn`J6+',1>K`w ¦¬¯±²±±¯¯²±±®³´µµ´´¯­«¨¡z_?GK-*34240).,+)(-470:KXG3.-/021+*2?B-=G?60134>BB>BE?9:B>:75;:@;0)'*21+./*((%.246>JXR--3?CBD78PLMZiooommmhjmrl`YI6(',0')3-(**.25=DKNQY[[aghjjlw~}~~~~}}{~~}~~~~}}|{~}{}~~~|y|~}zzz{{zyyyvuvtvtsrqprkklmkikkjmkjhfdbecjnqsy
diff --git a/examples/src/simpleTexture/simpleTexture.cu b/examples/src/simpleTexture/simpleTexture.cu
deleted file mode 100644
--- a/examples/src/simpleTexture/simpleTexture.cu
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * Copyright 1993-2010 NVIDIA Corporation.  All rights reserved.
- *
- * NVIDIA Corporation and its licensors retain all intellectual property and
- * proprietary rights in and to this software and related documentation.
- * Any use, reproduction, disclosure, or distribution of this software
- * and related documentation without an express license agreement from
- * NVIDIA Corporation is strictly prohibited.
- *
- * Please refer to the applicable NVIDIA end user license agreement (EULA)
- * associated with this source code for terms and conditions that govern
- * your use of this NVIDIA software.
- *
- */
-
-#ifndef _SIMPLETEXTURE_KERNEL_H_
-#define _SIMPLETEXTURE_KERNEL_H_
-
-// declare texture reference for 2D float texture
-texture<float, 2, cudaReadModeElementType> tex;
-
-////////////////////////////////////////////////////////////////////////////////
-//! Transform an image using texture lookups
-//! @param g_odata  output data in global memory
-////////////////////////////////////////////////////////////////////////////////
-extern "C"
-__global__ void
-transformKernel( float* g_odata, int width, int height, float theta)
-{
-    // calculate normalized texture coordinates
-    unsigned int x = blockIdx.x*blockDim.x + threadIdx.x;
-    unsigned int y = blockIdx.y*blockDim.y + threadIdx.y;
-
-    float u = x / (float) width;
-    float v = y / (float) height;
-
-    // transform coordinates
-    u -= 0.5f;
-    v -= 0.5f;
-    float tu = u*cosf(theta) - v*sinf(theta) + 0.5f;
-    float tv = v*cosf(theta) + u*sinf(theta) + 0.5f;
-
-    // read from texture and write to global memory
-    g_odata[y*width + x] = tex2D(tex, tu, tv);
-}
-
-#endif // #ifndef _SIMPLETEXTURE_KERNEL_H_
diff --git a/examples/src/smvm/Makefile b/examples/src/smvm/Makefile
deleted file mode 100644
--- a/examples/src/smvm/Makefile
+++ /dev/null
@@ -1,20 +0,0 @@
-#
-# Baking!
-#
-
-# ------------------------------------------------------------------------------
-# Input files
-# ------------------------------------------------------------------------------
-EXECUTABLE      := smvm
-
-HSMAIN          := SMVM.chs
-CUFILES         := smvm-csr.cu \
-                   smvm-cudpp.cu
-
-USECUDPP        := 1
-EXTRALIBS       := stdc++
-
-# ------------------------------------------------------------------------------
-# Haskell/CUDA build system
-# ------------------------------------------------------------------------------
-include ../../common/common.mk
diff --git a/examples/src/smvm/SMVM.chs b/examples/src/smvm/SMVM.chs
deleted file mode 100644
--- a/examples/src/smvm/SMVM.chs
+++ /dev/null
@@ -1,201 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
---------------------------------------------------------------------------------
---
--- Module    : SMVM
--- Copyright : (c) 2009 Trevor L. McDonell
--- License   : BSD
---
--- Sparse-matrix dense-vector multiplication
---
---------------------------------------------------------------------------------
-
-module Main where
-
-#include "smvm.h"
-
--- Friends
-import Time
-import C2HS
-import RandomVector                             (randomList,randomListR,verifyList)
-
--- System
-import Numeric
-import Data.List
-import Control.Monad
-import Control.Applicative
-import System.Random
-import Foreign.CUDA                             (withDevicePtr)
-import qualified Foreign.CUDA as CUDA
-
---
--- A very simple sparse-matrix / vector representation
--- (confusingly, different from that in RandomVector and used elsewhere)
---
-type Vector e       = [e]
-type SparseVector e = [(Int,e)]
-type SparseMatrix e = [SparseVector e]
-
---------------------------------------------------------------------------------
--- Reference
---------------------------------------------------------------------------------
-
-smvm :: Num e => SparseMatrix e -> Vector e -> Vector e
-smvm sm v = [ sum [ x * (v!!col) | (col,x) <- sv ]  | sv <- sm ]
-
---------------------------------------------------------------------------------
--- CUDA
---------------------------------------------------------------------------------
-
---
--- Sparse-matrix vector multiplication, using compressed-sparse row format.
---
--- Lots of boilerplate to copy data to the device. Our simple list
--- representation has atrocious copy performance (see the `bandwidthTest'
--- example), so don't include that in the benchmarking
---
-smvm_csr :: SparseMatrix Float -> Vector Float -> IO (Float, Vector Float)
-smvm_csr sm v =
-  let matData = concatMap (map cFloatConv . snd . unzip) sm
-      colIdx  = concatMap (map cIntConv   . fst . unzip) sm
-      rowPtr  = scanl (+) 0 (map (cIntConv . length) sm)
-      v'      = map cFloatConv v
-#ifdef __DEVICE_EMULATION__
-      iters   = 1
-#else
-      iters   = 100
-#endif
-  in
-  CUDA.withListArray    matData  $ \d_data       ->
-  CUDA.withListArray    rowPtr   $ \d_ptr        ->
-  CUDA.withListArray    colIdx   $ \d_indices    ->
-  CUDA.withListArrayLen v'       $ \num_rows d_x ->
-  CUDA.allocaArray      num_rows $ \d_y          -> do
-    (t,_) <- benchmark iters (smvm_csr_f d_y d_x d_data d_ptr d_indices num_rows) CUDA.sync
-    y     <- map cFloatConv <$> CUDA.peekListArray num_rows d_y
-    return (fromInteger (timeIn millisecond t) / fromIntegral iters, y)
-
-
-{# fun unsafe smvm_csr_f
-  { withDevicePtr* `CUDA.DevicePtr CFloat'
-  , withDevicePtr* `CUDA.DevicePtr CFloat'
-  , withDevicePtr* `CUDA.DevicePtr CFloat'
-  , withDevicePtr* `CUDA.DevicePtr CUInt'
-  , withDevicePtr* `CUDA.DevicePtr CUInt'
-  ,                `Int'                   } -> `()' #}
-
-
---
--- Sparse-matrix vector multiplication from CUDPP
---
-smvm_cudpp :: SparseMatrix Float -> Vector Float -> IO (Float, Vector Float)
-smvm_cudpp sm v =
-  let matData = concatMap (map cFloatConv . snd . unzip) sm
-      colIdx  = concatMap (map cIntConv   . fst . unzip) sm
-      rowPtr  = scanl (+) 0 (map (cIntConv . length) sm)
-      v'      = map cFloatConv v
-#ifdef __DEVICE_EMULATION__
-      iters   = 1
-#else
-      iters   = 100
-#endif
-  in
-  CUDA.withListArrayLen v'       $ \num_rows     d_x    ->
-  CUDA.allocaArray      num_rows $ \d_y                 ->
-  withArrayLen          matData  $ \num_nonzeros h_data ->
-  withArray             rowPtr   $ \h_rowPtr            ->
-  withArray             colIdx   $ \h_colIdx            -> do
-    (t,_) <- benchmark iters (smvm_cudpp_f d_y d_x h_data h_rowPtr h_colIdx num_rows num_nonzeros) CUDA.sync
-    y     <- map cFloatConv <$> CUDA.peekListArray num_rows d_y
-    return (fromInteger (timeIn millisecond t) / fromIntegral iters, y)
-
-{# fun unsafe smvm_cudpp_f
-  { withDevicePtr* `CUDA.DevicePtr CFloat'
-  , withDevicePtr* `CUDA.DevicePtr CFloat'
-  , id             `Ptr CFloat'
-  , id             `Ptr CUInt'
-  , id             `Ptr CUInt'
-  ,                `Int'
-  ,                `Int'                   } -> `()' #}
-
-
---------------------------------------------------------------------------------
--- Main
---------------------------------------------------------------------------------
-
---
--- Generate random matrices
---
-sparseMat :: (Num e, Random e, Storable e) => (Int,Int) -> (Int,Int) -> IO (SparseMatrix e)
-sparseMat bnds (h,w) = replicateM h sparseVec
-  where
-    sparseVec = do
-      nz  <- randomRIO bnds                         -- number of non-zero elements
-      idx <- nub . sort <$> randomListR nz (0,w-1)  -- remove duplicate column indices
-      zip idx <$> randomList (length idx)           -- (column indices don't actually need to be sorted)
-
-denseMat :: (Num e, Random e, Storable e) => (Int,Int) -> IO (SparseMatrix e)
-denseMat (h,w) = replicateM h (zip [0..] <$> randomList w)
-
---
--- Some test-harness utilities
---
-stats :: (Floating a, Ord a) => [a] -> (a,a,a,a,a,a)
-stats (x:xs) = finish . foldl' stats' (x,x,x,x*x,1) $ xs
-  where
-    stats' (mn,mx,s,ss,n) v = (min v mn, max v mx, s+v, ss+v*v, n+1)
-    finish (mn,mx,s,ss,n)   = (mn, mx, av, var, stdev, n)
-      where av    = s/n
-            var   = (1/(n-1))*ss - (n/(n-1))*av*av
-            stdev = sqrt var
-
-
-testAlgorithm :: (Num e, Ord e, Floating e)
-             => String                                                  -- name of the algorithm
-             -> (SparseMatrix e -> Vector e -> IO (Float, Vector e))    -- return time (ms), and result
-             -> SparseMatrix e                                          -- input matrix
-             -> Vector e                                                -- input vector
-             -> Vector e                                                -- reference solution
-             -> IO ()
-testAlgorithm name f m v ref = do
-    putStr name
-    (t,y) <- f m v
-    putStr   $ if verifyList ref y then "Ok!      " else "INVALID! "
-    putStr   $ "( " ++ showFFloat (Just 2) t " ms, "
-    putStrLn $ showFFloat (Just 2) (fromIntegral (2 * 1000 * sum (map length m)) / (t * 1E9)) " GFLOPS )"
-
-
-testMatrix :: String -> SparseMatrix Float -> Vector Float -> IO ()
-testMatrix name sm v = do
-  let w                  = length v
-      (_,_,av,_,stdev,h) = stats (map (fromIntegral . length) sm)
-      ref                = smvm sm v
-
-  putStr   $ name ++ ": " ++ show w ++ "x" ++ show (round h)
-  putStr   $ ", " ++ shows (round (av*h)) " non-zero elements "
-  putStrLn $ "( " ++ showFFloat (Just 2) av " +/- " ++ showFFloat (Just 2) stdev " )"
-
-  testAlgorithm "  smvm-csr:     " smvm_csr   sm v ref
-  testAlgorithm "  smvm-cudpp:   " smvm_cudpp sm v ref
-  putStrLn ""
-
-
---
--- Finally, the main function
---
-main :: IO ()
-main = do
-  dev   <- CUDA.get
-  props <- CUDA.props dev
-  putStrLn $ "Using device " ++ show dev ++ ": \"" ++ CUDA.deviceName props ++ "\""
-  putStrLn $ "  Compute capability:  " ++ show (CUDA.computeCapability props)
-  putStrLn $ "  Total global memory: " ++
-    showFFloat (Just 2) (fromIntegral (CUDA.totalGlobalMem props) / (1024*1024) :: Double) " GB\n"
-
-  v1 <- randomList 512
-  v2 <- randomList 2048
-  m1 <- denseMat  (512,512)
-  m2 <- sparseMat (20,200) (20 * 2048,2048)
-
-  testMatrix "Dense Matrix"  m1 v1
-  testMatrix "Sparse Matrix" m2 v2
-
diff --git a/examples/src/smvm/smvm-csr.cu b/examples/src/smvm/smvm-csr.cu
deleted file mode 100644
--- a/examples/src/smvm/smvm-csr.cu
+++ /dev/null
@@ -1,246 +0,0 @@
-/*
- *  Copyright 2008-2009 NVIDIA Corporation
- *
- *  Licensed under the Apache License, Version 2.0 (the "License");
- *  you may not use this file except in compliance with the License.
- *  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-
-
-#include "smvm.h"
-#include "utils.h"
-#include "texture.h"
-
-
-/* -----------------------------------------------------------------------------
- * Sparse-matrix dense-vector multiplication, compressed-sparse row format
- * -----------------------------------------------------------------------------
- *
- * Each row of the CSR matrix is assigned to a warp, which computes the dot
- * product of the i-th row of A with the x vector, in parallel.
- *
- *   y[i] = A[i,:] * x
- *
- * This division of work implies that the CSR index and data arrays (Aj and Ax)
- * are accessed in a contiguous manner (but generally not aligned). On the GT200
- * these accesses are coalesced, unlike kernels based on the one-row-per-thread
- * division of work. Since an entire 32-thread warp is assigned to each row,
- * many threads will remain idle when their row contains a small number of
- * elements. This code relies on implicit synchronization among threads in a
- * warp.
- *
- * Optionally, the texture cache may be used for accessing the x vector. This
- * generally shows good improvements.
- *
- * References:
- *
- *  [1] N. Bell and M. Garland. "Efficient sparse matrix-vector multiplication on
- *      CUDA." NVIDIA Technical Report NVR-2008-004, NVIDIA Corporation, Dec. 2008.
- *
- *  [2] N. Bell and M. Garland. "Implementing sparse matrix-vector
- *      multiplication on throughput-oriented processors." In Supercomputing
- *      `09: Proceedings of the 2009 Conference on High Performance Computing
- *      Networking, Storage and Analysis, pages 1-11, 2009.
- */
-template <unsigned int BlockSize, typename T, bool UseCache>
-__global__ static void
-smvm_k
-(
-    T                   *d_y,
-    const T             *d_x,
-    const T             *d_Ax,
-    const unsigned int  *d_Ap,
-    const unsigned int  *d_Aj,
-    const unsigned int  num_rows
-)
-{
-    /*
-     * Require at least a full warp for each row. This could be relaxed by
-     * modifying the cooperative reduction step
-     */
-    assert(BlockSize % WARP_SIZE == 0);
-
-    const unsigned int vectorsPerBlock = BlockSize / WARP_SIZE;
-    const unsigned int num_vectors     = vectorsPerBlock * gridDim.x;
-    const unsigned int thread_id       = BlockSize * blockIdx.x + threadIdx.x;
-    const unsigned int vector_id       = thread_id / WARP_SIZE;
-    const unsigned int thread_lane     = threadIdx.x & (WARP_SIZE-1);
-    const unsigned int vector_lane     = threadIdx.x / WARP_SIZE;
-
-    __shared__ volatile T            s_data[(vectorsPerBlock+1) * WARP_SIZE];
-    __shared__ volatile unsigned int s_ptrs[vectorsPerBlock][2];
-
-    for (unsigned int row = vector_id; row < num_rows; row += num_vectors)
-    {
-        /*
-         * Use two threads to fetch the indices of the start and end of this
-         * segment. This is a single coalesced (although unaligned) global read
-         * rather than two, and hence considerably faster.
-         */
-        if (thread_lane < 2)
-            s_ptrs[vector_lane][thread_lane] = d_Ap[row + thread_lane];
-
-        __EMUSYNC;
-        const unsigned int row_start = s_ptrs[vector_lane][0];
-        const unsigned int row_end   = s_ptrs[vector_lane][1];
-
-        /*
-         * Have the threads read in all values for this row, accumulating local
-         * dot-product sums. Then, reduce this cooperatively in shared memory.
-         */
-        T sum = 0;
-        for (unsigned int j = row_start + thread_lane; j < row_end; j += WARP_SIZE)
-            sum += d_Ax[j] * fetch_x<UseCache>(d_Aj[j], d_x);
-
-        s_data[threadIdx.x] = sum;                                  __EMUSYNC;
-        s_data[threadIdx.x] = sum = sum + s_data[threadIdx.x + 16]; __EMUSYNC;
-        s_data[threadIdx.x] = sum = sum + s_data[threadIdx.x +  8]; __EMUSYNC;
-        s_data[threadIdx.x] = sum = sum + s_data[threadIdx.x +  4]; __EMUSYNC;
-        s_data[threadIdx.x] = sum = sum + s_data[threadIdx.x +  2]; __EMUSYNC;
-        s_data[threadIdx.x] = sum = sum + s_data[threadIdx.x +  1]; __EMUSYNC;
-
-#if 0
-        /*
-         * Alternative method (slightly slower, due to bank conflicts?)
-         */
-        s_data[threadIdx.x] += s_data[threadIdx.x + 16];
-        s_data[threadIdx.x] += s_data[threadIdx.x +  8];
-        s_data[threadIdx.x] += s_data[threadIdx.x +  4];
-        s_data[threadIdx.x] += s_data[threadIdx.x +  2];
-        s_data[threadIdx.x] += s_data[threadIdx.x +  1];
-#endif
-
-        /*
-         * Finally, first thread writes the result for this row
-         */
-        if (thread_lane == 0)
-            d_y[row] = s_data[threadIdx.x];
-    }
-}
-
-
-template <typename T, bool UseCache>
-static void
-smvm_dispatch
-(
-    T                   *d_y,
-    const T             *d_x,
-    const T             *d_data,
-    const unsigned int  *d_ptr,
-    const unsigned int  *d_indices,
-    const unsigned int  num_rows,
-    const unsigned int  blocks,
-    const unsigned int  threads
-)
-{
-    const unsigned int smem = 0;
-
-    switch (threads)
-    {
-    case 512: smvm_k<512,T,UseCache><<<blocks,threads,smem>>>(d_y, d_x, d_data, d_ptr, d_indices, num_rows); break;
-    case 256: smvm_k<256,T,UseCache><<<blocks,threads,smem>>>(d_y, d_x, d_data, d_ptr, d_indices, num_rows); break;
-    case 128: smvm_k<128,T,UseCache><<<blocks,threads,smem>>>(d_y, d_x, d_data, d_ptr, d_indices, num_rows); break;
-    case  64: smvm_k< 64,T,UseCache><<<blocks,threads,smem>>>(d_y, d_x, d_data, d_ptr, d_indices, num_rows); break;
-    case  32: smvm_k< 32,T,UseCache><<<blocks,threads,smem>>>(d_y, d_x, d_data, d_ptr, d_indices, num_rows); break;
-    default:
-        assert(!"Non-exhaustive patterns in match");
-    }
-}
-
-
-/*
- * Select an "optimal" number of threads and blocks for the problem size. This
- * is an act of balancing resource usage: shared memory, registers, in-flight
- * threads and blocks per multiprocessor. Ultimately, this requires some
- * experimentation for every kernel, device and problem set, but we choose some
- * sensible default values.
- *
- * Additionally, each block will have at least one full warp, as required by the
- * core kernel.
- */
-static void
-smvm_control
-(
-    unsigned int        n,
-    unsigned int        &blocks,
-    unsigned int        &threads,
-    unsigned int        maxThreads = MAX_THREADS,
-    unsigned int        maxBlocks  = MAX_BLOCKS
-
-)
-{
-    threads = (n < maxThreads) ? max(WARP_SIZE, ceilPow2(n)) : maxThreads;
-    blocks  = (n + threads - 1) / threads;
-    blocks  = min(blocks, maxBlocks);
-}
-
-
-/*
- * Sparse matrix multiplication:
- *   y = A * x
- *
- * The CSR format explicitly stores column indices (indices) and non-zero values
- * (data) in row-major order, together with a third array of row pointers (ptr).
- * For an M-by-N matrix, ptr has length (M+1) and stores the offset to the start
- * of the i-th row in ptr[i]. The last entry then, corresponding to the (M+1)-st
- * row, contains the number of non-zero elements in the matrix.
- *
- * Example:
- *            | 1 7 0 0 |
- *        A = | 0 2 8 0 |
- *            | 5 0 3 9 |
- *            | 0 6 0 4 |
- *
- *      ptr = [ 0 2 4 7 9 ]
- *  indices = [ 0 1 1 2 0 2 3 1 3 ]
- *     data = [ 1 7 2 8 5 3 9 6 4 ]
- *
- * d_y          The output vector
- * d_x          The input (dense) vector to multiply against
- * d_data       The non-zero elements of the sparse, stored row-major order
- * d_ptr        Row offsets
- * d_indices    Column indices
- */
-template <typename T, bool UseCache>
-static void
-smvm_csr
-(
-    T                   *d_y,
-    const T             *d_x,
-    const T             *d_data,
-    const unsigned int  *d_ptr,
-    const unsigned int  *d_indices,
-    const unsigned int  num_rows
-)
-{
-    unsigned int blocks;
-    unsigned int threads;
-
-    if (UseCache)
-        bind_x(d_x);
-
-    smvm_control(num_rows, blocks, threads);
-    smvm_dispatch<T,UseCache>(d_y, d_x, d_data, d_ptr, d_indices, num_rows, blocks, threads);
-
-    if (UseCache)
-        unbind_x(d_x);
-}
-
-/* -----------------------------------------------------------------------------
- * Instances
- * ---------------------------------------------------------------------------*/
-
-void
-smvm_csr_f(float *d_y, float *d_x, float *d_data, unsigned int *d_rowPtr, unsigned int *d_colIdx, unsigned int num_rows)
-{
-    smvm_csr<float,true>(d_y, d_x, d_data, d_rowPtr, d_colIdx, num_rows);
-}
-
diff --git a/examples/src/smvm/smvm-cudpp.cu b/examples/src/smvm/smvm-cudpp.cu
deleted file mode 100644
--- a/examples/src/smvm/smvm-cudpp.cu
+++ /dev/null
@@ -1,56 +0,0 @@
-/* -----------------------------------------------------------------------------
- *
- * Module    : SMVM
- * Copyright : (c) 2009 Trevor L. McDonell
- * License   : BSD
- *
- * ---------------------------------------------------------------------------*/
-
-
-#include "smvm.h"
-#include <cudpp.h>
-
-template <typename T> CUDPPDatatype getType();
-template <> CUDPPDatatype getType<float>() { return CUDPP_FLOAT; }
-template <> CUDPPDatatype getType<unsigned int>() { return CUDPP_UINT; }
-
-
-/*
- * Sparse matrix-dense vector multiply. Hook directly into the CUDPP
- * implementation.
- */
-template <typename T>
-void smvm_cudpp
-(
-    float               *d_y,
-    const float         *d_x,
-    const float         *h_data,
-    const unsigned int  *h_rowPtr,
-    const unsigned int  *h_colIdx,
-    const unsigned int  num_rows,
-    const unsigned int  num_nonzeros
-)
-{
-    CUDPPConfiguration cp;
-    CUDPPHandle        sm;
-
-    cp.datatype  = getType<T>();
-    cp.options   = 0;
-    cp.algorithm = CUDPP_SPMVMULT;
-
-    cudppSparseMatrix(&sm, cp, num_nonzeros, num_rows, h_data, h_rowPtr, h_colIdx);
-    cudppSparseMatrixVectorMultiply(sm, d_y, d_x);
-
-    cudppDestroySparseMatrix(sm);
-}
-
-
-// -----------------------------------------------------------------------------
-// Instances
-// -----------------------------------------------------------------------------
-
-void smvm_cudpp_f(float *d_y, float *d_x, float *h_data, unsigned int *h_rowPtr, unsigned int *h_colIdx, unsigned int num_rows, unsigned int num_nonzeros)
-{
-    smvm_cudpp<float>(d_y, d_x, h_data, h_rowPtr, h_colIdx, num_rows, num_nonzeros);
-}
-
diff --git a/examples/src/smvm/smvm.h b/examples/src/smvm/smvm.h
deleted file mode 100644
--- a/examples/src/smvm/smvm.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/* -----------------------------------------------------------------------------
- *
- * Module    : SMVM
- * Copyright : (c) 2009 Trevor L. McDonell
- * License   : BSD
- *
- * ---------------------------------------------------------------------------*/
-
-#ifndef __SMVM_H__
-#define __SMVM_H__
-
-/*
- * Optimised for Tesla C1060 (compute 1.3)
- * Maximum performance for your card may be achieved with different values.
- *
- * http://developer.download.nvidia.com/compute/cuda/CUDA_Occupancy_calculator.xls
- */
-#define MAX_THREADS             128
-#define MAX_BLOCKS_PER_SM       8
-#define MAX_BLOCKS              (MAX_BLOCKS_PER_SM * 30)
-#define WARP_SIZE               32
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-void smvm_csr_f(float *d_y, float *d_x, float *d_data, unsigned int *d_rowPtr, unsigned int *d_colIdx, unsigned int num_rows);
-void smvm_cudpp_f(float *d_y, float *d_x, float *h_data, unsigned int *h_rowPtr, unsigned int *h_colIdx, unsigned int num_rows, unsigned int num_nonzeros);
-
-#ifdef __cplusplus
-}
-#endif
-#endif
diff --git a/examples/src/smvm/texture.h b/examples/src/smvm/texture.h
deleted file mode 100644
--- a/examples/src/smvm/texture.h
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
- *  Copyright 2008-2009 NVIDIA Corporation
- *
- *  Licensed under the Apache License, Version 2.0 (the "License");
- *  you may not use this file except in compliance with the License.
- *  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-
-
-#ifndef __TEXTURE_H__
-#define __TEXTURE_H__
-
-#include "utils.h"
-#include <cuda_runtime_api.h>
-
-/*
- * These textures are (optionally) used to cache the 'x' vector in y += A*x
- * Use int2 to pull doubles through texture cache.
- */
-texture<float,1> tex_x_float;
-texture<int2,1>  tex_x_double;
-
-inline void
-bind_x(const float * x)
-{
-    size_t offset = size_t(-1);
-
-    CUDA_SAFE_CALL(cudaBindTexture(&offset, tex_x_float, x));
-    if (offset != 0)
-        assert(!"memory is not aligned, refusing to use texture cache");
-}
-
-inline void
-bind_x(const double * x)
-{
-    size_t offset = size_t(-1);
-
-    CUDA_SAFE_CALL(cudaBindTexture(&offset, tex_x_double, x));
-    if (offset != 0)
-        assert(!"memory is not aligned, refusing to use texture cache");
-}
-
-/*
- * NOTE: the parameter is unused only to distinguish the two unbind functions
- */
-inline void
-unbind_x(const float *)
-{
-    CUDA_SAFE_CALL(cudaUnbindTexture(tex_x_float));
-}
-
-inline void
-unbind_x(const double *)
-{
-    CUDA_SAFE_CALL(cudaUnbindTexture(tex_x_double));
-}
-
-template <bool UseCache>
-__inline__ __device__ float
-fetch_x(const int& i, const float * x)
-{
-    if (UseCache) return tex1Dfetch(tex_x_float, i);
-    else          return x[i];
-}
-
-#ifndef CUDA_NO_SM_13_DOUBLE_INTRINSICS
-template <bool UseCache>
-__inline__ __device__ double fetch_x(const int& i, const double * x)
-{
-#if __CUDA_ARCH__ < 130
-#error "double precision require Compute Compatibility 1.3 or greater"
-#endif
-    if (UseCache)
-    {
-        int2 v = tex1Dfetch(tex_x_double, i);
-        return __hiloint2double(v.y, v.x);
-    }
-    else
-    {
-        return x[i];
-    }
-}
-#endif
-
-#endif  // __TEXTURE_H__
-
diff --git a/examples/src/sort/Makefile b/examples/src/sort/Makefile
deleted file mode 100644
--- a/examples/src/sort/Makefile
+++ /dev/null
@@ -1,19 +0,0 @@
-#
-# Baking!
-#
-
-# ------------------------------------------------------------------------------
-# Input files
-# ------------------------------------------------------------------------------
-EXECUTABLE      := sort
-
-HSMAIN          := Sort.chs
-CUFILES         := radix_sort.cu
-
-USECUDPP        := 1
-EXTRALIBS       := stdc++
-
-# ------------------------------------------------------------------------------
-# Haskell/CUDA build system
-# ------------------------------------------------------------------------------
-include ../../common/common.mk
diff --git a/examples/src/sort/Sort.chs b/examples/src/sort/Sort.chs
deleted file mode 100644
--- a/examples/src/sort/Sort.chs
+++ /dev/null
@@ -1,98 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
---------------------------------------------------------------------------------
---
--- Module    : Sort
--- Copyright : (c) 2009 Trevor L. McDonell
--- License   : BSD
---
--- Reduce a vector of (key,value) pairs
---
---------------------------------------------------------------------------------
-
-module Main where
-
-#include "sort.h"
-
-import C2HS
-import RandomVector
-
-import Data.Ord
-import Data.List
-import Control.Monad
-import qualified Foreign.CUDA as C
-
-
-
---------------------------------------------------------------------------------
--- CUDA
-
-test_f :: (Storable a, Eq a) => [(Float,a)] -> IO Bool
-test_f kv =
-  let l     = length kv
-      (k,v) = unzip kv
-  in
-  C.withListArray k $ \d_k ->
-  C.withListArray v $ \d_v -> do
-
-    sort_f d_k d_v (length kv)
-    res <- liftM2 zip (C.peekListArray l d_k) (C.peekListArray l d_v)
-    return (res == sortBy (comparing fst) kv)
-
-
-test_i :: (Storable a, Eq a) => [(Int,a)] -> IO Bool
-test_i kv =
-  let l     = length kv
-      (k,v) = unzip kv
-  in
-  C.withListArray k $ \d_k ->
-  C.withListArray v $ \d_v -> do
-
-    sort_ui d_k d_v (length kv)
-    res <- liftM2 zip (C.peekListArray l d_k) (C.peekListArray l d_v)
-    return (res == sortBy (comparing fst) kv)
-
-
-{# fun unsafe sort_f
-  { withDP* `C.DevicePtr Float'
-  , withDP* `C.DevicePtr a'
-  ,         `Int'
-  } -> `()' #}
-  where
-    withDP p a = C.withDevicePtr p $ \p' -> a (castPtr p')
-
-{# fun unsafe sort_ui
-  { withDP* `C.DevicePtr Int'
-  , withDP* `C.DevicePtr a'
-  ,         `Int'
-  } -> `()' #}
-  where
-    withDP p a = C.withDevicePtr p $ \p' -> a (castPtr p')
-
---
--- I don't need to learn template haskell or quick check... nah, not at all...
---
-main :: IO ()
-main = do
-  f <- randomList  10000
-  i <- randomListR 10000 (0,1000)
-
-  putStr "Test (float,int): "
-  test_f (zip f i) >>= \r -> case r of
-    True -> putStrLn "Ok!"
-    _    -> putStrLn "INVALID!"
-
-  putStr "Test (float,float): "
-  test_f (zip f f) >>= \r -> case r of
-    True -> putStrLn "Ok!"
-    _    -> putStrLn "INVALID!"
-
-  putStr "Test (int,int): "
-  test_i (zip i i) >>= \r -> case r of
-    True -> putStrLn "Ok!"
-    _    -> putStrLn "INVALID!"
-
-  putStr "Test (int,float): "
-  test_i (zip i f) >>= \r -> case r of
-    True -> putStrLn "Ok!"
-    _    -> putStrLn "INVALID!"
-
diff --git a/examples/src/sort/radix_sort.cu b/examples/src/sort/radix_sort.cu
deleted file mode 100644
--- a/examples/src/sort/radix_sort.cu
+++ /dev/null
@@ -1,61 +0,0 @@
-/* -----------------------------------------------------------------------------
- *
- * Module    : Sort
- * Copyright : (c) 2009 Trevor L. McDonell
- * License   : BSD
- *
- *----------------------------------------------------------------------------*/
-
-#include <cudpp.h>
-
-#include "sort.h"
-
-
-template <typename T> CUDPPDatatype static getType();
-template <> CUDPPDatatype getType<float>()        { return CUDPP_FLOAT; }
-template <> CUDPPDatatype getType<unsigned int>() { return CUDPP_UINT;  }
-
-
-/*
- * In-place radix sort of values or key-value pairs. Values can be any 32-bit
- * type, as their payload is never inspected or manipulated.
- */
-template <typename T>
-static void
-radix_sort
-(
-    unsigned int        length,
-    T                   *d_keys,
-    void                *d_vals = NULL,
-    int                 bits    = 8 * sizeof(T)
-)
-{
-    CUDPPHandle         plan;
-    CUDPPConfiguration  cp;
-
-    cp.datatype  = getType<T>();
-    cp.algorithm = CUDPP_SORT_RADIX;
-    cp.options   = (d_vals != NULL) ? CUDPP_OPTION_KEY_VALUE_PAIRS
-                                    : CUDPP_OPTION_KEYS_ONLY;
-
-    cudppPlan(&plan, cp, length, 1, 0);
-    cudppSort(plan, d_keys, d_vals, bits, length);
-
-    cudppDestroyPlan(plan);
-}
-
-
-/* -----------------------------------------------------------------------------
- * Instances
- * ---------------------------------------------------------------------------*/
-
-void sort_f(float *d_keys, void *d_vals, unsigned int length)
-{
-    radix_sort<float>(length, d_keys, d_vals);
-}
-
-void sort_ui(unsigned int *d_keys, void *d_vals, unsigned int length)
-{
-    radix_sort<unsigned int>(length, d_keys, d_vals);
-}
-
diff --git a/examples/src/sort/sort.h b/examples/src/sort/sort.h
deleted file mode 100644
--- a/examples/src/sort/sort.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/* -----------------------------------------------------------------------------
- *
- * Module    : Sort
- * Copyright : (c) 2009 Trevor L. McDonell
- * License   : BSD
- *
- * ---------------------------------------------------------------------------*/
-
-#ifndef __SORT_PRIV_H__
-#define __SORT_PRIV_H__
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-void sort_f(float *d_keys, void *d_vals, unsigned int length);
-void sort_ui(unsigned int *d_keys, void *d_vals, unsigned int length);
-
-#ifdef __cplusplus
-}
-#endif
-#endif
-
diff --git a/examples/src/vectorAddDrv/Makefile b/examples/src/vectorAddDrv/Makefile
deleted file mode 100644
--- a/examples/src/vectorAddDrv/Makefile
+++ /dev/null
@@ -1,18 +0,0 @@
-#
-# Baking!
-#
-
-# ------------------------------------------------------------------------------
-# Input files
-# ------------------------------------------------------------------------------
-EXECUTABLE	:= vectorAddDrv
-
-HSMAIN		:= VectorAdd.hs
-PTXFILES	:= vector_add.cu
-
-USEDRVAPI	:= 1
-
-# ------------------------------------------------------------------------------
-# Haskell/CUDA build system
-# ------------------------------------------------------------------------------
-include ../../common/common.mk
diff --git a/examples/src/vectorAddDrv/VectorAdd.hs b/examples/src/vectorAddDrv/VectorAdd.hs
deleted file mode 100644
--- a/examples/src/vectorAddDrv/VectorAdd.hs
+++ /dev/null
@@ -1,121 +0,0 @@
---------------------------------------------------------------------------------
---
--- Module    : VectorAdd
--- Copyright : (c) 2009 Trevor L. McDonell
--- License   : BSD
---
--- Element-wise addition of two vectors
---
---------------------------------------------------------------------------------
-
-module Main where
-
--- Friends
-import RandomVector
-
--- System
-import Numeric
-import Control.Monad
-import Control.Exception
-import Data.Array.Storable
-import qualified Data.ByteString.Char8 as B
-import qualified Foreign.CUDA.Driver   as CUDA
-
-
---------------------------------------------------------------------------------
--- Reference implementation
---------------------------------------------------------------------------------
-
-testRef :: (Num e, Storable e) => Vector e -> Vector e -> IO (Vector e)
-testRef xs ys = do
-  (i,j) <- getBounds xs
-  res   <- newArray_ (i,j)
-  forM_ [i..j] (add res)
-  return res
-  where
-    add res idx = do
-      a <- readArray xs idx
-      b <- readArray ys idx
-      writeArray res idx (a+b)
-
---------------------------------------------------------------------------------
--- CUDA
---------------------------------------------------------------------------------
-
---
--- Initialise the device and context. Load the PTX source code, and return a
--- reference to the kernel function.
---
-initCUDA :: IO (CUDA.Context, CUDA.Fun)
-initCUDA = do
-  CUDA.initialise []
-  dev     <- CUDA.device 0
-  ctx     <- CUDA.create dev []
-  ptx     <- B.readFile "data/vector_add.ptx"
-  (mdl,r) <- CUDA.loadDataEx ptx [CUDA.MaxRegisters 32]
-  fun     <- CUDA.getFun mdl "VecAdd"
-
-  putStrLn $ ">> PTX JIT compilation (" ++ showFFloat (Just 2) (CUDA.jitTime r) " ms)"
-  B.putStrLn (CUDA.jitInfoLog r)
-  return (ctx,fun)
-
-
---
--- Run the test
---
-testCUDA :: (Num e, Storable e) => Vector e -> Vector e -> IO (Vector e)
-testCUDA xs ys = do
-  (m,n)   <- getBounds xs
-  let len = (n-m+1)
-
-  -- Initialise environment and copy over test data
-  --
-  putStrLn ">> Initialising"
-  bracket initCUDA (\(ctx,_) -> CUDA.destroy ctx) $ \(_,addVec) -> do
-
-  -- Allocate some device memory. This will be freed once the computation
-  -- terminates, either normally or by exception.
-  --
-  putStrLn ">> Executing"
-  CUDA.allocaArray len $ \dx -> do
-  CUDA.allocaArray len $ \dy -> do
-  CUDA.allocaArray len $ \dz -> do
-
-  -- Copy over the data
-  --
-  withVector xs $ \p -> CUDA.pokeArray len p dx
-  withVector ys $ \p -> CUDA.pokeArray len p dy
-
-  -- Setup and execute the kernel (repeat test many times...)
-  --
-  CUDA.setParams     addVec [CUDA.VArg dx, CUDA.VArg dy, CUDA.VArg dz, CUDA.IArg len]
-  CUDA.setBlockShape addVec (128,1,1)
-  CUDA.launch        addVec ((len+128-1) `div` 128, 1) Nothing
-  CUDA.sync
-
-  -- Copy back result
-  --
-  zs <- newArray_ (m,n)
-  withVector zs $ \p -> CUDA.peekArray len dz p
-  return zs
-
-
---------------------------------------------------------------------------------
--- Test & Verify
---------------------------------------------------------------------------------
-
-main :: IO ()
-main = do
-  putStrLn "== Generating random vectors"
-  xs  <- randomArr (1,10000) :: IO (Vector Float)
-  ys  <- randomArr (1,10000) :: IO (Vector Float)
-
-  putStrLn "== Generating reference solution"
-  ref <- testRef  xs ys
-
-  putStrLn "== Testing CUDA"
-  arr <- testCUDA xs ys
-
-  putStr   "== Validating: "
-  verify ref arr >>= \rv -> putStrLn $ if rv then "Ok!" else "INVALID!"
-
diff --git a/examples/src/vectorAddDrv/vector_add.cu b/examples/src/vectorAddDrv/vector_add.cu
deleted file mode 100644
--- a/examples/src/vectorAddDrv/vector_add.cu
+++ /dev/null
@@ -1,18 +0,0 @@
-/*
- * Name      : VectorAdd
- * Copyright : (c) 2009 Trevor L. McDonell
- * License   : BSD
- *
- * Element-wise addition of two (floating-point) vectors
- */
-
-
-extern "C"
-__global__ void VecAdd(const float *xs, const float *ys, float *out, const unsigned int N)
-{
-    unsigned int idx = blockDim.x * blockIdx.x + threadIdx.x;
-
-    if (idx < N)
-        out[idx] = xs[idx] + ys[idx];
-}
-
