Ocsinventory-Unix-Agent-2.0.5004075500017500001750000000000001173606116100155305ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib004075500017500001750000000000001173606116100162765ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory004075500017500001750000000000001173606116100210005ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent004075500017500001750000000000001173606116100220365ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend004075500017500001750000000000001173606116100233655ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS004075500017500001750000000000001173606116100237065ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/AIX004075500017500001750000000000001173606116100243275ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/AIX/Networks.pm010064400017500001750000000055201173606111100265520ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::AIX::Networks; use strict; sub check { can_load("Net::IP qw(:PROC)"); } sub run { my $params = shift; my $common = $params->{common}; my %info; my $ifname; foreach (`lscfg -v -l en*`) { $ifname = "en".$1 if /^\s+ent(\d+)\s+\S+\s+(.+)/; if ($ifname) { $info{$ifname}{type} = $2; $info{$ifname}{status} = "Down"; # default is down if (/Network Address\.+(\w{2})(\w{2})(\w{2})(\w{2})(\w{2})(\w{2})/) { $info{$ifname}{macaddr} = "$1:$2:$3:$4:$5:$6" } } } # uncomment if you prefere verbose information about the link # e.g: 0xe8120000:0xe80c0000:741:3:512:1024:8192:Auto_Negotiation:2048:no:0x000000000000:10000:10:1000:yes:yes:no:no:yes:2048 # etherchannel interfaces #my @lsdev=`lsdev -Cc adapter -s pseudo -t ibm_ech`; # foreach (`lsdev -Cc adapter`) { # next unless /^ent(\d*)\s*(\w*)\s*.*/; # my $ifname = "en".$1; # my $tmpifname = "ent".$1; # #@lsattr=`lsattr -EOl $1 -a 'adapter_names mode netaddr'`; # foreach (`lsattr -EOl $tmpifname`) { # if (/(.+):(.+):(.*)/) { # $info{$ifname}{type}="EtherChannel with : ".$1." (mode :".$2.", ping :".$3.")"; # } # } # $info{$ifname}{status} = 'Down'; # The same # } foreach (split / /,`ifconfig -l`) { # AIX: network interface naming is enX if(/^(en\d+)/) { my $ifname = $1; foreach (`lsattr -E -l $ifname`) { $info{$ifname}{ip} = $1 if /^netaddr \s*([\d*\.?]*).*/i; $info{$ifname}{netmask} = $1 if /^netmask\s*([\d*\.?]*).*/i; $info{$ifname}{status} = $1 if /^state\s*(\w*).*/i; } } } #Looking for the gateways # AIX: the route command doesn't exist. We use netstat -rn instead foreach (`netstat -rn`) { if (/\S+\s+(\S+)\s+\S+\s+\S+\s+\S+\s+(\S+)/) { my $ifname = $2; my $gateway = $1; if (exists ($info{$ifname})) { $info{$ifname}{gateway} = $gateway; } } } foreach my $ifname (sort keys %info) { my $description = $ifname; my $type = $info{$ifname}{type}; my $macaddr = $info{$ifname}{macaddr}; my $status = $info{$ifname}{status}; my $ipaddress = $info{$ifname}{ip}; my $ipmask = $info{$ifname}{netmask}; my $gateway = $info{$ifname}{gateway}; my $ipdhcp = "No"; my $ipsubnet; $status = "Down" unless $ipaddress; # Retrieving ip of the subnet for each interface if($ipmask and $ipaddress) { # To retrieve the subnet for this iface my $binip = &ip_iptobin ($ipaddress ,4); my $binmask = &ip_iptobin ($ipmask ,4); my $subnet = $binip & $binmask; $ipsubnet = ip_bintoip($subnet,4); } $common->addNetwork({ DESCRIPTION => $description, IPADDRESS => $ipaddress, IPDHCP => $ipdhcp, IPGATEWAY => $gateway, IPMASK => $ipmask, IPSUBNET => $ipsubnet, MACADDR => $macaddr, STATUS => $status, TYPE => $type, }); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/AIX/Storages.pm010064400017500001750000000115521173606111100265270ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::AIX::Storages; use strict; #use warning; sub check { `which lsdev 2>&1`; return if($? >> 8)!=0; `which lsattr 2>&1`; ($? >> 8)?0:1} sub run { my $params = shift; my $common = $params->{common}; my(@disques, $device, $model, $capacity, $description, $manufacturer, $n, $i, $flag, @rep, @scsi, @values, @lsattr, $FRU, $status); #lsvpd my @lsvpd = `lsvpd`; s/^\*// for (@lsvpd); #SCSI disks $n=0; @scsi=`lsdev -Cc disk -s scsi -F 'name:description'`; for(@scsi){ chomp $scsi[$n]; /^(.+):(.+)/; $device=$1; $description=$2; @lsattr=`lsattr -EOl $device -a 'size_in_mb'`; for (@lsattr){ if (! /^#/ ){ $capacity= $_; chomp($capacity);$capacity =~ s/(\s+)$//; } } for (@lsvpd){ if(/^AX $device/){$flag=1} if ((/^MF (.+)/) && $flag){$manufacturer=$1;chomp($manufacturer);$manufacturer =~ s/(\s+)$//;} if ((/^TM (.+)/) && $flag){$model=$1;chomp($model);$model =~ s/(\s+)$//;} if ((/^FN (.+)/) && $flag){$FRU=$1;chomp($FRU);$FRU =~ s/(\s+)$//;$manufacturer .= ",FRU number :".$FRU} if ((/^FC .+/) && $flag) {$flag=0;last} } $common->addStorages({ NAME => $device, MANUFACTURER => $manufacturer, MODEL => $model, DESCRIPTION => $description, TYPE => 'disk', DISKSIZE => $capacity }); $n++; } #Virtual disks @scsi= (); @lsattr= (); $n=0; @scsi=`lsdev -Cc disk -s vscsi -F 'name:description'`; for(@scsi){ chomp $scsi[$n]; /^(.+):(.+)/; $device=$1; $description=$2; @lsattr=`lspv $device 2>&1`; for (@lsattr){ if ( ! ( /^0516-320.*/ ) ) { if (/TOTAL PPs:/ ) { ($capacity,$model) = split(/\(/, $_); ($capacity,$model) = split(/ /,$model); } } else { $capacity=0; } } $common->addStorages({ MANUFACTURER => "VIO Disk", MODEL => "Virtual Disk", DESCRIPTION => $description, TYPE => 'disk', NAME => $device, DISKSIZE => $capacity }); $n++; } #CDROM @scsi= (); @lsattr= (); @scsi=`lsdev -Cc cdrom -s scsi -F 'name:description:status'`; $i=0; for(@scsi){ chomp $scsi[$i]; /^(.+):(.+):(.+)/; $device=$1; $status=$3; $description=$2; $capacity=""; if (($status =~ /Available/)){ @lsattr=`lsattr -EOl $device -a 'size_in_mb'`; for (@lsattr){ if (! /^#/ ){ $capacity= $_; chomp($capacity);$capacity =~ s/(\s+)$//; } } $description = $scsi[$n]; for (@lsvpd){ if(/^AX $device/){$flag=1} if ((/^MF (.+)/) && $flag){$manufacturer=$1;chomp($manufacturer);$manufacturer =~ s/(\s+)$//;} if ((/^TM (.+)/) && $flag){$model=$1;chomp($model);$model =~ s/(\s+)$//;} if ((/^FN (.+)/) && $flag){$FRU=$1;chomp($FRU);$FRU =~ s/(\s+)$//;$manufacturer .= ",FRU number :".$FRU} if ((/^FC .+/) && $flag) {$flag=0;last} } $common->addStorages({ NAME => $device, MANUFACTURER => $manufacturer, MODEL => $model, DESCRIPTION => $description, TYPE => 'cd', DISKSIZE => $capacity }); $n++; } $i++; } #TAPE @scsi= (); @lsattr= (); @scsi=`lsdev -Cc tape -s scsi -F 'name:description:status'`; $i=0; for(@scsi){ chomp $scsi[$i]; /^(.+):(.+):(.+)/; $device=$1; $status=$3; $description=$2; $capacity=""; if (($status =~ /Available/)){ @lsattr=`lsattr -EOl $device -a 'size_in_mb'`; for (@lsattr){ if (! /^#/ ){ $capacity= $_; chomp($capacity);$capacity =~ s/(\s+)$//; } } for (@lsvpd){ if(/^AX $device/){$flag=1} if ((/^MF (.+)/) && $flag){$manufacturer=$1;chomp($manufacturer);$manufacturer =~ s/(\s+)$//;} if ((/^TM (.+)/) && $flag){$model=$1;chomp($model);$model =~ s/(\s+)$//;} if ((/^FN (.+)/) && $flag){$FRU=$1;chomp($FRU);$FRU =~ s/(\s+)$//;$manufacturer .= ",FRU number :".$FRU} if ((/^FC .+/) && $flag) {$flag=0;last} } $common->addStorages({ NAME => $device, MANUFACTURER => $manufacturer, MODEL => $model, DESCRIPTION => $description, TYPE => 'tape', DISKSIZE => $capacity }); $n++; } $i++; } #Disquette @scsi= (); @lsattr= (); @scsi=`lsdev -Cc diskette -F 'name:description:status'`; $i=0; for(@scsi){ chomp $scsi[$i]; /^(.+):(.+):(.+)/; $device=$1; $status=$3; $description=$2; $capacity=""; if (($status =~ /Available/)){ @lsattr=`lsattr -EOl $device -a 'fdtype'`; for (@lsattr){ if (! /^#/ ){ $capacity= $_; chomp($capacity);$capacity =~ s/(\s+)$//; } } #On le force en retour taille disquette non affichable $capacity =""; $common->addStorages({ NAME => $device, MANUFACTURER => 'N/A', MODEL => 'N/A', DESCRIPTION => $description, TYPE => 'floppy', DISKSIZE => '' }); $n++; } $i++; } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/AIX/Slots.pm010064400017500001750000000013761173606111100260470ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::AIX::Slots; use strict; sub check {can_run("lsdev")} sub run { my $params = shift; my $common = $params->{common}; my $description; my $designation; my $name; my $status; my @slot; my $flag=0; @slot=`lsdev -Cc bus -F 'name:description'`; for(@slot){ /^(.+):(.+)/; $name = $1; $status = 'available'; $designation = $2; $flag=0; my @lsvpd = `lsvpd`; s/^\*// for (@lsvpd); for (@lsvpd){ if ((/^AX $name/) ) {$flag=1} if ((/^YL (.+)/) && ($flag)){ $description = $2; } if ((/^FC .+/) && $flag) {$flag=0;last} } $common->addSlot({ DESCRIPTION => $description, DESIGNATION => $designation, NAME => $name, STATUS => $status, }); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/AIX/Sounds.pm010064400017500001750000000006411173606111100262100ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::AIX::Sounds; use strict; sub check {can_run("lsdev")} sub run { my $params = shift; my $common = $params->{common}; for(`lsdev -Cc adapter -F 'name:type:description'`){ if(/audio/i){ if(/^\S+\s([^:]+):\s*(.+?)(?:\(([^()]+)\))?$/i){ $common->addSound({ 'DESCRIPTION' => $3, 'MANUFACTURER' => $2, 'NAME' => $1, }); } } } } 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/AIX/IPv4.pm010064400017500001750000000007331173606111100255210ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::AIX::IPv4; sub check {can_run("ifconfig")} # Initialise the distro entry sub run { my $params = shift; my $common = $params->{common}; my @ip; #Looking for ip addresses with ifconfig, except loopback # AIX need -a option for(`ifconfig -a`){#ifconfig in the path # AIX ligne inet if(/^\s*inet\s+(\S+).*/){($1=~/127.+/)?next:push @ip, $1}; } $ip=join "/", @ip; $common->setHardware({IPADDR => $ip}); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/AIX/Modems.pm010064400017500001750000000006361173606111100261650ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::AIX::Modems; use strict; sub check {can_run("lsdev")} sub run { my $params = shift; my $common = $params->{common}; for(`lsdev -Cc adapter -F 'name:type:description'`){ if(/modem/i && /\d+\s(.+):(.+)$/){ my $name = $1; my $description = $2; $common->addModems({ 'DESCRIPTION' => $description, 'NAME' => $name, }); } } } 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/AIX/Hardware.pm010064400017500001750000000034561173606111100265010ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::AIX::Hardware; use strict; sub check { 1 } # NOTE: # Q: SSN can also use `uname -n`? What is the best? # A: uname -n since it doesn't need root priv sub run { my $params = shift; my $common = $params->{common}; # Using "type 0" section my( $SystemSerial , $SystemModel, $SystemManufacturer, $BiosManufacturer, $BiosVersion, $BiosDate); #lsvpd my @lsvpd = `lsvpd`; # Remove * (star) at the beginning of lines s/^\*// for (@lsvpd); #Search Firmware Hard my $flag=0; my $fw; for (@lsvpd){ if (/^DS Platform Firmware/) { $flag=1 }; if ( ($flag) && /^RM (.+)/) {$fw=$1;chomp($fw);$fw =~ s/(\s+)$//g;last}; } $flag=0; for (@lsvpd){ if (/^DS System Firmware/) { $flag=1 }; if ( ($flag) && /^RM (.+)/) {$BiosVersion=$1;chomp($BiosVersion);$BiosVersion =~ s/(\s+)$//g;last}; } $flag=0; for (@lsvpd){ if (/^DS System VPD/) { $flag=1 }; if ( ($flag) && /^TM (.+)/) {$SystemModel=$1;chomp($SystemModel);$SystemModel =~ s/(\s+)$//g;}; if ( ($flag) && /^SE (.+)/) {$SystemSerial=$1;chomp($SystemSerial);$SystemSerial =~ s/(\s+)$//g;}; if ( ($flag) && /^FC .+/) {$flag=0;last} } # Fetch the serial number like prtconf do if (! $SystemSerial) { $flag=0; foreach (`lscfg -vpl sysplana00`) { if ($flag) { if (/\.+(\S*?)$/) { $SystemSerial = $1; } last; } else { $flag = 1 if /\s+System\ VPD/; } } } $BiosManufacturer='IBM'; $SystemManufacturer='IBM'; $BiosVersion .= "(Firmware :".$fw.")"; # Writing data $common->setBios ({ SMANUFACTURER => $SystemManufacturer, SMODEL => $SystemModel, SSN => $SystemSerial, BMANUFACTURER => $BiosManufacturer, BVERSION => $BiosVersion, BDATE => $BiosDate, }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/AIX/Memory.pm010064400017500001750000000030351173606111100262050ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::AIX::Memory; use strict; sub check { 1 } # TODO create a better check here sub run { my $params = shift; my $common = $params->{common}; my $capacity; my $description; my $numslots; my $speed; my $type; my $n; my $serial; my $mversion; my $caption; my $flag=0; #lsvpd my @lsvpd = `lsvpd`; # Remove * (star) at the beginning of lines s/^\*// for (@lsvpd); $numslots = -1; for(@lsvpd){ if(/^DS Memory DIMM/){ $description = $_; $flag=1; (defined($n))?($n++):($n=0); $description =~ s/DS //; $description =~ s/\n//; } if((/^SZ (.+)/) && ($flag)) {$capacity = $1;} if((/^PN (.+)/) && ($flag)) {$type = $1;} # localisation slot dans type if((/^YL\s(.+)/) && ($flag)) {$caption = "Slot ".$1;} if((/^SN (.+)/) && ($flag)) {$serial = $1;} if((/^VK (.+)/) && ($flag)) {$mversion = $1}; #print $numslots."\n"; # On rencontre un champ FC alors c'est la fin pour ce device if((/^FC .+/) && ($flag)) { $flag=0; $numslots = $numslots +1; $common->addMemory({ CAPACITY => $capacity, DESCRIPTION => $description, CAPTION => $caption, NUMSLOTS => $numslots, VERSION => $mversion, TYPE => $type, SERIALNUMBER=> $serial, }) }; } $numslots = $numslots +1; # End of Loop # The last *FC ???????? missing $common->addMemory({ CAPACITY => $capacity, DESCRIPTION => $description, CAPTION => $caption, NUMSLOTS => $numslots, VERSION => $mversion, TYPE => $type, SERIALNUMBER=> $serial, }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/AIX/Controller.pm010064400017500001750000000012441173606111100270600ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::AIX::Controller; use strict; sub check { return unless can_run('lsdev'); my @lsdev = `lsdev -Cc adapter -F 'name:type:description'`; return 1 if @lsdev; 0 } sub run { my $params = shift; my $common = $params->{common}; my $name; my $type; my $manufacturer; for(`lsdev -Cc adapter -F 'name:type:description'`){ chomp($_); /^(.+):(.+):(.+)/; my $name = $1; my $type = $2; my $manufacturer = $3; $common->addController({ 'NAME' => $name, 'MANUFACTURER' => $manufacturer, 'TYPE' => $type, }); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/AIX/CPU.pm010064400017500001750000000041421173606111100253640ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::AIX::CPU; use strict; use warnings; sub check { 1 } # try to simulate a modern lsattr output on AIX4 sub lsattrForAIX4 { my $device = shift; my @lsattr; my @lsattrtemp=`lsattr -EOl $device -a 'state:type'`; for (@lsattrtemp) { chomp; my $frequency; my (undef,$type)=split /:/; # # On older models, frequency is based on cpu model and uname # if ( $type eq "PowerPC" or $type eq "PowerPC_601" or $type eq "PowerPC_604") { my $uname=`uname -m`; $frequency=112000000 if ($uname=~/E1D|EAD|C1D|R04|C4D|R4D/); $frequency=133000000 if ($uname=~/34M/); $frequency=150000000 if ($uname=~/N4D/); $frequency=200000000 if ($uname=~/X4M|X4D/); $frequency=225000000 if ($uname=~/N4E|K04|K44/); $frequency=320000000 if ($uname=~/N4F/); $frequency=360000000 if ($uname=~/K45/); } elsif ( $type eq "PowerPC_RS64_III" ) { $frequency=400000000; } elsif ( $type eq "PowerPC_620" ) { $frequency=172000000; } else { $frequency=225000000; } push @lsattr,"$device:$frequency\n"; } } sub run { my $params = shift; my $common = $params->{common}; # TODO Need to be able to register different CPU speed! my $processort; my $processorn; my $processors; my $frequency; my @lsdev; my @lsattr; #lsdev -Cc processor -F name #lsattr -EOl proc16 my $aixversion=`uname -v`; for (`lsdev -Cc processor -F name`){ chomp(my $device = $_); if ( $aixversion < 5 ) { @lsattr=lsattrForAIX4($device); } else { @lsattr=`lsattr -EOl $device -a 'state:type:frequency'`; } for (@lsattr) { if ( ! /^#/ && /(.+):(.+):(.+)/ ) { $processorn++; $processort=$2; if ( ($3 % 1000000) >= 50000){ $processors=int (($3/1000000) +1); } else { $processors=int (($3/1000000)); } } } } $processort =~ s/_/ /; $common->setHardware({ PROCESSORT => $processort, PROCESSORN => $processorn, PROCESSORS => $processors }); } 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/AIX/Mem.pm010064400017500001750000000014221173606111100254510ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::AIX::Mem; use strict; sub check { return unless can_run("lsdev"); return unless can_run("which"); return unless can_run("lsattr"); } sub run { my $params = shift; my $common = $params->{common}; my $memory; my $swap; #Memory informations #lsdev -Cc memory -F 'name' -t totmem #lsattr -EOlmem0 my (@lsdev, @lsattr, @grep); $memory=0; @lsdev=`lsdev -Cc memory -F 'name' -t totmem`; for (@lsdev){ @lsattr=`lsattr -EOl$_`; for (@lsattr){ if (! /^#/){ /^(.+):(.+)/; $memory += $2; } } } #Paging Space @grep=`lsps -s`; for (@grep){ if ( ! /^Total/){ /^\s*(\d+)\w*\s+\d+.+/; $swap=$1; } } $common->setHardware({ MEMORY => $memory, SWAP => $swap }); } 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/AIX/Software.pm010064400017500001750000000012451173606111100265300ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::AIX::Software; use strict; use warnings; sub check { my $params = shift; # Do not run an package inventory if there is the --nosoft parameter return if ($params->{config}->{nosoft}); return unless can_run("lslpp"); 1; } sub run { my $params = shift; my $common = $params->{common}; my @list; my $buff; foreach (`lslpp -c -l`) { my @entry = split /:/,$_; next unless (@entry); next unless ($entry[1]); next if $entry[1] =~ /^device/; $common->addSoftware({ 'COMMENTS' => $entry[6], 'FOLDER' => $entry[0], 'NAME' => $entry[1], 'VERSION' => $entry[2], }); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/AIX/Users.pm010064400017500001750000000007151173606111100260400ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::AIX::Users; sub check { # Useless check for a posix system i guess my @who = `who 2>/dev/null`; return 1 if @who; return; } # Initialise the distro entry sub run { my $params = shift; my $common = $params->{common}; my %user; # Logged on users for(`who`){ $user{$1} = 1 if /^(\S+)./; } my $UsersLoggedIn = join "/", keys %user; $common->setHardware ({ USERID => $UsersLoggedIn }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/AIX/Videos.pm010064400017500001750000000006241173606111100261670ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::AIX::Videos; use strict; sub check {can_run("lsdev")} sub run { my $params = shift; my $common = $params->{common}; for(`lsdev -Cc adapter -F 'name:type:description'`){ if(/graphics|vga|video/i){ if(/^\S+\s([^:]+):\s*(.+?)(?:\(([^()]+)\))?$/i){ $common->addVideo({ 'CHIPSET' => $1, 'NAME' => $2, }); } } } } 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/AIX/Domains.pm010064400017500001750000000011161173606111100263250ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::AIX::Domains; use strict; sub run { my $params = shift; my $common = $params->{common}; my $domain; #Domain name open RESOLV, "/etc/resolv.conf"; while(){ if (/^(domain|search)\s+(.+)/){$domain=$2;chomp($domain);} } #If no domain name and no workgroup name (samba), we send "WORKGROUP" #TODO:Check if samba is present and get the windows workgroup or NT domain name unless (defined($domain)){chomp($domain="WORKGROUP");} $domain=~s/^.\.(.)/$1/; $common->setHardware({ WORKGROUP => $domain }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/AIX/Drives.pm010064400017500001750000000015101173606111100261650ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::AIX::Drives; use strict; sub check {can_run("df")} sub run { my $params = shift; my $common = $params->{common}; my $free; my $filesystem; my $total; my $type; my $volumn; my @fs; my @fstype; #Looking for mount points and disk space # Aix option -kP for(`df -kP`) { next if /^Filesystem\s*1024-blocks.*/; if (/^(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\n/) { $type = $1; @fs=`lsfs -c $6`; @fstype = split /:/,$fs[1]; $filesystem = $fstype[2]; $total = sprintf("%i",($2/1024)); $free = sprintf("%i",($4/1024)); $volumn = $6; } next if $filesystem =~ /procfs/; $common->addDrive({ FREE => $free, FILESYSTEM => $filesystem, TOTAL => $total, TYPE => $type, VOLUMN => $volumn }); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic004075500017500001750000000000001173606116100252625ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic/Packaging004075500017500001750000000000001173606116100271465ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic/Packaging/BSDpkg.pm010064400017500001750000000006511173606111100306670ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Generic::Packaging::BSDpkg; sub check {can_run("pkg_info")} sub run { my $params = shift; my $common = $params->{common}; foreach(`pkg_info`){ /^(\S+)-(\d+\S*)\s+(.*)/; my $name = $1; my $version = $2; my $comments = $3; $common->addSoftware({ 'COMMENTS' => $comments, 'NAME' => $name, 'VERSION' => $version }); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic/Packaging/Deb.pm010064400017500001750000000012131173606111100302420ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Generic::Packaging::Deb; use strict; use warnings; sub check { can_run("dpkg") } sub run { my $params = shift; my $common = $params->{common}; # use dpkg-query --show --showformat='${Package}|||${Version}\n' foreach(`dpkg-query --show --showformat='\${Package}---\${Version}---\${Installed-Size}---\${Description}\n'`) { if (/^(\S+)---(\S+)---(\S+)---(.*)/) { $common->addSoftware ({ 'NAME' => $1, 'VERSION' => $2, 'FILESIZE' => $3, 'COMMENTS' => $4, 'FROM' => 'deb' }); } } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic/Packaging/Pacman.pm010064400017500001750000000006021173606111100307500ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Generic::Packaging::Pacman; sub check {can_run("/usr/bin/pacman")} sub run { my $params = shift; my $common = $params->{common}; foreach(`/usr/bin/pacman -Q`){ /^(\S+)\s+(\S+)/; my $name = $1; my $version = $2; $common->addSoftware({ 'NAME' => $name, 'VERSION' => $version }); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic/Packaging/RPM.pm010064400017500001750000000017001173606111100302070ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Generic::Packaging::RPM; use strict; use warnings; sub check { return unless can_run("rpm"); # Some time rpm is a wrapper or an alias for another `rpm --version 2>&1`; return if ($? >> 8)!=0; 1; } sub run { my $params = shift; my $common = $params->{common}; my $logger = $params->{logger}; my @list; my $buff; foreach (`rpm -qa --queryformat "%{NAME}.%{ARCH} %{VERSION}-%{RELEASE} --%{INSTALLTIME:date}-- --%{SIZE}-- %{SUMMARY}\n--\n" 2>/dev/null`) { if (! /^--/) { chomp; $buff .= $_; } elsif ($buff =~ s/^(\S+)\s+(\S+)\s+--(.*)--\s+--(.*)--\s+(.*)//) { $common->addSoftware({ 'NAME' => $1, 'VERSION' => $2, 'INSTALLDATE' => $3, 'FILESIZE' => $4, 'COMMENTS' => $5, 'FROM' => 'rpm' }); } else { $logger->debug("Should never go here!"); $buff = ''; } } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic/Packaging/Gentoo.pm010064400017500001750000000007031173606111100310060ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Generic::Packaging::Gentoo; use strict; use warnings; sub check {can_run("equery")} sub run { my $params = shift; my $common = $params->{common}; # TODO: This had been rewrite from the Linux agent _WITHOUT_ being checked! foreach (`equery list -i`){ if (/^([a-z]\w+-\w+\/\.*)-([0-9]+.*)/) { $common->addSoftware({ 'NAME' => $1, 'VERSION' => $2, }); } } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic/Packaging/ByHand.pm010064400017500001750000000033211173606111100307170ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Generic::Packaging::ByHand; #How does it work ? # #Create a directory called software in place where you have your #"modules.conf" file. #Put your scripts in this directory. #The scripts have to write on the STDIO with the following format : #publisher#software#version#comment # use strict; use warnings; sub check { return(1); 1; } sub run() { my $params = shift; my $common = $params->{common}; my $ligne; my $soft; my $comm; my $version; my $file; my $vendor; my $commentaire; my @dots; #if (!$file || !-d $file) { foreach (@{$common->{config}{etcdir}}) { $file = $_.'/softwares'; last if -d $file; } #} my $logger = $params->{logger}; if ( opendir(my $dh, $file) ) { @dots = readdir($dh); foreach (@dots) { if ( -f $file."/".$_ ) { $comm = $file."/".$_; $logger->debug("Running appli detection scripts from ".$comm); foreach (`$comm`) { $ligne = $_; chomp($ligne); ($vendor,$soft,$version,$commentaire) = split(/\#/,$ligne); $common->addSoftware ({ 'PUBLISHER' => $vendor, 'NAME' => $soft, 'VERSION' => $version, 'FILESIZE' => "", 'COMMENTS' => $commentaire, 'FROM' => 'ByHand' }); } } } closedir $dh; } 1; } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic/Users.pm010064400017500001750000000006271173606111100267750ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Generic::Users; sub check { # Useless check for a posix system i guess my @who = `who 2>/dev/null`; return 1 if @who; return; } # Initialise the distro entry sub run { my $params = shift; my $common = $params->{common}; my %user; # Logged on users for(`who`){ my $user = $1 if /^(\S+)./; $common->addUser ({ LOGIN => $user }); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic/Dmidecode.pm010064400017500001750000000002641173606111100275460ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Generic::Dmidecode; use strict; sub check { return unless -r "/dev/mem"; return unless can_run("dmidecode"); 1; } sub run {} 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic/Lspci.pm010064400017500001750000000001641173606111100267420ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Generic::Lspci; use strict; sub check {can_run("lspci")} sub run {} 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic/Dmidecode004075500017500001750000000000001173606116100271375ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic/Dmidecode/Ports.pm010064400017500001750000000022001173606111100306450ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Generic::Dmidecode::Ports; use strict; sub run { my $params = shift; my $common = $params->{common}; my $dmidecode = `dmidecode`; # TODO retrieve error # some versions of dmidecode do not separate items with new lines # so add a new line before each handle $dmidecode =~ s/\nHandle/\n\nHandle/g; my @dmidecode = split (/\n/, $dmidecode); # add a new line at the end push @dmidecode, "\n"; s/^\s+// for (@dmidecode); my $flag; my $caption; my $description; my $name; my $type; foreach (@dmidecode) { if(/dmi type 8,/i) { $flag = 1; } elsif ($flag && /^$/){ # end of section $flag = 0; $common->addPorts({ CAPTION => $caption, DESCRIPTION => $description, NAME => $name, TYPE => $type, }); $caption = $description = $name = $type = undef; } elsif ($flag) { $caption = $1 if /^external connector type\s*:\s*(.+)/i; $description = $1 if /^internal connector type\s*:\s*(.+)/i; $name = $1 if /^internal reference designator\s*:\s*(.+)/i; $type = $1 if /^port type\s*:\s*(.+)/i; } } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic/Dmidecode/Slots.pm010064400017500001750000000021041173606111100306450ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Generic::Dmidecode::Slots; use strict; sub run { my $params = shift; my $common = $params->{common}; my $dmidecode = `dmidecode`; # some versions of dmidecode do not separate items with new lines # so add a new line before each handle $dmidecode =~ s/\nHandle/\n\nHandle/g; my @dmidecode = split (/\n/, $dmidecode); # add a new line at the end push @dmidecode, "\n"; s/^\s+// for (@dmidecode); my $flag; my $description; my $designation; my $name; my $status; foreach (@dmidecode) { if(/dmi type 9,/i) { $flag=1; } elsif ($flag && /^$/) { $flag=0; $common->addSlot({ DESCRIPTION => $description, DESIGNATION => $designation, NAME => $name, STATUS => $status, }); $description = $designation = $name = $status = undef; } elsif ($flag) { $description = $1 if /^type\s*:\s*(.+)/i; $designation = $1 if /^id\s*:\s*(.+)/i; $name = $1 if /^designation\s*:\s*(.+)/i; $status = $1 if /^current usage\s*:\s*(.+)/i; }; } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic/Dmidecode/Memory.pm010064400017500001750000000026401173606111100310160ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Generic::Dmidecode::Memory; use strict; sub run { my $params = shift; my $common = $params->{common}; my $dmidecode = `dmidecode`; # TODO retrieve error # some versions of dmidecode do not separate items with new lines # so add a new line before each handle $dmidecode =~ s/\nHandle/\n\nHandle/g; my @dmidecode = split (/\n/, $dmidecode); # add a new line at the end push @dmidecode, "\n"; s/^\s+// for (@dmidecode); my $flag; my $capacity; my $speed; my $type; my $description; my $numslot; my $caption; my $serialnumber; foreach (@dmidecode) { if (/dmi type 17,/i) { # begining of Memory Device section $flag = 1; $numslot++; } elsif ($flag && /^$/) { # end of section $flag = 0; $common->addMemory({ CAPACITY => $capacity, DESCRIPTION => $description, CAPTION => $caption, SPEED => $speed, TYPE => $type, NUMSLOTS => $numslot, SERIALNUMBER => $serialnumber, }); $capacity = $description = $caption = $type = $type = $serialnumber = undef; } elsif ($flag) { # in the section $capacity = $1 if /^size\s*:\s*(\S+)/i; $description = $1 if /^Form Factor\s*:\s*(.+)/i; $caption = $1 if /^Locator\s*:\s*(.+)/i; $speed = $1 if /^speed\s*:\s*(.+)/i; $type = $1 if /^type\s*:\s*(.+)/i; $serialnumber = $1 if /^Serial Number\s*:\s*(.+)/i; } } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic/Dmidecode/Bios.pm010064400017500001750000000043231173606111100304420ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Generic::Dmidecode::Bios; use strict; sub run { my $params = shift; my $common = $params->{common}; # Parsing dmidecode output # Using "type 0" section my( $SystemSerial , $SystemModel, $SystemManufacturer, $BiosManufacturer, $BiosVersion, $BiosDate, $AssetTag, $MotherboardManufacturer, $MotherboardModel, $MotherboardSerial ); #System DMI $SystemManufacturer = `dmidecode -s system-manufacturer`; $SystemModel = `dmidecode -s system-product-name`; $SystemSerial = `dmidecode -s system-serial-number`; $AssetTag = `dmidecode -s chassis-asset-tag`; chomp($SystemModel); $SystemModel =~ s/\s+$//g; chomp($SystemManufacturer); $SystemManufacturer =~ s/\s+$//g; chomp($SystemSerial); $SystemSerial =~ s/\s+$//g; chomp($AssetTag); $AssetTag =~ s/\s+$//g; #Motherboard DMI $MotherboardManufacturer = `dmidecode -s baseboard-manufacturer`; $MotherboardModel = `dmidecode -s baseboard-product-name`; $MotherboardSerial = `dmidecode -s baseboard-serial-number`; chomp($MotherboardModel); $MotherboardModel =~ s/\s+$//g; chomp($MotherboardManufacturer); $MotherboardManufacturer =~ s/\s+$//g; chomp($MotherboardSerial); $MotherboardSerial =~ s/\s+$//g; #BIOS DMI $BiosManufacturer = `dmidecode -s bios-vendor`; $BiosVersion = `dmidecode -s bios-version`; $BiosDate = `dmidecode -s bios-release-date`; chomp($BiosManufacturer); $BiosManufacturer =~ s/\s+$//g; chomp($BiosVersion); $BiosVersion =~ s/\s+$//g; chomp($BiosDate); $BiosDate =~ s/\s+$//g; # Some bioses don't provide a serial number so I check for CPU ID (e.g: server from dedibox.fr) my @cpu; if (!$SystemSerial ||$SystemSerial =~ /^0+$/) { @cpu = `dmidecode -t processor`; for (@cpu){ if (/ID:\s*(.*)/i){ $SystemSerial = $1; } } } # Writing data $common->setBios ({ ASSETTAG => $AssetTag, SMANUFACTURER => $SystemManufacturer, SMODEL => $SystemModel, SSN => $SystemSerial, BMANUFACTURER => $BiosManufacturer, BVERSION => $BiosVersion, BDATE => $BiosDate, MMANUFACTURER => $MotherboardManufacturer, MMODEL => $MotherboardModel, MSN => $MotherboardSerial, }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic/Dmidecode/UUID.pm010064400017500001750000000005271173606111100303160ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Generic::Dmidecode::UUID; use strict; sub check { return can_run('dmidecode') } sub run { my $params = shift; my $common = $params->{common}; my $uuid; $uuid = `dmidecode -s system-uuid`; chomp($uuid); $uuid =~ s/\s+$//g; $common->setHardware({ UUID => $uuid, }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic/Ipmi.pm010064400017500001750000000041311173606111100265640ustar00guiguiguigui# # OcsInventory agent - IPMI lan channel report # # Copyright (c) 2008 Jean Parpaillon # # The Intelligent Platform Management Interface (IPMI) specification # defines a set of common interfaces to a computer system which system # administrators can use to monitor system health and manage the # system. The IPMI consists of a main controller called the Baseboard # Management Controller (BMC) and other satellite controllers. # # The BMC can be fetched through client like OpenIPMI drivers or # through the network. Though, the BMC hold a proper MAC address. # # This module reports the MAC address and, if any, the IP # configuration of the BMC. This is reported as a standard NIC. # package Ocsinventory::Agent::Backend::OS::Generic::Ipmi; sub check { return unless can_run("ipmitool"); my @ipmitool = `ipmitool lan print 2> /dev/null`; return unless @ipmitool; } # Initialise the distro entry sub run { my $params = shift; my $common = $params->{common}; my $description; my $ipaddress; my $ipgateway; my $ipmask; my $ipsubnet; my $macaddr; my $status; my $type; foreach (`LANG=C ipmitool lan print 2> /dev/null`) { if (/^IP Address\s+:\s+(\d+\.\d+\.\d+\.\d+)/) { $ipaddress = $1; } if (/^Default Gateway IP\s+:\s+(\d+\.\d+\.\d+\.\d+)/) { $ipgateway = $1; } if (/^Subnet Mask\s+:\s+(\d+\.\d+\.\d+\.\d+)/) { $ipmask = $1; } if (/^MAC Address\s+:\s+([0-9a-f]{2}(:[0-9a-f]{2}){5})/) { $macaddr = $1; } } $description = 'bmc'; my $binip = &ip_iptobin ($ipaddress, 4); my $binmask = &ip_iptobin ($ipmask, 4); my $binsubnet = $binip & $binmask; if (can_load("Net::IP qw(:PROC)")) { $ipsubnet = ip_bintoip($binsubnet, 4); } $status = 1 if $ipaddress != '0.0.0.0'; $type = 'Ethernet'; $common->addNetwork({ DESCRIPTION => $description, IPADDRESS => $ipaddress, IPDHCP => "", IPGATEWAY => $ipgateway, IPMASK => $ipmask, IPSUBNET => $ipsubnet, MACADDR => $macaddr, STATUS => $status?"Up":"Down", TYPE => $type, }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic/Packaging.pm010064400017500001750000000003661173606111100275600ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Generic::Packaging; use strict; sub check { my $params = shift; # Do not run an package inventory if there is the --nosoft parameter return if ($params->{config}->{nosoftware}); 1; } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic/Processes.pm010064400017500001750000000036051173606111100276410ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Generic::Processes; use strict; sub check {can_run("ps")} sub run { my $params = shift; my $common = $params->{common}; my $line; my $begin; my %month = ( 'Jan' => '01', 'Feb' => '02', 'Mar' => '03', 'Apr' => '04', 'May' => '05', 'Jun' => '06', 'Jul' => '07', 'Aug' => '08', 'Sep' => '09', 'Oct' => '10', 'Nov' => '11', 'Dec' => '12', ); my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time); my $the_year=$year+1900; my $os; chomp($os=`uname -s`); if ($os eq "SunOS") { open(PS, "ps -A -o user,pid,pcpu,pmem,vsz,rss,tty,s,stime,time,comm|"); } else { open(PS, "ps aux|"); } while ($line = ) { next if ($. ==1); if ($line =~ /^(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(.*?)\s*$/){ my $user = $1; my $pid= $2; my $cpu= $3; my $mem= $4; my $vsz= $5; my $tty= $7; my $started= $9; my $time= $10; my $cmd= $11; if ($started =~ /^(\w{3})/) { my $d=substr($started, 3); my $m=substr($started, 0,3); $begin=$the_year."-".$month{$m}."-".$d." ".$time; } else { $begin=$the_year."-".$mon."-".$mday." ".$started; } $common->addProcess({ 'USER' => $user, 'PID' => $pid, 'CPUUSAGE' => $cpu, 'MEM' => $mem, 'VIRTUALMEMORY' => $vsz, 'TTY' => $tty, 'STARTED' => $begin, 'CMD' => $cmd }); } } close(PS); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic/Hostname.pm010064400017500001750000000010311173606111100274400ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Generic::Hostname; sub check { return 1 if can_load ("Sys::Hostname"); return 1 if can_run ("hostname"); 0; } # Initialise the distro entry sub run { my $params = shift; my $common = $params->{common}; my $hostname; if (can_load("Sys::Hostname")) { $hostname = Sys::Hostname::hostname(); } else { chomp ( $hostname = `hostname` ); # TODO: This is not generic. } $hostname =~ s/\..*//; # keep just the hostname $common->setHardware ({NAME => $hostname}); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic/Screen.pm010064400017500001750000000475601173606111100271220ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Generic::Screen; # Copyright (C) 2005 Mandriva # Copyright (C) 2007 Gonéri Le Bouder # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation (website: http://www.fsf.org). # # Some part come from Mandriva's (great) monitor-edid # http://svn.mandriva.com/cgi-bin/viewvc.cgi/soft/monitor-edid/trunk/ # use strict; sub check { return unless (can_run("monitor-get-edid-using-vbe") || can_run("monitor-get-edid") || can_run("get-edid")); 1; } sub getEdid { my $raw_edid; # Mandriva $raw_edid = `monitor-get-edid-using-vbe 2>/dev/null`; # Since monitor-edid 1.15, it's possible to retrieve EDID information # through DVI link but we need to use monitor-get-edid if (!$raw_edid) { $raw_edid = `monitor-get-edid 2>/dev/null`; } if (!$raw_edid) { foreach (1..5) { # Sometime get-edid return an empty string... $raw_edid = `get-edid 2>/dev/null`; last if (length($raw_edid) == 128 || length($raw_edid) == 256); } } return unless (length($raw_edid) == 128 || length($raw_edid) == 256); return $raw_edid; } my @CVT_ratios = qw(5/4 4/3 3/2 16/10 15/9 16/9); my @known_ratios = @CVT_ratios; my @edid_info = group_by2( a8 => '_header', a2 => 'manufacturer_name', v => 'product_code', V => 'serial_number', C => 'week', C => 'year', C => 'edid_version', C => 'edid_revision', a => 'video_input_definition', C => 'max_size_horizontal', # in cm, 0 on projectors C => 'max_size_vertical', # in cm, 0 on projectors C => 'gamma', a => 'feature_support', a10 => '_color_characteristics', a3 => 'established_timings', a16 => 'standard_timings', a72 => 'monitor_details', C => 'extension_flag', C => 'checksum', ); my %subfields = ( manufacturer_name => [ group_by2( 1 => '', 5 => '1', 5 => '2', 5 => '3', ) ], video_input_definition => [ group_by2( 1 => 'digital', 1 => 'separate_sync', 1 => 'composite_sync', 1 => 'sync_on_green', 2 => '', 2 => 'voltage_level', ) ], feature_support => [ group_by2( 1 => 'DPMS_standby', 1 => 'DPMS_suspend', 1 => 'DPMS_active_off', 1 => 'rgb', 1 => '', 1 => 'sRGB_compliance', 1 => 'has_preferred_timing', 1 => 'GTF_compliance', ) ], established_timings => [ group_by2( 1 => '720x400_70', 1 => '720x400_88', 1 => '640x480_60', 1 => '640x480_67', 1 => '640x480_72', 1 => '640x480_75', 1 => '800x600_56', 1 => '800x600_60', 1 => '800x600_72', 1 => '800x600_75', 1 => '832x624_75', 1 => '1024x768_87i', 1 => '1024x768_60', 1 => '1024x768_70', 1 => '1024x768_75', 1 => '1280x1024_75', ) ], detailed_timing => [ group_by2( 8 => 'horizontal_active', 8 => 'horizontal_blanking', 4 => 'horizontal_active_hi', 4 => 'horizontal_blanking_hi', 8 => 'vertical_active', 8 => 'vertical_blanking', 4 => 'vertical_active_hi', 4 => 'vertical_blanking_hi', 8 => 'horizontal_sync_offset', 8 => 'horizontal_sync_pulse_width', 4 => 'vertical_sync_offset', 4 => 'vertical_sync_pulse_width', 2 => 'horizontal_sync_offset_hi', 2 => 'horizontal_sync_pulse_width_hi', 2 => 'vertical_sync_offset_hi', 2 => 'vertical_sync_pulse_width_hi', 8 => 'horizontal_image_size', # in mm 8 => 'vertical_image_size', # in mm 4 => 'horizontal_image_size_hi', 4 => 'vertical_image_size_hi', 8 => 'horizontal_border', 8 => 'vertical_border', 1 => 'interlaced', 2 => 'stereo', 2 => 'digital_composite', 1 => 'horizontal_sync_positive', 1 => 'vertical_sync_positive', 1 => '', ) ], standard_timing => [ group_by2( 8 => 'X', 2 => 'aspect', 6 => 'vfreq', ) ], monitor_range => [ group_by2( 8 => 'vertical_min', 8 => 'vertical_max', 8 => 'horizontal_min', 8 => 'horizontal_max', 8 => 'pixel_clock_max', ) ], manufacturer_specified_range_timing => [ group_by2( # http://www.spwg.org/salisbury_march_19_2002.pdf # for the glossary: http://www.vesa.org/Public/PSWG/PSWG15v1.pdf 8 => 'horizontal_sync_pulse_width_min', # HSPW (Horizontal Sync Pulse Width) 8 => 'horizontal_sync_pulse_width_max', 8 => 'horizontal_back_porch_min', # t_hbp 8 => 'horizontal_back_porch_max', 8 => 'vertical_sync_pulse_width_min', # VSPW (Vertical Sync Pulse Width) 8 => 'vertical_sync_pulse_width_max', 8 => 'vertical_back_porch_min', # t_vbp (Vertical Back Porch) 8 => 'vertical_back_porch_max', 8 => 'horizontal_blanking_min', # t_hp (Horizontal Period) 8 => 'horizontal_blanking_max', 8 => 'vertical_blanking_min', # t_vp 8 => 'vertical_blanking_max', 8 => 'module_revision', ) ], ); sub get_many_bits { my ($s, $field_name) = @_; my @bits = split('', unpack('B*', $s)); my %h; foreach (@{$subfields{$field_name}}) { my ($size, $field) = @$_; my @l = ('0' x (8 - $size), splice(@bits, 0, $size)); $h{$field} = unpack("C", pack('B*', join('', @l))) if $field && $field !~ /^_/; } \%h; } sub check_parsed_edid { my ($edid) = @_; $edid->{manufacturer_name} ne '@@@' or return 'bad manufacturer_name'; $edid->{edid_version} != 0xff && $edid->{edid_revision} != 0xff or return 'bad edid_version'; if ($edid->{monitor_range}) { $edid->{monitor_range}{horizontal_min} && $edid->{monitor_range}{horizontal_min} <= $edid->{monitor_range}{horizontal_max} or return 'bad HorizSync'; $edid->{monitor_range}{vertical_min} && $edid->{monitor_range}{vertical_min} <= $edid->{monitor_range}{vertical_max} or return 'bad VertRefresh'; } ''; } sub parse_edid { my ($raw_edid) = @_; my %edid; my @vals = unpack(join('', map { $_->[0] } @edid_info), $raw_edid); my $i; foreach (@edid_info) { my ($field, $v) = ($_->[1], $vals[$i++]); if ($field eq 'year') { $v += 1990; } elsif ($field eq 'manufacturer_name') { my $h = get_many_bits($v, 'manufacturer_name'); $v = join('', map { chr(ord('A') + $h->{$_} - 1) } 1 .. 3); } elsif ($field eq 'video_input_definition') { $v = get_many_bits($v, 'video_input_definition'); } elsif ($field eq 'feature_support') { $v = get_many_bits($v, 'feature_support'); } elsif ($field eq 'established_timings') { my $h = get_many_bits($v, 'established_timings'); $v = [ sort { $a->{X} <=> $b->{X} || $a->{vfreq} <=> $b->{vfreq} } map { /(\d+)x(\d+)_(\d+)(i?)/ ? { X => $1, Y => $2, vfreq => $3, $4 ? (interlace => 1) : () } : () } grep { $h->{$_} } keys %$h ]; } elsif ($field eq 'standard_timings') { my @aspect2ratio = ( $edid{edid_version} > 1 || $edid{edid_revision} > 2 ? '16/10' : '1/1', '4/3', '5/4', '16/9', ); $v = [ map { my $h = get_many_bits($_, 'standard_timing'); $h->{X} = ($h->{X} + 31) * 8; if ($_ ne "\x20\x20" && $h->{X} > 256) { # cf VALID_TIMING in Xorg edid.h $h->{vfreq} += 60; if ($h->{ratio} = $aspect2ratio[$h->{aspect}]) { delete $h->{aspect}; $h->{Y} = $h->{X} / eval($h->{ratio}); } $h; } else { () } } unpack('a2' x 8, $v) ]; } elsif ($field eq 'monitor_details') { while ($v) { (my $pixel_clock, my $vv, $v) = unpack("v a16 a*", $v); if ($pixel_clock) { # detailed timing my $h = get_many_bits($vv, 'detailed_timing'); $h->{pixel_clock} = $pixel_clock / 100; # to have it in MHz my %detailed_timing_field_size = map { $_->[1], $_->[0] } @{$subfields{detailed_timing}}; foreach my $field (keys %detailed_timing_field_size) { $field =~ s/_hi$// or next; my $hi = delete($h->{$field . '_hi'}); $h->{$field} += $hi << $detailed_timing_field_size{$field}; } push @{$edid{detailed_timings}}, $h if $h->{horizontal_active} > 0 && $h->{vertical_active} > 0; } else { (my $flag, $vv) = unpack("n x a*", $vv); if ($flag == 0xfd) { # range $edid{monitor_range} = get_many_bits($vv, 'monitor_range'); if ($edid{monitor_range}{pixel_clock_max} == 0xff) { delete $edid{monitor_range}{pixel_clock_max}; } else { $edid{monitor_range}{pixel_clock_max} *= 10; #- to have it in MHz } } elsif ($flag == 0xf) { my $range = get_many_bits($vv, 'manufacturer_specified_range_timing'); my $e = $edid{detailed_timings}[0]; my $valid = 1; foreach my $m ('min', 'max') { my %total; foreach my $dir ('horizontal', 'vertical') { $range->{$dir . '_sync_pulse_width_' . $m} *= 2; $range->{$dir . '_back_porch_' . $m} *= 2; $range->{$dir . '_blanking_' . $m} *= 2; if ($e && $e->{$dir . '_active'}) { $total{$dir} = $e->{$dir . '_active'} + $range->{$dir . '_blanking_' . $m}; } } if ($total{horizontal} && $total{vertical}) { my $hfreq = $e->{pixel_clock} * 1000 / $total{horizontal}; my $vfreq = $hfreq * 1000 / $total{vertical}; $range->{'horizontal_' . ($m eq 'min' ? 'max' : 'min')} = round($hfreq); $range->{'vertical_' . ($m eq 'min' ? 'max' : 'min')} = round($vfreq); } else { $valid = 0; } } $edid{$valid ? 'monitor_range' : 'manufacturer_specified_range_timing'} = $range; } elsif ($flag == 0xfc) { my $prev = $edid{monitor_name}; $edid{monitor_name} = ($prev ? "$prev " : '') . unpack('A13', $vv); } elsif ($flag == 0xfe) { push @{$edid{monitor_text}}, unpack('A13', $vv); } elsif ($flag == 0xff) { push @{$edid{serial_number2}}, unpack('A13', $vv); } else { #warn "parse_edid: unknown flag $flag\n"; } } } } $edid{$field} = $v if $field && $field !~ /^_/; } $edid{max_size_precision} = 'cm'; $edid{EISA_ID} = $edid{manufacturer_name} . sprintf('%04x', $edid{product_code}) if $edid{product_code}; if ($edid{monitor_range}) { $edid{HorizSync} = $edid{monitor_range}{horizontal_min} . '-' . $edid{monitor_range}{horizontal_max}; $edid{VertRefresh} = $edid{monitor_range}{vertical_min} . '-' . $edid{monitor_range}{vertical_max}; } if ($edid{max_size_vertical}) { $edid{ratio} = $edid{max_size_horizontal} / $edid{max_size_vertical}; $edid{ratio_name} = ratio_name($edid{max_size_horizontal}, $edid{max_size_vertical}, 'cm'); $edid{ratio_precision} = 'cm'; } foreach my $h (@{$edid{detailed_timings}}) { my $horizontal_total = $h->{horizontal_active} + $h->{horizontal_blanking}; my $vertical_total = $h->{vertical_active} + $h->{vertical_blanking}; $h->{ModeLine_comment} = sprintf qq(# Monitor preferred modeline (%.1f Hz vsync, %.1f kHz hsync, ratio %s)), $h->{pixel_clock} / $horizontal_total / $vertical_total * 1000 * 1000, $h->{pixel_clock} / $horizontal_total * 1000, nearest_ratio($h->{horizontal_active} / $h->{vertical_active}, 0.01) || sprintf("%.2f", $h->{horizontal_active} / $h->{vertical_active}); $h->{ModeLine} = sprintf qq("%dx%d" $h->{pixel_clock} %d %d %d %d %d %d %d %d %shsync %svsync), $h->{horizontal_active}, $h->{vertical_active}, $h->{horizontal_active}, $h->{horizontal_active} + $h->{horizontal_sync_offset}, $h->{horizontal_active} + $h->{horizontal_sync_offset} + $h->{horizontal_sync_pulse_width}, $horizontal_total, $h->{vertical_active}, $h->{vertical_active} + $h->{vertical_sync_offset}, $h->{vertical_active} + $h->{vertical_sync_offset} + $h->{vertical_sync_pulse_width}, $vertical_total, $h->{horizontal_sync_positive} ? '+' : '-', $h->{vertical_sync_positive} ? '+' : '-'; # if the mm size given in the detailed_timing is not far from the cm size # put it as a more precise cm size my %in_cm = map { $_ => $h->{$_ . '_image_size'} / 10 } ('horizontal', 'vertical'); my ($error) = sort { $b <=> $a } map { abs($edid{'max_size_' . $_} - $in_cm{$_}) } keys %in_cm; if ($error <= 0.5) { $edid{'max_size_' . $_} = $in_cm{$_} foreach keys %in_cm; $edid{max_size_precision} = 'mm'; } if ($error < 1 && $in_cm{vertical}) { # using it for the ratio $edid{ratio} = $in_cm{horizontal} / $in_cm{vertical}; $edid{ratio_name} = ratio_name($in_cm{horizontal}, $in_cm{vertical}, 'mm'); $edid{ratio_precision} = 'mm'; } $h->{bad_ratio} = 1 if abs($edid{ratio} - $h->{horizontal_active} / $h->{vertical_active}) > ($edid{ratio_precision} eq 'mm' ? 0.02 : 0.2); } $edid{diagonal_size} = sqrt(sqr($edid{max_size_horizontal}) + sqr($edid{max_size_vertical})) / 2.54; \%edid; } sub nearest_ratio { my ($ratio, $max_error) = @_; my @sorted = sort { $a->[1] <=> $b->[1] } map { my $error = abs($ratio - eval($_)); $error > $max_error ? () : [ $_, $error ]; } @known_ratios; $sorted[0][0]; } sub ratio_name { my ($horizontal, $vertical, $precision) = @_; if ($precision eq 'mm') { nearest_ratio($horizontal / $vertical, 0.1); } else { my $error = 0.5; my $ratio1 = nearest_ratio(($horizontal + $error) / ($vertical - $error), 0.2); my $ratio2 = nearest_ratio(($horizontal - $error) / ($vertical + $error), 0.2); $ratio1 && $ratio2 or return; if ($ratio1 eq $ratio2) { $ratio1; } else { my $ratio = nearest_ratio($horizontal / $vertical, 0.2); join(' or ', $ratio, $ratio eq $ratio1 ? $ratio2 : $ratio1); } } } sub to_MonitorsDB { my ($edid) = @_; $edid->{monitor_range} && $edid->{EISA_ID} or return; my $detailed_timings = $edid->{detailed_timings} || []; my @preferred_resolutions = map { join('x', $_->{horizontal_active}, $_->{vertical_active}); } grep { !$_->{bad_ratio} } @$detailed_timings; (my $monitor_name = $edid->{monitor_name}) =~ s/;/,/g; my ($raw_vendor, $raw_model) = $edid->{EISA_ID} =~ /(...)(.*)/; my ($VendorName, $only_Model) = $monitor_name =~ /(\S+)\s(.*)/ ? ($1, $2) : ($raw_vendor, $monitor_name || $raw_model); join('; ', $VendorName, "$VendorName $only_Model", $edid->{EISA_ID}, sprintf("%u-%u", $edid->{monitor_range}{horizontal_min}, $edid->{monitor_range}{horizontal_max}), sprintf("%u-%u", $edid->{monitor_range}{vertical_min}, $edid->{monitor_range}{vertical_max}), @$detailed_timings == 1 ? @preferred_resolutions : (), ); } sub print_edid { my ($edid, $verbose) = @_; print "Name: $edid->{monitor_name}\n" if $edid->{monitor_name}; print "EISA ID: $edid->{EISA_ID}\n" if $edid->{EISA_ID}; printf "Screen size: %.1f cm x %.1f cm (%3.2f inches%s)\n", $edid->{max_size_horizontal}, $edid->{max_size_vertical}, $edid->{diagonal_size}, $edid->{ratio_name} ? sprintf(", aspect ratio %s = %.2f", $edid->{ratio_name}, $edid->{ratio}) : $edid->{ratio} ? sprintf(", aspect ratio %.2f", $edid->{ratio}) : ''; print "Gamma: ", $edid->{gamma} / 100 + 1, "\n"; printf "%s signal\n", $edid->{video_input_definition}{digital} ? 'Digital' : 'Analog'; if ($verbose) { foreach (@{$edid->{established_timings} || []}) { print "Standard resolution: $_->{X}x$_->{Y} @ $_->{vfreq} Hz (established timing)\n" if !$_->{interlace}; } foreach (@{$edid->{standard_timings} || []}) { print "Standard resolution: $_->{X}x$_->{Y} @ $_->{vfreq} Hz, ratio $_->{ratio}", $edid->{ratio_name} && index($edid->{ratio_name}, $_->{ratio}) == -1 ? ' (!)' : '', "\n"; } } if ($edid->{monitor_range}) { printf "Max video bandwidth: %u MHz\n", $edid->{monitor_range}{pixel_clock_max} if $edid->{monitor_range}{pixel_clock_max}; print "\n"; printf "\tHorizSync %u-%u\n", $edid->{monitor_range}{horizontal_min}, $edid->{monitor_range}{horizontal_max}; printf "\tVertRefresh %u-%u\n", $edid->{monitor_range}{vertical_min}, $edid->{monitor_range}{vertical_max}; } foreach my $h (@{$edid->{detailed_timings}}) { print "\n"; print "\t", $h->{ModeLine_comment}, $h->{bad_ratio} ? ' (bad ratio)' : '', "\n"; print "\tModeLine ", $h->{ModeLine}, "\n"; } } sub _getManifacturerFromCode { my $code = shift; my $h = { "ACR" => "Acer America Corp.", "ACT" => "Targa", "ADI" => "ADI Corporation http://www.adi.com.tw", "AOC" => "AOC International (USA) Ltd.", "API" => "Acer America Corp.", "APP" => "Apple Computer, Inc.", "ART" => "ArtMedia", "AST" => "AST Research", "CPL" => "Compal Electronics, Inc. / ALFA", "CPQ" => "COMPAQ Computer Corp.", "CTX" => "CTX - Chuntex Electronic Co.", "DEC" => "Digital Equipment Corporation", "DEL" => "Dell Computer Corp.", "DPC" => "Delta Electronics, Inc.", "DWE" => "Daewoo Telecom Ltd", "ECS" => "ELITEGROUP Computer Systems", "EIZ" => "EIZO", "EPI" => "Envision Peripherals, Inc.", "FCM" => "Funai Electric Company of Taiwan", "FUS" => "Fujitsu Siemens", "GSM" => "LG Electronics Inc. (GoldStar Technology, Inc.)", "GWY" => "Gateway 2000", "HEI" => "Hyundai Electronics Industries Co., Ltd.", "HIT" => "Hitachi", "HSD" => "Hanns.G", "HSL" => "Hansol Electronics", "HTC" => "Hitachi Ltd. / Nissei Sangyo America Ltd.", "HWP" => "Hewlett Packard", "IBM" => "IBM PC Company", "ICL" => "Fujitsu ICL", "IVM" => "Idek Iiyama North America, Inc.", "KFC" => "KFC Computek", "LEN" => "Lenovo", "LGD" => "LG Display", "LKM" => "ADLAS / AZALEA", "LNK" => "LINK Technologies, Inc.", "LTN" => "Lite-On", "MAG" => "MAG InnoVision", "MAX" => "Maxdata Computer GmbH", "MEI" => "Panasonic Comm. & Systems Co.", "MEL" => "Mitsubishi Electronics", "MIR" => "miro Computer Products AG", "MTC" => "MITAC", "NAN" => "NANAO", "NEC" => "NEC Technologies, Inc.", "NOK" => "Nokia", "OQI" => "OPTIQUEST", "PBN" => "Packard Bell", "PGS" => "Princeton Graphic Systems", "PHL" => "Philips Consumer Electronics Co.", "REL" => "Relisys", "SAM" => "Samsung", "SMI" => "Smile", "SMC" => "Samtron", "SNI" => "Siemens Nixdorf", "SNY" => "Sony Corporation", "SPT" => "Sceptre", "SRC" => "Shamrock Technology", "STN" => "Samtron", "STP" => "Sceptre", "TAT" => "Tatung Co. of America, Inc.", "TRL" => "Royal Information Company", "TSB" => "Toshiba, Inc.", "UNM" => "Unisys Corporation", "VSC" => "ViewSonic Corporation", "WTC" => "Wen Technology", "ZCM" => "Zenith Data Systems", "___" => "Targa" }; return $h->{$code} if (exists ($h->{$code}) && $h->{$code}); return "Unknown manufacturer code ".$code; } sub sqr { $_[0] * $_[0] } sub round { int($_[0] + 0.5) } sub group_by2 { my @l; for (my $i = 0; $i < @_; $i += 2) { push @l, [ $_[$i], $_[$i+1] ]; } @l; } sub run { my $params = shift; my $common = $params->{common}; my $logger = $params->{logger}; my $raw_perl = 1; my $verbose; my $MonitorsDB; my $base64; my $uuencode; my $raw_edid = getEdid(); return unless $raw_edid; length($raw_edid) == 128 || length($raw_edid) == 256 or $logger->debug("incorrect lenght: bad edid"); my $edid = parse_edid($raw_edid); if (my $err = check_parsed_edid($edid)) { $logger->debug("check failed: bad edid: $err"); } my $caption = $edid->{monitor_name}; my $description = $edid->{week}."/".$edid->{year}; my $manufacturer = _getManifacturerFromCode($edid->{manufacturer_name}); my $serial = $edid->{serial_number2}[0]; eval "use MIME::Base64;"; $base64 = encode_base64($raw_edid) if !$@; if (can_run("uuencode")) { chomp($uuencode = `echo $raw_edid|uuencode -`); if (!$base64) { chomp($base64 = `echo $raw_edid|uuencode -m -`); } } $common->addMonitors ({ BASE64 => $base64, CAPTION => $caption, DESCRIPTION => $description, MANUFACTURER => $manufacturer, SERIAL => $serial, UUENCODE => $uuencode, }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic/Lspci004075500017500001750000000000001173606116100263345ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic/Lspci/Modems.pm010064400017500001750000000005631173606111100301710ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Generic::Lspci::Modems; use strict; sub run { my $params = shift; my $common = $params->{common}; foreach(`lspci`){ if(/modem/i && /\d+\s(.+):\s*(.+)$/){ my $name = $1; my $description = $2; $common->addModems({ 'DESCRIPTION' => $description, 'NAME' => $name, }); } } } 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic/Lspci/Sounds.pm010064400017500001750000000005421173606111100302150ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Generic::Lspci::Sounds; use strict; sub run { my $params = shift; my $common = $params->{common}; foreach(`lspci`){ if(/audio/i && /^\S+\s([^:]+):\s*(.+?)(?:\(([^()]+)\))?$/i){ $common->addSound({ 'DESCRIPTION' => $3, 'MANUFACTURER' => $2, 'NAME' => $1, }); } } } 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic/Lspci/Controllers.pm010064400017500001750000000027621173606111100312560ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Generic::Lspci::Controllers; use strict; sub check {can_run("lspci")} sub run { my $params = shift; my $common = $params->{common}; my $driver; my $name; my $manufacturer; my $pciid; my $pcislot; my $type; my $lspci_version; my $command = "lspci -vvv"; #We get the current lspci version `lspci --version` =~ m/lspci\sversion\s(\d+.*)/ ; $lspci_version=$1; $lspci_version = $common->convertVersion($lspci_version,3); if ($lspci_version >= 224) { #More informations since version 2.2.4 $command = "lspci -vvv -nn"; } foreach(`$command`){ if (/^(\S+)\s+(\w+.*?):\s(.*)/) { $pcislot = $1; $name = $2; $manufacturer = $3; if ($manufacturer =~ s/ \((rev \S+)\)//) { $type = $1; } $manufacturer =~ s/\ *$//; # clean up the end of the string $manufacturer =~ s/\s+\(prog-if \d+ \[.*?\]\)$//; # clean up the end of the string if ($manufacturer =~ s/ \[([A-z\d]+:[A-z\d]+)\]$//) { $pciid = $1; } } if ($pcislot && /^\s+Kernel driver in use: (\w+)/) { $driver = $1; } if ($pcislot && /^$/) { $common->addController({ 'DRIVER' => $driver, 'NAME' => $name, 'MANUFACTURER' => $manufacturer, 'PCIID' => $pciid, 'PCISLOT' => $pcislot, 'TYPE' => $type, }); $driver = $name = $pciid = $pcislot = $manufacturer = $type = undef; } } } 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic/Lspci/Videos.pm010064400017500001750000000005161173606111100301740ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Generic::Lspci::Videos; use strict; sub run { my $params = shift; my $common = $params->{common}; foreach(`lspci`){ if(/graphics|vga|video/i && /^\S+\s([^:]+):\s*(.+?)(?:\(([^()]+)\))?$/i){ $common->addVideo({ 'CHIPSET' => $1, 'NAME' => $2, }); } } } 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic/Printers004075500017500001750000000000001173606116100270705ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic/Printers/Cups.pm010064400017500001750000000014401173606111100304060ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Generic::Printers::Cups; use strict; sub check { # If we are on a MAC, Mac::SysProfile will do the job return if -r '/usr/sbin/system_profiler'; return unless can_load("Net::CUPS"); return 1; } sub run { my $params = shift; my $common = $params->{common}; my $cups = Net::CUPS->new(); my $printer = $cups->getDestination(); return unless $printer; # Just grab the default printer, is I use getDestinations, CUPS # returns all the printer of the local subnet (is it can) # TODO There is room for improvement here $common->addPrinter({ NAME => $printer->getName(), DESCRIPTION => $printer->getDescription(), # DRIVER => How to get the PPD?!! }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux004075500017500001750000000000001173606116100250055ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Distro004075500017500001750000000000001173606116100262515ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/LSB.pm010064400017500001750000000006341173606111100273010ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Distro::LSB; sub check {can_run("lsb_release")} sub run { my $params = shift; my $common = $params->{common}; my $release; foreach (`lsb_release -d`) { $release = $1 if /Description:\s+(.+)/; } my $OSComment; chomp($OSComment =`uname -v`); $common->setHardware({ OSNAME => $release, OSCOMMENTS => "$OSComment" }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB004075500017500001750000000000001173606116100273445ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/Trustix.pm010064400017500001750000000007211173606111100314330ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Distro::NonLSB::Trustix; use strict; sub check {-f "/etc/trustix-release"} ##### sub findRelease { my $v; open V, "); close V; $v; } sub run { my $params = shift; my $common = $params->{common}; my $OSComment; chomp($OSComment =`uname -v`); $common->setHardware({ OSNAME => findRelease(), OSCOMMENTS => "$OSComment" }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/Fedora.pm010064400017500001750000000007161173606111100311550ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Distro::NonLSB::Fedora; use strict; sub check {-f "/etc/fedora-release"} ##### sub findRelease { my $v; open V, "); close V; $v; } sub run { my $params = shift; my $common = $params->{common}; my $OSComment; chomp($OSComment =`uname -v`); $common->setHardware({ OSNAME => findRelease(), OSCOMMENTS => "$OSComment" }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/SuSE.pm010064400017500001750000000007231173606111100305720ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Distro::NonLSB::SuSE; use strict; sub check { can_read ("/etc/SuSE-release") } ##### sub findRelease { my $v; open V, "); close V; $v; } sub run { my $params = shift; my $common = $params->{common}; my $OSComment; chomp($OSComment =`uname -v`); $common->setHardware({ OSNAME => findRelease(), OSCOMMENTS => "$OSComment" }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/Slackware.pm010064400017500001750000000007261173606111100316720ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Distro::NonLSB::Slackware; use strict; sub check {-f "/etc/slackware-version"} ##### sub findRelease { my $v; open V, "); close V; $v; } sub run { my $params = shift; my $common = $params->{common}; my $OSComment; chomp($OSComment =`uname -v`); $common->setHardware({ OSNAME => findRelease(), OSCOMMENTS => "$OSComment" }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/VmWare.pm010064400017500001750000000007161173606111100311560ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Distro::NonLSB::VmWare; use strict; sub check { -f "/etc/vmware-release" } #### sub findRelease { my $v; open V, "); close V; $v; } sub run { my $params = shift; my $common = $params->{common}; my $OSComment; chomp($OSComment =`uname -v`); $common->setHardware({ OSNAME => findRelease(), OSCOMMENTS => "$OSComment" }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/Knoppix.pm010064400017500001750000000007731173606111100314100ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Distro::NonLSB::Knoppix; use strict; sub check {-f "/etc/knoppix_version"} ##### sub findRelease { my $v; open V, "); close V; print $v."\n"; return "Knoppix GNU/Linux $v"; } sub run { my $params = shift; my $common = $params->{common}; my $OSComment; chomp($OSComment =`uname -v`); $common->setHardware({ OSNAME => findRelease(), OSCOMMENTS => "$OSComment" }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/Ubuntu.pm010064400017500001750000000011061173606111100312310ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Distro::NonLSB::Ubuntu; use strict; use vars qw($runAfter); $runAfter = ["Ocsinventory::Agent::Backend::OS::Linux::Distro::NonLSB::Debian"]; sub check {-f "/etc/ubuntu_version"} ##### sub findRelease { my $v; open V, "); close V; return "Ubuntu $v"; } sub run { my $params = shift; my $common = $params->{common}; my $OSComment; chomp($OSComment =`uname -v`); $common->setHardware({ OSNAME => findRelease(), OSCOMMENTS => "$OSComment" }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/Mandriva.pm010064400017500001750000000010041173606111100315050ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Distro::NonLSB::Mandriva; use strict; sub check {-f "/etc/mandrake-release" && -f "/etc/mandriva-release"} ##### sub findRelease { my $v; open V, "); close V; return $v if $v; 0; } sub run { my $params = shift; my $common = $params->{common}; my $OSComment; chomp($OSComment =`uname -v`); $common->setHardware({ OSNAME => findRelease(), OSCOMMENTS => "$OSComment" }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/Gentoo.pm010064400017500001750000000007421173606111100312070ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Distro::NonLSB::Gentoo; use strict; sub check {-f "/etc/gentoo-release"} ##### sub findRelease { my $v; open V, "); close V; return "Gentoo Linux $v"; } sub run { my $params = shift; my $common = $params->{common}; my $OSComment; chomp($OSComment =`uname -v`); $common->setHardware({ OSNAME => findRelease(), OSCOMMENTS => "$OSComment" }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/Redhat.pm010064400017500001750000000010501173606111100311540ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Distro::NonLSB::Redhat; use strict; sub check { -f "/etc/redhat-release" && !readlink ("/etc/redhat-release") && !-f "/etc/vmware-release" } #### sub findRelease { my $v; open V, "); close V; $v; } sub run { my $params = shift; my $common = $params->{common}; my $OSComment; chomp($OSComment =`uname -v`); $common->setHardware({ OSNAME => findRelease(), OSCOMMENTS => "$OSComment" }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/Debian.pm010064400017500001750000000010031173606111100311250ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Distro::NonLSB::Debian; use strict; sub check {-f "/etc/debian_version" && !-f "/etc/ubuntu_version"} ##### sub findRelease { my $v; open V, "); close V; return "Debian GNU/Linux $v"; } sub run { my $params = shift; my $common = $params->{common}; my $OSComment; chomp($OSComment =`uname -v`); $common->setHardware({ OSNAME => findRelease(), OSCOMMENTS => "$OSComment" }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/ArchLinux.pm010064400017500001750000000007351173606111100316530ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Distro::NonLSB::ArchLinux; use strict; sub check {-f "/etc/arch-release"} ##### sub findRelease { my $v; open V, "); close V; return "ArchLinux $v"; } sub run { my $params = shift; my $common = $params->{common}; my $OSComment; chomp($OSComment =`uname -v`); $common->setHardware({ OSNAME => findRelease(), OSCOMMENTS => "$OSComment" }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/Mandrake.pm010064400017500001750000000007641173606111100315020ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Distro::NonLSB::Mandrake; use strict; sub check {-f "/etc/mandrake-release" && !-f "/etc/mandriva-release"} ##### sub findRelease { my $v; open V, "); close V; $v; } sub run { my $params = shift; my $common = $params->{common}; my $OSComment; chomp($OSComment =`uname -v`); $common->setHardware({ OSNAME => findRelease(), OSCOMMENTS => "$OSComment" }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB.pm010064400017500001750000000002341173606111100277500ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Distro::NonLSB; $runMeIfTheseChecksFailed = ["Ocsinventory::Agent::Backend::OS::Linux::Distro::LSB"]; 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Storages004075500017500001750000000000001173606116100265745ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Storages/HP.pm010064400017500001750000000064751173606111100275240ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Storages::HP; use Ocsinventory::Agent::Backend::OS::Linux::Storages; # Tested on 2.6.* kernels # # Cards tested : # # Smart Array E200 # # HP Array Configuration Utility CLI 7.85-18.0 use strict; sub check { my $ret; # Do we have hpacucli ? if (can_run("hpacucli")) { foreach (`hpacucli ctrl all show 2> /dev/null`) { if (/.*Slot\s(\d*).*/) { $ret = 1; last; } } } return $ret; } sub run { my $params = shift; my $common = $params->{common}; my $logger = $params->{logger}; my ($pd, $serialnumber, $model, $capacity, $firmware, $description, $media, $manufacturer); foreach (`hpacucli ctrl all show 2> /dev/null`) { # Example output : # # Smart Array E200 in Slot 2 (sn: PA6C90K9SUH1ZA) if (/.*Slot\s(\d*).*/) { my $slot = $1; foreach (`hpacucli ctrl slot=$slot pd all show 2> /dev/null`) { # Example output : # # Smart Array E200 in Slot 2 # # array A # # physicaldrive 2I:1:1 (port 2I:box 1:bay 1, SATA, 74.3 GB, OK) # physicaldrive 2I:1:2 (port 2I:box 1:bay 2, SATA, 74.3 GB, OK) if (/.*physicaldrive\s(\S*)/) { my $pd = $1; foreach (`hpacucli ctrl slot=$slot pd $pd show 2> /dev/null`) { # Example output : # # Smart Array E200 in Slot 2 # # array A # # physicaldrive 1:1 # Port: 2I # Box: 1 # Bay: 1 # Status: OK # Drive Type: Data Drive # Interface Type: SATA # Size: 74.3 GB # Firmware Revision: 21.07QR4 # Serial Number: WD-WMANS1732855 # Model: ATA WDC WD740ADFD-00 # SATA NCQ Capable: False # PHY Count: 1 $model = $1 if /.*Model:\s(.*)/; $description = $1 if /.*Interface Type:\s(.*)/; $media = $1 if /.*Drive Type:\s(.*)/; $capacity = 1000*$1 if /.*Size:\s(.*)/; $serialnumber = $1 if /.*Serial Number:\s(.*)/; $firmware = $1 if /.*Firmware Revision:\s(.*)/; } $serialnumber =~ s/^\s+//; $model =~ s/^ATA\s+//; # ex: ATA WDC WD740ADFD-00 $model =~ s/\s+/ /; $manufacturer = Ocsinventory::Agent::Backend::OS::Linux::Storages::getManufacturer($model); if ($media eq 'Data Drive') { $media = 'disk'; } $logger->debug("HP: N/A, $manufacturer, $model, $description, $media, $capacity, $serialnumber, $firmware"); $common->addStorages({ NAME => $model, MANUFACTURER => $manufacturer, MODEL => $model, DESCRIPTION => $description, TYPE => $media, DISKSIZE => $capacity, SERIALNUMBER => $serialnumber, FIRMWARE => $firmware }); } } } } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Storages/Lsilogic.pm010064400017500001750000000043361173606111100307540ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Storages::Lsilogic; use Ocsinventory::Agent::Backend::OS::Linux::Storages; # Tested on 2.6.* kernels # # Cards tested : # # LSI Logic / Symbios Logic SAS1064E PCI-Express Fusion-MPT SAS # # mpt-status version : 1.2.0 use strict; sub check { my $device; # Do we have smartctl ? if (can_run('smartctl')) { foreach my $node (glob("/dev/sd?")) { foreach (`smartctl -i $node`) { $device = $1 if /.*Device:\s(\w*).*/; } } ($device eq 'LSILOGIC')?return 1:return 0; } return 0; } sub run { my $params = shift; my $common = $params->{common}; my $logger = $params->{logger}; my $serialnumber; my @devices = Ocsinventory::Agent::Backend::OS::Linux::Storages::getFromUdev(); foreach my $hd (@devices) { foreach (`mpt-status -n -i $hd->{SCSI_UNID}`) { # Example output : # # ioc:0 vol_id:0 type:IM raidlevel:RAID-1 num_disks:2 size(GB):148 state: OPTIMAL flags: ENABLED # ioc:0 phys_id:1 scsi_id:2 vendor:ATA product_id:ST3160815AS revision:D size(GB):149 state: ONLINE flags: NONE sync_state: 100 ASC/ASCQ:0xff/0xff SMART ASC/ASCQ:0xff/0xff #ioc:0 phys_id:0 scsi_id:1 vendor:ATA product_id:ST3160815AS revision:D size(GB):149 state: ONLINE flags: NONE sync_state: 100 ASC/ASCQ:0xff/0xff SMART ASC/ASCQ:0xff/0xff #scsi_id:1 100% #scsi_id:0 100% if (/.*phys_id:(\d+).*product_id:\s*(\S*)\s+revision:(\S+).*size\(GB\):(\d+).*/) { $serialnumber = undef; foreach (`smartctl -i /dev/sg$1`) { $serialnumber = $1 if /^Serial Number:\s+(\S*)/; } my $model = $2; my $size = 1024*$4; # GB => MB my $firmware = $3; my $manufacturer = Ocsinventory::Agent::Backend::OS::Linux::Storages::getManufacturer($model); $logger->debug("Lsilogic: $hd->{NAME}, $manufacturer, $model, SATA, disk, $size, $serialnumber, $firmware"); $common->addStorages({ NAME => $hd->{NAME}, MANUFACTURER => $manufacturer, MODEL => $model, DESCRIPTION => 'SATA', TYPE => 'disk', DISKSIZE => $size, SERIALNUMBER => $serialnumber, FIRMWARE => $firmware, }); } } } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Storages/ServeRaid.pm010064400017500001750000000056461173606111100311000ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Storages::ServeRaid; use Ocsinventory::Agent::Backend::OS::Linux::Storages; # Tested on 2.6.* kernels # # Cards tested : # # IBM ServeRAID-6M # IBM ServeRAID-6i use strict; sub check { my $ret = 0; # Do we have ipssend installed ? if (can_run("ipssend")) { foreach (`ipssend GETVERSION 2>/dev/null`) { if (/.*ServeRAID Controller Number\s(\d*).*/) { $ret = $1; last; } } } return $ret; } sub run { my $params = shift; my $common = $params->{common}; my $logger = $params->{logger}; my $slot; $logger->debug("ServeRaid: ipssend GETVERSION"); foreach (`ipssend GETVERSION 2>/dev/null`) { # Example Output : # Found 1 IBM ServeRAID controller(s). #---------------------------------------------------------------------- #ServeRAID Controller(s) Version Information #---------------------------------------------------------------------- # Controlling BIOS version : 7.00.14 # #ServeRAID Controller Number 1 # Controller type : ServeRAID-6M # Controller slot information : 2 # Actual BIOS version : 7.00.14 # Firmware version : 7.00.14 # Device driver version : 7.10.18 $slot = $1 if /.*ServeRAID Controller Number\s(\d*).*/; if (/.*Controller type.*:\s(.*)/) { my $name = $1; my ($serial, $capacity, $scsi, $channel, $state); $logger->debug("ServeRaid: ipssend GETCONFIG $slot PD"); foreach (`ipssend GETCONFIG $slot PD 2>/dev/null`) { # Example Output : # Channel #1: # Target on SCSI ID 0 # Device is a Hard disk # SCSI ID : 0 # PFA (Yes/No) : No # State : Online (ONL) # Size (in MB)/(in sectors): 34715/71096368 # Device ID : IBM-ESXSCBR036C3DFQDB2Q6CDKM # FRU part number : 32P0729 $channel = $1 if /.*Channel #(.*):/; $scsi = $1 if /.*SCSI ID.*:\s(.*)/; $state = $1 if /.*State.*\((.*)\)/; $capacity = $1 if /.*Size.*:\s(\d*)\/(\d*)/; $serial = $1 if /.*Device ID.*:\s(.*)/; if (/.*FRU part number.*:\s(.*)/) { my $model = $1; my $manufacturer = Ocsinventory::Agent::Backend::OS::Linux::Storages::getManufacturer($serial); ## my $fullname = "$name $slot/$channel/$scsi $state"; $logger->debug("ServeRaid: found $model, $manufacturer, $model, SCSI, disk, $capacity, $serial, "); $common->addStorages({ NAME => "$manufacturer $model", MANUFACTURER => $manufacturer, MODEL => $model, DESCRIPTION => "SCSI", TYPE => "disk", DISKSIZE => $capacity, SERIALNUMBER => $serial, FIRMWARE => ""}); # don't undef $channel, appear only once for several drive. $scsi = $state = $capacity = $serial = undef; } } } } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Storages/3ware.pm010064400017500001750000000114721173606111100302270ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Storages::3ware; use Ocsinventory::Agent::Backend::OS::Linux::Storages; # Tested on 2.6.* kernels # # Cards tested : # # 8006-2LP # 9500S-4LP # 9550SXU-4LP # 9550SXU-8LP # 9650SE-2LP # 9650SE-4LPML # 9650SE-8LPML # # AMCC/3ware CLI (version 2.00.0X.XXX) use strict; sub check { my ($card, $res); # Do we have tw_cli ? if (can_run("tw_cli")) { foreach (`tw_cli info`) { $card = $1 if /^(c\d+).*/; if ($card) { $res = `tw_cli info $card numdrives`; $card = undef; $res =~ s/^.*=\s(\d+)/$1/; # Do we have drives on the card ? ($res == 0)?return 0:return 1; } } } } sub run { my $params = shift; my $common = $params->{common}; my $logger = $params->{logger}; my ($tw_cli, $hd); my ($card, $card_model, $unit, $unit_id, $port, $serialnumber, $serial, $model, $capacity, $firmware, $description, $media, $device, $manufacturer, $sn); my @devices = Ocsinventory::Agent::Backend::OS::Linux::Storages::getFromUdev(); # First, getting the cards : c0, c1... etc. foreach (`tw_cli info`) { # Should output something like this : # # Ctl Model Ports Drives Units NotOpt RRate VRate BBU # ------------------------------------------------------------------------ # c0 9650SE-2LP 2 2 1 0 1 1 - if (/^(c\d)+\s+([\w|-]+)/) { $card = $1; $card_model = $2; $logger->debug("Card : $card - Model : $card_model"); } if ($card) { # Second, getting the units : u0, u1... etc. foreach (`tw_cli info $card`) { # Example output : # # Unit UnitType Status %RCmpl %V/I/M Stripe Size(GB) Cache AVrfy # ------------------------------------------------------------------------------ # u0 RAID-1 OK - - - 65.1826 ON OFF # # Port Status Unit Size Blocks Serial # --------------------------------------------------------------- # p0 OK u0 69.25 GB 145226112 WD-WMANS1648590 # p1 OK u0 69.25 GB 145226112 WD-WMANS1344790 if (/^(u)(\d+).*/) { $unit = $1 . $2; $unit_id = $2; } if ($unit) { # Try do get unit's serial in order to compare it to what was found in udev db. # Works only on newer cards. # Allow us to associate a node to a drive : sda -> WD-WMANS1648590 $sn = `tw_cli info $card $unit serial 2> /dev/null`; $sn =~ s/^.*serial number\s=\s(\w*)\s*/$1/; # Third, getting the ports : p0, p1... etc. foreach(`tw_cli info $card $unit`) { $port = $1 if /^.*(p\d+).*/; if ($port) { # Finally, getting drives' values. foreach (`tw_cli info $card $port model serial capacity firmware`) { # Example output : # # /c0/p0 Model = WDC WD740ADFD-00NLR4 # /c0/p0 Serial = WD-WMANS1648590 # /c0/p0 Capacity = 69.25 GB (145226112 Blocks) # /c0/p0 Firmware Version = 21.07QR4 $model = $1 if /^.*Model\s=\s(.*)/; $serialnumber = $1 if /^.*Serial\s=\s(.*)/; $capacity = 1024*$1 if /^.*Capacity\s=\s(\S+)\sGB.*/; $firmware = $1 if /^.*Firmware Version\s=\s(.*)/; } foreach $hd (@devices) { # How does this work with multiple older cards where serial for units is not implemented ? # Need to be tested on a system with multiple 3ware cards. if (($hd->{SERIALNUMBER} eq 'AMCC_' . $sn) or ($hd->{MODEL} eq 'Logical_Disk_' . $unit_id)) { $device = $hd->{NAME}; } } # Getting description from card model, very basic and unreliable # Assuming only IDE drives can be plugged in 5xxx/6xxx cards and # SATA drives only to 7xxx/8xxx/9xxxx cards $description = undef; foreach ($card_model) { $description = "IDE" if /^[5-6].*/; $description = "SATA" if /^[7-9].*/; } $media = 'disk'; $manufacturer = Ocsinventory::Agent::Backend::OS::Linux::Storages::getManufacturer($model); $port = undef; $logger->debug("3ware: $device, $manufacturer, $model, $description, $media, $capacity, $serialnumber, $firmware"); $common->addStorages({ NAME => $device, MANUFACTURER => $manufacturer, MODEL => $model, DESCRIPTION => $description, TYPE => $media, DISKSIZE => $capacity, SERIALNUMBER => $serialnumber, FIRMWARE => $firmware, }); } $port = undef; } $unit = undef; } } $card = undef; $card_model = undef; } } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Storages/Adaptec.pm010064400017500001750000000044631173606111100305510ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Storages::Adaptec; use Ocsinventory::Agent::Backend::OS::Linux::Storages; # Tested on 2.6.* kernels # # Cards tested : # # Adaptec AAC-RAID use strict; my @devices = Ocsinventory::Agent::Backend::OS::Linux::Storages::getFromUdev(); sub check { if (can_run ('smartctl') ) { foreach my $hd (@devices) { $hd->{MANUFACTURER} eq 'Adaptec'?return 1:1; } } return 0; } sub run { my $params = shift; my $common = $params->{common}; my $logger = $params->{logger}; if (-r '/proc/scsi/scsi') { foreach my $hd (@devices) { open (PATH, '/proc/scsi/scsi'); # Example output: # # Attached devices: # Host: scsi0 Channel: 00 Id: 00 Lun: 00 # Vendor: Adaptec Model: raid10 Rev: V1.0 # Type: Direct-Access ANSI SCSI revision: 02 # Host: scsi0 Channel: 01 Id: 00 Lun: 00 # Vendor: HITACHI Model: HUS151436VL3800 Rev: S3C0 # Type: Direct-Access ANSI SCSI revision: 03 # Host: scsi0 Channel: 01 Id: 01 Lun: 00 # Vendor: HITACHI Model: HUS151436VL3800 Rev: S3C0 # Type: Direct-Access ANSI SCSI revision: 03 my ($host, $model, $firmware, $manufacturer, $size, $serialnumber); my $count = -1; while () { ($host, $count) = (1, $count+1) if /^Host:\sscsi$hd->{SCSI_COID}.*/; if ($host) { if ((/.*Model:\s(\S+).*Rev:\s(\S+).*/) and ($1 !~ 'raid.*')) { $model = $1; $firmware = $2; $manufacturer = Ocsinventory::Agent::Backend::OS::Linux::Storages::getManufacturer($model); foreach (`smartctl -i /dev/sg$count`) { $serialnumber = $1 if /^Serial Number:\s+(\S*).*/; } $logger->debug("Adaptec: $hd->{NAME}, $manufacturer, $model, SATA, disk, $hd->{DISKSIZE}, $serialnumber, $firmware"); $host = undef; $common->addStorages({ NAME => $hd->{NAME}, MANUFACTURER => $manufacturer, MODEL => $model, DESCRIPTION => 'SATA', TYPE => 'disk', DISKSIZE => $size, SERIALNUMBER => $serialnumber, FIRMWARE => $firmware, }); } } } close (PATH); } } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Storages.pm010064400017500001750000000176261173606111100272150ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Storages; use strict; sub check {1} ######## TODO # Do not remove, used by other modules sub getFromUdev { my @devs; foreach (glob ("/dev/.udev/db/*")) { my ($scsi_coid, $scsi_chid, $scsi_unid, $scsi_lun, $path, $device, $vendor, $model, $revision, $serial, $serial_short, $type, $bus, $capacity); if (/^(\/dev\/.udev\/db\/.*)([sh]d[a-z])$/) { $path = $1; $device = $2; open (PATH, $1 . $2); while () { if (/^S:.*-scsi-(\d+):(\d+):(\d+):(\d+)/) { $scsi_coid = $1; $scsi_chid = $2; $scsi_unid = $3; $scsi_lun = $4; } $vendor = $1 if /^E:ID_VENDOR=(.*)/; $model = $1 if /^E:ID_MODEL=(.*)/; $revision = $1 if /^E:ID_REVISION=(.*)/; $serial = $1 if /^E:ID_SERIAL=(.*)/; $serial_short = $1 if /^E:ID_SERIAL_SHORT=(.*)/; $type = $1 if /^E:ID_TYPE=(.*)/; $bus = $1 if /^E:ID_BUS=(.*)/; } $serial_short = $serial unless $serial_short =~ /\S/; $capacity = getCapacity($device); push (@devs, {NAME => $device, MANUFACTURER => $vendor, MODEL => $model, DESCRIPTION => $bus, TYPE => $type, DISKSIZE => $capacity, SERIALNUMBER => $serial_short, FIRMWARE => $revision, SCSI_COID => $scsi_coid, SCSI_CHID => $scsi_chid, SCSI_UNID => $scsi_unid, SCSI_LUN => $scsi_lun}); close (PATH); } } return @devs; } sub getFromSysProc { my($dev, $file) = @_; my $value; foreach ("/sys/block/$dev/device/$file", "/proc/ide/$dev/$file") { next unless open PATH, $_; chomp(my $value = ); $value =~ s/^(\w+)\W*/$1/; return $value; } } sub getCapacity { my ($dev) = @_; my $cap; chomp ($cap = `fdisk -s /dev/$dev 2>/dev/null`); #requires permissions on /dev/$dev $cap = int ($cap/1000) if $cap; return $cap; } sub getDescription { my ($name, $manufacturer, $description, $serialnumber) = @_; # detected as USB by udev # TODO maybe we should trust udev detection by default? return "USB" if (defined ($description) && $description =~ /usb/i); if ($name =~ /^s/) { # /dev/sd* are SCSI _OR_ SATA if ($manufacturer =~ /ATA/ || $serialnumber =~ /ATA/ || $description =~ /ATA/i) { return "SATA"; } else { return "SCSI"; } } else { return "IDE"; } } sub getManufacturer { my ($model) = @_; if($model =~ /(maxtor|western|sony|compaq|hewlett packard|ibm|seagate|toshiba|fujitsu|lg|samsung|nec|transcend)/i) { return ucfirst(lc($1)); } elsif ($model =~ /^HP/) { return "Hewlett Packard"; } elsif ($model =~ /^WDC/) { return "Western Digital"; } elsif ($model =~ /^ST/) { return "Seagate"; } elsif ($model =~ /^HD/ or $model =~ /^IC/ or $model =~ /^HU/) { return "Hitachi"; } } # some hdparm release generated kernel error if they are # run on CDROM device # http://forums.ocsinventory-ng.org/viewtopic.php?pid=20810 sub correctHdparmAvailable { return unless can_run("hdparm"); my $hdparmVersion = `hdparm -V`; if ($hdparmVersion =~ /^hdparm v(\d+)\.(\d+)(\.|$)/) { return 1 if $1>9; return 1 if $1==9 && $2>=15; } return; } sub run { my $params = shift; my $logger = $params->{logger}; my $common = $params->{common}; my $devices = {}; # Get complementary information in hash tab if (can_run ("lshal")) { my %temp; my $in = 0; my $value; foreach my $line (`lshal`) { chomp $line; if ( $line =~ s{^udi = '/org/freedesktop/Hal/devices/storage.*}{}) { $in = 1; %temp = (); } elsif ($in == 1 and $line =~ s{^\s+(\S+) = (.*) \s*\((int|string|bool|string list|uint64)\)}{} ) { my $key = $1; my $value = $2; $value =~ s/^'(.*)'\s*$/$1/; # Drop the quote $value =~ s/\s+$//; # Drop the trailing white space if ($key eq 'storage.serial') { $temp{SERIALNUMBER} = $value; } elsif ($key eq 'storage.firmware_version') { $temp{FIRMWARE} = $value; } elsif ($key eq 'block.device') { $value =~ s/\/dev\/(\S+)/$1/; $temp{NAME} = $value; } elsif ($key eq 'info.vendor') { $temp{MANUFACTURER} = $value; } elsif ($key eq 'storage.model') { $temp{MODEL} = $value; } elsif ($key eq 'storage.drive_type') { $temp{TYPE} = $value; } elsif ($key eq 'storage.size') { $temp{DISKSIZE} = int($value/(1024*1024) + 0.5); } }elsif ($in== 1 and $line eq '' and $temp{NAME}) { $in = 0 ; $devices->{$temp{NAME}} = {%temp}; } } } foreach my $device (getFromUdev()) { my $name = $device->{NAME}; foreach my $f ("NAME", "MANUFACTURER", "MODEL", "DESCRIPTION", "TYPE", "DISKSIZE", "SERIALNUMBER", "FIRMWARE", "SCSI_COID", "SCSI_CHID", "SCSI_UNID", "SCSI_LUN") { if (!$devices->{$name}->{$f}) { $devices->{$name}->{$f} = $device->{$f}; } } } #Get hard drives values from sys or proc in case getting them throught udev doesn't work if (!%$devices) { my ($manufacturer, $model, $media, $firmware, $serialnumber, $capacity, $partitions, $description); foreach (glob ("/sys/block/*")) {# /sys fs style $partitions->{$1} = undef if (/^\/sys\/block\/([sh]d[a-z])$/) } foreach (`fdisk -l`) {# call fdisk to list partitions chomp; next unless (/^\//); $partitions->{$1} = undef if (/^\/dev\/([sh]d[a-z])/); } foreach my $device (keys %$partitions) { if (!$devices->{$device}->{MANUFACTURER}) { $devices->{$device}->{MANUFACTURER} = getFromSysProc($device, "vendor"); } if (!$devices->{$device}->{MODEL}) { $devices->{$device}->{MODEL} = getFromSysProc($device, "model"); } if (!$devices->{$device}->{TYPE}) { $devices->{$device}->{TYPE} = getFromSysProc($device, "removable")?"removable":"disk"; } if (!$devices->{$device}->{FIRMWARE}) { $devices->{$device}->{FIRMWARE} = getFromSysProc($device, "rev"); } if (!$devices->{$device}->{SERIALNUMBER}) { $devices->{$device}->{SERIALNUMBER} = getFromSysProc($device, "serial"); } # $logger->debug("Sys: $device, $manufacturer, $model, $description, $media, $capacity, $serialnumber, $firmware"); } } if (correctHdparmAvailable()) { foreach my $device (keys %$devices) { #Serial & Firmware if (!$devices->{$device}->{SERIALNUMBER} || !$devices->{$device}->{FIRMWARE}) { my $cmd = "hdparm -I /dev/".$devices->{$device}->{NAME}." 2> /dev/null"; foreach (`$cmd`) { if (/^\s+Serial Number\s*:\s*(.+)/ && !$devices->{$device}->{SERIALNUMBER}) { my $serialnumber = $1; $serialnumber =~ s/\s+$//; $devices->{$device}->{SERIALNUMBER} = $serialnumber; } if (/^\s+Firmware Revision\s*:\s*(.+)/i && !$devices->{$device}->{FIRMWARE}) { my $firmware = $1; $firmware =~ s/\s+$//; $devices->{$device}->{FIRMWARE} = $firmware; } } } } } foreach my $device (keys %$devices) { # if (($devices->{$device}->{MANUFACTURER} ne 'AMCC') and ($devices->{$device}->{MANUFACTURER} ne '3ware') and ($devices->{$device}->{MODEL} ne '') and ($devices->{$device}->{MANUFACTURER} ne 'LSILOGIC') and ($devices->{$device}->{MANUFACTURER} ne 'Adaptec')) { $devices->{$device}->{DESCRIPTION} = getDescription( $devices->{$device}->{NAME}, $devices->{$device}->{MANUFACTURER}, $devices->{$device}->{DESCRIPTION}, $devices->{$device}->{SERIALNUMBER}); if (!$devices->{$device}->{MANUFACTURER} or $devices->{$device}->{MANUFACTURER} eq 'ATA') { $devices->{$device}->{MANUFACTURER} = getManufacturer($devices->{$device}->{MODEL}); } if ($devices->{$device}->{CAPACITY} =~ /^cdrom$/) { $devices->{$device}->{CAPACITY} = getCapacity($devices->{$device}->{NAME}); } $common->addStorages($devices->{$device}); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Drives.pm010064400017500001750000000100371173606111100266470ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Drives; use strict; sub check { return unless can_run ("df"); my $df = `df -TP`; return 1 if $df =~ /\w+/; 0 } sub run { my $params = shift; my $common = $params->{common}; my %months = ( Jan => 1, Fev => 2, Mar => 3, Apr => 4, May => 5, Jun => 6, Jul => 7, Aug => 8, Sep => 9, Oct => 10, Nov => 11, Dec => 12, ); my %listVolume = (); # Get complementary information in hash tab if (can_run ("lshal")) { my %temp; my $in = 0; my $value; foreach my $line (`lshal`) { chomp $line; if ( $line =~ s{^udi = '/org/freedesktop/Hal/devices/volume.*}{}) { $in = 1; %temp = (); } elsif ($in == 1 and $line =~ s{^\s+(\S+) = (.*) \s*\((int|string|bool|string list|uint64)\)}{} ) { if ($3 ne 'int' and $3 ne 'uint64') { chomp($value = $2); if ($3 eq 'string') { chop($value); #$value =~ s/^'?(.*)'?$/$1/g; $value=substr($value,1,length($value)); $value=substr($value,0,length($value)-1); } $temp{$1} = $value; } else { $temp{$1} = (split(/\W/,$2))[0]; } }elsif ($in== 1 and $line eq '') { $in = 0 ; $listVolume{$temp{'block.device'}} = {%temp}; } } } foreach(`df -TP`) { # TODO retrive error my $createdate; my $free; my $filesystem; my $label; my $total; my $type; my $volumn; my $serial; if(/^(\S+)\s+(\S+)\s+(\S+)\s+(?:\S+)\s+(\S+)\s+(?:\S+)\s+(\S+)\n/){ $free = sprintf("%i",($4/1024)); $filesystem = $2; $total = sprintf("%i",($3/1024)); $type = $5; $volumn = $1; # no virtual FS next if ($filesystem =~ /^(tmpfs|usbfs|proc|devpts|devshm|udev)$/); next if ($type =~ /^(tmpfs)$/); if ($filesystem =~ /^ext(2|3|4|4dev)/ && can_run('dumpe2fs')) { foreach (`dumpe2fs -h $volumn 2> /dev/null`) { if (/Filesystem UUID:\s+(\S+)/) { $serial = $1; } elsif (/Filesystem created:\s+\w+ (\w+) (\d+) ([\d:]+) (\d{4})$/) { $createdate = $4.'/'.$months{$1}.'/'.$2.' '.$3; } elsif (/Filesystem volume name:\s*(\S.*)/) { $label = $1 unless $1 eq ''; } } } elsif ($filesystem =~ /^xfs$/ && can_run('xfs_db')) { foreach (`xfs_db -r -c uuid $volumn`) { $serial = $1 if /^UUID =\s+(\S+)/; ; } foreach (`xfs_db -r -c label $volumn`) { $label = $1 if /^label =\s+"(\S+)"/; } } elsif ($filesystem =~ /^vfat$/ && can_run('dosfslabel')) { chomp ($label = `dosfslabel $volumn`); } $label =~ s/\s+$//; $serial =~ s/\s+$//; # Check information and improve it if (keys %listVolume) { if ( defined $listVolume{$volumn} ) { if ($filesystem eq '') { $filesystem = $listVolume{$volumn}->{'volume.fstype'};} if ($label eq '') { $label = $listVolume{$volumn}->{'volume.label'};} if ($total eq '') { $total = int($listVolume{$volumn}->{'volume.size'}/(1024*1024) + 0.5);} if ($type eq '') { $type = $listVolume{$volumn}->{'storage.model'};} if ($serial eq '') { $serial = $listVolume{$volumn}->{'volume.uuid'};} delete ($listVolume{$volumn}); } } $common->addDrive({ CREATEDATE => $createdate, FREE => $free, FILESYSTEM => $filesystem, LABEL => $label, TOTAL => $total, TYPE => $type, VOLUMN => $volumn, SERIAL => $serial }); } } if (can_run ("lshal")) { while (my ($k,$v) = each %listVolume ) { $common->addDrive({ FILESYSTEM => $v->{'volume.fstype'}, LABEL => $v->{'volume.label'}, TOTAL => int ($v->{'volume.size'}/(1024*1024) + 0.5), TYPE => $v->{'storage.model'}, VOLUMN => $k, SERIAL => $v->{'volume.uuid'} }); } } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Mem.pm010064400017500001750000000010761173606111100261340ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Mem; use strict; sub check { can_read ("/proc/meminfo") } sub run { my $params = shift; my $common = $params->{common}; my $unit = 1024; my $PhysicalMemory; my $SwapFileSize; # Memory informations open MEMINFO, "/proc/meminfo"; while(){ $PhysicalMemory=$1 if /^memtotal\s*:\s*(\S+)/i; $SwapFileSize=$1 if /^swaptotal\s*:\s*(\S+)/i; } # TODO $common->setHardware({ MEMORY => sprintf("%i",$PhysicalMemory/$unit), SWAP => sprintf("%i", $SwapFileSize/$unit), }); } 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Sys.pm010064400017500001750000000004021173606111100261640ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Sys; #$LunchAfter = "Ocsinventory::Agent::Backend::OS::Linux::VirtualFs::Sys"; sub check { return unless can_run ("mount"); foreach (`mount`) { return 1 if (/type\ sysfs/); } 0; } sub run {} 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Archs004075500017500001750000000000001173606116100260455ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/SPARC004075500017500001750000000000001173606116100267155ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/SPARC/CPU.pm010064400017500001750000000010061173606111100277460ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Archs::SPARC::CPU; use strict; sub check { can_read ("/proc/cpuinfo") }; sub run { my $params = shift; my $common = $params->{common}; my @cpu; my $current = { ARCH => 'ARM' }; my $ncpus = 1; open CPUINFO, ") { $current->{TYPE} = $1 if /cpu\s+:\s+(\S.*)/; $ncpus = $1 if /ncpus probed\s+:\s+(\d+)/ } foreach (1..$ncpus) { $common->addCPU($current); } } 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/MIPS004075500017500001750000000000001173606116100266155ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/MIPS/CPU.pm010064400017500001750000000011751173606111100276550ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Archs::MIPS::CPU; use strict; sub check { can_read("/proc/cpuinfo") } sub run { my $params = shift; my $common = $params->{common}; my @cpu; my $current; open CPUINFO, ") { print; if (/^system type\s+:\s*:/) { if ($current) { $common->addCPU($current); } $current = { ARCH => 'MIPS', }; } $current->{TYPE} = $1 if /cpu model\s+:\s+(\S.*)/; } # The last one $common->addCPU($current); } 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/m68k004075500017500001750000000000001173606116100266325ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/m68k/CPU.pm010064400017500001750000000013011173606111100276610ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Archs::m68k::CPU; use strict; sub check { can_read("/proc/cpuinfo") } sub run { my $params = shift; my $common = $params->{common}; my @cpu; my $current; open CPUINFO, ") { print; if (/^CPU\s+:\s*:/) { if ($current) { $common->addCPU($current); } $current = { ARCH => 'm68k', }; } else { $current->{TYPE} = $1 if /CPU:\s+(\S.*)/; $current->{SPEED} = $1 if /Clocking:\s+:\s+(\S.*)/; } } # The last one $common->addCPU($current); } 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/Alpha004075500017500001750000000000001173606116100270725ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/Alpha/CPU.pm010064400017500001750000000014521173606111100301300ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Arachs::Alpha::CPU; use strict; sub check { can_read("/proc/cpuinfo") } sub run { my $params = shift; my $common = $params->{common}; my @cpu; my $current; open CPUINFO, ") { print; if (/^cpu\s*:/) { if ($current) { $common->addCPU($current); } $current = { ARCH => 'Alpha', }; } else { $current->{SERIAL} = $1 if /^cpu serial number\s+:\s+(\S.*)/; $current->{SPEED} = $1 if /cycle frequency \[Hz\]\s+:\s+(\d+)000000/; $current->{TYPE} = $1 if /platform string\s+:\s+(\S.*)/; } } # The last one $common->addCPU($current); } 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/ARM004075500017500001750000000000001173606116100264645ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/ARM/CPU.pm010064400017500001750000000011721173606111100275210ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Archs::ARM::CPU; use strict; sub check { can_read("/proc/cpuinfo") } sub run { my $params = shift; my $common = $params->{common}; my @cpu; my $current; open CPUINFO, ") { print; if (/^Processor\s+:\s*:/) { if ($current) { $common->addCPU($current); } $current = { ARCH => 'ARM', }; } $current->{TYPE} = $1 if /Processor\s+:\s+(\S.*)/; } # The last one $common->addCPU($current); } 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/PowerPC.pm010064400017500001750000000002541173606111100277720ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Archs::PowerPC; use strict; use Config; sub check { return 1 if $Config{'archname'} =~ /^(ppc|powerpc)/; 0; }; 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/SPARC.pm010064400017500001750000000002421173606111100273200ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Archs::SPARC; use strict; use Config; sub check { return 1 if $Config{'archname'} =~ /^sparc/; 0; }; 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/i386.pm010064400017500001750000000002521173606111100271420ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Archs::i386; use strict; use Config; sub check { return 1 if $Config{'archname'} =~ /^(i\d86|x86_64)/; 0; }; 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/Alpha.pm010064400017500001750000000002421173606111100274750ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Archs::Alpha; use strict; use Config; sub check { return 1 if $Config{'archname'} =~ /^alpha/; 0; }; 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/PowerPC004075500017500001750000000000001173606116100273645ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/PowerPC/CPU.pm010064400017500001750000000021351173606111100304210ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Archs::PowerPC::CPU; use strict; #processor : 0 #cpu : POWER4+ (gq) #clock : 1452.000000MHz #revision : 2.1 # #processor : 1 #cpu : POWER4+ (gq) #clock : 1452.000000MHz #revision : 2.1 # #timebase : 181495202 #machine : CHRP IBM,7029-6C3 # # sub check { can_read ("/proc/cpuinfo") }; sub run { my $params = shift; my $common = $params->{common}; my @cpus; my $current; my $isIBM; open CPUINFO, ") { $isIBM = 1 if /^machine\s*:.*IBM/; $current->{TYPE} = $1 if /cpu\s+:\s+(\S.*)/; $current->{SPEED} = $1 if /clock\s+:\s+(\S.*)/; $current->{SPEED} =~ s/\.0+MHz/MHz/; if (/^\s*$/) { if ($current->{TYPE}) { push @cpus, $current; } $current = {}; } } if (/^\s*$/) { if ($current->{TYPE}) { push @cpus, $current; } $current = {}; } foreach my $cpu (@cpus) { $cpu->{MANUFACTURER} = 'IBM' if $isIBM; $common->addCPU($cpu); } } 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/PowerPC/Various.pm010064400017500001750000000027141173606111100314250ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Archs::PowerPC::Various; use strict; sub check { 1 }; sub run { my $params = shift; my $common = $params->{common}; ############ Motherboard my $SystemManufacturer; my $SystemModel; my $SystemSerial; my $BiosManufacturer; my $BiosVersion; my $BiosDate; if (open SERIAL,"; $SystemSerial =~ s/[^\,^\.^\w^\ ]//g; # I remove some unprintable char close SERIAL; } if (open MODEL,"; $SystemModel =~ s/[^\,^\.^\w^\ ]//g; close MODEL; } if (open COLOR,"; close COLOR; my ($color) = unpack "h7" , $tmp; $SystemModel = $SystemModel." color: $color" if $color; } if (open OPENBOOT,"; $BiosVersion =~ s/[^\,^\.^\w^\ ]//g; close OPENBOOT; } if (open COPYRIGHT,"; close COPYRIGHT; if ($tmp =~ /Apple/) { # What about the Apple clone? $BiosManufacturer = "Apple Computer, Inc."; $SystemManufacturer = "Apple Computer, Inc." } } $common->setBios ({ SMANUFACTURER => $SystemManufacturer, SMODEL => $SystemModel, SSN => $SystemSerial, BMANUFACTURER => $BiosManufacturer, BVERSION => $BiosVersion, BDATE => $BiosDate, }); } 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/MIPS.pm010064400017500001750000000002401173606111100272160ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Archs::MIPS; use strict; use Config; sub check { return 1 if $Config{'archname'} =~ /^mips/; 0; }; 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/ARM.pm010064400017500001750000000002361173606111100270720ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Archs::ARM; use strict; use Config; sub check { return 1 if $Config{'archname'} =~ /^arm/; 0; }; 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/m68k.pm010064400017500001750000000002401173606111100272330ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Archs::m68k; use strict; use Config; sub check { return 1 if $Config{'archname'} =~ /^m68k/; 0; }; 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/i386004075500017500001750000000000001173606116100265365ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/i386/CPU.pm010064400017500001750000000023021173606111100275670ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Archs::i386::CPU; use strict; use Config; sub check { can_read("/proc/cpuinfo") } sub run { my $params = shift; my $common = $params->{common}; my @cpu; my $current; my $arch = 'unknow'; $arch = 'x86' if $Config{'archname'} =~ /^i\d86/; $arch = 'x86_64' if $Config{'archname'} =~ /^x86_64/; open CPUINFO, ") { if (/^processor\s*:/) { if ($current) { $common->addCPU($current); } $current = { MANUFACTURER => 'unknow' }; } # $current->{SERIAL} = $1 TODO with dmidecode; if (/^vendor_id\s*:\s*(Authentic|Genuine|)(.+)/i) { $current->{MANUFACTURER} = $2; $current->{MANUFACTURER} =~ s/(TMx86|TransmetaCPU)/Transmeta/; $current->{MANUFACTURER} =~ s/CyrixInstead/Cyrix/; $current->{MANUFACTURER} =~ s/CentaurHauls/VIA/; } $current->{SPEED} = $1 if /^cpu\sMHz\s*:\s*(\d+)(|\.\d+)$/i; $current->{TYPE} = $1 if /^model\sname\s*:\s*(.+)/i; } # The last one $common->addCPU($current); } 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Uptime.pm010064400017500001750000000013231173606111100266540ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Uptime; use strict; sub check { can_read("/proc/uptime") } sub run { my $params = shift; my $common = $params->{common}; # Uptime open UPTIME, "/proc/uptime"; my $uptime = ; $uptime =~ s/^(.+)\s+.+/$1/; close UPTIME; # Uptime conversion my ($UYEAR, $UMONTH , $UDAY, $UHOUR, $UMIN, $USEC) = (gmtime ($uptime))[5,4,3,2,1,0]; # Write in ISO format $uptime=sprintf "%02d-%02d-%02d %02d:%02d:%02d", ($UYEAR-70), $UMONTH, ($UDAY-1), $UHOUR, $UMIN, $USEC; chomp(my $DeviceType =`uname -m`); # TODO$h->{'CONTENT'}{'HARDWARE'}{'DESCRIPTION'} = [ "$DeviceType/$uptime" ]; $common->setHardware({ DESCRIPTION => "$DeviceType/$uptime" }); } 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Sounds.pm010064400017500001750000000005711173606111100266700ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Sounds; use strict; sub check { can_run("lspci") } sub run { my $params = shift; my $common = $params->{common}; foreach(`lspci`){ if(/audio/i && /^\S+\s([^:]+):\s*(.+?)(?:\(([^()]+)\))?$/i){ $common->addSound({ 'DESCRIPTION' => $3, 'MANUFACTURER' => $2, 'NAME' => $1, }); } } } 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Domains.pm010064400017500001750000000015601173606111100270060ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Domains; use strict; sub check { return unless can_run ("hostname"); my @domain = `hostname -d`; return 1 if @domain || can_read ("/etc/resolv.conf"); 0; } sub run { my $params = shift; my $common = $params->{common}; my $domain; my %domain; my @dns_list; my $dns; chomp($domain = `hostname -d`); open RESOLV, "/etc/resolv.conf" or warn; while(){ if (/^nameserver\s+(\S+)/i) { push(@dns_list,$1); } elsif (!$domain) { $domain{$2} = 1 if (/^(domain|search)\s+(.+)/); } } close RESOLV; if (!$domain) { $domain = join "/", keys %domain; } $dns=join("/",@dns_list); # If no domain name, we send "WORKGROUP" $domain = 'WORKGROUP' unless $domain; $common->setHardware({ WORKGROUP => $domain, DNS => $dns }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Network004075500017500001750000000000001173606116100264365ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Network/Networks.pm010064400017500001750000000102231173606111100306550ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Network::Networks; use strict; use warnings; sub check { return unless can_run("ifconfig") && can_run("route") && can_load("Net::IP qw(:PROC)"); 1; } sub _ipdhcp { my $if = shift; my $path; my $dhcp; my $ipdhcp; my $leasepath; foreach ( "/var/lib/dhcp3/dhclient.%s.leases", "/var/lib/dhcp3/dhclient.%s.leases", "/var/lib/dhcp/dhclient.%s.leases", "/var/lib/dhcp/dhclient.leases", "/var/lib/dhcp/dhclient-%s.leases", "/var/lib/dhclient/dhclient-%s.leases", ) { $leasepath = sprintf($_,$if); last if (-e $leasepath); } return undef unless -e $leasepath; if (open DHCP, $leasepath) { my $lease; while(){ $lease = 1 if(/lease\s*{/i); $lease = 0 if(/^\s*}\s*$/); #Interface name if ($lease) { #inside a lease section if(/interface\s+"(.+?)"\s*/){ $dhcp = ($1 =~ /^$if$/); } #Server IP if(/option\s+dhcp-server-identifier\s+(\d{1,3}(?:\.\d{1,3}){3})\s*;/ and $dhcp){ $ipdhcp = $1; } } } close DHCP or warn; } else { warn "Can't open $leasepath\n"; } return $ipdhcp; } # Initialise the distro entry sub run { my $params = shift; my $common = $params->{common}; my $logger = $params->{logger}; my $description; my $driver; my $ipaddress; my $ipgateway; my $ipmask; my $ipsubnet; my $macaddr; my $pcislot; my $status; my $type; my $virtualdev; my %gateway; foreach (`route -n`) { if (/^(\d+\.\d+\.\d+\.\d+)\s+(\d+\.\d+\.\d+\.\d+)/) { $gateway{$1} = $2; } } if (defined ($gateway{'0.0.0.0'})) { $common->setHardware({ DEFAULTGATEWAY => $gateway{'0.0.0.0'} }); } foreach my $line (`ifconfig -a`) { if ($line =~ /^$/ && $description && $macaddr) { # end of interface section # I write the entry my $binip = ip_iptobin ($ipaddress ,4); my $binmask = ip_iptobin ($ipmask ,4); my $binsubnet = $binip & $binmask; $ipsubnet = ip_bintoip($binsubnet,4); my @wifistatus = `iwconfig $description 2>>/dev/null`; if ( @wifistatus > 2 ) { $type = "Wifi"; } $ipgateway = $gateway{$ipsubnet}; # replace '0.0.0.0' (ie 'default gateway') by the default gateway IP adress if it exists if (defined($ipgateway) and $ipgateway eq '0.0.0.0' and defined($gateway{'0.0.0.0'})) { $ipgateway = $gateway{'0.0.0.0'} } if (open UEVENT, ") { $driver = $1 if /^DRIVER=(\S+)/; $pcislot = $1 if /^PCI_SLOT_NAME=(\S+)/; } close UEVENT; } # Reliable way to get the info if (-d "/sys/devices/virtual/net/") { $virtualdev = (-d "/sys/devices/virtual/net/$description")?"1":"0"; } elsif (can_run("brctl")) { # Let's guess my %bridge; foreach (`brctl show`) { next if /^bridge name/; $bridge{$1} = 1 if /^(\w+)\s/; } if ($pcislot) { $virtualdev = "1"; } elsif ($bridge{$description}) { $virtualdev = "0"; } } $common->addNetwork({ DESCRIPTION => $description, DRIVER => $driver, IPADDRESS => $ipaddress, IPDHCP => _ipdhcp($description), IPGATEWAY => $ipgateway, IPMASK => $ipmask, IPSUBNET => $ipsubnet, MACADDR => $macaddr, PCISLOT => $pcislot, STATUS => $status?"Up":"Down", TYPE => $type, VIRTUALDEV => $virtualdev, }); } if ($line =~ /^$/) { # End of section $description = $driver = $ipaddress = $ipmask = $ipgateway = $macaddr = $pcislot = $status = $type = $virtualdev = undef; } else { # In a section $description = $1 if $line =~ /^(\S+)/; # Interface name $ipaddress = $1 if $line =~ /inet addr:(\S+)/i; $ipmask = $1 if $line =~ /\S*mask:(\S+)/i; $macaddr = $1 if $line =~ /hwadd?r\s+(\w{2}:\w{2}:\w{2}:\w{2}:\w{2}:\w{2})/i; $status = 1 if $line =~ /^\s+UP\s/; $type = $1 if $line =~ /link encap:(\S+)/i; } } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux/Network/IPv4.pm010064400017500001750000000006351173606111100276310ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux::Network::IPv4; sub check { return unless can_run ("ifconfig"); 1; } # Initialise the distro entry sub run { my $params = shift; my $common = $params->{common}; my @ip; foreach (`ifconfig`){ if(/^\s*inet add?r\s*:\s*(\S+)/){ ($1=~/127.+/)?next:push @ip, $1 }; } my $ip=join "/", @ip; $common->setHardware({IPADDR => $ip}); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/BSD004075500017500001750000000000001173606116100243165ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/BSD/Archs004075500017500001750000000000001173606116100253565ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/BSD/Archs/I386.pm010064400017500001750000000027031173606111100264160ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::BSD::Archs::I386; # for i386 in case dmidecode is not available use strict; sub check{ my $arch; chomp($arch=`sysctl -n hw.machine`); return if (($arch ne "i386") && ($arch ne "amd64")); # dmidecode must not be present `dmidecode 2>&1`; return if ($? >> 8)==0; 1; } sub run { my $params = shift; my $common = $params->{common}; my( $SystemSerial , $SystemModel, $SystemManufacturer, $BiosManufacturer, $BiosVersion, $BiosDate); my ( $processort , $processorn , $processors ); # use hw.machine for the system model # TODO see if we can do better chomp($SystemModel=`sysctl -n hw.machine`); # number of procs with sysctl (hw.ncpu) chomp($processorn=`sysctl -n hw.ncpu`); # proc type with sysctl (hw.model) chomp($processort=`sysctl -n hw.model`); # XXX quick and dirty _attempt_ to get proc speed through dmesg for(`dmesg`){ my $tmp; if (/^cpu\S*\s.*\D[\s|\(]([\d|\.]+)[\s|-]mhz/i) { # XXX unsure $tmp = $1; $tmp =~ s/\..*//; $processors=$tmp; last } } # Writing data $common->setBios ({ SMANUFACTURER => $SystemManufacturer, SMODEL => $SystemModel, SSN => $SystemSerial, BMANUFACTURER => $BiosManufacturer, BVERSION => $BiosVersion, BDATE => $BiosDate, }); $common->setHardware({ PROCESSORT => $processort, PROCESSORN => $processorn, PROCESSORS => $processors }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/BSD/Archs/Sgimips.pm010064400017500001750000000036351173606111100274050ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::BSD::Archs::Sgimips; use strict; sub check{ my $arch; chomp($arch=`sysctl -n hw.machine`); $arch =~ m/^sgi/; } sub run { my $params = shift; my $common = $params->{common}; my( $SystemSerial , $SystemModel, $SystemManufacturer, $BiosManufacturer, $BiosVersion, $BiosDate); my ( $processort , $processorn , $processors ); ### Get system model with "sysctl hw.model" # # example on NetBSD # hw.model = SGI-IP22 # example on OpenBSD # hw.model=SGI-O2 (IP32) chomp($SystemModel=`sysctl -n hw.model`); $SystemManufacturer = "SGI"; ### Get processor type and speed in dmesg # # Examples of dmesg output : # # I) Indy # a) NetBSD # mainbus0 (root): SGI-IP22 [SGI, 6906e152], 1 processor # cpu0 at mainbus0: MIPS R4400 CPU (0x450) Rev. 5.0 with MIPS R4010 FPC Rev. 0.0 # int0 at mainbus0 addr 0x1fbd9880: bus 75MHz, CPU 150MHz # # II) O2 # a) NetBSD # mainbus0 (root): SGI-IP32 [SGI, 8], 1 processor # cpu0 at mainbus0: MIPS R5000 CPU (0x2321) Rev. 2.1 with built-in FPU Rev. 1.0 # b) OpenBSD # mainbus0 (root) # cpu0 at mainbus0: MIPS R5000 CPU rev 2.1 180 MHz with R5000 based FPC rev 1.0 # cpu0: cache L1-I 32KB D 32KB 2 way, L2 512KB direct for (`dmesg`) { if (/$SystemModel\s*\[\S*\s*(\S*)\]/) { $SystemSerial = $1; } if (/cpu0 at mainbus0:\s*(.*)$/) { $processort = $1; } if (/CPU\s*.*\D(\d+)\s*MHz/) { $processors = $1; } } # number of procs with sysctl (hw.ncpu) chomp($processorn=`sysctl -n hw.ncpu`); # Writing data $common->setBios ({ SMANUFACTURER => $SystemManufacturer, SMODEL => $SystemModel, SSN => $SystemSerial, BMANUFACTURER => $BiosManufacturer, BVERSION => $BiosVersion, BDATE => $BiosDate, }); $common->setHardware({ PROCESSORT => $processort, PROCESSORN => $processorn, PROCESSORS => $processors }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/BSD/Archs/Sparc.pm010064400017500001750000000053771173606111100270470ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::BSD::Archs::Sparc; use strict; sub check{ my $arch; chomp($arch=`sysctl -n hw.machine`); $arch =~ /^sparc/; } sub run { my $params = shift; my $common = $params->{common}; my( $SystemSerial , $SystemModel, $SystemManufacturer, $BiosManufacturer, $BiosVersion, $BiosDate); my ( $processort , $processorn , $processors ); ### Get system serial with "sysctl kern.hostid" # # sysctl -n kern.hostid gives e.g. 0x807b65c on NetBSD # and 2155570635 on OpenBSD; we keep the hex form chomp ($SystemSerial = `sysctl -n kern.hostid`); if ( $SystemSerial =~ /^\d*$/ ) { # convert to NetBSD format $SystemSerial = sprintf ("0x%x",$SystemSerial); } $SystemSerial =~ s/^0x//; # remove 0x to make it appear as in the firmware ### Get system model and processor type in dmesg # # cannot use "sysctl hw.model" to get SystemModel # because it gives only the CPU on OpenBSD/sparc64 # # Examples of dmesg output : # # I) SPARC # a) NetBSD # mainbus0 (root): SUNW,SPARCstation-20: hostid 72362bb1 # cpu0 at mainbus0: TMS390Z50 v0 or TMS390Z55 @ 50 MHz, on-chip FPU # b) OpenBSD # mainbus0 (root): SUNW,SPARCstation-20 # cpu0 at mainbus0: TMS390Z50 v0 or TMS390Z55 @ 50 MHz, on-chip FPU # # II) SPARC64 # a) NetBSD # mainbus0 (root): SUNW,Ultra-1: hostid 807b65cb # cpu0 at mainbus0: SUNW,UltraSPARC @ 166.999 MHz, version 0 FPU # b) OpenBSD # mainbus0 (root): Sun Ultra 1 SBus (UltraSPARC 167MHz) # cpu0 at mainbus0: SUNW,UltraSPARC @ 166.999 MHz, version 0 FPU # c) FreeBSD # cpu0: Sun Microsystems UltraSparc-I Processor (167.00 MHz CPU) for (`dmesg`) { if (/^mainbus0 \(root\):\s*(.*)$/) { $SystemModel = $1; } if (/^cpu[^:]*:\s*(.*)$/i) { $processort = $1 unless $processort; } } $SystemModel || chomp ($SystemModel = `sysctl -n hw.model`); # for FreeBSD $SystemManufacturer = "SUN"; # some cleanup $SystemModel =~ s/SUNW,//; $SystemModel =~ s/[:\(].*$//; $SystemModel =~ s/^\s*//; $SystemModel =~ s/\s*$//; $processort =~ s/SUNW,//; $processort =~ s/^\s*//; $processort =~ s/\s*$//; # number of procs with "sysctl hw.ncpu" chomp($processorn=`sysctl -n hw.ncpu`); # XXX quick and dirty _attempt_ to get proc speed if ( $processort =~ /(\d+)(\.\d+|)\s*mhz/i ) { # possible decimal point $processors = sprintf("%.0f", "$1$2"); # round number } # Writing data $common->setBios ({ SMANUFACTURER => $SystemManufacturer, SMODEL => $SystemModel, SSN => $SystemSerial, BMANUFACTURER => $BiosManufacturer, BVERSION => $BiosVersion, BDATE => $BiosDate, }); $common->setHardware({ PROCESSORT => $processort, PROCESSORN => $processorn, PROCESSORS => $processors }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/BSD/Archs/Alpha.pm010064400017500001750000000030351173606111100270110ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::BSD::Archs::Alpha; use strict; sub check{ my $arch; chomp($arch=`sysctl -n hw.machine`); $arch eq "alpha"; } sub run { my $params = shift; my $common = $params->{common}; my( $SystemSerial , $SystemModel, $SystemManufacturer, $BiosManufacturer, $BiosVersion, $BiosDate); my ( $processort , $processorn , $processors ); ### Get system model with "sysctl hw.model" # # example on *BSD # hw.model = AlphaStation 255 4/232 chomp($SystemModel=`sysctl -n hw.model`); $SystemManufacturer = "DEC"; ### Get processor type and speed in dmesg # # NetBSD: AlphaStation 255 4/232, 232MHz, s/n # cpu0 at mainbus0: ID 0 (primary), 21064A-2 # OpenBSD: AlphaStation 255 4/232, 232MHz # cpu0 at mainbus0: ID 0 (primary), 21064A-2 (pass 1.1) # FreeBSD: AlphaStation 255 4/232, 232MHz # CPU: EV45 (21064A) major=6 minor=2 for (`dmesg`) { if (/^cpu[^:]*:\s*(.*)$/i) { $processort = $1; } if (/$SystemModel,\s*(\S+)\s*MHz.*$/) { $processors = $1; } } # number of procs with sysctl (hw.ncpu) chomp($processorn=`sysctl -n hw.ncpu`); # Writing data $common->setBios ({ SMANUFACTURER => $SystemManufacturer, SMODEL => $SystemModel, SSN => $SystemSerial, BMANUFACTURER => $BiosManufacturer, BVERSION => $BiosVersion, BDATE => $BiosDate, }); $common->setHardware({ PROCESSORT => $processort, PROCESSORN => $processorn, PROCESSORS => $processors }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/BSD/Drives.pm010064400017500001750000000014011173606111100261530ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::BSD::Drives; use strict; sub run { my $params = shift; my $common = $params->{common}; my $free; my $filesystem; my $total; my $type; my $volumn; for my $t ("ffs","ufs") { # OpenBSD has no -m option so use -k to obtain results in kilobytes for(`df -P -t $t -k`){ if(/^(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\n/){ $volumn = $1; $filesystem = $t; $total = sprintf("%i",$2/1024); $free = sprintf("%i",$4/1024); $type = $6; $common->addDrive({ FREE => $free, FILESYSTEM => $filesystem, TOTAL => $total, TYPE => $type, VOLUMN => $volumn }); } } } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/BSD/Domains.pm010064400017500001750000000017751173606111100263270ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::BSD::Domains; use strict; sub check { my $hostname; chomp ($hostname = `hostname`); my @domain = split (/\./, $hostname); shift (@domain); return 1 if @domain; -f "/etc/resolv.conf" } sub run { my $params = shift; my $common = $params->{common}; my $domain; my %domain; my @dns_list; my $dns; my $hostname; chomp ($hostname = `hostname`); my @domain = split (/\./, $hostname); shift (@domain); $domain = join ('.',@domain); open RESOLV, "/etc/resolv.conf" or warn; while(){ if (/^nameserver\s+(\S+)/i) { push(@dns_list,$1); } elsif (!$domain) { $domain{$2} = 1 if (/^(domain|search)\s+(.+)/); } } close RESOLV; if (!$domain) { $domain = join "/", keys %domain; } $dns=join("/",@dns_list); # If no domain name, we send "WORKGROUP" $domain = 'WORKGROUP' unless $domain; $common->setHardware({ WORKGROUP => $domain, DNS => $dns }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/BSD/Uptime.pm010064400017500001750000000015341173606111100261710ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::BSD::Uptime; use strict; sub check { my $boottime = `sysctl -n kern.boottime 2>/dev/null`; return 1 if $boottime; return; } sub run { my $params = shift; my $common = $params->{common}; chomp (my $boottime = `sysctl -n kern.boottime`); $boottime = $1 if $boottime =~ /sec\s*=\s*(\d+)/; chomp (my $currenttime = `date +%s`); my $uptime = $currenttime - $boottime; # Uptime conversion my ($UYEAR, $UMONTH , $UDAY, $UHOUR, $UMIN, $USEC) = (gmtime ($uptime))[5,4,3,2,1,0]; # Write in ISO format $uptime=sprintf "%02d-%02d-%02d %02d:%02d:%02d", ($UYEAR-70), $UMONTH, ($UDAY-1), $UHOUR, $UMIN, $USEC; chomp(my $DeviceType =`uname -m`); # TODO$h->{'CONTENT'}{'HARDWARE'}{'DESCRIPTION'} = [ "$DeviceType/$uptime" ]; $common->setHardware({ DESCRIPTION => "$DeviceType/$uptime" }); } 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/BSD/Mem.pm010064400017500001750000000012261173606111100254420ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::BSD::Mem; use strict; sub check { `which sysctl 2>&1`; return 0 if($? >> 8); `which swapctl 2>&1`; return 0 if($? >> 8); 1; }; sub run { my $params = shift; my $common = $params->{common}; my $PhysicalMemory; my $SwapFileSize; # Swap my @bsd_swapctl= `swapctl -sk`; for(@bsd_swapctl){ $SwapFileSize=$1 if /total:\s*(\d+)/i; } # RAM chomp($PhysicalMemory=`sysctl -n hw.physmem`); $PhysicalMemory=$PhysicalMemory/1024; # Send it to inventory object $common->setHardware({ MEMORY => sprintf("%i",$PhysicalMemory/1024), SWAP => sprintf("%i", $SwapFileSize/1024), }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/BSD/Networks.pm010064400017500001750000000062561173606111100265500ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::BSD::Networks; use strict; sub check { can_run("ifconfig") && can_load("Net::IP qw(:PROC)") } sub _ipdhcp { my $if = shift; my $path; my $ipdhcp; my $leasepath; foreach ( # XXX BSD paths "/var/db/dhclient.leases.%s", "/var/db/dhclient.leases", # Linux path for some kFreeBSD based GNU system "/var/lib/dhcp3/dhclient.%s.leases", "/var/lib/dhcp3/dhclient.%s.leases", "/var/lib/dhcp/dhclient.leases") { $leasepath = sprintf($_,$if); last if (-e $leasepath); } return undef unless -e $leasepath; if (open DHCP, $leasepath) { my $lease; my $dhcp; my $expire; # find the last lease for the interface with its expire date while(){ $lease = 1 if(/lease\s*{/i); $lease = 0 if(/^\s*}\s*$/); if ($lease) { #inside a lease section if(/interface\s+"(.+?)"\s*/){ $dhcp = ($1 =~ /^$if$/); } #Server IP if(/option\s+dhcp-server-identifier\s+(\d{1,3}(?:\.\d{1,3}){3})\s*;/ and $dhcp){ $ipdhcp = $1; } if (/^\s*expire\s*\d\s*(\d*)\/(\d*)\/(\d*)\s*(\d*):(\d*):(\d*)/ and $dhcp) { $expire=sprintf "%04d%02d%02d%02d%02d%02d",$1,$2,$3,$4,$5,$6; } } } close DHCP or warn; chomp (my $currenttime = `date +"%Y%m%d%H%M%S"`); undef $ipdhcp unless $currenttime <= $expire; } else { warn "Can't open $leasepath\n"; } return $ipdhcp; } # Initialise the distro entry sub run { my $params = shift; my $common = $params->{common}; my $description; my $ipaddress; my $ipgateway; my $ipmask; my $ipsubnet; my $macaddr; my $status; my $type; # Looking for the gateway # 'route show' doesn't work on FreeBSD so we use netstat # XXX IPV4 only for(`netstat -nr -f inet`){ $ipgateway=$1 if /^default\s+(\S+)/i; } my @ifconfig = `ifconfig -a`; # -a option required on *BSD # first make the list available interfaces # too bad there's no -l option on OpenBSD my @list; foreach (@ifconfig){ # skip loopback, pseudo-devices and point-to-point interfaces next if /^(lo|fwe|vmnet|sit|pflog|pfsync|enc|strip|plip|sl|ppp)\d+/; if (/^(\S+):/) { push @list , $1; } # new interface name } # for each interface get it's parameters foreach $description (@list) { $ipaddress = $ipmask = $macaddr = $status = $type = undef; # search interface infos @ifconfig = `ifconfig $description`; foreach (@ifconfig){ $ipaddress = $1 if /inet (\S+)/i; $ipmask = $1 if /netmask\s+(\S+)/i; $macaddr = $2 if /(address:|ether|lladdr)\s+(\S+)/i; $status = 1 if /addNetwork({ DESCRIPTION => $description, IPADDRESS => $ipaddress, IPDHCP => _ipdhcp($description), IPGATEWAY => ($status?$ipgateway:undef), IPMASK => $ipmask, IPSUBNET => ($status?$ipsubnet:undef), MACADDR => $macaddr, STATUS => $status?"Up":"Down", TYPE => $type }); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/BSD/IPv4.pm010064400017500001750000000010041173606111100255000ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::BSD::IPv4; sub check { my @ifconfig = `ifconfig -a 2>/dev/null`; return 1 if @ifconfig; return; } # Initialise the distro entry sub run { my $params = shift; my $common = $params->{common}; my @ip; # Looking for ip addresses with ifconfig, except loopback # *BSD need -a option foreach (`ifconfig -a`){ if(/^\s*inet\s+(\S+)/){ ($1=~/127.+/)?next:push @ip, $1 }; } my $ip=join "/", @ip; $common->setHardware({IPADDR => $ip}); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/BSD/Storages.pm010064400017500001750000000017321173606111100265150ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::BSD::Storages; use strict; sub check {-r '/etc/fstab'} sub run { my $params = shift; my $common = $params->{common}; my @values; my @devices; open FSTAB, "/etc/fstab"; while(){ if(/^\/dev\/(\D+\d)/) { push @devices, $1 unless grep(/^$1$/, @devices); } } for my $dev (@devices) { my ($model,$capacity,$found, $manufacturer); for(`dmesg`){ if(/^$dev/) { $found = 1;} if(/^$dev.*<(.*)>/) { $model = $1; } if(/^$dev.*\s+(\d+)\s*MB/) { $capacity = $1;} } if ($model =~ s/^(SGI|SONY|WDC|ASUS|LG|TEAC|SAMSUNG|PHILIPS|PIONEER|MAXTOR|PLEXTOR|SEAGATE|IBM|SUN|SGI|DEC|FUJITSU|TOSHIBA|YAMAHA|HITACHI|VERITAS)\s*//i) { $manufacturer = $1; } # clean up the model $model =~ s/^(\s|,)*//; $model =~ s/(\s|,)*$//; $common->addStorages({ MANUFACTURER => $manufacturer, MODEL => $model, DESCRIPTION => $dev, TYPE => '', DISKSIZE => $capacity }); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/BSD/CPU.pm010064400017500001750000000016411173606111100253540ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::BSD::CPU; use strict; sub check { return unless -r "/dev/mem"; `which dmidecode 2>&1`; return if ($? >> 8)!=0; `dmidecode 2>&1`; return if ($? >> 8)!=0; 1; } sub run { my $params = shift; my $common = $params->{common}; my $processort; my $processorn; my $processors; my $family; my $manufacturer; # XXX Parsing dmidecode output using "type 4" section # for nproc type and speed # because no /proc on *BSD #TODO: enhance this part to get speed everytime and support for multi CPUs my $flag=0; my $status=0; ### XXX 0 if Unpopulated for(`dmidecode`){ $status = 1 if $flag && /^\s*status\s*:.*enabled/i; $processors = $1 if $flag && /^\s*current speed\s*:\s*(\d+).+/i; } $processorn = `sysctl -n hw.ncpu`; $processort = `sysctl -n hw.model`; $common->addCPU({ TYPE => $processort, SPEED => $processors }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/BSD/Sys.pm010064400017500001750000000003631173606111100255030ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::BSD::Sys; #$LunchAfter = "Ocsinventory::Agent::Backend::OS::Linux::VirtualFs::Sys"; sub check { foreach (`mount`) { return 1 if (/type\ sysfs/); } return; } sub run { # Hum? return ""; } 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Solaris004075500017500001750000000000001173606116100253225ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Solaris/Storages.pm010064400017500001750000000045421173606111100275230ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Solaris::Storages; use strict; #use warning; #sd0 Soft Errors: 0 Hard Errors: 0 Transport Errors: 0 #Vendor: HITACHI Product: DK32EJ72NSUN72G Revision: PQ08 Serial No: 43W14Z080040A34E #Size: 73.40GB <73400057856 bytes> #Media Error: 0 Device Not Ready: 0 No Device: 0 Recoverable: 0 #Illegal Request: 0 Predictive Failure Analysis: 0 # With -En : #c8t60060E80141A420000011A420000300Bd0 Soft Errors: 1 Hard Errors: 0 Transport Errors: 0 #Vendor: HITACHI Product: OPEN-V -SUN Revision: 5009 Serial No: #Size: 64.42GB <64424509440 bytes> #Media Error: 0 Device Not Ready: 0 No Device: 0 Recoverable: 0 #Illegal Request: 1 Predictive Failure Analysis: 0 sub check { can_run ("iostat") } sub run { my $params = shift; my $common = $params->{common}; my $manufacturer; my $model; my $description; my $capacity; my $name; my $rev; my $sn; my $type; my $flag_first_line; my $rdisk_path; foreach(`iostat -En`){ #print; if($flag_first_line){ if(/^.*<(\S+)\s*bytes/){ $capacity = $1; $capacity = $capacity/(1024*1024); #print $capacity."\n"; } ## To be removed when FIRMWARE will be supported if ($rev) { $description .= ' ' if $description; $description .= "FW:$rev"; } $rdisk_path=`ls -l /dev/rdsk/${name}s2`; if( $rdisk_path =~ /.*->.*scsi_vhci.*/ ) { $type="MPxIO"; } elsif( $rdisk_path =~ /.*->.*fp@.*/ ) { $type="FC"; } elsif( $rdisk_path =~ /.*->.*scsi@.*/ ) { $type="SCSI"; } $common->addStorages({ NAME => $name, MANUFACTURER => $manufacturer, MODEL => $model, DESCRIPTION => $description, TYPE => $type, FIRMWARE => $rev, SERIALNUMBER => $sn, DISKSIZE => $capacity }); $manufacturer=''; $model=''; $description=''; $name=''; $rev=''; $sn=''; $type=''; } $flag_first_line = 0; if(/^(\S+)\s+Soft/){ $name = $1; } if(/^.*Product:\s*(\S+)/){ $model = $1; } if(/^.*Serial No:\s*(\S+)/){ $sn = $1; ## To be removed when SERIALNUMBER will be supported $description = "S/N:$sn"; ## } if(/^.*Revision:\s*(\S+)/){ $rev = $1; } if(/^Vendor:\s*(\S+)/){ $manufacturer = $1; $flag_first_line = 1; } } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Solaris/Drives.pm010064400017500001750000000032151173606111100271640ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Solaris::Drives; #Filesystem kbytes used avail capacity Mounted on #/dev/vx/dsk/bootdg/rootvol 16525754 5423501 10936996 34% / #/devices 0 0 0 0% /devices #ctfs 0 0 0 0% /system/contract #proc 0 0 0 0% /proc #mnttab 0 0 0 0% /etc/mnttab use strict; sub check { can_run ("df") } sub run { my $params = shift; my $common = $params->{common}; my $free; my $filesystem; my $total; my $type; my $volumn; #Looking for mount points and disk space for(`df -k`){ if (/^Filesystem\s*/){next}; # on Solaris 10 /devices is an extra mount which we like to exclude if (/^\/devices/){next}; # on Solaris 10 /platform/.../libc_psr_hwcap1.so.1 is an extra mount which we like to exclude if (/^\/platform/){next}; # exclude cdrom mount point if (/^\/.*\/cdrom/){next}; if (!(/^\/.*/) && !(/^swap.*/)){next}; if(/^(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\n/){ $filesystem = $1; $total = sprintf("%i",($2/1024)); $free = sprintf("%i",($4/1024)); $volumn = $6; if($filesystem =~ /^\/dev\/\S*/){ chomp($type=`fstyp $filesystem`); $type = '' if $type =~ /cannot stat/; } else {$type="";} #print "FILESYS ".$filesystem." FILETYP ".$type." TOTAL ".$total." FREE ".$free." VOLUMN ".$volumn."\n"; $common->addDrive({ FREE => $free, FILESYSTEM => $filesystem, TOTAL => $total, TYPE => $type, VOLUMN => $volumn }) } } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Solaris/Packages.pm010064400017500001750000000026441173606111100274530ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Solaris::Packages; use strict; use warnings; sub check { my $params = shift; # Do not run an package inventory if there is the --nosoft parameter return if ($params->{config}->{nosoft}); can_run("pkginfo"); } sub run { my $params = shift; my $common = $params->{common}; my $chaine ; my @tab; my $name; my $version; my $comments; my $publisher; foreach (`pkginfo -l`) { if (/^\s*$/) { $common->addSoftware({ 'NAME' => $name, 'VERSION' => $version, 'COMMENTS' => $comments, 'PUBLISHER' => $publisher, }); $name = ''; $version = ''; $comments = ''; $publisher = ''; } elsif (/PKGINST:\s+(.+)/) { $name = $1; } elsif (/VERSION:\s+(.+)/) { $version = $1; } elsif (/VENDOR:\s+(.+)/) { $publisher = $1; } elsif (/DESC:\s+(.+)/) { $comments = $1; } } my $testrep; $testrep=0; #opendir(DIR,'/var/sis/') || exit ; opendir(DIR,'/var/sis/') || ($testrep=1) ; if ($testrep==0) { foreach (`ls /var/sis/*.SIS`) { $chaine= `cat $_` ; @tab = split(/;/, $chaine); if (/^\/var\/sis\/(\S+).SIS/){ $common->addSoftware({ 'VERSION' => $tab[2], 'NAME' => $tab[0]." ($1)", 'PUBLISHER' => $tab[1], 'COMMENTS' => $1, }); } } } closedir(DIR); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Solaris/Controllers.pm010064400017500001750000000011761173606111100302420ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Solaris::Controllers; use strict; sub check { can_run ("cfgadm") } sub run { my $params = shift; my $common = $params->{common}; my $name; my $type; my $manufacturer; foreach(`cfgadm -s cols=ap_id:type:info`){ next if (/^Ap_Id/); if(/^(\S+)\s+/){ $name = $1; } if(/^\S+\s+(\S+)/){ $type = $1; } #No manufacturer, but informations about controller if(/^\S+\s+\S+\s+(\S+)/){ $manufacturer = $1; } $common->addController({ 'NAME' => $name, 'MANUFACTURER' => $manufacturer, 'TYPE' => $type, }); } } 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Solaris/Memory.pm010064400017500001750000000420351173606111100272030ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Solaris::Memory; use strict; sub check { can_run ("memconf") } sub run { my $model; my $params = shift; my $common = $params->{common}; my $logger = $params->{logger}; my $capacity; my $description; my $numslots; my $speed = undef; my $type = undef; my $banksize; my $module_count=0; my $empty_slots; my $flag=0; my $flag_mt=0; my $caption; my $sun_class=0; my $OSLevel; my $zone; # for debug only my $j=0; # first, we need determinate on which model of sun server we run, # because prtdiags output (and with that memconfs output) is differend # from server model to server model # we try to classified our box in one of the known classes $OSLevel=`uname -r`; if ( $OSLevel =~ /5.8/ || !can_run("zoneadm") ){ $zone = "global"; }else{ foreach (`zoneadm list -p`){ $zone=$1 if /^0:([a-z]+):.*$/; } } #print "Nom :".$zone."*************************\n"; if ($zone) { # first, we need determinate on which model of Sun Server we run, # because prtdiags output (and with that memconfs output) is differend # from server model to server model # we try to classified our box in one of the known classes $model=`uname -i`; # debug print model # cut the CR from string model $model = substr($model, 0, length($model)-1); }else{ $model="Solaris Containers"; } #print "Memory Model: $model\n"; #$model=`uname -i`; # debug print model #print "Model: '$model'"; # cut the CR from string model #$model = substr($model, 0, length($model)-1); # we map (hopfully) our server model to a known class #if ($model eq "SUNW,Sun-Fire-280R") { $sun_class = 1; } #if ($model eq "SUNW,Sun-Fire-480R") { $sun_class = 1; } #if ($model eq "SUNW,Sun-Fire-V490") { $sun_class = 1; } #if ($model eq "SUNW,Sun-Fire-880") { $sun_class = 1; } #if ($model eq "SUNW,Sun-Fire-V240") { $sun_class = 2; } #if ($model eq "SUNW,Sun-Fire-V440") { $sun_class = 2; } #if ($model eq "SUNW,Sun-Fire-V250") { $sun_class = 2; } #if ($model eq "SUNW,Sun-Fire-T200") { $sun_class = 3; } #if ($model eq "SUNW,Sun-Fire-T1000") { $sun_class = 3; } #if ($model eq "SUNW,SPARC-Enterprise-T5220") { $sun_class = 4; } #if ($model eq "SUNW,SPARC-Enterprise") { $sun_class = 5; } # for M5000 && M4000 if ($model =~ /SUNW,SPARC-Enterprise/) { $sun_class = 5; } # for M5000 && M4000 if ($model =~ /SUNW,SPARC-Enterprise-T\d/){ $sun_class = 4; } if ($model =~ /SUNW,Netra-T/){ $sun_class = 2; } if ($model =~ /SUNW,Sun-Fire-\d/){ $sun_class = 1; } if ($model =~ /SUNW,Sun-Fire-V/){ $sun_class = 2; } if ($model =~ /SUNW,Sun-Fire-V490/) { $sun_class = 1; } if ($model =~ /SUNW,Sun-Fire-T\d/) { $sun_class = 3; } if ($model =~ /SUNW,SPARCstation/) { $sun_class = 3; } if ($model =~ /SUNW,Ultra-/) { $sun_class = 3; } if ($model =~ /SUNW,Sun-Blade-100/) { $sun_class = 8; } if ($model =~ /SUNW,T\d/) { $sun_class = 3; } if ($model =~ /Solaris Containers/){ $sun_class = 7; } if ($model eq "i86pc") { $sun_class = 6; } # debug print model #print "Sunclass: $sun_class\n"; # now we can look at memory information, depending from our class if($sun_class == 0) { $logger->debug("sorry, unknown model, could not detect memory configuration"); } if($sun_class == 1) { foreach(`memconf 2>&1`) { # debug #print "count: " .$j++ . " " . $flag_mt . " : " . "$_"; # if we find "empty groups:", we have reached the end and indicate that by setting flag = 0 if(/^empty \w+:\s(\S+)/) { $flag = 0; if($1 eq "None"){$empty_slots = 0;} } # grep the type of memory modules from heading if($flag_mt && /^\s*\S+\s+\S+\s+\S+\s+\S+\s+(\S+)/) {$flag_mt=0; $description = $1;} # only grap for information if flag = 1 if ($flag && /^\s*(\S+)\s+(\S+)/) { $caption = "Board " . $1 . " MemCtl " . $2; } if ($flag && /^\s*\S+\s+\S+\s+(\S+)/) { $numslots = $1; } if ($flag && /^\s*\S+\s+\S+\s+\S+\s+(\d+)/) { $banksize = $1; } if ($flag && /^\s*\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+(\d+)/) { $capacity = $1; } if ($flag) { for (my $i = 1; $i <= ($banksize / $capacity); $i++) { #print "Caption: " . $caption . " Description: " . $description . " Bank Number: " . $numslots . " DIMM Capacity: " . $capacity . "MB\n"; $module_count++; $common->addMemory({ CAPACITY => $capacity, DESCRIPTION => $description, CAPTION => $caption, SPEED => $speed, TYPE => $type, NUMSLOTS => $numslots }) } } # this is the caption line if(/^\s+Logical Logical Logical/) { $flag_mt = 1; } # if we find "---", we set flag = 1, and in next line, we start to look for information if(/^-+/){ $flag = 1; } } #print "# of RAM Modules: " . $module_count . "\n"; #print "# of empty slots: " . $empty_slots . "\n"; } if($sun_class == 2) { foreach(`memconf 2>&1`) { # debug #print "line: " .$j++ . " " . $flag_mt . "/" . $flag ." : " . "$_"; # if we find "empty sockets:", we have reached the end and indicate that by resetting flag = 0 # emtpy sockets is follow by a list of emtpy slots, where we extract the slot names if(/^empty sockets:\s*(\S+)/) { $flag = 0; # cut of first 15 char containing the string empty sockets: substr ($_,0,15) = ""; $capacity = "empty"; $numslots = 0; foreach $caption (split) { if ($caption eq "None") { $empty_slots = 0; # no empty slots -> exit loop last; } # debug #print "Caption: " . $caption . " Description: " . $description . " Bank Number: " . $numslots . " DIMM Capacity: " . $capacity . "MB\n"; $empty_slots++; $common->addMemory({ CAPACITY => $capacity, DESCRIPTION => $description, CAPTION => $caption, SPEED => $speed, TYPE => $type, NUMSLOTS => $numslots }) } } if(/.*Memory Module Groups.*/) { $flag = 0; $flag_mt = 0; } # we only grap for information if flag = 1 if($flag && /^\s*\S+\s+\S+\s+(\S+)/){ $caption = $1; } if($flag && /^\s*(\S+)/){ $numslots = $1; } if($flag && /^\s*\S+\s+\S+\s+\S+\s+(\d+)/){ $capacity = $1; } if($flag) { # debug #print "Caption: " . $caption . " Description: " . $description . " Bank Number: " . $numslots . " DIMM Capacity: " . $capacity . "MB\n"; $module_count++; $common->addMemory({ CAPACITY => $capacity, DESCRIPTION => "DIMM", CAPTION => "Ram slot ".$numslots, SPEED => $speed, TYPE => $type, NUMSLOTS => $numslots }) } # this is the caption line if(/^ID ControllerID/) { $flag_mt = 1; $description = $1;} # if we find "---", we set flag = 1, and in next line, we start to look for information if($flag_mt && /^-+/){ $flag = 1;} } # debug: show number of modules found and number of empty slots } if($sun_class == 3) { foreach(`memconf 2>&1`) { # debug if(/^empty sockets:\s*(\S+)/) { # cut of first 15 char containing the string empty sockets: substr ($_,0,15) = ""; $capacity = "empty"; $numslots = 0; foreach $caption (split) { if ($caption eq "None") { $empty_slots = 0; # no empty slots -> exit loop last; } # debug #print "Caption: " . $caption . " Description: " . $description . " Bank Number: " . $numslots . " DIMM Capacity: " . $capacity . "MB\n"; $empty_slots++; $common->addMemory({ CAPACITY => $capacity, DESCRIPTION => $description, CAPTION => $caption, SPEED => $speed, TYPE => $type, NUMSLOTS => $numslots }) } } if(/^socket\s+(\S+) has a (\d+)MB\s+(\(\S+\)\s+)?(\S+)/) { $caption = $1; $description = $4; $type = $4; $numslots = 0; $capacity = $2; # debug #print "Caption: " . $caption . " Description: " . $description . " Bank Number: " . $numslots . " DIMM Capacity: " . $capacity . "MB\n"; $module_count++; $common->addMemory({ CAPACITY => $capacity, DESCRIPTION => $description, CAPTION => $caption, SPEED => $speed, TYPE => $type, NUMSLOTS => $numslots }) } } # debug: show number of modules found and number of empty slots #print "# of RAM Modules: " . $module_count . "\n"; #print "# of empty slots: " . $empty_slots . "\n"; } if($sun_class == 4) { foreach(`memconf 2>&1`) { # debug #print "line: " .$j++ . " " . $flag_mt . "/" . $flag ." : " . "$_"; # if we find "empty sockets:", we have reached the end and indicate that by resetting flag = 0 # emtpy sockets is follow by a list of emtpy slots, where we extract the slot names if(/^empty sockets:\s*(\S+)/) { $flag = 0; # cut of first 15 char containing the string empty sockets: substr ($_,0,15) = ""; $capacity = "empty"; $numslots = 0; foreach $caption (split) { if ($caption eq "None") { $empty_slots = 0; # no empty slots -> exit loop last; } # debug print "Caption: " . $caption . " Description: " . $description . " Bank Number: " . $numslots . " DIMM Capacity: " . $capacity . "MB\n"; $empty_slots++; $common->addMemory({ CAPACITY => $capacity, DESCRIPTION => $description, CAPTION => $caption, SPEED => $speed, TYPE => $type, NUMSLOTS => $numslots }) } } # we only grap for information if flag = 1 # socket MB/CMP0/BR0/CH0/D0 has a Samsung 501-7953-01 Rev 05 2GB FB-DIMM if(/^socket\s+(\S+) has a (.+)\s+(\S+)GB\s+(\S+)$/i) { $caption = $1; $description = $2; $type = $4; $numslots = 0; $capacity = $3 * 1024; # debug #print "Caption: " . $caption . " Description: " . $description . " Bank Number: " . $numslots . " DIMM Capacity: " . $capacity . "MB\n"; $module_count++; $common->addMemory({ CAPACITY => $capacity, DESCRIPTION => $description, CAPTION => $caption, SPEED => $speed, TYPE => $type, NUMSLOTS => $numslots }) } } # debug: show number of modules found and number of empty slots #print "# of RAM Modules: " . $module_count . "\n"; #print "# of empty slots: " . $empty_slots . "\n"; } if ($sun_class == 5 ) { foreach(`memconf 2>&1`) { # debug #print "line: " .$j++ . " " . $flag_mt . "/" . $flag ." : " . "$_"; # if we find "empty sockets:", we have reached the end and indicate that by resetting flag = 0 # emtpy sockets is follow by a list of emtpy slots, where we extract the slot names if(/^total memory:\s*(\S+)/) { $flag = 0;} #print "flag : $flag\n"; if($flag_mt && /^\s+\S+\s+\S+\s+\S+\s+(\S+)/) {$flag_mt=0; $description = $1;} #print "description : $description\n"; if ($flag && /^\s(\S+)\s+(\S+)/) { $numslots = "LSB " . $1 . " Group " . $2; } if ($flag && /^\s(\S+)\s+(\S+)/) { $caption = "LSB " . $1 . " Group " . $2; } if ($flag && /^\s+\S+\s+\S\s+\S+\s+\S+\s+(\d+)/) { $capacity = $1; } if ($flag && /^\s+\S+\s+\S\s+(\d+)/) { $banksize = $1; } #print "Num slot ". $numslots . " Bank Number: " . $numslots . " Bank size " . $banksize . " DIMM Capacity: " . $capacity . "MB\n"; if ($flag && $capacity > 1 ) { for (my $i = 1; $i <= ($banksize / $capacity); $i++) { #print "caption ". $caption . " Bank Number: " . $numslots . " Bank size " . $banksize . " DIMM Capacity: " . $capacity . "MB\n"; $common->addMemory({ CAPACITY => $capacity, DESCRIPTION => $description, CAPTION => $caption, SPEED => $speed, TYPE => $type, NUMSLOTS => $module_count }) } $module_count++; } #Caption Line if (/^Sun Microsystems/) { $flag_mt=1; $flag=1; } } } if($sun_class == 6) { foreach(`memconf 2>&1`) { # debug #print "line: " .$j++ . " " . $flag_mt . "/" . $flag ." : " . "$_"; if(/^empty memory sockets:\s*(\S+)/) { # cut of first 22 char containing the string empty sockets: substr ($_,0,22) = ""; $capacity = "0"; $numslots = 0; foreach $caption (split(/, /,$_)) { if ($caption eq "None") { $empty_slots = 0; # no empty slots -> exit loop last; } # debug #print "Caption: " . $caption . " Description: " . $description . " Bank Number: " . $numslots . " DIMM Capacity: " . $capacity . "MB\n"; $empty_slots++; $common->addMemory({ CAPACITY => $capacity, DESCRIPTION => "empty", CAPTION => $caption, SPEED => 'n/a', TYPE => 'n/a', NUMSLOTS => $numslots }) } } if(/^socket DIMM(\d+):\s+(\d+)MB\s(\S+)/) { $caption = "DIMM$1"; $description = "DIMM$1"; $numslots = $1; $capacity = $2; $type = $3; # debug #print "Caption: " . $caption . " Description: " . $description . " Bank Number: " . $numslots . " DIMM Capacity: " . $capacity . "MB\n"; $module_count++; $common->addMemory({ CAPACITY => $capacity, DESCRIPTION => $description, CAPTION => $caption, SPEED => $speed, TYPE => $type, NUMSLOTS => $numslots }) } } # debug: show number of modules found and number of empty slots #print "# of RAM Modules: " . $module_count . "\n"; #print "# of empty slots: " . $empty_slots . "\n"; } if ($sun_class == 7) { foreach (`prctl -n project.max-shm-memory $$ 2>&1`) { $description = $1 if /^project.(\S+)$/; $capacity = $1 if /^\s*system+\s*(\d+).*$/; if(($description && $capacity)){ $capacity = $capacity * 1024; $numslots = 1 ; $description = "Memory Allocated"; $caption = "Memory Share"; #print $description."_".$capacity."***\n"; $common->addMemory({ CAPACITY => $capacity, DESCRIPTION => $description, CAPTION => $caption, SPEED => $speed, TYPE => $type, NUMSLOTS => $numslots }) } } } if($sun_class == 8) { # example output of a Sun Blade 100 Workstation #Sun Microsystems, Inc. Sun Blade 100 (UltraSPARC-IIe 502MHz) #Memory Segment Table: #----------------------------------------------------------------------- #Base Address Size Interleave Factor Contains #----------------------------------------------------------------------- #0x0 256MB 1 chassis/system-board/DIMM0 #empty sockets: DIMM1 DIMM2 DIMM3 #total memory = 256MB #Sun Microsystems, Inc. Sun Blade 100 (UltraSPARC-IIe 502MHz) #Memory Segment Table: #----------------------------------------------------------------------- #Base Address Size Interleave Factor Contains #----------------------------------------------------------------------- #0x0 256MB 1 Label DIMM0 #0x20000000 256MB 1 Label DIMM1 #empty sockets: DIMM2 DIMM3 #total memory = 512MB foreach(`memconf 2>&1`) { if (/^empty sockets:\s*(.+)/) { foreach $caption (split(/ /, $1)) { if ($caption eq "None") { $empty_slots = 0; last; } $empty_slots++; # print "empty slot\n"; $common->addMemory({ CAPACITY => "empty", DESCRIPTION => '', CAPTION => $caption, SPEED => '', TYPE => '', NUMSLOTS => $numslots }) } } if (/^0x(\d+)\s+(\d+)MB\s+(\S+)\s+(.+)/) { $caption = "$4"; $description = ""; $numslots = 0; $capacity = $2; $type = ""; # debug # print "Caption: " . $caption . " Description: " . $description . " Bank Number: " . $numslots . " DIMM Capacity: " . $capacity . "MB\n"; $module_count++; $common->addMemory({ CAPACITY => $capacity, DESCRIPTION => $description, CAPTION => $caption, SPEED => $speed, TYPE => $type, NUMSLOTS => $numslots }) } } } } #run(); 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Solaris/Bios.pm010064400017500001750000000100241173606111100266200ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Solaris::Bios; # SPARC # $ showrev #Hostname: 157501s021plc #Hostid: 83249bbf #Release: 5.10 #Kernel architecture: sun4u #Application architecture: sparc #Hardware provider: Sun_Microsystems #Domain: be.cnamts.fr #Kernel version: SunOS 5.10 Generic_118833-17 # # $ prtconf -pv (-b would be great...but doesn't work before S10) #System Configuration: Sun Microsystems sun4u #Memory size: 16384 Megabytes #System Peripherals (PROM Nodes): # #Node 0xf0819f00 # scsi-initiator-id: 00000007 # node#: 00000000 # #size-cells: 00000002 # stick-frequency: 00bebc20 # clock-frequency: 08f0d180 # idprom: 01840014.4f4162cb.45255cf4.4162cb16.55555555.55555555.55555555.55555555 # breakpoint-trap: 0000007f # device_type: 'gptwo' # banner-name: 'Sun Fire E6900' # compatible: 'SUNW,Serengeti' # newio-addr: 00000001 # name: 'SUNW,Sun-Fire' # X64 # $ showrev #Hostname: stlaurent #Hostid: 403100b #Release: 5.10 #Kernel architecture: i86pc #Application architecture: i386 #Hardware provider: #Domain: #Kernel version: SunOS 5.10 Generic_127112-07 # # $ smbios -t SMB_TYPE_SYSTEM #ID SIZE TYPE #1 76 SMB_TYPE_SYSTEM (system information) # # Manufacturer: Sun Microsystems, Inc. # Product: Sun Fire V40z # Version: 00 # Serial Number: R00T34E0009 # # UUID: be1630df-d130-41a4-be32-fd28bb4bd1ac # Wake-Up Event: 0x6 (power switch) # SKU Number: # Family: use strict; sub check { can_run ("showrev") } sub run { my $params = shift; my $common = $params->{common}; my $zone; my( $SystemSerial , $SystemModel, $SystemManufacturer, $BiosManufacturer, $BiosVersion, $BiosDate, $aarch); my $OSLevel=`uname -r`; if ( $OSLevel =~ /5.8/ ){ $zone = "global"; }else{ foreach (`zoneadm list -p`){ $zone=$1 if /^0:([a-z]+):.*$/; } } if ($zone){ foreach(`showrev`){ if(/^Application architecture:\s+(\S+)/){$SystemModel = $1}; if(/^Hardware provider:\s+(\S+)/){$SystemManufacturer = $1}; if(/^Application architecture:\s+(\S+)/){$aarch = $1}; } if( $aarch eq "i386" ){ # # For a Intel/AMD arch, we're using smbios # foreach(`/usr/sbin/smbios -t SMB_TYPE_SYSTEM`) { if(/^\s*Manufacturer:\s*(.+)$/){$SystemManufacturer = $1}; if(/^\s*Serial Number:\s*(.+)$/){$SystemSerial = $1;} if(/^\s*Product:\s*(.+)$/){$SystemModel = $1;} } foreach(`/usr/sbin/smbios -t SMB_TYPE_BIOS`) { if(/^\s*Vendor:\s*(.+)$/){$BiosManufacturer = $1}; if(/^\s*Version String:\s*(.+)$/){$BiosVersion = $1}; if(/^\s*Release Date:\s*(.+)$/){$BiosDate = $1}; } } elsif( $aarch eq "sparc" ) { # # For a Sparc arch, we're using prtconf # my $name; my $OBPstring; foreach(`/usr/sbin/prtconf -pv`) { # prtconf is an awful thing to parse if(/^\s*banner-name:\s*'(.+)'$/){$SystemModel = $1;} unless ($name) { if(/^\s*name:\s*'(.+)'$/){$name = $1;} } unless ($OBPstring) { if(/^\s*version:\s*'(.+)'$/){ $OBPstring = $1; # looks like : "OBP 4.16.4 2004/12/18 05:18" # with further informations sometimes if( $OBPstring =~ m@OBP\s+([\d|\.]+)\s+(\d+)/(\d+)/(\d+)@ ){ $BiosVersion = "OBP $1"; $BiosDate = "$2/$3/$4"; } else { $BiosVersion = $OBPstring } } } } $SystemModel .= " ($name)" if( $name ); if( -x "/opt/SUNWsneep/bin/sneep" ) { chomp($SystemSerial = `/opt/SUNWsneep/bin/sneep`); }else { foreach(`/bin/find /opt -name sneep`) { chomp($SystemSerial = `$1`) if /^(\S+)/; } if (!$SystemSerial){ $SystemSerial = "Please install package SUNWsneep"; } } } }else{ foreach(`showrev`){ if(/^Hardware provider:\s+(\S+)/){$SystemManufacturer = $1}; } $SystemModel = "Solaris Containers"; $SystemSerial = "Solaris Containers"; } # Writing data $common->setBios ({ BVERSION => $BiosVersion, BDATE => $BiosDate, SMANUFACTURER => $SystemManufacturer, SMODEL => $SystemModel, SSN => $SystemSerial }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Solaris/CPU.pm010064400017500001750000000210461173606111100263610ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Solaris::CPU; use strict; sub check { my $params = shift; my $logger = $params->{logger}; if (!can_run ("memconf")) { $logger->debug('memconf not found in $PATH'); return; } 1; } sub run { my $params = shift; my $common = $params->{common}; #modif 20100329 my @cpu; my $current; my $cpu_core; my $cpu_thread; my $cpu_slot; my $cpu_speed; my $cpu_type; my $OSLevel; my $model; my $zone; my $sun_class_cpu=0; $OSLevel=`uname -r`; if ( $OSLevel =~ /5.8/ || !can_run("zoneadm")){ $zone = "global"; }else{ foreach (`zoneadm list -p`){ $zone=$1 if /^0:([a-z]+):.*$/; } } if ($zone) { # first, we need determinate on which model of Sun Server we run, # because prtdiags output (and with that memconfs output) is differend # from server model to server model # we try to classified our box in one of the known classes $model=`uname -i`; # debug print model # cut the CR from string model $model = substr($model, 0, length($model)-1); }else{ $model="Solaris Containers"; } #print "CPU Model: $model\n"; # we map (hopfully) our server model to a known class # # #sun_class_cpu sample out from memconf # 0 (default) generic detection with prsinfo # 1 Sun Microsystems, Inc. Sun Fire 880 (4 X UltraSPARC-III 750MHz) # 2 Sun Microsystems, Inc. Sun Fire V490 (2 X dual-thread UltraSPARC-IV 1350MHz) # 3 Sun Microsystems, Inc. Sun-Fire-T200 (Sun Fire T2000) (8-core quad-thread UltraSPARC-T1 1000MHz) # 4 Sun Microsystems, Inc. SPARC Enterprise T5220 (4-core 8-thread UltraSPARC-T2 1165MHz) # #if ($model eq "SUNW,Sun-Fire-280R") { $sun_class_cpu = 1; } #if ($model eq "SUNW,Sun-Fire-480R") { $sun_class_cpu = 1; } #if ($model eq "SUNW,Sun-Fire-V240") { $sun_class_cpu = 1; } #if ($model eq "SUNW,Sun-Fire-V245") { $sun_class_cpu = 1; } #if ($model eq "SUNW,Sun-Fire-V250") { $sun_class_cpu = 1; } #if ($model eq "SUNW,Sun-Fire-V440") { $sun_class_cpu = 1; } #if ($model eq "SUNW,Sun-Fire-V445") { $sun_class_cpu = 1; } #if ($model eq "SUNW,Sun-Fire-880") { $sun_class_cpu = 1; } #if ($model eq "SUNW,Sun-Fire-V490") { $sun_class_cpu = 2; } #if ($model eq "SUNW,Netra-T12") { $sun_class_cpu = 2; } #if ($model eq "SUNW,Sun-Fire-T200") { $sun_class_cpu = 3; } #if ($model eq "SUNW,SPARC-Enterprise-T1000") { $sun_class_cpu = 4; } #if ($model eq "SUNW,SPARC-Enterprise-T5220") { $sun_class_cpu = 4; } #if ($model eq "SUNW,SPARC-Enterprise-T5240") { $sun_class_cpu = 4; } #if ($model eq "SUNW,SPARC-Enterprise-T5120") { $sun_class_cpu = 4; } #if ($model eq "SUNW,SPARC-Enterprise") { $sun_class_cpu = 4; } if ($model =~ /SUNW,SPARC-Enterprise/) { $sun_class_cpu = 5; } # M5000 if ($model =~ /SUNW,SPARC-Enterprise-T\d/){ $sun_class_cpu = 4; } #T5220 - T5210 if ($model =~ /SUNW,Netra-T/){ $sun_class_cpu = 2; } if ($model =~ /SUNW,Sun-Fire-\d/){ $sun_class_cpu = 1; } if ($model =~ /SUNW,Sun-Fire-V/){ $sun_class_cpu = 2; } if ($model =~ /SUNW,Sun-Fire-T\d/) { $sun_class_cpu = 3; } if ($model =~ /Solaris Containers/){ $sun_class_cpu = 6; } if ($model =~ /SUNW,SPARCstation/) { $sun_class_cpu = 7; } if ($model =~ /SUNW,Sun-Blade-100/) { $sun_class_cpu = 7; } if ($model =~ /SUNW,Ultra/) { $sun_class_cpu = 7; } if($sun_class_cpu == 0) { # if our maschine is not in one of the sun classes from upside, we use psrinfo # a generic methode foreach (`psrinfo -v`) { if (/^\s+The\s(\w+)\sprocessor\soperates\sat\s(\d+)\sMHz,/) { $cpu_type = $1; $cpu_speed = $2; $cpu_slot++; } } } if($sun_class_cpu == 1) { # Sun Microsystems, Inc. Sun Fire 880 (4 X UltraSPARC-III 750MHz) foreach (`memconf 2>&1`) { if(/^Sun Microsystems, Inc. Sun Fire\s+\S+\s+\((\d+)\s+X\s+(\S+)\s+(\d+)/) { $cpu_slot = $1; $cpu_type = $2; $cpu_speed = $3; $cpu_core=$1; $cpu_thread="0"; } elsif (/^Sun Microsystems, Inc. Sun Fire\s+\S+\s+\((\S+)\s+(\d+)/) { $cpu_slot="1"; $cpu_type=$1; $cpu_speed=$2; $cpu_core="1"; $cpu_thread="0"; } } } if($sun_class_cpu == 2) { #Sun Microsystems, Inc. Sun Fire V490 (2 X dual-thread UltraSPARC-IV 1350MHz) foreach (`memconf 2>&1`) { if(/^Sun Microsystems, Inc. Sun Fire\s+\S+\s+\((\d+)\s+X\s+(\S+)\s+(\S+)\s+(\d+)/) { $cpu_slot = $1; $cpu_type = $3 . " (" . $2 . ")"; $cpu_speed = $4; $cpu_core=$1; $cpu_thread=$2; } elsif (/^Sun Microsystems, Inc. Sun Fire\s+V\S+\s+\((\d+)\s+X\s+(\S+)\s+(\d+)(\S+)/) { $cpu_slot = $1; $cpu_type = $2 . " (" . $1 . ")"; $cpu_speed = $3; $cpu_core=$1; $cpu_thread=$2; } # Sun Microsystems, Inc. Sun Fire V240 (UltraSPARC-IIIi 1002MHz) elsif (/^Sun Microsystems, Inc. Sun Fire\s+\S+\s+\((\S+)\s+(\d+)/) { $cpu_slot="1"; $cpu_type=$1; $cpu_speed=$2; $cpu_core="1"; $cpu_thread="0"; } } } if($sun_class_cpu == 3) { foreach (`memconf 2>&1`) { #Sun Microsystems, Inc. Sun-Fire-T200 (Sun Fire T2000) (8-core quad-thread UltraSPARC-T1 1000MHz) #Sun Microsystems, Inc. Sun-Fire-T200 (Sun Fire T2000) (4-core quad-thread UltraSPARC-T1 1000MHz) if(/^Sun Microsystems, Inc.\s+\S+\s+\(\S+\s+\S+\s+\S+\)\s+\((\d+).*\s+(\S+)\s+(\S+)\s+(\d+)/) { # T2000 has only one cCPU $cpu_slot = $1; $cpu_type = $3 . " (" . $1 . " " . $2 . ")"; $cpu_speed = $4; $cpu_core=$1; $cpu_thread=$2; } } } if($sun_class_cpu == 4) { foreach (`memconf 2>&1`) { #Sun Microsystems, Inc. SPARC Enterprise T5120 (8-core 8-thread UltraSPARC-T2 1165MHz) #Sun Microsystems, Inc. SPARC Enterprise T5120 (4-core 8-thread UltraSPARC-T2 1165MHz) if(/^Sun Microsystems, Inc\..+\((\d+)*(\S+)\s+(\d+)*(\S+)\s+(\S+)\s+(\d+)MHz\)/) { $cpu_slot = $1; $cpu_type = $1 . " (" . $3 . "" . $4 . ")"; $cpu_speed = $6; $cpu_core=$1; $cpu_thread=$3; } } } if($sun_class_cpu == 5) { foreach (`memconf 2>&1`) { #Sun Microsystems, Inc. Sun SPARC Enterprise M5000 Server (6 X dual-core dual-thread SPARC64-VI 2150MHz) #Fujitsu SPARC Enterprise M4000 Server (4 X dual-core dual-thread SPARC64-VI 2150MHz) if(/^Sun Microsystems, Inc\..+\((\d+)\s+X\s+(\S+)\s+(\S+)\s+(\S+)\s+(\d+)/) { $cpu_slot = $1; $cpu_type = $3 . " (" . $1 . " " . $2 . ")"; $cpu_speed = $5; $cpu_core=$1." ".$2; $cpu_thread=$3; } if(/^Fujitsu SPARC Enterprise.*\((\d+)\s+X\s+(\S+)\s+(\S+)\s+(\S+)\s+(\d+)/) { $cpu_slot = $1; $cpu_type = $3 . " (" . $1 . " " . $2 . ")"; $cpu_speed = $5; $cpu_core=$1." ".$2; $cpu_thread=$3; } } } if($sun_class_cpu == 6) { foreach (`prctl -n zone.cpu-shares $$`) { $cpu_type = $1 if /^zone.(\S+)$/; $cpu_type = $cpu_type." ".$1 if /^\s*privileged+\s*(\d+).*$/; #$cpu_slot = 1 if /^\s*privileged+\s*(\d+).*$/; foreach (`memconf 2>&1`) { if(/^.*\s+\((\d+).*\s+(\d+)MHz.*$/) { $cpu_slot = $1; $cpu_speed = $2; } } } } if($sun_class_cpu == 7) { foreach(`memconf 2<&1`) { #Sun Microsystems, Inc. Sun Blade 100 (UltraSPARC-IIe 502MHz) #Sun Microsystems, Inc. Sun Ultra 5/10 UPA/PCI (UltraSPARC-IIi 333MHz) #Sun Microsystems, Inc. Sun Ultra 1 SBus (UltraSPARC 143MHz) #Sun Microsystems, Inc. SPARCstation 20 (1 X 390Z50) (SuperSPARC 50MHz) #Sun Microsystems, Inc. SPARCstation 5 (TurboSPARC-II 170MHz) if (/^Sun Microsystems, Inc\..+\((\S+)\s+(\d+)MHz\)/) { $cpu_slot = 1; $cpu_type = $1; $cpu_speed = $2; $cpu_core = 1; $cpu_thread = 0; } } } # for debug only #print "cpu_slot: " . $cpu_slot . "\n"; #print "cpu_type: " . $cpu_type . "\n"; #print "cpu_speed: " . $cpu_speed . "\n"; #print "cpu_core: " . $cpu_core . "\n"; #print "cpu_thread: " . $cpu_thread . "\n"; $current->{MANUFACTURER} = "SPARC" ; $current->{SPEED} = $cpu_speed if $cpu_speed; $current->{TYPE} = $cpu_type if $cpu_type; $current->{NUMBER} = $cpu_slot if $cpu_slot; $current->{CORE} = $cpu_core if $cpu_core; $current->{THREAD} = $cpu_thread if $cpu_thread; $common->addCPU($current); # insert to values we have found # $common->setHardware({ # PROCESSORT => $cpu_type, #PROCESSORN => $cpu_slot, # PROCESSORS => $cpu_speed # }); } #run(); 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Solaris/Mem.pm010064400017500001750000000011111173606111100264370ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Solaris::Mem; use strict; sub check { can_run ("swap") && can_run ("prtconf") } sub run { my $params = shift; my $common = $params->{common}; #my $unit = 1024; my $PhysicalMemory; my $SwapFileSize; # Memory informations foreach(`prtconf`){ if(/^Memory\ssize:\s+(\S+)/){ #print "total memoire: $1"; $PhysicalMemory = $1}; } #Swap Informations foreach(`swap -l`){ if(/\s+(\S+)$/){$SwapFileSize = $1}; } $common->setHardware({ MEMORY => $PhysicalMemory, SWAP => $SwapFileSize }); } 1 Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Solaris/Users.pm010064400017500001750000000005701173606111100270320ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Solaris::Users; sub check { can_run ("who") } # Initialise the distro entry sub run { my $params = shift; my $common = $params->{common}; my %user; # Logged on users for(`who`){ $user{$1} = 1 if /^(\S+)./; } my $UsersLoggedIn = join "/", keys %user; $common->setHardware ({ USERID => $UsersLoggedIn }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Solaris/IPv4.pm010064400017500001750000000017331173606111100265150ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Solaris::IPv4; sub check { can_run ("ifconfig") } # Initialise the distro entry sub run { my $params = shift; my $common = $params->{common}; my %ip; my $ip; my $hostn; #Looking for ip addresses with ifconfig, except loopback # Solaris need -a option for(`ifconfig -a`){#ifconfig in the path #Solarisligne inet if(/^\s*inet\s+(\S+).*/){($1=~/127.+/)?next:($ip{$1}=1)}; } # Ok. Now, we have the list of IP addresses configured # We could have too many addresses to list them in HW # (details will be sent in Networks instead) # # How could we choose ? # # Let's try to resolve the name of our server # chomp( $hostn = `uname -n` ); if ($hostn) { my $aip; foreach (`ping -s $hostn 10 1`) { unless ( $ip ) { if( /^.*\((\d+\.\d+\.\d+\.\d+)\):.*/ ) { $aip = $1; $ip = $aip if( exists($ip{$aip}) ); } } } } $common->setHardware({IPADDR => $ip}); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Solaris/Networks.pm010064400017500001750000000074671173606111100275610ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Solaris::Networks; #ce5: flags=1000843 mtu 1500 index 3 # inet 55.37.101.171 netmask fffffc00 broadcast 55.37.103.255 # ether 0:3:ba:24:9b:bf #aggr40001:2: flags=201000843 mtu 1500 index 3 # inet 55.37.101.172 netmask ffffff00 broadcast 223.0.146.255 use strict; sub check { can_run("ifconfig") && can_run("netstat") && can_load ("Net::IP qw(:PROC)") } # Initialise the distro entry sub run { my $params = shift; my $common = $params->{common}; my $description; my $ipaddress; my $ipgateway; my $ipmask; my $ipsubnet; my $macaddr; my $status; my $type; my $zone; my @zoneadmcmd; my @zacsplitted; # get the first field of the first line of "zoneadm list -p" @zoneadmcmd = `zoneadm list -p`; @zacsplitted = split(/:/, $zoneadmcmd[0]); $zone = $zacsplitted[0]; foreach (`netstat -rn`){ $ipgateway=$1 if /^default\s+(\S+)/i; } #print "Nom :".$zone."*************************\n"; ### STEP 1: get aliases and zones' interfaces foreach (`ifconfig -a`){ # resets if new interface $ipaddress = $description = $macaddr = $status = $type = undef if /^(\S+):/; # interface name and other data $description = $1.":".$2 if /^(\S+):(\S+):/; $ipaddress = $1 if /inet\s+(\S+)/i; $ipmask = $1 if /\S*netmask\s+(\S+)/i; if (/ether\s+(\S+)/i) { # See # https://sourceforge.net/tracker/?func=detail&atid=487492&aid=1819948&group_id=58373 $macaddr = sprintf "%02x:%02x:%02x:%02x:%02x:%02x" , map hex, split /\:/, $1; } $status = 1 if /addNetwork({ DESCRIPTION => $description, IPADDRESS => $ipaddress, IPGATEWAY => $ipgateway, IPMASK => $ipmask, IPSUBNET => $ipsubnet, MACADDR => $macaddr, STATUS => $status?"Up":"Down", TYPE => $type, }); } } ### STEP 2: get physical interfaces when not a zone if (!$zone){ foreach (`ifconfig -a`){ # resets if new interface $ipaddress = $description = $macaddr = $status = $type = undef if /^(\S+):/; # interface name and other data $description = $1 if /^(\S+): /; $ipaddress = $1 if /inet\s+(\S+)/i; $ipmask = $1 if /\S*netmask\s+(\S+)/i; if (/ether\s+(\S+)/i) { # See # https://sourceforge.net/tracker/?func=detail&atid=487492&aid=1819948&group_id=58373 $macaddr = sprintf "%02x:%02x:%02x:%02x:%02x:%02x" , map hex, split /\:/, $1; } $status = 1 if /addNetwork({ DESCRIPTION => $description, IPADDRESS => $ipaddress, IPGATEWAY => $ipgateway, IPMASK => $ipmask, IPSUBNET => $ipsubnet, MACADDR => $macaddr, STATUS => $status?"Up":"Down", TYPE => $type, }); } } } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Solaris/Slots.pm010064400017500001750000000053271173606111100270420ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Solaris::Slots; use strict; sub check { can_run ("prtdiag") } sub run { my $params = shift; my $common = $params->{common}; my $description; my $designation; my $name; my $status; my @pci; my $flag; my $flag_pci; my $model; my $sun_class; $model=`uname -i`; # debug print model #print "Model: '$model'"; # cut the CR from string model $model = substr($model, 0, length($model)-1); # we map (hopfully) our server model to a known class if ($model eq "SUNW,SPARC-Enterprise") { $sun_class = 1; } if ($model eq "SUNW,SPARC-Enterprise-T5120") { $sun_class = 2 ; } else { $sun_class = 0; } #Debug #print "sun_class : $sun_class\n"; foreach (`prtdiag `) { #print $_."\n"; if ( $sun_class == 0 ) { last if(/^\=+/ && $flag_pci); next if(/^\s+/ && $flag_pci); if($flag && $flag_pci && /^(\S+)\s+/){ $name = $1; } if($flag && $flag_pci && /(\S+)\s*$/){ $designation = $1; } if($flag && $flag_pci && /^\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+(\S+)/){ $description = $1; } if($flag && $flag_pci && /^\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+(\S+)/){ $status = $1; } if($flag && $flag_pci){ $common->addSlot({ DESCRIPTION => $description, DESIGNATION => $designation, NAME => $name, STATUS => $status, }); } if(/^=+\s+IO Cards/){$flag_pci = 1;} if($flag_pci && /^-+/){$flag = 1;} } if ( $sun_class == 1 ) { last if(/^\=+/ && $flag_pci && $flag); if($flag && $flag_pci && /^\s+(\d+)/){ $name = "LSB " . $1; } if($flag && $flag_pci && /^\s+\S+\s+(\S+)/){ $description = $1; } if($flag && $flag_pci && /^\s+\S+\s+\S+\s+(\S+)/){ $designation = $1; } $status = " "; #Debug #if ($flag && $flag_pci){print "$name" . "||||" . "$designation" . "||" . "$description\n";} #print $_."\n"; if($flag && $flag_pci){ $common->addSlot({ DESCRIPTION => $description, DESIGNATION => $designation, NAME => $name, STATUS => $status, }); } if(/^=+\S+\s+IO Cards/){$flag_pci = 1; } if($flag_pci && /^-+/){$flag = 1;} } if ( $sun_class == 2 ) { if (/pci/) { @pci = split(/ +/); $name=$pci[4]." ".$pci[5]; $description=$pci[0]." (".$pci[1].")"; $designation=$pci[3]; $status=""; $common->addSlot({ DESCRIPTION => $description, DESIGNATION => $designation, NAME => $name, STATUS => $status, }); } } } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Solaris/Domains.pm010064400017500001750000000011341173606111100273200ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Solaris::Domains; use strict; sub check { can_run ("domainname") } sub run { my $params = shift; my $common = $params->{common}; my $domain; chomp($domain = `domainname`); if (!$domain) { my %domain; if (open RESOLV, "/etc/resolv.conf") { while() { $domain{$2} = 1 if (/^(domain|search)\s+(.+)/); } close RESOLV; } $domain = join "/", keys %domain; } # If no domain name, we send "WORKGROUP" $domain = 'WORKGROUP' unless $domain; $common->setHardware({ WORKGROUP => $domain }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/MacOS004075500017500001750000000000001173606116100246505ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/MacOS/Uptime.pm010064400017500001750000000015501173606111100265210ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::MacOS::Uptime; use strict; sub check { my $boottime = `sysctl -n kern.boottime 2>/dev/null`; # straight from the BSD module ;-) return 1 if $boottime; return; } sub run { my $params = shift; my $common = $params->{common}; # stolen code from bsd. chomp (my $boottime = `sysctl -n kern.boottime`); $boottime = $1 if $boottime =~ /sec\s*=\s*(\d+)/; chomp (my $currenttime = `date +%s`); my $uptime = $currenttime - $boottime; # Uptime conversion my ($UYEAR, $UMONTH , $UDAY, $UHOUR, $UMIN, $USEC) = (gmtime ($uptime))[5,4,3,2,1,0]; # Write in ISO format $uptime=sprintf "%02d-%02d-%02d %02d:%02d:%02d", ($UYEAR-70), $UMONTH, ($UDAY-1), $UHOUR, $UMIN, $USEC; chomp(my $DeviceType =`uname -m`); $common->setHardware({ DESCRIPTION => "$DeviceType/$uptime" }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/MacOS/Hostname.pm010064400017500001750000000010021173606111100270240ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::MacOS::Hostname; sub check { return 1 if can_load ("Mac::SysProfile"); 0; } # Initialise the distro entry sub run { my $params = shift; my $common = $params->{common}; my $hostname; my $profile = Mac::SysProfile->new(); my $data = $profile->gettype('SPSoftwareDataType'); return undef unless(ref($data) eq 'ARRAY'); my $h = $data->[0]; $hostname = $h->{'local_host_name'}; $common->setHardware ({NAME => $hostname}) if $hostname; } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/MacOS/Networks.pm010064400017500001750000000075071173606111100271020ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::MacOS::Networks; # I think I hijacked most of this from the BSD/Linux modules use strict; sub check { can_run("ifconfig") && can_load("Net::IP qw(:PROC)") } sub _ipdhcp { my $if = shift; my $path; my $ipdhcp; my $leasepath; foreach ( # XXX BSD paths "/var/db/dhclient.leases.%s", "/var/db/dhclient.leases", # Linux path for some kFreeBSD based GNU system "/var/lib/dhcp3/dhclient.%s.leases", "/var/lib/dhcp3/dhclient.%s.leases", "/var/lib/dhcp/dhclient.leases") { $leasepath = sprintf($_,$if); last if (-e $leasepath); } return undef unless -e $leasepath; if (open DHCP, $leasepath) { my $lease; my $dhcp; my $expire; # find the last lease for the interface with its expire date while(){ $lease = 1 if(/lease\s*{/i); $lease = 0 if(/^\s*}\s*$/); if ($lease) { #inside a lease section if(/interface\s+"(.+?)"\s*/){ $dhcp = ($1 =~ /^$if$/); } #Server IP if(/option\s+dhcp-server-identifier\s+(\d{1,3}(?:\.\d{1,3}){3})\s*;/ and $dhcp){ $ipdhcp = $1; } if (/^\s*expire\s*\d\s*(\d*)\/(\d*)\/(\d*)\s*(\d*):(\d*):(\d*)/ and $dhcp) { $expire=sprintf "%04d%02d%02d%02d%02d%02d",$1,$2,$3,$4,$5,$6; } } } close DHCP or warn; chomp (my $currenttime = `date +"%Y%m%d%H%M%S"`); undef $ipdhcp unless $currenttime <= $expire; } else { warn "Can't open $leasepath\n"; } return $ipdhcp; } # Initialise the distro entry sub run { my $params = shift; my $common = $params->{common}; my $description; my $ipaddress; my $ipgateway; my $ipmask; my $ipsubnet; my $macaddr; my $status; my $type; # Looking for the gateway # 'route show' doesn't work on FreeBSD so we use netstat # XXX IPV4 only for(`netstat -nr -f inet`){ $ipgateway=$1 if /^default\s+(\S+)/i; } my @ifconfig = `ifconfig -a`; # -a option required on *BSD # first make the list available interfaces # too bad there's no -l option on OpenBSD my @list; foreach (@ifconfig){ # skip loopback, pseudo-devices and point-to-point interfaces #next if /^(lo|fwe|vmnet|sit|pflog|pfsync|enc|strip|plip|sl|ppp)\d+/; next unless(/^en(0|1)/); # darwin has a lot of interfaces, for this purpose we only want to deal with eth0 and eth1 if (/^(\S+):/) { push @list , $1; } # new interface name } # for each interface get it's parameters foreach $description (@list) { $ipaddress = $ipmask = $macaddr = $status = $type = undef; # search interface infos @ifconfig = `ifconfig $description`; foreach (@ifconfig){ $ipaddress = $1 if /inet (\S+)/i; $ipmask = $1 if /netmask\s+(\S+)/i; $macaddr = $2 if /(address:|ether|lladdr)\s+(\S+)/i; $status = 1 if /status:\s+active/i; $type = $1 if /media:\s+(\S+)/i; } my $binip = &ip_iptobin ($ipaddress ,4); # In BSD, netmask is given in hex form my $binmask = sprintf("%b", oct($ipmask)); my $binsubnet = $binip & $binmask; $ipsubnet = ip_bintoip($binsubnet,4); my $mask = ip_bintoip($binmask,4); $common->addNetwork({ DESCRIPTION => $description, IPADDRESS => ($status?$ipaddress:undef), IPDHCP => _ipdhcp($description), IPGATEWAY => ($status?$ipgateway:undef), IPMASK => ($status?$mask:undef), IPSUBNET => ($status?$ipsubnet:undef), MACADDR => $macaddr, STATUS => ($status?"Up":"Down"), TYPE => ($status?$type:undef) }); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/MacOS/Mem.pm010064400017500001750000000033741173606111100260020ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::MacOS::Mem; use strict; sub check { return(undef) unless -r '/usr/sbin/system_profiler'; # check perms return (undef) unless can_load("Mac::SysProfile"); return 1; } sub run { my $params = shift; my $common = $params->{common}; my $PhysicalMemory; # create the profile object and return undef unless we get something back my $profile = Mac::SysProfile->new(); my $data = $profile->gettype('SPMemoryDataType'); return(undef) unless(ref($data) eq 'ARRAY'); # Workaround for MacOSX 10.5.7 #if ($h->{'Memory Slots'}) { # $h = $h->{'Memory Slots'}; #} foreach my $memory (@$data){ next unless $memory->{'_name'} =~ /^BANK|SODIMM|DIMM/; # tare out the slot number my $slot = $memory->{'_name'}; # memory in 10.5 if($slot =~ /^BANK (\d)\/DIMM\d/){ $slot = $1; } # 10.4 if($slot =~ /^SODIMM(\d)\/.*$/){ $slot = $1; } # 10.4 PPC if($slot =~ /^DIMM(\d)\/.*$/){ $slot = $1; } # 10.7 if ($slot =~ /^DIMM (\d)/) { $slot = $1; } my $size = $memory->{'dimm_size'}; # if system_profiler lables the size in gigs, we need to trim it down to megs so it's displayed properly if($size =~ /GB$/){ $size =~ s/GB$//; $size *= 1024; } $common->addMemory({ 'CAPACITY' => $size, 'SPEED' => $memory->{'dimm_speed'}, 'TYPE' => $memory->{'dimm_type'}, 'SERIALNUMBER' => $memory->{'dimm_serial_number'}, 'DESCRIPTION' => $memory->{'dimm_part_number'}, 'NUMSLOTS' => $slot, 'CAPTION' => 'Status: '.$memory->{'dimm_status'}, }); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/MacOS/IPv4.pm010064400017500001750000000011201173606111100260310ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::MacOS::IPv4; # straight up theft from the other modules sub check { my @ifconfig = `ifconfig -a 2>/dev/null`; return 1 if @ifconfig; return; } # Initialise the distro entry sub run { my $params = shift; my $common = $params->{common}; my @ip; # Looking for ip addresses with ifconfig, except loopback # *BSD need -a option foreach (`ifconfig -a`){ if(/^\s*inet\s+(\S+)/){ ($1=~/127.+/)?next:push @ip, $1 }; } my $ip=join "/", @ip; $common->setHardware({IPADDR => $ip}); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/MacOS/Domains.pm010064400017500001750000000016531173606111100266540ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::MacOS::Domains; use strict; # straight up theft from the other modules... sub check { my $hostname; chomp ($hostname = `hostname`); my @domain = split (/\./, $hostname); shift (@domain); return 1 if @domain; -f "/etc/resolv.conf" } sub run { my $params = shift; my $common = $params->{common}; my $domain; my $hostname; chomp ($hostname = `hostname`); my @domain = split (/\./, $hostname); shift (@domain); $domain = join ('.',@domain); if (!$domain) { my %domain; open RESOLV, "/etc/resolv.conf" or warn; while(){ $domain{$2} = 1 if (/^(domain|search)\s+(.+)/); } close RESOLV; $domain = join "/", keys %domain; } # If no domain name, we send "WORKGROUP" $domain = 'WORKGROUP' unless $domain; $common->setHardware({ WORKGROUP => $domain }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/MacOS/Bios.pm010064400017500001750000000021561173606111100261550ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::MacOS::Bios; use strict; sub check { return can_load("Mac::SysProfile") } sub run { my $params = shift; my $common = $params->{common}; # use Mac::SysProfile to get the respected datatype my $profile = Mac::SysProfile->new(); my $data = $profile->gettype('SPHardwareDataType'); # unless we get a real hash value, return with nothing return(undef) unless($data && ref($data) eq 'ARRAY'); my $h = $data->[0]; # set the bios informaiton from the apple system profiler $common->setBios({ SMANUFACTURER => 'Apple Inc', # duh SMODEL => $h->{'model_identifier'} || $h->{'machine_model'}, # SSN => $h->{'Serial Number'} # New method to get the SSN, because of MacOS 10.5.7 update # system_profiler gives 'Serial Number (system): XXXXX' where 10.5.6 # and lower give 'Serial Number: XXXXX' SSN => $h->{'serial_number'}, BVERSION => $h->{'boot_rom_version'}, }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/MacOS/Drives.pm010064400017500001750000000021051173606111100265070ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::MacOS::Drives; use strict; # yea BSD theft!!!! # would have used Mac::SysProfile, but the xml isn't quite fully supported # the drives come back in apple xml tree's, and the module can't handle it yet (soon as I find the time to fix the patch) sub check {1} sub run { my $params = shift; my $common = $params->{common}; my $free; my $filesystem; my $total; my $type; my $volumn; for my $t ("ffs","ufs", "hfs") { # OpenBSD has no -m option so use -k to obtain results in kilobytes for(`df -P -k -t $t`){ # darwin needs the -t to be last if(/^(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\n/){ $type = $1; $filesystem = $t; $total = sprintf("%i",$2/1024); $free = sprintf("%i",$4/1024); $volumn = $6; $common->addDrive({ FREE => $free, FILESYSTEM => $filesystem, TOTAL => $total, TYPE => $type, VOLUMN => $volumn }) } } } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/MacOS/Sound.pm010064400017500001750000000011751173606111100263510ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::MacOS::Sound; use strict; sub check { return(undef) unless -r '/usr/sbin/system_profiler'; # check perms return 1; } sub run { my $params = shift; my $common = $params->{common}; # create profiler obj, bail if datatype fails my $data = $common->get_sysprofile_devices_names('SPAudioDataType'); return(undef) unless(ref($data) eq 'ARRAY'); # add sound cards foreach my $sound (@$data){ $common->addSound({ 'NAME' => $sound, 'MANUFACTURER' => $sound, 'DESCRIPTION' => $sound, }); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/MacOS/Storages.pm010064400017500001750000000054471173606111100270560ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::MacOS::Storages; use strict; sub check {return can_load('Mac::SysProfile');} sub getManufacturer { my $model = shift; if($model =~ /(maxtor|western|sony|compaq|hewlett packard|ibm|seagate|toshiba|fujitsu|lg|samsung|nec|transcend|matshita|pioneer|hitachi)/i) { return ucfirst(lc($1)); } elsif ($model =~ /^HP/) { return "Hewlett Packard"; } elsif ($model =~ /^WDC/) { return "Western Digital"; } elsif ($model =~ /^ST/) { return "Seagate"; } elsif ($model =~ /^HD/ or $model =~ /^IC/ or $model =~ /^HU/) { return "Hitachi"; } } sub run { my $params = shift; my $logger = $params->{logger}; my $common = $params->{common}; my $devices = {}; my $profile = Mac::SysProfile->new(); # Get SATA Drives my $sata = $profile->gettype('SPSerialATADataType'); if ( ref($sata) eq 'ARRAY') { foreach my $storage ( @$sata ) { next unless ( ref($storage) eq 'HASH' ); my $description; if ( $storage->{'_name'} =~ /DVD/i || $storage->{'_name'} =~ /CD/i ) { $description = 'CD-ROM Drive'; } else { $description = 'Disk drive'; } my $size = $storage->{'size'}; if ($size =~ /GB/) { $size =~ s/ GB//; $size *= 1024; } if ($size =~ /TB/) { $size =~ s/ TB//; $size *= 1048576; } my $manufacturer = getManufacturer($storage->{'_name'}); my $model = $storage->{'device_model'}; $model =~ s/\s*$manufacturer\s*//i; $devices->{$storage->{'_name'}} = { NAME => $storage->{'name'}, SERIAL => $storage->{'device_serial'}, DISKSIZE => $size, FIRMWARE => $storage->{'device_revision'}, MANUFACTURER => $manufacturer, DESCRIPTION => $description, MODEL => $model }; } } # Get PATA Drives my $pata = $profile->gettype('SPParallelATADataType'); if ( ref($sata) eq 'ARRAY') { foreach my $storage ( @$pata ) { next unless ( ref($storage) eq 'HASH' ); my $description; if ( $storage->{'_name'} =~ /DVD/i || $storage->{'_name'} =~ /CD/i ) { $description = 'CD-ROM Drive'; } else { $description = 'Disk drive'; } my $manufacturer = getManufacturer($storage->{'_name'}); my $model = $storage->{'device_model'}; my $size; $devices->{$storage->{'_name'}} = { NAME => $storage->{'_name'}, SERIAL => $storage->{'device_serial'}, DISKSIZE => $size, FIRMWARE => $storage->{'device_revision'}, MANUFACTURER => $manufacturer, DESCRIPTION => $description, MODEL => $model }; } } foreach my $device ( keys %$devices ) { $common->addStorages($devices->{$device}); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/MacOS/CPU.pm010064400017500001750000000030551173606111100257070ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::MacOS::CPU; use strict; sub check { return(undef) unless -r '/usr/sbin/system_profiler'; return(undef) unless can_load("Mac::SysProfile"); return 1; } sub run { my $params = shift; my $common = $params->{common}; # create sysprofile obj. Return undef unless we get a return value my $profile = Mac::SysProfile->new(); my $data = $profile->gettype('SPHardwareDataType'); return(undef) unless(ref($data) eq 'ARRAY'); my $h = $data->[0]; ######### CPU my $processort = $h->{'processor_name'} | $h->{'cpu_type'}; # 10.5 || 10.4 my $processorn = $h->{'number_processors'} || $h->{'number_cpus'}; my $processors = $h->{'current_processor_speed'} || $h->{'cpu_speed'}; # lamp spits out an sql error if there is something other than an int (MHZ) here.... if($processors =~ /GHz$/){ $processors =~ s/ GHz//; # French Mac returns 2,60 Ghz instead of # 2.60 Ghz :D $processors =~ s/,/./; $processors = ($processors * 1000); } if($processors =~ /MHz$/){ $processors =~ s/ MHz//; } ### mem convert it to meg's if it comes back in gig's my $mem = $h->{'physical_memory'}; if($mem =~ /GB$/){ $mem =~ s/\sGB$//; $mem = ($mem * 1024); } if($mem =~ /MB$/){ $mem =~ s/\sMB$//; } $common->setHardware({ PROCESSORT => $processort, PROCESSORN => $processorn, PROCESSORS => $processors, MEMORY => $mem, }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/MacOS/Packages.pm010064400017500001750000000021061173606111100267720ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::MacOS::Packages; use strict; use warnings; sub check { my $params = shift; return unless can_load("Mac::SysProfile"); # Do not run an package inventory if there is the --nosoft parameter return if ($params->{config}->{nosoft}); 1; } sub run { my $params = shift; my $common = $params->{common}; my $profile = Mac::SysProfile->new(); my $data = $profile->gettype('SPApplicationsDataType'); # might need to check version of darwin return unless($data && ref($data) eq 'ARRAY'); # for each app, normalize the information, then add it to the inventory stack foreach my $app (@$data){ #my $a = $apps->{$app}; my $kind = $app->{'runtime_environment'} ? $app->{'runtime_environment'} : 'UNKNOWN'; my $comments = '['.$kind.']'; $common->addSoftware({ 'NAME' => $app->{'_name'}, 'VERSION' => $app->{'version'} || 'unknown', 'COMMENTS' => $comments, 'PUBLISHER' => $app->{'info'} || 'unknown', }); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/MacOS/Video.pm010064400017500001750000000031341173606111100263240ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::MacOS::Video; use strict; sub check { # make sure the user has access, cause that's the command that's gonna be run return(undef) unless -r '/usr/sbin/system_profiler'; return(undef) unless can_load("Mac::SysProfile"); return 1; } sub run { my $params = shift; my $common = $params->{common}; # run the profiler to get our datatype my $profile = Mac::SysProfile->new(); my $data = $profile->gettype('SPDisplaysDataType'); # unless we get a valid return, bail out return(undef) unless(ref($data) eq 'ARRAY'); # we get video card because system_profiler XML output does not provide a human readable value my $video_names = $common->get_sysprofile_devices_names('SPDisplaysDataType'); return(undef) unless(ref($video_names) eq 'ARRAY'); my $count = 0; # add the video information foreach my $video (@$data){ my $memory = $video->{'spdisplays_vram'}; $memory =~ s/ MB$//; $common->addVideo({ 'NAME' => $$video_names[$count], 'CHIPSET' => $video->{'sppci_model'}, 'MEMORY' => $memory, 'RESOLUTION' => $video->{'spdisplays_ndrvs'}[0]->{'spdisplays_resolution'}, }); foreach my $display (@{$video->{'spdisplays_ndrvs'}}){ next unless(ref($display) eq 'HASH'); next if($display->{'_name'} eq 'spdisplays_display_connector'); $common->addMonitor({ 'CAPTION' => $display->{'_name'}, }) } $count++; } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/MacOS/Printers.pm010064400017500001750000000013241173606111100270630ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::MacOS::Printers; use strict; sub check { return(undef) unless -r '/usr/sbin/system_profiler'; return(undef) unless can_load("Mac::SysProfile"); return 1; } sub run { my $params = shift; my $common = $params->{common}; my $profile = Mac::SysProfile->new(); my $data = $profile->gettype('SPPrintersDataType'); return(undef) unless(ref($data) eq 'ARRAY'); foreach my $printer (@$data){ next if($printer->{'_name'} =~ /^The\sprinters\slist\sis\sempty\.(.*)$/); $common->addPrinter({ NAME => $printer->{'_name'}, DRIVER => $printer->{'ppd'}, PORT => $printer->{'uri'}, }); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/HPUX004075500017500001750000000000001173606116100244725ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/HPUX/Storages.pm010064400017500001750000000043331173606111100266710ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::HPUX::Storages; sub check { $^O =~ /hpux/ } sub run { my $params = shift; my $common = $params->{common}; my @all_type = ("tape","disk") ; my $type; my $description; my $path; my $vendor; my $ref; my $size; my $devdsk; my $devrdsk; my $revlvl; my $alternate; for ( @all_type ) { $type = "$_"; for ( `ioscan -kFnC $type | cut -d ':' -f 1,11,18` ) { if ( /(\S+)\:(\S+)\:(\S+)\s+(\S+)/ ) { $description = $1; $path = $2; $vendor = $3; $ref = $4; }; $alternate = 0 ; if ( $type eq "disk" ) { if ( /\s+(\/dev\/dsk\/\S+)\s+(\/dev\/rdsk\/\S+)/ ) { #print "1 $1 2 $2 \n"; $devdsk=$1; $devrdsk=$2; # We look if whe are on an alternate link for ( `pvdisplay $devdsk 2> /dev/null` ) { if ( /$devdsk\.+lternate/ ) { $alternate=1; }; }; # We are not on an alternate link if ( $alternate eq 0 ) { #$size = `diskinfo -b $devrdsk`; for ( `diskinfo -v $devrdsk`) { if ( /^\s+size:\s+(\S+)/ ) { $size=$1; $size = int ( $size/1024 ) if $size; }; if ( /^\s+rev level:\s+(\S+)/ ) { $revlvl=$1; }; }; #print "vendor $vendor ref $ref type $type description $description path $path size $size\n"; $common->addStorages({ MANUFACTURER => $vendor, MODEL => $ref, NAME => $devdsk, DESCRIPTION => $description, TYPE => $type, DISKSIZE => $size, FIRMWARE => $revlvl, }); }; }; } else { # We look for tapes if ( /^\s+(\/dev\/rmt\/\Sm)\s+/ ) { $devdsk=$1; $common->addStorages({ MANUFACTURER => $vendor, MODEL => $ref, NAME => $devdsk, DESCRIPTION => $description, TYPE => $type, DISKSIZE => '' }); }; }; }; }; } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/HPUX/Slots.pm010064400017500001750000000013541173606111100262060ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::HPUX::Slots; use strict; sub check { $^O =~ /hpux/ } sub run { my $params = shift; my $common = $params->{common}; my $name; my $interface; my $info; my $type; my @typeScaned=('ioa','ba'); my $scaned; for (@typeScaned ) { $scaned=$_; for ( `ioscan -kFC $scaned| cut -d ':' -f 9,11,17,18` ) { if ( /(\S+):(\S+):(\S+):(.+)/ ) { $name=$2; $interface=$3; $info=$4; $type=$1; $common->addSlots({ DESCRIPTION => "$name", DESIGNATION => "$interface $info", NAME => "$type", STATUS => "OK", }); }; }; }; } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/HPUX/Mem.pm010064400017500001750000000010141173606111100256110ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::HPUX::Mem; use strict; sub check { $^O =~ /hpux/ } sub run { my $params = shift; my $common = $params->{common}; my $mem; my $swap; $mem = `grep Physical /var/adm/syslog/syslog.log|tr -s " "|cut -f 7 -d " "` ; if ( $mem eq "" ) { $mem = `grep Physical /var/adm/syslog/OLDsyslog.log|tr -s " "|cut -f 7 -d " "` ; }; $mem = int ($mem/1024); $swap = `swapinfo -mdfq`; $common->setHardware({ MEMORY => $mem, SWAP => $swap, }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/HPUX/Drives.pm010064400017500001750000000022051173606111100263320ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::HPUX::Drives; sub check { $^O =~ /hpux/ } sub run { my $params = shift; my $common = $params->{common}; my $type; my $fs; my $lv; my $total; my $free; for ( `fstyp -l | grep -v nfs` ) { if ( /^\s*$/ ) { #Blank line next; } $type=$_; for ( `bdf -t $type `) { if ( /Filesystem/ ) { ; } ; if ( /^(\S+)\s(\d+)\s+(\d+)\s+(\d+)\s+(\d+%)\s+(\S+)/ ) { $lv=$1; $total=$2; $free=$3; $fs=$6; $common->addDrives({ FREE => $free, FILESYSTEM => $fs, TOTAL => $total, TYPE => $type, VOLUMN => $lv, }); }; if ( /^(\S+)\s/) { $lv=$1; }; if ( /(\d+)\s+(\d+)\s+(\d+)\s+(\d+%)\s+(\S+)/) { $total=$1; $free=$3; $fs=$5; # print "fs $fs lv $lv total $total free $free type $type\n"; $common->addDrives({ FREE => $free, FILESYSTEM => $fs, TOTAL => $total, TYPE => $type, VOLUMN => $lv, }); }; }; }; } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/HPUX/Networks.pm010064400017500001750000000043011173606111100267110ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::HPUX::Networks; sub check { can_load("Net::IP qw(:PROC)"); } sub run { my $params = shift; my $common = $params->{common}; my $name; my $lanid; my $ipmask; my $ipgateway; my $status; my $macaddr; my $speed; my $type; my $ipsubnet; my $description; my $ipaddress; my $binip; my $binmask; my $binsubnet; for ( `lanscan -iap`) { # Reinit variable $name=""; $lanid=""; $ipmask=""; $ipgateway=""; $status=""; $macaddr=""; $speed=""; $type=""; $ipsubnet=""; $description=""; $ipaddress=""; if ( /^(\S+)\s(\S+)\s(\S+)\s+(\S+)/) { $name=$2; $macaddr=$1; $lanid=$4; #print "name $name macaddr $macaddr lanid $lanid\n"; for ( `lanadmin -g $lanid` ) { if (/Type.+=\s(.+)/) { $type = $1; }; if (/Description\s+=\s(.+)/) { $description = $1; }; if (/Speed.+=\s(\d+)/) { $speed = $1; unless ( $speed <= 1000000 ) { # in old version speed was given in Mbps # we want speed in Mbps $speed = $1/1000000; } }; if (/Operation Status.+=\s(.+)/) { $status = $1; }; }; # for lanadmin #print "name $name macaddr $macaddr lanid $lanid speed $speed status $status \n"; for ( `ifconfig $name 2> /dev/null` ) { if ( /inet\s(\S+)\snetmask\s(\S+)\s/ ) { $ipaddress=$1; $ipmask=$2; if ($ipmask =~ /(..)(..)(..)(..)/) { $ipmask=sprintf ("%i.%i.%i.%i",hex($1),hex($2),hex($3),hex($4)); } }; }; # For ifconfig $binip = ip_iptobin ($ipaddress ,4); $binmask = ip_iptobin ($ipmask ,4); $binsubnet = $binip & $binmask; $ipsubnet = ip_bintoip($binsubnet,4); $common->addNetworks({ DESCRIPTION => $description, IPADDRESS => $ipaddress, IPGATEWAY => $ipgateway, IPMASK => $ipmask, IPSUBNET => $ipsubnet, MACADDR => $macaddr, STATUS => $status, SPEED => $speed, TYPE => $type, }); }; # If }; # For lanscan } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/HPUX/Controller.pm010064400017500001750000000013621173606111100272240ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::HPUX::Controller; use strict; sub check { $^O =~ /hpux/ } sub run { my $params = shift; my $common = $params->{common}; my $name; my $interface; my $info; my $type; my @typeScaned=('ext_bus','fc','psi'); my $scaned; for (@typeScaned ) { $scaned=$_; for ( `ioscan -kFC $scaned| cut -d ':' -f 9,11,17,18` ) { if ( /(\S+):(\S+):(\S+):(.+)/ ) { $name=$2; $interface=$3; $info=$4; $type=$1; $common->addController({ 'NAME' => $name, 'MANUFACTURER' => "$interface $info", 'TYPE' => $type, }); }; }; }; } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/HPUX/Memory.pm010064400017500001750000000056001173606111100263500ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::HPUX::Memory; use strict; sub check { $^O =~ /hpux/ } sub run { my $params = shift; my $common = $params->{common}; my $capacity=0; my $caption; my $description; my $numslot; my $subnumslot; my $serialnumber; my $type; my @list_mem=`echo 'sc product mem;il'| /usr/sbin/cstm`; my $ok=0; if ( `uname -m` =~ /ia64/ ) { for ( `echo 'sc product IPF_MEMORY;il' | /usr/sbin/cstm` ) { if ( /\w+IMM\s+Location/ ) { ; } elsif ( /(\w+IMM)\s+(\w+)\s+(\S+)\s+(\w+IMM)\s+(\w+)\s+(\S+)/ ) { $common->addMemories({ CAPACITY => $3, CAPTION => $2 , NUMSLOTS => "1" , TYPE => $1, }); $common->addMemories({ CAPACITY => $6, CAPTION => $5 , NUMSLOTS => "1" , TYPE => $4, }); } } } else { for ( `echo 'sc product system;il' | /usr/sbin/cstm ` ) { if ( /FRU\sSource\s+=\s+\S+\s+\(memory/ ) { $ok=0; #print "FRU Source memory\n"; } if ( /Source\s+Detail\s+=\s4/ ) { $ok=1; #print "Source Detail IMM\n"; } if ( /Extender\s+Location\s+=\s+(\S+)/ ) { $subnumslot=$1; #print "Extended sub $subnumslot\n"; }; if ( /DIMMS\s+Rank\s+=\s+(\S+)/ ) { $numslot=sprintf("%02x",$1); #print "Num slot $numslot\n"; } if ( /FRU\s+Name\.*:\s+(\S+)/ ) { if ( /(\S+)_(\S+)/ ) { $type=$1; $capacity=$2; #print "Type $type capa $capacity\n"; } elsif ( /(\wIMM)(\S+)/ ) { $ok=1; $type=$1; $numslot=$2; #print "Type $type numslot $numslot\n"; } } if ( /Part\s+Number\.*:\s*(\S+)\s+/ ) { $description=$1; #print "ref $description\n"; }; if ( /Serial\s+Number\.*:\s*(\S+)\s+/ ) { $serialnumber=$1; if ( $ok eq 1 ) { if ( $capacity eq 0 ) { foreach ( @list_mem ) { if ( /\s+$numslot\s+(\d+)/ ) { $capacity=$1; #print "Capacity $capacity\n"; } } } $common->addMemories({ CAPACITY => $capacity, CAPTION => "Ext $subnumslot Slot $numslot" , DESCRIPTION => "Part Number $description", NUMSLOTS => "1" , SERIALNUMBER => $serialnumber, TYPE => $type, }); $ok=0; $capacity=0; }; #print "Serial $serialnumber\n\n"; }; }; } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/HPUX/Bios.pm010064400017500001750000000023411173606111100257730ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::HPUX::Bios; use strict; ### # Version 1.1 # Correction of Bug n 522774 # # thanks to Marty Riedling for this correction # ### sub check { $^O =~ /hpux/ } sub run { my $params = shift; my $common = $params->{common}; my $BiosVersion; my $BiosDate; my $SystemModel; my $SystemSerial; $SystemModel=`model`; if ( can_run ("machinfo") ) { foreach ( `machinfo` ) { if ( /Firmware\s+revision\s?[:=]\s+(\S+)/ ) { $BiosVersion=$1; } if ( /achine\s+serial\s+number\s?[:=]\s+(\S+)/ ) { $SystemSerial=$1; } } } else { for ( `echo 'sc product cpu;il' | /usr/sbin/cstm | grep "PDC Firmware"` ) { if ( /Revision:\s+(\S+)/ ) { $BiosVersion="PDC $1"; } } for ( `echo 'sc product system;il' | /usr/sbin/cstm | grep "System Serial Number"` ) { if ( /:\s+(\w+)/ ) { $SystemSerial=$1; } } } $common->setBios ({ BVERSION => $BiosVersion, BDATE => $BiosDate, BMANUFACTURER => "HP", SMANUFACTURER => "HP", SMODEL => $SystemModel, SSN => $SystemSerial, }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/HPUX/Software.pm010064400017500001750000000014421173606111100266720ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::HPUX::Software; sub check { my $params = shift; # Do not run an package inventory if there is the --nosoft parameter return if ($params->{params}->{nosoft}); $^O =~ /hpux/ } sub run { my $params = shift; my $common = $params->{common}; my @softList; my $software; @softList = `swlist | grep -v '^ PH' | grep -v '^#' |tr -s "\t" " "|tr -s " "` ; foreach $software (@softList) { chomp( $software ); if ( $software =~ /^ (\S+)\s(\S+)\s(.+)/ ) { $common->addSoftwares({ 'NAME' => $1 , 'VERSION' => $2 , 'COMMENTS' => $3 , 'PUBLISHER' => "HP" , }); } } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/HPUX/Domains.pm010064400017500001750000000011321173606111100264660ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::HPUX::Domains; use strict; sub check { can_run ("domainname") } sub run { my $params = shift; my $common = $params->{common}; my $domain; chomp($domain = `domainname`); if (!$domain) { my %domain; if (open RESOLV, "/etc/resolv.conf") { while() { $domain{$2} = 1 if (/^(domain|search)\s+(.+)/); } close RESOLV; } $domain = join "/", keys %domain; } # If no domain name, we send "WORKGROUP" $domain = 'WORKGROUP' unless $domain; $common->setHardware({ WORKGROUP => $domain }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/HPUX/README010064400017500001750000000030651173606111100254250ustar00guiguiguigui##################################################### # 17/12/2009 # Auteur: dwizz.donowin@yahoo.fr # # This code is open source and may be copied and modified as long as the source # code is always made freely available. # Please refer to the General Public Licence http://www.gnu.org/ or Licence.txt # ################################################################################ Version Francaise ----------------- (for english version see below) Ces fichiers sont generes pour etre utilisis avec l'agent Unix OCS-NG 1.02 Installation: Installer le client OCS-NG 1.02 avec ces prerequis extraire les fichiers dans le repertoire Ocsinventory/Agent/Backend/OS Ils seront automatiquement pris en compte par le client OCS Je n'ai pu tester ces fichiers que sur N4000 actuellement en version HP-UX 11.0 J'ai commence sur un rp3440 mais je n'ai pas encore toutes les informations car le format des certaines donnees change. N'hesitez pas a m'aider a le faire evoluer. English version --------------- This files are producted for using with the OCS-NG 1.02 Unix Agent Install: Install the OCS-NG 1.02 Agent with the prerequesit Extract the files in the Ocsinventory/Agent/Backend/OS It will be used automaticly I have test the script on only n4000 system for th moment on HP-Ux 11.0 I try it on rp3440 but some informations are not in the same format If you wish to help me, you are welwome. the files are HPUX.pm HPUX sub directory Bios.pm CPU.pm Controller.pm Domains.pm Drives.pm IPv4.pm Mem.pm Memory.pm Networks.pm Slots.pm Software.pm Storages.pm Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/HPUX/IPv4.pm010064400017500001750000000007131173606111100256620ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::HPUX::IPv4; sub check {`which ifconfig 2>&1`; ($? >> 8)?0:1 } # Initialise the distro entry sub run { my $params = shift; my $common = $params->{common}; my $ip; my $hostname; if ( `hostname` =~ /(\S+)/ ) { $hostname=$1; } for ( `grep $hostname /etc/hosts ` ) { if ( /(^\d+\.\d+\.\d+\.\d+)\s+/ ) { $ip=$1; $common->setHardware({IPADDR => $ip}); } } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/HPUX/CPU.pm010064400017500001750000000063251173606111100255340ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::HPUX::CPU; ### # Version 1.1 # Correction of Bug n 522774 # # thanks to Marty Riedling for this correction # ### use strict; use LWP::UserAgent; sub check { $^O =~ /hpux/ } sub run { my $params = shift; my $common = $params->{common}; my $processort; my $processorn; my $processors=""; my $DeviceType; my $cpuInfo; my $serie; # Using old system HpUX without machinfo # the Hpux whith machinfo will be done after my %cpuInfos = ( "D200"=>"7100LC 75", "D210"=>"7100LC 100", "D220"=>"7300LC 132", "D230"=>"7300LC 160", "D250"=>"7200 100", "D260"=>"7200 120", "D270"=>"8000 160", "D280"=>"8000 180", "D310"=>"7100LC 100", "D320"=>"7300LC 132", "D330"=>"7300LC 160", "D350"=>"7200 100", "D360"=>"7200 120", "D370"=>"8000 160", "D380"=>"8000 180", "D390"=>"8200 240", "K360"=>"8000 180", "K370"=>"8200 200", "K380"=>"8200 240", "K400"=>"7200 100", "K410"=>"7200 120", "K420"=>"7200 120", "K460"=>"8000 180", "K570"=>"8200 200", "K580"=>"8200 240", "L1000-36"=>"8500 360", "L1500-7x"=>"8700 750", "L3000-7x"=>"8700 750", "N4000-44"=>"8500 440", "ia64 hp server rx1620"=>"itanium 1600"); if ( can_run ("machinfo") ) { foreach ( `machinfo`) { if ( /Number of CPUs\s+=\s+(\d+)/ ) { $processorn=$1; } if ( /Clock speed\s+=\s+(\d+)\s+MHz/ ) { $processors=$1; } # Added for HPUX 11.31 if ( /Intel\(R\) Itanium 2 9[01]00 series processor \((\d+\.\d+)/ ) { $processors=$1*1000; } if ( /(\d+)\s+logical processors/ ) { $processorn=$1; } # end HPUX 11.31 } } else { chomp($DeviceType =`model |cut -f 3- -d/`); my $cpuInfo = $cpuInfos{"$DeviceType"}; if ( "$cpuInfo" =~ /^(\S+)\s(\S+)/ ) { $processort=$1; $processors=$2; } else { for ( `echo 'sc product cpu;il' | /usr/sbin/cstm | grep "CPU Module"` ) { if ( /(\S+)\s+CPU\s+Module/ ) { $processort=$1; } }; for ( `echo 'itick_per_usec/D' | adb -k /stand/vmunix /dev/kmem` ) { if ( /tick_per_usec:\s+(\d+)/ ) { $processors=$1; } } }; # NBR CPU chomp($processorn=`ioscan -Fk -C processor | wc -l`); #print "HP $processort A $processorn A $processors "; } chomp($serie = `uname -m`); if ( $serie =~ /ia64/) { $processort="Itanium" } if ( $serie =~ /9000/) { $processort="PA$processort"; } $common->setHardware({ PROCESSORT => $processort, PROCESSORN => $processorn, PROCESSORS => $processors, }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Solaris.pm010064400017500001750000000021641173606111100257320ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Solaris; use strict; use vars qw($runAfter); $runAfter = ["Ocsinventory::Agent::Backend::OS::Generic"]; sub check {$^O =~ /^solaris$/} sub run { my $params = shift; my $common = $params->{common}; my $OSName; my $OSComment; my $OSVersion; my $OSLevel; my $HWDescription; my ( $karch, $hostid, $proct, $platform); #Operating system informations chomp($OSName=`uname -s`); chomp($OSLevel=`uname -r`); chomp($OSComment=`uname -v`); open(FH, "< /etc/release") and do { chomp($OSVersion = readline (FH)); $OSVersion =~ s/^\s+//; close FH; }; chomp($OSVersion=`uname -v`) unless $OSVersion; chomp($OSVersion); $OSVersion=~s/^\s*//; $OSVersion=~s/\s*$//; # Hardware informations chomp($karch=`arch -k`); chomp($hostid=`hostid`); chomp($proct=`uname -p`); chomp($platform=`uname -i`); $HWDescription = "$platform($karch)/$proct HostID=$hostid"; $common->setHardware({ OSNAME => "$OSName $OSLevel", OSCOMMENTS => $OSComment, OSVERSION => $OSVersion, DESCRIPTION => $HWDescription }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/AIX.pm010064400017500001750000000014271173606111100247400ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::AIX; use strict; use vars qw($runAfter); $runAfter = ["Ocsinventory::Agent::Backend::OS::Generic"]; sub check { my $r; $r = 1 if $^O =~ /^aix$/; $r; } sub run { my $params = shift; my $common = $params->{common}; my @tabOS; my $OSName; my $OSComment; my $OSVersion; my $OSLevel; #Operating system informations chomp($OSName=`uname -s`); # AIX OSVersion = oslevel, OSComment=oslevel -r affiche niveau de maintenance chomp($OSVersion=`oslevel`); chomp($OSLevel=`oslevel -r`); @tabOS=split(/-/,$OSLevel); $OSComment="Maintenance Level :".@tabOS[1]; $OSVersion =~ s/(.0)*$//; $common->setHardware({ OSNAME => "$OSName $OSVersion", OSCOMMENTS => $OSComment, OSVERSION => $OSLevel, }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Generic.pm010064400017500001750000000001211173606111100256610ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Generic; use strict; sub run {} 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/Linux.pm010064400017500001750000000014431173606111100254140ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::Linux; use strict; use vars qw($runAfter); $runAfter = ["Ocsinventory::Agent::Backend::OS::Generic"]; sub check { $^O =~ /^linux$/ } sub run { my $params = shift; my $common = $params->{common}; chomp (my $osversion = `uname -r`); my $lastloggeduser; my $datelastlog; my @query = runcmd("last -R"); foreach ($query[0]) { if ( s/^(\S+)\s+\S+\s+(\S+\s+\S+\s+\S+\s+\S+)\s+.*// ) { $lastloggeduser = $1; $datelastlog = $2; } } # This will probably be overwritten by a Linux::Distro module. $common->setHardware({ OSNAME => "Linux", OSCOMMENTS => "Unknown Linux distribution", OSVERSION => $osversion, LASTLOGGEDUSER => $lastloggeduser, DATELASTLOGGEDUSER => $datelastlog }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/BSD.pm010064400017500001750000000020241173606111100247210ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::BSD; use strict; use vars qw($runAfter); $runAfter = ["Ocsinventory::Agent::Backend::OS::Generic"]; sub check { $^O =~ /freebsd|openbsd|netbsd|gnukfreebsd|gnuknetbsd/ } sub run { my $params = shift; my $common = $params->{common}; my $OSName; my $OSComment; my $OSVersion; my $OSLevel; my $OSArchi; # Operating system informations chomp($OSName=`uname -s`); chomp($OSVersion=`uname -r`); chomp($OSArchi=`uname -p`); # Retrieve the origin of the kernel configuration file my ($date, $origin, $kernconf); for (`sysctl -n kern.version`) { $date = $1 if /^\S.*\#\d+:\s*(.*)/; ($origin,$kernconf) = ($1,$2) if /^\s+(.+):(.+)$/; } $kernconf =~ s/\/.*\///; # remove the path $OSComment = $kernconf." (".$date.")\n".$origin; # if there is a problem use uname -v chomp($OSComment=`uname -v`) unless $OSComment; $common->setHardware({ OSNAME => $OSName." ".$OSArchi, OSCOMMENTS => $OSComment, OSVERSION => $OSVersion, }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/MacOS.pm010064400017500001750000000026261173606111100252630ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::MacOS; use strict; require Exporter; our @ISA = qw /Exporter/; our @EXPORT = qw /get_sysprofile_devices_names/; sub check { my $r; # we check far darwin because that's the _real_ underlying OS $r = 1 if (uc($^O) =~ /^DARWIN$/); return($r); } sub run { my $params = shift; my $common = $params->{common}; my $OSName; my $OSComment; my $OSVersion; # if we can load the system profiler, gather the information from that if(can_load("Mac::SysProfile")){ my $profile = Mac::SysProfile->new(); my $data = $profile->gettype('SPSoftwareDataType'); return(undef) unless(ref($data) eq 'ARRAY'); my $h = $data->[0]; my $SystemVersion = $h->{'os_version'}; if ($SystemVersion =~ /^(.*?)\s+(\d+.*)/) { $OSName=$1; $OSVersion=$2; } else { # Default values $OSName="Mac OS X"; $OSVersion="Unknown"; } } else { # we can't load the system profiler, use the basic BSD stype information # Operating system informations chomp($OSName=`uname -s`); chomp($OSVersion=`uname -r`); } # add the uname -v as the comment, not really needed, but extra info never hurt chomp($OSComment=`uname -v`); $common->setHardware({ OSNAME => $OSName, OSCOMMENTS => $OSComment, OSVERSION => $OSVersion, }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/OS/HPUX.pm010064400017500001750000000011361173606111100251000ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::OS::HPUX; use strict; use vars qw($runAfter); $runAfter = ["Ocsinventory::Agent::Backend::OS::Generic"]; sub check { $^O =~ /hpux/ } sub run { my $params = shift; my $common = $params->{common}; my $OSName; my $OSVersion; my $OSComment; #my $uname_path = &_get_path('uname'); # Operating systeminformations chomp($OSName = `uname -s`); chomp($OSVersion = `uname -r`); chomp($OSComment = `uname -l`); $common->setHardware({ OSNAME => $OSName, OSCOMMENTS => $OSComment, OSVERSION => $OSVersion, }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/IpDiscover004075500017500001750000000000001173606116100254345ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/IpDiscover/IpDiscover.pm010064400017500001750000000030151173606111100301070ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::IpDiscover::IpDiscover; use strict; use warnings; sub check { can_run ("ipdiscover") } sub run { my $params = shift; my $common = $params->{common}; my $prologresp = $params->{prologresp}; my $logger = $params->{logger}; # Let's find network interfaces and call ipdiscover on it my $options = $prologresp->getOptionsInfoByName("IPDISCOVER"); my $ipdisc_lat; my $network; if ($options->[0] && exists($options->[0]->{IPDISC_LAT}) && $options->[0]->{IPDISC_LAT}) { $ipdisc_lat = $options->[0]->{IPDISC_LAT}; } if ($options->[0] && exists($options->[0]->{content})) { $network = $options->[0]->{content}; } else { return; } $logger->debug("Scanning the $network network"); my $legacymode; if( `ipdiscover` =~ /binary ver. (\d+)/ ){ if(!($1>3)) { $legacymode = 1; $logger->debug("ipdiscover ver.$1: legacymode"); } } my $ifname; foreach (`route -n`) { if (/^(\d+\.\d+\.\d+\.\d+).*?\s(\S+)$/) { if ($network eq $1) { $ifname = $2; last; } elsif (!$ifname && $1 eq "0.0.0.0") { $ifname = $2; } } } if ($ifname) { my $cmd = "ipdiscover $ifname "; $cmd .= $ipdisc_lat if ($ipdisc_lat && !$legacymode); foreach (`$cmd`) { if (/([\d\.]*)<\/I>([\w\:]*)<\/M>(\S*)<\/N><\/H>/) { $common->addIpDiscoverEntry({ IPADDRESS => $1, MACADDR => $2, NAME => $3 }); } } } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/IpDiscover/Nmap.pm010064400017500001750000000033641173606111100267420ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::IpDiscover::Nmap; use vars qw($runMeIfTheseChecksFailed); $runMeIfTheseChecksFailed = ["Ocsinventory::Agent::Backend::IpDiscover::IpDiscover"]; use strict; use warnings; sub check { my $params = shift; return unless can_run("nmap"); return unless can_load("Nmap::Parser"); # Do we have nmap 3.90 (or >) foreach (`nmap -v 2>&1`) { if (/^Starting Nmap (\d+)\.(\d+)/) { my $release = $1; my $minor = $2; if ($release > 3 || ($release > 3 && $minor >= 90)) { return 1; } } } 0; } sub run { my $params = shift; my $common = $params->{common}; my $prologresp = $params->{prologresp}; my $logger = $params->{logger}; # Let's find network interfaces and call ipdiscover on it my $options = $prologresp->getOptionsInfoByName("IPDISCOVER"); my $network; if ($options->[0] && exists($options->[0]->{content})) { $network = $options->[0]->{content}; } else { return; } unless ($network =~ /^\d+\.\d+\.\d+\.\d+$/) { return; } #Let's go scanning the network and parsing the results $logger->debug("Scanning the $network network"); my $nmaparser = new Nmap::Parser; $nmaparser->parsescan("nmap","-sP","-PR","$network/24"); for my $host ($nmaparser->all_hosts("up")){ my $ip = $host->addr; my $mac = $host->mac_addr; my $hostname = $host->hostname; if ($hostname eq 0) { $hostname = undef; #it's better to send nothing instead of a '0' } if ($mac) { $logger->debug("Host $ip found using Nmap. Adding informations in XML"); #Feeding the Inventory XML $common->addIpDiscoverEntry({ IPADDRESS => $ip, MACADDR => lc($mac), NAME => $hostname, }); } } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/Virtualization004075500017500001750000000000001173606116100264115ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/Virtualization/Vmsystem.pm010064400017500001750000000143361173606111100306540ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::Virtualization::Vmsystem; # Initial Ocsinventory::Agent::Backend::Virtualization::Vmsystem version: Nicolas EISEN # # Code include from imvirt - I'm virtualized? # http://micky.ibh.net/~liske/imvirt.html # # Authors: # Thomas Liske # # Copyright Holder: # 2008 (C) IBH IT-Service GmbH [http://www.ibh.de/] # # License: # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this package; if not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA # ## # # Outputs: # Xen # VirtualBox # Virtual Machine # VMware # QEMU # SolarisZone # # If no virtualization has been detected: # Physical # ## use strict; sub check { if ( can_run("zoneadm")){ # Is a solaris zone system capable ? return 1; } if ( can_run ("dmidecode") ) { # 2.6 and under haven't -t parameter my $dmidecode_ver = `dmidecode -V 2>/dev/null`; my @SplitVersion = split(/\./, $dmidecode_ver); if (@SplitVersion[0] > 2) { return 1; } elsif (@SplitVersion[0] == 2 && @SplitVersion[1] >= 7) { return 1; } } return 0; } sub run { my $params = shift; my $common = $params->{common}; my $dmidecode = '/usr/sbin/dmidecode'; my $cmd = '$dmidecode -t system'; my $dmesg = '/bin/dmesg | head -n 750'; my $status = "Physical"; my $found = 0; # Solaris zones my @solaris_zones; @solaris_zones = `/usr/sbin/zoneadm list`; @solaris_zones = grep (!/global/,@solaris_zones); if(@solaris_zones){ $status = "SolarisZone"; $found = 1; } if ( -d '/proc/xen' || check_file_content('/sys/devices/system/clocksource/clocksource0/available_clocksource','xen')) { $found = 1 ; if (check_file_content('/proc/xen/capabilities', 'control_d')) { # dom0 host } else { # domU PV host $status = "Xen"; # those information can't be extracted from dmidecode $common->setBios ({ SMANUFACTURER => 'Xen', SMODEL => 'PVM domU' }); } } # dmidecode needs root to work :( if ($found == 0 and -r '/dev/mem' && -x $dmidecode) { my $sysprod = `$dmidecode -s system-product-name`; if ($sysprod =~ /^VMware/) { $status = "VMware"; $found = 1; } elsif ($sysprod =~ /^Virtual Machine/) { $status = "Virtual Machine"; $found = 1; } else { my $biosvend = `$dmidecode -s bios-vendor`; if ($biosvend =~ /^QEMU/) { $status = "QEMU"; $found = 1; } elsif ($biosvend =~ /^Xen/) { # virtualized Xen $status = "Xen"; $found = 1; } } } # Parse loaded modules my %modmap = ( '^vmxnet\s' => 'VMware', '^xen_\w+front\s' => 'Xen', ); if ($found == 0 and open(HMODS, '/proc/modules')) { while() { foreach my $str (keys %modmap) { if (/$str/) { $status = "$modmap{$str}"; $found = 1; last; } } } close(HMODS); } # Let's parse some logs & /proc files for well known strings my %msgmap = ( 'VMware vmxnet virtual NIC driver' => 'VMware', 'Vendor: VMware\s+Model: Virtual disk' => 'VMware', 'Vendor: VMware,\s+Model: VMware Virtual ' => 'VMware', ': VMware Virtual IDE CDROM Drive' => 'VMware', ' QEMUAPIC ' => 'QEMU', 'QEMU Virtual CPU' => 'QEMU', ': QEMU HARDDISK,' => 'QEMU', ': QEMU CD-ROM,' => 'QEMU', ': Virtual HD,' => 'Virtual Machine', ': Virtual CD,' => 'Virtual Machine', ' VBOXBIOS ' => 'VirtualBox', ': VBOX HARDDISK,' => 'VirtualBox', ': VBOX CD-ROM,' => 'VirtualBox', 'Hypervisor signature: xen' => 'Xen', 'Xen virtual console successfully installed' => 'Xen', 'Xen reported:' => 'Xen', 'Xen: \d+ - \d+' => 'Xen', 'xen-vbd: registered block device' => 'Xen', 'ACPI: RSDP \(v\d+\s+Xen ' => 'Xen', 'ACPI: XSDT \(v\d+\s+Xen ' => 'Xen', 'ACPI: FADT \(v\d+\s+Xen ' => 'Xen', 'ACPI: MADT \(v\d+\s+Xen ' => 'Xen', 'ACPI: HPET \(v\d+\s+Xen ' => 'Xen', 'ACPI: SSDT \(v\d+\s+Xen ' => 'Xen', 'ACPI: DSDT \(v\d+\s+Xen ' => 'Xen', ); if ($found == 0 and open(HDMSG, '/var/log/dmesg')) { while() { foreach my $str (keys %msgmap) { if (/$str/) { $status = "$msgmap{$str}"; $found = 1; last; } } } close(HDMSG); } # Read kernel ringbuffer directly if ($found == 0 and open(HDMSG, '$dmesg |')) { while() { foreach my $str (keys %msgmap) { if (/$str/) { $status = "$msgmap{$str}"; $found = 1; last; } } } close(HDMSG); } if ($found == 0 and open(HSCSI, '/proc/scsi/scsi')) { while() { foreach my $str (keys %msgmap) { if (/$str/) { $status = "$msgmap{$str}"; $found = 1; last; } } } close(HSCSI); } $common->setHardware ({ VMSYSTEM => $status, }); } sub check_file_content { my ($file, $pattern) = @_; return 0 unless -r $file; my $found = 0; open (my $fh, '<', $file) or die "Can't open file $file: $!"; while (my $line = <$fh>) { if ($line =~ /$pattern/) { $found = 1; last; } } close ($fh); return $found; } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/Virtualization/VmWareDesktop.pm010064400017500001750000000025711173606111100315560ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::Virtualization::VmWareDesktop; # # initial version: Walid Nouh # use strict; sub check { return can_run('/Library/Application\ Support/VMware\ Fusion/vmrun') } sub run { my $params = shift; my $common = $params->{common}; my $logger = $params->{logger}; my $uuid; my $mem; my $status; my $name; my $i = 0; my $commande = "/Library/Application\\ Support/VMware\\ Fusion\/vmrun list"; foreach my $vmxpath ( `$commande` ) { next unless $i++ > 0; # Ignore the first line if (!open TMP, "<$vmxpath") { $logger->debug("Can't open $vmxpath\n"); next; } my @vminfos = ; close TMP; foreach my $line (@vminfos) { if ($line =~ m/^displayName =\s\"+(.*)\"/) { $name = $1; } elsif ($line =~ m/^memsize =\s\"+(.*)\"/) { $mem = $1; } elsif ($line =~ m/^uuid.bios =\s\"+(.*)\"/) { $uuid = $1; } } $common->addVirtualMachine ({ NAME => $name, VCPU => 1, UUID => $uuid, MEMORY => $mem, STATUS => "running", SUBSYSTEM => "VmWare Fusion", VMTYPE => "VmWare", }); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/Virtualization/VirtualBox.pm010064400017500001750000000146771173606111100311340ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::Virtualization::VirtualBox; # This module detects only all VMs create by the user who launch this module (root VMs). use strict; use XML::Simple; use File::Glob ':glob'; sub check { return can_run('VirtualBox') and can_run('VBoxManage') } sub run { my $params = shift; my $common = $params->{common}; my $scanhomedirs = $params->{accountinfo}{config}{scanhomedirs}; my $cmd_list_vms = "VBoxManage -nologo list vms"; my ( $version ) = ( `VBoxManage --version` =~ m/^(\d\.\d).*$/ ) ; if ( $version > 2.1 ) { # detect VirtualBox version 2.2 or higher $cmd_list_vms = "VBoxManage -nologo list --long vms"; } my $in = 0; my $uuid; my $mem; my $status; my $name; foreach my $line (`$cmd_list_vms`){ # read only the information on the first paragraph of each vm chomp ($line); if ($in == 0 and $line =~ m/^Name:\s+(.*)$/) { # begin $name = $1; $in = 1; } elsif ($in == 1 ) { if ($line =~ m/^UUID:\s+(.*)/) { $uuid = $1; } elsif ($line =~ m/^Memory size:\s+(.*)/ ) { $mem = $1; } elsif ($line =~ m/^State:\s+(.*)\(.*/) { $status = ( $1 =~ m/off/ ? "off" : $1 ); } elsif ($line =~ m/^\s*$/) { # finish $in = 0 ; next if $uuid =~ /^N\\A$/ ; #If no UUID found, it is not a virtualmachine $common->addVirtualMachine ({ NAME => $name, VCPU => 1, UUID => $uuid, MEMORY => $mem, STATUS => $status, SUBSYSTEM => "Sun xVM VirtualBox", VMTYPE => "VirtualBox", }); $name = $status = $mem = $uuid = 'N\A'; # useless but need it for security (new version, ...) } } } if ($in == 1) { # Anormal situation ! save the current vm information ... $common->addVirtualMachine ({ NAME => $name, VCPU => 1, UUID => $uuid, MEMORY => $mem, STATUS => $status, SUBSYSTEM => "Sun xVM VirtualBox", VMTYPE => "VirtualBox", }); } # try to found another VMs, not exectute by root my @vmRunnings = (); my $index = 0 ; foreach my $line ( `ps -ef` ) { chomp($line); if ( $line !~ m/^root/) { if ($line =~ m/^.*VirtualBox (.*)$/) { my @process = split (/\s*\-\-/, $1); #separate options $name = $uuid = "N/A"; foreach my $option ( @process ) { print $option."\n"; if ($option =~ m/^comment (.*)/) { $name = $1; } elsif ($option =~ m/^startvm (\S+)/) { $uuid = $1; } } if ($scanhomedirs == 1 ) { # If I will scan Home directories, $vmRunnings [$index] = $uuid; # save the no-root running machine $index += 1; } else { $common->addVirtualMachine ({ # add in inventory NAME => $name, VCPU => 1, UUID => $uuid, STATUS => "running", SUBSYSTEM => "Sun xVM VirtualBox", VMTYPE => "VirtualBox", }); } } } } # If home directories scan is authorized if ($scanhomedirs == 1 ) { # Read every Machines Xml File of every user foreach my $xmlMachine (bsd_glob("/home/*/.VirtualBox/Machines/*/*.xml")) { chomp($xmlMachine); # Open config file ... my $configFile = new XML::Simple; my $data = $configFile->XMLin($xmlMachine); # ... and read it if ($data->{Machine}->{uuid}) { my $uuid = $data->{Machine}->{uuid}; $uuid =~ s/^{?(.{36})}?$/$1/; my $status = "off"; foreach my $vmRun (@vmRunnings) { if ($uuid eq $vmRun) { $status = "running"; } } $common->addVirtualMachine ({ NAME => $data->{Machine}->{name}, VCPU => $data->{Machine}->{Hardware}->{CPU}->{count}, UUID => $uuid, MEMORY => $data->{Machine}->{Hardware}->{Memory}->{RAMSize}, STATUS => $status, SUBSYSTEM => "Sun xVM VirtualBox", VMTYPE => "VirtualBox", }); } } foreach my $xmlVirtualBox (bsd_glob("/home/*/.VirtualBox/VirtualBox.xml")) { chomp($xmlVirtualBox); # Open config file ... my $configFile = new XML::Simple; my $data = $configFile->XMLin($xmlVirtualBox); # ... and read it my $defaultMachineFolder = $data->{Global}->{SystemProperties}->{defaultMachineFolder}; if ( $defaultMachineFolder != 0 and $defaultMachineFolder != "Machines" and $defaultMachineFolder =~ /^\/home\/S+\/.VirtualBox\/Machines$/ ) { foreach my $xmlMachine (bsd_glob($defaultMachineFolder."/*/*.xml")) { my $configFile = new XML::Simple; my $data = $configFile->XMLin($xmlVirtualBox); if ( $data->{Machine} != 0 and $data->{Machine}->{uuid} != 0 ) { my $uuid = $data->{Machine}->{uuid}; $uuid =~ s/^{?(.{36})}?$/$1/; my $status = "off"; foreach my $vmRun (@vmRunnings) { if ($uuid eq $vmRun) { $status = "running"; } } $common->addVirtualMachine ({ NAME => $data->{Machine}->{name}, VCPU => $data->{Machine}->{Hardware}->{CPU}->{count}, UUID => $uuid, MEMORY => $data->{Machine}->{Hardware}->{Memory}->{RAMSize}, STATUS => $status, SUBSYSTEM => "Sun xVM VirtualBox", VMTYPE => "VirtualBox", }); } } } } } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/Virtualization/Parallels.pm010064400017500001750000000040531173606111100307370ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::Virtualization::Parallels; use strict; sub check { return can_run('prlctl') } sub run { my $params = shift; my $common = $params->{common}; my $config = $params->{config}; my %status_list = ( 'running' => 'running', 'blocked' => 'blocked', 'paused' => 'paused', 'suspended' => 'suspended', 'crashed' => 'crashed', 'dying' => 'dying', ); my $uuid=""; my $mem=""; my $status=""; my $name=""; my $cpus = 1; my @users = (); # We don't want to scan user directories unless --scan-homedirs is used return unless $config->{scanhomedirs}; foreach my $lsuser ( glob("/Users/*") ) { $lsuser =~ s/.*\///; # Just keep the login next if /Shared/i; next if /^\./i; # Ignore hidden directory next if /\ /; # Ignore directory with space in the name next if /'/; # Ignore directory with space in the name push(@users,$lsuser); } foreach my $user (@users) { my @command = `su '$user' -c "prlctl list -a"`; shift (@command); foreach my $line ( @command ) { chomp $line; my @params = split(/ /, $line); $uuid = $params[0]; #$status = $params[1]; $status = $status_list{$params[1]}; $name = $params[4]; # Avoid security risk. Should never appends next if $uuid =~ /(;\||&)/; foreach my $infos ( `sudo -u '$user' prlctl list -i $uuid`) { if ($infos =~ m/^\s\smemory\s(.*)Mb/) { $mem = $1; } elsif ($infos =~ m/^\s\scpu\s([0-9]{1,2})/) { $cpus= $1; } } $common->addVirtualMachine ({ NAME => $name, VCPU => $cpus, UUID => $uuid, MEMORY => $mem, STATUS => $status, SUBSYSTEM => "", VMTYPE => "Parallels", }); } } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/Virtualization/Qemu.pm010064400017500001750000000031011173606111100277200ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::Virtualization::Qemu; # With Qemu 0.10.X, some option will be added to get more and easly information (UUID, memory, ...) use strict; sub check { return (can_run('qemu') || can_run('kvm') || can_run('qemu-kvm'))} sub run { my $params = shift; my $common = $params->{common}; foreach ( `ps -ef` ) { if (m/^.*((qemu|kvm|(qemu-kvm)).*\-([fh]d[a-d]|cdrom).*)$/) { # match only if an qemu instance my $name = "N/A"; my $mem = 0; my $uuid; my $vmtype = $2; my @process = split (/\-/, $1); #separate options foreach my $option ( @process ) { if ($name eq "N/A" and $option =~ m/^([fh]d[a-d]|cdrom) (\S+)/) { $name = $2; } elsif ($option =~ m/^name (\S+)/) { $name = $1; } elsif ($option =~ m/^m (\S+)/) { $mem = $1; } elsif ($option =~ m/^uuid (\S+)/) { $uuid = $1; } } if ($mem == 0 ) { # Default value $mem = 128; } $common->addVirtualMachine ({ NAME => $name, UUID => $uuid, VCPU => 1, MEMORY => $mem, STATUS => "running", SUBSYSTEM => $vmtype, VMTYPE => $vmtype, }); } } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/Virtualization/Xen.pm010064400017500001750000000002271173606111100275510ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::Virtualization::Xen; $runMeIfTheseChecksFailed = ["Ocsinventory::Agent::Backend::Virtualization::Libvirt"]; 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/Virtualization/Libvirt.pm010064400017500001750000000017651173606111100304420ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::Virtualization::Libvirt; use strict; use XML::Simple; sub check { can_run('virsh') } sub run { my $params = shift; my $common = $params->{common}; foreach (`virsh list --all`) { if (/^\s+(\d+|\-)\s+(\S+)\s+(\S.+)/) { my $name = $2; my $status = $3; my $status =~ s/^shut off/off/; my $xml = `virsh dumpxml $name`; my $data = XMLin($xml); my $vcpu = $data->{vcpu}; my $uuid = $data->{uuid}; my $vmtype = $data->{type}; my $memory = $1 if $data->{currentMemory} =~ /(\d+)\d{3}$/; my $machine = { MEMORY => $memory, NAME => $name, UUID => $uuid, STATUS => $status, SUBSYSTEM => "libvirt", VMTYPE => $vmtype, VCPU => $vcpu, }; $common->addVirtualMachine($machine); } } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/Virtualization/VmWareESX.pm010064400017500001750000000024701173606111100306020ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::Virtualization::VmWareESX; use strict; sub check { can_run('vmware-cmd') } sub run { my $params = shift; my $common = $params->{common}; foreach my $vmx (`vmware-cmd -l`) { chomp $vmx; next unless -f $vmx; my %machineInfo; open VMX, "<$vmx" or warn; foreach () { if (/^(\S+)\s*=\s*(\S+.*)/) { my $key = $1; my $value = $2; $value =~ s/(^"|"$)//g; $machineInfo{$key} = $value; } } close VMX; my $status = 'unknow'; if ( `vmware-cmd "$vmx" getstate` =~ /=\ (\w+)/ ) { # off $status = $1; } my $memory = $machineInfo{'memsize'}; my $name = $machineInfo{'displayName'}; my $uuid = $machineInfo{'uuid.bios'}; # correct uuid format $uuid =~ s/\s+//g; # delete space $uuid =~ s!^(........)(....)(....)-(....)(.+)$!\1-\2-\3-\4-\5!; # add dashs my $machine = { MEMORY => $memory, NAME => $name, UUID => $uuid, STATUS => $status, SUBSYSTEM => "VmWareESX", VMTYPE => "VmWare", }; $common->addVirtualMachine($machine); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/Virtualization/Xen004075500017500001750000000000001173606116100271435ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/Virtualization/Xen/XM.pm010064400017500001750000000036771173606111100301110ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::Virtualization::Xen::XM; use strict; sub check { can_run('xm') } sub run { my $params = shift; my $common = $params->{common}; # output: xm list # # Name ID Mem(MiB) VCPUs State Time(s) # Domain-0 0 98 1 r----- 5068.6 # Fedora3 164 128 1 r----- 7.6 # Fedora4 165 128 1 ------ 0.6 # Mandrake2006 166 128 1 -b---- 3.6 # Mandrake10.2 167 128 1 ------ 2.5 # Suse9.2 168 100 1 ------ 1.8 # xm status my %status_list = ( 'r' => 'running', 'b' => 'blocked', 'p' => 'paused', 's' => 'shutdown', 'c' => 'crashed', 'd' => 'dying', ); my $vmtype = 'xen'; my $subsystem = 'xm'; my @xm_list = `xm list`; # remove first line shift @xm_list; foreach my $vm (@xm_list) { chomp $vm; my ($name, $vmid, $memory, $vcpu, $status, $time) = split(' ',$vm); $status =~ s/-//g; $status = ( $status ? $status_list{$status} : 'off'); my @vm_info = `xm list -l $name`; my $uuid; foreach my $value (@vm_info) { chomp $value; if ($value =~ /uuid/) { $value =~ s/\(|\)//g; $value =~ s/\s+.*uuid\s+(.*)/\1/; $uuid = $value; last; } } my $machine = { MEMORY => $memory, NAME => $name, UUID => $uuid, STATUS => $status, SUBSYSTEM => $subsystem, VMTYPE => $vmtype, VCPU => $vcpu, VMID => $vmid, }; $common->addVirtualMachine($machine); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/Virtualization/SolarisZones.pm010064400017500001750000000040451173606111100314540ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::Virtualization::SolarisZones; use strict; sub check { return unless can_run('zoneadm'); return unless check_solaris_valid_release(); } sub check_solaris_valid_release{ #check if Solaris 10 release is higher than 08/07 my @rlines; my $release_file; my $release; my $year; $release_file = "/etc/release"; if (!open(SOLVERSION, $release_file)) { return; } @rlines = ; @rlines = grep(/Solaris/,@rlines); $release = @rlines[0]; $release =~ m/(\d)\/(\d+)/; $release = $1; $year = $2; $release =~ s/^0*//g; $year =~ s/^0*//g; if ($year <= 7 and $release < 8 ){ return 0; } 1 } sub run { my @zones; my @lines; my $zone; my $zoneid; my $zonename; my $zonestatus; my $zonefile; my $pathroot; my $uuid; my $memory; my $memcap; my $vcpu; my $params = shift; my $common = $params->{common}; my $logger = $params->{logger}; @zones = `/usr/sbin/zoneadm list -p`; @zones = grep (!/global/,@zones); foreach $zone (@zones) { ($zoneid,$zonename,$zonestatus,$pathroot,$uuid)=split(/:/,$zone); # # Memory considerations depends on rcapd or project definitions # Little hack, I go directly in /etc/zones reading mcap physcap for each zone. $zonefile = "/etc/zones/$zonename.xml"; if (!open(ZONE, $zonefile)) { $logger->debug("Failed to open $zonefile"); next; } @lines = ; @lines = grep(/mcap/,@lines); $memcap = @lines[0]; $memcap=~ s/[^\d]+//g; $memory=$memcap/1024/1024; if (!$memcap){ $memory=""; } $vcpu = `/usr/sbin/psrinfo -p`; chomp $vcpu; if (!$vcpu){ $vcpu=""; } my $machine = { MEMORY => $memory, NAME => $zonename, UUID => $uuid, STATUS => $zonestatus, SUBSYSTEM => "Solaris Zones", VMTYPE => "Solaris Zones", VMID => $zoneid, VCPU => $vcpu, }; $common->addVirtualMachine($machine); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/IpDiscover.pm010064400017500001750000000004231173606111100260400ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::IpDiscover; use strict; sub check { my $params = shift; my $prologresp = $params->{prologresp}; my $mem = $params->{mem}; return unless ($prologresp && $prologresp->getOptionsInfoByName("IPDISCOVER")); 1; } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/AccessLog.pm010064400017500001750000000006151173606111100256370ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::AccessLog; sub run { my $params = shift; my $common = $params->{common}; my ($YEAR, $MONTH , $DAY, $HOUR, $MIN, $SEC) = (localtime (time))[5,4,3,2,1,0]; my $date=sprintf "%02d-%02d-%02d %02d:%02d:%02d", ($YEAR+1900), ($MONTH+1), $DAY, $HOUR, $MIN, $SEC; $common->setAccessLog ({ USERID => 'N/A', LOGDATE => $date }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend/DeviceID.pm010064400017500001750000000007341173606111100254120ustar00guiguiguiguipackage Ocsinventory::Agent::Backend::DeviceID; # Initialise the DeviceID. In fact this value is a bit specific since # it generates in the main script. sub run { my $params = shift; my $common = $params->{common}; my $config = $params->{config}; my $UsersLoggedIn = join "/", keys %user; if ($config->{old_deviceid}) { $common->setHardware({ OLD_DEVICEID => $config->{old_deviceid} }); } $common->setHardware({ DEVICEID => $config->{deviceid} }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Modules004075500017500001750000000000001173606116100234465ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Modules/Snmp004075500017500001750000000000001173606116100243635ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Modules/Snmp/11.pm010064400017500001750000000006551173606111100252170ustar00guiguiguigui### # SNMP: OID:11 SYSTEM:HP ### package Ocsinventory::Agent::Modules::Snmp::11; use strict; no strict 'refs'; use warnings; sub snmp_run { my ($session,$snmp) = @_; my $common = $snmp->{common}; my $logger=$snmp->{logger}; my $list_mib=["If_Mib","Host_Resources_Mib", "Printer_Mib"]; $logger->debug("Running HP (11) MIB module"); foreach my $mib ( @{$list_mib} ) { $snmp->snmp_oid_run($mib); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Modules/Snmp/8072.pm010064400017500001750000000027171173606111100253770ustar00guiguiguigui### # SNMP: OID:8072 SYSTEM:Linux ### package Ocsinventory::Agent::Modules::Snmp::8072; use strict; no strict 'refs'; use warnings; sub snmp_run() { my ($session,$snmp) = @_; my $common = $snmp->{common}; my $logger=$snmp->{logger}; my $snmp_nom="1.3.6.1.2.1.1.5.0"; my $list_mib=["If_Mib", "Host_Resources_Mib"]; $logger->debug("Running Linux (8072) MIB module"); $common->setSnmpCommons( {TYPE => "Linux"} ); $common->setSnmpComputer({SYSTEM => 'Linux'}); foreach my $mib ( @{$list_mib} ) { $snmp->snmp_oid_run($mib); } my $snmp_oids="1.3.6.1.4.1.8072.1.2.1.1.4"; my $list_oid_done={8072 => 1}; my $result; my $results_oids=$session->get_next_request(-varbindlist => [$snmp_oids]) ; while ( defined ($results_oids ) ) { foreach $result ( keys %{$results_oids} ) { $snmp_oids=$result; if ( defined ( $results_oids->{$result} ) ) { if ( $results_oids->{$result} =~ /endOfMibView/ ) { print "fin\n"; $snmp_oids=undef; } elsif ( $result =~ /^1\.3\.6\.1\.4\.1\.8072\.1\.2\.1\.1\.4\S+1\.3\.6\.1\.4\.1\.(\d+)\./ ) { my $find_oid=$1; if ( ! defined $list_oid_done->{$find_oid} ) { $list_oid_done->{$find_oid}=1; $snmp->snmp_oid_run($find_oid); } } } } $results_oids=$session->get_next_request(-varbindlist => [$snmp_oids]) ; } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Modules/Snmp/9.pm010064400017500001750000000274251173606111100251520ustar00guiguiguigui### # SNMP: OID: 9 SYSTEM: Cisco ### # Version 0.9 ### package Ocsinventory::Agent::Modules::Snmp::9; use strict; use warnings; use Data::Dumper; sub snmp_run { my ($session , $snmp )= @_; my $logger=$snmp->{logger}; my $common=$snmp->{common}; my $list_mib=["Entity_Mib"]; $logger->debug("Running Cisco (9) MIB module"); foreach my $mib ( @{$list_mib} ) { $snmp->snmp_oid_run($mib); } # OID my $snmp_osversion="1.3.6.1.4.1.9.2.1.73.0"; my $snmp_dot1dBasePortIfIndex="1.3.6.1.2.1.17.1.4.1.2."; my $snmp_ifdesc="1.3.6.1.2.1.2.2.1.2."; my $snmp_iftype="1.3.6.1.2.1.2.2.1.3"; my $snmp_ifspeed="1.3.6.1.2.1.2.2.1.5."; my $snmp_physAddr="1.3.6.1.2.1.2.2.1.6."; my $snmp_ifadminstatus="1.3.6.1.2.1.2.2.1.7."; # Specific Cisco my $snmp_description="1.3.6.1.4.1.9.2.2.1.1.28."; my $snmp_cisco_deviceAddress="1.3.6.1.4.1.9.9.23.1.2.1.1.4."; my $snmp_cisco_deviceId="1.3.6.1.4.1.9.9.23.1.2.1.1.6."; my $snmp_cisco_devicePort="1.3.6.1.4.1.9.9.23.1.2.1.1.7."; my $snmp_cisco_devicePlatform="1.3.6.1.4.1.9.9.23.1.2.1.1.8."; my $snmp_vtp_vlan_state="1.3.6.1.4.1.9.9.46.1.3.1.1.2"; my $snmp_dot1dTpFdbPort="1.3.6.1.2.1.17.4.3.1.2"; my $snmp_cisco_ImageTable="1.3.6.1.4.1.9.9.25.1.1.1.2.4"; my $snmp_cisco_ImageVersion="1.3.6.1.4.1.9.9.25.1.1.1.2.5"; my $snmp_cisco_cpmProcessName="1.3.6.1.4.1.9.9.109.1.2.1.1.2"; my $snmp_cisco_cpmProcessCPU="1.3.6.1.4.1.9.9.109.1.2.1.1.6."; my $oid; my $oid_complet; my $osversion; my $ref; my $serial; my $first_serial=undef; my $software; my $firmware; my $location; my $TotalEthernet=0; my $result_snmp; my $result_sub; my $index_mac={}; my $ref_mac={}; my $DESCRIPTION=undef; my $SPEED=undef; my $MACADDR=undef; my $DEVICEMACADDR=undef; my $SLOT=undef; my $STATUS=undef; my $TYPE=undef; my $DEVICENAME=undef; my $DEVICEADDRESS=undef; my $DEVICEPORT=undef; my $DEVICETYPE=undef; my $VLAN=undef; my $CPU=undef; $common->setSnmpCommons( {TYPE => "Network"} ); # Info interessante SNMPv2-SMI::enterprises.9.9.23.1.2.1.1.6.10140.1 # SNMPv2-SMI::enterprises.9.9.25.1.1.1.2.1 # version IOS $result_snmp=$session->get_request(-varbindlist => [$snmp_osversion]); if ( defined($result_snmp->{$snmp_osversion}) ) { $osversion=$result_snmp->{$snmp_osversion}; } # We are going to look for the vlan existing on this equipment $result_snmp=$session->get_entries(-columns => [$snmp_vtp_vlan_state]); foreach my $resultmac ( keys %{$result_snmp} ) { if ( $resultmac =~ /1\.3\.6\.1\.4\.1\.9\.9\.46\.1\.3\.1\.1\.2\.1\.(\S+)/ ) { my $ref_vlan=$1; # Now we can scan this vlan for mac adress # We must first open a new session with the index associated with the vlan my $sub_session= Net::SNMP->session( -retries => 1 , -timeout => 3, -version => $session->version, -hostname => $session->hostname, -community => $snmp->{snmp_community}."@".$ref_vlan, -translate => [-nosuchinstance => 0, -nosuchobject => 0], #-username => $comm->{username}, # V3 test after #-authkey => $comm->{authkey}, #-authpassword => $comm->{authpasswd}, #-authprotocol => $comm->{authproto}, #-privkey => $comm->{privkey}, #-privpassword => $comm->{privpasswd}, #-privprotocol => $comm->{privproto}, ); if ( defined ( $sub_session ) ) { my $result_snmp_mac=$sub_session->get_entries(-columns => [$snmp_dot1dTpFdbPort ]); if ( defined ($result_snmp_mac ) ) { # We scan all lines for my $ligne_snmp_mac ( keys %{$result_snmp_mac} ) { # We first take in the OID the 6 last numbers indicate in decimal the mac address if ( $ligne_snmp_mac =~ /17\.4\.3\.1\.2\.(\S+)\.(\S+)\.(\S+)\.(\S+)\.(\S+)\.(\S+)$/ ) { my $distant_mac=sprintf("%.2x:%.2x:%.2x:%.2x:%.2x:%.2x",$1,$2,$3,$4,$5,$6); my $data_values={}; my $index_bridge=$result_snmp_mac->{$ligne_snmp_mac}; # We have no table for this reference if ( ! defined ( $index_mac->{$index_bridge}) ) { # init of the table $index_mac->{$index_bridge}=[]; # we take the value gived by the OID my $snmp_intero=$snmp_dot1dBasePortIfIndex.$index_bridge; # We take the index reference for the ifdesc # So when we scan this ifdesc, we can add the vlans and mac my $ref_snmp_line=$sub_session->get_request(-varbindlist => [ $snmp_intero ]); # We transmit the ointer value to the ref_mac so we can have a double acces for the data # If we have no information: the mac is not associated with a port # It's the switch mac adress if ( defined ( $ref_snmp_line->{$snmp_intero}) ) { $ref_mac->{$ref_snmp_line->{$snmp_intero}}=$index_mac->{$index_bridge}; } } $data_values->{MACADRESS}[0]=$distant_mac; $data_values->{VLANID}[0]=$ref_vlan; push(@{$index_mac->{$result_snmp_mac->{$ligne_snmp_mac}}},$data_values); } } } $sub_session->close; } } } # We look for interfaces $result_snmp=$session->get_entries(-columns => [$snmp_iftype]); foreach my $result ( keys %{$result_snmp} ) { # We work on real interface and no vlan if ( $result_snmp->{$result} == 6 ) { if ( $result =~ /1\.3\.6\.1\.2\.1\.2\.2\.1\.3\.(\S+)/ ) { $ref=$1; $TYPE="ethernetCsmacd"; $SLOT=$session->get_request(-varbindlist => [$snmp_ifdesc.$ref]); if ( defined( $SLOT->{$snmp_ifdesc.$ref} ) ) { $SLOT=$SLOT->{$snmp_ifdesc.$ref}; } $SPEED=$session->get_request(-varbindlist => [$snmp_ifspeed.$ref]); if ( defined( $SPEED->{$snmp_ifspeed.$ref}) ) { $SPEED=$SPEED->{$snmp_ifspeed.$ref}; if ( $SPEED / 1000000000000 >= 1 ) { $SPEED=$SPEED / 1000000000000; $SPEED=$SPEED." T"; } elsif ( $SPEED / 1000000000 >= 1 ) { $SPEED=$SPEED / 1000000000; $SPEED=$SPEED." G"; } elsif ( $SPEED / 1000000 >= 1 ) { $SPEED=$SPEED / 1000000; $SPEED=$SPEED." M"; } } $MACADDR=$session->get_request(-varbindlist => [$snmp_physAddr.$ref]); if ( defined( $MACADDR->{$snmp_physAddr.$ref}) ) { # For MACADDR, we need a translation beetween Hexa and string $MACADDR=$MACADDR->{$snmp_physAddr.$ref}; if ( length ($MACADDR) == 14 ) { $MACADDR=substr($MACADDR,2,2).":". substr($MACADDR,4,2).":". substr($MACADDR,6,2).":". substr($MACADDR,8,2).":". substr($MACADDR,10,2).":". substr($MACADDR,12,2); } else { $MACADDR=""; } } if ( defined $ref_mac->{$ref} ) { $VLAN=$ref_mac->{$ref}; } $STATUS=$session->get_request(-varbindlist => [ $snmp_ifadminstatus.$ref ]); if ( $STATUS->{$snmp_ifadminstatus.$ref} == 1 ) { $STATUS="Up"; } else { $STATUS="Down"; } $DESCRIPTION=$session->get_request(-varbindlist => [ $snmp_description.$ref ]); if ( defined( $DESCRIPTION ) ) { $DESCRIPTION=$DESCRIPTION->{$snmp_description.$ref}; } $DEVICEADDRESS=$session->get_entries( -columns => [ $snmp_cisco_deviceAddress.$ref ] ); if ( defined( $DEVICEADDRESS ) ) { my $DEVICEADDRESS_uniq; foreach my $key ( keys %{$DEVICEADDRESS} ) { $DEVICEADDRESS_uniq=$DEVICEADDRESS->{$key} ; if ( length ( $DEVICEADDRESS_uniq ) == 10 ) { $DEVICEADDRESS_uniq=hex(substr($DEVICEADDRESS_uniq,2,2)). ".".hex(substr($DEVICEADDRESS_uniq,4,2)). ".".hex(substr($DEVICEADDRESS_uniq,6,2)). ".".hex(substr($DEVICEADDRESS_uniq,8,2)); } else { $DEVICEADDRESS_uniq=undef; } } $DEVICEADDRESS=$DEVICEADDRESS_uniq; } $DEVICENAME=$session->get_entries( -columns => [ $snmp_cisco_deviceId.$ref ] ); if ( defined( $DEVICENAME ) ) { my $DEVICENAME_uniq; my $DEVICETYPE_uniq; my $DEVICEPORT_uniq; foreach my $key ( keys %{$DEVICENAME} ) { $DEVICENAME_uniq=$DEVICENAME->{$key}; } $DEVICENAME=$DEVICENAME_uniq; # If we have the device name, the cdp can be used for the other informations $DEVICETYPE=$session->get_entries( -columns => [ $snmp_cisco_devicePlatform.$ref ] ); if ( defined( $DEVICETYPE ) ) { foreach my $key ( keys %{$DEVICETYPE} ) { $DEVICETYPE_uniq=$DEVICETYPE->{$key}; } $DEVICETYPE=$DEVICETYPE_uniq; } $DEVICEPORT=$session->get_entries( -columns => [ $snmp_cisco_devicePort.$ref ] ); if ( defined( $DEVICEPORT ) ) { foreach my $key ( keys %{$DEVICEPORT} ) { $DEVICEPORT_uniq=$DEVICEPORT->{$key}; } $DEVICEPORT=$DEVICEPORT_uniq; } } } $common->addSnmpNetwork( { DESCRIPTION => $DESCRIPTION, SPEED => $SPEED, MACADDR => $MACADDR, SLOT => $SLOT, STATUS => $STATUS, TYPE => $TYPE, DEVICENAME => $DEVICENAME, DEVICEADDRESS => $DEVICEADDRESS, DEVICEPORT => $DEVICEPORT, DEVICETYPE => $DEVICETYPE, VLAN => $VLAN, }); $DESCRIPTION=undef; $MACADDR=undef; $SLOT=undef; $STATUS=undef; $TYPE=undef; $SPEED=undef; $MACADDR=undef; $DEVICEADDRESS=undef; $DEVICENAME=undef; $DEVICEPORT=undef; $DEVICETYPE=undef; $VLAN=undef; } } # We have finished for interfaces # We look for Softwares on the switch # We look for feature # All feature are separated by a pipe $result_snmp=$session->get_request ( -varbindlist => [ $snmp_cisco_ImageTable ]) ; if ( defined ( $result_snmp ) ) { $result_snmp=$result_snmp->{$snmp_cisco_ImageTable}; my @tab_feature=split(/\$/,$result_snmp); @tab_feature=split(/\|/,$tab_feature[1]); foreach $result_sub ( @tab_feature ) { $common->addSoftware( { NAME => $result_sub , COMMENTS => "Feature" } ); } } # We look for IOS version $result_snmp=$session->get_request ( -varbindlist => [ $snmp_cisco_ImageVersion ]) ; if ( defined ( $result_snmp ) ) { $result_snmp=$result_snmp->{$snmp_cisco_ImageVersion}; my @tab_feature=split(/\$/,$result_snmp); $common->addSoftware( { NAME => $tab_feature[1] , COMMENTS => "IOS" } ); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Modules/Snmp/3224.pm010064400017500001750000000007361173606111100253700ustar00guiguiguigui### # SNMP: OID:3224 SYSTEM:Juniper ### package Ocsinventory::Agent::Modules::Snmp::3224; use strict; no strict 'refs'; use warnings; sub snmp_info { return ( { oid_value => "1.3.6.1.4.1.3224.1.1.1.0", oid_name => "Juniper Mib" } ); } sub snmp_run() { my ($session,$snmp) = @_; my $common = $snmp->{common}; my $logger=$snmp->{logger}; $logger->debug("Running Juniper (3224) MIB module"); $common->setSnmpCommons( {TYPE => "Firewall"} ); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Modules/Snmp/Printer_Mib.pm010064400017500001750000000131251173606111100272040ustar00guiguiguigui### # SNMP: OID: 43 SYSTEM: Printer_Mib ### package Ocsinventory::Agent::Modules::Snmp::Printer_Mib; use strict; sub snmp_info { #TODO: find a common OID from Printer_Mib (compatible with most printers) instead of using hrPrinterStatus from Host_Ressources_Mib return ( { oid_value => "1.3.6.1.2.1.25.3.5.1.1.1", oid_name => "Printer_Mib" } ); } sub snmp_run { my ($session , $snmp )= @_; my $logger=$snmp->{logger}; my $common=$snmp->{common}; my ($result,$name,$serialnumber,$lifecount,$countunit,$printerstatus,$errorstate); $logger->debug("Running Printer MIB module"); $common->setSnmpCommons( {TYPE => "Printer"} ); #prtGeneralPrinterName my $snmp_name="1.3.6.1.2.1.43.5.1.1.16.1"; #prtInputSerialNumber my $snmp_serialnumber="1.3.6.1.2.1.43.5.1.1.17.1"; #prtMarkerLifeCount my $snmp_lifecount="1.3.6.1.2.1.43.10.2.1.4.1.1"; #prtMarkerCounterUnit my $snmp_countunit="1.3.6.1.2.1.43.10.2.1.3.1.1"; #prtInputTable my $snmp_inputable="1.3.6.1.2.1.43.8.2"; #prtMarkerSuppliesTable my $snmp_markersuppliestable="1.3.6.1.2.1.43.11.1"; #prtMarkerColorantValue my $snmp_colorantvalue="1.3.6.1.2.1.43.12.1.1.4"; #hrPrinterStatus my $snmp_printerstatus="1.3.6.1.2.1.25.3.5.1.1.1"; #PrinterDetectedErrorState my $snmp_errorstate="1.3.6.1.2.1.25.3.5.1.2.1"; #Trays informations we want to get my $trayinfos = { name => "1.3.6.1.2.1.43.8.2.1.13", #prtInputName description => "1.3.6.1.2.1.43.8.2.1.18", #prtInputDescription level => "1.3.6.1.2.1.43.8.2.1.10", #prtInputLevel maxcapacity => "1.3.6.1.2.1.43.8.2.1.9", #prtInputMaxCapacity }; #Cartridges informations we want to get my $cartridgeinfos = { description => "1.3.6.1.2.1.43.11.1.1.6", #prtMarkerSuppliesDescription type => "1.3.6.1.2.1.43.11.1.1.5", #prtMarkerSuppliesType level => "1.3.6.1.2.1.43.11.1.1.9", #prtMarkerSuppliesSupplyLevel maxcapacity => "1.3.6.1.2.1.43.11.1.1.8", #prtMarkerSuppliesMaxCapacity }; #Translation for the prtMarkerCounterUnit integer my $countunit_translation = { 3 => 'tenThousandthsOfInches', 4 => 'micrometers', 5 => 'characters', 6 => 'lines', 7 => 'impressions', 8 => 'sheets', 9 => 'dotRow', 11 => 'hours', 16 => 'feet', 17 => 'meters', }; #Translation for the prtMarkerSuppliesType integer my $suppliestype_translation = { 1 => 'other', 2 => 'unknown', 3 => 'toner', 4 => 'wasteToner', 5 => 'ink', 6 => 'inkCartridge', 7 => 'inkRibbon', 8 => 'wasteInk', 9 => 'opc', 10 => 'developer', 11 => 'fuserOil', 12 => 'solidWax', 13 => 'ribbonWax', 14 => 'wasteWax', }; my $printerstatus_translation = { 1 => 'other', 2 => 'unknown', 3 => 'idle', 4 => 'printing', 5 => 'warmup', }; my $errorstate_translation = { '0x00' => 'lowPaper', '0x01' => 'noPaper', '0x02' => 'lowToner', '0x03' => 'noToner', '0x04' => 'doorOpen', '0x05' => 'jammed', '0x06' => 'offline', '0x07' => 'serviceRequested', '0x08' => 'inputTrayMissing', '0x09' => 'outputTrayMissing', '0x10' => 'markerSupplyMissing', '0x11' => 'outputNearFull', '0x12' => 'outputFull', '0x13' => 'inputTrayEmpty', '0x14' => 'overduePreventMaint', }; ##### #Getting printer informations $result=$session->get_request( -varbindlist => [$snmp_name]); $name=$result->{$snmp_name}; $result=$session->get_request(-varbindlist => [$snmp_serialnumber]); $serialnumber=$result->{$snmp_serialnumber}; $result=$session->get_request(-varbindlist => [$snmp_lifecount]); $lifecount=$result->{$snmp_lifecount}; $result=$session->get_request(-varbindlist => [$snmp_countunit]); $countunit=$countunit_translation->{ $result->{$snmp_countunit} }; $result=$session->get_request(-varbindlist => [$snmp_printerstatus]); $printerstatus=$result->{$snmp_printerstatus}; $result=$session->get_request(-varbindlist => [$snmp_errorstate]); $errorstate=$result->{$snmp_errorstate}; #Adding informations to XML $common->setSnmpPrinter({ NAME => $name, SERIALNUMBER => $serialnumber, COUNTER => "$lifecount $countunit", STATUS => $printerstatus_translation->{$printerstatus}, ERRORSTATE => $errorstate_translation->{$errorstate}, }); #Getting trays informations using the table my $inputable=$session->get_table(-baseoid => $snmp_inputable) ; my $trays = $common->getSnmpTable($inputable,$snmp_inputable,$trayinfos); for my $tray ( keys %$trays ) { #Adding informations about trays in XML $common->addSnmpPrinterTray({ NAME => $trays->{$tray}->{name}, DESCRIPTION => $trays->{$tray}->{description}, LEVEL => $trays->{$tray}->{level}, MAXCAPACITY => $trays->{$tray}->{maxcapacity}, }); } #Getting cartridges informations using the table my $markersuppliestable=$session->get_table(-baseoid => $snmp_markersuppliestable) ; my $cartridges = $common->getSnmpTable($markersuppliestable,$snmp_markersuppliestable,$cartridgeinfos); for my $cartridge ( keys %$cartridges ) { #Getting colorant value $result = $session->get_request(-varbindlist => [$snmp_colorantvalue.$cartridge]); my $colorantvalue = $result->{$snmp_colorantvalue.$cartridge}; #Adding informations about cartridges in XML $common->addSnmpPrinterCartridge({ DESCRIPTION => $cartridges->{$cartridge}->{description}, TYPE => $suppliestype_translation->{ $cartridges->{$cartridge}->{type} }, LEVEL => $cartridges->{$cartridge}->{level}, MAXCAPACITY => $cartridges->{$cartridge}->{maxcapacity}, COLOR => $colorantvalue, }); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Modules/Snmp/If_Mib.pm010064400017500001750000000140771173606111100261260ustar00guiguiguigui### # SNMP: OID: 2 SYSTEM: If_Mib ### package Ocsinventory::Agent::Modules::Snmp::If_Mib; use strict; use warnings; sub snmp_info { return ( { oid_value => "1.3.6.1.2.1.2.1.0", oid_name => "If_Mib" } ); } sub snmp_run { my ($session , $snmp )= @_; my $logger=$snmp->{logger}; my $common=$snmp->{common}; $logger->debug("Running If MIB module"); # OID a recuperer my $snmp_ifdescr="1.3.6.1.2.1.2.2.1.2"; my $snmp_iftype="1.3.6.1.2.1.2.2.1.3."; my $snmp_ifspeed="1.3.6.1.2.1.2.2.1.5."; my $snmp_physAddr="1.3.6.1.2.1.2.2.1.6."; my $snmp_ifadminstatus="1.3.6.1.2.1.2.2.1.7."; my $snmp_ipAdEntIfIndex="1.3.6.1.2.1.4.20.1.2"; my $snmp_ipAdEntNetMask="1.3.6.1.2.1.4.20.1.3."; my $snmp_ipRouteIfIndex="1.3.6.1.2.1.4.21.1.2."; my $snmp_ipRouteNextHop="1.3.6.1.2.1.4.21.1.7."; my $snmp_ipRouteType="1.3.6.1.2.1.4.21.1.8"; my $SPEED=undef; my $MACADDR=undef; my $SLOT=undef; my $STATUS=undef; my $TYPE=undef; my $IPADDR=undef; my $IPMASK=undef; my $IPGATEWAY=undef; my $IPSUBNET=undef; my $ref; my $result_snmp; my $address_index=undef; my $netmask_index=undef; my $network_index=undef; my $gateway_index=undef; # the informations on ip address and gateway are not indexed on the # interfaces so we must get it before and integrate the informations # after for each interface # We take all the snmp_ifadminstatus in a table if this information exist $result_snmp=$session->get_entries(-columns => [$snmp_ipAdEntIfIndex]); foreach my $result ( keys %{$result_snmp} ) { if ( $result =~ /1\.3\.6\.1\.2\.1\.4\.20\.1\.2\.(\S+)/ ) { my $address=$1; $address_index->{$result_snmp->{$result}}=$address; # We have the address so we can lokk for the netmask associated my $netmask=$session->get_request(-varbindlist => [$snmp_ipAdEntNetMask.$address]); if ( defined($netmask->{$snmp_ipAdEntNetMask.$address} ) ) { $netmask_index->{$result_snmp->{$result}}=$netmask->{$snmp_ipAdEntNetMask.$address}; } } } # now we can do the same thing for the gateway # It is an other index and only indirect information (routing) # are required actually $result_snmp=$session->get_entries(-columns => [$snmp_ipRouteType]); foreach my $result ( keys %{$result_snmp} ) { if ( $result =~ /1\.3\.6\.1\.2\.1\.4\.21\.1\.8\.(\S+)/ ) { if ( $result_snmp->{$result} == 4 ) { my $net_address=$1; # We get the index associating the interface with the gateway and subnet my $ind=$session->get_request(-varbindlist => [$snmp_ipRouteIfIndex.$net_address] ); $ind=$ind->{$snmp_ipRouteIfIndex.$net_address}; # We ave already the network so we can add the information with the index $network_index->{$ind}=$net_address; # We get the gateway my $gateway=$session->get_request(-varbindlist => [$snmp_ipRouteNextHop.$net_address] ); $gateway_index->{$ind}=$gateway->{$snmp_ipRouteNextHop.$net_address}; } } } # We look for interfaces $result_snmp=$session->get_entries(-columns => [$snmp_ifdescr]); foreach my $result ( keys %{$result_snmp} ) { # We work on real interface and no vlan if ( $result_snmp->{$result} =~ /[eE]th|FC|[bB]ond/ ) { if ( $result =~ /1\.3\.6\.1\.2\.1\.2\.2\.1\.2\.(\S+)/ ) { $ref=$1; $SLOT=$result_snmp->{$result}; $TYPE=$session->get_request(-varbindlist => [$snmp_iftype.$ref]); if ( defined( $TYPE->{$snmp_iftype.$ref} ) ) { $TYPE= $TYPE->{$snmp_iftype.$ref}; if ( $TYPE == 6 ) { $TYPE="ethernetCsmacd"; } elsif ( $TYPE == 56 ) { $TYPE="fibreChannel"; } } $SPEED=$session->get_request(-varbindlist => [$snmp_ifspeed.$ref]); if ( defined( $SPEED->{$snmp_ifspeed.$ref}) ) { $SPEED=$SPEED->{$snmp_ifspeed.$ref}; if ( $SPEED / 1000000000000 >= 1 ) { $SPEED=$SPEED / 1000000000000; $SPEED=$SPEED." T"; } elsif ( $SPEED / 1000000000 >= 1 ) { $SPEED=$SPEED / 1000000000; $SPEED=$SPEED." G"; } elsif ( $SPEED / 1000000 >= 1 ) { $SPEED=$SPEED / 1000000; $SPEED=$SPEED." M"; } } $MACADDR=$session->get_request(-varbindlist => [$snmp_physAddr.$ref]); if ( defined( $MACADDR->{$snmp_physAddr.$ref}) ) { # For MACADDR, we need a translation beetween Hexa and string $MACADDR=$MACADDR->{$snmp_physAddr.$ref}; #$MACADDR= sprintf "%02x:%02x:%02x:%02x:%02x:%02x" , # map hex, split /\:/, $MACADDR->{$snmp_physAddr.$ref}; } $STATUS=$session->get_request(-varbindlist => [ $snmp_ifadminstatus.$ref ]); if ( $STATUS->{$snmp_ifadminstatus.$ref} == 1 ) { $STATUS="Up"; } else { $STATUS="Down"; } # If we have the adress ip and netmask we can put it if ( defined ( $address_index ) ) { $IPADDR=$address_index->{$ref}; $IPMASK=$netmask_index->{$ref}; } if ( defined ( $network_index ) ) { $IPGATEWAY=$gateway_index->{$ref}; $IPSUBNET=$network_index->{$ref}; } $common->addSnmpNetwork( { TYPE => $TYPE, SLOT => $SLOT, SPEED => $SPEED, MACADDR => $MACADDR, STATUS => $STATUS, IPADDR => $IPADDR, IPMASK => $IPMASK, IPGATEWAY => $IPGATEWAY, IPSUBNET => $IPSUBNET, }); $MACADDR=undef; $SLOT=undef; $STATUS=undef; $TYPE=undef; $SPEED=undef; $IPADDR=undef; $IPMASK=undef; $IPGATEWAY=undef; $IPSUBNET=undef; } } } # End foreach result } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Modules/Snmp/7244.pm010064400017500001750000000007341173606111100253740ustar00guiguiguigui### # SNMP: OID:7244 SYSTEM:Fujitsu ### package Ocsinventory::Agent::Modules::Snmp::7244; use strict; no strict 'refs'; use warnings; sub snmp_info { return ( { oid_value => "1.3.6.1.4.1.7244.1.1.1.1.1.0", oid_name => "Fujitsu" } ); } sub snmp_run() { my ($session,$snmp) = @_; my $common = $snmp->{common}; my $logger=$snmp->{logger}; $logger->debug("Running Fujitsu (7244) MIB module"); $common->setSnmpCommons( {TYPE => "Blade"} ); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Modules/Snmp/311.pm010064400017500001750000000013411173606111100252730ustar00guiguiguigui### # SNMP: OID:311 SYSTEM:Microsoft ### package Ocsinventory::Agent::Modules::Snmp::311; use strict; no strict 'refs'; use warnings; sub snmp_info { return ( { oid_value => "1.3.6.1.4.1.77.1.2.1.0" , oid_name => "Microsoft" } ); } sub snmp_run { my ($session , $snmp )= @_; my $oid_run=$snmp->{snmp_oid_run}; my $common = $snmp->{common}; my $inventory = $snmp->{inventory}; my $logger=$snmp->{logger}; $common->setSnmpCommons( {TYPE => "Microsoft"} ); $common->setSnmpComputer({SYSTEM => 'Microsoft'}); my $list_mib=["If_Mib", "Host_Resources_Mib"]; $logger->debug("Running Microsoft (311) MIB module"); foreach my $mib ( @{$list_mib} ) { $snmp->snmp_oid_run($mib); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Modules/Snmp/Entity_Mib.pm010064400017500001750000000105401173606111100270330ustar00guiguiguigui### # SNMP: OID: 47 SYSTEM: Entity_Mib ### # Version 0.5 ### package Ocsinventory::Agent::Modules::Snmp::Entity_Mib; use strict; use warnings; sub snmp_run { my ($session , $snmp )= @_; my $logger=$snmp->{logger}; my $common=$snmp->{common}; $logger->debug("Running Entity MIB module"); # OID my $snmp_entPhysicalClass="1.3.6.1.2.1.47.1.1.1.1.5"; my $translation_entPhysicalClass={ #1 => "other", #2 => "unknown", 3 => "chassis", #4 => "backplane", #5 => "container", 6 => "powerSupply", 7 => "fan", #8 => "sensor", 9 => "module", #10 => "port", #11 => "stack", #12 => "cpu", }; my $result_snmp; my $result; my $nbr_switch=0; # We are looking for physical elements $result_snmp=$session->get_entries(-columns => [$snmp_entPhysicalClass]); foreach my $result ( keys %{$result_snmp} ) { if ( $result =~ /1\.3\.6\.1\.2\.1\.47\.1\.1\.1\.1\.5\.(\S+)/ ) { my $ref=$1; my $PhysicalClass=$result_snmp->{$snmp_entPhysicalClass.".".$ref}; my $info = {}; if ( $PhysicalClass =~ /^[3,6,7,9,11]$/ ) { info_element($info,$session,$ref,$logger); $info->{TYPE}=$translation_entPhysicalClass->{$PhysicalClass}; if ( $PhysicalClass == 3 ) { # We have a switch $nbr_switch++; $common->addSnmpSwitch( $info ); # Infos for a switch: DESCRIPTION, REFERENCE, REVISION, FIRMWARE, SERIALNUMBER, MANUFACTURER, TYPE } elsif ( $PhysicalClass == 6 ) { # Infos for an alimentation DESCRIPTION, REFERENCE, REVISION, SERIALNUMBER, MANUFACTURER, TYPE $common->addSnmpPowerSupply( $info ); } elsif ( $PhysicalClass == 7 ) { # Infos for a Fan: DESCRIPTION, REFERENCE, REVISION, SERIALNUMBER, MANUFACTURER, TYPE $common->addSnmpFan( $info ); } elsif ( $PhysicalClass == 9 && defined ($info->{SERIALNUMBER}) ) { if ( ! ($info->{DESCRIPTION} =~ /[CF]PU/ )) { # Infor for a card: DESCRIPTION, REFERENCE, REVISION, FIRMWARE, SOFTWARE, SERIALNUMBER, MANUFACTURER, TYPE $common->addSnmpCard( $info ); } } } } } # We have scaned all equipment, we know now if we have a switch or a stack of switch if ( $nbr_switch == 1 ) { $common->setSnmpSwitchInfos({TYPE=>"Switch"}); } elsif ( $nbr_switch > 1 ) { $common->setSnmpSwitchInfos({TYPE=>"Switchs Stack"}); } } sub info_element() { my ($info ,$session, $ref, $logger)=@_; my $snmp_info="1.3.6.1.2.1.47.1.1.1.1.2."; my $snmp_ref="1.3.6.1.2.1.47.1.1.1.1.7."; my $snmp_hardware="1.3.6.1.2.1.47.1.1.1.1.8."; my $snmp_firmware="1.3.6.1.2.1.47.1.1.1.1.9."; my $snmp_software="1.3.6.1.2.1.47.1.1.1.1.10."; my $snmp_serial="1.3.6.1.2.1.47.1.1.1.1.11."; my $snmp_entPhysicalMfgName="1.3.6.1.2.1.47.1.1.1.1.12."; #my $snmp_entPhysicalModelName="1.3.6.1.2.1.47.1.1.1.1.13."; my $result; # We have a good element $result=$session->get_request(-varbindlist => [$snmp_info.$ref]); if ( defined( $result) ) { $info->{DESCRIPTION} = $result->{$snmp_info.$ref}; } $result=$session->get_request(-varbindlist => [$snmp_ref.$ref]); if ( defined( $result ) ) { $info->{REFERENCE} = $result->{$snmp_ref.$ref}; } $result=$session->get_request(-varbindlist => [$snmp_hardware.$ref]); if ( defined( $result ) ) { $info->{REVISION} = $result->{$snmp_hardware.$ref}; } $result=$session->get_request(-varbindlist => [$snmp_serial.$ref]); if ( defined( $result ) ) { $info->{SERIALNUMBER} = $result->{$snmp_serial.$ref}; } $result=$session->get_request(-varbindlist => [$snmp_firmware.$ref]); if ( defined( $result) ) { $info->{FIRMWARE} = $result->{$snmp_firmware.$ref}; } $result=$session->get_request(-varbindlist => [$snmp_software.$ref]); if ( defined( $result ) ) { $info->{SOFTWARE} = $result->{$snmp_software.$ref}; } $result=$session->get_request(-varbindlist => [$snmp_entPhysicalMfgName.$ref]); if ( defined( $result ) ) { $info->{MANUFACTURER} = $result->{$snmp_entPhysicalMfgName.$ref}; } #$result=$session->get_request(-varbindlist => [$snmp_entPhysicalModelName.$ref]); #if ( defined( $result ) ) { #$info->{TYPE} = $result->{$snmp_entPhysicalModelName.$ref}; #} } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Modules/Snmp/Default.pm010064400017500001750000000007361173606111100263620ustar00guiguiguigui### # SNMP: Default ### package Ocsinventory::Agent::Modules::Snmp::Default; use strict; no strict 'refs'; use warnings; sub snmp_run { my ($session , $snmp )= @_; my $oid_run=$snmp->{snmp_oid_run}; my $inventory = $snmp->{inventory}; my $logger=$snmp->{logger}; my $list_mib=["If_Mib", "Host_Resources_Mib","Printer_Mib"]; $logger->debug("Running Default MIB module \n"); foreach my $mib ( @{$list_mib} ) { $snmp->snmp_oid_run($mib); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Modules/Snmp/2620.pm010064400017500001750000000007461173606111100253700ustar00guiguiguigui### # SNMP: OID:2620 SYSTEM:Checkpoint ### package Ocsinventory::Agent::Modules::Snmp::2620; use strict; no strict 'refs'; use warnings; sub snmp_info { return ( { oid_value => "1.3.6.1.4.1.2620.1.1.1.0", oid_name => "Checkpoint Mib" } ); } sub snmp_run() { my ($session,$snmp) = @_; my $common = $snmp->{common}; my $logger=$snmp->{logger}; $logger->debug("Running Chekpoint (2620) MIB module"); $common->setSnmpCommons( {TYPE => "Firewall"} ); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Modules/Snmp/3375.pm010064400017500001750000000030771173606111100254000ustar00guiguiguigui### # SNMP: OID:3375 SYSTEM:F5 ### package Ocsinventory::Agent::Modules::Snmp::3375; use strict; no strict 'refs'; use warnings; sub snmp_info { return ( { oid_value => "1.3.6.1.4.1.3375.2.1.1.1.1.1.0", oid_name => "F5 Mib" } ); } sub snmp_run() { my ($session,$snmp) = @_; my $common = $snmp->{common}; my $logger=$snmp->{logger}; $logger->debug("Running F5 (3375) MIB module"); $common->setSnmpCommons( {TYPE => "Load Balanceur"} ); my $list_mib=["If_Mib"]; foreach my $mib ( @{$list_mib} ) { $snmp->snmp_oid_run($mib); } my $snmp_sysProductName="1.3.6.1.4.1.3375.2.1.4.1.0"; my $snmp_sysProductVersion="1.3.6.1.4.1.3375.2.1.4.2.0"; my $snmp_sysProductBuild="1.3.6.1.4.1.3375.2.1.4.3.0"; my $snmp_sysProductDate="1.3.6.1.4.1.3375.2.1.4.5.0"; my $name=$session->get_request ( -varbindlist => [ $snmp_sysProductName ] ); if ( defined ( $name ) ) { $name=$name->{$snmp_sysProductName}; } my $version=$session->get_request ( -varbindlist => [ $snmp_sysProductVersion] ); if ( defined ( $version ) ) { $version=$version->{$snmp_sysProductVersion}; } my $comment=$session->get_request ( -varbindlist => [ $snmp_sysProductBuild] ); if ( defined ( $comment ) ) { $comment=$comment->{$snmp_sysProductBuild}; } my $date=$session->get_request ( -varbindlist => [ $snmp_sysProductDate ] ); if ( defined ( $date ) ) { $date=$date->{$snmp_sysProductDate}; } $common->addSoftware( { NAME => $name , VERSION => $version , INSTALLDATE => $date , COMMENT => $comment, }); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Modules/Snmp/641.pm010064400017500001750000000006721173606111100253070ustar00guiguiguigui### # SNMP: OID:641 SYSTEM:Lexmark ### package Ocsinventory::Agent::Modules::Snmp::641; use strict; no strict 'refs'; use warnings; sub snmp_run { my ($session,$snmp) = @_; my $common = $snmp->{common}; my $logger=$snmp->{logger}; my $list_mib=["If_Mib","Host_Resources_Mib", "Printer_Mib"]; $logger->debug("Running Lexmark (641) MIB module"); foreach my $mib ( @{$list_mib} ) { $snmp->snmp_oid_run($mib); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Modules/Snmp/Host_Resources_Mib.pm010064400017500001750000000201641173606111100305310ustar00guiguiguigui### # ### package Ocsinventory::Agent::Modules::Snmp::Host_Resources_Mib; use strict; use warnings; sub snmp_info { return ( { oid_value => "1.3.6.1.2.1.25.1.1.0", oid_name => "Host_Resources_Mib" } ); } sub snmp_run { my ($session , $snmp )= @_; my $logger=$snmp->{logger}; my $common=$snmp->{common}; $logger->debug("Running Host Resources MIB module"); # OID my $soft="1.3.6.1.2.1.25.6.3.1."; my $memory="1.3.6.1.2.1.25.2.2.0"; my $snmp_storageType="1.3.6.1.2.1.25.2.3.1.2"; my $snmp_storageDescr="1.3.6.1.2.1.25.2.3.1.3."; my $snmp_storageSize="1.3.6.1.2.1.25.2.3.1.5."; my $snmp_storageUsed="1.3.6.1.2.1.25.2.3.1.6."; my $snmp_hrDeviceType="1.3.6.1.2.1.25.3.2.1.2"; my $snmp_cpu="1.3.6.1.2.1.25.3.2.1.3."; my $snmp_Printer="1.3.6.1.2.1.25.3.2.1.5."; my $snmp_Video="1.3.6.1.2.1.25.3.2.1.10."; my $snmp_Audio="1.3.6.1.2.1.25.3.2.1.11."; my $snmp_Keyboard="1.3.6.1.2.1.25.3.2.1.13."; my $snmp_Modem="1.3.6.1.2.1.25.3.2.1.14."; my $snmp_ParallelPort="1.3.6.1.2.1.25.3.2.1.15."; my $snmp_Pointing="1.3.6.1.2.1.25.3.2.1.16."; my $snmp_SerialPort="1.3.6.1.2.1.25.3.2.1.17."; my $DATE; my $result; my $result_table; my $ref; $result_table=$session->get_entries(-columns => [ $soft."2" ] ); foreach my $result ( keys %{$result_table} ) { if ( $result =~ /1\.3\.6\.1\.2\.1\.25\.6\.3\.1\.2\.(\S+)/ ) { $ref=$1; $DATE=$session->get_request ( -varbindlist => [ $soft."5.".$ref ]); if ( defined ( $DATE ) ) { $DATE=$DATE->{$soft."5.".$ref}; if ( defined ($DATE ) ) { $DATE=sprintf("%d/%d/%d",hex(substr($DATE,2,4)),hex(substr($DATE,6,2)),hex(substr($DATE,8,2))); } } $common->addSoftware( { NAME=>$result_table->{ $result } , INSTALLDATE=>$DATE } ); } } # Memory $result=$session->get_request(-varbindlist => [ $memory ]); if ( defined ($result) ) { $common->addMemory( {CAPACITY => $result->{$memory} } ); } # We look for disk $result_table=$session->get_entries(-columns => [ $snmp_storageType ]); foreach my $result ( keys %{$result_table} ) { if ( $result =~ /1\.3\.6\.1\.2\.1\.25\.2\.3\.1\.2\.(\S+)/ ) { $ref=$1; # We look if the storage is a fixed disk if ( $result_table->{$result} =~ /2\.1\.4$/ ) { # Definition Var for disks my $FREE=""; my $FILESYSTEM=""; my $LABEL=""; my $SERIAL=""; my $TOTAL=""; my $TYPE="HardDisk"; my $VOLUMN=""; $TOTAL=$session->get_request(-varbindlist => [ $snmp_storageSize.$ref ]); if ( defined ( $TOTAL ) ) { $TOTAL=$TOTAL->{$snmp_storageSize.$ref}; } $FREE=$session->get_request(-varbindlist => [ $snmp_storageUsed.$ref ]); if ( defined ( $FREE ) ) { $FREE=$TOTAL - $FREE->{$snmp_storageUsed.$ref}; } $FILESYSTEM=$session->get_request(-varbindlist => [ $snmp_storageDescr.$ref ]); if ( defined ( $FILESYSTEM) ) { $FILESYSTEM=$FILESYSTEM->{$snmp_storageDescr.$ref}; } if ( $FILESYSTEM =~ /(\S+)\s+Label:(\S+)\s+Serial Number\s+(\S+)/ ) { $VOLUMN=$1; $LABEL=$2; $SERIAL=$3; $FILESYSTEM=""; } elsif ( $FILESYSTEM =~ /(\S+)\s+Label:\s+Serial Number\s+(\S+)/ ) { $VOLUMN=$1; $SERIAL=$2; $FILESYSTEM=""; } $common->addDrive( { FILESYSTEM => $FILESYSTEM , VOLUMN => $VOLUMN, TYPE => $TYPE, LABEL => $LABEL, SERIAL => $SERIAL, FREE => $FREE, TOTAL => $TOTAL, }), } # End looking for fixed disk } # End index of the element } # End foreach storages $result_table=$session->get_entries(-columns => [ $snmp_hrDeviceType ]); foreach my $result ( keys %{$result_table} ) { if ( $result =~ /1\.3\.6\.1\.2\.1\.25\.3\.2\.1\.2\.(\S+)/ ) { $ref=$1; if ( $result_table->{$result} =~ /3\.1\.3$/ ) { # We have a CPU my $CPU=$session->get_request(-varbindlist => [ $snmp_cpu.$ref ] ); if ( defined ( $CPU ) ) { $CPU=$CPU->{$snmp_cpu.$ref}; my $TYPE=$CPU; my $MANUFACTURER=""; my $SPEED=""; if ( $CPU =~ /^Intel$/ ) { # We have a windows system and for all processor # it say Intel even if the proc is an AMD $MANUFACTURER="x86 Manufacturer"; $TYPE="x86"; } elsif ( $CPU =~ /[Ii]nte/ ) { $MANUFACTURER="Intel"; if ( $CPU =~ /\s+(\S+[GM][Hh][zZ])/ ) { $SPEED=$1; } } elsif ( $CPU =~ /AMD/ ) { $MANUFACTURER="AMD"; if ( $CPU =~ /\s+(\S+\+)/ ) { $SPEED=$1; } } $logger->debug("Speed $SPEED Manufacturer $MANUFACTURER Type $TYPE"); $common->addSnmpCPU( { SPEED => $SPEED, TYPE => $TYPE, MANUFACTURER => $MANUFACTURER, } ); } } } #end CPU elsif ( $result_table->{$result} =~ /3\.1\.5$/ ) { # We have a Printer my $NAME=$session->get_request(-varbindlist => [ $snmp_Printer.$ref ] ); if ( defined ($NAME) ) { $NAME=$NAME->{$snmp_Printer.$ref }; $common->addSnmpLocalPrinter( { NAME => $NAME } ); } } # End Printer elsif ( $result_table->{$result} =~ /3\.1\.13$/ ) { # We have a Keyboard my $DESCRIPTION=$session->get_request(-varbindlist => [ $snmp_Keyboard.$ref ] ); if ( defined ($DESCRIPTION) ) { $DESCRIPTION=$DESCRIPTION->{$snmp_Keyboard.$ref }; $common->addSnmpInput( { DESCRIPTION => $DESCRIPTION , TYPE => "Keyboard" } ); } } # End Keyboard elsif ( $result_table->{$result} =~ /3\.1\.16$/ ) { # We have a Pointing my $DESCRIPTION=$session->get_request(-varbindlist => [ $snmp_Pointing.$ref ] ); if ( defined ($DESCRIPTION) ) { $DESCRIPTION=$DESCRIPTION->{$snmp_Pointing.$ref }; $common->addSnmpInput( { DESCRIPTION => $DESCRIPTION , TYPE => "Mouse" } ); } } # End Pointing elsif ( $result_table->{$result} =~ /3\.1\.11$/ ) { # We have a Audio my $NAME=$session->get_request(-varbindlist => [ $snmp_Audio.$ref ] ); if ( defined ($NAME) ) { $NAME=$NAME->{$snmp_Audio.$ref }; $common->addSound( { NAME => $NAME } ); } } # End Audio elsif ( $result_table->{$result} =~ /3\.1\.10$/ ) { # We have a Video my $NAME=$session->get_request(-varbindlist => [ $snmp_Video.$ref ] ); if ( defined ($NAME) ) { $NAME=$NAME->{$snmp_Video.$ref }; $common->addVideo( { NAME => $NAME } ); } } # End Video elsif ( $result_table->{$result} =~ /3\.1\.14$/ ) { # We have a Modem my $NAME=$session->get_request(-varbindlist => [ $snmp_Modem.$ref ] ); if ( defined ($NAME) ) { $NAME=$NAME->{$snmp_Modem.$ref }; $common->addModem( { NAME => $NAME } ); } } # End Modem elsif ( $result_table->{$result} =~ /3\.1\.15$/ ) { # We have a ParallelPort my $NAME=$session->get_request(-varbindlist => [ $snmp_ParallelPort.$ref ] ); if ( defined ($NAME) ) { $NAME=$NAME->{$snmp_ParallelPort.$ref }; $common->addPorts( { NAME => $NAME , TYPE => "Parallel" } ); } } # End ParallelPort elsif ( $result_table->{$result} =~ /3\.1\.17$/ ) { # We have a SerialPort my $NAME=$session->get_request(-varbindlist => [ $snmp_SerialPort.$ref ] ); if ( defined ($NAME) ) { $NAME=$NAME->{$snmp_SerialPort.$ref }; $common->addPorts( { NAME => $NAME , TYPE => "Serial" } ); } } # End SerialPort } # End scan of hrDeviceType } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Modules/Example.pm010064400017500001750000000051271173606111100254530ustar00guiguiguigui############################################################################### ## OCSINVENTORY-NG ## Copyleft Guillaume PROTET 2010 ## Web : http://www.ocsinventory-ng.org ## ## This code is open source and may be copied and modified as long as the source ## code is always made freely available. ## Please refer to the General Public Licence http://www.gnu.org/ or Licence.txt ################################################################################ package Ocsinventory::Agent::Modules::Example; sub new { my $name="example"; #Set the name of your module here my (undef,$context) = @_; my $self = {}; #Create a special logger for the module $self->{logger} = new Ocsinventory::Logger ({ config => $context->{config} }); $self->{logger}->{header}="[$name]"; $self->{context}=$context; $self->{structure}= { name => $name, start_handler => $name."_start_handler", #or undef if don't use this hook prolog_writer => $name."_prolog_writer", #or undef if don't use this hook prolog_reader => $name."_prolog_reader", #or undef if don't use this hook inventory_handler => $name."_inventory_handler", #or undef if don't use this hook end_handler => $name."_end_handler" #or undef if don't use this hook }; bless $self; } ######### Hook methods ############ sub example_start_handler { #Use this hook to test prerequisites needed by module and disble it if needed my $self = shift; my $logger = $self->{logger}; $logger->debug("Yeah you are in example_start_handler :)"); my $prerequisites = 1 ; if ( $prerequisites == 0 ) { $self->{disabled} = 1; #Use this to disable the module $logger->debug("Humm my prerequisites are not OK...disabling module :( :( "); } } sub example_prolog_writer { #Use this hook to add information the prolog XML my $self = shift; my $logger = $self->{logger}; $logger->debug("Yeah you are in example_prolog_writer :)"); } sub example_prolog_reader { #Use this hook to read the answer from OCS server my $self = shift; my $logger = $self->{logger}; $logger->debug("Yeah you are in example_prolog_reader :)"); } sub example_inventory_handler { #Use this hook to add or modify entries in the inventory XML my $self = shift; my $logger = $self->{logger}; $logger->debug("Yeah you are in example_inventory_handler :)"); } sub example_end_handler { #Use this hook to add treatments before the end of agent launch my $self = shift; my $logger = $self->{logger}; $logger->debug("Yeah you are in example_end_handler :)"); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Modules/Snmp.pm010064400017500001750000000300271173606111100247720ustar00guiguiguigui############################################################################### ## OCSINVENTORY-NG ## Copyleft Guillaume PROTET 2010 ## Web : http://www.ocsinventory-ng.org ## ## This code is open source and may be copied and modified as long as the source ## code is always made freely available. ## Please refer to the General Public Licence http://www.gnu.org/ or Licence.txt ################################################################################ package Ocsinventory::Agent::Modules::Snmp; use strict; no strict 'refs'; use warnings; use XML::Simple; use Digest::MD5; sub new { my $name="snmp"; #Set the name of your module here my (undef,$context) = @_; my $self = {}; #Create a special logger for the module $self->{logger} = new Ocsinventory::Logger ({ config => $context->{config} }); $self->{logger}->{header}="[$name]"; $self->{common} = $context->{common}; $self->{context}=$context; $self->{structure}= { name => $name, start_handler => $name."_start_handler", prolog_writer => undef, prolog_reader => $name."_prolog_reader", inventory_handler => undef, end_handler => $name."_end_handler", }; $self->{number_scan}=0; $self->{snmp_oid_run}=$name."_oid_run"; $self->{func_oid}={}; $self->{snmp_dir}=[]; my $spec_dir_snmp="Ocsinventory/Agent/Modules/Snmp/"; $self->{spec_dir_snmp}=$spec_dir_snmp; $self->{spec_module_snmp}="Ocsinventory::Agent::Modules::Snmp::"; # We are going to search where is the directory Ocsinventory/Modules/snmp foreach my $dir ( @INC ) { my $res_dir=$dir."/".$spec_dir_snmp; if ( -d $res_dir ) { push(@{$self->{snmp_dir}},$res_dir); } } #We create a xml for the snmp inventory that we will be sent to server $self->{inventory}={}; bless $self; } sub snmp_start_handler { my $self = shift; my $logger = $self->{logger}; my $common = $self->{context}->{common}; my $config = $self->{context}->{config}; $logger->debug("Calling snmp_start_handler"); #Disabling module if local mode if ($config->{stdout} || $config->{local}) { $self->{disabled} = 1; $logger->info("Agent is running in local mode...disabling module"); } #If we cannot load prerequisite, we disable the module unless ($common->can_load('Net::SNMP')) { $self->{disabled} = 1; $logger->error("Net::SNMP perl module is missing !!"); $logger->error("Humm my prerequisites are not OK...disabling module :( :("); } } sub snmp_prolog_reader { my ($self, $prolog) = @_; my $logger = $self->{logger}; my $network = $self->{context}->{network}; my $option; $logger->debug("Calling snmp_prolog_reader"); $prolog = XML::Simple::XMLin( $prolog, ForceArray => ['OPTION', 'PARAM']); for $option (@{$prolog->{OPTION}}){ if( $option->{NAME} =~/snmp/i){ $self->{doscans} = 1 ; for ( @{ $option->{PARAM} } ) { if($_->{'TYPE'} eq 'DEVICE'){ #Adding the IP in the devices array push @{$self->{netdevices}},{ IPADDR => $_->{IPADDR}, MACADDR => $_->{MACADDR}, }; } if($_->{'TYPE'} eq 'COMMUNITY'){ #Adding the community in the communities array push @{$self->{communities}},{ VERSION=>$_->{VERSION}, NAME=>$_->{NAME}, USERNAME=>$_->{USERNAME}, AUTHKEY=>$_->{AUTHKEY}, AUTHPASSWD=>$_->{AUTHPASSWD}, }; } } } } } sub snmp_end_handler { my $self = shift; my $logger = $self->{logger}; my $common = $self->{context}->{common}; my $network = $self->{context}->{network}; $logger->debug("Calling snmp_end_handler"); #If no order form server return unless $self->{doscans}; #Flushing xmltags if it has not been done $common->flushXMLTags(); #We get the config my $config = $self->{context}->{config}; my $ip=$self->{netdevices}; my $communities=$self->{communities}; if ( ! defined ($communities ) ) { $logger->debug("We have no Community from server, we use default public community"); $communities=[{VERSION=>"2",NAME=>"public"}]; } my ($name,$comm,$error,$system_oid); # sysName.0 my $snmp_sysname="1.3.6.1.2.1.1.5.0"; # sysDescr.0 my $snmp_sysdescr="1.3.6.1.2.1.1.1.0"; # sysLocation.0 my $snmp_syslocation="1.3.6.1.2.1.1.6.0"; # sysUpTime.0 my $snmp_sysuptime="1.3.6.1.2.1.1.3.0"; # sysObjectId.0 my $snmp_sysobjectid="1.3.6.1.2.1.1.2.0"; # syscontact.0 my $snmp_syscontact="1.3.6.1.2.1.1.4.0"; # Initalising the XML properties my $snmp_inventory = $self->{inventory}; $snmp_inventory->{xmlroot}->{QUERY} = ['SNMP']; $snmp_inventory->{xmlroot}->{DEVICEID} = [$self->{context}->{config}->{deviceid}]; # Begin scanning ip tables foreach my $device ( @$ip ) { my $session; my $devicedata = $common->{xmltags}; #To fill the xml informations for this device $logger->debug("Scanning $device->{IPADDR} device"); # Search for the good snmp community in the table community LIST_SNMP: foreach $comm ( @$communities ) { # Test if we use SNMP v3 if ( $comm->{VERSION} eq "3" ) { ($session, $error) = Net::SNMP->session( -retries => 1 , -timeout => 3, -version => 'snmpv'.$comm->{VERSION}, -hostname => $device->{IPADDR}, # -community => $comm->{NAME}, -translate => [-nosuchinstance => 0, -nosuchobject => 0], -username => $comm->{USER}, -authpassword => $comm->{AUTHPASSWD}, -authprotocol => $comm->{AUTHPROTO}, -privpassword => $comm->{PRIVPASSWD}, -privprotocol => $comm->{PRIVPROTO}, ); } else { # We have an older version v2c ou v1 ($session, $error) = Net::SNMP->session( -retries => 1 , -timeout => 3, -version => 'snmpv'.$comm->{VERSION}, -hostname => $device->{IPADDR}, -community => $comm->{NAME}, -translate => [-nosuchinstance => 0, -nosuchobject => 0], ); }; unless (defined($session)) { $logger->error("Snmp ERROR: $error"); } else { $self->{snmp_session}=$session; $self->{snmp_community}=$comm->{NAME}; #For a use in constructor module (Cisco) $self->{snmp_version}=$comm->{VERSION}; $name=$session->get_request( -varbindlist => [$snmp_sysname] ); last LIST_SNMP if ( defined $name); $session->close; $self->{snmp_session}=undef; } } if ( defined $self->{snmp_session} ) { # We have found the good Community, we can scan this equipment my ($constr_oid,$full_oid,$device_name,$description,$location,$contact,$uptime,$domain,$macaddr); # We indicate that we scan a new equipment $self->{number_scan}++; my $result; $result=$session->get_request( -varbindlist => [$snmp_sysname]); $device_name=$result->{$snmp_sysname}; $result=$session->get_request(-varbindlist => [$snmp_sysobjectid]); $full_oid=$result->{$snmp_sysobjectid}; $result=$session->get_request(-varbindlist => [$snmp_sysdescr]); $description=$result->{$snmp_sysdescr}; $result=$session->get_request(-varbindlist => [$snmp_syslocation]); $location=$result->{$snmp_syslocation}; $result=$session->get_request(-varbindlist => [$snmp_sysuptime]); $uptime=$result->{$snmp_sysuptime}; $result=$session->get_request(-varbindlist => [$snmp_syscontact]); $contact=$result->{$snmp_syscontact}; if ( $full_oid =~ /1\.3\.6\.1\.4\.1\.(\d+)/ ) { $system_oid=$1; } # We run the special treatments for the OID vendor if ( $self->{snmp_oid_run}($self,$system_oid) == 1 ) { # We have no vendor oid for this equipment # we use default.pm $self->{snmp_oid_run}($self,"Default"); } $session->close; $self->{snmp_session}=undef; $macaddr = $device->{MACADDR}; #Create SnmpDeviceID my $md5 = Digest::MD5->new; $md5->add($macaddr, $system_oid); my $snmpdeviceid = $md5->hexdigest; #Adding standard informations $common->setSnmpCommons({ IPADDR => $device->{IPADDR}, MACADDR => $macaddr, SNMPDEVICEID => $snmpdeviceid, NAME => $device_name, DESCRIPTION => $description, CONTACT => $contact, LOCATION => $location, UPTIME => $uptime, WORKGROUP => $domain, }); #Add all the informations in the xml for this device push @{$snmp_inventory->{xmlroot}->{CONTENT}->{DEVICE}},$devicedata; } #We clear the xml data for this device $common->flushXMLTags(); } $logger->info("No more SNMP device to scan"); #Formatting the XML and sendig it to the server my $content = XMLout( $snmp_inventory->{xmlroot}, RootName => 'REQUEST' , XMLDecl => '', SuppressEmpty => undef ); #Cleaning XML to delete unprintable characters my $clean_content = $common->cleanXml($content); $network->sendXML({message => $clean_content}); $logger->debug("End snmp_end_handler :)"); } sub snmp_oid_run { my ($self,$system_oid)=@_; my $logger=$self->{logger}; my $session=$self->{snmp_session}; my $spec_module_snmp=$self->{spec_module_snmp}; unless ( defined ( $self->{func_oid}{$system_oid} )) { my $spec_dir_snmp=$self->{spec_dir_snmp}; # We init the default value $self->{func_oid}{$system_oid}={}; $self->{func_oid}{$system_oid}{active}=0; $self->{func_oid}{$system_oid}{oid_value}="1.3.6.1.2.1.1.5.0"; $self->{func_oid}{$system_oid}{oid_name}="Undefined"; # Can we find it in the snmp directory foreach my $dir ( @{$self->{snmp_dir}} ) { if ( -r $dir.$system_oid.".pm" ) { # We find the module my $module_found=$spec_module_snmp.$system_oid; eval "use $module_found"; if ($@) { $logger->debug ("Failed to load $module_found: $@"); } else { # We have execute it. We can get the function pointer on snmp_run my $package=$module_found."::"; $self->{func_oid}{$system_oid}{snmp_run}=$package->{'snmp_run'}; if ( defined ( $package->{'snmp_info'} ) ) { my $return_info=&{$package->{'snmp_info'}}; if ( defined $return_info->{oid_value} ) { $self->{func_oid}{$system_oid}{oid_value}=$return_info->{oid_value}; } if ( defined $return_info->{oid_name} ) { $self->{func_oid}{$system_oid}{oid_name}=$return_info->{oid_name}; } } $self->{func_oid}{$system_oid}{active}=1; $self->{func_oid}{$system_oid}{last_exec}=0; } } } } if ( $self->{func_oid}{$system_oid}{active} == 1 && $self->{func_oid}{$system_oid}{last_exec} < $self->{number_scan} ) { # we test that this function as never been executed for this equipment # We test first that this OID exist for this equipment my $oid_scan=$self->{func_oid}{$system_oid}{oid_value}; my $result=$session->get_request(-varbindlist => [ $oid_scan ] ); $self->{func_oid}{$system_oid}{last_exec}=$self->{number_scan}; if ( length ($result->{$oid_scan}) != 0 ) { # This OID exist, we can execute it #$logger->debug("Launching $system_oid\n"); &{$self->{func_oid}{$system_oid}{snmp_run}}($session,$self); } # We indicate that this equipment is the last scanned } else { return 1; } return 0; } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Modules/Download.pm010064400017500001750000000671611173606111100256350ustar00guiguiguigui############################################################################### ## OCSINVENTORY-NG ## Copyleft Pascal DANEK 2005 ## Web : http://ocsinventory.sourceforge.net ## ## This code is open source and may be copied and modified as long as the source ## code is always made freely available. ## Please refer to the General Public Licence http://www.gnu.org/ or Licence.txt ################################################################################ # Function by hook: # -download_prolog_reader, download_message, download # -download_inventory_handler # -download_end_handler, begin, done, clean, finish, period, download, execute, # check_signature and build_package package Ocsinventory::Agent::Modules::Download; use strict; use Fcntl qw/:flock/; use XML::Simple; use LWP::UserAgent; use Compress::Zlib; use Digest::MD5; use File::Path; use Socket; # Can be missing. By default, we use MD5 # You have to install it if you want to use SHA1 digest eval{ require Digest::SHA1 }; #Global vars my $ua; my $config; my @prior_pkgs; sub new { my $name="download"; #Set the name of your module here my (undef,$context) = @_; my $self = {}; #Create a special logger for the module $self->{logger} = new Ocsinventory::Logger ({ config => $context->{config}, }); #We use the common object for the module $self->{common} = $context->{common}; $self->{context} = $context; $self->{logger}->{header}="[$name]"; $self->{structure} = { name => $name, start_handler => $name."_start_handler", prolog_writer => undef, prolog_reader => $name."_prolog_reader", inventory_handler => $name."_inventory_handler", end_handler => $name."_end_handler" }; $self->{settings} = { https_port => '443', # Time to wait between scheduler periods, scheduling cycles and fragments downloads frag_latency_default => 10, period_latency_default => 0, cycle_latency_default => 10, max_error_count => 30, # Number of loops for one period period_lenght_default => 10, }; $self->{messages} = { # Errors code_succes => 'SUCCESS', err_bad_id => 'ERR_BAD_ID', err_download_info => 'ERR_DOWNLOAD_INFO', err_bad_digest => 'ERR_BAD_DIGEST', err_download_pack => 'ERR_DOWNLOAD_PACK', err_build => 'ERR_BUILD', err_execute => 'ERR_EXECUTE', err_clean => 'ERR_CLEAN', err_timeout => 'ERR_TIMEOUT', err_already_setup => 'ERR_ALREADY_SETUP', }; #Special hash for packages $self->{packages}= {}; bless $self; } sub download_start_handler { my $self = shift; my $logger = $self->{logger}; my $common = $self->{context}->{common}; my $config = $self->{context}->{config}; $logger->debug("Calling download_start_handler"); #Disabling module if local mode if ($config->{stdout} || $config->{local}) { $self->{disabled} = 1; $logger->info("Agent is running in local mode...disabling module"); } #If we cannot load prerequisite, we disable the module unless ($common->can_load('Net::SSLeay qw(die_now die_if_ssl_error)')) { $self->{disabled} = 1; $logger->error("Net::SSLeay perl module is missing !!"); $logger->error("Humm my prerequisites are not OK...disabling module :( :("); } } sub download_prolog_reader{ #Read prolog response my ($self,$prolog) = @_; my $context = $self->{context}; my $logger = $self->{logger}; my $common = $self->{common}; my $settings = $self->{settings}; my $messages = $self->{messages}; my $packages = $self->{packages}; $logger->debug("Calling download_prolog_reader"); $logger->debug($prolog); $prolog = XML::Simple::XMLin( $prolog, ForceArray => ['OPTION', 'PARAM']); my $option; # Create working directory my $opt_dir = $context->{installpath}.'/download'; mkdir($opt_dir) unless -d $opt_dir; # We create a file to tell to download process that we are running open SUSPEND, ">$opt_dir/suspend"; close(SUSPEND); # Create history file if needed unless(-e "$opt_dir/history"){ open HISTORY, ">$opt_dir/history" or die("Cannot create history file: $!"); close(HISTORY); } # Create lock file if needed unless(-e "$opt_dir/lock"){ open LOCK, ">$opt_dir/lock" or die("Cannot create lock file: $!"); close(LOCK); } # Retrieve our options for $option (@{$prolog->{OPTION}}){ if( $option->{NAME} =~/download/i){ for ( @{ $option->{PARAM} } ) { # Type of param if($_->{'TYPE'} eq 'CONF'){ # Writing configuration open CONFIG, ">$opt_dir/config" or die("Cannot open/create config file ($opt_dir/config)"); if(flock(CONFIG, LOCK_EX)){ $logger->debug("Writing config file."); print CONFIG XMLout($_, RootName => 'CONF'); close(CONFIG); $config = $_; }else{ $logger->error("Cannot lock config file !!"); close(CONFIG); return 0; } # Apply config # ON ? if($_->{'ON'} == '0'){ $logger->info("Download is off."); open LOCK, "$opt_dir/lock" or die("Cannot open lock file: $!"); if(flock(LOCK, LOCK_EX|LOCK_NB)){ close(LOCK); unlink("$opt_dir/suspend"); return 0; }else{ $logger->debug("Try to kill current download process..."); my $pid = ; close(LOCK); $logger->debug("Sending USR1 to $pid..."); if(kill("USR1", $pid)){ $logger->debug("Success."); }else{ $logger->debug("Failed."); } return 0; } } # Maybe a new package to download }elsif($_->{'TYPE'} eq 'PACK'){ $packages->{$_->{'ID'}} = { 'PACK_LOC' => $_->{'PACK_LOC'}, 'INFO_LOC' => $_->{'INFO_LOC'}, #'ID' => $_->{'ID'}, 'CERT_PATH' => $_->{'CERT_PATH'}, 'CERT_FILE' => $_->{'CERT_FILE'} }; } } } } # We are now in download child # Connect to server if ($context->{network}) { $ua = $context->{network}->{ua}; } else { $logger->info("Cannot find network settings to make this module works properly...disabling module"); $self->{disabled} = 1; } # Check history file unless(open HISTORY, "$opt_dir/history") { flock(HISTORY, LOCK_EX); unlink("$opt_dir/suspend"); $logger->error("Cannot read history file: $!"); return 1; } chomp(my @done = ); close(HISTORY); # Package is maybe already handled for (keys %$packages){ my $dir = $opt_dir."/".$_; my $fileid = $_; my $infofile = 'info'; my $location = $packages->{$_}->{'INFO_LOC'}; if($common->already_in_array($fileid, @done)){ $logger->info("Will not download $fileid. (already in history file)"); &download_message($fileid, $messages->{err_already_setup},$logger,$context); next; } # Looking for packages status unless(-d $dir){ $logger->debug("Making working directory for $fileid."); mkdir($dir) or die("Cannot create $fileid directory: $!"); open FH, ">$dir/since" or die("Cannot create $fileid since file: $!");; print FH time(); close(FH); } # Retrieve and writing info file if needed unless(-f "$dir/$infofile"){ # Special value INSTALL_PATH $packages->{$_}->{CERT_PATH} =~ s/INSTALL_PATH/$context->{installpath}/; $packages->{$_}->{CERT_FILE} =~ s/INSTALL_PATH/$context->{installpath}/; if (!-f $packages->{$_}->{CERT_FILE}) { $logger->debug("installpath=$context->{installpath}"); $logger->error("No certificat found in ".$packages->{$_}->{CERT_FILE}); } # Getting info file $logger->debug("Retrieving info file for $fileid"); my ($ctx, $ssl, $ra); eval { $| = 1; $logger->debug('Initialize ssl layer...'); # Initialize openssl if ( -e '/dev/urandom') { $Net::SSLeay::random_device = '/dev/urandom'; $Net::SSLeay::how_random = 512; } else { srand (time ^ $$ ^ unpack "%L*", `ps wwaxl | gzip`); $ENV{RND_SEED} = rand 4294967296; } Net::SSLeay::randomize(); Net::SSLeay::load_error_strings(); Net::SSLeay::ERR_load_crypto_strings(); Net::SSLeay::SSLeay_add_ssl_algorithms(); #Create ctx object $ctx = Net::SSLeay::CTX_new() or die_now("Failed to create SSL_CTX $!"); Net::SSLeay::CTX_load_verify_locations( $ctx, $packages->{$_}->{CERT_FILE}, $packages->{$_}->{CERT_PATH} ) or die_now("CTX load verify loc: $!"); # Tell to SSLeay where to find AC file (or dir) Net::SSLeay::CTX_set_verify($ctx, &Net::SSLeay::VERIFY_PEER, \&ssl_verify_callback); die_if_ssl_error('callback: ctx set verify'); my($server_name,$server_port,$server_dir); if($packages->{$_}->{INFO_LOC}=~ /^([^:]+):(\d{1,5})(.*)$/){ $server_name = $1; $server_port = $2; $server_dir = $3; }elsif($packages->{$_}->{INFO_LOC}=~ /^([^\/]+)(.*)$/){ $server_name = $1; $server_dir = $2; $server_port = $settings->{https_port}; } $server_dir .= '/' unless $server_dir=~/\/$/; $server_name = gethostbyname ($server_name) or die; my $dest_serv_params = pack ('S n a4 x8', &AF_INET, $server_port, $server_name ); # Connect to server $logger->debug("Connect to server: $packages->{$_}->{INFO_LOC}..."); socket (S, &AF_INET, &SOCK_STREAM, 0) or die "socket: $!"; connect (S, $dest_serv_params) or die "connect: $!"; # Flush socket select (S); $| = 1; select (STDOUT); $ssl = Net::SSLeay::new($ctx) or die_now("Failed to create SSL $!"); Net::SSLeay::set_fd($ssl, fileno(S)); # SSL handshake $logger->debug('Starting SSL connection...'); Net::SSLeay::connect($ssl); die_if_ssl_error('callback: ssl connect!'); # Get info file my $http_request = "GET /$server_dir".$fileid."/info HTTP/1.0\n\n"; Net::SSLeay::ssl_write_all($ssl, $http_request); shutdown S, 1; $ra = Net::SSLeay::ssl_read_all($ssl); $ra = (split("\r\n\r\n", $ra))[1] or die; $logger->debug("Info file: $ra"); my $xml = XML::Simple::XMLin( $ra ) or die; $xml->{PACK_LOC} = $packages->{$_}->{PACK_LOC}; $ra = XML::Simple::XMLout( $xml ) or die; open FH, ">$dir/info" or die("Cannot open info file: $!"); print FH $ra; close FH; }; if($@){ download_message($fileid, $self->{messages}->{err_download_info},$logger,$context); $logger->error("Error: SSL hanshake has failed"); next; } else { $logger->debug("Success. :-)"); } Net::SSLeay::free ($ssl); Net::SSLeay::CTX_free ($ctx); close S; sleep(1); } } unless(unlink("$opt_dir/suspend")){ $logger->error("Cannot delete suspend file: $!"); return 1; } return 0; } sub ssl_verify_callback { my ($ok, $x509_store_ctx) = @_; return $ok; } sub download_inventory_handler{ # Adding the ocs package ids to softwares my ($self,$inventory) = @_; my $context = $self->{context}; my $logger = $self->{logger}; $logger->debug("Calling download_inventory_handler"); my @history; # Read download history file if( open PACKAGES, "$context->{installpath}/download/history" ){ flock(PACKAGES, LOCK_SH); while(){ chomp( $_ ); push @history, { ID => $_ }; } } close(PACKAGES); # Add it to inventory (will be handled by Download.pm server module push @{ $inventory->{xmlroot}->{'CONTENT'}->{'DOWNLOAD'}->{'HISTORY'} },{ 'PACKAGE'=> \@history }; } sub download_end_handler{ # Get global structure my $self = shift; my $context = $self->{context}; my $logger = $self->{logger}; my $common = $self->{common}; my $settings = $self->{settings}; my $messages = $self->{messages}; my $packages = $self->{packages}; $logger->debug("Calling download_end_handler"); my $dir = $context->{installpath}."/download"; my $pidfile = $dir."/lock"; return 0 unless -d $dir; # We have jobs, we do it alone my $fork = fork(); if($fork>0){ return 0; }elsif($fork<0){ return 1; }else{ $SIG{'USR1'} = sub { print "Exiting on signal...\n"; &finish($logger, $context); }; # Go into working directory chdir($dir) or die("Cannot chdir to working directory...Abort\n"); } # Maybe an other process is running exit(0) if begin($pidfile,$logger); # Retrieve the packages to download opendir DIR, $dir or die("Cannot read working directory: $!"); my $end; while(1){ # If agent is running, we wait if (-e "suspend") { $logger->debug('Found a suspend file... Will wait 10 seconds before retry'); sleep(10); next; } $end = 1; #TODO Uncomment this line #undef $packages; # Reading configuration open FH, "$dir/config" or die("Cannot read config file: $!"); if(flock(FH, LOCK_SH)){ $config = XMLin("$dir/config"); close(FH); # If Frag latency is null, download is off if($config->{'ON'} eq '0'){ $logger->info("Option turned off. Exiting."); finish($logger, $context); } }else{ $logger->error("Cannot read config file :-( . Exiting."); close(FH); finish($logger, $context); } # Retrieving packages to download and their priority while(my $entry = readdir(DIR)){ next if $entry !~ /^\d+$/; next unless(-d $entry); # Clean package if info file does not still exist unless(-e "$entry/info"){ $logger->debug("No info file found for $entry!!"); clean( $entry, $logger, $context, $messages, $packages ); next; } my $info = XML::Simple::XMLin( "$entry/info" ) or next; # Check that fileid == directory name if($info->{'ID'} ne $entry){ $logger->debug("ID in info file does not correspond!!"); clean( $entry, $logger, $context, $messages, $packages ); download_message($entry, $messages->{err_bad_id},$logger,$context); next; } # Manage package timeout # Clean package if since timestamp is not present unless(-e "$entry/since"){ $logger->debug("No since file found!!"); clean($entry, $logger, $context,$messages,$packages ); next; }else{ my $time = time(); if(open SINCE, "$entry/since"){ my $since = ; if($since=~/\d+/){ if( (($time-$since)/86400) > $config->{TIMEOUT}){ $logger->error("Timeout Reached for $entry."); clean($entry, $logger, $context,$messages,$packages ); &download_message($entry, $messages->{err_timeout},$logger,$context); close(SINCE); next; }else{ $logger->debug("Checking timeout for $entry... OK"); } }else{ $logger->error("Since data for $entry is incorrect."); clean($entry, $logger, $context, $messages, $packages ); &download_message($entry, $messages->{err_timeout},$logger,$context); close(SINCE); next; } close(SINCE); }else{ $logger->error("Cannot find since data for $entry."); clean($entry, $logger, $context, $messages, $packages ); &download_message($entry, $messages->{err_timeout},$logger,$context); next; } } # Building task file if needed unless( -f "$entry/task" and -f "$entry/task_done" ){ open FH, ">$entry/task" or die("Cannot create task file for $entry: $!"); my $i; my $frags = $info->{'FRAGS'}; # There are no frags if there is only a command if($frags){ for($i=1;$i<=$frags;$i++){ print FH "$entry-$i\n"; } }; close FH; # To be sure that task file is fully created open FLAG, ">$entry/task_done" or die ("Cannot create task flag file for $entry: $!"); close(FLAG); } # Store info XML descriptions in package attributes for (keys %$info){ $packages->{$entry}->{$_} = $info->{$_} } $end = 0; } # Rewind directory rewinddir(DIR); # Call packages scheduler if($end){ last; }else{ period($packages,$logger,$context,$self->{messages},$settings); } } $logger->info("No more package to download."); finish($logger, $context); } # Schedule the packages sub period{ my ($packages,$logger,$context,$messages,$settings) = @_ ; my $period_lenght_default = $settings->{period_lenght_default} ; my $frag_latency_default= $settings->{frag_latency_default} ; my $cycle_latency_default= $settings->{cycle_latency_default} ; my $period_latency_default= $settings->{period_latency_default} ; my $i; #Serching packages with the priority 0 for (keys %$packages) { if ($packages->{$_}->{'PRI'} eq "0") { push (@prior_pkgs,$_); } } $logger->debug("New period. Nb of cycles: ". (defined($config->{'PERIOD_LENGTH'})?$config->{'PERIOD_LENGTH'}:$period_lenght_default)); for($i=1;$i<=( defined($config->{'PERIOD_LENGTH'})?$config->{'PERIOD_LENGTH'}:$period_lenght_default);$i++){ # Highest priority if(@prior_pkgs){ $logger->debug("Managing ".scalar(@prior_pkgs)." package(s) with absolute priority."); for(@prior_pkgs){ # If done file found, clean package if(-e "$_/done"){ $logger->debug("done file found!!"); done($_,$logger,$context,$messages,$settings,$packages); next; } download($_,$logger,$context,$messages,$settings,$packages); $logger->debug("Now pausing for a fragment latency => ".( defined($config->{'FRAG_LATENCY'})?$config->{'FRAG_LATENCY'}:$frag_latency_default) ." seconds"); sleep( defined($config->{'FRAG_LATENCY'})?$config->{'FRAG_LATENCY'}:$frag_latency_default ); } next; } # Normal priority for (keys %$packages){ # If done file found, clean package if(-e "$_/done"){ $logger->debug("done file found!!"); done($_,$logger,$context,$messages,$settings,$packages); next; } next if $i % $packages->{$_}->{'PRI'} != 0; download($_,$logger,$context,$messages,$settings,$packages); $logger->debug("Now pausing for a fragment latency => ". (defined( $config->{'FRAG_LATENCY'} )?$config->{'FRAG_LATENCY'}:$frag_latency_default) ." seconds"); sleep(defined($config->{'FRAG_LATENCY'})?$config->{'FRAG_LATENCY'}:$frag_latency_default); } $logger->debug("Now pausing for a cycle latency => ".( defined($config->{'CYCLE_LATENCY'})?$config->{'CYCLE_LATENCY'}:$cycle_latency_default) ." seconds"); sleep(defined($config->{'CYCLE_LATENCY'})?$config->{'CYCLE_LATENCY'}:$cycle_latency_default); } sleep($config->{'PERIOD_LATENCY'}?$config->{'PERIOD_LATENCY'}:$period_latency_default); } # Download a fragment of the specified package sub download { my ($id,$logger,$context,$messages,$settings,$packages) = @_; my $error; my $proto = $packages->{$id}->{'PROTO'}; my $location = $packages->{$id}->{'PACK_LOC'}; my $URI = "$proto://$location/$id/"; # If we find a temp file, we know that the update of the task file has failed for any reason. So we retrieve it from this file if(-e "$id/task.temp") { unlink("$id/task.temp"); rename("$id/task.temp","$id/task") or return 1; } # Retrieve fragments already downloaded unless(open TASK, "$id/task"){ $logger->error("Cannot open $id/task."); return 1; } my @task = ; # Done if(!@task){ $logger->debug("Download of $id... Finished."); close(TASK); execute($id,$logger,$context,$messages,$settings,$packages); return 0; } my $fragment = shift(@task); my $request = HTTP::Request->new(GET => $URI.$fragment); $logger->debug("Downloading $fragment..."); # Using proxy if possible $ua->env_proxy; my $res = $ua->request($request); # Checking if connected if($res->is_success) { $logger->debug("Success :-)"); $error = 0; open FRAGMENT, ">$id/$fragment" or return 1; print FRAGMENT $res->content; close(FRAGMENT); # Updating task file rename(">$id/task", ">$id/task.temp"); open TASK, ">$id/task" or return 1; print TASK @task; close(TASK); unlink(">$id/task.temp"); } else { #download_message($id, ERR_DOWNLOAD_PACK); close(TASK); $logger->error("Error :-( ".$res->code); $error++; if($error > $settings->{maw_error_count}){ $logger->error("Error : Max errors count reached"); finish($logger,$context); } return 1; } return 0; } # Assemble and handle downloaded package sub execute{ my ($id,$logger,$context,$messages,$settings,$packages) = @_; my $common = $context->{common}; my $tmp = $id."/tmp"; my $exit_code; $logger->debug("Execute orders for package $id."); if(build_package($id,$logger,$context,$messages,$packages)){ clean($id,$logger, $context,$messages,$packages); return 1; }else{ # First, we get in temp directory unless( chdir($tmp) ){ $logger->error("Cannot chdir to working directory: $!"); download_message($id, $messages->{err_execute}, $logger,$context); clean($id,$logger, $context,$messages,$packages); return 1; } # Executing preorders (notify user, auto launch, etc.... # $id->{NOTIFY_USER} # $id->{NOTIFY_TEXT} # $id->{NOTIFY_COUNTDOWN} # $id->{NOTIFY_CAN_ABORT} # TODO: notification to send through DBUS to the user eval{ # Execute instructions if($packages->{$id}->{'ACT'} eq 'LAUNCH'){ my $exe_line = $packages->{$id}->{'NAME'}; $packages->{$id}->{'NAME'} =~ s/^([^ -]+).*/$1/; # Exec specified file (LAUNCH => NAME) if(-e $packages->{$id}->{'NAME'}){ $logger->debug("Launching $packages->{$id}->{'NAME'}..."); chmod(0755, $packages->{$id}->{'NAME'}) or die("Cannot chmod: $!"); $exit_code = system( "./".$exe_line ); }else{ die(); } }elsif($packages->{$id}->{'ACT'} eq 'EXECUTE'){ # Exec specified command EXECUTE => COMMAND $logger->debug("Execute $packages->{$id}->{'COMMAND'}..."); system( $packages->{$id}->{'COMMAND'} ) and die(); }elsif($packages->{$id}->{'ACT'} eq 'STORE'){ # Store files in specified path STORE => PATH $packages->{$id}->{'PATH'} =~ s/INSTALL_PATH/$context->{installpath}/; # Build it if needed my @dir = split('/', $packages->{$id}->{'PATH'}); my $dir; for(@dir){ $dir .= "$_/"; unless(-e $dir){ mkdir($dir); $logger->debug("Create $dir..."); } } $logger->debug("Storing package to $packages->{$id}->{'PATH'}..."); # Stefano Brandimarte => Stevenson! system($common->get_path('cp')." -pr * ".$packages->{$id}->{'PATH'}) and die(); } }; if($@){ # Notify success to ocs server download_message($id, $messages->{err_execute},$logger,$context); chdir("../..") or die("Cannot go back to download directory: $!"); clean($id,$logger,$context,$messages,$packages); return 1; }else{ chdir("../..") or die("Cannot go back to download directory: $!"); done($id,$logger,$context,$messages,$settings,$packages,(defined($exit_code)?$exit_code:'_NONE_')); return 0; } } } # Check package integrity sub build_package{ my ($id,$logger,$context,$messages,$packages) = @_; my $common = $context->{common}; my $count = $packages->{$id}->{'FRAGS'}; my $i; my $tmp = "./$id/tmp"; unless(-d $tmp){ mkdir("$tmp"); } # No job if no files return 0 unless $count; # Assemble package $logger->info("Building package for $id."); for($i=1;$i<=$count;$i++){ if(-f "./$id/$id-$i"){ # We make a tmp working directory if($i==1){ open PACKAGE, ">$tmp/build.tar.gz" or return 1; } # We write each fragment in the final package open FRAGMENT, "./$id/$id-$i" or return 1; my $row; while($row = ){ print PACKAGE $row; } close(FRAGMENT); }else{ return 1; } } close(PACKAGE); # if(check_signature($packages->{$id}->{'DIGEST'}, "$tmp/build.tar.gz", $packages->{$id}->{'DIGEST_ALGO'}, $packages->{$id}->{'DIGEST_ENCODE'},$logger)){ download_message($id, $messages->{err_bad_digest},$logger,$context); return 1; } if( system( $common->get_path("tar")." -xvzf $tmp/build.tar.gz -C $tmp") ){ $logger->error("Cannot extract $id."); download_message($id,$messages->{err_build},$logger,$context); return 1; } $logger->debug("Building of $id... Success."); unlink("$tmp/build.tar.gz") or die ("Cannot remove build file: $!\n"); return 0; } sub check_signature{ my ($checksum, $file, $digest, $encode,$logger) = @_; $logger->info("Checking signature for $file."); my $base64; # Open file unless(open FILE, $file){ $logger->error("cannot open $file: $!"); return 1; } binmode(FILE); # Retrieving encoding form if($encode =~ /base64/i){ $base64 = 1; $logger->debug('Digest format: Base 64'); }elsif($encode =~ /hexa/i){ $logger->debug('Digest format: Hexadecimal'); }else{ $logger->debug('Digest format: Not supported'); return 1; } eval{ # Check it if($digest eq 'MD5'){ $logger->debug('Digest algo: MD5'); if($base64){ die unless Digest::MD5->new->addfile(*FILE)->b64digest eq $checksum; } else{ die unless Digest::MD5->new->addfile(*FILE)->hexdigest eq $checksum; } }elsif($digest eq 'SHA1'){ $logger->debug('Digest algo: SHA1'); if($base64){ die unless Digest::SHA1->new->addfile(*FILE)->b64digest eq $checksum; } else{ die unless Digest::SHA1->new->addfile(*FILE)->hexdigest eq $checksum; } }else{ $logger->debug('Digest algo unknown: '.$digest); die; } }; if($@){ $logger->debug("Digest checking error !!"); close(FILE); return 1; }else{ close(FILE); $logger->debug("Digest OK..."); return 0; } } # Launch a download error to ocs server sub download_message{ my ($id, $code,$logger,$context) = @_; $logger->debug("Sending message for $id, code=$code."); my $xml = { 'DEVICEID' => $context->{deviceid}, 'QUERY' => 'DOWNLOAD', 'ID' => $id, 'ERR' => $code }; # Generate xml $xml = XMLout($xml, RootName => 'REQUEST'); # Compress data $xml = Compress::Zlib::compress( $xml ); my $URI = $context->{servername}; # Send request my $request = HTTP::Request->new(POST => $URI); $request->header('Pragma' => 'no-cache', 'Content-type', 'application/x-compress'); $request->content($xml); my $res = $ua->request($request); # Checking result if($res->is_success) { return 0; }else{ return 1; } } # At the beginning of end handler sub begin{ my ($pidfile,$logger) = @_; open LOCK_R, "$pidfile" or die("Cannot open pid file: $!"); if(flock(LOCK_R,LOCK_EX|LOCK_NB)){ open LOCK_W, ">$pidfile" or die("Cannot open pid file: $!"); select(LOCK_W) and $|=1; select(STDOUT) and $|=1; print LOCK_W $$; $logger->info("Beginning work. I am $$."); return 0; }else{ close(LOCK_R); $logger->error("$pidfile locked. Cannot begin work... :-("); return 1; } } sub done{ my ($id,$logger,$context,$messages,$settings,$packages,$suffix) = @_; my $common = $context->{common}; my $frag_latency_default = $settings->{frag_latency_default}; $logger->debug("Package $id... Done. Sending message..."); # Trace installed package open DONE, ">$id/done"; close(DONE); # Put it in history file open HISTORY, ">>history" or warn("Cannot open history file: $!"); flock(HISTORY, LOCK_EX); my @historyIds = ; if( $common->already_in_array($id, @historyIds) ){ $logger->debug("Warning: id $id has been found in the history file!!"); } else { $logger->debug("Writing $id reference in history file"); print HISTORY $id,"\n"; } close(HISTORY); # Notify success to ocs server my $code; if($suffix ne '_NONE_'){ $code = $messages->{code_succes}."_$suffix"; } else{ $code = $messages->{code_succes}; } unless(download_message($id, $code,$logger,$context)){ clean($id,$logger,$context,$messages,$packages); }else{ sleep( defined($config->{'FRAG_LATENCY'})?$config->{'FRAG_LATENCY'}:$frag_latency_default ); } return 0; } sub clean{ my ($id,$logger,$context,$messages,$packages) = @_; $logger->info("Cleaning $id package."); delete $packages->{$id}; #If the package is priority 0 if ((my $index) = grep { $prior_pkgs[$_] eq $id } 0..$#prior_pkgs){ delete $prior_pkgs[$index]; } unless(File::Path::rmtree($id, 0)){ $logger->error("Cannot clean $id!! Abort..."); download_message($id, $messages->{err_clean},$logger,$context); die(); } return 0; } # At the end sub finish{ my ($logger,$context) = @_; open LOCK, '>'.$context->{installpath}.'/download/lock'; $logger->debug("End of work...\n"); exit(0); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Hooks.pm010064400017500001750000000041211173606111100235240ustar00guiguiguiguipackage Ocsinventory::Agent::Hooks; # This package give possibility to use hooks in unified unix agent. use strict; use warnings; #use FindBin qw($Bin); sub new { my (undef, $context) = @_; my $self = {}; $self->{accountinfo} = $context->{accountinfo}; $self->{accountconfig} = $context->{accountconfig}; my $logger = $self->{logger}=$context->{logger}; $self->{config} = $context->{config}; $self->{dontuse} = 1; my $modulefile; foreach (@{$self->{config}->{etcdir}}) { $modulefile = $_.'/modules.conf'; if (-f $modulefile) { if (do $modulefile) { $logger->debug("Turns hooks on for $modulefile"); $self->{dontuse} = 0; last; } else { $logger->debug("Failed to load `$modulefile': $?"); } } } if ($self->{dontuse}) { $logger->debug("No modules will be used."); } else { my $ocsAgentServerUri; # to avoid a warning if $self->{config}->{server} is not defined if ($self->{config}->{server}) { $ocsAgentServerUri = "http://".$self->{config}->{server}.$self->{config}->{remotedir}; } if ($self->{config}->{debug}) { $::debug = 2; } } #Create objects for modules foreach my $mod (keys %Ocsinventory::Agent::Modules::) { $mod =~ s/\:\://; my $package ="Ocsinventory::Agent::Modules::".$mod; my $module = new $package($context) ; my $name= $module->{structure}->{name}; #Store the reference in a key to access modules easily $self->{modules}->{$name}=$module; } bless $self; } sub run { my ($self, $args, $moduleparam) = @_; return if $self->{dontuse}; my $name = $args->{name}; #type of hook asked my $logger = $self->{logger}; $logger->debug("Calling handlers : `$name'"); #Launching hook for modules if not 'undef' and if modules are not disabled by start_handler for (keys %{$self->{modules}}) { my $module = $self->{modules}->{$_}; unless ($module->{disabled}) { my $hook = $module->{structure}->{$name}; if ($hook) { $module->$hook($moduleparam); } } } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/XML004075500017500001750000000000001173606116100224765ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/XML/Inventory.pm010064400017500001750000000173221173606111100251050ustar00guiguiguiguipackage Ocsinventory::Agent::XML::Inventory; # TODO: resort the functions use strict; use warnings; =head1 NAME Ocsinventory::Agent::XML::Inventory - the XML abstraction layer =head1 DESCRIPTION OCS Inventory uses XML for the data transmition. The module is the abstraction layer. It's mostly used in the backend module where it called $inventory in general. =cut use XML::Simple; use Digest::MD5 qw(md5_base64); use Config; use Ocsinventory::Agent::Backend; =over 4 =item new() The usual constructor. =cut sub new { my (undef, $params) = @_; my $self = {}; $self->{accountinfo} = $params->{context}->{accountinfo}; $self->{accountconfig} = $params->{context}->{accountconfig}; $self->{backend} = $params->{backend}; $self->{common} = $params->{context}->{common}; my $logger = $self->{logger} = $params->{context}->{logger}; $self->{config} = $params->{context}->{config}; if (!($self->{config}{deviceid})) { $logger->fault ('deviceid unititalised!'); } $self->{xmlroot}{QUERY} = ['INVENTORY']; $self->{xmlroot}{DEVICEID} = [$self->{config}->{deviceid}]; #$self->{xmlroot}{CONTENT}{HARDWARE} = { # TODO move that in a backend module # ARCHNAME => [$Config{archname}] #}; # Is the XML centent initialised? $self->{isInitialised} = undef; bless $self; } =item initialise() Runs the backend modules to initilise the data. =cut sub initialise { my ($self) = @_; return if $self->{isInitialised}; $self->{backend}->feedInventory ({inventory => $self}); $self->{isInitialised} = 1; } =item getContent() Return the inventory as a XML string. =cut sub getContent { my ($self, $args) = @_; my $logger = $self->{logger}; my $common = $self->{common}; if ($self->{isInitialised}) { $self->processChecksum(); # checks for MAC, NAME and SSN presence my $macaddr = $self->{xmlroot}->{CONTENT}->{NETWORKS}->[0]->{MACADDR}->[0]; my $ssn = $self->{xmlroot}->{CONTENT}->{BIOS}->{SSN}->[0]; my $name = $self->{xmlroot}->{CONTENT}->{HARDWARE}->{NAME}->[0]; my $missing; $missing .= "MAC-address " unless $macaddr; $missing .= "SSN " unless $ssn; $missing .= "HOSTNAME " unless $name; if ($missing) { $logger->debug('Missing value(s): '.$missing.'. I will send this inventory to the server BUT important value(s) to identify the computer are missing'); } $self->{accountinfo}->setAccountInfo($self); my $content = XMLout( $self->{xmlroot}, RootName => 'REQUEST', XMLDecl => '', SuppressEmpty => undef ); #Cleaning XML to delete unprintable characters my $clean_content=$common->cleanXml($content); #Cleaning xmltags content after adding it o inventory $common->flushXMLTags(); return $clean_content; } } =item printXML() Only for debugging purpose. Print the inventory on STDOUT. =cut sub printXML { my ($self, $args) = @_; if ($self->{isInitialised}) { print $self->getContent(); } } =item writeXML() Save the generated inventory as an XML file. The 'local' key of the config is used to know where the file as to be saved. =cut sub writeXML { my ($self, $args) = @_; my $logger = $self->{logger}; if ($self->{config}{local} =~ /^$/) { $logger->fault ('local path unititalised!'); } if ($self->{isInitialised}) { my $localfile = $self->{config}{local}."/".$self->{config}{deviceid}.'.ocs'; $localfile =~ s!(//){1,}!/!; # Convert perl data structure into xml strings if (open OUT, ">$localfile") { print OUT $self->getContent(); close OUT or warn; $logger->info("Inventory saved in $localfile"); } else { warn "Can't open `$localfile': $!" } } } =item processChecksum() Compute the field. This information is used by the server to know which parts of the XML have changed since the last inventory. The is done thank to the last_file file. It has MD5 prints of the previous inventory. =cut sub processChecksum { my $self = shift; my $logger = $self->{logger}; my $common = $self->{common}; #To apply to $checksum with an OR my %mask = ( 'HARDWARE' => 1, 'BIOS' => 2, 'MEMORIES' => 4, 'SLOTS' => 8, 'REGISTRY' => 16, 'CONTROLLERS' => 32, 'MONITORS' => 64, 'PORTS' => 128, 'STORAGES' => 256, 'DRIVES' => 512, 'INPUT' => 1024, 'MODEMS' => 2048, 'NETWORKS' => 4096, 'PRINTERS' => 8192, 'SOUNDS' => 16384, 'VIDEOS' => 32768, 'SOFTWARES' => 65536, 'VIRTUALMACHINES' => 131072, ); # TODO CPUS is not in the list if (!$self->{config}->{vardir}) { $logger->fault ("vardir uninitialised!"); } my $checksum = 0; if (!$self->{config}{local} && $self->{config}->{last_statefile}) { if (-f $self->{config}->{last_statefile}) { # TODO: avoid a violant death in case of problem with XML $self->{last_state_content} = XML::Simple::XMLin( $self->{config}->{last_statefile}, SuppressEmpty => undef, ForceArray => 1 ); } else { $logger->debug ('last_state file: `'. $self->{config}->{last_statefile}. "' doesn't exist (yet)."); } } foreach my $section (keys %mask) { #If the checksum has changed... my $hash = md5_base64(XML::Simple::XMLout($self->{xmlroot}{'CONTENT'}{$section})); if (!$self->{last_state_content}->{$section}[0] || $self->{last_state_content}->{$section}[0] ne $hash ) { $logger->debug ("Section $section has changed since last inventory"); #We make OR on $checksum with the mask of the current section $checksum |= $mask{$section}; # Finally I store the new value. $self->{last_state_content}->{$section}[0] = $hash; } } $common->setHardware({CHECKSUM => $checksum}); } =item saveLastState() At the end of the process IF the inventory was saved correctly, the last_state is saved. =cut sub saveLastState { my ($self, $args) = @_; my $logger = $self->{logger}; if (!defined($self->{last_state_content})) { $self->processChecksum(); } if (!defined ($self->{config}->{last_statefile})) { $logger->debug ("Can't save the last_state file. File path is not initialised."); return; } if (open LAST_STATE, ">".$self->{config}->{last_statefile}) { print LAST_STATE my $string = XML::Simple::XMLout( $self->{last_state_content}, RootName => 'LAST_STATE' );; close LAST_STATE or warn; } else { $logger->debug ("Cannot save the checksum values in ".$self->{config}->{last_statefile}.":$!"); } } =item addSection() A generic way to save a section in the inventory. Please avoid this solution. =cut sub addSection { my ($self, $args) = @_; my $logger = $self->{logger}; my $multi = $args->{multi}; my $tagname = $args->{tagname}; for( keys %{$self->{xmlroot}{CONTENT}} ){ if( $tagname eq $_ ){ $logger->debug("Tag name `$tagname` already exists - Don't add it"); return 0; } } if($multi){ $self->{xmlroot}{CONTENT}{$tagname} = []; } else{ $self->{xmlroot}{CONTENT}{$tagname} = {}; } return 1; } =item feedSection() Add information in inventory. =back =cut # Q: is that really useful()? Can't we merge with addSection()? sub feedSection{ my ($self, $args) = @_; my $tagname = $args->{tagname}; my $values = $args->{data}; my $logger = $self->{logger}; my $found=0; for( keys %{$self->{xmlroot}{CONTENT}} ){ $found = 1 if $tagname eq $_; } if(!$found){ $logger->debug("Tag name `$tagname` doesn't exist - Cannot feed it"); return 0; } if( $self->{xmlroot}{CONTENT}{$tagname} =~ /ARRAY/ ){ push @{$self->{xmlroot}{CONTENT}{$tagname}}, $args->{data}; } else{ $self->{xmlroot}{CONTENT}{$tagname} = $values; } return 1; } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/XML/SimpleMessage.pm010064400017500001750000000017031173606111100256420ustar00guiguiguiguipackage Ocsinventory::Agent::XML::SimpleMessage; use strict; use warnings; use Data::Dumper; # XXX Debug use XML::Simple; use Digest::MD5 qw(md5_base64); use Ocsinventory::Agent::XML::Prolog; sub new { my (undef, $params) = @_; my $self = {}; $self->{config} = $params->{config}; $self->{accountinfo} = $params->{accountinfo}; die unless ($self->{config}->{deviceid}); #XXX $self->{xmlroot}{QUERY} = ['PROLOG']; $self->{xmlroot}{DEVICEID} = [$self->{config}->{deviceid}]; bless $self; } sub dump { my $self = shift; print Dumper($self->{xmlroot}); } sub set { my ($self, $args) = @_; foreach (keys %$args) { $self->{xmlroot}{$_} = [$args->{$_}]; } } sub getContent { my ($self, $args) = @_; $self->{accountinfo}->setAccountInfo($self); my $content=XMLout( $self->{xmlroot}, RootName => 'REQUEST', XMLDecl => '', SuppressEmpty => undef ); return $content; } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/XML/Response004075500017500001750000000000001173606116100242745ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/XML/Response/Prolog.pm010064400017500001750000000060501173606111100261440ustar00guiguiguiguipackage Ocsinventory::Agent::XML::Response::Prolog; use strict; use Ocsinventory::Agent::XML::Response; our @ISA = ('Ocsinventory::Agent::XML::Response'); sub new { my ($class, @params) = @_; my $this = $class->SUPER::new(@params); bless ($this, $class); $this->updatePrologFreq(); $this->saveNextTime(); $this->displaySupportLog(); return $this; } sub isInventoryAsked { my $self = shift; my $parsedContent = $self->getParsedContent(['OPTION','PARAM']); if ($parsedContent && exists ($parsedContent->{RESPONSE}) && $parsedContent->{RESPONSE} =~ /^SEND$/) { return 1; } 0 } sub getOptionsInfoByName { my ($self, $name) = @_; my $parsedContent = $self->getParsedContent(['OPTION','PARAM']); my $ret = []; return unless ($parsedContent && $parsedContent->{OPTION}); foreach (@{$parsedContent->{OPTION}}) { if ($_->{NAME} && $_->{NAME} =~ /^$name$/i) { $ret = $_->{PARAM} } } return $ret; } sub updatePrologFreq { my $self = shift; my $parsedContent = $self->getParsedContent(['OPTION','PARAM']); my $logger = $self->{logger}; if ($parsedContent && exists ($parsedContent->{PROLOG_FREQ})) { if( $parsedContent->{PROLOG_FREQ} ne $self->{accountconfig}->get("PROLOG_FREQ")){ $logger->info("PROLOG_FREQ has changed since last process(old=".$self->{accountconfig}->get("PROLOG_FREQ").",new=".$parsedContent->{PROLOG_FREQ}.")"); $self->{prologFreqChanged} = 1; $self->{accountconfig}->set("PROLOG_FREQ", $parsedContent->{PROLOG_FREQ}); } else{ $logger->debug("PROLOG_FREQ has not changed since last process"); } } } sub saveNextTime { my ($self, $args) = @_; my $logger = $self->{logger}; if (!$self->{config}->{next_timefile}) { $logger->debug("no next_timefile to save!"); return; } my $parsedContent = $self->getParsedContent(['OPTION','PARAM']); if (!open NEXT_TIME, ">".$self->{config}->{next_timefile}) { $logger->error ("Cannot create the next_timefile `".$self->{config}->{next_timefile}."': $!"); return; } close NEXT_TIME or warn; my $serverdelay = $self->{accountconfig}->get('PROLOG_FREQ'); my $time; if( $self->{prologFreqChanged} ){ $logger->debug("Compute next_time file with random value"); $time = time + int rand(($serverdelay?$serverdelay*3600:$self->{config}->{delaytime})); } else{ $time = time + ($serverdelay?$serverdelay*3600:$self->{config}->{delaytime}); } utime $time,$time,$self->{config}->{next_timefile}; if ($self->{config}->{cron}) { $logger->info ("Next inventory after ".localtime($time)); } } sub displaySupportLog { my $self = shift; my $logger = $self->{logger}; my $parsedContent = $self->getParsedContent(['OPTION','PARAM']); if ($parsedContent->{SUPPORT_LOG}) { $logger->info("$parsedContent->{SUPPORT_LOG}") } else { $logger->info("No support detected. Registration key: N/A"); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/XML/Response/Inventory.pm010064400017500001750000000010701173606111100266740ustar00guiguiguiguipackage Ocsinventory::Agent::XML::Response::Inventory; use strict; use Ocsinventory::Agent::XML::Response; our @ISA = ('Ocsinventory::Agent::XML::Response'); sub new { my ($class, @params) = @_; my $this = $class->SUPER::new(@params); bless ($this, $class); my $parsedContent = $this->getParsedContent(['ACCOUNTINFO']); if ($parsedContent && exists ($parsedContent->{RESPONSE}) && $parsedContent->{RESPONSE} =~ /^ACCOUNT_UPDATE$/) { $this->{accountinfo}->writeAccountInfoFile($parsedContent->{ACCOUNTINFO}); } return $this; } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/XML/Response.pm010064400017500001750000000020551173606111100247030ustar00guiguiguiguipackage Ocsinventory::Agent::XML::Response; use strict; use warnings; use XML::Simple; use Data::Dumper; sub new { my (undef, $params) = @_; my $self = {}; $self->{accountconfig} = $params->{accountconfig}; $self->{accountinfo} = $params->{accountinfo}; $self->{content} = $params->{content}; $self->{config} = $params->{config}; $self->{common} = $params->{common}; my $logger = $self->{logger} = $params->{logger}; $self->{origmsg} = $params->{origmsg}; $logger->debug("=BEGIN=SERVER RET======"); $logger->debug(Dumper($self->{content})); $logger->debug("=END=SERVER RET======"); $self->{parsedcontent} = undef; bless $self; } sub getRawXML { my $self = shift; return $self->{content}; } sub getParsedContent { my ($self,$forcearray) = @_; if(!$self->{parsedcontent}) { $self->{parsedcontent} = $self->{common}->readXml($self->{content},$forcearray); } return $self->{parsedcontent}; } sub origMsgType { my ($self, $package) = @_; return ref($package); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/XML/Prolog.pm010064400017500001750000000013721173606111100243500ustar00guiguiguiguipackage Ocsinventory::Agent::XML::Prolog; use strict; use warnings; use XML::Simple; use Digest::MD5 qw(md5_base64); sub new { my (undef, $params) = @_; my $self = {}; $self->{config} = $params->{context}->{config}; $self->{logger} = $params->{context}->{logger}; die unless ($self->{config}->{deviceid}); #XXX $self->{xmlroot}{QUERY} = ['PROLOG']; $self->{xmlroot}{DEVICEID} = [$self->{config}->{deviceid}]; bless $self; } sub dump { my $self = shift; eval "use Data::Dumper;"; print Dumper($self->{xmlroot}); } sub getContent { my ($self, $args) = @_; my $content=XMLout( $self->{xmlroot}, RootName => 'REQUEST', XMLDecl => '', SuppressEmpty => undef ); return $content; } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/AccountInfo.pm010064400017500001750000000071751173606111100246650ustar00guiguiguiguipackage Ocsinventory::Agent::AccountInfo; use strict; use warnings; sub new { my (undef,$params) = @_; my $self = {}; bless $self; $self->{config} = $params->{config}; $self->{logger} = $params->{logger}; $self->{common} = $params->{common}; my $logger = $self->{logger} = $params->{logger}; if ($self->{config}->{accountinfofile}) { $logger->debug ('Accountinfo file: '. $self->{config}->{accountinfofile}); if (! -f $self->{config}->{accountinfofile}) { $logger->info ("Accountinfo file doesn't exist. I create an empty one."); $self->writeAccountInfoFile(); } else { my $xmladm; eval { $xmladm = $self->{common}->readXml($self->{config}->{accountinfofile}, [ 'ACCOUNTINFO' ]); }; if ($xmladm && exists($xmladm->{ACCOUNTINFO})) { # Store the XML content in a local HASH for(@{$xmladm->{ACCOUNTINFO}}){ if (!$_->{KEYNAME}) { $logger->debug ("Incorrect KEYNAME in ACCOUNTINFO"); } $self->{accountinfo}{ $_->{KEYNAME} } = $_->{KEYVALUE}; } } } } else { $logger->debug("No accountinfo file defined"); } if ($self->{config}->{tag}) { if ($self->{accountinfo}->{TAG}) { $logger->debug("A TAG seems to already exist in the ocsinv.adm file. ". "The -t paramter will be ignored. Don't forget that the TAG value ". "will ignored by the server unless it has OCS_OPT_ACCEPT_TAG_UPDATE_FROM_CLIENT=1."); } else { $self->{accountinfo}->{TAG} = $self->{config}->{tag}; } } $self; #Because we have already blessed the object } # Add accountinfo stuff to an inventory sub setAccountInfo { my $self = shift; my $inventory = shift; #my $ai = $self->getAll(); $self->{xmlroot}{'CONTENT'}{ACCOUNTINFO} = []; my $ai = $self->{accountinfo}; return unless $ai; foreach (keys %$ai) { push @{$inventory->{xmlroot}{'CONTENT'}{ACCOUNTINFO}}, { KEYNAME => [$_], KEYVALUE => [$ai->{$_}], }; } } sub writeAccountInfoFile { my ($self, $ref) = @_; my $logger = $self->{logger}; my $content; $content->{ACCOUNTINFO} = []; #We clear accountinfo to store the new one undef $self->{accountinfo}; #We get values sent by server if (ref ($ref) =~ /^ARRAY$/) { foreach (@$ref) { $self->{accountinfo}->{$_->{KEYNAME}} = $_->{KEYVALUE} if defined ($_->{KEYNAME}) && defined ($_->{KEYVALUE}); } } elsif (ref ($ref) =~ /^HASH$/) { $self->{accountinfo}->{$ref->{KEYNAME}} = $ref->{KEYVALUE} if defined ($ref->{KEYNAME}) && defined ($ref->{KEYVALUE}); } else { $logger->debug ("Invalid parameter while writing accountinfo file"); } #We feed our XML for accountinfo file foreach (keys %{$self->{accountinfo}}) { push @{$content->{ACCOUNTINFO}}, {KEYNAME => [$_], KEYVALUE => [$self->{accountinfo}{$_}]}; } my $xml=XML::Simple::XMLout($content, RootName => 'ADM', XMLDecl=> ''); #We write accountinfo file my $fault; if (!open ADM, ">".$self->{config}->{accountinfofile}) { $fault = 1; } else { print ADM $xml; $fault = 1 unless close ADM; } if (!$fault) { $logger->debug ("Account info updated successfully"); } else { $logger->error ("Can't save account info in `". $self->{config}->{accountinfofile}); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Network.pm010064400017500001750000000146471173606111100241100ustar00guiguiguiguipackage Ocsinventory::Agent::Network; # TODO: # - set the correct deviceID and olddeviceID use strict; use warnings; use LWP::UserAgent; use Socket; use Ocsinventory::Compress; sub new { my (undef, $params) = @_; my $self = {}; $self->{accountconfig} = $params->{accountconfig}; $self->{accountinfo} = $params->{accountinfo}; $self->{common} = $params->{common}; my $logger = $self->{logger} = $params->{logger}; $self->{config} = $params->{config}; my $uaserver; if ($self->{config}->{server} =~ /^http(|s):\/\//) { $self->{URI} = $self->{config}->{server}; $uaserver = $self->{config}->{server}; $uaserver =~ s/^http(|s):\/\///; $uaserver =~ s/\/.*//; if ($uaserver !~ /:\d+$/) { $uaserver .= ':443' if $self->{config}->{server} =~ /^https:/; $uaserver .= ':80' if $self->{config}->{server} =~ /^http:/; } } else { $self->{URI} = "http://".$self->{config}->{server}.$self->{config}->{remotedir}; $uaserver = $self->{config}->{server}; } $self->{compress} = new Ocsinventory::Compress ({logger => $logger}); # Connect to server $self->{ua} = LWP::UserAgent->new(keep_alive => 1); if ($self->{config}->{proxy}) { $self->{ua}->proxy(['http', 'https'], $self->{config}->{proxy}); } else { $self->{ua}->env_proxy; } my $version = 'OCS-NG_unified_unix_agent_v'; $version .= exists ($self->{config}->{VERSION})?$self->{config}->{VERSION}:''; $self->{ua}->agent($version); $self->{config}->{user}.",". $self->{config}->{password}.""; $self->{ua}->credentials( $uaserver, # server:port, port is needed $self->{config}->{realm}, $self->{config}->{user}, $self->{config}->{password} ); bless $self; } sub sendXML { my ($self, $args) = @_; my $logger = $self->{logger}; my $compress = $self->{compress}; my $message = $args->{message}; my $common = $self->{common}; my $req = HTTP::Request->new(POST => $self->{URI}); $req->header('Pragma' => 'no-cache', 'Content-type', 'application/x-compress'); $logger->debug ("sending XML"); $logger->debug ("sending: ".$message); my $compressed = $compress->compress($message); if (!$compressed) { $logger->error ('failed to compress data'); return; } $req->content($compressed); my $res = $self->{ua}->request($req); # Checking if connected if(!$res->is_success) { $logger->error ('Cannot establish communication : '.$res->status_line); return; } return $res ; } sub getXMLResp { my ($self, $res, $msgtype) = @_; my $logger = $self->{logger}; my $compress = $self->{compress}; #If no answer from OCS server return unless $res; #Reading the XML response from OCS server my $content = $compress->uncompress($res->content); if (!$content) { $logger->error ("Deflating problem"); return; } my $tmp = "Ocsinventory::Agent::XML::Response::".$msgtype; eval "require $tmp"; if ($@) { $logger->error ("Can't load response module $tmp: $@"); } $tmp->import(); my $response = $tmp->new ({ accountconfig => $self->{accountconfig}, accountinfo => $self->{accountinfo}, content => $content, logger => $logger, #origmsg => $message, config => $self->{config}, common => $self->{common}, }); return $response; } sub getHttpFile { my ($self,$uri,$filetoget,$filepath) = @_; my $url = "http://$uri/$filetoget"; $self->{ua}->mirror($url,$filepath); } sub getHttpsFile { my ($self, $uri, $filetoget, $filepath ,$certfile, $installpath) = @_ ; my $logger = $self->{logger}; my ($ctx, $ssl, $got); if ($self->{common}->can_load('Net::SSLeay')) { eval { $| = 1; $logger->debug('Initialize ssl layer...'); # Initialize openssl if ( -e '/dev/urandom') { $Net::SSLeay::random_device = '/dev/urandom'; $Net::SSLeay::how_random = 512; } else { srand (time ^ $$ ^ unpack "%L*", `ps wwaxl | gzip`); $ENV{RND_SEED} = rand 4294967296; } Net::SSLeay::randomize(); Net::SSLeay::load_error_strings(); Net::SSLeay::ERR_load_crypto_strings(); Net::SSLeay::SSLeay_add_ssl_algorithms(); #Create ctx object $ctx = Net::SSLeay::CTX_new() or die_now("Failed to create SSL_CTX $!"); Net::SSLeay::CTX_load_verify_locations( $ctx, "$installpath/$certfile", $installpath ) or die_now("CTX load verify loc: $!"); # Tell to SSLeay where to find AC file (or dir) Net::SSLeay::CTX_set_verify($ctx, &Net::SSLeay::VERIFY_PEER,0); Net::SSLeay::die_if_ssl_error('callback: ctx set verify'); my($server_name,$server_port,$server_dir); if($uri =~ /^([^:]+):(\d{1,5})(.*)$/){ $server_name = $1; $server_port = $2; $server_dir = $3; } elsif ($uri =~ /^([^\/]+)(.*)$/) { $server_name = $1; $server_dir = $2; $server_port = '443'; } $server_dir .= '/' unless $server_dir=~/\/$/; $server_name = gethostbyname ($server_name) or die; my $dest_serv_params = pack ('S n a4 x8', &AF_INET, $server_port, $server_name ); # Connect to server $logger->debug("Connect to server: $uri..."); socket (SOCKET, &AF_INET, &SOCK_STREAM, 0) or die "socket: $!"; connect (SOCKET, $dest_serv_params) or die "connect: $!"; # Flush socket select (SOCKET); $| = 1; select (STDOUT); $ssl = Net::SSLeay::new($ctx) or die_now("Failed to create SSL $!"); Net::SSLeay::set_fd($ssl, fileno(SOCKET)); # SSL handshake $logger->debug('Starting SSL connection...'); Net::SSLeay::connect($ssl); Net::SSLeay::die_if_ssl_error('callback: ssl connect!'); # Get file my $http_request = "GET /$server_dir/$filetoget HTTP/1.0\n\n"; Net::SSLeay::ssl_write_all($ssl, $http_request); shutdown SOCKET, 1; $got = Net::SSLeay::ssl_read_all($ssl); $got = (split("\r\n\r\n", $got))[1] or die; #Create file on disk open FILE, ">$filepath" or die("Cannot open info file: $!"); print FILE $got; close FILE; }; if($@){ $logger->error("Error: SSL hanshake has failed"); Net::SSLeay::free ($ssl) if $ssl; Net::SSLeay::CTX_free ($ctx); close SOCKET; return 0; } else { $logger->debug("Success. :-)"); Net::SSLeay::free ($ssl); Net::SSLeay::CTX_free ($ctx); close SOCKET; } } else { #Exit if can't load Net::SSLeay return 0; } 1; } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Common.pm010064400017500001750000000703301173606111100236760ustar00guiguiguigui############################################################################### ## OCSINVENTORY-NG ## Copyleft Guillaume PROTET 2010 ## Web : http://www.ocsinventory-ng.org ## ## This code is open source and may be copied and modified as long as the source ## code is always made freely available. ## Please refer to the General Public Licence http://www.gnu.org/ or Licence.txt ################################################################################ package Ocsinventory::Agent::Common; use strict; no strict 'refs'; use warnings; ################################################################################## # Ocsinventory::Agent::Common is use to give common methods to other modules # ################################################################################## sub new { my (undef, $params) = @_; my $self = {}; $self->{logger} = $params->{logger}; $self->{config} = $params->{config}; $self->{xmltags}={}; bless $self; } =item addController() Add a controller in the inventory. =cut sub addController { my ($self, $args) = @_; my $xmltags=$self->{xmltags}; my $driver = $args->{DRIVER}; my $name = $args->{NAME}; my $manufacturer = $args->{MANUFACTURER}; my $pciid = $args->{PCIID}; my $pcislot = $args->{PCISLOT}; my $type = $args->{TYPE}; push @{$xmltags->{CONTROLLERS}}, { DRIVER => [$driver?$driver:''], NAME => [$name], MANUFACTURER => [$manufacturer], PCIID => [$pciid?$pciid:''], PCISLOT => [$pcislot?$pcislot:''], TYPE => [$type], }; } =item addModem() Add a modem in the inventory. =cut sub addModem { my ($self, $args) = @_; my $xmltags=$self->{xmltags}; my $description = $args->{DESCRIPTION}; my $name = $args->{NAME}; push @{$xmltags->{MODEMS}}, { DESCRIPTION => [$description], NAME => [$name], }; } # For compatibiliy sub addModems { my $self = shift; my $logger = $self->{logger}; $logger->debug("please rename addModems to addModem()"); $self->addModem(@_); } =item addDrive() Add a partition in the inventory. =cut sub addDrive { my ($self, $args) = @_; my $xmltags=$self->{xmltags}; my $createdate = $args->{CREATEDATE}; my $free = $args->{FREE}; my $filesystem = $args->{FILESYSTEM}; my $label = $args->{LABEL}; my $serial = $args->{SERIAL}; my $total = $args->{TOTAL}; my $type = $args->{TYPE}; my $volumn = $args->{VOLUMN}; push @{$xmltags->{DRIVES}}, { CREATEDATE => [$createdate?$createdate:''], FREE => [$free?$free:''], FILESYSTEM => [$filesystem?$filesystem:''], LABEL => [$label?$label:''], SERIAL => [$serial?$serial:''], TOTAL => [$total?$total:''], TYPE => [$type?$type:''], VOLUMN => [$volumn?$volumn:''] }; } # For compatibiliy sub addDrives { my $self = shift; my $logger = $self->{logger}; $logger->debug("please rename addDrives to addDrive()"); $self->addDrive(@_); } =item addStorages() Add a storage system (hard drive, USB key, SAN volume, etc) in the inventory. =cut sub addStorages { my ($self, $args) = @_; my $xmltags=$self->{xmltags}; my $description = $args->{DESCRIPTION}; my $disksize = $args->{DISKSIZE}; my $manufacturer = $args->{MANUFACTURER}; my $model = $args->{MODEL}; my $name = $args->{NAME}; my $type = $args->{TYPE}; my $serial = $args->{SERIAL}; my $serialnumber = $args->{SERIALNUMBER}; my $firmware = $args->{FIRMWARE}; my $scsi_coid = $args->{SCSI_COID}; my $scsi_chid = $args->{SCSI_CHID}; my $scsi_unid = $args->{SCSI_UNID}; my $scsi_lun = $args->{SCSI_LUN}; $serialnumber = $serialnumber?$serialnumber:$serial; push @{$xmltags->{STORAGES}}, { DESCRIPTION => [$description?$description:''], DISKSIZE => [$disksize?$disksize:''], MANUFACTURER => [$manufacturer?$manufacturer:''], MODEL => [$model?$model:''], NAME => [$name?$name:''], TYPE => [$type?$type:''], SERIALNUMBER => [$serialnumber?$serialnumber:''], FIRMWARE => [$firmware?$firmware:''], SCSI_COID => [$scsi_coid?$scsi_coid:''], SCSI_CHID => [$scsi_chid?$scsi_chid:''], SCSI_UNID => [$scsi_unid?$scsi_unid:''], SCSI_LUN => [$scsi_lun?$scsi_lun:''], }; } # For compatibiliy sub addStorage { my $self = shift; my $logger = $self->{logger}; $logger->debug("please rename addStorages to addStorage()"); $self->addStorage(@_); } =item addMemory() Add a memory module in the inventory. =cut sub addMemory { my ($self, $args) = @_; my $xmltags=$self->{xmltags}; my $capacity = $args->{CAPACITY}; my $speed = $args->{SPEED}; my $type = $args->{TYPE}; my $description = $args->{DESCRIPTION}; my $caption = $args->{CAPTION}; my $numslots = $args->{NUMSLOTS}; my $serialnumber = $args->{SERIALNUMBER}; push @{$xmltags->{MEMORIES}}, { CAPACITY => [$capacity?$capacity:''], DESCRIPTION => [$description?$description:''], CAPTION => [$caption?$caption:''], SPEED => [$speed?$speed:''], TYPE => [$type?$type:''], NUMSLOTS => [$numslots?$numslots:0], SERIALNUMBER => [$serialnumber?$serialnumber:''] }; } # For compatibiliy sub addMemories { my $self = shift; my $logger = $self->{logger}; $logger->debug("please rename addMemories to addMemory()"); $self->addMemory(@_); } =item addPort() Add a port module in the inventory. =cut sub addPorts{ my ($self, $args) = @_; my $xmltags=$self->{xmltags}; my $caption = $args->{CAPTION}; my $description = $args->{DESCRIPTION}; my $name = $args->{NAME}; my $type = $args->{TYPE}; push @{$xmltags->{PORTS}}, { CAPTION => [$caption?$caption:''], DESCRIPTION => [$description?$description:''], NAME => [$name?$name:''], TYPE => [$type?$type:''], }; } # For compatibiliy sub addPort { my $self = shift; my $logger = $self->{logger}; $logger->debug("please rename addPorts to addPort()"); $self->addPort(@_); } =item addSlot() Add a slot in the inventory. =cut sub addSlot { my ($self, $args) = @_; my $xmltags=$self->{xmltags}; my $description = $args->{DESCRIPTION}; my $designation = $args->{DESIGNATION}; my $name = $args->{NAME}; my $status = $args->{STATUS}; push @{$xmltags->{SLOTS}}, { DESCRIPTION => [$description?$description:''], DESIGNATION => [$designation?$designation:''], NAME => [$name?$name:''], STATUS => [$status?$status:''], }; } # For compatibiliy sub addSlots { my $self = shift; my $logger = $self->{logger}; $logger->debug("please rename addSlots to addSlot()"); $self->addSlot(@_); } =item addSoftware() Register a software in the inventory. =cut sub addSoftware { my ($self, $args) = @_; my $xmltags=$self->{xmltags}; my $comments = $args->{COMMENTS}; my $filesize = $args->{FILESIZE}; my $folder = $args->{FOLDER}; my $from = $args->{FROM}; my $installdate = $args->{INSTALLDATE}; my $name = $args->{NAME}; my $publisher = $args->{PUBLISHER}; my $version = $args->{VERSION}; push @{$xmltags->{SOFTWARES}}, { COMMENTS => [$comments?$comments:''], FILESIZE => [$filesize?$filesize:''], FOLDER => [$folder?$folder:''], FROM => [$from?$from:''], INSTALLDATE => [$installdate?$installdate:''], NAME => [$name?$name:''], PUBLISHER => [$publisher?$publisher:''], VERSION => [$version], }; } # For compatibiliy sub addSoftwares { my $self = shift; my $logger = $self->{logger}; $logger->debug("please rename addSoftwares to addSoftware()"); $self->addSoftware(@_); } =item addMonitor() Add a monitor (screen) in the inventory. =cut sub addMonitor { my ($self, $args) = @_; my $xmltags=$self->{xmltags}; my $base64 = $args->{BASE64}; my $caption = $args->{CAPTION}; my $description = $args->{DESCRIPTION}; my $manufacturer = $args->{MANUFACTURER}; my $serial = $args->{SERIAL}; my $uuencode = $args->{UUENCODE}; push @{$xmltags->{MONITORS}}, { BASE64 => [$base64?$base64:''], CAPTION => [$caption?$caption:''], DESCRIPTION => [$description?$description:''], MANUFACTURER => [$manufacturer?$manufacturer:''], SERIAL => [$serial?$serial:''], UUENCODE => [$uuencode?$uuencode:''], }; } # For compatibiliy sub addMonitors { my $self = shift; my $logger = $self->{logger}; $logger->debug("please rename addMonitors to addMonitor()"); $self->addMonitor(@_); } =item addVideo() Add a video card in the inventory. =cut sub addVideo { my ($self, $args) = @_; my $xmltags=$self->{xmltags}; my $chipset = $args->{CHIPSET}; my $memory = $args->{MEMORY}; my $name = $args->{NAME}; my $resolution = $args->{RESOLUTION}; push @{$xmltags->{VIDEOS}}, { CHIPSET => [$chipset?$chipset:''], MEMORY => [$memory?$memory:''], NAME => [$name?$name:''], RESOLUTION => [$resolution?$resolution:''], }; } # For compatibiliy sub addVideos { my $self = shift; my $logger = $self->{logger}; $logger->debug("please rename addVideos to addVideo()"); $self->addVideo(@_); } =item addSound() Add a sound card in the inventory. =cut sub addSound { my ($self, $args) = @_; my $xmltags=$self->{xmltags}; my $description = $args->{DESCRIPTION}; my $manufacturer = $args->{MANUFACTURER}; my $name = $args->{NAME}; push @{$xmltags->{SOUNDS}}, { DESCRIPTION => [$description?$description:''], MANUFACTURER => [$manufacturer?$manufacturer:''], NAME => [$name?$name:''], }; } # For compatibiliy sub addSounds { my $self = shift; my $logger = $self->{logger}; $logger->debug("please rename addSounds to addSound()"); $self->addSound(@_); } =item addNetwork() Register a network in the inventory. =cut sub addNetwork { # TODO IPSUBNET, IPMASK IPADDRESS seem to be missing. my ($self, $args) = @_; my $xmltags=$self->{xmltags}; my $description = $args->{DESCRIPTION}; my $driver = $args->{DRIVER}; my $ipaddress = $args->{IPADDRESS}; my $ipdhcp = $args->{IPDHCP}; my $ipgateway = $args->{IPGATEWAY}; my $ipmask = $args->{IPMASK}; my $ipsubnet = $args->{IPSUBNET}; my $macaddr = $args->{MACADDR}; my $pcislot = $args->{PCISLOT}; my $status = $args->{STATUS}; my $type = $args->{TYPE}; my $virtualdev = $args->{VIRTUALDEV}; # return unless $ipaddress; push @{$xmltags->{NETWORKS}}, { DESCRIPTION => [$description?$description:''], DRIVER => [$driver?$driver:''], IPADDRESS => [$ipaddress?$ipaddress:''], IPDHCP => [$ipdhcp?$ipdhcp:''], IPGATEWAY => [$ipgateway?$ipgateway:''], IPMASK => [$ipmask?$ipmask:''], IPSUBNET => [$ipsubnet?$ipsubnet:''], MACADDR => [$macaddr?$macaddr:''], PCISLOT => [$pcislot?$pcislot:''], STATUS => [$status?$status:''], TYPE => [$type?$type:''], VIRTUALDEV => [$virtualdev?$virtualdev:''], }; } # For compatibiliy sub addNetworks { my $self = shift; my $logger = $self->{logger}; $logger->debug("please rename addNetworks to addNetwork()"); $self->addNetwork(@_); } =item setHardware() Save global information regarding the machine. The use of setHardware() to update USERID and PROCESSOR* informations is deprecated, please, use addUser() and addCPU() instead. =cut sub setHardware { my ($self, $args, $nonDeprecated) = @_; my $xmltags=$self->{xmltags}; my $logger = $self->{logger}; foreach my $key (qw/USERID OSVERSION PROCESSORN OSCOMMENTS CHECKSUM PROCESSORT NAME PROCESSORS SWAP ETIME TYPE OSNAME IPADDR WORKGROUP DESCRIPTION MEMORY UUID DNS LASTLOGGEDUSER DATELASTLOGGEDUSER DEFAULTGATEWAY VMSYSTEM/) { if (exists $args->{$key}) { if ($key eq 'PROCESSORS' && !$nonDeprecated) { $logger->debug("PROCESSORN, PROCESSORS and PROCESSORT shouldn't be set directly anymore. Please use addCPU() method instead."); } if ($key eq 'USERID' && !$nonDeprecated) { $logger->debug("USERID shouldn't be set directly anymore. Please use addCPU() method instead."); } $xmltags->{'HARDWARE'}{$key}[0] = $args->{$key}; } } } =item setBios() Set BIOS informations. =cut sub setBios { my ($self, $args) = @_; my $xmltags=$self->{xmltags}; foreach my $key (qw/SMODEL SMANUFACTURER SSN BDATE BVERSION BMANUFACTURER MMANUFACTURER MSN MMODEL ASSETTAG/) { if (exists $args->{$key}) { $xmltags->{'BIOS'}{$key}[0] = $args->{$key}; } } } =item addCPU() Add a CPU in the inventory. =cut sub addCPU { my ($self, $args) = @_; my $xmltags=$self->{xmltags}; # The CPU FLAG my $manufacturer = $args->{MANUFACTURER}; my $type = $args->{TYPE}; my $serial = $args->{SERIAL}; my $speed = $args->{SPEED}; push @{$xmltags->{CPUS}}, { MANUFACTURER => [$manufacturer], TYPE => [$type], SERIAL => [$serial], SPEED => [$speed], }; # For the compatibility with HARDWARE/PROCESSOR* my $processorn = int @{$xmltags->{CPUS}}; my $processors = $xmltags->{CPUS}[0]{SPEED}[0]; my $processort = $xmltags->{CPUS}[0]{TYPE}[0]; $self->setHardware ({ PROCESSORN => $processorn, PROCESSORS => $processors, PROCESSORT => $processort, }, 1); } =item addUser() Add an user in the list of logged user. =cut sub addUser { my ($self, $args) = @_; my $xmltags=$self->{xmltags}; # my $name = $args->{NAME}; # my $gid = $args->{GID}; my $login = $args->{LOGIN}; # my $uid = $args->{UID}; return unless $login; # Is the login, already in the XML ? foreach my $user (@{$xmltags->{USERS}}) { return if $user->{LOGIN}[0] eq $login; } push @{$xmltags->{USERS}}, { # NAME => [$name], # UID => [$uid], # GID => [$gid], LOGIN => [$login] }; my $userString = $xmltags->{HARDWARE}->{USERID}[0] || ""; $userString .= '/' if $userString; $userString .= $login; $self->setHardware ({ USERID => $userString, }, 1); } =item addPrinter() Add a printer in the inventory. =cut sub addPrinter { my ($self, $args) = @_; my $xmltags=$self->{xmltags}; my $description = $args->{DESCRIPTION}; my $driver = $args->{DRIVER}; my $name = $args->{NAME}; my $port = $args->{PORT}; push @{$xmltags->{PRINTERS}}, { DESCRIPTION => [$description?$description:''], DRIVER => [$driver?$driver:''], NAME => [$name?$name:''], PORT => [$port?$port:''], }; } # For compatibiliy sub addPrinters { my $self = shift; my $logger = $self->{logger}; $logger->debug("please rename addPrinters to addPrinter()"); $self->addPrinter(@_); } =item addVirtualMachine() Add a Virtual Machine in the inventory. =cut sub addVirtualMachine { my ($self, $args) = @_; my $xmltags=$self->{xmltags}; # The CPU FLAG my $memory = $args->{MEMORY}; my $name = $args->{NAME}; my $uuid = $args->{UUID}; my $status = $args->{STATUS}; my $subsystem = $args->{SUBSYSTEM}; my $vmtype = $args->{VMTYPE}; my $vcpu = $args->{VCPU}; my $vmid = $args->{VMID}; push @{$xmltags->{VIRTUALMACHINES}}, { MEMORY => [$memory], NAME => [$name], UUID => [$uuid], STATUS => [$status], SUBSYSTEM => [$subsystem], VMTYPE => [$vmtype], VCPU => [$vcpu], VMID => [$vmid], }; } =item addProcess() Record a running process in the inventory. =cut sub addProcess { my ($self, $args) = @_; my $xmltags=$self->{xmltags}; my $user = $args->{USER}; my $pid = $args->{PID}; my $cpu = $args->{CPUUSAGE}; my $mem = $args->{MEM}; my $vsz = $args->{VIRTUALMEMORY}; my $tty = $args->{TTY}; my $started = $args->{STARTED}; my $cmd = $args->{CMD}; push @{$xmltags->{PROCESSES}}, { USER => [$user?$user:''], PID => [$pid?$pid:''], CPUUSAGE => [$cpu?$cpu:''], MEM => [$mem?$mem:''], VIRTUALMEMORY => [$vsz?$vsz:0], TTY => [$tty?$tty:''], STARTED => [$started?$started:''], CMD => [$cmd?$cmd:''], }; } =item addIpDiscoverEntry() IpDiscover is used to identify network interface on the local network. This is done on the ARP level. This function adds a network interface in the inventory. =cut sub addIpDiscoverEntry { my ($self, $args) = @_; my $xmltags=$self->{xmltags}; my $ipaddress = $args->{IPADDRESS}; my $macaddr = $args->{MACADDR}; my $name = $args->{NAME}; if (!$xmltags->{IPDISCOVER}{H}) { $xmltags->{IPDISCOVER}{H} = []; } push @{$xmltags->{IPDISCOVER}{H}}, { # If I or M is undef, the server will ingore the host I => [$ipaddress?$ipaddress:""], M => [$macaddr?$macaddr:""], N => [$name?$name:"-"], # '-' is the default value reteurned by ipdiscover }; } =item setAccessLog() What is that for? :) =cut sub setAccessLog { my ($self, $args) = @_; foreach my $key (qw/USERID LOGDATE/) { if (exists $args->{$key}) { $self->{xmlroot}{'CONTENT'}{'ACCESSLOG'}{$key}[0] = $args->{$key}; } } } =item flushXMlTags() Clear the content of $common->{xmltags} (to use after adding it in XML) =cut sub flushXMLTags { my $self= shift; $self->{xmltags} = {}; } ### SNMP specifics subroutines #### sub getSnmpTable { my ($self,$snmp_table,$baseoid,$snmp_infos) = @_; #$snmp_infos is a hash passed for the SNMP informations we want to get #It has to be created like this : #my $hash = { # INFORMATION => OID, #}; my $results={}; #The final hash wich will contain one key per SNMP reference for my $oid ( keys %$snmp_table ) { if ( $oid =~ /$baseoid\.\d+\.\d+\.(\S+)/ ) { my $reference=$1; #Getting the last digits of the OID separated by a dot #Getting information if one the values from $snmp_infos hash is found for the current OID for my $value (keys %$snmp_infos) { if ($oid =~ /$snmp_infos->{$value}\.$reference/) { $results->{$reference}->{$value}= $snmp_table->{$oid} } } } } return $results; } sub setSnmpCommons { my ($self,$args)=@_; my $xmltags=$self->{xmltags}; foreach my $key (qw/IPADDR MACADDR SNMPDEVICEID NAME DESCRIPTION CONTACT LOCATION UPTIME DOMAIN TYPE / ) { if (exists $args->{$key}) { $xmltags->{COMMON}[0]{$key}[0]=$args->{$key}; } } } sub setSnmpPrinter { my ($self,$args)=@_; my $xmltags=$self->{xmltags}; foreach my $key (qw/NAME SERIALNUMBER COUNTER STATUS ERRORSTATE/ ) { if (exists $args->{$key}) { $xmltags->{PRINTERS}[0]{$key}[0]=$args->{$key}; } } } sub setSnmpSwitchInfos { my ($self,$args)=@_; my $xmltags=$self->{xmltags}; foreach my $key (qw/TYPE/ ) { if (exists $args->{$key}) { $xmltags->{SWITCHINFOS}[0]{$key}[0]=$args->{$key}; } } } sub setSnmpFirewalls { my ($self,$args)=@_; my $xmltags=$self->{xmltags}; foreach my $key (qw/SERIALNUMBER SYSTEM/ ) { if (exists $args->{$key}) { $xmltags->{FIREWALLS}[0]{$key}[0]=$args->{$key}; } } } sub setSnmpLoadBalancer { my ($self,$args)=@_; my $xmltags=$self->{xmltags}; foreach my $key (qw/SERIALNUMBER SYSTEM/ ) { if (exists $args->{$key}) { $xmltags->{LOADBALANCERS}[0]{$key}[0]=$args->{$key}; } } } sub setSnmpBlade { my ($self,$args)=@_; my $xmltags=$self->{xmltags}; foreach my $key (qw/SERIALNUMBER SYSTEM/ ) { if (exists $args->{$key}) { $xmltags->{BLADES}[0]{$key}[0]=$args->{$key}; } } } sub setSnmpComputer { my ($self,$args)=@_; my $xmltags=$self->{xmltags}; foreach my $key (qw/SYSTEM/ ) { if (exists $args->{$key}) { $xmltags->{COMPUTERS}[0]{$key}[0]=$args->{$key}; } } } sub addSnmpPrinterCartridge { my ($self,$args)=@_; my $xmltags=$self->{xmltags}; my $content={}; if ( ! defined ($xmltags->{CARDS})) { $xmltags->{CARTRIDGES}=[]; } foreach my $key (qw/DESCRIPTION TYPE LEVEL MAXCAPACITY COLOR/) { if (exists $args->{$key}) { $content->{$key}[0]=$args->{$key}; } } push @{$xmltags->{CARTRIDGES}},$content; } sub addSnmpPrinterTray { my ($self,$args)=@_; my $xmltags=$self->{xmltags}; my $content={}; if ( ! defined ($xmltags->{CARDS})) { $xmltags->{TRAYS}=[]; } foreach my $key (qw/NAME DESCRIPTION LEVEL MAXCAPACITY/) { if (exists $args->{$key}) { $content->{$key}[0]=$args->{$key}; } } push @{$xmltags->{TRAYS}},$content; } sub addSnmpNetwork { my ($self,$args)=@_; my $xmltags=$self->{xmltags}; my $content={}; if ( ! defined ($xmltags->{NETWORKS})) { $xmltags->{NETWORKS}=[]; } foreach my $key (qw/DESCRIPTION MACADDR DEVICEMACADDR SLOT STATUS SPEED TYPE DEVICEADDRESS DEVICENAME DEVICEPORT DEVICETYPE TYPEMIB IPADDR IPMASK IPGATEWAY IPSUBNET IPDHCP DRIVER VIRTUALDEV/) { if (exists $args->{$key}) { $content->{$key}[0]=$args->{$key}; } } #if ( exists $args->{VLAN}) { # $content->{VLAN}=$args->{VLAN}; #} push @{$xmltags->{NETWORKS}},$content; } sub addSnmpCard { my ($self,$args)=@_; my $xmltags=$self->{xmltags}; my $content={}; if ( ! defined ($xmltags->{CARDS})) { $xmltags->{CARDS}=[]; } foreach my $key (qw/DESCRIPTION REFERENCE FIRMWARE SOFTWARE REVISION SERIALNUMBER MANUFACTURER TYPE/) { if (exists $args->{$key}) { $content->{$key}[0]=$args->{$key}; } } push @{$xmltags->{CARDS}},$content; } sub addSnmpFan { my ($self,$args)=@_; my $xmltags=$self->{xmltags}; my $content={}; if ( ! defined ($xmltags->{FANS})) { $xmltags->{FANS}=[]; } foreach my $key (qw/DESCRIPTION REFERENCE REVISION SERIALNUMBER MANUFACTURER TYPE/) { if (exists $args->{$key}) { $content->{$key}[0]=$args->{$key}; } } push @{$xmltags->{FANS}},$content; } sub addSnmpPowerSupply { my ($self,$args)=@_; my $xmltags=$self->{xmltags}; my $content={}; if ( ! defined ($xmltags->{POWERSUPPLIES})) { $xmltags->{POWERSUPPLIES}=[]; } foreach my $key (qw/MANUFACTURER REFERENCE TYPE SERIALNUMBER DESCRIPTION REVISION/ ) { if (exists $args->{$key}) { $content->{$key}[0]=$args->{$key}; } } push @{$xmltags->{POWERSUPPLIES}},$content; } sub addSnmpSwitch { my ($self,$args)=@_; my $xmltags=$self->{xmltags}; my $content={}; if ( ! defined ($xmltags->{SWITCHS})) { $xmltags->{SWITCHS}=[]; } foreach my $key (qw/MANUFACTURER REFERENCE TYPE SOFTVERSION FIRMVERSION SERIALNUMBER REVISION DESCRIPTION/) { if (exists $args->{$key}) { $content->{$key}[0]=$args->{$key}; } } push @{$xmltags->{SWITCHS}},$content; } sub addSnmpLocalPrinter { my ($self,$args)=@_; my $xmltags=$self->{xmltags}; my $content={}; if ( ! defined ($xmltags->{LOCALPRINTERS})) { $xmltags->{LOCALPRINTERS}=[]; } foreach my $key (qw/NAME/) { if (exists $args->{$key}) { $content->{$key}[0]=$args->{$key}; } } push @{$xmltags->{LOCALPRINTERS}},$content; } sub addSnmpInput { my ($self,$args)=@_; my $xmltags=$self->{xmltags}; my $content={}; if ( ! defined ($xmltags->{INPUTS})) { $xmltags->{INPUTS}=[]; } foreach my $key (qw/DESCRIPTION TYPE/) { if (exists $args->{$key}) { $content->{$key}[0]=$args->{$key}; } } push @{$xmltags->{INPUTS}},$content; } sub addSnmpCPU { my ($self,$args)=@_; my $xmltags=$self->{xmltags}; my $content={}; if ( ! defined ($xmltags->{CPUS})) { $xmltags->{CPUS}=[]; } foreach my $key (qw/MANUFACTURER TYPE SPEED/) { if (exists $args->{$key}) { $content->{$key}[0]=$args->{$key}; } } push @{$xmltags->{CPUS}},$content; } #Subroutinne to add 0 in 'Sun like' MAC adress if needed sub padSnmpMacAddress { my ($self,$mac) = @_; my @splitedAddr = split(':', $mac); for (@splitedAddr) { unless ($_ =~ /\w{2}/) { $_ = sprintf("%02s", $_); } } $mac=join (':', @splitedAddr); return $mac; } sub cleanXml { my ($self,$content) = @_; my $logger = $self->{logger}; my $clean_content; # To avoid strange breakage I remove the unprintable characters in the XML foreach (split "\n", $content) { if (! m/\A( [\x09\x0A\x0D\x20-\x7E] # ASCII | [\xC2-\xDF][\x80-\xBF] # non-overlong 2-byte | \xE0[\xA0-\xBF][\x80-\xBF] # excluding overlongs | [\xE1-\xEC\xEE\xEF][\x80-\xBF]{2} # straight 3-byte | \xED[\x80-\x9F][\x80-\xBF] # excluding surrogates | \xF0[\x90-\xBF][\x80-\xBF]{2} # planes 1-3 | [\xF1-\xF3][\x80-\xBF]{3} # planes 4-15 | \xF4[\x80-\x8F][\x80-\xBF]{2} # plane 16 )*\z/x) { s/[[:cntrl:]]//g; $self->{logger}->debug("non utf-8 '".$_."'"); } # Is that a good idea. Intent to drop some nasty char # s/[A-z0-9_\-<>\/:\.,#\ \?="'\(\)]//g; $clean_content .= $_."\n"; } return $clean_content; } #Subroutine to read XML structure (returned by XML::Simple::XMLin) and encode content in utf8. sub readXml { my ($self, $xml, $forcearray) = @_; my $logger = $self->{logger}; my $content = XML::Simple::XMLin($xml, ForceArray => [@{$forcearray}]); foreach my $key (keys %$content) { if (grep(/^$key$/, @{$forcearray})) { #Forced array in XML parsing $self->parseXmlArray($content->{$key},$forcearray); } else { #Not a forced array in XML parsing if (ref ($content->{$key}) =~ /^HASH$/ && !keys %{$content->{$key}}) { # If empty hash from XMLin() $content->{$key} = ''; } else { utf8::encode($content->{$key}) }; } } return $content; } #Subroutine to parse array in XML structure (returned by XML::Simple::XMLin) and encode it in utf8 sub parseXmlArray { my ($self,$array,$forcearray) = @_; foreach my $hash (@{$array}) { foreach my $key (keys %$hash) { if ( grep (/^$key$/,@$forcearray)) { #Forced array in XML parsing $self->parseXmlArray($hash->{$key},$forcearray); } else { #Not a forced array in XML parsing if (ref ($hash->{$key}) =~ /^HASH$/ && !keys %{$hash->{$key}}) { # If empty hash from XMLin() $hash->{$key} = ''; } else { utf8::encode($hash->{$key}) }; } } } } #Subroutine to convert versions to numbers (with icutting or right padding if needed) # We create it because Perl 5.8 does not include version comparison modules or functions sub convertVersion { my ($self,$version,$length) = @_; $version =~ s/\.//g; #We convert to number my $ver_length = length ($version); if ($ver_length > $length) { # We cut the number $version = substr $version, 0, $length; } elsif ($ver_length < $length) { #We add 0 to the right $version = substr($version . (0 x $length), 0, $length); } return $version; } #We create this subroutine because MacOSX system_profiler XML output does not give all #the neeeded data (for videos and sounds for example) sub get_sysprofile_devices_names { my ($self,$type) = @_; return(undef) unless -r '/usr/sbin/system_profiler'; my $output=`system_profiler $type`; my $name; my $names=[]; #Code inspired from Mac::Sysprofile 0.03 from Daniel Muey for(split /\n/, $output) { next if m/^\s*$/ || m/^\w/; if(m/^\s{4}\w/) { $name = $_; $name =~ s/^\s+//; $name =~ s/:.*$//; push(@$names,$name); } } return $names; } ### Generic shared subroutines ##### sub can_run { my $self = shift; my $binary = shift; my $logger = $self->{logger}; my $calling_namespace = caller(0); chomp(my $binpath=`which $binary 2>/dev/null`); return unless -x $binpath; $self->{logger}->debug(" - $binary found"); 1; } sub can_load { my $self = shift; my $module = shift; my $logger = $self->{logger}; my $calling_namespace = caller(0); eval "package $calling_namespace; use $module;"; return if $@; $self->{logger}->debug(" - $module loaded"); 1; } sub can_read { my $self = shift; my $file = shift; my $logger = $self->{logger}; return unless -r $file; $self->{logger}->debug(" - $file can be read"); 1; } sub runcmd { my $self = shift; my $cmd = shift; my $logger = $self->{logger}; return unless $cmd; # $self->{logger}->debug(" - run $cmd"); return `$cmd`; } #### Old subroutines from the former Common.pm used by Download.pm ####### sub get_path{ my $self = shift; my $binary = shift; my $path; my @bin_directories = qw { /usr/local/sbin/ /sbin/ /usr/sbin/ /bin/ /usr/bin/ /usr/local/bin/ /etc/ocsinventory-client/}; print "\n=> retrieving $binary...\n" if $::debug; for(@bin_directories){ $path = $_.$binary,last if -x $_.$binary; } #For debbuging purposes if($path){ print "=> $binary is at $path\n\n" if $::debug; }else{ print "$binary not found (Maybe it is not installed ?) - Some functionnalities may lack !!\n\n"; } return $path; } sub already_in_array { my $self = shift; my $lookfor = shift; my @array = @_; foreach (@array){ if($lookfor eq $_){ return 1 ; } } return 0; } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/AccountConfig.pm010064400017500001750000000036211173606111100251670ustar00guiguiguiguipackage Ocsinventory::Agent::AccountConfig; use strict; use warnings; # AccountConfig read and write the setting for the client given by the server # This file will be overwrite and is not designed to be changed by the user # DESPITE ITS NAME, ACCOUNTCONFIG IS NOT A CONFIG FILE! sub new { my (undef,$params) = @_; my $self = {}; bless $self; $self->{config} = $params->{config}; my $logger = $self->{logger} = $params->{logger}; # Configuration reading $self->{xml} = {}; if ($self->{config}->{accountconfig}) { if (! -f $self->{config}->{accountconfig}) { $logger->debug ('accountconfig file: `'. $self->{config}->{accountconfig}. " doesn't exist. I create an empty one"); $self->write(); } else { eval { $self->{xml} = XML::Simple::XMLin( $self->{config}->{accountconfig}, SuppressEmpty => undef ); }; } } $self; } sub get { my ($self, $name) = @_; my $logger = $self->{logger}; return $self->{xml}->{$name} if $name; return $self->{xml}; } sub set { my ($self, $name, $value) = @_; my $logger = $self->{logger}; $self->{xml}->{$name} = $value; $self->write(); # save the change } sub write { my ($self, $args) = @_; my $logger = $self->{logger}; return unless $self->{config}->{accountconfig}; my $xml = XML::Simple::XMLout( $self->{xml} , RootName => 'CONF', NoAttr => 1 ); my $fault; if (!open CONF, ">".$self->{config}->{accountconfig}) { $fault = 1; } else { print CONF $xml; $fault = 1 if (!close CONF); } if (!$fault) { $logger->debug ("ocsinv.conf updated successfully"); } else { $logger->error ("Can't save setting change in `".$self->{config}->{accountconfig}."'"); } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Backend.pm010064400017500001750000000251041173606111100237740ustar00guiguiguiguipackage Ocsinventory::Agent::Backend; use strict; no strict 'refs'; use warnings; #use ExtUtils::Installed; sub new { my (undef, $params) = @_; my $self = {}; $self->{accountconfig} = $params->{context}->{accountconfig}; $self->{accountinfo} = $params->{context}->{accountinfo}; $self->{config} = $params->{context}->{config}; $self->{inventory} = $params->{inventory}; $self->{common} = $params->{context}->{common}; my $logger = $self->{logger} = $params->{context}->{logger}; $self->{prologresp} = $params->{prologresp}; $self->{modules} = {}; $self->{backendSharedFuncs} = { can_run => sub { my $binary = shift; my $calling_namespace = caller(0); chomp(my $binpath=`which $binary 2>/dev/null`); return unless -x $binpath; $self->{logger}->debug(" - $binary found"); 1 }, can_load => sub { my $module = shift; my $calling_namespace = caller(0); eval "package $calling_namespace; use $module;"; # print STDERR "$module not loaded in $calling_namespace! $!: $@\n" if $@; return if $@; $self->{logger}->debug(" - $module loaded"); # print STDERR "$module loaded in $calling_namespace!\n"; 1; }, can_read => sub { my $file = shift; return unless -r $file; $self->{logger}->debug(" - $file can be read"); 1; }, runcmd => sub { my $cmd = shift; return unless $cmd; # $self->{logger}->debug(" - run $cmd"); return `$cmd`; } }; bless $self; } sub initModList { my $self = shift; my $logger = $self->{logger}; my $config = $self->{config}; my @dirToScan; my @installed_mods; my @installed_files; # This is a workaround for PAR::Packer. Since it resets @INC # I can't find the backend modules to load dynamically. So # I prepare a list and include it. eval "use Ocsinventory::Agent::Backend::ModuleToLoad;"; if (!$@) { $logger->debug("use Ocsinventory::Agent::Backend::ModuleToLoad to get the modules ". "to load. This should not append unless you use the standalone agent built with ". "PAR::Packer (pp)"); push @installed_mods, @Ocsinventory::Agent::Backend::ModuleToLoad::list; } if ($config->{devlib}) { # devlib enable, I only search for backend module in ./lib push (@dirToScan, './lib'); } else { # my ($inst) = ExtUtils::Installed->new(); # eval {@installed_files = # $inst->files('Ocsinventory')}; # ExtUtils::Installed is nice but it needs properly installed package with # .packlist # This is a workaround for 'invalide' installations... foreach (@INC) { next if ! -d || (-l && -d readlink) || /^(\.|lib)$/; push @dirToScan, $_; } } if (@dirToScan) { eval {require File::Find}; if ($@) { $logger->debug("Failed to load File::Find"); } else { # here I need to use $d to avoid a bug with AIX 5.2's perl 5.8.0. It # changes the @INC content if i use $_ directly # thanks to @rgs on irc.perl.org File::Find::find( { wanted => sub { push @installed_files, $File::Find::name if $File::Find::name =~ /Ocsinventory\/Agent\/Backend\/.*\.pm$/; }, follow => 1, follow_skip => 2 } , @dirToScan); } } foreach my $file (@installed_files) { my $t = $file; next unless $t =~ s!.*?(Ocsinventory/Agent/Backend/)(.*?)\.pm$!$1$2!; my $m = join ('::', split /\//, $t); push @installed_mods, $m; } if (!@installed_mods) { $logger->info("ZERO backend module found! Is Ocsinventory-Agent ". "correctly installed? Use the --devlib flag if you want to run the agent ". "directly from the source directory.") } foreach my $m (@installed_mods) { my @runAfter; my @runMeIfTheseChecksFailed; my $enable = 1; if (exists ($self->{modules}->{$m}->{name})) { $logger->debug($m." already loaded."); next; } eval "use $m;"; if ($@) { $logger->debug ("Failed to load $m: $@"); $enable = 0; } my $package = $m."::"; # Load in the module the backendSharedFuncs foreach my $func (keys %{$self->{backendSharedFuncs}}) { $package->{$func} = $self->{backendSharedFuncs}->{$func}; } $self->{modules}->{$m}->{name} = $m; $self->{modules}->{$m}->{done} = 0; $self->{modules}->{$m}->{inUse} = 0; $self->{modules}->{$m}->{enable} = $enable; $self->{modules}->{$m}->{checkFunc} = $package->{"check"}; $self->{modules}->{$m}->{runAfter} = $package->{'runAfter'}; $self->{modules}->{$m}->{runMeIfTheseChecksFailed} = $package->{'runMeIfTheseChecksFailed'}; # $self->{modules}->{$m}->{replace} = \@replace; $self->{modules}->{$m}->{runFunc} = $package->{'run'}; $self->{modules}->{$m}->{mem} = {}; # Load the Storable object is existing or return undef $self->{modules}->{$m}->{storage} = $self->retrieveStorage($m); } # the sort is just for the presentation foreach my $m (sort keys %{$self->{modules}}) { next unless $self->{modules}->{$m}->{checkFunc}; # find modules to disable and their submodules if($self->{modules}->{$m}->{enable} && !$self->runWithTimeout( $m, $self->{modules}->{$m}->{checkFunc}, { accountconfig => $self->{accountconfig}, accountinfo => $self->{accountinfo}, config => $self->{config}, inventory => $self->{inventory}, logger => $self->{logger}, params => $self->{params}, # Compatibiliy with agent 0.0.10 <= prologresp => $self->{prologresp}, mem => $self->{modules}->{$m}->{mem}, storage => $self->{modules}->{$m}->{storage}, common => $self->{common}, })) { $logger->debug ($m." ignored"); foreach (keys %{$self->{modules}}) { $self->{modules}->{$_}->{enable} = 0 if /^$m($|::)/; } } # add submodule in the runAfter array my $t; foreach (split /::/,$m) { $t .= "::" if $t; $t .= $_; if (exists $self->{modules}->{$t} && $m ne $t) { push @{$self->{modules}->{$m}->{runAfter}}, \%{$self->{modules}->{$t}} } } } # Remove the runMeIfTheseChecksFailed if needed foreach my $m (sort keys %{$self->{modules}}) { next unless $self->{modules}->{$m}->{enable}; next unless $self->{modules}->{$m}->{runMeIfTheseChecksFailed}; foreach my $condmod (@{${$self->{modules}->{$m}->{runMeIfTheseChecksFailed}}}) { if ($self->{modules}->{$condmod}->{enable}) { foreach (keys %{$self->{modules}}) { next unless /^$m($|::)/ && $self->{modules}->{$_}->{enable}; $self->{modules}->{$_}->{enable} = 0; $logger->debug ("$_ disabled because of a 'runMeIfTheseChecksFailed' in '$m'\n"); } } } } } sub runMod { my ($self, $params) = @_; my $logger = $self->{logger}; my $m = $params->{modname}; my $common = $params->{common}; return if (!$self->{modules}->{$m}->{enable}); return if ($self->{modules}->{$m}->{done}); $self->{modules}->{$m}->{inUse} = 1; # lock the module # first I run its "runAfter" foreach (@{$self->{modules}->{$m}->{runAfter}}) { if (!$_->{name}) { # The name is defined during module initialisation so if I # can't read it, I can suppose it had not been initialised. $logger->fault ("Module `$m' need to be runAfter a module not found.". "Please fix its runAfter entry or add the module."); } if ($_->{inUse}) { # In use 'lock' is taken during the mod execution. If a module # need a module also in use, we have provable an issue :). $logger->fault ("Circular dependency hell with $m and $_->{name}"); } $self->runMod({ common => $common, modname => $_->{name}, }); } $logger->debug ("Running $m"); if ($self->{modules}->{$m}->{runFunc}) { $self->runWithTimeout( $m, $self->{modules}->{$m}->{runFunc}, { accountconfig => $self->{accountconfig}, accountinfo => $self->{accountinfo}, config => $self->{config}, common => $common, logger => $logger, params => $self->{params}, # For compat with agent 0.0.10 <= prologresp => $self->{prologresp}, mem => $self->{modules}->{$m}->{mem}, storage => $self->{modules}->{$m}->{storage}, common => $self->{common}, } ); } else { $logger->debug("$m has no run() function -> ignored"); } $self->{modules}->{$m}->{done} = 1; $self->{modules}->{$m}->{inUse} = 0; # unlock the module $self->saveStorage($m, $self->{modules}->{$m}->{storage}); } sub feedInventory { my ($self, $params) = @_; my $common = $self->{common}; my $inventory; if ($params->{inventory}) { $inventory = $params->{inventory}; } if (!keys %{$self->{modules}}) { $self->initModList(); } my $begin = time(); foreach my $m (sort keys %{$self->{modules}}) { die ">$m Houston!!!" unless $m; $self->runMod ({ common => $common, modname => $m, }); } # Execution time #$common->setHardware({ETIME => time() - $begin}); $inventory->{xmlroot}->{CONTENT} = $common->{xmltags}; } sub retrieveStorage { my ($self, $m) = @_; my $logger = $self->{logger}; my $storagefile = $self->{config}->{vardir}."/$m.storage"; if (!exists &retrieve) { eval "use Storable;"; if ($@) { $logger->debug("Storable.pm is not available, can't load Backend module data"); return; } } return (-f $storagefile)?retrieve($storagefile):{}; } sub saveStorage { my ($self, $m, $data) = @_; my $logger = $self->{logger}; # Perl 5.6 doesn't provide Storable.pm if (!exists &store) { eval "use Storable;"; if ($@) { $logger->debug("Storable.pm is not available, can't save Backend module data"); return; } } my $storagefile = $self->{config}->{vardir}."/$m.storage"; if ($data && keys (%$data)>0) { store ($data, $storagefile) or die; } elsif (-f $storagefile) { unlink $storagefile; } } sub runWithTimeout { my ($self, $m, $func, $params) = @_; my $logger = $self->{logger}; my $ret; eval { local $SIG{ALRM} = sub { die "alarm\n" }; # NB: \n require my $timeout = $params->{config}{backendCollectTimeout}; alarm $timeout; $ret = &{$func}($params); }; alarm 0; if ($@) { if ($@ ne "alarm\n") { $logger->debug("runWithTimeout(): unexpected error: $@"); } else { $logger->debug("$m killed by a timeout."); return; } } else { return $ret; } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent/Config.pm010064400017500001750000000161721173606111100236570ustar00guiguiguiguipackage Ocsinventory::Agent::Config; use strict; use Getopt::Long; our $VERSION = '2.0.5'; my $basedir = ''; my $default = { 'daemon' => 0, 'debug' => 0, 'devlib' => 0, 'force' => 0, 'help' => 0, 'info' => 1, 'lazy' => 0, 'local' => '', #'logger' => 'Syslog,File,Stderr', 'logger' => 'Stderr', 'logfile' => '', 'password' => '', 'proxy' => '', 'realm' => '', 'remotedir' => '/ocsinventory', # deprecated, give a complet URL to # --server instead 'server' => 'http://ocsinventory-ng/ocsinventory', 'stdout' => 0, 'tag' => '', 'user' => '', 'version' => 0, 'wait' => '', # 'xml' => 0, 'nosoft' => 0, # DEPRECATED! 'nosoftware'=> 0, 'delaytime' => '3600', # max delay time (seconds) 'backendCollectTimeout' => '600', # timeOut of process : see Backend.pm 'scanhomedirs' => 0, # Other values that can't be changed with the # CLI parameters 'VERSION' => $VERSION, 'deviceid' => '', 'basevardir'=> $basedir.'/var/lib/ocsinventory-agent', 'logdir' => $basedir.'/var/log/ocsinventory-agent', # 'pidfile' => $basedir.'/var/run/ocsinventory-agent.pid', }; sub new { my (undef, $params) = @_; my $self = {}; bless $self; $self->{file} = $params->{file}; $self->{config} = $default; $self->loadFromCfgFile(); return $self; } sub loadFromCfgFile { my $self = shift; my $config; $self->{config}{etcdir} = []; push (@{$self->{config}{etcdir}}, '/etc/ocsinventory'); push (@{$self->{config}{etcdir}}, '/usr/local/etc/ocsinventory'); push (@{$self->{config}{etcdir}}, '/etc/ocsinventory-agent'); push (@{$self->{config}{etcdir}}, $ENV{HOME}.'/.ocsinventory'); # Should I? my $file; if (!$file || !-f $file) { foreach (@{$self->{config}{etcdir}}) { $file = $_.'/ocsinventory-agent.cfg'; last if -f $file; } return $config unless -f $file; } $self->{configfile} = $file; if (!open (CONFIG, "<".$file)) { print(STDERR "Config: Failed to open $file\n"); return $config; } foreach () { s/#.+//; if (/(\w+)\s*=\s*(.+)/) { my $key = $1; my $val = $2; # Remove the quotes $val =~ s/\s+$//; $val =~ s/^'(.*)'$/$1/; $val =~ s/^"(.*)"$/$1/; $self->{config}{$key} = $val; } } close CONFIG; } sub loadUserParams { my $self = shift; my %options = ( "backend-collect-timeout=s" => \$self->{config}{backendCollectTimeout}, "basevardir=s" => \$self->{config}{basevardir}, "d|daemon" => \$self->{config}{daemon}, "debug" => \$self->{config}{debug}, "devlib" => \$self->{config}{devlib}, "f|force" => \$self->{config}{force}, "h|help" => \$self->{config}{help}, "i|info" => \$self->{config}{info}, "lazy" => \$self->{config}{lazy}, "l|local=s" => \$self->{config}{local}, "logfile=s" => \$self->{config}{logfile}, "nosoft" => \$self->{config}{nosoft}, "nosoftware" => \$self->{config}{nosoftware}, "p|password=s" => \$self->{config}{password}, "P|proxy=s" => \$self->{config}{proxy}, "r|realm=s" => \$self->{config}{realm}, "R|remotedir=s" => \$self->{config}{remotedir}, "s|server=s" => \$self->{config}{server}, "stdout" => \$self->{config}{stdout}, "t|tag=s" => \$self->{config}{tag}, "u|user=s" => \$self->{config}{user}, "version" => \$self->{config}{version}, "w|wait=s" => \$self->{config}{wait}, # "x|xml" => \$self->{config}{xml}, "delaytime" => \$self->{config}{delaytime}, "scan-homedirs" => \$self->{config}{scanhomedirs}, "nolocal" => \$self->{config}{nolocal}, ); $self->help() if (!GetOptions(%options) || $self->{config}{help}); $self->version() if $self->{config}{version}; } sub help { my ($self, $error) = @_; if ($error) { chomp $error; print "ERROR: $error\n\n"; } if ($self->{configfile}) { print STDERR "Setting initialised with values retrieved from ". "the config found at ".$self->{configfile}."\n"; } print STDERR "\n"; print STDERR "Usage:\n"; print STDERR "\t--backend-collect-timeout set a max delay time of one action (search package id, ...) is set (".$self->{config}{backendCollectTimeout}.")\n"; print STDERR "\t--basevardir=/path indicate the directory where should the agent store its files (".$self->{config}{basevardir}.")\n"; print STDERR "\t-d --daemon detach the agent in background (".$self->{config}{daemon}.")\n"; print STDERR "\t --debug debug mode (".$self->{config}{debug}.")\n"; print STDERR "\t --devlib search for Backend mod in ./lib only (".$self->{config}{devlib}.")\n"; print STDERR "\t-f --force always send data to server (Don't ask before) (".$self->{config}{force}.")\n"; print STDERR "\t-i --info verbose mode (".$self->{config}{info}.")\n"; print STDERR "\t--lazy do not contact the server more than one time during the PROLOG_FREQ (".$self->{config}{lazy}.")\n"; print STDERR "\t-l --local=DIR do not contact server but write ". "inventory in DIR directory in XML (".$self->{config}{local}.")\n"; print STDERR "\t --logfile=FILE log message in FILE (".$self->{config}{logfile}.")\n"; print STDERR "\t-p --password=PWD password for server auth\n"; print STDERR "\t-P --proxy=PROXY proxy address. e.g: http://user:pass\@proxy:port (".$self->{config}{proxy}.")\n"; print STDERR "\t-r --realm=REALM realm for server auth. e.g: 'Restricted Area' (".$self->{config}{realm}.")\n"; print STDERR "\t-s --server=uri server uri (".$self->{config}{server}.")\n"; print STDERR "\t --stdout do not write or post the inventory but print it on STDOUT\n"; print STDERR "\t-t --tag=TAG use TAG as tag (".$self->{config}{tag}."). ". "Will be ignored by server if a value already exists.\n"; print STDERR "\t-u --user=USER user for server auth (".$self->{config}{user}.")\n"; print STDERR "\t --version print the version\n"; print STDERR "\t-w --wait=seconds wait a random period before ". " contacting server like --daemon does (".$self->{config}{wait}.")\n"; # print STDERR "\t-x --xml write output in a xml file ($self->{config}{xml})\n"; print STDERR "\t--nosoft DEPRECATED, use --nosoftware instead\n"; print STDERR "\t--nosoftware do not return installed software list (".$self->{config}{nosoftware}.")\n"; print STDERR "\t--delaytime set a max delay time (in second) if no PROLOG_FREQ is set (".$self->{config}{delaytime}.")\n"; print STDERR "\t--scan-homedirs permit to scan home user directories (".$self->{config}{scanhomedirs}.")\n" ; print STDERR "\n"; print STDERR "Manpage:\n"; print STDERR "\tSee man ocsinventory-agent\n"; print STDERR "\n"; print STDERR "Ocsinventory-Agent is released under GNU GPL 2 license\n"; exit 1; } sub version { print "Ocsinventory unified agent for UNIX, Linux and MacOSX (".$VERSION.")\n"; exit 0; } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/LoggerBackend004075500017500001750000000000001173606116100234675ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/LoggerBackend/File.pm010064400017500001750000000010711173606111100247520ustar00guiguiguiguipackage Ocsinventory::LoggerBackend::File; use strict; sub new { my (undef, $params) = @_; my $self = {}; $self->{config} = $params->{config}; $self->{logfile} = $self->{config}->{logdir}."/".$self->{config}->{logfile}; bless $self; } sub addMsg { my ($self, $args) = @_; my $level = $args->{level}; my $message = $args->{message}; return if $message =~ /^$/; open FILE, ">>".$self->{config}->{logfile} or warn "Can't open ". "`".$self->{config}->{logfile}."'\n"; print FILE "[".localtime()."][$level] $message\n"; close FILE; } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/LoggerBackend/Syslog.pm010064400017500001750000000010451173606111100253540ustar00guiguiguiguipackage Ocsinventory::LoggerBackend::Syslog; # Not tested yet! use Sys::Syslog qw( :DEFAULT setlogsock); sub new { my (undef, $params) = @_; my $self = {}; setlogsock('unix'); openlog("ocs-agent", 'cons,pid', $ENV{'USER'}); syslog('debug', 'syslog backend enabled'); closelog(); bless $self; } sub addMsg { my (undef, $args) = @_; my $level = $args->{level}; my $message = $args->{message}; return if $message =~ /^$/; openlog("ocs-agent", 'cons,pid', $ENV{'USER'}); syslog('info', $message); closelog(); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/LoggerBackend/Stderr.pm010064400017500001750000000010541173606111100253370ustar00guiguiguiguipackage Ocsinventory::LoggerBackend::Stderr; sub new { my (undef, $params) = @_; my $self = {}; $self->{config} = $params->{config}; bless $self; } sub addMsg { my ($self, $args) = @_; my $level = $args->{level}; my $message = $args->{message}; return if $message =~ /^$/; # if STDERR has been hijacked, I take its saved ref my $stderr; if (exists ($self->{config}->{savedstderr})) { $stderr = $self->{config}->{savedstderr}; } else { open ($stderr, ">&STDERR"); } print $stderr "[$level] $message\n"; } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Agent.pm010064400017500001750000000352051173606111100224500ustar00guiguiguigui#!/usr/bin/perl package Ocsinventory::Agent; use strict; use warnings; # THIS IS AN UGLY WORKAROUND FOR # http://rt.cpan.org/Ticket/Display.html?id=38067 use XML::Simple; eval {XMLout("b");}; if ($@){ no strict 'refs'; ${*{"XML::SAX::"}{HASH}{'parsers'}} = sub { return [ { 'Features' => { 'http://xml.org/sax/features/namespaces' => '1' }, 'Name' => 'XML::SAX::PurePerl' } ] }; } # END OF THE UGLY FIX! require Exporter; use Ocsinventory::Logger; use Ocsinventory::Agent::XML::Inventory; use Ocsinventory::Agent::XML::Prolog; use Ocsinventory::Agent::Network; use Ocsinventory::Agent::Backend; use Ocsinventory::Agent::AccountConfig; use Ocsinventory::Agent::AccountInfo; use Ocsinventory::Agent::Config; use Ocsinventory::Agent::Hooks; #use Ocsinventory::Agent::Pid; use Ocsinventory::Agent::Common; sub run { # Load setting from the config file my $config = new Ocsinventory::Agent::Config; #$params->{$_} = $config->{$_} foreach (keys %$config); $ENV{LC_ALL} = 'C'; # Turn off localised output for commands $ENV{LANG} = 'C'; # Turn off localised output for commands ##################################### ################ MAIN ############### ##################################### ############################ #### CLI parameters ######## ############################ $config->loadUserParams(); # I close STDERR to avoid error message during the module execution # at the begining I was doing shell redirection: # my @ret = `cmd 2> /dev/null`; # but this syntax is not supported on (at least) FreeBSD and Solaris # c.f: http://www.perlmonks.org/?node_id=571072 #my $tmp; #open ($tmp, ">&STDERR"); #$params->{"savedstderr"} = $tmp; #if($params->{debug}) { # $params->{verbose} = 1; #} else { # close(STDERR); #} if ($config->{config}{logfile}) { $config->{config}{logger} = 'File'; } my $logger = new Ocsinventory::Logger ({ config => $config->{config} }); my $common = new Ocsinventory::Agent::Common({ logger => $logger, config => $config->{config}, }); # $< == $REAL_USER_ID if ( $< ne '0' ) { $logger->info("You should run this program as super-user."); } if (not $config->{config}{scanhomedirs}) { $logger->debug("--scan-homedirs missing. Don't scan user directories"); } if ($config->{config}{nosoft}) { $logger->info("the parameter --nosoft is deprecated and may be removed in a future release, please use --nosoftware instead."); $config->{config}{nosoftware} = 1 } # desactivate local mode even if it is set in config file or command line if (defined($config->{config}{nolocal})) { undef $config->{config}{'local'}; } # TODO put that in Ocsinventory::Agent::Config if (!$config->{config}{'stdout'} && !$config->{config}{'local'} && $config->{config}{server} !~ /^http(|s):\/\//) { $logger->debug("the --server passed doesn't have a protocol, assume http as default"); $config->{config}{server} = "http://".$config->{config}{server}.'/ocsinventory'; } ######################## Objects initilisation ############################################################### # The agent can contact different servers. Each server accountconfig is # stored in a specific file: if (!recMkdir ($config->{config}{basevardir})) { if (! -d $ENV{HOME}."/.ocsinventory/var") { $logger->info("Failed to create ".$config->{config}{basevardir}." directory: $!. ". "I'm going to use the home directory instead (~/.ocsinventory/var)."); } $config->{config}{basevardir} = $ENV{HOME}."/.ocsinventory/var"; if (!recMkdir ($config->{config}{basevardir})) { $logger->error("Failed to create ".$config->{config}{basedir}." directory: $!". "The HOSTID will not be written on the harddrive. You may have duplicated ". "entry of this computer in your OCS database"); } $logger->debug("var files are stored in ".$config->{config}{basevardir}); } if (defined($config->{config}{server}) && $config->{config}{server}) { my $dir = $config->{config}{server}; $dir =~ s/\//_/g; $config->{config}{vardir} = $config->{config}{basevardir}."/".$dir; if (defined ($config->{config}{local}) && $config->{config}{local}) { $logger->debug ("--server ignored since you also use --local"); $config->{config}{server} = undef; } } elsif (defined($config->{config}{local}) && $config->{config}{local}) { $config->{config}{vardir} = $config->{config}{basevardir}."/__LOCAL__"; } if (!recMkdir ($config->{config}{vardir})) { $logger->error("Failed to create ".$config->{config}{vardir}." directory: $!"); } if (-d $config->{config}{vardir}) { $config->{config}{accountconfig} = $config->{config}{vardir}."/ocsinv.conf"; $config->{config}{accountinfofile} = $config->{config}{vardir}."/ocsinv.adm"; $config->{config}{last_statefile} = $config->{config}{vardir}."/last_state"; $config->{config}{next_timefile} = $config->{config}{vardir}."/next_timefile"; } ################################################################################################################ ########################## load CFG files ###################################################################### my $accountconfig = new Ocsinventory::Agent::AccountConfig({ logger => $logger, config => $config->{config}, }); my $srv = $accountconfig->get('OCSFSERVER'); $config->{config}{server} = $srv if $srv; $config->{config}{deviceid} = $accountconfig->get('DEVICEID'); # Should I create a new deviceID? chomp(my $hostname = `uname -n| cut -d . -f 1`); if ((!$config->{config}{deviceid}) || $config->{config}{deviceid} !~ /\Q$hostname\E-(?:\d{4})(?:-\d{2}){5}/) { my ($YEAR, $MONTH , $DAY, $HOUR, $MIN, $SEC) = (localtime(time))[5,4,3,2,1,0]; $config->{config}{old_deviceid} = $config->{config}{deviceid}; $config->{config}{deviceid} =sprintf "%s-%02d-%02d-%02d-%02d-%02d-%02d", $hostname, ($YEAR+1900), ($MONTH+1), $DAY, $HOUR, $MIN, $SEC; $accountconfig->set('DEVICEID',$config->{config}{deviceid}); } my $accountinfo = new Ocsinventory::Agent::AccountInfo({ logger => $logger, # TODOparams => $params, config => $config->{config}, common => $common, }); # --lazy if ($config->{config}{lazy}) { my $nexttime = (stat($config->{config}{next_timefile}))[9]; if ($nexttime && $nexttime > time) { $logger->info("[Lazy] Must wait until ".localtime($nexttime)." exiting..."); exit 0; } } if ($config->{config}{daemon}) { $logger->debug("Time to call Proc::Daemon"); eval { require Proc::Daemon; }; if ($@) { print "Can't load Proc::Daemon. Is the module installed?"; exit 1; } Proc::Daemon::Init(); $logger->debug("Daemon started"); if (isAgentAlreadyRunning({ logger => $logger, })) { $logger->debug("An agent is already runnnig, exiting..."); exit 1; } } $logger->debug("OCS Agent initialised"); ################# Now we can create a context hash ######################################################### my $context = { installpath => $config->{config}->{vardir}, servername => $config->{config}->{server}, authuser => $config->{config}->{user}, authpwd => $config->{config}->{password}, authrealm => $config->{config}->{realm}, deviceid => $config->{config}->{deviceid}, version => $config->{VERSION}, config => $config->{config}, accountconfig => $accountconfig, accountinfo => $accountinfo, logger => $logger, common => $common, #OCS_AGENT_CMDL => "TOTO", # TODO cmd line parameter changed with the unified agent }; ################################# HERE WE GO !!! ################################################### while (1) { my $exitcode = 0; my $wait; if ($config->{config}{daemon} || $config->{config}{wait}) { my $serverdelay; if(($config->{config}{wait} eq 'server') || ($config->{config}{wait}!~/^\d+$/)){ $serverdelay = $accountconfig->get('PROLOG_FREQ')*3600; } else{ $serverdelay = $config->{config}{wait}; } $wait = int rand($serverdelay?$serverdelay:$config->{config}{delaytime}); $logger->info("Going to sleep for $wait second(s)"); sleep ($wait); } # Create an hook object to use handlers of modules. my $hooks = new Ocsinventory::Agent::Hooks($context); #Using start_handler hook $hooks->run({name => 'start_handler'}); #################### Local Mode ####################### if ($config->{config}{stdout} || $config->{config}{local}) { # TODO, avoid to create Backend at two different places my $backend = new Ocsinventory::Agent::Backend ({ context => $context, }); my $inventory = new Ocsinventory::Agent::XML::Inventory ({ # TODO, check if the accoun{info,config} are needed in localmode backend => $backend, context => $context, }); #Launching inventory $inventory->initialise(); #Using inventory_writer hook $hooks->run({name => 'inventory_handler'}, $inventory); if ($config->{config}{stdout}) { $inventory->printXML(); } elsif ($config->{config}{local}) { $inventory->writeXML(); } } else { ############ I've to contact the server ########################" my $network = new Ocsinventory::Agent::Network ({ accountconfig => $accountconfig, accountinfo => $accountinfo, logger => $logger, config => $config->{config}, common => $common, }); #Adding the network object in $context $context->{network}= $network; my $sendInventory = 1; my $httpresp; my $prologresp; if (!$config->{config}{force}) { my $prolog = new Ocsinventory::Agent::XML::Prolog({ context => $context, }); #Using prolog_writer hook $hooks->run({name => 'prolog_writer'}, $prolog); #Formatting the XML my $prologXML = $prolog->getContent(); $httpresp = $network->sendXML({message => $prologXML}); $prologresp = $network->getXMLResp($httpresp,'Prolog'); if ($prologresp) { #Using prolog_reader hook $hooks->run({name => 'prolog_reader'}, $prologresp->getRawXML()); if (!$prologresp->isInventoryAsked()) { $sendInventory = 0; } } else { # Failed to reach the server if ($config->{config}{lazy}) { # To avoid flooding a heavy loaded server my $previousPrologFreq; if( ! ($previousPrologFreq = $accountconfig->get('PROLOG_FREQ') ) ){ $previousPrologFreq = $config->{config}{delaytime}; $logger->info("No previous PROLOG_FREQ found - using fallback delay(".$config->{config}{delaytime}." seconds)"); } else{ $logger->info("Previous PROLOG_FREQ found ($previousPrologFreq)"); $previousPrologFreq = $previousPrologFreq*3600; } my $time = time + $previousPrologFreq; utime $time,$time,$config->{config}{next_timefile}; } exit 1 unless $config->{config}{daemon}; $sendInventory = 0; } } if (!$sendInventory) { $logger->info("Don't send the inventory"); } else { # Send the inventory! my $backend = new Ocsinventory::Agent::Backend ({ prologresp => $prologresp, context => $context, }); my $inventory = new Ocsinventory::Agent::XML::Inventory ({ # TODO, check if the accoun{info,config} are needed in localmode backend => $backend, context => $context, }); #Launching inventory $inventory->initialise(); #Using inventory_writer hook $hooks->run({name => 'inventory_handler'}, $inventory); #Formatting the XML my $inventoryXML = $inventory->getContent(); #Sending Inventory $httpresp = $network->sendXML({message => $inventoryXML}); if (my $invresp = $network->getXMLResp($httpresp,'Inventory')) { $inventory->saveLastState(); } else { exit (1) unless $config->{config}{daemon}; } } } #Using end_handler_hook $hooks->run({name => 'end_handler'}); exit (0) unless $config->{config}{daemon}; } ########################################## ############Functions##################### ########################################## sub recMkdir { my $dir = shift; my @t = split /\//, $dir; shift @t; return unless @t; my $t; foreach (@t) { $t .= '/'.$_; if ((!-d $t) && (!mkdir $t)) { return; } } 1; } sub isAgentAlreadyRunning { my $params = shift; my $logger = $params->{logger}; # TODO add a workaround if Proc::PID::File is not installed eval { require Proc::PID::File; }; if(!$@) { $logger->debug('Proc::PID::File available, checking for pid file'); if (Proc::PID::File->running()) { $logger->debug('parent process already exists'); return 1; } } return 0; } } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Logger.pm010064400017500001750000000041721173606111100226300ustar00guiguiguiguipackage Ocsinventory::Logger; # TODO use Log::Log4perl instead. use Carp; sub new { my (undef, $params) = @_; my $self = {}; bless $self; $self->{backend} = []; $self->{config} = $params->{config}; $self->{debug} = $self->{config}->{debug}?1:0; my @logger; if (exists ($self->{config}->{logger})) { @logger = split /,/, $self->{config}->{logger}; } else { # if no 'logger' parameter exist I use Stderr as default backend push @logger, 'Stderr'; } my @loadedMbackends; foreach (@logger) { my $backend = "Ocsinventory::LoggerBackend::".$_; eval ("require $backend"); # TODO deal with error if ($@) { print STDERR "Failed to load Logger backend: $backend ($@)\n"; next; } else { push @loadedMbackends, $_; } my $obj = new $backend ({ config => $self->{config}, }); push @{$self->{backend}}, $obj if $obj; } my $version = "Ocsinventory unified agent for UNIX, Linux and MacOSX "; $version .= exists ($self->{config}->{VERSION})?$self->{config}->{VERSION}:''; $self->debug($version."\n"); $self->debug("Log system initialised (@loadedMbackends)"); $self; } sub log { my ($self, $args) = @_; # levels: info, debug, warn, fault my $level = $args->{level}; my $message = $args->{message}; my $header = $self->{header}; return if ($level =~ /^debug$/ && !($self->{debug})); chomp($message); #Add a header to message if needed $message="$header $message" if $header; $level = 'info' unless $level; foreach (@{$self->{backend}}) { $_->addMsg ({ level => $level, message => $message }); } confess if $level =~ /^fault$/; # Die with a backtace } sub debug { my ($self, $msg) = @_; $self->log({ level => 'debug', message => $msg}); } sub info { my ($self, $msg) = @_; $self->log({ level => 'info', message => $msg}); } sub error { my ($self, $msg) = @_; $self->log({ level => 'error', message => $msg}); } sub fault { my ($self, $msg) = @_; $self->log({ level => 'fault', message => $msg}); } sub user { my ($self, $msg) = @_; $self->log({ level => 'user', message => $msg}); } 1; Ocsinventory-Unix-Agent-2.0.5/lib/Ocsinventory/Compress.pm010064400017500001750000000050001173606111100231730ustar00guiguiguiguipackage Ocsinventory::Compress; use strict; use File::Temp qw/ tempdir tempfile /; sub new { my (undef, $params) = @_; my $self = {}; my $logger = $self->{logger} = $params->{logger}; eval{require Compress::Zlib;}; $self->{mode} = 'natif' unless $@; chomp(my $gzippath=`which gzip 2>/dev/null`); if ($self->{mode} eq 'natif') { $logger->debug ('Compress::Zlib is available.'); } elsif (-x $gzippath) { $logger->debug ( 'Compress::Zlib is not available! The data will be compressed with gzip instead but won\'t be accepted by server prior 1.02'); $self->{mode} = 'gzip'; $self->{tmpdir} = tempdir( CLEANUP => 1 ); mkdir $self->{tmpdir}; if ( ! -d $self->{tmpdir} ) { $logger->fault("Failed to create the temp dir `$self->{tmpdir}'"); } } else { $self->{mode} = 'deflated'; $logger->debug ('I need the Compress::Zlib library or the gzip'. ' command to compress the data - The data will be sent uncompressed but won\'t be accepted by server prior 1.02'); } bless $self; } sub compress { my ($self, $content) = @_; my $logger = $self->{logger}; # native mode (zlib) if ($self->{mode} eq 'natif') { return Compress::Zlib::compress($content); } # gzip mode elsif($self->{mode} eq 'gzip'){ my ($fh, $filename) = tempfile( DIR => $self->{tmpdir} ); print $fh $content; close $fh; system ("gzip --best $filename > /dev/null"); # print "filename ".$filename."\n"; my $ret; open FILE, "<$filename.gz"; $ret .= $_ foreach (); close FILE; if ( ! unlink "$filename.gz" ) { $logger->debug("Failed to remove `$filename.gz'"); } return $ret; } # No compression available elsif($self->{mode} eq 'deflated'){ return $content; } } sub uncompress { my ($self,$data) = @_; my $logger = $self->{logger}; # Native mode if ($self->{mode} eq 'natif') { return Compress::Zlib::uncompress($data); } elsif($self->{mode} eq 'gzip'){ # Gzip mode my ($fh, $filename) = tempfile( DIR => $self->{tmpdir}, SUFFIX => '.gz' ); print $fh $data; close $fh; system ("gzip -d $filename"); my ($uncompressed_filename) = $filename =~ /(.*)\.gz$/; my $ret; open FILE, "<$uncompressed_filename"; $ret .= $_ foreach (); close FILE; if ( ! unlink "$uncompressed_filename" ) { $logger->debug("Failed to remove `$uncompressed_filename'"); } return $ret; } # No compression available elsif($self->{mode} eq 'deflated'){ return $data; } } 1; Ocsinventory-Unix-Agent-2.0.5/tools004075500017500001750000000000001173606116100166705ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/tools/macosx004075500017500001750000000000001173606116100201625ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/tools/macosx/installer_gui004075500017500001750000000000001173606116100230235ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/tools/macosx/installer_gui/ocs_agent_config004075500017500001750000000000001173606116100263125ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/tools/macosx/installer_gui/ocs_agent_config/French.lproj004075500017500001750000000000001173606116100306445ustar00guiguiguiguitools/macosx/installer_gui/ocs_agent_config/French.lproj/InfoPlist.strings010064400017500001750000000014441173606111100341610ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5ÿþ// // OCSINVENTORY-NG // // Copyleft Guillaume PROTET 2011 // // // This code is open source and may be copied and modified as long as the source // code is always made freely available. // Please refer to the General Public Licence http://www.gnu.org/ // // //Localized versions of Info.plist keys NSHumanReadableCopyright = "OCS Inventory NG Team, 2011"; InstallerSectionTitle = "Configuration"; tools/macosx/installer_gui/ocs_agent_config/French.lproj/Localizable.strings010064400017500001750000000052521173606111100344740ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5ÿþ// // OCSINVENTORY-NG // // Copyleft Guillaume PROTET 2011 // // // This code is open source and may be copied and modified as long as the source // code is always made freely available. // Please refer to the General Public Licence http://www.gnu.org/ // // // Localized versions of Info.plist keys PaneTitle = "Configuration de l'agent OCS"; //Yes button "Yes" = "Oui"; //No button "No" = "Non"; //Warning about already existing cofiguration file "Already_conf_warn" = "Le fichier de configuration de l'agent OCS semble déjà exister. Voulez-vous procéder à la configuration de l'agent OCS Inventory NG ?"; //Warning about already existing cofiguration file comment "Already_conf_warn_comment" = "Le fichier /etc/ocsinventory-agent/ocsinventory-agent.cfg sera écrasé"; //Warning about missing certificate file "Missing_cert_warn" = "Vous avez activé la fonctionnalité de télé-déploiement mais vous n'avez pas spécifié de fichier certificat"; //Warning about missing certificate file comment "Missing_cert_warn_comment" = "Si vous ne spécifiez pas de fichier certificat, la fonctionnalité de télé-déploiment ne fonctionnera pas"; //Warning about invalid server address "Invalid_srv_addr" = "Adresse du server OCS invalide"; //Warning about invalid server address comment "Invalid_srv_addr_comment" = "Veuillez saisir de nouveau l'adresse du serveur OCS";tools/macosx/installer_gui/ocs_agent_config/French.lproj/ocs_agent_config.nib004075500017500001750000000000001173606116100346235ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5tools/macosx/installer_gui/ocs_agent_config/French.lproj/ocs_agent_config.nib/keyedobjects.nib010064400017500001750000000261201173606111100400400ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5bplist00Ô;?\NSMutableSet£>@7UNSSetÒ:BC€f«DEFGHIJKLMN€ €€#€€ƒ€…€‡€‰€‹€€ÔPQRSTU WNSLabel]NSDestinationXNSSource€ € € €Ò./Y€€ _ocs_agent_configPaneYfirstPaneÒ34]^_NSNibOutletConnector£]_7^NSNibConnectorÔPQRSbcU€ €"€€ ØfghijklmnopqrptYNSEnabledWNSFrameVNSCell[NSSuperviewXNSvFlags_NSNextResponderXNSWindow €€€€!€€Ùvij.kwlxyz{|}tt[NSExtension[NSFrameSizeZNSSubviews€~€€|€}€€{€€$_{{20, 50}, {269, 22}}Ù„…†‡ˆ‰Š‹ŒŽc‘’m”[NSCellFlags\NSCellFlags2ZNSContents]NSControlView[NSTextColorYNSSupport_NSDrawsBackground_NSBackgroundColorÿÿÿÿ„qþA@€€€ €€ €PÔ—˜™š›œVNSNameVNSSizeXNSfFlags€€#@*\LucidaGrandeÒ34 ¡VNSFont¢ 7Õ£¤¥¦§¨©ª«]NSCatalogName[NSColorName\NSColorSpaceWNSColor€€€€VSystem_textBackgroundColorÓ¥¯¨±²WNSWhite€B1Ò34´µWNSColor¢´7Õ£¤¥¦§¨¹ªº€€€€YtextColorÓ¥¯¨±¾€B0Ò34ÀÁ_NSTextFieldCell¤ÀÂÃ7\NSActionCellVNSCellÒ34ÅÆ[NSTextField¥ÅÇÈÉ7YNSControlVNSView[NSResponderZcacertfileÔPQRSÍpU€ €€€€ Ò:BÒ€f®ÓÔÕÖרÙÚÛÜcÞßà€%€2€5€>€A€E€I€L€P€j€€o€s€wØfghijklmãäpæçpt €&€'€ €1€€_{{263, 131}, {146, 30}}Þì„í…îïð†‡ñ‰òóôõö÷ŽŽúûÓýþ’_NSPeriodicInterval]NSButtonFlags_NSAlternateContents_NSKeyEquivalent]NSNormalImage_NSAlternateImage_NSPeriodicDelay^NSButtonFlags2þHÕA’Cþ@€8€5€ €<€€9_URL du serveur OCS:Õ£¤¥¦§¨HªI€€€:€;\controlColorÓ¥¯¨±M€M0.6666666667Õ£¤¥¦§¨Qªº€€€=€_controlTextColorØfghijklmVWpYrpt €?€@€€!€€_{{19, 120}, {146, 22}}Ù„…†‡ˆ‰Š‹_`ŽÖ‘’m”ÿÿÿÿ”qþA@€€>€ €€ €Øfghijklmjkpmrpt €B€C€€!€€_{{17, 133}, {191, 34}}Ø„…†‡ˆ‰‹stu×A’Cþ@€D€A€ €<€€9_Valeur du TAG (optionnel):Øfghijklm~prpt €F€G€€!€€_{{262, 258}, {95, 17}}Ø„…†‡ˆ‰‹‡ˆ‰ØA’Cþ@€H€E€ €<€€9^/ocsinventory Øfghijklm’“p•rpt €J€K€€!€€_{{20, 189}, {185, 22}}Ù„…†‡ˆ‰Š‹›œŽÙ‘’m”ÿÿÿÿ”qþA@€€I€ €€ €Øfghijklm¦§p©rpt €M€N€€!€€_{{17, 202}, {191, 34}}Ø„…†‡ˆ‰‹¯°±ÚA’Cþ@€O€L€ €<€€9_Chemin du fichier de logs :Øfghijklmº»p½¾pt €Q€R€€i€€_{{17, 252}, {98, 26}}ßìÄí…îïñ‡ÄÅƉòÇÈÉóʱËÌÍŽÏÐÛÒmÔ’ÖmmÙÚÙ_NSPreferredEdgeZNSMenuItem_NSMenuItemRespectAlignmentVNSMenu_NSUsesItemFromMenu]NSAltersState_NSArrowPositionKÿÿÿÿ„Aþ@‚@ÿ€€T€S€P€V €W€ €hÔ—˜™š›Þ߀€#@*ÒáâãYNS.string€UPÒ34åæ_NSMutableString£åç7XNSStringÛéêëÆìíîïðñòóÙÔõ»÷ŽùúŽXNSAction_NSKeyEquivModMaskWNSStateYNSOnImageXNSTargetZNSKeyEquiv]NSMnemonicLoc\NSMixedImageWNSTitle€\€W€X€R€]€ÿÿÿ€Z€Óýñþÿ[NSMenuItems€_€g€^Ó.€,€Y€*_NSMenuCheckmarkÓ.€,€[€*_NSMenuMixedState__popUpItemAction:Ò34 ZNSMenuItem¢ 7ZOtherViewsÒ:B€f£Ò€V€`€cÚéêÆìíîïðñÔõ»÷Žú €b€W€X€R€]€ÿÿÿ€Z€aUItem2__popUpItemAction:ÚéêÆìíîïðñ$%Ôõ»÷Ž+ú-€e€W€X€R€]€ÿÿÿ€Z€dUItem3__popUpItemAction:Ò3412^NSMutableArray£137WNSArrayÒ3456VNSMenu¢57Ò3489_NSPopUpButtonCell¦8:;<7^NSMenuItemCell\NSActionCellVNSCellÒ34>?]NSPopUpButton¦>ÇÈÉ7ØfghijklmBCpEçpt €k€l€€1€€_{{291, 42}, {97, 32}}Ýì„í…îïñ†‡‰òóKLMNŽP’RÜþ’VÙþÿÿÿÿ†‚@ÿ€€n€€m€j€0€ÈVBrowseÒáâZ€UPØfghijklm]^p`rpt €p€q€€!€€_{{17, 63}, {407, 34}}Ø„…†‡ˆ‰‹fghÞA’Cþ@€r€o€ €<€€9o:Fichier certificat (nécessaire pour le télé-déploiement) :Øfghijklmqrptçpt €t€u€€1€€_{{263, 175}, {103, 18}}Þì„í…îïð†‡ñ‰òóz{|÷ŽŽú€ßýþ’…þH€ StagÔPQRÅÆUÛ€€Ž€ €P_chooseProtocol:Ò34ËÌ_NSNibControlConnector£ËÍ7^NSNibConnectorÔPQRÅÐUÜ€€‘€ €j_chooseCacertFile:Ò:ÕÖ€•¯#^ÓC»c§Ò ØU×ßÖäÚÜÕÔoÔŠÞÛr4Wó“àÙpk€q€%€l€R€€N€V€4€E€ €A€s€G€>€'€L€j€5€W€€2€y€o€P€u€c€7€@€“€K€w€I€€C€`Ò./ü€€”]NSApplicationÒ343ÿ¢37Ò:Õ€•¯#ÞpÜÛpÚÔÔp ppØpÓppp»cpàppßÔÕÖ Ùpp ×Ô€o€€j€P€€L€W€2€€€€€E€€%€€€€R€€€w€€€s€W€5€>€€I€€€€A€WÒ:Õ(€•¯$ÓC»c§Ò ØU×ßäÖÚÜ ÕÔoÔŠÞÛr4Wó“Ùàp^k€`€%€l€R€€N€V€4€E€ €A€s€'€G€>€L€j€€5€W€€2€y€o€P€u€c€7€@€“€K€I€w€€q€CÒ:ÕO€•¯$PQRSTUVWXYZ[\]^_`abcdefghijklmnopqrs€™€š€›€œ€€ž€Ÿ€ €¡€ €¢€£€¤€¥€¦€§€¨€©€ª€«€¬€­€®€¯€°€±€²€³€´€µ€¶€·€¸€¹€º€»_Menu Item (Item2)oCheck Box (Télé-déploiement)_Button Cell (Browse)_Pop Up Button CellZText Field_-Text Field Cell (Chemin du fichier de logs :)YMenu Item_Text Field Cell-2_Static Text (/ocsinventory )_(Static Text (Valeur du TAG (optionnel):)_Check Box (Mode Debug)oButton Cell (Télé-déploiement)_ Text Field Cell (/ocsinventory )\Text Field-1_)Static Text (Chemin du fichier de logs :)_Push Button (Browse)\File's Owner_!Static Text (URL du serveur OCS:)_Menu (OtherViews)_Text Field Cell\Text Field-2oQText Field Cell (Paramétrez la configuration de votre Agent OCS Inventory MacOSX)oHStatic Text (Fichier certificat (nécessaire pour le télé-déploiement) :)]Pop Up Button_Button Cell (Mode Debug)_Menu Item (Item3)_%Text Field Cell (URL du serveur OCS:)_Text Field Cell-1[Application_Text Field Cell-3\Text Field-3oMStatic Text (Paramétrez la configuration de votre Agent OCS Inventory MacOSX)TViewoLText Field Cell (Fichier certificat (nécessaire pour le télé-déploiement) :)_,Text Field Cell (Valeur du TAG (optionnel):)Ò:Õ™€• Ò:Õœ€• Ò:ÕŸ€•¯/^ÓCD»Kc§ÒJ ØÖ×ßUäÚLIGNÜ ÕÔMoÔŠEÞÛr4HWó“àÙFpk€q€%€l€ €R€‰€€N€V€‡€4€E€>€A€s€ €G€'€L€‹€…€€€j€€5€W€€€2€y€€o€P€u€c€7€ƒ€@€“€K€w€I€#€€C€`Ò:ÕÑ€•¯/ÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ€À€Á€Â€Ã€Ä€Å€Æ€Ç€È€É€Ê€Ë€Ì€Í€Î€Ï€Ð€Ñ€Ò€Ó€Ô€Õ€Ö€×€Ø€Ù€Ú€Û€Ü€Ý€Þ€ß€à€á€â€ã€ä€å€æ€ç€è€é€ê€ë€ì€í€î[^ZXI8W$MQ@U_FHAB;d "LY ]G?!\#RcSÿÿÿÿÿÿÿýVO T%Ò:B1€f Ò:Õ4€• Ò:Õ7€• Ò349:^NSIBObjectData¢97_NSKeyedArchiverÑ=>]IB.objectdata€"+5:?(.y“¦´ÆÒÙõ!,:LXt‚’”–˜šœž ¢¤¦¨ª¬®°²´½ÉËÍàéôý -6ACDMZagpr‰‹‘“•—™›Ÿ°¸ÆÏÑÓÕ×àâäû%,;LNPRTu‡Žš£µ¾¿ÁÃÅÈÊÌÎóÿ !#%')AfrŠ˜¤®ÂÖßäæèêìîïñò '*7@GLao{ˆ’”–˜š¡·ÄÌÎÐÓÜäéþ"+=FSZcoz„‹—¢³µ·¹»ÄÆãåçéëíïñóõ÷ùûýÿ ! # % ' * , . 0 J ƒ ˜ ¦ ¼ Î Ü ï       " $ & ( * , . 0 2 U b q s u w  ˆ ‘ ¤ © ² ¾ À Â Ë Ô ê ï ø    " + 4 ? ` a c e g j l n p Š ¯ ¸ ½ ¿ Á Ã Å Ç È Ê ë ì î ð ò õ ÷ ù û  6 ; @ B D F H J L b w y { }  Œ ™ › © ¾ À Â Ä Æ Ù ú û ý ÿ     # H Q V X Z \ ^ ` a c „ … ‡ ‰ ‹ Ž ’ ” ­ Î Ó Ø Ú Ü Þ à â ä"#%'),.02Klqvxz|~€‚‘²³µ·¹¼¾ÀÂÛ <=?ACFHJLe†‹’”–˜šœºÛÜÞàâåçéëRdoŒ“¨¶ÈÊÓØÛÝßáãåæèêíîïñó&()2DKTŠž¦°¹ÄÒßçéîðòôöøýÿ -/13ERTVXkˆ“˜£¬®µ·¹»äæëíïñóõúüþACHJLNPRWY[au~”œ¥¬±ºÎÛê÷þ"CDFHJMOQSk ¢§°µ·¹»½¿ÁÃÅÌÕרùúüþ !BGLNPRTVXÏðñóõ÷úüþSUZ_acegikmoq|ž ¢¤§©«­Æçìñóõ÷ùûý~‰’Ÿ¨´ÅÇÉËÍ×èêìîðù  +-/13?PRTVX_prtvx|‘“•§°ÈÏÞïñóõ÷ _acegikmoqsuwy{}ƒ…‡‰‹‘“•—™›Ÿ¡£¥®°²ÀÉÎ×Ù"$&(*,.02468:<>@BDFHJLNPRTVXZ\^`bdfhqs¾ÀÂÄÆÈÊÌÎÐÒÔÖØÚÜÞàâäæèêìîðòôöøúüþ\^`bdfhjlnprtvxz|~€‚„†ˆŠŒŽ’”–˜šœž ¢¤¸ó *Zdx—ÂÛ=Jvš¾Òäñ–)7RfŽ¢®ÂÏ l q! !;!D!F!G!P!R!S!\!^!¿!Á!Ã!Å!Ç!É!Ë!Í!Ï!Ñ!Ó!Õ!×!Ù!Û!Ý!ß!á!ã!å!ç!é!ë!í!ï!ñ!ó!õ!÷!ù!û!ý!ÿ""""" " " """""""""&"("‰"‹"""‘"“"•"—"™"›""Ÿ"¡"£"¥"§"©"«"­"¯"±"³"µ"·"¹"»"½"¿"Á"Ã"Å"Ç"É"Ë"Í"Ï"Ñ"Ó"Õ"×"Ù"Û"Ý"ß"á"ã"å"ç"é"ë"í"ï"ñ"ó"õ"÷"ù"û"ý"ÿ##### # # ##########!###%#'#)#+#-#/#1#3#<#>#@#B#D#F#H#J#S#U#V#_#a#b#k#m#n#w#†#‹##¢#°?#²tools/macosx/installer_gui/ocs_agent_config/French.lproj/ocs_agent_config.nib/designable.nib010064400017500001750000002126671173606111100374770ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5 1060 10K549 851 1038.36 461.00 com.apple.InterfaceBuilder.CocoaPlugin 851 YES YES com.apple.InterfaceBuilder.CocoaPlugin PluginDependencyRecalculationVersion YES InstallerSection FirstResponder NSApplication ocs_agent_configPane 256 YES 268 {{263, 131}, {146, 30}} YES 67239424 0 Télé-déploiement LucidaGrande 13 1044 1211912703 2 NSImage NSSwitch NSSwitch 200 25 256 {{117, 256}, {146, 22}} YES -1804468671 272630784 YES 6 System textBackgroundColor 3 MQA 6 System textColor 3 MAA 256 {{120, 286}, {178, 17}} YES 67239424 272629760 URL du serveur OCS: 6 System controlColor 3 MC42NjY2NjY2NjY3AA 6 System controlTextColor 256 {{19, 120}, {146, 22}} YES -1804468671 272630784 YES 256 {{17, 133}, {191, 34}} YES 67239424 272629760 Valeur du TAG (optionnel): 256 {{262, 258}, {95, 17}} YES 67239424 272629760 L29jc2ludmVudG9yeQo 256 {{20, 189}, {185, 22}} YES -1804468671 272630784 YES 256 {{17, 202}, {191, 34}} YES 67239424 272629760 Chemin du fichier de logs : 256 {{17, 252}, {98, 26}} YES -2076049856 2048 109199615 1 LucidaGrande 13 16 400 75 1048576 2147483647 1 NSImage NSMenuCheckmark NSImage NSMenuMixedState _popUpItemAction: YES OtherViews YES Item2 1048576 2147483647 _popUpItemAction: Item3 1048576 2147483647 _popUpItemAction: 3 YES YES 1 256 {{291, 42}, {97, 32}} YES 67239424 134217728 Browse -2038284033 1 200 25 256 {{20, 50}, {269, 22}} YES -2072904127 272630784 YES 256 {{17, 63}, {407, 34}} YES 67239424 272629760 Fichier certificat (nécessaire pour le télé-déploiement) : 256 {{263, 175}, {103, 18}} YES 67239424 0 Mode Debug 1211912703 2 200 25 256 {{17, 316}, {429, 34}} YES 67239424 272629760 Paramétrez la configuration de votre Agent OCS Inventory MacOSX {450, 360} NSView NSResponder YES firstPane 6 contentView 9 debugmode 65 chooseCacertFile: 66 tag 70 cacertfile 71 logfile 72 server 73 chooseProtocol: 76 protocolist 77 download 99 YES 0 YES -2 File's Owner -1 First Responder 5 ocs_agent_configPane 8 YES View 10 YES 13 YES 14 YES 15 YES 28 YES 29 YES 30 YES 33 YES 56 YES 59 YES 63 YES 64 YES 79 YES 81 82 83 84 85 86 87 88 YES 89 90 91 92 93 34 YES 37 36 35 -3 Application 94 YES 95 YES YES 10.IBPluginDependency 10.ImportedFromIB2 13.IBPluginDependency 13.IBViewBoundsToFrameTransform 13.ImportedFromIB2 14.IBPluginDependency 14.IBViewBoundsToFrameTransform 14.ImportedFromIB2 15.IBPluginDependency 15.IBViewBoundsToFrameTransform 15.ImportedFromIB2 28.IBPluginDependency 28.ImportedFromIB2 29.IBPluginDependency 29.IBViewBoundsToFrameTransform 29.ImportedFromIB2 30.IBPluginDependency 30.IBViewBoundsToFrameTransform 30.ImportedFromIB2 33.IBPluginDependency 33.ImportedFromIB2 34.IBPluginDependency 34.ImportedFromIB2 35.IBPluginDependency 35.ImportedFromIB2 36.IBPluginDependency 36.ImportedFromIB2 37.IBPluginDependency 37.ImportedFromIB2 5.ImportedFromIB2 56.IBPluginDependency 56.ImportedFromIB2 59.IBPluginDependency 59.ImportedFromIB2 63.IBPluginDependency 63.ImportedFromIB2 64.IBPluginDependency 64.IBViewBoundsToFrameTransform 64.ImportedFromIB2 79.IBPluginDependency 79.IBViewBoundsToFrameTransform 79.ImportedFromIB2 8.IBEditorWindowLastContentRect 8.IBPluginDependency 8.ImportedFromIB2 94.IBPluginDependency 94.IBViewBoundsToFrameTransform 95.IBPluginDependency YES com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin P4AAAL+AAABDBAAAw5aAAA com.apple.InterfaceBuilder.CocoaPlugin P4AAAL+AAABBoAAAwvoAAA com.apple.InterfaceBuilder.CocoaPlugin P4AAAL+AAABBEAAAwyUAAA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin P4AAAL+AAABBoAAAwyQAAA com.apple.InterfaceBuilder.CocoaPlugin P4AAAL+AAABBiAAAwz0AAA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin P4AAAL+AAABDk4AAw2wAAA com.apple.InterfaceBuilder.CocoaPlugin P4AAAL+AAABAwAAAw64AAA {{329, 485}, {450, 360}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin P4AAAL+AAABDXAAAwx8AAA com.apple.InterfaceBuilder.CocoaPlugin YES YES YES YES 99 YES FirstResponder NSObject IBUserSource InstallerPane NSObject IBUserSource InstallerSection NSObject IBUserSource NSView NSResponder myAction: id myAction: myAction: id IBUserSource ocs_agent_configPane InstallerPane YES YES chooseCacertFile: chooseProtocol: getConfig: YES id id id YES YES chooseCacertFile: chooseProtocol: getConfig: YES chooseCacertFile: id chooseProtocol: id getConfig: id YES YES cacertfile debugmode download logfile protocolist server tag YES NSTextField NSButton NSButton NSTextField NSPopUpButton NSTextField NSTextField YES YES cacertfile debugmode download logfile protocolist server tag YES cacertfile NSTextField debugmode NSButton download NSButton logfile NSTextField protocolist NSPopUpButton server NSTextField tag NSTextField IBProjectSource ocs_agent_configPane.h ocs_agent_configPane InstallerPane IBUserSource YES InstallerPane NSObject YES YES contentView firstKeyView initialKeyView lastKeyView nextPane parentSection YES NSView NSView NSView NSView InstallerPane id YES YES contentView firstKeyView initialKeyView lastKeyView nextPane parentSection YES contentView NSView firstKeyView NSView initialKeyView NSView lastKeyView NSView nextPane InstallerPane parentSection id IBFrameworkSource InstallerPlugins.framework/Headers/InstallerPane.h InstallerSection NSObject firstPane InstallerPane firstPane firstPane InstallerPane IBFrameworkSource InstallerPlugins.framework/Headers/InstallerSection.h NSActionCell NSCell IBFrameworkSource AppKit.framework/Headers/NSActionCell.h NSApplication NSResponder IBFrameworkSource AppKit.framework/Headers/NSApplication.h NSApplication IBFrameworkSource AppKit.framework/Headers/NSApplicationScripting.h NSApplication IBFrameworkSource AppKit.framework/Headers/NSColorPanel.h NSApplication IBFrameworkSource AppKit.framework/Headers/NSHelpManager.h NSApplication IBFrameworkSource AppKit.framework/Headers/NSPageLayout.h NSApplication IBFrameworkSource AppKit.framework/Headers/NSUserInterfaceItemSearching.h NSButton NSControl IBFrameworkSource AppKit.framework/Headers/NSButton.h NSButtonCell NSActionCell IBFrameworkSource AppKit.framework/Headers/NSButtonCell.h NSCell NSObject IBFrameworkSource AppKit.framework/Headers/NSCell.h NSControl NSView IBFrameworkSource AppKit.framework/Headers/NSControl.h NSFormatter NSObject IBFrameworkSource Foundation.framework/Headers/NSFormatter.h NSMenu NSObject IBFrameworkSource AppKit.framework/Headers/NSMenu.h NSMenuItem NSObject IBFrameworkSource AppKit.framework/Headers/NSMenuItem.h NSMenuItemCell NSButtonCell IBFrameworkSource AppKit.framework/Headers/NSMenuItemCell.h NSObject IBFrameworkSource AppKit.framework/Headers/NSAccessibility.h NSObject NSObject NSObject NSObject NSObject IBFrameworkSource AppKit.framework/Headers/NSDictionaryController.h NSObject IBFrameworkSource AppKit.framework/Headers/NSDragging.h NSObject IBFrameworkSource AppKit.framework/Headers/NSFontManager.h NSObject IBFrameworkSource AppKit.framework/Headers/NSFontPanel.h NSObject IBFrameworkSource AppKit.framework/Headers/NSKeyValueBinding.h NSObject NSObject IBFrameworkSource AppKit.framework/Headers/NSNibLoading.h NSObject IBFrameworkSource AppKit.framework/Headers/NSOutlineView.h NSObject IBFrameworkSource AppKit.framework/Headers/NSPasteboard.h NSObject IBFrameworkSource AppKit.framework/Headers/NSSavePanel.h NSObject IBFrameworkSource AppKit.framework/Headers/NSTableView.h NSObject IBFrameworkSource AppKit.framework/Headers/NSToolbarItem.h NSObject IBFrameworkSource AppKit.framework/Headers/NSView.h NSObject IBFrameworkSource Foundation.framework/Headers/NSArchiver.h NSObject IBFrameworkSource Foundation.framework/Headers/NSClassDescription.h NSObject IBFrameworkSource Foundation.framework/Headers/NSError.h NSObject IBFrameworkSource Foundation.framework/Headers/NSFileManager.h NSObject IBFrameworkSource Foundation.framework/Headers/NSKeyValueCoding.h NSObject IBFrameworkSource Foundation.framework/Headers/NSKeyValueObserving.h NSObject IBFrameworkSource Foundation.framework/Headers/NSKeyedArchiver.h NSObject IBFrameworkSource Foundation.framework/Headers/NSObject.h NSObject IBFrameworkSource Foundation.framework/Headers/NSObjectScripting.h NSObject IBFrameworkSource Foundation.framework/Headers/NSPortCoder.h NSObject IBFrameworkSource Foundation.framework/Headers/NSRunLoop.h NSObject IBFrameworkSource Foundation.framework/Headers/NSScriptClassDescription.h NSObject IBFrameworkSource Foundation.framework/Headers/NSScriptKeyValueCoding.h NSObject IBFrameworkSource Foundation.framework/Headers/NSScriptObjectSpecifiers.h NSObject IBFrameworkSource Foundation.framework/Headers/NSScriptWhoseTests.h NSObject IBFrameworkSource Foundation.framework/Headers/NSThread.h NSObject IBFrameworkSource Foundation.framework/Headers/NSURL.h NSObject IBFrameworkSource Foundation.framework/Headers/NSURLConnection.h NSObject IBFrameworkSource Foundation.framework/Headers/NSURLDownload.h NSPopUpButton NSButton IBFrameworkSource AppKit.framework/Headers/NSPopUpButton.h NSPopUpButtonCell NSMenuItemCell IBFrameworkSource AppKit.framework/Headers/NSPopUpButtonCell.h NSResponder IBFrameworkSource AppKit.framework/Headers/NSInterfaceStyle.h NSResponder NSObject IBFrameworkSource AppKit.framework/Headers/NSResponder.h NSTextField NSControl IBFrameworkSource AppKit.framework/Headers/NSTextField.h NSTextFieldCell NSActionCell IBFrameworkSource AppKit.framework/Headers/NSTextFieldCell.h NSView IBFrameworkSource AppKit.framework/Headers/NSClipView.h NSView NSView IBFrameworkSource AppKit.framework/Headers/NSRulerView.h NSView NSResponder 0 IBCocoaFramework com.apple.InterfaceBuilder.CocoaPlugin.macosx com.apple.InterfaceBuilder.CocoaPlugin.macosx com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 YES ../ocs_agent_config.xcodeproj 3 YES YES NSMenuCheckmark NSMenuMixedState NSSwitch YES {9, 8} {7, 2} {15, 15} Ocsinventory-Unix-Agent-2.0.5/tools/macosx/installer_gui/ocs_agent_config/ocs_agent_configPane.m010064400017500001750000000206021173606111100326320ustar00guiguiguigui// // OCSINVENTORY-NG // // Copyleft Guillaume PROTET 2011 // // // This code is open source and may be copied and modified as long as the source // code is always made freely available. // Please refer to the General Public Licence http://www.gnu.org/ // // #import "ocs_agent_configPane.h" @implementation ocs_agent_configPane - (NSString *)title { return [[NSBundle bundleForClass:[self class]] localizedStringForKey:@"PaneTitle" value:nil table:nil]; } - (NSArray *) protocols { return [NSArray arrayWithObjects:@"http", @"https", nil]; } - (void)didEnterPane:(InstallerSectionDirection)dir { NSAlert *cfgFileExistsWrn; NSString *tmpPath = @"/tmp/ocs_installer"; filemgr = [ NSFileManager defaultManager]; tmpCfgFilePath = @"/tmp/ocs_installer/ocsinventory-agent.cfg"; tmpModulesFilePath = @"/tmp/ocs_installer/modules.conf"; tmpServerdirFilePath = @"/tmp/ocs_installer/serverdir"; tmpCacertFilePath = @"/tmp/ocs_installer/cacert.pem"; //Checking if temp directory exists if ([filemgr fileExistsAtPath:tmpPath]) { [filemgr removeFileAtPath:tmpCfgFilePath handler:nil]; [filemgr removeFileAtPath:tmpModulesFilePath handler:nil]; [filemgr removeFileAtPath:tmpServerdirFilePath handler:nil]; [filemgr removeFileAtPath:tmpCacertFilePath handler:nil]; } else { [filemgr createDirectoryAtPath:tmpPath attributes:nil]; } if ([filemgr fileExistsAtPath:@"/etc/ocsinventory-agent/ocsinventory-agent.cfg"]) { //We display a warning dialog cfgFileExistsWrn = [[NSAlert alloc] init]; [cfgFileExistsWrn setMessageText:NSLocalizedStringFromTableInBundle(@"Already_conf_warn",nil,[NSBundle bundleForClass:[self class]], @"Warning about already existing cofiguration file")]; [cfgFileExistsWrn setInformativeText:NSLocalizedStringFromTableInBundle(@"Already_conf_warn_comment",nil,[NSBundle bundleForClass:[self class]], @"Warning about already existing cofiguration file comment")]; [cfgFileExistsWrn addButtonWithTitle:NSLocalizedStringFromTableInBundle(@"Yes",nil,[NSBundle bundleForClass:[self class]], @"Yes button")]; [cfgFileExistsWrn addButtonWithTitle:NSLocalizedStringFromTableInBundle(@"No",nil,[NSBundle bundleForClass:[self class]], @"No button")]; [cfgFileExistsWrn setAlertStyle:NSInformationalAlertStyle]; if ([cfgFileExistsWrn runModal] != NSAlertFirstButtonReturn) { // No button was clicked, we don't display config pane [self gotoNextPane]; } [cfgFileExistsWrn release]; } // fill defaults values [server setStringValue:@"ocsinventory-ng"]; [logfile setStringValue:@"/var/log/ocsng.log"]; [debugmode setState:1]; [download setState:1]; //Defaults for protocol droping list [protocolist removeAllItems]; [protocolist addItemWithTitle: @"http://"]; [protocolist addItemWithTitle: @"https://"]; [protocolist selectItemWithTitle: @"http://"]; } - (IBAction) chooseCacertFile:(id)sender { NSOpenPanel *panel = [NSOpenPanel openPanel]; NSArray* fileTypes = [[NSArray alloc] initWithObjects:@"pem",@"PEM",@"crt",@"CRT",nil]; //Configuration for the browse panel [panel setCanChooseDirectories:NO]; [panel setCanChooseFiles:YES]; [panel setAllowsMultipleSelection:NO]; [panel setAllowedFileTypes:fileTypes]; //Running brozse panel int result = [panel runModalForTypes:fileTypes]; //Getting cacert file path if (result == NSOKButton) { [cacertfile setStringValue:[panel filename]]; } } - (IBAction) chooseProtocol:(id)sender { NSString *protocol = [protocolist titleOfSelectedItem]; //We show the selected protocol [protocolist setTitle:protocol]; } - (IBAction) getConfig:(id)sender { BOOL srvAddrChk; // enable the Continue button only if server address filled srvAddrChk = ([[server stringValue] length] > 0); [self setNextEnabled:srvAddrChk]; } - (BOOL)shouldExitPane:(InstallerSectionDirection)Direction { NSMutableString *ocsAgentCfgContent; NSMutableString *modulesCfgContent; NSString *serverDir; NSMutableString *protocolName; NSAlert *srvConfigWrn; NSAlert *caCertWrn; NSString *protocol = [protocolist titleOfSelectedItem]; // check the direction of movement if (Direction == InstallerDirectionForward) { if ( [[server stringValue] length] > 0) { ocsAgentCfgContent = [@"server=" mutableCopy]; //Adding server value to the mutable string [ocsAgentCfgContent appendString:protocol]; [ocsAgentCfgContent appendString:[server objectValue]]; [ocsAgentCfgContent appendString:@"/ocsinventory"]; [ocsAgentCfgContent appendString:@"\n"]; //if tag filled if ( [[tag stringValue] length] > 0) { [ocsAgentCfgContent appendString:@"tag="]; [ocsAgentCfgContent appendString:[tag objectValue]]; [ocsAgentCfgContent appendString:@"\n"]; } //if logfile filled if ( [[logfile stringValue] length] > 0) { [ocsAgentCfgContent appendString:@"logfile="]; [ocsAgentCfgContent appendString:[logfile objectValue]]; [ocsAgentCfgContent appendString:@"\n"]; } //if debugmode checked if ( [debugmode state] == 1) { [ocsAgentCfgContent appendString:@"debug=1\n"]; } //Writing to ocsinventory agent configuration file [ocsAgentCfgContent writeToFile:tmpCfgFilePath atomically: YES encoding:NSUTF8StringEncoding error:NULL]; modulesCfgContent = [@"# this list of module will be load by the at run time\n" @"# to check its syntax do:\n" @"# #perl modules.conf\n" @"# You must have NO error. Else the content will be ignored\n" @"# This mechanism goal it to keep compatibility with 'plugin'\n" @"# created for the previous linux_agent.\n" @"# The new unified_agent have its own extension system that allow\n" @"# user to add new information easily.\n" @"\n" @"#use Ocsinventory::Agent::Modules::Example;\n" mutableCopy]; //if download checked if ( [download state] == 1) { [modulesCfgContent appendString:@"use Ocsinventory::Agent::Modules::Download;\n" @"\n" @"# DO NOT REMOVE THE 1;\n" @"1;" ]; } else { [modulesCfgContent appendString:@"#use Ocsinventory::Agent::Modules::Download;\n" @"\n" @"# DO NOT REMOVE THE 1;\n" @"1;" ]; } //Writing to modules configuration file [modulesCfgContent writeToFile:tmpModulesFilePath atomically: YES encoding:NSUTF8StringEncoding error:NULL]; //We have to copy cacert.pem if is asked by user if ( [[cacertfile stringValue] length] > 0) { protocolName = [protocol mutableCopy]; [protocolName replaceOccurrencesOfString:@"/" withString:@"" options:NSCaseInsensitiveSearch range:NSMakeRange(0, [protocolName length])]; serverDir = [NSString stringWithFormat:@"/var/lib/ocsinventory-agent/%@__%@_ocsinventory", protocolName, [server objectValue]]; [serverDir writeToFile:tmpServerdirFilePath atomically: YES encoding:NSUTF8StringEncoding error:NULL]; [filemgr copyPath:[cacertfile objectValue] toPath:tmpCacertFilePath handler:nil]; } if ( [download state] == 1 && [[cacertfile stringValue] length] == 0 ) { //We display a warning dialog caCertWrn = [[NSAlert alloc] init]; [caCertWrn addButtonWithTitle:@"OK"]; [caCertWrn setMessageText:NSLocalizedStringFromTableInBundle(@"Missing_cert_warn",nil,[NSBundle bundleForClass:[self class]], @"Warning about missing certificate file")]; [caCertWrn setInformativeText:NSLocalizedStringFromTableInBundle(@"Missing_cert_warn_comment",nil,[NSBundle bundleForClass:[self class]], @"Warning about missing certificate file comment")]; [caCertWrn setAlertStyle:NSInformationalAlertStyle]; [caCertWrn runModal]; // display the warning dialog [caCertWrn release]; // dispose the warning dialog } } else { //We display a warning dialog srvConfigWrn = [[NSAlert alloc] init]; [srvConfigWrn addButtonWithTitle:@"OK"]; [srvConfigWrn setMessageText:NSLocalizedStringFromTableInBundle(@"Invalid_srv_addr",nil,[NSBundle bundleForClass:[self class]], @"Warning about invalid server address")]; [srvConfigWrn setInformativeText:NSLocalizedStringFromTableInBundle(@"Invalid_srv_addr_comment",nil,[NSBundle bundleForClass:[self class]], @"Warning about invalid server address comment")]; [srvConfigWrn setAlertStyle:NSInformationalAlertStyle]; [srvConfigWrn runModal]; [srvConfigWrn release]; [self gotoPreviousPane]; } } return (YES); } @end Ocsinventory-Unix-Agent-2.0.5/tools/macosx/installer_gui/ocs_agent_config/version.plist010064400017500001750000000006321173606111100311240ustar00guiguiguigui BuildVersion 2 CFBundleVersion 1.0 ProjectName DevToolsWizardTemplates SourceVersion 3670000 Ocsinventory-Unix-Agent-2.0.5/tools/macosx/installer_gui/ocs_agent_config/ocs_agent_config.xcodeproj004075500017500001750000000000001173606116100335755ustar00guiguiguiguitools/macosx/installer_gui/ocs_agent_config/ocs_agent_config.xcodeproj/project.pbxproj010064400017500001750000000335071173606111100366510ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5// !$*UTF8*$! { archiveVersion = 1; classes = { }; objectVersion = 44; objects = { /* Begin PBXBuildFile section */ 0649FBA314D9F106001EC640 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 0649FBA214D9F106001EC640 /* InfoPlist.strings */; }; 8D5B49B0048680CD000E48DA /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C167DFE841241C02AAC07 /* InfoPlist.strings */; }; 8D5B49B4048680CD000E48DA /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7ADFEA557BF11CA2CBB /* Cocoa.framework */; }; B40F7FFC06739E1B0053A16B /* InstallerPlugins.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B40F7FFB06739E1B0053A16B /* InstallerPlugins.framework */; }; B40F802906739F480053A16B /* ocs_agent_config.nib in Resources */ = {isa = PBXBuildFile; fileRef = B40F802706739F480053A16B /* ocs_agent_config.nib */; }; B44C200B06739AE500D31AA1 /* ocs_agent_configPane.m in Sources */ = {isa = PBXBuildFile; fileRef = B44C200906739AE500D31AA1 /* ocs_agent_configPane.m */; }; B47CF355067B4E030066DBF6 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = B47CF353067B4E030066DBF6 /* Localizable.strings */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ 0632F49314DB45F00064D8E2 /* French */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = French; path = French.lproj/Localizable.strings; sourceTree = ""; }; 0638EF1412E6DA96006FF673 /* ocs_agent_config.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = ocs_agent_config.bundle; sourceTree = BUILT_PRODUCTS_DIR; }; 0649FB6414D9E877001EC640 /* French */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = French; path = French.lproj/ocs_agent_config.nib; sourceTree = ""; }; 0649FBA014D9F0FD001EC640 /* English */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = ""; }; 0649FBA414D9F110001EC640 /* French */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = French; path = French.lproj/InfoPlist.strings; sourceTree = ""; }; 0649FBA514D9F123001EC640 /* French */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = French; path = French.lproj/InfoPlist.strings; sourceTree = ""; }; 089C1672FE841209C02AAC07 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = ""; }; 089C167EFE841241C02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = ""; }; 089C167FFE841241C02AAC07 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = ""; }; 1058C7ADFEA557BF11CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; }; 32DBCF630370AF2F00C91783 /* ocs_agent_config_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ocs_agent_config_Prefix.pch; sourceTree = ""; }; 8D5B49B7048680CD000E48DA /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; B40F7FFB06739E1B0053A16B /* InstallerPlugins.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = InstallerPlugins.framework; path = /System/Library/Frameworks/InstallerPlugins.framework; sourceTree = ""; }; B40F802806739F480053A16B /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = English.lproj/ocs_agent_config.nib; sourceTree = ""; }; B44C200806739AE500D31AA1 /* ocs_agent_configPane.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ocs_agent_configPane.h; sourceTree = ""; }; B44C200906739AE500D31AA1 /* ocs_agent_configPane.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ocs_agent_configPane.m; sourceTree = ""; }; B47CF354067B4E030066DBF6 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/Localizable.strings; sourceTree = ""; }; B4A6B2A60673D523003CD9B2 /* InstallerSections.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = InstallerSections.plist; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ 8D5B49B3048680CD000E48DA /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( 8D5B49B4048680CD000E48DA /* Cocoa.framework in Frameworks */, B40F7FFC06739E1B0053A16B /* InstallerPlugins.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ 089C166AFE841209C02AAC07 /* InstallerPlugin */ = { isa = PBXGroup; children = ( 08FB77AFFE84173DC02AAC07 /* Classes */, 32C88E010371C26100C91783 /* Other Sources */, 089C167CFE841241C02AAC07 /* Resources */, 089C1671FE841209C02AAC07 /* Frameworks and Libraries */, 19C28FB8FE9D52D311CA2CBB /* Products */, ); name = InstallerPlugin; sourceTree = ""; }; 089C1671FE841209C02AAC07 /* Frameworks and Libraries */ = { isa = PBXGroup; children = ( 1058C7ACFEA557BF11CA2CBB /* Linked Frameworks */, 1058C7AEFEA557BF11CA2CBB /* Other Frameworks */, ); name = "Frameworks and Libraries"; sourceTree = ""; }; 089C167CFE841241C02AAC07 /* Resources */ = { isa = PBXGroup; children = ( B47CF353067B4E030066DBF6 /* Localizable.strings */, B4A6B2A60673D523003CD9B2 /* InstallerSections.plist */, 8D5B49B7048680CD000E48DA /* Info.plist */, 089C167DFE841241C02AAC07 /* InfoPlist.strings */, B40F802706739F480053A16B /* ocs_agent_config.nib */, 0649FBA214D9F106001EC640 /* InfoPlist.strings */, ); name = Resources; sourceTree = ""; }; 08FB77AFFE84173DC02AAC07 /* Classes */ = { isa = PBXGroup; children = ( B44C200906739AE500D31AA1 /* ocs_agent_configPane.m */, B44C200806739AE500D31AA1 /* ocs_agent_configPane.h */, ); name = Classes; sourceTree = ""; }; 1058C7ACFEA557BF11CA2CBB /* Linked Frameworks */ = { isa = PBXGroup; children = ( 1058C7ADFEA557BF11CA2CBB /* Cocoa.framework */, B40F7FFB06739E1B0053A16B /* InstallerPlugins.framework */, ); name = "Linked Frameworks"; sourceTree = ""; }; 1058C7AEFEA557BF11CA2CBB /* Other Frameworks */ = { isa = PBXGroup; children = ( 089C1672FE841209C02AAC07 /* Foundation.framework */, 089C167FFE841241C02AAC07 /* AppKit.framework */, ); name = "Other Frameworks"; sourceTree = ""; }; 19C28FB8FE9D52D311CA2CBB /* Products */ = { isa = PBXGroup; children = ( 0638EF1412E6DA96006FF673 /* ocs_agent_config.bundle */, ); name = Products; sourceTree = ""; }; 32C88E010371C26100C91783 /* Other Sources */ = { isa = PBXGroup; children = ( 32DBCF630370AF2F00C91783 /* ocs_agent_config_Prefix.pch */, ); name = "Other Sources"; sourceTree = ""; }; /* End PBXGroup section */ /* Begin PBXNativeTarget section */ 8D5B49AC048680CD000E48DA /* OCS Agent configuration */ = { isa = PBXNativeTarget; buildConfigurationList = B44174E608BA33C40065BEDE /* Build configuration list for PBXNativeTarget "OCS Agent configuration" */; buildPhases = ( 8D5B49AF048680CD000E48DA /* Resources */, 8D5B49B1048680CD000E48DA /* Sources */, 8D5B49B3048680CD000E48DA /* Frameworks */, ); buildRules = ( ); dependencies = ( ); name = "OCS Agent configuration"; productInstallPath = "$(HOME)/Library/Bundles"; productName = InstallerPlugin; productReference = 0638EF1412E6DA96006FF673 /* ocs_agent_config.bundle */; productType = "com.apple.product-type.bundle"; }; /* End PBXNativeTarget section */ /* Begin PBXProject section */ 089C1669FE841209C02AAC07 /* Project object */ = { isa = PBXProject; buildConfigurationList = B44174EA08BA33C40065BEDE /* Build configuration list for PBXProject "ocs_agent_config" */; compatibilityVersion = "Xcode 2.4"; developmentRegion = English; hasScannedForEncodings = 1; knownRegions = ( English, Japanese, French, German, ); mainGroup = 089C166AFE841209C02AAC07 /* InstallerPlugin */; projectDirPath = ""; projectRoot = ""; targets = ( 8D5B49AC048680CD000E48DA /* OCS Agent configuration */, ); }; /* End PBXProject section */ /* Begin PBXResourcesBuildPhase section */ 8D5B49AF048680CD000E48DA /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( 8D5B49B0048680CD000E48DA /* InfoPlist.strings in Resources */, B40F802906739F480053A16B /* ocs_agent_config.nib in Resources */, B47CF355067B4E030066DBF6 /* Localizable.strings in Resources */, 0649FBA314D9F106001EC640 /* InfoPlist.strings in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXResourcesBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ 8D5B49B1048680CD000E48DA /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( B44C200B06739AE500D31AA1 /* ocs_agent_configPane.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXSourcesBuildPhase section */ /* Begin PBXVariantGroup section */ 0649FBA214D9F106001EC640 /* InfoPlist.strings */ = { isa = PBXVariantGroup; children = ( 0649FBA014D9F0FD001EC640 /* English */, 0649FBA414D9F110001EC640 /* French */, ); name = InfoPlist.strings; sourceTree = ""; }; 089C167DFE841241C02AAC07 /* InfoPlist.strings */ = { isa = PBXVariantGroup; children = ( 089C167EFE841241C02AAC07 /* English */, 0649FBA514D9F123001EC640 /* French */, ); name = InfoPlist.strings; sourceTree = ""; }; B40F802706739F480053A16B /* ocs_agent_config.nib */ = { isa = PBXVariantGroup; children = ( B40F802806739F480053A16B /* English */, 0649FB6414D9E877001EC640 /* French */, ); name = ocs_agent_config.nib; sourceTree = ""; }; B47CF353067B4E030066DBF6 /* Localizable.strings */ = { isa = PBXVariantGroup; children = ( B47CF354067B4E030066DBF6 /* English */, 0632F49314DB45F00064D8E2 /* French */, ); name = Localizable.strings; sourceTree = ""; }; /* End PBXVariantGroup section */ /* Begin XCBuildConfiguration section */ B44174E708BA33C40065BEDE /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { ARCHS = ( i386, ppc, ); COPY_PHASE_STRIP = NO; GCC_DYNAMIC_NO_PIC = NO; GCC_ENABLE_FIX_AND_CONTINUE = YES; GCC_MODEL_TUNING = G5; GCC_OPTIMIZATION_LEVEL = 0; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = ocs_agent_config_Prefix.pch; GCC_VERSION = 4.0; INFOPLIST_FILE = Info.plist; INSTALL_PATH = "$(HOME)/Library/Bundles"; PRODUCT_NAME = ocs_agent_config; SDKROOT = "$(DEVELOPER_SDK_DIR)/MacOSX10.4u.sdk"; WRAPPER_EXTENSION = bundle; ZERO_LINK = YES; }; name = Debug; }; B44174E808BA33C40065BEDE /* Release */ = { isa = XCBuildConfiguration; buildSettings = { ARCHS = ( i386, ppc, x86_64, ); GCC_GENERATE_DEBUGGING_SYMBOLS = NO; GCC_MODEL_TUNING = G5; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = ocs_agent_config_Prefix.pch; GCC_VERSION = 4.0; INFOPLIST_FILE = Info.plist; INSTALL_PATH = "$(HOME)/Library/Bundles"; PRODUCT_NAME = ocs_agent_config; SDKROOT = "$(DEVELOPER_SDK_DIR)/MacOSX10.6.sdk"; WRAPPER_EXTENSION = bundle; }; name = Release; }; B44174EB08BA33C40065BEDE /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { ARCHS = ( i386, ppc, ); GCC_VERSION = 4.0; GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_UNUSED_VARIABLE = YES; MACOSX_DEPLOYMENT_TARGET = 10.4; PREBINDING = NO; SDKROOT = "$(DEVELOPER_SDK_DIR)/MacOSX10.4u.sdk"; VALID_ARCHS = "i386 ppc x86_64"; }; name = Debug; }; B44174EC08BA33C40065BEDE /* Release */ = { isa = XCBuildConfiguration; buildSettings = { ARCHS = ( i386, ppc, x86_64, ); GCC_VERSION = 4.0; GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_UNUSED_VARIABLE = YES; MACOSX_DEPLOYMENT_TARGET = 10.4; "MACOSX_DEPLOYMENT_TARGET[arch=x86_64]" = 10.5; PREBINDING = NO; SDKROOT = "$(DEVELOPER_SDK_DIR)/MacOSX10.6.sdk"; VALID_ARCHS = "i386 ppc x86_64"; }; name = Release; }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ B44174E608BA33C40065BEDE /* Build configuration list for PBXNativeTarget "OCS Agent configuration" */ = { isa = XCConfigurationList; buildConfigurations = ( B44174E708BA33C40065BEDE /* Debug */, B44174E808BA33C40065BEDE /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; B44174EA08BA33C40065BEDE /* Build configuration list for PBXProject "ocs_agent_config" */ = { isa = XCConfigurationList; buildConfigurations = ( B44174EB08BA33C40065BEDE /* Debug */, B44174EC08BA33C40065BEDE /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; /* End XCConfigurationList section */ }; rootObject = 089C1669FE841209C02AAC07 /* Project object */; } tools/macosx/installer_gui/ocs_agent_config/ocs_agent_config.xcodeproj/ocs.mode1v3010064400017500001750000001166711173606111100355650ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5 ActivePerspectiveName Project AllowedModules BundleLoadPath MaxInstances n Module PBXSmartGroupTreeModule Name Groups and Files Outline View BundleLoadPath MaxInstances n Module PBXNavigatorGroup Name Editor BundleLoadPath MaxInstances n Module XCTaskListModule Name Task List BundleLoadPath MaxInstances n Module XCDetailModule Name File and Smart Group Detail Viewer BundleLoadPath MaxInstances 1 Module PBXBuildResultsModule Name Detailed Build Results Viewer BundleLoadPath MaxInstances 1 Module PBXProjectFindModule Name Project Batch Find Tool BundleLoadPath MaxInstances n Module XCProjectFormatConflictsModule Name Project Format Conflicts List BundleLoadPath MaxInstances n Module PBXBookmarksModule Name Bookmarks Tool BundleLoadPath MaxInstances n Module PBXClassBrowserModule Name Class Browser BundleLoadPath MaxInstances n Module PBXCVSModule Name Source Code Control Tool BundleLoadPath MaxInstances n Module PBXDebugBreakpointsModule Name Debug Breakpoints Tool BundleLoadPath MaxInstances n Module XCDockableInspector Name Inspector BundleLoadPath MaxInstances n Module PBXOpenQuicklyModule Name Open Quickly Tool BundleLoadPath MaxInstances 1 Module PBXDebugSessionModule Name Debugger BundleLoadPath MaxInstances 1 Module PBXDebugCLIModule Name Debug Console BundleLoadPath MaxInstances n Module XCSnapshotModule Name Snapshots Tool Description DefaultDescriptionKey DockingSystemVisible Extension mode1v3 FavBarConfig PBXProjectModuleGUID 0606C13B14DC842A008033F9 XCBarModuleItemNames XCBarModuleItems FirstTimeWindowDisplayed Identifier com.apple.perspectives.project.mode1v3 MajorVersion 33 MinorVersion 0 Name Default Notifications OpenEditors PerspectiveWidths -1 -1 Perspectives ChosenToolbarItems active-combo-popup action NSToolbarFlexibleSpaceItem clean buildOrClean build-and-go go servicesModuledebug servicesModulebuild debugger-enable-breakpoints com.apple.ide.PBXToolbarStopButton get-info NSToolbarFlexibleSpaceItem com.apple.pbx.toolbar.searchfield ControllerClassBaseName IconName WindowOfProjectWithEditor Identifier perspective.project IsVertical Layout BecomeActive ContentConfiguration PBXBottomSmartGroupGIDs 1C37FBAC04509CD000000102 1C37FAAC04509CD000000102 1C37FABC05509CD000000102 1C37FABC05539CD112110102 E2644B35053B69B200211256 1C37FABC04509CD000100104 1CC0EA4004350EF90044410B 1CC0EA4004350EF90041110B PBXProjectModuleGUID 1CE0B1FE06471DED0097A5F4 PBXProjectModuleLabel Files PBXProjectStructureProvided yes PBXSmartGroupTreeModuleColumnData PBXSmartGroupTreeModuleColumnWidthsKey 275 PBXSmartGroupTreeModuleColumnsKey_v4 MainColumn PBXSmartGroupTreeModuleOutlineStateKey_v7 PBXSmartGroupTreeModuleOutlineStateExpansionKey 089C166AFE841209C02AAC07 08FB77AFFE84173DC02AAC07 32C88E010371C26100C91783 089C167CFE841241C02AAC07 B47CF353067B4E030066DBF6 089C167DFE841241C02AAC07 B40F802706739F480053A16B 19C28FB8FE9D52D311CA2CBB 0638EF1412E6DA96006FF673 1C37FBAC04509CD000000102 1C37FAAC04509CD000000102 1CC0EA4004350EF90044410B 1CC0EA4004350EF90041110B B40F802706739F480053A16B PBXSmartGroupTreeModuleOutlineStateSelectionKey 23 22 PBXSmartGroupTreeModuleOutlineStateVisibleRectKey {{0, 0}, {275, 695}} PBXTopSmartGroupGIDs XCIncludePerspectivesSwitch XCSharingToken com.apple.Xcode.GFSharingToken GeometryConfiguration Frame {{0, 0}, {292, 713}} GroupTreeTableConfiguration MainColumn 275 RubberWindowFrame 0 145 1440 733 0 0 1440 878 Module PBXSmartGroupTreeModule Proportion 292pt Dock ContentConfiguration PBXProjectModuleGUID 1CE0B20306471E060097A5F4 PBXProjectModuleLabel InfoPlist.strings PBXSplitModuleInNavigatorKey Split0 PBXProjectModuleGUID 1CE0B20406471E060097A5F4 PBXProjectModuleLabel InfoPlist.strings _historyCapacity 0 bookmark 06D66236151BD16E009F482C history 069E8F421402FC9D00897797 069E8FAF1402FF0400897797 06EBE12C14D9F59800B916EB 0673FEEB14DB417F008A3FF8 0632F4CF14DB4C470064D8E2 0606C15E14DCA3BF008033F9 0606C16914DCA4D3008033F9 0606C1A814DCA789008033F9 0606C1A914DCA789008033F9 SplitCount 1 StatusBarVisibility GeometryConfiguration Frame {{0, 0}, {1143, 313}} RubberWindowFrame 0 145 1440 733 0 0 1440 878 Module PBXNavigatorGroup Proportion 313pt ContentConfiguration PBXProjectModuleGUID 1CE0B20506471E060097A5F4 PBXProjectModuleLabel Detail GeometryConfiguration Frame {{0, 318}, {1143, 395}} RubberWindowFrame 0 145 1440 733 0 0 1440 878 Module XCDetailModule Proportion 395pt Proportion 1143pt Name Project ServiceClasses XCModuleDock PBXSmartGroupTreeModule XCModuleDock PBXNavigatorGroup XCDetailModule TableOfContents 06D66237151BD16E009F482C 1CE0B1FE06471DED0097A5F4 06D66238151BD16E009F482C 1CE0B20306471E060097A5F4 1CE0B20506471E060097A5F4 ToolbarConfigUserDefaultsMinorVersion 2 ToolbarConfiguration xcode.toolbar.config.defaultV3 ControllerClassBaseName IconName WindowOfProject Identifier perspective.morph IsVertical Layout BecomeActive 1 ContentConfiguration PBXBottomSmartGroupGIDs 1C37FBAC04509CD000000102 1C37FAAC04509CD000000102 1C08E77C0454961000C914BD 1C37FABC05509CD000000102 1C37FABC05539CD112110102 E2644B35053B69B200211256 1C37FABC04509CD000100104 1CC0EA4004350EF90044410B 1CC0EA4004350EF90041110B PBXProjectModuleGUID 11E0B1FE06471DED0097A5F4 PBXProjectModuleLabel Files PBXProjectStructureProvided yes PBXSmartGroupTreeModuleColumnData PBXSmartGroupTreeModuleColumnWidthsKey 186 PBXSmartGroupTreeModuleColumnsKey_v4 MainColumn PBXSmartGroupTreeModuleOutlineStateKey_v7 PBXSmartGroupTreeModuleOutlineStateExpansionKey 29B97314FDCFA39411CA2CEA 1C37FABC05509CD000000102 PBXSmartGroupTreeModuleOutlineStateSelectionKey 0 PBXSmartGroupTreeModuleOutlineStateVisibleRectKey {{0, 0}, {186, 337}} PBXTopSmartGroupGIDs XCIncludePerspectivesSwitch 1 XCSharingToken com.apple.Xcode.GFSharingToken GeometryConfiguration Frame {{0, 0}, {203, 355}} GroupTreeTableConfiguration MainColumn 186 RubberWindowFrame 373 269 690 397 0 0 1440 878 Module PBXSmartGroupTreeModule Proportion 100% Name Morph PreferredWidth 300 ServiceClasses XCModuleDock PBXSmartGroupTreeModule TableOfContents 11E0B1FE06471DED0097A5F4 ToolbarConfiguration xcode.toolbar.config.default.shortV3 PerspectivesBarVisible ShelfIsVisible StatusbarIsVisible TimeStamp 0.0 ToolbarConfigUserDefaultsMinorVersion 2 ToolbarDisplayMode 1 ToolbarIsVisible ToolbarSizeMode 1 Type Perspectives UpdateMessage The Default Workspace in this version of Xcode now includes support to hide and show the detail view (what has been referred to as the "Metro-Morph" feature). You must discard your current Default Workspace settings and update to the latest Default Workspace in order to gain this feature. Do you wish to update to the latest Workspace defaults for project '%@'? WindowJustification 5 WindowOrderList 060D9AEF13D8CE5900152410 /Users/ocs/work/ocs/dev/beta5/temp/tools/macosx/installer_gui/ocs_agent_config/ocs_agent_config.xcodeproj WindowString 0 145 1440 733 0 0 1440 878 WindowToolsV3 FirstTimeWindowDisplayed Identifier windowTool.build IsVertical Layout Dock ContentConfiguration PBXProjectModuleGUID 1CD0528F0623707200166675 PBXProjectModuleLabel StatusBarVisibility GeometryConfiguration Frame {{0, 0}, {719, 280}} RubberWindowFrame 660 210 719 562 0 0 1440 878 Module PBXNavigatorGroup Proportion 280pt ContentConfiguration PBXProjectModuleGUID XCMainBuildResultsModuleGUID PBXProjectModuleLabel Build Results XCBuildResultsTrigger_Collapse 1021 XCBuildResultsTrigger_Open 1011 GeometryConfiguration Frame {{0, 285}, {719, 236}} RubberWindowFrame 660 210 719 562 0 0 1440 878 Module PBXBuildResultsModule Proportion 236pt Proportion 521pt Name Build Results ServiceClasses PBXBuildResultsModule StatusbarIsVisible TableOfContents 060D9AEF13D8CE5900152410 06D66239151BD16E009F482C 1CD0528F0623707200166675 XCMainBuildResultsModuleGUID ToolbarConfiguration xcode.toolbar.config.buildV3 WindowContentMinSize 486 300 WindowString 660 210 719 562 0 0 1440 878 WindowToolGUID 060D9AEF13D8CE5900152410 WindowToolIsVisible FirstTimeWindowDisplayed Identifier windowTool.debugger Layout Dock ContentConfiguration Debugger HorizontalSplitView _collapsingFrameDimension 0.0 _indexOfCollapsedView 0 _percentageOfCollapsedView 0.0 isCollapsed yes sizes {{0, 0}, {317, 164}} {{317, 0}, {377, 164}} VerticalSplitView _collapsingFrameDimension 0.0 _indexOfCollapsedView 0 _percentageOfCollapsedView 0.0 isCollapsed yes sizes {{0, 0}, {694, 164}} {{0, 164}, {694, 216}} LauncherConfigVersion 8 PBXProjectModuleGUID 1C162984064C10D400B95A72 PBXProjectModuleLabel Debug - GLUTExamples (Underwater) GeometryConfiguration DebugConsoleDrawerSize {100, 120} DebugConsoleVisible None DebugConsoleWindowFrame {{200, 200}, {500, 300}} DebugSTDIOWindowFrame {{200, 200}, {500, 300}} Frame {{0, 0}, {694, 380}} RubberWindowFrame 321 238 694 422 0 0 1440 878 Module PBXDebugSessionModule Proportion 100% Proportion 100% Name Debugger ServiceClasses PBXDebugSessionModule StatusbarIsVisible TableOfContents 1CD10A99069EF8BA00B06720 1C0AD2AB069F1E9B00FABCE6 1C162984064C10D400B95A72 1C0AD2AC069F1E9B00FABCE6 ToolbarConfiguration xcode.toolbar.config.debugV3 WindowString 321 238 694 422 0 0 1440 878 WindowToolGUID 1CD10A99069EF8BA00B06720 WindowToolIsVisible FirstTimeWindowDisplayed Identifier windowTool.find Layout Dock Dock ContentConfiguration PBXProjectModuleGUID 1CDD528C0622207200134675 PBXProjectModuleLabel <No Editor> PBXSplitModuleInNavigatorKey Split0 PBXProjectModuleGUID 1CD0528D0623707200166675 SplitCount 1 StatusBarVisibility 1 GeometryConfiguration Frame {{0, 0}, {781, 167}} RubberWindowFrame 62 385 781 470 0 0 1440 878 Module PBXNavigatorGroup Proportion 781pt Proportion 50% BecomeActive 1 ContentConfiguration PBXProjectModuleGUID 1CD0528E0623707200166675 PBXProjectModuleLabel Project Find GeometryConfiguration Frame {{8, 0}, {773, 254}} RubberWindowFrame 62 385 781 470 0 0 1440 878 Module PBXProjectFindModule Proportion 50% Proportion 428pt Name Project Find ServiceClasses PBXProjectFindModule StatusbarIsVisible TableOfContents 1C530D57069F1CE1000CFCEE 1C530D58069F1CE1000CFCEE 1C530D59069F1CE1000CFCEE 1CDD528C0622207200134675 1C530D5A069F1CE1000CFCEE 1CE0B1FE06471DED0097A5F4 1CD0528E0623707200166675 WindowString 62 385 781 470 0 0 1440 878 WindowToolGUID 1C530D57069F1CE1000CFCEE WindowToolIsVisible FirstTimeWindowDisplayed Identifier MENUSEPARATOR FirstTimeWindowDisplayed Identifier windowTool.debuggerConsole Layout Dock BecomeActive 1 ContentConfiguration PBXProjectModuleGUID 1C78EAAC065D492600B07095 PBXProjectModuleLabel Debugger Console GeometryConfiguration Frame {{0, 0}, {440, 358}} RubberWindowFrame 650 41 440 400 0 0 1280 1002 Module PBXDebugCLIModule Proportion 358pt Proportion 358pt Name Debugger Console ServiceClasses PBXDebugCLIModule StatusbarIsVisible TableOfContents 1C78EAAD065D492600B07095 1C78EAAE065D492600B07095 1C78EAAC065D492600B07095 ToolbarConfiguration xcode.toolbar.config.consoleV3 WindowString 650 41 440 400 0 0 1280 1002 WindowToolGUID 1C78EAAD065D492600B07095 WindowToolIsVisible Identifier windowTool.snapshots Layout Dock Module XCSnapshotModule Proportion 100% Proportion 100% Name Snapshots ServiceClasses XCSnapshotModule StatusbarIsVisible Yes ToolbarConfiguration xcode.toolbar.config.snapshots WindowString 315 824 300 550 0 0 1440 878 WindowToolIsVisible Yes FirstTimeWindowDisplayed Identifier windowTool.scm Layout Dock ContentConfiguration PBXProjectModuleGUID 1C78EAB2065D492600B07095 PBXProjectModuleLabel <No Editor> PBXSplitModuleInNavigatorKey Split0 PBXProjectModuleGUID 1C78EAB3065D492600B07095 SplitCount 1 StatusBarVisibility 1 GeometryConfiguration Frame {{0, 0}, {452, 0}} RubberWindowFrame 743 379 452 308 0 0 1280 1002 Module PBXNavigatorGroup Proportion 0pt BecomeActive 1 ContentConfiguration PBXProjectModuleGUID 1CD052920623707200166675 PBXProjectModuleLabel SCM GeometryConfiguration ConsoleFrame {{0, 259}, {452, 0}} Frame {{0, 7}, {452, 259}} RubberWindowFrame 743 379 452 308 0 0 1280 1002 TableConfiguration Status 30 FileName 199 Path 197.09500122070312 TableFrame {{0, 0}, {452, 250}} Module PBXCVSModule Proportion 262pt Proportion 266pt Name SCM ServiceClasses PBXCVSModule StatusbarIsVisible TableOfContents 1C78EAB4065D492600B07095 1C78EAB5065D492600B07095 1C78EAB2065D492600B07095 1CD052920623707200166675 ToolbarConfiguration xcode.toolbar.config.scm WindowString 743 379 452 308 0 0 1280 1002 FirstTimeWindowDisplayed Identifier windowTool.breakpoints IsVertical Layout Dock BecomeActive 1 ContentConfiguration PBXBottomSmartGroupGIDs 1C77FABC04509CD000000102 PBXProjectModuleGUID 1CE0B1FE06471DED0097A5F4 PBXProjectModuleLabel Files PBXProjectStructureProvided no PBXSmartGroupTreeModuleColumnData PBXSmartGroupTreeModuleColumnWidthsKey 168 PBXSmartGroupTreeModuleColumnsKey_v4 MainColumn PBXSmartGroupTreeModuleOutlineStateKey_v7 PBXSmartGroupTreeModuleOutlineStateExpansionKey 1C77FABC04509CD000000102 PBXSmartGroupTreeModuleOutlineStateSelectionKey 0 PBXSmartGroupTreeModuleOutlineStateVisibleRectKey {{0, 0}, {168, 350}} PBXTopSmartGroupGIDs XCIncludePerspectivesSwitch 0 GeometryConfiguration Frame {{0, 0}, {185, 368}} GroupTreeTableConfiguration MainColumn 168 RubberWindowFrame 315 424 744 409 0 0 1440 878 Module PBXSmartGroupTreeModule Proportion 185pt ContentConfiguration PBXProjectModuleGUID 1CA1AED706398EBD00589147 PBXProjectModuleLabel Detail GeometryConfiguration Frame {{190, 0}, {554, 368}} RubberWindowFrame 315 424 744 409 0 0 1440 878 Module XCDetailModule Proportion 554pt Proportion 368pt MajorVersion 3 MinorVersion 0 Name Breakpoints ServiceClasses PBXSmartGroupTreeModule XCDetailModule StatusbarIsVisible TableOfContents 1CDDB66807F98D9800BB5817 1CDDB66907F98D9800BB5817 1CE0B1FE06471DED0097A5F4 1CA1AED706398EBD00589147 ToolbarConfiguration xcode.toolbar.config.breakpointsV3 WindowString 315 424 744 409 0 0 1440 878 WindowToolGUID 1CDDB66807F98D9800BB5817 WindowToolIsVisible FirstTimeWindowDisplayed Identifier windowTool.debugAnimator Layout Dock Module PBXNavigatorGroup Proportion 100% Proportion 100% Name Debug Visualizer ServiceClasses PBXNavigatorGroup StatusbarIsVisible ToolbarConfiguration xcode.toolbar.config.debugAnimatorV3 WindowString 100 100 700 500 0 0 1280 1002 FirstTimeWindowDisplayed Identifier windowTool.bookmarks Layout Dock Module PBXBookmarksModule Proportion 100% Proportion 100% Name Bookmarks ServiceClasses PBXBookmarksModule StatusbarIsVisible WindowString 538 42 401 187 0 0 1280 1002 Identifier windowTool.projectFormatConflicts Layout Dock Module XCProjectFormatConflictsModule Proportion 100% Proportion 100% Name Project Format Conflicts ServiceClasses XCProjectFormatConflictsModule StatusbarIsVisible WindowContentMinSize 450 300 WindowString 50 850 472 307 0 0 1440 877 FirstTimeWindowDisplayed Identifier windowTool.classBrowser Layout Dock BecomeActive 1 ContentConfiguration OptionsSetName Hierarchy, all classes PBXProjectModuleGUID 1CA6456E063B45B4001379D8 PBXProjectModuleLabel Class Browser - NSObject GeometryConfiguration ClassesFrame {{0, 0}, {374, 96}} ClassesTreeTableConfiguration PBXClassNameColumnIdentifier 208 PBXClassBookColumnIdentifier 22 Frame {{0, 0}, {630, 331}} MembersFrame {{0, 105}, {374, 395}} MembersTreeTableConfiguration PBXMemberTypeIconColumnIdentifier 22 PBXMemberNameColumnIdentifier 216 PBXMemberTypeColumnIdentifier 97 PBXMemberBookColumnIdentifier 22 PBXModuleWindowStatusBarHidden2 1 RubberWindowFrame 385 179 630 352 0 0 1440 878 Module PBXClassBrowserModule Proportion 332pt Proportion 332pt Name Class Browser ServiceClasses PBXClassBrowserModule StatusbarIsVisible TableOfContents 1C0AD2AF069F1E9B00FABCE6 1C0AD2B0069F1E9B00FABCE6 1CA6456E063B45B4001379D8 ToolbarConfiguration xcode.toolbar.config.classbrowser WindowString 385 179 630 352 0 0 1440 878 WindowToolGUID 1C0AD2AF069F1E9B00FABCE6 WindowToolIsVisible Identifier windowTool.refactoring IncludeInToolsMenu Layout Dock BecomeActive GeometryConfiguration Frame {0, 0}, {500, 335} RubberWindowFrame {0, 0}, {500, 335} Module XCRefactoringModule Proportion 100% Proportion 100% Name Refactoring ServiceClasses XCRefactoringModule WindowString 200 200 500 356 0 0 1920 1200 tools/macosx/installer_gui/ocs_agent_config/ocs_agent_config.xcodeproj/ocs.pbxuser010064400017500001750000000257631173606111100360000ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5// !$*UTF8*$! { 0606C15E14DCA3BF008033F9 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 0632F49314DB45F00064D8E2 /* French */; name = "Localizable.strings: 6"; rLen = 2; rLoc = 63; rType = 0; vrLen = 488; vrLoc = 0; }; 0606C16914DCA4D3008033F9 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = B47CF354067B4E030066DBF6 /* English */; name = "Localizable.strings: 13"; rLen = 0; rLoc = 261; rType = 0; vrLen = 920; vrLoc = 355; }; 0606C1A814DCA789008033F9 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = B44C200906739AE500D31AA1 /* ocs_agent_configPane.m */; name = "ocs_agent_configPane.m: 223"; rLen = 0; rLoc = 7876; rType = 0; vrLen = 1073; vrLoc = 7130; }; 0606C1A914DCA789008033F9 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 0649FBA414D9F110001EC640 /* French */; name = "InfoPlist.strings: 16"; rLen = 0; rLoc = 398; rType = 0; vrLen = 401; vrLoc = 0; }; 0632F49314DB45F00064D8E2 /* French */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {1118, 578}}"; sepNavSelRange = "{531, 0}"; sepNavVisRange = "{0, 1364}"; sepNavWindowFrame = "{{15, 167}, {948, 706}}"; }; }; 0632F4CF14DB4C470064D8E2 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 0649FBA014D9F0FD001EC640 /* English */; name = "InfoPlist.strings: 1"; rLen = 0; rLoc = 262; rType = 0; vrLen = 145; vrLoc = 0; }; 0649FBA014D9F0FD001EC640 /* English */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {935, 628}}"; sepNavSelRange = "{261, 0}"; sepNavVisRange = "{0, 401}"; sepNavWindowFrame = "{{316, 76}, {994, 756}}"; }; }; 0649FBA414D9F110001EC640 /* French */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {1082, 281}}"; sepNavSelRange = "{398, 0}"; sepNavVisRange = "{0, 401}"; sepNavWindowFrame = "{{84, 104}, {948, 706}}"; }; }; 0649FBA514D9F123001EC640 /* French */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {1082, 280}}"; sepNavSelRange = "{137, 0}"; sepNavVisRange = "{0, 137}"; sepNavWindowFrame = "{{84, 104}, {948, 706}}"; }; }; 0673FEEB14DB417F008A3FF8 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = B44C200806739AE500D31AA1 /* ocs_agent_configPane.h */; name = "ocs_agent_configPane.h: 20"; rLen = 0; rLoc = 507; rType = 0; vrLen = 658; vrLoc = 66; }; 06992DAA12ED12D000448686 /* ocs_agent_configPane.m:134 */ = { isa = PBXFileBreakpoint; actions = ( ); breakpointStyle = 0; continueAfterActions = 0; countType = 0; delayBeforeContinue = 0; fileReference = B44C200906739AE500D31AA1 /* ocs_agent_configPane.m */; functionName = "-getConfig:"; hitCount = 0; ignoreCount = 0; lineNumber = 134; location = ocs_agent_config; modificationTime = 332886961.303945; originalNumberOfMultipleMatches = 1; state = 0; }; 069E8F421402FC9D00897797 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 32DBCF630370AF2F00C91783 /* ocs_agent_config_Prefix.pch */; name = "ocs_agent_config_Prefix.pch: 1"; rLen = 0; rLoc = 0; rType = 0; vrLen = 162; vrLoc = 0; }; 069E8F941402FEAC00897797 /* objc.h */ = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = objc.h; path = /Developer/SDKs/MacOSX10.4u.sdk/usr/include/objc/objc.h; sourceTree = ""; }; 069E8FAF1402FF0400897797 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 069E8F941402FEAC00897797 /* objc.h */; name = "objc.h: 34"; rLen = 0; rLoc = 1173; rType = 0; vrLen = 461; vrLoc = 834; }; 06CD1B9212DD81CD0064FB6B /* Source Control */ = { isa = PBXSourceControlManager; fallbackIsa = XCSourceControlManager; isSCMEnabled = 0; scmConfiguration = { repositoryNamesForRoots = { "" = ""; }; }; scmType = ""; }; 06CD1B9312DD81CD0064FB6B /* Code sense */ = { isa = PBXCodeSenseManager; indexTemplatePath = ""; }; 06D66236151BD16E009F482C /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 0649FBA414D9F110001EC640 /* French */; name = "InfoPlist.strings: 16"; rLen = 0; rLoc = 398; rType = 0; vrLen = 401; vrLoc = 0; }; 06EBE12C14D9F59800B916EB /* PlistBookmark */ = { isa = PlistBookmark; fRef = 8D5B49B7048680CD000E48DA /* Info.plist */; fallbackIsa = PBXBookmark; isK = 0; kPath = ( ); name = /Users/ocs/work/ocs/dev/beta5/ocs_agent_config/Info.plist; rLen = 0; rLoc = 9223372036854775808; }; 089C1669FE841209C02AAC07 /* Project object */ = { activeBuildConfigurationName = Release; activeTarget = 8D5B49AC048680CD000E48DA /* OCS Agent configuration */; addToTargets = ( 8D5B49AC048680CD000E48DA /* OCS Agent configuration */, ); breakpoints = ( 06992DAA12ED12D000448686 /* ocs_agent_configPane.m:134 */, ); codeSenseManager = 06CD1B9312DD81CD0064FB6B /* Code sense */; perUserDictionary = { PBXConfiguration.PBXFileTableDataSource3.PBXBookmarksDataSource = { PBXFileTableDataSourceColumnSortingDirectionKey = "-1"; PBXFileTableDataSourceColumnSortingKey = PBXBookmarksDataSource_NameID; PBXFileTableDataSourceColumnWidthsKey = ( 200, 200, 713.58349609375, ); PBXFileTableDataSourceColumnsKey = ( PBXBookmarksDataSource_LocationID, PBXBookmarksDataSource_NameID, PBXBookmarksDataSource_CommentsID, ); }; PBXConfiguration.PBXFileTableDataSource3.PBXErrorsWarningsDataSource = { PBXFileTableDataSourceColumnSortingDirectionKey = "-1"; PBXFileTableDataSourceColumnSortingKey = PBXErrorsWarningsDataSource_LocationID; PBXFileTableDataSourceColumnWidthsKey = ( 20, 300, 45.2085, ); PBXFileTableDataSourceColumnsKey = ( PBXErrorsWarningsDataSource_TypeID, PBXErrorsWarningsDataSource_MessageID, PBXErrorsWarningsDataSource_LocationID, ); }; PBXConfiguration.PBXFileTableDataSource3.PBXExecutablesDataSource = { PBXFileTableDataSourceColumnSortingDirectionKey = "-1"; PBXFileTableDataSourceColumnSortingKey = PBXExecutablesDataSource_NameID; PBXFileTableDataSourceColumnWidthsKey = ( 22, 300, 792, ); PBXFileTableDataSourceColumnsKey = ( PBXExecutablesDataSource_ActiveFlagID, PBXExecutablesDataSource_NameID, PBXExecutablesDataSource_CommentsID, ); }; PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = { PBXFileTableDataSourceColumnSortingDirectionKey = "-1"; PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID; PBXFileTableDataSourceColumnWidthsKey = ( 20, 904, 20, 48, 43, 43, 20, ); PBXFileTableDataSourceColumnsKey = ( PBXFileDataSource_FiletypeID, PBXFileDataSource_Filename_ColumnID, PBXFileDataSource_Built_ColumnID, PBXFileDataSource_ObjectSize_ColumnID, PBXFileDataSource_Errors_ColumnID, PBXFileDataSource_Warnings_ColumnID, PBXFileDataSource_Target_ColumnID, ); }; PBXConfiguration.PBXFileTableDataSource3.PBXFindDataSource = { PBXFileTableDataSourceColumnSortingDirectionKey = "-1"; PBXFileTableDataSourceColumnSortingKey = PBXFindDataSource_LocationID; PBXFileTableDataSourceColumnWidthsKey = ( 200, 918, ); PBXFileTableDataSourceColumnsKey = ( PBXFindDataSource_MessageID, PBXFindDataSource_LocationID, ); }; PBXConfiguration.PBXTargetDataSource.PBXTargetDataSource = { PBXFileTableDataSourceColumnSortingDirectionKey = "-1"; PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID; PBXFileTableDataSourceColumnWidthsKey = ( 20, 864, 60, 20, 48, 43, 43, ); PBXFileTableDataSourceColumnsKey = ( PBXFileDataSource_FiletypeID, PBXFileDataSource_Filename_ColumnID, PBXTargetDataSource_PrimaryAttribute, PBXFileDataSource_Built_ColumnID, PBXFileDataSource_ObjectSize_ColumnID, PBXFileDataSource_Errors_ColumnID, PBXFileDataSource_Warnings_ColumnID, ); }; PBXPerProjectTemplateStateSaveDate = 354144537; PBXWorkspaceStateSaveDate = 354144537; }; perUserProjectItems = { 0606C15E14DCA3BF008033F9 /* PBXTextBookmark */ = 0606C15E14DCA3BF008033F9 /* PBXTextBookmark */; 0606C16914DCA4D3008033F9 /* PBXTextBookmark */ = 0606C16914DCA4D3008033F9 /* PBXTextBookmark */; 0606C1A814DCA789008033F9 /* PBXTextBookmark */ = 0606C1A814DCA789008033F9 /* PBXTextBookmark */; 0606C1A914DCA789008033F9 /* PBXTextBookmark */ = 0606C1A914DCA789008033F9 /* PBXTextBookmark */; 0632F4CF14DB4C470064D8E2 /* PBXTextBookmark */ = 0632F4CF14DB4C470064D8E2 /* PBXTextBookmark */; 0673FEEB14DB417F008A3FF8 /* PBXTextBookmark */ = 0673FEEB14DB417F008A3FF8 /* PBXTextBookmark */; 069E8F421402FC9D00897797 /* PBXTextBookmark */ = 069E8F421402FC9D00897797 /* PBXTextBookmark */; 069E8FAF1402FF0400897797 /* PBXTextBookmark */ = 069E8FAF1402FF0400897797 /* PBXTextBookmark */; 06D66236151BD16E009F482C /* PBXTextBookmark */ = 06D66236151BD16E009F482C /* PBXTextBookmark */; 06EBE12C14D9F59800B916EB /* PlistBookmark */ = 06EBE12C14D9F59800B916EB /* PlistBookmark */; }; sourceControlManager = 06CD1B9212DD81CD0064FB6B /* Source Control */; userBuildSettings = { }; }; 089C167EFE841241C02AAC07 /* English */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {1082, 280}}"; sepNavSelRange = "{0, 0}"; sepNavVisRange = "{0, 144}"; sepNavVisRect = "{{0, 0}, {955, 627}}"; sepNavWindowFrame = "{{193, -2}, {994, 756}}"; }; }; 32DBCF630370AF2F00C91783 /* ocs_agent_config_Prefix.pch */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {1082, 280}}"; sepNavSelRange = "{0, 0}"; sepNavVisRange = "{0, 162}"; sepNavVisRect = "{{0, 0}, {955, 627}}"; sepNavWindowFrame = "{{13, 117}, {994, 756}}"; }; }; 8D5B49AC048680CD000E48DA /* OCS Agent configuration */ = { activeExec = 0; }; 8D5B49B7048680CD000E48DA /* Info.plist */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {955, 627}}"; sepNavSelRange = "{498, 0}"; sepNavVisRect = "{{0, 0}, {955, 627}}"; sepNavWindowFrame = "{{446, 90}, {994, 756}}"; }; }; B44C200806739AE500D31AA1 /* ocs_agent_configPane.h */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {1082, 481}}"; sepNavSelRange = "{507, 0}"; sepNavVisRange = "{66, 658}"; sepNavVisRect = "{{0, 0}, {711, 429}}"; sepNavWindowFrame = "{{459, 200}, {750, 558}}"; }; }; B44C200906739AE500D31AA1 /* ocs_agent_configPane.m */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {1454, 3185}}"; sepNavSelRange = "{7876, 0}"; sepNavVisRange = "{7130, 1073}"; sepNavVisRect = "{{0, 806}, {910, 675}}"; sepNavWindowFrame = "{{125, 90}, {1188, 788}}"; }; }; B47CF354067B4E030066DBF6 /* English */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {1082, 494}}"; sepNavSelRange = "{261, 0}"; sepNavVisRange = "{355, 920}"; sepNavVisRect = "{{0, 0}, {955, 627}}"; sepNavWindowFrame = "{{446, 90}, {994, 756}}"; }; }; B4A6B2A60673D523003CD9B2 /* InstallerSections.plist */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {955, 627}}"; sepNavSelRange = "{309, 0}"; sepNavVisRect = "{{0, 0}, {955, 627}}"; sepNavWindowFrame = "{{61, 75}, {994, 756}}"; }; }; } Ocsinventory-Unix-Agent-2.0.5/tools/macosx/installer_gui/ocs_agent_config/ocs_agent_configPane.h010064400017500001750000000015701173606111100326300ustar00guiguiguigui// // OCSINVENTORY-NG // // Copyleft Guillaume PROTET 2011 // // // This code is open source and may be copied and modified as long as the source // code is always made freely available. // Please refer to the General Public Licence http://www.gnu.org/ // // #import #import @interface ocs_agent_configPane : InstallerPane { IBOutlet NSTextField *server; IBOutlet NSTextField *tag; IBOutlet NSTextField *logfile; IBOutlet NSTextField *cacertfile; IBOutlet NSButton *debugmode; IBOutlet NSButton *download; IBOutlet NSPopUpButton *protocolist; NSFileManager *filemgr; NSString *tmpCfgFilePath; NSString *tmpModulesFilePath; NSString *tmpServerdirFilePath; NSString *tmpCacertFilePath; } - (IBAction) getConfig:(id)sender ; - (IBAction) chooseCacertFile:(id)sender; - (IBAction) chooseProtocol:(id)sender; @end tools/macosx/installer_gui/ocs_agent_config/ocs_agent_config_Prefix.pch010064400017500001750000000002421173606111100336000ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5// // Prefix header for all source files of the 'InstallerPlugin' target in the 'InstallerPlugin' project. // #ifdef __OBJC__ #import #endif Ocsinventory-Unix-Agent-2.0.5/tools/macosx/installer_gui/ocs_agent_config/English.lproj004075500017500001750000000000001173606116100310305ustar00guiguiguiguitools/macosx/installer_gui/ocs_agent_config/English.lproj/ocs_agent_config.nib004075500017500001750000000000001173606116100350075ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5tools/macosx/installer_gui/ocs_agent_config/English.lproj/ocs_agent_config.nib/keyedobjects.nib010064400017500001750000000247351173606111100402360ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5bplist00Ô;?\NSMutableSet£>@7UNSSetÒ:BC€f«DEFGHIJKLMN€ €€#€€ƒ€…€‡€‰€‹€€ÔPQRSTU WNSLabel]NSDestinationXNSSource€ € € €Ò./Y€€ _ocs_agent_configPaneYfirstPaneÒ34]^_NSNibOutletConnector£]_7^NSNibConnectorÔPQRSbcU€ €"€€ ØfghijklmnopqrptYNSEnabledWNSFrameVNSCell[NSSuperviewXNSvFlags_NSNextResponderXNSWindow €€€€!€€Ùvij.kwlxyz{|}tt[NSExtension[NSFrameSizeZNSSubviews€~€€|€}€€{€€$_{{20, 50}, {269, 22}}Ù„…†‡ˆ‰Š‹ŒŽc‘’m”[NSCellFlags\NSCellFlags2ZNSContents]NSControlView[NSTextColorYNSSupport_NSDrawsBackground_NSBackgroundColorÿÿÿÿ„qþA@€€€ €€ €PÔ—˜™š›œVNSNameVNSSizeXNSfFlags€€#@*\LucidaGrandeÒ34 ¡VNSFont¢ 7Õ£¤¥¦§¨©ª«]NSCatalogName[NSColorName\NSColorSpaceWNSColor€€€€VSystem_textBackgroundColorÓ¥¯¨±²WNSWhite€B1Ò34´µWNSColor¢´7Õ£¤¥¦§¨¹ªº€€€€YtextColorÓ¥¯¨±¾€B0Ò34ÀÁ_NSTextFieldCell¤ÀÂÃ7\NSActionCellVNSCellÒ34ÅÆ[NSTextField¥ÅÇÈÉ7YNSControlVNSView[NSResponderZcacertfileÔPQRSÍpU€ €€€€ Ò:BÒ€f®ÓÔÕÖרÙÚÛÜcÞßà€%€2€5€>€A€E€I€L€P€j€€o€s€wØfghijklmãäpæçpt €&€'€ €1€€_{{263, 135}, {201, 26}}Þì„í…îïð†‡ñ‰òóôõö÷ŽŽúûÓýþ’_NSPeriodicInterval]NSButtonFlags_NSAlternateContents_NSKeyEquivalent]NSNormalImage_NSAlternateImage_NSPeriodicDelay^NSButtonFlags2þHÕA’Cþ@€8€5€ €<€€9_OCS server URL :Õ£¤¥¦§¨HªI€€€:€;\controlColorÓ¥¯¨±M€M0.6666666667Õ£¤¥¦§¨Qªº€€€=€_controlTextColorØfghijklmVWpYrpt €?€@€€!€€_{{19, 120}, {146, 22}}Ù„…†‡ˆ‰Š‹_`ŽÖ‘’m”ÿÿÿÿ”qþA@€€>€ €€ €Øfghijklmjkpmrpt €B€C€€!€€_{{17, 150}, {167, 17}}Ø„…†‡ˆ‰‹stu×A’Cþ@€D€A€ €<€€9_TAG value (optional):Øfghijklm~prpt €F€G€€!€€_{{262, 258}, {95, 17}}Ø„…†‡ˆ‰‹‡ˆ‰ØA’Cþ@€H€E€ €<€€9^/ocsinventory Øfghijklm’“p•rpt €J€K€€!€€_{{20, 189}, {185, 22}}Ù„…†‡ˆ‰Š‹›œŽÙ‘’m”ÿÿÿÿ”qþA@€€I€ €€ €Øfghijklm¦§p©rpt €M€N€€!€€_{{17, 219}, {114, 17}}Ø„…†‡ˆ‰‹¯°±ÚA’Cþ@€O€L€ €<€€9_Log File path :Øfghijklmº»p½¾pt €Q€R€€i€€_{{17, 252}, {98, 26}}ßìÄí…îïñ‡ÄÅƉòÇÈÉóʱËÌÍŽÏÐÛÒmÔ’ÖmmÙÚÙ_NSPreferredEdgeZNSMenuItem_NSMenuItemRespectAlignmentVNSMenu_NSUsesItemFromMenu]NSAltersState_NSArrowPositionKÿÿÿÿ„Aþ@‚@ÿ€€T€S€P€V €W€ €hÔ—˜™š›Þ߀€#@*ÒáâãYNS.string€UPÒ34åæ_NSMutableString£åç7XNSStringÛéêëÆìíîïðñòóÙÔõ»÷ŽùúŽXNSAction_NSKeyEquivModMaskWNSStateYNSOnImageXNSTargetZNSKeyEquiv]NSMnemonicLoc\NSMixedImageWNSTitle€\€W€X€R€]€ÿÿÿ€Z€Óýñþÿ[NSMenuItems€_€g€^Ó.€,€Y€*_NSMenuCheckmarkÓ.€,€[€*_NSMenuMixedState__popUpItemAction:Ò34 ZNSMenuItem¢ 7ZOtherViewsÒ:B€f£Ò€V€`€cÚéêÆìíîïðñÔõ»÷Žú €b€W€X€R€]€ÿÿÿ€Z€aUItem2__popUpItemAction:ÚéêÆìíîïðñ$%Ôõ»÷Ž+ú-€e€W€X€R€]€ÿÿÿ€Z€dUItem3__popUpItemAction:Ò3412^NSMutableArray£137WNSArrayÒ3456VNSMenu¢57Ò3489_NSPopUpButtonCell¦8:;<7^NSMenuItemCell\NSActionCellVNSCellÒ34>?]NSPopUpButton¦>ÇÈÉ7ØfghijklmBCpEçpt €k€l€€1€€_{{291, 42}, {97, 32}}Ýì„í…îïñ†‡‰òóKLMNŽP’RÜþ’VÙþÿÿÿÿ†‚@ÿ€€n€€m€j€0€ÈVBrowseÒáâZ€UPØfghijklm]^p`rpt €p€q€€!€€_{{17, 63}, {407, 34}}Ø„…†‡ˆ‰‹fghÞA’Cþ@€r€o€ €<€€9_1Certificate File (needed by 'Download feature') :Øfghijklmqrptçpt €t€u€€1€€_{{263, 175}, {103, 18}}Þì„í…îïð†‡ñ‰òóz{|÷ŽŽú€ßýþ’…þH€ StagÔPQRÅÆUÛ€€Ž€ €P_chooseProtocol:Ò34ËÌ_NSNibControlConnector£ËÍ7^NSNibConnectorÔPQRÅÐUÜ€€‘€ €j_chooseCacertFile:Ò:ÕÖ€•¯#×ÛUÚ^pÖCØ4 ÔÕÒ×äܧßoÔkà“WÓŠÞ»rÙc€“€P€ €L€q€€>€l€E€7€4€2€5€V€A€'€j€N€c€s€€W€C€w€K€@€%€`€G€y€o€R€u€I€Ò./ü€€”]NSApplicationÒ343ÿ¢37Ò:Õ€•¯# p pÞ pÜpÕÔppÔpÓpÚÔpc»×pÙÖpÔØàpÛßpp€€€€€o€€€j€€5€2€€€W€€%€€L€W€€€R€A€€I€>€€W€E€w€€P€s€€Ò:Õ(€•¯$×ÛUÚ^pÖCØ4 ÔÕÒ×äܧßo Ôkà“WÓŠr»ÞÙc€“€P€ €L€q€€>€l€E€7€4€2€5€V€A€'€j€N€c€s€€€W€C€w€K€@€%€y€G€`€u€R€o€I€Ò:ÕO€•¯$PQYSTUVWXYZ[\]^_`abcdefghijklmnopqrs€™€š€ €›€œ€€ž€Ÿ€ €¡€¢€£€¤€¥€¦€§€¨€©€ª€«€¬€­€®€¯€°€±€²€³€´€µ€¶€·€¸€¹€º€»[Application]Pop Up Button_Static Text (Log File path :)_CText Field Cell (Certificate File (needed by 'Download feature') :)TViewZText Field_Button Cell (Browse)_Static Text (/ocsinventory )_"Text Field Cell (OCS server URL :)_Text Field Cell-1\Text Field-1_Static Text (OCS server URL :)YMenu Item_#Static Text (TAG value (optional):)_Button Cell (Download feature)_Push Button (Browse)_!Text Field Cell (Log File path :)_Menu Item (Item3)_Check Box (Debug Mode)_Text Field Cell-3\File's Owner_Menu (OtherViews)_'Text Field Cell (TAG value (optional):)_@Static Text (Set your OCS Inventory Agent MacOSX configuration)_Text Field Cell-2_Text Field Cell_Check Box (Download feature)_DText Field Cell (Set your OCS Inventory Agent MacOSX configuration)_ Text Field Cell (/ocsinventory )_Menu Item (Item2)_Button Cell (Debug Mode)_Pop Up Button Cell_?Static Text (Certificate File (needed by 'Download feature') :)\Text Field-2\Text Field-3Ò:Õ™€• Ò:Õœ€• Ò:ÕŸ€•¯/×ÛMLUÚI^pÖFCØN4 ÔÕGÒ×äKܧßo ÔHEkà“WŠÓDJÞ»rÙc€“€P€€‹€ €L€…€q€€>€#€l€E€€7€4€2€5€€V€A€'€‰€j€N€c€s€€€W€ƒ€€C€w€K€@€`€y€G€%€ €‡€o€R€u€I€Ò:ÕÑ€•¯/ÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ€À€Á€Â€Ã€Ä€Å€Æ€Ç€È€É€Ê€Ë€Ì€Í€Î€Ï€Ð€Ñ€Ò€Ó€Ô€Õ€Ö€×€Ø€Ù€Ú€Û€Ü€Ý€Þ€ß€à€á€â€ã€ä€å€æ€ç€è€é€ê€ë€ì€í€îÿÿÿÿÿÿÿý!LFH[ ZBRQ  A$_I;W#@Yd"cGTOVS%]U^M?X\8Ò:B1€f Ò:Õ4€• Ò:Õ7€• Ò349:^NSIBObjectData¢97_NSKeyedArchiverÑ=>]IB.objectdata€"+5:?(.y“¦´ÆÒÙõ!,:LXt‚’”–˜šœž ¢¤¦¨ª¬®°²´½ÉËÍàéôý -6ACDMZagpr‰‹‘“•—™›Ÿ°¸ÆÏÑÓÕ×àâäû%,;LNPRTu‡Žš£µ¾¿ÁÃÅÈÊÌÎóÿ !#%')AfrŠ˜¤®ÂÖßäæèêìîïñò '*7@GLao{ˆ’”–˜š¡·ÄÌÎÐÓÜäéþ"+=FSZcoz„‹—¢³µ·¹»ÄÆãåçéëíïñóõ÷ùûýÿ ! # % ' * , . 0 J ƒ ˜ ¦ ¼ Î Ü ï       " $ & ( * , . 0 2 E R a c e g o x ” ™ ¢ ® ° ² » Ä Ú ß è õ þ   $ / P Q S U W Z \ ^ ` z Ÿ ¨ ­ ¯ ± ³ µ · ¸ º Û Ü Þ à â å ç é ë  & + 0 2 4 6 8 : < O d f h j l y † ˆ – « ­ ¯ ± ³ Æ ç è ê ì î ñ ó õ ÷  5 > C E G I K M N P q r t v x { }  š » À Å Ç É Ë Í Ï Ñ é   3TY^`bdfhjyš›Ÿ¡¤¦¨ªÃèñöøúüþ$%')+.024Mnsxz|~€‚„–·¸º¼¾ÁÃÅÇß.@Kho„’¤¦¯´·¹»½¿ÁÂÄÆÉÊËÍÏàâäíïø '0]fz‚Œ• ®»ÃÅÊÌÎÐÒÔÙÛÝêöøúü   !.024G[dotˆŠ‘“•—ÀÂÇÉËÍÏÑÖØÚàô$&(*,.357=QZipxˆ–ª·ÆÓÚãñþ "$&)+-/G|~ƒŒ‘“•—™›Ÿ¡¨±³´ÕÖØÚÜßáãåý#(*,.024h‰ŠŒŽ“•—™³ìîóøúüþ 679;=@BDF_€…ŠŒŽ’”–ËÖßìõ$579;=FWY[]_gxz|~€ŒŸ¡£¥¬½¿ÁÃÅÉÚÜÞàâôý+<>@BDXac¬®°²´¶¸º¼¾ÀÂÄÆÈÊÌÎÐÒÔÖØÚÜÞàâäæèêìîðòûýÿ $&oqsuwy{}ƒ…‡‰‹‘“•—™›Ÿ¡£¥§©«­¯±³µ¾À  !#%')+-/13579;=?ACEGIKMOQS\^©«­¯±³µ·¹»½¿ÁÃÅÇÉËÍÏÑÓÕ×ÙÛÝßáãåçéëíïñý +qv˜·Üðý(No†ª¾×ëø 6yŸ¾(<Wl®»ÈÑÓÔÝßàéëLNPRTVXZ\^`bdfhjlnprtvxz|~€‚„†ˆŠŒŽ’”–˜šœž ¢¤¦¨ª³µ      " $ & ( * , . 0 2 4 6 8 : < > @ B D F H J L N P R T V X Z \ ^ ` b d f h j l n p r t }  ƒ … ‡ ‰ ‹ ‘ “ • — ™ › Ÿ ¡ £ ¥ § © « ­ ¯ ± ³ µ · ¹ » ½ ¿ Á Ã Å Ç É Ë Í Ï Ñ Ó Õ × à â ã ì î ï ø ú û!!!!*!/!=?!?tools/macosx/installer_gui/ocs_agent_config/English.lproj/ocs_agent_config.nib/designable.nib010064400017500001750000002120431173606111100376470ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5 1060 10K549 851 1038.36 461.00 com.apple.InterfaceBuilder.CocoaPlugin 851 YES YES com.apple.InterfaceBuilder.CocoaPlugin PluginDependencyRecalculationVersion YES InstallerSection FirstResponder NSApplication ocs_agent_configPane 256 YES 268 {{263, 135}, {201, 26}} YES 67239424 0 Download feature LucidaGrande 13 1044 1211912703 2 NSImage NSSwitch NSSwitch 200 25 256 {{117, 256}, {146, 22}} YES -1804468671 272630784 YES 6 System textBackgroundColor 3 MQA 6 System textColor 3 MAA 256 {{132, 286}, {178, 17}} YES 67239424 272629760 OCS server URL : 6 System controlColor 3 MC42NjY2NjY2NjY3AA 6 System controlTextColor 256 {{19, 120}, {146, 22}} YES -1804468671 272630784 YES 256 {{17, 150}, {167, 17}} YES 67239424 272629760 TAG value (optional): 256 {{262, 258}, {95, 17}} YES 67239424 272629760 L29jc2ludmVudG9yeQo 256 {{20, 189}, {185, 22}} YES -1804468671 272630784 YES 256 {{17, 219}, {114, 17}} YES 67239424 272629760 Log File path : 256 {{17, 252}, {98, 26}} YES -2076049856 2048 109199615 1 LucidaGrande 13 16 400 75 1048576 2147483647 1 NSImage NSMenuCheckmark NSImage NSMenuMixedState _popUpItemAction: YES OtherViews YES Item2 1048576 2147483647 _popUpItemAction: Item3 1048576 2147483647 _popUpItemAction: 3 YES YES 1 256 {{291, 42}, {97, 32}} YES 67239424 134217728 Browse -2038284033 1 200 25 256 {{20, 50}, {269, 22}} YES -2072904127 272630784 YES 256 {{17, 63}, {407, 34}} YES 67239424 272629760 Certificate File (needed by 'Download feature') : 256 {{263, 175}, {103, 18}} YES 67239424 0 Debug Mode 1211912703 2 200 25 256 {{42, 333}, {343, 17}} YES 67239424 272629760 Set your OCS Inventory Agent MacOSX configuration {450, 360} NSView NSResponder YES firstPane 6 contentView 9 debugmode 65 chooseCacertFile: 66 tag 70 cacertfile 71 logfile 72 server 73 chooseProtocol: 76 protocolist 77 download 99 YES 0 YES -2 File's Owner -1 First Responder 5 ocs_agent_configPane 8 YES View 10 YES 13 YES 14 YES 15 YES 28 YES 29 YES 30 YES 33 YES 56 YES 59 YES 63 YES 64 YES 79 YES 81 82 83 84 85 86 87 88 YES 89 90 91 92 93 34 YES 37 36 35 -3 Application 94 YES 95 YES YES 10.IBPluginDependency 10.ImportedFromIB2 13.IBPluginDependency 13.ImportedFromIB2 14.IBPluginDependency 14.IBViewBoundsToFrameTransform 14.ImportedFromIB2 15.IBPluginDependency 15.IBViewBoundsToFrameTransform 15.ImportedFromIB2 28.IBPluginDependency 28.ImportedFromIB2 29.IBPluginDependency 29.IBViewBoundsToFrameTransform 29.ImportedFromIB2 30.IBPluginDependency 30.IBViewBoundsToFrameTransform 30.ImportedFromIB2 33.IBPluginDependency 33.ImportedFromIB2 34.IBPluginDependency 34.ImportedFromIB2 35.IBPluginDependency 35.ImportedFromIB2 36.IBPluginDependency 36.ImportedFromIB2 37.IBPluginDependency 37.ImportedFromIB2 5.ImportedFromIB2 56.IBPluginDependency 56.ImportedFromIB2 59.IBPluginDependency 59.ImportedFromIB2 63.IBPluginDependency 63.ImportedFromIB2 64.IBPluginDependency 64.IBViewBoundsToFrameTransform 64.ImportedFromIB2 79.IBPluginDependency 79.ImportedFromIB2 8.IBEditorWindowLastContentRect 8.IBPluginDependency 8.ImportedFromIB2 94.IBPluginDependency 94.IBViewBoundsToFrameTransform 95.IBPluginDependency YES com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin P4AAAL+AAABBoAAAwvoAAA com.apple.InterfaceBuilder.CocoaPlugin P4AAAL+AAABBEAAAwyUAAA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin P4AAAL+AAABBoAAAwyQAAA com.apple.InterfaceBuilder.CocoaPlugin P4AAAL+AAABBiAAAwz0AAA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin P4AAAL+AAABDk4AAw2wAAA com.apple.InterfaceBuilder.CocoaPlugin {{329, 485}, {450, 360}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin P4AAAL+AAABDg4AAwyIAAA com.apple.InterfaceBuilder.CocoaPlugin YES YES YES YES 99 YES FirstResponder NSObject IBUserSource InstallerPane NSObject IBUserSource InstallerSection NSObject IBUserSource NSView NSResponder myAction: id myAction: myAction: id IBUserSource ocs_agent_configPane InstallerPane YES YES chooseCacertFile: chooseProtocol: getConfig: YES id id id YES YES chooseCacertFile: chooseProtocol: getConfig: YES chooseCacertFile: id chooseProtocol: id getConfig: id YES YES cacertfile debugmode download logfile protocolist server tag YES NSTextField NSButton NSButton NSTextField NSPopUpButton NSTextField NSTextField YES YES cacertfile debugmode download logfile protocolist server tag YES cacertfile NSTextField debugmode NSButton download NSButton logfile NSTextField protocolist NSPopUpButton server NSTextField tag NSTextField IBProjectSource ocs_agent_configPane.h ocs_agent_configPane InstallerPane IBUserSource YES InstallerPane NSObject YES YES contentView firstKeyView initialKeyView lastKeyView nextPane parentSection YES NSView NSView NSView NSView InstallerPane id YES YES contentView firstKeyView initialKeyView lastKeyView nextPane parentSection YES contentView NSView firstKeyView NSView initialKeyView NSView lastKeyView NSView nextPane InstallerPane parentSection id IBFrameworkSource InstallerPlugins.framework/Headers/InstallerPane.h InstallerSection NSObject firstPane InstallerPane firstPane firstPane InstallerPane IBFrameworkSource InstallerPlugins.framework/Headers/InstallerSection.h NSActionCell NSCell IBFrameworkSource AppKit.framework/Headers/NSActionCell.h NSApplication NSResponder IBFrameworkSource AppKit.framework/Headers/NSApplication.h NSApplication IBFrameworkSource AppKit.framework/Headers/NSApplicationScripting.h NSApplication IBFrameworkSource AppKit.framework/Headers/NSColorPanel.h NSApplication IBFrameworkSource AppKit.framework/Headers/NSHelpManager.h NSApplication IBFrameworkSource AppKit.framework/Headers/NSPageLayout.h NSApplication IBFrameworkSource AppKit.framework/Headers/NSUserInterfaceItemSearching.h NSButton NSControl IBFrameworkSource AppKit.framework/Headers/NSButton.h NSButtonCell NSActionCell IBFrameworkSource AppKit.framework/Headers/NSButtonCell.h NSCell NSObject IBFrameworkSource AppKit.framework/Headers/NSCell.h NSControl NSView IBFrameworkSource AppKit.framework/Headers/NSControl.h NSFormatter NSObject IBFrameworkSource Foundation.framework/Headers/NSFormatter.h NSMenu NSObject IBFrameworkSource AppKit.framework/Headers/NSMenu.h NSMenuItem NSObject IBFrameworkSource AppKit.framework/Headers/NSMenuItem.h NSMenuItemCell NSButtonCell IBFrameworkSource AppKit.framework/Headers/NSMenuItemCell.h NSObject IBFrameworkSource AppKit.framework/Headers/NSAccessibility.h NSObject NSObject NSObject NSObject NSObject IBFrameworkSource AppKit.framework/Headers/NSDictionaryController.h NSObject IBFrameworkSource AppKit.framework/Headers/NSDragging.h NSObject IBFrameworkSource AppKit.framework/Headers/NSFontManager.h NSObject IBFrameworkSource AppKit.framework/Headers/NSFontPanel.h NSObject IBFrameworkSource AppKit.framework/Headers/NSKeyValueBinding.h NSObject NSObject IBFrameworkSource AppKit.framework/Headers/NSNibLoading.h NSObject IBFrameworkSource AppKit.framework/Headers/NSOutlineView.h NSObject IBFrameworkSource AppKit.framework/Headers/NSPasteboard.h NSObject IBFrameworkSource AppKit.framework/Headers/NSSavePanel.h NSObject IBFrameworkSource AppKit.framework/Headers/NSTableView.h NSObject IBFrameworkSource AppKit.framework/Headers/NSToolbarItem.h NSObject IBFrameworkSource AppKit.framework/Headers/NSView.h NSObject IBFrameworkSource Foundation.framework/Headers/NSArchiver.h NSObject IBFrameworkSource Foundation.framework/Headers/NSClassDescription.h NSObject IBFrameworkSource Foundation.framework/Headers/NSError.h NSObject IBFrameworkSource Foundation.framework/Headers/NSFileManager.h NSObject IBFrameworkSource Foundation.framework/Headers/NSKeyValueCoding.h NSObject IBFrameworkSource Foundation.framework/Headers/NSKeyValueObserving.h NSObject IBFrameworkSource Foundation.framework/Headers/NSKeyedArchiver.h NSObject IBFrameworkSource Foundation.framework/Headers/NSObject.h NSObject IBFrameworkSource Foundation.framework/Headers/NSObjectScripting.h NSObject IBFrameworkSource Foundation.framework/Headers/NSPortCoder.h NSObject IBFrameworkSource Foundation.framework/Headers/NSRunLoop.h NSObject IBFrameworkSource Foundation.framework/Headers/NSScriptClassDescription.h NSObject IBFrameworkSource Foundation.framework/Headers/NSScriptKeyValueCoding.h NSObject IBFrameworkSource Foundation.framework/Headers/NSScriptObjectSpecifiers.h NSObject IBFrameworkSource Foundation.framework/Headers/NSScriptWhoseTests.h NSObject IBFrameworkSource Foundation.framework/Headers/NSThread.h NSObject IBFrameworkSource Foundation.framework/Headers/NSURL.h NSObject IBFrameworkSource Foundation.framework/Headers/NSURLConnection.h NSObject IBFrameworkSource Foundation.framework/Headers/NSURLDownload.h NSPopUpButton NSButton IBFrameworkSource AppKit.framework/Headers/NSPopUpButton.h NSPopUpButtonCell NSMenuItemCell IBFrameworkSource AppKit.framework/Headers/NSPopUpButtonCell.h NSResponder IBFrameworkSource AppKit.framework/Headers/NSInterfaceStyle.h NSResponder NSObject IBFrameworkSource AppKit.framework/Headers/NSResponder.h NSTextField NSControl IBFrameworkSource AppKit.framework/Headers/NSTextField.h NSTextFieldCell NSActionCell IBFrameworkSource AppKit.framework/Headers/NSTextFieldCell.h NSView IBFrameworkSource AppKit.framework/Headers/NSClipView.h NSView NSView IBFrameworkSource AppKit.framework/Headers/NSRulerView.h NSView NSResponder 0 IBCocoaFramework com.apple.InterfaceBuilder.CocoaPlugin.macosx com.apple.InterfaceBuilder.CocoaPlugin.macosx com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 YES ../ocs_agent_config.xcodeproj 3 YES YES NSMenuCheckmark NSMenuMixedState NSSwitch YES {9, 8} {7, 2} {15, 15} tools/macosx/installer_gui/ocs_agent_config/English.lproj/InfoPlist.strings010064400017500001750000000014441173606111100343450ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5ÿþ// // OCSINVENTORY-NG // // Copyleft Guillaume PROTET 2011 // // // This code is open source and may be copied and modified as long as the source // code is always made freely available. // Please refer to the General Public Licence http://www.gnu.org/ // // //Localized versions of Info.plist keys NSHumanReadableCopyright = "OCS Inventory NG Team, 2011"; InstallerSectionTitle = "Configuration"; tools/macosx/installer_gui/ocs_agent_config/English.lproj/Localizable.strings010064400017500001750000000047701173606111100346640ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5ÿþ// // OCSINVENTORY-NG // // Copyleft Guillaume PROTET 2011 // // // This code is open source and may be copied and modified as long as the source // code is always made freely available. // Please refer to the General Public Licence http://www.gnu.org/ // // // Localized versions of Info.plist keys PaneTitle = "OCS Agent configuration"; //Yes button "Yes" = "Yes"; //No button "No" = "No"; //Warning about already existing cofiguration file "Already_conf_warn" = "OCS agent configuration file seems to already exists. Do you want to launch OCS Inventory NG agent configuration?"; //Warning about already existing cofiguration file comment "Already_conf_warn_comment" = "The previous /etc/ocsinventory-agent/ocsinventory-agent.cfg file will be erased"; //Warning about missing certificate file "Missing_cert_warn" = "You have enabled Download feature but you don't specify a certificate file"; //Warning about missing certificate file comment "Missing_cert_warn_comment" = "If you don't specifiy a certificate file, Download feature won't work"; //Warning about invalid server address "Invalid_srv_addr" = "Invalid OCS server address"; //Warning about invalid server address comment "Invalid_srv_addr_comment" = "Please check and re-enter your OCS server address";Ocsinventory-Unix-Agent-2.0.5/tools/macosx/installer_gui/ocs_agent_config/InstallerSections.plist010064400017500001750000000007021173606111100331020ustar00guiguiguigui SectionOrder Introduction ReadMe License Configuration Target PackageSelection Install Ocsinventory-Unix-Agent-2.0.5/tools/macosx/installer_gui/ocs_agent_config/Info.plist010064400017500001750000000017501173606111100303340ustar00guiguiguigui CFBundleDevelopmentRegion English CFBundleExecutable ${EXECUTABLE_NAME} CFBundleIconFile CFBundleIdentifier org.ocsinventory-ng.${PRODUCT_NAME:identifier} CFBundleInfoDictionaryVersion 6.0 CFBundleName Configuration CFBundlePackageType BNDL CFBundleShortVersionString 1.0.01 CFBundleSignature ???? CFBundleVersion 1.0.1 InstallerSectionTitle Configuration NSMainNibFile ocs_agent_config NSPrincipalClass InstallerSection Ocsinventory-Unix-Agent-2.0.5/tools/macosx/installer_gui/iceberg004075500017500001750000000000001173606116100244235ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/tools/macosx/installer_gui/iceberg/iceberg_project.packproj010064400017500001750000000354351173606111100313650ustar00guiguiguigui Hierarchy Attributes Documents Background Image IFPkgFlagBackgroundAlignment 0 IFPkgFlagBackgroundScaling 2 Mode 1 Path logos/OCS_logo.jpg Path Type 2 License English Keywords Mode 1 Path license/gpl-2.0.txt Path Type 2 Template APSL License French Keywords Mode 1 Path license/gpl-2.0.txt Path Type 2 Template CeCILL 2 License International Mode 1 Path license/gpl-2.0.txt Path Type 2 ReadMe International Mode 0 Path Path Type 1 Welcome International Mode 0 Path Path Type 1 Files Compress Hierarchy Children Children Children GID 80 Path OCSNG.app Path Type 2 Privileges 493 Type 3 UID 0 Children GID 80 Path Utilities Path Type 1 Privileges 509 Type 1 UID 0 GID 80 Path Applications Path Type 1 Privileges 509 Type 1 UID 0 Children Children GID 80 Path Application Support Path Type 1 Privileges 509 Type 1 UID 0 Children GID 80 Path Documentation Path Type 1 Privileges 509 Type 1 UID 0 Children GID 80 Path Filesystems Path Type 1 Privileges 509 Type 1 UID 0 Children GID 80 Path Frameworks Path Type 1 Privileges 509 Type 1 UID 0 Children GID 80 Path Internet Plug-Ins Path Type 1 Privileges 509 Type 1 UID 0 Children GID 80 Path PreferencePanes Path Type 1 Privileges 509 Type 1 UID 0 Children GID 80 Path Preferences Path Type 1 Privileges 509 Type 1 UID 0 Children GID 80 Path Printers Path Type 1 Privileges 509 Type 1 UID 0 Children GID 80 Path QuickTime Path Type 1 Privileges 509 Type 1 UID 0 Children GID 80 Path Scripts Path Type 1 Privileges 509 Type 1 UID 0 GID 80 Path Library Path Type 1 Privileges 1021 Type 1 UID 0 Children Children Children GID 0 Path Extensions Path Type 1 Privileges 493 Type 1 UID 0 GID 0 Path Library Path Type 1 Privileges 493 Type 1 UID 0 GID 0 Path System Path Type 1 Privileges 493 Type 1 UID 0 GID 80 Path / Path Type 1 Privileges 1021 Type 1 UID 0 IFPkgFlagDefaultLocation /Applications Imported Package Package Path Split Forks Plugins PluginsList Path Introduction Type 0 Path ReadMe Type 0 Path License Type 0 Path plugins/ocs_agent_config.bundle Path Type 2 Status Type 1 Path plugins/ocs_agent_daemon_options.bundle Path Type 2 Status Type 1 Path Target Type 0 Path PackageSelection Type 0 Path Install Type 0 Path FinishUp Type 0 Scripts Additional Resources International Installation Scripts IFInstallationScriptsPostflight Path Status IFInstallationScriptsPostinstall Path scripts/installer.sh Path Type 2 Status IFInstallationScriptsPostupgrade Path scripts/installer.sh Path Type 2 Status IFInstallationScriptsPreflight Path Status IFInstallationScriptsPreinstall Path Status IFInstallationScriptsPreupgrade Path Status Requirements Settings Description International IFPkgDescriptionDeleteWarning IFPkgDescriptionDescription IFPkgDescriptionTitle Ocsinventory Agent MacOSX IFPkgDescriptionVersion 2.0beta4 Display Information CFBundleGetInfoString Ocsinventory Agent MacOSX CFBundleIconFile CFBundleIconFile Path Type 1 CFBundleIdentifier org.ocsinventory-ng.agent.macosx CFBundleName Ocsinventory Agent MacOSX CFBundleShortVersionString 2.0beta4 Options IFPkgFlagAllowBackRev IFPkgFlagAuthorizationAction 1 IFPkgFlagFollowLinks IFPkgFlagIsRequired IFPkgFlagOverwritePermissions IFPkgFlagRelocatable IFPkgFlagRestartAction 0 IFPkgFlagRootVolumeOnly IFPkgFlagUpdateInstalledLanguages Version IFMajorVersion 2 IFMinorVersion 0 IFPkgFlagPackageSelection 0 Name Ocsinventory_Agent_MacOSX Status 1 Type 1 Name Project Settings 10.1 Compatibility Build Path build Build Path Type 2 Comment Remove .DS_Store Remove .pbdevelopment Remove CVS Ocsinventory-Unix-Agent-2.0.5/tools/macosx/installer_gui/iceberg/license004075500017500001750000000000001173606116100260455ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/tools/macosx/installer_gui/iceberg/license/gpl-2.0.txt010064400017500001750000000432541173606111100277440ustar00guiguiguigui GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Lesser General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. Ocsinventory-Unix-Agent-2.0.5/tools/macosx/installer_gui/iceberg/scripts004075500017500001750000000000001173606116100261125ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/tools/macosx/installer_gui/iceberg/scripts/installer.sh010075500017500001750000000032471173606111100305230ustar00guiguiguigui#!/bin/bash PREFIX=/tmp/ocs_installer if [ "$1" == "-custom" ]; then CUSTOM=1 PREFIX=./ fi INSTALL_PATH="/Applications/OCSNG.app" echo "Setting rights to $INSTALL_PATH" sudo chown -R root:wheel $INSTALL_PATH sudo chmod -R 755 $INSTALL_PATH echo "Setting rights to $INSTALL_PATH/Contents/Resources/ocscontact" sudo chown root:wheel $INSTALL_PATH/Contents/Resources/ocscontact sudo chmod 700 $INSTALL_PATH/Contents/Resources/ocscontact echo "Copying uninstall script to $INSTALL_PATH" sudo cp $PREFIX/scripts/uninstaller.sh $INSTALL_PATH/Contents/Resources/ sudo chmod 700 $INSTALL_PATH/Contents/Resources/uninstaller.sh ETCPATH="/etc/ocsinventory-agent" sudo mkdir $ETCPATH/ sudo cp $PREFIX/ocsinventory-agent.cfg $ETCPATH/ sudo cp $PREFIX/modules.conf $ETCPATH/ VARPATH="/var/lib/ocsinventory-agent" sudo mkdir -p $VARPATH sudo chown -R root:wheel $VARPATH if [ "$CUSTOM" == 1 ]; then if [ -e $PREFIX/cacert.pem ]; then echo "copying cacert.pem to $VARPATH/" sudo cp $PREFIX/cacert.pem $VARPATH/ fi else if [ -e $PREFIX/serverdir ] && [ -e $PREFIX/cacert.pem ]; then SERVERDIR=`cat $PREFIX/serverdir` mkdir $SERVERDIR cp $PREFIX/cacert.pem $SERVERDIR/ fi fi echo "Setting LaunchDaemons plists" TPATH="/Library/LaunchDaemons/" sudo cp $PREFIX/launchfiles/org.ocsng.agent.plist $TPATH sudo chown root:wheel $TPATH/org.ocsng.agent.plist sudo chmod 644 $TPATH/org.ocsng.agent.plist if [[ -f $PREFIX/now || $CUSTOM -eq 1 ]]; then echo 'Loading Service' sudo launchctl load $TPATH/org.ocsng.agent.plist echo 'Starting Service' sudo launchctl start org.ocsng.agent fi if [ ! "$CUSTOM" == 1 ]; then echo 'Removing temporary directory' rm -Rf $PREFIX fi echo 'done' exit 0 Ocsinventory-Unix-Agent-2.0.5/tools/macosx/installer_gui/iceberg/logos004075500017500001750000000000001173606116100255465ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/tools/macosx/installer_gui/iceberg/logos/OCS_logo.jpg010064400017500001750000000450031173606111100277650ustar00guiguiguiguiÿØÿàJFIFHHÿþCreated with GIMP on a Macÿâ XICC_PROFILE HLinomntrRGB XYZ Î 1acspMSFTIEC sRGBöÖÓ-HP cprtP3desc„lwtptðbkptrXYZgXYZ,bXYZ@dmndTpdmddĈvuedL†viewÔ$lumiømeas $tech0 rTRC< gTRC< bTRC< textCopyright (c) 1998 Hewlett-Packard CompanydescsRGB IEC61966-2.1sRGB IEC61966-2.1XYZ óQÌXYZ XYZ o¢8õXYZ b™·…ÚXYZ $ „¶ÏdescIEC http://www.iec.chIEC http://www.iec.chdesc.IEC 61966-2.1 Default RGB colour space - sRGB.IEC 61966-2.1 Default RGB colour space - sRGBdesc,Reference Viewing Condition in IEC61966-2.1,Reference Viewing Condition in IEC61966-2.1view¤þ_.ÏíÌ \žXYZ L VPWçmeassig CRT curv #(-27;@EJOTY^chmrw|†‹•šŸ¤©®²·¼ÁÆËÐÕÛàåëðöû %+28>ELRY`gnu|ƒ‹’š¡©±¹ÁÉÑÙáéòú &/8AKT]gqz„Ž˜¢¬¶ÁËÕàëõ !-8COZfr~Š–¢®ºÇÓàìù -;HUcq~Œš¨¶ÄÓáðþ +:IXgw†–¦µÅÕåö'7HYj{Œ¯ÀÑãõ+=Oat†™¬¿Òåø 2FZn‚–ª¾Òçû  % : O d y ¤ º Ï å û  ' = T j ˜ ® Å Ü ó " 9 Q i € ˜ ° È á ù  * C \ u Ž § À Ù ó & @ Z t Ž © Ã Þ ø.Id›¶Òî %A^z–³Ïì &Ca~›¹×õ1OmŒªÉè&Ed„£Ãã#Ccƒ¤Åå'Ij‹­Îð4Vx›½à&Il²ÖúAe‰®Ò÷@eНÕú Ek‘·Ý*QwžÅì;cвÚ*R{£ÌõGp™Ãì@j”¾é>i”¿ê  A l ˜ Ä ð!!H!u!¡!Î!û"'"U"‚"¯"Ý# #8#f#”#Â#ð$$M$|$«$Ú% %8%h%—%Ç%÷&'&W&‡&·&è''I'z'«'Ü( (?(q(¢(Ô))8)k))Ð**5*h*›*Ï++6+i++Ñ,,9,n,¢,×- -A-v-«-á..L.‚.·.î/$/Z/‘/Ç/þ050l0¤0Û11J1‚1º1ò2*2c2›2Ô3 3F33¸3ñ4+4e4ž4Ø55M5‡5Â5ý676r6®6é7$7`7œ7×88P8Œ8È99B99¼9ù:6:t:²:ï;-;k;ª;è<' >`> >à?!?a?¢?â@#@d@¦@çA)AjA¬AîB0BrBµB÷C:C}CÀDDGDŠDÎEEUEšEÞF"FgF«FðG5G{GÀHHKH‘H×IIcI©IðJ7J}JÄK KSKšKâL*LrLºMMJM“MÜN%NnN·OOIO“OÝP'PqP»QQPQ›QæR1R|RÇSS_SªSöTBTTÛU(UuUÂVV\V©V÷WDW’WàX/X}XËYYiY¸ZZVZ¦Zõ[E[•[å\5\†\Ö]']x]É^^l^½__a_³``W`ª`üaOa¢aõbIbœbðcCc—cëd@d”dée=e’eçf=f’fèg=g“géh?h–hìiCišiñjHjŸj÷kOk§kÿlWl¯mm`m¹nnknÄooxoÑp+p†pàq:q•qðrKr¦ss]s¸ttptÌu(u…uáv>v›vøwVw³xxnxÌy*y‰yçzFz¥{{c{Â|!||á}A}¡~~b~Â#„å€G€¨ kÍ‚0‚’‚ôƒWƒº„„€„ã…G…«††r†×‡;‡ŸˆˆiˆÎ‰3‰™‰þŠdŠÊ‹0‹–‹üŒcŒÊ1˜ÿŽfŽÎ6žnÖ‘?‘¨’’z’ã“M“¶” ”Š”ô•_•É–4–Ÿ— —u—à˜L˜¸™$™™üšhšÕ›B›¯œœ‰œ÷dÒž@ž®ŸŸ‹Ÿú i Ø¡G¡¶¢&¢–££v£æ¤V¤Ç¥8¥©¦¦‹¦ý§n§à¨R¨Ä©7©©ªª««u«é¬\¬Ð­D­¸®-®¡¯¯‹°°u°ê±`±Ö²K²Â³8³®´%´œµµŠ¶¶y¶ð·h·à¸Y¸Ñ¹J¹Âº;ºµ».»§¼!¼›½½¾ ¾„¾ÿ¿z¿õÀpÀìÁgÁãÂ_ÂÛÃXÃÔÄQÄÎÅKÅÈÆFÆÃÇAÇ¿È=ȼÉ:ɹÊ8Ê·Ë6˶Ì5̵Í5͵Î6ζÏ7ϸÐ9кÑ<ѾÒ?ÒÁÓDÓÆÔIÔËÕNÕÑÖUÖØ×\×àØdØèÙlÙñÚvÚûÛ€ÜÜŠÝÝ–ÞÞ¢ß)߯à6à½áDáÌâSâÛãcãëäsäü儿 æ–çç©è2è¼éFéÐê[êåëpëûì†ííœî(î´ï@ïÌðXðåñrñÿòŒóó§ô4ôÂõPõÞömöû÷Šøø¨ù8ùÇúWúçûwüü˜ý)ýºþKþÜÿmÿÿÿÛC  !"$"$ÿÛCÿÀ k"ÿÄÿÄT !1A"Qaq2BRr‘Ñ#Ub“¡±²Áá$35CTt’ð6Scds‚ƒ7ñ%4D¢Â&'E³âÿÄÿÄ*!1Q"A23aBRq#ÿÚ ?ý–ˆˆ" Q|K##a| kFd¸äc!E`ˆ_1Í!tVöx\£f¶æþ*vÄ·›‹ˆš­ÑÆOèâæÅ] %#]Z;'ÏH´ëïVªü&ºÏ›­™õĪǖX‰ ç#ÍfCéUqÌœÎÒ‹Dt±û6Cñð_³,t‹lúRd¼‘&Ïe²?>ÅEïÛÃÁrÑUàžÇ¤Ggð–±þÙ¹M¤+sÎSRTEÖ2r­“gB=<<ôU?¢à¢ÅV:ÂÊæFãÂNoÖ»QK¬í{NâÓ˜T*Ú ¸ÖÛÞIW,$pk¶íÊ©i|3<ÿ¿Õ—š*ê˪#Ê;¤Vÿ{È÷…7µ]h.r´U,”qˆí 4«”&tó¯´o¢"ðRDDD@‘–Ôp/ت×jÖŒÉËÔÙFs#´ðPkÆ3»×k6¶’#¸Gãw¹[ e#MZ[,,úÊú:6kUTÅùo5ìÆÖ( k&’wîÙ˜õ•UK$“<É,‘ç{œìÊøZ#¥_lÛÇÇý™bM¤JPr†ß3ºÜð³ô‰.|Ëc2ë—ðPDV*!à½hª_DíšDxÖ¶÷Kø-˜4‰JOÃ[æo¢ðå]ìDöððН±GlU'O$ÿ„.åu[5éjb˜t±àª-}Ã$°ÉÊC#ãxÜæ¸‚«–™>Š'øèÿ«/¤UMŸ]¨‹YPæÖD7‡ìw­N,8¢×vÊ6KÈÎe&ÃÜx¬ó¦Q1[¥²¾ú;èƒ"Š£0DD`ÔnC×’Šâ go·9ÐR ¨iæ´õŸb„Ý1]î¹Ä£Oò!æý;ÕТR5U¤²Î~‹rYáˆ|$±³Òp ÀÜíÀí®¦ùЩ $’WI#ÞO8•ñ³¡\´¿Ù©~;Ë/u­Ÿ¿ÓùZ±î½¯ã _j£² Oh¼“þ9y/uíRüëSÝ{_Æ¿:ÕGä2 í‘þ9y/uíRüëV=ص|aKó­T‚ÆIíW‘þ:>KÇÝ{_Æ¿:Ô÷^×ñ…/εQÙÈ'´^Gøåä¼}×¶|aKó­Y÷ZÙûý7εQ¹Èt'´^Gøåä¼™s·½áŒ­§q; «p*.Òº”‡gé™ö‚¼ÛžC±Sm~™S§ôZäúDEI˜""ˆˆ" ˆ€""ˆˆ" 0œF±†&†Í!¬µ¯Ö籟)Êc'„z„Þ"obõ –Ÿ^¡úÒ‘ðq4óøuªÇbæCËHc§Ï› Mïé\êÊ©êê_QS#¤•ç2\W‚èUJ}­>’5òùaæÁ³4] ]šçrwætrHß<Œ›ë*MA£ê·€êÊØâù1·Xª¥l#Û(³Q\;d%6d¬ê|i`¬µž·dÓpE€ ´òùJ¯ÜÀ¡ëëENZ’à[ Ç5“ÇÙ)\ÚÍ@A4— x ú­L1×TÊõŠçƒ¯tY¹° ¨ÇŽgÕ½Gäc£ydŒs7µÃ"±œeѦÆ}3å{RTÔÑÎÙéf|R7sšr^(½5“ÛŠk ±°¾6Ž¡Ì¥»jÅ)ØÙ†Æ»·£êSV¸æÒ;Š¡2ÍJðv+–ØöQW9ÒÑq9˜ÿ’Ý?ÜN^§E” LnB¼ š9âl±=¯c†`´ì!zpXðs2ˆˆ" 0¨¹·Û½-¢‰Õ5OôX9ç )K=¢ÛÂ6n´ÔÏ©«•±DѵÅVØ›UÜ éè ©©·kϱr1ê²óVf©y´üCÅoãÖ¹kmT%ÌŽ¾ŸF£ò—`æNdæJ"-(Þ–b/z:JªÙ9*Jy&Cš“[°Ö TË+OÎw¨/²1í•ÎøC¶D‘Y4º=·°¬¨”üœšôxÀÑΆWu™J©ê`ŒÏ_Z*ƒ’+]øÂá²[Ù!ZUZ>·3A ¤±4ÓÁÈqiáŸÈÈ£t’81’w«u«>ò±î¬ùÖ¨õ!äq_ýÔR?y8‡÷Xþt'¼œAû´8Ô‡‘î+ÿ¤G;“¹HýäâÝ£ùгï'~í΄õ!ä{Šü¢7’)'¼œAû¼_:ÞF ýÞ/ êÃÉâ¿(¢’ûÈÄ»ÃóÄÜCó¡=Xyâ¯úG×—ºT¿ë7í+Íž(U} ¾E_O,‘BÉç'U @ Ö=D”šÁÌ×YÉmy>‘g0„D@DDD@à±±•âá²ß-dç&F3í<%–JM¼#—Œq vZ-Xòu\ òMèùG©TõKQPùç‘ÒHó›œíå{Ýkê.UòÖT¸—Èv4p Qtª­AgwK§UGûœWs áú‹åOéX~L¾Ö¬””VY|çÖé›emÖ¤AG {¼§nk{J°ðö  ¡ š¸ ºûG1½ƒŠÚíÔ–ÊVÓRD#`êÚzÉé[œ /rákõ’±â<#æ65 cCZ77/½‰ÁaPc2ˆˆD åÞlvë««§k–Ç“‡zê÷¬)M®‰Œœ^QUb\Yl¨¤.ª¦NCžÞТêü#1‘P¬e„T]kŒ2£|‘ ‚Nε®­GÔŽžŸ[ŸŒÊá\×1Å®ikšr  ¬¯³¦šh–`\Jëlí¡¬y4ršãû#ìVƒ\U¬}ßLåU?9¢Äãå7£¹dÔUþÈåëtØùÄ›¢"Æs"ù{ƒZKŽ@ ¨ K½ÂžÙA%eKƒXÁë= ŸÄj›ÅÁÕ5!»£ŒnczC_]w¹âqðH kœx¹G·-ôT¢²û;:=6ź]„Ë4[Vº›•k))X]#¸ðhé+Ci,³l¤¢²Ï"–y› ºIrkZ3$©ÎÀ †Ô^Ö aÙÞT áÚK,U¢J—|¤mìwBÃn¡¾"r5ÙKãZŠŽšŽ, ‰ƒƒ[’ÙDà³<³yìÊ" ˆ€ÆÅ¯[IMY ¡©†9£;Úææ¶B\Úåö#À™TYÝ»iç¢Tx¤‚gC399®¯•ÂÄør’õn*–ŽdÍAé MZ†¸‘ÐÓë\~3)ô>¥¹t ªµÖ:–®2Çǃ‡H]̆_v™µ•m-¢aÜhz;·dc)ßÃvN–Œí5‚¤Ýž÷ÃNZZÖÚõö)~(¸‹]’¢¯Ë ÕŒt¸î]£lLllhk2 Ê ¥ª¢!¢£cœç¸vnXSõläãŽEË$Îsžç½ÅÎqÌ“Å|¢ÑH-Î h$€*ÆÂ:#emÕ–sµ±>Þ’¸Ú4µ²²èúé›­6Z ùçr³»;íyÚŽ^·Ró²&Öµ¡­hn/´EæD@DDD@DDD@DDD@aV:J¼:²â-Ñ;ài?/)ÿ‚ŸßëÛm´TÖœ¾ œÞ³ÃéT¤¯|’:I³Þâç’´é¡—“¡ «t·¿£áe ¹Á­’r-Ù; á<5hšõsm,yˆÇ:Wù­ö«‚ÝI$t´Ñ†FÁ}k™ƒlí³Úš<"^|ǯ£¹w:ëåý]þ¬°º2ˆŠ“(DDD@DDHxpMîôLøFŒç`ò›çvªó5~9¡Í ŒÁUCìÞäÞ#nTÓóâè-[töçâή‡QŸ„Ž ÷¡ªšŠ²*¨¬‘89¾ÅàQjk<GrÃ/=tW+tø²7<º·}¢»–Ož×#¶…‹ÿV åÙ ²Áó××éÍÄKI7µŠ”õ##ÔÎ>Å,q¥Ç‚¦qeÄÜïµÙÆ©¢”Ct‹´uz“ç¤rzÑtéëM µ5ÓÀÂùdv«Z8•ná+Z°ê‡€fIèìQÝY@×z†dçfØAà8Ÿ¹OVíËÚŽ6·På-‹£(ˆ³" ˆ€""ˆˆȈuâÓCv…±VÂsiÜBܧ†8"dQ01ŒÀ¢)ËÆ ÜÚÁž*±Ò³É¾S³Íƒï*ÎU®–#"ëI6[ n}‡ñVéÿsV‹‹Q DEÒ;¥¡¢ØÃpóäkæq?@û”»Š…覡¯´TRçΊ\òêpÿºš.]¿»>{Sü¬""¬ ""ˆˆ" ˆ€""ˆˆ" ˆ€""ˆˆ" ˆ€"" ¥zÝJ*j²?]ènUÒ“é. Í‰]y¶ÚÑõýê0ºTGG{I µ!½I4ymðûûe{sŠ˜r‡Òáýu(ßêÏÑu†Äê’uD„íè=ª/–ج³el—”EÎ8AD@DDD@aGqõ·Ý¥­ÎX>Ûþ…"ܾ^Ðö9¤l#"½Aíy=BNM!Ú‡zܽRøÞ®—pŠWÙÁi®¢yY>’2ܲtpÝa ¾ÒTç“[ ì; ºÚA…AñèWv¨ð«%FòøZOnK&ª=3™ùr¤kc ßõs4äòÍFöŠšVN•ê -t´Àþ–ROcGâ«efš8ŽKtÅ{‚Ù¶R>ºáOG,½ƒ‰Zªa¢ê1=îZ§76Á7µÛ> U¶Klrj¾{+l±è©ã¥¤Šž&ê²6†ÔºÈXÙ’å¿'ηžL¢"ˆˆ" ˆ€""ˆˆ" 0T?J4&{4ulnfžLÎÏ$ìö)‚𮦎®’Zi†l‘¥®«Ô%¶Y=Õ=“R(”ÍnÞh&¶\¦¢œmaØ|æð+Ho]TóÊ>Ž2RYGkÞMšîÙžI‚Q©(è*Þ‚X扲Äðö8k°…Cñê]ü1‰ël¹BAž—=±—mo£Ð³]NîQ‡W¥v|£Ùo"à[qu’µƒ:¦Ó¿‹&æþ ¢Û½­Ã6Ü)HÿU«„—ÑÊ•S\4o"Ô;wïôß:Ô÷Nßûí7εFÖyÚÍÍ©µj{£Aûí?ε=СýòŸçBmck6û‘jø}ÿÕÁógèÿzƒça¬ÙÙš/ÕS¿cg‰Ý ÔÒ£a™DDD@DDD@DD/Œ$2âj÷gžRåêrWCÿh+ÿˆwÖ¹ë«Â>’¥ˆ!žJéÂpˆ0í ye”-=çoÞ©R¯;&Ë=_ܳ셛TøFÈ?ŠFâ",g(""ˆˆ" ˆ€""ˆˆDK¤x„X¦gÚ1®ïË%RÍ)ïŠ27ò?YQ. §Oè Òÿ2­ÍIÊaZ\öêë7Ôâª5khÓ?zññõªõ_©ŸòÆŽ–žMu]¹Þ²=ЦZXÏݪ_ô?ù ^èýv“øVF‰áÕW>[_6¯¨~*·V†ŠöaÙ2þýßP^u¡ã^ÿùäD\óˆDDD@DD(ˆÞ6Ã̼Ñò°€ÚȇÁ¸ùCÍ*©ž)!™ðÌÇG#«šá´|•ÅXb–ôÎU™CVÑÍ ýNZ)»o Ý¥ÕztT‰½o]íuÖ©Ì5°9›y®Þ×v¢·&Ÿ(ìFJK(&H‹Ñ8AzSÃ-Lì‚:Irk[¼•ç…ÙjYgšíZ°Íʾ>\ÆÚZn2ÎuFKªÊ{^‰²V±•÷g Û‘jâ]®× ¤…Õ•{|˜Û±îUåËõ0Y©ÏGOÜÜ-E²²ë5dƒ{i›³×ø¬xVaɶŠé@âérûÔ{.ä$ )ôü³3œ›å’!S„vÛnu¶\þõ¿@(‰â⊊I<˜j¼SëØ¡ÙŽ '#Ö¡Ô¼‘—ä±Ùˆ/’ÖߨD´çuU6ÑÚGý”šß_Ip§mE$ì–3ŧwj©l÷Û…°†G/+ñ “kêèî]úå×l,þB©ƒZ¦ÇcÇWRÏe8+”#/è±QrpåêžñKÊF99˜ue‰Þ3 ë,Ícƒ<¢âðÌ¢"‚ÇbÉܹכµ¦œÏY. òZ6¹Ç K=²tNå­W]GHÝjª˜¡-à*Þù.U¥Ñу«kÏå–GË!’WºGîs³%i†™¾YljòZòâënËÃÚïEŽ+ Æ6¼4ŽØÝìU8çlnÞÅ—5Í<æ¹½¡Yí¡ä÷éĹh¯–šÃ•5|qòu²>¢º ƒ¹Pû ëZ1 ÚØZ ©t‘ÙHu›ôî^%¦ÿ–yux.,ÖTw bš;Á;óz¯îÜv;ÑåÍ]ZÖ"¢¢;kH+kG1–ajrvk9ÎúJ©OÜ®œ+Oà¸z†¼DÒ{Nß½QªŒŸ‘– ‘ ÒË2¹QIÀÄæý*¬],Ó—PÑÔâHZ{Çà«® Ý0EÚ'šVVŠ%Ö³ÔEÅ““ëVªm¢Š­JúªBråXÿºj`5±ÍL²sŽDDD@DDD@DD…U4Qj!d¬vö¹¹…º`+}C%ÒR¸ù>3}Jb²½FrG¸[8~¬«jp æ7FJi›é•®pMülðxd¡[;S5rÔÌÒµö¢¤8/ý#>u«¡ÉÇ„m¹»RKÕK{D-V®**)ªæÙM.*™¹ÖÍq¯š²wg$®Ï/4p Úå+{èôõ3µb]2Èùdt²¹Ï‘îÖsœv“Ò½­ôUW –ÓQÂédw¸vô/«] ÷èèé››ä;ø4t•mX-–j&ÓÓ·7²HG9礯vÚ °Š§=¤bÝ㧃–¯×¬›û˜œßZõutV“Ðj ܤÍqST!cõdû*V?²¾¬kÚÒë¦ h‹-¯¦;[ê\çX­·F>Kq2ô•×÷h®û ÑÜO„C-kv²xöúúW¸]è²6Å÷ÁTÔC-<φx¬99Ž¾èª§¢ªŽªšC¬9ƒ÷.¨…×w>Ëyc`¼ÀßÍê2É³ŽƒÒ¡ÕËO;á…’Æâ×5Ü Ù ©¬2Ì}2`ê“SqE¡¢:È6WÓÏ?×ܧ6Šè.Vø«)Îl‘¹åŧˆ=j¥ÃW#jºÇ9Û þfô°ûÏ »ÜlK=£?ÌêÇ/JxuýpY®¯™Çtð™¡Ü‹Î¢VA æ‘Á¬cKœOTeÁËÄ׺{--&O•ÜØ£k±U:ú«[ª«$/îèhè c]%¼]$«žOʼn¾kVæ°>õY­.m¤ˆŽQÜ\|зWÕÌѨ¬³ZÁa¯¼Ë•35a'LýÒ§–Œi¤huC d¹m2x½ÁH©iá¥SÆØã`É­hܪÏeò“à®V6xCGK @Šš(ÀàÖ¾ß.>&8u´/NôïTå•åœ[–³W´ò´lcÏ—ÔwС8‹V[šêŠ2êªq´Œ¹íœU¡Þ²UºQ=Æm;æ¹®k‹\Ó˜ î*ÏÀª»­㬉ît9>[$íùItÁ–êÛ£jÚçÁ9ËÇöt) %<”ì§§±ÆÁ“Zѹ[uÑšèõ9¦„DYŠˆ–(óm%{GŠLN?HûÔ«Ÿ[ýÓ±TÓœšºÌô†Ð©’vGaë[ôÓÌpvt6n¯oƒÃFMu’†GdʆæßH~R‡¯Zi¤¦¨Ž¢jɃšU¶Gtpj¾¿R Ç ›‡®q]­qUÆFnñ滈]%Ìi§ƒçe†eDDD@…ÉÅwl±ÔTç“õuYéu¸*¿I]qø_œ4ÇžAØçþ Ê¡ºEúj“H‰œÉÖ9æVMt}àÛ´RšÛ¥5 ò’4Î*‘5€dÈ*ßEÖî^å-Åíæ@ÝFzGðVXÉ`ÔK2ÁÆ×ٺ;:£5¸j©¾6òÿj§òWÜŒl‘¹Ž‡ ˆTþÖÛ½M5æõ´í Í,»‰wã¬\ÀÐ];\m·ªj¼òk“ý°®r-Me`éN;“L¾¢s_^Ó˜pÌè¢7¼ŠÛw€Lÿ‡¦ Î×3îÜ¥ÜW.qÛ,9l$Ó2ˆ‹Éà""ˆˆ" ˆ€""ˆˆ" ˆ€""… Ò…iŠÕ ‘¨“7z-Ûõ䫌”ÇJ&ñIÀO­ß‚‡Åt(X¯&˜,D²tikm5°Üdhåj|Rx0{w©xZ¶¸›¶š& šÈšÑê[k ’Ý&Ê$òÂ"/'…ƶ§W[…U76¶ò°¼oÙ¼(n)k.Vªs¸•ZàvÔbŠ}a͈:Nð6+eY©—;IµýDE”¤""ˆˆ" ˆ€ÇRãëA¶Þ3•=Nof[ƒ¸…m.V'´Çx´ÉJüƒÀÖÞk•´Ïdk½)ä¥ÑzÔÃ-5D”ó°²HݪàxäI<òwÓÏ(ï`ÛóìµùH\i%9Jß7å+n cžKƒ˜ñ›\7¨e'Á¸¢KD‚–¨ºJ7‡Œ}c©f¾ß$sõz]ß8öZȼij!©“Á#dÃ6¹§0Bö àä5ƒ(ˆ€""ˆˆ" 0…JŽbÜMš DKXáÍ`òzʘÅÉá¡ NX‰åޱmT†–™ÙÖJÞnGÄrªÉ$’âI;I+Ö®¢jº—ÔTHd•ç78ñ^+¥U{ÝÓPªŽ>ÂúŠ7Ë+bºÏ{ƒZ:JùSØŒ²û±T̘ÍÄùÊlžÈäõ}ª¸e“ /lm¦Ï &Âð5¤=.;×UN ˜Þ^OŸ”œ›l(6”-&Hu…¹º.l¹y¼wÞ§[•L1Ô@øehsÒ×Äê¹í–OuXëš’(d]lOh–Íu’™À˜\u¡K}¡rBéÆJK'ÐÂjqRFÕ®º¢Û_e3²’3»B¸¬7Jk½*éÎÒ2{ ÚÇtI®ž¼UYk…E;³iÙ$gs¦귬®ÌÚ­2µev]H¹¶+½âTRÈ Üö“šz]-ËžÓ\IEÅá™DD ""ˆˆ" 1Ú‡r- ÍÒ’ÕHêš¹5Z7.=o¢T\ž¾HÏx@©ëÖ&¹\.mªdϧdNÎ0ø½½%N0~*†ìÆÒÕ–ÅZÑ´g“¬{²¢QY4Y¤œ#¸•""¨ÌDD¦”Ïþ=N:)ÇÚ*$7ö©f”_Ãü8ûEDÆZõtªþ4jê‹Ê—ÿ-ù#ê^ÜW•?èè…ëÅs_fgØDD ""%^ÓJÙ«±c›‘iŒP!K±=Ò;M¢j·žvZ±Ž—p ¾ÁÎ/ ¿¹ç7:”’}júbðäj¦·éÊDu»€R<;·ßÇÈaúÔln Yƒ uN½S°fé­k·õ%ðO0ëu,TM< gÔ«í%þ¦'Ÿz³i¢l4ñÄÝÌhhîP*ÓÖÒVÍ{ n=`ç÷¬”?þ…0yžM ¸ M‘Þè]—Э%LáŠÑn¿RU8ÀýWú'aW#NaN©bYö}""ÎTDDD@ÇØlÜ"7 &~uyí´oµVdH#"D~d¡Û xI}ÆÚ̧ß$CËëkUc†ttz­¿ •Ê,¹®cË^pÞ…µru“MŒ;ˆkì’ü¹H çÂãÍ=YV Km»µ­ŠQùm‰ûÝÒ©Ý‹-%®Òñ½Se™’ý$-çì¿6e°æœEiÅ×›x 3 ˜Ç“.ÓëÞ¥A¡x²–hijœIQ8œÛ4vG®I®h¸4øºÁ0\ÃÐðZ¶$±úΛù¯d¼úSðu‘qŸŠ,,npwÖ…f9±ÂŠIg#ƒ#ö©UÉýM¤JUM=,N–¢fEF×8䯮z@«ÐRGóä:ÇÔ¢—uÆC%eL“žhì Øi¤û5W œ¿n ž&Ç9‡ÓYÆ| îd($²>Y],sÞ㛜Nd¯„ܶB¸Ã£§M©a ÈŠîá\;S{¨:ÑR4óåéêoZõ)(¬²Ë,Œ#–gaù¯u€¸RF~þwÉ Û§Š8!d101Œ­ly[¨éè)KKc‰ƒ Ù\Ûmsg Q¨vËú2ˆŠ³8DD#Ù¡½[ÝO&M‘»bšåP\(ê(jßIUd±œˆéëJõ\Y‡©ït¹Œ£ªŒ|™}©_MÛ^FÍ&§Ò{eÑP[7:›}Sék"1ÈÓ¸ñ!k.‚yå¥%%”m[+êíÕM©£˜Å õÑÅXØsQWÁ_«KRvf|Gv ¯Û½VT§ÙEÚh[ßeöǵà9®ˆ_[-i¿]md Z§rcöoç7Ô¥ví! ¯¡ ñ|Gg¨¬’ÓÉts,ÐÙ¹'ù¬oQÊ\i`˜sªÝè‘„-ÖbK‡6çMÞü•N¹/£;¦ÅÚ:Û–s\‡âKFÛ7ó-:œe`€l¬2†1Å$þˆTØþ‰  Éá¤(À- ¡{J쇨(­ÛÝîy¶¢¨²#û8ù£ñVÃO'Ù¦½’ï‚}ˆñ¾Ú +…UNíVžk{J­®×*Ë¥Q©¬”½ÞHòZ:ÓìE®ºc§NšuØ_Ls£‘²Fâ×4æоVÝ®‚®åVÚjHËÞwô7¬ô+$Ò\—ͤ¹, ŠqsmÕûjšÞd€lž‚¦+‡…põ-Ž›&%KÇÂJFÓÔ:î.e9p|õîmàr±=ÎKE¢Zè¢l®ahÕqÈm9(oå·¹Ð|áHÕ). ¯Oe‹1,tÍW?”Jß‹ ùŸ”JÏ‹ ù½û{<{+¼2*ãò‰YñtÎV(•ŸAó…G·šGj]:QþÐÂ?Ë´TUƒ7·Ò M¤y9kÅ,¤d_HÓô•ˆg+= ¶×Åh.yò&eæ…ö¡˜ŸÔÙ®BŠ*H¥h‰®Ösˆ;ì¹GHuÿÓÿ9X½¾HŽ–Ù,¤Y«oÊÃ÷æ+çò…ráCMë>Õ>Þg¯eo‚Ëà´®·*;e+ª+&ll‡z⫺œyy•…±ÇM ÓÚ·°WêûïðgïQ•&Á?«ïŸÁŸ¨­3ŽØá/‚…;Q‚žèŸÅ¯ô™õ‚žèŸÄ¸zLûÔ_ülæYú“ÅÄÆ6³t±Í c9™ð‘zC‡zí¢çEíy3§†Pä­pÈî ðV>Ä,¬¦e²­ùTÄ2Î?¤oð¹Øû 9’>íA,vÙãÅùCïP¦=Ì{dÎkšušæ õ.ƒQºŽ&‹ß‚pP<3XZÚ[ÁÕpØ'aô”Þ ¢ž&Ë ‘އ4æ Ã:åÉD¢ÑꈋÉä""ˆˆ" ˆ€!܈€‹â¬'MvÖ¨§Õ§¬ó€æ¿ÒöªÒén¬¶Ô+`tOàNçu‚¯%«q ¤¯§0UÀɘx8nW×|¡ÃèÙ§ÖJ¾(£N¯˜ F—Mh›]»ùNÞç(}‚¶‚Ce,°¸qsv¶BØÏ£«^¢» ÕDEixDEäDR"ú¯{ÃX×9ÇphÍFpCi+ 9Î h$À)—]®>hü.“ÆîjžX0ŲÐÙ-Q–ÙdÚ{º3¾12]¬„:å‘,-‚ç«,ªº‡Cñ”îÞô«–i dñ¶8Ø2kZ2{lL–)Ù)örm¾V¼³(ˆ¼„D@DD*ÿd¢¼ÓrU,ÉÀs$œÕWâ,9_f”™Xe§Ï›+Îþ…rñ,l•…’1¯k†D8f ¶»œ 4jeWþ.ÔjË¿`Z:¢é­¯ðYNÒõ‡Ø¡k ÖØãáTÔ´g9¾µ¶FGZ­Uvtù9hˆ­4ç!€ˆ‹È‰·5# ¢ëZpõÚæàiéØÏí$æ·ñS‹¡¢-ž½Þ0ÛªFLÜUSº02Ûª®¿²†ðÍ}âF¸4ÓÒñ•Íßèô«>Çh¢´Rˆ)#ÈùO>3Y[ñ±¬hkZà8/¥ŠËœÎMú™[ÿ†QTg#zGþÊÔzLûATœµ¤Ÿì´þ“>ÐU/¿MúÇÿ2ˆ‹AМDK¢Q¿XPÿϬ¨ü?§ÓZš_í ¼ºŽ¢ ¥ Z”¬Í’M¹ïáÚ¹ÑáG¶V8Þ-™úEDlŠŽO-$ÿiOT,Q•!Ò ÑM‰$|R2FòLÍvcr++ýQÖÓñZˆ½„EõrJàȘç¸ðh%OD6—gÊ“àù…óø3õóeÁ·j÷5ó³ÀáésûTê‹ ÑÛìõ4TmÊYâs+ö—²Ì¬ÖÝŒ­Lv¦T£ÅŠ{¢oáé3ê+CÞÐd].Ø&ÃSceH©š)9g4Löd]de &s§$Ñ%DEˆ Á‚å ÄØ.:—>®Ò[¤ë:â¸õt}Jjw.~)´Ñ\c¡’}g¹Ú¯s6¶?H¯u¹'ñ=EµÑUÖÒUQN`«‚Hdßë5ëm¹×ÛdÖ¢ª’’m=Û•Å[GGpƒ“©‚9ã#`pÏÔ¢×LI)/ ¨}1ó5š>ðµGQq"Õb}œÛ~?¬Œ×QÇ0ó£v«½[—~‹ÙgÈLùiþ#6z†Ü0…ò“2)ÛRÁåDìÏ«zâTÓÏO&¥DBáÁì-úÔúUÏ¢vFEÓEp¢­fµ-TSàVÖj‰‰òDñ$R=S\AR;>2»P–²¡ÞCÏ8wª¥¦k£Ë«ÁjmXî\k"·]Ú¼œùm†C“»º{—h,î.<2¦°AD@^SÃì1Í$aàæ‚ª"a<ˆ ±ÕæáJ`qãµ~ˉU£¶Í-ÅÍê‘™ý!OQYfºeÑÔÛ™XË£û³säêi_ÞæýËÇÞ%ó=ô§þCìV¢/~æeË]iWG€o.<éiþóì[tú<ª'ó‹ŒM!„«2Qî&CÖÚþÈ´ÂCª%ž¤ŽÚ£èR }¦Ý@ÐÚ:8¢ë Ú{Öò*åd¥Û(ÓŸlÎA’°ˆˆ" ˆ€""ˆˆ" h ‚YC¹Ÿá«-~nž†6¼ùQóOиUš=£q&–¶hºÀpSd^Õ’L¶Ù™ZÍ£Ûˆ?[LñòoÔµ]€ï; +¿ä>Åjd›UžæeË]j*Æ`;Û·º•¿ï>ŵnü5u;ÉiwÖ¬”Oq0õÖ²G£Ú&j«&—© 4.õ»Y¨2t1ë-üãô®º*ådŸl¦wÙ>Ø €”Eà¨""…«p¢¦¯¦u=\-–'oiâ¹~ô°÷űÿ3½«ºJ“]£d£Ó8~ô°÷űÿ3½©ïK|[ó;Ú»™¦jwËÉëÖŸ“‡ïK|[ó;Úžô°÷ÅÑÿ3½«¹šf›åäzÓòpýéaß‹Yüîö§½,;ñk?ÞÕÜL“|¼ž}Iy8~ô°÷űÿ3½©ïK|[ó;Ú»‰šo—’}Yù8žôð÷űúϵ=êaÿ‹bõŸjîw,&ùy¬ü³Š0µ€øÈ~•Ф¡£¤n­5,PÀÒd¡ÊO¶C²Rí™DEˆˆÁÈ ë</H·çRCî]+õf™¹Êæïcz;Jõ¹<"b²Í,i‹÷>Ýjµ êË8;ú›íP–5Ï{XÖ¹ÎyÈ4 É+1±òHØãcœ÷Vµ»ÉèV~ÃZamMK[%k†×oõ7Ú¶·cƒCjØÁ0\鬬†çp? ç5½]õ€kyy3·žL¯)à†vM $iàö‚ª" ŒÝpež°@ÃI)ò¢Ýü»”&ù…îv­i\ÁQN?iÝÚ8+q`ŒÆE] åÜlh¢c{Øöɋӛ\Ó´)æÅæW2‚ìñ®vG9Ù­Ôî¾µ±‹0|UM}e­Š£{¢'gAUÜŒtr:9ZæW4£©jøÜ‹¾3Eìk9¨>q §ÊÓZüähø¸ís|Þå7Xg†Q(ífQy<„D@DDD@DDD@DDîUǃã_Ê(]Qà<¾zÚßÈôeÙßš±Îåf1{±¹ÃžD…œ·)òu·dˆ”Kö¬¢ð¬©‚Ž–Jš™[1·YïqØ{晪Îñ¤×xAŠÏo·sd˜žwcBÖ¢ÒmʃnV¸œÃ¿“Öc»S‚pZ¨¹¶½ê„UÐM®ÌòsNÇ0ôÁz^ªg£µTUS@*%……â=lµ²ßô(û ÞØŠ)±|X‘õ>œSTBƒ5µµ›ÓëR±¹0!Ü¢8ßE‡'†–*aUQ ÖsuõuZ\B-;TóÔÛ ¨ªƒÁæ‘Î[[S>¯+ÝÚ‚ÏBjëçF6½Î=q(ŽÄÍU× 'Ô¾bË]­…œ1.qînååI¤ëœR´\-P¹œy2æ;»4Á8-d+†ñ®ý} ÙHßì{{G±vw¦"áâœKoÃôÂJ§—Ìüù8Yã?Ø:Ô}%ÞfºŽÙN"qyï!N Ál"¯0î’iªªOw§nqÈJÇÁÛÄ+ŽkÚÒ HÌ•Y*ïLÕµtp[|¦h &±å¹ì {ã‡áëÀ m½³çd×tš»óÙ¹WØÏM‰¼”¥ŽœSëdòìóR‰E͆ä|¶ $qsÝOsŽòuBèÍ¿ٻwðÑýºGfeCì3( ø›HvûlϦ·ÇáÓ°äç”m=¼{”wò•Öå=Ì¥äú5_õ¦ i éßp™”×¼gšímhÜ{x)ÃH#0sŠ}"Ê5‹±m¿4E 5nnm„ ‡K€’f™ªë 㫽çSQºßt²¸‡9q-Ø|­ÊÅàSàÊ(…&1tøÕøtе­lŽg-Êy£=Ù)z5‚!Pë2}ÏÍd4-‰±™”Kžz½Y&1DDd즥–¢B#as»T¥Æ®Júù«%<ù­—G@Vn‘jM>™9:g6?jªÀ$€7lÒÇ È¾¥ÆI®ŒìâYŸv¹µ„²zxŸ¹XKFÃFÚ E-+F\œ`Þ?JÞØ³[=ÒÉTÞY”D^!D@2Ø ºH±µÑÅ;2{6Tå7ÎîS“½yUBÊŠy fÉZáÔWªæá,¢bðÊB ¥§¨ŽxN¬‘¸9§¬+–ÑqоÙOX•€‘ÐxZ§kéÝI_=+·Ã#™ê+Öšå]O a†BÖ7p[ì¯ÔI£L¢¤]¨ˆ¹ÆPˆˆ" ˆ€""ˆˆ" ˆ€""ˆˆ" ˆ€ʤƒþ´»ø—úÕ¶w*’úÒïâ]ö¢QmʱÓ5ÎwUQÙ!q syYòœNM Ïàª*mÇ´cü8¾Ú ‰Þ ÃV+tyBÉ+Ýi¦syÄô€ºw‹M¾íHêjêhåc†ò6·¬ |nY*)Ì*úŒ/¤3iå‹á–_~~P>+»w+‹a ŸÅ<Ý,ÂÌÀ~¥pÊY,¦ñ `¼u}+\)¤q•‹ŽÏë©[´U0ÖRESÃâ•ípâ àiÇîÖ‘‘7:ª…‡¬íïrŽhzú_¶—dèó’Ÿ[Íò›ÜŽÑ>¹ÖAo ž¶¡Á±BÂ÷Sàê9ñv5šë\ÒêxŸËHïÏë¡tôÃ|t³E‡©\skç â|–ýþ¥0À¶QcÃðÓ<“á'?(ðîÜ€î½Íc\çÑ™'€TÜî­Ç˜ÔÂÙ# Õâ"ˆùyÅ[WÀãe® ñ<™eÓªUm¡F+î,9r†&jôêçµE…e±Ûlô­‚†’6e½ú¹¹Ýd¨^”±%½°>ËMUNæË#šÈõ•õ/] ãqI¯i²É¯Ry²ÎݼŸÉoÊú—Æ0Q…̼^£Öœó¢…þOÊwÊ@gEøFz)#¾\u☷(aÏ"ÝìVÜÇ9ÛFeg¹x\ŽVúƒÑ¾¥ý’–LkŽ'–¹îðv“#ÚèÁɬ ߣ£¥£§m=-ZP¼Ç».å<µ±¸¸€Ð3$ª‹EY»Ô:ð\œ§gF¶Ä@¶«fô“T8f"Ï=Ã5Oà{pŸª¦ºêã#yi|²O5½Š×Ä'+ y覓ì•]è8~sr9y­E1Ac†&FÆîk[ Õ(ÉEn9i–Nº©þÕn…OÒfÝ1¸ß]öJ¸–K0UE€ÎzQ©ëuG֭⪠ÿSª=)Ñ[舠‚¥Wj¤oLÿqPkCî4¬;3Aþe`éN2ë$ÌœgÞ ¯)$0ÕÃ)Ù©#]ê+}Æh‡ê^C` 9¯ˆÞ×±®A…÷Á`fvDD(…OãFbŠð2Û w­¡qÂéâ¹DØ’¾FœÇ,Z;¶}Ë™µukýQ­Â".Q""ˆˆ" ˆ€""ˆˆ" ˆ€""ˆˆ" r© ÿ­/þ%ßa[EFYƒé‹N"SòÅúü–CWÅÉJ%~ ¡Òˆÿî£ÚV÷Ä8>Žó|‚ë5LÑÉhÔh;Tæˆ"N7¬•½d¨û §ñhËJðÜ­ýê3tÁÔW KöJ©Û,nc„mËTê©22Y“¹S˜òß>ű]­ÿÏå¢9lkü¦ŸëЏ×Y~±MEÍlß ’ðˆ&Wš4µÍ}ÄÓ_+ó‘”òr„»Ë”îõ{º;/ Z"²Y`·Å‘,Èï9çy]Ta³åÀ9¥¤fõIã Uà ß&–†Ia¥©ÊÃä»{ éWrÕ¸ÑRÜ)K['…ãœÇ …Jà&UÚ, °™Æá]LkãÉA#ƒu>VÝåXWLId¶Sºj›9ÈfÜîÀVç¢úf2PWËNÓû9®~¼h´YLÙƒ«.’HÏ68ÃIï9§ðvpn3Ý*(Åj xÝã _•ÐTžéú¶«ýýExY­û= ¦·Ó6o$msI 0 10K540 851 1038.36 461.00 com.apple.InterfaceBuilder.CocoaPlugin 851 YES YES com.apple.InterfaceBuilder.CocoaPlugin PluginDependencyRecalculationVersion YES InstallerSection FirstResponder ocs_agent_daemon_optionsPane 256 YES 268 {{286, 221}, {49, 17}} YES 68288064 272630784 hour(s) LucidaGrande 13 1044 6 System controlColor 3 MC42NjY2NjY2NjY3AA 6 System controlTextColor 3 MAA 268 {{61, 221}, {157, 17}} YES 68288064 272630784 Launch OCS agent every 268 {{228, 218}, {53, 22}} YES -1804468671 71304192 YES 6 System textBackgroundColor 3 MQA 6 System textColor 268 {{62, 166}, {267, 18}} YES -2080244224 0 Launch OCS agent at daemon start 1211912703 2 NSImage NSSwitch NSSwitch 200 25 268 {{62, 131}, {213, 18}} YES -2080244224 0 Launch daemon after install 1211912703 2 200 25 {418, 330} NSView NSResponder NSApplication YES firstPane 6 parentSection 7 contentView 9 startup 21 now 22 periodicity 23 YES 0 YES -2 File's Owner -1 First Responder 5 ocs_agent_daemon_optionsPane 8 YES View -3 Application 11 YES 12 13 YES 14 15 YES 16 17 YES 18 19 YES 20 YES YES -3.IBPluginDependency 11.IBPluginDependency 11.IBViewBoundsToFrameTransform 12.IBPluginDependency 13.IBPluginDependency 13.IBViewBoundsToFrameTransform 14.IBPluginDependency 15.IBPluginDependency 15.IBViewBoundsToFrameTransform 16.IBPluginDependency 17.IBPluginDependency 17.IBViewBoundsToFrameTransform 18.IBPluginDependency 19.IBPluginDependency 19.IBViewBoundsToFrameTransform 20.IBPluginDependency 5.ImportedFromIB2 8.IBEditorWindowLastContentRect 8.IBPluginDependency 8.ImportedFromIB2 8.editorWindowContentRectSynchronizationRect YES com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin P4AAAL+AAABCeAAAwwcAAA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin P4AAAL+AAABCeAAAwyoAAA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin P4AAAL+AAABDXAAAw24AAA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin P4AAAL+AAABCVAAAw2wAAA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin P4AAAL+AAABDiwAAw2wAAA com.apple.InterfaceBuilder.CocoaPlugin {{393, 478}, {418, 330}} com.apple.InterfaceBuilder.CocoaPlugin {{467, 510}, {418, 330}} YES YES YES YES 25 YES ocs_agent_daemon_optionsPane InstallerPane YES YES now periodicity startup YES NSButton NSTextField NSButton YES YES now periodicity startup YES now NSButton periodicity NSTextField startup NSButton IBProjectSource ocs_agent_daemon_optionsPane.h YES InstallerPane NSObject YES YES contentView firstKeyView initialKeyView lastKeyView nextPane parentSection YES NSView NSView NSView NSView InstallerPane id YES YES contentView firstKeyView initialKeyView lastKeyView nextPane parentSection YES contentView NSView firstKeyView NSView initialKeyView NSView lastKeyView NSView nextPane InstallerPane parentSection id IBFrameworkSource InstallerPlugins.framework/Headers/InstallerPane.h InstallerSection NSObject firstPane InstallerPane firstPane firstPane InstallerPane IBFrameworkSource InstallerPlugins.framework/Headers/InstallerSection.h NSActionCell NSCell IBFrameworkSource AppKit.framework/Headers/NSActionCell.h NSApplication NSResponder IBFrameworkSource AppKit.framework/Headers/NSApplication.h NSApplication IBFrameworkSource AppKit.framework/Headers/NSApplicationScripting.h NSApplication IBFrameworkSource AppKit.framework/Headers/NSColorPanel.h NSApplication IBFrameworkSource AppKit.framework/Headers/NSHelpManager.h NSApplication IBFrameworkSource AppKit.framework/Headers/NSPageLayout.h NSApplication IBFrameworkSource AppKit.framework/Headers/NSUserInterfaceItemSearching.h NSButton NSControl IBFrameworkSource AppKit.framework/Headers/NSButton.h NSButtonCell NSActionCell IBFrameworkSource AppKit.framework/Headers/NSButtonCell.h NSCell NSObject IBFrameworkSource AppKit.framework/Headers/NSCell.h NSControl NSView IBFrameworkSource AppKit.framework/Headers/NSControl.h NSFormatter NSObject IBFrameworkSource Foundation.framework/Headers/NSFormatter.h NSMenu NSObject IBFrameworkSource AppKit.framework/Headers/NSMenu.h NSObject IBFrameworkSource AppKit.framework/Headers/NSAccessibility.h NSObject NSObject NSObject NSObject NSObject IBFrameworkSource AppKit.framework/Headers/NSDictionaryController.h NSObject IBFrameworkSource AppKit.framework/Headers/NSDragging.h NSObject IBFrameworkSource AppKit.framework/Headers/NSFontManager.h NSObject IBFrameworkSource AppKit.framework/Headers/NSFontPanel.h NSObject IBFrameworkSource AppKit.framework/Headers/NSKeyValueBinding.h NSObject NSObject IBFrameworkSource AppKit.framework/Headers/NSNibLoading.h NSObject IBFrameworkSource AppKit.framework/Headers/NSOutlineView.h NSObject IBFrameworkSource AppKit.framework/Headers/NSPasteboard.h NSObject IBFrameworkSource AppKit.framework/Headers/NSSavePanel.h NSObject IBFrameworkSource AppKit.framework/Headers/NSTableView.h NSObject IBFrameworkSource AppKit.framework/Headers/NSToolbarItem.h NSObject IBFrameworkSource AppKit.framework/Headers/NSView.h NSObject IBFrameworkSource Foundation.framework/Headers/NSArchiver.h NSObject IBFrameworkSource Foundation.framework/Headers/NSClassDescription.h NSObject IBFrameworkSource Foundation.framework/Headers/NSError.h NSObject IBFrameworkSource Foundation.framework/Headers/NSFileManager.h NSObject IBFrameworkSource Foundation.framework/Headers/NSKeyValueCoding.h NSObject IBFrameworkSource Foundation.framework/Headers/NSKeyValueObserving.h NSObject IBFrameworkSource Foundation.framework/Headers/NSKeyedArchiver.h NSObject IBFrameworkSource Foundation.framework/Headers/NSObject.h NSObject IBFrameworkSource Foundation.framework/Headers/NSObjectScripting.h NSObject IBFrameworkSource Foundation.framework/Headers/NSPortCoder.h NSObject IBFrameworkSource Foundation.framework/Headers/NSRunLoop.h NSObject IBFrameworkSource Foundation.framework/Headers/NSScriptClassDescription.h NSObject IBFrameworkSource Foundation.framework/Headers/NSScriptKeyValueCoding.h NSObject IBFrameworkSource Foundation.framework/Headers/NSScriptObjectSpecifiers.h NSObject IBFrameworkSource Foundation.framework/Headers/NSScriptWhoseTests.h NSObject IBFrameworkSource Foundation.framework/Headers/NSThread.h NSObject IBFrameworkSource Foundation.framework/Headers/NSURL.h NSObject IBFrameworkSource Foundation.framework/Headers/NSURLConnection.h NSObject IBFrameworkSource Foundation.framework/Headers/NSURLDownload.h NSResponder IBFrameworkSource AppKit.framework/Headers/NSInterfaceStyle.h NSResponder NSObject IBFrameworkSource AppKit.framework/Headers/NSResponder.h NSTextField NSControl IBFrameworkSource AppKit.framework/Headers/NSTextField.h NSTextFieldCell NSActionCell IBFrameworkSource AppKit.framework/Headers/NSTextFieldCell.h NSView IBFrameworkSource AppKit.framework/Headers/NSClipView.h NSView IBFrameworkSource AppKit.framework/Headers/NSMenuItem.h NSView IBFrameworkSource AppKit.framework/Headers/NSRulerView.h NSView NSResponder 0 IBCocoaFramework com.apple.InterfaceBuilder.CocoaPlugin.macosx com.apple.InterfaceBuilder.CocoaPlugin.macosx com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 YES ../ocs_agent_daemon_options.xcodeproj 3 NSSwitch {15, 15} tools/macosx/installer_gui/ocs_agent_daemon_options/English.lproj/Localizable.strings010064400017500001750000000017601173606111100364310ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5ÿþ// // OCSINVENTORY-NG // // Copyleft Guillaume PROTET 2011 // // // This code is open source and may be copied and modified as long as the source // code is always made freely available. // Please refer to the General Public Licence http://www.gnu.org/ // // // Localized versions of Info.plist keys "PaneTitle" = "OCS agent daemon options"; //Peridocity warn "Periodicity_warn"="Invalid periodicity value"; //Periodicity warn comment "Periodicity_warn_comment"="Please enter a valid number value"; tools/macosx/installer_gui/ocs_agent_daemon_options/English.lproj/InfoPlist.strings010064400017500001750000000014521173606111100361150ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5ÿþ// // OCSINVENTORY-NG // // Copyleft Guillaume PROTET 2011 // // // This code is open source and may be copied and modified as long as the source // code is always made freely available. // Please refer to the General Public Licence http://www.gnu.org/ // // // Localized versions of Info.plist keys NSHumanReadableCopyright = "Copyleft Guillaume PROTET 2011"; InstallerSectionTitle = "Daemon options";Ocsinventory-Unix-Agent-2.0.5/tools/macosx/installer_gui/ocs_agent_daemon_options/French.lproj004075500017500001750000000000001173606116100324155ustar00guiguiguiguitools/macosx/installer_gui/ocs_agent_daemon_options/French.lproj/Localizable.strings010064400017500001750000000020261173606111100362410ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5ÿþ// // OCSINVENTORY-NG // // Copyleft Guillaume PROTET 2011 // // // This code is open source and may be copied and modified as long as the source // code is always made freely available. // Please refer to the General Public Licence http://www.gnu.org/ // // // Localized versions of Info.plist keys "PaneTitle" = "Options du démon de l'agent OCS"; //Peridocity warn "Periodicity_warn" = "Valeur de la pérodicité invalide"; //Periodicity warn comment "Periodicity_warn_comment" = "Veuillez rentrer un nombre valide"; tools/macosx/installer_gui/ocs_agent_daemon_options/French.lproj/InfoPlist.strings010064400017500001750000000014561173606111100357350ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5ÿþ// // OCSINVENTORY-NG // // Copyleft Guillaume PROTET 2011 // // // This code is open source and may be copied and modified as long as the source // code is always made freely available. // Please refer to the General Public Licence http://www.gnu.org/ // // // Localized versions of Info.plist keys NSHumanReadableCopyright = "Copyleft Guillaume PROTET 2011"; InstallerSectionTitle = "Options du démon";tools/macosx/installer_gui/ocs_agent_daemon_options/French.lproj/ocs_agent_daemon_options.xib010064400017500001750000001265611173606111100401640ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5 0 10K549 851 1038.36 461.00 com.apple.InterfaceBuilder.CocoaPlugin 851 YES YES com.apple.InterfaceBuilder.CocoaPlugin PluginDependencyRecalculationVersion YES InstallerSection FirstResponder ocs_agent_daemon_optionsPane 256 YES 268 {{286, 221}, {56, 17}} YES 68288064 272630784 heure(s) LucidaGrande 13 1044 6 System controlColor 3 MC42NjY2NjY2NjY3AA 6 System controlTextColor 3 MAA 268 {{35, 220}, {188, 17}} YES 68288064 272630784 Lancer l'agent OCS toutes les 268 {{228, 218}, {53, 22}} YES -1804468671 71304192 YES 6 System textBackgroundColor 3 MQA 6 System textColor 268 {{62, 166}, {300, 18}} YES -2080244224 0 Lancer l'agent OCS au démarrage du démon 1211912703 2 NSImage NSSwitch NSSwitch 200 25 268 {{62, 131}, {246, 18}} YES -2080244224 0 Lancer le démon après l'installation 1211912703 2 200 25 {418, 330} NSView NSResponder NSApplication YES firstPane 6 parentSection 7 contentView 9 startup 21 now 22 periodicity 23 YES 0 YES -2 File's Owner -1 First Responder 5 ocs_agent_daemon_optionsPane 8 YES View -3 Application 11 YES 12 13 YES 14 15 YES 16 17 YES 18 19 YES 20 YES YES -3.IBPluginDependency 11.IBPluginDependency 11.IBViewBoundsToFrameTransform 12.IBPluginDependency 13.IBPluginDependency 13.IBViewBoundsToFrameTransform 14.IBPluginDependency 15.IBPluginDependency 15.IBViewBoundsToFrameTransform 16.IBPluginDependency 17.IBPluginDependency 17.IBViewBoundsToFrameTransform 18.IBPluginDependency 19.IBPluginDependency 19.IBViewBoundsToFrameTransform 20.IBPluginDependency 5.ImportedFromIB2 8.IBEditorWindowLastContentRect 8.IBPluginDependency 8.ImportedFromIB2 8.editorWindowContentRectSynchronizationRect YES com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin P4AAAL+AAABCeAAAwwcAAA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin P4AAAL+AAABCeAAAwyoAAA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin P4AAAL+AAABDXAAAw24AAA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin P4AAAL+AAABCdAAAw2wAAA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin P4AAAL+AAABDiwAAw2wAAA com.apple.InterfaceBuilder.CocoaPlugin {{393, 478}, {418, 330}} com.apple.InterfaceBuilder.CocoaPlugin {{467, 510}, {418, 330}} YES YES YES YES 25 YES ocs_agent_daemon_optionsPane InstallerPane YES YES now periodicity startup YES NSButton NSTextField NSButton YES YES now periodicity startup YES now NSButton periodicity NSTextField startup NSButton IBProjectSource ocs_agent_daemon_optionsPane.h YES InstallerPane NSObject YES YES contentView firstKeyView initialKeyView lastKeyView nextPane parentSection YES NSView NSView NSView NSView InstallerPane id YES YES contentView firstKeyView initialKeyView lastKeyView nextPane parentSection YES contentView NSView firstKeyView NSView initialKeyView NSView lastKeyView NSView nextPane InstallerPane parentSection id IBFrameworkSource InstallerPlugins.framework/Headers/InstallerPane.h InstallerSection NSObject firstPane InstallerPane firstPane firstPane InstallerPane IBFrameworkSource InstallerPlugins.framework/Headers/InstallerSection.h NSActionCell NSCell IBFrameworkSource AppKit.framework/Headers/NSActionCell.h NSApplication NSResponder IBFrameworkSource AppKit.framework/Headers/NSApplication.h NSApplication IBFrameworkSource AppKit.framework/Headers/NSApplicationScripting.h NSApplication IBFrameworkSource AppKit.framework/Headers/NSColorPanel.h NSApplication IBFrameworkSource AppKit.framework/Headers/NSHelpManager.h NSApplication IBFrameworkSource AppKit.framework/Headers/NSPageLayout.h NSApplication IBFrameworkSource AppKit.framework/Headers/NSUserInterfaceItemSearching.h NSButton NSControl IBFrameworkSource AppKit.framework/Headers/NSButton.h NSButtonCell NSActionCell IBFrameworkSource AppKit.framework/Headers/NSButtonCell.h NSCell NSObject IBFrameworkSource AppKit.framework/Headers/NSCell.h NSControl NSView IBFrameworkSource AppKit.framework/Headers/NSControl.h NSFormatter NSObject IBFrameworkSource Foundation.framework/Headers/NSFormatter.h NSMenu NSObject IBFrameworkSource AppKit.framework/Headers/NSMenu.h NSObject IBFrameworkSource AppKit.framework/Headers/NSAccessibility.h NSObject NSObject NSObject NSObject NSObject IBFrameworkSource AppKit.framework/Headers/NSDictionaryController.h NSObject IBFrameworkSource AppKit.framework/Headers/NSDragging.h NSObject IBFrameworkSource AppKit.framework/Headers/NSFontManager.h NSObject IBFrameworkSource AppKit.framework/Headers/NSFontPanel.h NSObject IBFrameworkSource AppKit.framework/Headers/NSKeyValueBinding.h NSObject NSObject IBFrameworkSource AppKit.framework/Headers/NSNibLoading.h NSObject IBFrameworkSource AppKit.framework/Headers/NSOutlineView.h NSObject IBFrameworkSource AppKit.framework/Headers/NSPasteboard.h NSObject IBFrameworkSource AppKit.framework/Headers/NSSavePanel.h NSObject IBFrameworkSource AppKit.framework/Headers/NSTableView.h NSObject IBFrameworkSource AppKit.framework/Headers/NSToolbarItem.h NSObject IBFrameworkSource AppKit.framework/Headers/NSView.h NSObject IBFrameworkSource Foundation.framework/Headers/NSArchiver.h NSObject IBFrameworkSource Foundation.framework/Headers/NSClassDescription.h NSObject IBFrameworkSource Foundation.framework/Headers/NSError.h NSObject IBFrameworkSource Foundation.framework/Headers/NSFileManager.h NSObject IBFrameworkSource Foundation.framework/Headers/NSKeyValueCoding.h NSObject IBFrameworkSource Foundation.framework/Headers/NSKeyValueObserving.h NSObject IBFrameworkSource Foundation.framework/Headers/NSKeyedArchiver.h NSObject IBFrameworkSource Foundation.framework/Headers/NSObject.h NSObject IBFrameworkSource Foundation.framework/Headers/NSObjectScripting.h NSObject IBFrameworkSource Foundation.framework/Headers/NSPortCoder.h NSObject IBFrameworkSource Foundation.framework/Headers/NSRunLoop.h NSObject IBFrameworkSource Foundation.framework/Headers/NSScriptClassDescription.h NSObject IBFrameworkSource Foundation.framework/Headers/NSScriptKeyValueCoding.h NSObject IBFrameworkSource Foundation.framework/Headers/NSScriptObjectSpecifiers.h NSObject IBFrameworkSource Foundation.framework/Headers/NSScriptWhoseTests.h NSObject IBFrameworkSource Foundation.framework/Headers/NSThread.h NSObject IBFrameworkSource Foundation.framework/Headers/NSURL.h NSObject IBFrameworkSource Foundation.framework/Headers/NSURLConnection.h NSObject IBFrameworkSource Foundation.framework/Headers/NSURLDownload.h NSResponder IBFrameworkSource AppKit.framework/Headers/NSInterfaceStyle.h NSResponder NSObject IBFrameworkSource AppKit.framework/Headers/NSResponder.h NSTextField NSControl IBFrameworkSource AppKit.framework/Headers/NSTextField.h NSTextFieldCell NSActionCell IBFrameworkSource AppKit.framework/Headers/NSTextFieldCell.h NSView IBFrameworkSource AppKit.framework/Headers/NSClipView.h NSView IBFrameworkSource AppKit.framework/Headers/NSMenuItem.h NSView IBFrameworkSource AppKit.framework/Headers/NSRulerView.h NSView NSResponder 0 IBCocoaFramework com.apple.InterfaceBuilder.CocoaPlugin.macosx com.apple.InterfaceBuilder.CocoaPlugin.macosx com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 YES ../ocs_agent_daemon_options.xcodeproj 3 NSSwitch {15, 15} tools/macosx/installer_gui/ocs_agent_daemon_options/ocs_agent_daemon_optionsPane.m010064400017500001750000000072601173606111100361020ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5// // OCSINVENTORY-NG // // Copyleft Guillaume PROTET 2011 // // // This code is open source and may be copied and modified as long as the source // code is always made freely available. // Please refer to the General Public Licence http://www.gnu.org/ // // #import "ocs_agent_daemon_optionsPane.h" @implementation ocs_agent_daemon_optionsPane - (NSString *)title { return [[NSBundle bundleForClass:[self class]] localizedStringForKey:@"PaneTitle" value:nil table:nil]; } - (void)didEnterPane:(InstallerSectionDirection)dir { NSString *tmpPath = @"/tmp/ocs_installer"; filemgr = [ NSFileManager defaultManager]; tmpLaunchdFilePath =@"/tmp/ocs_installer/org.ocsng.agent.plist"; tmpNowFilePath = @"/tmp/ocs_installer/now"; //Checking if temp directory exists if ([filemgr fileExistsAtPath:tmpPath]) { [filemgr removeFileAtPath:tmpLaunchdFilePath handler:nil]; [filemgr removeFileAtPath:tmpNowFilePath handler:nil]; } else { [filemgr createDirectoryAtPath:tmpPath attributes:nil]; } // fill defaults values [periodicity setStringValue:@"5"]; [startup setState:1]; [now setState:0]; } - (BOOL)shouldExitPane:(InstallerSectionDirection)Direction { NSMutableString *launchdCfgFile; NSAlert *periodicityValueWrn; //Creating org.ocsng.agent.plist file for launchd //TODO: use XML parser instead of writing the XML as a simple text file ? launchdCfgFile = [@"\n" @"\n" @"\n" @"\n" @"\tLabel\n" @"\torg.ocsng.agent\n" @"\tProgramArguments\n" @"\t\t\n" @"\t\t\t/Applications/OCSNG.app/Contents/MacOS/OCSNG\n" @"\t\t\n" mutableCopy]; if ([startup state] == 1) { [launchdCfgFile appendString:@"\tRunAtLoad\n" @"\t\n" ]; } if ( [[periodicity stringValue] length] > 0) { //We convert string to numeric value and check if it is integer NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init]; NSNumber *convert = [formatter numberFromString:[periodicity stringValue]]; [formatter release]; if (convert) { int hours = [convert intValue]; int seconds = hours * 3600; [launchdCfgFile appendString:@"\tStartInterval\n" @"\t" ]; [launchdCfgFile appendString:[NSString stringWithFormat:@"%d", seconds]]; [launchdCfgFile appendString:@"\n"]; } else { //We display a warn message and we go back to pane periodicityValueWrn = [[NSAlert alloc] init]; [periodicityValueWrn addButtonWithTitle:NSLocalizedString(@"OK", @"OK")]; [periodicityValueWrn setMessageText:NSLocalizedStringFromTableInBundle(@"Periodicity_warn",nil,[NSBundle bundleForClass:[self class]], @"Peridocity warn")]; [periodicityValueWrn setInformativeText:NSLocalizedStringFromTableInBundle(@"Periodicity_warn_comment",nil,[NSBundle bundleForClass:[self class]], @"Periodicity warn comment")]; [periodicityValueWrn setAlertStyle:NSInformationalAlertStyle]; [periodicityValueWrn runModal]; [periodicityValueWrn release]; [self gotoPreviousPane]; } } [launchdCfgFile appendString:@"\n" @"" ]; //Writing org.ocsng.agent.plist file [launchdCfgFile writeToFile:tmpLaunchdFilePath atomically: YES encoding:NSUTF8StringEncoding error:NULL]; //Check if we launch agent after install if ([now state] == 1) { [filemgr createFileAtPath:tmpNowFilePath contents:nil attributes:nil]; } return (YES); } @end tools/macosx/installer_gui/ocs_agent_daemon_options/ocs_agent_daemon_options.xcodeproj004075500017500001750000000000001173606116100370405ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5macosx/installer_gui/ocs_agent_daemon_options/ocs_agent_daemon_options.xcodeproj/project.pbxproj010064400017500001750000000321541173606111100421700ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/tools// !$*UTF8*$! { archiveVersion = 1; classes = { }; objectVersion = 45; objects = { /* Begin PBXBuildFile section */ 8D5B49B0048680CD000E48DA /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C167DFE841241C02AAC07 /* InfoPlist.strings */; }; 8D5B49B4048680CD000E48DA /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7ADFEA557BF11CA2CBB /* Cocoa.framework */; }; B40F7FFC06739E1B0053A16B /* InstallerPlugins.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B40F7FFB06739E1B0053A16B /* InstallerPlugins.framework */; }; B44C200B06739AE500D31AA1 /* ocs_agent_daemon_optionsPane.m in Sources */ = {isa = PBXBuildFile; fileRef = B44C200906739AE500D31AA1 /* ocs_agent_daemon_optionsPane.m */; }; B47CF355067B4E030066DBF6 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = B47CF353067B4E030066DBF6 /* Localizable.strings */; }; EE3F05FC0DD294BA00EA504A /* ocs_agent_daemon_options.xib in Resources */ = {isa = PBXBuildFile; fileRef = EE3F05FA0DD294BA00EA504A /* ocs_agent_daemon_options.xib */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ 069BF79014D9FEF900CDCB91 /* French */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = French; path = French.lproj/Localizable.strings; sourceTree = ""; }; 06EBE15314D9F9C600B916EB /* French */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = French; path = French.lproj/InfoPlist.strings; sourceTree = ""; }; 06EBE18014D9FBC200B916EB /* French */ = {isa = PBXFileReference; explicitFileType = file.xib; name = French; path = French.lproj/ocs_agent_daemon_options.xib; sourceTree = ""; }; 089C1672FE841209C02AAC07 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = ""; }; 089C167EFE841241C02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = ""; }; 089C167FFE841241C02AAC07 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = ""; }; 1058C7ADFEA557BF11CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; }; 32DBCF630370AF2F00C91783 /* ocs_agent_daemon_options_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ocs_agent_daemon_options_Prefix.pch; sourceTree = ""; }; 8D5B49B6048680CD000E48DA /* ocs_agent_daemon_options.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = ocs_agent_daemon_options.bundle; sourceTree = BUILT_PRODUCTS_DIR; }; 8D5B49B7048680CD000E48DA /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; B40F7FFB06739E1B0053A16B /* InstallerPlugins.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = InstallerPlugins.framework; path = /System/Library/Frameworks/InstallerPlugins.framework; sourceTree = ""; }; B44C200806739AE500D31AA1 /* ocs_agent_daemon_optionsPane.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ocs_agent_daemon_optionsPane.h; sourceTree = ""; }; B44C200906739AE500D31AA1 /* ocs_agent_daemon_optionsPane.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ocs_agent_daemon_optionsPane.m; sourceTree = ""; }; B47CF354067B4E030066DBF6 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/Localizable.strings; sourceTree = ""; }; B4A6B2A60673D523003CD9B2 /* InstallerSections.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = InstallerSections.plist; sourceTree = ""; }; EE3F05FB0DD294BA00EA504A /* English */ = {isa = PBXFileReference; explicitFileType = file.xib; name = English; path = English.lproj/ocs_agent_daemon_options.xib; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ 8D5B49B3048680CD000E48DA /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( 8D5B49B4048680CD000E48DA /* Cocoa.framework in Frameworks */, B40F7FFC06739E1B0053A16B /* InstallerPlugins.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ 089C166AFE841209C02AAC07 /* InstallerPlugin */ = { isa = PBXGroup; children = ( 08FB77AFFE84173DC02AAC07 /* Classes */, 32C88E010371C26100C91783 /* Other Sources */, 089C167CFE841241C02AAC07 /* Resources */, 089C1671FE841209C02AAC07 /* Frameworks and Libraries */, 19C28FB8FE9D52D311CA2CBB /* Products */, ); name = InstallerPlugin; sourceTree = ""; }; 089C1671FE841209C02AAC07 /* Frameworks and Libraries */ = { isa = PBXGroup; children = ( 1058C7ACFEA557BF11CA2CBB /* Linked Frameworks */, 1058C7AEFEA557BF11CA2CBB /* Other Frameworks */, ); name = "Frameworks and Libraries"; sourceTree = ""; }; 089C167CFE841241C02AAC07 /* Resources */ = { isa = PBXGroup; children = ( EE3F05FA0DD294BA00EA504A /* ocs_agent_daemon_options.xib */, B47CF353067B4E030066DBF6 /* Localizable.strings */, B4A6B2A60673D523003CD9B2 /* InstallerSections.plist */, 8D5B49B7048680CD000E48DA /* Info.plist */, 089C167DFE841241C02AAC07 /* InfoPlist.strings */, ); name = Resources; sourceTree = ""; }; 08FB77AFFE84173DC02AAC07 /* Classes */ = { isa = PBXGroup; children = ( B44C200906739AE500D31AA1 /* ocs_agent_daemon_optionsPane.m */, B44C200806739AE500D31AA1 /* ocs_agent_daemon_optionsPane.h */, ); name = Classes; sourceTree = ""; }; 1058C7ACFEA557BF11CA2CBB /* Linked Frameworks */ = { isa = PBXGroup; children = ( 1058C7ADFEA557BF11CA2CBB /* Cocoa.framework */, B40F7FFB06739E1B0053A16B /* InstallerPlugins.framework */, ); name = "Linked Frameworks"; sourceTree = ""; }; 1058C7AEFEA557BF11CA2CBB /* Other Frameworks */ = { isa = PBXGroup; children = ( 089C1672FE841209C02AAC07 /* Foundation.framework */, 089C167FFE841241C02AAC07 /* AppKit.framework */, ); name = "Other Frameworks"; sourceTree = ""; }; 19C28FB8FE9D52D311CA2CBB /* Products */ = { isa = PBXGroup; children = ( 8D5B49B6048680CD000E48DA /* ocs_agent_daemon_options.bundle */, ); name = Products; sourceTree = ""; }; 32C88E010371C26100C91783 /* Other Sources */ = { isa = PBXGroup; children = ( 32DBCF630370AF2F00C91783 /* ocs_agent_daemon_options_Prefix.pch */, ); name = "Other Sources"; sourceTree = ""; }; /* End PBXGroup section */ /* Begin PBXNativeTarget section */ 8D5B49AC048680CD000E48DA /* ocs_agent_daemon_options */ = { isa = PBXNativeTarget; buildConfigurationList = B44174E608BA33C40065BEDE /* Build configuration list for PBXNativeTarget "ocs_agent_daemon_options" */; buildPhases = ( 8D5B49AF048680CD000E48DA /* Resources */, 8D5B49B1048680CD000E48DA /* Sources */, 8D5B49B3048680CD000E48DA /* Frameworks */, ); buildRules = ( ); dependencies = ( ); name = ocs_agent_daemon_options; productInstallPath = "$(HOME)/Library/Bundles"; productName = InstallerPlugin; productReference = 8D5B49B6048680CD000E48DA /* ocs_agent_daemon_options.bundle */; productType = "com.apple.product-type.bundle"; }; /* End PBXNativeTarget section */ /* Begin PBXProject section */ 089C1669FE841209C02AAC07 /* Project object */ = { isa = PBXProject; buildConfigurationList = B44174EA08BA33C40065BEDE /* Build configuration list for PBXProject "ocs_agent_daemon_options" */; compatibilityVersion = "Xcode 3.1"; developmentRegion = English; hasScannedForEncodings = 1; knownRegions = ( English, Japanese, French, German, ); mainGroup = 089C166AFE841209C02AAC07 /* InstallerPlugin */; projectDirPath = ""; projectRoot = ""; targets = ( 8D5B49AC048680CD000E48DA /* ocs_agent_daemon_options */, ); }; /* End PBXProject section */ /* Begin PBXResourcesBuildPhase section */ 8D5B49AF048680CD000E48DA /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( 8D5B49B0048680CD000E48DA /* InfoPlist.strings in Resources */, B47CF355067B4E030066DBF6 /* Localizable.strings in Resources */, EE3F05FC0DD294BA00EA504A /* ocs_agent_daemon_options.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXResourcesBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ 8D5B49B1048680CD000E48DA /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( B44C200B06739AE500D31AA1 /* ocs_agent_daemon_optionsPane.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXSourcesBuildPhase section */ /* Begin PBXVariantGroup section */ 089C167DFE841241C02AAC07 /* InfoPlist.strings */ = { isa = PBXVariantGroup; children = ( 089C167EFE841241C02AAC07 /* English */, 06EBE15314D9F9C600B916EB /* French */, ); name = InfoPlist.strings; sourceTree = ""; }; B47CF353067B4E030066DBF6 /* Localizable.strings */ = { isa = PBXVariantGroup; children = ( B47CF354067B4E030066DBF6 /* English */, 069BF79014D9FEF900CDCB91 /* French */, ); name = Localizable.strings; sourceTree = ""; }; EE3F05FA0DD294BA00EA504A /* ocs_agent_daemon_options.xib */ = { isa = PBXVariantGroup; children = ( EE3F05FB0DD294BA00EA504A /* English */, 06EBE18014D9FBC200B916EB /* French */, ); name = ocs_agent_daemon_options.xib; sourceTree = ""; }; /* End PBXVariantGroup section */ /* Begin XCBuildConfiguration section */ B44174E708BA33C40065BEDE /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { ARCHS = ( i386, ppc, ); COPY_PHASE_STRIP = NO; GCC_DYNAMIC_NO_PIC = NO; GCC_ENABLE_FIX_AND_CONTINUE = YES; GCC_MODEL_TUNING = G5; GCC_OPTIMIZATION_LEVEL = 0; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = ocs_agent_daemon_options_Prefix.pch; GCC_VERSION = 4.0; INFOPLIST_FILE = Info.plist; INSTALL_PATH = "$(HOME)/Library/Bundles"; MACOSX_DEPLOYMENT_TARGET = 10.4; ONLY_ACTIVE_ARCH = NO; PRODUCT_NAME = ocs_agent_daemon_options; SDKROOT = macosx10.4; WRAPPER_EXTENSION = bundle; ZERO_LINK = YES; }; name = Debug; }; B44174E808BA33C40065BEDE /* Release */ = { isa = XCBuildConfiguration; buildSettings = { ARCHS = ( i386, ppc, x86_64, ); DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; GCC_MODEL_TUNING = G5; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = ocs_agent_daemon_options_Prefix.pch; GCC_VERSION = 4.0; INFOPLIST_FILE = Info.plist; INSTALL_PATH = "$(HOME)/Library/Bundles"; PRODUCT_NAME = ocs_agent_daemon_options; SDKROOT = macosx10.6; WRAPPER_EXTENSION = bundle; }; name = Release; }; B44174EB08BA33C40065BEDE /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { ARCHS = ( i386, ppc, ); GCC_C_LANGUAGE_STANDARD = gnu99; GCC_VERSION = 4.0; GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_UNUSED_VARIABLE = YES; ONLY_ACTIVE_ARCH = NO; PREBINDING = NO; SDKROOT = macosx10.4; }; name = Debug; }; B44174EC08BA33C40065BEDE /* Release */ = { isa = XCBuildConfiguration; buildSettings = { ARCHS = ( i386, ppc, x86_64, ); GCC_C_LANGUAGE_STANDARD = gnu99; GCC_VERSION = 4.0; GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_UNUSED_VARIABLE = YES; MACOSX_DEPLOYMENT_TARGET = 10.4; "MACOSX_DEPLOYMENT_TARGET[arch=x86_64]" = 10.5; PREBINDING = NO; SDKROOT = macosx10.6; }; name = Release; }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ B44174E608BA33C40065BEDE /* Build configuration list for PBXNativeTarget "ocs_agent_daemon_options" */ = { isa = XCConfigurationList; buildConfigurations = ( B44174E708BA33C40065BEDE /* Debug */, B44174E808BA33C40065BEDE /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; B44174EA08BA33C40065BEDE /* Build configuration list for PBXProject "ocs_agent_daemon_options" */ = { isa = XCConfigurationList; buildConfigurations = ( B44174EB08BA33C40065BEDE /* Debug */, B44174EC08BA33C40065BEDE /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; /* End XCConfigurationList section */ }; rootObject = 089C1669FE841209C02AAC07 /* Project object */; } tools/macosx/installer_gui/ocs_agent_daemon_options/ocs_agent_daemon_options.xcodeproj/ocs.pbxuser010064400017500001750000000246251173606111100413160ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5// !$*UTF8*$! { 06128B46151BD22C004BCDF5 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 069BF79014D9FEF900CDCB91 /* French */; name = "Localizable.strings: 14"; rLen = 0; rLoc = 350; rType = 0; vrLen = 348; vrLoc = 22; }; 0632F51E14DB4EF10064D8E2 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 089C167EFE841241C02AAC07 /* English */; name = "InfoPlist.strings: 15"; rLen = 0; rLoc = 404; rType = 0; vrLen = 438; vrLoc = 0; }; 0632F51F14DB4EF10064D8E2 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = B47CF354067B4E030066DBF6 /* English */; name = "Localizable.strings: 20"; rLen = 24; rLoc = 440; rType = 0; vrLen = 516; vrLoc = 0; }; 0632F5CA14DB51740064D8E2 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 0632F5CB14DB51740064D8E2 /* NSBundle.h */; name = "NSBundle.h: 1"; rLen = 0; rLoc = 0; rType = 0; vrLen = 581; vrLoc = 0; }; 0632F5CB14DB51740064D8E2 /* NSBundle.h */ = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = NSBundle.h; path = /System/Library/Frameworks/Foundation.framework/Headers/NSBundle.h; sourceTree = ""; }; 0673FF0E14DB457D008A3FF8 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 06EBE15314D9F9C600B916EB /* French */; name = "InfoPlist.strings: 1"; rLen = 0; rLoc = 261; rType = 0; vrLen = 150; vrLoc = 0; }; 0680346414DCAAC500E14075 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = B44C200906739AE500D31AA1 /* ocs_agent_daemon_optionsPane.m */; name = "ocs_agent_daemon_optionsPane.m: 38"; rLen = 0; rLoc = 950; rType = 0; vrLen = 576; vrLoc = 1119; }; 0688BCF513EF4B1500094AA2 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = EE3F05FB0DD294BA00EA504A /* English */; name = "ocs_agent_daemon_options.xib: 8"; rLen = 0; rLoc = 353; rType = 0; vrLen = 1598; vrLoc = 0; }; 0688BD3513EF4F7D00094AA2 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = B44C200806739AE500D31AA1 /* ocs_agent_daemon_optionsPane.h */; name = "ocs_agent_daemon_optionsPane.h: 21"; rLen = 0; rLoc = 482; rType = 0; vrLen = 576; vrLoc = 0; }; 0688BD4A13EF51B800094AA2 /* PlistBookmark */ = { isa = PlistBookmark; fRef = B4A6B2A60673D523003CD9B2 /* InstallerSections.plist */; fallbackIsa = PBXBookmark; isK = 0; kPath = ( ); name = /Users/ocs/work/ocs/dev/ocs_agent_daemon_options/InstallerSections.plist; rLen = 0; rLoc = 9223372036854775808; }; 069BF79014D9FEF900CDCB91 /* French */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {952, 286}}"; sepNavSelRange = "{350, 0}"; sepNavVisRange = "{22, 348}"; sepNavWindowFrame = "{{275, 90}, {948, 706}}"; }; }; 069E8EFD1402FAF700897797 /* PlistBookmark */ = { isa = PlistBookmark; fRef = 8D5B49B7048680CD000E48DA /* Info.plist */; fallbackIsa = PBXBookmark; isK = 0; kPath = ( ); name = /Users/ocs/work/ocs/dev/debug_tiger/installer_gui/ocs_agent_daemon_options/Info.plist; rLen = 0; rLoc = 9223372036854775808; }; 069E8F001402FAF700897797 /* objc.h */ = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = objc.h; path = /Developer/SDKs/MacOSX10.4u.sdk/usr/include/objc/objc.h; sourceTree = ""; }; 069E8F681402FDF600897797 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 069E8F001402FAF700897797 /* objc.h */; name = "objc.h: 34"; rLen = 0; rLoc = 1173; rType = 0; vrLen = 721; vrLoc = 834; }; 06D66221151BD114009F482C /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 069BF79014D9FEF900CDCB91 /* French */; name = "Localizable.strings: 14"; rLen = 0; rLoc = 350; rType = 0; vrLen = 367; vrLoc = 3; }; 06E815A413EB2FA3008B68AB /* Source Control */ = { isa = PBXSourceControlManager; fallbackIsa = XCSourceControlManager; isSCMEnabled = 0; scmConfiguration = { repositoryNamesForRoots = { "" = ""; }; }; }; 06E815A513EB2FA3008B68AB /* Code sense */ = { isa = PBXCodeSenseManager; indexTemplatePath = ""; }; 06EBE14414D9F99D00B916EB /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 32DBCF630370AF2F00C91783 /* ocs_agent_daemon_options_Prefix.pch */; name = "ocs_agent_daemon_options_Prefix.pch: 1"; rLen = 0; rLoc = 0; rType = 0; vrLen = 162; vrLoc = 0; }; 06EBE15314D9F9C600B916EB /* French */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {889, 578}}"; sepNavSelRange = "{259, 0}"; sepNavVisRange = "{0, 406}"; sepNavWindowFrame = "{{460, 171}, {948, 706}}"; }; }; 06EBE18014D9FBC200B916EB /* French */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {952, 13117}}"; sepNavSelRange = "{44397, 0}"; sepNavVisRange = "{0, 1244}"; sepNavWindowFrame = "{{38, 146}, {948, 706}}"; }; }; 089C1669FE841209C02AAC07 /* Project object */ = { activeArchitecturePreference = i386; activeBuildConfigurationName = Release; activeTarget = 8D5B49AC048680CD000E48DA /* ocs_agent_daemon_options */; codeSenseManager = 06E815A513EB2FA3008B68AB /* Code sense */; perUserDictionary = { PBXConfiguration.PBXFileTableDataSource3.PBXBookmarksDataSource = { PBXFileTableDataSourceColumnSortingDirectionKey = "-1"; PBXFileTableDataSourceColumnSortingKey = PBXBookmarksDataSource_NameID; PBXFileTableDataSourceColumnWidthsKey = ( 200, 200, 583.58349609375, ); PBXFileTableDataSourceColumnsKey = ( PBXBookmarksDataSource_LocationID, PBXBookmarksDataSource_NameID, PBXBookmarksDataSource_CommentsID, ); }; PBXConfiguration.PBXFileTableDataSource3.PBXExecutablesDataSource = { PBXFileTableDataSourceColumnSortingDirectionKey = "-1"; PBXFileTableDataSourceColumnSortingKey = PBXExecutablesDataSource_NameID; PBXFileTableDataSourceColumnWidthsKey = ( 22, 300, 662, ); PBXFileTableDataSourceColumnsKey = ( PBXExecutablesDataSource_ActiveFlagID, PBXExecutablesDataSource_NameID, PBXExecutablesDataSource_CommentsID, ); }; PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = { PBXFileTableDataSourceColumnSortingDirectionKey = "-1"; PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID; PBXFileTableDataSourceColumnWidthsKey = ( 20, 774, 20, 48, 43, 43, 20, ); PBXFileTableDataSourceColumnsKey = ( PBXFileDataSource_FiletypeID, PBXFileDataSource_Filename_ColumnID, PBXFileDataSource_Built_ColumnID, PBXFileDataSource_ObjectSize_ColumnID, PBXFileDataSource_Errors_ColumnID, PBXFileDataSource_Warnings_ColumnID, PBXFileDataSource_Target_ColumnID, ); }; PBXConfiguration.PBXTargetDataSource.PBXTargetDataSource = { PBXFileTableDataSourceColumnSortingDirectionKey = "-1"; PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID; PBXFileTableDataSourceColumnWidthsKey = ( 20, 734, 60, 20, 48, 43, 43, ); PBXFileTableDataSourceColumnsKey = ( PBXFileDataSource_FiletypeID, PBXFileDataSource_Filename_ColumnID, PBXTargetDataSource_PrimaryAttribute, PBXFileDataSource_Built_ColumnID, PBXFileDataSource_ObjectSize_ColumnID, PBXFileDataSource_Errors_ColumnID, PBXFileDataSource_Warnings_ColumnID, ); }; PBXPerProjectTemplateStateSaveDate = 354144634; PBXWorkspaceStateSaveDate = 354144634; }; perUserProjectItems = { 06128B46151BD22C004BCDF5 /* PBXTextBookmark */ = 06128B46151BD22C004BCDF5 /* PBXTextBookmark */; 0632F51E14DB4EF10064D8E2 /* PBXTextBookmark */ = 0632F51E14DB4EF10064D8E2 /* PBXTextBookmark */; 0632F51F14DB4EF10064D8E2 /* PBXTextBookmark */ = 0632F51F14DB4EF10064D8E2 /* PBXTextBookmark */; 0632F5CA14DB51740064D8E2 /* PBXTextBookmark */ = 0632F5CA14DB51740064D8E2 /* PBXTextBookmark */; 0673FF0E14DB457D008A3FF8 /* PBXTextBookmark */ = 0673FF0E14DB457D008A3FF8 /* PBXTextBookmark */; 0680346414DCAAC500E14075 /* PBXTextBookmark */ = 0680346414DCAAC500E14075 /* PBXTextBookmark */; 0688BCF513EF4B1500094AA2 /* PBXTextBookmark */ = 0688BCF513EF4B1500094AA2 /* PBXTextBookmark */; 0688BD3513EF4F7D00094AA2 /* PBXTextBookmark */ = 0688BD3513EF4F7D00094AA2 /* PBXTextBookmark */; 0688BD4A13EF51B800094AA2 /* PlistBookmark */ = 0688BD4A13EF51B800094AA2 /* PlistBookmark */; 069E8EFD1402FAF700897797 /* PlistBookmark */ = 069E8EFD1402FAF700897797 /* PlistBookmark */; 069E8F681402FDF600897797 /* PBXTextBookmark */ = 069E8F681402FDF600897797 /* PBXTextBookmark */; 06D66221151BD114009F482C /* PBXTextBookmark */ = 06D66221151BD114009F482C /* PBXTextBookmark */; 06EBE14414D9F99D00B916EB /* PBXTextBookmark */ = 06EBE14414D9F99D00B916EB /* PBXTextBookmark */; }; sourceControlManager = 06E815A413EB2FA3008B68AB /* Source Control */; userBuildSettings = { }; }; 089C167EFE841241C02AAC07 /* English */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {889, 578}}"; sepNavSelRange = "{259, 0}"; sepNavVisRange = "{0, 404}"; sepNavWindowFrame = "{{84, 104}, {948, 706}}"; }; }; 32DBCF630370AF2F00C91783 /* ocs_agent_daemon_options_Prefix.pch */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {952, 344}}"; sepNavSelRange = "{0, 0}"; sepNavVisRange = "{0, 162}"; }; }; 8D5B49AC048680CD000E48DA /* ocs_agent_daemon_options */ = { activeExec = 0; }; 8D5B49B7048680CD000E48DA /* Info.plist */ = { uiCtxt = { sepNavWindowFrame = "{{61, 125}, {948, 706}}"; }; }; B44C200806739AE500D31AA1 /* ocs_agent_daemon_optionsPane.h */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {952, 431}}"; sepNavSelRange = "{482, 0}"; sepNavVisRange = "{0, 576}"; sepNavWindowFrame = "{{124, 161}, {948, 706}}"; }; }; B44C200906739AE500D31AA1 /* ocs_agent_daemon_optionsPane.m */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {952, 1820}}"; sepNavSelRange = "{950, 0}"; sepNavVisRange = "{1119, 576}"; sepNavWindowFrame = "{{90, 163}, {948, 706}}"; }; }; B47CF354067B4E030066DBF6 /* English */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {889, 578}}"; sepNavSelRange = "{503, 0}"; sepNavVisRange = "{0, 503}"; sepNavWindowFrame = "{{492, 172}, {948, 706}}"; }; }; B4A6B2A60673D523003CD9B2 /* InstallerSections.plist */ = { uiCtxt = { sepNavWindowFrame = "{{15, 167}, {948, 706}}"; }; }; EE3F05FB0DD294BA00EA504A /* English */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {889, 13104}}"; sepNavSelRange = "{353, 0}"; sepNavVisRange = "{1363, 2034}"; sepNavWindowFrame = "{{15, 167}, {948, 706}}"; }; }; } tools/macosx/installer_gui/ocs_agent_daemon_options/ocs_agent_daemon_options.xcodeproj/ocs.mode1v3010064400017500001750000001167331173606111100411060ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5 ActivePerspectiveName Project AllowedModules BundleLoadPath MaxInstances n Module PBXSmartGroupTreeModule Name Groups and Files Outline View BundleLoadPath MaxInstances n Module PBXNavigatorGroup Name Editor BundleLoadPath MaxInstances n Module XCTaskListModule Name Task List BundleLoadPath MaxInstances n Module XCDetailModule Name File and Smart Group Detail Viewer BundleLoadPath MaxInstances 1 Module PBXBuildResultsModule Name Detailed Build Results Viewer BundleLoadPath MaxInstances 1 Module PBXProjectFindModule Name Project Batch Find Tool BundleLoadPath MaxInstances n Module XCProjectFormatConflictsModule Name Project Format Conflicts List BundleLoadPath MaxInstances n Module PBXBookmarksModule Name Bookmarks Tool BundleLoadPath MaxInstances n Module PBXClassBrowserModule Name Class Browser BundleLoadPath MaxInstances n Module PBXCVSModule Name Source Code Control Tool BundleLoadPath MaxInstances n Module PBXDebugBreakpointsModule Name Debug Breakpoints Tool BundleLoadPath MaxInstances n Module XCDockableInspector Name Inspector BundleLoadPath MaxInstances n Module PBXOpenQuicklyModule Name Open Quickly Tool BundleLoadPath MaxInstances 1 Module PBXDebugSessionModule Name Debugger BundleLoadPath MaxInstances 1 Module PBXDebugCLIModule Name Debug Console BundleLoadPath MaxInstances n Module XCSnapshotModule Name Snapshots Tool BundlePath /Developer/Library/PrivateFrameworks/DevToolsInterface.framework/Resources Description DefaultDescriptionKey DockingSystemVisible Extension mode1v3 FavBarConfig PBXProjectModuleGUID 06E8159E13EB2FA3008B68AB XCBarModuleItemNames XCBarModuleItems FirstTimeWindowDisplayed Identifier com.apple.perspectives.project.mode1v3 MajorVersion 33 MinorVersion 0 Name Default Notifications OpenEditors PerspectiveWidths -1 -1 Perspectives ChosenToolbarItems active-combo-popup action NSToolbarFlexibleSpaceItem clean buildOrClean build-and-go go servicesModuledebug servicesModulebuild debugger-enable-breakpoints com.apple.ide.PBXToolbarStopButton get-info NSToolbarFlexibleSpaceItem com.apple.pbx.toolbar.searchfield ControllerClassBaseName IconName WindowOfProjectWithEditor Identifier perspective.project IsVertical Layout BecomeActive ContentConfiguration PBXBottomSmartGroupGIDs 1C37FBAC04509CD000000102 1C37FAAC04509CD000000102 1C37FABC05509CD000000102 1C37FABC05539CD112110102 E2644B35053B69B200211256 1C37FABC04509CD000100104 1CC0EA4004350EF90044410B 1CC0EA4004350EF90041110B PBXProjectModuleGUID 1CE0B1FE06471DED0097A5F4 PBXProjectModuleLabel Files PBXProjectStructureProvided yes PBXSmartGroupTreeModuleColumnData PBXSmartGroupTreeModuleColumnWidthsKey 405 PBXSmartGroupTreeModuleColumnsKey_v4 MainColumn PBXSmartGroupTreeModuleOutlineStateKey_v7 PBXSmartGroupTreeModuleOutlineStateExpansionKey 089C166AFE841209C02AAC07 08FB77AFFE84173DC02AAC07 089C167CFE841241C02AAC07 EE3F05FA0DD294BA00EA504A B47CF353067B4E030066DBF6 089C167DFE841241C02AAC07 089C1671FE841209C02AAC07 1058C7AEFEA557BF11CA2CBB 1C37FBAC04509CD000000102 1C37FABC05509CD000000102 PBXSmartGroupTreeModuleOutlineStateSelectionKey 24 23 PBXSmartGroupTreeModuleOutlineStateVisibleRectKey {{0, 0}, {405, 674}} PBXTopSmartGroupGIDs XCIncludePerspectivesSwitch XCSharingToken com.apple.Xcode.GFSharingToken GeometryConfiguration Frame {{0, 0}, {422, 692}} GroupTreeTableConfiguration MainColumn 405 RubberWindowFrame 0 145 1440 733 0 0 1440 878 Module PBXSmartGroupTreeModule Proportion 422pt Dock ContentConfiguration PBXProjectModuleGUID 1CE0B20306471E060097A5F4 PBXProjectModuleLabel Localizable.strings PBXSplitModuleInNavigatorKey Split0 PBXProjectModuleGUID 1CE0B20406471E060097A5F4 PBXProjectModuleLabel Localizable.strings _historyCapacity 0 bookmark 06128B46151BD22C004BCDF5 history 0688BCF513EF4B1500094AA2 0688BD3513EF4F7D00094AA2 0688BD4A13EF51B800094AA2 069E8EFD1402FAF700897797 069E8F681402FDF600897797 06EBE14414D9F99D00B916EB 0673FF0E14DB457D008A3FF8 0632F51E14DB4EF10064D8E2 0632F51F14DB4EF10064D8E2 0632F5CA14DB51740064D8E2 0680346414DCAAC500E14075 06D66221151BD114009F482C SplitCount 1 StatusBarVisibility GeometryConfiguration Frame {{0, 0}, {1013, 213}} RubberWindowFrame 0 145 1440 733 0 0 1440 878 Module PBXNavigatorGroup Proportion 213pt ContentConfiguration PBXProjectModuleGUID 1CE0B20506471E060097A5F4 PBXProjectModuleLabel Detail GeometryConfiguration Frame {{0, 218}, {1013, 474}} RubberWindowFrame 0 145 1440 733 0 0 1440 878 Module XCDetailModule Proportion 474pt Proportion 1013pt Name Project ServiceClasses XCModuleDock PBXSmartGroupTreeModule XCModuleDock PBXNavigatorGroup XCDetailModule TableOfContents 06128B47151BD22C004BCDF5 1CE0B1FE06471DED0097A5F4 06128B48151BD22C004BCDF5 1CE0B20306471E060097A5F4 1CE0B20506471E060097A5F4 ToolbarConfigUserDefaultsMinorVersion 2 ToolbarConfiguration xcode.toolbar.config.defaultV3 ControllerClassBaseName IconName WindowOfProject Identifier perspective.morph IsVertical 0 Layout BecomeActive 1 ContentConfiguration PBXBottomSmartGroupGIDs 1C37FBAC04509CD000000102 1C37FAAC04509CD000000102 1C08E77C0454961000C914BD 1C37FABC05509CD000000102 1C37FABC05539CD112110102 E2644B35053B69B200211256 1C37FABC04509CD000100104 1CC0EA4004350EF90044410B 1CC0EA4004350EF90041110B PBXProjectModuleGUID 11E0B1FE06471DED0097A5F4 PBXProjectModuleLabel Files PBXProjectStructureProvided yes PBXSmartGroupTreeModuleColumnData PBXSmartGroupTreeModuleColumnWidthsKey 186 PBXSmartGroupTreeModuleColumnsKey_v4 MainColumn PBXSmartGroupTreeModuleOutlineStateKey_v7 PBXSmartGroupTreeModuleOutlineStateExpansionKey 29B97314FDCFA39411CA2CEA 1C37FABC05509CD000000102 PBXSmartGroupTreeModuleOutlineStateSelectionKey 0 PBXSmartGroupTreeModuleOutlineStateVisibleRectKey {{0, 0}, {186, 337}} PBXTopSmartGroupGIDs XCIncludePerspectivesSwitch 1 XCSharingToken com.apple.Xcode.GFSharingToken GeometryConfiguration Frame {{0, 0}, {203, 355}} GroupTreeTableConfiguration MainColumn 186 RubberWindowFrame 373 269 690 397 0 0 1440 878 Module PBXSmartGroupTreeModule Proportion 100% Name Morph PreferredWidth 300 ServiceClasses XCModuleDock PBXSmartGroupTreeModule TableOfContents 11E0B1FE06471DED0097A5F4 ToolbarConfiguration xcode.toolbar.config.default.shortV3 PerspectivesBarVisible ShelfIsVisible SourceDescription file at '/Developer/Library/PrivateFrameworks/DevToolsInterface.framework/Resources/XCPerspectivesSpecificationMode1.xcperspec' StatusbarIsVisible TimeStamp 0.0 ToolbarConfigUserDefaultsMinorVersion 2 ToolbarDisplayMode 1 ToolbarIsVisible ToolbarSizeMode 1 Type Perspectives UpdateMessage The Default Workspace in this version of Xcode now includes support to hide and show the detail view (what has been referred to as the "Metro-Morph" feature). You must discard your current Default Workspace settings and update to the latest Default Workspace in order to gain this feature. Do you wish to update to the latest Workspace defaults for project '%@'? WindowJustification 5 WindowOrderList 06E815A213EB2FA3008B68AB /Users/ocs/work/ocs/dev/beta5/temp/tools/macosx/installer_gui/ocs_agent_daemon_options/ocs_agent_daemon_options.xcodeproj WindowString 0 145 1440 733 0 0 1440 878 WindowToolsV3 FirstTimeWindowDisplayed Identifier windowTool.build IsVertical Layout Dock ContentConfiguration PBXProjectModuleGUID 1CD0528F0623707200166675 PBXProjectModuleLabel StatusBarVisibility GeometryConfiguration Frame {{0, 0}, {500, 218}} RubberWindowFrame 347 297 500 500 0 0 1440 878 Module PBXNavigatorGroup Proportion 218pt ContentConfiguration PBXProjectModuleGUID XCMainBuildResultsModuleGUID PBXProjectModuleLabel Build Results XCBuildResultsTrigger_Collapse 1021 XCBuildResultsTrigger_Open 1011 GeometryConfiguration Frame {{0, 223}, {500, 236}} RubberWindowFrame 347 297 500 500 0 0 1440 878 Module PBXBuildResultsModule Proportion 236pt Proportion 459pt Name Build Results ServiceClasses PBXBuildResultsModule StatusbarIsVisible TableOfContents 06E815A213EB2FA3008B68AB 06128B49151BD22C004BCDF5 1CD0528F0623707200166675 XCMainBuildResultsModuleGUID ToolbarConfiguration xcode.toolbar.config.buildV3 WindowContentMinSize 486 300 WindowString 347 297 500 500 0 0 1440 878 WindowToolGUID 06E815A213EB2FA3008B68AB WindowToolIsVisible Identifier windowTool.debugger Layout Dock ContentConfiguration Debugger HorizontalSplitView _collapsingFrameDimension 0.0 _indexOfCollapsedView 0 _percentageOfCollapsedView 0.0 isCollapsed yes sizes {{0, 0}, {317, 164}} {{317, 0}, {377, 164}} VerticalSplitView _collapsingFrameDimension 0.0 _indexOfCollapsedView 0 _percentageOfCollapsedView 0.0 isCollapsed yes sizes {{0, 0}, {694, 164}} {{0, 164}, {694, 216}} LauncherConfigVersion 8 PBXProjectModuleGUID 1C162984064C10D400B95A72 PBXProjectModuleLabel Debug - GLUTExamples (Underwater) GeometryConfiguration DebugConsoleDrawerSize {100, 120} DebugConsoleVisible None DebugConsoleWindowFrame {{200, 200}, {500, 300}} DebugSTDIOWindowFrame {{200, 200}, {500, 300}} Frame {{0, 0}, {694, 380}} RubberWindowFrame 321 238 694 422 0 0 1440 878 Module PBXDebugSessionModule Proportion 100% Proportion 100% Name Debugger ServiceClasses PBXDebugSessionModule StatusbarIsVisible 1 TableOfContents 1CD10A99069EF8BA00B06720 1C0AD2AB069F1E9B00FABCE6 1C162984064C10D400B95A72 1C0AD2AC069F1E9B00FABCE6 ToolbarConfiguration xcode.toolbar.config.debugV3 WindowString 321 238 694 422 0 0 1440 878 WindowToolGUID 1CD10A99069EF8BA00B06720 WindowToolIsVisible 0 Identifier windowTool.find Layout Dock Dock ContentConfiguration PBXProjectModuleGUID 1CDD528C0622207200134675 PBXProjectModuleLabel <No Editor> PBXSplitModuleInNavigatorKey Split0 PBXProjectModuleGUID 1CD0528D0623707200166675 SplitCount 1 StatusBarVisibility 1 GeometryConfiguration Frame {{0, 0}, {781, 167}} RubberWindowFrame 62 385 781 470 0 0 1440 878 Module PBXNavigatorGroup Proportion 781pt Proportion 50% BecomeActive 1 ContentConfiguration PBXProjectModuleGUID 1CD0528E0623707200166675 PBXProjectModuleLabel Project Find GeometryConfiguration Frame {{8, 0}, {773, 254}} RubberWindowFrame 62 385 781 470 0 0 1440 878 Module PBXProjectFindModule Proportion 50% Proportion 428pt Name Project Find ServiceClasses PBXProjectFindModule StatusbarIsVisible 1 TableOfContents 1C530D57069F1CE1000CFCEE 1C530D58069F1CE1000CFCEE 1C530D59069F1CE1000CFCEE 1CDD528C0622207200134675 1C530D5A069F1CE1000CFCEE 1CE0B1FE06471DED0097A5F4 1CD0528E0623707200166675 WindowString 62 385 781 470 0 0 1440 878 WindowToolGUID 1C530D57069F1CE1000CFCEE WindowToolIsVisible 0 Identifier MENUSEPARATOR Identifier windowTool.debuggerConsole Layout Dock BecomeActive 1 ContentConfiguration PBXProjectModuleGUID 1C78EAAC065D492600B07095 PBXProjectModuleLabel Debugger Console GeometryConfiguration Frame {{0, 0}, {650, 250}} RubberWindowFrame 516 632 650 250 0 0 1680 1027 Module PBXDebugCLIModule Proportion 209pt Proportion 209pt Name Debugger Console ServiceClasses PBXDebugCLIModule StatusbarIsVisible 1 TableOfContents 1C78EAAD065D492600B07095 1C78EAAE065D492600B07095 1C78EAAC065D492600B07095 ToolbarConfiguration xcode.toolbar.config.consoleV3 WindowString 650 41 650 250 0 0 1280 1002 WindowToolGUID 1C78EAAD065D492600B07095 WindowToolIsVisible 0 Identifier windowTool.snapshots Layout Dock Module XCSnapshotModule Proportion 100% Proportion 100% Name Snapshots ServiceClasses XCSnapshotModule StatusbarIsVisible Yes ToolbarConfiguration xcode.toolbar.config.snapshots WindowString 315 824 300 550 0 0 1440 878 WindowToolIsVisible Yes Identifier windowTool.scm Layout Dock ContentConfiguration PBXProjectModuleGUID 1C78EAB2065D492600B07095 PBXProjectModuleLabel <No Editor> PBXSplitModuleInNavigatorKey Split0 PBXProjectModuleGUID 1C78EAB3065D492600B07095 SplitCount 1 StatusBarVisibility 1 GeometryConfiguration Frame {{0, 0}, {452, 0}} RubberWindowFrame 743 379 452 308 0 0 1280 1002 Module PBXNavigatorGroup Proportion 0pt BecomeActive 1 ContentConfiguration PBXProjectModuleGUID 1CD052920623707200166675 PBXProjectModuleLabel SCM GeometryConfiguration ConsoleFrame {{0, 259}, {452, 0}} Frame {{0, 7}, {452, 259}} RubberWindowFrame 743 379 452 308 0 0 1280 1002 TableConfiguration Status 30 FileName 199 Path 197.0950012207031 TableFrame {{0, 0}, {452, 250}} Module PBXCVSModule Proportion 262pt Proportion 266pt Name SCM ServiceClasses PBXCVSModule StatusbarIsVisible 1 TableOfContents 1C78EAB4065D492600B07095 1C78EAB5065D492600B07095 1C78EAB2065D492600B07095 1CD052920623707200166675 ToolbarConfiguration xcode.toolbar.config.scm WindowString 743 379 452 308 0 0 1280 1002 Identifier windowTool.breakpoints IsVertical 0 Layout Dock BecomeActive 1 ContentConfiguration PBXBottomSmartGroupGIDs 1C77FABC04509CD000000102 PBXProjectModuleGUID 1CE0B1FE06471DED0097A5F4 PBXProjectModuleLabel Files PBXProjectStructureProvided no PBXSmartGroupTreeModuleColumnData PBXSmartGroupTreeModuleColumnWidthsKey 168 PBXSmartGroupTreeModuleColumnsKey_v4 MainColumn PBXSmartGroupTreeModuleOutlineStateKey_v7 PBXSmartGroupTreeModuleOutlineStateExpansionKey 1C77FABC04509CD000000102 PBXSmartGroupTreeModuleOutlineStateSelectionKey 0 PBXSmartGroupTreeModuleOutlineStateVisibleRectKey {{0, 0}, {168, 350}} PBXTopSmartGroupGIDs XCIncludePerspectivesSwitch 0 GeometryConfiguration Frame {{0, 0}, {185, 368}} GroupTreeTableConfiguration MainColumn 168 RubberWindowFrame 315 424 744 409 0 0 1440 878 Module PBXSmartGroupTreeModule Proportion 185pt ContentConfiguration PBXProjectModuleGUID 1CA1AED706398EBD00589147 PBXProjectModuleLabel Detail GeometryConfiguration Frame {{190, 0}, {554, 368}} RubberWindowFrame 315 424 744 409 0 0 1440 878 Module XCDetailModule Proportion 554pt Proportion 368pt MajorVersion 3 MinorVersion 0 Name Breakpoints ServiceClasses PBXSmartGroupTreeModule XCDetailModule StatusbarIsVisible 1 TableOfContents 1CDDB66807F98D9800BB5817 1CDDB66907F98D9800BB5817 1CE0B1FE06471DED0097A5F4 1CA1AED706398EBD00589147 ToolbarConfiguration xcode.toolbar.config.breakpointsV3 WindowString 315 424 744 409 0 0 1440 878 WindowToolGUID 1CDDB66807F98D9800BB5817 WindowToolIsVisible 1 Identifier windowTool.debugAnimator Layout Dock Module PBXNavigatorGroup Proportion 100% Proportion 100% Name Debug Visualizer ServiceClasses PBXNavigatorGroup StatusbarIsVisible 1 ToolbarConfiguration xcode.toolbar.config.debugAnimatorV3 WindowString 100 100 700 500 0 0 1280 1002 Identifier windowTool.bookmarks Layout Dock Module PBXBookmarksModule Proportion 100% Proportion 100% Name Bookmarks ServiceClasses PBXBookmarksModule StatusbarIsVisible 0 WindowString 538 42 401 187 0 0 1280 1002 Identifier windowTool.projectFormatConflicts Layout Dock Module XCProjectFormatConflictsModule Proportion 100% Proportion 100% Name Project Format Conflicts ServiceClasses XCProjectFormatConflictsModule StatusbarIsVisible 0 WindowContentMinSize 450 300 WindowString 50 850 472 307 0 0 1440 877 Identifier windowTool.classBrowser Layout Dock BecomeActive 1 ContentConfiguration OptionsSetName Hierarchy, all classes PBXProjectModuleGUID 1CA6456E063B45B4001379D8 PBXProjectModuleLabel Class Browser - NSObject GeometryConfiguration ClassesFrame {{0, 0}, {374, 96}} ClassesTreeTableConfiguration PBXClassNameColumnIdentifier 208 PBXClassBookColumnIdentifier 22 Frame {{0, 0}, {630, 331}} MembersFrame {{0, 105}, {374, 395}} MembersTreeTableConfiguration PBXMemberTypeIconColumnIdentifier 22 PBXMemberNameColumnIdentifier 216 PBXMemberTypeColumnIdentifier 97 PBXMemberBookColumnIdentifier 22 PBXModuleWindowStatusBarHidden2 1 RubberWindowFrame 385 179 630 352 0 0 1440 878 Module PBXClassBrowserModule Proportion 332pt Proportion 332pt Name Class Browser ServiceClasses PBXClassBrowserModule StatusbarIsVisible 0 TableOfContents 1C0AD2AF069F1E9B00FABCE6 1C0AD2B0069F1E9B00FABCE6 1CA6456E063B45B4001379D8 ToolbarConfiguration xcode.toolbar.config.classbrowser WindowString 385 179 630 352 0 0 1440 878 WindowToolGUID 1C0AD2AF069F1E9B00FABCE6 WindowToolIsVisible 0 Identifier windowTool.refactoring IncludeInToolsMenu 0 Layout Dock BecomeActive 1 GeometryConfiguration Frame {0, 0}, {500, 335} RubberWindowFrame {0, 0}, {500, 335} Module XCRefactoringModule Proportion 100% Proportion 100% Name Refactoring ServiceClasses XCRefactoringModule WindowString 200 200 500 356 0 0 1920 1200 tools/macosx/installer_gui/ocs_agent_daemon_options/ocs_agent_daemon_options_Prefix.pch010064400017500001750000000002421173606111100371220ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5// // Prefix header for all source files of the 'InstallerPlugin' target in the 'InstallerPlugin' project. // #ifdef __OBJC__ #import #endif tools/macosx/installer_gui/ocs_agent_daemon_options/ocs_agent_daemon_optionsPane.h010064400017500001750000000011001173606111100360600ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5// // OCSINVENTORY-NG // // Copyleft Guillaume PROTET 2011 // // // This code is open source and may be copied and modified as long as the source // code is always made freely available. // Please refer to the General Public Licence http://www.gnu.org/ // // #import #import @interface ocs_agent_daemon_optionsPane : InstallerPane { IBOutlet NSTextField *periodicity; IBOutlet NSButton *now; IBOutlet NSButton *startup; NSFileManager *filemgr; NSString *tmpLaunchdFilePath; NSString *tmpNowFilePath; } @end tools/macosx/installer_gui/ocs_agent_daemon_options/InstallerSections.plist010064400017500001750000000007241173606111100346000ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5 SectionOrder Introduction ReadMe License ocs_agent_launch_options.bundle Target PackageSelection Install Ocsinventory-Unix-Agent-2.0.5/tools/macosx/installer_gui/ocs_agent_daemon_options/Info.plist010064400017500001750000000017551173606111100321120ustar00guiguiguigui CFBundleDevelopmentRegion English CFBundleExecutable ${EXECUTABLE_NAME} CFBundleIconFile CFBundleIdentifier org.ocsinventory-ng.${PRODUCT_NAME:identifier} CFBundleInfoDictionaryVersion 6.0 CFBundleName Daemon options CFBundlePackageType BNDL CFBundleShortVersionString 4.0 CFBundleSignature ???? CFBundleVersion 2.0 InstallerSectionTitle Daemon options NSMainNibFile ocs_agent_daemon_options NSPrincipalClass InstallerSection Ocsinventory-Unix-Agent-2.0.5/tools/macosx/ocsng_app-xcode004075500017500001750000000000001173606116100232335ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/tools/macosx/ocsng_app-xcode/OCSNG_Prefix.pch010064400017500001750000000002151173606111100261620ustar00guiguiguigui// // Prefix header for all source files of the 'OCSNG' target in the 'OCSNG' project // #ifdef __OBJC__ #import #endif Ocsinventory-Unix-Agent-2.0.5/tools/macosx/ocsng_app-xcode/ocscontact.m010064400017500001750000000020141173606111100256150ustar00guiguiguigui// // OCSINVENTORY-NG // Copyleft Guillaume PROTET 2011 // Web : http://www.ocsinventory-ng.org // // This code is open source and may be copied and modified as long as the source // code is always made freely available. // Please refer to the General Public Licence http://www.gnu.org/ or Licence.txt // // //ocscontact is the helper tool to run OCS agent using Authorization Services. //ocscontact executable MUST be owned by root anbd have 700 permissions #import "ocscontact.h" @implementation ocscontact int main( int argc, char *argv[], char *envp[]) { NSAutoreleasePool *autoreleasepool = [[NSAutoreleasePool alloc] init]; NSLog(@"Running ocscontact"); setuid(0); //To be able to run OCS agent as root NSTask *Task = [[NSTask alloc] init]; //We get the path of ocsinventory-agent executable NSString *ocsinventoryAgentPath = [[NSBundle mainBundle] pathForResource:@"ocsinventory-agent"ofType:nil]; [Task setLaunchPath:ocsinventoryAgentPath]; [Task launch]; [autoreleasepool release]; return 0; } @end Ocsinventory-Unix-Agent-2.0.5/tools/macosx/ocsng_app-xcode/OCSNG.xcodeproj004075500017500001750000000000001173606116100261005ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/tools/macosx/ocsng_app-xcode/OCSNG.xcodeproj/ocs.mode1v3010064400017500001750000001175271173606111100301500ustar00guiguiguigui ActivePerspectiveName Project AllowedModules BundleLoadPath MaxInstances n Module PBXSmartGroupTreeModule Name Groups and Files Outline View BundleLoadPath MaxInstances n Module PBXNavigatorGroup Name Editor BundleLoadPath MaxInstances n Module XCTaskListModule Name Task List BundleLoadPath MaxInstances n Module XCDetailModule Name File and Smart Group Detail Viewer BundleLoadPath MaxInstances 1 Module PBXBuildResultsModule Name Detailed Build Results Viewer BundleLoadPath MaxInstances 1 Module PBXProjectFindModule Name Project Batch Find Tool BundleLoadPath MaxInstances n Module XCProjectFormatConflictsModule Name Project Format Conflicts List BundleLoadPath MaxInstances n Module PBXBookmarksModule Name Bookmarks Tool BundleLoadPath MaxInstances n Module PBXClassBrowserModule Name Class Browser BundleLoadPath MaxInstances n Module PBXCVSModule Name Source Code Control Tool BundleLoadPath MaxInstances n Module PBXDebugBreakpointsModule Name Debug Breakpoints Tool BundleLoadPath MaxInstances n Module XCDockableInspector Name Inspector BundleLoadPath MaxInstances n Module PBXOpenQuicklyModule Name Open Quickly Tool BundleLoadPath MaxInstances 1 Module PBXDebugSessionModule Name Debugger BundleLoadPath MaxInstances 1 Module PBXDebugCLIModule Name Debug Console BundleLoadPath MaxInstances n Module XCSnapshotModule Name Snapshots Tool Description DefaultDescriptionKey DockingSystemVisible Extension mode1v3 FavBarConfig PBXProjectModuleGUID 06B19D9613CF924200E550A5 XCBarModuleItemNames XCBarModuleItems FirstTimeWindowDisplayed Identifier com.apple.perspectives.project.mode1v3 MajorVersion 33 MinorVersion 0 Name Default Notifications OpenEditors PerspectiveWidths -1 -1 Perspectives ChosenToolbarItems active-combo-popup action NSToolbarFlexibleSpaceItem clean buildOrClean build-and-go go servicesModuledebug servicesModulebuild debugger-enable-breakpoints com.apple.ide.PBXToolbarStopButton get-info NSToolbarFlexibleSpaceItem com.apple.pbx.toolbar.searchfield ControllerClassBaseName IconName WindowOfProjectWithEditor Identifier perspective.project IsVertical Layout BecomeActive ContentConfiguration PBXBottomSmartGroupGIDs 1C37FBAC04509CD000000102 1C37FAAC04509CD000000102 1C37FABC05509CD000000102 1C37FABC05539CD112110102 E2644B35053B69B200211256 1C37FABC04509CD000100104 1CC0EA4004350EF90044410B 1CC0EA4004350EF90041110B PBXProjectModuleGUID 1CE0B1FE06471DED0097A5F4 PBXProjectModuleLabel Files PBXProjectStructureProvided yes PBXSmartGroupTreeModuleColumnData PBXSmartGroupTreeModuleColumnWidthsKey 254 PBXSmartGroupTreeModuleColumnsKey_v4 MainColumn PBXSmartGroupTreeModuleOutlineStateKey_v7 PBXSmartGroupTreeModuleOutlineStateExpansionKey 29B97314FDCFA39411CA2CEA 080E96DDFE201D6D7F000001 29B97315FDCFA39411CA2CEA 29B97317FDCFA39411CA2CEA 0649FB3314D9E198001EC640 29B97323FDCFA39411CA2CEA 1058C7A0FEA54F0111CA2CBB 1058C7A2FEA54F0111CA2CBB 19C28FACFE9D520D11CA2CBB 1C37FBAC04509CD000000102 PBXSmartGroupTreeModuleOutlineStateSelectionKey 30 28 PBXSmartGroupTreeModuleOutlineStateVisibleRectKey {{0, 0}, {254, 674}} PBXTopSmartGroupGIDs XCIncludePerspectivesSwitch XCSharingToken com.apple.Xcode.GFSharingToken GeometryConfiguration Frame {{0, 0}, {271, 692}} GroupTreeTableConfiguration MainColumn 254 RubberWindowFrame 0 145 1440 733 0 0 1440 878 Module PBXSmartGroupTreeModule Proportion 271pt Dock ContentConfiguration PBXProjectModuleGUID 1CE0B20306471E060097A5F4 PBXProjectModuleLabel ocscontact.m PBXSplitModuleInNavigatorKey Split0 PBXProjectModuleGUID 1CE0B20406471E060097A5F4 PBXProjectModuleLabel ocscontact.m _historyCapacity 0 bookmark 06800606151BCFE8006F95F1 history 068D515613DC84ED00211FF5 068D515813DC84ED00211FF5 06D79C9013DC8D3500E6B017 06F13D9C13DC92FC00509DAF 06709F4613E09D94005F44AE 0649FB4714D9E57D001EC640 068005F2151BCF55006F95F1 068005F3151BCF55006F95F1 068005F4151BCF55006F95F1 068005F5151BCF55006F95F1 068005F6151BCF55006F95F1 SplitCount 1 StatusBarVisibility GeometryConfiguration Frame {{0, 0}, {1164, 110}} RubberWindowFrame 0 145 1440 733 0 0 1440 878 Module PBXNavigatorGroup Proportion 110pt ContentConfiguration PBXProjectModuleGUID 1CE0B20506471E060097A5F4 PBXProjectModuleLabel Detail GeometryConfiguration Frame {{0, 115}, {1164, 577}} RubberWindowFrame 0 145 1440 733 0 0 1440 878 Module XCDetailModule Proportion 577pt Proportion 1164pt Name Project ServiceClasses XCModuleDock PBXSmartGroupTreeModule XCModuleDock PBXNavigatorGroup XCDetailModule TableOfContents 068005F8151BCF55006F95F1 1CE0B1FE06471DED0097A5F4 068005F9151BCF55006F95F1 1CE0B20306471E060097A5F4 1CE0B20506471E060097A5F4 ToolbarConfigUserDefaultsMinorVersion 2 ToolbarConfiguration xcode.toolbar.config.defaultV3 ControllerClassBaseName IconName WindowOfProject Identifier perspective.morph IsVertical Layout BecomeActive 1 ContentConfiguration PBXBottomSmartGroupGIDs 1C37FBAC04509CD000000102 1C37FAAC04509CD000000102 1C08E77C0454961000C914BD 1C37FABC05509CD000000102 1C37FABC05539CD112110102 E2644B35053B69B200211256 1C37FABC04509CD000100104 1CC0EA4004350EF90044410B 1CC0EA4004350EF90041110B PBXProjectModuleGUID 11E0B1FE06471DED0097A5F4 PBXProjectModuleLabel Files PBXProjectStructureProvided yes PBXSmartGroupTreeModuleColumnData PBXSmartGroupTreeModuleColumnWidthsKey 186 PBXSmartGroupTreeModuleColumnsKey_v4 MainColumn PBXSmartGroupTreeModuleOutlineStateKey_v7 PBXSmartGroupTreeModuleOutlineStateExpansionKey 29B97314FDCFA39411CA2CEA 1C37FABC05509CD000000102 PBXSmartGroupTreeModuleOutlineStateSelectionKey 0 PBXSmartGroupTreeModuleOutlineStateVisibleRectKey {{0, 0}, {186, 337}} PBXTopSmartGroupGIDs XCIncludePerspectivesSwitch 1 XCSharingToken com.apple.Xcode.GFSharingToken GeometryConfiguration Frame {{0, 0}, {203, 355}} GroupTreeTableConfiguration MainColumn 186 RubberWindowFrame 373 269 690 397 0 0 1440 878 Module PBXSmartGroupTreeModule Proportion 100% Name Morph PreferredWidth 300 ServiceClasses XCModuleDock PBXSmartGroupTreeModule TableOfContents 11E0B1FE06471DED0097A5F4 ToolbarConfiguration xcode.toolbar.config.default.shortV3 PerspectivesBarVisible ShelfIsVisible StatusbarIsVisible TimeStamp 0.0 ToolbarConfigUserDefaultsMinorVersion 2 ToolbarDisplayMode 1 ToolbarIsVisible ToolbarSizeMode 1 Type Perspectives UpdateMessage The Default Workspace in this version of Xcode now includes support to hide and show the detail view (what has been referred to as the "Metro-Morph" feature). You must discard your current Default Workspace settings and update to the latest Default Workspace in order to gain this feature. Do you wish to update to the latest Workspace defaults for project '%@'? WindowJustification 5 WindowOrderList 06B19D9713CF924200E550A5 /Users/ocs/work/ocs/dev/beta5/temp/tools/macosx/ocsng_app-xcode/OCSNG.xcodeproj WindowString 0 145 1440 733 0 0 1440 878 WindowToolsV3 FirstTimeWindowDisplayed Identifier windowTool.build IsVertical Layout Dock ContentConfiguration PBXProjectModuleGUID 1CD0528F0623707200166675 PBXProjectModuleLabel StatusBarVisibility GeometryConfiguration Frame {{0, 0}, {1440, 455}} RubberWindowFrame 0 146 1440 732 0 0 1440 878 Module PBXNavigatorGroup Proportion 455pt ContentConfiguration PBXProjectModuleGUID XCMainBuildResultsModuleGUID PBXProjectModuleLabel Build Results XCBuildResultsTrigger_Collapse 1021 XCBuildResultsTrigger_Open 1011 GeometryConfiguration Frame {{0, 460}, {1440, 231}} RubberWindowFrame 0 146 1440 732 0 0 1440 878 Module PBXBuildResultsModule Proportion 231pt Proportion 691pt Name Build Results ServiceClasses PBXBuildResultsModule StatusbarIsVisible TableOfContents 06B19D9713CF924200E550A5 068005FA151BCF55006F95F1 1CD0528F0623707200166675 XCMainBuildResultsModuleGUID ToolbarConfiguration xcode.toolbar.config.buildV3 WindowContentMinSize 486 300 WindowString 0 146 1440 732 0 0 1440 878 WindowToolGUID 06B19D9713CF924200E550A5 WindowToolIsVisible FirstTimeWindowDisplayed Identifier windowTool.debugger IsVertical Layout Dock ContentConfiguration Debugger HorizontalSplitView _collapsingFrameDimension 0.0 _indexOfCollapsedView 0 _percentageOfCollapsedView 0.0 isCollapsed yes sizes {{0, 0}, {314, 203}} {{314, 0}, {380, 203}} VerticalSplitView _collapsingFrameDimension 0.0 _indexOfCollapsedView 0 _percentageOfCollapsedView 0.0 isCollapsed yes sizes {{0, 0}, {694, 203}} {{0, 203}, {694, 178}} LauncherConfigVersion 8 PBXProjectModuleGUID 1C162984064C10D400B95A72 PBXProjectModuleLabel Debug - GLUTExamples (Underwater) GeometryConfiguration DebugConsoleVisible None DebugConsoleWindowFrame {{200, 200}, {500, 300}} DebugSTDIOWindowFrame {{200, 200}, {500, 300}} Frame {{0, 0}, {694, 381}} PBXDebugSessionStackFrameViewKey DebugVariablesTableConfiguration Name 120 Value 85 Summary 150 Frame {{314, 0}, {380, 203}} RubberWindowFrame 496 358 694 422 0 0 1440 878 RubberWindowFrame 496 358 694 422 0 0 1440 878 Module PBXDebugSessionModule Proportion 381pt Proportion 381pt Name Debugger ServiceClasses PBXDebugSessionModule StatusbarIsVisible TableOfContents 1CD10A99069EF8BA00B06720 0606C1C714DCA7BA008033F9 1C162984064C10D400B95A72 0606C1C814DCA7BA008033F9 0606C1C914DCA7BA008033F9 0606C1CA14DCA7BA008033F9 0606C1CB14DCA7BA008033F9 0606C1CC14DCA7BA008033F9 ToolbarConfiguration xcode.toolbar.config.debugV3 WindowString 496 358 694 422 0 0 1440 878 WindowToolGUID 1CD10A99069EF8BA00B06720 WindowToolIsVisible FirstTimeWindowDisplayed Identifier windowTool.find Layout Dock Dock ContentConfiguration PBXProjectModuleGUID 1CDD528C0622207200134675 PBXProjectModuleLabel <No Editor> PBXSplitModuleInNavigatorKey Split0 PBXProjectModuleGUID 1CD0528D0623707200166675 SplitCount 1 StatusBarVisibility 1 GeometryConfiguration Frame {{0, 0}, {781, 167}} RubberWindowFrame 62 385 781 470 0 0 1440 878 Module PBXNavigatorGroup Proportion 781pt Proportion 50% BecomeActive 1 ContentConfiguration PBXProjectModuleGUID 1CD0528E0623707200166675 PBXProjectModuleLabel Project Find GeometryConfiguration Frame {{8, 0}, {773, 254}} RubberWindowFrame 62 385 781 470 0 0 1440 878 Module PBXProjectFindModule Proportion 50% Proportion 428pt Name Project Find ServiceClasses PBXProjectFindModule StatusbarIsVisible TableOfContents 1C530D57069F1CE1000CFCEE 1C530D58069F1CE1000CFCEE 1C530D59069F1CE1000CFCEE 1CDD528C0622207200134675 1C530D5A069F1CE1000CFCEE 1CE0B1FE06471DED0097A5F4 1CD0528E0623707200166675 WindowString 62 385 781 470 0 0 1440 878 WindowToolGUID 1C530D57069F1CE1000CFCEE WindowToolIsVisible FirstTimeWindowDisplayed Identifier MENUSEPARATOR FirstTimeWindowDisplayed Identifier windowTool.debuggerConsole IsVertical Layout Dock ContentConfiguration PBXProjectModuleGUID 1C78EAAC065D492600B07095 PBXProjectModuleLabel Debugger Console GeometryConfiguration Frame {{0, 0}, {440, 359}} RubberWindowFrame 10 478 440 400 0 0 1440 878 Module PBXDebugCLIModule Proportion 359pt Proportion 359pt Name Debugger Console ServiceClasses PBXDebugCLIModule StatusbarIsVisible TableOfContents 1C78EAAD065D492600B07095 0649FB5514D9E57D001EC640 1C78EAAC065D492600B07095 ToolbarConfiguration xcode.toolbar.config.consoleV3 WindowString 10 478 440 400 0 0 1440 878 WindowToolGUID 1C78EAAD065D492600B07095 WindowToolIsVisible Identifier windowTool.snapshots Layout Dock Module XCSnapshotModule Proportion 100% Proportion 100% Name Snapshots ServiceClasses XCSnapshotModule StatusbarIsVisible Yes ToolbarConfiguration xcode.toolbar.config.snapshots WindowString 315 824 300 550 0 0 1440 878 WindowToolIsVisible Yes FirstTimeWindowDisplayed Identifier windowTool.scm Layout Dock ContentConfiguration PBXProjectModuleGUID 1C78EAB2065D492600B07095 PBXProjectModuleLabel <No Editor> PBXSplitModuleInNavigatorKey Split0 PBXProjectModuleGUID 1C78EAB3065D492600B07095 SplitCount 1 StatusBarVisibility 1 GeometryConfiguration Frame {{0, 0}, {452, 0}} RubberWindowFrame 743 379 452 308 0 0 1280 1002 Module PBXNavigatorGroup Proportion 0pt BecomeActive 1 ContentConfiguration PBXProjectModuleGUID 1CD052920623707200166675 PBXProjectModuleLabel SCM GeometryConfiguration ConsoleFrame {{0, 259}, {452, 0}} Frame {{0, 7}, {452, 259}} RubberWindowFrame 743 379 452 308 0 0 1280 1002 TableConfiguration Status 30 FileName 199 Path 197.09500122070312 TableFrame {{0, 0}, {452, 250}} Module PBXCVSModule Proportion 262pt Proportion 266pt Name SCM ServiceClasses PBXCVSModule StatusbarIsVisible TableOfContents 1C78EAB4065D492600B07095 1C78EAB5065D492600B07095 1C78EAB2065D492600B07095 1CD052920623707200166675 ToolbarConfiguration xcode.toolbar.config.scm WindowString 743 379 452 308 0 0 1280 1002 FirstTimeWindowDisplayed Identifier windowTool.breakpoints IsVertical Layout Dock BecomeActive 1 ContentConfiguration PBXBottomSmartGroupGIDs 1C77FABC04509CD000000102 PBXProjectModuleGUID 1CE0B1FE06471DED0097A5F4 PBXProjectModuleLabel Files PBXProjectStructureProvided no PBXSmartGroupTreeModuleColumnData PBXSmartGroupTreeModuleColumnWidthsKey 168 PBXSmartGroupTreeModuleColumnsKey_v4 MainColumn PBXSmartGroupTreeModuleOutlineStateKey_v7 PBXSmartGroupTreeModuleOutlineStateExpansionKey 1C77FABC04509CD000000102 PBXSmartGroupTreeModuleOutlineStateSelectionKey 0 PBXSmartGroupTreeModuleOutlineStateVisibleRectKey {{0, 0}, {168, 350}} PBXTopSmartGroupGIDs XCIncludePerspectivesSwitch 0 GeometryConfiguration Frame {{0, 0}, {185, 368}} GroupTreeTableConfiguration MainColumn 168 RubberWindowFrame 315 424 744 409 0 0 1440 878 Module PBXSmartGroupTreeModule Proportion 185pt ContentConfiguration PBXProjectModuleGUID 1CA1AED706398EBD00589147 PBXProjectModuleLabel Detail GeometryConfiguration Frame {{190, 0}, {554, 368}} RubberWindowFrame 315 424 744 409 0 0 1440 878 Module XCDetailModule Proportion 554pt Proportion 368pt MajorVersion 3 MinorVersion 0 Name Breakpoints ServiceClasses PBXSmartGroupTreeModule XCDetailModule StatusbarIsVisible TableOfContents 1CDDB66807F98D9800BB5817 1CDDB66907F98D9800BB5817 1CE0B1FE06471DED0097A5F4 1CA1AED706398EBD00589147 ToolbarConfiguration xcode.toolbar.config.breakpointsV3 WindowString 315 424 744 409 0 0 1440 878 WindowToolGUID 1CDDB66807F98D9800BB5817 WindowToolIsVisible FirstTimeWindowDisplayed Identifier windowTool.debugAnimator Layout Dock Module PBXNavigatorGroup Proportion 100% Proportion 100% Name Debug Visualizer ServiceClasses PBXNavigatorGroup StatusbarIsVisible ToolbarConfiguration xcode.toolbar.config.debugAnimatorV3 WindowString 100 100 700 500 0 0 1280 1002 FirstTimeWindowDisplayed Identifier windowTool.bookmarks Layout Dock Module PBXBookmarksModule Proportion 100% Proportion 100% Name Bookmarks ServiceClasses PBXBookmarksModule StatusbarIsVisible WindowString 538 42 401 187 0 0 1280 1002 Identifier windowTool.projectFormatConflicts Layout Dock Module XCProjectFormatConflictsModule Proportion 100% Proportion 100% Name Project Format Conflicts ServiceClasses XCProjectFormatConflictsModule StatusbarIsVisible WindowContentMinSize 450 300 WindowString 50 850 472 307 0 0 1440 877 FirstTimeWindowDisplayed Identifier windowTool.classBrowser Layout Dock BecomeActive ContentConfiguration OptionsSetName Hierarchy, all classes PBXProjectModuleGUID 1CA6456E063B45B4001379D8 PBXProjectModuleLabel Class Browser - NSObject GeometryConfiguration ClassesFrame {{0, 0}, {378, 96}} ClassesTreeTableConfiguration PBXClassNameColumnIdentifier 208 PBXClassBookColumnIdentifier 22 Frame {{0, 0}, {630, 332}} MembersFrame {{0, 101}, {378, 231}} MembersTreeTableConfiguration PBXMemberTypeIconColumnIdentifier 22 PBXMemberNameColumnIdentifier 216 PBXMemberTypeColumnIdentifier 101 PBXMemberBookColumnIdentifier 22 RubberWindowFrame 397 461 630 352 0 0 1440 878 Module PBXClassBrowserModule Proportion 332pt Proportion 332pt Name Class Browser ServiceClasses PBXClassBrowserModule StatusbarIsVisible TableOfContents 1C0AD2AF069F1E9B00FABCE6 1C0AD2B0069F1E9B00FABCE6 1CA6456E063B45B4001379D8 ToolbarConfiguration xcode.toolbar.config.classbrowser WindowString 397 461 630 352 0 0 1440 878 WindowToolGUID 1C0AD2AF069F1E9B00FABCE6 WindowToolIsVisible Identifier windowTool.refactoring IncludeInToolsMenu Layout Dock BecomeActive GeometryConfiguration Frame {0, 0}, {500, 335} RubberWindowFrame {0, 0}, {500, 335} Module XCRefactoringModule Proportion 100% Proportion 100% Name Refactoring ServiceClasses XCRefactoringModule WindowString 200 200 500 356 0 0 1920 1200 Ocsinventory-Unix-Agent-2.0.5/tools/macosx/ocsng_app-xcode/OCSNG.xcodeproj/project.pbxproj010064400017500001750000000432111173606111100312240ustar00guiguiguigui// !$*UTF8*$! { archiveVersion = 1; classes = { }; objectVersion = 44; objects = { /* Begin PBXBuildFile section */ 0625C76F13CAC89000D6EB7C /* ocs_logo.icns in Resources */ = {isa = PBXBuildFile; fileRef = 0625C76E13CAC89000D6EB7C /* ocs_logo.icns */; }; 0649FB3414D9E198001EC640 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 0649FB3314D9E198001EC640 /* Localizable.strings */; }; 06C39B371394ADB20047198A /* CoreData.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 06C39B361394ADB20047198A /* CoreData.framework */; }; 06C39B381394ADB20047198A /* CoreData.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 06C39B361394ADB20047198A /* CoreData.framework */; }; 06C39B3A1394ADDF0047198A /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 06C39B391394ADDF0047198A /* AppKit.framework */; }; 06C39B3B1394ADDF0047198A /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 06C39B391394ADDF0047198A /* AppKit.framework */; }; 06C39BCE1394B5600047198A /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 06C39BCD1394B5600047198A /* Security.framework */; }; 06C39BCF1394B5600047198A /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 06C39BCD1394B5600047198A /* Security.framework */; }; 06D657B4134FDBFF00981FE3 /* ocscontact.m in Sources */ = {isa = PBXBuildFile; fileRef = 06D657B3134FDBFF00981FE3 /* ocscontact.m */; }; 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; }; 8D11072D0486CEB800E47090 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; settings = {ATTRIBUTES = (); }; }; 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; }; EE2C4E5B0DF1CA5800171780 /* GetPID.c in Sources */ = {isa = PBXBuildFile; fileRef = EE2C4E590DF1CA5800171780 /* GetPID.c */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ 0625C76E13CAC89000D6EB7C /* ocs_logo.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; name = ocs_logo.icns; path = icons/ocs_logo.icns; sourceTree = ""; }; 0649FB3114D9E191001EC640 /* English */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/Localizable.strings; sourceTree = ""; }; 0649FB3514D9E1AA001EC640 /* French */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = French; path = French.lproj/Localizable.strings; sourceTree = ""; }; 06C39B361394ADB20047198A /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = /System/Library/Frameworks/CoreData.framework; sourceTree = ""; }; 06C39B391394ADDF0047198A /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = ""; }; 06C39BCD1394B5600047198A /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = /System/Library/Frameworks/Security.framework; sourceTree = ""; }; 06D65785134FD5B800981FE3 /* ocscontact-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "ocscontact-Info.plist"; sourceTree = ""; }; 06D657A7134FD97A00981FE3 /* ocscontact */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = ocscontact; sourceTree = BUILT_PRODUCTS_DIR; }; 06D657B2134FDBFF00981FE3 /* ocscontact.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ocscontact.h; sourceTree = ""; }; 06D657B3134FDBFF00981FE3 /* ocscontact.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ocscontact.m; sourceTree = ""; }; 089C165DFE840E0CC02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = ""; }; 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; }; 29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; 29B97325FDCFA39411CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = ""; }; 32CA4F630368D1EE00C91783 /* OCSNG_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OCSNG_Prefix.pch; sourceTree = ""; }; 8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 8D1107320486CEB800E47090 /* OCSNG.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = OCSNG.app; sourceTree = BUILT_PRODUCTS_DIR; }; EE2C4E590DF1CA5800171780 /* GetPID.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = GetPID.c; sourceTree = ""; }; EE2C4E5A0DF1CA5800171780 /* GetPID.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GetPID.h; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ 06D657A5134FD97A00981FE3 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( 06C39B371394ADB20047198A /* CoreData.framework in Frameworks */, 06C39B3A1394ADDF0047198A /* AppKit.framework in Frameworks */, 06C39BCE1394B5600047198A /* Security.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; 8D11072E0486CEB800E47090 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */, 06C39B381394ADB20047198A /* CoreData.framework in Frameworks */, 06C39B3B1394ADDF0047198A /* AppKit.framework in Frameworks */, 06C39BCF1394B5600047198A /* Security.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ 080E96DDFE201D6D7F000001 /* Classes */ = { isa = PBXGroup; children = ( 29B97316FDCFA39411CA2CEA /* main.m */, ); name = Classes; sourceTree = ""; }; 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = { isa = PBXGroup; children = ( 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */, ); name = "Linked Frameworks"; sourceTree = ""; }; 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */ = { isa = PBXGroup; children = ( 06C39BCD1394B5600047198A /* Security.framework */, 06C39B391394ADDF0047198A /* AppKit.framework */, 06C39B361394ADB20047198A /* CoreData.framework */, 29B97325FDCFA39411CA2CEA /* Foundation.framework */, ); name = "Other Frameworks"; sourceTree = ""; }; 19C28FACFE9D520D11CA2CBB /* Products */ = { isa = PBXGroup; children = ( 8D1107320486CEB800E47090 /* OCSNG.app */, 06D657A7134FD97A00981FE3 /* ocscontact */, ); name = Products; sourceTree = ""; }; 29B97314FDCFA39411CA2CEA /* OCSNG */ = { isa = PBXGroup; children = ( 080E96DDFE201D6D7F000001 /* Classes */, 29B97315FDCFA39411CA2CEA /* Other Sources */, 29B97317FDCFA39411CA2CEA /* Resources */, 29B97323FDCFA39411CA2CEA /* Frameworks */, 19C28FACFE9D520D11CA2CBB /* Products */, 06D65785134FD5B800981FE3 /* ocscontact-Info.plist */, ); name = OCSNG; sourceTree = ""; }; 29B97315FDCFA39411CA2CEA /* Other Sources */ = { isa = PBXGroup; children = ( 06D657B2134FDBFF00981FE3 /* ocscontact.h */, 06D657B3134FDBFF00981FE3 /* ocscontact.m */, EE2C4E590DF1CA5800171780 /* GetPID.c */, EE2C4E5A0DF1CA5800171780 /* GetPID.h */, 32CA4F630368D1EE00C91783 /* OCSNG_Prefix.pch */, ); name = "Other Sources"; sourceTree = ""; }; 29B97317FDCFA39411CA2CEA /* Resources */ = { isa = PBXGroup; children = ( 0625C76E13CAC89000D6EB7C /* ocs_logo.icns */, 8D1107310486CEB800E47090 /* Info.plist */, 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */, 0649FB3314D9E198001EC640 /* Localizable.strings */, ); name = Resources; sourceTree = ""; }; 29B97323FDCFA39411CA2CEA /* Frameworks */ = { isa = PBXGroup; children = ( 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */, 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */, ); name = Frameworks; sourceTree = ""; }; /* End PBXGroup section */ /* Begin PBXNativeTarget section */ 06D657A6134FD97A00981FE3 /* ocscontact */ = { isa = PBXNativeTarget; buildConfigurationList = 06D657A9134FD99800981FE3 /* Build configuration list for PBXNativeTarget "ocscontact" */; buildPhases = ( 06D657A4134FD97A00981FE3 /* Sources */, 06D657A5134FD97A00981FE3 /* Frameworks */, ); buildRules = ( ); dependencies = ( ); name = ocscontact; productName = ocscontact; productReference = 06D657A7134FD97A00981FE3 /* ocscontact */; productType = "com.apple.product-type.tool"; }; 8D1107260486CEB800E47090 /* OCSNG */ = { isa = PBXNativeTarget; buildConfigurationList = C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "OCSNG" */; buildPhases = ( 8D1107290486CEB800E47090 /* Resources */, 8D11072C0486CEB800E47090 /* Sources */, 8D11072E0486CEB800E47090 /* Frameworks */, ); buildRules = ( ); dependencies = ( ); name = OCSNG; productInstallPath = "$(HOME)/Applications"; productName = OCSNG; productReference = 8D1107320486CEB800E47090 /* OCSNG.app */; productType = "com.apple.product-type.application"; }; /* End PBXNativeTarget section */ /* Begin PBXProject section */ 29B97313FDCFA39411CA2CEA /* Project object */ = { isa = PBXProject; buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "OCSNG" */; compatibilityVersion = "Xcode 3.0"; developmentRegion = English; hasScannedForEncodings = 1; knownRegions = ( English, Japanese, French, German, ); mainGroup = 29B97314FDCFA39411CA2CEA /* OCSNG */; projectDirPath = ""; projectRoot = ""; targets = ( 8D1107260486CEB800E47090 /* OCSNG */, 06D657A6134FD97A00981FE3 /* ocscontact */, ); }; /* End PBXProject section */ /* Begin PBXResourcesBuildPhase section */ 8D1107290486CEB800E47090 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */, 0625C76F13CAC89000D6EB7C /* ocs_logo.icns in Resources */, 0649FB3414D9E198001EC640 /* Localizable.strings in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXResourcesBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ 06D657A4134FD97A00981FE3 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( 06D657B4134FDBFF00981FE3 /* ocscontact.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; 8D11072C0486CEB800E47090 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( 8D11072D0486CEB800E47090 /* main.m in Sources */, EE2C4E5B0DF1CA5800171780 /* GetPID.c in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXSourcesBuildPhase section */ /* Begin PBXVariantGroup section */ 0649FB3314D9E198001EC640 /* Localizable.strings */ = { isa = PBXVariantGroup; children = ( 0649FB3114D9E191001EC640 /* English */, 0649FB3514D9E1AA001EC640 /* French */, ); name = Localizable.strings; sourceTree = ""; }; 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */ = { isa = PBXVariantGroup; children = ( 089C165DFE840E0CC02AAC07 /* English */, ); name = InfoPlist.strings; sourceTree = ""; }; /* End PBXVariantGroup section */ /* Begin XCBuildConfiguration section */ 06D657AA134FD99800981FE3 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { ARCHS = ( i386, ppc, ); COPY_PHASE_STRIP = NO; GCC_DYNAMIC_NO_PIC = NO; GCC_ENABLE_FIX_AND_CONTINUE = YES; GCC_GENERATE_DEBUGGING_SYMBOLS = YES; GCC_MODEL_TUNING = G5; GCC_OPTIMIZATION_LEVEL = 0; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = "$(SYSTEM_LIBRARY_DIR)/Frameworks/AppKit.framework/Headers/AppKit.h"; GCC_VERSION = 4.0; INSTALL_PATH = "$(HOME)/bin"; OBJROOT = build; OTHER_LDFLAGS = ( "-framework", Foundation, "-framework", AppKit, ); PREBINDING = NO; PRODUCT_NAME = ocscontact; SYMROOT = build; ZERO_LINK = NO; }; name = Debug; }; 06D657AB134FD99800981FE3 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { ARCHS = ( i386, ppc, x86_64, ); COPY_PHASE_STRIP = YES; GCC_ENABLE_FIX_AND_CONTINUE = NO; GCC_GENERATE_DEBUGGING_SYMBOLS = NO; GCC_MODEL_TUNING = G5; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = "$(SYSTEM_LIBRARY_DIR)/Frameworks/AppKit.framework/Headers/AppKit.h"; GCC_VERSION = 4.0; INSTALL_PATH = /Applications; OBJROOT = build; OTHER_LDFLAGS = ( "-framework", Foundation, "-framework", AppKit, ); PREBINDING = NO; PRODUCT_NAME = ocscontact; SDKROOT = "$(DEVELOPER_SDK_DIR)/MacOSX10.6.sdk"; SKIP_INSTALL = YES; SYMROOT = build; ZERO_LINK = NO; }; name = Release; }; C01FCF4B08A954540054247B /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { ADDITIONAL_SDKS = ""; ARCHS = ( i386, ppc, ); COPY_PHASE_STRIP = NO; GCC_DYNAMIC_NO_PIC = NO; GCC_ENABLE_FIX_AND_CONTINUE = YES; GCC_MODEL_TUNING = G5; GCC_OPTIMIZATION_LEVEL = 0; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = OCSNG_Prefix.pch; GCC_VERSION = 4.0; INFOPLIST_FILE = Info.plist; INSTALL_PATH = "$(HOME)/Applications"; OBJROOT = build; PRODUCT_NAME = OCSNG; SYMROOT = build; VALID_ARCHS = "ppc64 ppc7400 ppc970 i386 x86_64 ppc"; WRAPPER_EXTENSION = app; ZERO_LINK = ""; }; name = Debug; }; C01FCF4C08A954540054247B /* Release */ = { isa = XCBuildConfiguration; buildSettings = { ARCHS = ( i386, ppc, x86_64, ); DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; GCC_MODEL_TUNING = G5; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = OCSNG_Prefix.pch; GCC_VERSION = 4.0; INFOPLIST_FILE = Info.plist; OBJROOT = build; PRODUCT_NAME = OCSNG; SDKROOT = "$(DEVELOPER_SDK_DIR)/MacOSX10.6.sdk"; SYMROOT = build; WRAPPER_EXTENSION = app; ZERO_LINK = ""; }; name = Release; }; C01FCF4F08A954540054247B /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { ARCHS = ( i386, ppc, ); GCC_VERSION = 4.0; GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_UNUSED_VARIABLE = YES; INSTALL_GROUP = $USER; INSTALL_MODE_FLAG = "a-rwx,u+rwx,g+rwx"; INSTALL_OWNER = $GROUP; PREBINDING = NO; SDKROOT = "$(DEVELOPER_SDK_DIR)/MacOSX10.4u.sdk"; VALID_ARCHS = "ppc64 ppc7400 ppc970 i386 x86_64 ppc"; }; name = Debug; }; C01FCF5008A954540054247B /* Release */ = { isa = XCBuildConfiguration; buildSettings = { ARCHS = ( i386, ppc, x86_64, ); DEPLOYMENT_LOCATION = YES; DSTROOT = "/tmp/$(PROJECT_NAME).dst"; FRAMEWORK_SEARCH_PATHS = ""; GCC_GENERATE_DEBUGGING_SYMBOLS = YES; GCC_VERSION = 4.0; GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_UNUSED_VARIABLE = YES; HEADER_SEARCH_PATHS = ""; INSTALL_GROUP = _ocsng; INSTALL_MODE_FLAG = "a-w,ug+rx,o-rwx"; INSTALL_OWNER = _ocsng; INSTALL_PATH = /Applications; LD_MAP_FILE_PATH = "$(TARGET_TEMP_DIR)/$(PRODUCT_NAME)-LinkMap-$(CURRENT_VARIANT)-$(CURRENT_ARCH).txt"; MACOSX_DEPLOYMENT_TARGET = 10.4; "MACOSX_DEPLOYMENT_TARGET[arch=x86_64]" = 10.5; PREBINDING = NO; SDKROOT = "$(DEVELOPER_SDK_DIR)/MacOSX10.6.sdk"; }; name = Release; }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ 06D657A9134FD99800981FE3 /* Build configuration list for PBXNativeTarget "ocscontact" */ = { isa = XCConfigurationList; buildConfigurations = ( 06D657AA134FD99800981FE3 /* Debug */, 06D657AB134FD99800981FE3 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "OCSNG" */ = { isa = XCConfigurationList; buildConfigurations = ( C01FCF4B08A954540054247B /* Debug */, C01FCF4C08A954540054247B /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; C01FCF4E08A954540054247B /* Build configuration list for PBXProject "OCSNG" */ = { isa = XCConfigurationList; buildConfigurations = ( C01FCF4F08A954540054247B /* Debug */, C01FCF5008A954540054247B /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; /* End XCConfigurationList section */ }; rootObject = 29B97313FDCFA39411CA2CEA /* Project object */; } Ocsinventory-Unix-Agent-2.0.5/tools/macosx/ocsng_app-xcode/OCSNG.xcodeproj/ocs.mode1010064400017500001750000001171621173606111100276720ustar00guiguiguigui ActivePerspectiveName Project AllowedModules BundleLoadPath MaxInstances n Module PBXSmartGroupTreeModule Name Groups and Files Outline View BundleLoadPath MaxInstances n Module PBXNavigatorGroup Name Editor BundleLoadPath MaxInstances n Module XCTaskListModule Name Task List BundleLoadPath MaxInstances n Module XCDetailModule Name File and Smart Group Detail Viewer BundleLoadPath MaxInstances 1 Module PBXBuildResultsModule Name Detailed Build Results Viewer BundleLoadPath MaxInstances 1 Module PBXProjectFindModule Name Project Batch Find Tool BundleLoadPath MaxInstances n Module PBXRunSessionModule Name Run Log BundleLoadPath MaxInstances n Module PBXBookmarksModule Name Bookmarks Tool BundleLoadPath MaxInstances n Module PBXClassBrowserModule Name Class Browser BundleLoadPath MaxInstances n Module PBXCVSModule Name Source Code Control Tool BundleLoadPath MaxInstances n Module PBXDebugBreakpointsModule Name Debug Breakpoints Tool BundleLoadPath MaxInstances n Module XCDockableInspector Name Inspector BundleLoadPath MaxInstances n Module PBXOpenQuicklyModule Name Open Quickly Tool BundleLoadPath MaxInstances 1 Module PBXDebugSessionModule Name Debugger BundleLoadPath MaxInstances 1 Module PBXDebugCLIModule Name Debug Console Description DefaultDescriptionKey DockingSystemVisible Extension mode1 FavBarConfig PBXProjectModuleGUID 061EA96D130275AC009A0BD6 XCBarModuleItemNames XCBarModuleItems FirstTimeWindowDisplayed Identifier com.apple.perspectives.project.mode1 MajorVersion 31 MinorVersion 1 Name Default Notifications OpenEditors Content PBXProjectModuleGUID 06C5590613CC1F6A00405FC9 PBXProjectModuleLabel main.m PBXSplitModuleInNavigatorKey Split0 PBXProjectModuleGUID 06C5590713CC1F6A00405FC9 PBXProjectModuleLabel main.m _historyCapacity 0 bookmark 06C5593E13CC2EFB00405FC9 history 06C5591D13CC27B200405FC9 SplitCount 1 StatusBarVisibility Geometry Frame {{0, 20}, {948, 609}} PBXModuleWindowStatusBarHidden2 RubberWindowFrame 390 203 948 650 0 0 1440 878 PerspectiveWidths -1 -1 Perspectives ChosenToolbarItems active-target-popup active-buildstyle-popup action NSToolbarFlexibleSpaceItem buildOrClean build-and-runOrDebug com.apple.ide.PBXToolbarStopButton get-info toggle-editor NSToolbarFlexibleSpaceItem com.apple.pbx.toolbar.searchfield ControllerClassBaseName IconName WindowOfProjectWithEditor Identifier perspective.project IsVertical Layout BecomeActive ContentConfiguration PBXBottomSmartGroupGIDs 1C37FBAC04509CD000000102 1C37FAAC04509CD000000102 1C08E77C0454961000C914BD 1C37FABC05509CD000000102 1C37FABC05539CD112110102 E2644B35053B69B200211256 1C37FABC04509CD000100104 1CC0EA4004350EF90044410B 1CC0EA4004350EF90041110B PBXProjectModuleGUID 1CE0B1FE06471DED0097A5F4 PBXProjectModuleLabel Files PBXProjectStructureProvided yes PBXSmartGroupTreeModuleColumnData PBXSmartGroupTreeModuleColumnWidthsKey 186 PBXSmartGroupTreeModuleColumnsKey_v4 MainColumn PBXSmartGroupTreeModuleOutlineStateKey_v7 PBXSmartGroupTreeModuleOutlineStateExpansionKey 29B97314FDCFA39411CA2CEA 080E96DDFE201D6D7F000001 29B97315FDCFA39411CA2CEA 29B97317FDCFA39411CA2CEA 29B97323FDCFA39411CA2CEA 1058C7A0FEA54F0111CA2CBB 1058C7A2FEA54F0111CA2CBB 1C37FBAC04509CD000000102 06C5593713CC2B2600405FC9 06C5593813CC2B2600405FC9 1C37FABC05509CD000000102 PBXSmartGroupTreeModuleOutlineStateSelectionKey 5 3 0 PBXSmartGroupTreeModuleOutlineStateVisibleRectKey {{0, 0}, {186, 690}} PBXTopSmartGroupGIDs XCIncludePerspectivesSwitch XCSharingToken com.apple.Xcode.GFSharingToken GeometryConfiguration Frame {{0, 0}, {203, 708}} GroupTreeTableConfiguration MainColumn 186 RubberWindowFrame 10 115 1440 749 0 0 1440 878 Module PBXSmartGroupTreeModule Proportion 203pt Dock ContentConfiguration PBXProjectModuleGUID 1CE0B20306471E060097A5F4 PBXProjectModuleLabel MyNewFile14.java PBXSplitModuleInNavigatorKey Split0 PBXProjectModuleGUID 1CE0B20406471E060097A5F4 PBXProjectModuleLabel MyNewFile14.java SplitCount 1 StatusBarVisibility GeometryConfiguration Frame {{0, 0}, {1232, 0}} RubberWindowFrame 10 115 1440 749 0 0 1440 878 Module PBXNavigatorGroup Proportion 0pt ContentConfiguration PBXProjectModuleGUID 1CE0B20506471E060097A5F4 PBXProjectModuleLabel Detail GeometryConfiguration Frame {{0, 5}, {1232, 703}} RubberWindowFrame 10 115 1440 749 0 0 1440 878 Module XCDetailModule Proportion 703pt Proportion 1232pt Name Project ServiceClasses XCModuleDock PBXSmartGroupTreeModule XCModuleDock PBXNavigatorGroup XCDetailModule TableOfContents 06C5590413CC1F6A00405FC9 1CE0B1FE06471DED0097A5F4 06C5590513CC1F6A00405FC9 1CE0B20306471E060097A5F4 1CE0B20506471E060097A5F4 ToolbarConfiguration xcode.toolbar.config.default ControllerClassBaseName IconName WindowOfProject Identifier perspective.morph IsVertical 0 Layout BecomeActive 1 ContentConfiguration PBXBottomSmartGroupGIDs 1C37FBAC04509CD000000102 1C37FAAC04509CD000000102 1C08E77C0454961000C914BD 1C37FABC05509CD000000102 1C37FABC05539CD112110102 E2644B35053B69B200211256 1C37FABC04509CD000100104 1CC0EA4004350EF90044410B 1CC0EA4004350EF90041110B PBXProjectModuleGUID 11E0B1FE06471DED0097A5F4 PBXProjectModuleLabel Files PBXProjectStructureProvided yes PBXSmartGroupTreeModuleColumnData PBXSmartGroupTreeModuleColumnWidthsKey 186 PBXSmartGroupTreeModuleColumnsKey_v4 MainColumn PBXSmartGroupTreeModuleOutlineStateKey_v7 PBXSmartGroupTreeModuleOutlineStateExpansionKey 29B97314FDCFA39411CA2CEA 1C37FABC05509CD000000102 PBXSmartGroupTreeModuleOutlineStateSelectionKey 0 PBXSmartGroupTreeModuleOutlineStateVisibleRectKey {{0, 0}, {186, 337}} PBXTopSmartGroupGIDs XCIncludePerspectivesSwitch 1 XCSharingToken com.apple.Xcode.GFSharingToken GeometryConfiguration Frame {{0, 0}, {203, 355}} GroupTreeTableConfiguration MainColumn 186 RubberWindowFrame 373 269 690 397 0 0 1440 878 Module PBXSmartGroupTreeModule Proportion 100% Name Morph PreferredWidth 300 ServiceClasses XCModuleDock PBXSmartGroupTreeModule TableOfContents 11E0B1FE06471DED0097A5F4 ToolbarConfiguration xcode.toolbar.config.default.short PerspectivesBarVisible ShelfIsVisible SourceDescription file at '/Developer/Library/PrivateFrameworks/DevToolsInterface.framework/Versions/A/Resources/XCPerspectivesSpecificationMode1.xcperspec' StatusbarIsVisible TimeStamp 0.0 ToolbarDisplayMode 1 ToolbarIsVisible ToolbarSizeMode 1 Type Perspectives UpdateMessage The Default Workspace in this version of Xcode now includes support to hide and show the detail view (what has been referred to as the "Metro-Morph" feature). You must discard your current Default Workspace settings and update to the latest Default Workspace in order to gain this feature. Do you wish to update to the latest Workspace defaults for project '%@'? WindowJustification 5 WindowOrderList 06E04A76134C3537009FD4CA 06C5590613CC1F6A00405FC9 1C0AD2B3069F1EA900FABCE6 /Users/ocs/work/ocs/dev/ocsng_app-xcode/OCSNG.xcodeproj WindowString 10 115 1440 749 0 0 1440 878 WindowTools FirstTimeWindowDisplayed Identifier windowTool.build IsVertical Layout Dock ContentConfiguration PBXProjectModuleGUID 1CD0528F0623707200166675 PBXProjectModuleLabel main.m StatusBarVisibility GeometryConfiguration Frame {{0, 0}, {1440, 466}} RubberWindowFrame 185 -243 1440 748 0 0 1440 878 Module PBXNavigatorGroup Proportion 466pt BecomeActive ContentConfiguration PBXProjectModuleGUID XCMainBuildResultsModuleGUID PBXProjectModuleLabel Build XCBuildResultsTrigger_Collapse 1021 XCBuildResultsTrigger_Open 1011 GeometryConfiguration Frame {{0, 471}, {1440, 236}} RubberWindowFrame 185 -243 1440 748 0 0 1440 878 Module PBXBuildResultsModule Proportion 236pt Proportion 707pt Name Build Results ServiceClasses PBXBuildResultsModule StatusbarIsVisible TableOfContents 06E04A76134C3537009FD4CA 06C558F513CC1D1900405FC9 1CD0528F0623707200166675 XCMainBuildResultsModuleGUID ToolbarConfiguration xcode.toolbar.config.build WindowString 185 -243 1440 748 0 0 1440 878 WindowToolGUID 06E04A76134C3537009FD4CA WindowToolIsVisible FirstTimeWindowDisplayed Identifier windowTool.debugger IsVertical Layout Dock ContentConfiguration Debugger HorizontalSplitView _collapsingFrameDimension 0.0 _indexOfCollapsedView 0 _percentageOfCollapsedView 0.0 isCollapsed yes sizes {{0, 0}, {313, 196}} {{313, 0}, {381, 196}} VerticalSplitView _collapsingFrameDimension 0.0 _indexOfCollapsedView 0 _percentageOfCollapsedView 0.0 isCollapsed yes sizes {{0, 0}, {694, 196}} {{0, 196}, {694, 185}} LauncherConfigVersion 8 PBXProjectModuleGUID 1C162984064C10D400B95A72 PBXProjectModuleLabel Debug - GLUTExamples (Underwater) GeometryConfiguration DebugConsoleDrawerSize {100, 120} DebugConsoleVisible None DebugConsoleWindowFrame {{200, 200}, {500, 300}} DebugSTDIOWindowFrame {{200, 200}, {500, 300}} Frame {{0, 0}, {694, 381}} RubberWindowFrame 496 358 694 422 0 0 1440 878 Module PBXDebugSessionModule Proportion 381pt Proportion 381pt Name Debugger ServiceClasses PBXDebugSessionModule StatusbarIsVisible TableOfContents 1CD10A99069EF8BA00B06720 06BF31CC13CAD57A006FA767 1C162984064C10D400B95A72 06BF31CD13CAD57A006FA767 06BF31CE13CAD57A006FA767 06BF31CF13CAD57A006FA767 06BF31D013CAD57A006FA767 06BF31D113CAD57A006FA767 06BF31D213CAD57A006FA767 ToolbarConfiguration xcode.toolbar.config.debug WindowString 496 358 694 422 0 0 1440 878 WindowToolGUID 1CD10A99069EF8BA00B06720 WindowToolIsVisible Identifier windowTool.find Layout Dock Dock ContentConfiguration PBXProjectModuleGUID 1CDD528C0622207200134675 PBXProjectModuleLabel <No Editor> PBXSplitModuleInNavigatorKey Split0 PBXProjectModuleGUID 1CD0528D0623707200166675 SplitCount 1 StatusBarVisibility 1 GeometryConfiguration Frame {{0, 0}, {781, 167}} RubberWindowFrame 62 385 781 470 0 0 1440 878 Module PBXNavigatorGroup Proportion 781pt Proportion 50% BecomeActive 1 ContentConfiguration PBXProjectModuleGUID 1CD0528E0623707200166675 PBXProjectModuleLabel Project Find GeometryConfiguration Frame {{8, 0}, {773, 254}} RubberWindowFrame 62 385 781 470 0 0 1440 878 Module PBXProjectFindModule Proportion 50% Proportion 428pt Name Project Find ServiceClasses PBXProjectFindModule StatusbarIsVisible 1 TableOfContents 1C530D57069F1CE1000CFCEE 1C530D58069F1CE1000CFCEE 1C530D59069F1CE1000CFCEE 1CDD528C0622207200134675 1C530D5A069F1CE1000CFCEE 1CE0B1FE06471DED0097A5F4 1CD0528E0623707200166675 WindowString 62 385 781 470 0 0 1440 878 WindowToolGUID 1C530D57069F1CE1000CFCEE WindowToolIsVisible 0 Identifier MENUSEPARATOR FirstTimeWindowDisplayed Identifier windowTool.debuggerConsole IsVertical Layout Dock ContentConfiguration PBXProjectModuleGUID 1C78EAAC065D492600B07095 PBXProjectModuleLabel Debugger Console GeometryConfiguration Frame {{0, 0}, {440, 358}} RubberWindowFrame 73 409 440 400 0 0 1440 878 Module PBXDebugCLIModule Proportion 358pt Proportion 359pt Name Debugger Console ServiceClasses PBXDebugCLIModule StatusbarIsVisible TableOfContents 06C399E61394981F0047198A 06BF31D313CAD57A006FA767 1C78EAAC065D492600B07095 WindowString 73 409 440 400 0 0 1440 878 WindowToolGUID 06C399E61394981F0047198A WindowToolIsVisible FirstTimeWindowDisplayed Identifier windowTool.run IsVertical Layout Dock ContentConfiguration LauncherConfigVersion 3 PBXProjectModuleGUID 1CD0528B0623707200166675 PBXProjectModuleLabel Run Runner HorizontalSplitView _collapsingFrameDimension 0.0 _indexOfCollapsedView 0 _percentageOfCollapsedView 0.0 isCollapsed yes sizes {{0, 0}, {493, 167}} {{0, 176}, {493, 267}} VerticalSplitView _collapsingFrameDimension 0.0 _indexOfCollapsedView 0 _percentageOfCollapsedView 0.0 isCollapsed yes sizes {{0, 0}, {405, 443}} {{414, 0}, {514, 443}} GeometryConfiguration Frame {{0, 0}, {459, 159}} RubberWindowFrame 31 655 459 200 0 0 1440 878 Module PBXRunSessionModule Proportion 159pt Proportion 159pt Name Run Log ServiceClasses PBXRunSessionModule StatusbarIsVisible TableOfContents 1C0AD2B3069F1EA900FABCE6 06C558F613CC1D1900405FC9 1CD0528B0623707200166675 06C558F713CC1D1900405FC9 ToolbarConfiguration xcode.toolbar.config.run WindowString 31 655 459 200 0 0 1440 878 WindowToolGUID 1C0AD2B3069F1EA900FABCE6 WindowToolIsVisible Identifier windowTool.scm Layout Dock ContentConfiguration PBXProjectModuleGUID 1C78EAB2065D492600B07095 PBXProjectModuleLabel <No Editor> PBXSplitModuleInNavigatorKey Split0 PBXProjectModuleGUID 1C78EAB3065D492600B07095 SplitCount 1 StatusBarVisibility 1 GeometryConfiguration Frame {{0, 0}, {452, 0}} RubberWindowFrame 743 379 452 308 0 0 1280 1002 Module PBXNavigatorGroup Proportion 0pt BecomeActive 1 ContentConfiguration PBXProjectModuleGUID 1CD052920623707200166675 PBXProjectModuleLabel SCM GeometryConfiguration ConsoleFrame {{0, 259}, {452, 0}} Frame {{0, 7}, {452, 259}} RubberWindowFrame 743 379 452 308 0 0 1280 1002 TableConfiguration Status 30 FileName 199 Path 197.09500122070312 TableFrame {{0, 0}, {452, 250}} Module PBXCVSModule Proportion 262pt Proportion 266pt Name SCM ServiceClasses PBXCVSModule StatusbarIsVisible 1 TableOfContents 1C78EAB4065D492600B07095 1C78EAB5065D492600B07095 1C78EAB2065D492600B07095 1CD052920623707200166675 ToolbarConfiguration xcode.toolbar.config.scm WindowString 743 379 452 308 0 0 1280 1002 Identifier windowTool.breakpoints IsVertical 0 Layout Dock BecomeActive 1 ContentConfiguration PBXBottomSmartGroupGIDs 1C77FABC04509CD000000102 PBXProjectModuleGUID 1CE0B1FE06471DED0097A5F4 PBXProjectModuleLabel Files PBXProjectStructureProvided no PBXSmartGroupTreeModuleColumnData PBXSmartGroupTreeModuleColumnWidthsKey 168 PBXSmartGroupTreeModuleColumnsKey_v4 MainColumn PBXSmartGroupTreeModuleOutlineStateKey_v7 PBXSmartGroupTreeModuleOutlineStateExpansionKey 1C77FABC04509CD000000102 PBXSmartGroupTreeModuleOutlineStateSelectionKey 0 PBXSmartGroupTreeModuleOutlineStateVisibleRectKey {{0, 0}, {168, 350}} PBXTopSmartGroupGIDs XCIncludePerspectivesSwitch 0 GeometryConfiguration Frame {{0, 0}, {185, 368}} GroupTreeTableConfiguration MainColumn 168 RubberWindowFrame 315 424 744 409 0 0 1440 878 Module PBXSmartGroupTreeModule Proportion 185pt ContentConfiguration PBXProjectModuleGUID 1CA1AED706398EBD00589147 PBXProjectModuleLabel Detail GeometryConfiguration Frame {{190, 0}, {554, 368}} RubberWindowFrame 315 424 744 409 0 0 1440 878 Module XCDetailModule Proportion 554pt Proportion 368pt MajorVersion 2 MinorVersion 0 Name Breakpoints ServiceClasses PBXSmartGroupTreeModule XCDetailModule StatusbarIsVisible 1 TableOfContents 1CDDB66807F98D9800BB5817 1CDDB66907F98D9800BB5817 1CE0B1FE06471DED0097A5F4 1CA1AED706398EBD00589147 ToolbarConfiguration xcode.toolbar.config.breakpoints WindowString 315 424 744 409 0 0 1440 878 WindowToolGUID 1CDDB66807F98D9800BB5817 WindowToolIsVisible 1 Identifier windowTool.debugAnimator Layout Dock Module PBXNavigatorGroup Proportion 100% Proportion 100% Name Debug Visualizer ServiceClasses PBXNavigatorGroup StatusbarIsVisible 1 ToolbarConfiguration xcode.toolbar.config.debugAnimator WindowString 100 100 700 500 0 0 1280 1002 Identifier windowTool.bookmarks Layout Dock Module PBXBookmarksModule Proportion 100% Proportion 100% Name Bookmarks ServiceClasses PBXBookmarksModule StatusbarIsVisible 0 WindowString 538 42 401 187 0 0 1280 1002 FirstTimeWindowDisplayed Identifier windowTool.classBrowser IsVertical Layout Dock BecomeActive ContentConfiguration OptionsSetName Hierarchy, all classes PBXProjectModuleGUID 1CA6456E063B45B4001379D8 PBXProjectModuleLabel Class Browser - NSObject GeometryConfiguration ClassesFrame {{0, 0}, {378, 96}} ClassesTreeTableConfiguration PBXClassNameColumnIdentifier 208 PBXClassBookColumnIdentifier 22 Frame {{0, 0}, {630, 332}} MembersFrame {{0, 101}, {378, 231}} MembersTreeTableConfiguration PBXMemberTypeIconColumnIdentifier 22 PBXMemberNameColumnIdentifier 216 PBXMemberTypeColumnIdentifier 101 PBXMemberBookColumnIdentifier 22 RubberWindowFrame 397 461 630 352 0 0 1440 878 Module PBXClassBrowserModule Proportion 332pt Proportion 332pt Name Class Browser ServiceClasses PBXClassBrowserModule StatusbarIsVisible TableOfContents 1C0AD2AF069F1E9B00FABCE6 069BBEBB134C395300F43B40 1CA6456E063B45B4001379D8 ToolbarConfiguration xcode.toolbar.config.classbrowser WindowString 397 461 630 352 0 0 1440 878 WindowToolGUID 1C0AD2AF069F1E9B00FABCE6 WindowToolIsVisible Ocsinventory-Unix-Agent-2.0.5/tools/macosx/ocsng_app-xcode/OCSNG.xcodeproj/ocs.pbxuser010064400017500001750000000270661173606111100303600ustar00guiguiguigui// !$*UTF8*$! { 061EA95B130259AB009A0BD6 /* OCSNG */ = { isa = PBXExecutable; activeArgIndices = ( ); argumentStrings = ( ); autoAttachOnCrash = 1; breakpointsEnabled = 0; configStateDict = { }; customDataFormattersEnabled = 1; dataTipCustomDataFormattersEnabled = 1; dataTipShowTypeColumn = 1; dataTipSortType = 0; debuggerPlugin = GDBDebugging; disassemblyDisplayState = 0; dylibVariantSuffix = ""; enableDebugStr = 1; environmentEntries = ( ); executableSystemSymbolLevel = 0; executableUserSymbolLevel = 0; libgmallocEnabled = 0; name = OCSNG; savedGlobals = { }; showTypeColumn = 0; sourceDirectories = ( ); }; 061EA963130259CA009A0BD6 /* Source Control */ = { isa = PBXSourceControlManager; fallbackIsa = XCSourceControlManager; isSCMEnabled = 0; scmConfiguration = { repositoryNamesForRoots = { "" = ""; }; }; scmType = ""; }; 061EA964130259CA009A0BD6 /* Code sense */ = { isa = PBXCodeSenseManager; indexTemplatePath = ""; }; 0649FB3114D9E191001EC640 /* English */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {889, 578}}"; sepNavSelRange = "{56, 0}"; sepNavVisRange = "{0, 562}"; sepNavWindowFrame = "{{15, 167}, {948, 706}}"; }; }; 0649FB3514D9E1AA001EC640 /* French */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {1103, 299}}"; sepNavSelRange = "{308, 0}"; sepNavVisRange = "{97, 213}"; sepNavWindowFrame = "{{40, 146}, {948, 706}}"; }; }; 0649FB4714D9E57D001EC640 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 089C165DFE840E0CC02AAC07 /* English */; name = "InfoPlist.strings: 1"; rLen = 0; rLoc = 0; rType = 0; vrLen = 0; vrLoc = 0; }; 06709F4613E09D94005F44AE /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 06D657B2134FDBFF00981FE3 /* ocscontact.h */; name = "ocscontact.h: 3"; rLen = 0; rLoc = 29; rType = 0; vrLen = 198; vrLoc = 0; }; 068005F2151BCF55006F95F1 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 29B97316FDCFA39411CA2CEA /* main.m */; name = "main.m: 43"; rLen = 0; rLoc = 1437; rType = 0; vrLen = 232; vrLoc = 1767; }; 068005F3151BCF55006F95F1 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 0649FB3114D9E191001EC640 /* English */; name = "Localizable.strings: 10"; rLen = 0; rLoc = 308; rType = 0; vrLen = 210; vrLoc = 100; }; 068005F4151BCF55006F95F1 /* PlistBookmark */ = { isa = PlistBookmark; fRef = 8D1107310486CEB800E47090 /* Info.plist */; fallbackIsa = PBXBookmark; isK = 0; kPath = ( ); name = "/Users/ocs/work/ocs/dev/beta5/temp/tools/macosx/ocsng_app-xcode/Info.plist"; rLen = 0; rLoc = 9223372036854775807; }; 068005F5151BCF55006F95F1 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 0649FB3514D9E1AA001EC640 /* French */; name = "Localizable.strings: 10"; rLen = 0; rLoc = 308; rType = 0; vrLen = 213; vrLoc = 97; }; 068005F6151BCF55006F95F1 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 06D657B3134FDBFF00981FE3 /* ocscontact.m */; name = "ocscontact.m: 6"; rLen = 0; rLoc = 99; rType = 0; vrLen = 180; vrLoc = 1; }; 06800606151BCFE8006F95F1 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 06D657B3134FDBFF00981FE3 /* ocscontact.m */; name = "ocscontact.m: 6"; rLen = 0; rLoc = 100; rType = 0; vrLen = 181; vrLoc = 1; }; 068D515613DC84ED00211FF5 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 069BD7C713D8D205002A70BE /* AvailabilityMacros.h */; name = "AvailabilityMacros.h: 108"; rLen = 0; rLoc = 5131; rType = 0; vrLen = 450; vrLoc = 4962; }; 068D515813DC84ED00211FF5 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 32CA4F630368D1EE00C91783 /* OCSNG_Prefix.pch */; name = "OCSNG_Prefix.pch: 1"; rLen = 0; rLoc = 0; rType = 0; vrLen = 106; vrLoc = 0; }; 069BD7C713D8D205002A70BE /* AvailabilityMacros.h */ = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AvailabilityMacros.h; path = /Developer/SDKs/MacOSX10.6.sdk/usr/include/AvailabilityMacros.h; sourceTree = ""; }; 06D65785134FD5B800981FE3 /* ocscontact-Info.plist */ = { uiCtxt = { sepNavWindowFrame = "{{15, 167}, {948, 706}}"; }; }; 06D657A6134FD97A00981FE3 /* ocscontact */ = { activeExec = 0; executables = ( 06D657A8134FD97A00981FE3 /* ocscontact */, ); }; 06D657A8134FD97A00981FE3 /* ocscontact */ = { isa = PBXExecutable; activeArgIndices = ( ); argumentStrings = ( ); autoAttachOnCrash = 1; breakpointsEnabled = 0; configStateDict = { }; customDataFormattersEnabled = 1; dataTipCustomDataFormattersEnabled = 1; dataTipShowTypeColumn = 1; dataTipSortType = 0; debuggerPlugin = GDBDebugging; disassemblyDisplayState = 0; dylibVariantSuffix = ""; enableDebugStr = 1; environmentEntries = ( ); executableSystemSymbolLevel = 0; executableUserSymbolLevel = 0; libgmallocEnabled = 0; name = ocscontact; savedGlobals = { }; showTypeColumn = 0; sourceDirectories = ( ); }; 06D657B2134FDBFF00981FE3 /* ocscontact.h */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {890, 662}}"; sepNavSelRange = "{29, 0}"; sepNavVisRange = "{0, 198}"; sepNavVisRect = "{{0, 0}, {910, 675}}"; sepNavWindowFrame = "{{15, 88}, {949, 790}}"; }; }; 06D657B3134FDBFF00981FE3 /* ocscontact.m */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {1103, 533}}"; sepNavSelRange = "{100, 0}"; sepNavVisRange = "{1, 181}"; sepNavVisRect = "{{0, 0}, {910, 675}}"; sepNavWindowFrame = "{{202, 90}, {949, 788}}"; }; }; 06D79C9013DC8D3500E6B017 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 06D79C9113DC8D3500E6B017 /* NSAlert.h */; name = "NSAlert.h: 1"; rLen = 0; rLoc = 0; rType = 0; vrLen = 0; vrLoc = 0; }; 06D79C9113DC8D3500E6B017 /* NSAlert.h */ = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = NSAlert.h; path = /System/Library/Frameworks/AppKit.framework/Headers/NSAlert.h; sourceTree = ""; }; 06F13D9C13DC92FC00509DAF /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = EE2C4E5A0DF1CA5800171780 /* GetPID.h */; name = "GetPID.h: 1"; rLen = 0; rLoc = 0; rType = 0; vrLen = 461; vrLoc = 0; }; 089C165DFE840E0CC02AAC07 /* English */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {1171, 39}}"; sepNavSelRange = "{0, 0}"; sepNavVisRange = "{0, 0}"; sepNavVisRect = "{{0, 0}, {910, 675}}"; sepNavWindowFrame = "{{15, 90}, {949, 788}}"; }; }; 29B97313FDCFA39411CA2CEA /* Project object */ = { activeArchitecturePreference = i386; activeBuildConfigurationName = Release; activeExecutable = 061EA95B130259AB009A0BD6 /* OCSNG */; activeTarget = 8D1107260486CEB800E47090 /* OCSNG */; addToTargets = ( 8D1107260486CEB800E47090 /* OCSNG */, ); codeSenseManager = 061EA964130259CA009A0BD6 /* Code sense */; executables = ( 061EA95B130259AB009A0BD6 /* OCSNG */, 06D657A8134FD97A00981FE3 /* ocscontact */, ); perUserDictionary = { PBXConfiguration.PBXFileTableDataSource3.PBXBookmarksDataSource = { PBXFileTableDataSourceColumnSortingDirectionKey = "-1"; PBXFileTableDataSourceColumnSortingKey = PBXBookmarksDataSource_NameID; PBXFileTableDataSourceColumnWidthsKey = ( 200, 200, 802.58349609375, ); PBXFileTableDataSourceColumnsKey = ( PBXBookmarksDataSource_LocationID, PBXBookmarksDataSource_NameID, PBXBookmarksDataSource_CommentsID, ); }; PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = { PBXFileTableDataSourceColumnSortingDirectionKey = "-1"; PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID; PBXFileTableDataSourceColumnWidthsKey = ( 20, 925, 20, 48, 43, 43, 20, ); PBXFileTableDataSourceColumnsKey = ( PBXFileDataSource_FiletypeID, PBXFileDataSource_Filename_ColumnID, PBXFileDataSource_Built_ColumnID, PBXFileDataSource_ObjectSize_ColumnID, PBXFileDataSource_Errors_ColumnID, PBXFileDataSource_Warnings_ColumnID, PBXFileDataSource_Target_ColumnID, ); }; PBXConfiguration.PBXTargetDataSource.PBXTargetDataSource = { PBXFileTableDataSourceColumnSortingDirectionKey = "-1"; PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID; PBXFileTableDataSourceColumnWidthsKey = ( 20, 885, 60, 20, 48, 43, 43, ); PBXFileTableDataSourceColumnsKey = ( PBXFileDataSource_FiletypeID, PBXFileDataSource_Filename_ColumnID, PBXTargetDataSource_PrimaryAttribute, PBXFileDataSource_Built_ColumnID, PBXFileDataSource_ObjectSize_ColumnID, PBXFileDataSource_Errors_ColumnID, PBXFileDataSource_Warnings_ColumnID, ); }; PBXPerProjectTemplateStateSaveDate = 354143909; PBXWorkspaceStateSaveDate = 354143909; }; perUserProjectItems = { 0649FB4714D9E57D001EC640 /* PBXTextBookmark */ = 0649FB4714D9E57D001EC640 /* PBXTextBookmark */; 06709F4613E09D94005F44AE /* PBXTextBookmark */ = 06709F4613E09D94005F44AE /* PBXTextBookmark */; 068005F2151BCF55006F95F1 /* PBXTextBookmark */ = 068005F2151BCF55006F95F1 /* PBXTextBookmark */; 068005F3151BCF55006F95F1 /* PBXTextBookmark */ = 068005F3151BCF55006F95F1 /* PBXTextBookmark */; 068005F4151BCF55006F95F1 /* PlistBookmark */ = 068005F4151BCF55006F95F1 /* PlistBookmark */; 068005F5151BCF55006F95F1 /* PBXTextBookmark */ = 068005F5151BCF55006F95F1 /* PBXTextBookmark */; 068005F6151BCF55006F95F1 /* PBXTextBookmark */ = 068005F6151BCF55006F95F1 /* PBXTextBookmark */; 06800606151BCFE8006F95F1 /* PBXTextBookmark */ = 06800606151BCFE8006F95F1 /* PBXTextBookmark */; 068D515613DC84ED00211FF5 /* PBXTextBookmark */ = 068D515613DC84ED00211FF5 /* PBXTextBookmark */; 068D515813DC84ED00211FF5 /* PBXTextBookmark */ = 068D515813DC84ED00211FF5 /* PBXTextBookmark */; 06D79C9013DC8D3500E6B017 /* PBXTextBookmark */ = 06D79C9013DC8D3500E6B017 /* PBXTextBookmark */; 06F13D9C13DC92FC00509DAF /* PBXTextBookmark */ = 06F13D9C13DC92FC00509DAF /* PBXTextBookmark */; }; sourceControlManager = 061EA963130259CA009A0BD6 /* Source Control */; userBuildSettings = { OBJROOT = "/Users/ocs/work/ocs/dev/ocsng_app-xcode/build"; SYMROOT = "/Users/ocs/work/ocs/dev/ocsng_app-xcode/build"; }; }; 29B97316FDCFA39411CA2CEA /* main.m */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {1103, 1677}}"; sepNavSelRange = "{1437, 0}"; sepNavVisRange = "{1767, 232}"; sepNavVisRect = "{{0, 1107}, {909, 577}}"; sepNavWindowFrame = "{{227, 127}, {948, 706}}"; }; }; 32CA4F630368D1EE00C91783 /* OCSNG_Prefix.pch */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {1171, 104}}"; sepNavSelRange = "{0, 0}"; sepNavVisRange = "{0, 106}"; sepNavVisRect = "{{0, 0}, {910, 577}}"; sepNavWindowFrame = "{{61, 125}, {949, 706}}"; }; }; 8D1107260486CEB800E47090 /* OCSNG */ = { activeExec = 0; executables = ( 061EA95B130259AB009A0BD6 /* OCSNG */, ); }; 8D1107310486CEB800E47090 /* Info.plist */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {910, 675}}"; sepNavSelRange = "{358, 0}"; sepNavVisRect = "{{0, 0}, {910, 675}}"; sepNavWindowFrame = "{{243, 90}, {949, 788}}"; }; }; EE2C4E590DF1CA5800171780 /* GetPID.c */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {1171, 5174}}"; sepNavSelRange = "{0, 0}"; sepNavVisRange = "{870, 577}"; }; }; EE2C4E5A0DF1CA5800171780 /* GetPID.h */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {1171, 2236}}"; sepNavSelRange = "{0, 0}"; sepNavVisRange = "{0, 461}"; sepNavVisRect = "{{0, 0}, {910, 577}}"; sepNavWindowFrame = "{{38, 146}, {949, 706}}"; }; }; } Ocsinventory-Unix-Agent-2.0.5/tools/macosx/ocsng_app-xcode/main.m010064400017500001750000000077121173606111100244130ustar00guiguiguigui// // OCSINVENTORY-NG // // Copyleft Wes Young (claimid.com/saxjazman9 - Barely3am.com) 2008 // // // This code is open source and may be copied and modified as long as the source // code is always made freely available. // Please refer to the General Public Licence http://www.gnu.org/ // // #import #include #include int main(int argc, char *argv[]) { NSAutoreleasePool *autoreleasepool = [[NSAutoreleasePool alloc] init]; [NSApplication sharedApplication]; int launchOcsAgent = 1; //Getting current user NSString *user = NSUserName() ; if (![user isEqualToString:@"root"]) { //If not launched by Launchd //show icon on Dock if (![[NSUserDefaults standardUserDefaults] boolForKey:@"hideDockIcon"]) { ProcessSerialNumber psn = { 0, kCurrentProcess }; TransformProcessType(&psn, kProcessTransformToForegroundApplication); } NSAlert *askOcsAgentLaunch = [[NSAlert alloc] init]; [askOcsAgentLaunch setMessageText:NSLocalizedString(@"Ask_agent_run", @"First Window question")]; [askOcsAgentLaunch setInformativeText:NSLocalizedString(@"Ask_agent_run_comment", @"First window comment")]; [askOcsAgentLaunch addButtonWithTitle:NSLocalizedString(@"Yes", @"Yes Button")]; [askOcsAgentLaunch addButtonWithTitle:NSLocalizedString(@"No", @"No Button")]; [askOcsAgentLaunch setAlertStyle:NSInformationalAlertStyle]; //Our application become the topmost window [NSApp activateIgnoringOtherApps:YES]; if ([askOcsAgentLaunch runModal] != NSAlertFirstButtonReturn) { // Button 'No' was clicked, we don't launch OCS agent launchOcsAgent = 0; } [askOcsAgentLaunch release]; } if (launchOcsAgent == 1 ) { // Too be on the safe side, I chose the array length to be 10. const int kPIDArrayLength = 10; pid_t myArray[kPIDArrayLength]; unsigned int numberMatches; // simple way of geting our PID, see if we're already running.... int error = GetAllPIDsForProcessName("OCSNG",myArray,kPIDArrayLength,&numberMatches,NULL); if (error == 0) { // Success if (numberMatches > 1) { // There's already a copy of this app running return -1; } } //We launch contact to server using Authorization Services (with asking password) OSStatus myStatus; AuthorizationFlags myFlags = kAuthorizationFlagDefaults; AuthorizationRef myAuthorizationRef; myStatus = AuthorizationCreate(NULL, kAuthorizationEmptyEnvironment,myFlags, &myAuthorizationRef); if (myStatus != errAuthorizationSuccess) return myStatus; do { { AuthorizationItem myItems = {kAuthorizationRightExecute, 0, NULL, 0}; AuthorizationRights myRights = {1, &myItems}; myFlags = kAuthorizationFlagDefaults | kAuthorizationFlagInteractionAllowed | kAuthorizationFlagPreAuthorize | kAuthorizationFlagExtendRights; myStatus = AuthorizationCopyRights (myAuthorizationRef,&myRights, NULL, myFlags, NULL ); } if (myStatus != errAuthorizationSuccess) break; { //We use an helper tool instead of running OCS agent directly NSString *ocscontactPath = [[NSBundle mainBundle] pathForResource:@"ocscontact"ofType:nil]; char *myArguments[] = { "", NULL }; FILE *myCommunicationsPipe = NULL; char myReadBuffer[128]; myFlags = kAuthorizationFlagDefaults; myStatus = AuthorizationExecuteWithPrivileges (myAuthorizationRef, [ocscontactPath UTF8String], kAuthorizationFlagDefaults, myArguments, &myCommunicationsPipe); if (myStatus == errAuthorizationSuccess) for(;;) { int bytesRead = read (fileno (myCommunicationsPipe),myReadBuffer, sizeof (myReadBuffer)); if (bytesRead < 1) break; write (fileno (stdout), myReadBuffer, bytesRead); } } } while (0); AuthorizationFree (myAuthorizationRef, kAuthorizationFlagDefaults); return myStatus; } [autoreleasepool release]; return NSApplicationMain(argc, (const char **) argv); } Ocsinventory-Unix-Agent-2.0.5/tools/macosx/ocsng_app-xcode/ocscontact-Info.plist010064400017500001750000000013511173606111100274100ustar00guiguiguigui CFBundleDevelopmentRegion English CFBundleExecutable ${EXECUTABLE_NAME} CFBundleIdentifier org.ocsinventory-ng.ocscontact CFBundleInfoDictionaryVersion 6.0 CFBundlePackageType APPL CFBundleSignature ???? CFBundleVersion 1.0 NSMainNibFile MainMenu NSPrincipalClass NSApplication Ocsinventory-Unix-Agent-2.0.5/tools/macosx/ocsng_app-xcode/English.lproj004075500017500001750000000000001173606116100257515ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/tools/macosx/ocsng_app-xcode/English.lproj/InfoPlist.strings010064400017500001750000000003721173606111100313440ustar00guiguiguiguiÿþ/* Localized versions of Info.plist keys */ NSHumanReadableCopyright = "Copyleft Barely3am.com - claimid/saxjazman9, 2008";Ocsinventory-Unix-Agent-2.0.5/tools/macosx/ocsng_app-xcode/English.lproj/Localizable.strings010064400017500001750000000010621173606111100316530ustar00guiguiguigui// // OCSINVENTORY-NG // Copyleft Guillaume PROTET 2011 // Web : http://www.ocsinventory-ng.org // // This code is open source and may be copied and modified as long as the source // code is always made freely available. // Please refer to the General Public Licence http://www.gnu.org/ or Licence.txt // // //Yes button "Yes" = "Yes"; //No button "No" = "No"; //First Window question "Ask_agent_run" = "Do you want to launch OCS Inventory NG agent ?"; //First window comment "Ask_agent_run_comment" = "This will take contact with OCS Inventory NG server";Ocsinventory-Unix-Agent-2.0.5/tools/macosx/ocsng_app-xcode/French.lproj004075500017500001750000000000001173606116100255655ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/tools/macosx/ocsng_app-xcode/French.lproj/Localizable.strings010064400017500001750000000010641173606111100314710ustar00guiguiguigui// // OCSINVENTORY-NG // Copyleft Guillaume PROTET 2011 // Web : http://www.ocsinventory-ng.org // // This code is open source and may be copied and modified as long as the source // code is always made freely available. // Please refer to the General Public Licence http://www.gnu.org/ or Licence.txt // // //Yes button "Yes" = "Oui"; //No button "No" = "Non"; //First Window question "Ask_agent_run" = "Voulez-vous lancer l'agent OCS Inventory NG ?"; //First window comment "Ask_agent_run_comment" = "Ceci prendra contact avec le serveur OCS Inventory NG";Ocsinventory-Unix-Agent-2.0.5/tools/macosx/ocsng_app-xcode/GetPID.h010075500017500001750000000207141173606111100245360ustar00guiguiguigui/* File: GetPID.h Description: This file defines a simple API to do process PID lookup based on process name. Author: Chad Jones Copyright: © Copyright 2003 Apple Computer, Inc. All rights reserved. Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Computer, Inc. ("Apple") in consideration of your agreement to the following terms, and your use, installation, modification or redistribution of this Apple software constitutes acceptance of these terms. If you do not agree with these terms, please do not use, install, modify or redistribute this Apple software. In consideration of your agreement to abide by the following terms, and subject to these terms, Apple grants you a personal, non-exclusive license, under AppleÕs copyrights in this original Apple software (the "Apple Software"), to use, reproduce, modify and redistribute the Apple Software, with or without modifications, in source and/or binary forms; provided that if you redistribute the Apple Software in its entirety and without modifications, you must retain this notice and the following text and disclaimers in all such redistributions of the Apple Software. Neither the name, trademarks, service marks or logos of Apple Computer, Inc. may be used to endorse or promote products derived from the Apple Software without specific prior written permission from Apple. Except as expressly stated in this notice, no other rights or licenses, express or implied, are granted by Apple herein, including but not limited to any patent rights that may be infringed by your derivative works or by other works in which the Apple Software may be incorporated. The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE OR IN COMBINATION WITH YOUR PRODUCTS. IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE, REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER UNDER THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN IF APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Change History (most recent first): */ #if !defined(__DTSSampleCode_GetPID__) #define __DTSSampleCode_GetPID__ 1 #include #include #if defined(__cplusplus) extern "C" { #endif // --- Defining constants for use with sample code --- // enum {kSuccess = 0, kCouldNotFindRequestedProcess = -1, kInvalidArgumentsError = -2, kErrorGettingSizeOfBufferRequired = -3, kUnableToAllocateMemoryForBuffer = -4, kPIDBufferOverrunError = -5}; /***************************************************** * GetAllPIDsForProcessName ***************************************************** * Purpose: This functions purpose is to lookup a BSD * process PID given the BSD process name. This function may * potentially return multiple PIDs for a given BSD process name * since several processes can have the same BSD process name. * * Parameters: * ProcessName A constant C-string. On calling * GetAllPIDsForProcessName this variable holds the BSD process name * used to do the process lookup. Note that the process name you need * to pass is the name of the BSD executable process. If trying * to find the PID of an regular OSX application you will need to pass the * name of the actual BSD executable inside an application bundle (rather * than the bundle name itself). In any case as a user you can find the * BSD process name of any process (including OSX applications) by * typing the command "ps -axcocommand,pid" in terminal. * * ArrayOfReturnedPIDs A pointer to a pre-allocated array of pid_t. * On calling GetAllPIDsForProcessName this variable must be a pointer to a * pre-allocated array of pid_t whos length (in number of pid_t entries) is defined * in ArrayOfPIDsLength. On successful return from GetAllPIDsForProcessName * this array will hold the PIDs of all processes which have a matching process * name to that specified in the ProcessName input variable. The number of actual * PIDs entered in the array starting at index zero will be the value returned * in NumberOfMatchesFound. On failed return if the error is a buffer overflow * error then the buffer will be filled to the max with PIDs which matched. * Otherwise on failed return the state of the array will be undefined. * * NumberOfPossiblePIDsInArray A unsigned integer. On calling * GetAllPIDsForProcessName this variable will hold the number of * pre-allocated PID entries which are in the ArrayOfReturnedPIDs for this functions * use. Note this value must have a value greater than zero. * * NumberOfMatchesFound An unsigned integer. On calling GetAllPIDsForProcessName * this variable will point to a pre-allocated unsigned integer. On return from * GetAllPIDsForProcessName this variable will contain the number of PIDs contained in the * ArrayOfReturnedPIDs. On failed return the value of the variable will be undefined. * * SysctlError A pointer to a pre-allocated integer. On failed return, this * variable represents the error returned from the sysctl command. On function * success this variable will have a value specified by the sysctl based on the * error that occurred. On success the variable will have the value zero. * Note this variable can also be NULL in which case the variable is ignored. * * *Function Result* A integer return value. * See result codes listed below. * Result Codes: * 0 Success. A set of process PIDs were found and are located in * ArrayOfReturnedPIDs array. * -1 Could not find a process with a matching process name * (i.e. process not found). * -2 Invalid arguments passed. * -3 Unable to get the size of sysctl buffer required * (consult SysctlError return value for more information) * -4 Unable to allocate memory to store BSD process information * (consult SysctlError return value for more information) * -5 The array passed to hold the returned PIDs is not large enough * to hold all PIDs of process with matching names. * *****************************************************/ int GetAllPIDsForProcessName(const char* ProcessName, pid_t ArrayOfReturnedPIDs[], const unsigned int NumberOfPossiblePIDsInArray, unsigned int* NumberOfMatchesFound, int* SysctlError); //Can be NULL /***************************************************** * GetPIDForProcessName ***************************************************** * Purpose: A convience call for GetAllPIDsForProcessName(). * This function looks up a process PID given a BSD process * name. * * Parameters: * ProcessName A constant C-string. On calling * GetPIDForProcessName this variable holds the BSD process name * used to do the process lookup. Note that the process name you need * to pass is the name of the BSD executable process. If trying * to find the PID of an regular OSX application you will need to pass the * name of the actual BSD executable inside an application bundle (rather * than the bundle name itself). In any case as a user you can find the * BSD process name of any process (including OSX applications) by * typing the command "ps -axcocommand,pid" in terminal. * * *Function Result* A integer return value. * See result codes listed below. * Result Codes: * >=0 Success. The value returned is the PID of the * requested process. * -1 Error getting PID for requested process. This error can * be caused by several things. One is if no such process exists. * Another is if more than one process has the given name. The * Answer is to call GetAllPIDsForProcessName() * for complete error code or to get PIDs if there are multiple * processes with that name. *****************************************************/ int GetPIDForProcessName(const char* ProcessName); #if defined(__cplusplus) } #endif #endifOcsinventory-Unix-Agent-2.0.5/tools/macosx/ocsng_app-xcode/icons004075500017500001750000000000001173606116100243465ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/tools/macosx/ocsng_app-xcode/icons/ocs_logo.icns010064400017500001750000001315171173606111100271070ustar00guiguiguiguiicns³Ois32á°ÿþüþÿýýÿüüƒÿþþÿþýÿÿý†ÿ ûëúÿñïÿííü‚ÿ üÌÎÐãÈ×ÄÓßü€ÿ.ûÿãÔÿجüÿâÉÛææÿÿþÿõÉãÏÔÞæï˽ºïþÿÿþÿðØòðÄÅËÄÓÚÞï€ÿ þþÿÿìçãääãÚÛðÿýúýÿþÿøóÿþƒÿ€ýü€ýþþŠÿþý‡ÿþ”ÿ£ÿþ‰ÿ ýøýÿúúÿùùþ‚ÿþüÿüûþÿûþƒÿ þÿõÓôÿàÜÿØÙùÿþ€ÿ<øŒ‘–À‚£y—²øÿþÿ÷ÿãÿ¬Sùÿ¾ÕÛßþÿüÿ膿”™«¿Ô¥… ëýÿÿýÿÞ¨ßô ¶¢·ÐÒë€ÿ ýýÿÿéîêéëèÐÎìÿ úõûÿýýþýþ÷ðÿþƒÿýþþýþýýþý‚ÿþ„ÿþý‡ÿþ”ÿ°ÿþûþÿüüÿüüƒÿþýÿýýþÿý†ÿ úèùÿîìÿêêü‚ÿ ûÁÄÆÞ½Î¸ÈÖû€ÿ.úÿÝËÿМûÿÛÈæëìÿÿýÿó¾ÝÅËÖàêоÉóþÿÿþÿíÐïð¾¿È¿Ðãæó€ÿþþÿÿëèä€åâäôÿ üúüÿÿþÿþÿúö…ÿ€ýüýý€þŠÿþþ‡ÿþ”ÿs8mk   H”H ~zMz‹EVÿüùàÿüÿøÿz§ÿçùþøùùûîÎôAxÿøÿøÿÿýÿÿûä0‹ÎÏþÿÿÿþÿïÿÅÖÒÔÒØñÿ‘Bh il32Ûÿÿâÿþÿþÿþÿþÿÿþ¬ÿýùûùýÿÿþùûùýÿúùúùüŠÿýý€ÿýþþýÿþƒÿþþ†ÿþÿò¾±½òÿþøÂ±ºêÿϺÁ¹Üÿý†ÿþÿðÂàÃðû¡ºãîŪÒËÇäÿùûý„ÿúÿ®Íÿõÿɺĺÿûüÿ¯Ñÿúÿþýˆÿü¨ñüúüð­¨éýûøÿ鞪Ÿ îõ¿Éøÿþ‚ÿýÿ¦èÿ÷ÿ毰Ûÿúÿÿûÿ©ÏѧÄÜßïÿý€ÿþÿûÿ˦ÿûÿ¥Òá™ùÿúÑñÿ°ôô–»ýÿý…ÿýÿÞ³ŸÃÿÿѲ¢¾ì«œ©—ºÔªÐõÿþ„ÿýÿóâóÿþóöóâäüèÙóé÷ý¼ôÍÀÿü…ÿûþÿÿúÿȯ¼» ¸¯­¯ÇÃÂÃÿÿ·÷ÿþ…ÿýûýþÿððëæßïðéÝúÒè½ÕÉÁÿü…ÿþ€ÿþÿÿýþþÿýý€ÿþÿöÍÔüÿ€ýüü€ýüþûýþÿÿýŽÿþ‡ÿýùúþ‘ÿþÿÿþþ¡ÿþþÿÿÀÿÿÿâÿ€þÿþÿ‚þŠÿþþƒÿþ•ÿûòõòüÿÿýóõóúÿõòôòøŠÿüûÿþÿûüýúÿüƒÿþþ†ÿýÿãlOmãÿþðwOdÒÿ”es`±ÿúÿþ‚ÿþÿüÿß$uºx#Þõ-e¿yJ~?›‡Äÿõûý‚ÿþÿõÿO‘ÿéÿŠh|jÿ÷ùÿWžÿôÿýü†ÿþÿ÷=áøôúßHAÏüöðþÏ'DdmÝó©·õÿþ‚ÿûÿ>ÍÿïÿÈPP°ÿóÿÿüüû~¯ÒÕêÿý€ÿþÿõÿ‹7þõÿ5š¼ ñÿõ˜åÿ˜ößa¨ûÿý…ÿûÿx&S(zÿÿ”$S-kÒ:XJ™ÊÂòÿþ„ÿûÿå¼äÿüñþê½ÐÿåÅéÖïý¦ñ½¬ÿû…ÿöýÿþõÿÉ«¾Ä¥²¯³²Ëƹ®ÿÿŸôÿýƒÿþÿüöüÿÿïñêãÝðïæÜøÐê¥É¸­ÿúÿþƒÿþ€ÿþÿÿüþÿÿýý€ÿþÿô¼Æü‰ÿþ€ÿýý€ü€ýûþûýýÿÿýŽÿþ‡ÿýøøþ‘ÿþÿÿþþ¡ÿþþÿÿÀÿÿÿâÿ€þÿ€þÿÿþ¬ÿýøúøýÿÿþøúøüÿùøø÷ûŠÿýý€ÿýþþüÿþŽÿþÿð°¢°ðÿþ÷¶¢¬æÿŬ´©Õÿü†ÿþÿ튵ڷ‰íùŽ¬Ý·žº™Éþßÿùüþ‚ÿþÿùÿžÂÿóÿ¾¬¸­ÿûüÿ Èÿùÿþýˆÿû—îüùüî—åýú÷þ勚¨­íøÎÖú„ÿýÿ”äÿöÿ០Ôÿøÿÿýþ·ÜÙ¶Ñåçóÿþ€ÿþÿúÿÁ”þúÿ’ÉÛ…øÿùÇðÿÄùï§Íýÿþ…ÿýÿ·‹¤Œ·ÿÿÇŠ£°è–£ž…Åà½Üøÿþ„ÿýÿñÜñÿýóøòÜàýèÖñåöþË÷ÙÏÿý…ÿûþÿÿùÿÈ®¼¼¡·¯®¯ÉÁÉÔÿÿÈùÿþ…ÿýúýþÿððëæßïïèÝùÒèÎÞ×Ðÿü…ÿþ€ÿþÿÿýþþÿýý€ÿþÿøÙÞýÿ€ýüü€ýüþûýþÿÿþŽÿþ‡ÿþûûþ‘ÿþÿÿþþÿÿæÿl8mk   (€˜‚)y™‰4 f}}x†>fýýÿûÿaD÷ýÿÿôâÿüÿöÿ@ÿù÷öõþøõÿõ÷õûÿ÷ôûëÿzªÿöÿýÿýúúüÿþÿþüÿÿþüžU„ƒ%Ñÿúÿýþÿþþÿþþþÿÿþÿüÿðíÿÿî(Äÿúÿþÿþþþþÿÿÿÿþÿÿÿÿýÿéæÿ@ÿïÿþÿÿÿÿÿÿÿÿÿÿÿÿþÿúÿßÀ] ÑÿûÿüýþÿÿÿÿÿÿÿÿÿÿþþÿÿýÜ0£óÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþõÿ¯*4—ÿôþúûûûûûûûùüÿüÿÐ „ÿöÿþÿÿÿÿÿÿÿÿüúðÿ¦<69888887:2XïÿÿÝ ZSit32—ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÆÿþ÷îëîö”ÿûñììñûØÿ åĨ™•“•™¨ÄåŽÿ õÓ´Ÿ–““–Ÿ´Óõ†ÿñÔĉÀ»Ù¹ÿ寊ŒŽ€ŽŒ‰¯åŠÿùÈ™Š‹‹ŠšÇø‚ÿûÅ–‹Šƒ¸¸ÿÇŠŒŠ‹Œ‹ŠŒŠÄý‡ÿè£‰Ž‘Ž‹‹ŒŒŠŠŽ‘Žˆ¢ç€ÿ÷­‡ŽŽ‰…¹¶ÿü¶‰‹‘¨ÃÕÚÕÆª’Šˆ²ù…ÿÝ”‹‘‹œ·ÏÙÙϸ‹‘‹“Úþþ¶ˆ‘Žž‰¤žÈµÿþ¸ˆ‘޳åþƒÿè¶Ž‘ˆ²üƒÿã’‘ŠœÐ÷ƒÿøÒŠ‘Œñá‹‘ÜûŠýþµÿʈ“ÕˆÿÚ–‘ˆÅ‚ÿò™Œ‘гô‡ÿ ô´Š‰ÃýµŠ•êÄÿé“áŠÿæ–Žåÿ´‰‘Џý‰ÿþ¸·ÿý Š¹Åÿ±Š‘ŒÕŒÿÜŽŠ¯€ÿâ‘‹§ûŒÿþÿ÷™Ž‰ËÄÿ鋲Žÿ ¸Šçÿÿ²ŠçÿùœŽŠÅÄÿÉŠåŽÿ ꑉÂÿó–‹¶‘ÿ«‹¤üÃÿ­‹¤þÿ ¬ŒŒ¨ÿÝŒŒÜ‘ÿΉ‘ŒºøÁÿúŽŠ½ÿ ÆŠšýÏŠ–ó‘ÿø¡‹‘‹¡À€ÈÇÄÍÚÞáéöµÿò–ŠÐÿ Ö‹“ñÅŠ¡ü’ÿé—Š‘€Š ‡Œª¢‹€…˜¾Þû„ÿõÈ©¢¶Ý¦ÿï•‹Öÿ ÚŒ’슦ý“ÿé£‰ŠŽŒ—·ƒSNWTNbŸÔù‚ÿ½gNX\RRŠé¤ÿò–ŠÑÿ ׋”ñÅŠ¢ý”ÿúÓ¯Ÿ›Ÿ¹qJz³·°’ZR™Ùþ€ÿ  HyÅéðÙ£Rbá£ÿùŽŠÁÿ ÉŠ™üÏŠ˜ô—ÿûø÷‚J”öÿúòß±bW®íÿÿ¹H›ú‚ÿωè¤ÿ¬‹Œ¨ÿ ±‹Œ¦ÿÜ‹Žß™ÿÍNxø‚ÿ â¦P|Ôÿòc}ý­ÿlj‘êŽÿ 𕉾ÿò•Š»™ÿ™IÀƒÿüÎo`ÀÿÅNήÿ犷Žÿ ÀŠ‘Žâÿÿ°Š“ì˜ÿ€Uà„ÿã„V¸ÿ£\ð¯ÿ®Š‘ØŒÿ ã‘‹ªþÿÿÞŒ‘‹«ü—ÿ}Yä„ÿâˆT¸ÿ™cö¯ÿ厔ãŠÿë™á€ÿþ°‰‘Š»þŠÿÅØ‡ÿ~Yã„ÿƉR¿ÿ«Vè°ÿň‘”؈ÿᚌ‘ˆÁ‚ÿî–‘Šµõ‡ÿù¼ˆÕý…ÿ~YäƒÿÝ¡ŽQÏÿÓM°°ÿü²ˆ‘ŽŽ·é„ÿí¿‘ˆ¯ûƒÿÜ‘ŠŸÕùƒÿ ûÛ¤Š‘‹’îÿþ‚ýþ~Yâý úÖ”ŸQÓÿûUÒ°ÿù±‰Š‘¬ÈÖÚ×ʯ”Šˆ¯ø…ÿ׌‘Œž¼ÒÙÙÒ¿ Œ‘‹’ØþÿÙ €¥¢¹€_¸¤¥¥¦žŒ¢QÒÿÿægS°õ¯ÿüÁŽ‹ŒŠ€ŒŠ‹‹¿û‡ÿãŸ‰Ž‘ŽŠ‹ŒŒ‹ŠŽ‰¡å€ÿφ€‰§{[¬‹€ŽŠIЀÿé‡MgÄæ®ÿᩎ‰ŒŽ€ŽŒŠŽ©àŠÿöÁ—Š‹‹Š˜Ã÷ÿ΄€Š‡£”~®ˆ‚Š•Ë«rÚÿõΊ_PV‚Ì®ÿ â¿¦š”“”š¥¾âŽÿ òЯž–““–ž°Ñôƒÿ㸀»ºÀÔÖȺ€»ÀÓðÿÿý€ÿ óÿÿòÒ£eJð®ÿþ÷íêíöþ“ÿúñëëñúœÿø‚O´ýÿò¥MvðÀÿâ÷•ÿëóÿ¬I¼…ÿÆOŒþ¾ÿþ•ß•ÿŒ¯ÿòa„‡ÿ¨MÕ¿ÿ0Àñÿá~‡îûµüÿÿÀâÿ­y ñÿîˆ|áÿ¤B³ÿë‰wÁÿÿ÷ÊùÀÿÿËäÿÿÊNLJÿî[¡¿ÿ0^ÞòWžŒiýh¯ÿäJî—c¸4˜þg‹ŸYî¶Q¶òX¬Q·ÿ}téâ[þÿxºÿÿ±Uâˆÿt¿ÿ0eäÇtÿÿ\èÕXÿšùVÿ“qöãYÿÿq»ÿ‡·¯}ÿÿÖbö[óÿßcÿÿ€½ÿÿ¬Xèˆÿx{¿ÿ0eåÄ~ÿÿdÞÿw‰\÷ñYtÿÿÝaÿÿz·ÿ€¸®}ÿÿÖbö`îÿã[ÿÿ~½ÿÿ¼PÖ‡ÿúiŽ¿ÿ0]äÁvÿÿ[Üÿܧÿÿ¸†½åXþÿs´ÿy¬òV”±R¶ýVìÿúi«+ÈÿÿàR©‡ÿÔN¶¿ÿ ÂõèËÿÿÁòÿÿ³ó€ÿ"¶}•ðõÀÿÿÊâÿÌÞÿé‹|¿ÿû¿øÿÿ\Àÿÿþƒ\é†ÿ[ëéÿšÈ€ÿÜTzð„ÿ£G²êÿüþÿ ÂOkÆøÿÿüÙ‡G›þñÿ ÍjKh‚…qQW®ôÿô»‰qo«äøÿýüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÂÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÆÿýëØÑØëþ“ÿõàÓÓàõØÿ Äx>  >{ÆŽÿ èW&  &Wè†ÿß x‰li¦¹ÿÃL†MÊÿðƒ‡ƒð‚ÿô}Œ\·ÿþ‚Š|ù‡ÿË2‹2É€ÿíIŽ`¶ÿ÷^âÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿêKÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿo=ìÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿòLœÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿo'åÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿí1ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿoÂÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿëüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿouÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿoëÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿoÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿu Øÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷Ψ¥°²²µQFÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýä¥L1x¥»¿²•Wÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ´$:³øÿÿÿÿÿÿÿÞx ²ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿâCvøÿÿÿÿÿÿÿÿÿÿÿÊ,Ñÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûÿÿÿÿÿÿÿÿÿÿÿÿÿÿã1äÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÝêÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‹åÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÇÔÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÆ·ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ†ˆÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÓMÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿœaîÿÿÿÿÿÅ!àÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿa.Âúÿöš‹ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùµpHMI&&óÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûÐy†ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿê{Ñÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ»6ðÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÑS÷ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÁ Uïÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿz:ÓÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿêŽõÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿl2›èÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ°YÇâðôôôôôôôôôôôòúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÕ$$$$$$$$$$$ žÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿæÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿéÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿßÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÇÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ”ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿH‘ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÆ”ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþG-SPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPMpûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‰hýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿž]ëÿÿÿÿÿÿÿÿÿÿÿÿÿ-®ýÿÿÿÿÿÿÿÿÿÊP=ŽÈåêééÓ£T ic08' jP ‡ ftypjp2 jp2 Ojp2hihdrcolr"cdefjp2cÿOÿQ2ÿR ÿ\ PXX`XX`XX`XXXPPXÿdKakadu-v5.2.1ÿ &1ÿ“ÏÀ¸ççȹý•‚wšŠ[m |ùm£àο[÷B\’òC)æ,Á´¸—Þ®I>ŸzP¸ÔÃêKCH>‘g1L ®ÃêK_ýÕ/iŒó„oÇÖÓÏÀÌP:¦:\nŠ'Ï‚¸@n]hÚ“aU.ÇŸ0G~ØiZ/BŲgK3¥Øç ú:íWcæ*ÁõCíõ€J¹srQ¯Œið—"Á!!Í)ý§9Ï$H›r«¸\{XãÛ$=$LJÃP´ô²'ÀùÇAõÀúƒ@KetOíØHæ± Xg)AXè“ad"ö—XÈ…JÃÊ¥MLõrwQX"fÁõÁõ@úƒ€KSÊçw!X B'ÆL Q#öŒ©®ª îO•}þ‘$áƒýC¢t[:‡:4ÃíÀb´dTêÅëš«ê³ügؽÁ+òì¬9·5£#õ)‚Upzýñ[ê8Qúj…ûêéô)7ur;!•_y/Ø{,`\ 60ÂÃí$À¢85e`q*;¬‹ô<•Ìå7hÐWC6õÜjæÜÙËzëfG„$E¼© qC‘v:ÑpN³ÉPx,ä$ñ†“,âþð}œ‚»ård“¢€Nk]5Út×M¢z»¶Ôû~Õ¼}ÀwÙ÷4›O ›¾²Ö'ý*ÁõCí!‡àH€|Ù?°|TПú—šÕUXÏ?÷J4ASéÒÌA•xOŒÆÒ%•܂ӿ•§·åôÒÌU<Èòü¼îhɘƒÙMzïÈ¡ò6ÖDŠ2'ù*R—ý%Bnµ 3¡éq‹ÚzÏwAæµ0X^å4“Q—a2Se›ÔNìáb3-c¬"ßã:Ð÷dÃ^³pxŸ¬+ü×S*éQö¼tª—[¿ÇБåŽi ¢—»Ä’.ÄCõ×½z‹«½­Ì=Ò, ×jHæ8 /Kªù]×¾Št@«5ƒ§•¯QLšnoãP±VU–ñu]©oƒ]Ó’0 @QÍÏq$Á­ãʸzXæ‚ÇàŸ‚¤?@Æâ!ÚY—ƒˆ ´uÃtÊžÖ”ãPá×f/C±ùS‡a>AXFyÁù"7û–åâÑMLà*Û»ê+–Å?LPõÂÁ鮺‹Q|TÇIae"KéðŸ­à = Û“± ‡¼‚½ X—ryøß¯ãÿR³S-·Úð ÕÌžV›¹ù§s=üMQú ñ1^§ÅÏéu´ë‘?ά(—¹$È cX}œl –PlZ·pég/ü[#§Rœƒ£è±†AÁ>ìšß[È,ƒ¥hƒ¥âL¤sªr™Óyþvý6ÑÕ»‚“!{eßû­RØúiÇà¡‚Œ?@ÆâÆ'Ô®äÇ&jèôSÚ”|Ó=<ñi¨\ˆ 98—l´°ºB72vµô¬ÎOSëЇPáª1=«ÏØ×pcI:¨åmeDÒÇIX£ÙM|4—y#²`µ<Öø×À`‹ìÞ))»6%UPŠCòïɤíaš€˜!1aì»D˜iÿ~ÿ)–\ÎÚ)´R@Ÿm Ÿ‚¹ Xk`žÈ$A¤YnNœwUÄ –õðn3  ~ ãô‡Ö© oCI•ɈFE>'ó¶*ể¾« @7öÏ3×£Ö‚îí@ÔÂÄ´Ó!{—é½¢ì?ÇೃT?pÆ—X —±k›}²“eÎE!Sy,éäF䦗Š´$êîôFÞÜ´\‡F—¸VvidFÌ•Bhézï¯A°qÛу–y+ !nm*À'í•?ȲÊ ®Í0.ïÇb}iZ«ž½†ßäÿvP-ußð乩K"íÐ_ ™ C …"Ó7Dý†ŒWã<0 Öð2™Ó}ÞVnƒ±dk°‰½†ã0›ó@}8’ËÔ®™m?\6zÕ`¤ô‰¬¢Ñ!H=š4OƵ” 0¿=ïß]!Óu’ ºÈ)Àh~ëoF¬ësoÚ R©Ìœ7qbÅ?{µWgýó ¿^Úo?ÕH¿O®J¨¨{ÎÈvaôÎ ’ûýCJAô›óØÇázGá{ÏÎøð‰î1÷ØÓ$!ûß|4qÒó+ý+ìgñ£jO‰lŠ)i £M }Ï'¥,Yéž ùúïöÈ€Œ.ZãÜ¿À«©/Ìâæ’•úI49wË; À|ߣ´09“f–¨Ò9ø¹îÄÆ*4F {Àï‘‹ÒY° ˜ØË ¿YÍYÆè/‘yÍy†M5À)¡fífå«Ârô°þ•.Aî*Ì-ûK³þ[¹UVCââyžøp¥·aÐÂû­(Í“quR‰¾­ûï›*߸Ì}.LÉ[ì}SÖÒñ`ÕÑžÎÖöÍ”ÇÎ;aRÏ"3lÇ¥_ïlG¤–`êUñÍ=¦|.ß™‹v Љ(B¹4fYi&?Ø ©!Çá^Ãí±áö×ÀðŠïŒßil‘U‡>Ø+¨&÷øcÛטW8ósí]ÆJ¬ù fý‰mÐèúFÜørÚí¥}sŸ2©/™áÛlæ x Ò#*5À?7¿¾Jžé-Ô= èÈ kž™gƲ3ùE±ÏzgÊNCŠƒm¡[ U‡  bå O–„Iô”§Ø·fß|:äcqªù @ÃcN¿Êš[”]C.,¯×ôW6†‚G&]×Ï’[D3·Z3›y†­û]%xò$©‹íp3ÍslS´èÆ8i‡r´5›MiéU&&,…üüÁ’³í/=ª~SX½AÞUôìŸÛc>%Ñ_²•ϱãgËF¨EŒ¸ê*ŸHP«`-ñO¶}œ_%æ †‰>躤£‹u¼sa\žÁ3 ÝÙf_×øÛÿ6+†zôs¶Ç˜xl˜4_P‘OzE”†V&WG|—ߎ0C8RÌ¡,ò„W/‹ÀÁ)9àWñWÓW²Œt‰„ûIƒ2Š”i»?Ä­û~ˆG¯c9-ðs%kú§ó‰Ë3à‘£ìØÑùs¯pÏÁDÛ~¤âj8Í9Ϩ-½î)£äÛ(¸ª£ž`Ð-J®%Æiçm«»ã‰8^ñœpZƒ (¨eˆ—?Ã]jå¶Ü¬›…FŠ@Wôã1ÜŸuÀoyf(Á`òBé&ÊD[=Ù’1JÜÿ-Q‰§q~ÀÜ&2sM'NÛ[[‘¯†‚+EÊÕÙžJgѯj(TL!\|ú$QК(ì˜^_Û¸…GÞiÔ÷Çá^Cí±aöØðˆh'ªmÀl¶Û=T®Ä³¥-Á6˜Š‰(QihHô žÁª³ÖVOÊúY?øÜq Ä•( ¹þ]™ÏE¶›dj|¤°å#¦Ìá3¦;¥2=1 C@ï¹À.>çôo]ÀÈES-´ þÀ6I…}b£åq¨gäPÖ«ÃæyàtIî'½ß¿#­® [<Ïg»æŸõ“èÿ”uÃå¤qº@ßZF#&ÇáQÇá^ÇáOðd À±ì?¹PÑ,D0FÊ} ÄU5~8Ö‚C5>¿»ƒîGBše?‘t(k9_Yßȹ: ˜™£S?>Eãò#I!ÚTƒ-#C…Lë{³Sž2‰÷i¹òònšlDBdKòÒ>aån~ªÊ8#?d·™ºç­q»¯ß(Ø}˜,HjâJ<Ë a´~–Q*6o>”«\1 *µ ‹÷CÁTôþíuµ0ð蓬Þ>i¸°DR%q:ùÏ›ÌXÆ)=øˆ‘Q ÓÁ›å†3Ä „Õ\(·žpprp,™9=„mŒf(ômõøc¦¤ªÊVÍ ¦ ÿTÂÊ™#õßµí°«#€ië ¤I¨ßÙˆ²T>©a#­:pÖ1Cïê4ÝÀ¡Ïum \§"€¤,,ä N¨þÙ›u¥÷x7*¹UÈ8é‹aäKIÈ8c£§ B¯Ÿ²†¥ÑFê7í=Fb¯®Ödmì%õmU%.‡Qðu]Xë ˰Dè€2ÇúyÜ{¤d`lÕ"ÜΦÙuìô Ô FlF¤ ÜFçúÿ +—žxõpõ¦´K×Þ‰>Ó:E¦A*ƒ¥{$Ù8âžÁŒQh °©Êö*“'£B¨6MkW©"Špè¶€ç³õ½—ìØ×I‹Ó?]öK=' ó ÓQÒ•.…¾åöÓÚùü…‹—ÛJÿ/}®¿ÂÅÅöÒWÚñü…`ø6%'ø ±;X–Xœñ4L›Döäsy®é®¹ÓI«Žw÷túû‡D¨.Xèûƒ+þÕÉké¢ÄŠYhvŽÅ*–÷ª=W•‹R{C ÷í¿Îê keºÉ/ÒOˆJ;žgl‡¶6Q†IbxT™KËÍÌ<ø¥¹Xê¿õísþ6Ææ'È5†‹]†Ç®Ä­£ï+®¬ï»¨X@÷'æ’M&è«YÔ Jõo>F[ K‰ tZŸ·=ÕµUDüªNc†ÛO964¯ª„Í»½%ÛÃÈ!dgR¼þ×#ŽDÙvå–Fsn.f8ù@_±›ÄRó ˆ13«ä³ÏêþdAÆŸ†ü¶$.H#›‚:ÞsæÌ±óä¯ ½÷Ë´¦ðæaú#¬I]ãó:ýNfúbNéZ‹Y寺l ËIÚ}1€à—=õxáPó\‚>å5˜+‚€·¿”Ñ•zZ$ÿ8ù^•?-$¤Õ†:âbHßòëo|ö:-ÝŽœ…S Rù×îWz¹çàèºá§ƒ §ó9XÌ~ŠÂ6ö·SßaüU`¶!ôâÇÚPëgI3&yCT 7ѵƒÇ§¾† I ÷| w‡ƒ*É{qÈh9¸ ÈRc²gב •†“îÜl?Éþ ƒGLåîæ\‚|Æ a'õɇO±ëÚ4µ@M‚(ÇLì‰Bã|è›fØ=%µYùçËH¶×òÈZnÙ‹¦0,Äþ ¼ÍÞ~’’¯ŒÁšÊ»ÁÜ@ Ç ã{ÿc¦‡ˆÞ@÷^ýÙuÇ‚(åÞ–˜ f?B^«÷¹s6“¸N /ÃÅg%ª!WEaߌ1ñÏV%ž˜Áo¸É({¶Åm(Zz¾€Þ<IöÓÂSqyM²œ¡)Avº¤^Yáö}“wJq±×yÕ¾í°»Á™Ã«\^~é¥ÖD/ÍYº†m°Ý8øt«>ÙÝZ­XîҸ` B¦Ã4ùT*Œôœl®cød¾¶P)—[šsöšMa´Þçì:Õºl#©Z¹³†XõãxTÕ6N@»ðþ‡ 64f æð›Áåt™³S»¹&pת½xEÝPÙù—æ.*Ï*Íîp:7í† 6 `œïÂçô×Ãë³ÿ3r§lEÔíe¡"Yâ^6è®+wÂBw,øµ|yO~§öOAÀ,N;tؽšà'û0äɬ½!&ˆ pÒ¶3òÿAÂÖ¤{¥/ÅT¢:KgÀ›€Ë»}/QPž¼þŒ‰÷‚bÍ4‚çÛ‡±XÞ½MÔIÂÖ ¬ø0»¥qµÐ‹xC&ÙúɧdÒ–åɈ>Ô£17NtæéÊûîFTkc⪾EUÑ!g؃>,V¸½Ûÿ' Ï 4Ñw—ÆÑ/ÜýãÜ«WçÚ HŒdùÅ7+v/ùJå'!t¦@{fµïü´ÿ;k¦š¡l’È°Ž—˜]Ÿð°Ô Üh·G•@Et\Vñ”•Y£aH†Ñ€|®µáÕÌÖ.üáÛk¡ ˆ«Gˆ8ãq¹‡$G•ùU ‘S ÇÉØVº¬ékƒEÓçTxœè–à‰ä'ÀÔ o"ø8Ñdæ{Ôs™­kÁ­›{²è7D§n4 •cÈ‘íMr±]™ #ÿ'›Äð” 1ÏÖ£ñ}ÒÚ?ú fÅhÄŒz:$òÛœé¿ÞÖp_ò°\ʃ†éU˜Í,*We£Ã:×4ÙÏ‘ó3š¶•k1Ç;ŽNÌ:7ÁøíaáÚ¦Y³Õ76‘Ìy“i¡„íIô¬Ghê#[ì­]$vްÿ¹â[à£.á m² é}ÆÓ‘z#Øíþü'•È߉¼^îˆY•o¶\QîÜ8ÉÀJjê¥Çà‡?$!{n#WS»@×âú¨»êk¾¤Úå‹ê¡ÿ6¾¤ÚñƒõP©·õ ~¦pø5âKþ鑦æÈ,4`Ypl†çbçBŽNo”E²ºÂ«Øˆy2@§0¤„© áLQø_=é§dì¯i(gLB–<÷Wù°ýMÀÁupˆÉÅM`Ä…ùt CY)Gœt‡ SÞªI§  ¬•œb3Êîrˆ$f:ÃÐ lv+pw®–H~äþ´ÔT÷'…d3Dç–|ÆÁc3\\Œga¦90ˆ>+91›-[qL{™k·ªU)vˆ­3·å%ƒÈS€èaL±™ï™"L‡¬ãRìñûl ¯P榕YÅNr×)_y?2ÉV ÛÄàGá—·kóæ¹3ÅÁà‹ÎGi€ål Ññ¾Õg;.¼AIŒùÝšëv)ö˜é{Iˆ˜rH,¦3_<·ÎT n³u'yýŠƒ¾#ÍãCî&œ¨—22gŠ)s•QÎû¾#aœ¤¿ ÀqÞ·ÓäÏ °ñ”¨×fµßJ}ÁTªöl:Ägך’^MÆk"Rˆš™¶š0ƒT 5ÐhƒUXç䯑‚Z“Ê›RU]¡º]~“ø¾¡böí÷±ÆŸQ s£"GùZ@ºÕܨO·< Op„v$O…:Mzkt+>³üÂõ ,ÀÙZáuqóË77Dlußû<'Ú{éq’µßl>‘d2;—dñP•6D5êÙR S?Z¦°l/Ö ÇækÜd±ªÆòï="oÂø¡wýâ"3‹c}øÛ¢6µÃødé¶Ð)—t-C|u¡HJ «4 9òz‹æ Ï:åî;‘]¨Id°+ i‹áJçZÃbü!0ÅÒ"6f]î4 ·;Ë`©öÅkµ¼ºeÞ¸ö (¾FjûB!'"²áW°äˆ8AºÁrôà:hžlR¢@ÕùS™‡”ñíf&WvÐ]õÖžÓTbÅÖ›fÍ4 ?]Í,ð°äðjT +ÙîB±Ó ºã"¦6³»ug$æË¤Ñ¼Ê0Ül‡j·}⪾EUÑ!«R6µÎO YpÏp;y$®oÒaw°o¦JY—þhyËVÉ»•6P—2ñþNŠÔÇel¼È‹98# 1_¦øÁ5WÀˆ*Ký^^è÷'éf(ÄçgÇÁü¢¯(éÔ iJÀKtJ-¾_·ËüÑ÷ñ¤„¬•ØC˜®zö…èÍÃDœUÍN<õÿ6éAy›éˆøŒÄ·#ìl^:‘›u< /ï›Ij%ç¦éÆ‹+a /L6):ÑÂ[ÀE 3/ØÇ/4·Íäá²jaPöd›iŸ¿ñÆú=Ú,¡ÇÁ°Ã}ÌŠ…G"Î(+Ÿâ ç^öñ0ñ9²¶GxZQ”Á±­ªÇåZí*-5ÞûÜNKRšgý; 4L'¯“ñ>3Úâˆè{¡5ÿÇÎñìp© .pR|fƒñÿ*™:7ö*•=&‹Qþ£9Áï1n³Pyvß— ñ×¾Ç{™G.\vIþÒuÙ"Õ¿d?}6µÖ™´Ïsú}CŒR1xR^ä³ €æ‡p*$ÐVÙ ukòÍYúßTËÉÜ©pA¦VûÒŠÚ"dû&ñ’gæUôx ´Âs÷_­wÜR:0¯È®„ç“nšë|°ÖóÛEÉÿL@LæwÕýG€q–äZ‡¤ê¨¶ãT&È$¿:)%ÅPŒþ%rOZy¦èÂui”[âú¨ïÚÕ}H×ÔӇꢿUú’¿SnÕCþ¦¿Ô‰ú—€ø6Xàk”Ú¥t›oû™9Aò½læÝ+wzHXoÏ~SmÁ$™˜¾õL¸RôM`?E@Gî§Û’Àc‚O׸íC&ÔœÄ%T³¤wl’ ¿ÿ TÜÛÛ)˜™ø¢6ì‘ó& 'é*pwÈ©$ÐL¼´%z¤¥zthMÿ³È+ËØÆz¢– ÁÛ¤:;<ßįޘ#JF¾KvŸÇåÑHT=ÝÁÛ!‘ÜÄ:§"Kî3úšnlà+åÝ?@Ú‘Ó]TIûF÷²²E\ºò˜;âLGaœÔÝnûya8ô !3Ô¨³µá7ñvé+ð} gKÕU?‘Á·“SãˆØ{v˜zÛø¯W‰Î‡-ŒC’` ,fn‘I+g&®+fû yŒˆÂ:ë_Í«,<ã©P'g újè³9°KÂd–K9\4h=_".uå›’Ä8©Þöå6Й9ždg‰Èfþå\i¯)Ók‡…UxbÈ8º{à&Ähþf·PCßBà3Ä@P™ª YÞÇŸgí"ZM,xôý׌vcXß3 ˜Ì<6Ð{TyÞ˶@mïÁ¨0ÜÙtÄVoˆêZ~Ï\ÁØœ•~ûÄﱩ¥ÃȘÐí̹Á¹êš"÷ˆ^Kgœ °.&7±ª8$¨V3É4¸Ûy¬‚²Z¿3/ÐàH£¬P­5$¹Á¯ìïk™ÿMùPkEáüUÈŠQ“òJk™³£ɱø—ìÊd(ZÔE±TŸ¶Íu÷•?U,P)˜Z‡Ð•LdñÚ÷^A]ÊÈÍûzJyö"{ØÃnà`p4• Ðo I¨·ŠsÎ{‡qÚHÂÕc Tƹp A5UY÷±¿¬Jnd«,Ÿéî#‚|{ÔéÙtœTZù³]1jZG̼”B†dASðÛ¾•cMUÞaVù… RjÂp³¡k~‘®>:ƒ'„³·øø·ùõ÷?ÒÀùCË(—…{NN; ;K†==ƈ8–ó,oígTPÂ\šÑG€avDpu ¤ýå'sÞöñ)СPÐHCÖôˆÍgPØ4°·kf€¾y¼(àwk1ìtÏ3ššdš°ì‰ÙEwÇfõ1+š„,Ïq[שÐc@‚V|Á«½ 4üØ,ãsæé)¾Ñ„Ie{m ë¾EÐP§úï´½Öø~¾óßðâýÕ…J>pK„½À»v,ã”}.´fy²°x_W‡Ü+«ÜãÁd‰Êýü¿ÌÌ×–îž¡‚›¥ H“ÌéSÆöÙ’¨ÍÏû÷Ö_þÁ=RÂgR%ݱ 8R_ûàᔂ 4z? —à_ù²Kƒ ¥ãœPý%žR>ŽÒ‚( q.…ò9Åq­¸J¹Ç¢r÷(/Èòò;Cü}{é¬ÅHØ|Rr^ô“ÓÍ.öš0 ‰Þ–‡t­Å ·©œa»-ùe?$ñ“'#%>7:öRK£”^d}É·O7Â(ÞÄìÑ»Ÿç厀r vò¡["b q\‚¾ZÆ‹Ïo‘ÿ;òÛ;øf'UU¿G7¶Yª’Ÿœˆ ¶üçÕ-™uÂ`\×O„ÞÃȼÜ{? ]Œ!ÿ*)`ý‰?GæÞz‡ï7~¼tCNÇsðqœßá`1‘HM¾ØEh,)&úÓshø~¦yQ_"õš¼-X‘ËŸ2‚wFÆ—[¸îÄ^Û{q!R˲ Í,w,Œh&±í²\× 9˜ƒÞ¯ ðš6>Hâ¡Q Îø¯¢öþcF¢ûÆXb+Œ®¡õ–s\TfM`´/S¸RoÖCüMÙUM? ÖëâLAÂn/8Ü Õºû ¥€küNÚëdï.‹‰eJLƒ”㋜UÈ|#ˆí”²¼®ék®}oûÈGTDê’ ußïDchyR΃>¥Ž“Š ˜‡ .Z²íõ¥žëg9÷Ô!Â{¥)oº{RhGˆëÜd’ Ç«ì7Æù½@à_ÿÙic09(² jP ‡ ftypjp2 jp2 Ojp2hihdrcolr"cdefjp2cÿOÿQ2ÿR ÿ\ PXX`XX`XX`XXXPPXÿdKakadu-v5.2.1ÿ 'Åÿ“ÏÁÿ>[‹š»ËÕ¾IqëvþBæà¾ HK!Š1=åÖ¡n6#Í(q,¿MÃB|ºÇXoÈg!°_£Ãê“í]ÇÛ*5<‡¼‘Ãê“ôæÀئÀy«yûG¡~ÏÁPTªé7ÈP*ðû/w·æ…Êø#cvc[š?ðȇ´ëm¯]d!›…Bˆü1B¨ ì~ÓV{ðu³±ÂzÏR“©ÁõÃíõ“ÊÝpñµ`xŸ-´Ø„l@é-19¾oEL,f dƒ.õ²4Ê#²[²Ä”Õ5ÀùÇÁõÀúƒ@“õÝ\3A¤Ò> 6Ç4ô„#ì€å)ØA …Qö¶ ³“ÌÚ@<ò‡ŠÛÌ{ÁõAõÀúƒ€“ñªÏOÈi‰êŸ@6ɃOò¢ý‚‡ºeh QF8‚ý“¹Ù wã¡ë¾»¿ÃíÀf´`•çÔ¢_Ô´&ïgœyèêó^ÒÈÙŒ5у"¨ï’ІsR\¹ nŽ8±îÀh„"•ÿ× BSY&–q RÉöo#„ágÃí%À¢0Ç©íÔÂùQÝ?ñFŸ0ÀUírÎgg[Ç€CÆ›s¥quÔm™È{š†ž,E‡™ŠÕ\¢çc§›l„= ";ÖFn&e¥gaФå1#²Ç­c\~õšvØ6ܧfÇì£e÷%Ó¶;4#íˆàΕB8B%ÜSOiÐÃí2Àʈǭ–`XÞÃÐJ¹#ö”Á¤ ÛÍæ.fz¯¯Ú¿yª’Í€'^vÁ¹6ZÃ9]Õ°È=„rð&ô:¬$íÓs¹âçì]ëãEî$;–„!(sÇÅuR¬Qßÿ"Kƒ0€«Ç³çC¿#‹ÜÃàë‚l :^ \Üÿ–+­(¦ ËæÎ«È ÐƒÊ7?©´L^Ï͆?h~ `ð†_ûõT±XÒ'zÃ’u&]øŠ"HaÛJ¨Ð˜ÁªŠÌ–±¡O¢%ÄkÊgqðÔ®¨ljF2qí/ý.øƒ¯Ö÷è\%®;q!M/œYy7l4Ëw@íɶ60·ÿ!t|§ìô4 ð68ç¸É3»¹\µ‘"Œ‰þIR ’D£Ww—½œ8£  ÝóÅ‹'ª4ˆ€¬›,Øö êÉX7þ>\1: mùþÈ Ô/_§å˜ƒÀ<ý[ÇYÅK2éQö¼tª—[¿ð–ÄIì™´*UØÔ r$‹±ýuï^@c¹måÃ}l‡9|5#¬™qýкù]×¾ˆuW°Í˜ê›N¢˜ ‹Wûœ]V*Ëxº®Ô†šcúEÔäŸÌ?~½¬ãʸzXæ‚{Çࣂ¬?Pð†µüõT±XÎ Ub½XÇWðê™HêÏü%‡?Y)¯Bÿ/0¾ŸÞW¾=tøüŒ s4ca:xB}â4 ‡QX|¶)”ã» €ç‰&ºê.AEñNðÅèjÏŠ÷òúX³²›= Û“± êB‚½ X—ryøág¯ãÿR³S-·Ü,P Ô˜"°ÄüÓ¹žþ[K'x˜€¯Sâçâx‹k¿»}XQ.3rHð£ëQÏl¤à@>ºrâ³—þ-‘Ïë@ÑåŽþw“¾VìÌ$¡ç ØIµ“ìp‘d¼Ð6ÅhDô·úm£«s·†7ß7a¾ëAÔ¶>™ÇࣂŒ?`ð†µˆ‘§-î™ =œÏ—ÿ u*uCþ%†žÚÞÒœ ˆæjØMp]§Aå¦r€/–zB±ÃTb{W  (=ƒÁé¶¿²¢ ¿çðÁ88ç¸Êgz¿^Hì— EHdà%ܽüâQ"rlJ#×ò#Üe߇IÍ* ëbr£Rl»D˜i—¯üf?;h¦ÑH¨| ~ ä%` ­‚ð¢ö‚ȸÄävW‚­øŠQ½œ{Ø´ä_¨':,3ÇÔ€ è—`±“>ó” üíª<·Üÿw¡hþÙæh!àÊ¥‰ç¸«ˆeú…åØU*¿ÔÞ¯èÇà·ƒL?ð¼qz-‚möÉnyæS —O¦±ØÇ?ŒÄ9?omè&-žÛ–ë›Þ7 àžY³*)–¦µ[Ø8íèÀ™×„´V…·6•`С$á™lpx ®Í0.ïð‰F'ÓJC1$Ü=VŸ±ÝPi™É¡3P_pqhd<ßZö.U7a¿CMoò\6*{CQ‹Ùf¢÷~ñßÂ×òß×ÑE´5 ³Š­»ÇåC1Glµ¹²€ó³^!•êµ¢™ÃÍ«ðƒìü9[`×D(÷×HAÁënÞ°Mcãc:ówÏ>„?•¿£Ëyy¡j’R³üñl5f^•³¬¾ªEú}a/wÔJì‡fLàËû(yo¤ýæüöãø"Ëí4þ XþßÁûL‚nOµü¿™­ø&€ø“íÀª7¾«z2ò1@«ÏV~<½÷ßÝÛ]?A“ª<uœT*$TËGÀ<]ϰՖƤƒ„85|ñÍüä2µ,Ò0øQå@¡ ÿõRº‚òí#`­‡ÆÖó¶kljÔ÷G!ϨXóF~h‰¶ªgQî2¿šdKõ:ó¶b1·¾¢³ñ273žv¬-MUA¹ˆE¡‚=tY#1Õœjü "1*¢‹@`î]ôþCþÇ6Á¾¤Ùø‡HãC­§¼±3Õ­ÀŒ¢w·wá¡£v“¹ý¯ã´ŸJÖ÷ÞMl 6[ íÞ§¢7*Oj5jçJ`¹ŸÄ0¡ÐuR¤zøE­nkãZ¿³+¾€c„éÒV)96˜¿Ae–_¨+ÚÚS‚{ØÞM(2ëc(É_ú’¼;е¬tÒl˜»ü 5fŒJø*µµ°vY‘Î1TöËd[Q}ÒÂѹlÁœR"w>È‘ƒ{¸Zá3zø= ½¥1‰“™æÊNx`¹X ³h^„£ŸˆI‹)ÕÖRaXdò?†Ã´6Sé/ªÀ±ÊËNXíûŽ.òÅyÂÑsÊa޲B(eáT äÒÒê¤m—¼Ø¤<„ƒçE.Æà]ˆ4Üíã•"t"ºÈÒBO]Ú–>b©¼ïó?éã×ÛÍM•X“3ï(lÜ ¼ÜÀ»‡(¬VøCˆ:MÜ…ªçí«£Å•;L¶^³IÕñ²ŸéøßLjʂ„b_B=F—ó”:<+Ú—¨Å±&ºjÆãOh´w6ÌÅ0øYþ»AªJªñ66DËÄÇe©tKÒÀ}± ?¦ž'Ù!\Ÿ7ITHm;@T&pàð:²ƒ·0'4:Œá þ…½ƒÌ¬ƒ ?#Gv…ab´œ6E$&NST—HûCÂÝx ü—å¢&ÜLdá<² ò&1z©šÆ •xʃÊp•¥SL0ÈWá} ˜ïHUºÔþœ_ªa>¨Øt”Ëé Mî .&&R|èKa!‹pÜ©8ÄËõeÇ +ˆù%ļÑyAÎãøßi­ö’ßi¾´÷ö þÒOÚo‡íAý§wÔAûLÀø”eÙ)ñDqs­é·wÚ· ¸†ë>¾¯#ã8ÔþÇ÷Eè•ͧÈw%y5‡€2¿\1lð¦òûë,wøPÁJJ–Iˆé·ÍÀÕäé½vÝéÇ.eç<YsA#ÊK^À•²v± sSàËe '¢ÔŒ·š®s4úWɯå’c󃑑dmÒV„€,0Ùô"*ˆoÀX6¼¤Ùø«vñ‰-1k Íui»:ÿ{©•ØNæ€Ó–<íÈ 3¯g1Þ«z!îœgxeÕe²øEß<¾ç‚ ŸûÚL†²¿pž¦Ç<á>Ÿm»Ã*s9hl"/­;Å9®f)™\€(‘ÛD®¸æãJXuz5ø@1ί©Eyè¢È‰¸uòbr"t¯¡ ¢•q†³éú šçAɹ_2ÚQ]Æ‘žŸ5ûO&2Æ©X‰ê´œìtE¥ÀˆÓ`ÈlŸ¹ ÁTêXA)opOw@ŸÿL²+ <¸øÇq“²*9:+RcSC¬Ö–³¿;Ò*Áõ— ºP—ÉpóX*Ç5W²§ Pþ8ST_¶çøŽaT_w[UW^ÒÕYÇø(ê+sÚ뉌HÙ¼b`‚ òy!›fÚ`3iknºÎÝkÎ!Æ•èõÉã1ÛrH¥š,Ý¢1øQfŸºÃ|K^–ÃÛq!€óº·‹sRÜ‚Œ!Ž4cù7¼KÉlÈEî¼ZÐALµæÅÙ¡Å Ú©Pù±é¾6ar:‡¶|/– 2n¢Ô‰ØÜ3¼xÍ"?mѱâVãÖJ‰/ (i•x g¹ %UòÏÒ“ºàŽÂ|ÊÖùÉCÎ jŸ$*¨élpIÊ5è©ù,“ÒH„õÇ+&UÙâ—²õÉQEac½a¡—ƯÙÁPI'8 2)ÆÖ±6x½f W{Ç$2æ>àøTÐsn–¼…õ}ǘaxÐú›‡óÁÇýö]Íë –OɸQó`aˆƒGïm »<³õÿO€ÎwàgåD¢†—°ük=GGcnôÙÅPJª"¸(|Ϋ¤âƒu”z2¦xP54n›—r~7¬ ™R‰˜p¥Ðò‰¥/˜” ¹3ôç1)žîn\“¨ãøßi¥ö¼à{ü ÿ@ÓÀÓøàPøŠÇ;b‰¿ÅöqÆiLݧ¬ÇR+E&y,Y:ûdÎÈÓ˜ú´À™úR ¬ÆýA÷ª `[n’¡b2š‡MÌQ Xþè6à“Y´dŠQ$åRRÊH‘Ñ·ïXˆÄ“(âXýÓ€w§`l,øFUC݈üñ©¤ž˜z˜~­¯f l|T‰¥Ë­°bhÎ ²é¼GVhE–ÇÉóôpÝnôyDø ä±YŒ9GAè›èaÊÄQ!j±ô‡K B¡±±]øìsƒ0 ¡`Hå‘íàk Ž£8Œ<2/AI¿ZÛéÑŒlw‚³Aö¡à=øBVeÖ3‰<ƒhkÅüÛÝõ&:κRƒ ŸÒÔ¸:+€U½RüP.Iç™jŠ¥éˆøW«07uÎ|ÐkY?N±e;>—ôûŽG¾Qõ!’_ò‹Êvä?#¼=#ÄÆÅr­¡ÆÌ†¡ñ}€—£sq®FŽ*Vë¯|ŸˆÀuÿ™µ€cm‰¸™TÏæú3²ÿQVòç0‚—œ’ÀŠ×‹F¯¸Ò´rÐäKöÓí|_àûÿŠ ‰~ÚWü)u~×_øX È‹öÒWíx_àãÿ`ø6%'ø ±;X–Xœñ4L›Döäsy®é®¹ÓI«Žw÷túû‡D¨.Xèûƒ+þÕÉké¢ÄŠYhvŽÅ*–÷ª=W•‹R{C ÷í¿Îê keºÉ/ÒOˆJ;žgl‡¶6Q†IbxT™KËÍÌ<ø¥¹Xê¿õísþ6Ææ'È5†‹]†Ç®Ä­£ï+®¬ï»¨X@÷'æ’M&è«YÔ Jõo>F[ K‰ tZŸ·=ÕµUDüªNc†ÛO964¯ª„Í»½%ÛÃÈ!dgR¼þ×#ŽDÙvå–Fsn.f8ù@_±›ÄRó ˆ13«ä³ÏêþdAÆŸ†ü¶$.H#›‚:ÞsæÌ±óä¯ ½÷Ë´¦ðæaú#¬I]ãó:ýNfúbNéZ‹Y寺l ËIÚ}1€à—=õxáPó\‚>å5˜+‚€·¿”Ñ•zZ$ÿ8ù^•?-$¤Õ†:âbHßòëo|ö:-ÝŽœ…S Rù×îWz¹çàèºá§ƒ §ó9XÌ~ŠÂ6ö·SßaüU`¶!ôâÇÚPëgI3&yCT 7ѵƒÇ§¾† I ÷| w‡ƒ*É{qÈh9¸ ÈRc²gב •†“îÜl?Éþ ƒGLåîæ\‚|Æ a'õɇO±ëÚ4µ@M‚(ÇLì‰Bã|è›fØ=%µYùçËH¶×òÈZnÙ‹¦0,Äþ ¼ÍÞ~’’¯ŒÁšÊ»ÁÜ@ Ç ã{ÿc¦‡ˆÞ@÷^ýÙuÇ‚(åÞ–˜ f?B^«÷¹s6“¸N /ÃÅg%ª!WEaߌ1ñÏV%ž˜Áo¸É({¶Åm(Zz¾€Þ<IöÓÂSqyM²œ¡)Avº¤^Yáö}“wJq±×yÕ¾í°»Á™Ã«\^~é¥ÖD/ÍYº†m°Ý8øt«>ÙÝZ­XîҸ` B¦Ã4ùT*Œôœl®cød¾¶P)—[šsöšMa´Þçì:Õºl#©Z¹³†XõãxTÕ6N@»ðþ‡ 64f æð›Áåt™³S»¹&pת½xEÝPÙù—æ.*Ï*Íîp:7í† 6 `œïÂçô×Ãë³ÿ3r§lEÔíe¡"Yâ^6è®+wÂBw,øµ|yO~§öOAÀ,N;tؽšà'û0äɬ½!&ˆ pÒ¶3òÿAÂÖ¤{¥/ÅT¢:KgÀ›€Ë»}/QPž¼þŒ‰÷‚bÍ4‚çÛ‡±XÞ½MÔIÂÖ ¬ø0»¥qµÐ‹xC&ÙúɧdÒ–åɈ>Ô£17NtæéÊûîFTkc⪾EUÑ!g؃>,V¸½Ûÿ' Ï 4Ñw—ÆÑ/ÜýãÜ«WçÚ HŒdùÅ7+v/ùJå'!t¦@{fµïü´ÿ;k¦š¡l’È°Ž—˜]Ÿð°Ô Üh·G•@Et\Vñ”•Y£aH†Ñ€|®µáÕÌÖ.üáÛk¡ ˆ«Gˆ8ãq¹‡$G•ùU ‘S ÇÉØVº¬ékƒEÓçTxœè–à‰ä'ÀÔ o"ø8Ñdæ{Ôs™­kÁ­›{²è7D§n4 •cÈ‘íMr±]™ #ÿ'›Äð” 1ÏÖ£ñ}ÒÚ?ú fÅhÄŒz:$òÛœé¿ÞÖp_ò°\ʃ†éU˜Í,*We£Ã:×4ÙÏ‘ó3š¶•k1Ç;ŽNÌ:7ÁøíaáÚ¦Y³Õ76‘Ìy“i¡„íIô¬Ghê#[ì­]$vްÿ¹â[à£.á m² é}ÆÓ‘z#Øíþü'•È߉¼^îˆY•o¶\QîÜ8ÉÀJjê¥Çà‡?$!{n#WS»@×äEú¨»õ5«õ$µÈ~ªûh~¤ö¼"ê ÿTÚ¿©ýLàø5âKþ鑦æÈ,4`Ypl†çbçBŽNo”E²ºÂ«Øˆy2@§0¤„© áLQø_=é§dì¯i(gLB–<÷Wù°ýMÀÁupˆÉÅM`Ä…ùt CY)Gœt‡ SÞªI§  ¬•œb3Êîrˆ$f:ÃÐ lv+pw®–H~äþ´ÔT÷'…d3Dç–|ÆÁc3\\Œga¦90ˆ>+91›-[qL{™k·ªU)vˆ­3·å%ƒÈS€èaL±™ï™"L‡¬ãRìñûl ¯P榕YÅNr×)_y?2ÉV ÛÄàGá—·kóæ¹3ÅÁà‹ÎGi€ål Ññ¾Õg;.¼AIŒùÝšëv)ö˜é{Iˆ˜rH,¦3_<·ÎT n³u'yýŠƒ¾#ÍãCî&œ¨—22gŠ)s•QÎû¾#aœ¤¿ ÀqÞ·ÓäÏ °ñ”¨×fµßJ}ÁTªöl:Ägך’^MÆk"Rˆš™¶š0ƒT 5ÐhƒUXç䯑‚Z“Ê›RU]¡º]~“ø¾¡böí÷±ÆŸQ s£"GùZ@ºÕܨO·< Op„v$O…:Mzkt+>³üÂõ ,ÀÙZáuqóË77Dlußû<'Ú{éq’µßl>‘d2;—dñP•6D5êÙR S?Z¦°l/Ö ÇækÜd±ªÆòï="oÂø¡wýâ"3‹c}øÛ¢6µÃødé¶Ð)—t-C|u¡HJ «4 9òz‹æ Ï:åî;‘]¨Id°+ i‹áJçZÃbü!0ÅÒ"6f]î4 ·;Ë`©öÅkµ¼ºeÞ¸ö (¾FjûB!'"²áW°äˆ8AºÁrôà:hžlR¢@ÕùS™‡”ñíf&WvÐ]õÖžÓTbÅÖ›fÍ4 ?]Í,ð°äðjT +ÙîB±Ó ºã"¦6³»ug$æË¤Ñ¼Ê0Ül‡j·}⪾EUÑ!«R6µÎO YpÏp;y$®oÒaw°o¦JY—þhyËVÉ»•6P—2ñþNŠÔÇel¼È‹98# 1_¦øÁ5WÀˆ*Ký^^è÷'éf(ÄçgÇÁü¢¯(éÔ iJÀKtJ-¾_·ËüÑ÷ñ¤„¬•ØC˜®zö…èÍÃDœUÍN<õÿ6éAy›éˆøŒÄ·#ìl^:‘›u< /ï›Ij%ç¦éÆ‹+a /L6):ÑÂ[ÀE 3/ØÇ/4·Íäá²jaPöd›iŸ¿ñÆú=Ú,¡ÇÁ°Ã}ÌŠ…G"Î(+Ÿâ ç^öñ0ñ9²¶GxZQ”Á±­ªÇåZí*-5ÞûÜNKRšgý; 4L'¯“ñ>3Úâˆè{¡5ÿÇÎñìp© .pR|fƒñÿ*™:7ö*•=&‹Qþ£9Áï1n³Pyvß— ñ×¾Ç{™G.\vIþÒuÙ"Õ¿d?}6µÖ™´Ïsú}CŒR1xR^ä³ €æ‡p*$ÐVÙ ukòÍYúßTËÉÜ©pA¦VûÒŠÚ"dû&ñ’gæUôx ´Âs÷_­wÜR:0¯È®„ç“nšë|°ÖóÛEÉÿL@LæwÕýG€q–äZ‡¤ê¨¶ãT&È$¿:)%ÅPŒþ%rOZy¦èÂui”[äEú¨ïíjWêFß©¤þª+ú¨ýI_êmDÕCÿ)­R'ú—€ø6Xàk”Ú¥t›oû™9Aò½læÝ+wzHXoÏ~SmÁ$™˜¾õL¸RôM`?E@Gî§Û’Àc‚O׸íC&ÔœÄ%T³¤wl’ ¿ÿ TÜÛÛ)˜™ø¢6ì‘ó& 'é*pwÈ©$ÐL¼´%z¤¥zthMÿ³È+ËØÆz¢– ÁÛ¤:;<ßįޘ#JF¾KvŸÇåÑHT=ÝÁÛ!‘ÜÄ:§"Kî3úšnlà+åÝ?@Ú‘Ó]TIûF÷²²E\ºò˜;âLGaœÔÝnûya8ô !3Ô¨³µá7ñvé+ð} gKÕU?‘Á·“SãˆØ{v˜zÛø¯W‰Î‡-ŒC’` ,fn‘I+g&®+fû yŒˆÂ:ë_Í«,<ã©P'g újè³9°KÂd–K9\4h=_".uå›’Ä8©Þöå6Й9ždg‰Èfþå\i¯)Ók‡…UxbÈ8º{à&Ähþf·PCßBà3Ä@P™ª YÞÇŸgí"ZM,xôý׌vcXß3 ˜Ì<6Ð{TyÞ˶@mïÁ¨0ÜÙtÄVoˆêZ~Ï\ÁØœ•~ûÄﱩ¥ÃȘÐí̹Á¹êš"÷ˆ^Kgœ °.&7±ª8$¨V3É4¸Ûy¬‚²Z¿3/ÐàH£¬P­5$¹Á¯ìïk™ÿMùPkEáüUÈŠQ“òJk™³£ɱø—ìÊd(ZÔE±TŸ¶Íu÷•?U,P)˜Z‡Ð•LdñÚ÷^A]ÊÈÍûzJyö"{ØÃnà`p4• Ðo I¨·ŠsÎ{‡qÚHÂÕc Tƹp A5UY÷±¿¬Jnd«,Ÿéî#‚|{ÔéÙtœTZù³]1jZG̼”B†dASðÛ¾•cMUÞaVù… RjÂp³¡k~‘®>:ƒ'„³·øø·ùõ÷?ÒÀùCË(—…{NN; ;K†==ƈ8–ó,oígTPÂ\šÑG€avDpu ¤ýå'sÞöñ)СPÐHCÖôˆÍgPØ4°·kf€¾y¼(àwk1ìtÏ3ššdš°ì‰ÙEwÇfõ1+š„,Ïq[שÐc@‚V|Á«½ 4üØ,ãsæé)¾Ñ„Ie{m ë¾EÐP§úï´½Öø~¾óßðâýÕ…J>pK„½À»v,ã”}.´fy²°x_W‡Ü+«ÜãÁd‰Êýü¿ÌÌ×–îž¡‚›¥ H“ÌéSÆöÙ’¨ÍÏû÷Ö_þÁ=RÂgR%ݱ 8R_ûàᔂ 4z? —à_ù²Kƒ ¥ãœPý%žR>ŽÒ‚( q.…ò9Åq­¸J¹Ç¢r÷(/Èòò;Cü}{é¬ÅHØ|Rr^ô“ÓÍ.öš0 ‰Þ–‡t­Å ·©œa»-ùe?$ñ“'#%>7:öRK£”^d}É·O7Â(ÞÄìÑ»Ÿç厀r vò¡["b q\‚¾ZÆ‹Ïo‘ÿ;òÛ;øf'UU¿G7¶Yª’Ÿœˆ ¶üçÕ-™uÂ`\×O„ÞÃȼÜ{? ]Œ!ÿ*)`ý‰?GæÞz‡ï7~¼tCNÇsðqœßá`1‘HM¾ØEh,)&úÓshø~¦yQ_"õš¼-X‘ËŸ2‚wFÆ—[¸îÄ^Û{q!R˲ Í,w,Œh&±í²\× 9˜ƒÞ¯ ðš6>Hâ¡Q Îø¯¢öþcF¢ûÆXb+Œ®¡õ–s\TfM`´/S¸RoÖCüMÙUM? ÖëâLAÂn/8Ü Õºû ¥€küNÚëdï.‹‰eJLƒ”㋜UÈ|#ˆí”²¼®ék®}oûÈGTDê’ ußïDchyR΃>¥Ž“Š ˜‡ .Z²íõ¥žëg9÷Ô!Â{¥)oº{RhGˆëÜd’ Ç«ì7Æù½@à_ÿÙicnV BþffOcsinventory-Unix-Agent-2.0.5/tools/macosx/ocsng_app-xcode/GetPID.c010075500017500001750000000512761173606111100245400ustar00guiguiguigui/* File: GetPID.c Description: This file provides a simple API to do process PID lookup based on process name. Author: Chad Jones Copyright: © Copyright 2003 Apple Computer, Inc. All rights reserved. Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Computer, Inc. ("Apple") in consideration of your agreement to the following terms, and your use, installation, modification or redistribution of this Apple software constitutes acceptance of these terms. If you do not agree with these terms, please do not use, install, modify or redistribute this Apple software. In consideration of your agreement to abide by the following terms, and subject to these terms, Apple grants you a personal, non-exclusive license, under Apple’s copyrights in this original Apple software (the "Apple Software"), to use, reproduce, modify and redistribute the Apple Software, with or without modifications, in source and/or binary forms; provided that if you redistribute the Apple Software in its entirety and without modifications, you must retain this notice and the following text and disclaimers in all such redistributions of the Apple Software. Neither the name, trademarks, service marks or logos of Apple Computer, Inc. may be used to endorse or promote products derived from the Apple Software without specific prior written permission from Apple. Except as expressly stated in this notice, no other rights or licenses, express or implied, are granted by Apple herein, including but not limited to any patent rights that may be infringed by your derivative works or by other works in which the Apple Software may be incorporated. The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE OR IN COMBINATION WITH YOUR PRODUCTS. IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE, REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER UNDER THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN IF APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Change History (most recent first): */ #include "GetPID.h" #include #include #include /***************************************************** * GetAllPIDsForProcessName ***************************************************** * Purpose: This functions purpose is to lookup a BSD * process PID given the BSD process name. This function may * potentially return multiple PIDs for a given BSD process name * since several processes can have the same BSD process name. * * Parameters: * ProcessName A constant C-string. On calling * GetAllPIDsForProcessName this variable holds the BSD process name * used to do the process lookup. Note that the process name you need * to pass is the name of the BSD executable process. If trying * to find the PID of an regular OSX application you will need to pass the * name of the actual BSD executable inside an application bundle (rather * than the bundle name itself). In any case as a user you can find the * BSD process name of any process (including OSX applications) by * typing the command "ps -axcocommand,pid" in terminal. * * ArrayOfReturnedPIDs A pointer to a pre-allocated array of pid_t. * On calling GetAllPIDsForProcessName this variable must be a pointer to a * pre-allocated array of pid_t whos length (in number of pid_t entries) is defined * in ArrayOfPIDsLength. On successful return from GetAllPIDsForProcessName * this array will hold the PIDs of all processes which have a matching process * name to that specified in the ProcessName input variable. The number of actual * PIDs entered in the array starting at index zero will be the value returned * in NumberOfMatchesFound. On failed return if the error is a buffer overflow * error then the buffer will be filled to the max with PIDs which matched. * Otherwise on failed return the state of the array will be undefined. Note * the returned PID array is not sorted and is listed in order of process encountered. * * NumberOfPossiblePIDsInArray A unsigned integer. On calling * GetAllPIDsForProcessName this variable will hold the number of * pre-allocated PID entries which are in the ArrayOfReturnedPIDs for this functions * use. Note this value must have a value greater than zero. * * NumberOfMatchesFound An unsigned integer. On calling GetAllPIDsForProcessName * this variable will point to a pre-allocated unsigned integer. On return from * GetAllPIDsForProcessName this variable will contain the number of PIDs contained in the * ArrayOfReturnedPIDs. On failed return the value of the variable will be undefined. * * SysctlError A pointer to a pre-allocated integer. On failed return, this * variable represents the error returned from the sysctl command. On function * success this variable will have a value specified by the sysctl based on the * error that occurred. On success the variable will have the value zero. * Note this variable can also be NULL in which case the variable is ignored. * * *Function Result* A integer return value. * See result codes listed below. * Result Codes: * 0 Success. A set of process PIDs were found and are located in * ArrayOfReturnedPIDs array. * -1 Could not find a process with a matching process name * (i.e. process not found). * -2 Invalid arguments passed. * -3 Unable to get the size of sysctl buffer required * (consult SysctlError return value for more information) * -4 Unable to allocate memory to store BSD process information * (consult SysctlError return value for more information) * -5 The array passed to hold the returned PIDs is not large enough * to hold all PIDs of process with matching names. * *****************************************************/ int GetAllPIDsForProcessName(const char* ProcessName, pid_t ArrayOfReturnedPIDs[], const unsigned int NumberOfPossiblePIDsInArray, unsigned int* NumberOfMatchesFound, int* SysctlError) { // --- Defining local variables for this function and initializing all to zero --- // int mib[6] = {0,0,0,0,0,0}; //used for sysctl call. int SuccessfullyGotProcessInformation; size_t sizeOfBufferRequired = 0; //set to zero to start with. int error = 0; long NumberOfRunningProcesses = 0; unsigned int Counter = 0; struct kinfo_proc* BSDProcessInformationStructure = NULL; pid_t CurrentExaminedProcessPID = 0; char* CurrentExaminedProcessName = NULL; // --- Checking input arguments for validity --- // if (ProcessName == NULL) //need valid process name { return(kInvalidArgumentsError); } if (ArrayOfReturnedPIDs == NULL) //need an actual array { return(kInvalidArgumentsError); } if (NumberOfPossiblePIDsInArray <= 0) { //length of the array must be larger than zero. return(kInvalidArgumentsError); } if (NumberOfMatchesFound == NULL) //need an integer for return. { return(kInvalidArgumentsError); } //--- Setting return values to known values --- // //initalizing PID array so all values are zero memset(ArrayOfReturnedPIDs, 0, NumberOfPossiblePIDsInArray * sizeof(pid_t)); *NumberOfMatchesFound = 0; //no matches found yet if (SysctlError != NULL) //only set sysctlError if it is present { *SysctlError = 0; } //--- Getting list of process information for all processes --- // /* Setting up the mib (Management Information Base) which is an array of integers where each * integer specifies how the data will be gathered. Here we are setting the MIB * block to lookup the information on all the BSD processes on the system. Also note that * every regular application has a recognized BSD process accociated with it. We pass * CTL_KERN, KERN_PROC, KERN_PROC_ALL to sysctl as the MIB to get back a BSD structure with * all BSD process information for all processes in it (including BSD process names) */ mib[0] = CTL_KERN; mib[1] = KERN_PROC; mib[2] = KERN_PROC_ALL; /* Here we have a loop set up where we keep calling sysctl until we finally get an unrecoverable error * (and we return) or we finally get a succesful result. Note with how dynamic the process list can * be you can expect to have a failure here and there since the process list can change between * getting the size of buffer required and the actually filling that buffer. */ SuccessfullyGotProcessInformation = FALSE; while (SuccessfullyGotProcessInformation == FALSE) { /* Now that we have the MIB for looking up process information we will pass it to sysctl to get the * information we want on BSD processes. However, before we do this we must know the size of the buffer to * allocate to accomidate the return value. We can get the size of the data to allocate also using the * sysctl command. In this case we call sysctl with the proper arguments but specify no return buffer * specified (null buffer). This is a special case which causes sysctl to return the size of buffer required. * * First Argument: The MIB which is really just an array of integers. Each integer is a constant * representing what information to gather from the system. Check out the man page to know what * constants sysctl will work with. Here of course we pass our MIB block which was passed to us. * Second Argument: The number of constants in the MIB (array of integers). In this case there are three. * Third Argument: The output buffer where the return value from sysctl will be stored. In this case * we don't want anything return yet since we don't yet know the size of buffer needed. Thus we will * pass null for the buffer to begin with. * Forth Argument: The size of the output buffer required. Since the buffer itself is null we can just * get the buffer size needed back from this call. * Fifth Argument: The new value we want the system data to have. Here we don't want to set any system * information we only want to gather it. Thus, we pass null as the buffer so sysctl knows that * we have no desire to set the value. * Sixth Argument: The length of the buffer containing new information (argument five). In this case * argument five was null since we didn't want to set the system value. Thus, the size of the buffer * is zero or NULL. * Return Value: a return value indicating success or failure. Actually, sysctl will either return * zero on no error and -1 on error. The errno UNIX variable will be set on error. */ error = sysctl(mib, 3, NULL, &sizeOfBufferRequired, NULL, 0); /* If an error occurred then return the accociated error. The error itself actually is stored in the UNIX * errno variable. We can access the errno value using the errno global variable. We will return the * errno value as the sysctlError return value from this function. */ if (error != 0) { if (SysctlError != NULL) { *SysctlError = errno; //we only set this variable if the pre-allocated variable is given } return(kErrorGettingSizeOfBufferRequired); } /* Now we successful obtained the size of the buffer required for the sysctl call. This is stored in the * SizeOfBufferRequired variable. We will malloc a buffer of that size to hold the sysctl result. */ BSDProcessInformationStructure = (struct kinfo_proc*) malloc(sizeOfBufferRequired); if (BSDProcessInformationStructure == NULL) { if (SysctlError != NULL) { *SysctlError = ENOMEM; //we only set this variable if the pre-allocated variable is given } return(kUnableToAllocateMemoryForBuffer); //unrecoverable error (no memory available) so give up } /* Now we have the buffer of the correct size to hold the result we can now call sysctl * and get the process information. * * First Argument: The MIB for gathering information on running BSD processes. The MIB is really * just an array of integers. Each integer is a constant representing what information to * gather from the system. Check out the man page to know what constants sysctl will work with. * Second Argument: The number of constants in the MIB (array of integers). In this case there are three. * Third Argument: The output buffer where the return value from sysctl will be stored. This is the buffer * which we allocated specifically for this purpose. * Forth Argument: The size of the output buffer (argument three). In this case its the size of the * buffer we already allocated. * Fifth Argument: The buffer containing the value to set the system value to. In this case we don't * want to set any system information we only want to gather it. Thus, we pass null as the buffer * so sysctl knows that we have no desire to set the value. * Sixth Argument: The length of the buffer containing new information (argument five). In this case * argument five was null since we didn't want to set the system value. Thus, the size of the buffer * is zero or NULL. * Return Value: a return value indicating success or failure. Actually, sysctl will either return * zero on no error and -1 on error. The errno UNIX variable will be set on error. */ error = sysctl(mib, 3, BSDProcessInformationStructure, &sizeOfBufferRequired, NULL, 0); //Here we successfully got the process information. Thus set the variable to end this sysctl calling loop if (error == 0) { SuccessfullyGotProcessInformation = TRUE; } else { /* failed getting process information we will try again next time around the loop. Note this is caused * by the fact the process list changed between getting the size of the buffer and actually filling * the buffer (something which will happen from time to time since the process list is dynamic). * Anyways, the attempted sysctl call failed. We will now begin again by freeing up the allocated * buffer and starting again at the beginning of the loop. */ free(BSDProcessInformationStructure); } }//end while loop // --- Going through process list looking for processes with matching names --- // /* Now that we have the BSD structure describing the running processes we will parse it for the desired * process name. First we will the number of running processes. We can determine * the number of processes running because there is a kinfo_proc structure for each process. */ NumberOfRunningProcesses = sizeOfBufferRequired / sizeof(struct kinfo_proc); /* Now we will go through each process description checking to see if the process name matches that * passed to us. The BSDProcessInformationStructure has an array of kinfo_procs. Each kinfo_proc has * an extern_proc accociated with it in the kp_proc attribute. Each extern_proc (kp_proc) has the process name * of the process accociated with it in the p_comm attribute and the PID of that process in the p_pid attibute. * We test the process name by compairing the process name passed to us with the value in the p_comm value. * Note we limit the compairison to MAXCOMLEN which is the maximum length of a BSD process name which is used * by the system. */ for (Counter = 0 ; Counter < NumberOfRunningProcesses ; Counter++) { //Getting PID of process we are examining CurrentExaminedProcessPID = BSDProcessInformationStructure[Counter].kp_proc.p_pid; //Getting name of process we are examining CurrentExaminedProcessName = BSDProcessInformationStructure[Counter].kp_proc.p_comm; if ((CurrentExaminedProcessPID > 0) //Valid PID && ((strncmp(CurrentExaminedProcessName, ProcessName, MAXCOMLEN) == 0))) //name matches { // --- Got a match add it to the array if possible --- // if ((*NumberOfMatchesFound + 1) > NumberOfPossiblePIDsInArray) { //if we overran the array buffer passed we release the allocated buffer give an error. free(BSDProcessInformationStructure); return(kPIDBufferOverrunError); } //adding the value to the array. ArrayOfReturnedPIDs[*NumberOfMatchesFound] = CurrentExaminedProcessPID; //incrementing our number of matches found. *NumberOfMatchesFound = *NumberOfMatchesFound + 1; } }//end looking through process list free(BSDProcessInformationStructure); //done with allocated buffer so release. if (*NumberOfMatchesFound == 0) { //didn't find any matches return error. return(kCouldNotFindRequestedProcess); } else { //found matches return success. return(kSuccess); } } /***************************************************** * GetPIDForProcessName ***************************************************** * Purpose: A convience call for GetAllPIDsForProcessName(). * This function looks up a process PID given a BSD process * name. * * Parameters: * ProcessName A constant C-string. On calling * GetPIDForProcessName this variable holds the BSD process name * used to do the process lookup. Note that the process name you need * to pass is the name of the BSD executable process. If trying * to find the PID of an regular OSX application you will need to pass the * name of the actual BSD executable inside an application bundle (rather * than the bundle name itself). In any case as a user you can find the * BSD process name of any process (including OSX applications) by * typing the command "ps -axcocommand,pid" in terminal. * * *Function Result* A integer return value. * See result codes listed below. * Result Codes: * >0 Success. The value returned is the PID of the * matching process. * -1 Error getting PID for requested process. This error can * be caused by several things. One is if no such process exists. * Another is if more than one process has the given name. The * thing to do here is to call GetAllPIDsForProcessName() * for complete error code or to get PIDs if there are multiple * processes with that name. *****************************************************/ int GetPIDForProcessName(const char* ProcessName) { pid_t PIDArray[1] = {0}; int Error = 0; unsigned int NumberOfMatches = 0; /* Here we are calling the function GetAllPIDsForProcessName which wil give us the PIDs * of the process name we pass. Of course here we are hoping for a single PID return. * First Argument: The BSD process name of the process we want to lookup. In this case the * the process name passed to us. * Second Argument: A preallocated array of pid_t. This is where the PIDs of matching processes * will be placed on return. We pass the array we just allocated which is length one. * Third Argument: The number of pid_t entries located in the array of pid_t (argument 2). In this * case our array has one pid_t entry so pass one. * Forth Argument: On return this will hold the number of PIDs placed into the * pid_t array (array passed in argument 2). * Fifth Argument: Passing NULL to ignore this argument. * Return Value: An error indicating success (zero result) or failure (non-zero). * */ Error = GetAllPIDsForProcessName(ProcessName, PIDArray, 1, &NumberOfMatches, NULL); if ((Error == 0) && (NumberOfMatches == 1))//success! { return((int) PIDArray[0]); //return the one PID we found. } else { return(-1); } } Ocsinventory-Unix-Agent-2.0.5/tools/macosx/ocsng_app-xcode/Info.plist010064400017500001750000000013711173606111100252540ustar00guiguiguigui CFBundleDevelopmentRegion English CFBundleExecutable ${EXECUTABLE_NAME} CFBundleIconFile ocs_logo CFBundleIdentifier org.ocsng.agent CFBundleInfoDictionaryVersion 6.0 CFBundleName ${PRODUCT_NAME} CFBundlePackageType APPL CFBundleSignature OCNG CFBundleVersion 2.0_beta4 LSUIElement Ocsinventory-Unix-Agent-2.0.5/tools/macosx/ocsng_app-xcode/ocscontact.h010064400017500001750000000005741173606111100256210ustar00guiguiguigui// // OCSINVENTORY-NG // Copyleft Guillaume PROTET 2011 // Web : http://www.ocsinventory-ng.org // // This code is open source and may be copied and modified as long as the source // code is always made freely available. // Please refer to the General Public Licence http://www.gnu.org/ or Licence.txt // // #import @interface ocscontact : NSObject { } @end Ocsinventory-Unix-Agent-2.0.5/tools/macosx/scripts004075500017500001750000000000001173606116100216515ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/tools/macosx/scripts/create-darwin-perl-lib_fromCPAN.pl010064400017500001750000000145271173606111100302040ustar00guiguiguigui#!/usr/bin/perl -w # # COPYRIGHT: # # This software is Copyright (c) 2008 claimid.com/saxjazman9 # # (Except where explicitly superseded by other copyright notices) # # Special thanks to Jesse over a best practical for the framework # from which this script is has been created # # LICENSE: # # This work is made available to you under the terms of Version 2 of # the GNU General Public License. A copy of that license should have # been provided with this software, but in any event can be snarfed # from www.gnu.org. # # This work is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA # 02110-1301 or visit their web page on the internet at # http://www.gnu.org/licenses/old-licenses/gpl-2.0.html. # # # This is just a basic script that checks to make sure that all # the modules needed by OCS MacOSX agent before you can compile it. # # You have to install LWP in your system to use this script # # WARNING: Before executing this script please modify your ~/.cpan/CPAN/MyConfig.pm file as follows: # $> perl -MCPAN -e shell # cpan> o conf makepl_arg 'LIB=~/darwin-perl-lib PREFIX=--perl-only' # cpan> o conf commit # cpan> quit # # This will set the CPAN shell up to install the modules in this script to ~/darwin-perl-lib # it will also cause the man pages and other misc perl stuff to not be installed... we only need the modules anyway # # After this script is done, you will take the ~/darwin-perl-lib and move it to the source code directory for # compiling your application # # Once the script has completed and you are confident you have everything, you can reverse the changes to your # MyConfig.pm by: # # # $> perl -MCPAN -e shell # cpan> o conf makepl_arg '' # cpan> o conf commit # cpan> quit # # # THIS IS A BETA SCRIPT! USE AT YOUR OWN RISK # use strict; use warnings; use Getopt::Long; use CPAN; use LWP::Simple qw/getstore/; my $libwww_tarball = "G/GA/GAAS/libwww-perl-5.837.tar.gz"; my $xmlentities_tarball = "S/SI/SIXTEASE/XML-Entities-1.0000.tar.gz"; my $cryptssleay_tarball = "N/NA/NANIS/Crypt-SSLeay-0.58.tar.gz"; my $netssleay_tarball = "F/FL/FLORA/Net-SSLeay-1.36.tar.gz"; my %args; my %deps; GetOptions( \%args, 'install', 'ssl', ); unless (keys %args) { help(); exit(0); } # Set up defaults my %default = ( 'ssl' => 0, 'CORE' => 1, ); $args{$_} = $default{$_} foreach grep !exists $args{$_}, keys %default; # # Place any core modules (+ verisons) that are required in the form: MOD::MOD 0.01 # $deps{'CORE'} = [ text_to_hash( << ".") ]; $libwww_tarball XML::SAX XML::Parser XML::Simple URI XML::NamespaceSupport File::Listing Net::IP Compress::Zlib Compress::Raw::Zlib IO::Zlib Mac::SysProfile . # push all the dep's into a @missing array my @missing; my @deps = @{ $deps{'CORE'} }; while (@deps) { my $module = shift @deps; my $version = shift @deps; push @missing, $module, $version; } # assuming we've passed the --install, proceed with the compiling and install to our if ( $args{'install'} ) { while( @missing ) { resolve_dep(shift @missing, shift @missing); } #We install XML::Etities manually because of writing rights in /usr/local/bin directory &install_tarball("http://search.cpan.org/CPAN/authors/id",$xmlentities_tarball,"XML-Entities"); } # for ssl, include the Crypt::SSLeay library's # NOTE: YOU NEED OPENSSL pre-compiled on the system for this to work... You've been warned. if ( $args{'ssl'} ) { &install_tarball("http://search.cpan.org/CPAN/authors/id",$cryptssleay_tarball); &install_tarball("http://search.cpan.org/CPAN/authors/id",$netssleay_tarball); } # convert the dep text list to a hash sub text_to_hash { my %hash; for my $line ( split /\n/, $_[0] ) { my($key, $value) = $line =~ /(\S+)\s*(\S*)/; $value ||= ''; $hash{$key} = $value; } return %hash; } # pull in our local .cpan/CPAN/MyConfig.pm file # use the cpan shell to force install the module to our local dir # force install is used because although we may have the package already up-to-date on our system, # we want a clean fresh copy installed to our darwin-perl-lib dir. sub resolve_dep { my $module = shift; my $version = shift; local @INC = @INC; my $user = `whoami`; chomp $user; unshift @INC, "/Users/$user/Library/Application Support/.cpan"; if ( $ENV{'HOME'} ) { unshift @INC, "$ENV{'HOME'}/.cpan"; } #unshift @INC, "/Users/$user/~darwin-perl-lib"; print "\nInstall module $module\n"; my $cfg = (eval { require CPAN::MyConfig }); unless($cfg){ die('CPAN Not configured properly'); } CPAN::Shell->force('install',$module); } # the help.... sub help { print <<'.'; By default, testdeps determine whether you have installed all the perl modules OCSNG.app needs to run. --install Install missing modules The following switches will tell the tool to check for specific dependencies --ssl Incorporate SSL for package deployment (requires OPENSSL lib's to be installed) . } sub install_tarball { my $cpan_url = shift; my $tarball_url = shift; my $directory = shift; my $mod_dir; my $tarball = $tarball_url; $tarball =~ s/(.*)\/(.*)\/(.*)\///; if ($directory) { $mod_dir = $directory; } else { $mod_dir = $tarball ; $mod_dir =~ s/\.tar\.gz//; } print "Getting $cpan_url/$tarball_url file\n"; my $resp = getstore("$cpan_url/$tarball_url", $tarball); die "Couldn't get $cpan_url/$tarball_url -> HTTP response: $resp." unless $resp == 200; print "Extracting $tarball file\n"; open(EXCLUDE,">exclude_hiddens"); print EXCLUDE ".*"; close EXCLUDE; system("tar -xvzf $tarball -X exclude_hiddens"); #We exclude hiddens files from extract (mainly for older Mac::Sysprofile package) unlink "exclude_hiddens"; print "Installing $mod_dir module\n"; chdir($mod_dir); system("env ARCHFLAGS='-arch i386 -arch ppc -arch x86_64' perl Makefile.PL LIB='~/darwin-perl-lib' PREFIX='--perl-only'"); #Multi architectures support system("make && make install"); chdir('..'); system("rm -Rf $mod_dir"); } 1; Ocsinventory-Unix-Agent-2.0.5/tools/macosx/scripts/macosx-perl-lib-dep-snapshot.tar.gz010064400017500001750000050000571173606111100304570ustar00guiguiguigui‹=¡Oì½Ûwg–/f÷ÌÉiW’µú%Yç± Ë&àÆ…¤DÙ¦(ZEYl“¢š¤,{l7SŠd5*¸ª ¶5™•¿%ïyËS²Öüù{²{ïïR’»mõ9g„·ˆÂWßuû~Fùe’v&q>ꌒ~ïßà³¼¼üÉÚZÈÿÞ®þk>áÊÊ'Ëk+«Ë+7WBúŸ[·WÞ ×~‹ÉÔ?Ó¢ŒršJ6(®m÷ªßuößÿF>ÃÚùwOºŽNŽÊ,µ1h?nߺuõù¯¬®Úó§ÿ£ó_»¹vópùW›Á5ŸÿàçÿÎú_ÿó;¿{çýh…_‡úÁ³wÞ£ÿVé¿þÃ÷CÿÅ{o|ªo?¿þgîþÿê·ÿU÷åÖòò­úý_¹µúöþ¿¡Ï»÷§Ã•wÞùýùûwäßß½·¸éïõ¿¹Ïï¼ßEŤ?ÊúôíÿêO~õ¿ýüœÝ?½³ÿNôΠéŸß()ÊååÿïÝßýÓ?ÿ§ÿá?ÿþ÷Áïÿ§ïž%é0»¼ŸMÓañíÑyvy” ã~”Ï—Q9-îG9ÿò$*Ïûú÷q–èïï´õ³dXžŸüá¿üôÓêíOÚáÍÛ«/ÛáOŸ-¯´Ãµ•Û/_¾÷ÞïßûÃÿûûÿ¥ÑÝxtýüò_ÿ÷“¹¾û®Nú®-âÿàE|MËØûo{o?o?o?o?o棘è÷ÿã?vo?o?o?ÿ~€Bý÷žþûoòï»úûïôßöÞùƒþê¿÷ôß“ßÕv¿ÓÿYÿý½þûý7Ôïé¿ÿ&ÿ*ÒzW…wuäwUBy÷úo¨ÿÞûEK~ûyûùóù'ùç ÿ;WËÿo?o?o?ÿÞýçGî¿c‚¹hmHÿýoæ…wªŒ€>ûgm Rü_¼ç¡þ{Oÿý7ù÷-#ðöóöóöóöó¦?uûßýi:Å¿®Èëû,ß¾uûv¸¼rë“•·þoäS?ý^žçq4쌧£2鬎âçñèo‡‰×?ÿ•OVnÝ —W—×`ÿ}{þ¿ý§~þ“_ûöÿ²û¿v“ïÿ͵µ·çÿ&>õót¼¿÷<Åÿ«·n½=ÿ7ñ™?ÿã'ÿÐû¿ºÊç¿¶üöüßħ~þ»¿¾ ð/9ÿ•[·Bv {{þoäS?ÿ½g¿úõÿ[ðÿÊ[þïÍ|œw2þuÇ ý¸uµÿçÚÊÚÍOèüoÝZûdmyeþÿ·Ö–ßú¾‘Ï$\DgqHç~'n|µsx´{ð8¼6ÖºŸÞü¤q'(¦ýð«8/’,  M‹;áË Èã¦I‡k]:Æ;ö+õµ¾þ´ˆó­³8-ï„áayžaqžMGÃp”EÃ$Ê|FOÓ³p–MÃ4އA°BS89Ùyüàä$îž“º>ÞÚß ê2ì„Ççqø,ËGÃγdHÆý`6òYxšåábûÞÑ7žíAN ]`Nò$-ÃÆ1æCÿO¯_^^ øßàyëú¾Kié¶³;GÛ‡»OŽé‡ À,¼÷ÂA6ŃûC=Fa—avʳ ÇÙp:Š‹ðò<œÓàÙsš85 Šd<Åa”éý´HŠ’¶*Œ&“Q2ˆ¸/j|–Gã1¶ˆæç§Ñ ›[Ov[a™ÑŽÆAu/º!oÐ8JRÚŽÁ´À,J™,ïÍŽ^ÔI„ƒQTq` §Ó”@ Î#šÆh”]ò¹PûË<)©ÿgÏè„&YtÃc¯ÓhTd-¡Ä°f¹Ò Í`œÑ¿qø$0 jfÀ­ƒóx4á!ycÆØ Ý#°¤´©9ALÑ ‚ý¬(í@4&ƒ–™Y\”†Yÿ¯t*a–cÒñ0¤Ó¢IäAØl‡€Ù¸( 8yÿijy\Lh'¨ó<ÄÉszõ4ÏÆ¼“Ø™ VÐ>Q£ ½!Côg:jÁ#ѼÆÑEÌ0áŽ{’]ÒYNG;T9NÚô âB'êZPWqTÌÐ2~A 2äc£3.³qòcÌàO›—‡ÙeÊ— ;å !ŽÊ)Ͳ´†u‚ñ ë¹IÐAÃ`[޳ŸGy’M±Ó"êÓÙ˜6P6õ ZrÚÚò~ÐÞi“(ÊxDû‘ÓœÏb5ïz#<±7aþ ¨ßx„©âà;E9“qÇÓT¯íγ¸#à³?¥[_fùExI §yNÝÐÈÅt2Ér:Óm(CþyYNÚü¿E;<Ë&4§vxŠgi|Y´ƒÓd·ùŒh×Fômí)ÎcáÔéÚÔ§ï-#( çÌñtâáÁ¶ò»>’)|Hý¨H<›arF FÓòœFùQÐC18§[R,~=Ò‚Ž ÇCÂÉ4ÁsêjDÈdáf“ÎólzƈêÅÌ»só‹§Þég†»‡yÖÏæËåfˆM,xÚ‘w2hËÊD¶'Ñ^•çc AŸo>ÝÒ¬<â E–!o‹L0iz®¼äÉp>J.âpû‹Ý@Ÿ´ÎZg’]$µCÉÆ±9@1¡cˆ 6móÞÐe+£”`f{ct9é(VÚä)É£!ÝlPÎMtÞ'ªí¨}tüÍÞN¸}°¿ÿôñîö–ª9Zå‘‚/Ú Ú*Á¯‹®PXP(m+ ÀùÑñÓFÐn^bgy{Ç1MlH¡ °TexIÛ/Øù‡iF$ÄbQp’SCì†D¯p¢ÁÆÓýu\Ñõ^fݽ¼ÙÍò³ÞdÚïòí=Ñ3+z›s˜KVËÛ£õ×dß3( ÑíwÃ-=€~'L—ç|à ´R]?/'²è?šK‡…ëÖPemÁ¤‰1ó ìš fÃvøôpW°ísa³e ÀBQ¢pw§ÃPH¾·¦ô–/’é5ÒvRm³’$ÅØ¼¿:NV °x?ÎÌ­j®s–¡EÉbƒ‚c ^Û´ Áh:ĘX—Ne©˜›¾^þb*8…°`œç|ÿ‡1 ýµ—&“ª®ƒfœ”3ìaÔyÍÚûòLàdðŠóòïF¢|Kå"¹Œfô òp2"„$©$»Œ'Åzø0É¢ÃÝ {w•0P·ƒœ0-™æVé49#j<”ûå5£ +'bnX»E@ ×ÒÁOeþ ‚DVãñŽ1@ÛÀØS^íé0žøm8S°Nñs%öÂщwéõòÜò%è ¶¤ë΀9ô&„›Ú0šZC¿4Æ0}Ðô.£·%ªCôÚb¾àäÔkC¼K9À½3BÐnÓ˜‘ ‘ݧvÀxóÅ “Ò¿šr°ÊÖDaŠic†üƒí„õZq™ŒFæ=Þ Û4)‹xtJ¬È.OW (Î,ÊçAœžñ¥á)áEC¤”3›€糈‰`œ.ŸþõsâWðûtTÚ aÿÚ?Þ‹ˆ9{Çð˜Èß’Êž¹ SÐb¹%°Óë¤säjeª¦š±•4é6¦Ùå(žñVòP9úÍab\‰ÇqÊà2Ñ{$»ÐçC¼Œò¡\|L€›L©wì Ë‚Ëïò¹ÊøïP—}Àž§›µm9„Gc F€i{”g}]{Ú”ëA^éVä5ŸBÀ0ïlbVQ@7ð4yA¤Š¸WL61’Ô%·w´ÓrÈu¶x· †½•f%MœÈ°µX Qæ,PãZtÈ‹ ‡º{èq&m*l:CJ}¹…°U¸°å„ï‘0؆‰lc‰—tÆ|rR£l@œ°Üàáѱ/³D%1ýi餖êWJ/èâþ†PÙMÉÏ! ÷)ÔË‚s0º=ì0â4ÄMì3Ñé“G¦¾Ø9ÞlÓ¿OžÒ¿ý{pt,ÛýG;[6»s“𿉙‘Ì…pV’jiÛ»OŒŽbt5|,©˜T¦¬ãŒ“³ó2€|NTÄ׊sıÐá˜ù‰âfЛÏDÃa cÑÅ’Ý0êgS2»{,—âŽcÜ©’2Ë2z˜P'«#ØS«;¹ˆg$6 {Ï£Ñ\Z²hŽÚl( ˜÷“RÄÚq6L;ŒÊÈÑÿÊ}W uõ…¯¢°ko¼ÒãîUÐk –üwr=üâÀVR:ï<Á]‘ý`& Å½eZè$"$K§1Ȱè¡ÌïâVÿzd<%é$„ãËúÞu!ä[ÞPoï®Lñ×Ýl–vÁÊßøGI*ÌÇ0K—J{qX*Ž¡ñrÜ£®Lv»E~NN@UÌ¥½d ƘS‘ÐÐB¶}亸Ñ4ð¾Û2†%'Hy(j¸’âD¹òfK6Ò²!ÀÎ ’ò33«ÿj‡Ó'ZfÙ C‡»^¿Ìâ×{=%Þ|®/b0Ï[ÕŠ`)&X´5ÑszÀ×öÔ6 štæLbžŽ`3Ö%ŠôΣ籎Î\¸vATr:€²:dmµ•aiWéÚYúË=Z>~žÍï†Ï„“¤ÆÄ¨”Ó;ˆ¯¤fÒ £a¢™ÙXíG±Çç²w$˜\BzT˜F” t"xžÞ€ú2dõ¥•„ñ"a]¿—¬v¨ÀMÔ-â~¡#D‡}¾q Z’Ì:ììU‚ ²e!Îh‘Zª+…ØAÈ;œKºV×*“ušÒ‚U•¯ì΄“Mã’ÕE*‹ª [ òhê)×-13 ht'RlzSóæUl*{áMI‡ëtÍè·>Íü&+TýY25L®Î•¡Û„¸´¶3Ì›µÄÀ)–Fó»†+sT[¾ÎÓ#5§zkªSßÞ¨ZZ6i.;Ð7>Zò ÐáhBîŒcc›'òŒè¶M-:«¯®35Æ1ÇÅr½Љ(›-•xõ RÚÿ:/i¡\Á™•ÌÂ&¬r³ZôèFÌÑa€sÇÍ2©  HóÆŒb¾oNDϳK\g6^^Í\±nüÔÅßAÚ†ºK{Ù’”Ø¢hû9‰@™'§,ÝÙ•›Ú—j"bÜH xcVàa$ÍNÌwñ2±´- ¿¼ Yx–#!uß Ð _­š}AëìmÎójy E-•p³µÐbñ<È5„1ä y ¦Tª:ˆsf+­±ÌRô}Ümï° aóØØÈfHpy6bv™ïíðÌÞì`áÍæ&н1ÐôaXêw„ëJÏ‚E8Ø7ŠÒTL¾æ½¶Á܇0‚<ÝÚ›D*ÓïZ&e+ wD?†M…5P¾”. ³×µ=]N¤šÃdçà¸Õ:3,¡š³‡`aµßVjàãPÁ­Î¨î[úééxÞ˜FáÝÚOÍ4¾Äïôcg“{j6ög[“Io¹»6Zwj#êܵGúF]V¨÷Ø„ÌÞÝ —.EûÖL¢”S¾/µxhꥳ©‚ÃI9›ÄÍ%o·{/: ™O:Ó|$"ópÁ«Í%æÜïzDö#hdîö-—ÌJž€xW-þ6âLX¡ëÎ…aج· õò^â‰)Ø]:"÷Õå=E#!î5Þ):›Žëo…?’ÞOÜ äw]Öù’þ‹G4—EíÄp"Æ€;Hà ¾ä8sOѱ¬eTŸBÓPAžîÉãøÒž³‘5¦ÁA›qA∈£ÙÒBÄBë&²süìàðËðèé“'‡ÇzK Æ]œª¯ã¾¬áBm©VßâYÄ*œAÎcÂ\Æšh&¦Zlq 0 ô(là tø4ô}æ:‡CÕc:" ~<wK<‚èÑ{O¡†Ü)?qÌÈ‚ÖÉ °–žð-Ïè!âÏ¥>¦…<Qµ› TV¨l-Æ,åÑxŽþ‚©›ÝÛpz‚=VÛÁ7Ũô/?®b£ «Ê¢É¨ ZÓ^P?+­‹ªV…uãõšVïÁרyÑÐ-­˜O}€£I>5÷LÇVd{ì¡>’ÇÈ ä#Pa:z¸æF,£ì Î ª!¦žŸ>Þzzüèàp÷_vø~åyÐxöìYgk –£d8^ïcІ5tÂR¥$ëÐÌ)ÀÆ2Ò¯‚ˆ ÂÖÑönžÒú!Q²¶ANÊàÊPÿݨáf}51hþH¼xo-¯0»µü‰3QÖÞyÀÁ´Ô“Àç#%fOÖ;|¸ýéêªZ€÷7%vt¦ïí ýiÕï¶ŸŠ ™Â**wÂoéܪ3[¥1îK“QŒ ;äVÅÌ'°¤p9ÈUÚ>‹Rèâv%lÃ×ÚÓÆ¥³÷÷O˜aÛò“l®ó8.i71Äö²ËPJEÓ!‘‰¢cá@@@®‰¿5®A]V•<™øŠ_ µ& `í!ë·iŽ˜Ú&óSUo7G$öwÂÛO÷wkÈ3Ø{PÆ2ŒKÑüúáÊÐÚÓ`Áh(ª àÇQ:Á W9¶š$»èÓ¡fT,‘³ pLITÓ0WƒŠ˜ãM£`„^a W/cFß«„‰·Í÷³XcÆå»°›[ã)%ºvwµ{xðÛW¿”‹4@ÂòD˜WWãò÷èÉZD/[×z×™Å^šáÉntYÿÛ-¥-T¨x–ŒcóH ä1€î9“,fŸàýdaÌ:B‚.‰Ó£yrZðâÅ‹êã&É È]¼U·Ô85i1ILåLD!¬>Lž3ª^1±,I £Kv@§yºHu‰Sg+ÙH[Ãh ½oŸ˜÷­Q­2xð<ËÓäß ±¤$k†¦y\vö¦åôO¨÷/Ïê´(ož}ùïÿwšœµþ~>IÆ£¬,ùwºÅ°Läíð>q“ÛÙîSü寈ý–ŸÌÁ1Ý]šÕýQ”äá¿Dô%ë©â¤8Ç×ìKúßœàëÝh"îÓõIƒ?uÃ}XEG#}î¶é$bêpû<Êq¿¶»áéûºÁÛpû<§³zLËÎòvÀßJ¼þE2‚_¯ið¬>MϰšíÅÃÑ4¶þF0GP›¤9o=ºé°·8.“W.²p«˜ð;Òà¨ÌŠ>N]\vŸVûïÿ£>Ù#’.ßÊ䯴G™\<þž^šæÜwIù2ØžÅöI—­»çC}DÄ„È}Oï}šgD,öVצˆí“àÏSÚ2âF\›c"˜Y”"G´‘´oôv=¦-£K_\Ð=&¤krœåÐ[—xáqB$Jx{NãÑF~œåôôm158€oÆ}BÚtOèZã¾cl\;œÀX=¦_hÄdBÀNäŒn ]Æ„æuŸ¾þˆ‰m.Ý/ÞûÃlFÌ*ÍÖÔ¦k–Š‚? ÿ%#4HObà¤.͆ڷº1t 1°ÁÑ(‚ÿ0þ1!„GpO¸b‹úJ/Ì·Gp¯å?i¼i9BB þzBh¢Ïhì8º xÍ“ðégAèy/™ÃôŽéJÝŸr°ý1QEžt)¦¿¢ã¢c»˜•å¿ÿŸíðVúÖqXôÐmÏibßé=šÒyµÙƒí›¤ü‘6‡ u@cvhü8M™f8e—ì92Ê8XqL¬þsÍ­BüJr¦9V$‹Ë¼Ñ(Ql&¾[ mÕ —,x1Tƒ-Ó;¦q쟴%?:4´Mà j“³Hߦe¹è ƒ(#ûM™GÁ>ý§˜ñ êü¯t²8鼓ÖqY~§´Å¸Y>T A{ü(ž!¢/ë1ï¤äØB™d¡G8b¾_ÏS5Í ;õ £À\!{¹ކ£;ÄnÄFe3.wo-W2Š S8~ûàÉ7‡»_<:†âhÕ,gfå³ÏÖ:$~曹õ}T•š—"ê4§IÙiIW+¾cý¡G,ŒWzÂ~×=b×8Ñ 8\Ø9žãÞs N‰hJ†AújkwoëþîÞîñ7j b­ •ÛMà¡71(tÅÇXqç̰ÄJf—l‚U’ª¦:#Â>í³Ùþ ÛÒóá—‡î³&s¤:1 áYèNl¬æFMI¿ø*t,o0-ƒtzÏW~êù_UÜíN²á¯6Æõù_WWnß^ WVVWÖnÝZ[]FþßµÛ·—ßæ}ŸJ–U=|Í´ºHÃqUFTºÖàl´.to• ,¬ÇX  ©D,Wõ"&2™„#Èl¾mÛW¸ dÄ ÆlF„Ÿ8ðOgWÔCvNÚ5\´¦©HÎ&¹C׸‹´…²O­¼ˆ¿u,A#ŒØè4I&^*tîZ.’í]N…¯OÍQÄA¥&ËçÔ$ð<À9¶CòaYe˜sßIc“RÅWFÖÝáÄîS6[V#'# AÅs êÃIcÁðm"²×½Äºf46?Òëá]Žm[ò‚E 3Òà@@Ö[º$ɉ“-Ÿ9BY–{]êƒãϼÉò¨üBgß_f'—Ló°qå¸%`(^ä¼Ö‚,„‡û§%»bFÿì|vÝØNA³`'ܰ!6 v›âpŠ˜ceá”ÓCb^œ7ƒÕl™ò  "i^™œà¡9yx-ϧ`í ™21 ŒQ·,6.{ÖÌRx^ê&´â'®R21èKæç¶¼ñ 7vhd#¿ i²$ñ @àVÕ§ÐzÈ›Ìù6 ̤û»š4Yâ×6‚C h7þ(zô¨PéyaÒð4â#ÈcñV½.55÷ GYÎT•‘¨ýX ‡°/Ü«g,|ZbrÇxyõxVÙ$Î­ó‰  “ñ8‹®gBXÿ›pë/Í&P¡gƒ³¤ÓOÒÞýéÙ#Ú´"þµÓ p@Ô]jý{w—y^Ÿ Šú"ÂŒœ¸ÞÜ‹~$®4ÎpÀ~I»ìõõmÍl(l¢KÇá‚J̨ñ×m&šQ:#Í/#VËÀu¨Qç‘ä¾Po&cz1†?ßì¡.žãr@¼â¿ïèyE¯{ÈsŽÐá·šä•A…^_j‹ëfËá÷<šžÉÜyUOèD…×û7R•úåõIȓïwáD¥ÙÉKv¤d,ðB³|»D0@­Ňa=³ )ˆ:gÒÁVJ~3Ú¸ᘴ­Œ¹á6†š fáL5°$´Ö¤û¡—^’~³w½õåurU“:pûÑž­wZ^Øýœl)|ô|"ž™føc³mÉ›§ÝÑ̉ÍÕ?ÝŸþmÈH=kö½C4Ó›s MÐÌÑŠµ~¹ÉžSêâ§Ýñ,ËÏØŠo\ûË()^¯½1‹7éþ^€Ô¶Z¯F¦†ƒÄH4À‹/¼x™×¿¾Ðáh‰ä@HÚý?!U0j®‘Á–ozæËdaõ¨µ¼s÷6 [*o˜ÖÀoÕ=2=€aã»enü™w‰ªáõW yD¶Is¡:oCõZTÕ#Ѓšq§&d¶(Ü•S½Óó§¤4JåŒû/@N›hXÄâj+Qq•ùžðˆCŠ ÀËxföð—âMá7â pöª–7Óï]âÚwçpþH0칯“éxËì•î†GåT¦Sw¾ûU`¨¶¤¼·¹¹ê™`®9ø²Nwå¤2Xfá[½šL-‘0¼ï‚m¡‘P¢»Ò îÍìÒ·ÍHh tÁÎ'’7ž‹U™ÞWñh(Ñ­xìpúõX¦Pÿk”_£Ýp,ܶŒ"‘k¯$…Òù uÞ¬¼.`Ç~ÄðW-5ö¦|Q6ÚÁ{ôaÆ x¿€&‡š­´Œ&A¸´¢( ûbÄ-ñ"Ê®ÐL\ãÌî]ƒYtžá4Zslù‚äYÁ– ·¤À ZrÌ“mzÂ4³‹8žxÕ°ÁÃÚVlj&œ<»tö5΂á‡mp$¼Á1 Š4ÀÃ슪úÜeâÔí†g·oy±íÀNŠ}¥œÆÃQhÏÛÀg“øÓk@à3Ïç«©¶ÏðáÆ! ¬û;]êJþèýij¢ø+FË €§ç/Z‘Õ&Åz?3¬™šhÛusgF» vcmy%|RuˆïK&ØÓò #p+ÇÏHé©¡­Hî^*j8ª %ë-ÍVÜù!÷²Ç©hÄi%Wâò×H¼÷Z¼/Mù<ѸI÷4Qtþ*1ôõSÎyÈüʤs ÉÖ°6Ú¯H@g¼wwa•cF/¦!45õš¯É0WËj±î$ã©?XŒØX°a’ „ áóWjÆ>4qBwæ¬Ì'™Y,qôœÕ¦íùW¬”ºT}…Ÿ_õ’ŒãÝœž(h uTß¹"jÓH±¯ †½<ÇEm²ŽŠC§pw[´pdÆkšpÚAy0ÿ†èÁbÓÐu¶íq¡%y{ì5ZKÊAX  rû¥DdJRŒœZŒbɼm°AxÍ}Yzoëð‹ŸyÛ­* +(z^æTˆ«r©£Bã^ cgS&<6ÓR6Ö2Q^f>«SxÑì‰Uó=ÊmÙÆª=ϰ¾¬ÅcìJ˜ù}ª÷¹em|δloë·Ñº ò™Ó²\m=ô]dÖº·n«qÌòœ 1Á€÷žröZf…FvañÍ";ÂõŠÚ:ÏhŽ”*ˆD eQÏëâŠS ª§Âø) Tãtð· ýSÀ]“éÆÊiš”ØiØ*óÓþëÀ…ïXŒ%{œñ‹ Ë%'#NgèCFl̉Ídx7\®PÙ³×d­0·Öœú õhšƒ •YóÆà| < ôsïä΢–õYþñn(«Ð*Þóš+hr5¯¯°ò^m„Z@¤ŸlÕ<þùgÙ ¹ÏË€yZÍEÃÙñþNãã;‡‡aãÃᇆ\ñ‚^õ³²¼~<· ½…‡ºhfÞ73z½KþjóZ ×» Ë¯¿þ:<M†Ú‚†™'O»dA8u!«Ìãs¹ÅÜÄ_òE%G¾È¯®â4w^u+¾WÝvšûµ=Êø•ÓòWuÿz…ÿ×í•ÛŸ þûÍ[Ÿ¬P³›·àÿµ¶ö¶þ÷ùÔý¿èð9–4eÑèxŠ4Ñh±ÛZ4¥´d©Æžç© ÖšØo£%‹&Ù„ÙgΘƒª[•2Ù§Ö`jMŽênÉõ­÷¸P$ ‡œ˜OÞêø’ Â-%šÄ*šÝRáeðpAFÅRK|iÌ,¿4ŠK¾²U£ôª{tÃGÙelª暸&“ò^uj0¹ãr ÉšsÖ3 ü]ÈÉsØä«‡ú™ØÇZœ"{ÍA;¡ÉdÎMÉE®ûií¨xéBÉ84Yz8˜„¬,éâ «ƒÛŠJ:¢éd\9þúÎî~8¿ŒŠ’%_ãMüx–©G» ªa˜Z^èYQï^ÚÅ/Ô6ãD:&žT°ØCR=bÄ–X–‹K³dˆ$f£]ÝÚËhȶKR_¯÷%/: ‹SMi xm».6Rt¶7àwÇ^.ÒËeF²gp¦Ë*%Œmo©ðª¥ÑzÉrV¨¸J0ÅɸµögN»œ° qÅ„„Ô®¾¢sÚµúZÀ]Ëx!+Σ$ïïÍÉô‡ÑìáVwp:þ¼ÌèoßÕ,—KBq?ç§ßX·î&ÆàË𠎀¤÷C„[IÞc×Ð+\ 15#»ˆg!fŠ_† '¸!øBM/óKÃpl–a³~@¬<ÆÞñÁjI$Óª]ózIN›nø ǽ¿F?þØKŒ„ u:[Â}ÖLOÌhònáÛ徿X˜0ŠÓŒ±ÑD yÓuFg#q&¡»U×$ãv›‡‹R¹M s4Îz›6 ƒM¾§Ó‘ÁÓ´ m|35o3ë¢Kr \™Jt€*­†œpvâžß%ýe"‰Z«rQiA#CÞ‡WÈô ë_h Ò–u8ÜÙ&Y{©¥G¦v.ÏŠ+-ó0â{Ëb®84Á‰#]%’˜Z°d"^¯”;‚œ}Ǿ€­ÆNŒK«ÆQÊdˆ ö²d$FÆgÒ . $‰]8䕱°ñIʱå2ØÞØŒcTUº±þwîJ~'üïÏDfãIØèõg黇¡ô§,êaEðÐ þ~ø§lö~ƒ„¯£Cã*Ä…ÄØà¢ ãb¹…Æ™úU¢±tÓ.ðKòD’ÒË:Iyâ욦sÄØÂ•M¬”éûxÈžº$+"À‘÷‰$ä^Zê±E'é& ƒ"zNo÷DQ$ÓÀ ¬ q•HM>˲jz®² ?{¿lZÌÆî£ª€f‰ÑLD8¯ŠŠï˜I§°6¾è¢Q2 !$#üàWûxy×€*8mŠu/°Ív²}”•e¶n™c –Ï”´§x¦7¥×:2‹&™º±d€¿óÍí°ÚÎø\hž}`#›QËO”ÒÖ”w")ú= |¥ëK—Céï÷ ~ºÍ4+ÙÚÿ.)¥Õω½ÿ±F©’-•ÌQÇLX ðìü¤x“@™c7薃Ɗê.³Þ<’W‰Y’«øvQ–8 Ç€ÆR¨^™ýv E~%g0'\r Àm}t”@k4š‚ó©Þ%/D½fiM1Ìd¦þy’sm õ.J>Œ—"»‰ŸW޾€Ã¹áÂZ÷¾ãt?žêö-›I€÷‘õ&â!+¼$€½Åöñd˜dc!z,ëËqß oè:›– 77ùªò]䪗ñbS„–ñPË íDb¯²ÎAàðÖé'Ç®„kÝÛ·àÁ³—ECñˆ£ûAðJÌGkÛZRÌ)B>€n+W$üÆÍQ·’!Uø&˯éz®Öî’6‰ÿP¾±ð¡¿!¾ðÖšbLã"ÞiÝÙõ_‡3t*ÀÅg!´Kùüä5ñëÝ ¶QÙ=¯AÅ©C;}„HÒ]ÎÁ z.À+RË´Yù_Á÷K\<„ß"Œð]ÞïX蜥 ÞhmßáöÀÀþ$|M&&ƒÝ2uø° ëÔ®¨Œ # Žž8f…B°¨nfuW—ÿj™Vå,€ÎL¾Ž$}žžÃì·½a`IJ¬R/ˆx2[’RQiüÛÎä/©UìÞ˜Òlû¨b*‰ÿR]$ß®½ žÆÜ:!?ã"r—Td¦„ÃTäRYÂUÁes€µ”_Õ9²pÈHž¥8Ö@ÄâÖéÊùÕñ|[•lQZ.n‹z1œÈÃB('h:œÎ…áYú…LTA¡þµ"ÄÙòËn¥~†*&ÜV¡ržMb©(lõÏc_<Õi„Õip X4 ?Dƒðw ²ì‚ˆ¦Æ­å[ácºÛáEШNXÒ{Un¥¼äÒ«·ÃF2&2Ô;KNí Z’†Gú¯vXÝ=;í 6ï ÆØ¬×IÔ|µüÈæmfDjýÕïùæ¦-¼áWÄWŠÖC•NçZºG«*k>Ú;t(+ª¢ð‹Ý‡ªexå¨.-h0’ŒÌzÝàv02ôØ‘'8©mš˜ø*¦Ãw8¨_CJZÃ…»ÂôD8‰9V£­•®8ûoœ›Ì‹¦Ý¾©€îó)š pÓeñy#LùÖYVFù•_¡NH d¾ xXÌH$y!å#­ÏÖç\Åù0Û·‡)r\†)Ý<’¹Txq[ÉF‹^qÝ,‘¦ŒL{Ï:’jB<‚Ió¤z[<‹Ì¤ ½Ž# ŠL­Ð?Üߊ|_5ßéânØ á¡«üÔ«¨Ö”½©u2p™’Bž‡øY6?P bl O‘ÄQJŠrVf:½F3`žÍòLÊŸÝK‹A¨> K® ¸a˜À½[ÝOn‡ßÆé÷aóY’~öéðiK\3*auÑŒùÏý¤Gó௓øÌü=©|AŽ{Wzí Ï ]Ú{‘u>ýtí³ÎJûãö´<í|ZmŒÌ/SêKZÇiçé‘çb9Íëyî¶¿/xÓ8ë@Ó¾ÎÓDó¥Ï‘VEœá°ó¬Í…®h.GQÕ…×ýß÷x)ÜŠð$³Ÿ½Ieñbú¬í-7ÇSžd©°ž¨L}Yóý*z$­5X5×EÜ‚BÐrÁ OÛ^œw-î¶©>-蟅w˜ñzý©iªùßss¾=¬C]UÁWx¾ºþ²LQsp¹Œ{"ËI2–¥2^¹¶Ä,f§§4§ü²ÉÊYáÁ'(÷“@—Öæ¢A¢F Äîàüj½ ÐÝp+l8w^.#à8k[½Dªåd‚Þ7ÊÑÈÕJµŽª|gíº@LØÔÅrW'’Âd¹çr¦VÕ0).Â&:…Ó©AÔ t\D<|¸á9»Šh‹¥wQT#7ö_Õü¤ñ¤2 ÇZ)>ËU·¿­¥¯¡JPÇhI8c}«™³¡yÁøåR×ÖÏïÀÙfÓ¤8§SRõ&t™˜»ÜNT¦$5ÜÞ·­õÜy®ük…nÚÛàùLÿ';6G• ²ÉLé–²hP÷Gßu+Lås7†Û<]UÖkÖÜÖÌñUж ¡æ!~ޞà,vr5Á‚=P÷s¶=!Qw®C8c+6 ÇÎqö¶qwÆwœ»\ñ_erÉÉÊ2ÌXõÀNælƒàÍ4û±R¼cY‘zºaÍ/Õl¨ñN`Î(šì0?`Ç¥©V1¨l2øš·Àð^½ÛXÙ ©k¬®ê¥Ì2%ê¯>÷Úâs¬£H<Ã2=Ó¼,YôìvàˆÐy´s¸ÓóîúÕ'é!Å7–˜iÑ,pµ³…ÄÂÔ+‚¾:—8ÄN ?•1(LºY&Bb6©/’vîò(®.Ë8Aéìuw?{Ný4³?Å 72çXÇ]§ñGkë´lB76Oº\¨lî(YÃnk£'w*ˆŒoåXÏÍIðn‹R„…rÙ7åïh€Î&ã«€I¯CckÆxX¯·.ìïG kù'£økÉlœÑ¶<çxxêùø+£ºxµ…u–¨ÄÇÖ¯bÍùU„ž_Ü9ܤïÔ¢îN°iwfAšÙVº-ÂÛ6óÄg×t(=´žª,Ui½>§ÚíÙhZ&?¢¢E•k:4…Yrº Þ‘¦ˆë™Û´}0(\O’"Ù’¶Î[VÔçC­<‰´1Ç}69!UÅ…~¡ÖœŠmþÎÎÂp Ñ¡›ªE××8»>êØAbßXV›wy—˜7‹ŒuQá%,‚ËÐFEy¯Ð/–¸Ÿ9#hlñª)Ëç Œ¹^Dé bfv¢™8(¶µ Do)—y¥ZPc{ƒnÓIÔ/LKÞÕÒ`9“c¯cëN`Ëÿ7…êt»½Ó,Óà2î\=•1ña\yYßZ¨ÆYð¼Î°oðŸ½LùÖÑ ê×à XEóÆ8šõã3]¢àPØÌñìi"ñœ L³UŠ£ól8Öqf/ð|Ö|g8ѽ>ƒ÷Ky»yþ­æîÖµ÷×Á¿…+º{ »ƒ¶-Ù4a™ßØ î<¼û]£ÙýøóÖwÞYX³Ó{|JÀu¿ˆâ°Óe×rëq-^-êçàJ¤¼°æø•œÅ/&â½…Øâs¢ËZǹÏi%P‚¬(Qµ¤é”cÎr®ý6u ǜӢÍ*kî"®™V›íTK‰‰R€Šr^{Iz±ó¢Ì`,ÊíÓãì"æB`ò˜ãW˜D¶EÇ÷§Éˆ¨Ñ&sN¿¡ð¤L™Úï+ Ú²^4êûZ·Ù‚8´Ç¹Üh) ÎüÈ& ­Ñ5 ¢þÅØkˆ5$’)Þ¦P¸/t×a”`I4„›+k­;ì*ÂQ†E\j2úšR©J„T¥~¦(º â¥Å%VhöÊZ(1Æ’œfñlÚµ“ЦxØ„¾Ãdz’\K߇¯;AN–1‰#pD3/§›ø Ú‹Ìœk¢ B(¥²Ç險ʉpòޝ¢^8ñr#€óªÖÓmô¸Z=ý)>â?C"!ïŽ!@HAû’Šw K½©•źËwÚt¥¶r³8Z­-/·Û€I–ˆ™ W”Ódáj.³ŒLÃÆÜ‰Øˆ˜mšØ6’íÝ©hãÓô„Sð5«DNlùǃ깂Ôç+w&YS ,l|Ç“ÎÖˆ «¨‡³^é4cbÉ è,Ä!kvìº8\Ä¥ÝV OGeâ••µ®%*Dk‘ô«€S¬ÀáÔ‘7m¥»z3l2jƒ—™ˆ­ŒiZ$»=ûva+êÕvB™“?qX.ÂnMˆˆ1ì6œ½!–„D ”¾‡z5qS;°+V>W æ»êê+ZÓÍF[ÁeΪîŤÈ"ä~—~ ´&ÁÑòrÏëv·köïfwåVØäÜýƒòW¥ÓyõBZ¶–+S¬0£M6ØÙ¶È ¯.hƒz6qåP½Ñ6»ŠH-A(õú5ºöó|QÁ7¢²|¦v¯'ÙöW®[ÌgëÃ,{»*‚°¦JzÃo∘6?Üpel7‰í¿ ¸nçîn…é·‡m²ð42¹¾<á—ZLýçJ¹Ä—ÀmºÊ<˜Íú¢æNi—²?xRVŒüïk—WˆÎú«fK$ ‘Áßñ~VN¼y ´š¹‡mä$„6»'|ß°–4ƒ2Ï/S"Fͯi¼¦t øWÝ0u¨¦8^| üãêܺ­VÎR"Ñõ&BXÅI@ÚO†bO7ÃÚÖË’6ïÀ6éT¦cñ–Yrá5•­l5®À(¸“Ò¸Lz lfmO“ÝtÃy‹Ø€[Ë7…Cj|Aã!¯†¨ N»ôç4gçév¥N¼VIEä B×)08¹ÅV_r”½Z›”uÑšc0™~ZÑ©¡{#&©ÃW—aŽPdoB/÷^°ì…ùbS®X>õ¢ó…5Êô¤ÓéNFBsWVoÞªC»¾Î9aGå…Mè x烵ŒFlæ q"@sƒš—–gäêîg6ÓíbD\5õ=Ï’¡1“,F;Ùi§œ@€e¾Z—§¤]}—õQ³¥iç6º\3Ï'¥Ë‘šX{=‡$ñÏš$pJÅ&3CžØœeYk]Õˆ·öóIïö2“c’kÇq”Úõ(ª·˜Kݲ”9Ex{ñö˜xìí®Pjö)‹ìm%ÑŸxòŠ’Å_‹*ê¥ÿÙÿ¢‚èo/‰JAÍŒÍy$ýDUÚd„†4¯ÒŃ”Y«’µ»šGÛ8«HbII7£¾ùÉ a])œžÌØÖÇœ=X"sކûž`&¦·ÉåUS¢‡­€C{5i¸ éÇçR¢yÅ‘V\<æ4N¦ÆW²’k€ëWí4«¯‚Å嚛۬G;AÆóo6%`ƒ˜3qu5‰ëýâË2gdúíD¾ß¦—ü,³fPÿj#Z¯ìGêôÊqMV®×U‚‹î•£¯W.«K*îÝ“ZRIr>‰è Q™³ðïK-&tAð³cÛ6^C$ès›=™s&»•Ðí “,{ÓË•ý®óß[S ñRƒxÔõé2îë-1¦J¯j‡Ë0Ò7rƒõÕ®ö sP7Ô™˜‰Éh hESA›ŒÇÀ ÇØŠ öÞqá/ó’b\‰ÚA•`Jɸ@ÏÍTýqMˆócEWÆf1° ¦ƒ%D»—ª|©n»#€ëTÕÀlj…p(~oÏ>Õ²T›0)BeC%óÔ'Ÿ¦ æ+u‹‚´aQfaI;ç­]\ØÀ/ˆ3’÷Ð ’4!îIúµCØÈ‘hMº~0Ôt,dt¬xA…“i” F3v3cšÜà ä6‰{3‚?»§:žºÅõx=ìxD¬v¼>𦧰¡;ãQ#¬tk~£x­e“ÚØXGsêÊÝé¹FÌSsêêúÅÓvóëÍV——W;ãåO{ËË·? »ì¬kT͘¬Õ:s0=æ4ž”¢³;|eìnT6ÈbI¥³OÚ£ƒíléÁ.…œE—$XªM©!ùzØ5#ñRYo95¤Ôõ¿Ì€é›/9~ãïÜÌ×¶p¹`g‘˜©ÔõìÙ³ŽÞñR ™—ø'Q©Ça¸à “t…‘F‡Óƒrk6^!‹3ú‹Ù|éuä’ceA ¸0|‹'­ëåÜ2©»+„Ç»µ¼ÂwÜa©C­˜€_áéðwÂÚr¦kÅŠ/ŸÑÕý–ãà µ ~Ï,u?DFáK2F™!Ñ鬂r*WCü¤¤#mBؼfZa¤ðŸ Ù¨-µÑÒâZ~J,SÂWžº PŠë~Þ‹í /Ÿ¾µrj7Ié¿UØû®)Ô$:ÙjªkKõc&.ñ‘sªH?Á¿x) ºRtf¢u.LÈ5ËÌR|šl ƒ@±jCnáq£Ž±´;Ÿ.Ëc#áo?éí>‘VXÐÞɳ!za]´£“(Ì´Çv}*ñÊÍÞ¢;žõ£³éE­Ñú§Ëf?ˆLœÈ†p×}Áü>AÖž™lN?Jÿš‘°n6ç(ÚEaB©Sâù1«Àˆê®#É7]©/ß^~‹?_¯Z*×à9¸‚/±ý.×t­°ÁNaxÛq5!ÒQÈžèw³%4Mf,Xʺdù‰uM~¤-#B¢Û¾2ÈB`{ƒðþ¦†•Hn¾7ÃXoY‘“K ¨—Û3“ÀÚÔqKÝÏ& €×¢=NOj¸Xx3ˆò Ž §NþÔþÊZF…öl¢æšêÈMPl ‡µ.8ŠÐ(±-ª÷¢'â„•­ª?ê"jï¹!™üø“h6‰4ûQ¦â²óTÞ]ïø,)q¶´óDöVëfDg&¹Üp0ñðý0Ü%qS±ªÔ¥½Â!œÆ´ò…ä QæoÁZÆ:ŒêÉI§Á ìÞGïiªÓ>ެ¤2Ïå¤c A_p|XׂJáU•ê„]»2”ý“nhH»½Z„FÓE“ï¯ÙÝ ìÏæ¢Ý±¥+msûY°A ªDi=í ’ÅÝAUõÎŒŸw%u–Jmsu9Í .0S·uþÊ_¯h€èÎãÑÙßaø“¼­¯¨Ò}3†,“~t3øÛjMë!‡€bnMŽÀ-›‡£:èIV )"ÊÎ?·\ÕÑ@\OGF å°9 °`„ú‘Ý•fY±P2•|eò«–°ñª·ÍU畤†¬úJGNÃ#Ò"§ŒµzÂÒ»¶†Á&»oT`”ÕtIórFÎ"¤רÆRõ˜»TJ'X%n¼9K‹ÄRÕ\ŸU@9Ñi"3"¨ðn=mæ‹Cñ på ±¦¸|J®&‚ ˆ <:+¹9K÷ÄUi`S¦]:^Sßùô0TW,þ,­¼j'o°Qs®z­îÞ{åØF •8çǶ ÈåuZê•ãI¯ˆŸòÒ5³²\€ ØÞ¨ô·©êû¶y2²0¶Wo€ŸÚOôf‹íx©i޹&èxœ™L<›Fe2 Œjñ\IIÉÍžÁG-PwBsL·áâî¡X«Ѽ(\5΄¶Ý¾³ië4ªh5©Þ¬6ž•\s_ ¶&WÌ.Çš™çdºàTÄÕhÇ>çRV Á%òŠ7²I'L ¼hM£8=rž9ìgr}¥Ö;‹ÀÏ”{@Ä Ÿ¶luðøí·¦/?ÚÙ ·öŽ!›îp_¢ \²jk¯/m¦âé0aÕwîÒiK¶ðŒóŸÎcA6ÊSѲ !ÄOœXèÙ Ài ™u[õ§ÀúR8ÙEäW„¡.‚šÒÑ䥡5 g%Ñ©‰>èK&L/ã©pæÕþ¸ ô<‰/]ÉlG^ÕÕ~^jIìÂyìåu4Ž“*› äóÙ$+ÝÖ“E¾n·Ú›"ï¿KsÙ³æ("É`­jR®×Ê…9jj)™•©?ÈÀ`"uDjéå*ã àÅvtÝB­K5;u{®ÜõîÖ×w82»­‚5ïØJÍXLSûH‚[Œ£“q/oð5ùˆ'Ô`j™*Ôò/®.¸z›þ—oukÛ?ßâuÊ$.L‰}‹+sâ'¯žÔv—¦´Ó…+oZîlÄÓñh³6;4!ªxÇ6û­î4Z ¦è;+›Ã®»(ûιOÕ%šCdæ»ô¼¢+ŒˆR›ÞÐÉáiCÇIVrÃqVþªÏxÅ$äî#å>IkÄŒ,Æ ¸É­¢È| áPM"£÷ÑýÇëárgí³Ûåå•O>í|Ö¦%zZNY¼/•°#âѳ³pŠ.mŠF-ðÊ$ZÖ6z%#)wŠÚ'Y**¶k”c'¹³QÛGvz)Ö®«¹‚¹·çVjü +EUB]I¥Z}a$sÚkUZ1•ZŸ?:8„ ¿7¸|ôñÇ=ÃBmþ¦Š–Á´ ‚Âñv~’ µ20õú/ûÑ ÷kõm>¨÷²¶vUý©—²²òÉòÚÊêòÊ­µþgåöíwµ_{"‹>ÿÁë¿ÔÏÿq\þÏùö­OVqþ««7ßžÿ›øÔÏŸx‡ìù¯Þäûsùíù¿‰Ï‚óïNÆ¿î×ÖÿZY&¤ó¿½ºººvsåö2ÎÿÖÚÚÛú_oâ3! N¼Rø!Üøû91·á—Í_íí<&1ÝüITc¥»öYC_³M·îîìïœìíl=Ø}üÅɃƒã£ØÚÛ;xF?ïmï~µsr´ýhg'¼ñ`çáÖÓ½ã“??Ý9üæäáÁáþɃ½ÝýÝãC¨ƳðCu™9¾#™-&,0—¯ {$¬3­À‹ÛßÄ9QÙéiö³ðlĹáäkK€´•£~áq”_„7¦©{2¥Ý oÈ€'9"ë]ó6凿Þçë÷>ºûÇío¿ÇÏ܇|ðsç¤ûþ¿~¼Ä‘Y¯ñù`é<ŸEàOƒ6«ó/QçÇåÎgßý™‡øn‡ŽB¦g›f$DÄeä–Ô »•õtÃÆ‡8B·"¼¸ô-uM|¯ÿÒ(Ý?~×ùþã%=íí(Ÿ„Í–@‰'oò3~•RË…Í¥FCªßÝ”âáŸnœ|»üýËðe]ï¸t÷n­í ‰Â'ñÍ{'­Í߯7ÿÚö§ÑhÄnúÕV]ùA¸ Õç&÷’Ò›Ì,.ÈÃÃéX®á€fáëëGeþU4jòZ[(°è§ÀÈË€ûC.xé‹k™6Û qmq¦¨)7Â/ôÝxÃB«–´ÂÏ9& i„ëa£!†I‘žIRž/Pà!aYÂ!ÂË\n”×õ¿†Eï/ÍÏןî­·>ov?nmÞèÝXéñ ¬7Dˆ|«!¿×û®øcoî)=¼§ºâð]^^´4äÚ§ÚxÜûKÓ»të½"ã2¨ú Úœyë%ÿ¯ærz}4m¿Ô,OMG­–-Üêu#™ (w‚÷^ï¡:&£­>úȽ075Ú­õŸo´zÙ¢ÎW\aÒ—ÞlÝþù®ÂìTé‡à½afº4Uûøæ!ÑIœœ¥Z´Ö_íR¥ÁV£Û­Àjw6O’4aë„m ™4‘áàJðä,#^Å]…ÍÚ9b“ü–®Qg“Ó–èS3OƦÝPÅyrZÞ±s Àž»✱ vƒÓišÎÆ—08UÙXJÔve:Ô7çàÒVAÅ<”™µ4kè¸ëønKÎÉÿöþâ`b½—áüÂW}ìÀiv¢/gwìp(êݰÏã|§k÷î 7ð¶Ð›þ‚cÃzüóÒy7¿ý S‘ï>ø¾õ±Û××¥³lfóÆJ+ü8>Ëäõiyúéúú0»LÏòhXÙ.iôÄM΃qon²è¶ƒJ†¸ï›»ôóÏöZ½O›ýÝ–Ûíï~Ô»W½$\/*ÜÁsžP£ò¼a°GP½²£AÓ]‡–Üi b0ÔnŽûÐÔàÂýX8À™Â’z—׫¼ÍO:ÚK‡)êwôd‚¨6¯w¦cxÀ⟠M¢²zFŃkçeÑÇûqûªOw³X|ûR$™Í.´²)ÛdG(è&/Lò4ŒÍSð­[j¹­O}Y&%ç¦Ói0%²9É3ã×/]óuB40L¼Ï£>6lh”wBl ÊcJ™Gia4q§ŒÍD뽓'½³;µ§ÝÞÉÁüÓNïùiš)k ÷ºÓÂVÌdc ûÙpC¶Rsõl˜{qÃB=>ð1ºqOóS¸{|³¶£ô»%ÝÙ¸ûq’†ßÝÛ}¼Ý›ƒ"WmZÕ[• ^ ÂW‚ïÀnnLœ,F&Ñ- Æú'ölõüÍG3{$¶Á3W¤ zôeè8O‹ŒDÄÄLo0B–hGŃWˆ]?NeAKTŽçÉóomp-sèÝ'Äø.‡ÊDêÓ+‡­Bщ¢Jÿ oè bU®+sèÓñ[n!à ²„U– ¼©¬j¿¶eRg^¾óL X¬¯ò,ºh6îø_,4Yj´ì¹ÿ*½Áó38u…aÙ.¥¨¯…ëLu‡lvÅ®ËË:5›xÃ4¿ïõ•äÓ×¶p–úcë*^”ÛÖ(¼cÉÌñ‚nýo³qMPurýÀ…WàmÌñ¥T.ø²¼‡‰ÜøË3¾ävqa1|oüŠÉÍ1æ³ÌdT¨ŒÂè<ˆzËC$Ÿ‚S/ìk¸t4©jsMdC~Ñe¨€ÿçëÞ¶ôí_ˆ/ú˜Ø{˜` g^y!®¸DÔ‡àñ4‰Œ³¡l2>fˆÐ~>0«kŸæwÈõyXmªýžæÑ™˜¢*Ÿ½â…»uOæÄóƒý°ZýC„ÐܸéõQÁ¾â!€êù*Íî÷/àÖôûVïZÆ´w5_êº4üœ½Ú9¹Í€4íï ‹Ôþ[Ý» ¦í~²›DwÆ.Ó<4ã»-f°ýxt7üî#}È~ê£$*¤íÁ^GX^Á÷¤ö^ñzˆýJ ¥ÝôŠðâ¯"®‰Ü;÷Â/9ìPNû½…GÍ;üMgÒøÀþÐð±´ÅO¼ÇQq¢I»¯Ûä5šLo%yòJ‚¯b¦Gî…4¨Öû°ùí§ŸEÓ­ÎÃï‘ [ÿlõçyó<~UÆUøØbï8DíçÑ$ô#ˆ$<¾ÿÕbÖ©)Z‡á ¿´Uœœ²Ùxzü°óiCD¶ªÑ ö? ~øáòê×ô+¯!|ÙÒnŒ7»ðkà‰t®vo"¸éY””*þpUZTF V?F•-ê¾iÓth¼{Õ­8¹MºS"M;í™™:¤ûâéˆÌ ZÚtÊØ…¾p:ǰ)<†J¼†šMù~R&I§*ÌïŸüùéîÎ1Ô´ò ΨÞ­C 1LQl I¥ó+aV²—ëxËíp¥MӵüdÊk`dêƒèBIz¥YŠØëÀdHß·ùsŒèS„Èß–#iØMÆaI §ó÷T˜daBÿ$èU^XM'œ@ß*àÔ—¸|õ+`Þ)Ø„r‚¼A©|v 9[ï[(£{®o¯7øð[¹%t]¾ÿiõe¯¦{@3ƒüÜÐ"PO>4¼¸Ì’x_9°„‹[;fed þߤa”¹Ð!è¢ÿôaÓ»Þ4ëÖKÇàóÏ)¢ùø7߉^5Ê ·ñ­§ßÿÚ±´ëÃïžÞXi,|ýåY¼Ôx² l„Ûð#Õr­È]Ǹ¸BIÎõ}‹óp'¸‘WEy@­Uš³Ú‡ùg«ª“±ù|y­©ž¨' &×Ct¯©Ū¯éeͧMmAÓão:qʵÏb  Ó{ZÌUìlZú® œ,ú]÷VµPˆ‘U„õ!dÓ/`>AáJõ {-ÁN*~À¡œøˆÄ[8jq«£ãƒÃ­û{;'ðÚú1v ïLpÉÃ;:ù«ôGøâòºÞ浡džYôF|Hpr²óøÁɉõÆBy  À.u'€Ó+ÆZÅt×*tˆñ±®’\A@}%[Îø›ÇOŽvPûeºR‘ýdæm¡v«•v§Y† ±h®¿ßd”½ª*íéŠ<½ÅOo:lrcºVéˆ]C{½gÏžÙ×?]n´<ˆв4¡>N=mH+‹?§ÎŠA0h™xzlÙÕÌl†ú_ðÐñõôа›Ü¹í²‰,›ºlIùÎOê;&}6p“ëá™Ùÿ;GÛ‡»OŽwkj>ñ3vȢЈvŽ•kax ¹L³=ÉôŒ¯ ÉXÏäªw?ͳ!ydn«7?»M€Cð2 Ùe»?ãŒ}«ŸÜ\mqhÉuÝKi{ I䜒ÛMgz! ¬Ú±ÐÔð\E"Ùä|Và°9_3z§ÏxC²Û*V¼²$9Oøa4?é=hó²Ý¤@GÓxÂÊÌ ºžÿ÷ã£ãçÛÄFÉò]f3îj™O%W¡¨ôn“j‡6- ¡]Ѧ•­k¶´Û6Ã5aD—ŽÝ$˜-¥@š^ëT‰@Xl¨½’ŸIp'íò™4 Ò.СmF-6A…¡ÄUqì¦b"eD$1ÐÆ&¹\ÆÄ„GE0’ÈÞrM}D°S¢gB#mIK>-3 Óæ¸gþlq7Þ+3g#â'’=Jb/ÑZ°L×€«nô‹H*6–šáö°ÛpÛ*lÆ…ZŒ>ÛPT¤h»ÎÌÞ+ñu4ëªrw`G ξÆó0'hgŸ¡«™ÎYxu 8º%Qšûdé§•¤3'üž•µ¥E¦'QNR-•¸˜ê nmàÿZeÌãÃN„wìŠÜ13oÞ6ÜÒ_ÏÍcfe€FÌà©4a¬â´`î>·tG•|ùn•+ßGtŒ„˜ùøy,M’3x%ÜŸîbÛõJB ¢'B0(jPTQ=* •”Üu¯¸ÜZžC.8œMà±ðŠWΫr׫7‡ ¼Ã`fÊë@ÒUã1)Di_"S ñ¥Bäæ…¤ðôwW†µ9^PÊËšApú Ö Ù(6h sN¨oqKÈØÅÂí!6‡Ãv±;~a¼E«=r'Ìí®Ÿ›žÊkίÖúê9Úxõdƒ×œìàrˆ QA4”8Ís€ \Œ“‡#oš7ò«RÁÐu¯u›•¯A,eiåþþÁãpçøÑÁ¥–æòV méE¶±~•TÁ̸*#û†š•BÖ6¢Ç‘X"¸¹jÀ3ÀLÀÕKÍ"ìkz•äGyE\8²N7Ù÷’¹;Ã"/ä ¥°ÒCÎ8‘ñ™p’t§†!2âIäõb²Jñí¦%Ø‚·7Í–ròs/ʆ.xM&Ý’{nó%rÎÉä€4p '€ˆ©°d ¢ ù° pj¥„µºb?xéÚ=~™RíÆæ;¾Òú¢úVØLàJï1ÞW¡Ï”Ð’wØÏúiÚ^‹©‹\í—2·¡ôžEàMbcZ¹#ÞxC‘D1aÓBè)‹Pµ3© ¾a}™I&¢#åïïFÔÐ)h×Ì.yñ¥`hY”r(âq„Tw…em˜»‚á‰HÄ5Ú0¡Fk²èYSÌ`Žé+bM–åFg–ÍЂÎA‹¶–à »ìk%]¦_Ž«nÌœ™×â“Q2HJÉ ZQ QN\¹ÖÒË&ŠÆí` =‘NJÝf/”Îc‚2Ú|“sDÀ&è 騱½Dî¼Lo°£¾¡MŠ N,”T¸šÒÝ`›ü“€‚¶-…G"O¯ G[fœàRr‰T;òø‡¦Z[x/¿²äÅ?ž&yQžH$J¥á1çð·¬Ø¸}UNŸ¶.év? •·ë©2“å±Í .Tûq¬O`tëþe5èÃdKQý¯mZr¾êËÌkÃ-,ÈÅMýÕU5³Þ:U§^΋wk[*Ì!zVTW·ˆÝ³ª^±7ï*E˜° 5ø0ÊÃÅ.„ UpਲƒM…^ ÞI<²p9tû‰‘±8œÒ#».Ÿ«ëœ zÕ\a%Ñ‹ 1I™6{œÁ73e3*úƈYyµÓÙ>i_ì°Ý€Õ‡¥',Ú±š8Â^þ|Ÿî([‘8ª­›¦  bä+äÎN+#AÂø!@>HãüE´ yíAÜ;Þ;B0V>›`ÿ¥îYUÓñÅÎãÃÝíªªcÞ0PUm”Fµ©ØLaW ›ô~ß3'C¶ Lçý˜¦a`½žlœÃ„€(R€±³aj T²s&=æ<3fË ä¢x/ýU=íU¦µ=]ñXÙ#ûýJ¾Òð?®¥¥TAM=õ«ð±f<ŠóW·ðûš;†ÚÖ×ÈûîF4¼ÄòQïE9,ÑugšTÉÌÅÖIf¢;óe<ë R‘ÏaÍÆG K†C`SŠi`SvJ‚eï6‹e»†WÉdž¢@'¢f徨¤ùNjŸßlÄáó$b;1_g0*ØDŸ{öô†rÅlSûï¾Ò¿¶ê¦vJif ×.!ùqÓ½„ì`Ÿ$VšãeùP*´ÎŒl©+XÈÈLŲ¾Æ6`^·F §a¬`ZÁõ`Á®Ø4X h gÊÃsJéB¹SÞ;žÓeMÃ3µƒhª]’ï#ãNÀ½[#»š¼¬pU½’å¾³¦€£aí¸CÝÞùéÉšÏMŠ&ÊåÐ;$–2Ùx8ši‚ßÔRKTTA­Ën°¥9”댒J^,’öFZwIF*×”ð«¤O õ¯ÕJ6‡ù–ßRÓÕï¯jôm8ßaøêÖÒéÕ ª5|Ùº£¾!‚\5'gLTaã§¥n±ÙcÂI«Ìý$UÐ;žr‚0‡QoËU³ª?ÖÕM¸\´€?E‘QN9T÷ät ¢<³–¤¥¾Þß \IºH}i¸ª¦\í2ϦhV±ƒç˜’‡šAS@5 êìÞ`MÉué˜lmE©X¶ R蜲> PAz}¶ÅðýglÄlû¦ñõÕ­×ðÜ¡u)ò\ÒHN“ÉY”+N‡‘³®ŸSñB"™°®Ð8¡cEÑžâºß„¾òŸ×Pbך)#ÿý7/ûj• ý±ah–ì§möÚDEš‹‡Âhd•†5ÝŠ†Ì« ¨L þ¢8¢¾‚¨\CŸ*¸U˼ëÊ„£Ã¯„­.ᡵ~ž§ªï!ëÍÊè`h **\Ö\¾R%QµåûàÊ`.”æQk žÏ‹Ÿ*çj¾¾’yµ =cL°@¾W.—£uº©v Uºœ¼¹Â|>èÐÑŽØñXJ68´aÂCzÝp‡‘öÏôóD0@jõý|›F}D7½Å´î«bl‚S”¨›°ˆ<).xÃG\ÎVJ›:¶âň×û±$½¯+¸ÚÜÝhÖ4\µÉN´C3ö2²µÍÝÛ&2Õ;µ"ï“m¢Z7Ì`j•Ÿ³ÜÒî“ç·M­v½L}Úk®t=P6.M+Ѫ‹Ç§*µÓÉ=cæÖ­áœu¶‡—bËH+êðgýs`ì·Qetd8O¡ÇŒ²B¦`&¬WÞ´´…£QÃaAsS4ÁTHžH˜*{Y¹fp­u"gíy]Ôƒ±q÷‚©LgáîƒÇ[áV‡.t<š7R=ÕêzšÃü£Â¯Ôà„UÉ“å¦:¬8£"’â,ÎÅôàªûœ±DÏyMÒpY€/²os#ëFjlKlµ2Ú]WZÈKi²TTLKg’飿D“ZÓ¥=G¼&%‰)]t…iŸ'z­a§s2¿¥ö±wK¯ß\_ND+O»LÓÄl»• ”úˆö£Ð-m£8ù;\à/^{âáå’Ç•'°+VÔuãƒõ°±ÞxåçÂ4…xÇ!äóÎÿÏÞ›.¶m%ë¢ç7ž‘Ô™PÔà!i ´e[I´ÛÓ±ìNúÚ$BÚÁ¤emµöûœ×¸Ov뫪5 $ÇvNö=­Þ;–€…5VÕª¹è嬌jñl¯76ÖÞ® ªÌmŽÙ~‰ 3v6M'i© ®2â6YuÜî)$ 7•ÓÒÐó±Ìß"ß%Àeò”Ø–5»K¼œW¾go#|ªe¸É‘i…-Öפ¸Ñë{³ÐЙkˆ (™#ËԘ N^º¼ÿ|÷áÞ{ãýWÏŸ?{ñ’à­âMÒaýï²|´¼ö׿Þ]^[_^½-nfRe¬gG3v®òd6-¯:¯l¸ û{÷¼¾å¶TfqšÍÙs]©ç¼è[Sí¾K3)߀!1t¬Klâö¯Ð ú@îa{*r+_wUÜ]»+†X׈Ý]h»œ¸”Ì7 SÄ(eÊì;fó;w=\`®°¬.1ŸãîUùè=L³ÖQ‡=%0Üð<²qíV«qÕø‹¥i“ w|Ÿ 8é$šƒ1rZº×N Gp‹©:3¯ò9‘aCL¬ÄÔ[ëpz‡É]{˜ëwîÐ,?Úy®ãG¡S<ËX³øÈ†ÄH‰`[`•Å©Cð&`…U+è,¸S/#Õ˜Ðï¬øã}"HÌPÕÑ —øíÀFãÜRx¿ R¼˜KîÅ¡œqÐ0WÎÈ`˜˜K‹U‡êçÚ«ŠíóêÎFŒÏ¨Ô³öbˆäpš/,¼ËqŽówFU=L ¶ §ñ«§{¿[yʆ .¬•žªkda\g“‹W>jƒø6{‡Y›ýlÔW#»²¼WE ï~6ÎF YZ¢Àû\B¯ryr~Ù©õâ`§XFGX(®a·Ÿ¦#D5©óê–±ƒâÌäÓhùݲpŸ„‡Ä°ôǸ*Ôs•pXïïm¡&Å´?–=Zä¼<õfHg5œYõïëÙô»ß‡´ç,-#ãtoÂci"„ùñȨۭ²óT#‰­çˆk³ºøpè QHP¼úDÉÖòo cÏ`m4þ"£WBt†(ÿi(Sç“–0”Ø´²s|P n‚ݲ7óñÛżjÿÝE}÷ãuyê_p.)˜»ey¡ó[jŽŠâ¾–råT*VU›šÕÐéîm2öxl.1Ê–°4Ù•¾'x F©)bؗ¨cUVK#í”SoÖè”.Œª&ìSê)(2>«‹ðáòÔ»,ñìX$5‘[ÌÓŠm•¸r0îÒ~ŽR.?×ë^²$J^O¶; t»ãŠ*g3ÞæUÈ(|þ¶xgȺzkFÆW·hþ Y5F#0C’U£ä§¾€/*Ÿ~õ8UZÆÌ´®®]Ë¥ª’M`Ó$V”ÅxU û¤ƒ€UEyN+dóeaùQârÆž  ˆîïõHøMÈnº×^ m4.<6\O¿¿ÝmæÈH¹òø è¼ôùùÉR3EúdeE™{`‰?ätB5O%J_¡²Œ×þÚ]ãî×ïD žkÐÊ_³K4Ò Pª <ç@'óñ Q?‚Byé„"Ýç8ºa·‘ž”ì¹l.ž†[[:úÏ})ù¿J¦v' —æNo¸g® ?n¤i6$ÆúzÚ«í>öJGŸL{§£[ëß­*˜›ì`mOÍ™‰‚I—¢Âäú¸V9í=xöst4ÑàãkÀ#òÊò¤™€•â!èqWÓJd’©ÑM™Tô÷Ùt_˜rÍ&#C¹À‘3­)1`ÙÌH­Ýv”*š»%^QK3j Ã×üpVH“¹ò·’QÉyæ ps)HdšˆáñR4FFƳ/—÷˜¶oBY±,‰áW«¦žÀek8.Àh6.t½¯èéGG’.—‹’«w›d¬0qÙO]Èm`óÔÙ©ÕEk §Ágq š§#¹\½oVh_–]\S¯’À8Àoäg4µʦوx%OÅE— #_¥WMÑäMŽÑ¤S›?=Lú/VÙ÷ëȧª û`+/,?Äà <Ùè¹í5âm©jTSKî›åŠâ]ôTrAÄ-ÔL/%/LõÎæ»yíûï8=IMiA>bÇæÚñÕ§×3üf¦“ÔâtKóß<@N(BmÒyðÔfGõssÌÆ~¿÷dzƒa^B¹–Ž×¬ÏB?Ž[Àël÷¼9¤Ûd:9—O"«À.§=­Ògš—åŒU‡F¯Åï”SÓ´ƒÑÒ²Ÿ¥£ú9ù <&zÐ|J’ð5Líûlï‘=“¨~&«Ì/áB•o=TôS}Ú8hü1 °š–¡ûÿ `NgîáÆÍ‡‹*.e©…lα¢™rÍ©îû°J+Æ—ÚD&AJCŒºÐ„%µh$ëi¢‡²G=ýaïÇW/v~7þû΋=äm®ÅVÒhGùñLUðÆïÖý£!o]|Rœ í¶¹ø°‹”2ø•7)²{n9Xâ» 0 vˆ>¢¥”X¤Ù#VZÉÍêå@“X¼™üÄ~Õ·à, 96ü}‰Ž†Ã³¿’h›IáT°nVìomÏE6·h4-¸-?§K®¾çÜ5ë÷=¬ƒ \±›yy®˜$r³Ú*ia-¢¤2­x!Nª-!ÛÆEjÕtå`¡­Y¹··{q욣Ñõ_·„혫ˆ|Úæ¥ ]ž†"ÃûµÛøxÖ€ÛÖ±ìx„ˆZ;´ ÝîBdÃý¬/¤¨M»jNïêÁ«Çeò&ßø¼¢9çÕí®ÈÿÝtƒ—îÓ¦ók*Õ\;½O›€ íßUš\<î<wÚ]̰Ç**zfOn½Ëηù£ž†i\ a¯8OZ«‘ʯ~º8ÉDi ÒÄiÔ!˘Å~›!½ê†OCñÌš¿‰¢W¥0—ÇÙ‡±GI™k\Z³®ù~šØÒðËœY,̹F‹3™\€eZbˆdQÞ¤&”*‡AñÝéÐ1 ”yä ¼…)A˜e;6p>wdŒ¤ÞÄb¯âòÒp~?íÆ»¹4´Òêv»íÔ×à2S c"-–Ö8¼ÛtncULV¸Ø”wi›Ä£;×Ö¿»ÝxýÎx Û4vGö+ªd…U*ˆÙÂ{É7³.*Õýu©Š%¡RF·%,_½üáûøh˜KbS)@”—}üÒ6­ÕÙ[£ÜŒ3¸ûTóœêÃåïµ6m-=«Y7BÙ£HÛºÔ~¿ðÇ5]?¦Ó-¯ÙN[({kæ5õ»¾ÀC \T»æ´ í › p«"ÔóûDhD+ðóÞËŸâ»?îþò<Šv$z¨lùûÌ2XÂüv*—[Ëto±fÃtBô<@é)~I“y^b êÍÚø‡ŽTD X;R ÓÄÛ‘+^}ú¯Ö½Öë_7Vî-¾ý¶Êp÷ˆÜÑ<ø¦Í•âø7zþèÓ{\)«}ï_›AtÔþx˜Om`”ÍËÍ+6Ù_hì~‰vt—¥’º8ˆ’ÂmšË§½¿»ï<Þ©G;Æëíg"ˆ÷qO¼à©N%MoÇô!ó´¯ÊhR$"ö¢È°MWVa(QT`d—Uõ±Ïª†…NôVæI¹ü8£#ùF_ÎüþŒØ)bgvŒLrkýë÷_o òæËjpëݬ} "W>9»ÅìˆÝ“¦¶Òóêçÿx±÷ãO/‘Œv|ηæygy}uõ¯ñyI‡´“²ßRðžV7™æÿŃŸ“„ ‹›ð1+ùÁ¾,ަ$`e›–Ùœd¨Ç ±9«XW@¾ Î#dn 2/0ɸÙ_…‘S’=8PÙyõò§g/öã•xçáßž>ûùñì>}¹_©ÍQªuQ3¸+ìóܳ8ª·êHŠïÂÁ …™’?A\Liàà†f`šøã‡[¾%F ÔèœÆºs®„‹xöI^¦èáVp‚=$¬ÖØ3°Â¨Z8Dg p^ƒìjÿ”ÒÜo,ò™z8â^7ñ‡Æ¦.Ù|è?ïŠWjŒŠGѤ8˜q£ÔX›d{Πª„ªÌF¥Æ_æSÎu Óùa:ž¢ œœ™µT¹¢­AúCŠ£›ºs¸qÐ=òq‰ýßÄÞí};anò®q¿µ¬vu‰fÅs3¿Çn_â[h_×ÖHˆv-ùiÝÛ˜¸òát8*W\ó8ž×Ôî9+L à%AbgŽ0G@ÁìHK¸¤3‘=¿’ÿHß§IÓ˜Ë( /ÊhqùÓåžWàgê“õ;Ù™§ÜWxì1°ª‚%!°Æ§Mw¨úY*´°PU'´ÄY¶ã×ú?k‚"AŠÚ»×¯!j¯bÉÆß Ÿ-0mhƒàjzô—ÙAëG áÀ·öÑÛ·Ú³$MÓƒù˜ZkµÚÑþ=lmÚ-iD t­¾«)ä±Û˽׼uoé—UüÇ-•þº`L¸„îÌ"N~dÐ6;”sz‹¯\Ã#bm†}’ë‹ uè)Pæµ ûô–[éµ"ûÈ.“˜×¯ß$ìÖP´JŸ¼*z<¯Cû>PpáQx¥ÐçA¼ÏFÀ¡rÙŠPc#ÍÄ÷ÁRÔ‚èmû3’<Ð 3Â{d`iñ"L@ßêŸpdzò¤¯Â+o'H¾da–"$V°ÕÀØ)ÄÏ·•þøWî(Æ÷«»Úi ²ÁO<,¯á¿J:XðsÿåbN…¹$òzu?¯¯èíŸ2Šq^Úài1æú³æÜ ƒN¿ x¸I\ ƒ<‹“—“sÛ|f4' @ú01õ•k÷$ˆ&%yõõŸðœÑèI¦7•>B¾k~h4 &„s×}ÆS §P=¨8®³HÚ²þB⇼üQªñÖV‚ßwŸý¼óâ©=A{¯i—Dï›n[á¹´ZÍ8êòS=' ™ºÂ*&Ó´eŒ]AÕ 0Z’4vƒ+Û¨jô, /1½{7z,×2wÂiÄðf&~Ð-[¶cT˜¸Ý2Nf#Ö÷HMÞÄ͆°»Âé0}¿ìï(³2†g$-@ÓæQ¿¶Y©ºKÈE`8K¿%y2L…Úœ'¡}Ó,xfµ94ö?*nºÝ…Í„ÙÊR¬5XŠW9$•`çCkxhö¸Ý1}ló-ö“ù‡T³ZšéT§Z‚¯¾ÌÀýñZ¯0óþ>LG0å„Pè€:ðsÇv×|Qc8a‹A“Æ5 dÕæìéž[kÕç¼níkÛöäKo¿ýv³öÉ~Gj²vvÖk.r8™ ¶ùqvÙÀ‰çª5ûÛuÕº \m6 ñQ3n<ýF®É'Ý—Ò®q`íOåÁHå]z%êÆ¤CKnÿØËÆ«_µkî/¶±óJP ·­¥w¥÷DLÄZe7‚Êå/øÓ›%8:ßÏx Õ®ë§0 ž+Ð+oÑ„Ûà/|úÜôÝï#8fb­xiŠîâm«»Ž{ySŒvÌ@¸í¾r+„—€~Á{ª&*© þùÍÈ^´üÏ ç,<Èï[Ð fÄO}äöþé°á8›úL;g\‹[º<ŠÓ¶¹’¥ºÉqŽŠ5¨#ðù0Æ †´Á ~³Ÿe×ÅÂç²ï[$OŠa&Õ;9ÿ ;LÁÁ/)“ÊCÚ Ç$óçÈÍv\ѱ³ü’‰â”ªGi> 𸉄Æ> ½‰ÐWôŠ+õ0CŒ´ ,¡NàO _zC2„i=Q{ýÖx)ÞÄt“¹ÚëÍ”1UÁОšveHÐÈGÿÒœ?|v°õl®ÛîËAA8•ÿÃp°öÙà`íO ­¥Qiõ}ôË“n;ë\šwÄçÕf ¼”EG¦ˆkÜU V¸jÃBq¯'&éŒ_up~š/®œ.È‹†,iÜ•×Ëg„ÁÊ2¿ÀeƲhÓ^ˇ"«NOÇ}ûØãà¼QñÊÆŠ¹_:ñ­0þrÞÏV| º*Öìì$üëÂwoC{Z°2ü¨0ì¨YËálÒ?MÇžÂÝg™œZÉÓ*µ¼‰×iV³)e_ lëtÜ‹E>j­LÌÊ…´n‡sݰVK/ãøž²«vWè¬ýEW0k3<£ë¦Â'ºS»¬*õ=ƒ…kštù¦É0ܳ2ÁùsÐñ›Í´"9]êh¹§ˆ¹½ ¥\ ¸3ÐQ02Í«‘e” 1 U{ÅeÀÞσù?K„H‹þ?±Ðw}gN·(÷!ÞH^æRY˜ßÎ[°i|–˜V|Œðà¿âÓ•_ß\ 9Ý›ËÖë_/ß~Û^Z ¥¥5:€õϸ÷Ÿmóá4ª¡AZö3uýM£§òÆÌaÕ/Äþ a€ï†´9ÿób\ûZ>wn*ó¿VtR Ûû:´\ܰƒ¬œ×"(çuA÷]8¾éÂ)ënð±»þñ5c?RŠâº1Ÿ×ô@WöMJøcúaeßÜó–ó©ÜàþùyíµŸïŠØòÔðîs_ ¹¶›ÃÏ<•kÐurÄWtÚñLžÊ!5•ùýXÛ™è§jTÛüldºê|ú‘ÿÕù_øQq8³Érc<ú˜ÿ¡—Oÿ¡em‹AS„ôÇEh˜‚#ìzÛ1íB¦ë±rUŒ¨ä\mù¡™÷[œçìÅÒÅr/¤‹øÄù–Ñg[ÝU‹´ü»&õD¼º²åº´\oËp6"«å³šd’Ž˧‰˜dkÝÕ®Ãñn—0ZhÊÕ¡PÝØ”®A"ÌÆ[Žvz<&Ù"œ)ÝÁ¨Ö0 wQGÑ ¾ÙËÆ¸“Ñâ²XS˘þ¦Í+#ä‘Á.3´1È›BmÓɹ ˜aN‡ónà+^±!Ù >ÃfÖ]8w¢…*æ—\ù\ˆQáìù4Ü3>Z8Ý0,f7\Yu>æ NZ„ì˜%T£]"3&mÐ%3r®aHj#aŒ|ìœAPRòÐô"™s”^ﮆ¥R¯ƒ,’`¬÷ó:JVÌ®š×7íš–ol†²Ê¸U¡ˆ'ö-KÎÕ˜Å~<ÝØA)×n«Œæì ‹|ú­r,}ÌDÒ˜Ïz’c8‰âiªy¼„´ÁÒÛ몙±Ñ›;:Ÿ¤çzoËÜÂuø£ï@Kšc©jˆ&yšgP›'Qs?T4xïPš••F…ó|§cÚ6æãLÒŸP|-ÓÚò!¸A›„m :Ýu¡QòÌ&9âšGP*x™ÌJaq”š$šp8õ™"¯Cß3'ʪ bÀ4?,i,S;/2­QÅt«™¢•®ˆ-­pÅux©ªf}ŠaÒ í‹è¸L¶¨Š–@©¸M±Eô+²%]Gðär3èÝ7”—o·) YøO&*’ë)§âRŒ¦R3 ê¥Î'‚|FžvnâV²8E¹ Ž#P^ Í¶®Bˆ/_ž2ýbÂɊȦ3:VËC‚wœ•MJœy8y5:ž@dúRï~¹Ètxéë¿x^­´ú·.ô=ùï±y¬^Ó?¥¯ž+ «íÒÑhýZËgE|<,\AP©ì>ð¯5¢=,4¾DæQSÎðÀe+™ƒQaIÔ,ÕšÐYZæ¢G7zxO-« Xj¿ZŵÌ÷LÓÃR'¢“™&Q$4ÉšÍIݶ9c8ÇouÔŸ·lÒ¤ž¨3Yå+¡[»2Y·¡ßy½^Ùg=cY­båËgža‘Œ6¢ÛÈJ¤S^fuÖ)tgRVb̈ ëêöòãuâ†üxZznXHmòœEyf <8WEgò¦:AG´{IfgÇÇ45W·Žï'¤v„ÖT+Å]•N³uØŽi—×P¶ðNÕ¯9mf\©Výžj…ó²fFóªºü¡¿¸·ô/µ%þR“kþ)²kþùšò„ò9Çø˜úOk·¾Cý¯;wïþ»þÓñ3çü?Wé'þ¹ºþÓúú*ý±¶v÷=½»zëêqý·çýò?‹ñÒÞ`©’™• ¡T-Ïèý½ýøþî/(¦Ôö7h ü O«Ý¿þ5Ñ~v…¯˜Äp$áï¶ãVbž²ÜuDïhg•‰ÿ¡‰¹®¶ö÷C>Ì66P=€9}j>È'êÇàÞï“hÁ#âÑþùéA1DÓãlTžŸ¶½jU´`süÂàzŽÏâEºÓjî™ÃÊóéyTÉݺób÷EÿÑî˽ÇûðZ®iâë|”/lV>òV‡”1¡kš¹ت²ùÇKÇ™” •œ°n_®íä½mŠ©Àµ üǨϼí¤t^õ‘,Ú¾˜¦ïÔhT[TŒ‚ÒP»ØZç8 ©eO[-ŠhvÂZ>2bwñ®ŒYíÆ?@'ÃF¨çωb ^¿ ¾€µÊµp›ì#®?•qpŸqz„œ›ÏW~]ò¿ó:8‘Ò%A¨÷Ù›×4WŽÆ(¿yó–:©†IF.9•N|‹÷w/^Z‹+IÇFês+?—M“ÉÕÕÈdÄÉzçæDÓ¹‡ùÜÛÖ¹-­Tg%!û-WS¶yóN’ê¼Ã }Kò âÆ.~P*y‰JX”u}Þº€–\:æœE;Û¼æjAÅ ð÷"‡,ß0üfÔëõÜÚ”Fn aHÓ‹JŠž7¢ÞB9’ “Òÿ:h$Ò†  ;ñûÔÇ7 Ò°/¾{­øä‰òîרŸMø´Ü»Ì\Jâ'ÈÿT]_3YŒyÑé`ðçYñ"Ý“rʺúDJQžø·Y†+Va^2P·wBú¬“fª¿]Ù- þ š€Þml¬¼YY9nxÝÝŽèb^°»*[ý6Þ…a&\x¹§V³lÐ7ؙ̆ÃßiÛ'k•“–æÄ˜sZ&¾ú¥«¸eGN:$Èñ(‡¶ý° :õ$öl¦Âu6§CxŸžÃ[’T;ÖulUÁwܪ—¥ðxj)é.åÜÿnÕ •ž~û­?kGùí–{¯—òJÊÌ¥±Å ÎðBk5ª”g·”× •éÎå\)‚mDñaÖªL¼Ãí\Ô;~„Î×Úq̈6Î0v÷K"Çë´;e2ÅÖCâ}¦C@ôåOõº x¸×Ì6•©¥ˆ×çOâ‰_>žÏý:¾W0üc™[éåð„à$^½{ûvGz’Çt—ç£w-~R¯Îg;{¡Çß,´ãýˇŸ0–+{°ÿÚÑMú•¡)>Bã*œÇ;ÉIÆD^;à\¿~oï2¢â&ñÖØ'µ¨k¯kþ ,¤ôô²á¢¯|\ÍnX}%›?„« =¼’…Wqãj0\Œq¬;‰äc’ÊmÖ`ÂÉlÄά¢h™•ÓŸPI²æ•eÀÕœKK»Oÿ~ñÓ΋§»ûûý‡/÷þ¾+‰Tº’žµ5ør¼/ƨçâÌ„ ŒWFŸ±¾‰ËÄýq>}O.uwš­“ËÒXp­F‘¶2ØZ;ˆ|ùÍÝý­ßZuÝB»ÓÐCÀ2üP ÂáU;m?ej{)ƒn|*ƒù7F‚øÔ#…v¥V9»Õ˜º¸A‡38‘3˜dRuŽZ•æÖVo}SM°n“ü=ÓIԌԔi|$J±H`îÈ:+à+X½ YÚfè”'I—çå4;uFœWû{OŒw8æC©’Øït,™8Ö;GCGböåÝâ2ïÒA»Yh!å0ç8‡2CZ±€†›úFôxkÎX½nüSqÆtÜø 3¢©w¬ðl³qd|'NÓÑ ^œlÅ ÀAfyH1*Æe^nTQ 2æfíõ/ÿø~¢cfžy"z¨à·’Ø’¶i<šcjýd:ìÙÎ%ÒÒÆUÁsqá¨(ºN‡ .†Ê5÷ÞÖÂ5ZéѼõl ”º {O÷X…îÕMeÑNŒXÕ “’£™¶0WàÛZ ;@ –³ôÜÎ^üu§pjÙ/–ö‚ºßë•¿‰w·ØTÝÕù²(Á¬¸=!xÁ|»Ï3ñú\œyØR¨ÛíêoÏ_ì¾ØýŸýçO@M.âÄtžpg†PLjk/öän„3Ö³'ÿp`y8ÉÇSà-÷ö_=ß}a?¯å;»¦¯¦„ÿ?áô§ã©Ù×…G…a|'jF™{Ää'ÿHLn'ÖÛ¯äŽÅµƒ¬o–±±‹>Ï{°´f`¬_¦ú‚9N™iúénÇ[[Ìû/w?^Pþ«þa¼AßLßܳԢxÜŽ—Ÿ8–‘Dƒ9¬5Ùn·«¬Ò‚ ¥#7hºd‚˜Ñ¥ äů H±O¢°ÌL&rT 7ã ©4µZØÚXE Ö§…ËX›ZÕç&Ýiö(Á± ‹ã£ck^1‡Ìk~œ€C>aœÓÍÒ¢ÐÞ{¥¤?J„_1ñˆ†q®æªÐ˜»Æuq€BöÓ‘Ãvø3m ò¿ˆUO7~_&v“×<]ñ$\%‰@ž²YÄo\ü˜Å,Ëé@ìÀq<Øýqï)‘šðHœ©¸¼&_U(¨pHzÝol<ÊfÇ;t-gÿäüïm›ñN¢ –ªüÐsEämG®Ü—œ;Vr÷Y,oâÀš'éqc$+“XíóW¾dó lšt,j–{y™¶šÖÕt}5Fnšƒ‘«ÍœDbâ½G—p¡˜ÌKnˆ2¡˜÷Ið{`c3½ÛUÙGúD¢ÃL5w`Â$)ý˜UË#¶TÜË~›e¥c3?Ür&öž†D;{yO±'¬"ÂK#Ò!;]kjnõ…”G13¨ÿEô>OãàÐj|þUÎ ª\Qè @°°dCeÁΨT½1®iØ0 ‰î+=OB5ÞÕ5Ýä  Ë+þq‚{êÉáã,%ÚxŒ¿Nm!î(z¦ÆGâ"¦Bvi§ž¤Ó)q“cúŒÀƒd‚éýRÿ”/ÿ–㟈zNAsßÈo÷§]7‡4ôi wÊx\ÚU<Þ{¸ût×Å[>Œˆ°­Y¥][ñ»ê»ØÌ^pòC~¨ä!Ÿ«æ ”Q•ÐôLjKÄ.ëÑ™m¥]X[]ýK4žiú‘nØÇî‡Ãl,(N¼¤­™y3¾Cø·kåÿß~ýÿX+ôù\@?ÆÿóÎÚ]øÿݺ{çßþŸÄÏüóÿ|. Wú®wçöÚwD£îÞ]½sçÖÚ;:ÿïn}÷oÿÏ?â‡ý?7b{ä÷ñZ÷ö*¢¾[Yý~eíÍÆ­»·¿×[¾œqÍc”¿ßl4 ˆ1`9ÞMËsVTCzUVo¬±)±øD°ðàüsÏE™á ç,5vè]>j½FNõMœh¶ÞÛøu'ÞÒ:½·mï[®pŽoIo[ž ·Zóg?‚®˜äÄò ¾<ϙÛgøÁ,ø•°p&íOm)Ô~¹÷)ë1\½¨zdeìƒñþ«ç`Ò„H°^<¦5&HØò² v|zxÂn4à8ðp£ñpÀånˆû0dFyùbïáËøÉ³G» N#hØ ",Æ"ëÓ#ø «½Éµ†›h íG*Ùø1ÔÆQ‚nŸXèÝ;ª%+@iüy $8eGÔ¹k¾ÎÓÉx32'jü”‘§kñ³þд±¥hÓ-F×û\{¾×ñò9ï¾x±û¨/Êcv©Fãð‡]«Ízà‹­]U›0è)R¸f)hF°Ö§vøGÚ‰úý%ëݵïIz®M2öüŽºû|O ˆ“/WåÅý¿Áøl<ݹ±ßeçœßû]–'EÁIç3l3ñè£)Ì·£í ¯ÿSféäðdœNO¤É1q˜žH Í `J›0kMTÎíìxRÌÆ$0#=É´,-¤ÓÔ¨ Þ#~}:qs;’@õ¼ÔX6ýó?õO®Ï©iƒ z6›Îß ›ï 𳮋N¡Œªc"4*2–¢ÂÍù˜1»1*P—‹ƒ1å×QQlÎíÍ.Æä;•¹˜m dú[vŽ°ÏØn¯kÎÔ `F­^ÐMP(µú ”ؽ}(E]é[Ý9×â—Ó!bcûýÖ=Ð]Í µ¬uWäS `HͶ“ó¬LîõtžK’õjd‚h E® wLd܃tÐ'dA¡Â/<¹Hâ®×[7N.“Mî’è¡ÓrýMôHØÆ* P­Aȱ4æžó h¨Wú$;Ý?!¹ú!£¢@dOñqˆú\_|¹þd×\ýÃ/N¼Ñ…ìsÚ¹RðCòpq¶_n¨ù+$‘Ï€ÁÕ"”ëéóazÓ*RŽ?Ñ}<é+7ÒJòQâ9ÿKm¯ÆÍ¾h´d¢|Éxf¾š×B ûªÕ_Nt\}ó šÏ%[`ôzyixˇìÖ ,H›Iß*[§_é‡[[Ohßqº¤ÈéWZ>ñ¼§ÑZ©/É&üºG¹>K)ÒϦ×V˜)íU¿t‹µ±Êo,1ÿ„™‹¬ ’§9“îfùpЗ´8ýé$ vQػ͛ìDÓšØ}]Õðér®ïMw{k›€`†+¼t,/Ḏ-eúLtWFO>#žøœò½SøÚB°Dp­ M¡Æ÷Hô¾Ð„²­z²Ð¾Œ7℘(»ñE‹éSæÜ*lya€q¿¿ ʇTµgz-Š“ët–z#|Ìyê®1;`½UÅ5Q^UŽYÛ¶£Öþ>–àÞp÷ùPuˆ{ö·øþú¥ŽÆKÃ% §cR¹zîdü;8_¾+,ë&.ÍörhI(…žN;®J,渚îŸÊ©¹-7*î0¡†Š¼­¥}Ð1Þt}&ZÊ>LÛ6ÜÈ|µ±±xî­¥U’_Þt_ÿú¦ûöÛÄ\Lpà'ݨ5#@ºh×Þ^~iTöV(g÷ÒW °{¨C%åçDó}Æå,Ÿr?bÁ–3èð°HÇG]1Ãб£ÔÙ·PZ_M…€ä%ƒL9=§Ž8Ñ¢:­rvzJg®N¡¬£Ðì®4“Ùȶ]§]i‹xì›ñ”@ÈÄö *wÎÀ=òMkâZËV&’B˜Mî +šXåÜó/%m#6mÝÔeþƒ£b°WÅäg‹äÃJJ®½Ì ‚ÔìÃ!ía»BêÔ@Ì–Ekž‚>•ì^Èk匡ÖѰjdç_QkÚÊÀÕïœR¬©G„0Òúûû{HšÓ¯pÿë_q’­îœZ/Px[˜„Ry«FYfSOIOÞ0L‡'¥›à¾ÏÀÎ/›ñ¥å¢~F.%$­– #ö4œæC:¬3î}šN<ïg1~Z8”[ŽàÖ\€—·&«©m®ë|ÑðÊAì!¸B0˜‡çÆVƒš-ónô°.M‡w™‰-øÊ”OÞÕ+ü¹ëgÛ¸f{Ë•.‡I›ðSsõ Cim–pU|¿5° (Ûû5ˆ¹« ¢‡úam—a ¿þ:þ&JX×v5 $ÚË!ÏQs5|h´dõo=îË.üº®}°¹ÑÍí_P’yÀ^R’ÍÛGá¾möê¡r£»Ôiìl®vö™ ÜõL‹` ™ÔBž°5h"ÚÞÚ?3ýö T£ûëÏmÉi¡´b_ýlÉ(¾‘v?ƒÞŸÆ?=߯ÈA«­øïQCYèæµ„ðrÓ£†¾¹ÌPËÁh:q#8ñGrfúJÈx.X­Ða:Ç ‰yžÕ¿+ oVCõÁ•çjÃÌ>3rHćڠäsŽ'——íQ‘E‡¥ –†ºÄö¦¨ ‘Q}f¦¤àA|¶B<].¡Þ)£æoÿ‡½Ç»~¶óŒd½­ÄWláj•cøí77$ÝBK_Sdmzµ!83B+xXµuÕ; HÐN||ý`IWx¥=ÆñÀ7{å£÷Å;v÷×¶#|–©­’5¸š¾`Pcõ-Ú7ªXoí³ø88!›ÀˆóèÁd Ø3õÍ'Áä©ÌÜ7æã*¤$ê1ùû“ý„³ÕüúÌÀmm#ÌÄí ›à€3ö„Ñœœ©ëˆc4,¹#lf"”à"®d9ž'é «L ÿ]ÿÚyüÅZôßPþ“<{¯ …ŽÞ½°¨¯ðª¡ëëÙˆï3¹‘´57Òšj\ÄhŒ3VQ²3 ßUlª¡§aaU˜­+óV¿\µ¼‹Ë“êQ†ï[tóO[^“ö뿾{±>·]ãñ§¢ƒª¼šB©WÃyú“kÀ‰Ú‡ ÍW~ýe!¹~BÊ”MÒQ ?\e}Ô§ 8REE\ìßÖp¯}•Š+ÁñNœtñ’X¥Ù‘Öi‘ˆVñ-æôc ð³M¢­å,ÌÖ–P…X·©Ž¾úÐú_qyÑzƒÞÛ÷–./xj—ô¹¶àEuš–ðÉ3çáØVsNÔi*€ôLKV?BãÀ…&¤°u'Žkn,3üÍo¬¥À‹ðÂ6õzš²ôû·È62kÜE_ÕdÓ{;$û#ßšl_ÀœÅUøÁ¥?Þî‡é¹lLŒXì˜(ûnÃlá†óvÒšAƒQë>ÒR‚ àßÖ_0›H^ÆÛÛñš§ºUW'ú‡º„ xIô¦Ϯ i&ÎþÞÚÖWÐjÆÄ]:(I‡1É´ ˜¿Í¦^§“<Ë©fZâ< [.·ô<ç͆•ÄóÊl>¬ŸvöJÚ¡ƒ½a;Ú¶zK;ra÷Àx°µÜžâ³ ½Q›ë;leÿ2hÛ=î_ꈮå¦mælÚµâÁ÷¯+=Äoë}\z'£8ÒBß™õ‰¡³IT­‡a†\éäÜ£ý”ˆ%ø˜’'ðÖЕVLûÓZcã¤6çä:87t2 Ó¦ñÆ™ãW§¡dðÃ)T[¡j›т†7]¡›u‘i—<‰ùcnäØël~ksF `Šl·ÉŸ=H$Òà+¯ÁaªépÎûš€U±ÿ9[烈_®‘¥û\Ràþf!ŽË>:AT¢…­jÏ7ܨ&÷Ù«—Ö·’Õ¸ô€fÙ£‹daþ.„Ù|õ‚“œ¿ó÷YSûÊ7ùè”Y‡Û 6ß'âÐI¬Îv|§»ºú½˜äÊ¥¦'VŸ¼À/‚~EOìVe¨Z# ÒØÃæ‹LsN}„ÐÃtþ©Zë‡_è”­å³fQ³'Ú¬Þá÷_Ð…Ûpt¾£1ü|ÝA!)k±7Ý8~€w& P{”jÍ‘I~oÝ-˜“+ËDáP£¸é­ä>4¾LÒ‡º:9Ó^— ¥r5ßΖdqÂ?á/÷ެŠiÇ%Þ•·3©¨\ü{­œ[¢ÑªA•jKAž"o‘ ·½ZaS»TÏb˜e&?„ÛàÒ°‰–‹ rpˆŒ­âKìªá©ædsG×M-†ŽÎeÕgc»üš\ä'öP3{ú¦!MŽÉ‚§DÛ87€å­Cð‰ç8˜Ù\è£j|Ë#›Sêp˜ŽàÎÇáü¦¤nTú3î„Ü+¸Ú<ƒûÍး'½?p¯é;ôÿö™HÈiž®ÁƒÆàJ‡D!$×z#Bg£ù¡’Ï>)D2 kôãÙ5Ÿ Oå# nKzŒþQõpG핞€ÏªÇ:Ê™<‚r&QÝE‡îª£m…™´ãµkj©Ì$¡y­[©Q•— |§ëÁãLÂö!7àó‹„Ï$ì‘Ü“Š"uiBP DÆÑ6œ³åóªK³>XóÚÙIû↸WW²µÝÖ[ûùÖ&›Ÿ9”°ÉêS ÷šÅîêÛm?pßg(ÃpI.ƒ°±Ú[ ×úu™§^Ö¶!h/­mV_‹cPzLÔ:¨A2o§*i ìr1Ì%á–ÕüZ±Û½Ð¤—æHæ~¶:Xjã›8¥a–Žfc±ÐÊ­£—¾)rÍÂ}i²´øáù|W •Yÿz£Úy/E4«?~Ûp&áÞU;yH*zp$0û•7; 4ªœ†¶öf¤OÞšý¯öl;è+aí·ź´5´qN€WØôwvY²m‹üØdÒpÃ|±`É!äêæ ÁI†kWXú&„õœc„…[’Y€øëü,þHˆ#òÙð…D˜{ºMáG_ÑÓ¥C@7èH’ÛCI.šÎhR¶€êß®C\o‚r 2â˜.\&šKMUzhX¸Ivœ}è8½sÝ>Ž4ÿ0;bý©aèè×ÕFZçÒ® ÏõL__`ôqRÃ&Âìú-6ÝdÕÓù xŸõY©»[hõ>õEu¯uÃÍN÷“¹}̘¦Çñ¼ŽÜ ¨Õœ½‘)DÔ0]¨Mø49l…ºÙô¾óņ²t½¡ï.©vª˜jÝ6nÍjϨºƒ6}Öjz|/^‹7è–¨Ëéž#kJ®ù&ÞÝš§…jó]ä ~ÀÀ;Øzç«IKM Üm«x ÏßË\5a«fZª¡ª£†ÏWüäÎB5­QÕ AxÚˆ¨Þ{ãljÀ;)šUjjO‘sÝ;YY0#¹²Kw‘O£*¬Ø…C…þ—‹ÊÓKM"?ÞHĸ¼Ï&ÓØd¨âгä·x–xpËÕØöuœpã}•ÄoãËØç#r64¼{mŽíRWZ¯²á¥–À|óí¿–Û÷š‹_Îûäp½·–Öò€îûífðñÇ€¾ùÑr£ DT ›sÚ_Ex2*ߙ̩™ðÐ:k£)‚nÑˬOÀ?“ Q(ZÜÍ!êB؃O¯¡†¢Œžsr\Éû)g gˆ Ñ:JO7„) Ê{íÆÑ®!™¸gêPO{¿Vóü¼«kÿ›©¬‡p¯kÏ®`WCèº1Õãúx ÌÓOËööZbjS¼Ý„œ6ÒJ×îÆkÐÈlT›áîù„ÆVb_3ć ÃJªCÇ—Á=ÈÂ%yœ.q ñϲ|Â}6¡^EÌpÏ+J¢½á0;¦]–æsým_R[{²Ë+Çñqº¹†A×àŸªñ£:¬5Ø)Ñ¿R5tQûÜ“7leNU˜YÍ·¨é@D{b—C”ßp‰™_%wî§Ç?aó0^Z/UÅÈþ¬£¹DsÉÄ)-}³=SÛKÕäm”kU³lÎ?¨¿›®>¨©Ó ‡@.ÁMc«£w}‘·+7·ûè2¶ò¾ÚQl Eœk:56ô/j–ó¤ÌµJ¨A¢ÛàiÔSƒu1qé9W˜N‘ܲ”oÅËœ ®ð'áØU÷÷¨žÒÑlˆRpÓ‰ö~sѾM9vεGuß)X×ÕêruƒöŸÝ­DŸsšª[Y4?Ö¿úTÙfðÂíð+‡ã_ø¯ÕQ—ÂX,ޱ^TážQ÷2°æ|\ô«e#Ij ü=u»l:kPÎcÒ誢èàg$Ìy[c9iÝH:'ݱÆ2ªx×ñÆ f¦ßºÙ™5¿wÄ%áÄç²È+&3‹eO,8Ôò6c‚îíWáZ.n°U–Ò`’ÍSàÛsCÚ9Rb²¯ØÀM¥ÂÑÜ…NüÏ‚°*Ù€’?•/íDhƒ×¯C÷8 øÓ`gÀÂãÅý3)OÓ Ô>­fH!½é`жµ $À½[q•Ä…~pÞxBŸšL„“©†ös¸¬Ì‚&x ñ*Ntmì7Y‡ñÁá°{:†\­‘Ü.=i6=lk&Pw3Eõ´” 5EP8‹wêi§.<&u€©jo«òaÁ)û€Km½©äÞCyù”mPl<ô’æ,ï¦aôbî5Ÿh ɼœ—îbƒ?¿+2Åm¬’ö4ÉÊJ¶RŸ£êéèœ#S°]ÖM óÆd¿µ|%›Ì6x#â-=½±±ñ–ÝL°Óm^oÚívã·ùG#O•·†iÔk'«zÿ™MŠv|4D–d˜1M¦æ†Œ‡3šøUq9L‘K¾ÝA^¦“)ÈêwÂÆ,ÚIQ€L #®J–OÕKÐfA=[MLSÙ)[Ž)ÜêlVš“ñ“Ù„ßc£÷gbÖ-*„Õ…÷ê=éàŸ (ÒST' HÖ{™chyRl¦W^nx.:Ô*ôèh‚ >'˜Dš‚åA6Hª™)Ù8ñžk­[M)+0 áÛœ‹±®y^’ŒPQË%5N ø# Åcø @ƒ÷faY¶†ŸÅø‘.ßDÚ&×…½¥‹åçæ¸ÕÔŒAÛÎVÝ Ì2' ðžì…?իѳ~Úúòì% ~~øB ôIlh©jiü–õ@üÀ}¯ß²z¸ólkRÿ:®ŒÇÛø6ìÅ'M¤¦ºzÕ4ñ†±½ÁtÍ4œS½Í?|H0жÂ|ÛDКP¶O¨‡îfkE»òe}6¼ s»2{SûÓBñ…ÞÿŠ—ú Ù9š-ºÕI…û¹ßÛWCLˆ\ h¾êÔ@•wϾÄMlIñJÙÛR‚ZÎIVË«P9æya-ƺè3PrQ‡Šß »÷i =—]ä%!¢‹©ò þ^¸­ Š+Xœfƒä†5ÓðD"©¬yÑuûGñ|É«ëKózÕJËð¬œß”ÀŸ©ø}Í›§£„ö2ÇdO7H¦,¿ëÄeÀMïr¹¶kÎ_`;œ{TÛÞHóÏä¤çÀÍ÷téÑ?ÃŒ£¶ÎÙ’'¢?±É Â\öÝjl–“b6âÔù‡é0Ty],N[À‚#sb`¬Üþô2ö̹J¸¡ÛÈ!¸¹…ý†&cc0ý §Ô’ÈGjVÆÌLv¼”ˆ¼^å«sƒ¢!Ð öÔ3—Y¬¼òîÜœð•MÃ/»IðÄúÔ$è®KA’>÷õ™Š u1©y}à'"ïÜž-º5áê' |U\óp(˜×;FÆÏ®éîhÐBðmaá¨EÛûP’µA]•6±ùŒ#ÆãlâR JÒÖŽýIoÜGjÎ¥ë­2‹cúüwA¼ê·Vô5*ˆs¤‡¶Š`¼ždFQ%…ÞhöP¼¹mºœjX¹šX¬jÄdºhœp"ÖcšŸ}a…ûqÓ fxÒ(B.A= §3yZSÍGvSŽçoJ%Q•t×,RÚÙŒœ’AmÄ!—1ËÚAR dI ©™ÌЗ_:-tU×ÄíHFS"@\¹HœæC¶ÿ‡úZ£™@X÷o3ijuÀµ‚æü$Eà2Jˆ‹ (w&¿v%ºÂ™T`ª™¾ <²pÊ¿¾)¿]Y)7çôp©é)Ç+åq  ¾ðF‡|à\‹‘³)Áv»ã™}Y÷›X 16Yù‘AGV9+‰ÊXÓ/[y¼|N•kÀ&ŽËÚYÔrû C¦ýÆã¢äDÒe')*zL@íÀMŠ¡ÆÁ%ʉ'U½s°¡ò?«òHk#VŸ[™»šÜèÄ=SvÖ×§Öšœwbw¹Â˜:Lmê­®8úuaB1ž á¯Æ€ÇÒ)·¯f’}§1l‘[ϰ#‘©¨á4 28åÍ Í”(ôCþ8jô;èÑB‘nJ“~Uº–ŒøMYtUi´•Ì;<åt÷Ô#++Ux´@ƒ­¬õÆEeäÄËxTœ‰)õÙeRøâ°ª›wpN¥° †ÓZ +T3#öµK»ÏÆÍ©Ý›/[ŸÈƒ¨0Û OGÉr‡úìù\ÅÎbHZÅÞ âöDì)¼eâµ.úc}±VEFž‘Ä%Ò"êg`0É$qx’0@›°ÛEåkBTúòV7ÎÙO° &¿f³K¸NÕ®9¾ýŽèS;"{bXz U“܆\ényZÇó«9Zð¼âdO*‡h¶`¢¿´Œéøo?ý½¸WÁPê @Åûl2ÉEà€f…¶d™Kú"?DAwç8+àos ‘è‚]lÒ©zÿ¼Ì³½?A°`¥;Ü”Åð=›A6Y’ìÂÉʼnf!ãZlëC›)Îs‡±Òâò­]þA¾…SçJŒ8…‘Øhóm8íIY¶%|´ªŽä““7 Câêægxâc¢N3«cX£eØ·.ë²ÃtÆewÔ I¬6‡Œ·ÁUÀÕmÔÓi\äì'.>Nßù dØX†×¤ØaΟPTfP¥å*¯ óƒìCvˆ¿é‡™ÞØ%/5¹ÛжMâËŽà¥üp–"ä=Ìl¯AòuøÕ%ýŠ}¹r*Í£_=¶.,pä²ÛU“©kÒ³’Ý›Ø'Œeõ39ßcâ?y\XïQ«k+;‡ˆo¯<>`œú.—âN¬ÓŽÂ9ð2-Áÿ‹½…QÚÍ_BZ¼FÇÃÍ·ÈV~µÛ7øÄbT/í§j¸êkW `‘¯yËÐÞœVöYcZe|FLXµG•YÙq+*F É—£cAB·«ü¤%=årݹæ:̵EU³1(‡-O¦¹³áØl½*Ó©õäL§aY;¯ºäu4“ƒ+*þËœ"ã„x³rÆ^^жý3B7«²èC=4nÁ)¼_W½‹¹pÉFÆêsjüïóÑÿ°+¶QªùûÜ|ƒåÖ“ô@4}&•Õ,ðh“¤{j¡*ªoÑoÇNý8ûß™‹$1QÖ®”ÑR ’éÙ'yÙç„Ûf(1ΙOÁP/ÆÊ´t@Q§`‹ß}ÕÈ éÄqÀÚ©Ëÿ‚9ÕK‚\ž&Xâ #“àÁde¬Hæ“ÃD½,\v*Î7aÂÖ¨#8o´Cr7ú2º—°ÐÊ9&R¿¡IǦ›lY磩™6E3@7GHtwLÍ9rdß«´«osF‚î8ƒ§»´u幘Atߪ%[+n°…Þ~m®È¨ëY@×ôÙ‚×Òä«Ñ‘1ÕÛPv0äFi}eNVUlòÏ"*'Ù€ÈÒ~%Éz{V„ åÓDZ`qvßÎÑsß:u» ì÷_Y„¹jlš­ö^2ÔÈi_ÃÕX(oUË`þ$0{#–KÊûïmåߺ¢<7¾;7Øoý`µFÏeèÓ13z7ó…©.yÔÇת\%ºä]¿×kõQ¡6Ê»Yaq½‹ujlRBÈÍÆí#Cî —sɦ`üÅ ú (5.Ñ¢ôˆ£¯t•¨öVs½æÊ¹±Á·Ë=ж¾¦Ékù¾¼Ó¬‰9k^ sœž#QÉþÒý7*+9ÌÂñ¥¯LÙoÐÅ8üÖÓe›=ên£~TÌ ¶‚æD„œÃ  ¯oìÏz †{ìqÙ:CX¡Qj]RÜþ¼„¯óÔìríîp¤ªjgù›”k~ç’9ûÛH§QhõCcß®ž'ý'¶ë]Ÿh ïKºõv àAÕÓW`qðûà} ÕÎQ­Î9™–=¶šÜ¡ñ„6äS{PúipRõÓj )ÿ‚;S/†ux›îò!ö+'|døý3L5^ÀWø¶vhº[CëúlßæïÞáÆ|¦Hkþ¡M ¬`¢áÐÆ,$-ê)K¯?­ßÞÐ3ûû&7~h’Ìûm­õÕ"ÿΙäÔo7è›F\6õ‚~£hµð9½ù>»¡^t†ÝÐ’ßtgX5ÇvÌgäî¨ ÷+L´°-fn×ì‘á#MWŽÉ«$èÆÝCœÒ±ŸÛª&µ› ذ°U!®{®D‡àvËDà°_ÓD™“ÕB¦j¦Òj(Ð,«˜³l>‹«$ý“ºÒS¡â‚Âó«7óÝô>¬â)«­“W%« g#“ã? S˜8vx \h`Ó|]VÆUàÌ0Hõ™ó¼Ñ¦‘ uqɉ˜æ!HpºFÅç¼u¯ ~»¼qC~öƒ k–Vã^ë]î•Úü«¿œ`5ÄøU{uñ¢Þ$­…<„ÒecþËxû,@ìÛ𯪚Pñó %\z³÷­“Øü,ðh¼-›¦&CR¸ðfdöu ú߇x˜Ž§'ªË©\%ui‡ Q¶˜ð.G+WQ88fN#Ù^HŒüÓŸ Iøa@nWovÔ6`.;bo®†@K±üÏÂx­ê=SÛÞÞB@’¯ë²ÞCÐ2°|ËTQ“Éó}ôq3¨®Œ66}åuzÅÇÍýÚÔSš4@×8ì4Žé—# ’x¥e¦qÈa5˜k ¥rŠñJ07Í*VaÄ‹±eër²¯aT½ˆ qrµinTȺ̶´î‡Ì‰¹Ø«×¹o¾í+·Ë\ðIà uˆWªeEs”ˆ:›J‚.°‚öVoƒZAŸN\u•„ÊñÝ ]mÞ>YO½íSJ¸“„÷ÛUƒ]³{6¾Â[‹É“¢âŸ>8ðÁ$š8gœÏ8¶:sý„&s´Ù¡’Ý/(g”ÖfïÚ_ÚMÁg×ÛZÁB;4‰FiLÙÖÆ£zfùRíáÃñIzMóC¢DìsÀ‰<¨7›D#±îP­´ôrQ¶EµÕ‰¥´ñ„]OŠ‘s‘÷f8'lƒi‚W¿‘}žÆºÎú ôzi,2ámKsc-¶îŠóØæk”3·0œý²æí…²kM’e^b:µ&\•ð²*é‰Ú¶±­oß l^·¾MÁ‘ÚbÂD~’ójj°V·Y'<2ù¾»>éúE¾+t¾*îHo8X=|t"øóÅÐ' Ûó½UfÓâ4eìžË7½Ã ~ßÜ Ê-ªg%›ÛL2r½R­?£*¾p•Ѧ$I­p7ÂÄ¿ ßõõÊ×ééx“ãH‚[+_§ Ï{+_7=_Xùú·Y¡oݤÎ] ÙF³Ól’š‹³˜Xc>º âYÔT>è˶p|÷ÃÛöJòõ"¢ˆrÒ V6“•ãÒVåð“Ü7uòÃõxû&ù…ëWùÖ¶¹xúMÔbf#ªýØX JŒÐuÁ@Ú|~4©-)7‡¹KÞkÎHO¤qÊ> ó”ªÑ=^ØJFvH{• X$÷ñ¡oM¼áÓKçSsVÇ%2ä¬v â~#ä¹êJ{EÀ­Ï”VòÝ8Îhþ€sÔp~¼œƒçh-×’ÝðNÝÈg/$Ë_Û½”†f¾Ìòõ|s¿¤9ñ¦PS;¹!¼~;âÌÅS5ëeƒKývã4›5Ó+0õgØù¢5â8{>U±¼ƒTù\ „ÝëÆç†suùiàl¢Ø¬©ôØcq¤O«©*OÕÛÕ¬®IÐ? ñcÊ¡ÌåtRœ‡í*5®ãøÅ,>åŒg¹øi¨Û/;sƒ°h‘)p‚¯šÞ/Ïlq‡4r–ŽØßáÔÄû¢9g¿5’z ÕÛ 3$#CaÝ:7p¡oOh©N¿_XÊð"µ^nHtYÊîïüÓE UÆgž„ˆÈõׇRò/ Ü7¨Í…T¡í €‰Ø¼ °æñáÌæ67°pÓHê¦hN®¹ZL³ê"µ·í{ê©1b5ð-Õ‚Ó Ÿ?†³.÷ò FÁˆ¾Â!Ø—áÕ‹=ßB{K$î{N{ 7á¡€bR/jB*“ 1}Ç6ä‹tŒ~™ØÐ)Æ&s´n¸Í]…2Îu‡ûUôjÞ<Ó§6š³{ ;ØôA¸} JÛÛH«äe-ýA:è£âݨìÿópä{‡¸mw«[Øß±y•êxÍY’\Þì/¯ëË€Qv¦Õˆ^ÐÀ8¦Î„U¼ìÔ°¯©µÅÌËŽÙ§žp Û×q½!ÖVpíÊÆr¼­¯i¬Gt£\ÚotéM«a³`>pQâ)ãGÜâ7½xU”¤ü¡cxº¯½­$C ¼…U]óÔ$e¸}‡ºÇ†¹¦fK²ÑàzJÖ¼¿¢O«èfÐ÷õ„Üê+xUµ[áΕ—Ó/WhuÃgüܺŠ¢©›Ëå¼Tw[äÈö¹34µé…ñ”w=sɱú ùò\Á%ÈW¦fŒæ(¢Èr¬2’ÙÆGæÃÚ¼ „÷e†M2蜯î_ðžµ·Ö,Ð4°JõÊÐM™ý–Ë=—'3s#[Êðñ ²ùç#ÀØ›¯yó7åʽê³5c£5úÿ~÷é£~?жO²t°ÿÏW{ÿï¿Üyñ2Šö‰ùDý9 T,'ùxÊuYˆ‰y°uT=-jÀ¹Ú‰}<,FGùñL=ù”uˆü/º4•^˜k;/7°”-ù8ǃ|²½°ò>¬Ð+ôÕÊAÞÁìãЛééO»ül¡Ç»¸E0€Ê;âV¦ H qQêßÅ0ä%¨i{a½{W¿¥¯ÓÁ6“ÞÚjÿ[[]ÛZ1ÏÛ¬5´ÙZ‘I4Íè¸8ÈÝ|òIþ!˜ÌÝî+&³þ½K‡X¼7Ø0Í>T–¾Ú½uûŠoÝ`õÕ6þ¤¶Vä4{QÄYØ9G;Ž{È5¹T=,p´a´N^ðš%F Û†–Ð üKÊál2NLÍì:ä¹tâF `újiüZ<*"W¾: Jq?ÜÒñz.í8À txÄÿÁ€IEXÕI;&-ÿÜïŸÚ*/ÁÁw0;sYfˆmj¶V Å’nÈGôA6±›ç?äÝ“âöò ¥kçíãHdÞD“¿, “ɽ9-n!.0åÄRý}!ÖIàDŒ‰&Ùû|zÞæ)¶'N „ð¶›­ù0±X¸–v»¦\~§>›˜ÆÏ{ÍM,¸ÁˆÔâ!Á›`úJ?êm×öuœ8"‚‚qŽ\$ñ[ïûK¿³ô!qßpþD6n4Л›LÞM}=™;UCa’šªÐœÍ– ÖÇîõ­`¯oUöÚc­é’üR™ûŒëŽp]‚T”£Õ"¶®(ŠC ‡aŠZ`¤ôa1+óÓœ€fˆ€Z`;Òb]ƒI䯔ÛÛR¯üªµB¦ÍcÉÇÌÞèçìº##\23Bóø¡q¶×’Iëä^·^œd¨&D·s»E?}iL;Z—”¦¨‰z¦‹ñ’ˆd>%úµ'ujEOSD%× ?ǃ6rœ÷ ?âåxåe „êwð È.x:4.½`¹Iˆÿú}ž2±"Ž`’¿'Šú>“ÊñÞ³ qÃè°Z‰¦jµeìVO¤5z¼µðìù˽gO÷zµ©sè3õƕߦgYúÎSŸ…ÝQ–rŒ` ;è/‚‰étˆ*-騚ÉÙé°ó¶FKíÜÚf’\ïÆ0K9˜r%гl8¤£©Ìñ8e¸¥csA¢ãìCʇ2+“ëÈH åõ\¹‹È\~©ì† >Ú·=ré±®gGžð6ÊõÈp…BJÇÕ¯Àó©Z%ulXËEce+"8îðÉå .žc:—ŸÚ}±¿|ÿðâÙ“Ü[À,”7}´»ÿðÅŸp~ »J»ý>°JSyçù^j&§ –j™ÜÈ/X6¬]îö +á……×ÚÉ–Û“¯#SM›™ƒ“lȲ D’¦¢é ,zþ™È ›õ°xÇdý #lŠíÎÓ)Ml=F럴”ž4,‘Rä8‡{r>&P/ãÖ2I;Ìû—‡œé­Õç«kç’Ü:¦']0òš‚ðQ˜SÎ=ywt8œ „¡9,†(޹ÑfÞ-,LéªûéFqÊ?š£6§•GELθmJ hZ˜V…Çaà¯éSÌóÜÕÒŒ¼Ï¸ÏiÆÉ[t¿@Dz,-#ŽLËÇ =3a?½MÌ5×´š‡[\ôЭ/"ñ‘:!ì[eº¶Ú«æIa­&Öy@d‘X À¥j&*dÓ¤ :a.ôyêgúñi'ÃtÄ‚Ì9ã0ç§” b-E!þL²Jòå+¦4!#æÄ“@2ÎG’Á¡ß¿\de¡"ÄNQI]w–£ä‘‘©°ï LBÙE®Dæ##ì!ÚÅwzÑ«œÝä 'êlë²v¢¹‰i¬ln’ÓpWÂÖ±¢Ûß·)XèÌÓ,(w•L Âed‡O¼Á«c1‰yNâ³Þ<o]Dð¢#ú4N 'áe\ u*-WÞS½åUºlÇ«Ðþduæ!ß×N›SN±nq2õ"›÷IîÿR54‰1 o&uÓc9eQš÷~YIwê½³)¸5UñóU”ØÏ¦£yÚ À¿ ¹:ŨLTßBýÕ‡J#QTA=mpL£Ùé´GÖøÑÊQïûÕ<Ì» ÎRµ­ö“¥€°e¬&')a[Í-%aD>M¢â~…hã ãÔÿ( ;š3Öˆè‘°Ž kc+õ$gÈ}'YPùä‹ÈçàYhð™|Å6Q¾‚ ¿'¬É¡ Õ QM½ààüƒ[ˆ 0ýcX»œ/L5¨3©éÄ( 1ÜùbïáËøÉ³Gè˜ø¹" ,dÑS"§y š€ã{ F&‘Á€¢DN‘MÂ.S  (*gwÉΘÉgì‡r~tÛ”s §8ïQ>Ô•íÓ‡²‹TE­Ñ|r/éÁ[]Þþ&Š|ÍŸ“…z&¿£QQ¦ÃÓ‚¨Ôa6èƒ+ÈW˜æ(êu ¯B‚MQ›uHŠ@FÜr«|a0>sÑh”Ö1šb¸ŒÌlh ,uÍ•µ¹{Wœ¨5¥Í¡Ž˜ÐÑ0dMtÈ$JŽ8â€‰Š’ŽP×k[é„uJc«V‹OX”›7̰­œ‘8‘ï²qêôô(ÎgœgZ@ƒØàtµñPžþL²¹Ñ“½-šn¢ú†s­íKŸ¡Ž1¢°¤k¿°ŠA;…]ö­ƒ¯/d`?¨Bup®•H\³Ðͳ•"± ;ͲRaÅ£_…çOOx±©j–x(êŽçÆÎ³loJpñ¦™êFrš#ñžäŒ`&z´ArÍÇj‘©| ž Ü–~­¨ÅJƒÂ0uš˜2p^Å—(îWèÆ‡Ü®Ü¯r‚ŸÔ—7Þ`~FÝ´#˜;‡ºfÁ.&²ŠD¬µrŽ˜õ’m æ³Ì=UmtŸ•Æ,¡ze‰Ô¤Ñù„pKá¿ Ï7„µÙðqÄ0"1qÆÇFY]BµÃvš²°Ça!"ÿ@=£]d•ÚÄ3œ˜ºm²ÁÉS|§žØDÐk?Yï®Þ’Ȳt2Ìaþ–»TÄêÁ `úi g0ec|(Pè®ÌŽ7 Âô¹Ò”½y×–1ÙÓ,ƒ½x-ÞÛZdj¹3ŒöT†æ#´àáTG³¼)äMÙ"!Γm{Ù "ø_#‘1¼³éy÷X}9°Œð$e¬££ñAeq¨Ä~H8œ‰™ô-é?8£·¼ "”D¨Yzî¶îNT>A„ˆžA_ì³±˜¨â…u~ØkG „4»”¬@$²ÜÉÃç¯âÃóCæô™hÐCb˜½š)K¦«íЀËâ‘6\•ÂO²3^|fJÌŸ¦ZJ,Œ7á›0( Üê.©˜™ð.ZM·˜VAcõ‘ÐoÅ»î²ð´N(¬¶ˆé«´´Â ƒãKUàó¤³ w'›Žš E4WMùP_Š0a£Â|Ⱦþ9,„NÇW4’B’ õÈLý2þÇîˆÜŠ~@2ܺ¡Î(JÆx˜DVèËõëÆeÉøŠî”4 ÃÝׇÝñiÏÈs+Æ*Ã\­”Ž, ÏQKw1®™ÃivZÏ–)ܩƛ@YöJ6°Ó¸ uh‚ÀVúÓÎRçži¢*sŽÜ þÈ›>;â\âœWZË@d—êØj2+AbÐTxºRÖÝ)À(‘•5.œ;k$L¹µa~dí;,² Ž€8ÚRJt¨­¤?FSÏ€Ý1èÅö}Ÿ~à’n{5Ë3l# 8Ìèr©YáìâÃýæs!ºyœŸ:Èp‹°2G:3Hð>¢Ë!ßCÚLF_H9‚HqU#g¹ÕTN',ãÈ••–±c]„¸j±óJŠÉ;’¤@æU²€Pn -‰[ļÏÚ´]0àÉEîíD4o'R,«y5úGÎÜÜÅ´ð‡ôÒŠH :E\®©ñ€ þ„m–ÐÀS¸‡:ÑÔhÌd±¡^,6z1•fô8þ?ö¾t­+[ôü½õÕÄÝ’Òbòclã˜Ó¶É5¤“Ü8‡¯ ¨X¨•d¬vsžý®qU¥h_w RÕÖ^{ÍâQ·MM £ dul¼¨á–0@§(¨j3 Md)ë‘ Áp¡õ8yüd&öèôX@’šÅ!ŠÆ7vù(ÊH’!.bÈZ£ŒŠX ².ùu-ÝS¿d#^‚¡å¯KèøCCº«d'cøêÙ>}‘2,7ð`_´þ4 IouRTúœ5H’ø+źd£n cÖ Qä·ù¨FN Þ!\Œa·ς® <Ò"nÄ^X¼âQôÿ¾¸úÅ¢ïÈ-ìrúGL>9,§Àb,´üÅ/G>V!Ìohoü:¶‹ä1º¢X'FœŒFÂÊ#2ªÒfŒÛ~[l”TÓ¿…:X¸äŒüd®ÿèÌ£¥õ¥­Xèæ*|²Ukæw‹›¨5$•ý»ƒ”Ã+à P#9´)Ò+ôÛEÜÎ?ÂÀ†²LŸï‚=•4‘Ó´‹'k©D,ØO[\TÛ&1bw 6 :æfOª"2ºÄ6Ä©Ë@ÍÕäàV3´’]Á͵†Ö Õ„Ÿ‹;ÉYÒEutØí¢†¡ÙÒk¬dÄÌ~à™…¬‹t':³­M"×ìuh.m=C¿¹Š{_ÂM[ÚÚ'R¿Õ#¦áÄAá’ô!ö…<áû¢U«…¿s dO–uw6v/CÞáÄhœk´ó¬ÁäsÞEÍIC \…ƒcƒñÐ$V™ÊÎ6é‡òL|¦YDþ9Y’_Cè†=‹ ŸEÿÖ!úœ’£:½«­Qáý1ñD‚ˆoI©*žøÔÄf‹™µ‚H×µÒGøàn¼ñ>Œˆ{àÞ.¤ïñ ¬s7Õá‘fëÚæb`gŸÏ)¯_ôRw^S™FcªH{c?âyj;l”PyC±Â‡²> ÒA—b\t,iÍ Œ˜ÒâÊŒô$!èÛ}eúôÄ!9wvwg >äb:,ÓÔ–È]o+³!ØQæZ¯á?Ç8öû6^jæZFça)ÊÔiCÁªz*Zá§C&*}'M¦uÎ ¥r÷Æ[?I;Åy›ãVJF Œxò DÖv>ÜNX*CùDWk$#¼e?$ïb ÔuáhØ¿1¢Ëú3ëͰô-Âjÿš&Kªö›mè[ÆjýÑØKý›XŸp¹³+hNݶøùúXðÄzÑxjvhcæ‘€Tr[ÏTÄ&xÏ—ðbT¢Î9ÆQÌäCë†I5‡À·Õ4CŸ±ÂjÈœ×Ç“C=¢fÃsIùCg– M0µYÂ:àKË„£5ôAà W@-$é©èý"è Å,É’²æœe*v^¶=juÈámÛïÓìSÛqdV[¡!Mä&QBÓV¿>Ɔ@lÃgÅ7”ë`õ)»}8ÂBëz-%Âã£ÅŸýÕCœóΪ7Ol_/‡”¨‹îq䯽z6ÊS4$NŸdC?š¬Ò¹ÏI8‹Ë8XઉoÖ¯pÀµ±Ô&S† Â¨¼éÈpA˜¨Œ!ð¦Ês*±ÛÛ-LUg¶6ßoá”뛫ï·6ád-Ý]¢Oîn®Ž¬ô[8Iâê{‘þîäÉ4aM’j##úån^Í¡ÕÔT^ÌëGî”2ò\ã ªý€->¢“Œß¥ŽDf£üD»àŸ¾2«¾„_=çˆç0°:-‘ˆ¤EhÆàQ "' p¹H:_ÙááUÜ0ÂÆfF½pÃOEøØ„Á·V‡Yõ(én®â_ù/¨™Ýø¯Y_÷¿ÄDQgc~–(:lUË6!Ëá6„V"ð°øí€eéhü#ö@¯Òí`Ƙ¿ó‰,ÚÏ"Ó9öÇh*Æ$ë´&¢Ù½>5¹é@_3RÛÐÜV4 ˜ØØ÷gf‹üÕ(¯’²äw}„MkœÝe5Ds@á‚ý‚­•IÔŸlnzˆnm)Olk0õCiD¸²™À‘·3M¨ÏõÞÈ÷ŽiAùòÖ©kùÅ‘_ËP^Öë‘'?éZ¹X0”{yÒ*ðÏ#4ÐkÌ‘Æ04­ ¨TE§’¶ZþøD.+ݲXÎÔ[Þ^±¦×0£nSm'd·Bne¸-’ÐK (¢æ·èè J&Gÿ8>gó¤twÔVÎ.ö1ö:gh$ÄšKàj’1‰/dâu·1_N'»メœ7sú¥üÔÊŽ¢ÏʨQõ™”:ºþO2QMÞ©åý¯®íËdÕÙkNB?5@««Œ†Y™ÊªÑHì5ŸæèâŸ.-ËÏ f‘í:r+a hz×ì$•2x[¢œ3¡5óE_R®-3+!.¢ÂËOϾ1!ÄNБP®Ümâñ1k“Ζý4nuô,rðàÈØÇ­HÕŠâ,`+,Ÿ:¹5ÇP¶=¯ŠDz*£~›–%Ò½YfŠ ß—r,¶Ãã!«—!¶jƒ4#F`Ò5 ^þ#Ž{¯©×¡•1sÜ}·KÑMWzä [žVpŒæl9DDcéµ(¬Çµr–Ê^ná¨íDIŒv ×¬Õ ûFy/æ\:(Ý{kÐ.âÄ”ê8¦¶Àd“N$IO F’ñ5Ä>¸ÃVý Cç’ä*<Ô´Š‹ Î8¿¥éºA̠Ƙ ÑŽ]Š„pè TMÂÝÙ<PKøãBþ’/y9ö£Ô^7/ìÛlïlf(Îy¹%—O‚ˆ:(bŒ¬*yp·5&Œ"ºŠT@>º.ñUcAú7ÖÔ~÷ñvœ¹ WÑO;™è«® f²£Y]2t(SF`è³-Áƒ\é Æ›%ÅÈ XYsðy‰Ö²Tã`¸|°ŽÞ2]²•CÙN5F„BIž…uìy•†a1^+™2ŒÊ@Íx0ÇÄӱ™¹ð­éôu ©V¹L"רŽÜXBžãŽW¥ª€06¡çsVfʪüt¢ˆP©þ@gÔ\¿§24‘Ù½aìRQß \Z9ÕVušô±¾A’–o%MÐØRa‹¿±É¼ÉàŸ¤]ûݵHÏIzVƒ4}Š‹ë;•dQ~áp9 ˜§¬XË ùx¡Ô„É>¥ƒd¥h‚Auw7Â\šHÎ:‘3vg© yŒ?ªÜX»ç¡k{mZÛ oö6†F4ã£ÜÙ3F.ï™Í”£Œ·†#¼€‰Í”­’lAÇdþ¶QÊ'?0À.¦ðÉI–gɤ.à”‰m‚k¼Ë’iMR+0}”7¨”-R4‚°Y«<õu{´òÔcéϬç›J è v­·ÑIÌÕƒÐñê~Úˆõœ_Lf—àzÕLNYÝ¢Þ›®=nfi7÷‚òuOŽÆR*O Œ¬Á}ae­Î)é O®Óïs>¥£$"øg#°Þãµj¤“ÙÇk5nl FF!IõÓà³Ô?† ‡}ä1Ê8 kºšƒà| h¢ô¦”IÏŒ£ÀðñUY—H*%¹=Þ\>§4£¤ËVb¬þAe=út ï"´R9ÙíØzŽF¸ÁZoíï5J õ5­1ïQÌ /}ÂG-’¤KÿÙtx‘Ó*Gt354FÒÌoB(«œ—E C+ŠÝœôpÉÕÒ¬W‘8G59%³’žãÌK%Vi¥=¼ÂÌMXè8£œuÁp!B¶‚5!ð*HpÓ¹z7ÅüF±¢ó»X²|»Ðdùñd›’9[pþ±Éi†9k+G%:¨6¹É×&"he„W©’·1¶.úŸÅnÖªfˆeÖmÒ7ˆŠ¥Ü÷ÊÛŽYÕª¤hÛ8Ï·˜»ÆJùr¤èòv7‚¹YUYÀæ«t‡»ËäRd|ëcGÿ-HßÖ`IvQ›Œ^ÛÙì±FFüåo5Nn[bë>vä¡Oä_lÝ#EW¨ûN ï!&ÿRðÍŸ îµ@›æÙžEuü{xFl7ò5Çhg"c²`aè:&eiæ)jcÚg—óð ÐÊóŠ| íǃ¼'pÝØ@Ölâd Cï#Î*"5å,mëÿ™Tv8'úˆÏXq8t¸v“É- ëbó%Áš2R©x×" w^ZMe8ôjDW•ê‡X»*ÃÈø3'VÜÊ>– ˜’Wñ¹ÍËÏÄn ÁQ—+£üf‘ÙO` ë_6š5Ë`TAi²–AŽgf2°¬rÒˆ+¡‚LwNÖUŠø$GI' “ø2ÜÆ* Žôìâî:~'9Ì:á¾q–1Y§ˆ¨²ÜN.0Êcƒ7K +Ú´Aõj²C²ØS$SZÜ®ñiœó’ûÅ?5˘'Hºïú£9Éâ}LHÁÃ[ ÿ øïð® ¶PBXjH<åLç§´*åb¹ÙЦFGš¾8mÅ=&"¹¬˜U»†ÍÆ5jÍ›.3ñœ :5©p$²s®U,Rµ-))Ö•]Ç¿{ŽJ£5ß(A›H‚€9˜“‹ÉÃm­á¬zVí¯U'VÃÉHˆQBíŒôYªm‰…™@¦¡2¿’úNz²æ0;3áçRàœBç(ÃH²—ícCªY%g ž¾t÷qwÚ>ÈnݤZø•ŽSyB']Øñ¿$Ë9¨Ý® éQÇ”¢´»¿CÍ+ ›°Ô÷"–"¬I¿ © ]-K$®TSb¤ÐŒ +oš2ñúgD±AˆÜ` ÙÚ‡a?¹ ?‹*»ç¸ kï³ÎšÁÖ¤R‘,­MòëFPûp:ô6VWÏÏÏWÎï­¤ý“Õõo¿ývõ—ý«Z¸ô ³R°M[ò¨­|¦•2"rä™Ô+Vx~§£s´BÄIÀd냳eûó$}çÄÒH·É¸õ«ZËŽ4°Ós§kæ—]%ÕÔ¬O70æ€À”åqë†J½M7rËumhþ¼+IÚ‘øé0Ñ;óð* ׉ƒ \|‘ÆÅ"ñóªLÀ%a8îÜúxsÉ‘`æ™÷²2qÄT`ÈG,PI[„Gyæ…š>6,Ë”îÓà cÚԠΙÊú(±QN[—ÒV¶j¶}Ôì6jÖÂ^Btœº¯»{"QiFÇrY@~—‘õÁÊ7+k!›pÖ=ÂU…¡°•­-ðgù›¦VŒL{ ™bÌÛñ)ößÐ7êI–.óI7°o5…¨¡ªÄá¾T§á¿P#k57R÷ÏPÊKrõTW-06[©aMC X¢*ã]Í}q†ÖH°.ì-Qçõ‹M[Js ý=0gHLÉŒ8%žl’^¶%¾K…˜cìá‘SÞ-?­5aœˆw·´J’mYZšKµÀú;éñq"§ÛF#)¥¹òLÉ@NŽì B쉆°Æ¾HY]#„ L*U‚Ž R~J %¬A&•¸~ì§lø³#çoJÌS9¾¯çý”T,´«É½(òQ7šŽŽ*Æ*‹’!!í2•Mû*nÙÊßWÞ›Ñ@’Õ­¸¯G)ä‘÷&å^mc<^I÷¬ßóZ qEªspž A˸øf>ºÆØ_¨°EP8Ô&F…;AY®GŠ‚}‚`Ÿ¿¥`I.I%qµ5,û%ÜL5,³K#{w:Z<ÙD„µ SoÝ—€ç$˜(‹U®q«°÷£Š rýt5GR¨åüy-·ä&ÅßJí>¿ ÒJð å'xÍMWM4 M¨†È–òIºNH÷ΰBQË Ct ãgܘ¯cKYÜâL†7¥R¤CÚUpu+]¦Òu3WBÇ·TÈ‘‹£Ê)ÍlÌÜG견A=ib3½×»³lxzU\äR›¬Ù¨Âc¥]®æu )⤓a—PSL:¢Ÿ> ±Z0g‹œÍgZÄ?ß„áä€Ý¯­MšÏ—VU+Oäëv¯8UÆ¥n“ÜÄT_ÉÇÈv9g²%i‰tKKHÔ©©¯-% 0Å-e‚ì©,=f)Œ÷“ø¼b¤©vèâ’b‹ýá?|¯KÍÒ¥Ê-vgÿ‚:픯7Scb«c %ÇÄÖmS­Öâ9%Ä M*%‰Á·{†J"nÚZQ 1Ít¨–)’×®¶H£9×´b˜žÚ•‹ytBô¸v¸G !†ùi&d†jÉsƒ>jK뛳Q#Ô:”hÅYº–€³„¯iðW‘áa!Ñcöp“ªA=¶$™ˆlBJžÑ¡±âyhóZiäµañ‰ÞÎmÅ9£À!cÁ)+¼% ! Tz ênHgq¬Añ¿´bµÌ Sª9q\¸müÊs‡_Š\¼‘`ÌFЍe£q,Ó 6Ÿ6æ²Â8AÁlÇQ'Ÿ‹&ù]Úž oÖ.Â7QûˆÙ”9ëPßÄ ÆCéFÿh©·­²Ü´Ëù)~ /¬+±¥øÍ›…Ní<TWuÑéV¤¤=Y6m5å>cøÚooÎW~ÿûÛÍékX²æ™¸º({qpGzቀxzËkàC·X’Ÿ}µÛ‰2wé™JÑæÜ 6oùå’äÚ=õuϪ¿mACß'*ebý8éç¸pŠhµwOõ‚7’VJ™xZ/\D'ï©b<¡úÊ ·Bï}ÇH—†•–욠µ€[K¤žÖ‘ŠŠÛÊî)X»Þ3®>žKÈ–bE^Ì fàJm"¶x/¹éºQ³«ÜŒÝâk˜¯s¨ïÞùÀ¿]L~çˆÒðqçí‹|v0¿%âö#—%(zBÙ#þA{Ÿ˜ 2 Ó’“%Áz,H*p.fIâ¸B 2*@+¦äìp¶8fàì[÷%?Å\²çX½Cúé~bìN%†'¯‡à©‘¼ÉŽ™óšP “¥“n‹°  SE})]¡Öi±ëy N9½yŠónh’^¾{ÖÑ€ŽGµõ•µZH%¡£VL«â¬ö]nT!’MÍ¢?å;!òt±g›¦KÚ ­ GKsI’r •ùsíX³¢ø–69 mKºDjKõ(v²wßÅ]lgZj LI†ä÷¡\¹ò$Jÿ#§$¾ß½À±h›v|õ½½†íŠWAð¢(óˆÎfó²r5N”ö1GÀŠN^ÒÀ·Ÿ¤ž{ÓŸÕBmó—jrqMG´…-`£é—.WK‚W´:·h?2Ä ûc=„Jùtm}¡l˜ °áhÄÙ&8$¬=>ßÀS5y.ëm6⯾–²&ÑŸI17RµUEwRþÓ-oðŒkïR!Q©´l<=Ïn]6¶NlŠ ¼Ï8ÅRÇà®]¹rYù K ¯dË£¾cO•\6¹Ü+¼63=÷ƒU,oÙ‚Ô"Œ4À~«œÞ«$˜ëÇ1wòx+Åy\ WØy¦a8¦ïÚYÜ?qÅAÁÉo$m…0ìOý&ÿäÑìãܾÑNÍaÐÓ·1nÆè ç ÌØmoÙ–ï–ï÷à+%ÓL‹#;‚Ûë“ÅiõJRZ–-Ðu*V𱣋OíÐËDŠÄ¦8ƒI+ó]TH _ò²íáhËRj‡AÙÅŽæ’»Ö>ÝåÝ­È¢ýNm4ÏžqÛ' ý!êŸpé6[+Éu¹6µF³éOÈÞÏ"-¤wù­:Ê€ ,L‚÷RYä~ÆaÉb©1ªãû“\2©°ç®HÂ%=%W­WÒšœFƒ¹×+þzqGu5¡_óŠñSí†-Pô; æ×rJ+9d_;øìá K’–˜Ú»Ñ@åõ|Ží@ XKDƒÈ&v!3zž«×%¼”X%Ô> ÔOdøQ±Î¹b=÷bN&ަÚ),+«…ÃÖ×fÿF“°¼Ñ·mœÍðê¢Áœkê­®;é^k‹½ #[Qâƒ"·•âUVÖÒzÛC¦qXzŸJcSºWH®ADü»ÂÇp(”¸îTð­+++ 1xÈAç*RIt†éƬ­û–:Š!Q‘òNGÚ â²AËËàŒÎd.¶v®a6¦b€µF æÛUÎÔÅôü®²%nx«€F{ÈÕø6ÂŽŸDlB£^mUé^(cÉÉ‹WJÃÐúxÎ1íè2‹º ðy²yg [onY5AÛ‡,pbuκõ=2Px­xV0ü„Ú•ž œúu H…:PI—¨ô{"ú–×c8²º‹6‰¥z¯¾Iq¿ÚkÙ©¼j\ÑÍæÊâ¶Z3PA¤¯Lc.½ß´}ÂRª¼¬¥*Õ¤7.Sn@ âÔ¡˜Ž~Vbr±Xœ“äañVí©î]åöx?UÙF(¶¿„LnQ“»ÑáSç#×ö©æÌ qÈþž ¦¶s(µÅTk«ÒÒÁ¶:¢Mšq³¯mÈoz³ŽUãÿÑlb/XÔºShkëuH²>‘M–´–:à·ïv+à7ßà”l¡¶$µ ™³µr6¹óésdÝ!/lÜ’¼eÓÂRÅ2ƒ®ùîv/îj‚7JIžmË\T#˜. ÷EY7ÆQ*‡atS(ôXІ”$½;ùnú;¶w0\O ÑnÞ½TD·ˆbSƒ.ÏÀ5ÖK—xäôØHŠOÀcöÜùÆp{—{›‚?Hgúq\(Ø_¯i‹L&²Í(åHÚ6ÔJi`ÏfDÄ#RPsc"…3‘£ô<5¼m™*ªÚ‹ÎtpåÆ%œÇÍhp&F7ò%O¬IÀ]v~¨µÎjºi‹L¤Á‡š96È›/_<}üR ý):OÆ T[$wë7qÓ9R8+)ø‰•õÀ- ¹©SDýÚ‡=N 6w“žÏÑK¬$;lµ(ž'5QKØë0éhó’¸ë,1páq™…æ«ð`x»aÆR‡îÜ´ÁhËÿä3geM¤;ý™ø„~7f%';ÝØ½¸Ì ’³ÝÐ/ˆ‹rQÿÏóú÷Þ¥ÞíÅã7/42*\-m'êt4qê³2ƒÒ3I(A+‰Õ ÕTXl¸¬Ž¨BÆ@ï…Ó~M O˜îƒÇÇD¯7ü¢F¿_bAÅ2s® ‡LL;pôafµË sæg‰êRwžp¨*‹íÇvÄmÉÒpêTaPê($¨¨’3 VË—JË\RqM`0ëê H&eüøÖÐ85≒+¸¯(S_ LM·hµT7p†³.™:õ½tkC5¨NÚJþÒ,š(Îa\).fùƒÛÞ÷]<ÅD"A²@ ª¾´a¨jyKY€$ÖŠE@to€u0ºµã–3-©£¦n9[ÈŽMwExîaSÆãa'àä Œ8H¨‰{‘l[(fZÀßmõG#6D^ ñ]"d§Ã“ØÛ3pmß镦­¦Ø©>Ý{I&”î`h—ø83:ìu†²©N4⊔ófàj˜ÆÅj2qBîRqTø2-Ûp)è¶m’gáFG&l$úHáJ©3F:D@¡xAu‡8јlŸè_xß$,b³³=ÆW`¶ø",9§"SoÓz>XBÅþb8£Ÿ {š d,P½£v6<¹H¶ìÊ#&=€kÂMA$¤Hp­—ôbJ8¯¹[Ûë’e`ÎI$á oàHr˜w>аjéW’R€¥0±ÀIP—…eîD?H„¡ô{•Ë%®Û{ EÆÙãè¿‹ÕÔk¬'ŒH+¾ôù /^´sâ^ÄùcØoLDõ§wmëÂݘÊ„`0îü@0Ò+ÌV°H&Â9ÒŠG‘ö¤¨Ò@-=Bªü ü4Õf aêä)ÓÂN5¨ÌÜ}°ZxÛ°ÊI¡®oêÙ1Êdà‡òÑ>P4ølû— Fº‡Þ³øùϘ”Ÿ{ΫB•“Œ  Ã/œZ¹TÁ}æÂ B‰^}ㄳӰ'ÎøÂ•×É:EeLóªÐð?ŸûO@/É“½n+ï¯^ ÿ˜¾&8AvB=+¼[púu™D'Æj!«¬•ÄRDÓ3¾(p•„ ÉÒN4pÒõ VçŽ|û—Ï[pc*K\¥VÝ0Âíïs#Ïj^®ã¢ g*=‹(¡`y‹Ÿ(?VßãÊOʇÃ~R¯!K?DîJÖj´×ø5JM£7—·>àŽ.àßÚƒ–×ïÞ»_»p0ƒ ˬÏã.F6ÐU;ÝžZÊWð’KmÂ,n /†ÑKédaŒâ#!uà¥!*5á6D=xl)*",Á!Ú9>¤kÛ˜û²Ð¥X (ת,M-œ„?Vf§ÉñàáŒoÑÍ1ïÌðÒáKj´)¯1›áµa™v ¡šüS(Ýt}—¢ä*Ü1~Ó‡6ƒrW*PN§¨p ÓÁ¸/ @ý˜óèšÕQ KâœÈõ>*`Mšúz¸óꟻ¯÷^½Üyu`ÌBlmE¦æ²'¯æ©öPÔ‚.¥,°k$“æ!h$o|–‰æ8)£A‘PRƈÔÜÓhIqJ¨ïZnR5‡â’ØðxNlK×—“ºŒ‘ÄFìMûA®ãxÂR²j¦ú¤Ó¢ z%J'e›×2ŽG#S U$Õºï’~Ú¥¼C‡‰ê÷w_þøbçðÇ×;Ïv^¿Þyzøãöëý×&Hk_ê[Á°øÜ{¤$Hj©-¼:©ºî;‹ÉµDR¶¸T:(YDoÂåAsÛ´\YÔï›ÐS\ж*†`I=´ü€VöpbiP¤æzö´›¯¨Æ¶âÚŠ´’#ïlWrôj6°‰¹æX­¿MÍÁ.uÔ ^øHåÅïÖ5É©n‚©ç¡ÜkҢʔžhxÆ—Y–éD-š^´¦ý•—´˜ »pÊ‘òPµw×,‹-Å•-\›ýZ7bkh4¯Ñ*À6žÂ=òv.ë.ÛÌçänJYW¶ÖH[ ­¹ŸáÝn4%4œJ=›®ˆUíNµÝíqо¿ßÂÒ£ÜuPÓœ6jµÒ¾tÉ ÆÂ‹®ÉŠÙ'(ùãbC IU—ÄK`ˆ@ ` A23е°ÑÇãQ¿¤œ6#~þ¾äñÅj‹š{Ki'¹f‚ç|ó™š ÓIºV›àPH˜£0ÅÀ¥h™yÊJè»ãˆÊžýj«ÓPnÖù–•âéÉV^$GXCÝ=L,5Ø’Šã£Ð7ÂHÙ¨~€‘PQuñë×{¯ÃçÛ¯ž¾Ø}õ“d܇-÷Ûf­:°¥r7œ.4Z𙫒v£¶-4uS¥X èë—ì>ÓsÉ vŽÐmCO¢j–´[âZÍ8ñùiJ50Än¨Sªc 2žÄ6+Ãö³ ΰ­Ä ÑÇd`Ëgr¥h¸ήn¤Ü±o§-–×7±º•Äû\-y'œ¥Ûš³‰@5T¦fäTš¼,䔇î|{“ê#,@šF#ôòÉžh ŠŽü˜ö~ê½ä Öï|߀Mâ?¦¢È@³¬"ÇaÖB}Utô­¢Z™båeœC€™û$ks—úª¯'̓bý0‹9ŸR3xA¢²( Õ„¡’e‘EpàZ[ª:GÆ8ÚûAoR ‹vl#î2§|´ƒÊ¿l£°³_ì€Ø'“ªï'$¤U¤—Ä-µn9Åš©¾³ôÄf‚-ŸÂ̦GKÇý´.mi)É’60jbòF®†®­&«ó˜Ô‰šÎÇßÓœN'Z8C,½If~Ö E,·¹¤”˜á\Y÷9¶Œù³ÁžÔ«Ã`Ür [E•µ ET¶Õ¹ãªaS;`tsÕ|¤Ïè*¶h›«æo¯Îõë¸Ç®Ý¼‹'ê;Všh#®š_¶²Ü 0\þ;—ˆJÙí3ë’ÍÚ¤Š3[¤ñ÷~µ÷ks•?,a1Ó£s”]Œ?‰‚ÑCQ~`l#—q}TàMši‹ùç=¨M­¥,ïä€8¹š2ýü>näš-_78뱫¨)Ø¥j5®¢|îÒ‚Ó3A­æÜø¥ä– XqË.ùÔ´¬yUèçLî–¾©išóÏRk> PDeEºSp¦ª ¸’vwgû/8¡b‘ÛÔ¤ŽTÇÄÐÊ ×†~´Äˆ³4õn;õ÷Ý×Å×Ò³™_ÿþÉI6iúÇòÄêlwsL7#™h¦ÚæüÆ%.ÿ¢Z¼ü®ã˜ûQcϼðüºf$!³ßˆYýÇÕ=+°ç\tɦš<‰›È·¨µ¯8/µé9¸fa™(mñ8OÒN¸¾¹J¿ÛOî>¹§Ÿ¬ÒË:JNòÔëõ'þ@ðÁÝüvz³l˜»ùaîæ‡¹;Ë0÷òÃÜËs¯t˜Ò;Œ{Ë$ kEŒá$àé/÷ÊZúÎVÃ9' ŠÅ¡Žò/ŽX†{øô]yú®<}wâÓ÷äé{òô½'å«UÔÛΡ•âžqÔï(é±"ÉiOqÐ\î‘J²5Qé'aاn± wuåèˆ|؉WåŠZ.yË øÓÌË`xNmé%áÜÃluÔ \vCrØ?á†ð?%ïM¼ãßš„þÎ[.š*þÑžŸüo\Ü‘3ÿ=vü@\—UmËnÍÑ;)E»¤í¼m+ÿ3'ÛbÎäh%ã°_ÖËÞ«!8U6нí $úͯë.Ù¦µ:ÿ:¢‰ÍýטÌF¾‚QÚ·ˆ컢õlRÁ,Xû£%’–¶8›ds¾pk™ððª(Š8”6‡§MxjÖ†Opm£|?xžÀÔ z™¼—F]d¬ÉÕmÒã"{¡’M¾ˆØ0Àµ¥E Œ)éTkæFX¸\Ï3.ÈjMS€]Gí¤ÙÀÖíÆL7l)ë3w+bN÷âémèKŸ"WiÚ±Ö?Ò#XUë4n½ 5j«‹[§“µCüü|çõNx°>{½÷2Ä?¾+x–P ‡†ešt éÒ>É€2û2îÆA†uIN¥4æÓuŽÙû’™’‹¥î–_måO?{tRׄÓ4:£\•|ÇOð«ñÙ%”t ÔÈCŽLkÈ:Ã~&±r½Í£¡zÙÀ_¢[Î ÄË…vq¶LÇüà'^ۙ܀ÙÞ¥‚¥oû ð¢# íÄ'R‹É­_º>B°Ó¸ÓÓš×”øÎÑæ¢)ÈS±!3–f ÍÌâ~‚|†ìÈý”{A¸°©ëhvÒOÏ%íÛ=üã(éwFÁŸÃ¤õVŠì‘o¦e{?;VR•àR\»n¢ö»„ZF§l›å^/ ië´ÂÅÏŸF\„—ÕåC%º‡öîeÜ˳íÿ[ ÌÄL%ÔkFYžÑ`#|±)ü{øÚû³Î çs‰žÄ+Ýx°zý¹*Uªef¡°0>PlLNVGB*‚ÅÂG]Ûüc&1Üv˜&Q¢¸D)ÚVö¦a•)@«kîi²HRè Æá¶S¹MT@k^£iƒ$ÉP‰DíÉ[ËL¼^îe1p¦Gè¤Ä I€Á5/ç&™,@8(LtU3pO2Ð6È Q½_õyœ''œ}ÏM|Ä ŸÉÖ0¶ÔïŽ)<ì¬aìëÆ’:Få:%"Ù©²¿³n¿Øß+7SBM\Ô9'Œç¹ bÈ©íwh\RâQ«ægM})_H‹Ó9 Ø«I2!g±»-Þ£–Í~±¹/ÙQ¸„ínv.Õ–Ÿõ¹€`;{ ú¿èI䯂”$á¥P÷Ñ£C]¬}5ðÜFQ¶aö+nuÀâ-Æ'{?þúz÷‡ç@RŸ¤½3ìh±|wmí~øC)áËÖ‹îÅäŸà'gß·zQ»_Px¾¤%w’#’‘±²Þ€,=œÃ"š[@ÒÕÅ[´šJ~6¼7 Â}àe Ð¥ËÔ¹Ð+F˜?ja!ûà¿>·¸CçIw™H@{v•ÏuŽu¥—¶¯>Çœûýû!þûõW¼ñ«¯×<××Öïý`}}ýÞz¸¶þÕƒµõÿ ×®>õôŸ!&ÀRÒV6ñ¹ißófBóï-ùјü…~¬? ‚ÃÃWOÍå¾ 1±”õq”%­Lÿ¾ Š ÷r)O;Fy8vê}SôwA^¨øæJx€x´ò$Õ"…:í©ª£r¯Í ¢ ›ìwJõ+íG•ÏIsÒIm5ýàŒrï‰ô@ L3mi™tߥw1¥q:ÉÌý$¦œã5këT—İɸF¢…G—Cê›aZr¦´ÑiV4ÉŠ“nöX å;-F;ˆã¶˜â¦Ö°ÿNBVXÏP cà¥9 Lå+XOw@r4CçB²a1°ÐÌÓ ‡=옴âüˆ3\'À@ ÓwÌøÐ&H™ÒH8hÍžA¡t¸ñšÃOì /z›€Ø’Y–OMõ¡ØEOU_±0•wŒ@R.úöÉj"/$Z-„j˜°‡›*1èd(]9Ë’ò±NñmÍ,ÈN“^fd%òï08˜Së¶w% „&‘3µ5y¦¦:eyÁú¹Øª„¬ì¾Ú¥å±qI‚¹õ%$pI 5†@m è–,#c¦Ìkgßu­‰}Š&Û‰”1ø9éÞ»‹µ7‘“ò3Je–ÌÆpdig(ŠCÚgQ” iò¶@œe‘XÕ•à(¥Ý6/]šÎÔM{p©Í-Nd´’ú½íRXÅŠ×رO C˜òŒ\L¤]3ž6íbúÁ˜æGµH‚‡Mûå/R!Kx@Å3ál®…Ål§}ª/-VHÇcµˆÂ=ânàÈf8KÍÜ}Do5¯ƒr_BºÚT‡Î y>=xªy[V™åH£“øwfé·Ç•=¤JZ òà™q8ct5ÖIÜã6–Ñqh¤»æ'éÙ‘Ög•‰7h(iÀzH5j'4€˜…?ü´«Ø*­‡0ŒL*ÆÇð¡m‚—ciHi]º­ÝŽ 9"×IÎ’Qìrܹˆí]æ|jdñ ŒyËØãÈló§0↵iÔÖ š¹ ûȇ=6˜¸fߣòâŒ>O¶‡.1@ʘàgŠz†¥ÖDñ)¬fWâuªežÖgh "‡Jquå®&ƒ/OVÁX)ÄÕ%89/‚xV´ïsf ¢\T²©êœØ3±1Å––Çތ϶h8ŒHØÒ1W0²£±uÓ¾è[Y”¨Ì“³è©Í 7¯¹Ë‘Ÿ»l²½Ébéç­†u× Ö(3a<žIª±9Ž)ƒÙªFAæW*ö»õßi¼¹êüÍ ûŽÿf7éæªý„Ÿh§G[w,oÝé,¯ûÕ·Ž#†‹Î¨Ýiµ_ ™¬RwتNg—ŽM‡AÌ.“àÖd8š•100ô9,'— ¯7Åo²š$K<9ÚAùé°ÝÑO¥ÇÂ:iîSv‡ R­m ¾“°k#É C…¶rùÊ6$SB‡9J™“ÈTDtI‘¾É_ÇjÇ%fØNÚÜ&IŒøíb‚ù‘É#ÛXn`ù2R猬j– “ØÏµƒY9ò”ãA庞Áë7›Û1&+æ±°ýø¹JÞÓU9"ˆkÂ{”è<± ‚LhN&‘¡>¡rŒÝ1vwÉf *”ÉÙØÑ’è(2hô¢¶ ÛY(½oÝE¤wM± ºL¤ATú]l›án „¨áÉ VÀ@ÐRˆ¦ä ªí3@ÛdÄEBg±oZuo—ƒ|™ã;uþ0´2ÜÕhewõß¹KﻳmªàºO9$¸¨¦vù6 HÛ}Ÿ¤>,Ä7’’|¦›@¤ OwŠ|‹F<¸eÚCM£"g4Vœ„ã†)Ùƒ±wçŸñ«…QšÞÐ+5-:†EX×°Ç;n`BŽš-Ãב(ÊÂN¼¬ §«6fg·Xøí0Y´øTøS7yf#Àê3,ìÑZ >„Ë/Ÿü¸ý*\ޱr_*5É6ˆ¬&Š—¸IönJà|j‘ãÙ)ê˜ðþ»¢ÖÁÕÞðhg\åxÙjÒ^ýaõ‡×ð¿íW/Ãf8ìö¨»íø.c§.lñœÙµ¿ŒÞÆ”fùã LdÃŒØPêÕÂzôwÙ‚T•¦jË6ÌíA;¥]ÂÍcnXÿjý‹b ` ÕQhI¼¢ÞY^ —½&†(ü%f`òk+0šôª´&’A`ŠX­€ð¿rò/UÌN6D³†þ¿ÝY^Èp‰ñ¿Á|â7äè "t`{h±ÕvQM rˆÉ¹x²ñ¿wÐní Á¡Å³Šû§…Ô̡ԨÒh@»¬iØEœSÁ8ûV”3ŠˆokÚ>·ÅJý€÷þêÙ~3Üù8ÔÚláGœ‡_n Ï~G·»›Èpë·QîäV÷B§ Ë9°œ±ðÞ¡ZíWÝÏö±¬ýùÿD:üEú¿?DM’y&³ø}Üoiw²#ŒAÕÎßá€Ã¾À­n„ˆ UØ’Ì\€Mê-ˆÀx ˜üäù#M'¡È(ÂZÄ•ƒ")th™¿=6ïÈ•HoÚ<,jÝÓ—äb4¢œõ4œRU öð”>"%Õp&^rîC\ö—Ýø<îi&¥ê?6)§ü% üìk¢ùО:Èõƒ…f™k‡Jf¡‹ L¢ÑÁŒú§ÒiA;DXÔ–˜új@Õ$5’ó©…F‡-̾ÈLCßlÔmöSd­KU³þ†ó£ùFÓ\¬ÄaPÂ[4Ê™6ÑÝ•( }D1õÀÑ 1R½”r¸QCŽú$•p…éC ¼æRâšeyÀ“ebRGeRk@¤ A"]Ð<ÿ£øé[鿢Ú&ÑòUÚ. «%l…jdv°“~ºHä–ùÏïœ=z˜w˜šÏ`ú~[œá…9é0éVš¾Z1/= ï|ñTÚÀ3¶‰Ênn‘I¦`/ºAç@.Æsét8³ŒY³JyÂ⽤‹¥Ü=Û˜[„"Û1ÊX¬ðÄÒB =ÂνÒúªtóˆØ;eˆKp±NÉ3 S†MpSñMeJH#œóA1ßfÞaž$Fo‰¼Ja”‰³eéhx$"÷!çyf;E‡â_¨!ZÕQÞ?–´*K¤øv½—P¬&ͤ?±WàÀCâ{Tþ™-Vý3Ùm ëwÄ*tsÖ&2@ñù| Ü|$=\†;À¢˜¨äµž™sç`C`zF°g—±Ê«àÄ%TòÔ?ó‹6٥δÒ‚{lj"3Ò—‘r­ÐÊ%ãLS%©æ¥•Š‘À¼%ZŹ”rFVtž¦¿JZ꣚ì|ø6aT¥×¾…oŸ«sèÞ©¼¿VÛ„¨h¶5\ú}_éû’ÅsÄ‚@ĹcyOU+*0ïVÁ©Ý_@ºêíÌNM#•w#wœ¬P2¤S_/|—ã0»V£À–wWž5HEL‹(’†‡"/…öÇõ·MÆø£È—¬çtu¿G¥ì‘l#Q˜%öhqžÈ©8ÝÝ ~ùjrÿtMÿÑÚÅ Š—ããsOÓ££$Þ:vOÐ x†^ ÍUùÔ{${‹LÞýþm7¡ G÷[Ç l«ÆÄYµ™ŸHJL] IG2ÔÂѶº±µÒñûäè—_«×Ž*!ÉZù —šR-t3†ä[Þ_Âȹ¶°> ]¶À¿4d~!D®Ì°mmØ9Ûö„tÑ@¨·Tõ0uä@]zXùPábTKœå­vA¡ýÔ¬æâMwÉ]?ÃbêmåòåÐtg¥;xµ]½öfÉLç±Ï’² Ø•ò‚.–·~[û½.ñr÷úŽç©“JÇø#E\ƒãj†ß( x6Ìp$l£(ÇÕq ý¢ïqFiIˆ¶WÉ?œ¢IVÄÒ_á–ç4j+z¦É ›(àcI<þ†RË8xJºm;¥ãZáz–nº¹qY2[ÐJ:Ežk_=ÑjºiÓ/¡bd1¸&"ö“1MsÉ²ß )3O\1ë!ÉÔi×ò„æk!mÓÂfÎHL-Ô LŸûrRÍ9´ñ wºÚ$câ °-Ã,ÝÁK.犑ü'Bßbn`KjùQîÎO¥ÆDÑJI2}£›'W8^M˜`料:¶¨…MlNöËs”ð d—ºA”]‡H7JœÏùwU½îu°3£+¶„v;–þ;êJRñ¡—UìKgé.ΨÕᘠPÛPÍ#cìI²õ¢ÎØ÷¥…#åÑä÷.6&Ã*m€ÇnKïÇs:­¤2Á2§ +´?+´–ròac×Êhsiòó›½÷¿«ÎU"¬ŠÒeÛθÉ'¹†• ´±Ò@m·°¾…JdZ3äôçy—þ9Œ:‰±¬´N“N;#i`vÞ~lÐØº¢.&6öÐ\{¬µò“®‰¹#ž‹~4]6ÏrÁ#-lÍžØØ‘Vx´´þÍý»÷îÝ_¢N˜–žÃ]¤Lª ‰ùq¯áÞó`üÝû+Öl½?з÷îßÿêë:ÐÁ)ÊÍ×4É–8‹Qúvåîƒqã<øêÞýo¾ýJÇyºå»´C¥bϱûKÉŽ³~weM´¹j¶éïd:(HïFÿ']Ÿ_sQQ>*•ß9mu*ã³£Ú°ÅB&±ŸÛnÛ! /g“Ëc¯!`jÂÿje– U“èÝ w/Òrä„'.'wìW‚X0×BE&.¤ˆ7×B˜ä-F~/ L>¨ÝŒXØìdŒ±ðOxmÊ:%8(Ò  Ó# ü‘øe1ìÔ&F±ö©Àƒ9qÔÉ[”ë öFa5«&zibzRé7ÎÔŒ¦t¿™LG~ÃA§úƒ6rOûpMþ†Æ²JXY ñ-$I¤¦ñНPKz ‰<ÑPÖ#êϨí²ðwE@,Qš¦âm&×r·Å¡T´½;çv"bŒZBsDN{ïT%¥ëh¼ºVÀ‘’^ucjŒéON·gI‰0í±v°àKÀ\‰†Ìç”2w0„9¾ø”˜OÜ —·Â‹4xa ©%íôdD)cGµÉ¢fD*Î?*ÉÑ$寒cÎB¸45¦%î/e€á1|åRòxÆÑZÞ `ÖÎ4ˆÒDàª@¾4AkO´ÖOF¡¢¨h›=ç =ˆ­%‘âÖ£ —³Ø¹Ž"·dXI`”3¨¦¾!YÏ£~yÝ~RSt¡'˜;XZ/ÉyƒkQå&yp.$9¸ PD9Ã5Óê¼h¨s¥ž©QéØ|÷NyÇBníMP¨]¹CG@^Ü‹Îb,}޹s¬^~[ÎY  bÞb.I½›zõy²ðñ&Ü®-ŠØ1ÆÕã²DÅÅAq<.NÖÌ7)°Ýg—Ã|“fºHç5Äb”Léõš¥¸ZÜÆd%$|ÛéðhÀõS°eÌÆÆÓáY-q¾Ç‘×ÖÊ}?ÃdÝN?ü°éúäÆKŸHËŒÚO¬§ÀÅì&ƒÓV<\K{bÌmQn³‹Î¥xETä–¯}oJ6ÁÃd’_EÕܸ͒ôéÒˆ«rIžjÕ¬> |Xßù@…pÞí^¥aÃ6,N"zå“Mûí–5SRòçY%fÍMIΤ7ŒK8 ,nF}s“}¹õ.LÍQÎ ía9ÅÎÈäñÃ’F‘6³=mY«¶6ÞëǤ¥§]›©õYl¦\Pª9àw‚ŬbÊ;W«n™9Ukg› ä_É«‰C9 ò½P|!¸Wî;šk¹Í‘ÌÒNä—­Ù13K¦_•N©ŸÒVÚÙ‘Â?[Öìì…òáÒkØó<íž4ƒŸéŸðç×{¯~ø ¶»~obžLšD–ŠY„Þ‹;eiý 6H¶pà‚ˆ”-Àn¬°ÁíÈ©ÎóË¢Œê%à¿.ªà½KºCÎ"’$tBýº4=‹9‡ˆi!â3 *’g(l¨5ì÷ÙšÙ匹, JŠOšY$:¿€˜ŸouÄÿüŸÒúÛ¿¬> ¿Ò;»–9&Ö¼÷ÕÚÚW÷Ãõõ¯îÝ_ûêÞ×\ÿqm}­ªÿø)~üú˜r†'ÿ0x¼óÃî+ŠQ¸ãµ±ñÏ×û»{¯ÂGam}eí›ÚÃà"¾0úÕÚÊúèÖÿHzáó˜1|´ùö”û~¢N øY„-€¶ü÷îÁ{¯Ó#¼Çý?ðÅ>þõ=‚A¬èÅ%ï<˜s®¯ç|ïÛùÞ»»>ç{w/“»Ç— O†ûqÿ$Fédk‹ŸÉŸ˜½™{åþÓÌz@™¹ÐÞ› „ðÞ¥Aï\„ðÊý9—‡`ôª"oæmsÏuÉ翾äóßL>øbyžŸ/`¢ýƒ½ÿ‚?þE>tM·Eï8t öÓðô07êÔèQx$1.Šé‹Ó†Ly)½+ðJ®‘å7s|{ÖÉChTZÌ«½x%Ç C@ÊÜÅ ~KóžP§Ä^šaÉÀ¼†E]’”ƒäLË{¬p1¤è1*Ø·sy¥lcuF:!†¬2Ä‘/à –qsܬU{ȸùÅÚ"óÏó:ú°ó=¬óµäýáYÔ£ ¬FíîãαßìT„ºjeôõòÖ‡— §í c™jÅáj '²tÖw–·êß6lÌ¡—Ì£Ë;£AzŸ¡*¦‹Ì~Œk&gGf¦'w5o}´F3ì½ô ;¶íJ•[_ù@e/âòÖ` áa{xv62 #&ǵŒSMIEÄ Q:³w,fV®´oyÎ5ük„9\Õć—·ZQ·^v@05¾v ˜6îCL3âb"`ì]>àˆÎØ [Âܸµ9æé1g8’³ðÚaw»V@?óÚÿ!(΂~Û?ì½ØÛ~Zk\ée`aý§W»(Òn¿(~ýï‡5w ûkñ°°8‘é_ƒÑa;nu®$×– 8]²-«’m¯I¶} àœM*óžWz8—“ͼa§Ëgåèp+ÅÚkÞmœ}“˜oöÍÆ¶'¿ù‰Xwne‡Q1ðkbà( þÌs9 Ÿõà*‰ÖžÓlmu%G¦½ñë0‹\;e‘$[Ó"»’j(b9:ÜJ]î€wÛ÷¹†"–Fűo.qÚå°3\%½Úsš1¹¦º #ÄÞøu˜)Åfò"'H¶ïÏ:W—fué¬}²’Z¯Kj=x:£Ðê<(TÌÇ%åTg¤éÒ–=ó[)šÎ £Û •&Ê‘ETšQôâ§’?½5(ð+þz]"çXâ€?³â¿a«“Χ’,íqÌ&YVØ~³Òä'CõY¤Æ’ÅL²^—éóRÏÊй`"㬛—’É47§Mó“˜2LŸ£øXYhA‚œj›©,”×]þ§Bû›6L~ZœŸ­ÒÏ%­X¨=h_¹Z%Œ1[‰Jz°’#¯IŽ|;‡fò;µñT.'!å›EP’Ó¿¥²äk¥H)dÇa—Úµ¯-&³lÀéReù[•ˆ¹¦ÊÒ£ù˜6Ër\¸•ç5Àî¶îs4g–DŘoÌ®9í^F=ë¹UÒ©=¦Ù¤ÓêF,ލzã×a!vÊ"'H´½~Š 9“îÉaÒåöÄØèç*2mùÓ¥ÚqïUríUÝsH»üÆ8ܸiqíZêp\ Lç(ȱ @Oy¸ Þ~àUµ:–·Ê¦ n´hÇôûb$©Ùϯ*ãÁs\_êî„ XÏcÁ/Ï碗W—#\ Í|!.Å,ÚùÔ…NÐÏ£7(ޝîkò‡š®çŸ¯ôð…¨ù‘;–Zí#·R3¼Àn/°>×Úþ1TÌùæªzŒ¿†1O?¬JJµg3›”Z]€ENoùg‘FÇ.l‚Jð<Œûý´%Ôgºüé=\ Ÿ×$|î Ñ|^HÝJUÁ 6ëN¤’Sn6ž¡ôjieâ1]Ÿ|^¥}W7b‘¿oüB|. k…ô þý‰°}Öðür&(ªÒˇ2m®¤«ºÍÜ‹Vž®4Öª'äÍÇÖ¼|<¸•Ê×àu[U ›¦óHÅzoTÞw7 žvV•ÔiæRí!+ì¿ùîŸí/Ñ2¿¨©h¯÷éýáYÔë%Ý“kDýg•HóoU’é¥k—ÑÇNÖ.Ç‹[,©^ ~·pUF±²ÿ`*~£ùÄÓîJŽ¥O?»J¢µGu‰¶º‹#ÙÞàu˜]Ò»ÈIÁAW=Ÿ1è¼ 7_¬póOh¾±ÓsƱ|ÜàòÅÍçV^ÅÕÞt@ùø°Ú*ˆ\ƾŸ|…æ7èÿø>“~ö`q–$Û}v ¶OjV«§}¾ÎÞiçÓX:-.,\œï$Ž‹Ô½ çÁ_0 ^ÅP<'Ðn/°*ã°ZTôH*fÌÂe÷#g›t^UYIžãú2/ª;²Hé vI>·º‹ ìÞòÏî)YØ=89é¦ý訞Ÿ&ƒ8ëE­øJÚpÙ€Óuâò·*Íx4ãÒ#úØúq9^üGhÉ×Ï9tå…è|ó5ð¶®Òž—·Ê¦nT‡žvWŒœ4ëÙUú4Ïq}útukO«^àkó¹hØÕµX=ûƯÃ,:÷”EN)Wv-þgw ÙŠ–U¾ç…Ô°½£ùØšµÿõà7gá·…àœ±Ÿó춪Ҙ¹>JåDXMyÜݰñsSΪҌyŽë­ñWÝŽÅЈèz|.p…þ7¯ù~r´ŸµÈÙå|Ëì¾zIngœY£««²Ü‹X–Û=›O¼õ“¯¯Fܧ)νH°»J8õG.нH`ªÄw7F®ªÎºÒû˜ë‘‹’« uÂÚ‰Õ½X”Ò‰ p->•¶Bý×h?1ÎÏ-}™²Ý± ®>줭hpÅŠ2eÎ à–¾Uiº äÈ-=¢žJ\Š §•Ìe7¸:<ç1 ,"@çÔ†¯ÀÛ¸Êñ \¶ä`*‰èfÓ§Ü+!Íxv•C˜ç¸F‹RukÏ´´¸×æ³Ñª«k±8êõM_‡™îÉ‹œ yGƒAÔÑÃvÜê\Iãvš®iûOWöuù’žÎ¨: EóŽä’ 3ÚtÆ?û[©ô]V·PjM”7‹¨5£ :éÅO%£zkp â¿×%–Ž%øs™{`Xï´sª$P{,³I æß¼äùÉÑ~IsÌ¢¦—ƒ´¯£ì =sX|´,®+žË§‰±# ¸•â强• ª"ˆLQ³A»âµ ?”»¹HŠ1§TɘöP.Ur±Bú®¶ø)°ý5½åL+a²´ó.–æ¬W.ý¡¦K˜ùç+1óº:R@_3x§IMù‡…fåç’í©rcN¤ò¸p+Î+ÁìRç‚«€n“Xçt›±Õ´—?U«Â:ü#©Xñu5³šHHðçr÷ðåéçUI¢öxf“D«;°âè ÿ,‚騅M,A†Ïöãc8Éî 盥YþJF]¨|íÂ}‚¢Zy”¸•¢êw›VEjÿ`*†}Ó¥„Æ_úg9´Jrµg4kI¡ê*,‚ìzcW`¶òBc7I‚íÄNzåÈPw $WïéJj½.©À9£Äê>©B—{(—”TÝáfº¼ã¿êüÀº­€ò±k¢\Y‚]3J¤ßüTÒ¨¿÷*Ö{]RèxŠ?—¹ –õN9¨Jò´ç2£äY¡þÍKŸíg’6Ë5AÒ즃Ïàꢦ7ÒtY3÷x%l.@’&3)wú·RÖ¼ ´n-¨>ÇT$ï*~{c¹Hco‚á¹SOª’5íÁÌ&kVÈ¿Âæ `þ,âæ¸eMÊHz›ôzqû:"Gý¡fÈMÊ=_‰œ‹T[Î?œ^U.‡ ·R½Ìn/°ª’gË[þ‘Tlùf‹½6¡cêyU’©=žs˜ª;°¢é ÿL)Mã61ržgêƒFÍ8³µ®5WBé ¥îÉ|ŠÆµ nÚÈwm}kçƒÞœmk|ó×Î ®[ ¦JŽçŽwr•sã-kKn†@8ñ¤ªúÄ<Çõ6¬­®Æ‚™/ÈÝø\TÛ ÷o\¯ýÄ8?k«Úâ’&¨³í´5õâ«Çö¸MWhý§+v"{¼#ù˜=þÙßJEì °º­€ú£zܨ˜ìõŒ»†ÑN;§Jº´Ç2›tYaþÍ‹—Ÿíg0Ç,j‚„ ¢Ì•%2Æt¹Ò‹¸X\ÊYñ‹å«ÿ||>éDÀ¬Ÿ×ÿš²¼Õ¸¦Á©ìc|½~ §êɲ$Dâàã~|\çgè’ñ¯ö1Yuh/¯ÀØ~huÏN ¸[®â›ÞPVvž‡ sÁÊ2ÌÏ}÷ÝwoºK Ÿ•œ¯9ûrgRpÆ öx4ˆgÞö<zèÇ;y}Žƒ¿¶S³Äñ?ê̘}Äc7íää±tvÂŽé<·ù윭_ãa9£Ž=+#dO÷ºËú–¿ ¿ÿë‡;‡¿­ý~¡F‹‹<+/¼Á*û‚2¸«^7ØuX†€¥N€˜¨„ÆïA”éF哸÷á_ò-& “|m…Ã.ˆDÍKŒÈš-üáu‰‘’l9€ôuÒn\ ó?—©ÃÆ‹e±¾åǺÄH囚g$Gí/lGZ¿Ì(Ë=8’÷Åõ¬Í0 ²å¤‹G‡:ÄÜðfñr4€áކ Jݽ¤q$TÛi¿0ÌåFzu’6ÕùiiìP"ÆÃi¯¶Ó³ånÚ.ÁÇ™åŒ/‹Ê6m$çgQ¹ˆ@ûã³é²<—ã-_„­Ó¸õ6üë³íƒŸ^ïì³b#ÓIµŒMRO…N¢bwf©ZûÐ áØwÔÆÄÁ븕žt“ލ#vÓ:ÓûÃ^/íœ÷é]ñXÈâòàGá)úX·ýWCí=YF?­7¬)K'ô»ô›3ffM@åì¡ÇâH°\µkê#…yt®;æ‘’Yð'g;<üqûÉ?¶Ø9< WÂ¥g2ðÒ… P¦ÌÏܺ7óË8Ë¢“·´t€N'Á¯ÍSC½Ñ‚áh.Á¢Èƒ€ËmøÒL:æÂzæ¼YñÉ.yÆåö-*NX蘆."UÉ> UÉæ¦*ú)°“aN1¼ ­÷eEh‘Ðàþè|+ŠóRÄiuýãU=î'q·}Ý*šÎ0úÈs‡XÑÂÿÖÿêßÿ~šÈÏá¸Våxo¢gõ»q_mð=ÔøQ\y[\Ç3mÁ¿{ÎÆë…œ^‰bsfj±Küªå*©çiÚWÞŒ­T_ϫΑ Ò/ÙGܺò$nëÜâ 1:ò¯:…,V2‡öšÏÒλ+ÌBü–Qì< Fm²Nm²Ù©MýN7>ׇ›>…iP €2‹”3’ |Œñá¹vþ ÿñvì¬ËÔóâÏöª ͺÁºìjT-›ªeW¢jÙ,TÍlh.¢–M#j:üü4-›…¦™]ÌGÒ²©$M'˜—¢eÓ)š™bn‚–ÍBÐŽ¢$öë$f…Á'‚ó‹p¯Û…ÖÊF}ŒÌùs˜ôYj5^ô~怕…gŽÚ ®[ åÆÖ‡iO¶øÇ Ð|aB·¨l`u¢î[Ä…¾|‹¢ûØÀ·‡Áãv_јwÆ>µ±ñÉ»{¯žµõ•µojŒjEÛtQxŒ± zq§ $·Ó8Cý19ëI÷™¨;ÂXà“&-‘¿KŽ“˜Ôϰ•¶cªÊDÁðä4TÅø²Încy£Ëüçyݧe òÓgDýÁLmËðÓv4ˆò¬Žoi瞎 ñà P¹“Ôi”ÆCxõñöÓ€Á|ÑQ ôEèJxžößòn‘(õ€¸%0ìˆîÓg§D úÇC¢"pqƒ /KÔ ‰bfØXþˆá¥j>?Ñë‘Æ7Å]í ^˜Ó¨—¹#)fJè›x#ÏO“ÖiÐB¨#dÀ!;mšÌ0H=Å™Ïa;h†ýµ“Nô®·V"`¯l(ê†úÐ@}©“¦o½eÁà Q5|%0¦‚rAõ¸ÇIKÁ·´E46Rf(Rx¯ÁÖlXz[¬ïZø-8ªsܺ•7Žât´#Àc Ó®ó"Í•NǤ7p‚!˜Ý˜BÔ K9LÅ£E, €aEG0ƒp$YÒÿ(Ìi‚#¤ÊçÎÑö×`½«…W”Ä–¥tMéb+@–ÅQ£Y¬— Xóv&¥Ý`8Údxó‘âDIéÇN ¼—CA‘5¤Ì—ú$vÈ¢"#/–ï. ¾K:}F™Zi§“žã^º@·×Ȥӥû?ý¸ózcc øaoïiXÇÃ@NÑÿ¢O+SFöÀ®½£$4ú½þ‘Ñ œ*[>ÂcBiV‘ Ÿ=Y‚5Åc|‚ue*Aü%^*XáÁ'MzÝ@ìž3Âú¦+‹@pw‘ ‡£AZƒ0FÍû–¿Ü9x¾÷øôvØ¥›‚ËdÙ„…#EJ”¼‰¶²$E6û=ÜRz¬Ì9ÄJ¸wÎÜ–ç”C¾Âöúý¤ÝÚROœÝF€×nl«GˆÔLÒð-ó(/±éB` ÎÂ|d­~rd„•{ïâà ;zL–À”_·Þe9¤u’,%ÝÕwI|ŽßÃß«ÿKt$ßÿ5òËj'9ÂXü{µ¶ˆ½ß]Y#Öþ]?~÷èùÎöÓ¿‰qh­WñûÁª°þG™ð>ü’ â³ðKÞ/3,NÀàú„åS’qa$ÿ{pÑ,ô)[Im](Ùw9N åõüH„7 ΀8Ü1­|€ KtÉ–íd\"׉m¬ì§½~ ìÚº|gŒè)ÒbÎJøI"/?8ƒ·é"ÓÀœ´øRŽã0C/"®B%HÚÀ?RÅ̳8êŠ<ÏøA®¾¬AôKÆE~ÌBû£¡ú¸?4<òœ'½ÏáÉ\&KXÿR3Ëólêwøß¦É@Ã`ãæ~ i+åpÈjþeg Ü•€ÖÜË«<þeIß({=xžž£@„Ù3çf¢RÜ®rw³Ï<9f\‘” ¦.x%Á7$Ø ‘ÃD]!÷éã]}Ÿfå°FÒåUD"‡QˆL€Xáåi áHl€¯š„îä- "wç@ׄ€Ò”Kç€[» R‚¿kÅ0Ür‹±,<A ñã𨓴ÆtmYø¶¾Óö‹¥A±D€Ø¤£~r§¦L+À ÕË”—i–†X¸]ÀMMi‰Y³v;[~º KÉš‚h Y‡/ñĨP IH=q4\ÖéûñÉ¥;É?"§¡¨G¶G„V¾^¹KÊ0œ)|8¤ǯv÷, BüÆ1׈ôg˸ìõâãN@6d{.œ¦•’Q0j×Áñ°ÛÂ݆ñ~é ;»3ÐÕk4U QÖ áF𘬔)È„î„|E&&”M;`â­TKÒ€rôÿ“MƤw@©¶‡Tð ¤í„ÔìwRf"ž©A\¸V’l@Â`€¡*ÃÛr„Ü!ÿ‹M$8¦'•³õ@xzÌøêlÁ;c"o™Â8D×ùa…̳#Ü>€U7ºPÛOH­œ•æÅ‡ä~| #ˆý§”+îƒ-(ºÕ±¬‰Êgfxñ}†–pÆJ »Ñ, ˜àï]䮦ä$g&’8+ /¤Vgµ¡‡¼Òe´¦TBæ*„o3D¥ çÏcWH-âLfE53Òå÷ÆKmâf@Z Õ/Cÿ¬ ‡w²a ‰Z̬)ÊèK-ÀÌGe šVÏ4B…5 Öô ²ïHéRF¼10&¡ Ò†* Å8Óq ȸ¨0?òé寇V–ôEh(¬¯0á½L‡¤qdò¸Æ}g‘¨7ÎFê4± —º`…æÉ°Y‰dÂH?ô‰Ï »­¤0˜ê8¡ÔÄ,—’´˜ÈúP<¬?WÝÝ·›´Vø:D¾’ýÒ%r†þ ˤ|êbôgîË 6ó0ID+š3q då&s«êV€ñ€-œ§b³iÕMåÉÞƒLÔz\¸W„úmÆÆ´Täì¶=ì›ð@<aØí²JŒâ¶jsuz™)¥Ø1Äç¤Ôjδç,Í*j´""< ¥Ã`.)óZ7Ë<Ìͼ?¸YæÁmü­Í¢ƒ´YæÐtÙÌÃl ‡ó>P&ò%ôÉîÉVƒþYÜ7vnºàèG*C x>éÄpu&B"‘6n†X{ú}Kq+G¬FÜàØ@g°¦GòãÅ3+"T"<YÍßëFo†AÙ­°Qt³XŒ^ü~¢2\ƒ\'–iõÍ\]- :–\õ2g[øÑAâ—ÖÅEw¢¿^EŒFøÐȲô*›VBšE\,‰áj殚eRÍB8@®Ô, º 2ºñB"NÂXÌq±/È£ŸÑW@?ºè1F4Dp^ÇTŠ Ë¸ìbAß„+ÔðgØ©œh’â.³§Í%–Pâ¹Ï}Õ†˜²µNJ;JS¸ÅPíÅxEA¦±DÖI˜x|¸ò©èéøyFÔ’dÎuo{2Ä‹Æ1ÆYÊK&E¯ËǤ©³o$0 +3v°ÍN1Ì~Žõ/‹Ÿz¾kÄé^k?´†#Ÿ›ê0‡h íI­°ß''Ý´Úæ!0®GŒ!î’•_çzŠ©Ä_â¸ï²· \-š±…z°?Pî#©iï>#×Oh‘ýˆÉštíÇÃ.±>]Bî[mîÓÐP-÷©ÛçÍ~úþ¬“³l"“ž–û\E„1Ë{?é[¡Ac€ D/‡sî‚n¹7m}Wû™ñrB¢hÿ¤’g‡ú!Ó±ëì=ÝCw™ô%òCeô'PiäÌÊH–?êÄ¥ÿŽÞEôÛÓ½—T¾Îö(Â0Z"ñ2‹[½Õ¤¯¢~¦l-ËÛ?<ß{ÿHzásÅ Õßžòoße:-ÝÏ"ô‰6È­CÂŒŠ ÐÇûÔá Fm2µó¢ÙÚ³¾N€Ì=Žûà<}üëû·]ëZQ/æ)zÉ´"‡D¹ÉßÏÞNªÆÃ:OfH”€ŒÑDJXï Øß›ây§ñÈɦ£Â’^æ…ûqÿ$F½²~~ŸÉŸ`ÔVÅ#`èýÄF2 {k’Õ„G¥`œøœ]¾ÌTsÒtàBô$›’±W}åÀ—í6feg'Ü~±óbSÝ‚o[C¸þÿUýüÇü´£þyÒ%ÏÄr'9ZÛèêãaÒiÃ/t—z+ͱ¶¶vÿþýÿýú«Þ¿øëÚÚÝûáúúW÷î¯}uïë{ëáÚú×÷î=ø¯píšö8ñgˆÄ–’¶²‰ÏMûž7šoÉÏYfýUtb!ÄI0„Lpl>=,!ì8[ QTÁÄe}º ÃÉC2b·Õ¶­eÊ%?¡襎AP«M!HĽV`TƵ ×/ÅÉñÈ8üWdGâÇVû­åiz;ê!m4®Ñ—@÷ñÛ•_`|F7š‡QÆa÷cG/ªþ¤ò'ÊpÞÍQTœþW1 ŸE]ØÑ=Ñ:6è™ÍÑ+ù›G_Ç‘ ÇçŠ[×ô­³)01>…Ellü?x,âmá°È2¿ í±+Ó]ŸE´—f Èš£YQû_I‡_„Lt©2JkEG?½aÛ­ÁCú]•L¾z†ûÜØïÅ-ø€'‡(«eÑûCä© É¡R”fÓü( “&÷uâèD…››µ=t î`m¥ò؇¾*ÊG¸¶²¾r+†lŽC¶ü÷îÁ{ž\±Y"WäÞy0ç\_ÏùÞ·ó½ww}Î÷î^&w޾0´Y†r¯ÜŸcš¹@¿¾²6zÀ{sÞ»4áË‚^¹?çòŒ?`¸iø²õÆ7Oð¯³ï[½¨[2ÏW—|þëK>ÿÍôççŒÃGº·°÷ã_ð§È [C‚‹t³–£Ö5z4ø‚MÙiÒˬM(”ãZPù) ÿÎÒ¾‰õÃW{ðJއ€>Ê%(@úm q‡×P‘‡ÏØ="Ævv4¡>ì ¹H”Þ1 É6VWa¤Óá…¬2ÄQX†,3oœ7ÛÁåo3ˆÿ<'¶ ´ÞîýëÎ?w^îÿ¸óæ½\h÷Ç7ÙÏm…¿Áع0Ç|ŸüÛø½PÅü¸¶$÷ók›À”ûH;(8îø3A¹åí'(3Ý]ëʬ×;A‰qü3bMq¸+ è*íçóh-œÞç2`ˆ~b⬠(ˆíµðù5îÀ·åN™`†=pÉ’gl–ÁÊ,ÇsæšË€isFgÍ5P—v©¥¹ví+¦æðüçóÍüÕó-ðÅÁ.wevûùG+³óÏ?šï(ìÔOì–µùpLp>ÚUî ºîŒk[aq¸+ ¨­ðÆlÙMéži}ø|Éçsç8q®<\Cjá¡Óm&ñ»°þ6e®Ôìõò#£Ê ZU–ô³=Јžì=ÝYzHFÄXaÞLé"ø¦¬ Œà·ÿÔòVýÍÔ‚oÊ:¾™ÒBðMi‰|©7^ï¿òwf¬4_6TÙ«Wî#h,Ш¾G+êší¨“FmùÓÕR49 ë߸cQäœÅEYE1‡2¼Š'Û¯¿Ø{ò§ä|®yÀ¿»ÒSiØ÷ƶ (yDš ~”vê{ã´o*yýaîTÆ¡ži”ôƶxcûî½ߦoü eçíˇ°{L¥0ÞÆ¬±9 lžý? ïq@×òl–7®±ÝÙ¿ßYéìphõ²CAP¼ßéìÍçÝêìR—fº02æøC)mqöf\3üqqÝy¤Èº<²ä_¡‡AŽ€¹OõlûÅ‹ƒç¯÷~úṯŠD}*4Jú¬¬d;Koºoº¦p…ìØYzíñÞÓ_k«ÆmU㶪q[Õ¸mâ0U㶪q[Õ¸­jÜV5n«·YÊ]5n«·]m˜ªqÛí>³ªqÛm;»ªqÛ%¶V5n«·UÛªÆmUã6o˜ªq[ÕOɳGUÛÜÛjW]µQºÄ0Uã¶ŠÐTÛ*Š3õ®·UÛªÆmUã63KÕ¸­jÜV5n»Ò^ªÆmUã¶KS5n[øÆmŸIû5 e͸.IK6z×ÿjs³öloï€ T Ûª†mUöªa[Õ°­jØV5lsRõ£ªa[Õ°­jØV5l«¶U Ûª†mUöªa[Õ°­jØV5l«¶U Ûª†mUöªa[Õ°­jØV5l«¶U Ûª†mUöªa[Õ°­jØöÔ°cd‚À VC7…ÝPèN±'(/ˆlIÿì€Ø:0쉉ëZV–Sópœ?X"f@õ?–:ÉÑR3\‚á?°&üGºUh±¡,‚[¨ÀóÛÑØî\Òò§ØHóKô‰¨Ý>ÞuˆþîEY¾ÓÑÒhª¤žÂ’¶–š²Ä,,ó$ê¢`Å6Cúj#¼ó‰^ýÐ^U0¤:èBÁu Š0¤!PÒ,dégB ú’"œôDJ/‡¢IÇáI?– ,T²¼LO׋ðûí×?üSöÊ3QŸ¤gµ‡Á—_~þ¼ýú}Àï,Qç™h¯­²`ˆŽ%]ÀÈJ¸bÌǹF`¦ }<ãûÙ8"kÏt‚•´£øºvi0²¡Œ©ÖD–(,ÂÁ¶h¹ *¢Tçï­+nÎNJÀ€Jž1ÜANØçÆ…*ø‹ÁÚîQË&—SƒêdóÀaåêëÿfp9ôßeœôâasp(󮇑ûÑ;ƒ¯û˜¾‡¢1/·é<аÛ-¹Î>é*ºû¤ô<ì#Ñ]éH¹kûÜüŸº¸±ßd¯¿9ÿmãÍùïo¬|ùÝ›ncË˯ ÃÍ;Ö/ïü°û*üð¦‹Å;ï|¸{±±1O»{¯`âš.¢öÊnn劄ødsÜ:e§‘©mÖà?ˆH+ zÖ •À‡ê›úyád$©oÂÛ[^Þ‡ÿy“})3Áoàÿõ7ûo\„û›Y躛MF=ãP'r=wí…L¸eNÎäç¦{V?Ÿîg\ÿO‡yÁÚ Ðµùç˜ÜÿsíÁƒµ»áúúݯî¯}ÿ«_…kw×îÞ_¯ú~ŠŸ/Â;»í;eè9 xè7é*òÕŠ½~ôÏ_ÙÌÅ€ ÉZžµYàtþ&÷œIÆ9ØÝy¾½ÿ|êÄÀ›†GhGAö4Êä·ª+ük+íÈo  Ëo@Êßá¯Ê™ Ëú`ë×Êð˜k¦2_ÊŒô¥În¾ÔEзfEækY}«‹4_ÊZéK]·ùR—OßêüõEÏvž8`4õ߯#wûùÊ¥”¼ ϼ©Nðš×B"_0òƒ€çÂåHRŒÒ ¥1 S†`Nê€ô¹{§ ¦°Ÿ8Ú“´3<ëÎ4žœÖÄáÔcþ)ç*{ cZ°lºø„‘âM}¨E=ö1öãüö¾´«$Yô~ýŠjìi„[€v·­ÝÌØØÏàîé1Ž ¨±¤R«$csûËX²*#3µ€iß™{­sl¤ª\####"cáŸU#-d`¹E\¡Às{¿ÐEkóö ¯ÆÀ¬Í)ØPB•õ Ú`ºëvi±ÑWб¿"|!gà8(ÜLÌ^Ã{R{€»Ó™¡ÁõÛkr;LoI¤£Xnubô°€ûaVÚÂDAžŒÐ¢mO,äŒkAh–|µbïõ*²%¹æP$†áfØöZm³ÈÈ}‚ñA´ D¦æ}½: º(Bã®_Aíõ†>UÑŽ)óu §p'[vm²I*ïJ4÷LWV.] |—­ý6—¤ L­‚œ¶Ý6È‹ê:íaïšýÆÒq‘Ñ+ÜÉfæai,@jÓôÓ©¯yˆ€9øˆB¼·Åk ÂÁ5­\ýŸæà¿ì3MþKã¿|‘äGŸyòŸ’ú”ü·UÙ(nU¶+¥ XÚ.no“ÿ¾ÆÇ•ûÒ•œcM™¢Ü½ˆ µdå^ÆSÖÉå ŠTHÁ,/--ct"²ÂˆÎ®—8Úâ»|âë×û¨(-x¡<<«WG£v•÷ðªÞ ÕWã p«Íƒ_>©qž4šµ·?Ý@º˜"úM¿ÂKÔØŽÎò0ÙËåžÏ¯´·çúõ¦eÁ¹wjiT©;6'ÍܺÄ(‘}áL™¸kŒô„ïD¼~КÙR2!=%.Å ‰±˜è?' C/í0¬§6Ýà TÿŒ£A¤…€òBí­÷Ö†zððºbFÿÓÒ¹‰,Á³ o"ÈS¸¶í|:ÿ^ þ/ð0o2®Õ’“SdéèÄYJþñk&5ã¥n{=æK³OØR-CvÓ“…¨gÁ»‚–§õÔÒvÁöõdódÅVuboâ’©ãqDIc—ºõמðS¯j,«£³>PƒY­%;b€kº:zIå‰ÔxËéBfÒ Ë(ÿ0úá‡;ܰi™äû~~RTé5N¸ö„»ä`V@ð¢Vß×ÖÊﳊÉâö²¡‚c£e!›6§é†PÏ&?=º‚`k÷÷R@‚58ÈH¸sÙV,ÿÜhL¬_–zPVë¦'MX 3gËŠÀC|m$.3—Q`ç¸ó³,ݪ›Ž)¹àz½âØâÿ9áôâ83ýµ"ÿ-™ü‘rØUÅ ëæ_ c¤£K ìk˜™sç´y¸iÊ@… XtWQ‹<&yBp'hùãþIÖ4ÇOv_Àßjƒò0»•-Y\2Œ]öÔ¤®2»”ÀÐ0{.tg”ÉÎÛi…^“Ý[º¼íƒ ­Rï~vÁQ FÛuðËMÈ9éR›½ƒÔ:“¡Ú·3$*h6jø¦ù¾&U©ÜY¯}žš gÒTýM³Šñš¿Ϳ՛¸üAýEõð° ^šnLi¹Úx²Z¬ŠØÏ&¼¼6~ÌdH.¢ /šïÓ^©z4xJØÅƒ‡¤¦‘Úâhè¤8&[5b?ô²W­ ”œI!Ð.9ÀQpˬh` ›¹=§°ÙNÉ )H§P>4SŽ[\~uÔV~í’A, ½V‚EÚfLéž4Kg ’26ô(ŠÑ4j«"©NMá/4†[’‚™ŒÆQ§æ.CŠx‘t& (ø®M/& MÄê¹Â´—éP蘠ÁÔc•w:þÎ"&!ËipòæôÛŠMúaB œµûQ/j E=NK1Bû}äý€‚us©÷5Ƨ8K½²'ÝDj’']عD ‘"ÂÙÎãX5Òk“Ú¡p Íå©„bhà0‚`0·€@‰„à„Û‰@oBh’ýsù¬eO‹n¸ Ô1Æ•cO9.ÈΟè•IÑ¥àä|Ñ®ƒ_—cõz¯­–ºCî54£}öÜÉ8¢6ù‘ÂúüíPû° @Ž¢ Õñ=³CŽ¢X£¶êíô:ø u °7ô¼€ˆL§!Âìbr‚kä¤6Þ ÔU§6].c˜‚ÉÙYên “!y±³¿ýOpYëµ/ÕÙÓ_7uêDrä̧PD¢úz¿nÑ9º³‘Û%³I7é²ä:˜BÁÝ“p`;²¨VÌY†í$ÂиÔhϪæˆÖ©9òEMÝ™ƒQìÓ ‹ÃZNRÜ#Õ§bëÀ‡’¡Íç}.A¿ ðZ"æ0d zO&!Ae6ÆãÉ€Œáz Mp…QÉ ÕR_ÌÙÛ-Ff0kÏ6.®€o̪ Ý|ú’œÇ^¯kÁ¯À‘QTˆÆkdÉ ÆÒ¾räE‡žÄ -|ÒàˆÈ͈¶*µÍteW»h4j>žåòÁFÈž™… iÀ…rípG‚ÈHCXuÁc_a%=y’ƒ¸’ú9êS!йö`!„É@|š ÒÔ¶µ¶Oß½Q‰'ÁËëCøF,Ô1Pf¯ÆédO®ôD {AE„×X&Nç©-Jj b1¹Ã@IÌCæJkÔQ¼#˜ &é]\Qøô"Ð.ÿiô»à­Ø LJa ôIM;‡gdzF éŒ„裌å5úúUíu®Èìrßâ¾á(rñX8T ¼JÒUvå: YFÖMK¯/È',Le¹}VýP*àèu$ŒÐÒj"/â\’Œ6„ÈQÝ ÝÍŒ9*ºÀ^BÅìøMw¤ØW¸ 3WpÍ#}µ¢ÊÁþákyÍN䨭@¢¹–Ì%- ³ªJP\s˜ Ý xl˜+ ¹sH  ¬½—ç®ZÐáý×"Õp=ÖNI8`hŽO@r, |Ö:v )þd -ªM"‹ÃR‡}R{¥ú·4à(jVÓÔ{ò›p |ÁèšSæ@yò'?Km%³9Ü9Nq`nÂ,cä’"ø_o‰¶XÈn€~xf ÏGíd˜:µ!J4& ºzžÑˆ8 %_CN¶#u5ÁL8ú0|¼'hÕH²4o~ñ|áÄ´‰'ê]êe¸2"ˆÎðÞ7 !G‰# Hþ æÆÃX¡=ð8W#áá¬ÈzâíRƒw>u:ØN–=“íƒÀ®¿À™Dˆ*çP´ÕA A¹¤aèÆ¯ÐctÒZ¸~­Ø„„z”¡´ÐéÿÒ %CÞÄIFªƒ1î!S„^±ÝQø1å{(¬vò=cäZp²¨]ô‚÷ƒ"¹ó^|ŠƒngÔñ»ÿjoïg Y /Û_ ‹¢œèȬR‚w+bD[ÕÄ[»§æH^ç@ƒ¬›û§±þpO³™j¡W!ÿ÷hеT ‘K¹9ŽXb¢,«‡´6œ#ÂŽRÈp¸æZ®Ùîd2 ¯+:I1> ol< …ö F™ÏqΛâ•%Ç¡dŠ,X5’…˜“´ef˜9$Y ¹ÔâÆ5R¯¤q;rfV:Ä—"iÌw˜›Ä.m:ìù[Ö5ì†sñet—!Cpi` ¤aK˜dƒ÷:ž— ΰȇÅPÒ1Ú o` Œ4"&Ák‘Ë×XZ…?H¹ @žQ¨ú}©£ê«ÕNs¸\ÄÔØÈŠÆ§@ôƒÞE U.0À ‘¯Œ¼9[E‡¡áh0:ð¥IVj!`[³B*ÖÜ>'B2¶D¥¾qO‡J;0`@µv*Ïö”À®OÏOÖ²ÅQk@ÍPôd_†#)“¸§]òlÙc2@9K°ø—a¦G¤€µú¢ý réžîÆ(œd>ÊêUëî/PÐÓý‘2]!Ñã|2QèmCˆ* ¬û ÷Pdú#h;Î)*«ô'cíQª«p4N(Rî4:?‡ý­ƒ"M uNÏÁ”3OƒìHf8GÛJs¢"2âŠz4IÐÆFGÁe} žû>lÂn«¡t?”LÔñª8KÚªy=’6ù»*QLƵ&l)…6XIGÜ“Di3µ’ ŒX ¨#˜raÞlx-÷€tݤêÌib`’8F¦6™D½,‡w‡ÌöaË’Šù_[Êøˆiqú‘bÏD>«XÀ‘tHf€p £m€{4µ,3"_à²÷)ž€Še*ÍuÒÏ‚ ^;©©^jzG{Hæàâix4P ¯;EŠñ ä56ƒ ¼aÞà(fñ%ì›n©M•ú$,[S¶2 +æj¼kkk.Š«è¨åé1ûš„ZL@øŠMó$¯S\@ÇÁuFsIGq)£(Nå“‘ÙH;3êPüÐ`ø, Ai¥62JV$ô±N ÌDAÿ骡oWÂn›ÀÐxF•}؃dB:$¢*+Æ–Fö×)Wfë1£µ°îHPfþe8ߣ޾]CcM×dd.>÷ ¥c¸‚j“>J²0J¨Ê Ê9 t}ÓÊ.ìzãÕx|‰G(n2SjéI&Ã#=Ýìé1™ž§¹þµV 8'Ó„¢ÊiãD%×Mkr«†ü1'¨eÕÇyÎ/ð⨻†ÏëœÉÈ¥–Òœ´`Ƹàt‘¶ÐäãFá\n ²á.QÄ;04‡<‹tÅŠây!@Ln£ª¦lß8Âz&_¢ÉAÆw›¤½„ mÕIIdmbÀ„qû\Sz=ÅÁ{iDDæ»ÆølÏ FfÖ½µL4,$¶ŒZº-µ & ÆILó‚ƒs^äø´AÖžÊF¸ìë@Wû†ìiõE÷–µ­&w"t‰ÎØ>L!ÇÚ°?T†m/MŠ ¤=US„ƒ ¿ûÔ·éÓèйx[!9¤@º„»S६™ùhM ‚ŒˆµºÖ ²gWt—¯±¿¥ÒÚ¥$MrÓÎ`925°ðp!ä@0ÞÒÀˆÌƒì?f`yJg ³'’S 9”E5Æ»rɸBXJ¢è[ŠLK ŒîŠÀ¨/r ’tirlDP2À“a‚B–õ:§ØòŠÊ|$7D[ÐÊ!X$KÚd$íA´£2Wt–…êŒì—À_´y1hKÐ\ÚIºmÀÀ[Te½-yA’ ÖüRóv"ø‘[¡S~çîcïf3™»{É,ÿݽt(­ÂW ëAœïñ(7MõüÊÞøžM›6Ë»„w,\´GFž]!›5gií¶›ÔÀb»»øpÆB·x?Æ ¹™@’ 0Ô'”œFm߆:÷ö“>\êÂÈ<®o§&þéúvgJ…”üG乄ê~>–H}„Qmìcޝ¹=4éð’êBùnœÃÃ'iJÚ`,%I M#¬Z~!ël„®BìK[gãУqz˜Š®ñœ×Æk¬gÆœ8[ŒDQÕ6†'Ž î|”™®ßj´j¤ Áhüð/UGŒáú#à¨rkkÓùŠ„ÝSÌ@§2rѶrlxóCÑŒôëÀ˯@×»Š:§y A2pkOp>ì´k•õP :< ZÛÑuÙXã6Qõ@ú&í hiWRAgœ3*õÚcB¹`¹¨ §Íèeèæ’ÅKΤTJÔÅh# G”â¤e å›4PÄ&&AìˆØ…*!y<)ò÷/iO&5}uZN†k9Χ¢sc  ÍJÛõFõ¨ªƒOq¬#Q^ñ,`$ÑxBúòµ j^xÀ&Ó*…[iZ¥Ïô$†=ЏlT Ê_ ò$ú<°6»FÁ¥ú˜å=^82îgU´˜ðÙIª >=… šFf^•DEy¥é ¼X‘—A.»Io ”j¼æÙÙ©ªŽš-ã2Xèâ°Ÿ£:B­ÈdH, „†8NÐ7Ä.­qP«5ƒP¨”´)„šÊø‚ãºêaÀ!Dz‘~R†‹žõÑÀ¸(¨BޝŽQÑoŸÂ)3hâÔ Oq–kê{$ ¤"§ZFJV™7Ìe_0#tXš¸¼Iãìñ’Ò† ÿ7…žL!ºÙy¦÷®ŽÇ‡£§>­<¬¶~M(ó–Tˆ0©\ýG3]ÚӫʬÖñ{D¡Ê?Æà Ésb UØ ±êFYUf:(l)“ãÔanAj‰ó–ðKõ}}MìܦEg$f%ÕŠï<¡ ¬³ 9£Bâ0†Á•ÿÀßSB–¬È€™6?)ÙÅ`Ï£¬”uˆøÇà7j.Û®tŽê¡—|Rú¨ÃáŽÒT.¯—kw:H¬Ïõ)äKDçc'sŒ4Ùr±ŒãËXkÜ…Ê1‘Ä9›ðœMF™>›2víCF­~„¡_“QÊ娍móŠ ›^A^l•Rßdb®>ày“¥d†Hà9Úèâ ÷œdî`Þ‹FÆÆ©"éj'cÜIˆH×`:ü¸¶Y䘋Ø*Á SBŒ:d …ëÛŒàÚ¢Æ!(4tÙì¡0L/hÚÝAH¢]6Šð)ÇQ9³;!` 1%gáó Å•c“ïF¥*13 ¯cúË0sÖwµiø|¶2JUÙ¬þ+ MGýö9Àá2KCFfgÀÿguÒ$jx­žk§í’z•X960áÔ^æ^ÑF*p»ŒYb`ókŒê’ñyÈ?SüF›¹ÅÁdœ\€ƒ‹&°r˜†sfÛDöt¹·%«£a˜ÙÖ”Kj!ídtýpt¹Œ)a&&Óu¨¢ô  v{†«¿îŒcƒ¡Ï‡ÔóÒæaèxèòlB2Šš)„@ ÁV34ãÉ8EŠýÞ_îç¸2îg#dD Sèõȸßž¨e ó¿Àjëy`¼I…Ž)#˜6. €06{ ð$rÚb´`Ü``t ‡Wº%Åh@^%® ×QgÒ#W›œÎTË{7€Œv6!¾/ÀaÀÛÓú§GîUdvÙ$¯úìdO”Fíž“·©#ˆq©STº’HÍp«ŸEW¤áÃù‡dÄô2Îá^ëÄqmŽÕÊUƒip‰á¼ÆúZs?`N²©dåéÃú„U”ù°`–– Æu]ðËþQõb—ÆœЉKìì¹Â,½Ò“ ~ä·%ì€ÑwmçÑYßuÖú– Lûh!“bOŽ×\ôøñ¨ ³âáKõ·U=<‚Dq¾=ÍQî(¾"صí”ZÔžéà ¡†eõ)üAM8ÿüùHý&ÅÙµL\c<5ÒÒe’è ¤¡½BoèØ]M¯´Õ¦k4rÕr=@ö~&½ŸÇÙîgL}Æ›s¦0ïfebÚÛµ#wXȱ „²T8PcÂkÔœáa˜ò“EÜoßìC‚Ý£8ÛÕ„FŠ<yUK_kÔ¡öÚ×€p‘`üc’ÉL ”}‰›Œ· _Œ›©vpÓ)†g„žZñˆ Ê( 2I^êÄBt`œw ò^¶![s¨ÅL5‘St!Ä8"ÝDML·§ÇUЂž¸ö«Mþ!"±YgZ6pÃãy¯á‚Y$é\dž-ç.(û*ÖË1ÿe ¼÷{`Ù« q͘3@Gè*%«À0J¤]¯Ù昖¢È8®£JÓßÒŒwe7S9$$–¤P=Ñ®¸ô·¬4÷¤ŠdCýŠ”°OžDzþŠn€&X-𘨠ó~z³ê–¾@µõOÀpÓãÿZLˆˆë$Â3q(8.ʈP¥e®wxÝ?Ub—*}’ëþ 5‘9 ÈSÒAµx´!´ãxCÁÌžì­èŠYûªB×ì>:Ü0U/ˆ8H:LÍ_JÒd'僿РE¢ÃÒ›9þÒØ-Ldç¤INÅNÌi¤Þ’ßaà& *ƒ³PK<ÎÔÅMÇZI{ä¶5ä¸ü‰ùX¤ôÈñ//>›²™ÿ’õãäÑq>ÿî¸{¼öþ‡•ãõûẈ¼j´µ<,¥±`²¹‰f!wÈ ¿¬¦²,¦ŠA – :\YÈ‘è./eáv0xÕsèàásÑ¥^"Ù)Æ·+źâN­„“S’ò8ª‚¦û€Æ¤7ÔV·Å 0o>éÒàë:‡ÄRM{* r&9„³ª([G{“sOÀÜiEHꌧì Ñ™†WwR4KIH‹š a<ìèKº15É,¦«Së&[øtḙžƒ½±Áâ dò4;÷Câ…‚ÑFêÐzƶ͆#1¨&Rûou±cRFP`3nÇZZðuõÍaóÍ^úÛ ËÄ$#¯ùà矼¤ÈÊR*ÛÐèš§pjv•têødZ"øäÁQ_eø XiB7¹é¿¨Õ“òb•^ifX´ÝÀ1}'jÈý«† ÆQÆúß+ÁgsXx œ†ø´KT=UHÐ/†Kî«òx~9Yx5jè›8g¥(Y8z¶âÔ´w­þÜÇîõµeíb†Á´šº_´™õgæ¦ÖŸïÿÓy[wzí )»ñ ¤ÔË{6㸻¤Ú¡[G=,Yˆ|#J ¸8ðÉ8òu=iûöÀ[‘ȱìÌ"‹-SAË‚ïVKïMÀx£2rKn¤ç%7Lr2‡§ÁwÜÈbáÏ¥ƒôjðêºLsox½EÕ—øúo¿ýÝp$×÷O¼¥ Æw×-|™¨»¦iºÈ1È(À‘*—~T…ÖŸ.­È·AôÆú›ÒÈñRG2Ÿ©› ÔÆ’²‚µ+·Q-I³à7©܇/¥µ}4Ê9)nuUè˜|—öDçð~kºƒT…mšŽïfàîsðº[ÀÓœPrÙÞ£ÔïõC튡Ò[ƒeÓa%ü lAç0éÖr9¶€‚Y²ål!`eEvKÖCcFè•ìê°JcƒGx™@f­×Ù•¼x)ð½ù5ó +è&dh'9Þüµ¾Y3T€(Ãòs«ÿÈ fZi€Ê ô¯ ‹]4¨HMÆ1„œé ®‹Ýé¦,SÒ)À¹8¦2é¹Ü>»jjé^»c¢qq86­ÑSÇÓDšI¨v½—pYÈÝ»š÷Ž;^5B† Ú 7b³nÕ›¨ól Á¢!rLj„Ð Ñ V¨tê3̤ySþ$ ‰8ÔÑŸ K¦B[XÙ6Š€ÎÁ*Ìè+ÁǨ­J5Ž €ì{rZwM T²膞K ‡Þ#ãÂz±ÎBòœéG–¬_¾‡{ëëŠJƒfs=i_­kH¬gSXv6y ®­­µ®öPóO© lw u’´¶3˜ÐHre¸È¦¡‡œ¹ÁqØò,z±ÚLТ °r°xx*t¡çˆwºÇ4°e–8ƒÂÒeôYv°¬0ÁÛÓi{˜ +8¹@ RúŽT«=Ò€Å-Rj>‹´¡²‘{X:ã„ón ´à¦°¦9GÀW‚„êÑñÃt°,ºˆäoÊ{};Ͷ%C w8ÃèÊA´h!B‰&€,È[ÝÖùZkê˜ §á+ i†Hú¯ËûœÄư"ŒÀ›Ç@y³'é=pDŽ<µYÕÛ¡êaæ&víyÀ£Ñ´7·ëônØŽÈ$Žé4›:Ù˜V!zÚ«¢0ù\GL͹1m‹ÓF“1œ’Mº_^Ó“—dx/­Ë+`„ ö^²Ï›¶Ë‰ñüÁYO’Ìh‘0¦&aÊw¢#°—óµ°Mõ¹=5—WÙU!¢·Cnp&‹ír5ÅB()j)‘±MQ$íc¥w—îÌÀ´‹CH †‡‚È7…ló8\bL«?Á¸9Н•ö’t§1@5Ã\DÃDuÆۧ\ÆÙW®)¤a—ˆ'àËEÜæ`œÓÂ]Æ1J›ÜÅ/ϸ‹ýzóà°™]ùc˜$>Cx BêúÃqï/²$Áð„¢cêÛßxVá%'2óÄTÿÏ'‘™zÿÇp_¿‡>à¾ossjþ¼/+•¶‹›¥âV©² ñ+åÿ 6ï¡ï¹Ÿÿã÷óÖÿÒÿ̹ÿÝ,–6+˜ÿ§¸½]*–7`ý·¶6¾Ýÿ~ÏŒû_Æ€éW¿ëúºwݺú-®íîê«_·Aõ- M7È îª_´GÁÃCô6‚ï+ö¥pVý 昛þ^g k„c`ÐòNSÆýò´6qçÌ ÝÊF™£F#ìô’™…Ô3(ä)cçtK -¨ý –:«'æËô)_o¤U!º¤ìPK‚º÷÷ÁÁæZ±¸¥•’ZÈôMà ~;ˆ@òk^a2{C9«š¬$,žïV!ë‘›¬&ŒIàê/@žAL!” KJúÀðùß/ùtÑÒ«§ÎéÑSãÑ.ÛJÔÆ;œeㆆtÉɰÄlÙåååÚe9³²ÚæëXd}é±.?µ4ÐÕÒîîÎzê¿$rYe—¼'™wYHÍ¿oùŠ9ÍR~©®Û9¤v8.ìu862:¤Á)îVŠCO”ÆQаÖþS±]’f³Ë!©Ü¦9å¹ÁëBûäôzÞmš_s”nâÿU¹»QµÏC„Fî2Fä¿£îüQNFÑFùöÍ>Z¸ý=1¹ 1²–ÐYDÓô§©ÁJn¯(¨ÓÍ' úuóIg–ÔY¤ÒǪ̀sÐÃn´Œ.~pH `S³›ÈH>!!@Õ‹Ý„7{gJk¦Ž’ÈI±êÉ ë-çÉë-'sÃz‹Ø™a½…üùa§u²Ä2¦¯+&Z0@EÌü§àp¶éDI³—[s2õZ 0csð&khV5jB7yÒE¾ÄØ&YM¶ ýÒN¥Ìé§—õ=ÛâGH0 ‹´J²6—^°âÝ·Yt˺,¹§³·¡¢z© ¬,{â)áT…'P¦ |âãÜX¥êÙ%ð1¬3xøN;›µ=§‚Ì‹-'åš )·Ý ë–7#º×11ñá¬=n÷h-óÔ4!L¬>EkŠ3‚êN¡Ê²:{{OàβŸ§Á^^FI瑳W©…ª=uWÝßçÏö–15¿ÔH]ê‰ïLŒpF™û£Qä{áà||‘OáŠ1õ;ÊÕ§0s4n”Iï°^›cô©I!x½Oîz†jàAqJ÷²f—§â û&Ý£ÞÅÏL‹>âð  ¨8ž ¯&œFãß•T>H˜m¶{j àˆÕ5{3ÊiçÖ !†ckÁšºy ˆ˜:uRÑtLýö¸s‘W„9U Bb+µ—…£_ Ï‹:»©Vób'9ÕØÁYšÏUïãJ6‚4ÌQ6 ÇÜÚ§‡€_yøÑk ÷4'©bØÃi¬/Þ„„i Ð@,£a,aÆ0½K.N0øÓ•a笶’’«³ƒ? hôœÂ#}¥ëx8Pé­Ë|Ê0Óšš-¸f ©N-±Í`éÜ_ÿrxù½üÚ£••g×}ÖSxIÁÓPË€"Ú~Úƒí&¨`µGá ÕÎ?ÔÑâÔ(Ýúˆ™-ç |¦uQŒ7þ ÷2µ‚+|ô—õØpQºSZkˆ”šLÃáÛ×Í7{{ÄÕшNúíᙯAbÍÿÆ¡Œ˜uŠ‹¯wgÖ!¿éQ˜Æi7wÝI–€ÕD2мøïOfã[˜Rp–(Ñw.©¥3wÓ(Ùšö Ë`sêÂÇ߆‘—×Üw´3OÒÀzØ.MlÅ&§¸ ›>FcÿÓߨ“þi“á§¥Oª…*¹”GŽIú dÅ«,Ð$¼ï¹g§a«ƒ¡ƒDÀ ƒ„»ð-{yãÐÆt‰Ÿ€âL-n/f ˆ~ØÑù ì_.á2­3aVÖp(h묕6ŽÎ)„Ö\ó»¬7ã¾»Ú~©¤§O7øk¼:ðæ{͹F!x‰vÙ=N„ƆY€û O2öÈâUÒ#ŠÃfO1€Ï“@°ù² ^*ñßÁú?Ž×Ÿ®{…»~¬šnƒÇ{ZÕž¬­§ëhüç;ìbŒ ™ÑqûÜ9ì§õ_2ß›SÖ® ÖÁö4Íφ9eoÍÜW3öÔÌýdY¯b“ŠR¡Áßû’E¤óÑ’#ái&úYg9ÄÃ¬ó›¼ j“ôÎÆk<^_`¥Õ cÐÃp´ðB›ýáB*Á|ki4–– gntÛÙ»Z” ; ‚»®üoòÿˆÙ•rjÄ/?]^™.U ,BžGÞˇ3…½‡…3Tª«°h8ÂÞ§ %Æ3óÇÜŽ––µ7…¢myæKýŽ˜I1ÓÐè ¾§h©,D³Q‘OxÖŸAºóÆøãwÎ õ!]ošZ:ɾÆ#ù[×!-@&ËRÀÞblÇϦAðõ~º[6:­IG3«ÝL.¿™ïÁÅÑ}*¾îÊÛ†L€7òø†—=~·nÝ„x×݈¾ÁyÁ·3-²üª…6v:R¡ TÑ@b±,AµÉü]«¤Óg+Çïß?]wDô¾h£œý°$wŒXºk¬³üT¬m¦Oâ,é§Žä)wtcUð©sMm/­YmÃtí¦gM€TNVùék›M|8,,q1ž©ò—ãüœS€{¾#’¼ûÇß¿´òNýK4ñ¡8Ý^Ëïß«£Þ¦Ô"fô4\ç1ênÕ …o‹£·ÇOèV¶ñŸŽ±Œ‰ J] ±Ô9½\„+Y“QÛ8“nWqã9¯q$¤[0e.îO/ü½£ö/ 6- $Ž‘`(¬íYêmŠ~4 lŒ&Äá(êdÑç³16ëƒãî£Ï®ÞWwÛ«gÕÕ–Ú¹Rýè?4.)ê½å^4Z]=¸Ê½ü°òXôBvgU˜…Ū´}lhâ¢Zé\ŒN ¬ÅExEE]‘DÒ™ÔžÅ×ÿý¨ú˜ž$œ«:êõÂóv}å2D|eÎyË£Sà0lÑÖcghæ6U Ì> û À#Üïâ¶¼iA‹ýß¶I¨ÍÁ8_+*! 4CŸwéƒí€‡ö2GA@Ôåñl): ûÑj'îab…OþÈÔÿr >ÆŒIÑq¨Ò^pü=éü¤#´Q…’ A¦ ýÌ ×'QrB-±’Ñæ Ä»â^›RU¯)Ò³H5dSbôé^'be|rK[&RóO½pŒ6².fTº£uB·9˜Uc¡P>h=Ztv}¯0VhsÀ’jßœÜ"šÚƒxæ=Ûk÷‡ŸÏÇŸ{ãÏ`·ùì4WÜK·™ôAÛ~–o››3¦)üÜ o|s×µå-Þ¬:ÏâRøþi «–AÉ>®:‡‡"øöA[Ç,°ÉïTjä;–™”,/p*xa£M–ÔP|‡¤1]}HΛçÃÒÌM» …½=Qv¼èªú@I§˜b\–ÍŒMÕ¼ýñ$M˜ÖùÄEQ–óÙÄE÷dÑ‘{%Á26º¼Ù0O•[Û©Úà©—)Úr×À®)¤J÷H—áFÄ=ÎN¤‹!ÇöXgGÁÙCJÒa8ºh“5[µì-õNtÅ^yB"?“"Ð/6n4†ý.‘éutÿPï6ÂL‚uöÂ6RN%ÉÝÌð­ê›“Ó¬d*9ß’;[ ÂÓæáz%3T Sª’}\ÌV¤`kO¨ØbbÛ´Û´¥¿ ü`hxï­ñ!c~ïˆ ³GaA3í×ÒËÜ«Nã$ 8ó0?],C,N@Qy|U._«ê_CýÛ}ÿhE^K¡k²¥ç?ö¢/Ôç-¤äަÏÁU@Q? ÌÛêiÚ0=©¯ Þðñè@¹jÚF<ÓºÕ”PÌ‚=÷·¿/~2[ÒUï×HA÷e—Õ&CµŒæ@FiÁ}}§OC[OMa©tÓˆ¦€¤Ö×Ád;AB„žês³ eÏÔªXó¡¬:µ£ÞuƒO¥ÂÍz°~•Á¢÷i‰ªàIËYÛà·‡_qè»ió6ųkl< 6„KÉøÎÄÀ’¹5È(ëVô5c)ñ§ÏÈÙ\v} ˜ä嶇Á´;="^Ô¨y¿§ãÄ› ¹‰i¾ÛEŸ{uC %0~qeâ™ô-ø!(Y\5Ãkͽî¹ÍíGÖˆ„à¼!ÙW76ö!R¼_—ØÞõùÑPDZ÷Qs£cs³½ƒÃGDïqß®Ÿ?vŠ}Ÿ¿BùçTlý|| ÞŒf¥lëçaìÞMè©ï9zËÉù ¿ùÜß­®ÎµŸÛ°È-Ç”þ5Ö¢¾Í7kXúL³wG ¨My윽HH:Òc³åˆ–³w¢JxÛ¾ºê¹kÇa›ðð쮩SÓÊd=ò|·\˜ºtº,5¡­F³úpÝÓþ©ÞÞÿܳ¸0cjþn'‹½Þ¿‡=V6¨9F> ˜æR¢M“+âÔ›S]Uæï'5SΓIm Êø'9tsˆNx®æ>¿å­.|¦‘†Y]p-L"ÔÜçSøÌ§ž%&›œgS¨Ž^Cs •À2óvrÙ3ø¸»>nŒÝ)»ÚŸæ Ñ·³ÝqLÑàÙãZȰGd=Ïf˜q+L@®¿ 8ryS•óöêMîO£âÍd¬èÖoà§z/2R¦¡w2†–à·"d, ~‘&e!#%ÉÜ'O׿?~öøÉÇ+ÇùãwÇï Ç>~püÝñ£ãÏ ýÚr0¶£µ6ŒOõ©†çÕ xÖŠE(d ìehæ»'—]M€5]CËÆŠ7:ìÍŒû\¸±ÎSJ¹ˆ9~ÑÀ;š3LÃéTü#ùx0:0uŸú±ŠËKïW¦ï5ÍÝÐ Æñ‡pàì°YÞzF$Q.Ôšõ‹Áj_)þÜÚP@ŠD‡1+؈Ì3ƒ\sté½½VŒ¬º?ô¼ñ·6+Û‘­uìR·17ù kÍÕØÖýk›˜&ró©ÆÀv:y©ÝÑ©:‹ÅBS£O‡œ†¤}²µ=B)cÃ…1?º›k;Ë‰Ú HؤìµüÍñ'½q±)S¿òœ¾nO‚ü$Ña„û¯Ô~¼Vó-èðÏb8ÊðŒÙ0ã(~†%ÍUëûûëoZ;i åyÓ†q艄"TÕy ¦Ù !7Ø)IŽ”â\¸9¸O‚! Ô<ÎõA8^W»\“uŒ¥¦à¾^€|ù—Ã"wFÂAtªŠ`ܵu5ºd-ø9†gÊNÙmõ˜uLE_sI‰€ qcò×”é¯ït>7œ‹n†JØ1S%ÝÍŒ X€ÂO%”B¢ù\HœRˆ—9÷k†)œ&â2rx!Ýëb.…6$ÉlcBš(LrœXu5ÒˆÁc¬ôCN iïºH‚ÃïBðEÝ%Nb%ˈV{ûÓ¡w««JµµÌOׂ_0qœúé[HQ§]MDqà3rªGß «‘"™jëœK)ª³g!šEE¿äæNp\ˆQÉ9‚&î³CLü›Æ£q@Q{t­fYŸŒFjÖj5z1„ЩWׂê˜c–²¶ Ü!Ñá"µ¶1†t›rž7^Õ~{Ý èâ‘°r”H™‚Ã¥`±ÃžV‚M¼B¥Vu´u›˜„"ÌÌrÆ­1¤qmÓÞU‹Š¹ã)A!æU$ÊhÌÉêë6F¡º¤„Ë”¼ƒIGÑǨÝ+H.! ¸Æã°«ÃΑ:WQ¬;f~;F‘tã‚Î$á˜òPB\Û†™?Sx§`¼´û)I(²;“‘q|Ùu“¶%Î}amzÕNઠŸL”°sûl}kA=^SŠår±X273‘MØý“óDok<`¾}Vc4Y¨Î„ç9¯-Üt-øM7EžkVtÓ@G7ͽ&ú¿½Vþ·‰qúí3ý37þk²z2ãqÇ` ³ã+›e+ÿc¹T.o}‹ÿù5>óãîí™(`E]<=c<›Y ™‹×Ùám–{Qñõí‡;æ;iO0µ™¬†#u K¾zǃ%T¤6~ùÔh*VâDM^:”~µÑÍ'_mÌ×§oÊED²…Æ#jÜb$¢ŒE0m!düZdfùÅÇ`Ör¡àDå™®p[p5s†û¿uçF%³ëÌu‘ž³ÒÓ:Æè7`¸ I"EL;¡¬j º¡xi¾f›ô+ž¬¿æâó×7ÇbÈ·z­M¦ÌWoñqùjëQ=^„W‚ðtì·«KE WÈ:o5DçŠUFÆý˜øE† *,>QÍ\¡Ém©´ð8|õn³×ÒJl´ÿF÷>jøŒè—c$5}`²ÆâC’õ윭 -%Ôÿô±¾ðg>ÿG°¿$üœüßõßâÿŠåoù¿¿ÊçNñ߉éþzru9»8©ãÞcHÇnõs/UwÍË€¹¦wóïObñ´xʦîe¶³ZÈÆñxVt˜…FÓp{Ö×»Ðþìà„bHw¸Ò}Àz¯Ó0u/ˆºkkk¢ÈÝq7›d“‹î7<Ö|Ô,Y·ÖA!ð³˜nð™n0ßXЮ±Ïª£CÔͬp‹˜8zQ@ó…Ïþ«Å™W{þû½ v÷°µ¶f˜+þvxÔ|9wsm}…ÍEC ¢.œÅgÑlß›<—†›ê€"î¾PŽÚFSÖ®£îë·µûõ‹éÓPæM_P–™6”N¼Û)#m¾ºËŒì¢Á]†3ûò/Äà ñ™’¹æ"S 5]›6Ï´F}©m˜øq{³MœMxš­Øm ;ásW[®l$÷cÅ…uæÛòÌ4ö¢¼á8°ïª“ñÃTçÐ)¶u™À¾0öÞþ„Ypw§noEÐÕð˜§Yè´ÈsM4ðÜ0±w$†nêi'Sfí-ZþãL¾§cŠ:7†eвh§iÆÞLI¯!óÏñ«™y§“ò‹[“ŠÔCˆõ!½×ÉÑÄ—~cù[Ÿ‘\ÚýÅ{y'â½phtƒ5¤þ¦…Y·[{¿H”DÎ! ‘­kKH»ª°o/X Ö$\£™E¸]gƒŠùÌ…¡Ù÷õá/0:UN†] (î—«-ÖãF ²ÛxÝtCÎ6ôÀn„|q¯Æ– =p[z`4e"afjÜüBýÙ ]4 9¤ÌÑÒo'iŒ± áNÀF 6ÚhæPì´Š)P×)« &S…ALß2³B¢è ÇðìÎÆäôï`{†‘‹ÃØXs›F{€Vá ¾1§©2ç•:`¥ì¼rfLH÷­?2å”wðô?I³ùí³Èg¾þ—“~x¶þw£TÚ(:úß­oú߯òùÃô¿"“§™¯åžÀ3cÂ6_4_6Žnvina= a¦8éÜ àô0Á.o¦JX #OݯŽE°ø@g0ͳԨuöÔh£‹³æœSw à¡ú´Ýh½: I­¨ óquÓ^ç~ÜÕ¡Í-ɯùòõÑosŒ›¦‚Ñë.ÏÖ`Væ·^ñ¶®jÚm‹| º ¯ÙËè*ìžÄ£“Ž’žºŠ=sòÝeÓǪ2±JG+ù;ÚÞv_®Ùx­3^ CöIæB^Ò€žòÐæE 41V"œ‰šEóÑ,Åjb1¡g*:íhÏðnÊ›Ž1 ~Ó6~< °yô¶Q³ÀáAm=<ÿV±lä“GÇ^c@ë)(E{9¿lâÓíƒGdˆ¹m9ûPÎÓ”–W]—¦ JÝiVƒ¾âàÚªÎðˆ»tF»‚"$ÆËjÊÁᣀ`£~«ïËŸñÑÿC]y„V–ƒåGËÁJ&.òç³Ó_Éði1zàA¾v ^§Óæž–y-—3ìK÷~^¿ó¨¼ç®¨nîÏ`Ba ”Og†s±ñèó­ðH ÊœÒçkϦŸ8¿/5,AÐàSÂ<«O¹?-œíOæÉ~öŽþ_¦ - ÕT]¦iԳ܀÷LDn§J÷õò-îºL.ÓÃLÞ-¦]†êŸ—}§ÑŽ…{¹ÉÍØ;·"¼à w’Ìa0@¸O;C‡M΀^°D“´§0¿_sã6ç4\­½Ø?ut6ò{8Î6%hÝK8ÒO¿€³XÖzF¬Þ=ŒwÇüæ÷oš­ÃgŸ÷Ÿ›GûGûÍCúòÛ烗G¯þÚ<8|6_ZðÆ‘ž!6dübÙš§DGm%bcWmÌÁ³ò=Âx*N¼:ªB¢h±c¦?‚®ê1̈=5_]á¿PÑn”:ͧ_]±ã"Xx=ä@+7æ«¶çÂE'¬š;fƒÑÎdÂ…æ0?ªy­ôùV"ù4qì6RÉ—úZÝŠS!y«QÏLotF(¶Wý¾*ÌX WP4C¶2ÈÒ­Õ™S®‰òË_¶ËÄæê“™a†ôàV[ŒëPZ8MægŠ &†På[l·Ùš°ù;nÊŽš·oµãnÖûí,ðþíÁEåþv¢åX)ŧöÝ©¬ñÇiMòÇÞ4ÿßÛý7ÍÆçãû/_¿Øo6î“Mó©ÐlCˆ­ý¿5÷ìèE±'à¨gƒÃÁø{Ó]™ËŽaf‰fºäK±xƒ)õVBlÁlŸ™Dß?:ÅD™üûãDg/œßö‡0ßXMz7mSpýæ§æT§”?ÄÏ ]ª\–÷t–~Â/ˆÓÈ¿7™£Eš6Z#kjp}ôEž½Û{×uZŽVV¶7»áº ¦nà!v¥CÆBhʸ»ü:Š!ê"Fg¿³h¼&7A˜¬Mèñª„*KÛÁ „èB,òßUÚá„}›ÞõÁ¹EÖ4J`ËФ¥×ö0”ß,Ëc{ã q¡ÞÔJu^<[­ZÒgÏžÐztãÔ~ñ™ñ_/†øöΙíðsï˜lütÃå/*NíÓéâ+mRo¿Þ‰ÍßY6ÛjŒÕ·5f·Ý®ttÝ6å­ŠÜdÉ;!,D#ö8`ÍFAíg;‚‰ý>Z÷?¼ô^‡¨øƉx³ oŒƒú‰œf{êjŸßå%C Ã!ð0m Á—$ó•ï˳ønO$¿¸ µ´lØÇñ¨D‚ïŸÇ“ßSŠªÙr§í¶ u1Ê1!ùd¤J¿Ø¼¸jë‡ÇO9hTI{Ü”³Ó‹XogpîXÜMmónÆï—=qjTAŒEÜF€èÙû|_î‰Ò¾F¸ê9Cƒ½oÈÿryÙ}ëëâÊß…nl±ô(ð™•hE¦¢’éõžeFErŒ©­Âg±Ì)Ùþ6ó\?rQÌþø3žè›ù$=¬ÌŒ,\f1qÒ7%Ãÿ‰NbΜn±Ð³'9#Í‹þÜ~þ§¸ +¹ú2 P¼7–®àË’[æVYkþomoã?tcІX×í£áñ²—…Ä¢SØß$ìG«¸‡© €; &¸ã¦½Ÿšõ>d§SPhºzŸ ú÷m„4m|ñ‘ÖÝñËß?H=^¦g_ñÀQ¯ž·)¡K6 ÝÊÌIxœñ#îñ½PܤšÁRcLR…$:‡ìNZ„Tˆ4Ëš$Vì9ÜÙSdááæŽI±0ÓF4—ûù³ËE8¢¿/*Æâ qÉKdCïn“^Ô‡%N,'O†OŠ›¡TÆ£¼ … XJ+Ó]g<Þ!RY™êJ’€·˜Z6dŸEŒ.–—}wì Ú]ܧ,}ÎÔcÞYA`·¬§ó÷á(²Q×´ðK<0íâdY=Ü“¶¹T\Dݼ€éCÚÐiö0ûZi¶n ¯ž| ɤžPZæšÜ³xúîOôÔ ¤55ýñl–Æ—I™f-ÂhgnÉK­ý¿½„ nm¿+¾žœö¢Žx(þÁç"ó|È"Ü!JßÂÅüg|æÆirF¶F8;ã;E™“ÿe³Tܰó¿ln–¿ÅùŸâ¿(î V@õóÞžD‡ï<Ù`t ?Eý ˆy²Òq0ûlųtš»;½V¼\š•2Ëar2uX@‚Ã¥…ÕËöµýU±HÿZMõ¯eù]Ô^­¾­n¬ž†¦Æ×¡šf ôô=¤‹ÑPÈ/«fV7jMÓyÝ žéê0Æ×‚1zÇ·º±Z.mTîeˆØÒÝG ÿ*SB#ß3@*uø»pW_01êév½U6Jå/ë­ÒZ¨·£Öjië.p$„òÎ,C¬Í{Áªwß­Ò¢Ï„ÑÆÐ¤qÌZý»l²»a‡‡D}Dî‚5MZMýÃq(L¦v¾¼œ9¦ÊbcÚ¹ý€²Íy« zlÈvæÂ]Ýó /èg{çøj«aíÎû‡ uõºùƒ»ø›w|UÛUÿªê_ãýÐã;è·õþ׆Ý–Z¡êöñÕîÆ"ˆ×¬ÕûõÙ=‘ÔŽV5o:-í(ìÄçƒRòrcÀcaíM[ÙÎ+JÄû&ãýæËWM ît^þÏòfÅŽÿ¹UÙø&ÿ}Ï"ù?S°“ÂuÒ ºs°¼´´ŒÊ«ý £³ë%.òQ‰}Áï—ëǪ—£Q»‚‘ñ$6H¾¦z?Ál7  .²D9¾Ås2Œv£Ÿ¯>„—ùç'™%ú]Ò“B{©JF’%­y$£Ãà!ÔùôR=Q€»1äP¤âø’H´0f‰O?\=WE{ÒƒÕü¤Ë•ØŒšÙ%jÉ(—öX§uŽGß}÷ÝÔ¦êqoÒLú§á(¢|Âëé#y ©•{êåôª¦ºÓª8ÄW'QwzmSƒjÕ¦Œ3k›ˆ÷,È›hø´ cø•_Y ö‚üŠ¿¡›,]-þ4µŸw\Ü{YXc\i^VÞÆ.EµÜÖ¶<üǯâC›ÂêkÁRðîÅ€ÓðÛ  €3¨¥ š¬bb¶ú^½ujæåRáÚÐtR3â¬À ,×Ò„¡¡Ü¨Y^Z^Q‘š}9ÝþÏ!Ã;1n40îÎó1Ó'0¢ Gù‡Ñ?ˆKN íİ]{??ý~™Í4µ¥ÃK/€Ó X S«ïŠkkå÷YÅá$¹0†RŽ–‚›6§IÀ1:›¼Mórá'®Ö(îï¥ev…íÎÌÉhÁòÏÆä]µƒ×æTX­‹ž4¡ Ìœ +oÒÕr&Éí~c3ÿÈÏ\þï ~;ˆ”<6¯î¦ýŸËÿ•J[Žþÿ[þϯôY$þ»£âgs>ƒÌ $uAhü¯vŠîG5lßQÍWFä—êuu¤ä¡èÓ§ÁÖJ XÅ«Nq…Ÿ}¯~UÎè©ê}F'%XªYݘý”ÊÔdHe½[ýMç;ÄÉvË‘ÒPñÍŒáŠñîPÃgb¼0‹©ž5«…Fìf#>Fûv'üïö™Kÿ¼wÕÌÉÿ¼±]Ùvè¹øþÏ"ò¿,Ñ7¯†ñhŽçžïVíÏ/ëG y|ÞüÛëWoŽN^ý|‡ HðL:ƒ‡¿„£Dµ£øþàa­„ôt¿Æç£öð"ê ¡x¾UŠn¨Wè<«Úqÿ4‚8+T¡9è€UÍ!Þë_ÍA7x_¨ üÿ2L’†â¡©Ù4]dð°:¸¬%<~­¾9Ø?øI‰VAµ×ã²4© âñâAïúQjæúˆì\evˆP]µ–ËÕš?í(š¨@NT†&¹Údô§’CÕîV«ïׯà%Œ)NyýªK`‚‘^½k¯þ«ºú÷âêîÉÚÞêûª+àÄ%U1Uø=–0A'^«†Ž×NVßs;à¸Ïçv½œ_9þ¡°v¼¾÷äøÙãï?x~üðäøÏº<ÏÞ«óls­XÜÒç.; ~üq¾¿n¾y¡UfÝýúË´ïÐ÷êñÕvëýç¼zQ‡­Æ{õu¾ÖZïX bØP¶ÊÜ6ýp]¿Oñ0ÛFIµ³©:Û‚/ÛÕYA?ÐŒ…¸Ô–*´m• „N»ª@K•Ý÷²„¼»ànLg›»Ûü`W? 4iVuÕ ?àž«ÛF{ÀÍjß6ôžÓ¾¦Þ©M^ŠfÍ uMMÌ›|¬µô„[Ûü€ØÚÚ%ªªù§z†¥¥b#åªÖƒŠÿRÿêK…lêÛü ; Ôš~[ç·M~P*Óƒ ¿ ’‚ò_~¾Ñ4šÛä—›ÜÊæ&?Øå¿-~A¢þò0·ŒÙ•¶x¨ ƒÒVC×âAlëYnsõmîg— TwŒæhÑÔ_=·j‹ð^W_vøA•ÿÖùE½l´ÓävZ<Ë ¯©YÜæ.hê5kr‰–.Ñ*Ól•vôSb–[e]ŒÐ_ýÕ%6¸Ä¦.±¹m4ÄÐmmÖø¯.ÍÐnmóƒ]½¶AøˆV_êF{5‚b«Î`nÕ¹x]'~«ÔÒxØjTŒú ]¬ÁjêbM®×Ò-·¸å–®ÒÊR.•»Õ_ÚêK4é/OH}At­hñ RT[_·S)VõÓ.pEïŠJ©ŒªÖ‹Z’Qtà=Š™œ"¥G˜k+7ŠüWsäÌÍm0AØ f¬Yߢ7éoE©ÂvzäMzЪëA«-–ˆcˆª<–Š–x˜oi:¼µÅ4KµÕbVlKóf[c¾ÛÔO›D«ºXu‹èU.QÓ%jfCµ¦>E¹X]«sCuÝPK4t‰†ÙPS‹@MfÈ›šým6èÞ4êË®“GgqF z>e*\>¶6v˜yØÐ\ÿ®&eRƒæ16ù˜ÝÔòÙ&³c›5šÜf]ׯ—ùA†ž W¸ÚÖ&½ÝÚ&äÙ⤾ÔùAC? †·ôY¾Õ4Ôàßjîp1-[4™û×ó.J,0XŽÝ Ÿÿ», lh¡AWÛÜ`<*k<âvô‰½»cì»5n‡(‹úKÃßÕâ.ˆ»ZÎÛ5å¼]-çíÖy Úe»ZÝm2c\$V+̨³è^­HUÕ§nuƒKolë̆ë©òīۺʶU=ÙêŽæË¹Û°Z'«êyUḛ̈ë)UëƒPÓËRãe©ñ¦öáMÉzÝÁó²õœz‡7ë ¼Û°ÞþvxÔ|y²ß€—›ÖË×ok/öëürËziÌ ^o«‰Âß'ÉiÖúŽGa»ÿxѲhˆ©opŸ>Á+Üíb±¬oqi&3$´® ©lÚ!ÞÊ´ÿáø‚¬\Ç|y:]ƒçÓYtöÕ{;qH4P$fp„Jâ¾B~…“©´£²+Á÷ßoöaªj QÒæ7…`yÿÕÞÞÏØŒŒÁÄöQó׈<¸§Õ§XÛ4»Bkæx¤¬`dã(ìê v0Q $cô™ò æý,C+3ÿv~ ,Gè÷Ÿ–~ÂfoööŽö›?W/šK73lÃðŽ8û):xô‰º¸ù´ÿêÆ2’}E“2äs²3±‰?ÆYŒLÿ¬ÿh9þ©ùO Å%Ûå[DÕXd F_„¥“Q”[°#E™½½ðž‚3=ØòþÀ÷Yälý˜èŸû<4NúñÈ“N6í]Ó¾ÓPLýhpBñi dDþùI! ½cFäÉ~¿ü(kšë¾Ý8ãÊKGHF?î1Üœá@dÆ¢ ¦d$ ‘̈D„¿ëvœ¡ÎÎHìKHœe‘Lýif®êó“ÂÞêy§GÎ{ÿâgï3íys›~ÒsoJ?Ùû´p,â.°‚FÅ´¹-YE-ÓBç†×ìÌ[¡qÙÒU¿wò‘Œ²nÓ˜qv¿OýNNš““\îÉ…BÐRpP}ÙÌåpGcDú‘»©ƒÕ  øÔV”›Ÿœ©ï±:ß0«¶:“±OœËÿ±õÿ\þllþ{ã›ÿçWùÜÚþ2δG ™H‚e°åZö:d†þyDrÇœÏ?b|¡ÐàÒèÁÞqŠFí$,Q|…%t8…°奀éâÌ µæ­«¼à*“N²Zî… Tò×ù÷ôbš»ÿÕÆ÷% €9ûkcÛ•ÿ+Ûßöÿ×ø,²ÿ’û #qmòm{O³Ø^aêÁhvip„‹F”IuLCLFÅãîQí%ƒ4ãt?SE®ÇóBîlÜØÂ¹ã ©ÂkÆ! ]k·È€ÜœÅ·Ì×Q‘NÔT&¶]·çäËpžÝ8¤ü#ÄþB«œ_¬³@Âsîws€ãKá]^3ÆNÛ—òìéô|‡×ƒqû*À_SÃBÏ ª”l†`êŸpš÷EÇË3R*Ù“½ €n¤{Ô¢ÀòLÍ>a»áÉCå+x‹ ·Äî R³ äÕ‹hšu’q°‰±“=p ÿg òË…åB0­&w?ð÷㈭t£6:‡È@ð0Ò¯µõ¸L!ȉ‹ë/„LÑŽÙŽþÊÒA«î#¨²Èœã#éšXEIÑsÖJæ¹àÃÃGOÔ¿ü»¥å÷+yãŒZ9.¯¬ÇfpÐô´Et`Xäp4@‡œ‡;¿RrëRi­¸47Rò«A𤋮žª$“!êÄ»kÁaûr/Xæf—Ü»‰>³dc´£îcY6§AtÒ]R(}&ŸñÃX5£°Úbzþ,«oËʆfä{óçµóÖ(:Š8À&µ¿0—§YïG ›M.Ë`²}1ÜSM‰z?‘H‹ÏÌùx^ÝWzX[ÕÃÂý°žM{ú¤Œ†o#Ýtö̃€‹ÄqŸI^€Ÿw|æuw6E Ç ¼3£¼ˆ<‹Y™f^×áùûQ‚yAÏFq?ËSÇÉ1æí–k1ûH¿—ãÜEáÿŽì‹Ú|I¹ñ?Jvü·òFeó›üÿ5>·¹ÿwâ€Ñµ/O¼CcŠ|çjÛYYϘ³¸eÈëä×ÿkfýo¨ÙüöYä³(ý§kò»içÐÿÊFɾÿ)UÊßô¿_å³8ýÏL†}°iÐ¥ «¦7tŸ6\²'3Pi˜dú@0UöH†—¤!äšÚ]$u%0 ‚|;J6 !ö±4ºjý DwÇk,vr¸ÿw´ Û(în=¾…¡’¶€1ÏZyújë—´¹çŠ»stJúþ®õs!\`ðxÄXŠ‚ Û÷Á“ô”á– A© ~ ôty™¾àïåÒZQ‡œ10©g'&ejz1ó¶žžNÎŒ ƒºhÀÔî¦6­Ÿß°lÁ\S¹ŸVõHfÚÊC¦JŽ?“˜82›?™-ûšV}ÿÃN‹E«ESý0È› hbòK*{A’²bSÇûwKY°¯T Ô–-©4àWnÁÖ ¾¬±X¯¾i4k;·‘ÿÐ¥Û¥óHd‚ÙÛ; ûCüÆê/ðp¬¼?¼îŸÆ=Œ¾¼:jîGœáèÑ ?OJVσå #öÇÁ?!7ñ½I@7p©I2*´ÆÂf|úϰ3N‚n8 ”Õp@©”ÐS³Ó¶O£^4Ž#©ØÌµ[Ho“Q$>@Ëê0#§ªÀ•2™«!ÿþû`õ,8±rÏ ê÷y8H®û‡«3©SUÑàÓ’ÕÛ0ņ×È S˨Ýu„¤…=_öè¸iŠ`9íå×€ÆI¨^KSgƒRü`éñ­&‰X1c–øÿ½OSšßêõSkWÐJddôLK/~}­vFŽªjjc9ã %É8CŠ˜´WŸ¶áE~I»ÛHú –Ÿ˜7)-9Í®YHu÷óÑÑk˜<΃fýSóSM©‹k£·f~Z)Èu Fh(!ºûÚU %ƃ$T_‡£xwâžyJëÏPvŒ?̼cqu¦N¥=¯˜ƒý^ȆVÀ[·i^ÐÀêÓ(9I&N˜$¶Ís†‹™6$[ñ;âÎ(ýfá|áž¼lA«­–¡»dWGñð~E#ßùß+=E×jQ¾(ò }fžÿ¥M8ùÕù¿QÙÜ,o”Šÿ§T©|;ÿ¿ÆGœûzá÷ö¸Í£Ô’Ï-Á;óýÃWµWËQÆ:|\–£$>¯–ç>ÑfýøÉ=N­ÃÞ°gh»sHíÞ„Co€®‡r¬eÊ™ÑGH6®Ý¦G-/}õà‰±™–UG˜†r(°cìBQ¼ëTdoâÔ¯q°G =âõoÎAXØu휄âýoNu±m¯ÚâõoîÔÅθvç.ÞÿÝ™»8(ÿåÌ]¼þ»ƒyrWÿËÁ¼Š~/9œ²—Ã)OápÊ_‡Ãi8‡…ä•»Îi!…¿†ƒÕEAÏ»VK¶á,NQ`N×YÉþäŽ_2 îøÅûý‰s ÅòFn)£ÿ% êY´çŸžRäù‹g‚%ú§g¢À_]8ÚõÁ…ƒxÿ­/èoÏ­/Þ¸õ_0pë‹÷G./ "0v)¼]ßžºË ÈÀÄ- …•ß¶¯((ÁµÃ÷¥êc§7ö«îFïFmß>W¿Î6ow&ãPŒ½X“²à(ü( ”E;íQ<êR »QÏêB¶:Vb#uO{m«@CpXÝÈšBU´ßÇVm¡ç£¶5â”vûíÎÈj_šøÜ@C \ÌX^ױ؃“~oÊü ôzQ=òˆÊ½öØ+*Ãó¯$*{P¬.ØÀ¶§DS”¨:(R¬‹Ó¦íhŠÕf/:·ZHÖMQ êÁ“º”ú=%š¢DÕA…b]œzm·@S¨ºÈR¬‹ƒ«í)Ñ%ª>ÕÅ–o;ï›â}ݳ£­-ï)Ñ%š>¬Û2ôa…(Ñô`…ØX¡+D¦oMí}k*J4~–¯bÉÃñ…|ݯ›îZÚºk!Þïûà(ˆc䃣(±ï£8ÿ"E} ‹|p%ö]H*¹ïˆ jû *J¼rV­!¨jì¼o‰÷É¿²ÜË~ôó«7V›ã‹x4°ºÞú]‰‰oÑE‰·žEûtâYtÉ¥ú]»‰oÑE‰·.°%á[¼ÿÍ A*®}%Ü>ôzIfÅ#õ*¦Ä+õÂó¯Ä¬¸ìnIʽm_ y¼:übI^[¶=$»ãp”%)õµ=Ķ«»ëT’âkÇWBÑu—³/IÙ±ã+ÑmØh_’"pÇS@àtÝæÞKR~ì¸ïžjøÆ(ö×WBИF2Åd yáÓõ•kÚôôR²¸O 1—¦3W©q Ý÷’érOjûBOÛ̓Ÿäky=ZÌkIêëš.ÚÊû“ÐS@Êj¬•ÎOžý)Õéç¾Rw䲯%©ÒýÉE[y£pî) vÆOÎZIÅû¹û^àÓÏnò.íÂS@@êgÎJÍ󅯄À¨}g”ò¦sÿ/öñ]’ äèŸn©‡sQR^ÚEžë¢AìŽRÀrßE;©HŽ<Æì»ŒPIÞCD¾·ÿâ.˜¼zý§§€XÑ¿zð¶"Vôƒ¯„XÑç£0´æ*o1_xö ¼)ìùJˆE{á¡uòÖ¬ç+Ñ”mxæb] zJHíf?rqC¬lÏSBÞ½ðìyÏÕó•ÛàÀ1yO3ð•Ø%†qbªXH¥iÀÀWbG¶á‚T^Ô|%äu§«Ð+IïØWBJjŽ>§$ïbGŸS’ þW.Ý·z±§€@Ñ7ž%‘Ê÷‘¯„€ÖÄåÀÈWbW¶áB\^EŒ|%ÄÊúF*¶lâ+!¶Û¡g¤R“šøJÈ+aßH›² O‰–lá“òN#ñ+{ä§XÙ±¯Ä¦lÃç–u/ì)!pôÈC8¶¬ËaO ±²o=쎴j›øJx¼õìÇm±²_ ±²oÝí$Mã&žRDvOámЉ§€€ç[G½ZÚ’WAž·ÞzŽqi­9ñ•ûõWý¶r]z ÜúÍS@ Åµ§€ÀŠßl1½´-fñwÏnß³ø—¯„Xп{öȶÀ«ùJÈ+zçðÝ8ñ/÷½ÇŒðàíKWÛAÉ=Êþu®ÞúÃtä’Ãrò¢äºÛÉØz-mLGOÛö•´‹NbKI# d'X=TÅFëÄ=kÙŠ’¿ëÄý~ÛcÝ)`õ!ÙªN<¼¶Æ ð¯3,FµX•–Œí‘41-í jÐ -ÍbMÊôÑÇÈQnŠuèÆ½ž h)„…¿OÚ=k-%Ÿ^u¬¥rÞ™â!Jekœ §Ä†U¢î”Ø‘ G7”¨Øm4vN/›v g¤Ûv )›[(!9þ‹vïl$.â‘…øå¢´°¼¸^H¤Q%ĪGî‚T¥‘%:?YÃ"Cû÷Il5!å1ÅzÉ©¬/‰^¯ku &!–¢_:@òH½¡ƒ¸‚õ’ß­!H„Qï!È2Y·éQgdA§¶) tm¢^¬I1å4Zð] ìêU ürêòŠç¢/G*EâQ×BÂjÕzo5_ïà-ÊXíÃQǦ¾Rq£JDq×*!6ʰ7±šý¾oÑΚÀòa<X]T”<»@ Î ?ìYˆ3däî’š4›pw‰lÀÝ%‚Œ<»D°éUqänqÜ-Ò°Þ;ýKãÖ°cãé¶|ß, %ö)úwÎx©²J&’Ó-oIv<™ KÖòìZïíc©l½¯Xï#ʼnÉ 1ýñ¨-ß²¥„¸"pøch E%¸v½Ñ æñõÛšË<îy˜ÇaêpüG»öÚ!ö•-³ßÓÞÉ6”7åöV’U b°ºˆ;r ›;ÒakÒ“~F PÜ8–¤âLAÎêa[ÞG(1G@ZOtz“ÓÄBrY_1™‰…DòÎDVIb AºÓ´ÏÏC‹é,\×WB²šÖM¼Í”t£vßž‡4‘ë©qŠ3±\‘7qÝ‘§„Ø Ýñ(’À”l ¼?³ ‚öå±\.Ê‹Qx_ªX%6œV qö…§Rga¿Ý“TcKÊgg‘¥lÕä8ÏÎÜV=·„tdòô!Ùúž”~Ô‚JVÙÓƒœ(ðô˜–‚KlZ%6[V‰]»DÙîeÃ)a÷²e—¨Ø%¶ív‰»Ä¦=RËw+9¨!K„!Òº”Bu« ëFìÚ¥iROÝ:¶$ #÷nK)b#õ.íµ«z/þ—EöªÖk¹Qw›.ón@¶àÐidØsi4ÈôìBû½Äÿí²es;ú`ÑÌMÉžõ=DS©ßëÚDW¬å =¶Ü‰·¤2pàéAÞɸ=È«‰Kâ/ ‡ m†“AÇiB^ø°Ébs%›©éò©v ’ÓuOç½}2ÈA^YG¬Ôè‡W.ÈKËä¢=Z %YÙ¡âí-/~·è¥L¯^[ã—2Dß°–iË~f˜ ÞŸ[¬NEÚnŒÃžZ(«„lã"r?i!æ¡RKïc('>6AªÈ]dØ´ßÛÈ öåG—Ê–SsRƒï®¾<ô8L(FÈë1Ï¿’Þvpþ/[ò¨H¹B±¥ýH†¨JkÕδ“ò$Ù•Z`*2²ŠlÊ"®*Ij¨ÄÐj¤!‹¸’¶Ô·P‰¾Õˆ˜qÃiBî°nÕ~/íj»®²VžiF¬B+Ç®´±êžEÉ…Üe»Û’‡ýÙÚÈ»’è*RÓ³†Q± Øã”~q®T* ”º“ g –gK[l·D™Ð)°+oÛ.\xKë WvvÞÛÂÕ®4€"—Öš[êXÒ¤»KJQ–x׫: HÃÜî,$#¥ÞŸž%δì"N‰†]ââƒ5Ñ]»Doh•p4¾C{·;m$‘µÇäí%[Ø)ïezÕq;²º±üäÛžr 5µäÐ;u Hís·Ó¶¦º%ߺîضŠL§Ì†¥·¸³’T@õ|Ô@Ô¥²auѰ L¬u§€n©fë¹\úÒôÜQìÊ{ñžgŸÉaº^:?õF6¬KR‘‚ìAÈ>œÅW“Q׳ U«Œ‡6оl[G™d³úm{ŠÚêL¶iZUºãô'veÉÉ”iƒ]yå7]Ò»m7aS-«@Ú`·3—¼KKߥô4è¹-ȨžK*é¸;r[hÉn 5§@Ç¢••5þQ¬H~‹[Înczñ?»tJ®ÔG»RÉ2øèLrWꊗ|°J¸ø°e7aÃÉ*0pñA`Lìa­K)·@MˆÎÃXÚycÑÄåd(õÞÞ¾Ò¬eä;®ËN#.ÊXœó¼i—pÎóª]Â9Ïëv û<ßpæâžç6ÀÆöY¼e7âœøÎtÝ=!–Ísà[sñ”ðxã²R?=òð ‚Œ<<ƒuYçð Ûò}ÏÃ3H-„ËHPùø9—æœ.? =™G.? ]„G>~@®†‡ƒè¹gµlÁÃÈ àa¬›Mr–“žçœ–Qw|Çä¦,á’E§ ›,Z’K‡,Ê+ʨä-å<[ŒdÞ5tâ;¤vÈsìÚMØ}XîT¥¢Û‚Ôë¸C(ÙõcWà“ê%Œ.U?ž-*uG¾-(K¸[PF3rtyK5q9yK5qtéòýÑ•˜åGÔâý•ÜmKgÑ+gˆÛÒ®ìÊáK¶¥gµÛRÉpe³±ÛÒÓóÊák¶¥+é•G!£y”¥ÔYTªñ<÷çí~â½@‡ç_+ò‰äv¤©Y»Ót^œ¦Œ¸Ðo÷¤)EUšÂ¨Ãïc(õüe)Hªóó2”GKEª˜O}%d¨Ú$îʽS·œB-ѦaÝÆÛKi)=LT‰ÓQg2´ÊìZe:m»DÍ.á´±m•°,ÀT‰¢UBòxeEùõú´šòº¶ã”®JGŽŽ] îH$3WÝ´ÍUGÒ(«\–LR}bƒ_š"L¸è,•°¸[v ¸U«„ ÜòŽ¥Z÷AÕ Kíì@¿:ú÷¥¬Ú™Øˆ]–‚ä½XXDí¾Õ‡´Ž>ƃ+«„@ÊÐ6ª+W-•k8êH«hµËÅÞˆãN»g•ÎŒU+–e§; µ;–Uªy}<¾9k"õ=neÉ#ö£î3ô~4˜$’ •%S‚%¬¥—B<•˜Xó•zwGHùÛÝÒQÌš†¤”Œm®¨,õ ±sK\–X¬pËZ ˆÃÙŽ’ù‹»Š°[º7©eŒÏέfE¨²˜.)¶Ä¶Ùô®¼Ó‹{n2DiÏî@úóÙ·a»R·ã:[@%†Î¥dÚ·\rï¹û¦,ٶز—Tïíh(î¶’cðlš]O‰¶ÝŠœ©í¼Q®Èû:˜HÛÑcJ¥”±·žc!ì¶Q¶‹t¥kYZX` {snÚ%$¡©n;Øj’ªŸ Èø2¶ŠH; çèµÔíŽÅ®¼Gù¨ª”™½TUj||TUJæ>ª* Z Y8xo­«eÉŽûÖ$UJ Øž¹ŠeMúŠ¢Y4Sr¼NS¶ð»M”ËÒt Ø[¥2•‡PÅmæi×îÐáIT‰©íÍ“kÒaE%T‹Ã¤J¦>™X,‡¼­N\F¬*©*¢‹½ÜE·„E/ª2º–±™ ÙÊÈöq/oÊà\ª„K¢«ÒçK•q1K^rª"‰8 « ×jCFRr ùŽ€šb7mˆ”¥²[ñ›̤{Ìå(l­S]J W†K;€+ÛS´% Ø(-- ®<ö¸VWãP•X~å¡jÒ õ*v¡-o@®Ü­W•‚é•» UyÏrå1’Su%9Lµ`çv =U©j¨{U )ª†Î×Q5t{+Y¹"ï$º#O .çãÞk›’ L¯=8·¸,iÐß;}°ŽÁš] ±YÍ–[db±"w„ÖuBEš,öÎz±%`V¤©n¯O,®¼bÝ'+~Ðæ9wÿ?{ßÚØÄ‘,z¾¢_1&–@ÖË/±ƒ0vâ `Ö6 YLtÇÒXž i„fdãö·ßzt÷tumHrØsïÁç,±§_ÕÕÕÕUÕUÕ®‹ª0çvÅG˜Œ0*@ض[ÁGØŽ_ÅA˜41Ï &íñE“±RE“F{@˜«È3t^D¥2Q@•›üžîÃÉûpòeöáp⪊÷Ù 'ŽÑO^0 _Ý®ŒvN\A¶-sžÏ ú¿JDù°J7¯/¹Çò¤ãÈS!Ý«‘7rë:~8®lÔ–)Š©‚ƒ)›4.þ»WÏ͵Ĵï%×ÎÒv‚&¦N±t0‡âþÜ…Ö­áp¦îî5.?>v{Üñ¤SêÜóÜo9Å>Àn àÇ×p/rVZn¹3š“Ä+½iÒ›V(}«;¥¶WeêV‘VÓtî(ž÷WÜr‡©o¯^ƒ¢ûn繿ꖻÃ]Ã8üÙÉÃs’ v°î”;zíuÇ·Ì;ñž\Í~zâYˆå“Ÿ|²ã®w^Ї¤óó‚>$Ÿ8w£µÕ«>/HÅque—S¯­\WÙíyûÚÊÞ|]ç áñuÓô6ì5ÐÀÎól•2ù÷tæ‰mÒ :––v(÷%3Kå±ð®LÆžö}ºN†5§Ü‡Áu¬™¸lLv‘Œ|+¶“~àÄ…B^Aaw» ¼¶Ý nbˆó.×¾rõÏ ˜ÔòÕµ‹'x•}^<ÝkªMþÚê>* ªK-n¿P‹K®Ðâ’/åœ2»¶+s?Y¡ |ì^:ÊÛd®:þˆòMUÇ1fʰUÇqW•®¦ªŽcBÁ#ªŽ;«í‚:Nد<"T¡Sg§ Î™Sgש3ËÎóØí«¸Öù(ñÉLºÍ-KVˆå™_GzÅDãiv)ÅßÒRtâ¼ÀÑvRâž$ïñ=pу¼ê>™Î\©­¹ì¸Þ8©ZÚMùÎ]¿Né~Ïv(ÜTÞÝisî'c‡A57‰‘ ùTR!œ¢“ȉw2„S«^…óëj ÛÎò¢5Ž“LîN'•r<&àdc‡ λ,NJèß¼ M'n',D•ô³ðÃè¥'àÈ×oäÅýøÌy8TÞ{NŠxᕲNô>v]¤¡>9¥+Ò/r: 'N6'O>Öx{~]Y1Ö—vŸƒË‹Ö(tIP^VùLCænM£ßcy9·»+C¦æK'Ó|úAñÒƒòü÷xø»Ël¥ëÈE»^ yB|yžÄ³+NâÙ:‰ ìzö!à*aÒ­ÐÐg—§—.;“ÞpÙãX#í­'ÆAùÖz4Me†­å]çl¸È\mBnŠ_xâ–»8’ÑYêf2[µ””Iís+;n¹³,]¯‚»0ò°ŠM[¦kÙv³¤ý ®Û‡ô$õk´WÅv[»Š+½w¥ß`ß³:t¥Ó{ßè»òí®¾gGè:.³óȵ‡=q|#×þôÄñmLÏ\"v’˜ºÚ2( ÓÌñ}ìJcäy°É=‘—ÎjÈ3£ïõ”Αny[¦kNý òåÇZ2ÊhèXzåE{¤"·y¢+=좑ÛýªSìw/§ïeC„ùí:5âó'OJg>ŽäJûÞAÒydzN¬;xÖI™S*qζL€å±Ê@–ÓYráÜJŸ²¡w©%²àfE”:«(/c‡‘kâ,‹ý«YÜ—;µ+µ¹¡þ®4~s ÇQM2oUÅÇŠSÇŸÈUš=Vv'&¯u nìö®Tb|:(‘‚ºs™Ó•×çÃÑoNk9Oÿ–eÙ-w/1wÜ î¾È)¸ã²›gÞ‚¯;它¤Ìo>̼ýøÄéÁç ]™‚`˜D¨É4É8sb¦ÚÎ3'Þ¦rüBÜÔ™ƒåî·<õ*\ymí_ï‰R‡Í;þ'‘K«R[*¸ï“ÅÞ‚Þw*x;X¦‡îàVA‡0î/;uü‰\‰1¨ìí`Ù{!q:t7¡€·àÞÓnìïÁ¶[îîÁ'nwMJ ®Jíæþ\sʽ=(Ý ö Óƒ+÷ÀA`á.uÂ!Š.!l=ÝKxßîJ“ÄØ¡ÚËN¸„k”D0õ]YU€8N®Ó–ülœfλnÐÛ ÕÒkÒ•t%3œº±ýÝÇŽ‹¶wÏ*9áÔ1u;7+þµ±(ö)Y:¼Ïæ3W@†ÂY˜ÅŽ»»´_-9<»ÁítèлŒäp•I†©ê"““ÜeK™ö]K/ê‚›nQìãXÞéÀ^tzü?½Q@ôÙ‰Œ[ÀrW»m:\™à‰[î2L9‰6"”;·Ën÷¼í:Å.%o»åîy{õÍN7€ xç_qíz¢yÐrk¸Î÷M¯‚Û…\Õ‘vèB)5ñBoYî>~ U–*ãùÈ­âxäŸø¾ÌÝkËÍIŒî…º2”k¸¦‹'î||Û„ƒ07šÔ .ðǸïTñ]*dyNWœ*g^Ø”u)ê真º¶.€ÊÁÍ´àÀvn†§+é&Ÿ÷WrÛ!©©¿L.‚|`ÝùûË$Ózž½õ\Eî;Š\ìÉÔSÌ»OÜРט&»¸ˆß»r˜¨ð“!ý¬Î{å÷Ýr׌%6E‘Œ¡ÈFÚÓ z0ôÐö†péõzî{ãÉKºó©›µ-“žÜèˆ}ûS˜z1-›ÿ÷?¶|›ÿpö¶UdóÇï_è…ì¡ „æ²<,B·X^>öZKÛ¶×Z?ñZKS©×ZïìxÍ¥/òÚËד½æÒJèµ–ï{­¥±Ãk-_ÁõZËûN¯µ(þÑk-¸Ç[¯µ(þñ·\êoÏÜryÚ=õF—º•7º(~浌kìµÅϽÖÒiÎk-Š÷½ÖNTµÛZïûx“É>ÞDù ¯¹8¿¦^kQüÂ]FÕú£‹ò‡^{yœzíEù×\†£x­¥ørê• Nà'e=¯µ|VÓk-֢øÈÃìçD÷èB”¿ôF—I”¼ÑEñ+op¡½÷Æ–Ï)z­eR¯µ.–'S»ðdj_q2µ¿ÐÉö]ðåíBèWª×NAòЦ Á1vŠºwME}ˆ5Ú+èB& )èAæUÄÞ9,U¶½wdH-5ö+ÈHõý(eR ¿‚tÏÜÿ¡  É`Ï ú¸zYÐ…ÌöUЃtô(À•4{¼,ÀÕc§ oŒÇ…ûf¹pß,_±o–¿Çhz:AE™[.oÁÏ' yþ?‰Fn{Gnó+HÉ­ÀMcÕ-?w:¼þ„߇îk¥®tæWòõ ßË[~²íuáÖ”è:µ¹R(’S·B׫ààA¦7~ŽOîLÛ ¿†ÈÆs§Ôy[ñZj ΙȯàE.­¹RS,Í*PìàÇzÜÎ¥Äå’¹Sêt- /\vÅ)·séô/ý]q ŠÝu—¯ªÇC—~ɯ°íWpq'_3¥w¤¦3oºb“¿Ký .ŽeK‹Ò]gîcYÊVN©#Z9¥R²ú݇¾XvZ)<V®8VþÛÏ ºg»?úÐOgo‹ Ãï_H²;µ×Ö“U鶺Å2·Âc¯µôÝöZ d[£®ôAs[Ë`„'ÞØòi¯µ ç¯µ”F½Ö‚Úw½ÖÒWÇk-O4¯µô}ðZ‹%ùÁÅš|!âÌk-–dÏmí8o{­§ý‡¹X±ß¼ÖbI~ôZ bzëµKòÔk-ý ¼ÖbIžy¤('ðZ‹%yîµ–¡§^kq¬ï{­e–<¯µXÐ^kyyëµKòO¯µ ¦w^k±$µÈ^k±$‡ÞØî¥,–™“޼Öò [¯µ<¯¼ÖÒÅÜk-ÍÙ^ki/÷Z‹%ùÙk-]Ó½ÖbI^y­1½÷Z‹ýý‹×Z¾ÊëµKò/# ¬ýîµÖKbŸtû/v NºdzZxÒÁ÷/tÒ!zéòî—‹Eß–åÈx¥Ýo/nÇ/K³ë—‹ü½_.öê>|¢ýž×^fÝú‡_.vÔ~¹˜ÿS¿\ìŠg~¹ ûçüò¾}¿½Ôüöbýþé—Ë—ür¿C|ÑþÈ/ëÿÒ/—÷„~¹ÿg¿\¬ÿ+¿\pã_¼réáü/oþFî°w÷ávA¼Ì8íÆËà÷/´»{v+ò2#ôÊe´ãcY޳—ñ,~{—á/£üö‚û<ñÛË—ëüö‚ºw<øåiùóýïúíå£Êþø‚º¿÷ÊåñÐë_ ½?øå¢ÿ3|ÉݼöRÀ‹ýöb}þáÃ/¸Ïo~{¿ýö‚¾ÞzåÒÄñÔ‡ßñõÚ‹õy毟ôqôÛ‹þŸûðË´~{Ñÿ¾ß^¦röáÜÿ…ß^zHúã‹õù§ß^ìßw~{±>>þe8¿½Øÿ‡þøÒ¹Îo/öÿ‘ß^ÐWæ·ëóÒ§Où<­ß^¬ÏO~{A_ç~{ŸŸýö‚¾.üöb}^ùíeK¿½Øÿ¿øí}]úíåíß^Ð×ï~{½>Öéx´³ýƒ:fQÿ¬ètÄï_êA7¼Ì:0Цn캘}×}¼BFO¹o[´¥ÞÅÞë2ŠÝr'à %nÀ |Çê8nR«n:ˆ™ã¨Õrs/¤ÚÒìƒ5d-©é_ïNýÜâ2ß[xÑO&ñÄuf—Ⱦp+t[ÎR?tÓø:9¢Ù$qÓrÄAŠæ^+ø}gÕ©[ׯuuýç®ç£L+v2qÊ—åQ~’dYâ¸õÉÃÚË,mAÛ…H–á©ñìÔ«Ó•p`JˆS7Óµ|SÄ’–¯ÆÀ!Ų"H¥‰¦ïGi¸Ïa»Èo–“œ¼…ôH®-¥Ãþå¨ï¤¦X–v¨AœÆ®võÙI]%/q®/ìN>ðÑ ïi°{GéRF‹F0Íh&¶Ž›¼ òœÂŸ¬ºåNŒá™þ­x³ˆ çEÈa òMˆQNGÙDò€Uy ŸNä›”MçíµÓd:éHÚÒ?þ Ì¼="iÑl¡>ÇŽ³±#öǧŽN*„ãxrêÕy7§òœfKì~myÇAÜTäýòž·G%^ñc§xä=tוæNûÈ ,÷wÀª[Å !”i5°‚snì®xÚ•IÚ°†›€FFÅ…ÃY(gâh:OÄ+ËM'µ›˜eYrwÿõ]ï0r“#-7¥M¼ áž]šxðI¦?JüþåüWœ¨ÒäÂ{8GRCÁ›.‰ã‰ŸÊ_ÞLÂ'¹-/ÐÜk2ר¿€óWfä*N œ‚Î#\þA€3  k ¡1–1t¥8 @9P¡N°i˜b/ÁGrzƒaé¬áôy)tãY´¤—i_4± 6ñ'2B!ÀŽ`>Ñ ¿RÕËd€à“áØHÈá$A/ U€`êš§ HÄ£°•’ êdA<úA` Né¼…%È.§QðäèIµFŠn –¾ÄëYÏ7ÔÎNÐ}z¸_*IÔ$JMýíý¿ì}ÿÃQ©´L/gñð, @–jÿ˜öG΂góßÃ`çá(ÛJã÷Y¦Ñ£þ4œ í<f[õ  ûŽZ§€É4šGƒº¢18fáìqp:ƒÉ¤ÉivÝ ´!ú•1ÒÅÉö,l84’Y Ö=>½ÄóÉ âÕOÈ@þÖ$ ^àžˆ³4"úóìëÿå~ÜóÿçŸn$ …ÀvMËxÞ¯®^yþÓyÙj­7W[͵•µ58ÿ×Úk+ÿ¬þ-£ßðó¿üü¿~ýáàùƸ^þk¯.·[°þíµÖÚ@ ×­µòUþû?Ó°ÿ6F¬{§“/‰G ºÔMQPvfSh@ê.¹ð•!<xAªá– NÖiÜéìM¶“YTF×+U ô`o 5Tãñ,ƒž@>…º‚5ÕŽµ\*^Ú¬O² ¢ÀúLª.! n‘…2,…~f8`/{Ÿõæ³þ†ßà_8“Ó³Þ$ƒ‘mhµ¡ei –¢R–Eåjnƒ˜DÙ(é£BTYÚ:K@Õ¯åNþu §É,SPóë¢pÖ›!n*ªÓª@€´® §üñGPÁg´ƒ{ÁòÚêÝöÊÝåµf³ZµP=sÈã´u7ƒæÆ­[·ƒ¬×)Û)f 9Î$¼€´šŽÕļÉÍmîZkMz ê )aC¶oÜá19‹FˆÓõ ÕGŠÖÓ0Kf©îåÑ82}qoâNá YU Á}„°~r»»zOàÛ!Š©,§ñpŸÆ ´é )­-ÛOwAŠ…mÿ…Ãó$Jš†¹¨¾NÃPe‚ê­$¬°ùï m7[«ð¿vƒþš NG( f~*Ow«({cí ²}P *ÏÂ>È‚ïYnNaÛŸGlTÚ> iìì?­R_ðG…z«4^cgØÇ›o²\•Oi–ýd’… ÷À|;YÅ…sœ?à©üЄ deÑ貆òª±UÝf¿KEvà üO€1mC½ª' H´ ×K·&?p‡Æ¯ÇéÝãÛ ˜ý-@ þ^¿Ûhläý΢qTई˜h2XJN—p} ºwR7 ˜Ó-wKôx Ç¿A\zºi:™Ï€õàyBÜ—XÞ€doØ]Àð¨Aýê“OÝ¥[ ^¢Qjà{ ÂRyüÑÿUêw«‚»š‡ÈCZÖŸD(é½…a?“7«”:€•Ìä õ<Ÿ3TiC:DxrP¥Ö[5· ðòÑ—zÖ`Y¼"a_xtÁï!ˆ˜<©Tû"…;C_ÚyDçH¬ñdÕõP·,T#ÚÐèzw‘´`kmø *еˆt¶ä͈5Zàÿíõ|¢Y¼šó e­ÓÉ=ÃI< Êù1<”'ÃV'Ð=qv–ÌQçú -ÂîÌqt<áóõן7Üiâ€ÃsŽJ#®eިܥ•E¿=Ð.!Ȭ-êÈ)1ÿhÓc1ýëFˆ¦Q4fgy{F#à ° <:GôÙœOÖ©Û‰£bš»‡yuC5SÝÝ»G™/m¥@00ùIäº\RØpÔ¯`[<´«Øÿ.8ЯOô¢1ù¤¿åâ’Û„ÙYïÝ<š]Õ(7Êš\\bõøf¥ Ä_Ã×íFô¼¯È£µf-WÁ~áöHivÎ1[܇Ïqï4ìKÅõzó•w^¤÷Ö'l¡gá£1løF_©0š!º} ÒaësÙÌ@h³8]Ž»bC ©üg b©Ñvt®™!w£‹›1“PãrXVKrRÉɇ6)À§ RRò¨=]yŒ¢Ú×ÙÞN—d‹ŸjZg‚âí‚¿žÇi¬~$=ú+å?QÄ,Üñ‡œUðß–*Ȭ_óñ”¬WX"´ú½Á&†sP‹ƒw•G{‡]Xbü, |pšå–ÁìyÞ#î­<.d2äDõaq.~ÜÈ*·È¹;0`S4nÓ8Þd‹êNœ{Fg(4«[öêQ½”w“äq’•ƒOúÙÜ2 ¬žøG4Zõö'ôö‰=¯õT‚8­ƒˆµd•ŠrIü׿ƒq£r|x¯Ú@I|¡–7ä\o*¥ß4êw¿ù†$=¬4ÕX°ò&(ÝÒÒ'­Ï·ßò:ÿ1+Bçè B]._=Øo°|(<ŽF¶ˆ'§‰¶V1ŠŒÐ—/7Î{µNTªísÛ ¿Ïu Ù‡MZj‹jþÊõk&ûÆl*ž#¢|Põ?ÂßèN æ•‘lû Š‚_Ù’jØÄü‘ä¹5Ë ¦§¢ÃHß»çžC†Am3f|öit#ºßœÓüµŽoy¿6³¿ªã«­jŒÂZÚè6Ø}æÂÕ•]à(‚¿^E“9Ͻš0Q¹= V­<úp%ÔbñãGÓ8ÑâêW iU¸=ý‘òþ?¹gືàO˜vÑ6P­+UwàQV2ô¤­ÀéY|šåÒAåmt™w¨”€1:ND*„˜ÏäÐ,(ÃÇœÌzAä·A²:tæÂE£!£Ñô¢ä‘^Õ¤”kÁoI<©”7ðWµÖpJYâ4/7,6£Þ=ƒæ?G£Q-Ø Éd1c+^8¹IdD\IŸ1Ht£p2QVÊ,„—õ xáɉÌ0›OÞ~S6×ÛÏ»ÏvJ%çx–èâÿ$LIc˜Ás ÀýbÿxšJW•_žï¿8Ü;T®*Þ‡æ_N)K΋ÏöŸ¥S fpH6Ù;»zúó‹Nç0Fs" #0*"b 3À ¥Õ²:SÑ} NþrÆ3A@ßzd[%”`s*eàP¥hß™jvõ*Ò‘Ù ùwhûñhÈ×á?Óíà9Z†"ò!í/}ÐÔ÷òà)Õçá(V„ z% ý6(rø¡l«LÈÑ"Pß0ɲ½2|•ºêeZ¥:¼¹ßãBß]€ ªýov·ö^íí?—þ74Jì>´ð·¥@B3æ4êǧq„bH©ÜÑãâg<9"³`ç}4GŠ…f¥‡j}...êÜ%ôHnAýÆ$Q£œeãÑVéçèdL.˜ìHƒ$‰h0¨‘Á'1š¿'hU@ë>×bç°ßøþc4R¥ Ç3@ìIgq¤>‰fäQª©v:òõ+œ¿Ö­:@, i°¿˜ã˜Š2÷0«h*&›®¨~ó~#ðÅsL ,[—ÂÙpNwŒ³ -Ý•ªî27²DÌ6ëH³‘mni´SG÷¶Ñ"ƒ±dá[&z Ë—iküœÝ¼JpšÎâèüJzÕDCÈȨ/=–zÀ[û:à|û“6-‘ÉGÙOèÀ€©ß3Ý×¾&íà tý}”5Ø7,R:&)zÁóý£N°ŽfH ²8¸ˆA!É)_šm‰I'½ŸÆ@N(ãã­E¦'LÉA.¼7 é`ÿñþÑaýèÕ‘¦ÍÙ8$ÿ+à–ãV©oPVn¸ì’7LE§¥Švì†m p™{rèäsxRµ£àÁQã”×ÎÞlÎLõ)Û%¬ %ëò²ìôe‹ºãKÕŦ¦ ˜<Úm§ ȶ·Õ R>•- ”Úê×G º‰¾ 6 n%ÈÂÓLy«-Þ^Ìý‰-”Øå/UvÝ~3Å.‘mÒnd$®£/üÃÊù‡hºe3+ÃD–5!æVHž'‰ÑöRžÖU›\]p©+íÒ€œHOÅe1ʨ‰°ˆ{§¼:°Y'´{óÁ·ÌPÀ¾£”ï·Lçªg¢ä˜!’_8òGÉ(á̉‚nŒðÕuT-Tñ¹@Æ+d;s“‡À¢­V¥ÌIñ®¬V y`F§á|”ܾ¤q¢›ÒÅ/þOÝÙÑ °Ê¾¡Š|Õ©P€%exKúýù fpʓƪúVLW䙄%—¼ÃBä3y†~?5¾l¤ƒ#Îæ.À/¯4…Ûž1O²oØB¾qf:Wþ½$ÒŸDp¢8Èg @d¾]—NfQøVP úd À>§™Þ•©D‘×g‰¹§™›¹ŒÏ‰"dQ«“Hƒg¤¢à‰¸S6_£ôêm¦…9D.¥Á7§[Ì„C$["ë *„pµ¿Ãàt ¡)¹F®È¦ü´At¦»+ÑýwJ—§ D“ÂqÈ9^NpNÃIü»Yt–Q˪ÁΫî³Ow]'z’bSpz䈠©Ou¢•Õ°ñFχ¦‚=ÒdÊþ%ÈVÉl4hŒÃi£Œ¸(7²1üJ7)â¦þÖ Ó Ü¦ÚuŒ.ŠÞ´Ãð³l®Ö&¢¿¶èGbgT!4M€Áã}Öt G´ÆþÄü{þ¥O †ê£óm`ž#X×2UÅø…hö߆›Ú_·ó‚·  G@r&ug` *oÚwæZ$1mãfÍ1CîÚa€† ÿ_„—×O9›QnQã’ψÅûòÛ)%:’GŽõ•N~ €XAÕSŽoª¼‡šå(é¿…îÆ—dàAØ\´¸Ài¿DDg”³oõÑ MŒ=NwrÉ8Ço£ømäöÿ8¢c\Di¶„»—Û¢"üà÷oxdeI’:Q±Ê ^ú©¹Î(nÁ²á£Þ«¼Ü˜±¿›Ç( ÙÎf'Qv†9%iD>žÉi#3H C‰¸(âéC2­Îó²»U ž>ô.ˆº“Ë'Ÿõv®­¯±Ÿ÷sƒÿ¿…Ú?ï ~Cüßzs¥´ZËëÍåÕõfk9h¶›kíµ¯þß_âçÊ[Wkå7J%µ¿ßfzÝ ¬ëB¾ZV·¸ÛálJtüCŒ„vû“l´!<ʯ5 `ƒ%Œ(Be5…¼R‘XÏêúÉ›j6'â°ÀmtR$1”k€x–{üáŸ( ‚8ñUwä•<×›l$ Ç—K4 Yžk˜æ”’Szý»ªl×äs™÷õ²{UÛqôè4Ið\[¬i(T¨ãÃÑ6.vIÖ(’’®æáÒb— |{WݸÆ>ª}kØuå=—…oYøÂ£Áš¼q €óŠÌëc¥ê¶± }ï>´ H¨ ÝŽÅpºFã:Je³ lÒœÉVÆv¬ª6d¡H‘ÍBcÎRbß%ZN]u7vV˜QPóí&JIüR: '%}ü«ž)Zî”Lh¹í(´”{¥I$'¨%ª°Ë’F_èx:Qú”Ôeg‚½xd]Xãîìtú³$|[Y¼v¯a;GŸÿ‹UsË}Êœãæˆsq¥{S·ž¼ù‚,ŽìÛ­Áɘ®#-8ÕjÁ~oû`§{ôÇ~ïàÉϵ ¹¶Ò$3>¬¯=­òvˆ÷TÉhšv‚…o8 ¢¤¼=ØÃ•o¬ C6ð NøiÁÞ™]’Ç­ /™ÔõÚëîØ7ZLéCùØUØä²ºv”+Q~žØÄ`îÊ9Ê9‚|óhßƺJ½ø/˜«À×®¦+¼ÓV(׎ïÐ~p¯ÿC¿våç1Jðúæ\<¬Žoc4«ïÆQÏ~iƒm‘Ô†vd.¤'Uú™´vtðòù¶ 5Õׇj8þ&>bÉû„'|•Êçû[ ^²‚UUÿ€®ô’×3MQêâZ^lÀRÈEµúºùÆÀó™~ŸsÃOª•õ9NŸ¶4|Ñû©½°6Ó=5C§ò ö‘| ~ƒa.Ö’ú~!Ü ýÔAfÚÐ ’²ºàe€r[D:º4ã3Rè-òg˜\/%Ïó¨ù©¸³ÖVà["ÁÜ*ÜkþF(œuÆ&ˆ‚i“›‘ý²e;G©© ·¥k!CI•«o¨~Ü% ÔDþ9¯œíg…Ý»§rõ\à k!ò´ë¦ï *ºûWS…j‰Èê!æúŽןðæñ¦ ò Ýéz]5Ïb@?DãüR©^vË!9ï^M¿9pDmš%)×]Ž Aµ¿®7 ü÷‘r€ý(‡>²M Ä•—Ñ "ì"¦U÷åÑû Üü¾±;$œôá ÿ~4žOâI}~Ò®æõ4‚޾S˜pdKª†é£tRŸ$[ZvüOk¨_þ;\ûÏ˃½FyK<œü=Ñÿ7Úš­ÖrÐj®¯¯.¯­¶–Uþ‡Õ¯öŸ/ñ£ÕkX÷NG/¼eðáï÷ÙÚ³ùî¢">£öŒë?=•¯?â§pÿ«uý2û¿µÜn¢ýw­ÝZ_i¯ ý~_^ÿºÿ¿ÄÜÿfŸ[ÛÃá*öÉâvAu£0H§³“öÃ)9ÇÎg1¨eý­LÀÆ\B¬»ýC÷e0j8G€óÔ«ÚññëÆwojµáÕQXÿ…¨¯ª“¸Õý™#ÑzÉÛàCÐ ´™dž%³8»¼Ö‹{A}ûw0®ýZ©|×áqU³¨Sý® _Êë_ßß~s·Zýã©jIІ¨A¬U(TõŒì‰ãçcÝÒqì2 §x›/op¦£>bË<ôžûAE@`Ľ©6ìuètÿ=ôlª,´ªh˜hIvz¿ÓÁTeÃY8•‡:ׯ † µÓFƒJÊd©¸Õ#¿Í:0TΚª[ÍgRßä)å¬+SÐöó0ÿú×aøàœPn0KðúWþ•Q5æ¯G3)^ÐÄìµ±¾•MX³m£RYS¯È‹ÏXo5twˆWt]pâ õ·òߺÿCWÂpŒÿ¡«auYÊU^Õïtæ™náÓiüÞ²¯À^¤F ŸŒÃh8Íä´;ÀÅÍTˆ>& ˆT¨JæX‚õZí×´®µ¢ÐRaª6hTæÊ– ÿVÊ/°Šô†$ót¨µúŒ<’Ééý ÊÕÒ­[V˜»ÎZñÑ``äsj¼€1eJ%É[ò²PÑɵ`±ÞXDäL)©„ŸÖ'GW½Qv µD^Yè½n¾©ÍFzoš&v,„^+{ã¥ÑüD¯Ý{´ÐLð:6ŸÜ?Q…³!S®ü8|Q.œéeé…a¹Á606Ȥ¶xad7BûÒ¦ÅÛçNãN{3ýÜR}A!’XÚØhÜY~ %˜èàE0©Ð"Œ,ÂZ^&†ˆsfäZ½ˆº)Ðñö.åH Öô+<:QѬD*ý0"aMqÌõÎf¡Žã§Á4øN#µGvG½$ˆu+£~:-É`y'…`›åb¯ x».µ¬Ø9Ù÷µ«-¥/Õ‚‹Ä'¾ê}Ô³F On&$ ¡R_1^\9=S.>TIß~šÄH0Ô1'0ÔÈÛ‘v<¶6–ØÝLJ½îÓ§û?÷vžvö~Úénÿ°ólù¤Ê$, æž ˆ”áÞ¸b€ÄèåsrDyêò,‹pØ5IɘØ}ðéàÄéÜ2üY)LTJkpÄP¥IdÊNÜB”Fñ&*"S ÅrL5“9¯/áö$ÉciÉT4mÓä×’ƒŠbK¯5EÓoß~k0`˜ у‘gì*ßÈ:,$ÙgVλ*å²Ðd„ÃN¸;P´œçpTá~ ·I@§š‚ÄäÉ¢`†S¢ce±Žªï{=+8³Ù ø¿*Ú)´E[êl,0¸(—7Šf° ì#Ö¶å}üñëµÑü§ðþ'L¿ëòç¿n¼ÿ]ÆÂVk¹µº¾ºº¾Œ÷?«««_ýÿ¿È¼ÿÁ…ß`‰ÖzXF»]³ûñÁîv,¯ Ó}œÚLóyÞÓ ðÜîœKÄé¯}ªÕrcž,S—œvƒ1¼]q¥²ÂeÀs‡°ÞàUÌ¢¹`ºÛ;ËsùË´lüú~²´$²îŠ%±Ã§óŽÊRuã×:Ásªýâåó_¶÷ŸìHl9Œ(GšÝÓz'xÁ÷.ð¦Ÿ2‚Í•eãûzÞˆ®ë‘hÚ}דϕknL§ÞŠxëWUK`ÛṞ°ér銭©i-X©ZF úÖ¶9wSÍ/6ò-N‰©¹±@µäx ƒ$âüfè_Â`ñø)×?ÞY ÎÓ`Qµ^,zzRü¿AB-”ÿFƒpúå俵öªòÿY[oµ›k,ÿ-•ÿ¾ÄÏí 3®Ò¯­îßϳp<g³àáðþóhšœ$ï1^ðªwâ”Ì8%ôýì‡ânŸûTœ]‘fß#‘0XÇ¢:a©­z«­£R¯÷Sâ{;¦ŒBŒÖhm6Kùb ÷cñ… ‹'̓*¸œ¾kÔŒ•@Ý¢|§»è Õ½†¦÷+UÝ;Æ]°ºzM¼¡ƒ%¿Ö¬Cå¹@_è9„ïw–wñÚ•¾[}©Ø$U çÂBàwåÍ *K¹C~_A´ñ¡€8Ó†˜VòzU§ê.f 3«ž„â ì1áMG•æóɹEà|«¨›y=-þZ% GéŽb_Èä?EMEËrÁšXœ_@æ”–4îVT2É+q6³üa<Þôz&y_–éKßN57øþ‰Øþzo3h›û«ˆž_†® ”ü xÕ_Uíp¡ª¡ûÍw'ñd€š1½½¦Ü¸Á=òSp¶„)ªzÁÚ.øyQ¢]5?¾ìˆ*v·ƒv{uÙâ(Ë'´ÖÁdÃbd `žA©ÍNÃx¤Ÿà)ßã\kµ2ò“h| è=.ʈ÷nždêz÷v Ä™)Úæ.æÃapÑ"fŠ•×÷joªdõ›Tmƒå€ßXJ‘Ÿ†K¿w—þõæÞfµ‹‚îµ¶Î<Y>õñÿ¿þŸû)Öÿ“aü·EÿÝÿ·¼¼æÄÿ­®Õÿ¿Ì£DãÂ{ÑœtÝÂdGSJá’§€²ë;Õªt¯ô=‘JOàL S7e.æ½á{jN„d1‹F“([¬A7‹Ùd¹½Ž™ŒðpYœQ/‹œÊÐ<1õ•g|ÂOáþ×öÚ¿‰Üÿ×j¶×Œý¯µNﯬ~ÿý"?rÿë…w i˜¬Ò6š5ëÍ•²Å&vÞã#mÈ"°&±2EGÐEUU¶óêÅþÁ—Ý|§KP`¢È!vÎp<Ùyüò{ÿ¸˜Rx><îîà£TËk²àèÙÞs,hyß»¯ð{ÛmpøãÎÏÔÓ}§àI÷Ù ,Xo6’½ç{G{ݧ½Ç{ÝCªÑ¾¢CÒ¾¯.§ŸÓËôý³YÐ|ß~ÂQÃ4îì0"g ss}úF_[÷øÖムÀëï á Š Ý8ˆ‡qÖc>—& óEwŒÉlP¡Òj°D”»ÊÕ—›€Èü…¸Æ ­B¯H7¶jB«{°2NÓæÒÙ4×½‰t’Ø~ëm¦\8;UtF[  ÆfðpS—àý;ÿßÚ«×4n."Ô *ü{EH•ØÅ Ž‚ÅçûGÁöþ³à‡ƒÅÜô8§vZžA4Ê0=Ûd>¦™¥”{j–f^~ªlZÅh-æ¯ &ÛNþw[´º·™—äCå:òÛÀä÷Ñ>î\}+¨ThÓ-Ñ«wiKUqvLPÝnV5ô {‹ƒâ·¢Ë7(„ŽížáC {çþ° Â=Ú«U×!ç)Wzn`Uw3ß ¶w¿*³ÒÄ œØõqÇçNÉ<›Î3ÛSPoÚ û‘ÙðFBH¢'¸T;¶›QBs~8½ŠT+…詬|“d²t‚ ‚ÕÕUŒ©•ë%³@"£Oø™ ³èñpYÎC$˜Ä©5Ñ…54[ènòÊâ% R\éÖ­l© 4¦íïøØèàœ—¸lÃz•ÑDz;‰.Òú$Êv³-ý²ÇwáShHaŽ™äy³Þl«Ï •©ÝT½^iˆDSå(>™…³ËÏö”R~R¥Oö“*È')aߪÑ5Óòʃ¶JúøŸ¶J}ýùR?…ö_ò·úb÷?+kíe'ÿÛêúú×üo_äGÚ•KbQ<Žy®ã¼$?7}”ÉÔõ]çø;,JçL»>eÚ»¼_'}”Èö.¿Ð÷ç³?a{/Ô»‚Ôhß-¼SiѬ”O˶¼©r<Ý~`±£^¯wš$pö;…ÿmÂïä>£Ó ³tŽoÌ ÒpWS×̳øš){hòYlj(µ8oˆOä‡Ò£Dðú³É!¤¼EºÝ_ÊöhZ÷ŠÇܺeµÆŸGÌôha–Í“ê¨Äö?tøüþï÷oÚa`újô@Cj+ÂS³~dá”®ŒæZtcC/¶T'-G;JÌ'íª#»×yaõT )Šê0µn7¾ë<úvó^íxáøõñ›;Ÿ@³^7AãžÉ¨D¯ v¾d u>â®é Q«ÛPô¤šËêAŠgyŽ>n £Q…¿2Åâ!­ÙºØ_‘–±”9›ØFÇYûdñQ÷#å-'k2  ¢Âe‹ý﬇.ÐZ[yýíL¸`Bܳï3Çz²³Û}ùô¨÷Ï—;¿ôv÷žõžì<Ý{¶w´s@.§ß–¯š õgûV“« PS´]­^±÷"—„íŽìTyK¡ô¬óÈwJüÀšÌ:惮bœ4e@Ÿ¶qk¼m6ÐÓ–|"ùù_¬Ë®›iãøPÁpãºL]ÚÍsS)'¦M´öpÛ¢36ÆWn¡ÍÚx~âRåO¸|| ï$øÞUhîŸÄ»ÙOôoàâ”Ç “¾© £[æ ø0ðÄíøó&ŸWPÅ6cØÐ©ã°Œó½ýÉä ܘ„å;¿x­0ÖäqyŽFh>Rîúá3‹Ï²C™wg¤çd²Âmû¡:VTÿ‚ªE¹Ã~©ÊüÖÙ±î9ñì”;ëûøþ6À û½µÆþ_ífkß…ýßZ^ùºÿ¿Ä»ÿ‹<=o~ýá3÷69/¡ÞÝão–Ë‹~–z³\èN¾]ŸuÝN¹®®+K•¨„¬qÖå*ÝdáeSþ·\UžsºÇzÆqãtŽ.5- ¾TõÐØïÔìîUw*#ø=¬ÕÓìÿ¨æF š(# d£ P‚@uó ë‹$BØÒÖáË;èn›c•fÅþYã+„;uOçD|ýknQ Ò9¡«Mœ/æ–ji}o¢’äÑ}dŰGâ[+w…J{ñ,¾ÑÊÁxSR¤Â7õé¦q|bREÜú‹¥Éõ‰Jƒû)„¥ë~2q1þ –…(‹›‹¥á«Eƒ™¡¥Y6ôöÆ÷?O±±Ùø8\™Ão©¿Š3½›rDàV>‡c²äïrm;ÖÂyœïL¬…½=jÜYi¢*‰NgIõ³à‘ª¤`‚ÊÇðmüs¦G1aEZ ÇCê2„©oÐ>ô÷HºM.äû…^¹ý³H/À¹ŠUV8ç¿ p6ϬèÀfEÙÕ«X¦U‘ˆz¡ ªˆR¿qÝ)?ˆ ˆE,›4ôðúÑ›kÖ‚ªÛÀüñoîd˜$ŠVA—¼QU6\Ó9Nã.ïM¨ŽNžånŠÎ-e²réÍÜ’éÌõ¤^ã/oLx!Ôiyÿü†òÔ¾&CÇÞ‹óµ ähJîD,La…Ô‡ô‰åMùj:t¬â‹­8zµ·œ¸’ ´år£„ÚzxG‰£Ê`RHÖÇo>~Xh}´7ëÉ $“•JãÂó®Ð=åƒûkÁr½]oWìW™ÇŸ¿;°…N?UÉûëÇõj~”‰Ü[ÛeÐ|>*ÂØ Yã~.à¡jÉîRz{sŠ-‡×¦ùz|Ùø ÇVOÉÞlóg§‚h¡Ø¹û“°¡÷˜ ©Æ?ótJ•'U’|¿0ã¥2+Ó—š²Åpÿú*ÙÔFÍ8F´·ñve¾ù~§ù‰ììU±QosŠ3Â3€OQÝ–:o< Â`’8û˜èsdë¼óØ…k£e΃›?Q ⃚ê_ §W‚ L¯+*iHèÒŸh1/ûd¤ªôxÕué¼ßÓ}hÁL„AðUÙiOõâ|Å¢«¢Ä¹Å? ªBúµy”éWƒ¡Þ&þäD·lìTF}ž)q¨þ­J´ÍØ<« 0‹ûÎ<ÎùŽñãëO±ýGÇl~‘ø¿fk½íÙW›_ý?¾È´ÿä1½Ƥƒ­odÕxåœZŸN×È,Z!Þ̶[ÃU±))Ô«ÒT-<åXŽGù†„ü˜'A<ì1Ê–AF€gn7o} Ä£W(%F Ï+É'“ä÷NãÎr7ÿîŒ]f™à+»‰&Š-äUè¦AèMzú*EeB¢õ Ušâ-ØïBbõ›’kYÀß¸ŠØâ ¯¢·Zøk‡¬Ÿ½\ŽA._<¥Þ´€Ÿ´ñÿA˜ýé¿oÌÿ¸²Òvó?¬´[_ùÿ—øü~ÃdY~°^’ÁZö×êO<Û{¶Óé<ÓhmÅ ð>áÊcœÿ*p&¼êXGƒ8ì¡+ÅÍzÀ4|7·^"㿵ޡ ÿÍ)½joîVkß5Œw¡éƒÕµ–þE«^Ôd„[€6ÔÌ@³Š? ~º!3g8ù7AM=–Ft¥A¿eÍž¸ Ì&O' ש5rmžëVT›BC‘glÑÈà—Í’©]TŠ0Ð)ËM~éœEï³ÆtÆ“ ô I£lóåá¥þ-+Íô¶VɑƄø•Þ@ • =LAb¸°¾Ó¥,rbŠüÐqTå¿•›RS b)¤ˆ$è7(F5”ØˆÊ ‡ÌØ)OÉB#®z4¢+¥y­FÌ‘}z?ŸŒè´ÅK¡~2§ûí^þ—9àT%¿')·Õäž6¬ªóvÉ.Åx<ý8+C©zÀ@/Ñî^cÅ–±ÁJN¶TûÞf°NtsõCºø? Ê å`ÎÞ‚`ÉW6V«‡fÔxé®)ÏÜØDë„îHäàM!½ev…p ·áGw§”‰Þô™Óï¼<© Lî)¢?iíWäô䤪*Å÷#ÿf OVôk‚Q˜O'Ê0Rô"¼äÐKøcšÐëAhßÉfF# H懎ªSFŠçÛxe»ÄŸ9(žÑ-áÇ;ûGd_x¤/ùò+_"µÍ# a/KОd™ëBãiKä™NN(ýOÒ ÷i£(ˆ‰S^6-Ìë¹³2¶èÐ.Ì—¶r.V)Çc8%ÃøÔ”bÝ ,Ö(œUþO!ÇѨUþyPê·ÿæô¼_L£IåÕO@d¼?–ʌŕ^ýdz¼"’ºm?4ßRy‘Òù”Ψl+àä|)¥}› Ù÷†Vwï!5CÔ© I”rÉy$¥Ó¨ŸÆ@«ñÄÐb/+…Ù†ÁyýÑœøÁ^MÇð•Ð`äÅ •Í:”©¤†â,8 ¥“(šp'åÍ&xDÀ ;ïC|"íàe ­H šî´›q ÿ “d`J̲¨M^;h޾ß28Ûëv‡]ø‡~^üvÿÞöýºGt‡…Ýîöè—ËïúóÝ\nÿ–íýØ_½X}ÿ¢µò~í·³Ñ/Ë“Ÿûáoãýký£ÿ=µüñýl 3K[?>; [?ï¿<Ø¿òìùËw­f—ýg¿ýpôàdíýïÃݧÏÖ~:øñ÷½{üÞ‡^e¯¦ý“Á|²6ÿù§÷ÿxÕ½?}þâíàíÛ÷gïûíÖÓý°»?|ÒþñYòÏW!üçg†öÙd§ýcüûO/ßþòŸþõ¯Ö¤ÿûã÷¯F»Éô_³äíAüêûÁó——ãñ?»ÏºÝ'éf ~n" Z0µèŠ’è»zLlegÉ -Á™˜ögñ SÃSꔩ+硎ÙE¢z[RôÓ×}t¼ˆGdÝb‡tÖË¿¼ ª0ö+£¤`õ0¢üèâŠcSev² eHéH°§h±¶êÙÄ]ã×Â*׿öÃkå dvŒ9ÏÅ\ˆ¨YàïŸ?-€b\rÜŠuÚð¼¡RRÉ#Ì]«r/¨yO0z}T«j/ñÓ–¤$¬¥‹³ˆ,»0®:9TÄ­:Â÷€pž%ã0C³ùè²V2Ïø`EÈIw:Kó~Ä¡Žé¥yb>âDr " ™‚íý¿ì}ÿ0ý<}ëÁƒÕ%ÎF§£(è†é_œ,}n†ùÿ±Eú?ëc_*þ¯µ²¾¶¢ò¿­­¯¯7)þ¯õÕÿ÷‹üýŸ~C*ö¾è¥ôõ%Ü-}|y\ñhÔ'Ó?Ÿ¤áiDbe؇]–^#åヒ†­X$Vq¹Õ¼CÉj'É|x2Éap¦\Ô=MPõÊÇÍ¥ãåõu®ŠN¾×.´½*{ؼî<Æì VÃà”±á,œÂL‚ôr|’ŒÒRÿ,Iáࢗ>3ü] 0°Bc¼ åiå#™sŒsSS¶˜ÒiØÇØŒVŸ‡ñÕìaõ¤ Lͺj—œ6 —"O5ÖÊó‰~ ¥Lý–ó?ó¡SriÉuA%_%ó[Þ Š~›pb¾ø¡‹9Üö¾ß;‚ÿ–—ÊøoþíÑ¿ÿ&‹ŠÝŒL*lпßÑ¿·éß×ôïú÷Q¹èºü .пßÒ¿‹ôo…þ­4‚Ïw©ðý[£7èßÍr©´7AŸ¥˜ù '—@Rp2WÀIVÕÑ3qÀxá'³ö0óí×RŠ3“~ÔB|× ¨CSJ"º|§¬Tµ.’ÒYô>DI è^Q,j—B@ÂQš¸Ð âˆÐhÀhJ¦ÿ‹C°Ó•ŒhΉ@R¢iÂòRH dJÄ´÷P¯ß–IdBd¢#QrÁ #ÄìÜŠ=‚dŠ„ÏYPãJ°®ê홳TÅW ,&N±[½¦°†)Iè€Zˆí(Ò ¸îÑ£¥]Ý-¥‰aug¸ "K()iMi"gIÆ S¸0;Ó}éGÖ•ï â×D¿Àb!mihM¢j0ÈÚ9',Õ0>GI¼dÑAË§Ì ºÇµWW¡Ã—©ÝacÓ+d‰EA˜Þc€_Jgá9*x€6ï$³Î ÍPê‹BM«}?¨×±ï`N†"žçåÑîÒ}µðÅsà¬/°ƒJÐÛ+…CÙ¶Æn†.øŒÎR¿Ýƒ‚w Ó©EÁ {X=NK¹¶G™¢uœÙ,‹˜È,ÎGá ©}&²¯ÊŒR9‰² 4H¼Þ 2µSÖÉúPVIW[§˜x~9=-ç<ïv€fÔßfɈå,^:‰3[Ü>Â¥ßË¿”} ƒšñ{²í¯Ý¥]Ùþv€‡ò%l*˜<ÀòqÉ«¤mç(NoH >:YFô—öB—[f8Y òÓi+p±´1Qä ËrF¥Ðl>›„@°Wê¶ö tØ\Ï»¹ôàxé¸ÞƒÎãLí×q YC°ŠŸ“Ù[T$ßJbæÈOÚŒJ¦ãýÓ ú´;ŒJZCèÇ:yù˜èŸXœÙZŠÈß¿°Ö·`O#É*x¡Ûç gÃ+·i‰·)l­(h¹§Ñ vŸX$ŠD±=â7¤ØÍÈ¿`è]àúbÐ&Ùj¯kÎÇAÄÑ”ôp}Ìm´ónŸ‡#Úî‰ZNΙ¡#BxzÖË€”ßó*%DA'øˆd‡}8ðÑxˆ;>Ÿ ËÅ~Ï2adæ¯à‡Isk¯®áìÖVW—çÓkªÇ)á°ê ¶Å™²¢ ^T[*'Jñ¤Éˆl˜ŒrŠ©âBŸ,ez¥’ö™;¨Ë²@¶aÃÌcs1R¢ÕDþŽc`¦_ØyQDšAZ6§Ô}‹fعŒuþ”,Tò‚@»m-@Øì-e { ë„™z§LÝÞo–BÅ{­^¯ÓÌç¦áÐÎw^½ÊÏØ܃üL†2‡ƒgII‰ÚúcÇ©Šeh6À—LÝ]Ú —Nß|h¬60!~zÎY#J¸Jæ¥Pe¢^uZ½%‚)Õ–>Ø1{ã¥úJbî6î&i†B”â›Ð–ßfB¡dØõ£$y[ê¢p<”4‘T©8¯¦›£Œ“ÁÔYæ§Xðq—Iÿ oÇ@õqoöý V¡…RPÅ(ž@ŒXÉ ùÐÀšpwçGLhFäF„OlsÔñ”Î-ÖÍœâõ¦)Ǿ'èlŠ’M¶„ä‹Gü0QI…GXÂç Qvœ)Ì‘D…¦ÿD‡eX5Æ/b†gvå’;êŽT´b®ÌÀH–%ò‰ÍM¼9 D^:-Âu%^uFÞQn yÕ™V»ÍýÒÍ8œ« ¡_ä@$%jÛ¼JÕ&ªÁ}üg>-³hq~“9ÍȪ‰ ¦QI+Ú~¨sô–ïܹÓl¿*×8*X­n•hC"¾‹“ű­öfcm»Ù\ñµöAÐÏOs‡ÆÚëž$(z@¯UÁë9Ç4årBù°AoÿGn­;®ú¯',×—[úÉQz°¾Âo£<žÇ#´qà\Ún…y'J”l£Y¯Ãi Ó},¨¾?PfÖ^õ#y8¸KLÁ¤WîPnºaÇÓ?Æs¢¤8I¹Âˉ²¢UhPþÚëËmŒ¢Ç§li¬Wÿæßw+Õ7š®JjbAUܰšñÍ1šüfôpà€3±~¯ }ÈÌZ"lúÈ3¢h—Žè=•àˆ@,| jÝ =·Í{¡}Vª”;„õ€¢SäàqÆ'¬l´eÍODo+„NÍ Î¥Z£v|ܨ9)‰èμ|¬ ;fð‚MÎu_cšìòMµqlàx¡õ=z˜³wWŽ1·Ê6×G'ý(D9_ˆN°ðH½Ïð¨(ëÏ·Ö>òzi7)*`˜¤>(ú€3Ø@í­`¶£x…Í›ž\ÑNæ6“>?öüLÆémZGErÇÇï?Üi®¼úX£‡ê Ôf>"5w„!¬wœê(¢h‹|U`ù'ô*bêL7"¦ÚJ$ãöódÕ©–`›™xþÊñ6ì°E.ÂE÷§ÀõãÞ÷­®^ÿïËZ­õæj«¹¶Ò¦üŸÍ•õÿ VÿF®üù_~ÿwÕú9ÿïör«½êæ]i5¿Þÿ~‰qÿ‹ _úsަiIŠ6’ì‚NCÈIµ÷Ž~ îìö¶Ÿv«Þ‚"‡L`=˜g‘±eä•zÛÈÈ7DÀÁκ R? §|j.üº¯^š%ßGTŸñákO2_ýËIüš²MS]­šÄíf†FT’´Mÿ¸¼Ø.«ŒTã°o>? ûú3üºXðùðçxÂw™~Óô9ð Æé IUÁn÷HæÞçw“÷æó?Ÿƒz`„ò$íÑTK¹H¾XÕg8¹Õþºo½œ¢óg• Åt(ü›1j>Ào$à••Ú!v’(š gÑiº(Ý®ï|(sÏÇÐ ç·X.ÖTÄ¥èÃ+ýJ­C7O¯¥ã³Ý¤}4%;X„…ªŽ6¶Ó„åyˆ0áæöKmåD㬂ßÙu”*æB:…'éyǨ%¨4>Ø•‰Y×~¿X >I+ºZÿb?ö¤úÀ°ZgÍ»YÇR_ ®Ƽ!w1È¡ƒVP >h}1¨èXzþüÓ³ÃNgÁÛ˜Ng‹H¨,t¸>°é¢wÁ"T\-íÙRm«=¶Æ™Ý<uA¹kø†N7Êyÿùõ›“#ß/ž·g÷Hûqüw…Äd;ñý&· ( pG¾f>bóªJƒ1îtåqœZôf7o‚ÉoákÊ\ŠßF L7VLË$0DcüïVÕ¢/ÿÛôvž'ñ Àxr2œž*œ„£hS—À³þ{ïW¼×€„0±~ÁÔ-œL¹O­ûåÔ+ü«]ü¯ŽgòÙ4áëV}‘ôÂÃUÔËkÎ{߸G-®ƒÃÝÄm° ×´^½‹gŸÙ ´°;¹ÁÙž8Œål?§tÑ$|7ýzï.æGzÏ·„×=s­Ó$iœ„3å_ß–5TY- ÊTk-ë+Ì"mF ¥+~i¹ß9>†3u\¤ÇÇØ°¦ÃãwÃú½R†£¼|µ“˜qÌÇÊÂ1Ÿš¹ŽùxùœGùÛÏ ß˜ˆ–ÕãÉ9ˆ/|Ën¡ÿ”Rå€HƒÉ<%ÖœüŽ.SòÌWÃâpØ$HAÄ!»L¥/Öû¶?˜†Ñ‰à±”ÿRk}ù>ô‚.%èDcùp¦ê›™6ÓÅ\·[[nÖQìšEÊ4Gg4“€µ÷4D˜`üØÞO·`ü,=93º?cb† µF?É‚–O^Lœã„áôr™^’;‘ãHWQò†°®°òÕ1NyzqÔšðý'<ÿ Ü¯^’WY¡W½Oò, µà5l~òK†8Ì“äØÙr¤ôÉ$UNY<Ù’íŸ={0b”ÔaW —üK°qÑÅTP¾¯`´Ĩôí‰À ýò+¶ÊóŽ…{©ä¡üA¢˜x<QÉïèI>aéþªä_ºèäÝù„É~`]àáEÀbüòÝ¥SŸÝØ E1[½_õˆ¥™•™w’OÉ,&“l&Ð`|pâ´”OÜÄ?èõ‚~“:jè:æ>j>C‡å —Ì.k¥˜Ý7âÔ&Jî„îÉÝ;Z—Qkت,ÛZÅ,^W”d­›e{›º,ìØ€_$³·¸ªfõÒaO‚t»%o÷ò­§ÂWˆ5)–®Œ”ö°Ž¡½ñfÒ2`âѹ“ugEá4E[Y?9Ñä“K­ŽcÃxäÖ-©Ì·:}Î/‚¯Ú€Èbõí«cÑÿvâ–r' ÌC®ïÀ)78`ºÎ'‰’ˆµ1ÐqBVä™{³·2aŸù)¹ ójÆä`)ï”p¼Tùȱß!áßõŽ3lÝœ!¹nÌJ¡M+6}†l][>xPëu·N(áƒ:Çùƒ·"S… 8SrÙ«éìÚH¿ìí*JTR.c…uõ¼Kêø!œ0åÊÓ+ä}Þò9—8hNÒ‘ñ ù|ïÕRš]Žl¢Ù}¸ 2Øã³BoáÇQÑ‘ŽšEi>H£i¼I¹m±Ï!ôƒvò7Îß¼Ìo«<—Òé4 °ê—R³§Fæ'hIÖñýÌu`:ãlå:ü—qZÊyÖ8 'Ê9uBþv2¾±há"ÍÏä4*/nºJh¯ÊÜÙÅ"!rŒDç1nr@ä|LBÎ`†KïIÓ„ÛY’×N[Ö#b#ˆD“4²”±–ÝŒú `D#ãZ䯬t4‚‘C˜ŒÄ9¢è¯LÞIe8! Ô=í¤³ä¢$‰›÷ ‘>-s’Z¬Ô°ž¯Žf•g 3:æ3‰Së}R¬@ÆDtÓFa”=ðrІ?èýq%zR]*°í/zÑCr.Y³-o6M,ÄçÇqJÛV‘³30K¦F+N„Dmr3¡‰•6>o^t¨ÁÞ˜4¤^Åò&">9Í¢‰@=&·q¨Ýɱcká²¢!Ì € Ó7Çb~×ÞýHÚÿ)ž(Å‹Ý*QÿYÊ’%ø#“µBPæTeŒ<ç`D ízö˜·÷¯<õ‰E®˜]ÂZ6fäªÒqÔ=º» y?èìÊ¡êA«CKÿ,ì³þä_Á?öƒÌ¢ÂÙÎ*3u Í S‡·ÕÈ%± XƒÙBûŠk.w0ÂÜòœÁ«™£µ¤ƒÖ’•[‚ªÐ¼¸Ü ³E('5¹kÎn‡îƤ }>g}¤þS¡^]ôoTNÖ¸eH°Q”ÿÀ¤ lÉüXEÖWóu;j’Tåáææý¢ìDXnwaÊë ,²ÛæEõ†ÕºÓ)j]oÔ©{lkpÛŒ•×ê\S ;«×‹ ½ÓÞÿ‡b-rëbþEAѰ²ÿ;í]ì­gﳂJu¨¢JÙÑš·Ul™;,êzyð´FwñXº ÌbhŸ¥j»tÈ–tÉg§’3†èöHå˜ÅŒ¸k|¤‰ÓÚMmÞM(‡Š£?ÃôREœP‚âò¬í‹ã–ryUl8UÙm\y‘àÁ§¼V- i™âö€˜9fÆåËõÀâ>¦†nvÜä퀂I«… ÊÞmöQ§üLñ­k>E¬iköð7ïçóvMÉl—n Å6ì WÒµ[Ë&©†á«öFÀ"Y¾éû•$®‡½Ólêí :àiÿÏ’¶*’¹ýu½^C¿éxô·žÁY'"úÖÏ(4†ÜóI{'IxÖä-Çw’¦C“*©±¬üȶª d¾›••I·FäÏáÑ{8N‰ø1\8NxBbÀl|:©ð²TmRsL¾ØM¬ˆ0¢@1eÇ-ÄV4žÚ“t#1j‰5ì'|Ѓêd«`ùHí6˜9éÈÖOcÔï“Gº’>±=GT½£Ù™º / x¤^Y/G°[&qJÝç]iÜÖõZa‰ }Ž$eiF<9Û(«›°c<3Ê£Z¹<Ù\%·@¹c©´ ‡”RgPÔÞ‘âMJÉBÑqTšNÈà`P¨ÅjÇf†ä—qºà$J _¨Å\¢ƒ0ê¿ G:'uHžuéœÍDªó‹ãJ)ˆ¹?KÔ¢P˜²l) “pÚ è–ÎÂrS;VÇFrÝr÷~¾»÷ý˃.^w?uöºŸîº†2ÜAñp>c#¿6ÆRûˆc<Έ”"u?BÑYZÒ61VFµL›‡îX>Ú»@¹•“Ï;In c±Ã΀iÍ®wïÀWâÉ UÒFŸp0Œ¯9›‰biퟎæ$§Ò*a€Qý½ö¨"ß(RKI±8Å·Ñeªin?Ù›» Ä¤}5NRÁɘeÙƒÂÚ¹ÍB“w©£f"N±Z6Rl9¥Mçc¢¸IÛªŒ)›mC|¹œ_ŽLW>`ñN’Tit—ݶ™•x¿H:;Œ²ŒçÌzÔœˆÛXaïõ#&W@¿£82ºÄy«¾Ü*YB6¥"#ƨÀåªNìåóm:Œ™Y=VIJÕ?² Oj†&È7òÏ|ƒXS¯ÿ^D:ä,×–È&Ex€¸Ž¹ñª(‹ZðÔ6ááŸè˜‡fçOÍ–S+ŽÂøš2çëOáO¡ÿg6ý;Ý?oÊÿÛnúùÛë_óÿ~‘éÿ™M=ÇÍâ'óDñòM@®íTòr<üÑn&9­å«GŽªçéÉÝàvðêÕ+ý† &ÇS_¹raA…Cô½á7u´`åÖÖÜâãgd³WyÌõ›3fXöõQ¥eô+»'óÔ¿«À*VíÏOîRâ›Woì©K+L*MMNb93­R ºïèɯÊ|jY4ÙVo¦Z Ê¢uÀÌÂÖÜnŽØƒõóÖf•Œ‘ÜiMÒÑE´8¿¡I+òÑ¢Sýgƒ¼îÉôûØ*s!º§ÑÒ8ŒGúA-€¶ãô±„½h‰pÑFfF¼®nš%ÓàðE÷YQ%KWÅ\6ˆ‰4Va p÷g1Èl˜ËTecBäל¾‚€¤Äª3¼a¢~”bw¡tÅò"{¯)бQæä©_˜þÏ{¨öëÏËOÑù?L¦gãó¿7ÿ+«Ëëîù¿¾þõý—/ò#Î^xr?~8˜…pBŽA¥ÅKs .¥äIÔVj¨r¬]%, âàÛh·øžÆ%ÛÛR;B0ÖéÙt[¾K–Ö°£4â<+õe´Ž¼>ØÝ^‚>—y~Ô}õ¦Sºµø‡§Úi4"gÝzÝyH*Ø›ÆC.YB©d‹[\àAf7u‚ÎfþʶÂIKN%[ÁAÞÊÿ¹¢Õæø  ƒ¿ÖåJ÷zlØ*šu€Yl‚,¶èß6ý»Lÿ®Ð¿«ôïý»¾x h‹÷©Îú÷ý»GÿéߣEEŽ/ø(îN)ÈæG%}ï7ï¯WÞˆ¦Œ§@4õfhfOuæÜ½ì{}ú^¶úÆßÔ%¼IwÅ ‚¾?޳L¥æ¶Õd½Y Eàõ¦={ ×§½yAò²‘àryY?ZHÅ}þk£VË› ɽÑù¨†ÂA›EE¦J}“âê+åã¬\c`ªùË8<$ß½ÖüþŸQžŠäÿ" §4‹û_äýÇÖÊÚJSåÿ^o®µÖñýÇ••¯ñß_äGÈÿfá Ó~›Ò` Ó+áõ Þ¿°›Ù™.¼>,ïÅýÓý5ãp-dcúK¥ŒY®Zo‰ï<˲)Èåu¬P‡#ÇoŠ¥i2ªO’ü‡;MóB¿q¦î°²1T€Æ~C´šŸÎê§±îá6Zb ]æ·lDY¿Af¯ú¶òkÈ‹þ\’rràÅÒîªäk‚wàæ’î÷ÔBÒ•ýÉ<eKèÆg–Ý»Tì$¡Â;ÏÉ\²W° ª"/ÍöCÖÔ:œZ´Êa_tùN'Úû(×7ež1iØÐm`hÒÀ’.wàLí\Ää¼ÉÎÐ0Á“Yt“¯Aee4¼`B8®/¢먦†Ú¹¹„Çé–®îÞ~çƒ#ÔÚý¢ »±YsLðR…n8p!É晄 Ù%Z¬ûœÚáKÖ3Œ‘2ô]¦[Øø="|2`¿…òK4×–vñ¡¬Áèol_ÒE%"¨±{h:GzYv²ÆP+Ú(à•”’]ÁíPCÚ®@ õ*g.Ä*³¼=ÈÛ94 Ù{²Å“|1Jt¡ÎŽÊÐø4Ë=s±‰/iÙcÆÂ^U†á•ØqŠÝŒ ñbÊ–àE´q#ÖÌc˜Ã ¡©ËÅÑ+à b]7LöJ3‘#â<½§Ovžÿ´w°ÿüÙÎó#㻦ª*Ú’=OMZJ펉‹2H2)¨s¿›Ã¼É‹|8ÐÅÁ¤¥7yÀí‚!#¿>P’†Ñä<ž%¢;ã»aÈ·ÕÔ(ÚÞùüèà&ÿì"Yâ‹scy&éÊÞá~°ÜZ[«j¤³óΑýêÉ3%¡=LHN¹]ÔGH¹œô"ÉÓÿkŸtýNò%ȬìÁ Šz€q]dúôáS$À¨ÓÙæ²-³Ú?½èu··w^õžvŸÿ²ûýN-xºÝû¿ì½{_Y¶0üþk>Ep’hÈ D;ŠˆÝ<ƒàœ>s€Î¯H ¬cH¥S‰J+糿ë¶ouIÀÑôô9¤g$©Ú÷½öÚë¾6wwá/<¡’³¢‚ìªÊϘ?êe/¡ÍQ˜ÄjÊd, Èl×nÅñÕÆ`ÚµíÞ ÊàÉ3§«f€ßùùÝöáaçíæÑÑöÁÚHÌIŸMû—Ä0뇜Ïš HF¸€lŨ¸¹õf»è‰Ý€øc6 —øÛäŠôžý~•1ƒvKÛÕ¨ÑdùB£àÔÈ×é ÇŽá¦õôw Χ¾ª(TÜÍŒ©’òèŠÓi$Þ¢fEv MÇñˆ`¹Ñ©„G NèÍø7m‰¼´;‹Y‰>ÅíŒSè!Ϥ㠛tsŽ?Åš#çU2A/MX 7ÿì¨Só`wkS– ]¦_m¿|÷³È„é|^Ò^¢„A=m·ùáZ!^“±ÁÇü­/˜¤LÄjEólXVaàˆ©´FN¬¬Æt¬m˜‚zÁ{ŽbÑ'¾lPF±ƒl' ü/ÒÖõÚ´¦Ž¤…”Í0c"ˆŒØ»Óê‰øëñ¨Sè;ì«\W¹w¬uœë‚W«Õ°,”g¤xYÂà1Gr=dáñªGt¥f•Õʵ¥>Úµßö~_bS.8ð]>~½€0Ê=µâ¦í².Ä«ð”0¨w,Jd•´ »‚åcéÍ¥ÿ:}T9î,êŸi^/Ö¹2‹I Q¦5«zÅÅ/ÍëÎ"¤œŸT¤ïÇ(¦ÀôžÌÔã7 •ô$ñÑ"ˆ˜Oöc§4)Ný7=ÂŽ3ºòóöqíÅé×ÅJd€¸O»>º{…´ÿÖýhܧ®lë[à&ÐÓ©†ÐŇi/·Û¯¨¢dd=ÿ½‡¹X­í6¢#|^&±B«®T€Õ=©9Ã]¬O…âŸÑŠn2„‘¾RŽ&cï.ᠦ땩³†™À¤“b½P.x%´4XßðŽáœk|Ä‹Aþ@ÃWN«Pòâ,]²Õ&LÙhtáüö»ð“kû“¬Ú—5âV·½ üæúa?³÷°ïV·# (ƒ_`KŠ9 ¸ø"38€Š1xv¸ÿ3µkÁ{ w û^ìJ\×<˜çýu´5ÄþïpÖŠŒPYaÑ]ï/“i6ùôâ p–Áh[^¬ˆ<•ˆzŒ;lE—á<¦‡G¯¶ˆáZmñ'ÃKq±s2(Ñ-•ðÞÀ ÷ñˆ?R)ïc@)ˬ9ÖÃuÿ ìÛ×÷@—TŽ9ððÒéC8]'5<[!'VFÀ+ ¿Ø)J$ü—†€—ùʂٯ°ñ×O~Åüå¡cVfhû;(âÛþa…›Øè¥²Ìñýj ÒQ¸†5Nj'µçPÍ­‘v…45ÔQn×ONN«®Ñ‹â0~Ÿ,¯#;ñªW•3%Œ1e¦tYo×ÝЮÃhŒ†ÙÀrØ;«'e•t9míeÐBgU¸uÁ³–֙ݽï)Á¶Ÿ¨ƒ1&bQó)•L‡nNÑÝ¥ Vñžc m5o¿h44ZN>=*Ã.,·ÊÓeø{R«<:ùô¥U]¾–{‡GŸµ„÷Íí Âj Ù‡4WµŒƒHk·µI]ˆ¨¬;^:ùtúˆ€’¿VV`põöÉó“º_[fáèFGz”3Ü›‡:Ε+›§Û.ŸôUNÎä6] 0?Þ%Ò p9Ò>¢o ¹‹ ˆÕÝä«úøñê“§?>_YY¶ïäD¯Þïž°&X«Y̬qÎÃ4·µ2Oñ>]cuM~0plϹQ¤¢ˆn_“!K´p¢uRôþµ ׂ êDOgˆáa•¨³úصÖ¦sJ^©šÛƒ^ƒ@÷…㲩VÝðÊO&Åí HƒÊŽHiB¶ÿ…iæ…*±¦Þ'ñû2O·:c¶Þí>ª[š³=ét¿ÄR_5Œ6é¬×–µRS£¶Z€³XU½èOYJè®lü75þûÿ„¨Þeh+0Ô,j¨!R–¡A:4P’{/^ ãK<>»BtX.qýZ©RCçC52ë²4€àÖ,JÍ¢ ·Ç« NܺPDc=…{ŠôuVÐii¥2t²Æ§E9 x b/Œõjv¸0ÀOªlÂ)dñ¥JÒ[«\åxîZ¢'`Šº`\Ç„UgŽÑ1Ö†7g‰i1„¶D_ ÷îUá¡f2‘Y}¨K¯Yõ³;"=¹î~Mër Ä,ýââùÅn4V1þ³kÿ·²ºr§ÿ›ÇÇÑÿáÆç:ÜĦ/ˬé©6kÒñUgfÜ">+`®÷Qîkƒd€N %ªý}e #¥Ø–À187¤è¯X‡ÕSxù‘CåÌaM•åîÊÅzÑ50aAçk5wþãïˆfÿæãe¯Ù\^n-?~Ülµðü¯¶–ïÎÿ<>©ó'\}'8‡Ÿâìþ:íqÐÅ[þ‹Gž=[˜ÿ‹Ÿ¬ó¿s°3Oÿ¿æJ£Iö?-üºBç¿ñäîþŸËÇ9ÿ;H ¡»ýà!$‡ó~¦Ñ>§,#  ú‘ßóJÅ"IC)m•2ÏÔ2ïzMÆ·’©(û@ûV=݈9“Òdx1ò1•sC㟑ð.bJ!ºaHx·Eö˜B͈›#€oëiÄHN?B—|Ÿ×réë>FÁy2<·Y†ôå¶ UÃQ¨[Ú|w´¿»¿ùJ(([·¨ÞY™U%äåº6”Ve`˜á ‡iˆÌ“R»]ªó’lqq¼üô'í¡œ,VëÜ,g‰Ü v;\Végdq q.y»¯6ߢ’¢)q4Á+h)…Aå³Ìw•ý.Ý ’®Û$gÀfÛøT.9æl{â¶×©ÂÒFo@OÏÃþ˜9fzÊ?ñÍ <Yåñ'Áy"ÀM ó–~â‹p§ ¬j:%!UËn‘“¬°e*Çuô¤[r©Z8îÕ&—a÷=ª}eZ2™r1Z‡5„ˆ%¤ä(^øƒjwýÝ¡]ØÌ¤ 3„æýþ&û›W¬b4¥r  £d=å*—ÊÝÁúKÿ,öþ†cT¸ ‹D¥EdT‹'ƒbNº ]³Û0ö¾øQžc`pŒyäcŒ)xÊ ô™¡bÀ&²º Ç´vC[VZ“µÞü’«øn¤s ÌØý±‰-õfûè—ýW‡‰QéÔ˜Ù =Lñú(¾„ ¥.ÖW:‚ΰ?‰Ý ×Y3§+¨V±»1XEå[©´Û¥«P‘œÈÞ—ÓJ£E²N˜g‹ÂB ŒrÁÎiKÃæFØq(àOlûa¦Ncé') Lkh•¨Œ„Å®cŸŠ…¤O¶ 9¦©(ƒ<‘Š{V•ÀÉdÄ÷ŽÉ®7à¸ìI¤UáåÝyöŠ£!OÂSàî¦ÞÐæKz­h±^ítˆ.®}F‰=uT3|D°ÆžO5w0ÖòŽ_P^xgK6êJ**°ŽË¦­ÊŤ;³O>²ô#»;ÆKlŒªò{XXQ»È _Ä5(ÄÂWxXÜÀvá; €"\²;’4v‘wNâÝqžŽ¦ Š;°Luó‰iuòæ%¡oùu…ARÛ!+@ä`»=Ñ® )i—e/˜\ù+–1ñBrâÞ´‰—®¶Õ[XI¯Aþ`e¤Àí—ÁÜ>ØzÀ.vÀ.R6ö ŠÑ(3ÅÔã%QgÖ†"lÁ5¬ý,PPAw9õ×Ĺ¿f•µÌ£Ž)5ÉÄSÐÕáÐPc Rng8qÌUí°ebT3Ž¢~\ ƒñ9š<Õß/ûõÑyñ½‰\Æ1é ›¼Ü~Öo¼N™ÛÏ.0äÙaÉLŒü,®!,Ú–ƒ.ŽùrR ¢‰K47Ÿna›EïfS·IÚ¶ð-©ìÓ”máÏ¢–Çÿ…s”ÿ?i®$õŸ<¾ãÿæñI1Qá,.jJn×[±J&ñ«[Ã(eú€u{3†ýž2ûRi°]—hf ŒB03¼ÁÐqVfoëvýÁòfýÂzrò¢þ`¥ÁÍ–‡ŽZO§ìÁÔ¿ÂúÉšåð~ß²ÿyçÿOÖÿ=¾ÓÿÏç“:ÿIý_Æ)ÆG9"ŽU@ßwú¿¿Ð'ëü³ÅêÜâµ–WSñ?Ÿu.çä /aQ,ä`¿È4G³Œ^ð].÷’ïÁ(3Ñ Ž.ò‚.×{ $°…=•q pÆQ›ãÇâʃý¢@°±†ŸQ+ôõѺ×ÒvÒØõÃËãÅðMíK%Nª<ŽÄtmy»Aù%n\ «^‹,DˆÖ,"&-€C±h ú•\Ï×Ð4^<•¨aìxÈqdÅ!‘e¡2YG¢aŒ1 Ìe,§^`_ø£®”q5!ô^ç—ÕŇ“ÙÄvÁì?’û®Ø{½Jö°8¤J#ªÐ<®Å¿Dæ‘ ¢H$c€¢’š‰ŒF)‰f@1/®d ø”w|­fhÄ¡¯páÇÑ:ËZòs¡¶T! ´ó7Ûß$ zv¾† íðhÇÌ©•¶€oý_=³òå (¬c¨ö ¹Œ0­r.lòdô½H£Ç¸êZ™ÞÕÏ`m,¿¶‰`^9·¨´”/0¬âôhÞ·†ÙoÇæ»ïÿqÅéõÔÞѾ¸Z<—]Ä|‚¦ÿ¿LHž¹~2ïÿËïIý߀þ_nÞÅÿþ“>îý'¹ñÛ™ÿ5Ÿ<~|Gíÿ•>YçðæhÿÑZm-§íÿïÎÿ\>ÎùÇ'ºƒÿ^„ýK°„O)p£ùcãýb ÁÉÖ…Yè¥I„…EÄÆ@9HbfÅcz¹$ªâSø= ÎÏ®.FÑdè}õ.ÈÀs0W©§Û)bÝ"+ÆúÛ`0u¯ªa*]¯•NºXç2VgX†¿SN8ézáï%û÷© G N†CÞŠK¤T-¾(JPãžíIa3Sè0EΖ©­ê"™¨"£!´-{ ò ((À ÇÁ—fý6®ÿö¬\{XÙX¬/6ëFÅg’Qo£¨ò!IÚ;¥'ÇdÁj¥ú  Ôf•Këiž¾¦§vˆN*à¡õhššÖA‹uz¡<[Íó¥E¤×MDᮘ‰hÂ+àÚº‘5iÁðù}^.r>Õåê¸>Õ*>Ôԭ湂Ïã‘/~¹:d‚+ÄF­ªq.a” ªTq8ÀtÃn͆ 0œh¸?ÓV¨„ï%›ªtò¢Täà蹦àÄQŠ©gØ5ñh•ûß9­Uª½VÞsn¨­Êi¡ºœ›ošÚ9s”m91-áI¦Mmñ&SSí(˜f’‚ySN™÷ÿ`¾þÍåôýÿøÎþs.÷þ‡¿ÍýOô‚{ùã#¼½ï8€¿Æ'ëü£ùæÿjµV“ç¹q'ÿŸËÇ9ÿ°ñ+—¥ÿOW~p~LŸÜ…`(˜ín¬¡~}ýþ»ñ‚SrHFŽ[dêrni¬‘3…»d†oɯ—$Ýö£ ±½zë–$’øø·µÓ‡µ(# :±“'°²ò›2Ù÷’8¤›ì‘®Ùe\ñ®û|­þ`ù¥yžèºˆõ‹v&ƒ)B]^O‡z®¯ÕÖ]j(‡„%W*‚ï¼×î6O[7³6eÞØ ÜÉ£ÖtŠ1ä  eÍ=.³shð;³á\2c›Ì‹Ä>ÉÖÐÚnŠá£¢ÃÒX»ˆ_©îà·m òÜ=”ðrŠüåuAnWÅÔº“ÑÏû“uÿÿêLÞú#ÿòûÓïÀø1þ«ñd¥ÙXiáý¿ ÀÝý?sÿ›ÏRÝ[ªýv›õjMør–qžËûÛ 9 !c¤Œ†dAE>æÐ&\ù  gù®åéñ1¥”©¬(ÅzU–,†§†«Ç¦¿¨Ç×1Ž&½Y»„‡é †2•Œ…þÉ¡F‹¤ê ~§œN§Ù<ȃv‡ƒ ý¾ KFÎÈÒ—66ÿYBÊbE(| ìFTüÇæîa›ë¿OÉ‹èž2à~6¸}ïUªl¿ÙÿǶPB˜ª…+cGAMÙ^¨PEì%®MÔó†LÉ YGä<·:ñy-˜É CÕ¨ñ¾ÝÝÙ‚ñ„9ã@Ey£*Û¹Áâ‰É8êkæT·ÔÖ4I_o 7`𔿦#ñ]Ó ñÇzþ<“¯cÜÍÅÎ#̆pS¦…`¸a`Wmv,Ò”RÞqí`‚óAo¦Im ÒÓH=1+zÂÉw9Yo₟::I¸uëÑME4ªnhÖY¥šK^‹Îé†:»KêÀ’ãº}PT9ËØ®e‹Å\[ ;ÒOé Fðøra„¦.€”ùœÀÆ¿x ¦-*öÐyïÇ3M¨§/ž……2 ;{7aˆ¾È èT®J;•„°ôű;Bõö Z÷œlÐúa—v\FlàËâršcw;9òæñbçT¡z  RèHÞ¼ÅuoÛÅÜs¸)Õ6.Ïǵ̌m'2±ÙN¸æŽ€ÛìõBIÈVKÊ%Qç™êë™Ä:ÎÕíqŠcƒ! )®§x–ªí£#W>"<²€\Z*§—r,•‚””fŸâà¢õæßðßý»Œ=âˆÕÁ,'z0J#Á¡XªíÁ¨Äè¿&G…e*pK°7+aÈ,ÖÝÈç4lïOüHÍZl¨Ô8~•’°šE­ó8âÜ7œ§†=OݭЩ4TñšE÷XÝÄu·à8Ðâ`Ì|È»ªç}Ic£»‡ºÝ÷þGte"<À ý+ï ÈJçá±÷$º pãVoâ=Ia¤ãa4 ÅØz¶õ3ÆðÙгH¦¬ñ 䩨ä!žÿÑû˜Ö@¥QNnD‘«µ³Uúµ8Ŧ ”,*ÚYîèwØ{ové¬×UBìS‡EwΓåÐTV¬¦d˜Nd¿YÊ{£“·°Ÿq¡Gþ¬]òköaQ€¡§ù:î¬;èc L-&B]Ý ¦-lg0¹„-¤ îªEl¶àWvÑ¥ééD?ÊϑӅJð«=k8²¾œzbÿHh-{`U/ô¯Äër“-¡#›å䇎Å*ò|Œ¯è·ò•ž {&žP\z<º3NϧXçžçj}¦(ëSï»æ_ Ý@%áìHø*Dq„~OãPÎÚ~w<ñûn¶–AB•“p`´‰xiìÜipó”ö8štÙô§hV5Ša!“”3÷çaßçä0˜A…‚)çça—’¶SXJ Ô&j% 7ºià哉D³KšiñM/<—%%+[Ĉct{„¡b¬Ï'ÒáËG¹oûÊ‹ÊyA)#²m‹ë®zEÁ¸ò«­ÍÄBòln†DU^Ñ/>ëð¤.Ù)ü0L Yš¹9ÉÈnxÖ¨fÁu£}«›*c¤z]Ðoßø½:piµÈa¥òÐ<› Þ1’žj¹@Cã,•¦Ó'E¿*qC~Òx‹ÁRèœWú’G´GT&Î Ç‘ïS¬_Š“«/{Q·;ý¸œôÇá.m eŸ~(×= º§óè–y/¢Ux£Ã:1@[i–0FVi5_å%—Ò,AÆ3\YÉ 5ùù£6̇'KѰŠÇ:SÎŽQ@©Oh ÉÙ¬Xɸö~jà3šxì_YnÄððâýT?mޱ‹tÁÆt¯èV£Ñ2>ÖóõF¾ûÌû“%ÿõ£‹p07ÿ/Œú˜òÿZ}r'ÿÇÇ‘ÿòƧü¸ù!EТä[Öã-.lãø_â“yþã«Á÷ÊýŒŸY繑Šÿ¾º|gÿ5—{þqã׬|Ç @cœù×m¯é¼;~w¸}ðâô—ýãã6&ç;­lÝ,Š*‡‰5Ó”$Q*É<}r‡dþåOæùÇs¶ÿLù­¬ÞéçòqÏ?lü¿æöøñÊÝ™ü+}òÎÿdžñ_–SñVßå˜Ë'uþ'IÀHÁAøèü¯ødÿ8œ«ý÷ò2œyÿ›ó?´îøÿù|€¢ÿuŽÇÁåŽWþÀû{0 úáäƒ÷ltõ!½ ‘þßP2SJ䉲ͳꛘ‡½›…î^(pH43_n­6=€83{ÏØ#s£ýLGUÛX{FRÐxãù3Šn`nüohᆼ ïqCÖ#iÔžRüïvÔñF­Ù,æ ÑÆªNš¥WaªÕó¢<ûÌöZ^ä%¡…쌂våyùø·µç§+hr»X(úh/ R&Ó­”•´Ò¥Í–µ&IG[²7)jÓ¨לFg\63ŸM•1u†iðÜ`a»§•ºñ×¹Ó}ïp õà"Zs[â‘¢×'5j î:9(D£u³tYqü$I!p‹­)?o§w³«‚½Z;þ ¿=ÏÝ,îšòâJfìYú£‹˜=y½ôfÁöÔh¿³¶gÅæ„®Á¶óÌ-9nÑ"Ak©uõíQóTüîÙS`5Œ ¤bǘ}Z£@=ºt-cSLSdŒ¾V¯GŽ •øË¯­Ÿ¢Ë¬*^Iìä¿ç&:#ß²8ÿK«¨ H2ÌÁû`D‰Æµ- jÜ.ýevÁ0õdä{‡;o9Ö8/6†ó¼ÖßÙ\Íyly 1ì½äñø ÜO‰'¬,û\}Š01ú—;ôfŸúožñ?€Ük&ã®,ßÉæòIQÉðŸDW9„<Éãý«Í»èŸ­Oæùÿ΀fÿV³‘ÊÿÙ¼óÿËÇ=ÿ· 4%@~X½KúïöÉ:ÿ‡H0Ïïü¯¬¬¦ì?Vwñ¿æòqÎ?müÌ,j/¶ÿÕ½ý¿W ±°ý¹Š Àv"ê3uøe ÃÞÈO9@%i±%(:˜).¢Å”¨¸<—Uæ¾Úõç §*(ñxÞ®£¼Cü~ƒç'øCž>o/ ‡Vy^Õì ‘•§”ù¼*‹"ª< þÓQňSþ…¶”Â)혉¨Ü¦Ï1æïí¢%Q­2\ÏÝ ]i7q#©–ëÏON+Õ©r‘j@Áµp€«®d!÷ô(êô¢b©`:K:ºOœp½jóA?¦øWÜ ¨Wy¦·¢r Cî°+i­Ø¯ß4%‹PæÞi5¹Õ6L¶=sžâcdˆ@ÖèQ»š`Í"Þt ©¢L,o›86 ]îãdáv›ôœk;1•õË@7†>1#¼‰c~oÉ{+Éßz^7ºF’ð—Ã)gú#éSË-änïÆÇHW×å4©ÖnÖRN ¼·*ëJhÛ)ïœYdÖ’ÆÌxϘª”N¼’î2ß:áBáå(ð?ÄÞd(¹ô${°ÊÂÇcƒqrðÁø6ÞÖ3rÝ0éß´E1ç“ÂYqÎ>ÕàÐ4Á¶Ú2I> Ÿ2D}ò¯Ð?ƒŠxė% d†N™ytZ=ò˜  ÓõüX ´I>žõƒŒÁ†çìw GžÐÞÄðÞÉÀukp˜Pâ°‹€ÂÅ;Ëñi¹y‘ o˜ ø%ï!fA/~ŸM¶Q]À¾W² *‰—ãšUP~50î7á ¼ôû}Ú_hupÀ>-ÖV©¨t*!•‡h".Ð;öÉ€çx}†äìækè?y3èÂ*‡ سÅ~t—P(YZ(Âì»ÙrÉd¨ Ù¹Š©ÿ)Œ‰áHéÛÐ䜜XÁA“¸´2ÇÙéœm™¾\5¦éèÒ†¶üáÙÈ]Ý>ãìmóÍþ¯´ƒÏäÿã÷sÿÝÂü_.ÿßz|—ÿg.—ÿGæ\ãïõ´é÷‚U¦Ø‚f`ïdÿ>Ÿ¬ó?úƒà; fÛ=Içÿ¹³ÿžËÇ9ÿ¼ñßÁÿ£ug™ýùdžÿÁrëIãO=ÿ++»ó?{þiãïÎÿÿ¡OÖùw°;Gú¿ÙZEûo±ÿÏsùîüÏåãœØø¤å¯áøýK?,€z<Õ>’eþ¶‰¤cù¸ÖX)ñV…ÔAçÿî{ü;Œb–I ´OTcôLô”± „þ^ -¡`̇ga?S‚° ÅÃð’ÐÔºwò7õ´Ýæ‡ZS¡Ô}fs¶ýøŠâÄ(ÏÀt'Ýq4}Aß+/®-Vñ©!rÜ%ŠvÖkä„B†*–Zó×§Ÿ)»/z½´qøîíöi]MΉÐEªëÇÒ†Îl•Ójh‚ÒL‚hÌÏH\¬ŸÒü;þY\¦º•Óª´FÝ}q M(ƒðbÀ-Qn“pŽÉ 1’ÄF-ˆt›ÊIüÞÄïõÂÀ+¾|DŸ`$ËËbç¸yÚ&Aù¢z×nìl¡´Ý]SEÙŠa¦øV‚uk™Äv6Ý"-rò±Î¢ˆß:&–®1GÄYh0Õ QíÃ+ì·Û¯&—Cm²Á¤[‡G¯¶œ×ê/‡í3æñhºq1>•ðÎsÄ–ƒ˜ÂZš”$3ÆkÓIw„r@îeAE±8ƒsý1Â^ÍÏ¡$íAONYú•E³&AnT˜S¹ˆVÜÅÌ7(¬EKÁì·b<§àˆ¼ÇïóÞ ádö;Öê¨WîÄ”UÞVÔRžOú}ÊŠ>sÓTš“ÇF¥lutŽu­tTê6£Ì’¯GŒGH¿Ô™ü\¥"Ç’Ab€Ò—Ô‘F™u ÚÒ:8;$¸;€à¶ºh¸}"R•§‚ÁšÈí1¤4x0èÛ!èÎU¿zŒÊàÅ[VF¹i½3²:±ÙØårÅwø±I7(Xܵ騖hß.4`¤6¢¡„.e,« -Ø®ÅZ¾‚LmÇr)¢dÉ^ˆa4ÈuMàFmCÓJ3Ãvƒ?2?YnV¬·‹hn½¡8Aé õž˜ª¼—šMhë‘yA4ã øO÷Ë'ÛÔ“jÚ5Y>ÓþÁñÇ•u‰PÐsz²8"$Hø'“È§é ¼§¬Ðj™•-Ò/«wãVVšiŠ^4( àB´ÿ H!+kƶ0oÆ*„¾ò„KU xä—‡A Ì^2Aë Ó›éÞ(@ôT8‡– ³[Æ;4¹@ê^MV—h²‚{ŦªÑéÐ;z> ÅÅ”“Št '#cÚr™Y‹ëÜ_Éq@syœn.²ÙK¶¨o!9¥Xï¨ÌÂr%{QéE•9Ólƒ&½þÓMšš?ýôt©…ã?)âf–ü(ßú÷ìåýçëÿpúÍæ“Æãfcu¥…òÿ•'Ë+ÿŸ÷ø{"ïó\þŸ³ÿsÿ›žÊÿؼ‹ÿ3—#‰Ç-:ýcsÅõör4@YzJݯ»ð·’py^ûÞ0ÑH©;XÊÿ „pž<åCKB?ÖLÖ&è]µ¾hä Ö¹vÝÜUQ`Và7wCmV©Nؤ IvûEµ’E#â¡ýWÿíxsé¿ü¥?Nz§úÛÉÒéÓ?ê:#!Ï‚ÆOX-´YõúÁÜùDÇs:ˆó0î-†’…o©Þ¡$€Ü@±YƦú>éQÊÌÁ¶ÛXj£ë>í©WçqiMKÊ/¾¿¨Ê×í6@CѤaYðŽF¤"ëG~òºãSÒ é®UÒ$ÔÖ,¾ Q¾ ß’”8}Ëœ”ÆÄ£ƒÚÃpà¼ØÙÛR’£ìåV"ÑÌa&²¶¨ô.ªåâNŸ×³›ÇCä½Ì{%ÜŠ’$dÙƒŸ *ãùo¿:)Ðx³aå¦pfÔ3êµåD5«ž—ÆýèLe7£—FíF­!(Δuýß9¨>&þÊ„E?RöLyŸ‘â tÿÖ>}XÇ—¸‹N»eN¾Ã>AZï; hNô¶×F +Î×ÃPÊ œ)fÖ¾ÎX—àšYj ~×ï–5>0)\Þ+¦çs¬DBg@ñ0èÂxºÂÙÌo_'%Ê<«²Ɇ•Û_Oþ¨À*·Õ¦%Ó"}twÂJ/jï«Ù?­¹€~u >{O# i'‰&·U+±g‚qj­WœöÕ>&´ãz¡(žul ‘"îÓ:òέ?Pº*iþsÞ^”kâÓu¥nWéŽ*+0J‚ Þ™‡ Uý§x—ïEΠÿž,¯jûŸÆê¤ÿáûýÿ\>ýgŒ}rz7ßíïîo¾Êˆ|–°ïiÕZ¢4…RB" JÅb “ý¸Ã8¯XõÎý~kÊB&Ô¡~Ïñ¨ƒþÐ4h‹HŒ”ÕŒ¹mWâÜ„cn(:ziÑhôhRsEøõno§´¹Ûn‡±Ï/ª^§óvsëï›?ow:¬Ô[´™ñ=·+²Á±ñ¡±™4™*Udð§© \D‰·6ʲ¢a^[Ôø¬V•˜\y3'ik2NÁ*cýôl‚ß­½‚…œÌì¶ù ]hø…-›`Ï’{CoÝÍID¡xR  Kô-Œ`&g0?sª@j/øl?)µÛ¥Ê£–‹Øñ:V0á«íãƒýÓôÌhì›é‡YŸeTØ+•§Ì.u-w\™-SøTÝúé}çc7%eŽ„Û)Z˜¡½Nš*l3w|&K/[è´2[ß=TQ,Õ´Öy°Z´æyûŒ’؈Ýøñy=çûá­UÄUõTtA0´V0F$Z\Z7½œNÃIy¹tâÿäc¦Z¸ˆ8ª-PÚr¹Â?4Z‚]Å$®øËdúÜä´ :¼%L¶ (𣰶‡f"øZôþ©¥PX™Uȉ$²Ñ@’n"bDUº¥cÂöµA)§70ê€Öº¯$BäÂÄ1ƒiå&ÊsZp\?ÉàP¾g´Œ˜&T¾Ê«mR™ ú}XG®ëÞlN¤tÇêNì¶œm¢´ž0ÊX²{r¬ñH6ŽS“cÏ©-åX‰V^gs¬²â§È{ãѶéàöiÉêÁ]Ò)H†zâ¤qDŸ8®^LYCé§ w`8…¸@£'#5·›”tTÊÙÁ0LI‰T#vFÑFp0¯^™cÜP6QkR±£4òÊJÖy øé#v?àÀ]D‰ #~ûS&,Q'¬d™JÕš£i½™^õ.“áŒOžþ7ŒÏ¾›p†ügåIk%¡ÿ[m=¾óÿšË'©ÿCVúÌh—›OŸ$<ÂPIè:ƒÁ“›è_nÿ¼³' jñå$‘CC5ÍË=&»l+Óß~…{­±†)ÑX.uÀeþšîö‚*O2ÀkL0„«~@mPá"'Ýu;Ò –1º¸ûjiC‰°j&ÜvÑÜ%=$>P/Õ« Þ /FˆÿàªÊé u2(êfçuöÌkÙ ‡ˆd`+,–yÈÈü×}lñ²”¹@Õ£fÖS]}`Jªb,Ÿ'Å!>@¶Š¾!'ŒÙ–•]+²^Œz)Ž“ÃÎÎóÐE[Ç®.WÆBMe RFäï236ªXå熻¸ÑèLSeZÕŠ­O™¦\3ÜÁá䬯@ŸvЖÉê]¦£Ìcé§a_ÄÀ<ÙöÒ†Ûõ¥N¶J&O-­êEÒã÷8Ty¼±îµ¼ç^‰ûÆa•¼¶Wê>]ñð5keLñ}Uœyã¢Ø[`Ä>S>ÙÕ—)ÀبܨTŽ—O×ÔsÔJÕ¶µJ Q™Wä—€ ^m¿=ØÞÚ<Ú~UóÞÅAjF} h”¢…×Òúu|ú·DÍÔŽâûæòŸ´¥>zs™v~þ c/›Ëß²…"J Ïfí³× {8•!ÌáýÕð}0@Ò•ÈËíͽ*G››÷ßèâÛ:ÔTƒ­ZƒÎc‹°xÔ²›á˜óÐÓÌaB=ká”ô÷S¶2’ªGìŽbP·À¿H@ËA$¹É¥­1¿GCņƘ£Œ#Ö$ˆE.ÆVÝ!™`ÃCÜAjX:®éÖkpqep¡ #ÎùPš\…¥µ´‘<ò’Wñ®Q «Þë7åãÓ ì¹¼H)†„y˜`CÌšu~šË·Ö;7Dnÿf…±Roã-‡âdu•ÒƒA`_0·UÃU©n´D¯ß¢1Σÿ£°÷ÝlgÅYi,'éÿÆã»øOsù¤éØycØXM†|¿ùO‡0º‰¥‘íU9ˆã”-‹E ²Óm­H¢×,ËIôsRÃ4?ä e{Æj‡ûÿë1j²Î?Zæ×¿£ÈŒóßZ]NñÿË;þ.çü“{d;Ç$ÀäVAKØ£Ñå]gE<×W´„ï Nâ'¹ŸKé̲Ë¢ƒ3ìŸÇ#¿;î˜È‹Ò 7"¾JN¹wþ¢=Š™aÚT´W/4‘`víÛºKv>; »3ž‡²ÞK†z—Á(Ë^ƒFÕkVÈR¡ŽÍ]{Ž ÞAc]« dû%6ØŒX‡5·!ƒçÿ`íù ¦ŸZÊD &>OêZËh$­“'<š÷‚ßéHಥV«C–:îâP­„-Õ.Z¦¼Ùà—a¾¤`N©¡3m'x ãŽÒ 8à¬.<뀿Ú~½ùn÷¨³ùîè—ýƒ£æ Ð ááòmNi«c·p#]¸UŒ®b‡A®•ƒjW°›Ørô g&M"©®½nR€ˆy@&Zö‚1Ì8Bã9hÒzÐncÅóß{ƒr…v’›ýú5» r*vAÍ+Wu˜¥LÌ]¨^8šž]P¾ Ÿ·2ø™a’{ÿ¿Þ<š“ü¿‘!ÿo,ßÑÿsùdÜÿ°óÉ(püâ×p°ÜJÿÖEœKä„ü3NaJ„À_ðØ0nÌÙ žÖ–Ù<žb$ôt«.yß©zKM4á1†uPxÃk­y,n¹ŒÈÀG„Ñ‹t1Šgô ÷¨ér±XÑ?Cb{8oÅÙäâ¹Wæ¶©â{’ð ùãÏ"F½YìXö€ÃãÆ)] OginÇÖÔ·/¢4Y°k6¹æ²Šk cr´2±PÅ„;K“F}øNü?ÿ7~w^ú¿Õ•ÇÉóß\¾Ëÿ6—OÆù‡Ï>ÿq Í‹, àŒ˜‡3hŽYü„~ª¿ŽlƒnCøýVn?ªÔë:ü’Š~r}Ý:–Øa…šA Nþ£ lj`•ÏNÓK^³’¢Œ½M,Ý[„ʤ1A³¨lÚšG{&‘$k‘H®¯ÝˆG0 %ëǵ]×ÙQ§­YZÐ\µ"ÙÛÉœö°`&ZÛEXµ•ð™^BñäºvI&–~«Eq²£•ÞŒe@u ¼6B#<a•Vúº"æ€Ó÷ɰq6ç©ó'Â_Ksy]ݲ<6}Jò_jŸË`Ò‘¾ÜˆSÔÌš ”u?EóëæËÒ[¾ÂµG—'lñˆª-ã‰DOÒØû/ñž…잸 %[ö)y¤³PvDƨ7d·I; —ÙHZÍXÃm™ Dš ¬ó®0N%Î…ámÅÚ>sêÌкHåqÒ…ÈŠj’¦"S(bPÖ*<7gS£ <‘ÚE!OÌy¥¡Ê¡æZ–ÎF"–¥¿Ó IQ„¡L·¢Þ•8g[¤0Oú³ ¶+ô¯ª^p~ÃAÿ “aè ˜1^pYC³«)"yÇÇ*©;.,¹$͆٦ðp£N j©ÛŸô$ñT0 QƒEIˆÈZI4ls€„ ÎV¡‡5-  »S`ò;Lz·ØYKÍšJ ®à­ˆ1ú¢…d`”*3Ô{š8ðÉŸˆL/5`@o§Ú-ªŒó ù„¢vqínán°p®€å¸„pX‡6qk¨@žÄhÊ9 {h½ibëÀùrÛä[aÊ­á¢ÄŽKô×Ou÷A›û;ä8€Ÿ‚çÖhÈ5 ßÙ.ªû#‡QŸN|(Tl¸öôe$qäê5=³’r™ã o›ƒ —þß?l͉þo62øÿÖ]þ×¹|2èØùoæÿÙˆ~j8 ì1`¾ ö>´ëçQ„DÕ«×åW~~¿• ÐÞQ¨ðF¢Óœ`å,ûd‘¡ÊW;Oùþœ>ªT«„/ÞímM¯ÃÙdUOê oÂs#÷7 i~;ö—þ@_ñ/Íj뺽ñžºÑI AØÒ?k{½_ Š>q²| =cËI«J˜¦û·ä6˜°ìy¸ßa]œÖÉIµ^½à'w Ñÿ{Ÿ\üÿ{ÿ9/ùïãF2ÿ÷jcõNþ3—Oþ‡ÏÆÿïáçLô/2M@¦Èvòu] Þ8ì1ß–uÔ*õú£êbq¤LÙa1Ãjwœ*]?©UÕ‚³4–5+Áu2;4¦†®bãý(úÀ~jE•±{®¤Ù\>¹ç÷t>öÍ'Óöïâ¿Íå“qþù˜ÏCüM(bŽ@‘<ñ?8£“§"¥ÏÞ•£ã·GP¯f)—ç#Õéã7‹5gJ4U`¹iBMK¤éÊÈøÿN{–Ò•Afþ&ácB¼±€aÇ?ÓÎÔµ<µ—*¹ºÒ7"Ë£“hœ48UB½”°“IÉ3¬Ç"F‰•XÀ£3<·',µl!¹oäÜU¹øŸx‰ïsÌÀÿËËÍ”ýïrëÿÏå“ÿ…Íÿs.€pö²LDͳïC¶œSÔh6xºAÔŸ-?€ e%@hCØOaï¦6 CY¢-M¯÷ù;9©ŸV FYd#à ™nÚ²ë–t»uשLó¶wsZ½6m«Ø¸Ò4å,[}±Y]ËÀ?ä²ÖýVIAj¿©¤|«|êÝïXž;!×x‘¤I”èúÀ¥–]i5=ùL¿Ñ |•éjÝlCå¸ýõ´¬FQy^OS]Ò—×DC¯ ü£GÌ-¥tw‰×ö/Õf±èTÓ­§uŠâiFG`>ê0§LZsÌU-}z.‘ nséÛ*ýü¤®5„ )f±"LCìœ&ƒnty rNzÒ†TÙliífRÛÁ4¬“!*Ü3\lˆÜø9¡CagÙ×Z'q© ,Õ“Éb³]]›rdÕx½/hüô¿ƒÿS>Iúo/×9:zû=4nÿ•â¿7ïâÿÏã“·ÿß3Àtú¿Õj<~û¿Üh>YmíOñÿïìçóQô?»ãÆO‹ýªÃ)üâáþÖß·:[»›‡‡éÜÎO—1¹³fñÂBSˆ[²â3vöÛíèûG²³·}W/yŒ'ßÊb·ˆ]&«ñ²p¼pzíöÁe²Ücœ¾ä·w‡ZõJéª%Ë÷izþ'›á^äý‚†X,IѲ,!“ÛY97Gƒóðc\2UÅzœ;9û`àÄŽ®U¦Rº5õr€˜nØ òÎh2?ò^GoÉÛ>-õƒAߣÒ=®J¹Û1çmVä;„E NÙ™F§Ÿ±ï -2†þôéS [ H¡"E3å|Pu–÷P½A¡ ˆÇåŸà°ŠMJïâ`´´yá`Åo¢?Â~߯?®5Ð,†9ƒ¨‡Á15PÕ{Àb1FÐò{Ðh<ŒqÐÁ9#оÇqºÊÍŠ2g“sËÅÜnãÔ¯:gQº‚bUÍ$„ê¢$×XÌ;÷¡Ñ^Û[¼Ÿv£ÿr€¥±ñGù刖î¯ó¢ýa€>½¶:ùOë'öö £z ȲÎtU˜¶BFVü>ßÞ{Œ-:àaý?#úW 'p\ÆQ7ês +ù)¯6Wuž·dQuë‘6ÍZcƒ¬µôï&~sjªäpKVv¸$†Ù€.ÿM(¶àeø™¦›Žx ®ŸèsÜ2´ þúð»DùŒK-XØ¿¢é„±¢ça0Õè †ua²¹^àWÕ¾b63Ly@æñE&ìÍ~‘Jö§Fˆ%tÂr"¡ ;XȘuE Ô¡ã2¡÷€Ñ\¬"ȹûb… ”˜&‰PçÏSµý8k%|á} ú*â\ŒQ=¯mÏúìpDB¶€51v) ”ÿ{ 7ûÀ–¶å1eÇÇ7µƒAïh»î`º×[U:ª NûlÓv†èWYʤ»z#§®ª7„•ßøŸwìóÛ¶:½ô?wúð¦#|qfÕ_uaqÛ­ÊHZˆSue³q'6ÔUGñýbÎ$ èÉŸôÇ,3cga¿qÖ›½ÞhCŸi|òÎð†ªOáRž6ßÄ㡹¦úß ãq0ØH^¶˜L3ž,,˜|Ž–šÞA¾ÙÇì$,Χ;S2d^„©ÑB^øt ”ꦕK‘ 8ɉî^˜|Êc céÇÑñéùBDÔÅã>é¤Û*<å#Å'*:ÒDv„;… ©~â^ÅÒTûàÄÔTûÆ;Li¤eÈç±@‰˜qY0²t0¤ÍæZ§lÔ¬ÐF+4ëŒÉœ1wd;ÏðͽÙàñÁvÄ„•Ç _ŽÞmë5.È5Îñ«ih8‡¯`¸*za×'œK!v8¸)í”(UÆ£«LGEŸµ¯¦hˆž_×¼„u ‡”£†:UtÙ˜¤úÝñ·tŽs£¡¹Ù^‹oŸçßP©ƒ¾aŽ\쬧`w1}µ`föá¹YÞŠù^ñh»X0@ •9:.™óà JÌHÆ“ë‰ËÑ}EºY >¦–…Ùššþ`M€ZèQXòáXe¼¥pÁHWÈšÅDràñ%—®¬›uµq^Ý6,ÛVt‰DFÜnøŸÚíÿÞvA±°ó À­7ªB 60Åž þ‡T ñ¿»'ÉÚ w©éì+l<˜H(gZ355ïUæ=ÂeC#ëhV)¢²¾4‹²ŒêèBE~l//î 5•(¬e4ѵ¢(‚GAûòÐhL=KÁÎdØóeãd•I —+êÎÇ8QÎà“:œáe8VçFî­ÃrãV£ ÕO¸»]Sé•{Úü©EqhõlÀ°|òöäÎR#S÷Þô±™•Ä÷$A‚oF‡ù0£kzdÍÖÓ[ Œ“Ök6FòF¨ (dÍ14ÅÉŒ1 ôkªDÃa$ Ne•G®ë¨j ¥õ¢^ìëÐud_UÆÍ¾Z$eaÞ#'95“ ÿQ}Óè&éLÂ…oiŒL' HÁ-mòUqI¡‰Ò8#CbèŠq"ÙàNÆ“Øp'æÚpBUÃlÕŠáØùz/K88¢ KtëUôLi|Xa‰I®‚™»›RÇ&Ä»±“ÈΞðFÎ&»¬êíöFŒ7Cz³È$˜3svòjD• Ъ@…!_€œ 8 †:ëY@Ù}?|({‹€|ätí÷¢Æ´W8?7!]CLQuÜ)¬§W„; ö¡ù_Ñ ˜,ÊftjæÌU{ÈU«F9¨=§Ðä¬p0E!pɽ·´-·—&“äÒT瀊:z´±1‡F·/]èw/cˆráÿFÑ’`5Z­0.À¢¥he1Ö¶&Ý ¢sƒH‘P /07ç2Ñ‚™¨µø7ß:êÄ{7~ØÇSxÓ-ä±à»íý×’t¤¹‚ÄWëÕ‚À5Ïý¼áX[/;}€ Á1H£¼šxtŒrU_6ƒ¡ëFÈQ/PWA‚:®1ï*Í1èd÷izØ„‹›-yJŽÄgyª4‰™kÙ?uãÅ,SZÌÁ芒ç褼‹Ë…^x8ˆYÆŽô¾S¢r}Ò ç‰_¹”…à@–Ÿ‘Ô-¨+DbË_ÚÑÞ,30ñía%?Wu¾†~HÛr¢ žÃE?As–… ˆb–Ní ÑVÀk•bæGÝ.Ð3šT‡0> øbÜ7æ‚X. ØSBNoóÞߤ¯O!Q¯ûˆÆöÒé(ß:Ã4RøK”MbøêT† ØôMºQ15ûq:U™ŠâU-¥è¸RÁ¾žöE>Âw€è¦&}kI=µ¤G”×–eè¡U <7þia‹Ne±àÜ÷?ã™dù¿ñøE“ñ†f°åµð×D’cp.ɇñ8à`jÇ ­ãè“?êÅ¥BQ†{\õ~àÓÚ¾>nþO‰Q¤{%¢Áä8HlwE} L dþ…ĉ#"ãN$*.;gBad# ŠÉä©éɪVÝä!ðsˆ[½38{6W L§‡d:•–yGÁ …"b1f7ì±/mjM¼›DÞ@5svƒxô³„¡G4n &fèðˆ€âXR‚QwC8˜°’eÊ &ȨK.æteÏ—+¦6(Ÿ F™ÏY?ê~€¥xÍ5bÅ.Æ…´0+Œ5Ô¨ýT”snŽŠ£”[FµPÜŒc czÞþß‹'Ó / 昖;øŒ&ézaPQ—» J ŒàGðV`Pc°ƒ!kB Á¤lpþƒ°Q b‘œ ̰e¨è À|‚\.‘¶©~ø(¦;ÂÌZÝ‚]¥‘óój0-0 fÖ ˜hAz©Uåä_”‰CUǘÏ\Í3´‹1àgÔ“á óm¬¨n‡ ŠVæ% y&5F'÷és¿˜$%ìRæK(¾Šù³¢”fr~N¬×9ñeN¦’qÁ$ê¹ Æ.åç%(?Áà~Zü–‡Þ„•M&¡Ñ+®å}Ñ€&á£Q„4{Ÿ™„!XšI$K¡«°„¾hh§ð«rX¼šçÙÞ|ÉiÇwCÝúðÕ>XE¦ÌÆÉ!C‘%”Ô¡jƒ¯ZX £Šµ äHIg0üµºýÎ'–”©“„8ÆLÊ’2FØz¶x¯©í½£|¿½ùóæÎž¢8¶G£A´ì( úeÏuuáGŸÄY„œ1y"Èb‚ iÏ©X@% e«1Úââ/)MIâ00æÐ(¾%ÞPP¦%;2šOL±6ȦTõùR„ œ²‹`ÜQ$*P—©“WAÊÅÀKÃÝ c`Ž1UR1Aûi£¨> O†°¨W†n¶ÉóΠÊ1xËQ4§ûè}>m€ø.c6JS5aäMÈ€RTqÛœ’ƒ®Ú+ôÐ@ž•Iþ³àœ#€ÁkÆÂò ÎbÄÕ¼a–¢ N(º@Õ¨è8Š(}aUæ†áqרuºûÁ¹°x°z<¼ô*iÁ‘ÍC%Ï®æõ*R’CN”t†|‹f×Ûl*§bê¨A@Ô¨iDš6ža7 çXRªöw/Éèagïg…Ér÷+ úh5ÂÁÇè­{Ach}¤ß\q𠎰ᇓ3Ò´Ф„SйL‰5ŠúD"ª“Ä:ÄaßGJŠf Ô"´µL^ô£3·Cµ²1bõ„HCdŠ.°7PHçág%¹A½ºÃ¨C"âtžªÝ_ßnT¡¥ôMøÐ²+Ù{9#P9MLgµì¤³"°è‡g#T #Ìçc ­ƒ5:ÙˆxFA/Œ•’.$‰P•\˜g z¬®bp‚SvIúÕ·@h«Sq—<ëç'Ïþïð;ÎðÿiµV0ÿ{«¹ò¤ùäñjíÿVVïüæòIÙÿÞÄpñðp·ãà¡õ\†`ó§"EyÍk”Í„®mhÀÃ…Rè¾2;Î äGl_MqX3b”¼<¦«»p]PA¼h*Ð@»­2ÔKåô¨aª4™ ª&l„}ã–•ŠäˆáÊö1{=ÐåÔQm©Æ³æ]+7!"T¶FWÃñ¼|㪱øBûE}¸ŽG£ø#RŒ/Ö ÷T d¶¡O›Xb…{×Êsã…ñ‹°š¢°ÙñIùäÅÎÞ–6RhמTꌤ}OÙ£Yµj<Œúw£u²|´¯ÅŒ­â×…©žì¨–¦éFÿÖæ•ºIÑv£•vWV8Çà¡K½…Ä §È´$ó™OÑèƒfe„Ž¡:P$3²Ù#Ô®ŠÕT™JÆ*… ¶h—D‹Q*v8€d¯˜àêUŠ. Ì£ÇéáU7_¼kŽ” ïÜ:~ø'ëþßù®Öÿ3îÿV£Ùhbü‡•å•åÕÇË« òÿX½³ÿŸËgÁ3\F¹[ÁĹ?yK¥ÎÍÿì¼Ýöö¶¶ pà1Qö6{‰Dzô؇Ë0ŽÍÕ^Ü:¼ªr†ë+–Ì[¬ 1xŠ}‘ÄkˆŽzQwb¨ š5¸ò†“Ñ0йreHZœ$½BUÇÙ•w12èU£)ó?m©äŸ £ñðÜÑ8ì’`)ðG¤€YÁë0ˆELê¡¡³ˆ,PÕªª„©C3ïd«Ð‚H!I„`O¬ª»a¹ÁŠ´‹\4Å蚘(EO°ð8$†ÞSRÈ. VacS Ó§Zb2dc»‡³ÐjñDYЭjUî#WZөѶý .yßz¯váBÝysï®÷ëæÁÁæÞÑÎö¡÷ëÎÑ/ÞÁöÏ›¯¼£}¨²sèî¿>‚"ÛUH‰Ýw¯Pʰ@wÞ¼ÝÝÙ~e7°ÿÚ{³}°õ üÜ|¹³»sôOosï•÷zçhoûðp šðöö½ílïy‡¿@#Øêå¶·»³ùrwÛ{ ¿6÷þé¾ÝÞÚÙÜÅŽ_íloyðbkïpû?ÞAðÊ{µùfógì—j@cêÁ¯¿lîCG0ŸÃw»G0lïõÁþowÿÆùî¦ôjóh+¿=؇1…ñë/Û°PÐ%ŽlÏÛÜB«z,ÀϪ··ýóîÎÏÛ{[ÛXuŸÊí@Áw‡R¡êmì @ÆÛÃ~ íc£ØÊÞ6·I‹»#¡1lÀÌßlR»¯ÝÅ>~aé»~`DoÈìN”¼Dì‹ë±þ´=ºS)ȱµß½åÓ©eÈ1G„à êAÝ+õ«h5ƒ6z"…M>N;oüÁ$è{ÿð¡{¨öì’~×>òï—@ø /Èî/6ì¹õ÷º‚¯IåÅJy OwýÁŹ%1ǦÁ£ä1îËaì1êt‹/_íx˵&º¼„ƒÉç¢ÛËK<éhX­Š…CÊN ow˜î0¶úÝŸŒñéög‘‡Âú®»Œi ÆïÛí—áÅÎ`, >ŠÎ€ËŠ­‰â!޼W‘;}YY‹‚‘H)?® ·Ízå7”ø%ázºÅ1ëc q4IÙBÝQÌö#ZB$m-îôxª½f­µŒWÓr½Ñª7ŸzÍÕvs¹Ýhz¼Ó°"Coñ»xÁá‘w²<äìÙ¿ûs?:óG!j€Å+‡Ü+¦¸Ô½ØþÏ·pþÕßÎþß½òõhóçCoqûà8þÙÛšÿž ¸å. ü¾*ß¡  ÆuÜyÛÙÛïìCO»›oéçÛÍÄzγÍÎÎ^ç¥óè%>Útí¼B„¹µ¹›àõK°5KVÐØ ÔµŒcÌV=äH¡¯Í~}ÔK|5º…}<òjm¨¡¿m£öÌûiŠ~Ø Éqê‘ÁqètŒË$nÞߪ¬}KÓû[8ìJ‰Î`^øý ž„Cë;*4S©‚G?Q÷£ôâô:îàY´¾¯ÒwŒ¨#XRW½ôãÒº‚©÷5 ÐÎnúÍ_;ã¨CÐ$UUîojN p©>ÆmU]J¢ïà¨1lÕêª+V×Θ¡'ä.ûþКpy Í¤™¹q1 .‹Ëº^ ù+)Ã¥Õw€ëǯµñõ‹' ñ¨ã Uα^÷Ê?èixl@è´Êà÷JcEð)' u@ðO\°Q´G’ò®/¥Ð1tUz{°óÍ£íR•ž,xúSS ˜²VkšzMþܰ^ëIMWÅîšMXš]õI«Ö\­7[R¹)é?{º™•ÂÊOëÍU«ë†{3Qˆ¾íƒl¿âêP{õ'Àt+¦v³‘ñÁV2kCßZ«4†ÔÎZå¼¾[­•º©˜S3³âJ£þØTÌØ ÜŠO¡âMà‘‚ÃÕip˜îÆý,xí¶ ˆ "f×Ã]LÖå©Þ n‹ê>±êÊ*Ý î Õ]µO)oISuŸRÝǺ®Þ›Ùuò îŠªk¶ëþ¼»ÿrswéÝàœÃ#·…$¢°î²:¸ §îô~Wu›·¨»êÔm6nÓïÓDÝÛô»éÖ½Õ|·uMåÙu·=²Oí캯6lØÈéuŸÚ0Éuoz^oÚgÁÆŠX ¸æ¥Ýý­4tAÝ­t]Þåô»Murë*Tº»³÷÷ì^¹îS¬Ûl$*7³ðpºã­ŒÊë¼A®?}ˆTå×.ÖqîúAãhÐ:ä\ ¨Þo¿zù¡¬U–JÞgï§U*¿óö+[ûoÞf ß ®oz™[xÚÀÀZåR4W+º½7›Ía¯áÓn´Ø5”fë©.Æp@b•×;SÐ8Ô±Ç7>¦$›²»¿ÿöåæÖß³/@j¡IMÈ´ÏT!»ÓúÀ¦ óŽf‘jë^“_$è5x±$od¾iñM½©ð––iPÿ_ 3ÂŽö7IFl!¾À«‹ó‘>vHñözÁä²TåwhåL ‰Ú“/Þ‹Žw]å•ú~¼¯Œópr6Š&c”X Í<¹Ä±äs69k]°½1üÚy‹¥}R8¥÷ÄM2ò¸Eeå” >); 4ÈJ¢ë† 0mô“!oµŒ(]Ò‰ø mrdl§Íä˜) S2Þeí›ÙˆÜäöêqy‘ *•†ïž.MÒ{X(øùÈã²v) Ü¡ËïTó¸T4ªìQ?7*âSO&±£ú©øÝÊ?7>Aï;ŠMUUKª0p¦´pµez”QÜî Hv€ã›ÒEî"˜ÑÔÀEtS.òH—¸¹bÅ1G-VD‰ú}Ñ=•˜„=û8n‘Ž•O¤ ÌBGRUÎÉÜâÀ—;oÅø¾*—â샺χT{3Ì:®x°)·FXè’ë ûíÉi_BÛŽr…íkÙ85 ¥u:ø’ Ô‰ö„UÄ&($ Ás`èPfx+Ú·™ÀóŠf ¥P*“-M¯,võ (^&£ B[Œ¦=³‘lÖŽ[â÷´À‡]Ÿwƒð# Î%Ñ9²ý§,w‹øXÝúYp y@±F?Z‚”Õ5šGvÌTÞÿ/dîèœd¸kY‘*°·¿– zVG ÇMQdNA&”I¿œ!;Ú{5H¿J8²éÇš’MÈR=ˆß?•õ$=ª …>tø˜¤‚"fëÀÃÍÐc¹œnJÂCZ ߯ìnêQ}ª„bIuMIp‹<¯"-ñ_³Ê½ `Þ{YËÅÎuÅ9I(½@³V„sƒÆÄݵ ¸I“t“zö´Ef-¾~õ\­@LÅà <>ô »I§mîmS£TÆ©õ2 io¢Pæž'­ðµÜ«C¹V…Ò¢¯Œ{[–+z z4j±¯™–¶ÆƒdFb0 èЄè>®l[&Š’q.ÌöÐRà{ÂW_¿š)ÛÝ äЊ@9ð#òÎìé}Œ¤®$…%Ð!c=µ'tz)š &it eÅH&¹ÃÖŠFöHÔ–Ñv_D[ag÷×Ókj#:Î0¤V£¹æ<Ý?ðÖõÏ+¾ÔcØN¡žÓ­:¶æ#Ã#_¢Å*Þ­ÌDLÒ‚÷3@Ñ¥g š7†Ku¶¯­9§AT6*œª]#S‰m†Èu樂0çö5j Õl¿ÔJU‡.ÆqTòö®•Þ;½c¢¼À(Dm8ï¼µ‹óÞ¦×!ö “8.ÀRízk¥¢LÄ ØS:@›‹k˜>‡–:êq™î·Äb‡ÆQ µºÑ ~Ûú¤°#tYw`oë‰péÈ.ZƒcÏÓ:/jËD9è­ü¢ï¥k¹¯-WyQ ó(ˆâÞÁÉ}£ˆázµ 9á§šÊrÀy.š¼Žãå+¬X ’sÉDµÍÄî$¸PÝ`rmÓ­%ÖgF,{¦I¨w{ rƒ_̉?UËzE3Ï¥³ˆÖÑÄÁS¯¼jaOS;gm&![s羴ƪðMç4bÿ2ß¿8ef·D¡ìC‹û\ò¾Z»«ùMlÉXörXΩoþ†»Îã}4B&ª†ùfÐ4;µlNvË0Ýn,¦¡—‹ðÒyõZ;›¡ñ·iôG³-´S9ŒËä,·ðÓž«"‡3a­=G7¡}áJyûb­“ >?žg#¼íäÙåpêÜ¥ˆÌ}Ýrîp*~üÜ Ìž;Ò«‚ ÙÕìÉ»eÈ*–[Ìžéï?{}~sVàgó˥&ÖÙ3wË0.RìÝ-foîÞ¿F5¦Ë­¬8sÅÚÝbÞ†;ü÷š7{¿O0L4qÙùÓ· þvà>X×÷\žŒSqqB‡ßI$“®—yÜ™Ìãi«>n5{}ÏÝ‘%×Ìm$F¤—õN]‡—V2†¶"h¨(HÏo‡‰˜œƒÈ2ü#˜½ ÆÅÞðÔB¦‹‘¡+ÐÌÔA¥Û` %Ês 6rÌ£"¬…°ÍD]–w0ÆJTH\è£ÜÄæt¦å8¨1B¢^‹û…ÕÒ’‡—_|ò¯ÚL–ëPU,~GCŒÓ€8 /„±ÏtC5ïW)Äzn‚]qt„ˆí”é)iÌtÌÜAðyLÁKÌp2Z¡yÈXÌ{ šSº<‰D4éˆE»|pµoŠl•Ös:¾åBŒvHû7•âOÐó_´Ðôšâèlé×–& ù KwfÀOØ©ŠÅ^Ü_Lh¿³ ;!nÔã%Áê 5m>?•¼>ß|›¡ðô-ÆÖJ+G]w‹ï%g ÊrÓ¥kØrr{í÷Æ]íòÒ†wàu¹2½¿¹¬òÍ.1ºs(†/÷×Y.«Œ•NM]Jg.³zWa,,GˆÏ;FøRál³¶ø´¤@8›¡ÇTN×™ÐO¥ª¬ÝxË”QyP£ÿêq%Ÿ”ä² 1[žŽm ^E•¢'1PQKÝl%Š Ø/ƒ¨M´¶?MÅOÉÑ’– œ«ÞÙióxîæ §Ê`ô+º®ya`#‚”ž“XÆóãáñf¸¶žåŠ7anÞQkS´SÉÙ¿L2ŠÊ‚H~cÁcu ˜kšh—¡’ðÛ¼`RI£©×$< ¦ýáÜJNgˆW¨Œ@ á¶”Ö%BÌO§þÎ[c1CÌÅ{Ü!ßbq” +Æúº·êì™èF“Ž73TÄSÄ©?®¨Ó’Õf–ØÙÀ˜†âÑô“ö= MCÓh $f3Q91)0Ê™#*“m0#nP–Y)fqT+‡w¼QÊÀàj¤T«ÓñV™wÁÃÇJø%¹4–¿ýÆ0f6ˆ¯Zîþ› \ °ÌpfÂ_æ¢3SʆRû½ƒ ¨ò~JšºÐÌÜ ×šV„ŸIàÅÑüxØU¦3.B2 A<ÇÁ¬³(YäT m×2'±`:Ù´mØ-q›¶;É„óÖ‚|˜¾Ró[i[ªß ?Û< iƒ^–†ùf7°Ø‰ßΚ&}ùR;soËÈYq½4š9w8˜Eçeƒ÷Ä}ߪä wÔÿ·p¨7ÀémÀé,¹Îdÿ”2ðÑ2DˆªZ|¥ÚIHm|'Cæg Åçysæþ+«ÔXDOU­MÝî™7tönçÜ‚úebë2ù>³å³n½ùã¹óþD´à˜½M ÇÆNÅn&ô ÒðžqŠ ´)϶•Ï%ôv%[žn?”œ±f”6†G?ÊÁ§î«t\†¼«êÆà¢,ý°ŸùqqÜÝ\´°Èéæ)¢á%a˜ºáûÃ`$!¿ÐC‚r`µ|?‰£Ñ$¨`ª€òk.Û_bÈá}*9Ñ{t_*‡I\õúAÕ»€¿RñR äÀ>GèïE¹’`´èk¤’i]kUM阔ùŸNTíÏÙ÷ç#ÓÝ#gáƒÙîZ]‡$ KÆ–fî&9$ê8.»™¹‘¢,þðíËöå³ï´´g"™r'‰ ?¿ :FM0è6eÊ Ñ«Ì6L䜛‚‡ÈøtÅrr75¤d\¦¬ E¬2 '6“^$¸ñ¹¡ êP6ùã!G" å‘Úâ ÁÅÐ6)vD‰7ó¾YLzÔç<ˆTëyÞ²\îË7¨“ôÆ/AÒä|¡”Z”ltèikZCIç}n¨•ÙPsZCI_5¢õõ£È¸•éÀ©Í¼íy3‘°~ØK«ÿµ2xŒ¢:]üÊ1%1€j8`¶Žœ1úúÎÛv[¿ÎGÎSmÈLó‡ÑdÔ 8pX·å±N6 Èol: ›gì=¡Ô0"Ís›gÔŠeçÆòј± ~™:ã› †`ÝÚ~õîÎïÎÞÑöÁëÍ­í)Îü?è¶oæÀeSmÓ-3—mËA/51‡ctóííK~çì Y>Û–=¡½ý¹è欠3¤@ìœF‚íqlô½„"ð‰e› ¦¢+Sl_ÇÑóñD–³»òIUºß•,¿ åVRšœ¬¶šU­Ùz:ÛQh^N?FÖ³cœjpxB#ü9ƒŒÍiËÙ*©rƒ¸¦5 *A ªB èT}f79¨µ—„Žóâ|\ñ–6Ô6,·–°7Jþi¶Ü¸£çlúd€1lË¥—Ë­RÕãï[+ü< Érý¤V§qTêXz˜ÝÐ+µKŒ¸‘]ÄÌ í:¦‘2L“’I6>P\¾ÊI†l"Œ /á`+®´¾íZŽ]ØúCå‡Û´ýp3=_?®Z«0›X®äz@ ½ ¿ÐâÐüç‚u„y Á6€1;¡²!ØÔ¹Û6+³!X®µ ˜HLZ¼N6SôÈ@òI²Ù<űüÇI\ ”*Kp^ÙnÓÆsXô™NyGH9o3lí Èÿg)»6*G®|2È„¸§Ó5Õ`;@ÖÝkÄ8.ËœàŸ<Á­Yób·²u ­ÆsYJÍ¥&«õÛ+ö©ïÌ8öÿž)ÕJU ðÖ¡·1‚ê215ŒåYH´W,`ÚûeÅýÏ´Ë'K5<Ï•«Ì›u¤Ä.ÖyÊõ¢¡€ÛÎq¼yÕ¦Û”ý&Ò•DêÀ¥Ž(F1 ºê1¯}ÐbJ¹£øF¶cÉÒÆ øTn»—~Ú Ùô¬ IØiHÏ_bêL¿ûX_1œ Â+Y;꺘‹³úÎ6…þñU< ^ëáCJÿC5§«Ãiäq–€ð·Ü¤a9®{­Ìû§/iQ®W>IØÝE¿<ª×]$x7òQÅëž v*~’%¾øýÉa*¸K—>U0¹q-Gþ@ Ð '@ôÈí,èúÉøôÊP¥@ýÐäÅpâÒ·"4‰# ¢`¡Ÿ6*$é4˜Ø¹"#¬‹ìœ¤ØWOÖ-°åpÚ½¼@@8Âlš£™{ܳÏ56@Öý$YA× yCàÙ8Cðüηá½Ì;ˆ£¾÷dœô£9œ-+ŠÏ45ìÀÓé$}¯T½Õª×(sÒûƒè“2ªtBð±`2…Í**@g†CÊ\Dè¥u†™ÑJ±¹Õ±ÁûÿãY-y5T¨¦ž9ë.í@i¥dºŒ1Ÿ^Õ*ê£N ®·Zr,óA<‰Y¢ì£¦™ioå[7´é•¯Ž.×@¶ÞN•AaêVòÀðX†B?vßû£8‰tðx_Ö;>éÔN-Ö§“ Ô„XŽäò8O’øÃp Æ¡ >·{®m&Ù‹¥—0 ßïÌXál޳»_¾M÷'µYSÖÝ‚šÝùʌθ8 ËJ$°]4ˆÃ^0âpvgAŠP–¥*ŸôUùt-6{h=FY‡fM'[˜‡ÜK 6F\¬[Æ¥wˆsïýi)`É„š8ž« 8ŒYÕà‘ ³2sg²Æg.éàr8¾²Æ•ØÓ\˜ÚÖõ<'ž]þ¨VgŒJ“šLb!„K`¦O£¼³°ka;z‹u¹ìåÍž†ëêX³JÌì‰ûÆÏÐü«@lŽwõ›1î긫30.º¨;ª7ïԵῊCæSã+ûT=5ÇsñG„ L[ÁH·¯¼‹’pØ6`¨÷þãGN´+> 4`¹{ñC®ît :^ð;0Mnˆ,ŽGŠ‚ªÜŠpøKç'½Ó/ÍêÊõb=t[ ‹R®¼DêÍ1#ÓõþŰ 8К½•º'›Æè(þŸ¡ö_ÄFOgb£WH©=Ò]Q|I´A¬…·kŸÎ¸qì#\¶/½v%{¬)ÏÆŠéPâ÷S‹CmϺÁš+2g¨ÍÆ7 •n¤ËMÓÀ}¥v»ä ý1æK>®·ËÏ×Û•zýNTóSxãôÒn«>ræ“â­ó™+Þt3hå Ïm*„ÈS^õdTÑ¥l ¤7þŠOà8md€l+›õ($›H–V0dÊf¿‡ òùg†X@]mÕÔ¥\¤É“\y'¶Ri¼S\:œXª‹:ªl¹ ÿÏF±ê.Àûáw-“.’¸t2 [¬l7]Åz€w?7³‘ªº¼ŒˆÖ® —X­æ-{§I‘ì߃`÷ FFˆÎáxiÆ‘-\÷Ûu‹&¥àgK‚‹Àw¯sÏ™pÙZ™¼ˆ'—XKÌ{){qÒËVš}‚ŽÛ–Dn†D·ö÷x±sŠ© ýé¬ó‚:y;Ⱥ٢Sb+`J\–¯±€Z ,á¾æåUÿh]%«àj¨ÎS3qÄãQ:t¥e©hyé¤N¬Z‚*7ÿ5ᄟ¥ŸlPåaÿ»Ìñý¢nw‚¬e}î”Ôê/ÇWõ[I7Œ»þè‘–#~B™Õ'¾N½Ó•B+ÔNT$‚Da"¨]â­dÖÓYNêÄ¥¦‘BÉ<8 dB«Pœ„°_¦I½;*ïLyÅ’l©©’l‹$ŽØ̰‡aŽè"¦{²Œ©¹î—*ßð$ÐDˆ’{Ð¥ö,äKcFz‘»r(¾̯…©‹½á 7.µî]úCàjüTâ½ïZ†ûÄmø öý.ÝÓ4[:å%ÎÕ–Ø)³¬Œ³PŠÅ= ¶zJi5 þ©Ù8vá°–Wá½~·l537«Nˆ™/KTá%èVwâ"Ö¦[Vr¡\ëo CSØF70Idì­ý-·µÑl––vA‡ÿ%ár3ö†ý‰Ý5Æ›©;@!iª°8g­Ù4u¸ÄÏç(IÎÙOaÑ-wÁÐyŽlïת p7‡¥· ’R9^3´ô}Ȳ°êh¬RYxñÓû°‹¬Y¿Oâ÷3¼ªzáy(é/Œ.–olµ2 ^»Ÿ¾ÜM†\•qƒ:v€WÚÔÉÖ4Ø&t*s`+êyìh¹3Ž#ZBXÙdÈØ,ÝäÎ9 >Á)ú1&ÞÂå—CÊQÅW[p$0æ©§†GÁ–"ÊÂ>ð1_x28¼À¼ÂØH˜t&WʤA§T/Ù¨á^Õþþoåãßê§žWÊu”?_¼o× _EØ …TMøÑRï5mE¯I"Eê< Óï×ïßOE¹jЛp$sAÑš¥±rq¸ùX¬ò:†­¦¶ã¤ä9SV> 'Hþ’ôAV]§C#ä_JÖ`²Î©Ý¬vã‡ÙcI6*9'c;{úT±<ß1Pý´1‡æå\ªF%çü½áƳóÆ9E(¶lÞJín3ü=¹öó­ÃÍ Õ5ÌqÌ0kaæi‚MÎJeLóGú8%—Mà…#ÔR’Šj!Ë ¦Ú[ø¸«ËÛHöÝ|Øx8KœLŧŒsúŠÎUÚz3_jEE0þ¬êmT½gëðg}ªÓs$Êáþ¸ü¬‚NÏågët|.oÀDÒAyc=ï0¥(óHZ­ºk†ÓUaUQ„U³¼ÃŒ­`Ò[e#7jI=g»ˆA |áÄF$¬ÿÖ?§'xj1Ȉ|Bûld H5FD tV•tE™~ª—‹Ü^.¨—‹©½ØYõ¦x¤á[wɱØ]žuG÷ m)ŽK˜­L;@TœeØŒ@¦‚‚šL2K×6ÀÕþkŽ ‚õÔ¯ Ï|YSq”&×Ì[†é( ‘g×Å"Ó: ÇJÆ%#k¬K©ŒMÌ>¡Úƒ¢×}ŠØqE¦k³X°Ý*6±¤ŸêYf!â;1 ³]Î"•R!¡JØXj&…èS7º1/ä7;H€Æ>yFþ)$u#Ô$2ƒxr9)%"èãk™õk Vñß Ê]+gå\OMœm†RðÀP¹öbñ2pX¿®?]U10‚(f‡%ÌÖ¨d)­CêUns¼pìƒehÔ»}Îð“uÖ¥Ï&›¦úÖzÒoÏä{TÇU> L2NGÅ#ºdª\S—kN-×Êl¯™*·œÙž)''|#mÞO—´yjŽÖõ`[9ˆÕlmðb& YèH… #eidŽÂla“µ¤fšû¢#Õaƒcï"ü œÄ)ß„jrc%$6SNj6 Ée“}Z™ÈH†ÔùNa!hÁADÔÖ|qÑH‡îT8•…†p¬kºH+»HË šóÙ×7M?bvØ×”®Ãà÷‰ßGÉÝeàcò€}#+Ñ|?@‰ÇÙɽrq±Sä«×¬65âÕ·ž·Ôs5뼉³£WF="Iš­§ôkµbŸ?gzs9t‰xYÓõNx°³`ü)À4*SC¼Ø®/_f ÑT¤°·éHaÉS–~–vÈØî|–x-ãL£ÖÕ¦.dìó&¥•¶n€‡ o+θß ¿ªJ¬jlÓDGÕÔ8*ÔÎ:W¤!JæšWj'€_߇ý@ŸX\sçÔŠhË~¢’Nf\ÙmɈ«—0+E«N,Û”Á· ¦ RèJÖ^/—õrí­3L9h`¶ƒ3܆†Ë6Ðâ«jg];õ-Á/:5™÷¼“Ê«ìˆëÚ±ÅyD~Ö=ÑNRû)K ¥I—î±Råt†æ:/\úz±ŽÝÔ×2&²´”êêUÐ…Ýu_°êºÝu³ƒfúY»®A4µï÷דm»#Ú7§„$pÖó!A7ë¢7¨GÆävþv¿·bnb¤?ývïTVáª#ÎBa5¯XÇñÝÝ"K}µˆrThz–Ø\EG3‡ެÛÔöçpÌ¢”„,·êxmY0@'‘ W(ÚCÏ‘LC ƒ:æp¹¥£øO‘Α¢•äÓWŒïFŠ¡œ{LµÊ,AÛkþ´R{¬n¯ôø²ôB©˜—ÓMÉÊOäȃqY¹Âê«rU¢Á»÷;{Ÿ7l5Ç øDb™ôÙÆ|\ç4#ݼ´ɬ7ÛÛÕnD¡¸;›Ož$‡ø×1býFÛm€6r´TO•lkÖ5Cü^Fíì܈Û^£±LA@–WÖ<Ôàw櫵ågá^ù·¯íŠÁD„²I69 À$#4µÂŠ‹Í½Æ#kwX;#káãÍm=_·ßïFч%ÿ=Œ¨p=6—^ŸôN‘àwØ• >Sõvûëb¥"Õ±cô9Bá^}±Y¿ølšQpW«!e´~y 2íü]ü> ÝÀ¦bÌF)Š:‡ÞõRÌZi£òHÊ6$‰"‡íuV¥Ôn”¦OìB±CÌ XÀÇS\l:j(xX±âW4SÁA¡æCBcDwß±4ûe ÂžÐ¶¿”Py²›žÓ B8+p!ñ"³Â¾Ž&V¬8â,oT¶×f–¿Y¥§-üÞÊKNvØð{6tvÜa%‘çHbƒ\~@B›ò‹Ž}]ÆŸ|!µé«%|TÈÜðy®äfYѧ‹”0º`Ë-ØÊ-˜AÁÔ±ýáâ ‚Ù¦÷l1HSLµ-S à5 •Þ4|YÆHEKFÛyê¡ÕdÐÌÞʆגᵦ ¯e†×ºÍðZ4¼Ö7÷¬e;/Á3Tĵl+yÐJ ¬œc!7sÀ-—´Ða8hYõª‡=³& }ËÂ8Åžgà§@;ãìëÉ»BÍÏ^ 3 w-Îpgé¥ÈÅ™™ÅYæ,rif‘3Íä,ì‘á2΀Yz—3g†C0¸¿¢³¶I7ý÷>q¥|ÃÞã¿$ÿP‹·¡&ï®J W¥yûUi™Uif® 64oµ*¦M¼ª¾eUfÁÒ¦rPzˆÓ´¸:, 0Ǫ¼N6~¦ŠÜ·³mb¡Es##7sÁG‘âŒÐñº†®S)³Â>®jŠüåä9m ?÷¢ÑzOý=ê¾·éKu+Xna ,ë`7ecôD+æ€a8<^jžVRîÈòÜ¥dÿb¶·„€ÍÙÂ&òƒD¢–›®D¿"Æ®‰·}õ6‡ ›Éd§TlIK¿ÌÈïp8Ï¡h×ý žµô³Ö<8oÈ·±ß/áh55˜‹(ýV²t+T®¹o’Hx˜Mû(Ð,Š™øàµË^„fyTH ðbMb¤‚¤!ùŠ d®Ãê,ªÑŽ€¥:ÜÚ>+ÛKr÷;m¬É›Ð2^ô¯È È­ çX¹Ä©DÆÏP箯õäÛ\ÿr58³>-“e0æ00ÜHöZåÂŒ5ZeîÜ@WÛ9®½}.P¯üvrÖ»(G ? ®BÑ8}D‹’i¹"ÆA|“nc7©hÊD8•Wtz´Ïd7C•Nqâ68(í­mól}Cÿô+Þµ÷!¸Š½x2°'-@,"Gù²Ø¹®¸~[ìÔµ’EݰoH«ž$pJoß½ÜÝÙ*9g¿š¾=ôÕ› ]…SÏÇ´´y®tÓ pÚ°Íëç#ˆ¶|ng ?ÝŲNIº Ýà L³‘·G<Í£Î:–¸cÁȽP€–¸hG1â8¢mÒAm7øœî%al‚†ª—ªª•CQœá±ÿAâLýl€†JËðœCš"lŸý8ÛƒðìLüN|{d‡_t€^¤A e}³­tBbJ2¢‘%P~¾Y¨ø?d®Ê¡hÕ*¹PÛÆ8ÄdÎ"‘6ñ° 箤ZdAï÷;ü”¶N|3ÅHò Ã|»ÿ?{ïÚÝ6’,Vß¹³ÓÂΞÓ_fÏ|„i¹EÚ$EJ²\EY*ɶªJÛ~KîÇXn^)”H€€z”¬Þ{öí_Ø_±¿g㕉L¤ä.·ëζÙ]‰LdFFFFFDfDð3K xÝC¥eGÈÏíãCöÛ>|P[¾c.…~ÛqÜ8‹=]»‹(f|Xù,rú5Uç5¤Pá–{ðæ]]Õ °!dŽIJ‚X ñ#,7ï%‰’Þ2?\åÖþ×U °Z=®X®Ý¹c‚š:ÂÄrÛf>2»Æm¿54 ´r ÜäŒlK?/çᶬGn ¶óžæ¤wÿ˜ž‰NyÀy¼.œøÂ4é O5Ÿ×e|Ûò~6oÊmH1» Í8~ÿÌEãH®eòRýºZ¤-kŸ+Üž“<ÿµÓ·$¨ðňY³WÃ#Ƚ eèµC$‘'¬Û…IJ @ÞùU² üÃËÇίyŸˆGò–•XàX§Ä0šjñdàrÇ›C0}Œ¤Tak4ZçoŠQKæIˆîvÆMKÞ)ůúå)–ø0wÁ´²,túóÜ3]iµÿÛ¦Ùt_DƒÙØŸcxãÿ4 €^o™š³hø%v€|ÒÎk¸¡þV­~ø¥âß>8#´ØÌ(.TP²ómáe°­› o‚-æ9µ§´pW4¤$×ÅšÛBµÆ „´4â´§:À .nwÿå³n×q¶ñJkÛ}¹÷bßq$Á3,•×~<õ5õCù‰ÓÙÆŽhÌ«æ!>haª­Ã¿¼|õúðàAˆ™Ò*Ó1Ÿ¥1^Ø7ëÍV³½º¶±BšàÉ­Jq§C7«¼/McÌ)UÅ+iÈŽšÐfs­Öš•crkȪžDY•0•–ÕÂsS]«Ç‰‚‹µ0mPÖ]˜–×Âø3º† )«„gàºIÒå=÷ ÀxÅ .(°Êl È7K*]N}ax"RV VÇUÕ”áÇPÍó³ýço^¼zé8d™·‚–¢³`|i8 û¸TTÞ³x¢OkòÙÉè§Éb˜áõa]õ|$Ÿ…ïuû€§¤Ž~WÑ9E==¡Ò[Â$õ`FðT_g †Êšr ©DÉYuí˜X×»,´`Â( Â8A„ƒëûƒ^ˆ>÷øD†R"P“(ÑÖ|=ö&0qxœèý!AÈxä:~€™#;}5ñ‚^ÃÁ„éø²©ÑÿêÉÿ±ÿô¨ñêÍÁþË£ýgY¦_©±æ¾"D¸OcŸÃq;{zÁ1Ž\A3úR¥(/°º€ª/Ýë¶¹± ëöÃZ·Í&@ù*VÍ=Å©#ö/Ç4UÏ…u®ý™ôº μ1^'%+ÏSžîZÇ™ÛëÃf»½ÑüºÅ £¼cm,Ò¸œÛàZ«¹¾Ñ„]¤¹Özüo ¾­7¿i~óÝ:à!k_(QHO²ùÞØE³ZÐÚÇ…†‘ü1XMÓ‘Ö4Md‹¡e“åÎí ÖÚ Óóýa§³º¾–GŽ&X·(UQƒÄ2¤ƒGÙ!õ UÓ}¥Rab€C'ŸV7º)`ÌIñˆT/ÂäVߪַšj;4ýdžÔš fzõë•úFm ¡*ܽÜp_ìýðêì7/²õûÎćÍqÀ~Ý0caڠܸ—q`XÂz•*n–½ÊÌ•1ôú¾,䌩iqÔŽEÏ‘•ögȡ̞„³¤‘“¤œÁq`~úw•ýÇ£tà†Ù]o5×ÖyÛÇ9ÞqœçÁ©tZDZAßbf?Îf,7MqîJÚ#0Öù,l,Ôuö¥Ø;Ï ÇÓ„½DV€!cÊ4锤-€þ ‹åÉÝÈXÍ|±Ø|ž ²É"Úq mMù@JS¾œGÆ¢ù p¤ê‡¸1Óí#G@Vä„2˜õý,:ì]uŒt1ŽzÞ¸Îܵq„e(²ÕN6ÿ´Ýáá+Fy¥YÃü‹$3óÜùJÛ1GF7Œy¤92~òiF£a©{' RË ;Øp>Ð æŒ/ŒìñSkpæuhOǹԫØR¥k¸)Ákqâ(&DøÒ ¼evÏÎÌs I.~¨$ÜCrObl'¥ˆœkö¡%L«uÔŸ%|7'—ß)íÁXÍ^ô}(£üâÓ>ÈŠxªtÝw³VÚ‘²õXÝP–G³P'u°|Y‚°dïÇ»ô”ÌÕ ¿iu9B5«K6;kï p±Ž„/¤„[±$²wRT%eÿÈÁÃR4æ$£ð¡øÈ‘$^ûD6¦dì¦kÊ»n/Š09§`o:¤­fM ºPj‹†g L!K¼\M&€d¹‰YsÆ~ÇUOÐuœBn¾0‚—Fd‰àšÎÈϘ}bÂÕ;ùV‘[Ÿ"\¦{m!CM*¼Á÷@+]%Hc¥ÇŽ.K¶¼OóGσŽÒè+ë;ó¦qLÇtän¸{SJZ­½V•¡X)‚9‘fÅ:W†&Úäx©PîÕ+]Øf0™ø´‹/‘ü@ÜU¶3~ËHÒáèƒâ3Pô¼'Š›¢Ž Ñ8Ñ8H£&ÅÀ‚nâ$ ËÐr‡öÙò¶ªW r§¦Û]ÆðsóÒ»¤¡dz‹é›Á„¸Têºn{Ý×\®–÷·ã—æû³¯©ÔÖ‰v@_šï´ÞÎÕ^“Úåžé¹ ­P—•Kûcø¤ç–†Â9OÆövq²Vpž4Ž¢)¦²§5þôñƒøI€šŒ<ñå‹âaÉ2«^…y‰f#Ìr|~lÃuJïm‘ùjîyÀÃæÆÃæf­qúG;3ǡɚÂr`Œ'#¢ï úP îVÄ7]G€zð€o›:<À²á)vÇH&1Í-;%-ËÞ”¨(cÍ tø§ö6ðüÓ>eÌ?1€£©„Nœð<´±C_«´š^F©¯\ Ãñ¥£­a¯ß¼zºÿìí !Ã|D¶°Ìh¨ÒÖ¯ó(>U÷ÛtÉþ‚^½RŠ7L˲6Çð;†Id…»„Fû +¨Ð&ZínluFÖó¼yï¶ætò:Yè GTþldO3S¾I?ñ•Ù­²š‹lm¸ÞøîæäPæ20Lo6Nq|Ž_0Á ‚ÃŽxÍ€–Ù&Ew.Õa¦vM}Ü\Qq2¬wpº£2÷§ój§ÓdŸû¦íˆå\Ë6D7ñ“)ðoZ€QF¹\mä‡Hå¼l‰oª)'©Hq Ài+)PÆ š-ˆk Õ’Q1./™öQ®*RèDEéK©?Wæ æ‰ 1òsËzf\S»}ƒ¸Ê‡o!ÈÜ7ê£ihêÐ ž·PJ‚¼IU¤Ú@ǧ®ê¸}njS¬¤€7\t´±Æ°ÊšRFvâÅ´%|Þ¾iëHêJŽ5\##Š–!rðÞCsÁ7±Þx.5‰v*‚…»ÚÐ2ê¤\]P8 (¾!î2–ž^5ú×îF6xꊕ ž¼_¤ çàñŸ€Œáë†lÂÌËüôÀ§ç;5`@ÃlÙ…>bG rLZ:r–LÇW2~®xŠ+“ŒŒf1”¹q• ™ôÍæa`ÌåÊ`Û¨»›B=ÕYH&[:,–û$Ò,Ï»ßÅÑÄìÉâc&CÈ,äxGö‚ÛCYÌꎒ–åª_“´aHgxãH?«l•À·yø6sð™wtæ@jVY óæ˜7s0ç’B;Yþg3xY è^@¯·Múlò˜\ægb%äÌÖ±›²\æ žŸÒ+Ïq²´–g®±²[ò=Í<,äZ,˜Fz%iµ¥Ö†ö#2*–‚/|»Õ·® 9 Á¥c1Óî9·Í°\ó#“éÍ™¤Ânµ8} TD.š©ô”o¼Ícò¹ã3Mœ¨î–GßXLE1)œ@Ú®÷$óâ¸e;,[Žn“S¨é|dþ ×qo"Á9©ƒò[ömR1“ÉåQÃôƒQzèè„×y$¨˜[äæ%´ê' ³‰äö\†Bô—(ö6e'5p>"ÁÚ'Ðmr‹ð=ÙÎ\`Ъ=º|ôxÅ銟3œy!âsƒ¹EhxRuïZS`%Ee(û©Iÿ[ C6á.ˆ*b _Ö¢’ÃΜhÂ%ûg>ް=X#ÊìkÍáô&Y<ØÌ»9L½ïÏ ‹Û4C¿jÙ-SÀ*ŠkEß×Ì ’;9£PþäùöA‰ŠªOY4"{Tó¢ᘨl;‹µß­l¡HozgYFf¾ha‰[£&36<ÌBžh€Hi°%÷çÌkG:ÂHÓ"nsó"%µl"7$‰ÆáÜx£dƒú,,ö›ÁT]o›‘4dMˆ3×xg®¼uThºaØcx†o2+«jg»:{³*Y¢–IÑ~U…*+WA/É\ä•—5¼Or@RœªòYÙS~;nõ͉Ìo^ï×ݽ7ôcïÍÁKºR³Ï\ØÁÉ0#Ì=wyòöûC -»Ý8蟔ÈÂçØÏt‰Àkhí“Ë |öœÐ „cØæ Oe4ò©‚7Ë䀆Î]<èå"U8¨»ŽÌyÒuÏ9ÉÏÔáÌ—`ïíѯÞà j/œùc÷tßwOèw“/çû»£‰Œ›ÐÊ]´G“¡7fœ¾‡k!ˆ ¾ÅÀéÜCxÏãIŸ~íÆÁÔo†~š{S¿ýÜ÷Ý?ã ì´Ç¾o½¡Ð½w¸ÿÌEŸÜõ§ÐAs:©ë8ò-ì÷áGöÖáþ¾»÷üð•ã€":®¶ig1½æœíþ,u¾úòù§û ¼ø<H  œÕ—~ºúÃÑÑëÕ|ü tô‹ûhµZ.þ}´ùÐúÛÂÔ›í–Ûn¯·Ú6Û­¹­öæ£G_¹­O0¾? »y1€õ“…õn*çÁ¸úïÿ$d!ÞH_qâ;™ù-ÇQþ˜›­ÖÃ-¼r°Ñðâ‘Äxs>Öƒ~ºEßAÊIðøvԗÃW/ñS}G‡Ò‡Í¯×7*ðï=<}óü;|xÜj?„ÿÖ*ÐôP9ŽÃŠŠó‰§Ìx,â8÷»½KdªÛx „ lü~–¿îtÑy8н_“0­è£›y×*çÛ\åêr÷]ë}]‚ˆ›Ê›ôS/Î¥Ã'N?޼ÓjåOè@Ð?ñ0û1^á]Ľ1êª ­46¨UJÓ—)wz„ÅŒ"Õ)HI]¼Æ•ð\/‹ñL™£9#A`uënå‡(I9Kãn— †[êÕ{ýp(PËTËÞæž¡ß‡ʬ“»”r a&•;˜ŸgôW5hÑ®#sQU“b—šóWµhÉ®W˜ìjqþí7rȯæg£XÛÄYµ€E’«ûôÎõÕ uÞ› WpmV*¹ÄXXÉÞÌu.›†HƸ)ä¥7›"cÝDéþO'‰@¢aßÒ*HAÄSŒÅ¯è=O™‚)â¬flïØy—¬,0ªUq›ªcFW‰Xæ®Äþ0‘¸†÷pÛ"Y,›¹ ô(c …Y—Ä+Ëž«Xª€Z ¿Ð–V…ç¾{î‘ë^öéÂKÏW—ˆ&èÊq6н\\ÄW=̓¼b¾½bl¹»]½œæÌÁùŸ¡=¾Ò®Ð&8G^І~‰â"…Xc²¨Ÿí µl N,BÒ#Kv|&³©Ü°$©Q seùl%Å¥kϹÁà@ÏÌm‘,4Ì&¤®’CoB\FöóY”tÄ£N• ˆtï¹k sƒŒ>ÅHjeQîñeå3 ^r8±ðñÄ(§l´°Å‹§«ÇÉ* PwLÎ,›.'~½Ê#I†ÝåÖV®¯ëjˆ†TÅgp"gàetŒ«­¿'PÒ²³eý§#k£Îaf«Pë~þ[%ØjRuL䃾 WÑu‚ùôÁ~‹{;¤,Ÿv a¥\’¤ÚO™5”ïHc+6†W¸·¬Ñ§R̶(]µg÷HS½–qé(õͦMìTŽöÍÂRF±?¥iéÒ9 Ît½H/v|akÛÆÁfáÏÁ´¡#öy×ýÌwÚ¨ä¹Àm’3I’]ùU§ó6TgÇÎ÷ô¾qoiC+À•‘¤,Á{óãKñvèŸÌÂSŠãÐôµcŒëÂi+}/ 0b‹Âë ºƒÐŠº­Ÿ¶[ÍubxsPdaYqà<¾úã(É¡ŒP` Ê{ei½ˆV¸béT Ã&ûû8ŠNqd^Šö‘¤ïM1þ8ïÕ T3††’|ƒDùŽ»Þjј–´Úm+«ZQ âšÈZâÿÍYP2ÌoP>Þiçm‡ÖDF!POõëLÄ-¹ ˆÊáŠmyzÓûÓò )Åjï<)a‰X¹§‰Tga…žØ6 ;UެB¸®e; }ˆì‘8d„›¥UZ©»æj¼[Èy¤þ­¶?%´’´ü°wO䮵üÎJt¿°aÓR““ûÙìDÜHq”.§ž)"$!ȆÕʽ‹JÝ®ŽÑzÙ€Ö”näw-ãáÖÀ¶? P u¿Ürìvýhx“䢶V{ÔL\ q+÷’Ž{/¡Þ*õÂÖh%Ó+¡G¤²JK½ çá6ð|#Ø (N7Ñ5?¹bñèJ›¼Øn·ã® r9Žï§¾Ûb/dɬL3ÒìRÅ)P»/MV–ÔƒÑÆÁV+š{ Þrt’çh¶)0¹Lp\Ê +iB4#Ë õ¢EYŠ¿d=½aÀå¶…|ý\ âp$F ³/ ùµ5Êî’gµKûä#¨„úd]ø„È ½éÎÙ ÚåÂ]R3^á¡Q“iQj˜ª`Â7Ì :s¶l*?6s-c|í¢éC A¹péM0’‘:§ÁyÖð\ýy³¿÷¬c™Ì‹ñ­)5DfÌè î¢yFqŽ\DksCÒ&”B\rõ‰ýADÀFï\í¼»"W{†UOƒ1kÇÜ„¸Yð¤ÎÑÒÊ?€P´ ‘éHœJôŸVS,º½™¨Þt(hÂ5Fçs[Õ¸,GßuéÓ»ˆVåçæ|2–Ì&CåP<‹'šû˜0É$Ær|ÝU¼ƒn x‰Ð_i]c½ñ)؈ w´mÒÔ&E‹@ (­h®›×¾Qßæ§Ê5¡R)¡z*ç3âJîBÖ€ÍÌáÌ|Jùm(eÈmð΃¶Ú¤ê‡U<Øû™\íøçÕUuɬ²—$~œV2ª&^{—î·¨BÐjó}ЭܖЃ/Ü ;Ï ;€jƒ (̦ŒÔÅV§ÑªJ]ÃtdL«´cJãjT5Ê@1F¨¨f墛JüUÞt†6X¶ñ¦ õGI¢YZ4íŠdH.ýhFÆ¡ÖB#zÙkVQ‘­Õ ";ðÉT™$†ÌÛÎìgÐv¦F±^ËŸ“õO™õ;xÌûWRšëu>€Æ fxú×wíÆÃ÷ǃãç–XÒ”¥0ïrO4ÁHgüs%;‚&o¡eÈK’ìâÔQ«ùMÑb]f#…õu+[ÅÚÒUYk¡uIí4eœ6ŸV$I¹‰Iï£1™ai3ZƒÆô&#WᡸN» fà¾úƒ6:Í9J*•FÿVéKÆàh6 ›ºZþ†õp̧ß&úV¿ÉÚüκ4bðåL¾.²}ƒé4JÓ êb/êýT P]ôtH/»½$¸I0:II9Ц~¶Åc¤ÒLaNh_À¿³Õ?l»k–] -{Ч.ﵩút+zèÇ ?d»ãе“Óy²ñúT~™ ¦~™5[=-1gã…v(¯IÞNRœRßÞ#ªœEÙЃQˆúS/Í8&%^¦¢•ú$;¶ æ ÷­ãÁU»Þ~x]«~ û؇å/Ý¥¾]ΫTÆtóÔ˜úD‰bDÃFv⛫j÷¡¸8Ïù÷8 RÍ ™íi“Óó<41Êè±Þ÷•¨D\«¸p*Õ߬kʪå6“Šo{PúŠ},86.[Q}¼vl™Tˆ¾ñ`-äÙ¹Þ¥ŸòYb÷ÝÚ{óÍæFwhm2Òc/Â$ó„XøZšƒié›Lsª4ÚÆaŸÞæ¼M6 O.J{ŠªU-] ýýÐ2+ÆÒ!=UoL£…®#ù“izé¢WK<‹?8ÅÞÈLóD’êÂ`ËZ±—(Y&/Ù¥Z…s,dO©¯Ï²ˆžÊYˆ2 5çHqª}áT°B: ¸§Ñ¹Œœbpe…!ÎI¥WlÏ‹*Ê JÅÒ ¤ïÙ±£N¶êã7Þy§ó?ÆAoKêpÞ’z&Ýl—Õît¸‡Æ½Qoó¨½p%±ðÔ8"M¥½L`Ô;¬5áÍÖ¹`˃RÌ'A=(Sàñ2mMTNæ¶Œ<;ª”zÙ£/?â2° K½<;2×]mÏ\R"C%s(¢-.œÒF­-ÇØ@MÃx¦¸ÍÃÏrÈ:Oõ˜›\з£,Ÿc3·¤ ‘Éà\áÐ0óz⿨bŽíØS¤ ²`Èô²’¡Ý˜^6›¯úºšì l‡ñDÖ‰ëÛëD^¡™þò’ß¡*ïZ²Ø ‹y¸!¾ñ­{ŒøŽ×V‡—Ûn£mquüQ”gJ8F~s¬e*—â=…Ír)3èè³\ᕤ²~Ûix·¶þ¾µQ[Í[îºo¾{ê®m¶7Ýa*(*³ÉDÅ^ ̈Øe®6zÆÙ®7ú^,·q0z?^ižâíæ ï»ïÞÝm?ú¦õè½ÕÉbÕ³œîʆγq4^£÷:ï±-m¿°¡ Ó^'¨ìžûªí(geSY™`ÃèU·Š °;抶c¿A [T÷_}Wn™1haÑ~)CuKªé=SHUíäZ”vä\¥(<»éj(‚¤ƒ•LôvHèÁÐ)š7Ä+çTN1üCþ.ÛŸž‰|+vGZ±ªÛ½ípg.wìã®P‡ÇæådÀ‘-\½úX/ka|ÙfŸØ‡KR‹ÚJ­ÆTg1@¼8Ë ìBÔªR±µM¤"|»£Ï2É®Bª0½ ÿ'V°ô±^{>I4‘‰Ñ{ü~jÜÙ¶aØÊÃ'~rH'Ö¢Œ7uUVÕÕ-ºål¨ÓJK€{Æ(¸ %rO–:ÔlXË»ã×î5¾{ÿbbÈlT¿ABnæÎÀlEl±ÆÒ9ÁS­ö 39_ò‡ÞÍÕXi‡]6ärºkÆ›j(òÝ’íT”2ó¾nÙæí\,ior‘Õåï—»UýÝFô©¶?„Di‰ªb÷0ºQ‚«ÈCK4ñIÑécô)[…©ÝÎ)ðÅ™O¯S=Ú¢‰“ÝFÄ/à[£ÌÑ{þrhªŽÆk¦«,É‘‘ÆP¾ U”¾<樎¬$í´‘¡l94l2ÖIv ‡PÍ‘æ3¤ÊDh!2-ë^OPÀœÙ§9O­š’næO<•4Ú„1Jß2ñlbßÚ•¬­ƒ¦Œ ʲ§êGyµ|#M‹â£çSTÍÏ7› (PöSžÈ¹¸ðyËŒ³}܆Ð,AŠ/ùRÖˆñ}ßCÎZ0z…âB EÕ×`^dŠã³–'ûß¼„–°­l9¬(]mK:WåÒ³BBöÜ8ƒ2[«Ä$ÄxÄst>,G}Ø,–w·Ì_‡ß_u»Ïö»]å¹õ»­soûgPù*»¾;W§ÊÞVæžëÜU{c‚ý #9 & , qP¢¿~Œnçc \§6Þ7~z@À5@OÔBI)-ÿϹþ¿/Ÿ| ×_ú,öÿ…²Ö¦Ûn=‚ÏúÚFë‘Ûj?Ü|¸ñÅÿ÷s|Jü_>ٺٵ×Ý=8Ü+ñïmÓõwµVt«[Ö߆ô£špA¹T來ñµÄ.öXP¤ãK´1—ÚF•ßOñåÄ;óÙJêé§Ø L7U–ÉJ¤~Dlì%ðÖß#ë7N»qÏÔ7šdBQÍÀuõz¹±]C…ÇÈú–¿n½gì–×·9=-½‹¸™J?Æ=8»Ì@gQP…™§:Œ:|ûzÿM§S ,ÝØ0u–wkƽ SvÉò”›©%S8w¾l£æ¶öÿ,VØr°2᳂ˆ%}ÎáIú‰øƒO)ö3+ ôp…ã/zBr«E…óo ‚rT— ]]û¬·tí4 ÞTY±ö^šWäHÃìãTó'ë˜ð[âYȬçl›þA\h*çççMÜÏ0TKE·¢Ý9iìXÄ«ßïÑK«”Ü—úDçîÒ©}Lò‘=æþ–ÙÙ¯ÆuñälÜÒ­ð½7 &~4K+¦/gc§ï…,¦¶•;Þ0³êî½>ÛÆ4Ä%ËE1¹œ'è^øŒ™ŒQæ U ÝR@o [ކ&d&=-“Å%ry•BTó"ÜK’ nñº<£ò!ú7y 0Ážó2؇S&¦˜BŽlc¾—™8:ƒE9¿¡hN…ÔÌÌ©NžE n6]IJG•"I Ö­:½Èº·ˆÓáü|9S߉ƒäÔU ³kçB9Ì.|4Rfu—¢¢£SB(¦y逌’,ÙikT7öˆÍ0”—r/˜*å ¨Nª³Ð Rk5\4ôܘ.]üôÕ뿼9øþ‡#Œ¦9½Œé:ÁZ«Õv¿@Üž—4%O•@jûh5¦ç0%[”b3.í(¡-Фxá`5ŠÉ:A7iiª ¯SÒERzwpÆæ?}䣼üÿÂë¯6»Íg‡ÝCÌ`ûIúyxsüßj¯­¹íö£ÖÃöZ«½ñãÿ´6Û_äÿÏòùÏÿûùê_¾ú æÝ}uèþÙ•>ûj þ[ƒÿ\ø¿1_Üýì ~ù|úOéúÿ¤«ÿ¦õßÞhµ6rëôÿÖ—õÿ™>¿y2´¿úêwðõ·_ñßßü¶¼êoå¿Âç_T[ü´á•~uùÕó¯‚Oò?䃰ÿׯ^ÜÑWS þä«´wžLA^ëAÿ»7EѪÕúó/ÿé_ÿóÿò_~û[ç·ÿõøOA8ˆÎŸ`ˆääÝáIt~ üž¿§ïtÄÿÄ‹©äµ—žôäûQáû±ÔþS0HOº¿ûïWWk›êîúæÚuݽú¦Õ®»Û›××KK¿]úÝÿóÛÿVi>þáÈûpý·ÿóßúßÈ0þ·Ü°þ¯Ï†À/Ÿ/Ÿ/Ÿ/Ÿ/Ÿÿé>²yüöýuÁøòùòùòùøAþàÊß]ùûïü÷7Rþ/ò÷_w~']ù»+ÿÿþFêý‹üýWùû[ùû;ùëÊß]ùûïüW˜ÖoDùøô¬”—ßüNþºòw÷£†üåóåóOóùOüçw¸ÿïÏ×ÿ¿|¾|¾|þüùÍ¿>;|öä+­>¸×ºðß¿©¾’Ýü«¢ð/l,üï_eå®üÝ•¿ÿο_>_>_>_>ŸûSvþ÷Z›cÚŒÕOО÷=|8ÿüÏËøü¯µùðÑ:žÿÃ߯܇Ÿ ï?ÿäç7Íÿ?>ÿÓÆF»õæ³µ¹ùhms­óÿhmmíËùïçø¨ûß0ïŽ9ñ[ÖpúqîÅaŽ’-'ŒŒöýðý7o^½q—ÿüâ9ÝaãoÃ(JÝìêøþŸ_¿zsÔ}õ÷ž|=Úûþ°Æ]bdxl‰bû}ø%˜Ì±Óy6›L1Ê>¦;òÓ |H¯ËÂëûˆ#ÆKšF‡ÛXæ,M\¿Kç¸Öîð$÷;ûð„¾{I—Óâ:KýØGW üØ=ñ’û E*q–°ks€èÝYZñÆã¼szœUçÊÆ]ú•vs}³ÈX×i ³ä6Üó(>egh¼ÃCR‚Ëm{ 2•¦{0¤Ñq¦’ÈéŸP†fºKª›žŸžû>Ç%]IðØíá}_J ß©ñE*¤nÏGLêYƒ'j W@M0™Â ш)^”3ñÂ`JaS‘ˆ¾yR9€ƒn š1RVc‹"ä%•«µ_¤Õ,N.Bá3*þ¢ïÛzœ|õÙÑ3ÀFìáÏŸzÁ»^B‡Îê*^ÀGbòñþ*TO,‘¢Ñn¶šƒtà8¯Bà×ÁÈ•té.g‚h4ðÆ1.N=#L¸èº\2 O°#[EBÌ;T\ÀFß'¹…°nB— ÈùÔ/k®Ó¡Mf‡¸Ai9ÎèŽ{‚¡k9–4©€–h+´7–ø+2‹+u`á–´©$²î€•–`ëÒÉò<¯5¿´@¤¨9ã:ÄHzî| RXq´³þqïùÛ}³YÓ Ðtò8›ª1 OJÝåf> BŒRÛÝcZ˜ÀŒÁ Nè%‘íŽ4Åí"^­f3ZU­ºUÆjv#•x›_'·$ ·'ä©3CYíÔaQôgP{ê%:n…>öêÅ—8J\â×@~çÏüÞl„;û/ÿxõúùÁáQ÷Ùþ“·ß_‹ó¢“ ëÛWàˆ\¿½˜ŒUïÛœíJ¹œmWÞ}×øºòíŽóøÎ³WOþòz_Íë·Ožk‡$i}~ÕJ°X'Ç`,eèhÿÏGÈg^“hªönvY*Æ]FG®/eí;NÆœh½ÞeG3±b4‘¥ò`¤òlÃ/crƒ ™zi¸={½šã½2T£,”·¥¯ "‰2¨Ô<Œt¼÷øÙÀ*ˆW輪Fˆ¹–W¸ùm=­æ78“°0)„Žj,ùðWn¬yÿÛãä>1Žæ}úJmÊó¶rïa YÆ´+¨ˆzX©›€ÔÝ÷Ëu®#¨pHå¢yi–"ÞÍc*²ªÝ—ê˜w6Føî·ÂH/ÑIMìK:FD (ÈxžPuæ(.‡<«®tFtyµ±C=›ðr ½%N¬çVŽ”o1ª ¤[‘”ááž ,IçNÅù5EŽ)>iÜß<ßÿaïå³çûóV%Ä0ªÝf%äU¸7T?q‰Åà&‡ozñh†r¢„{ÐîDª …qeZ­ â0îD°ƒbD¼L¡!ëƒóI)ðœ1è Ÿ aW9iÉ‘››5d4¥–‹¼Õbž¥âU\×^Œ3Rl{ÀÏ£x`v‹8›b&ocˆÈ @9rP´£¨Œ¢^‚@M&€šÜd‘1êPÜXŽEçé–#8¾•™9¿Ê±¨¤¸Íð$Ïk„ÿ «Q1XV·ÜÇPs‡b¥,•[›æÐ!—šîë½£°â¬Î'£BB•ŽœHZ+`so rN y|™Í¯Ì 1¯z2ëYÆgÀ?#côs¶ñ¹CÛ4ל‹s„Fa¿xGö…; Ói“+`ü/¦ªÛð³÷œŒ§äûî0>ÞQÝ÷9¼(®ÂݪphóÉA-,  µ¬>ŠFŠö¼öè¾ÙÿÎÐ ”% e=K…Ç"³ZæLžr¤4„D áT…8@0sIƒð Ε(M€öF¯_Ã*‘ ­3Eùd+ô¢VĦ¥ÿØÇPCèT×b0™·EyèàêdÖ4¨C‡ï"^ñöåÚŸ÷žƒ¾–xU®6+™‰S@Ûv+ZoÀ„s-žoæµéV(håeñ½þ‰äG¿t«l‰¹Ç02½áÖŒ+ŽèŸ7v®°òµþ‡)ƒÝEÖVîÞ©r75 7Àš_iŠvU#5{ÝÌ¥ÜOJ¸ÖHÿÊ5ô`ëÙ ÌÊÄ”«ä[È@e>@UÖz@û<‡!@Ü>ŒÄÊB›’ºÎüÎû¡IÌÖ…]mî̸25Öù%,r̤ R Jàq˜ðÝÑÍË8Ë›—B5óÒ€ù:¢ ¥¯Ká‚×s_—¯S\éy¯K!½îfãuÂæ¼.…Å×ÍéÅ=…g—˜m1窦’Š…Kh5Ss Z0ìùÊŠœÒ‚ÂBŠºS%9H‡/äkS˜¡WâètÅ Ù¨|‡3G$¢¹úE©‡žpé©§º’Ë➼Ãt!îceeü€Óù'åƒÐ>ñjîŽÄŽç¤X” Ë}¼zÜÞqß¿{Ÿ\¸*ü­â0Ëb4»Zn_7v`f×2M‘"$²šœõ»ÕZù˜f½E›yå[Â]‘‰æ!=x‹ÀÔçÚ†Æ%¸ý,¨ x}šôöš$Óá5ptú±:¬…ç¶ ÍìùcÖxcËU\ˆ¼kîêíðihòÈ¡…d¦3&Ìÿi]¢Í1]6²ÓRñ I¹°H¡s Ú\QxÚ²ÖK ›+&ùðW²úйƇƦòŽLbZY« Š)ÉŒ±G'ZDã|¬…ô-•–H ”œ9dÎz³@Ú3%æ0=î,ˆâ޼ kø>…)â“6^z²€±Ì´Â]àt6‹¨üê„Ë×ÿ [¿æ:?߈uIŒsqÅ]S*…Ìf®À¹³$[þ¼„¤n{ý!Gr|â#4ºò3Go–ìVJpr)cÛ­Ör|ú–tÇçmšðàó„HõψLƒu˜wP–̇´­]å$SCÄKåÁ‹ýNç 0ÒÍ-CšÛ¶J”lÒíÑϪԪ²ÛœsB% H³¶='w«JD}CŒÏ_Ú ÛŠÑã͇² ¶¡$sK0"rÛîÓWo`˜–¡J£@‹ñ[¶œ+oU>³ŽpË·>¼y+  Ñ0ì¡f\Œ’9›•œùž“]°çÓI{é)µ:xT˜¼d6¦Cãôx…¼•å?î½Á¿ó'­ÎÃÏ]÷“üÏ™{ñÓá£-)JjµpXPÂ1Èš½Ù³ÓàÙ×ûº«8ÎGvu¯ë*Pm6 x?[Œ”ž÷ªÝ+ªÚعâ6¯¯kd””§Ü4e‘7“Kîs²Úó‚¨ìŽzgìbp÷Õ¿¾;ŽÃãä½Nü€R€Ä!B5HZ´ÐInK*•9—£z·ŒFoP×Âï–ºŠç<ÍBÝeUu…ðÏBÏü¦HļZ:—’THãÜð3«k66ׄÃ^Ÿ$ˆ1(âʵ)Ȭúð‘¤ýR\̧ä%Ee26É#ݼ_=Ž?‡–k5ÊиÜÎH§€¡~>z€—3Á£™.Kå°ê8ø´®~(=P† •/œÈÁx ¸œÎRÞ*×A±’öý²ê›9´wu.L¡ÍߌÃLõ6 d+náí{sßöݲTÏÞ0Ž.$Û[LÂæPj~k|—^¶¨Nxó~§ƒo–ã-…"aÎw9tìáѳý7oÜÊ÷0Ýïv»ïeóíe)ÙÕÃЦғ)›[W1²Q•-UåUWVWj2³DÓöÅÛíL5!¾õ­ /ÂhWVô¢§0Ù•ÇÜïT¶rƒ`5ƒ‘ZÒ€ ¯ã—Uxó3Ѿ¾Év#gÀU¢ø‚±ßÒÁ3 ”("7<}ªEå¼_ ‡"À‚º´l:1öô}µ¢‚¿¹–ý—ù€ÿ½rŒZ¸x ÕºÒtÉİŽ¸-Xê´öÙÄI”zÃdèiÓøisÂb [sŶ®e¨úJ~O£©ð~ßUæ<Ò›¨6ÿÆ,› Uéßœ”Ü5vN:F˜ MWŒÜ(¯•Ôqﲄë×ðiõY|Voe|8¢Ü=Ãô7Þ”x@Ö’4¬»CiËd½g°ÀwÏôš¦ èÛÚXÙÞÇã:z‡ÝÂ_¤OŽKa¹«+Vs+°ƒ@ŸXhwƒ ÒÝ¥®àëû± ¹I âMù£Î*¨ÝÌjCÇ º†´uû#2ãd"wà`ÁF<{ž6!“ Ç̓ׄŒÔ»×:±vFºGQÅ?ÛBèô³ÎK7SÓ¹Jý­ÊÎEj¾P¾ÅØT©B°ä$»Êò®åVâ½r³íóµxM¾Ì}í[· ÄݲyÄ•â <|Ž\ÂxÜRyËN¡lŒÖià ’Õˆ›€inTš’>[×)XÒ§ü®ž}˜Œf>Ñ0kkaùG³Æk[+ƒ!Û „%—ňÝS½Ê‘·e‹—§ÄãN•Àt¶É­KÍbûåLtëV\Ô²4“-Z`ÞS]>9à s)T—»u… ¨k¶Í¢*¯øìÙ">{VÂgψϚÈí?ã ÷x•ÚRÑôX! 5‘7[¨+î">ýË84_´ÚmÆ¢÷ÞÎ0T¼j±ív»¯÷žþaïûýnwñí ×Ö]àûŸâ†ÄßÅ÷µùj>ã/! å³ 'D¯rx²ÄgÙÖj|ŽŽÜ)C%32" 2Ñó0‡\>‹ ŒxçÇKîœÂ4š^²þÑFý­¸Cs­êærŽX„o«^BÕVý¦]…U¶üV_èâslË^z + !qú ÂCàÿXɉô, ãøÓìï ³L)SÐtéÄ|è…ýKP~<Çqû'>ç`£‚ϵ(¼Äí¶@2€dü™M(Öí(“s/:÷²6Tû苳të£/jŠEâ’}WoR¥{ÔgÒ žDÑØ÷Â_j1P]\SN*¶ºjó~mudZ?ÄP¦Þ1ÎBÄNV²{°á†7 u÷ÉÞ æ82«|ŒâŒÑ)hÿLŒ.„| LÚ3PbA¼zûæé¾»÷ǽƒç{OžýÅÑ>Ìt¾ÇßÜÍzè%: ÒÎêêˆ~“§^/¼p0Œ.W'^¿¡îÆ‘7ÔÊÒ>½ÙvpDî`^xJ)¯ŸžÄÐúKx;Šé‚ûÈÉ;uOg°€†3:{zâ Ü?yãSŸê9'þxêƒÑŒVY$»â…ÔVè'è%¦ODñHó9׳1Žî,`9²EñW¦÷ØjH×RÑu£L`é³O²Ãw‘¼1†Õ˜Ñ(¢iL0±òÁF˜ˆ¿bs$wÓõXXûx‘5è{1°ãÃ`âu×ÁŽZ."çÜjmGg!“0 äÔJ¹£¢+ðéð˜ÿÑ„ð ô'åÜN§ÂYf®£Wî³WŽsßp_Íü^µ2V Ï åV–]òU‡ÅUrtteÿ®á VÀ Š“‰Í!áË`u¾ËAµ•o]/¶<#gžRæ3—— „Ù"@8¥ÔYz “â F˜F‘º—†r ‹’ ïíѯÞ8Q¬;€ù&C>ï=¤ßÝþÔ ›Q üsU%Y™ÄPEƒXZi$ôÇùâ‹ÉXàÂouGüèïѦnOäjÑu]ÝŒór3k3 ÜNOŒbEõß–]W€¥k—¿B®ÿMåwÅrš¬vV·ôÓþI4™f?±y¶„B'¸¡ •Ç‹2Të ÆK£¼T–øxrñXÞë4Ì#?åëjtUj¿N-¢§_ÌÚÅn³êjðD ÊC&PÀŸk©Ž—~Ý;%安u0!#ã÷U¡òQ”³cPf}ºškþþýïÝ;¾bÆ*+ÈmFj¨¥ŠMÕ\#á.ž`£¶Ì·(Aï¹êÒ35à»îŸ@ÄñbºûNâ+aœüI9jä£ÌoŽšîáëþ$Š/Õb¨exÓ§Ôõ†ÃRØÌž^­0+6Z3h˪Z¥Ã’A¬éY[§é,Ÿ.¤ñ0­øjL"CWO(T_zÓÏïÒ- YÂÖSߟ²¤9ñNµ¿Ø/È^JúÜ ózeÜ ÒØ‹ƒñ%*’*Fë– t¯ˆM,ŒkjR—[ù oÿTkÆ+¨Šþpˆ@@+]|¾B‘XpÙ;êCÓÂp•Z¨YHÉjÑHôWÙªkf›×–䊠¬CX±õÌ=e›5—{<ö<(Ì£;ó+ô¥ªùá±aL=&(«Ú§ÁÈ›ÒÉœ.®­_rñ†¦ò- D—4ˆ‹˯åôn;?覆¿ RéàïlÙ _K¿²ùÞ ¤5dT¶*|ø°í¾{¿5—ó/¿›ÅÝí´ÙÏŒ]ÌŠa]:¨d¡‰¥•+øÃÔKÙ¡yÁØ|%ñ1¦RDz\ƒC›$î¹?†éßá;~Œ…ÉŠ·y&÷êLÑ­âCä™\Ë56ÄpßÛÊø¤¾<§\?m…ÇÿÙì O¶´Z\NÚ… ^˜ñ€ísÅ©6ï˜{0ÝT2á<|º÷|ï ¨1ÆÜºšÓˆ8€Ûc½w‚N=êAŽŸ 7±8IéÈ—¡  ö2Z?[8ì¬o ±¹ž(‚ųˆÈè4ŒÎi$õ‚È# æ-’´(˜B¬=KLm¯Œ.4¤AS6Àç¦l­6‘„ª"¼¸z­ä®V-o›l¯\`¼ê^›¿/¬ßÂ5[j“êñàAõ¸ ÿÖî׎Ÿ­Þ8-»±’øiÐÅm•b,_ô ‘—oîãñòþÇâ/שF!h™©OÑpU-Æä½ …GX6Pzmus|ïB7‰Ún˜vqËÏSœ'â’Þ9.Z[ˆ¦íè[WÔÒΔâA*Ï5õóon‡•n/a_Ô¨ ã¿‘£|ÿüÕ“œ_-xB%“ÏB=œ}õŽÉ9è åÏ/ž×ÝÊ”UÐlhJîYïè+”5Œ>#†ç%Š ×Ü‚Vãt»û/Ÿu»eá—3%Ùm°½ ”-?ÔÖg ¬šÓ\K0»®Ö¢MµÛœÌ\¡ru5Àêë"pˆ aW³Ëºö3^ÆÅúL´Æ+¥Q‰_½²£S¸[€q%™;ÜûG?¼zv¨c†Ú:Û!Ì‚L¨ˆ¨÷°J“EŒ#œ!’mfPËu`<Ï¢Gä<©¤—È1!©N0 1™ó UVs Õb™MB:¡¥š­·c4À_€R!1 Ù‡-õ' 37tzSÔ\2ìú°Ä:âE”gþÇÃWo#„G‚R3€qñÈ ü¤érà>þEéž­‰^Ôt1Ð+Ý}Èãá¥;:;a=4ëk} <p[&ÕsEÿA“E?ˆÆ ”áûÓ±Ù'Ráooš ŒÈá  øìMñä*èÌCÈU;#Ö­±¬2’¢I"ÂÒyuøg•’°²qœ¤nL¨› ¡ù…yGÚÂA"f}€<ÂË Unxâ\‡D´€ö)„¢ƒ€Òd,qä¥íVs½ùÍ ¤   £K݉c0Ä•g‘Ö$÷QŒ¡… »sØ4ªÝ›N¢9TÍ:dõ`ßýÎKRT‚¯ võD-(t¾¦"›IGúŽâ|ß¿¬sG–¡´B˜G Ñ,Œ0ˆ@ŽKäHeX@ Ž›ý¼Øo›èÏÈE…êI?F•È<+ED2ŽÎñ”î¶5Ÿ {=©mÇqÑt¼-Ñ^b‘!ÆH3ç:W/@ÞÜòKÖ»ìý@ÉbÒÆŠõêzqÓÝ“ˆʬƺiƒ¾gë™Äž|ÏhÔ«Y;Êkƒ¨ÏÜ\z¥ "™úý`øì•£PBºÙÑ(ýD…˜.C§˜¥xDç­Ì¡uCˆÄ’=¤éH\{|9Ž'íªáyn3™^"MбF¡® Âê…]›b&žýÕ9ÊeÐ3¬ CšWÄ–Õ¦Åf†¡9û©{C•úJsUš"¼°þTäÂ,š‚DGE´s˜ºå;•[4}|ÿ»j™t¸÷âõó}„ÿn¾Å$;æç>t›«ÌV|‡uNAl-ƒâ𨠊,YàªÚ¤d®k-J¶g¼”jsþÕå.âµBãÉ[á'°,ÔFæµFÔkX=g­fkâÌW™r"G–b€ï!PÔz‰ƒlªK$EaIMÈ<öÇe¯Àk)“i”$Š„Udh,J”µ9•òoÁ£1FܯeÇá/Ÿ:ÎAªã¢ '„¦g@²ÂI žcÒŠŠ¬Èâe‚g^øc÷ŠͧÏËáú žÀ:YÇ[]º ÑO›ÓñGÜ,XkµâR2ºËã cÀÂðåWÿíóÉ/ŸìçÆüoY â¿û2ÀâóÿµÖÚÃM;ÿ×Z{m£ýåüÿs|\04#Vßp@eÿÊøkR‚Ù¼æ¥ïÚ§‹µ¦Ešà@3r•`NV²^zÒé< F¡zbÜØÍ5%w¥Åׯþìæú<Üßÿ|\úr¸T+É/F•«óÒtYŽ1ÝxVÝݽ7ßÿÑÕG×$/Æ7fô2ñî68$” 3n$ ¤,³×]ÚÆ@8Av|9'Ò½=½ÎÇÇ#—ÈÀù@òùÈä ôÏÕ]o–F ` mÌFåéf!ï|1Å1»!?™êmNº1·6Ç„õH¬u‹ÌZŽY‹Sk¹—ZË)I­å~|j-ç×N­Åò)QDMÎ¥ŸÖ‹vÂ-÷ö ·;á^U, v4T¹‡²|U¢¯½àë«å e0z8®T÷ƒËgi2÷C.þ+Ð}mµ” $u˜A%Ë2m³*9eM_IÝÉ_xMê|6»kEdÒ÷ôU@‚zlL]Ÿ)‹bdÄ-’¯×Y€íË€>úwvq_åFÐ}_Z1?â”?<±ž/ O쌗Ò5Œ¸ä%)¹.y)?MJ^’’Ò—hÉ`Fn‚·¸õK x]^gD9Ûƒe,¥¸|X®|X­rÌЂäÑiŒð3c\©A®Ñ×îý’1>xLÙôÒ6£È §ïe!µ^T¥3–¸ù-z¬Gjrf†`­˜^«5vzãd˜V××ðkÅUl‡CrS¿=xÜŸL«Åèit^Ý\¯aìôµ$«{n£¬×쥚Š2œ`Ÿ:´zFL7gà(?í¼H`k&adÛR×Ì I«HPºâ  )ÐÓgUì®ýºôç¡‚"þÎßM€ó§Qºÿë&þ9{ê­Ðÿ Ï®îl—â¯o}^„æñµ2À”’&ŠÔÞøâ¹^»¶Ýoô¤{ôxõ]º`±Íf= à0Ä'ÄŸ+÷¾;º÷CçދνÃÿQ!V:šP©ûÍ£¯×[ÖZ-÷ãZÛÎ î¡fdž"›¡ s†ÄxÇIsoÜb>·ZoŠ[âgà>4Á¥Ã¯],û î]w*9›Õ OA‘$êòœ$)8Uœ'¿±¬ü¶…™釴s›™µ³æ°´iaIâhü㵆ڻ¬C›Ö³”2”±·½ùd?C‰{+rŸÝ€ÏÄŠdl¶¡3Ú’Ô®ò'×±8m½k! é6ïçu ¥lQ L„™¥êœŠ¸ù·Ýo‰ZÜŽ‹’}Í¢š%Ù65à æ@g7*d¤ï–»ïE½)´Ù4†Ñ@Oº…Ó0/à?OÂÀÚ²T·hwOýË.Úæûþ‚¹ …±¨ÑYؾqÍÿ*³õKÈì×;‡,‹Kx£alÙ˜P$¹š~³dç »¡ƒj¸¼ŸCì2) ªn&d+ R‘1>¯Š.2W˜‰¿ Ý¿Zm_S@Á'K|DtYE²e±ê$6z¹œ@SÛ&—Wݹ–‘„ì-ÚïÝÖEë;¥ÎÊcšCµGýpß4éh(…5ÂáÎzÀ3ZuFpÖuÉ,ª`g(ÞQK¡ïVZ¼Poh<í‡ú `Ö#»¨¡,“ ½{½¥â’crtwðçmÊ1|Afby—eÌÝœK·Åºüu!,VqˆñYäž\0ð=Î؃^Ïgƒ ûô;>“|ÄÕìÀäš+Ù‚hºà«O¿ƒÿ7>l­^ÿõBãüsÇ)ùfä×úäïÿ<ÿÓëÕ½^ú\ýd}à}Ÿ‡çÝÿáû2íö£ÖÃvkscsÓmµ®on~å>üd,øü“ßÿ)›ÿ§Q>Å+ÜŸ&üËñ_67×aþ×6ÛÚëë0þËúúÚ—û_Ÿã£îÁ¼S¨pžø’ð/ꊗ¾ü´ülÿÉÛïs÷¡*›_·[èAf\V`±¦ª®+Üë‡Ã¼{v¥Þ¸Û÷œ€4H ¨{eŠCdñ•¶:ØÑN…v•Ì¿! q询È*($_V[Â?Nþ­VÞ†1¨Ð£0@ϾœtÜÝ«w”–C@kï¯+5Ã¥°äþE¿7ÄóH™—/Œ³àjn5£.y*JÐõi”©guxÍ9gXhǾM¤£×y5Ë뤠Ã4Kï¨r®´p½¯YÀúá0â´>ØÉ)‚‰o¹Ñg0bPºÞý_dž$[nÄ,y×»URAvå… ê*%E«ÄÇx>`rµS€}xÜ~§å,ì"Ià³5~ÆÉ&95EUÚXÔÈ%&ö'Ñ >Yìé>Å>)q/ßX…‘õ^åÉ&ç³6*é]jå:#ìÝ.}N½¬Ù¥Ò)4¡Æ3ho §d¤¹ô×U¿|Uñ&ø-,†]½œ?‚ õI1»©Šz¾ª¾²à1<ÕªeÔ˵«ü6 Ü"Î<D£ ±i5£y!UÚ¢€ðjÝÄ>:SùnéúA(íÅ’­#sÑlqUœ¾FC {ŒžW™êÏðjùZªƒªH¸Ðdæ_ô}à*5iž®*ÉU(Õ ­ª÷ù+¤FàH 5ÒyM·-›ªŽPQ/åP*ð4[–VŠTÖ§8,^Ù ™\ó*ÏÞ¼zýúàå÷8À‰¹f¸"Mš¶Ü-«’ö1¶3°Š½ Þ(òŽTª‘qàé«gûBÃ]mŠO"‡éÞѤ_Qè’l§€-®©"Љ`á]UVÞ'޾+äV»x 5é¢R× g“žg°è–é„g$ë”x8×ØÊŠq?ÒåtüÒ0Þ‘Š‚ lSN@ª(¨­YÅÊÖœ±,wß­¿B6;âÌfú¶RŽç倴ú&ŒPÅEš[crBÞ•;¨g4VÚ~E’dƒ<<øþªÛ}v°ßíʬBÍ·Ž)?(Š%kNÏGçæ»»šýíöÀseâ‚Þk›‡2žð{5PXGÝZ9W ÿ3¡UJ’€%K¾²À‚k§«¯ÔK§RÊ DêïgkfÏBá>f€Wå¹¹C¥ZÏ !Uð ®zÕ¨fï7m÷T)%|Ĭ6vË@·BHX=»S¬è“½ÿvÛÙíæÓÀ5‰35Ž…D„ùáƒlo$-Ñ$ZŒµ÷šX/.{—}oÿÍ]ýkõ݃ÆûokÕo·0ÎJíxpŸ®Ü¯}[}·ï¿ç€¥öíòªÖ1'Z‡­Òxª‘Åʰ¼BàY¸Š—¯Žö Nþ(ÇÔxã¦ë>ãëãÈÛÊ«ÜÈ7ïÔ_âm}¹¿..ýÙº\ˆ‚ªU^÷b¹ƒ ÜÎ’éjp1) ÿU[ØO¢þ)N}!Öĵ•nVŸï*ךíÞw8\6…¢ ›ù^8ðâÛŸ‡X$3jâmâÇ{#rA¦–‡†ÑÆåDq¯ui´ðªÝ¹‘¯î]/BIÕ½'Ê^Çç¤&6¾ƒî¨Åfs˜[„, Ç—·e8†zý¾?Å âÐðŠ-»¯°÷Bæ{ ê€P¡Ás¾ø“ºñvW³.+¯6Ý·›ö  š!ˆ°ŒÌåÿþ½Ÿ®Òµ:òŸåu„jÌ9l(_nöÓ@²•‘8TˆFrÄ€Zħé(…Ö^BÙaXФjL4sNž.-Z´Z%G1¡EÖÖë³0fñ‚pš…ʈ‹1$®rB‚«G»7!˜ÒEd.rˆðLð™½*áÐDÈÔ£è)äkÆ®JüJµ&¬²@Š$*9ÎS€€¡É¸*Ѻ–óMðì)4ùxV–8)'eríëö€×£ü§PáŒæ²éàšŽÔ”eèjëˆßí=?¢¬Ï¡J'Ó=V-ÁÉî¡[—» å3Ã4RxYÅB²]¢HZ¥ýå¸Ò±å÷zÛ2;6@W÷J9c 8$±)ô ÌŠçñaî‡ÉO§WÅX¨óÃ[ŽÁ9œË ÒÕà3‚ù\7·ß›;½° ‰Ìvÿ4êGc‘ÀpctÒ…*7¡ QçÞ¥=˜p öAÙ$·Ãf©è0O\"Û¨-5xƒ’ÌÍ3ÊÂÛàÑ)V‘ƒñ7*G‡¥*blB'±=“ѼÍV=d‹Ž>0å\Îtõƒ ¬!UÁ›7 xöÈ€³p®Œ¡º¥8y$ý³ š%  Þ³ £â³Ä#QÐÃÒb¤jY˜Š%[$C;…ÚíSw4óbèQ¶*/ƒÂ8i?V#‡½Ä3‚B¡$:b®JGØ@Lƒü*‘Ëp³É¨öF¢%Á?Äà>œõT"ž&ñcucf‰4‹T PŒ˜ÂrÓ–mÔ„go˜â~—'Ð@¥•©j\ÕQBèÛ¥äP1ƒâ ÔMVÙ­E*u Fª5¨KÜÜÖŒs³žkßÁöq>•¹¬™fÀß]yú|ïððàå÷ŽóÀM³G Ë@eƒþ%Z?LÈ/ZwŠŠö Êò‰7å°uŠòÕUµVÏÙàaGÇ—4 (Q AF\äø¦ËFèØûšC€Ea jYO÷ûÝÙÝø*‹£&…RdÜeyqž?¶µÔ’»5¹èÑÙ?~Ÿÿ·¶Zÿe­ýpcãáZ‹îÖù?M<‹ÇþÈë_:Ž:ß¿˜‚Ö…Æí݃Ã=v‚QÏjðpÿϯ_½9ê¾ú±(—Æh`£.Ÿ¡Aa8” š$©²8Ö”½rOì.·ºÍo’Yã€Å©cDAöÈà•;Äcz:Ê\[Y¢ÝärÒ‹¨ÿªñTU­™S> DÃöê_ß5¼_Õgl3å×ÈH]<,à*Ò_V'³˜*Œv:>}«Òxêzu ­EÝ©^ {4=´ä_îRàʳÒúÜåC›¡½ë&ÀUùøŸs'\V˜•òo7´ÑÓ”ko™G?Òq#×±ô:ÎiºZ³ZA;1 ¾V=>P[^5N£Ì÷®–×ÈÙ¿-c-N†\ò ‡óÊÁ ^ƨ‚Ô-wKö˜DaÝq4"ÄâÉœÝû UZ¹V9Ò™ ox‡*eïð!å ïP%~GÚGÆz˜$£Üá>inSXO}ŒBµþ殇˫´üa¯Ç€+ämŒBÖvôñ‚ðŒú² rP_†Zð/PËÙZÍ<Ù<Ø>³ƒSŠ"j5Nþ‘О rcÒYÖãFØI/¹ ‰²9ÅX V¢ FãcDB%<gû`†q_…u8Úô=Š…CMƒÖY-«Ô3DÎøBÑ‘RW”x JПk¤ß…~Já?Ã!Úà£0H#peÜZÿAá•äR…RjÄKÔzgìG“ } ݬÌudçåÜÎXÐëù jM¤çK™„ƶßSãÖùù4"¢}ÆKQ-sž¾6:Qw™ed 0Ú¯íÊs§ªã7brÄsUŽw­WwjØÇI0_ê´(ÀQî…dàXÒhE R5ï~Ò?~8:z]^`Ô«£ ¡ô‹6°Äìr9„x¢Ç|xL{Qˆ$‰ö8º¾<óÐH‡­íì PöG)rÊFT(1¨2¡$Ùó‡¬|§âK+:1EѯùUh2ÅGØ&ß¹›ªâpXX黃(O30Öté<^×o`RêÙdJ Ê8ólÈK¦*ÊÖEsZ|Á«Ðù¶ÄN]gž:ÒÏÕ#KÔ­î ¹9TWöèX§AÞr3eoSNU§ó0¬NéPǪÖ8¼µÊvWÆU­ÈXº ) *uWÎõåèG¼¥Žr¯k[sZ` t1©4±¸ÕÄÈO«ƒxñè†P1Ù.Ðv~m)ôËç×úÌÕÿ¾ûdé?oÒÿ@\Ïé›ëí/úßçøõ¿ï8ý§Ò1¢`Ä´_Ô/ŸÀ§lýÓ}“NÃ>I‹×ÿ£‡yû¬ÿ/öŸÏò¹«hÉ”>aÓô;Æ{íòå[©FñAQ?‰ÑbrŽòÙƒ€àIT#IHQ©¢ãwub6ðˆžÐŸSS:Í@5Á  ‡ 9)£z?ŠIΚµƒ†$|œâa ©\þ%'|;ÿìtðt²™å] äÖÐÄwê@>YëG-‡Uš²Õ]¬Ð’L^ão¾{ꮵ6Ö¡!ø»YÇÑ¿_×I¤]k=z$‚qIsÐÊíÁt:vÏ¡L$ðBÔ€ƒQH3ÁK³A°¬îм`äcj ÝÈ—öB3èìªêÛ¨d$ÌÚ%á öÏH)¼ïÿl—¢ï,âÊ~šF““1vˆß …ðÕ,‡Ÿ…*AâãÂãä¬o¾ ?í*³ô¤Á'XÍ*ëá]ÙF2I§öcߟꂈŸ4Ú_o´ì§}¨§º§v±?s¹ý8ŒK:€¥…#6Ø¡Äym É_œ–ô,ªô!Fu)\öü¸ï%'ÖÓw6ÁÀƒ2<õÓ®Ó÷ñ0÷Ìï7ö£ÀG£rðA?Gƒ)Îúö(Ó¦HKøË. ¼Ãçç€Åçíµü³!ºýlZœÐí#›J†^’â€`ž'‘—«L§šæ`.t0Æ8øc•ž¬­mØÒžÀòAÎ6¤§Vq0òíþ‚I#H0¯U„É2 à ÂQ|ÒìO%OAÛ.yªTÑ’¢³IQn8Á4÷;™Ù~ôÎŒ)ÿÑÜIòãÈŠœ½z:Œ¢dÆ,… t¡t%š#á÷|9úè÷‚ðÄ¿ØhA•“Ÿ. ňn ­iŒSÔŸ¦ù ”–'rã>v9‰û¹çx€ S±ç†=wÒ+Ôɸÿ²+ô&Iö†¨·) Jm5˜Å~ƒ§é’iôÖÀçÇËËýðÌGÓ"©t’œÎ-˜?T/÷°)ñf a÷÷©¾á&?¯Ö¢¨ÒÀšaÄz4Èý›°]ÐtÀ_»÷å®HFÅ×°” ~Fh&éçk§þ¥ý$J’Þý/>E±€¬Á…"¨ß €ce²„ì²éÉð7×ÑÔm4ÈØôKJ‚hPþ´q1Éu‘œGñ;D}wåJ/† ÀÅÐzzIa ¡ž4ÒØ “I °c—&ö@pŸ–ŽY Jø\ÔOý´’™ïM0~›;˜$îøÄsÇ?ŸÈxLBÿ &#Ïô韟]^Th–9A!D„ËЛ€Ä†ƒCxK@™#ÿE€óÔˆå!jTç~$©`ˆe~„õ™oòÊ~°èÕá,ˆœ?„GÆ{ôì½4¸hŽ` $)D!,yÄæE±æOÇ1e1ÝSU D÷bÍØCßLÎq ðo±Úl€LQäóüœÎÒHDûbÙY€‡¥ÞÏ|š”â ï@ ˆ“b5š‚¥^ɨ¼Xr›Yh |}¯×ø‘ÙFI¦`íOEð¸hL‹ °Fü¨‰·ÏÇAØo²¹ížÅª'þ6„ ûƒ2LôO‚i8K“æ)LGt ›Ùt“IΖE5Ñ>òâØ£Æ.K*Ä8Í „ ÿ¢dÄc"Ò àkIqž6ûh×ÅÅ ßÜþÆþÂSø¯¸´éÅÊž—¦[‘ ØV ZŸúM ¤4I#ÛŸ$#^¿•TK&_ÀÃZ“âÚ…¹À¬ ÔN=-®«Rt¾^ä¡ò•Oo¨<õÆ ¬øT·„Þ¬º©lÓ“Ê%c¶*£ù ç…§Tù¼¬2eL£hœ4Ï{²…×bմ߀-€ˆnZFr) ú¼¨lQÙ •õÆÊZ›S>%½zZB¼XŒü&'e%cž‰.:‹K ½DlS(xà<ð»~&ìçb-?ŒÎ¢æ°Ÿ€þuÍRXìˆú¡ß{³°R|#$óü)EãÞes2Æ5ÿË§Š….Á×b1Úaа‘$8€¯Å:g½¦ŸŒÊXU!˜@¡3R¤ ®‘ž® 2W=Fnªã‡'˜\º hPÕ‹"~$Ùt¨¹/οóÈø0ñŠ˜*”V½Ä¢•«²¸Øf¿ˆ«ô†N¸Ò¼n€ýƒÜ“–¬#šú *ðïœò •Oæ–ÿ4Þà…dñùÉ+î\+®€ø¸d$\ºIʺ”èž±«$?£0Z—]ÌOÖ]?]/V› "% ÖL*ûy\4¼qo6Á~^›SC$ ªS쥾¥2©o8LÂâ\ñoñé˜%šq6šWúp<» oIà̸¤‡%Â*‰á?Ã(FÅsXäxCл|¼ûŠ»ÐpâÒoº [\8Ã8؆x 2 K:”c²ŽŒÓ$ý&ȕ̾°•¤¤•Ù 0Κ‘—\¢È×Y£JÅù²*­S¥’ 3+•£‡‹kMc«wRÞá…G µ¦ ¿¸¥[6Ÿô¦E"ÏŠÜÂàßEu¢þ ¯m'¨¥·­’ŠÍ oK½²vÓÆ$HB¿¸|‡³Ÿ¾$K&"ïçâd`Ó¶‹f:»ð Å¥ÅF:Ö?Å¢(ý†H;iž*Õÿ´„£åjþŒµŠ+,­¡ÿõöÓÐýTr J´3:£3¿›Üãû%Û T:ñi¯WÔ@ƒA¤—Ê4•ƒ"ûT•CT!¢˜ì!gój¡àe4—ÎmŽ*f¢_ZBnRó¬ORçÒY¿¸âåç >1îú±ò,ý<)ö}Ò듪„‹…ýq£ð9cqBNNü&^•@¾D~5.Ù9O¦“éˆä1ü[^ ¸<(!•'\\ÚúãK>0/ÙÇ xÚçãƒ~i×ðøbÌÅ%Òtz:s±àrƒLK+(‰†tª;åpÐ8$%ÊõÉÏac}ÐèÃKrÞw±^jЛ4½á½†J÷C,§¬àqýŸ–Vš!hÇ(N¦E}jD¶A”8]ý]ÿz­UúGÃop « ™‚¸HPX5ñûx஥N´s+öûÓ8B  €nÐ/im4ŽÐ'«”ÐFMŠYhog8ø÷†Z3ªUÔHùª›?£èf<)×tÈ% *5±zˆöbzî^L‹“N5Óx–¤ÍA0 ò‡ã¹*aØ/=LgÍŸzx¹þS]€J¸½½ÝAwdžBÀª÷£lÁcû½X »Dù,êtšô£yÖøYø½¶@„ ¿×˜ö¯°ßýªÀWøÈäß= #² ÉÚ<Äf¾Ì&UW ädÄ—¯|£˜çq×IFнzH9Gkˆå|D™LXîp•Í#ü±Z¤ ³*ïç)7òNs¥Øe’{ÔËž‚WÓ*ÆóË=r4O±eèÙºX4ó°*ÓäSH¾»škËxª–,æ—Á„¤ìƒÈ_‚$¥÷B.jQû 'y†„ðî+†žÀ¨“L­&SøÀ¿üËá_•€€*(JdM& ?}¨#ëŒóéD$ƒ±g²N4%þ:òe;I‰Tžøf0#ÖŸ¼ûuEø5·X4Y†é,‰HL3›åj†FyþNKD9â`gjê¡y P‡Þù^N÷wãÉ%Ò·—B[ªõ%¦!šJßÝ—[ÛËý6–0æåüLÕrè…ƒåŒ$KhŠLM¦}joã[3–¤á_OftéA0¨OP[â Þ•ßø‚ysG£5YÑ}ðèÉ^„aŽ’Lá¡R$°®v³7/ åþP5x·À£}fäaÚãpŽ#†ê2ìÆ“9PT“ª´ Nú“°À$B¹¸J)˜rY°ò9öhL)8 ©Hu³Ç PÛÝÛÅùZ ì$žN¾]ö}Ð-±>?ʆ¨SFI‡ÜO ¢ºé°¨zÓÆ–‚‰uukŸL¡»‹ ’É„oJÜR8î\âÚƒ»Ë0_ƒ*‚)DC@`m³ÁÉëêxHFΙ †·Næ¯Ïu׸è™GY-˜QIß2. Ôå´I»6¬¢w§ÈŠŠx¶‹)²¢#Èc=’Y”uѬSã-­ÌM†Õ“}]i+O<ô€§–aÎâo}y÷;÷ª§9DüP•¿¹¥‚û¥{UŒ¦¤BH†Ujm]i÷÷ª%Ò¡E-Ý•ÌUùþÛšÊ,¶eU2¬êíuÜÞ«nΚ ï©Xº3%û¨ãQÞ¬«ãtëþ"ôŸäUÝrÒ¯žÙÉd6èdóK·¬ªŒ]2 €™_fÆÒëóQËá½ ä+å¹$źýÌS×{÷n ÛgŠ]¬ t”6ø½£d4õcJ[b’{¤J6;Nr#¿¼£%òï…ê`Ð}æÈÅÒÙe?ñµná]}‡"UšÃÉfûu¶N﬷îqjÀ陣ÚðžÓ›á˜ï*³n‚‡žóOÒ=¨3†»úö°ªÃ§)j ²õóFƇ9Ùó£kmÁY2è)Z Cè%reë.Sº•FQLîSºâWé"Q¼H8Ù‘pÞZ££LÑñ½û¼3Kž®+ä^ˆ>nÉG]ÌmÙBl] ^ÓšÏ&d¨\-(0Aona’^vß @‚>B" j†³IRå’ì2êòÍß©•ϲî ï\EÕ+˜? &ÄåÎÒš ûjö{ ’YZ×Yd]o —]ö•rSÞòaÙÕíaô¤š±ž+ Hx™¼9H²‚päaÅ v‚á…FY8õÝõ²Wa> ƒ4&1–¯5àÛûó—ù –ñË e:ÕƒØÍz{î]µ«¦@Ål_ý4œF>Cræ.³k8à§Y—î1ûô´tC…Áeð Z.õ²jÄ2›÷õµŠ×¥'9Ð’iˆx}¶ˆº°£‡;8Ÿ¹Çìa¶¼ìL%Â*ôç¯P´ÃWû¼Kûû<˜ u·ÎL Ïo_©ôНHD=^ Õï«\ý¾„¿Kø»šÀ¿ª°(YO×Ù¿<Ìóý|‘Àc]Q-ç°õÝtBC­À»ð°Qä¾ÚÅj‰dž‡OžtÑX÷É>jø¹Zt>¸BÁr²ŒÑô ’Ÿ=ô]¯ÉÈèÂsv‘G|ȃÄÃîCo"Y,Q²€h\—z&P²¦ãêÔI–okHÖÌ#z“¬Ü'ꑼÕdݘÙj 𽋠|¿’>ëò,¤Ã‹ô‰aMÚ 8oZAâP2=ËNG’éùêiƒBû,Hˆ—2­ÇMÊç×B™U'„Ó „bWþ`Æ–Ê™Qž'ÛI~*ùD×Í6úŸ<»œ³«úI9{0仫x¢ Ëyã€==ƒòç`©€þ]µ2+Ù¬Ì`ËÉ2FÏ]q”\s®Œì’Dzƒã@¨á*U£Ërw‡‹ˆ -¢R‡Ï`gÓG²’IŪs™³µ*þ-g•¹“UgÌW Ç%NtÕAnŽgz(e²…Ñ´ÜsÊûÄyåšf,$.¬d*‚¹r7 •Yýj»(ì—ÛƒÔ“Í—7“ò §™~B7TCŠ“Š!Ds5ÍÊS<͈OGÎû¹è«éÎCø÷ÈS.¤GËiy!;‰C¢r§qyM3­Ñpá¹’ŸaÜÍù„}*UG‹!ãP|Otý´’M^*iÒòð€ðªÇ5¨,BŒcÛUù~û (›Y¢~V ã[–†2^àoùU()§îHrm=ܽ †34™ç×ËÙÌyÜ•ç`ðP?¡ý«~–°ðò­~CΞúAF´$Ðs•¡­'/vž˜Ç‡ú+™O“a¨ßcyùŽ.4D!-?ei'Ìv·wv¶ÿZJÚÝ~¼]NÚÝÙ©&™VÑ#y í`ÃE:p;¿fÎë¶ó¼ã<÷Ýg·Pß-µì^¶ oºàåÓÝ]çÑI~hŸtÌdÒÛî#÷íá®ûöhÛ¾ýÕ>~ç<:ùnè<ëU¹Ì¦ö©Ž4 €NAÇe.¥Y/®‚g8W’ãøqåwr€®çú1ͺY¤gö÷A8Ñ@•†:5ÍÉ{k'³ÁtǬ&ãì˜Wýålº°OÛöÑØ¬P5ßy´­»™?Ôíçá$¤»ÃìfO§ÒebzÔ>ìèeA¤+?º¸ù+òÍG3'íQæ– §+$ðM’3ôŠÎ9»Ä%Ù´é$ÌÄTú˜¹™qÖ âÙN) L7 ¯µæ€¹Ý™¢y®ÍžÄA76NoÜ4òÃ…§CVLíŽåÔÈÆC'z Ý~ý7'qŒ=Æ7'm2 .AsΓ…ûÙ‚õ:+›f×P]×SŠ-*+»†³RXæîo—ØDàTƒnˆ ðè¯Ûè×<ûK=}ôÔ”Âg©ïžØ¶ðÙ)…~™'ÝÌ  Lû½é8Ä»Ÿ«néZ«mÃíê”YLWÝÁ"3«¤ý(+¼33Jj’–þJ ðÂш]´ÂƒÂü50ÙøEqÜ´1}8·éÀ"+imUHfípIž±28ÐQÒ`ªRv/“Ô=ÎL ·çè‰ Îû qËÜø[Hæ‹Qhï&OÅ—4>3&’>)$g:=+f̆}J‡¿nòêú“[ןjdè¹Õçk`ðWR—Snòr*)¡/ŽdN/ê$ ü•”(äø+)¿£Ÿïãƒúm†ÿB“75O+yŠƒÙd¦¿>‹¹.üÕ)€Éû¹ôœôYÉ[¶¸Ôäp p^,.õøóÊ“3|P¶)|íŒto’[HÀÒy‚¡/°Cá6_0Þ®“4üN‚¿Ü¼% þº©âÂþ:©èóµi³×Q?ssg¼6£™ÛÝ9F=¹›j¼ÆÀF³âéYø}[¡”¤ÞðÛ)t9IúÁÄÜx]öLº&Hê‚6z!Ãí#Æ;H˜™#'o7Ȱ⨴A|YI,¡$ ˜k‹ºEnÖð6YÚmB’\ 2+ó ܪsñ<Çx$srLW& g…7Ë 1‰3ÖØlÀ_› xáA͹ÍÀM}ÔƒÆ×ӀݡÇÓjv?Êuvß“ ë'Õg—žìY´Òµg6;½d4“š5c?´±r¾´²Ml¬œ6VH$KtòOYËaMÜÞlË?5/Õ¸èU!òyfÓ£Œ¼;sÕ)hŽuÃ(ö“áµIe¨-½vÖ}Dgßõ-)ÇQmuŠQ£_Ð †yÁxÆ‘Ót4øë. †6BàÑû¾ÉccjûžGipiÞ1JóU_–ÇAà‘!p Ù¼ …Ãa¼ÌÅÆát¨A¡i6Vø¢²h’H&£-APË‘“:òoÝtáD²é—¬”Ù€¿njÖ-%äK.–/Ô©¨©Ý$¡ý௓ŠöâY2Au>´ÈÑúè¾µ Ñ;%9ãjø«SS9=–éDáKM<ɦùV0!ðÂ`n*°üáâD;©ýk(‹69™“8ÄYÏ4ÂI#ÛòîcÓÊÐA‡“xµP‡;™„n1@±u6 vP•\(A´°öGUà Ûr O}ôŒú’ÃÂg J2°„'ûby¥`—7†/ÓŠŒ¨ÉŽà'[&_'Û@lä«År9Ƨ©a8"×Dj’\ª(–Â@ŒpBbÀÐQÜMaæMzPʺy@çñ0“öSÝÞ›fsstW®†` •¤æ#ýPâ"%UÊ¡çz¦JàAÁ/NFÖPž‚>¬/®!^ŒX“9íÖ\Ïcž&šjQ9°ëð¦¦A¬ÐõŸôPF~N#²r§ð¢à_¿&R–¨›þÀ¾+Tó6œ²ûañÉjÒÃlK3`[Ç4ÝM®™™\;‰Óˆob‹¶f4YÙL"(¬— ›Å»`a™bZnÑ”âa›…Î…óÊSb¤‹X?TÄt>Ùs< ±«NFÆž´´?j“$Ë.±ðä‹x@NXè‘bÇëR€…çèœ.fÎêhðõÛî4Dƒî‚“ß§:Þh Uíå<Êœ±²ÅCé}R|_ŠzrZM·Pð…³ Ë˜-È<éD–+Ôþ_­Ô`6Sc5«a4ÐEq!žåŧ OÕè»m]``Œp&m0>¹NG@V^¾¯: 0žÞr¡ÞJ«Î|bäqÝ8Ÿëä…‹§0\žMçJ(°Ò³q‹|QX2KuáÁIêä¹ó¶+%v%­O̱<çO?‘gà¹ûò8\ÈÃx÷É£>x°iuÚC'­³óÝwußw·Ñ7ïtG’æð`— 'Í©¬˜”˜"“6•äéo<&ø«¦ÈÔIòl'3»3û˜›G#+Tðo¿.Ù¼E'´õ\øC(ÿ—í@•Ý…SÆŠušÎõƒ•ê{pÈ{Bf²òF>is w´ñ{®¦‰®ˆÞ¢å©ŒÐuòJž²)œÜ»ßíê)ôË/‹^KB®ƒ|á¼’Ø ÇP”9飅ðo‹ÜIE¹½9ix¹vØ|ÚÝš±vv¶w¶ï,kÿØ[h÷>-íÞ§%U°¬ËÂï:™ï–Y̘¹9V4]ÍÕôÑÜÍôIí(µs×@.©#TLÂ`ÛžH v™X.Fï@¹}`¯å>kSzèàŽ?ùQ5•©åIJ´-q;¿ˆ #´H'þ¥›Cx¶F&ÍzA×#€ÐWnÖ’·þrZLñÖtQL Û´ØÄB’n2=ñW¶3Ùe¼ÿ"¢mGµUÇ’mH2c’lNÐzôßåyý/þ÷k\² Œ1ÜMÿ„oÜÿ{çñ£mŒÿýðéöÃÇOžîRüïÇý'þ÷¿âGhAë¾·g~¿VÃ{ÒÀó¨ãrZaº_{qr~¨ž«ß—MÖ‚Äã¿¿==»àt ³¬ÇÁ0)Â5?fh4±²…{§ÿÅåƒáËáÑBþ1žÓH7ÿv|v~rúªÕwÿúðqz8ÏB•åp¢æû ýÂía¬mHüUËh2QÁ$KTŸb~>‚´|L1À›˜¼;;QL¬Ô6(¾H;isŠŒiàB÷àP$Nb…2Ƚ6ОBv^±5èT4¢C;?C¿Ã `Ïøé›þоRm xYÍÂðJ¹ ù<˜PãÒ„Ú‹ÐÐÖ¾ñ7'Í §!‡ÙÄú=ØÁãÍ­ÍOê ¿ 5ÊÁ!ó`ÑÕÞ˜"ó|¹0,žÖR®´? ²µƒ ¢¥TÛâåæ°»Ã$nä Jã4ÆåúÉJÐ@C ]^¬Þ®Ák\]±Ü$äòGÏ:êm˜ã7 Sô'­rËÒu¹0£äµö!,×1s¥.ÎÞ+²¢h)ú(@5çÖNžY†îåz†¹$ŸŽ„Ûé«›§>€×|œàWA-‹¦Ñ$HQ> þ Žžq€¸a¥Úla"+\+1–8£’V ¥°P¸h¸]½]–°©ä4év»ÕG­ ÿÀ#×ÁMˆƒEØ‚OiHƸº9Ar ¥6ÑÞnÒf†°ýK4¢®_°°ÓâÊw çAZsö˜Û Vd/„3"wW¯œúl‰¨¦ŸÏ‹ƒùî7p®6œ Y :4…(¯Ô±¢d:˜'ߎX“xr]À®ð ÐåJ´VѬ9Û•{¸ã‚jW¬¸µÐ€ À¡|4¹ÿ%†¥uæ¼[“yÙcÚÒ|¦¾Bgö“!š^¤€ÝPô‡¶¶¨kÑHMÏ4.+ôî‹:Ëlðs¥c…OÔùÒ6õ¨~ù©n{R‘:k2:òÍBœ‹Lv 4oñ¡ñZ5BBûò,U>TG è–Ký[@Båèôí¯g'?ý|Q«%³k ´§v¾ûî1Úƒ|§~Š2˜•à ëÊ›Dý4:w[¢¶€=lí«kÁþ)tO£þ¦Ošx¸•¤59!Yº”F–áiŒ×£Ñˆ±r”gád_ûwkáþ}?~ýï´¦¯£Uÿ) àÛõ¿Û;wž¨í§ðóp÷ÑöSÔÿ>Ý}üýï¿â§¤ÿ5 ¿/šªNj#JìûY/”ï[ª¦&@&<ç*ƒÏTHd¡Å4]“$KE ¶±¯™´[y4Óq`ÒøM±O 5¥ÔÁèDg¦'àÇ$OkÙ`u:j¿Ÿú/g­cÄÝ/AÔ“7B{¦Â »Ö½% Û®-‚4BM“Q†~½ÉØêd™q]Ñ¥öÃÐc6×€±†ÌaòêN¥#8‰CMtI†Õ“—À ÉëüØ º>Âr³Á¡n€¹•…i†§HéÕŽžQS]düà ¸tÃé e‡Kn®Æ Ëm2É‘”wIÄÁœ½Ép¤@žÌÑl»‹ôTèe8N²?F¾r“yfPó|Ûa(…FôA÷ïÞÍ_þãÃÿoÓ$OÉdëOúâûÇ×â—;;O·ïl?yôí?}ôðÿQÿ¤ïßúóÿsüÛúÿ9Ö_wÚ=}øø!¬ÿî»;»Û;xþï>ÝýÏùÿ¯ø)œÿzáë¯êAh­À<'aÉNk÷»²>éŒt$øÂBƒsºôUJ<‡gbÛt¢Åáð‡kÖ²¨ ý!¡…Æ´(žÑf6ph8ê(ÊFKªó  rÈ›>Éÿ?×6lãºZmcÐûäPŸ¸Â©ºFž04!X{aÔhüJ+} â“u˜hÊ¡4Ôƒp 2âP¢BTpÿZ5j<7†5‰pU¶Ã(TõÍâºßfâ6·ð)‹°ï¨Ö9`’³µIÁÆ’Œ6íÉÕ5ü R²õü†ŠÅh&óÜÅS.Âi”–XZk¶o‡Câ„€©A>$†C”ý¡f(fÄ> à\SO勸¥ÏÌSv˜uiHV£Mš×7lù£1tµŠÎ¢:REÐ2ç³|±™ží©‘;MÒ2ºˆ1ÂEmêoRéÏÔêÍg8jáÐ1Y7‚CÖ´nWm~À½Oá;¹°1€`'É’ÕÙ<…´LІůDC×ÄΓø+3€ÎA”õ²9±¦-1ŒÒ?N¡Ï²“{(¤”!Xíì›7æ À•>KfžôÉ¿ü1¾ÌÇü^þ)«ÉTtÜVõƒ:O3ž`Š ž7y6D i`ncOm~¥·A?ŠñRthíšf+‡ÏîPØn4Ín>ëÄ^b¾“ºØ-ü‰Ÿ ã‡ç;Fµ}…¾Ža?Þ«ã¾vvªÉBF˜×?6>À÷Û³&çó~« f¡C²ìÅEØØ€žo”»\ #ˆïN_7ÊÐñç/!÷ö/øÝ&-X› ùÚLµôx¾l9 c K¡|‡+ P"XÃjÝx:ënsæ‘Ët÷ô¸›u3nVjÕœ¤É)üa3ÒIKv×nþŸN;Æ‚öO4ÍmçÀùϺ;ÏëÀÅÅA©Bq«íýB.£<ìlŸu Î+”ÿ:»Šf½±3[b£?-ýÅ¢÷¶ 0µ©óË3¦íÞÆªI+æY-œ®ÂZ•ÛÀm`³Éü¼9¾©¢¦\6ǰ0zæo:M÷l¢pªí²ï{øó@!%F:t–Ügá±—"‡ó¶êŒàÛo=›©¶þ­¸Öß>7ˆJ±=šqO®ÙÔÀð½]NniKà š×óhpUo7Ûªc†ÝtŽn4.´zàìÕvæ·•lÚfýˆ\tûÌuÁá§[©·ªÓeÍÊ«S&T #±OSÜ /8ŃÖ­éÝ4ì}íG7ö¢öÂÁ8™Î8ÕdÍä4þÞy…C¶¿W ÏtÚugR3k©‘;ðÜÕü™%j°—`P‰ ‘\¤×Pú‰›Å |CD‰ÎD>Ö¬Pš‚Ru7uÈ(¨¥Ngßä~Pu9JnZû÷±3²ŽBÛgÑi Fƒl¥9ò[õ+%jTU·XéSQ×¢Óoµxã­ÀýbWÑ6ÈŠkV3 m¨†ýs·V#ã’Æ=PlmS±ááïÌ3´>zV-Ëqï§“Ö[¦¢yáÖØRË0t5Q 2m “…é"°%•í’…¡ÃóIÍA×H\ÂA1æÒ;Á4©)§<ÉÅ©ŒçñÙ‘/¢@Û¦á ÄUìÿ´Š©h²²^?FB©²àEY-n¿4oÎÌÓmGŒ !ÀçL½:Ìä:$t ¶ˆRºjæ€5eʉ"ð‡gq’ ëŒ M²ã¢Éu÷ÖÎZa­vD  Ú”K&ž·šÞ@d­Bì¦ VA.ß!<²µ 7ŠË+£1SÛ&éR`ašVgš¤Î—k£€\/á&@ë'gúl“dô¤!à6ü%Ù˜ñÄ\Å5¼… βÓréi[½çÒ¨ý)Ôf'dOæwq™u&¶}"ç¢!˜·Ê×âÒ±/;«ÛíBì)€GúÌ@Ÿ.U•ÓÈ=‡?P³A6ÈYFò—/¯þá/šm«íÝGˆÒ_FÙŒâ¢d (@#Mki‚¡0„ÈV¸‰Vb„_Ij¯_¿ 9D˜9 5ÓžŒžô5?–•Wdí±ì€`GñŽtÑ”cf ß0ÀÃ¥°â¸×r÷8˜\ÃHÈà’­ÛrßM¡¯i×Óe8[VcÏjˆ{c¡XÛlOêö²Q™!—äÅìÀ †Ú©a;bL n:A­é\òG´Î*üÀÚÎ*ò)Uü(J òð7a4kn¿V´5­a S…|Öi íyŽ©))'XÞ®†4ʹ|¸j«PÁ›¸úĪÉD¨øGØ`@ÄyžEp ñ.)¢Á iÙsJ¬¨“š¬§Ò;á8h™:>ý×ж^w\ §³ D»2(!êØX˜3{4 ^´UP¹iÚøáÙôœp ~ƒy² !t9­|‰\D#“ˆ|‚Âf‹ˆ¼H"؈À’M£ž <ˆqkh½‡‡“˜ Îq-s±P6;<ãµtz«²»—KÉy>|›’sïÎdN÷eì,üRo‹å8™„¦.‹ šHÕtCzÔ4‡÷üÊ%RØÂSÙ57ÃAૹ˜ÍYpCÇ[“^”dó|ÅJC*‡p …ݲÙåùñ±:|u~Š;xÖärÙ¢`ëA{n†¶àÐt)/ÐSÙ‹’ N(¦Ä勾{+ÏÝíퟕç¿[ÕþåÏþã,é'ù»Ã?ËüãNûí§»ÖÿÏcòÿ³½ûô?öÿŠŸ{. _6ÿ0tQÅøÃä¬sÑ£Ûùå—_¤ù³9]ZÔÚÒƒ¨žj²1ù»‘—ȶ@SîÞLã*¨ö ö@‡‘\q rÁ-djH;IA¥ÙØ£v´-kcN‚ëÆ JUÎxCEih˜¹ ÃØ·rž!ª‚|?ȇxVM£;Ö-~+ÅIäo©Ãòäj¦éAÕ Æ29E[ݯñÈÊå^ôÔ3õH´Ü¬^ÅS?«m¼€r¨Ž$Ίi êJëÆ‘k/cÓ…Ì5Š`=fÚ´`hØh ü4eÞ¬Ó%ë&¨_°Œ(ëuZªm¸Ma¡Õš·çÿ­¦[^l9A¼‚ÏÄ SÚ jJw¬¸ ¬[8+6éÚöÙ-¸SòŽÓ´¹ŽÃšâR³”vS5]*‚(‹ p ZŽÑX8ieÅÉ…çç2 x]÷†ÇbQÓi.n^][†2´¡ÇÎ-fÓYWrRñç2~ly —ö‚˜¾á€aÉÜŠʶ<d<àZص,W°SÒ.ÚP7î´¨/ØÎŸ¿{{|¶·Çó…9;UvéÑ8ˆ/‘Læ)³YÓ0àû¸x¾á^ ³quÆÌ*ètzmÀ4)×pD›á³=ã@&…?ÊR„ »ºãÞ (ö&Nz9Ϫ¢÷8Ì'ÉÀ¹W¿gª7MqØ×ÛÔþ7€ýóÞ°? èÿbÊ’õÒÚkÇHèÃ6ì<înïJ'©¡eyŒhª¼Õ{·ÓŒZç–…fpwÍÈÍ æè`Ø1h#r'^ïþoÔ“mÕQt–Â_®HUjm“Š^žá¼ &¹›VÒ·íÒ±¡wû"kWT0â{ ^&hÍ¥-±X´Ðm>B¿7 |7zçJòŒÀªs0O£–‹½tm¢ì¸ŸaIµ Ž¦¥·!zë!ILŠ((ë¢÷p5Ãh_ÂøÖºÍªóüSBožNX9m»,ì$‰ÑŽ-ÃÎΚn+­R !ÜÔB>ì,ÉÎí *K}cË?`žâxO AÌÓ,Z0_ìCäfºi¿ÜVõ:"wT0UÊcœÜøéø=7˜Ú8 ·^f—Ê u›º0¡µlЈ'O×í89ÚÏÉ-š5§FƒR#ÆHËîUs{ÚmÒ´ýºÛf²‚m9?dß¼Œ2‚xÜÛšFìÿè>Ó¹9h†ØÚ÷þÝoiÖµUõöõ›c‡h7Ád0Ÿî€·M·Ûøù#;Ð9«ñCëMªS0ÏÔ-„ÆÀSä!êp€qY(pÔûñô쇓—/ß´UãGŒñEâbÄ™MÖàM†Ë®¡ÑìUE†è¤eDÝæ³Eˆ©%b VbÌŒ^²È˜O‰-ßùÉOŸ{½—'ǽÞÍ~'Ða‚Š}W£/èX¦Ö8ò·Ø 3Œ'1g6½K¯°Û§ªÓ}~|ö·“£ãÞ»7‡;ejzÒº^Òâ›'p”vU=ó·ò DL[£š,IT¤“ë:{ªóÀ¬¯‘3áœÊ“ª?ù[Åâû ë4÷3‡ÐŒfºFÇ· '“N?D‹ò¡ú%ì öðEX@Fä"\d y8ÉÃrzݡֶ¶»;è—a¾@G@@yŠ[´o¢‰mîl³38Ä1.”ŠQÃÞé ý0iøÇò!å ÊEø¹¯  ÄÒ5r­…ðßæ°O°›PœžÉÛ ÐVø€¢Ê¢üFˆ=º ófƒÜ¯nm-aáwÑWý|‹;N½ËªÃú Í®8ÉT6(äkfpšÜøÅ¤é£•pîÊÒ¤h9 QФ(¹fRŽ4×5)êf¼§ÀRó-{(°@œÔ»8굃ö°@Ÿ•(\ë ÍH$™ ‚Œà{Do1«ê˜çBN²\{ DU™(†°mסŒ òÚ³wg¯öôŒ/—]î,ôµ›¤—[Ú”ÛÄÅ ÔÉ3Ü´‚(ȰLêL·¨Ú°æ0Á! ‡cs…‚õmñ•q~’þˆ¼H`CÄh«£gåÉËj8Sx‡b ê”ù\Ò¯E[iäbä/ÉÜ#ÁÜ¥Á,N®Ymš%è°†ÿ Á•Ofžk<,ÀR¿Oê# Ü'e}°vfÓä‚GÏžYøF%¼:8hÛT„f“\3ɮ֞*;Ðmq—‘öf;”Gt%NPB ¥»Šk·Ìë㋟O_ž;6&7±ŠVß¹B5MqLì¯à‰§–±à€ì_ȺÈÊBý&2·ŬAfêkv.”YßWk‹n èm’Lï Ë·µè̵Á± {qô,`¥?û_š44 „N›®Ôl´´äæÒÕé‹®ãA+^®¡Û¾ 7˜G+Z߃—ª´Ê‰q Šz€£’lë€íh‡–GtTs c¡&—óQÝJ6Cɨö£»Ñ «3Ñ?×,ÉX¿ #„?c #翞©¶¦xXÓ®¢`çÚ1dŠüR)|Áºjn\@öð V;¯d) £©A¢ìX4Vç Þ¾„„àÙÂxÖÇØé¡ÅAÌV–…±Ñ"Ó° ÄÜi%¥é ¢sX,´üd3†“ê¶Ö¾Ò<}‹Í[q¥á¡Å3ÇiŸ@,Ú;&Þo,xÒN휮“\²«~ èG ow¶}&…€Vú@_ÉIßÇ݆"æ!~Kw‡.c4vNÄ"NnWíuš…!XÖôî!œ<“=s šÔyèb‹ŽÂ)b(ây]*I›‰²°¼^4ÚB_,ßd:Xs ¶ë‹c MjìOo×^Šc[™Ñ|"Fcýù奣¬±Â¨˜›µÕ« ÜiNñÍ)ýÇœâ??ÿ“ŸýÇ9‘…šùÇ]övŸ<µöOwØÿËüýK~ ö¼ð‹ %ÅHw ¬æ¬Ç7é7|÷êU¯Jè0PN„'mÒò“*Ž‚óÑ^‰àë²ð@¶¨@o¤iâDš2Á£Ä7Äu¢ '𳉠8›÷ñfþ0 ÈùfB‡»ë ¨T䧨_Bzãd©}u¥Ñ¯C|ÿý÷J5OHlK–¹ó¥ž~MBË0…fèªÐQÈÇåHVµ*Ö*û5RñpÚêEQ@ÊÉ82¯E8¼ÀàÇVÖ7»º¬j`‘™æ 2l”¨BzööØùf+·MiQÎÞ0 ”8¦ûÚÞ`’âÍH8µ Å· ¬G WcÆö+|B“>¸îL÷–™–:¦sÆ‹Y˜ïë E°|ÍÍ–3C>ÉÍW«è¨Ã´Cô9l.¥’ØÑgîZUÚZ¹,´Û¾Tº¦é¯žìçã×ì>†TdëÆS–-äýë®óo”G­U*&º†Õç6Ù¬Ùo0—ƺ»ì+ºeÉ¥-äìíÖÙEQ~ÓS÷0×H¥àÍ¿ÖÕ=&%l&µÖ÷ïœcê«/T«ªÄv¢citõ?[䟎/Jk,*>`3õú¾Hìþ}ož¾»ðƤp÷?_¸æËÚÅ®q¯aVTër-r#óÎçïá×îÖ‡]Éšuæê>`Ú¶Ýlƒ/¬ZþÞùÅËã³3w 3ÂG½ ] ¨+’„âŒCÛ¯ÂýïaXXL>rš›åÕl³3öÿá¢ÞsFèKŽžÇÛY>¿¤«ÅïrýBýõ_¼Ãÿ¦„}'„.: çi0aî}°¸ {ïˆ"_Ñy]h*T ³¹êŽ@;‹»qRo¸14Ùâ^§Eü^©¶EzvWœ-J‘ñ¨ˆò¯êK£û¯Ñ.‘ùò´ À6JØ8ÏŸ«³£Þ›Ó‹ÞëÓ—'?ž¿4·›QÍAúClʹ*¡‡èík«Rý®€ĺ1»ûœ… Îärœ>×7vø¦Ù"Yœ¦ÝŸ%À\yUxOø@³ gIâât¤ß Bæ’®ÒÕ=œ¼4™÷wcv‚T—È] “¡ñljDP™LÛËúž¦£~né*ãLh†N’FäÞ¨fÁN‹QõÅÞ£Êe/ž¼;A˜fÈM¿v\ÞâVÍ )øCÖ‘P7¯­’ïx¶ "i¡ˆlbs^)é6KÒ0¼ˆ½§HUåDm8zFÈ‚Pº£ š˜ÛFh_dîî ¤V4ŒH°edtS±äÕßFV€¨ Ôg —ˆÀ¥Ÿ|‘ªpafHÑ%LÂXB4I¤£^—¡¯¿¹„³ãóã‹Rð'‡¯J©¯ß½º8yûê¸wôóéÉѱîÛëÓ¿¿ì½=†ï¼Â¯~-¤_¿~{zvxvbÒÏ{§?Ÿ™YŠG’Þãü]Wùáð%ôó¿;>×}y÷FúL¥·‡¿¾†ïSÁ“3“l¬óœÏýxúîÎg8%¾zuú‹3›2Á¨*ÒÁ^Ñ$çNŽhfË_”žö.N^ú±kýã«“#ýúÓéÝæ«ã7?]ü\nå-rfo^žÐ~<búÇOqû¢-:‡åó¹@aUI'‡NÞLH@¥ˆúF¥}¬ÕwC2xКq)â´2J¼W[ìoNWb³’9‘º8+Ô(ËFc¼¥ýÇŒ ŒYÍÑ3࿈BäT 2v¥å&Ùÿ`óŽ© ˆ%jS®3î¾Í ž•yÙƒîƒu¢åf²±L€ Šäfú<Îì¡Æ‹(Mb:šýëšö+P¸µœk¿‡ÌV«Y :Ñ1°!?û.—'†Ql¨6Kfs$VŽ~:éΦ5b›µ}¤è¹'›ê=ÃÏXRšzN¡r¥&^·Î\|ð…z¢<Ù×1‡º‰²)zŸØSì 4Š÷ö´ÔN-²Z |N½«èàL%Ñ5Iƒ!Àz­’öwÎY­ÜÓ6w"Kö¬o¹/‹âí¯°–ãŠn@þt‚Y{ZÄ–~DßÐ¥}ž:áa‘à â•YX¯Zo…Ú•îee>ÛF]H¤;‘°S“gK<u×);IÃ9YÎIrEϨ‹(tùŽlâƒvßùP>øòñÏúñéÿ̺üI*À[õýgû¡Öÿ=Ýfÿÿðòý߿⧠ÿs.z¯UÒ pŸjï)€•[®ïfáüÖ)´ÒÊäÝn™"æ&yà”È_ÒdéJDÍζñzêõS·Gv¶;âfô¯QdVÛÞê ÁñâÎY£û[>™í8®Mïún¶æÃ™ýò ËxK·Åõ}¤N0¯öª'&ÚS™BS1d9¯KüX»ë«ðz‹9ØY¥Y[ÂSgc+uª·”Ñg#ô»ó‘}ÿ|xþsï˜i‰·„u ;ÎåpL;/N»WÈù ¥2tÜãTœH–oakO¹’ëÔѮȋå%U_·…~ód»"–lç²'*…zúf{±éBžÓ´$Ъ^KÇd÷Vº+_J·™¶UºFÃ.µk3tË…¢Õ¶m¶màeÙÓÞZK(ä9ã´¡6 ÅM¼bIíyÈSZgéþ—Š?­ŒÀ-àxXÕ$ré&ݽ¼tQö~ ÒRi›á `Äqo”ny°6Ã)}†³Ðû‹ri›!¥«[šzO£•r¾‰D»­ËAÞQ9îÁû¶È~ÍŽÔøÝëéë€åÍW)áŒÅæÌ5½uµM wtŽÒ.3‹FBì’{_™£ ó7ð^î´6Pgßø(X¬ .ÞÚæBó¡LQ¯³Þ¨o º/“„,q·€íúó\ðr<ˆ2R$„ àí¨p\ïU—²:ñã ³¶Ì¤íGfÐê6£åõêj}¨ n³g9Y;8»’…Tãðììð×FÕ…GÝ·¶_ÔESm}'mËžnšÌ;:ê_þ{tÕ[±ÜY릻Þìb‡­áù^Á½ø_Hs.ÀßÍú»j'—1àÆáš›{êÅç÷ 4àØÎèˆýh®ÎÝT\˜¨Ib9ᛤwÚ¦”³ƒKI‚-Q:õJç -hÎ0Ý”N(zå·?…³„‚<¹ ¶a'H7¬ŠEì)qP<Ö}ŸÏeÆþùÆ6'=› yï?ÞÒJ¥r7+9w7awH¹ “³®‘5hñ` L›¡zc`iË/œ„ÜL©ï5U·'•:=΢ÛÌåâÍÄÄr‚±ü©#øwþ5ˆKGlÈwOñ©ä“[ÒMç$oÉ¡¨ß U,ÕÓt( âw- ¹6nnCå%n*ï!Ûò£ë}[f­×àÇ5XÕµ9³Ç¿XYêàŸÿ|®>²Ìaà@Ñm ‰CªÜ,vô<ë&šNs­ñQ Vôðƒ÷9þ˜Ã]”¯F´•¶ñr\˜,“&N¹éàW鮨{¹ÿY¸§#ú—ÞõbLhÊ¢=ë—Á‚CÔûáe×m§ZÙéÚ‰§RªÒÃYó4Q1Õrù»äšD£ýݨÄ(^gë :$Ññ“ýk¤uHŽk|Ls…¬ÔûÅå åbÉeÒ-Ç®Š"8`Wv2<Ìç îC`‡©ž©ÉøTbR—è›+_•›JŠ'$ŒþY#Àñì{+¸aõ<•Ø÷Ž>ß$j¬à›œ/›ÿK†ü€—d„1òq:g}7[,œ‹^G,Ôls5ÛÖ+ ðVðÛ¸¼UˆU´¸ã³æídª&—«„Ⲙ…ò-nñtÇìZÝJkÎlŠ[’[]Åë¸Hꦼ›tØ»Êz½`KRäªûB32õaøm÷›­-ö­¥#ÍD“p‹rùJXµ!ƒ©¬rO'8ö”U$%]( à…'  ;G1áÉB/«¯ZÇlRÌJšÕ$ôw¡šGéõ,‡¿ ƒkdNNá-\…œÊÚ$47@Ä-_°—Ò]‹¢fœÑõÛûWm>{v|Š·PzJzB9œ†!dÉ$cw ¡¦¯&ãºê5𛏖Yè©@,³0Hãî`Ää£ï¦m9&‰[gÀM¿>îB«ÝtòÞÙzŠ8g¡y"q baå…¥K Ä=°š© 8o3>d¬"Ø+âË¢$·2é÷ô–¿†Ì^ûSŒ¾(ÃÓÇ üë·jyÖìÖ/tuo{m ¾´Ù >(‡RÂÈÐKþ”‡ûg/ø—,6EïÚSç,…¨F²QûBõ™Ù«ï¿ÿ¾4à›Š9zõÆ ƒÃ I‡ÖÌ?E²_n¡˜ µ8uäÜ;ÿN­’“¤5Aï0ž¡/ä]…66dm!º×úHO3 e‚ôn….Ï@Öæ¯ù>õ4"“Öº3ùÖÁ‘ÚW:Í¡µ`¥-¨R.‚Ò@2ÒÍ’É'×)[â?n¥ÿqÜÐq„U}¯È|uÝ9´‘Ë€ÉÚSõ_~ù¥˜È­¼ŒQ _†Þmd?‚_ÕèÄVrù¡»)€$TÍÌ¢rû$çP]£¯*AØ£‘çgF0ÉìWýègØ`Ço~:Þ3ñÍí½]w¦à¿Užnµ·ö·ˆÈ­·ëÅØ°@D“ƒèsŸ§ÙW_q#ÍM§áç¾®ííe³‰a{×­åì~#;'w ÍÕRž èoœð]¼ê¸Ôg傟§°¿W¼¤ÉÁÑê±V:9t_Ðq|ó}ÐùôñÛæ÷{~j}ÓÚÜ2çÆ=Ú¯ÿT‚ëɇòEf’*ˆ£ènÞÑ2ìÐæqð¥É8Y:Nô%Ä_BaÛÛû0—úu"¥r>­ÞÖå¾ÌFœˆá±j¾É¥ãõëÏu®úao¯Î28â$Ä$Aw?9$V×ÐË5ðÓãe½ú¿à9? ✑<”¹¾ßdÓ\ãd¿‹m(é{MºÌpÑ£ÿ=W˜8¸bP™m‰¹7…U4°&ÖÈp×Wµ¾ÆjtÔ•n:]41̹‡nç c)eí6sc;òb¬cqBÖqL~Dx#1ÃÞ s(¼Æ<†‘æy†~CE[ñ‚ûÞÞ™Pï—䄨€óK³’ÃŽÙ|4r"èHìP õ€ŸˆšÔk~pšhï”D˜ÅãÛߥ½= 9›nOT«-ŸwXüÆ;ù÷Ä]d3#)dþ½Ú…cw§õ‡†ÿöôüã'æÿøÿØ #Ëq÷×õ@é o%ñžæ7}µeßÈ:¼#INæq½qäøI(ˆ0¤îJŒOÕ‹âa¸*‰ƒšU$Ì šÚ©¹IÏàØÅFéåÛçj—aš2ÉŽÅ:ï7£Ä™Óðz…a7ëH+}M¶†_gÀ©à¾¨oÕµ€–#¶ñÉÎ$5 ù£™"ûvôzŠBg"†;~^ý@UüyXX¾R1 kí~È^Èê-ߨïÛ–ÑнØ›¬* ’Ä»ŠŠÑwoNð*Ï᫽½( dÍG§/M-ÉåPJk¦ ¡ÇNÔº™¸×4®¨®ìà¾`¶|í9þS¨UšÿÑÖ>Ô?ÔÝα‹iíÖi-nBgb咄ƨØ×±ñíåßW#ážâƒÉìA(¶°±»)'RçøÄǪàCë¹&°Þ„ E«90a#3`ÁÚáÞ"<÷Ç»`.r´è©<ü1e1±R˜P!bæÃ7'|q­£>¨ª­Ö¾VÊ”Š ›]‹ ïo(7—ÿ®\a¡¢b؆&>¸‘ÚÄg ŽØ”ÏÇ\¡Õ¿ùF!ªšZKĺN ùl€ÑêVn¬;¤ûÒ#ŒŠaQÛzK9tõ=»a×tëKÁîÄ2Û.q¥ÁÕjaÝAé{þîßY?»ïŸ"œ ÇMœ-EW¶dܪ³¶ižŸ5×aXŸó›¬U'UC¾®XÉgF€Ö½ºe7<ß{‡ýí·?ôï\’¯Ÿ„—:áêÄHt‚,±>¿~ØÝ}ýuÝ@ºúFíl;×µC*Ô±°ß«WÒìCŸÿ»­÷ì6gn繑ÎÁh2ÏÆ–Zç`ìÃì7·ØT‘£’ ¨ÁÈ>§A¬vT7Ðóå5ûNgSñe¦Iü(ëi#Žžávª*/fs\,`”´:‹o3Ÿ¢k+uI:Ø¢Û­Øñ»…±÷ ëÍOE ¿bTÔÂùr2‘%.Lë5á[Þqi­o4R®TâÃ/[ûnw&]Qó¬ôà™bgA$6W²¾÷1´ÕQ#5½ÅœÔ³©ª_¾Ÿ«ù*4r/ºübÁM@¿ª±º—z5˜Z§•$ÞòØÁ6 u¶]»ß ’JLÛJ±–"Á×ä–†L±F±!ÿ]’JCÞb ÝÖMq·¹ÙìQYmwvwiéñ¡½F÷Àø{¸ý~g÷£r݈¹É¢Øz“!Ÿ1%@’J·•Ãr+ô ¤òeÙÈñõòúÝù…zszQŠŠd4ÂèÉLÚÒÍ‘c?¤¦EéÔºÄöÛn Ï)ÆÐí 0|0+…0ÜBĆ÷€ÃT¸¶)èX;ìEîp¸…RØ”4™çh§ …¹}¾Ç¸gûm÷]îÖ$ È×÷-p; ¡ š»ìY鎵¿+º<5Z»ªÕZÑâÊ‹d6{´Ý…”Äðâs‰å.Aè?ÿ©Þ纖ˆsú[U¨ÆGN½ûÊÝäv®… 9llok j_Y»å-Š”µ8EØ\Fè ο`†¶+„L%WÁ59UîRèm5€ï¢T.˜dwF³6Q.ºN·Y¹L¦º Ο&)+A¤?Ãy zEñâÍgi¨)Ǽ†£c—©‰ûµ‚×y_ô>z䂚˜§(ÔNú ê-|×qžíds¨Á=Œ4ˆ[·Ã=î”oNSèÝ;Š´üÓÃjÈͬUñãú•m=ö¸±Dõœ~nf–1¯dJHt7&zárf¹Z!³ÑvªîX–«éÌjö‚­Œ¯šÎ´qØÉtÏeÁÊÕ ™Nüv:á¬7ƒÛ ¾ ~äkb”üôëj6-¦€? ™^k›ÇdG´xmiý{ö×]6;B82âqôá傎ócE›¯_±Jím©gz7qIûV,ê¿m#å;«é¤7…“³¹Ó*¹Ô×r GWã|:Y߯<ýµÐÈG4ØzÜÝÞþ+™ös—¸;{{ÚÑ yØ}´í\F“ÇðÙéÊgM’Ý|¶VÅAÜÜ´µÞÈzH?)7zû¢Ðkkòí „Wî½øQ”/cbv¤/õ¾“MÚht¼®µñZ›ZÓ“Í´dR ˆæ½­ïlFKnä/IÌtç[θDuc}çß´J³}£ö¸~ÑØ}ÚR% $’öÞµ™Nê¶LÕÖí«¯,ö²°¶o Ë;6±S“î¸ä¸ëx+žR—%;ù&6 —B7†É<èðüçº×u lõ¥í{¤©B–|M͉¹Hµ_Ø[s#™ZZ‡dJ¶Ñ…E£Ï¯ãÀKç{O¾£!¡Ñguá[÷ø~Á¢ÿ®¯‡«< €Ðçd÷ø¶\/&H’u/¹ôùÂÅwÍÝéžsÁ6ÁAPøõòçÑȉ&ŦÐ%Ó h$:‹vÚ‚]^ôÐÚe‡ð!΃hz«ô±ÞþÆZÔ®Ÿ±['¬HŽ”Æj°ŽŽ@C:)æ‰øç³ª»Ã6‰Çô^×'4W¸ßá¼áz‰*Ë,Ug7¥{=\£kUwœ€'‘4†¢’ìÛÍ-Û\áÞPù²¯ TqdP­rÛ¼<´¥·vßRÛN;yÅúŒüŠ×pM›õ¡¡º *$¨Õ¸øRÔZòoTZIí©‚\ÅQÀzôJtͱ ±P‘öйÅr£e$kzˆý‡Tà èR]U£0D« úmõ5ÞŒwI¶MLøŒ2lF3–»hr°§ÖûöîG‡ÏB‰€3•–Àáq3ÃÄãNŸ/ñ(º´ðì¦:xMûHÂÏÑyФ¾· ôŒÉ‚Zéÿ¡yH–qH§š ÈÂÐR†«úeumaåÙÆXŽýEþØ™oíÁÄ.oÓ7 ò[Ñ7q韈u[ƒ¬ ©³d†íÃ)ðµVÃA.}¸$%¹ 0¸¤5JÐÑ^…ÎÒÄ.~~ÿž t7L>_ fÂ꣢èk†ÕQ °:ê·¯ ž 8,wÔ³p"ÔxWn‡S~ç ùÁm¸ˆÛ]QµmÍ )·µåUÄMÜWJ Ü äñøëJMhØ›W„ŽE–Êw©•ËëÍÊÀN4–£ºù²Í`VšÑAe&€8Ýslq P{°{ÀÃs£Å»îæ]‹>*˜ƒ½)`f™K¿¦4qÀœz.,q§šå¡–ÔŠÕ–Å“ :ÿÁ •Iz1.¨üêeÓlá|ž³uø®×j+ÇÍ×çJC7f¶uÒz4”­œÆÎ|'n«´±ß<TŸÄœ„øì/|S uôm§»Ñû ™{rÅ—Ðß–z1¶ÐçÜ£ºçœ8w9›¶ —¬Ü+²ÜsUËi²¼ÛY˜JÆÆH‰è- Øg3‘;âðg\ºn­uˆÃ܇¥Šñ üòÎÞ«{7¬Æ…-Ìç€ÂÛÓ„;>ÞÊb;…BBGÔ‡Ég*"U× ^9<¥)ÛüáôôU µ;°`dVgÿbpžSõ_¸§(¯6”-ÞõºS>Hf×Ö_ o*vÓfC!rX…”7›¢Ù%GËâù6^*!·ºÙK¹‚™ H³A|­ÈC»*äp*h‘fû ÇÄyæâ*–`žfxQkÖýJ5_6ùF„ñYç÷Rèk•§{ §T‘ýbÚÝdòÉHŽ«­-†¢{Ä6åF}¼ëä-Å{þ?òQ¥û‘›òGœ˜ëî×›.1à¾jæJ¡ó ¼#Ü c¶§Ò"‹zeþ€ëx®ìŠ®e`$N€®È®É‚Ú¿ÎÀ’ÆÏnü‘Ãáþƒ;ø3Wœj': 0\ÍØE€wDm2$sû´fhtÝîŠö£[æŠ]åÎCYZù@…7/ÃäÁD·áÄ8;·Pm=µ “Y÷0É"h »ÎòpšQ?E.·P^ÍàgnÆ;7ŒÁ+- ưëÕöÓ§Oåà¨(e5|¹EbüÙ¦Am=€J‹f·1nUé¯Ý¤8ˆÆ¦Ù¯´:¥‰¥[‚çÙ ±±,Q†¡¤ 4¹^…Ø¿:Í-`ZÜÎX·§‘¡wþçdþºIfôë¶¹qO†(¾{M;Ê Â8™_Ž‘¿d2ATZAàqyˆ mÚ~Ñ¿Mn»›EŠ$T…ü´;¦(ª»­¥„ A©’¿Å‚KFŒx%¹Ÿ¹¬cÂSÐAOU49|S–¿”Õ"f)£âN“ÛÃcT)TW¿Q©aúÂ_BÄÿ–êŽù"i¹¸êvYïdÏþ.Läú[ïl»R0?\]ßÉ5]…×Ê«yp$ÔRs³G ´´ÁJú<Ë~+hܘÑ@ˆe_H° Ѭo循¹GC­Ñ=Qö/ÀùÀã|ø´µNeÑ .5p òZÛ$ëòË£„2>­Éã0°žŒ£ù½¼Œ…¡Ñíts•G¼ë†FÀøR€‘ìV‚¶ô8¦>y¼·µ¿þ«xݘ<}ðÒN}]ñ—ê,ü6Í“‡ï÷¶ˆ±ÆÔ¯þ[MÛ&yëòí;ÈqÚ›8Åê¹ã Í)t›nÛ¸þúð´­¨w乬/$JI V›;Û-ä„TF\Q–ƒ£¨yü“£Vv!g9}s2óM'§Ì0Ĺj¯M$ìMÐÐa"'Ø.b*ÉQŠØnÌ\½<>?:;yK¡¢)~ìQ9Ì&˳Ùï†Áµ° ÝZµ®¸Ü×7 ´iÿ0ÊfÈ¢R ZîÛ­ÕNbqŠ®#r£iùD“ìAœÂׯû¹]®‘Û*ºÍp9—ÈèÄeÒ=ÙŒÈbYY@̸˜bhd¼Ú*Ì]u’Kö‹ä˜/BÀwô¬ 7<àËxÖ(ÐÒŸY˜¢ktkM7ÌtAÉ;«PhÊ¢«š.$WÈû–°–@é™äQrÄ\îɸ„8¯iDß–p@\Báñ–žAŽ\žR|ûÌá"Œ#º`ƽàÙC?úK¤lXfü€'²=4NÀéO–ƒ¯CaŠŽþ ŽÚt7³ÍÓtÔç—½4âbfn,Q™È+Þ2ÖTLv'³ ¡¶Ÿ,B ‹L¶òM@n´‰ppõÓ %ΓÝësÄù,¿ž„4¦y,ÀWÃa£cãç^Îoš/¼ÆIŒKÞÐ)ü{:äµ ÄèÁ‹BB¥µK’Ãrâ$îP¬“y (ƒãŸ<»Lf°lÔàɳQ>;€žÁ~JR¤ÎðšÇ`A;5l  V8‹¦ÑH…üZ[ úFN""l†Ï©Ç5bÀY˜™¤èÞƒŽ°qA­½~¥†É`ŽØ"s>Ÿ¾9¿8{wtqz¦˜L=ç%H !<˜YCîU ÛtÈôû‘Ó½‘7Õ×—JQ@cZ(ÚMæ+¤­ —kQJaßD€åþ«ŽºvɃÔ§BÑP;¤‚M9#X“Ú$Œ¨,ŽYwr¤Œ³©vçiÔG†KÏÃ0Ì„Rfô ÏÁ ÿëøWåûyyüãá»Wäú¾c E:ž,ïPº?SJŒþ€d׳úCz,àXï­+`,§ýÊ6®ú§j+‹¥‹á¿<Ínެ+`îˆ8?O1Ó¹ÐQøÙ¡LÿÅHÛôš ¶Àš‹Œ¾X…û6nOþº]ÞW0tG`Pƒm+ŒAõ1#©8+CaBç@Š#–4޵Øöò1Ÿ«m9ÉH.p4½JH¤u'>¼eRšYZ¾N †ö8¢ 9zfc=y;%]4!b¬/‰ˆ‘½H_s¢BéÏ)ó¹ ¿û-ÞîöS :ܧbH*C àÙË=QúP×AV¢­ÕÎÌyìê¬Ê‘õø`†úhü`PéáÅÅÙÉï.Žƒš9—V4¤ƒg.ÉXÌ7<ûá8@߯©>e«Xä@[8”†¡Ø”z§?×ÍÈ Á,Æw*°m@ÎR:ÒÇ®ïVÀ¶‚¦4’åår 饪MÂ2³|K•îØÅ‰AÖ¸–—°´±Ô†„+3¨ÂšÕ2˜JS(¤+}¨+GQam yVSš$Â`{ÀþÃqôS˜o‘™>ǘ—+¢‚ÜõkÑ ¼‘½•+èL‰Ã|™¤Wz..y{ Èfø&ÐêÚm‹®½Å;¤k&ºÕCGßz°Zÿ©/³ {³¥'Šö–ì# æÝQݘ1ê`b]P\hI ˆ5(. \8ƒ—’6N4‘Ω¡m€U1Ó*¡ac®X °!ºšÅ-ÂÒI3ÊúV/;ã5to{¼ °m‚C:€%nPøë~’omw©†êrfÏÚׯ/ŒÿÙ½ÿ4di+@V©Æëä–ÁÖã®âv2ÑÑoåxDÊ~4À²'ª±Pî,¼ÜN0ó¦é\âeêÑ gSóPÈ£ 'QçWÆy?Ë£|޳Kë€õ‹ó_£V£LçE¼‰{³’;+œqhüÒæ ;˜«t®æÖÆsôáAµ'Z‚™¹ÛGép¸²Á¤ yS$®ã°3Ï(H%ÊMµ ŽJtð×Ý]©}ô »|PØ C³AéêÃú­)°gÁކߏ ‚ì…2®½¼‡¹„Ÿ*~Z=Cwí9³¯õŒÑÖ‚™Ñ_9zñLG¼‹ƒ\œh#&½gÎWÚ¤kÿîùgè½5ÉM7 fŽÀò¢Z«"M¨3 'ÓL’VÿhŒOl¹¿.é;ŒxCÔÛ¥›a&L²@ž[kÖ¥€œT܇¹%®p^?¬Eñ}ÁÙ‚ìºÀ±tØ1 '6DBî\#ÀgÞH(9Þ9ô²9Ñ,¥\ô3< òðÉ4DQ(Ivº>ˆÒ ÄCÓ®C[E]˜`ö>_ô4óQ«ógêÆ[½œòŽ„ç\¼`¡Yö_#Ö…hRX$6ywÔJAòž\Ȫ`–¢Ì¦V™ }Æè×±9vCc=DqLÙG®c5!Xj¨¬ù¡ñ$w„vç: þ™5Ú(W%=Îϧ¯o¶ºxÝ|§5ÝŠ¥AÒ‡9·q*Ф¦×\ý¬~ÓsôÎNP(%g·–ðÅmy°åÉ·—5¼èŒKC@,džLA-VWC„c6KÆHú‡kS¡¸bE&òf±„m<¨Y{ÝšhØNˆp»»ÞWb¯ÅQVX³Ž,šw²¬QŸi®¦›ëVÏ€R‡ÄÌuŽãA‚R:2Ìh¢,`ñšåñ{{$TÆ#«Ù²ÔÄšæ^=‡ZÔ\=NÚ@ÌÕKaÙª5ÉM¹Þæ‚*ÓVÆëxN½*—"¹Ø0Ìá„ÏJgŒã¹BûÑ.+JËx[Q´aÙð&b¤r· o“Ñ 8¡:—ÓxÒÆ žÕÎMÖSªþ í/öž¡¶î .G~I¨f>DÀM§ÊžîŠH Œ£à£Ü×në†\öûtï¯Û@»Õɬê {o£$Á?Y5óòºÄ-ës`j×PhläP0{ ÁHìÉ Ž²<µæSL•š¨Š ç‘æ × V'o5õ¦1{™µ—£€»t…,×ÝyõÌZyòæøâ uZ²äM„`CÂÒøI5‰¦‘öf)*%ÑöT™²£g$-:h×XàˆŸs"ºÉ,ƒ›´ÿ•?€' Á°>m˜ÊA •0NïÐö/\ B€ž¡·hýâaŸÝÀi4mðîphY~ýi“î¹–Bþe4“xö”½^=Ó“w€‹³ÄÐtxï(ÁƒyDÔãy|E~ø‚< £8>™ÅÜ‘{-bžü¾Ñm¾¢bõ÷½ 4úÀ#Ç@pÕ›vÎÒþ\µUÐñ}‰ôî‡Ö /Àõ{fLrR<€¥vKxàIË×f Ò2G ÊÛ2"ñÂ\$„H™,"ôz ´úÏN І ñH?¼®éF£$v(N$ÃXfbÔ<ƒëÁE ö¼e¿dfO=íV”#0­¨AòÉ8m5|FÀ1g,x‚4bXÔo2KÉ@OÔY j6D¶’¡& &»KC`ÅHµ8ˆ Á,å e9—ÌÇZËT\+î]“ŒÛ:I&0Jwcz"pJ¡÷d³ 5÷hÉO3êš&‡H…óqül’Mp`|ÏÁ–t,%QCÑ,ùKfýh–èPHF£¶¶òÀ¥À›;¤G¦7ä7È‘ei ÊBíÛs›êà “X̦@f‹»cù‚O'Úº¥•´¡BÔÁ¦žÌñŽr øiÙÕFKGÞ*X=´=ð\°¡³ÃÁø~„žÈ¹·;‡rüì2÷ ç½Ä°jë¨WUkÿ V@»…ÁpÿNžY»d9’Ìö-k×RƒmZs£,·“³t>“pÊÂÛ\‹@ÑBª&©ë#²:èv»õw`ŠÀ7ïãímЍ”"’¸Vµ8í|ÛþŽyà‹8Å-²4¦ÔÐì8–hÏÈ|V8OÅx×ÜFÂE ‹Ö= ʨÉà`m‹Š+TN^ßÖªPeL ×A¸©tWþÿçP®6ð†ï?¼‘¼Ÿ‚à(,Ë“{C¸í\ÀYRòœÒ&r&$Û!XvÙ«y»»‚aBïu 3èÕæe$ñ”Ói7æú4?àç©viq½5çf–óèYIgx€ÂI4G1îLc&5íÌ3 ” ,w=jBE}³‰uÍh–G-×ÎZçqÝ"Pp·>ç‹ÒÀ:Xï‡k…²¨°š×pTáqËõt¡Ì¿,b“(l S ´<|u~\D¢tõ¥5Ñ`qP¡ïµšVñ$–mÝFËj±vþº­ËŠðí¡‚ OxI3 ¶x! Qvt,кCïh$…gþˆÿ>=3³zôLzr`ûY!äô°v̑خi)1z™â ‰·®þ¢%í„æ3fMÔÑ9Ê5mœO¼@?> ¤ùÜUl¢n5še•¡&DãKL+#2"ß" à,»sf˜}Z=VNx!HI»Óì¡A½§ qù\(v0ƒLÑGLÝuÃ@Ðî3§÷†î€³½ñQè8ä)»›ÅÝ8†}{‡m ÿ_ö¾½¯mìZôþ‹?…"˜ÚNŒ ä5Ã+aˆ3á4\ Mç 3¾Â ÆX®e‡Ð„~ö»žû!É’Ìœö4ô× H[û¹öz?œ/«ì¶S½æÞ»dÄ…Îí3N1Éò* ê5Aàºñˆß¬[9a;ùRv_äêF… ›WJB‹mª]AP&¨"SºåócòI£yã„*……‡˜Ð'ÉÛìßhãö­Á20.ÞbaŸýu½?,ñxG¶ŠqGŒÃ33ÄȰI³d¦h”Ù¡ÌñÒCûÔ¿™ç?=“®Žž¦šÓŠJå%–4S·’&îÊÄJ=1`X!›³<Ë~ª$û™]©eg‹Ùå`}¨Q`8ãŽ7(NÖôëNÅÞÄÉ=ª•vÔàzUÈ#ã8ãûÁ3–cÃ;©V\¾=ˆÅ*F}>ž!‹ Á*5¡˜\º®y€núHÄöHŽ~N.t5"³› MéJîÐ1 MN¶ßK1š‡ÐJíFZ߈5p•툆P0CO"Œ‡’Ԯº£9K6_šM– ò†@½SæPPÇ£I TÐJfÃü[ÍÌ <& ûõÍ\fëÔí8g^óOꚃu€r æòžuô6qÄ4/*PDžèÛ‡a<ÎÑ:Ú‘Ñ+oYñî×m¯O+»7QF×…‘~à]šŠsiŒ…É`DT¦°ÞÒøëˆ>+Q71=E… ¹NÖ%Ø\–nÆý ˇSpa\¶#ÇŒ-X@ òöhëE\íSÐ š\ß“Qî‰ÅÙ•±ÏVàî]Í©—AR²«çØäíMVNïƒ}N!fn ÑzjápÕö^¿ð¿,ãTŒ0ÊõE}‘œ–N?/˜CJ¾AãÉ€5]´AÎ$•û@âƒÃf‡Óœ<åGƶ˜v–¼/Ó ‘[ É0Õc©.xÇc–$Œ‘ÞÏU`ôköH˜ãÁlš7 Ð`·_'’ë0—TÙ;„ƒxl{Ž’÷DÛSq£Œ»ÒØ„K' LG€!Ž A‰¬ý”mw“ÓjùÝßtVdæGñpÌ+q˜áÎEÄÇU:ORØ ¹M43öe2{o];Ùò^¡/]ZKGFƒYɘfSB«Äý¡Zj˜'}e©9uFXXr^®1Ý1qˆµ =M·âLW7I'zNmÏqΟÌä(µWAñ^ýú†B’ê¾»½·0ÚùÒW.QÇñ /æ)ƒ|œdñÃ-‹…É@}ÆDa?*‰×VA¡‚Jsãýæ:Ç[KÞ`ïêZJµ).Ì™\ ·Cž7Ä!’ŠPX'K£¬u<‰4GÛñOíÃM»Ÿ®Ö;GMËdDFuÒ)´ž[‘qÌxkŒ]¿ÕœÎáÔ‡¸`þC”%ª„0–?ªº)OEà¬ä^ãÿ˜f7äИ¶îtÉXw^$kt¡Iˆ®WñÜpÖWìBýf¸À´X‘T2d‹‰ãv'ê,Ô¾S~ø˜u6˜’ÃñAAž Ònw2¢°ØL¼úÜÜ™%sš¨Tâ•MUÅŒò…¹üVV1%±£K>NL`Dwxü¢[¤1Â=t¤ô¢v"tQɈ8cZO·É»JbÚ˜œËr‰7$?¨g±¾R%Ù8·¢KŽòâÞ"DE]²SĵäæÍ«ÅÏXÜì"8TE‡³ÚÇã} Ã:ka ‡«!Ç+0ö5á*{WœëS~uHšå›³– fݧsJqÑ$Åô£€{dÂEX/ `¶ÓÓúú³9;WH= œ‚¿â'~`npô'%(ܯšN]“'QÞÈöGÄWyMC·×½9h`«ø«¹"‘íÕ¯2‹ˆ•#wOæòp;åší2èƒfã*·fN¦{lbl‰~ç™\žÂTéÔ»WÆ52«h¨†Š­ªt3®Ê0Ku!2q¥N¼r…0ªÝâ ¬ŠtrÎŒBù~NÄTAưM<¢8jš*ó¸,˜ÕeÐÇÄ‘¶‹cîÈ\Fùg%eGñ GùýdrR1ÈÒ÷ÅN&Ƀ"†½Äâøq]f•éK ¼¥!Ÿz ˜’ýLxïµsÌê&£qËzI¶à4ƒÝ9†½5Ù‹g<ºdµB$Úžà’D{ q€8 lÔV%;§Bª®åBɼ þBgpº€v%À:¶·`ð>•<²NóÊÀzâó­÷mʇUR§:ú˜Ñm'¦©äxØA5ûän[ÅÍÄbçCZð‚†H©3ëPÖ4€Ý(ªɾ$±)º¾J¼!çU6ÛŒ/“ÞɇýR^³?9&™Ýa‹\œóâËØ8tdšÅÇUÜê´ÁÉ™b¼Ö©Kß–ùÕT1®¦ª‘4âGß‘›A}zƒ§×5 ®[ø”Ë?ÂoÄy¨Òus¼Y/×-äF½¨ÎôúÃDG±‡Ù +Wá¥Á…çÙ1ÝRîí—ÅjÁõY7y®×>YׂøRp7ÏÑÀé2.mf´\=–q9—˜ÈNbÕ®Iz‡g‹Ö‰"u/˜¨Ð@îZD„7üb%vv_Œ èñIÊý,ñAš×J¬@Ç÷žµ~–”å2›M+¤0þ–¥XñBÓb˜ ÑôÆVRª8É‹s2”hì Ëjä‰\¼aA’U§€Q<$œË຀jmd?.!»è‘…>Rý xI™2”éðÍ*>OC¨ÓšÍÆ«7øª€^oô͵XÖIen]/˜‘£ô6r´“ÁbËè\KX/#yvõ¤ÁÓ‰|ÈÜAé”#ž­w{G@cqï¦<°žù&lÏÄu˜dòܦ"4ˆàMó%Ç7ªe9¬&š³L‡¬‹Ì=²ÚþeT%¹RªY¥4(ŒôSãÀ² Æ®'uÆ/9-L4ŒŽ“>È1©^¾},\3nJD(ÍŒb¦jYqv“uk¬ÙY‡6Ùp6ÄuŒÇ®ë\w'À8I(<ÏØmUé˜íGd³C\àö¹†ePUŸ¨áßš †7¤N¶±$aÎŒ'#›]nJ@y0–cBµP˜¯É•“¿Èd‡M²w¤àx+–rzÔ {Å£*D‰Ut“ÀT¯Páý\‹W{Šeܯ9ê»’Ÿ€KüH+kTûy×FÒ•2)«$Vó‹Aµ£ážìኈʶÐo×ÉevL~šç(RKßš—®QÑÜá>Š;!]Íî“ lź AÏéŽ%#®ñ3w°êƒzé Sㄌ)¹,%àìR^lºŸ]ˆ`<ï§$Ë;(Ò¥­£-êE·ÇD®({K –/[TÅ=à ’_¹Mjçž«gFÃÛ„Ä…ƒpÑ …i˜öØXl+ó~æD/e?Obm+Ü“¸ÁÁZ€Ë%6Ç[6¥_ ‘£øáÊ›ý—ŒÑ©N­èé@©•;~“8e” çBÆÁN.œ²sgw3vkpºcE s'WTÒ?RZgxÿ,9Å#Øò¶æk3¬…¹w‘{%LN y™“àt’qOt·¢X9éG§l–Üzð(ÆùÌIô”(jvh·®nÆ“Z¦Üõ¶Âœ©F9[Eq‘‡Á.’?BE“Áò”FÅó†qx ˜8´·XP5mŽë[3Ø‚©pÈŽÑà ON.#½Ûëý‹áâHåXŠßŒÎ‘…dÛ«ˆ ⥜vmDŠêb6Eâ>c‰®ŽIûÔƒ%PfA§‡†:Ž(|ýžÖ§ªl&¶îtÔ)à8ÇusÄn‘˜£Àg€=S˜g­©¨ÕÓ1v:"Ž×-jµ®üŸÿÉŸ^d@à» nÁîµ´TP‹ÒÏ¿tŒ¥¥¥øïãG½ñgå!¼\^züøáýG—®KËWî/ÿŸ`ék,𺟠bS˜JÚÍf¶»î=¯%0ÿþ›ü ÷!FÈՈ“_«THlïŽ×è÷÷íü÷‹ÚÓƒ-ŒXÖ•Þ×k|l`Cï…û–3¸5vóO«Á·˜Û|aûõÖ.ÎŒ¹éý­¥væƒCöI8Á„sœˆßKaiRëÒ_Éõ¦¨ceNÇuP‘±š÷)3&Eû2,ä6XÜü‘{»’ÚZ¦Ê86ÏW1Ÿ›Ój½Ðz±^í©4Ä—ú}ë7æèùéÜ‚Tt^èàWsXÛsMZ_Á¿Wø•&âBÂÚM?Óñ°±Üò[à7YúUšI×RL xSëOŸ6‚P"ÁM}¤êQÁRdTGc, 5Ä)oŠyAc ™ìž¥C"¦ØÕ(A»µŒO K¶kRþKIL¡j¸Z‰K‡_€ÿ¢ÞÓ­6Ï즔;Ðý6uZ€$Ĥ— û“ Æðr»óãֳޏì6ð”p«ªè³©8ðö­P›'&â¢ÂœpmNáp~Ä››!í°:æÁ:¥î3J"Sÿ:kz)¤²—ÆRF“d|­4µe¸à¨O«¸æÕ*å ý¥SýÕˆ+W›URyT|*UʸÁ?ƒ¬ñ[«Ñ(¯h~³E=ß{³ûlzÍ´—âWDõÒsQ7è8«Ñ ™…¢mT myí–À_ó3“þSàáïOÿï#ý_¾ÿàñ24»ÿ€èÿòÊ7úÿGüL¡ÿxòkˆ®wT>Ï4ç z/ÃÛÕEJñ…îð®¿8¥¢ºÿÃã›óy2_Î|«¡5À¸Â"6Ñ‹õ5·;¢S\á-W¾À¥/•Ï¢/_•À7ÂÆÓ Ú¿¹ášnJ`|úBp:•¾pÁe¼Ü¸(hÉ´÷þÜÂgêÄZnÖÙ×^u° žðW¸¯úÈiÇÇÒ‚ob9aªºÅ<«âòn»lKûçgÆ¥¼ßš²–—¦xYªNÙhê×&uÚâ³ê¶u‹‡,jHCknç_Úû;{»¡v ›£+¹X°…¡a(ô rUX¸ã}2U ºqM.žlK‹úw ¿ÿÓ?3é?¹ÓýîôÿñýÇËHÿW=X~´¼Âôeéýÿ#~¦Ð?“è*Õ÷?…x U‰ˆOxºä=¢­œHø$›žÀƒK?2Ñp"ÝÃkmùæ%ü05èHßÔ'ôÝ’¹“šbî:Cöª:Ž?Œ[¸©3>UCCëëÐöÑ7²S¥}CÇo&ëK¿>Ö¶hlŸ¢K®å{n2gCåFå$˜ÕÕS ˆYÇêZŒ%ÀTŽ4(Гrä–u”uëÈë&pDÌY{î ME™X €ÕÇ%¶ŒÙü¤‹2‰_ÉcËãd€œJí¹w¼p\¹Ó(e=³XA½ð ×ìc®™µY—q´Xiª‚ØšGàLO-ü9‰\^#äÊ tš¿ÿVF™?ðg¶þg<ü êŸkô?–=Z –—W=xôøþÊcÒÿ,/=ø¦ÿù#~¦éÆCßüㆲðÖEÔÐäóÃÃêÍà-Scj½‹%õž¾® *æ!z)Å­Q m2_R<“UFÛÑhÔ|« ã4zjîÆ§)'ÍñŸ›<µú8‡±Íóç$A¿ÒYûÆ_7à‘v¢Íc†e‘ÀÈ+ïYr‚Ê9zˆ(™&z¹¸yðæu{uùñ§ |ú¤ø•ÒåéGèEˆ1=ŸB²¢]Äý.–š”g@@¸í?ƒìÓÑ y÷Ó§l šQ¨ —ècZ ~|2öÛfw)tü¨ùdáÓ§5Õ#ìäJ¼St%B<ßËQí/Ü~ÿÔúÄ¥Ó¢ÎÝ/|¼K«¹úx~ ÀÝa‡î+\$6Æ ”¸°õ¸,jÄ,öâ<t‘>õ4dãå0¦M Øînyø(í“/×~t%òõÓŽe{Ëš9׋æpšvfLC¹„‹^­t€z¡?õ¼î¦“ÁxJ¯÷îå;ƒ¯èƒâ ñb—wãó•²ÓtEJA2î`†³˜6ó©j•;š.­ V¦âÀ³l‰Æ,D]šŸ”šEoÿë2ÒÉØÓ5ã˜ïâKk{´5ví-û8‰®>ÚWŽÒ>¥£Å¾é¢Y­Ò¤ViNÈ ÑKôªZÕù.Z—š>Tm €ì7ÜI-n¢=¹7Š.jX¤áz­¸b·³ñ¤(8 ö=›§Wä#‹±ðÄë°Ó,»ý5hdœˆ95"J9?4£­dÇ?JÐ9å‘̦ò2Ê03ëøI¹0÷•hK¥åg‡Rö Ë)ÊS]–Þ9Çå̽rµNA]]ÏPSw`´KXÈë7jö@tÕט0ÿ}\ jŒyž<©û*yÜ(:ú§„ÖZ¿))X Z­µ[:x•Ëpü›ë޵OA(VÐw^Šæ7¼` K:Bî&ˆU1=ð¡ÁØov·Þ¾ØÛßùïö3Zì.~-£ ™!IÅ õÖÑ`V-Ú8]n¶rwt‹Ô縨kéÓÔ^lûöíÛE'Œ)†¯þþ÷:Q5æð9.Ü<ªÈn@}¤*$Ç_;¼Ä,ÓHQŠÿ56õ›Ý/ªlSÃ¥87îêK¬jSp^™}ž}eKÚgûdz–4 ƒ¾¹ûá?Ç\ÄÖ! ¥VªTnUú÷ÔøfMGãá--G·5ÞÞN˜øúÍáÿ°K*îR©íNÕa n?ÍÙêl¯ï’»‡†? 3øÀr TGË}ìkŠ”q_ãçk­?o¾–æ2R`3‡b "¢o–%9´Å\dë|_`p*&М/.tZ)u®¸,ålS¯7bšIcaX÷€NéM„Wó&¤‰euipyªŠv×<,}ÞÆ¦ *›#ÖT‚‚ós ·”“’”°º¯ú]™M¾©ºþaÂi1¡Üfí3¸Ëµ<Gè¥Bù¤jõ@6D© ÐÝ]ÿ¶f×4Éù¸¹Ï÷µ&?¹½?ëõ*ÊULa9}k‘Ä–S•ì¼âJ²¸;9¯Ú< £Ø‡†-ë)YÕíOñ8øHªŒiL×ýT¼ÓƒÓQ< >ª’ûÊÜ ñÌù”N€Ã=l¨S_Ÿ %©³S¿‰øŽLF·9UöY/quª¢‘ØÕç_ÕyÚëˆY\ØÙÞøÜ;»Z1F¦£öúšéEµæÚ{ÞtŸœ˜:dägÁŒ§®3Yß°Vûü¸dÌ›mX¯¯?½î Ö„¦¥ÃðŠzÞ6B¡á-Õ-1‰q0@xäÆS‚².kH‡]6ü˜LLÑÊvÄhè.5HiŠlî(ŽF˜Ý̤mP¢1zÎc¹2Jb¹DûÞ°J²ù«h`ÖÚó˜ÂÐ8 ´Ä=w U9yЪNçP ”² /ˆÍTÝv§Z¯Wæ4„l„;À_Jq¤/œLp›‹D“9ecåñã•~XY|ôøûå•¥pKþ6†CžsÿµŠ;ïà'…xУߘ(;#ÿ3h5ïnewkG½{õEúïÄ ´DljÎt†«»cžkÇd©& ™Ð*Ð Áâ"km|âD ðŠôé}ÍJàn^âΤD¨9Ć IÓ<8lØp¹YK)®äO¢ˆ=§ÙæF°D‡jÚ ‹;O]üõkq!Ðö·è6ÍúÑg_ÂaÓ¨î (&Ÿ¢ ²„š ʶÉD\XíØ^ïjUw(.à»}?K¹TKŸó,Ü74p—X¸«Õ5繤+ß` ÀÓzµ¢‘»àiÃtæ`œßàŠ,•j–¶÷ÅõÒ¦EÇò­ Bì¾fÜgÔˆ† Ë)'ÜšÚÞ›Ÿ-öš ÿ;åCãÐ1éCÌêsLî9eçd!ñÈf¦*g8~rŽUMk¢j%™}§ö•RúKæ/­6Ë7UÀ.7ïE]#§^6¯;žéäA­¼ÑÕ¬m!z~A ½=™òbëܺ¾lžŸ˜\Ö7Y,Ö!DÌiîÎRcêg.%\¼É‘ÔU _ü™µ•U,¦dòz\³‰ñ-7©|૊Ï-—"¯A Ï Ï‚ÙKáV‹š±!s´ÁÆF@>2Êîù,ÊLrƒ4çM¯ÉoŒ¼Å÷’FR{"öåê="¬háD’¢a¸OY™Ç6ôŸ ¾Ð‡N¦aa¸(©'FÅcùž%ÊüQ}sZF¦ïèÓôÕ1mÀÅdHN/Xi>j.×–ëLÞq°zÓ:9ê@BKŽ8Ð`Ën#û”jôf A¨îç½×—«A4ÝIÅ$þ„Î[ÇÚá‰HÊZÝ)eF`…5·ûMTº/Y‰‚®à™eJæYcе®1*© ÄÂFYɤD¥»¥C[ŽŽäòûs{†ÎÏIuûœ=Øœž«¶¢]A˜w’­ Ò .»sÂ5;œÅ‰ƒŠ:3ã—¨>ég}ÃÖÀë5Ó©É9rŠþªh#Lœô’$GL²)w4K¬úmÁÍÛ¡SfÓL©Î0{CyØšaf©’+&0wKÍGK ×=ÓE ¿6œ/`Lâ—›Kæ \<_”YTƒ_õÝÄù…œÎêê³öo~ÚXvœûD뻑wÖY]힥è•wdVcíFuÝÊ"OeìŽ1QóŸ A[ÛÛíׇ[?¾l«K$]³])SDÞì×›Ý dìý£„RVŽšv޽ޕåÝͼGíœë8É>ÅâLLÀ.ŽKêI|4@«¾çÿì§ËPGè97£†õq¦÷göo…uc”ó\¦½ù5Ñ™»æ81³sÈŽÅì½\Ï®«ïñ›—:{@<¿¬ÕÕa4Â:·É@nÀéO¯PtðÚˆOjnäˆR¯qL§È!ŒìO=Ð=X‘N¦ý…›ôÏz+Ú¬—}Ší’Ø‹ÐÈRtò'ÕÒ/d™W…­@ŸìõÖqÚ»”­ð+¾ M»Ây`²nëìh5 oîÍípQk׋_Ó…¬i>ÝÚûZŽÎÅ®‡1÷?ÏFˆÄh±à"‚>våj|ÂÙÓIüi¿‰6†¥ÍŠî óƶ}£@v‘H™%t^M–çÈÁÉ‚7Ví]Fw?Oû]fD%Ôø Ç¥P¸ˆ=Æ)‹))˜üãHp®fµ<ýæîœªÿp‘¾Å^–ÃÕVê9®®ßžèkä,Uj“¹Ë<Å-=ØÞz¹µ_u<íQ˜Ù‹Q2`´Ò†î® ìž°8–O¨úXêx‚NƒM.ÎpÍÑÁk˜ÂŸ±ä#© …‰QGÎg<ÊýeÐõ€ÉÊîmȹCîÔïxs÷såw9¹¢ôôÑ)?ÕÂz;˜›ŽM>ÖKàþ™NŠ7¼(ã½VÄ[S8õíýöÖ!(®AtN¥;^-ùJ/z(ëçÿJŠZNÆÙT¾:&û×ÃeñWñàw€BœF}Å‚sn…¸ŽJ§ÓÞ}Öé ÷º&ï%:tS_~|ÿ{ªÛè+Ê5ÇÈ®ãæqr£UøhñÖ?•yøì~s¥Ã;üpV_ì#Öl5S…9¦j#c Ó'•±²œT±`À½p-Y,Éžf&&4‡ž4í/Žâyã“3¾ÎcËÌB¯“å„ö^ÅèÉ ~¿¹Ì©ìW×Q)Žuƹ§”ëp*mÒ—K½wÚΕå¦Ù‡eÚ‰`WÓ]¿;' é°©ŠíûIÜ[ãš<¦|µ8\@r?á¼%£ýë­ƒƒÕçð'&ËS Dô1?Þé^YÇP-zLál½ª¥©3CàNÍ¥ NŽk± b³?Ö '©Çm¯ ü=ºbäyÃh.ÏÓ ð‘ƒ#™;šà’\5…r ­êö _vŽnWΛ…OÊW©‘ °Å‹çQÒÄsÕéAâ?°¼gßíúù§³t2êÆfT )¦+Àce’ g5¶i`=X4]2cOîDüæmý §½¤Á§”㤹1lìÞ ZzÑëZ0¶åJqBxùcŽˆErøpî³>Ã}ˆÌ½:“ísJÓõòÏk½{Ñ[Þlá?+›˜–Ÿ~Ý…'¸›käD±ŽÿEŒ½©ß¾¥ü±qJä/i·økº"µaJ¸á2àÈÛ^]ònË Rs3€T»%Ø<‹07Ö™#¬‘ÀF{aS!g4–k—Ÿl¨WPWÓÀY~ðf‰]dÒ–»¢L÷Üüâ,í;[ì÷Ø€ãíö'¦PdØ ¹ƒ^LX|žŒí‘¢8ž|ÐÚ‚T„ü¦,è°WÖ£~Ÿ5KÏ:É,hñ]Á´ô#©+C =ƒtJïj«É6ãžl””z\­ÁÁx˜ÍžÌ'X ¤!7ÓtežS‡í·Ï‚W1$M+k^EoQ×i¹8@.¤…R÷à ‡ñˆÊLFÁî˃àF·IÓ ÀÓ~êðuV|Íf)N AÛF°ÚGAÃâNÔq°s;üùuÛ› Îù¹Ø=cœ20ù MµÅ3ÔÃj5oYRÍI;Þ`"kzÂ/÷Û‡ûfgëæ–&¨÷F!x4¨:‡†û’¿a-!Zk¡Eúè@9z/tE…=¹ÉM©w&JZ9PÏQ‚iöS¡T®e„Zºì§ø·uŠŒOJ4Äj"# ¬ã¨=¼Šl ”Í‹œy%`M¨É% ”â^œ;ñÊ‘Ý)eôpv·ÁIû¹ãÔƒÍyS¸úthàæ¹{tJxÖá?äûÜj_âñ<Å›ßì¥ç­ïVžÇãn HMÏr9î]:Žñ!¢– õÓ霞ÎàrBîYPRkkàkNÄoiî‰"ˆ²wl–©7,|Æâîdlö-Ä=iÁCÛ$¤  ‡MænϢ̫9„Uid˜÷3cìꩬ7 ¤‘4°7®LȾ&µBØ5?m0^UÁèGXiÇcµ„gt®?±B²ƒÍ`O*â:]-×.î£á.!d—rÒï 4˜Š·SWÚ(ßbXLé™tEý̰gN݃tˆ9Q·[ <â@±hÚ.«:,á"\?P¾‹¯ ÐÙL€ÓTgÙÅ%zŒš5¥¸ÕYÈΩô1ŸBJ|JÊ%ÇèAEØ%r–ºÏìСC2ö†\uÙ%—H²'å9B>»„|‡tÐD‚äì'aˆ›ÜTöû"4Iî1À\T†:`)mÙDÌÇ™kú ëÌ£ÒáÒ<-‘¢ú9.ýEƒPÙlÖ=ÇÍÓfÃ)|?9A¶Cˆ=6Y3XÙ› וٹÀdl±n]`˜ˆé†ÊïÚŸtÝÙxkq‹!›s|¼H`í£îÙ¥‹/)âŒ!ŽrÅq™fκndÕA*É~Τ‹¤ÉL?éŽÉðe™}[š4ÓÊ^§Å#Ó-Ì–?"îÊ*u˜K½—™–)cMõh(£™Väuq Îy7Á‘dÞÝ;$ähÊ0FÁ›œ™©amvìa“ ý\b tרӓRdXF‰¶õ##5—fä0³¢&¹W¦Ž\:ªñTAµìsÔæÏQe›Yumn˜ÍÞ&.¡Iáȯڇ/öžu~jò+¹:Éï¯÷qœóËà;~lTj•›£ýºQa)û\¿*vá<Å?ìók÷Þ"›¬¤]à9}”Ï®¾N (Y’4àSºÎG¹’õÅØ^è0$€ëGágÖ$s‚Veå’Ö\gÜoô䉔™½ˆ.™:§€&ägví©|ĤU£æƒ·#t$&ë=ÔzËc¿<.Ç Sy¼è}<+²sÚ)ÏßF}8ÍUP=‹mËÏI<ƒš0dJüH9ì"Å[dòMI3ßã#ðŒíÃHŽí階'³3îï Ë‘4EÃ+&…Ü„/êNøÓ»¤·J(Ã"à~«píÏLþï4&ûbp6ÿ·|ùÑc“ÿíÁÒ#äÿ>~ôÿû#~¦ð|ò3RÀqƒ\¸å÷±NœP©ê‹LqÎêÅÅ…ÂT¿ñ>Xj./aέå¥Ö2Á÷«Ë+«÷E‹û½xP…žX3‰ºlD$¯¿”²•“šŒ`0µ= ®£jF·ª€j0TŽ@«•ï[÷[?<À®ÖYØ$ÍÉ 9›Ý³Öë7?¾ÜÙn¥ØAKʵ¶°˜ê&tbíO$–aÍO6䢌ü Ä]˜0+ñ%²¼hmîêÊÿ6þœfcªýuk"éÓ=x–vßÅãܳñäg%¸#>“jåX< ù®:®.9Ž«ì"ÓÈS‘ù`Éæ;­.ç=] íáƒe –ƒ »´Ì+ÁöÁ^0ø‚›Ÿróä0Kë49)mϹõŽÛúnI[lM;üËzÂvSÓŠŠC¦±Ä%Z0•cøÐÑ=.Ó)Çð{ÈE_%éÑ‘ðˆwô69ÈqïÄ-vub¿è|$éÑ‹vø¿§–%/nzµ1~ïÿâG›¾#/çðG§“Ï‘‹ÑÓV¬ñÐΜu;³(‘¥¿z:˜ª+ÖpR—YûÂà#çÁyMç&ªÙ@QŠ¿ñäàœ;¢Ò–kåÙA,°’lº* bÒI¨nx†s€ºÇ,DJ^¡ÒPÎ{ó6 töò 8ì Iƒþe5—[NØ >;ü¯¨sæ8Y DÆ¥—™H­! ùœ°˜y¦ÎXçñؽ…GäÖÄA 8NÁއ˜ÆCº¹|·¾¶÷\88¦"Ñ1?ñ`D5:¦²¾s°³û¬ýWø­%­)ü¤‚‰ôqIë?îë—LF)‡~EG#™<U¤]‚#4+o26Úpƒàd2è*|‰…ªGéEÆyJb´ëhCª߬Hþ ¬¥4×׌<_~Ž/çæ}‰ ιn^eĦ#›qN”mÑWœ¤Çí´¹aß®izUZÓ†ù4\hÔ»Øë3<K7M­;T_ò#‰ 3$Ùij¶tw&ò‰’º~)Qáq3ÕÝÁ™ÒTÈØs%³¢Sè ÐF4èHô%Aé€Ë ÈK¢á½SpR¬Ž¿p'—ˆ«ÆÑ4·ì Ï‚úæ™ 0Œ¸¬»"7ø¡ø ¡þ1 wÎ7˜e„D¢ŒÜŒ8Ë jw£Ë€28Yïhr"P’£LÙÈN¡¤Aðf@3?¥q¤{f-á-{%]ÇÖ³@ 6@“P‰ÖiMD»¼Àë¡TH´9z²Ì¼[ÊX˜±¿Íþª»Åq2šþà3òvÐqq1Žë!‰svøà®38å+,8q˜°˜7&Š>Ñž¯œPÛ²§xözˆb ¦éHØ 7jN¥ÜÓvÚ(imÔ´‚â[­âRÏ£s…Úbn²iÑ}úÅÔ¿\DLIœßÚ¹G~üG…ó“K†Eþ¬Ôf·AŠ«øi» ö+øÚeßr»ø}éÞšˆ½œè=§r3¿oöw:Û/·çû~‚Ì+v±Z]­Ž÷W/­r¹“½³&b\¥9ôZêfréIÜïÔºQ’ƒpö\yç.ß•U—Z3-¾dþÅ~fÚXýý;×¾¿|ÿþýBýç‡ßüþŸ)ö<ùiÕœogœ bâM”7yOÛ=Üßêìmÿ¹³÷úðàóªñ ÂÛÞù<È pT´HW‡y´¢×ϬœSÙ*éø²jšŽ§0µŒ†ôÊÓì0¦vëw„…˜~îÙWú…yWøÍa^—LæõU±Ó©á+~ð’ü„81çâ,E=7Wë@:çO>H5Ž#M(ж>L·†.×Ü·é“”€?Ë­„ç“ÙsX·Ïã‘èZ[øím¢ÿ)‘ONp&eöq ’K’]zr¶=4Ù^)u4CО›"bß®ÒÇܱz®L –WŽãáVJðîÎZ¤ÁA<è¶¥Óey¨ÃããQDÀÞI‡ãÌË^Ï—ñõëø‘0¯…­íÇÑ{ Ü´ŽÌ1šÞ´ÈI§ Oê#Í»O¤ðȵ úi=ÌÕ@b§ü[ò[3u)¶Ïü¡‘N•B0Oß(éõÐãÿeXw\™`ÚnÉ’DÝÊó¾íªÈ™3²ÓÏÈ ç‚‘&eF¯,÷¡â=•pIK ×G•˜|ú¤î–Ÿõk¥ˆ"¯^ˆÀšnV)™íÈ®ÌÄO’“¡ø• ú±Ä cDsŠù G Y}£UóYüÏ<}¬”_:(_Z0WþËoGO½[?zÚjQ}åyR™ÀA¢fØ*CâV12ìiˆ·nWà•40µœ gñy“‹Ù°~/ÅO¥žg¿i 7’¹k\68ZÛ µo`ð5~}¡•»G¹°L)ܰû…3§r;˪K™ÊÊ#ÓAŸ•–k¨GâL:ØjÆg‰$´Š"Õr#X©»Šƒ*hè4ù, ±‹jÌZR16š\Åvñá'T¥< #¼µ:Étüª;Š{||~ ½¦òÔ`ƒðÅj«EñãotÊô3QtӆܪAÁ¾‘v\R»8Æ_jyÃͦÎ:_°åsþŽóà´ív×åæa¬YGÄo{ñè1VrÅRã~þuœ)Y=åé¢o‚Å`e Ÿl­‡_7``\øp¥’¬~WÆXÜüe!ù•’ï`·s8ïn\{jfà¼sèâë[õ?}b»~Δóâ99Övÿ Z¿ý²µøßÑâ?–èÜ9š?ZøîOGÕ»÷Ž›¿ý¿OÿüõÞ‚â ãô]<˜i.)´^b¿±Ü·‚Ó˜jŸê>@ã1ã'“~_ÔRª¥ %tˆ)Xé|ªš†xУļüA¶¼E|Q¤ï•d–ØWŒ(SWb‘DæŒ=N®([äæŒ-N³5nÎL<ØðJ[oïíî¶·ÃàI‰Ë-ýÔ¬æŒX¢zFkVV§}(„Éêp,V4À›â\™5ÑŸ¿-e{u8¼×aËüeí<öý?ƒóÆo­F¾¦”e%Ü5KÆVÉo,cÊÓZñ-!¾nÞTÍ1|O͹̾Y‰|¹Ý¢,\ÆõÄ.8íKEw(—å¨å{É1Æ¿Ýoå8é(ñ:¼kS4#û Q(1«Ä`Ûçïµø]+hºo0‰{í)r@Ü¥¾»r¶cÁñÿ¿&. ×Òû[« ¹ëŽ$}6¼‹{öÈ™“çÍÜc71õK¬ÆÅlã3Q»ŸSò’vÛîÞ=.|ݬÙlz6ï<7´Öl`x(Á¹Æ[„9UY—ÍŸå ¤¥=(K˜ÅECjPΜ\Ïûâ«Èçî€ÇÝù[ìdxó^X+³¨`£¼±cŸ·ùZy/Q ¢)c¹ §+›°¯¸ùœ-/BA¬t#ô&1´È‚‹Q:: WÎAS̹¬IíO°lS( 9ã| æ ùæ3R²ÒÇ…—Ò£/ÏêZü YÉ’gæ}ói_å‰+™ ;Q2æ‰thÞÿÌLdÂöÆ!Vÿ ÿ±¼´´ˆóL“¸å»›tØ$+Øuq“shàŽr11oÞ|0?Z5BΠv4ÐþŽú$tPÂú–œ…áŸîëÍàû»ËK+¬¬ùvç°mé§Ÿ|îÓáP8M>öͱA6Vˆu 䜥áVçi6Îu%>Ù¤Û•ÚBY,9­8¿,‘ê‘A0æ¡!ï¬Èè—xPS³Ù_ëà ›å¹-t$#¤ÛE± ê¹Õãˆ5)ï!Å;Û;»‡ûWÅäø=ðzë§­Ý«²®ð‡}„jäÐü–šËS’îÛIß³â;n!\2qæú_ú_ÑÜK—¯E̦.aºÎÞ€Y Þ¾ÝêÎìÒ?))§ó²æ®>Ë^,káŠý èŒCu{£tرº[WÎãal§'bT¼ Aù×ôä$‹±Ò«–i=—Ý›Ö ä—aXp“@Pöe„/N‚ð»ßeø¿ÐO…Ú`€ñÃÀ?˜°X¶cÎ=m=é%-+IØ,9qö›Ç¿à ˆ·FÞWA*Ý>"ZvզצÏ'!ÑÉwË'šËü,mrß:Mñ´ Áòš­Wtrœ`ªx.Ió>1™ž48ÁEj\¬Ár?õ‘䜤§5g¾niý¡ª ¥ç àÞQš Ô;Œ€ƒ©ÅI/÷‰ƒÉq÷?×½îý•“Õ^tØ5É¿Uî‚JÛ‘­ÄíÍɾ*[Æ;å8!^è gROÄ·iÕ4wGÎm‰ƒ?¶ýà ýÄB_¶+""TÔ¯cžvCfipŒ;P ªe4È]­sµ‹|ÓL QØkѾùÌÙüYmé r°P²u‹AÎoÑ;Õ©•[Jû]ÊŸ>.}zÓª¿‚æ#+ÿ¼üSv¤c›N®øs/{ùýq€qQ€{1wüVºÞÕZZ+Žeð/—”Ëœà/¿-ýÚÒb/jBô1ž²*£µ¹2&†ç#ŸVÈiß•›q1f£ÉÅÏÙfý>˜Ðå'9/šwÔÞË.Ù Mz%æIm@Éc¦ÕÄš'Íû…d-Â2—Ò[Da‘”+ u›#¼–e@aï™zkçÅ#ÔZÖ€ëZn­''ìe’ÅåÕ¸æ‰+¥œ}0eLJÙäÀb>¦€&sbу2Gqy¥²<#‚‚pY;ò“FPŠ&xPe¸ƒ9– (Ê!•@ëÊ--?|‚>æ—–'±Ž'sâÆk±Pĺ!ñhS¦3‚ ƒ¶zDjN”îò¼×YÝ…uü¸£ã¨¸UëGƒèØoñ™¶a«ÍàˆX8ûR6ƤN?ƒù †  …šŒ=/Â3" ÜÜ˽ŽÿNc®ìp4µ¼9‹9/ÝÄ0EÃLKçpÍ)N…™`¦_¦~ÎwùU—b°Î…Å:¥Xg†DD¼I#Ǫ4 çúåX¥ l•çm° MŸ]dÀ}ßäŸñ‚“Hߟò ç | WØÖ$QNOʘ›…Ì%†¼ßÜ(aõZ)*ÀÄ»°0‘s):ÚÓ" :µ§É7 |ïž1 9´$×ÏgÊ9!¢T*‡ž˜äéÂÊqx\Éí qGPDu£Ê¤®×~¿ahK\ t‹4-Ît1-û²¥j8¿3ËÂËB<Ÿ&"¨QeûV±;æÑ½uÔËù/yuõpk÷àåÖa»óf÷Y{ÿ`{o±Þ”r¨F‘uU˜‰ÓJ½þ v-t6ñý¶VÉ^RŒžZˆÑÁsаîúG.èÐØŸ4¬K‡ûÈi6ÅÆre7}£®‘ö‰oÕ0ébÖÚÉpz(¡M,c)GeW†Mc /(ÓÅ—`jýYÞÊâg ØÕq|“ãÐ> @îN0æ=pˆFÚ’AwD/ìÅè>víG Zñ³£Q,ò Ã5T‡büç˜R«¡¿Æ@’ë&ÿÀ¤çÆ /ãè²ù!“À&%2ûí­g«T$Ùÿ†£ÛÂøR²9y‘*.5¹…ºGô´…×Q¿RÖ<¯ ›+öO”m‘5sfÛÙ~sÇî€SÓèÊ®´Àg‘» ,žÔs¤–OÏÜ­ÃË6át5ÂöSvÃøÊXD죘¶s1"@qæñ=r+ñ|Loâ©ê*ç¾sä‚]C>5t¬èÔ ÷× £h~Ø+¤u”ÝmÀÿ[À2HÏtkL ®i¨V‚뉌4—CödµóúHRÌv#ÕÌôEhw*ĘlÁísž‡m/¦LøZ[æEýÎqFó·¯cËÅÌð¹VÁW„¹3qb™Ù¸×”ù*8Ú”w©ÝÕÇ$íèÒù-ƒAI@œ ×d6%.o¸ähD˜È1ó<êÅ®¿ñ ,GÍ‹? ¿rÖ‡ ôˆòʉæ»Õè6Œäy­ós!†àŠæ¿•¼;Ý‰ÙØ+Õ³¢Ó§Õ²úª>‹U‰ät˜ EÕeAuXª<ñTª,j¯ÑÞRû7/ Ä !ïnO¼Ú&-J¹>Òìr¹üe`ÚQw•©} íUñ5SëWª¦jùü¦×jõlså—dË7uÆ!mˆwcÖõ¾“¿øNãWfv(SºwÏ¢‰êù%!e¿—ê ô{c¼Ò„XS‚>Jq¥4A>í[ŒÙÍ~®ÿZ^ú½óÿ=¾ÿðA>þëÁÊ·ø¯?ägÆÍ\^ú:`צ§û½ÃÂôÇ £'óÁYzôAØÉœôð˜¢%Áâ|¤î!x> BMäJºcªÛÑïÛÚ X`Ã|‚UÒ#äŒ^EÝ×ÓÂrU†25Ö“Quø¥¡jÔøK£¤nŸ‹dV&’Y9E¦@1ù¾]8S=ç;ý¯ÊÄ q£Œ~‡HŸùPŸ¹‘ ŠÈ©Ÿ¬Z­¯¶аÅOK³œLú*Ÿ“v$UUß3Ršdž«—H¤Ö¤s“{kF]`>}¤=( ]ØÔÜß¾…} 7* 7úºó-tç[èÎ× Ý }{©=µÍxkòÅù*2ÇÉŽî}ɉ¨§j·BÈù ®óìÚ0 ›¹aÌŒ0SŒ–ɇÊHFãfÛñÊmìèUB–Cs’£ùÈë]TÂÞ%~„Èòe`+ÃñaK'©ÖXu½†.H“÷XøLØb´”ÏýœÊ´ÂÖ5I«¬ã/òÉÕÝ´4™QRÜS£+€Y è ŠâŽMB!Ol’$÷uÂi‰ÞÝ|É«°=±w„býަÇë’ÝÚÈyqÐ;×·ˆŸ²y±n>·Æ/H9Íш§<Ò¢ŒÝ0“¸.õß‚ïjãœéÔ ¥ë¬y¾2ì(Soø.1.ì²Ýž›µÝs…ýž»Á†ñŽÁ–ÏÜóü¦—%‚?ª_GaQ즚WpÆ…mu¯ñœ¿±×l*ÎíK÷•NsšÛœÎìš ÖyLÛcbt›¯|N‚ lÆO‚P£[ˆÈõ’[o³~*édIO¢µúi:tüj£ž:é:c Š*:!áÒ Ûa¤B¶~ÐtñÊò4éÍs†Úñ|¹$çú|}¾Yž(J‹1í=W^®yÅ+Îâx`-¹äÐGÈEücQk€ôï¨uÔ»wÔ„ÿÔ ŽÆ¿Þ«™_ï¢Zaiy è>ÛrðˆrLv›(Çã±&yB˃²Ÿ×ÂyvŠ2W åè…øÿ}/ðÊ&r\ òLÏoê@=ç?qÁpu ó˜—¤·œóV-Õt°pHåN '°:6ù¯¬ZÕtã‹48îGƒw¬>V¾eœôíV·~³.ÈdF½ÖEY’ÿÒÄЕZô1]È}Ì}!<’ í÷:;œw•¼¸ê××#ÝÀêìxX½ Ô6]P*|R”—iùgÿÈ€‡ƒ9•Òmú±d%–]pæ.& ²©l{Ÿ&T¥RÝú5Æš{7Vòr©7-€¿‹QÁLPÝ'Žö’•^!:‘F8Yçܼ§rK)Ä€6)³L=Æ ,Ƨ‘Åcø%f_#LÖ”®3„jtp ±sà 2¦ר»;'bCãl>CEc´ø­ÅÿF]ÆÑbó×{õ£ìî*ü¿Ö¼[wüë§8:9F ª×¬÷Î ™­Îv*GÙ=”|“á[gpÌü…9HasC§ƒøºé©fúǨ·È®\‹˜²›”Ô4²NGX‡[¯?ÀíÆ­µqã5÷¢{õC"WDwp©Œ§a{Ó‘\$h%š—š? F¾HGY|3|:³&ÇTôZÕѪõÒõÅv^Ú„ÍзÇ0Þ ×ײäÔ„@^,ðšäÐbq :k]ãA+Éá™÷ñaÄDößÚãTÀ‡·‡{·ÉÌhÊìûÞ”x¦_Fz®‰ûŒ¼ésNÊtÓ«ä,qÙûæRús­ÿGö»×ÿ^¹ÿx‰ê?.?^^yp…ü?î?øæÿñGüÌðÿÈòî%ZS usúà™Þ[õµ›$ßÌÂ)-gš¹²1‡•_Ö½s²xpðrq;&Ç£´'·|m³Å#ÇÒôˆ<™ñ1›?cRF¡ýU’¿ CN£PðaÆS„?NdStÑy¬òÖ°Î}H»Õ ª}T‰_àé¶BO‰j‡±-Ø#ýïy£ø”m±žhZD²(õ¯®q&(ó;buðæu{u5GÔŸvêÖªTîPêQ@“N0Ù=³lö€ºôÔÕ¬_{†Ž©ŸN÷c(l]<ÊúÚuìdÙDçÎß'ôD?çÍæiÕîä2Üš5€À‹ê~×Gwê°R0ŒÝ0Ð!Ã04Ro §µ2‡ý{yfÖElš1.ž.v±OoàRÿÍ9Ôû¹žþ¹è5ôÿþƒ÷ƒå¥ÇðsåÁÒc¤ÿ–¿ÕþC~fÝÉ¢è|ð<9E5rül|GÚ”ø%¢¹4‘w “ûG¨•.-<]]ýK{ÿ`goW±–mŠš mF|€ê\¿¾ë»ÈµÆh;Šè² ê£ rôS@=A“: ’õP|ŽIÄEÔ#%ÒöèrH(5ŽlÍÖ…§Rž3ïË]9˜=Ã2;ã´m1¸yfEé)þ½Øl£œA[^RíËj(|qö~³ðY©BïÊ]Rõe©Oª¼œê”ʯÿm¼L¿qÉ߸äÿx.ù+±½ÿj£™üÚWAøBðþoyùþ2ñï?z¸ôp%XZËßø¿?âg ÿ§'Ÿcgˆfù˜ ÏØqÜ{‹‘¸ŸáÞ{ƒd$iÓÊ»®dµPh7‰DkÁyvŠ7dRa=¯r¶Èç/Iº¡d:ç%„’G…þ˜ÞÁ_·F§!¯·8KÛj~[<€Ýýä¥…Û =¿LWûv£ZÜÖçѸ‘ýg`Íÿ=?3ñÿy”ôÇéïÿ¹ôp¹ÿùðáãoøÿø™‚ÿùäIâ?DO«ó´7éÇVÐÏȚɭµ cÁ7*/GY´1¿56¯ Œ¸”üð»7ƒä¹.cøùé(:âÝxH!•¯¢îÞAýІ’âdÐÍ+h "t5ÄãæT“'I„£¦SªòèU¢uÛÑh¸6“‚xÚÞ}öjkç%"ÐÄÍHŽÚÙëöî_>êßFm‹^¶$œ5è©5ÉF­ì8´tÇØ—žã•-y<éÞÔëÔ»ä‹Yü€X°;«ìܳè{Ž’Ž€ Ÿ„»é8U=KëÑ£ý®}Qé`SÕ¨:]Äsÿ¡s5ÃúP16E±ÜÈÁÍθ‡}½ŽÇ`â(7dzš@Óa<¨é Aîùä–Å4 ±¼Èן®»ß<óÑd`‡¦Ä<7¹„DP r¡ÈŸ¸÷ýÊ >.ÕÊëµ÷À(HŒr¼ÆÈ9i Öð’4šOm€ž¸ƒQ[ŒpT¯X­ä5Íbë§.qâlúÔè"f|§*Dªne¿/>v éB÷ÞIцIàÞQI‡ƒ¿$¿p!Ä­Æå¤x[rµ L[ß9’”wîW7€~‚|1{½ÚaJÙ_óÞHfº_V¿¶…Ð½Ž•PKá–ËÑPñýZ¡qhJÜ_y‘\)©°ke ô\ü{ŸâÝ:õà‰íx58Z0ú%9öµÇÁöÖË­}[cÊþÎ)—$AذœÆ‚é =_Ñm;êžÈaKÇá¶Cî¶G&™p (àïùÝÕÎwoë[\‡_VdØò~•)ÈA½‡k’‰c©n~omöz‰ON$û&<‘¥¾–=gµ»iŽå+X3AþÅe›G;xç @ÙûœkC9?xø5‡^óÛì|ÀäÍþ½N÷{óZNΞ†ØÔ=døïÞ¸2!&ë^ Âö,ÞÄ2 Oµßg½.ÍIx‹¸±Z²8òÖövûõaûYqsƒ¨‹r³uÔ)*üL`êáå0®6‚*CkØ’ Ó`¨Ø×ÅkQpkîpƒÿoc—Õ¶“sœ_É¡cÖ}çäåÌÅìÙ¸’8]qè°Ä] Ó[Ìgœz³ñT¤ÿü‹gêÿƒñðËݯ³ÿ<~ð`ý—>xðpeéêÿV~óÿùC~¦èÿðäIû·ã»öHÔn<¾HGïàß‹,ÐŒÜ~ÔöŸo?<~\ÿ+Ðç%™#‡˜ÝÝÃ×y—¥ß)i §Œ±Þð,—îÄ$ò™¦Súú¤2…Òøl”NNÏÜ‚NIóE\ÛP´%˜c% 4Vo¶&F_ÎPÄX/nƒ<,)«R¤ûÀìZýÌmÉp^CƒƒÜT?ã)¥°M„™’ÞfµþÔ>äõ;Ï^´·žÞHcwC踩Æ.§²“™¦³£Lv]† „rT$’ð‹w.:PQ ÓŒŠqæžh4Nº}›<æà3sêÐ b ˆ]üÚ6ýgÐzÚruÒƒŸM…®Å_°:¯Í’”Iw0wƒ™$zÙäñq¼ËæÉg- ç³åï>~à¼SÇ´r¿´ùgññäT¾´Ïe6åîd41»wBoãûXUT†ÓÕu1;·²é&€WæÆðsjiè PóÚw6‚•ÛŸ^ímL£¿õàé¶~|Ù6'"ýË\êyÙûKâžQé?o(³A‡\ôH/‚$ÏA?$Þ™ÓQäˇMùî™M¯“œp$¤’NHPPH¤·ÜwÆô¸ç;ü$Œ¤#s§hßìy¸7aîõoG÷ ‰yS௙½&Ø“z-2…çÉ(“@úA®‚Þt˜°Üެ`Žðï¥ì,ïñš¹,”²<Ïœ÷â’3ÛÝ;ìì¼zý²ýª ÔàYŽ£—m¯…8!>cºä“örvæ<–ËÔ)*ÿ.`ñãkCDÝ!&€³4+½#ØÈ”e¸#«$ß{³û¬$W—Y¸T,cÖϸ€U6Õv5?^hš#@v’3É‘§bTÐL–Lõ޽±¢…›‡[ ŽTcp„ƒ ¤‚ Øe8˜^X±ôê?©þý”áL¹Z?b ﯀þ¯Ãÿ––þ_züxéáÇ÷—ÿ?zü ÿÿ1?þçƒ_]¥“_+¯ýòjçU›ZÄÊÂlíÂ:h‹0ƒR P¿¡|hq—fù ±̘íö¼ºÊ¾7µ¾_¥Ï‘•°,uºU)7rµú8E TѹËX "sÍÓ}N°èÁ9"ZÛÙâæGzzÅe-VÍ9+äŸ8¸ù#=ºùÐÃ×n4H°”¾·;–SVÎ:¶£ ±ã¥7O¡Ó9gJákJ~î•W ±Õb×ÿôÜý¼vÎEH5C×áSxæÌhÓ™Ÿˆ„(ÆÔžÂÈVnʦºz7vŽŠ8èðü²Ãú%04yñpÃÞ£p‚=ù¹­¨ÔßÇ®¸‡`J/ÿ½Â„œ¹@é¶ÉÁ-ÍÉ)ÉP³«kP&eè<ƒöe]OèD82µ"¼rÅ #â9c›°]™íš8WÑË?àM·{ëf¥ “¤kWê*€ó¶à|åC·£e¿#OY¾òuw\¾}æ^ñ‘Kð4'· Σw°;’Ä®rèA4ö“˜ùG*•nõzÌànÒ^s¶ûº=G½B8—|f9ñÑË›ûô¶åuùåÀ€Je.:ÞRiy…TÜØQ¡¼®)“b-ƒ‘hÑh„ìÚ+ %ŸžKüqŒµluû®Uät}c k!î­ œZ[` 3Ê.Ào7»z¹K1šwA¤s3d|èÝNï‡71þ»ßm¤>¥Éª|ý„s4‹§? Þ b–(¾/‡<¥n2 CQÏhJcc-pE‡Yã—ßZ¿Þ;úG£á"ÛtÅÏ©+„›“äÃÕ•öó¢ãøö3ýgÿÿ,9€ýýõ?÷PüŸ§ÿY¾ÿðÿÿGü”òÿ|ò%±ßǘٴZ”ªŽ€À¯®¾zöð¶òçãsg>;Kì ’Ÿÿâ´tÉ'=hO‚ð»¥ïÿ äòÞ=BÊYtèœ÷v¨ræJ·W}Öž^]]9Y1è‰×ï÷ [4Ë;C?_ÔǸµx˜Q«’J<~¼Ìš9›J*Ó ö´G¯”¡ƒæìÏ:sª§%;\"¶(óøsî°!}ÅJFze*yä¾*ÙB/3¯÷þïéC…r º ÝîFÙ7HñÎ?ý†Ïi¬ýŠÿ.‰,|Bù*þYE«8–_G¥l·r=Dí“/Û¡²qôÜœT.ò„ ‹^ÇÓúøø9ø+­}D¯r#è²:WÁªYèbN‡Ñß'Êç>Å>>B òa@Ø4ŒZÔ?Å„gçõ+2Ž 8Aø¯nEºç\vh$$׳«¹‡W‚ǰ`ærç]=ÄÖ¡*vý)0±(Š–Õ,Š×}šÑBu*'`¸]&$%ú“Uô.øôúÍa],—ö  Qê”ì†äyÎ;á¹PóËR³IÅìµózñkÚDÍ[±Èß…W¥ã2TÓ¦ÁIæ>ñÜkü– E¡áàé0JFÿ‰ž)æ$`oJƒŽh’¡fÔt½ÐÙ@Ðßÿ^ M£°ž?iO–FlÊx’ÔI¼iÐUC¦•Dì—ÿÉlð þowÜ?ÿêßëò?¬4}¾|„ËÍ¥•{qÕ¼A¸ÒÄ"E…n£øuº·Rê”ñNÓuS<ž0_¨qã´C%й«Šºœ‘Š# :ݨ{×$~í"Bu;ú´½‹ãa'ê'XeHnýêÞSL;ÓÁ9G"™=Ñí°”¾ŽÓÑ8î5%¨mʉÓIÏ£d ¬)eo3t­££–¼À™,v¸½~‡ÄŽc£šíC««¶àj~¾Š. ô 2¬{†näƒSšxIXÒÛ·o·pÆÓBÿõK˜­ ¼QX+V«¶ÀA·~Ã3 *(Î|6Ø¥HÁ¾ '5ü¢ª•†Ø…sxQô³B½av½‹m§«ù2qÅ}¦¢Á¼ãÄtÔê¶ÚÒ®T³Q c’I†®¯ÐßaLE”N¢¤ÇŽ4rwrMTå¤ôeé,(T¢[ºQªSFçV®ŸÆžç@t{6r )¯éTúŠt)‰ã~·)ŽÍâu=ÏeÃ/bvð¥Uã"±`U>2-˨8I¡“ K#‹Ÿw¸mÑ‘øè#ÜWýBž¨Øèm)¬ÎÉVc1—ø}’¢¯‚Wu‰7þ$"?þCªŸê¸Åm S4£ÜÑ (ÎÛ:ÒÍ¡/' ¸žïDj˜‘ÅB}M8N`í,-hT¤(ÿ/Ï'!/H>ã.õgHΟt-(ÔØíŸ;à4 ŒœI²‚ig­bÆõϤÄ$0¹…eHÒ¯ZT@sŸ‡6nˆ8Dì²£8Ý|.5g/ÿÜLüà`IóEss¿?¼¹Ñ+Jâox…Z!hd¡RÙÀᗃݭWíJ¥ÀC‹àà•%êŠNòeijö*éŽÒ,=ÁjÆäÇLï?ïî½>Ø9:†Nü˿uÊÙð¡—ëjuu;=?O±À¨5FW¥ZüÅÅE³›ž£Á%þ‹ÕãÇötó4nžÏûTm/lC‚|<º€ë%Yg.rêd>N2ep;CF4úA¦Á,üɳû‘åG66—QJ+iª¹I¯~¿„aÌUÔ;\>#¦àèèÕ%ö» ó‘¯úêòµ°UâœLèP.†tް_Ç#8"¬ol<°‡7›M§€§yð¼WËLŠñ˜‚hL‹]øDš Fáì²f¥BÁœån  ‹é»ßGƒ1ÊFôêI4ÒgÞ?N²3˜ÝA‚ $ö¼® ëu?À1ª´]ú}ôÈ7¹Tr2ù×[»ØçÏ1æ\ÛX7Œ þ­àRGqÿN«â]L0Ôþ$BEXB©÷1BL$áIŽ;8ºqRþ!\J7Ð-»âÌö`g`’–7dô yòž€yž‹O%,¯ã89N€kGýq<¾`?\Ï·—Oà¿ÝMÇ>éF ÇRöÛãAdÂp½#WˆfåJ­®u‡¨"·~Ô0ÀP€…Ò´a=TÊÐ&œ7)C„ïîOEv2Æ]JìN탭Ýg‚Pá_>?4pVa5èMLÉEtI×[#›Ó LQA7Äíª^„ ¤²g2„A!ѺórçðçJå'òFïhDD:ŠO£¡Bgé¤ò`Æ^ì€&ee£Vó€žþ/î:a[YjyR©µ—ø†a1ýocÀ0çÑàéqrz’¦cÜ[3Ûí½×?ïïüôâø€tx9JNÏÆA­[V––V‚ÿŠ€É ùûf°…•¸±®ƒpG¯ID»¢i^Q(}Cj 3ˆ×”àƒ^‚úÆãɘҾÂ&·0*gPKÆôvbÔ“¡A 2Sâ`Þ?ŽÑQÞâéƒv;Øzy°|9r/›àåº/éQÿbØMÓw›ÍÿHõAÿ¿³×úoø÷«èýõg¶þÿþÕÑÿcåñòã(£/-ã£oúÿ?â‡Ë×È‘Wæ+²çÞñå~ø~.úƒàØÀÓÀm_§çO ÓAs0»3?ýâ·»ø•ù²«Üìê«5C×ä(ÂåæòŠZžÔ®mAXÇ_ƒl|‰<2Ö„D×Až²2nºY"š¿e.ý2¦YLšÜC³L¥“Dƒ½=;ˆðØÀ™:©=NP«‰9>í 5±Ã»ÅMJ¸ž;×<ýš;GÇaÝ©(¢è:4޴αô©Ëu,ª<šŽÄ|‹Û÷Åñ¥€NΊ#b_áq42É¿`\\Ó ‡Í-”d±åš<˜G~XäXûÀ0Ðd˜ÄuVtœ|~M„~=C’èô wÚ/€‘xÙöÁ…ÐP%˜AU7ô,iщGK‘¾“Z_L?}¬‚»Ïw^¶ÓWÈ­yG"ÛËËÇÆAHÅÒ—øïÊ‘ñâ¿Aw#íNtìëØ|uˆ¢Lx¹³Û^E£úB½É§¨ ´÷M›¢6ïÆ÷‹\~eá×§ÿH†­àÍoiΛÎñú‰dGX‚y̬ñù¾¤i½ çèM;ÀãˆåBz FЫŒÖˆ}ìÁA4¨Ä0ßppÏ×qª›šd@9ÀhÒG&D¡%ž„‚æÆ,Âb©<è°Ð @ú ¶ [#ü—¬kˆÕæ0ì'ÝdLÚ¹ Ž/‹€…1«8@Ç HuÞvN§ µÞ°gŒJ°¸‘\G¥€Ë&žRaeM‡ãÜ=8ܳ}¸·_÷Ö‚_¶ö:ø5Îz2/ìXúhb+P³ã„j²„7SN˜ï%*¦*(Ʀ@'Ûëˆ]7×45þEþR!axïQz 4¯²‡ÂþE’…´sÊ@…Ѧ¾P°÷ãµ·ƒWíÃ{Ï 릱kt¿‘n5‚W{ÏÚ´|tÁêžE˜³`Ët‹ƒ40« SKÂ<4w¡FÀíéI±G¢6Ó:ƒyI >¨fe)‹NP‘yk>¶dÀÉWF j“SÛi·Íf'§ƒ-XhaùÏÝ×o;ûíí½ýgƒöë­ý-À8äÂþ«i^®·§ý$;ÛD5lB¼W-ˆ/2š31½¸Ÿœ'cÖ4£ <¿Þ %tJœ&‚ËŸ{knVP;šºî(ÞqÅ €pJƬ†]jÁÑÈ.UÆd"[ ½5›M¼ß¯é>PâÃæw‚/~|ó¼ìþøóaû ü²÷üùAû$Ö…žû•Õã⤠¬ãiÒÁ³â¦&š9ŽÑ–ä0Ó“E>e{Ä@ÏSŠÓ“òK$É¢PbŽv˜f¤q†‰Æ +Øýí.‹ãw°B^S#xû¢½»M¨ï_Ð<ì>0]iÂô û¼‰Z+̤Š`ÄÒÒõ8î÷=€–yM銌½îSL6„““ ÑLï^CO0y@_<ãqé0 Ç2Â^•U ñèÜ^?¥îjõÍYcžæÆ¼Ùê`t^Ý@' $´|$t½9ØÙý)8|ÑÚå„ÁOÿ½óš¸ŠYSÑ“ I¸z!e™˜ŠâžpÆ„ôŸ¿ö?{]àèBˆ˜} ëTŒ®?]lœå> >lÚïð+ùìbû&ßU4Ÿ¦ˆž¤u~.«²÷C„Ù*ð•ö.’1pÑq–öQsEYHðš€ìŠìS•™'œkǬr=Ú^Ñ•E\&ØDäoö¢dÙø ~úü½u†‡Qü®ÌUõp©‚vÕé…Ó1BKân…yÄÄmèEQdô´×ú³GÄ.®ÑCâÏv¶~ÚÝ;8ÜÙ.‚¿âÕUeŠVáÉr5Ào•£!ÜoRÑí¥ïà =Ì}Ö,ñ¸<Æ«ÌõW;ªâßt£ÉM@ø> ª£ã*²„Õ þ·uqüËòâ¿¶J†HΑ°­–tJôbp› »ß§Œ°,CZ¿µ›W*oc~JÞÍg˜F'FNQ¢z»¿sØ^E>ìªÛ»?¾`°ãßÍ(ä£K2È`ÿ¤Nv'èN kfd¹&^´`¢· [þ#¶ÂÖ^°Gp“޲^9*àFQYeº~±sp¸·ÿ³êIþr,`íõþxóyÞÖ^?#œ°¤$Ò‚Bè^Å}ýW4z÷. ^$ñøàø<Ñ.ÿv–~°ñçÎAû›P^¡<‹ºF£~%H…Fb^*ûúªRù±ýÓή4áò¦rcŸ\­MéHŸRÿ S;'XVšhQ~,«Á2 Œ+= N„W}˜Ä ÕR³N58'¡-Eõ–÷é§§I·I+÷ f@á“F¼F¹3\³í,u vFœþ. e=ªå|9±»›Q¶ÖjòŸä‡u[ÛÇ~ss×ÜÆvNnSâÝfewZ7Þ køÝíÊÝp‹è¿~‹{8¯õFn]OÕeùŒEÈð³c‚˜s‡>^óŠ ò—O4þÞëönžabMzhöõYûàpïg˜Œ<ÀÆÎÔd¼ÜŽÝ~á éÓÌÓŠ³£×I–a.ŸGÍŒbÒíñr>VñE³ð°-4~Ýß ÓŸÿy]7öD’öËl¿Ü;hOÝ·kƸùyçÆqO‹mä—²¸)¸§¦­%ùb®?zÍô·,ár– KA)üÚÓ©xDõˆÍ°/l¹ÝÀT¨ËÎs6Uòó•_‘â-M;ëÙj€â™óæÄíÜÂb[yén0}M8°tñM ö¤BóyC–Soä÷΋cØÎ×Í‚5¢Ó¼ó¶ýÛf>f|é,Wã(_6¯ÑGõ`}£0BβU¨/'7'ó.{lxÃj üõn¤Ñ'Ž«ä$;“nÚ+#H'Q³;¤Î¹ dJj³Âs•3‘O¹É–.“^î™q`‹µ’3L'%;F$Ó|¢Öë6/g{ïùðLÉ0@4k¶#òäÚ“¾\À5-ñÅí)ŽP·>‰LšmRUFö¢> 7žgñÿgïÝÛ›H’|áó/õ) !Vèjchd0¸ÁL{›aº1­§,•m­e•Z%aãóÙ߸楪$›^¶÷yÞÍ4–ªòž‘‘‘‘¿0þhÍf3·}ÅãôâÔ0;2%½¤—fG«sküq€„°î%%r¼‰˜ÉQ ¸WY¨¦F7h±¤¡z´EµÆ†®egÄAÏÒbsäwÓ+¯’‰“]ÃîP,o¢X Ý¤ßz˜É–j7)S5fËKµŠ5røoÞëvMX8÷ÕlÚŠ_[›ßZË{gr¡ç(_¼Ó‹=Í9‹$>X!¦bG—L~Õý)Jqõ(ךiydNãLý ÅžŒ®J¶ˆ;è ÍìRÈ€¬Š/RßjÀ£˜­OâíóN£ Éy:<§œH€å㔉(r@QY5È‚–HFá’ÃD®!ñÚ•mÈÿ£@ÕU­IV,:«@«Öšö &Gfpxˆ«ó™ …6dj«xØ¥ÃZ—bkH_ÕarÏôK7ltœ!ô+vÆP.ÐuÌ`b’“¶ßþa3;òÕšv&U\ Y8£˜¯üù¢@‘•¿’dc'ÆoàèÓ¨AMç±3 g?ƒ„¯mrÇ"×gNýÌ|Ëô:7¦ã8gbýÊÀùÞJô\¬X&†QØ <Ô4ˆÒ>3§ js¶Q®V3ôÄ}<hé&¹¯Ð” ¬ip[r'Ü£SUƒ Ò§ÄgÎŽ/sMõÔ  ˆ[Å©KÜÑAò%–Òk@ÔgÑc–¥aq­ãgaÜhí!%.H4¢Ã\È lT•sŠgjl9¿ÐÔ—aD†%鳚;@íehÖ¿ä“õÿF ‡Ö‹d|8<úa>àËý¿W®´üׇ+kˆÿ OÿíÿýW|Ôcš±;xâ ì0>¼ß.6Ȩe\¬ V]Q¹°T!ËœUŸ>[Õ¸pCÂjŠÝ;¿¼Ò鹯G옋¥ef2E5à{:T¸¾ÅÅ%á‡a«EAïr1ˆ\‰Çt¼‹*U÷땴ϯÝa2­…½g°’ ™+µC‡ ÈVöç”Áä·÷¶vºôXºAË-©Üí·¾? «'1l R‰M cv›†sIˆ:BpïeLO?@ôuÞe‹°ýŸ2l/&uR?äo†Í÷_9®2Cà—牞ûœ¢@ûšO³"#èLÄRR#ý„ÕkÓı:Ä)ýy™tÕÅU—!)ø¯4<è)îØ7˜|ĒôF4ä¸n;\ {®Ni9´²äÏ4Ö<½"ß»;›{/~Ah~®·§I72±×°E_$šB&äšÅ@Z"°~¡¨VÀ|Ä›]UL¬<žÎºV÷Q³ñ=ó¬q6© ¯–øY‰î›8š*'êæÛXBXÅ´”û4¼}:â·Õ‹“÷½ãdcj{Mq¥ó‘d¶B×zø¨ E?®1KÛ¡Mx˜iÂ¥CaG!S?£KÿÏ ‚ m¨£`ßÑ‹Rù¸9J€¨í½Åõjí7[NÒ/˜´YþbS}“7™4K%_jõp ×´^qׯ}YsGÃÉÞÎÎ…û!ó%-žŸHð—¡ÔM0fÿ3-Áyâ~:­ñ_HQc‡/ßêkVI;f;“^L Åp\·'O)³7ßM/HO÷i½e½׬S“nñÏÍwï4šõÿ²Y‡®åV%FGí-nÀÉ÷5¢|’o@'–$?6\ÈAEŒC£Â,¤âÞn ;‹ªìl¼™¢JMøÕS§±FcÔJ¸ž¢Ê ²ñfu»€Ê™f01§­óóý¯­<ûÒÉó£W: \þ¶â½m»Œü9 £!Ëj¿¬[1Ò,Iž=ûÓ½i§:u Hd_H¼¸×ºWòùOæÇ@Ôö\i+¶4 ÙÚ¿‡œƒ¨ B^òûþÿ-ÙßjåùɪßĆ. fk¦=|+â_Äù5eœÒi{¥”û³k™ã‚߀sü¹É£ œÛ˜‹?p²ˆãjz”öGåÚÜÙ.kÖ^4›ýÏõ|ÙbWnCŸ/X…¶Sxø+Ø ¥ø¦÷‡MN›×‘Zóц†ÊÈe7«è¸GUc×-;š Ÿ¸†Ÿù˜ ƒ2ê¡dpÐÁ$¤kZn3²^Ô“`I^$q6H"+t$,§Ù^2?ÀÅŹiHøB8šñ…;ïÁÒtÏø=ü»ôd„höã&ËI|¡Ú>Öç|‡åSLô”¯çÞžø`W‡¤LTœ7¥^¯Ú¼Wƒ?-?5ÒU™èð{I¹ uw5[Mé<<<ÛªjC&:±ò1GììǬ¹:¯ž`$öZqt¢…S›K]Ü:~5öé*ŸŽ}*ùì‘Ãâb¥Í÷ï7-އ©òƒˆ¬*‡UÈÖFíÄŽ{6(("†‡èCþÂÁÇÇ(÷óï¯rOŒÊðÅ‚lLÀOå„ì-?‡÷Ÿæi®LÆGh¨ùTy½’±ïQ´§å0wÍR†ñêb )×ÈÕÒÝöê€Áú° '=çÒqcEÙi‘’ì9yJVÜaùÀ©·: Ë‘óàŠWxhÍ`{Î[œ]}¯Š¤Ó%J¯SWå…‘°‰O\§i£DEúeQ{a(EN³Á‰É>.£Z£ª–kœ¥Tgê%æ@#8®…‹ñŒžtËùo—­™Ò1I¯·õæe¯—5uú°øË|Ê(í®TËWâ"ˆaâÐ#þ-K£Ð~÷±„§…<à®Z¥ÔìÄ—ªt•…¤Gƒg@Ãèà(HAx©ÙôðÞò~„1>´T zâÖÍ% +'*Çöšá5ç&eGÂN~Ñül„w ÚS/¥ÍÈ ÐØDtBw˜6ðÀˆÍ“CsßAx‚³GBp,‰©¡Ý¶SØ2ÓGq.«¦p2ŸN†”@¤¢d4@;‡Ñ,b³4)™œ@Eó‰ÀiEW—G"Í ØÂD~‘Øþ îÒqÄ1ÐÒ”6k¶ ¿°ò×, ’~>5=C±•ÜŠ)`D®sB›P(A,r©Ðô@1k´›8{'a=,À”‚’QÀ†ò0ªêaY£ã54t:GÛŸˆ®·øºiÁÜòÒb˜ ¡k ò2ÙÁ–¥ACò‡Y§`{œÁ‘3µùhnRX®Øv‹0cqÚ¦lö„^P7iÆž˜¾m„ˆõStåglšOžÐ›ßépc#Ûdá]¢$•zx—m»jEéöï2©ÁËÍÁÀLÆXŒ8smm\¯xH¥Rˆ4F,Ðh‹ñÖh!½3‡„òˆ@´Ùæ ›ç›†YÃh7ag½ÆðgΪf° ^Ól?†Vسã|`È©ì&"ép-ˆšDôÆv¨hµÊê9,CjYGœ®¡ jj3þÄù=2Üo±˜˜› ?ϲ×ÊJ–&±µ¸kÂ?î0>f&å·•–œ-òÇǞŠÕ6‡ÓA“¦£Ql3Ê’5(¶Ô´Ž:@“mÀ8öGV¼CTEXKsYE«Ûª2MXV©$ÕêÖcæXØf6áÉwG”ÿ “ÔAÆ…o@ èË)^Û˜¸†|Ñlò:6T5$¾@Ç]Äaf´QzSÀHhªªÀfDŽ’\ùÍY—…Ô¦©–RúÇi4™˜ðUÇ„1íÓ#”¾0guIV©'»Ñž…¸…gv‹„­îsˆ€!{¡] Ã!ÓgQS!±ÔµŽ4SO¯šf¦/Ì"}ÌР pl°MQl&F5HÜúÝ©ÆùŠt3ÏJ v{gÞ4Æã g ä•Ï“!TÚ¨uJ]é±Ì_ƒ`ÇvkFƒ¶QH3!`8õ:A4ŠäÙtŠ5ÉeDÆ"æAßpmí½ÿ°µîŽžW ÆK¢Ì\Šb’!ï^m¾Þ-ÎŒ`€¡ÆÒɲ9VÔÉ€'Õ}­’[h§Þ s©Œ?Ñx¸[¦»Ñ¢ª¤¡Í$êÛážÐ’W–V²¤t¿àì¼dKÖöS£”šoîu¥º )¼l@2c 2+;t ÑÒÑnG'è—:a){þà%€Û?.Bv2›”ÔîhÈý+Ýé- Ló}cì_©^[ø0[ =…žG™7½¡Œ¥gë47‹å÷ñQ|>ÉU:0 "E*`·.¿M0Ü[°ÿ˜¶ö)~e¹åÔe/çÊüµ Þ%¥[Gvبž.KØãÒ»·»{î éµXy0<Î ž³÷/ý.h†ð>q¦LÊs‰‘nNÅ£¿ißzN¦,*.e07‹”½=šqiîìèÍ"É\8Z|®¤Èccã;Á2…ÓÖÈqîL¸Wlt³µð%ŠËÞÓ5Ò·çË_Sá’dÑ$PŽ4i÷=ò" 8±Üˆ9 }ñ͘Yޏƒ4óEß°¬ó‚ÂLGé²|û‰Púö–ĬÂQöX?cf",/±Ì(„ ˜DY—Qž 1uä¶¹©ƒJ€’G‹ë£›'2OýY“`ƒ˜Ë³Rlqý™k3hHiîÐ]ŸpшdÅf‘°ä c]Ïò˜rÏLâÝÁ`Sü2O÷å=áª-¤]!~ÜJ»ýS=üÛ0®²aœDxøã¿=\[ý?áÚªéç_ÜþÙüÿ(åþ=X}óÿàÁÚ£µv§ƒñÿ®tþíÿñ—|²þ4ñ üþ%*Kÿ8«Â›t^egñÞ€bëÀïxQs3üBqÚí~˜ –³—NFÙîùW6¥+Lï‰ÂzæÑ?·Þ½}ñK#@ª¬çÉ£Á_¾Ž¢þE×8„–诋%¾2Àoß¼þ£¼B^ƒçKZSrYñ2v»oâ>hôÒ Ð5ÆmpˆW¹hT¦!²û6çÃÎ^ñ$édaòû[º+߉úowKz¥•íQ„ë×h*,¦™:œÝ.Î ™WÛuü_þ{ÔæËÃ;á¦ßtïNJ.pðKÇQ«¾á †Š|ûöïÛ[»á*R¢,] ú$¯¯.å _ð´Ðp ys“ „VpK+ÑëRÌŸ\-Éu·O·8j±Bl6/ÈYZ:êW˽ÚÝŽ/˽+÷\R!Q¬Û4‚æ~ºO(D|-F޽¹¤x5ïz Qé鈭üäNÄpg8DïEɢ͢עI«š4hNÊ¡gû_Ù©ßwJ2…ªV$$}NÕщB%b`•äkÖf]¸†ëÖË¢g{nZh}(jÞ‰º#„Ȉ¾W†˜4Œ"Çã€?ìk©~J\IÑ@zãdz†_c)Ok©©Ù^O­[w[ŽíRÄqŠy'ä‰Võ¨B—x•äàáôzÖû¢FLÔ(a = ~pG´{°îdðD‘:Ns€±ñ…Tìc?ùƒíšÎÀÚÄP+xÎ×TØÖ¾0?Æ_îVnÅ®·ÈÖŘ¹èÁ€µ’m¢ \Whifì‘$1BÒ´Z÷M¢Ê•…*°ÍèÑuôÓpq®Ë ¿Bh›[®¥É’ÆgÖ¯¬Óª[gcƒÍ9íÍÆ“Ž 9ËsÄnŽã@X¡Çx0F•œt:Ôêúɔϊñ›Îßœ i@ ƒUT‡Í¸IxX¸žˆnéEç–ÝnᤳB•Íx .:l«è¨^…bS'm2s„3=„Óܹ]0õPnŒ"àp|WÜ*rúz™®tˆ…x½W0Ü1Zܽt¦Ÿ7‹+Eq©–%g½ «¯N*á:¥éÑ}±°˜z9>Ÿ ò,Y+–Ÿè–Ò+éÍ 6Ñ,¼‹taZ8“”GF”úý ñ—%™ZÒ¼&?@vżeÑk˜y¡­áï½óæ[‚:ëÓÃnš MDnôÂÌçÿqæˆ+HY¥²ži{o(½¼­Åýû¶K~÷ņŠÍõpKª‡¥ýò?8ÅSMŠ»hnzµbhx‘)ŒpEV×­œÍ:we…¢Š™:JR¥æO 7‚<ÄÑçy"¡6i—43‰Àä¸S}lÑLJ{m‡5EÚª~Úßß/}®µö÷ËÖѺ— üãj ¿rO¥ dn2K´ÂÓ˜æ\ ±hãÌ rŸ§¶”ƒµºÙ êýò;`9OKeöfª…2W–­/Êø’ö§*:afÌèìâìÅgçߨ€[vÂkñ˜ÊïàaEÖ6º‰A%Ø.ò}´¾eœy=K:åIn&ù»Òµˆ†Wt©?ÏcÁÄž^¨eÃ)ºÅc¶æ^Ô ðâ‘àr2hì‘ÄÀ¢ 1 I‘Œ1F-Íœ¾$dßõ‘  ø ¬Á”ÃfÊXQƉ›O£í"rÖPÏ`ºè±Âh6*d]HFpM̓f¿ |åÖ¦³àù‚Çú4[IÙr™DV²Óœâ<ߎO„ ;ë9ˆt/ÿ§ß›Ÿïµ™½@ª´ˆÇÖçÝ*“ýhà1dé«0k¥4ãi ¤kÜÂ|Ù&¯c¨p®ºæ9¬ž£€…c`ZaM‹Qõ©Q®£ŒèÎð¢Z×I¬§=·L|¥T³Gçã´'è¹K3•²P£¦‰²éQs ™R ‰‹pªïŸ çË,(8 :zNGמqæ‹ù¥:'YÉüÈêl¢ì±îš3ØuǸ?u"#bætpú‘˜³kòKç0$…qw~˸;Oè<Ô£tÂSñ‰ð¡J·ëûé½ÙÏrž\øqzÖaJ -”Ž9ut]Aø>*Ê{*eR:Á­¼åíé_\ч» =.·Œ`œ‡NèŽñ 9¯°lìLâûërÓU¦ÉÎò ;> ‘¡Œ} K2–%ÿ“Ê÷i¨Ú_v~/V(¡/®Î§uThž76âu‡KkðAŠ¥©–ÈfÁ 厫rÆ¥9€#6Ë1ª‹“ù,E»8º~àtLmPUoVgñ©ZÆ”„2‹°Šƒè¢Ž¦Ksz„"  áßÙWœQ[v—·s,Ã9 áøàªÆÇ¨Ý::¥1ø´ö9¼v·ÛëšÒäÆC¤f‘’ŽV£S[gTAŒ\ƒWÀ?ÛôûÂÞ¹'̼¯–9þ“;‰ÝÕg]þ¿ †°…L߯iƒYm­UÄh…IXú‡±Ì uú«‹¹¦k1æÚëYA<Ë>Hq§4œÞ!çÅklÍ%¦¬ù’ëîÖ^õo¾Û(o º÷xƒCWÖeßaOP–ŸË.D®Œ6P–>ç-wZH£ñ¹ÊîÇXXÙâôÍ—…oFè&Å'Oïêè(A'~”¢ªƒõ‡Ö|̨G$F¤áõTÎ:–*ä«d˧„o§°¨¢£ø[!Ýf?(b}CrøÆ:±oz4/·Î×´e¿( ”>Þ‹¸$¤w…BH öX)W=¾qÐÉ×G†Ž1¬æd¬áµQg2šK¿Ò L¦Ã£ÉKOÍlÒôÈùƒÚ¨î˜ ‘¨Ù5‰ò}0 ‚š”'#‘/O^\­«äCZÇ|:~¡É`Îð&6Ÿ¬"³YÑ”ãTI¹”f™Qà‘[r Çfi5Ÿ#sm6Êm{ɃË?H7sÉÏäÀŒŽ¤äÙA ”3Ž„ÿ¼Ô4oJž¾YÓÜæG6ŸO¬âÙa>™9VÆÔ·è®J/Ùêù¼³?¹ê•åÁdHÖ½ðQU‹RÂ]¯‡ ÌÇ0:Þ7ª sO¼,_¦ƒy¢k(naMnWMv¨o[ »¦!‹”vÆ€œ=²#ÿº}¯4_û…‘è @ņг¹H,ÀG¹S¥=Qz§I3N¡šÏtÇ6§De׈ȹšï/…šÒ¢×½çØòé÷Öç{e{ò²8˜P^SÜñf½öÐc³øüÊ@>¿ûÓ‚Iœ*PD:×tP;Z°}sÑ¡»õâkwU R“V¢]mãè ü[ÜÕ&+ºm0û_²Ëoä7soÒ3…—¼ ½:ªðõzÑÜTÑ_W!áÈúXryÅ›@]÷Å ©™©ÈÕÖKNªûvÏËiÙ¯E|ѽŒ¢cëX%œ}}þÍvR× u–ä*¹¬+?I·)mÇuw¬ëþWmß n¥‰ns‡o:Qg|"ûxÏz‹«cUž‚`…v]r©”+¬4wÈëᵋ" Up›p‘€Z¿}³÷Dø±9 ¦ZÈBÔ©HJåºii™Hé5¹ì¶Géñ§Ffsm‹®rèþþs&#c€”""ûuÚr 7ãhʳ‘ù26Hl3vƒTɨQ¼ ü §¹ *®„aJB Rò‚–Ű WŽ„†ƒÔP˜1,Ýyýñ¨ÓF§Ù6p,N"ëH{lTo/.ù´ÝSéZÚÅàõNCn†6ÿƒ#ƒ¸*5çiXnáF½¢°ÑI8‹Ã£„XÒx€'†iÜOàøŸ'ÓìS›j »àÛ…FGCÁ„›/yI»¨7ÔUà$Dz2ãÖYK·Ä=7®‡€B‰~[…Ö³&cø¯œŽ¹¹SxÚúÝ*W»¨ Ey«œœNÖ]ã#Õ‹ðUdЦyÎù»jöTÕ·öc8¤s$™™AÎaÞi²¦µÑܽiÖ­ìÞ¾É<±á¦çLMK» }ÆšPmKn¦LÜ7 Ët¤:g× „F©ëåÓk3ñ[4ÛñK}Çø\gä…îÉ9{Åè±ØÝš2çe3*ÎÜ+ÃÁ³eس¹½X=æV¡‰©—ØÕÝÅÑiÉö"ân..-~?ß÷BØ.ãy5[Êõ¤öþ(ަK [éýÒ‚,L^Û3¨ÕnAêKÏ–V”±´Þ­…ÂG™ 2¯Ü ó%dY\ÆêÍ˸¤P<Ù¢b–ÝØ0ûE4XT-üÕí]Lª•)È@]‚¢1­~’Õü©NëÿSfûóçÏµŠ‡¾U4½YŒa‹£éEîž¼*(zޏ¬‡Dýó¡ ‡yæñgÜcäsÇÑýŽ¢#< ¸gaBqé}úés ¡Q1ý›Dn;YEùÌMÍI¡1κû˜®‹ÒHˆ=”H©ˆìU`æ`…°WhÛŠ#!°&tTѪ4¿ªÙa³á’Ó1ïéå&ì¼Ïá¿Ûðßï¸ ?«y -/Ê+Ù‡m‘¥1„$òçMÓ²èüæ(HC/…Ý]nê«¥@ÄÇèÉp^ËÕÙŠrý¨~Úo7öÏWÚûçáËá!tÁ‚«Þ½Û^ùg©+;Q£n„ÊÉ6\ â0j­ö_Ñ´xÓCÞ÷ã©Òû/²7ñ^3& ¤Û@ ­7ÿ¸¬üòvg«rÕMTzl¢Y‰³*ÌÐ=>bkF¬ýõÇwX'ÎõÁ49C|ŧø¨¾oEÎ÷Ó¤@Ð maÕi-–ú–C¶"©m ÅL[g<º?¬('`ÍEàœyÀž‡l@lâ» ¾•šØEaɶ­6œ`ˆ‘Dô%:Àk|DhL?gz¥°Hü¶K…Þ÷§”qŽx,J&¸ð"ch}÷£ñ0=•øÌ ³’ÑS?ã>ˆÆ¥ C HK‚Ö834×pÂé0FQvÌ’„ (£!¶‡Jc(°À*xdd÷íæ¥›~d"¢{>–×½©©å6ÍË‚˜IœªÑñZ䓊aµ“Á|$ö‹CV:%srl1bA¦³‹QlÚ4ˆÓþtxÀAÛ·Ÿ¼õ"\yüpmƒÑ0öð—h:Œ°ÇÆ>O&‰ ‹bìƒÇÑN87ºv Gˆ0(ö¡©B¨1Em?ñÖæϦ”"s¥F<Ĉïå˜qviÂ샮q.¡ðÇNQjV¸χãálH>ä"Z„b0ViX8ˆÉ9ß ñ–ýÙ ­€ c·äÛPõ¦Yx;[{¿¼}¹û§Y—ò<.µ¯­èœ`,i´a‚ 3+8î“Y¬×†À¾Ä~r4†qb­¶ó!?™jŽåžh× ‘w7Ž ñUÃ’Àr[S&%Ìi»r¥àV=¯¯|õwWrÄÈM|35ø8†l%ü6Źn@ÔˆAÂ1zƒP½G‡zFÂõŠ ÿœél8îæÀ5ªXÈœñÍ¢Œ5B<ékKýÏj»í¿ïM@"µ*Ïÿu/Er¶ ŒŒ§|EÒU³h­ZMÇ>("¢3/yBc JÏ¿ÛG3E"Ê'©)þ™g¦¢ò ;Hp]É‚–å¨+ñ‚%©ÌH›GsU¡_Ó”Ó9â""ál8Qžµþ‚†™LÏ¥m¸íVi³°ã‡Œ B+AIfRø½F<éŒñ=ñ³Àcp;òû/øE¦ ¸)AšÎ ›ÆÔ’Ì*àÐŽÁ—Â|‚¦­ÁÌån„œjû]<Ž*tn"¯½ò¾ñ]÷þÝ©CPNufL¹í‚K·¨ñD×.¯A Ë—è2Œ²Ï‘ Ÿj…­Vµ€ŸJ f@TÉ Œù^¤~˜Ãñ`Ø‡Ý =ÁŒg&ÔŒ2sŽ×ÑQ0Òǹc@¼º«gÖÜ: #+Ò·õd{2A‡9ã£á ùíS8ð ‹þ¤´€ ð¦uÑ‹ª\%ÖD¢”i£gø~ùÌ‘G8%v7_Ü_ Þ÷ ¶ûêÞL%¢6a†'ÑÀ‰ Ò¾K[ÔPn÷ ’á™ØŒ³ÄóFf_ó˜]”å¾mn°e'ÛOüýhƒŒ4cÅ5>‹F F®åï~º:O£éI~ƒ8b˜¿h>R”Á”ÙZЬ]p/ÏQf”B ÔR†ÿÈŽn<ÃÝâT§1ñ‚ŠŠƒàN&&¡$„Ófd ‹óBa–,îeðèYcŒž‹â‹d«aÓ &SDVt½èÅzÃhì©£)Ĉ)$88É©@ 9ÂiqO!GhæÍÒ‡³ép6Cš¼|7 ýZAôš+wR^;ñä'(ÊÞ:`²=̽ LWÈãœF——LQ­|µðMÕ¨Ùk7H$œü{Òòþ€9¶Ç_’^®vpþñÜd¹i³ýìkfj`Š$ X š­¦uÎb„†0 Œò©®³Pq ãë‰Ç Ó˜º¸EA¿ \[ ‹ ¶‚@*8F0A§ ƒ\nؽ 5Ú*h'#E†”?LMñ‹§£àª,x©;Ð3 غvaùZUK¡~¤?j àPŽýÛ/@Q^<1L/Ò`KD(.¼všâTDtþOç0ÿdGQmCd¸õ º`;BMd¸ÿX0EqTI‚8 0§)ÐpHÅ,f "QÆ¥!æXt™&»Œô:Ïœò²Eáð3ïdgf›ŽíPaàG'ÄÙ…/+!níðe•àÛƒPÖÃp-Tó¹‡üžøù($løþShEt,–íÍEÍÒ·UÿÏÜ©l“È—~]èì{~`TKŒÕ¿l‡“£mt&pP5/@ãùF byÝ„„`XVSYè0¯”nÖßö“—JÁfË_ Gºhk´€¤æÝΰ?MQôhÒÎãÇ+íöÊÿ<éÿ6:ßÿü§ÿñeÌuü£à¯Á\[[!üÏ•ÎÚZ§ýèâ>lwüÿñ¯øøø<ñð9$ÆçÛ»›aùÝû·{oÃòË­Ÿ?ü µë<ÆÂcÄüÛo»Ýݤϰ”ÍW½í7[{áö›Í—/ß÷6ßü ;œxdz$‚b°ì§Ìfêv1=ÕÀU>e8ÇV§ÙÁ*rH‚UƬ‡waÿI½À•øàò5p‡x|EáõÖÜï¦É,¹ éEeÖŸTü@rTjcc÷û­÷Ý.^³p`¿O–›_ѵâÉ‘ksZrÇx%iá_$cµ…,Õr c¢eOk LÚÂõV±àš½q¥<®ÿjùò=»º¬ š}ÐP••+-ÐÞŠIŸMˆ¾ðY¶ Ý~Eùeh#„•¿n€Ü‚ûØ“ã Füh†¥n«eǦ š©MŽÂ'vns ¼H¤/ññÑø3®Ý Ø£~‘È PÂ-jJ½áüwÝ®Æw¨Ö †Àä;B¡ \`ÍUª¿Ê —Cûü2Õ8è8³(ZII{X°ÛùÑ+Ȧƒˆ,{9d:j¼—ùàHŦ‚£÷`ÞŸõf ŽÕN­»ÌÙÙï8L|­²OýÂD¤¤ ˆE¹K$ËœIYR†ùT—³—{” Í.3M¢çR‘§Ÿ ©H÷±hHýÇ»ƒ¡J7›K÷‚;{`ïbS‡Ž žÔ a )ÑÀj F^¼ýŠlÏÛ5øo-ÐÑ¢oJ± Y„³‰b!åÀfô:½6ÄÀÄõD0¯*gm£™‡“²³0e‡€ohÎØR/oû„'TQ§YÛbLÌ0¦q‚÷Œ/¬® ±¥Xý›„ï"õrB5¤ÔKKø*À<Í”å¢Ì‘!åZ4…ç1•4¥RÎ…^X÷•2N/ò¡¸Ð–7Lz)Q^OÞk±ä0`¬¡’,Í/q¿ÊMPRî%u´ %`L&6Œ=¾µ¿µù²÷ ü{½ë÷Ž@挒dMGTfƒM£*=kÀ {œŒ:K˜,Õg]$±gHcµûbžÃš@ƒÆu0ŠÆ'|º§#ÉßÂ\-2½Ĉ-†¨¢ÆØ^*Ì븨jöß÷Ïîú ù|Io¿¥~ ¦Mâ9˜­•_fSѰaÎhQ‡tH†3‹·‚EôÌùa-Ü;ïuÚ+µXzñtšL«:«d²ú~ëÿ~ØÚÝëm½ÙÛÞûµ·÷ömïõæû¿mù•ÿÃéµ.2ÔO y¡»bah¶›åz?ãŽzMÏuì×±ï·Ý^-í»öã$—ÔˆÒô ÚÈhwZÿ>,½Aà"Zæ„Ë0¶xµ8SBÕh¬Â¤Õ$LÝèdD¤–C¬›¥Y—çm»†~n3ÕïïÞ¯} ÷gŸïÓWXòË'ÃZí™Ðç="3¦³#áYÀ8;³„$¯% øVÁзیó3̲Œ¿I§£ýs40QRp¤»´– ˜¡²“–;®†QÞË+ŽàŠÆg«FnEʲbfа»øS"åŠÒ÷°ôâí›7[/öü²ß"½x½¹»k£Ê¦Çœy(Ðaaü_©ì‡쬱AÍï'À(雾¹v†L¿ý©Z^ ’'宺ýÇuiâ–ÊÞxj7eáÒgd%Oq)¤ 1uô¢“‚]3\Þ%•í+„‰Ë¾•ŒÉ\nŠšiohøê¾”ÉínD¶9.¥Íb]!3”þñ||*Â!‰Æ´óã§áLˆ!Œ…ØÔþ \8u¾øåÛ¿[Ù±ööžìñ‚‹Í ¦y×0VvtÅ2hµ(‡µ î;rBSéÍÆ«¨qøY}uÉ_í¶ ¶~*ÙÄA³õ,$§­ªž²}4!t1?¥±bw J@e’åt˜’ÂSyÙ=Aò~¸‚2âÊS:žâõ75 =å(㠹þI$²e€Äº•i…Š;ŸŸ4MB’.fqšEãD:vM7Ýá3LwlæB+n<•§òFØ´8=Tx»ÎÃF…¾¹¿‚ûd¥²oxw×ÓŠÇpfK¦b³W8–¢âÖŸ“3«°ê*õQPK'P8Ì2Ý:ÑÅû`¬;Ä_Æ”œY‚6/eæ·–pe ÄCµ×¬H*zõöíž+Ù5ï û-çx(ƒ›;™rˆ äÞüˆaô&t K!¯7#¦Ýre´[* íŸí7 4"Í› i˜t± æ‡³"U’ÓÜô·y®2‡ož'iœe{.c;L´~J/Ƴè|ù¹ø¦‚Ÿ/gɾãú3;lw­Hœ@œ¯`ÇÉmŠ R†¨§âÉ šBÈ`´×½#â$Ö>âàíÖÜ5!Ñ]ÖŒ²Ï™×ƒ…Õ2Ô…œ”mä©Î¢­ñÏðÔ,µ£^±V)£²0¥¤®|Ée¬í:%Ós<—Ê`†›ÃêòX!=‡ïO%C~öú y×' ŸÓÖïO"šÎö[ûg÷a®7ï ™j4½ÔàjéY­ /kûÖÐsLn+ƒ«2—‚r©ƒòJ£QoCŠà²^Àýø ä’/Ï\Z®6Wä¼&Ïöλ×[; l½¬¬¼ëií`QĨ¸k»¦¾.8»#…¢‰óxâÉœA ÝÅÂEÝR0ô}*pÝx€°3@»2žÚY£ie礲õNå¾——7«äb[Sj´Þ3ܦ›ªå¾\ûx”eÌŠ\@dé&’$7[&§?v” ,ø|ŸòKd¸”ëàÝX§6ÈGïÞ)Þ¨u‘ Ñ58oê‡å>S‚@¯Jà¥Hrˆz3<R¸¹Â{‡W׳©S„p膳… Ñ_ øe²h†Qì‚ìYd7L' ùÜ€¸çXý 'ä³´{^®ümk¯Âð#SŠUˇtêi_|ýzQÊÚ»c‚y×Ù®þd’{Ï„hˆi4Aša?»šâ b³ò\µÔŠgýbÉœ D@ç÷(êd.Øb8 §Ó¿Œìœ¤±nÞ´¾`ë¡åyU ;— {ñÄÐ C_zU 1ˆF0"'64EBcÿT #ƒâ¤ºE0$K¶tô ÇÁµ@^<ÉzÄlPìZõ©ÄS€Ðª`…MIŒO>™Œ0®6Z|Ì’DP<Ä)­Ð1šÜà#WÞe´,… ¦AôN{è°"žçœSƒnïsh›ß9×;h#ü FËÃ^ ¦ ¿¡ŽGEãÑH„òÀ¡oÛ™„c”+>‘ô-ˆº"UHw÷Hzî´7ƒò$ý´­× åN€ÑKC|¼{%׺QJO›â,M„ÌÀl¬˜È“êJèæêý5™OŸj4äÃY=6aܱ÷„S°€F‡¦FÂ4Áò°l¸á¡Â#ƒ8Ne"7±+ІXÑ~¡ $†"ÚLQ*K âEZ¡™ËUna†‘”pp8Å‚Iq·$T]Œ6ÉÙt#¬ B%æ¦à·ˆNY©ç¿#çÍð§¶y‡Fj»q¾.˜,Â¸Ê k¼ÊL6/i—Ãðh>%z//ö¹@÷:@NæÂÛÜ<®²Ÿ²¼ M|{䨚)ÃE÷9&à*~Aó9ÅvTì KLšÃ™0Éô®Î(£•E‰;ªb_©Ç¨â_™Zø<|Æl+.'?ˆÐH Ex£Øè±=“²Yë…G bê âÉ“®+h›–m<ô÷Ú…=ó¶Î¢óÅ’.6ˆÁ²ÝEʶž14/#£\ëžuÅÙ³¨ìÑa)²¦¥@³Ëà xªK´{ÊH‹¤ ;Ÿ1Ö¬³ï鯿C$³Xu uÖ1“°¿f¹ñšA&ƒxÒBjIœeÛ x¯"·Zë °.¬!¢eÎ3M’™W`Æ¥Ù”mpÔ,‚a¡Ö¤ñŒHðx!H¶8Ä̳lË(ÿxfY^<á Ó ³ÁË¥„ö,[eÓß Ô#¬D3@0îYSÄúâ© ¡{.ˆÓ*¢¬ÊJzÏ‹},@h³­/rï¾Ó¼s§„òð§ÿ€^KÌðí£ÆM²¸€3 ôkÑgò¬Ïô¨`# ¬p—½ ü3ãV 7•‘aƒ¼‘E’½1š­wpZðx°^\ÀW!ÚÛ"‰3dêÄÉE;ÆÁÓJÇÚ}fpÊŒ•çÀs¦âæ{HËX.T@¿¦z‰ÏGpìNæ£X§¦ã±C^¢Ä:Cœ.ÆÕâ‘ÞGGHötêP8Ô¾Ú{é1:-2:.Ć ^}v|‘yê’$,<¢š¶ÃÔ8ÐJìÏ`AÜ´Hôt&. ¦xøE@’Y3èÖÔj‰my†+ÐÒÊ®ÅEÒ‰Ä.Ìc°æìqàWÅ‘¤&iAÞ ™AÊQÉOXìÀƒøÞmëU~6® ó¢‹XÍÃDŽž¼®jL8ÞÞü„JŽm"ªúdÙ–ýÑvw¿á)éogñè"ˆÑ|M ¦gçÂ[Á Û?]œÁ‚Ý2ä~Çv 9J™ i1ÈRŒ¡G#ø8Û/qÏf1W-ØêS<:;, ¬›.3p­ ‹AµÇà âg2Ò¦JrdÍ‚Rí{Ä£˜^ò¸ã¢•¹Qt?r«Ä€ˆ1”8ç,ôl/>”£2—©PÄÊHçn] ãx†dàJ/vÏŒ¥o\j…ÆŒxÌ‘e¬¸èÌZ–¹ 4ÅK! ÌBÐiD~2Ý-£†ˆè*RúÜ þŽÞå›(:”ì!†OÓÄþ5‡4ƺ(‚dª»)·/ee(6Ø­¯†JÉÀ›îœ)ó’wU±ƒ¬Ý ‘˜>OںÔvµ;bé@®‡¤ëÖbÖÝö¡´ µÑ§Î<TUè)m4’è”74‘PQ¤²]HâRŸâÏR±í°°åÌLAÜH’SÓÔ1]¡AâÆZXS˜”À /Êù‰ »iÛyò6°¨~Ïsy=“ée/OcAªÅó¸8ñµ© 6µz1Š.¾+ÓäŠÑ„ª_–%ÇœþRD—kÁ5„iXlJ“µ‘j—­Ö”s(h>(ÇNx€ü™¡"ÈdöÄœMƒŸ°£);uy²¢OàK³Ù4ÃŒJF QäBææ›b®Ù* ø8¶gäL KW~˜:̦åcLÌÿñ¥Uh7 9e0g‡…I"¥eè&ìZÆ %˜ ¼}KI«Î—|‡ó)@ [k™¢ãs u$÷?vQZ†Ÿ¹ÉÉõR…9تLBŠiûÙ(` ƒ6ÍÜ%ÀÃkÌj|9*QÛbDG‘Z\yË㜱öОÍè4£–óÂJ™ŽÉcÅiC9ÖQ‘p`ní¥R„ØÂÁŒÃX…ÞBÌ ³H qŸXs²Ùdžþýõ…ìª0Z’£}ä]‘±,µY¸ŸìQP ¾ ÙÆS¯P¼?H“ÒÔÜ’¡jU"PCUäJÆzÆËZa˜(e=èén§´ ç˜ÄuG æÓh í]”r½fC¿Â§‹9»ûZm%Õ@ÑŽ‘Ø:^3BÛË›w]Ý£€œÔE»V’²H­Æ°(zðkç•cõ¿¼ãÂnŒõ3{4§é”õûËÞÎkO!Od¾å‘’Z;K]sÎø}›)J}®NÒ1Qãyzàg±ÊÀV¦skÙ™7AfQÜÚL#¤à;Ä §¶jì­Ó ÃÌdt«¤è ,p=V!ìZ}ù½e"õ©¨•Ù{EУQràõEÌ‹ôð’)‚¹»+deo£Å`1Ö:…xØyˆ¨ëÞÅȵë`}µþo„õÕÏü÷YüÃÐ߯Ã_YkwÖÂNgmµóhåу••~?xÔù7þû_ñÉ‚+Ïâ ŒûÃf»ë ½¿¬›Ÿ[ç´¯MV2üqVÕgˆµ¼õÏwoßïñs5"F^¼BfÄ&Aïíß9 *óã: 5â¶ùòµ–A¦×F ú@·KæY0è—ÉÇðùNòkxþÁúðÕ´;ƒ¨1÷àüñØÿÞñ<|5†»:–SJ÷ŸÀì^ÅáN4 7'Sø{þ'äýÏù(Üœ…»ñ$| "Õ›äKø2îKÞKü‡ ;ÍfgE`šïþmg¯÷ÛÛ7[ø¾s¨ÝðÃÞ óM¾üF ¬²ºêz¹æØ®’FÞ·]•Gô'‹MÌvÚ’MŽQb<¥€EÇÉ|Š?äœRt»‹8ÂggðŒÌçÉΛ)ÄîØ†BF¬ýöÊ ¼›ÂßúÑ5ÿ„ÐÙR]Läa >Q¡Ÿõ‰Ô Cö «þ,ußï¾úü)j|åêa½ZkaõÓ¾ÚÙüÏÝ·o^:¯küZ’П®÷O\a¥ý1‚,9nhŠí,ŽVtZ-?„±ZƒÿÀáËòÊU¿¯oØYø$l‡ÏdXºðö³ˆ˜ÏÑ<Ê®Oêqmñ°>WëëÁ§ÎçFÃD2¿‡óñìØÈþŠå&“êóAÍ÷G¶tû•zŸy^嬌a<0¼!b@íiÄvMŸÏëò»¨Vô„ o“g*"J-U¶½§€fÀg É Y%cñ`š çWеï?¶ÆÄï»a_;„Ç›Ëq âvÆ,›PÛ¹ý„â´Êh:ÁÛIIS}Ö…òìß`‡ü;ä7Ø!¿Áù wHâ\÷êÏöÓ{­ÖA? îuÅñ °s¥nOwGA~ìñqÄ~ú ÿD§“S‹±º'Ú7Äuÿ8îs@ÙÓÄ^׳%‡‰]Egí£ø|BU¹zª+Ǻ©jª™øÊSc²Ùú8ˆ,•ÐÿÜ ±K ÷¬ ã÷íSc¿õ¹FÎîg“[.· Ë 0 îyøúYW4k·f‰Wzb®œû@!'R‘¬sÙ78nœ]è³i‹¼®=3eêM¯b…¤æm¦&©S-6yͳýÁåJýÁÕ·ê³ÛŸ6ßE“ÏŸvN?ïÔ>m6~Cš¹ß!éäk¢ ÿ’ºŠƒ¹-»eêÛÜ}±½š@i‘Ñ8K ¨‰ÇiÓVnµÎkLJß¾’š²Â O¢!§üIH †)•©¶˜T/Ðôê`z9»ìÔW¯j™qr¦&ð&„å%s§0;‹S¸hm±ÏºU;ðŒ²:yœ¹†8ƒ‹$ ¥@J´y”ÈbØ"q×VH‘ù´G¶·ªú]·õ°J7é8>Á±y }ÿá‡PA^Éœ…P•àU£Á^ð8°NÙØˆlš*Õó$\•Å>(%_Ð}¯$,Uy1Í´hí3/¤·A¸œò.‚ÊóÙéß\Lmë5œ>Nñé)êBB›¦Ÿq€ŸaQpXiÀƒD .§ˆµ»ÖöNWpÞ°à\Èì Ç±ø¥Mc=œ01O1"C;Ut¬ºd3…)๽é&aµ´éEr:±P$ XÂ-Y¿tBf6†‡`ü¥á1¿âhO©xœUüª „“âQws§"éîÓKLi^¾Û©Pjx{ßœDo¸>š À脌ÉjFXRúñÌév„oö^<ûFNû~­\U„s{h8r¾´ ¾öƒAUy Vóyê=„ˆb%ÇÍúe¼FÉû㛬×äS) Y½(g@X^¸ÊÍ’Z Î\Ö[£È´:JêòýŽU .ÑVuö_Ýç¥úÛeþ­äù5þ‰Ž#dÂ5˜ 3ŒA[HZj\+–…x ~,E\e¹ä}êà•pg™#¼bY9JQT’“%¾ìØ‹&¹*EiNnÒLòðõšø ½5ßTûøïY&õJÃÃùX8Ûì6¸¥Ùƒ€Ú¶ºY•øÕ •iеc|P½êÊ/èÆ‘vj§ŸÖ╽y܆cÁ¥O€´7Èiž:«ìRñâI£ýS»Moøu5$¥šç¸ho6”w«=9¸±³“Ú ÈÐifûkÉÁØ9$Àä®Nœ†Cͦ(5šTÙÑ3C:6nplJ0Hï¶§dϘŠ7*³™(¬N’”=ß ‹¬Ù1 ”¶¦ë Ë­/G­—ÙÖYŽSk6:´öIùù LƆ,+n(4 [œ¡ E݇Æ?<(Ë1˜R§ÈÛ¦âÝagóúM»¹-šÏlЕŒÔjÎp'1R.ý ŸÆÎNãåËðø¸{zÚ‘jï·RCèÛa\` }ÑTäx”!6$¥©p=h3‹ Wn2xŠgžÓ°°dÛ¥X|û1Ù×^Y鮬vWWè]¤08vÒ.¤êÒY0@Žp5ì<ê¢Jg,A3a.RzWWk…9IsˆÊCÊUw¤>ȹùfw;|¡zóª[ÐQJû§”Ô€6wt;kݕǶÍPº›Mû?­µ³Ï@ÝÎLÑõ¾¨ (¤½Ú‚¼-ÌÛ5CÐh?j·%7bFÁTŒ’#²4µ/k¤Ãê8Ñ[®æ]ÒcÊ+m]š»°».*JÁì¨ým¯ÚBHû[’R2úââ,%o²•©ê¶äåq’ºyÈ—W‹—x¯¸‚°öý­äj¯PžÎÚÊãßJÙ*LO0®::y=¬Em˴ζ’—¤>ñ¥3äu‚"ƃ…?Μ/$ÓÅåXtÊs‚J¡ÈkÑÂrìpÊ)$üPû…y©¾–&’~à6ç̽­1#ïråiqš:Κ«u.ab_3­©÷TŒ›JñÔÜVÓŽ‘¿lb±“+¹®¯gv‘1ÆÚ"¦ð–Ãïì> ›]3 _¶›AN艹¢ü4nºk˜CY±‡.½Ú~ÂÒè†9“PKìHkbRÚ‘„ƒ•p0<YLªv%LÞ|9w Ü9Ý|B«N>* ¢É5.Ãdi‰‹Þ¡o˜&Þ¡oWä[{ðc¯rƒÝí³ºÉÂÖ˜#—{HTEydX(õåšóõ´ç·ëäŸÂ  ²_?A ZÜê[زÃvÄÈkí°×<þ_´Ã~ÚŸÏþmŒý¯÷)´ÿþ…½[?¨´÷^[[dÿÍöÒΣöZ§ýðÁÇhÿýpuåÿ„k?¨þ¥Ÿqûïeóÿ£\–Ûÿ¯=Zy¢ogõQ{uíáÃUœÿ‡+ö¿íÿÿŠoÿ/Ÿ1³Çï( ¬Ö2æõÆQ ¼÷Ά¯7÷¶zÞ¼„‡/Þ¾G@iד`­ùÓêºÜa¥AQëŽüiÂãÙqŒºÀ°Ò«¸€mPŠ8à2É©:ÆV”!Ä÷—|…éR¸âñ*<{µR”^úbü½¼á’ÄZNY4Ww>ñÞîB”„ÿ‘#ܨ!ëÅK0ÿXBšÃqÎùì8™¿²ŸÄ… ¢_@§$Û‡”¡é‹Ô7vé&ž¼Y˾nÐøåÃøÔKJ%íDçWÉ„)8¼›&ç ¿~Îþž¼÷`„¶ð¸:ml¡éžª…ÃÀHCÈníEG¡Æ>qªDa“ Pßdz)<" #FàáGðãÇ^bÓqô-h~²Ìyû€¯,ÌOi(“<Üy¹f¾óø¸1 pʆxDóâhKïz-…†žF“ð2õÙ¶y–áU¶;ÒGþÕãÅö4äþeiŸ¯(³„ižú%ýÚêÔT1fˆF0 cvnö­O 4Ðk“êÖÓŠ §‘„5ð §\SOM·€uz¢ µ=L -±7ÃCë€%W½ÚUË"àŸrlœ$—ð‘îß/)j›[“¾,÷Ü tUˆÅ6Ba$fÌÐ}‚K /¯Ð Sz‘ÏCó 1¸™í\0ÂÌ áŒ%³`sÙ+óÄþs#ÙT> î†åcS±N4›ÍZÅÄp°AªÏ“‘ºŸÐ\ı¾À ¿vmW2¡Ð á3ò®ŠÇ—HÞ”¾vuÿ><®¼û°ûK%솕ݭ=hH—qñaRžKlV œi7ÕUÇ jV”×7qÞb@ÖOíÏ4𘠾8Á%ÃqµTÇÒ‰Ú¡FÙxßÕgUÇ´Á Pw“ˆ•™¾bpFŸÞ/!´½Y)š‡LÖlxG§ l$7¿‹HÇIYuKj¦u·Ÿ†«bHËteûÍö^¥æÆèubæ"<§Òlìzj~>çÛà bØå• «¦„K äADúÿÂÙ´Õk5ZdÄo£mP—­‹%"s 9ˆG1ìL2Ú—È\¨ tcÂÉ®Jƒê ìK­£Þ¿ßüµÔþ éRÎá¡•®¾Q°vìÊ+AP½”¨²Þaf1ÔÄÒŽ|ú@Ôé‹å…¹Œ$ð6m »à·¤óÏ©®Ë#Ø ®·ç²Ü#¦ÖïÒÎF«žÄ©¬Ž+ã©”õ¥# m2LW# qËßiÞÃ꟨‘ç¾SU>¼ÊÏ_ùðÊûrß \L–.á3ÿõÆÜ’RÖ \BoÂÿ„àMþÐ ÂTu\6½ŒiÓ‰ÉéÀªùÛ+"g€XÅæ¨]ÜbÖ•p³ÓÖþAuÿ¬ÖÚŸ—;­#u–,¬Na¯}ç>Ü0È™- Üwdþ–÷cR2J„äd@¨<Èö5Þ\ã#Ri2ŒòY Ä;® X9H¡ÕÃÌ@™ó0Wχ>g)À"øc»í\Úå­"*=v¶„Фå_>Ö¥=ÃX.”¦Ä‹võ.³ÌåñGaütÃ?{:æ ÊÄô‹—ba÷•ß2QæÇ€Zs m±Î¨Ç5ÚöqS¯ÖjÙ"sKQp`›´K /¦˜ÆÖ±ðäap§ë9Þ=õ‰¥‚US[»¡‰j&rM”U_:AN²çéòcMÍCaþY¸Oß»N ò‡gZM’ÖK÷rìJ‰ñÊáZϽøò½” ×z”´G'ý›ˆŸHéTv(uzäðîëû•få:/RYu›³R±çÆlý¡ãÃ\*¯;švžÞac;èm‘µÑ8†ƒ Ø$‚°àAú°ÛÒûerpçÏk'`²4Ú pmG‰fW÷ÏÛƒgûãÚ}øbŸ1NŒ™Ú£›ÔŸ~ßo?hïÏ>ƒœ'Z!õpL* ®i]`9­J 3·¨ûRÇæ„Ã^äRD•EqŠÆ(±pU5¤¤! ÏXØ%jkjQï^„Ö^|ƒ 'ò”a½ñ†‹Cž4èÂÅÀõâ½Õ@cQ‘Á Ùï¾ ƒÄˆv=Âx!MQÏaÉ=tÉi„3un—èÔ8½èqðÞ0ê‚ث͚F†c,E š)‡ÆŠ°?6x…ÚY‘Uï89«QIsXÙŒRŒ4„Ï8"y‰¬U³ráð ”ÃU* ßè/ŒbQnùÁÄ![;ËŸ‘é á± ã8>b¥>#cä¨;ÆT;@èXÌÐO+¾¶Œ dgjwXkeré¬8W=92£ ½F©–‚–œˆ!ÏI¬¢Ú!Ì_¹ò4ñÙ—Z”èåE1D¥õ¡Ý¢8&q®?s…9ïQ©äœ115kÕëµ?³êõçT>*mgÕÖ:bÈà¥Á 5·Î-<Ú‰ûÒžÞ"% I|käòWs²Á“0OµéÔY0¤½¾\K.?u¹{lqÝî P;ìÇ׎:¥8öò¸æ¼,å¥ùcGá›Ýd¹°=àè AõÎàXšÚrq {þE.,(:Ûý×ûýYœ6hg¼,f]éž.ƒB3Ï©.噊õ4©zð¡IÄ™ ©µÏþ_(ÓÅ'~ÎÇå8™Meó¾}½ž}ûÿ\¼"ÿ1<Ýÿj„d¸«õPTtIŽJ¤7FopHÌ{ÿ`lÓðëmµ &C:-¼lèâo¦1$L^7Kh&”?š89c¦å¥ˆ•“[P¦1ggg½È5Ú),&c¬“›¦È³4ZÐω›”iÌmˆ®oNÞÔKó[d‹²íZZ”Û²L³¼R8FŠr-#§`ÊjÉ+®äÐÒâ¶I©Åå4²T—òX±`S‡¾^ag{g«ÛýÄû‡òšäM)é0ÚÙÙà¦Ú…"ÅDLÕµ>(ýLÝò§¢£.œw*Ös¶Ò­”ï ÷J„Ü¿‹UÚmÉÉåÚöõ•µæ&T¦»õæ?îHu»Äûâj‰ÚÑ•*J¤ô¤toP#‚;—ÑŒ€ wª'ÏØÛ°®Ö¯pS…¢1"&•þHtràè¶ô:{¥–îXÑ‚€Ëð*DpÊÇÈw0Ñ$Ø[œ¬Aw|kÐ"‹Â#4‰ÎEªµÀµiª¸Æwš<T&# Jm¡Ñfç嬭»‹—æ3®Ç3XY–éŽÜÜ-Á°Ñf¤;p×[ÌWéìý­ý±kRjãˆÑÅíÙDµið} §EL#Ø&¦Întò§ v4øH³û–ƒõÇÆq@À-çèml­ü0æ…1)¦<¨ÍçøXcÖŸòâøÂótNÑÌØæ„ô@§1)PÔö9Ugå\°^lm>nt®³jdlbâ=¤ŽÈ…ñ‰£/ÑpDúà|€âb*D×% )Ÿ’Bå,?»Å‚cZr,[ Iˆ%bð,˜<£ µ13¤Æ„bÅ=Ùj57ºÁ•RUæõÒU‘á Ù;ž×Ãöªu÷5ÏÛÙ«œ¡õÙµš•Egüøtµ¹’Ï€ Š2Ïf“n«C½+šÉô¨…7%•IûcÃe1 F©„#g0&ú qXâ46(;AûÚ$Ç"–»Ïû,EIqÑd¹%øá·œX,ùwÐ×\//U‡“Pè®þnƒvý-&—T¸ hiA/^É¢[uŸ´9ª¥â@•]”Mbr‘{áð0FäË@˜!ôl˜¢¿AB{Ñ^ô%Â?æÉŒA” xtƒÁAÔ ÐMᎠâ’àð5Uš©[˜fCÄz©f‡ºÆkÅpµ8R0!Ó” ÃG r êqiì'¡wŽ0pÏø‹yKCd îˆpË(¤Å )Æ¡c£s"†>‰¸ ¼¼…7Mì$® !I$D:j“ NŒW0 iÞNô%SÎ79ÉJÌ1 ÏDBHŸb?æc‘¦ (pQÕD¯k "CGå»Gˆ>Ô4i,Q¹B±»2ýшC:ÄfÁðäÒ9þñªlF2B°‰@A08È·Ä>KÆ(áio¡ùFû^ÏËó3Œ†– ‹ŠÄÄ «ª(¨áìœ5)^Ó"¤ØoA¾ …ʣ̮§0òxö`Ø"wÉQÑ‹&âTƒé§±³µr Ì‘ˆoâ4~‚=MN§šÆqðZ˜Ú ~¸QC¹R½ä^Øàž®³™^€€xÎ-â!{;G„ ‚-†ZJyŸ¡6¾†Òhï‚R†ì¾ÓlWŽM9;㛋ÆÇø Á1­v³Ý!£äl‰â79Jf¯r6lï§ µî•–çþ„‘V´'¿f¯}ÆüÏ•É<ÍUá²D€DlÈx¶¡öïÉ-$BLQ8˜¼8Û…{1|ÍÎ’Iºt{Ù DDq¦Ö€xÙ0g.EÂbx7 ŽS;l2D§Ê8¢<Äx-§¦Ô ;¯;\láF˜ŠsÆ×má†rß°œŽ pPÀIp+²S鎰%¬ ÐMâ#Ÿ€‹“Bsµç)÷€ ]ÁùoBžþ‡‡D‡Î´ºÖö…°+2BnÖ¼HÛ”œ½ÿ îcHŒy"¸üÌl. €x»ñuæ&,øË'ÌŽP36Û²|¨)N›lháÿòbŠëRiGWÃׂYÁ3„ƒ(Œ·Ö²Û™ 8™ü ˆ¦7ÉL#m»ìǖ鹞ɽ<‚r°ûÙˆPワ…ÄÃÈ‚º4ÙlæÒÙQÁÔœ9OÁœf= x6UœIpG£‚ÉœË)BÏ zŒ’Í úÜ$WÁ¢ÙEÔCB3$ÂxñDÏÿá!Ô {6-<gœÅGÉô¢Ž“{†½Pò!Ä:|Û:À‚ˆç™Yl@TÚ€ÖÂ`ò8§f¦¡08ñq¤K>´¯èÍÆšYz(åÉ%ƒ¡(e¨‚Gæ@…îPÅCïŸNòG Ï2ÙœÉø¢å€p«¡e<ìºHïÅõP€Q.Ô„¸´³E´þPÖ›±éØÁ…ë Œ\`Õôr,¤ŠPAñåñBoçB6™Ý™~y^ØÎ‘X¸ÿj4èíÞ“ÉèÂ: $G>O¹bÓ¡z”lˆáÀ‡%dT«aXçF#Ÿwù‹X€ˆ\(§“«ñ$Ê´"õäy‹hãmC’±ØRg4±?¥¾* ÈENFÛ ηÑAê)áË8ô÷MúæøÂ[h†çF8|Œ,i‚ ' ,ÈXÐÎi4&ŒZs0ñê‹'ƒa¼!>Z¾˜!½Ô‚³dCÄÈ‚ ÚvN…Ï”aQm ©Y;뢇°eÆÉIî½%dŸŸrtX… "mthÖ"{ ñÃ8 Ûy*›ì‹'Øn£ÁAœ©ùp¤á§ !²=m`ãKß`nÜ–u{ÁÒy<ä©TPЬVå5ìHêh«"»ìêPúÀž–¥”†Ì€zø¤®Å*ÈÌEŽA‹Ð„"˜b8‹ýq žn©a/Y¸£õbDNÓ,žƒ6O‰ÙÚÍœ(PE-È…Õ}ñöÍ?¶Þlo½y±îlíýòöå.÷’¡¿è¶CPóvjЮ5™®á2=ú?"*°ªVBb©û¢v…žîØøU©yÎ?º©¨DvkÑ  Uœä•dQèí®­´È´®P¸ É"3sÕ’õ Ù2¢é3Š+lKêÁp@tB:f{ïד¶v¤«øš&Œb<r–©Q·¡´¡¶Ç€pxƒ"(i Ô §ÀÎãGíš2¾ ž§˜±$ˆ.N0Þ@\䙪™ /€LƒñI< µ°oT?Å™š‰„ÇÃÍ×gQ$ÓáÑÔ4MW¡mê¨*r9;Ê»àlnsÄ‚×oÎNacÈ2ѶG‡§ÇÄQ‮V „!£QìñМoæeÖb—VRšc¤SKݤÔ(ç|0dîbµ|Æ ¸[šÌ§}ÞùPU‡îjl"kL|™fLîœf F6£bC‘ìÄPôÅ“ÕöƒŽ¡‘T­}.âC¯Žh”“>/«‚Ç3?ö§ (‘®ã¯¥Ós ÒHZ O;w$F—›&¥¬E‡%‡†Hä‹+=àËXÂÊ¡×`u U“ô ·²>lß{Øë 8oJb¼P½ò$hÇÎJn]äŒ8çËi<F!Ù§‰À!«(0áè³ËÇ­¬êX´éí /r¯ø@ã̘4Ü0MéñR#@3ÿwÐ(ñéÅašÎïaŒ»ÀPªñžGŒÀ‚û¾”cUÙÛúç^ë—½×îMZ»ÂI˜„’Žîú©9T3môÉ([m:3«¾ÞXwà©Òƒ Q€”z@êh9=Ó0¹øÚ™6Ò(þgÜÎ3⊠…»f®¥Ò¸¢1ãQÛý½÷¶t®_Q›T×iX À9pÜõ!üÐúèXváé ¬ÃÍIRû'>¨2f‘™í^`{Ò}'Ø­}QÛÏxã©} š~wó~tã~PÓÔ’ÑgÔB*{êµj=Ù5T%XÞ íúHXµ,)aXŽTù¡a÷ê}9DŒEåiŒwIÃôÔ:Ľ­½(ײ°?l ‰nXj§À¦DI!Uë‘(~%Úƒ‹™=ު̦»Ma cFBÝ/]õiÕÞ&âùNg{¬J€ÂM-´;‚p;÷áÆDtÑÁÔ(t=|ˆÇ©£fX'%£rÝ›dz q ÂØcñ¸ña—“m€ò!ïòXÕy6¡w¬üéî7dE«`f#³M«¢\öàì쌀&y*®ˆQ‡Ñ˜Ï8g# 3½Èþ Üz2šmìmï½ÞÚ€m‚~µø§Æ ”£hÝ)Y‹x2í­¤~z×x²ÔG·¹áöКÃúò›¿†c#ÈÊd²‘Q5Ǭ?@P ÙA–{lk«G¥G)ηxÉ´¨ZÙI¾ÂF­µf;¬(úlHþŸ;»Û[á£f{Ý€k¿Ù 6ÛµŠóÂ⯄zaQØë`QÌÅ$†YDžá.ò:$%O¦ÉÈOìß›í¨Û*œv¸å˜b#‡]¡º=<§Ñp¤~`ö*n~ŠQR:ô$SÒ©›`§@––cFÙ¦1OÑVªž_u?­¬àšƒY2“„=¨VþŽ5ü•+O`ý=?¯M˜¦ š…ï ΰ˜8ÅÔ=>(‹'y‚'@;Rýð~»–]˜¼²Ì)#°þÆæ¼¡ùñÜ‘˜ÛN£Ò+¤~;n¢åå#¢NÉÎCï¡.ðˆ h¹cÀ¡² Ðe èZšÏ¤ Ÿ'“éhÐøˆ~‚ãƒp“€Ö'ñh$a€%eߘuÚðÃX Ç]]Ûκæ®ý,ž—F(é%¨{öœö ¦ýãXB§;‡`ñ|ÒËOWeƒãu2ï±pM7‡céÞ#FL 7ý&½g êÁF`ûëjø]Kúâ†8¯7Ý͘†ã „¡˜-]/ Vós:ÞÙðÒ> rët¡GnT_„öt3sôaé↲‚Fäe0´WºGÖf2gœÔ$/ïñ*ÈŒÜ.Mf‰¥3Oanô0|–ˆÊ}Ýr5º¡Òë%²÷O¦Þe|¶4‰+¬4ÇÌ]ÍTÚ(° 2FXÄ%ÜÓKVYKþXÁ›ÒÝž±§-› †¹Z¦æ¨S4HÕDjr‹CAþz<ã–ñ£-lÚ葱€ÚsS«+ŠTc 7f£ÜáBŸ–À¨I™»ÜxóöMãÅ&ü»ýbóõöo[/ÃWÛ[¯_’Ãî"cËÜQ½‡lÕ£q2F.Hâ¹GÏdð Sƒæ­3 fm ÄŽŽƒ¤ØæÍMí'àí4™L‡©îYPT,熛–Œ±vÁ{ ¨¶-T4†YßôÊy…7¬0QnBPK5º ßì.Ö‚áÜR”#æ6b8L˜Ø1­ÊDŸ$iüMKlúËöítÛ2#kEÜîRCs²”ºRT‰ÀŽ…ÈRÿß»‘7ö8Øgg$ØQPl[`£Þ¬›‹Yç*É$×$ Åö¬wÚ¼A¬’•v{͆*iþÕ±Jþ·1óÿÿô)Œÿ žKMü‡G+«0þÃkÖÚN‡â?´×þÿá¯øøñdâ â?ä#>l~Ø{ûúíæË‚(0ÊÃß6}Œn ï^~ñþõ+µkwÖà¿•Ò:Ý”ö§h F—ŸeÌàÿcïÝÛÚ8–½Ñó¯çSLdI¶ˆ‹ˆ‹ÁX¶9 p.Ë=ƒ4€¶…FÖH`âÅúì§ëÖ]=3x%;ï>ïÏZ1Ìôô¥ºººººêWsT¡Ñ,Û;{Û‡‡°:×zûÓ—w­ƒ½6¼mÛ—ˆ°V2š!NVIÚÏVcíöÌã- §Ü2]{ÔžŒÏ¾ow“ëæBŽëwð¦Ù´¯ªá3õBÌ, 7ʪ`ˆ>&#/¸Ò õfÂÞ9ˆbŒ¦ÉRUE-63-ß®MÅn×èX\±aõ‚3©`Q„ªuE«dñÔͶ-_:\t"ËU:LW‡*ÀUÆrm9|®š€ýÎz# &† µ‰îg435LÕRÊÍl†3*¶ÌZ¾QùFÊ`P®BËÀùÁƒ²xyb0§Ì<çoé9ÿA¡g nߢ°ÃíSÁÜ›õì7cj…îȃWoXZLTKa¹r—6OW?„Çã“GÍðYeþQõxðŒƒtÑ@±¦:Óøâ/Y,óìC½q #ÆlqP°ðÆë¡¡\¶ªyDÁœk”îÓ†Bê´ ž,v Üjg8† 3È;ÅèÕPøT}Ìdz»Y¡ ¼ ˜GŽ“¬Çb€Ö—J!…`³ô1ZYH÷8E¹|,{Åt'!/à,Ä;V½eïXï-÷¥R*q;`_§·E±¯$º§nH„?˜ø+å¶¼e‹›"¾YÓúÎØ’£ØÌkgB‡ÐåÛV¢~Ë1KBc‚/ão1BéÄaÔÕAr­Gm«bi˜Þ–×·Ü™%³ci[¥Ü'Å…H-ç¿(”Ð €“%nA9iŸ…Êÿêñhüö‚·òjŽÓTàn€` °šÓéö,åïÚæe[¥ ›«ÂÆ÷'’ E'ãßÀy :îUP ‹e+3ÿ­”ÞC–Ì4µä‚ã‡ÐÖÉÆ‹Iýös6‹„×ÓÏ)2ç¶Šö‡Æ‰„ø‰AÚœš„h†¾ä Q SOѸAµ)íàe0:“‰'Câ…Øˆ“’%ê˜?M¹¦]˲ ]nHMe^êb œfj[RpÙQ·+ÍÄöþj¾µB÷b2øÊËFx¬æN?ŸsmìòÒëÇçQç&(žuUÖ-Jª¹xʇ@9½.áçuÇ2›84q/æ™USœÓ‰•ÐHŽ"ÛáÊJÕ»'ÚŠ:5µH³Ð©-Œºr:1ƒWZ*iÕ“!^ëŒD¢žsÓª%y› 3cøóÙkÖÎç¤æñ æ4%ÚfÂéËŠ$¡ÅL¡$ååÍÝ!_¹¨:(Âl êæO¯@MÕé ûYŸî‡ÈŽU£¤Ÿ"(<ˆ`$çsÝ®a á#ÈyÙ¤6q» ;-{˜ÇÄkkàÂ)À€¬ C$˜Çp/s>‰1=´“1Þ~ãH|¹ þ˶;›à½1ˆKU«¼¼ôà«ðùþ|B(™X³î_éýÑËú÷”‡Û Òh»Ÿ[/??nþÿraÍ/·¼Tßk•¤ÜKSîeëøóâ"ü¿ ìsW–ÊPù—¹zOòõ”QõÙz2û{áeŸ!îÈÆõ2Bl,,-.>Y8híÔM9°U>Yü¾ñdáawêvVÌ·¿¼Ùh00Dôôè¶À|KÅ:!yw±ôx‡jŒÆ€ô†+”û„Oíç=ÎÞ ¸U~o¸ ®¡¦Ê×åœ~1e¸ƒ@yý™Y9xµ,fÌ×ââº|¦1º.]TXÏ\åY‹¦ÕGS+×ÜåS(Y}´®ë‡¹F¨Êú1 ðöùäѳãg›U:ÒÁ´A0Š©Ñ|²Ÿ}(•Oªædú¬zÜXpXÿ3 —æ–ÖÿhpQ÷ÄáŠêaà{Bæ_Î @|ªPEyáíÃ9ÏDfâ~’|ĵ¼þ¦u´-`£4??_Ú Ýsú˜Ÿ+îïÆWÂýPëê\…,ì_Å£«^|=Ïvá®öÁꆹꖭêÖÙOcÀâBûÝ›½fó<±¦?Äó©{Ì;H”~m„ûÀòˆA;ŽÎÍf?µSUÑžþà–ÀPÀl vöÍ £E1çwBÒEc÷UŒæç¹óºz«XCUf"ý>Àœ_‡ÃÛÁäÂ’lðŠ+» ¯O–"<^á?Í¥¢?»iÄ‚—’te©þÌHÅž¦¦s€!p¢HÍo$âdñ¸ŽYާv˜ÍãäLRMÔÂ’™yº`¥É‡"¥“šÈ°ë¶Ñ‘‘±+.ãqT•÷¨F_ž‡›cðÓ ë›hãÙ—ÇìÕð¿YÃÞTÝÕ=fsS‘h…É•”ˆfWýa}ûpgw×â8/|8þüýb¶³”#Â`èB ÆÉ”´ JÔõà ¤ô‘ç/Ÿ·wö·ÿQ©†ÿ²÷ZÛ?µÚ‡;˜kÊÐMw‰4a‡-ýn÷p¿þý÷«?Ô­ùì6“æ#‡_Ly|•%—°æÛd8ÎæRÚ]áC# ›Š5!Š.‘W˰.}¢¥Ž…úâ ËÝG˜ËcÉÊ™Áð–»Ú¬ÏsIà^x‡ÿ3ø9n:1À!Ö!B³]Õöð³/ªT=%ݱkEòð@-pëuIgÁ5Gëš^œÿÞ–³™|®ã#·À… w÷쀶¾}Íæ«ÉÀ‰‚GŽÉx8Ë“âòÍæ9þëѸfN2ôq’J›uŠ6ïÍp± B-…j標µf87­)ú·5%£’ÝÃ}.9Îôº€Íà|A‚J¶eKªSSýÒ=hõ;²tbñÍæ)ýòGÈuz¹lcüËÁŒ`ÌÆ{lw€%§ gãh<4¡)_7›=úåþÔÓÕÇ@XäS«ç_^ò¥Õ;¨w¬+< s¡ 90¼e2&ßG„@þÞï–$§Fr†°VÉAãMÏÐÁi"»%"ž&äGCÞf)zX²'stʘâ.·e»ÔÆ‘D…ŒG=òfcrr8$vhu¢' ò“ðWÚQ–xѵš\«¦M/ÖlšžÎžH–ƒ:· v¯,q6ÆiO¼1S~ÚpŒbÈè¦/Ý)÷;-ÒÝÈ‘§†(\ò¯Zžùf‘ñò馯»?¸,e€™}À>vËUu{béb·Ï)ÕŸ"ø.ÔB±ÆâMµS?ª·ˆ‹­Ë|h´¯KwF@øËÅ$(Æúõ6óÿ„<€ãwëˆò ¾8’?8±ÎwPåìѨ‚pH±?‹/0·ŽM•ƒ˜?¨å·Ê†e™\«øÉuoö„ŠÎ›©3ÐS…œ2ÆÖ/é¢;å†ÓjŽíùR;ØóB‘Á À7ŒÑžù­÷™Öq©r=L’æ_yÖSÛ¿&i=J;½Þ¿ziÂßW_u?«ÄãZòE’eωjÎî0køÔÂ6¤®1݆ëáÒüâ‹ð»ïx¿)˜nØûݱÌjúhÁ3? )5Z§jÕ¦‡˜¯hÔ÷ôæb‘CJø}ØOŸ[²ÕøçKãšß ¼¸Æ °–Úäjt>+:ó4Ív~×ÁYxË7ú@6¦^Ü•qQšð÷X/k‰ã)FëFäXóÛ@O#ŸÃïX«þ<äwsàÐïÔæö0ÄP´TamZgOS ˆŸ&fì÷£·jªˆæÑ¥;j=ùD»Ç’r{,ϱXáö*m¨ù„×(ü2$¨:ïYNÎs ~Åñ¨“߆³+§R™—y¢¢xÔëJôÔ4.ð‡žÈòð狟¿¼l½|yëì‹Øj¶¤¡Ÿ9N·ƒ>¬¹¾e4II·Õ02™¤…vÒyS_Ãõâ6³)à/îž„—–¾G‚Gx+c8 œâ6j;.ç½(MT§gßÄgÀzÞÈ›ÙIñlèþ÷…ïBx{6Š+›Ës»‡Ý3ÔŒg»@od ?3ãŽ,hð¥FùåDÅ‹!ƒæ "p7ļKˆÀeÒôã Ä:¶ñoý$²¹<BùË<âµDØ]‡v)GþW¦¯56Ôœ`MOç=ë·ªý]õ1 ¨3ö¨øŸô·‹j¶§v¯æ‡.ß`©‡Ñ`EW¢·ÊbF)×Â2©µe'¤ÊYM±¦ãÉÙ™fb/á\4)=.¾†OªYÛÙ}“7¬¸»Ë"•wãQƵé7ùûEÏéLJÍ7[sç_ʤŸ¼y±ŠÛbÆ L¹GŠlhdU[tô¢[üœ‰©ª] œèS†ïŒFã…G6›½y¦fUsßÔÖªüšÊù‹ÚZP8ß(gø\…Ñ’ˆÚâœErë¹9‰­ÑîL¢ÕÖîísφhÕöl«Ê=ÓÿÔƒY§:­­är·ˆ‹†âŠiÍ9£¦÷X›6³âcljH²j í±äK6›PgåØº×*ëÒ›Þa#0p'ÈY1óF¹lÕ¯´õ2C×±iTð¬mÓÇû"kÌ=†Ì…As"ƒLÁÀóCåÂSGkkå_þó1{&Ùéc~ÎÖØ{Œø9ÛaÑ {¯ÑbÑ©cåúž{†Ö¯ç(7–Ťb¡_'è›Úg+üw8-l×ÿÕ_x[ÿçvýÍ þ{T¿,ðvvBÕsl¾÷…;UQb>Þrç.HÈ]xQ3öŠìŽè»dMÙk¦î+êÓ‚­E Uå;h?sžeqÒ×÷Uˆg¹Aà“Ù£‚ye½pŽ“T;û>Äœ{ꦢ³b.dq#FH.Ä A ÿÝr^[ª¹ä³6vàV;ã kr 1Ô2gwùÜh76†—²—i댮{߀ Æ#ψfMs&†Ú´Ú3¹~Í=á”ÍŒJ±¶-ŠÏ7úޝjß.£Ïf¸üÌAƒþ2BWdûnµ±”KYL/aCÂ…Êe‹(²i[y6æáãpYç¶•¾æ¾«ËwyY!G:+˜ÌiNz·èö±F;-Ì ïØüÏü³#ûoÆæÍ¸èÅȼÁ ð#$Ä” ~–<p¦Þ Œ)ÑK¥4ÎÖRùp¼X?n4ŽËõãÅå§'Õʳo޻Յç³JùøøÛ¤\KF]<.ÄØàìJŽOŸÖ—ŸšÚt=Ÿ¿]\ú%SU®¦ßŽKÇ‹+PßÓ'™ï¿|ûËm®+9' Z`.zã8Fü8ÃÇÕãÁB¥t|¼²X ?{‡ìyäþÂþìwƒû†«Ê|±D_Î¤í¸¤T$"oª%áTyovU\©w<•€Ö¡ë»ŒFãQ~—œù»é¯65Õƒ’ŠëšÑqÏåÚ -hmÓ)þ®Ñ6[.‰·[gtpÏ >ÊG©X™¨‚ßò–*ÝúE´-“xéAµ$¹¥±Œòæ† Ì8I2cÊI®Óî]TÉ» c8ë}¾]8¿ÔÂG\1N˜Ù”Š“NÏU,ØxzPLöéâ@@èU¾Éº6³—¾ÑÇï§à…’à—k=$1¢]£}wæ-ÆF9E¾pd‚ÎEgð¹6ØÚá-¹•ÙLÏEG24àÚÅ3ÎÑ,ÿzÀ}È'ÑY¼1ªHG¨BîΪdIä.SøŠ^'¸uú‡M·\<½Hz|!±³ºŒN¥ä*»„Œ %>Se'n#<Þâ™xÐF€_ç>y§ò-ñ¿žÂo™i““0[—~¤Ð]\Wè‰E¦õ)4r·ӂãŠI7%VâÓòæŠ$ÍÓóÉè ¾i6>«¤޲CÛz$•td©“G_2A ç°êZËÄ·¢:ô‡ÖëÔåÌ솞A‰ ¥Bü(xJ—¼“OîÙ÷‡ä í"üb ÐËF³Ŷ< ÿ >í ®¢~•÷NÔ·©Q÷‹t)L¹QÏܹ߀øuðœ}F£S‡›H%QöÊtÈß:…QÊÔB³YtãÏúI¹Ù,W/¹‚ŸcÎ<*Íã!N ƒ@]79­œJ$`bý:&´ôOƒÐ:Án1^+…eCˆ”yvi›íJá÷(ò™zç‰iõ;~á6´­Ã£ƒý_Ã/·.ðD†‹^úc¤ù»Qï é’.P?çZEõö[œ;âHˆ.ižEãš)”êïbXèÖ•¥gHS‚X†;4;C-4—è– Ï Þ:câ îÞìgmŠê¶Çíˆ<ÛSÊ¿ÆOºØ~¸´$˜Ñ³¦ñhlÏä[ÔÒ·ä0}ÁÓYCø)‚|9M&€ûwsëû(`(xî°™ Ç(ñzýøÇ¹Óã–ùþœ´° [±&_ùí_p©…ªòÇ™³óXÁö Mf7c׿vÕîZâ4ª»C5s”ùIÎWí 0› +E»¨RÁlr–áµüsVjêQ^c¢ã u" Nª ² †ô×.;\ò[@‚×™Rñ¦K­XR‰:Ÿ }¥ÝÔ:e"üðúðÄÛó[-éÅkYH2m5c%´–ï³9fW³>î/*T¯²šMÑÂ?NYzQŒ€Žx¶&4ôf%z¶'v©Öëꨊv3… ï+ã.äH§ã¼ßH"7M Ùlé4gZÙ”+)lÑbXB‹ YË=iã®ëîa@ülñ0¸uµ†¿®±úZ™û¹çÁüýïÄx‹¦ž%kvúH7-\»:LË#˜ñ«µÌCê¶Ö©ý:> TáÂRWŸ«æÚE“—Wù4MÌvo rº{mù½RÍÙR!w^·vþÑ~¾ÿþí‹íƒ_ Éæ _Pß¼à ÖnÚ5WI5ÜÜ)ÿ„(€˜*2 Ë’HA¿…|ü†Î<£¸›dú´V!óäSž¤ÊÕ‡Ìã˜,Ÿw|Ý“ë«Zèz·©ÆçK\í…ËÌþjغòMæwJ0ŒŒES,Zî¥zÝv ù£Î;ÿ>ù!¾Ï•¯…2­ènœ+e~¥rA¶Vùi(ó²D­¹†;KI:øPÔËç_ÿ篥5Oðø—––©§]XZ›;¬–ÎŨ2ŠÝÊÒê“*¹ùylûÑrU[|NI7øpüóÉÂ/මA:Ç„þ`r‰¹¹( Ì,Ù h·[o_´ÛÊqûM+|h¨º BCVdA©¯ÀmˆÛcÕ~}øëÛýw‡»‡ffË ‹”½ÊÊk¶°Q°wvßíî¿…¤o6"—´i7ý½ÒåìBiódó:Mº7Œ?k3b ®çÓ̧Z‚õï.Qì¤Te¾Gig´iSÍßF N[”²J ¡ù` ’ (‡”š,%ýÒRu étÏHõ²¦ ÍóÈ˶–ÝRþɹlìÁ´Ô—˜W–²A“ëŠû09 ?Æ7 „ŒÙå1×W4˜šGSgnÇÄ40ïú¸´¸þ±$u³€Ü–0`a%jÖÂÞ|<ï;͸’kL¡3èJþX›á óX]G#NZ‹>gg¦Sâß#¹M³D´ X%¿ýÙ|çï`Ré¸pOvÀrøLºIèÕxÓ5gÏÆ~¦KÍ)“2¥’v>ýá”÷.âŽä•uïÌ:“ê:•ܤ.£¬Ë”Ê™gS»åmÌkÜKΞ÷˜LŒš^_$ýØÅÃüàßf½ššœŒ Ÿša’]¿J"íÍkˆkz¸,ï@`˜@JÝ4H‚Üá÷1?Æ'“Î…ä-Ž{hÂT@AN˜Ð÷›’°XW>‹ÃðŸà]8èÂe“ BÓ†ÍÄz<~ÀÆ…Lgõ8·ú9AoÏuO†>E\Г +ÂéŠ8e±åoÔŸŠ8žòÂú Q£­=áe{'SApØÙŸU1×’‡ù.i bÊl‹ÆØŠýÎñ'g5.-Ñà §q¯Mà†Ó0R{›8¦ê2V¼m©ØXÿTäèœ(别Ï[X"¸LæpìÙ8SÃQ¦UAˆ1ý?Œãpo½bÐeWceqA’½!Ì o ¶†…ÕØDVíÆFÖöSvF†0-Õyë<ÞÍ-뻋¾3=€ð®úzЉQfnT¶vñÆÚ|¸½œp³ÅØäatÂAD9µXC,Ç]>΂šThyD›ÙÄY¹€Ãmt^Ê[ Y{No87HGɎǪ›;7ÈÈY Ù¬y’¥UHç:Â</G²­ Ù]ÞbÔeàƒi¡3oVéMlÔ&!˜ )ZÒÆîˆpbNp=ÉD®öHò KÏidÖ f P¢‚Û2”ŽtS G^£fæl_é³Ó¸qzˆ¯Ê˜h88FBžéó&0Ý|GÓbÏhT $W¥q’ä) '³P úÐ1Bí'ECëô´:?ÍLJψsá#Ò8i·µçƒÁ7aV:¤:âj>ÇE%e¨¸}jTMW‡™sîƒØiÎ:)ɪSC=Oýƒd7L6œÏ9·ƒM_ ûœÓl+%ˆzùòÅ-Ø(œp39 ŠZUýV±84õ˜Xg_ùéÖ9¥doáÈQ×çƒ8J“A`éoO7E¢Æœã#ãGcÒ}ψîF¾ÜÞ;l1Ûdåž·76¦ùÇ™ÖTÆŒ±ä͘ÛÒT1å3ÔÈ(>Üf¡Ö-I1—Q^-:J1!嵈‹j#¯{€'Aöh™ŒI‘…C´MëJÙmlæbhFåùÈí"ÅϽã*GÈÁûJµ`óu(gØKHâX:eæÂCÈsJ_a©†ryéòßvÝ) PÍHþ—z{Òà›ðŒ“)a^@93ï¬ow€{·q¾!ɇ‚þÅ[©ŸSÇÂ!UW—ÞJ3»˜Äg2³œ»–óýºUEËÁ¦›å=;dŸæ¨d<›ô±\¼&IãÔ]ÀU°ZÙÂ=½%½Ñò†w¸ìÄ”qtê2¿‰ÓÊ¢Ã%×­ØÄœ š’Ù¥}%^ˆ±›ç(ÊÍ`RPAˆ¹0G¨Z ÑK ›g]ŒH à¿@EÚšMAYZ¤€='ÖMÒ(ð&j÷'CV7³êMaoåÝy}ÈQÔtɾr]ªÁF€F"8R‘aÔìˆc4¨‰ \vT 1¬¡%ÕÆüI¬ˆŠ£,Ÿ¹3i®Ûጠ5`ãw/ùP‘Ægs;îÙYW1W¼Ø0©M—Óæ¤¥Ž9ÍÐ&\Â4?£›ì¤ÓUiÁ³ŠÜje Büöؽ~£ºD À/‡Ij¾a{¤˜HÄg‡JÛ3ìÈx]ÚÓç,ŸMÞ\<0ª=Q;&ÅÌ‹® l“à³(Þ¯N9Ø÷9ËÛ>Yx½ó*÷xî2={ÕÓ [)Í^öøˆ9ʱ…»\|8œËÀ•½]W¥CQDÓç ^£ø<QJ<£ÿEÝ:Ö\9›Œá–…Å4§óUiŠH¥AcÒ‹˜Slž€Ú㬌(d”\nËÏÇiÕ‰èiÌ‘ þ3ЉVØÏÓ8°.¥ÊÊWT¯WK7UFx&0“>T ж`äÐM¹ÆÙg;2£ 2OKØŸ¨t{b:—u‹À»‡¼]šRwŠ]´™±JÛ TôîL.ƒà5Ó-s·rR¦žZ!« H1óõš)·ˆ— “ÎD‘Þú.e“·’[æÆ++áØ#ª9I*>œ gW…å{ `ÃqšJð¸ÉŸ”Q™ö7*EV82TÀU&êÍšQf.úg\øú×^($ùý[.«àb˜#/$÷úTÇbw—RÐzo<©ŽÇz3å)°˜"høóÎi©D¤h?€ÛCób/Û"dp•ë ®û°YàaD5eˆ‚jNU—Ñè˜3 ê¤ä3 úAùR´¨H&È*ßuù¤ßBvZsÿ®›ôP(ªW|£ÿ6B¶7ò¿îµEýh›­©g^NÓ_ƒ¬ýZ¿ÐEÏ-J~Á;ZØ…o¢Áù6õnÜ3çuýÒi·1ç¸G#„yÕO@¼û³‡(¯H.‡¼zçç:×,T }Úwœ¾zö×’ãú>y„WþÎ#üô§0ÿïÛø<c*î?%ðìü¿ËO—Ÿ@þßå§‹Ë«Ož¤u HUY¿}Î9kßÛí¾L×[å%5Æ|ÆÛ;;­wG·Up¶œ€ì‹õÔwè¶ ¾öÎëíƒÃÖôzmYõË@Q­·;û/vß¾šÞ‚-1«‰=ÞF‹šØÛ~ûêýö«Öô&l‰L¾.Àõë5"p‘vN¹3po?éõÁÄt¥î>2°@<ÖƒFNñ+ùq2“A0YlŒ¾?_Âr4éö’…GeüÛ<þ~BØúù¥ZxyŠÊóʑۚ­núW‡ÛnYU׸ÏçSŠˆêBÕ•IÙ½ûÚ JÈÊssŽJ!g Â@©ø¦†ê©üÃøBŠTå@©ø†Ñ4˜Qt®`¢8â÷šr9øÓPãw¥ÜW%ø·4 TKPx@w–´ ˆ²ƒ8 ìôc„ñWÍjpXáXÎÚNE¥V¾E;J ÍsÑ¥@Vc‡ñclk r/ó@±n*mk^ƒšU ¹27„¸³¡ <3å6¤!Ž=#Pš¡~ÇüöC–‡Wk6,–¢î„P ~U=µ"”***s–%õƒKU=" ŒL©Ål©uÄ3S=±pèþ‡n€o’ÝÉše“c›Û \øñ¢5Bëç˜Æz>&._½±³{ñæÚv8S6Sñ˜ª˜Fn¬ýaœp=‹ó«¡rÛjTt™éy\L ò§éhXÙ²›²¥4Oê›VOÜòS5Ì ]įQÀOÉ4Uí´k‘”à‘çǃ¯IZë# RÕ.›9ÕHešô-dúî‹?™Ìëò¹,ª€WëÕ”o™nÝÊUÕ„øáF1ï|1ïn¹ˆ³ öüv"ÊU‹Ë¡'K×`0ê÷É”JÍŒ‹uúò0ü4‰ÐAߥ–9-Þ†”‚JøˆeSºÖÓQ_ó.d6ðôºF@} ,€3'Âü 1 )n s€öc ¢TÉ›~Jb EO–˹B`0SJœ\¸*DûÏ1SÂn¿ü¶ÀyˆÌppäûŽZu³LâAÚÇBæxdzj~-P>èrÐ ;¬tÆeÓ«rÕq!q3˜‘B>Üoç—Ïe Ǩêƒ2€G Übþè1I\¨N„™GðÄÅ_mÉgê«éu¨;ff°%ÇÊ÷ˆ ˆ4“º‘~Ù‚§\ß©ªçàñÚ³Yæ:Ú}?Å,;Êý3¨o`9ŽÒ´w3›uj©Á} ú^ÁÇí–œÊ莃:Ô+‡¥^Ì㙆¥OñFƒ/4™µð(#¶Ëî>ѺÁ§î,騹áö$Û<~*#Ãæ¯Uóƒ›éÍ×Î/ šë®ß{;Ÿé |[ØL_âÅ­A(b1V––Í® ‰³XDåí´Ì‡0_„µíq#‰ùXÄïnêxd®R“q÷YH܇kD&­ø]û2×ÎKåA"ll+B!ƒ ¸(òî•OݵÜÄi®?9‹fyqZö9m˗ᆾۋê¸Ó1ÿç<à1ó,ßc*îpñ ’ßÐ-Ð?[Z6¸Ïú ŽèXîÄ-æaqË… eƃoïjÉ4´ÊÛu/×®  Õæý¹ÿþ=X,ͳ?·ËÜoD)ÿ3ˆÃ²dÎ(‡N?úÔÑ{T¾š/æãÛYiOs>çô…spsBm:í¤|Ìš¼¬M–è¸8iO„Õ‰O›\›¬Od̼êªd ´‘*(ßúÓ/Æ%xŠ)/ŸãÝV4:Së£TúTRwÖròÇ5°5ÛK fsŸwØAŸTB0'}ˆ°¼uÇé´¡«µFÃóâ”rx¬Áãââ9]'WÄ ÿºIïÕ1¤wækŸìÌ"›‘™ Î<¢‚ÖëaësÔqÅ™7ŒJ÷icî“ÓS²ç²‡îæöšPŒõðç¼~ìÇÂÀ­æ­§âù–Éê±{ù@Øð“trjæIn3wª¶×¦H%­’p²-°ƒT ŒƒÝÅÏ|Ãm@`^øªRì­ Ö'kêŒéc ¼J1‡§„¨oO ELªýH!£DýZX•W/UÎyÑ#V¦õ‰IšmÖ!hŒâzâA29¿@9è}™fx1 +¯'ƒs\ÌU¥LãøÒÿŽ#D‡Fù·y…aM_L†ðý0ªªòÅ„„‚ùX´Ç5ÌU¨ˆ²ËA^6D4^°0mÚ¿¤œµˆH&"o÷žÑU$0Ó3‚¶¸¿R×­]¤Ek]š§%/%x²œ‰»*Ÿ.JéL’ŒˆÍíÒðDlv‹Ã²Óm±¾+ o¬qˆJ)%(`Ú §[½AsÙ² ÌÜ xë#)-›‚&‚QÕ®1¦¢˜~­î’um-ÚÍAqá<ÉÅE…‹£çqµ³£MF%C¥Áheª±")d›fg·Ë$µzÔÛÎxÏ¢¶º"”Œª1>–Àq³Â¯±#ôÆòü":Ç &ÈM®-DoL÷9Y^_ôŒŒæ²…•PýႊÿŸòÁ#Sº:O”k:ቩPÕâ™™AG"â*Øt ¾õKf¿D»à5¹¼‚ó.bgóC…Z®Ç°¨ 8—`S(ÙÄöÑÙ?å[¶éÚ+sÄs°©™ßœÙ¶´PbƒÈRÕµE†C2ï(CUa˜zÀÖahhø±v—]˜M«žA˜V°ÂSŒûí¬^$Ïýµ§ß‡ `nõð=ßÜýú®ÕTã1ë-¿)òú–7s¶$ ü=˜2G,yDÞ5(ÓžBèH >E_Ö\b6b—¥›+….ƒÿ¨Œœå?•; ï+î@æ+õTxÁª9ÚÁ.§>~ìõˆ*žQÊïy/FÀóšiæ×Ö¨Ÿ&Dóý°ÕúwæŽÑÖ²m> îBçÀÑ$.<^ÏÒ­‰¾˜±Ü"³zß(–²{xö•­áôéþÃ?²£=ýæ›b €O^9ýóׯ'­Pn`%TÂ2ÓéUbšÁºUSœ®ð›º â;æWÖº_›^¶¡ÖF4äØaËÒR..kÞeJÏSÁ¥w„úd"W=¼yKÔÿ#]Ì{"|³¹AFbQ(~DM# ¡•æ§¡žñ¨Xù‘–šýŸìþƒHs臙Ð1Á(Ü›á‹Y®°)v}ë/«„‚1Ÿr†Fj[> K?n|;¿rbéG¿OaXC^oÀ‡µðSlÙö©cþí˜ûæ_s:ø”šS¶+CÇ~ðÇZø î?¢aýÄá(&P"…øw#yOë›'á:¸Fô;P~]âǧôû­ùÐÏ[c*š %O;æ÷Ç‚w@Õ?,ž@“x1=ÀçYô¼"ø<ëãÖÅ}$²6bð½Ç»iÐyÙ*<¯8ìì¾àÓÁ‡ø‡¡†ÖtF¬:¸òòÏžÂCÃSAhïB 3ÀÊæïF¹† ¸M¬…e«¤ÁC¢ üRv9VñE9à¿Ë櫼§Çª–àáâ<&ž§ªž–!Œ±Ö§ö𷯪eªj™Z¿„ŸóÞ™ß+ûK(Rÿ^Y^]]ŪN€v[”Ws„'4¢i‘8›Ι ¸ ªwXðIu ¢!]xk›Ú” cû1Q=Ü! ýƒù@Ý3Fýóddä÷¥Ÿñr½;ŠÎÆõ^<>«C¨^ýªÑ¨#:Ìââü0Ýðš!èùèÓ½cÓèšÁÛØF˜Ð)»ŽZrì³pSô9„ûvÚ 5 ޽ÒãvÀÑÞ²šÄyæx ¡O¤Ž? u„}ø7«â*„˜º`ahÑÐýâ=b_bá$ê8à9¬ ö ªàîH„±¡Ð!‡þe/ÄÇI +û28‰( 1Í«ÅR oá©Çæ`f#Ó{Ìia‡iý‚k¡ÊvuÿUŸ“™ápìÐí;ØkÈ3OæD}÷Áÿ#µ² á<åZ¨ ø $f‡bnyNGn¨ ÛIÌsèþŽïQŸ À󯦹® ùñfDZô½ÛiÒ 9•_{¨Lãh„GV`qöÄyT’/‡xí]öžI›Ù¸$ÊE$€"ÚSënO½P¹ŒÕÂ'¸ZPä·†ÓQäm±GoŽá©‰œª†%C´?0+pŒš½p7tbÛ} 5sÖ6’JâY™cq Xàô&°\ôÎ/ÀŠiïç1åœpÌ·¡t0Æd|„N íoüI%ª¤€‡ Ía3pä_oÍŸÏobtCÅîfú¸ÔÜ®„;ÉjcIž-˳ÆâÒ è$ nO¿Ç£ÄöÙ“<½A§?é: ëMŒA`=‰½ÈF`}„ÀZ\:}ˆôàÙÌİ×à QTÜÄed’ƒ‘©H; ÊG xE7kƒ˜PSBÎ…öÌetf“ìÂÉ´´P•ð ž,Ãe 0Y0Hl]ñ &T³\^ì¿? » Ô‰Ù“:©ÌêOÛ»Ûo!¶Gˆ8f,À€[£ˆ·áR,YìÕŸCg³ð&“žH†n%Ò"ÌheÈaçšð²Ä$¹‰a @Åe;Alhx ‡>>gþ­¨ 5¨Y–n;¶Lha·S$Äþ|Ju?ÈI.g×€ ‚>c(XPß †‡ˆKÝ+| ¬ð’„(¡K)}§þaVöÀÑ¡Åy1+ô+ÖrÀlRà2—Ãäcíi$Ëa]šwB˜Ýø|u‰›¬¶8§ñ%Ü9(c ô›^áÌêýßµ^1º.TFÙ€ì[#p†¡hÎQ4Hû*Ô+üåù›€"+ mCíf}dd5^s×!”Ùצ0 `A.Ì÷W –ÙPfЧ0¿óôÔ¡R;Öa/& eÛŒaõ&ÕRýŒ, AÇ(‰€²t`‘ÿ)©¯À_•½¬.,Ï)s·Æ÷ùRWha|¤&\fŠB$¹ð“%s˜T¨sžmÔr7Z­­¥6#y$ê½€å7¨æYGBû"ü¢Å¥ŒÎGÌ„»î<öФ·fñ¥ùEyާ!ó‡=ÏØßÿkxž­ ³#ÆË™™Às.>Ä8ŽÊÃa¿çÂ}²d?ö©?I%`˜ãÙFR‹|çÈ*t†ÛÀäJ=:ÁÐüÓáDÇÙûž=‡µÉ€Ì‚àyíìñÄ‚0ˆLáß2µÄ{ÌÆnˆ§±Û EÝ­WJ=•3*Ì=ù"ö“ýó~·´¸´Tÿ¯¡ÿW}IÿýBé&{YoÔþ_õ‰‘¤O ž}Ÿ%õàèl+¸5c8ëIÑÍæ{ çí¯6äà^gÍf¸ôU=LŽãÊÍ)c$”-•“pvmζcøEcÁ…&ÄØÚ.&—xô@‚íø hdõ‡Þ€Ä0üiNf´Rõgx¾N€}|? ±7¼&}ŽÏ$þ%'ŸÈpfútðr'\^|òÄT,R î6ÂÎÿy›Œ®ãsCí 3/w ‰Ÿ–9SõÒ ,X¨ š¿¼·¤óqßäxƒBE½µÃ»¿@c[œQ»iÉ­¢¢I£cGøºµý¢up˜MõÏí©×M¸´ÈRPT¬C… ܨ §Šbg‹Ú8Ý™\Ewòdµ™ÓѨ¯L64dàÅ{ƒ.Ƶ*íRÝ#¦|¶4SСõa”‘#8íÀE÷ÁJæÜéDXÏÎAp>J&C%HÏœš«‘V›Ò5<¡c ºý$@ø5øµ _º°e&"hæqwîý¤úäˆã°':ÓõdÄW¶N{!ƒãrª-0¤·šæ,Ì»ê0Ã+»æÁP Wã¼›GŸ{—“ËP‘Ï}¼µ ¥eš÷` Ü9µ~Ú d°Z!çõ›yïf^ Ý édÆÝH³T§¹1Mb*ÝeUÞ 9 kíÓÆâüÒtƒ®k¡ ¨ Æ£A3,í2u‘°’{СJêI øî€nacÑ€°X³ÃœÂ²²Þð »c8þûÅo13s½Ëø2ËÎXrõÐ'Üuó uœ$H)ð—”uÓ ÞgY ÞæÍ^ìnnåˆ#óJ;wIöÞRf“KÉ™­ ¦ ø1Àˆ÷Ô"¾9wú. ƒ!Ân4¸kÈÉ}5ÝRuSé 5o¿ÏPÍ:913ÀgÆo\xÚ =dÎŒa‰—îl÷r2EÂÒM@D N'q?!`±{Õà&§Ö™·I-ȶ ͤTˆ*å$•ªšV[¬‘ú˜!垯ÙÁ¦½ËØSÆBZ;#Þ0½f}±ŽhNîôÍ–%6~•÷âí¨P„gœ¤Óóì^ŒŸ‡S©¤(lséØŠ< UøÄyÈñ/ë@¬bá£ÜèI 4†óS”Cß× Ÿão««ÓDUYî1óÀs£°%D”‘°b0âuÄÃWñ”0,®®f‹8Uã.$‡'µ%ðôú?‡ä ºÐû£×ûA`;®ŸÃ¯[‘éÓ Ù4;“ñ߸ê§ÿ-ö R€÷°º: ÿ6®FãéâjcñÉÊ“'ábcõéâÓÿ'\ý“ÚŸùó¿ÿaÖüÿ9èwá4–žwƒÕCÏÁñÙ¡z/]G7ŸzŠÝ«obúJ¹Mï Ñ·Ú*Ý©©ëÎùÉèËmóMùÖ1¡©Â«q²Ýçž]Hsc]¡A£5šnòQChòøå8å2 WJÛáûƒ]‡ô…¥pž(ŠŸÌ›¿­1¢T%gF÷:þ–_o¾.ƒ–ê?Þ>8Øþµ¼VÐä6†Wx­±óÚ‚L×°Mqÿ4…ꛀ>RN;ñe\'j¦ é{@.L„Äw±¦ÂöÎÞöá!bŠ`õû´=:¿øæ›ð5™kz)ئaŠö~~4açæ  ‘/a?ä s‡»¯¾´Û/v[íöíšß‡è4] ÑDzۋù-\[è,¼~óïpá yGPŠW=¿òÛ¼ƒ#Wž¥Eå ßdø‰ûã"ëgqûl×6MÀÜ/ßj‰,Š<ýh2‚ãï *ÒA‚X^wÌäz¾ØŸÚ6¦dÏ §› ¸åE'¨¶Ë£2«U®Pò(gÎÃ¥{ ˆ°•Vi=c{¤wö¢®¾¬Þcovss^£1ˆE½¹ CÉ+L_/9±Á|`e7D+¾\x&Ìháe›®2×äüàg˜’ªÂTÞÈ øâOñmÉI|ß‘“1ÃpkîÃZF’;¸c#÷á]ô.A îˆ0ô"²Õ¡øQÕ‰Xg~˜U—îÛÔÎ;­ŸàÛgf"Ûµ†'t´Šnlr®íójâj-x°Õ&@¦ªË&=+™4k|~2i±ø É=G7ìrAïЦ§ä§^'Ä!ÿÈÏ>é첟B}n—£nbºÛ^BßA7œ'÷¡·òãø¿,‘û¨(íȨ0çÈ’J.éo„>aÈ{ïG±XŸ‰0ñ_[­p{ïp?²‹£–›6÷„Åy³¹ƒ®p›µÀ½á4XÿkÀ˧ØÿùõϹ˜mÿ_Yl¬þ÷ÒÓ¥•¥%Äÿ^i,ýmÿÿ+~²öšø?á`ùIöÀÅOšÕ=I¬`æ­À/ÓóÿÎLjZÊZ´qXhýߤ8Üû^¨ÒÓo2…þÄË9G"½ºqò<Ы¾«æÿ.üvÜý²|âØLñ0ÜK’)i˜Êÿ®ƒXêè¦éóžžäëJ¶ñÌ]„ê4à€…>¶’郙UßrUÓüë/#„©à¿þ>™ÂhÒ1ÿòD“þ¯¾é Q¸å.B¸ëÞH2…¬ † Y´o|]|#÷f1e¯! úÔÉÁWx“‚)ËñçKö"eÔáøe¼I13J7/”w« ¼Yîü*oæËË«rM•—`Qèßì„2Å~wO(ŒV[´ÍoC´CšG[/uA ÂàÀîIáf“·ÓIl õ½ç¸+xRò¬í%ê¶Qr3ºó@{#¬ØkAûǺç¦@¹j#ÆZ¥ô”6È–7õ㽄<Ϲ‚‡Ó¿È4ãš“}dGE`+ù°ópßB£Ù7gÎ’†Šxud&¸¹pÚˆ¨éhoì¡3x æÝâû¨²š“݆eÜ,z«;dž(© h‰gÜ9 œÔ0¹Õt¤Í´ŸAPùUÜ¿Q5ü؇\ºÁìÒ5gùy[zÖˆÚfà4*²ÑëÛP›…î¼ëzçsä$Õ£ £=ÂÌ­wÙñGê^^èH©íõðfBž–³¦(ìAV–4V6Ô… \ŒäR¦åbdfz g2œ3Óˆ8¼sí@Au¿ÓQ—½Ù…ð¢—b~j\ Ša:]dÏÂ+fǽ>_õ°‚"†ßa÷d4†öu2ê¦XµF­Ìu]j‚ûðms¹Q“¾˜>Ô'·rå #DU…K}ÚÜ 8ÔCŒïXZ\y*ÄŸ©D ø=,PªèÆñ³ÊüãgUýùïÆÜ‚À`Ùà}Ö¸è™õ„Ý'Êá@ñ éæ²…âqÅážúÇ2b¢xÏž—òÞõV¼»^‹8H×Á€ZXT/ÕAIJ=²½"þØÎTAóûf÷M«ÙüÓ)¾¸˜µü×ùBÍ&Yd*R;‡8F| X’™Ñ7ýóÎOo•ÞOmþk“ át¯éGÒ|èpí'çt{„ŽÃ‰9ßNNû½N¸ýn—\fÉð0¹ƒd{¸ŽnØ\p à?‹ò×1®å°‚³fd%}•ÖÑðD®íÌ¥l©>ƒ2À+øIÜvü%=n6Ûçñ¸Íïåi…ÆM#m6ÁLÕ'–*Ì„_µ¬D–ô“Ð\<¶²0ÓJ$gr!ÑŠªÂ’ˆL| ýHœÀ0ªÙt‰ä¶æjÆÁì¼vú~¦åO•Û³µÌé-Jã.i7¡I….±‡Ñø¢Æçp-VA­åš ÀÉË®·Úü£ÇÇ 'µ:/À†…"¼èSÄÝÏ“Oú››ú’½uMȸ øÂ›¹ÜYøÏr"Èž5q rgÚ»¯÷ýzJ\Z?¾×e¿wT»ó¾ÿî ÿÿIã,º÷à]ø{÷ÚHæÒÆÜKÛx‰¯¿d4~ý®Â'>HØCŒ)“NÈl]ô½}7ã{QÒŠ¾·ïf|FÉhJÿí»¢ï‰X¤mxâõÑ›½ÜÂy³×l¶c£›Äw,pSvšÇåíAØÂ†÷; œ”Õ±&1ª>jKºêf“t”JžŸªžZ¸¾ÞÚ³¬CPú¦ùÇÌøæ:6¼Ií¯/Ð_ë ø.X‡¡dÃ0¿ëÃMìÊúÂÐü±À…¨ZÓ„;5ÃcÈk,Ï/Í/sù á¹ü1UuÆ!P›£Æ8µ»˜PÊÂ_®½³/1a™àÂñùHW Š!|Bâ—JgŠÔ© õhhtP!’”§¤Tðûº´tëõ }•ß·ÏcO §bˆò‰¿mâ/^·ðÅ’®“ŒFˆmÖM'6çµn[²Êê­ÆˆÝ §mŸûŸÝMµ ³Ì‡ÝY‰ÞT“ª Ç{°ô Ü"»]klwã>«]ç1_á…e7b†q‚ƒ†‰Ôy\4kºeÏãQ>©½œúRÏTRp˜›C£·=¦™â^iÖïY Ÿ(0ж†yÞmÂ:â{Bî'ÉGK¹u.â:èE£¤ß„ˆÚºihcÀW¨ø¡¤ët¬šU¨ôç¬M¹âm#Y-èïqú¨fþ˜¾ŽÓ»dx CLßàa‰ûb¾Ù0ÿ¯wWzYèaøÒ'iÚ;íYÀ¨„FÉ7š¥ån.éQ¯`-õ×<>5ôü”¾•yó=í8?´«Žð—F)…diûCyƒæŽáМ.b£¦csRÀO\.ä, ¥@ÏBïìGmüèÁ¤¿)~e™âDzµ¨`LH£ÀªÚ—½9³>ÜK~}¦çK+á£pùÉ¢ÿ2Ð\&Ýö\›Ú©ìâ|cRW5¿ 1K6fª©_‚³ÈäRX(èºBÃ¥z¨9Ô!xô ç:¢Ë]C.„¼ 8å•Ðahi2ÂãÍ,W¼}¬Ì‡ákÎR†–)„‡B¯6ÌUHl:Z¸æU¼Üߎa¼ÇVh^ÀŒá1¡KP¡s™r¦ÒwÍ1žš8XgTéº~ž/ ³é oêçª0¾Í0²ÄG#ò ÄYãIý ü<™–é•ús3;ÇkºwJ×DÑ8SZ’Õ¼¡–3Ú¶Üœäm«šëN«~!Së¦-N㩸žT3ò½=1ª[ÿæPêw %|¬úeápïp拹Œ0?îl?$7-rÌÔ gÊqÃó+%ciS˜x~žŒËw;óæõžú¦;™x&\„IVÅ2NHW¬þ§‡G/ZºïZB8e^‹Å ³±òðd“œƒqÖ×—ÊÛÏvàîOÉÙ8Wc~|§¯qà|Ã{úsûÖÙ8gãPN¼!ÝzÜÓç8»_èØ}8¥È9(ð@‚þOtAV—Û¾¼+v!Î$燯,~—§òßÝÛQY¨^ì©Ì|‰ðŠy»1!Òˆ²r# ™â?Üé?Þá?Üí?Îô.îBÞIoÙ—!FåCd@ád"ÐïÌyº§Ë±'‹ïís 3‘ý[qélçJ˜ÄŒK/>ÄU¸v{ç½qÀàV(qÈBø3ÜGÅÈ,f(ZxÇ‘rÏ$ÓÏf¹›(á²ËÊãËA| á]ã™rìÊôÙ÷µ–}.û¨bFîöÁ¦by'lzNâ ܯ‚?ƒëaÆOB´f4jPRÀ?#È<Àæ\eÿv^þSý†GÑõÿtßa7¶¬?5*ª`]³£D·mÖ!=·h†›º1s–Å4ÂRÀ•R‚\EÀJnîÃózÉ»{Á£Š3PÝ5-\,»¼rσ^šÝà{]šš¹@`yÐ4FÒ ˆqàäybr¥/‚Ê×QE‰©’u•Æ,uÔtn ¨«MÌ7£Þïd036ê!à\ÀÀÀE­GTÁ³ŠÒžï ªõmÊRÕÖïšUFR}4ÿšš€} Ÿ€JÎ<¥õ×dMo%+!üÛ¾â<ð½@nB€}<²¹ L1 š=VXŠÙ „Ûäüí%T 9Qfñ·8C«Žîrf©À]ËštR™›qÓ¡½ºÌqÉÁ„³ˆ/µÖûcÜs7Cü•7ŠM—7¿§œ¢–'–trvÖëôŒª‚WІҪæJª*o£U¨Å(Êé¸76uv½n£ë×_k‘C©¿\޲~E(ofÇô0À¡­PsO!ˆA¤+øü=5œ•SHu ‡2Hºq`z‰j^п–Q<º Þ¦ždùWÃÑôøØ®?ß>l…¯Z/7Jæ ZÚ„ìp—c?tmiÏKÚ_­Y¢8¥Rö²»)æOD/8zˆKñ ×ѨKHbæ¶§"(WÒ‡Q/òó’¤è“` ¾g\.q¨YÛée&:ÐÛAŒŠ8ôæ”r¤ ¬Vcá'8ÖÔ€ëº:)X,C‘€×ZürAGV»ê„ 6àÃÏz™Æ–DåËwÕÄVë€ØMe?Ë‚ƒ¯=Ä’N‰Uu'lÆ8BlËicaË´¬Oc³J:އa£Êðlì ˆƒW™)hÆ2œÄ3ÇóàPúÆô7Æ &âG€­K« ‘áRÍše¢wzQÿAßåäPpgÕ[ýÖÍJ€È9·­'V» .Ôp<8Œ;Ó ÑÙ`uKU•ø0:.Íìø¬‹]ˆ9XUjC–­1Ö‘Þ¤ÐãkÜVIòsÅ×r4ƒ/Ñô#Œ©Acô‘Æ Hp8 “î "®<|ÙÇÈ r-À5TÅŒ ÁM9&#†‹PÙ#k5êý¸€a70FZ|(4%¶Ñ Vþ ¸£…œTBqR±Éq¸ø‡ìTÂM¹Neaøn”f$õŽÃAÖKÏv9•kxÆÓ\ϹŸ™] “ÂüX Ä1ªZ³ÉcLÊáîÎ tWÛ#ñ‘¢]ÿF F öÔrLJÃç&›k&Ÿ°åK”ëË?¼\a¡•íÃBز¡”½“Áô{ߣiU2IÈ¥6$Ž$ÐA›'¥7’„yªu´è¤ú¾>¦fžb>ë0yB¼#¤*Tj&Û†Me$±ÙÿÚºCðAA;q”1¾ó™â‡%§ )è €ŸT å:@¹þ’ª(¥=¸ÈÃÕ%•ß—‚K°1Â-Iª…¦louËPÌH´ï –‚lVê4ŽÙö"UBX'ëü€¶ÇÓ$é#½¸6iþÇâÓ•¿ñ?þŠÿC"‰<܉™X7“EþèÊ,ÿ %•rá—WÑ(ˆ ÙjýònÿàHþmïÿ#ü–=Ú~u nHUŽmrÊŽ4Þˆ<3å¤J|.Á,*(EÇ—ØX?ÌÝÕ’ŠØù˜>€ q·£¿ó' Ä8HP´Ã‹¯&TbÜb¥Çèðß¼@‚LßÝådgh…±gÇhJ€Z›!ÃeƃùëÞÇÞ’Í'£óøkaψævrÖÆ$ÄO?ìÌ»Úø>¬üŸ¾Øþ‰Üõ–¸éýp•KÜ蹆٧ÔAŒ©ÇËøøm2¨oÓÕ Ø®âp×™klÙ.+ {ì‹U|qÃZöÝ`4}îíS|ûÆh‡½:¶˜Ó†¿ÌÃÇà ·s‘ô )¹e&Æ›¬rï0=‹i¾cßY^&fõψ&À-û`ηÏeüãP#öQà½Yªf*?»êi|Gñ¥Yj ð*â+ÜýçQ7<$ ~C=¯®lí+fšèT´ÆÝëeÓè´×íÆûÜõ_w…;ÏbðzެªÂ'öÃm›¿È¾|*üù&sæzö=3 ÙyŒ—L܈EtÖï95ˆD¯’m³A´Ù#cE¶•†¬)Ô]I|¼Œz}UbÙëG‹´Ø£$ ÷àBÄ[ÑÅê`hΗᙤæHFi»ß`δ##½m¡'^{ ä<4tJÏzšž ¢§ΆM¢‚Î/-q‹Cht !økgÚšYY¢áï%Pm±À™]Q†:¾ˆ‡±ÑW›\eÓkXa¢uF'†ô]¸Ý½‚{宑!ý>ÙµR®‹Èû~Hi?LÙgèÕx^Æ#ºž.}'ëð¦×% Óc%«¼„9±eßì2˜b ÃyÎVy1Ã”Û ?;£«¼žA¼22û:º±oD®ŒT3{œ½j´%h&ø»Ì’Zå¥÷Ý?Q^^â;aV[Høg–݆½×&D×2™I¸ôÃ*ø”GŸN> ÇFØÇ÷ãÆU^öÏÍèº×5ëy­­Ï8îêYÔ“@Ÿ²h€µ>§°37þôéJZ‚ù°6Áy¹¼ ÂF£‹QMŠ´ !´VÄEþ!ƒr9·Étr:2óÒ3GXrÆ7”‡ãÑBTÿ=<®/l×ÿÙn/p8„×Ap‡€ ÔIìÇÓ ;—ÞZùü‡vÜ7áññw^5kð©JP\ ¢¶;¯Flek)W×ftÁûÚ|ªz$ÞÓá} UxŸW°ø†3HØ€ÙPeœâõÀØßìÿÔzÑ>j½1oìîýŠIÌ‹—ûïß¾À¡ƒ"pi×áFÏú€+‹9Ðu¬‘î—Š*ÈúÀSÄY=t.µ†Y?œâa¸ðÒn¡¦”ø\Š=¯”ј]™LaÄúSXW„«2‡láØòË\ûÃâÉ-rg#Ùá‡?€Báæj³xНƒ†YÂ^ðá’ÿá²÷¡=?|¸ì¸â}hÓ >\ñ?|â}è=f¸êQR²®¶xwT#4rLÿ…+whuÿ¢´9ŒGs®j:Žj‚ÛYöpO'ü†Üß ÃØèŠ¿ÉB”:UusË¸ÙÆ÷@ȶrkß"¦¼“éμ. æÙÍ\ïⵚÑàz‘%';Þñ¥-øÓ‚gpïìFe°„¥â¦šëëk4Ç Ú¯z ‘âzðUžôâCˆi¶á\ˆ±ÕðŽW“ÔeÏV— h^–]p^™ßm¿=Êåš–i¶W~ºi#®Üþâ Gúi÷.ÎþM*êéåM¹÷äMî¬;ÆÚ ÆÑ9&¶…“ ^Ö\B$E€"O™ní¾}ß*Ö˜ÌR5r¤jKþ¼{´óz÷í«ö»ƒý£ýý½Ãlé†+mÊì´Mñ©u/U]Wöÿ1­\|Iweç µ}Ôz1«´ê ¥Ÿ^Ü”^r¥ßî¿mSÒÌÝ£í£ÝŸZíÝ·/÷Þl§Sée]©Øz{4µîWú uØ:šñ)½ªH¸}p´»½7µ¼)ýÄ•~ó~ïh·mØðÈÏ®J?UÇâïöZí×û»f¦rÅ—5Ái«|×2dxkºböß\iEpÜ”§Q›J+‚¶Zíý£×­ƒé¥=‚™Þ¼Ø}¹[<¡¦´"øûÃpâ/ÙþªÒŠà¢ üj&êÅîAkç(WZ“ðùö SðÇ÷­Ãâɯ¬h¾Ë\õÏ)_ñ–Ïö¯o ¡±~ӓܦô’&øÁóÝ/Zo§ s%KÂYSdJ+¾i™^¿À¶÷ööÎöÅ”^õë¦õ¶ý|¯@°˜ÒOù¦´¢Éûw¯¶_´f¬Ë¥'š‚GF˜˜}óõ´ºW~Pe×Èùƒ·Fâ¶~j´[ûZ*VVµ@ Ù}cD8Š"&\Õ„Õ+³iþ¼], MiO&üdvZ?jæÖ²)­ÎõN_˜«Z àøÖ€¸JxÒ–Vÿɜ̌fÕ†[áöÛÖ«}³%©íÊ”Vß5 þòåîÎ.ÈÎÃ##̽եŸjš¼}ñóî ³’÷vßìš%÷ËN«õ‘ҔþÁ§wë—#à©b¾ "BT—ïßîÀZÈ©„*vÚ)…”±¢lŒ>÷&IÅ)ä•ÜbµïˆT¾(ܬä•/+ÇoŒæ‡®P¬o‹}×va>çôœ9`èØ8û²šñÌ¢A .p¾:oºƒQž‹ò¤Lóá‘‹b/¼6à 0Øã¼¨·¤"‡Ñ©é³óð˜“`Û ¡4³[‡‹Œò"h˜|”Vã# 딲³>GžÓ=L—³»¾«ý`7õVûùs•Jr¯Kˆ‡-pÆSâçi{Ñë\00z6ƒr6ÊQìî×oÓíC믛éóôYÕl~÷®úÀ9ÿfê^Fz9ìƒä,(&zÞMF=Ç>eƒ8îŠ;Î8úh¦’¾¢Ç;ÔÚ”Ž{3dÓÙ {߉0(qÀ I²kOãø’Ö2°gŒ~Ôì7c¥€ùýùú ožX5+KÍW T›è3]=Ðô>#å9‚ÖÀí'ÈðÇxn>êDCd¦Ž<mÇ€_IÏ#êùûW‡G¶]OqË`>§€ëö¦2RN1Eîg½ÏæÓƒö&†÷blO'¹¼$²°[ ÄÚ÷Àa÷ŠÎÎÙpÓ˜AðdGWò>Zsò0›ÿÿÓ”ü?8› ”éûÍöÿY^~²¼‚þ?«++«p¿ØxºòôÉßþ?ÅO6ÿ—« uíÉ{õX¿¾Ý~³»Ó~iÎ&æ±·¿ýì¼EÏ Œn°Û>¢w¡˜"+ä Ê‘V7Õ"÷ G¬ñÁ ‰u:&´€‹6N‚àú`±2í¸ÆŒ¡šÇDG¿ î·Í*ß!0Vú®ŒÞét„Yø\‡ëØyë†tXYÎà—Qš‡1 ‹v£qTÖU^¢ÿQ4/¸÷˜ TT¶é¶˜bXÁ¿ÃËÚou`èڿ檵ž•f‚ ´uõUY&ê>…U×lv`한K•¢¬`¡•0ÓÐÀì6ø[lsëËÜÞ5úöŽ`Ñèf-ÿÈžºñg~ÚæÈ_PäÖÕþº&9%„ÿ™×Ìk’4â#ÌRI(¹¶Qá?ÿ)uÛ ëÔ‡:޲KDïë þéߊLgÍUýƒ ÄÕ¨¨ån© ‰( Ž× ê´¡dæù t=CN$N‡~U Ýp7UçÖüûr @ÄûŒ²uUÍ/[ðÏAuBQÅÍM%›…ƒx¥8¨€w®@wfõ˜ÞÔ«¸ˆD¤Mu@IÐË2Dx]ß42ÒPj¯`V.»ü€K^o¾.…ÏÂo­hj†[*«]Nl¹*³¾3„N¬1Ü“%Â`Jc+TR3ê ˜ÂŠÉõ ªfµ¹$ÜÇ,ý¼a¯I…‚n”ÉáWÙxWÂE?¿›)î @ÕÆ§ @UFï~цr-O²pgw=ëÊí‚Ò^†$‰º&ʶh©Æo?þÏ÷:Ú ˜ÿÙòˆž’’?%¥jµ:mö²Ek–o¾x|a¦ëì¶:cZ­„ Ù»ªñý“§j‚áU^æùy·ðû âPø=»*ñ=,IøepÛ‡7v^Ï.`·tɶ¼?y†ï˜uê§?ñß`‡®TR•”¨òáøø¸tR]8>žk,œcâÔâãð`-PP%œÀS³a\Ä)}N";WƒåúéS¥ "´ÛþÂm”æ>–PÍ¥ÿ\U Ä/Œ“óØL(_ŠÑ*y“FrãV%3ihlyÞlø/r”*E?£ì, µš—LQ*°{ŠÇþShæÄ7䲂c§JÑÀ3«É¶ç@na`y¨yßvF$ߥ\qìÚ<ömÍâ<˜nq5ÙÎݺA¹Í²†ÚÇÙ]–d˜)À¦Æy ãA…8½–ÖÍjå—FSbUm”DͪFƒ/ÇÞR±f8÷M £ÓÞàSfœ]8E©èLi•¥‡rÊHæøQ ’G¦x¦„3¤2žæHH• HN§3¹ÄˆvŠ×T ÛÑ 3ƒ}ö‰Ìþ`[¶Ï8/ŽºÇ–K!…–Õ~ g[¨ÚD@¦'i2ÐM¾²uÓȦ4â7 µÛcÄE^ŽÂ_ª:‰¦‚ »è %R©<ó¸Ù<Ÿ@Pã%¨”Œ(°WÉ*€²-ëC$r¨G¤pªs’üZi,VÍ"º0 ÷lÒïß„ñ ™œ_„#³|“KˆËõöuFÁ´]Båâ§=ºËƒ'Ô5B¦Œ•Æü<=­7ìþ+›µ¤ýh©ÞÀ]›öÇzݶˆ—x£œ ÐÐa?,ôÈ«Ðü*%a,dHv¨?‚‰áÎÈ’ÂË”¯Žaâ–#¶ÇImzôýЙuÎhoK¦DF¥þEŸ¦°~`öFA¬¸æ»zš:µT +ÌUÚ£Û²°{c6µ^‡=¤—^èÆW ѤÛKì—¦ãÃxt ¿L.UÀ•žh 1û!Üž±ãà¹C좠‰ábzc9PÀ3aÊÃÆæM[:*žó !Ü%ž)Çú2Y7¥ÃÇ‹‚“2eѪOmnyú¿IYNï3ólÅe™ý Ân2À"³KMFŒ§iEª{q'¾Œ£~ %-¨î_”¹e­+ÂIŠ5±UUù×o qÓwßqÁJ KF'auÂn¯Ò´ñŠšanºS'îÝ(9NL‰‚c'Ã~ î€ ÎÉÁg©;!˜gp83”Öì– „‘Í\²Ó’ Td££®Ä¡2¡"¨Kóa‚ÿ€SžðÏ‹'V[) ]E~¯oXžVýŽb\ékeîtrbà‚äÀ0¯¬ªŽ£ÖR¤ÿŠä—ô•gùzì"aݧè=*¤9mô_ÿú m´¨Z_?;•Y3”°²Tˆgž‰dàI2êRÿˆnK‹+ß×Ô—Nûhà­Öý`ÍJ ÷øPÂ!_œXÅÐS;óz#YölÛ³•fŒLw5g˜7!‹*•l”·vÏvS¼W wh$î qyÞÂpçukçíçàç¹}ðk3x …†èî¶ÉÊ\Û3‚nšÚôÎs ê(5Ûä°R¸À@k{üø1tM¢›d:—W“Yªßz’/¿÷‡l\äT§èµPÆYøEì Ü¢þ`r‰1[\Ô&Í™3Ç»& ë¡M“ñ\ðÈ+()rŠ"fTÈLîö,`qòS àYœ_:ÌH¸,,3PÀõõõ|:˜$ tµäÄ»7) xb¨ÿ,œ%IÙ ólã§Ñ ˆ0å¨y2dJbôs28O?ÜíyòMŸÍÞ(`v²à5L!r3J㌻ 'ÉÂq‹ëfW) €ËÕïRf‰`ñÁóç‹©“æ`Њýó°©@0ìfÿ®…¯mòÖŸá 2¡_¡)¢ Gù8ÈwŸo'4p0fVAÀ7SOIP9ÁØ{°G öàÚ+œ‡ÌÚ»ŠúL±7`‚¾,°a“´…‘±›3Ð˜Š ]…ÒÕ àüÛ(Ø;ý ÈVtýýŽR‹ª6¶0º‘€Øa´c`Ól’*é¨"n“¤Rè°i!:×@PÔlå˜ Ã4†‘ c^æn‡€rðaEeÊØ‘Qç##ÿ"Ë2-ß½{Äà]°+ÕÀñX>5ÌbŽ+@@•)—IRF6ÉHg‚XÇANL@UÖ- Ý4ãÚS8wN\ĺ0“c‡¥oÁs™ÖiX‚ÊJ< 3 C£ä£tÏa`'½q€ƒƒ†ü=e÷(TUŸnÄ$­ÈWß4 öÌp${0»õ:±i{¬ñ(¦ñ¤›ÔíYÅ.p2d1ú¨BÕs¬LÉo†Q<‹ARŒ ޳+ Jbã7n)Œy)F1 ^B‡ lÈ ðÁŒ@ÇÕK& xˆÚÓdˆ©Õ`-ˆ0%fHcHtÉ~Ó2`'†Qô„ªGgRu%!¦uleOœYžœ¸ƒz¼&f3›+5‡÷QætßîdO©ð?ùÖ²6¥‹IFSÜÍ´¢y…ä:T– Þ¬NGÝS»—ZAFhHc>Gd—O‹tL# /¢ôÂåi lÚS7È}G‘±Ô -ßaå`;zù–© ÖQè­# Gv5ÝÁšx{ÇmÕöØÚ¬^Èî…Í– CèÀlR1‘þŒêÒú „áó—·3Îíg‘åY;³ýÝé°i‰Fzü,™Aö‹ùª#"$iLum"A‹È@ÌÐè) fb¤2`Quú*¾™ïœ÷Ê6/ýÊGæ‡àº÷æøwõúôþÞoEQjôV]ä<0û–ßè秉Ñ*éÓÆOVô+Ó©¿ZþÖ½8YÓ‘ó"*TÕ¯:I>¦E˜M€ ̉šá“'ê!Ü¥4ïv*Öð")÷íÒ¢¡ÝwH° ¤Õ·+‹D­ïˆDo¾šl5¾l,»´è…œˆ.à—´;¤ùLj:6²Žâa 44•(µÌˆrË¥vq‹G¨¶fRëñzAЉz «Œ±‡ý¿À‘Ìñ/¦€¥³»þÞ<êK°Ó¼GûÚ¦'Íñëp½Ï)ˆÆ£Þ9`ŸŽ9sVK>>0ÞûWÝ­Ò²”´¸ u»2% n‰ê=ƒ·òÞ㤆‘“yZ9PVPz%O¦5^£.Ë£$žqîNuOÿÑÐl²”ÕèC(7tr/œÛêà‹¢=mVÑ©{‡©€³R@þ%ϦÓ@åžXµ#*Àá™ ö·yŽ€G’Eït³Ûªöý¨g·u>º1ü‚,r0ðÚlSý˜ƒNclÏïÜN™Y&Ë#ƒô0Ž@?EWÒ;‘ÝspN"}@Q*[ìëÒUñߘN=™iLÓ.o@‘» 9 N™”„¦ci)Â"âÕ‹Þª{ ÿ‡ã‰E3ì¦zˆÃì°ÍšÁ‰Í´Óu‚AR–@?€J6O¨H8Ï(æä*ÇæØ:…c”J?’QhfãÙ¼—%øÈç«“±BL+˜“q‘kTPír¡eéTQÓ‡»¯¹Í±õ~y¾\ÿ÷¼ŒgS.Iþ[¬‹øs„(íµÇ²6ˆ:½øJ@•ÿ£=•GÞF÷VØáœ€Ê–¡?Ÿ‡÷á©Ûpö‡¶åY»rögÚ.ý™±kg@ âþ—æZoúòzÿMëÖ¾t2õÛ“¯Üç£>š‚h»ÇÅé“k࣊:Âfeø GªBÿ†‚økǨþÅaùûïsšCÁ†¹fͰ¥'¯Ÿ• Åz~UŸÏvßBW!øÎ²È×׌ƒ•hÆùúzˆ°¢7_ÿ50~ ,öõŸã•´#•e¹ÜT@’‘Ìß„S¼}ôzcz`zN{ƒæ<5/éD‰eÜäÔë(AtJFÆÂ ”+@ºƒÐ» U¿WQ.æDœ>a,¢iÀ·O!˜çi—R oöz–ì.C¨—’RzÛ+nΙ• nt\‚ ¸®aˆNøÎÀ¥Ÿè\LS©?M{?Nº?5úÃioŒnÚ§½sr‰Â˜~𡨟P:ôËø2ݨ®ì¥šÞ€˜Æ1×€JýËuç9°i7ú^z±^$׿ëxVw>êÛ~ï@'vwÛ"è¸4§Ê„ ª' ͳq¿w&[IO᳄ٛAçÚdåß,³ñŸeôC *F¿; ôÅr8ùÙ òw"å?E¤üš„1Rþ†ÿ_ƒ—_ÿÉ–üÀÇýPàgÇ..?yú$ƒÿþ´±¸ôwüç_ñãÇÚ˜˜ùÑŸ ³½ÝÝiræYaKæùóÖ«Ý·‰ô:VgHm_Au¼¯æ’ œ:|I® ßŪ9TçØFÖáÛ! >gßßf;3Aj2„LØÞ§î¾{ËlmÔúÜ7m«­|ø­³x»¾ù¡qâœù†’ߘè]ÓÎ…!ƒv×7]¨…ìžyFkþr+Ηì„ny·Ô |mƒpVX°[Úý ³‹æç@…-vDߌÎ]É9^eŠª>gúñ¡Þ8ù2÷ñV"ÝàùmAäè:”µçz” ÎkÙ®ŠV>ÛÔI€oÈ绯Þî´|?Tš:i2½s ”óÁ­|U’}¾•ôÁ«?ªoÚxú·êœX·ˆb\Î÷v¥v[0+‰ò@èmÙÙƒÎDmð†0”Ðnú®Ä¿Ã…ãtAü®£4@RHÉ(ˆ‰$²{ àÍ1ø R½X 9¯Û62ÎÎÖ^¢Kñk²ã°A'oóƒ{h‡Ó ¸¹AÀÍöÁÁö¯)ù€êg3óÀ¾tCú‘­ ƒw²U};»*qð|ßpÒA›†_Ùñ[Ç-ªÓbà K¡õø“IUe³ ÉR-»˜Ü œå+œÞ¿-Öˆê¿o×ÿy²8.6¬÷u—2dZx[‡AÎ@"o©Æ´&A(5B©¯é÷wRš»"x$Ï$ )Ãhç>n˜·øR_s£’Îä,SÝlOrv-Ûº2­å<› Dy-x7‘wQ ú‡œ—SvcZ¿Ð$˜UîUVúùçŸë*µ@\ÂÈyì1T•ß…¦W…y Š*#/¥?¾ÿÏÔÿZGÑù¿þ·˜ŧægy 4ýoqiñoýï¯ø™¢ÿÁÌÿgúßb)‡”ñ°mî¡U§é…¸#Çãè<ýƒ[q›t/¨ª éc+Söæ©›s¦ èVJP䪽ΠEÕÒû4EÐÀˆ¡gÈtb Q)Á¼”<ÈŽÞY›\Ô‹?Ø=«¿×¹ 膿,úИ³_ʧ#´2ˆÆÞ²q É82æ÷¨›ÚfÏ\±²ícÒ‘R~JÐuõ!®ÉSŸñ‹ƒ-Ò­¼ÊYÇ$k¨Õlž¿wÏ-d+àá‚:jÔbAÈ4æ(šÿàŽM¬bù¦ªN´U1%¬1sÊ–0Û ÑÇMsm ."§ÌÿŽ„,TÀÝpN04µˆƒE7)^®ai¾¢ç%¤K¤„¥˜ÎppM¯ªƒx± ÂHa›”ù‡rÁJö¯uaéÍýáXu“m„Z€;|ej™P$hWJ°Œ69W¼LÍf~h.ÿz¢V‚‡ìÿǾ†—rùÃ^¤`Jžšbj ~Ø?˜“mô1< “aôiãÒ0¥àá,Púy¡OÜ{|ŒjY·.YÖ£À—8.Ž} ô¤LÔú(N5û` rÁº§óùÕ°v[…Û¦¿ÀXií·ãôчëŸOjµµÜç(ÏÔç°ÔÒø¤r\úðÛqéøøäQåYóøx^þª>:.Ut„â(ÆX7hz®‘gÖñr¦6jTM˜ùQ•ÕÕ ‚:2í«^CŸT'Ý’°kCn¥óRØ‚cNåÃV›GÚvQÎmŠpž²:ÚzmXàø8[™Û±ÊÜ®,³DVËE/J ªXk?/.Ö?/-Vªë›[µµ&˜ZŽ?Ÿ<Ûør{üùéKóúåË­ÙYÄ'm¦Íé– ò©„çcùà#mXËmŽZæt_”Ä”ës"Í&PÍpûG>«)¦Óåž.¡iœLf7ßú —æþ®pLoׂœed¦ç{/ RWðù©¬“÷Ëy c„]R=Y  è‰ »`©³Ó€•¸“â,É\”-y. aØ[6zfZŠ@ã¯êçÄNܸ¢ðt3±Tܬ¨±ðuíØ˜»}£,•±~v‡ ”#ÂõÐ8ïÖ£„5ÈnÜw8Jdz¡+Êñ¼ÓÄ…Škg0ôaíûÝç” ó¡ã¤éNÒiu|xv;:GÉÓ0ú¨Mp™gbá/+]§,p*D²ŸõðžØféÛÐ{[£êá'ËñÔÃûµð-lÈ»²—”܆û uJzëÇÍ×aü3R‡[/²ì¼hyÓI¶•í/[¹R«@/•:ý]£¿ô÷i¥Ôüõîþ]¥¿]ú{ˆ×*ój´©Ô[úûŽþ~G×çöqIï¯ðïþ+øƒ6T¡/­ÒeÄŽaáþ5@cI(*…He_§—˜wF^{ GËv°ýË.Þ°ÝP f`ޏÂ8 Ë¢Ú¶ ¯JG˜y¿ÐyjK2Ñ åø#Ò]ωå¶1³îÎC‘¤^Asùx$‡>|Ä„˜Áà£ÀÅGð43ö„‘Xµ§“>û–aªsNãÐ"¬Ì£<æld#ƒ¬Q@qñŽ\ †á©³C+ØÇC×W+ùdDÉ!ûÆ«…‚MbJßv˜.â"'â÷PÔªˆã5EY™JÔ©™Ñ)1ábÏðeT¢zœ¦ë•£hL¤õÊ7Ëo:ðëÙÎþÖæëgðûÍ×ëGÑo=»¬ ²Î=ž WÑ4F Í$YÚüæ›Çß6;•5¿‡Á÷É·õlª Œ˜²Cü Šň&¡Ö7ªP¤Úà!oTiÌðs6¬o0+ÿ8s(G¥«’óMøÖŽ–)‰/ŽŒ› æíЫ\åˆFi ÓxñwEFŒã­TÞcލÏ2q‡òá&QT̪$Ô ­vÍá œ¦>cñˆpC–ŽT%×Õ ãs_Ï"SÈ à-¶^ÜÅ(ÎÀ$2¯»Fý»§c2ã6¬ O‚ò†Ã!ÿ®ÂîBw;Sã:—qp¨*åš²AŽ‘`g~ þ•Yê².Șõ¤ÃÂA QqXŠm>|6Š+ò¶b­Î+å b ¼Ý©Èý§ØÎíš1 O™~DV15‰¬x°¶Å’äívçàŸo¾ î—ËýiŸRùïVš¾Oâ¬ý2éOR\ãß'^,ÿ]ÿûòß•åÎã¿ìÿ”/ÿ•ïvÍÎç„À~þ:¦ …ä'¢-ˆô`å¿ÞãºØ} ÇF¯ÏÏzxè‘?# kÔ•TL"I|£­ò{@Ï,tC9ÛÒ =„ÔGS ´v<ŒN0(ç0íÁU†1Kù^×à-ûñ[ó8t mH‘å¶ööþ¾³½ï–Óà}Ft„cANVÊnÔ)6Ùþiz6¦—$z‘Ÿ–ãtk8œ©Ì)AÓ+6â»å¨m¡h! ‡#ÈâþŒB_Je³&óú7 5¯€Y·-,.€‚aɈÌÌJãÚ‘<Ì<¡åË=sV ß  ¢}I‹•«`aÁn֦،™S±Jés"i„ç œJõ~.w8îØ8Ÿ*)t¦ÁF*(8o¿{P¯¶[÷ëKmS—B•Si#¥æ ’T5\Z¡¥Ti=Ÿ›Fxù÷í?7Ÿ6_¼Ù¦Ÿr†ží½ÜÜÙ¥'Ü6¾sÙè)®ç/6؇ßzÈ~Üùåþ4k*Õ^ìÑsïþ¸Ã‰Îé¹=rZÁyi–õJÅ–¸N‘Z\ *”“xÚÊ=ôåC‚(ìçdôV‚¾“¿^Ì'‰’-’¢†Št»/Ò“d´ Uk$³Ó~¨ õq/|¹¿³ 2E’z›?('íqˆÃ CôêÃܱ ¨È9øà0>y„Ç’œØ:@õà‡΢®®Y+ÜP|÷E9)œÖ\i…Ïr‚›\gYãÃc`~»Îp9ë´Ïàj×>”/ÐÃ:VèWgάíü>©;I;2ÜŸÙ]¿Ÿž¡Wãþ0ôJø·ð!‹šñ^9 V[RažáÙ óiN p„§³u6Âh •Žã°$^XBwüCš 2ñi} µÛý>9ÙA¯ÚIx ,ÙЧ,øÌ¦xCq8|–ÙD£ îç…^Þ±®¡Œ Ð[ê8°PNvC¯qËlEÉG8\+‡@&YH˜µàúú¼’"6=÷Ú²@_¯S¦é(–Ža•ñø½ãñŠøú·nù£lÞòrö/\[´†Áî¾eÙŒ•!Z'°+¨8Æ‘À5u²eû8ò<Վڮܟ¸ásF#­±ýc†1œœ|Î D$È!®ÕÊ÷}m¶î~}Pº|‚&h[×ÍnÌm*"Âàò°W‡³ªÛëz:–]‡ï uXrÆølFm˜_k†€2ÓMÑL—ÌQëa3\Ê]1¶_ímýØÛ{þ|û@fÄÍSž ŒMŠý˜§¬’¦¨Í,ùÁªì¦ÇïD¼é±­€²7˜¦‘¼—Þ/äbA žêÚa…µ§—n3WËŬ4n‡”in\;t˜£S§ðã†cÎu†7¢°N“ÈQ]5BûY©+²š«c+ü¾¦}Lq`ó¼êÄéÁf³Bç ²v^Qæ¯Ä¡¡5–:ù†™X÷¾Ay¶„?s€(=²¢’HÎÞé~ø$ÈÁU«òt£‹ÅXw’òðZ]Vé5¾­^Þ*}á0‡=I;䱕5-! {Ç›å85íâ®V¯ÜË¢$Vtk°]À!°øÀçã?ˆÅ¿tA™¦¹ôϰ¢„ZÐ'g“¹¿³ûlûL=ao«úÈ_pwלJÖe\+Ÿ ðR¨rm‚³PQÐe"×°âOÁ˜0Œ&'±dá ëŽ>n:ºcÆ $€w¹RS­fK§Œ SŽh¤x³£ Lb…*ÖädMé.{Oè«Ñ»ð¹RCmP…éŸ'ƒ3ígk˜L§Ã¸‰Q~ Ö³Ÿ÷^?ÆZopPkÎу2“Z5‚üT•ÕÀI(…âá]¼£I‚ò7“á ’8|ùòyøФLJ­•6-ý½ž÷ß³ëqœ§dÖ0&uÓ›r0£í'­eÄ8µå@Ý]—!-Ø‚·UL• ¾ iÌÛIÍEæºbAžÙõ;ƒ\Fº-¼7à€­ãiÇœ+èjaƒm§¤¢m3æÎˆ0äFÀà‚–ƒ±Wß¼~V¥=޶vÎ3KNf(Í_þøÍ2A ²y¤[%˜&Ø!.1K9މT-–']3°(¦§ <¨–‘ó`“ëד{!Ñ«ÌQø¨É}ZHF–{†ÉÌŒj%ZÇE-ØÆáE¾3†y L}ºË}ŒA…Š«,R yì6oÈ!¬èûdLœtD<~Ìþ\½îT?°kvXEÜ*ͳúb{óïnÎq¤†T’N}FUHnÂ]CßÕæJUt;lÒç声&¥Û{ãph{¨)íý·8Ä”‘ÌÓÒÏ»hßIJ¯Ê¥ŽWh®Ôïc· `ê¦Â¥RP4´Ú‡Jáq 4hs*~îÕŒ=Ý[áéh!Ô[¶šŠ‰¬­xßÒŸQüÑ ‘î-½Þ~¹÷Óv¸³™ñ ÷Ð9<%˜—_piåÓÆf1‡¶æØëe «²+YÂ_ºÊù«Ä¼ Õ´…Ê)-`Ž™n‰Yv/.˜1Ô1Ù¨¾ñ(3Öø€ä¬ÒOÁ$Hj,E'h´®aÁ O()»å%…!¹÷ÇP7¢þ;òðRQö˹-†ða$k—1ý¸‘§Ð K¿þ¼ª× Þ,ÜÑ^™1ßJ•D*Æs¤q¢8;%ÃÃ{è&é=ZÂ'ÓIûpt8i·«¬$«ÑÒQš; 63)¨dµ²$Þ°dð[kNÛ²Ûw\åŒ|ÅHh5¹"ïKos¦YíXFcïixAÓá”(?ì"z‹Œ:F±lFüo‡v2+ÔVÅ·WÃB÷(\Š!n8Ü"Ð`˜ŒÞ+„¡b„B_š¡Y*žQ#_BòB˜ewë꜓™x)(?‚á¾GoJŸ`í` ãI%pÐáÚÚö@Ö=s ‡ÃÄØØê óÈpµ}Ï&ñq;›ÚÂñãà[hjÜ íGÓcsÆÞ»aø,å\PÀÈ£YöÞAPr"ntÄ€U«IRcÜl1VŸ iKȈ6HëN/hàˆk,‰Ac %­F‹¦·C-@ޱ @ÉɈÄgüê ‚ULš¯ßÙ¯‹'vIÃétŠk´aª{Q¿}'Ç*Wžo¾Øß®ˆ" <–³Ò À­vyR؃ôpZqä*ÔXCÔŠè#´£˜7©]9ÅûßËmÌ´õÄýÑÏÂû_§óðë¯)þÏ Ü;ËÃýïñãÎ_÷¿?åcï/_t»¸ñ%W¾7¯wøËV4Sèòh@K”Ž)îœUŒºò-Þ cŒ™rir€sµXB PíîÒS¨Tæ+J¡†á)æÿ¾Ä‡aç G‘ŒÆ˜†îpä#´‘œ¦hâÒ9tb¾}u¬Mž/ÚL#ü þ S€´•(/½­ TÉú8‘Wôê(hŽfÉpÎÆ™ºÈ*“Ó§Õ8¯dEÄ™ 94ùžÀ×hPâ¨SVúðÝ1s ¸%¨ûZ^™œ…äŠÍ‘KsžPê%^J¿&½òl…Ð ‡n1Ôö'I¹{qú5êš)RhÒüÂp'˜ÎÏ»5@Uƒaúiÿ°"ZC’“7×ÎÒá„Ò!0æ˜Gž}ñ¡ “'Ñ¥Ä×Âèá›QB´S"Q ›ú›ýææþÖÎzÕ;Ù…¬Ë92{QIµN05³éã˜Þ7ϛ߄’–" MOádó]kl‚à ¸i%?bÞªi¸³†7Þñ´)Îà”¬•šåàêkÎè1Æ“6aúŠÙfi4çäÖšiKˆß4 šƦU夘õ{D˜A¥’«Ú "ñ|ð¦3Ë5œCΛƒjœëCÊ¡g0,0\«$zÉçŸ@£±dÖ¦ÛÄøom)–Ü•Üï±i¢UÿÏpÇñÒ· Q $.âüáí¦Bë€ol€múPC´$Cœ"]Á…¨ÂNÈT4Âwc] üÖŽKÃ)ëîØµYD.¥DžhžÄÓZÅ‘çI¸çQŒe\0¼xùMÛÍ ^x´y¢H\°Šfem!|”[_ûRjöä­³à¨ïO9%šâVÁªÔŒUÈú‰RÍ*-ㆅšäåt¡'?’,¢lwG¡.Fh`ŒÉMá®>¥¸Xÿë–Wg×HE0 ›yÓ$tÂC›ÛŸZI_­®ÑÍܵ·ëËQe’³­+Žb`QLÎIIòë,ÁCPÒ!æ€ôd6ܲ‰F™NÒ!ÇÓÝ•¾êΰ9–‰ æA¤9Ú|Ÿ‘ˆÎ‰=‡1JQJ¾µ¶f;2 V†èŸהЂ$Å_Åbáj³îöé‚;êv_ðù91XR`>µP:‘Œ´k6Ь’Jˆ(V‘ÝKæ (^‘R<6×ãDÑ+D6*-wÔ°pG©âFã°F…XEÂg±è$¦öžm¿~]€€x œ[†±íÉ”uÐ4’Ó Ü5a™»–öw~¸ìõ~Þ|½Ûë]y#â[³? ‡ŒÇ^©3e™ŒS ǵ“ê6ï¦5c!à JƒKæ¤ÄÐ{l>'Uÿél$ z°‚@VÑp™ëë(Ò–šÄ%Šÿ.>²\<ãéûøŽ`b» `ß² ™bpâHê¨GÀ/,Œeèùw¹07MEŸ“M4Cö¬Îw$KYQ*æn2#3|÷:ZEaz«%˜Ý%>¾²ã7Àï’§N9Ý\¯?tJ ôŠÉÓ+Yºþú3iFQ¨Òíöáo­òfdqƒÝ¥b¢Š…Ý£hªDñ™pãTçèi•MìQØjÚ9»?6^±³f²cødµáB†É>k;ºn—F× wSØNÓ˜ìJ>êqa²î%c$CÆ„Š´JŽ$TœYØ=Õ ~YžÑ»»æê âq†í“?»óÇdD hžÎyàªxIJ(´Ùf÷Uª¢£^Ìù’Ì%W•®é>–ÆD§Q VW5"|o,QXU b«YQð9iºq(?_ß5,ŒbmT*ó‹êÕªF¯Ö‚•J>Ç–¼+”E§¿e5yìË]¸Â1´#öbdaÆÀ´µz%*vÛ¸û@ÊÕAi^UuuúY:nnøD¦æÌѽ“ ßj+ç½5Ã…—B´IÊXhÊæè„ÖŒ+jîP%¬î°8qƒ4s´7´ Ðǰ÷_ £#8•hoÎp×£Zâà1ÐæÀ‡ü'8oŒÀ1€ñ‚ç119·œ«“º ©-ºV¼ã1û0aè»e_°¨U“¦ÈI¡ªägá`o66α÷†‹ú^Ì¥×Ôd> O&ñ8¼4pŠXƒc&›L€Å¦ÜúºJãÓ c>'‹. Ç*ÎÀ|èZDþN›’áX‹%ƒ+ÔÅëSÞÄKçí̲Ç]<åË.ø|WX;úto9mªZY°ÅF¨˜ÌÄÌ€é*äãã6àŒºÍ­ÖqâT{ãj_;02Ú™W=¿›t^­$>%›Šžg’.iæBj©F•åP5 K îÐù­É†÷•²Ô-7Ë÷sIXÌ>ßp¬ùze §ºŽ’“ ¯8V±A‡zF®î5Yu·‡ƒÁàg­Ò¶ý¯–Dêu*Žp%s·ãŸ·YÅ)3vv&|Xdr 7l;Ëcwf\Q¯.™*³ŠN¤6E¢¯Ðh1Ì´Åš£S'$÷–z•«âÞ/õ®”8W^ê\™A«[$ %Ï}E™ û<¼p¶@<ßµUBrfaåe ›€oL1Kß.éÅÕƒDSð¥†L+¥Tò‚2*iavð+R*Ù¡Uõ‚4oѧ¬Ñþæx2IgãF±Õç5àúÞÖË 'y*²v(fùêriÚÜx»üŽÄ bÎYžs!¢RäzNùò÷®¦Ö!``f>’^ìøz4†ö|[Š.eL¨Ð=·®¡Î #ÕßÀTë,°ÿJÈÿ¥6ëdcÎ5/=gwj’œÁ½N›WÚ›ÓuX`,ó¯Í$ƒÔ[€l¡ÜÙ–Ýj„‡_E¹sm½íV¢!m­ò}4׸ý ÊWÅÝGwXËÁŽøæ¬M®:'¯–c˜$ÎÛ©)<6ˆ¨ðF ¹ðœ5®•ºv®Ð åj ÛTÆ“³dIn_35Ôš”ñ„U™M‰ùuÛ5 ê^º9ý Ý'8Ñi¯¹qœ|œ=ù—%’E½]V™g”ž[ ˜‘z\+Ž’ôŸGtÐ/)° ô¬c/ùâ‡Ç|Ö¯1–'væ‡í•:kQ¾^j€å<‰Änª 5A+ùäæxÅÑþ¸ì z()Ú›çççMÒÜÏ&C‘p‡â^3¯Hd°û÷ݽŸw+~Á’Û£.¸åXñޝ1§óΦ±ÐU4/çç\[r94Ã>]-lÞ’µ¹¤ïW9?zU"½Â£PLq°—*U¯ ÑtåXȸóö½+Zâ§«€€º“ˆò™P$ô©”Y²H䇃Ǖ-w*%µ¬ôV¯è¼!žŒ¾6ÆÎÎUÎc?i…ຌJI ¼Çtû á¼I¶NžëGŒd‰oœâ™Ná(£á9Æ#IèÑe"²<d äˆLY±ÌlLN4†yD‘}¯H‰}fÛ®~ÙÅåV½¤£ã™dg¡…P­º#_¼Ã@·¡ðù•(¯½)ªØÜˆÀG¤=Ô(Gû4Ô0‹À=d­PbX•(›ˆ7rÆ2˜êXÍj°ß¬<µšÉ¼l¨ Â3ž¥…uþ&D‘Y3ÀšchªŽ¢…ƒ­ª@Ô1œ;5_ßÝ Ò@lD°À.åÍep±_![2 86a*hɶ$¶ loÞ ÷FEi [1žj6iº½Ú4§¢Ù0>>þÑx3¿ýÃήIW¾ó›Ù,žÜ1Ä™X¢×d‹åÄ)ˆûÀQ7 ¸ÑÔ’ÆR¥ÕI|œað¹û—KgÄ °¿OŽÒôåúØË„Ž5UnlŸf‡´vú*"wç¢ïû¬¾9ü›HèqÞÑ0‰2D¢ô .öhÀ"Öä_ÏŸ ûŽÓ—3%)œ 6bROSLjVG>"#œ+fÿ&{ î_àCÈž§w³ßøy2ž/0¦C¡yš†Le¨$Ɉ‘í¥ÉUàêDU’bò¹c*IÈ]6+#Š01/M•ÄFÒ!¥© #8^u•¶Ø‹Ã$û0“¯8OM^x`çÈU‚r"„¹!{ìªó&QNŸ W^Ô!‹A‚a='¢Þ²?xx2¯Ü¶ö ¬ÿwÊ ± ‚":ªT£Ì©Ø"ÀEN“®iX9Ü#2ï  €º¹ð­6@¬ïâ€E­7 ÅïÃ0‹œ˜LŒ9Ô\A,'ØŽŒÇ×r·V†|ÝæúÛSà(%e'4-³V‹Ô¿-Ø;¢2Q²¹&çd5Û­&¥býkvœû'Þµ×T*(õÄYÉî®±ü Øò3TËÏdêµ3š1i‘–$H¡Øãh›ä­õb­½³ûêÍÁþ¡o2T)5ß5|¯žX_Ü/åܱû)]´Ÿvñ«\ºzuå1¨†ÿ嵃;Y5GñÑ4{“âr±û¼Z ,*ç"¬ÆDè7Jå¥×˜¯}"hY´8<-âÂõŽk¶rVñÔß39g<芬VÔM¿Ëõº¸Ê¾'ÿä]‚_DEßÈ│›‹dÚù­˜p k|mõS°è™- :'`BËŽÔ ÈqlwÙ&¼ì (ëF+•LU+ÂwÃÑÆô”A?o·å6À«ç {0‹²á©äŒŽRWLƒdÁˆàL¦â‰¦¹Yê U¨•¡#C T}`s„CrïaМ y¾êWâÅÀ¨È¼ÿ1±L"PKÔàøµJ±üƒQjûž;\÷$E°—óüŽC–T6`ÔƒÎÿŠÉjÑ&ygJ@{ÞŒDÝ̺R@ø8/$,‹gXÒ:'ÇγGS)±)/Pdì…Áòí˜bC0àÜVWÃ@ÌìmŒ¸Z`ù¹x„„˜­1`Oùá…Ïí/ûðš„ ªÄ÷L!ÆŽ±›In+”Èb1<‰ÜHŽº¤ä«Lé4ƒˆnˆ±º‡ o"†ÓÞò³‹¹0Õ"i8"¼ŸL¦ÍSœ ”ö+:T˜kK[Þm€s~^Ç1bæ¨âSCõFœþ$›”'§¥7®œÖÇ3LWA oXÅš*¢Í3¨wÊî tûÌ%¯W”~ɘÑ$(Ý@5±Zl]¹áxx”ø÷Eüì6:¾d7æi¯îÜMž2]2ÀO óÒäçvßλêº/m 1t¥[\òP»b›CŒƒÈ>=$x9ÆüÏ$¸Î85‚ŽŠ1Ìùñ®2 æÂ4k’ Ë`)}ò8g•‹áyPÊŠ˜’&³+\…c`äb¤dIálųUÆÌå˜w¸XÇ$Ϣ··+LÍz2š,Öeó$£©À{E(¡Æåîf¡çnf˜+;sÙÕc‹§D¸_ÒãªÀ²ª‹æ¹Â—ÎI\²“´ˆO=XXêÀóT»ú’«®ŽÔÁ„vŒrÉÇì{qì›±¶7£ŽDÜ?ñkDøÑ0Ëo`ŠŠ‘6—ÁK!‹R^D¹½g#uŠo!]—2Pì‡er›³ƒÖ4gGCõX³bG8u›ÅVÝfØ D|˜³›Î^Óí=<”O¹TFÞÈÙ>#ê-Èßåm¸¨=67X|ã¾UîÂfŠQ&¨2ŠUÞãV`ŽŠ»r‚=1V5_‹ÓÂ…Köž¨´«J=¹r^+ïÒ‰«ðòé 9„ø×åÒ4‡!ÉÒò0@ÖŠŒ¹ñEξL Sž~(³z#«z+YûP4M£¤*“Iñ…‘š`pvÀâ2ôfgžuG&(}…&CÙÛ¥äÒ¢¥%¶rø¹*lhóÓycàR\*˜ÔœÖñƒ¡Îú± †˜Ÿ_žMJÇZn)Ýs̱§eæ€ù'@TùˆÂv 1)þ{O=§þ­Ízµö‡1\5‰zjÓbƒyéi‘”¿r`_¿É-ÂÆ=d\ó‡2SÅNñé±Tx4©[Ó>’w(1÷ô gå™Y|@‹d^áWò®Ev2$v³'•‰­;³‘‡³¾Â¬ ÆÂn.—FdÝçVàåAw€Q=?CgIžš„·ù®é䢗¢ÓwV ÿ†Ô¤ò‚-"?Sœâ| %úuHg3Ö«>$˜>|· Ç¤Ì „@Õ3$’Pà•Pl°/ z¿gjk£ ЦNX-óœ<Ž9:J3X÷g3ŒKq™?_L°|·ŽÚ6P‡ôÐYsSã@EDÕfð¨U`(>ŸGmý¢t¢äÊ#š ôMnªx)ÙƃÞûáQG½qše s¾m"!8RêâUÄèn3Ðs#|{è¿E¢÷λG˜Û ·eÆ+íaÀy˜rìÔârÝØ1Ỳ5@ù ]JÜÕРˆôHÚñ5Ý>êX*A¿AsÆ áNaLÚÏ1?/áÚ¦é,¼ó Z\k½{ªç~Æ#`v~^ü ¼r<”`Ö-C¹6÷V†èÉŽ²jc ¦ ÚÄBΠç›7Âëî¿ÒYƒÙ¨—êdË¡²?NhL덅-d\‡|f¯©cˆ¤­8^eüÞ× “Ñhß¿›oøÕ-¯ï")9xùØÉMwœˆ!_qã›us€õñÆÏŒÖõ”Svœò•ã«(›$k<t?¶¯Â5«ŸÕ¬¶D!Kȱœã­Âïæ…Ûaž€•5x rЩúD{ç] &ñ‘µÍübȹ³3ò[+ëN_w»ØŽŒýFhrÞ…[âLx 6MKù¡ÅÉ‹šÈÉx«2ðj¥~“NGìš×åR¿¹e?,\ܤ #)4uÇT¨Dƒï[i=“°…¤°[Àç‡æE[k¬Ø`}i6ê†RJM4­ÁÖ(KV†Ë—9Q„œx@…¸?ª ,H| ÇZG#ð=>š«r:¹" rá*°¶I…>vA•–„rµ7ÕL{¢†HÔWÄÞwÖ€Rn´?ÉE1é{ c\ßqòd<“rƲ’ÅR”_Jä0½+¤!‘ÂHw]¬ojçÄîRèu¹ƒ8ëO’±{‘wd›¦/„Ä÷4='Ó€òmii” û)¡V~~VሎUQ6‰RÿcPb“/¸HêJãuMSE˜M-dð†!ü±U'./A£µŒ²:Y#Ëã±zË’gCsY‹4½L$Œå¦ °Ÿ¦“ûŒ£dâÊ}Œˆ¨!ãOÄ팲ŸDÊùú±(j“sq`^<Ñ9‹ §¿$ jFGOül<ÆtK1¥šŒÅ¥ƒÎkËåºd@F]ÃQ4^yb뇈•”Œi§©9ůž&ÁýM8!2cXª b)ZëNtÔÃxø&ö<Â}ºB$È„_…+u½€¹t0pħF>¨‘¹Å;÷^p‹Äð“0S6wÿ‹z=î]ß4nBOê ›;Ì€Uëá$æëÒ¬£Rscd¤î±D–Ú'èÎúiÏ£–yýDž€°úG°$Þq:$ÁwqgÏòþÜ1• ×ü×ÚÊñ¼²ÿN0¼÷ñE›¥ÄxD~0¨M@‡¶Lð–¦a ’wG#\ÄÊýRËÃÔ2ó®bÂ’aFH¦aejQ´¡‚ð½Ü*ÇBTnµ^ötÕ¸2 áÃnÒf’‹ ®On8t­ ¯®·ŽáMÌÎÆv"ò ŸECá0RZ`6G£:ב—@·Àäx6$¨ÄG³“¼ææT˜^]̱…Àq ¢ˆ1Œ·8TŒ·04Ú›ßXþ”ëÊ }=¬hÇØ¶ú’л¼ k†;­P\ÓøèFvÖ…öÞú–„dHø®B¥î8¾§ÅBù–L õr1Ô§Oø¯Åˆ…¹AÚé/‡ûá}“ræ’FÊæŒ‚¡ò^óöŸ 7·Û%/–Õ|æ)¶Pj; ËÃ&îËÇ8;ì@—qôC!²hY™if扉œaf<«=d® úé@,åZn|.f˜,û‘Åù4m¢öH2óÄãQ<=cñö vÖd>ìñG‘Gé G#ÝY³õlC’^PC4€RE¸y«r÷‚ž"(9˜Œñ0+‹Gñe5ø$/¯ØjMSŸÑsšÑA1UE9 qÆSôÙ(Ü[ ‰Å€¨µŽm†l&ºCÜEçÆNÊZD¥6Sóí¤Ø$ÊXHÁr$ˆý”g3ec·ÆZþB­XѲŸ ºdÇgw‰®cëÒo™™]‘Cæ@ósV–ÛãhƼ•ªv6Ĉ_2àØPX|54íDy†±ÛÀ]¢¿ö¼sn4^5€!*ÍŒW"PM;³ó Q޽Ÿsù6¥0Ì€p+ ×°•ôj€ÕëÞi<(küX¬Z›Xj“;òš‚N·¡d€m0ÅÌLðoÅK´û7ŠˆkLjwÔÑWšõBåú9ŠÏ¯Yæ;‰>핹‰q­ã#V’>‡$bVZË2äKA‚cÒU[ìáϱì¶DÌØ`c±ð2oTÜÜ`·,—yU€›²Öœ¯ôÝØ¶IvUÜ­²k¬8ÛYqeVœè e8•΀W•ÖÀÙYw5!“æ´ÆþBà3qÓR[W´À\MJªæðæúHù'tB2ë–pƒ¾€÷„õÈÛ {vé…ÞÍËééÞc"½9Hü@-¥&°¶m–²ÃëIZ‚ë%-Q™pÆt•].úØ*Z"º[ù™©ùá\g¢¬¨1:Œ„q`™O¹É¡Õ3“øÂD,Ç`ÅF÷gœøÖÔ8‡ÅŽñd‚Û•êeœœJHbR_±Ð·Džä½R`°ÿŒ-FØBxUöÌ*ÑC¥IWU? @¢Ã`¯JŽl+èh2ÑKÎi²µF>vÍó ï,ÒÁº†+ñ)šëLä¡´dpËž’A®Ÿdp}/|@o×ÕÉõÅÏ®íΈŒ 4(‹‡. ZèËeíØÈYlÝÈ_ð%g¤ÿõð×6¥À" Fï*)sŠ`™dPÁ7¥e[Ü»Óc°°ðáN¼±/—›œé–çûy¯P1Ó¼º ¬¿K®Ÿºÿlá.ù˜'§|v%zú35 Z,¨C±†ptŽL0`)#qS˜Qm‚þó‚F˜0«XÆ‹`ï[¨å†vé¬gÉLJ•é×̇<ÙP{^Ä~çå­]3È:~NÑHÏb÷òñÁZÚÔöºd­DÕÖ!0 ŸÁÛØÊöÀm¨•%û'û–õÕ±Õ¤a¸K¦“)×›°.?Ÿ5ea Ôœež¹®knA‘¸¶„×tÕ‹3çQÃ-s<Œú†ëÃS?ý²9¼²¡» %™2 õbÌï‘>wü2縀•Zô³XR$#$^å:=çúâNY \Â¥–¶$0¥^ E£4Á€Ë¸Bæø"TÀâGâQöÚTwaLç4ÅÐ8¦ko]Íxn‡z´Zû˜Ç7A@¹ýRy~¿ôùïØ/mÂݯgúLN§ ,çJªœ”Ø‹×ÀGÓ—Šj£·[M­–[Móøè<'…vÑ_ÍF·uƒó“dÙ¼š/ÙO'€$˜²Æóšò€1•¹jåÅçîhn¢!re¼dx{•ãʼ¾ÖiÃ*]´}ËsñDYÐz±Dmɸp°­£!á7‰û3,jÄ*k»{˜jc^ÜÀë§b^UÖÞì>Û~^Ò”SÚ“›cëKRϼ÷Eï"‰»¢7$‘ÖÅ®Ìݧ°â ·°>óV;#AöqXùªùp9 ¿Ê() .Öu¨n#g5k4»²£Š¿í\Ñg¹Ôfê{½%ûN.o&úž<œ¿°rœ‹áDÛTn•@Câ™Âæ*%"¯ÿÐù5еu€5¸ÓÕðWµ¿8 fE5.2!+ÝœþAn‹Ü|þÙú:Yõ‰÷`YGw+®‚ôíZÕ°¬ø}ŽîJ/+×µã×&¯ÔÒ÷¥A“'c©Dmh¯‚EÒì̃øúÕ'œ÷†·À.ê¨FyWùƒu &š×jð´ôy·kR¿ç4'˜)äáT ëªßU*¥¿Y2ÜS¹ÔtŸàW%áK‰î(çü(<5Í!¬zWâ*ûÉᯛ#‘:°™ã4 ÏKPÈ8;ògÑG>]WŽ ¢ó°ëz§Þpè©iš@‘êâé¸áÞÏø¼n¿üÚ2²ö°Nè^“­&' ýãTv6c`77Y¶ÃÐ_”çÑLJvIçö=m&ãcnðæù5CgáEÛd‘¬Á`;䦹B^­º™&§ Ùë‚ iQ· ÉUé¶A;kªæC{Í»µ¶@cÌí¿yµýºÛEcQ2-)pÔ®äô›b=aKÊÊöÁW‘KP¶5™51Dœ†]AEÝNåŽG¤¡ð[>l—Ö…V–M¹³Jz| ¨ýʦ Ë•WgVŸë±Á›SíÓ»%”èýâ- M ¨.†ZíHî÷2ëW-/qŠ µ~ðÀ¢³R¢Ê$„áõæùâÒx3¾É„sÓeÓnš+”ŠC‹; úápæ¬KñMIÝ~E‡ j`òöä8·ÆuÐpeRm·ÓÌ×î^Žm)©´L»%5sq„~‡rn!Ëí‹å{ñ!©9¶l)¹Ò©Zr'lgéê/¦è W¾­.„ÞpÌ[GÞ—›YO¦ÄæwCiØ$MxÎ-`\Æ–ÎÜ?xÀ,ø5C6íŽ'ñ‡Ò˜B?Ðð±žý‰Qºëer๋`ó6AÏ«jîxONP2š‰;½ö¡VHÊ ´´¯öjÁØÏê«7ÑAäN>QwçÝ@êL¹Çj5ŽÌ¦æK¿ãëïêÜÉ^ùÒ™kÙ⹇oè±bÙ‹†CJÅëeAîyó®–2<¯zî­ÕÅúþM0×¢pgäøU˜†´Î]÷Ä—ÄWäïž….:·×uxW‘ëA¸ä뀾ôÎSRËe‡r»%"„;Â%9{G„s6‘oŽÑï|Qƒ¶o¼i±IÿŽ`EôœúDý‘ûœ¢á×î¹[ÖJÝè·ä¹ÃÀI‹nºfì*qÑ9§˜Ð}wfÉ{.A÷( ÒÓô»^"#v‰ÕzÞ*¸|;ß³ÚåhÒ? £³T´‘WD"qqÀ„àŽ·Mº+=víK|:ì÷x‡}^2|1¯ŠÃ4òÉAØÐÝ÷%­ËÂ…5©zÌFГyë-yh…Í>û3eˆ‘y p¢v\îÀüzvn´ggéy1YÝlâç ×ËÖ¾°Ž¦žyþ‘‡BïüõrÇ¥žoþÝÛI–2ÊË]mÂÿÂïÆÅ„«=ü[%Ô§ÑFU›^çÊËXpÝ8ʇQ: ÔñaWÒk?ÂHãh2~³býõ˜•‰Q Çlþ ý{+€#´o5T²&2¾º”Üãºg&\É^ m—sî«óøt+5oåMXÊà³îåªZ÷ Ø7*]2Üʬ5.`©“•E,vLÜÖ6\A$$ ªT†³”œãÏúšmf5«Uy‘B'°*4ÑWCMLF‚ÅSòöÉé[m\Yu— ¢! Ø0¶¸ŒR6Ü9¥•Ú÷*0Ü'{Í2‘¡óæFòN2ÕlZ4•$w/r§áz >©ÙÄØÆÚ¥©# ê*«ÔåêaˆL;Á9AE/HÇ!*°> xèçEXàë'B žÌ ¦” !3%7)<ƒ¹_u#Þ&sºÂÖÞR»ïükt1ă½´ÞBëìë}ó½/¸¹çݽ4ß(‹Çm.Å›¥é@.Âççèá¢Ö¯ˆ®š¼œ£†Ïß Ký® ¥¼²÷!³ÔèH𥴢¯-Êkå[æÕ*KÜ(VuÊ)%]ƒy-q‘/ÑyGê¬fåy2,ÝLó¼t/š°ný¨r$\cÀáEsô ãØ®4 pƒDÝ‹‰¶ç•à[@#q. ÿc"“ÿsYóßà‹s–˜¸öØmâ4 ¹ ¼&d&Ò£¸0\2¥@óYJˆ÷‰“ä Œ1Žì稩âÆ"ŽÒkH–Èb9Œ'4ÁêæÃA ¸Ö$99‰)› Æ`NO%!.^MŽ’é$š\Hº fh˜ Wwa°| ãa¼Xºf¹ðœKfÖ½E/³é×çbnjª”˜<åÞØô©¯Å`FK@cçù·¸k/ÎÝ&aóŽ® vdw?¿.4„ÛižµZÎÊ<žge›àIÍSUç9zI~îl€<)l~,Ë¯Õæ®~¨%Lxȹ;Èì–˜ù‹m¼¦q\ŽSÛ%`àF‹‡”²Ró>É–*·4çZy3pyz›´§èðO2g™å‰–ðŸRÄ^WSÕ’@³îb»¸ŒëIš qÊ8R£TÌct\Þc²T–ìòŽK…Zn­I4›&F³Ù°À,†…åÕiÞny¥ Žß¾óÙ¼ã”wî?õ½¢|Â^4ºÏë–nÄ˸*¤c'yyHS8!’7†&ʳëA]–‚ÊŸÏ3€»½yße™¾†vÝà «Þ;¿{}b/8ÈryàðFwp y`EÅVúÁoXÏáö^Š­ì`îè44I·QyÊhaE€T˜é(§pöƒØ&‰^•âëëá²#Ñ÷”p÷B…õ/‘h=*â•*A`0wé´nf/ѳ°iÔm¾~½ùйšc€Ì»ÃGÅç|43æçugu–ŽWóëZ ‹}›1kËù–Ê5lñ†…wL»Ëxº¿SÓ2®Îy³øöÈ¢ ŒÉ€)|npS±zu©d/ò€=éÞ KCR‹ðPu’EUžo×ëmï>ëõòüûÛÛáæ‹ý½ xQ¤€ã|‘&…x¾¯0ÀÚdÃTÞÚ{õ×;?üx[éøbBa?:ß~ûMseyù›ð‡$ƒ½ÝŒŒài˜o†â$F[øãéy4‰W9¸ ôIŒŽÐÂÀ$SÉ;ˆõ}2‡/#½Â À¤+x…`¾¯Á ¢Éy2j¢oXºn#{Þ~AŽÖ'­ñÙüŸåååG…øï×O{ÿÂgåÑ“å‡a§óäáã¯WV?z.Ã÷‡ÿ#\þCz¿æ3C‡JÚÏ–»î=O&4ÿþ_òÑcŽûÎvc°ñrNl€Z—áÒOÛ¯÷wövQv¡ßÑ‚éIkù!; ´·ý‘x‡ `@PЀ>ƒcötû—W{¯ø9ågë |A¾2,Å—(›kð °æº†@E(·2M(æfÃզí.--ÕùÂlÁ ¡H¿!ªË$Í ùq*“U§WdÝQ’ÕU÷1LÔ[žnÍi1{.àFšF“"¥=µÆ`œŽi´C?m¬‡+õb˜)ó¨îOsÚQñºM<Ì›”‹ äd’dw¯J·S\–¸ ¯€Þ=›ÁÀáa`/4=LÊK)ËXfJ¡¨¤$ÞŒðÖŒ¬ag¹ô±U©U¼P+¥È¸NkÙ˜~œ¤³)Îê<ÊLÁáEx” ëåø‡It…ßG“I5“Ú»1 ç¯BìV`…m,ËÇìÁ¹  äH¿³ö¯µV½Ý&A¤±“è˜Áþ¬Q„€›nžÀ¨ÇÍg!ܯÃmj.¶¶CÔaøMõ¦*ÒVü1”Œ®¬> J®Oáô¹q<Šp2ÃhPDÓ¥5öÄór‰’èäŸÃ¬jB¶ã)îÓ?÷« –ËÏe(ãÔ?_T[Òp_pŸ“8SP¼¥ËóöÅð] í?—ÚûK¶,Œ„soãÚ0;H3Y[ãL>ü ÓúÛ!Fº‰æ3FIÉ«ûÕ’‡U»1­!¡Aä m¶mµ²}ÚÉj¡ØŠS¬Å%ËŠuübð™b1Y”gp7@ÇÌŸ°ÑdÀ\ÝÖ²Vøa´ŠA«Z§U +•Â&Áú}Ûr½Ii³:ÌéºCT6A>÷`sÓ\µ~¡ÚJ¡šs16b4̵1(´ñ¨Ð Qòõ¿ÈÕ=*Ô}R¨{Gïýœ¾›ùúåB}í\Ía¡fqæÙÅÙQ:Lúˆßçêg…úÅYg0p o+>+T|\\®TrÊæP§Æ~¥“-v¹áŠbjÕIòŽØÞ’²ñûtî°­@ÇîÇЀp¬«™Ú‘ 00ü!S V‡)˜Îĉ“n KÞ“äbù³8xæž’úa6r @0¬éjÔ!67H2r#³a¸7—&¤ý¸¨Uº3U›®{á¦èi1ņc MÒUOnz~?¼Øû>ׄ;¹•m•R£›‘&µlF­.ñݱ5t¯oÿzxÿðüA­Û…¿õKmÛƒ7‰Ý7LÓ÷§»ŽÜ¡rD+ ý7;‹É»ÅN{›áîW0Nm“wHÞ󷼊µöá¨ÍTßÉø‰½ÈÂPaP¤ny¯v³]c )`ãæn¨¥†tƒÌ ~†m´É«ò™ª¶ÌIq"4f ûÛÐû§)†uû½}{)x!º¿ñù Jçn¹Gaaçs­¸oìN§ã,&ukb°-s9d E,Áß E€ïØ,Žà.#¿M[¾Û˜å•q›…¯ÓºÀôV}nÒγ `¦“%‘½·y†ª65«p¸²Ý>á’÷²élpaYµ%DLhHœü†<ú–Mò#:&¤‹J…ëÁàÖÞ6Ÿ'ç³ýéÁàÙ»ËÎòU=,~à(R^o@†˜"É2a¼2žÖý’eŸ{ÈƒŽ±Êá³ÚáàAYO…*¸1!N«enÚéÍ3Ø ¬W;<¿|xµ¡Sø[û®{8¸ì4V®ðß•«Oð÷ÑUÿiÒ#þK5.µX¸ {û‘P+3œÖýúÒÍ*Óì Žî´)->¶öµ&Î,b˜V•ә߭*YVˆë°Ào›ÂbUu*å"k®½ú]U<.ˆUÛœ©’Z„8‘°¹Aj‡Ö”KnµÞÒ‹!\*V¬Ïg®u„ÅwˆÿaÞµÓtŒ1J‡õÇî·X=®Îmà¹mǤUcR†áUŠJ{›²Ý0‰%Ê›‘î3Ú„•os¹Hù„)ÖªéQƒ;l# üMÍ¡@{1¤±×ßÉ)÷Ä´x¯zPï.Ñúߏõ²ñ»ÖýÃŒÿÇWFŠÊXŠV_E™ÿ_0¤ `|¶Ä»oʖȉ¡Ëƒé»t ñüàÙ…Ú€|g÷™h/®OéÒ0øzŸBÍ{áÞþóN#üñÕ›_ø~¶?ííkàŽÜ9¨°T×´Rñ ´mŠÆaÜææw^ïü¢Æ,…æÞüÒfÝpûõë½×]àeFî±ß'ƒl¤ºM"ÃjM®ï²c«w—yÝß²‹vŸˆ&miãgøžžgáîÁÜ^и'»ÈP•æ4 Zr8ø6ü{®?; Bs"W”Ÿ…¾aÃZ’‚+ŽgkïÙ6Æ# +ÛøXøÞᨢ)¯RG,P½—zT(3ÁÍœÉhöQ…×b¢x› TæoÄ fö3Ç[Y°·Ÿ²Ÿ¶ŠX¸=C»˜™m5’Ý ÍŽ§c)A¢lº^g˜º@Èa®bYX-Æc©Í)­Ü r,>/¬Ð"ø‹Ë[ÌåYÎNHR”^:éñ V¨ >¬‰ÊòJsùqóÛ'aØYî>úfóeuu‡Ù¤ßʆÇZéÛfg™*-ÛíØJkÏv^oØšÙ°7›&C‡—œ;®º} ÕáàpÐ4ˆ…:téûùKËò1+Å¢½„lE`CŸÏãôÌÓÚq|Ÿ®ã2a°Ùp(÷‘Àv÷{gÇûÖ\ž>#f¿üɼž³»Ô.AEµÀEU4й~”™ªTV XK†ÕQJ”Æ÷sWï’,„E6¯¬?wÀ«ŸË ø®Ìû¦[ä¦A(ë–”p!†ýp×ì§Å‡¤[žƒøæ45ŠY}ZhN^,jrn£»k~}×…ëúà°õîÁÛ÷/x÷ݧf½~7®¿æØ&ÐW"(Z&{éëú*—4–ÎK˜7ïÇÆÒK.°ÒXzØXzÔXzÜXzRWTp&â¹åè@R\í¢±4¨ãòe)qÆE_t»†»ÍhzMâ=Ž/X#â;˜âÔ ÕøË›xš1Ùr’óýR»m#Ù—÷Q7¶òÈ¿úU_BÕù5ï_Wý‡ë«;m¸ÓÔ æ7@·É·v àaVí] Åu÷e·‹Ï¶—aó¸…¸ŸÍN£w2ôÔ»ˆ#XÝ‹z³óíòrÝmñhͱ‡Ù|j/ùŽÔݰr\q²Ê½Í” RAÃ3Aé…éÙuéX¡\”xŒ_ >÷[6<¢8ŸKeƒ‹p ÖÞ)‹º\YüeFQHg4ðÒσËêÚF3 ŽÆÁ¨>èÉŠyò2šÐ“‡æÉ星@=Z•ìþyÉŸmïo½Þyu°³·«!0)«{“E åKQa*Í/É~Efa×!µè›³Ý™æ> 5šUùÊTºs˜Íüi¹V°cüý"ÑÍ4HìçªÍF¬9mœijS–(8¦GÖÛ’ÒRÑR³šÈhÖʇ"ú6’˜Äýt4p¦#ã'„ü&,®lUÜ ø-\½ÏÆè¿ÉæbÆ^•Њ„¯Í]"é$Vb› Û z_’JK“¨@“²aI:gQ¹º‡ª«X`N ÙG’ò­wš˜C«Òm¬ÊöªŸ†.o_ª.ƒmLîLy,63¹Ñ¥‚h6M¡[ÎPcRfÌ&p%±3RyT†Ù a‘8ˆ¯âm¶-O'1'ãúÉFL†ÇUæäpFÄI`„˜˜Éªi‘·‰ÆÈl›Â½c%Xs@4P<öÍ·Gɰ(q¦ÙL×"ÇkÁ²¸™Ë-$˜M…Ë–ET5°ä¥„Žtʰ¦{¨wZr ÉB¼¬}q¹kãaÛÃcðÛ˜s\Q1©Z®Y1¶qΰ΄§Z& 4G˜=J̹‡~23ÕÛà6ü }%#„wÒ·åŠÌ`¼lé“!Þo Êþ°‘\•½’3§©Á˜7ç œp À½|½ìV£‘Ðò%Ó³({ÏzmJ‚ÀÀe£u£EL­ÞºÖBöIseÈ¿5‘ ‚3´ 3ƳãaX£Í~ÇáËþ‹tvr G«š…(C`=žÌ÷ÿé,?zôunÿ®<|ô—ÿÏŸñ!|%| <5±öO•N÷Ñãng%î{¥n­½$©ËFøbítpÛßü¥ÛEFü“ÿs£aá>0ôkäz,)˜§i7l£Ó\Ö†ålç`oë÷bg÷ïÿxµÝ p'JúþkqBê†Öò7þ«í_¶{Ïw^lïwà ߕ¯lžß.˜§™ášÛrëÛoÇÜV•Ìmg¯Ûý/Ñ'ýòÅö­³üÙs{Ò]~\27åP»Ý×Ñ9@åoÉxåSÙÃ/4ç•Öò£Ç¿cÒž\?iÚÛ’gÿWNù›òóùæõÎ'øÿ‹AîãÏ?•ßt—Ê?¿ú„®Å_fF[ß<üú÷L©l“Hвóê“üûÅ6ke>ø%ã~:ÃܬãittÝ4Ѷh.­ G»OÎ÷/vÜ:ŸO ¿-?mÿ/#˜o»+eŒŽ5êûd¿~¡ >i->¡ü¶û° ÝxêËOÞ¯/7ˇ¿g–_Ï;š»EíØöYaô©ôé—c‚:Ÿ;ëÇËÝå‡%³~õ»ÝW“F6½ÀMýTxòÅfûðÑï™mËGsÛ¿È`z¨‡ø”ûýÅ÷åÏÆI0Ó‡Ë󠙣‹|úÅ4òEÐî£ß¹¥X‰fµ=š&Ó$Î>y¿¾Üåryö=JFíAz>˜[ÍX†ÚÎÿawy¥üzMV€ÞýqtñÉûõÅàøñg²0ˇåPâeŽÎ÷/‡“žÜ`†_ZLóoûÜBþòß-ÿ]~òdå É—Ÿü%ÿý3>·Ü¦9·ƒÛïÿÊ£Géÿ”Ïgíÿ-ƒ-/ŒÿõäÑ×ð²ÓyüõÊò㯿~ÔAù?€À_òÿ?ãs/txÉà^€¡~Ô§Ö¯›HuËá‹h2¹bLF_[Ãhò ã­]Ýà1ÕBQŠþ:hQs©8=™Dg·7¥¹ÞÒ˜Æxl8Ó*‹/f<ë4šÙÒ‹Ÿ_õ‘ë±W¢F%è ðõûívvÉüVÜ€Oý8ŽÈ¼Ú‰ŽVE™¼|(·›9:´|T|à k˜]i΢iÿ”W5Ú¸¶ˆ)vŠv»› -žó³àÈVšS“ÆO.y”3³~E‘ÄL¸T ¡8½à`“øêrQD\y=JGñGIM%vÓQÒÛ£\'É»ÔJ¦FsCZs½ž4G…[ª¤Å’R?’,ÆŒ]ÔVïÇÝg/zÈî_-ê–­t\X¦é5Óûªl'dL½}6¶£%(V‡wF‰ÍÏQZâ9F<»* ÃÎÚ.2nË©<7Ûb Ju'Nk÷ØX“›]¿?!4üÎvãÖÁ¸û?a»Ûu‚Ú¸u+‡3þiœéäŸÓ1Y`‰O;¹^Õ[M“n·¶l㫹ºôÜÄEå†Ü2nôr!šà#üу\±eá@VŠ­Èºäz1 ši}žúéî…Ç€(ñî€V¢)Ùøbªšt6™Ó¼¿¥swsö˜;儸ó8¢Ý?•gaí}|‘…_]áëÊ I¤‚fõäqêO’ñ(ÄÛØ$Ħ¤21žvJí+¥\.GVÍÀ&ºfÐÈ®êîb9^á›Ú… gnûe0N0N‰V%5ãQ*ÆÂL¼(©WäX”“ÙÕÛjýeõÓjÓsôÎÆZ‚’Ñt6™¶Š¥e7Ž©—ºMWÝ.ÏÏ!÷Øý+Õ}H)YhöP »Àˆ>ö÷Uq\suøâ ËÂê# E`±ý3ÛmcŽL§aŒ7 Ωå¥GZP²¨JÈ¡th£@Ø-æ*M“b˜ÀÄzñhÚ“b«‹ªáXŠ5É­r6ž á^Ènb ÍÀ)ûÄQšNW‰Æ™X ê„9ŒSþ¿aH’¦‹ü± ®Ÿ•¤—(NÌ´µ›†2fë3}€u#§…tLc1í¢6GœwöÛP«WD¨ÈY€ðˆ àð+‰xJ|p.á5Ÿ{á6‡­ÃÌàÄÎdñÔ`.ÃÖpø§2¯Þ8J&{ÿ™H|˜9#_9L¬!aÞ2‰Œošæ@ðî;aXr¿ƒ¿…ºå‘žNb: ,_Ø]qa”0à^1ŸT1â¢r…³%¡®s<ÅRùâ`9´žN¦¡RŒ’ú†ÜÉ?¹˜†L¸ þv¢ŽÂŸ¢a2àlO]é±âÅáXmŒkj\Úx†±ã—0s ­vŽ,Á£¸qðÖ\¹Qƒñú7U*ÇЉåLuO¬J&M³ãîc(O4YÕP^œ1À†×6T±}jšKÖZd‘qöPùÊ̆÷•ÃÚM5 f˜GrH·y­µs©ZèÒ²RÌ©ê’,ÑŒFGP²È!ï~ßÜ€\˜öSë§u›Î ¬™Yð²ÿ†[Ó²æ`ØÇ×\Ô¶wÙÛŸFÓ¸' µÿŽ& Ý]q¶‚Q4,´KO¹a M/møµ–-†7¯?¼þmÐe.ƒÔ~éN/Üç?4ùóÀæÁ–¹&éhШÑ,¨Ö>‚‡¹æÈy 902‘¡Ë›³áKü9¦%SPÁaÀ˜¸s­ü:–zºª3ù L`‘(+->DÁrö•êI(¨ÈÁ¿6‡ÅL”LKQì¤þÆt5æ²@K×׸ò7ÐÌ ˜—EÅ lÕñBzJŸ]»âî æ°åsϱì¾ÄbïÕýÊ&SÖ< —VóŒÃÜG•͙ܨñ—8ùÕ)¶0‘[Ì‚2PN„¥$®Ûáhé.ñöGɈÂf„¡kʸÏ_MÏBoJwÕ»»c{6 ¯Á}íS ÎjЄ³Ñ^#K·i$Øýaš9sTÖ¸3rÀ>0*,HÌaši2"Þ̳ír{%Î}x>.T%—tªNÞôœ™ k¼y½Ãá߀Ýgg÷Œ"·(ƒ7ï.#áa~ý¹.?åÑ×Ò³Ê aDþQ«:Šo_5ÁÔ|öODBÑÔ¹La,»š–ðýú\@J£aÆSø¸—«b}¹§8áÞry~’K_Ö³"úç^øœ¦SÞÜ7åf˜h e 0mºWJ´î¢¬µã,}ÿ,#‘˜9²Ô,îìy±æ®sÚÙáHîéÜ@ ZØ?O¦ýSq…dzڼm aí …{\Š\8g_˲èÜÀ¥)…L¤±‡š×M[äHN Zzw£-/»IÏÙóâ~—]¦©ÞÔò[ºÉVòÖ^?Ž¿â:bpèhzꄱ»¾šÄ€_´SaŠ^è‘O4M>p¬ÉLñ¥!XX+<ÄÓ£Fm£òìïºoÛï>ž?èÖïÖ5W!éz|ÎåyhFâ`žÿO˜Ý}û+4Ò}wé.5~×”ÒªRÚo:¯ÚE8}ûiãÁ»¶ÔD)‰y{øÉ@¥V?ŽQ€ŽÔ/j¬ä‰€“Ãqî<“êä>%#QÌììуI:´©2?y©dý2W5Ë¢ÂsÉgFt禙¿äWƒÂ K_?¾=õLQ±EKQç ‘›ì!ý„{Eÿ= 98©¼{~š{(S~Y¨}%H3ñ i3XäøT®5øŠùP3çRr|ºZzT®ãœæÍ ÓqI÷|?;>ŤΩð^X…H®’3±úª?^™e!Ý–™ÇA?aCh"Iä—còæçø$P.¤}Û%qz¹ùj@<$ÿÂÂÄ‚lÀ9ÕgñÑì„é”î„€V_oo5?ž ›¨]^é,·àG¾d­ºvœ¦a2X¯œÅ•ãá0 N'ÃÁZ^lTë‚b6‡„¼ŸP+eÃ2b(Ùå>I*/26cÙÅê!WÀH¡WÜ ënÁÁõëâQ–ݯ˜ gÌ03QJàqü™>,›)Ï- ¼q¨ÖÇ}ÃC‘Á`áÒ)<“p"TŠFÁÍ1o½·×«°w'ñ(ž` ‘ð“nãCËŽb©W 3ýt¸=ê§”0!dg¯ùÍ7¿mv¸–0¤{{ΨùïÙè=AJ#ÌOò!g9ŽO€ÞE£ là«øž"ùÁg×FC’Ô«¦'Ìll#ïx´0a1T9š%°*DæÇ˜ س*•«û††Lâ˜)¤!´À‹'ÇÐö?Ñ‚š­ªYÀ’‰˜Ñ ·# ¹4bµQHôìJRf¸ÕÄ+"¹®ÉR ¥‹ã²£¢ 4~$'̳m\^%*gÀÚÅ6Eí¹(r1 '~ÇÖû‰ç€RIk+ÈeÊñ‘2 B"ñ_¤7n“@†‡…K@ ]x±³X¿¡à. ¾ðY—)ÖEjàu‚o ¤šbkª›3Ó&§Þ¤h*ÄÕ%g±ÄÉ=äÄÝލ#dÉ¡(ÙŽ.­µkíýƒ¼ØÞߨP« zøãæî³Û¯ñ±ð¤T^:GvÃdÍæE¨½Îb@$£$;ãTÛîØ µFV4ŠãÇ)‚G ó„dà[k„Ð70; ü°C‰(ª­ oè†2Pâ-. PÔ™O4´£‹œ:ob¼)ŠaEÉ¿È*exoÍ8Oâ©ÄGjðvIFÑG&“|@# Ø´³ÆçO@©A $¾ð@ÔÆÍy¹}ðãÞ³ý‚Ý,©H4Ÿy’ŠEö ¡•á¢:Ã@Eùeo…{¼3¨0ê÷ñÅy:Hd R=´Â×q?=Q²rç”3­ßg=± J.mExb² Í®ÊÇÆÍÍ`€Õ±ŒC1Kä-÷ PW!Ú]¡dœ•ýÙQ&_&q,_÷h ñE@÷l(‡‘·Î*<' ¢ÊIb/1nÔÔ(¢9܃2³…ûÂ]-›(Bý1ÄØS|,1Ã2a ž%åX:ŠåJz7DS@[L¿°÷[¤é™N\¢„ÔvDº{‰7Ãæ’UÆÃ"²Ž1ä8"çj·[m‰¡–”—Àdt>(Þ1°“VŒ‚@ƒãŒº°s’rº'*oì¶[á~ÓB©lð ƒcŠd6H²þ,Sm;­…¿¹- DzŠåàé¤|¥°²ÕߎÒÑų=²SgþpÒu¹ñæt2¸ô‘Ķ£ ƒ³#?è—Æß£HkRõ‰Ó™Áy( QP sø;~lAh—ò1)ÅÆÃ$³Ñø\>WpŠaBC ô˜&(©.#,½¢j„òÍ‘‚…fâ@ÉI&øa2‰³q:8X Ÿzu ?xÍ-zõþ$8|9(E€£Å#„îQ"å4Q#†¢CŒgö5¨’¸pedøÔ ŽD­r8ÍËp98qºBK³8Z(JÌ0!…V6Ü8@'Œ]‚ÄÚ´èDóƒgV¹Ì±þpþ9¦R’@φ±õ”ÐÓŽ¡ö)aÀÀ]äSº`bœn,žò¾Ž¥b+;‹hxC]çF‰†q<-:ŠM•VT»µöæàyó@t[k–¦Ÿø¢ó„Q È7ûÍÍý­¼=š³mIØ2âã8õã3º3‘¥Âxt™Ü8ì"e}ªëÐ{IŽºÜX0£€þöîÖÞ³ÝñSl¶ GæÇ˜‘„vF~‡ˆ¯¦S=rÅ%3GÈ…}œ–ÖHî$Ê ãq˜-Ø/«É»F‘/C€j0áWFÚR£Ãü.Ô?ÂÍ&fì!OÐo‘ajWì*„ •ò°²é/´ý¹K±9ØíùÓÚ¥u[S8NB ’£0¦,–%8T‡*cÄ| A±'¢“xjWÍ^oñY<Âë&Ò¤!]³å”TÕÄ.Í—’H–`ºB ã‚W7t&4ïp¨‚¢>˜0 >>¦;Æqù¸æjŠÑú š˜<¯~)’– · G~,x@ÃÀ¥@íª™¤µ\¾ ™ŸÞ³x˜œ%ȇ.MXÑè=DÖQk.ò”çhäÄ'ˆ†tõQèMÊ?™ íPbg4géùòÀ ˜©f‚vxAó’“Yk’Bp ’3®F4JÛÅ¢p÷¶7aÜ™(x¹ór;$ç†1ÊTps2 Áå¸%Â64µ%¼ŸãŒ\¤Œ£~…D}{´ˆÔ¼aA%gŒrX\×ÊœD“&i`!AKI–Ç œ¤3 ãñìà–“XÍÌðZ¶Ãœ..ÂYgÚø0z$G´.ÿ^€i¾ «ø°‰'Î7ì  “:¼éøaöŽ(63Á³šÐ¦ô…!ÁE#-ÎCä+?_ùá zÔdc¹ÓxE̱‹øÅsb¾‰ODê¯wâû¸gWSV’¯¢Bw¹iRÑ’ú0hff mÒÒõL䙿f=+i.®EZ ͱ¡°táÛF˜{ÐjµÞ½««Œˆ®}¡dŽ /ì¦zŒL<,ËŠ,CTèLü!áe‘ÚCÁL&uÕe 'Ê«›5K'Z.<“aB¦¶ÃaÞÜ®~!;$—˜UÈPÛ˜V€Ï‡ÏnäK4]EªÂ SÆìV~E(ؘíδ*]qsœ0ó Àüg‚,œõø¶"&Bž…!%<‰ãГ2ž ðešÒðY> ‰FÊ”õ' Ÿ.aw\sº¬ÈÌ+|°ÈrïÍë­m„ˆ½W(^„z?m¾x³íl—s¢T3 ªÐ'¶(Þ¹1ápà@ 3 >%‘Vï‘&55¼­-Ìnæ¥A‰ŒÏHÆDàÐtÄ1²­,Í#0óмÂnƒ`œN9®3’Ò  ]ÌTС lìÛ]”ÞÑ`Õ7Éê€ä›$Žœ $’u!^ëž9ø¯Ét!"UM'H'””9þÀŒˆ"3€ï×ȆiÃ:t#TÃ^±ƒ§oqͲgz)bt¡ý H©™)÷à߯ËK¾È°—I”í ëaAG”â¦g°wÉÐÆé…ß ‰ÀÑVc1Xî!ÄP1Ö³FxÞ„' eænÍõ“ ìT ‹L¨1n4Êâ‘l£#Â6Þ¸¸²œx[ñÑwIßycgõJíí‚qo‰°j¤…%ÙábIöî÷ޑ檉±Fœ/Èå‰G´tŒD gz£ˆŒFÏ­ôªÄð™á†XÊG¤ÿè"8‹Þó]¦éêàè-–6¬Y®P‚FSe½EdÉrjŸQl…›š¨AU¶1º´”7È]˜¥VLŽñAÒ'Í¡XOZ‹ì',YvJ Ý gÄ? cdLäɉû3‰Òî1!–72é'ó³™8`&èÓåÌœ nIÛM‘É´Ó!u·=*Áwéሑ a}äê;ÿ”¼ G:i’À§~OÆ›ûYdíÕìÿ\H 1gûܵ^e¦½±©%ÍköÊÀ)è@K`Çúž àX„Fš ¾¿déP´°ÆfôÍëV@ƒ5‰uØr2ŒH£×çãÙÑ0éÓsŽüXqCÁ çúªQQQ‰]RÓΜ%Õ÷e‹zÃ¥Ô¡Í4k›‚Ï^½°dõ‚E«çÍÅ_¦ˆS•,•gÁì®ÑMVÆèr–Ùÿ"—Ì àó–`v ‚ÈCs¢ s§åc¬†a&Ÿ•ª‹QO׌À@ÇrPSÛ’‡Ü,v³ÍéìRà²Qêä¯iœ&eŒ×œ"öÜ~ôá-+Êq‰H6c°¤'Ìá›dÉðÌF·È3fò`¦«…˜Ð/ ÓBrê‰ éĸHX‹[ÀòänAV VgTQ‘eƒåÉ—Ø%”è´à>êÝ“Ê&ÛÛ7ÊÔ¶œö˜Î¦…q5D # Ôwühˆxž%Ä35äòm” Ú'‰Ç€¤²µ×ŒŒŸè.e¬jЂ8Ä‘´v\yð²©ùXâZâ½ïkQÁËù±DÛ>$“t„$5¨N§ãÀ?¶_ãi¿…@ñŠãáÆV0²¨s±ZŠå\Ó•G›‘qOÙⲡRW ÄVä8"߬!Q:ìY Ä2cI¾ ÚÒ&I·Ìá4¦›/î'b•«Jgƒæ±f›?V‹?öãñ´œêøUËH^½þ˜ž£€±è¬inå²î̼h<Ž#å¯/ª…ÁÜcB‚•1Šƒ?XÓ{Šîë9rØfs”Ä~îiñùhÇ’ããkã 3ë}a7ËåÅÐŒÏ;fÀ@ØžÁ‹yÇþ'cˆS–Õ¢l[ÍŸ{2™ôμ4ƈȷ:!”*A[¦7R¨36uø´‰uËk9K 9·ÒcD²køa‰*kLUƒ"‘Ù¸@6v”6¤Ï"ÊG®€04§NÈ.*Ž¢àh¦Æ0¤Wà Q5Ë›ŒðÙ¸¢))‰@)^¹š6ñTÿ¬YµŠS8šA@>“”~Ýá£XÜ/‚ãˆy&=àÆcG½ÚÚÑñˆvñ´Z±uì(H…c„0'è;àÔmÍ' Nt”Ò‡ŽOçHÅD,q@ýXÙZ¥WŽý6ãC}PÉè]qåÃ+žaAðJŒ‹¬e–Êþ¦xob.Ðu¿¡%QÊ{Þ,'V/$Þ `Ô4:i^¯¹€€Ñù+Ÿ¦ZAÚ8‹gƒ´‰ \h¤²\1×9xªÄf¤&ÍËŽ7$k¸ÒS±á(7V8%–S(Á"«'™ £‹Omœâ=^°N¹Îv±VdézTÞ’ÛåÛç€<`¿YWq‹+Ôt(³+¢†}eõ=&í&S‘FÆU0Šì$ƒÐB}²Q ¾±†{Nžù‘:æ¯ÅgD÷ÖÚðm­%6ÖŽ¢É¢ÁÅÌ´ ñÁ eþ 8SÇnໞÀ~…¡ÞKÂpýw ‘·Ðg#|{yÕqpø8–õ&Ï–5å©“ ›$Eñ1Í«òî]ÞA&¥ÌO-NÆF&(D‡VŠ5C*8H+æù»ÿ§»á$M§#V`Ø•»‡Àä&ÃL¶¾‚³¨è"ʨÀ€*"…tr‘ǾZáæñT•ŽdØ`Ù}„Fâ’Ùo3pÏR2bæÑ(àô?,B›ÅâjE5Yr÷À‰ Þ(p=ÚL6BátXwˇ¢à@n½;`é\ø&ÅRKiœ@vÙeóó‘Ü™µUd¼£bõJ·k‘ƒ{£ÎûË©ó^àS†É‹™–<7¸0[]2ß‚É7¯–¹nVžq=cÒL ›Í‚+iëïÉ€ØEJWfíËò¦Wì»"ÛÅ´${œe‚…qš¾s¡ D@žˆFpõaš¾g+WÖ$v„;êyc‹Ò*Ó{B^KÄ# ¹Î7é£ e:¾(ÜPTƒa8]ŠvìryêJJC-8|HÅÏÄhŒ„jY£?â'Æì e©SgÊL·4ñƆ^‹åÎÜÀ!¨ il•[uLÕ‚,l媞4µ}CûŽu—:ðÄd®0'c@NÔR/@OÙø—)oí±m=+_õÂÒ*AÞY –<&®¡£¥?ÆÍt4(Ÿ”Zlý»¦$í;C9 O×­¢ÅaÞÔS¥ú°³!¡–Qˆ vÉ®•ëð´ãÍwÎ%MgS¾Úv6Œ—v,ú'k(¾ÚFÓˆã6}ÈÂQ×>œ8K‰ ¶ÏÒÛ½)ƒUtÅÎëOËz6¸Æ”9~d¢I§ “#Ëa[¾Čછ`)tZûɉœâ mã :'8“›1÷lÉb¨Ÿæ$æœ&¬ærÜtÑÈ=â•„«Ï씈X4g²·¬÷2©W$\ÇŽk¹X·³–š$“¥PÑK â3½„·]Oc"[zÿsÜŒr^¶ÖnÏžÞÔ¯QäSî.ðƒa˜È"qÖfdÎÎbÛ:ÿ¬!Ë)BTD¨C= 0y›)^BãÒ®WŸœw6Ñ7§!EØ‘n¤@¯ø>‡OË2“x>Ò ¦½”jFh%…ùiöINüƒ`¬j FS%aÄ(—r½3Ê4Àø ¹(Ž¥ÑÑQD²lõXíœçm —#òÔÖ+µ$}Çvú…Þ0[¯6wíM}óÍÁ{hïd%Z{¾6Ä_OÏÑ«*œll„甲jB‡NkCh8™‹°RŸ¾õûOG(úŠPT*“þ{Txމ¤“)Ž6HÈM@FC ]ÔVZë «®ò~°f4ÀÙÿÇÞwÀ7]­ý*d#ŠH(m¡+ldV ;mÓ¤Ù³Íh3š¦%vÒ–ÐÒ¡„2çuàBÜQQ¯âÞ{^·Þëº4ÿ³~#iʰ½¾÷ý¿æãÁæ—ßyÎ>ç9ÏyÎ÷‹Q ÍÍc¸X€’ç÷ Cš 3ódf0êÁ¼ò o´,÷’¤|vhq ðàV‹Úˆ±û3w©Ñï;)yáã£Géi1Á9ÿÛÜ9óæüÅÿög|þ`ûöªÓKã¤üo‚œÙsæÌføßæ-€íŸ³`î_üoÆ']ÍfÆ¥ 8çeŒcQKH¢¶É†O@N…ˆ`ÖæÅ>±ãKqÛ²j\¦Äf, xÛê1—¥eš€6|ØE°(¦a>v(*3ר÷™ìž4*>ä:*=§§ŸÅq9(d_/Å$å÷€¤<' Ü}ÒR ÌÝ>‹—špqHÍ ÒzD*Ìãq¹4Pv¢‹]Ói6;n¯~ROX0&x}#® DBâ²³1A4ðít"± 0A$Ú8¯Pœ4¾úAÅÓ»¥õà”1?1ºäÐ '-5[N/>WEà'@û=E÷C®DLýžVi)Ÿ:þ~Êx”Ë |ß¾Ÿ2åZ@·(þ~:qbjíÂO“:Ѥ¢‘ï$NÂ(égHo‰âh¨ 9€ÅTy YLó”ÀˆÁ§*ÖË ˆÆzfňÁœF?¦¦ÒÔñ‘i¸êØðbƒ(' ü °Q¦Ð‰h1û%±Çl±Wö)ÂÐâ7Ì^¦T!V5KÈ?3¥Äó7| ÿ…ïÄS\\TFb·ß¡S÷®šzƒ†·ŽÝTÓI3hdëé4 dršJ“]<+}z²zÃtzuòbú笥ÔV—b]¥be«áóéÙl”qúGg²&;™j9Š~1-vÑŒ¡Ûšîs–Áu,Neè]ËxqZBR€‹.._ï‹xüéÚlô+Ÿ&E€]-ÓŒ’eóûQ$$ð9ß ÍäÇæïãÒ$%«ÁjNs”€/lŠBËPª( ,¢µ gŽâ*¡$ÂºË õ·1ž½pBRÂ.µ™¤m0ô2NSîqû¡JF€#â’C%‰%IòYØÍ8$e¡5IªÓHÚt,œ,®E»–VO—7@ÂDÏ"E1D1ÛÅtå?HpÇýÏÒÛqY|2Ü?“ÝŽPßPBÐä‚…#ß ! u*I Òd¦Þ)#ØM“™DÑÕ! ëgs9/u¥hÕjÒN1}š Y 3+Ò|säÝÞ— â™íQ‚iª•8Š=ÊâÊ@&Ã]ÈC y–`Îh+2gÐõB↺R> €¡ÿHÄ©WY†2Íï±Ó ãHãXÛ6&S½lÄNš× yÖ,å­j/¾ý°<¢ÞFHH¨bàe‚¤†¹O09€Äð{ýæ >bÛÅdDn¯*Z»KK >Ó¨lö¦ô¢~ 'Z4»FÀîõÿb}Àb÷ªây«¥®±ôÅ”Å&bcô±¥`&"Šô>²Ã õß©Ig%i3×Öµ§ ø:ÝÔl|küäéSw¤*u‘w:i“úÖ¢–ïo‰;Þé$t@¿Ó5€X‰žI Aß@ÖÀ%@\м+Ož:ºZ? €= bD‰Ù¡”±F?Eý¦_B¸Ò¿3À ddôW¶TP˜åZ^.¦§èaˆ z@’AM׈ÑW 3@fö̳þ¶8¾:©³ë˜²1%ZN¯o”¨ÐmãŸeæª2Å@…%<;4õZbñ :Ñé%d.×B…+-qº,q\¬IÇfž…IVP5Â=:Þ 2û‚ÞY¤w}àýY³‡]\޵¬¨ýÕ– kb-óÙúj¤Õ%HŽMRÐB½ÊÄRÎ`t£Ä)†Å´¸w’L]Æ!{{úq¯5jº˜ñ4x ÕaÜv´;¬½˜©\é½Sq п³ûNŠT2|5V ù2rÀÇP»„OèÔ¨Û7Z—·dѽétéÙ›Z¦J–¡š_K„ eBÔmâãf$¨ lH¸ï£Þ¨mç"zC_`)ʈ5¡ÏnÈê? L”BIwÔ E(®÷§±z/B¬erЫ&ñã>zr‚œêDc){.fS ò…†bxÂXÜ0:nýåÔ—eDjüt«PÇN>Ô<{Êê=­R¥xó&³ëˆ)µ•rN`_uê4¢¶¥†hf;×xÌ ¸l¬}ÅÊ÷^Ìæ„”˜±”]%¤­{Mgú‰™bboed»i¸Öé·dlzð¸þþð{ììQIºßRSÐx Ròm<Ý^Æ‹ãäQªšÞ­¥‘ŽFòE ë©RV@·˜n€iÈáƒ=±— r½‡þ¸vìOE@—¼¬ÃÆiб“ lV¥—Í…—p¤3#–tƒ@kÉ)‡÷5Ä™¶iRÙP¿¢Òà‘vIPûÌH8e‰Hl¢.zh¡·SŸšì™)³2Jè ʃj¥Ûªý¾Æt:“}ÂÔ‘²‹3j¼ðhÌ+”ýß›FÞÍF‚-j¯‚·¥™7,àâ ù 01ÉÎJj·ŒåЙX3奯÷KJ(Û (–ö¹éaÕ É¸æ:-ui*¯†€Ø™ héð V“ þåÓ´®4-4õÅäö–9ç:U&ÞžÃì²úl¬œr]ò™  Õ€²“ÇÈzî¦sz]¡R`1c6hèçìó0ušÃ®Ö,T*ZSÉêõ6ý*YWz‘ŒcÂi’_$ZHæ(¥ÚC-?”ÇéК½F}ÙÉi½1§õ <ôúü&òi¢ø…ËxÞlõ ðŸÞY¶8Û÷ËðƒÃGž3û-UYÄÊdi/uº6•²AÓ0»Ô±4V9Õz@J.ÍPŒšB‹,ž¹©¬¶`ò’ òb¥ò¢ngÅä'Ž©æƒ¨ð~óâì>ãòSù‰ã¦Âº Ù+.Óš¸ÓÂ}rêŒi°?{‘Ó½%-µ2¥0^ô3ÁÒ¢þ¾8•²¦Â´³ÕÙìs2Z\ÐKD­ž®å/¦bå ½’ “¤*ƒÊV\ÆbciF¡íIÇ Ì[j/Ó‚ ×î83ÓÄÖœ%2PDÓ.ÜÎÇÃ0XP_Éá¸RüV‚u€ˆYµZ&—Š”§³Æc>‰ |MàdƒKï±²‘a€ïíéðØ^ž…^—V2Âc´>kCM×{[È:éÐö—“Lûðw;–ê ¹nFv›ñÈv C;oæòÅôèCGè ¨R+„yÐóeņE‹ì^=ú!ƒ—Ê`~¥²4jœ˜Cðk¾C=¤Ì×Ð_k!¹޳Õ4œ#†M´ŒY|’zþãÇÍ»ÜÄkŒ— ÄzSYƒŒJhf5L*T' ± ÊÔcz1y õªî4,,½„› ± «)ãùn˜µ*_Zöєݯa-…‡D¬fç±â3…G-O¶ô+8ŽER€Ù!¿fæ". -4L{LZÂ3èö¤Õç>¿Œµ³£ßÒÙÂ鎈z+.'Kõ@¹Ïà%ˆxª¬PÙ>y6bÖÛÞ™Aæi:3°.fÚ0Á`œ)u—ÓC­°ÏD(¿ŠØYä–uêPñe€e562:Îí+*{ÎÁ©ÔăÀ NXŸÓ 9=‡Ìñ9üFḬ́ŒT ±èèw†œ:6§EŽéã¸lLZ„˜ú::­ë÷Všòfƒ$SÈG_¼B![ÍMˆÓƒw°7'5rëM@à§bW½WFô¸Ts9yÝêÍåÄ»gõF±\Éã¥Á-¡'+„JØ×à“ÙøÉÆ¼ÂÕ«ð“9ø $'ïÌÅOV®å­\žÌÃOd«%”œùÐÄ€ìÎ^|ÓöJ-$qˆ;ƒ¶ (GŒ¥Ú ñNö>È/ëm'‚r9Ùû¨4¬´…°¯°°ŒA®¯·õÖK¨Ñæ¶O.×+h”“FJ¿]î׃yÜÛø“ê†0s A=`EGôœ^f©—ãíˆôq–ÃXÕ÷úÚÇÒ[¤8,¦âÓ™©5IuÓ†€„ÑQGŠË:=äŸ**èSñÁ£SFC]+.Ç©iÓÄ/›¬Î‰-¨ÅíÝ óÔ&¨‡Oײ•ú·ôÔÆ<Dz»âºo’ v8$OtVaZ%n» ­ ¹!óªA♹t[†x‰óÅä†Ëäz÷Jö,NõÓ¸í!é:xŠêcÉ`ÅÁÂèÌÁƒìqø'ÎĆxñSžûÐ{>ÖÉžñ§ïòµ<µÂÎRÈxb­¡„˜ãlB[2¹^…¯Qâ¸ü3Z×O/I"äŒ>©NpzÉ"g”(¦Ø‰·aA4¶ó${ÖiH'®Êp!qÁ]\jë›â#Ó'Á—JÅã*++‹‹Æ:Næi&*ž•ÉxæÄ pk £â$™¡Ûi¹¥îÅä–G÷?0hVJóÄò<‘"ÉįÉ-f/†¢÷™==Æ©íØL—&7à!ȨÑÑvi6œ= ¹€i:%V 5µ!0° k ×Ó@ø*:¾±éDÒè~4XA´ˆ%ÐjÔ‹V­o>5ˆÌ€Þœ‚O ó‹$¦R£Öb˜TÏœJA&ö2wã ÑY/ä0G°ˆ‰ ÈÖK2(œ-š¦Ó’ G¨tÜ¡½eØ:y,¶N Œr¤™7!ƒ|T™D¬ö}SÖËY ®èÏ¡åýƒäó _7ƒˆGÁ|èE8Ï &7äbL@@˜{MÂq"Êxª„øÜ á ÇÜ•ÔcW A<ìŽ~8Ïä-«‰Ë›ËÆ/†­'ƒ28!«3öà"= &ÆŠƒÙ0{â_¦£QôMDéáÒù‡ÄcðK*«Ô5&ñ{©æÚ°„O¿–'<²âƒ/à&‰S¬‚ô‚bÒ¡˜ Ìå~=dPe@€Dâ’ÆÏ%ì„1üÖ«‘ß=ô8Á쌩>4ýùÒ'})ÂÂÌ9 4œ¤žzóp²ÌÿõœÜÄœ}m0a[÷ÁÁÉ틃“÷G88¹ñâcLDgÈÁÉMÄÁc8]NnbNjp&œÜ¾88y„ƒ“Úö"ጴpž '؉N8 Cfþ#šj×^T•0}Ôì!Hñ r)'ÖÑf¯Öc3¦ÇjBÿÓ”$Ÿ½9é^־Ǹ“¦ÿ¾ÇÑ‘~Ó²ÀŠÌW%“È£[f´4–ŠAu®¾Ü$xrœp0º?>ŒIó]n~/ÊHöA}e¸\)ÞT BšGuÆ…€¶É¢©Ú`¡g‰ÏM±ÉâçÐÛì3¸øw¤âƒ.ÃÂt!lŠöF‚1£s¨ „ H¶Ð%IAí†aG‘QnK,rE/} ŒÍ¥ŒQ†¡Vá2'bPL/@rª5ñFƒNB@yÅö.?a7órYÇ0MÔX{—§hÇ2©7™QBa'ÁØe6«M`kÃþŠáLà È2f? Á›šx9A,”˜ÅÒ…3‡ú>ýûˆ¤ÇÖ¸ln@Yü˜ R‰ç <.À»S Óþ‰ @ULüïiX5b†èJÒS* ­"P~x(±ú Õí&-›ÍÌÅšòlJŸ#ÖzzP¤ñ‡ðô `Üd  =qÓ¡‹‡6DÜØg¡ì ú8”:—d;'÷j“ÇesºÑÇ\`HáÐÓµbš›â†œÉð—;Æ/*Np:ÚÞÓ'£.rðëóE-¢Äƒ†É'2þâY‰´ ÖÙâj() ¤ÄLL~vFEÄMK Sàw@—6à­Žìå’9‡8qRï#Õø( 0ÈY™…ÇÈv¼·âRgG»ËÔ»ø¬fJƒ=® c¸H€‰Äê¹Ô©s\^´;î“`N¢©Ø¸L‰G=$8‘ÁMÏÓ½s ¶Rq)gÄ4"«Ž‘M—«@%U*/ÛŽzx¬¶…Žõìä~ˆ ªö^l#UNo*°MO xØhÑcÈî#»hSôãlÑG0ˆ±–Òöå1¦{M1Õ³=È:ÇX YS(}t†œoa6ÑÕ‡¯[y@_1€xÎ3­EnL-òÖblYû:ΠOÉ ÝŸÂs{>îD6á¤H7£QO³döqhŠ*ƒ^—Qã>l€÷’?2ƒÁ‹Õ;–CM:ž¨CjæôØÃxžÕhÑWwÞ#ƒr\ÆÓäƒf`¿×L;Ì£vlËnn\ÀûìÈÖÚ» ú(2\v-ŸNG%(Éi0—»Òí‚¥vAC€›âÄó1…ÍËîyÈùŒø«¿8yÅ8•9Èø¤ؘÈÒŒñ‚CÝ×E®DѱÄKâ²s®÷”ýweâ Ÿ*ßløÛØy#ŠÌ–d––êÅ#CÚÆ %0·ý ajㄞV|x"”¦®.¸d…l5Ä|I(#†p"Åž±ÏÕ•K$"_EB‰JÑáÅE¡™û²Òe¢ü8¥½\ÃØG2ëÐD„B€b4gTKHT€&lÇ‚©Û]`ªrº¡:•‡G`¬ÿ Kôbw Ú`ŽÖ0½•U0íx–×8¼ÛØjeÈ蜰âCEAã,rc®‹0¹ó°$“ÜÄÙöµœÒX¡7;du¥óËÖ¦¡ ê¬ “ BG€k3ô;§æ·Ó+ —)‰¥OgÜ8~ʧQBêñBüß¹z+´ øÈf7>9b´S[²É@V88¹'ÚæPÓ8ŒÈGðQ,µË «%Ë·WÕØb滓ômfÓ¯¿QŽXXûßV48NÉ‹,ÃêÍ.µ·`C³†4¶®YÍämå)dâ[Zv0qŨÛTÇbúÒŒ¨‘Yeö¸!5(ñ»Æšä™§_ǧcz°@˜3¸>:.Ñ¥½5ZZY¥WpÊ#˜-˜ÛÛ9‘AèJË®Z]z ú?²Å•uÄÍ:~AÆöï'7DhS\ò-`û—‚©Ö[F¼ñ8“}8ca":ÓôaÊr&}™átŽá% 4xã4|D/ŒNsãN³HsↄiÓ¬Øø¨út.¶Ž²pÍèsbÚCÔl"Š yÂÕ²tö‚A©a0Yè–·&¢ÃvJRÅgL \V å.ååôj¦Øýÿ{ùýÇìZqŠH{€'Û´õ£ ¸#F}¢ûÒä« åÐxåºRúÿ”'0Ulôšá‰£[CÇ) 4¦hæ¤t…+ÈÕ›L¨B =“>³…]…f†Ý yé'̾÷‚oPaÏ05ÁLÒ%ÄÕ’&)¤+W“Jü…e’õ1˜{™˜©U=`s;Á–cý²³­F”[ãáÅA;\/Ë—L§äà5á¥Ñ„æÆ ž—œÆáójDq‚ÎMRcú4´TÀk uúÐ’v¼Ž©"\^ˆ±¡]%Z©•É¥yµ ¾PºìE‡ºñê¥\›™«±‰KI nK /nƒ2âFâöyã!nX÷.7«Râ. ô±ßc«µñL:]„hEVoVÅ^«p±ê_p*`•,¶Hܾ‹tZ­j÷jÉÞÐlJ[!—“¼ E¼ "áÚÕR^Hº^8bC;Täs2KËS ÂgË<¶9ÇÂþÆÕKì¯ô…©øÙ™Xÿ1†3òŠŠ»R‰o°¡‰Ÿ ¤™ì`ƒ¸¹zôØ¡&H'™Î‚®?±[\´dÄš<< Õ-Z )ÎB&sc{#BbÄk®yô+#Ö>Ëe C.êñDô9'++en;aÊÂJ0\HÉä—?FÓtØA‘´>ìƒ7½Ð]™˜U=9ÿcÎþè-ðYÓ±w-ºÐÌ…Ïì.gú¼‘d¸)Dzw \rÁ<‰ØÙ‘’€Ñòè©“ 7ƒEÞ[oê½>ŠÖž¾ìAg›}ZJ@C¨ pá@n=Ø}Ò—c=ì×Ý-ì-vÑïг׺Ÿè]ÌÅÌ:L‰Æþ4È‹ÌåV½Ç6ú ‚ÀP5ú¢DÝRðšÙ7^Ñ%¦û<îR¨­$&"Ëdzs©—ìªX"€€ÝÚÄ]ƒÌp~—ß =U²ÒÙwqmv«¾ ‚:h¯E;¾‰v¸•A߆;˜GtŒ’b_!'·|]xñ‘ж½Ì v”;º>L™*í>Ö1%„˜Ý72åƒëR”ȈEÍÑý(ìáã¥íxR@}Rb…â6°±ç¯ð=R=˜­?‰ìFœ“Œn'(&åΩõFÊ"sj-¾»¥gôÆ Ò¨#eÇïs;õV ºtº@‡ò‘x\²*ÐÙѳí-¸@iäh›è‚(“è„"ö>L|CŽÚ‰#s1ÊœÕø[¹pGûb°–ˆ q&!*ÜÉä!8Â3’HÁÅ¥ãrêë& Á¦ÏägpûN íQ&Õ+Öæ)f~¥€ Ï$Ç ¿`°ChçŽk7/³Aø†g&7Æ‚ž@2Œ  ÆÇiHO‹ïx”"ŒbÃÅÑÃMK]QvfÂf¥¦÷:¢eº(ÖÓP>3Ã;ENÒ'ì¤Þ°; ]VD1˜÷U •ŒÏµÀÃKš»Ém9¨ºûxp%ñq¡-‰ÓƉzceÝ7ÑãÌÅÎð¢EX#x¸/f°{) ½’Àa⤳$ÁÍ‹ ñD—ð=Ü%üüJbï¸:"_G¨bnc)RñiÜ(4S¢7vƒGï "§jŒ½ÁÈ1Zr[=ψÕÏÉñ;YfˆÊ¥Þÿ`¶ˆäÕÞ—ZPº4T›\î³ÙD²ˆ°ê™äÜéwæŠUØ,¨9xÇÙÌ(h³º}>¢«âݽ¿‰moB¸bõF¶I„êè ^E«ð »Æù±SÇrÔ[,_$¶M”íÀ6 1?ñhw½˜uÝ5R—nô„q]/pÑÎVe´½‡Rc<}Ž p=çä=.ªK8)4ê2>QÜ‘ÿ#sHÍN%îØ= öC5 v%5V1ãŽVSF!ÖÀ<ÃîLnWÇßé" ¹ˆß–X>KÍeôÖ,…–ŠXP¸Ô´ƒÞã°Ç`îP÷(ŒöÍ.ô5ŠoÕ#ZÜ‘/\ÞñF”w¿Áž ø]È(Âj\.&ðHR¯B§ox-^¬>#g| Mc¸²P–D˜Kæ (X„¼ƒ@zÝÈz µj¬ŠcSn\ |n.K]uP½–Ë iôÙJ”Ý6f­PÈ׉¤`m3wW ±dÍü¶<¾e¹=ÖÜ\^Àc‰›O•$!Ä/ÞJ·» ´ˆdDË]ÐS=8Á4"—Ù¾ ¼[‹'+ꬻկçqé­4•DÚì¬JÐ/ië5w~4fLðR@|ý<&(ÐbÖ£ ,°ÑïãrþúœÆTaÀîÊ­èÈ‹M6ùo¦èM™È'=s6ÚÂdƒY6O²Ù ÄôÍœ¬2Ç)ÒÈÉÉ™;w.þÁüy1ÿ‡Ÿ99sçð‚yóä,˜;[0——3{Þì 8¼œ?£üÐB²â6zOúÞ©~ÇeáÑÿÿ_ò™Æ‹kK.$I[é. zÀöÕÇK3¦ófñ‡>xcòž8Û‰’=Yfiv ÔŽzˆI\YáAGÑÃþbƒ*3‰ëi\ø„‘Hb»jIDÉÌ5»*´`øWÓ¦x ¡\N"¯“ËAl)ÜÔy}i©kWËSiÆBo&åyÈ{P@:¡ _È̵{µÈªIge6ªš¢&Ëâá8`¶÷ù½˜;‹ÇGéÖ§Xv†žWìè2ÈìâmÚ´”§B‰‹aü+!Òp‰ÐÏÈ/‡æeŒ”Ù"ûØÅÜÐ <Á€î=Ò©‹´¬‘ÎF§ÓEÄ„ ²™žÞGŠD0AþŸ^¢þúü?Lÿ“ù‚söé¦õ½yóúÔÿ¾$,È™'È™?ö| ÿÍ™7w6‡7ï?Ypêó\ÿëOû¯2üÖ¬2ç©Ò8…þ/XÚ]0Î@ŸuErð‡ÈDBÁ–2aþû±Hž´ÂWÒþ«|æ]Ü^ + ÍãndF˜†ß$ûnd?€¿ G`‹Ÿ†_ÉÌUÁŸŠÓGÊ m\ˆyv<¸¦!ö8Šâ;†7Ž•Aw 9*r.){L ™™iTß5g2;Ì>sâBÇÿ†%¦ Ñx9ó–Œé\E‰ÄÔ h`ôdcPè6™Si6-4/ýCk,!°7Ç…+'©^j¾#ªfLÈbÐÀ¼v§Ý¡÷PgñrdƯB‚#<ÀĘ›ÐUÔÆrÁ.,Á±î5Ä_ $±¨»Ô}ÔÿÈó yʰ¤‚EÃèüE‹ø4LÛK†Ê45CCs,}=V56,C}‚ÀE½1.'ì!G—`)(¿./sIä䥂‡Ò.·+è„pëØY„‚–†Ñcn¢¡9³ÌÏ|”³-¨g‚$Åt¾Õ«y+6ÈD\î†%‰:+l¯Ü3Õ„þo~ú£ÿav‹SN¡ÿÍŸ7¯—þ7gî_úߟò!úÝ”`À²â´?r0ˆç[» ^Ç3šÜîä]'…%>øßr8aäJ§7&¢’?¹.‰—饼Tú](¥4@õ‚—Ňùjã*²CJÆ øn~3bi¤ØÏÑé ”ÎÓÎ#Zã \ë\ÄÝ0ÏT²¨0Z¨-A/óÉ[)ZšRóÀ@+¥«hï.òä"Éiˆùv)?îŸ&æ%1rS3§F ë‰GU”œè¿¬³AR%T.ص—KÚ›+íƒcÔJ9ío5Nƒ¸*øŒš¾ÈW¤‚Q'*ÌN/k;˽›„œ¨ôŠEî&ËF2rù§S­ àÿ±J=¹27X²èŸâÍCgÖ&§e2JP»Lõ-£„ hËN¯ÅygX‡0ÛŸN£2ýŒêãd ÿ‡§\wg87jc6аÍY{#|&mº6M³Ûgæatr€ÚwÇ•‰RÇ×ÒõLÑÚâ©,ñ<:ã ^•x™d©û q21»™ßà=•Ù›t<²Æâˆ‹™:¡—0]ÐՇޡƒB cèF‘‹…‰Íìƒ$©KÄÞø'sp?d¼…„’Y{Š^ÒÙ×}KGˆ lù¡“ìq;Óp7̈Ƣ‚XøŠ=À"õNÝ£¡±` ï ¢Š¢™qtÚ…ˆ‹Ós¸Ý¥øŠøð²ðˆ)’9 }™‹ ;†$ÌxŠlåâ ¤‡PéŒî²`¯ë^Þ !Ö@ì[±è‘+pÊ*¹H®éØ=<×Ǻ› ß‹e ¢üZ¹,¤$s0ÕCSÏAxs«ÈÈñ× !ÀÑ]7xŸºO®$jîãrW&¦õ`nƒfÅE”Ž…š Ȳ.ÈSÜuf °A°ãn#ÁUoѧk¹ ÁÇ`SëcêʦöÞ@K…Ï Hã¦0Ûx‘™dä%(bòŸ*‘ÏÊŠA¶Œ”`dzD°[:É”´£ßL®8ÛÁãŸÎÔ›Ì&/¦¼‰)i¼Ti×6SlçÈ£Û‡hð+º¥ˆ`0ˆ o6ÁîŸãaU%þsYªo‡´'Ï•£3SaAÕ¤† ÕÑÿ”~ ö«i-Ž^ÊácPüDš!øIËŠB.¶ÇGèCÕ[ õ3ˆ×ľ3ŠRõfàûxÔ'l#·SܸÄFNAp Áx5‘ŧ@S Æ€ð³öP§yÛ¬ðò?+nVùE¥sIÒ òI_Ã+,öNõx`æ¦ñµ|ˆ+{ùcÁ ³sÇ%¹ëíaÀ뿇Á_ŸÿæOÖxÌ2ëÿÜÙ³qëÿÜÝÿùs>dý'M‰ÖÿÙôú?GÀ‹ÿ¼¹gâü%-æNùé¿ÝáÓæ¹´è/í³!ø_æ;x!íú?p(á\–§ÆÿžýóÎ Î1~¼Lž úf¤æ¤&vÌ8]‡ŒÚ ã¿ß÷F@½ŠûSœ,· ÆÃ´Pf/=‹Ô`åôNZzn „#Å£‡²oˆ‚7Åí¨‰Öèà{\ у|(Ñý|´`€)ìš¶$R×É1èQ¥ ñ€×ì7¹3 :,?‡ñ¸`ÃÚ)KO`))ÜZ6!A5Án4²6màËø¼%‚_ƒQ¸i s{íG3¤cφþœÇ qa¹˜oƒnrcÅÆ`—€Rf²+ÈÛ†„Bå‰56A2y76Ua(Nô#ˆ ²+ç"Øe!ËvîØ£xvÓR¾žŸ»Îìp¸yKÌÎ\d']’ þZ’ ßÈ]bÐ{r×¹¦àPÒlð>0¹—dC)\.u™rÙ54]óxÞü´´ß D’Ì੪Ál óÿ´›àxeÏr2x|\~Ø÷9É«ð1*¿¸8#6—J ¥wLzÑäæÓÏ‹¹0`‚{ˆcJ›jù Û@„´›Cƒ¿,-χ¥àSM·|!>—†¦ÌgpÀ´²x+,”³W0NØ)ˆ%H…ÇJvUEû ÄœÞí¯kûÿ#Ÿ?¦ÿS0ÞlƒÝ:˜œ,“êÿÁ‚¹9³ãíóÌÿKÿÿ3>=ÿøíùKòÖžÞU;åŠä¯A ! „³@ÂPÎaÃA€CùF€0„sAÂhÆ€0„q ŒaA8„I œÂ LáB¦€pSAà „i L!„ ¤‚B:3A˜B™ dï,Ân%a6s@˜ ,ÿ|€°„‹AXÂb–€°„\–°„ \ÂJV°„5 ¬ay \ Âz6€°!"Ä H@‚ A‚„| @(„5 B*Ô ƒ A ‚=à¸3`Á‚vJ@(ÂsÀMº 7e ”ƒàöihËñƒPB„J‚ TP Â&B \BMô¿ãÓó_þÛów&åèõ¹öÌŸž(+)ñÌgù£œ>¤ôþdkè4È÷åšÔoµƒ^û£2˜² .èY’&€ŒWú/ã¬+ú/cˆ¬ÿ2†Ž/ö_ÆÙý—1LÔÃÏÏõ_·µÿ2ÎYß#N{›pO÷_ÆÈ–þË8wmÿeŒ:2Žô_ÆèÆþ˳²ÿ2Ƈú/c\mÿeŒ_62zú/cÂÃý—1qSÿeœ·xdüÖ“îᅩó+û/ã‚ ã_ý—1ùî~ËxøÂÓ>WîCÆÔåNô¿,S¾ë¿Œ‹nᅩ©®þËàe€Œ¯ú/#yÿeðKú/cZúÈø¼ÿ2¦ßÐ)–þ˘‘22>Ôkû/#ÍÐéÉ ãýþ˘¹¯ÿ2fiú/#cÊÈx»ÿ22w÷_FVQÿedŸ?2^ᅩœ§Š{j‚üþ˘=ad¼Üs.ᅩ¹Òþ˘7fd¼ÐóÛû/c°ÿ2ŽÏö_ÆÅ[û/cÑ¥ý—±xøÈxªÿ2–4÷_ÆÒ5ý—‘;dde ý—±ü’~ˈ¬ôÇeSÁ Î`Nç,ÎÎPÎÙœaœá.çÎÎHιœQœÑœ1œ±œqœñœ œ‰œó8“8çs.àLæ\ș¹ˆ3•Ãã$søœiœéœÎ Nj4ÊIã¤sfrfq28™œ,N6'‡#àÌæÌáÌåÌãÌç,à,ä\ÌYÄYÌYÂYÊÉå,ã,ç¬à\ÂYÉYÅYÍYÃYËYÇÉã\ÊYÏÙÀÙÈrD1G‘rd9GÁÉçp s8Ñ9ƒrGÏåñ£“£D§FõäðfðRzÄQS”so¼GÑ“ßSUóÆõxã{æDOôÌíE‡E‡÷Ìë™UE‹{ô,ÌŸ3¡çâžE9£sÆô,îY’ÃÍ9§giOnΰœá=Ëz–çŒÈÙ³¢ç’œssFõ¬ìYÕ£ì)ŠÀ§GÕ£î)îÑð&ñÎç]È›’3%ç"Þ<ÞìhRth”Ë[̹!')åXÊßS¦Ü™òüŒ¡3†¤My2åꔫRNyhöµÉCx¹ÑÑe Ty=—ölìö¬ïÙУíÑõè£çDGr^ãüÌ9À¿ zaô¢è¾…oåëøñ¥|}¡ÇØcê1÷XøKøéü™üëù<þTþ£sŽÏy‘?‹ŸÅŸÇŸ;cùŒKf¬˜1<¹3ùòäŽä®äHòŽäÉÝüþ4ê‰è¨è’èYœësÆr®á\å%'%ï±÷”ô”ÎyeΞ9WÎÙ;çù9WÏÙ6§}ÎaÎ¥D%ÑHŠ%z‰Qñ™ï‹Mϧԥԧ4¤4¦lNiJiNiIiOÙ–Ò–Òš²5%œ²%eIÊÜ”Œ”é)¦\‘ÂIœ²=eDÊè”ñ)“RœQû)®”²wŠ8E“R’¢Où0壔OR>N)Oñ¤x£££c¢c£ã¢ã£¢£çE'EÏOÖ%ë“ ÉÆdS²9Ù’lM¶%Ûs’sø9Ór¦ç¤äÌÈIÍIËIž­u“åG§E§GS¢3¢©Ñ´hztftV4#šÍŠfGs¢‚èìèœèÜè¼èüè‚èÂèÅÑEÑÑK¢+£«¢«£k¢k£ë¢yÑK£ë£¢£Â¨(*ŽJ¢Ò¨,**¢ùÑ‚haT-JêLêJº<銤íI‘¤IÝI;“v%íNÚ“teÒÞ¤}IW%]tmÒuI×'ý-醤“nJ:tgÒÁ¤»’îNº'éÞ¤û’îOz éÁ¤‡’Nz$éѤǒ%=‘t8éHÒ“IG“žJzZ0D0Tp¶`˜`¸€+8G0B0Rp®`Ô@Ô¾`´`Œ`¬`œ`¼`‚`¢à<Á$Áù‚ “ ¦.Lðɾ`š`º E0C*H¤~cðÓƒŸ|tð1!G¨& W ‹…MÂVá’e³¤Tò¾”#$Ý-› [!SËžž#&ä g J>®®j…á6áÕ’åÒ$éo²•²§eL-ü‡r‚2UéU‰U•Lõ‹z”š¯^¨./~§ø“âï‹(þ S¦G{Žvœaã@”_8F8Z8R˜)Ì^,\¯¾XØ"ìnv ¯^#<$|Lø„ðIáQásÂg„Ç„‡%+%+$V‰Sâ’8$;$ÿ’•ž-&ý]ÚºÄDÙŲu²µ²Õ2¬QvLöŒì¹Â¯”éÊYÊ™ÊL•\=F=]½Hí.þIS­‰jÇk'hŸ0 3Ì7¬7ÍÙæfóóuæûÍŸX¾³³¦•òJ ¥ÁÒc¥/—¾åå˜[Vê™é™ïYìYëQzTž[¼[…ç ' 'Ç '  7 EB¡ðáë—…¯_¾&üHø±ð á»’Õ’U’-’°äɯ’ß$¿H¹Ò«¤ûdCdCeçɦß“]*Ë“ée:™[æ’=(ûVö±ìGÙW²od_È>—ý[ö‹ìŸ²È>•})ûAö½ì;Ù'²¯e¿ç¿•ÿ¦râ@Ô¾2K)Pú”*…ªA½¤øóâÏŠ?Õ Ö$i¼šMÚAÚIÚó´G \ƒÌ 7H óõæO­YÖ ëLë,kf©±ô9ÇÇhÇBÇ ÇrG®çvo£w‹ïmß§þIþ©þ4º?Ç/ðÏöÏño­UÜVñhÅ7·~ . >Rå«:&¼H8U(Ê„váNáu¿ ¯|¸è|W4A4R4Z4F4Jøƒð_Âß…ß ž #É“¬•¬‘¬“Ø$å’6ÉÒó¤c¤c¥çJ'J¯• “%Ëx²2Y¹|¸|”|„œ+-$?G~–|Œ|¤|˜Yž.¿T~±|±|¡O>_Γ/‘/— ä³äSåù_æ—ÿqþ? .-,/™§`m° ·@\ *X\ø­2Wy¥²Ky£r¯òZåNeDÙ¦¼Ny¹2¬¼^U¬R«ŠT*U«j«ª]¡^®^¡^¦ÎUw¨;ÕW¨[‹ÿ¡¡i×4kšŸµgi§jMZƒ6  j_×>«}Mûœö{í?´¿h¿4Œ5Œ14v"†ZC…a‹Ái6.3 ^C—Ámè6¸ Û —: Mæ‹Í‹Í Íß[~²j­B«È*¶J¬jk¾Ucͳ®±ê¬2kA©¹ôïŽKÇNG£Å±Å±Ù±ÛQâ¨rt8Ê­›#âèr„ ã2‡ÏÑä¨p´9®pt;êË*Ê6•…Ê*=Oç9ìyÜñgøgùøVÔW|ø(x(øXðѪŠM¿×(j#µ—×^YÛ]»»vWíõîú®¨ýú­õm[¶n9æ´.h]Óªh½²ÍÔVÖvpÛþmÏ´ïn¿£ýñö'Û´.þ £³ãšŽ›;þÖqmg^ç“ÏFfG²"‚ÈÌH†p†0_ènîîîÞ"r‹®µ‰¼¢‘C´[´UÔ$j•‰ü¢‘]T-Šˆ.µ‹:EU¹D*QHì’€¤BR)yXrBºXºPº@ºHš#͒Η®>"}P&•Ée2™Df‘d•² ìUÙ˲×ä^¹_‘WÊ·ËkåÕò€¼QÞ%o’o’wÈËåòVù.¹An“o•‡äÛò+h(”Ø ô–SÁ&å…Ê<åZå:å*¥\ùˆòAåËÊû•·)_T>©|Aùœò˜ò%å3ÊÛ••Ç•GTZ•IeTíPíRu«ö¨vªv«/P¯S¯ˆÚW¯Qß«¾Z}Ÿú&õ~õõAÍ$Íš‰š šÉš1šJÍ.ÍÍÍvMDó/í mª6][«­ÓÖh7ißѾ¯=¡ý§6ª¥¯ËÖÍÓMÔÍÔMÐ%ëRuéºYºÉ†‰† †e†\ÃrCáió†Ã†G î77¼eØoxÉð²á˜á)Ƈ ^0¼a8jxÎp·áMÃÃë†W ¯ž4ÜbxÞœk¾Áüù7ËxË8ËËPË`˹Že”e‚…k9Û:ÒzŽÕiÝjÝn-·î±z­k³õJë«ÛZf­±n±^fí°ú­»¬—[7YK¬žÒi¥–Rkicœc²ã#ÇçŽÏ:>qt<ìxÄñãCÇ~Ç+Ž—÷9;îwrÜæxÍqÄñ½ãQǃŽo9žqÜâøÖñ¶ãUÇûQûeÛ˶•u•…Ëvz2<™ž…žu«ÇîyÌó¼ç Ïkž¼7yoôîóî÷^ï_ê¿Ò¿Ó¿«¢±âñŠ*~ |8Ì .®>|ªªª*XõÛ¦žyMkÍÖÚ!µÔ^_{MíÚ«k÷×ÞT{Wí͵·×}R×S?²þ`ý•õ;ëo­¸~_ýýõêo©¿¾þöúû꯭¿£þ‘ú{›„MåÒ)-¶mÇÚŸo¹ýÅŽ»;îë8ÐqOçÑη¶×F.Œ,,‹,ެŠ\¹?òùépŸðVám¢Dw‹n=*z_ô¢èï¢wDOˆî½.zOôŒè5Ñm¢D‡E‹Þ=/zWt¯¤@Ò%é”\%JWJ/•n”n®—®••>-}BzH6RV «–í’½%¿Eþ˜üFùóò§å÷Éÿ&?(?*\þ°üfù¡¨}ùaùSòÛåûåäÊo’ß l#ê ¶\UpmÁ5ÏÜVp¹R¡”(EJ¡R¬|[ùº2ªüHùyQ’òå—Ê7•Ÿ Rþ®²«®UýMuêÕõêAj¡Z¤Þ¨^¯~C}¼øgÍMŠfª&¤¹Jó7ÍoÚaÚL­Yۢݬ k·j›µ­Ú-º±º):ž.Ew®.M·QW¦³é º5º•:‡®TW¢3VÞ6N47üÛðµqáà ãÙ†ï ?¾5|eè1üdcl^f^mÞo~Øü¡%Å’iáYR-Ù–©–4‹À2Ýò³5j}Éú½õeë Ö¯¬÷Xo·þÓú…õ[ëaë‹Ö»¬oZ?±Þgý»õ]ëÖ;¬oX?´¾c=^ZRÚPÚTzwéñÒ×SO;ÏqÎvÎt®p¦8G8΋œç Dí;;—:só“ÿt^ìLu.t¦;³œóœç:g•í/{ ì`Ù-e·—ÝZv_Ùme×yr<‘ÈçùÂó¾çï½Þg¼zïô>ç}Ì{Ð?Ó/òoð ýëýûý×ù¯÷_ã¿¶¢²¢©¢¹¢¥â©Š'+ž¨8TñkÅ/ás*z*þ8;ðvåàÊñ•#*G×ó‚ë‚kƒ÷¾<·½>"ެlˆlÜaØaßqlÇ×;~ìÔ}c÷[ÝïíŒìÜ),O}+ž!Ný"NO/O_ +#úM̧‰¾'‹ÏŸ/ž$úQô8S§ÝÙê ;ƒÎÍN³óвgÊ^/û¸ì²§Êþî¹ØôüÛó«ç„çÏÏÞ&ï×¾áÞo¼ï{¿ô¾ë—û‹ýj‘_éÄÄÔ§ÿ ÿaÿCþûýûï«ØZqGÅ3ÏU<HL ði/*s*S+VN©œ[¹` j¿2¥2³’W9µrvPuAm0?¨  ‚EÁƒ? ¾ü4øEðõªÆª–ª7ª‡VÙ´%”:/tNˆâ…ø¡ñ¡Ñ¡ ¡ B†F†ÎM®YT£­¹¢æH͡ڡµ“j'Ôž_{^íÒÚeµß× ®ý®nHí×µ?Õ ­ý¥öǺaµ'긵ÿ®ý¶î뺯ê9õ£ëgÖϪO«Ï¨°aVƒ´AÞpiÃÂqC^ü†¹ ¢†Ù 7Ìo8¯ayƒ !­ae“¼)ÜtsÓåM×5ÝÔÔÚtmÓž–²–@K]K}K¨%ž>7<"êü´ì×òáåܲeßz–zBž:ï…ÞÉÞ‰ÞqÞó½Í¾!>®/É7ÔÛãé{ß÷¯¨}ßÏþ ý|¿ÙoñüeþvÿËþWüwûŸñ?W±­âåŠãorKó ‹*K+WV ƒæ -è þ^ÕUµ½šWV=¹:£zFõùÕUgmêÚ´cÓöКÐÊPy(+tqhIhy('4'´*”º$4;$¨YZ³·fWͳ5Ïׯ½°öÒÚ5uÙuë¦ÕͪK¯Ë©›^?¸~^ý‚úùõ7lkØÛÐÝPÙpMC¤áá†ý ] á†Ë¶4\Õh¨nØÔÐÔpC“B[Òt´é±¦{š7ÝÝôdÓ±¦M·7=Ý"kÙÛÒÒ²¿¥«%ÒÒÖ²uËå[ÚÃ3ÃSÂÓÂ)aA83<5<9ÌoÍk-j½©õ–Öý­7¶ÞÜzC›µÍÒöHÛÛÞÚö^Çù#;.è8¯cZÇÔŽ)£;&t\ÔÁëÕÁï˜Ø1¹cü@Ô~Çç_wœè,è|¾óŸŸv~ÔùYç×_lß)‰ø#ÞHe¤,â‹TDGä±È—‘/ªÞ¯z¯{pwÒî¢=Ÿìõï­Ù{ýÞÅ׈ÛÄ›Å;ÅâZqDÜ-ÞeåH¾—z¤>©_j—¾+}Gú–¬Hv½¢ZQ«¸A±IV\©èVÔ+ö(nV\¡hVlU4(*nSìSä*îTìR<¨¸Eq@q™b‹b¿bgÁÈÂì™…s §æ “ §ò -üM©+ í*ª)ê*Ú]tƒÊ«*WW=«zIõ‚š«>G-(ÞP,.ž[¼¶ø„fµf©f¹f¥æ2Í3šCšÇ5‡µK´NíMÚ›µ7ê^Ô} »Swî}ý…úiºßôtßé~×ý¤·é¾×Ÿ«û—~¸ž£k˜jÈ3^kl5þÝø˜ñ ãÓÆ'Ï Dí?2¾`üÀøªñkã7Æ ãOÆ/o™¤Æ7¿š5f‹Ù`6š;ÍæÛ-.K™Åg©°¸-–*Ëe–€¥ÇµNµN±ýf{Åö¾íuÛkö!¶÷lÿ´}cûÌö«í¸íÛG¶c¶çì#ícíçÚž¶½iwÙ~/Í-]Tº´´»4RúPé·Ž,G¶#ÕíZè’»’]³]V×¥.ž+Å5Í5Ù¥rº¦»ò].W¦k†ËíšëÚèZäÊp­tMq庎¹¶¸Îw ]F×*—ÇewiËÏ/¿ |FyNyrùürWù…ž žFO­w¾7Å;×›î[ä›é›ããûR|ó|ó}s}پɾ¾4І¿Ô_âÿÐÿ–ÿ#ÿþ×ýïú߯¨®ØT©¸¼â®Š·¢ÀוŕŽJwÕȪaUçT ©âTuDíWí¨ŠT}RõQu^u~õšjqµ´Z^½±z}µ¨Z²iߦëCš8d )B³B®'¤YB†PYÈ«h¬y¹æ•Úsj¥µ›ëuòºõu’:aÝÅukêrë6ÔÉê|õcë/lø¢1©á—Æ‘ ï7i<§áP÷ ß7üÔXÐÈmø®qDó '~hx¦qaã¹g5¼ÝxvÃË ï5©šÞkz£é릗›Þjú¸é…¦w[ Zµ<Þr`KÖHxqXV„5á%áayX‡×„熅ç‡ó[õ­õ­··>Ôz°õáÖC­¶>ÖzWë½­÷´>Úz_[¸ms[]Ûómï´k{³íŶgÛÞj{rÛïÛ~Ùöïö=Yó: ;fwÌïÜñÏÎá=ÆNsçß»ÆwMèšÖ5¼ë¢®‘]£»Îî³ýŠííÛ·nïˆÚß~ùö®íÛ"áȶÈÖH(²9Òi‹x"‘C‘#‘Ñ'#G#ßF~Øñl÷î¡Ýú?ëþ²ûÛî/ºèþzçm;oÝûÄÞçö¾(¬ß*¾[|§ø øˆøñ-â{ÅŠo•ÖHÒô=é§Ò¥J?’e+ÞS|®xIñ©âyÅÛŠ£Š)>V|«xSñâˆâIÅ'Ч ÆŒ+ÔJ ‹ å…¥… …— ¥…ë•Ö¢CEO=[ôHÑÃE,z¼èÎb{±[³AÔ<­yJ;V«ÔÞ¢½M~”~~ªîGýdݯúAúaz¡~ƒ~•~£>W?WŸª©ª_`H6ðMãL¹¦‹L3M™¦¥¦ Ó(Ó…¦ñ¦‘¦ù¦‰¦óLCÍó>ó––-–fK‹%bi´t[Ú¬Iö+ìr®m/²ì:»Üî·çØëí—ÚmöR»Æ.³íMöb»Ñ®*][ê)}¬ôÑÒ—JO¸®qÝîzÉuëqW‡ëJ×Q××õ®n×C®\û]/º"®=®Ã®—]7»npÝU.,W–ÛËMåyåÖru¹£ÜR¾¡Ü\®)_Sn+Ï÷,òH½ ¼«½Ë¼¹>·¯È§ði}ß ß2ŸÒ§ò©ýþÊ Žÿ»ŠAþüßûóGý?ù¬x·â½€*P°4c ( 8ê€9` ßTn«¼£rGewekå–ÊM••—WÖ«‚5ÁºÆŒàÃUV]PÅ«_5µê¢ª}UWUª«ÖU»ª­›l:¸éîÐå¡`¨3Tj©j\5öš’OÍM57Ö\W›_[XÛTÛXW^WVWYg®sÕyëJ¢öë‚uUu–ú!õkëKþFKcic^££QÕ¸¤q^£¾ÑØhot6®iÒ4©›´M¿6kÖ|v3§©§é÷æÁÍIÍC›¹-Ê–÷Z^ny£åí–×[Þiù å™–WZŽoÙ³å£piØö†-a{¸,ÜÞ6†¯ —‡7‡aCØv„ƒáêpnØÖjh ·ni}¦õhëS­‡[ïl}¢õñÖ#m´½×öyÛ·m?¶ýÖöeÛÇmŸn»³=©}ø¶žvnû¾ö;;Öw\Ú!븤CÞ±¤CÑ!îXÛ!êvlìtäv¬èÛy^§£³¤ÓÞùtׂ®‚®…]K»–wåv©ºÖw™º$]s»òº6v­îº¸kYWÑöîHwäŠÈöÈs‘c‘§#ÏD~Žüù5ò¯ù;|;*ºGwé×ÍíÛ=¢ûßÝ? DíwŸèîÙypçwíú`Ï{ë÷»oÜ>žø3ñ7âOÄ¯Š¿¿)~Eüwñ‹âïÅÏ‹¿$?J¤õ2ìVEO>'rþyŠùãó‡æÏ™®âçü‰ùSó‡åVü«`RÁÄBáe… …—† ƒ…› C…'”)J¾rº²Di/ú èÓ¢/Š^+zµèõ¢T~Õ»ªÏT¨>Q}ªú\õ¡êcÕ{ê‘jCqcq³F¥1jš\ó’æU-W»F[¦½_¿V¿L¿^ÐôF½V_¤/Ôû 3MͦB“Üt©Ò¤5U™$&«i®Éiª6{ÌW›_3¿j¹Ær£åJûûöíöCöÛì/ÙÙwÛïµ?hßo¿Ëþ‚ý9û­ögí³?a¿¶4¯tƒcŽ{Ž{¼«Ç=Îõ“;Ýëæ¹3ܣ܃Ýü¨}WÔõ­{¨[à^èžížæžàžåÎv·¸gº¾rrýàzÖõsùå;ËCåáòÆò.O®§Ëñ®òŠ}&ŸÑWâ+ó9ýgù;+R+FVœS1¼b\Å¡@M@_y¨r_å •+oª¼6¸-Øl«ÊªTÝ\uSÕ×UßV_]½½zkµ¿zGõ•ÕWT·WßWÝ\ݸéþMoz$ô`èŽÐžÐáGBW…ž ݺ3t ô@èšÐ£¡»C÷…n  ÝRSVó~Í5ïÕjj‹j›ëÄuµuíu-uẚºúºÏê~«?»~|ýEõëŸn|´ñÉÆÃ;÷6ÞÙ¸§ñXã}5¾ÔØÑøPã‹Ï4/k¾°yq3¿9¥ynó¤fEó‚æô–· nù©å×–_ZN´|¾å‚–oà ·†÷†¯ ·…¯_¾n j?|søúðáîpgxWø†Ö’Ö¶ÖÖÖ—Z_l=ÞVÚ¶³m{Û¿ÛÇ·mŸÐ>®ýÚ]Ga‡ºÃØ¡ìÐt:Š;TçwN꼨ÓßYÙèôuUvÕvmîêîŠtUw]Þµ§ëÆ®M]Û¯Þ~ãö›¶_»ýúí×EvFöDvGžßÁÙ±iÇæÿê>¯{R÷íÝv&í²sÄÎá;íº}×»>ݽb÷%{~Úó¯=?î}hßâ}—JÎ’pÄ¿‹ÿ)þU2X2L2\2Dò¶´YÚ"Ý"m“†¥ßÉîÌÏÊ_œqþìüeùsóÓóeùÂü‚|_þüüìüœÂÚÂ}…{ î)¼­ð¦Â¿)ªáE¿«Î)ú§j„j˜êÕWª/TÿP›Ôæâ+‹¯Ð4Z^ó¡æMÍ{šw4iÞ×®Ó–kïÕÞ­¯Ð[õ.}±^¡¯ˆÚ×oÒ—éKõ—éoÐwè÷ë·éoÑïÒ_§¿B›!Ëd7¹MAÓ^Ó¦S‡éÓõ¦ËMÛM7™ºL·™n5í7í2ÝbÚiºÆtÐì7Ì•–Û,û-wY”L+™jÿ¼dPÉE%çÛO”$—Œ+áÚ,\2ÄþuɘRq©°ôºÒ#¥Oº—¹7¹Ý·Å-w7¹n•»ÒírosW¹ËÜ&÷w¡ë·Û­skË÷•ßR~ üFO¾g·Wè-ðÙ}[} ¾Ë|µþš ^EzÅÔŠé3*’+ø»*¨ø8°-Ðh t¶V«T}Uõ³›ž ½ú)ômè÷Ð롯Bï„>}z3ônè‹ÐÞСB¿Öøk5·Dí×|Q;£nwÝžº+뮪ÛU×½ù¼ÍK7_ÐøÍæŒÍ™›Çm³yÚæäÍã¿ÚœÒÝ<´¹¾Ù×\Ѭk¶4W6Ûš•ÍÍše-ª–â-£·œ½eì–q[&lᆠ o ÿ¾3ütøñð£á;¯†Ÿ ß¾?üVë†Va«£õýÖw[?mý¸õ«Ö¯[?lý¨õíÖ/[?hs¶ík»vÛ¬m£·MÙÆß6j[ú¶©Û’·]´íö)í“Û§¶§·ÏhŸÙ~aûEí)öW‡­ÃÙèÌéÌìLít6wnéÜÚÙÐu¤ëÁ®{»¾ìº¥ëã®C]»ê:Þu´ë»®;·ßºýÀ޳v ÝqöŽá;t;ÚvlÝÑÞÜ=«ûÂîƒ;¹;Çí»sÒÎwv¾°ó½oí|qç+;ï|c×½»¾ÙõíîÔÝ«w¯ÚØí¾rè•âö¯LÚ{ÓÞGö>_xã>©d¬d’d¼d´d‚¤Vr³äi§ôréùÊüÒü`¾=ß”_™_’oË7ç—ç»óù†üŠÂC…-<¢t©¦¨æª*Uß©ÏÕ^ª¿Sß©¿IÖ?§¿GÿˆþýS†ÓÓ!Ó1Óƒ¦‡Loš›Žš7=gzÔtÜô²é³Ïò¤åiËý–Ö£–ûJ––,,YT¢,)-),¹¸dU‰¡D_²¾dmɼmɺReiÀ1Äý¸û€ûj÷îë܇Ü7¸ºsßï¾Çý7÷Uî»Ê)ºü…òãåO•¿R~ùóåo”¿]þDùa¯Í·Çw­¯Û·Ï·×÷¡„dÅÜŠ…‹*>«ø$pU`o`_àúÊÏ+߬üªò³àߪ6V «þ+÷ØWÛ…¸˜Ú¶Sk·©m73Iƶm{Ïk'Ã̤nŸÚ¶mÛ¶Ý÷ýù ç‡ûXë>ÖuÍ0Î3Î5î4Ý0730=6Ý2=0½0=5_1_µÖ¯ }k3k]kkkgk'k=kS›Á¶ÑöÞöÁöÖÞDZÉñŸc…ã—³®ï$€s@8 äƒp*8”€B ¹ J(-‚B^†¯Ÿo¨¯§¯¿¯›o¥o™ÿ©ÿ§ÿ•ÿC šÿ¶ÿ™ÿ­ÿo z †ÿ›ÿÿ“ÿ«ÿwP”áàçð´ðð°ð”ðèððÈØÈàȨHadEdYTUGõQeÔ5ƆÅâpWxDü;\†»ÇÃýaÜn ÷‚»Á­àAp»ò]‰å‰‰•‰+ÉÆÉfÉÖÉFÉÉ&IR’œä&S) 5*5652505:Unšî“îœîî–nŸ~“~˜þÙžÙù•y“í“åZåzäzåúäšç:ä¯ç/W†*+Šûw)îV<´ä 6Œµc£X U…>6‚¿‚¿„¿€?KHýH$#y$™OÙMÙIÙCÙNÑæÑö0N02Ž1ž2N1‡2‡±Ï²O²¯³ï³ß³Ÿ²_³?°²ßpœ÷÷ªÐ.,º…‹„Â[ÂÅB«0)Œ ˆÈ¢µ¢›âº²ë²²{²û²[²Ç²W²w2»ìµìì…ìŠì­ì½â™âžâ­â©â‰ââµâ³â¾r¸r†J®RªÿS¯W/S¯ÐÎÐNÑÎÓ¾ÔmÒ­Ô­×­Ö-׭ѽÓÓÿÔÖ¿3T7,7¬4âŒûÌuÌLMßÌ M÷Í÷Í·ÍwÍÍ÷Ì7Ìw¬ƒ¬¬3¬#­C­S­ý­ã­C¬Ó­“­Ã¬£­³¬Ã­­ƒmÓlŸl¿í »Ò.·Ëì*ÇQÇ!ÇNÇAÇ~Ç>ÇÇ Ç^Çsg=§\Yú ´‚` ,×YW€~Ú]€6A¡£Ð*h´:òõðMóò÷­4´ ´ tÔt t Mƒ“ƒƒªàÏàŸàïà÷à¯ÐŠðìðÜð¬ðœÈ´È„È”ÈôÈĨ-j‰º£Ž¨3jŽ-Žåcð|Ø ÷5ð˜Ï…ÛÂVX “`9L„Ñå'ËO•Ÿ.?^~4±!±=q5Ù1Ù9¹ y)5#µ5=xü<žO€ëÁàpôz }„îû<¾¾Ï>ÑþAT¨V˜f…¹av˜Æ„÷GfGæG¡¨+ê­Š­Ž‡Ë`?œ€Á›àµðjx=œ‚3p²ürùÕòóåW·7·w“ÉÅÉeÉ5É©ù)dj^ª(UšÚ™žž˜Ÿ”^šiœ9­™­Ef‹²ó³'³'²²Ç³ûsÅ9JŽž¿_Ùªr@q!v)þ.þþ!éKe”úšñ‘ññ•ñ…SÓ„{Ÿ{GøDxGxSxIÞAÞEÞGÞ^ÞIÞJÞVY[ÙH‰W.Ré«B_eTïQŸT?Ò@–¦eèŽÚ6EFy‚y¢y”y¼y¤y’Ud•X VUh­*ÛVÛÛvÇuðx| ^ƒOÀoÐ/o-o#èô×G÷Ñ|X509@à³Ä@Q˜ „ê†ê‡Íae kÃâ°1¬Ž #E‘5Q4Û[ ?€/À÷àCðqø6|¾ ?„ÏÀ×áÇð5øyùíĿģd¿dï$#y;ù+EMáS¤ÔîôôôìLëL»l£ìóì³ìÕì­œ/ÇÈ)sœ8Ï'óp~sÉwì ì6ìVìfìnücÒ$ÒT’…ô•r‚ññ“Ó–Ó’ÓŽû”×[øZ>Aȇ*›ªLêsZ¦–cèeèg`èo™ïwÀjjŽ…á#6«lZYqYIr|rBòPò@J”Æd0™ù™‹Ùö³+†TL¨›»”»V9¬R\)¬,Þ¦\eVãôàôçôã¾5Uß4ž4³Í,3Ç [Ö2ÇCÏ(ÏDï€?FÊXeô2v’Ÿ’¥Éb†”Áe.e.g.T +pØÜ“|eþ3öþg€œªUh•ºk6”Íëáíeà@_€¯ˆ–ˆVˆêˆÖˆ6ˆ¶ˆvˆöˆˆŽˆˆDOD/DoDD_D?DÄÄ@Ä Ä`€‚Š(D C G#F F"F!F#Æ Æ"Æ!Æ#& &"&!&#¦ ¦"¦!¦#f f"f!f#æ æ"æ!æ#ŠÈz£€YÀ*`p ¸¼~ @] )Ðè ô†c©À\`)šRD.þRÚ¾ÔYT§¨aÑÌ¢öÚφd)MUÔ¤*j\4¨.:Xt¢èxqªäw©¸t®+¡&a¹)åçh“è´¸¥rbÑ¢qEÏ‹n½(zPt§èfIÃÒŽ¥ópÝq=mƒI’›Üœ<–¬&«¨ªê¤`Öc¢Ä­ªB^z<‰žŒîƒ.@ÏľÅ>Ã>ÁMÆMÇÍÃÍÆÍÅ•j&–R„„$!LXDˆ"„å„…¤0)NîCîG‘#d/9@ö‘ãd?ÙC†Éå”ûÔúÔÆÔÕG R½Ô­­MOÓÒ.Ò.ÐÎÓÞОÓÞÒ>ÑÐÓÑ~ÒÞѾÑ~Ñ«Ñ>3Ç0]Ì 3ÌŒ0˘SÁ41L9ÓÁô2uL SÉTsFrÞs>s>q>r¾ð¦ófò< oo›Ï#òæŠÎ‹Û‰Û‹õbžX$v‹âˆX!–‰âŒX"†Äåâ 1W¬sÄ&qX®–•,å>åå!åQååNåU¹*©‚Ueª¸fŒf´¦LS®uÆÛ‡ÙËíi{Ô·W8£ÎˆtþØpÂU¡ïô;]NwP9Ù­Œ.Œ.æ£Ë£ @¢Obpb`Q!2…4#A¤iGBH-Rô!ÝHr2‰"3HÒÔ#£È d2Œ#Èr¤)-Îï.Þ[2¼dhIaÉŒ’!%»Kë—6(W/-CChÚŽ¡h/Z„6¢­hZŒV£¹èZ†f éèš…æ¡ÙØoØ8N‰“àD8NŽÓâì8 ΄SáÔ8&޳¦¶vÎÎ6N¶v®6ööŽ6Ž‘˜$ &•“§‘g’×’—·×‘WW“+É‹ÉkÈ‹È+ÉËÉ9òRòVòzò2jjKj;ZZwZZ MsÒ¬4 í.í } ½½}(½AUèÓ‡ÑëÓÛÐ éíééèÝéèMéƒè-èÍè éõè™-™ã™k˜›™˜{™+™[™'™k™›˜ë˜»˜ÿ1×3·sÆsVpvqëq~sÜæÜºœ_ÜšÜÜFÜZœ?Üfܦܯ¼ú<'æ…yqž–gâ¥xž›§æ…xAž‘WÉ‹ñÒ<ÏÂsðô<¯LÔSdYEwÅİøµø•ø­ø†x«ø²xø™x›ø¼ø x§øø¨øø£ø¢øŽx³Ø/Ήíâ»âý@|F|L¼^üC|NüB|Aþÿ‘FÊa¹Gî–Çä ¹Sž‘»”BåUå)åuå åmåEåeåMåiåÕÕBÕÕ2Õ"ÕÕjUN}Gý\3Q3I3AÔ¤´ë´Ÿ´´ïµ_tßu¿u?t¿t?«B_÷Í0Å0ÑpĨ7šŒ¿Ìóûp{ľ־ؾݾžÆÙÕ¹À¹ß¹Ê™q¦œYççrçZçng޹ӹٹ¹ÐùŸó s‰ós«s‘Gî‘y$i¹9¹9¹¹¹ÝÝ]Ý]ŸŸ—“˜Š<ƒ<‚¼„܈<<…<€¼Œ¼¼Ü…Ü„¼…<†¼ŠÜ‰ÜÜ|]2­dvÉþ’ƒ¥ãKÍ¥ÉÒDiº4…Þ‰^ˆ^ƒ^Š>‡>äj„Þ†^‹¾ŠÞŠ>‚>Š^€–£w£¡÷¢•è»èõ¸-¸<®·Ä%q9\W†Ká"¸4n).ƒ+Ç&4"”îÞ«>î~þ~¾>¾n^>¾îþ>ÞVç‘Ï“¯“O“¯‘O‘oU…>ù.ù&ùùù$ù*ùù2ùù8ù(ù,ùù;åµµ;µµ+µ€ºžº„ºˆš¥.¦.¥Õ¡ ¢aiúHúh:š®¤SéÓé¥ô™ôÙt}}} F/ O£ãé\º”9…9•yŽÕˆÕ€ù…Õ˜U“ùŠùƒÕ„Õùù•UÕ‚Õ’ù“ÕŠù‹ùž3™3•³’³;‚Û;”;œÛ‘Û‹Û[ÈíÏÃíÄÆÍÄkÂkÊ;ÀûÈ;ÎÛÉ»ÍÛÅûλÎÛÏÛÆ;Â{Å{Ì»ÇÛÂ;ÃÛÄûÆûÊ{Ë{Ä;ÈÛÁ;Ë{Æ{ÏÛÈûÍ;Ê{Ã;Í[Ë{Ê»ÅûÉ;Á;É;Ä{É;%ê#rŠÜ¢­¢«¢ë¢ûâ®ân’>’a’’.’q’‰’æ’úâ›’B BÒN2FÒ^ÒLRMÒI2¥*ô%Õ%m%#%5%M$“$u$]%$u%Ý%õ$MåÛä•ò½ò òõò…òÍò-òÿ”“•³•s”b¥\©RJ•'••Ï•¯”÷”/•O•T ê´ê ê¸êˆj‡j«j‹j³ê•jŸê˜j¯êê¨j»ê”úµú­ff¦f–f¹f¥Ö =¬«««©Cèjéêk¿iiêžéžëkë›é›ëké›ê›èëëékê[æææ¦¦®ÎήÎíF«ñ‚©š©ºÙhÖ› f›ÙnvXjZêZªÛð¶˜-dÛk¯coloboii¿n?f¿o¿`?n?h?o?bd¿a¿m?i¿b?a?g¿fj?ãøçìæ,sÞpþuþpÕq>wUs^qq¾r^u~v¾v>p~t~q5tþr~u¾w¾¬ }çcç}çOç'çΣö˜=*ïdo‘—çz¾K~„¿NHyyy¹ýÝݽ=Ý===»»”@'‰âDibN¢ÕU UÕÕ : ¿ ?£ Q#Q_‘ßPmPQ]Q½QÃQƒQCP‹‰ÅeÅpñÉâÃÅGŠŸ-a”KJJ¨%´L ³äLiãÒ<¦ú!¦ ¦9úúú1¦=ú©‹~…i†©…þ€©þ…þ†þ޾iŒ©‰i€«Ž«;Š»‚»ˆÛ‰;ŠÛƒÛÛŽÛŠÛ‡;†;Û;@hL˜ClGlMHDlElBlC¬OìL,$‰IËIkH«É5ÉX2šüšüü–üüRüƒÚ—Ú‡º‚º–º’ºšVHh<:…N¤óªBŸ>™¾ˆî¥Ûéqºƒž£»èåô,=I‡èô0³só#«) ËÀšÆšÎÁšÊzÌ͚˚ÃÇêËšÌÆÂ³Ð,k k&«Ed³F±p¬I¬Yœ9œœ£œCœÃœƒÜ9\w&·˜×œ×‚ß…ßž?›?”_ÈËŸËGò[ó‡ð;ò‡óûóòó‹øÓøÃøøÍù-ù½ø}øƒøóùcø=ù]EDƒEECDÃD»Sä======÷”%, [¢•4’0$q ^”H$2IL’¼“Ø$ U“Ð%I‰\b–Ð$NIJ2X—$V‰]â–´–¸$&‰E¢‘Då·å—ääwä§l£åå×äåwå÷å—ågäGäGåÇä7ågå”S”Uò¿©Ô)µªjÊŸÊÏʿʯÊOÊ_ªêªKªª'ª«ªÝªgªGªªÛª‹ª[ªËª;ª›ªkªëªçê»ê{êÏê/šn’†¦Y¯9 Ù¥9¬Ù¯Ù§ÙªÙ©õkOè:é:èšêZèšëzèšéZéÚéÚëºëzë{èè»ë‡ëëûèéûë»éûê õýôC hÉ€4 ¥†C±á•áµá¾á­áá¥á¶á®áŽÑcôAcÀ4úñº©© ajaªejbªkªojlªgjnv›cf¿9höšCfÐÒÙÒÉÒÌÒØÒÖÒÚÒÂÒÅÒÜÒÄÒÐF¶1lTÝF±‘l [ÜvÈvжßÞÚ>Á>ÚþÓþÑþÃþÅQÝþËQÍYÝ9ØÙÓUèèšæjç*võta]]“]½\]UrËãšâ*rupõsÕusÍwµv¸ººFº»úºfº¦»æ¹J]]\s]½]³<¥žÏ"Ï OÂòÄ´%´-´5|!|)ò7ò%Z#ò/ò+ŠˆüŽ|^ÞÞˆÞŒ>ŠÞ‹>‰^ÞŠ^‹ÞŽ>Ž¡bE1dìJìaìf‚œ %v§eîeÙPr”Å@QQtT)j.Š‚R¢f¡æ£&£H¨9(&ªj:І D(Ššš„’¢T(ª¸ø|‰¨DR".‘–\-¹T:°´£Áh1ã0ó1(Ì0L?L1†‰Ž0%˜*É©cb†b8˜"ÌhÌ,Ì@ÌXÌ$Ì\\}\Ü/|KÜCÜWÜmÜg|5ÜÜ|]Üw|Ü'Ü9|Ü[Ü#ÜGÜÜkÜ|cÜo|SÜ3|u|CÜÜ Ü{|#<‚@&Ò‰x"†È#R‰£ˆÃ‰"ŠH#rˆbb)‘Mħ)Äâ4"‰8‹&N Î'Ž&Î#ʉâLb1KœB$“”$)éi?™@éLi@éDiOéJiHéCiDéEéIiB(Í)=(](ƒ¨¨Ã¨¨›©;¨©›h#h£hYZ‚VI÷Ó£t}/}=}'ýý2ýý1ýýý8}ý}ý$}ýý }?k(‹Ãò³œ, k+ÏZÃʱ’¬U¬0KÆ‚XQ–”µŽ¥aU°$¬µ,3k k,«²*ôYzÈr°b¬KÎ)åœár¸ .‰Kà’¹L^[¾ñ£ü ¾„/å¯å¯`ù2þbþjþ| _ÍßÈðuü8ßÌñ•ü•|;_Á·ò³ü?À_À÷ñ—ðõ|?Æòý|‹h„¨P4R4JED!QX÷“ì—¬’l–l’ª%«%/$%Û$_%—¥Õ$Ç%÷%÷$W%{%O$·%w$·$Ÿ%'%{$o$ï%;%W$%ç$'$ç%%—$$×$g$$»ä?äßmäŸ åïù'ESùoù?EmE E5ùwùWEE Ec¥UiRš•6U'UUU3U[U}U]å?UUg•WõUõ]õEPWWýQ×QWSýTýVýS7T7P}V×Õ°5,ÍYÍE͹ªÐלҜÖ\М×F´>í%ÝhÝ`Ý@ÝÝPÝ0]¡n¼®§n¬n¸~–¾D?[?_?G?OßK?]2° <ƒÀ 4° "ðËðÓðÝðÕðÍ1–£¦á¦™¦a¦ž&ÀÔÝT`*4µ5õ3u2 1õ7 4 6 52µ7õ0—™Sæ„y±e¸e¼e”e„eŒeºe€¥¯e²e¦e‚e¢eŽe¬¥e+·UØr¶¬í¤í”íŒí¼í‚í˜íœí„½‹½³½ƒ}¦}ª}–£­£§££ƒc £‹c€£³£›£•£·£“£»³™s”³Ð9Æ9Ì9Ô©vE]‹]+\!—Ñ¥r-q©]—ÃUîJ»4®2×.‹Ëå ºr®¬k¥+಺–ºÖ¹¼®¤k½ËæZæ‚\k]ZWÆCð`=û<ÛªBßsÐsÀsijӳÞsܳóɳÝsڳٳ˳Ûsȳdz×[âõy˽+¼‹¼+½oÌ»Ð[éMy—{ÓÞ¬7é]â]í zaoØçô]õÝð]ñþÞþþÎÁÑÁ±Ar´—†,!SÈÚ:ÚÚ:¾¾¾¾¾¾~-ˆ6ˆ6‹vŒ6Œv‹¾‹¾Œ¾~Ž~Œ~Š^޾о޾ˆacø1VÃÄ^Ç>Ç>Ä>žÇÇ~Ä^Æ^žŞÇÞ–Ë=åÞ„9!IˆŠ„,±/)L!ROÒITUŽ*CåQÔb” D…Q9UŠ£œ(¨˜V|¹´yi³Ò%¥Ë11Ì ÌRÌŒ;³c¼˜f ÆYŒ‰c–`,˜ fƆ)Ç,Ä„q ñ}ñU’ÕÅ·ÃwÆ÷Æ÷À÷Á}ÁÏÂ÷ÄwÄwÀâ'âGàáGãGáâàÇÄuÄ2b%ÑH\DÌõÄeD3q)q5±œ¸–8’è&ú‰I¢‹ þG4-Ä ±‚!ÂÄé%é éé2éé$é,¹! Œ¤L¥ˆ(“)s))Ã)Å”" †RHC)¡Œ§ ¡(S(£)³)£(ã(C)#(“(Ó©Ó¨“ixÚ2ÚRÚ*ú úúiúCúYúaFKúGF}FkF-úF úwúoú_úFMF[F'FSú?‚Ñ€9‡UÆÚÀZÏ:ËzÂzÎzÇ:Äα>±N²î³¾²®°>²¾°¬{¬½¬;¬Û¬Ã¬ë¬K¬ƒ¬c¬Ó¬S¬ã¬÷¬k¬œ¡GÈasÈ>‡Ã rrœŠ1ŠʹJ¢Ò«ô)=JPP5W5Pªîª!ªBUoÕPÕ@U/UÕpUCõ õ5 î¯®’N6u{u7õ@õuº‡º“º¯º«z¨ú—f°F¦kžinjhžjîhîik®i˵qíMÝ ÝLÝ4Ý|ÝtÝ]‘n®nžî®îµž®gë9z²^¢Wè…z©^®èùzªžiPT¥An¬a¬o¬ilhDÓÆ§ÆÇ¦9¦±¦i¦Y¦y¦"Ó$Þ4ݼȜ7¯0/´à-2 ËRjÁZx¡i‘XÈ‘¥Ä‚¶,Åš¥È6Á6ÑÆ±qm‹l l m×ìÅv¤eÿk¿ì˜ê˜ã(q 3ãócOoßß?œç8çxçD§Æ5ÖuÎõÃÝõßõÜÝÜõÌõØõÛõÕÝÔuÔuÜõÊõȵÏ]ÝuÇõÄuÝõÏõÀuÊuÖuÕõÅuÂ]ÏÝÄu×ÝÌ]ÛuÐõ©*ô]W\?]Ç\\/Ý-\‡\¯]o]‡]¿\×\Ý\·\=×==O=—<<7=/=w<¯<·=¯=/<×<Ï=¼³¼X/Æ»Ó{ͻûݻ߻׻ջۻͻǻÑWÝ{ÂWîKù’¾;¾›¾[þ"ÿ|ÿh?Á?ÉóãýÓüÓý%þYþbÿÿÞ+Þ$Þ0^-Þ<ö/ö'^;Žˆ÷Ž×ˆwŒÄÛÅÛÄkÅ[—›ÊCåÁòhJXÞªÐOø®„=q0q)NÊ“ÒTÔ©WOó?Š\E¨=¨}¨£¨µ¨Ã¨“¨Í¨ã¨ƒ¨õ¨¨¨ ¨S¨¨­¨íÅ×JŒ%úS‰ss sss ss³ssó³sœÃ\Á<Ä\ÅÇ|ÄœÁÜÀĵėâùx6‰ŸŸ—á1ø"<OÀsð$üx< ¯Àÿ&#&ž"î$n'n n!®'î#'î"%n#î'ž$n&n%ž!î FIWI×I7È]È……E™CáP”1…JáSx&å=I-¢Î¡Î§Î¥¡ž¦¥ž¢£M¢­£­¡cÌfÌaôgLgŒ` e bÌ` f }“˜]c|ffOfëëë»)»9»»+» *ôÙ…ì©ì.ìVì¶ìÑì‘ìîìì†ì^l€Ý‡=™=œ=˜]ŸÝž=‰Ý“ݛ݀õŒÝ=ˆÝݘ#ãÄ9—¸n[Îr\?7Í-ãêy]\M0JP$` ‚‰‚é¡`´`Š' Œ‚Y‚Ù‚á± P0^Àá¿èÃÁ$L0M à“jÁ<ÁXÁ\ÁHY€ † Jƒ&Á8Ñ ÑtÑTÑÑ,ÑdQög#Ñ/ÑoÑÑ7ÑwiVzUz\‘î—VJai™ttƒt‡ô¨ô¢tô€4/=!Ý&]/=#]&='Ý(Ý+=$½-½.MKãÒ°4$]"](Ý'Ý$=/=)MJ×J+f*ЊKAWLVPL…R¡W Å^1U1W!WÐ(EiUè+¦)æ+ˆJ¤2¤ *cʨ2¬§š¢«£š¤š£š­ž¦ž£ž«.Q«qêIj¤¥.ROQÏPÏW£ÕÔÿÔÕ44NàÒ¼Ó6ÑÖÔ|ÓüÕüÖüÐ|×6ÕüÒ|Õ¼Ñ|ÑüѦµ[´wtMGוè°:¢N ãéÐ:‚N¢»¯‡ô}™>¢wëËõ Þ£_¨wé ú´Þ®OèM³Ái° ÆfƶÆvÆæÆ6ÆVÆîÆÆƦÆÅÆEƼñ•‰kb›$&µI`Rš8&•Ia’›&½Ikb™7š7›×Y¼Ån YlÐb´„-&‹Ëb¶-e·Åb‰Û$6‘gãÛĶe¶¥¶å¶[¶Ûön¶ƒîÐ9ȃä`:”¼nªCëà9dU¡ï˜æ`8;9g;§9'9§8§»?¸'º±n­ÛàŽ¸CnŽ»Ø=ÉíqóÜ€{¾Ûâ&º nµ[妀uÜT÷H÷÷0·Ñ=Õ­wuOw÷uÝpÏuvOqtÓÜr÷hw‘{ž»Ä-sq‡ÝcÝ3Ý#Ü…n¾Ûêžæî僚Ñn©5€žoPCÏOÏUÏh¾ç;ÔªU÷|…Aµ¼W½§¼g¼g½w½·¼7½§½ç} /ë»ç{â{ì{à»ï{è»í{ê×ú=~›ŸáŸè×ù~·_ãwù~µßœœäÙAnÐtÁàé?$ÅBÁP8 …Bp¨, ÅCïC÷C¯CBoCçC/BBCÏBC¯BŸ#µÃÿ"Õ#Õ"µ"u"u#5" ¢%щU¡kkkkkkkk“ÆdñYñ’8çÆ ãœ85ωψKââ82Nóâ²øˆ8#.‰£ã¬8*®ŒÅKãóâØøÐòÊòŠò|y6OÀ‰X"™8›ø™ø“øžø’T%uI}R™j’j”jœZúšú‘^—Þ˜^ŸÞ’Y“Y•%U¼¬xSñ,oÏÿA=E]F]C=G}BÝB½DÝA=F]B½F½G½C=BÝ/¾^b/q”¼(yU ”®ÆöƶÂ6Ä6ÇüÆ6ÁvÄVǶÀÖÀüÄvÂ"0ÿ0?ð>¼ŧð¼oëñ¼ácø0^‹wâ½x¾ Áÿ%ˆˆ·‰o‰OˆWˆ/‰7‰oˆ¯ˆŸˆ‰÷‰·ˆ¯‰w‰wˆ7ˆÏ‰÷H:R•ô’‘Y'ÅN±P<#ÅAÑQüÅK±RÌ”Å@±QñTµ”zzzz–z›z…zƒz‘z™66•&£me `ôaLfP †ŠQÂ(e(b†¡f F‰ÁaŒe –Ù—Ù›ÙŸÝŸ=ŸMbSØj¶–­d«Ø¶†Íe/c±l*›ÌžË.eÓÙ(¶=‘-f‹Ø6‡­ã¨8 ¸ ¹ ¸•¼Z<¯»`ƒ`«à„`ଠ!X/X-Ø-ˆ Ò‚°`¹ $øO°W°N°OpX°G°DpY°CpRœlÀ‚•‚…‚¼à† )ˆ  ¶– ŽŠæˆæ‹æŠò¢JÑÑ!ÑaÑ_éYééYMYOéwÙHé/Ù Y=Y‘¬¬½¬·¬­l¬¬¹ô¬Jr+²2•ô‡ô­l l’ “ —¾’Õ‘5–M•Õ’þ‘~•–u”þ–‘u‘5’u–Õ•uS@Š¨Â§°+@…SQ˜…C‘TNS–*“Êr%¬šªš¯*VÍS3Õ*µB­Q+Õ<µTSMSCSScÑDµ­µuµ µ­´Í´õµ-µÛuYêœ:©Î®“é¬:—~£~¥~³~~…Þª_¥Ïë—êèWëé—R¿!`HÊ eØ4x qCÔØß8Çû{WWWßš¼¦ “ß3EM SÈ4eMahJ•¸MiÓ“Ӽ˼ϼۼӲܲÍrвزÒrÀ²ßrÄ’³œµ¶µœ²œ¶¬³ì°$,»-•–e–µ–ÿ, -'l*ÛCÛ#ÛÛݪзØ)v²Ãçð8\Èrg+wҽĽÐ]éÞé>ë>è^í^ë^åÞáÞì>à>ã^éθ7¸Ï»sîåî]îEî2÷1÷iwÖýŸ{{…ûª;åÞê>ç^à¾æ¾ì¾è¾å^ïŽyP!ÔꉠIÐ ¨3Ô ju€¦B ÉÐhÔ õƒBã æÐh4šõ‚zC£ ¨=@ͼ߼ϼ¼½?½½o½¿½_½¿¼ï½¯½¯|9ßB_¥/ï{á{å{î_åOûþ¸?âOÇùAAðJð\ðZ(®®únú®®®®®ú®FDšFšEGÅzÄ:ƺƺǺÄ:ÅÚÇ bÝbbƘ2fˆ©âKãKâÚx6nŒ/ˆ—ÅWÆCU¡_ÏÄWÅ ñdÜ_Çñòø¢¸%î/Œûãžx0žŽ/[ãPü¿x.ˆLä ÿ’ø¤%iLZ“®¤=éLš’î¤#iKžMžIµN­I­M×HWK×IçÒéCéé]ééƒé=éc™ ™G™gÙ Ù‰Yz–‘¥U|¨øXñ%¿õ¯¸f1€ú^\»¸ê+êoqƒâ†¨?ÅõK%Á’%ï°³°S°ó°Ã±“±s°³±3°x,; [ˆ€€…퇃k_…Ïá7ààã×áWã—ââÿÿ?ÿ¿¿’j¿“jª“êj‘šy”4%I©¤Ä)‹(0¥œ²€RAYHÉPòT•B¥SÉ–OÔ[Ô»Ô´Ù´ŒÃÅ0060Ö31|U¡ÏÈ2`Æ:ÆF%#ÎXÉXÈ1¸ŒMÌl)[ÎN°°Av’]Áްl?;È^Ì®dóÙØ)Ž–cä8&ÎFÎ&îîzîÜÜmÜ•ÜuÂjÂÚÂ6‚'‚ïÂV‚‚Ç®‚‚ׂ‡ÂÂN‚¿ÂÞ‚‚·Â–‚o‚gÂIº‚§‚_ÂF‚ß‚WÂzB„°­°§°‰à«°—°Žà³°µ¨X´T´X´H´L\]\MôO\C6YÖKf•A²£²¸,$óÉ‚2¦ )eDYB¦•‰eNF¦”•ÈP2œ¬LË(²j2†L$³Èx²¨¬T d6Y¹Œ%ÓÉ„2“b£b"«X¯X È(þSlQäKyÅÅBÅJE…b¹b“2¥Ì¨ðªUESÑUIÅPUUÒ©bª!µOíW{ÔµE ª½j³Ú ©«©£±j{j;kÛi;i;j{hÛkûh;h+´9m^›Õ…tOçÕŸÑïÒŸÓŸÖ_ПÕ_Ö×ÒÖŸ0d †E†¬HkmÜhÜlÜdÚf:eÚkZm:kZgÚa:iÚb>b>n>m>eùf¹eyiyf¹fy`­iùiyjùjù`yoyk¹gÓÚVÛÖÛÖØÞØ^Ù^Ú^ÛžÚžÛÙvžc±£Ò‘w”;9ÒŽ¤³µé,u–8QÎ"g1XŽ›€ÕÀ¾`c°ØìÖ{ƒÝ¿ÀþîŸ`]°¡û3ØÏýlåþæ~åþäþ 6w¿t¿[»ÿ‚}ÀNà °†ûØÙýör?s?w¿w¿sÿÛ‚]Al¶{˜U¡a!ĆtÐHá!4D‚J D„Š!*$„ *‚h’AbÈI!2Ä Ò@Lˆ ¼D_-_C_K___[_;_m_k_3_c_=ß"ßßbßß{ßkÿ9ÿQÿvÿ%ÿÿeÿÿ.ÿ5ÿ^ÿ~ÿÿuÿ!ÿNÿÿà„àü`$ø$x/x#ø¤ožo†å+öÍô ôô€ÀðÀÌÀàÀ¸À„À@ÏÀÈ@¯ÀˆÀ @A`l`|`LpJPLSÁdðoªª&‡™azƆ©aN˜&…‰aF˜„Ñ‘‘™‘Y‘¹±>±1±±± ±±¥±å±u±•ð8ÇámpÎÁ>x9†WÂyx\{á4\ ‡à p Þ/WÀ›áÅðÒò‹å—Ê/$6%®%nR&î%®'î${$»'{&W'×&W$W%—$«¤&¹(¹4y-y#y5y=ù3…J§JRÛÓ“ÓãÒc2M2 2õ22ˆL³LýL­LLíÌþÌílÝ,"[+Û7;<;';/;7{,{4{(»/{ »%»={)»5{8»#»'GΕæ¹99RnnŽÃææåp¹’:GËásÄ|8Ìß«¬^Y­²ueÏÊþ•ý*ûVö©œW‰)V<¼$Qò­t3vv vv9v%v5þ&þþ¡9i¢äÃù>²ï£ø>¯o›o«ïk˜˜˜( `èÀÜ&P˜( à‚Sƒº 6˜ ÕÕ Õ ­­ ­ ­ KÂú°*, ˦ðÁHI¤8‚Œ "¥‘ͱI±‰±õ±5ð]ø|>ß„ÏÃ?à×ðiøüü> _†ßÂà+ðaø,¼¾?+·”ß,¿•xì›ìŸì“ìUúÉMÉmÉ­É;É»É{)rŠ¢¤p©}©=©]©½éYé™é©éeéå™ö™V™ž™N™‚L‡L÷L×LïLLçLÇLËÌÁlƒlýlãlÃìÈìËì«ìýìÝìãìÓìÃìûìåìµìëìíìì“ì•ìƒìÍœ.çÈùsîœ7§ÈÙsúœ'Ès–œ(§Îiròœ æT9SΙ“å 9[ÊñóeùX~þwåÀÊI•“+çWb+q•øÒ‘ØØ-ØMøG¤é”£”cÔ·Ôw´ý´Œœ6œÖœVœœ{ÜçÜGÜÇÂOÂ÷—Âç·ÂwòqòáòÁò‘òaò!ò)òQò‰ò1òÑòIò±òBùde eKå •EeVïÔ®Ò®ÔîÕ¾ÑÖÕÓÑ}4ô4ô0ô6ô1ü½÷€Ž1ÿÿ¾‡(«÷Þ’0ÑÉ$zï½[}uÑ¢Dô²±X²bB’It‹¹zï½Îb±Xì²X,‹Å.Ë<óûŸÿ¹o¹Ÿû·ó‹óœó”ï9¯\“Ì|^¹æk®ó-3¹V7ýé¯F×,Z³`ÍÂ5¯Ö \7`Ý uý×õ]÷8emJJʆ”/Ö³ëC_¬ÞpmÕe6ÎÝ8/5zs(µÈæw©uR=›_¦K-•Z<µìæ·iµÒ*¦UJ«‘V%­úÖ™[goe¶¾JŸ–>?}rúÜô™é ésÒn3R3Ò2¾Ü1aÇØãvŒÙ1~Çį·ïì½³çNj'±݉e–ɬ²ûMfdf…̪»ßeVˬ˜Ù$³Vf¹Ý/2=»_e–Ì,ŸY=³òî×™¥vÿ™Yzwh÷ß™ew¿Ì¬”YbÏõ=?﹑Õ*«u“Åe½Íz·oÚ¾ûfOÙ§î±Øþ û‡ì¼tv\v›l_v‹ìfÙí²›f·ÊîÝ2ÛÊv³ÍœŠ9•s*å–Éý$çUnñÜÊ9æöÈ-™[>·Dnܪ¹¥üùþýþ#~¿—ŸÿkÎÇHßÀŸéÏõŸôgùú³ý‡üßøóü‡ý’ÿ„¯ÿ˜ÿxÞþ¼œ¼ì¼;y¿äÝË»››ß*Rþ´ü)ù“ó'äïÙidÇQûFeÕÆ cÅI&õŸœ|vÊÓéoê$ÿwbÄü?=I½“ú$ J40©oR¿äzɵ“k-MY^cÅü•ß­n¹Ú·ºõºO×^÷,e[Ê–”´”ô”Ô”í뇮羈ÝðSjÍÔf©1© R¦ÖM­•Ú8µUjTjdjÓÔú©Þ´¦iõÒê¤E¦5J«›Ö³EfLßž;{~Ùs;«mV§,)ëæ¾Yûœ}æ>yÿøýc³;fwÍî—Ý'»WvÏìN#ýìîÙ§sªåÔÈ©™S=§SÎ¨Üæ¹õrëæ¶Èm˜Û$·in£Ü(?å'ý¼_ñ[~×Ö/ú ¿æçü„ÿŒŸñ³þ€ßö#~Àÿ­óŸö£ykòróæ=Î{”_'¿f~í|_þ°ü„üYù»†1cÍ±ÆØà„%“O2ùâäsSž%D%D&Ä$D'–Iü$±Ô‚rIc’Æ&K•\?¹Aò‰¥ë—ý°ìâ²+Ë.¯X¸XÝv5¾&iÍ’uãÖ}¶nºIë&®ûcÝӔ뇯߲áúÆÄÔ6©mSãS[¤Æ¥¶Kk‘Ö$-&­Yšwë’­ÒVqë›ô”ô/Ó7¦§¦oN_¿½ZÆžŒÌŒìŒ]_gìÍÈÚ1mÇŒý3‡dŽÈ”98sxfÿ̾™2föËêžu{ßü}óö÷ºRö°ìÑÙŸfÉž= {ÐGI`ö¨ìÙßåÔÊižÓ9glΘÜ~¹r»çöÉ혟Û3·KnûÜ6¹q¹]sÛù¯ùÏû¯û¯úƒþïü?úÏùoøïû¯øð_ò¿ð_ôÿ”Gæýžß6?>?.¿W~bþžüC#»ŽÚ?þ×ñ÷&$O:ù‡´ÖS‡Ï(2#bF±„¦ Þ„½³&VJ¬œX!ÑMš”419z鯥–nZ‘´òûusÖÍNÙ³qAj§Ô©S»¤úR;§vK‹M‹Kk•¿uÅÖe[—n}—þUzFzzzÚW}·×ÊØ·cÖŽ™;ùÌ™c2'gŽËœ’¥gû<Ùc³'äÔÏi™;*w|îˆÜA¹CsçŽÉ;$w˜ÿÿ•ÿ‰ÿ¶ÿ¡ÿOÿ/þ—þ›þÇþ»þgþßý·ü¿ùÿð?÷ÿê”§æ}—÷,ïy~‰üºùòÛç·Ëï?üc¤Ÿ¿$?)Qþâ±Æžž4ì³… -g?šý8±JÒÔ¤éI““¦%7\vmÙ•WwXM­&×ÍOÉZ¿uãÂÔÞiÒÚ§µMœž™¾'#/#?ã@†§¸SØ©f&fÎÍœ·÷NV¿¬ÞYý³¬¬;ÙS²/æLÈ™;'wvîŒÜ)¹ÓòŠúßå•Ì‹È+‘W<Ï“W$¯”?ä›W,ï@~ýü~ùËò—ç¯û}B«:±fb­Ä‰µ“f$Ç$Ÿ\ùÃÊ+«;®›·.qÝË”ì”})9)û7ü¼áfj¿Ôþ©¶®Þºf뺭k·†Ò÷¥ïÏ8šq$ãpæ¢Ì…™‹3—d.͸/yÿÔܹ¹‹ræ•É+—W1¯B^å¼Jyó^ä—Ê*mþšüÕãê'Í^·8­Ëv4ãØN-sYæªÌ™Ë³§å.Ë]š»$wy^Õ¼*y/ó?Ê;Jò$ÍMJX÷*u~Z·´®iÝÓó¾ÊÍ8‘ád Þ·tß²}ßÿTö¬ìÙÙsråUË«‘?`FÉÄúÉS‡d|“¹1ó‹Ì Ùó²çæ´Ê«•Ü4upz~æ¦ÜÕyÔŠåÙ‰¹kòê%ÍKšŸw$?%`þ>Ïÿ§Û¬éÉ+ç-j™”¼ å‚y3Zÿ÷÷Ëæ&'LŸÕráòËæµŒ[°"aAëñC‡´1=yiBr뾋f.ž5oÑœ¥­–Ïl™˜Ü*aÑÌÿ;bccÛ´iù¯mûvm lcc}ñ¾ø¶q‘>_ÛvícÛ·‰óµ‰ŒkßÎûGË—.›žÞ•Å3—þããþ¯îÿ¯'ù?¶ÿiï¾>ÓwLï–ƒG}Àƒ?ï§ý÷­"aІ‰S,Lñ0%” óI˜RaJ‡)¦l˜raʇ©¦b˜Ja*‡©¦j˜jaª‡©¦f˜Zaj‡©¦n˜zaê‡i&2LT˜è0 Ã4 ã ¦q˜&aš†i¦y˜aZ†i¦u˜V¾0qaâô Ó6L»0íÃtÓ1L§0Ãt Ó5L·0ÝÃôÓ3L¯0½Ãô Ó7L¿0ýà 30Ì 0ƒÃ 34̰0ÃÃŒ32Ì¿æÓ0cÂŒ 3.Ìø0ÂL 3)Ìga&‡™fj˜ia¦‡™æ_¯ºYaÂÌ3'ÌÜ0óÂÌ“fA˜…a…Y&)Ì’0ÉaþuL/ ³<ÌŠ0+ì ³:Ìš0kì óy˜”0ëÿûôüîÿçùcFÿÕ6üëHø_Úÿ¸óí}íþ~DÁÖSôüo,ÿûv—üoÞoë{ŠE:Ç_…w¥ ïˆX^xG±øàxZxGq¨ðŽ ï(Ùü#8îÞñÉñÂ;J%ÞQºáGpÜ,¼£L~áe'ÞQ®ÎGp\)¼£|VáÆÞQ±ÊGpœ+¼£ÒŽÂ;*-¼£J™àp 墨¥ðŽj} ï¨ñJá5ÖÞQ³k¡Gk¾)Œã_¤žb­….µ§ÚAשû9J†"ÂÛ"ÿ¢ç‘:ßf?þ5°ë Õ]U¸çò¯Lë5þOSÿg7œi½;…Û°«¸pŽ žždƒ±…s¬÷ôD"Ëþ§ŽˆÿêÙGxzN‹þG‘÷~ÞsZT½àøÆ bÔOÿ‰£àk.:§ðކ ïhTã#8.ÞáÝ]xGÌÈÂ;WøŽÓ…w4I/¼£éÀÂ;š•ü£ðŽæ› ïhÑó#8B…w´üÎ…­ÖÞѺãGp¼*¼#–(¼Ã÷Ïsëäˆó}¸£ä{·ÿ§ãà”¸'êø_öé=Gü=þÁqªðŽ6¥>‚cÎGp|ðùãß;Ú~ðÜÅ?86|ÇÂ;Ú}ðØãÜÿøÇÏ}þ{GûqÁñÁçïèðÁsÿàXòg ïèØò#8>¸ÿñŽžûü÷ŽNý?‚ãhá?xîâÓ?‚C*¼£Ë£þÁñÁýp|ðÜç¿wtmÿ{>‚ãyáÝ>xüòŽ^;ù÷Žîå>‚#ñ#8>xîóß;z|ð\Î?86ÇíÂ;z~ðøå¼vòŽ·…wôšôLá½?xþã¼öúŽ …wôùàñË?8>xíä ïè;ø#8NÞÑïƒç?þÁñÁk¯ÿÎá)â)ê‰ðó÷”ð”ô|â)å)í)ã)ë)ç)ï©à©è©ä©ì©â©ê©æ©î©á©é©å©í©ã©ë©ç©ïià‰ôDy¢= =<^OŒ§±§‰§©§™§¹§…§¥§•§µ'ÖãóÄyâ=mÐ&ô^ ´ ´ ´t tt t tô ô ôô ô ô ô  ŒŒ Œ ŒŒ)P?60.0!010)090%050-0=0#030+˜˜˜˜˜H ,, , ,$––VVÖÖ>¤Ö6¶ÒÛ]Ý=½¬À¾Àþ@v '8888888`  ,€ˆ l@ H9 ´€0VÀ ¸`àtàLàlà»À¹ÀùÀ…À÷KWW×?~ \ÜÜ ÜÜ Ü Ü< < << üxø3ðWàuàMà] Š@q $ð P ( ”ÊÊ@ *P ¨Ôjµ:@= >Ј¢†@#À Ä&@3 9Ð h Ä> ˆ?; Ðèt:]n@w Ðèôú€AÀ``0 F£€ÑÀ`,0®@ý`"0 ø ˜ L¦Ó€À, ˜ Ìæó€ù@"°X ,’•À*`5°H¾6_›T` ° H¶À`'° Ø d{€½@°Ød9@‡€ÃÀQàpø8œN@`Pp€H€€8€@$@4ÀLÀÀ‚À·Àià p8|\.—€+ÀUàðp¸Ün·;À]àð+px<~'ÀïÀSàðøx¼^¯7À[àXŒ‹ÅÁ`I°4X,V+‚•ÀÊ`°X¬ÖkµÁ:`Ý÷³ëõÁ`$Fƒ ÁF ŒƒMÀ¦`3°9Øl ¶[ƒq`<Ølv;ƒ] Ôw»ÝÁ^`°?8‡ƒ#ÁQàhp 8N'‚“À)à p&8 œ Î烉àBp¸\&ƒKÁeàrp¸\¦€ëÁ/À àFp˜ nÓÀ­à60Üf€;À¯Áà.p7˜ î÷‚Yà>p?˜ 怹 ÌóÁàAðx<ÇÁoÀàIð!1 )9PP5ÐMÐmÐ]0žσÀïÁ‹à%ð2x¼þ^o€?ƒ7Á[àmððx¼Þ€¿Á'àïàSðø|¾_¯Á7à[ð‚P_¨Ô ††@C¡aÐph$4  } ÆBã ñÐh"4 šM…¦AÓ¡ÐLh64š ̓æC‰Ðh!´Z %AK dh)´ Z­€VB« 5ÐZhô9”­‡6@¡MÐf(Úm…¶AéÐWÐv(Úí‚vC™Ð^( Ú퇲¡ÈåAùÐè t: ŽBÇ ãÐ7Ð è$t @BC„B„CDBÄB$@"$A ¤B¤CdB.ô-tú:‡.@¡KÐeèè tºý]‡n@?C7 dw º ýÝîB÷ ÐCè7èôz=ƒžC/ —Ð+è/è5ôúz ½ƒBpQ8âýz¸8\. —‚KÃeàrpy¸\ ® W«ÁÕápM¸\®ׇÀ‘p 7„Á^8n 7…›ÁÍápK¸ÜŽ…}p·ÛÂíàöp¸#Ü î w»ÂÝàîp¸'Ü î ÷ƒûÃáÁðPx8< ‚ÇÂãá‰ð$ø3x <žO‡gÀ3áYp<žÏ…çÁóáDx¼^/†“à%p2¼^/‡WÀ+áUðjx ¼N×Ãàð&x3œ oÓà­ð68΀¿†wÁ»áLx¼΂s`?œ†ÀGácðqø$ Ã(LÂÌÀ,ÌÁ,Â,à ¬ÂlÂ.„¿…OÃgà³pÏÅÃà‹ð%ø2|¾ _ƒ„‚¯Ã7à›ð-ø6ü |¾ÿ ߇ÀáßàGðcø ü{ú§ð3ø9üü~ ¿‚ÿ„ÿ‚_Ãoà¿á·ð;8„x"HQ$)†GJ %‘ÒH9¤Ò‰D¢h$iŒ4Eš!Í‘–H+¤5‹ø8$i‡tB:#]®H7¤;Ò éôEú!ý‘È d02Š C†#£ÑÈXd2™ˆLB&#S©Ètd2™…$ ³‘9È\d2ID ‘EÈb$ Y‚$#K‘eÈrd²Yƒ¬E>GRõÈdò%²IE¶ Û¯ dò5²ÙƒìE²ýH6’ƒø‘<$9€D!‡‘#ÈQär9œDN!@@B`APCp„@H„Bè÷³C„E8„GDD$DFDE4DG ÄD,ÄFÄE‚Èiä r9‡œG.  Ô_B.#? W«È5ä:ò3r¹…ÜF~Aî w‘{Èä!òyŒ,‹ÇÚ`m±vX{¬Öë„uƺ`]±nXw¬Öë…õÆú`}±~Xl6„ Ɔ`C±aØpl6…ÆÆa°‰Ødl6›ÍÄfcs±ùØl!¶KÆ–b˱ØJl5¶[‹­Ã>ÇR°õØF,Û‚¥a[±mX:Và®bØl'¶ ÛíÁöbYØ>l?–å`¹˜ËÃò±CØaìv;†ÇN`'±SP Ä Æ Å0 ÇŒÄ(ŒÆŒÅ8ŒÇLÄ$LÆLÅ4ÌÄ,ÌÁ\ì4v;‡Ç.`—°°«ØØuìv»…ÝÆî`w±{Ø}ìöû {„=Æž`¿cO±gØsììö{…ý‰ý…½ÆÞ`o±wX÷àEð¢x^ /Ž—ÀKâŸà¥ðÒx¼,^/WÀ+á•ñ*xU¼^¯×Âkãuðzx}¼…Gã ñF¸ÁãÍðxK¼ÞÅ}x·ÅÛáíñxG¼Þï‚wÅ»áÝñxO¼Þïƒ÷Åûáýñø@|>‚ŇáÃñQøh| >‡OÀ'â“ðÏðÉø|*>Ÿ…Ï~?;|>Ÿ‡ÏÇñ…ø"|1ž„/Á“ñ¥ø2|9¾_‰¯ÂWãkðµø:üs<_oÀ7¨ß„‰oÆSñ-øV|žŽ…oÇ3ðø×øN|¾ÏÄ÷à{ñ,|¾ÏÆsð\<ÏÇàñCøaü(~ ?ŽŸÀOâ§pq‡qGq Çq§qçpp—pWq 7p·pwñ þ-~?ƒŸÅÏáçñ ø÷ø%ü2þ~¿Š_ïã7ð›ø-ü~ÿ¿?Àâñßñgøsüüþ…ÿ…¿ÆßàãoñwxˆðEˆ¢DQŒ(N” JŸ¥ˆÒD¢,QŽ(OT *•ˆÊD¢:Qƒ¨EÔ&êõ‰D$ED ‰¢9Ñ‚hI´"ZqD<Ñ–hG´':ˆÎD¢+ÑèNô"ú½ŸÑŸ@ $ÈáÄHb1šCŒ%Æ㉠ÄDb1…˜AÌ$f Älb1—˜GÌ/PŸH, ‹ˆÅD±„H&–ˈåÄ b%±ŠXM¬!ÖëˆÏ‰b=ñ±ØHl"¾$6©Ä"ØJl#Ò‰¯ˆíD±ƒøšØIì"v™Äb/‘Eì#öÙD‘Kø‰<"Ÿ8D&ŽLjãÄ "@H@JEÐC°„HH„B¨„F„IX„M8„K‰3Äyâñ=q‘¸D\&®W‰kÄÄOÄuâñ3q“¸EÜ&~!îw‰{įÄ}âñxD<&ž¿O‰gÄsââñ’xEüIüE¼&Þo‰wDˆôEÈ¢dYŒ,N– K’Ÿ¥ÈÒd²,YŽ,OV +“UÈjdu²Y‹¬MÖ!ë’õÞÏŽ¬O6 #É(2šlH6"cÈÆd²)ÙŒlN¶$[‘­ÉXÒGÆ‘ñd[²Ùžì@v$ |–žìLv!»’ÝÈîd²'Ù‹ìMö!û’ýÈþä@r9˜B%‡‘ÃÉäHr9šü”CŽ%Ç‘ãÉ äDrù9™œBN%§‘ÓÉäL2œMÎ!ç‘óÉDr¹\D.&“È%d2¹”\F.'W+ÉUäjr ¹–\G~N¦ëÉ/È äFrù%¹™L%·iäVr™N~En'3Èä×äNr¹›Ì$÷{É,r¹ŸÌ&sÈ<2Ÿù€|HþF>"“Oȧä3ò9ù‚|I¾"ÿ" \õ|CþM¾%ß‘!ª(A£JP%©O¨RTiª U–*G•§*P©JTeª U•ªFU§jP5©ZTmªU—ªGÕ§P‘TM5¤Q^*†jL5£šS-©V”Š£â©6T[ªÕžêDu¡ºRݨîTª'Õ‹êMõ¥úQý©Ô j05”F §FP#©QÔhj,5ŽOM &R“¨Ï¨ÉÔj*5šAͤ¨ÙÔj5ŸJ¤P ©EÔb*™ZF­ VR«¨ÕÔj-•B­§6P©MÔf*•ÚB¥Q[©mT:•Aí¦2©=T6•Cù©<*Ÿ:H¢SG¨£Ô1ê8u’)ˆ‚)„B)Œ")Šb(–â(ž(‘’(™RÞÏŽR)Ò)ƒ2)›r© õ-uš:C¥¾£ÎQç© Ô÷ÔEêu™úºB]¥®Q?RþvÔuêõ3u“ºEݦ~¡îPw©{Ô¯Ô}êõzL=¡žRϨçÔ ê%õŠú“ú‹zM½¡ÞÑEéº]œ.A—¦ËÐåèòtº]™®BW¥«ÑÕétmº.]Ÿn@GÒQt4ÝŽ¡ÓMéftsº%ÝŠnMÇÒ>:ŽŽ§ÛÑèÎtº+ÝîN÷¤{ѽé¾t?º?=€H¢ÓCè¡ô0z8=‚EJ¡ÇÒãèñôz"=‰žBO¥§Ó3è™t=›žCÏ¥çÑóéDzD'ÓKéeôrz½’^M¯¡×ÒŸÓ)ôzú z½‘ÞDIo¦Sé-t½•ÞF§Ó_Ñôúkz'½‹ÞMgÒ{è½t½ÞOgÓ9t.í§óèü÷³£ÐéCôaú}”>F§OÐ'éSt€h†h„FiŒ&h’¦h†fiŽæi¡@½HK´Jë´I[´M;´KéÓôú,}Ž>O_ /Ò—èËôôú*}þ‘¾NÿLߢoÓ¿Ðwè»ô=úý~D?¦ŸÐOégôsúúý’~E¿¦ÿ¦ßÑ!ÆÃaŠ2Lq¦S’ù„)Å”fÊ0e™rLy¦S‘©ÄTfª0U™jLu¦S‹©ÍÔaê2õ˜úL&Љf2/Ã4fš0M™fLs¦Ó’iÅ´fbÇÄ3m˜¶L;¦=ÓéÈtb:3ݘîLO¦Ó›éËôcú3˜Ì f03”ÆŒ`F1£™O™1ÌXf3‘™ÄLf¦0S™éÌ f&3‹I`f3s˜ùÌf³˜Ib–0ÉÌRf³’YͬaÖ2Ÿ¿Ÿ“¬g¾`60™ML*“Ƥ3_1;˜¯™Ì.f7“Éìaö2YÌ>f?“Íä0¹ŒŸÉ+PŸÏ`2‡˜ÃÌæ(sŒ9Î|Ü`N2§„AŒ!’¡ša–á‘‘•Ñ1“±— 2§™ Ì÷ÌEæs™¹ÊüÈÜ`~fn1w™{Ì}æóyÄl_¶ÛŸÄa‡³#Ø‘ì(v,;ŽÀNd'±“Ù)ìTv;ÁÎdg³óÙDv»]ĸ’›Ì.e—³+Ø•ìjv »–]Ç~Φ°ëÙ/Ø ìF6•Mc·²ÛØtv;›Áî`¿fw²» Ôïf3Ù=ì^6‹ÝÇîg³Ù6—õ³yl>{€=Èb³GØ£ì1ö8{’X…X„ÅXœ%X’¥X–åY‘•X™UX•ÕXƒ5Y‹uX— ²ß²§Ù3ìYö;ö{ž½À~Ï^d/±—Ù«ì5öGö'ö:{ƒý™½ÉÞbo³¿°wØ»ì=öWö>û€}ÈþÆ>b³OØßÙ§ì3ö9ûû‚}ɾbÿdÿb_³oØ·ì;6ÄáŠr\q®W’û„+Å•æÊpe¹ò\E®2W…«ÊUãªs5¸Z\m®W«Ï5ࢸh®!׈ór1\c® ׌kÁµäZq­¹XÎÇÅqñ\{®#׉ëÎõàzr½¸Þ\?n7ˆÌ á†q#¹QïgÇæÆpc¹qÜn"7‰ûŒ›ÌMá¦rÓ¸Ü,.›ÍÍáæró¸ù\"·[Ä-æ’¸%ꓹ¥Ü2n9·‚[É­âVsk¸µÜ:îs.…[Ï}Ámà6r›¸/¹Í\*·…ÛÊmãÒ¹í\·ƒÛÉíâvs™Ün/—ÅíãösÙ\—Ëù¹<.Ÿ;Àäq‡¹£Ü1î8w‚;Éâä æå0ŽàHŽæŽå8ŽçNä$NáTNã Îä,Îá\.È}ËæÎpg¹sÜyî{î"w‰»ÌýÀ]á®r׸¹Ÿ¸ëÜ îgî&w‹»ÍýÂÝáîr÷¸_¹ûÜî!÷÷ˆ{Ì=á~çžrϸçÜÜ î%÷Š{ͽáÞrïø"|_Œ/ΗàKò¥ùò|E¾2_…¯Å׿#ù(>šoÈÇðMøf|s¾ߊoÍÇññ|Û÷³ãÛñíùŽ|'¾3ß…ïÊwã»ó½ø~|~?ˆÌã‡ó#ùQühþS~ ?–Çç \ŸÈOâ?ã§ðSùiüt~?“ŸÅ'ð³ù9ü\~?ŸOäð ùEüb>‰_Â'óKùeür~¿’_ůæ×ðkùuüç| ¿žÿ‚ßÀoä7ñ©ü~+¿ßÎïà¿æwò»øÝü^~ŸÃçò~>Ïçñ‡ù£ü1þ’?Åx€yˆGy’§xšgx–çx‘—x…Wy7x“·x›wx—òßògøóüþ{þ™¿Â_å¯ñ?ñ×ùüÏüMþ›ÿ…¿Ãßåïñ¿ò÷ùüCþ7þÿ˜ÂÿÎ?åŸñÏùWü_ükþ ÿ–LJPD(*D%„O„ÒB¡¬PN(/T* •…*B5¡ºPC¨)Ôj u„ºBþ½P_h D QB´ÐPð 1Bc¡‰ÐTh&4Z ­„ÖB¬àâ„x¡ÐVh'´: Ôw: ]„®B7¡»ÐSè%ôú}…~Ba0X* † #…QÂháSaŒ0V'L& Ÿ “…)ÂTaš0]˜!Ì„ÙÂaž0_H …EÂb!IX"$ K…eÂra…°RX%¬Ök…uÂçBа^Ø(l6 ©Bºð•°]Èv»„La¯%ìr¿'ä „ƒÂ!á°pT8&¾N'…SB@P€D@LÀB J`Và^QYPUÐ]0S°[pW ß §…3ÂYá;áœp^¸ \. W„«Â5á'áºpCøY¸)Ün ¿w„»Â=áWáðPøMx$<žO d÷Lx.¼^ ¯„¿„×Âáoá­ðN‰EÄ¢b1±„XRüD,%–ˈåÅ b%±²Xåýz±šX]¬!Ök‰µÅ:b}1RŒ£Å†b#Ñ+ƈÅ&bS±™Ø\l!¶[‰­ÅXÑ'Ɖñb±­ØNl/v;ŠÄÎb±«ØMì.ö{нÄÞb?±¿8P$‡ŠÃÅâHq”8Z+Ž?'‹SÄ©â q¦˜ ÎçˆóÄDq¸P\$.“ÅâJq•¸Z\#¦ˆëÅ âFq“¸YL·ˆiâVq›˜.fˆ»ÄÝb¦¸GÜ+f‰ÙbŽ˜+úÅ<1_< ‰‡Å#âQñ˜x\‹OÄßŧâ3ñ¹ø‡ø¢@ýKñ•ø§ø—øZ|#þ-¾߉!É#•"¤bRq©„TR*-•‘ÊJå¤òR©¢TIª,U‘ªJÕ¤êR ©¶T_j EJQR´ÔPj$y¥©±ÔDj*5“šK-¤–R+©µ+ù¤8)^j#µ•ÚIí¥RG©“ÔYê"u•ºIÝ¥^Ro©¯ÔOê/ ”Iƒ¥!ÒPi˜4\%–>•ÆJã¤ñÒi¢4IúLš,M‘¦JÓ¤éÒ i¦4KJfKs¤¹Òr_¹ŸÜ_ ”Ƀå!òPy˜<\!’GËŸÊcä±ò8y‚)Ÿ’A‘Q™’i™‘Y™“EY•5Y—MÙ’]9(Ÿ–ÏÈgåsòyù‚ü½|Q¾$_–¯Ê×åòÏòMù–|[¾+ß“ïËä‡ò#ù±üDþ]~*?“ŸË/å?å×òùoù­üN)E”¢J„R\)¡”TJ)¥•2JY¥œR^© TR*+U”ªJu¥†RS©¥ÔVê(QJ´âUš(M•fJs¥•§Ä+m”¶J{¥“ÒYéªtSº+=•^Jo¥ÒWé§ôW)ÔáÊe¤2J­ŒU ¼ÇC™ LT&)“•)ÊTeš2]™¡ÌTf+ó•De²PY¤,V–(ÉÊRe¹²BY©¬VÖ(k Ô¯S>WR”õÊÊe£²IùRIU¶(iÊVe›’®ìPv*»”ÝÊ%KÙ§ìW²•%O9 R+G”cÊqå¤rJPDALÁB!J¡FaNáQ‘YQUÑC1KqW *§•3ÊYå;åœr^¹ \T.)W”«Ê5åGå'åºrC¹©ÜRn+w”»Ê=å¾ò@y¨ü¦m¿–­åh¹š_ËÓòµÚAívX;¢ÕŽiǵo´ÚIí”Ð Ô Ö Õ0 ×Ô(ÖÕ8×MÔ$MÑTMÓtÍÐLÍÒlÍÑ\-¨}«ÖÎhgµï´sÚyí‚ö½vQ»¤]Ö®j×´Ÿ´ëÚMí¶ö‹vG»«ÝÓhµß´ÇÚíwí©öL{®½Ô^ii¯µ7ÚßÚ[­À‡ý´îÑ‹èEõ½˜^\/¡—ÔKé¥õ2zY½œ^^¯ WÒ+ëUôªz5½º^C¯©×Òk¿_¯×Ñëêõôúz=RÒ£õ†ºWÑëMô¦z3½¹ÞRo¥·Ö}zœ¯·ÕÛéíõzG½“ÞYï¦w×{è=õ^zo½ÞWï§÷×êƒôÁú}¨>L®ÐGê£ôÑú§ú}¬>N¯OÐ'ê“ôÏôÉú}ª>MŸ®ÏÐgê³õ9ú<}¾ž¨/Ôé‹õ$}‰ž¬/ÕWè+õUú}­¾Nÿ\OÑ×ëôú&ýK}³žªoÑÓô­ú6=]ÿJß®gè;ô¯õú.}·¾Gß«géûôýz¶ž£ûõ<=_? Ôé‡õ#úQý˜~\ÿF?¡ŸÔOéÐAÒaÑQÓqÐIÒÕ9]ÐE]Òe]ÑU]ÓuÝ(©[º­;º«õoõÓúý¬þ~N?¯_п×/ê—ôËúúýª~MÿQÿI¿®ß(Pÿ³~S¿¥ßÖÑïèwõ{ú¯úý¡þ›þH¬?ÑŸéÏõúKý•þ—þFÿ[«¿3ŠF1£¸QÂ(i|b”2JeŒrFy£‚QɨlT1ªÕFM£–QÛ¨cÔ3ê ŒH#ʈ6 ¯c46šÍ–F+£µá3âŒx£ÑÖhg´7:]ŒnFw£‡ÑÓèeô6úýÁÆpc„1ÒeŒ5&“ŒÏŒ©Æ c¦‘`Ì6æóŒùF¢±ÀXh,2ÉÆ c¥±ÊXm¬1Ö)Æzcƒ±ÑØdl6R4c«±ÍH72Œ¯]Æn#ÓØkì7²ÃoäùÆAãqØ8b5ŽÇoŒ“Æ)#`h@l j`F+æ”Á’!Š¡š4NgóÆã¢qɸl\1®׌ŸŒëÆ ã–ñ‹q׸W þWã¾ñÀxh<1žÏŒçÆ ãOã/ãµñÆ,jF˜ÅÌRfi³ŒYÎ,oV0+™•Í*fU³šYݬaÖ6ë™õÍf¤eF› ͳ±ÙÔlf67[›>3Îlgv0;™]Ì®f7³»ÙËìmö5û™ýÍæ s°9Äj3‡›£Ì±æ8s¼9ÁœhN2§˜SÍéæ s¦9ËL0g›s̹æ0šÌÇæó©ù¬@ýsóó…ùÒ|e¾6ߘ›ïÌ届XE­«„UÒ*e•¶ÊXå¬òV«¢UɪlU±ª[5­ÚV«®UϪo5°¢­†–׊±[M­fVs«…ÕÒjeµ¶â¬6V;«ƒÕÑêdu¶ºYÝ­žV/«·Õ×êgõ·X­ÁÖ0k„5ÁšhM²&[S¬©Ötk†5Óše%X³­9ÖbµÙÇíöIû”°´!¶µ1· ›´)›¶›µ9[´%[¶ ¬Úª­Ù†mÚ–íØ®´OÛgì³öwö9û¼}Á¾dÿ`_µ¯Ù?Ú?Ù×íö-û¶}§@ý]ûžý«}ß~`?´³Ùí'öïöSû™ýÜþÃ~i¿²ÿ´ÿ²_ÛoìwvÈ)âu"œ’Î'N)§´SÆ)ë‰-[ÔCEz#c<ßÄFx€ÈjÑÞP—è.‘5#kEÖ¬[5¶Zì'±¥bKÇ–‰-[.¶|l…ØŠ±•<ˆç²çUô´èYÑ Ñõ£ÛxàÈ¸Èø¨ˆ¨æ¡ŸC7CwbzÅôˆŽŒ>Ú°rtÑè’ÑÓ£GyŽGvŽ)SÜôžõžñZ^Ó{Ð{À‹yQ¯àå£vE}µ3jwTfl•èùщѵ£»F׋nÝ<ºEô'Ñe¢S£·DoŒÞÝ,ºitãè&¡[NE§²SÅ©êTsª;5œZNm§ŽSשçÔw8‘N”í4t9^'Æiì4qš:Íœæïgç´tZ9­XÇçÄ9ñN[§ÓÞéàtt:9.NW§›ÓÝéáôtz9½>N_§ŸÓ¿@ýg 3Èì q†:ÜáÎ(g´3ÆëŒs&8IÎgÎdgŠ3Õ™áÌrœÙÎg®3Ï™ï$: EÎâ¨óQßG{¢#wRœõÎÎg£³ÉùÒÙì¤:[œmNº³ÝÉpvHb§³ËÙíd:{œ½N–“íä:yN¾sÀ9èr;Gœ£Î1ç¸ósÂ9éœrà€ê!vu0w‡t(‡v‡u8‡wGt$Gu4ÇpLÇq‚ηÎiçŒsÖ9ï|ï\v~p®…ЄІ"BÅBÅC%B%CŸ„J…J‡Ê„ʆʅʇ*„*†*…*‡ª„ª†ª…ª‡j„j†j…j‡ê„ê†ê…ꇄ"CQ¡èPÃP£7jjjjjjjjjŠ ùBq¡øP›PÛP»PûP‡PÇP§PçÐÝP×P·P÷PPÏP¯PïPŸPßP¿PÿЀÐÀРÐàÐÐÐаÐðЈÐÈШÐèЧ¡1¡±¡q¡ñ¡ ¡‰¡I¡ÏB“C·ëÎ ç¦sÛ¹ãÜu~uî;œ‡Îcç™óÜùÃyá¼t^9¯7Î[çr‹¸EÝ·ØûÙ¹ÅÝnI·´[Þ­àVt+¹•Ý*n5·º[íåÖvë¸uÝzn}·éF¹ÑnC·‘ë-Pã6v›¸ÍÜæn ·¥ÛÊmíÆº>7ÎwÛ¸mÝvn{·ƒÛÑíävv»¸]Ýnnw·‡ÛÓíåövû¸}Ý~>Ÿ/ÎïkãkëkçkïëàëèëäëìëâëêëæëîëáëéëåëíëãëëëçëïàèäìâêæîáéåíûÔ7Æ7Ö7Î7Þ7Á7Ñ7É÷™o²oŠoªošoºo†o¦o–/Á7Û7Ç7×7Ï7ß—è[à[è[ä[ìKò-ñ%û–ú–ù–ûVøVúVùVûÖøÖúÖù>÷¥øÖû¾ðmðmômò}éÛìKõmñ¥ù¶ú¶ùÒ}_ù¶û2Üþîw ;Èìs‡»#ÝQîhwŒ;ÖçŽw'¸ÝIîw†;Óå&¸³Ý9î<·À»ÄÜDw»Ð]ä.v“Ü%n²»Ô]æ.wW¸+ÝUîjw»Ö]禸ëÝ/Ü îFw“»ÙM-P¿ÅMs·ºÛÜt÷+w»›áîp¿vwº»ÜÝn¦»ÇÝëf¹ûÝl7ÇÍuýnž›ïpº‡ÜÃî÷¨{Ì=•µ$*9jiÔ²¨åQ+¢VF­Šzoæ-jZÔô¨Q3£fE%DÍŽš57j^¨@‹Ø±+bwDfÄžˆ½Yû"öGdGäDäFø#ò"ò#DŒ8q$âhıˆãßDœý/-‰@#°<‚ˆ #¨:‚‰`#¸>Bˆ#¤9B‰Ð"ô#ÂŒ°"ìÇýÆ=ážtO¹pAraqQsq—pI—ri—qY—sEWrWu5·ÀèÈ5]˵]ÇuÝ {ÆýÎ=ï~ï^t/¹—Ý«î5÷G÷'÷º{ýéÞro»¿¸wÜ»nºû«{ß}à>t¹Ý'îïîS÷™ûÜ}á¾t_¹º¹¯Ý7îßî[÷ z‚E‚EƒÁbÁâÁÁ’ÁRÁÒ^·¨·¬·¢·¦·ª·®·…·‘··‹·ˆ7Â[Á[Å[Ç[ÃÛÐïmîíììô¶ö6ñ¶÷v÷ÖóÆz½ÞÞ^ÞÊÞJÞÚÞZÞêÞjÞòÞrÞúÞÞ(o´7ÆÛØÛÔÛÌÛÒÛÊëóÆyÛzÛy;z;y»z»y{x{z{{ûxûzûyû{xzËËËË+++«««kkkëëë룃 ƒ‚Þ`L°q°I°À•š‚͂̓-‚-ƒ­‚­ƒ±A_0.llllììììììììììììS ¾o°_°pPppphpXpxpdpTptðÓà˜àØà¸àÄà¤àgÁ)Á©ÁiÁéÁÁ™Á„àìàœàÜà¼àü`bpAüžø½ñYQUâ÷Åëñ‡ãÄ?¿?>;>'>7ÞŸŸ þ`ü¡x7~{|FüŽø³ñiñ[ãíøãñßÄÃñH<ÅãñD<OÅÓñLüñâ7Æÿ̽UT\Iû‡ IÇ“ q·IÇ“ÉÄÝ=8‚Kãîî÷ Ä=ÝM Ò 4ÐÆv'î6ñ‰îèùŸ»›s}j­}ù¬Z빩ý«ª÷­L³,³V³63•Y»Y‡Y§Y©Y™Y¹Y…Ù‰y ͺÌÔfùff…fŒ™ÆLd&6k0»mvÍìºÙ 3¡Ù]3ÌŒ4ë13˜Ý1Ó‚Á` †á` FÑ`  &€‰`˜ ¦€©`˜f€™`˜ sÀÜvòÀ|°,‹Àb°,ËÀr°<ž+Á*°¬kÁS`=x<žÏçÁ ø‹à%ð2x¼ ^¯ƒ7@!(Å`(¥  ”ƒ`Ø ¶€J°lU`;Øv‚] ì{À^#­ftÝxáŸ?Ʀÿ÷m3ÞaÔolmÔjtÏØÇøàŸ?¦î¦¦ž¦^¦Þ¦SS_S?SÓÓ@Ó Ó`ÓÓPÓ0ÓpÓÓHÓ(ÓhÓÓXÓ8ÓxÓÓD>ÆÇùŸäS|šÏðY~?ÿ&ÿÿ6ÿÿ.ÿÿ>ÿÿ!ÿÿ1ÿ ÿ)ÿÿ9ÿÿ%ßïÁ÷ä{ñ½ù¾ß—ïÇ÷çðùAü`~ˆQû<›y¶F*£ŽyNóœç¹Ìs5 ÔzÐö 0ˆ€(ˆ8H€$Hƒ È‚ýàMðx¼Þï÷¸{>Á§à3ðø/ø | ¾ß‚ïÀ÷àð?ð#ø ü ~¿‚ß@üþà¿Á?d ‚CPE@1P”e@9P€NB•PT ‚ê¡ÓÐètº]„.A—¡+ÐuH 5@H É 9Ô µ@Ê–Z¡6¨ê€:¡.H uC=ÒC}A ! á‘ 1 õC7¡[øÛÐè.tº=€B ÇÐSèôz½„þ…^Ao ·Ð;èôôú}†¾@_¡o}‡~@?¡_À9à 0€(€€ú›À-à6p¸ ÜÀ#à1ðx <ž/€—À¿À+à5ðx ¼Þ€ÿ€À'à3ðú ýàAð`˜‡ÂÃà‘ð(x ü<‡'ÀáIðdx <ž φçÀsÿ×<þž/€‹à%ðRx¼þ^ ð*Ø6ƒWÃkàµð:x=¼Þo†·À[ðÛàíðx'¼ Þ ï÷Âûàýðø |> Ía ض‚­aضƒÂö°ìƒ`Øvã™ðÆñÆó&ð&ò&ñŒy“ySxSyÓxÓy3x3y³x³ysxsyóxóæóø¼¼…¼E¼Å¼%¼¥¼e¼å¼¼x+ÿüÀ[Å3å™ñVóÖð¬xkyëxëyxy›x›y[x[yÛxÛy;x;y»x»y{x{yûxûyxy‡x‡yGxæ< Øö„½`ìûÂ~°?Â!pGÂQp4ÇÂñpœ'ÁÉp œ § 0”gÀ™pœ ‡sà<8.€ á"¸.Ká2¸®€+á*¸®…OÁõðiøÌþ,|>_€/ÃWáëð X‹`1ÜKa,‡á&¸n°n…Û`ÜwÀp¬†»áXka¬‡ p Â0ŒÀ(ŒÃLÂLà ÌÂýðMø|¾ß…ïÁ÷áð€zZøü~?…ŸÁÏá—ð¿ð+ø ü~€ÿƒ?ŸàÏðø+üþ ÿ†ÿ Fˆ12èyd02Š CF #‘QÈä/d,b‚ŒCÆ#IÈdd 2™ŽÌ@f"³ÙÈäod>²Yˆ,B– K‘eÈrdò²1EV#k‘uÈzd²Ù„lF¶ [‘mÈvd²Ù…ìFö {‘}È~äÀ€ù"‡ÃÈı@,+ıAl;ä(bCœÄñD¼oD€ø ¾H4€AB‘0$‰@"‘$‰GD$IAR‘4$É@2‘ãH.’ …HRŒ” åHr©Dª¤9…Ô!õÈiä r¹Œ\A®"×ëÈ DŒ4 DŠÈ9Òˆ4!ÍH ¢@”Hë€ùÛÒŽt HÒô ½ˆÑ":D>D FE0G„D(d@]' ,ÒÜDn!·‘;È]äry€B£OÑgèsôåwÿ¢¯Ð×èô-úýý„~A¿¢ßPýŽþ@¡¿Ñ?˜16Œ Á†bðáØlÀ‹Ø(l46û ‹™`ã± ØDl6›‚Mæc3°™Ø,l66›‹ÍÃþÆæc|l¶[„-Æ–`K±eØr‰‹$I’,I“dI %E’I™¤ZR#©•ÔIÎHÎJÎIÎK®J®InH„‘D,iH%rI£¤I¢¨$½D'ÑK L‚K(I¿ää©t¸t„t”t´ÔD:^:A:U:M:C:S:K:_Ê—..–.—®–®‘®“®—nn—îî–î—ZJ­¤¶R;©ƒÔYê.“ÆK“¤iÒ i®4OZ -’–K+¤'¤ÕÒ:éU)$Ť”ôŽô.ö¶°U˜)f†­ÅÖa°Ø&l ¶Û†mÇv`;±]Ø^l?v;„ÆŽ`æØ€·F1+̳Áì°£˜=æˆÜ0gÌsÅÜ0Ìó¼1æƒùb~˜?€b!Ø€z ,‹À"±h,‹Åâ°x,KÄR°T, ËÀ2±,,;Žå`¹X–`…XVŒ•`¥XVŽU`'¤÷¥/¤/¥¯¥ï¥œô‡ô—Œ'".%-›(›$›"›&›+[-Û,s9ËÜe~2Y”,Z–$Ë’eËòd¥²2Ù Yµ¬FV+;+;'» »$»,».Ê$²F™^fA2LFÈúe7e·ewedOdOeÏd/d¯d¯eodoeïdeŸdŸe_eßdœì»ì‡ìÜHn,çɇËMäãääå“ä3å¶r;ùQ¹ƒÜIî,w•»É½åì$V‰UaÕX V‹Âê°zì4v;‹ÃÎc°ËØìv»‰01Ö€I0)&àNŽ5c ¬kÃTX;ÖubÝX¦Á´˜ëÃ@ Â` ÁPŒÀŒÅú±›Ø€äÝÆîa÷±‡Ø#ì1ö{†=Ç^`/±±WØ[ì?ì#ö ûŒ}Á¾böûýÄ~a¿±?¸nŒÂã<¹¯Ü_(‘‡ÉÃåQò8yš<]ž)Ï’gË å¥òò³òsò«r¡¼W®‘ëå ’#rLNÉi9+¿)¿-¿+ "!ÿÙhÒ8µqfãÜÆÅK—5®n´l´j´mthtoôhôj45¦5æ6Ö7^l¼Ú(lljliT6v5ö6ê±FºñNãÝÆŸ4>k|Ýø¦ñ]ã‡ÆoM›&5MmšÑ4³‰ß´ iQÓâ¦%MK›€¦UM«›ÖãCð¡ø0|8>‰ÂGãácq|>Ÿ€OÄ'á“ñ)øT|>ŸÏÄgá³ñ9ÿ럋ÏÃÿÆçã||¾_„/Æ—àKñeør|þ¾7ÅÍð5øZ|¾ß„oÆ·à’¾ ߉ïÅ÷áûñøAünŽ[àV¸5nƒÛáGq{ÜwÄáN¸+îŽ{â^¸7.À}p_ÜÀñà¦íM;šv5ínÚÓt¨épÓ‘&Ë&Û&ç&—&·&÷&¦³Mçš.6]mºÞt£IÒ$m’75655µ5©šÚ›ºšz› &¸ mšð¦þ¦×Í&Íãš'6Om^м¼yuóþfïf¿æºæúæ³Í›o4 ›¥ÍTóûæOÍßZŒZŒ[†´,nYÒ²¼ee в¾eC˦–Ý-û[·Ø¶Øµ¸·x·øµ„µ„·D¶D·$µ$·¤µdµ¶µ”´”¶”µ”·T¶Tá!x(†‡ãx$…Gã1x,‡Çã x"žŒ§à©xžŽgà™x6~ÏÁóðüî ðB¼/ÆKðR¼ /Ç+ðøI¼¯Â«ñ¼?…×áõøiü ~¿€_Â/ãWð×ðëø \ˆ‹p1Þ€ËðF¼oÁ¸oÃÛñ¼WãÝxÞ‹kp-®Ãõ¸ïÃAÂaÁÑ–ê–š–º–³-W[®µÜh¶ˆZ[šZ-ºCËë–7-ï[>µülùÕòGa¤0V S WŒPŒV˜(¦*¦)f(f)øŠŠÅŠåŠÕŠ5ŠuŠõŠ ŠíŠÝ +…ÂYá¢pWx+‚ÁŠPE¸"N‘¤(R\UH …¢K¡Vô(4 H)(Å]Å}ÅCÅ ÅKÅkÅ{Å7§ø¡ø¥ä)§*ç*7+·(·+w++-”VJ¥£ÒYé®ôSúãŽãNâNã Îâ7ñ[ømü~¿‡ßÇàñGøcü þ†?Ç_à/ñ¸{…¿Æßàoñwø{üþþÿŒÁ¿âþÿÿÄá¿ñ?„aL "¤}Xûˆv“ö‰íüöåíÛÛ÷·h?ÜnÙîÐîØîÝîמ֞ޞ՞Ӟ۞מß^Ú^Ö^Ñ~²½¦½¶½®ýb»¤]ÑNµÓíýíwÚ_¶¿oÿÔþ­Ã¨cpÇŽÑc:L:&vÌì˜Õ1§cwÇžŽý‡;Ì;l;ì:ì;;Žu8u¸wxtx?ˆŸÄ/â7ñ‡DòÈ¡ä0r89‚IŽ"Ç’ãÈñär9…œJN#§“3ÈÙäßä€\KòÉ…ä"r)¹Œ\AþC®$W‘¦¤¹š\C®%בÉ­ä6r;¹ƒÜIî"÷’ûÈýä€=ò yˆ%Ÿ‘ÏÉäKò_òù–|G~ ÿ#?’ŸÉ/ä×ùüAþ¦Œ¨AÔ`ŠG ¡†RèÔHj5šCýE¥L¨qÔxj5‘šDMþ_žšBM¥¦QÓ©ÔLj65‡šKÍ£þ¦æS|jµZD-¦–PK©eÔrjõµ’¨U”)eF­¦ÖPk©uÝ+»Wu›v¯îÞßmÙmÕmÛíÐíÞ-èêîëŽêNêNîNíNïÎíÎë.í®î>Õ]ß}±ûR÷Õna·¨»±»©»¥[Ù}§ûn÷ƒîÇÝOº_u¿î~Óý®ûC÷—îoÝ\÷îŸ=F=Ã{FôŒîÓ3¡gbϤž©=3{ø= z÷,éÙÓã×ãßÔÖÑ×ߓԓܓՓÛSØÓÕÓßs³çNÏýž=z^ô¼ìyÓó©çsÏ·Þá½&½üÞå½µžÚ@m¤6Q›©-ÔVjµƒÚIí¢öP{©}Ô~êu:D¦ŽPæ”eIYQÖ”Íw¶”u”²§(GêåD¹P®”åAyR^”€ò¡|)?ÊŸ  © *„ £Â©ggT$EES1T,•@%RÉT •NeRYT6uœÊ¡ò©Bª˜*¡J©2ªœª NR•TUMÕPµÔ)ªŽªï]Ý»¹wKïþ^ï^A¯_oPoToto|oZï‰Þº^E¯ª÷eïûÞ½Ÿz¿õ~ïý£1ÒkFkL4535‹5K4Ë5€f½fƒf“f‹f·ff¿æ€æ æ°æˆÆ\c£±ÕØiì5G‹ÆUã®ñÐxkü4ašpM¤&J­IÒ$kÒ4YšM¡¦HS¢)ÓœÔTiª5uš³škšFM“F¡QjÚ4*M»¦CÓ«Ñh´F¯1hú4¡NSg¨³Ô9ê½€^H/¢ÓKè¥ô2z9½‚þ‡^Iô*Ú”6£WÓkèµôºüzz½‘ÞDo¥·Ñ;èô.z½—ÞGï§ÐéC´9mI[Ó6´-mG¥íéc´íB»Òn´íI{i_j_kßk¿i9í/O7D7\7Z7Q7I7E7M7W7OÇ×-ÖºU:3ÝÝ:ÝfÝÝvÝnÝAÝaÝ…ÎJg­³ÑÙêìtGuö:³Î]ç§ ÔEé¢uqº$]².E—©ËÒeërt¹º<]¾®XWª+ÓÐUêªtÕºZÝYÝ9ÝÝEÝ%ÝeP'ÒIt:•®]שëÒ©uzAé¦ë×ÝÕ=ѽнÖéõ<ýpýHÚ›ö¡}é:ˆ¡Cé0:œŽ #é:–ާèD:™N¡Sé4:Π3éãt>]0À]!]DÓ%t]NWÐ'è“t%]EWÓ5t-}Š®£ëéÓôú,}Ž>O_ /Ò—é¹–¾J_£¯Ó7h!-¢Åt-¡¥´Œ–ÓtÝL·Ð ZI·Òm´Šn§;èNº‹VÓÝtÝKkh-­Ó›èÇé'è'é'ëgêgéçêùúåúú•úUúõúÍúíúýúúÃú#z[}˜>\¥Ó'èÓôéúL}¶þ¸>G_ /ÔéOèëõgôçôWõ*}»¾W¯×CzJOëYýMýýCýýgýOý/ƒ‘gbjmckg˜jXnXm°4Xl wƒ‡ÁËd3D’ ¹†´ï#ûúûnö=è{Ý÷ š€Á©à\p¸Üƒ– èº€Þ`Ö Ÿ€ÏÁ—Ðhh dM„fB³ yÐßÐ"h1´ZýÐzh´‰ÙÂle¶1;˜Ì.f7³—ÙÇd3æŒcÉX36ÌQÆžqdŽ1NŒ ãʸ1îŒÇwžŒãÍÆ `™ &˜ aB™&’‰fb˜X&މg˜D&‰IfR˜TfÀ™5“Îd0YÌq&‡Éeò˜|¦€)fJ˜2¦œ©`N2•LSÍÔ0µÌ)¦Ž9ÍœeÎ3˜‹Ì%æ2s…¹Æ\‡6C[ ­Ðnh´: ÙBv=ä9Bî7äùAaP4T Õ@uÐYè*t º !Ô5A HõBH ¢ 'Ðkè=l ‡GÀ£ax*< žÏ‚ùðbx9¼v†Ýao8†Cáp8Î…OÀ'áj¸¾_‚¯À×` Ü C0¿€_Ãïáo0ÿ€!²Uˆ²†¹Áˆ1ÓÀH#g™&¦™iaL+£bÚ™¦“ébÔL7ÓÃhc`úp€;˜A”Á‚!ša˜~æs›¹ÃÜeî1÷™‡Ì#æ1ó”yÆA_ ïÑèGô3ú3ÂxØ8l*¶[­ÁÖc›ÙIìdv ;ÁÎbg³sØyìßì|–Ï.`²‹Ø¥ìröv% °«XSÖŒ]Ë®cô]a7²›Ø-ìVv»ÝÁîdw±{ؽì~ö {ˆ=ÌaÍY ÖšµaíØc¬ë̺°®x7Ö“õf}X_Ö `Ù`6„ eÃÙ6’fcØX6ŽgØD6…MeÓØ 6“Íb³Ùãl›Ï`»±=Ø>ìf‰Ùb˜;„caX–„%céØEìvbXÖ‚)±.LõbzÌ€aŽ‘…ÑØì.ö{‚½ÆÞ`ï°÷Øì>ðUøj|=¾ߎïÀwá»ñ=øaün‰Ûâθ î†{à~xž„gá¹øYü~¿ŠKp).Ç›ðV\…wáýø'ü1ŒA˜ˉ@¬&6[ˆmÄb?á̱Ål [Æ–³ì ö$[ÉV±µl{š=ÞeϱçÙw8ÿÿ6o"H'²ˆ\¢”(#NuÄYâ"!$¤„‚P*¢“è"º =a @‚"ú‰;Äâ)ñžø@|"¾‘F¤19˜BŽ&Ç‘&äDr29“œEÎ!ç’óÈäbr ¹œÈõär¹™ÜBî&÷Id2™Ff‘…dYB–’ed5YCÖ‘gÉ«ä5ò)"I©"{I ©' $Fö“ÉÇäkò ùžüDþ$‘(cj85‹ÚNí¦œ)wÊ› ¦B©8*žJ¢R©4*ƒÊ¥ò¨ªˆ:A]£ £(êuŸzA½¦ÞSߨÔ/šG§GÓéIôz3½…ÞNï¦ÓGh ÚŠv igÚÐ~´?HÓQt4G'ÑYt6CçÒyt)}‰ÖÓ¢1š ûé›ômú.ý„~J¿ _ÓŸèÏôWšcŒc†Ç gL˜qÌf"3‰™ÉÌeøÌ f=³ÙÌlgö0û™Ì!æcÅØ2vŒãÌø2þLÎD1™L6SÈ1¥Ì ¦ž9Üc®2BFÂ(™6¦—Ñ0zbp†bXæ&ó€y¼`Þ3Ÿ™ŸÌ/Öˆå±ãØ©ì4v&;—]Ì.a—±+ØÕìv=»™ÝÍîc°–¬kËeíYÖ‘ug=X/VÀú³AlÅ&±Él:›Ëæ±…l)[ÍÖ°§Øz‹-‘–û,9ë³6ïl£mŸqLíÔì“ãÛìÛâû.ððÿÛÌ asÆíL^®}nnþÚÿûC‹”<«¡­7ÙDÙòÜ<¼U‘húô¼Ö<âä‹L둎qŽÏ\#\ã=t^]¾{}_û¥†VŘǎŠûœ0<áOÒ¼´úŒŒðüW'+Ìíê}¾†¬Ž»ð&Ë)Ï$Ǽêªu¿½¹ÃR—Ãs<:<ç <}ñ€Ý!3¢§FËcÇJ’7–6œ°:a}æ¤Í|ga´iÚíòí'«­†;Þq>ç2ŵÅm£ÛAØ ·è„èãI’#“¥©…é¶ó²ËòvÌ(ÿYy¤nŸ9hþÕr”Õ u[=üüÿ })æx “˜“q) äŒ*®œ,°Ks:ooÅ'ÉS•eM–‹mÚœ÷¸¼ð$¼B¼oy?™&Œw*º[<›Tš\¾§ü›yŠùKËo×ïCýíÓÃÛ靖®]fîjYææ·Ýj„u‘uyÀùXU¹ÉiÊú†ûÊ’ÿ,÷{\ózãÝç·9 +´+=7ï\å ‡!ÉÂh^r|JpÚµ¼‚‚¨R¯z+ϼ „PÛdËÔùó­’<&ÖL+·¯(4Z–³-;¬†Z«­a›Tû0‡L×Z·2¡7"ò õióùäWœ–ö!êLÔ¥¨¾è›qAq¯î'|IÞ“\‘6)m[úŒÌÊŸ’I¥“*V®^_{ìÔ ‹n;‡ŽVN^Î{ÝžãývúIü^„\>‡$lIú‘˜’”?<ÿ\á¶Êâú^›'6/mÚ†ýîˆ;y;or½áùU°N°GásÖ·Á_Ôý3¦46%a[ꉴÁiçÒK2žeüÊ|Ÿ­Î]•Û˜‰\RWñO¥®Ú·¶ÿÌÛ7‚S>ÿù•$l/\Wï~ô½½·Ë8Ÿ¡~R?8äwÔâÜÓ§žùq¼Ú«§¬‚¬Â­Ï8Ùºt0rÞïUpÆIì6!!>AœQ\,´\h½Þú›M¬ýpÏ^#ƒ{b×Ù\Š´Ïö+Ž9Iûn è Ë.†jqC}bã Omæ†Ù¼²_áhî¥õÿùoÜž„ÖMÒï¬è¼’¢ÈÒ5'¯Zÿ°ß½/Ñ=*ŸÍ p°:d}È:ÇsŽ_¿te¥Æú¢õÁE¿ þ¢Re(3_åÉ 6”à5¸æ}ŽUބϸ€â¨Õñéñí×rSrSóܸ‘ -FÙô¹/ð ŠHžžìc^må{'­ÁÂØâ/««4»;Gýì7Ù·ÿé8ÑqŸc…S¯s©Ë_.\SÜ Ï4+xì;Ûwޝ«è×à¸1h~PrPF°.²:jaÔÒ¨Œ¨ ÑqÑ©qéqïâwÄï‹ßŸx2Ù(¹557mhÚŠ´Âü©…û‹b+æUð«ÕXÕþU;¶Vpº<¹Ï"Æv„ç[?Û2Üî†ÕFn7úØLgÜOÔó÷7–3áÆqã¹ ¥¸‰Ü$n27…›šÿ››ÆMçfp3}*¹YáG¹ÙÜœÊÇÜ\/ ¯{nžo‰¿{H$÷wô:n>Çç$ár‹r#Žö›Ê-æ–pK¹eÜró]Ü +_Çý¾ïÓL¸#]£¼kãûÜ>»y꽞;±Ö×¹•ŽQnKÜÇs·Š3rä̸ÕÜn-·Ž[_ƒs¸Ü&n3·…ÛÊmã¶s;¸Ü®Ðn7·'½³DæþÛËíK÷áösœ·q¹CÜaîgÎYp–œÕ±—ù |“M8kΆ³å츣œ}Ú/ÎstÞôÔf[H«ãô̵æÌ›-öÚ‰í§:èÜŽ ZÏÒ›BŽÄ¾Ix—4;ùÞq0·¼Ì´ÂÉ»-´#2!ZQjkwÔþˆG«7å£ ~⪌~Ÿ¶+½={G^f¾®àXÅœ Šh›DÛâ±¥.v&ƒ\==‡yŸö{“ÄäÈO¿0lŸkâ¸ÈyŒ³Ôu­[¶çjòôï¹…ŠÊüÓ·²ÝZÜå–ã­¬ûÉkìÿrvwþâRàzÙ­Ü]å5Î+Ï{Šß.?. ;¸?d^ú$üwÌØøxi¦,^ÞµÂ7E‹÷—.XjSú«âHeLÕ@"lh„CÄùH¿X¯øÎÄ')§ Ò®¹ë>‚_>A…á³Ã …Ǫ'˜'¤›ßµZÁÖ´íh+¾á~–~÷ƒg‡&E«bå OÓ>ey•g[9 ª|}+¢ût™‘ܱ½¥SªW8‡¦weÔ–î( -ãVåRà®IL<ý¤€W¶¨°ËñøÂ9Åø§fß–Óšû­´„sžv3ò^²GÖÎ¥, æçjžaÈ ¶5bÆñ§g[.¹àbéýT°b_,`^ x;Â-Â#jGìúØÛiS2T™C Œ ú.*ðyë“°·þZ`jP¹ãß¾ ³jlB*k\ï{¡>«}#C6F.Kø¿]±Øú¦Ë+±è9ÒSç}CðÀß1Ð' Ÿù5Ú%eoÆìÌAÙù ;«Õ{8\=Ýo9Îú/ÛMv‚œ ˜ä‘É£Ò\çŸL«|gý'èd„¿mä±Zç­.‡Ü»‰}—ú5û{…lÙ;")2µ8;§à¯’¯U§?9·¸7{Œñ¸!°üü ô.òL¤!ùáÉNÚœ™&Ö.6ǪÚÀ l\ÝŒ òK®–4”æ[/ˆ½TwàÌpói–ƒ¬¢\c}fûlôíõÓ„É££5ñ†„»%‹jæÖ·¸ë0Ïa•ÓŸ@Að¸„ÐäÈ'ÑË2_æÞÉ›Pà\2Ñb¬%mcbãìTávÍwL|Iz|æÊì‰yÃòŽ—l(ÙTs©n¼ïró‹oŽœß9¿÷òõ#Â~…ŸZ–²,ëuΠҿˉºæcÌû-ÞYf[µµ]h[jÿÀqÙ1§cNÑNkçã#ˆ\  ¹±6qaÒ¶Ôµé–éVéµÛ3j2¯å.<[ø¬ðGQTQk鋲;•3+w×ܬ{n3Åz¨í’£QrG[Ç·?=C|L‚R§Çh“ò’î%ÏȪ+ßs¾NnSÜR=»]–øŽò»—”²«>È|’eÍ$›¥6VŽ™Ç<]sÜeùž<㥾9þW©@& ìRp~Qk¢¿Ç+‹§ãû“2“ÁÔ‡i—Ò·¦wgþ—3=÷E¾² ¨°­lZ•kõí3›Ž –º ä ÁΡÂ&E¸DŠ ¯’Õ›<ʂ֥9Ô›1/0?eN[l´Øl‘jqßòÍ6ßì†Ú=>zÛá•£ç±qN¯œ¾;ó\>º.s«qŸåå'¨4ø~ñýá' L ª bC懈Ü7(~küöx÷xuâËä)ÉiÇ3ÆdgáÇu¹÷ó-ó] fÞ)ò)•^¯þYsÿt½õAÎßw"`Ym½Ô9\àdÙ=?º>±*«®,® 0õ.l w;f>‚ ô=à÷6dJƙ쩹^_CÓËÇW7˜´l±D­æØíµ»~tŠÓvçiÎ\׻滞uívÿègàâ±%b{DWÌ·xA¢4•Êý˜÷)?²Ð£ð^ÕLרöÂ_v:.(Á#ùˆˆè9Ñ ¸àÄiÙ?\T®%®Ín¥îvžå^©‚#>e>7}¾ùMöû/"-Ê51$9$™IH{š1>»!/5¿¢tVù“Ó𙹎“ƒ]W¸ßñ™èé[d¬ u‹ýw-K[V,3¿iÙgµß.Ëi”ÓÏ}‚bžeµ;*'ª3&(þzò­»Ô«é éòŒ ǧç¼Î.z\W^vbAÍ‘Sb?g+Û Þà%!Ë2FgŸÊÛ”¿"ÿzå¿g|­=|”²”ÊœßEcNfVºfç…¿åBìGÒIè¾Èý»§‰Ï·È%‘\ÌíXãÄ ´£ié‚ü³eåæ“­FOI’¸!àB %6¯®t°rjrë<Îå‘çv¯Lï‰>+üäAªà܆°9aÉè…Ñ%ÑÅ1ÓÇ%>HZ–<7yCöòìàãÃòW—Ž)õ(m*o©úR»Î‚uòu .K:“RX0¹hré§@—_Þc²ºJ«Fæ8¸×ú¦ßËŸ“¹Ô¸z´õ:.,Ì*®¸¢27¬ŒµxkÃÚý:zË>Ãá×±n§\çÎ]® <Œ=ÇxòÊõž)X+ˆ ؘ´:xZèªðç/#㢆EÉbÆzÄw%Ø'ü›¤L.I¦x¤žN_’¹*«4ëVö¿¹•ù’‚Ò’õ¥;K3Ë‚Ê+Ë•••W*¯V2UFÕÃk*kÉSÓm(‡ÇiNaNÁxè±ð3Qó¢”iÙ™¿\ºå¸]wß)xí7Þ?4À&0/xMðÇÈÇ1¿c…‰G’'¦ÏϘ™¹=ëS¶W¾g~oYNÅìê¡5ž£smJÞ— \†¹,rñrK¯Ïñ ¥=§ykó"Ìg›;X>·¾k³Ï3ÕgXŠîJW‹"›iG×:‚Ç.:¯w6w>â:Èmœû.A»ÏJŸ¾¾Ÿ"gÆ>Šß˜ªÉ:‘çUæûäûç?,´+L°ÿäD¹uõ|ã?&°2Ä9<+‘ȱ+p(þ]}¿ú·Åz‹t‹‡¶‰Çæ:)<6 $>~á?£Íâ]“ÍÒÍÓgVg_ÏFrç,¾QrŠ /Ñ8®rºèôÌ=Ïé¥ó(·ž t."øCبèé ù_Ì»lvp‘•7ƒÆšŸ¶èµ²¶s=¶Àù…ç¸ÇŒöÌëÇç:æÏªÜV©©™P?¢ÞÅa¤³Ü¥Ýu·ûCI^…,(Ta[m^gr&Ö)ÏYá5ÂÇÂoìæJuUQµí©3‚sÆÅàI•Ýçk.Œk“OUÌáÌO'u¤§*©_lþÞñ÷±>›3ãŸ×/´©°í²ïq™ì1Ç nˆ+ÊH©¬®Úm“å™äU,K™~¨úHÀÔÃõ §§›»Yn²jvœéÎy}ñ"6¦­å¢Ê·U\4“ÌËxššÕ–ý´¸ˆ‹µåâ¸x‡'N»Ü½n ¦ ‚}ª¹ÿƒóƒG…‡E1câå a\bj>—”·›K.¨(ëªLæRjFÚóÜÎ T¡Æ1Fñ—óO׈N;dÅóhö, (J×ZîrÜ|ÂGäåwJ:>Ùâ»Õ棎»½®s.×ýƒ­Ž›çZ8r©\—î˜Áep™nA.\VTSüd.;cXÆžÌ %ÛJ\¸ã5S¹.—Ë3¿ÌåÛßw‹÷™Àp…Ñ7Râ B¹¢Ò¡µNG/9,rüvlŽS#Wìú…+áJ½,½6qeþ[‚r‚:ƒ‹ƒ+‚?‡NäÊÃ wä*Â{ÂiîDœE\(w21:ù1W™²’«Ê=R|Ÿ«æj¸Úr'îTÝ®Ž«çN»ggsgÂ¥ÜYîÜI©ˆ;Ï]à.ú’Ü¥°âp ÈˆÉ ¸Ë'ÛjŸžNöé宄«³pW¹k‡¸ëÜ …[8'ô™ëSìï/Zô1dmèŽÐ[a3ÂV†[†ß ãDQNœ8ŠŠÑ'˜§Tp œ$ãC¾{ ÂI+ös²ªiœœk4ßi¹”k²nóÐçcPph_äÈØÔÏ qöÝヸæ\*ß« ¹0k)—sŠª Õ&æ',ÆX,e6ûm·ÚšÙÝrðthuô=6Ãé‰ûNéÑ'8*øããíw%èX¨< FZ'&ç Ï¿Xgzf˜ó¡ ÌÈÝ‘yåCnD bæ$ø§L:>Òj»ƒÆ[õ6zRLXªºôÿaï;à›ªÚÿoIʈÊÙH¨·eï=ʸ™m“&ÍžÍlFÛ¤M›î6MÛ¤¥iKÙ.P–QY²T'" ‚ 2 BþÏMR(ˆ¯Jó÷ýü|{>|¹ÉÍ=Ï}Îó<ç|ϸ÷´Ö{¨¥l>c[c{)ïtñ—%™Î~Éñ\·Q¹R…h%¦5æÇÍ‘™uös¹?æõÎK(XæZà®ï&¿$pÈn(Ê4©¦rZT2AšqÓ3E“rÈD±P›ÞlÚF;MobÇp¢8^ÎWÜÓMo5½²Jü¹´§´Fz»i»üë¦wRç6½›æ3K›vØJm¯äÌÉá;(dçå±Ê˜4žm´{G= ó4íNe¨—éÝieŽÞùo1Ýó½µÞËu7‹ú6Æbî4§w}s9ëdÒãIÝ“žMnLÞÅÝ)"š"¹ª)ÒŽÓun#jšbNÊ?\šW5Ë-lÚã׳—öSt¬pVó© iñ´o˜iIqŽ$‡ñ:‰ r·.Êgžo¿èØYعP^4¥DPÊ-ë]ÞÎPw ‘Š™¨zwzjÓÞ„˜„5\÷y~6ßÎß.\!<.ê(ê$Ù%«èÔô¾âˆâ«¦}*‘J¬Ùª}¦i¿nlÓýIÓhÓ˜¦ƒfž%¶éP:£éƒ¦íëónŽ-ýÔYï<ê<_‰VNwÏsOvÛ<ñž}5º¦š³;5}¬þÄQæØÔôIÓú4Žš7®éÓ¦ÏôRÓ‹Žï*:4}^Ý«¶ªé‹¦/›¾j:êÈw6ô·+K*š¾NZ!T‰æ¨_wn¯vx7bÖ@íEQ^CÝ•ú ’Ï4§Üú1Ѿ¼7—6Q—ÒúÒîQ‘Oú“*\½ÛâÉ8•»&_ZTUr³Tâ|«ÜàY‹¹°ÓTRÓ±¦o8c8g›Ž§\ôp…ƒšN4lú¶é”q²étÓwƒåPÓiëͦ3ŽG#…ù' èMß7u½íÚì.i:×ôCýÕ†G›~lúÉ0&}îþ܃¹¿•÷ÅÞÄv0LCÓyÖÛ‰'87¹»OétMš.ÚS F5]*®qV4ý\§­ËhºÜtC¨ÉÔv“ì´n•{l͆†­ØMöO'çKá´¦«M¿Øz4ýZ@uí¤Ë˜3›®5]ojÂ1TÜ„üw°#Œñ¬Õœ}—ÆMâò„Ñ\ÝCCšÎTl¾fy5s‡}¸#<!E½Šö9/¸özRyŒ‰oÉÖʇ² oGÙßίð,ð¾»ÔÈMS~¯®×ÛÒ¿áyäkõܬ-ÙÃJG{¿Æ:bŸ3Éì‘ìmì‹ ¯¿P0Jâ’oR$¦L}Vý¨~ŠqvÓ Í\n;‘ýb^fÞñ¼ï œ…š¢§Š}Xz¬âqÏºÚ ïzk_ÒîñBM9IY£›¤ûÄ`ÏTºÃµ²ªÓòùË1cTV•óPM_ê*Fc98ñků*,*]j/Í˺¾Æ/MÃ,og½a•ÿ}ASaRÑ5'×õJe‰»û ïËŒS,RòIî{R¶Ì¢»jÜÕt3½Ð¶0«_öÂœÉ¹Ç ²Ê‡»öWH+NV ª~’PզΠÚh›éJz&c!#•-bgs„¼Ž¼þQa£U>®~GÓQ¿1 3“-¨e¬…žnÌZUžµ>kON•SW5¹*¾zJuMMÄ¢áÞ›õÉõê†'ÄÃÄõZNºÔ¶?ë]{:SÈÛίÓ5lÍ®¯ëÖX¹ìÉóR[I:†Õbëi<š…5—³“»˜?•¿žM'Ü-/›"3ËÊÓ噊Û*ej™Z¢™ª}W{V7PÇ7ÌîP±¹f'—Í#1â/MhÏpëË„Djå§Ú/ÍѶhûtû’œØïú¡â`ÕyÙrÅM·’®é“ìǪbj~õî¼*º¬/ÄzPëi™ûާèS.¨©¥™²7Ý®Œ¯ÜïÖI⥓3¦Ú kbå.O•nп’vƼÚü•mWv÷œüìM9õå‹+H‹ì ]0ÆqKÏ(¢ìÑ´óÌl«ˆ-âˆnÈÖÙ¾,¯.÷Ò:Ñ1, ±Éù'ÑH_þ¨|´|•ên—>ÎÔ3}­&o\>§à³Â·h¯&]â¾Ë=+PIVf¶¿ZðuÑ Ï^Ï/t§â—¬D×:ú.Î6áÛÅ ´þM>‹7^d÷"½,{^w0œGªzÞmØq挄zÎДcÒÝš}Ú¦E¶Üü~E/¸¾«ìêÎð|_{Ò;¨ný:ërB±`«ô9}©}KÕÀª…‹FÑöñzj¶koZúelËž”-uZﱟälç÷”dg†Úùµë­ªîü+r³öºÃ^°Ãy ŽÞøÙ „1CîÓÖê.ÚO8ϸ£ÝüÅG¹¬³¢EâBñQå*UwUrê(CuÚàÌk˜µ³õcÛco~fþ§ñEñ®üŠ"ØSîy™º3ñpÚùŒÏK²ëÜë‚Ït÷jæ·ìdî/ÂçDyRaÎ$‡¡ˆR] }™¶.¥‡a/¿-Y­ê¬ÊL}R§NÓz [áP燫«nyº{æ{–Ôt­é]³Ø{tñè%aÝ,I.˜+Z¬Æ lÃzû6g-'5o¸dUFGÇ$×Kl–4Jµ[Ëï¦Óß ©è ˜—8ÄdÑ|u±Æ ¹”õ¤ãƒü#{Üê7Þ J÷ꟓzdD:Æêš4ÐÙY$P¦ß·ÍbØÓÜ}ÙíUórˆ¹‘úq´LNg¸ÖÝ¥q˜(Åh­ý,I”<;åªØ)]/½¡ÈÐ|«lŒ4Ι›‘¿¾âh}/ÆÓIӹƹæS®5U/Tw󣫙ç% ¨ª¢Ð+KÒ4js Œ·l½ÊJ\KZ}¥¡)oµ¨3õU<Í8'k¯ýlî9÷ºõ‹û¸^KJå› s&°ÈÜž| ÿ[IVàx³hRm™—KË g>ÆìÂ*fÝH"ð žâFñFIÂöš“Z¹ecfœã›¼˜üo E…›J+ʺ»©þ¡þV£‡?K¾E~ÌÐÍØþFê/ » UÄT0SûèÛ™¿µ*K•.kýÞú]‹g°vت˜Îk®yõ«^d‹×Z6¥¿\ºÖëÎ'˜(Ø­9h:h[ʳfçßnXŠQݱG¨ Ì8]øïËQÍfsBAF‰Üõ®›V÷ä’'؇¹™Å´òK·p?*…²Ÿ5Iúý³†¾¹ ¹—j=µÕ^ZÝ' cÕLú-ÖpÖ ’gê6í«ö/òåÕK¼ˬ¬Ž¬÷Ó?.þ®ö¹Ú#^¶ŠÚ‰s!ùLÊ5!C\§Ð*§iŠu1¹cùÃnt¼Ñ©>{ž–ÀÚœTÃI檸›Eï«2´†§JšÊN9ÎïÝù ç¿ÁØ®KëÉÏTP æ”.ÀÖ²º%¾l:ãy¢Î×Щ!©¡!‘É^^ÌuÆŠ6¥þjʪüX=ÇûÒâ$N‚©Pש¨GxWƒE×å\͆µ¦BÓVÓ팡 í3ì✧òÇ”2n\ßVÇ×ë¹t›¹tj}XòAê &‹3™wK2Yk56å…çu(XUýa=Š­¦ÏdtK*ˆ5ïé>0„h†WÒªMç̪‚y%«JEîŽîU5Ï6¬¦ëIÂ"…|s§ržç•ºr êYÙìOÙ78vÞ«‚gÄ£Åså$¹Bý£V¥ýP—¨»®_¤?¡?gH1~d¦˜“Í'Òk¬¼ìý9O:Næ¿P¨.|§+”˜Ë3\©5ëê‘z™ð°¸§'#9YÞE{M7Ù<¥qºà–ð«¬.¬]‚Þ¾æí0Ãöðb«óÑ¥˜=Y.nxêxƒÚb±VX·ço,¸èL+ŸæZ]g¾ñˆôªlxæ›™ÛljllÂbû?Kø¬ä¨Z$—)™º>i2ó{GwábÕŠv‚î°i²kZí~ú%þÁjáBá¯"T´@>C>Sõ¼f‡N Û§§-0/I/ÉÚ‘ýL£$ÉM÷V,ÛÉŒIü†SàŠ…‹D×är!u‰ö‚þeƒÁ”š“š·½`dñçj×.FÉÈõ¦ªY‹¹)²¹²"ù>årm…vq‚c‹Ç²x!õZæbVgÖÄ„²„Ýü)—bRšÜtÌÎ8ʸ–²?H#¦U¥Ý,Úà|\^Z´:áEyaÚ¼ÂXf|Bƒz‡€#x[rA^–6ÇùsÕ€e۩ݤã ,òb…PZŽ-½NŸCÿ•ÙQ;Úq}Ùaùê§ õ–OYžÕÞÁÙSMVORÏf´“r?ÍïHûŒþMÂ’Duâ!ÎOÜNüGE ¢zq¬œ/?“Ö¶5íMã‹ÖmHî&§iKHR‘1C¥‹2ÈŒš(JünVe"i”Ö¢1«¢â4²t™&†½pA Md4ÉŒ1³t½T¥S˜bTbíØÑ££e:ÉßEÑ‘#G’ñã˜Ñ£î9â)’ccGƒŽ;’ŒÆFGDÈè?a‹É,2‚*z‰é?^÷g¿ÊB¾sü?’nÿxダÿV¶0@;@„Ú:::H€Gttttt<èxÐÐ ÐÐÐÐÐ0ð$` € ˆ<x@ < ˆD¢1<¬bq€€‘€QÜccãã““SSÓÓ33³³ssñ€y€ù€€… @ÐtÀ° €D@€ à’\à!@ðZ'Èr€ ¨©5@Ðt=o ÓFÓf€Èd¬ °r¹ànðüGÿÁDðüGÿÁDðüGÿÁDðüGÿÁDðüGÿÁDðüGÿÁDðüGÿÁDðüGÿÁDðüGÿÁDðüGÿÁDðüGÿÁDðüGÿÁ P€¦Àý)`O Ø“> €/(`W øˆþ €í)à ø‚e§@y)pO èEé= ܃þ¡€(à7 ø”> €O(à/ øœ~ €(à øŒ>£€Ÿ)ào Äbþ¢€ß(`C ÔJ) à¸(ÄâñG„ø#Bü!þˆDˆ?"ÄâñG„ø#Bü!þˆDˆ?"Ô]"”õ–z¡Î¡œD¨ŸD<Æ6@ÕÂëßëpÂëåspïpÄÑ–þE©ÕüoÒG;j\TÜ÷‚ÿG¢£ÚøÿŸH8ÿÇ3©Aþålmüÿ?Êÿÿí7Å?…A̵ûޏ€›ÂÀ?a¸½^¬†Ï`£0°WØ& /Ëz8BÂðò¿…A¼¶; G܇[ྠ[·Û ß߀Ï`ß0°uØ5 ìÐî¡üa`‹0Ü_;ïÁg¼ì‚#ÄKÿ? ÷}pÄãøñ8>ø>Cƒøƒ¸ ÃcåÀøŒÇÄg€Ïá3ø? ÷ÕWpÄ}õ5¿?îïãpÄcå$à[øŒ×¿ïె׽ïáˆ×µspÄëÐpÄëÐyÀø õ/ ê^Äl§WWá3¿®Ágˆ½0xM3ÿãq² °ñó?ò*œÃcƼ~þ ò?Ä[oóã¶x òPœÿ!ÖÃð¸Çûï#~þGö#~þG"wøù0˜ç0àcä.ÿ“‘»üÇ;γÀÿôQpþ†áqüœ@‚ü”…ó?Ô³0¼Îÿ#g?ÿ#? ~þG~Bîð?r1˜çgÀeä.ÿãõ©™ÿñºÖ„øù¹‰øù? â',¥ÿÿ})dü?2Äü?¦ÿÿ‰tÿüËÙÚø¿ÿÿ+ ¹3þ?…á6ÃÇÿàó0ÜW-Çÿ_a#a¸]‚ãääÞñ?no|üñ6ñ¾ñ?ÄfÄWØ4l^pü??úÍãd'âçd7`üý€ñ?×ÍãÿaÁñ?ÄKÄEsÀÿȧÈþGðy Ü7-ù|†ûÿã ÇÿÈ)ÄÏÿÈiÀø-æã¼N5ÿ‡Çÿ«a“ax¼ÿ#¿ wø¹çñ¸hÉÿOaê6þÿ÷¥ñÿ¨Ðò,ÚÆÿÿDº‡ÿGýålmü߯ÿÿEþ÷¯aCü Áulˆ?bûàZ6ÄâñG„ø#âñ·>¸¾Ýåÿþó ­]ÿÇ×óýëÿDfðˆ?bbð9ˆ?"ÄâñGÄãïÅÀ³D<þÚÒ¿(…ŒÿÇ„˜ÿãÚøÿŸH÷ðÿ˜¿œ­ÿÿGùàäò€B@ P(”œ€r€ P¨TÜ PX¨xu€z@`1 °°° °ñó?b„ŒÇȳp\ÀÇõ/ wÆÿÈM\ÿµø½yþŸŒÇŒÿ‘ÈùèOý ¸þ¯Ãô'€þ\ÿmpÄõŽ ?ô'€þПú@èOý  ?ô'€þПú@èOý  ?ô'€þ„•} ?á9ÀóПú@®ÿKПú ÿBxå$€þПúpý·^¼Àõ°ð&×ÿ-®ÿvÀ;€w;ïvvvööÞìì|ìµ¥Q ÿ 1ÿhãÿ"ÝÃÿcÿr¶6þÿåÿÿâÐßäŸÁã*$¸þþ¼ŸÿýséwøüIÆ}xÿ7¯ÿ#ÀŸÍëÿð§.øþÄùÙþß/;êGøG€Ã€ŸŽ>|€2‡øðà(àkÀ1À7€ã€€“€o§ßNξœœüð`ÚÒ¿)…ŒÿÇ…˜ÿÛÞÿûGÒ=ü?î/gkãÿ6þÿ¯$$ðÚJäÏùÆÏ÷óóúÿ_â?ßËÿ?ß}þùÝúÿŸ?ÿx&ñþçÿî_ÿÿÝóÁçï}þùÝúÿŸ?ÿx¦ñþçÿî_ÿÿÝóÁç!‘6þÿ—¥Öòÿ<‘A¤“™d‚;§¢µ&Ž÷øÏü;"nÔ½ü?zmïÿý#i¡È`¯‘å*ÌD–ëäf’eÍ%‘bÇKŽ‹‰E"Ͷ¤ªÈl™QŸIŽ×A­È¬ÒëÈL«É,ÓšH ÓXÓÈ Ej½Y9£ÉdjºÌ˜®’eH,¥ÊD†o&<‡^N†?>Sd‘NøÞId©TÒéÍd‰^+#g¨ÌJ²Vd¸«*ɬ”‘%J<»™ÁTªäfÁ¼xf„_Ô=¿É,’¨TCè’€«l¶èDf™ÆI–‰$J\¸JL f0‘•"Y«7Êàhª“áwÆ "0üë<Áó&²È(#Iô:“J*3ʤd ²˜•z£Ê J—E㥇_àö²Hr† n‘. ”̬'‹eT2üvf² þ™ÈR‘NV¶˜ðß F}:¾[~ÍJƒj œ2úÅ«tf£^j‘ÈÈ&li@†*Š}çz¿™@ é®ïï¿ÇËÉñÓ°i‘`?xGFž%ÅËfÑFúå€ÝIpÙ"Òh¬d£ß°"2n™Îd1ùuÊPi4PT²H¬‘=°T~¯ÞïÉ;Þ#‘â¢É3Ur9˜Qg¾ky¹Q¯%Ë2U&35wŠ7j a8ôAU:\o2‹‹õßêÎõàªæË@as†LvçRtìx¨hËëɱѱw‚.˜t_¶Ø¸?ÈAf°ˆ5*“¢Æ_”f-$~›U-x4²ú/¥‹T¿!THr³a|L üm äŠÖ14\ $fá4-›ÃŒ™5ɚƌŸÊàÀKÍb³üÚ<´ŒØ8\F$™d”™ 2 åkôP¿®wkFгþpáÕY†× x}Æxé)²ÿr²Z¤ƒf¥eeò_ìo] £Ad4ãu†*1ñ³fcÑÑ#G¬â'^õ1þ Ñ&’léM‹L®Ò©Ìf莽\®’¨ ªÜ ¶Þm(t@R8 í“Ìñx_k‚»ÿZ@˜á¿üN¿ÊA‰¥‰‰$éDZ2•xÌŒŠô7wÂ×#¸À{ë"'wlnRé$2š;b&n·f‰èX\~^A†Ç¡À¸CdZhoLÊ¡d£¿ 4{þG‘†à˜M¯3ƒaÄ"ãP0ûl‹¿LëoËîjK–hd"#À$²šmY‹w&©î2Hã·×?ƒèià5h>LÐóˆ$›ðæÚH0ÔŒVDG’ª$F½I/7ãHÓ lh ¾î4zR²I£R(Í ‹ôwõ>7ÍM±N¦ YFj¶¨ä÷՚ǖ¥mþ ²{Z~Òý-ÜP²¿Q‹Â›É 6s|ôו¿Ý„`…šCp"°©e¸*ý•Ú‹ÎomÒÝ«ðü¢×%£¿ÜF™ÚF£(îä?¢MP¥EÍœŒA0Ž'ßùLb›ÉŒxÆ/œEÆ£u(iòÂøé2E;ž;†4™©·%mZ /ùMêY¦* Þ4W¤‘'©¤få|‘YõE„G#@ckI“ƒ2P‘ Фþj+2KKá4#JY f¥‹4–fJ†æÆh2ßá¿Ru§qV5‘ÇÆF›M—ÎB£fÍŽ&Mž¦Q‰LãÉ ™‚ùþ{Þ9#1ù-àwÜl\4^ÍñúØÜ9ñÛD†ûJÐ2Ü#EIw[{(XËzÜ"ꆴlå¦fΟ͂x =âé·[$9ÂoÒˆ€9 ÷Ć*½Ø_‹ Dàl3èÞ­AP¯£I3ñ¢ûs7K»Ç-yrÌØÈ{¾‰[·æ]*2iÒ½ä:fè”fÁ"-›^¼® ƒ8ÁÛ³ ì3Ìß1$:rxE†Ú½*¶>=Ø …÷L «ÂŒÃ{ô6µP:6Ô#AEÖ+Œ"ƒR%ñW‘ÄŒ_¦ðße†&@P™Ò`G2ÐRYýu4ê`@àò£É³¡è²L‘¬–­ØÝV‹Dµ0',hð0ົßñö2~zË+pׂT³2òî}Èø§Ù ±`(‡Ò_»5Z=Ô ´þƨ»& t­˜QÓ˜3âãIb‹¿UÂc;Í¢2ãò¨þ¶z̬{¸$Ðy¹˜Ä"‰Ú¤. ô-Ì* {OLž«Ïùý£ÅÍX[«Å+ê§E¤¸ÛØÏƒš0”LR)tîx *„pÃï!2™,ZYoîÑô®IpEïjFò÷ÕpÍÀ|¤ ͨ7èMà­û;džÀÈÏJ`ô@‹¼¤±à5澞¶9Cÿû^6Nò³fDÍ£ùeÊ¡$á©~wÕÝHñwX™H¤¤àX—Þ|}$9ØUˆÈŒ‚îqª!ÊÒܾø»ÌÍgSU¦Lœ«"œ§2’I-¬¶Ôë@> ñ·@=&péÝî[øpâ†Ø‡Ž‰ M{T‹¦· ´í-NÔ‡³n i›ÐÜýÿ}„Œš; cƒÇ¸È;¿º{K’?Öî½g3¨4*³µO‚[ƒ³?ä?›,"“X2ÍxòpèŽ566.jLÜzm³E™÷ŸŽ%ÍŠÒ‚óÆ“µkÑT‘Á$•D«M†h9Ü%¿I´Dj ý·'Õþ¥ÖÎÿªõª±QÆïÿ;ªíùï$áë¿þ­lmë¿ÿ£ë¿ÁýNÛ÷'mÞµwp/Ô§ƒû¢Ž î‰êî_ZÚbÓû¯>Eì+Šï7Šï5¶‹€òDàåóOá~Æ×kñµZ|möZp/Uz`ÏTü=&ÿ¾©¬à¾­‰Á=[ÙÁ½U“ƒû¶ò‚û¸6ïÑ* ìùŠ¿Gæß÷UÒbOVy‹}ZUÁýXÕý[ñueÿ{TÍïpÍnñþÖÌàû\³þÂ;\Ô¼Ç5:øNØ‚à{[c‚ïr- ¾Ï5'øNWt‹wØ·xíéàûl”¿ð[ÌÞcÃß ë|_ o­Wð]¶¨àûlÏÞikKÿ¦ÔZþgÌš6sá¬ÿ|?áÿ£GŒ¾ÿGÅl{þëI¬À„ŠQ&1ëV| Ò ã?¥«t"øÞ¼Œwû“þ)y“L`pg8šïŸ~ ¬Q4"I`îPÔB8ŒÏ‚3ŠS[,üŽ?+Æw×}4´Fâ‹»º»E³Þ?-îŸ&×èEÒ»ï ï4kG’[tÿÀCd"ëd2ÈM¦â#ã •IF¶ê-P¾€Tr>‹„ŸÁ¯ *w[I²L Uø7\ Ü*þ‘]³ðÀp6°ðe"gÈ@k…L'ƒ±J@U¯ed“Ĩ2˜³Uøò¯)0ýæŸ9ÖK-éžUðHÿ8K¥‘Ý)Md`„ W‘#ª–ŽÜN LΙÌF Ôá’àmà¶ûD§XqA÷f¿Ww>Wl1êD-&üE‰$KÁ5† Zw†ä-†{Á¨Q÷Í5? ’gÌŒbPâJM_î·Oó ³yíî¼³V¤³W”‚³Øzc`9æ?LÀJ³ ##£å€ß6d•J‰‡Ü=¥Á'IîÌ" DòO™ë`xÿÒ¤‚J>05Ölûh%Y .>K°’?”É&‹8ên« ¸@0}pý¿ül‘€›Z<šà_x…ÍЈŒj(¶â4S&‘iÅp“XéãÏuH“Z™àzÝ0Ã#(¸Æu'úZ)8‘×"ÇF$à«{Ÿ ™øg£ýɘƣ=]dTù}djž_¼Ó@$iýsxÕmž•Ç—µÆ“H÷LBŽ{§ ï9œ¶ky®ÙÉpªÓ±ƒ“„&‘ö®xËã?é¿/äïÔÓN:‘3D¦ÕU|êÆ_Wñ¸[YbÇ %‘h™œŒó4Ù¡Ìd)dä!~$k(Y$Ö[ÌоYƒá[ _õφã§ãŸIÇåiõé2锽§þ9Y‘Ƥo1/ý@w>Ð1Uºàäöóø=ÏÑÃ¥"p½IdÖ“'ZßµS!ldAoûýx"ä~w϶pHp‚|9¨Ï=áÑ*õ·¥¡ƒ@ ¬æ™d¤åÑë¡ðóE:Å |BuTà‰R½Æ Té¦âMØF¢´è:‘6ZÁjœ µ„©‚öÄT[òÁU3nt°jþÿçÿÖöÿ2S²Q±q£Ð?šúûó?cbãÚöÿùG>ÿÓÒ‡1[ÛüÏÿèüÏÝçðÉ}ƒGð lO¿Ï¡=øÈø¾øPÿ>üøþûÖàïÁ÷÷Éà[2ø– ¾$C,{~؃Œïk6ðïÃᅦë´"°Oß=ûÿã1xßóÿþçå×ß>ÿß¼ÿ/þüËýÿïþßÐÿ¼û6Äÿ·üûÿOFÚöÿoÛÿï_–BÈÿ±!åÿØ6þÿ'Ò}üû³µñÿÿ(ÿ#wöÝ#÷ ìw/ÿ÷ãÁ×G:øß¿Ä€/¾.}çþ ÿã{Ðáüï߇ŽÜ‹/ÿ äÎߪÃ÷úÃùŸˆï)ä|MÇ¿NƒÇå}ïÿáû6ó¿¿@|Ï;|/¢ü¯)ù÷ÈÃý²-¸^xp¼$ä~ÿÀ¶ôoJ!äÿ?ü €ÅÿmÏü#é>þÿ«°ÿÿgùŸ¼®yüaPý{þo·ç¾ñ?#p}˜½ÅÜÁò?äÿú¾ñ?3˜ÿ㺭@þO¿ÿ|„üí÷ÿññ?ò ’÷ÿ‘KÈß~ÿÿ#·‘¶÷ÿÿu)„üÿ‡à¡ø¿íýÿ$ÝÇÿõ/´ñÿÿGþ^3îÁ{øü9ÿ¯ÿçûÿqžÿ‹ûÿý-þÿÝþˆŸÿÃ!8ä‡üá?ò‡CþpÈùÃ!øÖ€®á?ò‡CþpÈŽçý‡pè?„Cÿ!ø8ø8ø8ø8üêÞÿèŸßÿl u—Ü%hÿ¶ô/J­åÿ>‹qß=þ#ÿÇÆÆAà~þ3²íïÿý# çvTàiüUuÿ˘tñ¢‘Ó‚ŸÚøÿ”ÿÿ7ýIº ¸ÕŠü÷ËúOhMÞÿEüåTyßÞnþô.´#aÍW |À÷¦•SIùÓÔ¬(þyÕïwiWçàESþ\ÞJ¾ä¡õ€”»’ïvãïËÈE~#üvÉ×á·懽ü02ÄG]:àXÉ kz(=î¥ ²2±Ý‚ÖÉÈEVŽm·ê!e„áÀ?¯¤·ûêaõ ÿ_I& XaÁÏ+ù„ù+ãn|àË£µ2üë–­•! Œ­—>(2rC ãXëe´Ÿ !q­õ2:$„@ÆæÖËèØ-2ô!q¨õ2:=tÔBFYd|ßz¤?yËï/Éx¶õ2 ûó*ã¡þŽá}2Þn½ŒGû…@†52>o½ŒÇþú_ýc5!ñsëet~¨ç\î‘1¢óú‡—ÑÅÿô8Ñj=ø]&‡@Æ’ȸÑz]Ù!ñZëetëoÇËø¨õ2ºG‡@†+2~h½ŒÇç†@ÆÇ•OFbdˆC ãÝÖËxâÉÈÈŒ‡Þ•Ñó¯ÿ…³?–á Œ«­—Ñ‹Z/£wçÈЄ@ÆþÖËè3$2ŠC ã»ÖËè;=2V„@ÆíÖËèÇ Œ7[-£}ÿÞ##§ÅçWfô¨öqøøBr€œìß_ôP2‚i{ÏÛß›Ôßþ°ùË ü¿íÿP6MÜv ãV&õXÞo^K¦ýyŽʸx±Y@ýCÊhc~m½Œ'Y!±©õ2v ]dl½ òCí[uŸŒÒÈ8Ózƒf†@ÆÃÎÑ·ñ0"î—ÁŒ·Z/㩾!‘Ÿµ^ÆÓ#C £:2.µ^ Œu­—1ø¡vâ¸O†22ö´^Æ3O‡@F~dœh½Œ!!˜Û‚¹­!!˜Û‚¹­¡!˜Û‚¹­a!˜Û‚¹­á!˜Û‚¹­á!˜ÛŠ ÁÜVdæ¶¢B0·‚¹­¨w[/#:s[Ñ!˜ÛŠÁÜVLæ¶bB0·‚¹-4s[hæ¶bC0·‚¹­ØÌmÅ…`n+.s[q!˜Û‚¹­+Z-cƈVÍmùWùÂv¾?M!"áH{¤Òé„îûõäQä1¤3ÒéŠtCº##='žH/¤7Òé‹ôCú#'‘„D O!O#d0ò 2Š C†#‘HÄ (‹Ä!#‘È(d42‹ŒCÆ#‰È$d22™ŠLC¦#3™È,d62™‹Ä#óùÈd!‚!TŸÈ'öI|RŸÌ'÷)|JŸÊ—êSû4>­OçÓû ¾4ŸÑgò™}_º/×é³úl¾,_¶ÏîËñåú¾<_¾¯ÀWè+òûJ|¥¾2ŸÓWîsù*|•¾*ŸÛçñUûj|‹|µ>¯¯ÎWïkð-ö5ú–ø–ú–ù–#´ =èþg",$᎑$„pd„‹ð„!"BĈ‘"2DŽ(%¢BR5¢A´ˆÑ#$ 1"&ÄŒXt$ÉD¬ˆ ÉB²;’ƒä"$ÉG B¤)FJR¤ q"åˆ ©@*‘*Äxj¤EÐ0´ïQ_gô¦¯¯¯Ÿo / mD— [|S‘վɾS¾)è-ô6º]†°ch8Úí€þFîAî AÂCû“{úxäÁd ¹7¹¹?y€¯£¯Ú}Â7Á7ÉÇõ¥ ÑN( }}} íŒvA»¢Ý|DtG6"Ÿ#×|"„¾þ¾'#䊈'#Fž>x*²G1ˆà;í#"«g}á>‚¯½ä##/n?8œr€ò!åÊ^ÊÊJÊ ÊfÊ&ÊÛ”·ÈÐ¹yÕ ?8V#:F<QQ‘Q1,bèï~&b²nÐǃŽD „?AŽxþ©îí":Dˆ"©ꈾ“"DŒŠy﵃†“ÑÁúÁÚÁ©d2yòZóyÊE_W_7_wßã¾¾'|=}½|½}}î»Ñ _„ï)ßÓ>Šo°ïßßPß0ßp_¤/Êí‹ñ¡¾X_œo„o¤o”o´oŒo¬oœïÞ7’¦ù¦ûføfúfùfûæøæúâ}ó|ó} | }˜ê£ùè>†écù|‰¾$ÛÇñ%£ÓÐéè t&: ÎAç¢ñèº]ˆb(¥¡t”2Qš€&¢I(å É(å¡)( BT„ŠQ *Ee¨U JT…¦¢jTƒjQªG hjDM¨µ éhš‰ZQš…f£v4ÍEhš …hZŒ– ¥hêDËQZV¢U¨õ Õh º]…>‹>‡>¾€¾ˆ®F× /¡kÑuèzôeôtºÝ„nF· ¯¢¯¡¯£o [Ñ7Ñmè[èÛèvôô]túºÝ…îF÷ {Ñ÷Ñ}è~ôz=„~€~ˆ~„F?F?A Ÿ¢Ÿ¡Ÿ£_ _¢_¡GѯÑcè7èqôzý=…~‡žFϠߣgÑsèèèOèyôz½„þŒ^F¯ WÑ_Ð_ B5¡†°ˆPKðêõ„ÂbB#a a)aa9aa%áYÂs„ç /^$¬&¬¹?Ú ›› [¯^#¼Nxƒ°•ð&aá-ÂÛ„í„wïvvvvööÞ'ì#v%v#v'>NìA|‚FìIìEìMìCìKìGìO@|’8H&"FŸ">M¤Ÿ!!%#'F£ˆÑĘG}s"¢ÄXbqq$q‘NMCKGOœ@œHœDœLœBœJœFœNœAœIœEœMœCœKŒ'Î#Î'. .$bD*¡´£*Ϊ¿jÛ·7VŠ{f//}[ÆUÒI^§œ[»·®BAÅNSIÔ…Ô¥´øÄËœ1œ#Éa¼NÂã¢."ƒüqU¸áM Õb°Þ´¯·_tì,ì\*)oçNpÛ˜°Zìù¤ãŽMî™1„ý³n•{¬-®`H~ù’ú4¦õ6ëdâ ÎMÁõ—µ?:¾+Šòн›¬G˜W¸%†sß®zÏ{–©_ʳ½‰uˬÉûM78±wQ= ¨ï’ œÓÌ5Z¹ùëÚªÄé˜Ç=ß{¹€Úð(ódÂk\T&'˯(‰š±š+Ú¡fnúû6¬~dþÏ¥\§°ú¼v“emúþ†ÝÂÊÃ*œµ›T•Ìõôâ¤îPagr·ð‘¬‘\Õ¼£ïa¨Lë‘ÆIûÔ4%',?=ÿpQ[XÍ]Ú­’½¥I¶PèMœhŽLà|-~Kv#u˜úõSyĥ‘K;/ÛÅ[©ñdщ¼ù¢×òö(Ó"ŒC½Á̪tCmÔº+Ø#ÌžØjuu%ÕÄXÁ¼˜Ø‰Ó%y÷5îIëay‰b‰â5õÍfƒÚôžµÂºÝ61«$cþÑbAFÁÅ‚OJäÎM‰C]««Î¸±º'‹Ô]¼³ânFŽeBÞéü·‹o»Þõînx¼áSìµoÙ©ÄoØóØûù7? ‡  Å¢ÄÝÅÉÆ5N“Ë•´ƒeAz±Ý’ÿ|ISm¹·Òµ”þ3c;§'k3wsJO‘R•¯}%³¢ð@i’ÓXóââ7´š†ÕÅ_&=«ðPÝ™QXÂ"ò?Ÿ”nUNTŽUo33ß´©Ë—}\¡®"¸Ï×>ë]T§âÊy›Uöú…õ˜¤1‹œ:<5WùÚ’Çô†1a©Ð þI;A×Aw¸[Öµj&ÖcÉ8毪~©ãë •Ãè<ÛÎÂMž¯k\‰Ü¥C”á…±ÙÏ3:æï6ŸÁr¨ôÜ$ÆŒïSn&,fãœáº¸õÜ£|#ß*|V4P$m—•‰‡•Lå õd5S“¤Ð×ég™7Xz§ŸÊxº4+³ÙÏåŽÎ½äXš//XV¶ÙyеÖ]¸ˆ^[Së©]å•Õ}Ò0$¿76–5œ÷FÊAÓšôykr¬xÄ»£¾[=«žM £vf¦%,IT&ÝàÌávâîâ¹ùòs%ãeŸË¾U TPîJðQõnM/Ý’k˕ؠs"x»¬ÊÙÛµ¥"£ò`Õ€úownœˆ9hv:©á.LjÒŸÔã+,ëœÜ5%7o•$ë ö×­`ubÖ*Y©l§!ó…eÙ!¦™»*¯o1ÍÝëÍÂöR»1÷³Ær_<.¤ÈèŠIšé£æ”!ÓL°¥Û^Îêhï›}Û.—}oä2·ñf¥œ,>!é£#';c+ŽU_ׇY_hLÆVck±uÔFê ÚaúÛ¯ô4ú¯Ls3—ùcÂ:vï¤`Œ`ž0FHj%eœÔùšÆ÷Œç3.:®ç…çw,ÂÜ×jNÖù’'c—èÇxQò<•–7U~Ye1•)iÙy´ÝŒï’æ¤Ü®,{Ný”z’y¤5ÏúvÖ|ûþü­KsËåãª{³V;°Úhæiæxãç&oƹü3•¯4ìix¿ácz†¨o1?aƒÍFKç~âžã-ÂâRz¾çÑys%õ¶åšš:s•ÈöRšÓ[š¯ì•cPÒk4ŒË¬~Ekç>WyÈ}’)/-µN£¾GÛÎèFŸ™ÀLŠ2ýTΡ Ä‚B¡E”.RˆÖH6IÇË4r½rºîq‹Ü6)û¦}½!g~®º sÁ¼âCÎŽNI¹¼òV}ߥUùoT}Ðx–Q"(-пëmPN£yÔdMϲ™í´Ò©Î§±_iãhƒi2z6c,C’ðbRvxòAþ Ñ&Ñuñ‰QÕ?u¨Ñn\gŠÎì‘©·[3u¬)+/ïãú¶òc·¤ÆâµÕ',~|Y&}s9s3?K0X×Oç6šnÛgäq"Î^†Ña~ÇÊN¼Á9Ì•¦üÌ_+xFåLÊÅMMƒÙ”ÙÎI«ñ–O¢ñ_” §½J[G¯P ¬}l>gwƒ@%^(Y©œ¤6é:ìž½FG晃­ZY¥-øºtGU'o#Cš4DAËMu­¤oIšîƯr:¶°6¥tNú-³vé *1U.,¢è¡øÅV˜•h¨‰Qò×gcö¡;c¸ÇÅ¿J_–žQD©ß,Zã=œînüL² ¦}ãÚôwä ¬­žù/MxVZ-“(igLû-OeÕåä×–¸Žz2ºÊÖÉת˱O±#ÔñÔ\Æxæuæå„S‰GÙ?rpöq|\o!¿¸àsáIY —'{Eö¶ì¬b©Z¬ÎÒt1ͲÆ[wd_·÷±w¬Êk—w¥Ìëä;UN¹Óå¼àÚëúÚ{°þ7µ+§N¤VÐiÜ$î Ñ\I˜|ºzî€f›q²ùmË‘ÌÖñŽG#ò~(\TµLC[–+èRÎ^:Üv£ò:·Âû#F`þœt›¼ûœ°L—«ooÙîú»¼É:A3*®æ/削æå<™ß™ÞÀ#J”rÙ’4u²½—#¼|@å~·®x¯û%Ú@Æ ÞxÓmåYày¿fxþiî{‚Xa6ù·T<_«vÏ™NØ¢óÔÏz ^zwæç¬T®ORš:ξ®IüŠùKÉ­ãŦ|C½ ßÖÆYßµ°OÏY˜ûqÞùü…îÒÙeÆrw¥¹*Æë™ïÑx÷x–`ïR©ôYÌi‚qgÅÍ4Ý#&IÎ`Ï¡êæNî;ÚÃÖ”œèìFvNÚrúRfÕ%ê~ÞM9%cíT~ÿ}à%ÙO*½ºL{EçÕKÓoÛ{¤œt[<%õíégÄSåù—º¾ü×ìçå׋^)ºæ¼ÎXÃü’câW Ü„êï¼RÚëôŒcL2só'ÖÙ„Ù ±‰½8JÎöä‰ÜWyíy]xÝx}ù…|'ÿ„À ΊJ\’ yù£ò(yº"G¹*u`ê(Í[ÚR]';mbÚà4…eoFXfŠ5Ì*³^²Èê–ý¢}œÃ[ðYayQ|iJéç@çD'Ëir‰\ßxž«–×ä,êí]RW‘°ŽØ“X½ŽaHú€=’}Á+Ü-½­)µ3¯YL6IáåFÏ5äÄØ¤«õ·ÅçU©½içsXŽŒ|cÙ™úã% Uy¨c©'©¯&tH&sqÏ vŠ0IŒlƒ|¾ò‚ªQ›©ýÙ2²5c •o=c‘w*ÿ•¢—Ê^rޝ\[ÕèŽó«ë€½‰í`ØöO¼G,}y“ò0'©j·WR§Í¢8?¬ïè'^a®v÷bKÊçS$«5# Î Qvyî‰Rƒ{º‡UÓµ¦··ÊÌ_¼+¥CŠJfP¬ªXí=*Ñ)âU} v×÷ò¾[z[_(µq¯c= ‘–y }c4ã[Î'‚<á3⮲)2³| Ü¬¼¬ì©–èÂFËÀô£ÙÛ‰ìK¥·Êr+œ5Îîžê:FGVfëœ×Þ»%üZÜWö¼¼‡ÂqŶ0{aÎä<’k]…´âd¥ s £ƒøKÉóÒéâzg”­ ë]ç:ïöôüGKâ±/és™3˜Bî³¼v¼ž)ÇăÅs¤”+Gjöigi{)>ÑóÒ°4»ì€-7k½ý«œy¹«ólùýòǽàÔ¹>¨øÅéΨ^_í©-h|™±0¡P?6m4]i-ÊIÈÛœýAâ6·Zò’ü¶ü–*Ùø¥¥ÊRiílM´Ï®³“í3‹;8Gz'¸EËÉ´ïæAæ·´N /±/p¨ÆIÜrž”9@xJxE“H¦H¶IÉÎÉ›RN©©néŸH;•YÎ¥_·Õd·h_âİ 5…oÝ,Ý]ap‡¹µ5uuýw§}È®Uæ}R4ª¢£›LÝI33æ0MB½$^!ÐEVlv¤~Îã»öË>´/f2J½ôtÉN.›«æ‘¤)ènö§/g˜Æà¤'Lf?Áy^xIÌTìÈ¥JðNmصx•ÉnϽíèÊÛÈ É¢ùâ‘rŸæ’îÇy¹ùGJË]o¸w´×¹ìhãQìó癬HOEý‚¥Mºc†g˜Ì„™Ü"1[¼Lü‰f•þ¢9ÂÙkÑXýç킱ô3`ž£Îv³ª6pRóbSnÙ~¨zGù•kŒñú’¹©“œ°qLvbû$¹x·d•ìŒÓžÔq ë3ÎÛ.f½dßæ˜äØS|ÀY[ÃM<ÅÞ+˜,[/÷¦:Ô¯ZÆ8÷ÒžÎ8„ ú er›Fh¹j뛫˻ZÒÛ=«asÖ> ÏÖ”E/Üåîj=g«.|2c*…]æ6Nˆß–OTü¬9[¬.ÍpNð`ÕW>Jíel–ÿ}a’ë,Œ>›~ ¡œû ¿'?OÐC0J l]–t“¯R ÐëŒ ËøŒñsÞ¸¼Ì’tç;ί+Š*®T/®Í¨o·ä4c·$)ýªâ M©ékgÍË^“–Â^¢ê¬:Xu«f±å¨»/;YÙN²Eu“:C©ø¢j[Ñ`û––jŠÞ”ʾƴG‡±HžSK·`ë©G³0f¸–±æ²Ÿæ.æà×ò×ó¯  ]âW%ã%)_ÑLÍ,±VÚ±ŸÈŸãlçÞôú¨Åhí´CŒOY²Ûñ:‹^”.Ó>™±ÙvÚqµèfVñN,íÀœ"¨lÖ.1Z3$Öw²¾Slüɹ^IHѯÛòT#yó–üšÿ#w·'Þðdb&O/Ü+“k\®d÷´úÇYtùÞêÇ8sÝÏÒ‹°…ôŠÊ;Ø[Í|•¸aKÑ’ÁLR +{OiR0o¢ kÕ9f;×aGY±•ï“ÆLt'Ÿ7¥îv“ãrVèOZ7XÅÜï ÓLÃÓ6òÍ‚_$YÒÅi;³ë±üß°ùI_'®®Ñï´?渕7"ïªMeuÅÏ¥\;¥ëËJšoµ“Í£3G&Ïεä¯oXG½Âß)>&©–%)ôé; oV õ,¤=–Ô”\­,R™Ò¤Æ[®×Ù—]'¼©î>%¹Öï2¾/JaȘÉâCŠ5ûÓíY‹²kóGVý(?¦'Ûçô+XÛ°cÙ ô[Y3Yo8J²æ¦žå‹. Ý"¤««Å:WºÍS·øj×\ƒxIµöù%çmlNñwÞ·¨#O3ç11òÛK#eE®f²3Î5¾b:oaåLË,:çZ“µË³'MUß½þ¢d’\eIMÿ.ó£¢Å˜Ã˜tÖ`N¿D-Ü$Ž[ÅkenõÍA˦ô—3=Ö/ìr3Ï—®unumsçÖñë¦>’=–ÖÀ›,xYQ¢þÂ<*£Snåò Šý¶^Ìq–òÅçò¼¥?;ê»-â¬Ùî‰JçÇäF{×ôœòHê/‚ÔÔ>š1úvæo­ÊR¥3Áeå—|hÙmý8ÿóš!Õ— —Ÿ_ÅÚ!ÐÈ\Zžá ׋®Oê'Ȩæ_±Ç°/’Np†'˹é«ùþaOqº,Cö¢\§ÕGg Σå-Îo(ç¹V¸ÎT˜½ý½3©/KתåùOŠŠRÝgya*fýêB[Qµ C/XߥxÌZ•g-ëPV¬ýEÐKœ yûШj¬f´gMH4³7‹žëÒúrtÙeÙߨûy/ÉJ|¬\ÞʗðM’b6¸hRm™—›mª£ÝdïHOÌ|‘AÉx¾¨[V1Êédœ“µ×~¶êͪ#î…Ôwû’‡ ÂêÖSå÷ªþ!‰ IP«,ÃK¿®êa›Î8ή%ˆIò—Õ‡²§œ£=E½Î gÍfÇrâ¹Ky—xS†ò½â…l²l«âÍ§š“†¦Ì¸œáŽoò7>ZøSI»²îÎa®yîª?®¿µäÊR FÅVÒ*‰Ió8«ù“_¾O‘oQôS|¤ü˜^mäx)ou9âr¹Þ©ÎñƱÈõ‘Ì^´O™<öjé&ÅH£"Cn›í9ÃØ©Y©.f#ü–"2÷&ýdú©*ól#kÙ¶¤œ­òg‹Õ°Î©¾ä'ä-QÔ6¾¤¸½„¡LÁ^ žb¾/Þª®Y[µ‹º>G»ì¬ƒH¬sè‡=Î2)†5ÎJ¹’UË[ÇÝSÒ_7¯ð°­G^GNCv…¦[™ñ%'"mQq´î™¥"Õ#ɹɽéϳcÙåÓW]«®_r•óƒ1E·›¾P¹ÏþŽý§:ñ²7¥™©ƒ Úq ¹õQS¿ôËöMŽ^… ô8Åe_¦_Pˆ¾†pÞÓâ Ù9® TáköGjÌ0L@Óß8Þ1Úó€’ñ-³P`µ‹Ö9GTVÔ%*®½¼ˆ)ê$ê¨ÙšÎpž¯›C¥Ó‡1ö2pŸçÛ…+Dù’Ï_éZ—i´iŒ%ÖJ+ýÔYïžçö¸ñî*©à<•R9XggYÕ”ú®´õülŽ—»•ÿ†ä+É éùתyª/´è^K[db{%×é@ ã ÷•啪$¹e^{I”#ö¨ã4ZsîÁÜß´ïæ•¼Yz]!+ØX?Ñ{MÛÏ.*œäIÅÒ˜–šš¨ÿ±èPqTÙ‹Œ¡¬.<™S®6·7X¾-ý°ô¤ç ÷[o¦ ÜTb;PˆIVXdŒ2í4Ýs' 'S]í-¶}½¼‚úšH'Û]Ìʱ—i_aƒè¹d Ê<í[¦éÓ3ÖÛúgŸ¯w~ìÎö|èµÔ÷f4ÚÓ†3ëuÚi™Gä­æ}vIÒ²åf!{š¶ÁSÏǾ£Ž¦–Ó_glLySØß´É:1ÿ“ê‘Þ×½¿Ö‘–Õ-Ë_P›½ÏÞ/}¿O8_äÖ?•Ÿ=Ù~Õ¡/¼à~ª&’5½QŸú‰¡Ìõ^Åź8Æ–äiüý¢¢—*[µH›ªïbË:ïsä”Ìw@×.«±:Êk✟ѢX.gš:Õµ+¯ƒð°bÅÒËXV¿¤«S]´£H©Bt9™uy ‚G±®ØØ0,MĦ`Ó±DŒåcE.5æÌï.x «Ä–a˱Ø*l¶{ û;„íÂö`ïaŸcß`ç±ãØ5j'j2¥r©)Ô$êj:µ”ZE­§fQUTÕCÕS‹©^zoêêqêÔ/¨G©‡©_Q?¢~G=MëKBëAF£Ð©ý©¿ÒцÒ"©·©iÝhíi3hsZF›KK¦%Ò4´Lšƒ¶˜VDÛBÛDÛGÛOÛL{öíÚiÚyÚ)ÚZíz'z½½'ý zz_ú úxúúDúúúT:ƒ¾€Î¢‹m×é*z*]GwÐó¿ »èeô*º‡^C¯¥{éÏÑ_ ¯¢¯¡ÿ?ÖÞª¹†‰Â”b‡™Ùafp˜;,fš1³F4b±df;Ì o˜Çar˜™ÁaÎ~{³{±[[µ]uNÕ¹êÓ?à©^G\OÜNÜJÜFÜBÜI<@™>ƒŽ§Ëè‡é!:DwÑÃô<úúvú ú:úú1z5½–~™~…Ñ„~þ˜Ñ”љѡgôbð ZÅa‰1•ae{UŒõŒ½Œ{Œ}ŒÝŒMŒŒ+ŒKŒëŒ›ŒŒ§Œ;Œ'ŒûŒ÷ŒŸŒŒ_ŒßŒ?ÌzÌ&ÌVÌ®ÒUÌ~Ì¡ÌaÌÑÌ Ìi¶ËL*“ÀÄ1YL“Ï™¦’)cZ˜fž‡_Ï\ÎÜÆ¬f¾`ÞaÆ™7™·XýX=X­YÝXY]X3XJÖ|V&k‹Ï’³JYûYYgXGYXY×YÏX/Y×X?Y¿ØÍØMÙØ£YÙƒÙãØÓسÙYìl"›Êf±Ùl[ÆÖ² lÛ" ±ml7ÛÇ^ÅÞÍ>Æ>É>Å®e_d?a?c?bßc?e¿f`eâÔç4ä4â4ç´åôäôæ äLàLäÌädsp2‡ÀÁ³u%Gãs`Ž•ãäpò™eœõœ}œÿ8û9»8'89'979/98?9o¹1Î+nSn{nG.‡ÛƒÛ•ÛšÛŽÛ›Û…Û™Û‰»ˆKâ⸠¹J® sQ®Ÿëå.ãVp7p7qpSÜ]ÜýÜSÜsÜ+ÜËÜkÜÛÜ×ÜÜ/¼¦¼.¼Î¼Ö¼®¼q¼ñ¼9¼Ù¼<ΣðŸ'äÍå™x0ÏV¹Ÿçâ-ááåÕð.ò.ð®ñóîònñnóñò^ð^òÞðêxŸxxŸyßy4 1À8@S 5Ð &3yÀ"Œˆ  LT€0>À ¸€r¨J€b` °Øì®¿€'Àw ¸ nþ½@ì ¶-ÀQ`W°=8ì¶',p&(Í .³ÁÅ œ ÁY T€LÐÆÁç ,ý`X¹àj0 >wƒÀ+ààx¬w‚7 ÅP{¨øüaÀÏàO( êþë æP h.4  €@Ó¡)ÐPh,4šÍ b@Lˆ) #¤D .D†LP T¡Ð(*…"P´Ú…NC§ oP t ª†öBg\Vèô z }…~BŸ¡Ðè7ô—á7â7æ7ç7ã·ãwågð{ñó‡óGòGóÇðgòq|_ÀgóA¾”ð½ü0ßÉÏåçñ ùµ|?Ÿ‰¿ÿ_-¬å×ðïðÏòOóòOòËø§Íøïøu‚‚z‚Fü÷ü/‚`š`±°›/($nÁz,X.H ‚*ÁNB ¼T  N . ¾ Ž ;Ç Û û ljº ;  [ %BâDƒ…Â<áJáZaH¸_xKxYxBxR¸OxCxTX'|îm,| |Èß |,|/*ü*ü,ü(ü)Âÿˆ:‰º‰ê‹úŠúˆ†ˆÆŠ2EãEãDL EóD4U´XÄñD\‘^dyE¾hDT&ª­íU‹ŽˆŽ‹ÎŠ.‹n‹nŠˆŠê$zqqšè—Ä ÎwãÅsÄóÅ3Å<1W,KÄR1 拵bŸ8$NˆÃb¿¸X\!>"Þ#>%>(Þ/>.Þ-¾&¾%~ ž.~&~)þ þ"þ&i)é Éô— (š .™.'™)™ /É–ð$ „)H„’°D+Y+A$rIL•¬’,•$»$ï%;$o$Û%/%»%O$÷$w%$ï${$ç%Õ’çòri†4[:H:CºX:ZŠ“n—‘2¥©Yê’VI“ÒÒ|i…´Lê“o’î‘¥;¥K¤{e-¥q©S†•ž–5’Þõ–õ—>”5“ž“ÖJŸK¯ÊÆÉÚÈÒ¥×¥eý¤?¤¤ïeeƒe]d}d½¤Õ2«Ì,ãÈ,2…Œ"sÊÔ²‰2£lªŒ))ƒd<Wæ‘ÉeÛd›de‡dGdWdeçÙ/d§eweûdÇd«åÃe9²%²rYl‡ìžì…¼ž¼«ìŸ¢‰ì‡ì£ì¹¼¾l«GÞL®—“[äså|9S.–Ï“O÷–§äqù¹_¾L¾\^ì(ß'?&?*ß-ß.ß ¿'¿$¿/_'¿%%ÿ¥¨ì ÿ©h£èP6JÑC1A1¾£˜XüN1W1[1_AP0[( …EaU¸n…_áSÄÅŠE¥b…bb½b³b›b«b»b—b¿¢ZqFqEq_ñFñZñIñ¾ò ²‘²­²²«²¯²’§¤*ùJ¹Ò«Œ+K•e™Ò©”* Ê\eJy\Y§¼¢< ¼®<¡¼«Ü¤Üª<¨Ü«¼­|¯¼©|¥êZ¬§¢šªš ê¬ÊTQµQ5S Ty*¡Š¥²ª˜ª„ª@óDPýP·W7QíTT=SíVU«Þ¨î©Îª^¨.«N¨~ªnªž¨®ª^©Þ©‡©ÕêáêÎj½POS÷Q+ÔCÔ°z±º‡z¶z’§î«þ§î®ž öª×©‹Õ§Ô»ÔWÔÔ›ÕÇÕÛÔµê«ê¤z¥ú¨ºJ3SÓZ»HýFý]ýW3]ýQ3Jý^3Z}V3MÓVýMÔØ4GãÖh4lÍ'JãÕ †&¡ÉÑÕˆ5Û5Ë5K5+4{4Õšušûš«š7šZÍ Mææ¶¶±¶©æ§¶µ«m©ù«íªí¢1j»k;i{hGj§iGk‰Z¶D›«Ý¬­ÓnÐîÖn×nÒÞמÑÞÕÞÔ5ÖþÑuÓuÖ‰tT]H'Öñu‹t4R—ÔýÒùuº5º ºëº=ºƒºËºSºZÝyÝÝÝsÝÝoÝÝ?}s}+}Wý@ý0ýPýHýhýdýýtý }¶~¡ž¡7êz¯Þ£Gõ¹úBý2ýjýý6ý1}µþ¸þ¼þ²þ‘þþ¡þ‡þ¡¥¡£¡‰¡›¡ƒ¡»a¬a„a¡ŸašgÀWÞ0Ð rƒÔ 5X &ƒÝ`3Ô¶ÎöžÞî—ë5Æ~†ïÆÑÆIFªqº023£Ì¨5 Œr#lt£ÆJãjãiãc­¡ÎøÀøØøÜøÒøÎøÑøÁXgünüfJ7¥™ê›š™Z˜š›Ú›Úš2LýMCMSLsL‹M LóMlS¶‰e’™„&‰IaR™,&Ø4¡&£)b ›¼¦|S©©Â´Ò´ÜtÔ´ÝtÌ´ÓtÀ´Û´ß´ÕtÎtÚtÙtÓôØtÏô×ôÏôÆš>˜~š>š>ÁMáæpc¸<î ÷‚{Ã}á±ðHx2<žgØC0–Â2XK`%¬…õ0 [`vÃ>8Gá\çÁ%p)¼Þï†÷À{á£ð9ø|¾?„ŸÂÏáWÁð/s#sCsºy¹¯9ÃÜÏÜßÜÕ<Þ<Á<×Ì2KÍ 3Û,2»ÌN³Õœ0GÍ9æ%æJóóæ=æCæýææ}æ“æsæëæ[æ;æÇæwæß–f–6Öþ–žÖÁ–,KÂb´-ˆ¥Ô³,·ì´¬³l¶\²T[ÎXj--û-',§-o,Ï-·,,Ÿ­ ­m¬­­­C­C¬3¬ •n¬,+ÕJ¶Ú¬.kÄZa]]µÐºÎºÉºÝºÇº×zÊzÕúÜúÆúÐúØÖÈÖÜÖÉÖÙÖÓÖÃê¶²M¶M³·Í¶Ñmómo“UUØ´6«Ía ÙŠl¶b[¡m­­Æ¶ÅöŸí„í¸íPÊg;i;m;g»`»j»b»i»e»k{h{d{f{kû`¯goiobo`cïdïlϰgÚÚÇÙ v›=ݾØÞԾȞe7ÙEv£]b×Úuv¥]m¯°Û«ìq{¹½ÔµçÚ“v®½Ä~Æ~Ä~Ö~Á¾Ã^m¿k‰´FÚٟٟ" ‚A"míŸìߎHsûW¤2Œô@Æ#C©È"d6BAðÈ „€0"4D„(âCRÈ d#² Y,EÖ Û‘mÈVd²9€FN G‘Èeäò¨l2òùˆ|F¾"? õÝíMYŽ…ŽáŽÑŽéŽLG¶Ãà 9p½CêP;ð#Ïv°I‡ÃQæØëØäXîØé8é8àXïœêXæØì¸ãØí¨rlqÜpÜuïïCïcï}ïeïgï'ïO_ž/ÍûËûÃ{Ï×À{Çר{Ó—éëëàíå›á›è#ø²|#|C|}|_©o¯Ê·ÌWèëãKøP_ćøvú >“o‰/ì[ãûìoë{í;ïûãOóÝð7õñ}ó7ô=ð}ô7÷÷ö÷ôðO4ðýò«üƒýS,¿ßoö+üýj¿×/ógû‡ú5~«?ÓÚÏ÷ïñòWùoúÏù÷ùoù/úø«ý×üK½üÿüŸC=ííü¿3‚#0/03X/°0@ ¸+¡@N XPòeW4P0œTàT`oàB`OàbàjànàiàNàG°I°m°iàoàg°A°w°Kpdpzp1ޤ $¨ æ—××£ÁXð¿àæàñ`upKðT¨Op}°6x/ø2ø&x?x;ømƒ6@¡4-ø m6F› Mбètt<:í‡B»   tŠC(•¢j”‰’Q*ÕG—¡U¨ÝŒžA ‡Ñ‹…×Ðõèqt;z­F÷¡ïÑèƒPËPsô/úýj^µuµõõ M MÍ Í ‘BÌ/Ä)Bž3T2…¡!}È* å†6…JBËBñЊЖСÐÖбÐñPmèFèfènèG¸^èwèsèEèc8=Ü,Ü$Ü6<;œîžžžž^îü°8, «Âò°&l ›Ãΰ/ GÂyáâðÒðÚðªð†ðæð¶ðÞðð¡ðáð­ððÝðóðçð÷HZ¤C¤U¤Y¤k¤{¤_d\df„!E²#ó"HDQFø‘@ÄñGÖD–Fr"+#«"¥‘å‘ã‘s‘£‘[‘בO‘ç‘'‘ºh»ÈƒÈ£È·È½Èíh³hÃh—ÈÃh‡h«hÇhÏ蘢õÑþÑ!ÑiÑÑ™ÑEQ|¥EÙQVT¢Ê¨&jŒ:¢îh,šˆæFó¢…Ñ’hilRlflzl^lQ #Ĩ1~L³Äl1o, Ä"±x,Ë!±b~÷ØÆØºØØ¶ØöئØ±šØ‘Ø“Øãح؟ØÏدxz¼~¼I¼a¼e¼y¼U.Þ6v.Þ.Þ!.‰«âº¸!î‰—ÄÆÆ÷Æ/ÄoůÅÏÆoÇÏÄ_Å_ÇïÇÇ'%Çÿ%º'2­=³™‰‘‰±‰‰¹‰ù‰E Bb^‚™&ÀÄà„ AMÀ }Ixh"ð'¢‰H"/‘“ÈO”$Ö%–&6$¶$ª['5‰3‰Û‰Ç‰ß‰_‰×‰¿É&ÉúÉöÉ6ÉÎɶÉnÉÉ®ÉfÉþÉ1ÉÉɉɬä¬ä´ä¢äüdv—¤'9I~R&Ë“UÉåÉÉÍÉ]É[ɧÉGÉWÉ÷)4ù9U?ù#ù3Õ:Õ>Õ+Õ<•‘êjš—ÊLML~OáS„1EJµHÍOMKÑRŒ/%MiRpáš”>åM9Rž”;I…SÉÔšÔæÔÖÔÎÔ£Ôþ¼Ôíœz9mr:çŒÎ™³ ‡–ÃÈäˆrd9†}N4'œãÍY–³>gsκœ9;röæÎ9’s*çLÎÅœk9÷sæÜÎùó%çknFοÜv¹CsÛç¶ÎååÒs³rçç sçåäNÏ]˜KÈ-Ï-ÌÍË-Ëeå^ÈÝ“»+÷e^ËÜŸysò†çuÎë×%¯OÞ¤¼Ì¼Éyœ<0ÉSçÑò¶ämÈÛ˜—Ÿ·'ïZÞõ¼yOónäË»›w1¯&ïI~—üvùmóÓòæ·Ê—?$?3¿Wþ¤ü™ù¤ü9ùì|0ŸŸÏË—çÊ׿›òÍùŽ|V>’ïÌ÷ä» ¼hA¤ ¿ ° ¸ ¤`IÁš‚Õ öì+ØSp°à´ækÁ±‚sg ®Ô\+¸Sð°àiÁ£Â^… ‡Ž(œU¸¨_¸°Ð\È)är Bq¡¾PY/,.,(,*\W¸ºpká¶Â-…; ÿ+Ü]¸§ð|á™ÂS…ç‹ ï5/¼Zø£(½¨AQ£¢¶E-ŠZµ,êPÔ¹¨oÑ࢑E‹¦M+šS”]4¯hVÑü"NX$,II—‹Eº"kQ )òÙŠ‚EÑ¢dQª¨¼hMѪ¢åEÛ‹v+ª.ª):St§èm¾è£í~Ñ×¢/Å-‹›O(î[Ü«x|ñÔâìb|ñÂbE±¦X[¬+6Š×o.ÞZü_ññâcÅÕÅ/‹_—¤•4.iSÒ®¤SI¯’î%%}Kz– -^2µdZɬ’ù%Y%„’…%ÄRÉ¢jIQIqÉÊ’%›Jö—Ü/¹]r·äFÉ¥’·%ïJêJ>–ü*ù^Š-mYZ¿äQiçÒ!¥ãK³Jg•Î(]:­”Zº¸”]J/Jù¥¢Ra©¬TQ*/ÝXº¥téáÒ ¥—J¯”Ö–Þ+½_ú¨ôqé³Ò÷¥¯Kß•~.­+ýVú«¬AY§².e=Êz—õ)ëW6 l`Ù ²ÁeÃËF”.›S6» _¶¸ WF,c”ËòÊ|e9e…eEeUeKÊÖ”í(;\vºlOYuÙ…²Ke—Ë—=*{RV[ö°|RÙDzº²åíËÛ•7.o[Þ¬¼Ay£ò6åMÊÓˇ—w-ïWÞ·¼WùÈò¹å£Ë³Ë§•³ÊÁrI9\n)^þ¦üCEãŠFå¯+Ò*T ®è_±¹¢OEŠ9í+ÚT̬˜^1­"»b^·‚W!¬ V*˜úŠpZ±¾BSa«(­XQ±¶b[ÅñŠ#û*vWì­¨®¸Pq´âfÅ•ŠïÏ*ÞV¼¯øSÙ¥²keF¥©ÒZé¨ôT†*£•±ÊÜʂʜʊʕ•k+wW®«ÜXUž­<_y¡òbemåÊ{•w+T>­|Qù¾òså×Êo•?*Uþ®üSÕ°ª¼«ª}U¯ª¡UÓªT‘ª(U‚*  ¬‚ªÄU’*e•¼Ê\¥¯‚« ªÊ«–0FÈN¦˜F!ñŽ®¤Þz'1»ëݬw³¹Þíz·0Î4ZàÿN“`–bVaý?'ÿß³³³³©WoÌŠ^Ò‚i¡´pZ$mÝ¿i±ÿ)‘¶þžü¿èš iÓ6¥mN;–J;›v4í\Ú™´-içÓ륧¥§§×OoÞ0½Qzãô&éMÓ›¥·HoùÿOËtR:9’NM§¥ÓÓéÌtV:;“ÎK0ÕØVÿþaûÿO£ÿ§™Øéÿó˜ÿç§J¬sïÿõþgØÖ˜ØØQØ1Ø ØYØØùØ…˜ïX2æ>V‚ù‹9‚9Œ9Ž9Š­‡=‡Å`Ó1'0ǰ °°Í0'±M°-0§05˜3˜ÓØ.ØØ6ØNÿÛÚ ›íí‰í‹9‡9‹¹€9½€‰ŒŽˆ‹‡ˆŠŒ‹ÍÂ\Â\Á\Æ\ÃÔb/a ØE˜«X –¥aYXÄò°B,s sss«Ä^Áj±r¬«ÆJ±×±·±7±W±FÌ]¬ c­XÖŽyˆy€y‚y„MÞÇb±õ1O1± ±±Í1ϱM±-1/1/0¯1¯°]±±m±±_°Ý±=þ×¹¶æ-æ æ=æöâÿòìì l&vá¾àþàþâþá1øzø4|#|S|3||{||G|güpü(<ˆƒÏÄÇOÄOÆOÃÏÀÏÂÏÃÏÇ/Ä/“ð< ÏÀx^ŽWâÕxÞŒ·à­xÞwâ=x/ÞàÃø>†OàSø\|>_„/Á—â+ñUømø]ø=ø}øýøøƒøÃø#øøj| þþ þ,þþþ2þþþþþ#þ7þþCÀÒ MÍ-­m  ] ÝÝ „Þ„„á„‘„Ñ„1„L ÂLÂ,B!›°€°ˆ€# $™@'0 $𠂘 !È *‚– #L&x>‚Ÿ$D B’"äòù„BB¡œPI¨",!,%,#¬#l&l!ì!ì% &#'œ$œ%œ'\$\!Ônîîîžž^^Þê_ ? ‰iÄĆÄFĦÄfĿĄÄVÄŽÄÎÄ®ÄnÄîÄ bââ@âPâ0ââ(ââXb&qq"qqO$©D:‘AˆB¢˜è$úˆ~b”˜ +ˆK‰Ë‰‰»‰{‰û‰‰‡ˆG‰5Ä ÄKÄËÄ+Ä«ÄÄ{ÄGħÄwÄÄOÄÏÄo$,©©>© ©-©=©©©7i ii4)“4…”EšO¢’è$‰EâH‚Hb’šd&YHV’›ä%HRŒ”G* ’ŠHŤRR9ii%ii5i3i é?Ò.ÒnÒ^Ò>ÒÒaÒqR5©†t–tt‰TKºFºMºCzHzJzAzIzEzCú@ª#}&}%}#cÈiä&ä¦äfäÖä¶äNä®änä rr?òò@ò òòPò0òHòhr&y y*yyyy!™If“!²€,"+É*²žl%;É>2J‘乄\A^J^A^G^OÞLÞFÞAÞIÞEÞMÞK>@>L>A¾@¾L¾B¾J¾E¾K¾G~@~F~NþB©GiKéBéE@HLAEKɤ̡̦̥,¦à)< Ÿ"¤ˆ)ŠŒ¢ ¨(jŠ‘â¢x(>J€¢„)qJ¥€RH)§TQ–RVQVSÖRÖQ6R6Q¶RvQöPöRöQQª)§)ç(ç)(¯(o(ï)_)¿))ÿ¨*–ZŸÚˆÚ˜ÚŒÚœÚ‚Úž:˜:„:ššIGLBJIKO]@]L%P‰T•EeSyT Q…T1ÕEõP½Ô 5DMP“Ôj.5šO-¢.§® n¤n£¢¡£VSOQÏPÏRÏS/Q/S¯P¯SoPoSïQQ_R¿RÿÑêÓњКÓZÐZÒZÑZÓÚÐ:Ó†ÒFÒÆÐ2iãii“iShSiÓi3h3i³ishÙ´ù´…´Å4³³)³³ ³-³]p&³;³³³/s ss$s 3“9Ž99›™Í$1ÉL&“Íä2yL€ 1LSÅÔ0õLfZ™v&ÂŒ2cÌ3—YÀ,bV1W0W3727173·0·3w1÷2÷3013k˜§™ç˜—™w™÷˜÷™™O˜Ï™ï˜ï™uÌÌÏÌo, +Ռ՜ՂՆՖ•ÁêÃêËÀÈÌÆÉšÃÊbÍeÍc-bXT%`‰X–ŠefÙXv–“e¥Xy¬BV «œUɪb-a-c­fm`memcmgídífíeícbgU³jXX·XwXXOY¯XïX_X_YØ6–݈ݑ=–ݙݕÝÝ‹Ý=Œ==“½½ˆMbÓØ<¶”­fkØÛÁv²]lÛϲ#ì;ÅÎaç±óÙ…ì5ìµì ììÍì­ìmì]ì½ìýìÃì#ìsì ìkìëìì›ì[ìì÷ì:ögöN3NGN§§§?ggg(g8g$g4'“3ŽÃä°8Ÿ#àH8RŽŒ£âh9FމcãØ9ÇÁA9!N„“äär*8Uœ%œeœåœUœuœmœœœ½œSœ3œËœ»œëœwœ:ÎGÎg.–ۀۜۆ;„Û‡Û—ÛŸ;€;Š;–;‘;•;;‹;››ÍÇ¥r‰\&wà‚\ˆËç ¹r®Š«åZ¹6®“ëâz¸>nˆáæró¸ùÜn ·Œ[Å]Â]Í]ÏÝÂÝÁÝÍÝÃ=Æ=É=ýÈ=ϽÁ½É}À}Â}ÉýÎýÁÃðòšóÚðÚñÚó:ñzðzò†óòFó2yÓx yÞ|‘Gã1xl‡ÇãIyrž‚§ä©xjž–çæEy Þ2Þ ÞJÞÞ:ÞÞVÞvÞÞAÞ!^5ï,ï ï<ïï2¯–w•w‡w÷”÷¨4€@g Ðèôú}À`(0 ŒÆ“©Àt`0Èæ‹@ $€ÐFÀXàœ@ˆI (*€eÀj`=°Øl¶[ÝÀqà$PœÎKÀeà P Ü€ÀKàðx ¼ÞOÀWà'ðl6›ƒmÁv`G°Øìö‡cÀLp8œÎDÒ@:È!Pê@'è½` 0æ€y`X V€•à2p¸\n·‚»À}àAð(x¬O§Á3àyðX ^o‚·Á»à=ðøü~¿ƒ¿Á?P=¨!Ôjµ‚ZCm ¶P;¨Ôê uƒ2 ÞÐ`h4eBã ñÐDh&”eCó!BJHY ;„@.È y 䇢PÊ…ò "¨*‡* *h ´Z­ƒ6B»¡=Ð~è0t: ‡.@W¡;Ð]ètz=‚žC/¡§Ðè-ôžå§ñÓù ùmùíùÝø=ù½ù}øøƒøCøùSù³ø³ùsøÙüE|ŸÈ'ñ)|ŸÅçð…|_Ã7ðm|?ÎOð“ü ;ÿ?þ.þ^þAþ!þqþyþUþ5þ-þ+þGþgþoþAš ]ÐDÐTÐ\ÐJÐVÐAÐI0H0X0L)'˜(˜"˜)˜%˜-˜#È,,à$Y@0lH (*N`˜"p\¯À/@AJ/(”J•‚‚U‚‚M‚Í‚‚#‚‚ÁyÁ%ÁA­àªàŽàà©à•àà£à“à‹à»à‡°±°‰°•°°°“0CØSØ[ØWØO8H8X8B8R˜)œ*œ.\(Ä ‰B’,¤YB¶#ä !(„„¡Jh…v¡C¢Â¤0%Ì K„e a•p©p¹p•ppƒp»ð€ð ðð¸ð”ð´ðŒð¬ð¼ð¢ð’ðªðºð‰ð©ð¥ð•ð­ðƒð‹ð›ð—ðŸ+J555µµµuuueˆzˆz‹ú‹‰†‹F‰&‰¦ˆ¦Šf‹æŠæ‹"’ˆ"D H"Rˆl"‡È# ˆ"¢\Q¨XT!Z"Z.Z%Ú$Ú&Ú.Ú!:$:*ª]ÕŠ®‰nˆî‹>ˆ>Š>‹¾ˆ~ˆþŠþ‰1âtq#qcqsqkqq{qqwq†¸—¸·¸¸¯¸¿xx°xˆx¨x¸x¤x”xŒx¢x¼x†8Kœ-^ ^$&Šqbº˜!fŠÙbŽCâ_b¹X!VŠbƒØ$v‰Íb‹Ø*¶‹ÝbDÇÄqqJœ+.—ŠËÄåâ*ññ ñFñVñ6ñNñ>ñ!ñañQñ1qø¬ø¼ø‚¸V|[|_üBüZüFüNüSR_ÒPÒBÒVÒYÒMÒSÒ[2F2M’%™+™'Y$¡H¨®D,QJÔ£–Ø%‰_’$%9’H>J¾J¾IIÒvÒÎÒîÒÒÒÒ¡ÒaÒÒ‘ÒQÒ1ÒÉÒéÒ9Ò,éé")UJ—2¤l©Bª–j¤Z©Nª—š¤V©Mj—"R¯Ô/ JCÒBi±´TZ.]*].])]+]'Ý$Ý&Ý'=!­‘ž•^^”^’^‘^“Þ”Þ‘Þ•>•¾¾’¾–¾‘¾•~ÖI¿H¿JIKÿÈÈËšÈZÉZËÚÊ:È:ÊFÉÆÈ2ed“e³dY²ù2œŒ.cË2¡L$ˤ2™L)ÓÊt2½Ì&³Ë\2·,.˕ʊeKe+e«dkdëee›e»d»e{eûe'd5²K²k²ë²G²§²w²÷²:Ù'ÙÙ_9FŽ•§É[Ê[ËÛ˻ȻË{ÊûÊÊGÊGËÇÊÇË'˧ɧ˳äÙòùòrœœ 'ÊIrªœ&gË…r‰\.×É r§Ü#÷ɃrT–Gå9ò2y…¼R^%_)_/ß,ß"ß*ß!? ?(?$¯–Ÿ’×ÈÏÊ/ÊkåWå×äwäwåOäÏåoääuòòßò?ŠzŠ4EECEcEKE+EkEGEWE†¢¯b bˆb¨b„"S1N1Y1]‘­X X¬ )h †‚«…B¡Vh&…CáTxE‘¢LQ¥X¢X¦X®X£X«Ø Ø¨Ø¤Ø¢Ø­Ø£8 8¨8¦8®8¥8«¸¦¸¥x¨x¬x¦x®x§¨S|SüPüSÖS¦+ë++›+[([)Û(;+{(û+(*‡*‡+Ç(3•㔓”“•Ó• ” •‹•x%IIQ2•l%G©Pª”¥Q +-J«Ò® (ƒJTVæ+ ”EÊbe¹²J¹E¹M¹CyTY­<§¼ ¼¨¼¤¼¬¬U^SÞRÞQ>P>W¾T¾V¾Q¾S~T~V¥«ªš¨Z¨ZªZ«Úªº¨ú«¨*%ªáªªQª‰ª)ªé*ºŠ§TJ¤’¨4*­ QyU¨*G•«ÊWªŠTŪuª ªª]ª=ªªCªãªÕiÕyÕÕ5ÕmÕ]Õ}ÕÕ#ÕSÕKÕ{ÕÕgÕWÕo5F®ÎP÷VPVSOTOVOQÏQg©ç©ç«ªñj¢š¤&«)jºš£æªyj¾Z –ª j»Ú¡Ž«óÔ%ê%êÕêêMê­êíê}êCêÃê#êcê“êõiõ9õyõõkõ[õ;õõ/õMº¦‘¦‰¦™¦¹¦ƒ¦“¦‹¦«¦¿ff°f„f¤fŒfœf²fŠf˜¯!jH²†®ajX®†§4|T£Ô84NOƒjBš¨&¦‰kRš\Mž&_S¨)ÕTi–hVjViVkÖh6i6k¶hvjþÓìלМÔÔhNkniîi^h^j>h¾h~h~kþh1ÚúÚÚ†ÚæÚŽÚžÚ>ÚÚ±ÚñÚ‰Ú)ÚÙÚ9ÚyÚùÚÚ…ZŠ–ªåjyZœV¨i•ZµÖ¤…µN­GеùÚm¡¶H[¬-ӮЮ×nÑnÕîÐîÒžÖ^Ò^ÑÖj¯j¯iohïhŸhêÒtéºúºº†º¦ºfº–º ]OÝÝ0ÝÝHÝ(ÝÝL]–.[7W·@·PGБttKÇÑñt Nª³êܺ€ÕÅt¹ºR]™n‰n™n³n‹n›n»n¯îî°îˆî¸îŒî¬îŠîšî¦î–îŽî»î¯£o¨o¤o¬o«ï¨ï¢ï®ï¡ï«¢¡«Ÿ Ÿ¨Ÿ©Ÿ¥Ÿ­ÏÒãôx=AOÖSõ4=KÏÑóô ^ —êzµ^£×éÍz‹Þ®Gô.½_ÖÇõ }ž¾L¿F¿Q¿I¿U¿CPDRJVUMC_ÿTÿIÿYÿSÿKÿ×PÏn¨ohhhjhnhchkèdèlÈ0ô6ô5 0 4 5Œ2Œ6d&&¦f’f`¸ž0€±Ab¥AmÐt³Áj@ nƒÇà3 ACÂ2ä E†bC¹¡ÒPeXbXfXiXeXgXoØhØiØeØcØo8`8d8a¨6œ2œ1œ5\0\6\1\3Ü4Ü5<4<6<3<7¼4|6|1|3ü0ü4ü2ü1ü3bŒXcº±¡±‰±µ±‹±«±¯±¿q qq°qˆq¨q˜q¸q„q¤q”q¢q†q¶qŽ1Û8׸иØH4’Œt#×È7Š£Ô¨0ªŒj£Î¨7ºcÀ4¢Æ°1iLsŒ¹Æbc‰±ÔXn¬2.1.5.7®2®1®5®3®7n2n6n5n3î4î1î32ÖOÏ/¯oooïïŸ___ß?ÿ™˜Ú˜:˜:šzšz™úš˜™›F˜Æ™&š¦š¦™¦›f˜f›æšæ™p&‚‰d¢›x&À™4&Éj²™ì&Ää09MSÀ”2åšòL¦S¹i™i…i‡i¯éé°éˆé¸©ÚtÖtÞtÁtÝtÇtßôÀôÐôÄôÜôÆôÎôÞTgúcàzpœ7„ÁMàfpK¸ Ünw€;Ã]ánpw8î÷ƒûÃàaðhx œ O€'“à)ðx<ž ϳàùðB˜ 3aÂ"X«a ¬ƒ°À18Àep9\WÁKàeðrx¼^¯†×Àëàðø|>ŸÏÂçáZø&ü~¿€ßÀà:ø+üþmƘ˜›˜[˜Û˜Û™Û›;š;›»˜»™{›š‡™‡›G˜Çš3ÍãÌÍSÍÓ̳ÌYælóób3ÎŒ7“Ì43ÝÌ1óÌ€4óÍB³Ä,7+ÍZ³Þl0Í6³Ãì6ûÍ1sÜœo.0šKÍUæeæÕæuæMæÍæ­ææƒæcæSæKæËæ«æ›æ{æûææ'ægæWæ7ææ:ógówó/K}KKcKsK KkKwK/KoKË0ËpËHK¦e¼e¶eŽe®eže‘g!Y8ž´@Eh‘ZäµÅfqZ"–¤%ßRlYj©°TZª,+,k,,-[,[-Û,Û-û,,‡,'-5–S–³–ó–Ë–+–«–k–'–Û–û––‡–g–W––OVŒå«å›å§å—埵µ™µ•µ‹µ›5ÃÚÃÚÓÚÏ:À:È:Ì:Ê:ÖšiljncͲf[XZñV¢•beXÙVŽUb•YV½Õjµ[«ÓµÆ¬9Öð>ò>ñ¾ð¾ò¾õ¾÷~õ~óþñþõa|X_C_#__SÅ×Õ×Ý—áëáëåëíêæîéãï›ä›â›ê›å›í›ã›ë[ìÃùˆ>ªæ£û´>‹ÏásùÜ>¯Ïï úâ¾\_¾¯ÀWì+ñ•ùÊ}¾U¾Õ¾µ¾ ¾ƒ¾C¾Ã¾“¾S¾ ¾‹¾K¾Zß]Ù÷Â÷Ê÷Õ÷Ý÷Ã÷Ûõ7ð7ñ·ô·ö·÷wömôðOôgùçúçùøûñ~¢Ÿä§ù~¦ŸåçøA¿Ð/òKür¿Öoðý°ßâGü¿ÇðçúóüþJÿ*ÿÿZÿ:ÿfÿVÿÿ^ÿÿAÿaÿQÿIÿ¬ÿ‚ÿŠÿŽÿ¹ÿ•ÿ½ÿƒ¿ÎÿÑÿ-0ÚÿÓÿËÿ'P/hhhhèÈôô ô ô   ŒŒ Œ Œ LdðB€ ÈZ€à¸^€(ÀŠ€&` Øö€#à x@0D±@2(TªKË+«;ÿvvöŽNNÎÎ6nnîž^Þ>¾~þ1Áô`ý`ó`‹`«`ë`›`§`ç`×`F°Wp@pPp\pBpRpJpjpFpV0;H ’ƒ´ =È2ƒÜ „‚ü  ( ʂʠ&h ÂAsÐŒs‚…Áâ`i°<¸4¸*¸:¸&¸1¸5¸=¸#¸3¸+¸;¸'x(x8x$x,x"x)x9x5x=x+x'ø ø8ø4ø< þ þþAÓÑúhC´)Úm‰¶BÛ¢íÐÎhÚí…öA¢ÃÑè(t4:„NA§¢ÓÐèl4 ]Œ2P. ¡BT„jPªGí¨õ£4ˆ¢h £Q4†¦Ð<´-B‹Ñ´]‚.GW£Ðè&t+º=ˆB 5è)ô4z½Š^Co¢·Ð;è}ôú}‚¾B_£oÑ:ôúý‰þ aCi¡¡Æ¡&¡¦¡V¡Î¡6¡¶¡v¡N¡.¡®¡n¡ŒPÐÀаÐðÐÈÐèPfhRhJhfhv(+4/4?´ ´0„ CÔ-ıBœCÂ,¤ YCö;T* •…ÊCU¡%¡5¡u¡½¡¡ƒ¡Ã¡Ó¡3¡³¡s¡ó¡K¡Ë¡+¡Û¡{¡ç¡÷¡¡ºÐ—з06Ü Ü<Ü"Ü2Ü>Ü!Ü)Ü9Ü%Ü-Ü3Ü?< <0<2<*<:œžžžžžÎ g‡ç‡ñaR˜f…ÙaN ó°"¬kư)l ÛÃH؇ãáT8?\. —‡«ÂKÂ+Ã[Â;Â;Ãÿ…w…÷‡kÃWÃ×Â×Ã7ÂOÃ/ïÃoÃuáOá¯áá?á‘ôHýHÃHËHëH›H»HûHF¤g¤w¤o¤dHdhdD$32>252-2#2;’™™YÁEÈZ„aD8nŠˆ"’ˆ)GÌkıGœWÄñE‚‘h$IEr#…‘¢HI¤*²:²6²)²9²=ò_dWd_ä`äX¤:R99¹¹©\\Üܼ‰|ˆ|Ž|‰|üŽü‹Ö6ˆ6¶Žv‹fD{D›D‡EGFÇG§DgEgGçD³¢ÙÑyQR”¥D™ÑÅQ^TUEá¨%j"QgÔõGÑh4MFó£Ñòhe´*6!61656-–››[ÃLj1rŒ£Ç1vŒcÆ1aL“Æd1UÌ3Åà˜=æŒch,KÅrcy±’XY¬<¶"¶'¶7v"V;;»»»»»{{{{ûûûûûûûÇÆÓâãmâã]㢸,®Œ«ã®¸7î‡âñx*ž/ˆWÆ«âKâ«âëãâ›ãÛâ;ã»â{âûâ‡ã'âÕñ“ñšøéøùø¥xmüjüzüfüIüiüyüMüC|¼.þ1þ9þ'M¤'ê'$š&Z'Ú%:$z&z%z'ú$ú'$F%Æ$Æ%Æ'&$&&¦&f$f&&'p |‚’`'8 n‚—€ü„,¡L¨š„6¡KX¶„=áMøáD*‘›(H”&ʉÊIJÄêÄÚįĦÄöÄÎÄÞľÄáđıÄñÄÉÄ…Ä¥DmâNâEâ]âC¢.ñ-ñ#ñ3ñ6‰IÖK6L6J¶L¶JvHvLvJf${&{%û$û%$&‡&‡%‡'Ç&3“ã’ã““’3’3“³“s“ø$1IJ’“”$5ÉHr“¼¤(Y‘\’\š\‘\™\•Ü™ü/¹;y0y8y$Y<<“<—¼˜¼œ¼’¼š||œ|’|‘|—¬K~I~MþJþMÕK¥§¥š¥:¥º¦¦¥F¤§†¦†¥Æ¤Æ¦Æ§¦§f§æ¤¥Ø)nŠŸ§$)eJ›ú?Ø{ è´ÖEßw¶¡îîmš®ÔeÖÝÝp wMH€`Á ˜“'ÔWÝÛUw·UwwYõ®zË£çì}î9ûís÷}«oŒ{ßûÆø9L&0ù32þ…~­ßáwúËü¿×ï÷WúCþ°?âùçùçûøû×ú×û7ø7ú7ûwúOøwù÷ûøúûø/ø/ù/û¯ø¯ûoøoùøÏúßûŸù_ú_ùßù¿ûS! ZPm¨.Ôj µ„ZCm ¶P{¨#ÔÊ„²¡,¨Ôêõ‡@¡!Ð0h84ÆB“¡éÐ á Dr *Ä‚¸’A…ÒAzÈÙ T¹!/A¨ª„ÂP4Z-…VB« ÕÐZh´Úm†¶C; Ðnh´:ƒÎC— +ÐUè&tz=žB@Ï¡ÐKèôú}‚¾@ß`®#àZpm¸\®7„›ÂÍápk¸-Üîwƒ³áîpO¸?<áÁðPx< ‚ÇÀãà ð$x2< žÏ‚çÂHc`2Lip.Ì„Y0ÀBXËaœ«`5¬‹`-¬‡ °6ÁNØ»árØ ÃpŽÀIx¼^ ÿ /…WÀkàõðfx ¼ Þï€w»á=ð^x¼>‚ÃGàãð ø$| > Ÿƒ/À—àËðø:|¾߆ïÀ÷àð#ø1üü~‚¿À©¨¨hhhhèèèèèø%èè蘘˜@0l€ Èœ=À ð‚€( ÈŠ@^ ?P( ¨º€1` ˜–€5à ¸eò€/*á@,P˜XXXXXØØØØXØ8888888888¸¸¸¸¸xxøøøøøøVQ£¢f¢¢nE½ŠF+šT´ªh]Ѧ¢KEÿŠ+U ®R1ºb|ÅØŠÉS+fT̪˜SA¨ TÐ*¬ N…°BR!«W(*ò+”öôcQ¥¶²¸Ò^é¬ôT–Wz+•U•ÉÊù•K*—U®¨\Y¹±rså¶Ê•»+U©Ô!Ô)Ô5”êêšššB†P!Bˆ"‡rBÔ'$‰CòPAHÒ„ŠBú1d ™C®Pe( …"¡h¨*” -­ ­­ ­m mm m m íí íí      ] ]] ÝÝ Ý] Ý Ý½ ½½ }} }× ×· 7 7· ·w wg†»…»‡û„û‡„Áð ðàðÐpvx\xJxzxVƆqab˜¦„sÂì0'Ì óÃâ°4¼"¼*¼:¼6¼1ü[xKx[x{xwx_ø`øHøDøNø^øAøaøQøiømø}¤f¤N¤n¤Y¤U¤u¤M¤}¤C¤c¤K$+Ò=Ò#Ò'202(282$24222*2:2&2!212-2=2#27‚Œà#ä%BÐ"ô#ÂŒÄ"‰H2²$²6².²>²)²5²-²3²;²?r4r.r>r%r5r=r3ò(ò4ò,òGäUä]äÏȧȷÈ÷hÍhFmmmmmíÍŒfE»E‰öˆö‹öŽ‹ŽˆNNŒN‰ÎŠÎŽÎ‰"£˜(>JŒæF—GWFWG×D×G7F7E7G·F·GwEwG÷F÷GEDOEOGÏF/D/F/E¯E¯GoGïGDEŸDÿˆ¾‰¾þýýýMÅ€XXÍXF «««kkkkkkkkëëËŒuõ‰õ‹ Ž ‰ ŒŠÍˆÍŽÍ‰bÄ)FÑc¬'Æ‹ñc˜8&‰Ic²˜NŒ“ãÔxnœgÄ9qQ\§Å%qa\Ï‹+㪸&®?Œ¿‰ˆJ4HÔL4K´I´MtLtJtN H€‰A‰Á‰!‰Q‰1‰©‰±‰I‰É‰é‰Y \Ÿ`$8 v‚—%Ä I"/¡Nhú„!Qœ°%쉒„;Qžð&àD Q™&B‰pb~bybebub]bSbkbGbwbâpâhâXâ|âBâbâRâjâfâVâvâAâQâIâYâEâUâmâ]â{UýªšUuªW5­jVÕ¼ªUUëªvU«:UéªôU†*s•µÊVe¯rT•Vy«|UÁªpU¬ªªjQÕÒª•U««ÖT­­ÚPµ±jSÕ¡ª#UÇ«.Tݪº_õ¨êªçU/ª^U½®zSõgÕǪT²f2#Y/Ù$Ù4Ù,Ù<Ù2Ù:Ù&Ù.Ù>Ù!Ù%™•ìžì쓘”’ž™•“›Ÿœ˜œœœ’œšœ–œžÄ% Ib’”$'s’¹IzR˜%eIyR‘ÌKæ' ’ª¤.iLú’þ$”„“É`2”¬JÎO.H.L.þ+ Fÿÿø?epYJHÞ/§”ö“ŠØþöw¡PÉcqûÉTÒBQ¿ARžš'@ž;gš¥,à)L•s\‘\P0 ¨OÅé'Îë§’‹Ò×ñúó䜼‡ ’ùã|ø°¡ÿ傃2:l88|È C2ÁÁék™àÿ;@UPÈR¦7EÁ)øŸ.÷¯nÿ·fþÇùÿ&ãû³Ï§Èý¦&÷›…îGø÷çð¿]¸bÈß{Ö”·×L“‘æGd­4µÓÔIS7M½4?:s¤i˜¦Qš]z?*Ï~ôŠ7KÓÍ„4?öúÉi~ôqOM3-Íô4?z:g¦™•fvš9iæ¦ùÑeŒJƒNƒIó£ã—æGß;! 1 )ÍXJšœ4Ô4´4¹i~te3Ò0Ó°ÒüèÐüñZã¦ùñœñÓÒü襧‘¤ùÑ?(Kó£‹]‘&/M~š­?ætaUuMš=ÖÚ4º4ú4?ú-iŠÓ˜~â²~ÔÞ}û‰õÿÑõ?ãgÖýÿ"ÿËÃûc†ýãØ“~©ñ÷%ºü“þë˜?øg–9þ¾¡?./˜üÓ.Ûÿ¶Ðøí›OÞüÌv¤þ­G²ú/9LÀ׌¯5^¥ê|¼vvÕÅ©Œô¶ÔùÁ|\Oi;þã¡4ækÎù9‡ ˜?¢æ‚¿è¨ñƒ—çcjþå>ÜŒ¿ÎÏÌèóW5þvy>=cö_uüù‘±ìçˆ:Õàøï?×ÿ×ûÞQ«k58LÕà¸ñóŽÚ£«Á©LJŸwÔ!TƒcÃÏ;ê6«‡¢'ÞQï/¿ý'‡«~ÞQj58þ¼£A½Æ¿t0ªÁ±óç ;TƒC[ ŽK?ïh4´jp¼þyGcÔO;7^õ×ÿÖ ž>þh|û§·ƒÞd\58âÕàøüóަäjplþyG³–ÕàPVƒãôÏ;š÷¯‡§OÞÑbF58þé÷ÊÿgŽ–ˆjp°«Á±çç­:WƒÃP Ž¿üð8Z¨G°ï~ÞÑ[ ޵?ïhÛ¸ÒjpûyG»žÕà(©ÇýŸw´ŸT ŽyÕàøþóŽ´jplûiGíŽmÿŠ£ø?]^3¹ã_z?Ì©Œ?„3€;;²þ’ãocWëï]öíhü«ë5ýûé|°ã_Ú§Äí5Òûõß¿ÆÍ'uü«Ÿûÿ-!íè4ñ_¯ñO/_þÝAïþ‹Žÿ4Ç:½ÿyGg|58Öÿ¼£KÓjpÈ«Áqâ白«Áá¬ÇßwtR Ž¿šÑÿ'GÖ_Qü£ƒ^ Ž?ïèÖ¾EÕà¸øóŽ_†Tƒ®Ç«Ÿwd#«Á±òçÝëWƒCX ŽC?ïèñK58¬Õà¸ýóŽžÕmõ¬†l«g5d[½ª!ÛêU ÙVïjȶzWC¶Õ»²­>Õmõ©†l«O5d[}«!Ûê[ ÙV¿jȶúUC¶ÕoÏÏ;úWC¶Õ¿²­þÕm ¨†lk@5d[ª!Û«!Û«!ÛX ÙÖÀjȶVC¶5¨²­AÕm ª†lkp5d[ƒçý´còàŸÊ¶þíW¾@ÍÔ¿@€jµ:@] Pÿnm4&@S Ðh´Z­6@[ Ðèt:.@&ÐȺ¿Ù@w Ðèôú}~@`AÀ``0 F#QÀh` 0Œ&IÀd` 0˜Lf3YÀl`0@¨+ÅNqRÜ/ÅO R”(%NIRÒ”,%O)Ry©ü”2U*L©Rê”&U”Ò¦t)}Ê2¦ŠS¦”9eIYS¶”=åH•¤JSΔ+åN•¥<©ò”7åKùSP NR©ÊT0J…S‘T4KÅS‰TU*  ÿ¶?06}Šðá?ö d€äT€ät€0À8à|@ $€r@äù€(  4@ t€0F 0fÀX`@ P 8àÊPxà  Ök¦¦ƒ_RíSR]R5À6¦&KSãR÷RãÁoàw0VÈ`-°6XüšÙ*³iz’ÐÀŽ™­S´Ìî™Ù™m3ÛevÌ씪›ª¶[¥F§Æ¦¨©\°.X¬6‚ÀÆ`°)Ø,Õ «9°¸|HuÊb¦:¦:gñ³Y³†tŸÔ}°6sPæà®©)°X˜ª•ÊHÕNÕOe¿v¯Ý½Vöñìß³OeÎ>”=?{^ö†ìõÙ;³wdŽ›w…»ú»B]`‹>W³êf5È*É*ͲfÙ²zgõú¿ÝÞ#«'°²ëٮ糀¬ŒÿÆ‘™µ¸[ó¬šYu²XYØ,q–$«}ÖØ¬NYC³údõý¯Ëví“ vWt—ugffv6ÿýúì—©¦©f©æ©©–©V©Ö©6©¶©vÿpG]SY©n©_RÙ©î©©ž©^©Þ©>©¾©~©þ©)0505(585$545,5<5"525꿬?15)595%555-5=5#535+5;5'57…L¡Rè&…MáRø!EL‘Rä%•N'“Á)àTp8œÎg³Á9à\ ¢@4ˆ± ă’@2Hs@*HsA:È™ dƒ ò@>(… ƒP Ê@9¨óÀ|P €…  Tƒ°Ô‚:P@#X š@3h­  ´ƒ°,  tƒe ,½ ôƒƒp>¸\.ƒKÀ_Á¥à2p9¸\ ®WƒkÀµà:p=¸Ün7ƒ¿[À­à6p;¸Ü îwƒ{À½à>p?x<ƒGÀ£à1ð8x< žOƒgÀ³à9ðø|>ƒOÀ§à3ðð9ø| ¾_ƒoÀ·à;ðOð}”g2*2*3‚¡ŒpF$#šˈg$2ª2’ó2æg,ÌX”±8cIƯK3–ýãlËX—±>cCÆÆŒM›3~ËØ’±5c[ÆöŒ;3veìÎØ“±7cÆŒƒ‡2gÉ8ŠhŠh†hŽhh‰h…¨hhƒh‹h‡hè€èˆè„èŒè‚ÈDtEd!º!~Ad#º#z z"z!z#ú ú"ú!ú#üóYÿ÷ƒƒCCÄ0ÄpÄÄHÄ(ÄhÄÄXÄ8ÄxÄÄDÄ$ÄdÄÄTÄ4ÄtÄ ÄLÄ,ÄlÄÄ\ʲkf7ÌnšÝ6»evÇì¾Ù¿dÉ“]#;#»Iv‹ìÙm²»eÎî“=:{vvfö€ìžÙóÇgwʳ³³GdOBÆ ­s2‚ãñ{X8=)ïýYv•­£Í\ι#Ïæ=·ó­Kb ¤¼ùì|jŒrºD~gdwżìÖ†¤ó7ª‹¾‰SΨ<* PõQsQ ôLâÊpÊùœ´zÌ[¬&¬<~ Q­¼m*”*OûÅ¸ÊøÒ¼ßÞØÉ)«é'øu¸ÑÈJäbÒ-ózÿÞ¢—H€üZ¾À?B7ÈÖÓZ€™ˆËÃïÄß!Þ¦|a´ ¿‘=3ßwô ²ƒyÁy¡/ø¸·ÔÒ¼ßM;}û‚qŠM· Ù¬(`ù*ïNlK@H:9ÚÇGSà–Éø…×+}ÄIHÈ?;øÆ†Š4ÄÝ!l¦‚Œ|~&ÿ­!!}+ëUHUÑ!ÃC¬¯T7~.[¯Z¡>9È\RV£Ü]¹^äŭ”š§_°S¨éï™=9Ë8碌-ó¼ù-ó)ù Æ×°ª­g!?¦&:E¼ÒU6æ¥?…Ç03®³wð>‹{KzH6”™öºˆ‰¾‰ÆUhó¥A›ƒ Ífm¶ª•,$õWÄÉ{éP¡·È¸ÖÈ(j,j>ª;÷’XÒ$g/u3õŽö ¿Tl–Ì‘nÈ“ìÓ–kwéÆèK­ë¬×l›ÆöÒv®”ï^OìåYê{èG†:—¸QhÙÍ”ÕhËëÎ’ïž=Áƒ‘‘ Èã¨ö®{Ä›äYäcô/ŒgÌÞÌ &›ušÝœ}š726‘Ï®•iòòTsÔ%F•uqé§Ê² ×“À¼Æî¢´Æo nÈmÍЬ²5EåöãN’[ø5ºE&,-¹BZ(H•œ‚cmÄR<‚~Ž}‡»U8F8B²½@Y´M'qE]gË%¾ ÿóÊ…ÁŠˆÊ§mÃsÃHNLŸ)î#6 7Ç)X%!ÁÌcÿ!-¯#?c§ºšú¦ [ÆGâÞ‹:ˆG…ìÂÞšn¿}=t=à!R=…Y¶Zö†Åغփ…‘Å(fõ,¶>ö2öQîB”Ü›òꡆ©×èJº–¹Õ…Åaíâ\ã±g„8ágÉ8 NJRd)BŠ©…kUmÕ÷4 Ò‡4ó ]OLÃL¯Ì +ßVåÚà>áYá·W`*•På‚ /t.ÒÓÚ9߇¶%÷DÁ2õÍÚ2Ó³òÁ½áfa|˜ŒªjŒË'ĉBÒgÊtj=ꚟÞ^Ì8Áy!ŻĻ+è"<.< fÐAÉAi©QeÒΠrtéƒÆN—ÏÝÖ³±\ã=áë¾mƒ4£€ ÆÙØfî’QÊy*H;Ý´¬ô‹{GYg¥íXh¾>ƒ°Bˆ“ÝyE=ªª“¸BêKû´¿6²-r*ò0ªî~u5£3›‡Œ•N’*¥÷òŠ 3tjÝj}]c{Ãw#Ÿ÷HIÅm§MÍ}Ì>˾Íi'Ï,Éq,¿TÔÐ.‰å —"W W¢b¨yè3˜éº÷˜|Ì{×gÂ=#¬$Ûhwó˜˜h¦ŒÓ…GÏ–îUîS>×¼4´Ô²Öu ýwB©)šƒ|…¹AëÇ·ˆd´ ü7"UKˆ6Xб÷IÓs¿ºóIºIÆÑZ´;õ³Ç¬[m'œ&£l¤ï tß6#sÑÃpp£”— ‚š'Ö‡Þ5‘C‘#‘³ «} °V§C«©çüÓƒä ñ5è C›Á ë’Ò@¨ÐÇÒ-Ïw«°Mqžbßà;8V¸[˜yOúïàøN§v"jz¶f GêWð”TFÁ0Ø ;SÅR³¬eœõÜQ<)_!œ$o¡âëÆ¾ç#ųM[cÛ¬’“îºnNßû-Ü>á³nñŠ=Æ–²»pmŠ=Áˆp"’dJu ¼®ÐˆvNpwÔE¾GDwGó0ì,‡ð+© ¹VÎ úgÖzÖGö[ŽRÔQÜKiT®,è_Ô²HaÔjš—¹ÊÊÚyîzÏú9UP&D[Ta&ã’¸ t=£»¼ƒÜ_`/ønœlîÜŸƒh$Ýwo ~¦œ¡rs_ÓW0z°Gð¦ ÖȉÊÓ†cÎæùæ;¶W%HwiùcxxðpXl¬@¨F¸ø™øq9Æ|fRø«Ø[˜SdqW¹•i ?’;Š\„2 Ö Û¡[cfb¤Ø$v+ö;.Š»‡o†oLp‘0¤#OÍ¥úrä>Êý@/¢ÛèQúoŒ¶L,k;ľÌù•7š_“?™ÿN v†DÇ¥ Yo™H>@žP R—Iuã ·µŒmtã:s+s†yyoñY{Û°Î9NVYÏÏWÿ1H燿V. Π׊D¢—£±Tì Ü|]òöÅmØÇ¨ÚŠ™ŸEü¦›i̪³Sõ,yªfŒo̫ѥÊk¾n8yŒøŠÄ%ïÊÉa Y‡ùMøµ…#…ëdTŒ£¬òØ$d …Æ%ÔÎUä>Ì}!ø"Õt£Aç-šþ+§zz%¦\à’é”íÔµ {.g¾p¬¤@^7ÏVš‹Zu×Êx^#h»îÜ뫌a¹¤ž´Iì™ÙHšìM%r›7â×ç6&}-ªL|FѰ³ðeÜqüž‚–‚?uv=ј ¤ÅVéGâÚaÜØáÔ[ì÷ÜÕ܇‚~’mŽeÁ3jì"gN vl…z7‹¬‡ãöÑò™¹0#dä?,8¦ê¦[K*ËlžkPQ¤)o%…¤ yy5 eÂŽÂ}Ľ!Ü#^#?£§¥¤¨hÚ\zMzÆ%f'NÞ*·†·“÷X°%zi“‚©Ú™Ú½†ÆvÆ>æ–š–·® ›î¹ùnû…ç°çzðDø«D,CA•cÐTõ3k§’¤«ü¸t»r\áNÕù¢½ÚQæ†æÁ–§ö _•]eb4)#'úè>{?R˃ϸפ”9G©‹˜.¹IQ[µËó”štúÛh¥à5Ac9fw¶6ÆDhްœÏ‹ç˵ãŒm̵Ê:yùå%‡ýËÑ]°Ÿi£¸<ƒr(4:èc}@ÝÇÈü„»Hu²g JÜÊ'·uý-’ò…6Ä4Ç]‹©)ŽS<Ò¸2¯âNá…Ôm`îMÔ V öwÙ ííqã¤â¹¦³–çÖ.v¿sšKYæ÷úøB³!iðGîA¡0SqvcÁyéDyƒNqwè$lç´£î–Ñæ÷7ÄÈÅùIÌg'Î÷ uŒö…Ÿ­Y©»gíIa1–óþ)$.Ù[yPÁU7¶Ì½ãWA¥áÚ˜‡ØNì |ˆEÞž¾ÙxÖ¤ät¬q|pÄ.Ã]¡Ð} ?“ßrÑ¿aº`oà2qÓqà¦ÛP„”]9c¨›hµiMhÍhíévº›~›‘Ç6±íìkGïÃoÈïÇW Š… Ä]ÄC¥;dNy=99L~÷|ê°¦FQ®¶†–§}¥»­oføÕ8Ò´]´—9f:soÝ]ÜcÜxw‡å¹ -‚ù⊶Áx(Œ¬¬‹ìŒ$aBØ<Ò)òò j}ó ÷»€% ʦ(7« tû–2%´%IHzþÎ~.j$ æ?/Æ›5V¥ëaøV)Á·Ž65uµ‰P''“zƒú„±Ÿ…ä à­åϾÅdE²×ªÁª­š.Zºö¡q°åžuc¹k¹{”w…/æÝÕAnCîÅfUä?h Tíic-Hw}ßÁ '$Óg»×…ØÄ·¸¥þ6ø‘$+=›³T:$Ï­aÊL·yþI>Ð4Ð6è+¤GäÖÉñò Ê—¯qä‚™¢v¶ƒá6Á=Îï ;WGýˆl×W•Ë€9€†½K9ǰ0{°›òÆó ù]ø…Â7ÂÖ޼–R©ê¢¾fØe&’_9¿¹Lîyî€û¸¿‡°! Ï¥kl©ÜNïǼÎnÏ[Ìo)ðkÞêææ³Ô÷¬,ç–ßñ2Š–aë°¯ps'±Ãî~:›~{eð©QmmX:y37Ǥ.¤Õ¤µÎ½ÁîΞÎ]+l!"=*›*k#8§ å#ó¼ã:“~•ñjñ,ÓR‹ÎÚÁ:Ò±Ä-÷œ*ÿÓ_ä×À«`¨Ò[K°+FäõŽb‚eƒáqC[ÊYÎÿÎÿ&ÊQ^QùT^mc-Q{Ë2f§”Ôq Žö³’™èGXîî.ºa9ù¥K-£qq˜÷˜o94Ž3ž³{’÷„ÿ)÷žè¤è›¢Uþ¤KõDýQ0Ü2þnŒ›Y¶™6²]jßáøâŒþEó€2:0y|”©z§ko’[Þ•¶õOlÐUÑtŸôûSíl–sG3Ùù†aÜfïä¼–>.‘85îÑ~9-n“×½ ·õ‘äYƒ¬™†9N(£þIoML·0Z2†2$Œ¬7œfü‚N ¹«¥e.´Œ´•ªÝ»Ý×Ëåoáh¥&\3þ{CR¿´’: NzöV dÙ丨±è„ï[ ªºæoOÎÖäl}AMVô\ömwt7n àEãy$1ùµ¯±¯²7¾>t/±¹ …DÓÐ*ìdO~ùj”Þ‰^I_EÿÀèÂô°7qFqN ×H'•j½ºÆÛÖéîšî‡Þ)þþ-P?èr²±ô—̽ËSÉß©íú~QàŒ|þ c+w‘o®ï9<SD–PzÑôìK±OÕѳÃ{7LÍÛŠê$Ù­X§ƒ_0H|SòP2‰²’ÆdÀ¼€&ïªÖÛnyžû[ú¿æeÂ.§/!u¡2›£›cr0+1'±¡)O&SHÔJÚûÜ2æv%·Ÿ _8Y¸CxK}IvY®ÅòùG8Õe­F?S×c ùXÐÎqˆ÷ÝËžiÞ&þ “ŠvAu¸_¬¼Œ>‰½€oH®IkÌú•[%ë¬Ù {`~gGøq°ƒv;Q7žblÅ•Z G»[_rVù‡{•0CÌÂ|ÔYDCh³âï­Ï¨¡™y‰E4ó0/õxrüÃ-ðþa¸e†!Æœ‹yꈔ5Î#stÙ"vdc1B¥Á‘DLï­à=i.ÒCÃhê{‚«é9cv•hé)Þd†G±ÒƇ^ ¿PÜŒ“îrÅíZ-›úÈž_Ð'½ñ'GÏæï7„‘“é_‘³I׉ ˜ËûÌß,ƒ-»}ë]¡’E¹ïØnî*W©@#½+W8¬hHÎ4“ʺ*²õ–¾Ÿ}ƒóH…z¿rŽù„y›¯4݈ô):Dù\å7Ïoä7žÛA±¿]©I{_óÈÞ 5ËÃå°O ~—Sõ†Jë0‡Ý÷ŒC‘©¬]ÜÁ¶"²·j æ›~]‘R¿Å\ªŸ!~Lg™=*ŒŠ‰‘Àl¹G­ƒBѧ¨¦¦ºK$Í¢,¥e\f\açotœžÅÀÆ®æå–¥e€ÇãÙ á3Ã}qmÐp4òRîzÁ¥@Ã×Mƒb÷KçKJÈ}/èkú‚¹£>Ä=Žá«¶“ŽS¶ò{¢’Sø'¢+t‚%.¨Œ-|c…¹È%¨{¸#ì­‚>Ò¾¨UŲªÝÈ:,¶Ü¬èãh/ôŽMÍ}«¯¤­¤*í(Ÿe?£ki©K‰Ê¥Í4™Ø+”¬ü®J†æZ¨G‚%jcÊi‹YŒo„7ò«où>Àáø;ÊSe®ü f®ð¨q·ñ»j·HÜÕV“b§2$× :¨ß×›ÛØ#˜A‚žUWÔ/ll*R‹ö {´¡Ø³–€bn66¨4ãj ˜Í”ŽÊQæaÐ)F¶æ.ÎÎÐŽ•îÁÞòQðÖ±ºǪǪ+ݪƺŸûF 0˜ÞØÃ¸ãÔÅt#sËʹ(¨'¸*È<à †«jÑÎ î°–òÿs÷ò¯‹f‰.ËÈ7çW¨zêÖ˜ÜfÀ>Ó~Ôe)ëê­ïç‘ú¬b6$$µÉ M'L_e{LŽÒmΞm]xLðƒ¬ƒ‘e ‰‘ù8U.Z‚PT¥G‰Py(¥@• ‚˜¶¨ó¨[¨S¨Ë¨k¨3¨«¨Ó¨û¨èöèžè–èÞèlt-TGÔ{tWt/t_ÔwÔKt3tmôdôtAš€F£g sÐD´]„6££hz#z=ú(úzzú"ú&úú9úúúúOL=L LMLkL+LKL{LWÌ(ÌpÌÌhÌxÌ 3ƒÇ°u1"Œ#ǘ1VâeŒãÂø0&€©Ä1‹0K0 0Ë0Ë1+00ë0ë1k1›0;11G1×0·K˜'˜ç˜W˜?1ß±llKlcllolì`ìH, ;;;KÇâ±bl!V„-Àš°Fl9¶ có±N,ä[êû»» »» »{{ {{û0ü{ûû'ö#ö®6®®j®®)® ®®=®nn n0nnnn*² n&n.æ"ŽŽáä”¶8=Nƒ³â‚¸y¸%¸Å¸Õ¸µ¸Í¸ý†æÁ+¸[ü¯ù/p/pqÏqŸñ5ðcñð}ñýðcðýñÃð½ððH¼¯Â{ñ |>^ƒÏÃÃx=ÞŒWãíx?¾¿¿¿¿¿¿¿¿¿ ¿ÿÿЄÐÿ ÿÿÿ—0’0À!Ì!ô'ÐS D‰0‚0˜KˆÌø57!IЊ aBa5Á@°–J K W  ·× ÷ ç‰- ˆ­ ß ßˆŸˆH":ÿqqqqQBä¥D1±„h&º‰óˆDq1q5q3q#qqq/q?qñññ ññññ ¦HR=R]RR#R R[RkÂaRGRwÒpÒ’4š4„"‰H{HN‹d"¹HÒ<ÒÒ"ÒrÒZÒ~Ò!ÒyÒYÒ9r}ÒEÒ=rr;r'²’Ü•Ì&Ï&çIö±ä±d-ÙAÞJN’W·‘o’·“·W“’Ï‘Ï/‘¯/“¯“ï“o‘_’?“?‘¿¿’¿QjRêSšR:—P²)})ý(ƒ(#(ãtg) š‚¤äPÈ6…IP¤¥ˆb¡$PtÔ ÊBÊzÊ!ÊcÊuJ9å åjNvN—œf9sêå´Ï™#Í™™34gX;GœÍÙ‘³+çxξœ9÷r.å<Ìy’s1çsÎjCjjkê œÓÔÞÔaÔqÔÉÔ©Ô T •@Í¡R©<ªˆšG- ª¨E<'UG5SmÔ%Ô-ÔýÔÃÔ£ÔóÔÓÔûÔ‡Ô»Ô›ÔÔgÔWÔ÷Ô·´Z´:´º´F´´LZ­'mm$m"m IÃÑÐ45Ÿ&¥É‘lšš¦¥yh­‚£­ m§m¦í ýF;HÛE;L»B{BûFûL{žë¡=ÍmÛ*·M.-·Kn‡Üf¹-s³rÛç¶Ëm›;'›‹Ì+Í-ÈUç–æÚs­¹ r¹+sWçîÌõçþ–»#÷hîÉÜs¹gs/æ^Ë}–û&÷Ozz{z;z3zú0úpúúdú:’N¢ãé :›Î¥O§«èjº®jÝDŸGßKßG?B?Mÿ~‘~~ƒ~•~~—~‡þ˜þ„þý5ý-ýýý#ý;#ƒQ‘Ë 10š1Z3z1ú1F0&2f0æ0Œ ƒÈ 1( CÆ(`h6†•ab¸NÄ(eT1"Œ0cc)ccã"ã ã>ã#ã5ãs#ÅìÊd2Û1›2{132;0[1û0»3›0G1s˜™b¦†É`ÎbNcÎer˜“™\æ$¦”)aR˜f9óÓÆŒ2íÌ3È 1aæ¯Ì2æææmæ9æFÆ+æNæ!æ&æeÖ\V+Vmæ{æÀ|ÇüÌÊ`ue~a¾f5b5fMgcõdõ`Íbgaõe aeMbMa°4,2‹ÂÊaIX…,‹ÇÊg1X¹,KÅŠ°‚¬RÖJV+Êr³ Ö ÖjÖ Ö1ÖQÖÖÖ~Ö!Ö6Öq“–u’õuõžõ™õŽ•b}c}e}gìºìzìFì†ì–ììÎì®ìÞìþl=ˆ=˜=‘dÓÙ6•Íd Ù¶•íb³av€dŸgÛØìKì3ìíìßÙ)ö!îyööuö ö1ö>öavŒ}”Óý‚ýšÓƒS“S—ý’ý'ÍÇ™ËíÈAq‚/ÇÌYÁQsr|'ÉÙÄ‘pDœ]œ'œ=œCœ{œ£œ³œ÷œÜÖÜ!ÜÚÜÜîÜa¼NÜ6ÜžÜ&\WÁUs‘¼ÞÜJn€»˜»Œëäîà^åžåäænç^æîã¾æ>²ÖãÞæÞa¯äÞã¾äõå¾ç¾ã¾á~æÜo¼¶¼Ž¼Z¼_xÝx}xCxCyÃyÃx#T³y3xD7—GæÑy¹<%¯ˆgåÙÊܼ/É[Áû·Ÿwˆ·—w€w‚w–ww…w›w‡÷Z ä×çgð¾ øCùÃøCøù(þþLþD>ŸËçò|!ŸÁgóóø6¾“ï廸v~˜Ÿàïåoååïâïààoá_ä_åßæç?ä?á¿âÿÉÿ h"h-è,è.è!è//&˜(!.˜&  ˜Š€#à \‚<Á2A xe‚%‚ù‡à7ÁKÁFÁ‚ ‚'‚-‚û‚›‚‚»‚‚­‚S‚C‚G⸰³pš°—p‚p®p)Ü ì#¤9BÐ$L }ÂU aBÚÄ«…[……ÂMÂyÂm¢&Âra±¨†ð˜¨®ð²(KÔ]xGÔPxRx^øHxA4LÔ\„^Þe ? o _ŠzŠz‹Ú‹º‰º ‰´"ˆ&*IDxQ±H.)*QD ˆ%¢‹rE‘X´^´ZtZ´[´WtN´KtŠúXtLtC´]´_ô«¸¿ÍÅE•¢¢›¢Çâšâ¢”¤¾è“è葸–h¸³è¹¸¥è™¸¾¸¹x¯¸›¸…xЏ¡X)&.O³Å1_ÿTþíü?òåÿ™ÿ5ÿS~JÙHÙTÙAÙSÙOÙW *)G+Ç(Ç+'(§)g+ÉÊBe±Òª´(K•°2¨\ üU¹U¹^¹_yHy@yJyVyWy[yGùIùݤ MAý‚Ž­ : )PЫ »`\²Uu¹€T .ä¨ ôº‚# Nl/ØSð àEÁÍÂ…µ …Ù Ž*$Ž/dR 'Ò E…y…œBq¡º°¸°¬°ªð×Âc…¿ž/x]x»ð^á£Â'…/ ß¾*|]ø±ðƒ ¡ÊPÕR5T5V5RµRµPuVuWõUQMQÍUÍRÍTQUÓT9*‘Š«¨$*™ªH¥V•¨JU…*·Ê¥²ª*TQUBµXµPµOµAµ_µIµSµEµCµNuRuLuVuEuOuSõ]•R}U×P½R}V½Q½U7P7R×SwQ÷Pgª»ª³Ô¿¨‡¨Aõhõtõ õ45MMV³ÔlµP-R‹ÕµT§VªÕê"µAmVÛÔNu™Ú«ªêˆ:ª^«Þ¨Þ¢ÞªÞ¦Þ§>©¾¨>«¾©¾£~ ~¤~Z2@ýESWSGƒÐôÒü¢é¬ÉÖt×tР׌ÐL×äh„‰†ªáiLšbVãÕ”i ͪ/ÓÃzŸ>WÑ×ïÕŸÐÿ®ß¨?¤¿¡bhfh©¨``CC ý[ýCC#ý{C7CCoCÃpCÃXÃÃdÞ€2L0  dÃÀ5 <ƒÔ 2Ø ~Ã"Ã*Ãà Ã|ÃRÃÃzÃ:ÃjÃVÃNÃÃAÃ>ÃeÃYÃuÃÝØhÃKÃÃ;Ã{ÃgcmcMcGc+c}ãTãlcã ãxãPã4c‘hD•F¡QnD9Æ€Ñe¤}F£1fÜf\m\hÜd—Ô.É*i_–Œ/™‹$”àK%‚’ü’@ÉÂ’e%ËKÊJ<%›KÖ”(9T²¶ä¨³[ÉŠ’ó%7Kž”üQr«äZÉËÒæ¥µKë–¥%_J›•Ö+mTò©´~éÒñ¥ÃKG—f—ö*m_Ê,e”•Î)E––’J…¥òRJ)®”S*vÖ*]Pš,µ–®)=^º³tOééàÅÒ¥J7”.=Tº½ôeé›ÒÛÎ&ÎF¥ßKß—~p6.=ëlælílåÌrvutsŽtöpŽvNqNrb'ÝÉvJœg±³Ê©r›œJ§ÕrÂÎÕΈs³Ü¹È¹Ö¹Û¹Î¹ßyÀyÞyÙyÅyÃùÉUÓùÕùÎùØùÆ…p5tÕwµpMvuve»z»ú¸&º¦¸F»†¹F¸æ¸:¹˜.º‹ïâºd.±Ká*ti\Å.›Ëér»®°k¾k™k‰k¥kk½k›k§k·këªëºë†ë‘ëë£;ÃÝÚÝÔÝÐÝÁÝÉíæžè¦º±îiînƒ[æ–ºÙn‡Ûê¶»—ºç»!÷b÷wÔ½Ð}À}Ò½Ï}ÕýÌýÖýÈ}ßýº¬¥û¶û®ûƒû¦ûZYò:eíÝwÊZ—5-kS–Y68´¢¬{YŸ²qe=Ë&–Í)C•!Ëf–˨e9e’2F™´LQVXf,3—yʼepY ,X)‹zFy&zÆ{fxæx´‡àa{¤ž"Îcõ¸<ÛSîñz*<O˜Ýɳʳܳӳ޳Á³Ú³Ùsij×sßsÏsÕóÍóÙó¥Q^«¼~yò&åÊ›&‘å-<'Ë[–·.”ËÊóË Ê-å‘ò}å»Ê·•ÿ^~µübù‰òkåÇËŸ–?+¿U~¯ü«·®·^yÊÛÉÛÙÛÔÛÅ;É;Ô z‡xgy§{gzçxÑÞ^Š—ëez{{9^‚WíUz ^‹·ÔëðÚ½e^·7à…¼Þˆw¹w¾w¥w­÷ww—÷ ÷ˆ÷¸÷š÷ž÷«÷‹÷™÷»¯¾¯–¯•¯¹¯¯…¯£¯‹¯ƒ¯¡¯»o°o´o¤oªo’oœoŽo¦ošé#ùh>¶ããú⾤o¡o•oï7ßUßß]ßSßK©ï¿–ï“ﳿ™¿•¿«¿‘¿³¿µ¿¿‡˜¨¤ï£åGû1~¬¿±¦œŸè'ûé~¡_áW—ú•~«ßè·øÍ~·ßå÷ù—ú×ø×ù7ùïúï³gø¯A5¡æP;hB³ "D†8A*ƒ\Z­€Ö@Ë¡MÐFh´Ú …ŽC§¡‹Ð-èt ú ý ½‡;C)¸%Ün7ƒé0 ž Ï„¹ð ¸φÑpÂ8çÀ¿Ã[áßà'&ðçÀ”@ÿ@»@V } [`T`h`t€` y€XXX¨l \ \ <<\ìÜœ ܯh_Ѳ¢EÅÿÅÞ{€GQ-`ÿ»$Téi DzI¡H¯¡“í-ÙÍîf{ßl¯I¶—$›-ÙÞ@i"]¥+J¤ ÒD JP¢¸ß,EÁ‹÷ªñ»ü¿ûŸó°!°.°1ðvàÀ»Ãƒý ç‚m'÷ƒ™ÁfÁÁNÁ¶ÁÁvÁ®ÁÁœà`np\pRprpfpVpNpzpn¤éAf<ä˃ê %¨ ‚š 5X¬ ºƒ±àŠà²àëÁ·‚ƒ»ƒ{‚û‚ƒç‚ß&aÁÛš‹Á{Á»¡v¡Ö¡WC9¡ìÐØÐ¤Ð¬,4?Ä ‰BâPyH’†V†Ö†Ö‡Þ}ÚÚú*ôM8#Ü2Ü1Ü9Ü=œîîÎ g…‡…G„'…'‡§‡ç† Ãððü0"Œ /cÂÁp(¼4¼:¼&¼-|1üiø|ø“ðÑð·áï··Ã?…Œ@#í"M×#="C#c#…‘é‘©‘‘ÉLda¤$‚‹#eF„áDxndud]d[dWäHähäxäDäBäbäräóÈ‘‘o"ßEîDnE~ˆümí}9Ú7Ú/Ú?úJt`tPtptHtDtd4?:3:# ‹.ŒEQ|TõEMQO4 F“ÑEÑÑÑ]ÑÑw£{¢G¢G£Ç¢ŸG/G¯DOD?‹ÞŽÞŠÞŒu‰u޵ŒuеŽ5‹µˆuŒµŠeÆFÄzÆ^‰åIJc¹±Ù±üجØäXqŒcÅ1UìZìzìf¼e¼Eì›xF¼Y|H|@|m¼¼o|f¼K¼c|Z|J|r|V|Nœ/Óãˆ8mrR‘aΰüþ¯I ‹!Ë ;ÿý_œüµÙY y²&»dIv× k†=ÑáÌX™JeÔre¼ |­ûõ¯kVe¬ÎX“±6ã@†;ãPÆûeÌX—q8³IfFfffÓÌf™Í3[d¶Ìl•ùRfë̶™íþ™Vf"3Q™èLL&6—‰Ï$dg–d3K3É=Ðö©t |@Ó S€¯ó Ÿ@‘Àw&äÂìÿЛÐÐÈAÈèËЮЎÐîÀ]{Aû@ûA³ 9 ‡ G ‡¡G ¹Ð!ÐÐAÐQÐ1ÐqÐIÐ ÐÐÙÐBÈQÈqÈ1È)È èQ(ºrІâ¡Xh1”¥@K¡thä,ä ääS(z*†r¡¨ʆž†~ == •AÎCUPT ÕCµÏ — W —¡ÐÃP(´)ä*äshshKhÈ5èKÐv¯ _B¾| í ííí½ í í ´9ú ä[ÈuÈ ÈwÐ߇BGBCGCÇBÇC'C'BgBç@gAnA¾‡Ü†ÜƒÜƒ"  !w¡(Šƒ–@IP*” e@iÈ}ÈÏŸ è h9”•BEPôè9èYè)¨ò’‚*¡hTWÔ¤(³¨iQ뢎E}‹úå *Z4¢hdQnÑ袩EÓŠfÍ.B‹hEì"N‘¬H^¤.ª,ª- ‹âEk‹Þ-Ú]ôqÑÙ¢O‹.}Vt¹èË¢E·Š¾/º[ô è—¢ kË€µ€½k ëëë ëë˃Q`°Ñ°±°q° °É°©°é°9°¹°ù°0$ ÃÂð02ŒãÂø0!¬¦„©`j˜¦‡UÀ 0#Ì ³À0'¬悹a^˜V °,KÂ6À6ÃÞ…m…mƒm‡í€í‚½û¶¶¶vvöììììì2ì&ì6ìgØX Cá™ðæðVðÖð¶ðöðNðnðîðžð^ðÞð>ð~ððð\x>¼>>> >^ŸŸ_/‚#àH8 Žƒàd8^§Á™pœ ÀÅðrø¸n‚›áV¸î‚×ÁÝp/ܯ‡àQx ž€'á‹à‹á¯ÁWÂ×Â×Áß…oo‡ï‚ï†ß ?? ÿ~~þ üü<ü"ü2ü ü ø—ð¯à7à·à÷à ð_ˆfˆæˆˆ—­mmá·íÝ==½½}ýƒÃÃ#yˆÄ(ÄhÄ«ˆqˆéˆy…À p<‚Œ #˜ˆ „ aFT#\ˆ"ŽXŒx±ñb bbb'â}Ä>ÄÄQÄ1ÄqÄIÄ'ˆ ˆËˆ«ˆï·ß#î ~@B‘MM‘‘]]‘Ý‘ýƒyÈ|ähäDd!r.ƒÄ!ñÈb$IFRT$)D*‘*¤Y…4"-H'²éCú‘dBF1ääRä2äräZä:äÛÈÍÈw[[‘Û‘» ÷ ÷!! "O O!?EžC~†¼ŠüùòkäuäMä-ää=ä(*Õ õª5ªªª;ª'ªªª/êÔ@Ô Ô`ÔPÔ0ÔpT.*555 55µ5E@• ¨(Šâ£( Jª@™P6”åBùPõ¨0*ŽZŒZ‚Z‰zµµµµ µõj j;jêCÔÔ1ÔqÔIÔYÔyÔÔ%Ô¨k¨»è&èNè—ÑÙèèAè!è‘è<ô(ôhô ôLôlôB4 ]Š.CÓÑL4 ÍAóд-CW¢ hÚ‚¶£èZ´íGÐ1t½½ ½ýz%z5z z=z3ú]ôôVôNôôôGèÃèKè¯Ñ×Ñ7Ð÷Ð?£A§0 ÓÓÓÓÓÓÓ33“ƒ™€™ˆ™„™†™™‹™‡Yˆc<¦S‚)ÅP0T ÃÄTb #ÆŠ±c\˜:ŒãÅø0õ˜ æuÌÌjÌÌNÌ{˜Ý˜=˜ý˜ƒ˜C˜Ã˜£˜c˜ã˜Ó˜O0Ÿb.`.c¾ÂÜä°M±-°­°m°m±í°í±°±=°Ã°¹ØìhìXì8ììDì$ììTì4ì ìLì,ì\ì|ìB, ‹Æ–b)X*¶ KÃ2±¬+–c%X9ÖŒµ`íØjl Ö c#Ø86Mb—a—cW`ßÀ¾‰]…]]} »»û!v?öö ööcì!ìGØ3ØsØóØ‹ØÏ°W°W±_`¯a¿ÄÞÂ~ƒý{ûŠk‚kŽk…kë€ë‚{××—…ë‡ëËÁ½‚Œ‚†‰+ÀÂMÂMÆMÁâfáàâ¸2DZq<œ'ĉpb\9NŠ“áä8%NÓà´8®gÀ™p5¸z\ÆEp1\—À%q‹q~ÜrÜ Ü¸U¸wpÛq{qûp‡pGp'qçqpWp_à®á¾Â}‹»‰»‹»‡û÷÷ .…ÏÀgâ[à[â>÷ƷÁ÷Ä÷Á÷Ågáàâ‡ãóñãðSðsñ ð ñ0<Á“ñT<ϳñ*¼_‰¯Âð6¼ïÀ;ñ5øZ|Þ¯Çðqü"übükøeø7ðëñðà·áßÇïÄ?Œÿ  ÿþ2þ+ü÷„¦„f„—­  ­Ó½ Ù„þ„ ÂHB.¡€0š0†0…0ƒ0‹€$ B D(% TÀ#"‚„ '(j‚– #Tj.‚—à' IÂÂrÂjÂÂZÂ:Â[„Í„-„m„÷» ö>"#œ'\ \$|N¸B¸FøŽpƒp‹p›p‡ðC1¤8³¸uq›â¶Å‹;÷)î_œS<°xPñâáŹÅ3‹ ‹gÏ)^P /Æ—ÓŠŬbA±²XS¬-®(®.vûŠÅáâXq¢8Y¼¨øµâåÅ«Š×o(~«xSñ;Å[Š·ï,þ xOñ¾â#Åg‹Ï_*¾ZüuñwÅw‹ï?(”@KZ”t+UÒ£¤gIï’ì’WJ†—¼Z2­d~É‚d ¶¤´„]",•èJô%%•%†s‰µÄYâ*q—xJ|%õ%’%o”¬*Y]²¶d}Ɇ’Í%[J¶•ì*y¯ä£’#%§JN—|Rr¦älÉ¥’%·Jî”< ¶&v#ö!ö%ö' &%#Ž æ󉣉cˆb1‘H,#Òˆ,"›È! ˆb¢Œ('jˆZ¢Ž¨'Úˆv¢“XGôãÄ$qñ5âëÄeÄ•Ä ÄÄMÄ-ÄýăÄcÄóÄÓÄˆ·‰wHPR3RRGÒPRRii )4Š4Ž4‰4…44ƒ4‹4‡„!!HÒ<™D!QIe$:‰KÄ$5ICª U’ $ÉNr’¼$©žä'…IQR’´ˆ´œô&ii#éÒ»¤Ý¤½¤ƒ¤I‡IŸÎ.‘®¾"ýHº_ )m^Ú¦´ciçÒ.¥ÝKû–f•Ž(Tš_:ºtréüRxéÜRD)¶_ZRJ,--e—rKy¥üRA©°T\ZUZ]ê*}­tIéÒÒ¥+KW•®/}«t{éŽÒ¥{J•,=\z´ôXé‰Ò“¥çJ/”^-ý†Ü„܌ܜ܂ܖ܃܋ܛœMîGîOÎ!"%# ç’G‘Ç''‘§§’g’ É³É Ép2šŒ'—)d™Nf‘Ed YF–“Ud YO® ;ȵä:r€#Çɯ‘—“ß$/!¯"¯%¯#¯'¿Cþ€¼—¼¼Ÿ|ü1ù(ùù8ùùù3òeò—ä¯È_“¯“¿%G¾A¾Mþž|Ü@þ™ÒœÒŠÒ†Ò‰Ò™ÒÒò2¥/%‡2œR@M™J™M™C™KY@APÐ,G!Q¨¥œRA©¤)VŠâ¤¸(Šâ§„(qJ‚òe e)eee=e3e+eå}Ê”}”ý””ƒ”Ô#””“”3”O)ç)(—)W)·)w)?R~¦< 6¡6§¶¢¶¦¶§v v¤v¢v¦v¥v£ö ö¢ö¡ö£¡¥æR󨣩c¨c©ã¨Ó¨…ÔYÔ¹ÔR*…ʧJ¨*ª–ª£VR«¨ª‰j¦VSk©^ª¤†¨1jœš¤.¢.¥® ®¤®¦¾C}—ºº‹úõ}êaêêIê9êyêêEêgÔËÔkÔ¯¨W©×©ßRo”AË2Ê2Ëš—u*ëRÖ«,«¬_Yÿ²eƒË†–+›T6½lFÙ̲Ye Êàeˆ2dº [V\F,£— ÊDeÒ2M™¾¬¶ÌUVWæ.[V¶¢ì­²·Ë6—m)ÛQ¶³ìƒ²Ãe'ËN•-ûºìvÙ²ŸËÐ2h™´V´—hmhíih]iÝiƒiChÃi£ichãhiÓhÓi3h3i³hóhóiE4$ ECÓð´ƒÆ¤ñiZ9MF“ÓT4MO«¤if𿤹iõ4?-L‹Ð´%´e´Õ´5´µ´í´÷hÒöÑÓŽÒŽÓNÐNÒÎÑ.ѮҾ¦]§Ý¦}O»Kû‘vŸÞ’ÞŠÞžÞ‘Þ™ÞÞ‡žEïGÏ¡¿BLBIÏ¥¦O¢O¡Ï§Ãè:’Ž¢£éÅô:‘N¢“é:•N£ èRºŒ®¥ëéº^GwÓ=ô=LÒãô$}1ýuú2ú ú*ú[ôíôôôèûéèé‡è‡éÓÒOÒOӯЯҿ¢Mÿ–~“~—þý'zŠed2Z0Z2Z1Ú1:1:3º2z0z2ú0ú2ú103F0òã“3³sp’f‹Áchz†aa8^†ŸbÄ‹¯3–1Ö060Þbldìd¼ÏØÇØÏ8Ìø˜q‚qŠñ ã"ã&ã6ãã.ã>ãFŠ af2[0[2Û0;0;2»0»2{3û0³™ý˜ý™9ÌÌÁÌ!Ì¡ÌaÌÌ\f³€9Ž9–9•YȜŜÇ\ÀD0‹˜8&žI`–0‰L “Êü‰Éeò˜|fSÊ”3+™J¦Š©fj™UL³šYìeº™^f˜aF™1f’¹ˆ¹„¹š¹ž¹¹‰¹•¹“¹‹ù>s7sóó0óóóSæEæ—Ìo˜×™ß1XMYÍYmYX=X½XY¬~¬ÖdV!k6kk ͰH,&‹Ï²d,KË2°Ì,«ŽåaùXVˆfEYëXëYX›X[YÛXÛY÷Y»Xï³v³>dícígcfac}Æú‚u“u›uõÉîÌîÁîÍîËÄÈÆÎÉÎeç± ØØSØ3Ù…ìyìl ÇÆ³KØ<¶-b‹Ùål [ÎV³5l-[Ç6²Íl+ÛΰCì;Æ^Ì~½”ý{%{ {{+ûCö>ö!ööÇì£ìãìSì3ìsìóì«ì/Ù_³¿a_g˾ɾž˾Çþ‰ý3û§§%§§=§§§+§'SÀÍy•33SÈ™Ë)âà8%‡Îap˜6‡ÃásÄœrŽ„£áh9•œ*N-ÇË pBœÅœ¥œeœœ79«9k9›9ïp¶p¶q>äìãåœâœæ\æ\å|ǹÁ¹Åùžs—ó Â…r3¸í¸¸]¸/s{s³¸9ÜAÜ\n>ww,ww2w ·;‹;—;[Ä…s\$ÃÅrK¸t.‹Ëå–s¥Ü ®kâZ¹6®ƒ[Íõp£Ü87ÁMr—rßä®å®ã®çnänçîàîäîáîçîãâ~Ì=Á=É=Å=Ç=Ͻ½ƽνɽŽÍý™û€×„—ÁkÆkÎkÉkÇkÏëÀëÆëÉëÃËá â å ãäæáMàMáÍâÍã-ä!yXžGâQx,'ä‰yržžWÁ3ò,¼ /ÊKòñ^ã½Î[Á{ƒ·Š·š·†·Ž÷ï]ÞvÞÞnÞ¼ý¼C¼S¼³¼ÏxŸó¾à]ã}Ç»ÅûwŸ—â7ágò›ò[òÛðÛòÛó;ò{ðûòðòñ‡ñGð ø£ùcøãùøSøóøóù ù0>’æø%|"ŸÇðE|_ÁWñÕ|-ß·òm|¿žïçù!~ŒŸä¯ãoàoä¿ÏßÃÿˆ„ÿ1ÿ(ÿÿÿÿ,ÿÿÿÿ+þ7üëüïø·ùw™‚æ‚V‚¶‚v‚‚N‚—ƒø,ÁÁHAž`œ`¢`Š'(TCÀˆbN`ØWP/‚‚`¥`•`£`³à]ÁvÁNÁ‚}‚‚Â#‚S‚Oç——W_ nn îî ~B„™Â>Â~ÂÂ|áá8ááDáLa¡pŽp®p¾&D‘B”-Ä ‰B’°TX&¤ ÙB©P+Ô k…>aX¸H¸\¸Z¸F¸^ø–p«p§p—ð=áná^á>ááGÂÃÂ#Âo„ß ¿Þþ$| ʵµµµuu½,ê) ,")ʈƈ&ˆ&І‹`"„)B‰p"‚¨XD•Ѝ¢2[ÄéE"“È&²‹ªE5¢Z‘[äùDõ¢€("JЉ–Š–‰–‹VˆÖˆÖŠÖ‰6‰Þm}(Ú+Ú': :+º úRô•è¦è®è¾ègÑ1DÜTÜLÜ\ÜFÜMœ%î/)%+'ž(ž!ž)ž#ž+ž'ž/F‹1b’¸T\$¦‹b¾X(–‹â ±Al[Åõb¿8 ŠCâ¨x‰øMñ:ñzñFñfññQñqñ ñIñ)ñ'âsâ+â†òŒòÌò¦åÍÊ›—¿TÞº¼]yŸò¬ò¡åÃËG–ç–ç•¿Z>­¼°|VùìòyåóËáåÈr\yq9±¼´œRÎ.W—W•[Êmå5åÞòHy´|QùkåkËוo(«|KùÎò]åï•P~°üPùñòSågÊÏ–Ÿ+ÿ±ü DÒ\ÒBÒRÒIÒMò²¤·¤¯$G2T2R2Jòªdœdšdºd†¤PR$Ià”#ÁJŠ%DI©„"¡IØžD(IÊ%J‰J¢•è$•³Ä!©•¸$>IT²B²Z²F²^²Q²Còžd¯d¿ää¤ä”äÉEÉUÉ÷’;’ÉO’_¤M¤™Ò¦ÒæÒ—¤m¤¥¤Ý¥=¤}¤ý¤9ÒÒAÒaÒÙ~Ù!ÙDzã²OdgeŸÊ.È.ʮȾ”}-ûFvCvGÖ ûIö³,%o&ï(ï*ï&Ï’gËsäåƒåCä#åcäãä“ä“åSäSå3ä³åsäEr¸)ÇÉKåd9U.’—ËÕr\+×Éõò ¹An‘»å^¹Oî—‡å1ùkò%òò-òò]ò÷äÈ÷ÈÉËÈOËÏÉ/Ê/É?“_‘_“_—'¿!¿%¿¯€(š(2™ŠæŠŠVŠÖŠvŠŽŠNŠ.Š®ŠŠžŠ^ŠÞŠ>ŠþŠWƒÃùŠÅhÅ«ŠqŠñЉŠyŠ©ŠiŠŠ™ŠBÅ\Å|FAPtC!P"E¹B¦0(,ŠE­Â¯ˆ*bЏ"©X¤xMñºb‰b©b™b¹b…b¥bµb»â=ŇŠýŠƒŠCŠÃŠŠ3ŠKŠ/_*®+n*n)î)î+~VB”Í”­”m•••]”Ý”=”/+{)û))‡+G(G*G)G+Ç(Ç)')'+§+ •³”ó” •EJ˜©Ä*qJ¢²TIVR”eJº’¥ä*ùJ±R¢”*eJR¯¬Rš•5ÊZe½Ò¯ (#ʤò5åråJååZåzå&åånå~åQå1åIåååEå%ååʯ•ו7•·”w”?*R5U5SµTµQµUuPõVe«ú©ú«†«F¨rU£UcU3T3U³UsT TE*¤Š¨*UQTTMEW±U\•P¥QU¨œª:U½*¤Z¬Š«ª¤j‰j…j•jµjj½jƒê-ÕVÕvÕNÕ^Õ>Õ~Õ!ÕaÕ1ÕqÕIÕ)ÕÕ§ª‹ªKªÏT_¨¾VÝV}¯†¨î©~P5¨~R¥ÔÍÔ­ÕíÕ/«{©û¨ûª³Ô¯¨ª«‡«óÔ£Ô£ÕÔ“ÔSÔ3Õ…êYêyêùj˜¡F«ñê5QÍRsÔ<µD­VkÕ:u…ºZ]£ö¨}êzµ_P‡ÔQuL½X½Bý†úMõZõzõFõ;ê­ê÷Õ¨÷ª÷©¨¨O¨O©ÏªÏ«/¨/©/«¯ª¿V£þV}Ký£úgMM†¦¹¦¥¦•¦µ¦ƒ¦‹¦§¦&[3P3T3\3R“«¥­yU3N3^3SS¨™­™£Y Áh°‚†¨!iÈІ¡ai¸F®Qi*4U£Æ¢±jœšj[ãÑÔkšEš×5«4oi6iÞÕlÕlÓìÑì×ÒÖÕ|ªùRó•æÍuÍ-ÍÍOšš_´Íµµ}µýµµƒµC´CµÃµ#´#µ¹Ú<í(í$ííTí4ílm‘£¥héZ¦–£åjZ‘V¢•j•Z³Ö¡uiÝZ6 jÚEÚ¥ÚUÚµÚuÚ ÚMÚ·µ[´[µÛ´Ûµïk?ÔîÓООҞ֞ўÕ~ªýRûµö¶öŽö®öGí}mƒögí/:¨®‰.C—©k¦k©{I×Z×V×N×C×S—¥{E7@7H7L—§+ÐÒÑÓ×ÍÒÍÓatR‡ÒtźQGÒ•ê¨:šŽ¥ãè:¡N¬“èÔ:N¯³êlº:]½.¡[¤[¦[§{[·Y·E·U·M·S÷n¯nŸn¿î#ÝÝqÝ ÝIÝiÝÝYÝyݺ¯tßèîê3ôÍõ-ô-õíôôõô]õ½õ}ôýõôCôÃõyú‰úIúÉú©úiúÙú9ú…z„¥Çé úb=QOÒ3ô,=W/Ö«ô½V_©7èz“Þ¢·êíúj}¾VïÑôA}\ŸÐ/Ó/ׯԿ¥[¿Yÿ®þ}ýnýúõ{ô‡ôéëOëÏT@ô—õWõ_è¿Ö£ÿVKWO_ßPÑ¢¢}E‡Š.Ý*zUô®ÈªX1¨bXÅðŠ‘c*¦T̬(¬˜]QT¯@Và+ÈÔŠ² F¯BX!ªV¨*** Ö […³¢¶ÂSá¯UD*â‰Ê‰•*'UN®œR9£rfåìJX%²UYRI¬$UR+i•ôJF%³RPY^©¯¬¨¬¬¬ª¬®¬­¬«tWz*•ÁÊXåâÊ×*—U®¬\]¹±r[åÎÊ]•»+÷U®Ú>Þ>Ñ>Í>Ã^hŸcŸkŸgŸo/²#ì;ÖŽ·Û‰v²b§Û9ör»Ú®µWÙCöˆ=jÙ“öEöö•ö-öíöö]ööƒöCöì‡íGíÇìÇíŸÚ/دÙoØoÚoÙïÚp@Ímmí]]Ý=/;z9²ƒ¹Ž«ù²æzÍš›5·kîÖüPócÍ/5©ZhmFmËÚŽµÝj{Ö2j9µüZame­±Ö\k¯­­u×zjýµ‰Údí¢ÚeµoÖ®ª][»¡vSíæÚwk·Öîªý°vOíÞÚ}µj×­=Q{²ötí™Ú+µWk¯Õ^¯½Y»­öVííÚ;µ\PW¦«©«™ë%WWgWWW–+ÛÕÏÕß5À5Еç*pqu½êçšäšêšæšïZè*rÁ\hW‰‹è"¹J]TW™‹ãâ».‘Kì*w©]—Öet™\—Ûåuù]WÔw%\¯¹–»Þp­v­q½åÚäÚâÚêÚåzϵÛõk¯ëˆë¨ë„ëœëK×w®›®[®\÷] ®oë uMêš×µ¨kW×¾®k]·ºîu}ê²ê²ëú×½R7°nPݰºáu#êFÕ®S7¶n|ÝÔºiu3êf×ÁêuÈ:TºS‡¯#Õ•Ö1êâu‹ê×-©[Z·¬nSÝÛuïÔí¨ÛU÷^Ýžºuë>ªû¸îXÝñº“u—ê>¯»R÷eÝwu·êîÖÝ«û©îww¦»…»µ»»»§{{°{¤{ˆ{˜{¸»À=Ê=Ö=Å=Ã=Ó½À]â&¹ËÜL7ËÍw‹Ý2·ÚmqÛÝÕî·ËívûÝAwÈvG݋܋ݯ¹—º×¹7¸ßrot¿íÞî>äÞáÞíþÀý¡{¯{Ÿû¤û´û÷÷9÷y÷E÷U÷1÷=÷7îî›î;î_Ü)Ä“éiêiæiáiãiïéìéêéæéîyÙÓËÓÇ“åyÅÓÏÓß3Ð3Ø3Â3Ò“çåãëçï™è™ä™á™í™ãyPœ‡à)ö”x¨º‡åxdµGãÑz “Çâ±zœ—Çãñyê=~OÈ“ð,ö,ó¬ð¬ò¬ö¬ñ¬ó¬÷lð¼åy۳ճͳݳÓó¾g·çCÏqÏ ÏiÏÏYÏÏÏUÏWž¯=×=ßz¾óÜðÜôÜòüà¹ïùÉóÀ ñB½™Þ¦ÞfÞæÞ–ÞVÞÖÞöÞŽÞNÞ®ÞîÞ^ÞÞÞþÞï+ÞÞAÞÞ‘Þ\ow´wŒ÷Uï8ïxïDïdïTïtï ï,ïlï<ïBo‘æExñ^‚—è%y)^ª—áeyÙ^ŽWèyÅ^¹WáUzU^µWëÕyõÞJ¯Ýëð:½µ^—×ë zÃÞ¤w‘w‰w©w¹w…÷MïZïïÛÞw¼[¼[½Û¼Û½;½»¼ïyß÷îö~èÝãÝëÝç=è=äýÈ{Øû±÷¸÷¤÷´÷ïï9ïyïEï%ïgÞϽW½×¼_z¯{¿óÞôÞ÷þäMù ¾&¾¾6¾¾Î¾.¾^¾Þ¾>¾¾¾l_Žïß@ß`ß_o”oŒo¬o¶oŽo®îCø>ŒçÃûŠ}¥>ºácù8>®OàùľrŸÔ'ó)|ŸÞWé«ò|FŸÝçôUûj}u>¯Ïï ù¢¾„o±ïußß2ß ß›¾¾M¾·}[|oøÞó}àûзǷ׷ßwÀwÐwÈ÷‘ï¸ïŒïœï‚ï¢ï²ï ß5ß}ß¾} ¾Ÿ|ê¡õMê3ë[Ô·¬oSß¶¾]}—ú®õÝêûÖ¨YŸWŸ__P?ª~Bý”úIõ3ê ëçÔÏ«_P©'ÔëÉõÔzZ=»žW/¨Ö‹êËë%õfà£Ê¯öWøÍ~»¿Æ_ëwùãþ„?é_ì_æÃÿ¦•£ÿmÿÿvÿNÿÿ>ÿ~ÿAÿÇþ£þcþãþ3þ³þóþ þ‹þKþ+þ/½}ý9WÃy‚ÀØÀ«qñ‰IidÀp|€dm@¨T cÀ0O ˆâd`I`i`YàÀšÀÚÀ[-c¤ Ogç_nn‚M‚Á¦Á–Á—ƒ=ƒ½ƒÙÁ~ÁþÁAÁ¼`ApZpFp^°( b‚¸ >X, Ò‚¬ 7( JƒŠ 2¨ jƒú`e°*èúƒ`0F‚‰`2øZpUpMp}pCpSðíà;Áwƒ[‚Û‚;‚;ƒï?~ÜÜ<<ü(x8øqðhðDðtð“à™àùà…à¥à§ÁÏ‚W‚7‚·‚w‚? 6„š‡Z…z„Ú„Ú†:‡º†z…ú„²BýCBCC#B#C¹¡üPAhtè•ÐäÐÌÐìм"„ ¡BØ.D‡ÊB´#Ä qCüЛ¡Õ¡5¡u¡¡Í¡wB[B[C;Cï‡> í  }úþ]Æ–0¨ôá9_ÆžÏg(ü‘ø… F©)C2²PHÑ9B–t¤j¸”Ë‘§‰Çä`iÏ»Gnnî¨Q£²ÒßÇŽýÌ÷ô©±còs³òòF›;vT~Þ¨¬Üü±yùc!Y¹ÿ —ʨ )"šôßÖûOçu&ë×ïÿ”_¾i8üôþÛÊ#úÖ?þ)ÞÞP tdS@Í5ÔPK@éÌÜ—µÔP:K/y–Îï¨# N€Òy£]uÔ Pw@=¥3™{JÇÞ÷”Îjì ( P6 tu@é<ÛW 4P:çn0 tæ÷P@à O·ÐH@éi•(Ý×@é¼äÑ€Æ (£8Ðx@M4 P:kv  ©€Òyóé º€ÒyÜ…€fš (Ó9Ð<@ó-´P:Ë(qˆ”Î{ÇÂÂJçÀ*DD”ÎÊ&¢¢Jgh¦× P:g˜ˆ ˆ(?(”Îb*”ÎhMÏi 9  % t޵P:ßR¨Påã?úåwJýÁñÿJA ) ÿ) ÿ) ÿ) ÿ) ÿ) ÿ) ÿ) ÿ) ÿ) ÿ) ÿ) ÿ) ÿ) ÿ) ÿ) ÿ) ÿ) ÿ) ÿ) ÿ) ÿ) ÿ) ÿ) ÿ) ÿ) ÿ) ÿ) ÿ) ÿ) ÿ©J@U€ €Œ€L€Ì€,€¬€l€ì€€œ€ªÕªäTÈ ÈÈ ÈXS)?     0  (  8  ä_}V¿—¿Ržç“".†üKI<“G^Ojÿx½üšy˜þyêvÈs\ž__Vùðk_H R ù9Mµ‡½ýóÙñUÀ©TÐÛo=É€L 6þõvTV=ÖÃãS+›„þŠ’öȨJ=1H{2ºý©Ô”©ŸÆS%Yš!û³O•ª§†¶ïÔíÇþB;~—g<2ëïÑtAã=šµü<þtÞú{475Þ£ÅÔÀãAã=Zni¼G+eã=^õxÜj¼Gë5÷hÃk¼GÛ?íûo<®þ5ôG½ßïí^k|;Ú“ïѡ׾ú?zœi¼GÇ?§ýÇP÷èÜþðø¨ñ]œ÷è:»ñÝþt†ý¿ñx¯ñÝ+ïÑcÂ?àñcã=^ÞÔxž’F{0zü;O˜šº½Wý^ô§ûÒÑ(dڣϟΟÿãvô9ØhÖ}íڣݜ ¦] ¿B!MÒyè~*ýÏ¥ ½ØŒò禰?ìË`È?è÷Ã|öÆ¥ˆ§&¦Jû½òwRÄSmÒ)â@+þcŽxêRê³ÿnŽxêòÿHŽøßJr)˜(þŸŧô—2Å?“þÿ•1œÿ)ãìÞØüñJ5§,‡–CÏaä0sX9ìN7‡—ÃÏäsD9âœòIŽ4›’MÍ.˦eÓ³ÙÌlV6;›“JÌ-è\Я`aA÷‚c ¸‚6 ú -˜W0¡ V/H¸ ê >(Xüû¶h¹Ò;·ovׂ²³ó—ä/Í_–¿<E~^~~þ¸‚Š}ØK¨À2¢_`?Y ì2}ûíö”Áý†€Éé79=•³Ó_Lvz*¦§¿˜ôôT ÌO1ù驘 þbÔS)0CýÅd¨§R`Šú‹IQO¥Àõ“£žJIê/&I=•³Ô_L–:0çÁ4õ’¦žJyê/&O=•Õ_L¢z*fª¿˜Luà ¦ª¿TõT ÌUÿ¿›«þïÿ÷âï0¯ýïæµŸmÀÄö’ØžJ™í/&³=•SÛ_Lj{*æ¶¿˜ÜöT Ln1Éí©˜Ýþb²ÛS)0½ýŤ·§R`~û‹ÉoO î/(Á=•3Ü_L†{*¦¸¿˜÷T Ìq19äþb’ÜS)0ËýÅd¹§R`šû‹IsO¥À<÷“çžJ‰î/&Ñ=•úç2Ý+œŽ^¾9^»ùl¿x+3½Ï{Ÿù¹°hPÑgE?à ° Ø8æ…9aX=ì#øTx?X Þ> .†O‡×ÃïÀ?AÌCÐqÄÄudd ¹ ¹ ù) ‚jŽÊAIP>ÔÔù†¶èÚ‰~ÂXq· ···¡]*ÕПÀo ¼D@=L7¥–¶”`KvÉG–|Rr؇¸Œ¸…x—4„jè@šNÒЉÃnèÌ q.ss¹<™c—¹Wx§øSøD¾•/âŸd l‘ X%8"øQp[ð³pœ((œ(Ü)²‹6‰îЛЛ‹‰-â7ËÛ•g–ÓYJ ]Êß+ÿE²^²CšÓÐUª”n—î—ž’~.=&k.½+ ",!+“9dI9T.R1EBU,k覜…\«ÊV©è*:·¡{C†—Õõ =ÕQÍQ͵†^šo´‰†Þú9z¢~³~‘þT²rvåâ†>&¨©ÌTiÚkºgžcÞhAY©”…×Ðײ®!«!ÛÞÜ~×ÙÑ9Ö©v.wîp^lèç¼Wª®¬¹Ys§¶c­¢¡¿ëHCNÃ+n–ûBÃOÏ@ÏYÏiÏ…‡,Þ+ž«ÞfÞöÞVÞñÞ©Þ‰Þ"/Á‹ðŽó²¼Ërr¯yO{Ïx?nè=é½ä=î{Å—íý©a¯7åëíkâûp¾%¾=¾ ¾ëóÒ¼W¿÷þ¹†Áx`m° 8!8#¸0 "‚˜.ÄhÒ04<°aX8)Šœ‰œ‹Ê£’h]t}tk Çy Ã=GÓÿïš-Î.Ï–dK³eÙòlE¶2[•­N]N]I5O5yÞ¹çþe×ãúùyÙ]³³ûþgÖJ*õwW ¸V·V€Ýæo®–ÿݵògÿÎþŸ*ÿÿ‘Kçååýäà?Œ*Èÿ=ÿ1Ìhÿøß(Oñá¿«<¨×+ù ÿñ¹|Àçœù/žÿøâsè~}ROñ›?sêøø,ÿñO3ÿ˜ÿ½ñ×Ûñ/üGë_ñxÿ1YšÑôO÷å·ò{vãsÙËÔŽÔsYA™Yÿ€ÇùÆ{44Þ£®ñÍ;ÿú3Ý{´p5Þ£åüÆ{´jñx|Øx—Œ÷h=åðø¹ñmÞm¼G[Å_óx.»± ñíhw³ñíW7Þ£·ñþWïÑéï±’Ÿñèü§YÉìÑ¥ç?àñIã=ºúïÑ ÙxîDºû+‡ïÑÃÑx—g5Þ£gF£==wýg@ØÿW8ƒ4˜zÑœÁÞÏ# 6Ž!!æöÊêúw‚ý:þY† ä5Èëÿ]† dÈ‚ Cð!’ø@HâI| ‰$ñ$>Ä’ø@HâI| ‰$ñ$>Ä’ø@HâI| ‰$ñ$>Ä’ø@HâI| ‰$ñ$>Ä’ø@HâI| ‰$ñ$>Ä’ø@HâI| ‰$ñ$>Ä’øþ·I|ö/ÿß.ÿÿ‰#Uåæçç=—õ7øO£GùOÿò4ÿéñþqeÿô"øOK!ÿŸà?e¥û_ùø?ïAþÈúµ€ü§?ïòŸþŒÈzÖä?=ëòŸžõùOÏz€ü§g=@þÓ³ ÿéYÿ!þÓÒT£KÖäôWÿôÿ©3ÈùO ÿ ä?=]@þÈùO ÿ ä?ü'ÿòŸ@þÈùO ÿ ä?ü'ÿòŸ@þÈùO ÿ ä?ü'ÿòŸž- ÿ ä?ü'ÿòŸ@þÈùO ÿ ä?ü'ÿòŸ@þÈùO ÿ ä?ü'ÿòŸ@þÈùO ÿ ä?ü§ºüCü'¹a<ÿôwøOcóòAþÓ£<Åz<†ÿ¦2ÈùO ÈùO¿ÿôç=@þÓŸñùOÏz€ü§g=@þÓ³ ÿéYÿô¬ÈzÖä?=ëòŸž. ÿé_øO]@þÈùO ÿééòŸ@þÈùO ÿ ä?ü'ÿòŸ@þÈùO ÿ ä?ü'ÿòŸ@þÈùO ÿ ä?ü'ÿôlùO ÿ ä?ü'ÿòŸ@þÈùO ÿ ä?ü'ÿòŸ@þÈùO ÿ ä?ü'ÿòŸ@þÈùO ÿ ä?ýÓå/🊲‘(Ô‚bÁ_¼Ç¿ç?ŒÍÏÏËÊËU0jlþØü1yY¹ùù¹y ÿé¿QÄTÊbdƒ;~<0ºZµ’KYR™„C“Mxøó¹ ÇŸN•2ÆŒzt%¢ñÏΠJÄ/RP%Ò¬rå ©sQÓ²r°…HÔ\XQVNQ!Ž< 95xB«_Nʘ?âÕÑ+%Œr9GÂÈš ðØ8í0 púíØøñs‹ Ñ€E+:ëdá´²úg‰%UÆÈ’‰²dlŽ4ëIoDB¾:]1gfá¬i˜hòÓ÷-îš>7¹`p 17o4 ü~£ ‹f’1¨Bä´Ù…Eh2F†#axP3÷©ÖΨŞƒªŽKåeYd:ƒIV ™&Ê*Y–¶UPž{Éøñ ©áŒG'<¬÷ÇçÇ¿i2Õ ©dàèßʧJd)ã·;Éäa‡™•S Ëb”g \ˆÂq„ù³D’_C£JÝõ¡Ç )›Ã”ýæ,d([ Ôƒrh|ªT:,몄5x SÉ®ä‹hTþoà œ!¦«<:ùè¢á“Qx!rüxÀpÐÃë½ÅÌB #üz›¬)ƒÏL6å‘ Ág£›“níÃóúgn=õÑo ð‹ö‘Á¯w|ì?!Kÿë-aarXr`(~ë[úšaY9¿ëÚÃæHùdC"刄À™'M*Ÿ¬ƈŒ}tNŸ¥Ó=¼èsaV;†£žÌ·ôÉ™„ÏÞ‚Î(“³ž{ƒ™é3~3žY83ûáÁôl|bÌŒçZ<ž?ëÿ~vzº‡ƒ› yüµés€«°M»Oø×³Š'ýŸô̳zNMú£ŽLzªÃÏ©´úa_§Ð3gÅ †„L¥Ó%OêÇáÀ±iéCT_,’È~Wž>ôœúÀýµOfôÙ=å0ÕúÇ;BºNÿþÏ®Þ,ðZ––T”EUk Ø€]µ .©ÔYe ¦8Ìa>GÈzâ#}¸Ó Ÿüë<”n¸tðˆ¬é 5½Ã¦mV{ºÒà,%‡ÏâBç0²”l†0‹IåðôôÖ(aHE|Å£«é ©Œ#¤ÊÒ³ZÊ]Éš ÏJ?X°ÆŸ˜@eɯÍ?l6°Á §÷¡H–ý¤òð,zy•3,+x™Ï=üuðã%˜.ƒ~?œÃþeÀÒkS*æsdƒŽ8ì‘ãà ¿:ü¾zzºÓ$"*oP?¡(+= ²XEú™MÔœÇ}dÕï±—þÑh>»‘<;6°þY"àj ‡þðÕ# ò€7¦üÑ0_ç|zâóÕYÔ,GÀÉe÷ŸÇ??îúÃ}î×»<9´|Lî¯;V°Ññ€)òowÉg›ûä’gÞ@„ šìm åS$!‘I×è“+I–ná°,`F+Ó3WôU"Rf?È…ÀÎòØ*¤g±©À\[€ƒ?^ÇÒ x`"És6ì_ïJ~xWàV(‡9(gêÓ3%gjú}ýûV>šèãÓ¯ƒ¬œì~OM‹GþÀŠ +926ùaÒ–ÏŒvÿ,&GÈ‘²ôaYr1=ýqx£>^äÀ!ªL.}Òœô““(€FüË>9|òo üt£ÿÝþ˜=Ó–ô’ù£e,m‘p ,½ÀGÄùuh†eqÓ›ÍãwÿÃÁx8 é9S½üוH~2&ýnž9Kf3øÀ? Ò³èÉp<~Ù¿÷I¿ ž¦ß†êÑZ{Rñ*]­×_çÑCùí+ƒ/e<ï¡rDäGÛæÃG+¤ úISÉY“&eåeMÉÊ!—ä’²Æg=ý92]=½ß‘9ÂGkäé¾ýËÒ8ùj¿ï_`—ÉÒ[¤èá–+c+áñ¤7ç<Œ| ¿®Ý'ž÷’}ôÁàIMàPïw,Óí>9ý‰ì_fñ°ÇæÃ͉Á¿9[ßïï˜~]þVáñ ô÷•ž¼Wÿ{ï¾ß¶‘¬‹ž…§€e­ˆL(êf;‰l+¦)ÚÖ±,i‰rœìq6"! #’à %MÆëiσœúªªÝ (9ž™µÖ¾h~@_««««ëª¤jŽ»y®=* Œ´SW>¯»ÿú÷ÖÁÉ;9û}ÁÖ^ÆYe°M)겇¿-^·h åX%ŠÆDk›ÎŠ,KΆ±i%ó³à¸Í6uš3<”ˆÙÛøó‘Ç™ÖñþqÓúø ÍÅG¡4vfC&•ÕSwJŸkt0ÓOÎi4¾ŸþyF¼J…ÉlÔK] â01yZÂûn‡'§áÃÇ?nonyßp3ÃB5kÿ†¥¦;ƒÁ‹R´×0“ÏííòH êd>ãý<Ü~:Wî!Ÿ5¸ÀD%—y˜ä|äÅæè?Ü¡C÷ ð9sÄp˜;²lžj}~îmè-ÚŠ°óú0_W Èü…Çü}öžˆ(ÞÈJ8>¼kïŒã‹4O„;2µ\5ê¥Øš/÷Ï€Þ½ ª,ð9XZZ*ì9ÚÏhëR=+|nºé\eÿÄüR†ŸçÇ_Aèeäó¿*6êg˳¥ƒpV` dxŸ…olczKøÎµC"Ró«àĨ˜åiªX¬¹£©4ZË:e³~Ÿ.ç³aèÐ^Ìý"&â™åtÏÌ_£x'È}Ðáa•µÞ£kìKu.ãLnI™Hxæd(8ÊÂôì/Ô'ó¹Ê0'™œ'}4s/ï\ìRA;lQOåÀ×v«ºñøm[@¹Èæ\Òë0»¤›æ ×O&tfeÿ¢iûÌMZÞÿ‹ú–ƽ>™qñ¤mÿœNÁ ÙNüm^êç¹Ó Ÿúq”¥ãçîÅŠ^¿ ªRæú’h_$èÕó>w¦ÓL•{êA K79—ùœÌ²Kn­Á ˜íXìÑeÁN¸6ÿ¤Ä冫áßÃÕW ëð âÿG æŠâÀËôz{û^OØÈ…åòLôái¹èss:'½"ÇðÊÇŸ~Òbû…ƒh%OÓ0¾™Äã,ù7›MwþFúåeBøžƒí<æóÆ’œòJ ŒôžIG5+ vvÿrF3ù' âl†B««O¡ëh:F:ktTŒï(Þ··¾òƒbŒes†´?Ã9¬ òzŸB±Rˆ´¨Ø9xI<Î…}ºu DƒX!ˆØÐ%¤V8±E0³I:Îbj/ÃIíŠ3ÈMã÷é¦Ô:úgÀ‰XçËËÜT¹ºlwïŸÆýO ²MWÌîªùÜiã3Á/O†!†reùãxÙÜQ\aøË/¿ìÐ\inE`E¸d>cYîîO?…a-ObˆÎÆz?‰§—Ñ$û©^¬ÃëIO»…xx]”-¦ˆ´º86]®ÏèÍö^³Å©•åôj‚£“w%ùî;Ã(Ë IÑŠÚ=½¾Ø{¹³ƒß^™)£3{nžQ’ZαÕ9XëU+],© m>·@}ŽùfãYÛ¥%©­|8ÞÙyŸÅÓÖá÷ªåv½ ÃwbÃÄãA0¡B/O{‚ï¿+w-pà.“Çk/V5 îÌu¾¨†Cäæex÷#L•„Þ¢NMÅ}—iF;^ S¿C(ï”úY¼?0VûP_´ 0†³[HùÜQùré¢Ó~„ËžQx¢ÐŸÞ§êÃh‘0q£Â¼k ”MEZ+;Fó¦zÍZβW¼Œ(^ÀÒŽ™¨kí Ê«g,ÝÏn'Q–éu ûsl°Õ¬c¸þ1û¶Aÿ_oˆÎñPñ«ÐBš:üfuÕa·’Œ¿€Œ=7‹÷ƒÊkyÆšë‹°fûw÷KÀ =ÿÓ¿k••õ99³×톙Z Gå~Šºõ…g‘;(ÝpQÍ%.Åù‚o"ù–í¸»Ã ƒ,{Ô¦$¼…e±Û÷?l?ñH¨…VdœáPÞ*uç”#s³¬Âxmø®© rÉLMµg!«æiQÄÐ+¹ï<-·,ŠoÆC&}‡­wå#½ïÇ­n÷ÃÑÉÞògwEш4HÜMú'ϧªBÑGIàÛ§›1I4DÅ9òâÞÛÍе ØáV‰3]våj¥ùS]æ`Ù@¥á!ôrûèð°Ó>2#F¹¾ÙÜX.Õb­óZ4#¤˜&cÙÔNø2Ê’¾7èe[ë.Tœí—ŽÊm´Ü Ø*Ì÷i±=œ­¾vÍçwŠ3Ìç™<%[þ›oÜêk»ÜÕ™ë2˜„5æè¢Ýœo£©³1mxÄgñäçw& P+UpH½÷ôö’˜oFõÕUsÏ2"ûíí?*xÀ°fK?øpÄ&ëß}lâ?Ùw[ôßæ·<6þÏç,ô(¥Ñ~X°ë‹Úãºa ‡ñø"¿4ù[̹¥˜ÙÊ-´¦Åá›?n5J”YPØ;YÅáQ–ÒÌ`ùlï;sà¤{)˜Þš%B€ÍÇyà¬'Y=ü)Ü w¬-ˆÑ˜–\€)É.¯srrt¾é´ö:' :+ô˜§ã5H>ÞŸì|ëÊ Ú¶^/@hˆ{ˆ&9Mé|šŽBŸ‘mˆ¢ce­íÆãOzê·Ž÷9WØP¥8\,#yçý«àÏ”zîÚ)•؆Ë<ŸdÊ9TÝ?½–¾ˆ³0]ĉÝQ€9²À!tÿ˰eÅÖû"öÌã" ¹Ë³lõcÇR" “¼þ]Ìâá-1Ö“i šîÈÊÚò x ¨1?¦ÉƒX|aûÑá-ÆÖ~V¡ùß Jk[R»»¯}½µó…2AÐÊéy’gb/MDKÃí­·ÉKìýA”GÅÈtÉÂ@Ð~Æbá]Ð*Ú Îëˆu&ƒF˜Â,ø:!D0cKl´eAf}(!ÝY`§Á Õ†.­>êÃÜ0ÊÕ¨X5Œï¬+¡“"zÓL»Bè…´¸ýáÌ*g´n3|=M‰1º íŽë³x·`yƼÍP9Oèê7¡‘Áâ=²Œ¿ŒÍ†Áï=ü\¦ãt6¥5]iJ¥ük}×BSFf©îÙ-D»Ô¹?¨ó 8ާ„Å#ÙÁªzÛEµÊÖòËYÆ'íÏi–ö›X쟉} ZŒòz£4#H‘gü<¯?6lâh¯ uØW¨Cfƒ=95 #£›@ܧ BÛóŒOMB9碵KKÿ)™¦cÐdøa%`îü^KZ xCÿflú$Ä«°Ýi÷ì–q\Ó¶tö@Î;…+p„e´˜Ù&ƒ ûJîüA°¢ËhBó%`´Ÿáõ®­jLé=è ħh8‹Íº›¡zMZqnÁí‚=”À%?Ù (Рh³‚±›ŒíÖÔýFÄØ¤Ã˜ÆšŒ–¢;.áÒ¡@…:¬9ÿˆ.ìÍð¥í¬1w‚2»D×1¿Šl°ˆµôߨ?å+&c&Ä^¥ ` .¨|:3€àÖU•‰¬©¸kŠ @ƒÂ~º|œòî Ó¦Ø$Îv“‹-¦¡/"*”åõÒ²dôKv±I¨@~_à‹ð[Äkɹ=¦¥~H†C6Ü&ŠÍ§£w^õ¿ªóW¼¦ðp¼ÞùhxÖ6Æm«ùÆÀª`vÙ¾ÍÇ ˜Î§ÉÙ T @9÷Э ádA:wªø’ï”ÄRÐ<¦•¡P±[ `ØøÉxÆ|ÑYì%21Js!†õ&P‚’øS’ÎhSÆ—~MùL¥a¢éE2ކô…Ϋ$B-4¶èÎépŠ]dƾÄ_@º‘õé›&iñ2q8Ç­ÃÆô}ÿøÇºøM`:›ËhKŸ.œ‚EHÆp ‘ó"eI޲Áëä€Xd¸+µ¨ýq>ÅJÁj³lÆæ›Ãó3bØ,¼·ßz}xÔ=ÝowAîÓ§>“N–‰¹Ñ×ÞA"\©0³XÆH÷£˜u˜Æe?¨Êý4ÃÎX}ˆ)Z‰Ût"ɺ.nc%Ó]9ú—øÒ–5㛘Þ$Îx燞ì2y[èÞóŒqΰòb÷iéÍÌ4\äsò¥µËN_ToOh}¥šºd[a·Ó [Ý£¹KKÙ³™ø+wOfÞ‹°îk|^ .×Þm„t©îÇma³t9úŒNŽÑ;Nï\Œrcbi‹ m{Fµ‘²ÓôS2àKÓ1‡ @t܈/ÀÕÀ˜ê>K±u²ánɵÎmC\ëè$8›FÓ[Ëû8Üÿ«âÿûûãñ%ÖÿXˆ÷ðøñ¢ø/asóûÇôŸ-:…6¶¶moÿ?áãÍ”ý¿ÿÃã?|ÕúÿÁ wÆÿØz²µ±‰øÛÛ›´þO¶·°þß?yôãügü=tI=­k¸ÆD7‡ÙP$W3>t:Ó¤þš³ºêNâçB!¼§Ãv:¹²ÃU­_7üñÉÜÂÃ.õiø6ÓQt•„Ï2¼x‘\%Í󄎯±L'¨—Ñm€bt½æÚu8˜?_ SºÞŽÃ“è‚Ø§¿…ϦÑùðÅ >£—Ítzñ‡{—\Åá»~›8»ø6|6¢ÇÑ œ[àJšÑlacÔÜÊþ`…¨T¸ÙÜxÔ·7›ÛMšøôe{£ù=ÿn„§ÓHîdGÔ:Ü 6š?6·#ˆvˆÓ¤»ÑÚõ6m­OEÓß75iü›0ðÅ~‹‚*  ÏD^‡Ê~¯?zÓ%Fm"²« ±|ÌÕãkbP~a4»Iè’9½ ÏgcdN{Oš››ÚÞk _šW&×Ò­;Œ¡ß.ÊÿX”—þ;¯÷Âm¥)agxAˆ4Dt#×aÍOÁÛÑŸ§lniC-nH™ÿbÝ^NgÄÅïÅá‡tx>;Ãcs_ÓÓ‹šq:š½³xW¦Æ¶£úiFl$ívZ0s*ÂH'2uê[:$Ã(|CĈ6ã[ÜùéÊq%ï_¼ ¦3:'’õ ðÛÚ…L|B÷ƒž°:K@UbÈa`¶:‚†»óÑmDãyñ"=ËÙ’ü¶™^L½Ý#ø€™H?†ž… «2x®>]+O£["%´éùña/Í„æÚ!;,C‰>¥ b|¯õY~þß°GÑmˆ‹bÄNx¨‡¿¼; Y³ºß ÷ž¦C#UËêp6jš5Ã=Â… ÜQøÍà¸~Ü$Ö#Òj¼˜÷f‹}™S®JCÍÙäœfŸ³ ¾ÔãPDω©§ßËÔ€ÊD˜Âx˜Œ-$e?w3\w1­(Cn“#܃Y6ci ›xúÇq> ÷èb…µÉÿ¾xqEH/p¯Ëž~¬­ j¿Ü?êe½Q¼ð:NÏå;mkÀµž}:é¶zt=‡º‡5‹ò=øm­­9§DOŽ Œy£ùƒ7føÇNâøJñðˆ<¸žˆî~ÛÇ,Š~_NÓôotHNðüâÅùåä:™ÆÐÏnºôl³Üo§‹(C=h=FQF Èl0V !ÝïM±ÿGÅkèë;fLÝ÷dÆ[BH±äŌۧ¿H/´£{ìþÙy¼ñc¯{ztÒõš9ú:ßYã|]dZ zWé@táÎËéßU4UT2…áqç,È!—jŸ4üÊt©G“\´e\èçÞ«ƒÖëÞ·Øìét{›ÃÕdMãOi_X$È=³æÁõIW9Ü«@.÷»&çxüѶFjáLAWÃÓdvÆÐ >˓ы³Ùtœ÷ÓYÿÒÒ@bø˜Ù®n 'ak<øK<¼J?Ñ™ñ,§7/²4¿lö¢œØn>Ñ&ц¦Ã[ÛÔ0ŽÌ‘cœÝÿûó_øÇ‹Œ¨í´¿é)bZã-ßÓ6kucQ&r4gŒ>ÐßÒ”ß%ãËðm4RgÏ®FWüë”ß)´_1oë]!D?˜É ³@Ç•]굺ψ˜²¸R@nCGêãprO§ =ÿÓ~U DJ€å-Ôsñò&­pNŠæÊš[y ûQŸŽkkÊßßM|óÃÕÚåÙøE”E—ÉÚ8Ήsnþe"‚è«rVÜÕ²äorÈûÙ0 ì ¿äS4^ë˱6Í_<ÚÚhF#›œ¨4E‘@¾!ž T³Ë„õaéõØ—-Ò¦¤Ì7Ül z ôØ@hÚY>ÇBJ> ²è<ÎoU7e,[Òs#ÓíAQqMä¦uÆ*òs,Uyæ¶,ïXv’‹=á9w…ú¬@úEîSl3Ûc•“Añ”ðÁOí€LÈöÛÃnGìTÒJH‘£E—³ÿþ,xèw]Kšq3”£’\âj8Âiþ¹?ÀãðCëä¤uxú+d–åXÙ°R>ºñmTGüø¢óËñÑÉ©ù·wô6\i½?=:8j퉙s}>Šdg:§NxÅÎ [Måkk–§©ØÓl7ž³+ÝtL”nó9;Ф¿n=W ?ÝÞOsÁaÍÂGϳфUîÁŠ3½| ‘%lÿ`³´' ”ÜÉ8ôK«8g#UüÑ5°²½?m®=ú-dÕÛ^`Ü[ô>g´VЙ~Ú2¡Õò´ŸâôÛö¿oË¥š8 ï=_Ϩ.%ÜÓóðb†[FíÓÖ6ñO¥)ú e¢£<ÏðŽ‰šézMk³Ïÿ´ÕØnlüæMWDÌÀòxÌÞŽÀàe:Ãušs}ee”eB®ÙùyiÌÄ5ÎnllÄ ^öÃÂKµµ8v‡q<Ñýš +ŽÀc ¸†Ú»Œ†ç0”¦™#©‡YOø>‹aÑ%ªbÌþ:‹Xæ>M¯b#NîL‡éõðÖ¶ÐÞÑ»ððý»—“pÿpÿt¿u°ÿ?Z§´+˜>th‹c¸·ÐbåàÊÐ1†²Nçúp]áµ± 曬ܦ;¥VX=Ë.Ž\žo–jÐ}Š’!À %ÝL-LT ˜€²p?3©Ø W.Ókåõ¨oÄfcôäâ·q¾ ;\EW`­¬ 5‰Ób!cÐŒ"´àl>PcÚ«"cº ñ4ëíu~Ù?-½:8::6¯Ô1Ê+fÞåÞöö:ÝÞæ[½Î^g»×~Ù–žiwè¾i¹ž[d«üú¤ÓÚ+¿ûp²Ú)¿ä+­ôÛ÷ÇΧÿÑ99¢6Nߟ(>iAؤï¿Úo·´!xœþzÜ鵺‡›þººÊ‹žÎw®®ùð¦sppä¿z×êžvNภï÷¶öžÊôíëΩ©ñŠÎ´î›ÎÞü·yçõ\øÖíœÐ²T5¦_Êékúÿþ+ÓÐþÖ^ÅX±"½âáßßwºU0©èmÉÖu^°ÇaçƒûÊAyCTwpg~Õ§W/}²[¹â;o¼ßx¯U¼ÇNZPû¤ôÐEœcŠøò®õ¶Ókï¿!8ìwÝJ>@ì&ÐG¢“Ç'û?°i~L/Ë_ß¿¤[!¦ÎG#²òÛ7o©Q`à±÷©rqõË«½Ò‹“¹7ü7§­“Ó÷nï»”¾8[³ò36l鳩ØóªZu¾V4Jð]Ø®÷­ªi¿€Ó:Ó4¢5‡{û‡¯ùÝëÎaïèô¸LÛ7w­ýû´wص¿y´±Q|Ø/UÛÛ?&Èÿj_¼?Ù·¿éÓÞž}:Ù—ßïZ¿8´¥wÐ9|M´ÿ°÷rÿ´kKœtÚG'{æëVïå¯4 ñ´\Pf»²Œ‹†û{noTX»£' ÷»£½÷ï»ÕeNQéwÕö]y}·ˆ¶Ò>VÌÃ"ê÷®š¿« ¾ïªHï!­»AƒC‚F!OÑð"Ç=²o¦Y4Èû0û0l9¿uúÜúqˆ°Ftj~ nä•/þ89‹ññÝÞVk×/F©ð¶}\¾o[Ó˜m Š×qÖ‹ûgÞsÿüìÉ#ÿÍY߯1ˆËÏEOÉ Ž¼òÂk”_¹ýNû[^<Ï}÷šÀ›Ô{“]FîïÅXªC®šÖöÜËt~àþ+ÀùGÿ©¢dØ’ˆÿ¥O³q–Og}º×Ưä³Z>žÞNÊ_Tä²7¿ú?2Î$ã‹Ó¤¢=öVA}–?_B–4¾ˆ!žM§ƒ;F[=Ÿø&oÇÓ¼¥rϸø>Žó¬9ó0/DGD`ÎYû[¨—» °K6‡›²hU¯Këd Ïaͦ÷pÞdŒTær§¯z™U G6iÿ*·èผoU4¸é´âƒÉƒý„'½Ùt8ÿ¥PˆUïG÷™Æãø:.¬?I‡Iÿ¶ú3‡O=çØÅ¨Ì6‹ÿ:c+[gÕnJÔ¤ç|VA?ԯ؛cèã©ýŒ×3ìšb‰ ¿VùÒ›@/>˜k1æþ ’,›Á9¿üþ A^z¬ÃœFÉ8/6´ jÛm_9þÎ ÆÄÙ0=&¿]4³sôèÒH|õP›^ø¸>ô·¼Åu—7è=Úp·èÑë“ Ôý3v6õáDfb‚ “ТîÏOðqÕ*~«QtF‹ } æI>ô0¦?MüÛ²ü±7yã‚OËx“w%zï²1m.àîrgO»YHgÜŠà“I<l>Ù˜3¿dK'çãÒÉYžÞøSšy_N¦¢î´ïÿ6LÎ*?í®Ø[ pWÉû|5q—TH^ÀW %üwé„óªè §)ü9rŠPV}ƒÁ]Œ2©ŒsïhÞ»|èwBﲋ¾ûŸ;g™ÿué„ê;¸,Qð‰8Òö3Rž€¸!šç¢SÏ946·~x™ä'íG‹ <Ú¸ûûvq N _†qîÝúò¢fX[wÒ¡ùeM^FÓðC΃xðÖÿâè=O‡îc÷§±W:ç¶ºŠ¸ïÅÄmXqA õ–‹W7tÏh;Ó¶]ºTU½çò΢Óü3÷ôEýb_ÒÓ% -ñ׼ןd¥7³qš'ιÊûä‘·±»HØŽ&ÑYB÷÷Üðn]kT«uýÊ8€=@}ÿÕÛøî³GùãŸÆ{44Á£Q±5amÙ‹8àCqzGíî±ûL‡œ½E))¶ïÑqçS%ˆ<º':BþtÜé½líÍÝÓéõáÑ¢·,—3/ÞvßC6ÞñZéABÌe ¢3Wö“N»³ÿ3•ì¾yºwôAd~':''<Œw-È%ÛG{ÒtNO~u¾ìžBtàȤxëýé›Îá)F‚ùc‘ɾé´ßvß¿s^•;æ—'îñÑa·ƒDlïßQ{Î7€ÓÂK¯ç„5î÷SËó¢ÁµP­ÓÛïööö_½êœ=«HãìõŽ `ͧÓÖ˃N¯{Òö`Ò>‚ØXUÑîþáÏ­ƒý=§soä>*@x¹àÃq§M¿U¨sR K!Äu_¾k¶ß̽ý@S;yï/ åËq½W,~—þÈó_ ÄV{A}uÜ¡ì NU9ÒkÍm-ç¸xqgéÒöñ>Ý¿‘¨ô‰ÛÐ|G"܆PRÜþ ‹Ï„²ü·²š|©ªã VUEç³W»$ˆöë–?VÕ¬«÷¥ªŽÈ²++é'[Ëj˺° 0¿xC¾<ÚûÕ{áè ºhðp¯BÚ_ôº¨ÀËû ´ï+°WU`Ä•_+{/yþSe­*”Xðݯ_¡¸(µPUâþ6Ú÷–ð!·9+¿¾¬úZ¹jüt?•´â›S_/¢LÉœX>°Ü"ÚT¹Èé/§÷¦,.aĦD•iJÕ·ªzUÆ)ø¾Ø:_­yŠy˜/r¿J¹TÅÇ»LTÜÞ]L]›£ÃvÇ}ýªµÐÛŬVGÆýn Yô…øÌ–a÷Ë–'®çBû%ÑÝ÷hìøÜwVbãKït_Õµ^õ“ƒí—ž±¥q¿î¿>d_Œ²ÝRã¡Ó_àÎcÚò·K_ýgöÎÁƒyi_hðüìãHî|&´~³·ÄÀþœ:¿¯õ÷EQ„á‡ÄžÁ/øöðDi„Ýj¬~[(Þç?±ÏŠ™ÔŸý€¯üN5Ñ/‰ÊÁ.½FÊQ0½qV~dW7ƒ•ÜÁ@ó'p‹•`Fë}a©¾‘u˜{ã¾è!jË|¹â5V47z¨Ì}0_`ÊýhžûéäÖø_ôoØâÒ ÇÅü+u0³ŸÅ@½KÛJùÞÏ<–Ø™×sõL“7Åp–]šÁg¶ÄY’cv®Íƒá]Íî2ÏÎ}c÷]²5˜³ÎÊØ½¬ÒÂßË}FìŸO±÷j°•Ì5ÃÐáØ'3.ý]` õ,*šAûPìhõ´¿Ý•s}-ÒÚLmö‹õü’^DÈ)ÌtõUsceUöƒÑõø_`?ÓKÇ1Gôß2 CvvÛ;TAâ¼;^QÉ÷È«|¯âÄEŽfÅGß%¯üÞxåU÷¾Uúã >$q/áÅw`ˆ—ãTP€Q’}®‹M…ö£ñR^YÐ?÷ 9Ü{kW<‰’´§Gž+ž 7fÿã£ÒWy¦Ð65?e¶ð‰ñßDáÿ‚=Fí+ñ|óªÉ+SÏ Â‚÷éÆÿvã~»4ømïsijü†K_õ9ïOÌÄéçó»×ÇÌQ¯J@(^™zpù©¦eW_ûÒR F>ûTíR[Pj×£¶ ØžCm]3çYO( º«éÕì[ú=Ë$”ój4ËSl”U×Õ¸^˜Wµº¶óK׆'h†áþ¹Dtä2ÆGä)p=1²‡.\ƒG2;nƲ Î ²þm? óX*£l1ÛÃñ Ø×ý‚àÍ"ˆÁÖs.ŠhE¸ÓmŸì‹Ø“§œQÙ‡ì®1'$l´˜‡ð†S ïjBqÖűx±$øT`¿jŽ›wIÄfÎõLl- £îçÌ³Çøõ˜–y”}{Oéù9èGɺ¤VC‰K'!±Ó G:+⬎‰*×1qwìhLCã`éâÖ8ÊíˆèöôVÂTgÀŠÖñ>@Â]JÄãÀ¶¦±\¤…ÒŠsÀ¤%­ï,ÚK‚zìÃO3 äޗɹpŽ€Ôp™æöÍEŠãÇMã÷¬¾ð&²œúMêßÞ§Þ…ï1óB$;éDÒté€Éãï² £Ó×°aAð —‘¤%súÁU,œy!“óœ®y?xr'sr}d&нAáí8d zmÃ!}“x$fÆ&|~;Aðaªa£  JÆaàÏ‘`súî ÀâÊׄ f@49¾ gl ó÷‚Q«Cì'Q˜†ûÇLjÉ1ÜAÜOF4ºJD®ºÆ×PÙ4܈£~.]I€‰Àö•H/§íc Šmâ±H#ˆ7P3X!p¯N3•Ú8K(Ó„pƒgÆ $–×Ñ"\ûg4L¬2õR—a°SÿÜ(ÞŸ˜Y0¼ç) „ "@r€dLÛqvÆ+/é+¨rG¢IhRϰ4zª]o÷9ž¦Yâ-‰q1 ‰!\Ä6ÔMû™³¼»Í°•1Rs¬÷xÜüïcV¤Öà£ÃÄè‘Ãl”’JŒ$o Äå \΃´›~4aw¾‘€,]2HA§E(E2FÁ9-Â~”†èdˆà!L!.,Òë‚êÆPÊߤ†¼³WÚŠ ’¤ՄÅÿÄyF„œƒŠÑÔ´7_Dy”®±ö3DPÚ kTÝŸ’iÄb€xÅQv+qîÛÏZ¬#ÛEœÉíE(:ŽãðµûûݺíÛ À™ˆB=IЉzé„–aül çjR!Æ<ô¦Œ‚X«s, •Ä9Ý“2Qqòª½¶õdóûºÊ6Ó•+ž³ÃY0ng£cUYo¿Þç”.ø)e æ) Á¢‚IJ µ”Ûr Þ=i| žRÝštµö³ÕÕÝz![ÃöÖ˜V¦yš†t|lðÀ 0oÒÑhN&úý>A™HÒÀhn5^ä(„‰‚¤·˜g0³Ç©“‡ÂÏðéÄÑF8+2"Ęë^ú¸ A a绌v½ÚA¯ÁslW±Ï¼;àËØ®Ýë6!„ì#]îGwr-´‚&2ˆ˜½VŸÖ5Úª“DÉ~%ˆ‡ª9­ÆtâD„õÄàÀ%QÜÀìfr°g× f8¥k÷Õ89×U¦É wÀð˜6ȹDBÀ§ _ÀâVl—ÊqÈœ¦o’3 ¶\@ÞI5æÈ.™yiÉãZàNŸ–ñ/Hb„|€¶´ÞcC{†åãØm@(©NU:bq¹G@ˆ|S‘|×Ó³!{Ý|¨<ÚÏV˜}Ý /†é­–ÉLdȵA;#ŽF£ÔâYšaeýƒ*–¦ð‹ðbÑtó˜(­ È{C o"íŒ ƒT$RǶ’z-fE¾†Ö ¤¸2Q‹í&D¶\žTt–~ŠCN"”BÚ[pY„ ’»Cáæ­•=ÊÊ'êyôðÀ¡œ‘õáB2;Õxc;/†iš±üMð‹ªif™ÿUª“ö‰äÑ’]'ެ 4×S •ÔOÓ+:C„÷˜J¬:Î ÌùËdí ªó–N&Ÿo!qOo·LTœÄ“d̵¹à&ù¹7‰h!Ю+‰;£Ÿ…+µ<÷ÜI/)Ò½eM³œýi%ù bÛ°:¯¾ÛüÍÊf5CdÅHM…Ò1(Ýà·ï|i@Üç‚;¶é4ïéóÑý[¹ kX׫ø6 ÿíw§ñϸ¸ä§°öâ÷§Àï+WŸÎÅŒ´W>)Èð÷Y@‡p꺥d'±0ò|]è±Û—  ƒÆœPoQ'C„ZŽòɸˆZ–E:•êlJ GÁòö²³3ƒš‹SÖH&>soåæ$ÉyÌÅ 'ý˜%M”™¨êúÑrò£eR1é4ºÕ¼DÏ œ"£ !ÃtÈ qÑÞ X;86¹ÙÁˆËÃÁ™åè°Ò¼­Ss;¥ ¾J°Ô@r›"‘ ú‘PhƒÔI9Lˆ­´ˆê¡Aûèèí~çóŸ6~#œýÙЋmžÃ#¡%|ºè9ŠísZç0quµNP£ÉHÐ93x0e¡ºà’@QÔ½¢›r0·#ÿÀnäܳª×«ùüýï¡÷yk7mkm–»ìÞ^;®m5Â}¶ûË„Âø¹y¹¥U¿¥U쵦¯q˜3©KKEÊÖ%þĬp¯®úƒ„híK:](Õ¬ŠcS‰RÛ—N¤ÀÜÉeÇ'§²+"¦gî,[?%–ÍaÖÏÁ¬#¸çLšs¿ >è’3wb·Æa ÙºC9Rþ a‘pK< Lj,ò˜™”& P2ˆïvÚ†˜KÛ—·¤²ÜÞˆ‰ÁŸÒêÐôXö†Jæ0 ›Æ0•±)’qÚkåAùéFvÅ‘B³˜¡@ÐBò%f@)YC3Á«¢°Y‹ìÌÞ~´J?fj™Û5àarÓ »qì'ZtÍAVÀ8ÀAr1Kè •Ð›$#q2 ’)B0w,œw—ED :Éu™ÃÕÍÄQ=ˆJ“~ÈïS>ç‚øFb šR± ¬"ŠMnéÂXùç9u`"ѽž²G–¸ñJrxþ(pÙeQšq¡L²fƒ/š̹tê4¢ÉõŒ`¹«4_’õÚÌŒ@‰x@t#¤‘ñÞVö¢°VVŸ†v&÷³„&ÒèŽÜå9Ä€ÛŒ‰.™¦2Âþòtãêz|pbS¾±†ú¯3ØèÁ£ÖÚH!‡ù/òÑ9 WpJÒ%DR” €)¨õµF/Ö†#˜øVšÔ(“3F¯xW—o,¦UÐÈGeóˆiˆ®YC,gy†çÎêA"PF¶¤ ¡—Jº¾b ©¨S±ŸŠ#N;ºEÅÜÝÖ䲡2YÐMâ  ÆÇ¹H„&EÒôLop>/•Î8Çå@97ÍuîÈ é G,•Ã>•(ÀRÔA1à…: ¸ ƒ@aæ¹×(Ô2I«I(3‡‘J/$$z™‡àý!Ë.‘HièÈ”£ûœ`íÎZãÒgs—‘¯Sáõÿ«ðlóPµ­Œ¯Ñ\ž@‡å—HRÙŸæß; þe ?nÛg•S_õæ¾úO™|µ^±¬R,Êÿ!@‰È´ï‹L/4úüBy©8ei¨vYÌ5Õ’N ’*ç˜>ø”Çæ†¤ ¡s4ŽÓY6¼µòÔ3GFt6„&ãø¨{êÊLí$wy›teæÜuxƒgQ“ZÃåoõ›œ—‡´Z"Îì†G‰k²®­ |Ê£qÖô¦¨A+ ª×¿LâOšR3.älÊð _²ˆ{ך]eôÄßÁðƒ[sûÛ6y†t?x ¾,'îhƒ´þ‡fÉäÙø×dQ)ZmNÒÁ®¨Beyœ(2§ô™ŽIÞÍêRI ì)wYü4qÊ„ª1`=®Ã¾Hto¨ÀÀ «˜ÅnæWÖ9ñùñÁLS”bøü…ÂFŠUçþ¨>múg ßâªA,­­^ÐÊ_G·ÍÑm:åc´_Øøaƒo Ì %öÏEê+3±8ícqÃjgmXl&8]ìFVžékFO#úKÃò!‹†Ä^ÄãUgBՇПÓ%£UwªíCÄLrýÎ+‰EüÈòÆë¸ÄŒ¦’EP#,ˆ–w ÇË—=N $VÀù…e<Ë»ÍðX*û„Ð.³(Ü)í+å´ŠíÕ^tËbm†óñ$þ”û²þ„µöɉ¹°©å]¦B0QCP‡J„ M÷X6±ès®óÌðâLÍØ0S€TªF 4UËcS `h<²ºcTîòMr-o†­ éÙÀY“útõ•¬ÄåkµÖ1Yd0w\ˆæšæïI˜ ß4 ,)É„UMƒúšs(]"_@è¼8î¼SM -Яº95Í„GêPkWàddWÌI…aýf^$Qåç²´TóKÎûÕˆg#„Œ¤¢Õ²ƒdýi-M[aÎ!ÝR ˆìížoÁ.Яfþ! ´=$¡Mr¹ÑóY‰…3Ö•f9 •8÷F§àRÿñE Ç «·$!gŸ1&tm¢u$M L‘“‡Pa·ÁbŽh¤ˆŒƒw¬Ÿ´ÌK–¨ü'¬ ’firä lƒæ€‹„œÚígÍéÆnƒÿÝÜ ã¼Oà‚¤$†ÈDt†d²g[¦`ñ¼¹Ë`pqr ƒžÍ©PÁ¥#qTx²×JN^/cˆ¡ûÏnòuD#¬,eÆŽšABG^+,€˜+=®B¾OœpŠE\| ujÊ´Ä‹l ? (š]¨0 øœâ°€;!¿r´™‡á8°é°9‰Gá7´6Náøˆã±’ºØ,¬=——ꬑañ8 ”z°ó‰`¬x<È.#Þ–ç¬è× ,¢›söµ1³) ذL‰mÌa¶‘rŒn‚‘3Çå,IéÔôö©ëEX[!€à‡ àêÔ¸°óËtX®[é¹VC/®O Ut½Ñu½«} Åiðp´“’Ü8T5'ÆLÙÉA“þÔ_ 8ÙË;bsd‚¡c;µ Z^˜¢ÅVj(p¬HØ‘ü†5錒do¥ð[êäzä¤òÌ ïp«¢ßˆè‡ŸZEDî~;•_B˜«zuÝæ 0U%l öÃel1Ê–Ò-HZ+Èöú|¾EãºæÙýK3LqŠVîo^2ÜNø' -ºé‰åúoõ/{˵œË3/·ôÛݱ#p@ƒ›í³b¹a~Dë*dÀ•ã“Ãׂ7ígnæ–]Ño±è=ˆ\ؼ‹TX%Áš›ŠsùŽÏ“‹ÙTNnU9L÷~ÜX‘EïóÍ˜Ž£[5sTãU*†Ë×-[Ø/Ë 9Ò@s©ÒˆØx#e3ZNóõÔ1Jð…džLÀµÊàJ –:Pƒ+sŽD†Î4O$Vl|õln‹ÀÐ)‚ùS~Ê1Í›¬Ç,l˜`çÙ£V÷ ;fFí›g¸ïiš¥~…„ÍZ©ú\+†]½#q#t jŒ.>ð`v/¸V`êŒÞžI5¶šT©¢ÜêHÈ”Iþ!†øÜY7&H>€A¢`P˜Og±$€bÕ&fî 9$PHµ ŒÑ¼¹ô¶È'uC¼¥nZ’ß‹]EÆvÁêÖ k‚§±½Í ] ã3Z !/¤Šo­Z%|ÙÝ æ¨v£6šg×87[Yå r #È6cH‹ñr4†³q¡6@0ô{Ã\Í¢ƒBC|–\×x¢R¬‰~®¶VÛpsÃü}!IþÈõdÖ˜º Ì‹&ÇNMó Ïy»"µåÜÄ’üŒo4ÂОNÀOUö.û)•ÎA9jœË°2ÈÙ¡ +ÌéƒÂ„ ¹œÙ´ÀGF!Ñ÷Ö^ÐÀûpª÷€îÐq4 %“pÂm ¦Ž$NHÈÈ]ðèzÀWÙ:û†M ÕtûÙʺµ gââ•-Fù8v‹ŮˡÍïk:n’Ñläx‹±;—™^0?½P¦g¡åF°SÃàeŽ$ÙÏÈÀ¬€¼Žý½ºPÙ&•í)14ûc«È0•+Mé}H#t²{²á&®Ý!GÛ¾¸Ì׈\GÓã vÿS7g؆@“¨” þZĽ—‹½ þq‚Ô[ð½×lh!öüJ Øh+@tž¾96ŽcËÉYa"I‘…°›ÖSð®¤ç"7!1X>/(W ÷nÇ:LΚܠô´¿‘ì1{µ²É¤µÞ„~zõÀ™¬!l"œÁ0&Âph@o} 8]Þ…³‡ïn!c3|ÍÿCUªkö<Îhê{ÆÀ'RЀHw_µoz¹ÜaŸÑm&uƒ5>7ä • ‘Ûã¤á¸žÐÔ¥bÁÙÕ8Z—=Ë!ÁOG;Ѫ6WFþåË;²ùPT@°on!ªEÃ×û‡‘¢Í’!±U=:2qç6†¢®7<.ѹ³Íi|‘pÜlm1þô«Út.3Ì{ÇvËWϹôãËÔ3÷V4„v`;B‡\;„Ã,8Ë Ðëi /I¤¹òNÿÇÝîo›?§À“YUœ-ŽÓ¾ðwìÕ‰É{³®9b†Ò8–—}ªd°íYL+KâËËÁ@°8l†šî~V4„,ƒ+œ`hýCv$ú²Ï}sþÚÑ„jlbVåź²VJ*íK&`qxç‹“c6N[{ldËìšÈ–¸v¦ o°v0ëÇ…“lÀ†{ÐD o›&ow”]…¬ÿNM›¦eÙ–[_9:3Xè-êL¬ÊÕPŒýسµjÁ/Jºò,ØÕž9v¾v_²#­ºªÒP÷ךᎢ̓bǹVÔ¿Ü? F1¤I6’û8Úå²´ÿØxhÀ§ÿþQh zü&a Á†®I_‚*ˆî•GenЩXEÏø{”z]ša‰fŸg…ùGIJÏT‘”®äSXUœ8t¦ÃÛŠŽv*¤‚eQ÷’¶Ù­3A|¾ƒ ÀLzÆ©ìo \ˆËÿ;b“G‚ ûgtO÷0g3X0ñX|hEl@ ¹SE~ôÄ0¦òùSº='N“¬>@ ”@V¶i´ÄÉ!A ŒÚVÝØh•"FLÙUšÊqy³ o ;¤(· 53QÌúBê1…"Ó›Žá8 n+o4¾–2ï ›èÜC(ƒS‹(#û­±½Å’¥§ã@Š÷|z«ìJ×›aÉZ€%U¡5³×Ñ £ñÅ We{Gç3ö{¡.ý)í 𔙣°ËÓ,´[Ó5ö{»É´¯5 ¶Ó7B·Š<øÐ:ö‰c¦¤WÄõ +†ˆË{ýüÆDâBê©ð3×d+SÇæ®Ù”Hÿ‚8K;Œ^Î[;Àfh37˜‡d–Ó$ g•ydëæcs2|î‹ÝŠ8SBö´FÄ¿¨í![±Ë‰UœÐpò|æW:ò#ƒ £éÀ5dHò¡xõ­!_ßh*ùˆ…cê>M(£º»åBªWJE‚ëálpÏašWó‘¡¡ ¿Äy†Ë³ÃÊÓ/mÀsy)×—sé'›¢Ó+ŸUV‡­­ˆfeœ ꪊ¬­À®u»U懟xµU¼¢Ÿt :¶gw¨5äì´™;GKbœ0ÐÕüÔQöÓvó’ó>kô(bܺšb‡„ÍíGkŽ=½1JŒéî\Äm)'z,¢#„èpÄôÅ a!6·8ÎFUšT.8ÉâÙ ýòòÑ`àCà!xGOnwB_°è+BaϲÅßá1žMÀ¡®¸z×°Yn! €­¼ôºG ö­Ìamñ—ª/,_ j+Ž9@e qµ 0ý-ãVâÈ”%Ä&jšO0JÌ9Y±Qÿ˜‚/HQ2yÒm´Oœwø£aö¼p”jM³ŠÜ(Gº­\dÃ4å4vjÆX_H‹•ÖP¹µ¢Œ½dÎtÜò´hè,úwù-ÿ~ “³i4½ [†›ü­Ñ¯…ïöˆ½Û{„ÿ<3­“}â#÷6Ÿl°)S TºÆ¢P—ÖÎÆˆÄT[}ó-|!PÍ™]ÔçÖïî^9Ë"GnÀ‡ùQÍ)\¿¯°³_t·Á‚½jÉL t±IRŽHZѲ À”c䲪Ã+*õÂÎéþ‚b⃕$CÜõªZôÚk}á54û—6ÜCS|Nך H|Yô=[Ñ‹]î.`´KŒûëâª^RU¹aTVâO^ñ"Žu¹Fu´ëšé  »L•¬ºJÃv'73*Ã6 ,F¬·ùÞËØ®¬€Y/v@¬¡^·.Ëvd\ÊoãhÊN¢R„tT¼ÿŒ²z•ŸÅ¥°hÖY–•¸×1Kt·Ñ'\ €l¸ä IÎÙ¥—xT&T ¬C‚ö³ƒÇ»Ö—ÿéÖ4›2'´–"-¨Æt›¦Qÿ²Î‘|Ø›Ùh0N„#>‹-Ó}>L&⣪=:ë@E0uù( §ñÅ Ñ 0¼ÀDÏ¬ÂÆæ=!A .7˜ûüŸ ïÄ€÷b¾ÏÿÝYôË= þ{¸×ýc2¿(@æ×†ÅôZâB.«¹0„å×,ÂM a‰ÄÿËqÿl¾laæ¥rIæ£Uèæ)F±x©ÊÚ!1ëX¾YÞ•X!U‰(X¦ÖƒÉ©[1b?„@Î4öcfƒ¨1 Ë>5’ JÚù¥õîø Ó%2<ÖÃó"MÖȘnG6žaU¬'ª•øÞ¹f¢¬/h–Í kÂ(ñR«ÄšW¦Ôs’çC£û²^!;k59¹>XŸeÓuNƼ~–Œ×¡.à/ ‹¢zjŸ¿T™V˜Õ åùsõò}× |&Žð‚™†[L,ñÖÉëŸ5ö-l ¢‡QÀña“ËpÙÖhãì–ñ·¦-­^®Ö¦–ýpý~|·²nøA €Î'nhk±C«»Eñ¢7‰X©ðºtšþ´—ŒM·¦I3IU{„µn#ü¦õª·Ø9¥_Ý£öÛ^÷ô¤ÓzÇËB¨,åw•*E¶Úànc~õâ”2 hy§ѧ`õ§áÊßiÜ›OÍËZ÷tïèý©J:‹XŠlæ4Žs–¡n˜¢ƒ¹fi1›! ,26Ì&¼éÏðžùM™“ÒkµJm8t¶ìÏÅê&*ŠIÝuIÔPzIô=ŽŽ‘÷Í噿õæìwBㄈR›[¶\l6ç[±¯°òæ¾ñ/ûÒBò0 * Ã7,¸cfRnÙ»a.·Yþy¹?§Hõ¥-7ÃåUõ‹1FyhìçEÃól}8€l…Wc˜Zî1ýù+á·T=nËL }tB'lv9Ëp §=²ÉM¿‰†çDaSÄ!\Û S19kK‰…˜…£Wbç‡ól¡Ï‚c–eQGÇ>]`ëtÇèÑš}ôù´â^ΑåŽM÷§¸'ð”‹mX½-´ ¨†JwÎr­âˆŠû—<ˆ*Êv•8”ê;wIáÚõ?|*ý×J+°1äaùã†üo†H/ñë8H¥ \2ïÚÜÚ~ütIþB%怀ó#«ðŸwÒ=èQxóÃêÓ¢K÷dyα·±öåêîbpé¼ùêãæ ó䳦4*ç¨qNßÁL}hÙâ1·ðدRY_Š;ýßqF„µz©¾[û™‘|ç¿îŒPšøÊn)ñ|Í®ŠhÊŽ¸Þ-êjcCBU¼:ïf¨³XeiA©MLþbÈWüù0ðßO2WÛ½ØU)8KÆg3b«†ÿêA9ÙåÐìH›È¬jrüéÉ'Q¦Ù¾Â‰*¡ö¦l n‚°Ö˜BµCÂn:¢+ðYJ8øŒ?ÃkÞ̀ѡ’LX¢Ÿæ·÷ó†Ûñž7´ë©-•W ¶cñ‚8ç\§b¤ÊíG«n{OË¢Î]N­kˆM°Åþ’Ò¨¶Ú¤û£mžÙ„wÈË [äCÌ £«à(ç¹HÜ®šŽÝÈݼ˜³&B#À? ÀyêÒˆ9Ô­âÇ»õº3*³pYù»°U YŠ­Îúky0h[@‹Ë’ÙXÏ.ؾ€ÁY`ÃmÛ¸Ÿ±q¦õšúû3z] k˜šMuD¯x*ð¥œfuBóÌ£±PšõµnásÅßK[îÖ±º£×Üþ„Ÿ:ìZ»‘_áW4ˇƒR÷5X%LgcÍ–Ø~¶çýuìœA6Æ“ýÚ²À„Ðc-i†î’“›°OކCÓtÿ³¹N¬,\ XÊ m[³"-‚¥;a¡Ì†“vâ„6ƒ.6*9»²’bsªÂ"âàKNÿûO~÷Üç_'iA4ÐlÖ‚HÃ9pú Q>¬ç°F±>cê{bì‹ÈFÆ6‚¹q õ0lÙ òŒ³›®›b>3ßÁ^Á\{”ŒâÏmí}£æÈŠˆˆblT(‘±QXt„·Ò ÚÙsC¨IŽ£²¦j4ÉMŒ¥·l䌼€/$XT2åüiùm¥çy‘K„}Gâ÷)~<4#H,$:,’¯£[Én.QÁ@DÃr¿"ÕwKEQ´»‰Ç–p^H±ü‘ÑæËwbò²`ßs÷1Ó}aLŒ!¤Ådøf’†ì93N´•Œë¥Ö"H]ÆküðÔg:Ù±YÁæÍàZ¹K"Îø*>¼lWƒK×e¶´ü)ï: ÅI€™7¤y¾ŠÁ ¸CG@&èÑàýÈ}É¡ …qŽ%W/^Ñ#ŠÉw&bbì×—œwOãT ©Wj‰YøÃNH§/î"ôí#¤¬ïˆgNøšKº'ô«Öy½WŸK©;$:Mö›®¢ýËu¡{뻦ŭ 8fg¡5Ÿ|¨ ÚWúXC„Eî!ðzˆˆéÍgký4ÏÏfYsCà›Ñ¤Ç뉈Ã!.pvçÉM/fë“éøBL01œBÖ?P"vo˜EðÎÃdßÑL‚{Š­=Û¾¬á'ãÃZãCUðZÿ êdýD‡ÍTÇÄù³ÙŸfü:5†AiJ÷Eƒd—} „¦ `¡Úù[Çã%êq- k&¹‹Ó‰d¿)¥`ÄÕ€3%y=àl1)qŽ_pñ‹†f1Õ,g_Dý[mLo÷6$îu“Z]^ùÂ&Ùn%·oÅýÊÒO幓. ”T/>3LhÆw®M1Îj a6DÔ‚,Å}ûÊÞ›…Àr@ƒÙ$0‡õÍæ¦Ñõ[¿""M&=®Š,üM-7É˧ô94ydB¤ÉH ïa›w›Z®`… ª™ˆ+öÔ‘4¦9-2òç2ãSl#‘Pˆ§F'3ÖK‚NhêžxˆÐf)ôRĘp—íã÷!ØjÆFˆ šlëK¼‰2’áfsãGD²@g¤ø2¢Ù §tc²]CÕ à [S%ÙIç]¯õþôè]÷Û´¥~í½îvNZ§½ÞfoãGDº@(»L®œz-¸ÉvëÍà=Òæ³±x;ï Û(üã€õ_)/Ñ tÏb8æ¸äàÐ m#&9ù”NºÈ¶ŒÙûˆ©‰Äf™oqÀ»e/ïÎ,à~§‘8”k.ÄÂ’H6¹ &!'†¦'銹IĨ§q‡Ÿäœ¦ R‚Î`hú ׃YÃ8ÁXŠUÐYEîëqLüb"Ñø% &"Èxé“q®q:òK{ep¢ÛÙÆ›ýJ•¢Ø‹ÑþÞ0kޝS¤IP”¤Áb:*,Á¡pxL¹äï‡Le$áYU$8‰S¶æ6ÝjD»¥˜(¸Tõ¬ 0ïmÐÖ"Ô,3&D@ÈTâbò¡Ÿ¡Å‚M¡P¤{,“¢úRÏÃ-‰›E<3Ž´O[÷UÚ®¨´}_¥Í§^¥Óƒî§M_ˆÃ«ë,;+õçî6 ‘Vb·9qˆGÂ/15»•ÜèÉ„.h†ïÒ̤ÊÂâ^"Ý0«-4•¡Œ}Ý ¥Þo)_Nsã04Š©G3|9Ë£•>¯ÍÊ'ã«"Ì<°kxrÜ b)é¾~%aˆ%·¡YÇ‚~bš´·8M_´'Û9ÂÞ¢¶âqÿ60 XÎËÊrÃs–HJ„†I:A‡ V$ „Á^´T}ñHÁUל„l&B},gn½@9‚´rdg’÷ÏD˜§„7`¤˜å ÌNE* 4gš„Óbé°[N[œŠ&ÁùöFXjå­ XåØ ˆì«bEž/´—2SÓI1ã§zSDQølâÌ‚ìÙéæÍÉŽMBIžøA2Ф{3¡ò£F¦áoJTÎb¶¢ÐñÉù{çð8bŠ\4iyÏgÆÆ|¦Û'N:k9Œ¶ú—HŽídµw´KwJZÔÆKv{VØ6yPŽ®%³© ?M|l×u!O8Hù†¨k^pÄfÛ¨`ûqÿÝ [{ÕpˆRIˆ‹˜ˆIæj(Ä÷Ç#YàdzÊWZÝW¶‡‹Ñ‹Ä\y9'š0íÖi¯»e€8rä¡^ržªÈ,*®ÚšÕÑ‘t×¢n禆q$‡ÿÂq5Œá§Bh ” v6+¢¢qkO˜Õ/Ð5„((+º®E.{inÖK» éÓÙXBæÙ˜-* ᨷħý™@ÖBÅ ¶gu'a¾¥;\—'š]R˜É1K ¶ógaUVÃÛonm‹1Kp´ø¯Í&¡$+Èr“®å™ÔÚÕ¸äw÷.eBÓShì„~®9±pFršˆi†(œ¶=ƒ¿cøyP³;áf¸&§ÜÎæ£ï¿ßxõ‚U3ãak›ø}Úº“Ÿ;'½7ƒƒ£Ù˜¯«Âz&²³ T i‡fï†9I%•†æõ ð­ñ}3ìH*k—St’ÃZCþtê1“ó‹jaÆïtAIIùÚf:½°6”¯Zÿ.DN›iŠ‘@“M‡5*È7Ê,Ÿ n‹¸W®.]]aE6 fSQQq¼+\gw•Ïø‹0=Qޏê*OS:n•uÝ÷ÇÇG'§ApL+‘Å„•9z–9ÑpÎéŽ9ã®*t á¶ŸÑ×5:Î×t3Àf oö'ÑóÝm9ÚÛ.]E-WRèT[?žEé¯ïѵÿ!ݲ<ð'кçEw»Í`ßFŽ#ZÉYœY´V«ðÅð.°NQìLælpHÓÊHB3 9vRX,æggæfU„Îg6(báAF•û±ëÆyßÜ"Ó3ÄßGg²Ñ0¡KqsŸ%:eb.dëcšì‡]ÙÔ0Ð6øackŒþråeˆŠî*ake‰ ´š¾\ÝŒŒoXœ¯9?8tL;˜¿'ãóÔäo·ˆ ÉÔÀ0‘Ëï ¹,«jSŽî¡&Â&©Ã(–Û\[²îñºä;ÊŽ„ õø6lÇiû¸u¸Ã¿rN«g”³:TÌâ"2 ¬;(W´Ëmœ°‡;áwÛ7×¶65·¶¶šO¶7ðáUt3÷á{KTZïOßÁ;Èf¤WQwÄá»~;" px¯†é”0Œ@xAñ7UDÒòñ©M§ÀcXM$‰fUR‹ jŒC„o-sôÿ]%á³ /Ü ìÚá´Ž=ÙýæðšÜJ(ÜZ¿nþøã“5êeûËšs*·ë<:T~27 b[χ/ŠÝSYµhâÑ °eè­Ív!¦†'¨•…'13eØ{nÆ €‡sÅÓ¤(rÖ0S€Œ2&²‚MúiØIΆX¥öŒÂ:`?FœU1Êm—OÃãàCëä¤uxú+Ý=ô¼€Ñøl˜‡ûíÎa·ã%id }e¢´ëÀÍÛA“’ØÔ¡òòz˜ÙñU¨,(×'AgšôWù Ò>˜’È]ÃU»@²¢ |0ã²ñ½t^0‹ Ñ4ƒÚæúƒBÊÇœïd6§äM¦D¢ûñ8“T&­1¬ÆFŒÕ|G“jœž¥8Úáy¡œZƒo„Cr#»S4$E6N½;´¦›W郹ú5ЊAš"‰j©­QŒ$7™^Ï…±™Šñ•ÈŠÛ^·Ó [Ý£¹$Âoä–]ù·¾r.âE´²0l®[óÖ»ÿÖÂŽFè0"b7w7Œ.]5£‰Z й;ß”ÍtËÖð‰'vûœ5ÄjÉÖ”Óyá´\´§©[l»îá\Yçç<¬éyÿßÚzô¤™ßä»ÒÒéAš›k3RëX·‰ëí>Ó’pâðN^ý2tæÆðdó{g o$Ã'4·‰Óý)ŠÍRÝ©v.µõ¨„ïD˜ÉRUÂiÐUJMãóâa˜:_þ@^tÚ7}d*}®>¥ÿ>|( %“ë^ìwYFÛŸ¦¢» [‰£ßö`·ƒ‘þεì29GÀçt!ü\”b¼¹"[n1ö›+³í–áè¨*;˜+ùV‹4|žМïöÆ˘ {©Ö&w/Çœfæ5G"UnBì¶Uðía•Qž½Ãn“;âUÈ&Ôn“<—£Ç¸á›¹n‘jué9ê{cþH¼äW-B°ÌÇ™£ÍÕ4/YÍ«Îf¨œc>ÿË+áÊÊΖ-{û®.z1R"d8:¢¶Pº¦Sq)œÌ;ªKDÓ)1Ž?…µ •ÕÃpÃØ²¨ÇvW<3ag1xËGê²è¬0áSQiG>#ÁŒã{ãùƒ¨›mÕ&ÍØÞ%óvÆ<2H¯MÿŠ2nÌöæRí¬–0Q¶t!îÍö'Ø£:ïç! »zùš6UZ*®Y|@³ôC÷ÃþiûÍ^²xÎ2y¤v­-SÛG'½Ã£ÃÎr@¤\söRÿŽ¢ ÏÉŸnm›£gi6¯8=èBøÅi Õ ÆãšÄ™×‹Ò’yÊVò£& çlájÒF¿‘…Œð BÂ÷ã##ŠÉLÌ1ôa™eÌ€9+Þ’Ù5Å”¡ž¿™È½—™ídü)&Æ“;¤‡Yü`YFºWJ¼p ÎáÄP¢Àç§wÃüCëð´wÒií;›±N4àkˆ¥Ft« (—‰ÛÌR“FRjÃÁŒ ÿzÓûë̸tåÖ @\<¤¦`°$ÈB ™3H%ð¹gr¢b’èjz«u±·ŒôÍÐÌ@kÀf˜r‘Á€M¯ÎRA#9¿20aÍ ÓcÜÚ½ŒØÇêÅ©t¹®q1N F åø€”]òÅ‹öádÿt~»üßUSÈü‹–MN¬¯\·ÿÑ99"œ:}r8·p²å­Å>$E0fa™´ø' ×â§°k$Ì»ÅÐÐ"}6kT?0¥ Mr¦ç]}ÇÐÐOÛa[ÑÄò…P«¦D hÔÔ°T¡¸nÁÅè77-ªZLç@ë{u$ ‡û#³Â ¾~ëªlä¾³NÎï†5f'PñÙŠ=µn·H7Ÿ¥öÌE¹ê8£L¶¬Ù¬·“¸zéøvÂ÷ÅÉ$u ‡µ=ýA˜ySÿzàµÚíα»ð¿ðd|ÿ ØéÌ¿t¬M;8:zûþø;Ö£ÛÀ û†e¡î8Vî>PÌ¡Su¬|ÙbFà+_~ ¸3à#…¦;]pª8ÀÛ kmD*‚PX{OÂrSWvÙ®¶{ðľ´éÞ©¿ò¼éþÚ…[âÜZ³{Ùþ‘O›a«jí˜enóåƒxR:©¸ 4Âs3ø-Ñ* ž×/Æ1Âu¨íùÃBUª*whOþĆVtñO’ö'»ì·ßêT‡Çl Œ’,ãà`VÖñ-É…À³Å"ë$‹ùóÇ1j³æ[¢Li#1˜8D4ØÀ/uû”X¾ˆO _Ç+-ÕVž®¬Ôò²—;ð¦àªüØ[,\ù“¦}1cÿ60¤Šêú‡¾uš–Ø… ]™”Õœ úÇwQp8§³¢®¢µŸãÅg­¥|–ý´ Dù,ßrxü‚eƒj°™:˜°Ó¿æA5±èJVuÔqÏ´hÁÏ…’ÒÕð–™vV‚€YOÖÀ=ÜhþØ|ÁêR/“T$B=Y‘(÷ m€ãQqH…‹ŒV¼©¯›/›¦%§š7:ǾbsþÂ-Eëò_4¾+×8š ;–cëÐ…ˆŒ“áe`ŒnV©k©sˆaÿÜ9ál¿‡ï߽위»Pßnlü¸ñdcó\Ž9Q«ôÆiuPè[/0d"ðèWzbSLlÂt³WŽ{Ôñ²Ô¡þuz›ñ@ªXÕÓKánÃ`Æü²]®%l¼Mê¡tºÂ#“Í´iTF‹"“¢(˜mÌ\›æÔôÕÿó»°4«§¶¶…ÎzÛÚ®¿™ò`°c{­jƵdð;»sÞ^#_ ƒªI”Ì(– .ú¡,9•Al‡c^»S’ù żHCyu zÅ”T=³äcSðŒãÄÁN™÷Ï5"Ì0Å0 D&´¦BÈÓ†¤ã\]Ga”¨Q@°·qÅ6õ9šuLO`ïÆüøÔ¨1çwׇ̓®$›ŒºKqÇḉ1¢Þñ¡*‚‚rœç)§ùë ÷ ª06$-µUmZÌVƶ$£¯Ä!xCcdPÝÚÜྠ7Ÿš+aa‹æŒm‚Þ5uù嫵w—¥•æ2ÅZ…ÞWKî¥`ùÿÙ{›ÞH’,A,k¦g¦Ëg„™Ù“V;Xy3Ùňªˆ`D̬b’QI3£‹I²IfWUWfG;#œ¤wÆW¹G$Éü ´#`‹½è¢….«Ÿ°ÐaVÐAõIØ‹é"@­ @ Hè°Ðû2s3w2ÈdfUuÑgª“ánöìëÙ³÷ž½óÍ…ôG1¡'¥Ãm>o‡Ê­T„M ip(ç›"q:éÒGÆa"_ŠnN-±Œ'1~E!ö©?D¢Èº8=Œ/±cP<_Ön[µC1¹Âyݺsþ†V†QThjS¢aî$(°ƒyÿuB4zÿ“Œ³Ã}õJÞ fÅ&ˆ/'“´x*+LThKŸá?ßþX¥Mì–IÅËÎÞ¬Eá± ÅÔ¼ÿ:ÍOO²ãSѲ˜¾a/Å8ö ÓðŽoˆÙÙVqb…—Ô±¯2IdÖf»MÖÙVqItÎBeœ€+cóy¨lˆqh*Kq†ä–·¥&2­F¡ Q))¢2¦ Ì®Å.îµ½a¨þËL‹í‚Òéž±ô®»f†‘§O‘~Áž˜CÆJ¬0õ“nS¯Åû‹ ÇS84â»{~=ŒÉߘ<¤Q¡ð¿vÚô+‘ MÄ»—IàÑ4á+ö‡sÀ]Á˜qØHEãbWiL$è^ŒõÙÁš{Z  . ÃC´%æ JŸ†#à|ŸÜse5@sè/ñl'Xæ´žÐŲ†y8òñæ £XRlr0Pº"ĶÛI»H7eIøx;&:I£HþN¼ tcÕPH)Ã~jì¼%x¢±%C;)xxݸ`{E>”|}³ú׺ú“žZ}Tsý|´ŸuÏ$EÂËá“c^@bÀÀª^÷%š'‹qoˆrYh¦ç"’Ô%.(s \&k›Y«¤ó ¶)«–²¯—,Vý'§‘cH”±2?JÛ.çÝZ%ÃC-_É€ÃàT³‰êx¨æd$«¬ÊU§¢ ï×ôu.y'£šÙ`ü#äˆ6•;ÛÄ¡›þ0“Tôã\žRªj Öˆ%—nè·ê-8³qçäè Î`Ä5Z|ME#"?¾s+¹sv/æä²ï\˜ù8´A L·Å0S \¡CÍËì©:‘'ëa§I5¢æ£hŒñRÐ1œÑQGŸssI•eØoa,;J‡ž›>*Dgý£N óP&ñ3ìG¸Ûô‚›µÉt ˆò­ñ…K ÍàÌÌw³­_¼œkã<Fcýu^O­~eT€¡åŒñAÑ¢o,®îžÛº—ÙåÉ3XHL/úrpùóttþ è¸ïŸ´N[fþ¥"=®Ëd4޼êVak½TÙ91¢Áó*çä¼'S.7@Éz ©z SÕ«áŠQoÔžWRU'„±«Z•Ô¶‡Ï÷L·¿û^´u¾³¢vFDß (]YŽ Nðü¦0Š˜!-{J;¼ÙGgwJüÅÎîqv¨6ù¾ct¹b±ÆÉÓÜy<ŸQ€Àó¦@äÉ”^m¿]øŽÉ–‘‰Áf‘IA üzìæd]ê]c9Ä)ÏÝ,¯ä Ÿbëê¢[ùdi/">$a=Ö)â oœ“ ‰Â”DPvTF%"²dXÜB#4÷>ŽÓ¶§¯ç2sðj ’˜PjTD@=‰ïK€åL H{ç¤é%­,ã(rNt<QnæX«Ì±zÝC ƒÌ×Ö€5GÐó!Ú´Sd3É1ÄP“TQYᲩr÷l}NòPél™æ>Hlй¯¬&ëŸÌŸ=F:¾‚#+³³Sf²k‘&'5bIÜ_ŠWXÖ,F*×u& URÑ€DTÝ£LÓ)‹5hÙQ«ß5?žâ¼¿/ÜöÛ¡y²×Ló2 ¾uš—PhÞP»s¨ªã»FíÞ„Üd˜S¢0ñ~Ç« :#¶Îúß\,ª'ĈyŽoR0÷ÉÔ“JÛX%Ÿ F3A—R†´¿˜N!á©»%ùÄùR°š Ï«1ØÎvcÄ{$EKë|Z.ô›sÝèU,Jñ?DÅÊ÷T©’\ŒÅÊS±¢Ü(W®¤\ycÅ µV…NäêjùFµòí«Vbþàš%lÀß3Ëï°îâwRm¡²¾3f÷û¤´°YÙ·GNÞ5y÷Ääº4ש`çªï!¹.µ®óië1úØe—­ P—…zŽîœOYÄLP+è³í5 :=ëtº…†Q’ltd¡ìjqƽD‚[ô"!¹ á°mp%’Œ?q&-~KØ3e6uÛÝHc6Ñô¢gqJ?Ù‰Ô€¨ºˆ“ú©ƒæ¹µ»WßᲟCÙ'œû§úBâFs³±ÿÕN£µÓxtΡ3c6ûk `ŽÞ«hݪecîìvy™ºaÓÄò×1»å¬½‘¤ãœpƒ}FbÓOtƒëøÃÐoq®ï4ã¥6ŽÇ䊻¤pAî1JIÒE†?†ÊÑßν?T¸3!½ú³üè÷€v´}Jéä>j>j,/ßñíÎ"K8ª¦L®³ŽFy}Ž"žñí ^xœß€Õn4Û„º¼ ˆ6èø¹™örÜ©ò"×ÞffûÉmG›# Ãq—O•O5Þl˜Õ°EɳãýõÙaàw;QÒpK bw]î¥8Æ¢qfmŠ)Ò%ÑÅ0:˜ù›ÄM:¼WÿÒæs_ÿêÉÉ“béÉgOfݧùùˆðó07óÓŸþ´ZªžÎ`æf+ùüüQ$ä.®? ¿vŸ~ýÑS„IÃÁ*Ô¡U*ó²oeê<šRvbüæµ15˜ò #³#¯’Ó#¯íÒeE„çßÈióT¨ï"ȳ{OÖW]§jyv~ßIq|õä´ÜùþÇÃO@ã”úõħ3Áˆ. ”‡öÀò§Ar¬ù±,}0“ئtz˜2KA‹«“@sr#@… '¡PmU@AuI}üÖ z~ ¾M©—UêjKÚÜãÂìó¼i¥"ÀÅó[ÁGG+#ÁÙüiñä䤈(P‡]Þ…b;®'k%Lç`ÕÆ½x0ØÀÿY܇ŠËž`eK­‹m´e‚'jPS6ÚfK©ä±'P/*ÁËÂÓg†0ª¤¼ßŠ DýM ‘bbùž›A\¢o¼äׄ“´J«îÇeV\*~…ŒÞÕÇÅÅjU>&SáèÆ$‘GÜÎëT‡ÄcA ÕÛô ?ÿ\¦X°0õvÛÂh>œÿ0±Äc,›ÞýöŸË±q`{¨˜-0:ï¯Æ<æ8K[SQVÔÚ»Ÿ”ËîVcßÝÞ%%%Å»2ðމ%#ñ,b§ˆ«²}òðµ ÔöæIúònŸ}ú¤Oÿ3_peð*¬³¿² 5c…Q×jje…æ~Ö¨öÊÊŠÉìWT Ò`m³órí¼#9ENÒPk”¤…Ñ:ç!añsŸµ •B9OŽÓ1­¼‡Þ·ÝMÿÈkcl•}£¤àù­UsyŽÒØå’êNF¼†"rGRþF”æÃÔ`d ä( P…mL°vèvÆLô0ß §d“òªIʧáñø¨¾á‡a•ŒcÂX .˜} Qà s0»9&ò«ó¿Ê=Ùû(ÿdùIôa®ôa~¿Ü¸ ŸótPè8Zð\jÁao½/œTz «,aõ¢%ÜBeÌÃŽÑQÐá Ã÷ÆÝQÀÙš¥!§3®BP0¤¡ŠmׄÛ0±\‹ßærA£?=F†F]²¡²€8c’)=ñšaœ¸ˆÎûÃ1LÕg/g×¼ž¯_„ç,IÆ Ÿ@ŸÒkºxÁš.ž»¦ÌO3DÔŽ3{ 5Jä%uWkn¥,Šò½ÅÄ•RØ,»³½·Ÿ.;΄»ó8.Nf܇DÝ,kwxÁ„¼pQ¬Âçw9ù‚>Û/èô¢ zñ¢N/Z…Ïïtò¶!§;Í8bw>CÊ™]ÏDrVdzñ£œÙíLô(gÎôìÈîm6rdvwnd÷75²;<3²;œ™ž€ÙÎF‹²€bÊóno"{ §Ùx’1ŠÓL,Iá4G2úš‰!³}:?²z™Ýœ€YýÌÆŒ¬ŽNÀ‹¬ŽfcEFG'àDVG³1B¡ÃmuĨ¨Æhs;yŽù­AˆÚ¹°1óªÎ²\©TB×<ß,Çè,y[‹åo"xS1ƒ½@Äg‘lúæðøvàå[­ÆÖz«åܺy~ˆOÇ O‚~³n»ÁÁ¼üã S‘Øèbµë?÷»ó[þhž :æ9}iØ›ªr¹¼¸¸èâ¿wï,YÿÂS]\X¨º•òÝòRùnþ×…W•;wn¹å·ÄøçîLä$Õª¢3áº3x€Îk•á“PâE¨Îäž0è \OTà˜ö¶F¯õ•klz¹GOÕzcom·¹³ßÜÞÊ^$/ø"÷l0f=›6sDoÊFCÙã‹#@®Èá<Í3ƒn§xBz0èÏXë„ ô—Ø&뜉q ŽY21NóºæÚ±&GÙEË Z\ûÓ¡ù§£ÐãŒiˆrVWq)€ü!†x vz=Ôa]Xt÷pÜg{Msd‡&û³W~ûØïùxwÇÆP3¦Ò•ñ§:-úh¬äS_uEDÁ&Úët‘ ÈÅ]Ãp‘\F#¯yVfeÅÕí —Ž Q¨=1]xŽñ‰¿9É}ÖÜ«»Ÿ5¾ÜÙÞÝomîÎJôXh€>­b!E"ðe\”>©µƒOª**FË¥;L$ŠSÝì};xáwòß.yi[þ˜Ëë¶OUÖ)¸5|jüÇ*ÃÐÎÜãðIXƒƒÖ®hl*,ìpb‘g¾;îÑVÀÅ1o"ºÄÈ]âyØÒÕUwðE¶Ð#bë"wõŠs£ˆù>fGìvmú—ð1ÎêQÂBWm`B³Äï7ë[ë› Ëj ëE¤#$1(¦N%Ës}™ƒžpÀ ,÷Ù˯3údäŠÒÝÓלbA´Q‡q =ØÜ¾?ƒÂ^ŒßÜ…JÛÝÑ&ì\ÒB#+-[¸[ûE¿À6;ßêNr3dÐJiÐ)þ*Eu†¢MψúÇæÙ IF\A¡¦‘PRsVSÓÀŸPçI¨pÏʦL=ÒúÍÝæÖ¾™J—»K—ÈÆ²PwW]ŽÐ¡}'”³"?ÒÄ–m=n/:rs(¹ÆãŽ£@Â7 ®,°iÞ³ˆ¨(‚ÑQÞ®—Œ õà0)äfs«1q| 2%h›É å?£`o”C†OgºÓ (0­£éPûë}ÑQ W¦Ä4ðŸ E7bD˽L;÷ÜWúTþ‹IºÕ4fÊRÀø¡[cüß.Ù aË!Í{B‹š$ñä™È¡CUéú°x²ÞÒ9ÍZ›80ÃÀû“W;UÁg$ô:ÓN}"õC&E ºÓâ‹z³‡ÊJƃÁÉUA$<ŠÒªÛ>så¼{êê¡cþ)*@TXP™gcŠi,Ö¥V2ÔëÄל@óôÎMXG}vIÿ`ÿ¦’‚ó'ô–o¦T¬­Á!ejðÚ#¼¥SÐRrWQ§à8Røaß+“-l³‰[^MûÃÉÛdýdfÖ6·÷.Þøú¸‘N¾ä¯Ï=ÔIÉ©#G‡¿³F ŒÍ* äu>£”aR.%æ«’,óhDô_ëñ¡uÞÖ6°Â¨‰q×QM¨„Ç[k(é€`¸:@×]g&¶§E'!‡m¯}ÞØG* ÂBÞq0k^¤‚ˆc¦£¸p^ÔKSâ½Q‚–^ù€—,ÉèÆé°Ð[’4ÎZf‘¤¾J’ ìBR ×@üщ² ÂÆ@úæwÕ ¹õq÷B óI17KŠS'ƒ>Õ’AÝ¿Œ3ÓjÕäû±\¯o5‘¯o./‘'Uæ2„Œ¹¯Ýd+qÌë„rEFóé†N:kjt?úÈÀç{If.3>F²Ðy¡/’e­xªƒ­Î¸3òÒ:¦:»&]|0MKù^k:B.=ÝCMr¯HF€ŽhJ1œDÛIÕê`.a£Š.[‘Ð]3l?jÀßzR›×¹Mœ‰­‹D2ƒ ­)wrˆ&†„1-(-»02h³Yz[Û]¦ ä@…‚”WÕµ'•tZo6§ö¤"Ä ‚3ñt¾ál²Ï‰GVÜ´L1Ÿ4ÃïÍq¤r™Ó,¢=¡p(27aù»*ÇCãËæÞ>þÁò5ãÛ}_%äê Fè·GGN ª>(¶NrSŒÃÅ˺烠ã( l,$ÓA“Àñv:@Þ€ÊE£ê¦3ç´Ìt •ò%g¹l-Ûxwä žûb^ÌzŒ¡Ô-ô€*–"6ïó Ãgn-úŸòWø(¼ÁšÊ=¥×E…ÕgŽTb‹c‰+±ô‹"ÄwîUä*aˆ³Î€¼¶IÈwºÁ3?u#‰HW¹¶kI}÷ jdÝHI“<òaïNÃ:ª²V~ˆiî 9£S=¢Ôx€MÒÒõðÚã— qW)_|â’tºZoG õ¤Av'„ºÄ4û”QP@ ‡•3·2.r(ßQVhã|µI£ Ô ÕØÜkKï9à!'íä] Hõår:’§‡âŸz½a×wyóŽSɲÀƒÄì‡4jÕ-} é "U“üü;&ƒˆôV+ÀWŒƒ×æ°!0zIIoj¾ÂÅ•à´S@›¼qÕ¯O3.ça‹é)wœ&í°h|t«Lœ( —0\*a¢4 ;îvÏL9TÌ@Ü8ÔŸÑ&Eï3"* nÔ‘¡„‹z^ˆîʃñÑq¬Œ;²”qxk‡F ýA¿ˆ_¬ŒcedãËú£ÍÆÂHEz{}Ûqîû#ŠZfb˜{T°’È!¦Ÿêzkõ_4êxTìŸq¤GÀEæD<{8…'2ÉÏ`¢èÚÍwɪö&z'kokš?Å&§{6ç 7¹Ë›Ü¹Ì&Ÿ\‹ƒ`p¥·½Å›Ü?QEC?퀄јg©fë$À8¬LKˆ.až÷ŒxfFáèÇØ3ÿLAðe}qù¡'{qºcw›M "ÊôЬ%Œ¶R.ÿ´„Ç,CÀêsx†Òe© óîôý?Œ·ßÚÃúÖÜ};]Šž‡ö°QмOŠ¢~,—–Êók!%¢Å>ßÚþb˽ÿøÁž¶Bê’ 2fTà\AeÜi¢€ÝÇ’t‘õ›„r%vŸ—PVK¡`vÔ% "i¼ ÃÏ`M·É~<< áT$›%!ÉÄ¢€–XšÆÈˇ@huÕºÁBBÿQ刱»è!­…tX!ê¬×nS:1Ö…iGš¯ Åy0ËMC_ïÙ¦¯?]kî<„@ý‰Ì9B›Ûz¼¹Y|´¾4GRój Xò ‚Ä÷ÁÀ x.”pÕ×fÈ^mnwm1®C•*ÕÝ|¹°6HeÅÖ^,O]yw­Z\»¿fTŽ›®NÙ´ÁjýâúÍõFÝ®¬ZÇ/V_oì%:¿t‡jÇ©+ï=¬OSŠ¥+/ÿ¤Jµë…Ë´¿À˜DF/6îUæ\kðòÎâ,»Çw'/nmÎy1ëîiL¹‹·=¯#áÉ1å£1ÙêÈ®»¶ÿåò2t`wû+4Õ¡˜b M~î‰ã_²Æ ß«LSûwN ½¤rQ±wzÑÝ6“zCôØüb'ÓËÄu»'âòŽ Ý0ª'''%Qʔڃž£É€Y^~ùaýä³øj`ìáUµýµXÉÅ6-¥ò«X¼X;òG¹¹ ÎÛùVuÝbMûòÕM¦7Y&™:¢æŒ¬Aƒ=@àóhÐtI?MSUpPjD´‘Y[±Vsœ  KB¡¦ ½9y¢Ä¤ŽLjTr I ±Y-J"Aë²ÊþŸüNu-ú×V¬Õ­¹ê(ÔcZ[Q2G­àj•1ž\~ljTz¿#ƒ\^¦9¯Å u“Êz„á¢jPÎ$åÊúÐô¢B‰$iò*AK´Â@9QÅÕ3b½ñ2üç^ÐE¡\ô½é]–ù¶RÖ{Ü0Žó®AìMb9ÈÖ>G®úcè]äâŠñ%”C#p}@ò?À0PÈnæ]øzIÔЀmý¢¹»½õ¨±µïþ¢¾Û¬ß'u)iôøýþó ôÉ¢ ÎÚǹ´›ÂÓ<µ¼¸ÆŠÂ Pã^Rv›l¢#æ[HLCJxÜÚÙÝþò«×ÈꈼÉ!ZQ]†×±èK —±æÜ= `ëãеð/fëñ^ci ÇHsO™Î$ ïÔ÷ö¾ØÞ]§Â*¨bÜ"‡ïÇÂHë€HÞQz´£|Þzãþã¯Iá×&%-ÙÝ‹”Ÿ¬%œ5¿·Ûî¸f”à ó¸ÖØÝo¡]&À Ñ<0j^ÛÿKC¿—ú篤J²Î3ÿ¬?ÀiŠÒµ:g€Æ`Ú8îSÆpÖê p ¹íÆäÜÚGéÎ@•õæîk׬b´Ì±óùÚ^¥Ê˜„PTD7o@>kG•j‰ÿÉ@®haBâÝ\L¼›[{ûõÍM­˜—ó‹õð¤¤['u¬ÁN•]Nasºè‹"Öpt ƒnâÚ­¤õùGþH”¡x¿¥*’ŠéLœÍÙC.Œ^Æ 1Øiìn¶=B–øÏúãÍýÕŠãä„|á³…ž ˆÎV4·ihœŽ‚n´¼Œ}ÇÿÂ]ãÂn| a?gä—eâÐÍþ ˆUŠT…B à¤A/Úþ¥a™€hk/(duÒâ!F‡äC;ƲÐ&"v£ ñ%¯ù ‘'O¯$Û9Ð×^0Rg8`“ׇ£ F³áÃ!ìuÝèúÄë'& b°FJ!<Ô‡€ÜÀ‡Ž€Eò…äƒúªDiÂM-ø$¬j`ŽÒ¸³óÈIp~@)Q€t¸äîù~Ì-zѰ_òh”Ž’´õ½­ùΠÍóøqVæ—JÏz߯Šð³Z:õº·y$-i9ª9“t’Œ/"‰ü+¡øš^¨iÜL9s?øÑ\„c2€·ÕD‰QŠ·‰EæbØÓ­ ŠCõÓ¥ÒÊ÷ƒ¡Tj{óP0²èui8„“¾ŽÚòÄÁÑÒ’hШ Ù;‰fáÐidQ šùøà ÃêÊñˆæf5ÂnÑÌ3©(ôÿÅ£=eÊbÚ¸§ yLž×ìëWXµA Y°Ùp0‰\'K^ŸîàO{Ò: ‚þH1ÒÞˆ×0D‹¸µ¶¯xeânéĈ• $T»{wØZi3¥ŒBj°™ÄmÚSŒ³x®⎥CÐÊ)rºå;ôˆ“¹Dœ*Ô—#cÐ÷œ¡¸ï±)•Ý¥„–ÂIëÏõ`Kb×zâŸE©! åd ¥É/QŒˆîÌN³.瀘-¤'£©9Q§´ÊÌ0a>¬’½²Ê&³¸¢ðëô,¡ÉsYEÞwë@NŽ‘g„“Š“"Ô$¬˜ùĹäAbŒm©&(h•…œŒ‚Ó2yÖÐC"}g¦K<[j:í1œ`ÂHâãÉ|Í?3ÖŠƒ¡²•‰]T,÷-’\ÙwÌ!²Œk´+‘Ï1DrÄÆ:IL™‹œ@¹ &&“ N":ž‚BèÎGB²²V¬`…óæ%›eY[1´m5M(Íé0Œo͈?ש?œX·R½[*ÃÿU–?.\F5ÏãH[I'úž9¾@N7Ô¢BU8Îä–-Ö/w._ƒe¥Ø‰è»Óféœu²ð$§ í@N"D-0¬ëFÊvGÓ‚5„…½àT™­VprŒhƒLŠ–^¬0±–DXnerí¨1.ªØ b`•á-®*¾£v Gœ'‹ nsš=7C>@PÕáÊ©¹±âÍãÅê¾×¬ l9èÒŒ¦)°¶n›MÔ±£B¶¹Ñ\«ï7âƒp-¥ÏHý!ýÂa;G®äp°ô¾(™ivX©$ª6"$dã Éê¼;í°âåH²&Ù™{§µe4·}dÌ­h´ +…;qasZ Hòed FáóL‚OÒBº[Äî®fÓ}¢ ê‹0ŽÕ‰ãr‹:Lfnïí·øÒ²®Ï»g4ò'E*<ù°…|Q£Šêž¼ˆ[]«³‘e 2N˜ÐÌH]–d©ÐWÑñ´Ç¹’f&«ÍU±Nâ#šêÓiEýÔ ÎlŒFj¬²¶¾öhìuI ƒ#Šü¾Ó °#5<«>„ùü© fì8Á)˜ÐnÌ–ŠDfí ?¡æ£PåwH”gY€öi v "\OÖŽÇ %‰-Õ"Ÿ7º×8kQ¯„°â¨Ò+κBT¹fì ±¦$°½-Škuj‡õŽ%7‡æÝˬÙ<W|Þk¥yÂêš+à„W7·Ö§yƒALÉoa3½²žbà §Ž:YDö¹H¹p,Â1Mi¡1¯IQt¨Ú>µbíþ¡¹yo…-Ša$î,ÑO¤Šaä-WÊÕE·xºTþ$±ÙQ-¯w:ïñø•"4`¾º Æ´jÇ!ZÌW¸à “É<·ó=±%‹Ìè5«-Í—í+*Šç„P>fÉÀy3sb܆Å;&ƒú¿í+1Í+!b‚"ŒÍc]ËàÍ:r 9"'C:Ž`0Ž, qJl „‡ïžˆ‚èã>&B ?uù]Ìàf(ÜÜê² ÐVàé#ÓoB¼Ž;¢Ýï‹áDsÅëC!„8™Ir¼6àõ #^q1k?¢£/Žá°@3zTïã"ÑÀQaU£" ƒÝÀCß}‘üÃC’',O<äGl× ¼ØˆÆ)æø$?\–p;BC®.8Ž¸Ú°Èó*1ÜÏâ.øF€%ðw`2-0…>éÔSeªŽƒ£MaçýǨ¡†ÕÇS”R¡ª. €Èâ×@9›xt“£—€{ÁwŠ®çpÞk½F°î2ZV{Ò‰ ¬óV®]Y·Žä Ôðé½c\ÌcŒ ­ÁôtN›…d~yòy)¹uó< CÏQuªÉ:*H ûŒðè°6ÉBÄN貪¦Q‹Lˤ áàö 3Ø'Dö’á!°†n›õ 4ÙsœG¨ÓD)ô™æÿcjô;°ýcNŽaAüî¯-z(hvX)Úaêš+‚–¬î‰©N–?)"]›%X] °¶5ŠY€\ øÑä®±ú v¥Á8Ðæ}8ÿ6½1L\ ©bRä>wL4i7¶-#-*󅜎QŽrŒ*¸¬9‹—0¹Cžy¾‡p&ÉÊòèÒü‚Uó× :n3òÎÐðë)þVi€H—ÙÐ=JìØ«s5«Ýð38¼ÜMØBá3&!yvzÊgPA‡Ub¹øÄyë‚æÊÚq0t÷Ǽ%LÕ×lýH2àRéãR™;0ˆŽÇ€€PŠiý$ÒŽ!ÎRM•}áÙîFÀ{Žf:¾,Ð>ÑMv½°G—v¤}ƸùÈÍѽÚçÞ®Tó<§cLúŸ÷½ñ¡ LpÔ§éǨeLK{t×ôµt D¡ ï|ôø´†s o‰Ü.ßÛŸB¯G†=Ž»EÜ{•g¿c6Tâ˸æŠA†kDT´k=ï5B¼ 3`„‰‘€àd)á,Á€¨ÓU[|$oÂGiëLÒ­{Ø ¼3úÍ̱5ÁhŽâ€w|ævƾó&GN”@n ‹T£¸bv‡Éh`sÅøùÊø»ÛŠ«^Âæ¨¾Ó¾{æì@7öUP¦ AìI&\Ü+ö è£u«ºo£u×·¡ì¤ÀúhýЙ'xh[Šã*ÉB*uÕ†xãidQÔôÅΕ°h…,ª5ô.ò&t•´¹Â§ûgt°C_^á—Ñ`9ñº&ZÃnîÈïÓMªa^0¸¢Qì.ËŠ¤ø0š¥LŸ4à>‹Ù|s¥‚ÒáxºFjÑe£DŒ)d^‹ôý3c–ÕÈ&¨%®a“«$ƒœoóÙ?:ãebo\:`ÌÞD´™‡PN,i[Þ¾”DvsÄž‘&âk„ÛÔÇ£ãùûPˆút ®š¼ÝL-éeº'¶EFŒAÀ @Þ@ŒQÍòaŠ1¦*^ ôqW(*Ìl«E¸ î:p  ÄýÎQˆácB¼YG~ƒ³°ïA{}÷qlzoï|µÛ|ð•­ƒáȵónµ\)»õ’Q)]¢|§ÿs7Ñp²\å“O>Ár v3Š}_wp³¹ÖØÚkÈy(«²¸§Í"€‹‹:ƒçéV¸CgåÈá#P3ÅpÚôÈ8ˆÌ8d¢Šcøm»Äý ž«úÿ¢ëÀõäÿ)Ê“ÿgµz·|gq±‚ùàïÿÏwñdú²gÈ=Á'ájú†VîÝì×ïósåý¿ÿåÔ>àïÿjbÿ/ܽs³ÿßÉ3iÿïy³ýÏU÷# ßâþ_,ß©ÜìÿwñLØÿ°¼7ûÿ‡ð\uÿ?qx =ÆOGÒ öå³öþ_Zº»t³ÿßÅ3aÿËK‘”„œh‚þQW|rôváRXít,™5/º”p-“Â÷áÄ™Ø>Àæ[ðwN%eV/Ü—nß4ê¶ÔÕ¥„òÆXÝU3ëÃK7GÆ9„ŠW5еH§0k¡6+GW¯k»_íì·H£þU‹ã»¼V9“0ï¤2”KÐÑÐ)4.æ„qµÚdO¼êææÔ)äÇ=®švÈ3bRŸ¥#˜£µ&À¿ü0g(ø #_9 Pq—£—fØhþWÌÏÇñ]qí–—ÛáÀ{–›YóЧSÂqζØò;2“ǘòÅü=;”>ö|•þ᡾œm½ŽKHj¥~7;¡j‹¹)hݳ>ê/‰VsÕ‚Ž£ù'Û"‘屜Ú5³z„ó¯_Êê tÊÓfôöµþ+;t;>¾œ™})‹ðzyy¶5óZZS¡q9þÈ·¶ÿ¯Jÿ1DÄ5é*å¥JŠÿ+ßÄÿz'Ïú/!}¬lϸ%úƒQKLSŒì >E¹7HãxüU¼ÏÌQ LÓ‚O÷ À}£ìc6)¹:ä:ÖÏlT13žÑ[»Ûúõ±µPšrµR®|R]Xúdé“_ €Üì™ï…” ¬?:Æ,0šröx0¦—A<ò1F6Zuàöó«F¤ljfõ/{ó¹''üÿûËü§B‡©Y÷£U¼ (Ç´·:C‹Ü¥"öˆ;´,ýY–î(]š‘Òª;ãBïfèÜ‚?Œ÷¾m uó¼Íç2ôÐC;Æh~×;yKñ?ËwªwîPüϻ՛øŸïâ¹êúß «S2çŸÿÕÅ»U<ÿïܹswq¡Z©âù¿X½ssþ¿‹G»b«Õ]^†å]^¦õµ8—…7I>¹†ø¶T‚vc…‘JçÎ5êãÑ@ëÔ⟀ƃ r*’&•_j›ÖÅä,¨òð­þx{s»¾Ž’…´Z*/.adÒ¸2òÚ*<§k¦H¥qäÎìTô·ÝæH\AEÆ!k2–¤"#ë–‘âÀåìâÒÆÕ'†Ë‘ùÛ{lÆ}4`./BŸ ´TçѶ¶?'9ö"&ÚZg¨bž-}BÛ 2ŽºA['4ˆæÅÿwžbŽ{dS%³ÈCuÞÿþ/[»·øÍÇ{åÏæVþæÛŸë‚úo*ÿ¢âú'§¥Ã€Šò»ñóÇ­µF«±»»½Ëïvê»X$~ñ¨aý\¯ï׳·Õ4×ømsÛ,óx F×XÛo¬·ÛÒùÇû÷ol´6onò›µí­æ©G|Ž©bi¸Kœ:\<‘›7ˆ[Yò,}¸¼¬„eÊË@†‡˜EËëb^µi¸†Xír-bÅè¯óÒƒ}øR÷ÁZ¹EP=Æ~`”‚±¾æ½§zãnlÖ´ê;;°`¦hŒŠ‡Šìz»ìÚîš›x l5³l}}³±›*»˜ w{kïñ£F«¹µóx_—ýؽRhá z6gQ#Ȱ;U”a˜0]ˆàŒÖͶ] G¸·)\iFáåå¾âÜ~ »^ÉBfŽ:÷žþ›ŽÇ08Ƙ’õ¶P—EùÇoóp(“NÒî~êæ(_”QIžs|Dƒ°¶0e/4p@ß¾ÆO ªgç´Æ¹Æ8õïíטÍpÒ4îÓ¤ÝÃ2Y³Äß óäLÆ“½ýí] “Ii²_øN,Þ’“Ñ*%4\&2¨»Ã³„+IY¾Já_§krtì\²A¬2usjßéS^ç(/â·¬Xĉ`ÄY4¥ènNŠ›È sbæCÓÄÐç¶ÔA¸œ¬˜8³¬bíynöà…µÐ»1³Î×Û;û{OµªC¥”•ÉGMî!O úÁ ?ìtÚHÖ@p[xÔ¼(Ö^ÀÞCãàÜlÐŽ1UðPð‡RÖ'‹SæäÜ…$Y½.t©á •šnÀRørCú“†¬12¾õÈÞ¯/`í¥]¡dÅv^[ɪl𣗑a¯È./Žió㾉wš!=S'"'æo«w‘5>:–@AìÈÇásG)7 ÿ4¶X®Ÿ&tÝw4¨mn£y›*.ƒä˜l‰O¼\5G‚,Sâ3¼º]I¨Cå5é»'ÂyÑ3ÃaÍø¤üks³Sî°Yoˆ>Û„ P嘓g{Á ¿R.cÞVôg…!ûh$EGxæ´3*â¬71î:Ž»4Ô#ƒ'¯5'eUáðlähÿ¢ÆvÞø7‚ÄVHŒ¨¡óˆÇÖém¹;¢Eɯ¼P½BkáP²hJhM e5T oÅuœ„"£ó”`@œ×Õ‚ògtš+tª+4Ð]§ïÇè&J¡ÜæÊ£ sèþ#•P–&I7Ô}(0¬AGîž"íﺤü$î¯XKXCúÞ…rcôÉ€ž=*¹÷0Ž7ò\ŽÅAÿd2=ꂹ½Øg®hbY+Ð/¢…jˆBõTèÄÊu–LIÜ­”ŒnZ¨U#ÏóoÆI%Å;¹3hÑk‡Ã,3/lÖÒ¡xIéì—¾„HPY ÍÅÔà8:qî='uìë<{Í'ìgÏ}å §âB-©CŽÂUXIsÊ8ê €ŽÈ‹ºÈþÃ1ê`xrgª‹Ž“LùΛºxN=olp¯ÓɵRsÜ«OÃcô¡à@æ„6⚽͕“ º¶áX hÁ=ŽŽ»¾xè‚Í+„\…’y£pÜ/:L‡~Ž£€Â«PO1,B»Å%&én½`¿@Eþ•S¹ BöIT)™%Ÿ$ý#0ú{ÚªoÃ͆œvÌ‚Ã;8SñW޽aD°q9x“_ÈA¼î ÆhP3ÉŠtÔ* ÜÝóÈV€1›Ã¹ñÄIH”Mêa'ù„áÂopK¡ßK|d¯7÷‰@ø‡‡:ÿ¥tÚ,Ó ØÕ×1¸ÑG—çKyAË\”\Œm#û$òyÛŒˆÄ)O»g÷ ödÙ“BìåLC‰´7;µwÔä™M=ÄÚÑ@#‹zDµpQpâ°D7j†à– &8ĘڣA1FL ãðÖ)’ƒ–ÂY“† Nˆ# ëÂÈ¥ôhL`Fʲ{õâùÊZ%ÚëÁ;>ºFaFõ „-È–,‘,f}Ë €,(× ô-ãÜW—Ê1Í)Á;Îȇ4ÎëòN#@¨GV3Ž“›Ñù)'Üݪ—a…]¨¡òGä¶I§0…ó@Ÿ*‘8ë7”%Ž‡Ž &ÐÑÇJ¥¸¦S•‚5ä…äv:+)µ5{¢ò¹½¶b8=$q®Ó%¢Ãµ°~¦ÜÀÔ&yH*<6OJc®° ÒVÁøæÄ!€wã䕼ù&ÆÊ‹ ÃÓÁì.”Dœ |ástì¥Dž±à¿¥™ŸÔÇ” ´qcû^1¸{°2¾ÇtàðÜÑLG±Îø FÔlÇŠÃ~l±ß—á±ERKrÙˆŽp`7eÇE= Š’¿0º*Þþwƒ^0â ÷.ËUÛrÓwœ¯>§³¿«œµØÓ2ù›rÖ&:ÕŒ÷„WSsŒˆcX£~õ_ø¡äÿU M6 Áž2¸ã›Û#Á~3:Ý&%¦¶ fi$óÇ+b@‘¸̵àæ(œ&ßú”áxP¯Ëë¯úHŠžwôÆ=iÊÔÄSËN8rŒã¢Š`’Ðgy]S§šGc/ÖTj„MãʎЖl¾Ìøs8®æŠ;Š·VsÄÜâ¨ÊtļL•âӈĬC½ÃÐQ’ú"Ñ7M•f E%é ‹Š0¯PÔ =S¹óÌ•ó2Õ3¯‹—ûgb©­ýƤ¹àÐâS  |‡ŒWXrwÐÇ·=R<Œtƒz¦³OI<£ö3 ™äp΂RŽ @‚Ñ11’5„TJMÅ@¦‚H‘N€’µ(šcÂëö±£†KL‡÷‚§ãª<21Ót@éëð¾Ö1¨œ œå%î´bc’ §9 ‰}jîs…tÔ]Êï¸ T0)Ò1p À¨‘[:5奭y}Œ!qԇع [y‘¶1>M)¿0“Iî1=¡ æ+qðÓñu˜¨JóC^øñá£È D¼R|Ÿ0$h¸Ç)À}Џ »ìvÉÛItB©âF-QÅhsTc‚}Ÿ–»µ”Ä'žh>3)¢?ü‘»ÊcDR 2õh éX£ÁL=ñ¤k$Á¯ç{œÂM´‰œtßÁh^g.-ÞãXK©©LTd’Äõ]ªïˆm%FÜ häV@¡!‰àðìõ€ÖPè5W'•ÉMxþßH˜HLw6 _R pâoî¹Eõ™ RTÜGAÔÖÛöJZÿ]ƒûS•jëuü°Kâ™ÏPúxC[-F$Él|J—/Ÿ)œ ›¦QÞX…îÜXœdÄ!Ú4n/~ ó\åfâ*â̱~Óaø@è›Qc]ë~Ó•š}û›…>çU„Ï“ëòMJV5u‘’®³ù¢çeVyÜ·>Å5¾|1¡¼ñÁ„?Èž7„?Èš·Í‡+d©÷Ï’“’øÿ¬ájÛ nÔþ*õ†Êm]V¸;8x„t'|•|AíÕ9¦ N0|eþ>Îøºï…¯ÌôÛEŒ{¥þ.Y]ºEÈ)Ùj#̆¿ªÐHÝ)VæšøMHò*‰4‰¸=é°=F¬ž`fÜG^ˆÁý£tbØû&úLÅ "þBÌíumŽö6›xÿUܹ5áù)Zt:0[ßZ£à¤Bð,«åJÅîL ‡nÈqçBŽñ¨9º«†Ðqtwº:—´ÿ¼ªý/b˵øÿTÊKw«Iûß…ÅÿŸwòL²GÁõ}c ßÛøcÇ # 9;J:‰.°*¾1 þ¶Í‚•‹×-o¶ªŽ~ýËÍæ}5“©—[Å%×­/î7÷÷ô›í=à†Öq‘Gõ/‰Ûlü¢±i½åŠq­úÞZ³iü¾ßØÛhvv{v_øÓÞN£±n¾lnÕá0^ln¯}nþ~¼!LZüÎà —œ½nBãê+0¥õýƃ¯ìO›ðÎìÀÞÚ6~o47÷»V‘æ—‰ßÄ+/€Õf:~ù˜ÐGu` ·6Í.Ä\oün &ªµÞ\Û7ßmO|H6µ…¬nüsÛœT`»÷›õt÷v7Æ/ƒO¿Lôvï«­µ8(ÚØ3~?ÞÂ(Òf¿cMÃo|¾¨oí·ü²¹“~ÓÖñÚÉßKXLë"nü µô{Ê)P\n¡úò8ÿœ§Ën65÷QºÓEyɯÃ:OÛoÍ8ϰMw‹Fçx /øÔØË§åʽ¬BcŒ¾ŒwD\¨šYHŠ(H‹™… Ó]TKI¡³!±NI UÊ™…ÚÀè zºP5¹¥¨Aè·Ð´W`•ÝdÁmí¨í5Öõ<$ñ‹ìµÓ8­±ˆ“°‹é×P²‹ìÂa‡T>ϱÈÞ~síó¯”%ÓtÌ™FÎÄò›a4ʈ±ç4EMÈIP )ý‘[Éç¿^xêŠ'5£ä,SüßMZqc¯åaö ,"¥É4æòRgvX¬ ±Ûh¹oÜŠ6vm™J½l -{=£,˜Eá9;dCì Óïd£ì\`¸£'\ ô6÷éR‹8ÇssÝ7õ<àåëäÇ× Ømé${°?`cŽ›ÎãBH/à¯àáÚçõVK&'£v©1Ç8çN2„OÏFäh„Æ” ÔïzÍJú=tI%Fq?•¯âS¡¦€@êÕÃ3Y#@ØõxÙOäHuÒt ItÓôÀH´GîÌ©&†rò¬è÷ŠÍÏøÇ&Eáή¼6¦’uìÄ<óÏ"÷§/¹ÌÏ*ÑÍ|vßëä㪟Qdw$Å.m!Æ26qâ{¼¡ÎHzÀy„T¢Þc/:FäƒêdgJ]/¶éÂø©\‰¾»’ºd†oIö0ž ¤ºQ\§bÖÁQvg[_—¦Ðj¨ÏöÚ)¼ÌÍ4(Ã%4…™‰ÝþóPþS½XdPÜÊLÞڂЋŸ F1ž¹a@¹Ÿ“‡þÿèûîÌÃúÞC¤-q§P­ïavUè;æ^ÊñRQ•d8›á&WMLËß;¯Ä¨E_e_Ûóé'&±M—¿q˜Ÿë˜=šžBiì§p–ý„ÑRo#cލ[›+—JªÆ¼‹ž,•‹&©õuõC¨úô¢™’rUžfÌo“cÌR–#ž&9fä—iý~ªö)0î“1”Ëd‘g%r¿þlöùÓ™äTÀKœƒEµåd9r¼•[hcCFH|WNžB̵}ìV·#'¿eáZíc¿ýlªÊž0 ¯Œ¯Nó®Õ9BdZ‹ì\ÄÂU·Û¦¿Œ¸I "gÏOTç“k†dIcéªûu91:ø÷´àfMƒ½XNÀ¯cæë©c˜”Nà–&;Ø¥¶(ž.\*ZtÇFšÉRŒXºàíaˆ g>€_#اî/¨Þ×\ÿéŒU kZ#M|êÎ|-?}ÒŸCqækZŸ§ä”X" sUœŸOô¶íõýĺö"Êdª’¯Ý>H,mŠoI??qSp¾¶Yѧ®›ÉC:’—øÐeƒAÖ9¹ÇéTM¼›´ » ‚» ʧƕÞæ×ÛñÚË_ÊÕ“úþAJ`Hô-Yû^æ.‰×¶J%½U¢4Ãé¼ï%“@:ûù,ÉÇÇB|2gðÒ&GønÕýÍ èçf .ü¿É@à3é°÷ŸõÑõ ñº›þ+Ïäím)*Óó™ñŠNÁSaûn«© ùž–/»|ÐAS¢Œob©GŠº@ÀHä !D·¤}êµt1neÜü÷ôšM¶äÉ”ÂÖø‹€"æå¥jóµEöÕøVݲƋg¬hrëÛöúgÉ®^¦5Áõ4\¥aHŸ„¬»Ü9œú9Î$ˆ)Z[«ÄüÍ„¹ G/Mƒaœ0Ž7íý¨ÒúOþÒÿÕ“ÎG³óÙK›èì§êeíÝ4s}ñ*\׸ßH÷áò³_üôZç?KT²@Ôc×± .;îÄpRxøá¬5Ô˜†‰ó@Û #‡ý›Lm&/ÀÌÌ: P¾YçÛ”') :ëQDíoz ½ª ^"»‡emyú—ÏŒ+u‡øÔ¼_Ü;T¦d𬠢'}릩EªSh%Qëõ´“(õÏŸC±–J* X¼ñìóÌVBëš+Ûê@›[Æg®nX6Α™Eø‹ \·ü4­wœ[Û][¨Îéß—¬M÷)qýKÖ¾?>DÃîIµÕ¡WpËŸÜAiÄTMî¾0áb6—ÏêÖ#ºŸ›3îV|g› ˆSÚÝFÑÜùÓWÚ“:Ô3Ç9¹CÖ…y6¬½Q8ytv!¬ô]u6Àõ€L¼ð,sÀä¸äÌL¢úk'Z¤w¤×*HÊE[iÙ¼Ñ'TmÛC[©Ø `Æ-ÙèÂR #óâcL p™¥¨C¬€ÎE†ŽA^¼Zµn/ñT4ÁY5Ÿ]U.3“Uy—N¨#—š©ædoæMèD£$·Vy[U4£ôG«&–Úz£Øf©¼¥€n‰Sj³Œr<„4:Y=b¤ÏÒûÞ*&û5³\ܵ‹¡ô¦lOo¡ Kjº` ÆÊÓrw¬È4î‘yû» t~®5ÒÄÖÅžöZOUõ¤OWõ¼Ù)«¡¾@H-¯åÎìxDorvÇ}1ÜXΗÊyP.Í $ŸÉ ¯éÖðÞÉyg"ùÍywùó.«%Ëœ'Õ ‰Æ XF>IæÎŽ×øÛ>rÅcÏ9œdøòû+û²¶Ìb´ÐŠ:ƒ¾Ká…¬+gf8ý02 ðM˜"L$b A4mo ¢kNø:3GèÇñù=Y•q ±T#:ž¢Ýcþ;ZBD1Œ¬ïŒâAI‰ÜîYûÈÐwpz"ëN,Ì,àHÁ1PºFøèw(Xð9›üÝ?ò4gCæ`57Ï;ÊÞÐo#K“€SÇ„±z’5é” ñ6‚ï[œ¦¦œ:EùŸ`¶#? 㨋NB¯“-0k\0Àl!¨t’v$J«´ˆÿ* Xfí),Y`TÌZQvTóazm„ xqb<î$ÈÇA–Û¢#iÖòˆ»qdVÞgñŒ×t2I£ñ’»MÄΕ–óÌš¨÷U·Å²‘*SÞÅÁ.¿mu“d¡þµD™azz²Çq9ph>‰–ãhvÅHŠQÊȱ¦)3!Ë @{³øØÓ5àþë €x»:¤öD™UÚ?’wñI­nz” b’EÔ2õ®‹N £·VÊà-]cÕÎ)`ö:î%&ö;qô4]œ£¯)±9eÂl÷ËNÓl‚šÔ›){’ìŹÆ;b‡vuã;‰¡i¾£2×^ƒùŽi´ó6vI«]†ÙNÒlÅT¯q·2lLfWIîU8YGÒÒäb[“<ÙÁxiK³'ÙŠacZ¿PÓ ë•TÕ [ÌÞK6f5à\Î)Ìfœ·k4Sü¡YÍà MË=bsÛ\Îv&iðoß·dò‘ÙÀ>2a½¡Ù€Åùb–FvÊ„9µŸÜ¤sN“®Ñ¤ÊÎ[œ’ðݘþûS›\Ëu~Àœ—:¥Õnfå™$S¬H Z€umÖ¹¬ëZìzlʼ¾·,=¦5{xKwþ‰™S÷“ïÈ'Ýæ×ßÙ«1Y9UêØ·sg?…â‰øîÜÎßçÛùàºoçõ´›™©Ócp”jN­”î[ßr‘hä~ õAi87àA)ý÷L–Ígw„š´ëˆ•ÜxW«/u ï!ºgJjèr"r|8;V‡x}¾úÇlŸó’»ù=h[Ñ+£zœÚáTÇ©»q9hÔ–éú‡#µ)â'­ ε¹(fyuÍne–WÓ"©KI6ö‘cœ3銒D}%êz=J»u”À` öfç5pºØ–Ý¿àÔßÉœ÷,™ ÕWÝÉ8€ŒÌàÈî ‡4öã¨AW³T§½. ègŽ¥A¯q (ŒÂDn ú\ý®ú&Zm;'=ÄC¡®€r3Dx±ÜŸC9 K7ÂG¬ðÛ”¬A"¤Rj–2K–Ú?k‹Ðô *6IoÜ>vÔ`YÃ@ì9 “ïÊéÒ$“°J”Çô’fxvE)zrEU:sm±cf³7©ñ×€$Ra B´ÇN/ˆãF«Rƒ`Ð3jY„Å–ŽÏÒ}tútqN ™¨wqîøîbS$/–} ¹b‚‘‘c/°Ö„\VðM˜ %Œ{l¿1óxÍð8‡3¡-3IÍ3•½‰<–/|3­ÁXû2¤ ~\ËàçÜk;­ƒŒóBÖ”Í0&B*œ$Òë«FóŠÑ¥¤Ç ^lÓ¬UtFC rA[±(E|”àØÃòE07¶u™4»W^ßasáÍ*5oÙ°M¼°Úp²Ûˆxè9À!¯6Bû”<Û‚Hýqp;<¦]˜)a*"'arj>ÅàO<â:¦õèøõð¢¦í #bø"ÇKq0J†õKG,6\d•*Ëj +8»â&»«p¯Íü"¾F:Ÿ­½vÛ‹TKN†Ð#ä H£‰q Ásb!üÓa×ë ’;ÎNˆ<@P£xñX.ð%$”u\â Q~t}¼¡à•h¬ªY)ÊFözLXfÂÜ©^Ä×b–åX¦N¢Pë#!U "äI/cÃ;É{c¶×QR˜ÍWznèdKG¡C%¯{º@«É´¬?®õû&æðš‰…Fæ9“Oô.,9Ræ6Ô-ë™I ’£h߀§XC2NB>Æ4ûC^ˆ[BbøÓbŒ²"ä³ÝÆi™i!1¶ Ó›ÌN!Ÿõñ *¹¸ºdY9‹AJz¨­aŽéÝ -j3€œÈEHÔöûÄ‚eىأ0Ã$LÕL4Ô< †3œUmÚL”¼>V˜ÇœcÒ?µ‡`¼¨Á좉]އ@Ëñ*¶í—¨xƒ._Ë [©í™mÚÉ¢£óŒ–È“]%4;…˜7b_fa…ÛPd“–±„6* ¢Xt(!äT'‘øeI½)'*×…3NB Zô²†Ã4B6X5Ïê 5jÇIßz)5¢–ƒ 1o‰¨PS«ÎF×ÐÖ8U´ÝFd& ÉÝÊ –œ 5ÉÊt8½ÛÉb7•íAlŽô' Ý<ùg7ˆw²äi‚ðÔÚmš¿4ÉÁÌ}›¾x&ë®Ó(ÿ*yÒ,wšÍ5 hêڮϷµÉò•­@+Ûô2F—ÁõšS×gNõ­YS×kMerõ¢•~Ç#¹Û­àJ¶[“-·d—MncË­ Ó0Óv+«k1h²Yÿ¤ISt¾VËÐLg~¤­T&˜ %.4/Rj®üEF1a3 Œ¬†x-Wݹ97eðtž Ô´VJ¨>ά‚«”kxï˜?ßxi‚>.eÀ”ey¤?ÒþÀÀnú'lW”6P¢É‹'K[¥"ø™J±~•‹(5õÑšE¡ Z¤›úÒѤ»†’ §s æýP’”F'€á>îÃHß #³-±0ÆdŸ_ņN´êƈéÜD"€^äuµ¿I¿××<Ç‘ÝÌZ81oˆ:ëÓcƒI{v‚gäzÚ!O(©Á  c( ·A:&iŽ0z/’P1…ðÎ,/ÖŒ)sH8Bø™تB<ÖÉ8ñ²E`>æŽÏ~¬ú'3DbV¿­]l*çWknå;»«á#lì._iwúO;˜èÔߪ•2ö3?ÒÆ§¾¦Üƒ³v2„W¯ìW÷o´»»Û»™¹eìI |à²E¿ÌDþmeÔø°±öùÞãGîÆã­5Œ¢¶4¨F%K®pµÝ¡Ò¶ÓA(WáúúXú äìøjbQvâKg$NÆ•&ÒIÅ-£I!^ FZK5*­\t\–ýñŒ=Ôwõ±^ª+¡kŠ’·³ “nXbcEº-K^²Ä|!5fN Q¶,(¾Y¸M%Ï’üQš^ƒQ±½4 ´$k] }ÖÙ믥ÌÌ™»þ €û¤2ú€+n¬1/eÏbOÜŠû(ˆÚšÿºJLA“ñSuYiê$Ö\Übö¥¨íš¸8NS$}“ËpMÖ‘±Ú¼Ÿu¨ŠL4W FtÉ3òvlqñÖç™Ñ8·ñpsåpƒS/öôÌj9î¨u­'}Mu±o0|¥§•ßëŽkÉ_Üt:‚™W>Þl‚Œö,ÂØæ‡;|cÍ£A|lSSÀ±<žG‚źÁ36ÐùcÃoøë4Í:+Dô>곩R· rQòò4.‰ÏÕ²yµ‰} ]‘ÆJÛ…ˆ60!*Mm)Ý´o×ZK*nì@ÂVVf‡ÁÑ*ÚÅǞɓ3šØÏC6ªFå²2Uw³L‚ŽYÇȇ­6R #é%k( =e‚AŸ 2Ö7í¶ ko„zpãP}Ûœ¯z|Ç ýõ]H ûIEpLitˆEe„°<ãƒÈÿfŒê̸M\hR®:ˆ0L‹ƒÑ\p(ûx¼’+¿ø¹£Þ𦹈RXÂ6¬ãGí08@íõšñ!»”t8¢[§œq¤“+µ CíPl”œL(EM+ðXùžmDZ$BõJÙ=ó½0râþBkÑØÏ˽ºXÑ¢0bÕNô[z)Û§&,Àkz6³ÖwÅÈÁddóØLF^%ûR2È6TÒZ:Ä»Œ°¯%OGÁÄÃ-†‰ ä*€ƒZðJvÒõ.vÒ8…J œcà¾BŸjy¤Y*¹î®›©­úÌ÷‡®Ø¹‘N—&Æaݺ j6–ê q®msÑ1-÷ìP(ãþjêÙ‚f¢U"ÞiøœÛÛ8ö»CX—­h…K TW›m25 ÛQ>Jý¾Ve%Ò´ƒˆƒ§9·À¨#q’'Xœð}™^m<¤3"Ÿ 2&f ]qè Øb7AfóÉlìÓƒ¨h»fav=æ2È?SKwÚâ)a2‘w‚«uÄq_ä>‡€ žÈÔðØy£Q¸Ñ(|?4 ;6[E´IpÚêCeOÀ·†'ô”Ìb-«¥ÔŒx²(v+ë´ˆù­‚Km’îe),“º|g"÷w»êŸbæ ®aWpmš­ £RFú"Ó&YÆmµ¢S|9L*Š Â½h?aá'ʆ‰\3£“¸²\ÂT/óiru¡8´Œ)'ÛCi_Ûuh&AÛÈu2;ôý1š÷С`¬f²ÃdÔMšF Zcª#GT䣕±,P$‚µa¢¬†pÆè1Éú¿`£E­KŽYÝ –¤ÚŠH«nðN&ÛÞÃê}¡î´-›NýÌÐ'°y´<òŽØ³ãÆ|¨G›‰ 4ãÁ$‚TÜúÚ†€Ùzàþ²¹ãn47{À^w‘u::7L홣Â#Øõa#¡ Ÿÿh’o%b¾MLHøwKhK†•QA—ñ{ˆêA®aX1ðt“mg mæÑ]ôd>£½­—Ü5ÔѾ][©‡ícàîàø †5\Ææöò²ÁÃ[±ÁõÅ¿¡‡µXŸ³Qÿ¹V ­™î©Ì¼<î§Açã­® LE×&W¹Ê¿UiߨöÚŠªTKèìÇb 5•[Ç´ñ8“"=çdÄãuÌIÎÇÎ`X¶Qpg ®¶Øvg±:ƺ¯fìX©`¥R‰°#È0]PÚ£ÛGcšÉ ºì˜]v/è2ƒ¼Rw™Ô†÷…½`cz©i]L{åfÏ¥ôÏÿ w©¼Ã^á¿íînÃð"¨·•È^yaé—j*ÐëBÇè´tñ$²ìÒï{aÍÀ<Œ¤Ã&?8 Æ¡`ã(‰UKèzmlc•ºÐvÜ‹^ˆ¢αC˹¶Â#¨ñÌcÍnŒæ“ÜÈÇ‹£ŒtV¦æº:z2OßÉ=8K@l–-8oVaÃQ§…½dW«z‹äu ™9ØŽEÒPß’û§¦'dŠéÈÛÛ Ëk4š´¤rKk¼Óâ}FáY6%‘Ï/D·¿7áHK¨ë'‡žÇk•ŽØüâ>NW_bd,Þ¯,e^¸9~qc­õGšö7Љ„‡ŽÈ‚†cÞf³†hæõ±ÑñÛ[%“Zl|ÞåEÁ²®=ðï„å„Ý5«‚¢,Ö¶5^¯1¨ØzO®—Ê8|#˜®ø•ѰY¡ZªÄLYÛæ¡øï{jŽvg£jŸõpÓR¯u°j–Üí°Êê{ŠWÂôÕûõ­}â˜Q÷Ÿdšå¡@TÓä1'à•aëG7-Ê*#;»AÌ…ì5n}soÛq6ÓʼÍìo¦x›LÁÒ5Ô`³*)§t-c–²*ÂçÉuïCGª™ÕîS'«u6_ô¼Ì*ûÖ§¸Æ—/&”7>˜ðÙó†ðYó¶ùâpb…ì/õþYrRŸ›gb²A8ö_¥ÞP9$¤°ÂÝÁÁ#ôÛ _%_P{&_ü*Á$oZ Ä+‹›(HOã^©?$mŠò)pŠT‚=05š³±r< —ççONNJ‡Þ7Qi͇‡íÿ«•ŽG½.4paÉ —¤ {aá*V àÔþ4äp!üh4¬”«gîÏ@z.vã¡ûh/Èn+èóÔ–¼ ’[ÉïŒYzxäüAiB€|÷èÆú3¯;îõƒlú‘ß>¦²"’ÂéÐÃ# ˆ=Ž×}åʰPW¬üx·yÕšWôÕk Ü@XíÑÿ«žÿ÷½hj ðRòõ.ÉK7úßwò¼ÑúOÉ^$ÿ-..%Ö©Šö7üßÛ¦bƒp±§gšî£Cüu¹Zñ¡:E8%…µz4ìNSÅ:ã¿íEz‹Ïèÿ¯Kÿsg!¥ÿ_ªVoöÿ»x.Ú›¼ÖSmc.Š;yè.Ucot†Š#®Rq›b×GW©*¼éUjŽ®Ôâ~èûѸsva¼/ ~SÁÐ’P4ÿ3oèõýÈoéW¥^tt-°{òuB<Ž–J~¿}0ýq»ø,¼n¨ÁAïã;w®j4(~üñÒ'Åê[ƒ¼ðÖ /¾5È׎òÝ·ùã·ù“ë†ül|\¼örB9Ê¢b¥ºT~‹°+oöµïBöµãôi)Ýo†ÅßÑ)šÜ½µƬ¹~øt½Ø~²pí/°ÓyŒéÛþÖæÀ_ï¬Ow Çæ;S üÔè.ŦHl+‘¯¥ƒ O±”×q*-è¥"z}àˆ/½2¸¤pH#hs½  c¼0ø]ÍßÉóÆ«1E—Ñÿ²ü¿¸x÷Æþó<×¶ÅÏiƒT¼çèíõGÿ;å; 7úŸwñ\+5žÐÌÇÒ¤ý_©,ÞY\XL®ÿ]ôÿ¼Yÿ·ÿü«û_ü—ðÏï¿wëÖá¿·nýÙ­[ïýGÿþþ“[êÝ{ÿÞý'+òîïÁέßßw¯ÿBÞÝ<7ÏÍsóÜ<7ÏÍsóÜ<7ÏÍsóÜ<7ÏÍó~þ›ÿïÿø· ä¿‚ÿ­Ëõ·ný‡òýïç¿wëV«µßør?@ù½Ìߨ8øùŸVk䟖bIxýçüoáÿÿž ÷G·þÊüÙjEg½ƒA·Æ•4¼ñcîÇû{ño³§?x¨áµ#²4ŸÐ¿¿úc®ýÏÿø÷ïð¬¾2< å>q¼îßgx®ñÛ„—|Z4ÐfÕóà xŸ ¼¿û‘ý[?©ù÷ñv¹ôðnýC®ÿ¿¿tnÿüãÖ!&ÛS¿mxÿ§ÀûñŸÇ¿Íñþñ­[¿6á!Þýï!œõú~Ýø ðíϲ‹‹pûÑï*TŽÂ‰ð\ã·¹–ˆ§Ö8»Þyð\÷w¿ÿ6áaÿ^Yð’xbÃû× vÿð÷Üšü´Z˜!Æüï"Ãû÷Œßç¯ëAY¿ãx?6ʘëšÀBZׇg³¹õyc½©pä3)ùkû÷?Þ埔€õà¿þûröŸŸýoµÿë¯ÿ§8ú‹ßúÿÙ?›­Y–úDÏàßÏŒzá÷—rëÖºùÞ­áxß"œ?ûù{·þþxþÞ­ü„·v¤ÎoÞãÿŠð÷ ÿ¾Ìš(yÊá{·þŸŒ÷¨$ýXÚÂfþø÷^ÓˆæÇQ8Šwøoï,Â|<÷K3øuN#7ÏÍsóÜ<7ÏÍsóÜ<7ÏÍsó|oŸÇÿæÙ{ø7ÿ÷Ãò/ "Iåï•ÿ±ñ§û£ððŸ=ü›ß>ü¯þÍ>ü§?ú6ÿéŸüaýOÿö¿†ÿÞ«ÿÍ¿ªç{:€¿þÞŸþíoëŸüöÕþú¿ÿêýÏôŸ£˜ôßÿëúßý¯¿¿ù7¿ýGÿæß¯ÿõúŸÿh4[ÿÓYÿ½úÿOÜuÇEu¬íEQ± *QTlÑD°wEYÜ5`ÇŠ-öÞÀ^P@9®kï±F½Å†,jìKûQŒ £î73ï3gwaÅïþ“Üß½WÎ<ÏûΜ™çvfÏ1;gb^M ÝYFn{-ÇŒÿ0ØmolÊ4NõõpLMÉcaÿé˜xŒØ tz¨ô|oˆxænT>²âûZÔΩl…eª¡ºþÍþUN”Ê#µÞ;n’¯€¼ &Oï@So͉ʜ0G¹#/æÅ¨\6˜²L †¨ØÐÑ“.ÐÔÇÃqÂÅ`r1D%†êSýÜ2…Ö7˜œ ¦æî“û_ÈyÝ ýŽáæ[*‚é=ÁÜÊ%HITžÌUg¾çµ«6e¥dÌ`v#f r7PyÊXcÙuJ1F˜BÀnˆú›l©Ôt~mýÚøûµnÅî 3k³ìd¦F±ë@“CêyñŽÆâÚÝßô!⩳Aqgœ"àœ§¶°öaˆ@гk?s°“¡û@s?¸’Xm519×Hm›µ(39û†L&À乸fÿuNb5ìžRŸq6‚ÓœS’ã™ÄÐé@뺭¯u¾ Êm5GÑ'»Ÿ0šãåŽã>fö³œ™P†Ùµ†3¼†’× Sl.zß?ŸÄêD|Ú©h­Ü%¸)8Õ3ÿ“Õó&ÎQŽ1¶å5±·›Ê±œÁFå8WKaSƒ\uœÂrMþÞî½Þ5È¥³¤8÷Ú ³„ufÖq°ªå•ªåµ'UäU_Ëk.ØlóªDyš¿7³ä ¨a¹ž´eñÆú‘¨B`–K33WíËþVkjžk‚òä-‚ä¶ZE=žhÎïìyMfœÈذoéÝ+"­{ a>R_½%cà €Ó¤{ƒc˜uT¬[äª÷Ý õ´zè,îíd ©gB ¹ê5˜³\¤FŽ Šú3,?KvJ7»–‹R ‹ RÞ0g}àÌÃzCy´úà?oÓ8o÷@e€7 g}¬AqöRî)/ Êu´ÄOoEKlx% š æßÈF %Ëÿi/ÿ§*¿R_7ù/âÎÒ¸âFåÜ!œ{Œ¸»Àí¡q=‰ûr›ààÜ…Ä·†Æ}ùFp¿+&¸]9·?qCÀÍ¥q·Þ5Ám͹õ‰ënòkÉ]D\gOÁå¥W¿!®3¸»4îâö+$¸u9÷ñ_‚›ô’¸Ñ·q ׇsw3¸!7qCô‚[…sg7\«¾Ü~‚[ƒs»·5¸Î÷ q'×Ü:œ[¸eÁMz%¹³ˆ[ ¶µr÷ã ânÖ¸=ˆ[pŒàúsî—‚{Üp[ƒ¸ª nÎÝIÜ5à¶Ö¸¹ˆ›·ŠàrîT⎷¬ÆM~%¸¿únsÎíHÜ@p?þ%¹»ˆ›ü½U‰ëîyMÜ"·çf&î›çÄ]£qCˆ;l•à†p›î(ëCÜo–Xõ»‰¸KÁ Ô¸ÎÄ]·@p{pîDâ×Kã&ý%¸µçZý¶"®?¸o^Jîfâ–U¬~Ë×ÜNÜÓS·3çþó\pŸýIÜ¥·5qG nSÎ=GÜXp‡hܲÄ-Óê‡ÕÄ®¿ÆýøRp[M²êw$qû€ë¡qÏ·Çxk\üHÜ:à>{!¹kˆ»aŒ5ÞŠ×ÜX;ЏáÙ¬qüúOÁ}ðŒ¸ó4n q[¸ nÎ=IÜpûh\/âžÏiõû3q§ƒ[Gã¾y!¸Í³[Ë;˜¸]Áu׸ ÄègõÛˆ¸UÀ}ð\r—÷So«ß‚Äu7Fã!®ûÁ-˹)Ï÷V q§k\âÎë)¸Þœ{„¸ÛÁíªq=ˆ{«‹àzqî\âF‚[Eã>{N: \>z¨½‰Û\KÜ z«ßÚÄ­î­?%wq7•°úu#®Üí·qƒœ—¿êýÁ½ü”¸‘·qky nnÎÝKÜõà¶Ó¸îÄö»àê8×DÜqàV ®z†_GÔÐ…6c`€n·=•3_=·ÏáL“¿·Tî±ÙÃü§¤`±0òáî” ™¹áë'®èËÉJf†\¢É">9d0;ì:0s@¥¶!âxŽ~!~ü:ûu¡µ &õFå-³Œ‚eUXî×¼ý2\\³9} 뜾18ïRˆÓ›]»_f+»Ì†Ìî†r— qÿd¶œ-ÎçÿàžNAcä_÷šßösõô+‹…>¨DØg…Ÿðe@koZT°Y”eë§P>‡ÍØ<×X°&â‘Ò€ÑV€Ö ´#’&–“€úºŸ?Æâs½ün”xÞþ`¸Á~8Ù§6(éZ¯€¿xJxUUÖb) W€Ô”97ð4yK)Ì×?àì'Bä{ÜhÊjj^…1º{ÎâíÿíÞßå êÁ„`jìÇ+0ÕßÛµA(Ïf HMžêäÔ¸˹™Ò£*åXÀåá}Ýc©®n@ò™ÄóÍ\6P)eAWX*º²ÊÃêæ²jûXÖI q@ =N¯¬?g8¹YYqà}"•ô)kèK¡¬• 4‡³ØG¶Êò¶Q–—¦¬°ñ„ÍôG¶Êâí—R—Ç?hoU¢õ”4¡¬2@¯©öÊjÿ,¾º05ra‹¼R–…ÿVßÿCÜ¿ª“K^ÌHèå°IVÌÿ±èXöéÒÜ(Ûp ‡ò6ô2šý½ß³Þ…u.¢1t?Á4/Lg<” iòþ1!ͦoHop.ƒãÿðË ùþq×?– ù‚rýsÑ×@˜ gï|½‹X ›V°9öÀa1´  -}`Ûº>¶oÈYeQŒgPì»Oàg€ç} k1߀9Ût·ïg8]Òz]y§`Š&ÞN?pnÜ—ÝÃJ Í 1t¿Äƒ¿ÄC»îa,HåiÝC•Öî!p.x¾/¥ÕÈ«‡„ütßq÷`«)W؆M­û²6ÞÜ#d ÷Òkê<8á༼÷eM­·õC©)Ÿ?IS­Ÿ ME€PÎVß³ÕTMùhšj˲|Ï^S}HSeAKÍ iBS9€î`¯©:÷yÛž` õ.1Áþã]{M%üð]Y‹[trônzMM§8¹îCS/Ô`­q{‚”¤¨»\TeùþîÛŽ9¿ß³Ui®Þ×Duç.•÷|þ 4†PµÊ]™íódB–qåÙfö T*YSûaÓ6’em¬ÒÈúäôšNp–&YSÍÁÕÝ—šºõ”4¥{*4U„;÷ÈY³ä¯÷SÿÜ!›M°)’ì°Ÿº Z$hoîØjjÐ^÷ì5¥&Ë~jþ°_Ç^S¡À½÷»#k±@Éœm4U œGw‰“¬õSÙ´ÆÍRH¾wdGõî6!ëîÚvT£“í4u¤Éw5M™îX;ª€»ÃûÛ2ßÅ@Œ@öÝþzGÕ6ùa3û¶¬Žü“LH«ÛéEUœkà4¾ýeQýóÚ?YŠjªJ¢ÚôXˆêÓàìÃ_Õ¯°i›ø?Šj"hA[!iBTÝ€æI¶ÕÜÛRTõÁxquñ‡½¨Š?<ÿ²³Ù ¤ÌÙFTwog68Ýok¢ŠÑ÷ H@ºuKŠê -ïØŠÊû¶¨ÆƒôýMTÕþ°Šª3`WxŸvKæëäÍmBzÜr,*Ûg)Få“QIeÆÙ`¼Æ•E¡kMzߜю éöM"Î âIgoÞÚzßD¿¶ìÕíãÏ øÞæ#j™Á¢xúßÏëŒÆÈíì™E\3×™à:®+gìÚ®ó‘ë„ ¨T·yqaYXaξ7S¼ &}Ó¿©¡xRa05tÏ)Øœ5sêq‹ÛüX·=I‘‰¡yùø’U-»Ýó·„€¢nºE–Ì̵þB½yK„®Ró?/ˆ?ãX1ö‹Q:ß\7*IÊ+¶ŒŸ$¦˜ìnM5|cÕâ·hÿ÷ÝVÈTµ{nŠäùHÖ#ùú Ùc”ÿC'gÕ+ɦ<°Y«Ù4òîzvmÒ‰Åz@·U׆ˆc¬oàÊÏ ÂróëÚaöâ:a+nYsdÉIHŽFròuF‡ rû:¯Î†òîå¼!î}fQ¦E`À"+]`¹÷†ˆ÷Ù&–b”0PJeæÊ*ŸÕE7Äs” so(Ȩ4va6~°ùë&¹í-Ý&kn‹‚rö¦­Û{b•zƒV»æþè$8Aøõ÷æŽÕ$²ZÇù¸QygL D<úå>u³áÍ`„À6)IL\¢nNð 2õÔ#þt!ÍpwA®ˆâe¢âq ðšdŒN`ä†;…»Sø<¨×71'aè;7 b×µ=&ðöutк$‘Éûk”¼ž’í÷nž´j ý*ibàëÔãºýÀ·äšœ¡€‘š„º¸j?ð•~¸çUY‹¹€â%snàÁr§O½ýƒÓïšhn=Bò?^'I$òQ޳®8‡o*OPþ5·ÚÂÁÉ+rönR—Þ6ìÆÜ˜ŸÔFûR8IëK²Bþ¨xò¹{ Ð×Èõ¨+²S¬ä–W2š»Ó1 ®¸—Én#ìJ_‘u• dõrzÅg8·.;P\Ä?™„äf‚\ÿš”Üè;$¹ú·EÅ ¡(¼Í¸üuÉÕ‚ÍÓ«ÐÂe‡’û´c U–4!¹·—]{Õ^re®HÉ]#ö¯Å5?€•÷™»÷œpÉ^‘ó€ûŸvIÖò ß™q)½"Û€“œ¤Ë¢ÕùD*·sè7F“3›4pa„$£)ÔÛ=¥43*£ WPÛÁIèa©…ƒxßDSp®år%I òÇEòa&ê§‹RÉÇ€ ¿b«dýe%¯¥ùMÉí/iJž ´\o½(•܈è‹Rɬ÷tÏXÍ`{ë2Ù¶»(ë9/£@ _L¯æçˆ³׋¨9ä¡—¥š7ÝÂþçMÚÿ¡9¼Å^øºšÀÆ6Ó/8T³4¡[¾ÿ)i´ÿ ôÚ%{5·¿(ÕœŒÝ°/uÁNÍμð‡óöjŽ>øÁó²–7 {>½š£Á©NŽ‹ÿ5·‚QæKéÕl¾ Ô,:hú‡‹BÐ̰0 O]¤Üص>êúÕ×¢­Þœ#Ö°ò—B¿dÚE[¡‡\°ú^Pz_Ô„>ä¼&ôÅ@p}âœúD ¬8÷e¡ó ÂGƒiE8oK>uŸÉo¶Q®ÔãΡ ¦Ìü¼RIƒ©¹‹8¯gˆøà4²³!êb¨›ÁÔÈ=¼†X Ħ4ñM H=îš›ÛDŒòйÍ?šR-õx¦Ðü,¥—[ÛØ^n?ðD·%±Ù¦xòùïY*fôíö²³ÛSŽF^ Íe4c“ÆTõ1K1š–zGÿûå«ò©çµòõ=—¶|óQ¾Yÿ~ùýNå3XË—x6mù¶œ£ò½¤ò…Ž@Ù¼Q¶^"$"Þ;¹M=/(±¡­P´/PY ”š¼4¶¥‰ZÆLÆ–|²€NkeC„n©@¼#cÃFñ"¼GF£^(B_Y„‘-øe™½Ÿ}ö•xöyl²+1ö‡”¢|ü?ƒñßšoìï<ßPWª†‹¬"¥Š8ÿï7Ô‹ÓT¾gµòyýž¶¡z |Iÿ~ùš¡|–ßµò…ŸI[¾•¿Sù’eùæþkåÛvŠÊ×ÅZ¾äÓ(Ÿ;ÊÇzµÄ'/Y©ùŽ`öƒ“ÂäD]pJŽ-Í耴;•~¯Î­3Ä <•ÁnI$ò¶3rs™Fðm—Ĩp„ðö9ñëO07¦lN%:Á#@« ÚjI#xO ùÏØà Oɼ¯O“}w²7šü]´²é,HõlHì_þ4•ç´‚’âÌgI€£OÛÆ“Æ4^W»±Ï¥±AmEËŸõà·ƒ»Ë rÀ›¤­ >µF ;Áx|‚Fu OR?!½0¾ç8•¾¼4~|’¸ OI] ¿HºXxAÜa<#àìÑɯï ÏMCØüvÒ^]IýA+šIÒ„.‚€~J´oЉ 8»àémPÞY,©úˆàKÝ*×ÿ#Py¬¶·ù{f"ÿ‹Çü‡«^'e›Ý2 ȇx±Ój4ë3z‚ý™ÚlŒƒ`œ/OðD© Ä|R”c’=‘¼=^–£%L‰Zç2’ljQÈfœfSÈY }âµÂÌ€vÊ)®m6 ï ÂðklÆa“#ïÿÜÉ{OH…΢²ûítÙo«Xd…=7±£ÊGÑ>Ú–ŸŽ—çWÄFž‘M!ƒ¢þ -GóÜEg-ª”ìp±ï¤V‘Ì4…ߨŸÇ [F˜Zê÷éÌÏþ_4Ðçã;M#ãøSbdÜ B¼‰µÓþªˆFÆQ°) ›E±:›‘Ñ`jG#c М@*ibd¬ TèÖfdì'0qÄP}É>ÈšÍ%ÐT’Ï™U¬|ødöÞôÿG55]ˆ…šâ€«ÏGÄ´ÌÖE9cÍÛ¡Œ»Ü&Gm{ìWÜ_EV¶”Œ3œÒÄ TRÕž±Üe¤ðÇ­ÁpFŽ¡G¨ðJ…l ­ôQ¡ƒxyjž-ágÒó3n|“"/8GãÇsµY,=ÿ8LÈzX{‘UvÈ ŸÛpuIûÃF™¤Ìå°o ûS‡¥2#T2ýpzevÇœðÃ(³2È÷c¥2{$’2ïŸÊÌ ÂQ"¨•]™·áþaóù½2qq/h½A»&iB™‹cí•yšHÑ'ðö¥4,8iöÈÆ—%šÊMË’mÔé‹7G4uòê, ,‰0µë!ñ¼×Æç­Ð¦Œúé Q·±§x7‡»ã5{å„óHM£¸» ¨n‘|SÅÏäï-™¾b©ÎÛ~•Ù¯2ÝÅoé¬ËÌ@¶ÌÛ®ÂJ®3«óufžäp¡€"¥ÖŠ4ò_hò_~lÓé"/†eòM5˜Æ'¨Q‡…ÆóÁâ8Y¨U"~ªðøI=@è¯@8Èã'žÇOVjqþœÉ2ÏTÕíýþHX?8 ãg9¦@°‰¯ÇOgØ»Â~Ú?þ@ÞÂxv }üxsœ2ˆŸ×û‰¼úŒŸjñ?«‹ø¹Âdx{µÿëñ³6Masx¿Ãø ZÐJšˆŸö@³²Ó-~ªòè 9h³ßQü$ÙÄ3,vÔâ‡×€ˆua‹àÍk¿ŒŸ¤´ñsÔÓÅOˈŸÅàjb£’þ«øÉŠ"í9 ©ú~ÄOÁvñÓâýþ#†,"ÉB}c?{€öúÇn?Ç„9³+}ü¬§98±»2ˆŸá —Ü+ãçÖŠŸ’‡Eü´!¼ Ûõõø) ›³{pÿ»ÆÏ»D[ZAIñs¨²Ç>~rîÖâg(½ààêNGñ3Ë&~"aQe?¼Düôæo+wÊø™•6~ê‚úçîtñsqâ§8‰»5±ºìñ3뿊Ÿ)¿Q‘ªY‹´w'â§CQ»ø™¿‹Ö?°p& 5ô7Ûø©ôÑ.Bý¦ÅÏ—( ­À9ºK‹Ÿf;iý³ƒõ°öþMÆÏm 3€|Þñ¿ÅÏrØ7…ý©2~"T2}Gúøé Ž;8á;2Zÿ€|§ŒŸÍ±þÙOëŽA­´ãÿ±þÙŽû‡Íçíãg/h½A»&i´þjÜi?§whñ3”Òp°`»£ø‰¶]ÿÀâÍoZüð õ°$ÂÔ®ÛeüD§ŸOÛˆºå·tñ3g‡\ÿ€£ü¦‰5AxŒŠþÏÖ?(Rê­H#·#~ÌßÚÅϲ´þÅq²P«l³ŸÔ­ÿþ°â§¤Þà¢ÇÂ&ÉLSU×íôû7 ½a~«  e@‚€Úú¿P'Øç†½²UP# ¯·òãÖôT œsàÔßšA½ÚBä_¶Ë»è—½"€.€0 ÞþÚòõZ› ØÚâ0€F€V´’&¨P—íö4m«@UAy¸oq@á6”;·iÄk@ÐãÍ„-„·b[d…§  ƒ Ø–.€ZlE-ǰMSëTá1*ü¿  ,(Òî­Z‘ªmA­©l@®[…Æ/m"‹²P_o²  Ý@{ýs“@MYÑ hH d¦©êï›…ó@JÃü—M2€B€ä2nÓÿ3€°7ì û3[ÈÞ°IP& ¿ɱ)}ÝÞˆþœÏ3  wÛ"¨É  n»DÍ¡¼mßøõ M.ØŒÛh@Ø® ÚÃÍ契*ôäfû2jÕüv1ÖÂ>ÿFÄÜñ%#'ÜÑ›µÈ‰ÙˆÈÙ¬ü<Ü€aØ‹]áF|ü±ÊfÛ¸»Â…6á}a]Áq߬é¥oÅß{ƒýÿµ‰òê¶Š[Â%^Úqm 3E3EÒžÖçõDÚº 9n$΀õ(²Èç6JEžÜIŠ<·C(òó:Ü?¼]ÿuEž‚ÍØ<]çP‘«AkÚ1IŠŒZu£½"÷®—ÕÜŒo`±."‡HEV÷ñM‘¥×C‘E€&LmµNSä;E¾úã߆tŠœºŠ< ΄ š"­#Eað6À]×¹_m9¨ÐÄ_5Evbм)9$O™ÃsuÃ:¡È–@2Á|¯²ªjQ×Òî×ÿí)Åûµd¿öÞ¿JEÞ2È£µé¹œ~àÜX›"Í ×]/°ƒYw›Pä<ámúÚ¯+²lÔu¸ÿµöŠÄ$#hq ùJšPäë5„®^g¯ÈR¢šÅ$ã<(ápðrÎÁ$ã½Í$c9,š®Ó„Ék@s2°Jð¶œd¼O;Éh j¶u¶Ò“Œgk1ɨ Îý_urD/±VL2ÞÿW“Œ•«©HÍ­Eº°“Œ£9ì&¿¯‹¢d¡ÎX­³™d4ª½Z[åvvAüTçÖZ-Bû®¾ó9JˆZoµŒŸ÷¿@ÿ@þƒt‰HªqUºûÒ²}uºû*I÷ÅZˆìcÔvZö‰+Él´5û¬ŒžÒ?Py˜ý}hoÆY N0r?½2]î“A©”>÷µ«¬¹[Ôö f‡¯Ù+éèÿ)lä$z<^œ‡¿§cúüò‚rô—tùUµÉOœ)é¿AÞì­d5ýíf ­’ù[ž<½‹Å-ò6•d :¢$V¤+I4(5Ò—dÓJÛ;ï¢|-\¡ZñôfAýÒgS” «Òeã¿Òî†-ê˜õò†S–“ÕÏ«´.»RËöw ã‘íßËÅY’þ’$ª‚õ µ[e7”°Î¤¬Í–¼+ÒhŠQI5*W JPlïÀ‚b˜Ë`¸Ì‚|'-—}Jm )+ ѯeðFòe$÷Y.{»@ö¯Ôn°"Ù¼\FÈJØTÑl®™Äk¹vvë þ€Ž-KÓ§-¡ K—Yû´ À~°É‘%÷FrA$^&û´ ŸV2p™£>­ X×À"+ˆ£¢‡3(»ˆ²/«Ue–Ó pm»3Á¿J‘Ä/%ë+´:̼œæîLT6g½¼4£Ù0ò³]†É@°R(ñ–¥õ}7×J' ~\®9Q–QÎ.¼vg±HY³NH³*«x«U+™õ‡Ÿ ÛH˜ZId­×i]oŒ¢9úäñVG9–Q×Ëç¿@»ÀÕÍŸü'ú‹ÎStL©Ör»èP3-pÀEàc÷Ï8PÖ@& ~Ö”UôxAç~¦÷"ù<%§‰?^'iNYâñ¿ñ_–‘vȤeÖ»ãó_$÷Còç%2jVi¾L«¬d3H5ØœÒlñ²g‰i-9j¿$M¤ù€¼-¹Äiù€_jÍ‘%ZLÉ[œe‰Œ´û@æɼÄQ¤k Xde× /¥ÉÒtÝð¡%Ößàó—OÈ©Co˜„×¹üZñ`SãXÒP©?Ûkèðb—|`uèbhÈÀa-kz½ˆ Õ€Läê’§ÿ,5„ãÞO®.v¨ŸM0è?× ý#ñy¸Î-²@&á8¼Êà™)¿HöDòöER-dúYSÓH²©D]B6ã4›¢@Îé³ÈzþÐN@9¥QÓ½…D˜ƒ…V5Åa“#$wAòÞ…RMóèì^èðü7XÅÀ"+;5‚òqq:5 ^äXM…`’H&ª~¡TÓ{RÓûDX¿Ø^MC ø:`ö%BM±†p^¨©i- `@uÉÕ $×[œVMѼP_üùVKØf‚Ë ¤°^Ú ë;ðn,"^Êú$CrÛR$Ï'dÃ"MXEÉæ™°)©ÙœÄm&¬€:úm~a) ÔÁ4ß*¬À¾µÉ‘%·ArV$wž/…Uȳ…„„Ìw$¬`ŃEVvÂz=ñ¿0° ,p,¬X˜ ×gó¤°^’°V€Ðl¡½° Χ÷öý©yVolš§ +ÐLjÊy4ÿGòÃi…Uq~zaÙoJ~6*WsÉÅ/ð\tžüph ÷(Ï8$Er–yR뀴] )ê Ù˜Ô…Í…¹Òf8’@ÍÕÕ  ®sÓ(ª:ç¡æ\«¢Š;=ßš#Ÿÿ!y’sÍ•Šz:‡%@rÌ‹Ò4Š:V(Xd…Õ-ýTe(-ˆ‚]±º=>›Yù̉ʹÜiÆöúg9Ñêã|óµ*\%Œô|Ï-hê<Ê}Ø1Ñ2š–Ï"å•áÊ<{å-›#଀÷À¾ù(ïÏÙ,à;GSÞE@“õ#WÜž½òh’µcŽÃSûLroŒÊ5f>æàuýl©ºŸ€ä2€òûÉÿ̥䙳¥‚|Ü«UY²)ä$l:j6Ÿf²HãÙšêîšèé¬4ª‹a(ÇfYU·X°M޼ÿGr=$/˜%U ÄȼYŽT׬ÏsˆEVPý(¥<(7‰‚¥Õ5m«:úùÛ¤ÅRq¯f"þçhÕWq6)Ž ÔƒÚR£}¸•®#:¿µ@ƒQÐ 3¥@£I ‘ T™c/Ð3Üp~Øo› ø8›€Y35úº (‘\Fò©ÙŽê>+½@±-~wΆ¿Ü3ec2È9qm¿-¾œVà›‘Á¶øK£Œæü –жxéEb[<„,ð6ãëÛâÅasaÙø‰k]Úmñf¢m­°¤‰mñ[@§Ï²o'W^´-¾”¾pp]\§Ý—¿ëçÃSaQ}–¦^b9ÚXx[m–ÛâÒƒ¶-ÞÔ—3m;X±-~e¶Å=Á9C>œçœ!¶Å_þWÛâÊt*RMk‘ö›±-îœj±Øl‹?š!$ÜÙÈB9j˜¶Åk}2ƒÐ¡Óµgï½\ôQľx>ŽÏ@¦©j ³pþÁ„ö‡yéé²sL2 ˆnzFûâöÁ³¶­a{Þ$ƒgZ@æ˜ÒO/p €3Åôå+×÷©YÆNü|ЧóDì!‘jMÓ׬üpÙ̇M“}ìà!çaÐv{šmì¬ÚÜl;M¢†ù+\ æ°[üËçk]òá×úéü}r†îú[F'þ—`¸Ê‚›¤—IÖfŽRøÖD5ÀDÛÑ{é~5ó¯Ý˜dc~Ê1¢¨•©¨F%$‹øý³BðÀù›¾8jº±yM4þéÃÇŠÌq@âùŠJM>©àý§°ÍÛÙ U¬¢ç»¡¾3ÚL\»› Û¼ÿ”Ë øóëî—¤‚ø;éÊ7*'q/2ûEX¨~MF+LRJ|ÚÊ¥´bŽÒY&Àësvmn•‘–Â"£m…¤½ 5 ´R Í—4!¤¶@³™ì…¤(òM¨UÁºeöÁÑh>ÿ,Ö·!¸ƒ ’ ‰¿ ¢~2•h‹AË.i!Yøªçà1Óì ó1ZHÖÌ?:v†ï—.RˆomÃ?©Ñ}üƒ9_ Ökº†×Ê–Õ[óØ8ƒå”¡æ©á2µ3Ó*N³M§@óONJ\¹ Ê)½oªobJ‘ð9ÂòD%ú»ù¿²ÄÕ<=>‹Á›’ƒýŸå¨¡æËaÉÊ1ÿr÷õQ©ŒðÚØý¤!.9s i`Œ±YD”9^¡[ª#®íf믧eµb;˜ˆyShùÒ‰³ MPlÃp×T)ù­À;+Z˜¤L¥íQ1É·¨ÓÁ¨C c÷Tµ¯f>`1«ùæ©Ú¤¿P'ÜÄø)´»j·­éèÅ0LˆF,L‘}ñç(B¶É:%}_|œià|ˆúr_¼ÜÎÑ2€ϦêÿGrg$ï-;Šy@üìíh{XEÁ"+»uÚ ü3V—v6hLÚ§*ÆîïÄ>Ú¯Ë(ÈóƒcµJ4ŽÑ–XÏG¡ÿ#T- }aýp˜ìWiäȰÿíÇ‹]`ï{Ó0Qz oC –>¢Šƒs¿a_^O¿Šþ/TÔ¤qPkÇŠ€º B$œ½úõ€Z ›æ°‰jPØo Z9ÐKš¨Ž@s†Ú”™j9ÐTRï›jŒ8è½HÁœe@ªÅè¦dàÝœOüKòö‡—Ã…ßDv‡Q¡t‡Ë†Ñê¶k·¹ê¤LœrG-Á¨)n,a §MV~n&ž”Ê’Rrââ¯gSˆws–ï²!”oÐp-r§•òèC ºR\³Xóä¢ü h^ “šêôÍ0Íñ¤¡tþ È BÔ6Cd~î@bø ÉèwböR¼<í[Ý)Åý@ú9:8½€ΞÁ_–b?p “RLM Ux´¢„¿‡’³¾ƒ¿þRêü°9›ªƒí¥8Фø|Ñ–ƒæ*iBŠç†µ—b¦!Ä6D4ÀÐÚÃÉ•A²f©dÛ Œ^ÿlP:%*=Õ@eàË@% [!JªŸrÅ`êÒœwÛp«R9ŒÝ÷‹±þz‘Þ;ÐÔÃÛ%„{ )ÔÛ#ñÉh~cÝ_ñì´ç _(7wD”Iba…È Æ 3ž¦¹(Ì[ƒœp˜u:u)M<ïñg#A`Íd·)µhÿc •џʨ\÷/w×ö›o>r©ø\-7HŒ`óX'ßT5y/ÞIñcWæ+ÈôƒŸ)8Wø§°ÜF“Þækoñüko‘±¡ÕÂ9…æ³ëÞÎãÉ\š@}ƒlm<ž›žW^÷¤”Áåî³ÚâgbŽ“¶ÛÈhÆ`DÙ ƒ),A­?P¸Œ:(‡<ò=¶ ß§^ ¼9ðî7ñµÒbƒèüpÍ;ÿÞY&úMj–Kç/~tÊOéL¬L¬L¬L¬Lãß'>‰còÞ!ø¥çª¹‘å¡A¤Àšd¿îOÈj ÿôOÆçÀ™΋þçhÎ"޹å ÇêHªò–a"Ž'à o«úkq|1Ð\áŠý³ V`g{xfMâ©dÀܺ?zKÿ,îxjœ”8P|¥‡qYxàmúÐOø] ¤ Ïõ•½ ¤& }mž-|åQfl?õ'ÛÑ}¥~+¹¤vßôúuç8û~yºß‡¸sûKùNò;LÈ÷(Ãàì^Ÿ¯C3`S6[û8†zƒV´©’&†!#пûÙCcûûS_±å“òPF/ ú)¢«µúðÛ¸OÏ•>õ&p À‰Â‡xÿ5¹@2÷‘Óg¾ÿ4ŒPlµóÖI©Îà_·q|o›<€5Æõ–yR ÈϽ¥f‚dÖ[ŒœJÉŒžGƒÕ9Ô̽¥Z²Ù $wïôj¹Û‹8³ÁqêÁŠtÈ=úJ¹\z r™ B#xÛÙë뤺ÀÆ 6{ÙÊE{ U4µÑÚIšKa §úØË%°·| õ¾'1ÖÃÞ£—µkõ3µöƒ­«XËÙ¶ób}S#cÆ?r-Çül‡Ÿ®ðs¸'Ÿçc}bKÖ'ºÓ·¬ø£Ù© Vq~OÙÎ|KzZ1h®ç¥Râù”…ë„‘€ü²7¹ ¹) ä*€ž¶Ï¿ø…\ld¨=Èz¬óõ”²9 d«=ÒËf#8À9Õ#ÙŒùûÞR6 !Ù|?HÈ&„\ð6®Ç××]ea“Ô‹l =ì{ld8¶´â’&ds¿;â¿—½lò‹J±  ƒäîR7¶ 63`Q¯—6\ðÀ•€·ÝåF†ô md4õ]O«J°‘q«62J‚s©§Nîäí!62þ«ŒY?Q‘X‹×;tvïCÈÙS(¼3,\ÉBðÕ0m[4ú²¡£~J¿má Ι:¹mѾ»ð Èo°þá'=j7èˆËOÿß—–ÑãSþ½ ?åó´žšÂÓ©nò1i$*@fü$ 5Éß"yG7Y¨V@2÷Ф3ŠljyÒlÆk6Å€œÒ·›¶ í h \âÚfú~W脇ü›Ð'´É‘÷HîŠä˜®²ßX$Èž®Ž“Ë ,²Â¶bb:”O?‘ò­O؆tK÷˜4Íg'æ÷•뚬p³ç'­2uC>íBØÂÔ]>ø4hÎöÁ ¯ÕYjW8[,ήt3þ[*¿‹%¬c« XÛØuJU}”%”£ífº° œ7ð²Ãøµ¨ÉÒ@®i) ^tÖœ“ÎJ»D˜Ú1Ä&òLúãl|àÁõ±#Ñ6ƒV+Dž0@þ\‰@FyÛÑ6¸b(¸Ö€Ôº³}py†8 pUø8×Á5€'€íµàjÈ Ð“ŽÂU-$?íä(¸|B¾ø¼Ê †;ÈPý¾£Øã„,òB\ÛOóŽ3œû2˜æ-9e4ç÷ìMÓ¼€bšB)x›ßáëÓ´±Ÿƒ@´·ŸçmµøY Šöµq?16ñÓÛkñÃk@ÄÏÀþiGÞ"ÚÈø‰I?^ žo—.~v·Eü| Fü·ÓÄš"~¶¶Öâ§=(Ùá`t+Gñ³Ý&~ÊÀâZ°?¼Düäv€0µQ+?ÛÓÆOrK¢Î N?a­?Á¬‰u“ðµý¿ŠŸr(ÒõÖZ‘:´r¼ÍàÕZhü] ²XGjÁ–¶ñs¨4OËôñ³œž2ÏTõUKáûg ?Âúd ?“€øYÕâyí"[”àXƒ¤Äû+A»˜Ëàòv+rÙ¡…X!ñÉsëâ®Íuo²)–:­ªÈÒõOs2ÙÔ %%~B…¿ pF+7Ë:QÜThÉÀÜÍ` ¦ ]Q‰s–é|öææÿÞ7U-§e°>š LkZÐû\É'›Ëzé ¤P+M½3ȦKK²™«ÙTòÈÄæÚÚ¬0 S€Jˆk›µÙß͈°„ø5Öf3ÛäÈ’ã‘<Ég›É®k3 gš9Z›M«Xde·6ëÊ7D±]›Miþ…µÙ®vreT ÖWZhuøSs¬ÍðNµ©ù}S"¯·’«‚ìcÙ4òiÇZÉ. {ñµV¹œ¶- ©çêƒfÄ)˵8м‹…{/ÞÿZ¨ê/M©w,—¤ªnJv¢ˆSÕüI4_í5`mÉŸú€˜Üœ| â×ôþ ñ@ D.Ù¶Ó’í¯ "­jnß÷m*à‹€'ÇgS,Ùöè àS¶d[¨) jäj*’«SršCÕã›~qÉÖ†Ÿ›‘¿1ARwU€<R'(ýéN,8>A ™÷‰<·™ ý½íñü¯ =ÿa¼Ý üú96õ`³5ÐáÙ´‚ M•4zþôï¦öí46H2Kƒr•(j@ £!s½ÍùæG²XÓT“5¯1d&‹†7÷@9d®O;dnµSÓtCfà ™ 85›jãÓ(á1jý5d¦6¡"ý¤©L †L}f»!³`ðqX„’…ú ‰íù+Ð6@o7Iÿ=«ÉàT’y¦ªG~¾ûñ€õ¼&²›o äs "¼ÉÿwÈ4*Ÿ™½+ìÃþªð¬eÐk#A« 2˜ÂbÕcM4E]Ið~L«îfs2u˜V¾­`u†œ—ù» o΢Œ`¡®$ÜVûiÖCzˆãAFåº_ ÿKlv³8ì(–5¬x:á6À™I£oª,]ÄWÏóÌ—7|]þѦ¼ü¬––[&0~ûÑqnY(·WÁÈmŽ‘ç–5â½s¨ÇÈœï3»Ed^S#Þgu›š‹ÿég4M`C›ÈÑb™2 úB&™)“¹,“'|ÃÂ1 ––å5Á¿W÷7ê[ÁSfò¤æ7r?'õ¾ô¾¦ø*/Œ™'x¨™?ˬKÀàbÙütQ¤grÂË_I6ZŽûÕ pÉ·–ß6&òÚ&ãg5Þ k* `tÇ7áB7q±5jªÈ™ -ŽsØ÷éþ{£r™e2™”¤LÔåïÚɤ»ATHC$¿2Rò”Ʋ¼e$5‘‘+ði©Ù¼ @ÿ¤^cš@ñ“2Û>ò¹\<ÿóucšÿ€=ì³âÚfNµ„`ÖñkÌ©`5Õ'ŸÃ\ÉcäØÖˆ QŽ~ÂP ¬{b‘•Ý»¡Ü@9BÛwCUjŒŸ0d£wC‰¾®G3)¦+z²Œ2hUš·1ýzÁhîÄ ¹Œî­;{ ½j>P= ǯù«òV¬'y‡‚àm°Ôžé 8 ìWè1ù¨àYcÂõÚä£8  €ö‘«HÞOÉiö‹u_œ|\ð'ÃIð÷É_6Ð^ ½×ö“¹à4g§“^ @Íù'´ ÉG¦bò¡ámyëéÿõÉGØÄÁÆW\§›|ʽ´[C]ú™9ƒ´Ë_ W¿Fôû?´?Ì 4”}äy á@^úe4û°=ˆµ–°<ê'Cg @"ýÒ‡N;p\Àå÷åc{À½ÕHFNÌ9·šˆÈÉ Â"¨åý¾~ëZ²™ ›w l#G;‡µ´® —49s€6ld9Çý„ ƒL¥¦qÞ ÔY~øù×v€©ßb)eIPøaÕøüŽþn¨E ¯OñëÿïýaÅVÂß/ùû»>Ùl°Ú “þþf¶bÍáoÔ—üm€M{«M éÏ ¬®Ó K½ÃÎŽ\¶YV«Ù¹pY ˜Ð-a[Ëè \f†ÙN«Ù8éòq=ÂZ±p9+—ÛaÖÕjVNºœÌߊeƒËE¸ì³ÜV³«õáÒØ_ 4lW}r¹2—9`¶ßj!]>¯KØr+Ö .×gàr/Ìz[Í|¤ËŸýhÅ\ár{.{À,ŸÕìzpiö¾¾†¨G.c2p™fqV³iÒåÛ:„­µb}à26—‡a6ÈjV]ºüXK+–.2pÙfE¬fêÂe3`–zÖȯK.ÏgàÒf V³ÙÒåÇÚ„m¶bƒá2)—'`f5«']nÖÞŠyÂer.‡Á¬„Õ,¥\¶–ÕŠ%Ö!—j.‹Áì\]Íl‘t™ØN+6._fàòL-2g5ÓK—Ûuµb%áò}.GìœÕìUm¸ì,·;_›gÕ>âßwj›:bØ® æý:4øt©%‡íB@Ô¬õÿ: ‹_ŒÜ¬IÖ&Xg«%‡î8 C$ÖL?t/'œC5Îz3‹±{È^u䨽$€Æn¯Fbìn‚¥6y\Óö#Uä/Fšš*ðwÙûØ~âšÏC³òÝÒL€\‚`6¥ËJ/ ãkÏ?j`üéS +‰ýëÏOìû1Þnðz‚wEòB²Šß¿¨m?ö'ð âÉöR ÖÀ7©!›¡§µiJ–|>Ï&(ÇÄ$º8ñà,â÷ªècÅ|Wçô/¿ÿ´:¦&F¼ÿ´ŸïF^ ‰ßÒ|ÏxÝÀ˃B®nwœœµ£·{ Ò3!¥ #WùAM"7¬.å_È)Bl”×Õâb8©ç²î0¯Œ#ü®ÕL5ÄS~ŠËÙÏ¢w R*xæ[PGtüUn÷«Ó†~úÕx#ܶj”UÊÊö÷m^6%ɨõð’ñËͺõ`„[¤Âþ65mQ‘ÿ‰5EIû¦èÌ›ÂÍ`jdÓMXKð–ÈÍmdCTã ‘Ÿ¥8l'”vG ­o©TíÕ/<лO&›{»T•Ø5ß[6º·Ü¸·ÕĽ…ºr)²³²r Ëe0×ýÀæpOÄdÏÔÀ]<ñW>DÜsòsÛãïÝ'"ùsöó~Ñì/=ßüêîÄÛ\+DSâsuÇ…ÈE…8Ø q§ª£B¸²Bli(Þ™·¤ªµ6ù<ªBù,øB>n”Ïlä3Òa>ÙY>QŒ‘²@fáe“E²¨ü…,\)‹¡È"ŸÃ,x}þÄëÓÇb±È\Ê23~¦”-‰#®láX¾ý&Èœ¿Í@Æ4W½8˜oíœT0 %¿xa¬Ÿ$®*ÈAÊo&ücX5Qš£NÂmÕ,¼[~¡æa©Â´N JhXÍ®¹VT¦{lVÍñ=æ¦{<ãG÷èSñ°Ô&fýkñðW%*íªªZ<”¨‚xÈ-âÁYºû*•l¿&>©Wû[ryþ‘ùxçK>ÖÁGÉJâ}pâ7Œ|ÿpt­bªWÑ›Z{WÑG]1U¨ˆ©éMÞ}T¢[ÔªLÖÕ¢[äÜLÿVcz£Ì—+keæuÈÓ-2})EÎvâ¨9*‰ä'>”¼Éßûʺ>d¢Õé_a³HOØüí#m~ò#‡>Ú“ùp@>€¢}HöÚ.rÜ@èÆ¯±‹ÜØëJÖùþ’o!¹ŠTc^ GTò¡_ˆÛï"?«H¬¥`‘•.°ÜKíE8‰ Œ®dPű‰Tõ™6眽J€‹ÑÜÙ=HÄ54Fþð˯ùpˆø–sàR•ì'HV¤ï¿Î 땱ý[ÀŸ¾ˆ‹ŠÚöo @í'W9‘|Én¬È~–@ï*| oãgÒóùyK‚ŸÂÿ 㯂Múú÷E?—“æ'Fªõ=`ôJÏ(Îýàì“8å•9 'ÅQ²eâZLPØØ¨gC£S´þ¤Ÿ)ØÇrÔO öae5è}ðS—…w«jõs›s\Ï&uQÏyÜÉïÕ³Èû׺ÑßÓmtðÑ‚äæèFÙr¼ jv[XÌTEŒþ÷‹˜ EÜ[Q+b´E ø™±+qÖ¿_Ĩˆù¬Eœÿ}š"ú,bE ûAQ®YG xÞ(^/ñƒôˆ÷NnS/éh Ñ ¥£©{Y¦”š¼@¶{âcK>YLÏhΗ§2…ÿ •Éé{þæ°±Ö¯»EN¶V’J1L–bd ~Ù]–ÀϾ•x òØ” ¬ÄØê)büCÖY¬YO©À³-H•‘è1¯96ÕIð÷¢NÎÿûͶå;*g§ïµrÞ.Ÿ¦Ù²MgE,JELú÷‹˜EÜ_A+bí´Eüf*+bÛ ¢ˆÉÿ~{—£"´qÑwiŠ8Þ“-ÂÖ³‚ûäùV_料ʰó"?”¤W·ïb_¹µË2•­ÇX&âßl]·Ms1Uù™çc®Å͙۪×wâ‰e?¥S £‰ýk ®":Û*ÊE?S’kVøø“ºÐ¼FSpY£)Ì‹Ÿ:»¾ßbIÉA'Ð*Uo+]p«ÌÜk§!¢ò2ÿ[•÷]Yª¼ßi•×±¯¼ åMäŰìOð)YÄqcDo]ßãyWó?2QʉxOFò,${—•“šx #¬y¤”¥÷_ ÍË2Òf†@n•Ñ&B#•4±Lš‰P²‚ЮŒu"T ØÓrÖYrI$_Brù2r"”È> åÄupBš™Ð½ÒD›š £•{cŒû˜ÙÏâ‰Íåõ œÏ?,QóüxþúÒͰ !+åºð¬\U/ˆŠÐ'ˆ÷Òˆ´†.Få2ÿ‰f 2Æ=e¼–›–ÃT•Í7U½SQ<„7FÄ»àí©äñ¾¬VûQeðë.S=C”%´µoN¡O¼ÿ¼ÓeäM§yâß•2>=ÕŽNªÌâû¿Þän¹Sß{‹c*†“úXêE²ám3«Alâ–R⎦#¹’Ï{Ëø¤„VPu!ٴ⛥šM= ÏKíM1ÅcˆÓNçÙšÖ:ùÀ<¦§wš{]’«Ax[Òb×€Mfö¦÷!y’JÊûH ñ%X Ë,²²ûB|'PrÅö ñáÞtbÅ܉Ÿ*˜…OW€Á­Rè)øµ¸Á¼@Ž"ö-–°©¶:¾$^‹þ²1VÂÖ“Êc9Ê÷YF0NâÍ}Þ›ZÑK¨xæµlZ’[î(>á›{ü ùmÞ.d0ud5Ñi} º<Ù–£líÞ0´S_¿Þ` J ÷ø4ïj07t2ÔŒQß œæ;è&›=,xÏO;·=Nµ²†¯“#GXþqK¼Á<ÚI½É*Œ­hØàÙÈ‚£Ÿ‹SÖ[½éŽ¿û8eù) E¿Kï›ÊÆ)?·yñ~é¼?oýdRfjX!kÖ×,*!Š»ˆë`+ëØRD@øÊ“ú]üše²Æ¶‹œA%uø’ØLðö#ôßÅiýgYQÎ%ÅeÔò¬¤5ÝJ›@.¢öÒl\€ÄiY\F «ÀˆQít|hægËÃÖó-&!ÖhŠ>ÖOì=ÉBAuÄ‹ †£“^i‚j9MAXée ªÉÀ*«A·ÚÉE<ÜKU N@†z9 ªò`Ý,A,²²;æJ Ql•/Nû„(V ‹ŒJ°8ãÅÒVâ4×Ébä`$òx]LÙ JXƒl›³«^2µa»·˜è@dÁŒûÄù3›D™‚u¦†¹êˆkh`Ç`œ]Ÿ³¯ò×¹³r¦6¤Wxe’¯à2˜†¹‹ó@– ÅuÚ†³ˆf ¼ˆêG‰g×±læB-œâÂ[~65IRQ²&{Õ™ù3šƒßw啉¿UÞ¢óârøYÊ  ·ýJQq‡üKlí< p-À—‹bx  8€ÝEµá±  ¬€ž³k=#Þ‘ s†égö†‹¦b·¨_ÅÜrüJ]h »¿•¦†|o£´%Aá„Õ`Ž?}KŽ·xé°õ¸R c·—Â÷%“β[.‘ËE\n„UÍj‘ZBº4¬kZŠÒùG@%R~‹zi ;€eßjõRÐób]ý–ÞÿŽäkH.ÏrðW’Ù(ßîë/]}êIÆK`\à[€ç„I×ö<7ƒÎÏ ŽùM¹b1ôüùG•§žK‹yXg\ám‚§ía¥*6‡•|´ÃJßÁæFQ²i"®uÚa%¼c,3h;A+)iâ°ÒÃ"„Î'ÔúåâoÅ©cÆ8ÆpØß×ÚÓÕ5€[Ž!X{ž ¼ ð1Ed-÷RÈ„"(ÿÈIúÈI8©ß'ÁSt[âeU©ñ.¡ô²ª@åQjW÷0Cø‡ìaA"É`jÇK—ö{¾ÕF Eäðð¤0‹­`iOÑIðK~ËæåÅø€þ-=éhî"^l…©‰EÝå);‚•pÔ¥Œ-,ïq j„0ðFwñ“W|eå'pò‡а2)ø†ˆ?Ð7žä{HaYüï€ÜÒ¤°ÍtoyMÌõi!èö´RŸ$©ýƒΙB<ðŸrEO©ÿ©e¡ÿ’¤\ámB¡¯¿cï;ØÜ(‚û/äXÿ í­¤¤‘þ= ÿ"iô_XÓ?Ãa_\ó“Î.˜]­¥9(±‘Pg^U“ûžïa"Ý€çÞÖC6Dc ï ÒÑ#}ˆ”ç8k á€w1?SùúÔ¯O­ÏµÇhÊJãh£®œ–Â_¢|¾ Ú¿0š«UWlþ§ª9xõ)ÚñGéÚQ»ð÷RZÔm¯,!ÌÙ0÷C‰õ$‡ä%åLjºqG~ücDÏÕ{¶QRœg…´(y[‹¨B†z¶´PPF‰3]@¼ Ú¼P0£µ ¢äx²…ý˲q6éä·é£d 8ÕÀùµ@£D{³’Q2¢EIv/%5@P=È[»Ρ|ŸÂ6»`ã]@‹’@SW÷”†|üÏOœYàè$G„ÈQ ÃJ`ó=~¼€ß4[NSx8œ_IVëg)GƒT¤Å6$ö¯©9lKÐ26LÒBÄ€Sðý‚öÛ³ßûšô¡¢³N7¢ë²Ýêžýò9Ìèç¶×ß»B¯¸X·½±Šþ¸¸þA»Nà_¿Qbùz…Ÿ/RTC\r–&fç>†Ì,Å©óa. 5†cÙïÊGÙ÷ ìÕgùDGñd ßlcmÁ>x½A¹pR†7‡Ûž<‘C=Ì WÔ)42‹¹ar´“EÆ`‰‹¦lØ]æ°;~Sâ>Ã$jãüÂñ~¥_~¡g·½úã½”Ìn{ƒz)­2ù^ô3ùÏóqKPüç:ó÷ÁNúÀµ„=1š#½E¡ývºŸ¬MÌuØâ2x»Áé+aÌ+£Ûw'z¹µM|åÖ.Žo™†°×HoÕIdÁ?bÈwUõ+m9 ¼±­j©ÅmO‚ù»ŸM·LãWœX¬äÆükˆzßX_Ë“(Ñ6Ÿ ™wr‡ ÝöD–áÅŠÎ*þôå85tÛY¦û›7H/% “ÁÜÔ™M»&=«Íg¶.`ý“Ÿ _°ÙØÞЃýË* ½Ø¿^ìß²ì_¶šmèÃþõaÿÖ`ÿÖð³Ä#Nø"Núû×Öw‹Ê7½øGF¿åû&n{Ù*b®»–³s¶€ŽˆËT;,!ì6k™Ä¼Ô2B·bÙ»î)ø-À:åÇÜá:ÿfQzÛo-^uß×e·/¦ÊÁ®O|µ´‰MñÕ|ßð„,âÜ"›VóµÎžþT|ËÏÛ2ó0)êW¯RîÒï²LAL1\t·Õ«y… ŽZ1/ HJ¬ ý+¡«€æÉ‹óäè% ùtrVäþ }ÿH_Ø=Ì#;Ù@š9’Çf*bÈ “ícP^•kS–]âäš;É8ï\Þ©nùøôêDÄû²n3[ -³6 4ëg¥rÛ“ÕÜ|…Ùþ¡[@\ÃhçlËIƒ%ޯ槉÷XÍO¨Ãkž¿ 6 J¶ûkÍû²õ…ºD>K0?‚h®ॣ)Á™EÅ×£³–'ÝÉzä7葃f” è´ç[ü•'b™ÉÏäŽBKŠß­»ÓÊ6Wn/1§8÷Ú ³¸E¢…^È e Îq—cb y i“‡¾ÿ‚ä‡Hí.Û Óyµvk@6N@vÀF¯ÙÖ7¨N¢tß&×ÕÑÌBylÃÚ‘ª,®²ß© ›‡î”ïDWùýgtuµ~ÿÐ@‹]é÷?¹)y ’Ÿ»âwQutþòKâ<.ž|z±N‚Ýåœe^!sº‰'ƼKkÀV6jAW둱ÔFlJ]ì“¶óH)Á÷á'·»ý¨>ÓU´‡Á<Üy??ŽÉ'š÷™gãÉ©¼ãæÿéQ[ZШ¬à¸ÁœûQ~þhn&qR 0ž<ö§ þŒÁñ®Xƒ)mqJ+(ÁP9Ghuo¡ˆã}2zH`PƳÎ6l¥Q¹ÂzƒEAâÝÊKsÑ ºQm&äo$á›¶¦'õÛE"Ž$‹YAdÇ\ÿ°*«!¹éýH¶¸RòÜ\R•U HY ‹r:zgHK°2EV¬î>; ]4Duæ¯áOãjPž'ºÉÊË÷ÿ`™[X*×ñ‘z¹Døˆß¼¦[jï|ò¹YR²Î­Unþ\øyâA`Sßä jAæÞ¼CX <0·hø–׸œ²Æ¯`õ½/',ï|ôåŽÜéÅW¾‘% €Uj.Í*"§|½‰E-øÁj«b[ßhZ‘L'9²‚°'—,ó0)¶hÕì„.‚y¾b3ê¦ÛŒmÙù8z²ZÿÓEt ËY‚_ø8ï\L¼s²Ó0:üù ¼´Ìå°_ødýÂxô •EÅÅóA2»Xçv ËÏ:Èþb]>~½úý÷Ë“ŠÙÅ"öR¤åõÈ{°‹,â"^¼¯%ˆ×†xã@ãtNª*þdŒeGí¢1*y3½u!ÖZb©Ÿ\Òþ2‘ \u± >X`ƒ²‹J^…äHÞà"?Hu ë\íäw+Xde÷Mºz <Ï¡ÓÖ`ØÉï–]góM:£¹“{"¾@Ÿ6ûÉF­Æ¯Å=¾ÌFÈJBöÓûª¶`ƒ¯ÚÙEîjk ìS³ÉêoÒÈfq­_V¨Á²f7ÑàÕ/Ò†'ZÞ9t8¿Ðò€ÖÉŽ†sд“Eù%_ô—ƒÝõìdW*]~À"4‡è쟼Ӊ%ËKŠ‹çYÉt9LŸfMS2§P_>ÿm$hDz¦-ŽjP°žQYЯU°3F‹—ä»°¾ð†=‹fè?ì4tÑÏ£_ºÀõ l›Ÿùèñ)'ÃNElÄ~aÂv ÉoË`}V aÉ~¦CˆD€‚úŒôS>˜Â«ëlºŸ÷:?ÚÈxn…Gü ¦ÎxøÏ¬¯ €bU›ßE—Á-"ÒÏ|ö’û]M™‘„Uɇ ý=vQ“4ÃŒäo?ÑŽìÒÀ9†1G^ë9ñ+³ ¼¶lÄ‚£`ó€<1øKøÍ{H*#Hy=ì¦aé\ò€v}Xzu?¢îˆ]|ÿ¯Åârv9,]öÅþGMˆÝcX‚§íò;" ò6!! ù¾|(a療7yG}Š<”ÌBj¤N÷1ÕL %ƒVaý}Ì53 %¯ áŽ]ښ튡¤Â!,Ôl×r(ù݆ã².ØLq¸ƒí4”üã#‡’»¢†óó&™cóè“x†°§6֦ᜨjª &Öfn>ÀÀ9ò„^òÅþ7A“Bò߇þGØv„Õ°É §»šÐ|‡š[šéˆ!À-ê—JTâ? ¸O>>­QPàŽX^*bqj;gòë0(ïWƒß¢ˆV"p7›¹ðôPój¶ixåÖåPsñÊ­-ªnúÕIÑð ±8‹ÃwáÈv¾GÔp±é!hAÍ×´‚šñ|›À·I|›Ì·N¾íË·ýùv ßâÛùvßãÛá|;‚oGñí'|;šoÇðíX¾ýŒo'ðí$¾Ì·Søö+¾Æ·3øök¾Í·sùö¾ý–o¿ãÛE|»˜o—òír¾]É·«ùv-ß®çÛ|›É·[øv+ßnçÛ|»›o÷òí~¾ÍæÛ|{ˆoâÛ¾=Ê·Çùößæòí)¾=÷çø6o/ðíE¾ýo/óíŸ|{ooðí-¾½Í·wùö¾ÕjÃÖ‡oí|ëÏ·|[’oƒø¶ ߆ðm9¾­À·•ø¶ ß>È·Õøöa¾ åÛGù¶ßÖâÛÚ|[—oëñm}¾mÈ·Oñmc¾}–o›ðm3¾mη/òmß¶âÛp¾m÷íøöe¾mÏ·ù¶ßvæÛ®|û:ßvcÛȔ螎f¡5Sš5«™R»fJ½D•Z¿Q»aÿšñýëðân]¢^èÜå¥W;j‚ªIñ©úi}É)q‰ šÖ=1Ñ™âLŽN MŠNŽîãp:’µZ³fŒšØýGŒ3±¡5ŸL Mt¤„&$:CûD;cz±:ˆÐiý“¢õcÄ­[‡öÍšuŠNNq$7kÆURlìˆv:´{â:;âÑ)Ž{âÚ$;…è»8“ãzªwD÷ñ®gg\t¼w@xb‚—ýwq8»8="ÞÑÇ‘àlÏÚ×ëñ0|DB¬Ú+¾u/Öm1¬×£Ñ*Å ¾SrbŒ#%…µÈK ¬ßScœ¬k‹ÀkØÇX)/¸pGèÔø{ã"’ ,6"Áç/ÚñvLtFC•=ÞÚ³?k›„èx±ŸÎŽ’äÏ mââRz­¿ŠWì\O‚|K§³}\JÑñá‰1ÎIŽ{¶?ó3havY±Z/¨V¯Vº¶¨ó§‰)qЩ­œŽþN¯õhëHp$³±£c—ŽÑ}Þë‹NØ:59™µµw\gGLbÏ„¸ŽX$¼îבœœ˜Ü:1¶Ðq‹ápŸíãSût/¼]u|ëÄøÔ> *£p|«NÇK ±ŽþÞp]’1q=â±Ì’㺧:­S¡-¬ðüà 'Û'F³@IŒÅ6òV?‰‹‚{59®g J½Õ ?[Çš·BýÚˆ¶ÂE&¤°ÈŠ—ÞœâÍ«÷†îÒ;.)’ñ^ü01JŽ?Q\¥ñA/Yã ÞÃìÜ­¡k¡ë—dgÓhghÆa,‚öJÑ 1¦ŽHˆ‰Kè‘Èú—©BãÄÜ%±G( |¡–Ȉqi5¶G<¯ ûK`­V/´Ÿø¨Ù~õBÑÝã°ó½»G§è>Öa8øX>êšZZª%ÑNglL<”<®=Ö9âµÈ—:G„k½Ô¡Sû—X†š&Þ0ÃÁpoJpv`ǯueǪ½–Í¢¿ktO­u¯¸øX6†(Í+w•âˆïÁR(Šá)jŠÖ1œš¹:Hã†9뙄GhŸ8>ŕ؎Ž~Q’=âú;RŠÂ3àÉ_£ºBs‰o¢è2œL‹Ãçx9Œî!O'ÌŸäD­Y($æ =C™56W Mà9øiLo ±Žäñ‰ý´ž'ø©LCÙt»WblhLt||hè8Ö—šÖ9:!41•;iGŸÄä¡=¡†I¬¬{jlô`óÕX¾±2ÀË0¤P';RØÙPYË2ŸsÄÇõÑ`¬dÅÎ…Œ«rLW; utÂãÎPæÇ±¡E¢XâÙy%Êa¨¬õãû:øh#9ðÙ”Ok¡ÕÕžÐLÙ­æcZ 9·uûŒ‡~„×׺ÔÜÌÒ±½ZúhÚùs½^‡ÜqÈõ†ÜÈ} ¹ûr!WrË!WrßBî®åf@.r“ wr£!¯üŸ¹…Àè¹­K€\äb!wroAÎîËr ÷äÚ@®äšCV~ž r= Wr ÷0äFC®¯U)–+ ¹RA,§AîqÈÝø‡åž…ÜEÈE@îä ‘Îç@îÈí‡\#Èm…¬ƒ=¿ràçCnäæBn žÿ r‹ ÷äöAnäÎCîcÈÙ¡5œ{r@îȽ¹N{r°ê|{¾ȵ‚Ü È5<ê8_rB®ä YîAÈåC.r» ç¹¥»û7ËM‚ÜŸûry‹‡Ü ÈE@îäê@n7äB — ¹?Xn%äöBî;ÈÁƒ¨ó_Cn4ä&C®/äÆ@®;ä†CîyÈ „ÜBè™$ÈÁ“îó= wrï@žï ¹÷ ×rð,ïü‹ †\cÎ(Éru!·r¡›¹Jƒhçƒ ×r>k¹[wY.r¿Cî´ßÈí„ÜQÈÍ…\6ä†An;äb!·r/ù±ÜRÈ5‚Ü7« ¹i³AnäÎÛYîÈ„ÜÈ­‚\_È}¹xÈ¥A®;äzA®ä:A®#äšB.r¡k¹Òk¹[àíµ w rÕ ·rå ·r›¹î@DA/\ƒ\ ä.@î²?ËåBîä~‚ÜÈí…Ü7Û¹q[ ¹ ·rÈ͆Ü+›9xFv~,äB!7r¾¹ß …’!·r½ 7rïAn<äºBn0ä^†\ äÂXžTcxºÝG9Há¶ñš¯íÇn~¶!ÄøŸ­¬æÃóíñóW¡‚<¬Ë Òjh_i¼ÌwxYÍÿ™ršßÀršÖ¢¼f«T]óIxDÓš>¦ù¸ëi¶4Ÿ®M5¿/jÚ–šÏÇášmQM›áÔl×iZÃÿh¶¡Ã4íãášý³ášvq„ææÒ´E.Ͷm²¦µ¢ùdOÑlí§kÚ ™šÏÂYšÍo‡æ³v¿f›ò“fŸý“æóðQͶ8ÐækÓl¼Rä ì¬Ùú‡ØB‚áN~=lçŸ,´Ùß9äóC/2†P­´?—Ó|ã1_G|„W<|Ç×hß4»Þ¶Ã¡}¯ Þ6¯¼–døŽ¶§ùIÞzöùyGJyãÁ—T¥ŒöÏðcÿ”×óûÔ/¼n>ÞxÀóí—aã+öWA:Ú8­`ͯðüFÛ3|e=áùǯ>‚×µûûŠAþ¶Ÿ'Æ/²<øZ¥gKŸΰ]J Þl{Ñûžm ¼„bìo9Ã^/+xû½òJyðàôï® xç‹Á«ÁÒæ•ï˜×ãƒ$Í>ÚW¨÷ËŸ¬*xxÝŸ§¿L`¹Ì‡oY1ül/Ë=_]ðÒŠÑžvvL#¼“^yžýלñž¬!xSŠÁs2Þ§µ/Ì·è¼ïïó:Åça¼éõŠÏ«ÆFšy ŠÏëÊxß?%x-‹ÁÍx«Ÿ)>o+ãmn"xŸ£î2^Õç‹ÏkÌNŽ©/¿]âop˜à½VŒqb6ãM ¼!ÅØßqÆ;ÑëYŒø«ÀBäÜK‚÷f1xí/ }ñyðþT펂—RŒ~XÏx1of1x×ooçâûY=6I?)xÏãøb/ç ì÷bìï+Æ»ò–àý]Äqæ-ð®ßÊw¯¤æ…‡Å€c‹ˆçþÏð þ­b´C<+ýžàç|>›ñ¾y_ð¼ÕÏb~tœñN /¼ñï‹^ˆ¼Åð«öŒ÷DÏâó†3^|œàu.†À»»#âïÓâø?ãý’ xÊq~­Ç¦' žËk?ÀŒzŒo†}´_š?ú?ãõGÞj¯û«Â’O}ÇØ3üFû§pÿg¼[ ÞÖbß!Æî¼†ÅðÏ 65ÔWðgþÇx©ý‹>Äxƒ?¼—‹Á[ÎxŸ~,xïƒw‘ñ–-~=k°¢õËÏ{‡mY|ÞV´÷Á»Z Þ^V4rLñ÷g/ÃÚsœàM(ÎüñòÇ ÞüâÌÿïIÅ?ÿ|ÇxŽ/oE@Ñýó ãš!x¹^yÆýñëß`Mû䛢Ÿ`H,âz=.Ïú g¼¹ o^‰¢·ÇzÆ«¸BðÎñ¸øøÇxYëO+Îù–‘m¼ZÅàÅ2Þ€-‚çð+:ï+Æ›»Cð–ãüuˆñÝ+xÛƒŠÆÓŠø÷Þƒbï…i2¦ƒ0éXL§`:ÓE˜®Æt ¦{1ý Ó\L/`z Ó0]þ€H¿Åt¦“0é0L;aú¦±˜&`ÚÓ˜îÄô¦Ç1=‡éeLocjÇz•Á´ ¦bÚä!‘ÖÇ´¦b‚©?¦w«‰ôOLó0=é!Lwcš‰éJL¿ÃôkL'c:Óá˜ÞÀý]Äô¦9˜îÇt+¦k1]Œé\L¿Âô3LGaú1¦NL?Àô}L_Ç´=¦­0]_U¤K1ýÓi˜NÀôL‡`ÚÓxL»cÚ ÓŽ˜†cÚ Ó†˜Ö´¦å0 Ät ¶[¦=0}ÓΘ¶ÃôELcZÓPL+a„©¦·p¿czÓí˜fczÓzègÏb†é˘vÅ´qH@¿­ŠéC˜ŽÎmÊO"ýåAÚý¿û÷ÿîÿÝÿ»ÿwÿïþßý¿û÷ÿþû+ûHèûÿaé‹aQÚG‰W£ú%G'i¯}¨-Å_sŒŠéÕ;ªgjtr¬66,v@|,+NíÕ^@NÖÆj†‚Gr|T[g¯ä¨ÞŽQIN®¨-/Ť&'EÇÊò†TîHNîÙW7¡â>ÑɽžûD÷—ê0 5SIu;R'D˲NT–˜$˺QYJLb’C؉£½¼¯«¹^ú•º^&R¹$“*…ö×_×ôJH”ÅClj9¼IÚCªFT)R1VW8û$¥DõˆOL¤ãŸlRê‡4Cפ&Ä9cz9bzGS«CZVïˆæ¥‹ÕÒxG”­VË’“ ,ÓP–šÒ wR!¼¿Å_¢fÅÙÆbñŠ+(rŒŠ¤¾P˜k,Lá…yzarbto(ºl,bM,_šgÊ[¤ì‘˜Ü‡·»•$;QÐT¼Í©¸§ÃÕ‹ïl¬¡LT`²^ÖÂ#¥—¨í *ïÅZ1±OŸÄ ØtßZ÷ݞɉýxS뺞Q)^ïÕT–àè×òuÞÒjQ;^´S-êÌ‹²E¬5âbx«Š.›k,Š-l,GwÙ\Èê–±T4Ð_¥°[Þ¶jQ”\  L æMQ<yëÅÌ¡ôòTžÝÑ2 #‘Ý7ft.o\³¢qV›UÉÒe*º¾Ž¨¸Þ+;õRCfëå}£žêž˜Ï[ÜP×—…ktOîl¹ wÑœ‘g(OR— šTEsKÕtw¤ðÒ!v¥4&Ú)ºq”Gic¸Œõ$è{šlR¦(µ˜¡êØi!®¯#–X"¹oT%uŒ¹ð)Þ'j)ó½m2U ‹á­;M¥â8³=J¹»å˜Š“aÈcI£ZéúÆôácÞe½$…¯sŠë1€w”wëÐ>Ê´J úÃUê‚,è*7¬f4,§…~‘0¹ÚºC-Ë #”ReE™X"}a­ ¡ [<õ†lÐGžeQt•ÐW×Ao)Š—`ÝCkÝõ²·%nЇ&V]AßJô–È3”ccFuèÀ{Шkƒ>yK‹å™ñ¦å™Ðþ:BvÄ(¥Œ¯Pëâ0¬½…þS!Vëz¡?UŒqM.ô«¢5­Ä…^õªÅ¥=г Æb­*t¬'BÑfªZ\‹çy¤;(\‰jÚQ¶d^f ½¬¼­ó…¾Wp´²Çd+OÅX¬1wP r1F!Æé-QØBkð‘«/rôlªQfœucU`‘ ½û%ÈÅ2ª÷PÞV`ƒ#©Àá…Ü…”òn}âM¬Å¦ëX“Ä}ìÚ!&‰™ &±Ë›í³YSŠˆd~NÝ :Ö`1½„ ˆ3¤Ä ¶(ÍOóï1àÃ`ŠâK†´&ݺXGi/øj›jiZÉm¾­“¶ÇÖÖ¡Íòé¢íõõXzÚ×´\uF€aëwˈÏ„k «fÏj>êjÒí6eˆ_à«MzQÓ|øhuÖfZ=7@³'kÃ|ø |ï+¿`¹/£kk|5_ùM Ó|øµ/Ï }µß[1»Nmµaéôçš]t¯øÈ“Ð o£êê>’Me&×´Ñ4_ý|0Ã×0öÏñUÆùo}}µŒW4_í×WÙfeW¶ù¾;ÛLíÉj‡¾Ã¾|á$³šÏŠh=í _6Å=ÏØßÒìÚÎ!6ÞWÛ­bó°Ÿw_>æ×ZûÕ¯Ð`üÔ_,„½è®mG9+дÞ}~ ÅBüuš/랯ü´/ý=ÇÊͬË=¾K`—Ÿõ0õƒŸ]ûeŒëÍñ°]5…çaù‘q˜wù[&ú3Î<ÎYÛÕð]>±Ú2s‹ì`µ6Ûçü k¦'˜¾àû@»ö×Z0h"Ž 0§Ø5w&ì~ê6Ø.¿ ÛëÁvñ?°šîöŸ¹`{1ÇY4ž¥rŒ{^Áö|f W~§£¥·Ž ôX`ý3#l[„Qk`»w#lïní°p ¶‡~åù<Øî¸Û­#}Ù6} l×N…í‚#|û l£Â«|xbŸúl3¼¬Ð?Q^Ój(r‹òb½‡ü<|±äEîh3Ê`ï™rBn‡ö¤,ù&~„‰?ñ‘Èhâo3ñ·™øPoøë‰|)K¾\"ùª üJÕ…<ùR–|¹EòUø°Nþf#_Ê’/×£H¾*¿écBÞ…|)K~WÓþ»šöŸQSÈ—/å¢ò}\ÈU*¾”%?ÒÄ4ñŸ­+ä6È—rQùîzBNF¾”%_®[‘|U~ƒFB‚|)K~‚iÿ ¦ýO}ZÈ3‘/eÉßoâï7ñ{?+ämÈ—²äŸ7ñÏ›ø]› 9ùR–üc¦ã?f>þ…|Gÿ‹Fþ¦ý?`Ú»0!W«(øR–|¹ÎEòUøwZ 9ùR–ü4ÓþÓLûÿ8\ȯ _Ê’ÒÄ?iâ¿ÛVÈ]‘/eÉŸbâO1ño¾$äaÈ—²äË÷5%_•ÿ\!¯@¾”‹Êï×Iȧ‘/å¢òWuråJ‚/å¢òo¾.ä0äKYò[šø-Mü&o ¹ò¥\Tþ€w…<ùR–üÏLý÷™©ÿJ½/äÈ—rQùS»kØ€ÿÝ‹×~¿à÷ÔE¾”%ÿ5Sü¾fŠßú¹ ò¥,ùCLûbÚ?¬C…¿öÈ—2Õßtüa¦ãÿ=QÈÝ/eÉÓÄÓÄo‹ßpÐùR.*~‘Eò¥,ù)&~Љ_¾Ÿ#_Ê’?ÓÄŸiâ/ ä È—rQý÷:¾€–‰|)Kþó¦ý?oÚÃÿùò¥LþcÚÿk¦ýúcø+]Eð¥,ùr}Žä«2qÒ×ùR–|ù~µä«2ðå{yM‘?ª˜üÏßùŸ™øo™Úï-Sû]!äÈ—²äßkþ† F&#_Ê’/×õH¾*óøCü\ä/2ñÃMñnŠÿ?3„¼ùR–ü¦ú0Õ¿·¸û mF¾”‹Ê?󙳑/eÉïlò¿Î&ÿ{v’ÿB¾”%ÿSÓþ?5íÖÇÃß#¾”%_®’|UæãÏ!·E¾”%_®’|U~6â;#?ÛÄ_mÚÿjÓþG}%ä(äKYò·šŽ«éøá;à/ùR–ü†&~CÐL!ÏF¾”%¿‘‰ßÈÄ_8KÈYÈ—²äßëüwi®/"_Ê’ÿ²‰ÿ²yþô­¯#_Ê’ÿ®‰ÿ®‰?a¡}|)µþ‡ ¹ò¥\T~…åBî†|)•ßu•Ó‘/eÉ¿jâ_5ñÛ®òäK¹¨û¹QÈ›‘/eÉŸ`òŸ &ÿ©ºYÈ?"_Ê’?ßÄŸoâoÍò äKYòïuþõÛ!ä’U_Ê’/×#I¾*í~!×C¾”%?×ÄÏ5ñåûè/eÉ¿×ùo6âßFþl éøšŽÿá£Bî‰|)K¾\·$ùªÌÇßÓBNE¾”ÓªZß:gjs¦öX/ä™hOÊ’¯™ŽG3ς߅¼[ò7òk™øµLü¯ùò¥\¶šõñÈuOÒž*óóÛM!7«†ç·›F¾\ÿ$ùª ü w„ü ò¥,ùr”äK~¡¸s–ܧm\Žî]5r”« ÜdÆ E¶±6ýx!ìVdv¹©•±é÷ÿê ,ïß=‹²¼×eyæu”åýŠ8”åõÊòz~Êòúh$ÊòzçK”åõË<”åõÈ”åõÅ”åõÂ^”åüÿ´Ü?vz>Êr~ze9߃ŸëàûG9e9{e9¿ze9ßh‚²œ?D ,χQ–ç·wP–ã}o”åøûÊr<…²_Æ£,Ç‹é(Ëø_ˆ²Œçu(KÿÝ‹²ôÇ“Àe¾†ëm.^ñ¿[ +þweé~ÌÁÊ(þWÁG´¡œÏ5CYŽ1(Ëû­#Q–óÿoQ–×3ûQ–ó«k(ËùRy_!ËûŸ/¢,ïgÆ£,ïONFYÞo]²¼~øe9~À¯y€,¯ïš ,ï7¾‰²¼8e9~Í@YÞÌBYžo~CYž¿Jø YÞO®²¼>ŒDYη£,çߢ,烻P–÷gn¡,ï=â/d9ÿe9JAYÎ/f ,ï—ìFYοn ,ïç< dy~¼_7eyÿí{”åý´_¤ïOU²¼^CYÞÿI@YÞOûe9¿Ýƒ²¼_zeyÿ³B !Ëç O–àcê?þ½ÀeÉLrw“œb’G›ä9&y™IÞl’šäË&Ù¯¤Q~À$×5É/šäN&¹‡I`’Çšäé&ù;“¼Æ$ï0ÉGLòy“|Ó$Ô©rY“ü¸I~Ê$·2ɯšäwLr“œn’§˜äy&y™IÞd’÷˜ä_Lòy“|Ó$ûå &ùQ“\ß$‡™äN&9Ú$§šä‘&ùK“¼Ø$o2ÉÙ&ù¤IþÓ$û–6Ê•Lr“ÜÄ$·5ÉÑ&¹ŸIm’¿6É‹Mò&“|À$ÿj’/›d­ŒQ.o’k›ä§Mr¸Iîf’ãL²Ë$O2ÉsLòF“|Ä$_5É¥ƒru“ÜØ$w5ÉQ&9É$§›ä‰&y±IÞ`’6É7L2üpª*×0É-Mò;&9Å$f’›äÝ&9ß$–5ÕÇ$·0ɱ&9Ý$Ï1É[Mò9“|Ó$Ã/ Ëﲄ¿P.k$?mÒ?o’;™än&ù}“g²?™å¾€ù2û|ißÙ8•}¦ÙÄ\yûÌdŸ¯ÙgÌ£Ù~Pk.ûÌcŸoØ~pë[˜Ã±Ïw61§^Ä>ß³ÏböYÂ>Kmâ™(¼ç²‚}VœÊ&î¯!Ãë*0÷^Ï>ؾyûd²ÏföÙÂ>Y0/‚¹2ûlgŸ쳓}v±Ïn›xgæëð#aûÙçöɆ¹)û`Ÿƒ6ñÝ’‡Ùç'ö9Â>9ìó3ûeŸcìsœ}~aŸ61×Ï…¹1ûœbŸÓ0ïcŸ³ìsŽ}~³Áo'³s ûÀ/•å³ÏE›¸&ø}þ`ŸËìs…}þdŸ«ìs}®³Ï ˜£ÙÄõÂ_ìs›}îØÄõ<{ø‡}ø—¹²ù» ^¥a_ö±ûˆkö `Ÿ@ö)Á>%}Ä÷_–†ë ˜ó³Oû|s=q/) >÷ûûÿïþÕ¢¢úôŠêž /dEõrDÃr.øÅ‰¾Ždg”31*5!Žÿf¼ˆÙµM¾$ª ®³éŸ•Êå"*:) ~èA|5}TJj aqF÷è˜Þ)ŒŸ¿NÁñ:^T‚òªŸÆvc~ÅO‹?›ÀÔ"Ê/kQ)ô6­Æ×Ø8œ½øëdZT’Õ{€ZTŸ|½Kq݇z, `[Ù§xMZŒQ_ÆÓ¢’1øNgTOG;þkZTñ®,U1Z¾c)”=ñ÷m¢úðnˆrè/BåäÊ“(ý·ðhIâm/ÈÂ[•¬Í /3¢ù-i-Vé…örÄ'Á»®Qüg"àÝs¶?Þ%âW¢¤ ñmþQÖ/Õš4xCy¼³çhøõoå-Z/Ã˺^0¦òŠoó{W{¬•¸'Ôðêì=ÑÊ›µÞ±ú{½Þ1ÞÞòõÂ0¼ÊìczKÚ JÿÅ´ÂòçÂ0ø»m÷€Ü«*rùL¡þVu¡ù¶7én/0ɽà¬Ì;¸0¯õ¶Ö¤¸ñ}dï@Ó ”B€Æ—~½-V¤6ýT¡È¢WÁãú Ú_¾.kñÃs…¢­ß#÷N±zsÞ;ºÐ7æ½Ó<®ëØ"·¥÷Wü½sL/ñ{Ò¢/%!QÞV›˜—È[,x÷\êî±ÈÝëòv¯ ÛKÚ‹Ù½.c·^Àn¹tÝjѺÇru«uêž Ô­W¦[,I÷²Ý´ݰúܰìܸÞܼÐÜs…¹qi¹qM¹º˜Üz¹²|ܼnܰ`ܰRÜc‰¸·µá–‹Â «ÁÕeàêúouá·çŠou©·q·qq·iU·q9·ºŽÛs·yå¶Ç’m«µÚž‹´­Vg[.Ë6­ÇöXˆmZm±ôÚc͵Åbk‹UÖ¦åÕ¦uÕÞT[¯¤¶\Bm½vÚ¸hÚ´ZÚb™´i}´ia´yE´ÅRhË5ÐÊâgUÏVË=Ö9ßk³ae³iI³×µÌ^1¶zÙû²eÏõÊ– •ïµBYYšì±&Ùr1²yr!Ë ëŽ [p\èJc/KŒ½¬-.tQq!«‰½,#¾ÇúáÂ{_1|ϥ…®.lqp!«‚‹´øžë€ïµø+ï½ä×c­¯—E¾ž«{-¾ÿG®ôµ\â+×öÊE½´š×ã;ƒ@eR$Ƥ4h×=9:y@ƒ–IIñq1¼ýC»¤&%±­Aýæf º§ÆÅÇ6`•~R„É“ð3çO¶î×§a>9k@?Pþ¿mXØM´¼+&týSîy{Ìë”ò~s¤H—¦E¼aðoÞÙ0Þ)üî#ð@µ¸#ù¿v½`¾µùÿÊUàÿ䢫ȷþ‡—˜Å¼[Qœëõâ]‘zÜ_ø÷nXÿ÷×ßE¼[W´ûVÆ[¬žwÓÿÇ÷n ›CýOoÑÿ—·«ŠzÎ<Ýõödàÿâ é{ßù3ß ñò˜âåÆY‘V·6MJŠuƒ°Ð§*ÿý½»¢Þ"–—1ÅŽÓ 5%¹»\Ou4HqĤ&;D‰««ú½þëÇ,E¸™n¸ýo¨M|\÷Þl âžnòlƒ¨W»ÀüàÕd6{ƒŠáñS8Ýÿ»ÿwÿïþßý¿û÷ÿîÿÝÿ»ÿwÿïþßý¿ÿëûo_ú–Ãrß@öe̋횖®‰—¾áýب¨®ݺšˆa6JË{åoCFEñ»Iôgæ× ¿ï©¦üÙµ!:'F\{±q¨®M«ZZ¤ª 5wìSœŠl´qù9›ÖS»fý•2 O÷ÄxþèÂÂFh›–í#R›Â ôÇâ/lÀsñ¦U=šÙ´õv‘þüÔöHMè——Ð#ÑÂÆâ6¾–RoÇÖGóþ oÙµ¥¢€¾ ÑSéò§+£¢âe3ðw4,ø!˜ªíÇÞŸlÄGf#„qá]ê“ ¨Ë ²aîO£Ë-E= 5ø•òÅoÄzµ¡µ²Á’ žz·Ñ=%Å ›Ž¥•Þª ›)ß„sÛ¿Ôñ•ˆð—d_vbšN"mþ²8~•W•}à—“«Í}ºá¦:Ú¦;C¶\r¹ÓºG5mHCäÃ/2W`i¸ÂëÆävAš6ã›oõ;AÑ6­–¶i£ªi,EÆ¥Ú6ñyRë>òÒðwf€M»fQ„ÇYE¶…Q€¸ÍŸ7™àãàÒÕÀÎk¬ðJù æ-!x‚Ñe@ŠÓѧ~+¤Üÿ»ÿwÿïþßý¿û÷ÿîÿÝÿ»ÿ÷¿úé:ûÆë]Ò.º#ÝCìl트Øh׎XÄ©¹S/»#‚‚Wvõ/píÜœëŸaåN½hÛ¼rwðJ×uvô ^ùž-xeVÓƒìÃ¥vMû5€ïáÁÜÌ ¾Á+ ¯dw>¼ªO†=ÀÝ!Ð=.¾¾f•½UAÄå´Á—ýœ¯Ú™?‘áj8+I\j {’Äåû­.`i[ß~/jW«qÚÅ*®Ô[®Áw];\?í°óï Ë«UÛ¦¹5—½F\?»œ5]ƒjØAö©cÓ†¶ƒ;¡îÔ[îÁwÑH;׻ׄ<°ð¶ë'×nwXíôÌàáŸÀákîN!i[]‘gÜ黜n´,åã|Ùmsw r· r;ÇÚÓo8›ÉÌ~\Ö 3Ô`PwäW×A¯²$0cüÔYyWQ« V_Éü€˜U3H0å{Fɯ!- øG„Í¿A1¼Œad·Æ‹#“t¢/:KëAI©?UKêÇ¢>JBÜ%]¥]°»B$r5!{ ò'Q±UB&¤5B–AIê¡6VšUsÛCn„•°;kKÚ{D BÚ ^â¶/v‡åGJܳ„;S[ຠ\ãÅRž ›¡±Ãk±KJHùZ³&pEww8äŽÜšaÿ¤ÎŽÍ>¯~ÜHZÙWSZùw”ÏKÜθÃmvWDN£‚óðÕM’ð^f„Œu·}zœ÷©Ûz«C¦«½¨@VM×v:~b‰J*{­&T6'=Óù k‹;,°¹-5ÈÝ*èfX V iù¾7¶¤&Ññ“©ÍCE‚ÄŠt8ÎöèŽÌ”>㮩VáX És=îY…EÜ‘9邇ÃâvÉ›E¼×^Æø Šw¦öô!1ª?n£=Ä0s‡5TÆø„µ@w‡Ù‚ß2ÂðÌTò¡‰²\ 2Gî=XÔ]âþ|LâfÔc†bÚF‚J×n&B¢Ñp,7¼3½ µr†ûÞ¿Ùë噽®¹ùUÜÇ]¹㟅²Èì w¡”¦{é µô¦24E+Â\†®ÜÉvÊz´š›í¤}*îÈ\VRÁÝ!›I!ÌùÜøç•>÷˜>ôüñ¨49•™ÌXÖçA¾ó ŒñhšàöS¸;î2âF×”¬Æe%ëK/{L¬'ˆõÈ’µIa½­°Úëz ÉšQG²N*¬š «,±6ëÄÉ*PXÐäÿÿ«[-ɪ^Ug­QXsˆÕ…Xƒ“¬0…•¦°‰õ±Öt“¬(…ÕAa5%ÖoIVf¤d¹Ve…åK¬%ĪÜY²V)¬_ÑYûBiü#VBGÉ:­°(¬Ï‰A¬m/KVåjʈ °¢‰L¬=ã%«…Âj¡°ž ÖÏJVµ¶’ÕSa•PX׫KÖ,b¥´&ïUXCuÖ&bõ!Öî’µCaMUX.b=G¬›KÖM…ÕSau!–Xý÷HÖcé¬F ë!bíyD²n–¬WÖê:ë·‡%k"±ª®‘¬Ö6…µ„XQÄJ^!YóÖ§ ë#bÕ!Ö®%’õƒÂzSaEëj¨d½2W²î(¬ÇV0±6ë§Y’õÈÃ:ëÒÃ:ëç‡$k$±ºÍ”¬Ö*…5‹X¯«`d½­°†*¬>ĪJ¬×§IÖÖ+ ë9b­.YC§HÖ,…UQaÙˆõ=±Æ|NÞ«°N>¤³öT“¬ÄjT^²þPXóÖDbµ&V‡ª’U¾ºÎJQXQÄ*M¬/ªÐ °^PXuˆuäaÉ:[Q²z+¬…uµªdÍ$Ö¶tɯ°~¬¦³6«7±|Ò$+Ka}©°Fëb ) QTa9ÖkÄ*xH²V ‘¬€PÕ@aU%Ö.bõ(YO(¬¿ªê¬³JÖxbmèKã†ÂÊRXßë]b-}›Æ …•¡°ëqbµnLÞ«°ÞPX­‰u¥šdý§ŒdíQX(¬ÒÄZG¬üF’uQaå?¨³Ž< YéÄJ¸%Y¥ÑY+ÖLb½ZM\+üÁKØ|½Íóbö< ^„½KúR¨O…’†Rÿéó«òù| œ,ÂÞ%ª2¡¶UVž’Ô3¾dèZ ù! áJÅ_ê‘~êÿ©¢ÎF—“¾;ê@I ]Eœqù§m—Wìüb´žñb4•è!}zõ8#Iï‹ú·«ð‹Ñf†+Ñú;þ €µg%à[Ÿ5ß:?mþǧ£“®  *KøBÏpÏ.é ¼ Ðü0.4ù+Ɉ²eT˜ åÂÕæ¬Kó?buAVVeqá:™mú‡ä¿Jç?BÖAäÙx²„t#ˆÿƒâR žÊŽý°CbëöèÂÜ‹¼äFXùPg;‰ò'ÔrDÝ®¤6÷¹JR?õ·x »èvW‘*q /÷µÉr¸;Us‡Õp7+¡ã Ú¡K*©žžBúG—_®wÄ^a•½Ñºd˜óQšÿö:ìqC)óµjd³:áöUû|©’ê´©ÿQÿ0Bl‘Òi뜶šÑi3‰ž€ô ÕVœAúލŸ[ÑÂiìq„}^±§}™à·ÀÝ §}æ’î´µs¨²0^Q8msî´àˆMŒ{µÿR¶¢î±a!ù$r!û!ò· &K®•==ö€0\%ý˜3ÒÝÚÎÆÃzí\¦¶‘d |e½‡1b>yAKÂüQIÇ,©¨{Õ ±¯öCÿ—§þGýCLïÛ$£í]èüj…XYÄý¹—Ê«?‹ô¯¡~~y‹ÎD°º›R¾Îï@ð;Сî?K‹Îo’¯w~©(L¶-ïëj9êd•-o=bí"d?DþVÎÜÿéZÑ¢ÿË«#Ö@ÂÖFs£ËyŽX] 僨våÔænLúS„¾M9«+ˆpk7j“åj^#/¯¼ê§ÊJäXDjåÔk é“*¬°òækaÃ+è®Ú¾œyÀJ \5Üçä²j:’þny¡/[Ø€eòÙ`¢o@zÓ²j#þ"õSQ=ÄÂgw¬/ÂÎ…â³_œû¡ûÅRÂg‡çé>›J˜ÇÐäø{ûl b]*'Xï†XûlEBf!òé“Ïþ,!3ÊyúìÃeUŸÝNX'šË öôÙ„ꈨ Ájs!}}Ôlå³Ýç/÷"}öQƒÔ'äñ²8ÿ V}¶ é×—5úìè³Ïž*Cþ_V÷ÙÉÁfŸ]K¸^¸Ï3eÔ:M!};Ô¯.S Ÿ}›è%ž^FmÄçI>Dè[–±ðÙ Û‚°§Êâ³gKÓõø¡û“@á³ÙguŸÝL˜D4y²ô½}ÖM¬¦Èš_ÚÚg£ ŒÈÿ”6ù싹ìé³”Q}¶a3ƒ…¹¥=}öbDMATnÚÜ{I?õ'‚¬|v6á:˽•‘>ë4øÇ@BÖFää Õgß"}`°ÑgsJ›}¶>a—Ñ}öLÙgý ·¼ ^í©u:WŠæ¿¨·Ãgç=é?–Rq$éŸA}F) Ÿ}Ÿ`eöq©B|¶Á¹ºò>[í´î³¥ ³®´0ùD©{ûì‘’’•ެë%­}v!!ßFäž’&Ÿý„ MJ{úìÊRªÏ¾GØ 4—TÒÓg›ê\@Õ+©6wÒoG}Ý’V>{¹„ÄMC\R)é³ÛK©þ±NDž)¡úì\Òw 2úlRfŸHØÚAºÏ6,iöÙ΄ÓpŸƒJ¨uzŠô¹¥„¾S‰Â|¶=>èŽ8äŠÌ–F.J#_¢‘ÊÂlÄqwÄ!HsY»%Ñý/Â÷.Å;Þg…´¦!¡" ‚^3Æ×ñå÷Jè.Å pð3xxŽ]ã=[Â<|/ä#sÝ>Ê®:Ó®´"íêYÓ®®θ;d§ï ž°9®7ìnä?ÂZ‡…^+«Ç§Á3ƒW^¾ËYÉyÈU¡FÞ¶¯¼ÞÙé7‚‡ïðeueÈJ'B鄎ὃš‘%àiekQ¥*®A5*°j…¸Âá¡\6¿”Ö”á5ìîÈ·p~Ô¯d"äÁû–ęޢ}Ž´g±~TרLz^l¦Š…ëþ1 -&7ªIˆƒˆXg×÷@Ú¨-ÁŽ-ÿMŒÜý~<ŒEäîà­‚šL?ãrw5Ï0ŽÈf‰U2NÚÖö…ÍúùÊúÔÄúÌôU÷ Òû¡þ]_‹ùBC‚𰎾…ÌlÿË=÷oÏ.Õç ¿øHŒMÞa%ýlž¯í(ó…yÄŠDÖ61_Xlš/ &äˆüR õwÞ"´¤y¾0ÂW/Ô'ìq»0æã9_$ÔJDݵ©Íg“úI¨¿m“ó…ÆÊ|!“p ro¾<„0r)ÌÒ&ÝиSÀLb`²Ò¥–htÀu+¯Ï-½µÉàCh0æN+^%ýß¾|ª@ѵÒ6ê´â1Âþè«ù?ÛÄ´¢1Ù¼£IÜ|_±Ïš6u8FzêÿÒ ›V47ºöWDéÛ5µ­‘¾.ê‡i®I0_„¥hf×NûÇGwîD8ë®{G8wpŽÞÜaù£kÆÉð! çÞ] !«?²ò 4ÍêFé BvDäFÔ'à ò„§sÏ×ø,C‚;ø›°— ì±zò¡sA‚AØóšGøj ¢nþ£)sú©‡úë¼Ä÷ßÖ°ÿ¦°ÿ}ÿ©u?j_Kî8œvüç_úŽ“ùŽUåÌÓÔ /€ö‹ÿ{lê YÍW”jî¹é¥Çy“þÅ Þ½.+øí-½‚u½U°5x`?ç]Á¤f¢H|›*XB© ë†·QƒÕÜüäÚôÚB ²¸ê¦(Ÿ¾®ž²Î_“úÏQÿÇ5‹©Ä‚%!,÷Z¡S‰qDhq¦_ÿ!¦ƒöê'–>„©ŠFÝ×´Â_\hF”¼‚Òíš>è¦Ì#B¹‘õ¯™æ—®JÈ—7<ç\WÏ—› ›ˆæNòwx€Wñ ºÿCÈD® $_W”߉îôA„~" Îš™´#Ìëž•q \Ãíû|§*};¸:ÕÎ+õ—rÿŸ¨ë® óÏ]UO¢—þ¤ãG})¦÷òF„ɯ–7 ¹ÇþTýjé[ þó?-üê‚UAب?Í~¥ÜÅxžàà·î܋«jíÖº2a¶]&Ÿùó^u护|†Ÿ?u¯JR¼j-!{!2çŠÉ«>'HÄ5ÏËúzÀý°+'ïý›7Z7±YŒà­9vÃUý¶‚T¹×Èé¥|ÉUý\U–j±éª¨èóWÔ¾¿r™æ¨¾âµïñ–;‚OK#ƒ\‘¹ÒÎ|²óÚ9xYºHÿêÇ]ÑkÙ›´ váeµ–¯þ¯?õ6ì£X¨Cˆ# ½ J~ê_%tsø·?$b"".A‰ñ^ö%!JÔ{Ù3Ñ]/ëÕFÚ†¨õ‡.ÝI‚ú!¬ÄuÛãVvSþvEßå%pw9@¿»\Ž`™W4ã-Z¼ä®Í´CÞZNÛèËÙ.°sóÆn/(ÐqëïÒZò½þaûÈן0±b?±W€Ô!}}Ô zr”÷I_æŠ6ãßÉ×è¦uæïz‹6$ü‰ËÂ^ÿßÕ !ýFÔwþ]3Ü6þý’D|…ˆáŠýlÒ~ Úˆ@¼÷u~ÏïúâY‹ÀpG„¸"ŽK+Ÿ•&¸å—Ôðø€ôUPŸ¬Ô¡=ioÿ!´c.©Î]ôGÿÐû¥£b¡$!V£…ö .JýdÔ?uÉ; Ñû/z„Ç,½† (QÃc(! â™Kz5cH[µqÕÎlMú+¿ }ôEËðx€;øâE¥ôð¸š/a3áák àKæðˆÈeÓ> ³Ôð˜CÖºü®wÃÉ‹jx %L¬Ø*pìx†”zœ]µpËÇó*,¿B¬¿.é–Ó –'ÌáK8"ä«@ú¨o”¯Þohü»¤^§<=ðÚæë}µŠð´WpAí«ÏIúŸ//•!¢”bÿ Òú]2^ç|À£ûßÄùñ¢°ØÁP'_Ò/A}‰ ³‘ãç%ì„Ý>_è,wÞ¼ó‘sgÄ|dÒf}>2’0Ï Ñ9çµ{¾…ñ± ò+ñ¼õD÷qBFdÄyÓ”ÄN¥ùžS’†Ô‰nNžÄŽ@s7x „B¸Þ xÚý^ÿôcz+Ì!J—|M¿kzÞàÿ„i€fWåñ㦚4}7×I½IXß|ýä%–¸Ò½®\0Oë~%Jö å°R æjÓ_ânÿ&qß\Õ¨"ÎÕÜG¢j¢J2TÓìÚ¯-¼ÁL·³ðÍ |üàû<›§{³‹Ï¡©e¿©pé+£~$”õ壺DÏ9³ŽßTÇ/IúÕ¨ùÍÂñOŸ“°q³ýV¨ã/%ÂûàÌî‚_…ãOݨ;þÂ4G£ß±’{=NìF,dõ='±é‰K}BÏÃs›@êKdMž§ã?=¡¯ ?qV‚G£½»¼–û²ñGàü•˜$'®©%¾!Öëyºé çTçN˜§ÐòÚ³‰€Í’Á\ã¦7ï“ÿÜ7O³|¾ý¥;MÂüM÷²pìr]-éÁÃ]AmñF€õ Œ¶Ö70ÌwX¼ßÀ˜rFV¥R•p´[2ÒšîÑ´áR}eò‡æ9|Ä>§GËÛD/ñ›h¨gD‡ ¢}Š€¹ç°+iqÜÙ€EÝa¥5%ØÀË Møë¼^ÍÏê»Î=-AcÐbÉ3j f’>õ' DYóTh %z¤/8­j4éƒQßó´E 6#XÞY¼ÿqºÐ@-A„Ug!P{zm­¨gOIÌx4ê{úÞú=±ÞEÖ¾SÖšNȧ9ë”)P»$ä¬g Ž9mÔg|úŒ°×å”e &©Ê‡(Ž^xF7J Ôc„q¡å²§ô@M2êwëŒu Bé:ˆðuÏèÑÑëjÒ¿¨WreU¦ŸÖ«Rý”ÔÓU-µñi=Z–ýýÓ¢¡²s-ÕEÀç¸)×k ¾Cà’§ :þW}×ÏüÒè\5P+“~êŸÉ-F æœ¤ùÒ}rÕ@]Mú¨ßxÒ"PǬ¾?Yh ¾O„2§ PúÊ*=P›æÂ¯Âè['ï¨þÄZެ'­õø šÿ"òö S ®!HÏ_=õìIC Ž&p3´÷í Ë@WõubÙÕM·:©êS„ÉÍÅñÿ„¨ñæ@õ%ø’\ë@…þÒõà/?4WŽM'0Pãÿë@m’¾«hÚŽªrã¤^•¾'D ¶xÈ"PÁÓhü'úª“¢¡ÿÅ2PsÓù•~Qµ“ê2GŸ4ê…_ô]!Ps´¸ú¸¨ ¤¯†úÑÇ‹¨ ˆþË Aó¸¨Á¤ß€úŠÇ-5MB˜ÿñBu' P›úõ2=PǦ%]rìÞú.±J!ë£cÖú4!ýE _;f Ô‚lüÅ3P›7êé£4ÿG{¶c–Ú^ Ô…ÄzûÝôÇÔ@uæ9´¼é¨¨íÍúÁ±Tè/=Pë>縕Ža ¶ÿ¯µ3Q¤@þ³¬J¥*ûŽŠ@ý¥¦E Î=¦GËûD/s\4ÔÇ?[ês<{Lûü¬j|3jI¯>fÔ–Gõ]ŸÍ¡ùZ þY Ôm¤OAýéœbê¢7Fúâ5P{¾êãs,µÁ.Åû\9…j"¬? :ë Ô¿¾×õ‰™ŒFsî¨Ë‰ÕYŽXê'„l‚ÈoŽ˜µ'A*õ Ôñ9†@mF༟qþÄ2PÛ©j'ÖÒŸuÓ—¨šûÿh¹Ò=PÛ™u Á£~¶Tè/=P‡¾ÁÏztô9‚Úî_œúÞ8,«2;G¯J#"P± Ôˆåþ'Ñ9¢¡¶ Ô1lŽÀ­‡½N}£ œcÔÉ?é»nN ð[>=¬j5ÒïF}³ÃÅÔ_Iºé‡Õ@Ý@úÞ¨Ï:d¨“Ž°å‡ TÊ@-™-µÓwz ¶$Ì? £Q‡î¨¥ˆµYuYê¯%òSD4êF‚Äÿä¨u[ ½ïZj¸¨o«ÄOºé¶‡Ô@}Ž0gãøPÔps |åaë@…þÒ5ç]ÿÖ£cëA Ôð1P;PUîÒ«òÑA¨K_´Ôއôh)Côõ‡DCÕ;`¨g¤ó«ð¨« Üã!Pÿ8 ïz¼FÚ£:þ£¤ÏF}í=Žg·„ÍGØ{ uüÝDèÎìž¾]8þНuÇŸK˜®htëî{OÍ’ˆõ0²Æì¶žšµ!äµ½»Û45{Œ ?îõtüW÷¦f7vÑüíUØm55[Gø³{t_ä-À&hCù.þ½Û“ówÊÚ¼¡ÔæÈ.1Gû Øb޶·6½ÊÑ\£vZÎÑZðÝØo§×Û“¼e·aŽöÊ.}×ì ©hñjÄþ@úÁ¨¿´£°9ZsÏ·ÀÜ‘\‘9îˆ*®ˆCÒl2[ Í~ %´ºéýQÿ”ß·zš@¿î (Qß·*KˆMˆØ¶C?ö«Û¥v&jÿÚ®'I?õWX‰ë¨ÇûVß°÷ó’:9†Åîik´KÓ»¿£óÓwÀÉ)ã#\ìÞZÿ™¨7vâÈ'ö`\NÿÁ~Ø©ìAy£ëØÃŽŒ(»x…kÑTõE«SÛ$}ìN=´«¥-óÛãðšòü‹ðïc­~ÚfqÜn‚5Ýi}Üó ]³Ò²ìâõ¯*†Zµ'úíz­F0ÊysO¥"9JøCß³CTª¥U¥nl¥ño‡u¥ÊÉJÑù(¢å¿X‰Ë×-¾ÍcŠÒ2“ Ú¡ë·ZTâC‚U÷R‰ŒmJËääýó¥Ú2O=w»Þ2ñÛx¥b`:üŽÇù`fÕz–pØ•ß+¸šEþ¿]T²²U%÷làvëJæm5µÔDi‹–È‚JIýÒ?Žú©Y{îL0ÍËž¶*Ís(ïäµyÊ}ó6½y:lUkòÇÿ¶áø5­˜L¿$±‹PýjGD?9¥ñ÷òø»óÏféïåÁÁ!îˆ |¬ÂÇÁjÊ8˜D†ÆÝOÙ¢ŽƒHÿÏV¡ï–¥wàS¤ÍE­s‹:x—#}æV½+.o¦ù/ZxÊ`!›ô£¾Š°Icß"B¼ƒˆå›=FjžC”¨#uOBTDDÕ-z5_"íÍ,¡}u³:R×!ýÔ·Ýl9Rk\„À›¥ãUÖïçL ™%Ïßäx×Á~–¦Å`=Yõ¾‰d£u–Þø?¯u`ZVPz³_eZ×@{hA mòfuzÕŒ0y[ÄQ$e‚S‹Ñóè窽2„]¿E¹ âÕ°§eòÁK¼w›“7Ý@=¸‰Î µ´¡*ßæ]¬ÊÙMPv!ÙÞ`rÁë+&×fòÚÐý?•@›é`³ |kQR¼D=C¨Ó›=g»ó6éÞSŠk6 {]6©Þ“¿Qê¿@ý“›Œïêî"D?DD)ööMÐêcÂÜMú˜PÍ=8®ÿ‰PÍÍÞ¨Fý[¤D}wewÍI{!Sh?Þ¨Æl5ÒïÎÔäEÅÂí ñ Zhn°p”ô£PÿèFcÔ¯&DDlÜàõã ÔAP¢Fý‡„¨Žˆšõjv!­ µonPûíiÒÿºIè_Û`õ% ¸õ7XœnN¯—°q›¬O7øü,ÅîPüuñÞDó‡Y‰«¡»_¬„Œ"ȳ›<õözý ß#d›»^=èIq£ÐYotÖj„؈¥ŠýÖIíwÑYù2§ó­·vÖ}DøÍÝ„’*î‘C4ÿBÐpÝütBw@ô¿Öb°âÅD\±N˜m´†{qÛAàÂC>¾ZB?Aè¥IZmê€ÓHß~ÞF™Š…A„¨‹À¦náÒ—DýìÕFnFˆ¼µ¶ÚÃ…+( AP¢ºðÕU4ÿGļÕz5“6 µÇV©]¹‚ô1¨?¸ÊÒ…G°¯²paÁʯµvá¡«­\øIâ[#Ì¿±JŒ¾ƒhü'Èê5žþ;h•òþóJ‰ƒÆj:“ô ¨÷Yeôßi„hˆÆŠý!¤­¿Æà¿­òôßzVKM_$ W û½Vªs‡‡I¿õµ”ýk¤]„ÚV+UßË]AÇ¿Zo!ÅÂFBÄ£Í`aéÛ£þÜ £÷"D]D [áá½oÈAP¢zï3„8½J ίЫY™´ÛPûÐ µ#o.—ú9¨¯¸ÂÒ{÷pÿ\.½WYj:`‘«”û—Š÷f­P¯2>  õF«óã÷ÉL™UzûOYÁ/$èy_)ªäXNóãöÿ„ÊZééô#—ëm•¿Œæ¿hïéåj[í!ýÔ—^ntúù„x-ûnÒ6]©©kÙF,WÖ²¡³rG†(þÞ‘ÈwWÓý—©þ^ŸôÇQÿ¬²ëÒnDmçeª·^^Jç¿zã”S,ì'Ä ´b°°ˆôï þÆR£¿&D3D|¶ÔÃß{¨"‚ Dõ÷B\].-Õ«ù8i£öÉ¥j~êk.µô÷K$p4}–JWÖŽ®"ø­UüýàRÍp…Ì®tÃ\ª¯;ÉÄ£Ëõ¶‡öd¾žñQˆ 'Œ8¿/Ó99‡¾6·*v-‡±„⃾Æêúb‰šµÌ3>z.ÑÛv! ½òKÔ¶]@ú7Qi±1>\„xÕû½IûÀ2C|ôXâu­çsÄ9»TXŒ^¬Ö©2é·¡þ!(1? »ü=ù?ÂÊ,.ôQØ&"ôY Âæ,Ðø£°oGê¾$ÌKhtÍ÷÷~æ Vyd¥ñÏGaÏòü¼.HýQX‚l_âÙ¹á‹5õQXþ"ÿÐ^ aÏü–Ò õ9Ø bÅ,ÑMÏü^½;2Ž0-ÐòŽE½¥4Èü–Rw‚‡,±~ý¥?~Šð¹‹5zìô0TÞRô_?3}ÓW!OÀæ-¤óŸR•Ãp´[2ÒjÞ,(ðxv÷{=z½ÒbÑP#Š.0=kAÀKß `êB¯o)•#p&´‰þì¥Eú®/}'A_¢ÅÊ Õ~é?B}>”xf Ô1DoŽôÕß©š@új¨w~g¨m v}žó¿+ä+bª|û"Ó sE˜ú×ÃôÚ‰ùM–ûΦVßa¸‘XñÈ:¾@Sõ[b&²"—.0…釩¾È3L§~ý‘Ë¿f˜Ÿ¾á¥)ôÏÖÑÏ€Tš÷–ïà3tÿƒŒî^¨‰¯ºDwü‡iòõßû–Ž¡ò͵ãN×hÉÿöšò¶Èb$-G”ËKø×b’‹~E¨—µV¢Ü Õ—P5ꇼxî˜] áƒv>þVuÌÆ¤?õÎm ¤¨_¯y}>ÿ^]Ô¿}õA† $g>÷ͧ ¾¹€`o"l×|ðÍÂ7ÝÙuø#bgÚ-åTâ$Ú£àwî¾s„F Õ}´a ï MÓïò5FeRžŸ/€æw‰®~#‘3YV õw‰² òñO½;_õŽÙ„íŒæ¶ðÏ/ÇHÈÚˆœLHDôåX¯ôïo´€*_Žõa~þÖ³’oÌ·ˆ¢jl9_ܽsÃÃÁÁg2*4i´+¿Ôf%SýZ6Ý?Èïå¦[R®d¼lsu8äÊò}77#¼‰Íµ£Î×í{a¿ þà&%S˧ïrÞ~Û5x/cö Ë÷kÕ4'ù”kû©‡Üö2@lwEìuGìÜœëã~7»µ[ük¾ L1®¯ÍS#éÂ\ <_o¸`Ž_©Qü. …ÿè¸Xíc0÷%Á^RÌžg¸ˆëK óÅQÏ€ómbŽZÓ¼¯Ñ.}#hqsÕÓIuÒïC}͹§“[s$l.Â*Í-ät²‹àý¾PÝ?S„êòÁz¨Î!L4™ÅJÚ¢M1çkLèGèš`qüüuaÙZGæÂ×:Ty^Ýš8WæáœwŽˆìÕî° bOÒü—°ÛûŒ‚AgêÿÙÔÿ$°þk[ •<Ï3Ì.Ïá—;ivaa=XH³£´´,èæÎÑÇIöŽN›­ºQWÒû >y¶F/Ë¥åÙõ¹GFZÞLY7›_2ì:ß|fšÎñzñç,¹î{0™­:ÓÒA}Î, gZ@°7¶kV!Î4ˆàuÁçÜYÓ…3õüHw¦n„ñG“}gÝû5ÒG‰•=G°ÂfYý·¾&ÿGd¥Y¦¡ÿ0AÒæxv·m¶:ÖÌ'ìhn/á_œü¢D¥ª¢ú}­»ƒƒ´å­~-Aú«³…~Û,áTW!¥ïz~ˆp{÷<”¨¿|{{¦„|ƒ`‚î%ý(Ôßš)f0g”ÌrBuŸm¼Ji2KYÿJ¨æhkõLÕËH_ õ£gjE%´Ñ™…ׂ3U&ýÔWœiáÂy3$lÂügâÂkÞÜÒýÞ—Â…g÷×]x"aZ£Ée3îíÂQÄ*¬Á3tV¿"üBžþZ »Ì0¹p9‚d~íéÂ/ÎTÝæÜt‰€ænM'¦›&™„J@ÔòéjsÏ }GÔ/å%æ¯ÐïO¸Zro34üÝ©÷ þÑ‘wqˆ‹‡úâ®ú¤?>S3|±ýw3Ì_lïCØÅ35zu{5”~wêè4òܧ}ºZ§µ¤ï…úœi^|6íbm×»×\©·\ƒï²Ã;Bç?2Qs¦òý•LnkØÕ«„û{² õ«Å3ìÐŽpÝêºì~÷š;õ–{ðÝÂ߯\A¾ˆêŠ8䎬áŠÌvGÔfs3¹ÏcSå>]3Dü tËuéãPŸ5Mø©¤}µ'§ªG4˜ôOÌÐqºbámB”@ S ž'=|15¡E `b"ªC‰ñ–뵯èúAP¢Þr=@ˆ!ˆ1U¯ærÒvGíÚ¯ÔX˜@úV¨_ÊJ,n¹ö&àüô+9V^J 'ØŸÓ¬_JzªæñRÒÞõþ©F6MÓ¿ÙTM)©¡;2îÕþ­òv~)y}žÏTõ5›0§‰Ã8ÊJ\¾iYvv=*_2:”×ÌP£bUS,ó•jùeÂÜš*,Ñ-gKËÙy¹Éªå ÄÚ2U·ÜÑ`ùò‰™†–k‘åÁ{¡5ÀòÞ¼Ëk‰ÕK±|íKÕò$„£å½SÀ²øžCz[5‘`!lüÙ÷ÊÃÑv»ñ•õÃÑX¨·úfE¢d}%,¿Æ+@×ÿ_Hý,ÔW}~—¼«Dý@¨Á_Y¬"›¢‡ÃBvA{—¾PÃ!ôO£~ÇÆ»ä1„(‹ˆ¿¾ÐíGö*ªþ–UØϧH_BêGüe_ ë ¾PGµ³“¥~ü—zý¥viSQ[â uLšGúÈ/õöÙ¥XH'ÄÓhlê¤/ú…“£ZkB\™"/MöÕ&Ð^A‰:ªÝý\"¾EÄâÉz5Ov4jÏ|®vãFÒÇ£þøç–£ÚD¶FàšÏ¥g+—õ «6Åú²þ“ÉšñÁ©;ò8ŒlÓn©1Y‹ìúBï€÷'kêE·@ß!êôT^<¢{.Ç&Ñùï OŸïð¹ÞXK…öþš¤6Ö8Ò·@ýÁIFŸO$ÄCˆðSì¿FÚ‚Éšúd¨ýçEòù²Äß4¯&©>e¢ÔOŸ¬×_j’v(j+NR=vé£'ëísX±0Ž-ÐØÔ-|Húê¨_3Ñèó¯âïÏ"r¢‡Ï×%P‚ Dõù@B¬DÄú‰z5/LÚɨ½?“€¯"pÛ ŸH°ÚŸ[ûü¤‰Ö>ÿíuÃûÿd'w’Þñ >_š@ë&‰:=7|>\¢~/Q'yúü›ôÆÚ@ÈÞhÏÏÐXSIÿ êOŽ7úüG„¨ƒˆ²ŠýwI[j’Áç»Mðz#£qŽLÄk¡ñjJ~êƒÇ[\žúLÂÆ"L_èÓÐ%DˆšÈ¿tŒ¸üêý:0ƒ0ϣџÝûièÄòCVêgâ:Ðü4ôIB› ¯¤þ˜¥$AVOðìÜgÇkêÓÐ_ÆI°íÝá%OC;©OCç+r‚nzügê”(0Ðòšq= íd~Ú•à>¬Ÿ†BéOCkþÀxA†À±ÃÓÐNÿâw6|1VV¥­R•p´[2ÒJÞ–OCÙßhÕÄÇY–?íã b×:pPÁÊsÒÏ>SÞ$ÿ&šð½±¢sLÏI+p;Œõúœô§4þAkéÏI§ïzRÐ⟪cùÒwA}”õÛz½ÒÇ~ª†pÒ_'ôí?µáêÛ‡°>-äFÎå14ÿ<Ñ%øX=€÷f š¼0æÞ<‰XáÈZ>F`õ9iJ¼Þ»4ýzL ÑAúÔѪËw!½ õo޶pùz;:FÀ^]ˆËÿí–ðcøo.Ÿ£»üÏ„‰&oºïñë1s‰Ò)[ÝhþÐA„¬‹È)©ß¸|“ c<ý=}´ ]­¼ÿFŒÃxµëV»*€ô+P_ÓmõK/ü~Ý-Wê]wj û½zéÇœôs—[?‘&’3x¥BÄ5„0‚Ù·ò} A¬jùe˜Î”w=ŸMÚÚÔs¿{˪ޜsíptu87ÿix­•Ûe‡±“RÓ[Á#²´Î-IJ/P5òGk–? ßW Â,ˆŸ-±NPWVF[£y+£Y•"Τ ^žÿ>í~=pÈmø5ø6ʯÁo‡_ƒžé rÎæ,Éà ޱÕ×ÿºÈÿG{vÓ Øßöóñ6·òZF«“×T"?6ZÃç³4èd»ô½´'àm·áì4ÝÅǽç%ð1þèÖ /~ÌüD7÷÷(ò·Üïi²?4nÄ™¡íµpÖ!ðÚ¢¼Ï0ìý‚xðVøkÓÈ|{·èÓ£Ô þ˜ôõP?|”EP¿A0?„¥ŽòœŠÚõ°®E„CŸð/g.ºìûzXûfñ'Âh(m¾ÁÝ6^÷Ño‚)Ái¾:R ¢‡ÜNý7Cì„í%X¸»0Ý)‘à ù"¿VA®ˆ½¦_þl”ßH’ÛùºKŸ š~ù³ÿ(˜NfßhÃÍøs3¹î¾Êˆjdf‘ÁL®úì¹Ñ(îW¹¾¬·3ù/š_c<®ð„ëŠkK~@ðÊ–£|Zµlz4ùÚvŸA­\}ß=ãîmÖ°£Ûë~9ȱÓÝ)ˆÅ@ÁˆxÌñåHÝ'ãFÈjUv‰¦9›F9­µ&Ô•Q-QÊií!Bí¥ãÊÞî¤KÄ|´Ss„:V#½ õ¥k…ý¬¨é÷¯‰þ2Ò·§«0ˆôuQ?,Ý"" æ‹°”ôBNkµ~h$øÿžÿ ÿ¿«ø?aDÿO¿Çií‡á’2)—†[ŸÖæ² "³†›NkÃÒp¤çx¹(]ÐBgdÁЬ~×Bâ^!p±¬ÄõþT·! b6X¤›vÒ/Eý£XAú•œ_Ó$äÓšáGlÌT~+‰[C¸žhêHš±2Ÿ"ûÒÔÊô#}MÔÏLS}ð Òû¡>5 Î×®½ü,Ýÿ$â^lÏviª÷ý3Lê¿C½=ÍÂûŽ,aׇz+`.º‚O¹k£ÿ{K÷¿a„iˆFg »‡ÿ½J”¿‡ JŸaÖþW“Ùz˜Éÿ|²x¸§ÿÕ‡ˆ ×(¥ñí]å%îwìî.8[hmœ-LØüØû¸ªŠîŸEEÅ[^BÓòšÕñV€Eï$æåÈå $7á P(ZÒce=VjÖ#¦•=ZVZZZšZÞ³²DÅ;„xÉ»©¼kÍ^{öìsŸ§ß¿Ïÿy_ŸÙg1ë;kÏe­™5³göé¾iöŽÌy§Zæ A½IÐBŒiT8Ò³À;ù¡*2F }™2SVŠÁ¿/­HÏ|§ÍR&#è~ÿ½ò5ò‰?ÉW„脟ÊSù¯ß}¦ä!V;y])ÒŽ¡´?æÉJW øÿyN”.FÀ|–—W­Òu Ž¢"nÊQ”®e”ôû—óå,Eh缚§¯¿ä ý§TWrµé«¬w«r!ȵ›¾¾( ¦YŽz÷Yžnýi‚×#yÏ*òìןäõ§‡D*Ô[Ut£ÑI!øUÏ)ü7”1ŽÄaB<‚1úç#uh0F~>Rö¬Šx‹r¤óß‚›EܽÏÊÝÛû‚EüíãäùÈL `1Áç#ÞÚó‘§Ìó9ÅòøEz>2 «I<ÉÿÖS¼M¥d¤<Éô’¾š¡5Áà¹[8ûŒŠysùE˜{¾ ³TýQÂÒ²Y:ÉŸ‰Tq’ä ÏêÞ*0A$yû3$9FIU¦Ø•(€M ø6ÄT˜Áàæì° Xˆ€]ÈQ`Ï=#߯­àï%þH~?1þ þjâwA¾òÈ?AE•d«¨s{ë¡ÏHóœDònfËzñŠàÿ@¶þQPš@´&D-IþHÁeÈÕE<ãêñ§þeKª :BÐçÏ*·y8[¶óò,•ÿOâ_Ì–Îÿ n6qëgËVúà}V«¨]’„xŒ$ Lé÷ï¿)ñ×déí| @\yFADd9Øy[ÚK Œ‘íœ ÄG„X›¥eóøt•;Ÿ¸eÓåöüFðÓˆ_:Ý©¿!€ ¸qºjç4;O0ÿg;÷°³ó—²˜Ãަ›Ce;ì&d Þª•Ÿ€éô¯YúV—ìÚ45Y±”¬{–lN? ÌÌl¥u¦«_N§_+MÔI^,R ‘$ÿ2]–œ-0‘äOS%Ï8Y&?L og)ÈÂi²¤Á?L|Ë4Ùä½#ñ{M&/\òL¡ÿYŽ&?nš¦"_ d2É«=MV‘·?‚øÇ2õ&?C :¢‘$ß"¸õ³t&ÿÔ4—O;‹4¿NW$FfÊyª'øë‰ï›éÄû>iSa¯Ì-³Zïû‘ z:zߣ§*Þ÷’pÍûþ‡Àô#¡«l5{ßcEªÚ”jºÍ¹÷ ‡§Q¿`³ó¾½ä‹iŽkÊÔyßG3TpÉ»áÔûŽ“½ï•"Õ˜išè×l²¦Î˜‡Iò—š÷gï}?)àÆiνol/Íû~Pàdj.oCyßqãÓß·ÒÕ¬ ’²²#Cñ¾—æä,ìw6ÍÆ‹äu3•Šz&Ý©÷ý°³)ÀÄt—Þw-^kÓyßý2´[›ª‚þAë¥ËãÔfÁO%þÑ©ÕzßzC%’Rò§Ê†#ø>ÄO˜êÄPûXy†;µZC­+¬ËàÓädÅP¯„i†z:MÅ, ¡Æ©5êj‘j"¥ÚæÜPŸÈž„\–fg¨±â›áh¨ÿ˜ª3ÔGødº"otšSC$*©>J×DŸM“ µ$Uø$¹ašf¨“ì u•€Kwn¨Ø^š¡ÎøÎéšu$¦‘¡Nú õ5+K§jYñOS õÉëN 5bª4ÿÉ£§*µ/Å©¡¾(€&nJqi¨¸ÞT¡.HÕnm Ô[üŽI‘ µ™àGüGSþCý5YMþ%wO‘ u½àO&þ×ÉN õ "Øêäj 5Z$ðNCCíø´b¨áfÍPû LEª"t\r͆Z[¤ú”RµOvn¨‡“Td!!ÿL²3Ô/$!ÕÑPO'ë µH€û¼’œêxÙPLjT©šèþɲ¡>,0ÇR¨ÿOÒ u¼½¡üã熊í¥ê)*~VŠf›’ÈPÇÿëYƒDV®%kY™žÄ\¯g™’5k©+’¯KV*ªÃ§†zìi1þ°é—†ºV€c’u†Z1E»õ?¨I\ÿ´l¨©‚ߊøEOWg¨ô´™ÏyKùœ·„où=Èß²~€¿e}oadË‚HqœÇKÜõ–÷c*ŒØ;g‡-í l­¢üWâÑ{æÛÔ”ûÕ”yØê‘{•­Aâiù}RA— ìè$ÜI„òìàO£öå/ˆGa;çì/zu Þ¡ßtß_ÖNë1BœeÚò´v³^‚{fŠÂ}6Q®Õæ‚¿mŠf=}$ ×Äü$ôÒIøEðçÿþDýŒüSˆ%Ä— 3òùô80Fž‘§DKB´MÔ²9\pï<­pŸL;â@Á?Bü¡SpÓaF^[?%`gƒ/—f䥓UØKOK3réò·Pþ6ìaÜ ÒûÚž'À‹„ŒÁOk•ÿ3¦詼gø1]‚)"As)A1Oड़ª¥KÐ[$(KÔØxŸ"‹ŸŠk(p›°ñ4MÄ¡~…™{ñè3±÷hÇrÆ«)ŸOTªë±;–³FÀ,‰ÎåìšÌôÇržIºä/âå ûDÁ÷"þÜxeÂŽC„ÿêt‚ãô~¼¦A rCiP¼¬Aç¬*ñãõöñ !b$ù îø&ËYïrÂþŒHÓ$.³ÊyzJð=‰?ÉêĽxXÀŽMV`#¬Õºn"ÁêÉè^\ŒV܋ʾš{q$NÅÌ#¡·âjv/VˆTORªï✻Ï dB.гs/Æ HÉNÞÜgչݸ$^‘çÔ½ˆ’Ý‹ë±jªåñšè“q²{q@`f‘äºqš{eï^ ø¨xçî¶—æ^d üñÚ˜GîEÔßø£µ¿Ç¨YYhÕ²Ò,Nq/¾«åĽp·j&ðH>ÖªTÔŽ§îÅ, $ທ?Z)Àx/ɽ˜«Ý:P€Poñû©yóü¯ˆß-¦:÷"\1Té vG«rH‚®®·‘Å^:ŽÏÚæÜÃqŠVsÇãÕ§&2ñº¥ºÌ) qÌ~‡àB,‡ù€Öi´èc5•®Š–%æß±ÚÞIÀúá¾IĨ›Š^µMTQ¢Y¼¿8P‚~às…kó?’ âIBÿcµò©ù˜¡ËG¶À>TM>²óqs’’·üëF[³éõ`Lòž3nW1&ÿz-ï†"Îs nÙŽÇäÁó¶E½7ê­«{»ó{ç½Ë+™RÓÜ]Ÿýþä…[TÏ0­ôï ©¨·ø=y6é6óIt¯ªx¼à:dÉ=ħì%ÝÙâ$‘ô¾µ™Å/šmf•ùdþ6?|`>Ðk¸×ôÏÕ”=DÊRÞ2"–Q»A=[íºÄž¼Äù޵=“›Kò·„;y²¬úà3Ĩ´x¢z·!ÑJMlÃñ¬i†àw&þ‹´þ-¸õ‰ûÎD¹,O~å$M»¢% ­â‡Iä9ë$Üž ÚŸøf%E­‚ëe—ÿä^8îOüs¢&s‡H3Òì™ààë. ‘ÂÙ×%„xTºIœà6$îÓd¯ Tðÿ°1Nž>µÀ|b‚ê¼I¯0½<^…½kÑ”^vÞ|°â¾U|Ýþäëæô”uwµ1Ñ¢5ÇþžEâÝAsîQ‹ÎýšCn’À5 ¬¿1Üû‹þ¯@•Mtt>¯Õ©@~5Q‘5^®Ó ãTþâ÷¯÷þv D!â$ù«wâD&?®ù`¼Kï/G¤éD—“ó4^ðë?fœïï;1AW­÷g >ž€ÞßcQŠ÷w¾‡æý•>%æ?$ôÎS5{ï‹TQ”jûSν¿<ìFÈ%OÙy¤ÞÇÆ-§|øÈxšÿ=åÔû-{7Ǫ©VŒ×DŸ~Jöþ~˜Ù$Ùë)Íûmïý½'à‘ã{Ø^š÷7]àÛ×\®Ø§Èûý—½¿4˜ÚÝ•÷w6JÍʛ㴬Ü÷”âý%mt² Üjœf«Dòq㔊ú!Ê©÷7[{ð‹(Éû 3ÂTxcØcœÎû{i¬vë„z‹ßã£ä®¾¡ào"~`TuÞŸ¡þ8FM>“’ß#ê'‚Müõcœê<ëM°÷ÇT³‘{‚€×CÓ+t©˜iX€f¦½æÌXEä˜15l¤­%’¬¥$íÆ(@û´%OªÈ yóIÅFÅFÚõ2y¬£žƒ†‚U\X8 F}„÷âlj" û£÷Ø%¬¿3¨"ã…H¿±L¼›¨ÒUˆ÷…Ì…( ó1—Ý·ÙuEºuRº<ìÓ‘*f„y’˪FöG"Ýx)];ìÆ$ax­N ­FöH‘ŽIé¶?)Ëî&0XW*f —Vì«£ÕtˤtI:Ùû&OÂðV˜^ì7Eº0)Nö4i'ax+L^ìÇEº³OjéÖFʲï˜í†·ÂÄÑÕÈ>>JM7_J¥“ý•À$IÞ £ª‘ý¼H×SJwk´,;F`|$ o…‰ã«‘ÝI¤;©¥[ª“]K`ÖJÞ 'U#{÷HáÿHéBu²ß˜( Ã[ab\5²ÓE:)]Ù(YöPÁºR1¼&&T#»‰H·EJ7O'û*f©„á­01©Ù_ˆt Rº@ì×&TÂðV˜˜Vì‰"—”îÀHYvoÁºR1¼&Úª‘í&Ò­–Òeéd®bæIÞ ³ª‘½\¤-¥k©“=K`% o…‰9ÕÈ,Ò]©¥Û4B–ý À0¼–ä ñÃÔ¤oHI£uâ· L¦„y 0x’{Þ\9rº¡&zE$ ©Œ¤†ÉþIºàûþ0—G.ÂõÎÉ£"íÉJÚIÃd礉ào!~ËaNœ“óCUØb‚Õæ8‹p×Ü“¯D‚¤螸‡+îÉÊ5÷äM #¡ë†Jç,ùÂ$½gûioFø¹<—Ï]¡¢_'t-¶¹‰wÉl°ÔáŽ~OåPô{ÄÊá!™ËyŒþ’)Õ’P1r;ü[èy ¾QÒø¼6_yPàn9ÏN Î$êþÂLâî÷“¼®æaø0m&±7g³÷{Ï~žákêµ×§‰­)×9ÓT9•ëU0£´â)Ñþ|q¨.›Ó‚¿o¨Ýñ(Êʘ¾&WQ›^GÏg3n°XeäoSÞ©W ¾ª‚ŒøÔ·)⌠ŽÁwÙ¯xßípš%–.Ї¨w5Ôù¹t&¯´ÝÎto|n®¼üe†ÍÏå^@jµZ-ç­6Ày«Õ²oµZÕÌÿ‹ù_„¦Ì÷…+­f3æ3¹éJú¥HQ}Ikó’v°+iŸ!XRÈ%^kÙzfÖ+ÊPå|ÊäU0_VžÜP8Д_z§ÎÞ‚&þEïÙo *˹é*rs(¼úÜxñÜDÙåfÕ`‡Ü4(ÊŸ®hØ”Á”!/ÝM× Ro_ÃM½ùM_¶»©Éñ¦žEùÿTE¿îvƒÄí® ©þv øíöÚÝnÇ g5~k¼iUU¿£_Q~μð-ùù(”__éæ«.Eù«ªļhNq¡Ø¯]YSÈW…¿ø {KcäÖi AäïžêMïx©iø"ÃòÁLûUŠüõ]‰©Üï‡Ávjð`˜èÿW_EõyÕ‹ÐWÑò0Åü ó{éï1¿äjÆ[ ÖÌï­02¿z`~F~× ýÌšAš£ÑQÈøe¢·1F¬¹×üÏQ“øÚ¾ü0i&Vž¹äjPÝ m æÀ5Ñ,žH _ÈÿE‡ÇOÜb¹@¦,ì wÎÏ ~Oâ/Ãé]1âñÂŽò«§ÒoYö¢ÊÃQV%Æ\Z8]  Ô·aZ½N ¬MLo9ç*Úù¡Š„|Dë0g‡÷œVî@NBhèþTÀn{W5*ð´Yø?RVPÇÍBé×9س•¬ qýw7qcÌr+0Áÿh v§¶’„#¡Âÿ' þ: _ ~ñk)2Åã‡E1˜ïbŒþaÉtjO Œ‘–D „;!꘵l>&¸§(Ü~¡²ÛÔTð·ÿŒ‰,uxZRÙ_E¾EH_ž¶³¹_ZØSÅm¸ŒšwQH¯Î ÓÀÚC5¬ñ!Æ‚Ÿó¿óDõjùœÓ…n·bðç:ƒTÈ8©3ÀÑËÜÕ_«…îyÔ¬Ëî/ׂ¯àMüQýõ7·ÿŸs$ùû7—¸?·jXK(XCºÇüaðÃaøù¤šòŸ"¥Õ#òdA¤—ôxĪÝ$I@ïsÅ;º˜ AŸPhöâoñö)ˆÓ‰Bà²n³c.ñþ  Ã\ó¡Â1ÍB Æ4+Ø|Aìü ŒõúÆû4fhFˆšsΈ½A(ö ÿža|°šýº¡Z³¿BBã¢üªhìÈYlåéacשYœÜ_Ëâ™`-‹[_Òe±.Ïbø_΢ÝSj²ØDdqKˆ–ÅP)‹ uY¼ud:þ&Ý4Ê^kž½„ Ïüëï~âJb‹RrW1óTòæ3gGEf¨©”¡9Ëþlg|C»ÐôYOˆõ)O«ƒð§^2³•ßœÆ*zQ«¢ûxr”Úý3;=;°âA1þ‹¬Ýø1~cÛýEù#ŸWݺfºJ¹ƒµ8=éoT­‰‹õ/)«óžÐÚíå\]·ñ,¦ýYü²Ÿ˜ÿiY,\Ëâ¼gtYd<‹¶¿1‹ÍD¿{BËâ)‹½$ZÉâ€mØôï5°ez|ÑjãNWv§*7Þ;eÓ%ïÓp³ŽæuxGå?úKÿø(1µyL·|oøžÖ 0ÿþÁJ×Û rRdTóÛñçAï÷ãè‚éþ…ÃÚŽi ]qËÂÍ Œ/çÍ8Ä@‘‡ùŽñÁ¯»×TUUÔUvÁ2?¾;£Pé™wp?­/ÖêWÅO»ûZý¦Z«ikµz¡/Öjᄽ³÷gz–? YÁc¬î0^Sˆ„=®TËË}µnaŠà6'îª>²Ë5DðoôÓn›,Iè(¿ô£y«NBÁÿœø#úè¶3½UÄk„¨ìíà´}#@iÂÙi[*C 1ºÔÿ n qçö–Ý•Á÷!~^o>ÕppÚLyº¯‚1'ìÝü§[þ·n轕@‚^gá"É'}ù ®—2¥¾[Û>|½ }·ôÝ~Ìÿ–|·r\¸âŠY_QÌ2Ó¿A+kwß_–ì‹ÛaòÍ{Òç7{©· ë«5ØÈ@{aäÞB7ÐÐþø„oŒà¶€”‡|åM5ãDò:Rò×ääÞs’«´õÖN"ÁÁ>TëSÐ ¬C…ÔOû8ú”Ù½´F:lR‘…$¬}/¹‘6 þâW™ô>å[1ˆÝ%ù3·3qsQ¾6q/uû0Ú+$¦éŸ›ø›U ¶Î…ÓÅÜ¿“Hq+)Sqù|²ÜfB÷Q¿um¼ºËsmA¤Øwrê1UÈ«½•|y+bÍëÔËš×Ê?ù‰HM)¾4iå|Mpû÷—Çd›Ìüzk-ñOIÂ(0„×tüc½þ³JL-Ô’Á0™ý‰4utø5„¯ó˜ƒyTÌÿ„1²oˆ§ ‘ö˜v“%‚NÜeÊêóœàw!þ"Œ‰\ç`ã£ÒY*³uxAL̺Üo&íH”ÛŒ5g^W˜¹J[¹ºÐ¼®`¸0ØòGTXÿøÝèQœ”©ü‚?Ý$-J½j|”‰½»•ÛæŸ"…™$næ1CmõŠò½ZÎ2ñgì [.Þ>ºß>êE[HËßÄ^è´Ý-Ðû3CïZ™óúÖ­›ù@Qˆâ0à ^l@I3C‡8³VÑ@ùäÒâžj&†<¦”|[O¥9|°75o‡Þk2ÁÚùµ²zf)òCüNóŠò£tþG»ó(ÓýL”ÿ#XŒ *ð!üIæ)ÀÛ=¸i›y;ÆÐowVÌ)ŒÜŽ-6ÍÇ1”¶ Ó (¿Ã£¤Õ=µ|lX?¸u{ÊͽBðŸ|T3æï% Ï DO’€25 ñ‚ïGüÖŒyd ø0 ù¯— ´…¿Sºo»²ãØâX«¥P0¬ÌòÉà ™›Qd6{ØÁà+{ˆõaŒlð?D6!r–ö î8â~ÒC6ø"ÁïCüz87øXô%ä =„Á×Ó ¾À•÷Ô6®Úü臃WM½0rCÁpOª¿ƒqSÁp1xTvåï©ÜµiÙöw þ³=5Û/ŒüP½S`¹—x8‰Û®Ä˜pÛ޶¿ø6¾J÷@¡Oaˆg_´ûÉî·Ý8ÁiŽÜp5„¿ÕÕÞêâ¥Ù}'qσËKS+”eÞ jN£xÅ—ÎÙŸY‡Ô¥Â‡×iÓ©YTeÎ~X)ûDà Í;M,UÖä×âš<¶»öƒz¯ ýIÀ×4žÎ©²¥ŠçŸÖ’`ŸÊê3TðoõPøóõîFøß`Œy'®è4¾UU5§*“O Ö–]z°Š÷nAèB}ÏÇôMàŒM•P²h!+\•¾;@•žÃko“Z™ÁPb±ü=‹ÔÃü°ÖÌ”›lpq“D‘º)O-Z¬$P¾Iˆ€]讃ý;PÚÿ.@?t§Õñ¹BowSùÿ‰}…ˆBL ÐäoÜ)Äý¸øšèñÕm¦|^$ëIÉVw“³/ø~ÄOÂûý OXe ›Ð­Ú]Ï D‚ ¸_¡AWÆ÷+ÜðÐüçß»ª˜…$Ô³[Í?U¹V¤Š¡TûyŒãŽÊÒDÈ RÛQ9Y@:úç¯vãËÊ*¸·—(ò¢yúýl3ÁÚóý„Ê.¢ÿ#Ô±.rÃìüg‰”ÇØÿ¤e±ÀRþ¶pŒçÕï<¡çèu5¨®ÍXp³bTÞÍ:™QS˜&rkéh%ïÚUî\ƒæ|7 ólW>7—–µ¸ Ó²è#µ~`mì0±¯è%=4t“ûªòÎÂÿë¦ä½¶®vþtäK/•ØÕþG6 ìnLìÕE™Ê´ì!ü{€îùvg¹¬‘‚ïNü Œ¹Û†m"’oéª$ê,éj'•¿Œø·:9±·=6ƒ`•ªÝ´D$ïŠö¶ª£bonš½=#0HèÂN5l_(’\éB½Z'çÆÖJ  dŸNvÆv³£ YÑÅÑØÄfÐŽìàgI^Á«—Ž÷-°ÑÛ¢Â<%ÓͰ®{¹££MŽ¨Ú„Šè(7^/Á?ÓYáé¨Ú¤¼)ÈWà¾&ܢ²7û`a³ÂˆÒÂ4ñvò³C•ÉÿAêßSçt|ÚA•ÛYšlŒêÉŽˆRõ·áO@ úVÔÞÖ?PñœJð|ÚyÉ#AkB}¥ƒ6ä Üë.Ç‹gÏÿ`'fÿ“ÅX'¯Ë϶¯?¤¦XÞ‰Éç‘>èÀÑ^÷‹öÐgéæ×’ít•à#þ©oêÖ[hŽÞBm"a[J¸ä!¹‘G ¾ñŸzȉ…v°CIªvD¼õ šàýŽh¡þ*zæÎa¡æyzõA瀌6q¨å]‘j8¥Úô b¤« ³¼*Æû¸„[¨à´S@cÄ££¦]ª÷-΂?$÷âˆ4û:(bƒ±0Õ 5õû¯¶ýýTÇÐP7#Ã}*F‰ùŸ@O#ôéöªh›AŒaïذNžÜâ’û73oÀ$vZpamïíýv߬¸“ù¨÷ç»ÄoÞäéý9NŠá¿n⿽àÇn.õ(ŒØYd s7ï-šÍøÒ&ît7ýí!%o1íÑÈ·—où ²vÕý* |ÞŸ6gï·µ, y»oóéu‹BJÁºç†ö6VÁŒ"³4ÿN‡ÌƒEÃŒb^½§èÿRMK¸)÷,ž.Ûƒÿ~çýyÄÎøȽyo|Á7p¼Cÿè½½ ôucÈÌ› ÆäÌÊ¢b! ÀéÆÒÕÂÒùÍWܰ·æ¶ÛaP`yê3|¸0õ!åqà \›‡$ºåGCìôÇqæ‰w~·èwï2õB5õBL±Óêæ£ï]>Ä 8íø™½†MÜCà2=q1Â|ëb›¹¿*ÆBæþ:¿YD‰÷g³{aYæº!Õ©ƒ÷ç³{õ[1¾ Ä-ÿüàüMFÔˆ ÔˆPejl•ù`¾ù@h¾¹$j£—ù`æÛÝwT4)ŒÜâý¹qpáëžBqppŸˆ½™§ÄúßjÛk¯_©ÓN¶‹z·¾=oC¯¢Wk?À”íO´3òelçO¦vÇ™bÚ×VM™Û^^÷êú ¶î5%åó”|ùdăJº? JT¥å iÝÛKçs´sÈʰᥨ˜X±Âü ÿ_ȨlGþ[Ål·c·ígþn!`϶ªÅö¨ mTÔ’vš¡v’n¸[ rHÎõ6r÷ÿ‘à'þÎ6ª›j¿%ÇÙ €/äÆ÷}XøjPu "Nvß“ð6(Ƽ:ÿzï<æ–[dþ¢À¼¬¢©÷gÆÇ‹†¿]Všw³¹÷€Í…‘Ëæ› 蓹:çdá—I0pÂL׬f¬±ÈØ·Èm×Á_k»·±(ù<å&ܼòV¨ÙŸ`¤*ê{UTÖ®÷ÖF¬ÆÆ+Šü¢@YyP«sHþàÜ¿`›Ë9iîÚíÆ‰ÛÕy@©Ò9JŒy­xþ# §Û’wÛFpŸàn'îx¹ÍnÞ/ü¿¶Z«·”$ˆçIÂ}: ë?žøL¹§XÌz] B ±côkoSè~aŒ¼ö6L n·QîþÒþÁ=JÜÇî—]_Áÿšø±¶³gÁvÝÚÛ™Ö*ò5BÖãi;›×êÛ¿¸ä6òbûZyí k«pÆÚümblœ#R>ÜFUOeJ9oq¿\ÁcÚ£ÖD/+¹/Rî°¿’ï±S ~ÅÉ[ð7úk#rÑ«9’d¶¶Wø_[©©^ð¯Fá#WóŸ>‹XEQó8¡µÜ÷þCHêGùû¥•ÜB©‚ߊøkZéWc"âÏûĉVZN÷0q»·Æ~À{öŸ˜Ã¦.ìmöa䊟C,o)æ¿÷cí¸µbºÍ±ƒZó-*л/¥\ŽjÅ”ý·W€WU›oÍ©?eø†7ð~G?h+Jÿ®hq?½2/ÿy\c#?Ü6Ë“f0ôå?Îl~#®(îõ;U³pì­hZñá¶™Œ`Ûf‰{e©g8ùp]›GÙÇ­ñ9`޳ç€j®O´Psýrk¥”õ±¦B³g!÷sÌ›WfÃ'kh­°R¤C)×´Ô¸…‚Û‹¸»ZȺ>Eð›·Öj©H’0H ®µR$ê$tü_ˆ?µ…¾;ª-Ÿ¢~ ‡îèø}*h>0FîŽ6 D !l-´l¾+¸Ã‰»â>YÙg ~ ñ—BŒ“·µÀÚœÁcòg434ßîTÇëøtÿ›çºü¬¦i/ÒüØRñrä×¶™±¾¶¡—€¯mËß=ÏœýÊÌ}ÊÞ»xGšŒj®J*h©µGãòë>kKZ˜‚ÚEÒâ—ꉖò³?µë‰¿OnÆ÷‘n¼1Á@šá/˜ ô„`¶›•]¸ g»H½¿…–z"O-®W5SA«Z(ùîˆÉ"÷âšþöÂ4›XÿÀÙ-'^aÍå|¿/°Q$ô€c>0çª÷Kê¡ñ'°gjÿçåz2ïÙ ƒm"mäŸ „ÕkQýFþZ¼'²…¾¯:Ü \p÷Äe•:†ÌFE¯NBe7{–ýÑ ªª|a]©-Ìʪ`¤'úãÿÆb™wâ›m@Ò{Í©kŠÜ‰Ì³XQæ Òùÿ¦jN£Q÷%e£¯Vµ]zÎ%+% Â=l¶º|ˆ+÷…k÷Måu ZþÚˆÔ{š*©[èòg°‰6»ê§B—ô‚Ÿ”?uW\ù*¦‰ÿF¤I£4üdñn¶^*ôŸj&è˲x‡=vƒÔ„EB/J%jëŸt¦‰Ö)MF=à&î‡:ÉO> 쮎ÀÞ„¼h?}»‰µ©#Tè<‚l¤«Oi¯Ã¶ø œæU!^Yô‚@>BÈ™Š#@>M\îßxÕñ_ç<„ÿÃrDž$×d›y ~ÁÀ–#'ÙÐY2¢b¼ö?*Óœªçó·É w.ȧB,¾ßPÌÿ;ºsW)•Í7Ypiè0En Gc5tè>[ йûüÓWE¬$Ä¿Jûß·¸'|åîs£àO!þ!_}÷Y˜y€o2Ú®vtÂÿI)釾Œ¿Ý FÞ,Ñÿ T]?ÇÚÞí«eµ‡@–6¢‘Â×®{ó©ã«ëÞöKÝÛqáÿ¸ÄÇE÷ö¹€Z ºÆG2WÝ[žHÖ’=#%«©{ ©/4TR÷ÕåOêÞš èV‚úÊùsÚ½ðþ?¥9ìí¢{[' ñýØ[ïº{Ë »RÂl‘P{ÿ«y6ÔZ~®Ú½µ–ꤛÀ–ø*;xëÛlš uÐ5õö–ݸ Dù‰¸]×'\ƒÏÖJØ5v¸W…Д"ìCÈ7Èct²à· þä5&@W}´žQ~½Våôñxà~™-õ"qÂúê|òü®µç7ë«ÒVø(·l×@ñW´ß?9¹¿Ü |.øVâߨ¯Ÿ·¿&ý ÑYš1NÜöÄÍn…uËåýñX®y“ØT‘=ÙÚÛ¿}FïÞí3:´ÏèÈDŒü_ÿa¡æY퓲:òè¨Q–'Í#G 6”)I™úon=»³iÖôŒÄÔÆbRSm¶ôè4ÿ´èôèd«ÍšÎÚ±Þ½!•jÌÓÖX›?aýÛwMóKµfø§¤Úü“£m± åyÌœ•më eˆŠïÝ{xtz†5½wo­þÛ?Ým³²j1#­IÖè kµ˜éVk5üQ¶ôÄ”ÉÕò­ÑÉ®ùp±%F'¹„¦¦¸¸ÿ(«m” ’›“¬ÉÖ[XtJ\Ô©+¬9%ÎéÛ?š(Z(4Ú­Â]`‡§§ÆZ32 ¥@ûfÆÚ  kHÓ?5YŸ¸Pk|tfR͸Ȕ4Œ‹3§ØmÙ¡ÖØ¤šË84ÕYÕ¡]Õ]ÔEJt’"¤5¾†ò S3jn—»Ï35 ìl³…'fÜ645Ö–f­:äu……hùÞ.P!hÎx‰çÂöR3±ñú§¦Ø¬Y6R¬éÐ 5ºçrHÁúg¦§C½:ÇŒ´Æ¦NNI|ÆGÆî"OcszzjzÿÔ8—ý`è^á‰)Ö¡™É1®ëPÃöOMÊLNQÑÕcC²mÖA)qÖ,W¸QiÖØÄøDk(HzbL¦ÍÚ?5ÓUÙyªéãÂS£ÁèbS㪩ìAk KOœœ¦Öpuý]ÿ8©SªVWõHg¸È” °”$UK3\É#Ãs]±£¦$¦E‚%'¹Ð³T‹Ú‡X8‹ñ+ñ Ž€þÆVF꣨tﺗº0âEÛü“@YüÛÇuñåšÀÉhh `¼M#c°$¦Xb)µ"¾‹Æ4A&òÌ£-d¤EÇB“ÄiÿðŠH²¤´Å—cR¨û”ã2SÒÒ3âä˜Ød}ª4,t|ht÷IÑ%ÏÀlÙñcú(¬¬ fM‰µk‰”ØÄ”øT†ÿDÅ·H÷ÇÎÌß)0íXŸÄ3Ÿ¨´.þYÉI–µúºøÛ¢c’¬xï ­c¢34€³êÊÇ{R»ŠV"å˜h›-.6 cbŒ4ˆ4ÒÊ1<|¢f’¬Ó†kSŠ-Ê’ÄFCYÙˆÌh°öÑÑ“Yÿ„Ĥ8è3¤ÚUo•aMЇoŒŠåߢ¨lh**5hª©z›=ƒFI‰µú''r·À_Å µN· O·Æ'fY3jJ£Ã 5µŒÆj®1­\ûÄ»M˱ªlÆ.tGu¢zûs›†Ÿì’À‡óOá4ªdì°…8kz|Rêt6ÙjC•T¿ýÁõMHóNJòN„vcldtŠj&WÈdkrjz¶|*æ. âb2ãã¡§?2Ž_œ àñVì>Dc¦[3`dÓ¬?jôËš”˜Ì°_ÛI|ÆÕøªö×j…÷NyÈæºç7p§2“`¬°XµjÊ™˜r¹±B‘iÒ|Ai>HùS Œºì ]MÇõ÷Пf&ÅaR¨­Ô¤iVÞÑa/éÁ-cO°N¬3“>y0iÚ D³Ö­_‚ïMðÿÑ`…W¬¢ªÚûàêÇ¯Íøµ%¿úók;~íÀ¯]ø5_{ò«‰_ûòk¿†òk¿†óëp~ͯQü:ž_'ñk¿&ðk¿¦ñ«_³ø5‡_óøu6¿Îå×yü:Ÿ_ðëB~]įKùu¿®à×ùu5¿®å×uüº_7ñë~Ýί;ùu/¿à׃üZ¯¥üz’_Ëøõ,¿^à×Ëüz_oñ+ Æ«‘_=ùÕ‹_}øÕ_›ñkK~õç×vüÚ_»ðk ¿öäW¿öå× ~ å×0~ ç×áü:š_£øu<¿Nâ×8~Mà×$~MãW¿fñk¿æñël~˯óøu>¿.à×…üºˆ_—òë2~]Á¯òëj~]˯ëøu¿nâ×-üº_wòë^~=À¯ùµ„_Kùõ$¿–ñëY¸&•ʆ+þ¸c心Þ'<ï T)R)HýŒÔx¤v"õRß Õ©uH1¤>Bêhm –!µ©7‘Z„Ô|¤rz©x¤r‰T:R‘J@ªR‘º^ ¨ÑH•"5©ÝH!õ1R"µ©.HÍDª-RSj†T$R ꃔ©öHݼ”RºäÔi¤~Aª©/ÚÔHmGêÓz@}…ÔH­Eê,Rï#õ'RK‘jêÔëH=ˆÔ<¤AjR‹—…” ©¤†"‡ÔCH=…TøŒåÃùÝ€Ô¤ú"õR=z©H… Õ©6Hù!u«Pu‘ú)†Ô:¤®Þêu¤Î"•ŽÔq¤F#u©G‘ÚTC¤¶ uÛü ¤!µ©õH-Gê]¤!µÝ ¨WZ‹Ô\¤#õRó²!•†ÔÓHMDjRƒ‘z’ç©p¤Z#‚®n—›ºlªRÇj‡Ôn¤îã¹BÊ©EHÕB*©[·€šŒÔH Cª ©G:‚.˜–@ʈÔ÷H•£¥lBjRŸ!õR"…gmËßE Ïþ—/ä÷@ê%¤ÂšTw¤žAª9RiH壆Å#•ŒÔx¤F!5©^H…!Õ©Ç‘ªTO¤.ê„Ô¯Hù#õ-RMz)/¤æ!å†TR×ÿ* ©sH!u©ŽHý†T Öó^¤.#õRÜÚ€TR#Õ©H=‰Ô¤‘Z€TR/"õRyH­@jR‘JBj?R1H•!…Ôm¤†"價  »+\íoIc³üíFtO 7ž0ˆÿñÀ§¤ôaVÓçVo›ö¸%Aˆa(„P½!BxBK !xB¸ÓÏÀ.CøB)„Ÿ!ì„ð „u>‚° ›æCxB„t &B ¡ äÙB'=!<! ÂHã!ÄCHƒð „Ù^‚°»¼ ¸A¸ù9á$„ß ì…ð„ >†°Â ¼!Bë¾æ¡.áj; á8„ƒvCØá «!,‡°Â+æBx‚ ÂÓ&AxB8„&Ý ´ƒpµ †òAxBm!4ƒÐ‚ÂMÈǧ!”@Øa;„¯ ¬…ð>„¥^‡0Â,YR t€ÐB_ ‡ð„8Œïl`åX„Ju0öÕEÐ+øÎ©Q;î}î}î}î}î}î}î}î}î}î}î}î}î}þW?¾m|&å6ô÷‚1oº[š! õèñ Ëðp‹òøÆ2==:˜ê9¿aÅbá„,± S,“3£ÓãØü ¸ì¤8ˆÎŒ±ÄàsÙt6•͹S}PŠ5=É2Жn™bͶ¤ÙÒ5ÕOe ŠÍLO‹ŽS㛉xkzúäijtK>E¹rt–Êöw–Ên'Ø)Ñj\—š¦Æuq±©iVEN¢¸K Ææ| ªòzÚñ¤Ì™ìXâ~}5Î4KJª$Gヷx•*s²­j|˜ˆ·%§eXâ“RSEáÃõ<­8Ã#3%Ñ›`-*|´Ê„¨Ø$k4Œ’"“¬)5^ŠJKMèIrTfFÆÅ©qø”ÏÂ+Cl‚.VyˆñIºø´i—¦‹Ëàq6—ž=c²t1P§êà娼øÔôdŒÈ3ˆ˜t«Õ‚ՃѳEôd«Í’Àï4W§Ü}ž7 M"#AÉé|Ÿu—šœœšÂ5Ÿjl`kº:9=u:òj¼É– +Ïö"—bü$F-•£ÂxÔ29j$Z¡‚ÊHL‰EƇ2cÇ®ÖG%ò‚¬ÕG*¥[gÉ µA«TÐ&92jFm‘£,êfJ`l Ð" 7?ŒÞ©Eƒ&iñ{E|Ft¼5#;µ"•—î€= íÉ"M‰=+Ý*x¥ošÕ’˜Â[夫kÁ2-~š¥GLjjÆžÕÅ&N žÌ•킎}­-𧏬‹O“R\×q2%Î-™“dÍà±ynRll´MiÆÙ±ñzk™ëHÑî4ÏŽ™!åb¾Ìƒ¡ qš5 ,•›Ü™©6ÌBûÈ\ïåXЭn–ʰE[—ÙÅ*å\áËÕíC»ètìcy‚Õv¹hkoZl2ïëÖi1|¯Wb|6·7ß KTD¸ÅnGZ…Ê’7£¡iˆxÝîLÝö_4¦î(D+‘ã”íh#R¬´›NÙ‡†âœ¯l C{qäëvî¡Ý8B¤€h<@ÛMˆö#1á¾þšê•Ij·' <ÝÙÖPkcëÜt[Äz2£Öé^tS¡«n®zÕõµyO¶D~Ƙ»6,u×õýÅîR?ÿ¾»;»ÁÜÙû£àr$ ./%Â¥<r…E߿އFJAêšLˆ{‹¸ƒ‹û»»‘Ýšc`FvàEo¬;FgÆù³‡ke.ñèÏŽ{Toµ”MÁ•µBÙ×J1—yÚmêßÓÉ)ƒ žÌÚg±G [T˱³üÚÜápÄ÷Îû©½Fvü-,ë¡wð:{%^W­†r»éûùk9^¯ed?Žiª¾ÂëŠï0e[[˾F¶C®í:î3µtÈ_«mwöaµ§‘íÛ…íþ£¶.á[µìûñößþŠ×Ýÿpƒëµ×ñ:^¿û^_]ןW¹Dý0u¬¶þΟÁKv úí}ZU×W<v›ÿ ^ùœ9‚×ò“œ.ÇkÉ9¼þ6Ç®ùExýp^ ‹ñZ°¯oÂëž}x­zÅ×óoàõåwŒì™†ŒÅѺÈý#ÐñÌÀ^-òÃý2¬\ºx3Ö¹cíˆ~èÙ„G \û˜è¡Æ´GFi‘Vñf o–ðø0Ix¤U|©„/•ðM&<Ò*ªx•FüüûË#<Ò*þS7 ¯Òˆ7CϺŒðH«øÛ ¯ÒˆæÂ#­â×Jò×Jòñ퉕„Gº&<¾™±™Ÿ‚Gº&üÄ.Œ <Ò5á0–Nx¤U|އ†WiÄ¿Ôê“ðH«øC’üC’üÄÇ{‡ðH«ø0w ¯Òˆ_Ó›±­„GZÅGKøh ßðqÆÊÔü?®á7jx•Fü­Æþ$<Ò*>JÊ””ÿÑ ¬-+x¤Uü-ITñÃ2Jx¤U|s)ÿÍ¥ü'flá‘VñÙ>[€|iCÊÿ )ÿ‡†36‹ðH«ø•’ü•’üÙ£ÁtMø®QŒ <Ò5áÇXÓ& éšð¹Æ‚tMø±ŒM'<Ò5á÷Å3¶œðH×TŸß'2¶ŸðHׄÿ6 ˆ¦ iÿ±”Ÿ¥üd¦1Ö‰ðH«xÉ=${|\á‘Vñ~’þûIúÿR6cá„GZů’ò¿JÊŸ°Â#­â¿“ðßIxC.c1„GZÅo’ð›$ü晌¥i_)á+%üG0Í <Ò*Þ_ªO©>w¿ÀØÂ#]“>L/„üiÿ†”Ÿ7¤üø¼ÄØiÂ#­â?“ä&ÉÿîeÆð….íˆVñ}$ù}äú\ÀXwÂ#­âë0 ¯ÒˆÇ=o½_÷.ðÓŸð$ü·R~¾•òóóëà/iïj|yñ ÆiŸ-å'[Êû›`„GZÅ_”ôù¢¤Ï——€ýiYÊÏe)?eéšð%ËÛKx¤EýHíû­Ô¾o¯û'<Ò*þ’$ÿ’$ÿ•kÓ\Á#­âW4¼J#¾÷*Æi/Õg¼TŸK3’ðK%ü6Iþ6Iþä3f!<Ò*ÞM*¯›<~ó7‡ðH«øç¤ò>'•÷ÌZ𯴊ϔð™~üçP¿„Gº&ûõø’±³„GZÅ—ðÇ%ü™¯»¢æç+©½$ü% ÿÛ7 —÷)x¤kÊOþwŒéšð]¾‡þ–ðHׄÿiÔ?á‘VñŸIöò™d/…û¡?$<Ò5Éïù3Ø á‘Vñ%|g oùÆQÂ#­â;IøN¾ æ „Gº¦üô(…~­…‚GZÅ/öÔð*ø=eP„GZÅŸ—ðç%<îNx¾w¸†þs`Æ~›„w5þºvEx¤Uüu5¼J#þ> 2 t~ ǹ˜µŽ–V¥¹ïTÇÀÞ¡´H«ø4©nÓ¤º=ïe`ßiÿ®„W¿ìc`•„GÚ·¥cÞ*ÑH´{}n"Ñ%Ú$Ñ%:Z¢§Kô<‰~W¢WKô×½_¢Iô‰f 4º‘Dwè‡%:T¡ù%щ] ѯKt±D%Ñ¿Hô%‰®ï­Ñ÷KtO‰-щN“è9ýšD¯–èý«D_•èú>ÝN¢ƒ%z¼DgHô+½Z¢¿—è ‰öô•î%ÑOHtœDÏ‘èb‰Þ"ѧ%úšD7hÈi~„ÓŸÓÊq·¥ø>=\¢£$z’D'Jr? û&„· à‘àÅ–?c)„w ¼ á_–A(†°Â{en½Ço@øÐ ø$Aø7|ˆµÂÇ>°§>ƒð¹AyÉ<Hþú/ l„ðüQÛM6CøÇFøZÔ­è_”y÷v;p,ƒðô{ðiÕnÛ!ìűÂ~?B8á'—!üá „_q¬ÅñÇh‡!€~S)rBjÎåñéwFèŸÕ‚Pú®¡.|•c}ôÝÐׂà£ü ÂðOUÏí^{ÿ¿½½ý™Å’œ`‰ÉÄg¨–k4n»ÆfM³¦Û,¶TKfJ"çnž‹=ÀÄwpZFÑÖØ¬ K&K—%:- ßS¥¼nÇ’‘™ÁÿÅ •1ѱS2 }¾\ ¾”'è–éé<ƒÛØ?•gåµOü\+mb– ±†ñ}±Ö[Ì,iÎÝ3Kr6ß#ß´WS.K Ê–î©<5V%ÆÊÏÏ™%ÝKû0,“­)Pþ¶+fÉRö·ˆ,S£Õ} s2½{Ï’Ì_%*­ø×njÁPgºÍ;Ð~góÇÝôþ Ö¤4ÜŸb᯹Âýbp?Þ$Ê›,ªåMEçaì6!ºB9 /®k¿_ª¬“—ßV‹v¾õËug›Ý\£«Ýäæ:™ã«FkÀÞu]ºÞ•ç:ݾ;W@±QÐÀa§ÅÕQû£lN¥9Gs8ˆæòšËÃgúcgúg.š9?dæôx™³ƒeGÊœ&sþåüà—täËþ¬—î—ît—ñ.W繜äÒà’nÉg¶äÃZާ´äãYúsYúYv'±ôG°ä³Wއ®ìO[9³rv¾Êñ`•³UNRÙ¡r8Uùëkww»D¬Ncþóç8™é0]OÊŒ³dXc3Ó­evÕ-á/?f¹‹ÅtÝò¿.7I‰1Sà‰› ° …þÁ°tðÞ0cwñøé.8ÝûÜûÜûÜûÜûüOîTÞÜ _ !à.qOµ3á{ã[È aËhsÔh»„†@ùÒ0˜ŽY,ê¯i)ÇôÞ&f0zñoí§ Xž’œÒ¤%Æfd'Ǥ&áDw†F¡ž¾u2<‰ô·Xb3Ä:ˇ¡-¤­ÿŠò­Éi ® dh…q”pá1 åÛ9ÿ`=îµXBƒG˱Xw>Ú·R(£–r/\€ÑàÎÓC›)ßrþ¥4)I¥•g5Ž2!«FF¼6¤o2b22tÿ;ÈðcL(¢,Ã`G›,–ðAC‡˜C©ú`b|+ÿî‡?ËQÛ.] Íö<ç×­Q·Ãž?„ðzæ±ï¢û4c®†ÿIKk‰?ÇPÂp>E ¬+|/dT¯N?†ñ¨‹hÿc~À4ðg@”ŸiÆï9í掻à6b•a³&w 骗ãò÷>÷>÷>÷>÷>÷>÷>÷>÷>÷>ÿŸúäxº-y›y̘ë¶<ÇÓ}ùŒ¼Ø¬~ó˜aæ<ÿM3 Ü—çx¹Óÿm7 Í3ú |‚‚ï7xSüÌHt_Ž|S3æ}k4šJabò¹/oÄBg<äÿQN-ŸfÄ7ô›ÁÂFç±¼¹àµçÎe,xó ȃÇ–é_v'²míçf qóƒô†‚N̘Ã|G»Õz<'(¬Wð,Öni=æ–×ßèi:à ¿Ñ̳oŽ›[· ÖeHUÕ‚¹uY»œA ±-U¬ÀŸušÇüM“ªªðËóõ̪ 99-²æ˜ç‚6U«M“ ß‹È 3¸]Ì‹e,Ìà›˜;ûDVnqÄÕ¾mjÆç¹3Ï8æÏæÃw¤ûexbh2±žT™9KÈÊ-ƒ:ÛÐ9+¦Gy!¬CÀ,(û6h6æ(3Û2Ÿ€BÆú¬dž•WyÚÜÜ”#|fgHSyå b^£C|z焸ùåÃŒK¸Œ.˜gÈo°’_Ÿõ}ßfÓWÌ3wyEVî '²L³}? 3x®9á^F– ø›ÂÖ Æn*ço½„ü½¹ÏŸ€òocù÷Õ±ª©ŒyX>H»‘Ò>‚õ—4É,¦øVxÿœÄYåa&·ª[ùPóëpÜ ç}pSó¿é­âÇšZ‚Þ=ÀØèæPƒ¶wËscžinF¬«„„ð«ß1¯?c3zùtˇúƒr†Æ—093”ü„ØmŠËþEÓR¸ÿ&ÖÓçþ«"+ç Ÿn 7rži‘5&îÝÚÍ/‡žÃš¤‚+mÑG‘µ†duäå9cúAY‡º_a<¤Ì¥oO¼ÅÜ–·býyvÇ´Á_±Õ„1&;'KMw§’⬹[xšVoA™³[dÁ=ýÕöéó®ohŸDßÀܯÀÞ>‡¼3ÖL´ÝDh»w}Ãz—û†“Ì7H¦¯’ÏÚ;¸AýÎf¦ÜÈÊuÿmnxî{ oû¥¬çÊ¿ÌÊ}úPÚÊxêäŒè³Ñw…"Ëk+Êàu³œÛólSñ?h“UtO*¿×bÂ1­6×߸9 î6é¿W¦¼¦â/çná~"\„¼Ë¦âî­"\{½¼†~¦â3¡€«O¸9 ®Þm½¼†=MÅþÐw¹"ÜÂýd‡‹2·n¸„#û¯·Êz3üà^#\}ÂͱÃ-3 \²‚»uŠpìp{MŃ÷ÎL8êÿê=b‡»e*8p­÷áêëqMÅýB;_!\²‚«{J_ ¼³/náÌ„Ûh'/ÏT4ûµ"Ükv¸µ¦â¾¥ª~…±?Éþë&ÛáJMŽâI¸]„3ëq~>¦âGA¯ ] Gö_·•¾~}MÅë@O „£þ¿Î;\‚©øßPì0á" ·Ë·ÀTüÞNÀ}J¸®„+¶Ãm2/Žý/á<7ÃWf*^zpVwó0á"õ¸Æ Ï¯o\?Â}J¸®v8(ïhÖ˜pÔÿ×ñ°ÃAû¾Òú¤JÂQÿçyX_Ïm¦â´Õ€ÛJ¸~„ûÔNÞBSñ?`Ü©ZL¸Æ„+²Ãm0ö\¦‚»AýŸ§Õz0w.à"·•pýôùkâi*öÆüµ'ÜbÂ5¶Ãu17lýÔmÂe*¸Ú•v8¨¿…€û‰p„Ûj‡ƒþ¯)ŒAw¨ÿ»Aý_m»þ¯É‡¦â¬³€£þï:õµ3íp%¦âiy€£þï:õµ#ôõÒìü÷ù€£þï:õµÛëå5õ7Û’GýßuêÿjÙõMCMÅ)㡟¢þï:õµìú¿¦`O—Žú¿ëÔÿÕ²ëÿš‚}ŒZ8êÿ®SÿWË®ÿk z8êÿ®QÿWË®ÿkzÒT\/pÔÿ]£þ¯–]ÿ× ô +ŒÑ·©ÿ»Fý_­úúúkÖÁT|²ôSÔÿ]£þÏã´a4øÝ ç àóŽ&>µ¿ÇVm¬¿Ö‹âÖ`ùòÿE>$»Ö†âßYÑÇÈ^n>ŒÁìõW©ý=2QK{•Êï1dfçd—w£xêÿ<ÌoÐ|™«dÿ]AÎJ˜3äaÞsš»ùÍo~/øÌ_€ÿ,Ï0Ý×ÑUg%ŸziÎ"eÞòÈþ‡AÞR¾¨üÆ­@ovð«¿!¿š]%ý7.†ôÍÇlòéÍýQÖÐ/wiÙðÜà¿.f¨×vŠÜ+Ôÿ“5ËëÖªKdÇWHÿ {‡©5ùã-Ð?Hþ¸ýñ.„§þߨ ðop¼O·™‰Œå2ð—B Gý¿û­.¯$RÜ1H;|G7á¿þ8»ÕQkû+Ôÿ¹ ôEÄÍucÒܘ?äE½ÍÜ_º«V—WÈÿsÏúS,:ßÊý¦ îÃZ*¸Ë¿nèsWôQÁ¿æ2 Ü-a×n4ƒ4+¤¹LöïÞd¾“Ÿ¯Þë2é¿{}ô+ùÜ’Ý6䵯9 ¹+áHÿÝNqÿ“]_œ{èéÞåÄÛ²çhõu™ôßm –to×½šî} zæ {ösV¡{—ÊI^4Èk¥Õ×¥}?îiv­{—V® à׬{—hþc¸¨é^ݼ!UV,ñ÷¼¡{­Q÷.8ѽK ÿà[qÝ{\ѽ¼)\÷‚GíoÈÖêòÿ VàÓéÞÔ½«ðÿüw¡_Z¬ôKy`^®Ìí¡ª°¿‚z7Â|ÁD2Éÿ7øòy»¹CÓ­?HÿÙâ‘òÙ?û¿ô†”?²ö)˜¯M`ÝNÿ:¤êÖü ÔÞvëÕ÷5iþϦ‚LÉ>.£ø±pßH×í}q=áºnUÍí}±€ð­½=ç©:·žøŠý³*°ÿ?&ÔÜ×\ìExÐÿ?ººîk.úN›ÿ³ ·)úÿ‹ûškµ¾æÂ>‚þ_œã¼¯¹°Š0`ÿ6kuyá5Нi¹îk.(öÏîÀøw}3ö5Êxuó')σ³dõÓú˜ Ý)~¥ÖÇ\_ìØÇ\¨C¸™Js¹—ÖÇœ¯$èÿÅ6Ú=ÏÿDñÐÿ_Øq×}ŒK;¯ø?0ÿyëµz:Oå¿ å?̵Î7n#¤ïU³ÎoLø"MçjµRu–ü˜sWˆŸ ØòšuîÜVÂ÷üz×:wn1ákuy®€â`N~†£Î]¤éÜ9Åÿc·~¬¯s;Gú ôÿ\„V—çÚP<ø?ç~r­s•77ý Mç®ky®¤ö¿ín‡¦s•)þMç®vtÔ¹JÒÿ[õ»¸UÓ¹J¥ÿg^ÙÒúPe4Åÿ ñ‘]ç*Éþÿ,yf­žÎRùÿ„òW&»Ö¹³dÿ‚ýWn­YçξCøæšÎ¹¯RU¾øÊú»yäeÖ¬sgGÆJ³k;Û‘pïhuy–ôÿf¤­ã¨sü¤é\E9aaü?»Ø¹ÎUþßý¯øU«Ë êÿnBÿw6ÚµÎUýßû¿ô«¦sW¤ö¯ ö¿í6RÓ¹ êÿnlÖtîÒ§Ž:WAúã EçÎÐt®Âƒx3@v/íž¿Sÿwú¿Šc]ç~'û¿ÑäíÓêéw*ÿu(ÿï7\ëÜïdÿ×Áþ+FÔ¬s¿w%|±¦s†žCªÎÐ<ö÷úÄŸò 5ë\ùaÂGBÚ}®u®üSÂuÕ겜ôÿzsHûš£Î]ˆÖt®\™ÿ³k•€íè\çÊIÿ¯þ—[µº,§þïôå•®u®œìÿØÿE«¦s—šky.£ö¿í_~LÓ¹2êÿ®Eh:w1ØQçÊHÿ¯µWtîìaMçÊ^&^½Uº'õW¡ÿ+O¾ûjsÕAIßæó²”)ºÈŸe±²ö$æåcó‡öre¡ñÿê̼±Œ¡ž˜61/S)óïÅS|gg/¸ï,\Ó¯8œ3Ÿ1}òÆðù=w1’¬3Ôÿ_}Ä…¬IÖËè3çLõt÷8¾¿Ä=œÚKÿübãó‹àYîþ¹ßò±ÚÿÂÖ|ÈOγPn%î5¬O¢Q¯ˆî‡kò¸æ“qø|Ìzˆ?#ëÕ±ÊÏ4ûÎÙÜþ?î­œ¦ö¿ív3ÅýJq#´6;Mýß•~Ø~♫¤õÏÓÅćùoÙX)]Å{@<_ßÀxlgàMUx—Ë>•£¤Á¹FŸÌøê»AðÿO¿ƒésóç!ÍH>Ùÿåb°£`ŠkNq/ãý5»9m x˜ÿž¾¢æ%‡mâÏ·”<"û¿ öú"×Ëfl8´“{ðbzöÆN­'L÷\ã·Y¹ßf€os6Ÿ«ä5Wäö9ÈŒó›á³°Säÿ\ÌéÅ\fk™Êü‡]:Ìí ŸIr™•|þÝ„d~2[s™~ÈL|U”ñT+ŠM{UÕ ôV²¿“4þ_šŠõ‡:ŠÏ!ƒD^NRû_‘÷èê?ù3B·>GªnáøHêÿ.u…{–¿ú­zÿ“Ôÿ_jŒí«ÕýIêÿÿ€þÿt/ÑŽ‹ÕvéÿEÐÿWj “ÿwü¿[]…ÇWNš?'ÿ÷"ÌÿN8Ž…å‘ÚXxœæ¿`þ{¢•ó±ð8Í.ÀüçøX­.“ý_û?~L7¾+…ÇÉÿ¹þÏï¼âÏ$a<¤gàÓìK-A¿7‚½eÍb>œ—ÇØª3Ç6“Œ^ ïSm¬VŒkÈ÷¥Ÿú¿sÐÿ•&:×Ù£dÿçÀþku}”ì¿ì¿´«k=Jö_ ö¦Ëþíi–7QñO Ãóžãû>¨ÎÒøWù2Ž%¦wX8ößP¾6y@ãØ ÿÓsò]Žú~õeEβÿJ°ÿ£[5}?Bã_ewMßÏ´wÔ÷#TþÊ:о߬éûòÏ‚ÿ{t¥ÖFGÈÿ?û–Ÿ÷»Ißÿüÿ£ÁZ¦õ³É€It­ï‡wÎ ¸Í5ëûaÿÎ6ÖôýŠ×ªßè9öaeý“U\ySkÖ÷Ãdÿ`ÿG‚]ëûaò+kuy˜üÿ ðÿx8êû iÿH ÙØÿá_õ½„ü¿ ðÿg;×÷šÿTÀü§äS­®KÈÿ©æp?×ú^BóßßEÿâîõ½„æÿ¿¿£×÷Ý%}7(ú~ú°¶çæÐEJ—ˆõ‡{ÍÀ¯”ìàRáv.îµQ³ƒCk(¾£f'[9ÚÁ!*ÿïÅŽ®×ìàõå§°þ´¶;Iñ» ~ÐÝØÁ×›«®ëžoÐ Ú*”Öë·sýªÃë3lf[Æ x|OÐ'O¸¯¡s!ø‹Ù<ܧñ-óB˜´3K`,0‡±½£Ý½ï@½')ydqiu JÛ„ð¶ñ ªªÊ‰1 ^†¥Õá{û:à}p¯Ðv·kîXÉXUcÃŽ\É™Ä[uGkÿߨýË~Í[ÂB¡÷UæLÌÚÛˆmcæmЃ°ÿòüJýÌ?—°0èëƒËsz”'ü£<Éÿ9Ó Êz<Õ±<'g@yr¨<‹¤òô”Ê3;¯ó윇e1´¤çÝijYàÿ@¸çxÊ»Ÿš÷.Ÿ…R¾ýåìw§Ö/¤þïtä7ûoÚK·ò˜GyüÐEhydY”Ǽÿ£ÚÇõ#ÍŽÃüçÀÅšŸ­ÿHþßqðÿl–Ÿ­ëý¯iýëx+m ÿ‘úÿãàÿ˜ãølý·šÿõ#ÍÿŽÁüïÀXõ7´©û!ÊS aiý÷ØÀv•±ü™ÿž¯0Â’ÿ{LÚ?±ŸÚÿØTàWêòròøþíßãz\(#øÍrg±  Å,l~ÖaHÕ5Z;ÜOþÏ±Ž ç”$Ÿìÿ˜/ÄÙ?¯zä왽K=ÚOóÿR˜ÿÿ˜­éÑ~šÿ—Âüÿ;®õh?ÍÿKg`ùk^KÙGó¿ÒMÊJ†Tí¡}œûhþW ó¿ý+…µD=*u¢GûhýëèmÀsÿyF_Ò£d=ÚGóŸ£Òóï}ôüçèfHÛO×^‹PÖA_/ÿ+%nHÕ•+àƒšø™“E0ŽÌǑ÷q-Lú?B¥•5²#´¾·—Êæ¿ûëhyÙKóÿ£0ÿß·FìÇ_ý~ ‡5²iýþ-\¿ßKúôßâ\ÛKöìÿç6Gúd”/šÿY éÕÖ§¦ý%{©ý@ûï[¯¥ÛCëßG¬¿Y¿>½‡æ¿G`þ»×ì|}z=ÿ8Ò0Çõé=ÔÿþïÇw(Žæÿ‡/âý5]ÞCþïa˜ÿìÔÖ§/HëÓ{hýãð§€!­%×ÖÖ’÷ÐüÿðËÒZ2̇~zõ÷÷組2,¹TkfÄqII·û¥‹:Á×Tc>ý°Q«ÏŸ6âÞ“ýîˆõ??G-Çn²ÿÃ`ÿ{v½*æK»iý«ä­M»™fŸ™ õÞ‘øTþ,ÿ#Z½ì&ý/ýßsÛqíx7ÍÿJÞY¤¿»iý§¤ˆ¯™Ió%h‡u\'ƒ«Ê\êä³½ÜEý ôÿ{ š^î"û/ûÿ‘扻hþ["=_ÛEí_í¿'X«Çiÿç.òÿÁüo´~º‹æ‡`þ·§£^/w‘þ‚þ×*çz¹‹Ê¨èDG½ÜI뇒¡ÎêPµÿ¡±x­þw’ÿsæ¿»6:×Ë4þj˜õ’^ÖÓôr'µÿo7$½t‡º¨S½^î¤öÿm³^/w´—ê³½¦—;IÿÿöÞ.«*Ýß/bAyAƒ|1-Q)¼5॑…“ð^…ä&……/…wQQQ)ñ–¨”–𔔤V69“3㜜ÿÿñœéœ<§~'grø=kíï»×Ú¼ïËÆéüç×üþÙg÷.ö~öÚ{­çö}žuÙ¿^Ïú?x;õÉæ˜ßÊu^Bû¡Õ9áTçÅ«¢ÎÏ®Š:/!ÿñëq¬ÿ«–Ùúæôÿ×A¬ÿÄ8È%ä¿ÝUÈú-ò«cþü%àŸë„®Dо¾ûýïa/ë— ÿ×™þáäÿz­&ë$Ûª¬zÙxœâ#̸n¡6Hó?‚ý»NöïR;ó?Bþûz Ñ9›ÿ(a´`ÿ¾æ?þÞÕú!æ?~”€ëÔÿ—¢sd¡ý_þ_ò×åÈɾõ#ä¿æ?¶ÀþAöÿ£›ö9²O¥ù-ˆ¿E´+ÎR_-ùÚž'#Ü„81ôÀ_¸—R Éì«§ðÿW_ñþgu0PïV²“ÿâ½[ ÿ¿jbõ”Tüöü³mM£Òÿ÷+¾þ‹ž•_U¬ØÞãß¿*£ò=[n¯ä7=¨}Ñþ_±ö[Jvy³ç,í§µ1ÃEÈÿ¯Æ©ãüŸ`ýÉEÈÿ¯Hþ[nоºùÿUW:_Ùáq‹¶6Y“Ñ‹À¿$ÿÓ"á¿‹À¿$üw±üwþÿ—äÿ/:Ã’Œ~üóK ÿý˦¨Öfà¿aÿIöÿb½±Œ~üwðßÅBŒFÉ2ú!ôÿš„ÿ>ÿ¯‘ÿ»8Î^F?vgë5A‹øçÚf¢í±âmMFól¹\½Œ~þ_³’lQ,xyœÑ ÿ×"yÿ³:Š$U׿bÍß°ÿ×üY=s|²NÈè°ÿŸßUeèÒU’Ñ<¬ñ½(åz'³\/bé‘eóœÄÌ/ÄÌ.&9o¬™]3?m‹™ÿø§öcæfÈÿçÿËù¶»?lù;ÓÙ¼ æKÔùŸa}Q3üÿçyûmº·ƒé^3æ?üâ6]»U²ºç×V÷šÁÿ_4©º}yÎcþë/êé~«—fø¿_ÿû «C݃è˜î]€ÿÿùÿæ{B÷.ÿý‚ð_ssÝ»€ü÷/LDWl¬{`ÿ?»*tï·ƒ£Z›€³.ÿ|Fø§yˆ±î]€ýûŒìß…{Îuï}àŸÏ¤ù+ïÿ}FøïB“½î}´NèÞûÀŸùífI÷²ëÞûàÿÕÛ¤3Ù¤cMB÷Þþ»z…÷?«Ã©î½ÿwµ–Õ#tïr¡{ïÃþ]-Vå÷bé^öC÷n¦·¯{ïAþ?m»ߕtO [î ×½O ï!ÿûi%o¿N÷š€ÿ>%üû~šsÝkÿ?¤êÞEŒ[7ÁþJöÿ½ÛB^š0þ÷©_ÿÃu¯ ñï'ÿ¾W&t¯ ó>9Båzçº×„üÏ't¿ÉX÷ÎcþÓ'qB÷¾¸ÕzëøÎ#þÿ„âÿ¦cÝ;û÷ Ù¿¦2çºwñÿÇ7D_žÇø÷Ç-tï${Ýû°‡Ð½óÀ?Süßä#é^ºcÝ{üÿ8ƒt&ìÈ$¡{ïbþÓÇ1¼ÿYNuï]àŸƒX=B÷.nº÷.ìßÇ&U~/\'ÝKÿqèÞ¯Û×½sÿ+“Ôwo.n£{ßëuï2ÖWŸþ»Ò•·_§{ç€ÿ/ß¡k_9×½sàÿåU÷š1¿ïìÿe²ÿïfy9‡ùO—«é¼××½³À?— ÿ¼ÛYèÞY̸LøûÜçºwøÿ²;ÑUëÞYä?.]ºwmNTëÛ˜q6×OS}¡ÆºwöïÙ¿sëÞÄ—,¢/Ïÿ^ЦzZìuïýÍB÷Î þ»DñßÙI÷¦8Ö½3àÿGwHg¦ŽµÝ;üûÑ5Þÿ¬§ºwø‡âOªGè^³Ð½3°U¨òÛ”Hº7åÇ¡{¿Îk_÷Þü·´¨ïþžI¯{ÒëÞ‡&Üüײž·_§{ocü£%Ÿ®-r®{oƒÿ-Ѫî5aýýÛ°ÿ-dÿß¹#äåmàÿ:_ýÃuïmàŸ‹„Þ©º÷6ò©Üà\÷ÞFþë"Åï¸ëÞi̹˜(tïê×Q­oaƒÓÀÿ)>zû´±î†ý»HöïíJçºwù¿¥ñ“ÓÀ¿^¥{£íuï¼Ð½Óˆ?¤ø÷í@I÷&;Ö½Sàÿ‡ù¤3“É.D Ý;üûaïV‡SÝ;üóáVн¦¡{§`ÿ>tWå÷ìMÒ½É?ÝûåwíëÞ[ÿ¢Õw?W¡×½€/ôºgË ¼ü÷o¿N÷ÞBüÛ|—®}ë\÷Þÿ›¯ªºw.çaÿ›ÉþŸÊòòðs-÷ÿáº÷&ðO3áŸSÒþo"ÿÕ<Šžê\÷ÞDþ¿™â·ÖëÞ›˜ÿ{á¦Ð½Ë£ZOTã:ðÿŠÞg¬{oÂþ] û÷VWçº×ˆù_ÒD_6ÿ^ˆ£z®ÚëÞ™¡{ˆ/Püûf¤{ë^#øÿþ]Ò™‰¤cR~¹ø÷ý¼ÿYNu¯øçýVнsB÷aÿÞ_§ÊïÛVÒ½‰?ÝûEQûºwòÿÞUõÝßq×ëÞSûõº÷îmÜü÷^5o¿N÷N"þ}¯˜®:×½àÿ{qªî½y›'`ÿß#ûò®—ÀÿïÑùÚëžÓ\ü àŸ&Â?'× Ý;ügÓY*Ÿv®{'ÿk¢øãdcÝ;Žü_“UèÞ%ï¨ÖcØÇä8ðÅG'šŒuï8ì_Ù¿ëçâ#ÿ}þ+Ñ—ÇÏ_§{ãìuï´4>vñïyŠO ’rñáŽsñÇÁÿóŤ3ádâ„î5ÿž·ðþgu8ÍÅ7ÿœeõˆ\üÛuB÷`ÿΫûŸ)oÞ&Ýà ˜ÿûî·ôN‹ô¹ø´ÿ]jÿñkÎsñ ÐÿwTý8…ñÓÈÿ»$ÿÇãD_5 ÿõn•ïýð5žÇÿ¼KñOƒ4~} ù¯w 7x9—ÑcÀÿç(þkÈ0–Ñc°ÿçš„Œ^$ÿp¤×áÿΑÿkð7–Ñ70ÿåÜ"º÷+ç2úâ¿s‘¢/ßÿÏþ=Ö`/£oK´À?ç(þ;V!ÉèXÇ2úøö:ÉÖXÒß!£o@ÿÏžåýÏêp*£oÀÿQüIõ=e2zù³ªŒžœD2:×àÿÏ’ÿãŠ^F¢ýgYûCœËèQàß³XÿÞˆý§ŽBþÏü¿!Íß8 ÿw†üß ?|¼è(üßÂÿoHã«G€ÏPüst‘s=üw†ðñÑc=‚øçŒ¿Ñæo¢Zb¯#ÿyçÕWh,£Gÿ¼CñÏÑHçæðÿ;u¢/€ÿïþ9ÚÕ^FO\æ0ìÿ;Vºï¦„aJc˜Ãàÿ;Ìþ•’é*dô0ôÿÞÿ¬§æ0ìÿÛ_±z†iL2zñïÛˆjIFKæ£Síc˜Cÿ·!ÿÇ'é1L×r=†y ûŸ‚ÿ?}·_‡aÿŸ&ü¸Ñ9†9þŸ^¯êöqÌï8„ñïÓ…t¨—ƒð§Éÿºaˆa•|M6Ûßk‰º¯0«§*Bqåkoªûz¢ è7# Šþ2†žùÏÓdIë'büãÔm*;Yÿ{ùïSÍTv°þ÷ äÿùߣÈDûO‘ü”ÖÿDûOQûJë¿”æ±Ôÿ"|pP]ÿë×v­n=üß©¾×ªj_©mÇ"˜¼—öÁZÝß*®U~l.e=ÚÏìïA'ëëaÿÞj³þ÷¯lëUÆìâu!ÿñV£6o¥ÿ¥‚¨Ö×|ļ•c>ÁÛˆËø|—rÔüóV1ï‡í:€øÿ­}»ÞH³ÍSÚWQ†lç´ˆÿߢ½G§÷é=êÖ‹÷xƒú_)`÷„oP<Ø}á¯ð}s/²2ž‰üÇ›·èËœ¼üÿ›Mú÷:*­_:€üÿ›5TOõ¦"jû[Ûÿ¼Iø§Þßñ3^GþçÍÄ6ÏÈÏxñôóö׈6­aϦv¦SÛ¿Œxû +¯Ãþ7’ý?Píäàÿ¯ëßáÈméÀÿÆFª§= çÑþFjÿQNê‡üSü£¯¿RÔÿä¿1N?/jßiÑÆ#§Ås_CüÓHñÏë7Å\¿×`ÿ»òµK[•lî‡ÈV”YWÛހŋLÅÙeÄ—nSj[?·ÙfK¸~²¹x¿$[òݘ‚b¯ ̾PýÀÿ' ÿ¿ž&æå½†øç$Å?‡îàøRÚÿ¹øçdÝ_/Úvû†ÔÁÿŸ$ÿÿº´VüßIÂ?¯¯×ÏË«ƒÿ;Iþï5/Çö¬øç៺«öö¬öÿÙÿúE8ù?ÑÄž/ìYòß'êéyAŽçåÕ!ÿ}¢‚h%ÛÓGÈÅ~ØÿÉö<@ý·ˆï=ÐGµ=Œ6lŽºÿÀ˜yÌíGþãÄ ½-ª]'úómþ4÷n?ðÿñ;z«“î“â³ýhÿqÞþª¥ôÏ«ï3†¯MÜü¼ÖVß²÷O°ú:Kõuæ6q©üûÿ9ž¦·a{®ˆû^ï±ú|½G¨m j—÷ÿ÷×Þaß!VW™TW³É¨ ø§á+zÿz¡7ûÀÿ†k¤3éLgˆoÈÿíƒÿo ÿ_ç%ä`Úß@ñÏþös÷AþÈþ½†ñ¹½ÿ† mo¦{|Îàmξ@÷AþBYÿ ½Û‹ö7øÓýˆËö"þiæï…ü#ùß"úæðÏ^´ÿÉÿþÒ}ˆŽQü³ßG¯w{ÑþcÔþ½5Žõn/üß1ò{ìõ®öÿáϺ»8‡øïX${¾èïZøÿcÿî=âXïjaÿŽ>Þ[ïØç×ÿ¼q[ïó_¿ËõίížµàÿÄÿ½ùbÏZ´ÿÚÒJŠ*3û1nQ ýƒôïMц=àÿ¶÷ÓËÌØ¿7¢™þáäÿQm×p\¥8—™=À?oPÛjÏR»J™Ü¨˜Õ¥ h€ŽRü÷æoìþ?Ú"ä`üßQòµw„ü¼†ým÷ÀþÝÌø'Ýþ%þ×^×ËÏnØ¿£„÷$:–ŸÝÈÿG4>öò³ò”äöuÜ ù?êΞ/ú~7ìß‘;t>ñüìFüw„ìÏž4Çò³öÿH½^~êN;–ŸÝðÿGÿî ò³ í?b!ù)Uå§që.äÿŽL¢{jEvÿb{?½üì‚üaòøcò߇ïÚËÏ~³³uAŽejüÿaòÿ»Ó¨­Eö2µ ã߇+‰'°/5ˆÿKã'5hÿaâÿn ËíǾ)5˜ÿv8‚®Kùø¿Ãƒè|…^¦jÐþÃÔþ]îŽeªúˆâŸšf{™ªüj!~`öÈÿ¡Fö|Áà¿C„ÿvù8–©ðÿñ——c™Ú üw(N/Sû¬Žej'ðß!Â57…LíDûu%™*Rej7öQÙ ù?Hò¿KÚ¿q'ðïÁë¶÷ÓËÔNØ¿ƒdÿvcþñNÄëìeªöS§2ÅâÙešLíá}µáÊhÿAÂ5=´ï»(; ÿIÿk1.µü?8HÈÄä¿z1þ YÚ‹ñÁðõäÿjB¤û`ÿêÉþÕŒÒËÒàŸzÂ?;Î:–¥à=ñG¡½,í€ý«'û·ÛG=·ø§>=_ða;òõ1tþŠ¥/$YÚý¯'ýßÑ¢æ Ú®CÚûWïο¯bý r<µ>l¦Ò~¥$K} S1yÚÿàšn%ú²vT•lÿPü¿Ã²Qã×väÿ¬ckÕUù«Áüˆjä,bíí®Fü{ Îo¶—¿jø¿„ÿj°ÿ}5äÿ@ýÚ‹ÝÓ¹¬™Z¿´“5–áqL5âß×)þÝ^+ä­öÿu²ÿ»‘߯†ü¿.­_«Fû_§öo¿)úh7ÖhVÃÿ¿Nþ{“¸oüÿëäÿ··èåmøÿ:ñ¿:Ú±¼mÿ_'þW»ÛËÛ6èÿëdÿvb]Ç6Øÿ×î²ç‹~߆ñß×nR]‰Žåmðßk„ÿª$y“ÖmÃøÇkÕ’¼u"[RïLÞÆ<Ïdn+ìÿk}³©Yôç®f!s[ÿ^ ÑÇ ›6Kô›Y¬zàŸ×ÈŽn;»q‚­Ý[aÿën³ý!TÝŽøs+ø_Gü¯$új+ìÙÿmwìet+ðOÝf¦8ü_W¦É(“I.£;çÒ·ÀÿÕ‘ÿÛ*ÍÿÞûWGþok;ó¿· ýuÔþ­˜ÿ½ã¿û¥ùßGÏDµnÄüï-ÿÚß@õu`þ÷´?Å?[Ú™ÿ½ú¿_šÿ½øg?áŸ-æï”æoFü¿Ÿâÿ-òüï"ǹôÍàÿ>6ÿ»ˆé§ˆ57ƒÿû®ðþgu8Í¥oþßÇæ‰\ú.iþ÷fØÿ}˜ÿ½Íÿ.úqäÒOÌÿÞÿ·ó¿··™ÿýÝZ}.ÝæŸ7ÿí­äíŸ çÒ7Âþí%û·¹ùßÁÿ½˜ÿ½ó¿7Âþí%û·Išÿ½þ/ùÿMŸÿítÿªÈ×6S}ÒüïÀ¿µ„7¶3ÿ{#ì-ÙÿMÎæKëÞ7ÿÔJó¿ëÿÕZ…ùßÿ×Rü¿±ó¿7`þwmg¢×ÏÿÖퟰøg4ÿ{ðï¿Ìÿ®îÁ×ì²ýšÊHjÙ|¶|ÿ>z>Æ27 ý{øþŒvE›sºãÛ’]¿÷,²ªöZåíV>f²²þoOŒØCs龜Òú¶õàÿâÿ†zM¶Þa²µãÿ{¤üÅzäwß#úB};¶¥øw7áß ›¥{!ÿ»É>l×Ñ=ÑÚ~¿í“«ÊTðÏnÂ?†,ÿƒM¦ª`ÿvþYßÎ÷ªàÿv‡îûEÊ©éE~$S;e{^û¿[ýþÁþc2¥Dµ®Cœ\ÿ¿‹üÿúDã=9ª`ÿw‘ý_?D·'ÇBY¦ª ÿ»¤üí«ˆÿvåÓuý÷øž[Î2¬ZävEmsû{r¼ŠøÅÿUÕm÷äÀ¼ìÉñ*âŸiþì«ÿÂÿU Ž÷äØhsò^}e0ÉBÄrÓÉ2 §¾è?Û“Éñ*w?Äö4 Oý^ãÁ¾Eê1jPkkI¥wxøÎÖ/Iv&‡MPLcÜé {‹“]<‹ œ^Rá^4É{:»—}ç”ÕM>  ßCéõ±Bç݆PÂVuÖžef¾ƒ~ÝŠGGØž¾SéVÇâHzú5H1WZ/³ÜpIØÀ錾dô%þÍI®GçOMŸ¬¼ýßÙÂû§“£½^þÝY§ßë`S£~Üì•Î ïVZÿ»ãß;­%A— Ø~¾dk¤±´MWDÎvðÿNiÿôuÀÿ;ƒJ&2ß³AÊlZ/0ã:èÿÒÿWNó8…}3ÉÙw’œîƒ²øoá¿W¤ýu×!þÛAñߺj纻ò¿ƒäÝc°þoÇ$áêb£Z+ñ³µhÿŽ Ñ'kaÿvþX·Žé3»×&ÏL¯©Žø¢å_“¾mÊP}¹É ÷"þÛ~î‘t» û^¬^çÖ"ÿµ½ž·_¦âñФsk¶Kù›5ˆ·Sü»öÓ9fwT›{k¤ýÕ^Fû7ÕóýWÙwØ7¼•WØüy7ö\Æþs|Ǽíw%ÊZ?-Êo3ßà$æ.ý¯1 ÃÇÏ乺å7•“• Èÿ&’ÿ—¥ñÏ Èÿ&’ÿ5ÿ¬€þo’Æ?+ ÿ¿eüXa Æ'*àÿ6’ÿ[)ÅÈmËaÿ7þ¯p2þYùßHò_!JóÊ!ÿnëç¬VÇ?½Ì;àãýåÀÿôùº2/©?½Ø~Búyå°ÿ —]8Q æïÜ“ÆèWßö}Ú¿·ŸÏcXFïô;¹ÎÀ?‚ôùêÒJ©ÎJ©Nð=ñ¿üæiµ­úOø¢TÎ/–†Ju†Ju‚ÿë‰ÿå5Á[Qç.]àÿúbm~ÂÞ¡:K¤œq¥´?ÍrØ¿õÑTgdð&u%ª/×ÿ®§øwE‹ãùFË!ÿëÝõóÈ?hvr9òßU·ļ¢åÈU]¡ú+ÅüˆåÀ¿U¥›•X5gZüør䫪é)¿¼ù¿ª2:Ö>gZüSeaú‡shU´6?‚Ù ž3]YÀmV`ëíòú§Évðq¤2ÈÉÿò‘×/ÿ_eúñÅ2àŸW¥üBÚÿ*k¿»àÑJäŸÊÿyõÕ/åŸÊÿ}•ðãò;z;Qù•ðOY¾c;Q üó*៲{;Q û÷j(³8üûj {¾è÷RðÿUÂ?eŽóú¥àÿ+Äÿ²2ÇãH¥È¼Ò¤Gzùªóq¤RŒÿ¼²®Ä|©@èå])GÿòŸ•Àþ½Bö¯ÌGŒ#•Àÿ½2©t—2]•·åÈ[”Àÿ½2ˆµO´»þïòeÑöòVü·Žðßr|ÿºñÿºZŽžÉ—· 7cy+þ[Gø¯4AÈ[ üÿ:òÿå7ÕsËÿY·HÈÍ2´µ¿´ZôQöM]†ñÏuãèº?/ƒý[DçËôò¶ ü_Gü/éìXÞ–ÿk‰ÿËšìåmüÿZ¿Ë-8û¿¶=_ôû2èÿZÒÿ/ÇòV ü·–ð_IÇòVŒüßÚ½¼•[œË[1üÿZ½¼ý·´G]y™·bÌÿZó½w½·bøÿ5ר誼•bþM1âŸ5§YûD»‹aÿ×ý_æ`þW1ìß²¥ÀÍEÀk2ìåmù6ã1¡"Øÿ5dÿ‹o‹w)Bþ{ïá<(BûWSû‹ÓŒÇ„Š€VŸqÀfï¨ÖBì³Tù_Mò_ìc,EûWgн· -…þ¯ž$d~)ðÏjÂ?EGìã€å…bLh)òß«;mÙŠ_cLˆ°ÚÛvLh)ø_Éø?øuDøä¥àåiÞÿ¬yL¨FZ ûWÉÆ¿§3|¯ÊðŠ{bLè%ä?*ÓÔï”Fn˜Žïü^dZJìÀ˜PbÇ„ÛgªŽoLè%ø¿UGðî·ôcBõ° Q?…幄³ú=Ôñ¡Š»t­‹Z~ã…°«Èþ½t]?VTˆøÅÿKÇ9+*Äøß*u<¡㯅ȯ"ìóÒY!G…À¿+)þ{ÉúÃ׎Âþ­$û÷’´g!ô%éa±s,@þeÑ]3ŽÍ àÿV:ùꩨÖ|ø™Øÿ•dÿ +Œ÷H.@þãåëD§Û#Y—*€ýYZ?Vý™ô¿ÐÇ~äe<>]qƒìö\UÿÀ».L^ÆÌûï":7çà–ÿ¿Éó—»è=ÏSŸÕ­:L¼Í—äÊ{ìnõYaå®ÃHǨÿÏ6çêT@øJÜçÉÇžÈÇÐu+ËKî-ÿ«hfÏgöU´y âߊzÞ~›Ìža2»ú_!}ÿh ð_á¿%ßêû§ñçbà¿ ÂRü¹þ¿‚üÿ’Óš¬úý½ß\_ û_NöI½ÕŰåÿ.¾ê\VCÿËÉ>.d,«‹ÿ” Y]×%ª5óxò¡ÿå¤ÿ‹¯ç,óáÿÊÉÿ-®—s–úo®çÃþ—w}™ü·‚ðßâ ûœeÑ(’WÌoËÿWþY,­_ÈGûWPûêèwÑù\J!±1Á¢3O/m²¦ÖŸ‡øgE4¯›d#ïeê·/Õubž]QjÑ ªgÿ„wþ=”Ñ“ìðù c h¶T)âë;èèY&j_aÄrÓÜ’] ßiŠçòüôŸÈæÁÿ/?ËcÉæÿ*(p‰½Ë0öÝMöÍM’×@Û²ñ»bÅÕº¨3Ë0±Ë4°l©¢”=¡¸ÅHßÝŒR¿»«¸²¼]sÊ}—Òýo豋8ß=ø˜Â{œ·›Ô>Ê…ý[>¨”ž£bµ—ŠÕ¶(Ù ÿ—wÖpáûÿEý”ÆÆ‹lãÏLþ@ù/»¦Ž'åKú›Qrîß p½‘=SÍÛ-Åüª\Øÿ²j[qü᧸ÍU&*UôË}?Ë‹ax÷Eµf}ί­øC|^§ÏtÎñ<…àß2zéûÈ9háŸ\“s}ÎAüSzƒèœè³«ÐçÈé¡Ïkfažlì_é:ªÏé³Í>2LXòÞÄïEÀ?¥iDK÷Í«½ Ó/‚ý/¤ëͺ벾\þ—âí笠1öÝN3^éÒö»U+~Ç¿[ÿ²þ¿ä¶þ»U…<ÿ%ð— 3±:&¯8««ùï’:>®^«LF|}'ß-µ(SؘnX2;¿d\i„º¯OÑB::1{¡Žï–¬PÂùøn)ß Æw=Wùó˜Í´íaÒµ…|ìökªgʨ'ѱóÅ‘R]•ÓÕºV£®põ<¯«Ïw™¶ß1ü5ÕÁ¿GÇΕ¾M:Y­mþëUÛœ ²qàk6ò?Ë©í!úyÙÿeÒ÷³ÿ.£øw‘IÓc|' ùŸe¢‘òËYàÿ2âv³ÃyŽtÄ©ÏËÂüÇbŸÙÒ÷Ѳÿ)¾IåÎu$ ø¿˜ðv¨±ÏËÂø_q¥Ð‘—IGÒ±N6ò_LòŸuËØçebü£˜üSV£sŸ—‰üG±„21þ]DñGV¡½ÏËŸÄì7É%›»“‡{0þ_ÔB÷HùçLà¿"Šÿ¯ãg™à‘ÄÿLð¿ˆøŸe²?[Ìö'&|–ÿ_Dþ?S²_ˆÿŠ&±þÏÊ€ÿ/"ÿŸ)åß2ÿQü›¹þ‡·eÀÿ/%ÿŸ)ÍÿÊ€ý[Jþ?£ù_hÿRjföÿLþ[*ÍÿªøcT니“Ò‘ÿ[Ju7cútØÿ¥dÿ3Êt˜^7W'öÿ%iü<ü‰øŸ1ÉÓçösuÒÿ_"üŸácû& ›sYötŸÿ‚þ[Û‹Z©?(¾Tù«‹Û¿]Jú¢G¹í8YYˆøï%ŠÿÒ5{N|Åw!÷ ÿ½$}ÿa!Úÿµ?=Ûy²ÏÂïç¨k%“æ_Œ¸i!òÿ…WYÿIuAÿ IÿÓC9ŸààÛ+÷µOÆ‹˜ÿRheï'äëEà¿Âhzn¤sùzù¿Â Ö~cùzùï‚o…|­ØÕºà®ÿþ_cœÇyþ¯ Žèçq^þ/æ¤Áþý{ñ–}'»AäqÒÿPüóâiinoªã¹½iÈÿt-­QRI÷n‰ðO៉ŽÇ“ç#þË;K4 Òxrw‘·ŸÿŸW-'ŽO¯×¾/ãíèû2Và¿<‹~_‡yÒúôf¡¿VäóBXÿ;þ¾ŒíÏ몞·Hªs‘T'ü_î ÖÿÁÕ­­¶qápM^­àîiÖÿlÞepµ,ÏV´?·×mu#ÿ—[FçÅ·kR ÿ¹dÿæ‰oפ€ÿ¹1¥Û”T5®]€ý_SàÿsÉþÌ—ö§KAü—Kñßüû1ˆà¿Â 0¿ ñOÎmûu)/zj{Ì´™ŸñéϯIþ{ ÖP¥ÀþåÔR[…¥ÿæT’#¾NÆøOŽ´þ3üÏ!üo•æo¾ˆñÙdøÿòÿVÉ$#þË¡øÏÚfýg2øŸCòŸâdýg2Ú¿è6•¬ÿLþYDøgâŸdÄ?‹ÙóEÿ'ÿ,"ü“âdýg2ò‹ ‰F^ÿÙKèÐ<à¿EòúOÂ.iêúOogs2æÿ‹üõs2’¤¹ieös2æÁþeßÒë^R¤t_¤åyh6o¿ã9ó`ÿ³×ëuï…oE©ßŠ:-à6ñ?9Q›?qŽ× ݲÀÿg“ÿONîþÉbýK~ü°€ÿÙÄÿy-b]¬ø'ë[Ò­¹ªn¥`þ¿ùï¬ëT—ôý3 Æ¿³š¨.ß?³@þ³HþSðý3 òYë´ù ˜gLúyÊÎþË"ü7Ï]¼Ë\èé¿%Ä9.œ‹ögQû-•Ƹp.ì_æ Â…ŠŠ «¢ZáÇæÂþg’ý·Œ2Æ…sÑþLŠï,îÎqaðo¦ôý”$Ø¿Lòs¯ØãÂùÕ&ÿ™Äÿ¹µ.LqŒ “ÀÿŒo Ï¥¿¤ýE’ÀÿŒë¼ÿYNqaðOÆVÀ…©þ&ÁþeTªØ*ÅBò™ò#À…ÊE—â‚öqá À?éWÔw·vÖãÂsz\ø"üÓ ˜ÿ’¾™·_‡ _€ýK'û—”ï&‚ÿé1*.LiÁyà¿tÂdK4yIÄü—ô@:_óÃ÷_NDü·â¿¤ýËáÿ’ÿOlt®{‰° ÿ¾ÐÕX÷æÀþ-´Ý[<8ªu6Ö‰Ïÿ[Hþ/ñ¬±îÍAþga¢_ç\÷æÀÿ½(åOæ þ{‘â¿Ä{ÝKöº7ã_/Öm¤{sëÞðÿÅBÒ™¹db„î=üÏ‹‰¼ÿYNuïyà¿CX=B÷Rj…î=û÷"öÿ›{‹toîC÷ ¿o_÷fCþÓbÔw·Têuï®·^÷R1?e6òi>¼ý:Ý› ü—Jøïù»Îuo6øŸzMÕ= æ͆ýO%ûÿ¼4ÿh6âŸTŠžüẗü“Gõõº—ÿŸJþö(纗€ü_ªÑ­7Ö½àŸ·„îå\ˆj}~<ñÿŠ?fGë^ìß²³{8×½xÄ ¤ï§Äcüᛄköº—T+t/ñߊÿê%Ý›ãX÷âÁÿù÷HgæŽ]ºøoþMÞÿ¬§ºüGñ'Õ#tÏ$t/öoþzU~ÓH÷æü8toqiûº7 òo½¦¾û ]ÛχÌÃ÷gÿ[kxûuº7 ñŸ•â¿øbçº÷øoMPu/ó;Ÿƒý·’ýŸuOÈËsˆ¬ÿ̪ëˆî±½C™Þ³´^fúÆô¯h±Zö--úžâº­ý Š)Îû|DAq¯ CýøóàÿRÈÿÍÊgs#6(ñ?#½¡þ09›5WýþõÌ®,fÄ;"ÿ‘RÁÖö±ü?µ óóãÿ¦¤ñ±m¾ö/‘í?;8x£Ôçó²RØ|!”³YßGµÎ¨ψƒÿO!ÿÿ<æ×ÅÁþ§Hù£8ä?’ïÒûKs¹ŸÇº©8à¿d³¼¤û€ÿ“ ÿÏò×Ç™q°ÉdÿâjÇ™qà2ñ?.Ñ>ÎŒ…ÿO¦ø'ëúbÿ“£Ùó…ŒþO&ü×àxŽe,ü2ùÿ¸#ÒK)ÎŒÅüy_Is,)Μ}ϱìíx¯Ž1£é¸ÎâÍXàßyGôóÙczHýÚCÌ·ŒEþwž˜ÿÎ÷ç›.åÌfß{vÌDûçEkô+ö1ú‰¾¡ê%ñï<UŽfo®*ä{¦C–0o~&ð¿…âÏØõŽ÷`š üg¹ªßƒ)á¦mM+Ñ ý–#TOË&mêLØ Ùÿؑә‰öSü¹E™£Æqÿœþ[,Œ¿‚×30þi¡ø;¶Â>îœý·þ?„sð/ÛúV¾ß'é;ßï“ïõfì‡gÿÏ¥øh¦ôýŸ°ÿsÙóûáˆÿæRü7³ßÿ‰þ››(üðÂô¨ÖiØG/þ.ùÿøþO ô.Å¿3ÚùþO ü’´~*üO"ü?ÃÁ÷â¥ïÿÄ@ÿ“HÿgÈßÿ‰w쇧#ÿ•ľÿO|“¾ÿ3ö?)÷?«Ã©žÿŸÄ¾ÿ/üp‚ôýŸé˜ÿ—„ïÿıïÿÄÿ8üp¦Á÷¦Aÿ_À÷žkóýŸºèýðóÈ/Nƒü¿àÅÛ¯óÃÓ`ÿÉþOoçû?ÓÀÿD|ÿç9àëið‰äÿ¦KùËiÈÿ$Rü1½Cßÿi3gßGãOªNNV¦ÿ'R|43ZŒ±NEü›8J£8sQQ¡v ö/Qš?1üOtgs!IŽMaå©n$[ |.”6‡øz*üßiýâTàß9Í¥;¹Çõ“ž_”Ú—ç÷ù˺TsØ—ŠY6ÃGêÓTÔû7GÊßFÃÿÏaûºr¾²wŸ±-V!½^®Ïf|Õæyñ¼Áây1õl_ì…ø÷ùB¿~Š'›ƒƒçzÍõõŒj½w[?'mZ {FIé×á5­çÕ:¦Àÿ?/í?øçù@uÎZLB›6¸¡ a¢Ï¦çó¹fý/9œkÆÇÍ ÛŒ›!<¸åû§`þÇìjS†Xë2㳫é¾Å9à¿Ùâ}£°þeö"ºÿˆðç3°¾$ ò?›ä?Z‚üÏEçÕýáVü¡€éXTë÷GÄúÛ¬Š‚üÏv§÷p²þ% ö?á¯ß›EAþ(þ›f{?´?Ú%­‰Bû¨ýSœ¬yö?!Ÿhäõ/Ò>jÏ¢ý 1ú}ÔbÔõ/>ÎöQ{ñ‚~ÝâÏ‹EÇ Lö,ò?ñ·UcøëYøÿxòÿQ•bÏ´gáÿ)þ¬& ÁqL4ÆGŸEûã©ýQÒøâ³À¿ñ„£¬ÿ‹þ‰'üñåHØÿøhû±©iÆø%þ?žüÿ³-â]"ÿfþ‹¼ã¿D¢ý³¨ýÏFã—Hijj~™÷}Të3q¸û7«˜ÊwñËd´áƒÈçøe2òß³¤ý?&ÿÏ"ü¹Î¿LKøe2äÿ9’ÿH‹„_bã—Éàÿs,þeú)ðËdðÿ¹jÞÿ¬§øåçÈ<Ǿÿ+ðËô¿üø÷¹HU>£ ¿Äþ8ðËü°öñËÏãðý·èf=~yÿ¤¿ÌÄþÉÏ ÿÇÛ¯Ã/ÏÀþÅ‘ý›ê¿<þÇáûWÑØ·ïàŸXÂ??oòò ò?±7é|â_ó ò?±ë©>iÙgàÿb ©œï\÷&ÁþÅ’ýæŠñ<ËIð±B÷æ‹j×±þ'–b¸gŠçÌMþ›Iøÿ™hçsæ&!ÿ=³^ôå$øÿ™äÿŸéa?g.ê³á+~Ãç®™éï®+Î)ƒ±æ+¶4‘x©Êñ0ê“VÆW⛃€uáÿg†ªë®¦|%dn"ìÿL\k ºÇÞGÝÀ3®ãþõRÝÈÿÎ8‹kqTwø}Ô û7£÷‡Šº'Àþϰ¨×¢îRÝ;^÷ðF î¿.Õù3:ãZ Õ=ù>ê†ÿiÆýÅRÝàL=®EPÝS:^÷xà߬ÿ‹ u‡ý‰V¯={‹êž~uÃÿÅtÅýÍRݘÿ6ý®URݱ÷Q7ðÏôÜŸ&Õ ùŸ¾׆PÝñ¯;öozîï*ꎀý›>J½y•êžsuÃþM»‹û¤º1þ=í®åSÝsï£nøÿi5¸?NªøgZ®ùPÝ)¯;ùßiêý“Ãáÿ§áÚYª;õ>ê†ÿŸz ÷×HucþËÔ\³PÝé÷Q7Æ¿§VâþQ÷Ïàÿ§fàZgª;»ãuÿ ù©CÔû~Kªþoj\«§ºóî£nØÿ諸¿Rªø'º×¢©î‚Ž×ý4ðt>î"ê~ùŸèõÚ3w¨î¢û¨ö?öÿ™«RÝÿ™r×6SÝ¥÷Q7ìÿØÿgò¥º‘ÿ˜R‹k£Øú&²ù!ê¼êHäOž†ÿŸBþÿgRü:ö áÿ§oÜ×¼jŠ cq°SÈ~<-áÿqÀÿQ„ÿǵƒÿÇÿGþÚþï$0È8蔄ÿgyDµŽþÿÇüǸ»vë¡–³õPcÁÿ¨¢¹¦[ïÄçx…ý‹"ü7ޝÿ`×ÊUÜì÷ËöGQûÇUÊ´R ½ùÆÿ=+í2í–Ú?.R‡cžçûaº‘ÿë!∱hÿ³d?Æ^w¼ßÖXðÿYâÿXiÿ„1àÿ³Äÿ±5ºý¶\äý¶Æ ýÏRû'z±ñ50t ”ŽG,°±ÀòÆîíÄîmcÙ±ÀØÿÈ25ˆ8X Hzo`ÏÑðÌŒY$¯uXñ4_ë€øi4ì_äÁ³ÑÐÿHº7Ô~­CD-Ëé°¸cLï{Ååd§Ó‚w’|,cë4Ò9Š+[GVE¿wñ±=×°¹®Ìž³ý ï£1þAñ'½#“y–g ûR `ëAIö³<“º‡ãÓîêºRå iƒËw»«<#¹T‚+¿¥9‰ßÆwgãÛáÙ£åÙ(ÈÿϯP|ÊÚn›ÿäÉÖ³õtÓÿ_ÕÏfGAþ^#õǃR„‰þ{WÝ3–ÚD÷ØâBйHÜ”ðå#–Ð=ɳÂé}˜Œ„±y–¤S]f†§T½ÀçO‡‘ÜckðïÏ¥gw‘ž*=»¸ƒÏ&9ÃÆÇø·\èytoòßÏœ–žÓ]zÎ~é9^|ÎɨÖÖmÒsˆ_O!þ{&FzN7é9Ïs¤ƒÏù†ž3Œ=‡å¹î© ¬|N ÅŠÙô\O®ecw·¶Ž}—ä†éTyÖ±°º ?²5lþ«ßO€Ý³‡ê£ûˆ>†Ñm<§æÀUÝžä¯ÕÏ÷èVç¶Šl¥9xœâ0ÕÛ òïIØ¿I©½]E{ãD{GŸÅ½/IOmºôù[—ž„ý›X¦Ž!ŒµÙ??›.±ùÓÃÿTÎäZË‹p›5ëÞB1þ7qÕwZÌ1þÄçðõØOû”z·ÝG1øgÂ=u|xTcIß;XK ÿ7á&Õ-íï ü;¡…ÎOr˜AN’a’ÅRÛ^Š:L²LÛ ü7ðÓ“!"w>ãŸKw1ßúThÙ2ÅçÏÖð5¼ãi;éÚ]ê·ê:9—Ë$3᪸œÿ?+1ûÛ—ƒ‘ðÿîb߀Ý Ê rÎ#€Æ'0þàÖŽ—öÿùãCˆG"·=:×ÿÇ÷ ëÒþ¡#ÿEPü§ŸÇ1ñ_Ä *_wˆe•cßÄ ÔŸ‚ù¿p“ºUÚC›Ã6_ŠÅÚ|©"Ý|©*6&ÆÖÄŒÙß…üÇÏ6S»cÊÆ*©Þ¥~JØŠþª>2lëÛýo„¯¼#v=WRïáQrö6ÊÕðå¤ýÄFŠþ¢}}†ü×Óõd×'’=»©a¤"Å•û»òã ÿ¶P›&ÿs´)òOñ×N¶¿ÿ“]íÛ´õ¯æ(Sþ9Ú4ò?ÎDmšB:8ʾM›éüèjSÚ´SjÓH©Må,Ö|¢”µÇä‡q‡l[{èïaôÜ9xOÛû3:–7Ç»8zwÒëËDƒøbòŸc£Ù÷ëÈÞðùDs€Þ±ïxÒÉ;îï¨ØÆŸVý½ã@1ž?ò?†É)ó_®A¿r,W¾á»°ºªý„ŸkéÝÓÿ9df0âŸÑW¨méÔ¶Îö2³út½+µ)ûŸ£MOÀÿºKmÊ&ûbߦ—ן ©MyÿmzþŸâÏJùŸDû6™ k=ee{¼ÿHtÔ>¿’åá;•Ô1\”±Ê„aìy›”)l›ó.Ñß±¿éJK­2ùÞe {vŽÊSùK®gU\Zš<•0ë =Ó<ë‚Çhò ù«>§ŠÎ õeù5ÅTFeò‰Þ±.£é]üŠM±úb'ÅlgOu¾B#[ßçÁÊê\ßgYž’åšÂwu* :Ǫ¼é”þãæÍ 俟ª¤ö%ßÒÄxS²ì7Ô˹fë&FS±|ë7ê}ÿ>C¶û2 DüóÔ8gÿ<5ˆäÀ*pp0Ö Äü—§Ü麄ŸbüçÉ;t>ZƒÂÿ=yÊWãàÿy²Êëìqð@Œÿ>¹žìÈœCþóÉbö|Ãú¿'­tþ¦ÀÁ%üÆ?žŒ šEÏ­îé2¾wö˜÷—"…Ó–”~;s\üòŸOvesÝø·e>`ñùP–ãßQMP×ÎVùP»Æ–r(%yô´ÉcTëq¶>°‹*‡f)gýò_¡Øÿrh›\¾”0«ªÈ =üZ¡Í3[Êêê[ðkÈmù^’ò%àÿB£©ÍîbñŒÿ††2™Rñù ¬ï€ü_¨Ý“/úxü¨‰Î³ÇçÿޤøwÐ œƒýIíŒïþyšžíV2‰Í[x„a[.¿;më€ÿ#×óµ¯;•.¶yȶxY‡<Ðö6¶í5íû–ÖËR,Ír¾¶Xºh›‹û72ˆž{“Ù8Û7ø^]aìZÚ?’Úÿæ!þ!}Ÿ$ãß#®ߤ½ìŸÀüÈ ´Å?¤õ‡AˆFPü3€¯æùeârì§„øwD!{¾cÝ2#ÿ;"ŽhìÿmÿG„2ýÄ9äÿFÒ=ÒþßfèÿÒÿ iÿï/%Ý2cüoø-¢)s¼¼ë†7é÷‘ü*‹…6ìD|y†Å•fÄ?Ã)þ Šq¥ú?¼Ø– +/§þ:"ú±?âÿádÿƒ¼Ø6Ž¡å>ÂÉ7›Ö²1š1Ë[¿¿Ÿ}…l{2ù k°·no¸å“÷uëù¹¢ßîñÄ¢%¤Ã§•‘lÿµ°ÎŠ©d¹Nº_Z­ +iö˜>ê)ò‘_-JûOÏU®ÌN=˜W¤<˜GtŒÃŠ:{µ}«+,™ÍÉ¥£®µ•žÕŒÛ%¬ÅÁ&[®ÿQØ¿²ýï±½øWгK^PFÎúÝõe|ÿTòu£-ÊäÑ{à CwÚÆùn›“úheòìRE­cØ=õ;űv ~èÿ°›êüÑÇØš ¨ÖÖÌ«ç-í[¾WãÅâÑ"ÜùV+xù(æ? [GïÜ"ti âÿ@ÄÿÃ(þï/ÍŸ „ü#ùïß`¯Kй”xÁÆ—ýñ‚1\‡¹“ ḅ|*|o ìÿ°®ô.NöÄüÇàÛTv°ÿC òÁ-ÔVìÿˆñßàF*Kû?"ÿ\CÏóq¬kÐÿàBÞ?Bפ¹Ÿhpœ¤kˆ'Vžw˜£¸jú¶—Ê¿§ãù±³L÷`ÿƒÉþ^ºûlZ¶ÿÏ_SßJ¾,üJö?°†ék—¤wŸGµþÍ“í ]©¸Å†K:©×¹ìð6:'êøsTë½OKûH{*΢ú¶ª÷«¼³õÁ#À?Cc—Yw §5€¯"þO®PõDå¿ÒEgŠïK?‚üßÐÔ¶+aþ­ßó½ÂÊ”É|ßÒN,ÿûx¾˜WÿÚ?„ÚPÃöÈX¡úð¹¸û7¤‰úG²¯ þRO÷ݲ÷«ÿ ©$~W¨c•ßcõ³|®À·OÖ–ú|s ¨œ Þ‚1ùçŒÉ÷–Çäûÿ ľ§ÂúG`Ï~ÿ!]q­Ží«Áëå Þ>ºz1ÿaðUÖÿ ?HõBþ7âÖ÷ƒü&ùä®è£~À?ƒ+è|“}ùÿ &üˆùÕþàÿ`¿ýÙþUŒ¿| ¬cêØZbø¿Áäÿú5‹wòþ}â{¾ó9þÐÿ'HÿûM2žìüïÕb@éŽ/ö±ñ‡þ?Aúïÿ­ñ`?䟈$úfçs€ýàÿŸ:íþ?AöÏ¿Ò~pÿ81vïùœäÇ?Q7ï€çŠý ÿ“üûÝs<¶ïþ?Nü÷%úÚüœøï×äü[Z}1þñx"a…QlÌ„âDòán<C1·y“Ùö‘Wç¶*±Àîáìû j]ÐÿÇ¥ý/ûbügÐ=^oW€´VñQ5~âûÔ|Ëäݼ(ÀÕöl…aXvážÒ½l|f€—ø†N_ø¿A„ÿü$ûÐú?ˆïÿ¡®}í_lÿ/_Œÿ ²¨cˆø”üƶϥ/Æ?M¢ºM¢=¾ÿ4„žSßá9»m×iºâ‹ñ7Xÿ‰6øbþãÀf*79×_ð ñ¿¯ñ|øÿBWBOEµöÁ:FÄ?)þñm1ÞÕëŸú}µî†:]ñÁüŸÇ$üîùŒäß7Ñ~oÔ€ABW|`ÿ#ÿï«íËöý^ñ(“)àßÇÿúöÐ]ŸÇäÆãåmƒc]ò†ý{ŒìŸ÷W‚Þ˜ÿòØ(º7_§KËe]ò†ü?ÆüßWLNËÆ(nln¿/?o¸÷ödè€7Ѫ8ÙŸpïRŽ“ÁGo¬PÇÆŸÂÎR È}õ#¡UÅ<ÏÊîÆcp®[ÿ)ÍWéƒù¯Ò¨=à{àŸ„ÿ¼¯ŠñÑ>È Çqç a{këu©Öÿ ðRíCß+%»®C—ú ÿt—ê–æ¿÷ÿƒˆÿÞbþ{?çû ÿ¦©õëßÜlýî\Yëy9>eõ1}R¿×úDöÄ[Ú?·7Ö?-"š ç:Õö?(’µßØÿôþ ò:5¼4ªµâÄÞh¿™Úß'_Ó)_¦SŸB§Ô=WAÿg&ÿ×gשÑCWTrþcîXoðß\'ú³7âózº¯+õÎK:µé”¿d?½`ÿ̺÷oãlgßyöBük¦ø·wƒL+íƒ =ò‚ÿ7Kßÿó‚þ÷ÿ–î_¤ÓõÙ¶ï<ûzb…k0a”°±ÊßþÙÿ¹Ê_>FüfÞç§ Þ{F꯷±ì;!cx¬êëN÷±½óÃK_pue{¡‡ÕP ´G ¯§˜j‹—1KÙþÊÄ¢¢žžE~=ŽŽÙ©L¬î¯˜’б©Ÿo•ì8ÏrkçG7*&6ŸfY½ºz‘ûñ¡T¯[‘KÔÐQƒ¾:=ûg»Ù³{Áÿâû—ÞRþµð`=×·ÈÇóo«S»û~[êú 0=Æ‹zÿŠÈðµL>XÜ_Uú˜ç1üï¡Þ×ñ`DéÎÐo–Uìãß^(9ðob=go¬ê ûèEÏÓÖ?/û [?ÔúpW´¡'ò?·ˆÞ¢×QàÖžÀ„ÿzIëw{¢ýÿô b8ÛM_a7ß&ûÈìæ%²——È^jãê+ú°½%%Û9—} ƒÛηŸ(`²²ü÷CQ¼ÈòxéjÞ& Œúi Ÿ§XãZÊú,¬ñ’ÞeT„2žÉtøêk±×ý°¢‡ÿt´ÈåÁ¼ØHÒ+÷6zåÞú%»Vs{êþ3’óRŸa§ô|ëö?Ò$ø6d:éÞUηÂa§߆äMV:q:ƤŒ§{©(­vª¤óû<m›Û¥òÎó6æ°dö˜çˆâìÈV%|¹Ë)õý<€ÿ ¤çÝ>ÓöïŠz#áû×OÂ?ðýÈÿõô˜¸7ü†ÚßøßCÚÆüïGüïÙY?Žàû×ìŸG¥ãüKwøÿ~äÿ=&Ùç_ºÃÿõ#ÿ× ëû»Ãþ÷ eÏ>µ;ð_?ÂÕŽçÓt‡üû“ÿóØ,ͧ‘rÝ1þáMšOc"{~Ë–/`ën‰ù)ÙñŸ5Ï3ðyfžÑRšÄúÚnÀ¿þô.ƒÄ÷5»ÿøÇAÖ\HÖöS¿C¿»¡ýþ¡\ž˜Í!™ÒËSÏj±OI7¬òïLϱˆþê†ü·ßWìùöqy7ä?ý®Ð³‘ÿî†ü·ßiâÇ·X‡ù›]rã¿:$³$ãÕºº¢ý~lý§:N^7èêç<*ôé"=ßc<êsÇ÷`Ækߘïºÿøù0zîÛùœIÏ4Û¤ªß`s™û^ã㡾®n{üÕñ76>86©µ•ê2m|ÛU ßmpÕlö½yÞ'&¢u¥ƒ·…ã5²K,‡Ex¬lŽÁã¾ ?î‘÷û´Û{©¶õsm.Ñ’6{/mQç}1¢ èÑ{X{ºÀþ÷ 6Þ[AÏdóK}•<õ½»¬RÛßíïëC2€ïWuÿûJß?ê‚ü‡ïâé!Ÿ=±ÿvä|¯Òuiÿ¤.à¿/ñ¿›—^ß» þó¥ø¯Kµc}ïÿç[Hå8{}ùßÒ%¾ÀP~í÷¥öw'døaä¿|Ñù:Ç{î>ŒöûvfýÃx;~÷ßlûþŒgØ«w6Çv5¶ñ«‡Ñ~Ÿ«ÈOð=¬‰çl/ìD2yMÛÓÚ×ÑžÖÃþù¬Óï«ûàÑß=Ó!ÿá“ÈúŸígÍmÍoÙ³Bû}"/Büï3„Ù5§Û½Iª{3ßçwƒí}BþÃûž~à-Ò=±ÑCÐoÒÿ‡+ÅøãCˆ½K·+yês»’Þ ñ¯7Å¿ǰq{æÂkÜãÙš×1K[¿Wí†ûäUý”‡Uùu‡Ÿuÿ½Jgkó ó ù‰yÐ]1Ú“çgÇ·àØ^TaåƒÌQ­“&+n¿eïÉò ì<Ù.6Œ²*ÿÔd' ÿîàŸ«l¾2;¦¾iÞ8ÚÖ7îÿîÓ@å#ŽeÝüïCþÏ=Í^ÖÝ`ÿúýïŠñU7´¿É¿»ôý@7ð¿É¿ûYÇ¾Í þ¯ù?÷ӎ犺Áÿõ¾«Ÿ+ÚÝÏõs0W”¯;rƒÿïMþß½XŒ+¸Áÿ÷®‡¯r +ïO2pWø7àŸÞto„À&¢ý½©ýnüûÃu¡x¶Øû<ˆüWoÆG“ŽÇzkñj9haÿz“ý{ðšL[¶êUç€L§²æ…ŒÅ9È߃ÿõºNåͺgE‰¹c|q.Ã&ðÒäûáÿ½ª©gÿ®Üo!ÇþÚïEípP›gµ{r ÷ ÿã5ŠßoW?ŸŸ‚¸ü佺R¹E¦e±ÜE÷AkÙsZö:œ¿‚=r@üïÙ"ôûè¿g#•1¼Êl÷õ˹¿¡Î0©ö‹ôè0ÿ׳Œßñjý<㈶Gä…õ?›wc»‡-ì¿'ÙÿηäzW\’×JuÆø—§”?í üÓ‹ðOçzÛø®ƒödð}×-Êæ‹Ùx-ÙµB6ÉÆ ØZæT?Ý«LoU÷¨`çȧLäkýûiü÷àcÎó8nA®Àù^<ÿ«Îéx¸‘õ]Q~_>ƹá/6Ûã ü׋ÍÿP–Ýb6¬ë Õ~u¿I¾È6ßñkÐÃÿõ"ÿ×ÙäØV¹ÿ÷¼Éë·³U®Ðÿž¤ÿn‰»Bÿ{þw­öÊùŸžëé™]Ù+fß«øž50þÓÓJ´wBþ·g4ùôÉM¸†ùÿ=CèY_ ›Ò úßÓ‡ßooS.€ø‡ùßNGÚ·)ÿ÷h¦rÙýÛ”N°=ÈþuЏ›âû׃ì_'öO¶).hj¿ËµŽÙÄÿ·øýíÚà?Â.ùŸM1!ÿí!íŸf‚ü{X¨^{tÃþÇ&è€ ü÷ þ›¾rÂ?¬3Aþ=Hþ]¤ñ1ô¿;é¿©Þ©á¾ÕùïNòo*Ö=o!·3'6Áþw¯¹MøßøoŠ`mãÏ¡¶­àº§@þ»“ü›øþÚšM¾—Õƒ_1|¢î­é]¼™ëe³/L?mX‡Û¦òA±DƒõÆ ìw²ÿ¦ñ}sñ·o©?b„Î*ÿévƒÎûØÇƒ Öw;Ëôç ÿÝê™ýeûM²==µ=')Îi;Ÿ‹Å?Å©.¯#Ýa×*ÖôX\Éb$W'×ýO¶Ýïûö¯÷ 0¨“Aý# î÷6¸îfpÝÃàz¼Áû}Ñþõ¾©×OÔnpý²ÁõýÏÿ³Áõ)í_÷Ýip¿AÿúÎ5¸¢Áõcõô¿¯üûÈ·Aÿû0¸þ'ƒúÚgÐ?>òeÄ?ß9õ¯2¸>Ìàº}ð6xïß\÷3¸îið~Jû×ûèŸÏ žŸmpÝ@?¼ ôÛÛ@~ú”·½÷××/ÔoпÞöÙ¨ÿúÈooýí3Øà~ûhToÿÕÛÀþôþ¦ýë^F÷¯5¸ßàý½ö\7/ùö2ð/ž)×à ®ç\7°Ožúíi€zõ¿~éeÐÿ½Œî7àO/ûèYjp¿Aÿö2ÀO½Æ¶½§Áó{à£^F÷ø·žö·çdƒëòÝcºÁý‡ ®o3¸n öÅãSƒ÷7ÐÏöÛà}fƒëø«‡ÿzØFÏ7¸ß¨»øoüìaÄ_üÛ½¨ýëÝ øÓÝÕàº~2j7|ÛÍÀ¾vÓði\®eut@PîèÑA¹ƒr)Š¢Óÿ=aÚÄI‡¥ R/¨7)Jṳ̈ç&͘9mª¢Ø Ã‡Ž ¡[•Åܴ֜¬Le^VV^n^Ž%; Û’cɰæYsØeÅLÇèѬ®€¬y/Z“ópG@Ð쀔,kn@fV^@†%/9•ÞHý]£û⣧Œ=Ý’“kÍ=zRA¶%Ïöç„«%ÏÊê秇&·C;ÚnµäZۭµë3órÒ2´{ÝjÉp~þ——fIWÚ{‡‰Y™ÎÞq¦5ofU1)ÝšaÍÌ›lÉLIgÝë„vRfJ[J§´R‰[ÉĬ‰–<‹Ü íôœ¬dkn.õDd&±:?9ØhpÏ„¬ ý‹8¡›hoÉO7¦‹ËÌfçR&eæ¥åN´&§·qjVž…½ªŽÚYßP_dZÒÕúgXç´è‰ô™´Ì´ÜTc¾tüÁ@=±Úˆ¼¼)i¹£˜•œW˜m5¤#²#uFK§;ôìñL ]ûy;צgå¦1æMÈÊ̳ä9¹?ÓšCö`êÌ©dy?6!?'‡úÕ1Í krÖ‚Ì´—¬)Px'm¡÷”““•3!+ÅÚ ž5%-Ó:5?cžó>´²Òó32mÔíÓŽ/̳Ff¦X œÑÍ̶&§ÍO³¦€ä¤ÍËϳNÈÊwÖvÞ vìÜ”, )]rVJ;ý¬¨Í´œ´i¤`¶nÏÞMH‘ŒR»²ª§tD—™Kš’n“Ò\gõAñÔŽuöÌ…iÙq¤ÌéN®OÌJ²Ù‘$~‰è¸Ù¢wãýMf”\.÷_ª ©ÂMÿ"ïgÉ H'¡ JÌ%‚çéÄß}ôCT't#)-3)U¨Ï»XÑÊih ÓŽÜlK21)E‘ÿæ½-詞ùT%«B>GÝ¢?— ÃÊÎÚÎågfçä¦èé’3Ô;mg“#‘ÿN&'$ÿmÍT+ÐÚÂ^O­R¦INisŽÓ%ëïeÉ:ÌšÙ#d&§eÎÏRÔki*ÉšÀŒ^€CÒdè»­î”ùéüµ2©d¤'eÚztp@že^º•=?7O¾gž E´¿é®k²¾¿R¸åÕXÐæ¼žÖ’——’œ®ž{ŒŽþ3&ÅÄEΘ4‘•#£§O‰äEÑoéV^×H.ƒ™yÑÔF&×±Ô ì¾˜| 3J¬e2!5-=…Lžâù¹ÖôùTb'“ù¯Ö¹ÊÔ,¦ªÜ9°å$£Ä½Ìdk@F‡’NLµ.IšžcŸV`m«·ö÷µ!Öd<)–1ÄàÞ6ĺû§pNvð~NlÃ~–ŒI¼­0ÀUŽ„dAÕDØ0 “}&ÃÉ I‹R¬9óÓ³–( ¬yL„m¿„¬S³R’-ééó-iÄME™aÉ ÈÊç›aÍÈÊ) ˜ŸÅÞ.›ÎÍËŸ?ŸÙ¨¼ïÙ¯£Jøy+3F‚·9Ö\r™’É¢~%1´¦§e°º˜Ñ%­#‡éÄ–ÂØzs‚%󱼒딀Ž;¬3üP’U8êYjoZfjä N]uFô£×ŸÌZY«?Oª?OÐ÷'9óìbÖÊFôH_=ÃÌZÙˆ~ ñËs¾Y+Ñ?Nòã¹Þ¬•mô®Û½ZVéƒI<ÑŸ¬¬Õ¿Iª“ NvÄó¼Y+kôRºHýJvÉóf­l£ïä&èÕ²J (^šµ²þA¯–Uú§©-^¾f­¬½Ïdé}& úð/‰~ŒY+kòð[A¯–Uúñd¼’ÍZÙ¨&‘]ôzѬ•5ú?Kôô“I&½rÍZY£ß/Ñïôϲ÷¯5ke­?%ùï$ÉÿT²Ç^Ÿ›µ²} Ù±Þ.f­lDGºÙûI³V6¢'»Ù;ɬ•èç¿é½Å¬•è“ÈN÷n6ke£þœG6§÷³V6¢·’ßíóˆY+½O*ÙÀ>‘f­¬éc¼ WË*}:ù‹>³ÌZY«­TÿZAŸM~´ÏB³VÖÞ¤ôþ#}µ¥Ï³VÖè%{ë"ÙÛ<òK}ÊÌZÙˆ~ ñ¨Ï:³VÖèÓ%útA_H~·ÏN³V6êÿ"’á>'ÌZÙ¨ÿKH†ûü‹Y+½ÿr²ùÞÍZY«ÿŒTÿA_A~Ý{°Y+kõw‘êï"èW’¿÷žnÖÊštôjôÔçÞñf­lHO6ß{žY+õÿjÂeÞf­lä_Ö’mô~ˬ•µ÷‘ì³"ÙçuÔ·ÞÐÇu’}p+èÕ²J¿žp÷U³VÖÞ'[zŸlAÏL¯÷—f­lD¿…ÊÞÿaÖÊ%{ÞI²çÛ©o}¼ÍZY«ÿ°TÿaA¿“°“O¸Y+kþEªß$Õ¿‹ðµü;+kýY*õg©DOxÔg‘Y+kõKòi’äsÝë³Ì¬•µöš¥öšý>Ò5Ÿýf­ldOêH§|€¯êdýš+ÑÏôCúüÞ¬•ô÷ás߇ÍZY£—èÃýQÒ)_O³VÖèçHôsýqòѾšµ²Ñû4þ÷jÖÊFô§ {øÂÞžžlL†xê‹þ?#ñ×U²'®’=9O>Ôöð|üé²É¾Ð— ²}Þ#ñk ÿ€°Šï×f­ldŸ[Hg}²Ñû\¡¶ôdÖÊ6z·rA¯–UúkTgß(³VÖè%ýr“ô‹÷Í2ke#ûù;´}_2keíý/KïYÐß$ë‹øå¦$o— zµ¬ÒE¶´ï&³(ïµÅܤ¶ˆ{¿¥võöþVÂêKï6XÐwžèo›µ²F?E¢Ÿ"è¿§þ÷C,ó½Ä‹Îá‚^-sz“‰îõfÖÊš¬~#èÕ²JÿÝëaÖÊ6ú®/XÙ/vXŒì—4À•Yì—Œ2á.¿ôñ2¡RLZºôe¯n¼ÌæP(CQf>.eOÅ©eÛÎC™á«<µÌc¨åj™Ç#›Õ2vªeŽóëÔ2Çx'Ô2ÇoªeŽÍ~¡–9–9¦º­–9^úN-3,dê®–N0õA™å‰»iþ×ÜMó­¦1Ý4¿iz¶›æM Ý4ÿbJé¦ùÓ¢nš]5½ÔM³™¦UÝ4ûcÚÚM³¦×»ivÀt²›¦S¦w»iúbºÔMÓÓõnšœ›þßnšœ˜Ô6rpy¸›Æk—ÞÝTþ26ì¦ñÝep7ï.¡Ý4¾»Lì®ùY—»kzá²Q-³ü€Ë[j™a!—_«e†Ó\þÖ]ó‰ÌÝ5×i‚Zf±v§LµÌâôN;Õ2‹ñ;]TË,?ÐéÏj™a'×~Ý5Ýq¯–ætMUË,¾v­TË,vv=Ò]ÓM×OÕ2‹‘]ÿ«»fß:÷é®ÙÆÎ£Ô2Ëct~A-3ŒÚ¹B-3|Òu2_Óíe~¹ó]µÌb¨ªe¯=£–zà¥îš_{`_wͧ<€wcñÎé®ùʨeg=8£»fó\¦–Y<ûàaµÌbÕÿE-³8Ô­«Zf1 øÈð¼[¶Zf±˜Û.µÌâP·ÏÔ2à nUË,Þw÷SË,–wG=,äžhRþ¦¨ÿÜ3¨ «À>Í¢•7Hå}RùŒT¾&•ÿ •ïˆòCIå©*•#¥òl©œ)•¥w{h‹T®—Êç¥ò'Rù·Rù¶TþoQ~øA©ì#•“ÊÒ;?!•gIåyR9G*—HåµR¹F*7Jå¤ò¯¤²ÔÏÿ‡Tþ«(wé*•¥¶t‘ÚÒEjK—‰Ry†T~A*gKe‰]ÖKå:©ü–T¾$•¿”ÊÒûwU¤rw©ü¨T!•Ÿ‘Ê R9U*/‘ÊÒ{v}]*KòÜõ3©,½gWé=»¹HåRY’ínäò©/•“¥ržT^%•«¥òi©üT–t°Û¿‹rwIž»÷—Êã¤ò4©œ"•Ë¥ò«RyT–dµ{³T–ú­ûW¢ìá.•Heé}:È_›êèxa:ØO=é8Dë9BÇQ:Þ ƒù4ÐqœŽ ÃÐÑHÇ›t¼EÃ\§éx›ŽwG›ÎÒqŽa:ÎÓÑDÇ{t¼OÃGÍt|@LJt°1¢:>b8ˆ6Vt…Žéø„6ft•ŽÏèølì迤ãWt°1¤ëtüšŽß(<mºAÇïèø:¾¤ã&¿§ãt¾4Ý¢ãÿaøŠ6Æt›Ž¥ãßè`8í+:þŽÿPø8‡éÿIÇÑÁ0Ú·tü/:þ›á2:îÒñ:þJ‹¼G9RS+a&â™Å… .è`ج3Ðñ „ä\©¹<Äp]éèFGw:vëAõlSóa¼Îý*-‡]hÃ!•gìÞ'ÄûÜEœG[~‡>>þnOn«íeïÅy}}v²²Cí/ö~LØ{qþ >ßQß›õ%߃£Ëh³;ú¯}Ø 9ùòó.dæ¯àí7jÿèøaãï;à/ã3“ùÝ&ÏLf™¼×CÆþ¾_‡¼1y= Yb:Áô„é“í÷Ô~çºtUå ã%ã“;ÎG•_œ÷ß©¼ä2ð ä„É3Ó &“Lw˜ 3½cºÁô’é“m¦wLî Ydúó¯JRRFjÒ¼|¶ ")ÕjI±æ()…é)I¹yù󒿥eòÅ©Öôlº”Ä/ÍÏÏLNJÏÊZ˜Ÿ­°Uk‹­9yIyYIù™i|}UR¦uI\ì3a3ŸË^¬$ÍLJÎɲ,L*ÈMÊçKæ’,ÙÙl}˜ºT%)7?—ÿÉ–²Ì³$/Ì¥ûsÙò6úQWµ%eJËzLÛÄJ’º®Š¯ŠK²b1!U­-AdïÉ—1§òJR¶£•ÐJRFá|¶Žœ~3èu²’umÉduKÏT×£ÚjL–×a+I9Öd,LZ`ͤ¶ð•eJRAFºî•ÑD‹m§zqÖÃ&eðÅ\IV±˜˜½\Žo'Ö#¡µÚ_¼è_ÖN}¶03kI¦¶´3ÉÚv•´’Ä׉±Õäª$eX’Sm"‘”ÁÙ¢®J²U£®òIŠŸ™=%I](™“”Ä—î$µY®ëŒÊn¡¥BݪNg4Ò X'$º®NhÚ,FvJ¥.yv~Ùn•¯!©nñ°!µ´,Ù9­XæìœÆÙ2c'wè;¡i³HØ •Ø6¡=ÛÞ íÑ`ÿ£W±íJÑ. ßi¢] Û~ΈÚ,ˆwBf·–Ý ãýœ·'µÎö“h‡\¿=„sÂ6ûC´C¨ßµÀ9¡ƒÚ!n³Ä¼]ÊŽ¿‚ÝFíѶÝ<¢Z›R´KíxË ç·8ÚQÃ9u»û†8¿Í~ Ú÷¥óMDœßÓf“ g„ÚÎNì¶!Hbç8 T’¦OIRWó&-ɱVšnÍIOúy^jNÒBkaRv^NE&ççd[Rä3Ž,–OdXrò•Åä— _ “ò…L‹üWV¶üWnrV¶U½+MW›zŽ-q·?ÛæÁêÉ\}½‹ ¬µ9ÁVBÏos®Ðš+ŸÉËÈÎMšO2Çî¬þõbæ%§Z“ZäΡ?’ÉâJ¦[3ÅÙYÙÒù¹©ø‹!Î$¾º_ú[]X-Ÿa Vü•«ýÅP­\¦–Û¶pPÏÎÏÊɰÉg$±öàïÖ¼¤ÔÅÒZµÄuêØÜTí©©‹9vÍÊäB#&ø¾ 'k‰íä‚$’NüAÐ5â9Qž,•gèÊôæi™ÉâÌÌçärÚbù¯ì6eÊæJãgŠr’m)õ 1$‰K íoâ‰îD®e¾5·07(W>§âsùL†* ãäbkRZ¦­_ìzr8)qºôgÚb’GË‚\é)ržE¦É¶§É·;E9Wú3Ù’§õ íÏùv’c»’Ù¶6:›k÷èi‹­—ådeˆ³rG© OÚ6‡ä&m±îÏì¶fêþÎaZ­'ión‹“3lš·8—c˜´ù… 7•vÑÓÃwvBç×Ú 4º. 8þPwJ°ý)áožµ»`æº m`¸îšt«Wdˆ­ž‰d7x§žt޲éº-ö±å¦È OŠŽ–O‹Òß* L·Cê%ÑM ²1<ÓÚÆ‰ãšcô‡‹m±žzÚÙ9:½Clb7Ý%»ÓpN^\ 6‡u:À ¸â;©ÚŽ Žîv £Ôk¶mC ºšTã)•H ''Mæí4:NôÛ_vŽ¡@‘kËfàD¼š¼Ðè’`K“S&±]Hôgä[rˆã’³Ií³ øX å»ËUU!™%-r’Ssø/wmô›É¬F0{vnpVrnð”´y9–œÂàˆììô´dÞÝ3ó³³É~M&© ž—Ÿ–žLï8DÕŠ!lkÃ!2’Ò2†s,¬í2ø?]±Zo–ÃD˜z­ ×0#æAþý¹E¢ÌÜO¾áïÊdH–XŸü¤ ¸^:HBþ…m³™ÿ,Aßßcu8ðwF”÷™œ¸ŸðüþP»tÂ?.GýÃÃí&ç:–¦ÒgTíèwª¶=Èô÷få`vª£)¹¶èÖÙ`Àÿ‡ùgãD_Û|ˆ“‘‰ÿ‘°Ý”žªëhFصÜÿÐMp~nN0Eçéù)Öà\kr~Ž58I ¦†¦þàQ•äÎõÙþûHjoØèÿÿR,9KÒ2‡dS<$=m^0þV‘ð ²iC†§[[Óƒ-ùyY j‹==mX”þXhÛ…Òþß°aÞ92€ý>õd¨î—ÿ òÔ°ÐaO†Ž 6ü©á¡Ã•€aÿˆÈg¢M¯Bx»]:£ëjS´ß’CTÖge¦ç’FXƒ3(¬ ccõèÑmy=tDvÆCRˆÒV~ÉÇPºåÿt;úçøßߣÿÜ’¦YsôÞöÏHÿCŸ|JÓÿ'G 'ý }ò'ýÿ‡ü“õ^Zfp ùN¶ÿé+˜<4;ý!§F"Ä!ýÐçwÀ¬ØDˆ›“ŽÍ0²Ñ-ߨVK{¥Ž“ó÷¹oú¬”9¼_ý›ÙQµ×þèè0Òy›þ>‚ôÄSOŽøIÿÿÿÚQ$bµ‘® ©gn²%ÛÚ!ÒÉÖü’›´äQÇä[s y’ºCä3³ÓÓò:D7cJ‡èf¥å¥²µCÄIÙù™…,«Ú!ê”X2N8?-½c5¦§X²ìc©!E0jL(ØiLÙ¡GK,7&VnLÇØmL¥1Û˜” œ[Ódv„”Ç÷ꡤ´”L#oÂé8§;B—µ ­Cï¨Inh1u„0׺€e :Fš³ØšÓÊ|ºœmÉ5rÒŒ6ÅØ732®_# î xpÚg"b;JméˆxpÒi3‡w”4fj|GIã2Ó :J;+-sD‡Þ!¯#2º +;µCœOÍëP}Œ¬#ÂÑAbdi¤ëÈc3,iéyY!ÌèHu™ÖÿÍÞ™ÀUUåKÐk²©©f¼²/ "*â’"*˜–Ëóx ïá[r«\ µ²}ÑÊV+Ûl/mµrÊöÕIÛ³šj¦¦f¦ÅÿY÷w·Ç3ž ù÷“÷üÎ÷l¿ßï,÷Üs›Bs‡TwžP¤¼¡z¯¯ÅŠ^{ý¾Ò%bä|®PhD*”šó…XÃ>_]R~µÞ­†âýÄÄòÒC xCi "•æòU†*êqUGVlþ¿\:ÿ›¤úÓÆON; 4è|/'Ç~ý‡Î—`þ—G×2srÈü/ç •Ywý?Ÿÿýšö//Ÿ¨:[B×ÐÛ?#/3'›Îÿ³Ó#íß%W'Ú?äe àë?99™†öÏÉÌŒ¬ÿvÉdU4u~>oëŽ h~>"ÝÑRDEÓt¬ƒKHŒ4‘Ÿ_2ê½ÈZ¥/Ì<öŠk˜˜ôo[q5‡ Y­VjT.ÕY.¦ÇÁgla'f†™~dvØ‘Íá/xsø Þ΂ªêuT©^?Ý´ëô«áóaèâC؉a¬V‰ cµJdm¡äá4%Él>ȃPôp}›>ÌêÈ0˜£èaÔxy0 Nh•^cŒÒ‡Uí ¾º^¢/üÈæð"œóUöh˜‘üPŽ0}E“”ÝFíô4ªnºƒ½¹Åá¯j¤oǸù[LaNâ`Á=¾pLF{f͘aÔ0y0 NW Ð0ƒÆ<¥§«n „]ëáWú@øu>~•…„_ßAÝá×v¯Ó]íipÆ ­LèLÙAÐôĆð’Y‡^$ßr°òì«gkZŽâ©Ç¬³¾þ PôÏðr›¼.¿zjsÃ] aÓÚAÐÀ†µð@ ³PîÁÐîj·4‡Øätû3rÒ‡Šƒ(ÃLv{üuô »ðRûºÏ¬í)óý¤+rY]h^üŒ)héééÙAöÿgiûÿ3ò2rèû9y¹‘ç¿]qÅ+ìX ¥Š½ÿ[­T¶(#I»²­ÕJÇ«TR­ ÿôOeãr%Ñ¡Š³ÊïSœ>Åïj '¶54&ÇÒÎZUAÏ… b}Jû.EA÷¨ºén0¿¡»ƒœ©¼o±À¢ ²ZÞ‘ÚóLyÚä=܉c9èÒ° é¦~ÀF*,¡ !!Ù@a†´æŒò<Ę)Åqˆ(´ÕÃ2MÄ‚ù¹§eVßP²$"*ºþ¯fô',„âÆ¿›ñ ã…•JfÅfB`’a-Ïî ,îÃj§L ¯UB ɇž†>ãæL£„ñFs¶QnÀc+EÞÑ–ŠàNÀ(£­ü›8Y ,)Ë•ebe[°²M¬l –©|f’‘c¦E3•Ì¢`¦rYËT*‹B™ÊÔlæ49ÍfN³‰cQ°fSÉš-ŠÖl*[³EášM¥k¶(žYIéß‘ñÚÿ‹«ã?݆ `it0þËÈÌÎ5ÿòò"ã¿®¸â•Ie%ùÊh~D§Bè´ó¥’A_qÓ]«úHÏY­âU•&îTªJ=q;JSêV`^ ¸|Š7@nÔ:]n»\UµÑ%#Zcãë]nUÉ8%3O‰³Î‹’„Rqû=Z–ƒjir\l||<ý§°=(| É? A±ud RY署Ï$#ÅE±tÜÛÐB^µ±¾Å›¢$ÔzüÞd¥Pá(¡ È¿×Y¥ÏTN:II E 4;J)ŠIâyOTS”¹tð“FÓJKHH#ú蟛<33s¶’¯$.l'Ú$rz“ÓëVâ…¤J~¤’¼ªîZèð|¤*‰ù‰±18€ç”Å‘ñ½Ÿ4_Òi¥…$É©³ÜqŠ«FäT),T²Ì©ÌåèD%éצ—¢ˆôtÉ 'i-!­¨¤<5Xòóµ:ôEóêŒÿ×6oO£ÿŸž——eôÿ9Ù¹ÿßW7öÿ™¹§d…ÁÿkZJ¼¿nœ‹œ¹ôÄ•ÓÓŠè§¿Žüà'­“_Ä1%6&ƒí¦B ®ÕAÏŒ#¿W‘™¨ˆÄÎ'¿Ê¥3Ä$ j™¤–¦@rÌ—Wép”LípÐ_m<«È wªa°ÿÌŽ@GöŸ›gÿåfEÞÿè’«[ÛFFøì?Óì2•E ET©I#))éÔf3 ´že‰¢Ä+ÕZgU‹pW{ªôLµ:–!§ªþ€×íSä’“ü§Ô9}u´"HÝ0ói¬WI‰–¹«HÅkô9T…QœD’ŸZ­Ty¼^µÊ_ß’j;0’™ϸ( öŸÕYûÏË4­ÿçfFÎÿé’«;ÛÎÐÜðÙ–Ùþ³:°ÿ¬Žì_ëÖ“iYJ=—!9#óIUñ©nŸÊg–¼RnzÀ(C¬{™QècŸ¨ðSߥ³ðuè²Ü'„Áþ³;kÿ9Ù9fû¬ÿtÉÕí?7,ë?HK öŸÝýgµþd«#“ÌîæË·ÿæÎŽÿ3Ò3óÌö™ÿwÉÕ­í?=|ãÿfóø¿9¯4’lù´Wõ5zHwæâdª®=p¦.â$m€Àâ³ ô«IzIéÃÕR”j‚G½¾9a>õop6&÷””P—’°0¹0mNÒ¬ò““gåÏò NJœœV $ªHp2 'Ž*6&†UGRÚ,_Ñ,wšV€d”Ì©ÉÁV\e­ts¹Ây…Áÿwvþ—•žeöÿ‘õŸ®¹º³ÿÏÉ £ÿ7Ïÿš³°ÿ‡uÙ€Oõùê;^ =ð¥`ôè:áý™—‹Å¤ÛH’ðd’ÅO@qNíc`iÍCššš†Ð-MCÞz•~¾B­Ž##UúMG”¯‚ØúT’H<¨“ih…¡ ó_‡Tˆù’@7’ÅñŽ$U›ÈhùŒÎDøÿ0Ž{‰¢Ö“9ð"}Jš¸ƒ¨^u“àÍ«_WQ19-#5GeM‚žV.ÆÑ‡®ò÷Â¥JÚœqDCóÓ’E«³õušL*I‡…ñ&\ÌNbJ@ž’N¹ƒ„’$+‹+Z`vvKUâ„t‰å³(%¦ ±’vá!ò®¹EÚ¯ùJb"{æ:²ªJm$¥œ6ØÐ”‹žï‚!€úKíg5Áó™ŒÙ"¦‰âª^Ó)6¦PÛÔ—dgO¤H¶O2ðøˆ}œ7…´h{e(ñ®“J*”²© 1q¥dêÔ²©Hïh†âØØ‹ýÊa¼Ùæ²BRM4tV—ä6KBc>j˜Ôp¹áƒ*mdÅ Ÿ‰Ÿ•Ëf.ÊP†g¨aÃX?‡³ØÃ† ÃÂ3dÌãOc&ÒðÐ4³ƒÁ¤Ý(6„qà¯XLŠ\¿¹+ ã¿Î®ÿe¤çeGÆÿ£«;ÿr3·þßl^ÿkÎþ_ÎÿI¢'Öy -Itxôe :ò©«S’lü= òÞ×nU 6†~«\±(¡Î»ˆ/,YB ñ˾»˜EòJçÐÝ—5#WˆWgü¿ÍÁk¦4:òÿ¹y†ùéÒ#þ¿+®îìÿ3Âòü×FKùV`eJÀU5¿¾EiôŒâ 2¸ütÿ©†&5‘Ðײַïrׯy*)!Y·™ŒÎ õû©4¹E_×0Ææòºq<é8X~èG¦}I‰V±E žï8·GaIˆþF쳕sœ¤1è§1H#ºèG '•M*á¥Uý-Pãj†ECt>Ùå%)TÒÙü6†O~Dñæ²ÐDÝ._Ò#‰RÅ•*ç©U~…~0_a;žÙñ>_@õ*æÓê­Ëf:‡Ó³åªëŠ',-qxÜ*Õ¢$v‡Ö Ç`¶%bÓe’JlLLª’¨ÏAvÌt±(z¤`’rëzN4H!ë%¡YöÍöÝ®•Ú…¥ î„ÿG'cO££çÿÙæñNVäù_—\ÝÙÿçfŸÒyÿ´T ÿµwi“Æ–T(Jáp%=…8îdbŒÖ–(#*ãß0ا÷ÿeÇôùvÄþ»âêÖöŸ†ýÿXK  {€¬õ‡Æúhì¿Óûÿ,í?'bÿ]quoûcÿŸm¶ÿllÿÙjÿ‡ÆXì¿Ã…ýçEúÿ®¹ºµýg…aÿÖRƒýû¬g¡Ù¿/bÿèøØ`itdÿ9éæó¿ò"öß%W÷¶ÿ0¬ÿê´Ôèlf¡z€C` ûïhð«ì?2þï’«[Ûv8û‹ €ÏfªýS€0ØsçÇÿ¦õÿ¼Èû?]sukû'J6ûo6›³õø?Óoþí[>¿Âaÿÿ›çÿ¹é‘ñ—\ÝÚþóÒÃhÿãÿf›ñHàüG…Çþ;;þ·´ÿÈø¿K®îmÿáìÿ-ÆÿÍ6ãÿìÿüGuÊþñ·Bƒ¦ñkžÿåFÎÿé’«[ÛNæÿXK…ùk'ãáÿ¸’‘£uÿlÄŽØ?ú°o°4~Íú_VÄþ»äêÞö†õ–@–nøÀà˜„Ãþ;½þoñýŸ¬Èù_]rukûÇù:-5Ú¶nøoeÿ%.?)&?ëKñð_:ô ¿¡©A8ì¿£ @Þÿç¦Gúÿ®¹ºµýge‡Ñþ}öﳜd„Úÿ[€ÂbÿL:¶ãùŸ¹™‘ïÿuÉÕ½íh8íßjೞ„î~ëS€°Ø€í?ÃÂþ#ý—\ÝÚþ³ÃÚÿ[M|Ö3lÿ!ø³[Âaÿmú5Ïÿr"öß%W·¶ÿÜ0¼ÿ£ÓR£ù7[ŽÿCëú-@a±ÿNÿMóÿHÿßEW·¶ÿ¼0¼ÿ«×R“°ÿ‡è~ëƒÿ¨0Ù'Çÿ¹¦þ?#²þ×5W÷¶ÿ°öÿVãÿfëñ¿´ÿxùñ"äNô+ŸJÊa88Oux¼ô¨¦åDtf«üHRjj*=Ú¹#gò¿™AtÆþI®é¿=ÿ'3Ëüý¯œÌÈùo]rugûÏÎ ÇóMK¥ñ‹;Äòãgu51b_ŠÂ¥n ¿Óü 2\ÆFŠ@?g¬¤)Iì—vâ5?èN|«V}~=âS;ßÚð;Ítþ{­Ç¯M¿?íWÝÉè¤j,A#{U·£Ñëinqø«HÞ=n·ZE€7§l8=»Éé&êíu¶(Ep”¶ÀŠƒÖ’á´x’f?GŸGœ_1OI­NUJš«XÛ+>OƒªT;ýN%©Úãr×ÒúQDFñ{]D5\5 ‰CKîmIN…“ÍñQÙ²òéÇѪ)E÷mi]åÁg¤‰#e‡µÁÙr……ºÏU[rçb˜ñÖ8ú k‘P2OIÿ©jÞ0¢µPãÐaßw8ëëõH‰Ô«G©ªWî@#T¶à Fçehrºü4Ûô4X¦o¦¬dXêÍõÙ,™Ì %ãÊkü^8‰ŽëV—ˆ¡bDz¯€“ÆúÓ3ÌŸ÷ŽÅÎg°*â#Tzh{ñÈ Gy”\(«NWu¥ËÊi?$-ÿÛwõÕÉþßÊ ƒþ?73Óôýï¼ôÈþŸ.¹ºsÿŸ•†ïÿa-åg¾²aý(§ÏUE<Ï‚é@•!Š<›¨Ú@\ðB2¼÷בÿª]55¤¨n?¯Ÿ¯žºJ1^•j•3À¾õI£yHE¹‰ëôÕüÕž&þ1P­óNe™!‰¯KÇ$!~©¦ÊßLÏ?gßïøÍŒZF{Ø—AÜ* s±å(> ¦‰ñ~­˜89ÖÛRqZJ‡ür+ûdJ³ß®ó­÷Ž–dˆÌû|dÔã®õ%%€E§c¤J"Eê£2àWÆ'6(οêUT'QÒ}щ$•åZê Mî é;ëk=¤fë8èéíªÕÊ@m­³ÒE´½…¨¼ä¾§Áu¦š$¿D›ŠTº[mr4;ÈïI£Lø, ‘Ä' WÌp˜‰Ét‹Û ŠTàSýO#­FŸPˆ“Ê&;FNœx ) Pb²iäSLÏž Z™¨Ô#t³Šé±ÌDEyCHþ!©¹GS fà Õã AR-UÃ̹Áª¡©®’$4ƒˆù”DŠO4…–PâMÂòa5´©-’(nÂ1e°\õób5Éiz^R’;–¬mžh ÕT'q“®q‘œ'IŽÈ’ ‡œcÑŒ%¤z¼²â° 6ÖÕ·Ë–öá+q[~ê ÁEN߯â_ïT±S¬õ.=z:‘j­Ð?ó*“ÐXhzq ÅáUàâ_¿B,úõ%^ìFTí¡a­é:ùdáiŒò‰)J"£hL*ô ,!='i ×DŸå¦åaÕ‹Ãä©Ñ\×HE“jÐ%(Ô0.t‡ HµVjœ$íj]«°ïXdaaúi­`ꃶúþEç ‡zú9Ò˜ ¢1Ü¿‹3É…BÌ¥­êÅéìdÎ’Èé6&EÄT/åsŒåÉÛ8«K´rܳï`M™Íàƒ>g¦]š3óñÅÿjæL33g“­tƒy3=5^Á9ãÆ—j¶>*IuWöÆùЉ †Ö Y2¤¤´¯_9c7~2'¤ù»/2ÿ\œÿ7‡aþŸ‘ž“kšÿgDžÿuÉÕçÿÙC3Ã3ÿo6?hæ³mm¦{ÀŸ©DSe­/eØ|…à ”úî ŸÓdƒùAÑEðYð‰IøåLík)ˆd‚ALP×Üq͇êÕ ÿßàœ¯:è·‡;ëÿ3²Ìß̉|ÿ±K®îìÿsÂqþ3ÖR´þ[âôµˆ·:œnWc ž¯RxÉ,„$îÓÖf€z‹5.µ¾ÚgüÊ•=›Îkrò»ôKQÄóÒÉ œä«sÕøA,EÑÿÍÖ&ØÄ±p©âKKš9gVÓ¬!©³FÌJPf'§ùØÐ½&)îÄOÌLÍlŽKñx«“2’“Ój}¢sÑâû½3•Ù3OžM™¬8ôSÔ,C…Læ$Ý7¸«ê<¸@ò[UüŽmo•é-~Wgý¿Øð´ èpüoÞÿŸ•ÙÿÓ%W·öÿáøþ—AKÅßÅ~íßÃŽ]ÜÖûvÃGy…]PâN\†‹õê…Îú€j 1©“ÏOH£_ñ•âôÖ¬æôê"ò?' Râá)c“J*¤ |›t¤z+ÕzO }ÜÉó?òEЧN£söÒ¹C1ƒûw!qñ‡ÀÕ ÿ;½þ“iþþKFäýï.¹º³ÿÏÌÃù¯XK…ó‡[Âó»jøc¼ °PÉL¦§CŠçête|a&}(KÌs·©ÖûØÚ!^–)^VHñ2Ò“õñüõ¾…¦¨ªb}é¢ê"I÷ÎëÛºv¨•ˆ_ÿtuÂÿÛîï1öíÿÏ6¾ÿŸ•‘™9ÿ»K®nìÿ3NIÃûÿÁ´T|¾Œˆà=> ]N…h…›ØB5dW*,z í'<$_tçøB9‹ðÑÇÎtC “KJNå G¶)ãǦphæ!ü6ãt¸ƒŽ}ï=%Wç‘›Cð†&±ÙƒŽI‘éHçó_)Èâ9Ë(ÉŒqoŸ1O€KQ4ž~kŸî‰q:ÚÕ—ÎóOÄØ¶·b­²èîcaFúæÓ:g‰(t€(ùU«þ¼Å¢<ñlÝ k“º)›4©¤¸ÂWWQ19-#5‡¨V›<áT<Û1}-T†Iäpú¨<^>é‘I'úÿFâ%Âôýóþ¿ìÈ÷ÿºäêÆý?†áüO¬¥¢×‡[ºÓ¿&—•WèNÿ¶6Pˆ|hLÂaÿÿþG†ùû_ûï’«[ÛNÖÿtZjtúÓ¿ÔÇ…Åþ;ÿýo û¼ÿß%W÷¶ÿpöÿÙö¯?ýë@íÿ·zæ/¾Âaÿÿþ‡Éþ3"ý×\ÝÚþ³Â°þ§ÓR£ýû,g!Úÿ¡°.,ößéóïäFžÿwÑÕ½í? çÿèµÔä¬g!{€ßü ,ößÙïXÙäûß]rukûÏkÿo5ðYÏB¶ÿßü ößùï×ÿs3²"ãÿ.¹ºµý‡ãü_–Í¿Ùrü’é"Û¤Ãbÿÿ›æÿ™éûï’«[Û^ÞÿÖk©ÉXÿCó¿ùÁT˜ì¿Óã û¬ÿwÉÕ½í?¬ý¿Õø¿ÙzüšýÿæÿQ³ÿ@hÛBÿ›ÎÉÉØ—\ÝÚþsÂðþ'ÒRiü⎢üO«PByø8”vÿ„Åþ;Úþ‚ý›ÞÿÎ͉¬ÿuÉÕ½í?'|öŸevYŠ~ð`àPý‡Åþ;Úþóëì?2ÿï’«[Ûnûÿl³ýg+úÁÿÙÿ¡0ú‹ýw´ýçר^¤ÿïš«[ÛV¾ÿ‹µÔ`ÿ>ë@Gÿdìˆý‡¶ý'„õ?Ó÷¿‰ ˆØW\ÝÛþÃpþŸNKÀfª8¦á°ÿÎïÿ·°ÿÈø¿K®nmÿÙáìÿ-&>›@¨öLÂ`ÿ=ÿÑjý?/'²þß%W·¶ÿÜpìÿEZj0ÿfëñ(¦ˆìþ ýwvüožÿç¦gGÆÿ]rukûÇù?:-5:›ñHàüG…Çþ;;þ·´ÿÈø¿K®îmÿáìÿ-ÆÿÍ6ãÿìÿüGuÊþáÔÿg¦›æÿ9¹y‘þ¿K®îlÿ™a°¬¥â¼ß‘^¯ö]^î¦gèÑ/Ç’(Êä©“Æò#|!²’TŒÏôº>U­vÐoh³ïªÕô¤¯ÚjÓ×éÁj^·¯†Ü‚Cúpìdú±å!^Ew“ÔB ÐÄg¯ùéfÚ½„’I§-J,;Ú1ydŸÄ%ìˆ2Ã=tNÝÔ‘“F³’h±’’•“R&~lªßå¥ßaGÓú]¤Zèwç]ÕZlyÎ /ÊâÅ,Ç:ÏÈ+ËQ­.tU©T‚U -Ç5³H~¡y*‹ ¸ •ªW©Uݪ×é'm@O¤QÕêAƒ™>—¸ÄP¢z“W™±M†øÿÊ;Ír¡Xæx0ýÍLëq*ù«¼¤dô’d¨Z¸…"¢%¡òÑ!*j(ں劣À2Ëö5˜b¨Þ:O“ƒ ¤’̾輂õj}Hta‘«W'úzâ9ý¾³ƒh“c¾Úb; è ÿÏÈÎ1®ÿåßéÿ»âêÎý?}.ÔéþßBKŸ$"J ‘zÉFR N¿ª9ÖÒˆ®W¹§}ÒH$}¢alPåo¦_èUm¿¬;;VœW*{øxeŒ§¾ÞÓD­e•ëôÍW>_“Ç[-»aœQRË´ÇTÝUÞ–F¿Z ß|øTÇÔò‘“¹ì’…öå2‘?™§å¤1ã'–Tœ>¹Ä1¹¤4È÷áãp²sÈÎL•GÍË”QÝéÓEõrÂF‚>e«ãWÙ¹±èV~f³¢. õ¤‹46ò¡ÚSvÒÿ³“ô;ÿý/ãû_9yÙÿß%W·öÿ™axþ‹µT,ÿÀ-ê¹ –¾Ûæ &òwâÔ¼pŸøcý§Z\¤6JÇ—–äçrúÔÜl6g€˜Â¹Á7:èüM|E#‘}.c½ëñºÎtò#ª ÄU¥$ÆÆ¤ê¨ùùÄÑ{ªÕ¤8¯e*.…:¶Øq8N?¨¯cr‡ª“‹\¶W'ý?=9]õv0 èhý?7Ëøý¯ôÜÈû¿]sukÿŽõ?{-•_ÿª¯VªÕF¯J—ÕÊÈÉãµa¾ED9ÚWN2ͨƒ§¥dÓ ’)þ‘^ñý°`Þ×".òű_=ÿ&”³¾¾SßÿÎÎ6íÿËÊŽ|ÿ»K®nlÿ§d‡áüƒ–Ê! º‹gîä~J]imTéñá&¹—);®tø˜ EߪõÀ×ÜÐsµ±¾ELöñÇÄ5üp%™…bˆ¼~ù–dœgU÷å>„E ¬Ì¼ÜS’É,˜ýB&¿ñз[ê¤å÷ÖÝô;‘¤Ìª+Ék) )$Õ¯ºkýu¬ÔH¦Z­ Ô²˜I³xÙS”YL}&Ã"´ÔlŽÎO””Ñ’åU˜ZÈ„ä#Ûù¿Lø`£a¤‡þ€8þŸNc‚uŽÿÌç¿deD¾ÿÖ%W7öÿ™¹áôÿBKé¨OÑÝd®T™I|Dƒ³ÙÁÙìd}7ÁfêI läwÅÇ03Óg§Èoa’¿2fÛoÑ»{ ‡ý³jâ:°zØ»Ñþó"ïtÍÕí?=; ï™´TLûXA~2~©lQŠë)Å­L÷¸k•aUô¯ê¦nÕ_åiH%ÿ†Çb¯!ì^ºjµÞÕ@2bp!ćÄóE8)ÐàòÑoE§°‰aB #wÕf—ÏïKQ<~R¡M.Dƒg¹ilšœÂ’SDõÒ›Uut» Ÿe¢4•ª:'ÿTü@µÞqõcúVlØËЀë=UÎz%a¦·Æ+µ:ò%yæ9S|~/}dEÒÅ„¯*ƒdvDU(Ô‹j—Û1QL£û&D©È,Šˆ]Ho,±ÔzRY((n–;NYÂÈr{üj>©Ëc¡³>@3ÛHü²O¡ß$yo¬wúk<ÞÃ×&IÂI”™`‹â˾ÍÐJ¯Œ¯Qšˆ©8ªì;ãD+•ôÔ¡©¹NÅã%ã]?]S&UN7kv:ÒnTÕù¤aÀ×HwÑøëHúH‹§ŠÛ“RG¥JRÓ§øÔª€×åo¡‹ d4Þ@ÊçaEôÙ‡ I1E\v9Ý- ª¨No½‹¨•ŸØ6'jV]íõ46’ä};ô$]—V6¹dÍöi%SËÇ—MrLšV:ªdª2¼PIoNOJ‡w5ü;¤HQ­fQIÐøH bcXeÓVc¶“@«G„’¿Ø'J©zÜ**˜°fIV†éÌ„>ÛģЌ±ZE4|>-ž[¥ß–tz[„á‘Ö©Uý|·XµÓïäòV3š3nL4+xFcœMQQ:›0Q:3ÝfLº_ËPªˆ 5BPWd ¨3æ"]äCªV<§Ó'´Ü:H¨u`UÄ’‰ˆ†âMNd\îjµYN´™uòÝltE¶p¥×3_uëâjþŠyÒ2I$ZÎûg•×C=Z“‡}¿—ÙiûF/óàTˆ¬Ÿ¨ë@(Žjˆ‡vDĦ¨sQ —œÊl»N­š/ãÓM†N’0éxø-ê;ØŸò©Iy‡£úàåT†(LucâIÅ6Õ9Iß«&Ã: ’ñ§—v¿µäoZPº³qAÀYÏ"¸¥Kó@T¢ôüS­´´š!—G”€¾Ùæô:|æ–ŠQ’¤2#ò¾:ç|R¬«“yH&¾ÈºqŒ3fûIô©4›'³ÙAŒÁs+ ¹Ñ¦O_a6—H«‰š9HÍÆ{¬_Ùng”L-#:U1mê$SÃq“'¯ßSå!™$ƒ¨€W,-±Ç¤ú«IÜ2¾"/¯â$Ý>]Ö*‘Ë6¢Ž‡½ Ò¤q}>¢VneLôwÉùÒ‡.ÌRŠEfœ¤`~ÛZ³öD¸Ì¿ªÒÊTYdtçuz[Ò º˜ú™ŠE¢jÅ™(âLÖÅQ 5”5Ê^ºŒÓ/Œ$$ä+ÊÅ œÂt>&NèbŠ˜5¦$ "Ê.3'Ó@MA+µ‰¸VæøfM‘:, Mb‰¬¢°}¢ƒ2ϵÉÖy†§¹y·QMÇu0éfƒ9ýÔ•ü•"Ê#õ\Wký.‚ÉwL²—(°4ϳ¤TÒÇØ±šå$I7J—ØŽ@Ÿj*LÔÙY]Íy‰AUGÕ(±²¥G§Ó”añS>QbÙ'™"½ Û#¡_ÒXHŸXÄÄÒŒÜà#™viÁtÆÓñ*ÍįZ ‹ÁË`tÕGÚqó |¤Ëb=7™.¹i'X#ršÂ¦=À©"mÇæ\tvåç GKÀá9—kI¬N\¬¢Q=^W­ËM:cÊj »ãjyÏÔĆÃt •ê¦Ãb:Ÿò«õ-©,ût+¶Ðn%Þø´L1=,cO¼¶«Óø¨Œ‡³=S"…艎’Ê«%¬ fÉèAÏѩȡÙiuÎÿ“ÑR‡_íxÿVv–ñüÌÈû?]sugÿŸ¦ýÿ\KÑ©Oüh zf]'B—‹=Ôu’‘tƒËO*BIâ}êéüŸ}î!ŨlFE&N$>ñœü¬áWè9Gìèúbø!þ‡+ú?º1‹SèûÞÉh‡É {œnßãx~‡Žhs ”ñì)þpW{U{žŒv§ë^R% é@øI U££Êãv«UtyМ7ý‘K!M0仲ðÚ&ßNÚc´‡ÎûHGG‚\|=ÒçÔÔˆ­»Ú’@1ÝÎJ»<*N éX¨z}ü)¯ÛOúÉÔÔTËíìÄEü Û—”\€ä–ÓÅ12uvúùúïøÄÅYCwΪNÞ¥M`$®VÒêš¾³¾–tŽþºŒg½"›^Ö:+]D=[ø¶y8r1 7m-RïnµÉÑì ¿Ë@R¥ª^uº™v/åÒƒ¶HÌÄdº»wE‰—h=UÀÓȶ 8©l²cäĉš%&Ë—–ycÐÕй ”‰J-17sµ¥g„ñ†tþ=—gÃx†œf¥é†*ÑB54ÍU’„f°§DŠOL¶Ó±û‡T*ˇEU{Aµá˜2X®úYþjªIžH³ó’VÑ% º“Á.O´†jä®^zŽšÛC׊GV8Ê“ ‡œ“˜lÊW ©¯¬8l‚uDõ­²Ÿä-¶{„ŽÉ\$ÑtþÆFB£Ü–:]¤·pÔ»|t§mb1ûS¡æ+T&¡±P7ô¢K@(ŽxCÉE×4t,º'–¹‘ñÕnÖ’®“O–Ûo ò‰)J"'jјTèX"63±¸&ú,mu‡™Î®µÚt,Ô–¿îw[q©ÖÚV ±ÔšPuVujÁ6 i’ˆ]Cªø[Ç3‰©V²‰h³œÜôLtF¼˜!ì—«ÄÜ8Ò6Zå‹7_R•¸D¾ŠhLŠˆ©^¶ÖÅ0ՆƠYE-@{žb^~ú ¤¤¹ªN;š=5"ƒjôv6 é9TŸî¡äTØ„šKŒèR©O¬þÓbÁŽ=Ô«³²ñUBnjlK¯¤Â¬‚àÔ¹•¨$Ù¦BOɘ=Hż²Whœ<ña[¨›ìçaQj‡o÷KðÕ{šøÞ*ñ+ë8é~þœÄÃ^7c{윕tá“¿È£p¥ôñ>®lj ™¡ÕüÕôÁ¡ôˆ)t3!sÖ×°í*|Mòðy:Éy#}–Hë=x"ÙæT£W”O?kø#"2£µñÏÆ1>>ÂlÈc‰Ñ뉽  ©€. CûÓ¸sicCëɦÆ-“¯ §j¼ªªàìÙ.&SIj_r¬C ÁÐ:JK†””>€7Šl/m­åR³n‹|[tfãÈ`“wb-‡æ¤=ŒW'æÿb2V|^Õñùt¾,çÿ™9YtþŸž“™ÿwņöÐgžÁÒ õ‘““cÝþÙ™¹™y¹¦ö|ÿ¯‹®çyè1ò£ùw8ÿyDTÔa‰¯‘ßû‘ ÿb£Õ{†ŸÞë!åún$÷žþFÈE®È¹"WäŠ\‘+rE®È¹"WäŠ\‘«_/þ÷￈‰Tò¯/ùw~tTÔJò“Ìõ£^"ÿs8*JfT"Ñ~Òøô¯ÃDÃA¸j¢ÆøGFEå\Í~FcftÔYZœ*þ Þ†qóÑQ³&ñŸ=ÿîp°wclóÑç_ÑQsç?{YÖãki¨ôÔ;|þ@¥£î§è¨ÌÃùÏ(^ŸÞ¼,‡q‰ì¨SëU¯ãŠ^½£bûñŸº«7®€»Éå®v¸Ü5 Æý{G?££¬/š¿hÖž£GVŒD´-Ð~J}uâp¸ëe54ú½–ñû‰Ÿ¸þiÙ³zHF½3£‰û×hþ3h^rQéËpFÆ[zÃbfô0ü~ ‹;qü¤ %£ÇË:ThÙ{°Ÿ¯Þƒ¥‹ãOþKþ=¾ê»)[6•·d^7{Pî¿®Š‹Š:+]Ä@~ ?ñºåhò÷Í£¢¾,êuÊŸx¾('áôÞQ+H"ÿ~¤wÔîyÜî&‹8èÍÿ’ ”‘JÌÁ1\÷ôŽrõ4ß§õ-Ò¢Á}bø¿´€Ï›&öJù|õ©ô¼ÇSR«[ÈŸ,Î)Äaߘó袱xé(^¯ž=Xíáxg¦fHqSÞúö\b’/oñùÕ†ÔQ)rE®È¹"WäŠ\‘+rE®È¹~c×´Ö—9®uöw­·.ùé3zofë­»Úz¶HZ¹½ÿЫɶ¨¶ÉG,¢Oë´Úú¬|Îú÷#ûöô—·õh›Ü¯md¿6ÿºè•ßû‹wD'ÐøŸ]ûE4‰ÒðÙÕÿˆŽj]œpDÛ´Z+úµŸÖ‡üèÓ~QÂÅä~EB4•ÙC¤kú\Áò#sqGôã7ŽžˆÉ('C”D¥ÕOåG#yOktTTÿg‰òO?­üì/¯¢Vx‰Ûý¹Ä½õM4ûE8E†?áˆpv父ØÖÒ×–Ýz„”¼$×É[ù’§¤ˆDæ ‘séÀkcÚl¥´æ£Ú¢ø~DLtÿ÷Uh5• QÓEÔ‰ìN[ôm#úµ–ìn+}­mÚSíÑ«“w<¾¿gYÿ5}¦i±¿ß'cÿókû÷Ĺq¾ùHr¾üܲnÿ- kÁwáÖÏmjfÙ¿$äFIC@ÔÏmômÛ·r?‚|þ‘Iˆb—“=ßHÈsr‚ìùPBÞÝg““_KÈßd.‚\KöÙä¤èK ùAŽGi™²Ïªi~* ½/Õo¨ŽBKÂþ÷%áOˆp)"¼ü$¼ð™¥áì–„TD˜†kÐö™M}î[BŠä9 c>ÃÚ>ÊO{@«Õ oHÔL„zú µÿ}‰úñSœŸ´ü½*! r‚<û>µªÏ.IX†Ã¡þOq‰.d%ºW+Qÿç%êR„úö} 5PÉÖ™yFîA„»ዽ’ðé'¸NGêÿ„„¼Š õr#@®ÃiheÙò¨„ü€ ‰âÈl»œ”=(!Ç_¦A>Ø«ANȱŸXUÈ–­ oˆ°ÞÙ# o|ŒË‚Úeíâ@™r1@.øØ¦,i·IÈrù#‚LÈÄmju×Mr‚¼¼GƒôÈá[UHÚ&Iø+"¬E„çÞ“„§?²)Ë® ò‚œŠ +rÖG6eñ\)!ý/× ½¤ v9é©„d!Èö÷4Èÿ&!ßhãŸÓÖKÈé²A¶ä. Áž­ìè$ARo—Ïè‚äCó?€$Úådm›„lAÛä“ÝòÁ69ÙvOÙ… µr-@®þÀJÓŠ6IÂLjp""8€0ó›²ì¿]B~D½»5Èqù£e6ö_% ®Ð× Â[ïJÂkï[ÎZe}A„Yˆp .|×'ê­–­’Sä™Ò÷mjcÃr ©AWÞÕ ýÒç}»–=KBÎAvÙñŽ„<¹×r4²ú)D˜€+p¶%aY‹$<€1ˆP „"K‚çv9Í|hÎaþ „Ÿ÷ØÕçB™"È9òÈÛ°þ!Øy%¤ï•¤Ašâ³Ë‰Ã#!'#È¿ßÖ ™IµËɲj )E{äïoIȾ÷l<ê–3$DE7‚Ü MïÙèØ®ér&‚$#H@ïÙÔÉײA>z Ír‚´_ÄV$¦Ý‰t~*ÌJêr„zõM‰Úõ7<_cØÒÛÐŒ L¢¶!Ô$„:P+þfS?ŽR yAb¤ E‚s²m¼„|‡ O½©A~yCBþ»çä6-'ÇHÈ‘Wieò @¶î¶Ñ™m#%d0‚ä#ˆ »­ëäá=Ã{Qû¦aù‹¸c„Bw·ÀúÐâv[*稈s»äD!Î{¯KÎ;ïÚÍô dÑ–"šã ­h—äâwm4yàP ¹ AŽC €L¶ËIQ®„lE×_× ýÒAÚf Ís®—žóEÄiGœ¯ÿÇÒ{§È.u/"L@„•@8û›:ñ\ ³ñ=‚† #2ìíݳFBú_­AMƒüøª„üð¶MN–%Ëâ$!Èb¹ w¿m““¯O’ÉCi°ËÉž=¤AþùªIHÒÛ6z²g—ÌÉb¹A>}EB>|ËÎ÷ÆKÈåR‡ ×äš·lròµ"!÷#H<‚ÌÈé¶9ù³„¼‹ ï½¢AŽÈÛœ'!½¯AþA^}üÿ›v99FBâ¤AÖdõ›v9 !eÒAƤÄ6'GJÈyþe  (Ûœü^BÎG•²í%xþñ†]NúJÈ­2AÎÈÂ7ìrÒGBv È/i€dØæ¤·„|Š ÷!È7»`ýóu»œô”¾4ÈÙ ›0÷ËŽ( ÉB©H¥]NYÒÛÏ@OwiAùóë6u²áyéç!Èu²ûExþ÷Î ;¥eÈœ,AÙr)@.ÂÒ;Q¸^z¶õr,‚LÈ$»œìO•9ÙŒ ¯¾¨A~»œìJ‘gd ‚<û¬ÿ¿ŠG•lÀëíý“$ç3ă8ggñ«6%êŸ(!½6jR<]f¦_Š3S/9 â<ø‚Æùö¯’óõ+65S'!EâG;rë+6%*ke’† .€¨69yxà@9<A>ÿ«ÂÑ-ò’v<ÐŽ±ÎçÜ„8×IN⼺üÿË–¹âœ'ç ÉÁCÓ6àœûrü|8œžˆS œ"s~ðsÛ‘~Ôµó±Z…ÿûy‰úî%›VøghziA{²AÚ¾B÷ð·è8Éq!NâÌN-Î öŸþ+¥òåóä$€ÄÙ•hÃÑr=‚Ü„ ï?'!ÛecHÈ©D«r†à‘aÙ‘ò9‚üA¦¤|—Mìÿ8Šë4È[Ïi?ä÷»°£`§ÝŒ¼h¬DÅ!T;BíxÆÿ/ÚyÑ>r ‚ŒCs²ôE»6:LBʤ‚dè‹v5ÓSBêä±g‘þïýÁj:“% +a1"Ü„»- E¿ÈÞm#"ä#‚/ØÔFÑÏr?‚ük‡IÈÉ/ØÙÎ$äe¹A>FB>ù«UY¶}/ G7"Ü „M–„=ßJBìõhüƒ5@¨´$ìÿFâæžÿA±$ üJÆ"Â͈ðÁÓ’ðÞN+†/$a>"Ô ÂF \µÓÆöÓ>“6„ 32Ý2eKÂ=ˆ°çið' ½ÓF+¶¼/!"ÈòÚSòÒóVÙèÿ®$ôݤf Â…@Xó<® äy¶¼!!Yr‚”düó6eéÿª„T È‹Oi>‰¶,KÚK’àF„óá™'%á‰ç,åhVD8Vá,K‚çyhVD胣€0ü9›úìÿŒ„ìA'ŸÔ ??!!ÿyÖ¦>×>)!‡ß A–"ȹ÷Y=ïÿ¸„¤!ÈPñÄc—Ï£2A¾{Bƒ¤d°]Nv=(!‹d ‚ì{\B>Þa““²û%äJ™‡ ›²q‡]Nî•'äDqd¦mNî–Odïãä8€üÑ6'[ÀxoÔ W"ÈëÛ%äågpNnF­³šANCu9ÿ;½IBÊäH™±v9Ùr„øä¯Û5ÈaéùŒ•õíÚí‹«á©m’°ýiËjŽœYï@„qˆp–ZÎ’„Oá0D„a–„=WåÞ„Öÿ·i„_ƒõÿ§lt£èrhVY† dëSVÙ(»Ì ¡ >KBÚ’ÐŒ?>¦r€aI(Z# ­ˆð "|û(ÌŸ´,E›$\Mˆpn·$8Γ„͈ƒ Ìë6W§­’'ä›G5È`€œ„!ºu’å²A6#ÈÇHÈûOØðÏ–ï¤A6äª'l´+m©„q3ÿ ÈL€LGm^‰§ºe‹$-Ñ^}D£ýh1OXµ‘§Y& ˆ°óaIØñ8Êx¸ Õ¼BA¨³µøq\?›Pý,vé É{ÜRoÝ’p"l{X#üç!Iø×vË:™/ Ï"ÂD¸÷XÖÖIÂß¡@X°×*[Å*݈ô_•¨oꛇþê¤í6µÚß)!1· ýGýßf9Ü# "¸áz l°&Ì”„DHD'f[fHÂ$D 9—„@8~¶b¤¥ž ˜Å ÈFyç yã1«ll™* ëa"\„õÙµH™„Ü Br€”Yf#m¢$ìD„7ÐGáw–„²ñ’ð"\Œ»î—„ZZÊIè«F(G„v ´ZÖCo‹G" Œ}[ ß7~²”"J!Ô3÷k¨(@ýôˆe… “"¬@„Çî“„‡Á-{•Ö²_çIÈZ)B€±ÑÒþ¯É±Ðùï}$ éØèXY¶ÌÉ.ÙŠ _o•/¶ÉÉ–t ùAäV€Üø°M”¥HÈñ›5ÈÉ¢Äù°¥¦%KB"ìÛªâ0Ю,†ÉçPsd‚¼w/ìxÈR]O‚É"T"ÂU@¸Ì’°%^6 ‚‚gá4KÂ.E¶!Í9<ÿÂKÂ׆ÕD¸ Þ¸G^yÐF»<ÇÃ`û6 2A.Hûƒ–•y¬$$"ÂшP„ ˆ`|Ñ£ÿêhÁ‹8/Ü£qN/Ëœl9†.ˆÐ†Oß- ?`£]iGIÈ¥2AÎÈb ™¶Q+ˆ dYFR<]NИa× ùA¹[ƒ|—„üó~;›Í‘ÆrÔíhü wäöûmê¤è IGL©HÝý6š¶íGØ!€ ¿Kƒ$$Þ.'ÿ-!>¹A>¸Ö?ï³Éɲï$d=‚T!ÈÕ¹ü>›œìùFBîB¿ È €TØåÄñìFF·ïÔ G¤¿]N¶}.!ß"Èzyq‹„<¿Õ&'?•cîÐ eÒ •[mr²ìC )FX v9Ù³GBªäé-dÿòã½–‹»%a",G„Gð %aà;’°F"Â" 4Y–½ »þ{æ\†!Ç’Pô¦Ìëˆð("üp»$|{]_ùŽÌÆwÒŒ wäŽ{l|ÈžWdN~·Eƒd!H@\ºœ\e|ª»l§D%"Ôg·k¨8@ý¡Ú/bçi—!û¬DE¨«êÍÛ$êÕ»q®.C¶ó´„Ô"È ¹ k0çdÏr6‚… ¥o—“ýÛ$d‚¼x›éh»œ |TB¶!H+‚<¹YB¶Ýe““¢‡$ä= Kr&‚ߊÝpŸäü€8?mÖ8¹ÀɼËÒ Ÿ’ÚKÝ $<„ßÝ* ßÜi×:wÊld#HA¶dó6u2p³„”#H:‚ÌHÍVeÙs“$øá«[5Bî´±Ä]È ¹AnAo‘=[¬²±a£ÌƽˆP‹×ájK‚ãrðKˆp""8€0s‹M}n¸TB¾C½·hãòÇ-v-{1ŒmîBëÿòúͰþ‡Ý](!™r‚¬ÈùwXVÈZÐ D€“€pê6eYv> ld×Í$ ½-³±¿U.B„vDØqì¸ÝÎöÏ“{d‚œ¥·Ûhé¶{¥–¾‚ ½¤ Co·*˶•2_ Âã7i„o”„n³tçHBìÝhýÂVK†e°- ¡ >ë<,á"МÃú?2, ËZ$a6"<ˆßÞëÿ›-µb!¸DhB„»€p»%a™ô rÁ„ù›íì}„Ü ßÜ Aä¤Í66²Í-!Ï"Èfùx¬Þj““=ó%d‚Ô ÈF€\u«U…ÕIB¯{4B"Ì–„ Õ°“>ؤN±ˆ öjN[êdŽD9êR„zùz‰záÓØLx°3$d9‚LEórÞ-6V¿š„lFß!ÈX€ßb©iå0B„×k„Þ@èaIØ?†ˆÐŠO^㟛-ó0IŽ¿W#ŒE„³°Ä’°X="ôF„" ÜŒ[d=oŒ‘jÙ~ùïµBŸci-‚t£h4+‚,B­¹ë&;{i“Î|3‚ä"H#@êo²ª-?I«ˆðݵ!ƒo²±ý-CeYþƒ [dßFØÿp£MY¶üGæä˜­d‚lÈÆírò½„d!ȉâÈLÛœ|+!å²w#ÿä¶9ùFB!È•òúÿÜ`éˆ2àuD8.ÂZKÂþ/eîG„ca J- eû@=æ\ú¡¯u)>–„oá"DxáIxnr§âéç:ã,õë÷%ðøû4à(\ ÀæM¸uÖ!ë{OBòäçk4H@²t¹â'Y´åM‰ª@¨»êË«%ê³ëmòãxIBÜÒ€ 7äz Á9Ùsž„´!H‚TdŽ.'ç£>k‡„\‹ ^­Aþ ?Ùæd¥„<€ × È[WIÈk×ÙädÏ9 {r:‚\µ×Ùä$íqP?€ “rªmN–IÈÑ÷£ñÿUhüÞºœ¬C½Æƒàšd5‚Ï~Ú®££Ä1¿ü|ßå_¦è÷Ý!<ÿ»Œ«_üEضö@ø»"œÝ9¢-_w²ï v¯{‰Üið( íuDòÿÒså÷ýW.졽¾¸âœ%â¬cw¾q”ÒÅ Hò ­«8ÿSˆºó˜ö~?‚(ú‰2F"Ä þIo:—ëzô@)úÓ*)úïóyâŠ.s»!ü-þÝ*ãtþ¾UH?Ai%14ÛÃR?SÈ_²Ê`3Adúùf{È"ø}·h“àã“þÀê+’ËZ…uãë• ÿm<œÝ1ê÷³ ö”Û»2ˆ~_âSŸÜöt×ïs/×ô;2 ²}¥½ÿþ;Ò·ˆ™'b–¯Ôé[É[àÿ@´Ÿ=a¥fDuúÉ )ùÁj.ùÎ \QÏ@ø"ü•Òˆ†­j+}kåsþ d Ý6j1™ïl;vå»þ‚¶shÛ´–ì&·R[O ›.â>Cg¶H¿Eÿ(ÙKïGYÓööøg{tÏö¢¾8lÝÃd¸ u5/‰;u™K†ðW37߇̬™¶Ðºú~,î~^.eÿÓÊV˜Ü’ÜL†óu{¹•§ùŸåØL¶Bø]"ü…åV]‚aþ¶¢)¢]¸‚9ø±ŸOùS…|Írƒ½œ "‰­f{鵂¯„ìû9”þ`Ï9’õîy<¹^ËqMoƒð‡E8»c´—Ë@l½»óœ öâq•vmOáö2ýMJ@f¤@Î>ÇÞ^þŒT»/Ä<\ÄŒ?G³—éÏ–r{Îår?Ò;xÅp;ˆ<"D^#¨ÖÃÚÍ8{Çe¨™/Á‹„àv‡xæ¶ìž°þ R çò•>%*J·¢Ù~޶¢Y ÒE‚Y{6ÖÈx( ζÖH<ÿ;KFú|tØÙýÚ ";V™õëú³Ùpã~ÃøÄF¿–k‘Hîú³°~9 |¦gwŒúu ˆe ±ÉgѯjêWNׯ.ÒôëãeRæý•ùó²Ðôk3ļIÄ|r™•~-¹eBîÊeýš "³„ˆÿ,Я~å`–,[fÖ¯#Aêw+­õkÈYš~}¸ôg¾ ëד¾M„¿»´CýZ‘V‹H7.5ŽA¤v…ÅøwÙè×@`/’+^ŠõkÿþãrÎîõë-{Mˆ}³$ˆ~Ýâ7,§úõúD®_—^ é×J9[ ¯^š~M€˜cE̪%Vúr…\Áƒ~EÈOçp‘K¹~åo‹¥ÈÛBä_‹Íšu?HÝsëEûµ— ËÕ²Ù^[¢)Öj^%w,ÆŠ5ÂkDø9‹-gWVóˆ;Xijؠ_}AäðsÌúõáâѯm‹ ÿ;›'÷á"¬_ üJÎîõ«ÄüBlÝ"£~-ÿ¥§¦ac!íÚÛšNå–³VÓ°x( ‹l¦/Aêõå™2ÚggñhÑ‹¬Ôë)Û.äv³;m£æ_çKBÔK@úB!}HÓQc4ïš²5BöMvÕ,ª¤ÝØC(2rz­Cæ/ÎÄ*v8„÷áϤ“šö±?ׯ[dÄç—ñˆŸ´ôk3ˆÜ´Ì¬_ËÏdúuŸÍüÝ ‘ç þ*Î÷ ~§‚Ìž@?š@;ÿ.$xršÎãûv±aäÛç?Íàÿ–бP Öß=þ®gwLÏ@ì^!öRsÿØ â+—Rí}l,×Þ¦ó5íUAÆ)Kšíýc;žÿCÌD³¸YS`m=«ÈQŸOöoÖ&CW"âÛMRòu!ùB®¥!|«ºIN†NXEˆŠÉg’äg4½Ñ:ŒÔ¦N+§ApZéX–šá¥KôK]UÍÆ¥®AvÐm©ë†¦hÃR×Ï aþ³˜§9¨ çéoþ¶ÿ× óãüþˆ~…ˆ~ßBƒ½,‘¦Åf{)obÓ¡±6ö2"ç þÔ&f`«BZïÚý_$ô¡Nÿ!ü]Îî˜ôÄîb/‚úïs!Ârê“ÛžÍ- ЪY@È8tQÀÆ¿‡”5¢%‰h£šúÓå€ÝR´ˆþ|&ýS@ïÂî‰Î¿õKé]Bú ?¸eú…Upà·€ä Br«_³¬ Pf—ä"!éóëÆÿ>S„Ï÷k–Å»~ذ¨êÐçó´fuz|4ޤ!üNÉ^)òOŸùªEo^Ñ£y=²O´hæ5†"é<ð½ä®hëa>œ­¥~¦¿Ä§_]3ÌÿAþT!_ã3ØÓÉ ’Øb1ÿ÷G³}"ÿþÙúùŸWFþ¼™ó{ú™=­³^x äòoxýÕ sI³Ö_·h,öñuÂûIÆjÖÙØk &ˆä|^¬/i~²gwŒöÚÄ¢…˜â j¯o.^m¢özüHn¯O¯ÔìõÙÒÄ¡;„`¯‹!Z³ˆ¶~½NÑR!êZ€ìµ‡Þ^ãAz .iAÕÿ¡QÊ~»P¬ó,Ð,v-Êî ùœ|¼·Àí~‹°[ì^£ÅöÒ,öeiTÉ!H‹øÍÑŒ‘a õ;uÑb€ì 5‹]ßmØ¢ñ¥Æ¿žì8[…ðgEøGûõðk@ú !}ŸÇØÿHSÀ¢ÿk j¯Ã!r¾àOmdöz¡µ½þäc…üI£½~î–2ŸøÍzÂC3´wßã?ãõ|{ݨ+ýb-ĵe„/áìŽÑ^g€X…ktµ×Dˆï§öê+äözô9š½ö™ý>=Þ‚½þµÚ_Dû¨ÁÆ^¯Ñ«…èƒ ööêiniAÅ ²ÅB¶¼ÁÚ^ÿ ’’G6àø¹Æ^Ó`»Š µ×Aš½ÒÆ=@Ú"H;ë =ì:9ß«·×ëŒöZ ²s½š½~Toìa‡Ü)"Ù¹õ8['@ø±"<»ÞÞ^¿šýß±þYo°× ²cÅúg}P{]‘W þuõÁìuÈŸ!äÎ7Úk>ÈäZdèõ¼_ É^¿ž'Q_4ò䎚µe„ïáìŽéù/ˆmbÛç{þ âFj­w åÖZ»=ÿ™)Ù0/´ùàñó3kžf°Ú|ð[—”ûÚ#Ö]šMáùàs ù´|Ô…ké¿A„ou™m w‚ô:Ü¥S]'pf N ½s·‘^èÑ›Sù<£9 ²Gz4sºØm˜þ½NÊís áÂyzŸáÓ;¡Î×@ôÕ"úuûš"µn‹õ_WÐù`*D,ø£\0üºô¿AèNÿ!|§gwLúb›„ØöÚ`úâ¦ÿ¹Bÿ!ý™)ÙP¢þCÌcD̬ZKý¯ý¯ú_c£ÿ ù´|´F§ÿ~ƒßZ\ÿc¥þëtÍ œÙ‚ÓR£Ó/¬7è­IÿAöÈz¤ÿ5&ýWAÿç ý¯Ñé?„?'Â?VDÿ!újýFÕ¨ÿ R;ßBÿk‚ë?D,ø£jDÿ«Aÿç ýWuúá;E8»cÒÛ$ĶWÓÌcúŸ%ô¿é?ÈLȆêõb#bfU[êè¿Kè•þƒäÓBòÑ*þCø "|kUpýï!õ_§kNàÌœ–*þCx¡Ë ÿÕ&ýYæÏ¥þW™ô¿ô¿Nè•Nÿ!ü9þqåè?D_-¢ßXiÔ©­³Ðÿªàú‘ þ¨ªÑ'è­ÐÿJþCøNÎî˜ôÄ6 ±íÎ`úâZ¦ÿéBÿHÿAfŠ@68CÔˆyŒˆ™å´Ôÿ¹ ÿ5BÿçÚè?H>-$«Ó¿A„o\ÿIý×éš8³§e®Nÿ!¼°Æ ÿN“þƒ,óçRÿçšôßú¯ ýŸ«ÓN„ì8ý‡è«EôFý‘ZÕBÿç׈ûûltþ@–È gèôÂg‹púæ<¥?ÁâùH*D,¢Œ9à_}Aäð¹û?Î`êò‰~½xºŒü¼ƒó?awðzÌ­ C}»1sHûÞ|ðýÊ@ÍÉ-?ëc„ˆpvǨǂØ!–~z¼o†ÿ˜úض¿$qm|³^ÓÆ§Aæñ9ù·¡ùã6ˆy®ˆyý +\r!ç™a퇂dŽ2×ÒŸ üh~âŒàþXþ¸h&ÖÇ—§KÎ ³9gßtìï‚ðÛgëýñ“3Œþx%Èž=[óǽgýñl;]¤yötœ§B*§M?üËi2úgñèœn°—wAäÍYfu¾gzP| D¾BðïžÌ3è?DŸ)¢/?M§ÿ^ ÂÙ“þƒØ!–~šÙGkðé4áCêcÛ NäðºK³€'AfÛL}wš?^ƒ–ùχhç‰h›¦iêOWù_ÿ¢³…hË4½K^ÙKgtšžÒÆ'‡ƒl/!;PÊöáä(ËoWHé×ÏàÒÿ¨ÒÆ'‰·ƒì-Böi)Ûï)8‘—ô"!})Hë÷LÉ)BÒY¡yÝþL’+°Îô…ðÃEø1š7{ øƒÊ>ôAqm%¯Q¹ å=Yíºh~G{ßb#ˆ\uºÞ!Ü]at~m<]sßÑ»%o¡çAnœH¶±g+“Døèrù¼c˜éyÇ/SÁþgû/7Ú?ˆ¼9ÃÂþiâ%¯ígý¼ãˆ|…àß]Îì½õó7ÈÏò«¦ŠþµŸ”9dÆÌ°ßOÂ2öѾ‡Ù~÷÷7VðO’ü>Ræó)Ræ“éÏ?§F³çŸ}¶zŸéˆ{ëtÎfŠq|°dVYð+÷¾)?Y=¯1ŒW‹U ’«š‚u} „/ÂÙ£ü÷d)öÝi\ìˆ)AÆÏøÓÔ¶¥+Ü;Þ_­yÇ@æZ|t²w< ÕŸ¢ÍÑVMÖyGrçŽ2m9äó…|ådl ðãDxîdÓŸR&å?ŸÆå›l°‡ ²cšÅó?"¾ï´ý!¾¶ X‹Dr×—á…ÂgŠpv父Lýû –-Ä&—ÑöÛ*ÚïÍÇ÷÷l»ù¿{õ?wT´VÛQï§ ïXoŽõ . 9îg&Áø_Ä|o’¾'x%ˆ^*Doš¤yî,]’ BR„µy „—ŠðÙ“¤ç¦onî]¾¿Gÿ5}q Ä8^ÄÈã1HÁF÷äèÊoPçñU)´¹hˆàï &¼Äh/`Ô “˜ “ÎcùþžýWî$üŒW2Þm­HèÇ^Fc=Ê[¬œ¥XYµA$ÞJïÀ{ S ¼´TÿûéXìßþ1Ê_ʇýïËþB©Éÿîgá7@Œ+Kuþ÷„qþwH7ˆô/Öåo „—Špרüï_ Êq"JîXƒÿýqŒùa¢¹._Ôÿ>‘šÈù¯Œ=ÿ»âŸ)â_2&Dÿ[ Q‹DÔ™(ª…ÿýDø½ˆ0Gêß(‘q_™Àã~UÔÿÞ®-ÑüïR;s‚¹òOÓ‘ÿñó'Pÿûí±Üÿ¦œnð¿Gƒà‘"?CP~Àÿ~5Æ?§šóóL‰Áÿnñ‡OåÔ7Gõ¿†ùË2ˆ¿HÄ¿~4ö8Ÿ)ÂÙÓû¿ –-Ä&öþ/ˆ÷>•VÚº£x¥ý0½ÿ[,eÞÏ‘?‡0¹¢Ý*¢=Slœ¿ ¯Í_–‚ü™Bþºblòs ü ¾°8Øü%ä ù1Å{ï "‡·Xÿ.:1´ß¶QÐþãxrŽÂí·¯áìŽéýGó ±u£‚´ßx/GÛï•#yû妵߉ 3H G…Ð~_ý+Æÿ£Œíç.ÖÚï1HÈ0·ß5~…¿od°ösƒü†¶à€#x *ÐûO ãÐE#lZðEüþDKÑFÐŒ´÷Ÿ@ôç.ú'. ï?õÆï?Ié]Bú‹")ÍÖ*a ô¼AHn-ÒF\gã÷Ÿ@r‘ôéü„Ïáó‹äˆK¾M-vc¯Õ9Ž!æ ³ßÑ–T{‚È/£õ«“FW'ßýßhmuò4Jн=qÈÝ:ZŒ†ãl­ðÕ"üÆáÁÞwšògù…à öP"y£ÍöpT_Nëc½ÞøK!ÌŠ9ÿEl}r£µü‹ ÿ¼ÿ„ÝÑ=ÿ™‹í×'ÏÎ×w{ßɨ™"¹å…X?Š ¼@„³;¦ç 6@ˆ¥µÏO‡ÉÔŸ··µôãöùúd4ÿÚ 01,û<¢'¢mfcŸN-D[†ÙÛgH§ é ­–’½…äÑìísOø¿‘\òÕ\ÿÛ üa¾³ÛçGÈ>¿.†°bž-b^Íïhn¤DæŒÔÛ§˜Ñ>sA6s¤fŸ÷DÞ–ø=ÈÅŠd3 p¶¾Ê‡þo„èÿ ‚Ùçc ÿ#ß`ŸW‚È¥#Ìöé+jŸs ò‚ï-fŸ© ?XÈÉ7Úg,È6ÂÞ>¿ÌfÏ‚Úç¶¡ÐþEbü3T7þð+E8»cÿ€˜_ˆ­üüˆP\DísonŸ9¥èü( CCx¿éËSd´Ï†óhÑCmìóÿ(;ïøî?Ž#A R#FŒ F#"ˆMµ1ª¤¡£¨ÒZ¿PÔ.ÚÚÕø6TmªµBI‰QÔ¦ÄJ­JìY«±÷¿ÜÝë^÷¹ÏÝ÷|óW½÷óõ¾“{½ßŸÏ}îî{Ûˆnz¼†PŸÒûM“HOOZ¾‹Øl'°ýj*¾ßô6Éš +ÕÏ@QÆ !TCAÕTÔ?‰V©­ëˆ%q²ºžáèÛZ†{Õ¥‘ôO"¼m®Ô½5äJýì÷o•š£†<’v&×»ý¾ºxX ñOªÛUªôþUÙ¡*S]ª×kÕtDäzÝ^ÝÛéý¦e/©£åÿ«º·ÃûMß’~j5¹^Û’ies@•«{{þ>¢/Sù`waÕD·ÜªªÇ¯ÕÖâêËïÿÛì\Uk½zõ:‚Iµ•z­žY«×1zíG¦7’ºªº©× BYÕ¡¬d-ªšë•+¹‰æTÕ\¯‰Bâ Utúl-~VEªWÀZ²«ÀÐY,Ĉ«‚1¤Ç€žKZî1íɶ]Åèc„NF2dÙ*â¹Í˸/âUÄNpJ»áQXlZC¬¸Âôûkj ®†ICv‘øšæF°­ŠÜF‘VÓh^Uä!»¹ÖØí°0ñ°j3^ñ¨0ùG£þ g\&L®ÿʬÿ6õ¦­þæ¦þ)^Rõ¦ÖÿÏnêŸüðS+£þ¹&Õ–L+›ª¦5¤$ÛûñŨõGþjz~ö—§•tæaukþ*kó€Üžô—¦Š¯Žùb%уw!®n±üþ9±ÎÀ†WrœT§ ¬ºÒ_.gÐúKé†FÉKÆIƒ+y08UQ—«¦ÉîWt3XAt)Ð=ÝÏF‘ziy>КlØNíç!$ƒ@–¨(žœŒgC¼PÅ×ÍŽWë-)Tϰ«*æ|¡Ò|à7" ªšÛÀúŠrøšìWU6ð0–eˆuÕ~ᥭ… ë_d: éÐæå){ ²!n找¨ŒZq?8\^§€¾VÞÝ|`Ùù`·è¬Í|`0é '’–{L$ÙÆ`Û”·Ÿ’ Y ¼xn½UI‹û–Í|à`±âþ ÖlF‚ÁÒ|àW"³*™ÁŠòr#èG¶w%£Ü –çäa·½ƒÅà f¼,âõƒÝÎ^–cýWDýËõOähE›úvœüBñLä_ì4èE¾;øïÊÉó&dÞ³9 ’ÁNó\ÔfGþ2z~ã÷O‚tær¨ÍóåÒ1ø•©f…j»Û$zpãCW·X~ÿ„X `_9Ü "^:Té.©µîRàm£»d&“)‹¹~_ü}ý¤·8þUÀø÷–Ñ`Œç÷ç“û\Â[F¥º„ŒƒIÙó-ñ¯Ô†ñ–ˆwy˨T}°Vž×Ïlª„Ô…®¦²…OwddüEˆ¹:óÉÕ™RVg…ÕÙò-oéyý¥ä‡hûØ]X èŽ[%õøµ·°þUÒ¦>wÛì\I§ï_Ÿò–RûïhÕ9¶šðý 2}2¶¤gß/ªMeu(£JÚGyÉù‚ (iÔøý¢Ô:y©¬Fž.!þ•ö0žˆxJ £†”qhlÑ¢3ÈO¿¢„8 f|@YsÙ¸JÊeI¶qY£lö•Ç¡ÒäJ`ŸKˆÇ”™ñŒˆ-á0é²ýÅuÙÞ2šìrq©~â‰,*cóûÇ%¼¾_Ô‹âîÈ?²„·çß/ ¥<ò¨ââ™óeÜqu‹ìïÿtìbi ËPÜÁß눯.­øûÒMÍߋ„ç_ÉLDÊ¥žù»•­¡ì`çï0r¡àÞ °÷w6’™A¾(&þ•R‹Ñÿ¥´øƒbf/ ½´Žüjð‡Š‰þžÁø”RfÇÈþîI6º”áïÅd7$Ž}F©4ã%»˜þ¾Y”óŸ@M–¥˜äï$"»mÞÿ(æèïñCþyÅÒáïf”G@Þ¯¨xæBF\ÝbùýSbÞÀŠuð÷ñ":ž¢ôdWæëš¿wU4ü½šÌŠ’ZÊ}E<ó÷P*A9©ˆ¿£È5סˆ½¿ƒH–Y´ˆøWÊÆxfÄýŠ˜ýýM€è¥ã…ùï/¡ñw ‹þ^Çøêf'±|ÿ“lL Ãß9‹ÈþîBî3ì3¦°xL G¼}aü‹²ì•),Ïü9ÿ)n3ÿ)ìèïe/)ŽùOátø»7å= Ÿä/ž¹fŒG ®n‘ýý±RÀÞõw¼~xTHÜ P¿Ð•ª9üRˆáðÃd`þ[ȃõóŸ)›Ù…Ü\?ô!ÚhL!óõƒ¸~^Ÿô; Û‘–×Ï Í 6°Q;âúù‚:©ŒÊÏÏÀ>Æ÷ ~¼ xý ^8ÔUìl<쮜#ù.f‹ óµ-ÆåÎÿˆt.f.¨!…䂪C¶F1£ 6ô–ÖÏó‘{»­QP<¬ûôøí¢Zâó¹¿Þ/FÚtµ|R}>Ë«#Ê(`yÿ%ŸãõþfŠ×Òòÿ“Ïéz<ùqàæ•ë³;™®6T/ŸVŸ]ï0Uaì®~^ѯòèñgµ¸ºÅòý+bÉÀnçqúþñ¸‚ê÷¯ÎkÕ9­Œðý+2#rvÏÖŸ#¨le§-É6/`”OJnyÞB.ûlž[<¦œŒgC¼tn‡y£¼þ¼ÿM]¾7?®ÿß”ê)žˆÒO,×ÿ¹½ÖŸ{QÜùGæöö|ý9”ò`È£ÞϤ/ã>ˆ«[,×ÿ¾:vÑ×ÿo:ŽGk)Xå§8~ÚYÍñq†ã'‘™€¤ñ¾ŒGŸPö1dý}ÝŒG•ˆ†mìë~<ò"ý*ŸF&-¯?Í¥³‡Á^Èe?-%¹äÜ\âˆe<ñ¹ÄñH\ΖGtn•Í ì¡m1†ÍŠDÊç3T=_¹ ¼ÉfÈgÔhe«iýùTN;–^È%ÖFÆÿD<9§ûñh<éq æ”ê§‘nym~ÿ.—ãxTârÈ_/—Óxô2‡Î?Í£ñùsÊãÑ 2GòXheNoÏן'0• »[•CtGoÆ{ ®n‘ëó}b €uÌáXŸ(È«Œ2® §´úÌ\ܨÏ{>:s+·–Ô'‡×w)û²d7õ9‘h,ÐÅ>î¯ï:‘îz(iy¾XlØú>ö×w9If™ÑG<7²ëñÔ7µø“ìò|ÑÝ—&æ c>3ýŠL²KóÇáD¾~Ó\¯?ùÈõÚ‚ì‡oõšœ]ž?–'÷vûavñ°r0þ⥲»¯×3Ùtú„¯F?Ì&Õë"Ê( —ǤìŽ×wßR<ùÊît}×”|ð]³ÉõZŽL›Ê”=×wgßÐSÌ¥íÎ+›è–-Œo@\Ýbùþ3±ÉÀ–¿áX¯Ý(è”K©×6Ç´zmYDxÿ›Ì;HÚî ê5eo@Vê 7õz>«ŽžÎ‰ZÈê¾^W‘NDZ®×±dG”Õ¾^Û“l²yVñ ¼ÍxMÄgu¬Wá{Kçß ã^ö¿èY¥z=Häïæzý7«\¯ ÈÎÉaÔk©¬r½~Mî+ìvNñ°>aücÄûgq_¯H—ý^©^}ˆdÍaóþsÇzÝŸ™ó_-ÿ¿Yœêõò3Á¯É,×ë2}¬ôQ–tÔk(ScwQ™Mó_Æ}W·Xæ¿ÞœÿfÇœ'³óü—‚UÙ•z]‘ŒùoAaþKf’Æ{{P¯ŸPö1dý½Ý͉†mìí¾^½H¿Ê†ù/iËü׋ó_°¼ìëu)ÉÅ çz™æ¿ŒÇ >Ã˨W›ï-•7êµRf±0ê3Ó;ÈÔÎKš'R$›¹^+{Ëõz?“ÎÞ~è×þ^ò|øor»ßÀZ@&ñ°~gü7Äwdr_¯ß’zj&©^Ûiý†µ<¼ëµÅþÈ_ÙË©^ofÔù«Y5>K&¹^÷’Ù™Õz@ó2y{þ½¥aL5»›ŸQtKÆÛ!®n±üþ±*À>ÌèX¯Y)ðʪÔkÆCZ½>ÈgÔë… :s6 Öÿ2xP¯¿Söd;2¸©×D¿:#ƒûz"Ý tÒr½–%6,ƒ}½¾xåòIf¼£lá8ÍøqÄSÕ-në5Ȩ×ŘÄL)^ÛbÔë—D¾Èl®×‘äzm@öÝÌF½îP¶šêµ¹‚Øí»i[ŒÃzþR?öÖâùÒâîêu?é½ /«[Äõ"‹¼mÖ”»¯×^wGþ‘ŠÀm½Ö%_ |+íx„zõ'“ßæ€î¾ôò¼^¼ÐS%yi»»÷BtKãñˆ«[äzýžØh`sÒ¶8Ôkk ¢¼”zýxŸV¯ sõF&I#”¤¯«×çÏyþ3áü«‰lêõÑ}@SÕ-öõ:Ÿô¯ 7–ëuÙ~`G©[¬õI²1Èðçâa<ñšÏëUøžá¡ba\x¦g:›ýï™T¯[‰lÌh®×Òv*Ýÿ ûcF£^ó=—ëõ rÿÃn|&ÖŒ¿xçgîëµiÐÕžIõú쩎<Ê`sÿã™c½n¦x}-ÿ?Ïœêu<ùqà>•ëµ;™®6TïY:ê5€© cwõŸŠnyõD?SÚŒ2|bS¯Çˆ%»ýD®Wñþñ¸4<Öµ|îäŸxyôûùT6‚²Ó£`…ûäÀ…>1jJüýü'uòÁK¼ñXü+g<ñK­5e÷=«aOEëNdžXäY¬lὋ>Œ÷TâB9z"—SC²á .QÙjºR”\!ì3ü±xL/qü¡Åý…§÷C6S¾ò#¤úšEdZb¹ÿ¯ûßÏÿ”â¶Èß÷±—çßó  ¼0äõ™üÿþÿ?´ó?±d`·:ùŸxÜsÕÿ;áÿì‚ÿÉŒ@ÊÙ=ô?• ìôÐÖÿäÀ…>tãÿôÿ3øÿÉÿŒ§ ~é³ÿCtÿ?2ùŸyb‘gñ“ÿïùLòÿC‹ÿɆ?üÿÀâr…°Ïð&ÿß§ÿŸÂÿÒãÊ×C~ä¾ì"ÓžÚøÿ³ÿ)n‹ü}¤Çÿ”†¼þ}“ÿïÑÿOàÿ{vþ'– ìö='ÿ{¢ú;üŸUð?™H9ûž‡þ§²”îÙúŸ\¸Ð{nü—þ ÿß5ùŸñÄ/Ýuöÿ[ºÿï›üÏ<±È³ø®ÉÿŒ÷|,ùÿžÅÿdÕ~®ûÿ®Åÿä aŸáwMþ¿Cÿ?‚ÿï¦Çÿ”¯‡üÈÙÿD¦=²ñÿ]gÿSÜùûÞMÿ)/ yý;&ÿߦÿÂÿ·íüO,ØíÛNþ'÷PõÿVøß[ð?™H9û¶‡þ§²”nÛúŸ\¸ÐÛnü‹þÿß2ùŸñÄ/Ýrö¿þ=ÃawLþgžXäY|ËäÆ{>üÛâ²j?×ýËâr…°Ïð[&ÿߤÿïÃÿ·ÒãÊ×C~ä¦ì"ÓîÛøÿ–³ÿ)n‹ü}o¥Çÿ”†¼þM“ÿoÐÿ÷àÿvþ'– ìö ÇëõEÌWººëMZLÉhTÀ(2ÃtÖ ®×? ì}È:ß0ìoº^/A´(Кj{½~ïºNߺ«Ñ>¤åûW»Èn{øºQ[âõúl’3@N¼.žoŒxÌu£¶lî_åÊÀëõ7E'‡1S(2Eh[Œe†7‰ä¸k.°’7ä»xMgÏÝ1 ¬óu/éþÕFrÞÑv{îšxX?3>ñ?®¹¿^ïEº;èï®IõA¤Ñk=^w¼^ÏEqvä/yÝézýÌU?q[ãª[ÄëõõdÖܶÐOÊ_Ãíý+é÷„{3UìnÒUÑ-Í@\ÝbyþŸX)`ï^u¬×G©ºàÞ-¥^s­×êõÒ‹—ÆóÿdÜÒ’^KuS¯â÷¦l:d¤õj|±?¹/Áýj.Vñû‹ï‘®úSÒ.»ï/–Ë€ï/¦ý!ô$™D”ÿ–N­{þ?=~ñ'ÿy9q%K ÙùŸä_‘±7­vé”êåôýŦ7Aþ®ÿÉ~,G¦ŒÍ2¥íÀãï/ž½¢§:yCÛ×¢·0¾qu‹åùb“-¿â0Š&ÞE\_®ÕÜØú™áƆd‘²ýÏæO>Tf…2ðŠÝüéÂe;{]ãn]¶Ÿ?­#¹äÒËâ_iãS»ì< ΀ï/þ'ú±9óD"OôeqþT‰ñëæö^ÿŠÜÞ3“ÍxÝhïc.Ëó§Ó—tîø5mŸ/‹Ç´‰ñuˆ§\JÇüé[ʇ@>õ’T/툴¾fµsØeÇùS1Šý‘¿òåtÌŸÎ^¤ÿ¯Âÿ—Lþg|âê‹ÿ‰M¶ü¢“ÿ‰w¹ªúÿøÿ±à2áHÙþ¢‡þ§2+”mýþO…ÿ/¸ñ?ÉÕ —^0ùŸñ)ˆÇ]pö€îÿK&ÿ3O$òD_0ùŸñTÉÿ-þ'«Œôÿ‹ÿÿ¥ÿÿƒÿ/˜üÏø:ÄSþMÿ)ùÔeÿiýŸÿ/8ûŸbä¯|!=þ?Oÿ_ÿÿ5ùŸñ ˆ«[,þ'6ØòóNþ'ÞåŠêÿðÿÁÿd‘²ýyýOeV(ÏÛúÿýþ?çÆÿ$Wƒ\zÎäƧ wÎÙÿÅtÿÿkò?óD"Oô9“ÿ¹,ùÿ¼ÅÿdÕ~®ûÿœÅÿgéÿKðÿ9“ÿ_‡xÊÙôøŸò!O=+ûŸHëK6þ?çìŠý‘¿ò¹ôøÿ ýþ?kò?ãW·XüOl2°ågœüO¼ËEÕÿËàÿ»‚ÿÉ„#eû3úŸÊ¬Pž±õÿiúÿüÚÿI®¹ô´ÉÿŒOA<î´³ÿ‹êþ?kò?óD"Oôi“ÿ¹ ùÿŒÅÿdÕ~®ûÿ´Åÿ§èÿáÿÓ&ÿ3¾ñ”Séñ?åC ŸzJö?‘ÖÿÚøÿ´³ÿ)öGþʧÓãÿ“ôÿyøÿ”ÉÿŒo@\Ýbñ?±ÉÀ–Ÿtò?ñ.çUÿÇÃÿ·ÿ“ GÊö'=ô?•Y¡ ñ¸£Îþ/¬ûÿ¸Éÿ̉<ÑGMþg<ä´äÿcÿ“Uû¹îÿ£ÿ¡ÿOÁÿGMþg|â)GÒãʇ@>õˆì"­OÙøÿ¨³ÿ)öGþÊGÓãÿúÿ$üÄäÆ7 ®n±øŸØd`ËSœüO¼ËIÕÿqðªà2áHÙ>ÅCÿS™ÊÀ[ÿ'Óÿ'àÿd7þ'¹äÒd“ÿŸ‚x\²³ÿ éþ?bò?óD"Ot²ÉÿŒ‡œüŸbñ?YµŸëþO¶øÿ0ýþO6ùŸñuˆ§Nÿ)ùÔòÿ‰´>nãÿdgÿSìü•“Óãÿèÿcðÿa“ÿ߀¸ºÅâb“-ÿÇÉÿÄ»Sý?þ¿,øŸL8R¶ÿÇCÿS™ÊÀlýˆþ? ÿrã’«A.=dò?ãS;äìÝÿ‡MþgžHä‰>dò?ã!G%ÿÿcñ?YµŸëþ?dñÿAúÿüÈäÆ×!žr0=þ§|äSÊþ'Òúˆÿ9ûŸbä¯|(=þ?@ÿ§ÀÿMþg|âê‹ÿ‰M¶ü€“ÿ‰wIQýÿ+üAð?™p¤lÀCÿS™ÊÀ¶þßOÿ'ÃÿûÝøŸäjK÷›üÏøÄãö;û¿ îÿƒ&ÿ3O$òDï7ùŸñdÉÿ,þ'«ösÝÿû-þßGÿ†ÿ÷›üÏø:ÄSö¥Çÿ”|ê>ÙÿDZ¶ñÿ~gÿSìü•÷§ÇÿÓÿÿÀÿûLþg|âê‹ÿ‰M¶üo'ÿïòêÿŸáÿs‚ÿÉ„#eû¿=ô?•Y¡ üÛÖÿIôÿ!ø?ÉÿI®¹4ÉäƧ —äìÿºÿ÷™üÏ<‘Èdò?ã!‡$ÿÿmñ?YµŸëþO²ø/ýþO2ùŸñuˆ§ìMÿ)ùÔ½²ÿ‰´>hãÿ$gÿSìü•“Òãÿ=ôÿø¯ÉÿŒo@\Ýbñ?±ÉÀ”WÜûŸx—ªÿgÀÿ§ÿ“ GÊö{<ô?•Y¡ ÜcëÿÝôÿ~ø·ÿ“\ rén“ÿŸ‚xÜngÿç×ý¿×俉DžèÝ&ÿ3²_òÿ‹ÿɪý\÷ÿn‹ÿwÑÿûàÿÝ&ÿ3¾ñ”]éñ?åC ŸºKö?‘Öûlü¿ÛÙÿû#åÝéñÿNúÿoø—ÉÿŒo@\Ýbñ?±ÉÀ”WÜûŸx—¿UÿO…ÿOþ'Ž”íwzè*³B¸ÓÖÿ‰ôüŸèÆÿ$Wƒ\šhò?ãSKtö¿Ÿîÿ]&ÿ3O$òD'šüÏxH’äÿÿ“Uû¹îÿD‹ÿwÐÿ{áÿD“ÿ_‡xÊŽôøŸò!OÝ!ûŸHë½6þOtö?ÅþÈ_9ÑÉÿÒóhg·Óÿ{àÿ&ÿ3¾qu‹ÅÿÄ&S^ púý :)]Ýõ¿IZ´Ý¢åϯçç÷O9²Åú^¹ÞK}¿ÁÇö{ƒ¿P;ù׬“çCÈ ´Éÿ‘šÿTjóçžüþScwQëD¯û2ºÅòû_êØÅÍ–aã|u-«”Fêºñ½Öãþ6úã$24þOÞwú„²!ëÿ§¹?¿ÿE4hã?…þè-ýþéW›4º0is¯9¾–ó—Ö½f¢p° $ãAÎ_+þý'0îB|ÖZ¹×È_^·N,çHfhŒ ]´-FË-G¤Ì&s—©ó§Üe^®¡ÿ7]æ[%ƒéWIŽûg£¶Û§kÄÃZÃøJÄ÷¯‘ßr®Ò÷H¾¥ntS×Hý¦‘Öm®ÿÖz9þþÅþÈ_y­Úo~tóû_«Ùÿ6 ÿ­‘ëu/™Ü÷›ß×hýf­ÚoÜýþS Åîæ¯ýÒñvˆ«[,¿ÿE¬ °W[ëUøþpV ¼6(õºh´V¯võzá9»^Kúì7õ*~øwÊ~ƒlÇæzåp8‚è7@güažÏˆßŽ"Ý tÒ.ù÷¿È‚}Ggm¾?üd•N?X§Ñ¹IË=fÙ=`¯2zøýáù$9m•xnG1> ñ «Ä^`óýáe«Åš«Çu‘ í*©)¼ÎÜ *ý!·‚{+uöÖŸF+è·JnIävý‰u±•âaÅ3¾ñí+åV`Ô?á!€§®”ëŸHë?mê•—Ó÷‡‹Qìü•Wy9|øæ ÖÿZÔÿJy>°—ÌεÖš·ÒËáûÃ㩇ü WÈý¥;™®6ùë­ôòüûÃLU»«¿Bôà«åzüÙ-®n±¼ÿL,ØíåNïÿ[£¾ÿ?\ë.ÓvÝe ™H9{¹ûõÓ÷¨le§åFƒÞÿ'.t¹Q©¦ï?$°þWkäñ¯tœñÄ/%•*~ÿaé ±æR7ºuÊãûŒ³Ú\“–ËÕÙ’lóÕFu¦([Íß „}6O)'ãÙ/­lñøûËtùÞ?4ùåeR½ÆYô‡Õ¾£¼¿ÿ@qwä™à•Žï?P yÔ2Óü—qÄÕ-–ùïRÎWaþ»ÌyþKÁªUŠã§}ƒùï6aþKf’Æ/u3žš¾ÿ@ÙÇõ_ênþK4hã¥æñÔôýÒ¯VbþKZOþ®³‡Á^øÝ¨%Ó÷H.9÷wñ Ä2ƒøŒßå°þý‡ËDçFQÙ Ê¿KÃ]E"åWš ªÞR¹ ¼ÉfXiÔèßåáîT¼Î[/ü.ÖFÆÿD<9ÞýûýãI½0^ªŸDº­°ÖOýß½¿ÿ@q9ä¯÷»—Ó÷–pþ¿׿ñòxt‚Ì‘å6׿ñ^ßø@úþS¹°»UKDwôf¼âêË÷ˆ5Öq‰µ>3 ß  ¯2ʸZ Ñê3óf£>ï-æü'AKê³ÄÝý¡Œ6Rö'dÉ‹ÍõÉ*šH4èâÅæúlèm$îDº衤‘ù ÎV'¶™Îb¾ëV³‘Î ºiyÍñôo:{|™Æ>ø l-ó!á‘@:ô.ÒòìÙa`gé,FýBæ–¤›ƒîIZîƒAdKƒ­ú›Ñ­ÄëõW‹8ÿYª‘÷‰~<ËøIį-’çèo*“su‰0Y›±ÔZØEuV»Dì?2ÝH÷Û"©…õ$½Ô܆ý&·°p²o/5ZضEr +Dλ}{‘xXOrþó;®é-ìµ…q½l?ѽ@//”Ç"‹~·ÿiíâ¿çö¿ÿKqwä¹Èéz½.ùZà[-Dÿb·ð'“ßæ€î.ÔêÛùú™8]{"^Ëÿ0ù¹þ¸žÌšx›ß?Y¨] d¶Íÿ-µCªžŸ×mÉ´²É_YÍŸœñÜ.1jý‘¿šžŸýýéy¸ÄšÿŸ8%ÿÁÔ‰Ï<èï L¿DÛÝáb=M`Ü…¸ºEîïÿ#ÖØðŽý½:aJÏv ì¯õ÷Òý=/_$ ^àA?5ŸãÿbMv¾›þ¾‚èR {æ»ïï£H=‹´Üß[“Û[gmú{éÒ ÃIËýýÅ<}ò›Æúé¬M?@: ô•yîúû|²¿‚Ý ³6ý}é> cIËý½1Ù†`[γïï$ ƒÌ;Oô㫹ìÿ‹0æÏKWï'6ÒåL÷;Òíž+õ÷X"1‹Ìýý×yrÿŒlûEF??Wîï5ÉUÅnÛÏ«ã~ˆWšë¦¿ßœ££Wbýc®Ôß“ˆìZhsÿg®cOñ8äŸ7ש¿J¾-øsäþ^‹L5›Ê3ש¿¿ü•óß8Ìõüìï'ȉ³™ÿÎqêï¿P;ù×ü*÷÷!dÚäÿhŽS¯Km-äo¥ç7~ÿžL~›üwuêïÒóP~aý/À|鱞G\Ýbùý{b£ÍùÅù÷ï)ˆRz¶kVO­¿7\iô÷02¡Hñ‹»ûKÂ_ðùl]öx¾&Ë÷‹Ñßç¡’Éw}¶¹¹ÿ'd]Hzèͤµv–ÖC”çŸBæ Ï?QÔ¢)³Å:nÎx$âѳ_÷ü%þT›-Õó³ŸuäÑ<›çŸf«åùÐÝóO¯Ÿ§å?ò³ì¿™d¦Úì oÚRoº{þIò_3¦ŠÀîúý,ú/”ñ`ÄÕ-–ç?ˆy+þ³£ÿŽÎÒ‡ç*þÛÓCó_b‚ðü™„¹ZÒ¤Yøïkʾ‚lò,;ÿµ ÷!¸/f¹÷_Ò%A×eë¿a³ ÿÝ™©‹nÌÁ\`–è¿CŒïC¯Ðš‚¨™ŠÿvFÿûMèdB‘4b²Ï+<ŸÄþ7ýo²á?Óí!¢û€¦N,èm~^a>é_Ao ­>_ÄëÙÁ$€œ¨“¸ºÏ)ä Ýt'ÒòŠDÙÂ`ƒÕ-Ú•òXáJùÁO:yg:þm?‰g6…ñCˆŸW·˜ž\âã‘êÓ ïN‹g2üˆ¿k[Œkã>DzN7_šdùýs²áÓkãDe«éÚ¸(¹BØmøOâa½˜¨ÇŸLCÍÿ$ß¾êm?ñ½À/O”ê9žÈ¢i6ëŸ?y9=¯Ð‹âîÈ?ò'µÌt³þI¾øV½¤ëK2ùm(ûOÚûûõÏu퉩XÿüQî/ëɬ™êþy¨Ÿ'j×áYž‡êÍT=°»I?Š.lÆxâêËï?+ìÝûË£ ºàÞ¥¿Œë¨õ—Kó…ß&s`Š–ôÚúËÏ”M‡ì núK¢=ÆLpß_ê“~t;ÒæþRˆ¤ÈJ:iÓ_®×é+“5Ú‹´Ü_¶Ý6i¼}™Br"Șñâ™ÀxÄGŒMYù£XÈU˜ "|0^ê/¹‰äœlî/äþr)VgÏO2úK—ñrÙDnÝ$ôÅXñ°f3>ñÕ±ý¥ñîÀ¿‹•úK‘F“l~ÿ}¼cÉEqvä/9Þ©¿œùõÿêÿ¹¿¬'³æ'ë-‰uê/ßR;ù§êùÙ_Ú’iõ“ûþR'Ö®¿H÷'|™Ê» ûAtá-—¿6Q‹«[äþ²›Ø`ç\Ž÷'¦Q0i¢Ò_Ž´Óú˘_þÒLo$u¹<¸?Q‡²µp™û «57Ñœ@ƒ\æ)tCo#ñ…q:}öG~6Î<…6îO¬%» ìµ¹?Cz 蹤åûíɶ;@gmîO„’݈´Üm½È¾š ±…uÖæþDJ ç? oÄè´|b1Ù8°«cŒ®(ÞŸFr(È~1¢;0Þñ1bW|íý‰’.±½Ét9î­©GªOîkó¿ñæù*Fî‘ÛÈnoôÈð¹GÎ §Œ*ÿ½xXƒ€øÄïÝÜŸhJ´ ЮßKý1˜HÙñÖväãåtâæX]|5VËŸ)ÆËáþÄfòëÁ‹þÅn1“ÌÔX›ëÿï½îO|Jm[ä¨ç7Þ!SÍ&žï½îO¼üN×>ýAËŸ_Ïo¼ÿBæÈ6÷?Æz9ÜŸø…ڙȿæ;¹¿!3Ð&ÿGj~w÷'äçÿ˜*»‹úN¬'_Æ}W·Xžÿ£c]–á;ççÿ(X¥ôlWçVZ›!<ÿGf’Æñäù?Ê>†¬ÿs7žÿ#´ñóüÑôüéWãÐÿH«óGö„ã£u2ä¥ÑF?!¾ÿB2äüÑâßã.ÄgûÙ9áé¿cÅÑ’ÊæPöÔ¶Ã[e"Æ™[Wƒ1rëÊB6Ó8£u}§l5}ÝçÌ(ÎbÐF‹‡µ™ñõˆežÞI÷?É¿p”Ô¿zécóüßh/Ççÿ(.‡üõF«ýkŽ›çÿF²þ¿Gý’ëó™#ß»Ÿm奾·ËéúnS¹°»U#Eôf¼âêËóÄë8Ò±> P÷{¥>ÿùH«ÏÌS…çÿFèÌ­±ZRŸ‘ÔçFÊþ„,y„›úœH4èâîë³é ‡’6×gM’UA6a_Ÿ¾$}@z0͇sþûæ|ÃÝÕç•Qb!¬¦r”û†Kõù‘ñß™ësÁ¹>»’ýü;£>/—ë³.¹ZØíçÃÅÃ*Ƹ?âÕ†;ÕçÍaÿÇh|–áR}&Ù5Ææù‡áŽõ9žâqÈ?o¸S}~J¾-øÃäú¬E¦Ú‡÷_‡{PŸ·¾åù­í.ï0ÑOB\Ý"×çoÄÛú­Ãû"ƒ‰­Tgx3­:»ýdTgK2Í‘²ç·nÞI«£žâûßT€2ì[½@¿â$êÁ7:ug”FeüÖ¨!ñý“$’»@nùFüÅ3¾ñµß5¤¼%2„hѡ䟤láío=Ê\6Ê_À\6¡dƒGe“ð—ô–HVr^Øgð7â1]ùZ_©Å_)[,o‰t•ç{Ë(\áί¥úq;Ò½]{*dz+µ½ZÆóóM)n‚üŸ£ÖÏÞñ¥Üò°¯Mýo(ý?×ÿCmü½›Ø`ç†:ø{ñ)#ïo¢ù{ìÃßÈôAÊØ¡î߇ý]›ÊêPF 5 ã}¨¼ä|Á 5>TȘ:D'/ ×ÈÓCÄ¿ÒÆObvøa¢›fŸ~ÅÑáƒ0Üìp×PÙá‘d7¾oˆìðÒäJ`Ÿ‡ˆÇ”™ñŒˆbçpé}åýƒuÙÞašìò`ÉßñD ³Yÿ¢úº›»÷Ÿ(îŽü#‡¨þ^èÙûO”C5ØtýøâêËõÏW¼þù×?ƒü½Žøj¥'».5Òü½èÃßSÈLDÊ¥_yæïvT¶†²ßWvþ# î¯ìýdf/‰¥ÔAôÿ7ZüÁ ³¿ç~-ziùÕà ý=ƒñ)ߘýÿ•ìïžd£¿1ü}cìï†ä±ÏèAâ1•f¼âoòÀß7rþó5æ?ƒäù‘]_ÛÌ9ú{<ÅãÞ 'ËÏ?Py¿â™ e<qu‹åùbÞÀŠt~þa€.8¬te×Â÷4‡'ÆÏ?Iª%MàÉó”}Ù䆽…çÈ}î‹ÂŃüüé’ ë’6=ÿ4Xxþ¡¿.º1Dù =uˆñ}ˆ§öÝó”Ì„dMÉOC‰ bóüÃ/Çç(®…ü­úËóc2ùmvp·zžÿêÇùï`mw÷ú‰þK`<qu‹åùb£ÍéçüüJ?u…4Ðü×p¬ðü™P$èçÉó_}uÙã¯4Y¾~vþK&wÜõ¾îý·ô<ЛûÚúOécº¨E=!šÒWô_sÆ#îûºç¿(ñ‡¤Z_ÉÏúèÈ£A6ÏõuôßfŠ×ÂúOÙ3ÉLµÙAß¾éxþ¦SE`wýú˜úãÁˆ«[,ý˜7°â}œûß—ìJ£t­ Gÿ-ô?2 Ñÿ¾ô`ýäkʾ‚lò—†ÿLë'͉FþÒlAqý$tèÚ_š-h,M<ê­³÷`]äKcî ¾ß¼äÛz‹g`)ã‹_×Û˜;˜ßo~»¿èî~Tö†Ò¥m1z>$òÁóDâó/å‰D)²Å‰ÊVÓÍ™ç½Xÿýá…Þâabüâ÷{¹¿yé% wö’êÍEdl›ï?÷v\?iJqäÿ¼·—ÃûÍÅÈûƒ¯ÖK®Ï§=uæa?›÷ßzy9¼ß, LßOÛÝអ;&0îB\ÝbyÿXg`Ã{:Ögu ”Q ÖPW«ÏÒ#„÷ßÈø"ipOƇS_ðü÷ÅùÿÂn|øƒÜrpá~|øŽôHп6ûãCsŠ"!ð…hÕJŒ‡ Þø‹×Œ/{è’§}4Iþ/$¿ž$r´Õ«¾p~¡x&ò¯é!ûo™6;øè‹tÌOB™*»‹êaºþcÜqu‹åú¯;¯ÿ¾Äõ_çû_(£@¬ë×Úšÿâ¾î‘™€¤ñÝ=ðß'”} Yÿîvþ«B®"¸º»÷_Ò™@ënë¿N½ ÿŠæü·7® £Eÿ­`|)â{¢_ã¿o)ÉÔhÉ툴îmóûGÝýWŒbä¯méÿcÿëeÓÿ¢Ó1?I`ªø^èÿ3õ?Æ]ˆ«[,ýXg`ÃÿçÜÿ(ë¥ø/¨&úß×Bÿ#㋤Áÿó`~rªû_Oô¿nnæ'+ˆ.º§›ûùÉ(ÒÃ@Ïêf¶ 1?iM6 l§nöó“’A KtÏ@NƳ!^¨›»ùÉg=Dwîª+|¡)¯u•æ'ˉüþ…y~òW7y~2šìð/Œù‰w7y~ò ¹±Ûá]ÅêÃx Ä[tu??ÉE:;è2]¥z»ÖEG®ô°–Ãö®Žó“e/é¡åÿ««Óüä[òCÀOí"×g[2­l¨r×tÌO|™Ê» ë"ºãVg=~­»W·XÖ¿‰ív®³c}N£@b]ªjõ9æ+áù72½‘ÔÕÙƒñ¡e5 kÑÙn|ÈGîMpå;».wÒé£5úe'ÛñAé<¬Š–B”ÒI´êDÆc_Üé5ãç”´…d`'ɯµ‰T¶Ú#ogÇñáåçœÿüóŸN²ÿN9ò?›ç:¥c~2©\ØÝªÏEÿõf¼âêËýb €uüÜa}ºq?¥ã»VÒÜ—u á¾ŸéÌnZÊœŸ»qßpÁ'›)[Ù‘ÏL£ƒ2ÃèjXd<ùqàW~&Z¤ãÝÿî3‹E„ßO¬K¾øVŸIþ(L¤@7ëé»—MmõJiNê‰{ÍúWG=WRW¬uÏ_ãñˆ«[,ë_ÄF›ÓÑyý‹‚¨®Êl3ذ¿°þE&I#:z²þÕA—=î‚õ¯Žvý#™ÜAp×;¸ï IϽ™´©œí$¬QÔ¢)Lë_ŒG"Ýáuë_”øCR­ƒägŸêÈ£Î6ë_œ×¿(^ßþÿTî3ÉLµÙAßéYÿbªì®ß§¢ÿBF\ÝbYÿ"æ ¬ø§Nß¿h¯ãJ?ueÑÜ·«ðý 2Ê( üw_{Ïîo ¥r”“Ú¾A®¸í9 x+ˆdiEÛ‹¥lŒgFܯ½1Tîo ê(úîø'ü÷®ñw”-¼µŽñÕŸ›§}Iíåi_,Ù˜Ïi_Neÿ¦û[]È}†}Æ|"SCÆÃo¯lyÝý­\”e‡¬Ì'òü¯çŸÙÌÿ”£pkÅK>Ãüï/Ïïßö¦¼ä“Ú‰g®ãˆ«[,ï?+ìÝvŽýõQ[] ôóX×ó`Íá—z ï?‘QFuŽØÖƒë§Ÿ)›ÙmÝ\?õ!ÚhL[÷×OõI¿ºiùú©Ù¼`ÛÚ_?Ýh£“©4ò|ñ ìc|âÇÛ¸»~ZgêÞ“¨œe|éúéK"_t0Òȶr!5 ûn£v´‘¯ŸŠ+ˆÝ¾ÛF<¬çsüûã_÷×OûIï}ùc©~â‰,úÔæù‡6Ž×O½(îŽü#Û8]?Õ%_ |«åñÇŸL~›ºû±Óõ“üþskÎÚcþÓÚ4ÿa<qu‹eþCl4°9­ÆŸ6Ä[*cŠëó·´êlÔèΪd*!edkÏÆŸg­8þ¢)ó¶¶“;îl+ûñg1É8³[‰¥ÆÇ >¥•yülêõmÈ·ß§•8þÔd¼ê'沉h-—MN²Ù>1Ê&¶•<þ\j©sçÛiûÌÖJ<¦DÆ·!~º¥ãÏxÊÆA¶°¥T?=ˆtkgóüw+Çñ§Åå¿^+§ñGšßßj¡Ë•Þ®z¡¥xæ0ž„¸ºÅòü'±À¶¶pzþ“øeDq,­ù»Ûÿ„ç?É4GÊž-<¸>+F™?dÕZÈ×gYÚSð›Q:µÆçi!žöýŒïEür”ÓõÙ/äg‚_%ï¡Dµ±yþ¡Ez®ÏB™+»‹ŠÏŸ/ã>ˆ«[,ëÿéØÅ5,C”Óó_ÄW¬>ÿUB;‹º Ï‘™ˆ”K?òàü}JY[È~$Ÿ¿q­ŒóW|9ð}$ž¿\ŒgG¼ÌGNçïLs?ÑZã6—Îß"k[[ÏߤÏŸ<ÿc®ØÝ¤æ¦ù㈫[,ó?b¥€½ÛÜyþ÷!ç­Ô+œ’˜ÿuæd´ÂüïCOæ”M‡ìÝÍÿˆöó¡Ãüô; Û‘¶ÌÿÈæø¡›ù_3ÎÿZbþ×Ì4ÿc|âÇ›¹›ÿ-5Yo• Œo&Ïÿˆ|ÑRšÿ}h™ÿ‘}·¥0ÿkf™ÿ‘+ˆÝ¾ÛÌ4ÿkÊù_ Ìÿš9ÌÿHï}¹©<ÿ#²¨…Íü¯™óüâîÈ?²™ãü|-ð­šZædòÛÐݦé™ÿErü‹Âü/Ò4ÿc<qu‹eþGl4°9‘Îë_(ý<ÖÕ½˜VŸ ?Ö¿È„"iD¤õùüžÿpþ#ÝÔç!¢û€¦~à¾>ç“þôÒr}"Ûì¨ìë3’dcáˆg „ñ Äk~à®>sš á^„®¼Õ\Sú| ÕçA"77×ç¿Èõ¹€ìœæF}–ú@®Ï¯É}…ÝΉëÆ?F¼„ûú¬@ºè÷"¤úô!’µ¹µ.D8Ö§úê‚VÿjùÿpªÏ_ÈÏ¿¦‰\ŸCÈ üÐæù‡ˆtÔg(ScwQMLóÆ}W·Xæ?9ÿi†ùOçç(XÕL©ÏD­>ãÚ Ï?™€¤ñ=yÿ—²!ëߨM}V"´qc÷õéEúUS.LZ®Ï£ïëìa°Þ·¯Ï¥$ƒœû¾xbA|Æûîê³›©¢¨le÷¥ú¬H¤|Ss}ÖklùþÙ Múý¾\Ÿ§éܱHxá}ñ°62þ'âɾÿAzè…¤úìA¤[¤ÍõßûŽõYârÈ_ï}§ú|ùžÎ?ý@ãó7’ëó™#ØÜÿk”ŽúœÀT.ìnÕ{¢;z3Þqu‹åþ±À:¾çüþ/y?Pê³\­>3·ÞÿmÈþþÿž'ïÿRö'dÉ ÝÔçD¢±@7t_ŸHw=”´\ŸÕɆ­ßо>s’Ì2cCñ ÜhÀùo-þ¤»úÜÕH,„UT&@™Ô@ªÏ‰üÐÄ\ŸóZ¾K¶c£>/6ë³¹ØmÇâaa¼ âU¸¯Ï›õuújcÎÒ@ªÏ$"»Û¼ÿÒÀ±>ÇS<ùç5pªÏOÉ·?°¾\ŸµÈT³9 < ÒQŸ·êé©®½õŸú¢;0ž„¸ºÅ²þCl°­õësýÞWêsb^­>»´2ê3ŠL3$í¡$­³É[+Î*\» "Yú}/ã—_´?Ü»EÔ^ÏK|5ýQ¸®¸×ó‚zæÊ×7÷N}>\ªLÖül²3À.7*Sü^d?’½Av ÿöQŒ7C¼C¸X™§„Ÿý)a*BTúAY)\ªÌ‡ïêÈÝ÷Ì•ùF=¹2÷’ÝùžQ™MÂåÊœGî—÷´Ýî|W<¬‘Œ‹øÌw¥wó-¿'Ó”š&Ðt}W®‡rdʼg­‡LáZ¶{i÷{57ßaý7Ôò«¼å{‘<òÃïˆçpã.ÄÕ-–ç‰u6ü‡õ·šÄ«6Tª§K.­zÊFÕãG&7R†¼ãÙý“uuåѸæ­k pÆýUäÀm©k8]¬Ÿ’c@~SWü+E3Þñu §+÷BÃE#Õ$_|se ûA!Æý˜ÍüŽlîosü«o˜»§’Át ‘ܶú¸~[<¦8Æç"¾IÙòºû½(ëÙwoKãO‘Fõm~ÿ/íHîä¢8;ò—¬ëåùýéuØÿëÁ uÄ3—Àx<âêËú±ÑÀæÔqºÿE¼¥Òñ]…rhþnô¡pÿ‹L%¤Œ¬ãáý¯ÚºRÔ1¯Ž¿“;îlm{/&rvmñ¯ÃøħÔ6û»Y]ÑKmÈ·ß§¶èW 7û;¢ŽåþÙlᆿckËþ¾TKçο«í3[mñ˜߆øéZø{å²ÙGvO£l"Cåñ'ŽÜÜ*Ú>÷Ti ã#Ÿ]Áƒñ§)eM ëZAªŸ`"e«Øüþs¨ãøs3D_ ÃúOh:ÆŸÊã!?"ž¹ Œ»W·XÖˆu6<Äiý‡xUeDqõz®ù»l¸°þC&7R†„x¸þS^W*£€òß{åíü½Š\¸-åíýCr ÈoÊ‹¥hÆ» > ¼ÙßÍ*šÖÈWß¼¼èïBŒûU–ÖB,ë?Á:›ZIXÿ)/û;‘ܶJXÿ 6­ÿ0>ñMÁø»eÝ!û.Xòw‘F•lÖÊ;¯ÿPœùK–OÏúO9]žT^('ž¹ÆãW·XÖˆ6§œÓúñ–JOvy¢ù»Q]aý‡L%¤Œ,çáúO®|Škþrvþ>LAöþ^L2äì ñ¯Ãøħ™ýbZÿ!ß|Ÿ Ñß5¯*­ÿ”³¬ÿÍ*¬ÿÉþ¾ô–ί€õŸ ÓúãÛ?ý–þOÙ8Ⱦ%ψt«`3ÿ r^ÿ¡¸ò× JÏúOY]~-^xK HZÿ)eYÿ!Û8HXÿ ”ý]š\ ì³q iý‡ñŒˆ ôÀßûKê²½oaý§¤äïx"‹Þ²Yÿ t^ÿ¡¸;ò LÏúåÁG•Ïœ/ã>ˆ«[,ë?%tìbY\ó—tzÿøj¥'»nÞÖü½¨ªðþ™‰H¹´„‡¿Kek(û•°ów¹Ppï”°÷w6’™A¾(.þ•R‹Óÿe´øƒâf+-üþ-ùÕàý=ƒñ)eÌþŽ/aùý[²Ñe ß(.û»!¹pì3º¸xL¥/øÛÅ=ð÷Í]vµ´&ËR\òw‘]¥mžÿ)îèïñCþyÅÓáïf”G@Þ/@ñIEäTcþC¸ à®E¤ú &R¶¤ÍúOÚñ9|ñfaÖ ¬ÿõ²yþGç7“_þˆºEü~ÖL2SKXhœòÇhx15Éþû_Ô¶Eþz~ãù?2ÕlòçQóŸJÍíÑóþ<ÿÅqýSØtýÃxâêËõ±À¶ú;]ÿP\é.ïâú§‚pýC¦9Röôw?~ÆŠ×?T€2Ìßöú§¯pýSȨÔYâõÉD› ™®C|u!£R•/^¨§_¼Hû¯w>å_ ¬k+ã3æi<ƒ ‰ãj8ãoH×Eþrµú‘Í`Të”Bò¸z£ Î¥Óö™»xLû߃ø¥‚ãªìçñ”ƒ|aA©~{éVÌæú¿:¾6rwýOq9ä¯WH­ßï<»þ/@ÿ…ÿ šüÏxâê‹ÿ‰-¶µ€ãø:ˆeˆuýòŸV]‚…ç_É4CÒ<_‹PV²*ÜŒ¯wòëè"Xó)à~|ÝNz è“ùݯÓÈN› ³6ãk4é. G–Ç×·ÉÖÛ8¿ýøš—¤/ȬùÅs{Ïõ_õï÷šñu¸©4V2Á2$Øë'¯ˆ¸ ›+v]~¹b;‘íPØ¨Ø ~òøZ›\u춃ŸxX…/€x˜ŸÛñõf>Žþ˜ÿúÉó_"»ümæ¿~ŽãëxŠÇ!ÿy-÷?Éî)`Tedy#7·€¶Ï=¹ÅcÃøÄgçvG9ÿ¥¬ d]sËó_"e ØÌó8^ŸÞ|“õŸóß<é¸>M <òÃoŠgnã.ÄÕ-–ûŸÄ:þ¦ÓýOâUó«÷?Ïâþg)áþ'™ÜHò¦‡÷?}uåQ?MyÏ×Îß«È%€Ûâkïï’c@~ã+þ•¢ï‚ø_³¿Wå½T“|UðÍ}EbÜÏÏìïà7-÷?sqþ—ÏðwO_Ù߉ä¶åÓö™šK<¦8Æç"¾)—þîEYwȾË%ù;‚H£|6÷?}ý‹âìÈ_Ò7þ>“ó¿¼ðBNñÌ%0¸ºÅrÿ“Øh`sr:Ýÿ$Þ2¯zÿóî–î’©„”‘9=¼ÿ™CW>ʃ9oN;&wÜÙöþ^L2äìâ_)†ñ1ˆOÉaö÷>_ÑKmÈ·ß'‡èWÍcöwDNËýO²ÙòþŽÍ!ûû’ÎϹpñ˜߆øiü=ž²q-ô‘¯ˆtËmsý“ÃÑß(.‡üõr¤Ãß·²óúçMxÁÇtýÃxâêËõ±À¶fw~ÿ‚~JWvu<ëŸbÂõ™fHÚ#»ÏO¡¬ dU²›¯x•r'¯|qγ›¯Äç'·“Þúd6éú‡óþid'ŸÍ¨ñùÉž$£A~–M<‘Œ7F¼M6ñ*E|~rŸèؼTúB¬m1.¦n¿¡#×s™ )Sv¹vÝšË(¤Ù¼¤ç'&7=¼ð†xX_3þâ“ßpÿüdSÒM@w}Cžÿ)›Ëfþ“ÍËéùÉ›Y9ÿɉùO6/‡ç'7“_þHVùúa&™©9m~ÿVùkxúüd3¦ŠÀîúeÝÊx0âêËú?1o`ų:ÿ)‹.PFXWŽcXÿ÷ÖÿÉ$äÐ’&eñäûO”}Ùä,nê³9ÑH ÑYÜ×g éеIËõù(³ÎÞóÑX¯,öõ¹äÛ2‹g`)ã‹_—Ù]}–0B?*{CéÊ,Õç‡D>ð1×ççY,ß"[ÜǨÏ™åú|î­s³Ã ™ÅÃ:Åø1Äï{;|ÿ‰ôÐ;½¥út›Ýæù‡ÌŽõÙ”â&Èÿyf§ú,FÞ|5o¹>ŸzéÌÃl6ß?ñNG}&0U|6\ÿx™®w!®n±\ÿë l¸—ó÷O(˦ÔçÀd­>K¾BÆIƒ½<ùþI&žÿ7pþ3¹©ÏD—Ý“I¨Oéûö£H=‹´ùûömH¶Ù%“Qâ÷íCIƒ Ì$þý}÷A¼p&wÕ9×[,ƒ”ŒºòPVMy#£T+‰,Ëj®Î™äêüŽìȬFufÉ$Wç§äÚb·#3ЇU—ñZˆ·Êèô}û\䳃/“QªÏktäJ›ß¿ÎèXŸË(^’EËÿWF/‡ïÛK~ø©äúlK¦U÷ ¯“Ñëõß·÷e*ì.,ƒè[Ê›Úü7³W·Xž"¶ع´-Nß?¡`Rf¥>ÏÔêsL^áû'dz#©KIúºú¬CY ÈZ¨[lê37Ñœ@ƒ4Ôvü¼ðR§Ïzkô³—:-ŸkÉ®»]Ýb?cIÆ€¡láèÉx4⃵½ÚTè“ b)„Q e„¶Å¨Ð7‰äð6WhÉ´?„¹B/¾ÐÙs^F…vV2˜*t#¹?½à…´-ÆaýÌøtÄÿHÛânüìEº;èïÔ-âú‘F^6ëièPŸ¹(ÎŽü%ÛñóÌs?‘Iãª[Äú\OfM&ëý¤ü5ÜŽŸÒï×öfªØÝ¤ç¢;š1¸ºÅòû§ÄJ{÷¹c}>z¦ îeTê³Ñ>­>/ù ¿Jæ@F-éµgnêSü¾ÈÏ”M‡ìgF}ßéOîKp?<3§ø}‘÷H×ý)i—ø}‘µi~Ö?E9!ªúL´ê§züF\ÿ>Ëäü}‘Í”¬‡äÈSɯ³ˆLË`µG¿g™œ¾/ò)Åm‘àSÙµÈT³ÙAž´xü}‘[OØÿÓ‚òß¼OEÿ`< qu‹eýƒØ`[Ÿ8úoÊ(ëjµë9…õ2Í´ÇƇ"”„¬Ê7ãÃÇ<ÿ/54Û÷ãÃvÒ[@Ÿ|,l¼ÓÈN;ÿ±ýøÐ“d4ÈÏ‹g ’ñƈ·y,Žâï“%<Ý—J_(ƒµ-Æ0vû‘Ž\Wº–¸þñDvݪ°úú‡’Òt{ögrÓ_À ÄÃúšñ¯ŸüÈýøÐ”tÐ]IõL¤¬RûòúÇcÇñáæC]|õ¹–?Óc§ña3ùõà<”ës&™©Ï­ÔWùkxúûd͘*»ë÷PtG(ãÁˆ«[,ëļèXŸGèeˆuUÞ…õlÂú™„gZÒ¤Ôç×”}Ùänê³9ÑH ÑÜ×g éеIËõùè>Ç¿§ëõÀ¾>÷‘ÜrÛ}ñ ,e|1âëÏÅBèGeo(]÷¥úüÈOÍõùù¹>K‘-þÔ¨Ï÷åú|~Oç?uŠñcˆß¿ç¾>—‘^zç=©>]DÆ>±–C§ûŽõÙ”â&Èÿù}§ú,FÞ|µ{r}>½«3[èŸ{é¨Ï¦Š¬íîð]Ñw!®n±¬ë lø]Çú¬NAØc¥>gl×ê³taýƒŒ/’ßõ >OÝáù„óÇM}® ºèž;îëséa g‘–¯¯Z“ÛéŽ}}† YâŽxr2ž ñBwÜ]_µ¾'ÂáÛœÿ>Ô”×nK×WˉüþÐ\ŸÝ‘ës4Ùáúô¾#__}Bîcìvømñ°ê0^ñ·Ý×g.ÒÙA—¹-Õçµ[:råµ¶ßv¬Ïe/y åÿë¶S}~K~ø©·äúlK¦•ÍU¾Žë+_¦òÁîÂn‰î¸u“óßûZ\ÝbYÿ ¶ع›ÎëLº¯Ô§×V­>ÇdÖ?ÈôFR×M®¯êPV²7í®¯ò‘{\ù›î¯¯.ßÐéïiô˶×Weo×W+(Z QÊ ÑªE|ñ×\_}JI[HÞüZ›Hõ{V{ä½éx}õòº.VFå¿ùoÈþ;AæÈ]ëVÞHÇõÕ¦raw«®‹þëÍxÄÕ-–ç߈5Öñº£ÿ P Œ±®l›4ÿeÎ üþó5¹uGKês݃ña#eB–|ÍÍø0‘h,ÐÅ×ÜHw=ôšÙ‚Âï?“ [ÿšýø“d6¯‰gàÆU=žz[‹?¹ênþVÚäîUT&@™tUš¿ýHä‡ÛæñaÞ5y|èL¶ãmc|¸xUž¿Õ!W»íxU<¬"ŒD¼ÊU÷ãÃÍT^ÿÜÒè,W¥zK"²ë–µæ_uÆS<ùç]u>%ßüÀT¹>k‘©fs@y®¦cþvë?öÿ›XÿHÝq€ñ$ÄÕ-–õb €mýO®Oñý┎ïþ§VÝž¿0Þÿ Ó){*)eŒÍ·ZÌÏ7}#¾ÿAe(ÃþÓ t¹<ͺ}EG¯ßÐÐçWŒ2ú^Hº“ä_ ×_ÿP Ÿ‡øÊ+zÕùÎ5àܘ‡¾£?IK˜ff×—üÃõ¦¬dc•-yýËxÄ Ð×Úiþ,íßô°‘X@dÜ|ekË‹1uüuîÙe{t]ÛgÀ±€N2~ñ{ÊË“N¦þ¯‹¡x&Äk.kõ´\G†tÝjߨ+Úô¦›ïÿP\ ù?R»Rg¤ñ±£n®Ó6ƤaNã“«ái;Ió\LËS®†â;§/é;8~ ýRÙe WËc®Lc¶úŽÎãmÍr¿î~Ù˜üÄèxDw_ÿÐ}ïu-ÿµ„ ’ø¾3e¨ÈxyĿжdáü—Dvê–Š£vzÇïÿ^Ô¡KW5èBÚ–Ú}Gw÷ÖÿHm¥na–ùŒÿŠø†´-1OƒßŒ9¸íq&㘆pºº%èñ¨Ç^¾ãÃÓìÛÈ[íSÐP}Sì\L \«^ÿ%‰»jü=ßPþbØ<_\С'©ÚÎ «²à†Õ½Rjô›‹£vQ‘DÅ.¥7¶<¥ï½…iï ˆÍI5ö>î¢V~õ”WH\ïzÙÚ¿Ï?½p(?^þëÒŽ$í0ãÕóŽ1Æ?ªj@Õ1mKL %?ÏEBJ?Wjl¤PcÒ¢iV“ 4¸KÿêŠóÿii³©iõx"ãÛÏxA<ûqŒÏEü俪‡&¬ÚÃ0RCªáh&©å/è+­PÐä?õ’#í˜Õ¿h‹´^ˆ‘ó‚6ä5xÉÏîÑÿÔgôiÍ‘ôà¿jÿgÿþÊþóº~ïíŸU+O-ÿJšÿs m¼åøOý¸+öûÿPÛž´c×Em(j‰MÛ’Úï¹Òâò¯Õ6-LÛôÚñÝ—™|)LÛb×õs:òße#3ÿýŒîEÔû¼èúeŒ/¹l¸~ áß#Ã_çÄ _0þ?Ä;gîaMH¼BÝbîa¥ •pNëaY„öê¬N=»¤Qêf9ËøIÄ©ï\´4±Õ$W€<|Vì#'-}dÔÜ’öÍaú{|BìãKÆ_´Þ9£äúH9*ÊàPÞ?+ô‘CzÉaê#÷ÏèªÛ5UÁ³ZÉ᪨ÌVîÝaa¥çËbøžÿ³ÈNCâ-Ê–M}Çü®üQÖW¦lO•:ö.Ø;Q׺±i[b[?7æ™ï©äë3âé+ÎxÄ[QLðm1^ÿžÖ‰§0bŸ1¼zŽÑSˆNN‹Æsÿ}ŠeT,¹à¶?õ<£õ§ë/,ý©õÝ/“!\ý¼wF½V8aô5yÿ¨/wÁ¾¿Ü>­ö—§/Œþòä”.zð¯öÏ”¥UûË̕ڦ÷Ò6ÅŽz‰ÿ«qÚÜŸõ~SÇÝ|ÊÕ2_LËd}c¹ÇQØcü)©u&ÒH±ÓÆ™yÑzˆ~}J4]ÆKþkTÍÍSFo¡–)ÃÅ“züÜy-^ü”¹ýEb3u‹¹Í&4д“ZúVèCƒHõ¥na–ÖŒG!Þû¤} !2â¤Ø‡&e’ûгœÿ«Må˜nÓÑ'Å¿G2±ƒçŒ¿èú“FJ–úÐ<*~9‡«ÀBjœ }(ÙÔ‡¾ êPýxBëCÉZŠÖHÞ!\ûœµ=!þò’õEâê'ЇJeBòöSYhs玳þÏj’ËÇÅ”[ßx6ŸL×5žP§V£•2Ô¦Šoh (çÔ¡&ç\ Oílé•ñþ#ÓvÁncKï="õ€Œ<.¦ ã%ÿ丹óy“ÈâËãFu\>¦Gÿ=£EgצÚ-ÓæhuÔ9Úå´ˆ¥ÿQ·º?”-y]½ó¦«~ešy?­}¥eÚ™Öb²¿Â,‹ýzµÛ÷ÏãZÿ¬bퟨ/wÆMÿ;¦ö¿‘bÿ;ÊþwÕ—¥vPûßåeèÇ”þ÷^úß1ûþ'­·ÿÊ̳yûQñ4 c|(âêy=åcb-€}yÔq½³,JÛvM[’I]Qñ»f¬¨x‘yu W>G=Xoÿûˆ.Û ÙEu‹¼Þ¾€Üp5Îv½} é¾ Ç“6­·O:f˜4œ¢·!êrD,ÏŒE¼æ‘׬·ßLÑ%WOj’,ÚqëDv´Yÿ;’Éi½}<Å㡺E\ÏëN¦«ÍêIÇz{SÆî꧈þ{•Ìùï Ì“müwŒX2°ÛÉëy‹‰ÇPÜ·|æ¾iÿîCfRÎNÎäÑûŠT6‚²S²a@ã}Å@ràBÕ-Ö÷Ÿfý×ȇſÒqÆS¿¤n1ÞWLH}·˜|ømÊ^;Ç0>æx&Óp1+Y^oO¶Â‚;­l5½¯X•\%ì³Íañ˜üÏxˆ²åuï+žùG—8¦Éþ#ÕÃ"kYí:ép&§÷¿¥xòÿt8“çï+¾CymÈ;ý#ž¹Æ #®n‘ýýøŽÝ?ªaoþãàï=Ä•Žé:8Wó÷ÚK†¿ãÈÌEÊM‡<ów*»A9ê¿ë“{\³Cöþ.DÒdÎCâ_éÉAúÿˆÏ|Èìï=ÿˆ^ÚC>üùƒ¢¿3wÄìï ‡dCvðÃß/ÊþnI®9ö9ø xLU¯„xäAüýò¯ÿR4Yþƒ’¿O9šbõ÷ªƒŽþþ…â™È¿ò “¿¥ùCÊÛA>ê€xæÞa¼6âêÙ߉åVñ€ãüáÊ~]pAéÊ®ÏæiOù×pøv2[’±Â·ßƒùÔ}Ù‚ývó‡Îä:‚ûz¿ûùC5Ò•A7%mš?„4æ)zqX•Þ/zêü>=~ñ'û^3XFÉHvî“üä"2ö°Íó_ûçM)n‚ü]÷Éó‡rdÊØì ÓþtÌÎþ­§:ù¶;¯}¢ÿ¶0¾qu‹ì¿éÄ&[þ·C&ÞEiî/ÖÜ×úœá¾†d‘²ýßžõW*³Bø·]½¤sgiÜ­$ûþºŽäjK“Ä¿Ò Æ§ —dö‰¾‹&ßüˆ$±¿6f¼á!sm÷·Ü_‹’UF›$÷×{uîÎAmŸ…’ÄcJaüâ7özÐ_¡l&dköJõ0”È ƒ6÷ÿ’ûk]Šk!ÿGIé˜?¼ÚÃùïxa¯xæÎ2~qu‹ìï?‰ýìàÇ£´a×34:mø» ™Ïò›=žù;˜Ê²PÖßcço/r¯ökœï{ßÍù/È}»Å¿Ò:ÆW#ž¸Ûìï¥{E/Å~înÑßÑŒwÙoö÷Ð=²¿ß&[s¿áïM»eû‘Ë}ÖÜ-Óƒ]ôÿ>Ì‘v{àïÍ”­‡ìÈ.Éß³ˆLÛgõw¿ÝŽþþ”â¶Èßww:ü@yaÈëïÏÜ«ôÿ߸þÛiãïcÄ’ÝÞétýG<îoõúoªæïi'„ë?2#röN¯ÿ¨le§vþ$.t§½¿Ÿ$rþ›„Þ–(þ•Ž3ž‚ø¥D³¿wí2]ÿ‘¿-Qôw ãc’¤ë¿–ë?²m’„ë¿DÙßUÉUÂ>Û$š®ÿÏxH¢þ>³C—؋뿒¿7Y»×æú/Ñùúâ!ÈÿSbz®ÿ(¯ y§â™ `¼0âêËõßv»¿×;œ®ÿˆ'îQ¯ÿ&iþ^{T¸þ#3)7m÷ðúÊnPŽÚnçïúäÞ×l»½¿ ‘ô™s»øWzòý¿×ÛÍþ>¿ÃtýG>üù¿D/fÿõÊ즬ëãRô’ÑG}0Ú†è„Á Ñ¢Ž.ˆ’hAÉ•D&‚ D‰-‚hчŒNôf˜wŒ2JòÞ}ö:ÿ³O¹Çõ=ß;yìõ[ëì{Ï­]N¹ªõìµÉÞáˆúÎ8,»½?Aë¿#}§¹zÂ`ýwÄ|ýç¥Ç‘/Ðw?¸{’{àañÌ5…ÝìR‹ný¬aµ›è;ýŒ?b5Ùò÷|®ï«—}§€9|œ‡¼uÈ>}[à9‡ç}Çxü É_ ï¸û‘{ìAñÌõƒÝ“ìR‹Vß?«KX§ƒúý á}ËÙáàÄ ½e^Wøë?…?8 3wŽò ØØßß·¼ nëÉíØEÞª÷-ÏêOhG ß·ÜtG¢½@kï¯ ¶<±MeÖà}ËÿíGý?Âéü µ÷°ÿö±×÷+Y)¾o9d ‘Kö‹ç6ö²‡ïW²’¿h9n8—Þ·\á ˜-  èÅ[”zË)qD©µh3õU’̾<¬dêxÁ]¼áü ¸‡i_ IìV<ìëÈ~4I{ù2ÿ<…àÅIšüôÒý°>?ëXûgò¾åÒp.Nñ¿ßïhò¾åûdþÙ!ÎgãýÞ·|ÌñCú­f_†ûMï[ƒoÅÛGñ•ë_`†Äo!Åhßû–Ë T :\Ë}ªõO"Ö?É´þI4Zÿ»DØß‰¦û§ëà›, !¼¾Dþ®Ô—@04:ÑŽçM~‚Ûä6(Q]_«e–"´A¢º¾ˆÏ›¼Ú ýätnÐÚåO€=JìŽJŸ7Y2ŠÈˆ½âð‡}2Ùƒ÷ŠU@|±Ø>1ÏZ³)yzò¥ ~¤äAuúŸ¨Mÿ÷Èìß”ô÷Ùë¨yñ,¸“H {Änm‚}=Ùí±ý¼É4ÐSˆ^¼G›ÿ@º0Èÿ½ŽfÏ›”†sqŠÿý^G“çM^ìFþï§üߣÍÏÓ`Žï7ÈömØû¾´„ò£ÃÅîVÿ°{’]jÑÿÀêÖi·i~f‡ƒÓ~éþˆ`ÿO ãÿ.ŒÿI4þï²#?7Ám=¹Û¥ÎOÈsPB£vÙÎÏ. ;íZ›ù•Á–'¶Î.ãüü´S&ÿÛÇÉÿíÏÀ-د“=}§v”vfÂÆÊÝb"ÄÂ3†<“vj†çé@¦îSçç‚]Úüì ¶Ó>%?/íÔÏßû–Ûi§Ø­<°ç {…¶óóv‚Lß GIÞ$hò3 ÈžDƒý|¸²‘ŸÓà<…â/Øi–Ÿ?ƒoGüm~VSÉ CŽ;yÁ°+?ïìC¥íå‡sJÕ‘ {Ù¥Ýõ`‹Û¶Ãt~>÷²üÌâùéq\ÉÏ–`šRPÏvÌÏóÀ-¹UØacü¼·]FoÑMöÿmòÓY=?O½•è3 Õï3 Dä*™¤Ùy^!®'èîD­­(5ÁV#Öm»’÷s„¼Ï ÒAþlÛÄ3ûh›l¿·›êÂ61ïé×PÄáù×bž­A€•»Õ¹}d»r v¨)t˜ÅR7Ô¹ßT×ÝJî_³¶—¬/CuÕ¤PÝ·‰*» Ù«mÓ&¾.ßnoEþï¢üߪÍ {väÿ6žn6æçÓà<…â/Ø&åÿRù¾ñC¶jççUÁT2èã6^NÎÏ_lÁø¿“Æ9¾2þƒ9¾S¹ëU{óí¦­|Ýì}ŒåG‡‹Ý¢ÿa÷$»Ô¢ÿÕ%¬Ó“ý­œÀ³îdÕå«i¼º¼=¬T—G›¡ÿòÓfûö·âṎ½[¦ð›éâùÓ®ÿË“¸XµþƒÝìR‹ný¬aµ›?ÿ);°zjÙ6œŸÁË„çÁ°Q€ýM‹´£¾ÎƒÛ\r[i£¾Ú‡ÐÉ‘¶ëkÐ5‰nZ[_³ƒu"¶`¤q}½µH&YmgÿX$ž°'’ýÔ"[õõÖBQzð ÏèEšúÚHï¥êú:.R[_ë‚­µT©¯;iëkp9è°µ‰Ýús!Æ¿(ÿÙ®¯Aï#úÊBM>DYeðüÏ"ÓúÚν(þ¸EfõµøªÄ·^¨­¯¹Àd3èÐý…fõU;ÿY€ùÏo4ÿY šÿÀMv©E7ÿæCØü&õµ-p÷ßXvúàÙY?NÉΊ`ÊRÈÆ l_¿ ÿ„ÍŸg¦àî $ý{’þW úS–B6žg§þ-Ðéž¡þÁ%wÞbCÿ #‰ µ¨ô»/Ùƒ,æúw”õ¢Ò?âT§8m-*ýÞ7B£ÿy:ý‡@ÿóý[tú—8Ÿô¯êÓrأȾ+äKô÷^ä>!D« õçèßb®ÿ`è?œôo1Ó#þážDî‚Uú‡=šìR‹NÿÀ|›l¾ÿ‡–¬ª[Šõáàº\ØÿS†‚ºÛXŸdˆû?s1ÿ £ùo°z}rû?@z}®°>qv™å*îÿ€':4‹œC˜ø;Ø…e÷RâM¢A6 ²í\% Åû5 ‚t!2û\ñ\½š#Û_†Ò^Àq%Cw<^â š³ øzŽ(õ°…œæ-î©2ĪÎÀUsµ8l¿P%°V÷TaAã®>¶Ÿª[%`/Jö:säM#íúþÅl~6ÃÙæhòí ó ÞÇŽí~6ýšñýap¡ø«ç8šÜ¯Ñ|/â'ÌÖ®g‚©7O¹1”ÞIý*%õëRú1©_,Ÿÿü:¸Ï»`ß–>9,¾y¬ÑXy}zÌí¯Aٟ͜ 4Ÿ¬™-ƒ¿zã“-³µsðgKŸwßâûm]ÿBþ[x÷‰9v?²K-_Y¾W_ÿÖ•°1A¬>ì¢úpõp¦ch›ÌÀwP"*Àç +YzòQ J)YÀ| áq¿fqû’×Äß¿˜%{!ÏÛ³ÔUâæ ÷»Y¬5}/ûOG—°¹BUŸ ïYä½’{[×Ê‘ïm×]ÈÁ>ŽPB-`߅襙#HZÙÒ»WoÎbº“=ßÊžÿóäc±|:¡>\rž',D6¾Ç!%2{Ãk¡ OÓg²1'èФN²ïø.$ß­rÿë:ÊÔXP£5µBkP(8‚­¤Uɳ”í½¦ðp£¸ÅÜ/{ ²×4}ç#ÿg"ÿçRþjóȉ¹ùÈ÷32lä?œC(~ÜLáÌËûTéÝ5ãµ­ûŸΠœ)Öô2°— »Ô¢»ÿi†Œý;‡c_Í4»ÿ xÊ–Z›=xjí‰î³ŠB˜açûà9”<gÍ?[‚kJ\ÇÊȧºÿ da"óο¥ÿ¦Ëö׳¹=ë eäcóÌW¢ªNO!þÞt±ªm€}ílõ(—4C÷þ°“g+£Ü§éÚy¦¸ÎtÌÉÓÅ>¹Â^›ì¦›Ì31ÿ Àü/ˆ»™®Ñ{«A÷?Mw4}ÿœ—RüÓ¿àþ'¸{’{`€xæšÂîFv©E·ÿ ¬aµÌîš&ãf1}ÿñ ×÷ÕÂýO`Ïâ!oM³óýðœCž±ÓŒô=\?â¼§ë»HW"«O¿¥b°&{Åij}óµ”îÏÈy‡i¢¾OÁž¨ÖwÚ4ÝûÀF*ú.5M«o_pcé˜Qª>yÀÞ™ì£üíÐwi¸'·zþ}˜*#og\ÿó7Õ÷A8ï›Éã_ðÿ}ÀÝÜc§Šg®ìžd—Zt÷?«KX§©f÷?Ï:Szþã'®ï·áÂýO~2soùÉÏÎç?๎<úé;\qá~Æúî ÒƒÈ~â·ÔvW²»û©õÝyЍ¥œà³_ÖOÔwúèºZßütÏ€Mœ®è»±ŸVß‘à"¦óc&ªúä ûX²‡N±CßMàÖܺMÑè»¢Ó îšbªïÛ“eç<þ?S¾@ß1p&÷£“Å3»Ù¥ÝýOÀº6f²ùûßáPžzK‘\á…C…ç?ÀdNãAKL¶ãúåÙI²ÛIr{8I;ó'tÐå„&rÔðúåxÐÞD[@ëžÿÛ’Ø.“”ܯ_–YŒÈü“Ä3ði¢lÿÏŸÛsNRrGý{—Y'ŠŠ= ÏdòLã-ÊeÖ•@–ù«iÇ$m"ù€ã¯$Ò¿¬Õ]|<ã'p?ÒaǨºõìß’½ÕDÛ×/3&`þ3•æ?µó W§Ì&:š]¿\ç¥ÇDG“ë—£Á ~¶Ô"®÷ÛimСrR‡ìü½ËL_9«lR¾LÕqö4²K-º÷ÛIXª¯i~ÎB-3Ûòüô Vòs ˜~ÔÏ×(?Õùùܾ%·V¾r~ªžBv˜9…òßWÈNkØìBv^ö‘é?ˆþËÙÉâ"7ãA®#r’›BWg€ô'Ò×GüöÀÞ‡ì£| ró.³ /&Aex–'Ϧ¼E)NÎ@²LQçf_mn^/³—&+¹ÙƒE°V%7·Û4™ö’ª[óaŸGöõãµ¹ÉõŠý/xô" ã5ùé¤þdÛã–ò‘6?h]®äÿ8äÿ$¿€”Ÿ+ŒóóøÓÄ?§ÍÏ`â&ÙîмñGÞzìszzÉW™@sp(yÃÚ:ÑnÌ ö8&/‘œ]fµ7ž³Èså>‡ÜFwÂá»>@{ê ´SžPßT&v;û}³BÖºü+ÿÁa7ñú?b¦µY‹ÿ1',OÞô—‘†ð9E¡,ÊœböQD§Áâfc Ä80«‡ðC2/%ÆlØg’}E¾Ü9fq?œ¤àþ°Ž£KЫG౟ Ç?ÄiHqºõçó·mXÿ):D¼=ì¬x{XëÝ‘ôMò¬ úïýæñß°ßcÊ}AI@öòÈÚœ-ýok°§–ÁìG’mé½ê8ÞG"Ü0 7¿Ÿ¨÷Ÿ`ÿ‘ìR‹Vï•%¬q?½¿é‹óÏ*«¥T®÷‡ã½_snù¬¯}zÿ ž‹Ès[_µÞq‡ä( Ã ê+êý×{ª¬÷2}õz¯‚)Fó¾½gâ8ˆëý+Aï‹ûŠZ½Ñõ ¢÷C}E½ï³c Õ‚>bŒÅ°/ û–>j½KRø¬ÞFœvgHÞ«aµ]Ñ{ª¨÷|}õþ¢·ìüìW?[ÞÏ9AÈëÞŠÞ£5Ó{CoÞ§"Ü$ ·²·¨÷Þ°÷ »Ô¢Õ»+°Ú„uèm¢÷lÀÙ0`©^‹ëý_oEï÷=eæöò½§}z_Ï5äyÈÓ†ÞýN&4ÒÓLïU<õzo€®£³§FïE€ ×{œ§¨Õg½döqE艹¢Þƒ9ÒŸjA/1Fì«É~°—Zï’>«÷¾ˆÓ‹âLè¥Ñ»úýmê½´§±Þ3zÊÎïûÑZ —Fïi@®’µ—¢÷ø~fzo7R§÷y7—Âmë)ê}$ìÃÈ.µhõî¬9a}zšè½ðl°4®Îõî6õ^£‡±ÞóÁ9ůÔ]£÷çÝdäIoŽî®è=©·JïšõÞVøÆ“ïÅn¢¸Ãa·]jÑŠ{°A„Mïö¹õ^]øÔ"ŸfR‹~½— d6"3<ÄN>ó@ýó¤9ŸÔBë½üâ‰?8‘à˼E·Þ[2ÜS½Þ[ÛM»Þ v §²Þ{âá¨Yï5çFG¨ê]ØK½¾‡ézïEWŒÿ½¸ƒc7³õÞAðûz±ºÒ#‹£´ÞÛ4Ìh½7ãÏFßXP"ƒÎÞÉÌ´,¬yê!`u'í0lexØQ;4÷¶¿ª[%aÿšìu;Ú¾öâgÔÿ®´þã_xþȉ®Ïÿ°ƒÛ¾çŠ¿º££Éõ°¾à{?AjQ=ÿ¦žA‡ H2¾fÔãQ–ô×GW:`þ×…æDÙì†}Ù¥m↳¶®ƒÉxÔxo6ÀX••Æ#VkÚP2·0WŠÚ¹ƒf<ʰ9}üIv~GO¡ªñ¨ìO´Êo/GÊxt¦=ÿº3³°ñèa†4e`<ÊàãQZ{€Ãá°3è°Ë’Æ£ q<êÊ“¨ñ´ã‘˜úÄtù‰Æ£ ÕxT`¾_0e¨Ç£ï:HãQ>¶SÆ£KíeïÔÎü0ïÚ‹y¶ömd?۞ƣ i<Êàã‘$.ŒGšñh4¢Œ (³Ûkçÿ@ÚtÖ˽üOÊxäÒùsãQf;9Ö‡NüpåÛ‹²¾{Ù¥Ýõ_`; Kmg² Ô‰Ézci>Mì«hz0˜Ò¿ï笷ªäÖºz4B1všÙ‘£.í”1C¼ÿèz[™¼LäïmÅo)ö]dOi+ŽÒû9'¨ªòl¸Ìì¨ Öšëª7ž$X=R4U¯£2Rì³¶ ïç, (?…jÐVìÐëeûÿ~æö¼míx?çA¸í#·+?jÆ‹h K~6xÿë…í÷sö…s/Š?®­£ý÷•{ roù£xæ2Û@ÿ¸]jѽÿØ%ÂþncúûëàË*±ål ®ðHOá÷ÁPÐè6vüþÆOpû‘ܵQ+¿¿Qh)B´æ[šß¯zÕó?ªø¹A«ï?2…È{­‰4øýªhÐKˆN­ÍIo°^ÄúµVrRüý*w͉lÐZ<³a—ǯڭÕ9)þ~•ôëGTõü¡»àn{à#oÞ ä@{u_l­ÎE‚h¯$iaÖ'Õ-ä£À §ÃF¸‹Ýê{[²v7ø+/ ¼8áõÜ5ùù¡•Œ¼mgpÿ+;ºíßß8ç}íxü îŽ&¿_>„ø¸V4ŸÃïoŒ3Ä C-ÜM~¿ª|«RüÖr|åýw`²µ³}úŸ­?ÿûUÉ-åPImi-ÜRTa ìÑd—ZtïæCØü–¦õ¥ Z¶eõedQ^_\» ïS†‚ºµ´£¾üÙBv{ú#wsni£¾z€Ðë-l×—… Ã‰Ž­®/ÃA&r†LÔ7Ðõ‰îZ[_\Àæ&¶D ãúò¨¹LÞkCŸ­¹xfS`?Lö?š¦¾Œn#&ò,˜N–5×Ô—@ú´Q×—ñ-´õÅlí6J}ÙÕ\[_ò‚ËI‡­Ý\ìÖ_Íd{zknÏÚܤ¾¾ð+Í´ã?%­ Æÿæ¦õ¥/œ{QüqÍÍêK ðU‰oÝL[_rÉfСûÍÌê˹¦²ïiwÿqSm}Ù&ÎÝäù—fvÔ—~åI‡ l*ª°)ìnd—ZtÏ¿+DX­¦¦õåIÙáA+V_òäõåò/ÂûoÁ$·âAÓšØQ_æÁm.¹­ib£¾ Ú‡ÐÉMl×—: kÝ´º¾ä™•Ȳ2iP_ÒËôÕ–œ~ÕØV}Ù 6žØ¤ÆÆõ%ä "'7Ïì`Ø}lãÏÔ—-ÅD®€ßP€F5õÅȧêúR°‰¶¾\n$³´Pê‹Gcm}Ù nC ª‹Än…ÂLöµLêK_ཟÐHS_Ü€Ôoaðþ·Æ¦õ%ÃMv~ßœÇ/ÐØ¬¾œšøÇnÚú²L\s}‡f62«/£á;‚âÏ–ã+÷ƒiÝÜv}ù®‘Q}Ѽ=³!Ö?Íhýï&ªðìid—Ztë`; Kmhþü+›±ú²ŸnôýYxþL? ê×ÐF}¹-|ƒßÁí[rkÕP©/=ÐggpYˆ+ÙP(.Ö¨O…¨WÈô…¦œ~ÑÅE*ìzuÉ O{6U–ï«à´œœRˆ¹0v²G5н|]óû¯piG.Chò¡ÊMõòsj(Éûç}^ü ;?kÂãgk Õßi0Ç›üþ»•Oðšý'þÊûƒ¨¿~°{’]jÑ=ÿ¬.a~0ÿýw88±1ËÒ&×ßëöÂï¿×—™;yÐõíÐß&¸­'·cõô7 Ütâ–Õ·­¿n !zt}Cý]l¤è¯,œJ‘“{}Q°jÄíÅêFçê¡þ‘ËãzýÅY×ÈàýÿõMõ7Î#(þìzºú¦µÁÊÕÿýeº¢þ¹Qý«§ª°§‘]jÑÕ?`; Ku5¯ptcú»”“ê_[¡þéGAý\í©pû–ÜZ¹Ö?pYˆ+éjRÿê¢þ5¤úW×P õNËÉ)¥®ªþÁîOö¨ºŸ«piG.CêjëÊ êŸ«yý«ƒú×€ê_]]ýs¼Aý«û%õ¡üèp±uTõvO²K-ºú¬.aê˜×?885`úëšê_k¡þ}ú÷Õ¿ïí©p[OnǾ7¬à¦·ì{“úú¢Go¨¿¤úBýƒS)rrÿ^Uÿ`ÿTŸêß÷Ÿ«µQÿÈåqmmý²®¾AýûÞ¼þÁyÅŸ][WÿÀ´68@¹ïÍô§½þS õ¯Õ¿Úªú{Ù¥]ý¶“°ÔZæõõ¤ß§v ú×J¨`úQP¿ZvÜðܾ%·Vµý©îGpúÉ•Î-µÅû.Ö”éóD?¯©– ²Â\6–Ø„šÊ:P¼Áäd"ÇÖÏ@Ø{’}xMq(ÞpFU]Ëó yºñe¹šÈǺê`ZÚà¥2›ZWYveT÷#l·¾.i¡†Ø­y°Ï%ûš¶ïGè ºÑjh×@ê×5XÿÕt4»!£:ÖuhýWÓÑä~„sàOÿ¸º6?7‚‰«c°þ«áhÿó¹ýÊ“X]TGSØÝÈ.µèö€"¬Vuóß?úNv`£@¨¥V†ßÿi&ìÿ€Iþžö¾³ç÷à6—ÜÖ|g#?íCèäïlçgÐ5‰nZ›ŸÙÁ:[ð;ãü¼UM&¯×¦ýŒjâ8{"ÙOU³•Ÿk‹‰ÏòŒ®¦ÉÏþ@z×Vçç¸ït¿¶Vm%?wVÓægp9è°µª‰Ýú³ªlZ‹Û«™üþè}D_©ªÉÏh KjìÿV3ÍϾpîEñÇU3ËÏà«ߺª6?sÉfСûUÍòS3K®"‡JªÉ÷ Š¨ŽØ£É.µè®ÿó!l~ó÷ÿáeM–Ÿ1Ÿx~º6®ÿ€)CAݪØ1ûó[œÿtþ«Íߎ;DÜÍomÏ߃^@ôЪù[zueþ6N}È)è[QªÍaoLöžß~fþ–.¹È¥Ò·½>¯,#Oªëåqô[ÓùÛ8³Q€ý=^Y«¿0³ ðë·_°~hŠPnt¸•Eý•½Ù¥Ýû¯+ÉØ¿ßqì«Ê¦ú;6 „ZjàúÛÕPÑ_,˜ šTÉý„Û0r›UÉH­À5#®w%Ûú+ºÑ5*êÏ»š¢¿{e'6 °¿Y+‰ú; û²_¯øý…Á%„\â*jôçdh5½„ͯ`~ý-«2ý}Gõï¡þ)CAÝ*Øsý»<ê_ªÔóåú7Є^/¯– êú7èp¢ãË«%(üþ ØÄÈ,]¡Ê-DnÚ•èΠµsª¼`s[¬¼2ó/åA9™¼ó-'¯–ÏíQØ“É~¾œ8ó¹É¯P=®P}­*ß3`XÊ[”yZ? žßª'@cËk'@uÀÖüV™%°Vwñª¹Áe§ÃÖ,'vëyYÔÿÊÜîTN;Ræ?€÷|¥¬vþdIeƒù;¶Éõo8÷¢øãÊ9šü^J ðU‰o]–ò_¹þ &›A‡î—å²3Æ×¿¿Áú§­¾Ñ­ÀÄU2XÿHñ¦ç·kýƒPžt¸ÀoTëØÝÈ.µèÖ?À Vë³÷?–‘ñGYuñÿ—W—«u„÷?‚a£€4F”±óýðœCž±e”#¼ÿ\?â¼Ë(™ªzÿ#HW"«—¿¥b°&{Å2J¦²÷ã ­ f@zi|þ œw`¼òþGØS*¨³2­Œîý`£*(YYªŒ£öýàÆÒ1£J‹}ò€½3ÙG±–ϾÿnÅÉ­^iM~~(%#oËÜÿÆzaòþG8ï+Ïã_(íøï„»¹Ç–Ï\?Ø=É.µèöÕ%¬S)³÷?ÏZžé{ùÿ¸¾ßÖÞÿXRfî•ã!?•´óýð\GžGKé;\qá%õݤ‘JŠßRØ]Éî^R­ïeE-埕ø²%E}§—€þ˪õý¡¤îý`Ë*ún\R«ïHpeù1Kˆ}ò…},ÙCKØ¡ï&pkHnÝJhô]HѲï,aªïÛÅeçßðøÿ”ø}ÇÀ=šÜÏ\ì~d—ZtïÖ•°1ÅMô]xÅo¤»¯_p}­¡è;+ Yª¸}ú>SLö¸˜ZßÁªZY|Eâ›õö¬eÔú.Q\«ï[_ËìõÒŠ¾ûÓê{¸í¥i.üµØ§HØ#Ⱦùk;ôÝn½ÈmÂ×}»©_Ú`ÿ·˜©¾3ŠÊÎïKñøŠ}¾“ážDÖ?°G“]jÑ­€ù6¿¨ùþZ–’ÞPýœÖ?Õ„õ˜2Ô­¨û³Áú§$­Šª×?Êýï@z½ˆzý#îÏ.Nt¨°íýÙÒ ‹]¯°vþSóŸâóŸÂŽfû³Ἧ8Í ;šìφ!>®vý0̃µ(ìhÿï;”A¨t¸–…Dud”íŠq»Ô¢{þØ%Âþ.hþüØ(jéþ”çgdeáù04º =ÏÿÀíGrTPŸÊó?@KÚ  :?UÏÿé—_s:7híõ“`{§±ûQ #‰ÞZ›ù£À'vr%óÅý‰– ›Y¿€xnËÃ^†ì5 h3_sí–¢b¦ÝÏ/¸]”xÏ[” ˜ $©¨ºüQ@[‚ /ª€‚¬Oª;h½À ¥Ã†ç»Õö6d˜ßæþDiÀÅ ®—_›ÿ_!ÿ‹ä~Óý‰ƒpÞW„ò?¿ÙþDøâã¾¢üWžÿ3Ä C-òóü7ÞŸ¨ߪ¿µ_Ùÿ“Í þý¯¥ë?Æû?iÆœÿÂ4þ»hƈe@~#DjÑþÄ«/°±„…º?ñjñ¿+ýÊk`¦ƒRešÃ§qaVe†ßæU¦fy¥Ê”SŒâºZ[Zã•Nâ,·»øüK>¬ÿ Ñú//3ü±pé¹oëÿ±_#÷`‘êVxê]HzWÓÜ­ìßl?ÝÚæÁÛfE³6V' ²¯÷$kšKMó ICLСi“C¥’jñ¸[åH°ÇÙî©ÒÉu¿Äþ„n±v0Øý˜UßéuGÖ¼=É"t’"\ ü!»ËœãRéô8fqžép-óîùÎY²Lwâÿbý_[gþ—ý{¶#Ûân–¥væ?y1ÿ)È?øWùÄô; ûI²?Ì+Od=†¶*(íýó—;éõïòŽËËóÏw{ZÐ`ÿ_êLº¿5½d‡†p¨G1{H-ÕÜϾËîöŸÕ?Óý’µÆ)Å1| :"ø‚¼ªú—õ¯€Âœdžgƒ[8Éa=Gk–ΖZ–IHà p\[€ªâTz#¶ê3Àù JpÌtOµVÆî©.AyÙ#ô}.~à”ÞUøäÍ QþÉûæ?ùXƒOž>9„ƒþ–GìØÓÜ2ó0¿ÂœËcôÉ¥Ù_.¶ÈPþ—KŒ¶Ñ³hSùÛÒÿ̲GºiŸe¾â(+C'äÝ¢K~þA}s‹´£ƒþƒ–‡OáClÍ-v-3æ?_)Ì£ÜêÊV˜ÿ}%鮘ðí3Øß»¹ÄN}gЩ0ø„,®êÔ0C¦SnCÝ5cÿÏì?äTÎoM+t¶0‚æÿJyhÂBoíÊq‰7÷³éç>*Ž7sÊŽ×\l:F“ã$ሱpŒ±íø+9vû¤8Ž€ãÛŽUÈ1:Cþ=sÃù/B•p¡ùoNÕü7Î>šÿæ0šÿ»DØß9L×§ëà›LoÑü·¤0ÿ@A£sر>ý n?’Û 6Ö§e–"´AÛëÓWÙ1ÿÍKó_ÐÚYê °G‰½˜Ýx}ºd‘ÙÅ3àûd²g·µ>=¡*R-áÙ”<=³kæß)™W==ý>‡vzúo6™ý;2=õÉ®]Ÿžw2i!›Ø­M°¯'û±l¶×§Ó@O!zq6ÍüÔH÷<úñ°NvÓõii8§øßg7[Ÿ¾È*óÏrs>[6íüñ4˜ã¹ îÿÎöëÓ„ò£ÃÅfÕÑvO²K-ºý`u ë”ÕlÿxÖÜÒþÿuÚÿÿZØÿwÆü/ÍÿœíÜÿ‡ç:ò<ê¬$¨°ÿ.€¸pg%‡Tûÿ =ˆìà,~K `w%»»³’ClôòË)J4'ø¬Ä—e-Êþ¿“l”S6œuûÿ`s*iÓ˜ÅSïÿƒ‹ÈÉ™è$öÉö±dur´cÿn É­›“&J)šÓ`ÿŸõÂdÿßQv¾‘ƒÇÿÇÉñ öÿáMîGÅ3»Ù¥Ýþ?°®„q4ÿý'8”gcŠåí®ðÂE„ß“™-áh[ág=žr=SÈóžƒ!hÐ¥„îæ¨5x+G…Î ±GÁa89‰ª j¶1±=Y‹ïCåZ¥'ä{ë‡ ÎÆf’Žä§F§b”i)°»ÁÇ[³õÛ.vº­jÉcÕ¶4·xÜd¯õ*™-ì|ºÈGÚ™E>Ò¶lüHg³ÈWÞÁ*„ÕU»Öù LzŒgÇ+i])8(÷aõ„“…öÏ"æNØ]ÉÞ9‹qîèô‘é@®ï³r×"Y4ù“äjVƒ÷?fáãOn¿ÿ祷ԾG )78FÇ,RŽf•a:žÔDœjt¸.¬rp=7Ù¥m¾=ͱ‡ÎËbÅlŽ'‰Àw±1Âq‘gÛºJ¶E‚‰ ›­-¶²­±žðìNžã¥í uÀÕ$®=k³á+ y©`ý\R6¨–aL€-¤:”æÓ‹ý뽓¸;ùIŽs̉V>ŸtZ_ j…“´îS ýˆµ/,òø¨cà1’â.²¶(BïûOdÆZtB2ùâäQ÷TØÿû(#o öÿXަ/ÑŒ¶ÞÿŒXñŽ4/þ(ê/v Ù¥ÝûŸ "lúGý5îÊ*¸¥ç®¿Ê_)ú+ &?…¬þѶþÄùLÚä¿÷|õAÑŸRÀm%.YjÑÏg‚AéÿAü–†Ã>˜ì¾üˆ˜ÏäwPÕ?ð®Äwf-˜{ƒ½°ƒz>SÍú¨ç3½—Ùô,Ê|f‹ šÏ¤€;œ…3ý½(Õµ°¯"û÷FRÕ¾ÿn#Èmö{^Ûi“Åàý‡ÖžšÌgòÁ9Å/÷ÁÁþùÌùÿd÷3¬p0-ü'ž¹­°Ç“]jÑýþ°Y„­üÏDß={°2l™|’ë»M^Eß®`jSÈÿÙ§ïïÿܳàFú¾îCYv>±›¶SÊ}¶³úæOå„ô…W/òšù\H—$¶É6õا>!—Õ¼ÖïŠÝð$Þ_„(3^:¨¶á¥Q™ùgs©šÏ1t†O:òp~dë©Q¶«ªLTK™6'³‚rxé€bö<]9Úƒ§2qç“=]”ÞQؓɞöÔh¥®ÿp !§¸§Úúdè }¹õL7Üd_•³ÐùJRŽŽÓ„µˆ›ÁN@2ÿâHõ§l38ýƒ5¶­ýŸ'¨äóꉨ筰Ǔ]jÑíÿ›EØÊ'¦ó«îpè ½eÀ~®h÷Š¢ë€©IAÛ?±c~õñ±ìöîOîVè‰8¿Âôâ"Àó>l{~µô*¢€Öί&ƒõ%6è±ñüª#ÈöD¶|,~ÿ5a¯Fv·Çó+é:ר'¢š_?BýNõŸÇR&˜€œ{®ž_=|¬_Å]ý\™_Ub!UwSL7…»ú‘Ø­¾°÷"û„Gfó«à«ßú‘&¿rÉþÜöüê/Ö ÷›ÚùÕ¹‡Xÿ<ãñï?2›_­¿”øÝµó«)`&<Ó'ü/ÌæWÚõBU£Ãuy¨ZÿÀž›ìR‹nýóëŸtZÿ<ÔϯԿ?¹>ÛÈçÐEÄâïO†€œMä´b'GÀ>„ì("~zë¡(Æ€ìÁ[t¿?Y¤KºZ¾jåûä¾Ì²Q@憲ª— %ƒKzJcá}±w1°G“}Ï}³ßŸ ‡ä0óƒÉïO6ßð)+Œ×ByaüîÍGƒßŸÔ¿ÿîžìþá ?\ùû⩸{Ù¥Ýûï€í$,õÞçô2 >ÓÉgþ=c½ôÙÈŸï‰l{=²·¾'è%ZuFòÎIpÅ{Æzypãÿcµ^^ßÓêe؄NJ^êßÓê%œå1Íÿó†Ý‹ìsîšê¥ ’Ã/÷Ìô’|®ÇL/ë-\/_륑fü¿ƒñÿÿwTã?ìñd—Ztã?°Y„­¼£ÿ…牺áË#ÖíQ;iü%Œÿ`jRÐöwÄL£¯e2'ȬD–½#/Eèý÷âõÏÛ2}õ!}æÛâ"Ç:’ŸÅçOì ™eÏ9ºÌ*(DžÚŸè(Ж,ÿ¸|eý_~÷Ô7mØœ¥:»¯?;_SYÚä±ZÝS­fö tg¬¤¸ ;ʰ<¢—¡èmn‹Zs‚=ó·—¸-,‘ÜøxƒñïÆ?rz|K»~Ú&î~<›É:á~6ýT†áûßá;‚âÏ–ããöúv`Z?P¦îõ¬qoõá_VÐEá>äÀ‹>Ð/çhÁ‘a…Ò×¶^ž¿ ýß'-ÜTéöx²K-:ý›EØÊ›æó_8t¹Ïô°ôÿ· 05)h{”µ`i9÷ƒ0ŸuÏFéüß”×I¸5k§ × i˜ÿ‘ó4ÁAu±4ìjbw¤)Õý u*ÈIDŽI¿ÒÞ°÷ û°4¥º³uO›Òb‘Î䎛⤵Ü‹1wv ûu›rÊ4d|Ý O§)©óôæ?wiþ£êÓIرz*ÝÅ…ÑájšvtˆyWŠ¥Ñ耰cÁ¢ÃFÞ3¶3ìÈ>œµ¬8•ûáRœ\êÝÏ™pÿÕÛë2Æê¹6eϳ^œHÿF¸ÿ ûŸpÜw‡Ç¿pCÚ÷þ¸û‘{ìuñ‹î»'Ù¥Ýý¿ÀêÖéºi>e‡ƒ#,5·ð|zý§’O®aü¿Íƒ~¸f–O à·æši>Í„Ã4rXzÍV>uû ±¿^3Χï@~Kä7×į4ì9Èþõ5u>¹&æûn…|úýªì~ê–a>=»ÆóiÂ5%Ÿ~ƒÓ¢[ü˜Û®Š}š»Ï-]>͹¦Í§¶ÀÝo)ùtêª6ŸÊ‚+E‡u¿*æ“ìŸnr{±«ŸÉ§sW0þ‘Ëã+ù´XìM}>\µ™O£á8‚âϼj–Ošýõšp¯Fî]®ˆ_´ ì¹É.µèÖ—QÿÒ¨þ]1Û_ß ~gš´ àé—þ1óiÍËŠÂZ(pÂeÕüv/²Ï¹lº¿®ýüð¯Fþ].«>?ì¹É.µè>ÿ%|þôù/›~~ð;oHŸ}þ§ÖÏïzIøü-8á’êóÃîEö9—¾äúBMøW#ÿ.—TŸöÜd—ZtŸÿ">ÿuúü—Lëé8$°ÂkyºžkŸ(õt!˜p ÑhNó¼So¸õ 7©ÅàfóÚ@«Ú–£†Ï;9μFóÐÚº«dö"±.(åW|Þi3È D®º žP؃ÉuA)¿êº[ˆÚèÏŽäéÅ[”â\ Ä%k‹‹Ú"ê 6Ë5¥ˆÎb­ªº›Èܵ«¤… b·öþ—ì—þÐ.Y•ëûa CˆŽ“ZÄýo C¯ÜÿuÁÁìy§p®Jñ[\p0yÞ)#Uæß_á|Þñú'˜+W ®þá`ÿóNáe¡Ã%¤Šêð†Ý‹ìR‹îú°V„õO5»þ¼0+ã–Îkyvf¨dçëó2ó¿Ëÿ]ëç·œ>?ÀܸÎYÕç?ƒÏÿ}þ³_2ÿØ ÿxò¿xFõùa·]jÑ}~`ƒ›~æsûÉuáS‹|šQ Œ¸Ÿœ d6"3N‹|vZ¶?Nåö7§•óôŽ*“N$ø2oÑí'/ÉF±Î¬=£­3CÁLUê̓Ӛýä¦àÜèèO‹½+{ ²×?mºŸüâòÿ<åÿ“ýäƒà÷—”çË•·é–ñ~²ö÷ŸàîG‡‹=%žŠ~°{’]jÑ­ÿÕ%¬Ó)³|ÉÞYêõ·ãy¯ßÜdùrRÉ—;'e0íìtJü~“aO"ûÕ“_R/àïGþ±'UŸvO²K-ºÏ¬.aNš~~ðÎç¤Ï?Ž>šõóçêåøü¿Óç?©úü°'‘ýê‰/©ð÷#ÿØš9mo =‘Z´ïrV›°ROèýAU<îö¿ëhÚþøÎa¾‰Œã˜ÿ±BgiµŒÞP¦F7À\9ËCÿcm ík°p),¬/báCnIÇ•…‹òÜž¸‰ÄÍ9®®…Báê ²‘îÇEµÔ†½:Ù— —ólkEª}(Ðÿ®Ã´_e‡,pøx†ö‚Ž &ëDo¸ÿ›"Óçˆ~–‚S³<ª÷åË?'P)E”Ë|D˜w†—@‹´ ÏŸ|=®èn(Àt¨Öòµµú½if-”e° À†ÒCˆ–”Âk¥s-Ô…bÖWuîÕ1Ùþò4·çNÑÖJ}ýƒÓ>rbß[Ì7¼¾>„ø¸cÚõ6 èîÿI‘Êqò'Ï¿À¹*Åo}L»žÉ&ÛiÛÄ?­Tº«<ë³õû/G‘ÿ§h]|TTd ìÑd—ZtïÿæCØü£fõëGð­X· ų¶ÞUkýÚ|DÑQ€%(pË£â9Ï<"Û?œäö¢GMë—æzh2ü“ÈÿÁÕç‡=šìR‹îóó!lþý~KVáý§phÉ ½eÝÐêzE)[åÁ”¡ nGlì·dˆï?=,»==ÁÝœ(eKýþS ½~X(ÖÀ„ùèp¢ãA[4ïW v ±2KïWôÿ´+ÑAkwrò‚ÍIlE™ÍÃKÞvá˸sãßqN¿=$Ó–XÜî¶“°T£(? 5 ôl¢Wƒ¶Ðo±|eóåѾ£QÚz—¬È»"5¢Hƒ‰òþö’dÿáƒò-ô÷'¾HÆü/…{d;¤©Og€œHÑ×§ØC|æšñûÃàBñã’©>!F€bp€Ö¤ßÐþ> ê|«RüÖr|œ­\`²¥˜Ô¿d©ÐËPßÿuPö=}ŒÇ|â+¿†ÕvÝõïd>>xÿþ9|GPüÙr|å÷/Á´6ˆ_NŠ7}ûG;ö£2 þå‡+P¬_w`O#»Ô¢»ÿØNÂR|öþøL'ŸùŒ×k½@v#òçb'Â^ì­ëµÃûÅ”È 8'Á¯×ì—É;G4ûBu÷ÿ€M8¢¬×êЮ×ÂÁYŽÐþŸªwÞ°{‘}Î~óûàÐ~9`¶^Ë>×éþŸ¡|àøxÞ®ûÅÎ'ÉîgóýJOÅVØãÉ.µèî6‹°•IŸÓKWøt"ŸþIÆz© ²‘¥UÌ{6²Iô2yŸxFní“áë‡8üzŸ±^@n=¤ÖË­$­^æ€ <¤è%{’V/ýÀyÒÑU½k »Ù»ï3ÕK>8ä"‡rIfz¹(ó7’™^& æz9û»]z‰{t2?ÜÑDñTÀîGv©E÷ü°®„Iüœ^*Àçò©•h¬—÷{eòÍAN¾Ø+vòìWÈþx¯ —?öˆgd3à §ì5ÖK È€ƒj½D&jõÒl—ƒŠ^®îÕê¥&¸jtô.{ÅÞ¹Àž›ì•÷šêåöœÿ´öÝk¦—-à7²Àòã@®—egìÒ‹7ܽèp ÷ˆ§¢#ìíÉ.µhõò-° „5Ûcr}ä¿Ý2þz?ëtÅÙ¼ÓON+³éË`þØÏCþµÛ¾÷KDÃs y&ìV&ÔÊ-ãÁy°[¬ø~‰¶ ݉l¼[ü–ªÀ^‘ì®»Á²+$®I¢*þÛ…ÏŸÄùüŒÇÕŒë°_NR+õùn­R7ƒÝ¤(µúnÍ’ p3è˜v‰} û²û³–Ͻ_¢ܪ’[ë]šùkn ¬Þj§OX/l¿_âÜNÌÿöñø÷w9Øÿ~‰p¸[È=a§xæ¼a÷"»Ô¢»þ¬aýwš]ÿ^xÓ·{ ×wö“Âõ¿™ù_"™w§}úN‚çò¼˜`¤ï…à‰‹I0Ö÷pƒ‰ì“ ~Kmaw'»G‚Zßkw‹Z*¾0ñµD}ÿ·úß«ÖwîZ}ÿöÔ^Eß´ú^ nÕ^~ÌS;Ä>Á>ƒìËwØ¡ïŸá֎܆ìÐè»VÛµúvJ0Õ÷‹í²ó³=<¾cÂè{+ÜãÉýâvñÌ…Ãn!»Ô¢»þlaÓ·›½ÿ ¸++ó–ÁÓ¹¾+§(ú. &?…¬¾ÝÎ÷_m“=¯î¦9ï6#}'€ÛJ\ò6c}ƒ "Ò›ø- ‡}0Ù}·©õ}&AÔRð®ÄwÞ&ê»ì…w«õ]m»îýW[e6}—¢ïQÛ´úNwx?fúV±Oka_Eö[íÐ÷h¸ ·Ù[5ún¤Í.½¾Ëo3Õw>8ç¢øå¶}¾ÏoÁúg'ia‹jý{<Ù¥ÝúØ,ÂVn1{ÿpV“-Aþ\ßmŽ(úvS›BvØbçû¯6Ëžo¸gÁ-Fú¾î¹§ ;:}Àõ¤ÃΈ»Õöd÷ˆ“wt ®ïäž‹ðJqšü|¾VFžÄëóóh{Pî6r´ùçñ<þ‘8)?—ß; üâK-âõ”^`ºtè{ßýRú)Ãë)¥á[œâדããzÊû52óf£íëA7­~éÙ?i®‡k×?¿‘Ö?kTëØ-d—Ztë`ƒ›¾Æôþûúp¨³‘Õ—m“y}©¸W©/Á¸PÐjkì¸ÿþf¬ìvmwû7V]_p=x;ÐÍ„žŠê‹æþû@ÐDGƒÖ^î¶ ±c•: Þ_d"ËÆŠg /ì9É^,V¬â¥ÖÉëÄL»¸óßõÜó9oQ ì6 ›Ö« À‘Xm˜vúz¥8Ç:h¶t{ƒëA‡¾ZìV#Ø {×Õ¶ï¿Ï:Ñ•VkóòAþ³ƒÛ¾ÿ~ œ7®£ü_í`rÿý4ðSˆ_¼J›Ÿ½Àt3èÐ÷R‡îÚ¸ÿ^;þ#Tn:\Uªñ%Æÿ8ÿWÿÀŽvw¥i~.ÃÂ8–Ÿ_Ó ºA;…ñŒ7µ¬´#?ÁírëºRŸŸòÍKh••êñ_ÌÏ1ÿ×Òø£ÿ!ûD»ˆL‰Q²S|M8H ‘1â÷ï »Ùýb”ì •ŸŽIe–ÆkÅ4p…gmòìÀ[”ÉD ùÖª³³ÂJmv>^!³÷×(Ù9„E°N”ì<nß~Øû+Än­€})Ùw¯PÏê| ~ñ³Whò³=6k ö?bX:¤ÚÊÏ|pÎEñËÅ8˜¼¿æör™¿Ëù7˵ù¹ÌîXÛãç2ë‘ÓOhÇOÍýdÞåE‡[¸\ÔGGØÛ“]jÑ]ÿV°fËÍ®ÿ,“ñ׫Yv&ŽäÙùd›pýÌ«yÈ¿–ÙÈÎéY„÷ÿÀm)¹í^¦ÊNkK»厞ÑàG¿`™¨§ŸaoGö!Ë„;zJêžÿ_œøzË4zú-#oWéõtÑŠ§wËÔÎ÷lÍ+~Í¢UóØ-d—Ztó`ƒ›m>ÿ«ç¡–Ît+næ?`\(hµh{æ?K1ÿYIóŸ¥¶æ?@7zj©ÉütÑÑ uó°]ˆ¸ÔÆüd"Ë.UÍ`ÏIöbKmÍ.«¤w1 óŸšÿDiç?@6Åhæ?Kuó°Óc„ùÏRÝü\:ìô(ÕüöÈÞ5Êdþ:Ñ•¢´óŸß0ÿYa0ÿ‰2ŸÿÀyã šÿD™ÎÀO!~ñoºù˜nú>Êlþ£}ÿ7Bå¦ÃÕùM5ÿY‚ùÏršÿ,1šÿ;FØÝ%Ÿ»c|æ“ÏÊ%Š„Åû1F€Bdß%b'ÛÁÞšìÝ–(–ô¬È£àb».!ÕjîÇxµX&_.S‹7ëoZñž{t™"Þ6K´â½Œýèb±w°û‘}ÉbÓû1~†C;røu‰ƒÉý¥ÁgÕeos^ól´ë~Œ;‘²{Z4?œÓbñT$ÞDv©E«—߀-"l[¤Éx<ø`V¡-‘ƒx§»oPª¹;˜æ²O¤}ûÁ¹á™<ËG*]Ù~°óߥ” ‹ÁŠûÁ‰ w¹y‘ø-EÁIöµ‹Á²ýà ßDU ?˜ø¬{·maw_ªVªg¤V©¥ÀJyAÜòEšýà× eîQ4.,ûtö?ÈþkùÜ~ð ¸-%·Ý 5õÖÈÄ(}yëÂza{?¸ œRü_9ؽ#sìþá7ÒÂBñÌÝ=ìR‹îþW`; K]`¢ï`à켇Zv àúž§è{0˜Ò}ú®ÏÊäÙr‘¾Àe.áœËc}_ÉËDþ!~K‰°ï"{J„ZßÞ‘¢–‚Á¿*BÔ÷pØ/QëÛoVßÁ6X¢èû@„Vß…Áå§c6ˆûôz>ô¿˜ÛóFØ¡ïƒpÛGnWækô „Õv­¾ÇG˜ê»/œ{Qüq_ ï2p/Aî-ç‹g.3úäv©E÷ûÇÀ.öw¸éõŽupˆ”Þ¯D·FÆ* @A£ÃmÌÇ›ˆ¿ ·ÉmP¸z>ŽéhY ¥m®ž¯¿ Ãø¿ˆÓ¹A«Ø; ð8÷äË/…,ýÑ;AËO{Hú¶ð«G(«ÁþðíM¾³ÂDÑ6ƒ½Ù{„ «Aƒ÷OçƒG.ò¨¦ÿ†bþ»Ð`þË:àþ0ý7ó_8o\Èã¥ù,öóCÀÌ68À¯Ö¤?µõ|ÇÏðmGñ‡Èñ1_® ¦’A|Ç0)jçÏOšùÏ<ÔV=ðóãÃBÅó°ØÎ8Ò ‰ákó¸ ùÛ'ä ö½dñ}hIê»F9ÙãÄ{Ôí¯¥ÞªB!úûÕ7ücä±x\ß]xl{½ºožÚ‡ýD¿hù:(ÍçÅ›–9|:Xœ¬*“Mšï3Ã"ô}„ÍwÝß›ç ]bi›©¼U1އ#„/Yž_X=ÒGgꯓ¾_‹o‹?K(¶Eô´³ÿlЧÌÖÎA™Ö?m¬ép6¸Vð$gë—tÁeV¨xÿ+ŽíÎj´òúË ñ¬”V:B9+9¤ƒaOôSˆ ý7_u†g«b]va¾k¿E9Ã!ú3˜±š¿ø~³¹§òÉfý“ÙÌY:ùÌ*ÇŸ€øãæ+'ßâ‘jíN!vî+Ÿû“ÌÏý,N¼îúâŸoóü:Xøùm/œßGÁ²ã½pžhÞÖPÁÒGJ¯eCWôç†ï¬íùõÏ!Ÿ\ŸéäžàÝjÆV\Y‚2­!œÐI8˜O¸ê„:„ˆ'¡3°áÊI¨¢:¡ßú–Aô=í åã,zlš¯ åVYÏæ—Y˜­CjÐ)ÕÙdV9þú¹rü5a_r6ßÏUM£û¹]˜ÍóY;XŸ¯…á˜?ŒŸ¶˜¹ì|²n§×Îçû¾ÜÐ{®î|ÊQÎÏ‘£œ UeK¹â÷»ØšPåû ›«|¿Sëá/ÂVè@éúEõpç–u>½¥ØMªc45P©³QÿæÙ®sø÷ÙSÙµ¸ç`–¬Ÿ23…ÜÓW+é<}™œ` ¬)Ìšõxoõ÷ßáÚÏã'külq>Wöjd—Z´ó¹Àœ ûf¶é|îjìpÑÂæsw<ù|.%J™Ï%€ÙjáAÏX[B':ÐK‚=. +–ÂNèdxú’gDŸÒm£)Ý1èh;B‡pÔ/Ù,#Ä.‡bäà*:Pü“2þb–Œ? áx6àSsXO/ç%}·pŒD8íbåÖ㘜-‚ĬX,,DÉŠIAJVwÐdÅYV)ÿ*åψÑ.D©nÎb1,þyÿ„jX|ñ%‰¬ÇVÊÐT–@¬âæàJŠ8Æê8ÓYz“C‹ûIi[ØúÉ Ux:o®’¤±þ ¦¹p ø™WÀ¾”ì»ù²ê’ÅýRàSg6Oím;ú¿ùOäóÕm2â¤~°~ºW}5îÇÒ“ŒŸGΘ‰üŸË㠔Ϸð>Ï«À.ÎÕc+ûÈî'Ó÷(·ÅàóÃqé\›õeF Ÿÿdº¢÷qIÕK9užk\ [ ž«aÜLåçuÒëïÅvBÄÌ9ü£‡Îd#;jzÙOÆ¿w­©GÉ3äIãoqO}Ú™ [º˜GZoHE‰ÏsT9“o¦¨Ÿ¾ÀzÍQr¦ÕL%gV;iræ¤ôݱí 9H1)<çs#ÉIñ»1ƒŸk¾Þdpjº/e6ÿÔ3”£ÅÃºŽ¬÷¦‹ÉûœÙÊGê"Db0EˆQEh »;ÙƒxK6™¨ ¢<RK­ÀãÎÁ,eqèc€C·ZÖõ«ðaoÈÔ5¢¤DÙû^²_’ÞþšZí«àÔÃï•N-Fä6©¥š{jà»ì.a_ %uØ_ƒT—â7ј[ò]V”žÿH ná|5ðÖç“bæ‘cF«b>Ÿ†õï,%æᎂKžÅ?ÎkKðÖ œòí¬´t–ð3Wôñ4ñÀãÀަ€‹YË?»%Z¿K6•q™U› NÂ~DCøÕ#¿¾Ö–Ðî•¿(‚„t™&žÄ·þ²ýU ·WŸÆ¤0­4öAüADóiŠb÷Àš@V/öѮɵ}¾ † ´YÇNãõ´ÎG]=ýþí>pA#y%ÿÔô­úzœþ¹õó±ÇþÒÞ@l†p¹›¯§,îǤu‡*O•ƒ˜©(¥ƒ¿È,%0þJ[“Åp*,°ÒuæM…7L• XPÓlŽÿkw~z&Y †Ïùaþ3ƒ“#­dúËʸqȉ6Oá–©|Ê\[ZY즣:⨶žÿEl/:üB?Q§aoOv©Ewÿ° „5ó3»ÿcŠŒ¿ž.=ÿÛŽÏnŸ„ ÷€ùc:ù×;Ÿÿ…çòL˜â€ Káù_pÞÄH-Ïÿ‚t'²ññ[ª{E²»ò#b?þw•Fÿ›ŒÏÀùüŒWžÿ…ýr€ƒúùß)ºçÁn`¬üü/‹§~þÜ :æ†ÉbŸÃ>€ìþ“ìxþnUÉ­õdõþfn Ù žÿe½0yþw’ì|zÍw';|Áó¿p·{Â$ñÌyÃîEv©E÷ü/°V„õŸdº~+ ‡‚lh°œù™+<ë&ãg"ð]“YuyÔ‚W—us”ê &‚Bno£ºŒÒª/Üz‘Û„ñêê‚\­´&¡MÇŸ9Af%òÓ8ñ[J'ÛMâö×ãÔ¹Êú3fR>bRlëÆIê,=;^ÉÒ¹ fÑVŽÓg鯠úNR²ôþ8U–6Ô€B 'v¨ìÅÈî:Î K1ÿ‹ùßDÚÿ§ÉÏ3@NL4xÿÛ8žCŒó- Î!õ¸/?;½=¹+ž¹š°W#»Ô¢ÛÿæLØ7cMï/½:Fv¸8)|P3®ð”YÂþ'˜­$3c츿t*Ü&‘Û¢1j…cœë ´¡ÃÇã§æþÒò ËíZ›;o½±þóå¬Ó%wÄûKyŠÈÃÞâØ û²'zkÇ9g6α4^TêxxzûªS'bŒ’:@µ¥øƒ½õ©STy_%uÖy«RÇØßJÞb‡î–í·Éþ~´æ·guõ~ |6’ÏñÑšü±™ãcðü«7/ó6î/ýÎí(þ¯Þ&÷—–_œøz£µãÏûQ2óf¼¾CF;Øÿû[*~6R»Lœ væX%A³±Î¨~}¦/¸^tØ™^b·šÀÞìݼÌ~:ø\ÄWòÒäçó2òdŒÁý/^¦÷Ãyãÿˆ—ƒÉó5ÓÀO!~ñm~öÓmŒíùa#/ž§'Ìæ‡.•›Wg„¨—Ãeûson—Zt÷;FØÝá&óÃ(à‘Þ,;S~àÙ9Ç_ÉN_0c)dèpûöWÜàYŸ<» WTÙ_)Î…¸2Ãç‡éÃ0ÿÍÉ[ÃÄoéì)d¿çûƒˆÄ…9¿*n×lÕûÓ3íëe¾^å%ŒWh|àËĪÝPÁí!Ü.įõ½«ª\ß'ô¿½z¼©ïí—¾K¤±Hʯö½@²÷EûÈñ†ëæ¿D©„”ãõó_ÍÝ&óßñàw½øßj"/wãú×¥÷¿™„yä€8V@Á oþ§ÓÃ~”Uo,.Þ¥ö¿Fd¯‡vHÑûßýq ìN‚€Usùï÷ü[®™ùÿ<-¼oS¦ô¾Å„™Y~5ÎÆ~gÑ&"íqÒû4{6Aí‡Ððqæãý“„¬‰ÈÇÆ©[éÁXÅþO¼°—'Ç{Üïl§v½ïˆÂµ]=¤_'x¡>ÁŒ7óÝfÍó„š/‡ü‡c5›51z³š>V]¡®dïˆöбf Aýù÷1 íaœ Õ«‹‡39gt×/ÆúùÚïüŒÈÿÅü×ýÆ{ÑG#=gŒºçú‘½7Ú!EïßuVaÆøðï‚Ñ4ÿ㊙_³ðï“éÒ¿¿%ÌîX\#¶áß³‰6iKF{ñïx‚ºš>ÚÜ¿{²+"Ÿ­n¥'É^íÍGüû¢KíN¿R(¿Ž×úw™1Ò¿wj;ž…?5Êèßÿ%”|êŽÖøw6&cVRW(†ìÏ¡=u” ÿnH´ºHë6JçßF*{.“ç?Œòéß;ˆ¼Õ%òÿqÔÿà߯ý¤/©î9ÙG£R ï¿#X„EŒôáß ^–Ë|~×V¿ï¥Hÿþm„‚ùŰáß«‰¶ißðâß9}¡sF˜û÷HBÆ 2t„º•z’½+Ú# þ=bŒÚÊ¥Ô8­7)ýûâpuv¬Èøþp£o%Ô—c¥÷¡ñï÷ô/ÌjËpu…²É>í³†ÛðïgˆÖ iÆëü»Aj5ú÷íá>ýûü0…üó‘ÿßÃÿÿžKô‘þÍ0uϽBöÐ)†÷_,aÃ|ø÷SoÎe>?¦¹ðïÚ¥—%ŒfÙ`˜ ÿ>Cë¿Ñ¸ÿãÅ¿t.B×Ęû÷tBf#25FÝJ#ɃvwŒÁ¿ëjä²QšŒÖúwð0éßBŽ׉1ú÷ÏÑ ê§QÒ¿GÅhü{#ÖaV§£ÕzìÿBûªhþ=Žh£6%Zçß½ Ò}”Éù÷Ÿþ]EóŸ‘"ÿ'bþÿÞIômH¿¥Yÿ‘ýc´CŠaýG0ÂÞ‰òyži‚¸Ðç§´Äõ_’jýG˜F˜iï(ç™þˆ¤õß\ÿEi=ü”ÝMЯz:RµÔgz—Ðs½‚ÐÚóLÉ„t#ò5irž©7¡»#:ŠÐú˜ô'leÄÖ‹”1©>ÏôÛs4þááÍÓÏ©{ö[²ïFûÑç´1©>Ït ”Y¹”Á«˜Á'"EÞO‹%ÈØáÚ ÎŠÔïv%lÇá2H7òTçYÕ ¥ÇW‹íøœºZF(ö‚a¸zÎÇy‰ߊðŸ"tñù1A>fòû^ºó”·óLãˆ< óÏ|ÎÏÇy¦v„oø¢>ªóL•SΤB¿Føù8Ït(œô?õ?ÜO·¾_N˜%1ÞïW½ åXœgrQV£±¸œpÍú‡ì½Ñ)†õÁj ¬C¸O}¹¦.EÃóTq='õåÂ쌙ž ³¡/oí-¤- ó¢/±‹ÐéaÞõ¥3¡Û#z¡µúR‘eÙXAšèË™P}2J o‡zÓ—5„]Øm¡æú’GÈ×9=Tݳn²Ç¢}r¨…¾DGª¹e€ô Õé‹AŠ"µúR=L¯/'†*Ø£‘R_bBõú²ŠpŸG¢.UWkÙg }ñPú2Žà£>e¨~ü'H÷H“ñ?Ô§¾¡ñÿ9ÿC}éË!Â@üïCôú²œ0Kž3yÿåP_ú’F܉˜ÿJþòý—„øœw}i;Ô†¾”<«dõ(B×tˆÚ /ý Ú!Åðü‚m@Ø‘g}êË›Dȉàú2®±Ð—ìqR_â ãÂL_xÖ†¾´%Z+¤?ëE_üZ. O>ë]_Ž…(èȾ¢ÑŠ«Ï ¹‘»¤‰¾¼@詈~—Ðz} 'ìÄŽ1×—æ„l¬\[ˆºgË’Ý퇘èËY•¾ÜUòžÁJ»ÂDgEŠÔÙùù4L«/_„èõ%›°“ä¾üÃS5bB ‚ÅN¬®ÖÓd íÎÁ>ô¥xŨ€×¬Ó—39j²ÿ9ا¾|FäÿbþëûÒ—4ÂODüƒôúò,ašT¨É`_úR•¸•0ÿJþ¤/×*˜ß‡z×—ƒƒüà O}™KY}<×ÿÕ^ø Ù_@;¤Öÿ‹FXÆ@Ÿ÷ÇZ¡éP®/}©9JêKi” ÁµÀ@çá:Ú>¤]vjõ…t`>A?Eè§J_tçU³Žè|BëOÂ"lb£œRÔçUòID>îT÷@Q°bð¬°Wtªu@ýƒŒ+!êHû†˜;‘yF¤H¹šGOžÕ Àz§^<„ÍxV Àžªy¤äP Æb3‚ÕÕjKöVhöþ<Ôâ ŠÿŒÿ`}üädˆIüûù:÷‘ÿ‹ù¯öóq^5ðÿFaü'Ì@“ 5 ö³ÿ<Ô’4þÆñ?H3þ“ý Ú!Å0þlÂŽ ð=þ!g0Ï•µpü¦ÿ ãÂL_`gü'Z+¤ð6þ´hŽ‘|Œÿ4þ#úz ùúâsB.Fäni6þz*¢ß%´aü'ìÄŽô2þ²±rmšñŸì~h<Ðb}1-H3þ÷§ñ Žÿýuë‹ùùt nü4Œÿ„ÇâVÂü[(ùËñÿÿƒ}Œÿýl¬/æRVãøÿŒfü'û h‡ÃøO°h„e<ãS_Z¡i0×—[5püTÿ„) Âñÿúr°/ÿH»Ü׋¾Ì'è§ÝÒ×»¾d:Ñù„ÖêK!ˆŒU&úRеÝ™Ðz}¹ÙGÁ^ °ú˜ëË·„ÜÈ-}Ô=»˜ìóѾ®…¾dª92¼ØG§/é;@«/Q}õúR“°úò^½¾üÙ[Á¢.öQWë²ïGûo½}èËgÿ/¿ì­Ó—25Ðäù¿}|êË3Dî…ùGöñ¥/U _ ñ-zëõåZ/ŠÿþÆ }ÝÛ—¾¬&îòþ"ÿïzéõe&aÞèï]_Rz›é‹î}6ý(«ÞX\|/µ6"{=´CŠáüSOv§Ÿ€UëeÔ—2R_öá›~\_VUú²1TêËBÂÌÅL·õô¢/³UášB´ HËí©ÕÒ@‚öEèÈžÚõEžêA6Õ íè6„Î×½wîJ{é-é¡R¦\ß«ŸÿEèˆ>JhP.RÄ9„ÌGäRYEÔ¸º*ßXBEôtBë•«+a;"6°‡T.õÓ3+²¼rmÝÕ>s½»b¿ÒWØïu×+W.Y `ÇU¿çû\£ )Ÿ¹˜Ï¶î:{• /öÕ Ø¿{è,š°}¥€ï®°¶„k…ÅFtWW« Ù+ ½Ywý óäúè|7ýs¾ÛM§_Û²©Q.Þí.Âx°¹~½Läç1ÿwýú—ßÿþYÄ'vC}©¢`Z¦…I…Juúõ©~Ýèªp¯õù—Sò'}<@˜ïz{ׯ•Ý„pû~)ÜÙĉù/éª×lj„Iìm¬ÿÈ÷xÁs…6Öw(«zX\PWµ¯—tQìza,t1ÑÇS;ް[]|î¿,%ÂB.¤ùWúøÞ`Õó¯ ó fúqû/C‰6i ]´úHáÕ˜  Ú³‹VÕû/·;+è›=º2¡õÊ»—°ß öXg©6êý—O ù"ÿÕYÝ/‘}:ÚgtV«zÿ%¨‡:ƒˆÙ™£EŠÅ‚Ôï©Õ—N]ôúr§“‚½ÕCꋇç Ù9H¸}=Ð:©«µ’ìËо§“÷ý—— ý<¢ßï¤Ó—ÑÞÃ;ûÜiH亘§Î¾ö_nt¤øïŽñßIŸó]wc…túö_^¡¬^ÀâvT{‡‹ì£Ñ)†óë‚°ˆŽ>×Gå‰Pº;϶eE|þ,ãóRs¡®:ØX­$Ú2¤íéàe}ôA_BèG¼¯¢ŽèI„Ö®ž"dsD*H“õÑ£ö ú^W®Nhý,ã0a¿Gì™öæë£Å„œÈÚ«{6쯡ý_í-ÖGe4qLôÇ Æ´×M/¤AWmøwî ÿÚ)Ø¿ºÈðÏn¯Ÿ^ü@¸ý]D±µSWkÙ?Gû·í|¬^&øó¿>þ 2¼‹Iü·÷¹>jH亘§ö¾ÖG7ž¦øïŒñßÎ0þæ»Î&ñßÎ×úh6qgbþKž6Œÿ„Iìì}~1´ý—F”U=,.èiÍøß–ÆÿN8þ·5ÿ va·Úú~ÿvâú’QÇÿþªñŸ0¯`¦·µ¡/C‰6i m½èKc‚6@h϶Þõåvÿ;âøOh­¾ì'ä·ˆü¥w}ù˜Ð ú Bëõ%°“ûBs}q2‘=Û¨{¶9Ù£½c })ÕAÈ—[+\ì 2(l­Ó—ÝùªƒV_޵ÑëË{„ýW©/ðË ¾¤.‹ýWkuµBÉ‚vwkúÒàuÞ­µN_=EúßÞäükŸú²ƒÈ[Û‹ülíK_f~&â—<¥×—‰„I4©Ð€Ö¾ô¥q[cþ•üåï S®½w}ùã)ú²³•’Õ¶v¢¸K­Ô^8—ì£R ç_ æAØ;­|Ÿ%BP;®/ KâükÕùWÂ4ÂL{·²sþµ¥B»ú´ •iåE_vô+„žné]_Þ%ôD¯ ´öüH2!݈|MAš%twDGÚpþ•°•[¯¥¹¾üÖBAþÒ¯­…ºg¿%ûn´ma¢/êó#Ÿ´Qr.eð*fð‰H‘:K±mµú’ÕÒpþ•°ÛJ}ÙÈS5çG#\E,¶c uµþl®Ø Ú{پο|+Âj®Ó— òA“ó¯-|êË8"Âü3[øÒ—v„oøÍõúR‰0åL*ôks_úr¨™Â=ÐZäÿ{3½¾,'Ì’Ö>ο6÷³>?⢬Fcq9ÍÔ^Øì½Ñ)†ó¯«°Í|î_\iª.=ÅõåÒC¡/'º«Î¿fçS¸hjcÿâm¢½…´EMµú"Ït,B§7Ué‹nÿ¢3¡Û#z¡õûå [±Õ›JPï_œk¢ O·Â8o¢î¯È¾íû›¨u@½ñ^Ku¤åód~,R¤\'ȘVZÈlª€.„íÐJ ÀžªÙ¿¨B¸ Xl‡&êjýјô¿%êïû;½Ñ?5ÖÇ?A>hiÿM|î_Œ#ò(Ì?³‰¯ý‹v„oø ã?aÊ™Tèׯ¾ö/tïÃÙ@ã ÿ4ã?Ù?F;¤Æ‚yöN€Ïû/ƒˆÔ‚Çç³÷püï¢ÿ Ó3íà->Õã#êÿæØÿÚø¤w8ì&èW=ÝHŸßªî¿¼Kè9ˆ^AhÌù ‚M"l¿¡»K3™‡È÷Jõ™¯R!G#2ª¡FÿÉÞíCjf!mœY{:øtÁ;6¥Yˆ<Ò¾CSuôßh dx­)®ÿEò9ßdoS­(k¨¥¹„ý¸©¥F•(M%\ûquµ†“= íé QÒ½>I;^7$b]$vk _ÿÔ§õO“õ¯‡sOA/ë"om‚럠O¯zYÿ~&â—ÔG}¢û7 “ØÄëöC¡^ÇqÞ$õ¸­1ÿJþrþC˜r&ük}?xyÂ÷…¦óŸz4ÿiŒóŸz†ùa–469ÿù,xÜôþîþ¶‹²ÅåÔÓø?Ù{£R ó‚Õ@X‡z¾ç?uiþÃ53Ë œÿ´SÍÃGЈº^ôµX=ÿ!Ú[H[TW«¯¤‚±‹Ðéuµë«®êù¡Û#z¡õZUž°¥ÛHb5ZuîIšÿ4È‚'¥Vå©.ì B®AäÒ'Õ}õ.Ùç }î“&+&¼¡|þÓP-‘”Af0Q¤HuoO6´ÚXW¯M¥ [ÒPjSOeR)µéLw²!îÖQWkÙ7¡ýXý eÿž‰à%utz4‰ I Mžÿô¤ŸS^žNäÖ˜ÿ€'A>ñòûßÚ þa¯UGÏ?æ§^õè«:Bö=òöþÊ*‹û‚§ÐSÝÒÉ> í¢xÙ`‚#l|mõÃËNî.)5kP‰æÉe5ˆS­‰»&BºTÒ·j)˜?ê‹|+ÔO.3{Hß)•óIÌõÈãëÊ4þ×AÍÂ$¾vl{c×X]_)ÕÕñõ1_Ç>{B_ñq!djuóøš\K_-‰Û¹ýž0Æ—¡Šjã«qu_«žñuøq…ñ}m‘ïíÇÕñµ†ì+о÷qŸñõ2žGÂûëâk4A†×6¹ÿù„ÏøjH亘·Çÿñu¸]-¼þjê9β¯@;¤èç£o,aóªùxžËH‚ÇÔâ¡•wA„Ö f2´º¦#fZÍÞóeùÓú§&î…U“¡%Ÿ/{Œp‡wÁ_ÎÕÏsùœ‹ù©¿º•f=íïùË™ ¾,øyÕHÂÇ ~²¿ZÕz’½kMí¬oH5ý¬ï1ÂV¬)g}³xªæù²¿UUp¿ÔeVôW×é[²ïFû¹ªfž®{žËl¢ÍDÚ’ªúùA’j˜Ìÿx-¼?_¶‘[cþüýì?Ïåæc ýzuô…ªêž;LöïÑ)zÿ^F°EÛõ˜ÏõÖT"dñ!öeááîÆÒ㎙NzÌËzk‡jYTŸhuÖå1éÞòyžwª(¸[Oà˜÷˜tï>ªò;Dn¤åd_‚ö/«(î]æ Õ*ì5¾„Àª(«°¼]žIäÿ„‹AÜd½:­»à±ªêµ!tKDú^ÿ އÃ?/¥”â ºó•òµÇqÿ‡Èb˜üZ軽ѧ*ëWŸæÃÇîìa¹+>XM` Äy¿ÈSê(ö`²÷\}>¬Hįª@<ßíÏB¿¹Âx‚Uù Ñs*‹è/ÓˆÆÿJ4þW…W®¬®Ü^²ƒö •ô›ä÷†ó/Dœ‰ÄÆp,§—7ÓÇž„늸çgÔÇÊ„.覄¶ÔÇCåÈÿ« ÿ—ó®óý ¢7—Óëã‹„™VžÑå¥>^®¤– `âõǼǔSëc3²T1ècçò&úøwY…£€D§—Óëã^‚~SY~½¬ºrKɾí;ËÚÒÇ4"NDâëå|éã3„ï…øaeuúX µ+›<ÿ±¬O}<_F!ÿ\ ×ÿe|éãjÂ/GüwoCÓˆ?ùo”Qù—Nûº¢GÈÒ¤>>I°š•¤ðÝ.£ÓÇ¿KSÿW”°neþ}\CY¬¨(*t¬´:ôç=íbxÿÁöjißï"BçŠ\Ã~úؼ¶êýO„ñÇLÛ”¶¡gK)´SíN)3}Ü@¸µˆÛUÊ\gò D¾\JÝHÉžˆö)¥Lõ1€}8²”™>>I¸šˆëH8£>^÷SÐWÊ tiB[êãj"/Gòw~ÞõñUB¿ˆèýôú8†0#Ê÷K)©K4ÔŒx˜w?µ>–!»£¼A«—2ÑÇ F‰÷ÓëãR‚.,' ÿÞ¡®Ü›dÏAû\‡-} #â³HŒóó¥ _ñÝ:}|ÄÏ‚é^Y“ûŸŸú¸ƒÈ[ËŠü‚oú8›ð3¿DâmècñŸE~"ñú@èúˆî!K“úø XýSF ß1•úø#Á©`µ̶>Ρ,òˈ }ÁSäûŸÉ> íbxÿ3Á‚6ž¥xÝ?z’à5Ëputþ Ô±üRÿ)R0•Y>Ƴ´±´˜›y¬ÈA)÷Þ%ÜÄÍ…ãþQ2!݈[¤n¥²;Ñ#J¤ý£4Ñö$ák"¾#O¡½ž…Ôÿ¥´ûG•Yh÷~ ìþRrÿ(”ç§Ù?ZL¸ù¥D™ûYЬSÙ_Cû§<Åjÿ(ŒhÏ"-RTñ܆ -Kã¹4«©ý£ò5?‘)Nðº¤{Ì¢¯@ú±Gêž›Cö|´CŠaü'XÂ^}äÿ{¼«÷o÷áß-ý¥×$Ìã˜åÓæ£ÿ«ªö>ÿP¡ýìÀùßCéÜý«ñ” ŪñðËÿãCu·Ï&ûL´/a)ºW¶¨î#ü(ÄOy¨ëïÞéî0Yÿ³«,VÂ;_útó’×u&kÀ¨î¿ÃdÿíbØÿ#Ø"„ízà£ÿ¦<›Ágå/Þ'ú/é1Ù1„y³L}`OŸê³62;?0Ó§Û÷ÜÍb+¹o®Oû ù-"¿º¯n¥Ïɾíïkõé£Gj§˜NølÄÿë¾ZŸF’=¦Ø¡Ñ§Iôúô4aŸâXÄ­º¯×§²„óÃ2Ÿº¯®Óo÷û/EÂ^tφ>­&Úr¤}wOç¯ùy³Èa|ÿí}ŸúFäg1ÿ¸ûÿƒ>ù½2Ò;ßS÷ÜÍ»äÿ…Â)†÷_lÂ.Þõáßü½Bîßß~+üûÍJª÷_f2f9ë® }z†h½6ì®^ŸÞ~ zþ á+!¾Ó]u·ßø‡ôÿ‘°—»ëKŸv~+âúG×ßäƒGÆþκû¿èS8å5‹ËúGÝíÉÞíbxÿ7ÁÊ ,àýwúŽ?ñ÷ßÅ=¢ÿöVý·‘0ëŠ,¸cOŸ^ æTd¾{ÇLŸ¢Ž8×s}zŠÍÙàŽº•*’½,ÚkÞÑêÓc-8}›®ÿÀÿu[­O[ȾñVŸ¾¿£×§Y„ñ@êÓcwôúä&\,–9㶺NN²¢}ìmúT•h•Öâ¶Î_¯ÿ­@®Ü7úë7·}êÓj"/¿/òÿú¶/}Òùw:Ñ'!ýÝ¿Õ=Nö!h‡½·"X3„õÿ[ïßšý“{)„Û÷¸‡×Ø/<ü·²ÒÃæð=‘éõ¿¼(”ú÷ŸíC¤møK£Pò÷“ šŠÐjú{ B÷CôhBçë~÷U›°ÕÛô/;êß{üyKAÜÈ_n©{à²ïGûé[2v´oк£öØw‰9™+DŠüYJARîjéõ¿ôLØþwe íᩚ|Õ'\,¶ÿ-uµ o*öûÿ{[¯¿÷8Dèˆþý¦.~Vdé?ÆøÉá…{ÿ½G‘'bþ¯ßrøø½Ç3„ï…øa¢>ª¤º„©eR¡¿o:|¼ß~ŒîþÏ šÿÞÅݾ¡VÂ5d_vHÑŸ¯z‹`¹›wÃa8_U¬9_Mœ>°ä¿€“ˆ¥dˆv L[Ìw0Kˆψ9®‚Z«BéþŸ ïÎmÁ«vCÄèZŒ¤]äÿÝÐß %Ÿe®¥Òüžô"|ˆ„ jB¾ò›ç>Ï))å?'ŠÑóßå\y?ú羯ú¥G8e6„ËvÌ.e îÔŸjŸnE°f·eOW½Á1âàôÊR"hù¡èü)UfdÌwîËÛåŸÛ™böå¨pwÕá_KqC]þ©Ö'þo´UUiûJY›ÿªR¥áP¥ü—.ççÀ^<¥<ƒ(yƒCÖq‡¬Á>Wã~+?æ ?`›sDÉñ ãÍÊ)•ZR"ŽJï­aPƒõÆ ÕøOù7ÿ[4yèêæ©Hö²hoü‡;ç;ç\-ÇÏ1û"(þ¯Süÿ…ñ]ÄÿZŠ‚,ýË$þyMœ» VšŸ×J#òDÌÿ늷¨Þ "XI  µKÍ^¥Ú¬DärXF“ëÒ#™Gì+xY¿ŸwwsëMᥘË2—È{PDÓÖüìËùÛx7ÓþÏ5¥ù·d³¿5ðoµ¢ÆJ?³.‡Êß½&+ZPGQ=ZÿP¶ÏŠlÍÎbw¼î€3âOÉúÝÝSÊÓêžè?|W¢;‡ÿÌ^Üœ;€Í½ Ú«šçzÍnjz;+;—]v).¨\"[ˆ±ñ¦hÐ n_XXRÂãçgv)ùª¼Ú£ƒÞ.–V°_L¡´z«ÿý+å<sÎ)PÆýÈÞíbøýÁj ¬Cq>¤~ÿËU…p‰ s~³]BlO>’¿ÿ ÌÎ"Ó3W½Ïø‡¨$c1ó9ÿª—)Ñ8‚ŽBè ½œ쇿yE%·Oá)$8íIW䌫ãy%žr¯ösø;OvÜ•z1o¿§"ûójO–²¢BNÈ:¨e°e\ü‡È¸îõ`þëïŠýüÚÙØ+úÙØ—„]ÿ‡œuƒ3ÐlYÓ‹öÿ7Ë\ÿ»ºNidŸˆö7xJ¿Pí²†æ?„ï…øÈ+0_ºìåù§„¯„ø¿+=î)E?»òùÿu)3úŸ°ïÿÖB‹¥¬&âòë¸ÿó›â ?Òï7 –ã#ÿdž¿óbAh‘j{@;=CõÂò†ý¦›Ö#HíëÆ±âöob>š_hg}vø2ùÿ5œÿ]Vû겯@;¤Îÿ,aó.ûØIð˜k\Æoj4è¾T£®„éˆY†^¶·ÿðè’¼W ˜Õ/K5Rÿ%ÜaÄ]¸$#Zsþ—‹ùé%u+Í {Úß»$#šï?ìüM# ƒøÉ—ÔÚ“ì] ´:ä²>P#lŨ³xªöüï¯ î—«¢ÌŠ—Ôuú–ì»Ñ~îW‡ó¿D›‰´%¿êüuA’®ý5è’Ïý‡vDnù¸äkÿA·?zó…~ý ú¯êž;LöïÑ)†ý‚-BØ®_|î?L%BÖîáû6 wÿ#=<Š0á˜é¤_¼ì?œWµx}¢ÕAZ—_¤{«Îÿ^Tp·~¸*G›WU¹~Gè¯}þ¢‚c8JÈùU’þE¤YHÚxQíS“ÉžŠö ›¯ºõ/Qz!eØE½þ¤öï&úwÜã®:A!ÿü›Èÿ.¤¨××[ óåoÆþÍ (¸Qlïþx:e5 ‹{÷‚ÚÿÂÉ>íbØÿ"X3„õ¿à{ÿë¼Bàz>+?âKá¿ý-ýïaø(1rÞÎþÑ>DÚ†ó^&{“ šŠÐçµ.¨Ùÿ"t?D>¯uA9Ñ«MØêˆmz^j·fÿ뜂,¸„û_çÔ=ðÙ÷£ýô9©ÝÚç¾ Ùÿ"æd®)r›.ƒ )—tû_ç û_„íIµÿuΡ{ÞI}ÂÕÁbûŸÓìUì÷Åý¯s>ö¿}Ñ¿ŸÕÅÛ ‚,ýÕdý{Î÷þ‘'bþ¯Ÿó¹ÿEø^ˆvVŸu SˤBŸuØ^ëá3¤ÿ¿àüçŒfþCöh‡Ãü‡`¹›wÆg|'få¯]/âÓySÆgg´ÇL‡œ±Ÿ…?Sÿ_Äþ?ã%>ô„üì=>z.¢·ZŸS ›…ØœŸÍã3”!ˆ üYÝO“ý)´÷üÙk|žQÂíÓ óæÁ¬ü³.>äàm|þú³>>vÞŸÍ~ÖÇç‹„›†ÅÎ;­®Ö²@»ç´÷ølGèÖˆxZŸ• Rþ‚1.öŸ‡NQüŸùÿzÚW|~Føÿ"þËSúø|ž0SÎ+yÚW|êæoí)«6X\Ô)µwø“½2Ú!EŸWO*°ËçÌqÊÇúd Á7žãѹk©ˆÎ¥×et¾G˜a–«NÚ¸¿=Žh£6å¤&:YJ‹Óªù/á[#>ò¤Ú›ª’½Ú[œôuûüO4ÿ9‹óŸŸtþ´ ›Î»ïÝ“ÿËýítÊk÷îOšùÙ‡ RªåWšzYÓ…Í Ù‘}yJÌåÝ¿–2öà½4ÿáš™?rÎ Tó€n°¿NHj£^ÿr1"?=¡¾ŠdÏCû{'êóÆÕE?‹Ä™šž‹&R’RD ÿ…õåYõóʨܦ%›žA¡ÂíÕž¬îR Õ£ã ö/q/ðB/ÎèS™®Ÿp‡±‚÷Ž«+øÙ× ý{–RºÎŒ†š''ê~ÿO¤ç‘ôï°À»kë~q?¢÷FzüquK7"{=´CЉ¿üsLAþuZ ;®ó—¼»þy¹ªnþš(;rè˜tˆÖ*䇄ü"ß>¦®æ4²{О{Lå‹O‰Äé'ÔíD¤~H}Ì«CÔ"ð§µÑê¸Þ!®ý¨`?%bâ1½C|M¸XÁßTWpÙ?CûÖµaòþcâLDÎëÇÀîy™ÿ¾Wèü«/‰Àmûû£’‚¨b’oï?<ªÐÄuÁꎹ@ö3h‡ÿÙHÈuˆüᨅÿ¼N”—‘2û¨¹ÿŒ d4"‡UW³Ù» =ø¨Ê¢~™Ð1u÷”&R Úëõê??QÀ?þ¤õŸ«Gõþ³œ°K~’þÓú¨Þ^'ÜËX%GÔŒ#û8´?ÄÊÚ§5rõå?ŇüÃÜ–½ üçK¶üg'Ñ·Å]:¬î˜¹dÿíbâ?Ù„œŒÈY‡-ügQžAJØasÿ©CȈ¬¢©æýCŠýÎqa/sXå?0ñ¦{¾!ÒN´Ÿ9äÕÞ'ð¿kýgÙa½ÿL$lâqé?×éýgážÁ $RW° Ù¢½×!+ÿ¹ñƒÂ¹vLpJöå?;¿õ÷Ÿ Ó…ÿ¬üÅ–ÿ¼Bô°¸…?¨;ÆEöÑh‡ÿéJÈŽˆ ýÁÂJ¥øGA©úƒ¹ÿœ:¨ #òàAu57“}Ú÷TùÏé£"q‹¦{rˆô ’>>èÕ†8òG­ÿLøAï?­ ÛâGé?Ëêý§኱‚-ª+øë÷Šý<Ú~oå?«‰³9_ôå?/þù£ÜZMþ“rÁ–ÿô#zo,.þ{Íü‡ìõÐ)fóŸ4ÿ9‚óŸï­æ?DÙ”C¼ÌùD¾}@3ÿ!»í¹Tþóîaœÿhº'ˆHý4ú€÷ùŸ8¢›ÿ|o˜ÿì§ùÏaÕüç€aþC¸XÁß÷kæ?dÿ í[÷[Έ39¯ð9ÿ!|¯Ã0ÿñàü眙ÿ¼öÇÛå­ îSrà£ÿ°_Ý7gÉ~ í¢_2o$Ø:„ý°ÏÇ’ù ‚¿~ˆ×{ܧ¢Þž³rÁG˜q˜åó<Ë©~tž‹né•ñϨÚzjEÌfÈì)ü<—æIû%{iþ÷îùì“.|EåÂ'y‘û÷ª›i#Ùס}÷^Å…ùV/^}¥ï…ÎÎ=ëÿ¥_ÎÕÀ> ýßø[Ñù½ŽZìãéêþ=÷é[JJ®Ž Ì£1ó Má=ÈÞ…ÙÏåqÒ¹1üìÔEåðÊ }à¾wÕ¿èt¯k¡D¿Ä ,ŽB/Ï(ÓQAÿø‚>t÷¾Sûûz²¯Fûž·YFU_ÛýO<ÿÊÿË]ù¹9sXŸù*¹˜øÎ_¥YϲæŽ+#þžck–u8¢ËŠïúÿ^c9õ+ïp<Ïþû¹Ÿ1ξ4à `ÿ5-cžÿï@Y¾%!÷Ïn|Kãÿ÷8þïûO}ŠÍ~_ºƒð[ÿ¤¨Îƒ}L¾÷~¯ÿ%ޔγqü$R^ÿG%%Õ™µpÖ¶P~+&ûìþõö’Íœã©äÿåÀÿ/ÃKžâgöòÊоŠR?PnRàQ«y¦ÎSõDŽ×çŠëyËѳ»`"Tc3ó£*‚´x§ Uñ^…¬çr®ìr8 úBÇý·Ü<Áõ÷Îu—æÜ¥œëEwa-PAÐçb TðN¿RŠÓ/pú×…¼èw* î[ó·²wnå²ÐF39//£¤¤¤ª VX ¨U½Sÿ€ZŸäÅúÊb¢Ÿ\lI¯ J®Ôõém–Ô«¬äÓW N<âÔy¬›j j—]‚ZÛ+5÷~|m&> 7¶ÓÒÍêÊþ ôí¨>ÝiÙGµ«!ÐßbÕPÐ;/ô†Þ«ÝšU{VNªvðÇ2UãÆÇÀ˜¥Åcû£ñV!7¾«CÏΨÂÖùh<ÆMÚlË c^§ªüŠkͪ<é¡vüÍ_L?}©åÅùA5È/ü“GÔ_翰꯼ǹæÜdúPðûNïÀèOúR '¼ÓÏ—"]ÊéÎ#•5­£ò ðï5œ; ŠîƒEÏÚ6Þ²äÜiÐË=Ø¿%)y§8ñÞxåKMoLûNtU+f,8z_<ï;ïCöíIq%ÿ`#>éýJº‹xY|ŸWi»–ú‚ºý¶¾wjoAÔ”q5ŒZkÕåäõÔö@æ’ ¾†SÉ;5¨4hÃ{œ:;Ÿ öÞfÕk¹p2û·&´û³H©é½´bQÑ7xiη±–ïη¬åÙRÀ ƒZî“Íšlݬç¤_ú}™lŸß[–ÜRÔñ»œÚö‘¸VFÝò¥ÕÅæ^„îàÞT ÚçRjy§¬J³GJ“^¶.åy 0J] <@J]ï×T³ o’ò»Y“þ£;⤑7k›e ì» 2÷P(ä¬m³·Y ä(q—›gÿÔìä½È.ñqQö¡ùVþžW£~PõEr2Yg—ådrÛ|m Wþõœ>TÎxVY¯ÎêÔ¤Òs€>¦„–X£X.±ÝŸ÷O0Ðs‹i0;¹Ärr.Á_˜TÚýÏ%VKñÜ@y‘QªűÔJÝs¯A³N+V¦°Õ–ZNa7Ń‘2k[sË@ÉÍJF±XàÎÚÖn©¥T?”º|çRËËo(¼›.„õå_‡ŽI(N9kÛ„¥–¼™Q b¯)ëÍbZùUYb¹òË©NsÁŽ×xÉï<¢ÍŽ´ V›yŠY,_óÿ]ÀéõÑä£ú&Ëɇ _ÙÃè_}üCZ,´ÍrpÛyb9³¶­·¦¼ ”•5Õ÷Û,Ý~$P¢‰ò‹5¥P"PÕØDÓZÔnCë%ÊÛ-)»€2˜.ÿéí–—? (ÁDhM”þtù®í–—ß(}ˆ’mM¹Ýßã¡ùÛ-ãq7Pºe5e6P:<šËáÛ-%w†vµøÈQí g¿-™o[/2væŽþÎéuÑpÓd“åp#èùbÿèmYÝË ún¬|9+:ŒQ@ëVK6XŽV‚þ-£×z FÇÙ\çMV³9¤—ðè>ñle<$iÚ»ÝRšýoù÷žûˆVÈ_o°\åbé\š†½š¼W1d“å&² ·ç×^èÍäÞÖñí–ʆ¥óÊŸ¾ æì÷#,û} ,qÊsú^EvܸM–·Q¬®xåG=€UI—¶[N«“ ³ë#‡Ú_YRºç&JkŠŸp)¢ô²¦ùPÙ«þ•Uæ~ ”*D™lM™” R‹¾²–®@)#µÈšR (|´¾Ð¢¯¬º5÷0ôeá…ršò Pî?ƒú¬m}ey#(wˆâ¿Ã’Ò (·ˆò´5¥4Pþ ÊkÊ‘KœrõÒ•É;,»òS \&JŽ5e"P.>PºòÓ–]Ù(g‰²ÁšR(§=eó–‹ã£¿rÊq¢\²¦|”#”IÅ£–“ŠI¿ò…[íšýg«Ä‚> ŒÝwjVu¯¡±#3ü|&üRì~±»ìlIÂ…nP+<¢ëó›¬ö"µ¹)@öˆV3o°˜qpjm^jo –‘·ªÞØd±ŽÊŽg+I^ª¨žG´D®°Ñr‡ Ê/¼mÔ4o¿•¼y•ñ*-;Ê ï}¸Éb–Æ©sx•Rš!ÛpÀF«6œ~.§%/µP Ò-¿u›,½ø™‹ .4Üg§¢KyE÷œƒÅ”¬h˜Š¶çÔ;i@üÅr@Ì}ºêÍ®‹6Y¸Ÿ;ÔƒÒ&<¢™Ë¨3N…Í‹gAâÒm:›-–²œz—º¨ ²y’,›‡W˜—:¨WåŽÊÓ›m\ë^j{ Ž$–«|3f£Åz•SaWåÎÚ‡÷ƒ7Ûˆû9°ÿ Ô1rv–³Ñjçy îè¿ Ô‹)xGn¶ Þöçr>àÔ 3<?Ðâ—Ë ™§ ç˜FýYÙ“¬:Ð?· øË©‡Ê’ÿÕÍVMÈJû€Oð×ý KS©D»7Zíèä~=ýH™Ûh ¼é\pýPÚq9©}g³Å¤–ï÷/å­Ô©{7-u/)›‘&ñ’÷Ÿ†AI¶ê\ëV==qV”6[®(e^à¬m,¯5Í\^ÁVPÁ¡r +ý¥•/3¯JçÔ?Oq¯:³YãUã—(ò¾—7ßþS°l—Ù×°ÌžQ§òìgu\F•l¶#V³Ã¼Ô(¨YK퉅ï+5{…gß²ß%÷`ªl±Òsæ'yöwNÂÆ»¨ò‚:/ª¼wŸøê4ß }“—¼èÛåàÓ|‹Õà“Wv›¯ðÒ§}°ÜKÝh½—zËA{ÝÝ>¢„¦© ,ïì zm^úýŸ`öQB•¿0ß²òªÒ·ý?²òO.±Yù›œþüO¼cûmÑtìŸ ÅNûvq&‡×2Š –Å|eÝF{´;XèÑ%R¥X®¡×Š›Ô¼ôã'`®$·«ïηܮž}‚û\ä{@Gž¼h¼Äâ#wj¸;9 ¨ý‹©äo—ZÏb©€ú¶l²6Ö=sú8¯4ÜÀ¹x¶ÁŠ)œN.µÚmËÛ-ŸôÍrž“¼Årž³ ziÍsò¶XMøq§b)Ä?”QB›<ï/°¹ÉÓ’÷ñ­c°‡'¯÷–õõ :4×: ¯}H¥ÏÛb³ô5¼ò™@*ƒxµu‹ÖnÏ+ßè]då+.³ÙY-yåïüÈé+Ò˜¸y‹åZÀfÏ­ÔV¹Þò¼ÄסÄÁ2 ÷XäE wç×ôòz›X_¯ ·ç¥—ù‘«Î­êL+V‚-scå­šeâ(4Vcç­šSŽ}Ñø'ôÂ"9ÀÙjsŸp÷´£ qò¦åIë›–‚Þ·I{ ·•w\{/³¼ãš'š”·É­#œ>ï!Ý@IÞjyå5 ï„õ/ÐûK‰¼nuG/;;aüj+Yñ`«Šgg²kæ•î}„wÇ›[5¹úS1|ˆ¶ÙËkWŠèSBE-°lá ÿ‡aµ˜¦›¡Ë,÷P}¯å{@ÿDΖlµ\œÎ‡Þü6ؾÚjsÃû0¿Þ¦Pb)'åZʉj·þò!Øv-¦¥Ô˜eV·þ”ív~½‹þŸ‡D?½Õ&ý$¯|"лȃ@õZ¶öM »xå[½~1ÍPS–YîX7±~8¯üÕ`°–ZX°ÕR ï@s¿ýPÙÜ*Új¹¹µ(oÑ1€šÖÇ„G]€õT²ƒ<&Ûf¡•Òä†C‰mK”%EëV’Ä[õèAØ"/¦ñí¥e–ã[ãRtRâß@Ï•÷¶YÞÿi,nôVògƒZÝBÉu4+Qö5cZ][á÷DI±¦<€ž¨_¢ÄiÎBËiÎw@©S¢xËÜ…–Þò.PjàÐ0kÛ¦…–>9(ÕèZ¾·¾–§R¥D9#ðëB«19÷!tL…eiû]IçNõ⸬bZL¿·Ìj1·Yø$wª¾@õ!-ÛZl³\¶ÝÛÏg¸Wxï‡ÍS¹ò©¼È²‰*Áõ:JÄTžÍ;Ù˜ÉOå×ú”V­˜v¶–/³±³•ί3¨…òPeÛEb‹b^j] V‘‹€o—Y, Â¼Ô û`{´˜nw_dqûSßä¥.j¹àùa™fz…—š Ô;rf÷Ü";ÛǼÔv@-#Gé“V£4T˜—z{/ì°ÊeÖÄEV³—¸ñµ¨9Üün5Ü@…y©/õbrÀ­vyx©€ZXD£Ô½eŠ;u¼Ôò@½*O½»Èr;ª:¸ÑåbåG&Ÿ/²± Ûm}^TDwp+nq£®‘WtP/Ê“å_.²}N]ÃKm Ô;EÔ)­>·Ñ)Kaüÿ¶Me©{씺‰—º ¨·d§ôüÜF§¬á¥fõ”,õG«Rýs_†Ž<^¬hïE«~äÝÉ+ZJû£ˆâ3ôsñ¹‰WtÿØÿ”2vw‘ ƒ­ÃÙ@½ZDk¾áŸÛØ*ßÉKêAYêã‹m” [‡u€z¹ˆnFLüÜÆÍˆ½¼ÔsßÀ&¬žÚ.¶q võbõç”ÏmxÑa^jP÷HÝ \lCw/ðRÛõ¬¼Ö\Ëkå[ ¼Ô¿¾†ÝSYêh«R•mqØÃ\ôS²äw¬JöÏÝ=s¼H•O>·œÃæ ï#ÊçVh~}C·Ëùköb‹Y§ÂÞãO»ÁùŠh\ùòsãÊ^êÇ@Ý\Lê7k± õ»ÇKÔ}E4ÅÿÖεÞä¥6êYêr;¥–ðR¯íç“ýø£ºÇK]ÔµrѸw±åª/yŸÁŽPÐwÉ’Ï[–\™UšS»u» ¶k–Áƨå¿aÔ‡;¡ƒ$õ¾ª?§îê†"šZ•[n5µbÔÚœš ÔµE4É©ºÜj’è85¨ü½&ØÊ-—[Ý¢cÔ–œZ¨Ëä Ø}¹Õ È¨í9õØØÙ’Í4x¹fêΩužŒžaË­¢‡QûqêX ~"‡)÷r«aŠQqj ~XDS«ôåVS+F çÔ+_ÁîE5o,·ku8§®ê;E4µš¿ÜjHfT§NêÛE¤O›–[é£&qj7 ¾%K=l§ÔtN}´–åòZ³s­S9uP_-¢ ~Ç «»·Œú §æõÅ"Új¬¿Âb«‘SßäÔg:M–ÚËN©s8Õ¨)¨ÃVX *£~À©Ç·qj†,5ÞN©s9õ# ¦HG|e… G\Ê©ã€:¡ˆ%ﯰZ”0êNm Ô9ÕZ¶ÂjªÅ¨›8õêVN/KÝf§Ôœº ¨cd©?Ø)u/§fuDmÐ^\aµ\O&wjtÍ\ VXÍ—õ0/µp Ü2’ÚTz¥ m:É©»:TjÓ+mhÓN}¨ƒe…믴Qá+œ:¨ÁR‡»­´¡Ã79µPûË~ ^i£_ïqê‰Í°{.}xØJ>\©ÿj©M©+mhSy~êÚÔ.2èrVÚ:Nm¶™ß˜»Rs[àƒ<8.À݆c}9ïXig æÔo7ÁNªTÍ“+m¨fKN ÔVr9ü÷J«©ƒ95¨ÍŠh5â¿Êj5ÂÇ`N­ÔYáf«lT¸§žþö7¥jö[eC5qêg@­#Cdè*!Ωñ@­!+<ÌN…‡sj+ V“!2y•qqêŸa³LvÎ+«ltN§®jÙ9ŸØéœtN Ô2r×`Ý*«]>sj :dt}»ÊFt½Â©~@-,$é;³Ê†ô½É©ßm€-BŠœk«lDÎNÍêBjáÒ«m´ðœTþ”Ü Xmµ ÊÇ`N­ Ô?$µêRNýù س($÷ï¶Ú†û¯áÔ¹@½,©Av¨›85¨ i4ŒXmc4ÜÉ©Oõl!­F®¶±>ØË©7ÖÃ^6S²f: ¿êqéMžÕvRNÔ#…¯9«mÄëNí Ôƒ…òa «m,á©¥€ºOvΧv:4°w,‘ )Ô—¯¶ºi‘{ z…¿PÜ%Ú¹ÚÎPÆä#¡´íª8µÓ²ð£Ä†@Ý\Hë½k«m¬÷àPØ¥µ°¶-$é~´Ú†tÃY©e@]+°ì; TNMêJé 5רp8Ó ¨Ë$µ©*œ%¹·Ö¶²ÂíTŽ\lê†ÛËO!;òÇ•aöºÂÞL±Oãöü-ŽÙröT=nAI/ƒžOß}Ÿ¯›ê ·P6™àp\ßcö¾ã‰ þZŠÄÿÍr)˜\¢~þžòü{ÂoUá÷q|¬~6ágªðrüãj¼—÷„}HŠxÜ~O¡·–·'{´CJµüNš—UT X„$ò—UÀk%JW{êäî’R³çÜ/åÿ&ĽÿÓ­ðN¼«,e ñ}~þ¹uUï£øxÿAÞZHáï£oB=¥@S šŒÐ<e™—Â׬®Vå݇=­&èßáúÁ+"üIHo¼øVõÆ‹K òÂD<ÉSè¥ß}'ÚC ½ñ¢ã®ŽwsJJùÏùÔOL"gtiv5ç|QÉŒïØ·*³r"_eŸƒ›Uà“K˜«žâsÕš‰ü…'{’?K‹¡ÒžÃÒRyJzÿÙ;N„—¶¨_~Ì/ÑyñnõË/J£$Ù¡~ùÅ« 𕿦µå"^AMÆ·aÅ«_~±‘ìëÐþO—_°ŒÊÉw ¾ªŽ‡—‰ö<ÒÞ‡Õû#Fdx²ñýšø{#Nð3F&ñÜÈu1ÿN@ Î™_,ùVœ‚þc‚@WˆW|ÉSªBÇ]9%¥ýs;ª;ˆ±?ÅIï«RP^A#߯1›ð3¿$N–@¯„M"Xüã5ïÊhUDï·¡÷¿±õþ^™ÏÆ:à½2õ§<*)èZ¨~ŽÐ_g.:^̼’‰kÿü:R‰ŸW”ö¹·Vì/›)qvt†Nÿbéú“¤þý›A¯ï0Óãq„¥ÂÇÅñ™™¾¶#|k¾Ç6ÃWð%¾ÇW¶¡Ç;‰¾-ß7^­ÇsÉþ1Ú!E¯ÇÓæAØ;ãMõØo ½A(˜8ý¹vçw!zº“G¾A(€0õ1ßã½êµJú®ºÞe·à9Ækõšôô+‚nAè —Ú¡9 dp0+!ï®n5UI/ýy¤/c)=oùç^s€fq}ä~ ù ÇŠA2gå,xÄ“ž +3}Š2mŽ™†ºÔZU‘ìeÑÞØ%µ*çjµ\iýåÐ8…z ßy5N§W+²4Áäýï.»Ûµï³Â«psÅÇ7ã°¿Qxå³YÔ-A½ÿŠ ë…õ6NêOþ➬¤w˜ÿæüQgÆØû3² 1æŸü c¾AþÔµDP7Aí Å€Î{??»„[§7;Æ’þÅËøùšÕáúN³xžMø™*ü‡?'Qû¾[}}“O`}ëFÕÕ­…Õ}õ kKúOåÕU•ׄ—wÈtþ7†æqŸårý3CýZÍ{gFöý/ægWÁZ~Õt¯hQQŦXÅ!l¦[ºd`™SË体Ÿ}?ÿ%VSmùiTþDUù™¼üÝfõ}†ð½TøÁÿ/]}Mßÿ:Z¡?ŠîÓtŒZ¿.ý Ú!E¯_› ¶aGFõ«D£_¹Äy5–ëW~”ЯÌt©_ã 3óÆóç7«Æ§FÛ§òËÄl‚ÌgF ãï Q-ÜöüÞ(~{¼€ûVM"ùwÀ“¸úÍ®ÉÀv¢nFêÅQj±ù„ì¢}Ã(¯bcÿˆ= ÙSF ½¡÷÷&H÷ñF½©Î®cÆ7áþs`yAϧæWÁ÷| º‚¢x÷çÛGÁŸëHwÆõ—g¨âÎÝUÞ¬×ËÏF*•û¯KúçVåë»Ìü9ðUøiÿŽ nOô6.Ñ\Q#ÕþìOöÊh‡½?_Aãß8ÿFZùóâ¬Çýyo„ðç)ÒŸß!ÌÛ˜ï²ÞÆãgU£äâE#/c„v<¾ÈúCµÿ£ 2ž¡8ô‹Ì¡K<© ôÑpzo¬€6gО{=Cøð˾Þ:Ì…—¿’/ØPtÞ6õú‹Ê (Ç(átˆ¹ÇìzKš?!ÞÿDã÷”µÎ ª¤`Uþ3\KdŠö ýÆWZ¬J9TÂZ ×ßׇ)+cŒñôÍpñ:<þô–“›äîÐ<«W¯æY­šg=%SÔ߂ƒ­:Lkž2í)Hå挌 sªCùÚ±]çnŽ)î̬äô4‡#.=Ý“åÉŒÍȈ͌Mu{Ü™ŽfŽ^½+ =n¢;ހ؀æOg$¤»³ÒÒ=©±žø ¬âÿÜæˆŠêŽÞ.Þæöôê%¾õ꟞–å‰MóhS'¸SRÒµIAÑ#\iî©ÆÄ)¼¤wö†÷bð¤dMé&ö?³²]S“=\¬&¤'‰™n·£Y3£!6!Á•åÎ j°fºSÓ§¸ `Ì6%;k‚bÎ2Ú³ÜW‚;16;Åãb]‘œ8Ý•ë™ÅªÒÌì:RÒc`Jz|¬²mÖ¬·IÍyÞªµ%±twffz¦6ÙЪÐ$𔨸xw†®³ãSܱ™¯Hc¾¥MäµIL0¦eš%NÕ'& ¶á:3ݱ:d†Û=I›253ÙÃûV߻Κ;Ó“›¢këì,·+2*0"3yJ¬Ç=Ä=ÝÊî Œ ëh…ILNqûÉŽcT•ñaÑûŽ˜ù—ÎQ¼›5Yb2ó>·Y9*³RŸ¬Œi] 8­«xx:S¸ä´$_hLÞY,ˆ öL#Àà‹žäT}]LSlz¶I8˜âÓ3¦+‚áJ6 æò®Ø ÇOòaËp§%ÚHшøäŒ îLWJr–ǘ£W£M¦ÃhÈš›éN@{–ÑÎ"8Sãc†rÍT§Ç%§›´‰iêTCj”3Š¡ÆÑE1d0𘛌R™Ü)ÁÅ>»a¬«é‘Ð)Ù;‹XÕ;˜S“¼åÉ ½S¼¶37ò™—èÔ“™bt$c*Ï =Ãc÷²¼x>^YŠ·ú0zd³²\iÙ©qîL/FÓKou%¥³™ƒ&ÓæNJg#о= ‰ƒ¨O«&3mTc¡Zæˆ ÉoíçËššœÅþz1¢neym‹Øø L®³SR¼×|pYÉÏû¸Æ,-N;€fž ÜÚ¤!á®DWVVŠ1™]¦;U›ìŒŒty™qŸ\ ­™qBˆl¯d˜)y3B²ùxs>µ=ËHL|æô O:ôm 3Ù¬WlJR:›úLHÕå“’—›9Ý•œ–ìÑsÅ_—IZ\8i¸jX•å æÕŽËNNñ$§¹ÜiIÉinc½›éNbã bSRX¸¥f¤¸õ}ȸé†-ªé¶—6ä•— hމ 6ï °ÄM÷¸õ톌,wvB:ÚfÖff¤ô”“dîéÙf¹¸“¼–ÀgP®´Xý$Edèv›Ï6-;ÃÄMaœ“ML­½Y }<¢k‡žxLw²YC%½a²²aíŠ #&,0ÔéJOs§0wòj‡™™{š‡{KXH°.*:<ÒéRF¥øìL¦ÊbÄ4¯¿ïžæJˆõÄú¾†ÀO» ƒ¯NUC¯£eXg—sD´‹M'lÔÉ&ŽEO†g‚Ol–Ïk×ál”å¶ns.7¶0úIŠIY‰)±ÆØWáìb2²33Ò³Ü>1žÌì,ƒÖF:»$óµš “™bhº<dšî'ÒÇ8D.—–îàNLÏ4+í‰ÃÜ?Vƒ®˜è è€l¤ìdZŽsX„+bˆs¤ –B´sehïg¨%±PãÅk¡Áô ]ô ]uÂr îØ­ƒaø›ÒÉtïˆ[:›Z¢‡FMéhjé?ÍlIZ›þšù´…ïeÅe'&2™äHÓ¹«‚3z†bá3"¯Ÿ™šÌ¯ ËžjÜ›á©b7ÆìNO4&š.[!ÅbÖ>¢þ>VÑ (kB¶'!}ªnU:‘’Ì¥>(Ð0‡JáA’àΊ7ƒÝdÿ@`<Ó3¼ìOì&yijIP\lü$±îÒÙ&¸™!Cìâ¸&ö®‚B";#¡’™É°š2µ'Á‚Úcœ…‡F5e“°Llc/þªì ªÔ¸tôq-`7\éªÑtÌQŒ“³“açÁ¬ÃŒ²cv I´ë€# oLjz‚·5ÌXÏô“&>ìÄW4ÛÎ[}¨ÝM6i(?e:#6+k*ëÎ8/×fÀñ]¼Ló~ñ:QPŒÊê¥,«>UdV¹b 0݃##ÏæV+0n•Zb˜¯Ç²•÷}bo{À¦ûÈZ[yLˆMKÈš;I—y›ß›ìÓÑ„WläìJ_›6¡×ˆ„|¶ÄÌš _oÐÞ™v_}žäÓ¢é-oVÓ¸UÙ™Ú–Ž^w|”ÍÁøÔ CžŠÍk3©°­ìÛlhͦ¥+1à ßk ª>Ê÷BÜ€ûSbSFgžä’K1ãôAcNËN5´Ÿ0%6%Ûd÷Ò—®YéØqKÏdSÉk³qCrZbºfƒÙt]`¥gY>-B§ ÉZòf6óió¢è¾²6Y,3¨1M×|»bp‹ß,ìV‰áˈOHÎô÷6àÓ×ä´÷4oš-§„¼{=†Å³ ©®Ì¬X¯c°Œ:¯„ j˜y^jŒ™ÞªÀ—Þxm'±GÉ"Nµ ›ê^æu¬q2cqÔ‚¸iÏÄfdø˜›¡èšÚ¼ÝÐRìJ_‰-bÈÉ€Ks» ñØàhÞúÞë—å£~¾nÆéýÍWýdßúô3c›W[u×.ΰÁOím9*§i8Éè!^ýͼšJËdºÙ¼%ÁÛøè½w|[Œ×Ò›éN4ÎxëuóóCº Ö.ì ÓÜ™¦ n5m0l‰Ó&½á‡ÆÊ÷4À§â’Ó]ÁƒaóC¿—¬Á@vA‘CµàÁ&%{Ò=±)q­î·ÔXØn7\—ºo¼aTão&›t¦§šÝvg²Å»e—’Ζ~Æ;?|‹H InýÈÇml’Û©k7(b²Ymx=ùÆû¯mïTøÀzþ¦gˆ¿ñ© mRb3“ÚòsSIfgMÝ6`Zß°˜¡C™=?dÃ_G¬#“gžÆÿa+vþ‡Ó ¯ä„i¬î£<•¥i’ÜYJ dáˆg ”$¸ ßï™&j XmàoªøÃ*ÍþŠÏÓø|‚&ƒOú‹Dþý—Ÿ2XÉ|«(;•ÎÖø‰;|ÄF‰ÃüâÄ÷,><Š¢àƒ+ÅæP'h-0n²«dúêÌàÈu o1aaļ Ð,I™=±0kËšÄÚˆý pÞ üO"»$Þ¶±mâ¸!.;‘U<=;Í#j˜Áý>AÉ¢í°u¡løˆ`¾³Ÿ` à]Àœ-'|­ëNˆÍâ™Ê|¾~ü`×Àþºô‚ÁÈÉiSÒ'¹2Ü™)¼¹y\²FJÈt{²3Ó²Òy ’Ó’’Ó¦¤3Ü®’i¼Å5[TŸ9¸xsxà˜ àOz@F:["ð±iÓµÕhWÉËux/Ãx¼$¼”Ø€,V‡ØLŸùÊ­ƒÿSµíço·Êààt»a‡>&3GÊp$'ðhsˆñâP2`ÄR¦ñ?pdœΣi pUþ'5vZßκwëáÀô %šAS!`øÝ/%. BÄ 'Õ‘&½œù3å"âJ„Æ“ÀÁm NûO.Œ }Š#5MkqðÙ3o¶ôxþ'·|6òâ‚>9ø9H‡¼cIŸÚLHŸêJÍŽgªÌ‹¯9”5Üõ„fg‰mXCe¦gL§‡[¹BVÜç€æž’×6@[³ÒÓ”Vƒ›ˆLH2˜¦°FOb•âýÅå%9'óîÊ„ñÎiýŽ]\@ß¾ ,|½‡8¸j“+]˜Ó²„´ «M>º­Âÿ/ñ¤ÏÓn )b CBÛ€éYå¦92˜Àk’@¼³pøƒâNÑ“˜·Gê¶lÑß` 傳‰ØÀq•w0H`´+4¸«kxHô`ÐogXPäȈh~<+h€+0(ÈírމV}Á¿…‡…9ƒ¤Yù.ìC\ÁÎ(WÇž\Î`ggWЀ Q ¿+åÕ58P1vëbÊQ'ëа¼«#7…;];õ0dÍ„¥ÁÁ“"ƒ:Å9""<2ºK W Цwt/$a”iCCœaÑtÔµ›˜í:#£C†F;ÎÈÈðHWXx˜ò‘9¨òidTPàPåÛð@–6¿:)Ò¬þ><2„²…(’õטLåŒ g¼è˜È0ÇÀ¡Îè‘NqЕ¾±)ºc  믮/%v.¿†FE;#]Cœ#YZp§Í)À®AÎh90$,$j°3X›ªd§JÒdÉÓ£œ‘¬)õ`ª:Lbÿ… ääNÁºúðVs‰ÏÅ8£ôר˓sE`àŽv…9‡+_±[Ä7_à¯ÜwXU ɘ%SèlàÞ&éàÕº4îµ&Pî—ª$ÞB¬îªÖà©¡Cœ.¼s64$JË‹GÃLE""C†±Æbu5Q[b Rd ÊšK槤°Œ¸WDP²¡30u`°êK¤æÛpù-:02:FÉ,&Êi’™.]ßÔÄBe‹.iLÔ礲è2â·9ÌòÒ¤ë³Ó1Gˆw¯aÁ!aƒƒœa®ðhÖ‡|_¾9CC†Â§à°(ø;¢K‡"!D ‰`-7¾ÄD†À_– Ÿ"C‚¡#T1éê Ät.$Ì5 $:Šé*·G:ƒÂ#ƒ['×€‘¬rƒ™ç8#Mì vµc„«Ë`@VH(ûÈ},4<8fhL”m&Z¡Fñ Õ)O¨™ì°DPLþÁL(Bšª¤P½…±îá=Æ./;-ÁŸè˜!|c3ƒ„¬dø˜1)> >¤&t¿]&¾‹‚u¦ÁÁI¸E(ÃYV¬™ †®æ†Œ877„w LK@éÒºê lPé |è âÓSSÓÓÂàl|eó™ÌéôÿÖ'%Ù#`».<3"3}JrZ¼›ÒÓ3“bÓ’Ÿ‡ÝÓÄØ”˜´d™`cª»ü„Ûjô5+9)߯£wÚwJz†&M€Ø¥:MŒÊV*hD¨3|J˜0Ä==0)ÓíæKi‘äÎr¹ããès|b\·.ò[\¼D%¸ÕŸEŽÉ îXB‰/”|UòÎŒïD8þY“Nþ-¾eMˆUþš{VE_ÍΚ„tm…äWÞ.=å'—;569%0!Ÿ»P%g§e±E]<›n»¨o… v Ò<Ñ|n-SS?6ɬ핞ЇÉiIÑɺ<˜;ò»?Ii±¼ µi_N¤%¹#ø¢$=3ÁK­ŒufKà ¶ ôx2“ÙZÄ-lin[-`]•/x6m»,¥]ÉÆ]ŽËh›[ã#¢ÁõIªv&¦g;Ò/}›ÎgÙøÕÕIùÌБÅN,°™qRBb']‘©½dº,JŽ‹Ír»²ù9Fuj¦{ þÐh‹õiæÂScSLyé)ÉñÓ&8=%¶oÓo“<&eJäj¯&Ë=9›…=uÔ4UTº0Y9ÜËwÇX,¤ñ£|»ž™xR6÷ZÑÄò@Hu±Ehrz‚&—ج!ž-Ö¤±æLŽwÁïX3cÙX8!?/©ü`„UЀ&IFgÍöLàÏt³êÆ%Ò届–ðTr1öEú[jB|'ú€þ¦ŒU®.H{زIÉ7)yŠ[Ê|[lÓµ2‘OŽMÉÂ2™5|ˆ¶zü’³DðqÏ€ e´ìª®ëj–W˜lO²'…zQž"ã¹ÆfyºRýÄ7åÒÑF,¾«´N=\Q‰Uœ(4O,+9Ú‡9Õß´MÛU¥ø]UŠßU£øêjf¦¸ÕGß íù”ä8C"?»­õYü“’§)Ÿ'e(ÍË#‰;“hqãD~OOpƒ0‹\ùÀ¼?Ý4¡7RùQÁØT‘]j–`$§%h¾³êÑwOŠÌ}ÏJŠW>ºQ‡ej‚;…)l<Š÷±E†Ž6…ÍLx $ÀD~AÓXÜ+]êR ![ÞHö°•™±K´9̬]ü©Ñ¬SÜÊTÊ ×É&N©ŠPfó2±FR¼YoˆM¢1¬GÔ„Ìôìw™ε‚>g¦(³Üñ™n2dÅ&ºƒÄ¸œ¥¤%f²^OHÑÍùXÎüè?ûÊ·LƒÔ¿Öãù°y®> pØWìz²”)56^„ËöILÌ'{\ñYªoÙiéžd”d.:ݺPœD…†„:ƒb3bã’Ù”T‘BÍ$XÝfš¨61`[«§ÇÜ §ñ›ë“)Ž”Ï$p iÏe3Ç#9ã¡EA›€¾™˜§pÞ›à ŠŠP>³N ÂÊM"*ÂÙz/¥pçÉ:€­°Â#\¡!A‘áQá£a™Å×XbqC˜3:*(0‚-åË*'XØÿÔÆH'¬Å6C*0†aåE:vR |‡¶’Ð, 2ˆƒ‡±Õ_ÌÀX­¨'$v[lÝÉI"[gàHW‡”Zð`%Ïè¡Q®à®TÆêäfVžàdµ uF¶„öÙj˜®œ5ØÏc˸Ȩhý5;CÃÍ/9,œWoJ'ÕçÎø9:$hˆ3ZùÂOÒãg¶ŠŒé Žá߃Âǰ wŽù:”Œp錊 …Z| s  „­[äG™#q‡ç'j‰+NfaÍë r*>tè€À !ÊD ŠêÈ.ÊÉ’:ê:‰vgmÅ;ÔÉj3Ò502pP(ë‰(næ;”¼—ƒ5Kc–Ä«gLò/1aQ1¼Õ&8ƒo6qˆt9C†1DÔà˜èàðáaŽÈáügl¼¸Ð@¾sÆ-¢JÛ!‘ÎèÈ‘˜Í·C†âR^Àc¢³+à%òÖeŠ‹à×ΚÝa,XkG„³ÖpFŠá­€é<Ü”íSU’a3C±Eó61©³*þB˜w‡ „.ä¥(.ÈêâŠw ç ¤$G`ÎD×Î7%±p]^!adž« £Úi»o¯™$F8ƒØgg0šTÛ†ê„ÐÀè Áš”á¬ê‘1 Lµ&¾ÃÎ!}…MÚPgôàÿÇÞ»€GQdñ£53á (òÐðy†‡n|¬†—‚"F@E„õVä‘>ŒN5”.oÔ¥c¥£Û?(,3 G'Uè#Ëȼ¡sX–Ø9™˜£Í0Â÷úJÑŸ&ý¥¡8…LtóøJ¨ óG±§Ô•£)CPÕ‰ŠÇ:·bØOY6Øc6Æâ‡qlz÷B4ƒçÐK§¹T GmÊ=Æ£#Ù9ñòQœqÇ^ŠþF2Ö¸@6vÁˆQ”²èÁ›ËG]<Šj:Å%—RJ[©+é­m!.ݹ;Ö ­Ó*””r¬5X2b°ÂShë ª1xìk PW»úÒøÛ° çX=`@hð° .= Hž`ÜImŽÃ í´,ñr2 Ž0p·cÝòä÷;òÃ<*¢¯3tL¤!òˆˆ8…ùFr­nÒ(²x3›Ç2ȽôbhÎûƒ/zUðô'ÁÁ£†Út[¡;Ç2‰ei O*[KÔٌĊöŽbGÞB[è8›~lãH;kìc‡Ä´†RÄ6óØZGZ"S$:ÿ˜Þf²ñ>{E•Cظ 0J‚Ya‡Ù%Ó.ç#/EËK¼.4b¤Äü”&Giþ †Qá‡Ö9tËø ÿ#]H¯T‹Ž¹œÛ£ÔZ ³qã›ÛoøH5ü°Ñ#múrSδŒ¸pWŒØ 4RùÇãÒ'MjDu8æúõJÎéÅs(üÁ¹…òÏŸYr1cA&ée–ež“"ÖßàÏS' ,Wy«,×#®j%n{q•¸ ÅM·¸WYnš¸q«µÿÕâ/nµ¸êob7 nµ¸j¼ØÅ èÿÙ–[‘+ÿ¯³ÜÚ,7CþÄ­·Z\•'lj·ZÜZqU¾å&‹›&n†¸q+Ä­Öþ×ËñÉ⦋ÿùßIÜ.âv·»¸=Äí%nqSÄí'nqˆ;PÜ3Ä=SÜ¿ˆ›*îYâž-î9âž+î_Å=OÜóÅ$×!®,ÿÅUC俸j¨üW “ÿ⪠俸êBù/®.ÿÅU#俸ê"ù/®ºXþ‹«FÊqÕ%ò_\5Jþ‹«.•ÿâ¦éû&nµ¸ê2±‹·Z\5ZìâÄ­W»¸q«ÅUcÅ.n@ÜjqÕåb7 nµ¸ê ±‹·Z\u¥ØÅ ˆ[-®'vqâV‹«t9–ò¨®¾¸ÕâªkÅ_Ü€¸Õâ*¿ØÅ ˆ[-®Ê°ÜdqÓÄÍ7 n…¸ÕâÖŠ«2åxqÓÄÍ7 n…¸ÕâÖŠ«&Èñ⦉›!n@Ü q«Å­WeÉñ⦉›!n@Ü q«Å­WI=—,n†¸]ÿ‰[-n­¸*GŽ7MÜ qâVˆ[-n­¸JêÕd]¿Š›!n€ÝÚ““& ²øir\±¸)Ú_ÜjqkÄ-7 ýå¸rù¯ŸCò|Ru⦋=CÜ Í×ÿ-Þï/_êûdq3t½.õs²¸òܨ-°ÜЉâ‰¿¸ÕÖõ%ã³VÂ)”ÿ…itMLª§þèšÄºë6¬Û³NfÝ…uwÖ½X§°È:•õ¹¬ÓXe=œõHÖé¬Ç²Çz<ë ÖÙ¬óX°.f]Æz*ë鬬g³žÃz.ërÖóXÏg½€uëE¬—°^ʺŠõ2Ö+X¯d]Íz 뵬׳®a½‘õfÖÛYײÞÍzë¬ëXd}„õ1Öªt놬Y'±nź ëö¬“YwaÝu/Ö)¬²Ne}.ë4ÖCYg=’u:뱬DZÏ:ƒu6ë<Ö¬‹Y—±žÊz:ëë٬簞˺œõ<ÖóY/`]Ázë%¬—²®b½Œõ Ö+YW³^Ãz-ëõ¬kXod½™õvÖµ¬w³ÞÇúë:ÖYa}ŒµjÉéϺ!ëDÖI¬[±nú=ëdÖ]XwgÝ‹u ë¬SYŸË:õPÖÃYdÎz,ëq¬Ç³Î`Í:uëbÖe¬§²žÎ:Àz6ë9¬ç².g=õ|Ö XW°^Äz 륬«X/c½‚õJÖլװ^Ëz=ëÖYof½u-ëݬ÷±>ÀºŽõAÖGXc­NàôgÝu"ë$Ö­X·aÝžu2ë.¬»³îÅ:…õ@Ö©¬ÏeÆz(ëá¬G²Ng=–õ8ÖãYg°ÎfǺ€u1ë2ÖSYOg`=›õÖsY—³žÇz>ë¬+X/b½„õRÖU¬—±^Áz%ëjÖkX¯e½žu ë¬7³Þκ–õnÖûX`]Çú ë#¬±V­8ýY7dÈ:‰u+ÖmX·g̺ ëî¬{±Na=u*ësY§±Êz8둬ÓYe=ŽõxÖ¬³Yç±.`]̺ŒõTÖÓYXÏf=‡õ\Öå¬ç±žÏzë Ö‹X/a½”uëe¬W°^ɺšõÖkY¯g]Ãz#鼫"']ŽU3Ôþ¯ÿøã¼å­±3)ÐB M@³€Ö½ t)Ð  ~@Ï%-ú¹¡G€v•½t;Рé@³J8d < Q@×õË!]tðBi@›ÎªêôÀI„:Íj” Ô hPPO £¿:¨È ´è» mÚô1Рµ@Ï­ºhÐ$ g€2€*€=Ô  Íç5º•Ï´š ô)P!Ðc-eͺhP:Ðp  €R€ÎJêôS¡î@Â1jôPc ›Ð8 Ã¿ê t¨)Ð. ½Í mZô!PР™@¯eU=…»°èA @·Ý4hÐx [€Ò€Ê€z]Ô(èXKìÌ ´ h$Л@ƒJº¨Ç¨ Ð@ ¶@€’€¾GZÕÚtì¡•@?íè@hÐ: ÏžÚô €J€ª®ZtÐR ¶@OýÜžÐ| M@÷-š ôO ›€ €°7|ÞÅ@¹@°z^# Ñ@_µ#„]¿ój€Îú7¶¸Î›*¡@wa?ç¼›€NÊÂfÁyWy.Âθy}€¾:ÛÀæ5Ú ôý)„°çiÞ& wÞŸy@/Ý„Ý,óòšÔè. f@ ‘V“:;SÝ4( hÐ%@£€z J:è‡6„R€6uz¨=У@-îjTôûQÔa@þô5ÐÉ@µ@õ6}‡ša=P ÐÛ@/­ZŒ»ð<Ð}@‹€þôP>P9Ð8 Û†Mê TäÊÚÛõÐj ±@@Ý ”4èL Á@½€NêÔ¨ PÒªÐç@ @ïýiT”YõÐ…@Ûz} Ôh-ÐáÔ@Û€–½ ô Ð@@·=4h.Ð8 [R¦µ*úÇúhÐÕ@€Ò^ºhй@“úµo€úÈt Ð×õQÿ} Ô˜c ¤€ž:|„Ð@€nÚT´h4Ї@€Ö ô:PC * ÃH¡Å@[€½ t?Ћ@s€ºhPÐ?<¨ÿ€þ”TtÐU@#°õÚþÁ@)@©@-€ú) .@uxž·ú( èm ú@Ïû™Ð\ nÚ„5~ö4h#:±÷„Éû«°Áùþå@×ã.,ºè  Ñ@óκ¨;Ðl @7ýäEýô)P.Ð  ñ@Oæ˜ çøtÐ@ @=€NJæsT‡tIÚäz èÈa¤K"ê? '€vÍÚ ”T4è] Ž@+ê½´« ê? Õ@ žšô »€n š t6PÐ)@€Ð8 ÍQÿ­ Tt6Ð0<S€zuªÔžcÕ õл@ ý~ùè Ðx ¯Ò€jºmúµ)ê? õ@o-Z4 èy , E@g=Ô¨èÒêv }@Óv6Dýô>PÐË@×= 4–ÏtP!PÐe@gý¨P N@€Úý€ú Ðg@ @«Ž$ôPÐ@{fmÊúèb µ@€VÍÄ]X”ô Е@@Àê 4èd [Mú¶ê? m@Ù@k€®æø¥=tÐm@çõº¨;ÐH S€µêÔ(HB þ‰·? þ¨T¨ö‚M×+x È/ÍëÿSYV‰tdíü[ì«§¶6©§jHÞ%YIòÉ’…$óHî" L&) ™@2ŽdÉP’³IRHº‘ÌO¬§î%™MrI1I.Éx’Ñ$ÃIÎ#HÒƒ$™äD’D/É ã;’Ý$×6®§Æ’\D’Fr&I/’N$mHš‘$mTOÕ‘ì%ÙNò1ÉZ’U$ËHž!iOáµ$iHò;säk’Z’M$ëIÞ&YAò<É"’GHÊIn'™NRB’Gòq3 ŸdÉ2’gH*H$™Kr+ÉT’B’l’«IÒI. 9—¤?Iw’SH¡{VNr;Ét’’<’kIÆ’\D’Fr&I/’N$mHš‘$¥0êHö’l'¹¢i=5’d0I*I’.$mI’Hê“£tþ‘dÉç$I> ©&YN²”ä ’V^cEr˜Ž;@²‹d3ɇ$kH^'©"YL²€ä~’9$·”‘\O’AR[Ò™d=ÉÛ$+Hž'YDòI9Éí$ÓIJHòH®%KrIÉ™$½HÖ§|IrI€d2IÉ’q$£H†’œM’BÒ¤=IK’†$¿SI¾&ÉN ûC’Nrɹ$ýIº“œBÒŠ¤1‰"9LeåÉ.’Í$’¬!y¤Š¤…׆¤IÉQ:¦Žd/Év’IÖ’¬"YFò IɃ$sIn%™JRH²¹!…O²†äu’*’Å$ Hî'™Cr IÉõ$$WŒ$L’JÒ‡¤ IåÿIæ’ÜJ2•¤$›äj’t’ HÎ%éOÒä’V$IÉa çÉ.’ñ ¨,“ '9d I’d’II¼$G(­¿#ÙM²•¤†ä]’•$/‘,!iKá%‘Ô'9FÇüH²äs’$T“,'YJòÉ|’{If“ÜDRL’Û ^Ìzîøïøïøïøïøïøïøïøïøïøïÿ¯¿3^ö¶LþúÈ —¼ÞbO±÷²Vi~¿µ|´?+ïÿu“2K²Õe76,OËžVM–Iü°(r‰ºQ•+ucbË4ë«„1cGu¡µ$F¹º1)Â_V…#K+m îqÃ[F’¥ Y°íoqAÿÛ·°þ[;Ó‘G²xÙVúßEþc7úÛ½Eð¯ÝÞ/Äè:ÀZ‚›üRŒ£ä<ýÌR%Þ·…þŸ+ÿ­mòÈ#M޵Û`…ÌC spqò.áX;¿ÇHòà9ã¡ËM'/½h-ýKÃ6s#¿q!?Ûmãˆ2>D±ß-Ž8!޹Y²a‰Ø§¼óÄ;lg$ò/ÿÐZäY,žÑûÄ‘±¬…acl4G¶©æù‘yº˜ É7àÑÞ“Œ8Ìfß+‚Ÿ3æO6²èœ#¾OYçjë%C­Uwɯ\ûÙîÉD„yš`¬ÈKÞóµ·,ÆK^ à…]™WXx ð" Ÿ¼Ø~d².²@&k•¶ZûÏi3LË<ç‘)§¤eŒJ9/ÿDþ+´¿ÿ²<^ÈØ_\ÆÉ¸2h‘5©¤˜N'†êabfÉ V•21sª¶¯±³“MÛ׆셙Ús}ȳ¨X{Ö„?™“µõ`мm”Q‹`:4aQGkûò>î]:™Ëˆ7èYR”yp/a‘^ç$hÌ-*ájonÈK"ã"¸\½y1k>Ù¼ _ÞdYÒI—0.As(c\WRÄ5ü‚í:ÔL\F‚~T]¿‚‹Šé5æŠ|>í’pÏbö\éÉQ¨ ÷µ¢½Ìô7F¶·Cé0 ÁtP8‚†bÊ®œ9¹h„¼yß{í¿&è•J§•êŠ~m¤a"ݹ¢,.†i2V³à$© ù†%߯ÿdÿ EEü´Ûæ›Ï™g{¸ßäÐÕÖ†Y&•”er(»Ãü 9Éö…ù¡³L2,u¦…Úù“s²ý¼ð/²»iÔÉs$Ò“«Îc¦/ݘPL>ÃB™Èʳ#|­+˜ákåš¹Q¾|¿Ë#¼'YÙ=è;›Ü ‡‡|¬§öéFîöQÍÜåY;èa-Û‹¬ôÒ›Ž"k=±m(²µé:¸*èZ29;èÚ®ù:èÍÛ«"C‡|Ì]Z‘§ƒÞ"¹9äc튌ô3ö>E.fÿஂÈÁì£÷@ÖÕa[ ÷ú¨ÁÀfGïØ†Œan؆¬lcÓi²;h‹±‘²xµ‰²y¤Uo1ŽŒnÚ·wCN³Fmî†lÆÃŽ™ž¹\¿è-¿‘õL³$ílÓ3bo5(sø–@(‘½í …-´³ ÊG$!b‹˜HŠÞM …&Ò¶¡ ‘G‰2í\„P «qÊ-1Yò¾±Ôô+É™XD5°qƒ«LsiTº.³5GnY‡rE´6.Ñ©¿2Êuƒª#)Ñ[աȺ²BÕ¡4;Ñå°\4§ÝúH¢‘=j"mz­u”ùH[tÎØI±Ù—µ@ÍØò5A¤ÝÈ`»£l[ ¡°ã„mi„Ê ŠÄ+Ì£*ˆ´X)Èõ€½)”½˜„ˆÝïP!8›ƒÕo ^'|ƒ›l·ˆRdZ§È×iÏ‚ü %™%Óx!O.MAƒÍv‹(Qav³³’¯û˜6K¥h ÿÑ£Èå*äam­¢¥ýt—ðÜGhÓS© ?¯KmÔBól-Áh¾6GíŠe%}*L¿ˆº(ÌU@—„™Ã6÷D‰2­FI«2ý­²Ìô ßíåÇ´M¾•¦tþ¯6ÍáY}M˜ÉŠÃZÓÏÈþëmü#ZŒ5a# à aE`³i²i%n´G¶kúu¸Ûô µ ÷E{‡ Üc¨PÕ™Ö)VZ ú{$è©sÀ±0#Ú‚Yx¶¶F·PçØ›¬ PœìÁ–¢ij¹Îs´O0ß™¢Ï±À¤DTè¶`ø‹œ:ô%š`¼‘,Õ~S2­f`UÐC-ŸÉý™pEÐ×ð\©=Mf5ÓÁ¾ÊwEº_Ýî=Ú¯¶v·²Õ†Ó•O†Y_ñðŸûlm¿ìœ j6zT‚ lñ(åõ«^£R|´›ª|¬öñI×4qÌ`ßw¶²¥:ÔÙ*vêù.\IªÚn*¡°¨L½éCáz²› õZ·°²sšòÊ¥H©}ƒsrѸٗ *vp侄®ÝgEñ°/ôv· §J ßö¶z¥êîzYêÝzÜøÞߨ¨Øºcëw ~±YŽzµwÌm+—¤v´h‹=ÝŽ_]Ô írÕ¦v‘ojÚß${r›}}OŠ{ÏUýE3!G-©Ç퉧šæ©;Û…ÚP¿vR^s»ÛêzÖ•hú,$ŸªGqõµ‹èê½Ñ{gÐ(GÕPHµÏÀnìºýe£)êh_2TñáËÉ\û\5FÇÉG£ºgîOëË™Ÿ\¤fõ¦òc³c÷›Õ>„½’Ã~ºî=Ö Ë7#2Ã.ñ«@“ˆiM“ÊúK°¿3%†ž‹¡*šX[‰s™kÔdNÑXÑ$8—cUJ·mœ#ö²þNæ3ȯv7 Ž–½ØjêAª$8“k6D¶¶Eò"iìëýH¢´ ¾oC¡A¨Æ[⇉aï}¿¶ KœIù´î„¨³òw‰æKéräã;|ßê{¡+‚®Y]õ”Žãƒoêd¹Ÿn~Ås|È2>äuŸGמ/õ¦¬Ríãêm}SõF/åå¼íM96«{Ñmy‡Ì>kO•7£†–ªmcÜîödå >ÛÌ2œ›L‘ßÀQ݈sRy~§7 )ñ­ÍBŸˆo%bJÌ·›Sƒ÷Ã\|ÕçVûZf©WZóÃiQ{ûÁ¥¹)¹ê•”ˆá£ORÊ Jéù‡úæ”Éê¶~\Ò?l^Zª>A%–©UI¥êŽÆ;ðÛ-¸À¯m¡ üÓ­ƒuÍžÖº¼ÓZÊúüe}UÝP\Ó!K}rŠ®ÔÕý)VùÞ”Äå{i©å_ê`ñ/“¨ˆJ¢{÷…Ï(ÐU”4uûLŸE'R±µn„ªhaŒÀ¬ ²2³òr¬N¡•-Œwñ:¤pç Ÿ¡øÝ,ý_´˜¢ö¤Ðýº=A©ÆúmÞnSK#•¶·d¿]-u*½J¥JêçÖYêSô“oÝ©ú¡¶ïÔˆûîT:éÜd•ûYϧàA^’)ƒÜšÿç ¡~ò@²¾Á[ã… œ«Ÿ`ÕoTC~ á¨óû×® ÷˜Ù*KÝÑJ¢Tªžk5‘ 9¥êåVyÈËo¶’®úwZÉÎ<5í¨xT"zuÏ zTõT« ~>èµVÒýs+bU1w9땬ßf½ÖŠë‡­Ô­¨ôQ1ÚÓÊìáúGÈܬ·ZGZ«'[£ö QjÍÇ?ÚšXµÌÝËúë¡G[TÎ;[GUßO «¾ÒüŽ£*æÔCFùG=¾õtU3÷ÄP‰=Œü´„êJ芡o°~›õ{¬××ÃÝ´îÖg'ê›þe›Pse&UÛf·Ñ×'ªç©¥øÇ×násìB(¨ æÄ# ja²u‡¾£§fŒa’'Åùò¤PžúŽj¬Šïød‡pŨdT Ù3º´•¯ðÎÐ'Û„÷~®èAQ>Æ¡ÜZŸS²>ß½UmÔ³½p÷¸ïè£6Ö[ögôØÜ ^àŸ¬çó1±^Äúièê*Ö¯0ç5Ö«(\Ÿõ³èd¼ÛYí&ÀNæíå}Ë‘Î-V‡NVÕt+jjöímÕ£m‰÷«öx¨­z’<3àd·CWÏ…®¸¿*µ¦mX×cÔ>åàÏÚR]ò2µ ª&¶O’çç¶\¹üÖÖJ¥Yí&3PÉgy!KFz²]X¯û«½Z|þå`>hgö7½H´ÀJl hšµ·]¶z Í”øB>A¤&«ùíÍ¢…í#^\—PUláîÄá½gµ7þìloFãÛötªÝ £#6W/œšã ~§¾¾á¼ëþÈíþ#=9)êˆ/¼YôË)\¾Ÿ>ÕhI½O·«jNÎ}ôÔÐT'ñ©Á…•oÓò}çÔÈ™ é¼uÛÀàL¶ýT+ávŠJ´!·¡«pP?B×ýÌþ¿±ÿí€ï®›ÇøQèª'Qæ°èÊds”õSj+Yݸï'«ÿ u´”ƒx‡Y†]Éjj^åðÞ€._Mæ¥ê±ŽSÔ–Žz´äÇŽ9E¹êHG)¹«S®*ï„„­¤×>ªUÕóyýgT­²:FŒ~Ò‘NòÇaâ ?Б;F'sù§‡m¬¿`ýtíwÃïqk8G=Ö‰gü¢º¯ü0‡øk#e†NÊÿO:qŽý¾“ÍLJ(ÎÁ?_vRû;QÌlŒà¹ºîÆÿbÿÇ/iL'vÃVvvÓ>Û™²üsÌ|ºöbúÎPït¨Öuî¯>BÄ¿a©~‹YïAWlàP?bÿÏø¸ÏÙg7ÎÃ9rNÝöDÊùúÏ‚.ì,éBA}CÊâ(ÿŠÓò;ð»]Ðg©váf´z¬+ÈhîꢛŠûºX]ßQ(5³›àÄw²¾· ²2B™Ý•ÄÛéh‹ûpWn­èš£Vu%ê?A¥ÇøÒ®ð~ ^óFÝcÐåO±-ðš®ÒˆÝÔÙ­/6áÊú‡®a½É[»É!³ºÉ!»«šûº©‡ºQð¯qDß„®z‡[×Ä£;3_&FÕÇ|Po[ª>ìfuÇÜuò¶ƒø´È.ñß»é.ðÙį:fÅ1Ö3Q»Ý‘¨T#Ì×üò4c6ä§…æ`9MÏñüý´R5»{hÒæ#Ý‹ÕÒî˜%º¶»5scwºós=2%³‚þVßóṪ®~,éDOŠyݭ阋Áx¶ªJŽÏ³Ì~ èêÌÿ¾=lÌ?Þ:Ý:²þ½wzÄÇ/Q ­ø#XC§L0?J™×Ãúúå‘öŸ³Tô°ýf1‚ü˜Óf ¼“õ¬¿ä«ûŠõ~Öß$r Iä¸\Å—=BšìGrˆ©¿sÍjÊuAS:#8wõäÚé><£ï†©ú>芇 B×>ÁþKØÿEÆ+ØÿMöYÍ>@×}ˆ`ѳ·gèÕfw/tXòi·2«ºæKâ& š}¬že•½rÕÖ~zO¢¿§?òGäÖßñig5à ïlÆm¢fÜÊcüX3:¹Uç~Þ+çõšA‹Ù´¦PŒ~ë•›­Þ!sà%Âëñ‡{ªÈVþj³à“dioõµÊW†¼Þì­Ö‘WÝ[Í8ÃAWm€.ÿ„H>³U2»Ñ`y¥Oxkf/7Kî飞îƒÖ¯GûðÝ“}ð\åÐwsèß2>ØÌjÿöQ[õZl¤ª~ã(ÜÞ”C×<Ôœø¾º»¯ð‡uÀmt•U •?ÝœŸL-Î,Áî£êñ¾ê)¤Ãkl[ ]½ºâcèÀ–æ\«3ÞÏþ?áx~òìêKTÊ^+Ñ(ù³’¸]=:PÎ>0~ºî©$ lšæ )¡© ÿ¤üx”ð ÄRðÐ܉fÚròßäjèŠÀ÷OÉ/ËÓ´_RÔr4¸6À^þ1ìýÕ?û àNgúá)´Èêå¨"jÍ&¦nƒ®ÙÉx7ã}|ºg[âtÏC×.‡.­¥õ$÷«oûM*ÌâÜüL*¢zšêÌþØëCÝAWT³Š¯†®x †f³.ꯪ@yƺw™²–(jušRÙò½ä)ƒBø4¹ʣžYØêR¬¬Ô‡Tq ¥î"ÿ.‚áßd…GyB˜ùt‚šß2į½2Ä×üôë•z^øÀšŸâ ñ5?P ÔûÂÖüdƒŸlð+ •Ú)|à`| ~­þ„Kø7ºó3ÊÈ.|`7~Ú¥†8‡ðlIÿàµûŒk÷i{“REr,°ægçÊ0ÎU3]©û„ìÆO™¡ÔËÂvã—ÏTj«ð=C¢¯¥Ú8¶Ú86ˆ§‘û>ÛÈWƵ+ãÚÓïPj¨æßâWü*ƒ¯î¦¸ Ø_u¯R>°?ã~¥æ Ø-þPÚjþqðç+µIóçÇÁÿ—R?iþ¿âà/T*q¨ðÆÁ\©34ÿñ¿Ü¸¿åÆý­{R©Ë„ì~Ýb¥&jþb£\×3Êu½?i©R· 8˜ß°æŒðFøé/ÓñÂvã׬Pj¯…{|Ê_'0LÊÎëîüô•J,|`ͯ0Ò³ÂLÏ7•:KøÀnüòÕJ]¥ã³Ú=ÿ§½§Ôdák~F‚QW$õð:¥î>°[øéÿQêU}½ÿq¿ê¥¶ XóëŒüYg>6¸@â³É=}Ò¶’]øÀšïTÏ'ïPê<á»ñU­Rc…ìÆ¯Ý¥Ôụgù^¥>°Ûõ¦|Mé/|`·ôLþV©úz¿u¿ºŽŽ>°[ü‹R9¿Pž}ÝùÉG”ê+|`7~ͯJ]-|`7~à¥n>°?ÅçQXóêÔúõoͯ¿‘GíÕüFqð=ªÑpá'ÆÁoîQÝ4¿¹Çõzk[zÔ¥ÂÖ|§çEqkš"|`·ø·ñ¨Ç4¿MüvµZóÛÅÁ?Å£öhþ)qð;zT½ÂÝ4¿KüÓ¥§æŸâ;µO’‡zÔ­Âv+/5zÔ“ÂÖ|§ç]ÊHÊÏÂÖ|Çú™Þèvëø\â;ÖÏ£=*áb©ŸG‡øµÆõÖ×[1Σz ظ֣F XóFüæýÊô¨á»ñYTßêð³â?×£ÞÔáçÆ~žGíÓáç¹ß¯Új>RêÃw~Úu¶ðÝÒ3yŠGù…ìzoò¨{…ìÆÏ¸Å£V 8§÷Ü™TÞuügºó“g{ÔQÿÙî|u‡Gp‰Ü¯;â¸_wzÔÂvÍs=ê þ\÷ô©ø‡G Ø-üäû=êá»ñ+æyT•ž{|Òæ{Ôzá»…_ýˆG}'|`ͯö„øsz.ð¨¤Q’ž âHÏÇ›©þ>°kúló¨g„ìÆWŸ{Ôák¾Óó.c—G}¯ã¿Ë½=–±‡ž§— {øÕû=ª—ð]ï×J>°ëýúÞ£²…ìz¿~ô¨™:þ?ºç7uØ£ž>°¿âú@Çÿ—8ž¿yÔ/Âvã×*¯ê0Zê7šïTÿgø¼j°ð]¯·WeØõz{U@øÀ®×ÛÌ« Ø-þÕI^µNøÀnág´òªoôõ¶ ñóóI^ÕpŒðO ñkü\käç´ö^ÕSøÀš_lð‹ ~U²W]"|à`|Œö¤2Ú“U]½êzÍïêž>)ݽê>á»åÿ¤ž^µBøÀnüºÞ^µMøÀnñ)Nñªß…ì~ú¯ê4Öâ»ñSÎôª …ìz½gyÕuÂv½Þs¼ê^á»ñkÎóªeÂÖ|Ç÷Ç!^µILj{~®¹À«Žèð/pç_äU].—ô¿È=>5£(=…ìv½U—yU¾ðÝÂOºÂ«î>°kúóªç…ìšþóªÿ¿Åÿk½êgÿkÝùå™^uòØ-ýSr¼ê/ÂÖüj}{µ.×«Æ Ø-üò멾Õñ¹Þ½~+ŸèUjþÄ8øÅ^õšæÇÁ/õª4¿4į1ø5f};…êgák>5A‚|ù~§É•r¿ ~†~†~Òß)ÿ Ø5¿ÝìU>°k~£Êîrá»æ·Y^5MÇ–ûýM¿Ã«>°¿î.¯zIÇÿ®8âWíÐñ¿'Žø—{Õ1ÿò8â?ϫړøÏ ñç<èU©ÂvãWͧô>°¿ö¯*>°æ;õ×Õ<êUs…ìÆ¯®ðª á»ñ«ž¤ç…Žÿ“îüŠÅ^µVøÀn×[³Ä«véø/‰#þÏzUý«$þÏÆÑ¾zÁ«ú Ø-üô—¼ê*á»å·”Wèy!|à`ywx¾”¿æU/Ø_÷†W},|`7~úÛ^uXÇÿm÷öOÍÊÿWKú¯qç§¿GísỆÿ>µgtøïÇþz¯*×ᯣ>ùW½,|`7~ù'^õ™ðÝâ“´É«þ>°ŸDvÿ›„¿9Žû»Ý«ÆØ-¿Õìôª[…ìÆ¯ÚåUÏ Ø_¾Ç«>ÐñßGûa¿W}%|`×üÿ-=ÇKøßá×7¯o„Ы Ø->5?{•_øÀ®ésÔ«þ!|`Í/6Â/6ÂOþÚÂvËÔøØ&|`·ø|ĹFž/>w~F}Ÿê&|`7~Z#Ÿ:_øÀnüäDŸò Ø-ý«›ûÔ-ÂÖ|ÍטùI>õ/ÍO ñë ~Á¯jéS¯XókŒø×˜éÙÚ§6êôlíÿä“}ê'}½'‡øNϯôv>ÕüZ©¯Ú¹ó|êtáÓÇ¡½Hö©ÁšŸâ§üt3ÿwö©lá»ñ“Oó©Âv»_ÉÝ}ªRó»ÇÁ?ݧ>ÐüÓãÈ?½|ê[á»åÏŠ¾>ÕØ/嫯{|*R|ê/šŸ¿ŸOei~?÷û[3À§Âv ¿f O-ÑüqðÏð©ušFˆ_m¤gµù¼;˧Ø-üò³}*1Cøgáõ¹ÆœÿÏ÷©ÂvÍÿƒ|j„ðÝøUC|ê:á»ñk‡ùÔLá»åŸêá>õ ð]óÛÅ>õ’ðÝøQ>õ±¾ÞQqÔç—ùÔ÷Âvã§õ©&™RŸ ñç×ó©žÂv+iã}êBþxw~­Ÿî—ðƒùÇÈos|2}j¶ŽOfñÉñ©'t|rÜóCñu>µJøÀné™~½O}&|`7~ÊDŸª>°æ;Sc¢á‰O±q¿ŒôјËû>ušðƒñ1øµ¿ªÔ§.>°æ×üƒ˜äSÂÖü€Á|5ŧn>°æ—ù­ÜÈoå÷©„¬ùéF{/ÝhïÕÎô©eÂvKÿêÙ>µEøÀnù?ùNŸ:&|`·ðÕ\Ÿ:)K®w®{þ¬ø=_„욟ÿéS>°[|’ô©Rá»ÆÿaŸº_Çÿaã~|s¾Sù¿|êEáóƒÓûÑBŸúHøÀnñ©£‹?(|`7~Í“>ub¶äÿ'ÝùU‹}j ðÝøåOûÔeÂvË?uÏQþ>°?ý%ŸzLøÀnüªå>µFǹ{þIݧvëð_#üUô|Ï‘ðW¹ó“VûTŠð5ßi>[ÊZŸ+|`·ø×¬£ü,|`·ø¤ÔøÔB~;¿|£O½#|`×û»™ÚKÂv‹ùvŸj–+áo7Â7Ò'ÃHŸº/|ª—ð5ß©ÿ¹zµÿ… ß¡?9y¿O])|`7~à€OØ­¼d|ïS³„ì–éýN‡Ð_ñ‹O½,|`7~õïô~¡Óç÷8ÚožµK‡OXó«=öí“ _‚:¢¯×—à~ZýÕü:©Ï뻇¯&¨.Âv ¿¶q‚J>°[þ 4KP£…¬ùÅFz›ùó„u£ð5ßéùh“ þ¥ÃoãÿŒv j­ð5ßéùRÛ!A}£¯·C×Û1A5Ë“øttç'wMP}„ìv¿j»%¨ …¬ùNíϤÓÔ ÂÖü4ƒŸfðÓ{&¨;…ìÆ/ï *…ìÆ¯Á÷ÊÂvã'õOPÛtüûÇÿ ê'‰ùÑßú•gy)ÓHÛT›|IÛBçJ6î…Æ\vJPg Xóçý+A]-|àà½3ÂO1Â/_ n>p0o×^m^ûc ê)ák~• ñ5æøW$¨u:þF^5ø¿‚8ß¿¢Â=üôÇ©,\/ñyÜHO#þÉFü‹ŸLPƒ„ì~ò¢•!|`Í¿Íø.âtk¤ÔæVõÔS‚·^-¸–0øÙ+ŸÐ!êÁ­Išy¬oŠOŒy)Cã" |ªÃñÕS7Â_Îu¯`œëÁ8×[„›{¬ñâ-‚Ñ·ð“`ŒÃ&z,Œ1Ö.ßåU— ÆXg`Œ“ÎŒ1Ö¥‚1~½Vs¦xÕ‚1.ö«3׫:{-Œñ÷¡‚1Vž©q©Wý]0æH,Ôþ{•Z%s-¾Öá ¡øû“:C0êÃËcîÇÁ˜7ò¨`|³°\0êç-‚Q7þ¨ÃéQôh°Òª§W)óy®ŒonŒyéOh%웂ñ=ÅNÎY^U¿žpyÔé×÷¨±ŸéUe‚1÷æaÁ˜·ó†`<³¾Ò|ŸG5¬/áSÝ•,õöPé™r`|Ïr‡Æ§yÔR{xÔfÛxÔ1;zT‡‚Ïô¨ó4àQÙS…rŸÆ­=ê5)S}¦1eöŸcNãI %n-=ê|Áø)S0æ‰Ý"ߌ<&óÞŒúê{Áx=¡‘äî^u¶`”ÙlÁ¨ŒçøÁøÆd·öÇ÷k%>gyTGÁ˜ç6H0æÈå Æ÷qw Æ·uË㻆/c^½&’xUWÁøvo¨öÏô¨Áøp®öÏõ¨Wc®à'‚ÑÎùQ0æž”(y€ž¿gÆÜÈq‚ñÞŒ9–‹ã}ä#Á˜ëxH0æIvi*éLÆó:_0ž­³5‡žË Æ7ȯ FÿöFÁè‹VÍ÷õ©Þ‚Ñgž.ý·Å‚Ñ÷{Ÿ`ô£¾ ù§ùÔ§w÷©£š?À§:5—xžïSƒ£×/ãésc‚§4Ÿêé·cÀ&ͯ :G0æü®ñ¯ê”$Ǿ¬ÔpÁøžºP0Æâç Æ8È‹šÓÙ§Ö ÆøÑ~ͯïSÞÂoíSc (M0U ÆXÌ4ÍO¦w:¯úÔ+š2Ý_Á ûA0æ]4i)éó:=Ó£1L0æ~g F?ç-‚ñMñ“‚ñ½ð{‚ñmT`¬™pÒ r]«=*U0æÃŒ¾Í©Ú?Ó§Ôü×=êUí¿Žžm‚ñí³j%qžIÏJÁ˜ó?\0¾/(Œ¹(w Æ<–Å‚1fµæìòª]¥gJk ów¯ê#c¬×j¼Ó«îŒ±ìå‚1nû…`Œ¹7:QÊÂ&¯ê/cåׯ<ÛcLÿÁ˜°Aã÷¼êGÍ_ãU'Ÿ$þo{Õy‚ñ}ý8ÁËž$ãÔ Æë*ÁX÷£VûSCÂ×FŽýÖ«z ÆîhÁ˜ïq“`ÌÍX¨ù¯yÕ[‚1‡äû6ºŽJPõO=Ü»ÆwXcã«Y‚1߯R0æ ®Œy†ß ÆÅÖm…™W Œ¹‘— Æ{î ‚±†Ã<Áx_^*mõw£ßo`¬±pT0ÆÚ¶“ôùÞ£þ"óÞ/ŒwÞ ÍåS7 ÆØÊÂñør}ìÅ>µI0úcŒoÕ[´—r7×§úiüµc­’ÉÚ¿V©‡cÞþ‚ñŽü™`|oþ“`|{تƒÄó€OõŒo† ƺ+×kÿ)5K0Ö©xL0ú¨×Æ÷ {ãÛ‡F§èú“ê^Áè³$k³d ÆXÏ ÁèÇ~B0¾¹xS0æ¿}®ý·*uDãw=ªÅ©r-ô²Ú[0¾ï¥ý?ö¨BÁø®¤\0ÆDžÖœ¥ÞŒ±žšßϧŽé0oñ¨äd‰Ï@Ÿ"kdF?F™ö€ªMÁè¿Z*}Ýk£Ÿj‹æ¬§ç¬ÿIj·t”|¾Ð§ÎŒuT.Œo¬& ÆzÿŒ±˜gc]‹u‚ñ Úw‚ñýZR'‰Ï{JõŒ~§!Ú¾GåÆz/·ÆÚ&Æ:¯ëcçyÔ&Áø^ïÁè{oÓYâpЧR:ë|èS#µžG•jÿÐ=ŒyŒ/Æ7Yk5ÿj› ÆÚ5hÿk=ªs‰ÛÔ¤Œï[³»è2åQ·hL/kÎõºö¿Ã£¶ F_ßAÁøî²iWñ_âQ}ã{ºtÁø¯T0Öµ¸S0úä FÿÿZÁXÛç[Áè7Nì&÷ýÏ‚Ñ_=V0úf' F¿î£‚Ñ'¼FóéEfw7]ûT£ÓäØç|ª`|sz`ŒÿMs¾ð©£_÷‚±VÕãšÿ@‚z[0¾ÅØ£1½ëÕë®ëÕU0Æû† Æ·¹‚1®w›`ôT FÂûúXzß'ãtÞÓåK}ª½`ô œ:Þ½=x…V—8ÇÀÓ <ËÂ8³º×ðŸoàÇ Î†ÿ:ó¿58?ØÛ#ÄigàÞ=BœT3ð(7ð4?dàg ¼ÒÀx‡ñiÜ3äßÙÀ <ØÀã \dàé~ÐÀ‹ ü’_5ðJ¿eàÍþÞÀ¾^ŒneàÓ |–GøO3ð®0ðr¯3ðNÿdàz½C¸ûx˜¯2p¾§x–6ð"/3ð[Þbàï ü«ô áÖîlàþN3ðhg¸ÌÀ·ø!?kà× ¼ÎÀ[ ü•¸Ißncàž>ÏÀc <ÁÀ7x¶ÿià' ü¢ß2p·ø@ßP>l`oJ'¸­{øl_dàË œgàR |Ÿx±W¤„êŠï1ðQ·ëÂý |¡¯5ð4ßaàÇ üœß1ð>là¤þ!ÜËÀƒ ü7—øŸ®0ð ×øG7§ø¸ÜÀ•~ÝÀ› |ØÀ͆p2°ßÀ%¾ÝÀ^aàO \gà¤3Bøt_bà <ÝÀ÷ø)¿càm>hàzg†p÷1ð…¾ÆÀ“ |«0ðkþÜÀ‡ Üâ/!ÜÝÀC |¥ <ÍÀ·ø_®4ð«®6ðÞnào ìM á“ Ü×À8ÃÀEx‘_7ð»Þlà Üè¬îhà¾bà±.0ð-¾ßÀK ü†7x—¸éÙ!ÜÕÀ} œjàa¾ÔÀ.5ðÝ~ÜÀÏxµ·øGûÎ1ʾ»ø/¾ÔÀY.6ðL?jà ¼ÚÀÛ |ØÀõÎ áÖîiàÁ¾ÔÀ×8ÏÀ7ø>Wx•?3ðwnüW#­ |Ž/7p‘§øvßgà ?oà•þÀÂü<ÝjàCnx^Ÿnà!Î2ð Ï7ðKþÐÀû ü›[œ§ø|_nà x–6p•ß7ðçþÑÀ-Ò'·5p/ÆŠñùi¡´M7p¦ÁÏ7ð-i¡ðï0ð? ü°ÁÜÀOø%#—Ö·ær^F2šd ÉX’ËI® ¹’dÉU$W“üd<É5$×’øë£ŸŸâL2$‹$›$‡$—ãty$ù$דÜ@R@2‘¤¤ˆ¤˜äF’’R’2’I$“I¦L%™FrÉßI¦“ÜLr É ’ÉL’[If‘Ì&¹ävŒ bg ;Iî"¹›d.É=$÷’üƒ¤œä>’ûIþI2ä’I"™Oò0É#$ÿ"Y@ò(ÉB’Çê[ß>=NòÉ“$‹H*I“ YG²ždɇ$ÿ!©!ùˆäc’OH°…ѧ$›H°{ÆQ·l%ÙF²dÉç$;IjI¾ ÙEò%Én’=${I¾"ÙG²Ÿäk’oH`ã£ïH¾'©#ùäG’ŸH°Ò!’Ã$?“!ù…ä( ¶CÂXîo$¿“üA¢P~ÆÖ<؈$¤I}’$ I‘4&iB’HÒ”¤ÆoI’HZ´$9¤Ik’IN"iCr2I[’v$íI0†| É©$É$I:‘t&éBÒ•¤Éi$ÝIN'éAÒ“¤Io’>$}IRHú‘ô'@2ä ’3IþB’JrÉÙ$çœKòWŒ]ŸO’F2ˆd0É’¡$ÃH. ¹d8É’‹H.&Ir É(’KIÒI.#M2†d,Éå$W\I2Žä*’«IþF2žä’kIü$$™$H²H0ŽžC’KrII>Éõ$7L$)$)")&¹‘¤„¤”¤ŒdÉd’)$ÓHn"ù;Ét’›In!™A ™IrkÔf* 2µÁñzíx½v¼^;^¯ý£^KV~ÿÄ<ÿ„I…Ù9~lT“S¢ücüY%E™7ø§–ú'•f^—£ü²:v” m'ûÂicÄ&mÚœ\Z6iBr^NA1öö3CŠ8 ܾ+]©}È;bÓv옎Õìüsy‡3[ 6s±3`7¿ÍNhNTÞÇÉè)±Å \oøfgãåì ¥¼µœ­…O¾7‘/¸-aJ¬ˆñ_Q–!ÖžÅæÄ”àvÅQöûGqÇŽ³¨ÁÍCQ»Ø:õ~¶vö¬°]ZmQ[»Ú²œÏ ߟȖb—Ëa@‚wþu"d…¶it¤„ïìèDÓû/ǰ‡ö¨u"ñÆNF½¡±“=b÷b'š±W²Åfe'ªÞ<ÙÉ.•µ1Ÿ ÉñDöûjÛ1 sŒ£í ÑuŸø‡ímeljØÂÛŽ›_¶hv±ûy‹d7’¹«²#7+´é³3G6ƒv&8ÔÈ‘—xkV\ØüÚ‘;æ²E¶£]vÊv´—Æ‹à®ÜN ÇlYêV•º×EAJä¾±ŽdcŸZGŽ{åflÅj£ÄÏ íÁævHØvuNäXÕli¬´Ô¥…]ozêd£†-u¯aKã¯aMª±¹#•Z0”Š1j§Ø6Û©ò̶¯ªCf÷Ì^I©ó}{ñ†´NV+ϸ˜c<}Ê J'÷s|(PÖõ;LºSìÛÄš¾_e\¬Øš{cÆÁñ›uÇCw$Nî?À1Í&÷w6Ù5t¸}#nب GŒæ·6u0ÚîüêÀµß=Öln@E=Úon~kgÛ+׎Ú+×ÎÊ×¶®#ËÜWב±Ý®¯8´×­­y’c|¯H÷§_<ì*ë%«8³$“ÚPüZlCÄ+Evþu96eæÒ¼Ìþgœeºdh¿6~gDù¥»ÄjÔòµûÇ‘r–-‡kí ùE”ù¢ãÆB8þ!£GF³üØÖùØ!cG\2 éÖß!ðýÅ϶k_f[“Þ5ÚÖˆ§ ± m>mkíZmk..²i|Zs›i[F)¶­¶·X[YÛÚŒ=µ£ì#èV íwfJ´eÌ ûʆë¨ÉZâôž:fؘ1#.åÏšîÚf²6Æ|5INMœŽóÛ¤Iœ˜ÉU^¬+Ò¯q®»fƒæØUìÚF¯ÿ…ÎG²ÕŸëœª1Ï&É-áJãKR·ôˆÕŒ"‡ž€/‘0p2Ž9†š"FÔ6W ð7ÖŸÝ?ßÖì5ˆª›È]ê™z÷z[Ƙ±—Žê™TR‚×ÛŽ"¾ýs‰èÐ<³£;Üàª~SЇWTce.jnA¦Í3Ö rK™cÓ-fPâ:W¬÷šš}S›I¶5[¬ûâp˜cfFpè~•JÛ§OTXT6(·ÌæEÞd Îɵ{RJ'M¸>'«lPAÙ(:™CÊÄq²Vx#§ûdÿ Šà¹qb£_ûPÌÖ¥C÷Sì~a«]V"Öµ—ú¹Éh÷v:7â倇npÇXG2(MieÓŠsbd0ìŠÝwíÞoÍ/ö¾èp2ú¿l»œzÛÈŸRÐæqé6‚a{ô¬à÷yrEÛ‹üy™…ÙÔê¾!:×eÛ´0më*.ý{EQ–ªmmŽOvÝ=ïô‚ËvîâŠa²R1ì¶Ý^qtû”JÁ¢è¡§°§sK\ï6“bÆÎ¥ƒŽ‡?èåÍÞàÜkg‰”P ëfÇ*TÂJr²%Ø'AÌX£gÏ¡ih½Û:¥™mC6VƒÞuÐÆmÀư—ä”ÚõŸ€1Åî6äåDûæ÷ÏŽY‰äO(É,!^a~ô¹¬k°,Û>^™c>R£oPÌq%»wŸ8èp±ñ´b¶÷Ž5ÆRÂyÂé!fµ@êgMIΤR›âÆoeÖ•}î‹ùÚ£]p·ˆcÌ‚)2å3§Š³Ô¾^„w~an‘sµãàC¬nœ—ää:= b5ÞãpŒ`³ÃÅ:UfqŽH”ºE+F…æøþë½;ÆÐE<ñ†,â®p~Š1Lá:DaêR0¦ØÝCÇÄ¿Áè°mÎ…1¨‹M˜œY0É& û‚«Jr¯‘ÊŠÊ2 ÜjU—1›ˆñtÕºqlŸîã9Ñc9Ž'‹cÈÇm¸'rìÆñ\®7ÂoZN©éC —RnAQQI”oxl&ÑÛ÷zeN6¼ƒÉH÷ºHüÐ’¦wèédý“¬Mì/, ¶Ù7·¨d¢†¨îùÏï²:¤¼É(;©àJfÿÐ]¸®¤hŠö¼Îª»øÕïá1WäO6ÿGü+4ÿ–Fz¬Iÿºö =Ù§˜n5ß_ýŸ§«¥™¹9¥ÓJ­ŠÄô™H‰V”ô›œãç Ôúyqt[ûÓC´Àø›_dþ™OxM,*)Ë4(œlü)Ž>`R”W6=Ï&ÓkonIÑįy)Ö¿þ¡¿”B‘'¦»’?9ìoaøßâÈ¿…aÿ'iódyµ Uq“:4ˆnŽš‡“‡ÆÅ#Â#G¾#‡º±m›Álcô:l¸:j|Ú@G9s?©ÍŒqÃ?4M<ÂÓŠ?{Æš0.]±‘£¦wðÕO{Ft•½£ûȃ¦0bä,î ?'ƒþ9;Ì?â•ß´ßä#<¾OÓùÊlÚ‚/—¦gø šÅzëׇ¹ÊÚÌÍý'rB±öœ å54ŒaöŸ„RÑa†gL³ÑHµã…Ïå4Q·+¬ÃôtºSN]avs&¤iˆºÅ¶½‘ÆðWÿ0«õÎozé—ýh¿ÈLù®jï/uˆiŒxót4Ùöé`›(èÄ YæƘ¡n;¿ÅÆQh£§¨ØùïgØdÓC^O¢¼xÚ‰é•C£'…Øùc Ç^GW±n£¬šsh•IÑã©¶ÞÒ‘²…œÚz‡ØTü•¾Œ†2Ô/fÖŸˆ÷/ö †>þÈ>“䎄òNøð¢øèlòˆÊØQ£|AO›zÐn´NûG Ñiƒ¼,ÿšÇðˆœ#’Ÿ=5Œ‘éõÐ\G¼´OôhY˜%ú»ª44ügtk¿¨tÉ ùGnvñj¿èzÐöAj3†¤½§£>îÃ>vƒ=ACÄüƒ…5c!€ÁŸ’`Z„ µ°Gxgf”—QŒ¢‡J´oðZlŸÛNÏl›í–KŒd3€¡½Ã¾NÞÈ¡„ Ÿy‚°Ìë1]j~d†q|4;?–#É‘cûG±M/»öž¼¼ðØ©• rÝÃÞ¶7ÚÆÊÉO§Îf{[xpQ‰}_²%PXcËê*fdu¬Á¬ÈæÍ5&IŽ ›1 2rÞcŒ‰Ž63]§2:Ï]t›¬kv¢ãtDçù‡±&:Ï0´Rh7‡Ð~Ò Ó,AûiÆ<Àð‰¶3ýì§ö9Ì®sœNg;ÎnÂ\ìr~Î~é\ÉÊ»ÁŸ›™_îsݤÌÊtQ³¦¢f LÌ™˜ULE²WŠtI¥Å9Y( Ãc2Âpƒ5|F®Œ’Q|¸‘L.÷g‘[ˆ€²§Ð{wÙ¤ ôD(Äj}/§×«Ò¾EY¥}GZ¹¾ƒŠ‹ ò­÷Éä1“Š‹‹JÊúöÉ*Î,ì‹nèì¾ã.Ù;=³„ŽëÝ¿ÏÀ~½‡LôçOLé;*§¬÷véݯπ3û*ëOŸ¬ÿƒçSàÙµèBô`PÄàQŒÏ@ìç‡üO&ˆº|›=õI®qªÃd×ÙB±'ýÉ)ü3ÛûN*-é›_˜U0);§oiÕy9}¥,ô‰dŽkX5žr‡±w‡Y1g—Ä1}&æ”ljhqOÐŒ5m#Öl6Ûy˜NŸ¸ÅùEQ\_'9ÏÓvüè%žé'n³qbNñ‰ç‹Œÿɧÿ·?®qžEç<·.ŽÙ±f¡º-üá:;Öí[èx¾Áñ©ïŸøF9Ž/žw]²áºøãâ2SS{e”?µnÀuqòâYÆÁu ×Õ\‚ˆmýŸ/^á¶ZÆŸZPâO­Qá˜WÝVZ‰ew\Ë&f]Ïò1ë·O¤âþxЕÏtºxW ˆkj]ÜKÄ97ñO.¬àš ÿ‡?‰g³Óœ­˜S0Ý'ºÎMtžñóÌqL[5ëÕ}"®ûüßø?ïpœgÇ,È?5“Ò±‰sšu<¥Æ²¹~õêhˆû^·Ï Ü¢æúƒã‘vkÇzŽÄ÷íBœ_?8>óS8¾a‰ý!Lð1ç°î‘ë7>nŸ$Ù}óK²?·J”ÿ~QǧëR1Îõ]¼KëijÝvŒR<ß‘ÿINßÈ;F'Î/Ûÿ+Z|ŸÓGWÆá§ÛYm²¹ÍR-¶ïÑzò¶M†·]¦!Çy oÇUà ì#sYµ­Ÿj^ûG]ä§.6æø÷lpþnȆÇŽ qlÓà¶±‰ã¦"ñl{Mñ˜kgÿWËjÛù—‘Ó ´OVË.D6j£¾Pt[TÁébûÑÚ¿‚Ë* á˸d9»OÚ\Ö]ˆ7ÄÿùÆPÇÇÇÇÇÇÇDZ¿{ôCrZ’4&ih¹ ãɽMñ–æžá~ÿØaãÆF˜Plº Hê)ÙÿÜÏÖ!jôñMê”ï«dvåü!HÇçg•N›8¡¨ß¼ô‹ Ã÷S’RÝ2,Wy0 Löû³äåÜ! 'SäG¯³ÜP&ö[ÍdçkI(H£È¬´\åSö?¤ã\¿è ±ƒÌcqÚ¤k¥#¨g ßü„èöÇÓ=³\3þÆ1…~+­%{¢Ã@z%ˆk†QŸâ<À £ Ó%ŒDRë-7, ºÏ@¹´šc\KÙf+ì:\Ë„ÒÒ°ÿQal'(ÿÌ0<8Õï9bÔÅÆŽÐ÷2!@ªVÜÍeVÜÃŽkGÒæ‰}' ÷zï·|ã«~ôY9O•pgr›JøvªR×#¿&$éÖ¡õZYâù+%ëe:Ml _Ò5x¯ ýG|˜ëÈçâs6jáÏx ò'@è} OJŸ³ú¤ö¡|“?AÉ1©±Ž±ºÛ#ããR‚Çy¼>¤„yÜM}úôˆ¸ÝìmÉ3­´,gbŸÁæAÇÇÇÇÇÇÇÿÏü¦7ô.ü˜ªwóïâé }‹odMýë\•0snvÛïô-žžè“ÿyµ£ ÉA~žÅÿë d»!kûÍù¾ÅÚþæÌ?êÀ)÷¨†ó:þQ5}aç©3öeÏ©¡Ô&¬º÷½U©A Õ|Âj&=ÿgvRI}ïVꜧUCòh¢–y½jЭ*}fO:¦‰J ŒP‰c'=}°·Õ¬·UBß…FJj†RÃ}ß¼È"7¡ÉGç>¦RW©†33uÆ_NMÝ´Ëpß·[ˆ¦„{p+ÁQI¼Û™—J¼…“/œ™Ìyç'ÍNœ{V†¤ø«Þúc³qÍ\/…ÑUÂøëpß³f ž¿©øw%œ9=¿ÝTøÓõ©TïÇfQÚ”7ïë=¯ño¸¾YYúø¯7ˆÿò<µ½òÌì¬ÔØS(mFÔõ xUÃboÒn ðþ+Ä¿1@ñ¸ù¼¤>³NW‰Ãé0}-¡ôùz¢ðo›~³7ò»Jün¤0z§V·ZuBX3žüfêô…I}†û¾eú´vS¯ P<Úy[MW5éÓÕ‰Å}Ê“ö¨JE8çXaÉõ7¦ëÿú „1ýÚ–­èº(>uÑñÙ¿Ãâ7:ŠÏþ÷Åï‹sý*á¯çÓ=êºnê9ƒ ÎÉO,›1ô“©3r·M¥tNÏn7ñ¤ÿ—MŸÞn¥MJ`¼j86­þy¿…ª ýO´Òî¤]Å¥ 8í•v«Ê–s^.çœhÄcø]…xðy)©ƒÓ/8aêô¿@çüæÑð8|³â0××wò°g¼Ö¾CVSÎÃHãÙ‰s(Îׄηï#‹ÓpÿŒE|=o¶WĶáÜ7).³)¿V&–÷}wMßYJÑ5R9ØwŸpž†ŽŸ©ãJï}rÿÞÊÝ۳ƠUªJ8#„“9}jðügˆß%VܾïÚ÷_tÝ7µ›JçNÖ÷éœ'—Ò=š?c•»W‰Gï Á{xÝÃ'«ÎÞŸ¸Ì ó«/¬0übÅ÷;.ßHãòL•:ãJoßj*—‰+fÿTÄíêfêìZå9§M³ù眕¸”ÎËåéy¥U$H­\<ãºmSÏ®æòÜAâ*×ßà9Fqœ¬z#)µ2­aPžÿVøõ„ßAŸÃàwI­|$YøoXü½ŸZüúßÚðÏM­œ¯ù÷¿RøoØðǦV>¨ù×’ðï±á¤VÎÓüÞÂ&ükløsR+ïg¾•îûáòÿFó¥tœ”ÿú]ƒÇÑ1HO:nQjeyŠužýïXçÙ#å¿Þ!þÚÔÊ{Ë…ÿ€ðŸþ;aü ?¿6µòî áçÿfá?Ío–Z9GÇç á_"ü>Ý·Ûj…_Oø„Ftü› M­œ•nñ÷}jñw+üzÂ÷Íh°ZÒµYqjåŒ4áW ÿ ‹Ÿð©æŸû‡uâ/H­¼©"õ«f+ä˜å˜;å˜Çƒç]Cujå”bá¾Ôÿ 7†ñ­kØœZY&×¼¯…ðOþ >•ŸR¹†¯¾°ø_þ"üÑüæ*µ²¸Jøò|þRêß6üV©•EIŸ)ü‡…ÿ¢ ¿{jeA@ø— _žÿ¾™ÑéÓ<-µ2O ¿£ðÏþe6|*kYþÞ„ßHømøTÖüþÞ·,þ®-ßûƒMüg§VŽ—ûµ÷>á?-ü·‚ü`Ùl>?µò*ÍÏþ4áßgïJ­¼¢8T–÷ö–²|Ž“çŸ÷*›ëX“Z9FîÞ_ä<-„ºÍy(’²°ç}‹ÿ…Ôÿž_lÂ?–Zy±ÔI{þ‹Â?ºì$µO­¼PòÝž|áÏþÃ6|ºÏC¤®Øs–ð/~¾ ?;µò|¹Ï{ ¿£ðÏŠŽÒÜÔÊsåzwo±øµ?¿Qtú$-I­üKÜSi݇kè8iÿªlâµ>µr@œGÊ­”õ¸ ¿.µ2EîÛn)ÿµRþÕÑ×Ñ¢Mje/)ÿ»¥ü×JùWƒ¢Ão‘šZyºäï/¥üï”ò¯ZØðǧVv•ûü¥”ÿVù÷ýñ… ?ZÙQîó—Rþw>,|›òß‚Òõ©_¾”ò¿3_ø3mø”¯ÛëøHùßy–ð/³áÓ3çdyFí’ò¿³‘ð;Fó[R}w’¤Ï.)ÿŸ[åß÷».ÿƒŸœZY"m‹]Rþ?Zøo…ñù~µ¤ôÏ‘û»KÊÿçÓ„ŸMøé©•%}võþágÚ„Oõ×µšïþÉÂïZR[¡•ð¿øÈâïØ/|Oô3­%Ý/ŠÓWÍ—Ê1Ê1Vû×÷Û›4¥{Ö¼Zø…›ðµáÓ=k*Ïý/þ*üË…?ÑæޤV6–{öESáwþ_£ù'P]T_îYí‹¿ýð›F§é Ô¾»Kê¢Úç„ÿŽÅ?¶#:þ'P™I2P{³ðþsÑe愲ÔJ¥Ã¿Dø9¿Ù&üy©•¿éøKûwû¿Ä&ü©•%ýwJûw{=áw°áפV~#ef§´·Yí_߯ßÚÄg_jå~IÿÒþÝV)ü7¢ù­¨Œí•gàNiÿn›$ü{‚üÓÖI|ZQ·[êöÒþÝ6Lø×DßßVS+¿ºýóß„ßZø½mâCel§”Ï7Xü­Öû¿ïèo6áSÛ.ñù\òÿVÉÿG7ØðéY³EÇGòÿVÉÿGNÿVTÆ>åü€w#:†Ÿx/¢ã.‘ãrÌþ¹ŽµrŽFé︗J¦c¤üígs̾PÛbÇGhW}Çn±Úÿ¾_E§[kjŸ×H>ß!íÿ-Ï ÿ>Õ•$wHûËÍÂÀ†Om€uR×ïöÿ¹þ_tûßxÏkMå®LòÕiÿoé ü3‚å:ħöüÑôÐ3}ûGÖ3}yÒpßf¹ÿG~ ž'/ª3o”ò·]îÿf¹ÿG6„ñùþ·¦÷ª"‰×v¹ÿ›åþy4ºÎoMï?K:m—úo³ÔG&F×O­©¾<$ùk»Ô›¥þ;¢ë?o(ü©ü­tÝ&õßgRÿijçúòn¹ÞmRÿ}&õßÏ;¢ã"Õ—?Jü·Iý÷™Ô??gçûV'ÏÄmRÿ}&õßÏ7Ûð©ñ­¤ç6©ÿ>“úïçKløKS+¿–øo•úï3©ÿ~î`ç6Û>yþl•úo“Ô‡¿µáÓógÔ—[¥þÛ$õßá7¢ù'Qzî’6áV©ÿ6Iýwø>µjåþn•úo“Ô‡¯±áK­Ü!é¿Eê¿MRÿîmßšZ¹MÒ‹ÔŸJþ?ô› ŸÞa6Kúoù¿hûþøëÿýífE(Êʯù+¿™š&²¢cE™¨”‰RT+ʯa†a†±ƒa†a†™a˜±æGe•Š}¯³sÍë9ç¾Ï¹}Þ¾ôxœæuîs¿îçõ¼ž×óz½îû&þ³ˆÿ¼ ñ›Ág¼þ'ˆÿ,â?/ÚÏÏœ÷³.<>ñŸEüçõsä‰ ¥ý¬{xýOÿYÄ^KÇó©Š%þÿGˆÿ¼2÷ޝþT@=Ù5Ÿã‰ÿ#Äÿ­ì{ù¢Æwð³6ãù'þÿ·âuŽÞe'ãuœø?Büߢ3øßÎz~œø?BüߺWÿ•f«0ÇϺe¸ßÅ ô!Ž]æwÜùŠ:¿JæŽ%ÙǶûŸÅþ¸¬óà Õ•.<ÊïDó;‰Ž¿Q<”DÜ äø~ª3qÛ@qÌ›ã[r|à½Ú¦Æ·³=zÛÏÍ­Xa]›¬ÙêÚaæÿ^:ßûœßK)Z qþ¿_ÖùÎ(~'¼hí=Äùÿž¨óåªö Ä9j6O´èyêÎïë\#~ÖD^£žöëq¨Çû;ޝ„뽆¼“•kŸy‡ã=óªR}?k1•Èñöõb7suN¥v~ÖÔYŒ&çS'þ•>÷³Æ“g³ÿLÆÿ¦Nü+AG-gÞf1þ™ŒÿÍ@óYågãùÉãø2ï­3~ŸuuøúŸ©nÕ?Ú|ïJн ™·G¨RÿÜHu<ÿʸþ1ÌÛ#Ô?©nDꌇîGÞÔ?©nø:Æ·2tï,^ÿÃô?\ãxñн3Y‡Óÿ<`÷?‹]ÏÒ9ÿQ~Ö×ßæïã;þGóf6{€ü=Zgó•ß}˜ü€ü]‡ÿ+£¾DŸ“ÿÿ¯·ÔÊÏ:‰Ç?DþßOþ¿^Fgü-?ëÖ—Cäÿýäÿßtú¿*ˆÛ8æå!òÿ~òÿoñ:㡗ƇÈÿûÉÿ¿ q¼>U —FŽ'ÿï'ÿÿ s|ÄaãœIý³Ÿü÷[¡þÑÄñ×úY‡ñü3©2¨®]+2Þ~|\Ï<ŸLêŸ êŸkÉEÆäWqåYgRÿdPÿ\ w<¯ÚÐÛÄu&õOõϵîŽçãÕz›ñ=Hý“Aýs­Îø~Ö/߃Ô?û¨®ÞÑýß—×ç õÏ>꟫:óÅõü¬ð|¨öÿW£uæ‹ëù)óþ ñ¿ø¿ÚÏq|U\Ï ö£‰ÿ}ÄÿÕ–:ãÁë1ÿéÄÿÕ2:ãÁðüÿéÄÿ•lñ諺òüÿéÄÿ•xñГ]xþˆÿtâÿÊñÈ÷ÎÄóâ?ø¿ 3Ú¤ñ¶ŸøO'þ¯x9Æ«®ç[Œï~â/ñÿë5ñÀ盼>û‰ÿ½Äÿ¯:ø¯†:ù:ëÒ~â/ñÿk¸#Þªáz¾Füï'þ÷ÿ¿â_ô§Õ ÷üß â/ñÿkñ¸žm˜¿ÄñYÿÕ€ÏÖœoñŸFü_Îp¼þÕq=[RwdÿiÄÿåhÇãW>›³gÿiÄÿå~:ãϦ…çOü§ÿ—uúßêÐÛ/Rwî#þ÷ÿ—uúßêè|x>ûˆÿ=Äÿ¥lñÐ) ¯}Äÿâÿ’Âÿ=¢z¬Ÿµ>Ïñ¿‡ø¿4Dg<´y]æ×>âñ)@g<âUûŒÒšé—í>‡m=x7õß%O¸¡¯õæ<Ò©ÿvSÿ]Ìuœwò~ÖšÄE:õßnê¿‹‰:ãûY«“wÓ©ÿvSÿ] u<Ÿèk½¨GÓ©ÿvSÿ] ÔÿŸµól/õßnê¿‹Þ:ç3ÙÏú ç»—úoõß…<ñàuOÎw/õß.ê¿ ©:ã÷ùYŸä|÷Rÿí¢þ»P¨ÿ4ÕSÕ@üÄdÕSí¥ÿ¿‹þÿ… 9ÿçg-U8úÿ»èÿ]ðq<§g³’Ì…4úÿ©ôÿ/¸ëŒGn>¤Åp¼}ý«Xn¦Îxp]1b5ë_©aãxþÏ"7ݨåÒ¸þ•Úãè¹–O®NãúWjŽo­süå~Öy>{¸þµó6Ç—Ó9>z‚ÛÄЮíäú×ùñè þäõßÃõ¯\ÿ:Ÿà8¾fi?ë-bh׿vrýë|ˆÎx\ÿ›ÄЮíäú×ùNEÆÔššàÆk<ŸÝ\ÿÚÉõ¯ó5tŽ…ç³›ë_;¸þuî¦Îñqý/òúìæú×®ÓYÿª‰ë¿œµ~7׿vpýë\„c¼j"gΟ»‰ÿÄÿ9ü×ga­ßMüï þÏ)ü?Zèµ×‚VÏ&~vÿÛ‰ÿs:ø¯åçgý™øßEüo'þÏf:η´z Îwñ¿ø?£süÁ~Öc<ÿ]Äÿvâÿ¬þk¡WÊb­ßEüo'þ϶ÖÚqˆµ&•øO!þÏêà¿8è µV*ñŸBüçä8^ï~Ö ž*ñŸBüçèàßÚ)çŸJü§ÿ9÷ö)NôŸœš¬öÔ¤²þ¥°þåèüêÀÎy'õ_ õ_ŽNÿã =º‹1ÞIý·úïŒÎþ/oè§sŒñNê¿mÔgtöyŸ/Ĩ½ïìf¯Ç6à{¬gB‹` =µß¨çÀÕsa'ëß6Ö¿3:õï¹ý¬k©»v°þmcý;ã­3¾³Ÿu5¹wëßVÖ¿Óy:ã¡‹Vò:í`ýÛÊúw:Ug¸þŸóø[ˆÿÄÿIOG¾­ƒë?ƒøÙBüo$þÎÕ9>ú¬ æ×â#ñÿ³þë€>`ÝØBüo$þuœo]à¿[áñ‰ÿÄÿÏ:ã[ùY»r¾ÉÄÿFâÿgoñ=ü¬Ä[2ñŸDüŸÈs<ÿºÃý¬ïðü“‰ÿ$âÿDªÎñ¡UÞæõL&þ“ˆÿ‘:Çÿ°%ÿIÄÿ ü×ÿt &ÿIÄÿ _ÇøÖsó³Nfþn&þ7ÿ'tð_¯ŠŸµ=¯Ïfâñ\ÿõÀ?¯óúl&þ7ÿÇ­:ãÑß¶e½ØLüo þëŒGýmM›ˆÿõÄÿ1ü×G½x‘øÙDü¯'þéà¿>âÕ„õb#ñ¿žø?æíxþõ‘/˜/‰ÿuÄÿQü×ïïg­Ïùn$þ×ÿGþïé¾úÐ?Ïñü7ÿëˆÿ£‘Žø¬ü×,<>ñ¿Žø?ªðo½¥>zÏjÄÏFâñÔ×ñü ÷¬Bü$ÿ‰ÄÿQü7€ž¬Äz‘Dü'ÿY:øo«Ú[Kÿ/«ÐÿþhàôKþÎúkéÿÉvœGÃòªgÚ@ÿo-ý¿#:û_‚'<8ï ôÿÖÒÿ;¢³ÿ¥!tJã°ýÏZö?Gtö¿4Oìåñ׳ÿYËþçˆÎþ—†¨“{¨ãÖ³ÿYÃþç°Îþ—†Ài*ye=ûŸ5ì'ë\ðô]^Ïõô¿×Ðÿ>î8¾xz;óx=ýï5ô¿w×¼ßÊ뿎þ÷ú߇èŒÇõßÄ볎þ÷jú߇îèŒïégÝÀù®£ÿ½šþ÷¡ ñÀu"ÏýïÕô¿éìÿj„:¹²ðøô¿WÓÿ>¤³ÿ«ÑfµÎ½Žþ÷jú߇Z:â¹tJ_^ŸDúß Äÿ¡2:çsËÏC¼%ÿ Äf¶ãñƒWzŽ'þˆÿÌxñµý¬=yý‰ÿâ?SÿÛùYg?‰ÄñŸ s|ôUŸÏk‰ÿâ?ÓËñz6‹>‰×-ñ¿Šø?xMg<êd8ç»–ø_EüL.r>öñ{ü¬“××ÿ«ˆÿƒ:øoŒ|Ãx­%þWÿ»;ßùò¯Ïâñ°Îø Љ<ÿ5ÄÿJâÿ@!þ…ãƒ:pl›ßEŸÎüïÿX™Àï¤9ÆÌÇÖ[þïÿXÂñQ:ã¡íGkxÿÇÊNß§ÈÀï?AÝ›µ†÷¬¬ÁñÍî¿W | íäù¬æý+nr|IG ùØÖ¸y>«ã8>Å>~ÿ ñÈ™ÀÂñƒ8>‚ããÇ7A :Qk­nÏñA?èÞxÄË~þMÀYï’SVWäxŽo¯s|hû·™ Üÿµ‚û¿öWÔÎ àõLàþ¯xîʸ¬3œõfáñÃ8>†ã“îÇXž?jÆÔ Ý8~LJŽW˜k‚ëÿÊ¿‹¥¹’@ýOý—X¿bnn†ܛޙÿNý“ák»×–£ÿQŸ“G.,¼÷v9ãŸQDzÚ6Òvïë ê£åÔ¿ûrmóß%ÿïËÀØ’ƒ‡^nÈ¿SÿîKÄøu¿ðròÿ¾hü½›_ ·á¶s\U+?ÙËÍm¸»[‰)ùÇm÷ù¿5Ü­:¾rï~÷­AùWÅýîó ïñÇ1ÿ}íqLqnô¿÷ùàs?ã{Þ—qþû0ÿå©¶{É îw{²ü°ù—:¾7ÿÆÖÖ#ÜêÛ¹ŒüŸž]àmîü#c³%ëÛ¹Úþã8Î?=±àüp¼±šÛSý5·ê¶ç p ýÿô|W罌øO„Ïy¶ûì ŸC0lû¥†íÜÜjþ–ø=ê¿t`¤õà¡•»¥Õu_FýŸîÏ9¶û÷GŽ´·så²/c,õoº‡mNöû¯*¯j{&‚[+œsûq–rþ{³mãp½³†:Á˜/åúÇÞüF²úí¥Ìÿ½qø{/ļGAÌ+«˜oBl c~/Þ÷?ÓaNa¼—¶æñºáxêº-¥ÿ¿·5>qˆ÷öÂx/eþï­ˆÏYïmsï8Ö¿´kñ.¸¿=}Ÿ%?9¼èõcÿ“–Zp~ºñŽãúGZ >G«óŽcþ§…á»Eâ½À(ÞqÌÿ´@[}P×:Žú'­%>ßö«Š8ï`œ«ØâÇúŸæeËs¿ùnîø¾Ïp¯û㼄ýßž<û}õË® Û’Ã8/!ÿï9a»>ê·—0þ{ÿ¸!ˆsÇ‚8WqFLen;Íï{ñ^Âú·§ŽÛK]·%\ÿÛÓ ŸÃ㽤ÇÕÁçÜûã=,ùéþ¢ÝÜÁµìÇ]l¿ÿ³ØîÛ*æ7jYò7±Þ/æüwcþK"m׸àY•mÏÂ8Îga¸ÛžçàÇñÄÿnàI¯‚ga4/Û0¤›ÛÈñÏ|èèßÅìÿv«ë»˜ë»ƒp/ÄN»÷,ŒÙ¶ga,o¯¸~1ù·/>'èãq׿v—Ø2êº.âüwÝÆßƒÍñÏ"âð¿<ÅÆ?!-ìÿ†ï–¹ÀÖw."þwÅØæWÈ?ø;ñ¿+Lqê‡÷,âüwÙ¹'®Û°“…˜\DþÛþ[ÜZ]³EÔ»àóeWÜcVÆ?ñ_”¥®›•øOþ­wŒñh¥þKÂ÷]ãÑJü§öQx¼6Í’ŸD½geýKEý[äáVò_*øÏše±¬ÿ;sÕµåúïÎL'ÜqI ±ô?vZ1¶†>c¹þ¹3Ÿ‡¨ëËùïDþÇæšÃc,ñ¿ø_ꣃGüÛBâg9Ûüÿ;n+<.-ãˆÇ…œÿŽL;¥)<.dýßú+ôÏBêŸÐ?±Ý2þ;ÿX¡Rÿì€þYè¨îáqõÏ蟅©®ñ¸€øß~BáñJiKþ:êýÔ¿Û“p<ßûbÝ–cèÿmÄçuÎ Øÿn‚Ï·‹ÄzDA¬yí°þm´Õ…³¬Û[Ú¾/Š<§¨ XßcØÿo/ƒñi…Ï)²åÂð/ r¡Çÿ)ÿ1Œ ð¿ (þ žM´óŸ/ø;†ü—þ[Ð]=[)†ü—¦ž}³8zx•ûñCþK ²?—&¶Û°¹…Ú+†ü—þ[ ø/†ü—þ‹QüWÕÞZç_ÒÇÛ|Æø/Fðß|òß6ðß|'ü7Ÿü· üc‚ÿæ3ÿ· þ»kÉ_Kþ›OüoþcÿU²Åü ÿÍ'ÿmÿÍ·óßË®øoã¿UÄã¿ñŸ_4þ³lñü7ü·ü7߀ÿæ‘ÿ¶‚ÿæ þ›ÇùoÿÍ+ÊŸñß<òßV_[}üSåöç>¹õ>ØmpÁs•æºuµiC>Ó¬ÃÈÍnÃqÝmŸ[ Ûaã³èn¶ó·??*ºàùS¶¿K>[ÿï5,¹Rù÷’K´Àï——¿ß|~~¾ýærÿË–œO¿BŠ¿3þ[¢†õï(ŠþoR3|뇇*6<œÑÁÃLê¿$迨Ô<´ Òð0“ëŸDÿ?“øßüG )‚‡9¶¸DÇÙt8ÇRÿm€þ‹ê¤®ÙLê¿ Ðs \ˆ‡™\ÿÝÐKüûÿ èÿ£Ê ÿÅ­¬ß·òEs.×ïgÒÿÚàm»>ê3¨ÿ6@ÿÍL3ãYàAè£Ô¿ë¡ÿf&ª¹Í þ[ý7#Û3Èÿëáû¾xÐf0ÿ×·Wx8=Ö’¿”~÷ òßzðߌ\×ü0ýÏ:ôÿ3ÍñÃtöÿëRÕµNü¯þgôsä‡ÙQЦ“ÿ×…blëÂçs†<ëV|xÉ{ÏíʱÄÿ:Ô¿ž…÷ Ž/Ðî¥ÜJ .0–úwôïôËEŽÛ§àY¤íìÇŒ¤ÿ¹ÎC$÷'Þ´ÍÏ/Æ­øFÍÇn{~¨ño¶gmú vƒ6JŒn:ØŽ1¹ ®W±HÖÿDÔÿéVq|ú¿‰ø{@VáùùµÉÿorwø3ì#™ÿ‰Èÿé¾ ‘ôÿkàswcüMcü×"þ‘‰®ùhùomšÂ_vYKþ®wMãü×bþ‘½\ûÓˆÿµÀ¤¯9bûŸµþêúN#ÿ¯ÿO»æèODUTø›Êø¯õÀØ}}>•úg ôÏÔlu]§rþkÀÿÓüÍùSÉklüQÀ‹ÛðoÃÝJÛžÁj_{±vSs™Jþ[Ó ¿QCyS¹þ»&@yQAŽ^ÅTòßo»W1ÝKySÈÿkÀÿÓþ§ÿ«ÿ©ñf¼Š"ø4ì§Pÿ¬†þ™©®ãö?«ÑÿLI6ÆçæÿjäÿTO×ü8…ü·ºŽÂçÏßYò­|Þ_ç¿óŸ’êº^FPÿ%@ÿM‰,R/-FøŒ þIùÁüO@þO p¬—ÓÙžc˱Œâ?¥ ü¡?žó?ù‘'ÇŽ´s^WÇó›Lü'ˆøOfüW!þñ|þ²:Ç ùozAÉïpýU2¾Óì¾<"×NfüW!þ“Eü'3þ«ÿÉwtò¨º8_ö«ÐÿMïdËÛ³—‘?ZAþ¼v_ Ö¿&ÿ«Pÿ'ç(ïeëÿª2*¦×pÌŸIÔ¿+síù3%[­{Mbþ¯DþOõoëßJÔ¿ÉýîåOã^Ô\þL"þWÿ“Åú×$ö?+ÑÿLr²þ5‰úw%ôï$‡õ/Çü™ÈþwÅe•?ÇZYòp½{"ç¿óŸê:&2þ+ÿIæòg"ñ¿B迉Ô+ ÿ&•qÌŸ©ÍTþLdüW þsóGž_8ë_<êßÄD9¶à¿(zŽüõO¼ˆ8ãøO,ªîåΔH•;áÄ<ð~ç¾ÜéÀ1Üÿߟ»©Ø‡³þÅûãsŠNîÔ*z¾¸ÿ5ÞשœÈŸb*æžPs™@ü/ÏÅñcTþLàúÿò •?Srógùo¹Õž?“¢UþL`ÿ³ýO¸èÿ'°ÿ_>À6¿‡—?ˆÿåÀ¸§º†ãyÿÛrwŒiiœ?ãÉÿËÀÿ"]çÏxêŸeq*Ž”°äÏã~—ñœÿ2Ì‚¿ëüÏü_†üŸài.Æÿ˼ÕõÇõeåðïŽù3é¶ÊŸqŒÿRÄ|ŒóüÇþg)úŸñÁæògõÿRÿqŒÿRÄ|ýü™¨ògùo)øo\²~þŒãú÷R/|®¨bÆú·úo\ˆëü cÿ—…sÈ,ÈŸ^' 5\ {þ ¿¹7—0â?Ίã©ü £ÿ®ògRŒcþ„‘ÿâzÙógBw•?aìÿâÚãØBÿ†QÿÆùØæ÷ÀùcØ_Œ%þ—ÿaÂÿËþ úÿ±Nü¯±äÿ%àÿ0þ×Xú_K„ÿup•%ý¯±œÿÌ?ÌÄúçXæÿäÿX“ëŸcˆÿÅÂÿCÿkq&Ž£³þ9Aø_cÿňÿXÿ ù1øŒðÿÇpþ‹ûà³ÉõÏ1ôÿû‚ã|DQBõ3o«¹Œ&þÿcRT1šû_]Sø wwÄçhÖ¿E©v|†%«þb4ùoú¿1Bÿަþ]ý;&àû C|ަþ]ý;Fô¿£Ùÿ.Bÿ;ÚIÿÊúoEým¢ÿ ¥þ±Šþw?úß(ö¿¡œ¿óm¢ÿ eÿkEÿ;ÚdÿÊúoùÊü·"ÿCuúßq¢ÿÅø[ÿPƒþwûßXô¿£Dÿ;Šó…þ 5ÙÿŽbÿ‹þwœìSøœ.úßQä¿Xô?¡¢ÿÅþ7Vô¿ãtúßQ¬±ìLjþw$û¿Xô¡¢ÿÉþg!úŸQÞÿâs$ùo!øo”èF2ÿ"ÿG:éG²þ/DýeÔÿ |Ždÿ»Pô¿éý-ùÓÙÿŽàübþ#S]ãsùød¤9|Ž ÿ-ù?‚ù¿ù?2ÀŸc)|Ž`ü þ#rôñ9‚õêÿˆ–꺎àüÔÁg«9|†pý+&çqSàÓ]ásj’šKù/&¿¢ðÂýÿ1ñ ŸcRñBýjÇç¨! Ÿ!äÿðÿÑÿ„°ÿ‰Aÿ3¢ÌÃÃçpòß|ð_HžºŽÃ™ÿó‘ÿ!^ÆøNý7ú/$Ø5>‡SÿÎSøÜsÐ’?­ÿóŸù‡x»Æçpòÿ|ðÿðGPøÆøÏCü‡ìÿFÿ^ >‹ýŸÃ8ÿyÐÿÃ=Ìásýyà¬NŸ5>#„ÿ1Œü7ýï°…Ï¡ô?æ ÿ#TÇÿJý3—þGH¶ÂçPòÿ\ðÿ0Ñÿeÿ;ýï°~ŸCÉsÁÄÿ1”ù?ù?Ô‰ÿ1”úo.ôßP#ÿCàsýháìjlÉ ÿ1„óÆü‡†ºÆçò4øh 9|!ÿE‹üÂüFþ-ãˆÏÍ>‡0þшÿ}|fÿþwðu]sþs.㻽Ìás0×ÿç$â<>K)|N¤æ2˜ü7'¿ÑZás0ïÿšÓOásDˆ#>SÿÌñ·ãsXK…ÏÁäÿ9àÿ!¢ÿý‰ýïô¿ƒ3Ÿ†ëÁ?‘ÿfƒÿ‹õ¿Ÿ˜ÿ³‘ÿ?9Yÿû‰úo6ôß`ë?±ÿ™-Öÿv,±äOäúßOœÿlÌÿ'ë?’ÿgÿ2¹þ÷#ùo–Èÿ™ÿ³ÿ?é¬ÿ ë?2þ³ÿŸtÖÿŠœóòÿ'O9VìÛëpßùÿ³Dü1þ³ÿ‹ú÷Öö†æ îUÙæ‹U·á׎ÛñÜ_0ˆý_T¦íû⸌âÿcpÁšòk®×õÌóß Î? óÿQðß ò_øoþDþ‹ÿ 2Á™ÿ3ÿ¥€ÿ&ÿ’ÿf‚ÿ™à¿ä¿™à¿A&ùo ùo¦à¿ä¿™à¿A:ü7Dðß@Æ&øo ÿý@þ› þûAðßœÿ ðß@“ü÷ùoF¢­>þ«®ø/LðßÄÿ à à¿È3ÿ Ñá¿È3È? þûù?ù?Pàÿ{âðÿÃóŸ{þ}|~OüOþü÷=ùo:øï{'ü÷=ùo:øï#þ+®ðù=ùoºà¿-«,ùaä¿ï9ÿé˜ÿ÷¹®ýÕ`ò_$øïûÄ"þj)#|“ÿ"ÿ“ÿ"Áß÷sôWŒRï± fü#ÿï[;÷Wƒ™ÿ‘Èÿï=üÕzzþj0ñ)âÿã‰øgèû«ƒòlïWåxêÿiÐÿÁÑâwKˆsäû_¿#þ§ÿÁäXáSwPç÷ç?Mø¿ßÑÿ6ÇÐóKØøCyÔß‘ÿ¦ÿ¾»#~³´X#åù}Ëõiž›)Çr´sÑë÷-õïTáÿ}KþŸ þÿ.Ü`}´4αœò¨¿åþÇ©ÑøNEýõÑo‰ÿ©Àÿ·Á*¾åþ·©Aøœí|}ô[úS}ñû>…ë;Ãj¥æo)úáÿ}Ãþgª¾›¢üéoèÿMþß ÿïâ ý¿àdåOCÿkJŽ-úÿoØÿOAÿÿm€®? Žypýõ û¿)èÿ¾þß7ôÿ¦ÔÀg'þßæòÿþßÖ¿áÿmlgÉ¥ÿ7€óÀü¿éåZ `ü#ÿo|uîI¸§mT¼ÿ#„ÿ7€þ_„>_sÔ_ߣþ÷ãþ¸þŒâÿ»:FÆò5#ÎŒ–q]ú³þOFý ü¯þô¿&‡à³ÿ«?ùo2øo€£ÿµñéþ~•òóë w+Ö*º0FýÉ“½UŒ6,·ääón¾æü'cþýSœÔòÇ×\ÿ™”…ñ:5â>ýù5ý¯Iÿ_ÿ“€ÿþ:û?¾¤êÃ×Ô?“zá³ÿõ5ùoøïká}Íú7 õïë¢þ—áý_Ñÿš˜‡ó¸YpÿÀ,7÷VÑÚNþ;ç?óÿ:Ây½úŠøŸüÝË\½úŠû'Šý¿_‘ÿ&‚ÿ¾öÒ¯WßúÛêÎU³q]ë¹Z~—ñŸý÷UŽAíâ{Ýû1ÿÑÿ_%Þ_»˜ƒ¼©׿ÅþïGýýóU°~Ýú&çXÌÆË­æº•µkÁwÝÜby Î?<Çðq¬eEΗú'¼=Æzȱ:çËõÏp/u¾_Òÿ /‰OÕ9ßÒ6þ°cÿ~†Zb{7}A ù2P‡ëRpœ!ê~/ÿ qê~o’ï÷ø’ù?!Ä~¿Ç׃† .¼ßãKâðß/Hü&ýÿ ø{I35¼à¼šoss³äç¿è𝾠þýÿ¥¸ÿã Öÿñ¨ÿ_:¹ÿã Î<ðÿ¥ãýº|õã?>XñÕšÿ,ùÃø¼§/èÿÄ1˹æ«/ˆÿñÀÿ9®ùª/óœ¸ÿ£/õß8è¿/¢ùêë4ÅW}©ÿÆAÿ}aðüƒ¾ä¿q࿾âù}YÿÆ¡þõÍ3ÇW}YÿÆùÛêƒ#_õåüÇaþ}]ìÿéÃüCþ÷uÜÿ£ËW}¨„þïCýýß×`ÿÏW‘ú|Õ‡ñCþ÷õqÎW}˜ÿaÈÿ¾Îùªó?LäÿçÌÿ0ä½ü_õ»æœ¯>çüǦâ!ÎùêsÖÿ±¨ÿ}óÕçìÇöçËú?õ¿§>_õk©ÏW½EÑ›ýÏXô?Ÿg(¾êÍø¹­ø õïz3ÿÇdÚùªošâ«ÞÄÿàÿsqÿooêÿ1ÐÿŸwûŸøÊPÿö¦þýû¹Ð¿½©Ç@ÿöv¢?ãüGÿ½MèßϨG ý»òKKþÔ¿Ÿ‘ÿFƒÿz›Ð¿Ÿ1ÿG#ÿ{›Ô¿Ÿ1ÿG ýûõïhèßÏtôïп£øüÅ^Ô£¡ÿz ýÛ‹ú7ú÷³Ó¿†ñéEü‡ÿŸ ýÛ‹õ/ú·—ýÛ‹øþ?3±þÛ‹ú/T¬ÿÆ´ääúoOæ(ò¿Wªëøôäúï¨i.>=©G ýÛ“ü? üß+À1>}ÿ~¬w=YÿG¡þ÷õ¿'ëÿ(Ôÿ^%(>†û?%þGÿ=Åú秬#Qÿz:Yÿü”úo$ô_O£õOáßÊõ¿‘býsù‹–ü¸þù)×?GöÁñ¼]ûWŸ2ÿG"ÿ?Í3·?ðâ¤Xÿü„ëŸ#nâ8ñŽõ¾÷ å½|Bþþÿ4ı¾ÊýéŸÿ#€ÿO%ÿ;ÙŸþ ã/׿?¡ÿ;¢ŽSÆxzïå¿|Âú7 Ÿ£ôý— Æ?ññbüCÿOº;÷_‚Èÿ!àÿÞþoA-)Ø80EÍ!ˆûÿBÂqÌöÊw bý V¾Kï0Gß%ˆø °û.=ý•ïDþ ÿ}"î ¢ÿþ Êrµ/Ðu¾ô ÿOÃñÄý=¨†Cÿôprÿcâx¾otÿ£È—ä¿áâþǸҖüoyÿcâ8ðßÃÄý“ÿ†ƒÿz¤šË—Ùÿ÷?~ÌþgúŸ:÷?öŒSùò1÷? ‹ÄØNÎóåcæÿ0äosùò1ý¿a¾âüXÿ‡¡þœmœ/=ƒT¾|Äú7õïã>úùòã?ñÿHÄÿ#Æ(âÿqçùòýß¡¡øý¢ù¡æð÷¿íŽcVTùòëÿP•/=»9æËGÌÿ¡^ö| òTùÒë?CÝ1îŽúÍîìÿ† ÿûÈú¿çKwòßðßG¢þwgý‚úßÝIýïNüAýÿÈÄýOÝYÿ‡ˆúo=oÉïÏúÿ!ñ?øïnâþ§Yÿ£þw7yÿÓ‡¬ÿƒEýÿõ0êwÿ+HÜÿô!ù0êwûŸŠœó0òÿÃ"÷?ï?ÿ€õo°¨°þý„ú÷a¼~ÿÖ#KåÊÌÿŸÿ¶ÔßþõÿOÐÿD©Ø@üÿüèîzÿùìÿBÿÔéÞþóá…÷n|#ž¿÷ãÿS|ÎU9ó>ûŸŸÊ©œ òvÌ™÷‰ÿ/Ûs¦{ŽÊ™÷éý˜c§©ß|ŸõïGÔ¿˜Ý{nûï^þÔÈ?¯Ÿ?ïÿ?ÿˆõï÷éþØŸ¬¿Ïú÷#êßûFëßÅTþtãü‰õïË-ùý¸þÝü7ü÷¾‰ûŸº1ÿ!ÿß/zÿS=£üéFüú§õÏ èŸ÷uîú¨™Z»ëFÿc7>»ð?ºRÿ „þéæèXôò§+õß@át%ÿÿw3ð?ºGªïJþþëÖÒùúbWâ ðß­œÃúâ÷¯/våüåú÷{Äÿ@ôÿ]õÖ?KØøCå÷{Ô?@ÿuí®ŸßïñþÇ’ñ9Iaó=òßV|·†ëü~úï‡`\£…ù=¬íáÃj¦Ûüˆl1ú??´Ç±=T~¿Gý÷ƒÊïîþŽùÝ…üÿCI{~¿ï®ò» ëÿ÷¨ÿï]V¿Ù…úçû,ü=B7¿‘¿NóÛ°>vaÿÿ=ú¿÷Äúgúÿßás´q~w!ÿþï’çº>rþß—Tù=÷”%¿ŸwÈüFýïbußìÿ‚Ñÿu 6WÉÿÁŸ äúwð§c~¿ßMåN õO°?ƺ;Ïï@ò_0ø/0Ë\}ìÌõïïÄúwgú_ßeâ8áúùÝ-QåOgîÿø.ã½ôó§3ŸÿñÝ|¤bß™ü÷êç×ùÓ™ú÷;_\'Çúø©Ðwï2þßAÿtNUùó.ëÿ·7Uþ¼ïá˜?ï’ÿ¿M³çO—•?ïrÿ÷·ñ8vœøMêÿo¡ÿ;wz¸õñ]âÿ[࿳ðÿÞ¥þÿúÿ]'þß;äÿoÀÿïù¢>¾Ãù#ü¿Ù±–üÏèÿ½Cÿï›8¯—ëüy‡ùÿ òÿ]_sõñâÿáÿ½Cþûýï;×ó罊ª>v¢þûÆcSœçO'êßпïDš«Èÿ„þíDý;ú÷ýüé¬r¼ùoøï/çõ±ñ?øïtÓu}ìÈùú·#ñßú·“žþ-aã•ß©ûCÿv2п©ûCÿvú·#ù¯?ôo'ú·#ëÔÿ.ëc±¾Ñ‘ú·?ôoG¡ßfýï/ôoýû6ùÿkêßw„þ}›ú÷kèߎBÿ¾Mýû5ôoG}ýëª>îÿ|›ú÷kèߎBÿ¾Mýû5ôïÛNôïÛäÿ¯Áÿo›Øÿùçÿ•п3ŽXò?¡þ}‹ùÿôïÛ&ö¾EýûôïÛ&÷¾EþÿJèß·¨¿‚þ}[gÿç»bÿç[Ô_Aÿ¾e°ÿ3€ýÿWèÿÄþÏοêÿ[&÷0þýmõ¡`ÿçðÂ}Ÿƨ9ÐÿëŽc·Wû>¨ÿú ÿï]ÿ/€þ_?úýÕ¾Ïò_?ðß[Âÿ `üû!þY®ö}ºÖkÿ/ÿáÿt þÿú¿ƒÿ¯ý¿/Ãð}þ_âÿKáÿE¶³äLÿ¯ëß—¨LøÖÿ/Qÿ;˜ôÿ,Ô¿_ÿÏBþûü×AÇÿë(ü? ëÿ¨ÿtü¿"çGÿï‹>ëmN¯YÈÿ_ÿÏÂúÿê¿%[¿ÞtôP|þ&ù¿/øßÒOŸÏß$ÿõÿ½™¦bÿ&ñßø·ø¸æó7Éÿ}Áÿïóÿº Psx“þ_ßî8®ðÿÞdýï+ü¿Ž:þß›ôÿúÒÿ þ_{æ_äÿ›B¶gþ÷Aþ¿iÞÿ3äïöä¿>à¿7…ÿמýoô¿íøí‰ÿ>àÿ7M¬ÿµgýë#ü¿ˆþ–üéÿµ#þûÿíMÜÿÙŽúçsèŸö&ïÿlGýó¹Ð?í¨>‡þi¯sÿg€¸ÿ³ùÿsèÿvûßÚ±þ}Žú×NìkÇùŽúßÎäýŸopÿKï<œGÁýŸvîþÆìzgÚæ§¸û ö½“2±øçß;ÂŽÅ7Ãw¿Aþïþ¿ÀÿÄoà¿]Ňóüð×ÿÞˆ;uÝ^gþ†ü£1_'ÿþ#Ô5_'þ?‹Rxœ=ñ>ßwô:õÿgÐÿoøºÆãëô?>kñæðèÏýߟyªkëÏüÿ ùÿz²#ß¼¬ðèOþï•…±ôñèÏú× õÏ?^]WοòÿuOsxô'þ{ÿ– …Ç¿ûÿ½ZÛæ§ðèOü÷ª£ðhiéˆÇ¶œ/w;߸­ðØ–ýÏ\/Gýf[òOð¿ØÃÁc[Æ¿'âï/üŸ¶ìz¢ÿiëÄÿiËúßõ¿­‘ÿ#ðøñßSø?ÚZòߣÿóùÿSð[«k<¾Æüÿ4 ãƒÍáñ5Ö¿O…ÿóýŸOà8 ñØ®›Âãk¬ŸúãsŠ>_cýÿõÿ5/u]ÛpþŸ"ÿ_ 5‡Ç6Äÿ'À»L…Ç@ÁmˆÿOlóSxlCü¥ðØ.Þm8ÿOØñèßGá± û¿OÐÿ½&žÿ݆Ïÿþ¤%>ß~ <êÛÖŒâßFìÿlMþÿ·q²ÿ³5ý 8Œ3zþ·Ð·­‰ÿ ñüïq¨×|þwkÖÿ Ôÿ6ž®õmkæê_ë\sú¶ë_±ÿ³ýï98ŽÎþOÿ4¥o[Qÿõ€þk=À¹¾mEýßú¿µ¿9}ÛŠñï!ö·"ÿõÿµº£¯oý½•¾}•ýr®¯o_¥ÿýñ5|¾¬bÿ*ñÿ1ðߪ“k}û*õÏÇVœCLA¾hÛw"í{Û…«y¼Êø þkå«4î«ä¿ƒTÞø;æÍ«ä¿›Ùó¦Ò¸¯Rÿ~ì…c‹ç¼BÿçcŒIù?ù‘†ùó ñÿðÿªU]ÃW¨>‚þ{%Ã8^aÿóúŸW½]çÏ+œÿGÍTþŒñ³äwâû_aÿûúßW²\çOKæwäÿ+VsùÓ’øïž¨®qKúßÝcpœîŽùÓ&LåOKê¿îЯø8ÏŸ–Ô?Ý¡^ñ0—?-¨º ýÓ‚õ¿;ôOËdýüi«ò§ùïCð_ËýüiAÿûÃx|ŽS±oÁþ÷Cô¿-˹ΟÔ?Bÿ´ *Úú þoAþÿüßâ¶Êô>ôV¹Ó¦™cî4çû??¸cÏWòTî4'ÿ}þk!ÖßšSÿ~ýÛ"ôï›3ÿ?@þ·ú§9óÿèŸæNôOsâÿèŸæ&ôÏˬÿý3úç-ꟗ‰ÿ÷ÿæ&ôÏËÔ?ïCÿ47©^¦þy_蟗Yÿ߇þi®£^úçeêŸ÷¡^6Ð?/Sÿ¼ýó²Ð?Í8ÿ÷¡^6©š‘ÿ»ÿ_Í,êïˆçË7#þ»ÿ/÷Q¨ñß-RáñÕ8G<6ãþ÷nýìxlÑKi fô?»u±Äo2þÝÿfyÿ»¿çÇøwEü› ýãÇüïŠüoæDÿø‘ÿ»‚ÿ›™Ð?~ÄW¡BFYò;PÿøQÿt…þifBÿøQÿt…þñ3©^¢þyO蟗˜ÿï!ÿýtôO ¡^"ÿ¿ýãçBÿ¼DýóôŸIýóõÏ{Bÿ¼DýóôÏKú§…Ð?M©ÞƒþyÉ@ÿ4¥þéýÓT蟦Äàÿ%ú§)õOèŸ1Eù»ýM5‡¦\ÿí2Çm¦ø»)ù¿K/•/-9æKSò—–ö|iæ«ø»)ó¿ òÿ%±>äËüï‚üošú¿ïïó%ÿ‚ÿšŠçø²þ¢þû:yþ/ñþojâù/¾¬ÿ¶ç³çËЖüv|þ/ñüûšxþÁ‹\ÿí|ãÍåË‹ÜÿÓYô/²ÿëŒþÏWçùÍ¢T¾¼Hþïб.žð"ó¿3òß×ñùºùò"ëg±ÿçâ¿3ðÿ¢ÁóüÄþŸ˜ÿï"ÿ_4Øÿó÷ÿ¼›ŒÏbÿÏ Äÿ»Àÿ‹&öÿ¼@ý÷.ô_³úÏ7oÙLÌ…õï]Ô¿ÝUÞ¼À÷_¼Û@åM³ÖŽyÓ„úÿ]{ÞøÞQyÓ„üÿøÿ±ÿ£ ùÿLÛüÞó™›ÿïÿ/ýÓ„úçèŸ&NôOÖ¿wPÿš˜ØÿãÃü§¤ÊŸŸê[òý©|8ÿN˜û|˜ÿÿMLîÿñ!þ; ýãCýÓ ú§‰ÎþŸ¦bÿãß ñoâbÿûŸNè|LîÿiLÿ¯£ˆcÆ¿#âïc°ÿÇWìÿiLþëþó1ØÿÓ˜üßüßXìÿiLþïýߨÄþŸÆ\ÿêè‹ëä£ÿ|ófâùˆÿŽè‹ç_4bý{[<ÿ¢©Îó/‘ÿÞæó/šˆç_4¢þyú§±XÿhÄþ÷íÛü^þ4"þßþ‹ý?XÿÞFýkädÿOCòÿ[àÿFFûDþ4dÿóVšÊŸnYòÛpÿOCÎÿ-Ì¿‘‰ý? ™ÿo!ÿùšËŸ†Äÿ[bÿOC®¿åƒÏ:û^¨¨ò§ãÿâßÐÅþŸ\ÿ 8±Žûtó§ù?@Ä¿ã€ø74ØÿÓ$XåOò_ø¯A¶~þ4 þ @ÿÛ ™Š}Ö¿o|Žq?õ©;äánÞ÷|óúöüi*žZŸøïŠã‡¨ü©Ïþ§ƒxþiçŸÖ'ÿuàóO QùSŸþO‡>8¶ØÿQŸýO‡N¶ù=¼ü©Gü[€ÿúâþ¯z¬ÿÔÿúNîÿ«Gþ·€ÿ뛸ÿ¯õ¿%LåÏwk-ù¯òþ¿zœ¿ó¯oâþ¿zÌ ò¿žÉûÿêÿ±ÿ«.×ÿÞ¼‰ãèÜÿ×HÜÿW—ññ¯§sÿŸ<¿ºôÿßŒÂØ@sùS—üÿ¦ˆ]ÆÿMÄ¿^ýüiä«ò§.ùïMð_Ýhýü©Cÿ§ý|¾­b_‡õ¯}.¾ä:ê°ÿkþ¯QÂ}ùSÇž?/ˆç¿Õ!þÛCÿÖm­ò§ûÿöâùotžÿV‡üמÏ«ßRåOêÿöÐÿu…þ­MýÛ¾œm~/jÿí€ÿ:¢ÿ©Íúßõ¿¶“þ§6ù¿ø¿Ž‰þ§6ûŸv¢ÿ0Ø’ßœýOmοæ_ÛDÿó<óÿ äm“ýÏóÄÿ¢ÿyžýÏèjëô?õEÿó<ãÿâ_ÛEÿó<ûŸ7ÐÿÔ6Ùÿ¿ˆµä7åû_žåüÛ`þ5M¼ÿåYö¿mÐÿ>kòý/5Xÿ[‹ü¯ÁüoüVçý/ω÷¿Ô`ü[#þϼÿ¥÷ÿµÁgñþ—œkè¿&ßÿRƒýokô¿ÏË÷¿4Pø¬+úßêä¿Öèjˆ÷¿TgÿÛJô¿Ïëô¿ÕYÿZ±ÿ­)ÞÿRý_+ô5DÿSýO+ô?5âû_ª“ÿZÿjˆþ·:ó¿ò¿º“þ·ëÿ«¨ÿÕM<ÿ¦ûßWEÿÛ§¸%ÿö¿Õ8ÿW1ÿê&ÞÿRüÿ*ø¿ºÉ÷¿T#ÿ½*ò¿óÿUä5÷¿Ôï©Êø¿ŠøW3xÿKUÖÿWPÿ«Š÷¿Tåü_IÃwM¾ÿ¥*׿^‰ÄyÈ÷¿ÔVø¬-ÞÿR•ü÷J/ü†xÿKUîE¼ÿ¥–Îû_ªRÿ¼Â÷¿Ôïñ"ÿ¿þ¯&ú/ö?-ÑÿT}ˆïñ"ÿµÿUû½˜ÿ-‘ÿ^NöÿzQÿµ„þ«jbÿ¯õoË: ŸŸõ´ä7æþß*œKÌßËÄþß*äÿà/“û«ÿZˆü¯Âüoü÷ÒÙÿ[Cìÿ­Âø·@ü«ìÿ­Âõ¯­ñYìÿ­Âù·€þ¯brÿoeúÍóp7õ߯á-üÊä¿æè«ˆ÷¿T¦ÿÑ\ø5tüÊÔ?ÍéTï©Lþoþ¯"úßÊ웣ÿ­òàï1ìß*‘ÿ^ÿUþG%æÿËÈÿÊNüJÔ/CÿU6áT¢ÿñ²ð?>ÝcÉoHÿ£çÿ2æ_Ù„ÿQ‰üÿ2ø¿’Iÿ£"ùïe‘ÿ™ÿÍÿ•tüªÂÿ¨Èø7Cü+¹ð?*2ÿ›!ÿ+™ô?*ÿÍDü+2þÍÿJþGUáTdýk†úWÑÀÿ¨@ÿÃï> ÿ£õ_.¾kÂÿ¨@ÿÃ/ÑV„ÿþ¸òߟþGâßýoEáT ÿá'üª:þGÖ??ú•…ÿQùï‡ü¯(úßgØÿú•³Íïû7Ãç»=Cü¿üWþÇ3ô?^ŠÁg'þÇ3¬ÿ/¡þW0áÅù¿pß5yÿçSä¿Àåû?ê)ýà%øï)âÿ࿼xÿÇSä¿ÿUÔá¿§È/ÿžïÿxŠùÿò¿¼Àÿ“Äÿ ÀÿSþþC|>Iü7þŸü÷$ù¯ øïI'ü÷$ù¯ øï)#þø|’ü×Dðߣ,ùÞä¿'9ÿ&˜ÿ“¹®ñYŽüçþ{2Ñ>Ë‘ÿ|ÿ•#ÿù€ÿžìçˆÏ§ÿ•cü}ÿ'ÝõñYŽþŸO>wW×µçïÓŸSÍá³,÷ÿúxÚêƒÀg5…ÏJâýßeYÿ£þ—‹Qø,Ëû‹÷?­óþï²Ôÿùþï§¢>ËRÿ5ñ…ÿW–þ_ãø{ƒ‡‡Ï²ä¿Æà¿râýßO0ÿ#ÿË:yÿ÷ì¡ÿ)kôþoÏ'Øÿ7ŠSøìzÞ’_“ïÿ~‚óo„ù—õwÏ'ÈÿÀÿe=Íáó ò_#‘ÿ3ÿ!ÿŸÈpÄçS·>gü"þOéãóqú Sð9Y]×Ç9ÿ†qø®·9|>Nÿ¿a08k€ÀgU…Ï Âÿœü×пá®ðù8ýÿ†Âÿ/¯ãÿ—¡þoHÿ¿ì…Ï2äÿàÿÇ…ÿW†õ¿êÿãáŸeÈ À ÿ¿ ó¿ò¿Œÿ¿ ûŸèʘðÿK³ÿo üÿ.m-ùÕéÿ—æüëcþeLøÿ¥ÉÿõÁÿeLúÿ¥ÉõEþ—fþ×Gþ—ÑñÿË ÿ¿4ã_ñ/màÿ—fÿSýOiáÿ—âüë—ÄßMúÿ¥èÿ×ËÂyHÿßKáÓSøÿ¥Èõ¬ø áÿ—¢ÿ_OøÿåtüÿRÔ?õèÿ?.üÿRäÿzàÿÒÂÿ+Eÿ¯ž>?Dÿÿ1ò_]ð_)áÿ?Æü¯‹ü̉ÿÿõ_]è¿R&üÿÇØÿ×þÿ»±–üªôÿãüëbþ¥Løÿ‘ÿë‚ÿ3éÿ—$ÿÕù_’ù_ùÿ˜Žÿÿ¸ðÿK2þuÿÇ üÿ’ôÿê„à³ðÿKrþuúà³Iÿ¿$ýÿ:¾àCéÿWQø|Røÿ%Èu<ð]áÿ— ÿ_[øÿOèøÿ%¨jÓÿ/%üÿäÿÚàÿ’Âÿ+Aÿ¯vþþýÿä¿Úà¿’Âÿ/Áü¯ü/áÄÿ”úïyè¿&üÿGÙÿù¿øßÍœÿ©å“ÿª©ü×ò™ÿÕÿn:þgqåjùŒ5o|Ö÷?µ»ô?ª¹ã³ò?µ»œÕËø®9ÿS»Kÿ³j"ÎCúŸ>K(ÿS»Kþ«ŠßPþ§v—þgUáwô?µ»Ô?Uéº+ÿS»Kþ¯ZÇVþ‡v‡þGÕróðüOíùÏ+ ÇUþ§v‡ùïƒÏÆþ§v‡úÏk¾ïÚÿÔî°ÿñþçë£,ùe/óß9/ÌÿŽkÿSûü_å6Æ›ó?µÿÈUTþkÿ1ÿ«$à8:þ§»ò?µÿÿ*ˆÿ}ÿSûþG• |Vþ§öç_¥=>›ó?µéVñçJÿó…Oåjÿ’ÿ*çâ7”ÿ©ýKÿ³²ð?ÝýOí_êŸÊvÿù¡ðù/ù¿rŽ*~“þGåøûÃó?µÉ•+â¸ÊÿÔþaþWFþÿkìjÿPÿU:q®ýOíö?•„ÿùÚyKþãíùïœ%Ìÿ_×þ§öù¿R7Œ7çjÿÿ*‰ü¿Íü¯„üÿÇÑÿÔî*ÿS»ÍøWDüÿÑ÷?µÛô?*¦à³ò?µÛœÅ8|לÿ©Ý¦ÿY1œ%ýϧ>‹5s!ÿUôÇo(ÿS»Mÿ³¢ò?Á¯Žøü›ú§¢ÝÿD~(|þMþ¯þ¿­üíoú2ñ÷‡çj“ÿ*€ÿn+ÿSû›ù_ùÿ·±ÿ©ýMýW¡>»ö?µ¿ØÿTþgë¶–üRqüwÎÿÌÿo×þ§öùÿðÿßæüOí/òß3"ÿÿbþ?ƒüÿÛÑÿÔþSþ§öãÿ âÿ—¾ÿ©ýEÿã™ø¬üOíOÎÿ™’ø»9ÿSû“þçÓY8éz*|º)ÿSû“ü÷´¿¡üOíOúŸO+ÿüêˆÏ?©ž¶ûŸÈ…Ï?ÉÿOƒÿÿò¿Iÿãi|~pÿÓh‡–Gþóÿý©üO-ùï‰üÏ3ö?µ<ê?Ï(|ßÈÿTû;´<ö?žÂÿ|eŽ%¿dIþ;çï‰ùÿéár‡–Gþ÷ÿçe™Úß¡Ý"ÿ•ù‹ù_ùŸWÔÿ´íïÐn+ÿS»Åø—Güó‚œîïÐn1ÿË#ÿó|MíïÐnÿåEüo1þåÿ[Eý¯ÂýàGîï¨~o‡v'Çþý?Øÿ=uÓö}uÜ?ÿ§ÿ[‘}‡öçÿæKðßä¿§À8á¿?ÈOÿþ0Á¿3ÿŸü×ü÷ùïwòß“à¿?Lðßïä¿'Á˜ä¿ßÉO þûü÷$øïþûKðßïŒÿ“à¿ß øïwòß“à¿ßÿÝäüŸÿýn’ÿn’ÿÊeÙêƒà¿ê÷øOûWðßMâ¿ðÿ»à¿›ä¿r‚ÿþÒá¿›ä¿rä¿[‚ÿn2ÿË!ÿø¿Iü—þo>8ÿ½[»Aü—þo þ»Aþ+ þ»á„ÿnÿÊ‚ÿnñ_q…Ï俲‚ÿšm³ä'ÿÝàüËbþ7=\îÕnÿÊ‚ÿndÙZÊŸ×ÉOþ»Nþ{üw£(ÿÙö‡‚ï½[»Îø?øßrº?T»ÎüùÃ×a¨Þû§µëÄÿ"þ×ÿ'ÿëEù¯p¨vËóÞ;0´ß¨ÿŸ€þ¿ž,~×ñýÚoÄÿãÀÿõ9Vì³Uï—Ð~ãüWþ¯öýßÇ#p ½ûßKØøãÞ[í7òßãà¿ëòý¥Å; Ïë_ûâ³|ÿEi¾3±sÑëwú÷qåÿi×ÈÿeÀÿ¿Å¼/±4ÎÑçÞ[íï,“Œï4»‡Úq ñ_ø¿¦üíýÿ2!ø|G‡‡ª‹ó¥ÿW&¿ß©p­í×ÃüÛßu­ýUQÌ…ýOo|ι·¿V»Jÿ¯Œòÿlõîÿ¥íþŸv=ûÞþZí*ý¯Òi8¶èÿ¯²ÿ/þÿZ?Ýýµ÷½ëºÿíO×®²ÿ+þïšòÿ´«ôÿJ·ÆgcÿO»Êü/ü¿jäÿ ýu…õ¯”ðÿ|»ZîæÓÿ»Âù—Âü¯º~ÿ›v…ñ/…ø_-úþ7£ýéÚò)áÿ]¡ÿWªŽãøþ7íF3•;WÿRˆÿ÷¿‰÷j¿Òÿyì6Æyÿ›áûFµ_éÿ<&âÿ+ãÿ⥟áûFµë7UþüÊç¿<6ŸoëçϯŒÿcˆÿ¯"þ¿2þ!þ¿&;ÏŸËôóÄu*çð~(íÏ!j—ÿ’Ð?¿ZUî\&ÿ—ÌT¹s=×1w.³ÿ/gÏ«1*w.³þ— DZÃÄo²ÿ/‰þÿWŸ‡ú~(í2ñ_øÿUø?—Èÿ%Áÿ—ø?—XÿK þ_6òÔû¡´Kœ áÿø|i¹ûýŸKôJ„áxþ®óçã_ñ¿ìY$ŒÞ¥]"þKÿç"ýŸåðïŽùsõ¶ªÉæblŒóú}‘ú÷QèßKÁõ[ïýPÚEêßG…þ½Hýû(ôï¥úõûj Êñ‹Äÿ£ÀÿÅ;Îë÷âÿQàÿb¦Cý¾ÿýPÚÎÿ¡.ÿ@ÿ\Ô{þS ¨Ü¾@ÿû‘Œ×þ“vùÿòÿ‚zþ“vü÷H/|výü'íëÿ#¨ÿWï½ÿíÞû¡´ß£Õ×Èîÿô¾}[|ÇÀaÞ釞ÛdãÆ@1Ÿ’üôßÉlÅ?3ÿÿ-©¸1ÇË‘&ÿý“cçÆìŠŽç¿¥âØ)ê7ŽäßÁÿ'û€ûßÏÁƒzïã1æÇŸ[ó˜èÿNŠþÿç:ü;úŸŸø??3ÿÿAþÿläÿ~Ð?žàw„ÿs¢ÿÖ ÇÑñ~i¦øñDŽõÆgÿGžßq»þÓþ†þ;‘hŽ3þ ÿçxÿ–€ãôÓçÇìHÅÇûp|Æ·tÎljÿ¿ÿå\óãqÎÿoÑÿ»Í¿Aÿ×{þøñTžâÇcÄÿ_¨ÿÇ£óã±hŽMÄØ®ùñóÿ/Qÿޱþý…úw\¯ÿ?žýÿ1âÿ/àÿØçüxôÇ¢ÿ?–éš²þý)êßQÖ¿?QÿŽéÕ?ðãIÑÿeýûõï˜Aÿ´Ç ÿ?*úÿ£ÄÿŸÐGMôÿGÉÿÚøßǘ/ }žÅú÷'êßÑdÅYÌÿ¼ËŠOÞqäÇ,ò^Š')~Ìbý˳âØ1â7ƒù÷pü½ýƒð£ñþ„,ê¿<è¿£¢ÿÏ"ÿçÿ³œôÿG˜ÿ·ÿY®Ÿÿ¬!ÿÝý¿WuËÝKìÿDðßÑÿeõr½?áõï-èß,_sûŽPÿÜúçõÏ-èŸ#EõOÁþ„¢ÿ?Ìú ýÿ‘çûÛýOíinÂaÆÿ¡Sÿüýs¤¨þ¹·?áxðàž|·žv•~éaÖ¿?PÿŽˆú~˜ùÿòÿð³û\ãéñÿ;ôÿaõþíóÿwäÿaã÷¿h‡ÿßÿîßÿ¢bü¤ðTyŽåî…ŠüwÎÿwÌÿ°§k<*Çñuð9מ2í÷h7Õû_´LòÿMðÿ¡hG<MSxÊ$ÿßÿàO™86 cýÍá)“õ麗&ãñϼ£§£Þ O¿t³ï õßÍ’ø}¡RÿÞ€þÍŒxx:Hýsú'S¬dý¿úÐøþ'í ãñÏ4ºÿIàé ãCÜÿTñ åî9ûýOÚÎÿæ0Õ5ž0ÿ¯#ÿFšÃÓæÿu‘ÿ˜ÿבÿñtDÝÿ¤`ý»Žúw°†s< ÿ_ÿÈ3‡§ýä¿ë"þûÿßÿñúx:œ¥ðt‘×s?ûÿßÐÿõu?ëÿo¨ÿº?<<í÷áqÛã¸þ OûÉÿ¿ÿ÷÷3ÆSãÿâ¿?Õ5ž2ÿk'žžk¹›3ˆÿÎù_Ãü÷»ÆSóÿò¿¿9òÿUð†Õžö‘ÿ®Šøïcü¯"þÝõñ”ªðt‚~í¾Nü^|Oô?ûØÿ\Eÿ“Qæñd¸>šNýsúgŸºÿMK'ÿ_ÿï3¾ÿMKgü¯ þûŒîë£éŒÿqÿ›g+ËÝÓuøïœÿÌŸëçßiéÌÿ+Èÿô¢Ï¿3\ÝËü¿"ò/óÿWäºãóï´'To´—ý߯èÿÓuž'÷ì%ÿÿ þO/òü»‘íöì%ÿý*â¿—ñÿñO/c¼¿à@„ê‘özð;^ó{M·Çll›Æù_¾Y0¿×ÜôÖH¹'!ó¿,úß4ö¿—ÑÿîÕëÑ_ðTýQëßeÔ¿´;úýQš?ÇtÇçn ›iÔ¿—ýñ9Åu´‡ùù œãúhŽØÿ°‡ù ùŸ&ö?ì¡þ»$ö?ì×Ùÿ°‡úï÷?¤‹ý{Øÿ\Bÿ“&ö?ì¡ÿy)×ßÿàj}Ô0¿÷Ðÿ¹TÇûv³ÿ»„þo“ý»ÉÿQÿ÷˜Øÿ°›ó¿(ö?”l¹{’z~7óÿ"ø‰ý»©.Bÿì1¹ÿa7ý‹ÂÿØEÿãb9ü»Îþ‡t±ÿaûÿ ¹«³ÿAæ÷.òßðßî`sù½‹þÇáì¢ÿqaŽÓÀ8¿ÓT~ïòæwZÌÏi~§rþÊÌÏi~§rþ¹ÂÿH%þsÑÿì2Øÿ®ž¿©¥²þå¢þí2ð?RéäÁgᤒÿr¡ÿRMø©ô?r}q:û2ï¨yì¤þÉ…þIûv’ÿ΋ýé:ûv²ÿ?Ïý»Åþ‡ôÏÇãØbÿÃÎ!ü{$þþÚÿ`ìïdý;ú—*üô?Î×Àg'þÇÖÿs¨ÿ;üáïàüÏ ÿ£L[ËÝcô?v0ÿÏ¡ÿÝéúýWÚö¿ça|‘÷_ûÃ;Èÿç„ÿ±ƒú÷ôïÇ÷_i{**x;ëÿ9Œuþþ+m;ùï,øo‡ãû¯týáíìΊþg;ûŸ³èvè¿ÿ ü¡üáí\ÿ9„ñ^¹Ms;ñøß~Ó!·üáÎÿ¬Ð?)Äêÿv½õä÷®,Å‘)ôÿrR0~ˆs8…øÏþ·wrí§0ÿs„þI¡þÉþÙ®÷üßÒ8?_Å)ÄðŸ’íÜÞFÿãLÆ&¸ö‡·QÿœúgõÏèŸ=ýSù©øqõÏèŸmúgõÏèŸmBÿl#þÏ@ÿl3¡¶RÿœþÙUÎØÞ©æ³•úÿ4ôÿ¶hÅ“[™ÿ§ÓO¦f;òäVòÿé;OnR<¹•õït(Ž"~3×y Øp?ÎVêŸÓÐ?Û„þÙBýsúg«ý³…ùÿ ò«‘þýòòß/Bÿ”˜i¹{ˆúg õÏ/Ð?[MèŸ-Ô?¿@ÿl-ª ÷ãl¡þùEèŸdÖÿ_Pÿ·èèŸí·Uî$³þgCÿlq¡’©²¡¶Õ?†û§“ÿl¡’©²¡¶8Ñ?ÛT%SÿdCÿ$'éïŸNfü³ÿdÿÍŒ6âŸ<ÄùþéÍ\ÿ?•…ßÏ,º'£µšÃfÖÿS¨ÿÉ}TÎl&ÿRï?×¶;¾ÿ\ÛLüŸ²¿ÿ\ÛÚKåÌfòß)ð_r€øMÖÿS¨ÿ›óÌîÇ1ΗMìN¢ÿÙ,üïMÔ'¡ÿ6;ñ¿7ÿ'Qÿ7›ð¿7±þŸþ·Ç@ËÝô¿7ÿ'ÿͮ߮m¢ÿy²>›{ÿ¹¶‘üÿ³ð¿7’ÿ~ÿmr|ÿ9øQåËFú??'b¬ÎûÏe¾ldþÿŒüßäo._6ÒÿúYø_éýÜŸïçËÖ•/IyüN|'L?_’ÿˆ’ˆãñßà<_’¨NXñûEß®íõQsH¢þ?ý¿Q½ÿ\Kbý?¡Þ®mu|ÿ¹–Äü?aÿ¹¶Y½ÿ\Kbý?ú¿Q½ÿ\Û@ýú?ÉüûÏ ÷o ÿÿ%‰çŸl`ý;Žþgƒ“çŸl þCÿ&™xþÉú¿ÇÅóO´®–»é|þÉâÿ8ð¿Áàù'x¬m¿žúÿôÿ†{Ï?V€Ebb=ùïX–ºŽë©ÿŽAÿm‿‚=ÇÉʃ]Oý{ úwC}½³žüw õ}u-×ÿÇñ9ÓµÞYÏúwÌçP£ë>qþëÈÿÇÜmóS{×ÿGÅú÷fõïuœÿQ®'%©½Æëˆÿ£Àÿz±þ½ŽþÏÑpü½½™{T]ãoùÿ(ø½èÿÖÿGÿuNú¿DÆ? ñ_gbÿ{"õ_–èÿî–µÜMcÿ—HþÏÿ¯3±ÿ=‘øÏþ×™ÜÿžHý›%ú¿DöYèÿuö¿oëßkÙÿd¡ÿK4Øÿ¾–üü¿Vì_ËùIÃwMî_ËúýÏÆ…ÇÂ_YKýsd€m~ kYÿŽtSxÜØÏk9ÿ#>v<®¯£ð¸†úÿôb9õ›k¸ÿ÷ð|?éáàq ãñ_+ö¿¯aþFþ¯q²ÿ} ýÿÃ}ð}£ýïkˆÿÃbÿû¿ßYîîâzÊê¿ÃÐk²\ãq5óÿêß«9<®fý?$ÖV“ÿÿ×twÄãú0…ÇÕôãóM}<®¦þ;ý·:@]×Õœÿ!äÿêDsxL þÿÜÓÅù'ÿ™9¶ù)<&ÿ™¢ÿ[¯Óÿ%pþ™ìÿÖF)<&Pÿg¢ÿ[-ú¿ò&øu£ázi㟉ø¯úù?üŸà¤ÿ[Åþï ú¿ýß*âÿ èÿþÙf¹»“ýß*꿃Ð þ®×KW1ÿBÿ&xš[/]ÅúwPô+ÙÿDÿ·*Ãq½t­xþÓJöÐÿ­Šq¾^º’úçôϪ`së¥+ÿ¢ÿ[Iþ;þ[Õ@½tm Z/ÝÃõ÷•Äÿà•¯8ëßÔ¿•Ùoý}ñ¿ü¿2UáiýŸý ø|ÍO+ÿýˆÿJ×xZÁøïï¦ðô7ú£”ÛüwÎ?æ¿"Ï5žâ©÷Cÿ®H5‡§xê¿ ¡Ÿâ©2 ÿV qÄÓê8…§xÖ¿ Ô¿œã)žüŸþ_ámOñô?3Düãÿ Ä?>[O«=žvqÐròÿ>ð¼¨ÏËÙÿìCÿþÀx2ì·—Sÿìƒþ‰÷¿,§ÿ»/ŸÜÿ²œñ߇ø/7ºÿEàiã¿OÜÿòç‹–»[yÿË2Î?ó_nâþ—eÌÿtäÿò"÷¿÷Û˘ÿé"ÿ—1ÿÓ‘ÿËuîYÕMõÛ˨ÿÒý1ÖÅý/ËÈÿéàÿeŽ÷¿èÞ/¶”ü·WÄ)ã¿ñ_fpÿËJ±ÿw)ëß^Ôÿeë_KÙÿîEÿ»T¬-eÿ»·>›XÿZJüïõÅuò)ÚoïþTûÿ½èÿ—¦©~;ŽþGZžªé«J:Öô¸DŽË°×ô婪ߎ#ÿ¥ÿ–Æ‹ßäþ‡´(ü=Ðt¿mÈ¿qìÓÚãxbÿSõoôœ“ýOKˆÿ4ð_œ‰ýOKXÿ÷ˆýO ßÙÌýOKˆÿ=Àœ‰ýOKÈÿ{Àÿq&÷?-aÿ»Gø?KèÿìiÏ:ûŸâÅþ§ÅÔÿ{ ÿ—¸Øÿ´˜ù¿ù¿Ääþ§ÅÔ¿»…~\Lüïþ—ìZ.ö?m£ß·˜ü¿ü¿D¬ÿ,¦þÝ ý»äÁ÷?âiûß]è‹ýO‹¨wAÿ.v²ÿiã¿ ñ_ìúýŸÚ"Æ—Øÿtúp#÷?-âüwaþ‹½]ãiùøQž9õï6èߘŽükÏœOý» ú7ÆÝ9ÿÎgþoCþÏÏ2Ç¿ó¨· ý;øß üÏ×çߨDÅ¿ëéÏ#ÿoÿÏû æqÿÃÖü½åëçó¸þ±µŽë­ð4—þÇÖr`Œ§¹ŒÿÄžÕµÿ8—ñß’¤ðtá–åîjö“s9ÿ-˜ÿ¼@×xšKþßþŸç-ñt¬T¼æRÿoýï\ö¿[ÐÿÎÍvÄÓBèßÄ^ö±ÑÔÿÉy{S#:•ÏÆß£ÌÄÈu|¢©’¡熪øDÿÉÀt¼q|¢ÉÿÉàÿ¹®ó=šøO®¨âsñsËÝUIöŸCý·ú/:Ñu|æÿ6ƒÿ¢CÍåûòÿfÿ9Äÿfà?º¥c|bú¨|ŸCý¿9cË9Ï÷9ÄÿfàN®¹|ŸÍøoëß³Éÿ›Àÿs¢õó}~ªÊ÷Õô£fSÿl‚þ™#ö¿Í¦þÙý3'àóÝp½a6ùøŽXÿšMüoþg;YÿšÅøoDüg›XÿšÅøoë_çŠ[î® ßÍâü7bþ³M¬ÍbýÛˆú7Ûäú×,òÿF±þ5‹ýïFô¿³tÖ¿æ‰õ¯(êÿk°þÅø'!þQbý+ŠóOþg™\ÿŠ"þ“ æ‰õ¯åBßG1ÿ“Øæ§Ö¢è&‰õ¯y:ë_Qœ׿æˆõ¯™ÔIèg‰õ¯™Ô?îàû¶þe¨ÿg2þÿ(¡ÿgÿ€ÿ™NôÿLòÿð” ý?“øß ôÿÙÉ–»Ë¨ÿg’ÿ6 þÏ4¡ÿg°þ­Gý›iRÿÏ þ_/ôÿ êÿõÐÿ3uôÿ¡ÿgPÿ¯‡þŸéBÿÏ ÿ¯ÿÏ4©ÿ§3þë…þŸNý¿ú†þŸ-ôÿtêŸuÐ?3 ôÿtêÿuÐÿÓ…þŸNü¯þg˜ÐÿÓ©ÿ×AÿϹOÿ¯Ks þ_ý?]èÿéÔÿë„þŸ££ÿ#‰ÿDêÿ™BÿG2ÿ‘ÿÓ…þdþ'"ÿ§›×ÿ†üIþKÿMú?’ú?ú?Ò‰þ$þÁÿ‘&žÿ>ú?QèÿÓÐK¨ÿ§ÿkÿHÏŸFý·ú?Òäóß§Qÿ¯úùo-ø/RçùïQBÿO#ÿ¯…þŸfðü÷i¬kQÿ¦‰ç¿Oåü×BÿM3ùü÷©\ÿY“…óÈTü½VøGSéÿ®I°ÍOñ÷Têß5Q ‹QñŽXœÊù¯`Çâô>Š¿§Rÿ¬þ™ÖIü&ñ¿øŸzûá¬OaüW#þSÅþ·)ÌÿÕÈÿ©Nö?N!ÿ¯ÿO5Úÿ(ð8…ø_-ö?ž:n¹»ˆ~èÖ¿ÕÝp<÷ÿO¡þ[ ý7%×\ÿAý— ô_ó?ù?EçþÿéÈÿ„\Ž%ÿ'$b¬à§>ÿ)!ïöpú‡òøŠðÿ#Xÿ "œøÿ“‰ÿà?ÂÈÿñ™Lÿ•ðÿO”·Ü¥ÿ?™ù¿ ùaÂÿŸÌþgúŸsñ™Lü¯þÿdúÿ«Z㳎ÿ‰ø/ö°Äú· ú'BèŸIäÿ•Ð?““(>†úgñ¿øŸ,ôÏ$ꟕÐ?“œèŸIÔ?+¡&›Ð?“Èÿ+…þ91ÇrwõÏ$ꟕÐ?“L蟉ÌÿÈÿI&õÏDâ…Ð?©V@ÿLÒÑ?S…þ™Hý³úg’ ý3‘ø_üO2©ÂÿBÿ„Sÿ¬€þ™h ¦ýNþ‹ÿM4Ð?áÔ?ñÐ?áBÿ„SÿÄCÿL4¡©â¡¦Þ§¢ˆ9ÿãÁÿáBÿ„SÿÄ ý3UGÿL þ—SÿLúgùo9ø/\èŸ Ô?ËÁáæõa¾L ÿ/‡þ úgõÏrèŸ NôÏâ9ôÏþçxòßr¡Ž~g¹;úg<ñ¿ øŸ`bý<ùoøo‚ÉõÿñÔ?Ë„þÏú¿ úg‚Îúÿd±þ?žúgôÏëÿã™ÿËÿãM®ÿ£ÿ¹TøŸãˆÿ¥ÀÿxƒõÿIbýó)ò¼Áúÿ8®ÿ/‚Ïbýñ¿øgbýý¿¥¾¸N÷­ÿÏëÿa\ÿ_Zßëÿa¬ÿqbý²Îú×ÿã¸þ?A¬ÿ‡QÿÅAÿëÿaÔqQø»ùõÃ| #ÿÅÿƉúÆú‡úæ¤þ%þãPÿÃL¬ÿeý_"êÿá–»sXÿÇÿK€ÿ°`×ù2–õ ꘿¹|Ëú¿DÔÿ±¬ÿKPÿÇÞqÌ—ð:*_Æÿ— þÍtž/c˜ÿ‹‘ÿc­æòe ëßbQÿÆÿ‹ÿ±ÝõóeB¨Ê—1ÌÿÅÈÿ1×ôóeŒ/Çàs{û1ÄÿbàL‚ë|Mÿk±®“{Ñ|™.üïÑô¿eã¸Q*_Fsý{QªÊ— 'óe4õï¢h{¾„Eª|MÿwQŽ-ž?1šúgôÏïÿ=_F“ÿÿƈý¯¡¬ÿ‹PÿG;ÙÿJü[O`œ‰ý¯¡ÔV±ÿõ ôr÷¿†ÿVà´‰ûCÙÿXÑÿŒ6yÿc(ë¿UìÅõk9ü»ÎýaâþÇQäÿØ\Œuñþ‹QÌÿXä¨ãû/tóeë_¬¨£ˆÿXà?Ôàýa*_F1ÿc‘ÿ£’õóeŸÿë…ÏUìGÿ±Àÿ¨×ù2’ýÿBôÿa÷Ýÿ8U<ÿv$õßBè¿QâþÇ‘Ô Åýa:÷?Žäþï…¼ÿqôÿ£íŠãk¬¿ÿ¬¨V)ÊDYY%¡al†±¹†±ac†a†±Ù†a†É0LVT*Õ*•"­ª•U*±j•J¥ZÑ÷{×ïýÜûæs®ûÜ{ßüþðêéîsŸû|žó>ç¼ÏùœÏùˆý‹XÿñHî-ö?."ÿyügÑUØÿ¸öoìß"ÿ/¤ÿßÿ¿ÈMü¿øßøg‘‰ý ÉÿvˆøÿèO–š Œÿÿ;bÕœ’ÿìÿY¤é:t+¶<ÕÂOç¥õôϲÆx5 ¯•}Ra;›þoüßB[ýoúp'lwáXÚ¿bØ¿……r¬Èo]:[Lá%›ûŸŠÅúO6ã¿bÄ û ¿ˆï%©*Ç•Mþ[œ ?¿1¾³Éÿ‹Áÿ³ƒ•¬²©ÿÅþ¸.öŒï,òŸíÕx†s6|Cv|¯û·²È¶Ã}sUŽ+‹þo{©Â÷’ÃÎøÎâþ¯íyv|/ÊQ9®,êÿvèv²øMÊ;ì_vCÃ×å[3)ÿí¶·zg™¬ÿÚv¿ÙÊ5¾3ÿlCü“•ã9’Iþ·­Páûíã–šuÁü;ñ¿ ñOV ç|k&ùß6ð¿,osùÖä?ÛDü»€þoü_æ~ç|ë¢3 ‹ hÿ¶ÂþeFç[ÿnÿ]°G½×œÿVðß̆æò­ Èÿ·‚ÿ/NPùÖ<Á¯Ðþo Õç§°¸€ù¿­-‡8c1ƒóߪٱ˜uAa1ƒþ¯þoA¥úÍ â¿ø_{uö‹ePþEÿÿfPÿ‹ ÿnâß Úÿ"Øÿ ùÿtâ¿HÄ¿eXjÖ0þM§ýßûŸa"ÿŸNÿ¿þ?Ãdþ?þ‹ðÿéÔÿ-Ðÿ ƒü¶Èÿ§ÓþoýOw‘ÿOgþ‹®Eþ>ç¿úŸn2ÿ?Ÿøß üg‹üÿ Á¯æÿ›÷êóSxœOüoùÿlƒüÿ|Î3óÿ Dþ>ãŸÍ1¸·Èÿϧýß û?ÿÊòÿ.ñ8òßùÏþýÿ&øÿùnüÿ<úÿMðÿóMäÿçÿ›„ÿãyKÍ*úÿy´ÿ›`ÿç7ôŒÇyÔÿM-p]eiô…"ÿŸÆüWa%îSäŒÇ¢ÿoý_a)Æã1þ¿þ?-O½×4οúŸVmiÄ!ðŸªð¸,Uaó?ë“0Öß\>aå¿^Ô΢ý[û7ë¤q>!Í[åf’ÿ¯ÿŸ•loÍ$ÿ[þ7ó°’ýLâð?+Às¼5“üg]ž!Û1Ÿ°Pàw&ûŸ­‹Ç}}U>a&íÿº0¥3i±Î:3“ø_×Ô®3³ª| êÿ:èÿLÑrõ-ôfÉ¿¯o™Aû·öo¦èÿ>ƒù¿µÙ¸vÓÿ}ñ¿ö¦«þïÂ~Ï ÿ_+ú¿¿<ÎR“ÃýÒ)ÄÿZàF™gûÂü_þ Œ/0g¿Sÿç‹ø?…ö/öoF¤³ýž-ú¿§Ðþç#þI©4¶ß)ôùð)!꽦pþùà?)%æì÷tòŸ5ˆÿgŸSö{©ð?ÓÉÿÖ”ëóSö{:ùÿš} ‹³9cq:ç¿&ߎř¹Ê~OçúïšTÜ[¬oN'þ×ÿ)¾W‡OL£ü×@þ)"þŸFý_ ýŸî&þŸFû¿öº‰øñ¿ZÄÿ/ž¶Ô,bü?þo5øßtñÿ4Æÿ«ÿO7ÿOeü¿ZÄÿS©ÿ«¡ÿÓ âÿ™"þŸJû¿ ñÏ4ñÿTú¿UðSEü?•ó_ýŸf2þŸJü¯þg‰ø‘ˆÿ§ÿ«Bõù)žø_’¯ÏOáq<ñ¿DÄÿS âÿñœÿÆÿI"þÏøo âÿ "~Ïøg âÿñWÿ»Äc"åŸùñ"í좛ø?‘ñâÿñ®âÇDâ?GÄÿ{¶[jæ2þO¤ÿÏÿO¬öŒÇqÔÿø¿Ä2sxGÿ·XÄÿãÿ/FüŸ˜áŒÇ$ÑÿhãÿňÿëãqýßbøÿqÉ꽎ãüCÿÇU˜Ãã8â1ð?Iô¿œ+ìãXⱦÏOáq,ñ¿Hô¿L2è9–ó_Äþ—ãEÿ˱Œÿ•àÞbýt,×?åáó+ëéò|“±”ÿ"ÈœØÿ7–öìÿX7ûÿÆpÿß çjÿŸ8ßd ñ¿PìÿÛÓÏR3›ûÿÆÐÿ/„ÿkâüƒ1Ôÿ…ðcÎ?p}¾Éú¿…bÿßÖ¿- ÀµÁù|UïþÖ,ôÆXç$0þÏFü?Æùü‹Q>*òÏñí_6ìßçŒç_'ÿgƒÿñpþAí_6ì_‚óùNýûGsþ’¿Žfü›…ø7ÁÅùãEýÍhâ? úŸàâüëѬÿÊ*µ8ÿz4ùV¾kâüëÑä¿Yà¿ã£œÏ7™/æAþ—þ7ºJåÌF±þ)«¾Òëñ%Îz=ŠúŸyÆ®×c*UÎlã¿LÄ£«ßEÿ— ÿ7:å:¿È¥¿Eû— û7ZðŸQä?™à?£ÜðŸQä?™à?£L👜ÿÁv5·ÔÌ ÿIý_ÿ7ÊÿIþ³üg”Iþ3’ügà?#éÿ€ÿŒ2à?cÿIû¿ö¤ þOû¿ö?^ðŸxÎ?üg¤IþOùg@þcmü'èþ–åÕ@ï m÷=ÒÔ\â‰ÿ àd¨ò=ñ¬ÿÊHV§9c4žö/#ÌŽÑÑ!Ê÷ÄÿÀÿH±>=‚øÏ¨1ÇÌøsþgãÿtÄÿñ¢ÿ÷Ö¿¦ãÚMÿï´ÿé°ÿñ®ú ÿ3‚ù¯tÑÿûÑ£–šiìÿ=‚óOÇüGTyö?ÃéÿæÃÿ(5ç†3þ™/Î?Nþ7üoD²³ÿ]¨üÏpÊ>ä?"Ô½ÿNýŸýÑМÿNüÏò£üçCþÃÎ?‡ÿU­üOã¿yˆ‡¹÷?qÄÿ<àxŠgÿÇùÏñAùß<ð¿áFõŸuuû¥üOíß<Ø¿8õŸqäÿóÀÿãDýg,ýß<øÿ8õŸ±ä¿iºpö?ÉEj±ä?ià?q‰ÊÿÄÒÿ§å+Ýíï¬Û±\ÿJK²ëöˆåbYÿ‰{Gˆß¤ÿOƒÿ=wuýÏ0òŸ¹à?±ê£ÿŸ ÿ?ÌêZ¿‡ÑþÏ…ýñì†qþs“”~oßi©™R§þÏÀý¼=ûŸaôsáÿ†U˜ó?C™ÿ#Ö¯‡2ÿ5§÷Ésö?#ö)ÿ3”üoøÿ0?cÿ3”ë_s²q¡ÞëPÎN®«ÌùŸ¡”ÿÈ?>@Å;“?BýŸS_ŸŸò9Chÿf_P¸Œ÷qÆåÎv¹—±‡•ÏBýŸ ý*ö¿!ÿ› þ74öêÄßC(ÿÙÿP±ÿeùÿlðÿ!nö¿Ä0þøwˆ‰ý¯1ĪØÿ²µ™¥&‰û_bèÿRáÿ†¤zÆc ãÿTÄÿCÂÌá1†ü7Uį1´©°1Vg<Ɖþ—Ñ\ÿImˆ±ùÆxŒ&ÿŸþ}V½×hÎô?&Æ£‰ÿYÀ\±Âãx±~MüÏÊÖç§ðMüÏJRxŒËpÆc4ç?+ÔŽÇ¡Á Ñô³ÀÿbüÔoæþ¯Y>søêàq0å?òüg0ùÏLðŸÁnøÏ`òŸ™à?Ñ&Î?LüÏügóbKÍxòŸÁä?3Á»8ÿDâqõøÏàRsxDþ3CðŸAä?3À';ãqh¡Âã úÿà?ƒ5c<bü;ñï xõ^qþ3 ÿƒÊÌá1ŠøŸü«¯ð8NÄ¿QÄÊ9}~ QÄÊ …Ç¡gñÅù§ìµã1z·Âcó_)¸w¾øMîLÉÀçÁW§>)ŠòOü‰þoiÿS`ÿ£ÜôÈøg:âŸ(WýßD}Ò@âºèÿVø¥fû¿ ¤ÿŸÿ㙤þO‡ÿ‹ò7WŸ4þoº¨ÿÈü×t?\Ÿtæã1õ×ÀõŸiÕ»×=Àøwâß9æê“PþÓDÿ³´Ó`ÿ†óñèDÅw0þ†øwÀ1c¾; !Ç´Âu %ûþÄÿ4à@¾g¾ÛŸügjž¡Ò±>i„ØØ¿„ãöã¾iŠëö§ýŸZ¢t&zŸ³Îô'þ§fØu&*UqÝþÔÿ©Ðÿ"¿ÓŸú?ú?ÀûßïwФýK†ýë/úG2þIFüÓßMÿãHâ?ö¿¿‰þÇ‘ôÿÉ¢ÿñÆ&–šöë$þ“ÿþ&Îdþ79×Õæô¥ãŸdaÿúÑþMý‹48ÿ=ê„Ò—~´ÿSÊ0Öàüwù|ý¨ÿS ÿ‘1æô¥ó?SDþ§ñ?ø4:ÿú%Î_îGýŸýïWd¬/ö?˜lÅõ%{ ñ?øï—àY_,ä¿“Á£ö:êK¬8ßÅÂüÿä<Ü7Bé‹…õO“S•¾Då:ë‹…ñßäH»¾ôSúb!ÿ þÛ¯•øMÆ?“ÿX*þ½¾ô¥ý›ûgë_}éÿ&Áÿ÷u³þÕ—øŸþk1QÿÚ—ùIbýkýyKM<׿úÿ“€ÿ¾&ê_#Èÿ'ÿ÷5YÿÁø?I¬E0þMBüÛ× þµ¿¨ ýO‚ÿïkPÿ*ÏGŒ þ'Aÿû:Ô¿º>1‚þ/Iø¿â? ø8éú|Äþ JgÂ+ìß™xßIºLgx^8å?òò§ü'Bþ­ t¦™zÞpò¿‰àý/«"üK8ëÿ&Æãž¢þ5œùω¢þµ¿Aýk8ó?Yÿjõ¯}˜ÿ¨aœ¨íCþ3ü'Ü|ý«K}éCû7ö/\Ô¿ö¡ÿŸÿßÇMýkâB,¾ïªþUèKò¿ ¢þ5ÿ¸¥&Žõ¯½‰ÿ ÀŸ2ÏúÒ›üw<â¿>æô¥7ýÿx±þÕ›ù¯ñù¸O¤³¾XÒ”¾ô¦ýŸˆ±~îýKoêÿxèïjsþ%Œþo¼ðaô‰ð½Ö¿ +}Eþ1ŒúŸýïíbý+ŒùÄ"\‹õ¯0â?øïmbý+Œñb ÞS”£¾ ëËaä‰àag”¾ô"ÿKl¨ôÅÒÂY_zQÿǵëKŸ*¥/½˜ÿWŽ{S¿Ù‹ügøOXê¿ï‡Þ‹öoì_X¢zg½èÿÇÁÿ÷Ês­/½ˆÿqˆzUyÖ—žäc/(}Yõ¤¥fh!ÿNüþ{xîoÖ“ùß±»1>Ѧ/û#÷¤ÿ+öoõ$ÿ þÛ«©s³ðO÷¤ýˆkûú¯ËþÈ=¨ÿc¡ÿ=ËäX×ý‘{Ðÿþ¯ñ?øïéèÿ.õGîS¢ú#d<؃þ üO‘ÿïÁüÿ˜|ÞêêGуüg øOOÑÿ#”ö ì7ý?B)ÿÈ¿‡‰þ¡”‚èÿ±ö7†ý?B9ÿÌ¿‡‰þ¡´ÿ °ÿ=Löÿeþ+A¬ÿtgüŸ€ø?Ô ÿG˜èÿÑüw4øo¨‡þÝ©ÿ£¡ÿ¡&ût§ý-äßò ù‡ºèÿ&êº3ÿ7:×.ÖºÓÿnŠk±þÓö´7>7±þÓøUg¸¬ÿG¤è/Õõ£öྡྷÿG7ò¿Q¢ÿG˜Aÿn\ÿÅþ=Dÿn´£`ÿº‹þÝèÿFÁÿu» ý?º’ÿŒÿé&ê»Òþ„ýïæ¦þ·+ñ?ö¯›‰þ]™ÿ)êsƒ,5ƒXÿÛ•ø üw3qþyWÚÿ‘°ÿ]MžÂüO¼¨ÿ aüø¿«Áùç=Äùç!Œÿâÿu58ÿ\>_õ?úß5Ìœ¾„ÐÿÇ‹üñü‡Xõ¥‡¿Ò—.ÔÿxèHž±¾t¡ÿþß匒}âðåY_ºÿ(Á3\vþy„XêÂüψ ÜWœÞ…üo„8ÿ¼‡Áùç]Xÿ>‚çŸwçŸwaü3ñOˆ8ÿ¼3ýßø¿.æÏ?w©/iÿ†ÃþuùÿÎÌÿ/Ƶ›ügâx¾ï*ÿ/ô¥3ó_ÃEþÉÍ–šþÌÿw&þ‡ÿMÔ?t"ÿ‰»€ñ¥æô¥ó?q"ÿ߉ñ_â¿ÎõÝ •¾t¢ýÿíì¡þ¡õ?úßÙ¹þÁP_:ÑÿÅ ÿLüÇÿ\Ô?t­VúLý…þwŠ7Ö—`æ?c÷ãzŸ’}0ñ üwòó¬/Á䱩xO)ŽúÒ;AÌùŸØHÜ·žÒ—`ò¿Ø@¥/Ý"œõ%ˆë_±>v}éâ­ô%ˆñÏ0Ä?ÁgÕo‘ÿ ÿ .ø÷ü>ˆöoì_°8ÿ$ˆþü›óO‚ˆÿaø¾‰óO‚Èÿ†‰óOþd©±ðü“ŽÄÿPà?ÈÄù'™ÿzãMžÒ‘þ¨Èÿwdü?ñÁù']Äù'iÿ‡"þ òpþIGêÿPèG“çŸt ÿ"ü_âðßÑÅù'Åù'=¹ÞþüGÿw`ü?ñÇ+?ÿÄ¥ýí@þ3ü§£¨î@û?ö¿ƒ›úç@Ê?òïàªþYà)òõÏY7Xj"XÿÈùÇ`þLÔ?ÒþÇÀþw4g™ÿŠõÌÿÆàÚ þ¹“¯²¿íÉcÀ=Ô?·§þGCÿëŸ ío{Ú¿h!ÿö”4äè¢þ98UÙßöŒ£ÿ¶wÑÿ¬=ýt®Eÿ³ö´ÿÑþ¸6Ñÿ¬ñ?¸ÏpÎÑþvùûv¬ÿ| ÷ÍUö·ùß`Ñÿ,Ø ÿY;æÿ³ÿY‡eÛÑþ †ýk/úŸµ£ÿ ÿ×¾á¿ßß–üg0øO{±ÿ¹-íÿ Øÿvnö?·%þÁþµ3±ÿ¹-óŸƒôýϵìú2ñpoînKüþÛ™ØÿÜ–öì;“ûŸ˜ÿ$ö?0þ„ø¿­Áþçbÿsùoøo[ûŸÈ¢ÀÄþçÎ?ªß5¹ÿ9€ü7*6Ͷÿ¹Í/¯î¯y5è’éU+hl°Ó.÷âøE¯bÞµ¨ÿQÐÿ€³ª~!€þ/ÊWa³c+gl>Dù7ýs}nøó_ê÷Ocÿ΢^^÷{ÕY·Ã6†ùßE¸Þ§?³rÜzñ·aü3ñOÛX%ÿ6”ÿÈ¿M±ÂRò¿àÕ»ø<é^¿L÷ºm:Ÿ‹óÿÿ·Mwz Ä{«Zt±^·5íÿo&Ê~×ëÕ¡í t¬]ŽÇÎ[uÛÜšñ!ÿÖ”ÿýz-,ÞQµz·í¯YàU‡ãÈúàùRìöëÒ3=Ä1´ýSl½'s¾¾øLš®‡Ïó…íyÿöù—ÖÌ÷o•Ù\¯Ë Hϼ&þí¯:v y¶§ý$üë ã÷ÕŠø¬p|_m/_úý×ßyqÞ­(ÿHÈ¿uáºCåØŠñOdNÖf|¶Ýk!ÞKZèlèk^7Ûu|>æØñC+ÚÿHØÿÖ1âœ$âÿÖûFZQþ‘ëœK˜+òjdÿûƒ´ÿ‘õt|ò3⿟=$ê…¡Óx¸ìïFõÄN\Mê÷f]·äüû!þk•­lÕƒÌõKÆïr¿Éƒœ?ÑÿõAòŸ~aø~±’ñC¥ü;ý?ýþê{-ÿôóÁ繎úÜ’öÏrN¿¿±>·¤ÿ·Àÿ·<ã¬Ï-™ÿ³ìÁ»¿dŸñ9ñoþ[–+Yµ¤þ[ ÿ+}>-ô¹%çoü ¼LwˆÏ–Œÿ,ŽºÓ¦Lꎣþ<@ÿgÑÔûy€ùŸ¾gíúÜÚ_½Û6Œõçæ?úî³ÍßPàüû8êO÷úó×ûÆãÞ±:öu? ÿ>|a#»žÌY†÷’áè? üûúS¿tLøªy¶ ýë þÛRÓùŠî[B/ù×9?a| ý~‹^Ão6½ÄAd!NY´ÐÆ3îW¿×‚ü/¢4sçsu.w'ö¿¶àü# ÿòƒîD¼SûÒwÉ"ÀõG-èÿ"àÿØï¬Ç-¨ÿÐÿ–ûùí_D+Ý>躪Çf—sD'}Õþ9íR_÷ÁÞnnúF]oï'þÃÿ‡•ÞÞÏù‡—⽕ó3æ¿ÂÅúäýä¿áyøþ…­­ü;õ?úÿpøÿû„Þ’£ÞGû×þÿòËõ§ýïþs}%£ûèÿú€ÿÜŸf¬¿÷‘ÿõ)´ÍßPïcþ§Oª£þ>èíZï£üûÿwå߇þïáÿtáÿî¥ÿë ÿwŸ ÿw/çßû2ÿ×Òƒÿ»—þ¯7üß}…Æú;k=ÞË~Ç÷}/ùOïD¥¿÷ û/íoØÿûBmú»Hêï¬?0>ɦ¿_à7ï¼TcÃùøSÿ{CÿïMȉ1ˆ3tÌZ`«± w|Î?L¬ú“ÿ…ÿÝk«/ÑëkÒ/¾ï–õtŒÝ¼qÆ1æ´ÉÃûÐÅÜ^XzÜ ‚ðùÆZÿüÃûrý;, ÷M j"m…?ù_øß½¢ÿœ?íX >Ïw¶͉ÿ0àÿ¾|~Fû9ÞoµÙ <“ÍVÀØ}ØbÏù¼æ´ÿ½`ÿýEþ»9õ¿W1®Ýä¿›ÓþõJÓçç9ÿÒœñ_¯O¦4·Ôtdþ»9ùO/ðŸæUžóy÷ÿ=ÿæ¥æòy÷0ÿÝSä¿ïaü×ñ_ódç|Þý¢þýòŸžà?ÍCÝçóî¡ÿï ÿß¼¡¹|Þ=ô=Eþûnæ¿{ÖÇßçóî«Vù¼Ö|Ÿw3ÿÓã¾'ð7ñßø¿'ãêg|7ñßø¿GÔÜÍõÏQ¸vSÿq7åßò¿ÛUý‡ÈOøQþ¡ž&··Ô²þÃóÅüï.ðœŸðcþ/t7Æ'šËOøÑþ‡Šú?úÿPøÿ»›:ç'îõ~ÔÿPè¿ß^ãüD3Ê?ò÷óQïµçßø÷K5—ŸhFüw/ÃsTû)ZŠüJ3ê÷b}~Š+4cþ¿{®ÊGÜ[äœhÆùwO°ç#î‰Uùˆf´ÿÝaÿý„ÿkFÿ×ü§Ù™«³¿ç.Ê¿äßL켋øïüßåfÿã]ôÿÝàÿ›™Øÿxñß-IáqâNKM;ö¯[îgbÿã]ÌÿtóŵÉýw²þ£«Øÿx'ãÿ®å¸ÁþÇ{ÄþÇ;™ÿíŠøõ.ûïäúG×l\‹ýwrþ]¡ÿwšÜÿx'ñß5P÷ ÷‹úñ¦Ä×úúü›ÿ!bÿcsƒýM9ÿîl&ö?6%ÿ ÿ½S¬o7%ÿ ÿ¹óÊö?ºô·M)ÿÈÿN±ÿ±)ó!¸v³ÿ± ãÿÄÿMMœÿÕ„øïrBá1逥æ!®÷4¡ÿïÿßÔÄùŸM¨ÿ]r1>Ìœ¿mBþßEÔ?4!ÿí‚ø§‰ÁùŸ~bÿãä?]Àš”»÷·w°þ¥óŒ-1çoï ü;‹ýwÐþu†ýkoìo›å({ë]î þ;ÿM~ï ÿë ÿ×ÄçêùÛÆÄ'Øÿ;DüÙ˜ë*ñ¹›ý/)ÿNÿ®ö¿ûÖ˜òð4öMKMkîiÌùwÂüïð÷lß3þë„ø¯qµ9ûæKþßIÔÿú2ÿ|÷Ùãlßî<¡ðäKÿ ÿ×8ÔØ¾ùRþÁ¿o‘z¯¾œ0ðßØÛœ}ó%þƒctÿ ì[s_êp€>?eß|iÿƒEþÿ.ƒü#Î?ˆùÿ;Dþ¿㟠Ŀ¾"ÿÛˆñoâ__Óù÷xlDùAþ¾‚ÿ5"þƒ€ÿFnø_#ò¿ ð¿F&øßíÄGÁÿÀÿZ’ÿÝNû×þ¿‘ þw;ù_Gð¿F&ùßíäÿ»ü§#ø_#þ×Dð¿Ûéÿ:ÂÿÝî‚ÿÝFÿ×þïvÁÿnãü;@ÿo7Éÿn#þ;”éþAáÑOؿۈÿÅúüo#þ;þ×Ä€ÿÝÆùw ÿóüï6ò¿à· þwù_ð¿Û®ÿkHùBþ· þ×ü/ü¯¡þ×ü/üï6ü¯!ñ(øßHð¿ä éÿáÿo3ÁÿRÿÁÿšä ÈÿÚ þ×€ü§=ø_Cþç+ø_ò¿öà ]ð¿äíÁÿþ×€óoýo`’ÿ5 þÛÿÿ»KØ÷[‰ÿöõõù)<ÞJü·ü¯±ÿ»•óoGþw›à·Òÿ·ÿk øß­äíÀÿ\¥þ·Rþí ÿ‚ÿÝJûßöÿV7üïò¿và·šèq ñßVð¿ ,5÷’ÿÝBÿßþÿVý/n¡þ·…ÿ»Õdÿ‹[èÿÚ þw ù_[ð¿[ ú_Ü.ø_}ò¿¶à·¸èQŸþ/þ¿¾èQŸó€þßb²ÿE}â?ø¿]ô¿h"ž¿>ñ­ÏOá±>ñ ú_ÜnÐÿ¢>çÀþ Dÿ‹úÌÿøãÞ¢ÿÅÍ\ÿ ðÁ˜«ÔÿâfÊÿ!È¿¾ÈÿÝLûÿìÿÍnò73ÿ÷P¾o¢ÿÅÍÄÿC"ÿ»ØRsóU7Óÿ?ÿ³‰þ7QÿÛÀÿÝl²ÿÅMômDþï&æÿÚìÅ} ú_4ù¿›˜ÿk“ƒ±.ú_ÜDÿ×þÿ&Ñÿâ&ο ôÿ&“ý/n$þÛÿ Eÿ‹Fâùo$þ[ŸÓç§ðx#ñßZô¿h`ÐÿâFο5û_Ôý/näúWëÜ[ô¿¸‘럭3ðù•õ¿pÙîFÊ¿5ä“èáCûßöÿF7ý/|ÿµBüw£«þ¢ñßjŸÂcÜ“–?Ö£øÐÿ·‚ÿ¿ÑDÿ ê+ø¿û_¸ìGçCÿ×Jìÿõaýc+?\ô¿¸¥žêGw׿¬ÆXý/n`ý׃‡1Ö¹ÿ…a?º(ÿEýë ´Âþù¸èQ?QÕ,Þ@þÿ ø¿ø]ƒ~t7Ðþ=ûwC¥kÜîz泌½žñoKÄ¿7<_]èn™ªW¼žøo ý¿¡•q½âõ\ÿl™‡ë\…ÍëÉÿ[¦âúœçzÅëÉ[‚ÿÖuîG×@ìϼžü¯%øßõªfñ:®ÿ´Ô”^×oè¬××Qÿ8a×kŸrU³xã¿ÿ]¿OýæuôÀÿ]Ÿð?õ£sYï{íß°× þsùÏà?×¹á?õÈÿ¹ÎDþ«çßBðŸhø›¦ä?õ¨ÿ-àÿ®Kõ¬ßõÈZ€ÿ\f®Þ·ùO ÁêÑÿ·ÿ©guÖï[(Ý©Kûßö¿^¹{ý®Kûw?ì_½sõ¾uÉïñ_]úÿûáÿëÅë·OŽÒŸº¬ÿº?×gõ§.×?ïÄu„’}]Ú¿ûÁÿëîõ¬?×2ÿs¿7Þ“æXï[_Ôÿ]Ëú¿ûNâ¾…Jw®¥ÿ¿¯LéŽÏ gݹ–üÿ¾"»î\W tçZÚ¿û`ÿêfˆß¤ý¿ö¿®ÿ¿ßŸt-õÿ>è]±ÿõêÿ}ƸÙÿz ñ/øïµ&ö¿^Ãüǽ»•¾ Þe©iÌý¯×ÿ÷ÿךØÿz ×?ïÅx“û_¯¡ý¿W¬zÓÿß ÿÁþ×ëÄþWoÆ¿þUëaÿ«7õßúÉý¯Þäþbÿ«7ñïü_ãbÿëubÿ«7õßúïíbÿ«7÷¿ú7ŵØÿZ‡ø÷þ½Mì­Ãü_ó <Ãeû_oõcuXÿÖ|î+ö¿Ö¡ÿo.ö¿^g°ÿµëšsÿëµbÿkúÿæðÿÞbÿkæ›ãÚüþW—ü±6íß=°uÄþ×ÚŒÿï)Ççnö¿Ö&þïÙq®ö¿ þX›ñÏ=iJ_fYjnçz@mâÿ࿎‰ý¯µÉïÿ­]eŽ?Ö"ÿ¹[ðŸZä?wƒÿÔ6ØÿzíaÅkÑþß]бû_e›ZÔÿ»¡ÿµö¿.ŠpÕߦýßÝÂÿÕ"þïþkY]÷·¹6[鵯ø÷nÛüŒ9$ë‘5Î߯Ò6?cÉž8ç/óŸýŸü_-#ÿþxðõßú¯¹ðýŸüŸ&üŸFÿçÿ§™ð^Ô?oÝ?ØôYçŽ:‡´ñÇz‚?zÑþ7;¡ë-õ²ÿFþ× üO³íÏÕŸÉQ§½ÿ4+´·v~æg¨Ó^Œÿšeèß¿Éú¯f‰øÜïªö3Öþ!ÿkþ§©ý/Ú?ŒïBüëåzÿ‹ö㟻ÿxyÞÿ¢ýÃùß%ö¿„·ÔÜÌ¿SÿïJÃý<ïÑþ!ÿ½ ü×ËÜþ­†üï.UŸ¡ÕÐÿߥážû_j«ý/Z íÿk¼ÿE«aüsç^\«ý/Z çg!¾knÿ‹VCùß ù×çÿÝT*žŸúg¨>¿Kù ­†öïNqþ_çóÿ4+ç'ÏÿóRçÿiVúÿ¦U¸Ÿ:ÿO³²þµé1|~eçÿ¹ò7š•òoš†{ªóÿ4+ó?Mpíúü?ÍJÿ×4×®ÎÿSþFû/ñß´žÂcßæ–š›wóïôMÎà~%ýö_òŸ&û0>Õ”¿ÑþKþÓDñí¿´MRpŸVÎþF‹½äo´ÿ2þm†±š[~¦ý—ü·‰/®+Lå+´ÿPþw¨õí?ôÿw”ã>yÆüÌ«ô’¯ÑþCûG1ÆÇ»ÍWhÿaüG*ÆxÌWhÿáüïÏÇø÷Ž\Ÿ5ö7^ /ùíoâÿèÿ2 ýö7ãŸÆ'q}BaóoÆ?ËðÝPþFû›ü¯qž!ß9_qý~5¿ÿ4N½ý/qHíoò¿ÆQJ¯á?œôúoêc›þëúq‰CjèÿûàÞõÔo^ ÿñ­Æ÷÷^]söÏöïoÕÿM»ÀøÏ7×®û¿iÈÿ|cñ}Ïçk8ßJ¿{´ÔÜ`ïÿ¦§þûÖÃXÏýß´óôÿN`¼cÿ·É®ôû<ó?Ôþ_í<÷ÿ6ÊÇ}œû¿iÖ4…Íó´ÿqm|þ±vžö¿ìÿyuþ±vžóoÔ׿Î?Öþ¢üo‡ü­öý¿c?×yZ?Ôþ¢þß^~‰i5þüùßí¥øÍC¤ýÅùßn?ÿXû;÷Òþ¢þßžª_ü&÷¿ÜÏ} qy¥ë5ÚŸ”ÿíÿyÁþ$ÿ¹í~× ÿù“üç¶Ãg‚ÿüIüß&øOÏ–šëÈþ¤ÿ» þï¯@Ïxü“üç¶Œ÷6‡ÇjòŸÛÿ©¦ý» öïÏýÎxüûŒÂc5ùOCðŸ?]ðŸjòŸ†à?Õ‚ÿTsþ ¡ÿšä?ÕÄCàÿ? ×Ĉç'þ†*<þ§€cþ£¡?®+ñøçßÐδ¿.(<þAÿ× Jÿ¾úÍ?È€ÿTç^<þAù7€ü«ÿùƒü§øÏnøÏä? Àþð|þ±ö;ñß@ðŸÐ‡,5×’ÿüNþs+øÏ&øÏïä?·‚ÿü‘j¿“ÿÜ*øÏïä?·‚ÿüáÌ´ó± ¿Óÿß þó»ñùÇÚï\ÿ¹Õ×êücí7ÎÿVèÿïæÎ?Ö~#þoþÏ—+<Ööý7âÿ–½ ¼ù7úÿ[ ð›QÆxüó¿Å~þ±V¤ðøãÿ[bôï‹ßäþï[Bp}áêàñå_òÿMå´s´ÿõÁÿ~sÿÑÎ1ÿS7Æy>ÿX;Gü×ùŸ®Û-5Þ¾ü;ý}øÿß<ç´sôõáÿÎU™Ãã¯ô7«üö+ó7Wâ>Îù­ú°Âã¯ô7Ãÿ3>ÿXû•þïføÿ_ÕùÇÚ¯œÿÍÐÿ_ͬýJüß üÿªðè%ŸŸø¿ÙOáñÏTûß~aþãfoŒ;hŒÇ_8ÿ›ìçk¿Pxü…ü÷¦2ýûê7aþó¦=ø<éŠðè*¯ýBùßùÿªÎÿÓ~¡ý¿ üç×çÿi¿0þ¹ ñÏ/®ÎÿSù{ígâÿÆ3 ]Yjjåòïôÿ7Âÿÿ’ã?ÓÿÝÿ÷KŒ©ü½ö3ýߪ¾Uû™üÿÆ(ÜÇÇ¿«Øëgú¿áÿ~®tžeý‡ÏŒ-5•¿×ÎRþ>ª~B;Kûçÿÿs²a|¨ýV tæ,ù¿øÿY«qüu–üÏüïl¬’ýYâßø?{ÐsüõùOC¼§úù{ͪú‹i?qÿ÷ gqßÝ*öú‰öÿ†ŠK±—öÛçØë'âÿ†=vù¥DÅ^?Qÿo€þŸÍ¿Iý¿ú6ð_÷Ó~¢ý»öשׁÿÐ~äúÏ õ1Æuý‡ö#ñ=ìÿO®ê?„ýþ‘þÿzQÿô«ÅúO,ÿNü_üÿãq„ö#ãßëÿþä/÷G\¾÷@É÷Gæ¯WõÚ´×ÃÿÿèXÿ¡ï€} ×¾ ³ýöÿ:Ä??ªþëÚŒÿ¯Cüÿc¡™=žíÙÌÿ_—‹{ªþoÚôÿ×ÿüàºÿ›öùÿuàÿ?zîÿ¦ý@ûw¯’OÇa«ÕÞÿM;Cý¯ýÿ¡Ô³=;CûWöï‡söì ùO=Uÿ¢¡þ׃þÿâlÏ~NRöì ùO=ðŸê»·ggˆÿzÀÿ™*söì{Ê¿®ðŸßÓÿÕ…ÿ?cTÿ{vVÕ¿hßÓþÕ…ý;c\ÿ¢}Ïú—ºy¸Võ/Ú÷Œë"þýÞsý‹ö=í_]Ø¿ŸCíÙ7‚~ÏõϺMq}BÙ³ïèÿëz+{ö³¯³=ûŽø¿ö¤ÝžýP¡ìÙw¬ÿ¾ö î-òWß‘ÿ] þ÷}â¿î×¥}Gÿ-üÿ÷ÂÿGÿ-üÿwnüÿwÄÿµðÿßy>ÿWû–öïáÿÛ4·Xÿ¦ÿÿ–ø¿øÿÎóù¿Ú·´×Àþ}gîü_í[úÿk„ÿÿ–þÿøÿïœÏÿÕ~TçÿjßÒÿ_ÿÿ­ñù¿ZãßkÿW©óµ*Îßöÿ[sçÿjUä¿Þà¿?Êó}.ÿ«Vë[Zã?ïü†:ÿW«âú··:ÿW÷N¸¬"þ½íçÿjß«óµ*ê¿7ôÿ[Uÿ }Cÿç ÿWuåçÿºÄç7ôuÿV©ú_íæ¿ëãÚuý¯ö ýøÿ*Ïõ¿Ú7´ÿuDý-Ö¿ÎðïœÌÿÏõ¿Ú×´ÿµaÿ¿1Wÿ«}MþW[ð¿¯iÿjÃþ}ã\ÿ û¨ðù5å_òÿƸþWûšùÚ ¸Võ¿Úלmø¿¯ÍÕÿj_‘ÿÕn¨ûÏë>OžPsùŠùŸZUøb…ϯ˜ÿ©uLáóûJg|~Åüo­;>«Š>¿¢ÿ¯ÿÿµÈ|Eÿ_ þÿëVWŸ_ÑþÕ‚ýûZÕ?i•ÔÿZÐÿ¯\×?i•Ìk'0ÎUý“Àg%í¿&êŸZ|c±VGð†ù柕´ÿìÿW Íá³’öOúšú¯Aÿ+9ã³ê‚ÂçiÊß ò¯L0Æçiú?/ø¿Óªÿ˜všó÷‚ÿ«ô7‡ÏÓôÿ^ðÿߦ|ÖRøü¿ uÆç)ú/o;>¿²*|ž²ÛíØÿÓbýïÔ>~^ŽÏ󮟎|xÂç©Þöï´ÈžŠàçÐÿSnòŸ§ü8.×®òŸ‚yŽãEþóÁh‹õ7æ?¿äük0ÿS&òŸ_s<ìÿ©Ts|øËd~Gèÿ—±ü úÊ ÿùu¬âÃ_¶âXÈÿ”Áú¯­ÞhÇj ýÿÒ¶þ«.9qÖõ^u!—~°öøW³"þýr·Cm’ýì-òØ“{8NØÿ“…ül¯>¿ bŒ5ªGÒ¾:§8óÉD~'×.Ó³pŽ åèÿIÁÿN¶àçà'÷èY3õ¾¿°r,ìÿ×6ûŸ…çSœù„:_Qû‚òÿ/ä²Dqæ/ˆÿÿ–+ÝúªÊY·¾Èç¸ÝvÝ:U¬8ó©üøÿÉ\ñ›ñüú2º5Ýg–x²õ/+þç}Ns¸gÝô¢{tΕÓf+ž_ýYSÛ«ŽÞK ºÐ k¤W[/Å^Ú\CGìŸÇãóÝ^ulŸãÚó꿯ÿƕԫo¾¨ßŸÛù¯öðß/ÄúïçIüñßçnÖ?§üÿùá¼þûêmÓƒšüóOË,/­{ÑEÿ܇ßñ·é8äTrºÅús™ýïŸåß½1ö Äú„Ïìùíï ŒÏwðAƒ~Úgy/Ö>Kãgù¸G¤³ÿ9e;ÿ«ÍøÒ"¯&aÿÇ~™å•yòòzþ²ûSÿÿ†þn×ÿá®âáϨÿCÿ?«cmÏÄ(>a÷ÚaÿOÿÊõù9<ÿð‹ºýe©-ÕŸYû²žò§'2øÝ|7JaàõÿB†>½¯šnÓçŸim×ËŠ0Ü/-4Ë«Çr|¤x.Úÿ °ÿ'ª3ßúÝÖ?î²w[DŽcÿΧ”ÿoýý¨{}JûwöïÄnCw™zæ_ŸÿçÿÿŸÿçÿOÝàÿSâÿ<ðÂDýçõ9^Ô?ø¯´XdýÃ'ôçëal™gþõ‰ÿiÿ}Z`Ž}Büÿ%ðÿ ñÿðÿ©þ¿HSxù$’cqí¢þáÚÿ¿`ÿ?õŸpþ!þùÄdýÃÇöüög5žãÜ¥z;íCQÿð1ñÿg¹>?Ź>¦ÿÿsŸò _sö sþ²þáD®â\Óþÿ ûÿ‰¨ø8ŒŸÇãsß«²_U« üÿ„ü?õöú­ú~×MýCÅ^Ž;Œq&ê*ˆÿjQÿp—Åz†õäÕà›¨ÿ¬àxÄ›¬ÿ?…ÇãÄÿªþSûÌ þó#ÎÿÖ?|,ê??¢ýÿñÏqQÿðQ)??†Ï¯¬þÓ%?¢ü‡ü þÿùÿïàÿ¹áÿÑþÿûÿ‘‰ú‡‰ÿßÿoÒËbý–üÿCò¿ßÀÿ>*ñŒÇ©ÿ¿ÿ”j’ÿÿ&øÿ‡äÿ¿ÿÔÊŸÄ*<~Hÿÿüÿ‡.ê>¬Ç1~¸õåœÿoÐÿMÖ?”ÿç€ÿOʉç/'þÏíÕç§ðXNüŸ+Txüd3Ë9ÿs¬8ž¤ðX¿ÅàÞ"¿]îÏÏCp}áŠðèr}æÊÿWÈ¿\Ô?|@ûÿ+ì¹›ú‡ÈÿEü_îùü7íâÿWQÿÐô{‹õÖ?|@ÿÿ+ü¹‰ú‡¨ÿ¿Âÿ}`îü7í}ú¿_ÄúÇû‡ùY%îcPÿp\ÿ¦½_ı¥ëþü7íýŽÍÅXsç¿iïSþ¿ˆú¯÷iÿ~ý{ßøü7í¸:ÿM{ïÇ×Çxãóß´÷Èÿ~ÿ{Oÿ¦½Güÿ ü¿ïùü7í=òŸŸKð Žç¿iï¨9¼Gþû3øïûêü7í=ÚÿŸÕùoÚqçóß´÷ˆÿŸíç¿iåêü7í=êÿÏÐÿ÷ÕùoÚ1êÿÏÐÿ÷þýùoÚ1Ú¿³°ï‰ü÷±\~^Œk7ùïcÄÿYØÿ÷<÷¿ÕŽÑÿŸùïÆoZ¬§™ÿ>FüŸþ¹8ÿÍ–¹ß>þ¨=ÿ­ýtã/ÿƽXÌA¥üRý_µ£»ùÙA|/Ãiÿ•MGÀ/éÈQò¿ŸÀEºÈÙ0ÞDþóu ÞS€#Ÿø\à÷jŽóÁw+>ñíÿWÕJg×sÖ™7ˆÿ¯ŽÙu¦¬Lñ‰7¨ÿ_Aÿí¿Iýÿ ú(ææ[/êË´_ÁþRý´7|ùy®ûÿ,¼¨/‰ÿ¯`ÿß(šå¨/C·ÿú:æû ýžíõ_ZåI›®èg|”|ýªÅZáxÞvñ_e©íù íãAú¿Jøÿƒ¢þý õ¿úÐdýûAâ¿øÛVÿ®Tç£h¹þSéëÊ &^—ÖÈu¿®`þ¿RÔ¿½mPÿv€ó?Íú·C¢þíùÿiðÿƒ¢þíãÿÓˆÿ&z²‘žå}€üï4øßA±þy€öÿ4ìÿçú·Kò>@ý? ý?Pá^Þ¯“ÿŸ:«ä]yÔbý(Ïñý¿ÎõßSe¶ç3”÷ëÔÿSÐÿ×UÿgíuÆÿ§ÿ0×ÿY{ñÿ©è\”]ÞŸG¨wþ:õÿôÿõsÎò~þÿTC%ï²Îò~óÿò¬]Þ«”¼_£ýûöïuÕB{öÿKØÿ×Sÿ½¼_‹âý’p?ÕÿY{-˜ŸGáÚ¹ÿó%y¿Fÿÿ%øïkUî彿Ê>ö¤UÉûÔky‘ãûßOþs²Âö|†òÞOûwöo¿à?ûiÿNÂþ½f’ÿì§ý?©Ûÿ»¼Oˆú—ýÔÿ“Ðÿ×4gyï§þŸôWò>ì,ïW9ÿ/¬vy¿^­äý*ó__Tâ~'Õo¿JþûøïþÓòvä?YùO—Q^µõh_7«1ä§yÐ×êñœÿ˜ÿþõ._åú瑸Îu͉^åü¿€ý{µÒ3G…þïójʼnêm·Xßç~ÊW(ÿÏ!ÿWókømù‹hŽgü÷y Æ'dÓϦÖ¼ÃKç(˜k/Œ£ÿÿþÿÕà‹µþYIê *Þú/ùï+´ŸÃþ½b *öêåß°ÕøÈéœàž•íÕKßo ØÎ˜Üê5Å~—)ÿϬ¸Ç>Å¡_&ÿùL🗩ÿŸ•Ûê ¶{5öÂ./¦½~"}A¥ŽçîÏøñÿðÿаß/3þÿ ñÿ+Eé δVó}™òÿ òEìOy™òÿ òÅvþiúvÜéßöFdÅÙäœÔóÜ¡?ã‰býòóÊòTOâ¯ÃñºþÿüÿË{Õ÷åðó"\Ÿp×}ŒO þ}9À3^÷QÿO„)¼^ó«Åz´Š'þOÿû*=ãõ%âÿSÄÿûöºÀk8Æ‘ÿ}Šøg_®k¼¾Dü*ò/‘ÿ| þ³/x wÆëþ àµðnÇë‹%Žx}‰òÿòßWOáõ%ú¿OEþï%æÿ>õ#^of ^÷·0Æë‹Œ>AüóR‰’å‹Äÿ'ð/uÄë‹”ÿ'ÿKªÿ·ö"åÿ äÿR¬9¼~|îêãµõ.G¼¾@þ÷‰7žKSs|þÿã³xö®ñúùÏÇà?/f{Æë ¬ù¸@áµNw‹õÝ@þøÿø1À3^_ þ?†ÿ{Qsטÿü¸)®O¸Æk)ñ_!ÖJéÿ*àÿ^(2Æë+þŽx}¾Â¯¥”äÿB¬Âk)ãß ÿ–2þ­HQx}©Jáõå4c¼–2þ¯@ü_ªÎoÑJ‰ÿ ?üvˆ#^Ÿ§ü+ ÿDýÏó”ÿqÈ¿t·9¼½úxmyÞ¯ÏÓÿÿ-õSÏsýçx®Ó\ãõ9òßã 1®Ü3^Ÿ£ÿû¨JáU[c±¾Ã¿ÿÿÏg{ÆësÄÿGå¯ÏÅp\2Ƶp×çˆÿD~ö9Æ¿!þ}î¬1^_JuÄë³ÞŽx}–òÿòn·Âë³ä?ŠõŸgÿ}xPáõ…@…×ãõYÆ?"þyNÄïÏÿ¦àóKùù?'Ö¿Ÿ¥ü?„üŸ½`¯åùÿ^]Æ+{ÿ”#þyV¬ÿíeüWŽøo¯óúߥxe/ãÿrÄÿϺWöÒÿ•Gªxå£-Ö7Ï^š}ý¹¿íùzÅ+Ï0ÿY®áZìz†þïø¿½&÷?=Cÿ÷üß {íñÊ“»•œž!þ?þ÷F9Ç+ÏÐþªâ•rã•g8ÿ"íñÊsa*^y†øÿøßÛJü6ãÿÿ?Sa:^qè×vjƒ}ºû¾aY¾º}jÖÏnŸžæüßÇüŸüïiÚÿ÷aÿŸvÃÿžæü߇ÿ{Æÿ{šúÿ¾àÿ=o±¾Aþ÷4åÿ>äÿt¥›.×[Ÿ¢ÿ{üïé½9Ü'Œê{Ÿ¢ý{OÔ¿?Åø÷=Ä¿O';çoŸ+ÔdžkçwÕmÝîÃúYÙz¾ßmª÷ ÚÞ¬¶­ƒöxdÖl Ž£ôîmçã꿱±Ö©óËüß{ø±~óåÿäÿ|+½î;=ýLëîEkg÷°þá½úê™÷0þ9†øç©}™aÍÕëgŸûùû3íºÀï0þ=†ø÷)1ÿ=œÿ1Ìÿ©d™ã´Û¢fý²blQ]Œõòk6ý_õC×öÐÿƒÿ*P½=ôÿÇàÿ÷Ä»ÆÞ“\ÿ?zãJ=¯<Éù=¬°÷w]‹õ@ÿÎüßÑݸ_¢çõƒ'iÿŽÂþí 4·~ð$ñTø¿')ÿ£ÿ“gñ·×W­i¼~ðýßø¿'‚•쟠þþ?Qìyýàqêÿ»ÐÿgÎ9®ìÎVsxœñß»ˆÿžÈUëÓþ½[ªì÷3‡í÷ãÜÿñnžÝ~ïÉQöûqúÿwáÿŸH¿Éüï»±ø¼áÿÖß¹æ2ûí·Ñn¿5ÚïÝœÿaÌÿñsê=îfþûðI|îëZ‡vsþ‡aÿOñl¿w“ÿÎQ:ôâ¡ýì'·›ùɸŸŸgû½›ñïá@\Ÿól¿wÿ‡E}÷.®¿s÷Øã¬?{NØí÷ÎrØï~øo=e¿ɰÛo¯ì¶rg^¦ØïšÿâwÈÿÞÿÛ-øß.ÊÿÝ~:Ûï]Ìÿ¾#øß.âÿÝ>Ûï§ŠíÏô×ÛãúÏ;õðûbþqþocþ»ö8ÛoÍÀ~¿ä§™³ß.ë£ý{öo—Xÿ}Œúÿ6ôÿ17ë¿Ñþ¿ ûÿ˜‰úßG9ÿ·ÅúïÏ[¬/sý÷Qò¿·Àÿ3±þû(ùï[à¿™ìö(ñÿ–ˆ¥üß‚ü3Xÿ}Bô?{”öÿ-Äÿº¨ÿ}”þï-ø¿GEýo çÿäÿ¨Éú߯?exÕÿL+ø)¡ÿ/ýÏždÿ³òß2ðßG]ô?+áüËXÿ»Kô?+aüS£_ü&ñ_ü—\Yÿ3—ýˆwRþoBþ%¢þw'ó_o–ãs7õ¿;éÿß„ÿ/ñÜÿ^ÛIü¿)ê»ßb}‰õ¿;iÿß„ý/1Qÿ»“ë?o¶Àµ¹þ÷Ú#´ÿ‡DþçæUâ>õ¿»Tÿ{íÚÿC°ÿ;Ý÷¿×¡ý;û·Ó\ÿ{íÊÿÈÿ?Âüÿ¡P\»î¯íRýïµ\ÿ?äc›Ÿúmçþ÷ÚÎÿJÛüÄX§þ÷ÚÎÿ ÑŸ{ãß7ÿ>bÜÿ^{Lõ¿×vÿo@ÿw÷¿×v0þ{#תÿ½¶ƒþï ø¿žûßkÅôo€ÿíÒœúkÄúf1ùßAð¿Šó3ÿqð âúÿ×áÿ·7u­ß;‹•~okÈï´²ÍÏ­~oåü_×lós«ß[9ÿ×Dþo+ñÿÚA|?ÃX¿)Qú½•ñÏkˆ¶ùë÷Væ?_KÆu’ÂæVÚ¿×àÿ¶–{Öï­Œ^Cü³ÓÏY¿÷‹üPãßýˆ·–*ý.¢ýÛ_©ôû‘jgý."ÿÙ¿Ï®ßÛ÷*ý.bþgî](~“üg>½ºú]Dÿ·þo«è·…ùýõ1ÆMÿ»-ôÿ¯Âÿy>ÿPÛÂù¿*úßý0Ñb}†ýï¶Pÿ_-Äý<Ÿ¨maýÇ«IoîüCm íÿ«býo ùß«à[œÏ?ÔŠÕù‡ÚfúÿWÿm18ÿPê÷fÚ¿W`ÿ¶ä˜ÓïÍ䯈ý‹›¹þýJ6îâZ¿·Tú½™þï•HÛüÜê÷fÎÿ?ÛüÜê÷&ÎÿeÁ6ÿ/Ãÿo6>ÿPÛ&ú¿m"ÿ}y/Æ»èÿ¶‰ñÿËy¸ýß6Ñþ½œŠkýß6‘ÿ¿ þ¿ÝùüCmŸÐïMÌÿ¾ì‹kuþ¡VHû÷²:ÿPÛî|þ¡VHÿ¿Ï~þ!ôCéwa ÿ¶÷Vçj…Ìÿì+ÁçÿÛù‡.û[ÒÿíƒÿÛ$âçBæ¿öàÚõù‡ÚFúÿ}ðÿ…žÏ?Ô6rþ/‰ó¿Ýh±>™Æ¿Sÿ_BüW˜ê¹¿åFòß—À Ã.®q¹¯_ßHûÿ’à¿É_ÿÝè¸ÿͶÖU¤ÎÖ¦ÿ©!ÆÚÏ?é*ß÷0íß‹°KäX£œüùï‹‚ÿ>Lþû"øïFGþ;ò¢noɱ­—ÙjÛK ù=Ú¿aÿ6Šþw3ÿñb>÷1Ó‹Óž6Ðÿ½ÿ÷°X?Þ@ýúÿpS×xÚ@ù¿ù?œêO(ÿrž¾‰¶XoÁ¿sþ/`þû{ÆÓæ?^Æuµ9<ÿ¿ â÷òßRðß {œñ´é„ÂS×?JË06Û=ž èÿJáÿ6ĘÃSù©å_ ùoð1ÆÓ¦@…§çø> hÿJaÿ6þ»žö¯ü¯`ÿÕÃÓzòßçÁ DýÌzò¿çÁÿÖs§õ”ÿó¿g<­§üŸVxúªÅúØ þóó__áOë¨ÿÏAÿ×—˜ÃÓ:êÿsBÿ×QÿŸƒþ¯wÆÓÆ\…§uôÏÁÿ­p§u´ÿÏÁþ¯÷6‡§µ´Ï ù¯¥üŸƒü×í7ÆÓÃU Oϰ_îZòŸgÁÖ‰õ¯µôÿÏÂÿ¯K¾zxZËüϳ±¸¯¨\Kûÿ,ìÿZ7ýO×RþÏBþkMô?ϧü÷Šþ§§Þ´XKØÿ4Ÿóß‹ù¯ÍñŒ§|êÿ^èÿÚsxʧþïúŸOýß ý_ë㌧ ¢ÿi>㟽ˆò+Ýãi íÿ3°ÿù¥æð´†öï!ÿ5”ÿ3~²1ž žžªÇï1þñ¾ˆ×0þ}ño~Ó+Æ“ËõÒÕä?Ï€ÿä‹üÇjÚÿ§aÿ׸ɬ¦üŸ†ü׸Ê<­¦üŸùÏzY¬×#VsþOcþkLä?VSÿŸ†þ¯q̸\/]EýZèÿ*êÿÓÐÿÕùugTܱŠñÿSkÿÏ·Šöÿ)ØÿÕù×륫hÿžò_Eù?ù¯nj¼^º.Lūȟÿ]µÇ8þÈcþó)Œ©§dŸÇøgâ¿U)žã<âüÿºƒŽë¥Oˆý«yŒÿ÷ þ_«b<Æÿ{rTì±®Ð9öÈãþ×=ñöØcMŒŠ=òhÿöÀþ­ ¿Éøâÿ¼ªßß`%ùÿ“'p¿ õÎV2ÿóäA\[]ëËJâÿIØ¿¼Ïú²’þÿÉ$¥/ŸÀŸo§½XIü? üçy{Ö—•´ÿOÂþ¯¬0§/+Xÿ÷„¨_Áõ'ÊqŸ!êVÿOÿ+ŒÎÿƒ¾¬çÿ-§þ?ý_áâü¿å\ÿ~ü$®ÅùˉÿÇÿ&Îÿ[ÎüÇãx†|G}Ùå§æ°œù¿Ç“qßJ_–3þ{ê7séÿvÃÿ-/ý÷çOäÒþí†ý[.øo.ùïnðß\7ü7—øß þ»ÜÿÍ%ÿÝ-øï'Í,Ö-俹Äÿnà?×ÿ]Fþ³ ü7×$ÿ]Fþ»Kðßeä¿»Às øožà¿Ëhÿwÿæzà¿Ë¨ÿ» ÿ¹&ùïRú¿]Âÿ-%þwÿË\ðß•‚ÿîdý×RúÿÇàÿ— þ³”üç1ðŸeW‘ÿ.%ÿ} üw™à¿Kiÿƒý_ê†ÿ.¥üƒü—šà¿K(ÿGÿ=þź‰üw çÿ(æ¿Ôÿ]Bûÿ(ìÿR“üw ùÿ.!ÿ}üw©ÿ]!øïòßGÁ—xà¿9Ôÿèÿ“ü7‡ö¯DÈ?‡ò/ü—¸à¿ËÿÝÁ~$9´ÿ%°ÿKÿÉ!ÿ)ÿYråü×åúÀbòßðß%‚ÿ.&ÿÝ þ›ã†ÿ.¦üwBþ9&ÖÿSþ;ÿýp—ź‘üw1ç¿óÏ1ÁSÿwBÿsL®ÿ-¢þïú¿ˆú¿ú¿Ø€ÿ.ë‹Èÿ]ìÿ.¢ýö±3ÿ5Ϥþ¯KÔýƒsüš/êÓgÒþ¯ƒýŸY­tz&ùÿ:?¥ÓiÎ:=ƒñïÚ vN=§tzóÿkOâ~â|ÀÌ­-ÃçÙÿKüúZÂ?Gú?]ÔïŒÿÖ"þ›™¸¨çÅùÌ`þom®û]ÒïôÿkÁgTIýN÷ú``º/ô»Pò³Î?ÿ‚M¿wþý~¹¹ÅšÃz¬ê>øÿŒ‚Kú}›®ßÏèw ó?ù»1Þ–ÿÉèà°Ï@¿SÈåúw ý>üÿ ÇüÏ]¿gÛû¿eyÅèŸmÿçŸpmuiú8ý¼ :éö «sìýêL ×òbÓSñ·…uFëõé³îHëž]'zh³›;uååÕÏÒé4îßìƒÆh\|¾<17³Î¡¹¶ú]ÆÀbË,¯kC‹jŸöÂ;ìÕ:½Ç¦éº¬ë4ÃWðO«cÿWwÔÎó¿øÿZÿµÏm:ýÿÄ¿) ¶ûúz lc»ïÅúÕéœÿš„ÌæGæfúÑϬý9§Û5ùþ:ÇzÕéô—ôx:×ÖˆúÏéôÿk|³¶Úô"Jõ¨Hõ_“æUÇvNº=šÆøwõY¥÷Ó(ÿÕ'ô3ÃtNl³›IúøIa¶Ï2Äg^^ð{´«aÿ¦g\6Gös˜Fÿ¿:ã²9ú\œ£ãü¦±þwµ8ÿiõu°}~3RÔüf…9Îo*ýÿj5¿©Äÿ*ÛùY ôqI¶ü¯³mû</rð¶ûÛö¿Í¬Z3OŸ³öîQXôÒë˜õõIe×§Òÿ¯‚ÿŸ–zÙ{ =ŸJü¯Ju|3½¥¬/½´‹ïc*÷¿Éõï©ÔÿU-ìï#%A½™—ÞGg}nÉÜÿŸgU±N2ý_ÞýžvµÊ¶¿Õöl÷Ii¥òø3*×Ì·Éý{~ŸúŸýŸšc<ßdâ?/Çq¾3ηðâ|“)ÿß)”žXÿœBù¯¼ cY÷{Y;ìú§î“b]“îUGžÎ¼´ÌÛ½ºoýÏ÷CjaÞ äóêç¶ñ¾ÄÿJà?¹HüùÏJðŸä0[ÿÝ>±¯k¤÷ø­Áŵ—á#Lž§)øáÊ%ì²ÈNfþse}Œq“ÿœLù¯ÿ™â*ÿ)â©Éä+Dþóå,ÖLæ?'ÿ+€ÿ)&ö?L¦ÿ[ÿ7Åß\<5™ü…ÈN¦ÿ_á‡kƒýÓë)Dþ¿¼c ö?Èç›ÄüÇòÛc.žšDþ³\Äÿ[žû„óÃi‰ÊNM¢ÿ_ÿ?é˜1ÿšDû¿¼®[(Ù'‘ÿ-ÿ”ï™%1þËEü?­Ò1žZR®æÄúÿÜý¸ošâ^IÌÿå–(î5mŸ3÷J¢ýÏͰs¯)©Š{%ÑÿåÂÿOçs&1þÉEü3ÉûߟÏ0‘ú¿ìî-ê¿'rýcY%>wSÿ=‘ø_†ø'ÉUý·à[©ÿËDý÷ Ï[¬é¬WžHü/þ“ü=çÃ&Òþ-ÿXm.6ùïe¢þ{óKÏá>{œóaSDý÷òߥà¿]ôÿ@û·öo‚èÿ;ó_ û7Ñdÿß Œÿ–ÆÀ¦E©|Ø"‘Ÿ˜Àøwi€>?•›@þ³ÔWa1¹•3ÇsþKÎÙ±˜tFåÃÆ3ÿ·¤÷øOü/þ'¤]Q>Ìe|?žò_ùOýÇSÿ—@ÿÇ»áÿãiÿ—Àþ¯òl¿‰ÿœ ϶XÓÈÿÉÿrÀÿÇxÆc"ýüÿøD<ºŒïÉrÿO¤þç@ÿÇ7uÆã¤ß'ÒþçâÚÖÿÃõy¨ã˜ÿÈ©‡±er¬‘Îð;”ÿb±þ;Žë¿‹â>Žë¿—ÎCM*Q:3ŽùÿÅù©ä:ŽùÏÅi˜SªíýoÇ3Í?ÓZ?Üïfíïüˆ—¦û+;™¸G—ù(~K׌ÑÏNŸ‹ýmÙ3dû?.ç?åücþãÊ2{dûîeï6Ù~†ëDöcËù/þÇ ü%þí×çgˆÿËâ`Ïöx,ñ¿ø'ð?–ø_üuƒÿ±Äÿ"à¬+ü {<†ø_(ð¿wŠÅ:›øCü/þÇšÀÿâ!ð?ÖÿG\á ñ¿Pà ñ¿øk€ÿ ¶sâíc‰ÿ…ÀÿÑ¿g å¿°)dé{1>±¯k“ï‚Ûùº—lvã¿ì³ · œ6æ?ÆÆ_ìß]˜”žªc'}¼ÝÛŸkb€ýï#éÏÈÿ² /~ŸŸ“ÿdƒÿŒ ¹âóä]â'òφüÇþ;šü7ü7Á ÿMþ›þ›`bý4ý–à¿»¾±Xg‘ÿŽæü³0ÿëÿ£‰ÿ,à?ÁäúÿhÊ?KðßÑä¿Yà¿£ ÖÿÅúÿ(òßLðßÑ.ÖÿG1ÿ—YŽk±þ?ŠóÏÿmrýã¿Ì<‡Xÿ_ žñŸ™ ÏOùóQä™bý?Ñ`ýçŸÉõÿ1bý$ùO¦7î-ÖÿGÿ ÎâûWiý$å¿ò%ÖÿGÿ €ÿ‘nÖÿGrýA,¾obý$ñ¿@¬ÿ?m±¦pý?žöìÿHëÿñÔÿ èÿH“ëÿñäÿbý<žþ/þo¤Áúÿ±þÏüoF"®]¬ÿÇ3ÿŸŠk±þÏùg@ÿãM®ÿ þÓ«uû©ð8_¬Ï þÓËõù)<Ž þÓÅúÿƒõÿœ:×ÿG‰õÿ´ÿ驸·XÿÁõÿôx|~•Öÿ‡Sþé¼XÿNþ;ü„›õÿáŒç#þabý8ñ?_¬ÿ?ÞÀbÆõÿáä?óÁF¸Xÿ—ç5§þÏGü7âÒúÿ¢\y^ãpÖ¿Í÷Wï2Žö>ìÿðcNýl£0Çøoâ¿áñÆñvùÏ<ðŸ¸}ê]ÆÿóJð]?Ïñvå?/U·¿  ¢¾6Žüg^”>?…¿8Æó‚þFG:ã/–óŸWߎ¿øz ±Äð'Î_ŒåúGÚI|^xuðËø/ ñ_\Žzg±\ÿJKÁõ×ø‹¥üÓ ÿ8oÏø‹eü—æ«ð÷Ø‹u ÷s#ÿ›‹ø?¶Ô3þ†ÿsÿØcü £üç û7Œú?ö/6Òñ ÃèÿæÂÿ sÑÿró¿sCp-ú_#þçúãÚDÿË¡”ÿœjÝ?(üûk†ÒþÍ)×ç§ð7”öoްñöo(ç?‡ö/NØ¿¡Äÿà˜°CiÿæÀþ »2ûç2?:„öoìß0aÿ†Ðþ͆ýêÆþ ¡ügCþCMìBû7[Ø¿’û-ÖI´ChÿfÃþ uQÿ-ñ7„øŸ ü½Tÿíx^íʶ°1ÔÿÙ°CœíŸ-':Ÿëmg0ôÃXÊ?òäÐÿ%ë²³§•~DQÿSDýKó¿)ŸO|P1tò€Ñž !•YÙúïÆ2ßÅù§ þ$ö?Eÿ)Àÿ Î{^ýeéÿ§ÃÿG‰üÿ@Ú¿é°Qnòÿéÿ¦#þ2‘ÿHþ3]äÿ·=d±Žc¾d ç?óò÷¼^6ú?ú?°Úa½Ìe½ÅÚ¿é"ÿ?€þoüß@ƒþÇ1¶óíùÇèV¶5qÛ9Côœc÷­^áö¼Ïàs¼å? ò¯ÞëÎøßÀ½Ç1žqÙeÏÇøoZ¢íŒ‡í6ÜïS¹§ÁyGþ3 ügÀ…‹¸Î|µ>žwãÿibm®ÿNóÁß;Î/šýVûÿSÿb}¡?íßTØ¿ymƒ5°1žùHúÿ©ðÿDýkò¿©àýÝÔ¿ö§ü§ëóóÌG"ɦŠú×-Ï[¬ ´·‘œ2æßßEý«ä#‘Ä2ðß?Õ˜DÒÿ%‹ü_$óÉÙøžsÿ7›L•)>IýO†þ÷÷qÏG"É’Á#+=ó‘~ä¿SDÿ·~Ôÿ)ÐÿH£þo°]Q¢ÿ[?ÖNÙ‹ñ.ú¿õcÿ·)y¸ýßú‘ÿNÿíg¢ÿ[?ÖÿM Ã; uä#ƒÅù[ýȦÀŸö;¡øˆ…ú?Eœ:ÈàüS ã¿É<ÿ´¿8ÿÔBÿ7þ¯Ÿ8ÿÔBÿ?þ¿_âÿ¼>{é| ýÿdøÿ~bÿ¯…þ2ü¿ÅÍù§Æ“}qíáüÓ¾ÌÿM:kã#¶óe¦µXG^vþi_®N*³=_O£üT_Ú¿I°}Åúg_Ú¿I°“ëŸ}¹þ9)F÷v»;(W½ó¾ÌÿN ĵÁù§ôÿ“Äù§ Î?àü“xþi?qþií_ì__QAýO‚þ÷½ çŸFÐÿ%Áÿõë?Ôÿ$è„›óO#˜ÿKjk矆³þi¢UÉ{ÒëˆËÎ? 'ÿŸXa{>Cy‡Sÿ'BÿÃÅþpò¿‰à&÷„ÓÿMLÔýƒ]ÞÅù§áÔÿ‰ÐÿƒóOÃiÿ&ŠóOûœÚ‡óŸÀóOûŠóOûÐþM€ý çŸöaü;ño¸©óO?¯üç.öØÓõ¦ÿ_€±Q—ï±wöG½)ÿñ‚ÿö&þÇÿ}\ô¿³*Ô›üg¼®OŠßd=y-ñ|aô‰Õ»WŽÕŸïÈø›—<-Œö/Qä'ÈÿDà¿wòeÏVØ:ñÏéºk²š\â²F@–µìqGVº/P>aœb¢M6ŒpÒÿ6;¿F÷u°MKþ“þÓ[¬…qþ‰~úü€Óé†ñB‚}}ú0jnÿE/âðV¦°Ú‹ó‡ù÷:뫽hÿÇÁþ‡…yæk½èÿÆÅ*¬®kn±e?Ž^œÿ8Ì¿WµV«w¬ö¤ý‡ø¯—}ÿCœ«úˆžäcÁÿz•ȱ®ëÛz2þ+⿞ôcáÿz9ˆ×pÑÿ¾'ó?cSpí¢ÿ}O֎ĵèß“ú?úßÓDÿûÔÿ±ÞºýTçYô‰Ñ±¥ÏXûÿzÐþ©°m¡×¬Ž×ÇG„Ùã¡ÞVŽcþgÌ<‡Ø¿ßƒú?ÆžÿÉÑs«áùŸÌÿŒaþ',1ó³‹g`ô þþ÷ùŸ”ÿÈ¿‡Êÿ46®ÁðŒïPÊ?òï!ò?¡ôÿ ðÿ=ÜäBÉÿÀÿz¸:ÿBà;”ñO‚8ÿbM/‹5†ñX(ñŸþ×£¡1¾C)ÿÈ?ôœ{|wgü“PcËÌá»;å?ZÔÿt§ý ûšaŒï0Ñÿ¡;óߣó1ÞEÿ‡î”ÿèd\ üt'ÿ þ×ÝDÿ‡îôÿ£ÿôöSøî•ªðÝGôîFû?ªÚß½íøîÕ”ã¸ÿmÔ1ü†ˆ_ºQÿG•*|‡œÕñÏ(žÕ#Gá»õô¿»èOÑòùwohß.ó=])ÿQw‘ÿïÊüÇÈsøM7ùÿ®´ÿ#aÿ»9åÿó›]Ùÿbd‘ÊoŽN·X…„k]˜ïéJüLÓßšwWÆÿ#ÿwkz•ó›â}„0ÿ¿)ò_!äñà]Ýä¿BÈÿãÁÿ»:å¿ßG埧ÞǨ)kT«p­3×CBÈÿãÁÿ» þBûû×Õç_¿—ù˜.´#`ÿB„ýëBû7ö/ÄýëBû7ö/Ä„ýëBùöoÅ@‹u í_âðbâüŸ.ŒF þéâxþËúùÎÔÿá"ÿÑ™òùw18ÿ§ûa•›éLý^бçÿÈçëLþ3ü§‹Ãù?®íogÚ¿á"ÿß™ñÿpÄÿ­Æù™îþÊþvâú×ðúŸgl;1þ;‹ë3JöhÿãÿuŽòl;qý7®ÏP옟é(ò3¸þ—¡ã_åg:‘ÿÆ%ªø þÃÉžvbþ3.ÄnOCUüÖ‰ü7ü·³¨ÿ ¦ý‹ƒýëTöïë烩ÿ±ÐÿNâüß`ò¿Xð¿`çó/éK0ñ û×)Ðsþ<˜ë±J_–=h±ö;ÿÿ±Àp•çõü Ú¿a°Á¥ÆëùA”ÿ0áÿƒèÿ‡Áÿg¯çwõV>6ˆþü° ÿDÿ? þ?Høÿ âü ÿDÿ? þ¿«ŸZÏo/ž¿#÷ÿÓôù©õüŽ´CÏ(ì…X±×‘ózÐŽ½NûÔz~Gâ(ðT,~“öh>¸¢õ|—þ«#ùïPðß qþkGâ(ðßÑÍù¯(ÿ!G§ó_ýWòŸ!Ç”ÿö¤ÅÚòjÇz’´ÿC`ÿ;Šú”ÿÈ¿cäÿŸ?ï@üþ;Šú×@Ú¿!°ÜÔ¿Rþ1ðœê_ßG ëŸbö«÷1t‹Å®µe¿Ä@æ¿b q?‘ÿdþ?&Ÿ‡üë÷á2ŸÈüoŒ/~§¡zí‰ÿà?0Äu>±=×£O`\û|b{ÆÑ{T>qÈJ‹5<ÒQ?Û³þ!:Çö|=ò‰íÉÿ¢ÁÿÚ‹õ³ö´Ñ¸.3—OlÇø?ñ§úö|b„8Ÿ¼ýÿàjÜs¯s>±íßà e‚Ï8Û„vœÿà=v›Ð¡Dù£vÄÿ`à¿}žømÚÿÁ°ÿíMç]â¿ñ?øo/ðß–ø ü·sƒÿ¶Äÿ à¿ü·%þ üGÿ½ÿ‡ˆÿ¶Äÿ Býý¨y·%þÿíþ=þ]¾¶Äÿ à¿Àñ?øoëŒÿKï#€øþÛ¸”Ôžÿ£íkàs*ÿÿÏ06 Ã< Ã0L”Ç2µ¢Q„2ÏÃ0Æyœ§J¥(Š˜‡†a˜çaì^)ŠJQT+*E¥¨ô›üßç¾ßÛùìÜ羯»oý_½¼:;ç:ç>×õyÞŸ÷çz:F{ôþ#»#ßä~!áÔ=¡ÿZŠù?áÌÿz"ÿköÿOß· þé ýÓRä-˜ÿõ@þî&ÿkÁü¯ò¿pçù_‡«Ä·©yï^“dÍ«SJA»´`ÿOåF»ÌIŽºûHk^gÿwD<3ÜÍž²ì¯mÁþÿ‘(oçÂ=e£¬ökmNÿï!öÿhNû÷€ý[ÝÿþŸlë8Cß7§ÿ? ýÛÂÅøGsö>™c1þÑœøøoQtücž+¾jNýûd,Þ#F×PÍW¸†6Ý…ë¬ÿ“¨ /ç¾wù½²æÄÿ“ÀóóóY†8ÿ~3öÿ?!Æÿ›1ÿ{ù_óÅNz¯°¾•</XCßäŽxùÿ‰…öþ–vmÆýª›1ÿ}ùoó½¿Üù[¹ÍXÿ'"÷†wœ³¦ ¥ùï‰Pý~ã7ÃÈOøëõ+äÙÚÖºßs~ £þïýßLèÿ0êÿîÐÿanôù¿;ø¿™“þ/Ê/aìÿíÞÝð£'¡ý;!_kL~ cý»£þÍDý›²þÝQÿ°3ÿš_\öŸ6¥þëý&ö?oÊø× ñ¯©›ýÏ›ÒþÝ`ÿ0WûŸ{ùPSêßnm6™Ñ"êîCÄSSâ¿ðßÔƒýÏ›0þE!þ5-ºÿ¹Ëõ›M˜ÿG‰þÿ&´ìßÔbÿó‹Œõ›MÈQ࿦ŠýÏ›PÿDAÿ4uÚÿÜz¦Æä¿(ÁÉQà¿&.ö?o~ÕàÀÆôÿÇáÿM;§I~nÌüçqä?MbÌãiÎã}YÿÇEÿ_cê¿Ç¡ÿšZ¼ŸÞO|ÿ£1×??Žãâ7Ë Näû…rüãqo”Í–e™÷ö.Ú~¡äÿ®" eþ×ùocçü×ñŽeuþ5ràPæ]Ûëgünçï7†²þ]QÿƲ¬Ø—œë\CÙÿßUŒÿ…2ÿëŠü/ô²EûU?xÛ÷”Ò÷–zö›i3GÖäþR ýÏhÄù/].ãbÿ§FÿìbÃù¹.ç"Zì¥ÎWÑÿ»ÀÿCÅü‡FìÿìÒÇnæ?4"ÿuÿ5RÌhÈñÿÇÄü‡®—¢î¶7ÍhHû?vÞþ~–ñ¿!ãÿcˆÿ EüoÈøÿâ#ç?4dü,VŽ|%$Úhÿ†Œ!þ7²˜ÿÐý‰ùaûO4`ýåü‡P1ÿ¡û?ÍÃóÄü‡ÔBÿ5ôhþƒ{{7`ü{ñ¯¡˜ÿ×€øøoà<ÿ¯ÐÞ Èÿ¶Åñm÷öáüÇGý {?v=ênÛô¢íBýyÕþ~–ö¡ÿGÂÿC²Œ÷aü‹Dük♽CÈ‘àÿ&ö®{ÍhóöEöÁ3ýíBÿlmØ»‰ÅøS}Ö?ÒÏaïFÞ†½ëSÿ?ýrÃøíúÌAþ²üßÛ»>óŸGÿ„ˆõOõ™ÿ<‚ü§¾óú§B{×gü{ñ/ÄÛ½½ësþß#†½#ó£î>U´ýë1ÿø¶ýý,í]ñïaÄ¿zbýo=꿇¡ÿê{¸þ·õïà uþtØ»¶øþ{=úÿÃðÿúÁÎö®Gÿ8Ò°wh´³½ë±þ:ìÝ À°w]Æÿ‡ÿëÝ5~».õOgèŸz©ÿ³½ õ`]ò_gð_=±þ·.óÿÎÈÿëºYÿ[—ã?£q¿ëë’ÿ;‡zpô𨻭¹þ7˜ùogä¿u=XÿLüGÿu=\ÿLý!ú?ƒ©# ëZ¬ÿm ÖÿÓþ°°‹õ¿Áÿ‰ˆÀ±XÿÌúG þ{¸þ7ˆøïü7ëß:ˆñÇ â¿Ó9½~FyñßI¬k`±þ-ˆõïÄõoõÄú· ò_'ð_°XÿÄùoâü´þ·íß öýuÈÿ‚ÜôÔaü{ñ/ȃõ¿uˆÿ‡VxùqÔÝû8Þ[‡ñï!Ä¿ öÿ®Cþ{üäáþßµ©ÿú¿6ýÿ!ø‹ý¿ë‰ù?µ©„þ©ãBÿÔ¦þyú§¶Ð?µYÿáÿu<Ô?µ‰ÿuþû·ú»6ñÿ`„^?µ‰ÿÅþßõ-öÿdýäþßAbÿï@ÆÿŽˆÿµÅþßÿèxçÿÙþß.ñHûw„ýk ýHýÓú'ÐÍú‡@꟎Ð?®Ö?<Ö"þ;úxŒ}$ên ®¨EþïþLUã±ý¿â_`¢gx¬Åø×AôÖbüï€øæŒÇàhµÿ:@ÿÖʶÆc-æ?ÿÔ 4Úµ&ëßþ_k¡gx¬Iü·þƒÏxl&ø±&ñß>C¯ŸÇšÄû•ƒÓñX“õo?ÑÇÚqkRÿµ‡þ«ÕSü&Ç¿ÛwÄñÿ5hÿv°M1ÿ£ù¿ø¿¦›ù5¨ÛAÿÖt5ÿCà±ñß.ÉÀãнQw›qþG Æÿvˆÿ5Ôx¬Aÿo‡øWãªgx¬Îø×VÌÿ¨Îü§-òŸ)Îx¬}ÊÀcuöÿ´ÍDÙpk࿲üþìçîàøJÿ¾/Ë^?QVôs[¬¯DýsŸÐ?•ÿïƒþ©lµÿƒÎFw%òß}à¿J.ö¨DüßüWû?Tdÿ÷}Þ8ïÁþiÿ–Ð?ÕÎ| Í\­K›ݶ-Åþ´ÿ["þWŠ5æôU¤ý[.5ü¼Zª³ŸWdÿoË8‡ŸÄ}9þÕ²;žÝUü&íßþ_ñ¦}­KqÓœ>‹½ôŠø»ËñræÿáÈÿ+Šýü‰ÿpàßßÍþþäÿpðE¾íÏú‡Ç‰ø³$ên÷?ðgþŽü¯¢ß¿ögü Güó÷ðûטÿ´ã¿¨ÿZ@ÿù[|ÿ:@|ÿºû?Z¤¢¬âû×Èÿ- ü=üþuêŸ"¾TàøO‹p»øþu€øþuyÆ¿ˆ\|ÿº<Ç?š_ƱøþuyêŸæÐ?<øþuyÎh¾ï`úþuC‘_–çüÇæãð\ñýëòÔÿÍÅ÷¯,¾]žû_7ç÷¯+Šï_—ãøos<[ìÿ^ŽóÿšÝÁýžÿÚe|,Gÿoÿ//ÆËÑÿ›ÿ˹ÿ-Gü7‹Ãý|ÿºã_31þ;pTÔÝ`Žÿ–#þ›ÿåΫýÅüþ/—ZÄ_Ƹò?êŸ01þëÇñß°õxÎ@g©¸ÈÀ¢û¿ÂQ6ÜEl,x?úü¿œ·Elìëü~eÙÿ&úÊÿaÀ¿_–ëøX1¢h/KýÓúÇ/Òä7,Kÿo ÿ/»ÞÀ@YŽ6]Œ{}-ü†8.Ëøßñ¿¢½ÿ±¦›c OSQæ¿M‘ÿ–½cøKYêߦbü«¢Åúß2ÿjÂñ¯rbü« óŸ&ÈÿÊŠñ¯2¬Ô¿ìBU¬QÏ)Cþk’¤·ÑVeØÿÓ$ÇnúÊÿM ÿÊxÐÿSšú¯‰èÿéu+ênmöÿ”&þÿeRÕó%J³ÿ§ñA”O”ó%ÌßÎ6ðXšú§±Ð?¥©Cÿ” sž/Q^Ïÿ8_¬4ù¿1òß2âä¿Æa8¾æÉ7³Õñß—ñ?ñ¿´ˆÿ¾Œÿ¡ˆÿ¾nâ¿/ã(âiâ¿/ù/TÄÿ^—¢î2þûÒÿCáÿ¥=ˆÿ¾ä¿P🯇ñ߇ñ¿‘ˆÿ>Œÿÿ}-⿟ˆÿ>ôÿFð_Eü÷!þÿ¾ÆÚ¿‘ˆÿ>Œÿÿ}\Ä?ÿK‘ÿÿ|\ÄÿRŒÿ ÿK‰ø_Šñ¿!â¿ñ¿ãCÄ?Sü¯*öç)ÅøßñßGÄÿRŒÿ Eü÷³ˆÿ¥ˆÿ†Œÿ¥Eü/ÉøßñßGÄÿ’Œÿ ÿKý¯ñ_Œï–düo€ø_JÄÿ’Œÿ ÿK:ÇÿÂñÝ’ÄÄÿR!îÇwK’ÿt4ÆwÕŠº[ýrÑö÷fük`¿‡­úC¼9þrÇ7Œ÷ö¦ÿ‡ÀÿKöñ¬?Ä›øþˬwŒïT7ÚÜ›ü²ÏŒpßõfü ëŸÊX¬òfýC¸þÉG¬òfþ‚ü·¤XÿT‚ü‚üßÛöïÇwKÿëƒÿ½ÅüÇÔ?õ¡J¸™ÿX‚þ_þïíÁú§ä¿ú] ~ì¶ ênU®*Áþßú¡8v±þIòOqâ¿ð_¢pý“ûþ¹âôÿzbÿ‡âìÿ©—çŒsîŸóYiôϧýëÁþ%\¬(Îø_ñ¿¸XÿPœõ¯þ/îáú‡bÄ=àß×ß蟫&âo1â¿îM½~Fÿ\1â¿îE‹>7œ±XŒõ¯›áÀ¢wšÑ?WŒüWüW|©øM®ÿ«; çÛþ7ýÅÅhÿº°q±þÁ‹üWüWÌÍú/êŸ`èŸbìïEü4ðØz*€ûß{1þ#þó`ÿ{/ò_0ø¯˜‡ûß{±ÿ#XôyÑÿƒáÿ^ûß—ûßkÿº².æ¿hŒÿAˆÿš˜ÿ¢±þAð/ç¿hÄÎbÿûÊ¢Q#þƒbôúxÔˆÿ ±ÿ}I‹ýï5Ö?ˆûß7ö¿×î±ÿ+ÈÏ6ö¿×îqýk¸ÿ¿Ùÿ^»Gû×ý5cþ‹vó_êÌűëù/Ú=öÿÖþÕ\Í1ú‹µ{Ä1ÿå‰!Qw+:æ¿h“ÿëø¢¬M©ïµ¿éÿµ/¢üò"ó¡]åÃÚߌµù/Úߌÿµ—â9Ýõ}ñ¤Bm¦ýÍøW;eƒÝ·ÖþfþS»-Žo;͇¶úžv—ö¯mìÿ¨Ý%ÿÞÄsŠîÿX8º˜±?µv—ú?0ååþGÎó¡µ»ä¿Àå(+÷?òyRñ~¬`¬x?ŽöÄ3¬ö?òÁûµÖímÿN¡=W®ìø~–Oþ À½Fþ¬å3ÿ­uÏ?èr¯I8í‹6ѱÎgRÿÕJ¿Ãú×Zn_¯¡Ý;c|[üY\óÑ˲Ÿ#H‡‚}‘à/zŸF‡¢ö˧þ¯iÿ^káþH^öñOg<þë_+ ÃZÍ+9[ë¦óF›¯´ ¶(“¼ ©rÛ ;–ôþý{0Ýôo»4Ÿgÿ–P'»OøÚíY!¹3ʵ۫)ŸMþ«y09EÓ¿/ƒ÷ÐÒq½lÁïÛÛÕÍþ˜N}iÔÒôŸ™YMô6;Ø| Ê£­ñNôo5¶é¬y-ÁÿáÿšýÜ@žÃÿ›¯Ò´×.áß­D§£Z­s4¯6Ão;÷tnŸ¿Èÿ5Œñoí/öÔÈsØìïê…6~{Gû‹õ¯qPÜKÿ¯‘jß«J»{YÜ›áÖÞììýóŸ}ŠØ[»gß_FÖç!p^ràÔœæÉö=YɉwhÿÀÿÝð%³¦æ”×ÛÔÜž¼‡õ¯ž—œ25ÇŽ}žü;¿é¸©ïÀK¾½ÿG]î¾×ãdß…þâƒ÷ÉÓmÕFsØvIq­þi°Y5‡Íº,ÆŠÎG×îÿÕüW»Ãü·z¸Ã^ùqF›ÿÝѰןäÿê¾Æ½ÒþÕn;ì•&îõúçöú“ö¯–ZÔ^wo[Û+ñû¢öú“üW üÿs—ÌJü^m¯?YÿjáÉ)‰ß[Ûë¯óÙký½[Eøm¶ä·?ØÿWõ”Ñ~°ÿ·ª}ÿüÎ £ýò³ÿ9¿ýÁúW-Ú~ù™Öüöõ_ÕÖÖü–ÐÆQÿ;çÉo ø m^AßS8êÞÝh}=‰àºj’ëŠþÞïÌªØ 9Oû¿ƒöë\‡6tûýï¼{—Š|ÿ»P/ýNý[%õ2Öh¿3þUAüûÝõ÷Ï´ß©ª„âØÕ÷Ï„^ºÍü/àŽ¡—"÷FÝõ]ÉëÔ?Ð?¿ß?«¡ë¥³zé6ã_@Ê;¾ÖŽzÉÕøºv›ýÿÆú'í6õo@ žStýÓ›ÐKÚ_]gN+,Kû´Æ±ûý¿´[ôÿè¿ÛNûÍûÑJ/Ýâø¯ÐçÚ-êŸÊÐ?·­÷ÿÒî¤Îœê(ÿ¸ ÷°ÿ¿òb{ýjN:­ß£û¾~Ï|è!à1ˆÏgý+£þÌZ2cÒiñ>ä¿Ê‚ÿnÑÿ+‡Û¿W®ý!øïNG“Ö*âƒ'í>ØÆxþoìÿ¬tµ¨ÿÝi­s´_ó•vêÆû8ÿ©Rzò*ÔM÷C›:ë~èðÁß{Î)~rÚì+‡¹¯wY´Ÿ–P´½£ÿWŠxÒéù1Z7CwþÆü§RW}Ÿ2òðÿÍ3z^®Ÿ×ór\#ÿUh­?æPÇ=óßÒ´öYZ‰×ôï™k?³ÿ§‚?Ê„é÷ÏI±û.ùægæåoêø/Ú>?“ÿʟǽþFLú™óÊgá|RÁ;ÍÔ~é1S«ïx·Ÿ™ÿ—_‰2‰öþ„Ú¦ïÁk?“ÿË'Úû4tΰÛë–·™oôòí×èÜúshû™àwÇ}vú™ñ¯|¨ƒmÜzÉì½ôÇ?Ê‹þŸØÿQ[~ 1îýíŽþ x–cü/gÃïe¿6¬ =~"ÿ•KO~Ó® tÛ¬Ï'ÿ—ÿÿ¼HïGÓûu" ó“ÎP>CÖwþ`<°0†UÖuË|‡&idØç'Ú¿\k;Þízä·P£?áõ¹½}ÚÔ‡/¸÷ã¿ß\3Æ_µÔÿ~y8ß±/)Z5^§ÿû¿éÈs¬¿_ºÎv­‰<Ü®‡À‰ÿhÿžB=tƒüç}öSñ~œÿåc×ó_µÿó«ŽcõüWí:û?ËŠù¯­ëGÝÕñ:õoÙSxžzþ«vø/ üßðlþ«vñ¯¬èÿ¸Nÿ/ ÿ¿á<ÿU»iÌÕ®“ÿʆàØzþ«ö#ñ_\þ£1ÿUû‘õ/s ÷z6ÿUû‘ú¿L&ÞØÿªç§…ïÿ#û¿Ê,ÕëWØŸ©ýÈñ2ÆüWí¦óüWíGÖ¿Œcþ«ö“1ÿUû‘ø/þ».~“óÿÊâøŸÍuµ¿ƒöí_öÿјÿªý@þ/ þÿÁõüWíòiðÿêù¯ÚÄi1ÿµ]NTþ]Æ‹ØÿWº-ŽÕó_µkÔ¿¥¡(2ÿÕåþÚ5ò¿¯Ð¿×èÿ¾ðÿœç¿j?¥îï ]cÿ—ïr”íév~vñÏñï‡Y–ßékñ~´¿okñ~ìÿö Ʊëù¯ÚO1F ÿžüïsÃ^?ã·}œö'оgý}²íõeEßp–eý}Œõ Ú÷Ô?>sqGËù®ÚXƒÃ¿'þ}àÿߟ±¯×¾çø·OŽC l~Gþ÷ÿ¿T9^¯}Gý[êªìþ\°O‚®Oµ|cÿ.í;ö•:hßËÆá›~¼FýS*¿k_Ÿë´—öý¿T’ãÞ&ιĽl´ï¸þ±Ô@ý~ñ›Ô¿¥"qÞËrÌÞbïÏâÍ·ä¿’à¿ïŒõ?Ú·ÿ)yç]¯ÿѾeþ[ùïwêõ?Ú·¬I±þ§ÙÞ¨ü¿ªó:ý¿$âßwêý_µo©J"ÿÿ¶èþ¯.Ç+®Rÿz‹þÏ«ŒÿÞˆÿß:ïÿªýpÊÀæUò¿7øÿ[ëõ?ÚUò¿7øÿª±þG»Êú{'áØ³õ?ÚUÚßöÿ1¢pkíOðÿO=EÈÿÞ6œè¸v…ñÏñïj–56¯pþK Ç÷o´ïÎؼBÿ/‘­ßoüæÚ¿ìÕúû7Vó \ͿҮÐþ%`ÿ«Bÿ\¡þ)ýsÅþ¹BýSúçŠ+ýc̿Ҿ!þ‹ ýÓtYTþÔ?ß0þGü»²PÇo¨ŠCÿ\éãÑü+íêŸâBÿ|Cþ+þ»âçŒÇïÛ<þ õOqèŸoòœã|¿¯©‹Aÿ~“éÑü+íkêÿb"?ûšñ¿âÿ7ã,ø±æ»å†Ï|Mþ/þÿú®5ŸMþ+þû:Ú°ý×Ä1àÿël5Ÿç‘ÿ‹éüï_dþ•vËX¿¦å1þyÝ0üåû^#ÿyÿ¾^lí/yÔÿ^Žýµ+©†¿äÑÿ½–ê÷‹ß¤ÿ{Áÿ¿níñü+—þ’Gþóÿ}mÌоbþë…ü7Ïõüí+â_ÿ繚ÿ üå+Æ?MÌ•+š×‰ øÏë£ö—¯¨4蟼Ïüå+êM蟯¨4蟯.;ûËU_Ã_¾tð¿vï6Êf¸×g_f°,üÿ«…EôYœ+}öå,Þ#ôÏ—q<üåüý·BŸ¹’møÌ—­yOwŸ2ù µÖ—þ,û)ìÿÅž‡ý¿\lá3AÆû~áÐ?ÚßÐ?WòŠúËÆþÝÚ©,—…g&ÎWÔ¾XÌó©FNsÅyÿ!í‹X–›åð—¼ÄÂùkÚ]y-Ï(~3œç»â¼÷¿Þ¿[»ìà?í.øï cÿíò)žGüÿÂõþÿÚåõ,wåÔß¿Ô.OdùE†¿„ Ÿ¹Êë=yøÿ"D__fyä?—o{–__ºÁ{Äü‡KŽþ/-ÿ&ž“îœ_ç]4òëKé,kCYëï¿i—±ÌzßÓ.±þùÈÿ.{öý7íRGÞÓœÖÓȯ](Þ¿:Ë„ëõ3òëK^<_ÝÀ"â‡?gýÿ曆_\3òëϳxí<žwÎøÍωÿÿþ/%ý7ó…>§ýÿö¿$Æ¿>oËóˆÿŸ»ÿúœþÿðÿÏ] <~Füÿ%ƿ굊Êÿ‰ã_ŸeóúEM»tPÓÍWÛ÷éÕë²…÷±þ þú¸˜ËÖeû°ì8” 5ÏeKv™¿~Jüÿ!ð÷©/ÏAÿ|jµÿ#´Å%o{ÿ¾=wü™ùö'ý§ýý÷©¨ÿ'¬ÿï¨ÿ§‹=™+V_®Ö?iŸÄð¹Ð¿ŸŠþ÷OˆÿßáÿŸ¸^ÿ¤}Âø÷;âß'êïÿjço²¼XÿT¯KTþµ4^gýo£þŸ¨×?içÿo#þRdý“k¾;?Ž÷ˆøu>šç&â9Î럴όýo´óÄÿmàÿ‹ýŸ‹¼ãßmä¿çÏ»À” ÿÿ·„ý?¦ýoÁþç[ãéb¦Ov.ü6Ž÷ÿ·€ÿóBÿ~Lý{ ú÷|GOÖjy??fü»…øw^èßÈÿ·Àÿ»É>¢ýƒý?VÏÿÖ>¢ýùOÍ[Qùß1ÿùˆõÿ õÿ؃üç#Æÿßÿ?.šÿ¸ôÿèÿ¿ ÿÿˆþÿüÿ#‹ü炯‘W|ÈüçWä?YÏÿÖ>¤ý…ý?4æk²þ¿ÿy6ÿ[ûøÿu¡Œþ«kâý?¤ÿÿcäâ2yøÿøÿÈË:ÿõÿÕ1ÿ[;_ÝÈÅÏQÿþê­ßoüæ9Gþ¯Ý¼ûÓT}WžáñíöÿPÌÿ>GüßþϹ™ÿ}.‚å¢q¿zÿCíñSÌÿ®><*ÿ çŸ%ÿÝôEY›gÿAü?·Ü3<žeþ÷‹ÿ:›ÄsKñœîÎx þ¾­Ç?ˆüèâÿçs?áüêRx-¿9Ѱþ?;ö?Ô>\dàñêߟõûÅoFòü@œ¯þßàñ}ÚÿgØÿ¬±ÿ¡ö>óŸŸÿ}àzÿCí}öüt åÔûjïÿ?‰ý«|•ÿu[^güÿ ñÿƒÖj<¾Ïüÿ'äÿx{†Ç3Ô?ëßµ3×xÎ ÏÌrÆã‡× <žaþwùßûÖûjgV²LŽýµ3¬ÿ øÿûží¨!þoÿÅxüFŒOœ!þoDxüh9¯ùñZŽó¬ñxšõ¿áØÿPûàŽÇÓŒÿׯê÷¿y:“çÏàü¢ÿ§iÿë°ÿ¡ÿN“ÿ¯Cÿv£ÿNSÿ]‡þ;­^ÿ®½Gü_ú¯ò#Qù_Rÿ½Çøÿ#âÿéT5ßcüûñït¢gx|ñïG¡ÿÞ£þûúït˜3ÏFx|ñïGÄ¿÷¬÷?ÔÞcüûñÿ=cÿCí]ÖÿGøÿ{ží¨½KüÿüŸ=gàñŠèÿ—øÿ!ÃÀã9ækï²ÿó‡åøÍžÖx|—õÿÁ±ÿ¡v&ÎÀã»ìÿù¡~¿øÍžïˆã;ÿ.ç7œ¢ý¯ÁþïŠñÏSäÿkÐ?ïºÿ<Åþki(çjüSÌo8Eü_ãŸUEå_f>vŠñÿâÿ»Œžbü»†øwªèø§Ëù ï0þ}/øåö~Ÿ‡çXŒž9eÌox‡ñï{Ä¿Sß¿”ýçï°ÿãûE([äû—®ç7¼CûßG¼ùï{Äÿwîºî??3×èçû6ïñ³×Ïøm‹ù o³þßåÙë'Ê:Ïox›õÿÎØÿE{›ý?ß­Çý­ç7œ6¾ÿ­½MüÿÛúûßÚÛìÿÿ®;ŽïkoSÿ×Çêïk¹Ô¿ßAÿžñ*ØÏË>ÇÁ>¿á¼ŸÊ¥þûúïíåF.û¾Í6ú±NŸwîÇÊeüûv¥Ã¯O-5úøsÙÿÿí,<;Iü&ãß·ˆoÿOó\ú·ü÷-øïm¡lÔ?W¡rÝèõÏUèŸ\WúGø·õ¿*õO­¨ü‹Ô?6úÿUÄ¿\ôúç*ôO®·gþCýsUèŸÆÿ«Ð?6 ýsêšáß9äÿ+àÛR÷þCþ»þ³Åzæß9Ô¿WDÿoãÿÄ[ kÿ>µÞðïö^ ³×Ï­Ÿdý¯xÙëçÖ¿O²þ߈ù_'‰ÿo²qÿ,kÿ~Çøþ¹v’úÿä?9Öß?ÕN²ÿï›q86¾ª$ÿ}ƒøwRýýSí$õß7Ч‚ýû‹îF=N°ÿûë;¸/Óðï俯ó ÿ~ç¶³Ÿ þùú Ã¿m†ŸXÈk)xöJñ›Ô?_#ÿ?ñßú÷ Æ¿¯ÿNŠþŸlöÿ|í2nú²ÿóÿO¸êÿþÍúç‰þŸŠÝ¢òϳÿ'›þŸýƒþŸlöÿäÅ¡|ˆgþMþÏý'ÙÔyÐÙý?¹¾†güÿ ùo¶büû8ùï+ð_öBÏüû8õßW¢ÿï8û?¾š‹ç¸ÿ¶eþ}œñï«îöú¹õïã¬ÿWÁöú¹õïc¬ÿ—Bÿ#þ¿Dü?žbíß96ÿQÿ~‰üïx˜µKd™Å8^d`óùïKäÿÇnªýûõÿ—Ðÿ¶gÿþLø÷1öÿ~YÇç ÿ>JþûÒËðo[€³eüÿâ¢Ã¿³Ïþ}”ãŸ_dáÙbýïQöÿ|‘Šó1ÿ“»œßr”ñï Ä¿c‘Fåøïá8çÚ¿³ÿ¿@ü?jSd±þ—/þ]nZTþ¹$^§ÿ_Fþw4QíßYÔ¿—¡Fz6¿%‹üYèß,êßËпYwýûD¨á7Gÿ/ ì9÷óÁŽÿ.ÿ²äþ·n惡þ½$ôïêßKпYVú·„Άÿ¡þ½ý{Ä…þ=Bÿ¿ÿ?"ôïòß%èß#èßÃÔ¿— OxßòÉM£‡óµÏ/ã¹+ ß9ÌñßÏm†ïd_töÃŒŸ§8|çèrÃw“ÿ>ÿ™%~“üÿ9øÿHˆÇó[\ÆÃÃôÿÏáÿGŒïßj‡èÿŸCÿvýý[íñÿôÿa§ïß:ÇÃCÔŸ¥þâÓ7*ÿý®¼NüüŽTûË!濟!ÿ=àY<Èþ‹íõs°þýíõs°þÄøßö\8‡û[ÇìLßÐÿ/ÀÿZûóæÿH2°y€ùßäòÔþ|€þ¡µœãa®±ÿ™¶ŸüüÀføô~æŸÞ4|ú¨·³Oï§þùô”çe>½9¯¥ãÙbÿ“ýÔ?Ÿ.Çùžÿ­ÞÝÏþÏOÛâÙ­6ÜOýó)ôÏþ®ý{õÿ'Ðÿû3Õþ½õÿä”áߥ wßåxï>úÿ'ÈÿöǪý{óßOÿîoí™ï£þùD¬ÿÞÇøÿ âÿ¾Îþ}¸ºáß™äÿOÀÿû²Ýûw&ùï<øoßrÏü;“úç¼ÿÊdþwùß¾î®ýûÐ9ÿ39þs~ ½~ný;“õ?n¯Ÿ[ÿÞËúŸã[{‰ÿoâþtkÿ>xÞðï½Ì?Fþ›ÙÑÚ¿÷2þ}ŒüoïJ›{É#ÿËôRû÷^ꟑÿêéìßï‹õ{™ÿ}ŒüoïUÿ÷ÿ>ö7üûPˆ³ï¡þùèšÃ¿÷åþ½‡ãÁ³Åþ{¨>ÊÄù‰ÿ“]3/ü{ãßGˆ{Åú‡=ÔAÿíq³þaãÿGˆÿ{\­(aø÷nÖÿC±þ¡ø’¨ü\®ØMÿÿùßÖ?ìfþû!òß=E×?¸Üc7ùÿC±þa7ç?~ØϱXÿ°¿­±ÆnÆÿCp¬XÿAþ;þÛí¼þ¡‰•ÞÍ þ;'Æ?2˜ÿCþ·ÛÅú‡}Ë Ê þ;ý·»£³o‹ïahÄÿ9à·¿,Kêmz?ÖÿœÐ?»ˆÿsˆÿg\ð||_OƒvQÿž½l¯Ÿñ»eùgëõÏ'Ë:óÏ.úÿY¡vQÿœ…þɰúþê™i|ÿBÛEüŸþwYÿBÛåÍ286¾¡í$ÿÿïRÿBÛÉþ¿Îãã_ú>õß›6'T\_gÿ®±¿«¶“üÿòß]1ídþÿÁbƒƒ2×;sÐNâÿƒXíhpÐNæ¿ ÿÝ%âßNòÿázý,9Èb º:ßÞÁø÷>âßN1ÿsùÿ}ðÿ7ó?wÐÿ߇ÿïTï­í`þó¾Øÿú^PTþ _^gýßGýwª÷¿ÖvÿÞÿíðlÿk-ú÷ŒÐ¿éÔ¿g w8ï­í6ö¿ÖÒiÿ3°ÿ÷û_kéÔ?g vx¶ÿµ–NýsFØ?ö?û§[ï­í6ö¿Ö¶3ÿ;ƒü/Ýzÿkm;ýÿ4ü»±ÿµ¶üwÚ†{Õû_kÛ©OCÿî.ºÿµ–+Ö_mgÿ÷éqx®±ÿµ¶üwÚØÿZÛí¼ÿµ¶ýÿ§û_k;ý¯µmä¿Óà¿tcÿkmùÿ=ðÿvÏ÷¿v©Ç·Qÿ¾ý»ÝØÿZÛFý÷ôß6×߿жÿï!ÿßîêûBo£þO|ÿâÏï£ò^äuâÿ=à›úûÚVÆÿw¯¡|ªgz|+õÏ»¢ÿg+ó¿w‘ÿmsþþ…¶s‘ ·²ÿóÝD”uÿý m+ýÿ]øÿ6oÏôxû¿Þã_iÄÿ»ÀÿV×ß¿ÐvF~Fýwꌽ~N1[ÆÃ4ÖÿÔz{ýv§ÇÓXÿSbü+ã_§bp µßiøsýÿü?-ÝÚŸ·püû”ÊøØÜÂþïwnãüDµ?o¡ÿ¿cÓンßg|?\ÛBþüŸÖÇðé-Ô?ïÌ5|zÇrgŸÞBýûN´Ã§·õ4|z û?Þéˆg·¿Iýóôß–¼ÿ6ßÞLýû6ôï±ÿÅfꟷ¡6»Ùÿb3û¿Þ^„û=Øÿb3ëÿ¶ØÿâKQù‡¸ÿÅfúÿÛÈÿ7{°ÿÅ&ö¼í‹òú'WŒnbüÏEüßl±ÿÅ6±ÿÅ&ò.ø³bÿ‹Mä¿\ðßf÷¿ØÄþŸ\1þµ‰ý¹Á8v³ÿÅ6±ÿE*çÿÚnØëçÖ¿SY[¶½~ný;•õ·‰ñ¯Tâßý¿ÉÅþ[Åþ©ÌlÈR]ì‘Êøg ñØÿb#ùÏ€ó챑ú'ç*Þ!ÏÙ¿¥õØÈþÏœƒxv¢áßÉ9ë ÿÞšéìß©r¸ÿÅæ‰†odÿGÎ@<[챑ú''çÿ·ý/\ú÷Æ¿“ˆÅü¯ Ô'¡ÿ6º™ÿµñÿ$âÿFæm`ýOŠù_·ÊFåïçü¯ ôÿ“Èÿ7z0ÿkû?N†âØÃù_o‘ÿOˆñÏ·8þy"ϱ˜ÿµYÌÿz‹ñÿD&Ê*æ½Eþ;þÛàáü¯·¨ÿNˆñ¯·˜ÿ@þ÷–›ù_›Åü¯õŒ'üìõsëßëYÿì<{ýÜú÷zÖ?[èŸõÄ6âÿ[.æmã_ë™ÿf#ÿ]ïbük=Ç¿²»ãXŒ­'ÿe·Æ±ã_ë˜ÿf#ÿÝl1ÿë°ðïuÌÿŽ#ÿ[/æ­#ÿó¿6YÌÿZÇøœó¿6ˆù_ëØÿ|ž-æ­cþ{<çÿ·ù_.óÙµŒÇÿÖ‹ù_kÙÿyì&~ßÍü¯µŒÿÇÿ×¹šÿ%òÙµ¬ÿ11ÿë—¾Qù{8ÿk-ýÿò¿uÌÿZKý{ úw]Ñù_.óÙ5äÿcBÿ®¡þ=ý»Öbþ׆k†ß¬aü?ze-æÉ÷[Cþ; þ[[dþ—ë|v õïQ¡×Pÿ…þ]k¥KèüaøÏêߣпk\èßúÿQøÿ¡SÈYпk<п)Ô¿Yп²‹æ³Äüäög¥à¹Ñ†ï¤°ÿ+k¡á;V:ûN ã_Ö@‡ï¬ëcøN ù/ ü·Fìÿ˜BþÏÿ§\õ8Ÿ5ïÙZè/«éÿGàÿ)¢ÿg5ýÿôÏj7ý?«‰ÿ#Ðÿ)®úDÿójê¿#¢ÿçF‹¨ü]ìÿYMüþS<èÿYÍü÷òßÕEû\ö?¯¢þ9,úV1þFü_mÑÿ³î Ñÿ¼Šý?‡SQVÑÿ³Šþþ¿Ú¹ÿ'ÊÊ_VQÿý?«ˆÿÃÀÿ*ý?ë Ÿ~“þþ¿*ËE,dÿó›ôÿCðÿUKbac )˳þ‡Äø×›ìÿ8´Ïèn×&šâMúÿ!øÿª@ç¾g»¦βŒ‡ÿÞ´ï­Ÿ—ýÏÉeûävÑV’ÿÿß´ÉçºÞ¿e%ëPä?+‰ÿƒÀÿ›³ öØuî³^ëepÔJöÿ\Œ{|ME-±’ø?ˆüg¥Øÿa%õÿAèÿ•g,8*H¼/ó߃È×ÚçÂï»é±}æª+Ϭ¡õ˜³R뤷G§ÍgfñâŽo†Øû±÷ßgÒV°ÿïÀeäo$š|¯DQß{øßü¿ÑµˆöwøãôëÔûÄøßëÄÿ¾žzý\ø[ Ÿ {ã?ûq¼ÒÚß–³ÿ7óŽÅþ?Ë©ÿ3¡ÿ_èÞß–Sÿg"ÿYeßÿ5ïgh‚ Ÿ—Óþ™°ÿ둆O-§þÏœhøÔª…Î>µœñ/³«Ã§VD>µœù&òÿ×Cß\Fý—‰üù9KŸšÀ#=]¸?È2Ú/ì¿ÜøþŸ¶ŒùÏ^ä?Ë\ÿO[Æø·ño¹ó÷ÿ,÷YÆø·7ÒØ$ouTþ櫼Nüïÿ-Ës³g ãÛkÔ{ ÿ–Ùç?îYeµ?Âkä¿=bü÷5öÿíÉÀ3œ¿ÿ§­X©û—¾?HDŠV«ýqMöE²¦{Ïßkz>ñ¿ùÏ2Ç÷¯ú»Ò¯±ÿoO[ß–eíïÿž•~x•ùß1ÿãUæ?»oêõ+òþý |ëóv­kç7Bý(^%þwÿ¯M40ð*ùwŠ^}_sû÷©f\kæð‹-©x^RD2¿­½ÊñŸÝãÄ{‘ÿvƒÿ^ ˜“‹g,üfš©m³{N¼žÈ{hÿÝ!zûÏZJý¿úÿÕS–ûã˜ü@ÿ¥ÄðÿªÀÿRâ?ø_êÿK‰ÿ àÿUñ¿”øÏøÿøßHü/eý3Pÿ¥à ñ¿ ø_êþ—ÿ»þ—ÿ»€ÿ¥ø_þð¿„øßü/Uà ñ¿ ø_â!þ_!þw ü¿BüI×ÏÿËþ— ü¿Büïþ—ü¿BüïLÑëïŒÿÔ«Eñÿ ñ¿Sàÿâ'ð¿Äþ—ÿ¯ÿ¯Ðþ;Côö1žõ2ñ¿øåŸáßåúí—‰ÿÀÿ+ÿ/ÿ;€ÿ—ÝàÿeâðÿŠúû¯ÚËŒ;Ä÷_?Y•¿þ¯3ÿÝü÷eõ÷_µÅŒÿéˆÿ/{öýWm1ñŸ.ð¿˜øOþ_¶Àÿ«Æ÷_µÅÌÿÓ¢¬õ÷_µÅÌÒ‘ÿ,6¾ÿª-fýÓ‘ÿ.öìû¯ÚKŒÿéˆÿ¯ßÕÖ‰÷‰øß~S¯Ÿ±_ÙKÔ¿Ûï¿êñÃI—¼Äúow|ÿU{Åøþ«öÇ?¶/dzE~ñûÿ¶ÏÂùöýW—ý{/ÑþÛaÿÅbý׋Կۡ_r³þëEöÿo»†rìú"ñ¿M¬ÿº´,*-×½Èþm+ñ¼>êý¤^dþ³ ùÏKŽõ_ªôþ‹Ì·‰ñ¯9þµ-ÇE×Ù÷“Z"ö?}ü¿üÿ¢‹ý^`ÿÇÖs8ûÿ¼Àúo…ÿ¿XtÿŸ¡®ðøñ¿ø_2×Ðë/ÿ¶ŽÃ³ ÷?C•п±Æ‹mþãßÖH”+²ÿÕó¾Z™æz¬\SО/0ÿÛŠüïóþWeõÜ$¾Ø=½ýßÁ»²ïóŸ´«öú‰{ñÇ^~˲þi¨ÿ ‰Îe}ô²cY–ùOÚbƒ ‘ÿÒDÿ÷"Æ¿4Ä¿‚ íVðÜEz®ô²½}ìß²ƒ¢øKÛÈûÉÿiàÿEyÎï$ñö<ùo î_”ijûƒ=OþÛ"øãyúÿðߢ¢üW¸?ØâåöýÁì±ï-‘Ÿ<Ïþß-‰¸7ÜàžçÙÿ¹e =—²sÏË“kš¹çyâKkÇ÷ _ ›3»€{ž§ý·Àþ‹Dÿ÷sÌÿ· ÿ>«{j»Ï‰ÔüóóÿÍix®˜ÿóû¿6/ű›ù?ÏÑÿ7ÃÿŸw5ÿGðÏsÔ?›ÅüŸ •£òßäüŸçXÿͨÿsçÕüó,ùoøï¹TÏøçYêŸMbüëYÆÿMˆÿÏ tæŸüó,í¿ öö¦5ÿ<Ëüòÿg»íú,ë¿ úïÙLÏøg!õß&op¬èŸ[ÈñÿÔxVškþYHü§ÚPn®{þYHþOÿ?ÛÇ3þYHÿOµ×Ï-ÿ,dýSQÿ…·ÝóÏê¿T?ƒÐÿ7Šï¿- ÿmÿ-\oÍ?‹ÒŠòϳIÿ,`ÿïÆTÜãžÿ6âþ…­=ãŸäÿ¢ÿ{û¿7†ãø†5ÿÀÿ ùguWãÞùŒÿdü3ŸýŸ.ü³è¦3ÿÌ'þ7d:øçÙtƒæÓþ`ÿbþÇ|ön˜‹óÿ;þ™Oý³úgÐ?ó¨6@ÿÌw£æÑÿß‚ÿÏ÷@ÿÌcü{K蟠^§þ™Çú¿…úÏ÷@ÿÌ#ÿ½þ›ï¡þ™GþKèŸyÔ?oAÿ̳Ð?Ï ý3—ö_ûÏs¡æRÿ¬‡þ™+ôÏ\Ö=âÿ<õÏ\êŸõÐ?Ï ý3—úg=ôÏ<7úg.ñ¿úgžBÿÌ%ÿ¯ÿÏõPÿ$Óÿ×]µ×Ï-ÿ$³þëPÿ¹ ý“Lý³NèŸdúÿ:¡’ÉëÀs]蟅&ý3WèŸdêŸuÐ?É ý3‡ü·÷'{¨æÿ× ý3‡úg-ôO² ý³@èŸ7„þ™Ãø·ñ/YèŸ9Ô?k…þYh¡æÿk©æ ý3‡ö_ û' ý3›úg-ôÏœ®\ö̦þYý3GèŸÙÔ?k f»Ñ?³éÿkàÿs\éÑ0›ñoÐ?¹ QùK©f³þkPÿÙçÕý³È)à¿Ù©žõÌ"ÿ§ý3‹ú'úgö@çþ€y‹ ˜Eû§Àþ³\èŸYÔ?)Ð?³„þ™Åú§ þÏ*ª\ö̤þIþ™ïeô¼,âÓLެÎÓëg`r&翬>eôÌ»ìÜ0“õ_½ÞÑ0g¥Ñ0“ü·ü7K|ÿt&ùo5øoVè?êp¹¿ôLÚ5ì?KŒÿÍ þWÿ3ÝŒÿÍ`ÿǪ‹(çjüOàqñ¿JŒÿ¼•ÿ ÇÿfpügÕ"x¶˜_5óÿWtÄñÿ†/¦ÒþoÀþÓÄüß©Ôo@ÿMs3ÿw*ýÿ Ä¿i|ÿn*ñÿ†˜ÿ{loTþ‹œÿ;•þÿüZ€š/¦Rÿ¿ý?õªg|1…ú÷u1ÿw ùÿuðÿÔg¾˜qJ·?Ë2þ½ž‰²âû@S8þñz ÎGÿ7|1…ý߯wÅ3Åþ?S˜ÿ½ŽüoŠ›ý‰ÿ×ÿ)®öÿöI$ÿ/ûÿ«•¿ˆûÿ$Òÿ—Ãÿ§$ªù"‘ü¿ü?%Ò3¾H$þ—‹ùωœÿ·<ÇwùbºŸJ`ÿÿò”]jÍ ìÿ_vÇ7ŒvM`ý—!þ%öñŒ/˜ÿ/Cþ?}½Á/}‘ÀüwÙ\½~_$Pÿ-‹3øbú,g¾H`ý—E8øbj[ƒ/ÿ–Aÿ'Šñ¯ÉìÿXæ‡2Öã_ÿx¼a2íÿìŸ Æ¿&Sÿ¼ý7ÙÍø×dúÿkˆ ®Æ¿D¾=™øMŒå4Ê–ã_“éÿ¯Áÿ'_UÏ/šÄüçUÄÿÉ™žÍ/šÄüçU‘ÿL"ÿ¿ þŸ<Îy~ÑÔ•F¾=‰ñïUè¿ÉîçGN"ÿ½ þ›àÙ|âI´ÿ«BÿL¤þyúgRQýS8whÊm#ŸHþ[ þ›4Ðz>ñDî¶4 Ç ÛO$þ—ÿ“‚Õó‰'Rÿ/…þŸ:±è|ââûé9ÿiw<×ט;4‘ùßÒÖ†ÏLíêì3ñÄÿR?‡Ï$xs‡âéÿKàÿÅú½xúÿøÿÄåžÎ'>šwï’ð—ä™k ü%žü·ü7q¡ÑfñŒÿK âÓüe^¿ÄÿKÀÿ½ŸI6ùËá*ñmjÞû»è|‰ ä¿%vŸAÝÛ¤f—ˆÊŸÏïIL`ü{å6žŸÑ¦–ê{BˆÿWl(?·HU«þ‚ ÿ|Eðßòß+à¿øŽÎñ5!ΘO<üÿ ôO¼¿ûþŒ ôÿWàÿ®šû3æýhå/ãYÿ—EüOü¿ üOH±îϘl›9µæ´æ«´bí;išÑÞã‰ÿ—ÿ …ý¿ó;k>ÍѼ’k^¿®÷gu*ä´ñÄÿËÀÿÄ¥Kf\¿nz?ÖÿeÿÆ“ÿ_Ž˜SBŸ·:1ÉÞ·²AÇþäîÀ¨^–skéï ÛQŸ‡8¿ž}®aãùãXÿÅ·çlüqZÁÜB<'RŸ,ù¯ù›z?œv$¹Fá<ÈNÉýp~žýüFý7tìE¤h}vÚ\/ îÐðw Ôù8~{fÁóh»Zú3poÞ3eV8®Ó¯Ím§ik^ï»ÒãTš¦Ý[l/× åâYêŸÅáú:´ÇµæóímlÁßc™ÿ/öN^uýzr¶ÖmNÈ{ÓÚ|¥un‹2mƒì8JÓçϾrxš¾¶ 1Xïßg?ÞXâÿ%ÛüÃׯÏѺZc,õïKiŽ÷ˆÐÛTþÌQÜ7Z¿UŸ¿ÑáØ½{…¿•:ëü¿Ÿ=–ý_/ DýÄú¿±Ì^Bþ3N_ÿ—l¥+ƒ\ö_¹\ÿ7†úÿEèÿ±Bÿ¡þú¬ý?†õú¬ëÿÆ0þ¿(ôÿ‘ä¨ü9Ôÿcÿ^DüëÁú¿1ôÿáÿc<\ÿ7šøAøÿhúÿ ðÿ1ëÿ&ˆõ£©ÿ_€þ£Xÿ7šüÿøŒ‡ëÿFÓÿ_þ?šþÿôïh7ëÿ&ˆõqŒ/øÙëgü¶Üs‡}àq¬ÿ¢<{ýDYÎUîa¼_ë¿HôÿÅQÿ-‚þ=Ðõ~;ãó ÍÇþ¯Eãp|Íz¾rãß"Ä¿8‘ÿÄÑÿ!ÿ‰Kw?_yý‘7ÚÇÞÿ§óZ÷T~¾†«ôc݇Áïšþþök5Å5}Í }½àä»F½GÿÏÿq±†FÅþßç—e|ª³FEýÿ|œC£Œ‰14Ê(êŸç¡âÄøÝ(êŸç[ãøæÿ´^Ðe¾9’úç9èŸQbýÓH®ÿx.ÇnÖ?dÿÇs+q¿«õO"ßÉú?'Ö?íÚ•?ƒëŸFÒþÏÁþ£¼ÕùæHö>WÇç=Ë7G°ÿïY±þiùïYðßÈÅÎù昃F Áøÿ,âÿÈ`ë|sõϳÐ?#fí:‚õ6ÇW=Ë7GÐþÏÂþcÃ|s’è_‹¥þÖ_¯Ÿ‘oÆ2ÿYxÇÀåX?g\Ʋþ Ï9p9ꔑoÆÒÿ‚ÿFˆþXö,LÁùèÿ¦*–ö_ûþKÿ_ÿuÓÿ1œý }Q΃ý‡ÿ DÿGæ­¨üiìÿÎüwòߨDuÿÔpòÿðldíìÃÉÿ ÿ'ÿ/ÿ¿ë¬ŸãDÿÇ0êÿ({ν~Æø?ñxªgãÃhÿù‚ÿ‡‘ÿçƒÿ‡´ÖÏ£ßKÇöFüÏþ‡‹õ/Ã8þ3¿'Îûýãï%ºì¿JüÏCþ?L¬Êø7ño˜›ï_¥ýçÁþÃ\}ÿZài(í?O|ÿzÏö¨ü)üþõPÖê?,D­w†²ÿ^[ßö¬ÿ"†ñožè¿Žaþ;ùïÐtg½3⢡#b¨ç"ÿ:×}ÿE ù.øhÏú/b8þ=WØ?†öŸ ûõ³î¿ÑÚÐ1ìÿŸŒãëþ‹!We’ïâøŽaû!äÿ䫸7FÝ1„øOvð_‘þ‹±¢ÿmÇÿ“ã¹] m0„ù_r¢ÁÁ#9sðÆÿäîihƒ!ä¿dð_L˜øMÆ¿dÄ¿!ç=^íÒ_süsÎ) û÷¦ý„ý§Àþ£LöïMû'$ÚßÏÒþ½iÿØ¿·°oÚ?öïí¡ý{Ñþ °?Úâß`aÿ^´ÿdØ¿·…ý{Ñþ“…ý£-ìß‹öŸLû?-ìß‹öŸ û÷öïEûOŽÕë÷ßÚÿ)Ú2ìß[Øÿ)ÚìßËýŸ¢ý'Áþ½öŠöŸ$ìŸû0Ùÿ)ÚR¢ýý,íÿí? öJØÿ)Úìÿ”‡öïIûO‚ýûÒþã ï û÷¤ý'ÂþOYØ¿'í?QØÿ û÷¤ý'Òþ½…ý{Òþaÿ§„ý{Òþcõúý·öïAûO„ýŸöïAûÇÃþ=ÝØ¿íû÷TØ¿í/ì? ön²Ú?>Ñþ~–öïAûÇÃþ=„ý{Ðþñ°íÿ$íû?MûÑõ«°ÿ“´ÿØ¿‡…ýŸ¤ý'û÷±°ÿ“´ÿÚÿ)aÿ'iÿ °aÿ'iÿ ±zýþ©ý?Ï»÷'1àbŒó ÖêßÃËhË'¸þmü ¼C¨ëœì ö·éõSçdO0ÿ¿ÜÈÉR|¢ò‡¶æuÚ<ìÿd¸u†üÆÔÿã¡ÿŸô*èØªè·0 {wgÿïx±þ¡;óßñÈŸpÞÿÛÞ‡Ñ+RÇ˳ÿÜ9”ïnÝ?Ðß—Žã4£]»³þã–ã^ÿ"jÕ?Ðöû÷ŠÑû(ºhc¶Áõ%ź=?å;ß;Ö»kÉ›,ÒjG¤<°±Ã`MëZ¡]›ÎÅ|fúVh¦Ûd¦¯Ž“A:<4íøÿ Çÿ‹á_ñšVº„ãoó¿2½5­ì^MkÐJÓWvœkŒá•2­?Ö´û‡ãßóÖϰÿÞa-ì~þ¿`íiÔËOŸ›±æÊ]´û×¾G=orÞB}¾ÃɯO|ÜE{ ¬(ó'Êœ1•¹€ç|o”Yçƒ2i¦2—P&G”©†2 Me¾B™u¢L#”‰q¼ëý£Äù.8ß•ç{ˆó£ôñ'žo#Î'ã|užçWà¼Ïûˆó{ÁG×ç[‹öYwVŸŸÀóÄù :ñüqqþ:ίçù-Æùõp~Ï/çéã÷?终ócq>”ç[tÑZ—-À¬(ƒ6ã-Ûÿ½¯O­Eû¬©‹6:Ïd£+]´Vù¢ Úpt–© pÔJ´Ïú-(³ÒTmÓj¯(seMe~AÙ>x¿Ñ=Men¡ÌXQf*̶’탿Gû:ÊÜ÷ Ëä£L}£Ì[ಸ«ï#Úð­Z(“íÜ>÷]ešêóŠ–9 n¹ï€(óÊ$™Ê”@™e¢Lo}~‚© üì¾xQf”>?ÁTõ¸¯›(3eüLe€Çû‰2˺h£®™Ê€+î+!ÊÀ¦£l¦2ðé–_‰2ÇQf½© Ú¬åQ¾3j–©Lʬe€•QѦ2õQ&Á(³AÓç'˜ÊÀŸZ ~Ø€:Œò7•}Z6eðÛ#o˜ÊÀ‡Z ~ØÐeN™Ê´ê¢…_eà³#S>¾]œï«ß›îÅóÂ?l€GÆñ^aß Óôù <ßWœ_‚ómy¾“8¿Eÿçyaß 98ïËóÄùKzÿ·ã|‹?Åù_ôñ7žöÝüÈæùwÄyØx„‰ÿOv袵ü¿í5b!ï}Iœï†óãL÷v½ϋ2hÃ]MeàC-DœÛ8eBLe`“¢}6‚Gx™Êà÷[ÔeVwÑb/›Êôè¢5í³q—>?ÁTþÚücQæ½ÙQßæ«ÅyðU¬ÿ¨_sÿhÿX3þÁýÍþSÿX3þ‡ ŒÀ*ü<ÖŸïPMœæ‡ß1Ý‹ök^Y”F‡Ÿ7•N›‰ø˜Š:Ï0•A,jvZ”‰G3þq®™Àêó(g*“€2 D™(i*ÿh&âc*øgx°© ø¯YQæ‚>?ÁT¸h&ÛñbØES™]´°[F™Mà¾a™Ž2a«Yõ;+õ°(nVDÿ8âo˜Ð?›ÐæÃbœãKØLQ¸ÖÑ9N… ~ØL«î7ÃZ‰2}õñ{ç¸&øa01ôœs¬oz]”IÐÇïMe[› ~Ø ]䬚neÐvCcešvc{B4MvÑžàÀ¡­Øn*ì» ¾94çE|ß-7ԛ煾Ýô‹>?Áq¾‰°ïfÄŽ3þñ›Mþ7ƒÓb2x¯ˆï›Ñþ1+y^Øwó}~Ï ~Û ˆ!ÿ7ü¿mCþo"ì»y™>?ç¿mÞŽóäÿ&‚ÿ7×ç'ð¼°ïf´Éòcؾ±à¯ÍWôñ{g,6–õ‡ ‡d8cº±ðÿÍxî³ÿãý ÿß‚¸2$Îâ·„ÿo©¬ß;ã¾±ðÿ-àµ!Áθo,ð±~8ø®3î ÿß‚ø?ø¢3îC>¶ÀWg:ã>ô¬( ^êŒûP¡¶€S›ãp*ð±Ü3Øÿ ÃCEüÛ²N¿7•A, øØÍ=Øÿp_¨ˆ[ÞÑÇïMeÀ½DüÛ‚q9þA{4øÙû Zn*|6Ú%ÊÀ6ƒ&šÊÀ }l ên*ƒ|­‘ÈÓ`÷A¡¦2PæQöäm*ƒöh$òŸ4ij¦üç$|§¡ÈÒ‡šòŸ“ÐW Eþ“›4å?'Ñ® Eþ“¦_™òŸ“ð†"ÿIšòŸ“ðÙ†"ÿI[§ÏO0•}Šü' uèk*ƒ8ØPðcî`ÊNB6œ›`ÊNBÏ4ùOl:Àœÿ ?n…M˜ó<»È¶ÂߘóøNÁ[‘ 0ç?à„"ÿÙ _ÀþBßlí ¿;·ûn…Ïö7ãu øß ô7ã"ð¿:¨¿ÿà‡ÿ­ˆ‹ýMøÏ® øßú¼>?ÁT¹bˆÀÿVðiþsÐÆ!ÿ[áÃýMøÏA®"ð¿u¯>?ÁT²¾løL?þs`«úÿ[­~&üç@/Õøß {÷3á?yD}ÿ­ùúüSøz}ÿmeõù ¦2ÀE}ÿmxn?þsê üoÃßÑ&üç W¬/ð¿ yI´ ÿ9ÀW=ÿmÀF´ ÿ9Ð õþ·A3E›ðŸ~ª'ð¿ ¾mÂ0[OàlmÂÞ±žÀÿ6ø~´)ÿφ¬'ôÁ6øy_SþŸƒÜ©žÈÿ·Á}Mù|¥®È·ÃÆ}Mùr§º"ÿߎvîkÊrÀ»uEþ³ï××”ÿä@¯ÖùÏv´s_Sþ“ƒsuEþ³ºª¯)ÿÏ«+òÿí ôù ¦2нuEþ¿}…>?ÁT,òÿíˆmϤ:ëÅ`Ñ?¸ý€>?ÁôðD°È·ƒ‡Ÿh*ƒz‹þÁíàÓgÚšÊSÁ½Eðà3¦2ˆ9Á-Œ2éeõñSpR°ÐÇéð§Mý¿9È—‚Dÿo:|àiSþŸƒv ùz}~‚© ¸-HèãtØæiSþ“?ùO:ÞïiSþ“ƒvú8ºçiSþ“Ž ùO:lÑÇ”ÿäÀÎAB§Ã}LùOž]Gä?éˆ }LùObr‘ÿì@;÷1å?9ðÝ:"ÿÙÑHŸŸ`*MU'Y”Gô‰0•îê eà;}Me ©êˆþñhçÞ¦ü?Ü_GÄÇÀ\o“þÏA›ÕúÇ}~‚© âCm¡ÿw ½Mú?œT[èÿ¸§·Iÿç@SÕúlÑÛ¤ÿs ©j ý¿ãŠ>~o*MU[èÿúx¿Iÿç@SÕú'bL/“þÏÁï ý¿±¡—Iÿç î ý¿öêeÒÿ9àÚ@¡ÿwÂ/z™ô4U Ðÿ;Á}½Lú?u ú'8«—Iÿç Æ ý¿Ñˤÿs ©…þß ß~ʤrÀ%µ„þÙ »?eÒ?9ðƒZBÿì„Uÿï溛øß=\Uðÿn`¥»‰ÿmˆ Uÿ›øß=\Uðÿn´{wÿÛÀUÿïF[t3ñ¿ x©"ø7~»›‰ÿmÐÃUÿïÆ=ÝLüoƒÖ­"ø74b7ÿÛ€»*‚ÿw#Žt3å¿6ı*"ÿÝ ÐÍ”ÿÚ u«ˆüw7ìÕÍ”ÿÚ€ß*"ÿÝ?2å¿6ÄÑÿîAF™ò_ê òß=À\”)ÿµAëˆüwÚ0Ê”ÿÚà+"ÿ݃6Œ2å¿6ÄÞ‘ÿîA{E™ò_´n€È÷ Q¦ü×­ òß=¸çqSþkƒ_ˆüw´Üã¦ü×ûTùïhÄÇMù¯ Z·²È÷@“=nÊmxve‘ÿî>nÊmà€Ê"ÿÝÜ”ÿÚ u+‹üw8üqóø7¸¥²È÷‚ûšò_ôpe‘ÿî…v5å¿6Ôµ’È÷‚C»šò_bZ%‘ÿîgu5å¿6ðV%‘ÿît5å¿6ĽJ"ÿÝ lt5éü ’Ð?{a÷®&ýcCÛWúg/lÜŤlàÈJBÿìE=»˜ô 1¶¢Ð?{ñÛ]LúÇ=\Q蟽¸§‹IÿØ ‡+ ý³vïbÒ?6œ«(ôÏ^ør“þ±AWúg/´E“þ±AWú'šà1“þ±S…þÉ„Ý3é~ß_èŸLpïc&ýcƒöú'˜{ŒúÇ,Ë›þë¬Ç·2o3ãuòøÏw?f¿>nâ/🠎{Ì„}ÜÄ_à?\ð¨yþ¸È_à?8~Ô<ÿ>RAà?¶|Ô„ÿ\ÄÀ ÿ™¨Ã£æñopZÿ}hóGÍø‡ö¨ ð¿<ü¨ ÿ¹ðã ÿûË5á?6¯ ð¿<iÂ.brÿ}ˆ[‘&üçB–øß‡ÉùåE|߇¶4éŸ\Ä™òBÿìCÛFšôO.Ú ¼Ð?ûà_‘&ý“ }X^èŸ}ð¯H“þÉ…>,/ôÏ>àã“þÉ~Ë ý³øxĤrÁmå„þÙ»>bÒ?¹°Q9¡ö£ž˜ôO.ôa9Ñ>û+çh·r¾û¡1á?6/'ð¿±ïþságåþ÷Ã.˜ðŸ .'ð¿6zØ„ÿ\¼W9ÿýˆ=›ðŸ |ù üï·>\€ÿj,?ö;âìßûa«‡õöùÍ~pÔÃy^è»ýð›‡#y^Ôï°úpÏ£}ü*XóÉØæa“þÑÇFý„þ9€û;›çÿ e…þ9€útÎrü^YÁoÀE‰ÿ²Â¾ Ã:/æyßÀç;›Ç¿à›e…þ9€6ïlîÿg–úç|§³yü ++ôÏijÎfý®(+ôÏ´{„YÿÀ¿ÊÊ6„ "ÌúþUF蟃ðÛ³þ•úç þŽ0ëøWÑ>ã3ÿC”ø?‰àü×2"¿;¾Š0ç¿à¹2"ÿ==Ú‰ã_¥…}B«u2ëœ+-ôÿAè•Nfý,•úÿ b'³þ‡íJ ý÷t2éÿ\Ô±´Ðÿ‡€‰N&ýŸ‹ª´Ðÿ‡`§NœÿZZÄ÷CÀs'óü?ý^Áÿ‡àÙûÐV¥ÿB;?tÊñ|_Áo‡ÐÎqþ‡¯°ï!pÎC&ýŸ‹gø ýzû!3þ‘Cù ü‚îzÈ<þ‹ßôø?„¸ðÿàE_ÿCàü‡Ìã¿ðK_ÿCÀöƒæñ_h_ÿÃÀ胜ÿç#ú7£ 4éŸ\´¡à‡Ãà‡Mý?¹ÈO}DÿÏa¼Óƒœÿí#ì{ZäAóüà×Gðãaä†ð^aßÃàä9þë#ú7{‰ÿRÿGàÏMøÏÅ»—ø?~éhÂ.ôx)ÿ#ÀYGþsaßRÿG`§Žœÿ]JèÛ#¨[G“þÉ…ÝK‰øx>ÙѬð¼RBÿ>ëÈù¥D|?Ìt¸Ãó¾G ³;˜ø?¹vIÙ>ÐÇÌó¿Ñ–%Eþ{w þK&ó9°mIÿ#À[óüoà´¤Àb[Î*)ú÷²àïÚZÜ+ô|¿ƒIÿëú¤¤à‡,Äøö&ý¯ë¥’BÿgÚŸq¼ƒ·°olÙÞ¬àÞ‚²Ðví—ò^¡o³ûÚ'ñ¼èßËB¼kOü{ üg!÷kÏõÞ¾YÐÛíÉÿÞ‚ÿ³À³í¹þÁ[Ä÷£Ðcí¹þÁ[ðÛQà¹×?”ý{GQ÷v\ÿPBØ÷(°ÞŽëJˆüî(ø¢×?”úö(¸®×?”ö=Šú¶3ó?žQBðÿQ`¸]wg¼•ís ©ÿ'¹o Ñÿs<ÐΤrÁÓ%dû =Ûæ9Þ³¸ÈmÉÿÅ…}‡mÉÿÅÿƒ¾lËùſߵåü¿â¢ï|£-çÿñýÚ­-ñ_\àÿÚ­-çÿý{Ç€“¶œÿW\èÛcðë¶œÿW\ôoC½Úpþ_1ÁoÇQ¯6œÿ]LèÛã¨Wò1ÁÿÇQ¯6i«ÀýÿZTdzÅúïò\ÿÝ e²,ר[ì\Àg\u¯¢¾_[Þå+ÁiÃÇ´0qL'þ>÷?k>×ñÎѺyë¿›ÇòZà¿ã³r\ÿÞ<Àñ¼Ê7ŠòY9Ú¿Ùm^O÷ŒÏ*•Pï—XŽû4[‰z‰ýßʱþÍæâØÍþoå¸ÿ[3´Oyçýß,¿÷PŽøobì70¯QT~°ÍqÝñ¯™7Êf»Ù3‘|æGÿÿ•[ZdÏÄ÷¬øÌü&öó£ÿ‡ÁÿËuwÞ/±bRÁ^ú·Pžüþ+¨c¡`/Døc Ô•þèÇý/ÂÚâøva™Îšþ>ÍSì¸r”-ËýÏÃüðÌÐ9ó¿×5L®W¢îÝ µë–dÇ^ß]´ji:Fì{÷G~4ÍQÆ¿O‡µ÷þž[sšCã|­—›Ëgsÿ˦xt£Þeiÿ¦°¿_»Ÿñ‹ìYgñ­Ik«C‹>à¿•áþÏMý÷¿fø[â¿ ñïo‰‰}³¾1Þ¯R¶x¿Àeøý“&üþ™Wñ~äÿ&Ô?þ~f>pû~ú~€)õ¦‰w œR+¡ó0ßo€úýJSÿ5æþ×ÒŒ÷+Íý/gòÚ¸‚÷#þ*$Dv†¦Åÿ_;"ÚÓÕ~Åæýk õQiîÝíSFì]šû¿6DZ›ý¯}ÿ#þ—vÞÿÚ¡îå_úèyû>6v}4ë—¨ü@~/Ñ—õÍÄ3'ºÙS’|âËý?C¢|D‘=°·Yñ‰/í*ö§ñåþס8¶Øÿºœýû²ˆåz=¸ý?þï{ªðûÂÐ*ÍØó™Êޏœ¿ïP¡0žß»›Åû¹ÿi£3úýÆ»ø°þP߉…>nÞ—ÒbÏk|V˜|jÿ Ÿ>´£pËùø,Åø×ˆñÏšŸ.ã])~ÿ !üÃG|ÿ¶ù¿!ø¿”›ïß–¢þoýïãüýÛCÀg 3>KQÿ4lmǧ=ÞÍ•_ã¼ãzIÖ¿aÊžSë÷’Ì\Eùõß 0á³$íß@ì^’ûŸ7XgX|ÿ¶Œýû·Íߴ׃ú·$õoèßR¡…úóD!ϳ¾%™ÿ6@þ[*fΚj:vízFßK=êÞ_ãìߘI¶çò}×ËÙ÷õkSûßwgéqÍ~Ï‚/Žëú\?ÖcŽƒe'YqÅý=×[)®û¸¿>#ÈýõÙ-÷7U\/áþúôï×Ï*®+Úz‚âú#Šë}×ퟔ¯¸®À_’ ëןW\®¨Ÿ¦¸_aÿ™µõSøï´?×]ñOþF)®wS<ì¿«ßô ÿÎ?f(¨ßtEûLWà#IñûI ~¡à7¾§*Ú'IÁOÓ7*®Ïüwøšªà×iËïßEq¿‚ß’N+îï ¸ž£¨ŸÂÿ¦(â»Ê¿§ÞR<¿‘âýøšªàç„-î¯'*øuŠ+ýRp}—âý:)®+âãTÿ¨ügªBŸLÙ«h¿iŠç+âGâ/ŠßWÄ—IŠø™¨hß„!Šë×Ý_Ÿ¬xþäúŠ÷S´O‚‚•õWá€âþ²Šú)~²‚'*ð¯àßxÆ+ê?A¡Ï&|¥¸®àß þWØ‚BŸMPäGñq‚"þNRäñŠø2é€Âþ |Å«ÞOßI ÿœ à÷‰ ý7Q‘ŸÅ+ü‚"¾Wà3^âUøTè¾ã{+®+ð¯ˆ_*ÿ§ˆãñkœ‚Ÿ&,Pܯ¨ß8…>VùçØ×úb¬Â~ãñB¼âºÂþcúqBµ‡ÿ± ~«°ßx…ÿQð÷x?WðÃ…¾¯ÐÏ£úuœ">S´ß•ÿ)ø{´¢ýÇ(ì?Z¡Æ*Úo¬¢ÿ'N¡/âú~¬êýñqŒ‚Æ(ì7J៪öSÄ8E~8úˆâºÂ¿Tø­èß­è¿­àב }8RÑ~#ùë(ÅõÑŠø1ZG(ô‰òýþ=Bá#ý#ü7R‘¿Rà#VÁ¿#ü«ÀïE|‹UðßH…ÿÆ*âûH¿TðÛpþbü4\ñ~± ûPð÷0…>±Zq]¡_F(ð1Lñ~Cï7\Áo1 ý3TÏ¡ ý:LQÿ¡Šø«ÈŸ‡)ü{¨B«üc¨‚†)ì?Tï¡*ûªì§àß¡Šüi¨¢i¨bü)f…ûëCöQ´Œ"ŽQàs°¢þ1 ~¢Ð1Šþ¿!Šþ£! |QðÛ`Eþ>De…¾¬È?+ú×)ôû`EÿÂ`>)âà EÿÐ …})ò«AŠþåA üRäª÷¨ÐgãÃü6@ ý6@ÁOýüÒ_¡û+ø¿¿‚?û+ô[?~û+Ú¯¿‚TïßO~ ~è§èßì§hŸ~ªöQä?÷G+ôG´Â¿û*îï«È¢ú%ZÁoÑ ý­ð¿hEÿX_…}¢óO¢ñ±Ÿ¢ýú)Ú§Ÿ‚Ÿ¢ñ3ZÑÿ×WÑþýüܯŸûLŽÛ.(dr»v!“…LÕ4­ð\Ñ¿~ò‘ÈF-¦…Œê¸à¸IÓúöütäS½º>ù„¦„7»ï~ܪM‰49nÂxmè„ “&ÅÄÅÇLŠ›;I¿¬ÕÇ¿víôgM::vXBï ‹>!vrÐø Aãb†Â9þÓ¯á¾'bÚµëÕ«[lLR»vÃ&ŒŸœ3>ç§š ÓÌeFÅŽ;ÁtîáÞ}êTV??¥¥ý’óùû\œoyŸËg%Œ<%ÜqÕê÷OK5í2jÂpËûGLе:3|øàɱ“í¬·g}‹2“bÇM˜[XÌùÙc'*¸<Ùùú䨄ÁÃcGÄ$ŽM óÄH“0j²ÕûŒ3¼ ÐØ ÃbìÄ{Õ·~®£(®·¯ïT;iÒ„I¦óVmlÕ>1Ã†ÅÆ'˜p266Æü<`g< çôLýýF w>7i„³ôóS-δxƤؽ ^å"çãccǘïŸ:).!ÖêL0)!.f¬½mÛ.qrìà§zEô˜7%&!6*6Iu}pD¯'ÂUeFÄu¶£'åô2âeÜ\s¼ˆU}Ì?`…?OÊée†Å¢õFÄ Êë/ä¶ Èò}Tå@\¸zŒ?Ò|mRÑ‹.9]Ÿä\À › qãœßÇÅù‚ò­}ÅÕµaâ“ èepœµïè>18f”îN¿éêZ|ìøáŽ&³æ–aqñ£b' 7ÙùF*®{~¿óùÉ£b&Åþ?öÞ:ŽêŠ^ÉEÛØŒM10ÆŒ‹\°«¬­ÅjHr£­WÚ•´xµ+í¬d›PLÇ1= 4Ó¦š^¦÷^B Á!A€@(@à»mfïîÎì,ùç¾ó}Ç{ÎÕüæ½û{óÞ»¯¿7£°x›¹þPÏ“Y0çÙÒ.渷DŽqI²GŽû ÷&vÒŽ}•å×e&åâçÔÖFËÂAÀAÑqÌOÕOeø…Ë¢y¹èi™¢ÈÍs—°Áoj>^¾výñÙPžrËt*s*wNîN¢KzB‡|qóÃðòq­ržß_zu¿`¼§³…cÎþéÎ1¯°=#—ü:ÉH<Òž€^+·ÌÛºÒi{øg•_—£æ¢ÓM™®ñnoÿΨ W÷çKƒè~¨µº„žXÌ= *¤¤gFÌ“V3¿Þ çöYnú`[Ð4cîàHg–»¿±1è6NC?Óˆg®_Í3d“£Cã5KËÁŸ|\úN‹j3—O:­ÉU]©„­”3ŽÄ1¶ †bí zutf…‹¶$CÉUÁh<š“Ç| :‘©W¶5^Ïò×ÍÔù9Ú-=ÑX*FâíѸC9Ýd¤z0èrB±TÅήX$·þ‰nË*î üÔ4À%1éLtÖi,¯«J+eèW˪TÄtpï2#=á„x;øCÆe?“y‰XvY–(„R=¹yF~‘ö°kÜ|¶óªÏÊZBœŽfúç[²Ö0[;sóÛòË—gZÇi<ÛßÉ&k¬Á¶œy¡åŸ¯žj|ñÈWÇÐO–Èd)(Ëy0=ÍãÁ‡»¼§3/¿7ë‰8”ïNžC_‰ë+TÖZ¢‰`U5-Ęt$7ì ] °²±&K§ªÚz|¦{*‘ Å<ÚmÏÎm ,ÏÏj›¹é¨þ; ãÚDöÞ×ñ$tAîþhK,SMÞµÊðǵ+îSÚ#Ù}?úÁ@ºlÆLŸµV)j>L¯9±”Œ‡Ë0 KÅÖ„¡<Ð5ÑÅ×ÖÎðÄÒX(Ù>O§Ñú¨ø ÷'–®œS·°¦tZôÐu0À$?‹úW¸š©$]) ;^ ¤Bî‡ gn!Š……ãÁVеsÕ·ÂAnkj¥ÂQºvÊ=¤ ®ŒWò"aÙ$ì^r —ÝtAdp™«'Ñ Š ,w­ü„I)‡ÛÂ÷&vÂüPÁX$žŽ‡£*Ë!ù0€È¸ç‘‰5>¡ð{)/­abké—ý¥­w{˜ÆærÈJô[Î<ç?¡6H/Ú"4±´EÂméiƒd%zhÝÅma‰çµeŽá”\q™ÆÒ³Ú1(C¥P–Ke°RŠóöH¸4dbÆ÷tBš”]·K!qp f7Q8ÙÆ{Ë#¥]‘d¬Mƒõ²2\šŒ¤z’ñR3‘ˆÆÛK£ñÒÞxȃ'méø ´LÆr‡ýÉD˜5):š Di*QÚ•€¹ ‚P|Uf4à ÎépFn2ðI’”P© q%ó†›^ù?Švááe.r¨ˆ«-91ŽB±‚ Æj nÔ³IA”:Ìíëñ¬JÜVÒ•Ž¥XO±ÅµÊ1];C+çL+Ûg&~ØGz«º"vœ¸-§º†;‚Vaå:ÅKÖ\Jš_ ž×õJ=ÉåŸk%×›ô\ŠuyÓÃá%· UrÜL7Ý~fúù|8öÇN@×8æ%Þ8„áãtÆiÁZ¶J}x¶¯é^…'–v$V;{Z;|˜©8ëE}ÈbÚ/&;ãÄRÈÉd¢ Û Ë ÃŒØ)GÃ=î‘}¸[‰E[&–r3 #3·r•·`±mê‚f ÔN‘D;c›£Ù8Iý–ù¯RHuéœ9¥Ôö@3à^ y¢@nº*Ⱦ…Égb©Ëü©4k õR7³ÃüõÑjç±'¼*bΙ*îªDsŸÃZ„©?î‚þ$ËzSzi“«¡t"\Ñ-̺Õ/¤sÌc_e9Ç£²œŠ&×­Ni;øÜ‡t1¾òæ`mÕŒàâ@s5õþºÊÆ¥ Ítª®²"X^Yéohú—šõ}M}}ÝWÖ×Õù+EAÝ“Bå‚`•¿)8uvYÐ_埬¬¨äÉ~Ÿ«Su¹òŸ9=‹éàN å>¯þZŒàTò Tù˃SËf9ѲO®Ù~•e6Í¿¤¡¾±yú”|:¶¹O'wwû§95]súýÈKÐû›ó•åÍ~Ÿ¿±±¾1XW_ç÷ †Bí³ñÒ¦ÊòšôýârOì’áÖè/¯Ò÷‹x&ž Æ\°°Ár?ØßXÜæ…xðr^ Æß¼´Áoy¶ïaN‚aÍ JŠt´{µ¿¦¦^Ý×–75ûƒ üKÁ­ª,uÐs^p¾¿ÙÒ¨ 4Uû«²Ýí0•[F¸èÞäo„\Î CÜ3Â7À<äʪrâ…Ù¬ó >h¡¿);ÑórÂÆ0¸J1ó/¶ï-ÓÉ=ÔP*æXÔ îÍ9îó*Ýí*Fži?ªîT²Ü°˜;=‹±vÃ<ƒ$däº×–/ðeç²&ÐdëSrS±´0´H Ej™|~ +j•V£•ÎCk2ªÃµÜ <,: iw;‰û¼*_Æ}㼪ŒûÅú¾¹¼±«‰Ü/lò;†›å.ÇÙk“ö“¼ÀBìsv·ë¡“§üpó)¤‹»ý~…›¿ þÔ„@Õ¯« ÔÍ÷Í÷×ë›ÁÖ¸žþxï¯-Ô®ªk¢ë’éS¦ø,·k“nU òt©å·°1@Wp­ª·Æ@•¯¶|‰ªÞÁÝ|hMuÁŠ@sè¡£¿²¾±Êò+ V,…ˆVCQó7:øOËñ×%(P¥ŸŠðZ€X"kë«Ö,lÊQ¨mvnk³Ú¬†¬Ö©c.5É‚Z‡†®6«‘«Ínàp¬†CÖAb{âáAl3•{´„Í(ã®å­¼î¸3\&׬×:ÝÒ÷Çéø¬œ¯gÝÅ$d_†—Åwõëj‰ _mUYy<,MbŽßŒ\?èÔ¦(<Û­‰ÎÎD¼ŽÏ6Ò= Á’«Èïñõ´X4Å¡¥ÓúdC2Ñ·FlÝD²=IëiZ_»‡b ãÑTúy8´òq_:O÷‘EÎô½mG¾ H¼7KtáZj–ä€ßöÌ WVÀ2á|VáLÿpǂȪòöd$‚Ë â1ƒ‘Ö·¶µÌœîKûµ¶´¦õ§Yφ#!R̸ç€ì{|ˆUæZËìp[Ï'wõ|¼O¨{³#d]]Ë”Ä-;ÞÓtüÐM‡KñK¤ã‹y6[åéì`¤3•‡ÃxG»÷ÄM˜ó¶Â#N—ö£õ–xª™çi÷N#Ô©’5NÛm·7ËÞ® J1nêµÇCø  ¿œIÅÛ# 8'K$Ã.q³£®Ó´2U ³ÀòT*…‰ž}¿x$S¥.»¼[÷r¾q%$‰ß)Õ~X¼ƒtVSG2ÑŽ„°‡ÕæØ8³õÍHk2B>rj‹TòÁ´ôÛ’P±Œñ)Y!|zÏîqM»Rq¤°`ŸíFzÒß@ºÌt?Øjʸ ]ñÒe¶;lí23î{â‰TÔn÷±íš9=Ýv5Õjý•¡®PK†×ÜÈfÔù²Œ.7·=pö3¤ÿVY]‰§8ºÓõo¨ìª| ÇêÂIÍ£UU½äóóT†Ût&Îäv2ÖW65XzYî¬4¡§U7ëa¢ŒóJYì Ö-¬­€é&¸k•õMõóšiÒ‰3Ί…ó}Ä Öù››*ËüÁÊêòœgúÅSû5úi-—Z@ÑÒxd£^™¥‚ËM´bGd<»"0µÁtxá¼y5òo øÉ¹Œ×``2Ž3EŸ„í/_œ2kŠ5e­ª¶žÛ\Ó¬š‘Žk°jü¨ñ´ù!¾µþÆò9v’™Þò`UJ+d¯«Âܶ±©9C·Ê_[ï|æa4{Ëž&¸9P¹Àßl=·>H/†ÉuãÒ`móB¼¯¬¯_¹à_ÂaÛáÊ A£¿ia-­¢é®Î?¿¾9PÎËꢋôíõ1 “c+Sqðƒ÷×Uú­¼k¬¯©©(¯\`ågÂʦ©8?8M•8k·2q«ª3êšÐÐ~ˆÕÒà¼Æòùµ`œ&ò§Åb´yUæÚ¸a<3Ö+Ä¢êãû…uM Ð þ >*®æaéhôWú‹@£©zasUýbLsãb|É[[Žk”øÁ _†;¯'5ú›—Úîºf\QªI¯}°nùÂæjH>óžnùQ†€I¬û¬ç‘Ø¢¡r)XÞ8!掸c µVµ}Ê-g5ÈòkÆœrŒ¿ª±¨ ydáfŽƒUX!RÁæúú`M=V*Û½¹¼*KSc¥Nwe=. K,2‚Ä|ZT^¨RÏ”hú³ÌŠK™^¶{ƒ¿0®5¦Í.+·™nµåÍ•ÕYn‹!! •®Zkä{Z¾¥Õ,º§%ôZsu}UFœ83<y}ºÉúÚT?<² \Wß,ûÁòŒÒ+:*ÿÒ÷Ùû~ªÄg¸ç-ù¬Û¨ÃÈŒ ¯]㊥¬_[1Ëð«R‚ 9ÌpÇì"7Ê´ÅPZ )ÆæËz<ùaßâ'k{U²‰ :+¨i5¥ç²š¡ÛT­2¯äÓ}&'«ðcFRén®Ç÷fË+›UJÙ¿Ê?/PÙŒ» RÅÈ}A´%ð¤ÚzÈwÎinwl?«>’±ÄVlÌF+ÛÒ¹*\Þö TÀ3 ‡Ã…*¼Îƒ‘göiª K/œrCn¥’^¶´]Á½9½Ñ¸Â?¯¾ÑÏX:JÚ?ÈØmRûv€6¾‚å¶“_E®­÷Éɽ"Ç]•‰ò<~¶_ÖZsFü²ý*rýrâ—á^‘ãÎëÕ*n™î/Ú˜‚kýæS…©¨¯ZêS÷²Ô÷`â*‡Åz;-nþþ•þUþéæW‘ëgg¤£{EŽ{†¡Ýý*l?‡Í†Œ8:ùWxøWzøW)§‚ææW‘ë—“?Ù-ËÝ.hÎî’/ääX©AQ•'£·ÑþH†¿_Å“ Oƒ< ò<ÈË ¯‚¼òÈ[ ù ð+Þyßç«Üϯì Ùd9 ¿™‹gj@  WÎÞU•ñ¼Ä»Ʊ•t6ÄçÃr_ñª¼ðpR) VyÈ2.Ð)?ä, @ måׂl¹ÒUé*ÒPñ.ïùä;xÆ ! ðŒŠmAFƒìÏ«0@&€LgW@?Y1 ÒVñ¨€ôT@:* î§ ˆwŒÙ*øUÀdº¢$q­H¬9 äxANøWüä43@ -瀜 ò;HWÅïA.¹ÒXqÈU ôV\rÈM öŠ[An¹ò¡â^ÈËŠ@ÐÖƒ< ò8äMŇ /Ÿ€|ùSñO¯A¾Á¼ú7È ?]À>•E Å ý@úƒ RùZ¹È– ƒA +‡‚l2 ò»rÈÖ Û€@ÞWŽÙdØ¡r{@v›TŽÙd,اrÝ@ÀN•ã@v6«ÜdO½@À~•{ƒL™ ¶¬Ä³S0“¬„A®¼-¾úlO+¡<@ Xúp€SxV«yxñ¯ÆzåóÍG=ôŒ‡‚jÑ®þc¿ðUB9©œ U‰gÊ9¤¤ähcAN¦pVÏÃ:Ò ÒÅõöÌMÃQñÝà/6ËfÙ,›åÿû²ù·ù·ù·ù·ù·ù·ù·ù·ù·ù·ù—óëß5Äç+š ×árÝV®£åº“\KåjÈu‚\'ÊuŠ\§Ëu–\÷—ë\¹VɵZ®5rmk³\—ÈõP¹.“kX®rɵK®)¹®”ëQr]-×åzª\O“ëYr=W®Èõb¹®“ëUr½V®7Èuƒ\o—ëÝr½_®åú¨\Ÿ”ë³r}Q®¯Êõ ¹þY®›äú¾\ûäú©\¿ë×rýN®?òµÛ'×þr$W±·Ø¿[ìß-öïûw‹ý»ÅþÝbÿn±·Ø¿[ìß-öïûw‹ý»ÅþÝbÿn±·Ø¿[ìß-öïûw‹ý»ÅþÝbÿn±·Ø¿[ìß-öïûw‹ý»ÅþÝbÿn±·Ø¿[ìß-öïûw‹ý»ÅþÝbÿn±·Ø¿[ìß-öïûw‹ý»ÅþÝbÿn±·Ø¿[ìß-öïûw‹ý»ÅþÝbÿn±·Ø¿[ìß-öïû'ÅþI±RìŸû'ÅþI±RìŸû'ÅþI±RìŸû'ÅþI±RìŸû'ÅþI±RìŸû'ÅþI±RìŸû'ÅþI±RìŸû'ÅþI±RìŸû'ÅþI±RìŸû'ÅþI±RìŸû'ÅþI±RìŸû'ÅþI±RìŸû'ÅþI±RìŸû'ÅþI±RìŸû'ÅþI±RìŸû'ÅþI±RìŸû›bSìoŠýM±¿)ö7Åþ¦Øßû›bSìoŠýM±¿)ö7Åþ¦Øßû›bSìoŠýM±¿)ö7Åþ¦Øßû›bSìoŠýM±¿)ö7Åþ¦Øßû›bSìoŠýM±¿)ö7Åþ¦Øßû›bSìoŠýM±¿)ö7Åþ¦Øßû›bSìoŠýM±¿)ö7Åþ¦Øßû›bSìoŠýM±¿)ö7Åþ¦Øßû§Äþ)±JìŸû§Äþ)±JìŸû§Äþ)±JìŸû§Äþ)±JìŸû§Äþ)±JìŸû§Äþ)±JìŸû§Äþ)±JìŸû§Äþ)±JìŸû§Äþ)±JìŸû§Äþ)±JìŸû§Äþ)±JìŸû§Äþ)±JìŸû§Äþ)±JìŸû§Äþ)±Šíï›û^ج•ÏQx^Û–¾¢úm/½ ;©݆€~ùzÃÆ¾"ƒ•q=´¨®(Y(جü>ÃÆ–þ¯”þ¯”~ ”òç [úEJ¿Hé× Ç]PÃÆ^ú ˜®Ÿ [úÅg¥õ³~ãY¸ƒjØØK!Ĺ¢Ò°±­ß¥ô»Òú‹1ü#O<ÑΛ«ÒR¬ÒrðjÜe5llëWúÃÓú‡bø {é¾wÎ {é/ƒòYñ½aãÊR‡´¬VÜÕinëÜa7llë¯SúëÒú(Ë•­†-ý~sÓúŒY?:w) {éÇ pTþÞ°±—~ò³ò6ÃÆ^ñDZL¥äm²€ôbÝ­üư±—þ (cU[6öÒ?ò¤j/ÃÆ^úG}«š ÛúË”þ²´þ±~—ac¯ðÃðO3llé÷_ÖgÌú'CV]nØØnTøE*üS «î1ll‡¿A…¿!­<«ê]ÃÆ^úgCü {Å爃¬ac/ýsÁ¦þY†íò9%­Ï˜õÏ®‰ac/ýßc|V6ö*ÿ—‚Mýç6¶õ7)ýMiýË¡óßbØØ+ü«1?_7lìþzŒÏ¿ {µÛ×CžÌ“ü¿¾€ü¹ òdž´ó7½èþ-Ë@ÿ0ÃÆ^ú·AžÌ3 {éß¹ôgØØ+?ïÙúw6öJïýÉÿû ˆÏƒŸ¯ {…ÿ0Ôùà {Åÿ1ˆÃüɆ½ôŸ‚gͯ3lì¥ÿ,Ô©ù« {é¿€ñ¿Ø°±—þËi^Öù¹Nå纴þk·óß2lì¥ÿ¤±ZÚŸ7 è_Þ‚2\=Á°±—þ;'Õ~ÃÆ^éÝyR7lìÕ_ü êlµ”ç¿Ð_|€á?`ØØK¿úôê÷ {é6 ô7lì¥ÿØ(`6öÒÿlüü¢{ýlñÏ? °×7`£À©†½ô¿ƒ<ÜnØØKÿßçW {éÿòüÀ"ÃÆ^ú?Cž8Þ°±‡~¶EV6ö(oEý1üÃÆ^á—`øœŸ„=Æ'EC äñ aúR4 óçaÃÆý]Ñ6PfäòLØ£}.¹Ñç[Ðϰ±Gû\4òdÁn†-ý¥i}Ƭ¿3¤qAac/ýÝàY : ÛñoPñoH냼]p¶ac/ýñPGp{KØKOˆÛ‚¿6öÒŸuª¦Ä°±—½¦·f’ac/}üª@ÍRÃÆ^ù9Ã?ư±—}÷‡<¬¹Ñ°±—þPÇkÞ1lì1¿+ÂSǵ\ß {•Ϫ ¿½ac/ýùÆÚ2ÃÆ^ö ¬Ã¯,6öÒ_e¾¶Ç°±WþÔƒ-jÏ4lìþAPfjo0lì¥ß„ùó‚ac¯ø,Âøÿݰ±WøKçú|uC {ÌGŠÞú<#ìþa·ºFÃÆ^ö Bë$ÿƒ¤·ÒXwac¯ð#«A_ÚÄ^ém›Ö½mØØK¿ãÿ£ac¯ø/‡8×óºa/ýÄ¡~ÃÆ^ú¸RÏóÂ^ú='õ½†íüܤòsSZå2Ð?ß°±Wþ‰éåuBÂ^úGc|þdØØK5ôAõß6öÒ?l×0°±Wþœ}JÃÞ†½Â?ò¤!`ØØKÿ7' Ë {éŸyÒ°Ö°±—þY' ÒþœU@þœƒùó”ac/ýó ¯>5lìÕß]q8h+ÃÆ^㱋 :HúÓ‹6x‡Äí †½âE)è' {é_…ñ9Á°±—þ5sAac¯òvô=nØØKÿFÈ«ƒ>6l쥿ÊpãhÃÆ^ú·ÃŸFi{µÿwn 6ö ÿžÕ Ïë·„½ô qkâõ=Â^ñÁ5Šæ1†½ÂÇ,l.7lì¥ÿàæ6ÃÆ^ú@œ›O6lì¥ÿäy³ŒÏ?* =ùd.è¿bØØ«ü|ŽñáýÂ^åùKÈÛ…£ {é½ôy½”°W|¾[ú’Ÿˆ½ÒûoèÊ|üß_x‡ÿ´i ÿ`ØØ#üâ"ŒïKöÒï‡ñù‡ac/ý'‹¶3l쥿ô‰‹xýŸ°Gþã^í¢E†=Æ«ÅC!¯­0lìþŒ··„=Ú·âm  /ºß°±—þvPƽaØØK×(}aØØŽÿ2ÿeiý ÌÅÜ>¶ô}«ÓúŒEÊÌâ= ÛáûTø¾´þXÔçòOØË¾»BÜjØØK߀4.N6öÒiYÌó#Â^öÝl´˜× Ûú¥J¿4­¿7¦÷%ÃÆ^ñ™‚éåùa/ý2Hã’ {Å&Ämɾ†íòÿEZ_(žexÉbÃÆ^úûŸ%’ÿûú¼õ÷Ãøóúa;½ª¿.N÷×Å¿Zú×6öÒÇ7Ë—76öê¯ÏC}oœ§ô‹Uü‹UüÏÇøó|„°W|.›Æë{„½ô/›Æûƒ„mýÕJuZÿR°Åa‡6öÒ¿×ü¼\…ïÖ¿_ÜÃ.1ll·ÿÃÓúŒYÿjHËa÷6¶õ7)ýMiýkÀ¦‡ñ~"a¯ø¯‡2|Ÿ7 ìÿ!n‡óù(Â^ý×Íðçp^_"쥿ðá¼ÿHØ«?½mèK{‹Øc}µÏxÎëKÅú¼‡›þ=`ÓÃ/5lìe¯{!ÏÔ°±—þ}iOîSñq«¿@ÚƒC {Ù÷!à÷0l쟇炾Ìw{é?m{ðxÃÆ^ö} ×ùÎc„ÿ8†ÿ„ac/ý'ÀFA^_"lç§êú©þèiÈÃeƒ {…ÿÌFÐçó~„íõŸ¹i}ƬMÔ2^¯&ì•?/^Æû鄽ô_Ùú2~@ì¥ÿDb¯—öj?߀<\v‡ac/ý·0þ2y«€ñá;«A_Æoˆ½ô7-B¼¾MØKÿ½u /ý)b»<¨üé§òçCà†x=°W}üÊ@ˆ×[{é Ï ‰½>Õö]§ìµ.­ÿ9ÆçJÃÆ^á‰ñyȰ±Wyø Ê|ˆ÷£ {åç·sA_Ƈˆ½ô¿ƒ2ÖÂçÓÛú*>êlvñç^¿%lÇ_Õß"Uÿe ežac¯þñ'xVKݱ­¯ú—¢tÿÒ϶háõs¶þ2¥¿,­_ Z.4lì1Þë7p ¯¶ô(ûHÛ·ß`L/Ï7 {ä¿¡Þ¿#쟫}¾V^ ìþ¶‡Ö™†=Êg¿QsAŸûÂ^ú;@Úz¤ac¯øŒ?­ç6öÒ ¸•ÏÓ¶õ•}‹•}w2Óú¢acùN?ÓËëi„½â³;Ô‘ð6†½ô÷€¸…g6öÒß âæùa/ýIPÂ|þœ°Wù)ÃøHù/[æ­?ò$Ìç {éï[ ú3lìU~æ€-"|^‹°Wøø…Á÷ôýPæ#õ†íñÀê´>cÖ@ÞFø|2a¯ø×l})ψ½âÓ°ôÿhØØK¿âyß°±—þ’e>_—{ÅÿHcïï¶óg£ÊŸiýe`£6Þ_&ì±þܯÚê6ÿö˜ŸökC}>AØK?Šú|€°W}‰Íý+ {•|÷¼çw„½ô{0|^Ï!쥿 Ãçùa¯øyÞÎë„=Æ'ýކ6¤÷³{…¿âÖÎóAÂ^áãšI;¯ÿ÷Óë'náŸ6jçõgÂ^åó”M ßmØØÎOŸþ*>øKûY†mýáJxZÿ,ˆ[»Ø÷,Ý¿¸Äÿ·˜^^&ìÕ¿œ}bï¿öJï–©¬óÖ¿ú ŽZÃÆ^öºãÃãaÂãÏ~—-ýß6¶ÓëSéõ¥õq¥ãZÃÆ^úW¢>ÏÇ {é_úü¾a/ýkPŸ×¯{é¯(¯Ÿ0ÞëDŸýlì«ÊÆß ߢû6ö˜«öûþDùÝ%¶­7¦õ³~à(¿»AØ+ü¡ýOgŒïô¿‘1žWïÿ2Çß-êÿvÇ÷, cüó™úšç³>¾ç2ð.ÆøNÍ@¶#½/S2ˆ1¾[T2‘1¾×SRËßI)‰3Æ÷YJÎeŒï”<Äßc*ù˜1¾ã3¨„1¾O4h<§Ï:šÏîøžÔ c|Gi—:?6è&Æø.É ã9¨Aÿf·c[ŒeŒóÓ-Ä^xvk‹#†Ùuy Ž'µ[<Áû÷-¾f}|÷dËm9ø^Û–SÙûú-bŒçß¶ìfŒgç¶¼€õñ½¹-ïcŒïÜmÉåŠÞwÌuÎæ žÁÏõ ^ÈúøNß`¶½ß1˜ë½8ø~vÇ÷2ÀÏéÇñ?â0DÊ*žEÂùIýò® tfrÈ©ìŽó©!ØÏ^yÝqž2´ˆÝñ äÐqŒñüäPnh.9ôhÆØ½1ö¹Cog|%b¶½›<ô#®×¸î½UÆÃs·šÂ×··:Œ1®¥oµš1®ënµŽ1® oÅåŠÖW·z—1®íÀ×í‡íÉר‡52Æ.hÛ‹Ö~‡É÷Ù‡q;Fß.ö'Æø†a\®Š«àÏðŒñ\ÁpnsèLÂðIŒq8?‹Þ•¾’1¾g=üRÖÁ=úáO2Æý‘áeŒ{Ãd|àÛ3Æ=¯eŒqg—=ÚÑÅó„¤÷hF¬gŒû)#žaŒ{O#¸ÌоÏÖl_Ú#ÛzÆxcëý8Îø.öÖbk{lÝÃeÏ„o-í3®nÍõ‘Þ5ÞúÆøñÖÿb}l÷)ewü–Â6\&éìú6Œñœü6§q˜¸æ¹ÍµŒq½t›ÇYÏÞoÃå‡Þ›Þvc|'z[.?ôí…m³>¾ °-ç?½w°­ôYxFeÛ{ãù–m¹ÌÓÙ˜m¿bŒûÈ#·fŒ{¦#¥OÄýБ‡3ƽבg0Æ}ê‘Ü~Ò÷H®ï´Ÿ»ô}¸¿ÝlƸϾ] cžµ÷t~`»;ã^ÿvo1ÆsÛý‡1žIÅuœÎ3Œ 0Ƴ£¤Æ÷îGq§=îQW3Æù×(î;hïu÷¡ô=ÑÃã·>FOcÜ¿}(cÜÛ}~{aGiCpßaÇ9|<Ó¾c;c<¿ã¯™‹sáÏb}ÜÙ‘Ç´ç²#ç9½?¾£” Ü[Ù‰ÛZ§Ý‰ë ½Ã¾S9»ãzìN!~¾+´è&;ý1¾#¿“Œð<ÿN2À¹óégñ=ô1<Æ£wÇT±®‡Œ9„ÝñÝ1Ò^á÷XÆüž1~Cc Û…¾_1†ÛsZ»#}%¾×°óvŒñˆ¥œãþÂÎÜÒZîÎÜöÒ7[vþ-ëàÐÎ7³®oïÌã%zcg/ѹ¸±[1¿90vëàû,c9¯èÝ™±ÜwÐ{caŒïŒŒå¶—Þ7»‘ÃĽ’±or˜øýœ±ò,Ü*å±퇖ò˜‡Þõ+åqíc–šÌÅo’”²Ýi}£”Çiôm“RWàºV©”7\/å|£õ«]xœIïÎìÂý,­ïÂãZsÞ…Ç™ô}•]d‹ï^í"e¿S±Ë#7Ü£ÙåmvÇï]ìòëã»i»JÝÁ÷ÚvË:øÍŠ]¹ŽÓzÔ®œ.zWn×óX¿³«´óøÍ“]ŸfŒßߨõÖÇwñvãòLïñí¶‡‰kò»U3Æõ±Ý–q†Ýq=ywîkh-zwÎ+ZÇÞë>­ÙîÎv§õÞÝyþBkÅ»K¹Âuõñœ?´&?žë#­ççþ‹ÞEßËùŒûÈãײ®ÙŽ¿œ1®÷Žã‰ß°ÿ»ãÚÅxÑ;¸Í¤óÃxLKëxLKû€dL‹ïhLø»ã~ß„;X×&¼&ž5á{Æ8Oßc4c\+ØCÆB¸÷·G »ãZÁ‰"è |ôÛã8…ÏSx½Â·ùŠ,ü€rRá—”ÎgÊý‡´ûžƒ“ÖÙs¼ÂeJg‡)…{>FáÓViÙó …ßVøS…J㽆*l¤ã³×¾Ê½IáV…“ Ÿªðe ß ðã ¿®ð{ ¤°Šó^_¦ñÄA UxZ‘ï' W)¼Xá¨ÂÇ+|‘Âë¾KáþPáÒxïa ï¦ð …(|¸Â= ¯QøB…¯Qø6…ŸRøU…ßWøË4ž´…Â;+¼—Âû(ìW¸Iá…»Vy;é\…¯Rø…ŸPøm…?QXåóä-¥ðž ï§pµÂ‡(WøD…ÏQør…oWø…_Vø¯ «<ŸâSx°Â;¥Ëð”Ý.Sx®Â*|°ÂG(|¤Â')|ÂW*¼Aá‡~VaUg§ô¥ÛŠ©>…G*¼§Âª­›Ú¢ð …ÏPx½Âw)ü‚Âï(üM—Pxw…ç*|¨ÂÝ ¯Uø*…QøE…U>LSù0mW…÷Sx±Â½ _ªðF…_Sø“4ž>Pa•Æé(ܬ°Jãô3¾Bá;Viœ®Ò8c€Â¥ «¼±T᣾Há~@á?)¬l:s°ÂªŸš9Cáj…WX•±™§+ü…oUø1…?Nã}¶RxœÂå /Q8¥ð) +[ï£Êù>*ÿ÷yFaUöùHá/þwÏ¢ð…ÕØcÖ|…ƒ «¼šu–—)¼AáWVåsÖ·i<[‹f«z1{¶Â)¬â3ÛTøD…/Vø&…Vø …?Kã}û+¼µÂª\í;Gá… «rµo‡Â= «°ÊÃ}¯Tø>…ÕØrß¿(üUï§Êÿ~*÷›¦°ªûû-R¸]a·ý~«ð:…oQø9…ßUXÅmUÞöWmÑþªnîïWø…“ «¸í¯êéþ(|Â)¬êÈþŸ§ñœ…wVx_…U^ÍY®ðI «ò?Gµ]sT£â3GµŸs”Mç|ªð¿Óý鯶TxœÂ³^ª°©ðo¾Ya5ù•cÿJÿ­ðÞ —+¼Xa5·:@+8KáK¾Má§Þ¤ð÷iÈ ‚|Òò1È' ùä3ÏAþòÈ— ÿù äko@¾ùÈw ߃üäAþòÈÏ>_ ”_h"}%Å ý@ 2• R‚{¾ [€l 2dÈP­@† ²5È6 Û‚ŒÙdÈhíAvÙd'1 ;ƒŒ)ÙdWÝ@ q »ƒŒ™²Èž {á¾3ÈÞ “@&ƒL™ R2 d:È ™ û€Ì™ ²/È~ ûƒÌùÈ sAÊA*@*Aª@ü ó@æƒTƒ@YRƒûÝ u õ PÿK þ—@ý/ú_õ¿ê Ôÿ¨ÿ%PÿK þ—@ý/ú_õ¿ê Ôÿ¨ÿ%PÿK þ—@ý/ú_õ¿ê Ôÿ¨ÿ%PÿK þ—@ý/ú_Ò‰ûì PÿK þ—@ý/ú_õ¿ê Ôÿ¨ÿ%PÿK þ—@ý/º_u¿ê~ Ôý¨û%P÷K î—@Ý/º_u¿äH©#ªzó€Ô¥û¤¾Ü~¶]”†‰7¶eØÄñ¢¶Û/«Í’6 íˆmÚÕnó°ýÃvÛ¹#¤ÿQê3¶7l;Uû†i£¶êB®Çù[Ée)§ ^,ùTyÞ!ùݦò:š•ßV¾¦8o©½Ç|%er˜Ô)«¾ì+e ʶTþ±¼N’ò Ê Öe,OÔ&üEÚ l¬6ïf±ÓJnS°,Qô”´/ÏI[ò'i+ -Åz‡í.–cj¡}¦ºunÕ.|-ec®”¬‹X¯±Nò+åÛ]¾±Ý¡úP&uë ¶X¿°^Oæ6ÛlS©ŽávëµíÐÆaÃöŽêßÒ~½$m#´¹ØŽ`»LmK´qЖQÝÖeÛ«ÞëúŽõë´UŸ±.cÝÄ6Û>h© Ç>û8ì±ÏÃ> ûì[°Âþ û4ìï°ïÃþ ûMìK±ß<ƒëö³Øa¿‚õÔž ázHýúa=Á~ëö}Øbÿ†}9öu¨‹}´Õe÷3Ø·X}Ñ;éºL};öµØ?cŸ}*öÉØ×âøû_`Œã,‡2.¡~Á¥? >ûIé©­‡vû`»]Çv\·áÐFSÿdõIØáxû{é°í¦ñŽ!0qÜcƒàxÇV?iõ‘Ø7b¿hõƒØ?BßÈ}T©/ìì¶ôÄñH°# G’¾ðªX8h¦zZ‚-Ñx8oXxƒäÕÖo Ɖå=]¾`S°5™-®4ƒ=f¨=â šf,ZlM­ v…LsE8ØÚŒÆ{ËÓž½‘d´ tB±XK¨u¹åMÁ;C­V\thY$3ó5’LÙ-¦s4ÀyIS°.’ ›šjл"PŒ$ÚÝÛ0 gŸd$âè¬ps‡Lnk‹$1Ì`k"´¦\UÛ¢1×ð]#%~yïŠAý’ãŽf°3ÒéìCëZ4#¦MăQ—@ÏìèI…+⎠+òElE2šÊÍŽÊ@Cµ¿1Ž˜­ÉhW žî¦ÒN-ÑT®ñ+ëk‚¡0”ŒDgWR’ÐIu$r“QÙ¼„UcÑH<¬,wÕˆ¬L%CÁÖŽP4N¥ÒUQ2ÍÑß®­©d®¹I£#Þ]Ého( .¬rÖr£·ÅzÌ+ Yƒ*N¥=0CC]]Áp(rU  i¦I÷0ì¼ Æ¢¦s>¡Zdeþ'?–}h«"+]•:a÷ˆ$¨ü8çúw÷Dá¯k ¶Ô°CNõÈR±*J+´q‘ü‘JE;#‰÷l‘Æ.éJux)¹>(–€(‹R,Ñrχx$¦:»‚MÎeß©í÷àŠhª#_ÍJF:½‘¼5ý‚¡ÖVH®—°=áò­”ŒÄ#í‰T4äÔ¸Xºl§¶ž˜s-b–`‡cób+¸´ÈÙ ñ¶´ Š8Õ/м=2^þ˜wFM¸ºûÇ{:[°—vó7 Œ…”u÷'¹KÓ«-2½Û"[%k„á®íꀮܵÕ2 kÜP-i õÄRé1Jáš0àŠ$ó¦Û¢HººB©÷\Ì×ÌšùZPÓ£Eÿ®ždWÂtçКÞ-¬Yx «U£8ˆ§ ãvW… äbžÖ)ƒMþÐx†›ê´·wáC½¤én'ñ/  dOž‚ÉeÆÃ;O™½S];(ºÁ»,pºdª8‰-=è“ -C+€ØDÛ¢­nml–Ž ÷ Ò]±·lškžõ–¹{9³ªªqþºù:°e•Ó€]f¤'œÈ÷dí.>©PªÇ…En—ÀTUSgNÉõi*wnlУ†¬I·yj“¿©)P_líÌÍwËÏ1dË3ï|T+¹ q²tÜg“Z±3DM^¾YÓ8O§aƒ¥ãÔ°[~0ý»3É7Øæž«yÏZÉ+ãÌÂòÃôÊ|Ã(¸@è2‰DÏinžÍ5M0qñÄÖfÑ´ Is0\uôÖ•CsC¶‚1"v›uª<š‰x$Ý¥³FSs}£?½Ò“Lâ4Áq¡ÈAß¹ŸpStž9©»8KÕš)¢WPTó.Õ¶XÈ¡UŠ´DçAÒqXS*=+ß¼&KÍy¨MJŽ-ù°]\hâ™·0¢Là{ V:ö>¶R<‘*oK9LäµFE¤Íim«˜=-GDZSå±T<Ì%ç”bž8ñÀ gä`'çŽ(KÏK'o0Ö´Ê;ºtY~Ê¿.Ì㲤,BpÚÍ fg¨N†Bõc¨‡Ëà®±ÎÖ€îѲžÈÁÒþESsc n¾t’Ú%‰·cS•¹ËÁK¼xŽ'¢êhbú,¢}ø0ßiÃÌã…ç ¦Oªc€®çþrú©Ã{•Kš­ÈÚÛ’™ûy7óï4:m-æì%ænfíºl:ïºnfïøemñá^œLŒöÚ&W®XÓ´sm•ÌÝw³·ÿô~mðÑŽmá¹ìǹlÀ¡379–;¸E’1,w0û¨ñ³Cp~ªƒÖþƒ]©¤8`ŽÞA*—ÎPr9-c;C+=ÀQ{ÄCú.Ñ¥ïLȈ³¢¡±[Kå׬³£™no°¦ömYn«"¦v‹l‹%É×ÌØôÀì‰V½B½ÊÙÎF°uBÜp $Cïô½ÙkÝáAkƒñ„=J$×¶D²Ó‚ØÜadäžæ²VH½Xw:¡âJa÷´Ú“‰–c;·]tmDõ¢4nZíÕw]Ywq}k*OèÖd}ÝrI÷ŽäÒ¦&ûZ÷t\U9˜¡¶ˆ¹Êä†D»tB¦%Zm·ÞHP¾ÍN˜µ :јº&ôMoF<Ñ©3‘L…4!Þ«nºr =9NaèÏzaÚÛ–Lt¦]uRø®,} 9”ý`°J´7ã6žyÛ•}ϸﱼ{iç•!7c4¤No¢ë]óÌmòô¾xöFxöÎwöV·ÚÛvØÌV»×ÛÕ9ûÓjC:½»åLë¤'Æ•{ú˜x–#ÇŸó—¥ØìÝílOý,Ǭ¥rÛ9wÜöÊPÌ>Åm»S6XwÙDZ3ܳ¦üÚÏžÉg9ªµOí“=eÖ~öäR;fNÐ|xÖoy¸œU¶¼iøcÝd(¶Ü³Oƒæ¸çÍÐÐë'.¹èrÂ3¯·¤:éežåÔ9æÊXãÐŽn–r[‚Èð×'!µGމW²=3§þ¾<ç×NÖd?×-»eÏUÝ¥ ÑžY3OW/jÆ$ÒÅ#ã  ›NÚ7ãhŒvHWpÇó-Y•6÷ˆŠ“«mÏŒÃ(ÚA¦'9NtìD»æ”ÐÜC!N®v ¬½W¹M¬×.«¥“wk•”r÷Se!%í—±sêè¬( ¿K£/»¡­‰ßdÍ¿ÈÑ-sÿ‘\zÄ"鲓¹½(.V±L;äìœ]>ÛÑ¡tÚ­³Üs¶è,™,Ù·ºà(‡ì3"ÑðÊ ¬BomÍÙØÞñ²\rwË2|r NMiz3̾SKÅ–[N¾gïd¥Ý³×K¼–[n;èØ‘:ì!YÎ+ì(gîû‹Óf푵ÃîvCÁ{1Œdo’v^dlµCæbfŽ“ªF¹[%–«Ç~Û­ÏvØá°œ3Š © ’ÆåœÑùºu¼Ù[ ¶›~@FaÉ×M›Žág×®Ù½[Îê’³»cç®Øa•Ýr^a'/3¶*×sŠK)pêìW£<Ò%Ù¥÷w[lvöË .§!q^KvòI”1Øâ¥bB¼°Ö„§"§iãªC’M§"³ŽAfŸ{ÌsÐÑád£çQF÷³‹^‡óNt=Žè~þ0ßC÷†ŽG Î:t;%è|,PÌ<øçxÒÏùhŸËé:×ãtŽççœÌå?!´ò9(‹+­˃m¡h,Ó¥½'”„B—sj*çBg¤³µ ªj!IfW¤«…·Çd‡a9oŸÁUvÉ >4H†+­gÁ5ŽM^³)sr¢Õœ\ýÚäò®®X”§¥M=]]‰djò¤Ö®P|2®:‡'/©­Ù»!”ÞÞe“¦OÝ»²3íœ2¹.’Ú»‰vYöž:iÚÌÉ>¾™ÔúñòìÊr¾³»÷“µW”ç­çã ÿ“󠯢äžt’4®t9»ãy8(ÿY±_xb?ë ûä399oõ„#“Í4q‘ÉRô'åî)´‹ZÈ~¸ËV»Ë!ˆ¼‡I 8-“÷Žë¹³‚Ïcæ;¥‘ïðšã±K·7Ú |¨ —‘Üe»¾ãRÈi¯Ã7yOôòÆÿäMŽÿãwiÜ͹¥+à0g¾C§^ßùð< ëõês!¯Üæy³÷¼’\À ή|Ï/4´c›–Š+¿à¡ü¢Ï´¨WÈWä÷ýŸ«Âëã¿èû¿è“®eÕëÃ*ùü]?]“·­+äkyÛ¯7¢ ~WÐS¡Ós…~  “t! À£ˆ¿ð; žòùM™B,»ÑÊ{âÒû¡çQD÷ŽyŸ\À)Õ|‡\½ÏÝz÷-üm×cÅzüE']‡hyOUòj>?Ï—\]= ~_×ëí¯¨y¾¶àÊtz7;_?RØ« ¾ìàþ¶DÞ7; xe%ÿ{/v7çò™#ÏWz¼Þ@rz,ï‹c¿ì{'¨ü÷ß0qí <¿ ãÞÞú%B¾ÆSà…ò˜È:WQø¡ÙÂNµæ~Ó%z~"¯Pµ¿ƒ•ÿ³}^ß”ó¬¹9‡B\ü 0a_Aôüš¢Ç§ɇ"½¿KYÀ+°y#\à{¸…¾Ð[à›Áy_1Λ}}´Ðo‰æýTh>?·Ï¼ÊFŠ×¡w¦ëSÿ«ïÃòaØ|ß~ÍûÑØ>>ëñ2¤Ç«Ey¿±Ñ”ïëMù¾ëáþ½§9¸(÷Gî_µ-ä“F•©ðïý²ÏüßH(@%ÿg ú–Å/þ.†ç76~Ù‡?òÔ£oƒü¿ý‘“ÜÝÐÂÔ½>k“Þgt÷ôüÀHAŸýø¯>6ã°©ì ÿ¿ü6Ãþ©‹V¾ÏªäÿVX¾kð5°¼(sÿÜ—Ç'È<>`–ïcaîŸ'sýþš÷wËœ½þ—Ÿï+à[„|$ñ}ø° /*æ}å¾ÐðÚ}A_Rôúcž/zöнírÿø¾ã›’gü<>~‘ÿ+n~^ß1óp½>»PÐGïòúÍi éúqˆôyE‡DûýF§û‹‘î>¤CL¬ãfùÿ‡„Sâ úJñÞŸÌÿIè<:n38=C¯ U!«ðÔÈÿ=Œ¼žî§ß³ÿ+¥BÞÔvR!¯ÿB^‰wN/²ÿWj…½=ŸÛg¾‹îäëP̾Ìâ8¶Îj;xǯ2DÜ¿¸áàìú‘°˜Ó·Ç\vVÛg·–×¹«Ë~³ÅÁ»ðÑàþšƒrÿ¤€ÿÊàõL\ÿ‡H!ÿ"ÿ'Äó~*û¿úж“»ýÕ8 ˜“Z øÊBö 6ç…D¯o(¸u!Žï¨ý÷<ðøhBæ× <ŠœÓlŸY(4ÄÿùÿÚüÛüÛüÛüÛüÛüÛüûý÷¿?û©Äç+êxÈ`Õ|¾“Ä{•Å>_0Øì_ÒìÀYýïñ¿t+þ‚´JœVËoõV|=ïù~ö}FÈý}«õm0h®êlIÄèßeNÍ o»w8œ²’ô}‘â’ðÚáµÊLÙ9~Õïsx+ëÓ÷ýTxÅ™¹€áá°Õ5½§qê:JÒ÷:¼ì_ÿ/¨ü?ÐÜð&ìÇám5$óÞþåä_O|E4¦“háÍÏüuÅéû¬³âé€A-®s;¦wS€Ù£ç¥ïuz¡Ü-Óáa¹›U„áT•7—+«¼ w¾Çìì'ÂñˆÇ¬¢BŸr o´º×¶Äò1Mœ`0ÊÞh ï‚-Ò÷:<ŒßÌŒðZL=(ÎoÃ…YñSiß.ÓøÃ|«¦pju üUËë$Ÿ¦eÜ1®ÈŽ—kGyæ™Çœ°zçКöö«?h-ÙçMÿ®P5§Û‹Ap¢x³àþî±îƒý}³¶çzáLx³¿ïDxÈðCø6ÁíLƒp¶À2"P>#;Qê×qÐ_4»²Á‹ý,yzÚ‚…Þ#ŠE[P`B2iʤٓfM ¯‚Û‚y¼æŸIEÞÅëW\D9¨yGNšj?)û9ƒ‹ÎÑoZe¦"“*Tô6ÿ6ÿ6ÿ6ÿ6ÿ6ÿ6ÿ6ÿþ÷[X½æƒê5‡õÕ¬‰|Q³¦ó»ê>-­^óU`Í«ÕkV¯[]}ÒÆa'žšÕk}5k;FNxlPõÚAÕ'=•jú¶|Xqª¶zmQõÚ†áÕkËA}¼ÞNÍšúsßìúiVß>¯ÁuÍÕ§7 ª]³©fÍÇէϨ·©ûŽ•acWcDä¼"áýü*ñjÖüµfÍ'ÀÙ‹9uà Zo?ÏZoÚZÕkÞ­mXk…<—ÒW¾¸|QùÂòæ&H\5P× õR¦ö=÷5kKÁçdñ9Q|N¥ûáUk÷¬>á“þÕk†ƒN‹è,£ˆ=|ªÅgžø fùé ‹ª[!bÛ¾ƒÉ«^³ðIÈÈêµý‡;whÿa'~ZAi*ÔÁBO÷¨÷FÍڕíNïÿx`Gýدüçg‡1­’ˆ¯>ÇÄ—_aâçÏ qá“5kÃŃüS?«=éýa'žÁy{µ¨_ÉêS_†ÛžÙ7¸æP9^TV³Jõš¿ôM¶=#âÙ*ž§|PÍšû‚ s"•圠ýEq_+”·P© ” /3^„»¾+ž#ËÿõYf½û²bú:±.cÖÉ~²6 +Ƭ녵^³™eÖÜ“èY§#k&³z„ejÖN̚ƬN V Y>f ¬9šõákÄúÏËÄúz5±êõô³ÄÚBX%šµYO0ëùcˆ5Yç2ë•g˜õÒKŠu$³ÎfÖµGkdάK„u‘fíEêCaÖ9Gë¸ë›À¬vaE4ë›—ˆ5ŽYÏ®$Ö‡Èúç3Äš*¬Éšõ6?ëDÙÛC¬§u?³~xšYß¿¨Ë³îaVi’X· ëdf=&¬G4+Á¬˜u]‚X!«Yg ëtÍÃéªeVÿNb„¬˜µTX‹5ë ~Ö(f}ÞA¬c‘õþÓÄÚMX»hÖIÌúë‹Ä&V²nbÖgO1ëï/(ÖùÃë™uë2b¡õúV2ë.aÝ¡Y~RÚì!‡kdU0ë8a«YØu³æJ¬QȬ hÖ›/k f­[J¬¯ Ú}¯?E¬‘ÂÚF³®dÖ+tùÖbbaùî[ǬwŸdÖ;Ï+V'³.aÖô…ĺ YG0k½°®Ñ¬&NW;³hàYÓ™e «[³Æ0k*³ªkˆµY?=I¬9ÂÚO³>âþð<±^žO¬‘õ$³J„5@³Î#õ¡1k¢ŸX{ ëf½ô³^xN·Q\6ÎdÖÀ b F̺֡HXjÖ‡œ®¥ÌÚô+b}Ž}»3+"¬VÍÆéÚYïG,¬}_~F±º9ç×3køXbÍFV/³îÖmšõ ?ËdÖ–;k/dÍeÖ±Â:Z³ngÖfõE,¬}[2+ ¬ùšõ©-aÖMÛk²^}ŒXÛk„fUó³^z†X×#Ö÷ؾK™õΣÌzûiÅÚšY1ëŠÁij¯ƒY×ëjÍú3Ç0¬‹Kˆõ²Ê˜Õ-¬„fýü4±&3ëÛþÄzY?>J¬ý„5[³žbÖ÷tÙPL¬[õ8³«Ÿfý–Y0뺟‹©ÿBÖYÌzáf=÷”bƬәÕÿ?Ä: Y3ëBa¯Y㙵˜YñH²È2˜Õ*¬f ¥lº ³¾[L¬zd}þ±öÖ^šußSÄú;]FX“‘u7³þõ0³¾yR±.çÞÁ¬šƒˆµ5²ŽgÖCÂzP³–3ëXfÝù=åÆ7PUûj˜µVXk4ëuNW€YSþE¬?#k;f-V“fýíIbmìß|M,lLú6=L¬±Â£Y72뺌|ÿKb]‹¬ë˜õñCÌúè ]68¯aÖŸëd¥˜u›°nѬØÕͬY'VY¿bÖÑÂúµfgÖ~Ìzï8cc_Ñ7ˆYó…å׬מ ÖfÕôѳæ"ë凈5BXÃ4k?ë"œ÷>±pVÔw1³ÞÞȬ7W¬(?ëBf­û+±F «YW ëJÍz‹s¾•Y¾A¬ÿ@cÒ7…Y aujÖUÌÚ›Yç¾@¬w‘õïÄš-¬}4ë‰Ç‰õ/ºŒüüYb=€¬G™ÕOXEšu6³bVõÓĺYg0ë¹™õÌcŠ•â<\ˬ²'‰u ²–0ë|a§Y圇 ™õçG‰BÖ®Ì +¨YÿxŒXc™µÝ#Äš‡¬O$Ö^ÂÚC³^ãt}Lä‘$֞Ⱥ“Yß<À¬¯U¬Ë˜u³Ž¸Ÿ­Œ¬ÕÌzPXÔ¬¯™u4³ÂwëkhüûdÖa¢Y£8]ó™õÀÄzYÛR‚|OÌÅmRêÿ„?_óÿô(ñK˜ óïAþ«X|Y÷ØBø%š>óŸ ËÈço%þ9È?÷žÿý‘Y/=¢X!fͬ ˆÕ‹¬Ã™u‰°.Ò¬½˜u³Ž¿‘X‡!k³Ú…ѬÏ8_Ç1kHµ s‘õÏ?òüOX“5ë.fýãbõ~L¬u?³~¸ŸYß?¬XkH}è=Ì*ëÇgpþǬDŽõˆf%8]'0ëºb½‹¬f)¬Ó5k ?«–YÍëadíÀ¬¥ÂZ¬YýøY£˜õ—¿k=²Þ¿ŸçÂÚE³ny˜X¥ËÈÑ—SŸv²nbÖg÷1ëï)Ö¯™u=³î!V Y+™u—°îÐ,?³z˜uÿ&Šá!Ȫ`ÖqÂ:V³†1ëf ü ±p¤×7„Y „Ь7"ÖÌjx›X³‘õú}<ÿÖ6šu%³^¡ËÈß¿A¬½‘µŽYïÞˬw6*V'³.aÖû¯k$²Ž`Öza]£Yû0«Y“^!Ö0dMg–)¬nÍ*bÖTf­|‘X¸bÑ÷Ó½<ÿÖ~šõÌFbý°‘íõ±6!ëIf•k€fǬǘ5äb=‰¬s˜õÒ=ÌzáAÅ 2ëLf-z’X7#ëPf]$¬ 5kf-eֺLju!²vgVDX­šõÕƒÄÚYŸº[±V0ëfÞM¬û‘•bÖmºE³æ<ìfÖ„..Èú³ŽÖ¯5k<§k?f½#ÖqÈĬùÂòkÖkwk³&A¬vd½|+Ï…5L³.cÖ tyr;±p±²ïbf½} ³Þ¼K±¢ÌºY›ÂÄšŠ¬6f]-¬+5k³Z™µo ±vCÖf%„Õ©Yÿ¹‹X{3ëÕ ±F"ëß·ðüWXûhÖßøYÿ"òÈ›%ÖÏãü—Yý„U¤Ygó³bÖ ƒ‰õ%²Î`Ös˜õ̺lð³Ö2ëÖEÄú;²–0ë|a§YãøY ™õl·‡ÈÚ•Y!a5ëwü¬±Ìz¼†X/ ëÓ <ÿÖšõ?ëã;‰Õ ֽȺ“YßÜ̬¯îP¬H}èmÌzz¯ k5³Ö5«–YG3˨âõ@dȬ5Â:E³F1k>³Ž)'Ö dmˬ&a¤Y§rºF0kåî¿‘õ—›‰5FX;jÖü¬·ï Vñ~Ü"ëZf}t³>¸]— f]ͬÓf W/ú’̺EX7kÖ!ÌJ0kæ bÍGÖþÌúµ°ViÖ8fÍfÖ¦©Äš¬Ìò «R³þAêCû1ëˆÉ\¿õâMÄ&¬¡šu³ž»X_Oäú…¬ß3ëÍ™õ§ÛtÙ`ÖùÌ:fOb• +̬+…u¹fÕ2+ĬAˆõýcÀšÄ¬Na-׬+˜µ³Š ®_ÈúîFbí#¬šcÖ7·ëDZ\¿õ0³Š„õó­Š5“Y2ëÛ‰õ²NcÖ370ë)ÍZJêC×0«a{^}AÖ"f'¬ßjÖnÌjbÖoö Ù®6õ•2+(¬Ã4ë³[‰5†YïïN¬KõÉ ÄÚCXã5ë.f}D—‘;oÇë·ÈºY_]Ϭ/oQ¬K8†·0ëÉ­‰µ YÇ0ëºO³ð³~ͬâáÄZެjf"¬“4k$³ü̪L¬EÈÚšY «^³Þ½…XØÕ;ˆ{"dýùzbí(¬í5k=³Þ¤ËÈuˆ5Y`Ö×1ëoËdÖ•Ìzº˜çN«‹Y7 ëFÍZDÅvh'³n÷ëIdíˬUÂZ¡Y¥ÌÚ‡Y—þDk.7 «?³*…U®YŸ°½Š˜uê¼¾ƒ¬ç¯#ÖPa Ö¬»8]Ïl VÙ÷¼¾ƒ¬ ˜õ§õÌzífÅŠúÐó˜uÚ·ÄÂ-Ÿ¾f].¬Ë4k2³‚Ìúð+báJfßDf-VT³Fr ÷`ÖY_k6²¾]O¬š¦Yïò³¾º™Xû~F¬1ÈÚȬŸ¯eÖnR¬ÓI}è™uî'ÄÂý²¾ß0ë)a=¡Y‹™u ³>ÿˆX_<¬ffýVXgkÖ.Ì:ˆYÕ wÙúvfÖaÂ:D³®åÜØ‘Y»¾G¬›‘Õw-±Æ kœf½ÄÏúà&bíÿb‰¬[™õå5ÌúÇŠu,©½™Y'¿M¬.dŬû„uf˜µŠY/¾ÁûtȚǬ“„u‚fmìJfíð:±Ê5œYõªլï™5”Y¾ÌVFÖ[×k{aÒ¬kn$ÖŸè2ò§‰5YW1ëo`Ö_oÐeƒŸu9³®}ŽX_? ¬8³nÖõšµ?k9³ŠŸ!ÖÛȚŬÂêѬÌšÁ¬CŸ$ÖcÈ*fV¹°Ьn ÖÏtyçcĺ YÏþXƒ…µ…f]Ȭ§˜5üb]ެß1뵫™õÊõе%çÆo™µåƒ\¢µŒY— ëÍÚ›Ÿu³Â÷ W‰ûödVTXíšu)çÆxf~7±‚ÈúújbMÖTÍz‡Ÿõåõl¯“©¯ ëfýç*fýp.̺Y/ßNÏš†¬S™õ„°Ó¬nfĬ£n!ÖÞÈjdÖÙÂ:S³gV=³zo$Ö(díĬC„µT³>¾ŽXÛ3ëÅëˆU„¬¯"Ö8aí¦Y/úп]Çí!¯­þ°60ëW2ë³õŠu4?ëFf}} =ë5dɬ{„u—fÍgÖ fÕ]M¬GUŬ„uœf`V9³®½‚X· k+fÕ kf½½žXƒ™U¼ŽX¸¸ß÷Æ•Ä%¬‘šõ?ëµõÜ]B¬óu³þz³Þ½V±ü¬Ë˜õá;}1f]/¬õš5”s>ʬ àeFY3™Õ#,S³úñ³¦1kË èY­Èò1ëaÍѬ™õŸk‰uîyÄZˆ¬§¯ ÖÂ*ѬfŽáÌzàRŠ!î³÷ˬW.gÖK×(ÖÎÌ:›Yƒ.&ÖldάK„u‘f½Ì1<„YIÞA™†¬ ÌjVD³F0k³ö?Òµ²þy9ïÿ k²f½MêCÿq ±_M¬dÝϬÖ1ëû?(ÖÕ̺‡Y]GëûÀ:™Y ëÍJ0ëfíp$±ÞGV³ÎÖéš5›YµÌz´—X¸…Ó·³– k±fõcÖ(fÕ¥¸GÖûëxÿOX»hÖs¤>ô¯ Öw]ÄZ¬›˜õÙeÌúûÕŠu>³®gÖĺY+™u—°îЬ³z˜Us×/dU0ë8a«Y{1ëf}ÛÆõ YC˜µ@XÍzójbmÁ¬†0±bÈzý2ÞÿÖ6šu%³^¡ËÈëBÄj@Ö:f½{)³Þ¹J±:™u ³n?’w ‘u³Ö ëÍÚ‡YíÌzþpnç‘5Y¦°º5k %hèTf­<‰žUŒ¬ŸþÊÎ<§ûíã’H­jìMÄÖÔHÕhU‰™%TUÕ õW#öŽH‰Q35bVU#Ô®j5UBÕ"U<©¡F)ysÎýù=Ï9Ïò¼×õ^W_ÿïç{Ÿœsîû{fN–Ëó?\®aâz²FwÍ{__ÖÕ}9®£âʃË×èzS\‡Äõâ;ºK{ßÃ2O\éËÄubµÁÕKÇ &ˆ«Ÿ¼%¥=5³| ®D\KŒ®šâê&®ýoËù†æª&®H\}®{«uWeq•i§»¦k®;Ëäù®ZF×^qÝÔÿS|D¨î¤¹v‹ëßÏÅõp•Á+®âú©µîꪹ¦‰ë ®T£+\\1âªÑRw5Ó\o‹k®x£«¡l0qj¦»*k®Râꊫ‹Ñå%®ââze¨Þ5ןËó?\þFWò*ÝuIÿOñOëËzô]Žë+qÝHWf’Á5V\Ä5´îÊÐ\£Äµ ×V£«—láâú_=Ýõ£æj&®h\®oÄÕD\ÅèëµMsåW(®6F×=ù óˆë»Wôe­Ô\?'Êó?\…®½âJOÒ]!Õt—ö~Že¹¸~_*® + ®:^0Q\SªÈõ²æúH\ëq­5ºê‹+R\ßVÒ]=4׫âŠÂ5ÄèÊ^©»êˆ«DEÝÕZsý·TžázÝèº*Ëúw¥ÌW9ݤ¹‹Ë—Ñ5_–uP\eÊ讲škޏN,×ñÆÞeÍך’r½¬¹Þ×\‹Œ®ê²¬®âºX\wÝÞ«=ÿW_\F×bYV€¸òöÖ{ãœæºµDžá 4ºÎʲn¬Ð]¯Õ—µGsí×ÃÅ⺿ÜàJ×6qýæ§»Öh®)âJŵÏè(®hqõ+¨»b5W;qÅãŠ3ºê‹+T\wòë®(ÍUB\]pu6º²u¼`Qq-Í#gzšëòbyþ…«¼ÑuL\¿ë§xÅ«øê®šëKqe.×õeÆÞ×zq}í­»ü5×qmÅ•btëxÁ(qåÍ¥»òj®·Ä5×x£«€¸‹«ÏS}/[¾Õž‰« ®VF×™eºËW\ß>Ö]Ç5שEòü —ŸÑµG–ub™ì¯‡ºkŸæú\\Šëüç×tq-W¡t×.ÍÕO\kq­6ºvÈ9[_qí¾%÷{5W]q Á5ÈèZ#˪%®oþÒ]ÚSxËã…òü WC£k°¸~.ûKÞ*[¤¹¾—./£k“lÃTq5úSwÅi®Ùâ:¾@\i‰×hqÅ‹ë@†î¯¹Þ×"\ Œ®`quW»Kºkæª$®\½Œ®âò×/¿é®^šëïòü WM£«‰œUf&ê®ÉguW[͵]\÷?×½¥Wqm×˧ä:EsM×>\{®ö:^p¢¸ª4Ò]Ú›–¶âŠÃktÕÓW¨`q-_¬»Jj®bâêŒ+ÜèÊXª» ‹ë‘¼³•Gs]üLžá*ktm×ý?Å·,Ð]·÷hÏ¿Äu}¾¸®.1¸FŠk­¸þ“w›Îh®aâJÁ•lt5×qµž#ó¥¹Þ×x\c®|âz]\sfé®Íõ‚¸ZájatÝ—¸”·Ê4×Éùòü WA£k—¸Ž/Ñ]ÿÄé.íÝDËRqŸ'®³‹ ®©âZ$®Ùrg©¿æúP\«q%]íÅ!®SuW¸æª-®A¸]%Å(®Ѻ«…æz4OžáªoteèxÁûú͆âLÐ]55×qyáÊ^dp%èxÁ}âZ8JwÒ\ŸŠ+m®¸Ž]#eYqâ*$ç¢ÿìÖž‰k®ùFWeYVgq{Uw]Ð\ÅÕ W£ëæ"ÝU^\ïÈ{À{4×_såù®êF×q]_$û«Žîú\s}#®{sÄ•µÐàŠWŠ¸Î½"½¡¹&‰k/®=FW˜¸Æ‹«’¼3¸"u¼àq}ÚVޕ𫏒p­0ºêˆ«—¸‡è®šëq Ä5Àèê%?aMql!¹¡¹Ì–ç_¸ê]5Åuï3Ýõë[’šk¿¸²g‰ëé|ƒk–ŽÜ+®bMtW]Í5S\Çp1ººŠ+V\ÊJoh®wÄ5×\£+@\áâSBwyi® â꫻ѕG¶aYq5/¥»îíԞ͒ç_¸ª]Ûæë®«óe¾Šê®«šk‹¸²>×íyW´¸’ŵ°°îÒÞ–²L×\»Œ®Pqל—äüPsµ×t\S®¢âj!®¿ è®Uš«¸:àjot=­QP\Å|t× Íõë§òü WIqYzhÿžÚ(׈9âñ">ž+b³OÕ7*þ@¹Œò çßñ¥´ýpD„vqÄ]´“emBÛˆéˆþïGC|4gê,ÔTíßq>Úýo”á(‰º¢} ¢;J7! …xi¸hu4Ç2õûîÁ÷îÜëØÁ~~þ-õ·Ppúãl¬ÿ;çÿÊÓÎQ½DÝUI{uõ”öЬ%4îHæío³³sŠMËÅ[µé3Åqbë}Í2IG¿Ï¾7;Ûáû"Ið+„ÏÙGæhß°xœ³j!¶ßò`¦ZÍÀÖŸäÊL½|Èôý#êÄ7{ñM¯EúmÈ•=¢R»Yµ¾Ì3çåüˆ¡ñ-«ê÷°Ù‹¹²G^7þ¼”ô·.†uù£eù£¬Ëÿ'Nà» †å÷•åç,ímmies–¦íÐ# Öíð‚¾»Zíl÷_»YõôÎòm­/·ÕþöÓoŽè•㛋/A|Ú~²­?â0Äø.;CâÞ©R¨]ÜÇUòæìèý!q¹«´Ëhw'$„%A_‰µ9Öœ¥Þš§ý§ÖîmGîo÷Ï™ýj«í¡ŸE¾Îw_Ûÿ,ÐKh©©ÿ[ëÒÌ¢\Ÿ-Ê ýß…ZÆW²}œåÌA˜K9ÿíûsHê>!>…BjžI½á3ý‚ßô×¼ô}±~>üjýß¹4«\ÑoÚÙ_Q0C`úÏP?QW”.(‘3èäf¥ÚÅ¿rÐ’g†ÚŒµ !ÛÌÐ?<«e¯ÅífU9DsäôžÍÎøµ]Ü-K™œü ÕKÍF”Éa.Ç sq;ú–¥oŽ­CÜ+¯å¨P÷‹j±Äªâ ”u(ÙΧb»¸ÊŒé±ƒs´ûÿ`Ñ`‹´mw(³Vvv¶¦G ÷šEÿ/0WÛ··,É;²³3×=ËOóþåÛ;yeà÷§~›Xµ=ó ø¢ä‹uÜÃW>&ãSaž~âb¿*{x+| |ê'†=|K6zÌ,˜éŸ¨Ÿh$Êp”©ŸX÷pN^iµ3D8Ä O´=[ÃqϾ XCÀÝ^úç€.ZÞÊYÉ-ص¾@>ŸZgqFÎÿWîíúoº¨WãeY?Q»ö8JŠFÊ®ÍIá¼úî=vPû’–°+`wH•Ì:ìßôèxµdÿžØ–³¿pÜ¿Æùm;˜ê¦«mY¥:Jàtǽë ãã?Ýaï>ñÉN ]ÿMöìLõs6O‘Ÿ³ú6=wlÀrjšö=¦wªhdj7ë5ù S|®¶ñ¹ë>hVÐËoZi™Éø&á[:žûÁÒŽ@Ý€L3ôU)Ô¦>L­ij[”G)‹¨¡%G•ƒ¡ñ­´ÿ¿bHü{ysèÛS…¾Ç\LÓ{,G9ƒr:Î×,7´}в Mµèë8ë¡Þ4-/ªÔÎQç¡Î¡øÎ©ª©Æ ŒBÑÈv>uÛÅÕ3åE8X°S} Çóz¨A¢îö¦í O“TIy¦¢sÎ ¬ç^8²gH½’Óä`~=‡œãÐo§§ýïµw¡ì@Ù3űßÀ̇IžâºßÀöŸ¡úíÔ×Òo;¶èýКb}¦xÖo…ð½„ïå)NúíFŒ@™±¬gŒc¿9³7Fm‹M(Qöĸè7 ž < xiŒj·~(ÆÛmÂS»5µ¶Û÷1Öv«Œ@ñÐÕnùPò h¤]»õÓú-c²p—>îÉdc¿DMýÄÜoI1®úm.Žê­q×o}¡# ã&«mŠÒ%l²c¿U…© Ót²ë~û7Z؇ÓU¿õÿJú­Íf½ßÎü"€åZ´¡%ZHK|³æËhõã.EYŒòE´¡%^Ñçbļhc?W1ôsEéçÛr¤k†ï-|ï«Êz?‡Ä)e¹>É'—¾Ó‹Á­­¾¦÷x’(¦Éê÷=­­z¡ÉÆ3¡_`~žæ£Î„ºE[Ï„v¢nÕrq’jµå(Ÿ£h¤Ý™íz! xpl´tÒ¯ÏäxŽÞ}à$Sþ¡M³Ë¿hýß™Yæ~´ÿ^!çL7'J•SeE'©Ýx%åÌDÇ®K†Ùsl¢ë®› 3UuÝ£ Òué›ô®ëЛb&»âMCW4’®Ø ø2¾øZN4§ÜPmm||ÔzN4´t3)”1ùŸ"ÌÙ j[A9„rf‚©¥ÛO0¢Chü'GµŸ0çÚ­EÎuûéŽhÜ>~ûÉœÿMÓë´‹»ni8AëÎvq-õrþ¿à¸ÃÚÿXNûg«0+··×þ¾çnÐΧBŽÌ9mÒ¶K[ÂÂ?œ ®Øë¢ÔžbKÍ[–Öü"Lþ)ÖNN˜ wrõõÖxQÿŽ‘ÚÅ&¨NþåŠF¶óiÔ.®±õÄO.¿ ׿XV`Ù1Aúùwú9==q¼±Ÿû¢FĘû9X¯r8³¡“~¶;ÿ§‚?õÛŒWû/Š/J¾ñ޽|eœ0úQ@;ÿ纗wÀn›¬zù•õÒ˾õ}¶à3ŠmgìåW ½\Czù©lžø>À7fœ¹—{kkó:PC Îã´eß[.åË ¾ª­jœOûø5U´ýóý粨{cÌ’¼°”E…Æà«É?#ŸyWÅW»¸?´=òpœ~ëg Äf œ«zg1ÊBlçS£]\ é¢Û'ÖûØza?ÖØ-Pƒ£Íý0NŽªWžÛ^TÈž$õ«Uýq}Œ(WQ2Ç8öÇA˜T˜ßǸîE° &©þxq­ôÇÕ/ôþ0‚bsÆxÖoá{ß{cœôGi ’@õÆúã¿Ñ">ž(b‘±öýñ­,ê4`:àÍѦþøyËD‡þ8;Fïys(°s´ê1(£P4ÒƒþÆÖ[÷ÑÆþ¨Œ0ÑÜ^c\÷‡ñüëÊ(æ1ZuÇ1”#(i£»c-Ìj˜}£\wÇXØÑTwÜZ%ÝqdÞï¼K±a£žs¾I6PE|ð½1ÊÜúùþ“‘ý;^ â£´eߓøâ?£¤;úFj+¹õ;Ô_GÒå^ÈQW¡®5tV—búÇ“/Z’÷?¢±¯©¢?J$ŠFÚ¡kûª)T÷‘¦ý0Þnÿ’£W¶Ë|(%1B*\'õóŒTpåʱް& fï'0õ‰·Þ£€GŒS-ps¥´À÷kôèЙjCF<çù?iòøÊâk8ÂI <.Ѓ±dÀöcËÜyåëÑÏ¤Ú À〙Ãm œÿä ‰k¥mýµ«!÷™È¡…BgM,ßåœe‚º­ÎÇµÒ¶Ú |ñÍ®z¢3J8ŠFæœJ‡ÎjYå‘<(eM îÿãðÇÑx¸±?|P½Æšû#c¸ôÇŸ×oéÃÄqbŒÔ»1L%`níæÉäÍc؇]ÎíRE—ë«q8Ó7[¤à,o†c¢ú’aªÛº¡tEé>̱ÛêÃÔƒé0ÌuÞäƒÍ£~Ðâ±Ë¥Ùº®Ò›Í%ÀµÑRÌ{Øsò¦©œ0oÆ÷5¾¢œ4[Ž…2r€ã¼t€i3`€›y©\qˆš—m d^†.ÑçÅ {°T+;À³y9ö‘øŽà»ò‘“yY´ è»\ÌËxÀ±€  m^º@u†êû‘ã¼ÁÔ©þ‘Ú¶%QŠ£TU?±:kjw÷»æ¥í@Õ·—û‹íâ ±=î¯æå0Ê÷ƒŒóòÛG¦yIZ1È:/U>²ÍËäÉTÿ¢¿ZîG(ýP4Òƒy ÂV[Xã¼E-<ÈܾYý]ÍKF?q\úXê=ìož—Tô}èú™æeòÊÍ œÜß弘žÿ` z\?µ7CQÚ „õsœ”ª0•ašösóü'’ü¨eô<žÿ,”ç?¿`¹éÙõÀJ|ËñíŽ4Š~=0h,P\¤¡³¹è Ó¦}¤ÚMP£„©E®òr=õ‘j°<¸|qDªë›ŠrãÆÆöégjì£@‡ÿgmlm¹\|‰ú…¨–“ªÅÎA™¢‘n®"À{ÿДÿ¨Áÿ³ËÿHW×…qøQ¯z¤ýõ€éþW_¡3ïCµÍ¡AIëëØkaVÃìëëæþìèªÿòÈ‘ùrÿ à]Š ëëYÿUÄWß}ôß“>ýûëÙ×±ÿΜ9ÞGm‹½({PÒú8ö_~ú/+R5B,®é¸’ú¨þ„2ð#cÿMíkê¿ ÖYûO[.ý÷2j Šwì£[å%tÓä_ÁŸDûï jjsÿiëâ¼ÿæâH Þú>îú¯/tt\„5ÿPÚ „E8É?˜Ê0M#Üä_oò¯Ÿ5ÿf‘s%ÿ~éGþõö0ÿð-Ç·»·³ü ×ÛIþÁtißÛš(QÂÔ" ýç¥ò¯¯5ÿpùâ èmÍ¿^ä_¤)ÿ"Ìùt8Ò–½mù‡úE$ù×Ëš(³Q4Ò]þ÷ßË”¨Á‘vù×Ûeþáð£^õÞnó¯'ù÷!¹ÐËš(GPÒz:É?˜Õ0ûzºÉ?ØÑZóo&ù7[òà]Š ëéaþá«€ïžÎò¯ù×—õìé$ÿ`ÎÀïaÍ?”=(i=û/@å_okþᚎ+©‡5ÿPö5å_OsþµîkË¿¶üC­AñŽ=¬ù‡òŠFºË¿È¿>äߦüCMíc—=\æŽê­ïá6ÿ # ã>°æJ”°œäLe˜¦¸É¿îä_„5ÿfŸJþüAþu÷0ÿð-Ç·»»³ü ×ÝIþÁtißÝš(QÂÔ" ýW@å_OkþáòÅÐݚMù÷9ÿ€÷¶å_w[þ¡~Ñ›ü{ßš(³Q4Ò]þ÷ÿ¾)ÿPƒ{Ûå_w—ù‡ÃzÕ»Û÷ŸùZ=£ýßKø<ï«­~åʱnޏ& fo7wÏ¿€GôR-˜ïžÅÉó/€ÎTÒí9Ï¿~äù¾²øvsÒ‚ÞèAOФžåTû‰ç_€Ç3ß³zÕŽ¥‚Ž}W‘~óú@̹ÓbLûßSý0eŠFši©‡ßúûˆáàÀ¾gì‡z¨A=ÍýP¸›ôC±l‡÷_qd÷zeÕÚÈó¬?ºŠ|¹‡¹ üü2‹d»½~]=‰êǺªî‰C‰E‰ïêØ=‘0}a¢»ºÎ¯×aöPͳcª4Ol¬Þ<¥JPìÕ®žå×åwÅwññ=~×IóìÚtì]ÇüZ³fÖ»j[LD¯aÈ/ÕO)ÝTã´ÁÕ WÄ»*¿j¡~`̯]Mù•è…¬ù¥-—üú«‹¨–îR¼Ð»j±'Q~BÑH7ù•¾|Oc¿NEénn/m]œçW8ŽÔëÿ®›çY<Ã/§,ž]Ô–÷AñBñíâØ…—Þæ÷÷…ù÷§–[oÃ-À›ßWmØ>FÚ0×t½ ç$Pmã;Ϲߨý9…_7|]ñ ÇØ†ú¯ˆÄµÚŸÖ¬ ØöOêžã©˜Ð0Àæü7§b\«µõïÌúwcý;[¹BR°‹Üø àIh»':j6Ô—6ª”¨^ï™ç/C_j«ý™Ÿó=Ç‘.Ž]¥ÞõN2?q?4==-\O|µm>yŽÈ†çm“;ÉѪ†çmÚù†^Ôo«§u@säf]Í+P±“Üзÿù cð£^ ­žv¼»ÛQä;ïšëÌÁrÆ!óïÿžóûf)H––³U»-BY€²¤£cÖ ‡‰‚™ÕÑõ¯ l«wUÔ<œ Q³`²5ÕªP¬YG·§K#¢´õïÀúwÏ‹Í13¦”¥^ýŒæ(äaÈ[T£~òŠF:?£Éc€£;û³/jDóîî¨ÿ;sˆ“÷·œä?UʲŒ¬ùâ…âÛÁIþ¿Mþ½Cþ½m·OBã.…¦Þö žÕ&{ê#¿Ø…>ò÷oð­Å—úös’þ' ¬!øá‹{ÛEÒ·l øÎÛ†ôK—b•`*”z[­z^”PJ¨Åhé÷ÚÁà©Ù^~³“¥Êoí…ýµ³°ÚÛS¦Ïã÷S+P¦ë3äyÍ»sØÛzÜ ‰y4gÁÞ~ÓÇåÔË9ß=Ö*èOíR-[µW Öž2a,¥{õò{=” Î¶~` Õ¶üƒÖ°LÁÎð˼öZ¨ª­Âv"ßêÄv±.ö”ŸQ4ÒyÏ0­À´§±¿§¢Æt2oˆöäoñgvùŽ£C'ÛºçĦ¾»Âsè ™‡ÔY“–ÿðþðÛÙv­l[~ÚŒgzxd†‰ïz¸ø|l>ŽúgäÚøà¯a6ˡиŸµúAÇr–àã7-P–‹q:Æ$›±”4Õ.YBOÀÇ(P)M‘›„›·ayí'ŽKÕ–œ¹ó©¶Eôü‡ö W©ùýhIÍ^ã³³3[þ§ÿl7Ú •Ù‘\°-R‹„‘èh^ä—–sUT@~Ic-Øjªìkk[C}Ó„”Êì‘mø¾€‹üêAîÔ™ÚV q òÐÒª­c~ùÔ‡y½­gùu=T|W;ˆÏ«­gù•Œo¾c¡.òëÀi€Ÿ…:æW˜Þ0ï…ªUAiò®ZŒ“ü*[¶A¨‹üº"`ÖÛT ä×ÏȧÞ6ï÷-¡äWtˆ ’Y”‰g)ëCT~ G‰zÛ˜_q¡ÆüêÓþmk~ ±åW]äÚ׺Ø(ÅP4ò¹ù•ÑFL—Ú‹éIc~DMmoÞ I!®òk.Ž„ö¶uw—_ð½àÇ·ñ,¿j⫎¯…Ígί\€ÏÚ Xƺͯ#­ÅxcFkùµðsÀ ”üŠFžØÎ¼ {´q–_áÐÚ©üÊ=\òkÅ([~BÕd‘­l‹Ô"áEäüv‹ü«µ)¿®¶ìJ˜TÉnåI~™Ï‡“¨±‚GZ©ŽE™Ž×Ê1»úÂDÀLlåú|¸!lý0µeò “-3}¤¾:%ŠQ¬n«çŸÿÑR<—ÛŠç¿–æ0Ë9Žj«Ÿï„Üy±¥š»å(Ÿ£h¤Ëóá(à!Àñjòþ/jx[óŽ jåãò|ؼ? SÁú [ªýñ°…(÷CEù·…ãþ8 “s³…ëý±vm¨Úc‡Êþ¸?\ߟL£ØÊÏßðtÄóq ‡ýqº¥¾?j@Vƒ|»…Ú/¡¼ˆ¢‘.÷GFsò/„üknÊ?ÔÔ»ükáz8¾7‘*ãYÆêæjŸôE‰@‰lî¸OšÂ4éÖÜÍ=ö"À…BÔN¹6XvJïaúNÉ àv©V ùsŽú3äȹ ß|§ƒ;†{?ŸÍú:ØtÎí7íK©6pàtȽŸÖ ï bú}ô*0•`Ê« ›%/J)õãª{?´·àšµâÇ/4ü|kÁï7S÷|RQö‰¢ÿâø5ËÙ`Ó=ŸÏ– ¤þÁ¶{>‘ÇS}u3Õª}Q"P4ÒéKp¶÷ßpÔÁÖÌØ¯EQ ·6÷kV3¹]òžãûoMéIËÃfr¿Gý>z*ú>ô M­Gýý7ä•"î÷Ìi&÷{‚žÿ~uŠtgS›ªÝØ%¥USÇùð‡)ózS7óq÷-ï´Tó‘6Pæ£Ù}>ÒN`¹ñ–gó±ß"|[ßr2#€†Í~ËÅ|„†F@æ£H5o9ÎGno˜ÇMÔ†ý«‰( 2Ë£&Îæ£bsæcø.ð3MÔ|$¡¬haœo™æcиÖùÈnb›ÈÝ©>µ‰š(Á(é~> ãðèVLŸ{oŠšÕÜ<éM\ÍG*Ž}â°œmbž$ôè{Þ4ÍÇäÉÍíçchç£ E³Œ¾oªÝX%¥ê›Žó‘ÝX˜§Á”~ÓÍ|œ>¬æcËG2?Öç# ™ji=›±øFã›ßØÉ|¼Ô hpcÓ|xYç#°&`+bûþ”TÑÆ†QßxƒükÆþ}CmÛ#(‡Pμa7"wƒô!)Ø”!Yˆá3 ›ßPC2e\3ãÌkl’®@]šY‡ä×7lCÒ¹Õ{¾¡†¤J9t:$úûÿ¯ |»©ÀÔZéóq5½©y>RÞp5I8VPoÇ2Öï? G£'¾nš>ȽíØì ™Žnß@Ýÿ¥HY–Ñâuµ}P¼P|_wœK„ùý-aþmät>|äùðæ·Ô|,‰äùßyþ@µž3éÃnøºâÞÈ8ê2X»þ¬ ض‘ýŒ¼Ëó?@_À˜óß–2r éÿ&B=ih¥¸ŽÞ!?àNÀ퀧  mäæAÍZÙÐ0rí¥Ò`˜a>l¨v×;(Pú4´¹–qÏBâ'µ,nÌÐ`ñÇÒ¸¡º<(¾MŒCW¾‘ièþh Ðå7­CÙÐ6t‘SE¶d6PC·e=ŠFººÙbœ—(|CðÅ70Î_gÔð7Í㤭KÎþÏ|bÿ¼+‡?õ6”ù;Éüy¡ëG½lëüiÍÿG}Ö¿±yûÈüÕ´¿¿“‚!™ziõMó<yŽ]½¡ ´OßÉœùÔƒßjO‘0–1¼¾jz(A(õë;γLA˜šõÝïþxõCÍó¹™çº‘ú<§ìÀrá5ÏŽwqøbñ­~ÍÉñîC >@“^sq¼k ø:`h¾âPE¡*¿æx¼ËªGþ¿.ÌõzjÛžE9ƒrµžóã]rFo†5ö×S£÷)ÊÌ×£·ê5ÓèõŠ|Ý:zÕ³^rkª®§F¯6Ê+(éòxçœÝˆþWk¥ÏÛ•WEÍhdn×Ôz®Žw)8’©w¤žùx7=}㫦ù†<Ônëý?Žwµ(È2:¿ªöaQ”Â(Å_uœÛAÂÜl(L¾WÝïïo¨æcoO™B}ôùHXAµ=Ažïàëoj‹ã]3À·ßrq¼+ X0ÈÚŽwYuéÿB°QæãÝQÀÀÔuv¼[µjs]ÇãÝ$˜ 0#êªÝõ!J”au]ïÞ¨ÇÐa©ƒ%¬®º’(Ň®VièîÖèN}ëЬkºÓÈé"[þ­£†nÊôäxƒ/_bãüõE¨o‡àº®ŽwA8êP¯M]óñ®0ºz`ÓñînmÖÿ5óOÖqq¼KŰï5ò¿¶ižW!¯´«7¹ŽËãéýoìT«­Z#¥ JXmÇI® S¦im7ï×öa=5ÈÞÝyÿ»§¼ÿ ð‹–»µ<ûÞèJ|Ëñí®e>ÐÉûß@câjÆ„ïv…éÓ¾–ÚMP£„©EðþäíÅÉ[ÖV} üEðµÔ‹“ÿ¼"ÊÝWe#È \ùk›FäÐñW­#Ò©–õÅÉÔdQ-g_Q‹]„²E#¿g5*þã Tý6¸Çÿwåøð‹–»U=ë·•ø–ãÛ]ÕI¿ WձߺÂti_Um‹&(QÂÔ"lýö¸&ýVÖ6°ªê·‡UDѳÝÚo«™úíÐÉ—­ýÖ¥ª­ß¶"§ˆl9_EõÛ”E(é¬ß¢à†ÀÅW1ö[gÔð—ÍýTÕU¿àð§^êîúí^e¡³j ]ºŠÚÆçQ΢\¨ìØoÛ`¶Âœ¨ìºßâ`ckª~{ÖAúílg½ß>èG±)•=;߬‹¯6¾¶•Íý¦Ÿoʧֳ²c¿]¯$ÌÕÂü^Im‹ã(i(*ÙõÛmK³jjǯ^¼»’:Ûüeš(¦?¯lj¸ ^5¬ ÷g%ëÙf Ô`Ѝ¤[¥:ŠF:û¾½\vuáʪu‘û¢fT7÷[j%Wç›)8’©w¤ÒóÏ7'âgu€ÚÒ}Q"P"»®)L˜nîÞ.T]µ]õ·yÿ!\Þ¨(ÀíjR­@€gßÚ…o¾ÓÍm'ï?ÍúZ Çï 8ÝÚR³T ¨Î ]Ì÷€`üaJVTÛ6Š/Jqõ«.ζŒ«LÓ=°$ 'ýÅöSU±ýå¯t;Ê7UúcES?ÏJ¨jíçbm: y(Õû«†~å]ôà{@Øü±5ö7ö·ªWUsgø»úPzqœ¨"õ®û›¿”‚žŒžVÁÇxþ9yNó‡úÿ?¾ŸÕž"a,cxµOë¡¡Ô¯à8/~0ajVpwÿ»¼À—+«yyÚ–ûßoËýo€}•ÉÂòÞÿÆ‹ouy'óò!P IåíçEÝÿ|°‹4Üÿ†* U¹¼a^ÔýïrÌ%öo9µmÏ¢œA¹ZÎn^ôë³þ˜“/À×(§æd6ʧ•Œs²¦¼iNõ¯d“¿ËÙæ¤-rÕ‡–SsR¥6ŠFº˜ý÷Á³ÈµV’ÿeÉÿ»ü/çòþ7Ždê)gwÿ=}cYÓ| Cj·ÀŽå\Þÿ6ž¿ÔÃDõneÕÞ+RR­gYÇɸ_F˜{…ñ+ëúüå쑊j0Þj#ƒQ2LŒ/ÖQì@ÏÎ_†âŒofó`èç/a@¡@ÝÊ:™ó—ê0UaÊ—QÛ¢ J”²jÆûesÊ«ŽºXZðßüTZÁ|r@Î`~-cêä@Ëü­\©Œõ &5šâëK«ÅöG‰DÑH'ßÿ†j Õ½´±+£ø›ÛÉ«Œ«ó—¬RÌ©—§ÌóÏ_öâÙƒçJ)µ¥W£$¡¬-åØuÑ0a–”r÷ýOàŽTÛmÅ÷?CäûŸu¨Vʳ<þ·¤ø–_ÑRNòøg S@·JºÈã€@Ûý²éPS¡æ—tÌã˜^0]KªmÛ¥J—’¦.æ~™>§òýgøâðA%U ?-!Ê“rÆ6Ö¶€ñûÏ@¿”³¶q÷’¶@Þ…¼CdË¥j¹+P–¡h¤ëûeQÐC ãKû¹3jx9s?këâ<pøS¯aIs{¡g—% J˜òøâ"_.k^àþ.ï—9ÎÇ2Š$²ŒƒÅÕ>œŠƒ2½¸ã|ô‚é3¶¸›ùx¸nY5}šË|Ln¥ÏGa?ª÷ìüþ|1ñ-#¾{ÅœÌÇ7@[€~*f?œßÇÆ®5€¶ó•H¨¾PËæƒóû`˜¦0 ‹©m[¥*J}õ;û¤ô¯ÅU»Þ)*¶[¥Å–¿˜“_P~.m“¿‹™Æ$(¹´uL^+f“yÈs¨¾³¨Zî”Q(éÁù}0¶¦Øº5å?j@i»ü/æêü>«ù_Šü/f>¿OG?~£ˆi^¶ o.e^àœ¢ÿóûAÈ2æQû´3J8J—"ŽóR¦Lh7óâ œ«”š—ÆMe^:6×ç%£°—JJµ'…=›— øÖã;XØÉ¼Lš´¼°‹yéØ p¤´ÍK}¨zP- ;ÎKa?˜<…Õ¶}XH”û%DñU?±³ïIYDõí~lßaûµš—u(kJçåÛ¦y‰Š.a—Ü…móÒ¹7ÕgRË Ai¢‘ÌKal~Ø ç垟¨YÅÍí›^ÈÕ¼¤âØ'ËÙBæyIB_¾ÇÏ4/S'Û-°w¡ÿǼ4¡Hc–Ñ×OíÓÊ((Uýç%û%až¦´Ÿ»÷ŸOSóRôMÞn*ï?$S-í%Ïæe,¾Ñøæ¿äd^Þê4ø%óX°•´Í‹/”TÑ—ç%£ ó_”ý[PmÛ#(‡PÎ4Í‹|OúæeœŸêÛ9Øfcû² š—Q(#ŠçåÓ—LóÔ¡¨u^~.h›—W‘ëRý½‚j¹¥PJ h¤ó’ñ"ë_„ü{Ñ8/QS‹˜Û7© «y™‹#zë šç% }zü‹¦yé„ÜÑnu þ?æ¥ E °Œz/ª}z¯ó_X”ûçåÌq˜ÌnæeðÊÂj^®4’y¹ÓXŸ—€hª%ðl^BñµÁ×·€“y©T è­.æåI~ÿ-$`qh›—3P§¡®äwœ—˜d˜õùÕ¶]„²em~'óR“yiû¢êÛÞØzb—_ÍKk”–…ŒóòAÓ¼ù²ÎËšü¶yñFÎEõùÕr-ùD¹æ'ŠFz0/)Ø’±¥å3ÎË|Ô¹~æöÊïj^"pô¢Þèüæy FoŠÞ=Ÿi^*!W´[`®üÿyù=¯¹ð’,Ã'ŸÚ§QRQåuœ—0Ë`våu3/À‡¾¤æew}™—ýôy è@µy=›—ÒøJâ«—×ɼü“G »z)¯‹yI<x5³yY µjkÇy‰‰†GmÛþ(‘(#ó8™õ÷ ÊäS}[[mlmó¨y)R¬ q^^Ékš—¬ºý¢u^Fä±ÍË)ä“"[½ –»e;ŠFz0/1Ø¢±%¾`œ—¾¨/šÛ78«y ÂQ‡zmò˜ç¥0ºzà ¦y¹ë+òæž|Á£¿W°{ŠØ-ç}ÕÞ\‚²%Ñ×qRF ‡Iðu}ÿ5¶M5(K^•AYT_”Õ(ÖÜ׳ï=ÞÉ-¾[ùÅ—ß×<(úý×4 c@çs:›ï=®‡Y ³,·Ú³PâQsÛu¶á{ÝÁÖ늫 ®¨Üê6l”ÆùÝÙ×ÔØ¥€Jä·6¶¶\nÃ>öõQ>)^1·Zìe”‹(éæ{)àÉài>¦üG›Ï.ÿs»úÞcŽ^ÔÛÝ÷’ëAAwóQÛ¼4JI”²>Žýwß[˜{y…ñóqsÿöH^Õ¥ërÿ¿žÜÿXG±ÞžõßP|ƒñÍôvÒa@¡@ݼû¯:LU˜òÞj[D)€RV-Âеè¿TÕg½Äu&¸²¼TÿíEÙ“ÇØ§½Mý·hakÿiË¥ÿÆ¡Ž¡øJ/µØÞ(=Q4ÒMÿ×ó2ö_QÔÂyÌý§­‹óþËÈ%ŽK/H½‡^îúo+t ôù\ÖüCY„’˜ËIþÁ ‡IÈå&ÿ`Û¼`Í¿Zä_]É?€jkžËÃüËö–üó%ÿr9Ë? c@çõÛåÌZ˜eú¿õüC‰GI·©ÿj¨ü³6BW\]pEåü›üCiìkÊ¿\æü*ákË¿œÿIåß3Qå&ÿ4Zòå"ŠFºË?ðdð´gÞÆüC›Û.ÿrç"ÿpô¢Þht™ÐAÐÝž©m^¥$JYýßvù÷T˜{>ä_ã2ÿ`øXó/ü«-ù°ŽbrþíQþáŒoæSo'ù Ôí©cÿU‡© Sþ©ÚQ  ”}êØêï¤>Spö?qñ&ÿþSý·e·)ÿ´6äÐBo[þ=µöß8Ô1_ùŸZlo”ž(é.ÿÀ뀇ýgì¿¢¨…½íòï?Wý—ñD—¼È¿ÿìûÏñzižxN?Q[~>Ê\”O»pÌ ˜¸'NºP]/5næ¥Úpa iÃ9zøS­ño®—2‹ïz.ñù<1·¡~½ô=Р‹ú¿\/%.Üfm×K#¡†CM}lèj®—Âa:À´y¬¶mC”ú(­›ºZî_¿ÄõÒ_OTåÂöLO¼#–2½¹^ºö¯(ŠB[ÿ÷ØÔÖ©@ûÒˆ–½­×K«WRýè¿j¹3P>AÑH®—±uÀ6ð_c×C ÕöýûÇÞ.®—¼pd?“z%{›®—2ÑÿèO±çäzéòþgæ®ü×ÛÕõ’yVb(MýõÔþì‰2à‘㬴€ †éñÈͬ”.&pάŒ¨*³òa }Vî?$ÿŸJ5¿GÞî>Èeýû {ñíÁwö¡“È^ ´hËC5v_aà À8¢—<¤ïÉ cß½LBûçlê[#l °õ|¨:­J9tù½¯¬ßþOàj]äû¨éÿ™wwÊCo_! Ç êíy úGÿû S'ÛìSP¯&…øû¹Çû؃©>àêžš(ÕQ8v/ŒŒÿ×Çûó÷…=ûD5OÍÊÒ<Õ«éͳ`»–S÷=;ÞOÆ7 ßÒûNš§;P7 ÷÷ aêÃÔº¯¶Ey”²(j†ã} Ý”þ@µÍõÄuõ±¸¼î«ãýq”4QxïÊ}S0~´î±5µår¼Ÿ‰:ƒâ›ÿQ‹Š2E#ÝïƒÁ›‚wÿÇØ¯•Q›ÛK[çÇû¬{ôÿ¿R/Ï}w盡S¡3ï©m¾e=ÊÆ{Žý7f*ÌŠ{®û¯l×Uÿm¨(ý·¾²ÞP¬Ó=Ïú/¾g8þÝsÒî t(ó®cÿí€Ù³é®ÚËPQ6Þuì?ú/ÜÚýqE⊹«ú¯=JØ#cÿõ½gê¿@ÕYûO[.ý—5/ÅëÞU‹½“%Ê­‡¢h¤›þKß~!ËØ«Q“šûO[çý…cõbïºë¿ÐÁв¬ù‡R%0ËIþÁøÀøg¹É¿;äßkþU ÿ$ÿ¶? ÿîx˜ø&á[zÇYþupÇIþÁÔ‡©uÇš(eQÕ" ýWAå_–5ÿn“÷É¿;ÖüCI»oÊ¿;æüZwß–wlù‡:ƒâ›o[óe0ŠFºË?ð¦àÝo›ò5à¾]þÝq™·È¿È¿;nó::ó–5ÿPÖ£l¼å$ÿ`¦Â¬¸å&ÿ`»þcÍ¿²ä_É?€ëtËÃüÃ÷ìùwËYþÝ$ÿ€2o:É?˜m0›nZó%eãMÇþ+¯òÏÚýqE⊹iÍ?”°{¦ü»eÎ? j÷lùwÓ–¨y)^÷¦5ÿþ&ÿî’7Ýçø>ð ›ò5é®]þÝt™8†P/ö¦Ûüƒ†ð·5ÿPª£þí$ÿ`|`üÿv“7È¿,kþ•&ÿÊIþlÏ"ÿnx˜ø&á[zÃYþupÃIþÁÔ‡©uÚ(eQÕ" ýWNåßßÖüû‹ü»CþݰæJÚSþÝ0çк;¶ü»aË?Ôßü—5ÿP£h¤»üo Þý/Sþ¡ܱ˿.ó/“ü»MþÝp›ЩЙ™ÖüCY²1ÓIþÁL…Y‘é&ÿ`»Þ¶æ_ ò¯´ä@ŠuÊô0ÿð=»Eþe:Ë? ù”iq’0Û`6Y¬ù‡’ˆ²ÑâØeUþY¡?®H\1kþ¡„Ý2å_¦9ÿ€ªÝ²åŸÅ–¨y)^×bÍ¿ëäßMòÏâ>ÿÀ÷_¸nÊ?Ô¤›vùgq™8†P/Öâ6ÿ ƒ¡\·æJu”ÀëNòÆÆÿº›ü»FþýmÍ¿bä_IÉ?€í“×<Ì?|“ð-½æ,ÿ€º ¸æ$ÿ`êÃÔºfÍ?”²(j†þ+­òïº5ÿ®’7È¿kÖüCI»aÊ¿kæüZwÖ×lù‡:ƒâ›¯Zóe0ŠFºË?ð¦àݯšò5à†]þ]s™’‘×Üæt*tæŸÖüCY²ñO'ù3fÅŸnò¶ë_Öü+Lþ“üh@±Nz˜øže’:Ë¿+äPæ'ù³ fÓkþ¡$¢l¼âØeTþY¡?®H\1W¬ù‡–iÊ¿?ÍùT-Ó–Wlù‡š—âu¯XóïòÏBþ]qŸàûÀ/üaÊ?Ô$‹]þ]q™8†P/öŠÛüƒ†ð‡5ÿPª£þá$ÿ`|`üÿp“äßukþù‘E$ÿ¶_'ÿ2<Ì?|“ð-Íp–@Ý€d8É?˜ú0µ2¬ù‡R%P-ÂÐ¥TþýaÍ¿Ëäß5ò/Ú(i×Lù—aÎ? u×lù—aË?Ôß|Ùš(ƒQ4Ò]þ7ï~Ù”¨×ìò/Ãeþ]"ÿ®’nó::ó’5ÿPÖ£l¼ä$ÿ`¦Â¬¸ä&ÿ`»^µæß‹äŸŸä@Šuºäaþá{ö'ùwÉYþ]$ÿ€2/:É?˜m0›.Zó%eãEÇþ+©òÏÚýqE⊹hÍ?”°?MùwÉœ@Õþ´åßE[þ¡æ¥xÝ‹Öüûü»Bþ]tŸàûÀ/ünÊ?Ô¤+vùwÑeþáB½Ø‹nó:zÀïÖüC©Žø»“üƒññÿÝMþýFþýaÍ¿üä_AÉ?€í¿y˜ø&á[ú›³üê4à7'ùS¦ÖoÖüC)‹¨aè¿*ÿ~·æßò/ƒüûÍš(i¦üûÍœ@ë2lù÷›-ÿPgP|ókþ¡ FÑHwùÞ¼ûSþ¡dØåßo.óïWòï2ù÷›ÛüƒN…ÎüÕš(ëQ6þê$ÿ`¦Â¬øÕMþÁv½lÍ¿<ä_~É?€ëô«‡ù‡ïÙ%òïWgùwžüÊ<ï$ÿ`¶Ál:oÍ?”D”çû¯¸Ê?k#ôlj+æ¼5ÿPÂ.™òïWsþU»dË¿ó¶üCÍKñºç­ùwŽü»HþwŸàûÀ/œ3åjÒE»ü;ï2ÿp ¡^ìyûþ3¿? ß¾ÿ9µÕ«£TE©yα}`¼`ÊŸsóþÀ/gþùwÕ‚|¥«äÕ[pÀV,'ÎzöþÀD|ãñ-:ë¤ßzh˜@ŽïÔ¬jCäúû®"ý–qN{àñ/bzô›˜*žUýpå"ŠF:{@ÿýýðdð´_Œý0uîoæ~ˆ:ëêý½¨7þÖFÞhŽÜÌ® üü2‹d»}_ß»Õkþ¢º'óŒ(úQ G¹qƱ{Á„¹tÆu~-]tA5O¦·4Ïu_½yÆŒ¢Ø¼3žåW3|oá{ÿŒ“æ) T¨æÇüzø³0÷ææÏj[üŽråÆÏŽù¥úiî/ªqÖãZ‹+õg•_³PâEáŪÕgLùõP¿_­ù¥-—üj‹Bñ¡?«ÅÖE©¢‘nòË <û¼àeÕºÉ÷N‹šqÞÜ^Úº8ϯÉÔ;ò³›÷ù^ýD<ãñ¬>­¶|_””ÈÓŽ]ئ L·ÓN3,·|ÿ ¸ÐyÕ†ãrñý7ùþÛ)nŸ“jN?ç}ÁFòuù]øvà;}ÊØ††¿z;p6à—§T<©wHÅþ€‘€1PÞƒŠkõ£¶þpMàºÙ8¾XßE –,X×ÚÞi¼“Îñï,Ç?UJþÙv¾ÿ x0#Ýò7ÈÖ€¬Ù’n»œÿÂL‚•®v~?”QF¤›Æ®]\V»¸Çñ#ÔÿºnéÓjê`«…-4]½ÐX¥èYãÜž2ÍÝ“¬ÿ/Ö¹žn{¡1ù„È–‡'Õrw lCÑHç_À7~?>W4®Ä“Æùë‹ñ‹yþ‚µ5Ñþ¾îF‡ïßã¨C½6é2?©ßÿB÷C<©Ž'ú£½{Bä;gtÙð÷È.Ÿ”7«þ™vþƒaŸ,NXëi° yåó L>)/dÆÛÿüQ†P/ÞVOÿýgäŽvõêæÔˇ̿ÿóä÷Ÿ)R€eÔ;¡ZîÞO¢dý,ÊýŸóæÌq˜ÌŸÜœ3­^ù³Êíýmí÷ŸŸ=Óÿ šj‰?='oø^S(¾6øúþd>ìÉï?Uzë'SÖØþžà“ãþ{ZÀâY>ò ȵã†Yæï ~³æËãjÃ.EYŒòÅq»YæÇœÌÙú4 ÀÐÃÔãjŠ; ´…³ÿÈŸLSü2PÓÖ)ÞtÜ6ÅóQ=踚â¬ÉÿSäÿq—¯%7Óû~ü…ó»5锹]cŽ{»ø^SŽ!Ô‹=îmú{‚áèÐþhšW‘ëž²ŸßŠÇ½Ÿû÷9ßL“"7ÒeET»ñ4J:Ê™4ÇùH†Ùs,Íé|Èß™<9]͇öš³þýÿ'ú|Dô¢Úø´çÌ?¦&¾êøZ¤çÃð÷cr>;)`™4ÓŒØþ~ÌÙ<˜õƒ ±þý˜¨d¨4eþû13?\eC¬¿Ðª7ÔÐ SÇßy æM˜×~P»« J%”W°Ÿ:õ÷cÞû‘¹Ë:FÿŸ ÿPswåÌ ãÜÝüÁ4w[€6Ÿ°Î]ýls7y.ÕwSs7e4ŠFzò÷c‚ñ5Å×ý˜qþ*£œ0ÏŸ×úñÓÉßÉ:Êúÿ$õòüàmúû1éè'Ðo5ï¶ oþɼÀ9Ǽÿý˜ ÑÔK´ÕÓÿþ!ro»zÍrêyð÷c*c zèQÕùPò 8ê8ÉWså¸0ÙG\_ßí‚Ýq\ r¾û2Èy郼`!ŶyÎõßÃì¯'¾qGÌ:ýú®1Ðë@¡G cÂ÷0K‡)xDm‹§‡Eyò#ÛB-Âø=Ì_ŽªVý üGpËaua÷ ÊQ8ÁüáˆiD€fýh‘"G¬vQ¨C(¾è°ZlW”.(éø=Ì ¨:Pa‡óPµðævÊ:ìíâ{˜‡Äq)Mê=<ìýÜïan³ÏéCjKÏG™‹²àc× wÈÝï7K³?îJÛ͹¯·]€?Õòìü*ó{ñ]ÿA|>‡Ìm'¿ÿtèâ÷öÇί—n3€!ÖïaŽ„5õ{Có=Ìp˜0m¾WÛ¶!J}”Vß›º˜ïaúYû)¼/|À÷*éoåÆ1ck[ÀÐÆG³¶qØ÷¶¤ß€¼^dˉƒj¹ (³P4Òõ÷0# {A?hìç¨ÁÇÌý¬­‹óó«Â8ü¨Wý{oÓ÷0³ÿGÉ‚ƒ¦<>…|ò¨y›z{ð=Ì2³(Ï2¶Pûp8JÊÈŽóѦ=Ì€NçÃWŸJÀªùÐÞËÖæcè]}>¼´l×ïÿxÞïGÊÙбTñÁw%Õ8†ó«•€Ëw§ÚÏÈ:½âhÀ‘€s  ­äβ=ddÉ9–”¬X ð-h¾+óx¿ YÌF–’’½e½ÓOÞØomÁ°jÔ!Å­ïTç)€“?7€¶³À Þ‡úß~C0t•J`ÀÔÞ¯šªJ9”Wö›‚¡}Üvqÿ†ÄwÙ?r§~6xôgƒWö‰U? äXŸîSq åˆ(œ ^Úoʈ5@«Y3¢ú~[FLGžJõûTF D€¢‘ÖŒ¨aº ›¬u(ÿÑŽ8ëà Ûg:þ¡>dwüÓ—œs>f>˜ñÇ¿ï9þ퓼8L^¤¢ïC¿ð5/*j×ÿÈ+¿7/pò>9ô·?ŒÂ0„zñ¶zÚ¾ì„ÜÑ®^Ý}x“þþ/ê5¶ÕÓÂÄ9—]½ËßédæåÿôßA´ÖKßKÿ¤ÿ÷šòq òæƒæzs¤ÞÎÌ&Æz.òqE²Œù{U+wF Gé²×1ëÀÔ‚ Ýë&½sTù8ã/ÉÇŽ7õ|Ìø–ý@ª=ùÖ³|Ü€o=¾ƒßºÈÇÉ€“—~ë"»vŒ2€æ|¬ÙÆFšó17 7`hÎÇ_÷y.UÈö¸ÈÇÀdÀ4hËÇx¨8¨µ6Êœ}{N0€¶||ê ¨¶{ó±L ˜—ö¨¦z¶[”ÿö‹òâžçåãäïÈǃXS±þ¾[åã”õûù¸o)§MÙoÍÇ<{lù‰Ü—êñ»U>†¡„¢h¤gùX§ÎÀÝÆ|¼·KTÉCÃ÷_w»ÊÇTûÄa9»ÛœIè+Ð÷ì2åãäÉv ì½ÛE>†cè@½¶zÚ¾|¹®]½B»]䣆ìï¤^Y[=ýïŸïYòÐðýó].ò1C2õÒvšòqò»zCw¹ÌGóµU8:PôNÕÆ Q꣼¾Ó1‹Â†©µÓ͵յÿ¹WecÔŸ’¯Yôl<pPË¥ž=/ßúÆlä’þ# ~@Sv¨É·{Þß° `7¨WZJ»~?ºGÐ_Úºá5S·‹rÿ[Q4ÒŃ~cÿãÚ‡ëÂvã<­FMúÖ¼»cv¸zÞ…cõâ·«þÑŸ÷wBîhW°®¾‡=ï7÷Oa øQ¿ávÕ?·±þ{Dùw›cÿœ†I‡¹¹ÍMÿ¬^³GõÏ¥?¤þ¹ª÷Ït€©T[±Í³þi/ _ÿmNú§P5 æÛ\ôOö7>Ý-`ihèŸ÷wèý“}úá7ªv lCÑÈç÷O ®h\‰ßû§/jÄnóîÞæª‚pÔ¡^Ø7¦þ)‚\È®ào<ìŸô­¬ÿ.Ö«êŸ(ÛPvmuìŸù0sa6muÓ?ý€?Ü¥ú§D†ôÏ7WôþiЂj½¶zÖ?ñÀW}«“þ±lèÚN¼·ºèŸ}€{ÏoqÚ?oKÿÌ…N€Þ±EõÏh”‘(ùüþ ÆÕW÷-Æþ©Œ°Ó¼»½¶ºêŸ¬qÜÞ!õ ¨µ‘þ9…|r‡¹àæ-öÏ\ $PGŠêŸÑ(#QƦ8öOg˜p˜A)nú§p•ª.^”þ‘¡÷/€ÕüS<ëŸã›Å—¶]|×7;éŸ/€ÖØì¢¢'.1€†þ¹¼EïŸpèУ7«þiˆRE#Ÿß?^¸²·‰«¬Zyÿ'YÔŒmæÝºÙUÿ¤àH¦^Z²©æ!ϱ+8t³Ëþq|>Ùž"a,cx²ê¡z(A(õ“{Ȧ LÍd7Ï'ÿøZàËߨZõ›ôPÝKz¥ìÀrákÏžOÆá‹Å·úkc®{ö÷µjõ Ÿç“ ë†ÀœË.mÕ‹©mC ™¾Wvc“€™[ô5€¶ûÕ‡ BÖÿmþ^YÌ ˜E›Ô¾ŠE™Ž²`[@ݯ¾Ûއ“OR¸ÜzK',ƒ7©Ë­7P‰ÂåVǯM—[ÅŠ ¤‹7Ù.·|%ò?[¤z¹Mj´~CùE#>œ´^nYç+ ë ¬{¾2Î×TÔ˜-æqˆÐíìùd8ŽÔë¿Éü½² ô:èa_©ùÓ¯gŠ ²[`ÞMrÿºšýõVÆF1\J‘zO6Zëéß?CÞ/²á}ƒÍ_É×ô§Ï}ß`"EƳŒÕUôE‰@‰Üè8ÏMašÀtÛèfž‹JQóü÷9™çÞôyÎú’ãßfŽ=›ç]øvà;ý¥‹yž8ðË/]ÌsÀHÀÈ<·iÒÓ†˜ç¹,`iÀúÐ6Ï÷7u/Y(Ÿ/ç9æÌ‘ j_í@Ù†rhƒ«y~º‘yž†e –åÔ<ÿå£dãÊ\”ëçyÌ ˜¸õnîß6n¶IÍóÑŸyþ{VžÿøS­ñzÏîßf®ßõ¯˜…õ.æy?àw€¿®3ͳíþí"À€)Ð|ÿvä@ÈXi¾Û°9`Oh¾[²äk6Ò|ÿ6k-ù·‘ü3€¶û·iPÇ ®®µRæû·«W~km÷o'@ƒš¹Ö<Ü¿}æ]˜·×ª¦z åM”vkMÁãäþm¡õV/¬åתÊ\ÃþÿÒ@ÙkMô=Ð/­Ôf­-€Ö"¯Ù’¶FPrçùï yþ»œü[Cþ-÷l>6à[ïàr'ó1 h Ðòå.æ£;`7À‘ùhÒ¤õrÇù(S&ÿrµa/åÑjQòª×4V2iàÇÀ¯.Só‘‚’¼Ú8G–›æãS ™«­óá·Ü6ƒR}þ25QÂQ4Òý|àðÇÑx™q>|P½V›ç#c™«ùHÿœþ_%õ®/3ÏG z2zÚç¦ù˜‡ŒïóvÆNõ±Ÿ«ø:JC”ÆŸ;NFq˜¢0u>wý>of¢°Z²É`<>&ƒÑðG}0ŽÀòG¢»÷ys[ßçƒo6¾/­ƒÑ.þ#íÇ ñ1Ä„DC'¿.UÚ„À4KT¢.Jm”·T}ÕÉ·-ÕW¨~òö.Ÿ¨^åÍ\Êú¯”õ—w ³Íç@VZû¸M¢õUÞu¨kDµü¸T-öS”™(i÷*¯õ÷A{Ž_jìߨÁ+íÛ)(QîÐ~õÌ|~S‡õª'JÿþéôûW–±Bè|KÕf>†r%m‰c¿­…Y ³o‰ë~ ;z…ê·‡‡¤ßŽÓûí=€w)6lÉs‚˜~«ˆ¯¾7–˜ƒX¿y²X —³žK -ÇûãgaÎÀ_¬¶Å^”=(i‹íZî¡åÀ2’s.lìÆÅ*9G£Œ\nLÎYKL× ¨ãrkÇYlKÎzÈATï¶Xµ\i”’()Éiûµ`ýý×EÂÝ^&\µ.òý{Ôôeæ¼LY,áåøþxŽÔÛ±Øþýqc¿ ‡Ž‚^²Hmãn(]Qº/rì·ú0õ`:,rÝoù`ó,Sý6é ô[×#z¿Y pís)æ½È³~ÛŒïk|?,tÒoñ@q@K:ö[˜H˜ Õ¶h†Ò]-ÂÖo¹é·XØÆ U¿åAñýÜØoå™úí]N´ö[äB[¿DNÙ’¹@õÛ”õ(é¬ßbà¢áû­/jD¢¹ß‚ºê· u¨×f¡}¿™Ï5½à³—’‡ ÔV¾þ™(WQ2?s츃0©0¿ææ\s!ðgKUË}u@ZîÏïõ– 0œj Ÿyö<² ¾Æøº~fn9ýyd) @¯ äø<òö|o.!  áyäÂÅúóÈTè}Ð×ç«X²E#Ÿÿ<2 ×\ñóýÐ5|‰¹‚>sõ<2‡?õÏgmäy¤7r.»‚—õÕðàyvê<Ö1ë?OõÏz”µ(æ9öÏT˜˜eóÜôÏ»Àï,Vý3|¿ôÏšzÿÔ¨Gµó<럧sÅ÷d‘øJÎsÒ?ç€~º;×Eÿ$ngN `¹ý©gùº _"¾Ÿ:É×1@£€æ}ê"_;¶`mùz|Žž¯•€+‡|ªú*/Ê (éA¾¦Ç‹íÄ\±Ýˆ7ö×VÔ”¹æÝ=÷SWùƒ#šz‰ñ¦|íƒÜÛ®`³O]櫹(àOý6ñÖùGñEÉïØ?Wf £r˜§3ÝôÏvàoæ¨þ¹ºSú'÷½̧ZòLÏú§¾îøFÏtÒ?€ušé¢ü Ö4€¶þ2[ïŸ?⾜ pÞ™ªŽ¢FÑHúg.¶lãŒý35*Á¼»ÃgºêŸ`M©×=ÎÔ?•+ÚÌ5óÿq|þ}†¹0[–á§zè J*Ê¡Ž=´fÌ®nzhðÐÙª‡6n—Ú¿Sï¡p€T8óãsi|%ñÕ›áäøüO¬@wg ôÒ Çç4Àc€WcŸ×B­†Úëx|މ†«¶m”H”‘±ÎŽÏ©ñŸ7龜ÏPÊÍ2Ÿ_›a:>ÿû‰@?µŸ'ÄÚŽÏ¿"ŸÙ’+VÍÁ~”ïP4ÒÍñy.xøÆOLýõ©]ÿǺ:>ãhJ½®±æãsº?zãOLÇgoä\v ¼ü‰‡ÇçÔéR`_¼Ô¿>]í¿õ(kQ6Lwœ©010˦»»þ~'^ÍÆ [¹þÙ&×?õ¨Öaº‡×?ÓÄ÷d¦øJNw’¯ç€~º;ÍE¾&nÿú9W\aÓŒýUµðLóîΚæòúgª8.ÅI½'SMùzyœ¹àJ}5<¸~Ž¡@4õ×OµÎ?J$Ê€©ŽýÓ&¦ÇT×wüJÂSíói²´OäV½}LàŸR¬ÐT·í3"J[<ûñü6ÅØ:!9±jÉ«ïèÅ !¿›¢vô$” (éòw8Ÿë¡Í0ïŽÂSõgyîùRVŒT¸Ë,LQûã,Ê”ó1Žûc+L Ìñ7óü ð´XµC~`‡üœ¢ïH€¾T‹Žñlžká Ä×&ÆÉ<çz¨RŒ‹y¾4YÀß?ðßÉNç¹Ìt}7§@'CŸ¬vó"”(ùüyŽÀÕ ×øÉÆýÝ5øóþˆq5Ï…qøQ/P­ÌóÝh‘ïL7<9Ùå<ïßoÅž2‰VݳeJb´c÷Œ„“ízšCaÛLWÍóÝFižEÉzóÔ¨F±æÑž}oèÎ$ñÝš&¾üÑNš' èÐyýßæû÷ëaÖÂ,›¤¶Å,”x”ÄIÞÆ3­›Ǩ¶é ÜxÜ$õˆ²5JKQxDùA´é¼&È_ X3ÉúˆÒÕ‹â5'©ÅfNåº$‡NÚFV¿þ‡Ûwa¢±?W£&M5·SÌ$WߊÂ1„z±“žÿ½¡&xãé;QméÊ((U':v]öažN¦ôD7™u øäÕvh»Š›ô¶KH¦ZÚÏÎÏÇâoþsÛéççïuÖÖÅÑ£¨¾dŒêân(]Q4ÒÙóÔ ¸:pacŒý[µð$s;eqõ<5c4ó?Qê=ãþyj |2üÙÑj+/BY€²d´cÇ ‡‰‚™5Úuǵm5QuÜ’µÒq ÖëW   Åš~þùüÝQâ¹3Aa‚~¢wò0ä­QjW}òŠFº<ŸŽNeÜ_}Q#&˜÷WðhoÏç¨àOý6£Ôþȃ⋒o”ãþ¸2Rý( Ýÿézì€Ý6^íWVÉþð]§ï…ŸQlóÈçï>xzã™0Òa$ŒÕ÷G#È=GªýQ¥ŠFºÜY#ÈÿqdÁHãþ8š>Î.ÿGºÞNÞÿþ?Êξ†ëíã®-T5AU%–¢JŠªA$DD¢AD±UKDD¤öªª±Vó×Xk+KCUmU%¶PuSµ„Ú«ùß™ó=÷ÎÜÍíûù¼oßø}ŸçÜ9ó{Î93wæ\²¤ÒÆæÑòœŒB‰G3ÚöœÃt†‰íìùoàË“2–“2b•xþ@Û•lUG»øü÷(—CÜÕQúaY<ÿ ´hϨ¢ö×+Ç.Ô€–Q> **j”f”g½âãSw”ìÛJ(QêÈO¬{Äõ™Ù6×G þÚ8ÁFÉ‘þ(Ê¡°^Qz@ûûG@kÆ™Gú£,#} r2Ù3GÊvãP†¡(¤ãõŠ/tkèÞ#µ~­…ê9NïWåX<ÿÿÅct¥_¯œ@?†~#¾¨v½² yÃX}ƒsGŠ Æùþˆòùo’ÄÒÆ‚xyCQBPÂâmëà ¦!L`¼³ç¿‹Œ•õÑ'ç¿ÓÅóß#˜ÿ>ÙžŽpñùoâÖ·„ú˜4hÙõÑ0pŒ´ÔGS¨&PíFØÖG9w·²oÆ å¾ËŒ%ä'ÖÕdzOsàÂçÅÉúX’1F[JhêcÐô1æú(3ÂR1ÈÑdŸ'Û F錢Žëú:tË8m}C5ŒÑÛU9ÏÇÿ£E¾ëqúú؈ž‰~d¸®>æ#Ï­opDܨÎ$ ¢QÃå9l‚âƒÒt¸m}¸Ã”…©?ÜI}\&àË£d}4ÿŠý–‰ý²`ÌæZ}¤—LÜÊavêcP IÃÔGKÀ€aÐR¡*@Õf[CÿFr~‡Ê¾=ƒråÚP{õ±ÍìÓµð«á³‡Êú˜…’:R[JhÿhÐHs}Üj©@d²Ç •íz¡4DQHÇõa€.ŒtUyTbÿX¡æÅëíª‹ýúØHD&ùr†êëcúôŒX]}ŒDaÕ`סÿ¡>’¤m„ÆÊsX¥JÅXÛú¸=D07G¦t¬“úؼw„¬×‹úðX¢ÖG:@Ùv q­>bˆ‹&.qˆúhÔèÃ!ê£*`À¦ÐR÷cu/NPņØÖÇ ˜c091²o·¡lE9c¯>™}š ŸŸ#ëcJlœ¶>”ÐÔGP‡8s}‰±ÔG}äºdŽ‘íº£”EQHÇõ‘7XЗ† úé`m}ìGÍ®·«r,öëcsÈ·6F_ñèq詃uõÑ ¹«UƒÞ1ÿ¡>Ê’¤ m4,Ïá½h¡ ÊýhÛú8s&?ÚÙïß/&ë£ØçüþÍ"ñû7“ɶ$Ú\'MõqÚ\¯)·¼C¡CH§¹J]”m\¦LõŽïnœ Ø3C¤‘»ÌF®»P5òv€ï`<9Àµï›¦7‰¸/èzñû¿@á@14þãþfs˜¦0 Ⱦ¨†R¥lÂò}Ó³ îD øVŒ€_ ¿oúå—í°ü×û6eƘÝ÷öó÷M Pç‘|G”lv<ÊX…´÷}S\0\l”vñÀ/¿!ýöàCæ¿Z¿½ØOç·@ǘýÖ=Âì·Í¨…j<û¡lv1Ê"…´ç·x¸8¸Ôµ~ E  ÷›O„#¿yQ|Í#œùí^_AD ºÊ‡²Ï¢œAÉíkë·­0›aŽõuì·Øä(é·ù3…ßÎÌRý6`ɦöuÍoÞÄ5"®c_;~+TZg_[¿]ï#˜kýs¡ì‹£(GPrûØøíÓyâ—/ÞÙGúm:Ê´þZ¿}ÕWç·H ˆþf¿ýÞÇì·v¨¾$é#›­RE!íùÍW)¸ªòXÄõo¡æEêý–ÝÇ‘ß6‘I¾œ>Ï~c"1ˆYÙ[ötJ$ÊÀÞ¶®k ó>Lxogï?{DJÛMHáý§TñþÓ¸ÝOd+ÓÛÅ÷ŸˆÛFÜ©ô¶ï?ÍúV@vÞŒLÒ€–«?¨vP¡h\,ß‚©SéÙ·n(%P*ÊO¬»*Éè#ß gü`ü7¿ÿ„ò½PäûOèßZaöñkhÞBGöåáÒÈýP>DQHgï?{…ký\µ\„ÞÏáßê%".}(ò= ·zÿ = =·gŠëäåêœîðz]7ÿIö”^òì¢ø£õ²­Œ:0µ`Z÷r2ÿ÷ìþ²0†OcþŸ!æ€_ûrþ{ºöüÆrâ–·³§¾0T'O”ÒÓv<î Ó¹§ì‹÷QZ¢É&,ÏoôêËÁºÃ6è)mü°‡Pî÷ÑÚ¸l/Oïc¶qXO‹7#o²ñliãÅ(‹PÒÞóñpqp©=´þ E 飷“OOGÏoxQ|Í{:ÿÃ]Лy±‡ìã³(gPrÃlý¶f3̱0'ó?lroé7·©ÌÿIbþD²©a.ÎÿÄ5"®c˜Þobþ*-3ÌÖo×» æÚ‚¹Ð]öÅQ”#(¹Ý­üvÛ¸©—<ñË—ïìnžÿQ¦ EÎÿaúù(â³á~ïn™ÿQ}IÓ]6[¥.ŠBÚÿá ÃWU‹˜ÿC…š®÷[vw‡ó?™äËéîÌo‰Ð ÐëBeÇ D£Ä†ÚúͦLD¨c¿U­.ý6{²ð[t¢ê·GÝð —HV>Ôµñm/q{ˆ;×ÍÎø¶h1кn¶~ 3fX7Ù}Qz£ÄÊ&,ãÛ{=ß|`½`ƒºÉñ­JÅ^Úñ­a¨ÎnwCt§§ÙncºYÆ·SÈ'„l|"ý¶eŠBÚßæÁÍËÑúmj|O½ßBº9ß|‰hM¾žÝœù­t9è!²weþë!”§]mývæÌí®Žý¶vmé·×' ¿=œ¢úmÀt’­èêšßº×…¸!]íø­P} ]mýæSæY°ì‹›ÁB¹F_Ûøí‡Pü– ››,ý¶eu˜Öo»»êü6hJ˜Ùo%ºZü…Iö”`é·@…´ç7O¸êp-屈ïÿQ az¿å;òÛ‰."âXw‘ïz°3¿­„N‡>ÜEöq J2Jj[¿ „‰‚™ÜűßZÀ6ï.ý¶ícá·äIªß*¼B²Æ]\óÛåÎ"îb¨ˆ{ÒÙŽßví:ÜÙÖo‹`ÂÌê,ûb"Ê”TÙ„ÅoCð[l0llgé·æ(MCµ~ëÜEç·ò@¡f¿-ìlñÛ½NB.è&²Wé,ývå ŠBÚóÛF¸L¸#´~[€:¯›Þoñù-’ˆòíìÌoM } Ã;É>®‚R ¥j'[¿Ý̽Á¸wrì·Ã°9!Òoþã„ß*}¢úík€5$ÛäšßF7œ¸™Avüdë·º0u`ªɾ(‹R¥ªlÂâ·ï»à·¼Ž‚½Ô•±°£ô[ÊÁ®Z¿]ÒùmÐò®f¿Õ ²ø-9ìë:J¿Å D£(¤=¿ùµ†ëÝQë·Z¨ž]õ~39ò[A ˆ¸,ò¹9¹Ãï7ì&f1WeO¯DIGYhëºÉ0a:ùý†nÀ]ƒ¥íö޶[>^µ€Ù‚]ûý†Ç"îaW!Pk;Í~ïÇüSý[{‡ßoX ¸0[Zn %@M†Zb¡Øë}ûŸö©-…ÑʪM€¦0:‹L/Á¼S<@ž®¿ý…r·³PŠX†ù'>’FÝKÌbÎùËYƒ²J(\ßü + ÉÍ¢|Y ý‘û‘}†¿l7¥ŠB:ø Ýû„¹ÖÀ_[/÷:0þwÒ×Ë µY{¿ßMD–ˆ0žñõr\þþ%zú®œ6±?ùTä)V ŽóZßæ÷/ &_¬%Ÿr¿©1²·U>qƒkæ3§÷›îùqüA̤5΢œAÉõ³­ä­0›aŽù9¹þ‡M’…|v$×ÿcÄõ?À ’Mõ{Îõk®ÿ‰kD\G?ýü!®ÿJËãôÓ” Ïs\o/˜ks¡½ì‹£(GPrÛëÊÄç°ÏÉ=/›>žr# ¡ƒ4ì"¢µ±½¼0eBGm¡døéßêÑÑ\(J»Üxõ’÷k/›­ò:ŠBZßÐîߎñ?Pàe䱉÷POêí¥‹r? Ýöý7"ÒÈ·­½õó¶óÉ0bb‰YÐNö|(JJX;[zÁ4„ lçd>) \$PÚPyòP}þ{”xþ»­.ˆlOÛº6Ÿ¬#n-qûÛ:˜O¦Nü²­ƒù¤'``¼´Ì'>P^PAJ?Ÿ”, XSZæ“+¾‚ºì/¨;¾¶óɘïa¶øÊÓµ eÊ&_GóÉ»~Ò¯#ˆNÌL_9Ÿô@éî¯-“imueâäåo.åóÈù¤<²Ùßñ•í>j#”„¢.Ì'Ù„e–ÛF[/+QÓ;èë%Á×Ñ|ODù’}õóIz0zlÝ|ÒÙÛªÁz¾æ…~"_UK>e>¹Òšóï§Ï··KóÉJÂÓÉ~¸µ´F J2JjkÛJ3¹µ“ë_Øæ~²¿åú7N\ÿ¼B²Æ­]»Ÿ|¹•ˆ»Ø^Ä=ieg>Ù´èp+M™Èë_˜…0³Zɾ˜ˆ2%U6a¹ŸüÀìÓ®À]€‡´’ÓH3”·Ûkë£Sk]}”roo®ÏZ™§‘{ï U”y±•lö,Ê…´w?y#\&Ü‘÷µõ°u^;½â[9ºŸIDùƶrzý íþ¾ìã*(•Pª¾oë·ûï æ^[Á¸¿ïäú6§­ô› ׿ÃÄõ/À’í{Ï5¿ n8q3߳㷠 @ ð÷lýV¦Lµ÷d_”E)ƒRU6añ[ÖòÄ_n‰ÿ}ñKé·Pøjývþ=ßÒÒ|Í~«ýžÙo‰¨ $_×R6ƒ¢öüæ ×®wK­ßj¡zúêýfxÏ‘ß Þ·Ûˆ|nï9óÛ~èlèüwe¯CY‹’ñ®­ß’`aÒÞuì·pØžm¤ß~$ü¶vˆê·wš‘¬Û»®Ýo)BÜ¿­EÜ«ïêý&žn! ³@ù-lý¶ f+Ìú²/–¢,AÉhaå·‡ÆËïq¿%66µ…œþ{¢„ …û-ÃÞÕÙ­1wk³Ý¶¶°LÿË‘½E é·Çïåa+¡(¤½û-'àŽÁÝxGë·Í¨[éý6¯…£û- DL&ߢÏ^¦31AÄŒzGöt”¦ïغΦ,Lýwœ½ÿÕ\À—ß—¶+?÷¿‹÷¿²`Ìmîâû_Ä%·²¹Þvâý/ þ@“dçý/À€aÐââŠP j5׸X¾ÿÕŒúO0כɾ=ƒråZ3+«ÏËôm‘¿_¾¯™4òl”OßÓyUs‘c€¢ß3ù¯f#wD ûˆfÒÈÞ(PÒÉó2ð–Ìò¨Ä÷¿M…š×Rïçìfßÿ""“|9ͬÞÿBŸƒžÑ´¨v½9y„Uƒ]›ý—÷¿HÒ€6B›ÊsX¥JŦ¶õqûmÁÜ|W0¥›:{ÿ xﻲ>ZEñþ×@ñþ@Ùv½íâû_ÄE—ø¶úhÔè÷ÔGUÀ*€M5 ¥>î7Ô½‚*ö¶m}œ€9“ÓDöí6”­(›Ø«ŸfÔÇ ðéà+šÈúŽ2´…¶>¦½­«@ ÿæúø©‰¥>ÞD®Gö®Md}x ¼„¢Nê#¯±À/½#ð§µõ±5û½]Ó›8|ÿ‹ˆ9ä[ÛÄêý/ô8ôÔÆºúè†ÜÕªAï&ÿåý/’”¡&å9¼ç#”‚æB¹ïc[Ç`ŽÂäû8{ÿ xysYõúñþW¤xÿ `2Ù–ø¸VÄùåc§>jÕj士Ëï«=õàãfŒ ßWû äW?¼5ÅÁï«mÙó·ìØ/Q¾@ùÚÛ^q4nBqĂǀ'yËâA n¦-Žh]q¼ôf3sqdz[Š£,r²7ñ–ÅqÏ‹óßT( éü÷Õ²‰È""×K[+QÓ›êíšàí¨>≈#_²wQÝï«… £Çzéê£1²·5?ˆUû¨«¿?x³‘HrãmÑF/yO¡œ@9Ýȶ>2aÖÃnä¤>¦Oy[ÖGù¾¢>ލÖG$@Ù&4r­>êW—¸vìÔGq ¢@¯7r0ä6àÙ&Œ íÍ[¡6Cíoh;̃™“ÜPöíX”1(I í•HioJ$¼xÿ†²D¡¼ÕD["íéJ¤4[s‰|ÚÐR"¾%dcc‘Ý£¡,‘ã(?£(¤“ù#< |×[ÚúHDMh¬¯È†Žê#„ˆ`òE7ÔÏ>è^èAoéê£<²‡UƒwÞr8èkãD‘@Lù6çoÊV” lkcÌ<˜õ œÔÆ à>²6ž…‹ÚØÒ[­ ?€vd‹hàÚþ°e‰+C\ÝúÚPo±ß:Λ ¢ ¤å­ö‡ÍÜ xöM `ÞO¿ICu—ªùÀs·¿)}5å#…ta?}_ÂZÖûM­¿j¡zzëO·¡£ýa ꋈÛ^"_y4bØ“Èǽô 7¼ùöÓŸE’TÚØ\_zhJ<ʘú¶ †é SßÙþWÀ5¼¤‡z²ÿU¸Øÿ  °‘ÈVµ¾‹û_Õq9Ä]­gg|]´hO=ãëÀñ€ 5`€y¿Î0¨P¨¨z¶ã«ŒLÝz²o+¡TD©#?±n¿ÎÉo2¾ëâÿ†ø¿ž_Fù©¡v|ý½žn|]´¶¡y|}«že|‰<ƒìêÊ:2E!Œ¯¾à­Á{×ÕùÕ³¡•ÿë9Üÿê üÿ–ÈçVÏjÿ+ôcè7ÞЯ›7¼¥opn]‡ûuÚÙÿŠ$±´±à yCQBPÂÞ°­/˜†0o8Ûÿ ¸È[²>VuçûÏâûÏ:¸Ô@d{ZÇÅý¯ˆ[KÜþ:vêcÐT euÔGoÀpÀ1вþh Õª]Ûú(ããVGöíÃÚB¹ÿ¦PJÈO¬[t65þ |^móþW(B‘û_ÕÑï4ýMs”©£Ùÿ 9šìsjËvƒQ:£(¤“ý¯ «C·¬­­b¨†7õvUŽÅÁþWµð}‘ïzm«ý¯Ð3ÑÔÒÕÇ|ä¹õõ ލý_ö¿"ImŒª%Ïa”¦µlëæ,LýZÎîÖðåz²>RC¸ÿ*îd À˜[ÓÅûŸÄ%·²¦úÔhRMõѰ`˜ÔÜÿ„ªU«¦m}x2þÕåüzʾ=ƒråš§½ú¨[[Þÿ_¾ÏÓ|ÿåÓºÚùcUMýýO èºæòøËSsÿ9€ì#oŒìm•УúXŸß¬&’ܨ%Ú¨ðºôÐ)”(§«Ùz(f=ÌájÎîO©%=´+ˆûÅý€²M¨æâýâê×®šñµ8PQ ×«9_s_àÙš¼ÿšn|e}¾j3Ôþ×lÇ×y0s`’_“};e JÒkºñ•õùÖ×åýðàý_3ßÿ@y«¦v|m_MÿÈ­¦y|ýô5ÍýªB6zŠì¯É:8Žò3ŠB:»ÿž¾«ªÎÿ¨ žVþÍáý"‚ÉýšÕýt/ô ªºñµ<²‡Uƒwªº´Ÿþ©Wñ ‘ýñ«òìí@Ù†²ëUÛÊX³&óU'ûÿÀF×…±ÃŸý:Šý:¬ÿ«.îÿCÜKĽùªÁõFåWç8«hœ,÷ÿ9³»Šì‹õ((»ªèœÜ9é¦û4S’ÀÔ¾5Lø$ðOÀ¿¨"Ÿ0€Ò_(,¤?~UçäÖ@ïW7;y_ó&ž¨ÕIî_EÙ ¥ŠBZ=a¢\ÿTÔ¥×õ´²Ö¿ûQ³_×Û)½ŠÃýˆ˜C¾µU,ß÷Ìz¿­é$ûì5^0Q¦ú±y>Ö7¥0eÌO)¿š2ù“ÉLÃ*+ÝV#0±U÷iÝŠ©­Õ‚ñ„¹TYå^äŸ_àŸÛW–r·ó_5zü¢q·ˆù å×jŒæ˜=(ߣücú;µHJ1“´)iµúwå€Äý¦’P¬2` À$åݧ½öGï‡> ’4YJ…ì”r% G@Êñ€ìGÅÔPªT[õï"ê_H|äæ>ûœÉ†g ­­Œ ^ìßêX—õИTIäYÄ3¯™;f_%åÔµWcw"o²ñÜ+´cí´UÛ¨ s@g‘)jÌOÆjævâQã,í| ¶ãW*0qR©"£›˜ N@imè+ú£ —i4Lí`šÒ‹×6…T!¤!­_Qº«F`êë&ñŸŠB|RUØx*6îh‚’öº'} *þ4Ø©ªÔBE5‡IÙ…²å±éoõ,­@XŽpÎô·éôΙ/VG‰È BÖ?i›ßÀÔ¼(÷êSäûD‹ˆõ9û?•ñÕWDÑ}¦Œáæýà«ëø+Ê(ñgEQzÿ<Óð/ þö«âG˜ ün격M«'Õý?à³^µÉ?“ü#MŸÇD.‚\HæJJæ*ÏÔ²ÕN-û?^–ìp}V˜ò@¹þ!YÉF¼,ÇLo”F(½¬–oþ¹ÿò²t\a¡<«bvÜ"æÊU¡«™cŽ F)ý²¹ä7 }‹´©‚UÉϘZ’'J>}z|Yòa(¡( i:÷V%ïÕ*¸‚¾“-¥X´h¦Ž *Èc¼^^ˆ×*›ûåxëJÜ´W@Æ+åõ•ø±m%Î!d![ËËJ HÊuŸ6›ç? ¢%¾ÃÜYžÅ_j 9âË«cá÷¤>êÄúZíí”IÿGuPŒiýeÂÊö®éï@ÓšáÏ¿–ò½JBnRž*>pAÉÓ²ò¤JŠÿ‘²¼Ê«Öù†þšîgúçö)F«%¢ Lœ\ɦž;–õ¬­çøàJú× ø•B6_yÂW×åõ_NÔgQŸ=yÿñ‘Çšäü¡¢>[¶Q볃’lÖû Å_ï”+*&þcç}e¾N ;˜ò³©‰Ïhb>MìôUû1Ê8”fåÔnŒâŸ#ùç%Ò(þ¯˜Ýù²ˆñBiHL´9¦"J”PsÕ>qÒ£ŠBúÇݪjÏœ8íNÕÞU»}ú.wYµi(KQÒ¶jÇC…Z쮯ZŸ¢æªíÚ©¢œ@ϻ˃ôFmTÑÜ1U<¬Ë¶ PiZk [£lïÙ–ío/‰__!ÿ¾¤+[7Ñ › 6¼¬)Ûbî”íg¨óɱó%õü+e{Z•Rª Û²ÅÝ“ bèOD?"†¼$3¥ƒPvˆBPÈMÕÎø! éû´|埣úþ¤J…Æ÷LtÛÚ·,T’— E1’7xI ®—eü« Ô:/1üŒðBÉ—Ì£Áf¤Hž/©–üŠþ’î¦ö]¡ñkåoýœj=ßGAhŒéïÀÔ—k¤v+eúœ©£k{(šTÉTø¾?¸ɯ¥NÖ2Þ“øêlÆ—?ËŠ!cµnþQð·ËÛŒ;ËŠñâê3u¼È<(H£¿Iοû:^yO!^)«ŽÕÞWÿ*UÖîx¡¿÷OÖ8².zQÖQO”0”põoýf˜Î/:¹÷R¸¸€M—˜ß—˜ÝßS/1¯•ÀÕr"[a×îß­'.ƒ¸õo«KÌ@ÓVÈöþ]`_Àñ0Àòû«“ʪVóö‚îYFL%”Š( ùüß_Í{AD]òQO_(ª½þCÍöÐÏFéeÝ¿›GÄòe¼Àшûw#‘GX%ìªÆsµ á>dAº§ J%”ª/غç~iæwÁ¸¿àäýØwiž*Íyÿå]ñþ À’í+íâû/Ä 'nfi;æ   þý˜:0ÕJ˾(‹R¥ªlB³ö Ò6—K øâK~RÊüþ Ê—˜iÄû/¥õï¿¥ H}ÿ¥´åýÔ’¯+%›A‰FQH»ï¿Àµ†ë]JëÏZ¨ž/éíd(íðý7Æ¿²"Ÿ[i§ï¿@gCç»É>^‡²%ÃÍÖoI0‰0inNÞíYVúmÝÛ¼ÿÒ\¼ÿÐŒdÝÜ\ó[âþ}QĽêfÇo¹%t(¿¤­ß¶Ál…Y_RöÅR”%(%mü6Ô|âGžYRú­J÷µ~ê¦ÿÈëE³ß¶”4û­j9’·()›}\B(ËE!íùíÜ1¸%´~ÛŒº±ŒÞoóJ:ò[“É·¨¤µßôóc|0üز—›£4EiQÂÖq`ÊÁ4,ád~ü£¸€AZ.³©°ÜÛMUËØ/ã¥â®Í³ˆK%nmq;– 4hjqóckÀ÷Ã5 f~ìTRËA»C7/.ð°˜PÔYÀ¤(äóçÇl¢²ˆÊ-¦õÃJÔôÒz?$w4?ÆG¾Ôbºù±rW«„ÞÅ]š+^Žì-ŠI÷<.ŠÿK åiQ[÷œ†9s»¨“ýß`×–’æyìÅþoÅþoÓI¶¢¨‹û¿×…¸!Eõæû¿ÕjQÔv¼rƒ)óÌ ûâ¦A(7Üè ƒÕxõÐøG1¹ÿll®Á¼ÿÊj¡Èýߊê÷šâf®JÕìÿ†Iöƒtk Š?ŠBÚÝÿ ®:\Ky,âùTƒ›ÞNy‡û¿aü+)ò]78Ýÿ :úpÙÇ)(É(©Elý6& fr'ï¿Ã6/)ý–Ò÷ß½Åûﯬq÷+4ˆõO ÷DýÛÊo»€vþýw˜…0³Ô¿Õ÷ßQ& ¤Ê&,~aû¿ÁÃÆšþfÿ7”¦%´~ë\D¿ÿG ³ßšþɼÿÛ¿B.(.²WQpqÿå ŠBÚÝÿ .îȿߠÎ+®÷[¼©û¿A¾±*éðýwhèðeWA©„RUýÛjýÿL0÷Š ÆÝÄ8\ÿÃæ“~«Ò€õ#±þXC²}¦¿]Zÿ7œ¸™Ïô~ë @ ðg¶~« S¦Ú3ÙeQÊ T}få·ÛÆ'ÿÊùü_ÿÿcë”Eµë±óÊqjÖÿ@iE͆«ýÌ`^ÿ£&|Ý?²Ù”h…´»þ‡k ×û­ßj¡zÕûÍðÌàhýÿTDÜ6ˆ|nÏœùm?t6tþSÙÇëPÖ¢d<µõ[L"LÚSÇ~ ‡íi~[Wõ±þhF²nO ®½ÿNÜ¿EDÜ«OíŒo¹Ot(ÿ‰­ß¶Ál…YÿDöÅR”%(OlÆ·i¦%¾ÿƒƒM}"Ç·ž(aE´ãÛ°§:»5ò.b¶ÛÖ'–ñ­r9²·x"ýöø±Pª#^ŽJÚ}ÿîÜÇZ¿mFÝ(TËúÿ‰£ñ-ˆÉä[ôÄ™ßB¡C Ç?–}Ü¥9JËǶ~«SÆë±c¿å?ìuu PüÖâ á·æõU¿øAÆ+\óÛ\âf÷Í#;~‹ŠÿÈÖoþ0~0ï?’}Ñ¥JKÙ„Åo¿?ÆoØÂg‚­úHúíúC¡\ ~{öHç·}@{¤~,~[‰œNöÃ¥ßRP’QÒžß"á"à&<Ôú­ªï3½ß<9ò[9"ÜÉW÷‘µßl÷#»ð@Ääþ#bŠ=”=½%åà[×¥Á,…ÙñÀŽëä~d#Gü#mס®°ÝÞ7TÛ…“-öÁslÇ~dUˆ«D\“ZÛiö#»s_€·ž ðÚîG–x0ï¾TŸ‰S±K‡JƒÚe¡ôû‘üp¾´F7¨®Pýîk ƒýÈÁ¼Sû¾<]/£”G©yߪ0î¶g?²=ÌóÿßÌÿODÌ“¿eü€r@(rþ¿¯ŸÿÒž˜ Dù<²@¦"O!û×Ëv£ BQHö#ó!Ì‹° ¿µõRµÜ}½¨ÍÚÛ,¸ôXä{ø·A·Y6zzî=N›ØlòòÇú§üm°¿Y<qäKµäS¯ÿ‘»Zåó6å󵿙÷ßIR†6šÜ“¹wW(„rÿ®m=ƒ9 “×n=óþ;ðòG²ž{òþ{Mñþ;Àd²-¹ûœz–ï¿çO\Ô]ý4"Þª Ôê®u-Ë÷ß øø¡+j@Kñ†:uµ@S|<ߺ&fmìÛE( QVXŸú|k‹{LLƒÁO-u×¥ÓCíÄ4à®®îêÕ}h®»ÿXêîäRd÷.uwçã߯¿ƒ³ç[³Á³Àsïhëm%jú½] ŽÞ'"Ž|ÉÝó­!èÁè±wtõÑÙÛªAƒëï×ܼ-’ܸ/Ú¨pGžÃS('PNß¶­L˜õ0‡o;©©ÀSîËúˆ¬ÁóßÕÅóßd›pÛµú¨O\]âÚÝÖÖ“Sq ¢@¯ßvP¹·xöoÆ…[öêc+Ôf¨ý·lëc̘ä[²oÇ¢ŒAIºe]íMõ¡œ ñý?xðþ·d}4Byëom}´¿­«Ò@n›ëãÓ[–úøó¦÷Dv[²>Ž£üŒ¢ÎžÿOßuS[‰¨ ÷ôv¼%†s;ÏL¾è[úúðA÷Bº©«òÈV Þ¹éJ}°<ú—Hrä®hãÞ_ònFÙˆ²õ/Ûú˜3 fÝ_NÖƒýûÝ•õPMÔdž×ÔúðhM¶Þ¹¶,MœqµþÒÖ‡f=xù†/ðÉ ]7¯·n<¡Mó‘rèŸÌùÖ‚°ÜÉï߯&i@Ëû~Pí Bohê­+¿S¦Ò y®ÜPJ T¼¡«·ö–Íigý%ÍêOÆ¿;Í’ï¾)Ò$~‡¸EˆÆãêß•5E÷Äü;æ¢S>Oç”Õ”cG‘`ÉŸ²ÝÞ(á( é`1¨}¾D9~"«ÙòOmýC5ÜÑ—CžÚ²½õà‰|qì¶ÈwýOQGåûŸè™èGòÍõ§8`>òÜÛúGüiPß¿xÃz=I@ù&Xò)õܹ5û½xÿ)¦Ø¤gVû½hï'#Ü@öúùÒùF¡\¿%”FÛJ>³æ’Ññý„Ű‹nÉBί( ùzeµÇ|D²ùF×î'´!®qµ…ÌÌT¨ P}£¦R¸Ÿððº`îßÌÍë²/. ä¢Ü¸n53=4½Á´´6öÈu9--BYxS;-­7ꦥ‘@#nš+äþuË´ŠBöñ×e…´@iŽ¢öî'”ƒs‡k Eìÿÿ‡P þÒÛóÄuG÷²‰ÈÆ3ן?a1©ÄlþCöô(”x”1غ.¦3LÌNæšÀ5þ’¶{µû_¼"ö¿(¼!²Uýõùãð5—CÜÕkæå€Ëw^ÓÍ–û cÇÎÓ€–%[T0T¬…ÒßO¨ø`[ h)Œ¢PE <®i ƒû Ìù?óËïòt@Ù‡ròw«Â0ßO8o6ê\bfóÍï²@>Bý§vrùôš®@B€‚ÿ4ˆòyd4Fö&{¯ße»•Q^AQHî'ä]a—òEØÓ«ÚzÙš¯¯—ôßÍóˆ˜C¾µ¿ëï'ģǡ§^ÕÍÝ»Z5èý»ƒû žT'_KK>eþ(Š\Ä*ßå«ï'è¾ÿ¸ÂñEöü+ÒëPÖ¢d\±­ä$˜D˜´+N¾ÿ€íi”…ܧß”ß4#Y·+.~ÿAÜ¿×EÜ«W´…ÌJ+7O@gòólçm0[aÖçɾXв%#OW&íMóÇwfŸŽ~][ó¯¨K¬PÄ2 mhŸ‚ðºn®-y–%Vyd¼“'Û}tY(þŠBZM ê÷`ÇÀn\ÖÖÃfÔèí4/O,oì|ÿAÄdò-ÊsúýtôøË²[ 4GiyÙÖoa*Àx]vòýÇ%Á^¿&ýö—ßxˆï?~€ñÊ%¿ÿ n6qß\²ã·X  ñ—lýæãóþ%Ù Q ´”MXüÖæŠ<ïE€ÿý]ë·š—U¿]½(ÄGé‰Ò;×ÖoMašÀç:ö[iX·<é·_~ëYFõ›ñœþ¸,’ÍuÍoˆû–¸ÏÙñ[*P Ðâs¶~‹†Ó÷œì‹Î(A(½e¿u¿ Ï{ à×/kýÖ6Wõ[1D™ª³ö[ÞYA\ºdöÛ€s¿íCÞ+d£ñ¬l÷k”5( iÇo `“Á–œÕú- 5ò’Þo¾çù͇/òùŸsr=Æýîg¿‰˜§EL­³²§¯¢ä¡\ûÍÖuY0»aÎþæä~÷|๥햔¶»\Jµ]<@ÙRsí~w âšú›Öv|ô2Py F²½ß}ãŒó/°„´\<„ÚuêŒÆÅÜïN‡IƒYtFöm2JÊÂ3:ó}ÐøsÜXèÞ|äyÝÔ å=¡pc¡ûoºë¦*@•.˜}üÕËuÓ“_…üè¼È^ãŒôñe”‹( éä~÷FðLð#¿jý¼uÞy½ŸãÏ8ú>(’ˆò=£¿ßí‹Þ½÷¯œ)q}S¹†UƒEÎ8¼ß­¯¼ÓÔ®Èïö«<9(QŸ¶­•0é0»O;‘ÇÂŽÉ•¥¡<«”ÆÁjiôèN²§ η¯?15ˆyï´¶,Lea ùE ý"Èçùúi逋(çQÒþƒñÊùÎ>ò‹îü£Î;guþÕÆròã\ÚŸ©3Y‚hcÔ/òœ4AñAiú‹í9q‡) Sÿ'ãÕ•S¾|Vž”'ÅÙÿ®¸Øÿ KÆÜS®W)Ä%·ò”ñjP I§ŒW-[†i@ËxUªT­S¶ãUÁIÁÜþM0×Oʾ=ƒråÚI{ãÕ³ŒW_ƒ¯ßwRŽW³Q>ýM;^­:¥¯b€¢3W´ŒW‘È>â¤t«7J#…t¶ÿxáW•G%ö¿;ÁüwFï×쓎ƫDd’/ç¤~¼š‡>=ã„n¼‰<ªÁ®'ŽWºçŸ ÷!{ø yöª T’Çy¶2î̽_ã~ÂÉóϰ9¿ÊÂhõÌ ž6ˆçŸÖlßñç<ÿÌï—Ž n8q3ë C<ÿ ~\ãd~¿´.L˜jÇe_”E)ƒRU6¡ùýÒ²EÄï—ü,uæþc•±à˜|z7Ê®ÓZCŸ:®3ô@ŸŸ6Zi—¡?FGòåÇd³ýP>DQH'¿_êîtLëç ¨åNëí¥‹ýß/Íû™ùï‘ïá1ƒÕï—jý·z#ôÙŸeŸ/FY„²äg[ÿ3çgÇþ „õÿEúoÏá¿Eÿ>SüWà ’µýÙ5ÿÝ9*ânq/ülÇG€=j뿵0«a–•}1 %eÉQ[ÿ½€ÿâ’FèITQñG¥ÿÞGiyJë¿ÐŸuþ« ôÊ)³ÿ”vñß“Ÿ„úè¤H^ã¨lö2ÊE…tâ¿à™àG~Òúo꼓zÿ)Çbß‘DDoìQgþkíþ“yüC©„Rõ';ã߯¿Œ?9ÿ`sN˜Ç¿GŒÿ¨þû` Éöqqü#n8q3Øÿ€ÂØÿ`êÀT;bÿPÊ T•MhüWTއÍãߌÇÿ~4(»ŽëÆ¿#úñèóã–ñïˆeüCGòå?šÇ?”QÒÙøîô£nüC-wÜjüûÑáøw˜ñïãßÖþ³ý~s=1Äœ:,{~Ê<”…‡m]3 &å°“õi[à6Ǥ £ç>Vmè Pl-?g}º]¸'ÿˆ»þ³ˆ+vXoCu}zhÐEõoí³1çD¶%€‹·j@á¼R|]™ª!ù%¢. @úÒ˜?P4ø&L=˜‡ä)ð@y åõC:ó§†b%Û:‡•ìÅqþ¨ˆx”#W²PöÕÿÜ!ñÓ€–5¿æ!ËJv ò$²¯É‘΄2E!í~c©ó?A^åèüZÿsÄz¶ž­ÿÀÿ?áÿáÿ_äóÏèYè¹?´ëÙÈËŸa‡vÈFgçh¾³4_ï¤ô½Ó)eà#S9y¤< Lù;ËÃ`ôV>zŽz˜9mJ©ÿMÊ]²°É:•;'ý>º´oaûÚ¥:¥ô3YêµÚRÔ.eµŸŽƒz}vP|ȧGÄ1ÔúAšå*Jʵƒ¶õš³æìA«z L¹˜}»˜ï,ÿÂÄG†”²M%&åˆ,ÛÍDÙž½¯–í€Á$vð9e;Oø¾1qÞÄu:¨-[ùX‚ïž"¦þÈRþoá±IÃ)×ÿDäƒEdùƒºZ6¸'MM< ˜@wÆ7 û£Þb³ª·,£þ5<¨zÈ''ké¥nS:âÄO”O”RL}0íõ©‚iûÕœI{ǵ6ñÍà߆ïjù`Ê箄\QÈQ?+Ûeš>Ù{•F¯Po„ÜÞ/¸›‡EšŠdAžF9…¢!°ìML1»ökë15á°¾³"Õ6ýåw³þ>?„ˆ`òÅîפÊýõü/dÛ¾ÿOt9¢[ì—N¼O( åé>[§Ÿ†9s{ŸãõÑ:ص‡¤Ã/ÞxWuø €é$[±Ïµïº×…¸!ûô“xÿ¨>P‹}š)B¾ÿSæY¶ì‹›ÙB¹‘C_dë¦õýÿ½LÙ°Y°¹ÙrrX‹²:G;9ìÞ§›¦MÉ1O%öY&‡(äH²§dK/¢ø£(¤Ý÷ÿáªÃµ”Ç"žD5äèý——íèy¯{EıD¾ëÙξÏZ }x¯ìã”d”Ô½¶~3y¯c¿µ€mþƒôÛÈá·ä;ªß*¼B²Æ{]{ûr–ˆ»xPÄ=ÉÒûM]ïÚt8ËÖo‹`ÂÌÊ’}1eJªlÂò>ö'{ä‰ï ÜxH–\†7Cy[(|ÓÕi¯Îpå€Üš ÷Y–y~oP ˆäU²d³gQΠ(¤½÷±7ÂeÂÙ£õÛÔyô~‹Ïrô>v$ä›åôýhèð=²« TB©ºÇÖo÷w æÞ~Á¸ïqrý›³_ú­Ê ®ÿn‰ë?€5$Û·ÛÅ÷ÿ‰NÜÌÝvü¾ÛÖouaêÀTÛ-û¢,J”ª² ‹ßj/Oüåïñÿ>üÿ½ùý”û´~;¿[ÿþPÚ>³ßjï¶¼ÿš@òuæfcP¢QÒîûÿp­áz¯õ[-TÏ}z¿v;|ÿ—ˆ¸-ò¹í~þ÷§»‰ÙEÌÕ]²§W¢¤£¬ÞeëºÉ0aïrr½× ¸k¶´ÝÜ¿„í–ßPmçàE¶ ]®}ñx§ˆ{¸WÄUØ¥·z½÷ ÐI [êßv¾È\xPZžH‚J„Z°Sãb¾ˆ„‰€é¹Sö­?ŠJØN‹ù½ˆ°ÒQ•à+Âûì”3õ³Byš¥5²Ò#ÿôk–ÙȽwZfêÈÛ„l¼dn7 e)ŠB:þ½ªxè8èÔZ?‡¢†déý¬‹ýï#<‰¨N¾æ;õßGÐ ÷0ì0Ѭæ¯lòå=ú÷î0¸þ{nKI²„6öo—ç0%%i»m}DÀô…¿ÝI}4öÞ#ëã“|QSŒj}”p'[ƒíÎ꣸¹>ÎncþÛÍü·Í\¼Ü³ b+ĉmºâ0¥Z/RÍüðk È-ŽXñÛ4•Áý=?˜÷·É^mˆÒ¥¥ü¬ºoêš~'úì;üÿ½à+m“•q%ï{me<Þ¦«Œ=@ßo® ßm–ÊHC^Jöƒæv“PQÒÁWu–ëb‚‰‰ýN[MP}„ªyÆs›¨Ðõûcˆ(Üe9vóý=åþÇV¡_BºUWû÷î²npÃwb ÝÈú÷–µë•DÂȾn«<‡1(Ñ(±[m+æLÄVÇë•*°•vɈ¹" #úšZ¶àÁN‘¬üV×Ö+{‰ÛCܹ-ú‰C]¯,Z ´n‹ÆÏ¬WÆÂŒ¶EöE_”Þ(±² Ëz¥ÿfi*oàFÀ·ÈõÊ+(/ïÔšù­­:3lÐíf3Þb^¯œB=!Tãcs³;P¶¡(¤½õÊ<¸9p›µþ…¿C?܆lq´^ñ%¢5ùznq¶>®]ºÅfÙÇ7 åáv|¾ÉÖo§aNÁÜÞääúvívé7åI[õúÿЏþ˜N²›\ó[Wâº7d“¿5ªÔb“­ßÜ`JÀ<Û(ûâæF¡ÜØF_l´ñÛÞ­òÄïÞ|n£ôÛ”UÛ´~û~“Îo @“·™ýV|“ÙoQ¨‘$OÙ(› DñGQH{~ó„«×R‹¸þG5lÓû-o£#¿Ø "Ž}'ò]ßøüõñRb–³ƒìéD””¤ ¶®‹€é 3~ƒ³ùØû;i»Ô<æÿËbþp'[ƒ ®­ÏfЏ3[EܽL½íÔõñ M@?gì¯SSWk@Ë]¬PQP£25.f}ì Ó¦y¦ìÛº(uPšÊO¬[(ãxÿã[Æÿ-Œÿ™rpå¼P¸‘õw¦ÎÇ;€¶m1ûø½LË"àKä/Ⱦ÷[iä)(“PÒÉó:!àÁà±ßjýÜÕg‹ÞÏå2­ Dnù*eê×Çyë…~ ýézƒnþGÞ»Yßàòo]z^'‘ð²¯[/Ï^ J4JìzÛÊðƒi±Þ¦2nKÊuOz[x¥"|øZë5~º#ÖCÿcþÛD}ÿO~¢3(§Q®ýOã§·ö‹m’§t=ddÎÿT+ùÎjo*³/:ͪ}Å×4À©›,#ä-ã—ëgùa¬~0nÂX·ŒWÿ§ë­·Mj[Ô645øòCÔCyE!;«Ñ)¥–îùkXáFÎÿz1ò5,äügpþ7š”­b@ñ:ÿ¬0óó»’èt²ν™‚’Œ’ša{~ÂDÁLÎp~~›Â7o—a{~ËÁ¸Ã¸™?ÑÃo„rƒPJdèÏoµ ²kB¼þƒó» pÅíùÝ™¡=¿S`&m0ŸßbæóÛµMÍøF~ˆ”( içüz‚Ukž¡?¿ôÂLy~•QùÁçž~÷¯ÑÙ"Ú˜¿Nöæ:”µ(ëlÏoL"LÚ:çç7 >>jíùõñ‚©kþD•P*¢ÔY§?¿ÍÍCòͯyã[<²ÎÁù=¸ï[íù=·N{~—Ã,ûÖ|~k­3Ÿß©¨Shêë¯å‡Œ2E!íœ__°Ö`=×éϯ'zõoåù=²Qœß¸ßœ_ÓêÅÛtŽ;¥6Í W~q¥d@Šßo>{M­®-Þ_+{x+Êf”mkmÏù<˜90k¯¡ÂF­—ŸýÇßÄgß|F]Ì´hK²×>çfFUa¤‰{¸7Ö4‹žÆØ®\ÿ¯`Þÿølç0«ïÞ€Ô1ÛM'ÞØCé褽îÓÜD_º†Ð}k”·fþ2Beýƒ˜"Ä/3mz®•§?"úX뢱›ÒUâLj‚PI¿FÆù x¡($ˉT¿ß›”tOZ¡4–xÀÛîóC«™ÿ2D|yÄâý/Ôœ‘°íæÇ²ÔÏ£®„-û¤‘F¾]«5ßpOCœŠ¸Aù;¥Xþ«&óÃLÿhÞÎĉ?ëöÔûÓ‹¤ I¶Zú³"J”J«mýY°Šãÿ†ã_íØŸa÷#ýùæ¯ÂŸN«þ\°‚d{V¹æÏ¡Ä !nú*þlè ØW êýùd¥ÞŸ¥-IhÍUÞX)Du<7ùÓƒsœ°Júì0DÎ:³?7­2û3uP'Vʸy(sPò¿ø3„ø`âcWjýÙÕg­?«¯²çO…_‹|UWjüùû !^AôX©ñçÖ¯]ógrw½?çtI·®þƒ2 eì [†ÀÃÄ®pìÏ:°µ¾–þœyJøsÔIÕŸÅŠ’ìõ®ùó§t÷ãZ÷Gº®LÜ­õþìž®÷ç`B:5]ãÏ ÄÀµzæ¥KŸÕ‡¨»ÖìÏò+Ìþ,ƒZšä>渂åÔÿê?ý¿ùs#ñ™ÄY®õçÔyklý99Ýž?#‰ˆ ß„å¶Gl‹8b¹ÆŸ׸æÏë!zÞNIo®I+.—þh`êk%MêeÔ‹iøëq@êÂíêg»h4,1¨oIœùB}tt ì&2[,Ýö%Ê( )nפV¤œ|¿CMŠŽ‰ H8 ØBû\€îùO“(v±vüj‚ê#TËýÏ/Õ’?ÓdGã?¦Ìéûµ7¿YnˆÏXa±4ß)”(§¿°5_&Ìz˜Ã_8ÛÿxÊ2é¾/ ÷?¤º/ ‚l¾pqÿ[âê×î ­û¸__¨(Ðë_pæmö¿]$À³Kx‘´Ü¯ß µjÿ"Íø)÷¿…™“¼HöíX”1(I‹4ã§ù~}ÅErÿ[ðàý™÷¿EyK(rÿÛ/ôûß¹-ÅÖ?]¤Ùÿös!¿Ù=I'GùE!í ž¾ës­_Q¾Òû5r‘£ûõ!D“/z‘Õþ·è^èAŸs¦ØÿÙêÁ;Ÿ?ÿ[Óxmãõ&ýx½s¡È»}‰höòByZ—£,CY±Ð¶d>ùæó…ŽÇë®°]–ÈŠÉúAT̲ƒjÅx4$YàB×Æë‡Ÿ‰¸û_Џr mÆëW?Ò­ÚñúÐ1^ÿ+ÆkÓv1×—èÆëÅx=“ÆfÐØªÏ4ãõ0ÄXÄÄ…ºñº r'äÁŸiÇkoÔF_jÇëÅx²PŒ×u¨ãuqØ¢dzó3éò?àf(…4×[ý¬Ækƒãñ:Di$Úµ@çÔ„ÅVþÿL3^wZ¬¯µëÃvÄû’=f´]}”º( ØÚ®L1˜ê Ûîì|Á*3°]Ða»ºûUÛmøNÆ“ó]{ž q“ˆûr¾~ VGÖÞ@á@1ó5#+ßç7‡i Óp¾ì‹j(UQÈ&,ÏóŸ7owæ øÖ"ƒyÍù‡±¼0Ì)ÄB4ÞTÿÖî´"s‘y\}{¾e¿ ùÈsI°}žlwÊG( ig¿ °`°ØyZ?5AõY¤÷S¹ùŽžç7Qø¹ÈWiþó÷o=:WÄ!æÞ\ÙÓ›Q6¢lkëº90³`ÖÍu¶ÿ7p¿Ï¥í~Ͷ۰Wµ/@k²õžëâþßĹWk®~´³ìÿ=G€ ðɃv Ùÿp+à (÷ÿ™ò­±Úÿ00IZžŸõƒj:GSrÿo˜ê0•æÈså†R¥â]Uhöÿ^ÿkŽ_f‹“r˜-×;Q¶ …5Çñ9º5ÇB Ÿ™k£òËšã#äÑdÿj¶¬>( (¤óí¿-ûŸZЖ³µõR Õð™¾^òÔ¦íîÿ=KD[ ò]Ÿmµÿ7z&ú‘Y¹þP÷ÿFž»@ßàˆÙŽöÿ& ‚|,ùÔý¿‘ÛY»ÿ÷lûÛyÿñS‘äé|ja–ôÈU”<”kŸÚÖsÌn˜³Ÿ:©çùÀsçËz.¹GÔóåïÕzŽˆ#[ê§®Õs âšú©ƒzö| ðÍOÔóõT^›'@ƒ¤ž€ì¹˜ê ž—.ܪ-õ<jTbªm=‡ÀÃø§ÊsÕ¥)Š_ª£zΟK='¤(!¯§Êzþs¦PŒsµõ\äS]=Ú?×\Ï©–z^ƒ¼JÈÆŸfÊzþe&ŠBºXÏ!„;S7ÿ¡ú̵šÿRÕ³ˆÂ9Œ©úzÎKú%ô§)ºzÞ‡¼w޾Áå3Ôó<æ/Ã’OÝÿyÄëzî7ÓåznH’´š"=R¥JÅÛz¾=C07g ¦tŠ“zÞ¼w¶¬çf;E={ìPë9 l»f¸VÏ1ÄE—8ÃA=·løÁ õ\ °" ¤žÿNÈÝYyÉ‚èëùàaÀkÉöêy5ÔJ¨Íɶõœ3fl²5×ó¸dK=ÿŠü‹ÿL—õü=ÊN…t±žLè’éÚzŽBüT_^¾ÉŽêÙ‡/òù'ë빺;zƒéºz¾›$ä;©úOwPÏÙd‰cn’®žW /Oµ®ç¹ÓÔ³þ^\$ "ÈŸœ$ýá⇘d[˵`²÷®=¶ƒ~òcyí± å+¡pí±e‚îÚc<ÐX)Ä?[®=>@îEö)Ë2hƒÒ E!|Yܼ<*áÿñø²•ÿ?vô}d6Y"Âxæcý÷‘éèiè»ÆËúP¯¦"O±j°ßÇÿá÷jß'IKÚˆ/Ïa-O”:ãmë£pœ`žML•ñNêã$ðñI²>ú¯õQcZ2Évdœkõ1ž¸±Ä-g§>ºu>ÎA}4¬è§-õQªT…q¶õ‘7V0—&r~ÇʾÍA9ˆrz¬½úh:‘úøüsðMce}LBùd¢¶>>§«p žÍõq~¬¥>ÞE~‡ìýÆÊú¨ò:ŠB:©‚~û—‘G%žG=ñ‰Þ®Ç:ªt"ÒÈ·m¬¾>Ð'£/ùHWý‘ûY5Øf¬‹û÷{’ :ùý?’çÏ ¥JélkãêÁäM̳1ή€·LµÑ—Ú(¾F\ÿ, [毈ëMÜØ1úÚ×?@Í€º‘–·¾þ, X_jÖ>V×y£ñÿÇ‚v#•ƒrE!Ÿ¿þ˜GÔ¢2Fký5 5þcýéãðú‡ˆÖäë=ZúG\ÿ ×°JXD= Ö¯y£8þñÿhsý£D9<ÊÖ?+aÒavrvý3P¦£(¤ ×Ï!„;RëŸ&¨>ãô§»Ü(‡×?DŽùªÊ£áú'^È—ÇêîéðúÙö~üR’,¡ýñÒC‰( (Iñ¶Š€é 3>ÞÉýøÆÀÞc¥‡ž­àý÷tñþ;€;ÙÄ»v?þìwæ#wo„ÖCšûñ¿üq„õÍýødÀ$Àt `þ½ÓH¨¨ Jÿ{§ï6ì¦-S~y(¨‚ÒýÞé­8Áü5F0¿ÇÉÓõ ÊI”+qý”oþ½ÓÆc˜öÓ I#dWœœö“Q’„´¿t„nÚïÔO@ q-Î2í·Cö%{Lœ,¯ú(uQÒÑæÁºýφ‹¸Û£E\yˆbþG=1Z_ÕvíÝO'"|Ûâô¿wš€>}ÉpYêýøþÈý¬lçà÷N}ð"_%Ÿúü²‡U¾;Ã]ú½ÓSÃ8þQ"ûãaÒ;P¶¡ìf[É aÀdsü¼U lô(YÈ]ÒD!o[ªr@’õæÚóVĽDÜ›Ãô“Z&7† HÛ•ãª)ž·Ê9³{¨ì‹õ((»†Z•ÉCã“xê#v2ì’¡²>¢QŽÔÖÇÄaºúh Ôf¤¹>µÔG-dO²•õQÅ E!íퟚ+¸Kñ‚{«­‡ý¨Ùñz;¥uô¼Õ<"æoíPgûõDAGB§ÄÊ>DñG еõ[˜Z0­cûíñÁ>!ývñ+á7ÿ%ªß~øUÆ»C\óÛrâ–·sˆ¿M”2ÄÖo=aÂ`:‘}ñ>JK” Ù„ÅoÓâð[9XwØC¤ßÆå~œÖoecu~; t<Îì·°!¿mFãaŽñlŒôÛb”E( iÏoñpqp©1Z¿…¢†Äéýæ3Ä‘ß<‰¨N¾æCœùíÞ`A«³€r/ FöñY”3(¹ƒmý¶f3̱ÁŽý–›<\úmâ—Âog¾Pý6`ɦvm(oâ×q°Þoêb· Piyœƒmýv=Z0׆ æB´ì‹£(GPr£­üvÛøy Y¼ xg´Üj:Ê4¡ð¤éWƒu†‹Šf6ÜïÑæý¡Ú¡ú’<&Z6[¥.ŠBÚÛÊW8TpU屈߿$Ô¼¡z¿eG;Új#™äˉ~þþP‰™@ÌÊA²§£P"Q²u]k˜÷aÂ9¹Æ*ì1TÚî…/„íú}®Ú®` nÇŠle¹vÿjqÛˆ;5Po;u1ûÐ| od{ÿ*00IZž/ñƒj:Pãbî_yÂT‡©4Pö­J ”ŠòëöO]‰|| >߆~¯5õ\/0åoS’Y$I¥ÍòœŽB‰G£þí‘úª¥œ»‚t¢üuŠrî”r' þqÓÔ˜}³˜oâ3ƒZÕ¯óê@YÕIÊ“¾&3 ™£VõÓðxs)`V¨RÓ³^5vHÔ+eÃü’Md‘¹êëºWå…¦ÿÙ¦æ¸d 6qI{Ýg¤›þNùAù—æJ¤²±ÀlÉ1îRͰÝô£'*ÿg"Rü$í4<0ê`@öåbSîÖ?èçS˜ã·WùtrwŸ=ÌWè·70êuì\6ŠÙú¢qY_yDwû0þ÷7‹¹}•Îô+˜xÐ#0µC©€(Ó`ÕO)†ƒÀû%¬Îû=ÍÉV£¯´$›-’ñ-Ìißrâ÷¤@Ó¤úí5ìµ¼øŸ?CÕ Âˆpãô>ú£ºaÐU àæ–¶õ‘ä5ÄW-b ÝQM*eüçõ=Eõÿÿóy¥·ˆTÇyåGƒ~1çW69Z}Nú<0V‹”¿f´x³€§{ë?°‡öÏžiþL•Ì81Æ"vïcùÀʯ CuþhÑY-ˆhNÛáVm‹hÚ~øKú%½eÛ·?âÍ~fñ·ÞVPvIWʘN§Yþ-ø@_“fH³Cü àŸÊR"¾·¸zˆy¦’“ ?±%ý!9»Cv³%«AÞ9ß„¬gKÞû@·,ûx<çûõ á"YnsárBß’rPý[¿þJƒY ³#ÜÉõÉHàr¤ž˜*Ö_{SÔ‘: ˜l±á®]ŸT!®qMµã4×'÷ÐÝôR¸ÁþõÉÀÀ×zY@Ëbi5ÔJ¨Í‚Ò]Ÿ$ÀL†ÛKöm4Ê@”1½ v®O¶™G›æðMáCzÉYµJÕµã”Òš•Ò£žz &TWJzYVJg‘ÏÙXØS¶›…²E!_ŸÌƒžÑS;ÞBï«ï•c±}âKDkòõ쥿>ñD¯ŽÞ²§A»ž)Š\ĪÁË=^Ÿèö¿ìÿûˆìù=äÙ[‡²%£‡me$Á$¤õp|¿(¶gY­fˆÂX;]-Œwš‘¬[×î!îßÞ"îÕúÂPïå† è,P~˜ÆÉÜ/Ú³f}˜ì‹¥(KP2ÂtNVî]4Ï8#€‡Ï “÷‹z tï­µñÐ:ûyõ6ÛxK˜ù~QÔr$o&›}Ü](?ŠBÚ»_tîÜîZÿnFÝøÞNóÂÝ/J b2ù…=ÿýãÎÄ3ª»ìé&(>(M»ÛºÎ¦,LýîNÆã+¡¾.mg˜.lç=Mµ]6@–Œ¹¡Ï±Ý8á–â’‰[ªµæz¸à‡€‡Ê¡¶$còG¼ÿØ0Dªc²êärPîP B5/üÝñ¿—_Pº*¥˜òƒÀíSn©¦õ{©:¾¦k˜€¨§Æ/CÕÓ•r6 eŸDJöR–ø£[™®$a: wwã3©[5$¡& 50ê¿ÈøM¨øEÆf¡êC}áz“%±›tm;_…d›{W©ÊñáNDƒnZÿÞ jAO½O¨-š®OcmÞÿ!"«'ç?Dޝ%Õû?ÈË­Né¦tãÁü!ÎÇ×(Â#Éž"ˆâbëô:0µ`Z‡8ùþ§+õßC½f"ßÿ$ˆï~€ñn×çÝïˆ[FÜήúñµŸúýÐx …]5®ü±âèáJÓâ[1ÉR1¶(W‹ŠÚC®ÇëX‹ÀÖ]µîsC-у‘2Ï´@TÎÍ[!b“öÁªû. îB˜ÈR¢«tßA”ý( i5fš˜SäóOÄÌ!&#Xë¿Q¨ñaz»„t£â‰mŸ7Ñýþñ>d–~©‚R ¥j°­_îw̽î‚qvòûw°9Ý¥_Oà÷ï&‹ß¿XC²}]\üý;â†7³‹ù8((¼‹í|\¦Lµ.²/Ê¢”A©*›°ÌÇ[BåI¾ÜYÀCü¤³ù÷ïP„jçãó]ô¿”jžkw±üþjÉ×u–ÍÆ D£(¤Ýß¿ƒk ×»³ÖOµP=Cõ~2tqøûwDÄín"Ÿ[gßî‡Î†Îï$ûxÊZ”ŒN¶~K‚I„IëädýÛ³›ôÛ¾q¬ÿ>ë?€f$ëÖÉÅõqÿ†ˆ¸W;Ùñ[n€ÎåÙúmÌV˜õA²/–¢,Aɲñ[«yâGžd^ÿ¡tÑúmh'ýúÈ+Äì·-A–õj9’·’Í>îÈøßU( iwýw îFG­ß6£nìª÷Û¼ ‡ë?"&“oQ3¿…B‡@ï(û¸Js”–mýV¦ŒWGÇ~Ëìõ`é·JŸ¿5ÿXõÛ!€`¼øœ½YñÛ\âf÷M ÙoüøÛpˆ¡ŸjÌÖBdéÓ&Pv„7J#”V2¿åaˆ1åþ°Ea_4ïÿ cqøìÿÐQ¿ÿÐþ.ÿgí¼£¨º¸zKBÞ¤‰!´€Ô„éBDšC€Š”B„PDJ(¢T„@¤ Ò«ˆ)Þk¾9ÏÝÙÍ.ù¾÷ûƒ×7ó{ι3÷žsæÎÝ)¶X 1¼ÿy©È–ƒÁ*ؾF™„¢‘7Cؾÿ ÚtD°1Þ£Šjx¼Ú?DîˆøÑá{o¾Xxã¯\ˆÄÛ•4ãíßfB_j%t¶`ÕÍûQö¢hæoË`–Àìhæ:Þ†ÁF·Rñöã0‰·½Ñz¼uøg›¥/ÞJ`W »÷›9ÆÛë¦B¼l)DÎfÎñö̘#MUG$¡lG9ÔÔ)Þjo3a§Ã®nªâm8ÊЖÆx›ÚÌoíÚµ´ÅÛ™¦öx«‰\ï]›ªx+‚ò6ŠFºˆ·{AœÿZšCŽÜÿˆz´…c¼ílšv¼%b±›š:Æ›ózcl±™¤:»J(Jû ç¨óƒ© äæú6°G v ¢%ìÚFéaw©‰š‹·MÒ÷½Ì•Ø-Ç.¹‰!ìô—mL€ˆ…H°ØÈ÷2?ì 8ÔÚkAÕ„jÚÄÅÅS>˜<0Ù›¨Ž}ÞX”§!¢dU»+QÒS_llD ß~µ± äu(kBŒ¼·‰)¿šb dï&ö@îŽ÷U ·C EÑÈ´×m÷aQ‹:ñì…êâÏ÷§ý½Ì£Äâp°ø»ÞXâù/õþ+ô5è1X²Þ8yªÈö÷_5–õÆjozž'mðÝH aJ ”Úœs#/Œ/LåFi¾[OëÂ^m¦RC›Åh©Qcà«TKÅÆúÕáN¨Íè@5VËQ–¡h$™sL58öFÖ฼†gÌ׋Æãgí+¯mðh;~”(µÓ8~_˜Ê®ÏH×rüMÕñ×ÄñGê¥aÀïX.6´`ËÉeNRÔ$ÖÚðÄÐd ã1\ÞÐÓÛÞO¯ÿþ 9ÒDõ‰:c9¨D-К 7TQ ¥ŠFšŸ4)Hïkõ¿õ?ˆú¯Z”çAŽ! ¢SÚŸ±½ ~»ÞâÞ”>©zʤý>…i8HÀÿ¦jü¢Q¢P†5p¿v0¡0ý¸¿r°eÕ®æÿ2RÆ/*B¿ÌqV¢Á~JÊ%UôP}±;ØDì,õm¥ŸüµŸõÇ4Ð ïˆÍ­õö#!ñ1 Ňÿ1­m ™¶¨S·>¨=ÁÂhj¤4×5“&7An„üq}[±Ñä²È¥EÖÆ(·øÍ’ Cÿú*XîÕcü3þõ*¬é{Ä;áwÀŸ«g¬¯KP›ËÝ\i/å¸ùzH;òFõõ=ì‡eüŽ­gø®@KÄæˆCµ¿ã¼RJÙ"Ïíû½sažójõT >¨+ʽF¢<ªëƒ‡aþ„I©ëf~±xQ#„/¾ ¼û¹„1£ñ6¯núæ!Ø5îg][2¿(Q"°®ªó‹×u|(`AhŸ_œ:uMÿÛ<¿øf=ÌuTÇ~‹2eEOãü‚3/×e~Þ<¶Žš_„¢´…ùEŸº¦ùÅ»@Òˆ5uìó‹\È9ð^­ŽŠþï3þRÊtÒýüb';°8÷¾)þQE5Ì/¦ÕI{~‰Eþ&Ô1Ï/BÑÛ ‡¿oKy­>WE®ÒМp>u\Î/L÷¿×æøˆ÷Bï«<‹rå\mçÌØ³æpm÷ßÛˆ… ?£¶!¤øÞFLw˜µÕ5C Bi_ÛRï&[¶¼O0,X«¶‹Ïm<ª%àƒúöغmÉñ¾ñsGa×'´n[>¬mûÜÆÔu¢ZÎÖR‘5e6ŠF:|nCž€‹€›PÛü½Pô6õm%P ʾoþ^c^¬}ñ^»–êÍg¢<©'Ê‹çñ= sæN€ûñ]¿~C€óøÆÀŒ†‰P{Ô¥JT€y|÷Öb|ëÖìàb|óæ­gßJµŒã{¯&翺¶ñ`ßã¨GEµ<«©Æw Ê&Lk|§Á%À-0o$zD]5¾…Êøîèý†ï5–1öÃCeZh_Sõh~”¼(j:ñ½arÔts·ôïÀ»ê¨­ÐWv6Ooýì¶ o¿ÕHsŠÜ:þÝV: ztB u"R`ß”l ذ·´Ÿ±Þ*ÕÐNi÷pfð÷Ÿ¸{U]ÀïÓ/ÐúßûÞ>Ö¾Aû¬Q¢µ—û‡ÄÙæé!ñ#}¬LÐ>ëYÌ’¥¦>}ù—+py¤º ”©(SP4Ò</a‹­þwQ]Õ{}>Þ¹áûæz_¢†ÔûGŽ¿×úbà¿Jvúû«‰|·¶§š2^²†ÃõLÕï0Û¹R] h£ÿ³~´{S®½v?ãšn$®Fˆ+Ë’j*b{¢„¡ôªæ± `êÁtªæîù`µ×ùãzñüKOyþ¥*ñ_‹ø¯fŒØº'íó±ZÜ °‹ß°8[UEO¢6JÊá7€3×@û  ¾€UÕP4Gˆ§–0ÍaUUV¥ JꆢY=¹UÏ«ÚûJU=µ¬Ì¸júoñVë‡þb}?€âw)8î¯àø¨}–‚Z¿Y¯j–VÕÃûà~-WýÕ¬CY#JHÏ“-­Y±·ªVc›Rc'ÃÄ«f[|ªjߨ^ܪF öÇ÷,•:íQÚ¡hdK¯Z-ãê8½fÕþþslŠcSÇ_Å{ýþ/dsþ\ô—ûœîw8ZE ××ýeÝs±›ûuæc3›ä*ª·Æ¢Ä ÄVqŽïî0Ý`†UqßU«ÔTñ½òÞÐCÞà·JUÞßüÄâ| Îy~.âûÀŸ@{|O…šµÀÏ9¾?‡ù æ?Õa ´Eéá—V|g¬bŒïáUT|çÃ:O Çø®UEâûw?=¾o¾'`Š2K&ÛE9\Ýß×ýŒñýÌªê¶ø®âg‹ïÔÉøÞøžŠï(”A(ù¦øĦ6]Þ3Åw)äÕÍñíáç"¾ïU¦þUYüãÛ|-½~üõʪ§–£,CYYÙ9¶ÇÂÄÀ̯ìz=²lûj*´=$´—u{•j9ø®>rþP~xÔ­ôÞ-€’E#ÿ‡õHuüïrüU9þwmDz eå»i?L ÌüwÝ?lûª¶ã¯Éñwµÿ±JrüP~xÔ­äøQò£häÿËñ;¯§üVI 3fn%7õíà¶þªŽu“NXÔE¯oþ~xkQ)}÷‡?«(vOªˆ]ÞJãýá'€ŽÝ®¨*œÃýá«Wî6€ö j,ÔX¨ ¥ûÃÃ`ºÃt¨¨ú¶JJûІRh[R™_«¤‚àoW­¨–T^W奟§í²èš%_%Ó’ÊY Ó~Ô´k–®íK*¿"oÙr±‚ »E( P4ÒÍû×"Á#Àã+pTòü?j¨Ÿ¹œùWtuxI,Šã/ ¢ùþpOôÔ÷D/\AÕO}=åry‘/¾gn0©Bºî_‚y"Þ÷—W£‡2%¾¼sfô‚é 3º¼ëÕîÚ°ï©ÄØÕYcBG=1 ¼…³ªåÝÝdÿýüb9±û§²Ø=/gKŒ–ñ}µÝܱ â`9Cóûù·0s`¦–S1eÊåß~sÐÞwT0µî_NÝT%@njSÞÄù€òT¶ñìr¶›ƒ¿#êÃwÅy‘rªÙ¿QþBÑH§yþt èwŒñ;uš¨†õÀ˜r²àøûyÝñ]Îñ÷ss-ö‡÷ƒïðŽêè(ùQ ½ãqÊ s¯’0¹Þq}>Ú »»’ЏH?‰¸üYÏGÅÊÊûŸ¡âQ·’÷?£Ä¢häÿ~>öÇ«^;”µ?J~”BeÓ8þ2EŽ¿¬›ã‡Ý]Ñvüïqüí­Ç_°Œ?ÔB<êVrü(±(ùÿrü¦û_ñéÏNeÔÑB)€R¸ŒóÑ?*-̃ Âx—q¿¾·>þxiCâ³¾—³fviµGPbQf•6$þ»É–å8s} Øphië{5«U°ŸÈn[Z”1®ïùÂxW ܶÌ,m[ß{PŠñ/OŒ”V£uå4ŠF¦µ¾·n ÜÞÒæõ½iè åUÔÔyW¢æÂi¯ï9üþ}üG—Rý€R¥v)çÎ ã S¹”›ßÿK {µœÚÓi•øýÛº§–¾%å÷¨B‰•üþ² E#ÿ÷üÅk¼F—´?J ”Ú%Ó8~_˜Ê%Ý ŽÿÛñWäøC­Ço‘üÞ µãŽ¿„íøQ–¡häÿŸùv+<·À󠪪¡ø£Ô(áÜÞ0¹`*”p胸BvÞö œÜ4uìSÏ!Z_œ+.6g˪¾èóôE…¶úìâW€ÍXNë9×I ù »1Ø}WÜÓyÚÝ ¨ PxqC æûg00~ÅUŸG)ŠRY5!uÆÿq`ê¡Qíµó1ÎÿeôÐpÿFKiëOÀ€×‹ÙÁàø>¶ó·6/_LÄ7˜Í3¾æ¾¹¸Gãñ9Cÿ» ½puø¨Œ­p+¦-*¼[ξZ ó¶VK CÑH)\i¿ÿ¸¨àwJ ž¥¸Ô¯“Ì—¢F¿YÔÓ0¿Ù€ºNTÛtye1™Ÿû9ßÿŒÅhüÍ+J_òýä"&Lmõ#Ü“2çµÛï•ÄAqü7+ªâ" J&”lEsåß"Â\*%Ì«"®ëÅ&Ø¥TŽhs7mœ2µ²Ö‹·‹èã< *º•>PÑ(Q(ù?Ö Ö‹â¹0žQ}à…≒©ˆs\(,Ìù’Â<+œæõy&½Ö¯-©:¡uké–z¡˜€·U…ßP(öIÎu®vƒ  …5—ã‚Z±ª`UÀZ6å°Õßfy{N6À,€¥ `°íí9ÿ¾Íø—`üß¶Q¼¤¸ûp3à h¿àŸ 5jµ*(f8ï¿ìk¹ê i ò‰¡çþ‘YQqÀ¢€µ  t]`\R˸yûNüȃ–¹…ôP½VH ¯Üo«P=ˆòŠF¦uGYïû˜†i¦« ëÇ ÔÈâæúú¶ö”ƒ)o;?ÿEüu)d«ÚOŠ¥K88ô°:LÉh»]Èþ|Ú½‚Ô¿bâ/‡ÝŸþþ#ä#ÅëQR!)”a†z¤Í1Xˆ¿­mþ´Qü yL1óþõ($ë {ߊAü…Ûýé÷ WqðçSHÞÏSÞýû]sý, Í ªJqå4ʹΕb#̘ÃÞpÿüXøúß÷Àt‡éP@íQ3” ”öÿ{1þÙlùñiFûÎ.ä$‘-/Õî ”ïQ4Òvß—=IÖ_#1‹À,Þ˘/íPC³™óÅߺK)Ï^^h«ü•Ä¢8þ2J¾V÷¡§f½°ã&ïO¿œñÏjn0ÉK.°Ê;Þ?»ƒ5ø;ÁæOþyªÈ†õã1V)ã_¹ýžžúý'-hcP!ÕPüQjdpÎho˜\02¸{ÿ£'ÇŸEeôœFªT•÷?ìÀrÎ3}÷[Æa7»%žæÓˆþó˧@Ÿò4e³ý~Ë:€µÛ@{öå‡Ê UÚÓ}ÜoyÏC˜;™…¹î¡úö4ÊI”«g%ý~ËL,,¬ÿ|—‡Ê»)(_‹ÂÂÂROSÞõê“Ù–wÿyØó®9r0Þx¨¼«‚òŠFº¹ßÒ<5ñ¯ŽJ¾“ê!ç¿Læðßéáê~ËuX¬Áß^óý–ÓÐÐW¥zóc ò‡Ûz¸üÞ­ãùΕi¡½þ·>þ(yQ è;<ÿöZ˜;…Éae\fÇïÀ»2ªì˜éÏóo~òü@"Þ~³þí6;&ñûvý°‹Õÿö0/’5jÔãµzß„:×ý(ÞŠ 0€œë´Á~üJ°‡^‚eLÒ#P\ƒ9³ï•êÜÍ(¿ ìyåápr:£-¼iõ\¾ ?~±õoÉ/P>÷2æÇ8­ëìùÔÌË–­›T~TD.÷¶Úßz»>(¹Q42ó’íû7/¿ùÏKC~$£îÌ`×D«S-\?rþþ ø[®“¿§üM~D¢G Ç¿4åÇÈm38ž?Z¥TMãý˜æs‡/¼ñðR à“¢<òåÙ çì8sæÖ‹4²ƒ+å°Ë®úþ^FÐÆ’çjLz¢„¡ôzî<& `êÁtzî¦båöñPƒ2ˆAéQQž|FýK•‘äxþ†Š¥¾ÿ…Ý&ìŽ?3W,ùþÐt ÕÏLËðý/À~€±Ð^ƒ Cµ{f(Xêû_0Åa z,üƒ—Â{=1Ä¿g…9 ³÷±Ú£M(Qv?6ÄÓ»ÉÃúN†Œ‡\þØ#íß3?üD@~ÏþÄÃð{fC˜ú/ ¬Û–äÇê÷ÌR¨%h*ø±Ú‰¬(™Q42ß3/=bü_0þ=L¿gîDß!ºµ „§ÊCàÞï¼ù÷̱XÇà}å#Õ›ýPú „?rß ˜Æ0ݹ>‚-`ÛÏ)%¥ðõ)«¾§xü\œåyä‘®õ°$ì¶c÷×CsáÓ×ÃæÍZùÐY¬‡EÃDÁô¨ú¢J”pÕ„}=,ØV/ª¿Üü¡ëao¡ä{n¦k–w™êÔ½Ôÿg¶:5ø¡‡Z;ŽzTT˳ªÙ-(›P42­õ°ip p«ëÓ ÔÈgærúÐÃÅzX  ð×ᡇ›õ׼ое¨>~v_”'OEyqß9ÞN‡¹sßu¼­„]þTÅ[1îÓyRJ·‰ãq¶ø~úâ­-v­±ûì~ñV ¨PíûÎñ–&Ì«{ª/nÝåæúâžS¼-~¤> x;ð_÷T¼}²ô‰1Þ¶Ý7Å[ Ðè'¶xËxßo=QÃpwO5‚Ò E#ÓŠ·’pÅáê¨c‘÷?¢z>1ÇÛ¥{®âíè]êÿcñwýž»x[½ÿ®êã8” (ñwã­LO˜ÑwÓœÙÉÚk-àšUÀy—–€_B¸ùñæ×ítÛ{\1‰“ wÄîü#rþŽ9àô©Ø¯@›Nd¸ïv€x›˜¸ÊÚã7ªT¬bÙõ¨œ!6ìjõl[ÐÚÚ…çäþ ¼1¸£"êÉmQ=E# —æ+Cûï?XíÀêÜmc|-AM|hޝ˜;2ýÙå_‘XDà/þ6$÷‹~€ÜÖÁaý0v¥x§:¬G–Ä 8þêØýéï¿@öpðwñ¶$À—Ï#•Ž{¡ÿ-ŽÿIþ¥ímÕ¥KÛÅÉ"ÊúÄ—ª°è/Òin´nÖÿ–;RÞˆƒ0q°7cm7‚ü÷n.aý?qgõoš]³ìָؤ¨ÜþI¶ Zç/ÖT Ž=7øÆãÆÖËÇzÁñ^ú/v@[ÿ¢…Ôû¤á…–·nI'ô•7ÞœúOÐ÷Í}õ³»9Qû^bß»L Ž{wb‡¶|®;Ü£í“Wj㬭b¯ ΘڤŒõ:°X«¸ÞÖ ©Þã‚$QúÒZïûÆÇ–'ÿ©ŽmrßÖ±Õeg­â{ˆï*Ë×–ßl–¾ˆÞvËçÿÙ†dðHûpìk?Â'xl½QË­;ä=.Þz­bo ΘdÍÔnV¹ì§ËõQúí¦øÜzÏ8J­âR7—a”žk£Tü?mfx×ásñ¯ˆ{j<öÙÆ£Ûr•ÒGÆ£)hA-Ç´¿ã2þÞÓ#å+<¹žv裸eÊMùžeãóRFF³ÕFf¯çÁ{fÕ!öŠm<ÎÜÖNݵGŸ›ªW·"n¹këÕ¥7Õx,@üNY^³T¶YÆ Ž¶[~vÓíx<^ær<þ^¦Ge|Vºë~<n¼y<.¥ˆ/ý,à0Þ0Ç/ ? jitCfËìãq ˆ>¯S ãa|Ùk«›Üô¿cëh—îú±í[wÕ¹aï®QiW“ß—êý’ã¼wÜW“轚 îAýè¨×öúQÂp2pø½iEÚXsÛ¹žÌO‘zÒ[­ i祾¯¬=cviìÿ0üu¿m.: ´}4›9Çw-žÿÁGañailQ³/O”LçYÈ…ëœÿoqþ¿îf²xí-5 ÉU˜ç Êó? x[uý Ó^õüv°tÝ8 áàµÚõà{€Í¯«ú^Øæ¿€™KÀ`)Ú¦ÿ5Žÿ?Ž_ÿÛ£Uü§™µtì°XOÇúò³òzàµÇG­µ4¼®¢w&êôÿlÑ;òºñ|èi<ê ¯— ™²Çí1o÷Ÿ­<¾¦›·Œïe¥+L”ü‡«ôŸ1ÎCâÎJþ7Ѿôô\“)89¿VP⣶Ç\kÙpCoêÆUqa¹)ísMÔC(ix‡LnÊâi-S-!=ìÏÿ`ž€ùª«Æë?ÔÈ›æhÕ›Z›RØñ÷Ö@,à¯ËU5¿Ñ¿?V ¹„ƒC«Cëð¦qzÿÑ1¸sù޿ª×;mHbûkó}ÊnûEz·ÿ‚éÏ7œÊK#cÙ-xU[³WÞÈšÈ)“äû®ƒñ0P\æ=®‘—Þûƒ0S‹ß}sW6wfóÌÕÎ6BihßÙ\bSålzØlr£äDiù¯ö…ì8/«ôà²H÷,"=Òÿ¶–üdk1ÔŸÿ8pHû»NAïqrëÑ×¢ÿ|Y•Ú9(ß hd˸ûÁ•|‚ãŽï|ê¥ïÀ@¨PÓõ¿=ZV¸+Ÿ1þU*A °Á‚{Fm³œ½¬°2j%‹­SÞúWëë¦Y[Mî­ÕôÙ,ö25×fë’¨7¯ÛìO]Öíõ÷_£þy>º¤H‰ønúùu¨òÛT†Ë,¢Ï@†íÍ6¾DêïØf´·j)£k½ÇeÐ+¡—ƒ]1ëŒÙWÖ¿C¬'§r†ª‡\y„õo½ÏË ”BÐüÔ)8ª€Uʆ”)ú’Þ±÷/Êæ»×dóŠKZ½´8•5ûûÏ1Øq͹^ütIÎ÷ç_r¾×ê|‚ð¼2ó¾6Ëé|I. ‹ØÞš©ÿá»_3°øþÇø¾í‹Õ¶8Ó2×løñ¢³!f±‹÷/²|²éÒ̘å}æéY¾ï‚8ØsÕ}–W¼hËòØ·_ê³À\yõYàÓ ¶‰“áþÜFˆ[Ë=ëß)K^êå±=Z»«Î}(ͤt‰fib–Þ„ëïzáÑ“Ö*\Péšò(ׯˆrSÿÛáþ_˜d˜ ÿ¸^œ ;û ûž?wîÿÍ-÷ÿ ÁÙôÒ·Ø»úØuþÇÃ#Øq=°0P!  ™ïÿ=/Ì£…¹u^õÅy”s(7ϫذ­޹¤k-ðjà?ΫõÀoP¤zÛîÿýÇ´ ñ¯‡šã<ùÂŽ°,Èù±`À l{?”TÞs†¬h+ž.ý%Ì…‹Œï_j¬ö¢ìF9ù—)+šhEýµþAà ÿ¨(Í´‹ÆØxNojâ`N•¦ Éñ!ÄmÉ¡íO«¸O‹jj WÃA—¿T»…Q ¡h¤íGä‚iMØU=¾t–ã¿ –/Îó%uçs¾$ê-íKyáøüú4,ð·ü/É—?Õý/èèñg9¹óä¶ V±ºÑž—Çq>_ƒâø«c÷§¯"{ˆl¸ŸæîYY܈}åð~Ó÷?Ïpüÿˆ÷”3*:V¢,GYuÆ9“caÆÂ,<ãúüÑ ¶Ã?*‘eäûŸYåûŸ5qöÁ™7$r¾ÿ‰Ýëób÷öóùCÏ”s§: ”rÚ)Mùþ'ÌF˜ŸN«¾˜2eÕi‡óÇ‹Ï9‘Þ;«B¶/F½ÏSeÒ™ÿ"†à±×iÇT©Qî¼-U~˜iœÿï?wʘKPÿ6‡kÌi™ê%:¯ÿc¿ §%?N»ù^^=lê`Óó”êùÒ(%QÊžrŽÂԓ¼b rsÿÐ1à#çT~ŸA°Df= ׬ÁÛ“é»hvÑØÍ8iCýþ¡>úâ¤é\b¿¨`À h¨ÿP^PyO¢šû‡. þýEý?a«ÿ(»QNžp¨ÿúýC•ΨÀš ?ë/c@o9©73q(Îfžp èŽýe ès'ì]9ÝO¨v‹£EÑÈ´¿i£?ÿy\è;g…ΡŽJžÿD=zÖÏëN¸º(‹…øÛtÂ|ÿP úhôyÇMõùä 6<ááêý«ÎùQ'…i£ñq5†^(ž(™Ž;çÇ…cœ?#̳cnòc=ðÚ3*?â¹ÆÃKÖ?ð¶êXúò£v°t,ü¨T¨õ1S~d´åGÀl€e _EµäÚiA5$ß{úf̯GUÇþ€²eóQ‡’¯'ÇïÇY> |ÖQus]JwQ¸¹.ú˜é¢¡.Ðû§m¹±ã¨ý溢ȅñÞø¨Ê /Otÿ½§£GÄâð)±¸yĘP×2‡ë´£®ò#‹Ñø›}ÔÃô½§0ôîè#Ž˜ò£rC‘ ó—*Gåãïø~4Óõ/æžx¯pD `ÊaQ®Ÿä8;gÆn˜d˜ ‡Ý\ÿÂÎ>©#÷KIŒë©/õë_€!8›~ø ‰¡®±«]çÃæÄÐ+}a B@‚Y]ÿæÑ anR}qåÊÍCÁüÄòß1"yìØ‡T$ÏF™uÂÉ?6Eò@ 'l‘üè=’Û!‡â}Ø!ɵQP42­÷IøÂyÃURÇ"׿ŠªŸŒ×¿‡<\¼Ob';ÄÂrú»ûaf@OƒÞò§êãa(Ñ(#þtŽ·ö0í`"þto`ËWñ¶à™Ä[ô+=Þ²dÆY©?ÓoGŠÝ¡cbwã`ñ¶ h%ЖƒÎñ6&fäAÕýQÂQF¨&ìñVþñÛ¶ËAoåPÊ3Æ[½?Mñ–Èã˜-ÞbÚãíß"_:*Þ³Tñ¶e/ŠF¦o‰p á¶0ÆÛXÔ˜£æx ;è*ÞB±hƒ¿>]ÅÛcmþ ]:ä€êãl(YPrpŽ·«óïaRÿðp|Sêù·¼'ÙÞ”º›5GTÜí{­ÅÝcKês=î¦LÁé¼á6¬Ór¡Ñ»°ø‡cÜm·Æ•G`꟣Zkñ^¼ñœ7l7d¿€¯ ø¶Ô~PP‹·Þ‡tøø~?Û¯âa Ê&Lëî)Çç=c°ݼýÆøè‰vØH|dKuzÿ~øk±_/õûò û88¼»_û™,Å7ç5ÌsÉ£ûÄÁáCâÿÉ>Q›P6¢lÙçQ3`¦Áü´ÏÍ\²7ð§‡T(¢„ýüT¥ €Æxë¾ï ¡tPú<v9°+·ÏJú’±e¯@×þ(Ã>Ç:$Þvþxv¯)€‚õºc¹ÿ‡¬ÿ@'@oÚ«"(% E#Ó~,ÇxýˆU¬ºì5ÆOiÔ’š‡ÛsŸ¬çæsŠŸ{{ÄâÎAê‚:¾Œ|ä ÙáZý0ö¤äIu{¿û ̧á}ËÛù%eÄž4Î0í`"ö¸9ÿÁ–;h;ÿÝçü÷XΙqVjO:Ï»9ÿàü·;­óÐJ -»Ó8ÿÁÄÂŒÜm;ÿ¡„£ŒPMØÏ3m…§!p}¹¬þdÞFiÄ’xª'mßÿ¡ÕvN€ãvÛ/«/ÿ.òE‘-Yw«v÷¡ìAÑH‡ ~þ[¶õwÓù5æ‡óßn—ç?,Úà¯Ïnwó­ÒÐ%¡C~·ÿP² äø=ó_2ç¿ýœÿ’]ÇÛØMûU¼½wWâ-ËC=Þæ|ƒ³õÉé‹·Ø}ŒÝðä4â­Pm dçx+“&W²ê‹W»Dy±¾PMØãm­L>´Ïo÷“õ66 ®ÃÓŸ»ãmDÂ>[¼åK¶ÇÛ@ä8˜³KµÛå#L#ÞüÁüÀZì2Æ[^Tß}æx»·ËU¼]Ú)öŠ¿'»ÜÅÛèuÐgwª>ž‹2eÞNçx‹‚“°Óu¼…À6Û«âmû-‰·Ù÷ôx+ðÎíL_¼ÝM»Û{Ä.ûÎ4âíÐ~ ³IÎñ¶fÌü$Õ“QâQæ%9ÅÛêßÕ¸÷þx1Þ¾Ú©·Ñ1OÝ’ã­$Dñ=¶x[šd· È8(Ÿ¤ÚµìåÚnQ42xÛ ¶ìÜc¼-AMÜmŽ·˜$Wñ‰Eþ&$¹‹·ÆÐÐýv¨>®€R¥ÒçxËãS|‡ëx;»]ØÓ¿«xk}Sâ­Ü=Þ6ü"€åØöôÅÛìFa÷íö4â­ P' ~Ûã-¦Låíª/Š¢F©¤š°ÇÛE[¹ûñŸlŒ·<;dþxTDË­ßãmÄšd[¼Ußn·éÈSq°ù7ÕîP”!(™F¼…‚µ ÿÍoÕPý“Íñæ»ÝU¼yb‘ºKüØþæßïÿÜ&6°y°Mõô”u(·9G]Ìd˜•ÛÜü~ÿ p]*ìNQæÖþ§‡] @¼uÙ–¾ßï³a—»ÒÛŒagøýþâVÿÙ)àsýï4~¿ß¸ð¨ä÷û™ ÓAVÛóï÷á€ýc  ý÷› ¨ÆPí¶²‚ßïK‡)°UU”L(ù·š²Âðû}âo,¶œøULŽ%‰Éí_Õb˯(›Ea±åÈVÓbË, I¶Ü(¸Õ¾Ø2y0Þ¿ûUåFW”Î(éþç{ûïߘǴίÆ|ñBõL2çË%½é´~¿?ºE,ï×5ÿ~¿} ú-Œœü~?yêsƒ~uñû}Ýñ7ÂîO_ÿFn(²qýûW¿ß;çó«ÍâäÅvra‹Š‘Q.¡\ÝìœÏ;`~ƒ9»ÙM>Ožº]åóúÿ$Ÿ/Zô|ŽˆÀ[üæôåsmì°k·ÙE>û欸ÙE>_ß$àÕßô4€äóï »@þÙä"ŸçÎÜhíù5jì&ç|…iÓl“«”(A›\å³ß6ò9#&0)¶Iåó_D±l3æ³ÇfS>ïJÞfËçàMö|þy©È–ƒ¿¨|þeŠF¦3ŸC1mƒiø/¦óªÿ6‡óß&Wùì‰EêVêã&s>_Ú(úôMù¼ 9i«¹ÁE¿¸Èçi$ào•ÝŸþþ'ä[ó¹Ç/éÎçÊ8©Dí6ªɋ⋒£s>ßùY˜[¿ “m£›|Þœô«Êç»ÉgŸ«z>',ÄÛÖŸÓ—Ïý°ëƒÝØŸ]äsCÀú€v‘Ïóú@òùáAîo$·1çóÀý€W7˜ò™Yë2¨%P68çs Ìh˜è j¬ú ôB‰Úà*Ÿ;m&Ÿ«cR“ÖT>¿Rp‹1Ÿ«ülÊçGëz°Ù–ÏC7Øóùò ‘-/׫|Þ†ò+ŠF¦3Ÿc0é¼õÆ|ٜ^\å³?~øk¶ÁœÏ¾èÞè•Ö›òùþ:‘ïn27xd½L òy';ÄÀrn)Ÿ#/Úä˜ÏS׿9ŸYs.´1vŠ‘Æ((Aëœó¹8LQ˜Úëܬ¹ß_Ëñÿ¢ò¹âUÉ熗ô|> pXË͵é»c.v³±Û°Ö˜ÏÜ¿1h Дµ¦\¶ßßÔ0°—´ç_Y¨ÒPÕÖòû›ß•D/Ž^g•é|—ÙáÁ‹«\Ì_þ@ý_KýÿÁ”Ïë‘×®u<ß-Z•îùkœ„ÓÆŒTŒ´C Eiÿƒs>ûÁT† ùÁM>göX«ò¹Ô?’ÏmÿÒóùÒJ.¬o/V¦/ŸWb·»ä•.òy à(ÀoWºÈç€í# ù\¤*Hk;bÎç€ÙË@{>_]!Ô¿«…z°Â9ŸwÂì€Ù´BÕr”e(W¸Êç?‘σ1ˆÉ”*Ÿ;£t\mÌç+Mù\¨Új[>o^aÏç·óá½î •Ï/—‹òü'Q42ù¼Ó˜ž[nÌç%¨‰?™Ó+f…«|ŽÄ"V˜ó9½ zørS>WE®âÐ Ï ùì‰Aê⯰ݟ–Ï—¿ùâŽù|dyºóy>NæÑFò÷*FƢĠÄ~ïœÏÝaºÁ û>Í|ΨçsUà*?ª|ŽøKòyÌ)=Ÿ}¼ñVéû7äs-ɾ³ËÄîô*ra™1Ÿmß_]¶ìà2S6[ý=q€—@{HÒŽ²ä0;é#¢½¸¬ X°­¤@äñ©lG Êîm‘´¾±T@Ëf4€ö öïP» Ž-5ˆ6âi̘o–ªÁ2eæRShw¯eÜóàø¨$훬¡+©m±jÕgKU¨‰Rých¹ÌT#|¼°Õ­]U#î/ùîJñ^p©ªgPN¡h¤‹aºÿ³…˜m]b¬cQcVšÓ5l©‡þ½×^9Ýÿ€EüõY*õáõÁݽÅ[>k}žÙÇ¡Á»Kd¾]α>\ZÌùoç¿Å¦z³ 9i…c}X»DêÃxC}Ðæ?$ào•ÝŸ¾þ…<`…yÿÚ.Ñ fRÊÍ—†ç½]\/WÆI%Úh·X…\^_”ü‹ëÍDan-&Ûb7×Ë»€“–«z“ëë_Çdý `!Þ¶&¦ïz¹v}°›h¬7\/7jôq¢cµáz¹0`!ÀОÎ õà{¡¼ éÌõòQ˜Ã0{©¾Ý„²e÷"‡tÖ¯—Ç.#'‚_¼Èöþs”Ï¿7æñ¸DóûÏš}oËニ ï?G.÷¶‹Tû äFÑH7×Ë—ÿˈÿ…ÆüMFݹÌ®‰‹\]/OÃ"Ë™¯—#Ñ#Ðãšòãä¶ VYôq½œ '9h£ÚB5†ˆro©(8çÇa˜?aR¸™_/^´TåÇ[G$?îÒó#`4Þæ-Hßü:»fØõ\`ÌÃüº`1À÷˜rÄ>¿~2_ÀGKô5€œ>O€¹=߆˜ç׫Wî6€öùu,ÔX¨ó ùÆü: ¦;L‡ùj¬š¡¡´ŸoÊ7ÃüúðBr.&y0yo¾Ê¹ç߉òt±1ç|˜rî$ÐñŶœë8ßžs¿ ÿ,²åïïTÎ}‡ò-ŠF¦s~†iwLG|g̿ƨ‹ÍéPr¾‡‹ùµ/Þø+7ß<¿¾7Otý,`Õs|g:ßC>’hnpíw.æ×‰,ÄßÖy¦|þ yŒÈ†óç€ïÒ=¿®‡“:´ÑsžŠ‘Ò(%QÊÎsÎçÔo…yµH˜BóÜ­Y¤òùþ!Ö¿ÈúÀ¼ø6ë_ØEc7ã[ùܰ5àgߺÈçr€e  ZÿÉRÌŽ8¬ÍðìBêâÜ´òy#Ô¨ä¹Îù< &fÂ\5VÑ(Q(±s]ås·jý “F˜|<×¶þ…R~¡1Ÿ~k^ÿòZhËç‰s ë_sD¾²@¼çœ«òù Ê(™Þõ/L0]5ǘσP#˜Ó+t®«|Ä¢þ:ÌuXÿB/Ž^gŽ)Ÿ3 {84xqŽ«õ¯Ùbpx¾ø»9Û”Ïë‘×ÎwÌçEsÒ¿þ…“pÚ˜1[ÅH;”P”ö³óÙ¦2LÈlwë_ÀóU>W9Àú×^YÿúF€ ߉·ߤsý »åØ%ã"ŸÇŽüöùܰ=`¤Të_ UAZÛ‡õ/Àl€e  }>|u–PÿÎêÁ,ç|Þ ³fÓ,5VËQ–¡lœeÊç–†÷£|«Ö¿0ˆÉ”Y¶õ/”ŽóŒù<àóúPµy¶|Þ<˰þ…œïug©|~9S”çߊ¢‘é]ÿÂt¦çfóy jâ·æôŠ™å*Ÿ#±ˆÀß„Yë_èmÐÃgšò¹*r‡}f¹øýփԹ⯰ݟ¾þ5Cä‹sóùÈÌtÿ~;'óh#y†Š‘±(1(±3œó¹;L7˜a3Ü\V®2Wåsì^Ö¿’eý Ào•f¤ïzôìt±;=‡\˜nÌg®GZthº)—í×£ñ€q€Ë  =ÿzAõ„4Ý\Â4€ ˜®ú¶JY”jM×£™f“{O§ þx¶ày¦«ÜûåïÙÆÜ{8Ý”{[€6Ͷå^ÝéöÜûyÞ“¦©Üƒ2 E#Ý\†‚·ŸfÌ·j¨þ³Íáï;ÝÕõ¨'©ßˆ¿ÓÍ×£—¦RÿÑ_L5åÇ.ä¤oÌ .š–žëÑò|ÿ '#hcÉT5†=QÂPzMuÎ0õ`:Mu³>œØç•Ÿÿ.ùÑ#IÏ{ Ü™%ÞrL}C~ •³Óì6aw€½c `°áý¼ àêÁu²sœôfÉ.¾˜°ŠÔ'±zß"Ôí™Be·Så|üX2o/ànÀKSì`°ý͉Zýƒœ¹É@ò¶á CA&N1¤z/ið#˜aZNQaRå}”æSL©®½48>h_p…»Ú…ô<\{W°w³#!“«×Ô_ ë7ƒ*p²xº;C<圢ªÀ”S3ŒUàöSØ´n†­ Ôœb¯3‘§ãý×ɪ GŠ¢‘¶*PÞéEöç‡1l€a—ÉÆzPµä szzj¤½O8Üñü{ïkâºøË2EêÁfêÁQôÃè7¿¶Õm$Ö#¯N~^Q¹`²Ô„\Æ÷{Æ`0óìþ´¸ø¹Çtó4œ¬ÍÏ÷¦´pºÿ ?üµ°ûÓŸFöqðw÷kyò/Ó±~ög¼890sa¼ Ä (ëP6Æ;׫˜É0+ãÝœÏ?î1MÕ«±Ûxþa«<ÿÐo]âßP¯ø^s6ì²`W:ÞX¯8Ÿ_™$Ð婽ždªUÖZð—xÛ ¸ð¤4ׂi « $µà ÏA¾œd¨!Ò`s˜`˜†“ÔTAy¥þ$S-ˆo¿3rþuœX¼L‹‚“TÎ_A¹œ`Ìùç“L9¿è·[Î7šdÏùEÈ ð¾'Nåüx”q(™æ¬Ûø¼w(Fm0 3æ{5TÿsxûN’óyçó?©SÄ_I’ï'Ôù¢èÐ_L4åÓ.ä¤)Îù¾:Nò½‚-ß]äÓHœŒ %Õ`öD Cé5Ñ9ŸÀÔƒé4Ñé-BvÞñ œÜÌö–ŠØdS»¿ÚI«N›õ´º1AËdqšqâÒjšÄåzìÖbwp‚1­ÔeoàvkýÞ¡ýO`êáQ_ô¶ZÅr–Ó'˜rÍÓ;v”4Ѱ`¿ ¦©‚üÞds䞨¯h„ô|m¹:Ac+ì쉯¢´^¸ì¥uþµñ"^ùZÄ—ç¥/D]Ó/\ïNÒ}Æ& m`åÿþÈxÛŽiû=y–È!=µŒ»¬íÙ6½Ñë–à úñEÀõÇͬñ*aÚ£´CÑH—©öç°)ŽMñÆ|ñBõüÚÜY—ô6­×§8­ÿÄrþ‹çükªtÚJ`Ê•e®Þ‹x|lˆUñ>%%*Ö9ÞÛÀ´‚éûæx/ŒM¡xï‘xï·Q÷çãx:Iœæ‹M_¼ïÂ. »¿Ç¥7Þ'b9ËÅã\Ä{wÀn€Ã(ñÞ¹þ$ó‹µÅû£q*Þóûâ«ò8C¼?+âÃ8sÆ:Æ{ΉÆxßÿ;üű¦x_޼,Î!ÞŽ“xï8N?¾Ñp#q³l¬Š÷^(=Q4òMñî6-Æã=/ªoœ¹³îuï—¾¢þO¤þõ¦x7}ÿ ëD¬÷¥"=eJüWÎ‘Þ ¦'Ìè¯\?Ÿ\6`¢ŠðÕ«%Â'¬×#¼ À[8«úUúžO¾#vÿL»ç1Æg¥b+Рý™žOž 3 frŒê‹‘(#PâUö瓵|Ôc"¶ lxŒš¬ Ô…ÉJ«¯L“•<@>iĬûdåÁ‘ïï…bT,žE9¢‘i½ïjܸcŒñ7uÚxsüEƸz>9 ‹îø‹Žq÷<|5hèNcTB)€RxŒs¼=-̃Xa¼Ç¸™™ïÞ«®æÏpo­Õn9À2¼íý†·½'—éØõÇ.n´9àô·5 ê8Úp»%àÞ)Sd´êŒœ(ÙQÞVMhW]°Œ"£!c¿Ì˜Õcpíø!ö@\¥ CƬc†æ´Ï?² çn1€½Ÿ4Ìé‘êû¯§vM«¯ÿBG@Çh9-t·Á€M?Q ¼¨¨r¹qæHË2Z{Ñ•öB¦s_©ùÿHA_ŽOG©7ö_A¹<ÖžR-ÏGi)Õ”ŒJ‚Ù>–Œzliܱ~L„±x¸‹úѰà0è\?ü¡ý [hSýÈ ˜°”¥~¤ ùúhsæì®êG§QÔí Ûµœ¦êÇR”Å£õã×áÆú1fÔh[ýðn«Ÿ öÀ÷Äaª~£4EÑÈ4êGI°â`ÃÍõÃ=u”è…‡ëÇ¿CE½4ÊÜ ;‡¹ªë°Xƒ¿CÝ×øÑðóL¼sý…onàMõ£<à;€LŽõú‘ Äk”­<\j¬W¢©ÿ#m@¥¡îêÇ Ö‰ål´J™¹(³QæE;×(˜A0 ÑnêG0pÓ‘ª~ü²JêÇ7ËõúQ ,Þ£ÓW?î »[_Š]¶è4êÇ@û€Î q®ßÃ,…ùnˆêŒ¯Q&¡|;ı~|ÑbÜÇú Ñâ“!.êGqÀ¢€µ  sý¸%ôBç0Цú±pàå(SýX‰¼|„9s& QõãÅ0êÇ(Ð/ñ4'JÕOQ>a¬ÇëGC˜ú#lõ#9ÊV?J¡–Àwp”ªYQ2£hdõãÒ`Á. ìI”¹~ìDß~n°±~,AMnî…˜(Wõ#‹üÅv_?áÀw1ñÎõÃÞ¾’7ÕË ¯ 0ƒÉ±^?vƒ$³•‡Åêðõú±`±¸9È]ý„A$ΤR¦J”.ƒœëG ˜j0m¹¾^Λe˜*£Jùè°D/–ÿPŽPú®—×b·»?šË‡~½4w ¡|p½Ü¦L·ª/Z¡´@颚°_/k9¥‡yIØâ°uªëå,(™†Ú“뚥è ÓõòåH.F{¨ëå^í×ËÉÈ;E¶¤DªôZ‰²E#Óº^Ž 7/Ò˜?=QâÍù8ÐÕõ²?~øk6ÐñzÙ|oŠ'|êáËEª^¾>@”«()œ#.f'Ìù®#n6ì¬!*ârΗˆ»ºH¸!ƒq6u€ÛÖàH«M#lbÓu€1ڂㇴô¤wLAÈ· ëPCõ:B”—Q¢hdÚ/ÞµÂGߌ0Ž×ÔuQæñš¦7¶7%"÷+›òûH¼Ï°å?J”.iä?L5˜6nò6K”-ÿç‘ÿ %ÿ¿ ÿ“ÿéÌìVc÷Çiå?PÐÜ/ÒȘ^0ݾ°å?J ”.ª {þ×Tù[¶Î¶üGÉ4Ø”ÿæüïOþ²çÿ†üGÞ9ˆéoË”å(™fþÆ›×ß”ÿ¨aƒòÿ —ù…þš}ñ†ü‡OHþ÷·åÿçä?JÊçiä?ÌN˜óŸ»ÉØYmù?—üÿNò`0Φ~žŽüǦ!6]?wÊÿi’ÿoAÖÿÜ–ÿáä$ùÿ¹»ü> |3Ü”ÿ¨ë"òÿótæ?ö‘xŸnË”(]ÂÓȘj0mÂÝä?l–H5æÿó$ÿ?#ÿÿáéûçZìVc÷Çgæü×/ââ€æ~–FþÃô‚éö™-ÿQZ tQMØ¿ÇÙö 5º%€‹¿ÿ™š]gFÉ( oú,n*—ú t!ÂV>ýÌö=ÎdÔäH?[þ£,GÑÈ´¾Ç7n^?Sþ£†E8äÿg®¾Çé…þš}ææ}žÔ€W}ÅæÅbSºŸêéQ.¡\íëu;`~ƒ9Û×ÍUëtà©_¨°ËÌ$àâyÿ@Þâû¦ïþÔÚØ`×®¯9ìôûYòåzO çûSoöPêù^K&l{Þc7T2Ôñ>†(æþÔD˜…0³û¨¾€‹2«)Šù~šW8'²Žàì£NdõQêö7žÈ>ìkŠãB@úÛâø»>öÙóÞ"?•Be)ÑGòE”P4ÒÍý©ëÀ×€èmŒç¨ÔCûï?}\ÝŸ†EwüE÷1ߟˆÞ½KoFJ~.…\¡A>éù~Z-Éó½Äɹpië·Ãd”(»{9çÇB˜ù0[z¹ü½þµú½>›~á*M®q®Ü2KO“æÁ8ý´×ªóQ Ç<Øù`÷n/cšnSMùTÀëŸq̽TdVßOI€ÛÿúÔ«ÛTƒü¯ŽMÍà =<¶^©ڂ˸G²â4#Ä…þ5ö½TvGí†j½`å´€ *oøR÷ŸV±Wdÿã›”Éùøw+•è©}^=cí;Üã~ÖöBã­ýí=~:Ïö”võ³eÈœOõvZÆ÷²º­üEqýÃ߇áþŽ‡Ä ܬý¿&q—ZÆ=׆ªŠf=9³Ñ©©ñÚ ¨#×ZÊõÖ›ú“Ä…e}Ou°Q h¤õ´2¹)SãgØõøÇ ]zó­4jÉ~æð÷Ô,hmJÇßûï}"wúŠ¿=U>eÖ¿ÿ|¤¯ÙáÚžúý“jœ§|­/¢,OÄÛoúß­â?Íì“òP_üÑodå?·ÆÕlFjìЂÞ±Ÿ¾ßÆدÕ¢)Λô5„þöFòöçÚ(®øD{fC ÁRë¡§ Õê÷¿á$µ™f¸íÖ'R•~R«TÏ0¸¨¶o½½;$õö~ÏÃ{R²¦ëi×¥l–…£5aâñ§>¶8ou4.É;ö+‘ªcÁÆ fɧíH\¦lÖcK±h߉×5‡•µfRŸ1µªxÇvÐÌŸ:~Ï.÷⺮ۅ©z•Å%˜s½ºÓC˜[½…ÉæîýŸÀI½U¡úhï?˜&ï?Xˆ·­=ÞP¨6K6öîvc{¤Q¨ô÷ÖìÜÃT¨¬©ÿïÿÌèoÕû?» r¿— ¹í¯ZÎû?÷^ín­S\Í× ïA~D&yÅÍ8˜¯`†wWõJ_”¡ÝU‘Ó'þÇZÅÞœ-pÌHëØxôÜ*6upÖÀ1 ´?Ÿè7+…„1s(†¯"øªÕ]Í€3¢d…™ÃÛ=L3‡  tþS[<ÒÝ6Þ‰ºCTËõU)[޲ E#eìx{«éù/¬"°šÐ]Î÷ÙSùý½ zøÇ¶ú¤?ÿ…\EdÃóZ%ºË”9ìµé}$ž¤ö…íþô翺‰|±§£¿#KqØm~¿É: Öàï@7c=ž:­§¹|êG­ÝUé•Ó|Äx}ØûP¼ë¦¦6JJnΙ&/Œ_7×ׇ)]9ÿ¢»ö$Iì€ÉzbïØ#€år×ô­MÅn v?t5&6ëCá@ý€†u5$ׇÍ`‚`êuU}Q¥JÕ„}}è“IOØÔ0Æ¿«šV_ï"ÊÕ0cr¼êjJŽ]@Ia¶äêjŸV/ANÄûþ.*;âP& hdZëCapÝáFt1ÆScÔÀ0s<•ìêj}È oü•ëê~}èRgá/ô>KÕË{Qv£ìïìqK`a~ëìæÚpðà*äŠ%HÈý>I¹öíðÑ9}ß{+Š]aì:›CN_’xÚI ÇÝÊÓY•t‡ï½ü0¥“ ¶ïmJ¹þƒ^½·“Š€ (±(ùæï½…bÕ«ðNÆx¨†êßݾ]}ï͋ԉu4ò3æåŽÔ¿Í“ôÃHó{oi<ÿŠ“y´‘ÜQÅÐX””ØŽÎ1Ô¦̰Žîž®ò±Š¡Ë_óüëDyþÀo•:¦óù×bwº›Ø=è`Ž!yþh=С*4ŸŒ\fíU°TO¨A UP=ÿ Ó& ƒêÛr(eQj¨=6=ÿê×I=ÿúñß•øï`{þåï®ÆBø°ƒùùW M]m…°nÃó¯Èsðžô‘Jƒ1(£P4ÒÝó¯àmÀÃ?2Å?ªW‡øïàòùW,R»ˆ¿žmOýCÑ^å‡<ÿ‚œÔÅÜà¢Òóü+ù1'#hcI{5†=QÂPzµwÎ0õ`:µw“y€}º¨üØÇó¯±òüë‡Üé,Þr´O_~lÁnvÇ?L#?fMZý¡‹üìkíùժ݇ÎùQ¦8LUßfAÉ„’_í±)?Ö´'?δüT'Áï·Sù±e['c~œøÐ”sfw²åG‘íù1y(ÞµSùÑåct“þà~à-Úó#/ªo's¸Þkç*?.}@üwOÚ™óc'úôs˜òc1ò¢ŽæÇ´s™æÜÃAwüOø@_3” ”œs£4LI˜z¸žñ> öQ•ÍFKj}¥§Æ)€Xù÷©ÅØ,Âf[¨1-ôß§ÂÛé=rä‚P£tEÑH—¿Oùû·P Êø£úvp½±7ÿ>u¼­ØýH¼?k«Fc Ê&”­mGcÌ ˜5m]F?Ø>©Ñ(+£±iŒ>ÁMqöQ[Cò{Iò—)ó¶mw³£dE)ØÖüï&[Ê´—íÙ?P£p¦ ùr¿žÿÖQð žcÿÝÌÐÖþ$ þ³ÒmËî¶Z9¢ÄÃĵ§ܶän«Uƒw«[Õþ¨á45£Ú‰v(¡(épÓVosþ–Ä¢8me&øvjZÏOån¼­WH>2æ ðPz©.‹R¥\ó˜{¤6'.‚\ÏÉO6¡þ7Wûúzˆìké(}Nþ3Àzœjânñ £÷¸ÂòÓÜ—Ø Çî›&„BÆ3-ã{h»Ù¢#Dß&†PÛ(¡V¦:Ì»MTGAy¥¢ò/Ï›X®X+Á^½‡½ÉXf¬%°n1ïñÚz¯e¿.½å¡M©;$9½ÿð¾·oÐ˶Æâÿ×ñª±jy1Ê"Qî{ûÑÑØÖÄø Ç—PÃCˆÅÇ–ÔÆÚG£ëî†Ü÷c«`lŒˆ¢‘¶Å[@ªýõþ%É:hÙµQè™ñ«`Ï#©§úX;¯˜5[òß™Öÿ·þ{Âߎÿ¶gКðð`ý÷¯‡0¬lÍ v~ˆõÿkýWÞ…í_gú˜FÄ0õ¡±, ôe}! ½;úˆF üþ(ªáç9ÿƲN‘ô*55xrŽ“å U¬`l’wìe+Ù{ªåf3mt30º)ï¾Öá߆ì¥ÃƒÏ¦<'Úûé´íš•æÄ×ÚÖÍôÓl”»Â|‡í^íÛ¨1…)ÊÎ,ÉÓMcVs*Z˜ÑÍdß´»&‹´éṠdó×ÖÝKé'L¡Â4„)Ï®Þט av¦ˆ¡‰Š"mDòthbžfžY˜GS…9ßT˜rE´Æ\~©3gf ³E˜qñÖNY!Ú?3E›}öÝ5ûÅÂxb? ¦¿u³ÆTÒ˜QÂt`_ÛÓF9Äl®ÏfÙÜÍåØüLf ›}Ø|Y6eó³ i¿xÙÇ›Zû¯_8Þ¿bµÈû%ã…–VšEØ,mü_H0Ndüa–yÓž6þÂxÆ3þ0ñøñ×üŒ¦Á`aºÀœ‡9oíÙ” œ$L€0ã²Éõgs 6ß—¾ìÉæll>÷R»ãä¹zÞÊJlàe=×›H›ëh3Fkó¿çºí¥“ìÀtÓ˜}Âìž"ÌBaÆEÊüÆæ‰˜þDP”ÒL'‹éæáÄ{Üi9RæÓ1o¬õZka†M¦,Löî´u¯S* sžõ„YÎÍÓ˜ÌÂDÆÿåÖH‡G°y›çÈæ/ؼ†Í1²ùs6ϑͱ“2KCõ†æ?So¯ÎÅ MØû{Ö£Jùü™î´{ßæ {Ÿ_s,LÆñ‡)Ÿ£šŸ2Âl˜&Ì‹FÂô…ùIc<„i`;Eʇ4ó¯ŸJ‚WÕÌç S•z7Xg¢ü5½¢¦½ »ð!>2± ïiL'aS–«ÀT€¹am?¥†0Þ‘Âät`hŒ¯07xw%P˜ÎØ1­­[Ot&÷×Âü3 æ¶VÞ÷ ““ú¼¦&ÌûZ[Ë„iCýÒ¡­ú#Ì1ö¹c ½o2kz˜è­ —ZøxŸóÀÛSO˜D|äƒy‹vöXÛO)$ÌŽ(aî6f~ÖkÌ£Ç:£Ý"¯1…·@ºì*›7²y‚l¾Éæl`Þ<ÍÌ›°¹‘l¾ÃæNl®$›ï±¹›óÉæËl®ÄæWrlÿ°9›¯Éf ›_5͇es ›¯±yóÓžfs¢lþÍ›Ù^³ý[ìKÐì}9È9lÎÆæs²y6›ïØ[ y{qK××rÑwÌ —Ðôs¢Žýzƒ®]¦l=ûé]{ólÊ<ÑÛb?Ðè_³!ú‡Ø`е7Цt½(öUì³D‹õ ‘RGôjØç àlq[ŠÜ`ÍGaî«ø¯i¾¨[«ùyðŸÎdî+Ì0?Ál³^l¤æÃ>Â|ïÀôÕ˜UÂdï/ÌWL™ ÌeëcaÆU‘½Âæfl.tÛ”ÝUØœA6_es!6ß¼er’Í'd³…Í7kÈæßdól>Áæïeóm6ÿÆæÙ|—Íß³y¨l¾Ãæ6‡™ essóæ06W3on.›c}Y¶É§¬ÚÜÔ™`2㉊Òô‡±VÝOô޽EÏŒ[Ìô=4&‡0Ë{ s¹º0§nH¼üh&¥\¿!WáÂl¯nOüO5}¯è7ˆ¹Õ™ÿ˰Þaó„êöPÎo5›*f©Ÿ1ÿ3è54·Dÿûf]{yJ[Ñb_ΰ['ÇZõ*¢/Æ> »uVŽx!›ïV³»=¥5û,E×gàöˆèõz¥égEŽýÚjâö+qÏæ¹l—Íß±ù+6(›W³9ܰžÚ± –Fʱ- z¨¶Š>ûJ}¿V‹«‹î}ƒ^H³Ï'z7ìoVµëÓ4û‡]?ÛOôUí}{IëÛ¢×Å~UU9¬‘7L›gÜ6ÒÜγxÜ6èÓ5·ÿ‡½÷oª¾þÇoÒÊÏ!D P±bÅR~ µ¥ ´Ú_k Ve¦i’¶‘4‰I …·s "¢Vej†È˜V‡²*èP‹2E†Øb«(Õ!¢"|Ï9¯so^7?ª—Ï÷ÏáÃsÎ=Ïó|Ý×ï×ë¾n’þFà)Ì/—ð>ÈÿµÀË™?)3¼\‡üËÞÁ‡|C8[‡Ei?a÷øùO¸³ûð„ðÝÖà\|ôS¿á9ðu ?v+Ζùk%Ü [šÎgþóoŸž«7#ÿ^/`~µÈÖm×}*Æ^æažˆ¹ŸÓ˜1!¼)nÄ4®øN®±ÑÞsGçE¯©âùOÂqÛÕÙWàWqú2Âx¦ÿùa±¡äô_•ð•¸N¼%ðó8ý'$¼ïÿgŸæ5â֌𦼠ï—ÀGqúUŸx¦?Oàÿ²sù3DÍâr¼Ç,óßc$ÇäpŒï3FÄlçºþþÑvpõ±û »ŸîÝìÞÁîG…{/»Ÿg÷ÂÝÎîGÙíîƒì¾ƒÝ×~ªëu~vÏл¯e÷Ez÷ vîÏÙ}»¥ìRû?» ÷·jÿÏý_¸O©ýŸÝ›„»7É;ì~\¸“Ù½‰ÝË„{»gwP¸³{»çêÝAv[õî¹ì/Üê ¼•Ýg ÷vg·"ÜÃØ}6»;?!÷hv+ì~ÜG¶Ì&°C‡G°ù<ÿ¸“WÇm>v`o ü毑ð7aUîü‹ÀÇ3‰„ãïñvÞ-ð æ;%ü~ä× üG§Às%ü9ä ü»ž*á×!ÿbïd~¢„/B~?¿ÃüCéRùÿű„2[zx˜ü·þ(óפ‹ºˆÜ+Ø}wzxâ{š¡óAA«ådëí¶OøTå(Þ: blœF>'}ŽHz»3Ù¨wŸÃnn?ÕÈî÷…ûzvq‘pÿC¸ç²û}v¯îkÙývß§w¯c÷"ážÍîû. WéÇ0Ð:þá¿qü¦‹ÂUzëf‘À/bþ¯8Ù1uîiR²M˜lŽ Mãd‡K8>ËtŽø7¿æùoœôÜ‚ü'2¯„7 ÿ`;á­ÌIÂñ—;· ü^–ð,䝸ÃÌ_$á‹_,ðÕÌ¿N“ïxùÓ$¼ù9¿‰ùÃ%¼ ó7FàVµü†w ÈOøåÌß{¡¨ö ¢Z2Ù½•Ý¿î4vo¸0܈7âÝžÿXìÞç |9Ón´/Ø]a8“øÛ‘·Ú~^ìfKø9˜ì ‰ù“%±°ó ÿ…ùgIøA,äH/eþ7iaü.äŸÚ/¶¶ÌÿWZ¸XFþ~Ïaþói¼þ‰º+d÷£R²Ó1Ù'íNö Ÿ‹ÉÞ!ð1Ì¿A‘_#ð*~…„§"–ÀO]Ïë¿„ïhü¿ÁüS„ñ#˜~/Èüý¾ùŸ~Dø˜¿EÂ7"ÿŸšùJø\ä?)póo‘𛑇À—2ÿ OE~À§ªå—ð\äÏx•Z~¹| °üORË?6Œ'Sù>M-¿„oDþ§ûDýð*µEÂwcþþ)ð³ÕòKøÍÈRàO2ÿ–±áå`òïø±ë¸ücÅrPºO샳0 ‡ˆ pÓDý¯Ä4r>—ñជø—1þýùa<ñ1¾WÂS?øoÂsIÂÄ· |:ãKxæµÀ3_$ámˆ/øÅŒ_'ᛨü¿P-¿„7#ž#ð ÔòKøRÄÇ|ŒZþÔ0îGFà%jùGKýë'Aàjù%¼ ñƒ{¿Z-¿„oB|«ÀsÕòKx3â«~¥Z~ _ŠøbOWË/á~ÄŸ –_Â+ÏxºZ~ Ï¢öø0µü£¤þIåx‚ZþQýçàbQ÷?~"„åøÆ–ðvÄW ¼SÝÿHøvÄ |?ã×Ix â¿«î$|%â9ßÎøp oD|ŒÀÿ¦î,a_×v&¼…ñ½^‚øÁ÷ÅÖB-¿„O¥ò |¥Z~ ·Pù¾X-¿„'QùîWË/á]A,¿À­–_Â÷ ž#ð™jù%¼ñ1Ÿ¢–ÿˆÊ/ðÓ¼u]-áßáøÜ ð/_,áÿA|¹À÷3îð7÷|'ã9þ,oa|Œ„ã/Mw¦ ü)Æ$üwˆ' |ã‡Kã ñ#m„ÿ–ñ­þ+Äw¼N-¿„_Jåø\µü>ŠÊ/ðµüÞ›Ê/ðijù%ü+ÿÿ¥Z~ ÿÆ¿À'«å—ðWhü ürµüÃÂøS4þß!ܪ–_Âï£ùOà…jù%|!Íz|±„ÛiþøTµüžOóŸÀ3ÔòKø*¿ÀG¨å—ðaT~÷RË/á&*¿À¿¹–ËŸ"ÿ:,ÿN±ma|«„ïB|‡À÷2¾ZÂ_D|ƒÀß`|±„?Žør¿Ì¸CÂïDÜ#ðgÏ‘ð›/ø#Œ‘ðkOøŒ'Hx~-–_àµügKý“Êÿ¶Øv«å—ðÞT~ÿJ-¿„åÁò áßâ÷yKñ—qïü¸#0óÔé¼;·æÝùJÞÝgÕûñtÁ‡ïúÍŽŽ›ûÓת0äJñs§­É"é-ƒEÒ{“Õ›®edÍ`þVÛüªàæ~ò·0oå˜F5æËŽýð›oé#u2ZÅi/KV¿øv#yŒ`dì—”¿?ýŸ‰˜xQ²ü}²ÿöèWƒÕ~eW2þ¼íŽÎÔ¨ßÇy…ÿŒŽ’éûZÞó´ø%܇8î÷×¾ÜÊø»•Ç!4aÀ’Å"ÔË¡]ª††z¦tÚÄ?Ò¾_šÍÁWrðõáté÷¯¶D(%Y|=î‰#ÿ·ÿêw)¯dÒƒLچחî°äŸÔÚ_CMãšùâ9°„Þù*>%ýgO;êCü æÏaþ-Iê\p#ÓÁÈ‚„´ü»­ºŸGŠ=˜˜|ºŸ Ÿ“$Ï{ ô?ýôÃç•$1|ŽêçÌ.þvó„w'G{?Ô^gÖiíkøýNñ^¾ßŸéZ)¼+Ôc`çí/›…)ïÎ_wÜé:_øîxë\m Î»«BCcÔ14MCPˆÔ‚»œ©Ij±±ÿóýô ¯ÿüù›jÿïÉý?9ÜÿòùzÄ£òsY8?ø)";©jv.S½”ù÷/ø~¿ ßo)Þï Îq[÷"þ””ŸÈä©ódÉ¿óXÇš^Skh ÈÒ5Ky…· õÈ> ÕTx§ YHá.HᮺQ¿ŸôŸâþ÷ÕîßYú|3çïÆÿÆw"¾JÍŸöû Ç!ú޾ODw¼ØC)2²€‘ÿë=SÌæ˜2Žñõˆš)>Êå ˜)¬§Õ™bsÎë«Î«èéîx‡o2Í à,‡‰ïñ?ªú¤h¸í‰‚÷:ó$Ê3T}Jöé·Üó†ˆ~˜£WrôÆDuMK„&:>`ÉãŠØx\(ÖÀ9¾–ã›ÕÑ^ÂH#)ýšôwjŸQ~‡_¦f“Æw£¦>úñýq;,Á½W„Ç/f°¿{ùâö¿ÔáÜÿR¤î—©v¿|]÷Sbu¿ð|aOàþß[ë_µ¹ÏÿÎåËfüÊ0^„øµþ½^õcN_Á阘 öÂÿšyÿ“$oÌѽðŽy›c:Íq×+­þ‘9%©½pt…X¯:3©.â€Nt…ù'6ã&±åÁ¼,æÍUÿ„öÓ¾Ù§ß¹eD¦päPŽÌ4óÄë완 R1ÇL"æë^"Æ‚E»t[è—øƒ¾Å)¸2m…0^™Ä×Éû|…‹ÔÑŽžÔaö‚Õ6¯G;ðûθí8 ž;îå›ÜÍ7yÞ¤vízF‚Œ`¤î?èîQ´?s®dÎõ&¹atT/}ÿ6™Å¯| ¥PNŸò9ä)’Ê_QšI&’ìI2‰d’É$û“Hr0É!$‡’L!9œä’#IZHŽ&™Jr,É4’ãH¦“O2ƒd&ÉI$§œJrÉé$¯ ™ErÉ\’3I摼ŠdÉ"’%$KI–“œC²‚äu$ç’¼d%É*’N’Õ$kIÞHÒCÒKÒO2@2Dr>É’‹HÞLò’$o%¹„äí$—’\Fr9É{H6‘¼Ÿä ’’\Iòa’«H>J²™ä$×\KrÉõ$7|šd ÉçHn$ùÉM$_"¹™ä’­$_%¹äë$·“|“ä’;I¶‘|—än’ï“ÜCr/É}$÷“l'y€ä!’‡IvüŒä’_’ì"ù5Éc$“Gr#ÉHn"ùÉÍ$·l%ù*Ém$_'¹ä›$wÜI²ä»$w“|Ÿä’{Iî#¹Ÿd;É$‘ ÈzFljM¼4˜Ÿ·žÄ;BO‰è¤¡€'º3E{1Ÿ?½Fã˜N\–Úc»ã/ÈÁ Í[_Wå ÄÕÕ-æ|$GØj|øÇç~:.àòºj|° EÖ«É o·¨.™xó¥OÙ‹QëÅ«GUwh;:ÈóX0n}ص0…×{<ÝçŸú"ÅÝ‹\ñã‚ú8ýâµk¥Ù\ïš‘_l«¶ƒžh7ÕU§w[KKmqöVáÆ„±ÔèÍEÔÇ%Ó.+Hîøëíå˜`tã,ô‡|ZPd:´zlvO¶NµuéxÜU{`¡Ííu‡bµŸÐ¶ÉèãŠaÂÙä§îg-š•_dY¯ªw{Bn¯Íå­q{]Á˜ý‡ã®X‡`Ù°{<0ëüWd»sdÕB\Xã¥#mÝãÔ'BªÌ¨tÔ¸Òì¢ÜØMCHÕÂZ¢hÐtÕ;} CÆ"ù<žnõ±RqÕ8ãÞw\6¯=rC#t¹bÝ;³·Þ¡êˆÞÃ&¶ëq@ÈaTýTLθ”$ÌIõÐÞ”Éõ¨Åëé™X ŒŽ+Ê.´Ú|^—ºY\œvs®†ö "ü Ñ踲òâR«M]Åõ˜½Å û¾úxWƒÍiÙ»/G¶'T% Æ-¯”øÑÈœ‰6kE¹ ¶?#Ÿ4aýÌ8MþPmœzÇ»-DÜϸÐõÓõŽS‘ó“q‘››÷«öØkb·‹ˆ“cº»Æùë~_0ÆódD\(PŒ9/SœX ˆñŸ¥¸€'Æ@ŒHG Š™ŸaPäO¬_ZwôúB3\Õ¾@¬û2ž]g\z¼„ž4m³ËsÊóapÂ*›©ÞK?Ï)±•\m½ÖFVÚ‰YT;•X Å0~x{}@anf¤cR¤crÄ$–©æN˜’µdÎÏŒyf…ÈĘHyAÙü 1z”€5V£Çbµ?n{𭪾º¦SŒŽyÒ£ÆE÷ÁUüô*á{´¨G*ôFŸ ¡WœE¹]¾êhgÌÇaJDEâÕ“(C7OèjP°¶>äô-ˆxÚ¢yÄãÆ%!';jæÁAãt¶˜ý8 çËØé„ú]Ý¥#á1Î8°‰ª²;æ‰gº¬Ö€_œÙæEŸåä—äYK)£7=©ÅÄkèa=½Í).,3.lâ\ÏÝô_õ4WªØèGÓnÊCxT™b>•Æ\ŸTð¦z7lÄjx5F=ò‰WŽídCZ5»«ó9»{.‹ ´tÔüªmRºÁ5¾:¯s=v—/­ÄÁPü|ýÌ8õÝo@3WýÜ8á‚N=Ä‚(¶ƒ6:9ã%/*ÞétwÛa·×éjèn^o1±¹CQíqb⦪óÛA»¼†G·VtL·é9ku¡1Ó“cbÍÇRet7Éu¦ßzð F¢tRN/âì¡’v^Ùèá?f+ÙýþnözÀ¢CñÜ„úT•ÛgËÍ£–XçÚº8J2§´@’›ãî!_Èî‰ÛÝî[êìô*`^¬ÏQÈíÔ]œ´N`“ê«‹õÛ€•'> Wy|ðhý¦ ¥ÄRãŠ\!ƒMqæä) ÍPT‚éÌ+´Àÿéld2 öù…vÔ9Ó-{ &?#V£Õžni¸¼hvAàUlÔ“VìJ÷¢†ÈF¥åv6À °Ï¢|:—+¨z(¿â€ OÈ*_q„Dnɀܮ 2 ZØ xìFUY‘…!'ð¿‡,?ܦê½pwxv` ;™\)Uœ^•¸â²)nE†Íãò*²Cкž“ ¥„e_º¢ Ju>ÖƒØØ€!ö?ЗºË“vwÁyPG )+U5 ëÖžn©B ª¾2î«÷†DýØÈ¢;‹ºãÚ¥{“ÉÁxzÂ- ØäèlÞ4Xð™Ùå´ØƒX™õuÐçÇGŽ ”´-rÁm·w¾ožËâw<¬n£PINKÀªx-AæÀí­±¸½–ù>øÆãûD;õ>X뺣í6¸›p9±JBô±FÈ–Ïâ÷ÁãvïB}Vø.Fï]¼Én B>ìJ;^ºá£ˆÿ·¬ÿìôn–©/P罜NÈtC‡ò+n'Ž:E¬;Üùh<ŠM1âц ¨è£7!Ž:˜ E—EUgo¸|bæ/§LU(`¡_Õ4·ÒÀÁ7sêø ‘"Nûh‚¡ !T§xýúµ–Š_bHð¸qôšÉâlËÆ#$ÒžÛôˆ‚»k¬6Ÿ•ëˆìh¾" !d)øÙO%üFU³Ò-µ¾¶ºzÌÎPYø4‰¡PuôV–ªœé¨¨€Ï¿Pó(.µ„p zÏBÕ-ær»*Ý"&@Xoƒ>¯Zkôr&?Ì-Pé5)l/œfÜ^tcsh ÏFéûÎrùåš;`Ç>üaÝÈ~ŸîÆH Šžn ?YèÒ‰8Šü˜ºO÷çŽ%ur¦%"ݲм|‚ÔõT\´€Å¾ÎE“y—s1€x²×FQµ“\¡ð<®!Ñîäd‹ûædS§c„×YlhZ ²Ëm…¹“m×ä—çÑ|n-Ê)½¶¤?n–3Ö“c-)·Y+ò˥˂ââ¼Ì).*²æ„aõZàWÛr­e¶ —fÚ¬¹Ö‰¶œ9â.øf,.X–—­‚S&ÅäÈîˆè™3@ªñ¶ åçZ³m2§F%EÕÄ: (è*ÍÉÔ(ÖŠ’âÒòI:® ÷O"’þ‚|kQ¹ö1¨7±¶––çÏÌÏÉ.·*ÖÒÒâR[Qq‘jBU­kËr² Ô«k²!%®~ÙUjÍΕ¯¯)Í×’%ÝÚëêÙ%ì¾ÎZZ ¼òÙ¥EÊÌükùµ%VñA^í ¶ïÊLç_ίæÌ³‡/ ³ËÊ­¥¶«­×‚/73_÷©Æ™¶YÖr5rf~Q~Yž5WïU““\º$Ñ_f-…ªŒL€½rì‚ÿóg"9?37"?Xk6aüj¶µ,²Œi"W ¾Àh[‘õõ’›E\Áø¢þŠ}²åž9#–[$uï~êÕ>ìµ1B±_J.¬!È»Tè-̾Újã·uùejp¸ÔÑØ„Y¤¤4Täf™=£ ?GfPŸÃÂé©H{E‰æŽj öÎÌ•.JuWׄ¯Ê³KËg«‰Í.³ÆH,ÂË]?&„B‚¸Ð¢KF;#S’ˆ„ð5I¬´tþÈäô §HãÆkQn~Ñ,e–µÈV\mˆçÑte-ÌÎ/ +·¨ŒtŤŒ áÈ—ÂróK æ®¥‹Ù¥ù¤Á•›KVi~®R˜]!I[µhÌsùE¶ùåe0¯"^jÍ).ÍU±LÛŒk!syÐs¬¥1ð‰Q¸Ü1òså{@`™XÇ áûYaqîì‚ÙeQA…å±&®Âè ¨0bö)Œ5õ€“fM4bM…ÑóRaĤT9#AakAë½NW5YÚG$é vΠ›LÿzÓ.ƒî/~–Qs¸¼ó]Ÿ_çAPTk P=¾‘R J”‚&’嬽ڵ0»&àráãµp¹‚6—£J³ÕUS&…¯ªá(§K¶EŠn§Ë®E‰ -ºTÓ82µ8´u~‚W>í*XkWuìÞÁY‰ÌæDçÏPøëåÒ°esÕÙÝžl§?ï!¹ë½AxÀsÀ–ÛåÔÚV@t‚à •ãþ:ì­¾½Æ•«o•K© ÝÞšrwDÐñÍQ׎÷¡Z|¬ðÖ¸JðáÄpÆÉUtžá11ˆ²C¡€žI\óºBðÄÀyU/øsr P Z¯†]•>¦£¯n]é’êY Òµì͈ӶAjtÜió¥-SùL€ñÀ› n_ç9«3#˜ÀL}‘µbiî*{Ðe«ÇÏXÊÞ€k>2sØ»…ñÀxÝ“ç÷yÜŽ…Ñ}rKézÕÞæÁT¦Ž\}i‚®›êaØk Õ J»Õ!㉌/~ÄôBW=öZQÅá! ¯ DÝ>§.»'Î!Zçƒêt;lô=Þ€„E'ÄÏnª_‚ÁKé“T%nî¬öúP-.< ce·ªZ+˜ê\‚^­‹ÁE¸¿Õ9™šÁýM]«l“2´¹ÔtkÜó]ái>ÜZYa’wÛ=A^(ÝPñùúìaî |Ø3è @]-'Ë€¦†´ŠÂr‡‹ƒž»AµçùÕêÅ‘„IÔ‹x™¾ö9]41‹Tq€Þï ÑD©5êð#Šö:‘\]P0Ü^§î²§]‡<áá:XãPMW5ÏÃa¯ÓåÖÁ“öq\Æm>ìLœ8œô– Ôã^mR›4Â#þ wªb“2Sb¡møÅÛrhEKÝJÅŠËü™qjVÄ̬žsÅÍUx‡a¯ÑÖ±©eµ_½Óå¼:ìÇùB³Õ º—íÕ®±6U_uZÞ鉨÷AÊø¸Ä#Ôù[ˆ˜ìu#}Çíå ª‹RÝ!†L-Xº½ñ¦ÍáJWõ^_ÈÍÓ2Nk͘= "kyYNv <çeࣕ•ø'ƒ¥VzRÇ)…aܳÔ:3S ÃÓ:Vâ{„o>#Ï'ÁÙ3grÖÊò­äÌÇ ð ŠK"Yköµ¶Œ©êƒZnžšfyA™-w²zUŒ+ÂtX!§…ÖÒl:¢Ð—3žŒµÒC%‰³=xœ+-+,w®µ°8F±‰‰Ù›Ÿ)ÙÙ.ÏϹÚZ®^à'ûÙ†§ÉÒkm…å³ñ:§¸øj(¸µB¤«¨ ñÓp©µlv!ÚÚèªÈ:«¸í¾GCd©œŽþâüÏØø 5œ¯0H¥ÙLçǺ"ÕØ5¥Ð1` Å HÜ[!+ÅC×ÕNÐÊD¼V5.Æ©ŸŽ‹sz§ÆÂd”‡3+$—FFëz¥Hwvuäòbü²bivN¹TP‚s­3ó‹ †ñt[F³‹®.‚ÙnSX 5.j™ë]űÐLÜJ¢1KÕ: W)sÅ‹”ü ®JIΜ¤”á2¤ÍHás>š†ÕâÑw×4g¹ú2¬֙ťV´xE£lù]Yøµ˜1^¤Ø²ã3":ŽŒ ÞÈX©Í# ¤±"Î@ÜH ’‘'72VŸF³›¢é=èâ«QÒ˜Qœ{­vÁgÍeH.ÊqP,RÎèÌéÌõU‰º›TYÑî¨èÈ&Œƒ…y1η%f,´{nN·h¸Fbvž˜ÈŒH$²F¢ûì–;P ?Ç“+j"FS€4ä‰[‡s"2Î÷`f1îÄØ53;¿À–?“V=+³TŒÞ ³ ‚kî†ä׺dϱÍ,Èž0“–ͦý)ì^tmÆi?‡_¢ÕÓJ b4/míd$V}s““] ØÊ­4úx+»¢òlžÇñ³éW:}ÆÂ¦}‘¯lö@ô‰þPŸ=d—œõâ’þ™Z³P5*B+æ¡M¬•®+…Â×#X+¬“XdÂúZ¡³X7²nUý×±Ÿu+kåzÆY7²ne­Ìeœu£zíº¹š¯k„nŸ't%_7²nfÝÊZ©eëFÖ­¬ÛY+n¡-¬³XW²ndÝ̺UõßÈ| ëö/àëѬSYeÆzëtÖãYg°žÀ:“õDÖ“XOf=…õ/YOe})ëi¬/c=õ嬯`}%ël.ke_³Vrøšµ’Ë׬+_³Vfò5ke_³Vòøšµ’Ï׬•«øšµr5_³V øšµRÈ׬•"¾f­ó5ë,µÝX·²V~Å8ëFÖ­¬•RÆY7²ne­”1κ‘u+k¥œqÖ¬[Y+³gÝȺ•µ2‡qÖ¬[Y+×0κ‘u+k¥‚qÖ¬[Y+ê8æñ¨üšãY·²Vn`?ëFÖ­¬ã¬Y·²V*…¶°Îb]ɺ‘u3ëVÖí¬;óYg±®dÝȺ™u+ëvÖJóYg±®dÝȺ™u+ëvÖŠƒù¬³XW²ndÝ̺•u;k…ç9 ëJÖêüǺ•u;kÅÅ<ÖY¬+Y7²nfÝʺµÂóªE_YW²n$Ý>l`U¶ˆÏbžŸu†êgÝʺµŸu£êg^_«ë¯SJëÆ+Y7«ñ굈;õ Çó|oa]©Îë}útíchíCk Zï¢õo´¶£õZ[Ð2k#Z#ÑZ&ÞÙŒV Z¢…ÇLËÑÂå½óV´æ¢Õ€~û²Ó‹ÖoÐr¢µ-ü µO£U‚ÖºóÀš‰ÖCçñ«]†V&Z ÑJCëF´F¢…2·sZW Õ­KÐRÐ:­ã§À:¹?‚Öa´ õ>Z{ÐjAk'Z¿GkZ Ñz ­kÑjAë2´Ö¢•ü °V¡õõ`°îGë´–¢õ,Z· uZ!´üh݈V.Z•h Ckåoþ];´Ž 5­hMEë´Æ£u/Zøç«jh G«­he¡Õ-üCQ'+­¯ÑÚ?¬´zÖ~´Ž k7Z õ&ZÐjEkZ/ u Zк-ü{SµW¢µ- Z÷ •ˆÖ´:°†¡Õ†–­¿¡Uþ9µÎ¹h=ˆV)Zø—Ó:óÐò uZ%hMBk:ZãЇ–­IýÁŠV_´’ÑÚ×,3Z/ uâ$X õ%ZA´¡uZ{Ñ¿¯ÖÙ†V2Z¯£u"¬Íh½‹Ösh=‡Ö:´îCëQ´êÑZV)ZËК€V#Zg¡5­¯ûâß5Dë=´ªÐÚ‚VYØ2Ehý ­\´îFkZµhe u9ZcÑ:­hÇ?Ë7­Ýh%¡Õ‚Ö©0§hCËÖghÍF«­ËÐz­¡hí@ëk¬ÉWÑz­Mh½€ÖÓh݋ִD«?Z¯¡•ˆÖ“h}ÿ=Î hu¡Dë0Z¿FkZÓÑz­šÿкšæ?´Æ¡µ­^h­GëðœÿÐz­Ñ¿ܹ­›Ñº­ëÑj@k"Z^´†¡åDë[¬¡ëÐjG«­·Ðš‰Ö hMGëq´2Ѻ ­4´¢5­Z´† UŽV´ŸóZ§†âü÷X_ u­Ð:€Ö´ö õ(Z;Ѻ ­mhùÑz ­R´ZК‚ÖZ´†¡µ ­S8—ÜÖ'h-Eëu´nAëi´Bh=€ÖhÝ‚V%Z6´æ •VZ´f 5[f*Z&´Æ£Õ‘‚óZ¯¡5­¿ 5­‡ÐêI÷@ëä ¼Z_£5 ­´.Dk?ZCÑÚÖ)¬µ7ÑjG«­WÐz­?¡µ­ûÐz­Z+ÑšÖ=h]†Ö´ð¯²v.BkQÎhÝŽV5ZkК‹Ö«h•¢õZyh}ƒÖh HÄù­4´Æ¡•‡–-üBCÑú ZÉhÝ–­çÐ:ñ-Xï õ%ZŸ£u­ž=pþC ÿ¶TgZÓÐz­kÐÚŒÖMh=‡Ö½h­Ck=Z¢…7«sZ ­N´é=qþC+-Z— U…VZh½Š;€"´þ…V.Z]hMCK1áü‡Ö ´Æ¢5­h]…Ö`´æ¢•„–­SÇÁjDëZ¿Gë3´^D«­ýh½Öwhí@kç?´Æ¡µ ­,´žFë´Ö õh=ŒþU¤Î&´žCëv´¶£u3ZŸ @+[µ­³Ñº­©h•£UŒÖUhU¡•…–­)hõÀ?A—ŽÖ´F£•‰V Zøg;û£õ®)‰h-Cëûo°— Õ…ÖUhFkOâ#~?Áó™þý&AHÊ@ã<„” <—ÞY:Dð^‹Ë‹®Ï}b9[ðΊˋ®6JÒ0㼈í.xßh¿%ÀÛ4Bðn4p¿Íx¿‘‚÷[õy b§Ž¼´„Ÿ_Ÿé€d¤ ÞX<' iç­Ä2Îxù`¸+µéÆyɰܴŒ7ÎËÞ‰ ã¼›—5Ñ8ÿêÒÉ‚7Å@9¼¦_¿_*Ìl{.¼êÄŸß~s7ð Á»ÍÀ¼´xµW Þß ÜoðºrŒóa#Ög<ŸÓ×–oœ^ÚÕ‚—b`êóã<'ðÒvç­^Æ{‚·ÝÈú¼íïç%†ýç^ãí€/Ùó>6Þ¯o^Æã¼ÀKùÄx¿>¼’OóRã¯Ó8o.ðZ?7Þî+€·ý Á›l€·xmG[<ÜôµñûM^ë1ã¼ð¶7žOü°DËwÆëó–ïãÏ©#΂ùåGã÷+^Êiãýe9ðJL?®—mÀ›šø£áûž¿ç†ëeÒPh¿^ÆyàYz/ßà%%çí^Wã¼!gÃ~pq^ðZ‡Þ;Îi—¯âlãí·xMÃŒóŽoû9Æyéø´‘ÆyNàMµ¯ÏUÀ³Œ1~¿ÝÀ«8ß8/yÔçÆy¹ÀÛ~¡qÞÍðRó6oêxã¼#Àógž‘}dêp“ÏÐóðJ¦¿ß àu\j¼|;€g™nœ—xô—+Œó¦¯)Ëx¿¯!Ç8oð*gþhx¿txyùÆï7bìÏ ~4¼¾—oj‘ñû-žåWg°þ/©Ü8ï$ðºæ/ߤsáyºÂøý<Àk¿^ð~cäüxi7Þ1#ëðºì‚÷„‘õo$<ߺo´çÛ‚‘ø™ ï—–àýæÁú7?²}ëðöøŒç3ýkœ7ä|Ø/ýõ žÿ€—ñ‚ñýÙॼxëðJþ~ëð–¾l¼|éca¼· ž‘Ïg9—òªqÞ*àµn5ÎÛ ¼Ú×ᄌõÒ7Š—|Œ÷çåoê›Æy7¯y‡qÞFà%½c¼^ޝ¥Mð–ŽßÀ¨vOMƒû½g¼¿Ì^׿ŒßoðòöœÁú¼Æ½Æ×÷Ä ¡î7Λ¼–ÿç…€—÷‰ñçŽ âùµqÞ!àUtßïŽëÑçÆyåÀ«ýâ žÿ€WÒuÏÀ›ú_ãù< ¼¬oÎàùï"h¿oïë<Àkÿþ Ö?à¥üxëðJNŸÁú—ëƒé”ñõxþÄS†ëe ð’’ïq#ïÿ€×ØÏx>¯và)Ãõ’~1Ì׃ï°}xg ÞùFžÿ€Wr¶ñ|îÞÒaÆyÉãa½=Ç8/x'Î5λxãí·x)cïk%/Æç?×μ— Áa >§/Ë/x«âòb¬À[w“à-7ÀÛ<%(xqyÑýåÐ/ñýƒàµh÷Sa?¸@ð&Ø——oûÍg°þOù­àyžÞ¼•· ž‘sÓ“Àk_b|Jx)ù‚÷‘vß¼Ö«Œßï¿o/xñß?èëSù‰·\&*b)ëûY¯b½–u ë—Xoc½“u[ŽÐ{Ybý%ë¬Í¹B'³ÊÚÂzëI¬¯`Ǻ”õ\ÖÕ¬ý¬±^ÂúÖ+Y?ÁzëX·²~“õnÖûYw°~z†Ð›X¿Êzë÷Y·³þŒõ1Ö§X'q} f=‚õXÖ¬§±Îe]ĺ‚ukëù¬Y/c½‚õ£¬×±~ŽõfÖ¯³2S葬ÓXg²žÎz&ëÖ×±v²ö²n`}+ëå¬dÝÌz=묷°ÞÎú]ÖûXfÝÅú{Ö‰³„îÏ:…õhÖ鬿æv=ɺ§Uè¬ûpz ëãì?Âúë=¬w²ÞÆú%Ö-¬×²^Åú~ÖKYßÂ:ÄúFÖ•¬ç°.`=ƒõTÖãY§²ÎúuÞÀnfýëu¬e½‚õ2Ö¬ç³ö°®b]Áºˆu.ëi¬3Xe=‚õ`ÖI¬ï¹’Ç-ëE¬ý¬«YÏe]Ê:õ¬'±ÇÚÂz(ëdÖfÖ'øþ_²>Äz/ë6ÖS.ç~Ãz4ëÖýY'²þ~:÷KÖ‡Yïcý.ëí¬·°ÞÈz=ëfÖ²^ÎúVÖ§ø~ÇXƺõû¬w°~•õ&ÖO³^ÃúaÖM¬og}3ëëZÖ7°.g}ë,Öû²¹¼¬·³ÞÂz#ëõ¬›Y?Èz9ë[Y7°ö²v²¾Žu 뙬§³ÎdÆz$ë5<?̺‰õí¬of`]ËúÖ嬯bÅz ëtÖ£Y§°îÏ:‘õ÷œŸ.Ö‡Ydñ8g=•õxÖ©¬‡³Ⱥ'ë“ÜÏ¿fÝÁz?ëݬßdÝÊúÖX?Áz%ë!œ¿>¬ÖÇù¾GX`½‡õNÖÛX¿Äº…õZÖ«XßÏz)ë[X‡XßȺ’õµžx_2ƒuë9¬+YßÈ:ĺǕ—µ“õu¬KXÏd=u&ë4Ö#Ya݇µÂú8ßïë¬÷°þß¿ÿýûß¿ÿýûß¿ÿýûÿãß Q)•5ã_³Ùð/;æÙµól5õö€SùÕMJS–s¡Ç H}•­ÊíuºJònJœ%þ¢cYyi~Ñ,ü“áv€n²Dø=.oM¨‘4™]žƒzÍæ¸½!D2™‘_ls„¼ž:H\WÛ‚Ardq@uÀåÂë<¾öºàeÉ íÒVU_]í Ñæðy½ø—Õ!¢"L°U»=”H¥ÄâûÔê]r ~N!à²;ñº¯ƒ¶:W:MLDÿB[Püy››KeŸVÜ=`8ûía¤Þë9j]Žyöù*Ú¡¡Z³AGõQ£i‡¹Ç-zÜ ½;8ŸZ+Qs|öyÔ@z—ÍëƒY1äj Dš4°Ú ipeØ3• A£¹q7[§ùjçãìSs%0j wŒš€füMa¬'(j ÍÓwÞjÙU6ÇM·mÓ;ýäÜé¤,´ë½"Û²³¢ ÚÏÎó’ ØæÃ€‡ÙŸªZüÐ]©sRe÷ÐÜõÁÚ°©æÚ«]Á…AuÎoŠê å|ªv šï²ñÂÚöêªo]Ø?ß–YåóÑê×¢óº©ólÒûæ‡KÛªCê|RÙ®ó{E•ë|~)•=:¤^BÚeöîù.'ô)õ²T«§+ÒISç Ù ÎicO N$ºÇÒ¯(AS„Wôš•Q^jïæw½èîšw¾£ÎOöˆåË]½*½'ÌÌ´$Â"Au­9ª†Ä2¾]sá:ì­§Û4§«†ˆ{dG˜Ü®¹qš°ya}¢ZÕÜ´²ª¥.Íí÷y¨æN„=AW½ÓN¹±—Š].±ï {BöP=E5i>±ö¨wZIþ|X”r'LÉ ª$OYvxߣ:j\^WÀd˜2¨2{Á–þè½X«® #àö‡x nŠ€qÂ?ÊKÕSëd»†ŠE÷IÞÚÁº^ë£b¶iqå"ÌãvyC¶œlj‡H”÷†Ô2†sqíÂy/Ü¡CqÒÇ}ó|©à]º¦Õš_Ä-E3%É0WíRÙ‰uàp`®ùbö‰‚ÕjkÊÊÈWƒö`ÐÃy*¨e#nªwãZ!m•["CBî:—¯žî½)ƒ Æô¿Ø®µÆ ¨ó9EKË8 €)ÖRk®MŽâç=²/àªóÁ ,7° £êµ#&Ì÷Vû5tT Û_ ›wmE£¨±wDoìa“ .€N[Eá'£lõAW@mÙ¦xá\¿=TKu·22P¶‘¾ ó‘XŒž~ø²Iû•MQað0&­Ô­‘¸ÔÁ¶Gau~›³V×Dm±bA».hOTP ^4O{$"jzIl(ܽ»äh[‰˜&®³Ä‰ø°6ý6ö‰ˆyVŸÊÒn#´„š"ðK»«Ý0ŽÄ<ß “œžXÕ¤š» UƒÖ©AeÖ²²üâ"›ºÀFúÕ©nS$1YµÆÁuÖöXAØa¨'Ĺ7í‰Äy.iôk§$1[5•´+Œ^'báj^ûÆ9¯KUÜîp@w£Ö\‘KÝJqº<ÛÕWÝèr„‚6zTçÐ,‡ÒN$~ì:-Öƒ1¸ºKg -qQ˜½EÈ&}Hh¡ß%%ÐÕØ®†D­Ñmk}Þ£¡x`Bm¬yÂçKa_ÔÑQ—†©«»ê€­W­Ýë ÖÚ牖LV±!\ª^kªºãy‘Z)êx£6’ýÃxÓ/F-:,j!Ú¤ƒëÄEÔ2¬.'ò\,ãá#(7Üù÷Äð‹£²òâR+M-n'éöˆPÝ€ïÁjÑ4:—ÛëÖŠmï ð»\ÈÊkì Ó—Êhôr×$Ã*ñ¬¶RçÄ#{-ŸV6ËÔêëtþZ{ž±D+Ђݢ‡Ã÷ߤ` o„[e(r‘ÚT÷_m10Øgó±ã]À%nWwUÀXMå£IèˆPë~Ú#—O,Å ¢ ó¤ÜØŸ¯ñD‘š'ìð:y iR}êñʰÃëªñ…ÜÜòÍšŸˆäYh]LD›ZTçg1ÓC•XÒdë§UöE Ðí:,j€¶é`1O…o¶GF¥‘Ö.ûÅé]noµO¿§•QiËwBöG÷ÿƬïêKuÈC“ì“'½þˆc³.DÊÂ: -2c—¸)Ü!¶êÔÝávÙÞ¶E»ÃnO 0<¨Úet·—æ“ Û¥9ÕpBç‘úpãÀ€Ö…—ªhôµ)6D±âàÚNQÆ£v®ëâ¢Ú Z⇨÷Ø$‡DLè­q0-ýíñÔÔÛÔé‰dê[`ÛÀvÍ¡¾.ê`Ïü̉R'ìÒ¼’ó„ê”#³¼ lþɹtÐà,Z#çL´Y+ÊmÎL75’ê¶eZŦF ¾‚*ÊÏ¥fÒGø¼.Û+HCÂË®nù‡*¡¦Š§­ó-Ý„ûþ¦xaÒ>?FˆúNMo9âH»8!á“ΈÚRs:babØéÒ<”¦×ÆÁѰ6Ï,Õ@mרyDý‰ÃžH§Ô šu˜;¬‡•G=R[§y·¯¡-*ÖnÜŽC‰ÃC0®b­˜DÛ®AêÉ #ßU¶ ¦áZóîñb¼Úî¦Êo cÆ„üØDí…~w¦3Òß… Õ¹ê~ñ4Ž—ÐMié‚Zú]œ ¨m~9 Î Ëñµ·žŽ¾›ør¾ÝS/¦iAø™·™/ù-Ê:¾ôŠ;+&›ÒCI¨òùB¶"¨}̧˾P™TQ&_Û”KaI#£íÜ¥}$~bX9jªuy<>åïfzQøŠr®J(Sîëò…ìi£CÇez•çzy•–Þåhoõåõ}J”ú”*oöÍQô³+'‡z”γÕ)ï©”€òÌp§òõ9øJ\9fÑMLwŒ)ÌUþ6fòøÈJÞx‘ߥ¼“Žs«òÁÅt§c—( sJlÊíæÒR›²7M¼ÏVÞ¾PIà׬ϛ¥×°ûb¾´=8&Qi\oR•ö¿˜ÅlSv›¥Iñ‘±JOìÇÊC tÓm}ãv°£cD·T¾#†òt*M’JûX%Ñë )ÿHÀÁµz, åűº±sbή†L)ï&ÌpUãùáž„D¥õYÌ\Ë (›ÿ.²xœ‹¤|4†ãë©áÔÆ/]„¯_¤$ÖÙéóø¨ÿMO­înïó¿²¼ÕÞp§æ˜i)xm/-øûdu±h„ÍHx[³éQM{zQ5ý¥ŸZíϤ̓ÖXåîaŠòúe/±ƒ ¸`8•õ½•Ы“¨×hmüZ¿rk²CiN¶+»µ{K*/ å]åó)ÍÜ™¢ß¹“‚­yZó³tÜ7þãoÁpƒÍ¬òß$ZI>JÁ¼ Yƒí­ÒØÛY«ÜßÊ´Ïd '´~(ôß²çQðtuP_>ŠÍS_9­¼ÙÛ¥´AJÍLJ'VÜBÃ~M9Ø{òý%|GôS÷ 3—5}ðàdWŸ¨ã™û-º³œ•Ÿ²øb?Þè»þ£Òi/6cÚKQ¶/'yʶ‡ÍØ— mJc߈9Õ‡2yè•¡~CiîKëŸØ ÓŒúàÚG46õÕ>˱¥/Üæºñ“t˸YBY¶M9ÔW{[öì|¡¦<“uÒ“}u¯È¶O€zÅzAªÕñòp2ï Ž¦Àpø¦*=%îLÖ=÷ý¢JüöÓ—1Eµ+™,?”¾xëVÊï([vQE}@åÀ3éñ~áC–û¡ñ›QðgvÔlRgÏç.NÄ?¥NÓÛŽ~ÊË銙^àíëG¹Ùš%øK ^â)Mýa£¥´÷ïæ½ÝíŬ½üsù•ár äá4eø¶¸'Œç×úÓ¶ 1ƒ3¾·8ã+±/ƒÀ¾P™¯€ ïÎA4|:ï­t v(ÏŸE‹Óš±_.-ϨVžÏˆx}ô^FÈ„õç›Óó•Û&ÐHß9 Tú…’R¶ *w ’ž_D~û uÀ?u–6×|r–:Þ??‹ÇúÊs#Æú–sÕâ¶sÊ{#ÕI]¹?CŒï÷ÒøÞp.ÏòÏ+†øÁ0Ä¿ÍÝ” èlÓ?Èž5CaØŠ†PšIo`6AJ»£Ö%…6’žÅ»°†I€éZ²y}‚~ôÿgÐå“ h¯ú¨OóRrï–jiß`ò¬ÖÒ3áZú kIùö,‡rz¤ºò½užº¨uœQa_ž7}óÔöÉ@p!ØùeíæøEøœ¼Ñ¢6ð‡˜ãm Ô«×þBÌoç*IôBY§û‡_Ôè¿âPîÂY *RWPùëZìËÿÂGõ¯ ©¬ FzÛ90<ÞÂìµ¾ƒÙ£¤ªë=åÉ!U6"½8„£¿Q»)öC’ûI$Ù!òºsˆòÕ=>FŸ ‘O¸>Göû5Éo£ñ,eõY8û„Cÿpñ9 ¢NRìïQÞNò.”M‰[œœ?>+jú>vžnúþ¢ñ÷ÈêzeÓ”íNT§šåCÃ#öøPì*ü¿‚²å-ò¼Cön²÷`¸µ>ª6úÁ”ðvåw0mËÇFŸ Už†JËGT€OP¶á'OÀ™`ÅÙô†AyÔ"ZèKX5»yMòÑÙݽ9xv¸O} 3V×q*ÊXbœd”ÆùdtÃ8_úÃÐÕ)úÓÏMã ã‹{Ї²éîÔz[R”?§cëÑÙÑ®ñ”ý.÷c\ëƒ(ÿHÌÇQ¶ÿ‰ìõ„¶ú<¥¸ eÛfH7A<Ĭ†Ï6ë‡Ñ²Õ‚«Æ+”À?)pÙï`6pøýs˜²BºÞU{†)‡ÀÑô!Ƶ|LœO(ÓÕ~å›aJ+4E×çjôíÕG†Ã¾R®¬GËqÊí”ÃÆž˜ÛÛzâ£l®;âz öáüÁp˜KþŠû‚» :«çÛá4¹ü8\ÔÒb{MM”æïQv=„)sGZ}ŽîÔýo°Œµ?ŠQm«1J{)ðæ9òyÓ³ÖºÚZ0L:|ŽSy²Óôr^ø£ «qy Öº#…÷µó"? ²ïû,FP'Ûwž¨¸@ïzéí/õ¢Uˆ’ÚF5õÊæ(»þ…²iù lüŒü_b’òkÑÍù-ë¿`¯$Žqß°(ïÀ\Ózœ’øi8`Q:hnLÂ;܆²qY’¢ô *Z |8J}[òõ(—¯Z91ŠÞ”,]­4ÆŠý<öÁ¬ª<=Š>TÿL«Ú"ûö¨È£ï‚[5áMZHÂM('~dŒž¸í!„Û%¹šä:”ÍÏPÞZ’h7ìRMßøfVaUa’ :Ãh%ýï¦{ttŒ/|yÖ.ŽV:GcÕ'QÕSJoÒ­v%QÕ“g/yþƒ7׎aÿ4F;¦ýóˆ9D)tPf@dÂdåµ1“”·Æd*»ÆàôE)§”NRÔïzÓœ…²iÊ–&”­¿ï³öÈ¥©êyØ©ÐóÕ‹U©¤Ö¥åaJä ”mO1ž_OÅ3KåX*m£•ÇÎÇ·€RÕ­bGª8züRi~ùíÏ£l~ oO©,9Ÿ6Äû€-b:ŸöE›Îw)[Π…e|Ãùè~\Í[©oPzïŒ;ð¶óyû>Æì&tSùê|ÝiòÞ±LY<–)»ÇjSÍ}c•?Œ…B·SF?¡šûŒ*àho“z˜ùWˆhþÏö„Šìu°ÇÚ9VÇ,»šô$‘—öÁ|ÞÓGÏò‘ø©±êø’ °«bdóC(Û!ÖÀêŸ×ƒ¹; nòd$³.›7à}šžEÙò7Ì#~4sEšø8æZ$¼ˆX×f’¯PôvŒÃ{¾š&Äs'Dw½E¹eã¿úP—îƒÚ´ã¸ïBÝ™×–qò÷D¶ó+oŽ æ‹üÝW.¯ŽÄÕ?/ŒøvÇs0B[Û©ÚÀ-å怜'¾óð¸Ø_kió+1k1ÉCTŠÏ¨\GI~Eò¿Tgß’üŽäù»¾´€s)Ž Ѥ’k_Ü«p9Ê®{Q¶=€|ƒ³ì"šîƒ5ºå5¯¢àÇQ6®%Êz”íÏô¥ö"úËäßJ1ÿ$ÖÛdïÂdñ(æðEáG›Cé8ÕP{Q¶¶“}bqš},ײ?¥W+{'¨Ÿã£Ñß I¦ìtåsºÉ)ºù­É˜Ô2’÷¢lÿ}2Ü\̹ûÓ]ó”¿@™W!ÔÕŒP8G?¦W;•×.Á=!úyü¡‹½Ê.¬ŽõÉÚJ²ábå5Ü<výãbå-pµÿoж‰òñ2Ê–W!(AÞ•,/mXž¯ßͦmÉÝã•§Æãî †×#ãé Ýêñx"H©ïBÙü!Ýããd±ÿ¯ìU ;a7š>¥ªø’hßRÙ„£ã•».aÂiA¸ JÙz[?¬ß»Q¶¯è‡¡~;dÝîQ¿Dy«ðˆµ¬AÙøg”]-ýʶ¿Ù;O+ÏK`“ Ýk3lšþEÔ½øÙÈþ„ìÏP6wQßaºi>“þ(èÐZ~×w-º¿‹æÇ°Mk¾½?ælÊÆûP6ÿãm Ü¡ZuAû.Cy÷,#Þô(â™Ê&Ò¡Æú ¸ ¢µFœr´LÀC»þD‰?…²í/([Ÿ¥$€·{ eÛZ”­ëˆ•ܦ|1¡Þë Þ¼>†¨ú1ÕßeVƒ_¹Kô¢Ä¨·Kz»¤·¹¾ôˆ­êíu ß zĨ·Iz›¬w3ü6êw™£_få»q5ÃÇÌañ!FýzI¿^~>^† @õÝ´zS}þI W‚±U½?Äð) GlU¿¥‘á AØêýÛOfø^Ð#¶ªßr*ïcú§Æ˜þé ‹éŸcúg0ܧÒ?#Æô¡Òå‚1êó%}¾¤¯<›áã@Øjú»Îe¸ôˆyýÓêELõ%m Ÿ zčߨE«±’þù _†éŸ¯Õ·Ké·KéoÙÄp;–ÿ¦Øô•—0ü –ß%±åߥ Û ™±UýúËzÄÜJíÏ.·¿«žzÄVõí×0|<è[Õﺞá5 GŒúIß!é·ÞÌðß@Øjú·1ü è[MË] ¿ƒåw—VoÚ¿Þðm.Øï{bËÆý '±Õô·<Èð Ð#¶œÿG.Çü?›~ýc 7‚1êÍú­O2|1è[~þÛ~ôˆ­æ?ÿ†w‚±Õô+w0¼ôˆ­ÞÿÆNœã‡cÓ·¿Ìp:è[Õï{…áå GlUoÿ'Ãë@ت¾äM†/=bÔ›õ_o3ü(è[Õ—¼Çð'˜þ{1¦ÿýæCúĘþG =b«å·þc†ƒ1êÍÆíŸ2ÜzÄVóŸÿ9ÃWƒ±U}û ?écúppóǘþW1¦ÿ5ÃÝ@ú_ǘþw =bËéïg¸ÓßcúÿaØéÿ'Æôfx3¦ÿsŒéÿÆðý˜þo1¦¯üf³}„é¶œ~7Æ?Ò½;ã§€±Õöc‹gü Gl5ýõ Œï=bÔ›¿÷õeü3AõfýWbÆ¿ôˆQo6~Ú5ñŸ=bž“þ·d0ãï=b«ù÷cü¸…ðþ:LÒw—ôݵúvÆŸzÄVõ[G3~1è[­?ûÆ2~ôˆ­ê3Æ1þe GlUïOeü'±üRcÓoMcü=xÿi±ÕŸõYŒßoÔÿ¬Øô%?ôˆ­>?ÿTÆw€±Õú·qãŸzÄVõ[g1þ GlµýØ ÿ#Ð#¶ªß8—ñÂüÏMo[ÀøGý[[ýÉ_Èø¹ GlU¿¾ˆñ—€±ÕòßRÂø~Ð#¶šþ®RÆo=b«z{ão=b«ùÏ_Æø/aù-‹±ü–3þ—X~˵z³ù‹Ä•Ì#±ú•±¥_rãgƒ±Õú×^ Ïôˆ­–ß®jÆo=b«é—Ô2þe˜ÿÚØÊoWóx Ó¯‹Mïw3÷@Øêýoô1´Olú­>Æ? ôˆ­ê;Œ?ôˆ­ê÷…)è£Þl=£}-ã¯=b«Ï?ãÆ¿ôˆ­ê·¬cü‡@ت>q=ã¿zÄVõëÏdüo@Øjùo?´Ô·ò¿!ÆüŸËøã@ØrþÏcüE GlU¿þÀ©ôˆ­ê+ÿÊøm GlUßqãß zÄVõù2þßA˜×“ñSâ%Œÿ–ÿ%Z½ÙûËÆË¿ßq`?.‹-ýÊ«?ôˆ-—߯/=bËåwã×€±UýÖÿ Ð#¶Ú~:nfü›0ÿ7Ǧßwã¿zÄVõ‰w1þ@ت>ãÆ?ªìß=Z½éûÇ}Œ?ôˆ­¦¿ñAƯ=b«ú­0þzÐ#¶üügüëAØêý'¶3þ‹ Gl¹üŸfü½XþOÇÖ~·>ÃøñepÿÏhõ6iþAÄŠþyÆúçµú­Rþ·ÊíÿïŒ_zĨÏÒÏÒßø ãŸzÄVË¿ã5Æ¿ôˆ­¶ÿ|øƒã±UýÖ7ÿ,¿7cËÿ¾·ÿ7Ð#¶š~%ü·‘åPþïŦï€?˜8ôˆ-—ßGŒ_zÄ–Ëo7ãŸzÄVõöOÿ>Ð#F½YÿµïsÆôˆ­¶ßÄ/ÿGÐ#¶Üþ¿fü¤ hÿ_Ç–Û÷ðü@Øjùù`|7è[M?ÿgÆ?ôˆ-?ÿ_ÿNÐ#¶üümÌ£ôˆ­ê7ve?€±U½­;ó²Ê¿»VoöüíñŒ? ôˆQoöþ¸µã/=b«éwôaüõ GŒzÓõ¯~ÌãJÐ#¶ªï8œy<Œécú˜Ç+˜þ­¾Dºÿéþ· bü½ GŒúJ›V/båùfüÞKáùÖê÷Iùß'åßPæ‘zÄVë_åQÌc:è[ÕwÃ<*@ت>$óh=b«õ¯þ`èfÌÿèØôë“ÿÐ#¶šÿ}ã˜Ç{Xþãb,ÿ ÌãÌÿ„óŸÁøÃ–Aþ3´ú]Rû±’~ãO=b«úüxþ GlUo‡?(=bÔo‘Êo‹T~í“™Ç_@ت¾r*óØ‚÷?56½mó¸ôˆ­ê·À€nè[-¿õ³ÿ#|þ³%û/¥¿QJ?±yô8Æ…±Õ¿ŒùŒŸzÄVÓo?–yzÄVÛOFó8Ó/ÒêMÇ?Ç1þ] GlUßQÎø¯‚±Uý–eŒ¿ôˆQoºþ°Úÿr¦GlUo_Å¿-'3þ§˜ÿ“c+?ÿi0þZ ï/§iõ[¥õã­Òú±ý,ÆÏ=b«ùÏ?‡ñ Glµü¶¶0¿‚1êÍÆ[þÂ<=bÔgHú Ißq>óxôˆ­æ?ÿூû¿ ÆûßÄ<Æ€±U½ý"æ1ôˆ­ê7^Ïôˆ­>ÿ­—3þi˜ÿ˵zåA/bEã_Žú+´úvIß.éýW1þý GŒz³÷§}0 Ù zÄVï?ñzÆÿôˆQ¿KÊÿ.)ÿûn`ü~'@ú7Ħ︉ñS@˜·éþ·J÷¿þVè?A˜§/éwIúÊ;˜G è[ÕçC†N=b«õ'ÿnÆ¿õwǨ¿ì7êï‰íùWÞÏøÿÆû¿?¶ö×ñ óHpÀó{0¶üw<Äø“PÿPŒú‡¿õÇVÿ¶>ÊøëAØrûŒñoFýc1êgüQÿ¸dÿMöïjgü/@Øjú»žbü>• JJßdþ?ñYÆzÄ–íÇsŒ¿ôˆ-Ûçaü zÄ–Ÿÿ‹Œè[­ÿö—™ÇE GlU¿6DÜzÄVõ¶×˜Ç« GlUïÿ'óø ôˆ­êw½ã7'ÔŸ7bÿm}‡ñǃ1êMç?ßgüy GlU¿ïC¨? GŒzÓïÇþÅøg±Õô·|Âø×‚±Õú»~ã?éï‰íùíûœy¼÷ÿylúÊ3} GÌóoÖ€8¾ ú¯}RùI÷o—î¿òkÆ zĨß"é·HzÛ·Œ?ôˆ­>å@IrU‚1êK$}‰¤ßõ=㟠zļü¤ú³K~ÿþão=bÔçKïOùÒû“íã߇÷ FûÑ…eè-Ð#¶Úþó»3_ðùw×êÍÆ¿í=P5ÜO­Þtþ!yL=b«z[_æ±ôˆ-—_"ãAت~WÆÿæ¿¿V_"éK$}Æ@Æ¿ôˆyý‘ôûG1þ+˜ÿA1æã‡ù›¾d8ãYÃôˆ­êÛfüÐ#¶ªÏÁøÇ±ÕúoÍñ¯Œ¿ôˆ¹ý’ôû$½íÆo=b«ú}cü@ت~×…ŒßzÄVõ1þ; GlUß~ ã zÄ}Üçsåjã±b^fúÁn°/Kù±iõ"Vêã? èóôMúó’טÇrÐ#¶š~þN‚±Õö¼õuÆ¿ ôˆy{Ò±’þŒÿ"¦ÿFlúàï}‡¤ß"é·Hzÿ›`N„ñÀ›±µÇ’·è[Mð+A¿OÒ–Êñy„?&”÷¥ÌÀßø!ÀOnLõ5wzÑhŽð@Z]ÔóÇÆýá€q¾¡šê»ÛlÉSYüô´¾B~ÎŒù¹0æç)âúuQ÷¾…æs¿Œûëúta÷Ë%Æýc‹1 È÷· ÷ËÝ÷?îŒû?Œûƒ~Œû5Gue÷Æý˜NÀ¸¿ñÀ¸_ø*Àxþ΀q?òç€qsŸnßGŒŸ û¯ À¸Ÿº0îϾùpÞÁȇþ÷-ÀØŸ}Ï8"ÊöÛOŒû÷WÆóÖ!†ïïE>œ×ò$`<¿áŒö£÷èz8&0ž7SŽö¿‡ã~úKãþüÇ‘ãO1~8ÿ&¾„CbŒýs`oÔÆó;ÎA ç‰ÜÏy1œ×ò òáü“£zB8œ§1p»á ‡ó>.Àp8?æa ‡óPÞ@ ç³ü¿7õί™ σqÆï[NŒç]\ ¿ŸØû¯ãüÚ½ÆïEòzáóaá5€Ñþ^ Ç—Ûãy»óó ÿpžÈÀø}Ï,Àø½P=`<©õpžÓ€ñ|„ã÷JÝ{ÃýÀ÷O£ÃyR€ñ| `<¯ê/€ñü‡ûÃ÷X¯Æñý7€ñ{¯A}àþ`ü— ¿g[çgÖÆïånŒó¯`|ð=Ú÷ß·%éÃ|W`?ºãxî,À8>¼0žWø `\Þ ׃m}ÃúòÀ¸Þ]×?ý€q=õÀ¸¾xêa½þŸˆaýý'ÔÃzðÈ~P°¾9 0®—:0öož Ï‹½ 0žŸ» 1ìW}0îý0î§ý 0î/™ñÃy‹óãù^À¸ôÀ¸¿ânÀ¸ßá%À¸ÿå3İŸ§ëáP~°¿d`ܯ’˜ïÇA>ìiŒû3.ŒûeîŒûO^Œû¾F û“{÷‡øá¼Ç$À8^.D ßS;‘ë{§Æó¯Œç>ϳÙÏ»tèá{ñÉ€ñûõ•ëykãúàE€ñ{ùãù‹ïÆóm }8/w,`üÞ>`<À÷ƒ·Æýå7ÆýêOÆýƒaü°Ÿ­Ï@¸ØŸ–÷Ë€á°ñÀ¸òÀ¸?ïCÀ¸ß³×‘û7³ã~ÌUˆaëÙ€q¿é­€qÿêß1>ØOû `ÜŸ;dða¿ï Àxþè2À¸2Œ|Øßx)`Ü/÷`<Ÿz`°¿10î×+Œû§OÆpØÏ|`Üý`ܯý`œÿê1øð=S`<_§ 0ž—ÓŒ¾Ÿº0~õ`ü¾ëKÀø½ØÀ¡?|– ¿g«@ ó{«o9ƒ•Ï…€qþðvÀø>þ `\Ÿú0ž—ûbØ0tä¾'Ÿ¿O_çû*Ãþ‰u€q?Ç¥¨ßÆÒ{0î×xÓƒõ˯ãyœ‡‡ûõÉLÀxÞJ9`<{ `<ôRÀø}þãȇùÂ7ãù™ßÆó´z˜ŸÏ ˜Ï'?0žÇÜŒz8ßøjÀ¸^¼0žð `ò‹€ñ¼¢/ãùG‰#!þë?0®OÌŒç-¹ãùé§Äþ†áËãùÎ`8œ÷ô:¦çGý1¬§ù…õ• À¸_iâ4¦Æó¬6ÆïËîŒçíìŒçÿìŒçÉÀøá|»QI8¯~&`<®0žÇu`Ü_r)`<ïëÀx~Ø»€q=ê;Àx>Ùa£ñy0œÏo*ŒçAãùÈ-ëí7¢ÖÿwÆóüÿ ×gûŒòÄõ_À¸~\Žá°ž¹Ãa}ôJÀ¸Þº0®ïŒë齯BùÀú|`<ïm.`Ü?¸0®gž4ŸÃŒãÀ8_¼ ãƒó >Œß·vO†ò‡ùÝÑ€qÿT`<¢0îÚ€|˜½ù0_û<Æïã{ãþ¦®)P°_j8`œo™Bç»À˶HØ%á& 73ÜñùRø%¾Fâ?.…¿(…¿)áKü$Üuœ–?LÂÆiù“%\(áb ¯”p“„/–ðm~LÂ/Kø= 'å?a¼6|”„³%<[ÂË$ì“ð©¾HÂ7Jø ?(áÇ$ü”„ß”ðWî–ªàßðX O‘p©„WK¸IÂçHx‹„ð‹þ@ÂßJ¸û-&á4 Jøx »%Ü(áf _*áë%|Ÿ„Ÿ’ð[þRÂ?K¸gš”ð( gI8_Â¥®‘pHÂ$|±„o“ð#~QÂoKøS ÿ$áÞéZK›$|­„ï–ðSîð;þ"]Û^÷K¸k†'Jx¨„ÇI8OÂÇJ¸BÂõJx½„/ð¾QÂehíq‡„?–ðO–©ÅYž'á$Ü$ás$|µ„ïð3þPÂû%œ˜¥Å©ž%áIx“„·Hø! wHø ÷ÎÖⱞ+a¯„7Jø ?"á×%¼_Âýr´8I³$ìp@ÂgKx‹„’ð?%¼O‰¹Zœ"á" ¯–ð©>_Â7Iø ¿#áï$Ü}¢–pš„çIx•„×HøL o–ðÃ~_ÂßKøðIZœ,á /•°WÂM>[—Kø ?(áv ¿ áw%üo w¬Åƒ$œ.áy®”°OÂë%|½„‘ð³~SÂßH¸×-!át Ï‘p¹„=>M“ðÍ~\Â;%ü‘„¿“ðayZ|¦•ðL WH¸RÂ^ 7KøR o•ðó~_ÂßHøð|Ç!*áTÛ8ž™¯}ž%vJz·„OËצŽ„ÿ*áK%ý5¾EÂ÷Hù]܃䑸ãˆ+%®Œ¸râ*ˆ[BÜRâ–wâüÄD\€¸ q!âÂÄ­!®‘¸µÄ5w2q§w*qëˆ;¸Ó‰[OÜÄI\3qg·¸³{°ýRç×BÜyĵ÷âÚˆ;Ÿ¸¿·‘¸ ˆûq›ˆ»¸ÍÄ]DÜÅÄ]BÜ¥Ä]FÜåÄ]AÜ•Ä]EÜÕÄm!îâ®%î:â®'îân$î&ân&îân%î¶lÏÖÄÝIÜ]Äm%înâî!î^âî#î~â îAâ"îaâ!îQâ#îqâž îIâÚ‰{ЏmÄ=MÜvâž!îYâž#nqÏ÷q/÷q'îeâþA\q¯÷*q¯·“¸÷:qoô`{ÊÞ"îmâÞ!î]âÞ#î}â> nq÷qÿ"n7q÷ qŸ·‡¸Ïˆûœ¸½Ä}AÜ¿‰û’¸¯ˆÛGÜ×Ä}CÜ·Ä}GÜ÷Äí'îâ~$î?ÄýDÜÏ=Øž¶_‰û¸ÄÙz’:M\WâºG\wâzד¸xâz—@\oâúwq}é^5â‰;œ¸þÄAÜâw$qƒˆLÜâ†7Œ¸á=Ù>º£‰;†8;q#ˆIÜ(â’ˆMÜâÆ—L\ qãˆO\*qˆK#.¸ â2‰Ë".›¸âr‰›HÜ$â&7…¸<â¦7¸é=ÙÞ½™Äå7‹¸ÙÄÍ!®€¸Bâæ7¸ùÄ- îXâ·ˆ¸"⊉[L\ qÇWJ\qåÄU·„¸¥Ä-#îxâ–·‚¸•Ä­"îâÄUç$®Š¸êžl¡‹¸Zâꈫ'ÎM܉ĭ&ÎC\q^â|Äù‰;‰¸qAâBÄ…‰[C\#qMÄLÜ)ÄJÜ:âN#îtâÖwqg·¶§bÒò©ë´kv­Ó®uÚµÿ v^v›ÃÑPï¨ {k<.G½ËYã ØeŽê€Ï¹Ú±6èu.›#ô¸œMŽêÐZ‡ß 6Ö8ª«nïßj5p+à®%§ÇSå¬^Áö`(\e¯wyü®@P“$ÐV»!Ψ êgx/+s»BGYÙ"<{Áb‡ËW«ë_KãÐ ¸\º^W£‘?)´ÚZW€Æé¨öy½®ê!µÖí1Œß0S5r¿Ë[ãöÖé†ÈÓÔ :\ ú!Jrþ&GÐ º}^‡Û  ևC5¾F¯.¡1ZÆîPdqÌYP2¿°ÔQã VÜþI݈RG¼ªÜ¡È‡?gqQ‰ÃYCj†¯Á€[hp…ê}‘·1§|£zÜ.oÈ1g–!õ6p:ªën¯R+ ‰Phºá¼UT‡‘[aÔ»H°?à^ã ¹«]Mú,#y­'¬Ç,è ¥èÕr@ Ôé÷;jœ!§!AiÁ/`/K‡ÇÔ/'Js­ž §ußí­q­5$5øjŒ3âSê~)Ðð“Ânò¿a FmAg½^;B 6”j'y~Ñ3r7¸|aãbcWãò‡êÍH† y|$Ë@òøªÆåàu¹j¡¿£´L¿îëÙ>ðw4ºCõÑZVÀÕà[ãŠÚ"h˜ÃY]Mn×,ÜQç3HG$\^W/ävêä²çTöè·"Æ©rÔëšN0°È2Á$ßȲ”q¥})™ºOŽÂ‹žówü4÷†ªèÀ(Ê Ÿ„[ˆ(ŽR1Y1 ŽÒû„<Á5™†©ºŽ6vYh0tÑRôÇÄÈ#}’…Ø4¬èRsà®uWÙX‰Ã=«Q×de–Ùš,ã }UÁ|ýA\añ¼Å…Žª&½;*#ƒª°Û"7æòÖ¹½:p®:bãˆE$UNL{\:ådÁ0ERJK‰át9W à‹ìXh¸B¬y@ï}”1¡¡\¹¯ÒYÅ…ÎM!‹`sRu ÉòEåù]®ÕQräæwI‰£daáñì%Ëï 8ÉJy-Ö!ÒWŠwK§MÓà`½3+wbDPQA–Ž_ŽŽ_n„_IaÔ*÷îX–›1E—£Xí*·ÔGå"ó¯aÑxsJE²³ÊŠ3åsÊÒrË2¨Êó%¢PÕÒ©ËJ­|Þ°_?ÐUg! ˆ)mí/yvúÁJ5ÒµJ°ß§3ød!AW¸Æ-å ´„„œ¡°Jyá6ÈÑò¨ 2'fD†”ÍÒ764 Ž YFï©e…ee ;ª"ËÃtcÆÀ¨ï£"Éhˆ#qŒß&EbƒS1yÑî_ãL zÃäèv #¯ÿ^c¥ê¨5.Õ¨ƒg‘dVpAkå4+hÃ(òƒô€/‘40Û(°|QŠRk³$ÛQ¸¬ÜQ“åÖ vÏ"æFyVdŒH»ÍâQ˜>¯ËCºK}FYùâÒBu $Ð×݉"¾~?aD4žéÑ °DÅ7%+m…5w&tÊòyyÓ0žµck"b£=ìh-€´°€«ê~DÍ5Ù3²w[£2ÓÈFЛ.Ú˜-ØáWPoþ„2õC½Ëã‰ôugÕD5bwUÀ <¯;2-Ö±ò¶¬Û½*±K|@QוôÞ},ttÂEÇS‰YwÝ;ÚK@©F¤&T¿ƒÄ¾&à uš›òVÆÖ¨ôk_Ô×6¨WÌÖ-,¬Y(X„2Ι‘á êÛEêíöÖúŒç« ¢-<(ƒó€«Ö¨ƒˆ6x·° a²¡ܬ‘1³¸"4ËVƒføþí½;ÊÒ…•e‹hK––+ŒßŸ¢,S˜.Q[JzÏаðW sºÃ9 ƒØ±è„5NOX'ý†Í$™[¤/äô˜YU“5i½†NÕšqtû óõœÈµÃÄ,,ù˜-÷Èk7†i™.ð- 6꽕èïzbS³~'IÉI^Jª|¾η½É“®t¹˜UÉ(iƒžEé ·Ýi“Ð 'ã“hÁRtrúêb8MÚQöVG WWÌõ9DNÛ½A°œ{5Ä8[˜"‹VY¿(+/]P<:IÑÇãòÖQS¥]å`S¼t#{¶&ª{ùæÃh» µÛ 5û u7ª»…m€†ûþ"7ú ›÷æ”_RŽ™åË’ÚuȨ ÑWõ–#Ö#¥ÕBƒåAýõ@Ã@yÅOZâ£kq°1ѽ†?rÁ—¶4Ñ»¨ÞWåå?q½OYàSVô”%<ƒõ8ƒ8êÍLú?WÀCëyû»`Q!ópÌ Õ+sÿ(^ È;ºŸD)ø48«•i,Gƒs­~ñ¼Nùü" ’‚p1•[ó«r£á+%Ì<ƒÚx×8ÂäÕ¾VòkrE2p :j=>_ ÂW››0y{Rf½œko^ŒäYûÀŽ`è­âàDt“µø»Ãëã£DÅ·ÖhÀ_©¹£™¬¼ËbLõkhÛi *ø«O¡.àkDÏ:f»@lÄü%êïeKÜkDä—W„A!tk0¿Ž>jï¨øøÉ£Vž/be»ªàtÖº‚MAfHDŸRh¾jî·ÆåP (ƒò͑ǚE:QÝ>¬Ñä“z5ø!§(ð®€?RŽðª!ýÙòÚ[ð5¨¾â­0”¥BRBrÂ䩸×h W ý2ôjpƒ×(+¯ìWfÆ”!µºˆ.®šk—ÉÕuqy!\^ù–—º…µmÅlaõZ³\±>-,H«+БKÎÊ<©ÎŽqÁ_Ý&.y²ü+žÑ6ŒÃT¬¼ zóW?ô”¦Ê¹wä9Òå]ÜÜ_)Dòvl¿ôÊ/†ñ7yÉS˜ûCäWf1Œ¿\ŠžÚ4öÖ{•1Xþ 7£¿¼4Â?b ¨†!Οh JÑ`‡gÔ`aªÇÓîåK3Ç!z=)£)M¸¸R ˆxĺ³r öÕ_ÊÞùE/|Ùô“+‘ü®ªï6D ”Þ< ƒt¤š—HƒÍFA#ŽªÙ#z¨ \w‹N€Ôh#·¨èùòç©ÙŒ"zÀëI„—²íDô¨¡‘›Bô|ypíUù=ÒÄš­²"'êÒªBŠ\OÕõ†‰5L³rªë-Ht ¿Ñ‡ÕPåW|1c@zÿRî©cõVëÐ?b‰àe‰C±âòwÍZ Gªô¸4Çç+^è¹Z¦ ‰è™Ru1Œ#aªý"Ê]^ÉRýåÈÅ)^ô‹´ƒº©Îz7ò,k×}½Å ­ðPn(ØZ û `(ð²Ð,µ(ÚÉÌ/¡E.• /¿Ý~Û¨ÏÖYá@oM Ig½5¯QÇ+/%p?1Me‰ÖMuã—+Œa×lÜ-K]²ÜëwÅ:³ìèÝÈoO›[¡Ô#ªA-Ðëìug£uÔšlÐûM6ë‡i£‹0$úsÉz!jDšÁ›*V~cketWd¶øp…M’eš]‘Ò6Hyßc”Ž:;M·2ï]4Û¬mw¢ávDãý‡Ñ6ï0ÔÝR¨·‡PÓ Ñ.AýmÂ>@íÆ?Ý~ú[û v×n§ÓÝ?§·a.ú9–³&WªëW;jnÖ§.ì J±k*bBƒ«¡ÚOš© ŠQ$·ô»ªi³°Ñå1XaXÍ–ÏÈOX%#ùQÉä§2ŸE~ziD5MòÞ W‘ÁKO+H¯ ¯WÁt_u0}ëæÒgùý7{Ÿ´—…ý~_ ”žVíwzÓé4tMú²¢EJœ¢›•–“9aNƒÃÝ‘^ì M(S–]&d¦eOL·1Vý?˜$Aû¶ˆC"ƒ¤Å£(Ÿèï9(DM¾M‰Üú÷¸Ö`3én¡è›ÇbÜÂ/ílOénoµ'\ãJºˆÍs¥C[H‹\d¶´¬jeÜ`íÝ`WDÔÝ%¶ÏDÝ’c¸ÍòÍhÛ6¢ífÓ݇iô‰›Å/Š,}d¼OÛð£+ÛOÌvãDÝâc勌ƒòiÇþ¸ÆxñÞ: »;£íB5;øÃtw¬Ù·ÐV¾Áò©o ß([øâÙPozdCõ¼˜ìãDŠ¡ÞòÉ(1Pg‘gåÓ3LOC0="zèA?¼Âì´Œ˜”ˆéŒ újvÒJ´pól¢Ú:+ÇDµfŸHYþxД`e;ÕÓ,m­³|d€Å½‰1¬`Z ÿßÎXÙÁl´g+êLó…¦{wc » cÚIi8D‹ºÍÚÊG©ÑÂL¿z5 °ü¯ÙçfY3ýŽÁP©÷±v´~ÄÚ· ¿~0þ|"ê§¾a‰þ! ïæ Î=2ýÆÇì“$½â~IÛ((¿ÿPÃÞÀô¨c{gõh+ÇóX£³Ê¬Ã?˜‡õè,¨°¢³ýð°h§mY8,ê‰eÆç™œIfr¢Y´ÓÃŒÏ+3<Íü 3ý ƒyžŸ…à -œšÓIˆ–ŽXŒú ¾ÕS-|‡oéhE³³£eh~¢±í2>_÷ÓIÍ&F0“Ó0¢Ÿ¸bfv L0ŠÖìK§àE? No ixZ„ºQç&ÿßý‰§ñ—’Æ!J”:9ÁýgÑÿ „ÞÍY:ÅÂÉ"æë“ÑψŽÂ1zs1Yˆ3Y34{¡²rz…)#úQ·ÃKÄßE²òé¶a–¬|G#ÇÂ7ò†Ù±øeûï¢Yûœ>Òk?N× Õ©æ:Gµè¾Gãæm ¯{LƒËøoÃSÃi39wÁjŒýCé_5Î@£Û;Áï x&x:`¶7uBÉ’{B–ǵÆåIw†C>º]¶h¦‡ªýÐ{§Þé­sí ΗŒì\öF·Çc¯rÙ=¾`ÈÞXïòÚi= ú=îÝ´ÂÄ£ÎéöRu™ËeŸEBËh¨£ŸÔfgËNÊËc)MMHEç+왓'fÚGêçÅž,¤â ùÔ,›ÔÒ”‘ Áp•]ôµŸ’`'WC“=9©Þ×èhWקاÛóS•îIü²2𲇽Ò ¨¡SÕX¼©ö¤:_ˆüOºÀ` I ¸üž&ÍØ±ä.ѳŠîì"žk3iÄŒÝXO2B†ì3ì)$§½’¼„l ÒÜ'“{œ3«ÜQ–Ê’KN†È¦Ù…;™‰Iä ¾$S½¯}d)‰È®tÕ$|„’{•6o“Ø'òLjìI^"ô8ɳv×ÚGd·².žK2Ƴ:a:£Õ¸ªÂuJ1'¯d·žj_IsšBÅI¡€³Ú5#“¡\Ò¦+ÅÆ `òÀ “LÒ—`g àl"7“ŒQ±Â¥w¥xLMXGj޼TØ}µb…ÊËŸvIð¿ÝèþD×Á°ÿsJÍÖ˜ØÿŒ‰Y™ö?£Óþ’ëOlÿ³2'fDûµTý‡½!·'9‰zãX‘±*Å®ºÈÞÿhXrÁ„Ð@Œ#¹»äv'±CN?ãÚ©ÀÌ4)œCo›FûWŠ,Š0ÿMÊÍÛÿ¤Ì¬Îö(®?uûÏÎ=ˆík©lq Xãò¸hÓv®…cÊÄÑ ðØ“VÀn”½.LÇG¡z—]ÚÙ¼áÐÝôäW…G`²}„:Œb\2¢³«Wû¡P91Ý>fŒeƒEêéÔc¨\ž K ¹Ò;Ò¾Ž…‘‡ì ¹òì+ÉÐ.Ý®ì7% 0Ûäó*y÷{œ!z¸–0ö¢cS’°cÄL(X¿*F:¨Óæòƒí~gjùÚO=•ÇδӴÅo8î…qvfŠ2õ‘ZSÕDààVû”éw¤2pÕ g-SõǽÒà•³ÔÂKèE €Y3û¡œÛ™jIhtîCô6ב‚2­ 4ÖßU#z‰ÕAÐg¯uàfóxÉ(»XìÉKŠh IÑ­Q&vx;;V™×lÒÑñ²ëœÚ‰ý:(ý¿ÉÙû_NvvDÿŸÕùþwH®?sÿŸ9ù ÍÿkjiÄf€h@_…¼®µ!»’ƒpܪ2ýÝàjðšìUáy«««Ñ ;ñ¢ìP£/°ÚNïÄ &pÓ¦1MÉ0p/{ÓÄS”—)!ñZW£’ ½Æ§ø .ò }¯$›ú¸Ö’×7’bYÞRítm™ÇSMT5Õ>)#å)Ñ<+wyMµ“×SBR €<+7{ôÜun¯Ó£Ä%Ng5ú¼cCôYÉ €üG÷‡\ž¦4%ût8‚1µô£„1Sæ*öÚª2e®Rú‚Qê««vÀ„á4bÌÆt¡Ç·§Ù•âS3.tú.‡³t–z’ÿÒLÜçúcöŸ ¢®ü²Ëìý/7w¢dÿs³:çÿÍõg¶ÿÙÙSŠýgµTµûtÐ{ ±;Κúe[ªžU•Ц޼=TS˜´ÚÕdŸ0a†Íï¤ScFgmè[a*Ýs‘"NÙ¹MDÆ"Kò…C¾8 N*tumXóªÂ§ÊDûˆ­wQúÚ&5S°“ËíóF¦ ÑD{uàë¦ìÝ/dó¥W6±9Š6ˆ!9÷‡I£%Gg5Ibk‚ôðîÍM­/ÀFDyeMÕ­Ãâ¼²x–">½y¾¶(³¯êÃ×$!=yª­¤ùkãH‰x¬ ðdò”ÈX©`Må÷­û¦*Þ[4hC R5ÿœCŠ?Öÿ¯µ40[ÿŸ”#ïÿÊÍž8©³ÿ?ןºÿŸ8ù ôÿkåÀZe öÇô=OYͲÙC讓Ø`@ÙSÌFʯb‡Nßr e^Ì$‘dË1ʳÇêûŒ~4(ˆjuÖš›?Ðþ©E¤§bÒ×Ò?²ÿ3cbäþÏœ¬Îñÿ!¹þÄí?sRîAXÿ—j)1£ì¾êpƒ‹ôçt f¯ M®RiŸ/”î÷ÕP—UjðØyŠ•tLÄÆIv’@ÛÝÆIÊetP̶õÙœ‹“Mƒ³:àS¦Uæ$(¦GÌ y¡09Xï®%ÔéÓ홤5ë7eQw‡´ýSšÙÀ¬ýçLŒxÿ'&¡³ýŠëOÝþÆþ?±–€{E¶Á¬èmŠþœãøß{ýÑö¯¼þšÓö?)bÿofFçþCrý¹ÛÎAjÿXKEÀì#,@vt  ¨þ™€?Úþá4ßê°ßÐ ˜Žÿ'eIíat¶ÿCqý¹ÛÿÁÿkk©h„H[£ìü5Jã/ö“{+ŸSB7øºœtû“½Ž™×^O²·sߓ٦àÓí *Q(…l †\ Ê:ýû½A»/`/(.KSŠfz„¬<ô{Úÿ‚’ô4úà”S,\´‰Gkÿ™¼ýù=#+'{âÄÎö(® ìÑû¼ž¦ô*·7Ýí¯ö…½¡„HR]5¾Êá!é N/uÙéJ}]P’–íoHþ:Œ\¿Xý!-øÿJú¿üеý9«ÓK>Â5-"í?ÝB´½çæ·Ú^°ýçNʦíâ$Òÿçþß½íÿûöÿ{žYSTzÒŠ•§ëóÏUìVFçó?×|þ–ƦývŽôü'fvžÿph®(=:yÔdÊŸµYÏ®­=üÿŽë÷ÿ,€YûÏΚ$õÿs3s:Ûÿ¡¸ÌÚ¿ø¬ ‹ /.2Ûíuš¬˜Mb±ÑÓ…”:Mõ+Öö¿hiŒ/ÿ6Óö?ibv®úþ?q"ÿedvÎÿ’+JsžöÖx\yyä‘›µü¹n…Hª]e7!Ï//Z”—7×h0g–—äåÍñykÝbe\ßj·+9/¯ÈMê}µ¦NÒ»BÁj§ßeMVàt5ø¼V¹!‹±Î'í”ɘÈyyô,K’"¶¡Õ¹ÿ:’5z©ë¤°Ë¼_Ñiñ7X.ÇRWÐïó-æ§L9ôÛŒk¡=J^Þ¬p¨Þå%…ò˜ÖtE@·[Ï¡ÇÑ»€~Ôi‰Yäªq;Ë›üæíèôO?¹×ºM Yá“n8ä«ö™Ö'…\ê«ò…*fYâ–¹ééâ–¨t 0«Îå5­KÊ4%}Ú–‰äÎ6#/]ºn­4ì1/f‰NªŠ·©`v‘c®Ûüv=þjb,ÐBáÙ ‹™x¥FG'Òœ¥£}N¥æ=]±îf¼ò’t°í–˜Ì²[§¦«f=·é4`Ñ-1C–bDknšNÍL,üÂr§¥G¾ÒUXàcGaªvÈØIX§¦CaIýƒ.ôÑ™æM‰Ž Y×>ÛtW[§(_Þ:_éxÌÙj·cÎeŽEÞ\˜2á Ý“²Ú9™³y×dš>OébTû±ä%®üÆÂ¯µVŒ*?ä…^ç£GôÇ¢¨Å–ågfΰR´‚ØÒðø|~z˜r,š§ÛòÅ¢ðzc++¯¯ÎJü8Œ2g ʜ¨¡Ì¹ ´É¦Ñ¿³4[ìµÐšF·²ƒÚ*ŒË¬1ËLxd<–.ŒÞb!§‹C·èB¹ù}5&4:r£¬CðþëüÏ‚ÅéË)/–4bYÿËÌɱgdeMê\ÿ;4×ï}þ±Ìš®ÿeeIÏ?'7«sÿÏ!¹ÄWÈp0 ¿F.Xœ—GŸ·Ù‹$T‹Î©÷ÿmW¬íŸ¿ÍÆÐÄ´ÿ#‹îÿËÎÌÉí´ÿ‡âúýÏßz‹ýgÏ?gRnv§ý?—õ•«S\ÿí;ê¼b¹bmÿâD°Õ. &ûŸÍÖ3&vÚÿCqý¡ço± 0µÿÙòóϘÙiÿÉÓ¢~ Dÿíû꼬]±¶ÿ9ôÏ0ã·UÓ°nÿ3'eæÐýÙÊø¯ÓþÿÏ_èùûŸ™ñüsIÐiÿÅÅþ+¿A´´]‚PÍú‰(õK¬Z&SécIŸS¾ì`Åäóš-òYª0`¶Úf5¦"§ÛK2r­5[´±#ýÆô÷GŸÝþþ"M T‡ª¨ëL¿+FeëËÿ÷㔃óp¢§‘aòýdÿŸ›“ÕyþÏ!¹^S2Nƒ”G®áø/'kbN®üü'fwžÿh®~{ä ò£q=ÙÏDòãáJò_âúGldù±e'õ낼.ëÉ;’×yu^WçÕyu^WçÕyu^WçÕyu^ןøzù§ÿ/þ¶x›ò²o[g³m ?É»¾­ƒüçp”.+—„ëÕŸT߸àåpÐi•*ëÿ’h³•U³Ÿ]Å8ãx¬DSÍþºA»‚,AúSŒCüÝAÿR’°8GãÓŸF—Ãlj¨òyÁP¸J'Žˆ6¹+ûÙEÐÅwg÷ÒƒÅAÄŽz—Çï èÄ‘pªÍv}7öSsuË#ìmt{kno­O'Ž­§ÛlóágœÁ½ÐüÅ)ϳ`Vù,!€¦’¨þÄúЧíõ`1øC]}"üËŸÞûJ‡Ç-ŽD¢õwa?Å8h^*yUAqNŽcý꽋qt‘~Ÿ¬h-(^XX°Ëp#qìge KWÔ #n0q8û?ᆭϛßôH¼ný?»}4’$›úäÇòsš +!¸O/R—Úlù]Y¾h7Ùléù—iÑ4ã{1§lò†³RƒAOZFÚ”´Éi5M*šÉ&šj:ÿëÓÈ"ÒêÝuRz¢®L9õ4m6j:¯Î«óê¼:¯Î«óê¼:¯Î«óúÿûªhù¸ù‹ù-«¾k ÿزî—=ÔoEËë-ÿhíÚšŸ¼¡½ßYçŸV[kIbó¶ø–ŠÝ­ñž•ìŸÕ»kèØÖ.­%}Zgõi mŒÛ°?”÷\\Õï™à¦’–¸¤=WÛl-§&%¶Vìn)OêÓ¶$žüˆoÛ”_MüË“â(ga£òÛzT¾s¢¢ìÔDRJ${“ø'ÞÄ–eU Y¯ÜßÒ%eÍ_xØ¡¼•˃TN~^I}&cøj^á.ê“ØšÐR´³ùó¸–DdÎâÌ`1ŸÂíH9šSzeõ ïœÛ6à~Ê ÅjkKÜŸß+.”Œ²OëPö7“}«ø´ÆmmÍï³·yOrÞMÀ{‘ñr¶"å N9‹vARòMÆ+ɇXyõ!¹j)|·µhgkÅö¶¸óRž{ê@×ŧeb,Kx,3 ¡*–PÑîÖ‚.q-…oføìK›ú4GsÁaDÐöè•UøLßUžiëÍÔ£¨½eËÀÂoy–ß-¿ÿúÈÌŽ¢ÜÂ77´‡†¶lkÍŸÖ%ܧuvŸòãmHEé¶û°Ÿß?ê¬zš‘»0#Eï’´ã[+Ú±Î<[+f¡†ëédaK­’…ÖŠ77¼Úï¬ûº¨7žÊu]Û¦«ÔÚÒ¤ô“ Õ©)¬Ôp^çœ'êhl±Øâ[‹ÞĬ ‚³Úü]Ç%­ôYT¼‰©weyGÞ)œWÍ’#G¸Ô¼*<Úc¹ Kq7%ℵµnWžoGÛ£Ï(¿¼ÔR´kïàÖÂw[ wµmz‹úUt´µ¾Ã1ê¯j0ê7jÕ¢¸Í%Å‹œs/-êŠ$y;y¢Ã[I"‹’·Vì">Z‹:J$qð:·é}á¼T£ÞÑZe%‰²íÞÄj%ñ>m›ºT²rnÛ4T°.Úi\›T‹ª¿®DÕLAu– êÁU_ºPXŽª¥‚ªXPuT£ê!®ºr ª‚j° ºŒ«Îäªa¥¨ºHP}T­ªj¸jW]Z„ªm‚êvA•ÆUGrUý|T}.¨Öª«Pµ«US QÕ·FUå ªm\u+Wõžª‰‚*APý…«B\µeª*ÕÎ*Uµ„«fpUsª¼‚ê*Aeçªx®ºo"ªÎTõ‚ês'ª^åõðœlT]/¨²Õ}\uW-Ï@ÕS‚ꧪ:«j¹Ê;Uï ªgÕ|®Êિ'¡êGAµQPõ窟ªP5x$ªú»TÕrAõn%ª¶sUõ1¨š!¨’Õ\u>W½> Uµ‚êËJUåçªe\uÍ`T/¨Ty\5’«Î:Uw ª3UW}áDÕG êAµHP½ì@Õ\õf"ª¾TG ªK¸j=WÝv/ùZUµË¡ªª¸êX®Z—ÀK^PÝ*¨R¹j€“JÒ[×"'žsöU2Ž¢âC°='`x„I}20|ßZ©ôæñØUì;AÍɵœuÄr'õ ïîÆ#:Sê€r%ñiéá>ÂO:Aì‹fòð±¾úÄw!âÂÝ-=š·{VœàxþiЦj‡¢6.ßã`òþšûܵ Ãw@øÛ«”¡hžfú0§]´gˆOÛ€Çih·Ä”ןú­kqˆŸÏãô¡“>xíFûìùâÛSË9Å%óÙŸ„=4Yùœ• ¬œUbþí<<™öƽ÷hnÿWrûã]¸Š%v!á Nxÿ">óàÙ:‡—Ç-œ}Á t°´k«´XIƯ¢#¥~gŠö0׬‚ÎXÉFܑܒÑy—Ðä.àÜLàV\z{‰{K<œ“〜ÌÉþ>ÈÚ¿Yï¯b£Fº²ƒ®bŠüÄÖü¸V<Šžâ¢[VÁÈMû(šš•BûçÄõ«X®§>d8¶k~B~(woß¶æV° ‡W¨BΣNýF¥Î좕|À`dgröHfÎ ±µÎÃÿ³’…E}»T`kIÖZ^]ŽòG@¾{¹XÛîáá—AøíËuZK+§vñò(­e%§¬¤­åŽe¬µ<±Om-“9ÇQ2mkéÏY?AQ÷Ðäÿ›ã1ümg>rkyóî^írMk¹….ÂýÇ·–S8»zm-÷,Ó¶–_g­¥§ÐZæqM:¤Pv¼Qkƹ݀;VàJ­åËeH~}9#ÿ´,²µìଭË#[KÎñØZlBc¹kN]ÑX&¯ÞÛjN,ƒ,4.‹h,Ï/cAY¦ ³¸pèrMciZ¦ÓXâ8û‹ãY\G.Ëî¥þ„ï[Cc¹ËÛ@þàR±²màá ~úRÆr§ÍÚ‰K£4–tNtÆ•Jãz®%'iÏÙêíßÊ5[Êâ|@ñ¡ÓiÓº"ë,Îòk#²Zs8ëΚ»TM÷M!µiœ‘ñWˆw0œ‡ÇAxr…^=nk¾¢lg…:w'Õê”cdB1~X.Öê»xøÅ~K¹N­>—Óü@»°žÓg-¡µúÖRV«ý\­Õ¹œsD9«Ü¸V÷äì¯*h­¾«T[«[Ê#kõke¨y êƒ2£Z}çþ¸÷–Öê“9¹ Èg—EÖêr΢O\®ÕíeL¹¿\¿V¿T.Ö‰x×¾òÈZ½¤ kõÖRõöw–¢æ±rç®ÒÈZ}'g]¬GJ#kõ¹œå/WÓíZ¦¦VËÅÏÚRñæòð4/-Õ¯ÕÏ–²ðªRÃZýŸã0²¡{—еú-þ„¿vœN­¾‡Ó.ÚÇE©ÕÍœ¾ºŒÖê‹Y­þøSµV;8gD¹ú8ãZÉÙChŒ›ÞZ¬­Õ÷ÇjuœP«-AÍÇPP½Ž3ªÕ¯pîÃÀ}¯Ä°V_ÏÉòÖ’ÈZ}gÑ'.×êÏK˜r€PqEÄ{B‰X3RyøŸ\¢ÖŒæ=qb娷˜Q K +Ç»‹1¾íÇÁ»ðb±r<ÆÃ¯‡ðëTŽÍœ¶h×,ŽR9j9½˜Ö¡ÖýE¬rìøX­³9gDÉ|´£ÞᜬDMþ)ÆðÝPÚÌGõîä¼Ç€ç_¬õÞË —áÉb㺺³Jh]ý©H[W{.fuµŸPWãš)ªb£º:šsnf±a]ý±É» BÄGÖÕW9ë‘Å‘uuF1Sv…Î-kåE\{ÚâˆÑï”bõ8±"j*Šýöƒ´Î/R…9\¨›–¼Z\Èe§B’7.³âá+!|ý¥Å±‡Ì¢ëªpwv×P÷=} óŒí´íE{Êcî 1§.+ìOóùó‡Ûýn¾N›{ÓÚó£ô`×sú_Ž¥m.gëÁz| VïõœSQþe¾q—QÊÙy4ÆM“çiëöÎù¬n_!Ôí£¹¦¤0n¾QÝþfrß^À¸¿Í3ì2žáä;€üʼȺ}5g³ ²n÷žïPóÅŠ°škʈ&óÕ ûû]¸ +Ø}óDj>§&C&ÍÃ1¹:ÚÊY]5Y˜ü»¹Èzw¾šEï<µ,_åŒG ã»çй¹‡‡_áOÌÕ“Ícá/Ï5v¹xdEYã\±Òòð >s®N¥=šÓzmÜÜ(•ö«B¤¿1VÚÓ X¥=î]µÒ¾È9÷Âm¼Qh\i¯äì 4ÆMÍÚJ{ÌÜÈJëæšã …p¡Q¥Î¹£» Ð°Ò&ròsyxad¥ý¼Yô‰Ë•vI!SÚi ϡ殹 bÞF}ĵžMœr PÒiT|­'ÈÃW@¸RúR5-â¬\Ê:•.ŠJeúUZ–Gq~wLµ@¬´¿Îáï?pc½ ô+í%,|HZiWj+íVÙ%Ù6æ£nHjã”0PΙ£ÔÛ,M½­å´b æÐz{?ÔÛŠíO­ÛÞµ™¸ÓyåÍâš¡…´òvŸÍ*ï…o©•·/çì‡ÛJã͹ŸÎ´„w’â.è¯T±4Ô¼=5Û@óÉlö`v¶tguì8dßÎÙû!Æ.ÚÙ꧃7pZCAd%ûšn#(ÜäeœœqÖ9ˆk)äXÒ8óH`æñÔsºðùÎÚGï~Ó˳´è¼Ù¬Q>oæ?fñ÷Ÿ90ÿ1 ó×Û%¯í7pzÐïž…‰ë›fòÜ¿ øgˆÑ«­s'æÌ‰,¸‡èv´½Ô:+~´­­×túXxèÞÞmÍÿ"Ÿ%v¡µâ%ºÇ0ž Í÷æ`ÄßæcÄïÌfÕhÄml ÛÛ£$q:‰%ó©zÝú?X°Z÷rýå³a\œ¯>¤>Ú:u6'{ü·|,ž‚.´pÖ …³Œ³ó]ãuåE“ÉiCfGÍ•ùÔ`m8д‚v?þðæ”Ž5dˆ7bœM‚»¼±wF¶{&FöÒ,%²D-–.6^ªeRFÄHaöh»·•<•©ëv7>ØZ´£­™ÖÇ Ï¯½ªµpGÛÊž]”‚Ÿ²¬O0…Ïód\ôÑ­ÔDOo¨ð%òôÙ6«ø¶¸tðK÷VõIÚó½£§7¼³6»mÀTúÈ»´”Ä?—¥îá‘dzȕXýÄW} ùervçÃlËL-ŸÿàáÛ!|Ï (û–áÜ,?ÀYWkÛŒÈv·‘³Öæ«&a¦Z‰¼œ±âY?C4×Å<|"„/ŸÁÌõN’TKßæí+5CáiZݢÉä#˜jk¾˜Ž”@ùdºŽ~†ÓîÚ+Ó5zÇSëv½£‹j /àš¦™Ô@_9èo_S tçT@¼M4ÞiЦֹgœ²U•oAÆI ˜?™ô}Œnæý?çþ8ú•+îkýtÿÄoŸÖPÏ8ä<Í9·Íˆ°|-pºbPóW®i„x/gñæôDЇSÊgPÛ®4`ú`*’ŸòÞ©HVMòÜuÍôH»3šÞ@áNRºö;?“„PS<›x~ö£¸ÿDZ R:c*<šøõk㻄¹ÅXÈ™ÙÀ\Ê™ô!òê6’€˜Æ‰°W·ßævZ–7eùE¯ÿÓ˜êÇñAsVL‹,ÅòèÎb:$+|‰e·~g½&dz×ñÏÁ¬ôÑfú0Îü~*Œç8“ü?_xøMAê @ýr dš?ú'8çÆ©‘™Gw(>µáù¦£h—³»œFÈã?ˆ¸Ë+{û“À)¯zox5ÔsÏSnGÊŽ)…/­9ŒÜíÞxv×$ ð%bý ìè²Cé wÒhÞ̃n€?ùdž«Ä©ªÝ_;E´ûqœCŸ¸b ¦ˆv÷dÞÿAø>æ3œ7Õ§8å ü}²Ôš¯â”³óÔrÚyÆjÎZ¬¥“ÄüÏááã!œùÈóŒÃ8¯ðœd'„&3BIÆ/´/qö}“©}ž5QkŸ‹'EnW¹„kÖC ×O´¼Ðz8·¸k®dŸgròX /ädÕ>á¬.“#醉L9z’Xí>ÎEÍß'±ð¯©Ÿ@†‡Ó'.MèWÑÅ û%Æ{¹j¡4óVÓ'¤ª_ȵENØWpötÈO]®˜ß\~„ÏʵYß®²?åïCVãsÅÊö:Â;rtË]œv1Ð͉ÒXÖszýDÚX³Ycùèµ±¬äœˆ’ùhËDÎ:XãrÄüÉÃËeáÌGn,_f#ïuà—£i,ç„ûðV¶qc¹š³ÏÉ¥e@¶¶±ŒÈ‰l,«¹¦ RhÌ6j,39w,p \©±ôçäŸrùhNVËY¼ÿωl,˲™2!G¬|q͈y{–ØX.ááô‰K%7[j,)ÆÖ,aÿ?aFަ±\™¥ÓX’9;ò“—%æ7ž‡ïƒ´dÅÐXžÏDùÝ 'S¬l·ðð üºLÆr&§´ó3åÆÒü[Wµ¹ÇS²isqe°ærïsjs™À9!Ò)4ÒikÞ„Ñ/(Ø-?Sx ¨©¯pêÃ@}/C~+¸ƒs6gEVŸ!™šÆ´ž“ë!Bæ£mÛË9k6°Š3ÄâÎãá#!œùÈm»?çý”ÉxwÒï3 ùëÑ×éHx ¿¦Kã™—9åZ¬›>M×6è’ Ö û ú2®9¢½1ÝèíÄ˹K€{²À•ô,NNr'« zguËŒ|"ç¤kšÓÉb;Ù•†Ò,/ÒÄvÝÎÃoÎÀv½£ZEc.Ü­¶ë_ÒYo¦ ß¿ðj•ÊÌÕϤ)ê–¸cZÆ©S!3®41³Ù<|„ÏLÃbÔæüÓ>þöIë×Û<|„Ӝïå´Ëöä„(}ßYœîI§y@*kÌŸ<­6æJΙQz&w6Yœ=”Ƹipª¶nÞ7!rûÏo©¨ù$ ,û£ÎæUÎ}¸ï§v67prïædµnžÎYui‘uso*SÞ2AÍpWäB¼ŽT±Làá!|JªÍhûÏH`nªá:Ô{ã1¾g&0òW̧ð]¤<Â)×å¾ñ¶È£Mœv Ю¯™1z÷©uïvm&N1rpÍ^0È_CÚ@ûyœlá_äœ{Si5»|œ¶šgÕLüùb®9â½nïdò¥¹á9¹ÈkD²´Þ0³“€=_e«5m §ý:>²¦Ñr¥?Ýã•Aé“M9íŸÒãØÏ¸60Lä½r¼2rÙÐ>â3úÛš·B<ß§°QÉìøýÛãB©­]7´‡F¶–Ä?D玛êÒè%/û‡+Œ>ë'gôÛÜÞïö½Çg¶ï­Ø¿½K¨ éÚêOܰ¿ßæm{çìßÞ54Hñ«í·´½¶_šx÷»¬½×¶½|KN Þàðñ“~) hÙvÖ«¡mÍÅä.ØÌr#Ù¥î´Sùø7™áV~J¶Is/pÎ=ãÔ"œ¬¤ßꎴë8­U =Ÿ 9 ¦~±6ãÔJà‚åöi”ü›º„X“ñeð%Ä >§%KøaœÂž;aÓÏ)ÚJ|{²š¯·ÇrûŸ©ŽMÎ#<üZvlDÇÓüÅdé¤ÒŽÛîõ±Ùö?›îßvï)ʯö¶æ³É/ý öíßÖ%ttka¼bsX©±ƒš7Âg—Ø(=?TÚvïÅ7×Ö|S¶&*¥HEÏ(£àÔ¤D5–kÇÀ“h>“wÿ$¬½Íu •4¯K´…‡Aú>MúåÞaë&@`©&p‡N´ô9¶®ú®5ücëº_ ûáÀþü“Y9ž5Fì‡Kyx„/£Óç´#€6iL”~ø—Ñ|ü;–šØŒf&ö„ÇTû&ç´eQîmÜßÊÙ£1nÊ­­[©c˜|E0k¸æHáÌÑFý𱜛Ü%—-ñ=XGqrw §p²jHBÖc"­c5½çÚš_Íb¸Ÿ>âgÛš?|ÅßôÚžO‡y…àûu’ÎVôi¤×­Þöé<ݺ1*kï\:Í©¤NøKGkãéñ,â™Äã9fŒÀ"¸™„¨“šý8ïÈå0ŇÚu1ë³QÈzXß–°áiκm´ZVÓ“Ô\]Ã-Ͻ£DÃqwCxÛ¨^Cgsù8—ÛËHžáÃGé´—ŸG"í_IŒÖsT”öò§ß—DÛËÕ#Y{I{Xm/7sÎFˆ’ùhßëÎ䬵f¤˜ÿ*~,„3ù½.óFïõ‘š×Ì!œÐ£G7ß½#ý-‡M¶‘ÚæÛ02rÎæA®¹zKáéFÍ·•sƒÀ½XàJÃè8y.OädµùNæ,û¨Èæ{ý¦üe„Xùâ¸æ‹‘,³Û"çlBœ½â:Û.æ·œ‡OƒðJ{´Æ"mÍÈå¿BqŒµ‹•íûc0ü=ÿêÆò2§=´·‰œ³é¦6—+¹`ÃÚ\.8†5—÷«Í¥‰sœé†c"çlâB| p>d€ üa„¼w áÄž@Œ<žÿùhÞþíê:®üQÐjz䃺éY.ºÓÎ"~õh|ŸÐæõ Î< ˜7s¦&¯AN\ÄÓ†¼ò5ÂÅœ3)J^Ÿ<Ú¦¬è¾«ô =‚k>†ÅÏ|´FéßGñ±°>X¬·ðð œùÈ6ò Îsï(%;|B¾’æÁ3X²‘Ó9e4­›®¢µ‘Of6r 0ZëÅ5_aÑld#ß„Üg€ûÙ C¹•“/òcœ¬ÚÈó8+0$ò‰ì„c¥xvn;­k°Ø¨çó2 òA¢ÑIæá‰Clò¼ü34Pœ—âȤÑ'Gb /Ó¢QÕ˜Z°@rêuƒ¡GÚ¶½š³Ê€åH }!φpæ#·íQœ×xO&jÚvWNøüpFè›(µíú!å9Z¸›®JÔ¶mgbärÿm\³ ¢}°ŸQÛ>së€Û*p¥¶]ÊÉy@>“Õ¶ÊYlÛ—ô³‰31=Åvòu_”¾•Èøµ¯Ø¨_áá'F4jo?©Qß q|ÖW-›¿ò5úõ¾r£®áÔEÑš¾bf xx*„—ôµÔ¨{sá·ý`ÔÙW¬_{Ãð× üãÃtõvN»h‡E™6ÝÌéëúÑ&]kÒ?\§6é“8çxˆrÝaÆó”s8{÷Ó"Q¸}œµX½i|{1Ÿá+z E«.Náľ”¨|&{K‚Ö@ìè¥fo<òßO`Ó¿„&œÎ߀ðâmìt‚Ÿ•Ó ~f§(-N'ð'(§ÄiN'0hq§öhqÕ<É…d8^lqsxøxŸ¯Óâ†sZÐ’ãå·a¿Úà¾è‰ü½hƒ»§+op ¯R[Ñ3œvG/-óÑŽe®æ¬s€µ©§x§óð:g>òXf)çÍ޷ħE)ö=G’_3÷ohõo»_©áð|ì!ìÿáü]·òä°ÿ} §Êý¼ÿÅÃøúdàØRIUéçùY÷rÉÕ´¸5QÿÜ5-q“Pp6x!Kzˆõ­–‡Cx ëÝ¡®@믩c¶Š ³Î•gÌËLLQ}D4gqAarÆÚÑžµ)Š÷²2Ç’ÂÒ²‹‹mLjC˜‘–;ٶƺ}^›­Êç C§ßîwœ ®+`K²åå•ÝWu¢«:d®}ô¿½Æç Ú½¾½Áª®'y`ÿh˜­¬l‘ËÙDÏkŸCÿÆ`^óÈË+ òòê\!‡+ððgA%Òœòeyy^W£®mÀå²EÄ«I¼Õn½+àð¸ƒ!]N8èrT»!w­»Úr9jÝ!·$à^Cx ]MŒjÄó¯®ffsªë]Õ«~›cµ«)Ê=Rv×6Eû¼^ýbQ”rÑ ¡QÖÖè‡U“ÿɃÕtVW»üawÈ ½€Ëi}ð~y<ÂÐ)ÎeḂaO( /Xï ¸jàÙyŒ ‡/Ë͘bT¯XX0¬T‡—´ #Ž; “;Š>‡æ´˜Ù®Z_ÀUÆÿ$n4î¬ZÒ JKMLã av7kN¯] zôŠÆFŒ¥ …0RíUáÚT»ÇåMµ§¥¥Ù×Ö’Še÷…CAwË-¹ØUç ¹×¸(¯.T/©FA¤*úÕ«iA¥Ú«CkSí5®ªpcD6 zo¡µQòG(äwÖdú;Tܰ·ÆUëöºj¨ÝL°)5“Õ\B˶;=´Ô”@%œü¨u’\cwÇ<C…˜äÄ6¿¼¼¤Ì1g–cî‚E…**XPjSvs~g0Øè ÔØUrPƒ¯ÆÅü°ÒªeBJÉF9½Æµ&=pzk| ¤$Œ¦S÷ÀèÊÿƒ•ÿ‡+ÿÛ•ÿ“”ÿ“•ÿÿ{o_Uqýß—HHa' aÍN€—@Vx!  >B$š}ÁЬi¤?hź+[QéOZQTPP°¢h¡‚+¸5°P74ÿsf¾÷ÞyÉ{yô·}þÿÿ'æÞsç|gîÌœ3gÎ,//B\cÄ5^\­âš$®)âš!®6qÍ×-®Ïˆë~q= ®‡Äõˆ¸¾.®ÇÅõ„¸ž×÷ÅõŒ¸~*®­âzA\/‰ëWâú¸^Wm _½ÄÕG\ýÄ5P\ƒÅu€¸×Pq ×1â!®1â/®VqM×qÍW›¸æˆkž¸æ‹ëBq],®KŵH\Wˆk©¸VŠk­¸Ö‹k]WxÉJÐuãŠÕ4ƒ8÷¶¶¶…LajScj S¯3ÌÔKL]!U;÷ S0õS‡˜z„©§˜z©­LmdŠ˜ûÜ]LñŸk`*…©j¦Æ3µ‚©>LÝÌ­sùLE‘{vn&SC™Jaª¢s“˜úœ©¦Ž05‚©Ç˜ÀÔÝLõbª„)/¦2õÝ\K¦.15©Ï™ dê}¦.zõ6Sï2u„©½L½ÀÔf¦žfªŠ©ß35—©íLMfê>¦¾ 'íÜ=L}ÄÔL½ÉT=SÏ0UÎÔcL1õ+¦ndê'Lå1µ˜©éLMc*‰©H¦â˜êÃÔ¦¾æÊÔ{L3õS=˜zœ)©_0uõ¢*™ºÀÔ¦>fjS§˜çIÔL2uˆ©ohRpîY¦>dê)¦^cêQ¦žfj S1õK¦š™º›©:¦î`ª€©Z¦f1u+SS˜Z*ÞËÔ¦z1•ÃÔ5Ö¿4¦>gÊÊÔëLE1õ$SaLýš©A"-K!©/ÈI>שw™ºvKÊÔ¿˜ú S­Lýœ©™ZÁÔ ¦r˜z©D¦05’©?1Õ“©Ç™ú–[èa¦>bê~¦Ž2õ ¦þ“©uLýŠ©Ÿ0µŠ©J¦Š˜ZÎÔ ¦%göC4ùQï ã¾m4ŸùwÜý(e Ã/š;ÿ<Þ iS¸ŸÂ/(¬£ð •–SXLa.…©â)Œ£J¡…Ïïд÷)¼Má…(¦pŠÂQx–ÂS¥°…Â/)ÜMá µ«ÝŠ£ëÓõéút}º>]Ÿ®O×§ëÓõéút}º>]Ÿÿ‘OÐðÀ¥‹{‡~ú¥¥é&JK¥ÇMë“b·Ûkj o³®¸Í~K]Au‘6§Êg£Œ/*®®®Ô6¦­*-¢Çºeöe%å©UiµªÀÞ)öô¹‹òògÛÅöESTæÜ¹Žûw?ñÆÞGAdiEA‘½×í+¤†Ù¡Ì^gÏËÎ\d¼ Œ"gçeÎëøEEö‚ÒR ·TT—Ô®(«±—WV”/gàæe§Ïã]7¤0£* ªkD\ÌTŠ+®.µÏ¨]QÍoöÊZQ¸x‘UXW]ID¼Õˆ/+¨¾M6±tv’Á®¨ÔãRŒ¸šÂŠÊb™¦¤^gg˜lÁYVÀ†’gkÇ«12Í19+íb+Cç䩜UÅ5z|¾_W^R+v VêÌ…:“/Y³ÅNeysëœBnk±sJ±KØêŠ‚Û8¦È!FJ¢¶¸^ Wè¼åÕeQªGˆý¹•U©G•Ýb¯)Éjõ¨òâÛç-(°z‡¸J× Ä-œÇ1M%ÊØ.!Æ:ƒA·¬¢¢”cïvˆ-õ¾Ç1n¥}yiTÌœ²ŠêÚ‘˽ñ•JŠûUNaAmåÊr“¹EeRç*YY\D:[!j»Ê¼¥ºâvŽ|D¤ šEØ¥rÄ[*ª ‹Íw=®ò©•e›>Õ.V¶êÓíb«YÅ烳²°¬’cö›1²ó5ŰPŸ››:+Cvr±ÿMчŒèšââ"Ž9b J±s§NÏʳeJC!6K‰÷ºÁË_hï¸SNˆãˆÚjÑ'ÔHÝœR#E™°‹\ZAr!%Íô¾Šâ=uŠ;£Æµ?K@üOÛó©KÔ•ÛÔ•µ+Dæ­íØÐ'Ö•åx¾€Ù—\³¦ýª=FÝL'þ7ðL®é l•ròУxW”*WScMM'ü:GHíªÊâö»uˆ¾Ë͈ƒà6êºÐîÕ#Ä.}]uuq¹±[ϽKew8@À=L´; À}Le;*àΦsKK–UT¯²—õ}Í`°©#žìj:úó”þ,¶™¹éB™d{ðX,ËüŒÊ].ìW£JÊ—W“¼ŒÆÑÕ .gѾáé\¹¿Í=1+ã&Ø KK¸IËŠkWTˆW½n0;òŽë<'éNxPÇæãöY©¹™öŠòâÒ’rÙñ Ž.Õ÷nwõ€÷6¦Ã îkíÞ—}‹“Å•C¿°N¾¼°´BŽù—Ä#Äåaóge-Œ‹‰™ zŽˆ&ËR^+<ˆoø™Þ^\.ŒÞ5~¬$/ÄÇÑ5•Å…¬cģŮyk|FÊ.N Øíò‚½pžcŒÝ®Å{jü‡±‘¯?üš¯òOÉxs‘´ýžGŠ÷<Ùàig=EYŸðâ²>í¥¡DÚIOÕ¤ïòòÒÖÿŽsÝ»›rõTpÝçÕÞònñê`G¦ >þOÎàW/ðuó«|ýõq¾^x‡¯Íïóõû-ÚšV?=¤§I"z¹fÑ–m žÍ;zQt¹‡¿>@ña 9žOžÑ$=ËbÒŒ/ Ò´­À3­ã[z˜xfü׃5mðL¿Oô:”GOåi¦ÕiN>LÓ>GZ¦u|¤‚Tðs©ôö“x¦uüß ¡,Ç5 ¹Ž[AsùŸÍmõh¡'Ð#–Qhnÿ… YÖ ¹ßmÓõŽúÔ  YÿßͶëGÐl7Æ{HšmÔÐlš@s_ØšíÆ>ÐÜOfûp4·íPOI³]šÇ‹å Ùþÿ4Ûö?f»ýhþ)ägÇZ®)t//“QèI ©Ð+ºN¡×JúG¦ïSè] }P¡ßTèV…þQ¡{{›ô(…¶*ôl….Tè…nTèÍ ½]¡w+ô³ }D¡ÿ¦Ð+ôW íÙͤz¤BÇ+ô …^¢Ð5 ½F¡ïUèÝ ½_¡ÿ¢Ð*ô9…þ®›)»ÝMº¯¤Eï§Ð™ =O¡ ºI¡7(ô£ }D¡ßWè¯:ÈG)ƒBÛ:_¡+ú…~@¡«Ð»ú°B¤Ð_+4ÛUh«B§*t¶B/Sèr…^¯Ð[úw ý¼B¿­Ð÷5åõB{÷0éÁ 'i>¶¦eHTÐ7(ô2_¥àW)t³BÿR¡Tè'•<7S¸Â¯)ð_}€±â:kÒfo£ð Û)ì ð0ËŠÂ#øWƒå6¡°‹Âc~Oág9Rx‚ßIÄî¡ðG ÿIái ü'sÿDáÏšöQx–ÂsösûRx‹P8Há% /Sࣶ‡)¼BáU G(ð¯õ½Fá/øOb£ð…7)§Àoóm üÃA'(œ¤ð7 ïP8Eá4…w)¼GÿrìýP“cÔ g)|Lá ŸRøŒÂç,oM~¡í…P¸Hÿøñ?)\¢p™Â¿4ñIápž.ºÚÿÿ¼ýC5»½l…}Y]yQi±}ÍêinnŸ‡µúú{9L³g•/¯HוByÇ'tEqi%OÜíËfUÔN/©®©Í/)+ŽŠ›0Á§Ù;®n8_¤uq<ž»`µ_~톹½ „³EÔN æø`Õõg0^pÁzŠ+¶¾ÊâŠï²õ˜©|£©3H‡Õ—ÎÀíÖr:ƒ:®ò¸Bº’1óÄÚ“+&–\±å‚•®Óu6'8s¥ÒÓÉ7°Ü@ã\aÕU>W‡µ?»“EG‡mÙŽ²í¶b]n¶Û~½ŽW‡-WÇÍV'Û¬7X]n­:nªºÜNu¾‘êl ÕÙæiÇmS¦Î¶JÛo’ªÛ£Î7F•-Q‡ÍP‡mPÇ PÇ­OuÓ³ãng»mN‡ýM'›v4le:ßÃt¾yé¸kéd»Òå>e» Êv;“N¶$•½È›íw•mG§ûl4:î0:n-ºÙStØLt¹‹è~ûÐÙ¾¡« ÃNw ]nv¾7¨n v¶ØÙ6 ÃþŸ¹ñgîø¹Úês½ÇçjsÏÅ®^Çí]Ÿÿ—~~¼ø/I÷¦ÐƒÿÉ>_MóŠ ûzMlXlv{~æÂüö)+Õ{w ÞÄŸú³ÛÅJ†ñé˜Þ{Œ¦-¼&ïÆŸ.Кdr¤©,)¬YU¶¬¢”]þØŽyܦi=›äÝ!¡v{añ“œ–£äMë–%ïf*mg·¬Æ¬LÇ<*xI=wOÍù‡Ûñ»=#5?U®”I»hGÎÃ[¾‹§<&Úyz–Y¥C™ÕÝ^^j—í(©:æáƒ<|ÚåÑÂb™Gi›<øÄY¥¼;äÁõ¹u)¨-è¬.UMšÐqwQ—e55ÏòX§i†©yXÚÑV»='kVvfF–!K~m î¡'Pv5Ý` úùüú—‹ßö:±dè[¿ÛÔØ{?Þ3@Óîä-—+š¶)GÓî&º'…<¤]0H“Û[7;«Ÿüü‚%þ¬ùÌåÑ–hü'<äŸó ßéëÃ!º®¦:º´d‡ššÒ¨˜¨„(kéMÉ2 i¬¥‘‹»í“µ{×jžÜjºy«jj‹Ë¢Ò”4ÿ¿þ4øx<šöÍ{õÝ6øx>ºº©°>ùM[sÏ­ÇW7{>Úàç‰çÒ¼YM^¡~…Ä'ßF¼Ûn}du‰ç£:ÿÅ5m—³Ñ¢ùÜ;¼í©†m#ë[ ¿|}SI>M}§¦¥nÓ6­­¡v^3B ŒnÑ´)i>¿°©§æSëá¡¥Þ©å¬Oizj~MYš_~Z`bCšGðÚ—4¯èm"ëRM³i‹&6ò½pCÒoH9^Ð|=_ßø³Oê­ëŠBmÚ›ó®˜q;Ï3?ÞFCò^?SðÉüŒÆ»>©§<æpý÷ÂÙ¶÷•:6qý(í¤õ¥÷¯%y> ã—]&úXCÉàzާúhV¶kk©-6ú \pG)½÷Ú—ô‹¿‡Ëg¢Yø'óQ[djòÐ|*=¼¸­Æ?ø5D?ß”N410jíXÍêiƘ% «eylÚ ——EüõÖíôþÚNßøÛóõ FQ\lX5¸þ†&z÷PàíT^ƒÖ¯2ºI³¤l•²˜"óÚ)ó*øòJà<nìLuõ¢2¼÷­æ´R†2ÄN²kZò4zwø_ê§,+¬Ÿr´°©±è½úÆW¾¬çöáò5 ®ç²Ñs߆†Á«¨ "šk>ù)ݦŠ2mÓ‚éÙO¶QåK÷”6-åN­H¾oÁxß|³ Î!.•Ë ÞIe°¦ÞÓ0½O}ÃM}êõö1ß¿p3½¿>z‹¦Ñ;©- ßûRÏò_zYè&·ëºÂ{)ÍAåuÀk|Dä÷YÃò_º'éE*Ï:Òé…[¨Î;¢×Š÷ ! ôéæSú\¤^óX§IŽ™œ6õí)‰™˜Ü†z=Ýü³ˆKh<$ÒÄF?DuþÉàzzg¨.Ÿ)>3¥¤ð‘ƨ¿ý™Ë® 0d7•d÷páþÄs…ç™§ý3YÎEˆ~Fí»±@³6Nÿk}£çËÔç 5þŽò;òeýçž«o¼õ=Â.x‹ó˜ö¢È'sÊóE¡ÈëÎC´Í£ÜŸ ¿±îœ?ëÞ‰úÛ«qEÖs!Ü"‰Ë‡þÛ³Úá2¬;óž"\,pGÞ·Ôº37…p¾Àí¸›¿m‡[gÝ™Cõ9 Ü*àÞj‡{ʺ3“lׂ}ÀÍî±v¸SÖ)Ü>›€Cÿ¿yM;Ü5ëÎä]„+ÎÜ"G\q˜ugâqÂ¥JܼÓÀŶÃQ»LÌcýöïfßv8j— ‹I—k–¸%gÛá¬;£/î(pÀík‡»ßº3’t~þà€ÛÔ÷Œu縭.¸’v¸Öa$ßùs$n.úÿ’Ôv¸KÖön,pèˆ[îgÝb%œ8ôÿÅ—Ûá¬Öƒ‘Nû¿øh;µ_ÿý„Û\p;Úáî¶î n%\3pÃ[շ˺³÷W„+¸9ß7§îug éU~po7¶®ÕºÓÿá‚€{ 8‹#îj—ža$‡sÀÁþßtºŽÚŇä6ï p°7Ñø7·¬‰fdÛyìÏò¿i“ióæ„#n5Ѭý­>–ÎÁøS1·ÛÚ&â5®e[4òσüoJ%üj3mêÓXŠ?Üð“sQˆß‡ø Š/3mzúÿßRüDëp­‰ËÞ0È#˜²‰|‡gÉ`?jV“ªûü§-Ò¢üÐÿo|ŒòóVÊ…ú߸‰è²þÅKº‘ý¿±„è7Lã²Ö;¸q{k^ãó4ŽoÕ,Ô®a2ßÙ°ÿ7&˜ãŽÝ+»íjøÐÿR~}9¯»=´>•Z(ÃÀl•˜EWˆÞc–yözÄ@ôiögtÿ®ñÎV>Š=¸%Àí%ù\6å;;ñ[Íöž‹¸f¢[‡j.·î¿ä L¤òû5Üy‰òŸ[,Æ¿mÚ%™vÆ¿E¹”¶YøLS£Ö”ïГ} ûW1ÀÂþ/.ʧb³é}Ë´@*?ê? õ_xÅ,ç,Ø¿…g)}ù\ácÝl‹jº“ý‡9™kà?Ržä{­%ß˜Òæ"íNö]å:ýsê¿ê?ëpÓ͇ۻÖCKa¿ˆÊ˜ÔHyÚiL™½S¦É…ÿ³p¾ÌköÅÆmº^çBþ (¿ÍfùsQÿ…TÿYKH¯ó„^5õú9Òáë×ë\Œ7¼EùEš:’ ûÃ>¢7»Öë\èÿ ¤ÿ¹ÇÜëu®/ð¦^/ŽÈnû2SòsÐÿo þŸ›ì\¯sBôi³Ì9»ïMi-®õ:ú¿€ô?o ©×9ð6Û;öoÙ¿œ‹Îõzq¼ÔëÙõ:'iëˆÞÓ¹^gÃÿY%Êש^g£þ BÌrfcü_@óŸœLçz=«¬^kR¯³áÿÎ?fêõlŒOÙ¨ÿ|ªöE×z½ØFï=†4°ÿóW˼rûšz ùÏ/ úy³ü3QÿùTÿìõÿ}½ž ûŸOö?{¾©#3Ñÿó©ÿÏ|Þµ^Ï„þç“þϼâ^¯g¢ÿç7›z½(?»íRø°ÿù%f³Ðÿóç“sÝZ´XêVn¬Ô-‹žö?ŸìÿÌùëVÖf‰w‘°c;×­¬`•ùQÖ|Äí&úœsÝÊ¡ñwî1¿jþOª’¾/Ò—1_α²S¹ßÉùÛŒ+gÃü^&¥YÃåäøÆmATÆÿycÍ|mÏ#®/áçsåmÿ ÈÎE³þ3Pÿ9T[_纷àŒÔ½™{uoÆÿ9[‰>ݹîÍÀüoNÑ»;×½éÿœL³œÓ1ÿ™KéËœë^Öf²ã±¦îÍVì÷tÈ?ﲩ{¶Ã¦îeb~2þÞQz·£îM‡þçíVòMEÜDŸtÔ½¬p``ÿóÈþOKI‹õŸ¼%\¾ëÓ½_qýÝë^&üÿ< å½ÄÔ½ÌM2~ö9¢»Ö½LôÿÙ‰þÁ½îebüŸ½ÉÔ½üÅÙmçëÀ‡ügW™õÏDýgSý3p®{ùER÷l ŽcjüŸÙäÿd.é\÷2àÿÍ"ÿ73¶sÝË€üg5Ë™ÿwù¿—ëÞ ²¿¹¨kF$ðë‰>«äû7«ŒèÇ„¼¹MoîlMk»¶q‰+™ç ýt/ótôÿYþ”‰)ótÔ?—êŸþ–k™§cüÏ=Fé}ÝË<ý?w«)ó¹»²ÛÎaÍ'ö/—ì_ú*ç>\:Ö?rÝ×,sü¿\òÿÒ“]ûpiÿrrÿ4}¸4è®Ålÿ4Ø¿ÿÒÇ:×·¹K}Ë< }»€´ðrÈÿI»Ø¹¾¥Aþ9ëEù:Õ·4Ô?g‘YÎTØ¿ÿÒÖ8×· šÚ>£:¯QÒAþ9þ¦ÿ–‰ñ/ö/û²(ŸKÿmîj¤)Fšçe^éóMÿ-ëÙ;ˆþA)üŸlšÿ¤¾nÿ­ í‚©Ó?lÔuš×0×.›s¢i0é¨Å#‡7œlZÊ1¼#œÞ±ÆÔ™Ô?›ô?åœk=OÁúçLj¿Ôáîõ<ýæ^SÏgŸÈnûüð“Á§ñ'e“s=Oý›Iã_Š2¿Jüg’þ§Ìw­çÓ0þͤñ/½ÌÔóiÐÿ™MLÃüg&ÍRRëùìSRÏÓÎ:ÚÕi°Y4þ¥xw®çÓÐÿ³¶ŠòuªçÓPÿ,ÅþOƒýÏ"û?íçzžzкF˱n÷àñr¢™v*ìÖpS×Óö‚‡úgQý§¥ºÖõÙ¨ŽÃ‘ó_Û[2¯”S×§Bþ6²ÿÓ‚”2 þ6ªÿÔÓªž›tÝ#§é&¡W«¬)ÔÆókÆëpJÑH篓 ùÛHþS7˜ú“ ùÛÈþ%_q­óÉèÿ3¨ÿOt¯óÉÿg4u>çõì¶O°f‘Œþ?c‡ÙÉØÿ˜±è£Îõ.ç¸Ô»”ø’•2mÖ?gÌ¡´:×»$ôÿÔÿ“ ÚëÝÚ;…Þa- ó¿éßšåLBÿŸNý?y¸s½›–eö±$Èú^ÎC®S¦m(ÒâE½Ö¾ƒÚT±ßI°ÿÓÉþ'4|È؇LÂüoº2ÿ›‚ùßtšÿ%mrô!§bb ä?=–˯¤…ü§“ü“æ_Ÿ™ó)Õ{¬{›ûŸù<å=ÐÔ¹)XÿÊÜIô×:7ã&ÿSö¹×¹D¬ÿeæš:7savÛYìù$ž?Ò¬"êŸIõŸ2ß¹ÎÍÄÜ9ù tûމXÿÉø€Òì\ç1þgÐøŸx±s[—ùg¬WÊ û—Aö?q·sK:Éã§©w ˜ÿeÐü/q•Ùþ Ðÿ ¡ÿ wèv*ã_†¿ùÞèú·”ÇDÑ®w}R¯·µM¨Ô³dŒe °ÿédÿÕ|PÿtªÂÅëÓ³™•,CÏ,mg=ÛØð®gVè:邲>mEýÓ©þ ]ë™óÿtšÿ'Ìé gûI϶h©[u=³¢ÿ§}&Ú£è=j[DvÛ‡Øó²bý/í0ågaâüÄ^ÿ½ƒ×ŒÐ|š|Ûë‡óŸ´MDÓ÷ÚK:¢­¯Ú$+æÿiÅfûN†ýK›Ãåcý0ìåCúAcGâ^Þ÷ã_ͬKt#ö÷—ñþþdø¿iŠÿ;þo*ù¿Ö±j?±îœñ•<[øüýHƒõ¯Ô}D_ÑÏ18ï#“aÿS7ˆò©X¶ËjLÆú_jY¾Ièÿ©¹Äovè#7ê}$aï'i¾­>K5?­!M³FßéÅ{ðaæØn£ö²0†Ïµøl®åòŸù§|&d¿ƒü‹š÷ÒÏ)Mš–²Õ,ꟲO”Ï”«_G˜„ú§Pý'U±BZÔúOBýS”úODýS¨þ“šèÕߺÇ8ã°E[¸†êÕ0D;ÞØdKiÜ238åy͆ú§Pb-}"æÓ®ˆs|žæ€f±žá:[r c5 Ú(ŸÙïžòRÖ©Æ-¶”Ô­mû£ ÷í7Ú–lrÛ#k¦=P³4nÿ8˜}VòWS¨L8Ã3ûßÓÖˆwîä5ëæµïÎóeq–£aÛÇÁdwX?W¥6iñœ_Ã’ƒÙÇç<6fi> —Ÿ°iñ ¯‰rÝfÒE>ß ßû?ìÿÄÍæyxèÿ4 Å'cð»<ÇCþS?3Û>þßÔ·ïïxÞfò`°þ3u7a|•´ðÿ§’ÿÿÙÆÊö{ŒÏ‘íëàë oûÔÁãîÌÿ¦Òü/~‡i'`ü›Iñ¾®íáø¿SÉÿOí`Ÿ#{ø»†=œ°Zâ“Ošãn:Éø4ΕcäD¬j# üÿ$òÿãܬÆaüO¢ñ?®ÃúçÚ4Õ6ÄBþIÊúg,ü¿$òÿâ\¬ÆoæsA$[”­¦-Lû†lá5äƒõ¿)ç(Ÿp¥­}îöÕzâ¼Ê ÿo ù±ßªX½Žôœw‹Åø7…Æ¿Øc*–u#_óŠjдãùZÀ87ðÒaþ;…濱›Û§slÃÈ élI»òèö5Xôÿ)Êøƒñ/‘ìGìXûz³>ÆN˜Ãö•Ϩ­¥y'µ¥'•gåbÐÿ©ÿÇœSÞïd,ˆþ'’þÇ<¯b…îߦú‹ÑÐÿDåü[4Ö¿S)ýj'e%yÇíg϶haMÔ ö?a"á«çG±8Ÿ…ó A„QÎDÁÿµ’ÿ=ѰͪßJv¸óõ¨¶í¦mŽÂùëc”Ÿrþ# úo%ýêäüGæÖ¢¯ãüG$öÿ­ÊùäŒì¶8ÿ ûg%ûåâüG$ÆÿÉWˆVüëHÌ&Óü'ÒñüÇ2uí)ö2Ùÿ˜Ë ?ÕÛ6öo²rþ#ë“›‰vqþ#Ù&çc1úùV™6þÏdò"Ýœÿˆ€ÿ;y¸(_zgó±Ô’rþ#û¿“ÎRzç?¢3y|QÒ ÿO¢þqníZ½#0þOÚlú:1¾Mƒùütû5§äÅô¾ÝH‡õ¯IK8Å_i¼ã,ærãÑÿ'¥rùÍ2ŒÇþ礱_Lú¼´ƒ>;[Wr©Ïã±ÿ7ñ4å7ÑÔñXÿ™xè­®õy<úÿĈ>é^ŸÇCÿ'–˜úœX›ÝöV®äCÿŸ˜EØLçú<ó߉4ÿwÖ,ó8Ì'úSZ_×ú<ãügÔg†›ú<ûñÇÌöÿ?žüÿqWœësb½ÔçÈÍŽú<ö/žì߸}ëóXÌÿâçˆòuªÏcQÿxe~>ö/žì߸\çúQGz9GIƒþ?úÿ¸¦>ÅüwÂaSŸ#œësâ=”ö¤Ãüg©ÏãÃM} ÿgB—_)Æÿ 4þÝüß×ç18ÿ2Á—ò+6uc Ö?ã.Ýñü¿¡Ïc°þw”Ò{»ÐgSŸÇ@ÿã0õÙ‘ÝöÆjðqþ3nÑ{]ûΪ.Œ†ÿGögÌÕî8 û§¬ÿ†ÿçÍåsâ;?<®Ä\g ÿ?ö$Ño9ïs£±þ»‡è2³]G£þ±ÔÿGovÝçFCþ±$ÿq»Í>7òUÖOG¡þ±TÿÑk}ñÉ»ä¸?n¬ãþÜ(è,éÿèÜÎûÚ(ôÿêÿ£‡wÞ×F¡ÿÇìSʇõϘDŸuÞׯúÊ}„(e~? û¿1eD?fö·pø1óÍþ6ö¨óþ6y?·?ÒáüWLˆìo£÷šý-þo ÍG)ß/ ‡ÿMþÿ¨ðëîo.׈Ã!ÿh’øS/ÂáÿF“ÿ¾Äu ‡ü£©ÿ‡ov?~„aü‹kö·øøì¶¿`Ï2 ý?Z™Ÿ‡aü"ÿ'<Ö¹ ·J>ú-Çý°0È?ŠìØ•Îõ* ö/jÑG;׫0¬ÿ¨ú1þOù?aÍÎõjÔÿ€‡ü£B¿JÉý?ŠúXêõŸ3ˆ§¹xxPCŠ6Ê™ÕeNsv/¶¹ôø‘4ÿù­)û‘XÿŽ\OtkÙ„ÿ¹„èœÉ>*„lí&]ö#0ÿ‹Œ4e÷zvÛQœyñ?’Æÿ‘Y,gŽgùö?â²(_º¹±VÌûF`þ¡œÏùoÍG|ëh‡âZM[¾:séPÿªÿˆƒíì·ª7ñ?ý?b>á7uÀ›º›?ã„2þ‡ý‹ û7"·½ÍãL3ëO¿elé¾ÓÚ¤ñþ—Wcá{¼&ÈãÕ|*˜ÿ·Ô‹¸k\ÞGÅ­i±¦áûƒñk–i>TËø±¦t‡â‡ðw¾hÑVhZŒ˜û{üHy–ÊòjEhƒœW“‡“ÒÖÖ°Ì"êY)¿w8fM’¦ñZäøˆ£iZÛM›ýᥴ†¥Ú¨ü¶Íñ%õ$íîÈ,È$X|·‰ë·Î‹ëw9e“^†Pø?ã>0Û1ãÿ8ÿ‡{wœs ÒugíÃü¯PØ¿q˜ÿ¯ßG+d{<¦yâü×8ò¿B•ùW(ôœÐsgÆ¿qÊúÏ0¬ÿŒ‹¥teBÿ—¿§ìãÄ¥Èqqä[ÀÃþ#ûªØÿa°ÿcÉþ‡:µÿk 4/} X]¹&Tذ=6~WeS ÖðÂøz’U X3¾3z³²)TSâx]ÞtLeé É–Ÿ›Òb¬ÔŽìˆïÇ4,§r®‹N’gò´×+›R8ŸRJãeä·,:ÃÈoY´X«n|ùËz3¯ð\q®ïeþ¾\øp®£ÈûŠ+¦6£²sþ¼Æõ¤÷ås]I^÷Ò{<ø}ü½VêíÊ8ê¤RÆR”qLÊ-©n·‚kò¡2ðŠ:¾ÒûÂDûÿÛcnúÿšÿ Uο„Àþ!ûÒÉù—ø?£Éÿzç_B0ÿ­œ‰’Ýö2ö C0ÿ­|?!ãÿhÿCžï0æá17²´áÎ3Q¬Ÿè«GdÚ!ÐÿÑäÿ…ÿwu’«1wüßÑ ;ßËëª/©vsÖÿF)ç_‡`þ;Šæ¿!}ÆÜÅú˜;,™÷¤-Œ eÿ‘Óã9†žWS{±¾(k®‘M”ßa|74‚Ï£Šs§B'‡cü‚þ?j‰<¯ªYŠIGÉŽNñ%¾?=ò%øôžÌ}ÁðFÑügH¦±¶ö>¯­ FýÕúFýéþCúön Û’¡°_ƒ!ÿð½„Qο ÆøNãÿàÓÆžð笗:wÿ'œüŸÁ™z=ëá)>ȵ^‚þ‡“þÎr¯×ƒ`ÿÃ>0õz|FvÛ¬)ÂøFãÿ }ÎçEƒ`ÿÃÈÿ¤|¿`ô?ŒôÐj×ó¢AðÃÈÿ Ùl΋bý'L9??þOX$¥+qîÇŽ»Wú±!¾ŽkáÿŒ$ÿgPdç~ì@ÌÿGåëÔˆúÓøe–þÏHòtîǦñ'DÙ€õ‘s(Ísn4ëŸ#̹ÑÝÎçFãvQyñýÁÿFZäÜhÐæÜhì߈ϸüJ°þ3âÅû^÷ÜÈå>Þ¬ÿŒXM´rþÖ¿GÝÉùÿþ8ÿ0"™p®Îÿ{šúÜú?B9ÿ?æþì¶çqþ¿?úÿð‹”ßXc-‚lqÃâûxø›ý1ÿNóŸþrÿصGÕ½¹þXÿ¾ÉlÏþ¨ÿpªÿ}ø[¦_ºX÷Ÿ…˜ö«Öÿ†gQšõÊû|:–­æ?ÃiþÓ‘ŠuÜ7ì‡ù_¨²þÛë¿¡g)mˆ‹²Ñ¼`à±o¨aOÚÂ6¾æÿ¡4ÿï·Ã¹]è‡þJý¿_²)û~Xÿ -!ºØµ]è‹þšJeXmÚ…¾˜ÿ†*ßé‹ó/¡})Ï9Žó”ч¤-ð­ã¹Ž¾¨ÿ0ª¿ÎÇØ¾°ÿÃÈþ÷½ÜaŒuØ»ì‹õÿaÍJùàÿ#ÿ·ïçclÿÓ¼w)|õ—ùï}ŒyŠÆ¶«Rîs‘{e}ŠÊ[&ÇË¡ëYo¤6ôü-’ÒÆ°¿ˆñSì¤re™¯Bý3šx_o È=­AÂ?n*à½è>—‰okÇ_ ¾lÖ&9ãï Ãþ %û|Òü{!ÁÿPåüõÓnAÎÁ°ÿCI;Õ÷rcÃeØ©>èÿC©ÿ+öµÆÿ¡äÿ{ZCÜìi¥¶µ:wû`ý/ä$åkêjŒ!4þõyÀµêÿ/d3Ño¹·S}`ÿBŠM;æ—ݶ/Kò{Ãÿ !ÿ¯Ï7ç ` zcþBóß>¹g²T[ÐóŸ!çÌöìú¡ú÷ ê` Œy~ß:ÖQ¤Áù×!;ˆþ ó}ëÞÐÿ!¤ÿ½÷¸Ø·Fÿ ‚ý¢ìÁÿBþOï*çûÖ¤ÆznÖ†xÞâÜ>¡ÿ¦þ´Õ”y濃iþtص} BýSýƒ?0íSúÿ`¥ÿ¡þƒ©þA{íÓÈ!rÞ¼ÈqÝ-öo0Ù¿ Õû+°ƒÉþÍéÜ_ „ü)ò„ü‘üƒ‚œû+}ÄxÛƒ~Ê÷ÑÿQÿTÿ‘Ž}nÐ5ÙçüN:î©úÂÿëCþŸï·÷9_ôÿ>Ôÿ}uÞç|Ñÿû(çß}0ÿïCóß Îû\Ͻrm¿—2þú`ý¯Ï@J7ßìo>°ÿ},fó«sÞßrû#äßû¨ìo= Ìþæƒñ¯7¾Êþ¢üßÞäÿú¼õßßSíù÷&ùû(ç»cüïMã¿O'ç»Cþ½©ÿût<ÿÛa¬;üŸ åüì¶Ý8ÿÛú´×¬swøAäÿuÿÀùZTÿ{äZTÕŽ¶¼;äDö¿ûŽÎõªì_Paë:׫nXÿR¾ÿÒ çÿ¿¥ôë•/õ¿žð¿ºAþäÿvWö׺áüCà¢/^ÿžjÿí”ÏóÎmì÷í¾çÚï‚üž«¾çêù_ Íÿº)?Ëö/ì_7‹k=ðÆß øp îí®7Ö¿Ž™zÐïñì¶?àožyCÿHÿ½Ïû«CxÕý?`“(_º¹NÔÑÿñ†üHþÞ;T¬ðþ¢ú?^€âÿx¡þToGÿÇXSêÞÌküw ›B¬à3Çòo4z‘ÿà—kÓ<ÏÑ=œÚÙ²‘øBVM^$¯~‡¨Ï\úºU ´иÐä%ìSô6­¿ü»’þþ|Æ•ž=ñœÌç…éNþ·ï&ÞGµr?ç5­ím"× |÷:îø–õñ„ÿÛk>•o“)gOÈ¿åß}UCƒ¾?è‰ú÷RôÓóß^4ÿõ’ߟ{åKe°ïýr¨;dé‰ùŸ?Íÿ¼’•| ÿþ¤ÿ^Þ꺱Iǽœ|§Õïëp/×ßim¯óÛTïó£Î{`þãŸEeÙi¶…ü?’Ÿ§¿ë¿ßêý_ÂeòßHUuþ†í—^$=„¾{`ýßO®ÿú’Ú©W`vÛ.¬ÿ{`üó£ñÏÃÅú¿æ~4ÿóPÖÿ=0þûÑøïá¸þÿ°:†{`ýÇo鲨?³i–È)¤CúþµÕ¢å4xyÖ7 ç²±–kÁùW¿áü}¹÷ìï?[`ÿý¼Eù–h>ü÷jymŠûjmŠºþdÿÛó´Ìóªñ}¼³ þ=¹þÊù2 Ö?{î$úìõéH}®tDÿ[ÆüwŒ9~}KŸ$þ»ÇíÿÖ±Éïê†ïå†ïç†Ø9?è„þ7ügÜð¿rÃ_ç†ÿˆ¾Í ?Þ ?Å ŒþÎù»áßß9?ปôynø¥ÿÍò pS>7ò t#Ÿ€oÜð7ºá/vÃÏéœß«Á ?ß ¿›÷[ÿ{é{¹é½V¸á»é_½47|7íç¿ÐMz7úéÉ ßMùý—vÎ÷ûÔ ÿ€›üÝ´¯Ÿûêç¦ýüÜ´_ϧÝðÝ´_Ïknø»ÜðÝè¯Ûò¹‘_O7ö©§ûÜã}7|7ïïáF¾=jÝðÝ•/ÂMýÜŒß=ÜŒÏ=¹áoéœïëÆ¾ø>å†ïƾ÷pc_|Ýø7>nôÛÇÿás›÷»é>nÚÏÇ~ø¸Éß×ÿç¶þnì››þéÓÔ9¿»ÿ§»ùu»à†Æ ßÍøØÝðæó‚&††×$&†×Œ ¯Kþ»çøœ>;#sLL}xiýXɉ4má<û‚̹ó²fÏÒ4àŸ ¥¤šþÛÐü‹£5µÕ•¡•ÕeŵÅÕÌÖø–9¯Ð ñŸ¡HYZTQ\Z^QZVP[¸‚J$ÿ1Ò‰ßNLL”¿˜˜˜Y]˜ØáÇécüÜjÇ4éù ù·Å‹ßot‘¦ýO@:Ã8ýIIù9û¥JW8õ‡/a:þЦë:à÷8;ð+ÊËeÃ8I+xh§<üš¨SžþK¤®Òâ‡LòäO :ç‰ßNuÁsú#¬`ÚÕ5®Ý¯ÅºÄá‡gÛñùGk]µ£ä9üì­ Œúó¹®0Î~Ž× Vý½_n5xÁ -‘´ <ÔD«©)uÖ6ï:©@ˆ´¡Ëê–G„–—G„FEEiÚìåËIÃB+êjkJŠŠCŽ>«ø–‚Ú’•Å ½¥v…’V$“Ϥ—•…·q{E„ÖÖG„/«»EÇtì'šF¨NÊÉacŒÙU~²\«+/*^^R^̺Iö2¼¦‡¦AU5¨3ã'„Šß.‰xþìâ¢Ð2‡Fœ0oz•M³åççͳ§§Ú§gådòšþœ‘5—ÓˆZ²µ•®,¨©¹½¢ºH«^ÖWVQT,ãt¥¦Ù^Ô‚vÝ¢kZtQñÊèºê‚ò¢Š2ÍÉç?Îrð1cø7ùºÂÿ]èút}º>]Ÿ®O×§ëÓõéút}º>]Ÿ®O×çÿâ#~»=…îÁ¸À}‡á>÷ÜcpÇÝŠ{î)¸gànÃ=÷<Üóq_ˆûbÜ—â^„û ÜKq¯Ä½÷zÜpoÂ}îwã~îq¿÷ûqß‚ûvÜÁ}îãþîOãþ îûq?€û!Üàþ:îÇq?û)ÜßÇý îŸâÞŠûÜ/áþîßà~MÞ«4ܽp÷ÁÝwÈ¿ ò¯‚ü« ÿ*È¿ ò¯‚ü« ÿ*È¿ ò¯‚ü« ÿ*È¿ ò¯‚ü« ÿ*È¿ ò¯‚ü« ÿ*È¿ ò¯‚ü« ÿ*È¿ ò¯‚ü« ÿ*È¿Çß‹ йË{h–ÙÁÛøWì-QŽó¦‹M¼¤%¾éJÏSaíç¹Î(žÖã”™VÒ2mé­Ÿ˜A»ÃSUý ÚÀ7(øßêå·$Ì ÝáR½üî 3hoùÊÄKZ⓼ý~fÐFþ'”üO˜ø¡Äö{)Ì u¼§‰—´Ä'½ô»fÐFþµJþµ&~ävMóïfÐ~…‚_aâGÑ»ü3 ZÇ{šxIKüxêOþamà·(ø-&>†ôÁ¿1Ì òWÊsÜÄO ÕñßfÐî𓨟ù¿fÐF{V*íYiâÈnùfÐîä;…ìŸÿwa­ã½‚M¼¤%~ÙÁ^ý ÚÈ¿TÉ¿Ôħ’}éfÐîô?ƒdÑkz˜A»kŸég_fÐFùw)åßeâ³i<éu_˜AxE¼}˜MãK¯ƒaí?ÞÕ ú†Ýð`´¹ç¬ÃÞzÞ`Œ#ž÷ã‚çK†Í÷ü<À°ç^('S^Ã,š¤á¡ÐS:W¡—+tB߯Ð;ú?-Ú:ýŠBŸRèË ÝfÒÞ:J¡ÓzB¯PèF…þ•BÿV¡ŸTèà }\¡?Pè(ô7&Ý­›B÷Vè0…ž Ð) =O¡‹úv…Þ ÐJù»íQèC ­”¹Û…þÞ¤»÷Rè =Δ]÷D…δh¾Q¡ëz­BoRè§úy…þ›BcÒ>~ ¦Ð© ­”Á§^¡×)ôv…Þ¯ÐGú¯ ýB_1iß…­ÐS:O¡W(t•BÿT¡©ÐÛz¯B¿®Ðï(ôE“îá¡ÐýMyõPäØc¢Bg+ô2‹æ©ÓµDk ¦Ð¿Tð;üc ½O¡_Sè·MZû5ë ð …‡(°Ï³•Â6 ¿¡°Â Sø-šoi;)¦ð šïiŸQøœÂß)мO;GáÎS ùŸöO 4ÿÓ.Sø…/)ðX}‘ÂàýüWPþcÀýK)ç'hÛ½xÿÓ(÷”ï”í$ÚëmEž¯£}^SÊúÚïeÔóAÔu Úñ/h+n·­h»‡Ð–Û 3–ÏvMêËŸåÎz± 2~ òzòfÙ³.솬YXŸX‡þ€vù ÚõQ´9ëëëÁÈç)Èçdu²;‡vg]ú5äÁ²`Ýc]|1T³ÛËVØ—Õ••ÛWWkE«J‹ì5µuËìËJÊ‹JÊo!Fi%1ìvÁZ^W^h/­¨¸­®R³Ï³VWÜf¯¯±×ñ>ÍžU¾¼"½ ´tYAám2/{YAá =wû²YµÓKªkjóKÊŠ£â&L˜‘SEuaqûü¨þFåc¥ãc5 NZYXV©“Rƒ…៛:+Cj·4Å⹦¸˜ŒërzVž-SöÙD¤ó1Ì`ÕV—šOR×õ'ñ&¿Ò j'EÉOè0Œ© RÊ2z^•µ+júЦÇ9f®âÑ *ÓÁü»`(ÉôQKÐ|N•ÊZS«A•f còjWUwäC›x0ÚÓlK1|ÕUW—›Ã˜ßqÌÒ9í(=¾ÝhÄÑ¥%˪ ªWÙK¨o#†E§Jd`ÈLŽHL ÉÉ*Ö(‚>*ét ¹TÂ$ŸJF3ºc{`À"reÜ{ai ×»¬¸vEEbEv@ŠáaVjn¦½¢¼¸´¤¼XsÉôÁÈqÑc‡»]ÚË·ÙùܱcÌ-uÕE2Šz}5u¼¢¸ÃúÓãòÂÒ ¶úËÉD—‡ÍŸ•µ0.&f=S*¯]–“‘–gÕøÍÅåÔ‡+id öåçšÊâB­=¿†Ä]QX#ÅZYYZ"»U輺ÊJ²%ÑQ…•åÑËêJJ‹¢ææDæñ€S™^f/)‹‰ãc¤#ùÛ(Ñæ÷@þ7ß‚—T8s¸ Ü×ïl çz§nØÿÛñoúLÿŽOú?îfþ[Žn§~§KÇòŸwãÔvÚ´ÂH9LáþË“¢ëž½]Ï4ço’u“ÀÿÂÓù$ÁÙü·ëÓõéút}º>]Ÿ®O×§ëÓõéút}º>]Ÿ®ãçÍï.þØ]Ó,|âƒÖñ0ÈóÖ´õà¤Pï¡iv{~æÂ|'T:¦<5oÜùc·‹ÝãÓ>¿ú_ ˜o>{¨ùziMê£Ý^³ªlYE©ØZu’ßyãa>[”ô>ȯ›‘_¡ùÇhœ”/Å.ï1ÝÌgO“íXV™_EyM­òì˜_e±c:ýÙÕÇ.Ïàì@Çüª‘~—§ã³ñéÐ~uå·—”‰Õp'ù…–ÈûåÙ«Óò¯°/¯Æ_8é˜ßägíf>«í×SþYRãÃzgµp>©ù© C×·@çϬožš™·Ý^^ª«ŠØ$t‘_¨ò¬Ê’‹»Ø¡ž¥åŠüÎx˜Ïj~\>µ¢vû²š‡çvåSm{5?U§ùÃífùädÍÊÎÌÈÒeЄ{Œãó˜H³\j^ƒ)ðÚGœÝuë¾½7³?þÔÜÍ~#(e Òs—õ¡{Š’ÎFÏ|©ŽÍï!ËÊùlo‘pŽoÕ´…BÞZÒüa…Í\vÍõç̃ò`Pûðµâ]üN_¢ëjª£KK–q¨©)ЉJˆ²F­¢ÇëN'7à“¶O×ÓcµhA5ݼU5µÅeQiÊëº>]ŸÿO|æÛš?³5/iÍi.¾”Ó\ömí…P[ó—YÍ'l-Ýl-)6Ûúµ«l-ZNËŠYkûØZ|lëÖf^M ð¨fk±ØZòm-©'Ö{µãbÛZO’9²µX[_\@÷æWmæùä6ŸÉi>gÛ0qÅÅhýŽ „ü›%2§ùlNó?µ•žÏ#ÀϨ5¶æw ðs™ÍæËJ¤Þº u~jþ<ª•’ÍC²d™¬õzÎi %N8#Á™(ž3ZÆÙÖþÃËÖH˜¾À´Í—˜‘"u q¾Ÿ'9ŸãKœÔ ó-¶Âws6$ñÙGbk3[¼¬WSü½jÃ(É$ù#’üM<Ó¯SÔÂç§æ`~ÌuÌSĽ ÜJÉÝGÖY‹}ÛÖüa«´9óHVáᬠ^¯d=”uðšgjÛëwŒ¦t³ÎŠ\Ë\s[ŠºûdÆ^ìývªÄîÎØŸ2öû<½ØRÛ[b§NX~Kë›»Øûù\KØåŒý­ÄŽ6ØÀ>+±£¦šùÞ.±?ΖØÖ9:ö{O‚™o¶Ä¾ ì~»LbwOØeŒ&±»ÑÀN’ØcöfÆ~9[`l‘í!±/G ìƾ*±³€µØçìÞåÖn}HbGëg`ÿ(±™c6‚±{u–ÄžÉÓ±wIìòQ;„±éû°OØ%ög#ÖŸ±ý%v°wØ(‰õ*°?PM[ÏÏØj`X‰õ(°û¢ÄN6ÆÀþ-O`ïê'°2öW;X/û{‰ý±À~ÌØ[$ö‹\‰=5[ÇÞ!±šùN‘Ø—€}ÜÀΕØïüö]ÆHì}À6ØQ{¡§À¾ÁØOröV`ó ìw³6ßW`_bìŸ%v*°c 컿›À¾À؉í ìµY:öa‰=í)°ÜKZíûyŽÄ7°+%öŠfæ;AbŸö‰m=ÃÏk­Zílbnóg`¾œ£ÚkÁ)§…ž[pýÁÈŸÓö1Y¾_çHýÏŠD‹9»æïmžœ0ÌÁ`ÎáçfOâôÇÎøÝŽþ-9Ï•œžœ¡§5§yŠmí!ëM©‹S—¤Þœj?ú²pI¤C’Õ|…R¾Œ”»‘òñÌåx œ_³S<“?2ÂôGÖS̯è9«ð„íàÇž6Ï@ÛØ¿Ú~ïÙö—Úá„]lz.„Ñ÷–9\í/Z®¶µÀ Àd–(žµ«)#Ck§øà÷2ŠúãLØ¿ÉÑdJòbä´Ä¿|~Û`SÏEm~…8Àù=8oÌd×)?Ì’Søñ¬ Ÿ¾Ó1„þ%Ð 9z5vŠùaë lƒÖ}"GÑç!ÛÛg"¯3ì^‘f©O¸TàÆ7Û‡zœOåñP Ð0ºòU–D|˜-ÏòÜ˶|¦Þ"¡hx]èCèW€~J¢…7pµµr¦(ÿc`þJ2[ÿ,ž¤^Þ+¥vÜù^¶ ɯÌ£ñ±,‘  –eC㯶¦¨ÜæÚf/;ù•eéÚ; œ±àäf±öŽÉiÍu¢·=‘æÊL™fX–® —m’ó8mõö0æ=›k½ÝlËL]àOÎ’z{×Bo›¸™ÝisÔÛ¥àÏM/êtpbÀ±Ù:êí`ü€9`ÓõÖœeIN?[gzûî è–^‹¹R7–Ù¤Þ~,õv€!Ûg8×Ûfàj€ûµ#NÕÛ›µZªB…Þ&1*ËQoŸ˜¡è­µ ø[›ª¶ûfˆâÿkºd¾oƒ-˜ÑAmr…Úö“ "Ál†ÚöšaªíÃ`߃üþ4]WÛ»Á©ç¾éÎÕ³?©¸s‘* ©–O×µÁ Îpâ§wTÜ``~œ!1#¦»VÜÖL‰}{†.ñ«ÙRq·]Šû*{ÙÉÌÎè ×Ù=ž-…4|ºT R‹hÐJoD¶wd:W pqÀ-pÄ y×8ŸAÐ@»:^… ú>C">›î¨@e™2ÅVûvìÕÖõ†#Õ“:—“ É”sÆæZë2¤ÿØÝÖú¸x&)òfv#Ø%`o쬖ł½ì™Ó5}ôÌw:81Hxc†^°pú“˜¡ë è>B¿Ž¾Lªœ1S¨rvVuíót™Ëq4Âw麮½ΟÀ9’ÞQ×vóK`þ”îZ×€]ž©+Çϳ¤®Å}!tí&2‘YIzgº t#»”,)Ͻéºæà2ÛÞéÎuíý4‰{¸¤¹Ôµ=€>è‹*TèÚ±*ÃQ×,é2Åä S×"]„Té:—“<•fèšoš¨Q`Cðú”4]ëöx×ð4]û*U²?L7t­Jæû.8‡ð‹T½`Àù=8o¤:×µS3„®}”êT×~‚\ŠË/Ru][ ÎLp§vÔµ$`F33Õµ®û]š®CgH]{å¼Ðµ¦HÀi hý!¥3];ôŒìNL—òÌJuïðNdûhŠs]«îFàîpÄ©º– h4 óT¨Ðµ‘@ø§9êÚæhgª(ÛµiöyªŒLÑ¥û18¯ƒsišnÖ†ÌohVá(á«™BÂ?Lƒ„U‡ëAä³ù<1M—o8·‚Ó0­£|3˜[§¹–o °ƒRu¬É”òýüœoߢ ‚ijépýs*äþgSõ¢žçEpÞÏŽ×`fö4Ýáú58kÀÙ9µ3½*z^Š^2¤ì.O•zõw©W)ŽC¶³¦:׫Ày7ʧêÕÅd }gš„~ŸÜ^¯þÄÞiŽz•²]5ŹR§ ÜGœªÔõt” J}5Q"Î$9*õŠ)(íÞ?´µ=Ë;¦­IºF@ªß'©Š}ëQß‚¹A2[÷$vPl-U(ö«‰rý 'Šýb¢©ØóÀNF~·$êÅHg$83a¸%óHÖ„îµÞ­ŸpEÖb…n¿¨ã8_H™ýMÖ¼UKÔµåmpöƒóFBGÅ~˜ûÙŸàZ±ï¶Toã¾&Ûú©P첑YEBg 6è#»»§I!>— l±ôüzøU¢Ìv@‚sûØ*q¯wÉêRÁþ è@«P¡`›hLtT°î 2Å º4or¾DÆ^µ­/%àÞWZŸ±ê qxÝùº¬féʻؓÁ†§×ì¯4ÝÓû™U´Ì¥É’ó. åe¼ñoàçÓÉÎ=½¨©B£¯LvêémD.?A.LÖuk%8KÁ©žÜQ·æ“ÌÒÉ®uk° º2Üž,uëý³B·¼ø§UfÖgrgºõÎ$‰>hÕ³à µœ}²Ô­›¤n=àýÈvÿ$çºup•ÀÝëˆSuë&@3-Q¡B·€iuÔ­?L’)ê&ë›x@~;YrB&q£œ—ËÇÿš(™ïƒ¹Q$çåãSà¼ÎçjØ¿ Ãu–èèYˆe“DÃl¦Y<6QW­Ÿ‚S NóDçªõ×)Bµœèd{\ªW,rŒœ2'êêÕ 8}&vT¯/ã%æ´šebõ:ïÙ¼dûÚï=YÅ^~÷$]'æM‘*¶ê#¡bp2|**f+|;gCÄI¨XVK†·T Þà.C¢è§ñ&ˆî¼.ÆcútÀbË7$Âu vÐ$Gx€â›3ŸfýâŸÑ"2ƒÜ–Zo^(û|‚dû« ì=õºI”o˜/ûÃn9˜oðnäóø£:šÑ!"X Àµí€ú¢`a³€ì XÑ%F8ѱîçøæÌgR[¦û…k~šo2P«|Þ4¬ŠŒÅ9þÃHY⤈;{çG²þÇAÿãQÝùGöqŽbÍ›rÌŒm[»z»gÀ/þ%k½ ø_J|ëŸâŒ5f›² 2€6) ºgpÿç%Л€Ë®$ΫvØ£âkúŧ6¿šUøQæú¶U x<£ù›¯OÙî·%_ÉÞZÔ¡²hy‡€çù8È…X™ßßDK½šú g¸Ï"¶½ú~ +]È/mËMÙÝaå£õ»[æ?º!£?iù)nÇ„…5|¸à^ä{ÇMñ•FQF¹-˳ ¿Î±|NIm-«Ÿim¥Øæ—)³¨´ ^Sl÷gµô³5§ù¤½âÊÍ›…¬& «Â/[·PÔùþ¼þ^Ék«Û™>àü'9Ãcͯb$ûC°=b4þ$Ø/ƃæÜX!ìçÀÙ‰„oÆèoÜN 8OÆ(–­ÃÞšbÏÆH{V€ôÙH_£Û³àÄ‚“ÓўƘؘvö,«ùìƒ_x¦®ýÑ" Ú¿¢aÿcõNýÜ$iÐv½+ Ú[<'­E«-L1h^>â¬o€nA¢»è÷Ñ&HtêJêguGØÿr1MÈ”@Ñ÷sš ÐM:h±Û­(°èu@Oey튖}Ÿ`Ý»#sé«ç2Ä‹¸ç¢$÷¯1zCL(³¨Š–Öí·²Ÿð÷Èæ(dãåå0ÚßÜÀ=ꈇÑ0Ú—z ?U¡Â´e11ƱÃ?%Ú8=~áG±Â¦m%³pîEéœ!å÷Ñ2ïaQF6ÕûYê¹ÿG¢ÿô]¤ Rà#l¯´ “ HœÒ´€Í¸¥6Ê–º šà%a«º  F‡W“E\1àü îÿÀMî·Ø‹hØÁÑŽ ´%’-âáó^-eG¨™<Ö½*K÷M„Lñq”̰›ùâÆÈüW€žèl„ â‘™˜B°Ç»°g#ŒÂqÏÝöíQŽ…k£øæWÉR‡ÙZêŽè†ú’0Ô½&Èõþ»õ_Û ßŠ4lª-6õ4x/K^ë—ãu ÷"8slçëqmé;Àæ³q®§vs„n=®ÅH3ZpR˜ÑŸP‹ÌîÏæzÍ­à烿tœ^ÔDM=†’çÀ~Q²¹M¦ÅÀ³× Ÿ`› ø€¢š_á7&¤º˜ŸàÛB¸ ŸÈí‡0—€ÄÙ‹í‡EःsKˆ:fM7|j{™ÔjÃH)·OCÄ‹ûcAãCô>ýÃÉùûPÉé¢Ì(}ÚÍ(Û¯0µù¤mCÈ÷ô®¯_áïq×  Çoä#·ýï«\Ž€ŒS)W_±Ôöo-ÞrP~ßïSâÛ¤ tЦÕ. ÄïPÜÚϽ(åÛH™ÑüOÑnY͇˜l%?˜Û|Ff²GŒfÞWåÒNì[ ±…ŠØRöÍÑsÞC9;ڜԵ?huÁ­¿ QÞßBIϯŽiݤÆÞ%3Üés³»ï™Ý½ËªÖõ2äüšXÿêÜrñûÈ!?Y]õ9$'BîSSëRŽU§í%#««O ‚R J§êî&Ú]·\ਓ5Ð TWŽýÊ^(?Ø;v;˜×Àì pîØB°Ój(‹5 dÇöøœ›`( Ë |é…A,ô¶Ð»¨ª†A©¥M€Éî ˜Õ™Y . ®TCÿÅ5à^-eèõÕÕj|R‡ÝØ/Àp©½ àBûN5Ç-%\¸<#§?Óë ´ Ðx=J-¥)ˆJÕ-eE5ޏ\ W %U,`Á§šºÔþÊ·¬à*!¿šñ*áxmjKžÕø÷ˆy1À¤®îV-½Ô^ y>ìͪʴӡŒƒ"ÄwÏ‘iÚ-ﮈlŠÈU•B©%°ª½qM`Nc»T¨êð‚Ûœû½?ÃUS»ü‰ÚìÜü"rîF+QZ‘ÿ}nÉÛ "h<‚ üK¡Ø‚ ~gz(Pw@© â³Ê°L7|xôfioy½í†ö¸(¢Aéçøi•¹Xý? »UJ!º÷!¿àÿÐf@?WÑ*#·é:ÈÏUµ­LSù‘ùÑ«Í{£·álz6à4”õxccO€}Hµ{£¡CéUEר;sc¯¦<˜OªÐ"¡”rÉŸµ|ÿ«2«ßû«=ý[ n@òQ»²q€û_ßF1ßTF1¶÷¿ÀÍ÷¦‘£Ã`îô=Ê÷¿@„û÷G•ùÔ¼0¼\MéË V">çÚâ„|ŸÕ ;XÀ¡×ä ²[Ž£—{Vœ½[Ƙ ûÉ[‡±…ÑÛ̹«eaßT’··-éÖËük–*ò¼öçÊr<Å:sÁ£û¬/V’õÊ-ÒÄ}š(޶U¸Js+ñõo%^¹=éú·’Ú¯“¡ «‚~gȺØü»V¿Ê²ãé%:¹c̀ª £¹K%ôÍï,Oÿ›C­‚»VRýŒ”[•Y©SIw²{¯Ò8±;P‘ãw þŠªÚ[ ¬†²±¢}o³Ì,0«+Þ£·IWYy°]uîmjî¤Þ& @+”6°âô6¾ºY‰ƒjWÔ÷6Ó¹·9íÇЀnøz›/!o®dÛÀ{UTíë-0O£ˆÍ~Úç”Þîœ (Фÿ®q¸(pJë#7k'È*Ûû~ê»Æê ÜP@M?c/sÓ—õß+²~ÁWíÖãPöC9é«ëepJñ!˜7À ÷S§¯@)€ò¾¯¾—Ƀ:¹¢ÚóªrÍËûq/ó÷2#F¡˜ ª›^& \-pFN Qè%?ôz”z™?+0ñ­Ÿq«ó¥<ÝB½KÛ‡ZÖà«Qà® êëÆ•Pø™t'²nú‰çü©[ú¨­ñÄ ô3©‰Í´¯{CmƒÏSAµï(5 t­p‹Yíû¢Ž¼’V÷ Ê?B)‚rÐǾ}o³L‘Ï=Ú÷|À™¾jïË_¶ïNÛ¨}'è‡Ò²} }#¨:‚ºø8hßå]©ÀP€‚¸}ŸñfùPÛö=ÞGµï½`6 ˆCÞÚ÷«€Z¯ƒôí{&¸dp‹¼µúÈÍ:rt£¿öVí»ˆ( “·±}W‡îÝ×[íÖ’ò¬û°ââmß¾‚Ù f†·jߟByÊ·åõíû5¨…>j¯¬Ä5oámhß3&£˜Eª›ö=\gpcœ¾}7Zh¸¥öíâ‚·q«N+¯oßå½Ñ¾,ÿ3ný£œjß;¡¼é­oß²núö-¢}ÿZŽÖxb²½µö}¨œÖ¾'BŒÏz¬œjßý¡t„2¦Ü½Ú·þ·*"Mˆl^NYàNYVNñŠ[o”µoÙ‡Á|æTÙ{ܘ{ð³åÕ~º"Æ?lâñ,(myÙhÙCÔ AIeõ-× !€jêª nÙ!ß.gÛ² ˪ë„s^ÌüÄŒõ‚—±-} }+ôϽԆüÊ*(›½ìÛÒS`f€ *«ÚR.”(y^ú¶4 jd9µMûû²_{î˵€b:«blÚ’'¸‹e™«bäôméh´ ÅelÛÒv¯•5¶¥^°÷yëK^hH…`§¡´˨†”etY}CªæelH“+PCZV†V·bš•ÕÒâ2ZCªµ<>+¼ŒjHe \âZýË<È}¹ï<9êCDýé©öýV(¯@ùÀÓ¾=æQ0¯x:ÿ–h<Ø^j—øpª½ÚPO!(l°ç½¾­ íªÇã1ëjOÃ}¹  þ\†‹ýÇÅØ|[³Üp‡ŒœÞ>+.ú¶%ûÌ‘\ÆhŸ³Ñß“ê6X4ÞCíÍP@éåáü¾\7_ÿy~¨j~ü¬Ÿ;~êþj5ž}˜~êwÄ‹ßåÉÅŸwW»½ÊÛPvºÛïö•`€yÛý}g&àážjGóæýÞè}Úïý´Gi£Üu7éZª›tMAUÕÖ]u–^ÚxF7@ç°™+ê 9ž1žÇ3þâÆØ`§ÝTŸJ?øò[Æì.|ÿqÕ6ÿ`në\ZÝeM—©¿…¾×£uuþã­ËQøbïy˜ ±ÜUÙy"”ÁPä_±Ö~Îw8¦µ§ÅÃZEjï’¦u4ÇàçƒUŒ~.‡ò¯¸qùu\•Ÿ/º°rÊY{?f ˜#.~&3ÿ(Ùy5Ø'Ü”;º³‡®#;φ§¼îû/è1Ї¸¨ªFC †Ò‹#ùhÛß)FƒGy«ìCÊ[°•Ì…«¤ÇÄ~‘Àn>Å&ŽûÞ•«-ªpÞú ¢þ âW¬?ålî”G^‹Æw5+Á/pÕ†²ü¾ù-åw5A€Ò–š” ’¡ôƒ"ÿv6Îõ4TpµwAI#×Ê&SI#wšzÒÔ‹¦åhêMÓ 4õ£i%šV¡iUšдMkÑ´MiZŸ¦ iÚ˜¦MiÚœ¦-iÚŠ¦!4 £iš¶¥i{šv¤igšv¥iM»Ó4Ц=ij¦iošÆÒ´MûÓt MÓt(Mãi:‚¦£h:†¦ci:ަÉ4M¥éšN¤i:M3hšEÓlšZh:•¦Ói:“¦³húMçÐt.MçÑtMÑô š.¦é“4]BÓ¥4]FÓçhºœ¦+hº’¦/Ñt5M_¥éë4}“¦khú6M×Ñô=š®§éFšn¢éšnÓ!ò©‘åtìØ(§i£œf¥Kô¹qQÑMC¦7JŸÞŒÇJ=pPL\?‡šTV> Ò¤žl’O£Ì±d'ff%Ê?®nIÉ654uì(¢3éÁ`e&g¦äfdZ''Z’&ˆ:ð?©•>Y“^ôp½ŽyaÇŽÑÙÙ;Ú=]Ïê18¾cGùt>GËé‰~vå’dûL@ŸOœÃç šÖWãmaèŒÓ?ÑYyöXt¾>xX£­œ™‘áx‘@ÛÈ¡‚‡L:ÔÔ*Šx¸¥C‹éP¢Çi:Ú¤:|2§ãý ñÆg~:çl#ê”ÃImtù4SÍkêúᙨ÷àôÏW½çè™­Àë +·¤#X•#õÀ4n¼‰ŽÈœœtG›‹ã…è<œ0A´ —›Ú20=%£e`«V­Lq©©Âx™¹–œ´ä”@´ú~)ã-iSS$7Þ2A(c('¬š•˜4In¸–I–é-“SÆåŽg¾ÉÈõ³L¿Gý¢þ´îyÖôø´Œ”dÙO6Ê)g"ç²³Ö:žgH"éb&Œœ’˜&úD^@šÊ‹š˜Ìƒ÷”Ð#2¡gLlti.*f ‰Ö†žO+—•˜“3-3;Ù”=ÎVšœ™œÂË”™K·‰ØJÚ#߃“S¦çf'f$gN–g…µ_.'Nm•4zJÌ—L»¯øTII‰<~šŠ‘©2uP¦"djŸLÉÇ",S² -Þ$S«dêm™Z/S«ej—L='Sò¯Ž/–)ù÷V‹çÊTqþU<]¦šÊT†L]8ÅÉ2uX¦FÈÔv™ê/SËeª§LÍ©Î25A¦Âdj˜L5•©2UG¦eªŠLÉ+ßâr2uZ¦L2µ[¦®Ý©7dê¬L=.S¿ÉÔ8™:,Sòú³ø™ª#S»dê®8G+Þ!S§ej½Lí’©7eê}™Z)SWÅ%zñR™:%S‹dêG™zL¦öÉ”E¦¶ËÔD™zM¦ÆÊÔ25T¦Òe*V¦âdª»Lu‘©ö2Õ@¦ZÉT™j(Sgĵsq ™úF¦üdj§LyÊÔK2u瑚#S—ej²LYe*N¦ŽÉTW™úA¦ZÉÔ2å+Sò¯§Lø\œ‡o‘©×djLåËÔ«2e‘©å25L¦ž”©Ž25O¦ej¦LyÉT–L§¿Å©2uD¦FÉÔ.™(SïÈ”Y¦ä¥UqW™Ê“©62•!SÍej„LÊTO™ª*SmdÊ[¦ªÉ”«L¹ËÔ;"uNúï¼L”©?dj“L‘©eê€LÍ‘©=2•"S;eÊ,Sej…ÜçkdjºL½$Sòr¾x™Lõ–©'dJ^ùÏ‘©š25U¦ämqºLÉ¿]\8§Ðm±{ž|\ÅÉGÆìFÜ3^Îâ|Ä,¯ÌbÏB'ÝŸr“q‹Å;ð-ޣ߻;Œ“OšÉó\ìQèþ¤žì°V¯å¸­ÿ"îŽx×]ÇqéNãÊÊ8Åî…njýÚdÐ{ÿ>NþÉÃ…ë9î7—{]^ònä¸ÿbý~ÈæMwÑiœŸÝ~¨"ØÉ[9nÔ¿X¿XÁ>½ãFþ‹8ù̦9³8{¿Èm[Äq=<KÝÍqü‹íÙRÌOîý÷qÉb>ê Ž‹r{ð¸•b>áëï—DªÒ··ÇéçÙoo±íW丧ŸgßÞ£DÜœï9nÓ¿Øï³DÜCÿ~{nqÓs\Æ¿ðËYÁ¾û ÇøÛ¥¡ü–úÄ¿%âþùãzü‹ý¾LÄyýõï÷ûW"n£íÈéö¬`÷yîât«÷Žó|À¸}ÍÅ•ÑbÌŸÃ|5æoc¾ ó1߇ùAÌÁüæ1¿…ù– <_‡ù«˜/ÇüIÌça>ó,ÌS1…ù@Ì͘wż æÍ1ļ*æÞ˜»b~Wzç1ÿó#˜À|æ;1߈¹'ž{ç‡ù”{s+æÇ0ÿó/0/Âü«Tž†ù6ÌßÃüuÌW`¾ó˜ÏÂ<ó ˜Á|0æ½1À¼-æ-1¯yæ0wÇ| Öû%Ì—aþæs0ŸŠy:æã0ǼæQ˜wÄ<óƘ×¼æ^˜ßE}®`~ó˜ÿˆùÃ×Ã×Ã×Ã×Ã×Ã×Ã×Ã×Ã×Ã×Ã×Ã×ÿ-¯ŠõÇÊç›WŽH˜OLš”4aRÂøÜÄìdÓ€)¦%¼<9%;;Kd’g¤'ó“èÇ¥eˆ…¦%(gJ`¥ˆ„‡÷—@·g—˜¦4‹¢4Ž)ËC°\o ¶ÇÂôÌÄä~â6Br¤!å¡ýú÷‰®}€Y,ŒëÝî&''$¦§‹÷øÌì4Ë„É9 ™I™©ì/Àþ}z ’#_º(+1;‡–í*–¥d§'ô²LÈ–èïB˜ „˜¤Üì,QA,ÏÒ–ON̞ěOHJž®É™YjÙmaNRfV ¥MWú"NÒ¸D9|Å%¶bŽVîr45n›*iµAš‘’£„5¥BnFš…Æ?$NUêzM•“˜8<‘‘)¥mš”$·9ê‹‹Jgg&N’‹öñ>±¤L'þ€&¦ffO–KkKh¬ÀT¹ì„¶lòø„œŠ´jË2R¦ šFàEãÂ,ZxC¿0~íWÝ"í6­Üöš ¶SظÌÌtÚ膥i´–—MMHMOd£®6(“3³-‰TÊÃò,]Äz½’”hÉššQ*nÓ‹¢Á¥MMIΤ­U¤ÇggN£-®_(V°´ ô }JfvRJégÖëbCóV=a³”7«Õfi¶´ïM™š49‹vAénÑräŒÜn¢ ŒìÅžÆæÈ½ -ÎIII¦=àV1"A6ò1ýÍÑÜqР ¹'4mp|‚ý¹G „%›w‡~¡êÖëR0ª%=SìaÞ%zJŽõ‘{B¿Ìv¼“Ü)¶ºhž‰¹éÚ°™¬DË*ü€-ˆFr÷è%ãØ'ÚOÎemÓZmý¹ïî¡k…ÜP†hÈ=é®ÉÑbår’Ðy‹MÇþ"#b™‘•b‹,Qˆ"w¯¶ ;nµZ vÚµ€F åfg§dh£‡ä>ÕËvƒšäîÔ6£“äžÕËÆANr¿*5=m\vböŒ„4ÑÒ~Ôi#ý›š’áŸ*OÃ[äžR ÈL¼=äñûI¯¦RÀ ý¢´ŒÔLêšÇ‰ƒí ¥Ê"ìöRy\ÜX25¬uBRzšÜ¤“S,2飖k¢½¶ZiâÖxˆ†-‡2%ô‹ì™‘’ž–Á OSÔ^ݦ-‘Û]?PKîƒhí%÷‰‡ÍÉŒDûD†%‡¥i§Ô;–xjRz&Ÿœ ¬80ÓÁJ9Ñ¡dXèDâ¢Ì‹MÉàƒ‹Ìf‰“±×ä✬”$i-í´ÈdrI0y˜\å8Îõ”À£žLÁñƒŒKLmÜL¿V4™ÜhÝLñ=LE.ÑÙÙ v37»›Ü1ÈÌ´ÈE¿u6¸6ÇÚ º˜\õ£ÑÞr1Œe[çâfºXßäfZÓTLމɗab²µÉä*¼—`úÖEt¦n&/ù±¦%®äÓß]Ù0VWtç\UÓ½ì k^w¥Üq•NÜÍ䎦ù­«M[ûÁÕØº~vµk­Ç\ÝL/t;!&»{ŠÉ+}ÄäNœ˜|5\L^J“ïÒÄd^¦˜ìË“·g˜L²6¦­nöˆÝd?gúŪ¹Ö]Vó}w*c:à¦ïÉ_sw7-Ês1¹›v.rûI?ªôiwÛ÷yw»îs•(àB¡,à×çäô£—ätÕ›rzbœ~¶^N—nÁ}Cù¹dÝùz•òÆ|m‘O5¹˜Æ½T%Žì&Þ­Ä$ã6æ ½¡./õ†â­ÆƒÈ|?c^Æÿ ~ⵉÆË¯ÏËø¬Šœ_ƒx•ÿ^äçéê¯ÊSãETyú¼,¯)ºüŠòT^Åoµ‰ßj/ÇÙÈWYoŽWyŸnŸnß§:烯ò¿µ&ç"^åU¼ºO¬âõyÿBmÎg"^åUüN›ÏßióùC9¿ñ*¯â/ÚÄ_´‰—c“äë#Ä«¼Še?Ê&þ•Fœÿ ñ*¯âGÚÄ´‰¿Ó„óU|8^åU¼w¢âõyÿo…"^åU¼¢âõy_'ŒóqˆWyÿMý?°©ÿwm8Ÿx•Ðøyí8ÿ$âU^Å«q)*^Ÿ—ñr<™|½‹x•PÿÉg³É׈Wy¿Çæó÷Ø|¾Ç&_§¯ò*>Àæól>Q$ç¯ ^åUü&›í·ÉfûuŽâ|Õ ¯òºý/ôä|7Ä«¼ŠÏ°ñ_†ÿF÷á|*âU^ÅŸ°Ù~'l¶_—8Î?x•ÐøÚƒ8ÿâU^Å÷°‰ïa/ÇÊ׈WùõOw ~4ùr¼Êkí×fû°Ùþ•Fr¾&âU^Å{ÚÄ«|Á7ÇPSN©žŒºÉ—Äêèòþâ]Á¥ôxÙyå×pÉ‹¾!ãVzH]W¾\-_¿G^m¯UÈ«õ߆¼ÚÇ‘×üíÂyå—–È«ý¼òãläUÿôòª¿ùyÕþ"¯Ž'w‘Wýs WΫãÅPäUÿ?yÕ¬D^õÏÛ‘WýÕaäUÿ{ yµ?ë¸q^;!¯ÎR‘WÇÿ¥È«ãùäÕñù(òêüEïu1¹¨QR¦;6ù îÆ|m›|[›|´M~‚M>×&ŸÇù»*ÿœM~MþS›ü·6y«Mþ®M¾’‡1ߨ&ßÞ&g“O²ÉçØägÛ䟵ɯ¶É¿k“ßa“ßg“ÿÑ&ÿ›MþŠMÞÍÓ˜÷³É7°É·±É÷²É¶ÉçØä·É/³É¿k“ßi“ÿÒ&Ì&_l“¿åiôS¹2Ƽ?çµ­¹M>Ú&?È&Ÿh“Ÿc“/´É¿i“ßg“ÿÅ&Å&_Ñ˦¾6y³M~°M>Ë&¿Ø&ÿ‚Mþ5›ü»6ùÝ6ùã6ùë6ù eù@›|{›|¤M¾M~œM>Ã&?ß&¿Ò&ÿ–Mþ#›üA›ü_eþ¹e“÷(gÌ״ɇq^QEy“–f“g?Å&~†M~ŽM>ß&ÿ´MþM›Ï{V¼ŸïçÅ{¹x¿ Þ+ÄûE¹íL|<~I¼_ïÕâýŠx¿*Þ¯‰·üããoÈ2åvï5â½V¼ßïwÄ{xË4¾'Þï‹·ü ÖñÞ(ÞòO;nïÍâ½E¼·šøX¿]¼wˆ÷‡â-ÿ òG&ùgL¦OÄ»H¼?ïÏÄûsÿ.B^—ËßÓËGlÉ?ê¾_¼¿ï/Å[þ†þkñþF¼¿ï&ù›±Åû{ñþA¼åŸúQ¼ïÃâý³xËßÚï_Ä[þDLþYyÞqB¼OŠ·ü+&¿‹·üÃRòGþ§Ä[>*Ýj’?á2™ä³ω÷yñ¾ ÞÅû’xËÇ6ʧOŸåM!ß·ÿvûš&OH—›‘œž’0!%QÞ¤M„»oÓsråÒM 1©™=ÔÄòŽnà„”ô,ùE\¸~™–žiÙ9–Ái“SZ…µnbJ°ÿ¶Òñ ' }»æD“_¹9‘lo¥ÜÃvNG7DîÚ}qwVÿ% #L~ŠïGÉê[SgºÓ­'Eݯ¥ï…Ø}›z/Øæ»Ù{¡Æom‘Îö±Ôè»dg"¾Fv&óÐT‡ß›;àJï:8üšû>¨áËug¬þ[{gŒá»ü7 C.ì[Ø ³p:ÀÂfhÅ ª0 §0¤p0„Â~ð„ÓaÆNGJ8"áhl„£Aö£!œ ƒp4þÁvàƒ~ă㡺1†Á †Q Æá Æq ú ö#l†,Æ*8¤`7:ÁÁ°ÇãD0Ž@p0ôÀ阛Á6£  /Ð+°P`;’@7„ÀáØ{ 0Ž0¸ÏøÃÀ§#î?ÀÑg7ÿïy×ßéíþ{ßç×ßà¿×ý{ÝÒ7ÜË/½‰_z÷ÞÙm{ç÷ëݨwr‡ÞþÖ¼³{òÚÍøÒ»ðNn¿ëï»;¹áîäN»î»ã{ëoª;¼›îà6ºáHæèƹ“;æö·ÊŒÔ ´¹ƒ®nãž¹v³\Ý%wx{Ünað±ƒ3“r‚cywGfe¥§q³ ”›•%ú’àVIY‰ÁãrÓÒ“ƒãûÆõ—œì °VmBƒzLNH›LÇÇ ><É?¦\ú—þ7?’éèdÛÑûÁO6Pòt‡§aÿÓŽyÎôoÎIÿÇO3ÿÕ‰î=Ï;žXþOœÏßç¤öž›–:)ÃåÛù¢è¯Þä2çï"ë/ÿ —˜Ž/]ÿþÿõ•œ˜=--#H\ø§‰e0òÜgMm--(,=ejJzpb®%3¸Gæä,Ñs‚&N ~ÀÏ iH󶯹z††¶  iÖ¶m`HX›6a¦ÀðÿÕ5Ç+Wê²EUÄAážÜýt¬‡6ÿÿÈ뿵ÿ»ÏLË »¿ þÕþ û?<$ìáþÿ¼þ[û„Œ¸ÿgüÚ»‡íÿ?óúïïÿVò¯Þi×ÓÑKl¶mÚ8ßÿmCôýÚNìÿ¶áá­Mÿ‘£îÿåû?ˆw}fFúŒàÜœì`:#ž,®Ä»µ¶»;vû»cG¹Ã[µÎš\Nw%õ/dgžVÿ墜˜‘ —ó¿Q(ÝQùŸ-X.Îן–ViÓËýŸÙÿÿ³+áø3D{hs¯öÚF×ÿ‡…Šöß®uhÈÃöÿŸx5ŒÉHN™˜$ö·%%9pÜŒÀH±Cɘš™8NîcùvØxŠWSyñ˜˜dÉ LÌ ´ˆ‹&±M'g5+Úéÿ«¾ôõ?ÖåÞã3î×þç!òøÚ¦íÃöÿŸxý|†ØáÎÎÿCÛ‰Sö¶û_¤ÃîÿÿÄë‹»;äð7“Iþ!C7“ÉÏdrÝ(7½·I-s= –-;Œe•Ä»œÉ#K,›¡¸‡¯‡¯‡¯‡¯‡¯‡¯‡¯‡¯‡¯‡¯‡¯‡¯‡¯‡¯‡¯ÿ¿¾½uî®üIžüÁ”Þ!&Ó|èòg´òÉ© ƒ£ã;( ÄÕa^~qà¹|%$ÐHhíe[^zyžŸ^è¢å %»›æè³ 93&ËL§Q„¡öå }†ËYîRš×ýÌÛä…ò<µò’rôv³-ïâ2ŽîS³4¯Œ‚ÍVåefèî‰Ú–±žËk9¦4ïarþJàá’üå¥Wਿ›¢òÚËnûåfLKËH¦‘«Ê ©Èñê·ò2ïnrþJHH™š­=I϶¼å•¸¼þµKóúí'v÷X}yÒwòOì$$DEŽÔ Êo~ŽóøK«kBBFº² èwRžŸ.¯ßrÒQ†õLO¼Wy~(/е4¯/OÖ¯§¡<[ŸË‹ã苺ü½}’œhIÔçmÊkÍåÕåïUžÜf*'6¦_Ÿè¨µO#°VsŒùlÎÊõÔ·7ÙlÄû‡_¾ ØS”W8rM£þ}^P_”‚x¹üÄ<@×TæÅNˆèéjZãÅíLêò¾ƒÄŽŽXàjºØ‚ücêù 2ùž*Ò}õ ˜çjzÂÁrù¥f{|–üÌò®ÒÑMrÜ4#Ç’2¹U÷VÉ3Dîòðõðõðõðõðõõkˆ9ÿOsþhkl~ÊÅØüÉ7ÌygÍùÇäÿ`.ð4D˜Íó‹,3̦؂ 1y»½Ì^æùû-Ñ×"}]-ÝÌ.æ‚þ~æ‚Hñu@HG-ÍCK¬O‰Sfùˆ{—|ùˆ{sá ¯¾ù'bó‹Í…á>bYh‘u@™ò§EDÆæŸŒÍ?-¨›"¦®¢lÑsþœZDÅ̲\‰Èa‘C#‡D$ÖÀ,Â|6›Ã¬­E>¶ P(/`%ÊmÊûE47çv7çû æ[0‘`ŠÈè¡l†ÒŠ$# ‡¸˜“D¥ªÈŸÎ‹ÅCö‰-f.p÷»áãni(ÂCØÅ…¶œò’9[0ÝïLwÁŒó‹bjjg¨ï±º]œ¥˜BšóYÏ %&oLÒî˜B÷=1ÍvÅ|zÇ-²ä«ÇZˆ0„MC¡uU¡CöÅ$»zE‡ž+–w[zd>£± ±Ó|^-ÿ–ØÚ+ÒÖn £ó?ð»€ë2Ì5)G5Ù%=S£ »³K®OLATC¿ÔëÞ¦’3î©kM%¹£Et&¢O.P¡}T0Ô¶ù꣺Þ´@÷Q/ϧŠ- ò|ßùäzp‘2ú}9«<ÂÕ Ãië,­dë+˜yE¹µô& €pç)k8×LˆùoÏGñG¤¾AäæùÎ[Ç[=Ð󵞥dô¶¾ùwb ÃÈ¢ =b颋úÎ?—ë/w—•) ªKuÊ-ê›EV …åÏ×VȬ­Ð­<Ó! ÙfÎÜÐ/6?½¡h×ÑEæ|÷†}óOöÍ¿hÎÿ™wƉù´3ªÏ£Mº %4Ÿ¯vÛe™*ô?ø¹°}aø‘³3»ìÝyŠÝÃlŸbIÖÙ±`jì f·Œ&V:ÓúS±mÀ¾©±ÌæÏ#ö[ɾìØ™ÛÙ½³‰-’ìlf™Ël?­ÊlÖ'Än‘ì f׃­¯±§çûñ‡Än”lfç½–§Ø™ý=—Ø÷${{.±ñ`¿ÐØ¥Ì.ÜLìÛ’ý– ÓÞˆö.ì úˆZ¦E⨵RF½ E™8êìã5F‹jÌQý@QOʨ$®WØ0%/úÿ²Ø¥’mÇì2°žû ³«Öû’dË3;쑹Š}•Ùnïûªd?Nlg°ïiìTfï¼Bì›’ý€Y?°s5¶7³­W–nÇ…Ìþ1‡Ù¡[‡Ù¤øÒý>’Ùm`›kìå¹ÄŽBìò?³‹ÁÞ}\ó?³£»‡üÏìX°5v³#âˆý‚ü?‡ýöMÍKì7äf½ÀÎÔØîÌ‹!ö ùŸÙ_fÃÿ[lOb$ÿ3»l}=ý8±ƒ{”¶×&ÌÎ{mŽæfD{Šü?›ýö ] ¶ ±—Éÿ̶û’Ʀ‚íHì5ɾƬ l¶Ævdö ÷/·$;Ùc¶§ÆV`ö›e¥åöav ØûÛbg|SZn]fg=?[±[˜-Z@ì]Éþý±ýÁ~¦±O0ûÝoÄÊã¬u/³ Á>§±c˜ÍnKlɾÈìG™¨±aÌf¶&¶†d3™ý lWõd6=„ØÆ’íÁìj°•4öÈlbüJl˜d«1k{ê1žÇlýbÛJọ̈ĚÁîÐØ¹ÌV "¶£d?a¶Ø'5v(ØæÄv•ì3Ì^œÅì8mÎl…&ÄÊc«u<³»À¶ÕØ»1ÛØž’íÄìr°å4ö ØzÄö–¬/³é`=ªØ7ÁÖ!¶ŸdŸElØ;“ÙaÜG ”ìVf«€] ±ý˜=^£´Üf­0;Bcë3{® ´Üfw‚m¥±×%¶òBb‡J¶5³KÀºjì̶ÛG¬<ß²–a6ì³û³ÏÎ!6U²G!¶=Ø·56›ÙÑß›-Ù÷™õû˜ÆödÖTØ©’ÍcöÄLfjl fÿ©Lì\ÉcvØÆ{~±·üø¸)ÙÌ.{ëÅ~ÆìubWH¶d&±£À~£±Ï1û[9>Oì÷̆€}Uc'2{¼ ±ŸIö-fÝÁNÕØ®Ì†Mä~]²0{x³½5¶³‰=-Ù8f×­£±§!v.÷©w%Û€Ù9`/ÏTìfGºë*Ná­×g;ì}¬ ±òtßú¥€¬¿Lw1Íij©`.ìÈ Ó¸ ?”1—ËØ!¿-¡-dhªÔè|øôt¦Fr£k·cÖ#\È—»°l-+óÚ›,qB|b ijÓÕåå2(žPÖˆ|A€pŽ* NôŸµc:}V´ïX³Î üè}f7 õ½šï&”&P^€ÒwºZ9(³¡0égv‘צÑûD¸9o—ydä¨ÈÑ‘c"öNÑ| “U®ÿ4¬?J¸DyYŸ P@ÙNyq]¿ô ºLÉtfÞù˜¤ÌŸþæfvó37ûÞüém·’/-õ›öûéØåþ¯Í—W5ç­£/””ÈþÀFÖò¦k -]…})ôúZU=¡L‡R…#ͱm>?SC0¿Mef0˜odUó÷e”ŽP$Y8¸¡KlÒoý [þIWû¦Þµš zhom5~£ëƒcÖäiò‚ÑwÞa>õžð÷i\låE1î'DÅä—.yíîCpIFëq&R u€.Ú^ÆËr'—‰Œiº6!êö:‘„ü ¤ ù;W™ú(¡¬Ð•ì5ë·rs\ëY!Â2àL¸ ^Už©ØB“t*íóŸQ÷¡YøßyÔVwçrÿ §¢YˆrÅ¢¸|K#)GCÞʲuR®rx (« H2Ö­il~ ¸Ú§¯[8& 1µs•Q~…åO‹½§·ƒiæ{‹sO‚-ÉUf×mÒÓùgÉÓéŽ1`i1z:úÇÐûYTUà¼%Âbïé `怹eQž¾’ÃJ*I:÷ôÐíµÕ¨0—=½Äbðô*€¾(vkŽcOç‚ûËÂÜSFNïéÞ@wMÖ£dئ VXŒž>@Ëã½ä÷_@¦¡º9ÊÓg²YmÑ{úvŽÑÓ»Aµ³(OûÐ倉¯ zÑIqxÝÇÉÓ—²ùüA®ÍÓ·³K==òï9\§ç³•§‡AÙE’÷ótÄ<‹˜˜le”²PR1ÛÞÓNaf˜’)Î=½l‹eyÝ&=½¹˜<½@9ö棧§C? ÏOQUå”ô)öžîf˜ÆÙÊÓP–B‘¤sO_Îb:9[­FÇÙìéSØÓGÙÓûvB±¿g9öô+à*ƒûÐÈé==¨u £Kô(yz0ˆ=SŒž¾CË—ßવµ嘳”­«@Y0Eoë†SŒ¶>ŸÉÔØ)ÊÖt}SèÓŒ/æÐy_¸ù1²u,²õvµ˜¢ÙºaV©­W@öFŠ2•­ç@¡-/IÞÏÖ±ˆù1Ù™Zÿåu(3ím]Ì0M3Ûú· fg)?4|”m}ìÙúS­QØ·F[¿½2ô×2TUB¹™Éʳö¶NsL\¦²u ”¡HÒ¹­k‚.ÌT«‘4‹mýgÛú{çòdøÅzg8¶õà:ƒûc²½­ûœ‰èË@+Ý®GÉÖ‚¸a´u#ÊZ”·Cþ-a“ï³Eæ‚~ò\¿™´N4â¶rœ5a²2z («2ôFï”a4º¨iÊè}érÂ'‚¯*†Í £'ÊA(’tnô0Я§«Õ˜9ƒ~g’¡ÿ. ðÛ`’c£ŸœÈÜ p·':í¿·m ô€%£/á™n4zgúðå¸j NLârMT¶ eÏ$½­“'mÝ ÔêIÊÖS§“­Óhæ1•l½h:ÙzÄD²õÍ4ìÿIš­“'–ÚúäXÔÉ4QÙºJIÞÏÖ‹sw"ÇlLS^Ɇò”™iö¶î¦Ì„4ç¶®vÙDåy½%m]ç$ÙÚ@ óM3Úúäìè¿OPUÝ ¥”Cìmý0O¥)[çC¹†ã„{Ùz$è¯ÓÔj¼6•mÝ(Í`ë0€¯£ØØ Žm]Ü,p œÞÖÇÇ3:èÍñ¶¶þDpšÑÖ)Tèò}\µçA•E9Æ+[? å½­ 'm= Ôþ ÊÖ/ç’­—ÒÌ?4‡l½!—l7žl]AË&h¶._jk7ȹ,[›W¶.Nee$IÞÏÖ›Ó1GS•W^„âåµT{[OS<ž™§S󼯮+?ÈkJië^ÇÈÖͬDaíS¶.}to­ªSXånн­¿Ó̶TeëPB‘¤s[Ï}-U­ÆW9lë~©[ø5ƒÖÜǶn î p}œÞÖ^@g­¯GÉÖ§’™ˆO5ÚúI"—qÕŠ@…¡œ#ÉÊÖoB HÕÛzKŠÑÖs@]NQ¶Þ—M¶þfþõ³ÈÖG²ÉÖë’ÉÖ}ôQŠfë-É¥¶n ù%–­“•­+A™E’÷³õ±$Žé÷då•]PÚBù*ÉÞÖ«ÁT³#ɹ­-`iË“¶La[g%[°›kb’ÑÖ­¡¿= ¥/I:·õ» ëj«q5‹m=-É`ëy¯%q±/slëQà¾7ÕÈém ô5 }ô(ÙÚÄãIF[o¥å˽\¨jʼnèÿPŽÛ8eëo¡D&ém}|œÑÖkAÕLR¶¾”I¶þƒfþ•'“­Ý²ÈÖ‡ùþ‚NÓl}<±ÔÖC ïeÙúH¢²u'(ïB‘äýl]13”¨¼rn,+ P®Žµ·õ~0Àü>Ö¹­Wõ§üp<ƒmýÂa²õ,ç¹°'Æm= ú7ÐÇŒUUíe”þcím]Ì0å•­Ý¡L…"Iç¶þ1is¢Z1lëÕc ¶~`]»7Á±­çƒ»>–¹—œÞÖ#€~Ô¢GÉÖíA¼=Öhë´|ù"®Z%PóPNËeëcX™8Vok¯±F[5VÙzÙLJfþÞidë–“ÉÖwÇ­W!Èw¬fk¯„R[?ùb×éõ1ÊÖÉP~„"ÉûÙ:1¯"fè啪PA©3ÆÞÖ—G3“ Æ{Œs[ïÛ>AùÁ+mýÙ!²õª¡°Fm=úõ1¬/­ª: ʯPfŒ¶·u/0ÛÁ´£låe(’tnë’QLO£Vcá$¶õþц¯±hF±G9¶õ{àÁí3rz[ç½:šÑUz”lâûÑF[—¥uŒHW ëQHü(åé†Pž­÷t›ÑFOßÉTÖhåéÉÓteSè"…<?‘<Ý|yz?‚:Ö<ÝfT©§ß†\ u:0Ryz W(’¼Ÿ§G!æ›Q3w¤ÖÿAÙ¥÷H{O׳Lû‘Î=}yü?J™¡M{úüAòôwz °ã#ŒžÞ½ôF¨ª>¥,”7FØ{:ÌŸ#™I©<=Ê—P$éÜÓ-@¯©Vムìé«# žvhA±µF8öô‘áÌÅ‚»2Ü©§ßZè~=Jž.Q2ÂèépúpB&ù…ë¼áÊÓý¡|6Bïé±#ŒžnjååéãÉÓ)4óÿeyzÞxòôÐáäé«ñ4~„æé±ÃK=ý#d3êt'^yz'”VP$y?O/BÌ­áó^¼2J”P¦ÆÛ{º7˜`’ã{ºØ%ÕƦ²§k Oÿ3ŒLV>Þèé_¡ÇA?>LUõs(áP¾fïé—ÁTS¯<=ÊõxV$éÜÓÃ@ïW«q<…=]/ÞàéVW£Xó0Çžö7\ ‘Ó{úèPFû½:ÔÖÓÛA´ˆ7z:‘ —+ð/²~¨òô,(ç‡é=½x˜ÑÓCAí¦<},™<ý4Íü'§×'“§ç%O×CÐ3Ã4O/ZêiWÈ–­M‡*O[‡°2Š$ïçéMˆiŒ˜#C”QV@ñ†òê{OOcÊÌ’!Î=ÝìÎ¡Ê ‹“ØÓ=¿&O7ð" k7Äèé²Ð^^«ê…Á¬$Bùg°½§¿ÓÌÖ!ÊÓ 4€"IçžÎ}uˆZòIìé¾C §Ô#~Å Õ2ر§ÃÀ½.ÖÈé=]è  õô(yúÏAL bôt!‘Ë—sÕ>Šr~¤lý”jCô¶Þ<ØhëÙ . V¶.C³ÏŽD²õw£ÈÖ?'’­ßD¶î ƒ5[oTjëW±l0HÙº"”<(’¼Ÿ­ˆþ1nƒ´þJ8”/ÚÛúe0ÁlèÜÖ9`iË“6e[g~A¶`Ö±¶ƒþ:ô6UU <¥ñ@{[_ÀL*˜•­@‰…"Iç¶^ºŽ¶mƲ­§4tÕy¯äbW plë‘ྗkäô¶ú*ÐÞz”l]ÄœF[o¡å42äLFF£ÊÓßAé1Pï铌ž~TíÊÓ­©sö95†<ýõpò´Gyú§þä驲Ð<}²©§‡AÞϲõÑþÊÓ] ¼E’÷ótYÄ<‚˜àþZÿ‡þÊõ8{O ¦ ˜?ãœ{úe°(3œÍž~q/yú1ûsa‹ãŒžýô±qªªQP¶@gïé@0KÁx÷Wžö„2Š${úp?¦{÷W«1v4{úÕ8CWý>Àz(v?Çž^îfs¯9½§GýèT=Jžîb]œÑÓ¿ÉåIËWsÕª€Z€rZõS¶¾Õ—•ô8½­ËÅmý¨žqÊÖ£¨söñ¥™ÿž¡dëV£ÈÖ¦~dë—T1N³u¹~¥¶žùr?®Ó›}•­S¡†"ÉûÙ: 1¯#&¾¯ÖÿAyJ`_{[_‰Eÿ¦B_ç¶Þ¶c?å‡r#ÙÖ»v‘­ßP…mŽ5Úz!ô›}YÏUU å8”GbímæC0á}•­ƒ¡¼E’Îmí:§¯Zülë/c ¶>ÜþG±—û8¶õzpõÁ}aäô¶žôz,£/ëQ²uˆC±F[—§Z«æ]@½r†õQ¶nåÙX½­[ÇmýOo¦2c•­çSÿìÓžfþÑ­‡ '[7ëC¶Þ‡ Ž±š­[÷)µõZÈ5Q§o{+[?ÅŠ$ïg둈ùºÇ<Þ[y%ÊPbzÛÛº6˜§À´ëíÜÖ—b˜Mê£üÐ:žm}îS²õÝQر£­×C¯}cŒªêsP¼ ¼coël0ôffLoeëx(_@‘¤s[7½²·ZÃØÖWb ¶v˜ƒbkÆ8¶õÏfæú€ûÛìÔÖï ºO’­ƒ¸c´uúpuÃ<ÔáôfeëX(Çèm=*ÆhëÆ –Ç([¿Gý³]Ùú›û“­ç %[4“­/õÂþÑl=Ê\j냣P§½”­·AiE’÷³õ<Ä\3sÌÛ½”W&BùJv/{[÷³ ÌØ^Îm]ìb³òè!l몟­oöd` +ÓËh럡÷~´§ªê'PB¡|ÝÓÞÖ/‚ñ³°—²õãPþîÅŠ$ÛzèݽÔj̶®ÝË`ëæW¢Ø¨žŽmí ή–‘ÓÛú§hFc€^жµõfMzm=š U7ÌŸå‚rÖF+[çBù«§ÞÖó{mêÓžÊÖ?QÿìCW6…þú’­×"[?M¶® Å=5[Ï.µõí(–'³l­­l}Ê (’¼Ÿ­ßEL]Ä|¥¼ò (/FÙÛ:ÌÉhfò£œÛºØÍÑÊó²­»í$[×° ……Dmí ÝÝ]«ªµ+# \ëaoë]`Ú‚Y¥lý6”ZP$éÜÖ³@ŸR«Ñr Ûºg”ázqÀÝ Z'÷plëàV‹6rz[›€f­¡GÉÖǺ3Ñ?ÊhëDÒ-˜¡CÝ•§_R9Jïé =Œž~Ô¹ÊÓ-§éʦÐ?:†<}¨?yú­îäéžÚÖCóô†î¥žnù–­}»+Oû@™ E’÷óôÏ‘èÿS©õPB¡ì´÷ô‹`|ÀlŽtîéL°'»+3lˆcOOÚNžî ˆë¨H£§[A_ =D«j(  Ô´÷ôÅfÆù%RyúG(f(’tîé5 kh«ǞΎ4xz6ÀK‘\ì Ž== Ü~pSŒœÞÓ-¾´§%O—1+Òèé´œ¾®þ«#ÃQˆK„òô×PºEê=ýk„ÑÓoª©<=¬yú7ê ý#{’§]ú‘§¿ïFžÎFК§íVêéAw³lÑMyº”w Hò~žö@Ì4Ĵ覌r¦++£¡üÝÕÞÓ{Áts²«sO¿Ö'B™á×Xöôó[ÈÓ3œíÆ…-êjôôè_AÕUU5ÊF(ýºÚ{º˜'ÁxuSžv…b"Içžþ¡ Ó=»©Õ˜Ëž~©«áô〵Qìî.Ž=îjWæV9½§ã~4[’§Û‚XÓÕèéc´\],úš‹ršwQ¶¾Ö™• ]õ¶öìj´õPÝ»*[ÏéC¶.O3ÿ°dëæ}ÈÖw:“­_DOWÍÖž]Jm= òù.\§W;+[ƒòIÞÏÖ­³1ƒ;ký”Pju¶·õÅNèÿÀ”ëìÜÖ»À¶í¢üàÙ›m]ôÙú5þ(lC'£­ó _íÌúüNªªiPŽB™ÖÉÞÖÑ`¶‚ í¬lÝÊ*(’tnë:2ÙY­Æ»1lë½ ¶þ`O{¾£c[¯WÜ#§·õã@ÿîÄè‹z”lâ»NF[—¡uT‹@½ƒruT¶® åéNz[w2Úúf¦&uR¶^k&[·¡™ƒ²õ 3ÙºQGþûjÛI³upÇR[¿¹êôeeë(´å…"ÉûÙzbö#æÑÊ+] ¼%ºƒ½­«ƒ)Óºƒs[ŸkÏlBGå‡à^lëâõdë¯tEaGÚm½zèïµWU] ÅÊêöö¶Îs¢3#:([†²Š$Ûº1èåÔjüØ“m}±½á äŸvð?Š­ÖÞ±­ëîB;§¶~h- »ô(Ùzˆ[í¶¡'$ÈOŒXg·Sžîå£özOloôt#PÏ·Wž>MžK3ÿº]ÈÓ³£ÉÓÚñßi‹þ¯½æé‘íJ=ýä¨Óõ¶ÊÓ[¡4ƒ"Éûy:1WÛqÌÚ¶Zÿå(”)mí= f+˜„¶Î=]lA;e†‘Qìiÿ÷ÈÓ7˜ˆÂ<Û=}zoèGÂUU?†å«p{O¯ã fA[åé9P.·eE’Î==ô®¶j5è Vø¦V[CWÝ à‹(¶G¸cO»€ËWÓÈé=ýcFÍ@/¶±õô&Û==Š U7ÌŸeB9kÚ([[ œ ×Ûz^¸ÑÖý@…+[ßíN¶Î§™@G²õšîdë™mÈÖÕT®Ùz^›R[ßjÍr:ËÖÀ6ÊÖ'  „"ÉûÙzbê æ`k­ÿƒâeEk{[g€9ц™E­Ûº;ØMm”æE²­»¾C¶®àÜÚhkè9ÐÝ´ªþÆÊp(WÃìmý9˜p0ï·V¶^ ¥&I:·õ# ÏµV«Ñ"’mÝÚÐU¸‹Akz˜c[7·\”‘ÓÛº$”Ñ)@«ëQ²õ¯ âZm=ŸHºa¾HKòC¨òôj(•Zë=½>Ìè陠Ά)O7§ŸÍÝÈÓUÚ‘§èFž~3”< ­aš§×‡–zº1äå,[cC•§½¡<E’÷óôáôˆ¹¢õPB ì ±÷ô 0Þ`6…8÷tØ¡Ê 뻲§'®!O÷ð Ö‘!FOAz°VÕÊPæC©bïé ÁÌ$‚9¢<}J/(’tîé·@W×VcXWöô”CWýÀ‹!\ìò`Çž n¸,#§÷t  «€FëQòtY„=½A.×n˜ÿÞŠ©!(çŸVÊÖû¡t ÑÛúÃ`£­_å¢l=ˆÎ9|Žu&[û´![ÿÓ™lým+²u‚Nk¶þ¹U©­ã ʲ5·•²u8”· Hò~¶vALbš´Òú¿ ôP.ÙÛús0á`~ rnëçÁ– V~ø¹Ûú™7ÈÖSX[qa󂌶 }ôø UÕÎPÞƒÒ;ÈÞÖ`žãÞJÙúnKV² HÒ¹­€îÞJ­ÆœNlëA[¿°:Šý´¥c[Ïw)ˆ¹ŒœÞփGÉÖa ^2Úú-W¿‚ñõÊiÜRÙúr V’ƒô¶v 2Úú+P]ƒ”­gÑ9‡Ošù{†’­w$[ßhA¶~Aeƒ4[»¶,µõtȧ[r^j¡l=Ê(’¼Ÿ­›#f%bú·P^ñƒ2J@ {[ŸmÎÌ0ž-œÛºlXKå×l믒­_P…½ÛÜhëÙÐ/µ`ýñ檪)P~‚’ÓÜÞÖ‘`>ÔBÙº ” HÒ¹­o6czR µkÛ³­?on°õ€ÝQìéfŽm½\ pŸ9½­z¡9£ÏëQ²õH_77ÚÚ­9õÖÛ¸já ÞB9qÍ”­kB)l®·µOs£­¯6ej|seë7è´Ã‡®l ý¯‘­ãÚ‘­ë5㿌 °æš­[4+µõ++£N{›*[/„B[^(’¼Ÿ­!f7bf4U^éå(‘Mímíf!˜à¦Îm]܄ّ͔Z´e[ÿù2Ùz€Ž(ìÇ&F[¯^úÛMTUŸ„b‚²²‰½­'‚ù¥)3C›*[÷‡òI:·u}ÐËšªÕ8ζ>ÛÄ`ë›á[¹‰c[®¸3ÚúM @‹ô(ÙzˆkMŒ¶nÙ„l½†«6Ô&èÿ+[GAÙÒDoë¶MŒ¶®jIeëoè´Ã‡®l ý/6'[OoC¶îݘl]Üû¿‰fëÁKmýäΨÓÅFÊÖë¡Ô‡"IG¶Æó¼ØØ3u¶1G­n¤Ü2ÊA(Ù»3˜÷À mdgì3nó’±ýÀÎm¬Q¥ Û{ûBCQØ? Æþz$ô着n†ÒÊç 5c› j±±ŸãæQmÃMƒB[^(’Œ-hYÕÐż<¶°ánû¡À"wô¯„oDþZ±Ûåç4ôb#Xã˜u™XÔ'¿VK¡–‡ú(>+´¡ªÅ¥¬$A‘d¬[`l~sÞ./Ú…ú¥„¨“ Ô6yJe(kØï¾GÁЖ—ýçýÒ°Ÿ7T»ï™PÞ}}_¤ÝàUÖµq÷ùAŸ ½’VÕkõY™Å½}¿tL˜¨~i”æP$é¼_zôj5*…r¿4¸á‚?à÷ Z©ï¸_êîpƒŒœ¾_ªtЦz”ú¥³õ˜ÓÀØ/-#2^>Ce?N ô]ÏÞúü÷!ÖÁ'ì¡|€¾SÊr»¾ê”*†P§´+˜:¥[P§ô{0uJ›ëñßÿEОúZ§ô‰XÔ7ßR›ŽÿßbÙ:²žruM(…P$y¿cí_31>õ”Q¾†Ò Ê¡@{O¯SÌçÎ=ý(Ø õ”>iÅžž±œ<= À7 X'=Ýú{лªªÖ‡² JH ½§ïÖe& Ìé@åé?  …"IçžÞº©¶©­ØÓs ž.XÈžU×±§SÀýn¶‘Ó{º#Ðu@ëQòtˆ'ž.ª«yújFÆê=ýw]þû×{ã.×±óôf M•§SèŒÑçbKòôûÈÓ¾Aäé“uøï_#èr]ÍÓgê”z:ò÷,[ÖQžîe;IÞÿ@[QyˆjWGYåzmVÒ ”Ô¶wõ÷`¢Áœ«íü@ûØêu•Þ©Ë®~íYrõ7êpaËj] ý0ô µUUc¡| eDm«[²«›‚Y¦JéêÝÖÏj© è bzÒÝ}Þêλ¥¸‹#îÆns4޼ãívð-ê`7ž·6¬-wcËZB}ªJûT«ÄãPþ®ÍŠ$oiæß–Ç„‰¼Û%¹•hK´§€ýÅŠ =VµÙaóró§'<Ä–÷·á\0aßÕÝ©É%f õk©-ý”ÁPN×´7ÅÇ`BÀ®é¼«[ Ö½¶2ÅÍØO>C¦˜à÷Z\XAM­Ë9ݯ°á¹Ò.Gž÷½¹–*® w9>µ¸Ë©ÍΦÀÅ(¶MMÕ?X ]ÎåÌ%ƒó6rú.g/Ð@OÖСÔå¼¢Z-c—ÓWU°ß1Îu©&—óB ¹A~ç?ï>âûÑ\þyw3”P˜4ÅÔr—ß@]ÉêåHßæ»åGÖ”O† ¯'j=ÿœ¥;ÿþ¡:Ù5U¿Ý”ú­ö4ókBýÖ°¦üûQtTþëøJJø0ñâƒQ•Ÿªë«ò2ÔŠ(=ÿ²¬ÈªÔÌæB¼RƒCWªPw÷ÇÍÞ¦ú´…FúP^uÕzz@Ù E’Üz } µOD¯l²~±;d&ôšŒ™L±‡õmCt˜ù·#󯘓šóŸ—_ší](÷™oïÂ¥É}Hæ·þ´¸î¢§^Ɉk{\-¾¡C¯ÉÓ²B¹Ë{xEæýá®-ì´ˆú‰:âu¨‹¡§u¥ðš­ÎköTwqùÑû„ÚêGPQÞ¯ Fi«l dî2Ÿô½j•òïü7;`þÔê–½$Î+Õ8&µºjN_5æÇš]|ŠZç÷¢Qè9‘/ä"¶“è¡mÆD¹{Q‹j"BV#¤BvTsÑ 1—­Ivö3€ `ì…r—÷—F@þ*ÀØ”\E>?z Úƒx ,ý?­2•ͤƒt•9[•±1Àl× ÜwU´ÚȇC.‡\Φ6â3#© ÂêÏ,)ý öZmúÐ$¤ŽNrÛ4÷"¸¥µi/ärgùkó…\ž]$¯*32%¸¨¨Wßµ“¿ê**Ò•Î1ë3UøÈû>ÞV¬„bvTÖzxÑw:¸ÓU˜[jähÝâù/J÷ú Ðñz”޼-@¬ªb\½ï+Sïoýë¦ ÝéXا k‹ò ¢×GæÏk(¿¬+ˆÞ$“ë(¹M&×Sr§LnÉèüM å—Õ} Óìjè•%+V豞.™ÜFç_ŠxAßmC6ä®ÇÙµ{Äyfþ^QÉæÏ\¡.öƒb&µ ûI“Òœ#>CŽ0‰ž_bñ‰ÍÿËúX•èÐ?Î ¡âŠ r×É¥5Ū› zˆË(ùdÇ~2!6oé21]$"d¢iAÞYQØü"KUß-ψnÌô±—<§Ü#?vŸ|ìaRôqvé[0y_L³Ýòú¯"oº¦•y·üHySl3«9ïF™Ùò F¶»Ðzœ–ç-+ÑùyßÂ\ÙßOøK%.kh%uÈïå3Vä3_ ýÿ©ËÞD…DËš‚[Úrm®EÔw³4ºô™Ð«²î»%¢~Þ ·¼ngªËó_?¦ƒj/¨’}¾ËФÃg‡ &„™˜¤ëÖàŠªº¯@¬Ì"}ã‰ó ^£%t–FÄÌŠò,­Ñ#rнY>*¿Äzão²¬<ÿGTQElßdL¬È=ÞG25³’ko?ì‹‹Ú¾(dFEý¾¸,/@WûÑ71y{„Mêö¨/³}Qœ‹Ÿ<-çLñ¶ 2^n¾ŠÀ*ÜGyyÜZå–z;ʯ,’Áüæ1_Wy·]éä¥àµ~ªG[‡/-Z/¤“—ª¡´ß{}›a­Àô­8¾¾9fÝèËû ÀPû3åí¿Íx\YpŒœÜ;c¹ƒKzÌÇ?=J\o;}Üå ê³MA¬@Ý+¨…‡×œéÞ.¹£èÜßXޝêïbjQ×™fþß× þnd-êï‚*ðóÿ|8¨+Ê>åSZ¶\z8ó[€ªúTÑ3éúëŽS@[^:BPáÝÈän ì"&¦\i_3è ÇêÐߎ‚ = ¨‹‚FyÈ>ÂòT–ùéÁTÏüÏÌóZªo—}^d‹Å åóòN–Ù&É÷'B\åõŸ7w@Ùç¼U³~J](’ŒukS}ƒŸ­eøÝþÜ2âûpü3”WçþqP?…:Œò†sÿ–@^ÒSæŸû¯Vçþ7ÊsÌDÍï5ùÜÿJ5ŸŸÄ ÐKåœûǺœ NVx¾™ˆy 1þˆùˆò~1…îUè€N§ròt3žõfp™”ÝÅp_z ïâ­Î¹ÛX‹"”ç­–Wä%Ï ¨Nòùã¾à×ÌÈ¡RòŒîÏrLYRNGÒYÐç Âmj5©¼:ù~De”ñ¡V†Ÿ¡V3À)}nätµŠù)È4=Iµ ñryc­•SgáåA<Š2iejõ{Y憀û§¬ÓÕj;È ¿×“T«çA”µ©U·rêt<Ä_希§´2µZÉž´/¸OÀ7rê¤\ö¤õ.ÚYRµL ²Ë«µ¦¬:/?æÅD”qÃK•ÑÔP­-àš‚;`ä¨Z¸Z@i{ ô =JÕJq´¬±Z©Zòt«ˆí(#Q+#ÄP­ºàž×ÁÈé¿ÒºR†ÑT ô(Uë ˆ(›j-•$_7¼¤ Ù_FÒ^btÞxîí;o ‹vêLgÑCÄ©ó2œEïTgÑòÔ™O¡×Ñ)tŒ8r˜ó‡,ÑF§Ñµ•<.ŽÎ¿XÐw§(ª w“¹àÑ%Öqâ4Úwþ.ê«*›ófz™|ç}.?§‡÷Z1 ´ +pÞ“W`¬¯ÀiÊ‹N-Â+7Xèß@`}‡‹ºâ.C~÷6v‰±zÒŠWeÇLôÒ¾<Í9|ŒÌCQWËè@”Ù•š*þõG&Sþg†S|qhò‹ÌÿIžÎ{òI~EZÛ"ºføËÚöœØ´IÑ«'èþø´…üiV—2êˆuÛƒ•ɬðIõº:f½ë©°€õDW(o8Ãߤ#ú3üÞž8ÃO'‡£åñwàkž\ÞRÃ9z2ô¡g³nsŽÞÔzPË—Û}¢|=±uO˘=ô'ì3Àœñà•xÁ›ö„¶i‡Ùç¡ß´¿ÉCôw:í‹§1ùµÊëÀ/¢¼8wy0ttÆNßvò™Çßn•âAC éÖÆ1,ìï¡m›îR÷ñ² 4ŒôÓÈM —’ÕY0ÈÛwËgyÖò¢ª¢qÈ+ý¼®S}¯íñ²TáeË*ó¯€ÝˆžsË%×G^›â<ñŒÛœS%´C-rÝúâc>qW­¦0µx‡ó;ünµ)_”ø ~6Ç[[S^žeüíŠõ‡r›òÆ‹’oÁD‚)vµ¹(‰É?óéy·Èž%r5é÷¿ˆñáùS¬JøýïLþý/€³nð°+®Mèôªeéé••Gþô¿|¼+Zî5‡¾zKWµŠ~PæB©Ã‘|ï¬3ß;;ëÂÌ0‡å*æïݽ“nzåÝuõ}ò>iÿhk G]Toï'OÅMÚah9Àr7Ú€8—è.Ïwet¡åAÿÈNWãqè² LCȯdWXýÑæ.. ¸‡(¢½ý>ÀËÅØÃŸ5aý]=¼§«ÖÃwÅ[Š8ѽëºöŠæ7±)½ä¹zlA’ßúûÿ(Î×{È>YZ¼ 5ÚÈ’o|Ÿ äoŸr@þéÂ+4©5÷¢Dnòĺ7À“m@º k ÀzŸØÉ4^‰a§ž-1ñú#ÈÓ&ˆvªGô9Àp€¿R^_ ñzÀ¹ÑŸ[ì=Ë{Õä”ɸWÛˆü™ò¸{r*ÇD[±`ȾCvš“rwƶicý–˾¼JYÍ¥XÍ"çBY`Bÿt$6ÿ®µ¡IŽ—ë…¹ï23΄Îú®u¤‹ËŸÅ¿ÿƒÜ…_¿«>v+”fP$É÷ãE§ÛÔ¶ÓÕõJÜ+MC|q ­Ÿuåe“ å[()”7öJÀ¼fÐ]“m¯t<æÓ ¢Wê%z%ê•<3cD¯´´÷J.S©Wúㆢл"_Ú+é/úb äw&›À7ÿåK{¥eÐ=¡?÷ZÅ™PÎÞeeGÆ© ³Lw¹Šù{äSƒ}\èëР›öm=QKUKÕ mÝ=›u­­×y´õ—EñÖöÿ˜îÙÖ'q[ßp‡‹kpפoëéÿȺîŽ,ùÖ÷ÉÜÖ‚¼ùWì•;ºöàîNM]nÔpß›a䨥ח׿àÖ‚`äŒ ý9nènˆÉELmcŒÖy½Í\_pWoÛÔ›ù®Zèz”®!žabBkåýćk­¼Ú$E#—~,;Iµ²þü?é¶lÜr;µƒ²–ŒÞéuÇ„Á°ÒB•ÁÌgFÝ–»ìÍ®Þbu<Ê®y[}êQ(}¡HR¥p¯'¥¿‚ÈʈÜ{KY~!”›·Yyê–}«NsÌ£·LN‡V´»ö¶jÍ3¼ðýg6ÿ ` ¹eº×÷Ÿ7™¡âÅ×o™èûϵøþ`(Šýù&бýþ\YpŒœþO:Ðc·] GùûO;o=tù&í2sá#ÖZyòŠo×ü¢Ü~ôUgUÄ,â˜ØB1ò"¥ÐgÍüäÉYaxV:í.è‚‚õ´Mž‘C Z›ó[9NÛò‹\VgÔðò\ü Úxb]ˆ/P¥ä g x@aÒ¤ÿ Ÿ¢º°K®ÕD‘- ŸtKÞÝùC^^üeµUÃ/º"j=GYã…Ö…üôMxžÆ_Ô¾ÉÏ€hAl-+Þ¥0~¹ÎT?PE ã3(m Hò~+ŸDŒ 1›®«&arê+³®Û7‰þ`>3ñºó&Ñìs7”‡S=¸IfÒnt‹Âj_¿W“8té^Zq£=¸I¼|ÝÐ$Ö¬ƒb÷\sÜ$æ»v¹—Œœ¾I ú%Ð=JM¢ˆµ×MâøµÒ&QvޱI¸!&÷ºjÔ|ºÒÌ¾ì¢ ÃG»S“¾æ°Iìÿ…¶åÖ«\V3Ô𻫺&±¢7Ä×T“˜åò5V˜ÔÜ›ùûkÆ&1ì5‰øëº&qè°j-µ …F õ†üØ5}“(wvÞ…+,&"¶¬Š54‰ý :¢(jïC©E’÷—9Qg®rÔËWT£H€ò”ñWìE'0ï‚rÅy£ðûøUåâ®Ü(ʧӎ<ÿ7cQ˜×í¬ïˆ¸ýUk4bÃËwÞzvýÄ5EÜÊ‹ÿî‡ ®œ Ü#§¿–ôÐÿô(¹>ÄWŒ®/þÛD߈Îj` yLd V6\"ÅùGsCÎXD¨'B§_Á†ð1»ëßb×ÿäF®ïð·<ñóš_diT²/_&rÛŠè}—9º#¢Åg¾!H:S]­N©–'ëS°³á ªB‰ÅÃü·‰.P›üM[o:bNÿ¾à²2Ô( HÒùí$£­ê#vbÍ—•­¼ Ì„âwÙÞV\bf(˜»—œÛjØæ+[Ý’×]ÂV›ÒÈVÏ(‹Â6\z0[% î»Ë7ã’c[µ·Ü#§·•7ÐÇ€6Ö£d«Ó™uÙh«¥—t¶úùG¶z¡õ.+[]’×…þÓo’­æ¸­~»èÐVSýû%Í:ý.ÁVC í-ÕZ^²µÕá‹l«iëÕCÌ3cíuQÙª ”P$ù ¶úòÇvAì¥ ÊV 4€²ý‚½­ Á”\dæ­ l¥në|ð¢òÕpwW£Æ“¯ºØ€Ò†_px‘z.&o–»üÆ_€y"p:/¨Žž†/º[2tò_ IˈýIâ¢zZ̆‰¨wUQ» Q~sÚ‡XÊÑÍäâ‹ÒåEÅÅlölþqŸ7ÔÉÅ"‡’õô  ñ6uÊ›`Šô}vwñó\hmðOog,ÔÕ"wãCU2šê;¬(Õ·•뻢(²ìî3åù¢Ú ê—sê@KÃ6_ƒìAslïó&ÜÀZñÆyŽ]­bé*qÔ#çÕ~¿x›Û`Øy>ÙÂøén7 ˜áª›fÕÀåƒ 5rÔþûsÿpö,£c€zêQê¾Ñù¼±È–dþg5¢çËmG›èe çXMäŠú¹EÝBÙëÔ-ܼ%}`ýRÐù‡óö¹œñ³wóåPƒQ(â›s\Ÿ©gé¢7ïw‹¼ÒòûsEþL5yþ á9ýE¾O¾»¼Ö- éÿaî]ࢪ¶øñy#‚Ë‹n’Ö•´‚ÔâÀ ž)PJ1{XvK¯Ý×tF­DÅaŠÓqÊ›¬´¬[ieI¥ˆ”Ae@Mß ÍtÆ©D+DSç·ÖÞë̃—Þÿçÿùü~}Â9g¯ï^{ïµ÷Zk¿Ï+Dºñ—Páû|œ:ú×@½½ÿ “v Q2)Þ9ŸjOV%™(ˆlûäàE‹ŒCýé±R•I1çÊ5šDÈþA´Ý¿páÉ'Þ03§nŸ=å!ÿO0ƒ ãvm‘Ÿ WÿIã»t>#ĵÄ`“'Np;z!¼ô~($3£ ¶“`S<Ì Tï!r±7<3'<˜™í€èAˆ7ˆÁÁt;‹Ïä gÔ1Äö.Lå›vN$œ÷d 7ØЉ|C“ÜŒò°õwìÿBC – $”ÈÍ3:äá {HÝI¹ ÷-á ægüo òà$÷~>îýD~KlUÙ4ñ~Ý §®8.tÈo?sè‚C¡Ìûm'Ä='Ã¥jE¤sj‚Yö˜äóJÞvÅVé98š!:ˆËH|‹V§n§å·¼´Oí™ÙNh¿H¨Êª#üƒ9ÒÿüÎéÔ_˜#-þãY?óþ/EšK‘ðû‡?f|õDµqª'ùgÕ›ysÊ£DAdë3¾Í ågÿZŠ¿ó¸ÚlÞ$Š–(oon(Ÿ%Ì?sŒãx†òÿ¬¶•Oÿä†òîǘ¡¼Žo·»Ž_ÁP²ùߟx¤G(’îx˜¡ (`án'ÜÁŸÂ,å‡DîüsxS±Wp!Îç Þù)PÐR>B í²†€B,e‚}B°œ`fP¬ñD~õxxfÖÿ¤ZʳÇ8âibL'h)¿'н:y¬eKù áºnã±@n°!¼JäÆŸÂssÛOª¥|š{9Â3=˜PÐRÞK ¯ ôpˆ zé|J7ÂÉ„K æ-eãQNþW“Ü”S-Ö^BHÄ þh¨Å*%ê-?©­p|=ç0ë·Xp‹õ&µÄæ3•M‹õOÂ8Æqá¸ÐÉÑAýŠ #C¡Ìb]CˆÙÇÂKW~”)¼Ø°E ÝulBõuùcª•YršY™>ì§Ëë?3+sßifezÅMjÛe;n\.:k”I^WÊvIül°FeË߲ベ‰LÉœöOY™ýÜx,Ä‹XåÛeŒúJ‚çú/¸^”™¿ÚÚ¥”Ù_IÕóÊŠìŸpé=@ÙÛt”õÙ:Mð´è"~JÄDö‹³¬×e6Q8R­»‹?rê œ8-z¶ŽM²þ~TÃN‹¶ÇcŸ6©“¬+•xÖýÊsQ¯9J†—ͱ~ZÇJ¡ñRúÉ N±Ž#Ð~ÍþQ5ÎÙDÙ@D^•qNåÆ9†âO§ø·ÿ¨ç³GHÿ‰ráHs㼃0é„ñi¶Ô®nº¬.µ¿KqbêTí¸©žÛè#™~‰¾9Ó¹G‚6šq–ó*i5[IÂl ¡k(Æ“ì]#éÍ•¼,#ÀÂÕ4÷þÂ[}ý®‘ßò6uéü7qêÊIPÊÛ°ÿOPAù¡)”™ð Cý1¡»zC4SÍ:s$\5o>–ÌÝæbC`ÓÑxb}û(Òú#ª–^ð1-u°Ÿ.+2-ýØÇ´tò¬œ](Òk<’çï”{Yî&‘ƒ.PPïaŽ}”°úæXò;8Ô[Gè[ ½çptÆÏ'TT“’þÝO±Eq±s©è6“Á¸£óo|>¯¼žé]CºhÌ$b¶öž¤‰'Ø×ЛèïrúZ¾[°Á“ñC`_ÃF©{ÆƱ Yã(³µ·(‘ê(•t£lÞ,*Y¡›"-ÊH¾wÕ}ˆ'ÆH©ew cªr¹bÞ,9ct9§ò„fÍÔ'³I¾`–óSřߡ=ÓXE¡Ä6±Hkñ›û‰J^ª«(祊†N²y¥ÅiN¹,qÔÚ¦2†£K%=Ÿÿ§\|{˜7r¾êß ÞLÚü•­f>š¢M;’yV"ÌüJÉi€Ì›û™”üR̯T3¶T±KJþÏ Øf²cÄ ÌÏøý~Ñ~Q+®ÐâåO–høŽfgL”\ÙǼ9¹Ú¢uàYq³ã¸Md¹bïí0ð΂Ñ{W¹RìcN•ä £9åxp¿ÂSy6÷Ò¨½×Y[¶e§rt%w}ˆº˜¨Ýدž­žá^Öe€‰"ÌK„éu°‰ý8q€Fqnv]†ÍõðAô ·þp(déí‘ïÔÍ®Åëb»õ@¶o@«–‰í†uòbM$âñƒdóCc‡,¿ÝG¸õ„›p@õ ýˆòQ82NÒ¢6µâ#D·«KÓZ•ys.ûýM‰Äɦý<±;(1ï~Õ‘|F”k‰òõþæŽÄA˜s8æƒý-öòõ¬—?ŠÀ[¨Ö<ë÷ #r™¹‹Ÿ·ö·áAúbúc Åè¹?ÌjÁ ­Öû8êBßפB7 _ g/œà†­h?÷3;¹Ÿ™OÀ(â´"”S¸ŸùAïçÐÂfPu=ýÌ BEè‘MÐÌRt#¼?ÜúnÜÇ—t”ÙIÜüæƒÙmôð¶kqK™¹LÝS&¾­ú Š½œaê~ÕMf}ÃX-ûéR}ðÄŸ™:»—Éà?IOYuî šmœÛ‘è?í šmI±•y^Ççàg=Ì|wð62BN™"Æø¢$ÜúŸjꢡ±—IŠçc÷_Wç>2wŒå> •]9;)9H ø´\#Î&ŠŠ!i™ÎÚÕ¢LK2JòÏ¿ïC1™’ŒŒb°vÇ ÄD‹bMJ@Lœg¬™â ÌkO¢ôÎybO…;­¹{x>"x>k}«f¿3ñwì 1ûÕ{È쯗´å(|¸ÏZo’Ï›åiIà´Ö'1Ÿ$º°G"”&1×¥³øMI໲“RýU"H¼W!‡²%G•íeÉk)»y>.í õZÏîa^ky«ÙAÑ*ö„d¿£šýåÜkAVÀm³,ƒß*Ni·µÐ3ãM6°7ß›åÔ× ,›—㺥YȪÔQ+8î‡æ‹f¯ ÌEç€(¹¾y}r¥E[˜TIÍOR´¸üeÑ&áµ(r­†Sæ/xTg sz¿ÚîmÉéÕ‹}LIÌë]Þ„]¼ŒÇv\Þ¡]LuF¥r7Ùü]¡./•¨Ÿ5iwÀåmA—·Çÿ„y•0·íjbÊ~¯å€±».o ÛM° ]ÞM§v‡ „þY¢ÈþŽbýØî«mÂv:¨eb'¶ßåÅšAÄ3»xìwBc‡¸¼‡WE¸üZÕå &Ê ¢p$¹¼pyíÁåImÔ>_ÃygñNµkrè0뚌c?].Õ°æ8ÌZØC;ZÜ×wf%“åß“þSϲ¯¯œˆˆøÕ Í8-#Ê5DáÈÀ<™ÈíШSNl_ߌlÊiæÎÁÅ¥buÊi8ÅÚÂcyžg:€ÈŸîЄÌ9ݾƒU^7"Ê7E¶¯ïÌvŽzŠP,SŒ}D±‘-íë ?o† Ü‹)¦@17mW>ìDùó{NQ¶7WŒ'SC˜—¶‡*F¶ìÁ³üÐ\>=ë¥BoÕþ—)Êwþ÷jËÞt„÷¨zšð„è&< jIÞ’-?ÇÂÿØÆáã(©ÛC-oRˆååÓÏxF³ŒâÜNqn 1‘l‚d0Î*†P+UTý@FÔß¶‡7ñ¤í81‚.öBlçu›Zy!Kwh)†…€Bçåc 7ƒp7«8¾dñÛVNÓ$7 ¶©óòÛ q18±5P\ 7K Ô@®ºÜÆîÿ'Ü™m÷ÎÖ@n°úǹv[xnÙ;[kLÄá¡ ‡ÏE¦<›ÙAk¼ÅÂ$—2Mw¦ãŒJñ~tºËmt£OËY‡]#ôpó®d5¯ÏVÆs¿ …[u8k4ÌvÔ¾ôPøÉ˜àçªxÖâyÖøç'0êçbO»Ñ¸@ˆù³ê¸“ŠßŠ98Â*k q¨Ýðe?U¡o-dîÔ›q6jÀþyŽSpкŠð|y¶óÖ50Ö0§·ç—imQðþÌ>¦èFâû2çëù£JUôß*©þ·’9Js Û2˜"û*ysîc.eÇuqÉj)aºsÌ>’Ë+•佞{'si¶2¶íÂ` ÂÙ—”&P´cUœõtÎ:p&:—èåDœÓ›œ‰¾…P‹5Þg¢soI˜©cyªÁ3¥R-¡×͉Vľ(@ÜNÄ{ªÆ»‚­¦T²™¡MUh¼ÐxŸó¤¡Î - XÆ*MÈÄÏ<ˆ<=‘0Ç+y¾ßbïaÇ ‡ÄU”+ƒö¸5MŽAß@àyÄOrkètè‰<¶X]©Ø6cã»ð%k6³`X…mFpì¼ä÷{ß¹Ô|ˆ–z7Tð4úQÇÙ;zljҕ(Ë+š›÷™„9ëæ˜w+Ú˜Nà-nÕž_s€w|†ÝÜõíø˜¸eW´Õwæk«—·ð8(NBE¨—T¾`‚ÙjÂ×µ;ÜL½T0S b$Å[8hÃ_$ÐOäC@¬gN6ÜB¸u„{JÅñ›}n!ò¢ŠðìœÚ‚-m¸‘/ƒ‚ møO›9(@—6A¡k«ëw+áöläëx‘;4ÉÍc[ÔµÕ— ñËΠh3i½úýg¢o'úc›Õ6–N”oˆ2t3U îBI¢ï?æ ÂYº›Ùm_—ÁWz&¤ªº]¿‰cÿAØèÍØYÁ©©½D‘¶h“'<'6ãTŒ)‰†ï_èÆ-¤ä'XêÃä§ï@ý~‹Èâ^ºIMw*QNm&Íßr|ö*6\¤RüÏ)þã›T ]O”9DùÛ¦æZx¡œcž#Lü¦6´ð{ß»YÕÂÏöp-¬º›iár\OÜ*ʯ¬…S)ΩMTþòµð‚m"س*Œia¢~²)¼¡ý^ÐÂ8‚Ì"·”· …>&PD(T 7îÂýà Ó‰ܵIvž.Wµp!þ(ç ¹ µp4vhJ(T ï ÜR æë¸+‘‹ÊÃs³×¥jáe1Žè\áZ¸›èYDß[¦¶±µDéK”ʲæZ¸€0FÂÌr5Õ¿Tµá_„=ìâØÂ2U s‰Rî ÕÂ1®0-ìC Å®€bêªÆy:q¿½LM÷ìFNyš(ˆ¼Z-Ä¡Î7?‰âïߨž½_H”h¢,ÙHZxKP ­„9QÆ1olD-ÜêÔ‡:ö¿´LEŠòm™ª‹·ÕòÎà»#œù„%+¸3¡”@¯áüûNKô?7¨|€(÷åä† ¦k3VæfÂ|¸Qmæï%–(ˆyli†)ouCf¬ÁÚìöìð=Aqk6R ó*רMW`)lÆYPlÿ„\ŠHgæEè2u^û3ߺDc”§ ³$mµ¿nŽoOÂßËð7þ–A/êwø{8Ÿ¿ë! ºò.øë þÇáo*ýâßø[kà«Ôë«yϽ$í} œ°Œ(IïÀum$'Ì'Âa$ôŽ`½?ëwTÿØôº))Òî1 „×R€.””A1Ú‡cÜœtx…ኦGDðo"½+MÂ?kòŽ[¤ÕÜt Ü ÅÜT†.îä”­w‡.H8E„H0‚„ýDÐaJÁû懲¨?CQ½ÃB+ˆ°ë0Ì›jP¥0èAkô á‚ãñu_kä1 )Æ»ÈꊖV" +¬ ï¯z&ßøõ\¾¯~Gœuƒò¬w eÍ”%8¶#‹vœÅÝÄâžïØNsÉ9ø­j¼ V(üPÞC Ý Ú³ñ¥.Hˆ&ÂHu€Ùdzá\dzá_OÙˆ4ÂzdåÞA 3òŽæ,jvp«éý¯.HØD„÷‘7Û­˜¨3šrÈ{ZÇ’íJÉ©ÉeA²9VqYp°ºmÏã¿BñÓ1ÙƒÚ á"ÜŒ‚toú F˜Þÿ„D|„èQœŽ#Pï‹<õ…kÉþR·{²u^ËÓµÒ¶sáG·/Яú÷¼/†¿MMÂÛúëjׯPüžgoD[§GÙíЩÅD5Õ{$$ÚÇDè_¼ú…vAf8Ã6òÖeÏí«™ãräéìû„èFÉmÃw9¡IO ”SÝa\“»$É¿KÐ-t.ÚÆ*p;æÝqúòÅCK t#Z=O)<å8~µuâs8ÛX©ñþ—eË–”çy´¢ØFAÈdò<!3xÈ£‰+ð[ô<ú ±i²$Ùp áú‡ãB½ûšìA¡P~þ‡÷pDðüÏ7ºÑnÆÝªYBØN›íŒð°áIì!öÓå_ë™»°‘[¹¯Y¤g)Òßð,8Ø{Èååhò³TJ 1! À-ä½4—@C@áWbÍå­/æþA¢C"4¿…¼œÐ}¸84âØ}†‹ $hµ â³$Ó‰\ÿµ&¸FÂò)Wøt) 莜gh8A·p¨ç¥bÕi¥å ¢ 2¸l߯÷ß)Þ$Šws±ª)'WpÊÃD9½¢¹¦l"Ì„ùaÅ•5åMŠ£ýZmÚo»iÿÇÍ|ÿêŠ9Ó¢miJ:¡¿)VÙU~Ç[ctq˜¦t# LlSV´¬)§¿â¸' ×.ª)› z'A|ÕTS>"D|q¸¦Ü·¢¹¦L&¬g…ª)—™nÄ~Í~ºT®bšR½ži rFý§Hß® ýÿªMéA 7tg( )ç¾ä gÔ1Ô¢¦TP„TŠP÷e[š²ÐÑ„þæËÐ<¦L"ÐÏ_qSqMA䊯B4…å3¨)+X#J&è{ÄiØ—ª¦D) "¯FSö-çñ,ïÒrUS¾#Ê߉²eysMy‡0í óíò+kÊXгïKµi?¿™kÊ“I¬&”p€çñåmiJWBØU¬å­±ny˜¦üúù?bµ¼eMÙB¸»÷ã­jÊ»!èÊP(Ó”©„8µ<\S—7×”lÂnX®jÊÅ5LS^c?]~ûŠiʧk˜¦ gÔŠ$/'ýÿ¢M9û9=M ˜P@S¾'н:ùù4eEè@JB"4×”]÷Ù¿ÏCó@šb!Ð:=¥‚hý‹È‹¾Ñ–Ï ¦¼þ;kDþÏ8ôEâtÓ窦üL”‡ˆ‚ÈÖ4%üN/¥ØÝ)ö÷Ÿ©úâ$ŠÿsN™ÿYs}y†0‡cÿ¬™¾ü`qý úb¾¬Þ²|ÅYú¹ÚÀs\|.8¥+j<^%¦·}Öl‹|i`‹üÌÆ±e<ÆŠq‘½ãæÌR^úÒl·š7\å3®TËyXHÀhâôM('MØæ÷ç úãgúZ3hèæ÷{ ý5¡n‚æç 4û³pí*_ƵË~I'¼ñ¥–v¶ÿ²”£ÿLÕ¯%L¿nf?]þö-Ó¯¬¦_ ËXWS¤dÊGÍR<µuI/æq­]@#Š—òŒÚËؾû F(ìÍÁÏøÐ2ªÿ&`~VË`½°ƒ »‚°5ÇJ쪡p+³ˆüºá5¼ÎšãA8ß(ÔÿOIÿ‰UL‹Éjmxx¼‚°©„­û´%¬Ž]Ñò.ac»ÞÙ‡O ˆðûRNx¯)vrìQB}ÏQìˇKY¼¶ï´¿ý#¶G.põípˆuÅz›x÷â¼»í#ˆ>…Ó»í{. ì¶ì=ƒ?ÅÑ"îIÑ$ÓÝ·|‹<[©°(Yq>üJÔªO8¿›)—N¼¼µÁ³äS~0 âˆðœˆ‡ºÜ…Ieþ_î“5+@0c}”ãÔ·R˜„Ÿ;[‡›{äƒÉåx.!7šã ísßÀ/Bñ{¶¥±Ííöü•Úéñ —¡$Ý/&á—Ë ^ »ñ§‹Ba,º$¾ÎÒa'n••,=ù칃bHª S¶èWòñ „ç™îá§ n»ŠXqžûâéh„Z&ÜYŸznrusAàæ%õ÷Ï;j­1É»Dy‹ãKÝ<6þ‡Ïxu”–q3%M(,{)yYº5Ö^×?™ñ ‹A/–SRoäÇK¯³/ûýÞ2}p£>žæÌʤFöÂkKÉNJÄ⪈¼•¶÷ã g²ÙU&á·½µì$›t®ZÒg†ÙC~F)ëY®~+´¬,?ÒyøJVGƒPxQÃqXʺÖLn¼É?C£)𣨄ÌF‡_(¬dMæM ·ûµ¶^¢PÒÓ✢]‹!Ø f ŒŠ>ÀWïÆdF/ðcˆízÀ3šÅ9CsÙó8‹ÓÓ÷Œ|F.O«ŸhðÅikå3É5i['7È;|1Ú*¹ö܆*p´Ó›b¼K12x-NS*E$!¦}ãKÞ+ªþ€wݶð®Ûïsà0buîýPVÁ¾úÔ¯ {#a·5Ǫ7 à³þǾ¨)œõÞ#ÔŽÂ{o†øò¿óŽÃ%¼Ðçݰð…BYC}ºâñújŸnÉrÖ§Î~º|þ)ëOL\Îút¦÷YÉZÌ#åQö~\ÞƒØDô;>ö 0c(1êA<9óüµ¸éåù‘øy_à1ƒxœy_ª zŸú ´#‚õ,nðùÜù™’R™V±ã5¯$³Ùèé–TDÑ‹òÞly‚¼¨‰™Òfx…[ÒË‹x&„f`Ýb²!gÑ’f2áñ½úL´¤ ™dHË(öíïºf}3á}J”NaÈÀÁ ™ˆñt<¶Å;ʾ6„û9Æfaf,jÚ„3 ±jqÀ²Ï ¤-f†ôî÷5Áï­ž¡ÒXŠ5ƒøÞÜŒ¯ï=Ž­JYRï"V®DL§èž÷ÂÚlД~BÀnÜöžjJ¢\ZÄ)ˆ¼ªmF£¸iºŸâGñ_|O5M)Dù/QÒÞknšb 3ƒ07¿×ê\Ì%u.æÀ»<Îý‹Tc±ê[n¡ötbª”·ÓÚwÛ[² <^¥ïñKÞUm¿.ÍVa× ¡j õò»M¼Þ½øú=5gîe\ Û½6íJÀ"âÔ/”SøÔ÷Õ?A#šA¥k>¾#ôß ½ïp4³a ý^¸ K—Ã~Y/¼1[þ‹Ð‡ßU­ÕY6Þ‰ý„ýtIúY«ÍK™µZð+ài)äöŽ*P0#98ÀÔ˜F¿LàBÁM˜‡rìPÂ6, g¬´W;Àü±Ò«/¶”,`Ž%,“'êódÌ4Â~AØá i€™H„·ˆpwÓÙóÂÛõÜ;+öáBì?8éLüöÅ|ŸAÅ\v&¾˜­éY»³1Z;¹ßTŒ5â{2X¬ˆ4ƒõO)DS>æ½t%¸¯q*ÑO- q%Š­˜I |I¼g˜{V0`^±’Á¾³dBF¦]ÆN²óÑ©¤dp3ßjÔÑ)ã¯ÅrÊfi1fes"nÝXÁC¾[£†T-àÜrnž- ‚ʼn®0¯ÐbÇÝgÄáMÃ#…ˆs(¢Ž"ΉˆŒ'ýØÛA9`ïüu|w¾–5þÄn®Ð†€Ýfî•®Xnü²yWsŠßmÆ…cÛ¼¼ØMÊËF¶òjM5Éç¥äJÉ_)¥™—LN†¾,TöcF-úÿùäÿßÖÆ žM X ¢sˆÖ$ç/$¶RZFÜäG[=»¾XE¿­ ŽWò°°r¹InTo\˜ä çjå¼EŠ§Ý ¿x ¦cq;Ô麦Ȭ䤚U‚£ ÐÙ“üeР=Ðìô¢dç.-ÞLúüE­æöÔ<í±!¹]:¿in•œ%rd0OÚ/ÙÀlš’_äÈz$›í:Û3e1ûµŽ¶(æ©ÙÁ–ññ4Õck§ž¡ šÒ)ù{©0;ÆTªo¦SŸBáïÔâ¬íñØä}¢ýâ_Vü{Ùzü{Ñš ÿ^²ÞŽ·ÔXû"Õv¨˜S1îB=ö™òØÁÿ9¸»Ïªg‡/…ÂÅlPò ëTAÄÉqŒm4²ZvÌœŠQM}òŠÉndá4PB6¡uT³‚ôÊ¢g7ªÐ%>živ-€2z¡$ïl3=Æð1ìÌüü.߬¹\D¥ó‚«iܼÐn"¡Þš§QºÊ\~åÑ2uðÎV¦›7„,Þ;=ú>|^HCxy:$X”|#´Ö>y =¹QÌŠ_ƒ5÷J|eâû×ܾYA¾qÄWÐ1¾qX¹ Bál ¯+ª¼‹M°îó ̆¶¥—øí×QZoªi1»wà­ Füæyr.·ªªåÔg°^nHñZ`qð?œE6gÁ˜Þâßÿ!R 'y°wu¾àC¢v&ª“¥¼‰h`ò sšçÈóöštq#ÀÀnîÔ‡ßbçÍ†Ï 9,\mUÏ›ýb-$¶éMÙF`Ê[Ô4Ø4=/–g'>B±u¡±C:¹e„»p'ður?%JQ8’æ À}³kFµ|‘9å¸w) ͱ®)˜m6Ûl¸.ÛæÈy³%°I.OÜM~öe5seÁIþ”¿Ä¿Õ6X(‰”´`´æðÜƒÏ IÈ,g—C8ã’óuF(¸À)[%×Ñ8©ËûX~pÑž?úNéY+™cÏŸ-Lîâݢŭ«~I .݆Ö\éÏ™-ùËà·ga·2¦ùKØ/XLHºRZûý–¿ÇÕv)Ó¹cêGÉk<’¶\r¤gjY„dpÓ®±•qRûœJïaO:ÓÕàvÕ2ŽÕB‰êe‰Pò€ÊÔeð¬“ôyËà¹Ø$”¼¤·h÷ÁaÎwÁÃ3Ü}oƒ‡'#‡9Ÿ¾ Šñp”ÅÙ£„‹¯˜gãÜ“ØUx$l~6Hæ%:”2ˆa¢v¨s@?xxY7Ì9è(³ÞâŒïƇ89|À²‡žW†ްhw£ÈAÒ}û¢\£†9GtÑ0Qsö¸~ÛY¸ÈÅè¡NƒE’Ž1’¤Óà$#ðlLiH Jú¬*i&ÞF¦¢zs~–… 2ÞÏä !•LÒ•Lت¤çÄas^‹GQ+¶9¾8¡$‹Ú4´VmoÓԦׄ´Ü%Ò¹£mÖkÜGCDPTÀ”qŒ™_Ñ‚úÖ“+› ~-rm¶°Úm ¦*W[ÎÍ–«[d(&—gË5aE%°üÛJÂ.IX]‘ã,ÔÔã«ët™ ×oq'Ø“sý]ÍNÞ‡Ú–‚FDZ»[ <lqÎD£Á $d–IÎY×k.£9æ×¢©†0Ã!®cqÙíÊ¡¼xUÞn~nѪ¼±ô$9#pE˜†‹ruJ™„‹¸Xã6ÿæH>®ïû »hlݽØ.úÈ”J¡¤Ìå5ö)‡ý•fG™52½¡Bo;ší¼n0>r^w'.d;»ü} þÄöþz°íßA(©‘+]žº†M¢¿+¥¼ÿHƒP²Eì_îòB˨‚§*¡d«\‚‹Ù–âê?šk…)»N®žjZæs•üâ®’_üUòK¸¿þ†]ý³z%{à©Våf¨’ì‰2ÄJk…’J pë³K(Ù jÁé€ÄáÉ%Ú=‰¢½±§ðÚJ0"¾~reÿHˆi‹¹U D­áQûǸ!¦Áתçý¥¬^ÞÞÈêeÎj6â‘qû—½Q?å+¬ËDI> Ö¥Xݺ`u»ÁéàšÊ)¹ò\µ÷ ¶ù‚ë”±àîÇ¡”Úr¹ñ&|sյ宣 `ÔY;ú›o `’¸=9m©ý(Ù3@ëi¬Àì]‡÷•BfO± KbÚ h6¢¡† T- Uª$c•Ä`¼ŽbÚ¨£nqWÇ-þê¸%\·͸aËçˆM(²Y ¶ x‰m7Ÿµ¬ù°¦Mèh>OüÀjdÔV#|ÏšÏ}{B›Ï¼ùÜ^ݵ¾Õtò\¼5Øp*yé o8†èGÉ>I¿ÌÁnˆü—¨7Ða–&ÚK•dG=~zÚíh„4ZìÔûèO¶s1Ò,rö&£¤­Â+”ÜvÚœR•íœ_å¿_1lË–˜SÊ|–i­úìþZ4âv—Çô¿“ [-~—Å~>ѶÛRpŒ,FÙ ¶¿(ÛQ ¡ÿ%…†r­µ§$ÿ^'å/.½Á ¤þ RÍiœÏ”~›Ïn§æ¼õ `¬Á Õ¦TqÎRÿhƹœs¾_ŽÙdñ—Y쉶=bƒKe½¿UÖÙòV©æ‚àÈBò; ¥‚Í(ôGU'2ñ²êDÆÃÓœ9s˜‘G{²å±õÙòó’ý°‰òyä¨ ×áŠkZŠàø†n'v 7./³Kº¡6 ñ˜•ýr”ðÆ<ö oâ¡BÉ=„-CHöé[gðWË ± IJ.§¼"ilíâ`”LIR^É][­F³€xº$——âù0HÇz$OugÄã°IþG?ÖHLòÑ]urÆ€lù_éîŒAl'ƒÍî@•Å”â$_DéeÖi‚*PPåùFµUÚ1²&é·&IÊ”T<²q­¤ ‘ð U$eF®¿Zrgªìˆîªç @vûAvu ;¡ d˜ß-×é-²Kð¾@IΙ“-›‹˜ÐÅâQß§²ûaþ“è6kÚó_Cè$•¤Da̜Ҁ™2˜”)0Ò7§³™E%o€œ·FA)‡$'^aç´8WåâiVyU.{sÄáxDvHì-o‚$ÏOg4kéL周ü‹¼ª{3[!Fo¼±†êvO{{c§)ÿ’[87^GÂ_Ž–ÿâß;ºà3þ=þÞôo` ~ײ#o1ð¶–GÓÅà8>ßõó |À~4ʲëûO(ªØï ³£ÁÖ]RVbUœ¿ÐŸ·„]Ë#¾ ±ý;ð’Vp‚òiWE»ìÞñjßd´ÿ¥›ì2Éuö:­(› xpºÆ#—Ûéí´Ö„‰1ö :«h¿ ·=ì3ašxÊΗƒëˆuXÁ¶18ãìbaAyã!ÈAÕøëð O¹ù@bq}Â"ë‡×iø=,®_tvŸÞ;ŠRHßÝ­—ìËvW*YÏÉ.‹°z7– <€tïªÞq—]ÒÊGn)‘óFxgjØ-4­$d‚„Ûz ÷nÒèpºQÉ[/É8ÉæÏ›ƒƒ¡,”xÚQÈ:2pôzaÈh€†ÁBe6›‹+ö\; ;ßG²µc+“G¯‡Ÿb1yôQ=ÂqHpX±¹‘àоàR[Õ»Ìx%!ÄRõöŒÐ²âš§¬#x¿L”Xø@`/3f*ì¾bAþ´ë!Ú”hÑþ¯ŸœLf 1Sè=Œón4`ì?ßÄÖsÜu RTæ#/¹8ïX ®ZX“Åò5N” sPIÁË YÕCÓ¡(âÀ¼©×ù’0jìK,ªA'º ÍsXÖœÐÎYF¡‘_è4yd’Y™­Rtº^ʼnÖ"[q¤³R0±¶33GÌ@¤ø=<ÊÎ_Æ€ùN}ñ>ÎtáŽõ£äL`fzW¿Òԫ΢äQâgÉ{aüÝ$¡¤ZÎ[ž¶kÒ Ö…æŠl[h¾÷Æ¡Ëyõäžâz!_ÿ}%Ž ³#³Öh/ÓÉŽ ð0p1þ;ñs¡Ä‰á ¢}F/VZ䙮ś£Daõl&lVazç=Wn7RËr×Qp¬½Bîj"®*wϱÜéeÇx–»ñ,w îA$I»<ò>9ËÑœE9'ê¹Ñ;¾ä›ÖzÚyWJ;^±-—W= åz{Y”ìÃRÇ'.ã©?Ý$õΉíyêQ·ϧTÉgE=o®Jþ4 ª–¶1­|òÍx‚ømh8‹ÙŒ5Thô³óX£/£Æëßa¿ì· DÓX°0ëÍKx¿|¾æ:¡pÈy¿èíìL⑾\‰²ÈCúy3/b©çó†?Ÿ7ü¼€%o±á˨ÕoĦì5 miì¢ü¶Ã8ž*Ä@$+Þü™ìÇ6Íâ\i›ƼwùFÌ¢ÇÀxÞñ4ñ|÷/n ãY¯ërÄäç ò×£›ü”¤˜‹¡ Úà‡qÒÄ"G™å)Æy¬$Ê£s!Ébš-u’Q®O®“–ŠËs<ˆÙ–€7w‹Ê”DÙ¶ÞB] èRä(WëmDáçL`E•¡oåòW™zÅS¯Jü¢\#PÞiÛÚR[¼h Í¦ôn!ô­ Ö6”× Ž‡ðyu™lž)ÊU0èÜuÒ¿Sþn*°6ÉUŠƒ=ôªÛåÑ›g*ñ¯s²W[yŠy¹9$/&Ù™€‡¼)K&…½ …tmç KêsB’ ä¦ämÐaßõKò.ÈHr„¹°Ì–«ä¬wT¡G´G´4Íð:m´\.ñ ¨q[52ÀEƒ"O¤ØŸ³^­\ïâ7hô²Dk¬êû¼E-ì9°dËÒÇcðOÀc04ä{¨u±ÏÕ¶]8¨ÚÇÒ¶MÜj”E­y–q­Œ Wì:!ŸQë}<Ô»¼ä-rqè·íºïp…Lø˜„’0¨ZÇ#ìf®I6ŠòÖLgLGÌ–ì˜Æê½Fá¼Þ ¡ÞÃsR®uA^îüÜV÷óãÂêž½Z§^¡ÞÇc½×°z‡ñóV&”t¡dÞpò–FÓP•á?‡ÆZÃ(¹:X-fßÌÅ -HÄ+¹Í•Ì)&]]ý¬jR?£¨~lRÊĶTaˆy½|6¹\LË59šÊ¤·x¿Òû4fp`µ¶›Õ^h»(ÛRñª×ÐÛ|n¡@…üÒòÖOî ý\7s2B×/y¯|Öƒ3_ùÅR²­4ç´r¹BÈ:›\:‘l[ä³BIT‘Vò»$¿Û¿ÕvÆ™ågkeN“NË{Žæ˜èhìÚò;[¶)NêÞ'o=S&5cÖ¨µ±ío˜8ßCl`àËJr–‡9aæ)V†{ ô0ÞÝç™»NÞFì}ãb“€[!Ë c9Ær ŒåË)ù0L¤12ŽÜ>gYy(50ä•܉>ÐíM¿qšÐ¯{ÈÌ¿[ÇG¥þÃØ0Xôæ¯øO*ÿÄãgHü•–³ø°n¶eŒ‡¿1îYu×ò-­îYÇá [}`¨J£T>åf+C`ÌYfâhx©“ÅÎ8‹îtÆÚw+tœfô•©¹NÃ=öÆÄ)‰Üœ‘° öª–Ï望Z´é’¨Û„è0úu}‡:Œî+)#ÓqøÞÇÓ’¼†ÔʤTIá£ý+ °åõÀ)9uiH7ꬂ$OèíΒ¢Ñ×RY;¥”ÙÅÁÏ˹øq°fÐkTÆÝ3U!–^ N‘w«LS”oPÈŠÎÞ(Ø"”ûFø:¥TÙlí•Y È®>÷žª\uÐé0h}Q’» +%ÀK(<ɖ㘔„B¼6G‚·• ¥ØäíÓs£„W«p=éžžB!Σ¸#{¿ÊÐ\J»ÆIöq¹)µ0Þ¯÷H³¤"S´_r½ í/àW)jp]¸LùÉýªÚO©2§”e;óê}·ÈeBI|œý¼®{Ù¹êÔr›Áïòu,¬µRª|íJ±&WÊ.‹,r™9Í59Â~^?¹J~y™”aÆl¥›Â^pN ØóŠ×ýc—<ĆE —¤'ÉÃâ˜üíj.ÖiÒ; vïü¿¬v˜ÿlyHowdûÚ¦<º.[ëÉ–Ÿ¯Ï–m!Sm¬QtÕ†L µÓâ9—Œâ¹Ãæ”_¹ÞÕh09'h¡Ó ÃÔË7 Cëp)¿ƒè4%5Ú£„×po7³¡ {]ÌÇöEAõ.YÜæt,ˆY¶ÍòØ~’2<•ëJô£0‰f’D3I¢™$ÑÌÿˆLRz$e+O'Aë{.).?§ÒºX-òEQþ“•îK`7óîÁ—ØÏOïÁÃ:^zû[¡í&0Oi˜>Oi±OK’4¸O;âð¿ùŽk ,…LUŠþIé¹bŸ¬,³DTªäNg²7É¿á–Àß¡uãÎÖëXôl¹ãIu£¶/bNXÊû[-/¨·|vÞ§Tå½HÓ¹-ÎBÚérÀëq°œo ÍA{ã`íìÞΦ2K”•Îö^>‹/öé’F(ç‡ÎÄVCÙØDlr1iÙ2ékè°ôc]'Øä-ÍÛZd7NcwÃ0(&4CÛ­EÃõ #RC8#;'†ÛÜùWq”ÌÚÑž™ˆ0ÀÉì`2û±ólðÊ¥«d¦ãC::V+ð‹¹ð0 FÁÃ|ãña<+U6VÈ9‚թ䌡)S‹sk™ig&Þdq:_‹Ï®)Ý¥ä3`Í£-rÖ —”ë-z30Ë/%Ÿµèi¹rÀ[tC™0Aì:†*‰£¯ ¡yzzŽlMJ iÖ-õ9Zo×—Ð\(O¤JöW ©&+÷E?ƒ‹^ôçA/3oGÁzÅùeøè ^ xêWʙܙ|²œ;_sŸ±‰J& 7O¼1¯¤³Û‰’÷zÆ¿€ †õ‰Ê+ƒ’aÀ½ºµf!ëIÿJºI>k’ë8ºÂs7 ÍÉX{±ÝwA.7¼€JðÔ HCÎLßð7“\¯Ï$g˜9ÀE)(Hƒ€IQ¢Ó H¹òR}°¨P*\¼€V¿‘¹Bc?.² %; ÅŠöAIÑ‚ã},T{±Ý”R›‚²7BKî6ɧp¯Y ¼±YiË@h”6›2)?úððevy˜ º IדµØ¸}áCá–ɽärÔðtÔ{m  ×óüâ<£‘ê»øËn‹0Rò>LIó<šèç’RñØF VSJ-t€±™`ç´u!´¾qQ¶-d‚ø£+ bJ*SÞ“]™­KE?ÌïÕ@÷û ‚c[Wœo¸§½-JtGÆhø!+öMAv\DÎ[ž9ab”sÖç(Ó%³òB.ŒÛ`Të6¯äÖÝ\&Él´®ª“<{{ƒ/D8dz·W¹õgSHçH\–à«oð…'_½È²ÒÒ…’·Ð~*BžobŸ¼çzáµë0·J$ hM¢@ÒVâšÓDÜêé}7€ÇÚK!7ÿŒÔhzFi4ûà/Ù¨Ñ,€¿ÿŸÒºÑM{øûþ^žGc5šëÁØÞ{Á%ÞÙQ£Ð ºyðwggæIø{†ñ§áo¤9¤ î½XÉV1^ˆÇÌ4‚âõ%azÍl½üÒHôo…¾“Þ${Ù Ðmñoí[Œ¢ý’0ù ý˜Îú¥Àßz€¶¡¼i '¡²åÅ8}ä1Á¬¬„ sYÏ ³K±(ÓøyeJßóÓ©csv×{µÀÅÜ»EÉê®* Fèmņ,£ÖšÅ¾opFr5âŠ)šJÜ4g”´.©´c†±Wa\†Q Ý3ÃöóÐ0ºê"0,Í…³Â].ۡȧÐñž Ž" qqÐ(8žŒÅ™ëÓ“Üݧ„Û?û³ˆå¡ý|ñÐIŒí¿ÀÛþ†4i=xW(gÅ·( a?/*³ôbÁI îµûµÝËìu:{Y;QŽ„Ò›S~5)<žÂâyW^¢ )ët… ÌšåéqâL¿‘OycÖÆB¬qŸiê`lãì’gG‘ÔÏ;¼ wdo1ÄøìuZYî¨³Š¦¢ü2€~]Mk­IÁzæ£ Sö¡F1 /’/‘•àrǶJÐsòAµº ÙòT#ÏÉa9á¿åô»‰åÌÐj·ZÉ™¾iΞn3gæŒËª @ÜrF¾“ØäŒøÿ]h§¶’5C kÈÔ`»Éû&†`&7Æ]!“Pû#"4ÉSY¾ KÍ‹úÈÿ¿û(-5I_G5#t4L_#ÙŠ"fY(d_ÍVFŽÓjå]¢uÐqˆmãÉp±cKÙJzøïU¤ÄäeB’ÓÐ^>˜V?Ù ŸMÞ*ïÄ­™Ùò‘&Y{yzŠ0±1ñ߆EÂ=ÐM#L?Т¬“fëGÏ“ÊÍf}˜åA%Ф…Âùj ð"Zy?ŒP Eæü›TYÜ )^³êÖ…´rÖözA/Ë{wÈ`Ý‘Ô ¶çõémŒT­;R`m™ŸÂù`pÒÌË…,órSZµY®6 Yeì•-Ñ84ÙÄNxÁoW›dGjs£=æIœÿâ^Ÿæärª`‹ö)Ù¼\ÒŽ^bNÎáý'Õß3Ñm•4–êOÝŸ5 DÁƒpûÕ™ÖSâA|BÖTì:AUt ¦6(l@äõ“QDE/ˆ¶ã‘àüÈ¢#VXËÔîvWlT•Ð_;·×ãâE–8Û|0raºÌ|úNmfš8têÄ ¾Yì.kXlCî?Èâû‚1Eûy¶ýÀÉÆò|=”µFÚ~0ž/”ò¥'ŽÔí8,h¦}›ïÆo ­dK=!Þ”5šw§‚DðÖwsJU¸PðÞhïj-Þ¢ª  U÷*8§úåFS¯FQ1Ì”+Ø^…ÍBI¥ìì†6íûI70A*ÆVéÛÈw%ØÛñ]  <ÎCmĉJªubÚŸwá2ÔiSŸ/{°!C•Pˆ—Œ‹Nמfgñ=¸Ç Wúõ c'q“m %v*êJ‰éYb kr´Ë >¬ŒlÛ€½\o1*Ô2hó%ßHÆòí6X¶WV±ÈgíåQbÚž‰;|gØËÛs¾QÀ÷|JU†Ó¶iÒ PUÆ)P!B®Wþ³Â[œ«ý‚ßö“¯59pdÓä¼ÙÊèÙ¢þ}T1í€0ëï—Ùñ:¡p϶Žúýd ( Û eíÈÁÛÞ«¼í-a‹mOÉ›M-o#ßtÖø†¤¶ÚøºL†´½?ÿI)jRÌÂò- X¦•ɸE`òœ°Ô¥`êl‹@“4wÝÕrš0‰½~2¦“ #‘ªˆ0;.îç|_Á…ˆÉ ò—³}Ï\Ù*¶bœÄüâvìYàǰåœ%8¥‘(›Ù´€YA°:'`¿§½àQýîWÕù\¯)øŽÿå(CCÕÎäLÇ;‚¸âÈnR½ÝBÉÖ Òuh½––Y­¸˜^o{^X}D”+3œ1šÀZªl.4É.þíոˣÝß4•r­+˜ÎW†ÖÓYl@=ÍÉ[Ì2+ [,>-&/jß`ï«+°O—^è·Å€¸»£‘NûýéÐ!Y–hí"µ” äeéÌ`Y­ðÞÎ@‹þY¤ oí9j¡×fbŒm=ƒ¨|‡ø ^ _DnµY#X÷ˆÚ˜6:Fp1¸jü»òÚµam¹6*d·ët³Ú(Ò·Qšø±yM±š( ­‰Âj"©4BjBÛbM€Ä÷‚HO¢åûopZhµÄ:Ê~ ¤;¥Û­¹tWèþGéŽ —®;ÇnÊèå8<û0SòŠûäáGËG¥•OÊL®–ËÅY©“»)Ã…È㊉8ލØ™á¬Aiå“#“Ëái€\‘¼×¢ŸœŽ•¡år_,®ÉÛ–HÉlH‘·\ɇÞÍ…äüåbòôx&K¾ ”DÒ‚|[âçg¾ù‚ü3pÃ.ãË_`àÙàdá*-oÈ‚Ç=÷ç,'³áù ®ÜO6:`üÜEKcŸÚ+ôéxùåj‹¯mÒf%€ÿYhnq0*bC*M;wý¶@K!÷mU€Q¤@—|Ž{ Š„ ®fø€çØf%X¯‡ZÚøbx‡Ì¥œWìý—¼DÎr9§8Ðý¼–w?ñ›Ô#Eåñ8Ç!Ûõ¾l–5¯-IñS¢½Îã-H:â©& zý§ K &‚û alÂ÷Iä-Á!NäCóßÜ‚›•¡ …ÙâÀ:wŸÒW1‹i`¿­7iŸu’Mkw¾×s¾lÑæOt?ÊóëÍ}žK2*£‹Å>%%šdVe:©F¡=ñøÈ`Ç!kš¨Lsø­]°²ð¶-\z†VA vn˜»9tìdŸnÐâj²½.]ÔgåŠJWû…öÖçì:[£Rªì:Ø"ÖàB¡¶çÒG™Úù¬‘àÝ 6ðP+¡UZ ßlûH:<°í"w %¬ûìRñþÅJÞ¿pŠ0‚r1Ä>…÷+|Ù=3Sª|ï+æ•m.ÑNü2‡9÷? ó›VÉ7Öм7Ÿ —äü"I‰”Ís@oFÚ¦Hn3~V¿8¥£Év~‰èµüK³wlþnO{¢Žó%CÛƒpö ƒ  ÂÞõøúÒÈï_:k_û_Ùúò}r€¿Áw-¸ô…¸Ì†¨áG0’/fßX³î­36=ÁHƒ2EÅJ®Óð$¨ët{øi«Ô&¹B-­S-­E1$±â²$- I¶‰M ¿e!…W?³ë~’—tG;þÍ[[Z ðGb1 ß_+p©ü­;/V§Ð¡EdKeKÑñVyûúiíÔÍ ìSûêlFIžÐ¯É¾(W#²¯Š¼Q.NêÆ÷Ñnî ÊÆÉ³»µ¸;åojÜëäb¼õFžƒâ‹ÊXo&»‚(Cl‘öSkä}ÐÉ÷u—\¿ÅXœ†ÛáW‡§‹]¿µç‡Œ ÖX\Ê‹ãŠø|g`»ÌÌCyñëÍð¯ÙÚ þµX¯…µvÿiàß­íÄ‚‹ï‚#µ½,)Yq¬fq1Z’+üÃ%¾)k|ËÁcZÎm1˜í±îa´…ùeNSú¥¦{šÜÓeRÞÆúVÞÆ*å]Ùú'r•ðt•ò¶Ù¼^fr\ÀëERÀíG›œßàRŽ˜¼Ývp\™‘mq*:v¶.§2û©MC„’§õþL¡$ÜKµË£ø¶4“YmRVà>SÚóëózQ²ÒÈ–GËg%ýC¹fˆ'¦VY¢\åÅ%D1ÅùMEæ}æÔ:Á_äJtâÝzÁ±=ghÅ»3µ‚cšçý: ž=x@+”€E½;]o{ÞtðqÒ ¶§àMozx‹°åÁ›Þ ðioðoQ¶4xƒª oF[x‹‚·(xkg»ÞŒðf„·h›`Áóoiy•“#ðÒйº¹Ò9GÇö9Œ.NÛ•“¼z do`Þú|Qzª< ä“àÇãä&¡d¶ñ2žºÙå‹€—±ûäzèË-VÈÓ&uGm5ÉU Xï^5¥ùLB–Ü_“3èMÒáö 0 JFï´!‰¢¼bý;/ì”L²´º0%ð~‘Ãð˜Çðæ_ÜÔ •ˆo½ÍÉÏ%%² SòøÞ¼ W™Øü›‘]Z$g$¶d½›+Ð ¶±cF*Œ|­ZÚæ">Ãq»ÇãÚÖ7S¹‡ŒbÆ(ÿdëÒ ƒyb»5qô××QöRÔ¹ýèŠûŠöiI}Ù¢Û{Ù-"»ƒt¶XZ]æ3Ýž^^ž"s rNgn¿ìw_(7IÚ2¶ƒWž­þ­˜êøqnC.¿ºB$m-.²OiðìÌÁ»éæ%±°;cù°wÌ ¬6EëðÂC´²ÂjC4>¯gϦhƒH ãK$¾,g³B…I‹h†¯^. Ì&}òŒzª£ç9!Ï SÒM¨=obZÙµ“Ëv/“·™e\‚ž›ã”œ¶“ØÌLMÎ…Ž63ÍÖÑQÌ×u-íct«û˜âï§}L¢Ýï/dÂÔè8ôRûs‡ÜfTn¯+< _³ÿ%L¶ûâà••ÒiöÛÂk]0Œ‚#þŠÞгAxóø…¢3h®ìþv›'YPƒPt„]6oîÆmŽKqÚE0íg{¢Æ­í×-tGUí:‚òŽu¸{"GNTÌÛE9½¯ÅÎOÊ£$K>°ë„(O09³ü@Ï9Q¢,MU·½@'/Ýꯂ i¢’;Õ^®+ýâóÏ??w¬æ”(Ï™©áWQçÒ%IæR–‰lÅ\j‘Ó¡#:ÁÔ:y ­­“Ç[Ü3{w£¶á̉¤;¢\ÜØUMÕO’]5NTæ †!óY5Êé à¦s5ÖÎð3FcŸñkøcÛÍ¢;݈~*y]g:ß5…ºµ°*›mUyRTf"Ïžé4ˆy¦¦KâA‹>´{f}WÜRŠe–‹ÙªcEú ü\‹]bo>ôÀš·m­ã Æ †'ÐÅŠOÂ)ÙR\“Zƒ“õìÓœž#C6M¶¸³móùS”w³ÆßI²»%BÝéÆ/É΂®N(<͸Qk‹…Á…ñÁñ#¶o\é |Œ ?\÷›gëj2Gö‹:áUün¤Y™n2§]œa–OúÚ™ä:Sr£E»F/¹&°®üN¨!”ІE¬fÞgs|@Jº‰òÈ BÉ­¨”ÌäÝÃc)ÕâYÓD9k‚9¥ÌìvÉ×Á„0Ëå"t „’ø(ÈùìO¦”‹7Žœ†œLÐxošmQ&‘Áîe{–;N6 …Qí|g’ ¹?î²ô¹/ŠU‚O—RÖzE4ùÅE“2Åd’ëq¯>_<$*ó˜5Dã;J”Ýæ>뙓÷PÔƒ™¾{$iåÂ,EÕ¾é@7Ï­n[É®›ÅßE¬+g.¶$s»*ÚŠ×Ä ÐXôÖ$(QÖeauå8Sr}J­˜¶CȪ'¼,ÙÓùwÚŽâARÄA}»Ô¬=—£ôM•<#NN¼«åE€Žh—Â-¼lÞŒ³ÇåbÚ¾‰¢¼Ïýê ¦ä ¢œ‡g­S•tìPÛ 'œi_°(6gñ*n¼º.>4øßkq$k†÷¿”üÍ’>¿TÁu!7Ñ×_3}ýhü‹3áŒÄ<ž¼åzȃ̳ƒ_ê¸[Í&NµBkŠ×â¤ì5Ô_&” eÍN†Ã–)iºÜ *Ó‚ ¨ Sˆ)S *޾—q"z}Z"d‹¼ˆqó¥YœLsOºÕ’|Éâ\Ì{¥•Rr£”¶I†5öõY(µÉ}àm(~:Û1ý'Óú‹B6÷î€{‹"„7Ot`Wäé@›Ü¬½Ù·vÐQ6B½Úº‹öKa¾y§X0-‰JÛ53ówj¬ñ`0?þ‰Lè•eöó¾×Ç“Ñi.e×á÷´¤tܦ—Ž4%_áì$ë䎷têâ°g\)7&8)ÞÛ„ ¦ C\OÑù V}QàE§¾ÍÎ ½wºbH?tùŽÅl\X®BÀsûI<÷Övo8·×~ÂÏ©ÚîUçjìGãÌ2 [ÌŽC0NÒ–k/hÏj·fA‡Âa#ïÒ¶\ Jº±ÈÐËÚ" 7 qzdkô8NjžÀèAHx'Ä›UQLœsµ*r4ŽZë’2|Œä:'W0©à Öˆûd†éy¬x£ó!ÞP„Õ“Æìäz’ÚC\'Ò‹óHÆœTòÔ Õ¿ƒæšÇErXýh7ìQæñAQø¥øyübÛø›òÇ{•й^kN®4É;ÐÅñîC¹gÊJÎ7Ÿ>vŒm–]*«È«‘Êľl")CÀŠCóLéZ.?T!ƒ «aÔ˜o¬Y¯Š…òlÜÌZ˜V3é:SòÖмx~û6´AàèqàD[|xÓ°`÷§#“ƒEp\‘CoÃOÁÒWø@+ª)ë$Šž‡ž¦´ŠI׈ÉõrC˜$žÿ6(‰ŸëI&¼Ž•âEÖ÷õ ¤,‚$äEo¡$ÆÃð3~þ ÕîA+¹\Ç «dz8›”EO&‹´½“º&Ÿ ÉŠççoÈȹgxñÅ仹$!’Àñò¬ƒUåú$1;LÀ¿UY<ùMPNã² ç%×·-ŠÔ«Å¿TQ˜”' #‡ZÆþ¯ƒÂèÊ þOL·sð1–ÉàŸ¶iÄï!\³Že9;Æò;¹$N-ˆïˆÏ`ÿÒy ˜2tø~{_˺4 ™Vëæsð™R…fC?îÃ0z[ÎÕÌÎMEÃËk‡Z›E›ÜÙ´Éؼ-Û×3Y‹WŒîÔŽç¨ÃÙ—u,ñ®¿Çp–ïØÒª7½jw1R×%ŽQô-PBzÍxÏ"£ c}ôˆ&ø¸@‘-PxQ-P0 {+øFª]U<Õ[ÞÉúåÔ_½Çù"õrãû¢þê+¬¿Š¨F†ê öˆú«ƒâì.¨¡ ??‰:À¦×§«Ó븺½iv˜½ÝUÌï´tBNþ]6û^rä¸ MÓe¿-jÎûÚÙ/·^ûBÃo¸/úˆ5º‹áMœÞ¶<åXÉæ îØ½‹í•0ܧŒèg4§}‚nÓÖAzj Lƒ@kèJÅi¬ØG=‰Ð!”]ë*1 ¿:¯±Š¢Ì¤§v¡†d«M·ƒ°8c/†Ûáy=6Ýâa×ݳ¨7ÎØ›e–®/b ;+×úAv8ž¸.X‡mMŽü e]ÿ‹ß¯Ø™ËŠ —u\(¼ÓÀýÞóo_GNê&Tæ¢vØËuxÚÓ+ ”Ì 8_wãðiòð `<”ÌñÂ깊ÑÊðì^åØLÇÉtÿh8ã9eœ ⛋fWžËÿìKðÙŽ·X¹íêÒÂ8èÙ<>p.JeÒHau›\¯ 7œb3pÕSîÁ²¼óÈÀÎ=MÄ”>öulÐgMÀ=à×ñX}X ƒñRºÉÑÁ$–’{‹Sú¨¸&§ÔÉPlílƒ §4õ“¿CbwÓê nÆ’K×år¹›Ñ¨*h-' öBôäRp²«ø†þÞ7èô¾¡××㚬}ƒo0^[Ý7”÷eGØ›­>ËÑ,çÓÖ^ïr¿«¨B/{׸8ò€S£ØœÅÚUqªLò^|Ž þ±Tï/–ŠþâË<”ƒ D‡!T™òÃÅÊ]\ ^øΗý›˜¥Yê_Þ©ÿ †_ùd‰ö(Ú&“†‘ä°ÞÉ!¬lVƒÍœ-‚Íè@-æã¾ÿØ{×”óÌ¢×­Q k4pÌ«lnúÛ]RñN‚»&¸›ê¦±ÛÜç/u‡&ò ~ÝH´,I\3>^Þu¦¼*‘—‡ûž~L(œòÆ+BÀ]}Ci¸ §ÑàÔ1å'³ãƩﵽ«ÆY»Ô[Îã¦5ÔVû«x§Ùs›¬8ŒR³‡7QkûL3àÕ9~c†ò×Qþ/‘?…ÿÏÄüoÛ׿ƒ>ÿH{Ž›n¿¬ÜN{ÊK[‘›Âñº>f:Ħo§ÏjÊ9ÿR•vRÚSÀQ©0ôß úÛ!p·Vù³ü…¥Š!M`è¥ÚT©q¥F(ÅÓ_êÄß]n@šòh¯ä÷Õ<¶kgÒI÷ ÝC©â¬T{:óÐJô_É¡(Õ3‡ÒÿÑJõ€Ñx>Œ¯éñãcêww®_>HÊi7õ!ýã äªÃù¶´Ú¿6p€iÔ^¼Äa ÆKan€ñR(È®q©/©¾t"_‰ÇC¼Â¨|E6QïÂâá[Š|„ Öâ™±6Ü8‹ÏëŸ(ÉÄ€ÍE’Ç¡IìÐâ©íÄ« >XŒH1Ö§ØG¿t""HqéÄâAú¥¸¢Ý€YwÇ"…½[{…µ›á«G…>CyÕ¹üÈ›ÖÈ_¾Æ3u‡óUÚN¼~à¦MhÁþˆ7Pš‰ÿÙ™óýÿŸj‰ÿ§™Õô„ÍkÌ¿üF·›úŸâ®ií¦;¡(UógfÔŠwͨnºcšöm³Ý¹óçR68ð%,w|e‹fðj Í€jE¦Æ«·zÄ!wÍ`%ÃCÝ5ÑÔOä'ðÈÝ‹ƒfå_Ó ŽÉ¿¢ã/Ü$ëŽPKyÀ%’Iš‡ Gd¨G$h<éÈñج\õÄ2®½›Ö¥…D®”º©Xí´v!°Ì¿æ.áGÆZ`L6~úSŽ/`*’Ý›‘kŒæó¬ÕÙâ›jnù%ò¶GœÅš¹é²äI6%µ qåèä£ÖV 'ñÄ3õ1Õ5«G§¬©õÜt‡=veˆÖ\JùK«¼åpD’ƒ|sÿ/Å\JÅäQ5Fój*iyÉŒù“'U7¬\œ²§v®¹P¼Ê¶ê*7É^Cü Ê“¸G$¹jÅ⎠?¸ÁIqÆj>_'tÑ|rFÞ6ÇÅé“Ìèzšåü Ö@ô¢œGuæ¨GqˆÌ¥»F‘áÒö‰Rã‘Ä_rqÒYÍ7À“HùJõ9õS«®yÒ‰›î ¿gq4öv H9ŠžÁ/½ÚY¡þË¥ýøC.N—­æó#“.m/»s…|E3ÉUBû+uY”E™\;@ç¡õ6Ð9K¢œ¬T‹…òcRyý˜JñÁoìÓþ“C¥Ý¨ôU‹=ÕÓ]_Þ׎5PÜÏ¥­N£8ƒÞŸUÚOw&õ—ðÕUÒnª,C% ?šd *3Té â.”vªØåÝv`—·GuYJí ‰¸“­ŠâÆËùoià£αõ+Þ¢ÎÃÜO’[ÂÄ)µ“û±ý{tÎ1äW"J]ß´ù5òqª«ö1ÒC~˪´15°-öUt.Írï˜]˽׈-Vóæ<ç·2ª³ÜÚž9p…@ê@Ûèå´5yþ¬¸;¦L5Ó(RT™Æ.m¯”Ê(IšþÉÕ )çm¡QlÁ+½.msKiÓ-¤Ë‡ ·¯\Hþäzðпù’/AÓ}¹:ßM}Ê]8oº` á Ú/ÉV ®zEo¤$ÿŠ8L:ÙüñEuV{¬Ðìå“D•äòË´Fõ‰ŒÌrQ5pIò‘¸$ .’ -oª5ªE]÷W¹ÖM§έÔàôŸ‰+8ƒØG‰y±æ¯Îximm]sü%ÐÖ)¹¨Y¥¹“}êŽÆ+ÔÇJíäNw­¾ºPÍ÷rÍ©‡äº RÓ¦ñõZÁ`5?ûey‘›ãTöÂj«„M¼uH<ê¢A‹¹X)°ÀE ¥PŸU´ýE¾G|a¹DžÿÛ­·…PÚˆ .|‚¼íAõy]–"ñb¼™§‹ÖNp:wUÿY:}ô‰WÍ>ÕbÎ^tE«D~æòU›óŠÄ<À”§ÝCûÁ|~Ñîšù—¤DKMõ}+ÉÝ@⦱rWßáOêx¶[Ë ä—+P§¼˜NœÄ懿úsL#ê¨ÔÖqšTØ@Eç7/oW‘cÎ]·+¹.íš›1æýךNÌŒƒÔ0üàö®¸ILõ'›Ú~Tm…ïÌèÄ_á–T‡:WœM»àâ ÌgùþÏ^ü ˜ÜÒ?qÝZq]¤¸Ž‰.ý›&®ûV\—dÆq=ž'ÎYÐBÿ\qÎ;Jñ3´´ò¡DA9 ú¿ }xЈØRÚ^ A´ o!þ!¤Iì-ZÏÇ„-^+¦Åµu°ö_¸Sæ,°Öž’ÒŠ’4¨Hñ¥žª›»ž«&cÕªŠÖÜÆÃÿñm‡.šõßÕ%÷9—¶ÿd€‹vŒÄÍÿ¢»ÿ¢µ¼™Òÿ´»ö`¯>?¨¿“Ñâ(ÛØ&ý­v&XýDûõï™`Ê:ÎÌ…GBºPjHû¸hÄ}Üü©ß­ ’;)„¨±6¼WwÞºgB}VS¸ªÅ-ÕÇ$G©x.NW­O¥†uU‹åüœVb°ÍØ¥îšn85]4ëæ,àÚˆ§a¥úð°dZW 6(ÕY9ŠÕÜo–ö RÍx)ĴíóºâÖbJ™,W/J@³šr9µÇêRã Œ™e$wúeö¾Ò1¯vrÌS}²Z2[ª±Z—¥±š3ù,A<‡Äºê&¢Ý‰3Ì—òì#dë¦[Ô‚ÛGµÀm~N—·¼Tª'’ø/4«ùû’êARÜæ®Ë!Ýâ÷µvÖ§ÿ*µÂ‡£9Òµæ€ìxâÅÙ·Üü{h{Ïwó_Ýb‡Ù«Ì”þ¹”Ág\(¾GΫtGÊ+Pþ=o|G¿æ¿H¿óg-øD’ÁrV£Nª? 8‡ È4N2õЭqÓö^LÈ!òø%¦0ì°ãºR"ÁœÚ‘­RâÜ#Ûªÿi*§<é3œ Bƒb êŸpàÊú ¤Ê1³ ´µ$žÙMI#øè—C¬É±ý4bí*š€ƒ!MÍh)‡Û]ÓY©QJùkÍ4kMdƒ ܆7{e½ôßEü_Îïnºù‹¹“Fž´‹Ê€ïãŠËåºL ‡G7sóÏ”kéÿ€»¾ñk{¿g•6ЀI˜Ê@;Tâtîcª…ú^z”ÓñYÞÔSøÞ=ŽÌOé;šméÒö)åÁ/†»hÌçZ¥YɵFµ•ÉJ«ÍÜ$ è=Ô{ ïâi$¯V¢#Qû¤7³„ÅìRq)G-q÷?§×©Ÿ•P¸ìOdZ‚;˜‰Û-¿ª+þ'®L’«Äb Ð-òæB™ÍÞËC±ù*ý³)‡ lã¡>íѶ¤ÔE®;‚3!ž/§ƒ³º(“Ý´æ*«´aÄ-œîļOÊÆ(!kSÁ³Êk¤žb ;•¨‹M×tÓ&bü¥›vZ‰ËŠ„$“˜é6=3Ýdh4Œ¹Œ4I©UìMG]©’ÎÞ«4 ×ìC«´\wÿ¬þ€c«´#.Ô©¨®HdwN—h?tÇb﹪Ý[NS„§Ø¤Ž|©ËQªŒz}²:~;a²ºWb$WŸµJs5"‹U4̓Ͻ¦â«<ª,SqI¦c à6Îq™oB>è"_ùd_T²œ9`ÚH¢$täNÇâN…1SåNGâ-ÜüI J»ò“Z N'bÌx±N‰ Ý‚›¼ÖVõ´Ölý»ÃÿL)ñ€×kª­PŸïf†,O7»£t«|­7—ŠIÇÞÉe4t¯£]ÓÅ]çð2U±µ ¿íŽ?¥ïÑñp¼ü+ArÙÞP!AÉtÇ­‡0á0Òœþ6‡¡N7¬6ÜQP]–þM]Øp–þëÂæ³ô u¡²&Ý~cQ#h×ô›ÿµ’r2çfMÕOõÔ2>HýÂ*í‘úJ„Ìd9¯²}U¢ÞRíŒj%rÒ—h×RÞy濬¨Žj/°,áWý´è(™¯ "W¡Œ%“ñ^-«%Ý$ø¬JÒ½¿?}wþ»§ïÎßž>‹ÿüé³(,yãé3,é¨?kþþ¬=øïžµ{ÖdñþÚè‡ÿѳ&+m ð°¦SFþõ“sBlmõ Ç‹»Ø¥ï†G¯ìKWdZí<¢:À£©² åº7Õarç\z}’kµxæ3½?¯„_ê\Í*ñî傊{Æ Êï¯â.IF|Ï Š-\Ô™Œ>â”Õ!ô XÏEMT×øî<ñž0oÀw’ àµÆ—æPôú”ÃÆ©6JLµsù">n™5§Ò-d„DšúÇ!ˆO,R}2_G7õ#7uXN¾??ÁYÓ-$E³”«AÓ¢?¥Q~¾Ld+ˆ\M}hå5‡/ÏTswð÷ÜÔ§ÕG4KÊqÐÇ*íÉ¿Tæ*îüU©õ XZGôå2\ARáú‘ay•žHã;à(çĬÓP~ÿª¦ƒ•6JÌŒoTãöüîÊÐ6™Î¯SQ¢üB%˯T½ªK’¹ÔE}iÍ4韣a _ð8—ÿFòÖO(‘&™w·ÚÆ]]PZÿU9¬vÔU”A®;ªÔåÈUOu±¿¾~éFê¦~á¦~ TçËÕ§4«øaT~l¹=ž$èkv¦î¾*~´A¬©Tyº„¿Åm…èX•‘ˆËj±}uYªgïÇ_S¦óµH·ÄÄb^Ó†¿Bù5vÌÄ.üñ!Ö —â®p²7°qùÚu´›6•¯òFÉ·ðYfý_õ-¾¾°b(Ä¥²{X:Q\Ê€ÅKïßÅ®Óô»¹…«þ¿ÏåË×øûÛ 0 ±æ+uÇäü:óõZg êÝ 9òuSC)µCk)üI§^˼Ru€þ–*ŽEYñ˵”ÚÁüV„‘Üà#¥Sn\#Äë1õ\ÔOñžü .‡Ù MŠðÂì^~.Õ(F¦t:m•ˆç15Úòî ׯ¼b4{+Í^ÑF Ç(^1•͈rÐV0šTÑ~M ¡\;РœÒ$Š«at¢2fr?üGnmøZÙŒþ e3ª±l íP‰B“:(g+4_ Eê`EÍâƒåÚíº—|Wá?XF³R;¹V%æõbW*¯©ÿé²Ðùr}KAÌã§ÈµQÏÿ£1w×Z̋LJÑJvòvÚþÏk*•Qé¹JjEÂQ7lQïõS+¼~jõÒé½~åÒ9ÖT:]EÕÊ»Õûú#%àH¯w.¹.ÓMw@á”kµhî߬Ã{;Z/Þ|Õ·Ù«|…7‹´#uJu/¾Í÷8ËMü·üåÝœÄÊ·ä9 ‰Õï?üÉUºÁÛT½q“·¨¸Áë«ÞƒÀzñ&„[NbùMJ–ß„ Õ ^%ËoCðàarMb%°Ðà3š–X쪟ãr°«a{š v‰å`—XvÏ´UýW`ï‡á}ÿ“po›ÎG¨øDNmG̬ˆ$÷#õ_жù.N…ñQ´Ú⃙‰ù_(™¼}ºHžŽ¨Ÿæ?¡çT§O¹åôÉŽ˜5CÄW ji•p×:v໳“7Ç£¥=TOMã»þ-s9°HõçQZN25 /ªL³¶Gx¤%jÉ«!ë—7dµ å%s:þIè¿Ö^• ϤP'½±ÁläùWƒ²¤*ͤ'‘Ö±ŠC3•:ªž˜¾Ž¾©‘Djɣȗß{5žfUþ'}cÅrœÊ¶O”É„÷?­e®g”UþÔéã£%¨QñÁ½«Í/–Œ¤¿º–;Vó|'æé˜ïÆ<ó}˜gbž…ù!̳1?‚ù1ÌO`~ó\Ìó0?ƒù9ÌÏc~óK˜a~ók˜_ÇüæÅ˜ÿ‰ùMÌoc~ó{˜?ÀüæO0†ùsÌ_b.|ÅsÌ07Á\Šy-ÌÍ1·ÄÜsÌëb^󘿇¹æM0·Ç¼æ-0o…yÌÛaÞóŽ˜wƼ æ`Þ ó˜÷äR„ѾÁ=í[F÷ìÙ2ºMË趯–Tþ7ÀÓEѦó´–aÓÚbñh¯ #ýÜ<‡â®Bùß.;ð¡050*:$"\ü""b¢c¢|#í#}£|'ÆF -„ž=ýÔ2Ú>ÂoR Œ½~û–‘öÑöá1ö“}cü'RYįƆ…øuôDLŽŒ Œ¦ƒ÷ëÙ“—öìéã#Ô¼zÍ'T SÛuwëÏõ2£æ |£ºvyC!¢üiÕßå-&øGLö ü›íô‡©¼eÛM ó t ‰ù»ãN Çv^þ¾áúmÿv»·å§?¬WLT ïäž=]B¢#Åô»m¯ÿ;<0:0æoÏWÍû½{¹^ÞÃ=ǼóöAa±ÑÿAyÊOÿPîáÑï¾_p`Ì÷À©aÿ`{JÓ’àéÿä|ñ~ýcƒ¢Cf¾ÓödB1±ÿ •;ü;µ_ˆÌôíwÛ¾ÜÚÞ¹<úmúO Œ~çýbÃ_ßó]ö‹‰ˆñ #›y×ãˆÛGľÑþªm?9:øŸØ…wløÚ¹ÜüßÕ^«m¯ÿûv{­y¿ºý€ˆØðtœwn÷jû½s»×\N¯éáo€£êçûm~¨ÚöoµÃêõ›VÛþ­vXmû·öójÛ¿ÕnkÌÿoì¢Úöo´‹jÛ½ÕÿU?ï´½<220<à-å ­Þ¶ï¼}%Û{ëù©´_u|×ý¢)ýO¶§s¦ð ú‡Ç©n»ïº_u |×ýj²ÝXOwßè˜þaþ¡¯jûÏ÷ Œª”Á»îÅ YQ®Á?;þÒ1.•‘àõ ½yçvÒû˜wÝþo˜²}x``@´=“ò òïØqZ­7×?xFH䄈hâÃÂ;ø÷ŠrpBQ„}ˆUDÙÇL ¤%ïàޕ׈ÛÑ®¢;ØÓò`RaÌî:ØSØ31" ƒ}\Hx@D\ÿ˜h^6Ù]\­§tìýôN ™Ž»tüP Mý*z… üKw°g—OçÙ7ªœ@Ž ´÷ŸHÌÕŸB3ûpûkªï_={†Æq&Qb&•‚:ýÄ'ÚÆðj]ùi÷µ÷ w—· ¤õáþoÞÞ÷ÕFö1•ÿ ´y{ê‡}H8B ñ¥ºFÀôútôôë%nÑSû`®ÏU¨`ï˜_ùUû[åÒs q÷}Ëù¢àVÞN´[pDDÀ„°Àðà˜‰”‡ï´ a¾3¨mÃCü«,¦R†”‡·Âk}ñõÞFës#cchÓ>c'¸º qóR ú èŸöìF›Qv•:G4ŽV~¡R÷Oó×ïúÚþ¯ùˆ%z½ëOZeêɈÐÞŽúÎÓ…Orxè¡å ¢§ c'x¦Ùpw͇ŒpwøLVž^xºÐ?¹×7RýÝ=R >„”÷pïÐßmˆ|ø¡¢q\®Fõwóö¢E#† â9jˆà!]±ÌÕÍÝ[1\ÁÙÒ¦îro$‡xNpuA»SR¡p™àâ6À›3áʇóNi…GEÚ•JY±ƒ×˜!^ý¡bÉiÃ!œkb>¼†*ģɽååè/¢àªŽóvWŒT¸WÊA(åWWù žCܹ–ú½*V•÷v“¿* Ud€§ÇÐá /d®/CÕEToùwo>Uà˜J‹*oXÙH§ú†…Øš&ûúGEp?EèD½ Ê~¢¯¸%õðÀÊ[’­w°% "ŒœH}0€L8&6*\4öqCÂí#£"ü©S†„׸û+ZhßyZËHÁ½H-Áž¦hqqdDH¸ÞG UZõjâ}ŽôÓ ß0â5¯ Š ¬y¯ˆHß)±5®"î­OµŒ~ÊÊKé¬ÄPä ÏI°ïÓW°oٹ˴׶!{,ßæÕä;Õ7$ »· ‹­õúÞ©úšò`…÷ ¨a¸OÕ5°b±RåkôFÿj›Š5¯¼€~Í«sô*°zµª|7¦0 ¯2Ô¯U* ï4M\¥G•šVÁO½¾—"Ü×/LìOb¢Òò¡CÉrqèªM7`øýAª­»¸+†cUõ=<‡xðP¼¾ÂÝÍÃÍ»JV¢'­ZP:] ,Ñ|‘¹ºs%¤À‚öA}\åî^ ¡­{Wïöj1z4Uäͱü?À%}þU¯TE»jð&>Y=·ê…µ§ °ò |Åȯrá£c'ºa{r ÑäƒB‚B¨áÿÏ{[ þÏù¼ gCÂE¯ëÇá|¥¸<&"‚|cøt{‘ÙØ“û ákûÄ£§Oö‹‹®Ø—ÃývTs À*2 ‰)ß?*0’â$¡ê>ö“CDgLÞ!"ÈŨØ(,„JêÖ©¦¼ËKSuiÕ=p”×öxÃR®qo”½Ÿ/•€VûGDEñ}‘‰ÔÒÜôiylxhxD\¸}yÐË1“Td¨74P»òÍõyˆÎ‚Ë[ži”?ŸÜe©ÜÑ1Q墯½¾¹Ê‹àã«/Ô«…åÕÆbLöåD Ñ u–ÈéQ!Ácìœ>tèÒÙ±³ý @ßp‡°ˆØHûäÌ©Gû†Ø{øF…ÚËáBÅ|Ê;Ò›ó©¼ ‡–•yš!ù’NÃp`TTDTÅRüA…ÄdSPPˆH`x ÇS”ƒž¤—oÀ àB¾Õ¾Ê ¥ê®>U*ÈÿiªTú§*UªaªT˧šª^yªrjÜÿMgæŸM+;›Æ±îàky›õîa²ÏY7<4™oP KLÂ7¢>\çÏcI ß®XúKÒEþ²½ð]ú%¼IÉÙ+¬“ óV±nï¾Êìµ5žµ©Cú¬—5ÞáìÓxX ážý–I¬•SvÝg]$߇¯ŸræÂ{¬K¯ÿŠˆXꙬsóù½)adr5 dnE Ïxê÷‚õÍ£üŒ¿à9N‚÷Z ÃL4þ}¬ž±~h!Õ²>bÞ‹õÇÖ!Ë}x°?!jJ0?h,œ¾nØ›õÀ3FƒY¿H´ÈcšZkëgR?d–¼­?ësG÷\díü4ƒGü~ ;x6vÜeþÊpÊâÜ%Öcúœæ1K…Ÿ:¶bÝS(Æzΰ‚#¬ëùæîgú`GSÖÍmÉúó»ypZÁjKÖ¤àKgÒ$ã ¬·šg³nQb¶•õ‚YX×vŸ8šõ}°îãÄ~ Kå—¦²6™r‘€2ìó0ø`;ë³ü%"A¸•‡;ÞOÝÉí ë®ï_˺ë™t~jTøæ¨é4Ö<xxañû+4H¶ä{,&ÍfíÐg2?C+¬ XÆZ2ÎÿëÃBá¹ü|Ãøû°ÂùÎxësˆàwõ­&|»N˜¹N‚/qx ÇzÔ!+þÖ«]¸6´$ŸþLßÇ_÷f%íâ&—ÿêÇÚÍá˜Z¸?+CQºŸù‹õhßm¬OKÅ=ò!ã[Ö×:ï9ÃZ¾îò Ö+Î÷a=ùÐiŒœö׃sù¬'•„ `ý¼0üÖ®IÁ<Ø¥›îsu´ƒ‘ ëßve=Á½¹#eÁCö ½§ãƒg?È Z³¶¶6ãáv„ùöæGY·L8ŠõöÄ{Ö²3A»X¯½î{’µåÓ¢Y'-l˺Yr.>[ºcC—%Ôï³7@æZìèȺ׸½i¬ÛÉÚ^•~‹õÎíû¿`m~m'¿#|‘·Vžý“õæ¸<<¿`Ûê"á%¨ê]BÙ˜ùóG„„^¬‹¿=wŽuüòÓ<Ô¹p(ë<¾¾0üÞeOÖwƒ÷œf<*ã{Ö¿š¤öc=¸Û6%ë í-γvoT‹_[ 2ìÆÚg†‘œõÁ2þ‚—0âr0¯)”-wd=}_ˆ+ëEÛ}³~OÄc )y-Yw»6q8ëqæøÄá@³=¬wÕ3hƺS+ã¬÷õÚ}˜u³½<¬ªðéØíYMÚ>Žõz]AkÇS¹©¬5k ;°n¼©ˆ?(!lÉ ø’u«{þ7Y¯þvR,ëZËù=AØh"ÃÛýºY–²N 6Õ%ð0ɼAûñ¥·º3Ò¯±ÞÔ~ëLÖ=í4gýåâ¼OY[ì;û;ë´²K³X7½|É˟Ϻÿµ3wY?Ùþ+˜Q¸êÂû¬©·GX>jµëë«q[p n`µ\¸1VŠA¿#'Yalc½L‚X3“Ôf­[ȯ– !›üðl{¾.Ô—µâTž²œv­V ëÛy¬½UFCXgm7tbíÛ*x=ëÇõ|rY{ áO’ãÂû²4éô&Ö—Æž+ddvÙ™õ^绳öÚ”Ár ‡×ì)b=ûÔ¶¬Kt©ø Ý½½{Y/ÌÚ}ŒuçåÛ½Xÿ펬»åò«½Âr“[h;ªÈ›õþàÂæ¬;Îâ·Ò…ôA¾xnÕ ÑÄñ¬?kÑŽu÷}füš€ðõbs|QhtÙx,km™ƒPi’;6‚]Íóë¼:èå ö£ÃaÀUŃ8ØëüõcC9+å°éÂBà•Ûž,ØÉÂâ2àëñÂð æž©ÀAøMè‹Tà §ì’aïÃl²à_­›¢Þù‘€'ŸÊËÐN# 6ÁoÕ½‘ŠóYš œX™ Bÿ“ÜxÐ`£€~|ñ™üßǻἜ± Cÿ¸ÜO¿¾Ær,Îç7-0h½ð›íZà‚½ë6´·oÜFøáﯣ_þ‘{x×BU„ó¸í0üû›Æã|—®u…Ÿos"ý3äE$puS¨#úQÙØvö¬;ÈLÑï'÷°^Ýïæ ÿ°Ítæu|Ó{üôoÛ°àî¹~ZØó*Ë•à C“ `7µ7žžå=» ?µüø3àÿ¸?ø£Æ7¦ƒG¥z;³^› Þømc ;oØÜüäBdØÕ—òæÀóõ¡/ÀnŒ½¿ÔRvxÐ#~àÛMËÀ‹®­]ÓôÄzà¸Ï‹ Ø×æ«-€÷·sûÁÎT6àGaÛdðk?¶PÇÿ´õ‚ÿhëÞ11.þòÑô~àgiÊÀ˜F2ðáÛÙgïexwn×*‘EàÙŽeñ>¬_Þ¿>½?ëppÖ²\ð×>)ÇϺ-OÞcº ø>Í;¼Ð)p=ðhp² ü·ÖÆdàÊÑg©àëIÇ7G=Ç—WZ†=^ýÒ¯<|‘e–x¿Ùf,øºAs9xÂÈ0ðË9ò8àâÀ‚nˆLn8§ àÍ €wï-”ƒ_~´g,ü~rqøTaaüTOð¶ ñÝ€'«'ýj'ÀÿÚÉàC^޹ZXê· üï´W*p§ÞáàY£”Á?~¶> ¼öìÊBàII†)ü÷­xQh‘#ð®]Y;ðÐ[ÓCá—RF‚ïE4éØÎüöj·"àMŠéað\ïbøçf÷Á+¿¿ 8ú]ÖFð×àe ðû­RÖ‚¯¥o: ~ôtmâ–ž'îƒÌ|Q žŸºqëc·!ë+[ œŸÝ_¶´°žßµ5EÒŵøStœ#â¶W#ÁSæ†"¾è¦r/‹Û6ñЂgàV7®"®9‘z|I›Pp…õ ›•à5f͵ˆŽD¦€ªå{Ÿ¹Žo¾hÖqÚ¡~¶à7‰––ˆKú'{‚‡nôFü—ùl:xËÜã~ˆ·Þ?Üøþñƒæˆ;¾Zo <»´Ò<¹‘à Þ0ÖÑ|þs??àôy¯éà¿õ=¯GÆ?^áPþqÆîx…ZàÜð=+ÁÏ—ï¯È-LA}ž»¼¹Ÿj!âÁømËÀ3wµÈEÜýÄö8øp/׈3gĽK D<ù`lô88ùm+àùÀ£×á÷šÄ}ƒöiÛØýø'³N°›/}o¡e]þ~øajøÊ‘{GuÉ7ß·ÚŠvYæ ÿUwloøæ_â<ÏXœ<ð¸>¸yÅÕøUÐa pzñ§Gáw=1C»÷¾í‚v0K˜3¼g&p5p¨ðctýá·#>Y ~ÒíàØ¡dcô·„ý£`ÛÏ®€Ýÿš~õ«¤6pdéï¡À£õKDÜ~éXÿvô#ôw?ô»™­SàŸ›}~ÞµíýÀÛ6;¦‡Þ/Ú ¾æêó~eJ­¾°¿vSÐÿNÝ?ñÅ‘‡àS?Ó¸“©ýýëñ£á‡7i¾ðy×KÀU»–ËÓí=‡ÏDÝ­¿¯øò,ìcÚ%5ìÚsç`ø¿zR ðĦ~§€§ßÅÌ^-oÒ¼îXŠüÏ‹cÙ°Ó-3`o \â+EÏz€?•,yBØüTàúG7ãÀ_ †;'>ìqö ½vÞÏv2üYÐíÁ‡(ña}¦à{àûo{Àcw6ƒ¿Ö†\_²?^ÿXÿk[ø‘!ï‹x;=vxésÿ"ðÜã2;ðOÓÆÂo­û5þ=ù‹CÀÅÍwLà? qÏ9Ðbø K—_À·¢G[9³nwà öÛx‘87tâ]àE°AWøÅ¾±à²siàÙ‹2Ÿ€ïù¡'ðÿZÝYðsgã÷ÁŸ;]N^ö²‡?˜+¼gë‚ïÀï>XV ~jøW[𰱊ø»É~®Ïiô!p,mÊã+¬oŸÚ ^R¸.ü}ÜöÞàÏ¡…/Á3º§Ã[ÌnõÔ xje~gäšoÀÏ|ø€Ç^¿Ö ¼9?éøåÂn?Âî¾p'½p/'ï4üûš°Uà1MF€¯w°~ñD£çÁ›úZ|ŠÝ48¬,À?f«²àg[õIŸ­=ʼý3¹ <úÛöÇÁŸ­ÐÂ/þ¢óþûŒŸ?<ªûnðKõsðz§ßú‚ÿf<œþ©Y»<=¯éCð‰ßw‡ß=o <* ÚÜÞy¾ ñÅÜmàaFßù÷u=™‚øhRä ðˆñïµÞZ¿ü~»õg«ÁOâÛ]@àæÜ|÷ÄÈQàãõ^¸ã›yùàW+Škg²Þ°Ùø½öðð”ì™GÝ­mÞcê8`ò|Ä;ïåg‚W8ì2~:¯Ü ž÷|2≎ýÛƒ75lƒÑµ„Õ}¿¾ýèwïÏfˆ—Ϲ‚¸àINøî©Ÿã×­¬ÓüéëéÏÀZD¤×ëÇ¿ Úãˆ8í“Ó÷ÁG;¨F\a:a0⯯Z€'†hNOo~5xuñqðºynFˆR›g#NH øüv¿åhÄ7¶4™Ãúô…KàÞ'–ƒ§ø? |®gƒúˆ;-¢Î‚Ÿ§ä^Cœ¸j·=øðI£ ðާáß_ÍšV ~8ئ-xÍOàû-³F\Û`î]Ä‹J»".š:"ø/ï—ž{¨í“Ö÷ôþþðb✯VíC<—}qñ M?ì[ï ž¥þeø¨ùÅ_À÷zmµ/ò³r¨Aœ;±Yâà J[ÄQ&¼€÷Ž«—ïXXž­ºb>rá㱈Ûn}Œø¶| ÎÀ~š#2ÔÿöæTàê¨U~h‡.wŠ€o—&„§võ(@û–µÙþ»ÐS ¿pe/ü·dv‘¾ÿüè¯ç'Á>»Æ]¾Âz¤µ?üÓÚQ áÏžu^?Qw­5ì}Ê“Ÿà'd΄Ýý¼>þz€4 ¸Ó*â$úsäìŸÑmÔÎý•öðzMn´sëâSà ý—Dã|ÿdŸóvtà 𑾛» }>:²¼"5¸øI®°ç=¤ÇPà¤ù„›èÿ×îŒA?Z°êwàÿéó/;®ô„_ë¹öÕ¯MWàæ|ëëðs¿Å†ÿ¶8Ëí¶ü××OÚÃ_Z» 8Ô®s3øsÏQkÄø0 ¸º\úþà“õÎð+ 2Ÿ/‡ä®ßhŸÖvt¸ÁJØcÊìvà ¾@¿˜e/ŸûtÉð¢ÇÅJô÷>£ëÂG÷Ûž±sicð•üÇ_ÃÎ&š ÞdµáúûUÓÙè7 >Áó"S€'iõí€cÒ7Âßö¾l œLüC¼.teN<ðÚ²Óqà~¨2NôgVð_9·‚w´Í1~»§¤Ã/?LŽŽ.Õåâ‡gu¿|ôh½ ü³³1ì&»l ìïÛ$sðÊ÷¶\„˜] ~·lZxÒƒ÷Ãáß ·ß Z*ú‘¤~ào^åíã»t4}>{yƒxéîSwaï7/ ¼R§w®ÿ%ðÜ ²5ppòxUQ'wøãÎsžWFü¡_YÒüæiŽ ¸Pb7ø÷(«…àMÇ»Înzøí¬ói™\ üŠNÒÀ?Õ+ë^ûÄyøùW­ûÂî[¼_ž(Ÿ6þwsÁøÑc[ÆöÚ98ýñéßÁ?¶Ä9Ûð&ð7¬i/ð+™ëàâ%]€/ó/o<³æxæÖ§Ã€F^‡îé8üY%[ÿx#¼+x½ôÀ|Ä“¿ï ¿÷ÝUgø¥óŸ#žèÔÖ ¼|Їð·÷§6_^Y{ p`Ú¾öÀ“Æ…«ìY>*^/ì¸I™É:Sò¸º.H¾h÷ñJàýt§vàq«V®ºw·¹Èc†‚ÇùÄ€,>ížSº³ühøbð·{I*xk¡«þ™Ñ4¸þ§ãeàÐ’‘þà÷¾Oϧ­™|Ûûý^ÄOçHàw»…ï~xɤˆK¾…¸G×ö$ð¢öü™ðû1WsOýRh <Þ°ï'ð|×Ú ¯4ŸºnëØ lðkÉ Ö/7oÿòh4ø@³»ßO\Ù® žjrÛ¼Þ_}|@Ûʼ¦Xþ|yØôNà[4Y{ak+ðÑýç¾+É~ \ZôµñœŸåÄe¦!îÀ»}þD¼t±[kàð‡Ÿ >1ôeGÄ!ŸïòFœó¼¨üÁfÊxð€¸zW?ì(^ÇýÑm!â:Å~ˆOí窀{S—]O­óhøï‹1%àñÉ}G€ÿ55™‡øÂÅ·/xÙ'5àW§6vGÜÒC>¼m|«ƒˆ7¶«§"n9wûøXĹÆàÓµ¶~ ž|½I]ð͹Ó7 N(9ޏs›eøÂ¸¯³€»NÙñˆ§ç¼Ü>ôû綈ó̺¥ ^ fž³¾^xHÖ” ˆ/;E NsÛ•~ug®âç7Òû3Ý,ÀštÜŠ¸XÙ7q„Øpðãƒ.‚g¿,ñÁû·€ÿÍ8iޏí3ß]ˆîšƒ×–Oq¦Ñ.·-}qüÏeÀ¦“¡=#'=(ñ_¼Y°å°¼˜ûœ~)~÷ÊÙøÇUy…° ÙNwøÛø­³`ç¤;À–îo ?Û8ÍýlÒ{ðƒû»¦öÉQ¾÷.œ¯˜üëuô·gRQ/U~"ð°NX2p tC&ë~Oa§ ÂÿÖ•ŒƒÝû›„OžYõßÕJ-`ï½ÂíáÏÜC¬cg}äð·ßOõ6¼ült~1Ï"ö³®–—~˜º|¥ÿ¶dô³‹{Ž¢?ý”ñÔ™u—óa蟊ËãÀ[.³?øñtô«V…«ÃŠøË#Ãæ°ÞŸë ÞtÇøÉ‘ÛŸOí^?ž¾wüCƒtØÍã$ð™lóBð–­f%èo"fžèû9àÛýtgøËÔKrømÉÅ)Àóä<{àFÙYkø›)[ÁLv¦Â¯Ý~ª8ý ðcšéQð*+á)ìu¥lúõUËdð©Ù“,`§ÒÉ}ÀÏ–„GÝðû ¾`æ œI ì vÏOÎ…™¬>5’¬o˜'}||hu~-pK!ìÙ&­¸9€×t5l ¼ù¡–;påW‹YàC§À?¶6ƒwï3³?;jn¿0jb*ø¶}D"üì® 3ð'}¯ƒç}\ôü§máQàâ–\ñ:~NÁð–1ÛûO;î°JÛ;|'swpèVºÊžõû·ƒ?³5øõçÙàM_åÅ.¶nE_ª¾ô›¿â„ÏzÁ¿[Lž?6cÒXðËë–§€ Ëe:Ä µ„Mय़˜®?»cµünô[àvÉ=ñÉ8“,ðªÇ~£€×sƒÁ†uŸ 5N¿<Óø¥Îo…µõ…àÏÁ¿‚ß{ºë2â‘ÅûÊ€cõÓöÁ_úlY }îÜ·ˆ;¾>½\ăóYðûž—ﯟÞ ù>câ~©&àùÊmÝàÿÏ[´/Ú\«øn7ÃAàer#/û”çn¾ ~å¾8ì²Oäw¾ÛwA*Ä)-#òRXŸx 8qÂ<ñͳÀ½fõ€/#Œ[!.9¼»øø¶½fàaíwŒ_·}x`Vü+5÷x}‡Â5àmïø2 ñÐMÿ{ÀáØI߯ &/G´Zfü-µì†¸*Ê4ñ±0 ¸·bÿ ð½ké3'ÌÜÚ|Ô|g#ð”Oó#¾øýì>ð¾Y—ÊÀoÌ.^/ŸŸ\¾{æ⽉¿nG\ôþðxî¾zˆóíj|Øn6ñU’t,â•ø|ZI/ðžÚ3ðå%kÀcŸømBüáªÏ®v ü'¥Ö5ðÇ‹<ÄCŒTàïN†ÛÁûÖ·B<’ëS<Ò-d øbßð8ðøM§'!¾-<7¼Éù²ðµûù^ˆë6fl_*Ú³qòÀm§ÏuNÕ§÷8åØî,ð[¯íËÁ#[ìøñÅîÜnàÅ¿˜ ^ñ.…¸¤ya0øäö àQ‡|!~?±â¼víÁv˜íCÜ~Ð|1øØXãËà eˆ˧†áçºtóC{¶wðB¿ ;Œ~ôIÜœ¯‘c×Ã/yÊW.îœÎÚÿú¬¬õøíA!ìõ§TOø“ÔMñ8okTâ}ÀÉvÀÁAY6Às¯Âæð{Óˆ÷Ù|ËäèÇ7Ànº§Þ@ÿ²KN…6V%€¯Ìk” ýRؼÙâð í²±Ûqø¯qâýy]˜ø|Ùy?àÁ/c-›+Z¿­µN¯ßæjÏz߯8´ûÝâ«h‡âû¹ð7‹TÀÕ ‡·?Æß¿íâºü$"ôìpjä ô7'ÇP؃}»±°{3Sø•]àÈe×nÀ£ìñ¦Àí[‘ÞðoBÑö´»~÷c–x]ÈnxÄRÓàmýµÀ!Ë-øZËEð+½·•Áþ¢ïOGÿŸT¬„Ÿn>5º¨pçÎtñ>N‰_<üp–§øÂEo;àêg¶ ÓZË=ά¿o^,^oëQûè‘rvÝtÏø¿Z+׃'ÖÑ®žŽ;!¯ŽàuáÏüàâ®zÁNwï{û6% ¸’¤íþ´l¥%xBQA2p=çÄFð—›WŸ'>;{ˆò+€‡N¿æì Þ8Æ3øXÏÒøneÛ<¶EHøë>ÍåðK/BágÝýȨã2àíÜ॒e›Às,\ >Ðuý ø­v/|XÿÜâ*pqG¿\øµ6*ðœù²màƒG•-À·r½lÁKþŠw…ý^ ŒÎuê7xÑ­…~±±¬ø‡‘M;ðìÁ^àÅÕZàÿôÀ"ø9Ÿø2øó?nÜN¾|‘p6wxωã)àwª…ÝÀO¿Xf ¶5ÃþnÃú@àz/U2p¬YòFø{Yê3ðëMÇÁß'”v}ž1¹°üqL–%pëþXàéŸòæð;Â"ÁÏÎÇÉç°^Õ­¼y±Ã ñùQ!~0£>­'L‘/îM»þ}@\1xÌØ°Bðu[OÄæÝâÁ›Z7r>õì€Ã»’ð•#ü¬f“øì§©^àí¿>8 }¨ìøbYÖzøÅG…+ÿ›L3à‡Óì´à+«‹ÀëÛ•ÿ þ™©O2¾øÄU×vð»AEÝ€G³›¦°ö.öF|áq?<Ì`Û}ð¾F³uNXÑvm ðöúáMðÛ/ŠÖ‚Ÿœ»qÀ©âà»s6†‚¾m,âŽmkeàW?&ôŽt°küþÐÔ<¥I;WÄc¦ŽqàÊÈ«àÃBsïÌpUWøßü<þ¬<;ïê ÄOO¤‚7])H>l^i|Û©m÷UJ$⥄=rĆÍǃï¾×# q£m?ð§6––à ÁžÉÀõxïà/#¦?Ëdíîw|tnÈ+’›?@üµÝr=xâ¶+§¿{ À«çžŽàu~~ˆNN÷BœàvÕüvè³xÄ3 À—üNØW8h‚§|°røÜû{Šwš¤‚ŸqâÀÀ,ðá0å2ðŽX¯ð«ž6ÝÀ›ËLÁƒ¤-¼Á÷k÷ D\»rýtÄ‹K2”ˆ‹¾[Öø¿w¡xýõÞñŒ+¬KsµÀßÌEˆs o”!ž«›qq±Åú\Ä­ªÀ³ú-Û>™Û|/ä¸-xQÿ®àhCœ{)0ñááø±ˆ£n{É€÷•=À‹Óe›À³¿¶Y >²°ß ÄmË[¼¨ò>$kö3L8ƒú¸î®šÊ6 LŽgߌ´³€SÆžõо–u†¡ÿZî¿o±*þÛ|DìBöÞSøQéùå°ÏZkàgÌÆ „²kõ-üYãëGá'Þÿ&öÞħ1üd£Nf°»÷nùÂ_7øñ2p§aH*ú³Í‡÷Ðë<^Ô©û7èï‘_h3YOýxFt“1à+Q—ºÂÎâ–·oš:Ìý=¦þ]ô›Ø³_‚Æ«/OfÞ œøÄB ;ë”prúœø½iý›¯g¥÷gfƒ? Ëèÿ59Þ¼#¢Ç3àwø³¥ðË¡©ó£“ân&:΄Üï|ôÛ<üÓ²-ìÆ·ý°?Ÿ’à•ßÀì¿ jfž|%þMYpÜžµ›í×ð#ƒ½Þ‡?´,<ʳÈv9ÄN>ë>6 ¼Ô#ùWØ»ë¡/€WMî€(œ‡Ï]æµÊé^ål5þ¸¿Û àÊÍ"ðï»ÁoFt5.ŒŠÍ€™vN|næI&pvxÏ€ßCgÕ¶/ø5öšüÓGö^àµc‚nŸþnì~|é2ðÄqmÿ‚ÿý8B?:áçNàŸW?l4‡õ•ÇSÀ?®m=ó[ô:àïÞâsä¼,.þž |¹>ü±¬Õ ðÌÛ×í7¿Y?|Ëçøsq§kð%·’ÀëKì†øàÏqð{/ê¤Ã/=?‡xâåª0ðrÝ1î|öž5øò_çgž®9l þy©û`àzA¨9pèÜÆ ðû3eçÁÓÏ:l¾åú}‡øétÊIøÝü‘À¼ï!.9üñKÄ=‡V¼È¾Ð~?§3⩬Q#ÇWôÏ??ñJfíbàÜqÍà-Ç–ß=rt&xûQ³Úà'\LÁ'™?<íTf>øÖIƒ]âõ¸Í+Y/ü|àÓöýÁk–—´_^ù}_ð­UÞà±+šý >úÙ•9àqk3r€KkâF<·ºGÄe_=›¼KN@¼ôyœ1pøKÇ=à_Ü?8D«þq΢ÁÀ[\XrJƒøiᜯ€ÏšþשÜŸ&e7O7ÚüwN“-àñs/]ÿKX~ñEâ°ïÁËÔo~5ÿlâ–×rSXo°ßx㇠#Ä-?~>¶©tøôæ¶6àÉ?Gü¾ùÓÏÙˆÖß‹¸óû®¥à ßÅŽî®Kë‡x:åI[ð¡¯{@œ÷í¬ˆ¿Ù· <'õP4xÈ“†ˆ/w:¯Gœ–6ïð«m¿\Dü¼Ýj+p«›øÃM ââ=ÍGì¶U‚§{=ÏÞµl5⃌¢…à{í®ˆqÛØÿìKþ¼¶|JÏžý ;‚~n“º~`‰ß*ØE÷¢;°û–¡À¾*è|<¼£ úý'ROØuÄÞ+ÀûÉàß sûÁîM:¼»r9v0Úß~bhÃQè·Åë:Ã.ŸY¯^÷ÿé ðëòÌLà{pÎzàUl”ýø—“°ó?Ïp¨ÝxØï»4ØÉ‚¹ð#ï*†]}½~cK¶=ø„tÆ@àkJ—Íð· ¾ÔêŒ~µm€vé4´ú᪛ЉcîÀÿöù}ð*pþ1ÎèyçùÔOø×¸®m€G^·†?>:øã|ë<úÝ“aûÑnwÚ?(W­E?Û¬3ðáÚšQÀÓÙnÀ“œ‡RàçYçõâýç™èw®ŸS×6O>¯]Ù@|ž¨ÝìÖ»_ „ÈíÑ­,ï'*‹÷_Ö Ö|C?ðÇÆKÅë _?†¿®;õüÕOÇ6À¿ï›m ^grмæã”HøÃvõ6¦ƒ7ºÛ^o:õxbHüœ+¬gïÿz0N <9na½u"ü¿¯Qx_az xKD2xÞó|xÒí ¡ð#/tXîj ·ÓØ<è»-eðvæIð÷s/n¿s .>´Ï›^¸<ü}ð¢^­U_,oXÖ©üIÛå£a;\|à?ÌŸ˜ÂžšxlÎ~÷xÄËO/Ã?¹vL‡½zY8~³u$xÊ”;JàöQ÷Nà5ŸÎ¿óWüû í—ÿš¯Ê¿9Ðm"xÈô…VàY×Çwïwu(xÙo3ëGÅÉð?›4Iàõº—wÍs†?ÎèÛþ¥iÉû¢ÿ1 þHs¥<¥ë¸-àa·Æì„_ñûiøÝCãÁÇt7‚_øõj þua+øÈ‘.%ðS‘‹Ã·¹µüjé°§àó®„ê9Ú~výüÎû]Ãá—-æ_Kíù=øÇ^ç«à‡ÆÏçƒ/Õwk ?ºùáàD—fSá7®© \In¿|Ó~U!øÓ´Gá—3•â{By/$™¬'ɃÀϯüüÕ³øÜøµ+áço~8æÚ<æaø>Å~§Áÿ'íD¼“%[ ¾?#µñÑDÁ¼(7£)xAÒeGðùÎþ#ÿ4;÷¼ç‹Ik€û¦{¿ÏÙ/9žðóŽpĶRâ¡ÆQCÀÇ×l‹ø%mæ|𫜫ÀíO­ ÁSÚý´8ߣamðû9ë¦"ž9Ÿä3Cujâ‡cÑG/úî.â…²+_½øÙ ¼JQûcðŠ©·'流\Z<‘ƒW>í4²±[Gàqí…nà†ýn îØ£škÏú·+Ë€·{~áV2qÅÝ}ÁËÃæ™ 9Ó×<<[søß}#øÊ¹Ùrð×ðƒ­ÀÇfMU#N;tì6âØ1ω×{¾ÞЏõ~Ý&ೃ7L¿«s<qãq–ˆ‹we} ¾,‰Ï\½ñåÖ-l?_ì–Ò qäb»aˆ³çÕCÜ×÷Âĵ"ŠÀw?Ëßþ'3š ~¼5ýøÞ·nˆmíˆ8y@^_ðß¿Âǀϕ\|„8oXð2ÄÁ'¶lD\c~qoÐ._ðá"cðCk¡6. ISA&˜µcÁL0ÌCÁB0,‰øb÷&kc‰PßX"©c\[hd,±®ml,44–ÙË…ÆÆgkcC¡±Ä ®qSÁÎXboc,Þ3–HëÏœyÚ.íß÷oPÛØ”÷7±5öåý}¬xúƎ¼gc Þß¼žñìïýLJ]Ij-Ô•F 6¦T])Q)¹YY¦`mJÍ&õ!¡î"K¿ä$¥&‘:Óÿ+´žº¿” OJp*[*Ô1%w(%#¥n!Ëj›’9J ª¥/2rR)¿lOB§]v‡ö'3—DHë’MÿFû KÉt¥d.²#´?Á½4€/Ñ2a)oOÐ)¥î(+¦ý9?ê2RrS²d¡®)¹)Aµ”àSvžêß ,¥nÁ¯rH‰†HÉÔ¤²'´?Á—”\”Ô†Žÿ-ŸÜ‚” CJtMvˆŽOÝMJ&)%7 #W+%XâWè¥D‡d×i:R¢,R‚IÙgtüLŽHzòËæt|2+)Q)ÑQ)ŸO¢zRrϲ´?5‚”¨…ýÎT•:¦Dï¤d’Rrs²t|ê=R‚V)Ñ5Q/)Ÿo¢DRrc²›´?ÁŠ” GJÝY¶šŽOnHJ/%Z&»DÇ'˜—’©HɽËÈåJ‰>HÉEK‰öÈžëÛŸ\”´6Õ_¥o¢ŽR‚kY–¾ýÉ%KÉ ÈˆjH‰–Jçòçèÿ5}ûe‘M’}ªo‚ )™¯,OßþD¥DKddâR./A½”ÌSvOßþåR[ÁZj ÛŸ\²”ܜ옾ý‰ZK ®ùÑZ)Ÿ/¢DRrc²?õíO®GJp&ûBßþDñ¤DËdôíOP)%ó–år~䢥D{dÏôíÏûÔ¡úÔ·?QiWþ¦†¾ýùœÒr¹)oOÌ4ZvCßþD}¥tže+õíO.FÚ‹_Bз?Q5i{~˜‡4çG!‚”`WöHßþ"HëWjrÝR‚KÙI}û%’ —…‘òñˆ:K Žd·õíO”AJí&[£o¢jR¢Ï²"}û“ –-”H9?‚Z)ÑcÙË·ØÿjöOT»Šý_­fÿ˪ÙÿéjöO§Šýß}‹ý­fÿ½U쿤šý^Íþ «Ù?…\Uìÿé[ìÿp5û'JTÅþ¯fÿ+ªÙÿÙjöO¡Qûøûÿ¥šýSWÅþoU³ÿ¯ªÙÿ¯Õ쟨Tûñû?XÍþ)$¨bÿ¿U³ÿåÕì?¿šý5¨bÿ÷ßbÿÇ«Ù?Q˜*ö_ZÍþ¿¬fÿ«Ù?…Uìÿ¯·ØN5û'ªQÅþÿ¨fÿ«ªÙA5û§¯Šý?~‹ýŸªfÿzT±ÿ²jö¿¶šý_®fÿD9«Ø¿îüåüEøùùùùùùÿµÁcl„:ô«K?[úÕ£_}ú5 _Cú½G¿Fô³£_cú9ÓOBÇøŽ1øåÒPh*8 rÁW˜+$’¹‰ÄPb$1‘H%ækI‰½¤³ÄYâ#^ÿ©ú«­ÿÙèuô¿ºúŸ­þg-¸ |¡I<¶ ]JǯEÜË‚øVmÚ£>•ô}¡¹Ð^è*ô^‚¿-¨„oi¿ß‰ž€I ŒŒMh2¥IªŸdú©VµÉ¬Údþ–Éâ-“å¿8Yý‹µ@m›:uêÒdKS=ýT_?5¨65¬6½÷–©Ñ[&»qjü/NhcSnqnÝò6+?·Öú©¶~²ÑOuôSÝj“mµ©^µ©~µ©úù}Ûùþ7Ÿ;~’ÞšDJÒ€„­©.‰9‰‰‰ Ç5ïÁÒŒÉ+S\c,4!‘Ô&‘‘4$áŸ-‰IcC’:ˆ‰ŒÉÙK“eWÄ?ætäE$î$'H:üDFr“ÄŽd5É8’K$½I2Hf‘<'1 ™GÒŸ$‹¤É7$~$×HlH>%N’GÒ…dIÉ=’Z$ I‘#iGòÉ$’?IÞ#ù‚d,É’ž$»If<#1!™OâJ’MÒŠä{’ ’$õHV’Œ$9GÒd'ÉT’G$–$‹I†œ$éH²‰$œä6I’5$“‘ô%ÙGOò’DB2—DNr€¤)É×$¾$WIj“,#FršÄ‘d+É’»ð™RAMâFr”¤-ÉF’’’†$Ÿ“Œ!)$q"ÙE2ä)zTH$Q&iI²Ž$äw[’$#HÎ’|H’JKòÄ‚DKâAò ‰ÉÏ$“In‘4&ùŠd<ɯ$}Hö’|Bò‚¤Õ ŽD&,'½œ´i/Òù¤óIw%Ý•ôvÒÛIG“Ž&}Ÿô}Òf¤ÍHkHkH&=˜ôqÒÇI·'Ýžô¤$J:”t)éRÒH7"ý%é/IDú#ÒI_$Ý‹t/Ò{Hï!=“ôLÒ‘þ‹4£¦)é¤Hz éÒ9¤[“nMz=éõ¤ƒI“þƒô¤ë“®OzéU¤G‘Eº€té“N#F:ŽtéǤ“¶"mEz é%¤=I{’>EúéN¤;‘ÞLz3éÒ¤ËH—‘~Ÿôû¤×’^Kzé ¤/“¾Lºé~¤÷“ÞOz6éÙ¤u¤u¾¥kJ,ÂT°'ñ!±&JÒ™$¨n*(IÚL$i@2š¤É4#’$$uI¼I> ‰!1¤T$H’4'ù–ÄŸä7B?¢T2“ZÆfF憖’¿»Zóú$©&ÕİšUãjò¦cTÚŸ·3Ä/7s8V ~T,Á§`á‡3øÆ3Em?˜À7ýùF#EmßødòÅ®Ì!I!É$¹òê[½~ÕëcR©Œååd‘饖^Ìôb® ½ü]ýMôy™ëëÛ@_ÏÎúúùèë•©ßyÎÿ%ƒÓT~X>îÚÆ+(Š’{éZ&’^:q­-¹¡Óé&rê§øõ©’§nrÊ”ëvSóé<•œçÔNäÔNâT.§vsê§¶pŠ)-ùžS¶Ô¬%«9Õ•SŸrÊSIœšÀ©xN…Qß,‰áÔxNMâÔPNùpŠ/ˆ–ŒäTN¹s*–÷íÏ©EœêÁ©ï9Õ‘SœjÁ©3œzuã”5§êq.&œºÀµ|þ‚R÷8uSû9UÌ©ï9UÄ)-§ÎpŠãÌ’cœjÆ©LNõäÔNNysê'NPg.ù†SwùhÉœºÎ©Åœ:éN¥sj§6r*’S_p*ˆS 95ŽS395œSa| %¥*÷g6%;}î¡_ÖCßÏO6–œ á"NK$Šþj¿Š´àwXJ:TügÛ0'öVWÜÊ$ÌL8šó¸Ú‚ááÉ‚d~„`Ø1V<š*)âÃ.3#ß‚qÞ AøJ%HNÎÏ%‚qÇ¥äÇ’Ãì5‚$s½`²Q\)üÔ ×d Â…K‚¤ÞÁð³A¸e"1¸e*1ªm)1hc)‘4·’XI÷ƃIM$F‡›H –4•žk.1ø³¹DØ×Rbx£µDðí'‘tw–Œr–HÉ%;úKŒ“H„) ‰ä¡Bbœ2P"|1HbphD0üXbh3Ab\/X"94Qbh*ÅJ VM•OfJ$×gI„ôy?•DX¿@bÐX-V/‘Œ\.Áó0uËÏ÷Œá‚dšµÄÚÜTúÿ±÷%à5oÜ'ÉEDK©ªZBmEQUU{ÐÖV¤ZÔY‘Drc+µWl±ïµïR;µïTQ;µD!¨Úª(ßÌ™÷}ÏœåÆ½ýýžç{×sïñÎûû½3gÎüæÌœe2†ÕQU¨ÿ5ÙaŸ=X¹6^¹ý‡yÛx•æÊjã[’ÏH›X§˜óøƒduÿ¼À<®x¼÷MÈ62kR–Q¶Ñ>œÇ¬iæû\åðvÅã-"!ëÈ,I¶Q>"?þ@áÍžóøƒ8Ãr ÞixU¤¤¿àÝð€É §^ó<¿y ŸßsÞyÉWÐs^>†]]Ès^†mù¶ç¼! ûç;ž¿Í ›TÜsÞ†-SÒs^y¶Ýó®çûʶ¡e=Ïo:÷¼çy~'ØvVEÏy~ì„R«²ç¼Œw¡ªç¼~Œ×ïCÏëe ã¬á9ïã­©éy9XÏÖª¶ç¼öŒw¯®çåÏx£xžß!Æ{¯‘çùÙØ™àÀ§žçW“ñº4ñœç`¼lÍ=ç-c¼_xÎKc¼ÀÖ‚·ÃËϲŒ´%q[œÿX¨ÃAž×gk–Ôõ+Ïy#YRÖv‚·ßÍrò‡(w3ÞÄö‚×\qÅã§çõ<û€á×þ¶›åãù”gs™®vÁ«èF>í>ð=\âù&Á6ÒG¸ÕöÏxs€÷³¯+žyüpˆa?è"xïû¸œyR…n‚7ȃüj2^¯8Á»äÁþ9¯ˆCð&ÚÜÏoYv¾N§àw¹f^ãí'x¯»ä™Ûcáü=~Ïy­ïÔ Ákã²}™ÃHÆ{˜à9o7ãå&xM\Ö§™÷ŒñJ¼Å.õf1þË©(Sœ‚W&‹+žù8°9‡2bŒàÍð€7ñþ˜ xŸfuŸwž_ð˜.x‡=àåcó¢‰s/ЃãЄñæÎó¼½ a¼ï‚Ž<¨—ÍŒWr¹à ó@/.Ås^y–´cµà}‘Ý}^(K:·YðjzÐ/Mg¼‹Û¯¬õy‚ñŽîôœç—[Qvîñœ×€ñÖì‡ó«õÒñ>9&xÓ<è×0ÞìS‚—/§{¼—ÍsC/Ã|.óãCñøùÏsó_}IÿÉÏ_$Û ønàù‹v3ÝĻڿò°!N®—Äáx~yïÀÏvy\¸ Öánù â²õ%<1Ñ+Ãýzà/bþvó«<γ!ÎSWq ×3ð8‡@yëºäiã~œ€¿–Ëž¿Ö7Úg”-)ËȬ Ù^vüüþñ¶ºÊßpü¦¾£x~ü¾ÝKößCÀWpóøÝ|97ð~ÌuðeÝÀ×d®tÀ7qÏ¯ÃØž@;pÕ^!Y퇙ëÈS—¸lßüŽòI²Ì’úa¾Ïï®ËzÕóÔýgçÜÿ@ÿö’ýQÇ¡ ?ð'\–ß|ÐÚ›:e¼R/¯„ûµŒñò**íExiŒwxßpÅsO¨çìE¼S.ë—¿.§éùe: ñŠºQï¼­ ün7óÇó@Î7Ïÿ%ù¼¬¼Ç!ÿw_û…ƒ€¯íž÷ g_Í <ï.þöKðêø”}§C=¤¹¬?~ól¤O‚Mãñkø ÞÙÌçɺqC¹ñ–à q™Ÿùz6?§}PXð–ºÌÏ\ÎÍ ²èmÁ{âr­×%¯Ç Òµè ·ú?õú‹ x»úoÏxÎb‚7ÕeùÌã¯ñ {»„à5ty}ßœß!Æ{ZYðòxÐopϱ*‚7ÁåxÄ<ÏæcíŠÕ/Úå¸Îb~Îþþ±à­ðàzÑ2ö¿ó5¯±ËúÔïßËú·µ ™ÏkÝçV®/âssžõ²þgMc/§çQÞÿŒþTàVÜÛOÿLð<¹^Â_\ØLðn¹Ì/‹é8>àÛæ‚wÂe=™çåähkÁ[â*?©>øÊП | ›Ç—ç3žAÚ|-x=ݨ÷ÝÌ5£­Àpó:Ï烤u¼HWúä—µßPÇÝùÇÕhWnàùyj;à ¹çç©%!î—‡Ÿ§¾|ž—àÝý¬È-:ˆ °Ý ÛC°=ÛTØÞ„íØ>‡­o±} ¶…a[ ¶•`[¶ `Û ¶_Á¶l#aÛ¶a;ò›Û©°Û~°å/¶C`Û¶á°ídØÎí2Ø®ƒm¡¼b;òÛ™°]ÛU°Ý Û½°= Ûs°MƒmQˆ_¶Ua[ ¶aÛ¶íaûlý`ë ÛÇ÷lý¡ÜYaû p÷`›Û‹°=Ûƒ°Ýî'ëÏ…àmìŸ/û. A›?_ë+ÙY•¢ìŸfÛÔçÞ_ƒ‚/û?÷Ëö@öO³‹òg›¼Ðæ–·—bÓlo/fû£½o¥Øž†mä±ýìÛ°}Û,)bû&lK¥èyÆÏÀlpüüÄÖË‹¯¡®hï<¢?—V|áãSvEsk~>2Ïf™Û«Ï«Ï«Ï«Ï«Ï«Ï«Ï«Ï«Ï«Ï«Ï«Ï¿ÿä-æß±AýÙ}ÛÕkY¯eý/òÖ íjsÄw²wŠˆ ‹U¾è¡ŒQzø×ªcoioäèkïÖÇãˆåŽ‚èø4$º{LDdDTgtÕ\ñ±!Ñ1˜^ZN ÅôJ”Þ=8¶[œ#8¤w¡»:¹µPu(-Že&8½ÑÝXs«žNÁqaèkaðu&ÚWWå×Qóô´GEcr99žU[8zbdOŸ°8LïMéñQŽ.a!Ý‚{¢s zC‚##í‘qž<\KŽîÆ“Æè“X‘B¢£a½Uüdr†F÷ ŽrÇÆ÷áŽÙäŽíÎSQJç0‡=®'OK¡´îy2OÛ §Å‰´í”Ö«Õ—*y¿>1FM'$6Äî΢\ÈÅj™éa\Îø¨ LÈźV5yk.»²$O_e¶¿òcAEÉbW6zµmòi=û—-›5UndëËóÁÎái¶e±/fù‹¯âñ˜dz(Þ­”ó^Ÿ²Yù;»âÕŠÕ@pw»òÀ þsÅGÉŽaÎ{‡(—½y×8ÐG+eXh=&„8e‹f±Ï'NäËv1ŒY Dn"°2É—QÂM‚ãõØáïÆ©Ê ßÊM_åQ5EñŽ a9=õ6ßé㣬ÉÜ*S™èÚ<<œ7‚‹>Šw|xxX,Ø«}x`060ÞÌzŠò°û¹Ø”ý¬mÅÂÔŽr(g}Z†©!Xæ#¿f¾+E=<õâÃã"ú†)»lŽh¦~»²ß†µpÎâ°«¦’f QnØâ”Ä,æ ™Ÿ+äÇ,Ýã:+dk |ŸÝGÙÊ ïPNÚ"¢”K6elW–÷Õhö³1žý$}‹õÅsi›’Æßpõv;âã”YYXaëÆÄ„E…*ó²Û” ü›2z$ÿ½6–?a#öô—,bOÓ|[õ‰bM#‡²2‡MÙÂ_àôÆc~-‹Úæú*9a§f5ïÕ•¬l³be$f UFg‹…Y•W²!ßÛ‡ÙìÐÐZÇwS6gŒë¢ìÌÞ@9•]ÔÀ鬬.dµ)ãgð§Ïá¿›ñR²MȦVȲl6%yGÝ\ÍQÚ‘X šõV [7rÈ„mü÷¿ñæƒôt6¶» Ö¹r![“°ža‘ÊsûAt”ÿÞ9É÷üƇ]â¿çÒøïŠ›Z½õebQæ²:Üs‡ûŽ=ä¿3¾÷f¿‡ùkâømöŽb•À“AWÌöö²³úd#Í0e(KؽXJxÁÊ=ûG`õz °Uë–Í¿Veˆ‹õŒeœ½[$çLÉ9‰9gìäü{9¤u< º.»²ŸÅ½qŒ§»ÀW¦óßǼ½D“¸ŸÂÝ–ÂÍày æ î8¿ç¿3“øï?“ùoÂlþ›¸ÿNÜηïå¿7ñßñÇùïÉkü÷îüwÈ0›¶Ÿ{YàC£m^Õª*¿²ÿžÍoФ²_¨³»9°û›–˦Ü-Qå´)c§«Ô‘ì¿Ó¦3RÎzl\ \Í)vf„_‹ØˆîaÊx?ÖA(Sý…9³Sk³ýZ) ü‚ø¿;uÔ¯)u+§üÔFŸîW?šo^ø)Î\ŠO²+sòÏs*Cülʢ鼘sgòß4õ÷Ð&›Weåwæ±™Û7Õß=[øŽpmñ s4`í“uÇÁ±}”¡¹ïÑì<¥ôSÎ3Öý-?s+ÿݯþŽßÆGïâ*Û•û~våo¼¶‡'ŸÚ§f¢þ^þ…ÿ^;ªF”‡ÙÏm¼‰3¥‡*ËrUVVåR6°º[?¯ðrZý6˜¯<ÕŠUÑŸ¹Z(£s«­cAnàäæ{º*·¨Ã ¹Õ*Ùš[ù-·â Õ—˜[Ú—“¹mÊRÐ[­ìÙ¹…²äcƒyncøï>õwÍPþûЙEìÕÜvåÎÍ“§Nà¿»Õß-3²x«GáinvÄcúÄFtîâP†çeím³Šú•…ð g'efqGŽbÀ‘§8p|݇ͤ”CyBÙd‚EcCœñyÙ©¼³£‹°¦æUX÷Ìvs°?ëê"û(ÃýãѱlÙ‰Ÿ>”QþjoÖxÿàȈÎQÊT–GÏcÃЬü¾ßhþ;cÿ>++ënù(`« :Џê¢døóAïgçU¼¿„ÓóYÿúêì1¬¡:´ºÄÂ_ÀƒLPg³_Å[.=óã¤Álï6©Î}êïÑ‹üwò%þ;p8¿9p$ÿM½ÊŸð‘_QB¥yïƒÆìpÅK™32Ÿúª¿ÛWÁK¼Á?Ÿ¼¡(’Íýü;àûÇÜn楷9ÿ}?a7>ÚoˆçGEßKÆx²Íãõ|KØ= ÚÈÇ÷º/ÛœÿYaÏ>Úîò‹öIà£üÓþiÿa aç+ øh#ÿ†ÃÀ¿XJØ-¶»ù¯-#ìÑÀGÛ]þÈòÂ>|´Ýå‡À jÞmwù5* »ðÑv—Ÿ÷aw>Úîÿ« {&ðÑv—¿±†°>Úîò“>ö?ÀGÛÝý­#ìŠo >Úîæ_½¾°ÛmwóÏÓPØ#€¶»ük…½ øh»Ëßò¹°Ÿmwùã› »B!ÁGÛÝúëò…°íÀGÛ]~ÍÖ |´Ý-ÿëm„½øh»Ë¿ùµ°_mwË¿µ=Ôß[‚¶»ùO° »#ðÑv7v2V?IÀGÛÝüë„ û'à£í.¿@aß>Úîòïtvñ‚¶»ü=Ý…Ý øh#ßÃF¾lsþ°ha÷>ÚîÖ[ø«¯s€¶»ü ñÂþøh#¿¡üû åÔSØ÷€6òñ=mäË6çö¶÷Û‚6òoÊÛPþÊ}…]øh×yÛz øÇ ||Ïù²Íù3„½øh#ß÷F¾lsþáa¾|´‘?Èÿ CþÍG ;oÁGùøþòe[mOp%¯ ðÑF>>׌|ÙæüÝã…] øh#ÿ¼aÿÏööda |´‘ÿºÿº¿zš°Gmwù{g {'ðÑF~C{nchÏoÿ ì‡ÀGÛ]¾c®°Þ|´‘ßÄPÿM õ¿}!ÔðÑF>¾?Ž|ÙVÏ‹…m>ÚÈÇ÷È‘/Ûœ?n…°ÇmäÏ0ðgø×{?ðÑF>¾WŽ|ÙæüÞ› þ6òø‡ ü†; þ‹ >ÚÈ4¿@Ãñsîv+à£ínû›¹WØßmÒ¯¡þ.ê¯ÿ!a/>ÚÈfȘ!Ÿ£Â>|´Ýå'öà£ýV1}^¶˜uÿŽï«c|ÙæñÏvµb">Úȯi(_MCùÞHv=à£ü²~Y¿Îa÷>Úîò»^öà£í.ü aŸ>ÚÈßa¨¿†ú º/l¿â‚6ò§ú—i†þåî_® |´‘Ÿ/§žv×b±êÀóÓü7úþ1^ù¶¸ÞZ\\™k¸cóA.CyÐÆòÜ0Ôç C}ÞÎ*ð76éMÑóçËCÙþðÑF~?‡ ð¹Jþ)ø™Õ_Ñz»t Qó õ— ù †üS ùã{'˜¿l«õø±À¿màÏ6´§Ù†ö”ä'ð“6ò‡xéù²­^¿È-mwëÿ-À¯þ[nò÷—íyàîµçã†ãqŽÇ|Ãñ( ù ÊSÚP\Ë#Ûœ_^Xüøh#¿®_×À|;à‡ø¸NòÑîõñ§À;ÀÞö`°ëÜs¯¾Fèí)¢¾ê«ÉÛ"ÈC(/ÚX^\‡Ë+ÛœŸ£ˆÀû”|´‘ßÑÀïhàw|^àw5ðÛøí ü=€ø{ ü ~ÿ>à+ÿ¾_ÎÀ/gàyGàëmä—5ðËøß ø ü&~<à;¼ëP{7èt1‘Ðøh#¿ßÆÀ¿V\$ô>ÚÈÇõ/Ûjÿ 86òóøù ü›€Ÿü›þ CùOÊ¿µ¤HX|´‘_ÂÀ/aà_.%Ömäg1ð³ø|Xþ9ˆõ÷®žë' íã%¡?x"ð—Àöm°ñ€óßÌú‹'%õ¶­”u\Ú[)¸>P[_^\ŸË+Û™åYJo÷‚üòÿ°ŽròGó/jÈ_¶9¿ ௿¿ÛÀßmà¿UWàïmäûø²Ùþ?6ì¿÷»bÿ—ö¿ä×á]‘9Cþ¸>æ/Ûœßð1Àoià×6ðkøcÿðÇøÕ üjþ>À;¿ÏÀ¿màß6ð×Ô½mä§øi>__™æmäã:È—mÎïz>ÚÈ¢èù²Íù¿ ø ü¥†ü—òçkBóϯÀGùO óë'†ùõÔÏ>øh#ÿeç«Ý€¿üݾÝP~»¡ü%šˆ[i_5Ñó§Ê?ÕPþ-Í>/ðÑF~CÃýÞ††û½>¾ðÑF~CùóÊïÁ–>ÚÈÇu+/Ûœïé~|´‘m˜oEçßð^p ðÑFþ CùWÊ¿»‹H>ÚÈol¨´;1|Q\€}â™]Š æëTö&|fýÛˆÒz{|iÑ¿-7ôo|]sþ¹ åC›öÏP¿²YþÏ ùg/cÿ¦h$¼ŒÈmÌÿ˜áúÚñeôõ3¼ œ}Dý$ƒ]ìY`{ ØÛ}Ü«ÏueôöVØŸÃþŒŒA –ûƒ6î®çû#Ûœ? ž(|´‘ë{ _¶9¿S/¯|´‘ÿ²ëá¿øÀGù·=_¶9Ÿ¯‹Ï?ÀGù' Çó„ázà†Áßøh#‰¢ç˶ºÿ ß÷?AÏ4ì ±¿ø^à»mä㺠ȗmÎç€úmä0\Ï`¸ž;}´À>ÚÈ4ôWhOaø¢°/ü3ß`¯. ú€÷ùw€ïÿA?¬pl\àسÁ¾~\ øÁÎ 6® ð&·s2=Vvi°;‚ý!Ø«¸§ÇFåôvórÖzôMA—õ‰6ÖçË®åü:àç7ðsø9 ü¢€ßü¢~!¿_ðG_ÃÃò7üà72ðóøh_fø¢´(¤ùxð£TD²ÙáQø¥|¾ì]°ñþì‡`ãýÒú`ãýÎV`ãý¿¶`ãý °ñúy4ØxýsØx=n,Ø8¿œ6Ž?W€ãÉ-`ãøè Ø8Þ86Ž®ãG`cÍÿj ·±ÿÍ 6ö§o‚ýcâ¡¿â #·M»þ\l¼~×m¸^õØxý*ùpý*m˜¯@>ØI`ãüu*Úp~œ|°D>Ø›1°÷#ú—Sˆ; ýПÜû›§`cÃÿlon©¿É6ö7EÑýM¶)ÂÎ-‘`óµsKã§/¸-õGÁÆþ(lìx‹±)>o1l¼ß½ì†;„ýØx¿¤Œ°ñþ¢l|þfØø<ϰñù˜{`ãýÁb6aãýº °ñþçp°ñùœM`ãýÉë`ãó/…²ŸGùl|¾eØø¼Ç°ñù›3`ãóPüÏsŸ¯úl|Þ)l¼_8 l¼}l¼ßÅ”á6>ßPl|~4l|rØø|è%°ñyÅ¾ÂÆç7ƒÀÆçAǃÏGïïóåøÏKÔïołϗÌŸ÷¼ 6Þo÷ÏÇîÏÕŸOì6>/·l|þï$Øø¯yl|~°L.aãóŸ‚÷ƒ{€÷gÇÏ{¤€÷O¡ž/zÊmÞߨ„ž³å;+ô'¹Ç[EÁÆñÛû`ãxþc°q|Øl¯~6Þß ï·Å‚÷φ‚ÏWϯw-¯Ÿ­¯Çíïgï/Åx`ßçó÷Á¦ëCyàxÀ|57Øxý§Øx=¤ Øx}ãC°q¾ßl¼þÕl¼Ó ó~o°ñzÛ°ñú×$n³>±¬{µüx?p#Øx}w'ØxèØx¿éØxÿêO°ñúös°ñ~I8€]l¼_l¼¾þØx¿¡!Øxÿ¦5Øx?¨Øx Øx½û{°ñþÃx°ñ~ʰñþÈQ_“¡¾~?Î÷Ï‚óït°ñzó°qüúŒÛ¬ÏI…óiÖ¼ÂãË<`ãxµØ8~.6ŽÇ«ååcL¯ç |>5Ø vŒÁl°§ìÅ{§Á>c°ol¯×ôök»”Á®n°›l»Áîf°ìdƒ=Ó`/5Ø öƒ}Ü`_6ØO ¶ïëz;ŸÁ.e°«ì&ûƒi°ì1{®Á^c°÷ì3ûŽÁ~f°sæÓÛoìò»¾Áni°ƒ vŒÁh°“ öƒ½Ú`ÿl°¯ì{Û'¿j{¡íg°_3Ø… vqƒ]Ö`W1Øìúû+ƒl°;ì»j+dçöý?ûæeß×|ijkùØ7?û¾Á¾Ø· û¾É¾…Ø÷-ö-̾o³oö}‡}ù5ÆbìËÿˆg ö `ß’ì[Š}ßeßÒ>blÏŸ{*ç#þ–Ý{ì[}+²o%ñÌleö­Â¾UÙ÷ö­Æ¾²ouöýˆ}ùŸýØG<ÿõ ûÖbßÚ>|¾Åæ~ì[}ë³oö d߆ìÛˆ}³ï§ìûû~ξMØ·)û6cßæüüȾ_ˆkDuø÷U½è륨b·wïbïfï"^´·‚ÕHzÇÙãã‚;‡)öFaõÀVꚊ¿P ïÕÚ[DÇ9d;4¬eX8l쑊½ö®^³Æ`í _7@gÇÇ„;ÂzED…F÷Rì‘ÑQÃâöîÁŽ.Š]¼ÂÈ_WKiG(¼œm‹”-õíJͧ¾©Øczð•"ØîÆ(lß#"Cíþn¢=.$8 ÿË2ÿâãð{{_| RZ÷ÀËj¯B•ªÕ?b9FÄ9Â#z3«Zu¶aQ`|H°j•ªJ°ª¼¯Á>¨R‰—¹·£B•*UfÿåëÞðÿ«‘Ì‘Ìóão¬G„ØC¡ðŠV§H‘§bgÜØ`Æ‹pÄ)b1ñ )zB%/¦w”¢|]¡¢]Â"cÂbãx½°âvŽ æ¯Ñb%`Ö¬üq!Z¹ôf't»X]B^ªúnïË@°$@x/Ü]¸ÔrÝc–p“…‹¸ 7®`à.M}ÝM0®©á\¼oíG}qÛ]ж<‚› ±Dƒ›`y¡ (bÕ´bƒ›µ£q +W¸‰ËbDDy†ç ]¸I0/·á’k‹d.gµ ¡•]^*i в6³,—ñ€ÿR‘›)žÖLÍ\ìfk—Ú4žñhñ›Ï–×»ñ€)bIÏy/é®Ì<‹µ~<`óÑ…Gø—hÙÌð\nžªÈsyØúÿeË÷¨Õ»2Ñ3Ü:?è)¸b’gp7ô¿iÌ:Žºv’›”LOBzhœ¶†“» 7›º»§-+|¦§-=Á}½¬]&<.q!¸®’K@¦M[7‹r‰Ò­¨f·kKÉØíòR2v6ﱋõaÔÿÊ Ç¨ ê:3êÿtK̨)bñ­^L`H¨ÆfA.—Ÿ£~@û_eí¿b­¬CèLž há?ÀK]§@ÉÁÇ#•í:S³p˜¦ºza0Œ"ÝâIR*¬G¤ã„U[ È®_dOëXà?êªQ²¡î„dCÉ©‡áû † Õ˜’Gd•í:S³Ô5§Ð€ý×wH²U™LCuèú#É LaжØ¦È„IbÊT—´¡½¯XÍHšÄ÷ ‹±ÿ¨‹©JÑ­h¤¦àjG+éZ®¡k^=×¼n®Ësõkåº\%×z}\Ë•q­ÖÄ5­†kµ®y\kß½•W»µ^æÖ¼¾­´°­nE[ÝR¶º5lõ‹×êW­u¹\­~ZyZóÊ´æ%i­Ö¢5-BkX}ÖbÙYÓz³ ÍšV˜µXZÖ´¦¬õb²úUd ËÇê×µX0ÖÅJ±†%b kÃ…5®k± ¬aýWÓ¯®V|Íl©WiWÓâ®´ª+Ô MXÀWn¥%[q­V\¤ÕruVZ–U¬Çª-ÄŠ+°š–é®ÇZ[Å踊M":Ų^±"BEF„¨W׊¶Š‰a‡¡b…˜à¨Šê5ËŠxÆ|0ßãçË÷*W¨Tõƒ÷"[‡µŒ¯[QáIBþƒÈjàh«ëÄ.Ïä*¥·G“™3aþ³Þÿeþù¿M~ÿÅlíÿʵ;köìÁ¿ž2yÿz†ÿ/iÿñ*¡§—!=¨„ÿ+WÎ=¼>ïùUj.Í{v‰÷_^Óöôõ˯ƒ»uOǃKî_"×O{·2=¿'Ýì¬[1"*$2>4¬b\ׇU´‹±E….æ[£ÿï®6{r¥Rw# îÞþ««ÿâŒý?\¼òøê­§9=ƒË½èÞ÷v'ìßÝhôèn˜‡·=¼·êÞCwn ¹}‰Í­kdt!®BEüo¸jFå_ÞAòüª¹ç7 ÿ]ÉÜ»3ñ¯/Óµ*ùÉ 8lÿÉcG»¾iwëÒ¤Úfþ“"ŠÈѦëzVW3ÉX\ÝÔ"°ÊæWþ“BcìèL®,Z]{t÷Ù üWeWcG»¸@©¿x™ù%Qw.Mꮌê.l.…fz}U\§Õ?•é%TwŸ/‚1ôRÕ;ZwÝÿóßÈ ƒG›ï˜ï(Ðiþ'EÁØÑ™\å×ß)Ð]ó×ß—PÛaæOÁYÞnÈô¶…¡åX=Fçê‡[×YÝS‘¯Ô[=8Æš/ö_I_m¸IÀ þ„ÜÓ")x´éf„ÅÍ žöûï M%Önóyö¬¤t Å&ß4ß/4Ý\Ä.ïNþ?yÔѳçûÆ;""ÿ“""Gî?YÜžÂ{Zx‹îháxëÕçÕçÕçÕçÕçÕçÕçÕçÕçÕçÕçÕçÕçÿãÏá'·Ÿgc[þŠ«/|«Úe¨"^>Ê~ìöÖ_µ6‹zÓ–óù2t°Ÿ…óäècäÉ£(o¯öR·ÞrL›2Pㄈ» .b¤ìôRÿßÊ1äÿÛŽ—å¨sÁK)_Kl³XÖçÄõéÞ):R}ÔÊ"Fä[ÞÊ8/±õ’x¾Yľd1øsZâµG‹Ï {+K¼ÅV÷É"×G|¿ÂÆ/ýD[ÕÇ;ÞJcØÚë/_cõx6¨Ûº®äàÇÒ_Ûb{À8v{T$Vƒú¦¿0lå=àû^ŸbDg£0ãò¥Ç bð²|F1ŒÇS£N1oel]ÏÐ`G°lëc¤3nMØz›ØâÃ뱺Êmòi³Ï|ŠÇ¡cĈí™PQv¹M𥖠²ï3¢ªw.°{ÿã’÷ÛUÌÞ3kqEX ø¼ ³mA‰W•Çe•Yµš·²ÌW´qîO­å­´dêVoåV9±v^ àLö_¾|g½‹}០áÞJ’E:_J§*äÅóÌéÝ_Ý#õ™…ȈNüÛªOœ#¬{…zBûDâZV¯>¯>¯>¯>¯>¯>¯>¯>¯>¯>¯>î}‚¯&ÜjœøÍƒÄøÇ‰ýŸ¥ó´v‰§8½uJÝžgÈ–âTœ-üvú&¥9}‡p´xT7§·ã3§—³…Ÿ³®ŸÓ1Æ6ô‘£Æ>_¢ZIOÈéÍ(‰¶€ôÛ~ÞJb¿gPZb뿤/}ÙÆ7)ÙMÇÙÿl³’¡‘ù)1W ¦Ÿ`2JFÉ@`QŽ`¢ƒ£ÊK¿d¶m¾l•p+RìÒ/ç@úçœÎ¶YxÀêèßAþràßÇSü9›žH¸iKôGä$Bzr¥H ÜA.æ‘<%þDä|k9‚W«â´ù?ª“Ýæ(´Oˆ¶hAjŠÓ–â¬ã—„¸ü„¸÷®j BîeGH{^Ù øŸgä[õ¯û²šSëk2£%žw6=á ÚdQfߎÞÍ¿{£,£(o@F»ÕgÓ4g/[bà™÷_ܸÃá["\e¡“~ŠXåÇô¼zLžÐt{bQ€õ Ÿ¸—öŸØ sx› ;–cÏ Ýî(”¸ÓYÇ·¦W¼Ÿ³žß_u|•Š’áóh÷‹øÚ_Úµ ßbAšžgyû:ƒ¶c›©ª+Â&âX!·(‚3èÌÐcy†¬ñÒv|0ñne×xIÉ «´Ö™î+çÔ‚›xTÈá¼Sž0&)9QDóu6=ƒ5x›A†l§6ôw6¤„ðÚ :ƒ¹ó²²#îWÂ},²—ƒòÚã=Á1éÐÎ&B}àŸÕÀû‡¾ˆ/ä\¦ߣI?Sÿs(±ijFAgàùÄÀÔ¤ä<-èh’s‘pbè@ ½ÒW«Š8]U#Œ“WJÐ~–}QvD ;Y&M :ƒRYJ>gÓ£Ìòg1¨Í%¯ŽAÕlZ×s8+†¬ÎB&­Nå8FLJöº¡(‚{]âÖ¸ãˆû,›7°r÷GVV©O²I¬öÄÚK¬Öd••X¼lÈ*E¬1Äù²>—X“%ÖÝ,ÈjK¬:Ó‘ÕEbu’X›ˆ@¬ûiÈ&±ÊK¬!ĺ“YWS‘µDb=Ê¢±šk±úEÖ1‰µ]b$Ö`dýTöœÂÕÍX$Ö¹¯NQ/©Ÿµ!½>Ð±Èø¹ý1•öÅ ,m=‰þšTÚ®Ä:‘YcO!+Vb·i¬ªÄšI¬å‡µ@b-XÏ}Õ…XÙOP}J¬‰µŸX•‰5j²žK¬k±žÙ°ZòZ©ýK¬öÄÚK¬G1Èê ±ûHíŸXcˆ5¹;²FI¬Éë®7µbÕ芬«“ÄÚD¬bGÖ=‰U^b !Öd}‚¬"ë¤öï-µbm VÑŽÈúLbm—X‰5˜X;Û#«¯Ä!±~÷BVb…~M-Jbµ–Xˈõ±²~‰¬s«ˆÄêI¬Tod-j‰¬×ÖKgD/U‡XKˆõYsÒ—ÄZ%±rËA¬”>¤/‰ÕObPU‹X¯oDÖT‰ÕPbÍ$–/±>CÖA‰å/±ºë˜²&-FÖ‰uNÑX•‰5Xõ_÷V… kžÄzö Xáĺõ9æÕVbEI¬½ÄªD¬QI_«ºÄC¬' ²*’¾$–·ÄjK¬ÝÄâ+ÞCmH¬C ‰¬b"Ö¾•ÔÛlÔX%ÖçÈúŠXÇê"ëK‰ÕQbm Vqb9j!k°Ä*+±ëÖ E¼ñ1²VH¬Ï5Vb­#Ö†‘uQbm•Xok ±ÚVEVîMk¸ÄJýYŸëY%dÕX-%Öbå#VËžÈê*± K,±.>GÖÌ÷5Nb]ûGcÕ"Ö"buXE-Jb¥H,_bÅ«Òrê±%V_‰uì²j+é1²Šÿ¤±H¬éÄÊJ¬çó©EI¬Ü+œXGÿ¡£ìƒm~”Ä:óLcU"ÖTb}RóÚ*±æH¬'O‘J¬K¥õHbEJ¬ÝĪ@¬A%Ua³Æª&±Fëñ3d•(Ьp‰¥H¬¯ˆµ“X« #kŽÄ:øTc'ÖHb}ñ&)Eb—X·ž ëKbíKBV¡-«ƒÄZG¬¢Äš’@GYb•–X‰uó)²º@ÖD‰uï‰ÆúŒXkˆu??²öJ¬Í+±¾#Ö„×è(K¬a ™~d¶—2°úûŽÜI ¥¶z‰±žmïßÔÿóýasW~/–é|«‡ç¨MÆÆãùÁàwóqâö»+!O<9/PSØ,>1 “˜Á<….Í”"ÿðWç)•П•ü1OÔY¾/–¤ÎßRÿ÷˜ú?ˆò˜§Ä§ùP -y ÷YJbVôÏ 6ðïx,WKò_ÿ[ø'ð_¯¦iÎÀ´Ä¬ »#Ûu°Ø…—¨jê/QÕ"ú" wz,ïgòOñwÖÐ]Ÿúë/„,ƒ%åã@Mññ/sjÇsïfº®¶Ÿà•<ÉùëRfù¥ŸÈxñ1ó“B¦¨)ê¼^ÔÑQß*ý±@©)Tþäßþ®jŠ³ŽŸÓ6,£âªn6àŠòm`*]ÿ"À¼ÇRÁ.ŠkkU©>®?Bô¼’/åW!ÔkØN1úíy†(Ò¢‚Lö«)NÛVàGu²{9Þ£ñ?aïü%°Ó%,ßCÿŒnCàŽ&pŒ¢Þ'Ô´¿4QbsoŒ/‚mŽ‚…yJAô§=D³¿¼ÄÅõr‰¸‚Ä¡©êä¨ãèšQŸöŸ8…xu«柔̛G"¿°›Üj) Û–jÅñ‡šäºSˆÓ<-ËcU“‹"²6¡?;òPV×;äOÿ‡<Åß+ÕU33u¥> ýÝöPnÛÉ_ü{X¨k Á|öãƒLÔÕ•à'ruÅ-êê™®©«!ax«#°fu%Ô@©)T~…ü]Áï÷ÀJ]gî#®àv>Щk=ŠàÈ}×êJ$ô}^Éñ‹LêúìY]-‰¶ùô÷]©«aǶ–„5¨ëï{p^kê:N¨O˜ÕÏ16/ °?„ÜzOV×0òß½oR×èû–êjIœÍ÷%uñæ!Ôµg!ªkú"M]ñ÷4uå¡}îëÔå¸g¡®Ë"úóûb'²Ü“ÕµƒüåÀöOÔ5˜è·îÁyþO¹uv"ÿ!ðwùÓB]l>ÀZý™‰ºüÞóWWþùB]¯jêJ¿‹˜–òÁ]³ºvª< Ô*ÿòûÅ]+uõ%\ÚŸú§N]_`zÜu­®r„žÀë!¹À|“ºnÝêò‘Ôõà¤u€LüîºR×~ÂVlê.Õ5ÀY¼šÀšºâ ué®Y]xQRø_¤ëÿ„_yWDýæY`%É?ú®I`îZ ìÏ;ÈiwWo!B`æ¢Àj͗ƹh[A! ÞÕ ìõ?,6Ð7ÿ;1ïŽ,°Žä?þÞw<X1¢;xGn ^äïþlw,vî6ÂìÞíL¶”àùÿà[óƒØúËšÀ¾' ¯s¾M¾mX0¡~”šBå¯Kþ¥àozÛJ`o.p>wt{| àÛµÀºê.°u?˜æ¼-öº$°d¢ýs[d²ô–+u&쯀 aÕí-\ƒÀóÜ’ÀšÀòê»Ûf­cÞÄïoOØ4£óLØî\ÅŸZ.CmñDòkA.·2dÁ­!‘Û&Ám¹e)¸Ä¹yKo1Bp¿ÏBÁ]øAÜÜ MpŸPˆ…·t‚›“a!¸<„îsKìD• YpÜDÿ×àÏ–áàRˆ^è'nÊ v ùŸdÿÄ›‚‹ Øq€ º™‰àj|^\ý™Bp /j‚{ƒ0!dñ›fÁݽ¨¶€RS¨üGÉ_üçoX ná^ܸ›:Á}O€?o À¬®÷5¡wñzHœi\¡›æñbq¢„LjÜp%¸GéˆíØÜÖpF;@à*¾œnÜ\Båºi\ ã@pO§Þ!G¥Ëêú’üÛo˜Ôe¿a©®âÄyCRoB]LGuEÎÔÔ˜®©ëÒu ñé º¤[¨ëGB¿;qòº¬®±äš.ü‹¯{ ®–Dß ôž×åÖY™üÓÁ_ýº…ºr,`%®g¢®ó×Þ0«ëêT¡®ôsšº6¦8„Ü}ͬ®q„zvTqM.,ùσÿ»kVêúŒpkWõºN]e €º×\«ëéUD‡ñzH¾>Õ¤®Í×ÌêÚM´ Éù«®Ô5™°Þ€M‘°uu#ðÉkœ@`M]„Zyͬ®ëÜCOö$ð`Y骬®Çitþ¿fR—×5Kuí&N…k’ºxóêš5Õ•{š¦®ëišºQˆŒ«:u]K³PW+Bo¹*v¢Wš¬®*äŸþÏÓ è__h~òÿ[,vç<¾XÖ ™lÁË\äÛ?Fì磚À¦& „\xÞ,°xB]º Pj •?ˆüÛÀ|ÞJ`ïnà \Ð Ì=pÞµÀ.þ†èƼ’sŒ5 lÖyóék!ÑòB&Û~s%°o {õ<\ ’°5#ð‡XXiB;oØAîi@ãßs4þ…¯ÿ&«ë7òž7©+í7Ku-$NÞó’ºxóêº6ÕõçM]Ïiê ¥‡Ó©ëÀ9 uU#ôìßÄN´='«ë ò…s¨ëôY¤×úÓ³rë\OþbàßrÖB]cö䜀-:›‰º‚ þó9®®®IB]ÝÑÔõ aBÈOÏšÕU€PƒU@Wþ¿Î ?ü>g­Ôu„pnãYºV  öžq­®„¾Éë!yY’I]uÏšÕõ)ÑVŸ…¾àŒ+u½MØïû„5¨ëîi·°/5u$TÕ³fuErFLQÿ8„\{ZVWò_?cR×°3–êú”8«ÏHêâÍC¨«R"ª+9ISWäiM]Y)D̺º¶P×™Sˆ®wFìijS²º6¿8øžò@]}ˆ~å´ Ï8%·Î¯É¿ üöSêªL°éûìT&êò!x÷Ó\]~#„ºòÔÔué$b>…'ÍêÚH¨€RS¨üSÈïþù'­ÔÕƒp¿¸v§têjA€MèrÒµºŠz$¯‡äf#LêºrÒ¬®ŒH ‚L|NºR×6–ìé.Õ5ŽÀÏN ðkêŠ$Ô©“fuåæEÑâ¨MàÅ²Í Y]ï?ñ¤I]¥OZª+ã8íÿII]¼yu-Šêú`„¦®Ü'4u-¢¯Ô©+× uõ%tÚ ±3ËêjKþÝà=îºÞ"úP ×>.·Î§Çèü~¯ãê:A°Z»u,uÍ'xž\]+† uý¸WS× Âð:çÛ¤cfuµ#Ô@©)TþÉ?üŽY©ëuÂõÜ?Çtêº÷+Ú Ç1×êÚMè ǹºî3©kè1³º’ˆö×1è ~u¥®`Âþ Ø>Ö ®ªž à&ÖÔ•›P½™Õ•½1ù|ù(‚?‡•Õµƒü厙ÔuðWKu%ç¯_%uñæ!ÔUp0ªëô0M])G¥ç?)Äš_uêZyÔB]… =ìW±uŽÊêzvýáàÏwÔum!ú»@¿|Dn3ÈŸ üsX¨«'ÁR ب#™¨«Á<ÊÕÕ"A¨«Õ.M]%“!+1«ëŸÃˆê (5…ÊüÀã°•ºÖîÀÍ:¢S×x+-ÔCès+ÅNŒ_!««ù7¿Ë Ô•—èßýƒrëüs9ÿÁÿ×r u$XU€ý¾<uM#x–•\]ó‚…ºþ ©«axómÂr³º¾ ÔO€RS¨üï“ø?Yn¥®ì„‹Üýå:u¥/C@K(Ë]«k¡V¨ÏÈw2©ëÛåfu%íörè –¹RWÂîl´„5¨«,Ǹ5uٵܬ®Ü«=gxz)‚ëBÈ?–ÊêZOþbËMêÚ¾ÌR] Ĺ½LRoB]K¾Fuý¬©kÁRM]u(Ä’e:uÍ_j¡®×Ýo™Ø‰jKeuÝ[‚þöàϱÔu­&úÛ@?½DnÉäÿg©ðOYb¡®H‚Ø%™¨ë‚/\ÊÕÕ°ƒP×§35u½I˜Yr‰Y]÷#ê@©)Tþãäÿü—[©k)áònºFàÁ˜³ØµºÚzïõù&u½½Ä¬®’D ™|²Ø•ºþ^DçÀæ•°u"p5§-2«k¡ü—˜ÕÕ˜‡×ž„êCà+‹Eȱ‹du}Mþ]‹Mêê´ØR]%‰3z±¤.Þ<„º ‰êŠî ©«ñ"M]¿/ÄMëÔÕh‘…ºÖºìÄ™…²ºÆ“ÿù"á_¶Ðu}Ðû,”[çäŸþZ¨+7Áz¬ÔÂLÔuiÂ?]ÄÕ•ÞV¨+cª¦®ŸSBî[`V×B½XªX —?žü—À?h•ºšn=à>\¨SWyL@ƒ®Õõ|>¢»,TŸ‘ogR×¶fuí#ÚûÉ¥ù®Ô5°Y»ZÂÔEà3 x5u5&ÔªfuÝä^íI¨·<BV™/«ëé<ô‡-0©Ë¶ÀR]ûˆóþI]¼yuk‰êÊÛNS×Íyšº†Pˆ;óuêº1ÏB]_zû|±}çÉêªFþÙào6Ïuý5éÁ@kžÜ:O“¿.ø/̵PW Á lÿÜLÔ5ˆàó¸ºF´êJš¤©ëÂð:çÛˆ¹fu}H¨¥¦Pù øK̵R×s÷5àÎÎÕ©ë0ªàÚ×êšMèóÔgäÛ˜Ô<׬®¢Ÿ }ÁWêú„° $a êò'p_—&°¦®›? ªõ\³ºFr†ö$Ô¿ !Oþ «kù³Í5©køKuEçøI]¼yuù6Gu­n£©k䚺JQˆ1stêrþ`¡®Ç³ÝiŽØ‰Â?Èê:Cþzà¿;ÛuM!ºз̖[gò_ùAø̶PWK‚mX×Ù™¨«Á“~àê*ßZ¨«âxM]/f!&BæœmV×YBÕ”šBåßHþàß3ËJ]c ÷t¶À};[§®œÀðY®ÕUÐËf«ÏÈ·6©Ëg¶Y]9‰™”˜åJ]—fÒù°Ít©®U. àƒÖÔ5’Pf™ÕUE{7ÙNà³DÈ^3euÕ&ÿâY&u5že©®œÄ‰Ÿ%©‹7¡®¾Ÿ£º‚Zkêª0SS×þ¢ò,ºÞ›i¡®©„¶ÁNl!««/ùÓf ÿ¸¨ëc¢Ïº}†Ü:ß"ÿPð›a¡®ÓÖ`~32QׂWœÉÕu¸…Pׯc4uý@˜œrùt³º¾%ÔÕ ŠérùÛ‘ø;O·RWÂÍÜÛ3têzýPvºku¥MCt³ê3ò_˜Ô5ºY]ˉV2Ù3Í•º6c:̈%¬A]­ ¼À‘ÖÔUP“§›Õu”{cº Ø‹ÀÝ ä›Ódu]žŠþϧ›Ôuhš¥º–§ÀtI]¼yu¥7BuýÕBS×Ñ©Òú÷âÄ4ºŽLµPWMB/˜&v¢ãTY]…É? üU§z ® SÞè^SåÖ¹…üï‚× uM$˜°S2QWg‚ÿ:•«+¦©PW\’¦®ú„áuηͧ˜Õõ6¡¾”šBåÿg2ú;ƒ?û+u$\mÀm›¢S×À¡É®Õ5ŒÐw§¨ÏÈ75©«Ñ³ºšmãè &»RW Â&öc kP×£IîàÜÖÔu”P5¦˜ÕË1_!x.sAÈŸ&ÉêJ ÿíÉ&uEM¶TWsâlœ,©‹7¡®¶ P]Sšjꊤ©ËBôœ¬SWIêº8Ñ'‹ðž$«k+ùKƒÿÔÄÌÔUX¯®D¿1IÐçN”[§üÀ6ÑB]Õ 6`-&Õ5ô‘&/_ÂóšIr~VKÈ+ßM^i¨ÿ‡˜w'˜åµ•P¥¥¦ÐÌ$¿/ø—L@y–Aöô$\êDèÅøvÍÉ¿üQj>I5·ØéýG‚M™(h þ'NÚÃd–ö¨>kQÅiü;žÆ¿<,à:óµÅ ˆ sjy?/·Mäÿ1–âS=±VÂî™õ­ƒˆ˜1Aç—+/˜ü?ƒ¿óx‹£_ƒ`óÆWlrÙ·æ$xü~ðó5¿Àpíà_OFÌò~²ùàï T9@©)TþÈŸüË“­úÖ>„»2^àBÆëúÖ¯°1É®ûÖ²„Ïë!ùËÆ¦¾5#ÙÜ·Þ‡´o “œÉ®úÖ}„}°—ƹì[§ØàUÖúV¡.&›ûÖ7xQb´÷Ÿ üc²©ï¬•¬õvE8ÖB]çÇ ¬!ÀŒÉD]Ë ^`W׺B]‡hêJ$ ¯s¾0Ƭ®Bý(5…Ê_ŸüËÁß|Œ•ºÞ"ÜPÀe«SדÑÀkc\«ë¡«åê*hRWÒ³º&íÅè F»RWav„5¨«&¸55u½A¨cÌêÚ0Z§®£ÜjŒI]©£µö¾€e!ï3£\¨kA_Œ–Ôµ®ªkÍ'¨®K 4um¥åÖ’Bl­S×úQê ô¨Ñ¢lGÉ겑? ü…Ge¦®òzuíIBzE ßH’[ç|òçÿÒ$/øÛèi:}KÈ«£2Y]ç+mÇïÞc—&_7Š lÌB`_ ÒVš0ã dÕ$³À¼  (oÝ.ü>ýMÀg$ ¬¦4vÙD¸ÀÍã«NíKwV‘+<™`ÿ$‰V•Øô’$ýý#BNÁ†ò”Jì˜$ÊÇ:É#˜O¿ã!â|¾¼\Í**H Á´æH¹hèï~æ÷)˜X$awyl · &~ó81þ™hÒø‡ØŒðüE|Þô»”cq––‘w—[™»;R³$ ñ™ÁgsßtfÒyßð¶#yÛúÆÅϾÓÚÖ!ÂTƒi,¥Qbÿó;®{óž’þÝBúñhÉOkñžòŒÜS†8EOÙ^ê)»í¤Sd ¦°>Ãiƒ%ÕDM‚/xk=\ô—­hþCøž€ñZ—y%Mæ.s('Õi‘˜†øÕ„ÿÌ—a{®ý­¼±„x:®tñ-ý­¼äÿ ü‰jгj6„4#ȹ—§l`Ú½JI¹a’†šK¹g/å!ºþ—€àŽ07æO_ÊC„¬È´DJùAstc”’Þ9éO˜ëCÌ¥|G-åQ· ð¦!"`Ì» ¾”¥9µi(åÓÁ èëXJLŸ&L]‹RªKIž@ð烀;CÞ…õ¥HÈ› 9™†Rt@»†RFÌû„™–`.e_X.ð ÿ  6œ¼.BÈç |s¤À¤È§°9ƒÅf§Ôk/!Z>ˆ¼sœÊLS½ï›>X`'JX¶‘þÐÕþ ÀÖÆ-å5a°¹~ÄOvé?fgò}ûϳ3ú‹¡Ûãߨ) ÁÒRÿÇëDÝe6L˜þ1V~„ÄG5´aBNžsàîÄF_9ƒö'¶iï <”ب£3èhb›Pgà‰ÄF]’Úø%m`e*\å“”0‡GlP{äãP–ç5ðãAX<";/:ƒ6$æ H¯q‰íKàyVäòÎa#ùޱt6ì§B7¨}Ûï*ÄÙ¨fb£&NŽuø%Ödša{õþ‹Œ/A‡X$gÓ3Πí‰ÓK°ªp6´%6²9ú&6bÁ¯¦³aÑÄFùœ£†°,تXžuÖAnø¹ºÌ~)ÇÁgØ9,pÍŽTo6m+³31h3Ðøg8d›Õ”r›û ¨J× —:P=h~^ü¼´YmlP¿Yø¢R›Œ»Ý&Ã>"òÜ"“åÑ›äO¨Î‘ج"Ž%5äüü³ìêÑóÊw4þ…¨|'&‘¯ù8Ê#j ¡ÞÔ5%Ϻ:¯%¤ú°Ìx‡Æ¿„}:@`¯²”ÆyÆoç*&5À΄üU]{í¯1ggÉI?e©ÈÛ.o+9Ø&Ýˆq¦?ƨ7ÀK÷ײyy5ÓO—8?ìåþâ§êyán'òTù¿ö:OLem-5Q›ÿ9å;‘I×þb|íÿ’¿˜íGÌžÀ¬Ô_žYÞê‡þ/Á¯ŸÅÌrÁ*ìB?ãÌ2á¹·6HO„çýÕÅÞƒÄÙ1Ú 1†0çú‹ Ãûeòü ¡—ñˆÉ?Tâݳn†áÓ_tÏç¤î9'Ñâ!“ýD/jñüË·ˆý°}«aÙö+©{^EàÂ>H`éùB=êgñü _ÙŠîút$ìÁ~"bo‘ÕDoÛÀÞ¾^ñ=´ÙÝûŸÖ'[¬ÛžU »íÀŠØmﯤuÛ­¿Õ¦awúbˆ¯ ǬrŽl§3ÞEìN–ì¹¾ö¯:¾Ê õO)ò#pT:‰D¼ÿ­ þÐW—‰oIŦý„ý(ñÔÓ´"Ö`uÓ±Zøi“üw ;°µ ëð¦.N!X×oűP¤c±†yw=æ(°‘§—sd¿ —ù{ÌŠr<µ’7ÍúÐür»ÐGßü?ò¸Ô˜n3_m4LñÚP„}áÊAï*Af¤F‹)^.‚õXÉ>–S¼eº)Þ©ÞH«Ó—«÷è{B½¿Gjê]E˜Âú`oiŠçõ˜Ÿ;˜ºèˆ"BFA˜ÂSü“lœŠÿ5§ña·¶;a©ïªD ©}ÌÚ:Ö[7Éó!pwˆø–šÂέl@¥ïN÷¢ñ/`ÿè¥a Wä—8€wX\!ÔÞæ²–ê­›êµ!ðŽÞpÍBúšÊZް[_ÂÊú¼'‚»ø ke=C¨zeíÛK7á[JàürWOÒÏTÖ„½ÑK`'IXCY[x3€»X+kyBMìe.ëឺiß‹xG@ÈÒßTÖã„ý°ñÖPÖöðVkeH¨›=Íe-ÞS7ùkEà-=¡ÿƒùLe}—°c[[ÂÊúÄàP¿F`­¬'UË¢¬=ãuSÀ…Î !·9DÈ‚¦²~KØ«ñ›,a emFà '°VÖÒ„o.ëïÝDði‚à äë²0 ™~$C7SÊ3$ÖKqg–³H›ål{σYÎ">Ëi} f9y†¦ñÎó g=_ž÷n4ô]Ì6EiüO{0×!ö Jœ©øÆ×DÔë„êï•â%UÊ»>RŠÏ”P¸ôÿËÍÙÒ— «¤SrgC¿Œ²÷§XŒ[Òa>‰FÇyјV0-â©I'b§˜¡±l~•ÍÐ Æ©3´× 3´A7Ù -p™Åôª6å½8N”ºLœ|æ}‡ü‰q8óiñž~æó–Žq»2Ú@Äœ±V¶=„«çrÂÖ:VLØúoNØÇv}s¢öVÎPâÿ+òÛÃ<»²ê ºõp5»ªBØ€ý¾‡6»*#Í®²2.V7»rô«â÷„5‰ÕfWãT ΣS½†ÐEbù<Ë?0E?Ïú¡¿3Q¼¯’ bª•“Oµ~Hã76`œHŠsŠ“ÍúåûE=LÓ­š„_Ю‚ª)eóãECƒüÐC;^êTî.dˆÄ}ì@%Ò“O©ÑHú bÛ8¨º4ÅJ¸U:ñ›‰ñûÓÁÄÓ`àuþ¨aŽ¢ÚËòݎѪ÷j4Çe÷u´wöôÓZa³DXÃS¿ôͳngBz΄ÇÞ½üø%%¬ ðR2ò<ÚëëÈ/Ò  ÂÀ'^ñ~LÈ0LÏðxí…ÚV•éúWføyŒ¦ì¤ä¨Úä¡_joâ]ç7œñý]ßÒL¦hÿD‹’¬ç)t»0ŽüÀß'ÊbÛ„`ë% `ËœÞñÂ;©Ñ V=iôZ8|M°$g¶1z è¤^tGLˆëÇãVUG¯‰ñ'Øö®S;ì"Â{@8Ò](X¾É>ƒPÙ¥¦P»ìOþëQŸ¨¦Ÿb "Ü6ÀÕŽÃÀýðÂ;Ï(^H Â( ÔìŽ#» N›·þ6êÃH„Ûž‹àlçmY ·Q÷¾"à/DJá«Òäh:³F™Ïŵº«cǤä’üJ_Ìo1îeS@qŽ £ý§0Ûº‹üšGšÏq 5¥»ùW¿;žãʃìßPžnærfe™³y•³ƒ_]¨>ÝÆÿ,FRPšÜ)ä+aíjžgTC©OŒî¦uÀñ8AGùàN{úhAý!óƒò¹uùïvþ™<Åß‹U ô²gûýG w)Z÷@Q)aÑþÓa–?BîNƒíèÈ›)³qÂc/­GÝK´J]yšëÑ£k¯õ¨sã¡7u1\¦7B_Œè]ÌÝi3Bm”šBÝXòO.VÝiVÂÅînuÃz"¾+GÓßylÝýÜ©uOgsO4ŸPy"Ì=ÑÆ.ØUzGÄ8ÙÙ½ž¨)Å]ßÅÔyó}Ø•ÐÿWžQ5¤Î¨ ‘wk¾IÈÙô=Ñ­pÄ~ X›„å=Q)„î h9€ž × únh©¤âDâÝï ×ÿ$ž¾ú†°û/aÙmáŸA‹ U"ðT7&°6;ÌA(Ggs´;<³ht_u☦ö;üyy6[ëÛWîw–†aøüPˆ]ar¿ã$ÿÃpìwN`¿3ž—-ð„úôdId|MŒ]Ü­¡·†©èDM*tr¸È¼e˜Üïä&oð— 3=cÕ㜠Ebm þ* o-ùßÿO¡^æÛ£ö8LÀ„fò@šàÂx7Ó¥ èfº}¥u3f>„lêú¦A.B÷â“»²ˆ†Çw‡Š›[¥ã~*iu “;jŠÕMƒ%„ÍØÖpO·?¯‡ ðk7 ÚjG¨¹ÉþÂqRC?nôKfŽ}C·Ç·Ñn $úàPœðù'%óÚ7>Ëï7ÆÔÆösZ³Ά™å|#ñnú_ç´zßՉƿPòßxJ|šöÀÛl‚äÈ^Tzàm ùo†ÿd5…_¦× m µ;D½ƒ·O?±lÂ'–³ýxÿ:ô…#Gâãô&§tOª ƒ £ŠýŒ¨v|Ïõ·’Ò;Iïÿ°2„K Æp6oÃójÓœÀÛ‚eI~Kþ«àúW°—ûù×$ú w –…Y˜üÃÀ_<ØB˜;Òø`¹‚3æ^‚WêÄ…y$œÿ[KçÂøAÈM] ÓAè‹<ãä¼ùMÂü Ø,ÌOˆ¶0XdÔÑ•0óö[À–‘°a¦ÙÜ ÀÏìfan%Té`³0;v”„ye´Y˜ˆ~££$L^›B˜A¹Q˜óiœc7 ³Ãi­ÞËRÐñEÉëÙ ÂÌFùÓ. ózôþÌzÙA¨r­„¹ÒÎ…™-»,ÌÕÇtÂüŽB¤ÛEF-2úŠP;í&a6·k¬HÀ)®…3 Ó›À‘.ÕAwýëô7ÿ“o2¦áÝÆ¹DÏô}ßÈÂL ÿí0óÿÆB˜í ¶`Žo2ûû?ŸÔAýû?y…0?úBúû?„‰ƒÅxÈ^^llμ‘WgÒñÕ?×t¬=Òjíf{¡ˆ“ÔÖ°[%¬Aj}|å¸J`Mj­µå³Ô¶—¤æLb;Ñ¡ñÐßâëÞ+í?…èËw8™W¼}’ uöÓëšÎjp|}ÛÐíŽòù6¾!]ÿh‡¡*ò2Û“³!ƒæ‹?&§„‰çAöcA}¹À ^5 ½p{­w!"¯s¾ÙNn™É¿ üÛñQ\R£g¼YάYú·'p+µ“›å­¶4þÿ½¶ÍrÁ*ìBÛLšåD‚+íy³œ•[4Ë9Í´fK˜óí`´ÐÖfù1Ñæ­U[WÍ2aûöݶ.›åï_“þüäks³ÜL¨RíÌͲC[©Y>aÝ,ûPˆ+|‡“gå¦î?;6Ë€¼Z³œûµËfYBMn«5¹ÿÃÜÛ€GU\ÿã{w7É&,Ü D!HPB¢ˆšHÔÝMn6@`_¨|«R´ØFØ| nV2^VhŠ­/ÔÒJ•VÔß’HÙ`©HmÔX#Eɺ1„·ìÎÌܹw7 Úïïÿ<¿ÏöޙϜ™9sæœy93×r»^,“8Æ«Ãüû¶(± ÜFÅÒ›&–æ© ç¤×ÍÓ‹å«<~‹ß7¯_±ŒÆøxÚ/n£iŸž§KÅß1¯±¼–Ã63Xñ¼Kº%]œ«&øÙm ˜/2ÁL,ÕóŽ)dDOÎ……ŒwèBÆ^騼Òaƒn›nÖýOfeÉv“æënöòµ³yxE®çHÅ€›Ä©Ø-r·°|~¾AMåä©¶³T·k©ìÖUy¼IÄW%$âÿsêC]áâxâ_²ÄWè 'xùN×gsT¤ÄßÍÑ §Øm¸Þ›¤£¡¿è$úEž&™¥yoŽŽºÑ{Ÿÿpäѹlþ££¾Pœ[¿P¼Öˆ¿­·HGÃSÔ”…<å_XÊ;hJ×ÿ(ŽAsµ»÷qhtTó¨ {¡Á”¶dð/q@Ëo˜ “èaÈæ9tpª_ƒß“%1Ê»ŸÅÕ÷ò ;.Š‚XLÔÔ¿â©ÏCIæZÎ`;–nÐz*8àSÈ–mLœEÀtÃÎ¥mØu툥£°Å÷˜ò˜µzéœÞ:z«/MOÛIÁå´ö_ÄML6yØ¿,”#09ÈØ`ñÎæý&ïÿ³Ù ßL½6_ÃãO΢ñàü½^-ËCØô…Ÿ'å4/çÎÓyÂ]³¨HÇ ¼fwâ0go¢’´“<ƃQãJ§á¥ãòL•ªÃCä®U¡¹Ô­;þIZµ4ÚhÕ—«”Ƴj)×Ws Obñ*ïÃh=Äaÿ™ÉÆ¿å½Vœf´Jx‚×f‚Ñm¡Fk¶¤­ Žy’-(×­Þ®¾+SÌg ”Géyí0F‡NdÐö²XÕ»•cÍì­|Šá6-Í_h9YN ®+cyǸrsäN†¼—#cJy%‡®eЛÔRòW=3TÌ¢òÞ¥Ü7TižB8x2#šÁòŽ9põ"G&3ä{SÊG9ôë2 Ý8ƒ•’+òyÓXÖ»”çà6H©Mgqð&F°PÍ;æÀ•À‘?gÈáSʧ«P;ƒŸÎJÉÅø5ŽI룔³I)¹.ôsð‰LæIHôvÏ]µ¡Hï`·òø?³øi´X1Û=Ã8®ŠáRî=ÛåV `ÐôëqˆCnžc€7ã` ЬlœNÇWéZÏðdñŒr­»¿1@Ç~:bktØW¸Bþ ßÁÁÚà ŽZ3½w£¼çæž.>Yé™`uKB®'—Ïÿ¨ßàø T%™Ë2> !|ƒã%Ÿ2]`GÔaÂ&ÈQ:{=Ä2ž¦©™:fÅ©ƒŽ‡z lÐñhœ6èxºT³Ý“8 r¾^Ërs)ÉR·KbáÐ%nZƒìR½™ï˜¦ÆÏdñ†RÕÌ—^Ê ¼Âg MÓËë:¶”v§õaqØA[5í’áFžà÷¥`ŠŒÔ Þª„!SɈfM»¤A8 ™j)¹AøvŠŠ™ÛG)×M2õ<žlÒ·Aø Gò¯SÊŸsè?§R¨<%Ö ¸8æÕ©½Kše.çàjFp¢šwŒAè,Q‘·3¤…#cJù7½ŽA?/‰5¿ç˜}”òŽ)QÁËÁÿžÂæ?%1¸œCÞšx[¶öë5ðà)T¿nÐ4ðå·ýOs€ÜN¶ŸªCgÄÀÔa÷÷ª:ü9 #Äž€dR+*ž‡ ½ñ Óç,ÂÏfüŒÖÅEÁbd(žƒŠSƒÅiÄiµx=D9Œ¼éZÕ€Ýà|$§žÜ!áKÌ©—W¦Äõ5Å^ÿb^ÿV¢¿ñâyŽHd×ò}†Çx|ÈEãŸ*Žiô;9d¯«Ï/¦¸@þd¡«}ÿAð+=Ò1e7ì4pÿ’Ng%Ë*;6«“’ ¹Ã¥!mÿ¯X·ÿÇ­v‰5|ÌÃsiaÈFIoiVòx ¿¿‘ú¶41'‚$žð–ð>áÞ”cyü:Ÿ% ½ÝzŠøø—Á†J½½){¢|>àir‹ÁØ\'mÜ-@jj™âÞHÏ´faV»[MŽ ¡9*”ÊÄ7ø…ùO–nö!‡sÏÝšUž†Ê,A©…‘ÝIÇÏV˜xMpúÆX„#X"¾þ{«Šu8¨d€ý–z-‡Œdçì`êÀbµÀI ~Âá Žæ(;#uü®ãblÞK›Â°Þ¢·yOðøÓ·²úCÙWwAƒÔӸ݃Î2*^}µ}(¾'éÇ<^ÅóXÏò wüòZÇóø o½¥‰Ø7«°) vææÞ1“6û+Oz+ØFÇ÷Ô6îÎÑlãsúVÿ›ùD Uª¶1OwVu.OÒÀ’üòæ(Å­³£Y»‰a oîÕêñTq ÈѨS†¨¶ÿàfjD[uà`š¦€þ¦ #º•£1ôÛQhüß [˜¯û8x¿\SanŽÛysoÓqÇ¢ 2›–À†2`¾TßáÙOŒ…êÊ+V¿†Õ®’<7Y%yÏͤ`«úæIÕª†ªVõðIͪ¦h}c7OŸÁŠ^;™›î¼‘£z ú4;, fgH@¾—;”,Póâ°„ã_{´o06íJ‰5̹}§¾¥ O sîûh@3¬@+^)³ ¹6%a›Ñ›ª¸ÌdøÄô÷;³p-]fgö¦).›2ת̰èÝì•€°¨üÝÓa9 üm‹6Æ[oâí_ÀôáM½ñJŽê˜¬ç ?’¶n²jŒÿð=5Æ/ã$] °wánSÕûÚ˜»tk4§ÈYEmÿŸg÷Ðd=›xvõ7K 1š›ÊˆZ3›œñL[õ˜Ç VÄ)Ä:˜af6î´½.!ô&ŽÐŒoßñÝÏ×?nRo›Êõůo¿àk‚”—°¿nNeçMzûË)õäƒýmB.rÜÔ•†‹.ÔÃÊ ódV|µ°¯ÿ?ÏõmÆvw,®¹lEž¦ ÔLÆY3ð@¢V™kÃöØŸ‰í1A,.®4¬ˆMî&PÄ­&W…€s© òd·˜\ÞÌfäò‚Éw•aºE¬&ªQvZcÖŒ4Tbérê½›ÉSkôU¾ ¯I{žÖÇæpP}>•¦_äÅàIò,ƒ\‘¯àæ(œÈ‘Krt^/ yäF4=¿O| çɯ€¥ÍÔ7w´¼¬7À[8$–Ñ®{eô}•m€}:x8ê½o˜Üaˆõ|žœÛÛó¹'ûK.Ûÿ™D…«·çó0Ž­bØëtØ©ýf¢ žÍÀFÖ¤vG]›Û[jNÒImWžÏ~žüW=ŸÿyTÜCŸ«‚ÛsTÜm,Êóùž—týŸýí$Öÿ'ÆX‰²œAÎLÔ¯H~›£ÆÏeñq$EôF£à¦ÝÞžÏoLÏçmçó›Œò|®æ$ŽO¤=“Ó;£ŸpTÓD!ÖóÙ3Qëh×sà󌜛“ëåùláà% œµÿ5AŸÉâ 9Â%<ŸcvÁþÌ“aÉÿAC´ýÖÇ9¤3‡­öOè£oÞÅaûlù]ßÄ-Kº'îx´eOǹǬõÕtžü‰è«K:h_ÍΈDfjèüØä·×ñög9ÆMèË„^›'É`I^§jy²@æV‘ë9òÜŠÜF‘¹ü…8ä_zw+qBÔ.™ƒ_bôæQz½öò†rä*†¼–#cvvÂתPƒš(T·—䘜>JyßuQ»d¿å`3#øÚµ,¼ Žüô:ЬáȘRJú ƒÎ¿–•’ïåæåºÞ¥üìÚ¨]²ÓרàŸ0‚V• µãè»ApðìZ‘k¹å¥n’ ·¼$Å.£Ä±Eô``þÝTÔ{Âõ&ù˜`–¥ÙTåm XbÂï®þú‡~ÞÇÌ… ™‡ï½k{ß²’Eew[Vê‰ZÛöäÞ\q(ÁN¸ûÄ×vòõÿl•ì¢kNn%À\%¡íFª3Vaäjöh85(µÃU8 +€Ú“‘+›_b@¾´…ˆ8m+»Rfí5z-³šÇ»† |­Šg^¿UEÁgqø;×Pr’,iÔÍ,Y·éýÍ,ûõ7³ìΆÆß¯Tî'7³ì×ÝÌÎâòÏò9“E'®ú›YþÆQ×1ÔÒ×Í,Os¬‰a¿ÍÒnf¥sù%G~’-è§ïŸféYQÂa¯ek­Ö…Éà˜'³é¾Y{´JÎåm5Åv"¥ðOGòó`§øu^mãU:ŤHMú:”Õë>–í?4›Vös‹ŸÃNdõ}Ë0¨Nô},e<Ñî,JÛ‹Cà>ºW] Ümà¾ÒÝ1嘂Šþ#‘PæEmÝ0æ³Ç3Õæ±×)?äñy,¾%³»õ"‡%3Ø{™—\7\Æ´Kõï/©¥Z}…6º™É1o§Dï¢waÓôl?¦iO‚X’3©iÚcš¾§"ïbÈ™»™¯ÿqHÁø>¾‹œ¥NÿÈÁ"£÷θ¾MÓ#ùU&EnàÈ¥_Æ¡»tѸXÓ”Í1¿Éì]Ê¯Ç z§ƒÈÕ*ø>Fp˜šwŒiú'GÞÊß^Ýiz‰CS´ñêXÓô8ÇtŽë]J;)%,ÝÆÁï£zj$½¯Ü$Žz–¡HÝ!<¾’ŢŊù]ø*®ÿêŽÞg‡Þ™ƒ®"µAÔí·ê=Ãv𤗳¤M4D 8äÌÕtL>>}uì×éþ‡cÿ~µ6ÍÜ¡¸£§ñ}û|ŽûÃÕl,p•^çñ2‹Ï¹JÝdϾÔG~ÚǪ §²„æ«ô,­çñãYüÞ±}hƒ§9ÌÄ`¯Ž½¤6Xļ ´ÁWŸSmà®iƒ"ŽùëU”èc@$ó$°$™cûÖG3Td9CF2b´Á¹öªÞ¼rl”6xŠƒF¾µÁù¯±éçȘ~æäÐí z{F¬6É15c{—²5#Jœ£‚ï`Õ¼c´A#sò‹1ýhƒg84žAkÇÄjƒs8£w)'fDiƒiü»Åhî˜ÞÚ`,G­c(ÂE7ŽÇÿ’Å'éK|~¥Šs1Ô½mðšS¯ ^àI­,éî+c´Ác­ ”1±Ú`Ǿ3FÓo]« ²8nÓšíŒ+õÚ`÷±ø1Wö¥ ªŽµúøÍľÉÃ~bYœÁ@¯Ž5ä-Ÿáì¦ ;+!¼†^! ±žEMÕEõUx’3k…?žÆç?#ÕÂ'Ìö^…+à)˜)úß'»6‰ÒŸM o¡:’s ‹¹‹åœÔO΄ÓK±j–äþK'Éé 9u%-â%ýëjIÍŸ¤nï¼Iô'ÄW  Ä}´¤ðR`YÃÿh$a‘U,çýö<††þõó¯ÐR~ ¬’„HwbEþÕµÈçÓx‘åŽÒ‚!⚟›Ô^¼"žë¥¦xÚ'{â£ûhîò×á¿¢Ã/õ÷P'~/.“•ÿiV|k?Å7«š «*´TÒ¥ 9aé¿X‹}dž“ƒþEZPýdÓ~X¢ªÅ9…î%ÙÝ£¥þǤ¾<Î"©h©>½t*èTà[úž$¼'He á54MPõ† ÷€¤èÿ ßôÏÃIÑ$ß³$ƒú)a”FÍÖR™?»t*0o¡Y¼q³pf‹þ"V€2LJ¤¤†0Rb?¤ÎAÈÑo©–j̤"çÆÁÕ!è/Á©l4Õ$– ^Ã÷Ѳ R˶ 'ýàÀ7˜â‹~p?¹$²Æß IôÛµ¤s/Rݹ¾>è/À©.c:„¥º¬Ÿ #äoïT®OW}F½Jü©ú1âÑa|þ3\[`{ n›ß$¿o†e0§9ôŠné®–'9œí £Ë“MQË“k9®+U·<énB¥šÎ(¶7§iLeëâÃèZœö¹ž\Žy.U`î%Í*½QPr© Étà­?ÖíU“ÞÍÈë³è8n²¾èlI­T.UôgyšFû‚«ë0ÊtbßÉÑŸ #•€ËŒõ÷r.‚‚¹›»z’|žê„-ýÜPÖ`xžÒLòäS®8žæ—ÃØ\‡ Ôª=0ê'ÓlpFõôZ)DAô1s3q˜€¿Ë;Ä$ §°ÐÁÃÈæ3òì€k×CB©XÅ\VJíó)Ì•MËYàßHà¸˜î ¹4p ü ÌÀ2žB#^`«qDxP@~‹½W Ëü œOqêé9ÌKR:"Ö~ÉfºE’Ñ1Çu¥xp|ÑĈn>8ÇË=q¾ÿ¨œ°Z©4×ïYG/#8W·–ëAœ›Š<íb‘âI®”r-Ž}—9Љu桺LŸ¾Œdj&Ó’éBßF‰ˆ(ý%$0f²Àù$q®–Àt8ŸN"4p9 I‹hà¯X`" ,¡/³ÀÓp_š«”îe_à@±Î5›†f¡ûÔLϳÀZh¡CÒÀç!0†å°0‡^/=Îó䫞֮5‹Ò^V!üi ¸Õñ\šG-cQ.eÖG­cQÙ$Ê¢ÚÆ¢’I”M,òµÒžÑÀ"º‡@Ù¥èOYà†hÝžcWæb|?Š«ÝwǶNC´Õœ1`ÌÁBï0’UØBKun{Ce;fK{ô¸ãÉ®³ñåÑÙø8m‰î÷3€‘~‡V ý8‚<ÈñŸA6|ö·^Ž SG:ƒ¦¾oâɶ¦ÙÌL¦Ëz½Aqì †½J‡U¢?hõ¥MOcà³6¬9‚¼ÅQc÷^¼š÷½/W¶ •„Öêìe5Ovœ\QÆ@>ù›ê²¦Qu1îÕ@^´i>NâådZ¾ÛhùtŸÇâv)¼’³õà¨/[uˆ*v&ÃôØè›mwêšâžp8K£2éóËVñTÿ±ÑT¿ŠJUf ÏU±nŽÝɰ÷r¬îËVWqØz[ïíâOq,j s¢ÖŽ´³šÄž¤&»Q"êíóG<>ŸÅ…K}É*¦ã8…3"[ Óqïç©ÔGÇ-ä°¿0؃~DǵòdËDè¸ïþvÜT£Æ†Ž¼ýiàKuÜ]%ÐÜðÓÆ^÷¡A½;nOD³yz`×ñï1ì:lLÇÇÁ¿f`;k×ÈQ‹õî¸[öÓqÿnU“]?H×qÓÕŽ»ì-µãNiÔ:îq«Öqk8‰Siù¶Xûí¸wpðßx©Uè§ã^DZO3¬Kí¿ãv P.` EgÒgÇ­ç©Æ³T­úë¸9¶ÇÊÖ?9V×qà°Y{wÜÑV]ǽû{Mboàɶ0ê·ÐwÜ¡<~‹¿vÀ×q[’T ·0 ÝI1÷UÁ ;“úè¸OpØéöBÒ踳x²w@Çkbëß==œ ×qÌÓŒ´+éR7’¨âïšþñn¯Ž[ŸÔ»ã6ñdY6í‰ýuÜg86žakuؘŽûKþ$‰‚×p°Öq§pÔëI}|ç8±ŸŽ;˜'{4I×qö®Úq¯¯U;îúwµŽ{}¢Öq?²pýÏÊwÔÒoÇ}ƒ­ ¼Û"ôÓq—q,p~ŸÔcûï¸7ó„/²„žèLúì¸ <Õƒ,Õ¨¨TúŽûY‚Š•ö»„>:n-‡LìÝqYt÷¥“ZÇ­äÉŽ²û´~Ÿ ï¸óy|Åû~ ã>ÝqGp ~FáV"mU!Ýñ*ä§ ÒßGÇ=Àa“,Õq·6TnÅw«ÜaŒúþÎfžÐh®{çÚu·žÓº®—cþ@‰¯þþŽzb¼–ÿx’—Y’ÛHˆIjÑÝÍA'À»£OºµÇÓþýŽN¨:â¸ýg„ œpï“n»9:ƒ¡ÆéÑ1'Ýÿ>žÂÿ ƒk½ünŽûG|ï^iƒ2æ·ød› ?ΖÅÓm 9Îö×ÝjoÚ©öñíÖúxyœÖÇÃf5½‡•Ï„cqN&úí;÷>Ç]ÃpŸ‘ø#ù ,Ñ9t ~Í\ˆ£ ^ŠN@.Åäw`ÜÍáÿ`ðG¢á Y:ücéí˜âšCºœˆ‡t†ðOTB—sBÕŒÐÄ^ù >Þœa¯?ƒ›zÁÚÅ…osøU Þ‚CÂÓ¸þçññ,¾Ö¤#§¹z/åÀÏÍÚšã03Ø¥{ÈÆ;” äN þQ’ŸsûÏo1Ó\&èÓv6Žzج?mÇÌF›ÕÓvp}„Ü I<ÍäHšÕIõ¨ BŒl«Öi s½úŠ‘ÏÌüë$:ú¿ÂÔ˪%ß‚\¶ k1$†•0ée¹Íß%V_ÄÙ(kàûîïVá’œÊlDsÓL®G‘+N²Å‘r? PïÀªÐ~¹r‹°r â²ŠuöHÍøX»\¹¿G¬î OÄêÓ§‹bõG@N?^£"ß|¦5Ë•y™æ>ªÌ0ë<¾t¹v$2«ŸQ'$ïJNH*sÓ×b‚É"ur‹‘Ëë?èMÊüí„°pJÄÁ¿àšü?iWÞ¶UÞÑÛìÞrû(´¦ƒÉã*‚Öl£ÕD°vA NpN±L™‘‚Ö­'ô62Ê*Ç•¹6äÙbrU@Q*hê¬WöºV°FjS¤-gšMN Z³™x†@MØt­ÛOOm‚ë Hþ}ÞÁr}D>Aktq¤Ð‡Áa,øH»PóØÈcCÕ9à‰èld>Ð_“îªj„Hä©/ñ]«H»Äº vQHî Øíý¢€e¨¿Ô¬†˜Ð ±ûm"'Ug!È7ÇŠu¯‘„Í &„‹9cø>t 5å¸Ü¶ õ eùÍ˺ÐÇa«p5e6ç7â·—×ìßçkN"÷Å·KøP¬Zãù;:©HoR„ÀjêH$ßS/:›óOyÅ:c€„¿ë<¯Ižqïñý ¥-¬­W©-âÙ‚Ê,XnW–[ÕnÖÏÉÏYƒ:þ5èÏ®òÎe6@WÝåAmxÓ›œÖ½CôÙËHJó>ŠTiÝÑôö§Td ºåTÙeÑNÕìäÑ ò{¸–ˆœ½Üg/·ñù?Gž‰P óGe³qÐA ‚³—Û¢}—=ØÃøú¯DâýõpörǼ%ú³—œÆ“,£‚ÞE.òúG¢‡g{4|ÂQ…ŒÔÉ‹*©Ø³—áØa {à¢Þ)*ÀãÏô°úCˆîÃ_’Á\ÐEo>˜›‚žê»+ ®Š ´BB3qÿÇ `3”h†¾à^Ÿ……ÐUº’≢ù±º"ôÉym/$æÀÏ® j¥®d•jƒÎæÍ<ÞÈ⟃X?É9쳋†pÈ%.ï¶ó/áåþÝt\YÚ©+Ó8æqF4ˆöqÛ÷J W“ÌbI„ ´½uÇv÷pе÷[ÑTƒ“À¸ò€AŽõ<Í9v³Ì¶ó*áÞãÊŸrô~†~8 3®œÄáÏ2ø4\Wà8ßC¯qå_ÎÃY½À†w“s.ÃýWÐÄê ú±æ{çTZ™ l¬9m‡:Ö<ð’:ÖôîÐÔïWç4†<ÆÓÏá÷!}uÂmõþyC¯o©=pÞÀÆ,•»™Ôþgi9½¥ŒžAGïs2F!®h0:I%¦Ù•?0HÁW6݉¶Ô:œ€÷´SM>®b¾DækϪ™wë¹ýœŸò{T+=a_LxÔ' oáÔ¶Ó¨ü鬯â4Žxü“ÑŸ‰<Û­BîfÿœUµ7ùÈ/wâûˆ#óòhw¯žñ¥œ£Ú»9Z{?u:Œ¼$¬jï¶Žß.Ökï…œFóYšÑÊÞ98èå³Ño²Ž#8ÊÏHMâ¤bµ÷‰3*ö6†Ò­×Þñø|ôŒ!ê`di”)û˜õoNáL7¥ð*„pÒxü¿XüR’CÌT¼˜Ãv0ØOÎzÝÛv1jm0Oóh7hKø\,hË‘aM[ïR1óÝx ÛÇ,|;ßÿáIƲ$‡HÿÐ,Ò>½ŽcÏž¡Ø»zåû9¨òV~ú2†º7ÿÖ¾Yg ½&í“x²gíiœvoåÇÑ¿dè+¢Ð1w¼}ü½ ·3øñï5¸¦\ÿÊq©gz+ײ.PMrÄ$>¹SÐ_î¶Œ§k‡bx6³Eõ—U]úéV¾¨þ²¦KŸþ^WNâÙ.Vÿï l¢éÆí ÄÎÇ<Áb–àrž ùø¡Ó*üfŸŽ¢ÿcçãOpB§Ù•./œŽÍW7¿ƒÃÿÆàK£óžgsøo¼‡hóq+_Æâ3ô¹kóñÿ|§ÝßkM¸Àî&r3]}`Ã6èCÒöŽS2˜KM]¸$Ÿ åÁdZ¼Ø0½†Qáûw³â`wþéJžËÑÓ´8Ë¿ãOÜçrTÃiC_÷E§‰GÖQ2Õ„äŽïcc6wè&ðÇOñþÚÐǾ™PmB6‡/³ r›Ê†=Ïöóõ ®Ö~ÃéX5ןâÕ´î•‚ø;-á$Ž—‡(‰Ÿòù'ñÎw”„[#ÁÇ ×pÔSßé9µ_­Á-ßN È 1§BðPW¨K€ …p´›ýš‚bòñÔ«_§Õ_ï»<(Õ’Á€´‹þ¼ ?!seª®ÌJ6¯#Kª-É—ê—å)R½â© xm·ÿ'¹ý?e`~ZûU?­{O©ùIµv¸âѽ‹e’ï´.ûåQ¿3ÄNúw§´¡…Ž<Ü`e’j‰ãX*0s½öÌAäy[)± À¯Ô„ÊÒp(òì", K3+’6âdŠ3 œ'CÉâäÖb“_S¶£S-ÀåjÝ4Æ#(ûmséÒÕ¸ŸSi9Ùg5FDW£¹ßFSÓ„}¸GÂÚqF’6ë2F³r·ÑW¥_R‚§ò gr–â!Õ Ë¥jÿ9ÁûÿÉÞµ§:Ùˆ&ÜaÕ§8Ó` ‡Ä‚P*°yýo‘9ï½UŽôxo’#¼×Ë‘‹Þ rDðfáßHÎ×ê4X™In]†CçMXFÄêÕ”ZQ†S-ä1Ñ?ϲ Éq2Ž+Ó]›‰#Õš¤·I7],8¼j_Ç&Læ¬tW3áÖLV¤]³ /ðUƒU•Aƒ¶¥µï¸Ê™Iš‘Ó5Pû "ÆÑ_±ÝÀS]<Õ#»S•*l3z ùVX.% S8¥×Oô) 玃€@e”rs–o9XÄÎäNN€ç¤bÜföþœÉ±åR÷w¶~«fèÔg¨“m]†–˜ ï4² -D;¤ŠÕ/@âé"*ª°`™¼]™bEîg.UéÙ¼ ï7ôµüw\U'Ϩ|X}ÜpÉå§y?iî/zï·Ú0á³c*H:Nõîw¢_þÙÅ!W2È ß² \Œ"máã?<û-ÿë=þã –oéüaKôüaî·pß¼ça0µÝ®rǰ<|™é*Nc=Ëè–Þ ôs`„g›~é¬û˜Æ‚Ö0oF­3ÌG1Sˆí;”a›Ãú)ÄZßuŒÆo…‹à¦ @U{`Ò@³ƒ&Ë@9‘ÐÈ ÄP)å6LÎ$$^ÐÖdîQ$ jløÆ†µÛŗv¼å˜OG§?a>u Ï1ü4@™L8$Ö=d Lë¦ XERŒ%ƒ¹9¸"ò¬N©Ìj2IûMR3î&©Õ$µ™¤v<Ù6I&é˜ÐŠyÕ„¹Ex%Ym Sâš1°t鱆ªråÞ,¸urõ&¡Í?À<,ÒX€àÉb“¼çu*.KEóO#_7ª¼€sÅuÚäÎ|‰>n8.Þ×EŸDîqçüNô‘øÊyTFÜé;¨Ô‰_è´5

*ªD¾È‘‘ÙÉf&dk€¸c2–Ú/ÑÉ3@L-TDAvS…FÔDä·¡Ý"4‚Àš“b/ Èùó·á: M­ð ÿïß'>¹Žœ»Sž.ïú6è?†Ÿ@ý’3oÁSàˆEÞçÍBW¡|~”ï4xÞ€3”JѺ è\ÎgáÛ¯qÒå:p/ö×ûN¢;Ÿ¼àÏŽö}þª =yê´ŽHNJÑó@lÃ%i¸Òç.à¬1N¡•ðÁÿwù¡‚w"ú.HÀœ„/ï"ÁkQ†äl‚à8Gb0Á6…$=Ðüíø×ûËþ¹ èdÎA–}2ξf?ûy–}Á ÞL…dˆÎê2NÞy&³XülqšèJzá¸\iMŸ¤NVQ\÷EídI)K÷ô QäÅG`¨mAÎô s×â¹i®l¢"/‘ȑ³¿ý#È,ÐLGéx¾<Ï%"3ÓQã.8xŒÕ¥„S¢ò´ 3…øHVäÌ ßëÜÖCíÈ9÷äÌ :'Õ,g6™jÔ‡­»àÌh8nœ]•÷¤ÜAxµWæ[üŸyÇ*…i¸WTfeàl†‘%B’ýÁ`a#“šôøÜÊ@¢Ÿ"žÙ/ÂóãÈPu­b$_I¼ü%¤s¹{a2|kÿ7Ò_øû•I{†¿ç,Ñï±×c.\w“ãÍ7 ÄOäqö@˜x¯UŠáæÞrŽCþ2áÐ ùÞÝÁxà{NN+Òv,,©0…öÅ­â±"«·`vF0³` oÄR°ãP»tâq¿,í°„Mß¹r‡qÙ;¨[npF¨ØŒÎø5“íïð%V¹Ûè½Yî6ùæ…˜×A•O (w5’²¡é¥ÁâÙp®7 ü-. Ïw­`| @Ó÷Ú @_ÿð,¤² âTBì h©5œ0Êì0…~CÖfµJâò…óôÕóØPŠ®z I—¨®Ù¨eè¶W Ú»±õ¸žò½ò5ÏcîÙ“ ·­Eåö@å‘P€ôOšÙ£½y9›€[üû|9 3sñt'V¦ŒC0“_‹J²ÉŽÕl(g*)'è ÿ¸ ò}ÛÅbßöɾÑåk!‹6ä:³âÞ+‰p5Ó·]ðÉôµD¨3+ìÍ»¿Kôß‹›9h@˜”‡î»b¹+Ê· SÒŠûÇÄÑôiÓŠژŠ€Qq8ÈŽŠïi8‘Ñ¢\oFÅw6œ0ãVTµrÁHŒ^/¯¼gä2¬€ ˆ ZPYjhh!,^D:"n¾G.!ÆK‘f#éÝ‹ß yl‚ž+îLq¢Mi°XP0`!*-«PX†œ‹N˜@ž uÊM.¿sÉká4å šÚ</ 9*pr,Bò¹Á˾Àå®Ú;!v=×CsV,F¥Aûl\%C\°BVÄ×ʳñ´Óà žo­¼·ù¶àÖL=<,VP×C tíX]Z2Ÿ¨/,zŸá.ú:NÏ)¸Þ˜\Õ0›à<}hº‘vý鳉 ?Ô^2º[™Sª¤¬†I*kîÅ#%äÙšïÙ±ÔN™þkؼe”׌¢6½fÊ óä…Ý9xêЕâ¼ó0WÃ/ò,ò/ ,ny˜M2röå|:‘Ô¾Z‘Úĺ“|Ö8¼þLs^£Ïä'Wôšsö…w8f6¡†Âü/–ÅÉgMËšÑôEPºf8FÚ®L_”óiÿQDÎ/ÕÉœgRÑ'¦ *±öÊ+™E-]S楰>¤ü¿Õ‡`l‡Ë(piàÝ äÕöÀzxÈ?»$3ð›·êi¡A“Ý-Ë/Ë<0'Añ¥x@Óm*.C޲Ìs¦9‹\þWЛ®q³F=ù‰‡jàï•° <0‘\4-­_ÙÎÓœ‚èce^šRˆ;³ï:ÎæiQlvNÎÅLÈÝ­^š¹`…ãpª:tá8Ü}i/&½2k¹M™6.ÿÃ%£qÊ\kæêÊ$ñ¦j"ÝHåTeÖrîq¯X¼7¦iV®â²fvÂgK5—¶ œ$Ëw6½SÄßÑKÀ‘héPC…Ù9Ãc13L…ÐF“ ÇùXV Äဥñ&<Ÿ.ÌŽõ{à]Ÿ ø‡®5ß'z¬îù–$Ñÿ:éOøÑW ºÅ©»ä\ŸÂôÞF™yGmÄ¡d‰}rqªÏ§Ì²¡ÖŽŸ’-,ïÀ`üHœp7Hmøveú¸|·mY:Ö¶8¹Éc‹æàeA(иð(ÓôÜ,â3A§,#kFÇé½ 6Tœ,&w&b¶Ä‘Á(T›+€ªcó`#Q•Ѝ’оSBnÉ„°Ž`º‰ôû ¼ɇ´f8×AÙ›óøâƒ¨oXuXfEtwèÙ™ÒÁhÓ=tmD™b†Š7ÈÆÆÊ’½ ª"£ðÇ7¯?!Ó†©&Á3̽ґQ{¥¯Õû6À6ŠS‰óâgŒa[˜!WwÓÒí6ÒÿÈ~˜âL‡9:‘! –.‡Eðæ ³U_ÂÆkר° »ý6§59 â@‡ÐØðϼÛã°ºh€…ìn×оa°¹C—n‹w€Bš?´[±†f(±¨yƒáCS3ƒó– ’›ò{@ã6Ü\ªz%PäLé)=«åFŽT2ùžPuÔ++ax½Ün”ë‘Éé ý颾e¦ã-³‰¶Œ‘¶Œ“öÖ4R®¡6tnÕ9‹×¢ø¡JáAg‚†vƒÁ{…B¤¦™8RZ¶pyãEµdJy:œø'|”Ûd¤­ØUœlôŽGÝ5Ò‘†t®ÆóUß­9þSÒš”XPT(|BÊVzÕÐQ›Q¸6´KC³›¿“ÚuÙqIŠ¡¤$gkÜ_Á/.Ù׬dG¡df]ÉhŤ|O|¢L&e“VÊM‹Ù¨óÓË~$Ïi)çÛ.CÝÄËü§ç¤"§UWî QåŽå «/)çáÖ¨šY i«u9“;œÐ㤣¨B’yÙ꾬ò+휱)ÿ«:h ÛRbz(íµLâxwÆ9˜Åê&x/±ç3ÞÂÿ¢ëòÔ×é:D:™Û;±º/"•óÞ¬8S2›”©©Š§VhDdß}Ù˜OvÇÅbO­‰nn€Ñ$µW½ÃÇÖër7âQ€§6¤ØIu–üKß7¥ÚLÂW°ŽÖ.ÓiW%‰¬õ¼9DSSvÒÍ ñ\YᲈÕ_F5PÍ»”²‡¬ úiSY…šÀ4Ðk$^߯W¦¦ù÷y¯eúÛnGþÓØOv¦/½\¬Û‰jR…ÚÕØW½ï š}>!»Dá…3zÇÑÀØ€‚´°“0ãÞÕJÃò/Áe’æÛTâÃCo î¥Ótmï |ô"`cÞ&œ/ƒÁRí 3“ªð¦$ÕxE¤ªÝ^d+S3PàñWòŽÂ¼˜ì·t˜Xç9¤PÌ»ZnûªÊC¬ÕI¹aõñÑb°£O1øù?£Ä`‡^ Áᡆä^uÎÐ˻Š[[×^£ïÚðt­²rò륄˜¸Ó‘šß öêØš5ƒ˜`b¹i8—(Pž[¤«Ë ýØŸ'[ôÍ V`Ý™ÝxFon¾°ý8Mõ—¯:šB«aw7hª+Sõ‡b¯džÖb Hðjâ64ÓU|jtâÃëòœù‡Åç%ÌÓ5 4/R¡©A›²‰ÐŒ‹â=HýùÈ3â§/“›š(¹áE`þA¹ùæÞ8&7ãtyꄤ¹©ó¬ Èóp³w5ÚEÿ2¥U‰ɇET^†i³B{ 5/°¢—€E¦ÿs (úA SIQ*X®§À¬=•E†Äªú.Êo\zf3jœìÈ^6B©‚PЪù~Õ-'´ÁÈeÈ1!¿q™˜Ù¨8ÆáTä‹uáAê“*g¹BSTøÙ,ÃèrÍlD›tÑåöɤL¢‹®å{Þ¦ÃvÊÈÌ2»B=®7À»B>7Ä›³O>7È÷&ø=M„¯Ù‰ÿöÆã!“Ùw§ƒ+ŸW‹8¯•ââ©Vˆ5Ïìˆ6w¨Òf Ä©›Øéù%ä\r~‹Ô±*g_ø×˜vìÎê¢Ø-ÆJ+ìNJ;)Áõ1$½­$àáMPj&s8©…-YòÈŠÉmó ôK`¾(7£ãÖ/p¶ïû?ó•Àz¹*‡Žÿ„Êçïxíú—é¼Ñ;J>Þ7J‘jážH{PÄü ÀÃqoÁöj99ÖÜÐa 6|3Hhnøf€ÐüZ©•UËJ«…îdëRª®vð¥VR»|}í`E€Ön¼¶â†Å¡o‘y­êasôýØêÈÇÆaZ°‘2—ºiL|AnL )+ÓvÃj‚?âÍS\6rüonŠÜ˜¢Ì€õüD'VlŽêúð÷ÊŒŒ¨÷€Ó¨ÌÈÆæCj–WN}ñòÊ2ÑkPÌIᔆ0æÿ1¡µ!l„ÿ­Â¸#ÀNâÈHoDU*ÌrÏxïh¹Gò¦É=S¼Ãäž;¼ƒåžŸyÊ=z-U=¿ÅfÝ·’ì{m:wÇYàïXVÔw°½ï༾‚£¿T—Iœ½¸©>Pd¿ÈÝP¸Ã¹'"xŸØÅÓOeÆben\¶_™»B!÷ƒ?ü]Ùù,ñГ߰l@Uì-g~‚Ü­Ê ;r·Á—¥v<·¬j0‚Ì»(Ò~±®È©‘ÂäÑ 3͆ãdr!¸èÄÓNœ¥Ë‹¤=ùR‹X,µà¼§îUòÔ£S¦¹yŠÔ,Ö¥óþîM@§7)MŽÔ¸¿ÃƒÝp^ƒèq›g}“ ú¿!oNá&~ùæŸ Fä9pX ˆuåné›ÊL¢ tùr#¹¦ÜxS™Ù·"à0Q‰€â| åf 0ßTï›pÄQ@$ø¤@y<ÄßTfñÝp$P@$ú2åp`i;v“#É7Xn° ÷±|Ï‘e è@èn¢Ždb …U«¤ŽõȽ?_j®LGË+&K-•bÝlK¤ÆVÜGĺg„žrÝ`8óà;ÂßöÑp˃¸3×™ïk]*FÜMÞ$ôI¨Ž÷ž|̸bw3\Œ’u1 H5z_™–¦8Rò mh¯X¼ÔæïòNVf_,ÝUVÙx2*,µbY*lÂҔ̥6üœY‘¢ÌJSœ)X¡ÇãX}½WÛ¸Xõ쳀Ϩi1éBò˜SÉc<Þ NjÅÔ9±˜îFSçÄâlráØÊ´ ‹D×]6ò ɇâδ"WªüX*ÙþwÉõã‘ËŒ_¾‘ýmj|°«ì´þbŸ©ƒÍ– Añ„o–^– Yf õÈU Ì-U\E ƒEep»¸«4PdèQæ©î{$ æ\Ï XØ^¿{Æ»üf{Àê7iÚì#zjy4?ŽÈñâ΢3½Çã‘ëQö•„ ëNúã¥?+Œägý¡+®®Úõûñ;+éÝ`v¤6ÅmS*S@¿{Z) z¾”®xHc¶áòÖ‚°Ê¶DqÝ>Ò£Z°ò¯y—¶˜Åuµ$‰e¬Ä‰EÝÐö{†ê|!‹‰“Î!=í°RB¼)=íhNš>qSS™-zx=QsÖg— g®ân•ÐÔ²÷ˆé=ŠÎ¢‡K§ ©³qgUÊÊäFã®—_zé¥3‡|¾‚åóøEzŽlêüÁÊ T¶#WuEÇ"—]‹*‰* ®©‡5 ˆ„âÄ«.‚kž¡µ%>щàËOA|À¼‰ÔÍeU\yØØV\°o4 <þO"ŒÅu ÚÍ`ÛùÅ?‚i**†ÓÁîH„°.\»s=xÔ‹kYµ•ÐirXPÕfšT¶¡7«Iû¶ *ønÄ^V8X$¹Ô†êð˜J%A¯±C¥Ñ1|$…ud›…ïD6|%ÉQc¬Ð>†Ñ2™Š"Êø'i`ðϸƒí1bûñ€Å(V·ƒ v >«üˆy¼è‡ËÞÃfâ‘å¨O€¼Ê_#ªD®´ér¨R˜¤#ù’m¹Zž#0Á¶.¼­+ÒàÍ?ì ĉë!×\Xq¬©€Ç+n‘ Uh-}Ã`Þ,n’^¯zŒ(ßå«*_7xSùúçA ÙØZZÎ@²á«<ˆ4¾d56 9RC¾º#8VKû¡ƒÍ'?½8Ï„K‚G ¢¬±Wˆ´3Ã4ܵx²×l?E‚ Ð_£En0á0š‘¢ÌÅ32ŸÂ`¼¢øj÷Å› Ç~ãÙo‚’-hnŠ‚5ùÔÎ.ÐðòÙDïù=ò• Çârê§<GÖÔ˜‡’„FÁ„§:È•t™Äá¡—`Ùüál¶6a”¶ Ã÷9 i®qï’N†wùXþÚ"?œÁ"lÊ`lé65 ÍFiÜj%ð<µp‡.Ó ‹âÂÃ\cN&qúÀ†‹ÏÃÅöx54A ­³'@¨¯VÞkAËIèSZeÏEWv*¯lN`Ž ËÒŠi¦Í®48K]f#g±æZ{J9)0ǤC§ÐŠÍ˜O¸]g»âÞŽ.™÷’[اµadD5÷‹;hcúAW:g™%àñpP(s'¨%½’¶—|VX9Œ˜[ùlÜJOÄÎÆã‰˜\oUÚpØZõa¹1ëËøÄèùƒt¬°ÌKpOÛÌBÂàg{ á˸ÌrÃ(Ö°ð]O®!¹_MñµÕ˜'âB×”Æ øEÞknºã*•ñ doã:R)ҔƛÐI¹Á œ“,âΊ @±“0( x·ûÕÌâ`Ë1ĪŸ¾°âå=¸?÷ Iô›€%´-0w6þ‘'è,ÍáåÊò”ÉË­>·‚v`üø|_óÒ±Y¾frÊ\‹€§ô:Z­ ƼBÛ@²tØÁccy ò5c2Þ›XV¸Iã+®t¬/ 'Å.uÄ•ÎÛY܉g98~õC`Ôâ•åiÈ·cn<ïZš•%59è»$OÿU' 87\ÉÉΟMŒ)0°afLý6bpÒÈ-EÛÙŒç;`T`kØ‚öRBÀ‘Û¿ (×äû¶.—åÛJ82Ã"¸·*äÅÌ—#ù¯‘[…ÄLÉ:Ř²(%¥¾p޾˜ÊLÜéRŒpªÛÝbG8 MÊʧꃢÿ—0¾¢L™žMhG $ÒVÖ3i«âÙÊv`áô \‹ÿUO Öt£4VÜaPe!<œ½ÎÜ!ú­¤çðH&'þáÌ™ízÎ$ŸŒáL+áL®&¢33ˆÐ0δ◾˜³XcN1”äG2çþíœ9R+¬zb6üLãÊeì5lÅ\ù™ï‘tî4¸äˆ@eŠ:155h¹´ìxOEWNÔ"ÉÔ PtXô×mðn«ªW YgÄÙ|~‚n¥W€éÌ æöN…ašâÞŸï¶>–B¬î Í®:SØi曉MN‡3<Ó5Dq*9ÁÚGé-1còWà±&;”Ý6¼Çbµ²%Ÿ“ƒá¶ÿ#RF/œëGÝË¿ÇE$o6:\¨¾[îÐ'F2#&“<ÖtáÁ“Õ¨<µ†Dk`þ±0h.ƒgòÌBj¬F;"ïbݾ…‘êuät;KS¡’È ¯2c±ÍXœß(R‡b×9ýõ+âP# Á$r$Dt„WÑq÷uPÞÅh:”ã8Q‚R7Âùo&€¿¥ÜmýpDÕc^ð‹XžköìiR³›IÀÆ–™Fzè &À¬~òc^<“(‚nDlGuŒÑ`åL¬KÂ#\¸M7¿cº(Ï`®S± ;ùR»è‡C¨UdpçÙ†%H¬s8Â÷“@99ä›(7ág<Êÿ?öÞ.æí}Ï´¯S©Da(KeI ­ÓB«J$Zg’VÕ´ ¨ic$‘,WÙë"ÑJI%…¢•%å&%²Eú=ç=Óz¹×½ŸÏ÷ÿzý_¯Ï{^Ï“¤…»‘C¼Ð`3Âì€iOd¥lD0öæÖe§šC͉ªý›Þò§  Ëôà -7éä0+‚sï1¥<–C=¦ ¿_ÁŒÓcÔU‡õ˜Õ¯ð£‹_ý¸,k|‰ÖQýcÌ]HæOˆ¦ú#\Þs•é¨$ ó­¯ä@ZÏg KK O‹ùm+EÀS¤Ï`KËw*ªßíœ4¸&…v 8„°“\Ò0¬ß6 f&lýï0 !¸šÑK¤ÁD‰«:ª 1—‘bH"Ð… +çBÍz#½>ˆ6PâÑâ…û8ÅC×ýŵ3 ¢@|äÒ^äÎaÂK´Ò½tÐß1“€n;ÎÆH1øÆ¡½®žAí”BËA½ `q”$TñÑ~H¨á5$ª,ˆ^¤^á‚Û¹ P±7ò 9åéÎÃxXº‚ÈÅW”Q‚Ã㞘0S`xb"à„ÖŒ-¥;)Ü®¢ô (sH¥Åõ9I¤«½7#Ø8i(©Uj諤 ¸2§ŽF2G"W‡úÞ$Œ\LIgÁôÓ­Òø-B?™ï_áNãìQïFk ¬Møî>§íûÑ+ŠVø:…Á*DŠ+Âõ•øóx ^RÚ9a3ìF› ­C}ÞÊ2‹…²Kh႟NáÎæ w-p’çìqK|u†¤·èÈ5Ðü‘EÕÂS Òã|5•-ªË–fs:F+)ßHä~BÙDã™ ø.—9òZrFK®h '¡“?\ŽNkÿi„û)Dƒ¶ •ã1TJä¦ |R>YÛ^÷†óê™^Ð>Ž07E¯1Ôòp„¹~¡ # ò+`a~bsÄ-?æû,cÎz½-ÓÞƒ”¿Ø PÑ>³Œ¥«Kc.ög-3Á‡ZC–‘7É»ŒµÒ™¹2”eäÏ4r¯4—†i1ýA6ÚɨàËIù5Rù:kå¬È—ø²Lmˆó&³»½ý9RlAó…Leãó™ )ô.ýXˆ bä¿Ý•, ówî’3êÛV¡ˆubc!!m+gRT8b.oæu ŠÇ(ˆÑÎä4³ú MÅÒ†³æ.\žnC–I)GëM¨oGá®—”e†—0ßÅK èB<Ž´e[lC»=,Öº]¸¼W÷´ÈÞ~,D””_óðà•¾@öB6ZÃo!J>"lGi¢}ª Hr£›ééªè‡2õƒB‰- FÌo-zs€ÆÏšD1d>ËRo ˆ+»xS ~ 5aꇂ :;ðJ´>§î [X{ë3­½Y”{&ZÐc® 3ƒzœQBYŠ*Ð⪙|Ó‡ÉwUô~ˆ@Ç©FYX}B‰eåÍÒÚ͈H×c%ã5;ld‹Å]’G¶Ø¡‘m'>²Åâ#›îN×f­ôf dAuÚ0úØÏq‘ܯëÝo„ª…Èת¾h.åÔG¥Þz$’ûõ¼ûMƒ:ÎÃÕS–Ñzàw ž/·ÿ¼7+B£þâÊ]N›ÊQTÑ´Ž,bûµVC†¥Jh(C©²±ðf­sdÞT~óznç'E­AoÙ•Ä<‚„xŒ†nܸ€„#‡'œÑ<”0þ.v§Jz¥£ú#¼†ëxÖirêÚõ3sË`;r›?<1G<1¶­Ÿ2¢ Ö¨`…¡üá÷ ‰¢*^ü[=¸föe誡7Èȃ–ʼn,^ôž :Rm ŠNSH M{i¦¾4Ë@½Ûf“yÖr2s™e ÄÔWbÙÌ@bÝ~Ú³2ž…¶8ŒÕXó™ÆóGKâî0¯rî!Ĺx†é¤0 ïP JíM 0kn^Ìu͉æÏ½†¶< ÌFyìj²ø°>·Ý2³\}¶žeÀÙË4àìeöÓe¸_ü1wã²ã 'oB k¥æÀ%/èÄÁT ß4ýt‡{ ã^†@ò2îÕ…¼@MÃ+}˜Çäa$¡b$Èmb Á%¼Œñì;¡—™ÄÙ1ÕE~ $6Ø $'˜ 9dFR‘ÉPÂÍ[„‘YMä§{ÿ8;®¼W¿vý Ü„M™æYŒ>´“À‹¾sŸÃÒ5aR X+$T(¢èk=E,z{l?z£Ä®_2š¾z6 ÿÑ–©:ÐB?à ÖdÒkQ˜ÐÅ,+3´)hb…ÖÕL8‡'˜umÌ·¦èµ!ˆ¾l~˜¢™µl>8¥³èÕ<ôr&ý8‹R ÎiŒ~ñé,J–.;DAÉ"’ò$˜_êžñ …Ù¬WY˘vµŒJ µŠ ƒƒ.Njϒ˜eœ“bu>µÊ5Ñwé¤~JúÄDA<±c5þúùÇR R4?þ’ùG&½•y›ÑF š¥õ=x :*ÍÉâ dA 8¯Ð£M)µJ+J÷Ó?¦°™Eo@âÇÚ*†QÈìNÐR4¾·˜æ‡´¾«ü€­ðC éàÎ?äNÊ¿;p1ß!.™è[K¼Jø!¥@…R¤Eé&ÅnÃ_žíV®`ÒÛµè×§£æÊÂ_Iÿ4žÍÕÃ/+=Ã}ûWÉójFj,J¹ ¥EOgÃ8GiGêklb»æmf)ÚŽ×'è™Ò{:N w”Ku`0ºvê¢I¨Ð«™ôWZtˆy V˜ø¡È,óWÃcC·ö|u&2¤³Ð~y5‰o+¾C¡«G„Fß­LcÛ ð/XV+›·2ïtj@WEmð²PÊ2/`Ùµ£WÛÍ ”íZUÌ»;ÑzÐo„VƈñFDFÂ(åæˆçgø´ò0Â[‰!õ,»V$tÑÞt2îJ¤O@þœ7Óôð[Uõ ñ„ŽGœÊR±ëF9èË¡ r ŽÈ£˜F€½Œ€§ÅÏI;×eÏßñ±T—.?ðÞ'tè„Z–t¼¨Ž¨>t¦‡ œ‡¥Ÿá\éܹæÏÑ h÷P´ ‹Œ2ˆMÔ%Ð9N6£U¼Äÿ çLm§4Ë.ÝE.Ê2/Ñ‚2Gi øsi;ŒAYÊe¥Í<Ì/Ê¥lTpA&?tK]¦‘¨–]L.)9Œ>åÚN!e»ôñT}>KÒ_ƒv/†>´–ÏkMë7¤\××zGïbQäЈiW8‡«ñHŒÅ›0:Ÿ%½»S¼?¥ˆ¯2õÓ­XæÒ,­RrªÐ%*0]¶/­RÙõÁ®Ë«Ë(AוRä*ñ ò:váGvW ÄXlÑIúÜ£ˆ—Ñ?½ /±ú ¶4ÆÂOÕ’ò Mˆœ{>˜µ*8&Å›BRzèZÊ´x½Uj>~Q)F…i¨”ßñ“67i0,\ÂëÃ<‰¿G¯?py‚¡õw.)<¸‘ó:¯5£—DXI9ޝ¤Z°ìŽTä¶]Í!#ß’Ncâ«ß¤üZ&÷Ð+B+ THù{58¹âéÚš§÷SŽkÑÓÏj‡§±(i$£JÎÉO’çªhüziüu ŒpA)ú¾ªôÀ?³ÈNJF»èJJ<¾ˆ_+i®À4fQ¤¡éðs-•ø©vîù”`Ý ÎÉôoÂä,÷ÛE3í¶UÄØ€«ˆY$:f ½]Ü»«ñ³®œCT̽Îxâè>ïÇ78&tV'è0NîʦJ$rhfÈÙáøÂô!&û/¨ÅK¿'Œ.y9Ù A-n%z!\ž6Ã<-ÑKœZ^ÎŽÙ(-Ê."ºQ}/~ê€sa&~’#Þ|'‹²‹”“=Êh× J¦M‰ß¢¸UúLÙÀÁ¹Sj‹”'­o—À2ßý@gáé¨àé Ý?ÍéÜ;»›9ç6?=dÚía–©pδäzsB xuoؼ²,¼ؼ‘0mÝAcš û‘wÆ›€44Oˆä±ÛÃé—l^a˜TÔp²5å^ÞI¼ó2?úH‡i]t¨Q:%ÙúýŠœËIj9PsN.“òm)×iËè´.#+]€ùµ£o¨="§§ë1)‡8Á¡ÛR®sz€–Ý!Rì9üT?JN‘s=Œy çp’V))z÷÷C9èítÎÁWîyÕC09Àk¥§¼p‡ÃÞli“NYR>Q¹BQFŒù!Ö&dÏ×Ъ i8ÇÆ©OÞ¶CÝ!XlÛe¼ï’bÐ]ÝC]yØp<¦âgµð3cxk°¥£¸GÈìRJŸq1ÆÍ ^TbÀŠÊ‹– _ rÎŽ)_/ýL¤1 …‰è‹öø‘žŽ#}'·bîiqŽ)â=O¯” ©Ãº:)çïxÊNÖoŽ#x‰q S´sÈeóFqÄ+·? »¼ÿ‡ 4éÍ=5È‘)xÅ•6éÒ"ç{t<ÿ@b]P±QÊ‘åh4^8ßb„‘ˆ…«éQ¸š9c 2“‘_|dFá*{äbÜ}ïQj¸»î®)‚¤2~XÝ–ZÄ}•³2*Lh <÷àN8%´Êh®Uw ºø‚þüQnà7ÇÚDz7x¢,1,‹€¼8fðƒ{íáE—´VFÌ4}Д5hJ㚆¦dæU¦]+z“-š…¾uä¼"Ü@=È®•m%Z›;·†ë³ÃÌðnVt!'PkœÚ`þüdVx+Mk~\À:™”-· â-ŠP ÿêfC§À@ŒpˆÁ»ôKšÀlº4+ôÇèIÃâË¡·K÷0ð¬Ìïnh›7“vâRþ TfNòb”“Gh è MTšmè›Sñ,˜- ²BE+VÒÜâ3l¥Ñûtè>G}xŸÐ`Ñãa”NÆ‚&³ð€ºLqs¯à#ÒŽNÐtâAÃØñõµz·Ttš±­Ì$Z½„¾ƒ°}ÎF'3§-¿1Žr¨ä%@bxÅ`ý,Ô40©A;Dej3NîŒÏ„ˆ tÇ9eÓŠ—…'ŽRMbÏ—¸ó½SŒù–eÏlhGßß³ˆù¸µ‹eϽÈ4/bçà5Ȥ—0Ãw±²E’dqë1 9™pJÇýV0J©ñw'8ªfcªÛv"“cçDg…dzç3ÃaÃ.–y4)Ÿ@ã`™ј Nr&¢ÜIy{ðúŠßkØÛˆ k>Ìw‹pà\Ð/%0ž4‰]4¦1†…]0јˈ,ú.&Nü0­ÑÕ ”"Þ~J £‘OˆÅyW‡ êIˆÊeL±(*·úYáÛX:Ìð3èD./º£Þ|KO¥†¦ª¡¼LPPLÑ7€t%ÐŽF%c±ÈpÖ4àXÁ$èÐï9IÒÏ@ˆ%T;˜"…ƒWQ%gæôÖJÞ·±)YÌRüE&"+aQW‹RÎßOÙÃB;)zD-»ô-«iýœ,9ºŠ £ÑV’ŠÝ!P*½#Iù’{`xÙscë56ÇæK+arDÊ_Ê¢ ÔL§V?Œ¡Fß´(é[TXvgØ¢Q¨:´)åAòšrf-’ƒ%‚nW‹%ã Zè¹Úo^Îð) ¥ c³P>¤|¼¹% ¨Üäè¾k¯ã:.râµÑgôJлÔû;  A­\ÂK³€”ß–µ×Iù×u!fó¡úGæuF3A¨ûN{>¶Œþ:ci¶öú7ˆá™ó ŒµÃwDD–Ÿ6nà²SŽIiÇ…g3Ô‘†Â݈la`è“n½Ë(ãeÑ›‘x¬4ÌçGG²^ᢈÒÄú£ü¶?jH*åóÓ˜ô&RþG­Æ^­î MZ#ÄXáí4¡8$ð;µÑËêZ”n˜ÒÙµ£­1äŠôÇ!yÆWá­¢¸_T ræx– £ oÂè’LJ·ú£‹höy ]úØ)‹;hu“ö–ò®3JùIyµ0—í§¼bvíZôW¤HÉ,—Qz5$k3ÍþªðPC܃"ŨÀÜâwÌÄ/wne…?F ¥¦<#å†rÕ6!¤ÞNŠþ cš¶dŸ…wÔvR~#•—…†ÖJÊ=t¹WúSþ¬UA…b“òs’ð¹»……†b¡R7°l¤Y‚HZ.HÊc\Dkú†ÂPÊ˜àƒ§©l~t‘{ußiÌl< ¹2Ú%Ÿ™¸±s<žI4žI]3Mˆ‚ ‘_¿ù+RŒRš„xqzÑ”í:Úf¥CaðEôÍê"Öð2ÔŽ.*fãß•! /ú’¸yí¿/C~añ0«GèBÊÏ.úO*¸ˆ«þ â@Ufý™0NtÆñ`Æ´ú÷Oi¸ˆŠ¡‚§4Hã4²ŠwØqÉóŠÑI— æÎÀ©"vh õ½ðW¤„ñøÝE…eÃêèúŸë¨ä_Õž™2å:ÔÑõ¿©£’Ÿ×‘ØÿM‰u¨þ¢Žx:¤85S1¬fÊÿ\3åÿIÍ”CÍ”ÿMÍ”ÿ¼f„"ìñšùïÖŒPçxNµˆü¹Zð-[º,(¼\é7Lö* ¹jÓÿ,A@v3ÃÛY”´^»óf/’ÂjC›I£ßðÁ?ÏJÄ7-#9{¼‹­X‘ø›”nRžë<¾—)ÍÏ¢të2qcÅX M"‘Ói܉f l{Ð$@5ŸêŒoéF¢-`´ Z½0¸ ]‡fá¥/Ø d' îîo$¾ûÉÙÚýÁþÆzéÌJtˆØ¼ˆµ ' í›òàòùF–¡süL»46ã å;é ¹¤°Yk=Ú±‡Í¸Œn9 ìb'­Å½vp6rÑ ä|^Pc(¬¸|÷–WI©Öcš×BÓTÀz/.šKØÒ‘h(C/%pzoÁ`ïU¡<†î»†”?—Ómº n@ïvãÝÆºMÜðn>û8R¹ºnê8ùx”8n×å¡<î(Ãeõœ8ÜÜ®áû‚ -÷Œ¹ì„ÊÓÊ¥9$6˜3ŒÄf qÝBb˜ó#›™¸¹Sf$•ÍÜ™…h;Ä’NdÚ5 %õ\u¯F?ÊéøZ³†ÑÚÀ¡õÝ¿¦5 ÿÈÖhm¢µl­ ZO+L@+Y‚wc1¨^¼ßØÝ딆±·´]-åEPOÆÔÞƒ9Î`×h(Ë™aeiýOëý ”åÌÊÒúãzo¨w -¯÷WCõÞÎBÇÒö «÷ôa´¾úOë=hMÿ­¯~\ï¯h­ÕÆ_¯ E¹£÷„ÌK"KÑ•ÞLsPÆWH=>4^ â΢”ò³ð€ÿ–àãø÷ÃþD0a ŸŒcÙAQ(A² ©8͈6="3­ß0Ê×SÑ;@ £í R>]úÓÇN†œ:Æ9| í”†n*=H '”‡KúgÁˆiœ—IIù¸7z¡ôéw¢·E!NÈ}xHi‚.ÓXšVÇ]£Š\£ŠX£âÐ u&tÃdH‚"ȼNCï¥Î%€…”G‘øT "„ût‡VÚ!o6ø®êZQ4:%¹ÙæÙôsó´0@_1m1ƒX<ô>]‚óB)~üí^I½äÒÖ’þ÷Œ°YDºc§À—ËA"4FQ>ͦ/†™ù¤ˆvãJnWSnš¦ë¸I¡€Œ&óƒqDu— ¶¦¿Æ7Üñ%m½Yì}hÍù¹=çu?{ŸÇr Ý(˜ €–qöá+ƒŸÛùЄ¸¾(ø¹ýÝ[E%ÝIH¹‡n@܈}€¸‘ûqÃöâFîÄq÷â÷â÷â÷âö@t€qü¿Y†.Ç…¾ÄÐlQ›b´‚÷_mDü?‰†¹~|”¿‹ÈËѪ¹šGûæQËÄÕ$*ú˜kþ…§|$pV;Úa mÿ‘¶ÔÍÕ>ðLFj 8ðø5$A×þ•vùAí«ßèœÍø"¡üÃÖ*=‡l‚œ:ã¶‹£í”ˆ(_G÷·$¸þ?n#Zæ¯ÂÝðCÿNûûQ¾ÿ¸ú¹l!A×ú—Õß9ƒñY Bñ*Ÿ£€ à #1rw’é)ÆÝ²+€Þ‹ óÂ+P…"ÈŠŽ4vâúà— Þè˜-n• ã:É8àTÙºxP‘§.Z45pÆÔ@å!—á6KCÊ µÐ©Þ¡Ê¸ó*§•”6¦–'*6`;[mþ,˜èéç‹a®~~AA.þd—j5SÂ-ByO $û¹n º‘¹ÁÉSUýÉî~Ô@²¯_ÙÇ%Èm=ÐÁù!?ÌÁÛÓu¶fàçã@ „ŒW¸„,Z„\-róó rñ Â~ì½ þÉúq3S}T. ;ópq÷¦Ì›ûÜÀëgiã¾Nn~>®ž¾ÔŸ„á&?ê'áœÜ©4o— ª©¯gÐOÃxúâalÜ\|%Ü_…áfg@uñY´ÈÐ3Пcþµð\ë j 5è§eúqœ_£‡bc»Ârõ/…¥yÓ×ÿ" Õl…znà¯Åñ 9™Qƒ©Þ¿˜ fpñûÕºAqôé´@ÏM¿V?ÀAô_¤ ÿRyº9á}ö×Âÿ%÷Œ¦ƒ†ê®D ü¥8tßѱ~® ¿ oàƒ_­Nx?ú¯ò‹O Ç?éó¶tߟ´ëKÿ*Ž Ïµþ5þ8Î? kàG÷ýåô©GÅùåvþ1}6a¾?BF×ï_É•Qaÿ’ÇF—ù¯xlTØ¿å±Qáÿ¶/ ÿ—<ùôÿ¢ß ÿÓ~?*ÜßʳÑu áõüý©¾îC }ÿ¨-‡‡ÿUÞçñ×°x`þ'᡾(¾î–4Ú?Ìçñç°xÿˆG‡ÅûÇ|:²Œf.AúÞ~n^%ý§qé45€ùWã ÆÌQýëù:¹¢—êÿ¨üŠ Þ.¿"G†…ÿ ^'ûR©îd¤$*ãê³C…œ¶Ç&O'¿@ÐSݩدö4QmžìÉÑîýhä 0*¸üÏÿÊ8‹aÅ)pÜ<y#-l¦ëýÜg‘C<}ÝýBô=ƒ‘›Ç7«zÍ"»rž¦>{îìuÅ{†ýG‰Î"#1uꀔ<{Ow*Ùm=h•n0"{ú’X:n?Z´È—‚à$0l"…Ï¡¡\ £¹T± ÙÆ@ÏLo9€ þT_7êÏû "ù ·b|úÚ4Kðt2úálµD ãvÂ_,'4ž"Þ—àÿÜT±úëu4cdßN=jÔMÿ¢® ÷¸«úùz£¶à~~îNÞT_ õ×%ÔÉÛe´¥¯§u„3PÇgÿÔçþÜ«ÀÆMz]âàddjajc‚q'#ÿ´?àÑ $7¬3â¹ äƒ L þEãFýSÿ6E#û-·Â†3Иo_ung™‹*Øw.êrêxp Æœ,—Ãß 3 ü[Ø™™a¨–WQ0K'KC°éÙ˜Ò7³4DY±Âí Š oj¡·b56Ø0†#'{}S[p²³Xnaio™ë­t325³¥¬  d!¨™ž-n´°t22³ƒè`¤P M lQâvF(;Ë`6§˜š€ÊÁ6«- †,@–´@©êƒæâdcEáä¦g«7w±_uAÄ¡´Í(+)fÃRàfebgdd®gádia†JÉ5èm¥·ÂÖToˆ(ˆ¥¹Õ Š ž8—†‘NPn=;3[”ßxõ0§á‡3e°‹·§;n|\Üüðe+?zŒ8Ð Èë]8!¡ßxúR‡‡ÞžE¦ƒÙùRCý©ÐÿÜmƒè¾ÜQIJÞÓ›JöðsƒééëñÃèCjY-tª?¦Š¤†0F†'ãìïçéË• x7æ5ô ¸œXÜg“‹7è ?ö¢P©?ŽåçﲑNý¡èÎ\ÓÔÀŸx w…Z ­Ÿ›F^²#OU›ú§0À‹a†—`Oo<úToºðŸ}P¤Ñ> Çý>œ8#}p.æjÀ‡ËôCa}†¤×g¨Ž†&EC^Ñj‚þP‚\|èF ŠÊñâŽ"?òÂåÔŸcQ|]\½9ý‰cBÏÊ 8ÏzdÓ¬0àf2ÊCÏÐŒ²÷ÃÒÂÆÎœòg3SsSÛIq$éHB¡ºpÅ$-â.Á»ó°Qw˜E¦úÑ–é™ÙP°a*Û¯ÊzÓ¡(œyÌO†¥Á´ÑÜûŸ¥=rÞ>r”ûõ?Ó‡G§6šP2„+uH™BEÄùÒ}¨¦xx ¶þ]îÿ:­ž¾I늦0¸|İ ??…¾adŽCqëî‰ÖËAß óqõóŒ‡Ôzn8(-Lžô ˆ@õ‡¹62Žª*ÙÇ“#|A¢«úÑTqy{….Þs~”ö5#]GÆÀsùSŒŸ¸¢Ó\È®.@x»ù ½†õк¨¹×SÁîëåëâK˜¨¢yG¹LËX¸7œ›G8 z pC5€ï\ o‰À ¿ê@ƒpK?Œ$w— .ACŽEÆ1ò€2…ÏL sø‡xz¬"«ki-P«¦®F^FuñUõö£û“AhCïuñu'›»x‘õpQ‰‘:ÍÏÓM ‡ëbÜQ-»ÐÐPK ð tÅ-xA8FO`ÍÓÍ“ê„æF~Wù€*Ý%Èä'ypcft¦£ŸaDü«gå?|FçϰþðùQ±‡?#ªà‡ñT+ÿìIV™å"þæ’µÐþqå> =üœpë8¶×ýðÜøGâÇ ‡Mì¸ßßxwŸŠYžÐå-ç#T ^$N¸²Ë]"Â;rÖ“ß7éG‡ß{8¾³õ‰uʘ:ÆÊï1%é^¸ö½ºAÝnéHnôæws[Bêý &ȾNöÕ^'áiÖªç|?`£ÇÑ;­<‹ïñ.ï‹»ë•+|¢7=wwÊý7 é~):ó‡wÃ\ºãSJ؃ǫ—Ü9}F­qÚ"¬Éz›uýuY—Ú+¹=9“˳Wîß{©†târÁáâ Áx>§ ¢J"çã¶øÍ‘4[¿êô—Ò%ª´¼]zƒù7>"‘ï¦Ì”¸ßÅŒ9¿qRnÿ‰Ö+©óî´½!:ÿ FÚ™.”,—"ÞR(¶a«êÁ}Þî‰G·¶k//Wo…5jŒæúîõ^~ïÍ'ò¥=‚Qöå¤YT«Ž|©—Ŭ-ñ¿=ðÄÕTõ¡Ìû-u;¨f÷¾®r¹`~Û:wQVtì™Zá=½O—ÕïmXâS~çø×žu:< ¾5úÎ7Š÷8[[àü0P•×ðùžyNfÂ¿ßØ"ödñF>«ßõˆÓ%$DŠcÉ¢7¦æ®·ÏŽñ# Ý£]Lmu¹-þ¥i]ÊFå))µY9éõ•c—d¯ŽË™­íx9ÿ¬÷¥2£àu^ö•¢ÏòxÜ=¤e|ÿå¹»¿ÉL{ÄË}(%âöG´¶ûž¥|ÄÒ6l©oý­_(iz&&|þ°@¸a©ûî1Á¸õï¿—ñ{®µwýTåAݶQÃ{Ü ~/ß`ù{ß›UꘛJT/{âá÷ôâ—/]Å; ŠóÇÞß™åÜ~ìÁƒˆ¤;GÊË4W¼{jùÖ£ðއ}ÑÉ'ü¹:Ë5.˜÷q†ó&^½«]ÎOížz¤wíôU+ö4Ú‘íR5žA+J»ë7UãÙú{CD«yŒE /ʧ̙ÆgW¬}éÚ ‘Ëv;ä¨ðnÈv<Õ__¦^S›Ë:Ü8kBfÓš¬2÷ƒÓÞ¹½:tl]8ɇ˜Á/tHGC¼3ÆC `Œ=ƵìÊ^éMÏ2UÎoÖ”Ï=¸óîn±âûÏó»o™üô‘Ƚ»u±úÏî½ýœýd½/ãá¤[²Å‘k¦]üØ’åbœ/׿ ï¿ÔS›Ÿæ(Bì?LMðÌtý\×ïåB©ñ– }&œöæ®X½-ƒ×¢,›GËešÇ©O²ÎµæÆž¦B|—.Ûp'ó±ÃƒFšÈSÝn톅6™E×6m­¹`ÜÑŸ«¦ðîòåíe—nª%eÛœ<–£Ä§Q{)‰¿þ–²}“íFÅÙ›hÙË\ʉòë×îQñ›¹°X$çÈNÑ«òOùØ]DUÄÿzêòã¢\5æ^µQUá½æíNé =å°²2YÏRp{ãuÓ²;ÛÛ»z«{þµÌ=c‘™»S•q¸F!%ÎZªl™„b£MOèn½.»úÌÙÒm¹ ësS’£|«Sä£ä2°ƒzU³Tid¬]Ò¦àíÝÿTGïÞaq‡[G•¢÷þ!“ºƒltá”KHFñÉ–ö·/jß·+1š®R/\{ø{æÚµ©F†3ª½ü<ûüƒ3½Ôµºf’g ˆøh*H½×0zzA`mÅF[ÿ×jT¯žOïgæ•©¥'*0ç§ ìúZ”:ö;Z<¬)cªf×…Åýaï‹MÚ7„Ë_Ó[<³iŸeX·a„kGœªeY…‚í#Âv™=º…âlF»âɲFÍ+b×Ò4Íz ''œJ¾Ì#„U;š¨×SX®½¾7mZBl×^’ñN;ö@‡¿O<9Ñ*¥¾I2£ºònoË«¤ªÞŽõ®Ú¼šrmuS£-W¯’—§(Cz诩tPOqÉ)¯>j›CÛ–©BUöîšµÇ2 ÏR·ËM®>5Ϲ¯hæ¹¥³ojurTR©Þ„bO+™Üx)cS«lñu}õÙÇ09ù&JAòBÌ”â}Wd³<›m²Â¿‰¦Þáüý}Û‹+e}ß·$ÖÞ_’VUÝ«±Q(x Ô¶è¼õTúò†¶pFÊ”½¹BñU™–k»œÄ½{Œné4úì/ 2rxOTÔ{Yêï]ºM/¤Á¸^c›êÎk¹Ø‰èhù¢ñÛõ6®)tXŸÒbÐØèí0ÑRUÆ)BCôªüô' ØR),å¢:#m—k&ëŽMînÙk=Oì{ºÊ÷œ*ëºŸÜø±£H 3­ïÕ¤~hf×̘×a^7Ϙø×ùɯý<{¦QK‹F-MàÚV7ÛvÛ)Ô÷æÏß_ /Ë÷HŒV›––ª\y­õKjSߢê÷6÷µ×yelës¸°©Pê…­šÑ§³”f½•X0×hæÄÀuœ“µ^Ö £M!ÖºYÔ÷V‘ÚZîVçVaG×7/“J>'¢ÈλîŸöS¯0Úh­"€·æørõqñú)–<¶%½av‘U®f“®iF®ëQLùí”xöãd™ßå1Ûçê–ßö»ºÖ7Ø„ÝkÙbº2¢×j¯jýæ{ Õ®c¶³UW&ÏOl/œTÛ˜Æÿê}ĺ³eTcßDï9i6ôv ©EBŠl•U¨:’­a§’O˜%ÐäOŸ¹ýrsQÕ»#ìÚNצ¾Å®¶ÆË-EÒßjO‰é0¶O‹¸¨sQ©Öÿ³L•§¶Q›þ¦¾5¹^ÔÇ=× Ù¼ Ö4ùt>S¨ ;Uêȼjí}J苌ØÂ eß{Ñ<«‹ˆÓ…:˪ø/laóÆÈZòXOоCz³O¬¥ËNÔýËx!›¤AaÕÃÂKŒEüMS0¾Ñ:abÈÑIÊœ'ž™#Ðåõø²§§å>äzŽ»þnTʧ1'§—L4 ”vX,£¨ö]zÓÎYóÖMc›Ì5ëg%híÜ}Cûâg‘E‹ßêˆDÇ.]±¨d1ÕŠ¸dÕØu~á‡j\}¸€!7?úнzöý½j/½êæ>!HÎÛõÜKéTBÆÔïê]Óo¬QffyzÚ”)ûÛÈ2ï•&ÏÈ 9©é’Š‘ó7åÂKgô(lT½œ=ëÀõ³Ï]8§„}ÀÿÓ‹U3WO Ü?ïq€ÂÔ¤Këà€·cƒ(ïÓC3#,ó–o• ŸìZ³åxж°¤‰ú¡7Óx7õݬ؜5»È;Î0§©WÓ¯cW¯¯wl®×šW!ˆ+Ô×/Ð|ï)¸õœ«ŽŒí´Š‹ui‡ó½ú“Ô?.»»_â™Bc{6{«êMÆ‘1µ˜d³<Œž¸ì›[“e•‚Åî|³ORÌS”ëæ7þh¡K)UŠ24œ{K/pIwf›©þ„,«õom=ˆóì–Ñí…ä¯ÜQòÙ¦ð÷E+žIo±ºQlÝ®õÌá© yMìkÚêóqÇWÍOì\ËóUÙÑâ·ÎgÎY§mò Zò7~j~SsþYã‰À?³·y5~1×£à9ŸØ¦VÍeÓºHäÖ7+}åÒãüºõÙœöºø×Û5Nw^vô|Ù]0¦¯òîo‡½÷}Ïà·ëŸ%1¾W~SÃWýòÃ_虎ŸM:°÷[eï¦-‰î–´7z»GO¨ç˜JÕ‡Þ½ìO·ú-?:¯ m´_x©Aœùí¡ÖK}ØØÄJÍ~zwò‡'Ï—/|Ü êUßEËx×Ðu/ò‚ê}Þ㮵ón§ÝÙàßV·v¼Ò]‰ïë®Mßs¨é³¢Ly™¹ŠññîWÄWEµeMÜvçáãHÛê¤h·“Ö1‹äÆÆ‰ÜM«}–±ï9ý6/í÷/¾ÇOo íÌ\.¥|NêŒßÙ©gÏÈE¾=5§sÞÉ`;úq=üåÊŸÓÞ,:ò{ß–c¿í+>ZXžûbNñ)Ý<æ­¨|ÑG·.hŸ'e»’LÏÛQYYë§Ô:™È\âÿhS ~(ñbÎö¦"F³Âå‡ë®¼žŸRŒøŸêQTÀº.ôû›s¹Röû\æv7-|ìä5õ¢fýo]3r®m· wo¾ìGˆ#Ô\y°ìIÆwóBž6¯”p[•j?ΪWíD»tªDïÆÏgô¯—l~zöT¥‡`}šßí[þ[Ïî•‘“Týš\çp­\Üôöšñú GÏ+²no\znnÚšë;år=´…k±¸ žšVsD^í{Ö½:&nßó%wâb©9Í‹ž8X&Ôè̘+ÑúòU+Ä^뮿býùÈg•îòÔ}&3Õ¦8XÚ~öÑÏtk’à‡ÊðSº÷åJ¾ùXÔ¦.PÉWd_“KNMÛ:sú8ã¾K[ÈzÄÝ =ŸÚMÒ—¬’>¸J']1o×õºOG˜j‚¥Ié7Ï´l-Žv¾Ê×?m]þX…¶Õ=‹ŸÊ˜Å¼(»Ó¼-ÂS|NÕf/“«GIbU•ëÏ*Wòº˜¥4~Hñ3ÜÕ_÷-ŠöF~áÕæÓ/ŠÏÐåË«èÊ:~,^Ta|֣ȭõZ‰¡wUz&ù&ñ|š¦MÛu€¯3'ñõª$e[gÃuÏ¢OÓÍ'^ªy{òÕÓÝß™³<Æ´%úOUhÒ½±iŽÙ µm_Ù½ ¸JÓñúRɨ»^£4€´=¬jáÚÖL«GÝ~[‹©)íãY™²] e?ëFñþ6}i‘Ò¤ŽÉz¡vûÏÕ7³nf9ÎÓÎ[ýzÝçvYVÆ÷ǽê÷ž¬í*d÷ðEÇÜëQ;wúß;üzÆù/Ö»œV¶F-R_µˆ!”pªÍwÞ$ÁÒX1Ÿ“‹r·è^.ýÆ7GÙtì2‹çÞO™›,yx{h±JÊ„Æ}äå7zBggš””úîž émPX—ü)Lk¦å¾äÔµïÞ*>ççeîQÿaç×yMN+v •-ìÈÝÔh„­/š\TûRýi|ÂJ75—/¦ðÞpàòÉË ¥„+¾9gm„eXLèW¾}B2vs~PK%éV£Äîôâ33$Çi*ŸØF§U4H69Ϭ 8x#ðæ”·Çí“åº2´ÎöU¯“¤ð¿1vc¾½Ížfø¸]ï³»uØœ/ó'&é={öþ‹¶Ó¾5µ–Ú¸vGˆlËüÛ³52N›n—¤´éð#…Á‰ÍŒù踦ou‡iÊR»·“ù£¼ ]–Þûý6«¢&ca„¦ÞÖk§]õÍfoyðæf¹ßƒ «…Ïii(ý>2,}y½gÕ˜ â!§”]Ôªˆ lûžqèù~%4 _k…§di±e.Õä7ËôbÝžîH^¡½mç7›Š›8û¼¼ÉÒ»ª«}¿^ýø¨ãd¢‡õ¤Œ¬êM·Eƒö¸\¤½åçkBü" –üFÜeÖ~!ëK>åãü7ô$t¸XpØ}ï1ñGñsÃo¾ß1qßÝÆx¡<3•ˆó[.¿(PØueBâ„| ÷ Yäwï/n4‰.Ökÿð^¸Ï“ÖΞ{¹ÖŒº˜Ê1Þ)+ݽÒKú\¿lÚN½ñJšàhéÆïÝØKZâÆû íK¾næ)±î¾³^ëQ‹yZï,ç½g|W,¦ï„p®×‚Üô^ý )Þ o<8SôEwnƒ÷”§ŽôÇÄjNßY²zZ£Úë&lÑõzëmWj]d'çôä®Ì.W¬¹´wÁå¤Ä‚ÃN|ñ‚¢΋t(ÍñÛ·j½™d©Ë„Óy4Õ%ÁõvmäO¹K.êº/1sãù&^î¤Ô+­'Ú îÍ ¸q”„}™Ÿ,”¾³E–nÚàÞ*^#’$Ôÿ›0–9=\àðùnR’aœà±» ïÖ{ò—}ÿäj¿vÕ£jœ·ÆF_/þßïÉ3ëTš%nrðx²¬úËŧ~;‹»¾ŒÍ/6pÎÚyÿÁƒcíGî$Eh6”•[>}·âN¡ÇÛ“Eö:¹üOL.h,oSyxNXÞLƒgÙG=ÞMÎO»®¦{<µS÷ÝÙeäYVå’½£ˆÆ?ÕïnÚŠõÏ4ªECöŠóL!Ê^´ã›6çÚ%íâ —Ef¨ä8ìvÌÞÀ[Vß*·¶F}VãaÖš¦Ì Ý˲^¹½›FßpìÑ'IøF§¸†N€€G f?fï•eQÏ 6Io>¯’)š'¯¹ûî΃Ïï‹myÜ•/òèéäØº»÷ÞÞ{¦¿þIöçI¾‘Ų·>^œ¶Æ/+¤E.ß8$^С­Ÿ´ÁŸÆ¯}S’ â˜@=ÜÿÙ5ÓÓÅ«¿NÖ»†’&ü,´^ìî ^†­OvÙ)i.µÎ²ŸL=Í—ú†<ʼ³aYã‡ÇºOEh ´»3Š2mš _3¾P³U-·¿ãòåw 7/•m·ÉNRSÊ9vòR­ß­zþ$Û&{eÅF+Ù´M³Ë]–¬]/Oœé§²'G¤xáUÑGøžÊ«»ð¯eŒ“W×›«á¥¢jsÕÝûoxHe¥Ã©XK½äÊëÛövµoÿ£§±êL®¥hnf„ùa†êθ…šeeRÖ6Š¡=þu.]z»ggÖÛ-Ìm“VHÉ­çcD'Gɧ¬>ˆeÈe©ö>ÊШ:вvm¿··Â==§·ÄïV:º#UæSŒÈÅ!.oÛ[N¶¿¯}qµ‰¡ôðÚêÚµ™¿¥vúyUÏöïóÔR÷Ê$Ïtèš%¥ éóÔHã}ÅZ ¯ým7öxQÕ g¾ÿtT½,©Hß%6ljÑWñhö¥©Ma‹/ti¾ëßÐnR¬wM>|UÓÌÅÝa–|®†e–ªql*öÈl'°Å uO*¶3®h6–i¦]›\Øc&œ|*a ;ù¶c5&D©W7ñíue…´ØÜ¼T¸ÖöXš·L<[çAb²ø¾¦ú«Êê ÉW-½w?ôV%¸Ö;z…µMеÍmZm*+.µŠ$£8NIÓÿáE½ƒÔ>¯S[ÚÚì«„¦ZÔjº3ÉmO}6ïTõä™E}Îg•ZÎåèÔ¾I•b¨Æ ]ð¾a¢tºÖFæå×#ågÔõstÂ>j(™äO’╚¹`¹MÑ»&ìì0j“¿sD—ú‹¶÷ß¿÷•]¹_›¸¥º*m c»FïDÂóE¶¡é§¨ZÚŒ”åSR2„…r{oHdVÅ;u­µ4êñ÷iÔ¹T&¾ã½ƒ”ÁK=Eb©·iCˆÞ¶}õÆ;UÛøO`¹×Šä££7êm¿Þ¡pAH{Šƒwc£ŒªåDQ§éòª‡–b O.¦`Ri uV¦ë®Ý¹6wžô\“-ïê±ï*;µçccòýL¢Ž|vú!õ&¯˜™]3oz…½®ó79óy­¼_‹ÑÌÙ´&–­×Ò`úïfþž:…xáýsùŒ²ãjщÊ©iÓZ¯eô5¥~yð¾zQM{ßæm^Eû/8ô]HZz:Zsë,¥¬2o'Î4š+ hâß’cíUûa“CÃmí…ªÞz‹»-m¤/Õ¹ÕÍõÑìsÉRËòØŠ"¿¥ù_.Ôcò(®5¯é- .£S>C\<ÆÃ2E?Â6ƒÇ.¬·Ä̵*2RóڤŞuÙâ§~û]&ùñs[Lþ›¥ºC½«ëþÛa6 ¦-–c­z#Vn®WÝëZ­pO•½}Ìüä“ ÛùÓk×E¼eL-;ëm’èK·I›³HJ£]QH CPÉvƒ¤U%ùTXkB‘ɉã‰ò´ËÛgNWUÔÜYË>RÒ×äÚØÖ¥(]ÔrYìTí·iÛ::‰"ük•.zVÉ|Öo3Ò^Ó²é1Õ+÷Z„CÏ¡…ŸL4ƒ „2Ï‘JíÞ®S=/I©ßS ”mXÈ}Ï—hT¼Z@(ý1UY'/{Ë>KÙñ1Ö¤;Ú bûbˆÚuµÿâ.Ød#|XUXÄÑx‰Â´cþZoO:2q¢óeù9"gÆ¿v9(wúiÙ8ÏÜR Þ]ó)¥_òü´“f‰2‹¤¥¿«)ÊìÜ4vS«¹¦¹Q³V¬zí»w.ù|QÇðÍ⥱Ñ"‹K­XB´¢j¬»já¡p¿¯jÌ—Ë ¨Û_‰VÛ{?{n×Ëy’„'J^ÏwMÍH85½Kýû4Õ57]Íͦ¤MßLnÛ?e²Ò{™™¡93T.5MRþæl4c©ðFÕ =³²ƒ¯ÎþpýÀœ…GÏú`—l\õâSàÄÕ™çíIšªlm©4ömýþAJóqèÖåy–áb‚²[j\'‡m :ª?1ioÚÍÍ7û¼‹fgùDÆùiö6ùöîêðÊõÞòjÍzõDÏ÷š \Ïmtó‘ÑqQ9Msî(µ¦ž¬¿çî~ùÚžKÍžl“ú*²©Ì‘±Ëm&Y,K¤‡Y6¹}³Pª2sÈßmžòä„Qùcþîs]‹†QJ¥z·æê’Vê›¶Í4`í˜`ûv½•Ý<¢‡=½héÊüB6ŸKv¬Xô{¡ÕégÖÅ÷žiµ¯!Û<]M{»êxÜùµ‰ó•¿ò¬ó£88ãÓ²@~[ó§ùÏÎ×¼ù#ðDcÛâlÇß½žxÌmÝ$Æ×5m™æ›V2éÕÑÃ+_;÷¸´ÏyÖÚñ:¾®ó´Æö—žŽ—ûÆt»s·òû>ïÃývü½ã%f}mØ$ÿåp¹þgÇLú{¬Ãä]ckwô’ioì%{„ôö|¨R9ö‰½·÷£eÿ­ÆÐµÎ —Ú?üÆ´ô­¦Šžf§²ž|˜|÷ñÂåÏë½Ddкîu5äÝW½Yëzœ÷NÚíyumþî*_{mÝw‰òC{¦W<œQ)§kZf¿²úêÞÅ_K뢎–H¶ï­2?—~3áZêõ›+nˆH¾­6ºëcPSR7þ6ñ¢jâ¹dÝ]>ßBv«èÏNê˜1.ùäÒCûÜmOïòòÝžæm×R‹*?Ž8[sHsLòo½aGRrý”ö‡ð9¨^¸ìÀû;álæµËvе¬K¨aynßöÛ+–þ§GL^Ó¨ø Å\Æ÷ø¨UâW¶MÌj‹|üðNtRµmŒõI·¸±r‹bïˆe<«MK'_Ú÷;÷öéã¾_2;C·œS–Z~ÖïŒÔ™³SO½”;9¯sÎqº]ð‰|½´ÏÊåG¼?¶¥ï÷£Åû~Ë-¬Íá÷"O÷Tq~Ô-æ…[D³IçµÏ›’\³XT»Âú)ë/ɘ8Ø|俘xH½¨i{Îe…fƇu‹Sæ¿Fü_PäAý]è:K*÷Ü›×}ö ›ºçNõrzü[½æÅk93ºÂ-·û]nv¯'Ä–=¸RðnCÓæ§!óV¹I¬´gŸÚ~B­·W"UZÿÌçO7—\÷¨[_Yß­òùˆÉ¾Ôr‡)j3Ÿ¶·Üjê÷±òƒ`Ò}ÝSá>ßJä¤ÖZ°óUR“å®MŸ¹5íRŸñ8¢y‹DOÂît“öO¥W-QL×Y¥>aWóȧ:éàš gn¦“Š· ´ð_uŽ^—æ·Mal~OFÁj3™§‹ï”½ˆñŒØÖ¼¹jŽøÕ¯*1ÒÑÀóë+]x+• ÒÌ ýR>|«ëßõ†f±òáByñ‹ÓÍóøtgÏêªP?ù(k¼–GýV•»¡‰I¾“z´§}âaØEKœ£¯œ´êuŽ¡³­ègõ‰æéOO¾­¹ô}÷ÓWF³ ˜¶Çz¼šîOÜØmRxÃlNÓ£/ÛÔÜ(/ì¼tÒÕ1*¿”j¬¶кva•c‹U¦…m¿îÇö”©™¬ø@Ù…]²¼QºŸ‹–NÿmrÇ$¥ýv¡z¬æúsó³n¾^§m÷üÎ:c«ˆ¬þWãî»jOö~g$t}nÇ ÿ;£f¼>|o—õ—óQ­+­R_t*Aˆ1ižo›Xl©`>—u[Žó}‹-kª<çÜ‹es§¿ß~X29E¥8”¼¯qBhÏå%&™³ïöJ6èÑN|J^§`9S+lmjò¾çŠoß™{ãûPáüÂõÎN§¦¼Î2¡+6åv,\5ÖM.ŠªþRÍme”_\l8Ì+pùäå+„Ò†³9¾2‚B6,œ¸­ÜŸ¿9V’TÙ´[¢ñÖÌ3Åéšã$¶Vl¨ Ñ7$j2¿ß ¼qÐþøÛ)]rÉÆ}gµ2(’몃Íßðß~Ët{l8íþY¯ýËœ0k½¤‰óm¦ØyàÁ•ì/"”#;Æu‹»1óX|к8zºÆ£äÝûÌžýÝjšíÅý‡Û›¾íX»Qj~‹lH†ÆìÛ’ÛMOóè´Q ‘ä?šƒ×8~cÚ±ºï­ÝÒï(þÉ÷–ºV°nÿ±0£æÁV=Mß«ÓÖn ff—ß|ó`õ„~-GÎ ¿—žØº<=,rL•gýéñ ËŽ8"*´e|ߦ$³ÿ9LÿEv*XûÆÒdO-}¸±l–_Ó¬=uM…x#»Ï´í=&fºYþüì‰w—š|õ]­ÚñèãUkÄ“ÕY“‚Doo¢]tÙÓÄÇÿV“ÄЭ#‚˜&„ñcÂ&‚ñb¢&†1qŒ€‘þâÝ >6–@Ã'‰Éó$$ùø°q|^>=lAW‚“ã#¥ù&c |²Ÿ6ž (ˉéò¡øDˆ ñÇ¡ør’|(>¿ Ÿ Šï,ÁÇ‹âóHó©£øjR|b(¾¨,_)ß{´À¤1)I`öPÃ0¡LB@ÌÎd°§qî©Ü  öfðçó*9°ïÂÆhƒ9@쵘¤€$˜×Ì{`H@0ÀìÝŸ̶ҘŒà_ÌAóÁÿ:ij;€ØÓ£ðц`o‡ø(=G°§`Ò6`Þ°ì Pž±`ö˜öÀ¢;ÌÀþâó€y€ä òW3¨u‚sÁ¿ò³+À°LˆÐ{+ć tö=¿˜7,û=È ˜7Ì{`TŸÛ–½âC#®Åt¡(cæ9@ü«!è=‚4€i`?Õw,€Ø_A|!0¯˜öC¿˜#–‚ý1ä/f_€Ù`/,°Àì߸ío ågpÛ#€:ø—qÛß`2Ø&Dèý·ýWŒûnnû‡hý.·ý=”Á~0¢— ` öwÜö·Á$‰NûÓ€ÿMnûS¦‚ýwÀ¨¾b(`ÉmÿµÀ~€ÛþáKÀþÛþ>ª`¿¥ÓvAs°÷rÛÅå¿Êmÿ@h¡ nû£:w¡“€Qx´³P·ý×@= %sÛ3ÔƒÐnû{@¹„ò£ôXËÁþ‘Ûþöc‡µÀBð¿Ím€é`ÏŒò‹0ûnû;@» æ¶ÿV°7qÛß`Ø‹£ô,Áþýoø¿tÿÁFòË(þOÅÿwFñÿyl$ÿ¿ýþ¿1Šÿ3°‘üß1Šÿ÷âÿÆQüÉÿ_þ†ÿ¯âÿØHþ>Šÿ÷Žâÿû£ø?Éÿþ†ÿoâÿ³ØHþ=ŠÿÅÿOFñÿel$ÿ÷ý ÿ_Åÿǰ‘üÿÇ(þOÅÿu£ø?Éÿïÿ†ÿ«Fñÿil$ÿwŽâÿƒ£øÿÑ(þ/ÄFòÿ׿áÿÊQü Éÿ/Fñÿ¾Qü_?Šÿó±‘üÿéoø¿fÿŸÃFò×(þOÅÿOGñÿl$ÿ÷cÿÓ_þ§¿üOùŸþò?ýåúËÿô—ÿé/ÿÿÓ_8?I\‘ÂÆÀO~2ð“…ßXøÉÁoüÆÃO~ ð›?]ø@Çá}‡×Ä •qØdLÓÃ\°H¬#" "‡ÀKà'D 9™ FÐ%8ãúϨŸ$÷'Åýáþ¤¹?îO3Å®B|NÞü» ä/ º—è[’c,P: SÄT°y˜6f€Ù`nX ÆÀŽA¼?0"«€ˆ<¼¼||üðÀ#È}„¸ð¨GdÔ#ú7Øß<âÿáCúhI)©1c¤á‘G–ûŒå>r£žq£žñóÈÿÍ£ð>þÃo>~Ôâ¨uÚl n%¸$÷‘â>c¸ô¨GfÔ#;ê;ê]¿Wßÿåú‡A“x‰¸‡¸œç&iQ"€š×ŒÇ9¤Ìkø°‰I!€qè' 0€` >'â~DR‚8“opþ# 9ï0¨˜pÀà€À!G€Ç‹ж| Dè”L8 à ð @ `7À €»s.¼Ø° à&ÀL€ß6¼pÀà!À"€K›zøbŒ*¦œ ´È$¬x  ð@`'€Àm€Ù™¾o&Xа  à; @ `2À€I€Dk€;êç6¼Åe¦ Æ0¸  à Ð0`?Àj€F-€‹a_ð^#ˆÅP®L8@x °Àà>À€\:À16€9À-U€³>¯&ü°à À€Ëá}c cBXà$À6€m×®<ð<ÀÙ€³üð{À"€E³³/¼pà*À*€UŸ|°`/À€;Ë–|ðAÀk¯üð#ÀÚ€µ.¼ðfÀ_ŒFMÀq€ã6\ ¸ðtÀÓŸ| °`À/¿<ðXÀûïlØp=àzÀ /œ8pàÀŸLLœ8°%`KÀ5€kÏ<ð9Àçûöܸ ð$À“§NìØ ðSÀOëÖ|ðÀ[oܸŸ€®†-B#8HX¨øã£ºf0`=€À*M€P^C%wi[€ùA<Àà*€"À17€?`ô•Jˆ_˜O„W”GŒ(Nø«Õš??„Q@<£€wð‚ŸåA…ãÇ87î¢é˜0.G1%HŸÂ0ô¡F˜ìÄ ^1¨; êƒ:à®1¨_ CÊÌò°mi%Íÿ ¼£Ë7º<üÃh „¹ ÂQ.ˆqá¯ÊÏÏMK”[^9n9Õ¸åsæ–«„yÛ¿Ià¿ô d‹ê ª™ÿdü_ ÿŸñÿØ{¸ªª´|. %Þ“¼€ì ` ¢ ÞPÈKâ¹ÈAEÅ$Ñ´ÔÔ´DÛwÕö=´}¸¶ïKûÅ>z´oÒ@¸ø»Ý¾8š,vñS–RYúKÙ,½ÏÒ£,½Í¢â" wñ+,½ÌÒq–ö³ôK;Yú’¥&–:ý.®e©?Kü%áÅ£Y*e)ƒ%þðâ%,Íc©Ž%þÖóâ§YšÈR2Õ°‹üÙéű,ñwÌ÷di KÓYê­•™¥®,³Ô‰%+K>,mbé»›$íaéK–~ÁÒßXú5K³ôXú=KYz¥Ï¹,o°t’¥WYºÌgÊÒ!>¶—¥0¾§O²4œ¥,MbiK¼&ÂÅJ–øÛ‹—±ôK¹,ýœ¥9,ýž¥i,ñ|¡‹ãYjO•úb„éD[WÚzÓ6±——ÇûfüN.½Kø¿~îgãUl*öJÁ‰¹U¹–²òŠ–ùËróJEz‰h%=F'Z¦å•X&”/.µ,Í«²——ò‰pãD*¯ ™_¿l‘qª¯^˜]º´¬<;g)Ÿ2NÇ4Ÿ–Y o>VFÈÓÓäW§Íò´vfAvYžq.Þ鯗S‰N§Êš¯7NžYnYVdNQWÐm[hœ™¤ž©Ê+3ŽOk>^±,¿\[A5{¹q2Ã8™“]P`)È/+磳š–e/å#sŽPyrŠ–•çUjèùƹܢG²—•g—–fWññ\ãøÂ¢ÒB>°Ø8À߸)[· ŒC…‹ø(*V•é‡ÊCËò™ñP¾–²ÒáX±v¬ÚéØBÇ‚ZMçõ¬QΚÁ‡Ö«‡š?“G'66Ÿ(Ë^˜WVUÆ«™ó‰&ç…Úè|j«<¥YxQiÑ#||»<¾Ü2tAQQÝåp4¹E[U—Ïìu8SXTZž­¥Øïp¼XIñ‚Óíëtü%‡ãJŠWÔ3¼TpÑÂ…|üUõ8ÕÔüåy¹–…¥EšU_SO7äuçƒCùè[êQãF¼«¤.U{O=£—“)G»ÄûêY"ŠN‹œŽ.ÓŽþÑé¨N—]ŽjVþØép)×1-Á§Ng*´£Ÿ©G+Š•fçjüÜáxùB3Weͧ¿p9´Ò_6C–çó‘+òHYy)yÀü…Z]ûÖœh±Xô•téïëü·a «ý!¹Fû3¯0§XKº-×Ðñ7ê^ÿYL—*ר°Uû“Gô3.yÚOxøÉÈóÿø ¯âc“ö=Éþ«ù@qÅá¯ÞÂßÈæc/*©{B«·ë£Žz—ø•w™¨÷sû¥§ýÜ|¶iŸß8ñ/?oñÄx!¼´ÏÎ|ïå”ùÛÞÞâò$:­¥OzËÏj}â-¼ÔïGý§·ò%ª×(ÝïfoñÊÚí˦}e£Y묷þ°¿ÐÅÏ-£s¿¬¢ƒú‘³w|ôo$ˆ÷|Œ»ð‘ò¥·¿ûäˆK>e¢Ñ×õ†ð5nÈa_þÀÚWíljÇü½Å®j*›íŒOþ2qÞÇG|·Š»Ç?làýÏ›x¿õ)“q/Öù:åû3_ñïÝ|^ÿ Õs¾ò+k/øûˆös/¿ÈûÿA8]ÛÓ¾º¶Ÿûiëóì þ³ƒøÍÚ˰û?|56üÄOt„â¿mçªÙßÛ‘ÖíŒÒØ>W<ÑŸÄúy{¾}âõö¬ñµöNæ|Ë_ÿÎ ÿqâÏþú]ø¨ß…v>â½7¹ÄÏŸàýšS\*§Ë®k¯ÝWÚûˆ¿üQoñÀ‘—´ÆOÛƒÚ/ÓmØsž!×ÿÎû?ÿ‹€Þ†Q?jßüÏóíõO€þò|í*CŸ¼Îû+«¼hÿûÞÐÈû—·ò~#‚á¾oóãÏ/ü„îá?ŸásO½Àûã¯óþ»w¼ û½åg|îvAß8ëejþjlØð™r`5¸þg°í g€OáÕûËoÜm#ÈËß+'ŸUN>M'[yfèÇõÞÑ>Pù ñ>ÝÍOðñgŸáýÆ—xÿâ/¼M:%¾ñoÎî²’Ý>ÊnÝI†nú-ï_8Ãû¿þ…÷—ÿÁ{û¿yÿØÜywïoìåýÏ_àýŽ£¼?ö+ÞüÔGêùkÊxýç>¦ÃÅw~Έ—xhU¿gW:.ð™@qôs%i}Gñ¯¯µ¤M$Z¿¡DÇð—.vÔ•y<`Zi~ažØ@NBì ˜Wž¢-ú/öÌ? Èäx¾óúc¯¢/þ ‘þ‹^g_¬›…7²ˆë9Ub}UÊo¸˜[®ñþmÿúS¾¦¡âotîŸÛyáïvðþù¾¤×±cyåãäù ÂkµFü6@|J©Îìd¼]Û¿ð4ï¿Ðö¿z†sjßXÄ Ö?ˇ¿zŽ÷»öóÞúSÞ_yÑ—Iõ‰âŸù2Å©¦çŠW‡ŠŸŠ×éÞmúÃ~ªí?ù;ϸžA·èjà4ñD'?í„4XÓŸwÒïáë´[òv'ñß„n_c'E—³|ÄãŸs1µ›½¿“^ïÑáŸÎW»¬í_¾ÈûMÿäýÉËÐêT'‹øÏ^Ñ ÷ïÿ­íß«kç¥YÁÞ‰,ޝˆÁtÛw·£ó?y¥i¹âÙÎúóó…θ…€g^eàÙ7H­&ñAgþЄþ¼íÁú·ô¿ö rѤæÚ ruUbcþù‹þ1Œ-Aš·Â_Ûƒ² ò-{‚ÈUü†¯qå3Þ_úÞ¿òoÞÛnÒU}8x;(Y w.åˆÿ âØ‡âþ`áõÑç‚Æj-żñZDõWÊöOkxZ×ßµýeÚ /-J²ëáÑZÒî±z>¹SÛøïwá½õYµ>Ïû·Þá)>… a|záE¾@òBaÏn ™Ê£©ƒi×ÔYˆÑw Ñ2ï+ôyQ,O1I™ñÅABLžå%$¯AþFÚçºÈ´†Ìiïê#D)Ò²làçyK¼!3¾¤Ÿ6àYn ÿ»(!þ<Ë>[Ág+ø˜AB„Þ£ãY6ð% ¾DÁï‹bð,·Vû0º§À³Ü>ë!~<Ë­á9’ˆÞUdzܚ¾=F 1 x–[ËE’Ë€g¹5ü‡ã„xx–[ÃHâ·À³Ü~kš7g¹5ü¿§]Ãt<Ë­á§M§û<Ë­á_Τº<Ë­áf ñ.ð,·†_2Wˆïg¹5ü{!¢»éx–[Ã÷Ëb>ð,·†_³ø <Ë­áÿ’/ÄIàYn ŸÈ_bí®ãYn ¿§˜ôžåÖð×˨>Ïrkø9ñ8ð,·†m…¯Ïrkø»W ñ?À³Ü¾¼Nˆ>=t<Ë­áOŽ9x– üM“Ä2ã?X+D%ð,·–ÿà äßg¹5üÆFªïÀ³làÛyI¼!3~Ë&!¾žeOU§oÈŒÿ'a¼{êø*ør¥<åJy,O <ËI=]Ÿe±Êµb•km%¼iY6ð«üjÏV!Š€gÙÀî ñ†Ìøä=Bü x– üaE—Ê.ßíâð,ø—ý%Þÿ‹Bté¥ãY6ðw+Ü0dÆ¿ñ’aÀ³là'ùJ¼!3¾Ãñð,øR‰7dÆWÿ\ˆ™À³làw(úîPô ý…›€g¹5üËG…xx– üS ÷žR¸—ü–_Ïrkøß"ò^ϲÿoEßÿVôýå¯H_àY6ðRî¿!3~óIòÕÀ³làƒÛI¼!3þÙß ñð,ø% ~‰‚øùjàY6ð÷¶—xCfü€st€gÙÀÏUðsüºÏèþ„ëx– üzå~®Wîgç¿“ïžåÖìûÂ?(=ð,ø_*úþRÑ7ç²gÙÀwRìÕI±WÉU!ÎÏrkøÚkôìžåÒ· ˆpõ3”|d>¾&ñ@„žË~¥rV*÷¡£¿IŒžeDÁQðï˜Dð,·†¯ 2‰g¹5üˆ“8<Ë>Gñ{9ŠßÛÑË${ëx– |ÅÏôWü̱>&‘<˾@¹Ÿ,¦•+ñœŽÉ5é÷_m+U÷–òÚÞz[é9¥­4(Æ$þ‚k±Ü\GÝïUtŸ4Ì$þ <Ëþu!ñ†Ìx¿á&qx– |ßEÁw#L§>:¾[+xwúFô‘rT]ßýо)ÏÕÈ ’°’°RžÂl>AÁ/Ul·T±Ý q&±x– ü “Ä2ã—2‰À³ÜÚý±æ5à­-àOöѹaýÄ37þ¨Ü«Op¯lʽÚJùì‹x@¹ÖMåZ7•²m‰7‰IÀ³làG+øÑ þÂÌþÿÏNÏr~_èB]ä·H^ 9ÑîYǦ¾RÞÙW×ñEÇ×ÓLâk”e£ ?SÊü3¥ÌK'™„O¤ŽgÙÀç*ø\ÿ;Âtþw ~¦‚Ÿ©àûM6‰^À³là£|´‚Ï$L ð™ þ~¿‚¯%Ìàk|”‚Rð/&øü8?NÁA˜là¿Pð)ü7dÆÿŠ,± x–›9£àG+xßt“¨žeÿ/¥<ÿRÊóa6ÿUzëúö˜n;gÙÀWÊs\)Ïù&ñàY6ð÷*ø{¼È4‰ÃÀ³là¯(å¹¢”ç a~ü¿°‡Ä³üÇHÔ…ö^âSÈV’ÿ™×;ñTG¾”²o?×:2§”lÚO/ËF+e6dwùö“r%ò? äß¹Ì$Î –ü»+ù2ãï'ÌgÀ߯à_Uð¯*øOó?À¢àc¼!»+ÿ5¥üÞ÷éåI)§r“°Ü§çϲ‘%ÿþJyF¦ø ~”‚¥àKS |‰‚OPð þeÂlþe^ÁŸWð›*ˆóÀ³làÿ¤àÿ¤àó–›ÄóÀ³là…÷ %îÍ«$ÎøÊÖ}æI¼ üIߤÔ)Cfüì&ñ{àY6ð§•òœVÊsIœžeŸ¢”'E)O)aþøR£”'F)ϳ+M·?Ú)+%¾ŸRž~JyÞ³Ò3x– ü¯%Þµçìã&Ñx– |¥<]”òð{F÷ϲWâ|Cf<¿ßdžeÿ7¥üSÊÏïLžeŸ­”'[)Ï}ÛMâ!àY6ðƒ•üYÎ!L8^ÙZNr?jë'Fxöcõ—ò¶þz==¨ÔÓÌ&q×eÙ¸®Ë²»üíJþ¢\óŸýŒI,ŠŸ‘ù[”öËË£¤^ QðÏA^b+äD’÷B¶’ü"ä·‚<ëþ_QR~e{E)Ûk6“»_/ËFÙ®+œ7dÆ¿ú¼Iôžeÿÿ_û“ˆže_¢p¬DáØ—/šÄ(àY6ðžb˽Dže¿V±ÝZ%/ÿ“HžeLÉÿ˜’ìR, <Ëþ5¥ü¯)å¿ô_&Q<Ë~¬ÂyCf|Ì“X <ËþªRþ«Jù#ß4‰MÀ³là‡(í2–w&Ü[·ûóŠüêýàUˆ—x2¿;øq<ÌKü2¿OøwÈ{I¾bïF|€ã$@æ÷ »±LmÜÏ©>FA¾N²rPoÏ\M åi\¹úÐÛ&ñÓºî,º{j£-"Ì¿HÁwPð| aN_¢à»)øn žß©= üc ¾³‚ï¬àùýÛ³ÀïTðw)x–ÿB˜pý>¨÷Š]C/ÈtÛD'“>Žydî7~2÷ñŽ…Ì}¶3 sÿçÈÜ—™û[Š sû½ÎÀS[u3dŽcŸÌÏ÷— ™žÅG!ósí×ù™ò!d~^ü 2? ¾†Ì>„×êêÿÐ 2×ý0È\¯ûBæ:8œeôo$Aæöì$C¦6à,ÈÜ\hà©=XfÈ×x’!s<¼ÓÉ¯Ú <ɇ <ɯù“üž§zô'CògÆqª;ÿ‚Ìuê{È\§x¹ÁN¨S¡¹N…Ç©Nñ3¯ù€›=¼D<Çó.eÔµù¹®AæºVKrg“>&òdî32÷O~™û¸¢¼u™ûQ-y|êqÈ<¶u2+ý2÷‹Føè2÷afBæþÛõyÜê¹ßõïyü¨›¯.óXOd'ª…Ìc.?…ÌãSBæ±<^2‘eŒƒÌcv¥¹ô)ÈÜþkÈÜgÈ/@³Ìã‰y¼¾ 2e¿ ™Çåÿ2Aßã§Ë<žž ™Çâ·Bæqí÷!s?¿¿.óÇÈÜOX ™ÇqöCæ1÷óþ-²e]æ~Ë1yܹ2±¾™ÇÏ@æ±c^âe ™ûó!óxënÈ<¾p2÷Iúè2‘ECæ>ÿlÈ®A¨³“M¢dî«™ûaâ sŸÒxÈÜŸ–™ûâ@æ~¡ÈÜg²2÷/m…Ì}_ÏCæ~­×‚tw‘Ž¿10äðÏBæøüsÈܧq2Ç×Y¦:Éëg´ Öós¼3dŽîÌñFdŽUFó³ÜÄ¡«HUäyŠ\¬È«ùiE> Èo+ò‡Š|I‘M]¤ÜE‘û)²Y‘§*²E‘—*r"?¡È{ùEE~M‘+òù¼"§È~wI9D‘û)²Y‘')r–"(r­"7)òsŠüª"ÿJ‘?Tä)òuEî"å0E¨Ècyº"g+r±"[ù E~V‘ÿS‘£ÈWä+²w¨&síŠÜE‘»)roE ÈÃy”"OSäÙŠlQäRE^¡ÉZÈ«Å>ìÛƒh ¦­ mwÑB[(mwÓÆ‹ût¥-Œ¶n´u§­m=iëå­Oq»'‚¶Þ´õ¡­/m‘Þz{å>ÚúÓÆ1Ïý´  m mƒhL/ã­·§†Ò6Œ¶á´ÅÒ6‚¶h3ÓGÛHÚFÑO[m£i{ãFÚ’hCÛXÚÆÑ–LÛxÚ&ЖB/B5‘¶4Ú&Ñ6™¶)´M¥mšÞnKÄfuÞîÜ'yŸÂ…ÅR¸Ø² bYnAže±>×2/ÌU–Y*ʲå Ë„¼rmÚê íõaáIÀ˜ n™VTV®þ›7=o!þ³Ë89oÜ‚WŒIÛÁï»8ü]Qœ›]ž÷Hþ²Ü¢G„¥ hÙ¢¼²rKavyÎbaѧÝò Z)æX (^(°”¨i3‚å9m¯°—ðKM¤n± Ýó r-å<ŸÖR–“½Ìé"·0ß×RXeYaLÜUÞ×±•ÒÝr¾úµxÞŒ„»OO6ÓÿW˯¤YV`Ñï£>iÍ5¾_!ø_ͣЗhäiv+yðª‚Aúÿy°>©zÎ÷Ñ9à´ß‹ÿ=è’›]žÝÒý~_ð{°úÿnóúûÃf‹eRê”´äq©†-½Âi7ÿÏŽAÙMJ:^J°«w·Cïߟs¶`Jìè¯ì4®ÓUxõþ’L—!¼&‡1ïCGÚ¦!óú&–†5ÎCÙ6ñSÚ7Ê¿¹saªë#DFÝ‹Ô÷[½„_±—ß«þÀツð%Ö±BÔÄ ^M÷ôL¦ ˜ôê½÷ÏÊêAƒSL{êªWt¯œi¥k÷ò ©N«wG[…)q·n‹Qz^az^û.“|‰ó¨žÝ%„tõ¡2|¬_oÇU`NÉ2ì8cGâ-Â+áA²Aò*G-xî‹Q'Ÿ»R›ûQe퉯ÈO_ãòUçv¯ä²Ñýö¯®î^E÷` u®ðËHl7Z+ÓBè÷ÈÎkòû'ÚEâ*‘‹ë•àz©J²p,–Ë ]“Ê`³_T¿«²úá»øúUŽ×º®_½Kº&ÝgÓ¬Ú¾2òƒý÷^иÉ÷uÍ~?JsF^sûE`ŽÕî×ô‰«^Ù|ößk‹“ʳ†8mÛD|¬ˆ^­]¯aÀÿ½u|žï—éq.Ï1§SLÏ„qÚ¤7Ä+Àä“T]Ùœ.ÇÕ¾«¥ñ~št®ê^I× 7ì3êÙýGåïïZûÕ·ÿ¢² ѵÙvóÈvÏîyqÿpäiÒó|æ¬^Î=‡´zF÷·)[˜kûý¦²Öû®sæÚŸP~ï}U¹òâ/+k—|DØ6ÎãAÂ?ø¦0¥˜ž:$ôßýw;éÿ¼Ùl;¼8ý·AÿÝ…N8ÒÿõrÂAÿmÐw²®ÉlûY×à’ëé„{Ýl{á:áò€ë©ãv]u¼ïÏi¶es]MÐq[áÿvrÄý$Ül›×Ÿp¡À¡þï²9á2̶‡‡¿.g®Æ ·Æl›•H¸ãÀÕ—é„{ÅlË${<µ8Ôÿ]ƒœpÄïé³WÜ à|q/˜mSs 78_÷ô9'ÙmR1á"uÜç€;ì„£úœZM|ºÜaàpûͶñÄÝ'Ïÿ÷tžŽø7–bƒ'‡çßÓ Ž¸Ä¿ÅÄ¿'ëÿŸuäÁfÛsk—\¨ŽÛyÉ 7×l;ÿ)ábuÜ–KÀwÂm4Û¶¾Äõ¸ãÀív½e¶}}ëpxþï¬pÒã ³-q/×à*€›ìˆû)ñ/á%®?ÀM.Ò Güù×àÿì¸áX¾Ÿ’ÿNáú£ã6ßêÑÎJ®?Àî Óu?7Ûx—ëp«wĽb¶ ÿ€ëpðÿ;œüÿ‹‰fÛ¹þÿ¿ÃÉÿ¿Xl¶ þœëpðÿ;p{ͶW¸þÿ·ý‚î}³-J«?:® þoûQ'='ò>ãúüßömޏ—úšmý¸þÿ·ÝÉÿ½DvÛõ×ààÿ¶;ù¿—Èol÷áúüßv'ÿ÷Ò«fÛ'å\€ƒÿ{ꪎì¶9ƒëŽÛÿ÷Ô)GÜAâßç¯qýþï)'ÿwpšÙÖ§+×ààÿžrò×›má}¹þÿ÷”“ÿ;Hõ¨g ×ààÿžrò¿5ÛºÅsýþï)'ÿ÷òp³íÆÁÿm‚ÿ{ÒÉÿ½L¼ Iáú£ã‡ÿ{ÒÉÿ½ü’Ùö¨™ëpðO:ù¿—é>—úqýþïI'ÿ÷³þfÛ²p®?ÀÁÿ=éäÿ~6Ël Îàúüß“¡N8ºÏæsýI15]ï-ÅàC(Æ Š¯¥¸7çgdÓ&“žGã5=m§{QzâxS’Œ‰Qÿ·䘘0Þĉ$œ;‚s›é¾N¶ê×âö`ÎïÀù7¢þo£ò=·ú9£}ÕþoK¦¼L|-+«]Íñé¦``R‰ ´=•´CpÜŸŽÛª«.Æq´¶RûçñAŠNˆ·žeýÌÂÊe¯ó iêIqµ'AmKn[O±Šp£½ùf¶ý ¥½¹·z—Þ¦N1m<„ü(¿ã²\¡ÿÖ:èÒæ|ÛhsnDûgk*á’g¾4Rk«‰.!µ{?ŸV{”Úv»…‰îk_ä›|˜l‹ìÛžfÿÒç#ôóO\#ù0çµÞKÜULq µÍÆé˜ÇàÿŸ8C˜tYæÇàÿž öïÆ*nãmþÚŸ¦vEààÿžØF|¹\ý¨qoCý¢FÞïÇ6ãX>å™gî%LÜ6ἹݖÑ+hä¨g÷íⶺáKjß6Ehí¢=âs¤OGú(J©µ¥G ®Ë§6eGnSš¸Ý,ž[¨ýÿØ5lšÖï$ÛßÀÿ-§eY7@ÿ-¤ÿcG¸N嬞—2غŠÚ•¦ÇU/Ðñ«ŸTÇ7Àþ[ÈþÕ¯^mÜË °ÿ–­ýjã6e“ÍÚûUD"÷«PYÈ×m€ý·¤¢.{Åÿ7Ùõ'Ü/²ï]²mWó‰}SoŒB¾°ÿ–0Î—ŽŸ®]yœßý7³þqŠ^xþm¾@òyâü|ó½$çIü¾uÎ7Àþ›ÉþNKþ4Àþ›kèx˜gÎ7ÀÿoÎ$\zëœo@ü³9Rr~Ïþ4û%<Ÿàÿ7û’|Ì=çüuLÓy’³d™×_Æñ“t¼Þ3çןnÕÓ’óëaÿ¦y¿×#þkª ˜äSî9¿íŸÆK$çË2×Ãÿ7’ÿ_»Ù3çëñüoé!½íöjÿà ¶UŠ©ú7ÿW)ü¯ÿþ¯sÃÿ:ð¿Á ÿ·S{éÉÏÍ'¶¿Nºÿuàø¿Záøß@ü_¥ð¿ü_Oü¯û_à¿ü_Oü¯Søoÿ×ÿëZà¿ü_Oü¯»þ[Áÿõ ÿ·ÿ?ÿ­àÿzâ¿Õÿ­àÿ:â¿Uá¿ö_Gö·¶ÀÿZðñ¿^á-ì¿Ná-ø¿ŽøoõÀÿm ÿ×$;úüZðñßÚ ÿkÁÿuÄ«+ÿ|~-ø¿Vá-ô_Kú×zàÿª ŠÏ¯N1­„ý×’ýkHί„ý×n“œ§çƒ çWÂþk ]9¿8ÿÄKæÛˆóVôO¬„ý×&蜷^•œ_ ý×’þµYR¯•ˆÖRüSë{ûœ¯ýëÉþ+¯JþÔÀþõTÿW&xæ|Í>àªWÑ:çkÐþ©O•œßò^šý|ΣýWOí¿š î9_ƒø¿žâÿš:¥ÌˆÖPüSsÀ3ç«Ñÿ»æ8q Br¾ö_sPÞïêc8¶ƒòÜæžó[Þ—œ¯Kwä|5Æ¿×̦ô™-s¾ý_k6ªeÎWGkRÊ ýW“þÕÝs¾ö²ÂyâÜ£°ÿj²õaÉùGaÿÕû$çëθrþQØu•+ç·\1Ûš¬æ[Þ#}f#_ØuªÎù•&ÉùG¡ÿjÒ¿:_êõ(üÿjòÿÕÁ·Ïù°ÿ*²µIòg쿊êÿ£©ž9¿ýß«ê W×:çW ý³*Sr~ÓÓ쟠~Ú«¨ý·â²{ί@ü¿ŠâÿJ™áÿëÈÿ¯8ì™óUèÿ¨;M$9_ûב÷» ý¿u6ÊsŸ{ÎoúPr~e–#ç«ÐÿY—Gé³[æ|æÔÅ6¶eÎW¡ÿ¿.P)+ô·’þUWÝs¾ú†ÂùòS%ìo%ûW“œ¯„ý­%çWžwå|%ìo­wå|“0Û3Ì'6ý‘ôAÿ|%ìoÍÔ9ÿh ä|%ô·’þUR¯Jø+ùÿªž·ÏùG`ÿZ²U äÏ#°-ÕÿÊLÏœý¿µ› ר:çAüW›-9¿ñÓ4ûGé8ö_-µÿ¹ážó þ©¥øç‘J™áÿkÉÿ?rÌ3çAÿÇÊsÄ8Éùå°ÿÊãò~/?‹c‡(ÝA÷œßø™äü£ùŽœ_Žþ¿•%”¾°eÎ/Gÿ÷ÊdÂ&µÌùåèÿ[¦”ú¯dýMî9¿Â_áüK)¦ Ø¿†ì¿ü”ä|ì_sDrþÑK®œ¯€ýk6»r¾1ÀlÛÐß|bã§Tžä û×d뜯 “œ¯€þ5¤ÿò:©Wü ùÿåQ·Ïù Ø¿šì¿]Žø·šâß ÷œ/GüSMñO¹M)3ü5ùÿòSž9_ŽþG/R=O–œ/ƒýUú¿ËÐÿýèQJwÄ=ç7 —œ¯¬pä|úÿ­¡ôU-s¾ óßM'ìä–9_†þ¿G#•²BÿGYÿ@÷œ$Táü8Jû¯ û—•œ/…ýW—œ¯¼æÊùRØÅnWÎoèj¶­õ3Ÿhø‚ʃñéRØE¡ÎùŠHÉùRè¿‚ô/k”z•Âÿ¯ ÿ_{ûœ/…ý«Èþe‘’?%°ÕÿÒBÏœ/9 ÜÂÙZç| ⿪*Éùµß¦ÙÏ`þg âß*ŠKCÝs¾ñOÅ?%‡”2ÃÿW‘ÿ/9ë™ó%hÿU^¥zž.9_ûW*ýßÅèÿ®ç‹`ÿådÿâ!’?E°ÿrªÿEUž9¿ ãÿËîPëœ_†øoy½äüŸ4ûï1?aâßåÿE¸çü2Ä?Ë)þYvT–yüÿròÿË.xæü2´ÿ–›¨žgIÎ/ƒý+”þïBôWœ¡ó§Ýs~Í$ÉùÒFG΢ÿ£b¥ßÜ2ç 1þ[‘Oؼ–9_ˆþŠ¥¬Ð¿‚õtÏù’AŽc²…°9Ù¿ð²ä|!ì_~Nr¾,Ø•ó°¹1ÿÃ$9¿&Æl«Ýe>±Æ‡ÊƒùY°y½Îù¢Éùè_NúÚ¤^ðÿåäÿ 'ß>ç `ÿr²a‚äOì_Fõ¿ Þ3ç—bþsÙ1ÂmóKÿ•m–œ¯ J³ÿ®çÿ–Qü[0È=ç—"þ)£øgéIYæ¥ðÿeäÿ—^öÌù¥hÿ•R=Ï—œ_ û—*ýKÑÿWzžäsî9_7Kr¾h‡#ç— ÿ£t¥ßÝ2ç—`ü·´‚°%-s~ ú?J•ùïK )ë?Ä=ç—Å)œ¡4°)ÙÉ Éù%°ÉEÉùâž®œÏ‡ýK޹r¾.Þl«®4Ÿ¨ ¢òìÓó͇ýK6ëœ/H•œÏ‡þ%¤ÿ’CR¯|øÿòÿKfß>çóaÿ²ÿ’TÉŸ|Ø¿˜êþfÏœ_Œùoŧw²uÎ/FüW¼[›+§q~e4ûû˜Ÿ·ño1Å¿ùqî9¿ñO1Å?‹ÏÈ2/†ÿ/&ÿ¿ø†gÎ/Fû¯8Œêy…äübØ¿Xéÿ[Œþ¿¢K$_çMŽœ_™+9_`säü"ô¤ôZæü"ŒÿÕ¶¦eÎ/BÿGQ¦,ë"è_Äú'¸çüÒd…ó“( ì_Dö_ì/9¿ö_vUr¾0Ê•ó aÿe<ÿÑΛtίL1Ûª2Ì'Vö ¼1?o!ì¿l·ÎùüLÉù…Ðé¿è¨Ôk!üÿ2òÿ‹ònŸó aÿedÿE™’? aÿeTÿîöÌù…˜ÿVx–ä3­s>ñ_áÉùGû§ÙOîÀyÄ¿…ÿ.LvÏù<Ä?…ÿä—e΃ÿ/$ÿ¿Ðß3çóÐþ+Œ¤z^'9Ÿû*ýyèÿ+¸FòU÷œ´Xr>ÿ#çsÑÿQp„Òn™ó¹ÿ*h$lCËœÏEÿGA¶,k.ô/ ýóRÝs~qºãÜ›\Ø¿€ìŸ*9Ÿ û˜$ç—ĺr>ö_zÖ•óf˜mˇ›O<ÚŸò>¢ç›û/= s~a¶ä|ô_Júçž”zåÀÿ/%ÿŸ[rûœÏý—’ýs³%r`ÿ¥Tÿsxæ|æ¿-¹@òùÖ9¿ñß’Ã’ó•ÃÓì'0?}âß%ÿ椻çüÄ?K(þYpI–yüÿòÿ9¡ž9¿í¿%C¨ž7JÎ/€ý—(ý Ðÿ·Ä—ò4¹ç|eµäüÂ£ŽœÏFÿGþqÊëXËœÏÆøWþÂnk™óÙèÿÈ/”e͆þù¤ÿ‚L÷œÏËR8?ÒÀþùdÿ’óÙ°~ äü¢$WÎgÃþ‹/¸r¾r¾ÙVb>Q9œòÆüôù°ÿâÃ:çs %ççCÿŤ¶òþà|øÿÅäÿ³knŸóóaÿÅdÿìBÉŸù°ÿbªÿó{æü|Ì[t™äK­sÞ‚øoÑ1ÉùŠÄ4û;‡pñï"Šçg¹ç¼ñÏ"Š,×d™-ðÿ‹ÈÿÏðÌy Ú‹¨žïœ·Àþ‹”þ? úÿSžî9_±^r>ç¤#çç¡ÿcáiÊëTËœŸ‡ñ¯…6Âîk™óóÐÿ±°J–uô_Hú[²Ýs~A¾ã܃y°ÿB²¿eäü<Øa˜ä|îdWÎσýó.»r¾¢Àl+Úh>Q‘HyŸÖóÍ‚ýóŽéœŸ_%9ŸýóHÿyç¥^Yðÿyäÿç5Ü>ç³`ÿ<²ÿ¼*ÉŸ,Ø?êÖ1ÏœÏÂüŸÜ$_kósÿåž’œ/”f ïgÍEü›KñoV¾{ÎÏEü“KñO–¯,ó\øÿ\òÿYƒ{¶+ç†ýÜpå|)Ù¶ ×|¢”Ú sñ~ÖØÁ)óYõ’ós ÿÒÿáKR¯9ðÿ Èÿ?¼íö9?ö_@ö¸^ògì¿€êÿœSž9?óøSzßÖ9?ñ_öYÉù¢Yiö£'õó³ÿfSü;§Â=çg#þɦøgN°,óløÿlòÿsâýY»eY3¡éÿP½{ÎÏnt“Ê„ý³Èþ¥KÎgÂþY ’ó—¸r>öÏ uå|A“Ù–c>QKyãýäLØîó3wKÎg@ÿ¹¬¿¯Ô+þ.ùÿ̃·Ïù Ø.Ù?s·äOì?—êÆÏœÏÀüŸ¹”¾gëœÏ@ü÷ðeÉùüâ4û×ÏÏ@üû0Å¿î9?ñÏÃÿdDÉ2Ï€ÿ˜üFºgÎÏ@ûïáBª§'%çgÀþ+ý3Ðÿ÷på™àžóùKÎϼæÈùèÿxØDò–9?ã_sÎötËœŸŽþ9dY§Cÿ9¤ÿŒÍî9ÿÐÇþùé°ÿ²ÿŒ,Éùé°ÿœTÉùY5®œŸûωpå|þ.³mA€ùD~1Ý;¼ß;öŸ}Yç|ÆÉùtè?›õ–z¥ÃÿÏ&ÿ?ýÈís>öŸMöŸ~@ò'öŸMõ?ý²gΧcþÏìA”>ªuΧ#þ›uCr~aušýU¼ŸžŽøwÅ¿é;Üs~âŸYÿ¤ÇÊ2OƒÿŸEþ?=Ë3ç§¡ý7«ŠêéÉùi°ÿ,¥ÿoúÿfM¦5ŸXH×IÇúSaÿ‡nèœO?,9?ú?Äú÷”zMÿˆüÿÔã·Ïù)°ÿCdÿ©‡%¦ÀþQýŸrÃ3ç§`þÏCq”>¶uÎOAü÷¿ä|Îú4û¡k8ø7“âß)6÷œŸŒø'“âŸ)I²Ì“áÿ3ÉÿOÉ÷ÌùÉhÿeÖS==/9?öÏTúÿ&£ÿ/s6å™éžó9W$ç§;r~2ú?2Ã(}hËœŸŒñ¯ŒK$_l™ó“Ðÿ‘qL–uôÏ ý'pÏùi‡Û°“`ÿ ²ÿä ÉùI°F¶äüôm®œŸûgĹr>çU³íá×Ì'rÖ“îaÈöÏð×9?å˜äü$è?ƒõ’z¥ÁÿÏ ÿ?éôís> öŸAöŸtLò' öŸAõ’¿gΧaþÏŒdÂ%µÎù4Ä3B%ççoM³ÿ 볤!þNñoÚ!÷œŸˆøg:Å?i“e™'ÂÿO'ÿŸVá™óÑþ›¾™êé%Éù‰°ÿt¥ÿo"úÿ¦çQžÙî9Ÿ-$ç§ötäüDôL¤ô-s~"ƿү‘|µeΧ¢ÿ#]Yÿ/ú§“þ»çü䣎ómRaÿt²ÿÄ:ÉùTØ?½Pr~ê>WΧÂþéÉ®œŸÿ–Ù6k»ùÄü­¤;ÖgI…ýÓCuΧ’œO…þÓXÿXE/øÿiäÿSÏÝ>çS`ÿidÿÔS’?)°ÿ4ªÿ©¡ž9Ÿ‚ù?ÓÒ 7¹uΧ þ›!9Ÿµ7ÍþÖGIAü;âß”£î9Ÿ‚øg*Å?)³e™'ÀÿO%ÿŸRç™óÐþ›º›êé5Éù °ÿT¥ÿoúÿ¦–Pž…î9?/@r~R”#ç' ÿcêJ?¨eÎOÀø×T_šZæüôL9+Ë:úO!ý'sÏù‰'猇ý§ý'4J·ý§TIÎO:èÊùñ°ÿ”tWÎg½o¶e–›Odí%}† _ØJ„Îù”³’óã¡ÿÒ‚²~ÏxøÿÉäÿÇ_¼}Î'Ãþ“ÉþãÏJþ$Ãþ“©þðÌùdÌÿ™œE¸Ù­s>ñßäA’ós^J³ÀúdɈ'Sü›|Ò=ç“ÿL¢ø'9O–yüÿ$òÿÉž9?í¿Iˆ¾’óã`ÿIJÿß8ôÿMª¡<«Üsþᮒ󩱎œ‡þI ”>®eÎÃø×¤`¶ÌùqèÿH» Ë:ú§‘þãN¹çü„3ŽsÆÂþidÿq;$çÇÂþiõ’ó©G\9?öOËråüœͶéæs^"}°>ÙXØ?mÎùä ’óc¡é?n²¢üÿDòÿc¯Þ>çÇÀþÉþc/HþŒý'Rý;È3çÇ`þÏÄ|ÂåµÎù1ˆÿ&ÆIÎÏ|-Íþ<Öÿƒøw"Å¿cθçüÄ?©ÿŒ)QÊ ÿŸJþÌÏœOBû/õ0q Xr> öOUúÿ’Ðÿ—Ú@yÖ»çü¬¾’óã“9Ÿ„þÔTJŸÜ2ç“0þ•Ú“°a-s> ý)—•²BÿÒ?é¬{Î;ï8÷ öO!û'Ù$çaÿ”Í’óã#]9Ÿû§ä»r~ægfÛÔáæ3_#}R‘/쟧s~ÌeÉùDèŸBú'Í–z%Âÿ§ÿO2Ý>ç„ý'ý/Kþ<ûO úŸç™óbþÏ„ •´ÎùÿMH–œÏx7ÍþÖÿyñïŠ<ïžó"þ™@Àƒ5J™áÿÇ“ÿÐæ™ó£ÑþŒ8ÐSr~4ì?^éÿþ¿ñÛ(ÏÍî9Ÿ#9?v²#çG£ÿc|&¥Oo™ó£1þ5>а‘-s~4ú?’o(e…þɤÿè î9ŸtÉñ=©Ø?™ì?úä|쟼[r~ìiWÎ'ÀþÉ®œÏøÒl›d>‘ñ.éƒõ9`ÿädóÞœO€þɤÿè<©Wü2ùÿÑ·ÏùxØÙ?á†äO<ì?ŽêB²gÎÇcþϸ:ÂÕ´ÎùxÄãÒ%çÓ?H³ïÅú'ñˆÇQüÉ=çãÿŒ£ø'¾A)3üÿXòÿñ‡)9ÿìÿàaÉù„TWÎ?û?ØèÊù©~f[ò»æS>&}°>õ°ÿƒY:çG†JÎ?ý$ýÍÊú¡Àÿ?HþßyËœwþJ3ç€ýG“ýÍ¡’?#`ÿÑTÿÈòÌù˜ÿ3zá¶9s~æÞ/ߤû¾€ýGJ¾'¤Ùwâýïÿ=™òòðþ÷è?šô¡¼ÿ=Ï¿Ñôüáøþ÷³*ßGàùŸ@ÏÿQÊúˆ±hÿ%œæôÌmã{'=‚FÒyŒ'Ò×þíB±ð¨ ÖžÍ@þ±ˆÿôïf˜“jß0l ýˆÿ#”ø)ñOB&ëG6¦Ù´‡bS²ß­Û4ñoÅ¿#”ñ‹XôÄ_"¹Á³M‡£ÿ'þ8Ꮅîdž#þ‹ß&í:1$;ë3GüOñoì÷vÿŸN²Ò8ñ|ÉWìºJµëpØ?>˜ë—\cy8Ú¿£”ù;ÃÑþuäóîýØÄ¹Ò™w;ú±a˜ÿ3ÊFé÷µìdž¡ÿkTa+ZöcÃÀÿQJû}ôÅúǺ÷c$(~¬/¥ýGùjßÂоkb>‹üÀÿ‘Äÿa¬=„ßkG?6öyÜÕML4ÛÆû™OL ¡ò`þÿPØä6ýZ±“k÷ëN…þ#IÿaJü4ñÏHІe5s¾×åüPØ$Ù˜2~1ö»Fò6Ïœ‚úGõè©Ö9?ñ_Ü>Éù áiöm›qñOÅ¿CÜs~ü\ÉJÿáÄÿqÉ”Öä™óCÿÄQü3¢Jr~ì§Ìß‚ö¿ù2É—Üs~ÂFÉùØŽœÿ3¢ô[æ| ú¿Ìõ„­k™ó1ÿ4+í÷èo&ý‡$¹çüðTGÎÇÀþæ`ÉùX|"ñïÿÆ\vÏùhØÿÓ®œŸ0‰žS=Ì'&„Sy0ÿ?ö`Ÿ~­¡³%磡ÿ¤Œ?EÃÿ?@þ?&ÿs~ÁùhØÿ²Œ2~ û?@þ?zŸçï{E£ÿgÄ9’Ïò7´ú ý+ëGÆóo=ÿ¢ƒøþ¶Ê÷Áèÿ1ˆêx*Å4HéÃŒö߈@Ú7¢†a~×`ð?–ø?ø’užðãï–qøù^ž¨>ÃÁÿÅ×󈩩=g<áýKíßÁʵAÿXÒpã­<ÃßL³7¡ÿo žÕõÛ¢ÿkx$]#½/KRæÆÅœÓ}™©éñüFÏÿç[öe0þ;ìa;û2þN ôeÿSÖ¯€çß0zþ ¬pïË¢kŒû¹ºûXÀÿ #ÿ7P‰ß€ÿÈÿ1ÄÃß @ûg˜Òþ€öÏ0jÿ ¸QÔ`ñbl —_»öž Á›#Ä$¾oÄ”·¼¦‡¼!R®Gˆþ”7Þß¾ó߆*ósïÿ‡ÿØøûrZžo &ŽÆs~æ±×鞘 ‹ñŸ¡5®>uŒùÔoÍ'’>$³øÛiöë—8f®Î£zÃí¡ŒoßöÿPjÿÐâG>Îv°ú ¿ù¢7sÏp¨ÿC §Ì¾þùÿû/S])¾…6Ókoî³_1ê&ñ¬Êl¥ëî¯q¾”—æ¿ù^jé «¦Ï8Ñù&§ç:Íy[…çÓôœ×ôŽÈhÚCy *Ãî>•MÞ‚·i´Uïºr™q-‘"¶^mZ)|Êö ×sM;蜟æÜ”±odÛßWêy1_O¯çQÿ9Ï÷gÕjƒcýQÿc¨þGåy®çýñü‹ÙG¸Ýj=¯{§U‡R=ߦ};õ¼?Æ¿cJ´zÎm(Ûhkš}#úú#þ¡ø?j2×iÎërõ¼.!TÏ|ØÖŽu³?ž1ôü‹ÒÆ? ,ÕO±j©Z7ûÃÿG+ãýñü‹¦ç_mü£¹~P>Vþ6$Õÿê2ú?¢þ€r=?ײ݇ø/šâ¿þ5*V+Û?ղ݇ç_´2ÿ÷>øÿhjÿ÷OpS6âû€äêGšñˆ¢)þí¨\/ÀMÙàÿ“ÿ»ï¼Šå²­î¨–­üß`eýË~hÿ ¦öÏ}ûÜ”|Úýäwû¡ý7˜Ú÷•(× r-[?Œ N%l²ŠÕÊ6À¡l°ÿ`eþb?ôö§ô¾nÊDe äoFþAgI>£\/ĵl‘°ÿ ²?Õþ!ZÙÒÔ²EÂþƒ”õû"ÿ ¢ø§_¾›²Q›*ª„¿g <úÿ%>N¹^W7eƒý‘ýû©ö歹͡.DÂþ•ø¥/âßÔþ‰<å¦l]‰WÊüݾ¨ÿ©þGîV®×õl}aÿdÿHÕþ=´ºðµl}aÿŠÿî ÿ?üä7eëAe;R½¼øw Òþé‹ú?€â¿¾—ÔxaÔª„+µõ¥gb Å ýõ^ÕÓõÿÐó¿o+ëôÁó@#a]Ö? vŠ¢g´(óŸû ý?`2¥÷°þÁ}ÚúîiökYôl©J\%Ì£íü¼ý–Òãù7 Ðáy«}sxt³-þó‰Ñï±þOÌ[nŠù£öˆ€„…é‰^"÷‰Ñbñ+Eqí„?T®üì—•µ¾ïTÖ.þ¨2.jôü|æo¡Æ%Òs]üq3q”¯Ý׺[¬±[µoS‰ÿSeí%âù\S/1‰îKHí;_UŽzK«gaTÆŒ•¹OW®<þŸZ^|.Íþ홺,±ÑšE>;|cˆ·öáÑè93Oøl-ü6¯ñ”_Ù$dýQñ*_+|ù?ñþÙ‡öä{WkÝKqSoè?=ÿûDéñ·˜mÞI»o÷FÿGÔEíÛ³dwó[üíÖÈ#FûyT5ûýôF)í·Ôÿ(ªÿ÷éó‹O|Ui|s—žgséø¡&J<⟨º®±þMjyÓ½Áw¢#ÿFÍ&Œ±þ_— ÑþÅBx˶OÆ¿¢†n…‹ç SµÃ3ÄÙ•úwÆL!ÀÁÿE)ã?ˆú_­÷Š]úœ’ß ŽŒßõ GÿwÿS+± nÿp|Ø”¤ÇŠoyMHP!cÅ~x~‡£ýÓsôNºï5Ú7yƒôxphéP;ödï¯üµøŽòÕ¯ß/‰8ãÇyhq\/~®…#þíOñoD¶fÇîÎv Çü¯þÚü¯Ú¼`Ç>Ú÷·žúȰA8úî»Fyqû©é ´Ÿ~A±Ñ­÷/Ý‹öÏ}Ôþ WÖ¯¸ýß÷í ã±žã¥{ÿÜWÂúyhyÉxé^<ÿïK’í¢ØÒì«1ÿí^è_„´ó½àÿ}Äÿp÷í¢áïÊvQŸãðuèé{ÁþýNQ^'[öu½àÿû‘ÿ¿w·‹¯[¥úº^ðÿý”õ›{Áÿõ˦ôYî}]ï<Ù§Õ üïGü¿wë­÷ñmíùz_N/øÿ~¾®íŽá_˜mÃrÍ'†¿Eù ¨'æGž¡´§âHMwʼë‰öO$µzÙT,?÷2„Ï`ª—dˆÎ7ñý¿÷‘ö$û÷*L˜®µ›²—ú8¤¯³ÌÑVþ†6üCO´#ã(]¬Ãõòµï§£o¥'žÿ‘ÊûK=1ÿ¡ï ’µï“»Æ·Ùà@_k±¾l`N¦pÁº´_Y=FÄT™X¹}¬Á÷п/éßS‰z þ÷ÝLÇõþ”Õ<Æ~½)Ësÿ–ç6JÄ?})þéY%Û(=ÐþïKíÿ-¬Ðú÷!ý{\›ù6Õ9ï–Ú(ÝÁÿ>§deh|š½ët‡ÿïCþ¿‡6þÉœÕÚ(©_â»÷ZíºÃÿ÷!ÿßC]ÿ×h›ÀvÝÿ÷Qâÿî¨ÿ}(þïáÿïáïÞß›*Û%ÝÑþïJXíûOæ1ÂÇh;ÖÛîxþõ¾HòëÚ.é†öoeý®n°ï¬ŸZ.ÎG/[¯ƒ²]Ò ý½«_ëù¹/[7Ä?½)þ鞪b]cÿnð½ÿ× þ¯7ù¿îþNeóCÙ‚eìß í¿jÿu;‹ë¸/[üùÿnU¬k›) ý¿Êüï0ÔÿªÿÝ Ê —­g…l3…Áþdÿn ¸^‡²ÁþdÿnÁ*Ö5öƒýÕõO»Âÿ…“ÿ ;íT¶ ½l=ÎÊØ¿+ÚáÔþ ۇ노/[WØ?œìV¡bµ²=¦–­+쮌u…ÿ 'ÿëT¶”-A>'º"þ §ö_˜/®×ÕCÙ`ÿ{Éþ]ϪX×vÉ=°ÿ½Êú÷`þ×½»)ý§²uEÙ"d»ä´ÿî¥ö_×|\¯÷¥Ù/5"ž5ŸãyS"ÅâzŒ>1úhŠÑ{QŒ¾‡bôEé1z$ÅÑëÿJ1úÐ_Õ¶{1ú{üç÷G+û^òMxñß~å‰á|fQ™ÐþíEíß{´ç aûRŒêGi‡ëå¾ózÆwo)ÎꩽŸ¨K×dκžt:ÌyÇ‹pŠåè¹FåÀ³,€Ú ü¬‚Ÿ½ïÿôÊC~\ÏrLÊee=¬üøM·'’ÏF{¢+sP¶)ÂŽSž]›Û¤»Þ¦ø¢Î±]p7âßžÊú§w£ÿ«çyöŸ®±üר?ÊØ8öïIõÿîSîÛ¡hÿõltl[„e1?ŸøXIGíâçn(⟞ÙZùܶ BñüëIÏ¿Pcþ›¶A(êOªÿ÷¤{n„bü¿‡²~K(ìßë_ÜsH¶ Â|¥þ!пÇ!­m°À]Û i½cÛ ¾ß‚ø¯GEôÓÎmƒÈb­móÙío—ÛÝ"]Û!˜ÿÑ#ŠÊžìÞ!ˆÿzø:Úáž3l‡§>6Ú!¨ÿÝ©þ‡†imƒÕîÛÜ—ëi¬†ã•Ó]ˆºo®£6kE¸6î®_ç.èß½BOº;1%á~\¯þDhiz;¤ÿ§ =˘ÌÞíFS˜×D•§Ù¯óŠ~œž;s‘æ?tÍ"ùˆûgOžÿ]ãä³çϞ¨jÒ=Îó§«ñü#îMZ}N}¡þßsNË{¿Ç’Îu›î³)q· ÷­3ž÷¦4‡šcfºoJÛÓÀbüóžM?ëÚ–ì ýïaýg«XmIؼ3Ú?÷Pû'(Â9£Í;£ÿãîk$_u*°ê±á,Û íŸ»•÷_;¡ÿóî#”þ°K¼¯Ùü®ÊC{ÆÈ±© VºŸÕ{~R}¤ÿ4ú[ùæ|'ðÿnâçlcžGüw÷dî§ÒçY†ÔY»9ϱëýïŽÔû³‚ÎÕνŒ±ÐNˆÿî¦ø¯³2¿¯úC/“|©y PŸ'åⷒ쟻÷[¨ÿ¡Tÿ;)ß?„ýCÉþZøþq žÿ¡ôüï”åâ·~A~«›æ·LÒobü7Tyÿ¯ï•4{ Þÿ Dû'”Ú?üÝû­@Äÿ!Ôþ ô°þAü_ù¿@eü9õ?„ê ãú5ªß @û'¤žü„¶þô‘iöo¹÷°µÿ¸÷xþ‡DIÐe·£?ˆ !ý£Úî:‚ÿw’þ (Ió;UÐퟻ¨ý°¯eÐퟻª4ýZô¡ÿ]¬ê­ûƒŽˆÿî¢ø/ ¸eÐöïBöïx¡eÐÏÿ.Jû¿Úÿ]¨ýßѵý¯ùƒÎƒ\ýAÉ%öZ,#J”53;àùß…žÿ3¥/è€ç—$9ç:¨B™s ®uÀó¯K˜¿œ®­6|Aôÿß ¼•ù#ðü¾@òy·¾€ê}³/HýÜÍ›1|Å¿>ìRLþˆÿƒ)_åû þˆÿ‚+èx°gŸàû“ý;¤¶>wÆãŸÁ=¥?èµ7Í^ˆõ_ü¡òþ“?ìDö÷¿à¾¸×~ÙG¸ýƒ¯ééý`ÿ ²¿¿­å>b?Ä?Aÿø;~ÿÊe<ÌãÿAÊ÷‹ýÿQüãç¾8@¿»†ëñÆmƒÙŽäo·ˆ½/ØÏ¿Î×\û‚{½o¶u·šOôÚKùŸ¥6ª°ã´9çÄâ4û'øæj{<ÿ;ÓóßOùþR{´ÿ;Sû?àšœÓþ¯³ÒÿÓý?K(¢üÖæã þX¶£n øÿ΃dG{ð¿3Å~¡Ísq¶í«.ïÊöÕÙÆæù5<^g ÀúÎíÐÿÓé åwÚóüšvðÿÈÿ·WúÚaþo§mt|³»ù5uÙÂǘcSS\Þ¶zÕã¿b)åýÝvà§ž$ñ\¯Ú¡ýx•äË­×+_<ÿËzÕ=%Ížçáÿ•ï×ø¢ý¸™®Ñè¾^uo’õªCªc½òÿÓ)ýä–ë•/âŸ@ŠÿÚE´\¯|Áÿeþ»/ü_ù?ßóîë•ßEY¯\ë•⟀}®õª{¹Ùò¾ùD÷*_k½ú3ædú þ  ø×W™¿êƒñ¿€dª—ûd½òÿ”XÒü þû†¶^¯¬‘õÊó×½ÁÿŽgd½òFû§ã1ºÆQ×zÕ¹@Ö«?Å:Ö+¼ßã ÿבüŸO•çzåþÿŽ™„SÖOð†ÿëHþÏ'î–ëU«c™Þ°²¿O„¼ï^ˆ:œ"L¾çúäþw øÇ{_ëõÉ Ï¿²>ÝCqëB|ÿÕ úw ý½Ó›ÇUzð¸Ê§WÑúJPW¼ÀÿÄoÿñžêŠøïMÓOÅr]y[­+&èﯴLhÿøSûÇËqýŸ¹F]ñ=ªõ“­äº².lõ"…ôçXs8åmE>ðÿþ%j}1¯é¶žêJ±ùÄ=WH—Lž½Jó 1tÏíç‘­}(/3òAü륿_Ô.IÆÝ&Äÿþ8çk])ÖÀÏÏ|¶q Nÿc~§ í_¿s¤›òýÿçGñ¿éXóXÞÜÖÇòj¥üÏ·Ê9qñO»Ã:¯¼O5sNÜÄü‡v;pn³#ç¼"tÎy…õÚåSùäóSÜÄó¯]:ŸÜ&ÎyzŸWÜ„þ¾7(ϸfΉ›ð¾H®óÈ9qíߣ„;Òêœ qñ¿o£Â¹×ÓìÙÚ÷OGéèïKúßÌsžçJ¼óAŸý[Èý_¾q„wÿ×Úv>Ì»5À¢þûÖßaC”Ñ šM¦‘ì7 êÊncñzúëð>dß'çA¬ïHyXE áoJ¦®z:SÒCŸFJßàZV­Ž€S×Ñÿá“MØ,ç¹»T§‚bíöÚ&®+¯" žÿ>Ô¾¼åš¿çzuõ߇Êyý†Šåç÷{^}¦ñuN¾(„½Qˆ©Ÿ|9¦v¾è7óQûÍæqyñ=ìï-Û¿â{´¼P¾6—ù¾¹yœT|ç¿w’ö÷&û_Ïsœ‡xW†œ‡(Œõ¿^B:ø?ï!”®åõ¿Ä÷ÿðö%¬ëú_ ”¹â{ŒÿxÉõ¿Äwðÿ^Çé¼ûõ¿ÄÍ“<–Ãu >ÇLé`¯F×ù‡w™Í¶Î³Ì'î¢´× s¸ßF¿™{E|“·Q/¿Cû×k2]7µl¯þ~Ns[_|û{‘ý¿?Éã8Žþ¯P:^Ò/ŠïPÿM7ÝÐþ5]$ù‚Ü q3TÇ\ƒþ&Ö_~?N\CûÇtÒ¸•w¯]|“:nôtŸJÊþß4ÛeÜH\CügJÐûM¾?£µ2–Sk%ïº÷fIoíùÕÔ<¾ä˜7žâ<ò®jKÞnÇ¡r?ª4çtþÖeJ;ÔŸîÙ¶ }Ìkš^†oÿ‹,’(ïóñ9ôÿŠo¾­©ÝÝU$½¡æÜ?ÍnÅ(ó«ð¡r@·oÁ᫽§¶WP=¸9›ßU¡úDziï^4‘nú}ÑüÒ~£¿ÿ ì'õûr½Ž1ñÂbg{ó³Œ`öš(aÎî=Žç¨úyzçþóöÝö‹oq<*ë>ù\ú¦ljÿß\ôü\úf2p‘”>ÂÃsÉW>—¾ÑÛ¿âæUù\ê<-Í>GŸÿ&¾¾óg{ú–Þ½_ŸDš}”f·³ÿv˜G$¾Þ ¬œÿ'¾nÀ1òÿßd¹}÷B|—×›>m~6‹oï?_G:Øÿ{²ÿ•–¿ÿ,¾‚ý¿'û_qýþ³Ã³ù+Øÿ{Åþ_Áþß“ý¯¸ÿþ3Õm~½2ßœÃÇw_Tòù¿¬½{xTE¶7\ÝéÜ H„† Ò0ãLB"DÎ×!!Ó Asó¼­Ó™žxÁ÷À;8§v§;Æ 8OBÐÃ%Áp‰ÃM  ÊÝ€   qÒßoÕ^;½»Ó ÌÌù£ŸÞ»v]VU­{­ªâþÿtÏ'ÛÎ:W˜ÿý´§Íï.®iwÖ‰¸ÂóÿÓ¢ö²>ªÁÚ:׺+j`,ãzçqþ©ÒO/~Lh;ëD\qñ·ŒW¸ÿ? CzPÿÇ&ðØ ~zƒ·¹C¢¸¢êÿâ:ôÿ|þq™çÿ:æÿJÇþqyçkD¾Žü:þ{™ùßuÿ£KDž·àIþÎý¿Žþ_yôöøïeÆÿëÀÿ+ýù¯_ÌŸ¸Ìüÿš/þI\æù¿†ù¿|28ÿ½zÎG/-G9ÿZä½sþÛò:ç¼eóß–2Ϋ³[žá´(Ÿœÿ^Íññß–aœúßå;;ç¿-ªþùŠçsóßïÏq^þÿýNƒþßÒœÿþðºÿ~¿ˆó?‡üÏvοgùÿwÈÿ–œÎùï÷<ÿ¿[Ûƒœû¯%28ÿýAÇ¿Wý?âo'}u|Çôÿ7è×ßïôçáã}<ð‡™þöÉw¹\ ʽÔ9üŽõŸ¿Aÿùþ‰Ný×â;æÿKÑÁÈúÏß ÿ|wpxEžïþØ©´vŒúðûN|oϳÂã¬7WYw…Aý~_m?Q‚²FÀQ;LLùÃX¹ÿ6¢v x³ ü Ÿ(öÔCÿß"¦¼zŒˆ¦¸yð¥<[²ÅÛ)šÏ¯´gVêûuåÿeÿòó¿Ëàß¼Ô.6îò/\zYyùÁ þ ‹È¢Xçj xG¥Éšç…l ḣŸÍu3þ_þ_¨ #.0ý_¾³-.F|?Ã?.ÆdØßé±H?ž—=FµƒµX™²akkJ¦°–_ƒË9~[®j6òyîKc[ü6èG Ùd.KEèO ù9Î&ÊõßÂ^£‹kúh'p.©Ê"Љ‡*!WW‹"”‰)Ã÷”aH™äõÖàò~QˆÒŸÞu¦¦‰(À PÛîQÇÌhŸù_˽2^0x‹(eÃ@|»ô¨_ÜúÑAXÿùþ´¯ ”ƒæZ‹°¸û¾ï,Œ‰H£¾¸ïùÈYºt%øYC#Á)ã^TÇO¥#ï„Á iíÁp cëijpF='„Ý+~U˜Ò¦üBØ•®ø‰Ç̨“âŸ'«pþ‡Wsá%XK2³äGꜰۉ/ªñú†¹Ž¦údì»PcÄÕ篇Q›Ô­=ô+RúãÅ…mj¿Vãß ßñìÛ¿(¾fû÷»£èÿƒÊ5óÕN÷ÅНsÚë(·ü¿öȘWeÌñ>s1…ë`úÿn¢OÆ|Åòï;È¿¯-L‰Mw'ß‹~¤Ëºß–g‹°¼ù1ZÊç¿a‹¿¼ùöG®íÿïBeÿ4yó›@yóóÿK'i||ý<ÇüÿøÿW´þå‘|½·Îî€LÑìšsšoÂià³=p®ó¼­1zÛdk™w¶‰m3ÿ¿þÿ•ïþSqŽý—îÇsÇ÷ŸŠs÷s¾Hê_;™¤Ú&!>ÛäÏÿEÝý§7¯åy³ÕûOÅY–ÿ!ÿÏ­*ÊIeþwüïÜKZâ}î?ï;ËößEßù­â,ÛÿÇPÿüåÕO»}òê‚vÿË^.Çôúß¹»;—WgÙþÿöÿÙÛÉ+?]óKÖ¾õ­ÿŠ/¹ÿߢÿg×—W_Kû€à'<,¯Y©Û[#Șçýd§Œu|¶-Öq–*˾dÿ×·O´—e?UYYwýTŒþe0<ÿßbþ¿|)¸ ø’åÿ·Ýˆ_©2àB™¿ h¥þ^ót°Oçe]<¤8ÃöÏ7[¸>â÷Óþêzä- }#ê´_§z‹ˆ¦=ÿà³°ÿ}}¯Æ3òȳkAû€ 3†œ“ø&ÇHÕÏ–²¯4Pöaýÿ›<¿¼ßgØþû¦û{Ñïó3ú]„ùë%aÒ&ˆ"?°”}³ìK÷ɾŠHì+ÕËÓ¬ÿ\XÎm¿é§„l7ƒ‘þ/eßãªìSŠ„ì¥¸'ɾÝUý4Ù·m5Ò‹P†âQ¥ì³fBö ÓìQGk²hš”{ÓÏ@¶fýçÂ}T?µ/åÞ:’{_¤½2ŠØà›K¸™ÿŸ¿ìƒûÜ“JÈ1óìza)­[âüýÈ»~ª¼£¸Íl1o½´aþ$ã~†xT¸bÒ›cÉÇTô#u˜ˆûwÅ÷DžAðzóÝ%哜g*ƒ1wº”c4>оh$Þ8Šx©SâŽQÚUHË5+¡¯~@ÉÙ®Πäcz€|$Ÿ»´£ŠTùø¸*}ëDÍÌÿχª>ü3[8í¿¯/áÙwþœø‚õ߯ÿôÉÀ/ÿ¿ÖÙÿ_ðü ý·¹ñ¿rn%»ÌõÉÀsrlÿ~ý¤®Þç8íQÔ+ã¿ÜŸéí¬ï<¾3ÖÊsé¤Ü£}RâìM®ƒéÿkèÿÍ‘˽/ØÿõÕ9äÓÙ§˜ÿ}µyö“{dgm‚üú‡âÄ)¶ÿ¾‚ý÷…/~Rœbþÿøÿ©ëË´S¬ÿ~ý÷‹ûoû!Nñüê“i?Tæy3X?8Åý?‡þŸ:}ëØ“'9ÿzä_ÛyìÇɵœw¦ìßðÎb?NrÿÏñÍÁI–ÿç ÿOû!N?â‹ý˜ùlðØ“ \Á?öão°“.4[wýP‰úÏÝ:öãË¿³U}òôŸoýÛ¿gëù›_úãïlÿußùQâãÿÙ'‘þÄmÅzÜn¬¨8ÁúÏYè?'Gøpíó¿//SûãÚqö}¹‡úwk\;¾óÏóáÚeKž÷·3ù;ûÿ¾ôÝ'Žsÿ¿DÿOtpÿÝ媶XQÑÜÏ/VTgýçKè?':¿ÿNgýç ôŸãíî¿ó׎1ýŸÑé?ÇxþÏ@ÿ9üþ;qj‹/Vô…ëíbEÅ1¦ÿ3Aœmmü:ƺë2dˉ‚ö±¢kÖ3¬ÿœþsü>ß¼Ëàô>à Ïú|dÇÿÏèÖï1ÿ? þì­}d†"ïþâ9µŽ£ÌÿO/÷Ù/Gyýçô˨·¦½ìœÍç#[éo³|ÁúÝQæÿ§Áÿ=Ò±ì(¯ÿœN@>ü8Êöÿé;‘ÞíݺÍ{ÄÏG¶@ãÝGxþ›1ÿGô­áõŸæEHÖ1=aüo~ùž%z*KUÏ!)߃öåYÍv¥Ÿ¤+“®ŽLärêù7´æßx%:Ï›v¡¶·ÛÖlG>žÿfÌÿÑ^·<“Caÿÿð|NGÚš5¯½}Îöï:û÷s¶¿€ý{Äoÿ£?r|½o½úó圷 yõçÿYËùœíß/`ÿy´ÝZŽþŒñ9Ïÿ :¸Xÿý¢õ/øZÎñ>>|ýœåß)È¿ÏõçÿYËùŒçÿæÿóõ¯å|Æë¿§|矊ÏxþOaþ?6øZα›¾µœÏXþ‚üû¼íü?ð©(ÐÎD:#!£ÜU»PLH…üÓx.Ñ–µñ»eÖ&ŠC*™©eÿ×±“¨‹Î?ð´y é^jÞƒÜÿc¾óOÄAÖÿŽÕƒV¯«8ôxôÍÍmçþùK>“cÙ%Â?؇ëð=ºƒst±»ÿeNßýeâ ÷ÿXµß±Ü9Èòÿú}ðfzœÎv€ýÿGøô¸o›ò¼²ÿô÷ÿ(ðÿàëÁm½œ9Àüÿ(øÿA—ÎÐÖ˜YÎàõõï¼þ}tÊú¯ÓþJПo}ùË¿£{iztp9s€ñÿôŸôyÛ¯/ïgùwD'ÿö³ü;ò:õÏ®bMξ߷¾¼Ÿõÿ#Ðÿ<§k/ˆœÙÏúÏè?ÑçmϰŸõß#ºõÏýÌÿŽ@ÿ9Ð-l C/ûâö³ÿÿóÓx®{ô ÛÿŸo¡ú}8ø ¯|Þˆô':<¯^|ÂýÿÜEüSÆ~>yÜ)yã=Äk†êâ1>áþþ(õ¯b\[[ìÿúƒýÿIÇû_ÅǼþûÙ#È×ÑþWÍ~<‚óëö¿žËó>Àë³ü; ù÷ñõ[Óì>¶ïCþ=Óì>žÿúõ¿}ìÿ>\ƒ²/µ§Ùƒ}|4»í¿Ã°ÿ>~¢sšÝÇó8yìœf÷±ÿçp7\lÿºNý N³\>šÝËöï!Ø¿ûvvN³{™ÿÿß7¯sšÝËúÏ!ÿ/û?Aù‘ÁivÿiÍîeýçôŸ½‚Óì^¶ÿERý>ÜËöÿ§°ÿ÷¾Þ1Í~Äýÿý?po{šÕÝ1&>âþZOýóÑìGÿôé ÍØØžf?âþ:F¥Ù{ùhö#–ŸBþíÕ­ŸÄòïSÈ¿½÷þ“4[í³ï>býçàQÔ׫mÿ½øùÿÁmÈÓþþ/íñ!û?ÎC¾—õwˆ(¢E³ëtþ’yýïàDŸ]w¶2Ï;hd›]WÒ»îCîÿAôÿÛÁçúC¦ÿƒýð<Ï7ײþs0”àó›ëLý\Èüïñ¿ ìáõ¿;©<Ý"ù†@ùåbÙ SlrßÿYª½À:Ø–ÿÊ´³$ ƒç|vØžÿc<Ð!Sxo$ÎwfÔ‡“Ž. h}ͰC‰Œ$Ç3’æÔ+¨ˆt‰Ó±Mbކ³B‡à‡ÿ¤™ÌB„"=t•aÈæÀï*~“ùŸ~ûå™_’=c²Vž­­=˜-ÂÆëÒCa„à[5¾A¿›¢û†ô¹H‡~Æü`7óÿý/Uã{¦w³#',}êžQfóõÉ87HŸløA­‹õý„‡ÿç¤7¼Ÿ€«ó9Q®ÿ, Ý+BÐð¹Ð¦€|Ëø2! } ÒA_!›Ò7üâz§p½À±ÐÀòM å œ/[Íçõ"Ÿ- ßnäÛÆùb¹¾0ä‹©²ˆ0E„Oƒ^ÿíYÀÿïl MtηEWGêØ: _˜VéÓ©¿øv‚ä ¾±ßðÖÿ>¾„ú\êwà¿ÿãñÿÚ™£«+õœG™>*œ&ð©]ûRCV©uÉûäú§\gû ßMKÊ_Þƒ¿“üÓÏ‘|âþ›´þwGyÞ׳‹í¿‡Þp†×A1$ w>maÈY]½]P/èpßÄla¸ƒôGÕöBÖp{1!ËòÁæß—Àùª8àaßúN–ÿû—‰ázˆáz„á²ùºz»¢ÞdðØ€+. = 鹽ƗŸÑ^t@¾lä«Qó[8pÂxžábù¿¯èÏú[Çô×3£ÞØä£¿°˜ ôgÿhPy ýk?±¿ÍøðOïìg0éàŽÜȆ£ ·•x Á>x!ñCcr@Þñ$?9o=å ¬sÉOZ H¯Dú3ì//ÁXïø>ßQë7¬â1„~hXo)òÝËù*‘/Œì[ØïÆÔíÍ [ƒ“a£}zúëH~¶«ÀÞ >Z§‰Õ•¹0´¢Ü”ƒ}iˆðÿ&Œøvß^F¹‹¨3”ëü×é°-ÍuvG?¡ÜY”C{(ý¿ÑZÐ9Ð凴|®î[´µò+ðÊè ´uG¶¦‘œÓ•é2 ­=?Òx¡îHäo΀mî$þc3Çì€}²¥}üÇæÞS¬–€³Åfæ; >;óøª<ï//ówöÿ½¯Ûÿ÷.ûÞ߇ï{‚¯ËЭË7Íðßó.Û?ï¿„òþ÷ÿ´[——×?ÞBöoxÀºüX½ïä]îÿûê`åøÿ÷ïFù~Á×åß»—xýà:yÖtt«wyýsû…ökñÖX?N¶î:P)û/ÛÙÄëÛ7Êþ zï÷i÷ûK²ÃEÇ÷hˆMÜÿíOÈþ ·ºGc—cÿÇvè'ïÞ{Û÷hˆMìÿÙvÏ—üÚSïÑÈWómdÿ϶=¾±ÞÈëÛÖ£ìZZÿk¿¾º•î7’k5Rfɵþë¼÷q#ãÿ¶g©¼®^ÆÿmÀÿM#¥/gx;3‚ÝçÞ!­mdÿ×6è7›tñ/¹ÿMèÿÆNâ_6pÿ›ö _ûø— ´¶ãš^öÑÚ[ž×2ƒ¿sÿ›tû¿7ðü7aþ7Ž Nk—øhmKZÛÀøßüߨ¯sZÛÀþï÷~”ýë”ÖÞáþ¿§›ÿwxþßÃüoXœÖÞÝØžÖÞaÿÿ{Aî¿ü8ËÚøÁdë®cdÿÕvØÿýÞ#²ÒÚ;Üÿ÷î–ýë”ÖÞáþoýQöï¶iím^ÿغå6Þ>­½ÍúßVØgï”uLko3þoÕÅ¿½ÍúïÖ”œÖ6½ÞžÖþÆgw¼Íø¿5’ÊëêeüßüûÒÿ­­gÿï–zÔ黿[¬çþoAÿß¾»cZ[Ïýßú{äíÑÚzæ[|´vèPž·Ÿ¯´žû¿Åwÿ—XÏó¿ó¿þrpZû(ÆGk_÷§µuŒÿ›ÿë×vNkëØþÙœÖÞÉhOkW–«åßdüßTOå}õ¾Éø¿ øÿVÙmÑZG{÷îy“ñäÿ[OúhîMžÿMwRûÓÜ›¬ÿl¼€çsíöǨ4×êw_€XËó¿q½æLËóöjäï,ÿ6¾Œ:küöÈôá=2cwƒ®Ö¾ÌùžñÕZ^ÿß8e ü÷À|`“¶ö<Úóv€ü[Ëü#øÿ›ªüKéˆ&×2ýoý¯½ì—·]Lò–tòo ÷ð­¿ü©Ñäºr_\›aŽ÷¹†åßù'÷¸|0ÁÚ¸ÃaÝõAàgù·†å߆G¨¨+$c¡Aƒ‹ã?7Üo÷ñþÌ(¥Oô Žñá8•5Ìÿ6€ÿ¯Õîÿ‰¢þêÎKÓêdüø¿æ¨>¯î¼´ÝºóÒ6slI>³\¼Áë_ïÌC/·oÏ lmóðÏÿ;Ï ïÄöyº³®Þàõ/¢¿5Ã4¿ ÒÿßÑÅÿ½ÁñOïôBÞ;uûN£”y´öü¦<ÿOÆÈU¨Îó.¸_îIšpþºXÍöÏÛ°ÞH¾×f5Ç¿¾½\ÒÜk³¾Ÿÿ^›u€c¹g4íßH%"ÊÿüõÑmkfÅžéú=*«yþß~DÖ½HÀ6}k[u©º^î7é/¢Æòª£‚öõÓjÑî ~‚ìàhL'ð<Çó¸¨t‡¼O{YB]±ûíJ¦Ñ\“.,Õ è\Þ¥u8[<*ªÊèõÎí/Ö ®ó¶¢ü^üßÀÿüßÄÿfí>vñ¼[¨~O©0)KÅ~¥|€Yiˆ·§5¢ÿô¡Ï0*Cww³ŸP."x9óNºÓy¦•VêGZ¦0ÞY3=Çh»’mGü¦‘OV‰ÜoÇ8ÍEcœ èã¼W£¬m{ÐvüÕ?ía­øF{Ðè|/3¿W¡®5$Om [©¯r/cíBa·6 QV*œcä™ ˜f!âïvʽN<ŸÈï¡}=J?Að8eœoæ¨T¬ªnË”1ÑvÚ㤠ïé”{%KÅRÔÙ@¾®ä HØpïË(?`¨ÖèíÏ©À˜%¾èö‚'GL2•Òþ[”»†CÊ]H_(b_ܤÞeO÷Ô¸½À 6Ñ¿Ø;øE-Ûkýh! ùÔ)9£Ìî*ÔUùJw­–ÇH¿_•Qˆ¹UJNOÈZï‰y$ÃÆy½™Â»›æh¡Dx(pù,iükË{ ó霞4ÐtI&ôdmÛ æGg+9þ÷ÍsLÃÄCF’OQUxóª³lºJwÏ¡tÍYMôì¿ÏjËÿ7ëÕ3}^/àt–ÿoBþ¯,óÉèÌÿÞÿ{còœ«¿‚ãŸßôÝ(V0ÿ{üoå°ÿš«?/0Vÿs§/îò}\ûÿ×êÎÿ[Áò-äÿŠst&œ¬ó¨~ñ»%2&³âKŒ¿2Ò¯Õ5j=Ë9þ}í"ÔS߯Ÿ¯¿œãŸ×>‡|ë}p,gûw-ìßcÚöZõéüL ¢YÌ»=´Ztêh©ŽèS£EW‚‘îÜBù‰Ž)/è(º³ü®Äl;xíWN»åý'b÷ ú¿Üwÿ‰XÆúïè¿Ë;¾ÿD,ãþ¯Aÿ—·¿ÿ¤ÝÙªËXþ¯¹ßëµ»8Ïu7gýo ô¿åÝüt°¾Ú>å#…ËxþßÐ…õW^ÿyã0¾ð×Á¶\“:ØÒÁV½Ì:Ø.Çøÿôße2þɕڑöW^ÿyc*ò>ã—·öWŽÿ|Cg¿þ•ûÿôŸe÷ùé`£5l僤ƒµ­§UîŸç­áñ¿k…÷ÿ•íŸÕ§Ûëf[NX7 ±îÚ²mqüëk¼þµz-Êv ®¼Æþ¿Õ/ùΠxÝà¯ìž‚:_êðž@¿3^ãõÿÕÃ|q÷+Ö’>‹¹-Uϯ ü%¹Ž_ hãxß½ eä³Ë;³êÔ³(jË™Göë€GúµÝÈë_¯oÓµý ä‘3hßÎë9Tg™+€GŽ ä‘Lÿ¯?§Æý/»ŸÓÿ_þ¿6ÆG?lÿ¾ûwE£2]ã‘<ÿ¯ëâ79þéõ~¨£O»½¨ y例>¹‚m¸F^ÿ[¥³ß–rüÓªø¾îó–u×óȵ‡|ûQÿûA¹â®‡õÿU.Ôã;ÿ>5G.eþ¿ªùtç¿-åù_ý·Ñwþ[ß[ßÓ¢¿S8` xûR–+Ï¡^ÝùoKXÿ] ýwi'ç¿-áø•È·¨ƒsnúûm–0ý¯œêã_ï_Íó†?ÁßÙþ_ ûé#~üë.æ_öƒ-aý%ìߥ÷ú³péúKØþY©óÿ,aûoì¿%—ýùÛFÕÆœOüí¯ëýmÌÅìÿ[±åäýl®¡ñ·Åÿº¢y_òËÛî\ ÅÿºB·m1÷ú¿ä?þ6Jão¯ð¹@!°1*[Ìþ}Úó±qÖÆ7×Xwm¸†:¯s;Ìÿ—_ýÓìÈ»íÈELÿË·!ß–6[mh0;rÛÿËaÿ/®Ñç½};r÷9ú¿ø‘öíéíÈE¼þ½ü^ä½»}^½¹ˆã—]Çó>;róÿeºõ¯ÆÿeÀÿE{üìÈù„[K×Ë3.îùÈY¾™Î¸Ø­žq1ë4)Dñͼi!™3-Ïw°uÜŽÚ%ÓýlÎö,‰çõÁåJ¯-{bT¹òÚr¹²£cñ gd6çHÍùœžÏ70ÿû«Üÿ£ÚœT+àm» û‘Ê–¾jŠEtž÷µûä)ï“~•ñÿ¯ÀÿW/ôƒÎAˆ*ÏL—2‹žÅ´<ý9¯òüÿóÿêëÁÇáUŽþë}>ùÚ¸(`öB£sˆ|ç\ðO$3kÒ„Eî…ËQ|¾D4Ì41Ô#m b*Gg_Lé*׈­J‘j³¹_&›Góq.dþ÷Z£²~»Y½'`Yr˜÷ÙEY‹€'°“(^Çm~ß9´IÖ?þödïBÖ^ᓽ‹7ÒTɤõàK ÏŒ²¸~“'ÏÖ¢ó)R1È7MžMa>ïJâ¹;æMèÆ ÿOëÏ¢~(+ð}I$Áêwž†Œõ¬ÿ6.ÒÁØ‹`,}{¥söfaùýz>?Šü.Ša»t!#éh¨oJYšÈf>00RÞ|²—•Ì ¾=ˆõç±Ôóü7Þç©ï‘m.ZDõŒÒü³ywr¢KîÃ.¥ó½B⃺îoÔmÎ6E ^èý9c¡É‚òyDãŸ|ƒû{ofÌ7 õL+Så#ÛíXTxMQe …Á/ȸMS¶Ù¡ÖÙ:7eèÜ+ÛaΘ/¢(=[môO婜bn²{Š…2¬ä?¼ƒkc$ì“4á|b’ð*âM³bëAç&M«FnåÙ ]„ÎSÂÜG”aÎ\ŠôçeMSÌÐ ºÀ–ª¾Gº™¦—e,Ôæ­Žùÿ’ ’> / Ô—ç³þ»8GÝYoàtÖÃþY Ûÿ?Ÿåÿâ>hïYåOš¾<Ÿã?ëöÿÏçøçE—ð|¡Ýùeóõå=º32_åýÿóØÿ¹H·ÿËÿEÿóÕýÿ›ôûÿ_·øÎ,›°ÿÿUÞÿ?ùÿ"ðÿù¾ýÿCuåy¬ÿ-‚þ7_§?Ícûwìßù´ÿ¿AÝ£pv ßk­ù4š”û1/*½Bn‚扎3¶ÞÈ&~ç½1DOÃô iVz¦t«ðþ Ú¤´¸Á3„Áñ”)îÌvŒ«LW¶&¿K«2ÏPsb¥·²$*-Ëëµ–‹îJÖ]æÄrNƒ¬¾ÑÝaóôWÝ`¼Jñpä×ÌXh<Ÿ8Ct·†‚GG†¼†üÐ) S¨^k%Ò¾6š•qCÍ™ÂÛ’ø<×÷0ê;#º§ Ox‰ðLUBDo‡x±Õû‡mäDK¿°’cwdâ½¹'µé± ÃheÖ=Nj§*Jˆ™IÂ0s²0ÎÌ!3£„©j¯èZµ ò'Üh®º(BÛ]fâQÈ&ë£ÌÈ®>?fF¹õ9ÓŒò‘êóP*ÛE}–e»ëÊÞ¡+Û-eø&—×ʪÿðÿ@³–_«Cþ7ƒoŽ•c’æúõùÞ®qç{[+{­I=õ½ áÅÖ‚IøÅÇþ¦`€§ÁÓø/ÁdcLÀk•Ì\µž3V»Rc'þmƒ'|ÜÏÔÄ…½ÞȨo=Á1‘° Y43ã„!õ”·eæxŒUÆÊ„±Ú!ºÊq:«§8Ý8×S–nœLºq:«§8Ý8ÇøÊvÓ•½8|¬FŒU¦ßX‘½pûétà¡AÉ y cO±ÆxFã‘z zΙ笆c®q¢·.zÓØ®L®uQñ­`"Æ77ÚîŠÏ–xçJàñü£±©Nò­ÓêDŸÃlžpÇSºãyS:ùížÈõL/ %™ÞI[¡öÞ) Þ–´qÂàJj¶Žó^vÏŒŽÊÊtGØ‹­Ê¸fÇGh» uË3 1MñvWXÆgÊÆØ]ÙöÞ#çbäi@y6p©ÁfWÆ 4gPøCTïÖ*L¨£Ùs 2t+äáBaVž~Ìé)19½6Ø 6äÞTûò&W³˂6&á?÷ŒÙ“%<]#DÙ@:s"Ó©du¢>ÂW<ç:y½69PÞ‘{x“#å'qy”U2ϘËQ¾ Ê5 WB¦Ó•ð€pX€±®#ÞG9 †XÀ^ÞDåÚ`˜Ñ_G.`Îc˜QVéÒ,û+aŽDYسeHBYñè4×™)nÒ}7tV.ÜÀø›”±=‚ÔÔÅŠúˆ í°>â3…Ë[¶ÞÉ3Ϩ8þÒÀñéCÜËA/d‡Ã>MNêqº ŸóŸÁ—”q1€1cûPzAìŽA‰™ý šî •ÄoðC¢©c‡ˆkš|¥3feÝcJwL´ j£¯Ìè¡Jæ(³Ç-\÷õt³_£›ÔÞtº1•õ’nZA3§ on…}>C´#ñ.¯@;9gј/‹(ÈÑá!æ³l¢Yž.1r.Q'Æu”o.uu”qŽÝÜfªu¾{Œ1øê¬lí䎒4ðÏÁAø4ÊG˜^ÊQ¾ `ÈóÑ„„!0$0 ’Sé íô•÷ä©å5Zn£áW\O§ JÉ¥óü¼;¨%×:H¹úÖ‘Pǿǔ™Ý÷E°XƒÔ£Œk_òÚSñ½ê£Sš|0P_n†wLµ•·Þ€^å´ÞmHVušÖ8üT½%L©³<á½(×tûŽhÏ‘²9щú÷V…É3Øï‡îÜ4øyaÅÿíŒ?:G•Îæ‡Ý=jþ»gÔ‹†²{D,Ý!Y;N=cÖÆg9á=¾lÀ%{ ¾{ú‹8öuIÛÓ“y)¿úqGøîJÊ#Ý$Þê¡øˆ¾{ÿÝcº;%Ö{#)DÞ±§ÞkA:U©° Î¤Ú 1¤v‰ˆÃsr ÅžˆóÉäC¬.ÌÕ!d‹h”ÿ‰âñßJq~®{ÐF°{ð¶y¯ÑÙ]ÚÙ h/x>ïuJÖà¦õ^¢‚S‰ qŒd—ÒüT÷—qÖÙ–]¶CõêÚÙ²È»ŽÆ_qªmÑ =»ò?ûõÐþ›SiIÅt»QáDû ¨Ín-Ôp©+ÅULj˜šéøï+’ð3ybÔóòÉwLwšV “µ¯˜b-å Äòã">%U•¡Lj¬Ì—_!²i~èÝ¢¸æn‘•òshrÊq19å]c‹µ«÷ÇDè96Ì­ž+2Iì Tòœ¶=¹Å‚> ÃxõŸ~ƾgú…oöüu‹2”ö¸F]£±Ã‹§¯vϨ(.ô„—¢ï–Â:au§˜’aËM¦5?òù•^y­tÉJgiÜ‹ÎÒ‹ïÊùPþDgœuMòdˆâÔQÒ0PÌ úY¬ˆæäÔ:Œ{ŠÑœ(c½ ®•Ɔ· ßJã Z”çA$âív˨v¤ÑZþCÐ.íIÊÂ7ŠC ÅÜDVE4'„Ó3êqX3?¹’2é“ÿ‡oùøFöiÊDS>¹/ø?dýý¬™+c«‹Ô9¥9*HiÙšZG>V'õÝ×o‘}ë~wrýþ¥ìwlezáSúáõºÕ3V-:˜†h0åyo¶(cÈï VݺýÈuƒ_‘y’K'„{„ƒ¥!ÎÒüZçìã"©´r‰³tç[²Œº¹ËU÷üó6:â§Èçž±Æ&ý2x/=õ–ÓS&ŠK+–ȽîÇ÷ÛKO­±—ι÷/ 3ôð¿â]aso=o—þA<ƒ'Ú%Ý[ ßɾ»u"Znc »©¸ÖZ˜xªµpÀ;阳+ÖåhÅ@ë¡…)µ[gúW¿+J0ŽãÅ«•ø¢èO¾!ÝX;h¬1ßsHvÔŒ0Ö•·göíâxê$¼,L/%Ü*L9ß ÜÌ/°AŽçBÈ3¢veŒXæ1óÚb h°Øý‚°eÔyi/sò°ß ƒ–?%á“|ʯäoÒÊ­1Š)$§@;=ï~Z˜]C^³m‘>U©³C_ØŒçðšŸÅdüò%ÐúpƒèéÚõ§kÙ$šë|Ïi:{°d$ËýX9Õ±º9´2Þƒ±¥1Ë7 ° 1ÇO$xhý”./°m]3\$ã?¿˜êˆ¾;jâaog‹´š °s²û6‘„Ÿ ¿(übñ‹Ç/ ¿dü¬È7?¹wCŽA³·Uù2Õ©ƒgrÙ=Z,‡(!´en³³#I®Ò£¡OÛÊrDškücfèÕ±xO&¼¬™¹©Æ>)™±Œ›ñV%ÓžL~eÔaUÏö¶vâ¯óé|ùž,1„賂%½VÉêé$ùhž©åÿg}<´öoávâäy ‘2¾#¦­žrŒ¯I$ëûÒAY™ðwËÌxOSBÄǸ£¥AÊÆzÆ¡¬Š«4î«Í{³:¤o“„Ù†ùÞS?_ùºü6Z×/»§ï´Õ]Æa 6² ðCxE¾Jó„ôÝ ¾a/ˆõô'_$Õ—VâõÊùøO)SãÊÂ4¼4Æ”ý ¶9û•<"h(ÑC>(£À;õí—t—¸X/¬ä{KÉð^tØ “f «+¸!Ä/ W«‘xk¥}3®ÄGW“ÍFe¨lAìötàË5ä±R^â ‰å"<£Þ{DÚv䋉Uë&û†ÚA^²ÙÒ(~Réj_-ûYOc%¼ÐAe< ùvi_áÐÝ ò.óFuÒúʆÀVk\¨¯”¿ì!!ÓjC]£@åjT–ÚÀ?ÚÈ–mÒÚˆÍTÛ´¬µQ®¶~M Ÿ‹'L˜`:3Pê'Ó¥¾”Uë–ÚÑbˆ<+~É·´ÿ§—zÏd=꥽]rˆ3Ÿ­Uï‹gÌ¡ïÛÔ.ÿµD§2ãŠ}ìŽ:¯J¢ïíqȡν!¿¢RÃ%ƒ 2 V密!“& <ãÑ'ô‡úåÃ ï µOŠi²¤È󸼣1NŒM)ãS¥HÖÊ2Ÿ¢ý"ijH¶P>껾ßÔí¤ùà{Ԭꞇé}(¾NÆõ.¼GzŠE~ŠL Mv—A§ƒžfé»™t"à<ÁdWòh?g3ñòc*‘F3ôK;¾I»^ò 5m2ùe?¨ Ú{¡4R üŸê‰&hi.%N ')–¤Ý¼h´<½¯³ 1'KP¿ ã¦êzVèy¯ÚÆmzûqK¡sù*ä=C_ è5^î‹´©û"‰~«ûvúIÙ`P ó/Igv7µØÝ £å¸@‡‹RF@Æ—ÇÚ³Åsû¨MPY”I"²,&’Ý'~ÀœD£,ë––§,?ñ.³z?¹¬c¦ûDË£‡ÈØÝ!rŸƒúíô+žê®=Iã'†à=™Ú¤s”IžP›€?‚¾ã[啾²ÏÕ³–“:]ï ÷þxÎk?Í'ã %n¢3¡OÍ´_Ï]Ð.ù£uïÉtÅTÏÉóY$Ïô›Aû¼L粑þàVç­ÒC1×*÷Ñéý‘çFµßW‚2ñÒ¦ª‡µàŒ¸>D q*ç#ôyiÌcé›ÖžRr—YQ(Ì™PKgPHÝEê[Qšî"ñúK°q¡=:ÄiFã‡Äk¤í¡îϳ¹b¡ÆbÖÐ=†j?b–ÒùkRÆ,”ãcRy^̬²b¤¿[}ϪÁ;•£ü_ùV]þ¸0‘}ž&"2Ñ–<ø¾WDX‰ˆž‘r¡VÕ1yèCü /þRÆFü|zþ=Î”í³”Ž¬uZ‹Å”Òu+2fÞù¼94¹BÖŠÍÐy "Ëj1¶À¦³¥¤ GÍ¢í8^„4{ ÞÑÛû3Òó)¾”Æ‹àN|AôϨÿÅî[ôPåQZzA¿4Gã!BÒð;+„i²¡YB„Ár k"|ª)Âo ~7„ˆ„äîbÁo3~; Öñ- ­Ü²Ý÷âwHˆ;«…è|=‡à·”¶‚ãìê…úÄ,ü0ÂBI•¼îãñ3[ô:„>C÷éµ· 2—ÆX݃ݫø%Ýk‚ç5UwAn¥x½©£(®ä|rêصӥm;Fü"±^ü‘y¾U‹­“¾k[[œÝæ©¥þ]T†ùq/°Ó<çëqŸtŠÔ¢£'I×¾½X­ˆ˜RS…Œåž‹9™›!žñ(dçÝHòŸ¾g ó5ðãXÞÍz{´Ô Œ"™ú4µD].»=½pbÖ ²±a¯g×ôVlÙvZ &ÛÆ!N§c€éVí'Õçc#ŸÏì&Úƒˆ¶f–HŸOà?K<»púéô±ªˆöj‘.Y]Lw A¾ª6²…Ö(ÞAÖ5iöÕšRY—MÒùðyjæ<ï¡y(1 ¹>†>V—‚g•Ëø÷®d»ÒX!×Í:uŽÌQÿê–„¥C(><šà­9E°öœó‡‰Í$GÕ´V™æ¡qçñŽ*,ù ãMû¢§t‘û”â K¶§/xBLÖÍ!Ïßçש_¨Ë¨Í;ѵßzÚnÑ—_£/¿n×ÝZ‰¶ˆÚ±ÐÕ .uÿÔÂ’‡Ò ¶Â‰•é„W€í¿NÓ¼»Åÿe8e8C‚ÃÙcî?5æÁጡñ/œ¸=]Þ]‹ôš"ª 8=u€„;¾ãñül9åcXM°FÈ:bM´ÏŒøþ2ö;Oü«øB0_l`œÍ²­Fj+ZƒƒÖO‚Á®}WûpøœÖ²-tã"ÏEÀ˜DÓwô/4°_›¥ s›ûÿûÈéžW$u×vþY^ÑÕeóŒ~«²sly:O)¦ôÜ»N©BG(ÏVu†l»2ïòœÛ©½Ô¶ŒêÝ€‘Ò©à¾`VÛßmwÚdvýw‘½†ÆEÞ%=MÂM6µM„Qº?üò>ÒYêœDg»¡×mƘfWáþÕCÿ=L…= °j¾òCÄ"MòØe)°Á\9w®¦úu¡=;†˜£Žá>ô,ÁMðÜÈqï¾[OÓs‹öðö°Gë`ï>ë°Çé`ÿ×`ÿtcØ£`c|‰ð‡Ù¨ÑÁ4î;ý«tÐ`w¹=GdFmœ*3î(jÃs­ľGüRêY”N²J/ ò¼£ž®ÿG=Ñ oÜ¿Ê Kv * 81³á$5^muÑà”ñ¢t³Eî»O–:—E=‡ò-ú‚±6]˜fC› ý«öqèÛГÀ ¬4þýØ·OßYt$uu·"Ô«Å«¤6„—"ï]…[`{M§¸nµÏÝ’oÑç.ès—NeÛÄk¥Ý­).¯·`@øÖj‹ŒýRãUÊåœQ¼J1Ò(^Å>¸\Æ«oÊŽo=ÛâUŠ¡ós¼ í'²GJîÖkÖÌ­N¤çã»Ýö‘\8ý|+d>ÅæLCùhÆAu ÂF>ûWDé¤+¤¶lM]émÍóþ¸—ÆÆ@›K‹€¾Q¼–ýZqêEu(ÿi=¶°¤2Ï/f%†ôU'©™£ê$]WáýôAÒ9ú¡ãá]WiÏÈÓ]ÂÍ<Ž|Íî—‹l¥+e܉ëÉѰ)vÛ”wÔ8âË*/î:¡tܧFÇ¿,}gìŽIk©>‹Ò?øxhž÷êfÂ´ÏøßõVøß cÖ«SüÖZ8éTkáÄwÒ1GW¬‹ÕØ“”Ha*œÎ±'›E Ú_c {¢Îß:õ¼©.NòÇ#íÎêbÏs¥ kç?ƒ·Úܬ„cŽæˆ´Â‰á¥Ö¯ÑvîÖÇ4Ü¢ö”\ã 5†äŒ™×á#ʳßÜÏÛh½©NÆ ¸Õzd“¶>&ËæécPÎøbPž=cÃ…¼C"Žd Êf1¿|Â}-ÅS&žmh÷´°—h mØaŠÕk[wSÇìˆ:f‘Y˜ëñžÍ2¥‡;ü}g­E;ÃEGIIô%_ž¯” œ§uͱv«¯käÈùsºÃfJw×g“‰Ë´EFt4Þy^ïîDò«×w±ßP¼‰âÓã"öw2OÖatד?Ã{ˆü·îåçíîéùÉ6b½>b‚㌜¯­˜£ÖÂé[’C±%g(¶d)Ú¿u†k÷-0 ù·€!DƒÁ]’ŸìJ8o—1#} ˽7S2eÌH×%:ª‹ë8á«# uì¡:®£ ¢tjv¿(es²ns^Eý#<"œ!* J#y¥;2õtÚÜ ì žî˜çTîéo÷À~nÎä´Ž¤õ“\éÃ<ÚÝNí%[•LG2ÅëkWé’ ¼ZÛã;i{CMq_Ù¾{º#Ù½â¼Ýƒþ‘<"z#ºS¾Î5SŸåºMôɦkS'Ê»ÃÌ4NR×Àw¤7O}šc7Úhtöd•FM; &„§#­ø{¶”eø§uZó'9DëÉ*-™ÖuLK’¿žs2«{`Ì´©ë¦_gšÝc£­{zV²kR3É4´Û»Fé»›Ú¥1Å|•‘ÏX7®·7¦˜ÎæýoQê餹Äüyhî$_}NmƒÖà¬g¨+Ïß·1!K;›?9+ÈÅûæ'Ä|;óƒ1Î*KóŸW‚:?5iêüÈõmäC»R/ü²\?]þ‘åz°Áîž)ýÄSPW’+'ÚNñmägõXú6±«ça *3ÁîH¦sI@ÙxWŽÎIB{qå¹!ò9ÛN8äŠíav¿ mXw!Ó̵»ž†NõÂ25dÅJ'ñY×ÓEöÒËì¥c8 ¯ª"¡‡$øÇ\PùÒ§ç›U[ôÛÉÄ« cw¨}“²Ö6t½¤óÜžB ýƒ¼÷ˆìéµ ÙJ†u¬ ËþÛƒ|u.Íg@û¹^n°“¯WèÌ;3úoQ2ñŒ²ÈW£'Ù}´Ö¤Tεçywn“rÅ/mÛ3šmAåÜc;YžÄJ‡lI°s&ªvŽÜ#lË5{èü}ì6æŒü¿ÖÌZ–¢Æ@ú„}zoß6[’Çå«4xÕ±Nu¬„òO•N÷£óMØ®´øxX­xÁ‘ç½°L›…ü¸”îg—éä áÃIëMúP:g›îjqW6H;]“UyÞsëõk ä3&Ÿ#p!‰ò—¡^ÏãèÏÒ;Í©{bµâ)¾†æcHöv„<£e&Íõ7D[y‡šº7+K7Ï:MÚøtVy},æõýÃd/µOÏ¥Í7æ€ljÚIÃ\t½Ÿxn—;£"ùÅ“K{œ§!½§¼ßêEq麴öcAûC“‘`M"YÂ0E ~E®×gž+óÚÐoŠ7²âŸb‹’I÷!¾Eúñ1M"Ý9Ïû÷Xèj¼°Áz·h¢XO:ŸA?äšjˆÕÎikJeÞÝYŒS´sÍäy'Y˜ßE";íU!ªñ_ýdƒ°Vo“k “ñ›`­|ÆT!ŠÔµ¡3OÒº ø}‰<ãÉ#LyÞ¯žÀ\ä™14Ç2߉º§ü`|L2`Ì×l|éƒ3ˆbÊKóŽü}¨<¯ ßDߪÛÖ†¿¶ä»$Ý"º9&ÖnuŒK/Ui:CÉ]æŽúKý”ûÀÑo­¿Ô×´÷Ðgê'ú¬œM¥5Í)Ô_ê·µq²Yë³µ‰ü]6r¿³µ~g‹;öéúmQ×sý´ûžÔ»ø€cº~¿oÊ»á;èé˜Û4^WŽ×Å YR$sìT4žéÞ´îÔž2î1‰{Ï’tÇLàe9ð2B=sB⧆›|Π>ž×.×Èxض˜6CŒÇ$ýVQ¿•½nøÏ¡9Åÿhòsâÿ)‚}S3fSl‘q>`£=°”\ÐbádÌ[VO§KñpY°ën/Ÿí6óYo+ßãj¬D»þÂb›-c1oÒzv@¼Œ½íŒ[ŽËÓxÝUL÷Ë‘Ìò„¥lœHýLö|)¬À?gE…¨&¬][rÁ–àõ³(«Ñæž„zÃÄ,%7×\± |y ÁèyM ™i„þ:ze—ìÕu"ZÉ1¾æÈlÙJ0—ýYLsו¨ëu㜴¦ïõ;§+n¨Ù51fµ[ÅÍ(¥kˆ“äš’s—ùEŠ[®·ÑÝÅd]]•+ãè=¢*GªºH?‘Á­ž±v5e 0Ò¾ù ÿ°óµoK‘fDš1…üjZ5ÒBBþNSfBš i&N›€´P¤…"-”ÓH CZÒÂ8͆´p¤…#-œÓ’fE‚5i–Îéf÷<»OWÎïèüi»Òe·Ýû©*‡QÆÔQ|V3ÅŠMÁsšb;hvýI¬&>BãLsì^9쉷Ê3³¹Ƚ æL›ˆv•Œ¦Ø„¥”ß]Áã^1ÎIw÷µñþEÞ«#¥ÅŠÿ¬xôj|ZÜGÿ'ÇQLñÐ{.¥Þ«XHçËF• #}ñйzŒÜÏ-÷°EʳøÌø]æR¿»Ò³í2. iàf¥¿°WãõY€‡Œ:B@ç!Àc-ž”`ÔÇ|°¼Òxï=%ží‹g0¤–b9–I·ïÕÇûoÕêÏI¤‘Ž }—t_² $€ü‰–q(™b?¾ÅPÊ Tu1•|Óä·&_‰ÜȦåÄ‹ýýîo^HzGý6Óà»})‹ò‘C¾?9—¨;í­ÅÞVÏf‘+ËÑ‘fm$½ç÷È[)môƒÚA}ٵ䗱ˆüã7 ÏÔÎ ù‚ÞœFz¶k¢qТLÖ`ÆE„ vÊ,è¨ ÚòÔ¤±¬ÒÇòêd­Œ³‹Tãì¶.òÒÅÙUSŒ“26À;‰NåÔ¿9•ŸR®>ÃåÆYd©qwFÏà(îÎèTå¥Ñ |‹•<,D_¢‹êá"^­{ãžc=}cîÞ8T=is½tÖ|ôì0©CP<ä)±¨ºÆƒ´îx&ßO•„g£õ.yÏODF½áÆàÿ¡øÃUä ·Õ.R~¤Ÿ%]3£Îpÿ‘x?$í‡:Ã^ü›ð¾ù"d»M"°ÅR¼–»Õ{G` ›òG'7'M¬Xa%"g–Ùo‹˜Ú?bÎ>É%bÅÊ”Q"œîx¤}ÀµÞ5¿vZ“­}:Òr{²{iKrÊD¯—â"j~#ò­&¯·ú‘TóGá¨þ½(ªî †áð“ÈCõTÿhü{>·ûxÃj_éÝDkðÈ“åÞ\ûvï:y†c°ú~¹ñ›ÞuÈ+é§ 6z(`‹’qÛ½…­Í†ì­îïú½K•$Ï„Æùò\ÅÌ7šQÎDú[u_Z‹þûuŽÌŸÿ7g¯.ˆiµ½EeíoD•"î2+Ã{˜éÜâêÞ½—RÕ¿ï=wp”p˜ð7ÏûónÔñ“.foгGùÚp|9ð÷ÃSïünÝ­ÍàÛÒ~¸ij‹7£óJãÍ ÖŠRmŸ»!‰õ’8ŒSŒª«bø®#3ï 1Ð=­QmãB¼aé·oöæ½Ä+Ô}¯âlÅqØ u-Ïå^HçÙ/õo¶»·͘«ÜO,ÏO|ôzíq1¿bëVØMB”¥b^úŠ"ÏÏRf ÐN6ù\À6Ôóœ"Éîá„Yj¥=7¤Cè˸þö9Ê mHÙh‘UÕU˦CÆ£eO¶•Ê$€gqyÉ¿rƒ”œÑƒhŸ íc‘iÛCYwAÏH†ŒòRÅ‚È=•Éî­ñöÄzÑEDjôNÌ+ÉO9·¥wü*ýhO=äjƒ‘ãÒb£²8ÞînºÝ&^Õm¶&:ÛÊSÜêX*ÿï?zúön’z þåyèÄ'ƒÄXêcÎeŒe][ŒeCFy÷ [1þҟѽø>“͘ÙÝqñ‡YÝóu÷ 'sj@Ì¥<ƒ×4x¦´Ub1ÿ&mO,ÑŽ'sÙ!Œ]t¶ˆˆõÝËAûKVŒñµ'!gêE¼maH“§Ÿfçøë&k¯Ëý$äÃÍ¥žjÝC<Ùû"£¬ï_M´k%ZÓ½WŸÄüÝDÿž—°ÖÑ7Ò­”3êw™÷x–õ•tö,dH¤´‰ú‰*i÷ÖËxB¹o%£^¶cR"Ûà ]LÕÃ=ÓDõe‹°º²_‹¤²‡Áמ? ‡¾ùµˆKÎmỏ¾ þs¾?Ûëu ̈&^E~÷‚„ëýPÌ]%†9÷?L¾¬Š_1ÒÞ‡ˆý á·´[»úÁOg?GNkð¦;Äöô`ß:(#ùtûoŽ'@ãD1h®œ pDéë#=]ç°’ŽÞn®}eÍ}àòšÀ"y Ú÷l¡Ê7^–ø…<òœ¥X1¢fŒˆ¥9‚­G±ßU¨;™á§÷ÊÁ|®?þCSJä³et½ûc1' Ñ)“èLaôƒ˜&;2K~UP’ü€5³J¨>N¹^Fc›f‹ÈDÛæ²1rŸÑÔ’ÌèÔ¶b‹îmýˆâåÁ—ŵR:+Ò‘y:Ý’)~iÅÏaC»Œ\M}VôcØOLæ~’¿•è&Âa|(Ý!*Óµ|c·(]<@{²ôéôìàËãO—+îfš$za£;šüæÈ <'eŸb•ÝÿFò¡ pE¹ÿ¬Ú§º¹ˆsW‘ÌEYšâùË’íJÕÌËë7¥M"Ï̽|Ù£öMÖAu’_˜Ú¤6VŒ®uÉq!üÍcbæ± Ønpýq¤ßêÆâP§cñBÀX¬ / +wúÆâû~cñ¡:ã3HøEœ6¤ÐÚàŒ¥d¿¡'F«Rn4K=O]‹þ=°øµÇ%÷8çy/Eò}F<Ö^ÌIù§C 'Ù©Ýߺ…á·ÃÄ $âÔ1øáYúÆi ±¨þtcCâ‹Â(ýýD‰­Þ°2o²z¾œaô#«ëÞ¡f×ëêªH¯×-Ïó74Ýe%ÿ¤ú^ ù.ýéüNëV±)‘ÐYéll|£³ Ôo¢ïF¼ù}ÞCðÂïãIWÀ»‰ßxÅ{(¿gá= ïaü>ïáxç÷¸YFöU¾À>ÙynVá»eši³K?¥§È¦öYD`^JÊðœX%mÖ&žç¥ÄR"¼7=?/Û_–N>.×S¶ÕŠ1ogÔ²#)“ †™™BLRq¤ WžÓVíʾäFzn…/‹‚ç—¬Hº)ãÎ0ÀBøƒy±‹ìжGc®ÜO8¤dŠ!„G¿#óh)úç¡ü4_²M—„]¸Ž_M0äDUŒ£¹W㱋áÊc¸r.ükík0I¦û'†Ã&ÀAí«´{³úöpzðuœþæA=N£öó¼7mÕ7ÈÞä™üMâWŽ]¯¶R¨»Þ¿î GýéED“Ü¡Ø-òɨk2Þ}Û|W‹ä‰ÒOImО͔„å-tÏMf®™Îðó7…Èû€åÞeòU_«hómêÞ=­uÙÂh¦õD¤7¨wjªûñ²ÅƒÐö„ŒÄx^{T}³rÜîA÷ÝÒš2`ËždÉ3ú¯ó¹ÚNëù ~“U¾}~£Žo›i¯“\oìG<Ü0ø5è™î²ˆ¡ñ‘ùê ÅÌk÷’ÍÕ&_ö.š³º3™ÒÀéú4Í—#í„ ßéö@ȬˆêogãÔßî;ÆÛÁz°´I¦¾H}8O½¯íVº°5̧cìÌêØ~=†íV:# ŠîôÆ·¤™µsÔ5/?’¶Æ¯íÇuý?Clà:?­Á=C”öMoQÏ­¨hÛsß4¸Rú›£R›äšjTb%ù‡Å2iÛ× :ãÖ„÷¹eЍôXD•<›yìü¤~‰Ð‹<ç…+ᘙî¦"ùkyœhà˜¤’iÒ~ ñíQ¥»t¡WÕS]Z¿Ü/ʽúÉýJETí Q©äƒÝylÐ"ðñEc…qQ&ì]‹˜U“&”ExjŠEuífQu«½óÁüƒLê6šƒöfþöUÈDÈŲ¡êõý! «¤'N«‹º´ˆŒÙ¦UêY!‡T™`ZŠï“¡³XSéÞ±t‘]V*ŠÊî´Š,%»‡Ù•P”Œ4É7äÛüÑf%ŸÑ'ôÕ¿ø¼qR>zùYwÙÈ;õ©~Fèx§½·Sj·Š’êÇ…åÆSü Ò<ìšàÙ*aIRLñvé/TïQr¨}9s.±B„Bo+A­%UñÚ{xñxYm("ÞžH6м'CžQ?™ÚÕžÑ?gâ ÔÃä/Qm#Ã^´=ÞÓr!×{³,½÷Rô{Z™enDAnXº’o§¾¸žEw¹{­yoÊØ?ôMʳxûjÇæô”ƒ!ñyá-H€ìL¸¢Ê¥Ç!—Jur©¿¿\"ÿ€gôÜh%ÓºZÆ ôí8³§•lߪLƒPc¯ ÝHpK•­ÔùÌNOiïÏBÈ4ôÍJgÌÁvL­5øNcM2Îýçx[5¾gÐ8c¾Ñ·lŒCæÙy‚º²”˜ïIöd¤Ëùv%Ä[U?ò(Õ­Íu6ù’7(è<«sè¤1‘kvx†>ç¡5‚ïh-U®÷!/ê,±-¼IõøËÄþ:‹ùWeE<íùž {ƒÖØ!Ï óç}rð&ŧìFž L·{1 Ô_y÷Îã½—Êþ Ÿ´^«DþŽõà+ªLó”®ÓkúèÁécÂè¿|.Š­#¸i4¸Uþ룰÷’¸¨Î¡ ±Næ¥1¡yóõéíÓ¿Jù¤®Bç«ã6òSÞ<ï(]Ÿ#æÄ*禴÷Rmýr&áiWèþ9·›¨BG}tx:÷Ó__ùÕ%ÿ¾žNðŸ'?}ŦÓW†°¾’ÄúJÑ'ÊNñ¨}vò:ñxº‡Gã¡2žB“-:™ÒÆKu2¥/]^úxé«ò.õi‰=ýúN]xhÈ*uœC’=R¯ž«ñÐÿMþI4Eó§Ñ•ôGçl«žÜ)ǨÔÏ•0ŸÛ ÇPÏÛ\³7ëùš/K/Á¼lÆ?ÁËŠgïPŒñ*/³ÌÞáX̼Ì^©ÕéA¹.:ë^Àé‘4‹1'ýÜýB´Íõ+ðº—gì¤;v-¥sÁµñ·vÝ0f“5Þ†ò*o{\da~lÖå“às®I"™èGò:æo47íxœ\/.yêË¢º%ÿOTe™Ž¿y«$ïmTiýn’ïB®Ù'µEmèë×Õ}o@ÝOøÏWt:·–Žæ6vŸÿÜü'çÖKÇq1~¼¿üžçd|@©ï¼ŸŒrß7`XSQÞ›´”b†³ÅtþK¬ï®€€ø‘fï :×u8¡OZÔ3zï@¹^´®ç©Wã;´:üb1ø[µ Ãü{>·ÿÞ»NÆ}ÀöÖãa[kaë±›ÌãÑOã±€ãÝ$Î~võ‹öÝÁÆNòÔ +ÙØÙâþ ~·¡^§Ý'íð:ÀÀ¶8Òúà9i´®…÷Hò¯”COíYÅû±ä:EM¿®qýÆŠG¦HSïY;fN#æ¸&Ž/6š«Çô^jí×E©Ó5†bÒj\½çV÷ëšœÍg9Êóu¾L z¾Åo5x›dÚŸúÊøpú.ÏvZþ9xù%dÓûÒ?ëkOÉkm-?)†¤~äõ–I®ˆÌeõ˜3—H“w®äd'WÔ«ç€W öÁ}…(ßbO…>9t&~ózKSW˜‡öõza¯Ü‘Aó>ºÝ8A1º3¯¯I&ÝÀ:‰îøkvyrñk²Ò9°J±ä°=”®î12ɳSèž4×,¹§2ª¾”h ĤÞkj\5%Rtw=5šìc«{fŒÜ3+TmÊv]ž±r_Õ¡‘ë*¶R}Ê·=Ìÿ8œ *œ#ýá$x48A#ÍŽÈðt†'I¥LíàœeTáìÙb ëöQf÷Ÿô;tš$WI²Ý=»H]é׶LjbÒ„53¸iØo›/’h_¥Òu™Ý»‰Úô›ÚÍñIœwFI¥¤Þ\È2ÊèåÞÏÊÈ ö†ºXo7n‡00èmôü3ºÏ =Ÿb@Öa‘zKQÌŠæËB»ÞvnŒ×ÛŽ¾É„Þ7˜áõ@W]Ó!†õ&ëôÅ"¬¬Þ^ 3LÙ¡··“xߤ¢?ÆÓ;c"÷;¨èw}3î·Òaì…KAW6†c¤€`¥+o 2Ä—èy*9ðáƒÑx›¹Ö}wMq´‡|½0è]hSÂg%¢o<¡øšŒM7OFÏã‘Yæ½¥èÛè;CèyDZè9ŽMBÀ'èþ<:‡ó7¼7ä¸$’]!ÃP›èÞ[UÐp¾À×ÓH†Å¸ Yø½bž\ÞoDräî/“e·«õÖ±@ב\Kɽu)á–:ø{M±ÞKiYÎfœtuî{Ì\’Ðüù5Ù:•#/”d¾ _²ôí&þ¾’÷–"e™”"i™dh† æÈ–êtã÷‡#]æ$”ê"C3èõ‚+Zk…\P¹A}Ï7®®/È5$÷ Xs‚-Fî@{í}íöµ…žD´“MQ;¨îgCÚ©1@ ²"¥(Z&qîOBß8AïlCÏ2p´Ö’̶öBÜBÎ6òÂÈ)>.I…ógV§3º·ÒMCÔ$mµúm“‰ž@ºçѺRÖÉÑÖFÑdW[QÄWZÔi]Ž˜­.gÈk]ÎXcJD•3G|zähYŽÃ üÝæHî) CÙ ©$ÿèl8Úkõµñ~D4Îø»ÆÌZ Ìö~êÓ#â}ªR,´gƒµ°ÒüedÝ÷QÑrðñkG{2sм‘öúÍbò­ \÷9ÙêI3ψš ïû*bd|º–SjÖ×F´a¶õ[w;‰•¶(tä['ñŒ5µåPRZ‹³3Χo½,‡þZ7m!ÃÌÕ éÃ9ÅüñŒ"ú­O_-ÄÄ{!P [È}ötÔcºY&…¾ŸêJ§ƒŽuâíb¯uS×’eÁ_‰#}@sÙb„“ Íöt7°›}R†3Ûaž,ÓJBßbM«÷,Aç92²›êa};ùð‘è¹ùØR:FFßçÂïŸF¿ûCßÒ³ñýl\—öh%¥žçêGZøiü=•a0°>Ak~Ý3K±ƒ¸‡fPRj~ã"7þv‹ü”šâOŒ÷9½o|¼d¹1&¬‹a~˜¹PÊ~ =? ùÕ׉ñôç>3bú£0_öÍ¡ø}%ê´l4A<¨Ng–YBœey–ò5ø|*„­Í ¢£÷¼#GŸ+Dç¾»ÚbáéR!ù*FRÁ¿)gIg r8ßø8 úI͵”¯àXrƒDß;ƒùm-òÕ¥B»‚¯Aíãqöw4ÀN#Æs2?¦ãà>ߌø¶˜¥|a©ðZH÷”âÏü@ëºGÊ0s§¬³ë O6в™ éÞîéR†iEÙ´:5+TÁ|ls”­”¡Û"Ù”вééÞátoWÐ ·@)Ã&Ø&YM'-}=¯‚ïSŽá8ýHEÙ¥²Ù4Yôþ tïBJNP§H nµÚÝnñr ÝÛÍòÂ`'KÑþ8fœÆ}þMµµÔÚ!C;Üwí3ß)Ö.InöTã<¨‹ú”–Ó þ¶×•­>¡˜ç'ñßÿȓѽÄh¼yÏvnÀïåÄ¿;žï¤fZa¬ÕÄ3 .Í9åž’uEë6–2ñ=ì̃ÏÖ9ô&Þ=œ¾²Î)&3ðqIñpIʇ¾£¸Öu‡”an­¬3ÚWϳ {ã¾ÞË ½ã…Œ‡(ÿa•-úÎL>7ÆßÉ u)À¼G;•„ÚqÓýF6ŒÚR£{sè×uÐÞ º&º^º¯|Šr!Áà8XȦ«Êïß®ó Öù€ã>ŽŠö‹dÑ»•H ·åk† õ3ðx\26í8 =Oˆ?ç‹ÖmèA蛤/ÄïÚÚÛ‰t†ãýVÕIc4ÉÁX#þð5N-Ý¿¯þlÐàï¶%Ó½sUéþÐN2\Û5#•îï^íô@ÜYÔ$‹Þ_á!eèZíœííu½Àý-"·MÖ•s±Iõsͺwè ÚGçØ6épÄÀÖK‡öÿF‰`éHФ3RfÈß"Šö¬\É¢&îéÂ&}üåÏ‚8C#`ÂF ÀWˆ`ä5tįCï×k¨è[ëø^Ìt®W9ø”}½!#]0°Þ!®Ìƒ~á”2dPÈ&_üAp]³ãX ŸŽ–¢÷Ê»ª€½ú(ʼÚ×Ò ƒpô{z~ï§a|Rø”²ˆéa}âH5NÛLÜó„ÿ.D×…zâÄïBâh–£„6÷c:ÛíÑ~’—,ÒC6ýŠyút1eòEt~?ø'2G=óÉ+ß¿ ‰ŠÛ+±O‚±ö€Ü£»î:Æúh`ó0ȉ³O+)…l‰Ï%hxÂÐïPÜ÷Ú o Ý;„‘&méý†xw‹D1ݘû ]·Ð×<¹Òí£QŸz{Ë 5ÏèÝÅñýS–µƒŽž/ˆÝn ò9£ëƒ± ¤£ï’8¦C<k^$/s´—¾«‚Œmѽcº¸äÁi¡ëœaò° Ý¿)xéyŒ<Ñ¿·é+øµ*¤ïè^ƒ±ø}x½¹… ¬Tº1ºçØ`8fæJ7î‹CË0 Ž˜¢Çn†,Ìd,‹ÊËñx´Ó€[#¿Œæô¼1G9¢ú®b(žÁüñµ£=ÄöÛ#Û ›¸šQ¾qßÁêäJÃc†×ˆѹ1>¥–>Dß“º®ƒž³DóVZvšw· g´Þ'¿ ×å¾gPŠÕŽQ€/ü™ÀsBóEŠ–C~ÏúíÊBMÖ dÂÀcô;û ¤gÛ­0Ñ´%¶ø=iËœQ{çÓ²ñ<ù!¤Ë, ±ØBüžf2²tœ?+LH[îßgçŽö±a ´vÜï ”BZh)Vƒã¢5ð,†üœ¯#ΣoFHAþ4‘?=–{¯”lJÔ,î»ð¡Oøœ¹ Ÿ®ßyQÔWÏòÃeß÷… §8 X_ÉQ¶ÏOsªµ’ ­@~Ä{7¡…EÈðtÏ;þ.ï­êIh®`¡¸<¹ˆ¦ÁrŒ´óÈl©?Wf‹Ð½"Âiéx¾4­Ùvpåf°dq “L‡X‡!ŠIáϧnŶ¹@l“„Éf¡û2¤t ßJbý ºb!lRj)_űõ,Aó-¢E÷’¤[¢{:¦—ä>‚z¨M{´Æí}2J^7Ålœl™º|Š« ŒBq¸Æ#ùª‹q²x¬…Iér0X³B[fÂR0׆÷ÑO[¨‰äPøN?´}c¾“dß‹q¾£ÐÜô=ߺÿßbÀ·=â[T7ô2e¤CïL¤k8ï6jïº<Þ9¡$ƒåx¼)ŽÚBt…§Äjqùæ|ª‹ÕôóèLðhôCŸÏqùd ‰oκ)öãdè| Ã’èÝXcz{úxAß‚Äϯx1°ï} a¯,K¼·Ç6A×FsœcŒ]ŽìŠÄYÔÐ7$ºÿ‰¾ýZLGÝÏtމðü?–É;ĺâd1a€|„úÆÉäsöò9ýI>§ȇFèÌûÿ¡|>ÂÚ±esœxï{X¯ÔôɦïÚÄ{Bd9;´’Ð<‡æ@|¾…¹ _'ôŸeó-ß9|îDñÑqðYèyÉ-- ×/-üë„ uù]ø»"”’Ðz­‘/K’/Ä÷‘– éÀ¸þû'§Xº$ÊÐ}Ò®Å}¾Ëåÿ=ÝWš$_Š ´/Ʋˆ¨ÐÊÂð¸$EM³$ÊÐoßÜß½ÿ^ù!¼®EXg!ýέ€ò®K/|CçP<‘½”yTÆß~ëNß’.&_È ‚õ²b'¨ÿ{IxŸƒä ñgº3zûÞû‚úŒ|'ç˜V’yPXßÞOz&w.C¿Iq„…ÔÂÏÑbnðö†ÆÖ.3—¯=oXk‹äê^H5Ùå§]€xhGg Œ‰S[$;ŽÝCÙÂzŒŒë|®óš)£êôë;ãoúaÄ3è=Žä|ÎPÍWqhgVàÀv¢RŒÙÎï̵¨ïÈϰ¬¸¶ÃYØo;¹™Ü¹–£k†.'‹;×¢ó}vùT§CÜï¿ñÆq,ÒAüqȚΈGô\(?ˆ?Ä'âñù¿â‘kW?æ‘UÛÛ‹îÁÀŸU‰ßS!ŽŸ¢œ{o˜#È×±éïòÓôG¾âM¿oUŸ|‹¸ò-ä—oì@ùþ§<"{ÀçDó#9#>¿øý“@“¶½ƒókþ<a[¬a¬ðÌwò Ûn,Œý׼ÜÊ"÷¾fX€lÒgˆÇO\„)* c«q²¹øœÏàÍ»…°>sÌshÎ[®áì×J‚÷“…pm×-âÍßV7Cæ]lpê?zÞ ª] âõ§~ÚdÐÀŒ? ~òeA8_ ¼ý:$K[]˜…PÛ¨÷ K1*þì±%ÄêÈ7ªÃZ0íÓH— }-Ï’Oÿ#Þ]„ö0gV]¸·x2~ŸH ¸^z-]™›ÇÖ:ô¾Ù yMnž– ù­.Т÷„s£­ÃdpžÕ"¤86¶%}÷¹’ÅRûîëGkp$k´VÇïG÷•߯Œž-…I‚?C¿ƒ¹:t~™ˆ¡5¼+¹óñÍ)îs]lL­cSg%±Tð÷áû¢Ä=äø=¼=5›ëЯ¯•¶˜°8q1þ\WÚ2üyÇ¢ _ù^,jˆ‘ UA¿S1Ù¾X+ÃtNÄÄ<à ¶fïY‚hq½÷E:f^’û Cû.5 2Ø™ˆEUÁÆLpc²¡}¨k kr°[Tƽ'•B[è}wèýo¸\³Ø ¬Ýáùè™)Ô&¬OaÀ£pˆ7.Ÿ£þ3ຠ*ðHíçŸ[¹|jŸÂ…߀O2?ŸD|ªJħÙ=Ä®œîK×Dëkƒ¥ÜýTœÇQ½Ø÷ü™üý?|®ú5ïÀ#“EëŸs?´~ûEq=Ððó‡x1b÷ööñâþ†t wÿ_ò"¼dhô~ýoå§_Ýüú…|2ng¹ïÕ3ÚöwßGoé›G€×K,ÑÞ¯|ræçÕ¡··&½t- ×µŽegÉv¤k&pÝ6ô;ž”!ò5øþ$ø™íb©)þȇYâ~ﯨ]¿„¾¸ZÔ›@}*Çnúßí#’à?—ãüzÐat?Qÿ¼ÁÕ?t\ÿÐ;ñ`þð0‚y‰µ¿·Ù‹Q--Ù½Cï+í4ö®íïBϾRÁqbNpèíž‹ï30áRU¨Oü¦„æÊ¿ý^¤JËf™¿Ù ¤!~/Rð{‘ïß/Bß¾ãýfä+_ˆöaKU…×¢ýZ€Rü_ÐDZ鄟õEÏárÿÞÏ~§àg} ?›NøY'Ð/*¢ãùY_â[¸È·Ây¸^ ï•ßÑC±Ëš½_‘ßë»×ªoÞA¾úHæ_£ùæg±óc£G0öˆéžrç\ȧhpc:|M| ÷ýdÖCHáålŒWøK:gŠú} ½ok-´õ“ñbý/$ÖS4fýrAã•¶œ…~ïøa|¬þÓñ!Ú7þGc„Öè›À(Å0J&ØT_\ì ßó°åÚ—qzǧ¼8÷§˜[ #ˆ{Ï‘k”!ÖíOEq‚¤tpºLõ$[Œ"Îa¿)“×vyÏäHˆ¡Î¢eI(FFßßûqyÀZ广.´P¿S@}qõ? (Ïúu¹ÿ õÔ ?ÿ:íë (WÐ~·€rããoüër?üû àÏOÀøø Ðõ]?A@9S@¹ýóÃ~]îûZ@y¬€òåš¿.÷¹+ ~¡€úUê3Ô Ÿ¯ÊÌ?>Ë]îÝ. ü´€ö¥” h¿H@¹ùz ˜½o(gýº|–ýòæ¨/@gE (Ô¾ùÍ0¿Ï*ýu¹—€ùÅK€|½Œ×.åéÊ诗«€röã%@¿=øG/þѳ¦¯Ü-> ”mÈoh8"^sDü(´¯×wîû¼¥“•µ¦nÒˆ¨¤QÜn% ópñ›i=ÃÅÎi†õ!ãtt'L„ºóØqñá1ÑX`LLB|B\@,#6 .`6;‡¡ƒ `hˆÚbÄF°ƒD ÆíXFp ;ž“À˜qÿPÔ³Œ™ÇŽ.f$zE…ÅDÇ'D'@9:¡ôºùð߯»ŸÐx9ÚY ®Ms›ŠýŒ& 8Š7~ÜO˃â‚PéÏËü‚bf†G³Ý~?ÕOèü‚Ù!Q l»èð„ŸÒ„Gã4.AÑ¿C÷+âr. qì€Ù††Váñ±\ü÷è‰ì v<;á§}úqßãÇÚÅu†“çoцDÍûMúÄ쌴8þ÷ꄲüÙóØQ¿y D8œ Mþ]Ù :sCâÃçÿž|ÀFæþ&ÿ„ ÿÞ…%øá:û{ô}æó[|4ì`‹ävüoÕ™=°Öïñ•“vð»òçÒÇÌý]{™úOtÞunôOƵϤ×ÐÙ_ÛáëüZ˘¹Ñ¿Ýþoó€:¿=Î?æÏ%9:è÷äû«yeí/ml`ŸechÚØzº<€þ—6ùö¡÷èª÷èÎge ôæ±±ìè`|€ëûGcÉOÿ»¶ÅWçÙ_½xÀÿ =ÈË::Ø)$ä^çÙ'_½d£|õþ±~ßGÇ€ø‹¨˜ È¾žþÓºsCBØqDåß­‡weÄõï_×/Ò¶ÿ¬þôàwæþqùy„þ¶Îˆf³ƒã(Pæåz:Ib?n;t~x¬_L<Ä©Á(HýýqÅ×Ú3¹¡~L#!9–Í@+‹ß™S~ÇßbTñ‹Às¡D¡hl –!a1Ác‰áÑÁ1‰á ñèÜlGni<‚aF´©žÎ8´¾H!þ«†Ç0Дò ˆCŸ{x0›f,“áÑŒöÐ)CÃhv"j ŽÛÀ÷ ,$Û@\éûÏ÷I:€ábiîh>ƒdžrvtûçôýDŒ„þ,†ý(Þd´d€NÆà66YxèÓÉßìW9·]\A'ãÿ‰¶±>ýÍöx+´ïõì». qœ4÷gý- ÖŽ‰ŽJæÒ†ÆÄûE±£C b@’_TÀ|Ïèð öw§;®ßý›îý@» iìÜ ìågc7Í=ˆõ­Oþ©^àõ€ ZüN)âñkö] ÃúÖUÿ´}¢Þß®ðŸ¶Ãåç{ý%„ÆoH?4|õu‡¤ë(“®œ|çâça˜—Ÿ“½üf8Zãé47GG”ÚØyÀ '?K'+”7w±´C©…£“%J­g̘†R×ÖÖøy»iæ3<¹mñ† ³²¶ñs·°suÁÏ»Ms˜æäÕ°©æ|çmì]­gXã׎æ®\|š“Ÿ£j pkk+?+;KWt-7t}§€OµžÊÃm€÷¾¨Ž‹ç4ËïòÀ¬9O³âæ- òñsq¶¶&òVæ®æDc(Ol{pwt¸<£«9ZÏ´vü®=n /?[7›©æÓüœ¦9z¢ñþY:MužaíÒw ‚§ïÎâ21wstE×ÑLñä?÷}üv=/ *<˜»°ÙAq1¨}Ϙ¹qàÅ@‹âa\Jлðh6?%Lcs!4ÁÜ¢ÙI±lÐß`0ý„¹qÑ„S f$†…G±±q1A ÐáÑ¡?¬ŽõÇŠ ݤ±˜6šyÄ0ŒG<÷|lLx41»pu¯¬ÿ@µ‰zÄ1? ⟔…ıÙ?©0g.ûÇe–؈x1$¯–}$”« ¢=T6ÙcŒÐ—ô:°í~ºþ#`^@xÞȈ¨¹b?*Cÿ^Ö·¤Aõ‚XÆ­7° Ÿ¸ýì/#&”~*¾²þ9†(ã“]ÿ:¬¿ ÕD(ІCéo3˜'WÜÁñ1…ê%mÎê‡eø\øƒzÖÑQ t s\äû>›;;ƒáã<üml-gXû{™¹•£õ ¼ôõœ¦¹¸Mµþa™£ÝT;×mr'ðïyGrÄ£x´Á<7>ß„ŸÃ`Ç„L¶1wt±ÆøBÇßõ1výU¸kª¸C⚯}´ðÏÚÿ~á{ÿÊßÞ5~³lm ³ 蚸ÙýñÌGlÄ\tüÜÙl;œ&”x˜»ÂC¹ºðöå?õëkçG~=<š;K¢%>·öŸ‹Oˆ‰c÷q£)|-ólt2qŽSyp8Ú쇘4>yv`LT<¯ ´ é«Ë Öļk†'ô5ÇŽ…å_^O[›1;œ;¹ƒÇÐŽ ÑÆyáo#*:5–ÿ}e}Lõ]øÇuðKý­ƒX?ýí<ê|H@#0g$ÖÑqqè÷’0ФalT07:2:&1šÑ·ÊF‹6îj¤¿MÂñ ³žh…;Åòêk9.‰ÿ †ïºÁ }Wå积wÜF_p‡/˜@ab“ãÂCÃzµÇéêé2ìÙÑÚQ1scS`ˆfL ˆ‹d˜ãs+ÆèS¤Ÿ·ÁOŽ¡u+pHøT|o(9ov\\ haßynâ`Ô#"öÎŽN@K·h‡XðèÃñ½Œ€„p˜tý?%ýíú~~þ“ƒ¿?:ökàÁßÏ?ê;ÿ1P¯ÿc¹üîᙎ <—HÑ]ÿJ2`ÌFÚôc”Ù§‡ÆFt¯z´{bAðº’w²Ç%ß­ÚÕ~ó™ê†¦ÖlÚaG­Ô2Îñ§UÚ”Ü*y*G¤‚#Joßc›UkÞ¦xûFÊì{Ï»oTNϼ¾èÜà¨ü™Á‘Eu=Ÿçç°/¼%y;‰Fµ~49hUâ½Q4ã¼c¸”ïMóŽ¡s⌅:®9ߘÒ$±¨g·XeäÄÊ¢/åùQwª/ÜÚ_óÙl\KÔ#ëûÞsïÞ’¸ºïÚdOVÝýÓÛ0ÃóÍÓÓO4ȯ讜yè´úÕcë6Vß=H“\Uà'’M=+ÞZ^FÆÃYâæ(}2@eßáíÉóîšç’îÌÍobÔtÝ”=§lÑRÑÕöèØÝYuc|åÂŽAØç ëiE+Hæ+¤EHTSgOÖÎ ŽÚð$È›9½[9* p[·åm 6-JtÝK%Òî ©Ý'ß:íÎ.m=+sä™ó²Úª?¿ÍæÞS¹/w[Ûnùuλ¿n8²§–xVN¿²³K¸Q­ûÐþþnóÉ-ëšw];=ûú­î¿,ßELˆnýz 4Ûæ¶U£•°vüx!•Lj9úÝ“à\p™c<’lþG-]Jê‚8c±{XåFÌ¢CGCnЮtlómû,9ªõB~ic¾Ú¹æ¢ ÏC“‡èTHd9îmTw,êÀ˪LƦ‡ ~(žPÖ´éÏ›S ¶6%¾£!W>óQ]fm°Q–Äì“ù^E’Wékh½[Ű’‘)”‚²×ƒÖX-¡îlR%½ ­ÿö1ÐÝ'Ú04JNt¤èÓo7”æ-½®Õ.u{¾Wè=ûKŸÞYYÛõyÈ‘ZKÿÒ•7oÝÚÙ¹ýÚšTVKýi§ûog\«}³§Æ=Ô´Rôžm¹¾C‹„ÖíƒbJŽúBöÌ…çûß÷ï:UzßM/ze—MxmrCÀ¡å5!™Š#bš g„=Ô¿$ž¸®š>EH,ÔMDcì™cFµåÇéšZ^«½E×7÷î­l¼ª7¦µ`Ù¬¶•ÍÁõ¥/‚ÞjÌØ¹…<{ØšhñsI}Ó8Jè"Ì}ðºö VÍ—]P¦U"~X‰µºiåæÇ7k%8w»ŽÐïܾøzÓ77Z„Ý;ôiØíÌèŒZùËŽjÌŠ)M| pdJb6ÕëIï ˆØQ£‹Ò$º÷*vAï§À’ð€ÈÞëòQW­ Å&5K4½š&œéj t¨~o¨F@£¿üG»ð)SM¢ï”\‹°o½åu×ì>=dR‹Ñëâš—¶ê‚3Sʯ¦éVö>;~ü­òÅcõ9.‡Öè2+vî9Ö¨/r¹Ytk›û(õÖЇBæëœ°¯ò S"ŽÑZ[A¯tJ|åv/‘ûJÚä®Èþ‡*é™Ó\¨¥ír*8êŒpJb·õL¯½‹Ìן;ßšC½V_m÷¥«3çQwkÃþJ'ñÊ’Ô©™Ú+—ä+_µ¯—™îÒª.•Ô{= Ë|µNI³Û¤Ê'²Êù•Í"™Yë*å{nÆŠJµ¿Ü)ÖoØô$Ñǧ7*Jù†¹éýË^’벘;–o“{´·Ü†Q[œð¦óÁžÎwOOµe2oŸ)gûø”üae³íyLä%Íy±=áz‘%ŒÑ^]t mŒŒ2kö}ýwg}(å/c]çtG²u«G¿û¸C¯þðRå¼¹¹” C¶Õü%™µâ؈â¶dãò.Vü»äÞˆNÛZó3J)m£_';‰< LµªwÒ^rÇUùìZ¹Ò Éj³=ê™'X­õ¬Â3ë»ÅÖï]5xÅú+Þ—0šu³žmô—Àe‰\.«öqÝY%—½ÂôVÞzÉ mÍùÎç.K¿xð¥éý—†5qÍÞ‘ÉOTÌ\+Û<²¶ÉKÊx ’SÊdÅÞž¬n¾™Ý¹—óÄë‰{mÄ´FV0)¯d§Bζ‡ã÷^>º¦ÇÿóÁÁ ÓÆWÛd2µÓÊ£.Ø2÷5ºÈýùWªÍ¨‡ìݱ¦Éô™¶GThJ Â2£':¸Ô¼a»âP2»-Ö?µKïé“wß¾õÔŸ¸Ù˜Ç¹ÔP893Gÿ˦&S˜©ç²¬$0wu¥Ëµ{ÝgäOwu»wÕï]û¡uýÍJͳ#Ê+жèµE.Ý5úbdòËë±¶û?ù(Å<°­Ò¦ÿ í ¥ÐµÓ5hê;¶¹üÝc¥âú]ºYy¡£¶jtœ)©êiÛöùÖ»K†W;{¤GÖl,÷ê)ßF3Ù—ÅJ£Ì,H‘{£:ÚfE/1Þ6öAÅôÈÆ÷óm2õƒ|ʾ4OkzðdÐçK•—Ú›³V\/cx…:}kaìù¬jó¥Bê>6Ь(ŠžœéiMIÉE¡Nù©®ÅBnÉ_ê22Xg†å«wû’Ü»õ¹õw»bJ_ô¼š7^Ivi±{à4ÄùKêÌÍÚë/)ßÐ^‘3xÂúêê;óD [}Sß½˜Â®?e›=×¥p¬¡Œ~§:RLeºFH›²µÖïMîXUc»{WžRÈñœÑ#ß6Ô´?o\±½®§-°õI—ºl̓ã{¿jädššæ•§Æ62†7È}²xbc4«'qþ]vdå™T¯îW.´ImYóªh%eÛe¶½Î1½4~ ³1Hõ“„²nD“mj=)´¢»¢ õÏ…WpÊEœäIž^5èšÑ*‰ ‹n‰»u= )~¦¶¬q+У{O™¬¬±3V¥ã”a;UUýUF)¥ïW|°Yaßýú¡á•ïe&¾=?øc~¯t™Æ©xÇ<9c/YÙoºêòU+ç™ß1•5Õ¦Ý`Õ˜f£ «WÒ?5µzel²8‹n\g8c2Ù™­ï;ÄcÒ–”˜‰·OéOP(&鹟ÈÒ]wóи둎—&ÝcF>ÎQ¼jïÈ.½oÚ³.¨NuT+¹€ñd£Úpæ;¹ÑIšZÇÚ†úêo£i"6G{Žr÷˜CóNé¼?¿iì¤b7­¨›ãñôc¼ªgIÜÝñ׌Pž7ÝI+aÈ›¸¹77[§.½›”æpØ)E‚*Ϲ8<9=aW’…êšùÂ…œ½ØU£S:;ÕjI ëK[ô—Üg‘•‹£"_Ì Ó›AÇšx04[Î4@k_ˆÿ³“ÓÙ{šo¢&t,´=|…msÃNnû—aÓìóæ&;µ}¦Lkpô:²zjþ½Ý6§7åO}}ÐÚlÚ«…Ì“æ—ÇY™ òˆ·°{2ÚrÙr×7aÎnãÉ¡îskLf¹EsùT·|†áÕÎÙ‡ÓkSoz=4èœÅp¹ïòr±Ç®%e>Ïó&xúKÈ7ÆÚËïÀØÙ&*¥·œsäaÙÕWâw·>1>äýô[käãªÐqó%Dº4ìY¯:ƒ^ì(˜ùÒ¿; sìÃŽg/³¯?ß§Ÿóg¸÷ñžÁU¯¿^k:÷mCTA¯›hñE©1µÌWú\pÚâ“wÉÜwØ3Û·õ™i¯³&k¼±q—¯}ß µóãŠu_>8õ^nMòño96Éýö×¥’wL´Íy_sÿжe÷Þoº;Éáqs¤xË­â®]-‡oj—g4î¾Vxeüõ'±MLEŸ3¾ß¤NoY;òìíÑ©çÌìêÝg^:µÎø¯“×î\×0õ`ÑÅUg¶¿°àìºô›KV”„Ë‹g[^­»®x…|T;ïàz³ÜÙ_WkYè¬y¦9tý“-‚]÷­SûóíÚöô3ÛjÎ}*H=pu kðú­_’·çWÆ07&Š Þ¬Wm¿éݵ”K'ê.w𣬔xà»êê²ðœô­/–Y|¼³TØnaöYõÊÌMÁÙ =$O¤«–>ɸ{ûZÖšK®‹¦ï Z2DÁpñÍ8‰â‡…EŒcþ¾²oWôç’çIœƒ£dÄì—Ùà숽o2öŒ>v×\·y»˜š~uz»¡å»œž?vÔnØZy:¾±BtèÓÃf{k,¼¼´üòñCƒÊŒÊì–.c»U7«…“³õ«rù z4o‹^M[NÅqåöÌ^¾·kó'¼Dö_UÊþƒv~™LåÁW«7¸Oj{=nD¤ßݭͬ£g*4»R¨N91ÇÛƒ›IKHö·NT½h¹×~?q¼GÔLç¡îÛ:wë~ù"µMÖbÿ§9÷Ô=·÷ÀÜ8ªåå+1ë¤ÅjK+È™î:ò×…ÆÅ«#wį²(=ËØO?åBḃ& +ÏÏ3 ­,_‚5Žuf…oxá'¾ÈóõÃÉ7,a/^ríža{ÅÕUN^‰ã5MÿìZ<Ã#ñ‘ÙˉOÓO„½Öú´ÝvöÓ^jº£¸;¥ÙÅ|8÷žºæ¦ÙÞ”Ù_ë&nkœ¶BýˆÖ¶õ gFŽN+<Ö3e(ÙœÁ‘ê^µºÈ¶óãfYÉêE¦z*¹‡—nÿx]vÞÕˆý‹Õ¦QˆžòÏò-Œmz¢<äHwq•§£Ü}ãkõO…§¦·/h+y*Ñ6²AbÐŽø²°sÂçFµV:ZÅä¿ÿz½7÷UˆsêÌÛ“”$ŽœzXÄLsWi×YeñìwJ B›Ó´š’òÖDë6Òø(”¹)7$o¬iö¨5/+¬ü]Å?QôT§Ýßóæê±o«ï¿°Ñ©ZêºyHè‹‘±ä9¯m«/8Žm»ó9]7Èú©[¤iá–ë™ç>ŸÔ’œ3(®ÃgRƒ÷ç’i®½f:óG”,ËŽ—ŸÔ%/¼ÐìSÉȭß cntK2_ÖÞ|p¼wéÅ—ž‡Ü_óâœZÚûbèÍ@£áQ·—ØÐÎ{ö4våÊ…š/ näNÿ\¶°c¦Ÿ¡‡žáÞU´Ìa㣟H,>I­4Ü3û¸Ùƒ]"_Ÿb7jìÁ÷ÓìÇ©Í{—S ½>_«6‰±¡U%©û‚Cm‰NS©.œyK¾øê–§Ê­˜ÛËÄÞɪv8%g noÞ—(Y~´~»7)õ¬Á–âoéL¹õ õé+•§G/‘ßkr{Ný˜˜¶1k¯µ£ g¼.«z²n§„Ý¥2UË&Û¿¢=µŸÝùpjzhÞžK¥ÅÃįÌ9°¶MDô ²ÿõº”Ä1’¯ŽM§mzz6eUwDìÄÝAÏv® .—}GrWÕÝdÕg7Û³[›6h9¦甥R´«žæ©œÈ –:¢ò–Qa;çè»6óÚ¬”·ŸwÜ›=½òF÷¹E×3gæG ®+Š žÿ9°çÅvŽ“7I¶5J4(hò /ï%¨+Î3¢|¥Â;ÌýoÆÍ Ýq­CÈxÊ a‡žEM‘•b»¿UNŒÊ/·¸u¡úŽÙçšý¢ZÆÍõ¾o}UâÖ]ÏÉ×öí×mÕ0ÄÚ¦§Oo>/Ðx¢²»b¸úéC37®;vuÐîãUUdMj¶ˆ_y«øYæ3zÙNÌXiÇ0}*''k‡Î5¿;OtÎR £)´ÔÍ®¥‹Êæ «<,º»ãĶñ7ª:w\ $MøŒ ZYD[¯/ù Z""M{òlꆨà<’wГîé‘‘QÊ-ºìEÓ°À·/׉F-ØMR:ÙM]è~zÐû³­¥lçgGdþ¬ª]ÆÉ>úõ¾Ê½@;íÛrï8×—³oüåP>õÊôJìfçCÝêæ»ïÛ7¯k™<ûôµ]uߺñ,Üòkkô›ìÐUþ·ãµ…­«÷sûãGâžñç?ÌÉ#¥¤èµ‹âFT†¹ZàÝ9º­#àŠäç6ßü ­£ÔòK+ŠšÏ ™|È3C¢BÇÈûø‘QÇê™U/:±Iüáa¡MMe Snþy0±i«œÆáLù»ñ2ô GYFÁkM"fKyȨ_•ìØÚK[3²++ ¤X­ôºi'uIØ[’ê·zÑp÷À ¡ìô9úQCŸŠFFÏSºñ­]ëúR¯ù·¥.Ùß ¹ôóç®Ú•–µG†Ü\Yêß¹óÖ­Ô5×¶Ÿ®oaÍx{ßéMhõµP÷š=÷D+MôËmokI´8*‰ü`/¤ï?_ØüT—ÿ}·û¡E]+£õ’kÃm– hPÌ ©)lŠ¡ÿ0lƺDñKBSèÕGåÉjc5DÜjŽÑ¤/_íU¡%qÈ{oos½ÞÕÆÊe­cTJÚf•ÖoÖxôbËΈ¹bkf“‹Ei[Lõ%Ÿ/ ¥Ä vÇDÚŸX';¿êa‰VÙ–ÒañÍ+›VKÔÞ||¤ë.gøý;ôM×[<¼ñæÓ¡{aÑ™·‡]–¯Í˜¥qôÃÄÒ˜Ä)GžxQ³c#õ^4 ñ¦“¤{ Ø«ÂK?]ï °¾%ŸôP¬ðU“D³k¦ð´úCB¡{?Êû7Nnw'1ÚÄ>âZÉ]¯[­!ôûf¯Z&¹”ÔŸ)¨nK»Z>åYo¥®òÛãÇsê]Ô]sÈeÏÎ ¦ˆ~ã±5¢Í—G¹·¹žmU×™r¨Ê>à4Y)Ìg­VÌèIµôŠí+ÅO)ÝñZÑEÖFöo®§4ta þ¸S.ÚZÂg¢‚­»Sïõšyn½¹5§õ¼]uýµœÎ®/ ­ÝÄ*÷OM-©\©YpU9Ét™z{)õV—ë±ÝI«Í»ÜšKtdŸTNj®ÌW^Ÿ•)♯´P¡Û|ç‹vé¦ýbŸÄ'ÊQQ½÷MÍoHz]ÞÁÌZ÷HnÛr†MùÞ€ÄâÚ=:ß`xÕhZ¡)³-ªœ¶xÓöŸr.£lRÿ Kd?ül:öˆ-S?A‰¦2q´ŒðÛ‡C+lgͱ“õºRý¿½{òôD}Ï7N^ãÍÉ… —¾èçdVSò6%¹Ö”°÷9äg‰ç«]øRIËn(‘ròéò“Œê¶¹lÚ:{¹d}‚¥Œ×;²ºùŸ'c£N¦›'¶LiÖß úD{å™JlwV–RbŽùœYÕ^aù‰–­­Q^ªNÚr~©úâ[´•FÞSÆLd°ü£.z™…¹%Ë®¹T®–?Ó}Ͻ»ëôÚ½õ]7×·~xVC))Z¡|$²Mo ,ÿ½L޼¸ß6özŒ’Ï'Ñ6è·…RΤ¹vºª±ßM}ü®œ¼«¾X)4/KW£pÛ¨ª’3Ÿ·µõ^zwkAOçÕšÈâô¯ò&´måi¬¬}¥Lå1oä(ÇÙŒVOÔ£T<ˆµ}ß9]?Óf~b¹Oдæ/ ƒž[¸u©yu–º%Š¥xÚTNo‘¤¤¦E¾S¨P±kjÝ—d·Œ†@ÇagX¾Ýêù[÷Jº»^î%Ìõ±—žÓ×Í-.ÉW†8=°›™úÅyvó‚Ê—ç¬ÐžQ½~B^gõ°ÆÖBÑïR}Ô³§DçÙF-t™Û©/cXL¡©G¸2©ZlSéŽä½ëwÛÖ¬ QÊÛ5rtÎñöš†·ÛW4>lë©SïzÒzüAìׯ½¦™9©åy¦G™±ŸäÂlžXÌOì™UɾÛí•zfÍåÕ<–íDzZÕëm2ÛÇ_2͉ëa®Aö?)¢ž}#Kȳֆ|·ˆFy^ß ZÎY!¼HÞI¤jú`ÉUF×ÝZ´AâA—›xðgEšËšª˜vØä)ÞôØÊS.t¨¨&î6JÅ_u?}¬Ò怗Šõ÷÷)¼¯ zþíD™Þüƒ÷h”Iç9ÆKÉzË©ë~“¿²J~jÇü!í6SYÍcV¬\}Áèè'º¡ñ++SzÖb“†uÆlgòd!¾ú1)[&韺=‘T¬0!ë„»Þ¡›ëtÿŒ¼>îIz|îãHæÞUÅ#¾éu¼0K[Ãqj ú‚‘…jjŸ0äÞ1‡kV$ÖvLËÆÿë¨9b&šÝÊs´OÍ;4fÓù÷:vL[·bSìǧsJÃÞ¥eÖ¿Õ˜œõZÚÝæÍZsZ÷N­†÷_Ö­øx¹×郿OR«û¤c-’K¿Þ6xdr§æýœ¶eÛÝoþþÞc‡Iw[Ä#›»BŠon麑Q®}SxW`ãø+…×"bŸ\÷Qd6I}ó=3rí–Ó©£oŸµ3S8wi¦{ý_ÆëNíXxýäºN麢ƒS¶Y#uáüiú…ŠÕ%ËÙ‹/+^¯»ª}”|ÅlýÁ¼Ä¯³su,´VÕ|¶f‹Éžõû\ƒ7¼ýSmÝ™ôöµŸÎÕl»z µ`ý`Ö–íÉ_¶2c*ó‹$n´¯ÖÛœríÝ&݉KWPü–û>X¾ìêª[Ósî|´X¶ÐNxi¥úÙììàM™'$=>)UM¿vûn†ë¥5YA{¦/2T²D"îæâÂÆ‡ÅŽ1Š®‡üñ9z×>NÒó™QeöÇqöÀ~…Œ7{Ç>¿gžÛÜ]æ¦GvŸõ©ð¥áö?z8;·n¨ÝѺòéPÑŠÚ½f‡—^^xDüÎår£²A‡Ù•¹±—•†©5WûÙÊýàR¥·%ïhEN[Mf»òñÛ¾^'^NȯEöÏ­©ZvžöÇ«ƒ•2îW{Ý6é®_䈣¬æ­]šgrœ¨)ÁíÇc`ùß\uâ–ý½–ˆ·ãï·Ï” òØæ>Ôù‹îîNÙmR_æ|Úoq¾nÁý{Ï…ZRãæjÄ\¹›v`œ‚´ö_Gv™4*,ÙyUÑbUüŽýŒ³¥¦Ì§šW8ëüJ…ÊP#±FlIy8Ëy¬¸ß‹ _{.Z²áñäkK³+Ú ïy9­ºjª9>q±TÇŸ=fH´¼4 ;1ýÓöOZ¯OoÛ`;ZWÍËɽàᇻ´5Ô÷çRöšÝT¨û:{Z㶉ZGÔWœQX¿­0môÈ¡SzŽqæäÕ«º¥>vÚMöÝìaZ¤~8WEïúÇíK#®Î“TtqÿJZm–ÿ)ѦØBß#C”ŸxVwß—s\ô´þZ{zj¸ä؆‘¶‰§v ’h8V?êœp€caUëûü«ÜÞë_SC^)Mº=sêÈ£’šf"‡Ïv•îÚ™-®¬Xz'#­9Ô /©I«{Xô¡F!¹›2³MÇæ½ôX3ÊÕߪBòIü~ÑTÕcWßìyqõ·¥U:6¡C6»’cG¾¨¶}=§m¬ãÝôÏwÜžZm)4ü|.óú0ý“qƒr’&ùt”8?ð6ëu6"¿óC|ö²ù®IòŸÌ oiRÃöl¸y’ÛÆƒÍíË.–z7:ìùÒ÷Úc·ÒTç)7‡¾ènH³Yrûé³qç®\{£à¥fÙçé¹~3;êyfÒVí}=~õäb‰Ù{ +w=0;~rñW‘±£ì†ØO{ðÝ<µqë¥ r’jµòUZ70.t'锨ÖÕ‘zšv‡˜G(û®ÿ˜l0ÚiÃúm>oߨ?9Õ?µùýÊkOŸnó›±’V?éYåüV, –ÿêÝÏ^53H7àó-5ႈM°ü§´œ$Ю8àB£Êmš§Ò;êÊnéÅ Ž$<87èr«Ôê¢Úý£m¤‡²ÔçíNŸr¶EŠ4ßÿ[ÉÕ¸Íâ/ª½Ùå>e½BW±ÁžK¾ÒÖ¢¯¦Î ZúæÊ «»æŸ‚§'ýÀþaßÛÿ;öß0Àþ÷aßÛÿóö¿y€ýß`ÿÕØ÷öÿ—û?7Àþ÷bßÛÿÓö¿a€ý7°ÿ#Ø÷öÿQ€ý_`ÿ±ïí¿k€ýo`ÿ÷Øÿ ì{ûïý7Jù7Jù7Jù7Jù7JÁþRþRþRþ_R¸Òx´"ÜÆdáOþäáoü)ÀßPøS„?%øS†?ø3ƒ?؃Œ¡åH@+CASô@;@KN’H¤ 2Iˆ$L%QIâ$)’‰AÒ%™‘üIøƒRþ¤‰?âo0ñ'KüÉR ?§ˆ+‹â2¡¦ÒƒAP{0p­Q©‡‘°„‚QÍ >…="‘ñk“ÈBÂÂ""¢pPà 8Äô‡¸€CBÀ!ù_ƒþË„/-#3x°,rpÈÇâPp p( 8”Êÿå¡ò_øø‹ˆRЈ£Ñí³>ÙJ‡4qÈÇ`âpÈ 8äCå+HÞÿcù+óyB*v ÷T<ÂDÞòîQ©ØŒë]ïbÈ£RñyׯßyB*V{H*!"où@`5Æõ®Mò¨T<DÞõíwžŠ]ć¤âò–bÈ£R±M×»ÞÆG¥âò®_0~OHÅÎbÈCRñ yË'òë1®w½…!JÅ#0ä]?`üžŠ]Á‡¤âò–¯0äQ©XÆõ®mò¨T<‚BÞõÆï ©ØI yH*!!oùy¾<Œë]¯aÈ£Rñy×7¿'¤b0ä!©x„ƒ¼å3 yT*¶ãz×V yT*Á ïúã÷„Tì †<$P·| °ãz×›ò¨T<AÞõ=Æï ©Øe yH*a oùC•ŠmŸÞõ†<* wíŒÑHƒ‘ׇæXÉy}H%ǽ>ó/¼>¤0[ÓHà i$äIÈ+6@ €<&I ÷ú4xQ)y}HÇ%!¯»RðÂ4Ò,äõ!@˜d„{} ¼2´y}HÇ"!¯µRäQIÈ«žƒy\ÒHÜëÓHà…i¤Päõ!C# A^Rðâ4’;òú Nš„{} ¼:”ˆ¼>¤à©h$ðÆ4òÈ$䕯B €<6i,îõi$ðâ4R òú O½>¤ÐH~ÈëC €"’)îõi$ˆ h¤4ÜëÓHà)àÁ)ÙS §€O¥ÀJ€‘?VȧR J§@äNžQ"} DöˆðQäF(œ‘9"t xg DòˆÜ)ÁSø"%ˆ¬0*Y¡E(0´’kŠàš¬€|¹,€8€2@íœ(â~^lZìVlSìOlLz"¶"‚ÿÉH¨ Æw]D@WP„"c&^£Rh¢b"taq! ²$ Âo¤@B@xˆ þvÉ|uP™(>6.#ôÎqIÞÐ#€N€8ü¨¯¢DâD߈>é}ñ'úPG°™þÏ«ÿ×Gß)«Ú¥0˜÷K\¼12¥#KïÂÈ"&Ýý/ðC߈g„ÁP¡5ž0FJ±Åm\ ùN…áb¸0ÿ“Qd!Å=OàéðÇÅX:èÂF&p™D–ââ¤kUç1ÒHo´¼€²&h¿‰—á#K…ñ“¸ Q£ªpfä1²äi‚{î9œvPqn0ÆÕÿÿ¿d)eX'šAÊ R&‘jé"Õ%Ò DÊ"Rc"5#R+"µ%RG"u&RW"õ Ro"õ'Ò`" #Ò("%Ò"M"R‘¦i‘fér"Í%ÒµDšO¤[ˆ´Hwi‘î'ÒR"­ Ò*"­!Ò:"=M¤ç‰ô‘6é "m!Ò»DÚN¤DÚI¤/ˆô5‘vé'"ýÊM¥1"&R*‘Š©‘Ê©‘ã/MŒ¿41þÒÄøKã-MŒ¯41žÒÄøIã%MŒ41Ò„ü¥ yKò•ù ¡´ˆH÷i)‘Vi‘Öi‘ž&ÒóDJÈWä+ŒÒDÚA¤DúO1¹cý¯$”—àÃeCÄ0’“ìòH:ø/¹2 Ëò³™<#1¹ÄíŸFêǹôƒ¡X>ÙoÌê·4¢®dl].έ;ä$¿ÉÃûèÉÝýô\œKÏùÊß`òpAô#a\†ˆ0y¸ úÑÀÛ+&ï£Âúé¹8—}®lÈB&Ô¾.ˆ~È &D?ômÈ&D¯zª0ŽÉÃј}“‡ ¢7»PØÊäá‚èMÁž®0y¸ z °K…&Do ö=T›ÉÃÑÛÂ<1ÔÉÃÑÛÃ|3t9“‡ ¢Ÿ óÖÐcL.ˆÞ¹èß1y¸ z°sÅÑL.ˆ~&ÌоL.ˆÞæÅUL.ˆÞæ/EBŸ.ˆÞæAÅOL.ˆ>ü•ÒX&DÏ¿§Dôá‚èÃÒ>—ÉÃÑG‚V:Îäá‚è£ÁŸ+=gòpAôs .PVeòpAô _(Ï`òpAô‰0Ÿ+g2yx=éF?=çÒ'ƒ¿TÞËäá‚Úç€ßUnbòpAôiÊ„½§a|üÜåãçn?}:à*jLÎóMIýô\œKŸq— 1"œ7Ÿ3ûé¹8—> êª3ûñØ¿û2ü©¾k™ñÕß­²’ÉÃyôY|ôYýô‹ †T)`òð>zšn?=çÒ¯„˜P¥ÉÃy}IàëKB?}^;†©*3yx=µ¨Ÿž‹sé7?U5gòpÞXó…q?ýfˆITm™<¼^¸ªŸž‹sé Áÿª†0y8^œ^¼Ÿ~âg1“‡óúëÁ×_~ú½¨¿µL.ˆ~Äòªo™<œ§«|ò$óÉóÄlÃF0y¸ úRл2y8¯¿…|ý-짯¨z¢¿çÉÿŸü?õÓÙ#æêÃ|ú&Âg "|¶Pº4¬žÉÃûèE¥úé¹8—¾Þ 艹á<úå|ôËûéÏCLÊ äƒp=Ÿ-‹òÙòUÐ=!Ÿ«E|ò æ“gp?}胘»šøæ–ŸïM¨Ë8Âäá<~øä#Ê'Ÿ;Àã.“‡óÚ¯àk¿¢Ÿþ>¬­† 3y¸ úG0ß'|7Ž;ôÏ-ýþ>ψ}ío‡‹sÛyc1œ°£W|ã"Æwݰ~ú7 ÛáqLΣâ£ê§k¥áEL.ˆþS:ÐßfòpAôA\¤&Îäá¼y/·Ÿž‹ãô$˜+ÔŒ™<œgG|rî—3I t[-†ÉÃûèéÙýôW+ÐÀ#À&ÜöƒI}âç_+©íãÃ+‰µÒÎþkÉÝ©K3y8¯ïŽ|}wì§ WTWdòpžhì§çâ=øbõ1LΣæ£棇õµúd&ÿ9ýû«î̇{ýÝÅ×>Ø…z9“‡óÚWæk_™æ+õ“LγA¾xC´?Þ 1`ÞP?Ïäáâ’è³z “‡ ’ÌÛêO™<ügôꟸºq=ûç²b ñᄬvó] âaf8“‡óú¢À×…~zuˆÏ™ ˜<œÇŸ]cývMb‚n3—1y8o­½¶ŸáÌ|n_ÞA_˜»¼ðr.Þ­ó‹>žàÃ/}ìHãÀïàÎù8Îã™Ï–1>[1؈ñL. ~#aÎäá‚ÚŸ1óˆ©LΣç‹a0c>zXSŒðcòpô «#æ0y8ž/fÃúc6ÒDð®ÏÂq=ŸÏÂ<øèÿ¹LÎó‰|í“ùÚŸþww=Žã<›ÐOÏŹô¬: ßÏäáú¡|ã‹p !®-|[ÐDà Ÿ*ŽõmDc4>áï6ⱊ1¦î|qËßçüŸ´¿…ßK´_Ì×>̇#…™<œ×>ƒ¯}=Ä#3y8¾Ž¾®ŸÞ£è¹kRçÑSùè©?ç¤&>Žà?_û0oŒ\Éäá¼öùtãÓað## ™<\ÀºŒä þ}d “‡óèY|ô,>úX 'tÞ“oO¤ÙOÏŹô^0oŒ$tÞ‹où™ÏBüßdòpžcýô\œKïƒè ÷áï/_üƒñÅ?¾ Û‘Ü=%çñÃáã‡ÓOï}Ñ$1y8Ÿ>~:úéƒ@‡5¥˜<\P „Ú'ô'ˆ¯}ߺ‰Ô¿n"oú LÎã'ŸŸü~úPÐ MÂG„òíIªë§çâ\úyÝ@oÏäá<~øô™‹séÁF4ÿ?öÞ>ªêZŸW`!g€¢F%‚ðÐŒP›“ÌÀœ`”GQ©! ‰Pä’…òHâd$û Å*÷Ò×-µµÒZ"µ 3Q3-ÏÖ"¶ŠÒÄADªQsþkí½çÌ™I‚ Õ|÷ÿ}Ì/'³öÚk¯ýX½÷Úgι3Sƒµ}–n—¤[ã­–€þÞL ÖÖ«1z3ú˜ÓGú25øëÖ<~Ø;Œ dj°FRGðÈG2Ìþùók±G¦£ ]ÚéH=ü2·Ó§cõ`ÞÉÊÈÔ`­_:ßn9Ïz)kŒ¶wäOÀŸg=š©ÁÚ8;tã pÖÏcýÊÚEý³Éþ9ë%'Áž%ë‡Á‡gãð#çiÛ |Š·mG¬mëAî׳X…5?kƒýÿëY\ŽÂ½.fˆÅÁŒ=‹[RXë»Îf“t6û(¬ ®gq{ k: óiFO{ Ö×s{LwÎ’¤³Á$ nm¹¾:Sƒ¿®ý[q|øZt«n|,:nÑùðŸ€þ\ÿD¦ú)ø±ëŸÎÔ`m¡kO]{žÚô,Dá®öÈ×ïͰDå~ý_tð{Lg¬0/_ÿ1ƒ¬rÖ磒9 ¶9jƒSfÔÕ†¹lT6ƒXcŒšÄaðÕ£\×âöôünÔƒu/‡©Ÿï\WG= ƒ«:êêo@^£ÞÈÔà¯óÏ¿ìQ'25¸ëùÓƒÕ–©Á½n~4èæÇ߀ Ž6djð×ò}mÍÔà®èG̰j¡+ƒix œJazû_‚ìD£o™Á`Oö0c¿†¥F_TÅ`}ˆÁ4F·Á4ó…Ù¾þiÓ=ìÓõí«©±yÿXjlNoMÍwgSµ¹ÆhIÕæã%©Úa¼*Uó-FÖ/ê7Œ7§j>ÁèLÕìÝX”ªÙ¦q^*]ÓbÜø8UÛç—§jûDcmª¶O4>’ªíÿª­“¿JÕÖÉÆ?¤jëdcSªæ“‡R5Ÿlü{ªæ“-©šO6~’ªÙšÉ”ªÙšÉ–ªÙšihªfk¦ëR5[3MHÕlÍ$¦j¶fr§j¶fº+U›ûLKS™}\L5©š š6¦j6húïTÍMÏT¾xVb:Â`Œ¥›ÚŒqKóu ÆØ—ùNc|Õ¼Áxne~Áxæeþ”ÁxÞd¹ŠÁ/µÜÎ`ŒmZ Ƹ®eƒñ<ËòƒAß’.e0ž+%Mc0ž%­d0ž%ñöãYLÒ1ã¹U+ƒñŒ¯O.ƒñ|°Ï"ãY^ŸŸ0c§} Æ8yŸs ÆXbßlãùEß ã9~ߟ2ϸû¾Å`<¯· ƳiëTã9»•÷Ïè­/3Ï»­_2ãÿÉŒgÉËŒñÃdÞN<ßIþ3ƒñ,¾ß@c¬¾_ƒ1žÙ—Åóè~?f0ž½ö;Ê`<îŸÄ`©Lßh|OHæ0´MÊ`\ó W3÷kBƒqm,ÜÂ`Ü— ÌFèG`ãI÷/½ ƽ€p?oÔ+Ô2÷PÂ#œËnç40ÎÂó¼^° !,àºÔxë=ÆÛ}ZŒñá ƒ1^'¨ ÆXŸMàý»³]É`ŒŸØÆ0c_¶›Œq-››ÁñÝÍéföKcM6ÞŒ³Ùx_0Fgã}Áx‘饨žãe‘ÿ˼.7Ûë™ÚZxÁm_0<îr¹àº}`:—#ŒíÀLã:aàhùaðoäx¨kàw9 í8•à'¹Œp 3°Ìhh§ð ¼^oÓÁ¿ÓÁ¯êà7tð™|‰UÓÁ9:8_ÏÖÁ up•Þ ƒŸÐÁ¿ÕÁ/éàý:øMÜ¢ƒ?ÁƒÌ:x ¾^çê`‡Öµ®ýƒVé`E?©ƒŸÑÁA|D¿¯ƒ?‹ÁiºqN®ƒGëàI:Ø¥ƒçêàJü ~Xëô!m‡ÖyÚaüžþ"¾T_¥ƒÇéï ) Ϩ®i>Tzb­‰OÎfÏ™Q\áâ;J(.¾«|Ñüâ»Ü®üâÙÎ;¦Ï*ì’&*XT¿¯%b:XìpΘyÇmwv›\§½Ý+M•,+Y\ÙÝRÜ2ºKÕÉÒù+¼¥Ý®…Z[w‰yª‡äw”V–v[<5Ó·¤ûÕ,òxÙhu·õÝ%¾·Ô[œï+«\ôÃn·‹¸Kï/-ïIqïŠî–¡Î¦{¤h`¾n«„w©·¤¼xÑ’žÑ/õu[Æ0³tWY-é†9s¢à«»kÒé†Yw,öS ‡¾=)ÿµFÞ±HOÇN_ôüÆÞ±è¥sÉ‚ÛÊÊÎkÁ–sÃ<›Óã…—ö•••.ëyqŽ)Xê[r!徯]u,· hÝE¡ô¤4®0zDÿ5¶Ü±DÏÍ­§VÔs ê¡ö_ æ÷Hë»?™Ä—èÖü_„§zHÞM…¾eŽ+3cÅ’®a EÎ; Å“BCŠÅ \ªw»D7U½»ÓVgôç¶â tߎ¾N¯6=]ÒÁêÆà•j•†Z¼txN¢¢#MÅýóéŠSCø:Ð̇ʗ–•Å`0‹î]¶léâVß–KÆ·Æ!±m¬KPF…6ü,¹$>Y‘˜\—^†ÚOâÓ%}÷.+Y «Ïç-ËEÍYÒžSÇÏýžÅQ°’3•¾£@ÀF%*ÍÅ¥‹)=~£¯„ïÅKï/¥Õº àà-Ët;òÝ9Û«žõ³²¢Ô³¨lp©ð”,£@%Æ¿–ÑÊ2gMwÍ—=ž¢`ò5ŒU Ú6v©§r¬{ÑüeàǪ|‘‡ÆÛ2fø**@ cÇx*J–Œ¥q˱Ñó˜0oÀùò†qc²'L¼¡|fé>q¬Qc<ßgÊxig±â.grZdy63²a¾€]￳ÿü÷6¿°[ûFbºkîYˆà‚·L=^­÷poÙÓÝCÏ÷‰=Ú†ölësÁ;ü ,Ö=]ù7£„= Cö`¾‘Èyãó=R÷(4ß³ïÆ´{¢þú8x·Îtzrè~ˆ<~Û›xœÙóxœîÀs¬¯rÙØEK<å¾¥c+Ka]_:¶˜­-Æ,ìx<Ú{ÑæžD*ãÒø îE!.`Æþ7‚W=ŽÞö4ÈÙ3r}ÐK;ÿþÖNÂ.ì ±G§a=<ìáÙj÷N »s(Ôí[·bdZ nÌØ(X‰ ×Xb¡áOz5ïùô…µ¬{':ÖbUú»'¸Ø¾• J”÷Ò®‘ÅÝ MRùVšÈ8/í×ë,š™x«L'ÑÍlŒ|+Žò^zžÈbg±ÇîÞË|[m§¼—v Œ^ž?$ÚÐd\d4.°™ =o|•ÅiãoŒ:oµ»÷ñ5ô·2ÔQÞKãâ®QàÛ1§(ó¥Ï:ž¸ÓüVšå½ôÅé¨3c.€KWêÇίü¦Ò»ÿ¿1¦ˆ¯'æ³hy?‡ëýu1ŒÄëëóÛ`ˇôe?°I]RÞmeþ?m€ÿ‡?ß°:­üá„óø˜bþ?gâMàÿoš}ÓEÿߟ«3\°é^žÁ"å 2æ¯ÈAž3PžeK—eÌG­À«s÷su|FÂæ§4£Äã­Ì(©Ìð® uqEV¿œIÿ¯Û×ÿöÏ78gtYÇ×Ù?ÚKlý7×ãÇe_´ÿÞø|Ó{§uÀxLœ8±sùçädOȹ1Qþ7ËžxQþ½ñÙ×þü ðe6²÷¿šé#,>œÈñyv gÄWçTy9î¾jk\^Áq???????????????ÿ‹?Î}Ø›|#>ÊÐʯì$ƒ!Àó/ƒk¹É`(.žéœ3³ÙÆNÓ8Hâßø).¦?Ô>‰ü¾Ø÷B“QK›ô|-üQeZùÊ‹ç/-§äÊéÈoÁ%ŒÏ\c,­o©•óë£ñ£÷¦vÙ¾à V:ÃK'ºþ?v{üŽfüÚûÅÒf]ù¸¾³þâ³Çø3Ç:ò{+ƒñ›iŠOkŸãç[‚w+ám4K;á—w5+\—¶ºþ—.,.[V²¸´óþ²‡å Íýci}=OÏõ®Îˆ|âLQ—Õ7[çiÄÒÚZ\¼¤<ª*ôǵ]ðK×¥õcúqs\?ËKÎÇ/ó;hŒ¥õü°}߉㷠Ä[¢O'´og”KŸ_ïæWVÆ¥øÝÂøée©o_‚ÖP9H”Û5ýV§Ã•i§Ì‹O/ŸÈ’}x]n`cüã‡Fî9²hÇþö¾Ÿ¦Ï½Ê`¨Îæå©ÿo}Ü7ÒEÐá:§Ñ°ÃÌÚŠ|r]Fƒ*X8ßh° ¢úc(âeðùÞxØnd/-êêS7Ïhx <w.¯ ëìoZM{ÄN˜Ù‘ØŒ•ÞÒÅcòÇ,X¿Î¼ø¹ø¹ø¹ø¹ø¹ø¹ø¹ø¹ø¹øù_ý™%‘ˆßg‹³Ä™3¤š“[`-‘= ?QUùD"õó"Ê\ølƒÿXh®ê%e¦Ã–µˆ’Ô ô|ܺ¼›³72@hÈWÕZZF Ijã$ÊdUKë“°/-ËÀ•jÎh)‰œ“” ¸'‘MÆ|‹äo´Hö}¾3À*3_hH»R®­§¼š ¤-’\í$)JjÈNÙWýYà·?8BÞ‰@à¬à¢˜P[’?h‚"Ø!`šÎÇs mP•=´ê£œ³rÊsd_è\’ä9ìgíå‘ã’¬`‘dln“TÓN›ûÆ=G%§±´…| žÇäÈ‘÷È’¼•Jñ+Ó¤™ÒÅ‘w?;|eš_ û›L~5à *€Œ§ÀÎHþ‹D‚¬{’ÿÈ!bŠ!ÊFúu ç¬3'q’3¬Ñ´Z³i –MÁÙ$÷Ek’é()iV›*Lo”¶8‰¥ºå[&Ñ­z6XŽÃ¬¢ÀWqË;)®‰V­­CEÞ¼À^ß±ˆÙß”Á‡…·òƒª·5b‰Ãuä]>¾´ßÛÊ=*Ùê…”}+•fßÖVPˆ¯«×'vQ¯œò``¯·åk+ö¾­î'´‹v:ÂúeP­}'¶DPÔvàD[E¶æLvîø§ŽK.¨åÃä߃¸ùkú½x¶©-¿}Ú® JòÔÓ/R__yw=2rÈëê‘•ƒ4;²ÚümɆ§ý€P»zZýmæ5‹œŠø%45`ºrÅ/]ž ôÁ­¤ù#NQ*y^åɵ¢Raq“c‘>dÚi“Åaß_%ÈÓl à6Ò,Nš\ûÀ ÉÓƒƒ¬ÈŠj³Ë±¸üXœö¶Õ Pê˜ÔyEŽ¸ŠŒXQ™ö¥ÚÄë¡6Ëëù'«Gê´žçZ7Âvz¶W†Á¯Q«Àr(bׯžzê©Ï~Žà¡”´;dŠÍ:èäòü•€lyØ)®ŒV›}iŠÅ~¨ e¾•åù#\ž·Ùò ’BYQ¹ÍH”uÔŒx§&lr’}²§RNòª›ìÜP$U P2“y+¦ÔWEû1aÝb†l…ÎÊ–ZGV‹¿Íà»Nòªuf«X”mP’’AĪÒÜÈO×ü¸ÐÓÈ­}š’R-*?T#EpþV‹zÀ¥6CE« årZÇý2—ç¥8Îd ÉÕW#M«_æ•Èý5®iÕ²‰˜I?àÚ:Ú+Ö]jDcFØ‘ÕNŽŽ¢m²7 ·&G³Nk.URRŒØDyö—²ø¥H¦|InÿRÝï’ü!KàlÕûNrÔ™uÐA8²ÞvØÃ¢p[›S¹Ý(a+™“R&Ô8ÈÁ,”Œ’RIeÌ8¯R”—Zu"_qORG)´UäuGV%ëXEÖi{ãšèµ²›™ßº­h42µ?˜u¶ß¨5‘üŒ…aÀ øXà`œh†Ÿf˜dj¢Ã†‰_¢Å¼zaN~P¦îàytŒr_'JÆÞèÖµ_IN«aŽÕAíÔ¹¬ËÔ£ªÁQ”¹™zZBq­Ÿ…ÿ9õÑÔ÷Ù·"\•ÊŠ‚B ýs˜pÎÂÔ5æ,Ï!˜w´aŽ÷41ÍÅ™A6å×¥d`í0‰ŠâÞ=\ó9zª5¹/~Fªyçû»Å¹â÷Å{Äâ½­í~Ð9›áól¦WnŠ5$y)qÑ–FWObs’¶ÆI`dVsÎa·|o®$çIò#%²sÛIô”;ÈÎíÊkÑ-À¯¾mŽXÓ.\g0T ê I®JIÐA>nýÍPl"ð¯’ë)Ðxõv£à„éL2…Ùsà{«úþ[éïÿ¼t¾#R(lV÷¾0{Ö¬Y¤ù³S¡ÏGdí#õOÒv*Ø–pM4&*…ƒ €§m ×fk8=çKõ Õ÷®Ð0(ô®Õ!ÓÆ‹ê~èÆn€ =ob¦)æLWÒ.wÏÜä[¹\NA»[¹ï«²pƒ!tÎ*4CÇ­É’§ÑÍêUËCeá)í<[T£ù<ãËhF{BƹhÆWú ÿG`e§¬èZüª©j­ä Cg±q`Ÿ"¦9r6E wÖ4ÖS&IÝPW»ØNK§˜AÙ# ¬ÏÕ , Óu`HRŠL/àÈ –áuƲ° ÑM]i™$ûU¾ð—FÑÂtŒÕ'[5:µð…!,µ|'„†þ¡w¬…Æ7 GoUV ÿ…Ã\jµŠBƒ ž ñ»ËC²MÝGl°RɄ͜Î¥‹#P¦¨"±Di ]дGi„†¾]|…$þStŠsÁ`»PO`ðýí&aÃí¨J0*“͑럩Z{`·Œ:u]»Õý’z pvŦ@|¬2lgãVßõˆÓD4¬ë€I“ņ‰ ±Öœk$þ4¸“i»5ôÏ(ô+°KV(ÚŒ•}?E[½].¦è$@oÓ£%ŠîƒËa=:‡¢ûz£=”¢­€®Ó£Í èj=ú¤ Ñý½\þ EãB·B~Ðþ ã' ½á`’úã(ZjÇDyáæ¢`Qö4$ÐöòI”›b†þ›èêq|vž³äƒº`‘2»eš˜aBûENà^I y)ÈK iýsÓ€ÍXƆ•O‘€U3-ŸR$ayÚNtK9¨1€4túV8Ú¯ÆDF5FûŒ1F¨šGuŒÌœÑÑ(£­ÕÕèf+ÇuŒ,œÑñ(£™×åêa(-:FIœQK”QÿŒZ4FbŒÐ®NëõáŒNG5ÖýŽ˜¥Ò¦cÔ—3jcŒ|«ã™´q&¾R?•¶ÕÀrV&ûQtÄXÛé¤!L š%S:N@µÌ^Ï ÍRœuüO£NZRún9…Ç‚BC—ùm_ K ËÔ5‰$¥VÞƒ.OÞI½Øg†ß$Ó£ë“a¹¼üØïRCà¾ÌÊlp_õèF§£Š¥#4ÅŒî¡Ù¸'°Ò\”’æÂ0Ú¨[‚qª?MÝ’eH¸¯Àqš î«þ(ÍíÊKsSHàµó¹¯s_NÅrs—îëšûÂvkèŸhî+]–5÷eÓ£½šû²êÑß×Ü—Až¢¹¯6½/«¹¯Óztºæ¾Zôh£æ¾ŽëÑhîë¨}Ds_õèÝñîë5ê¾Ztîë¤Þ}US÷ÕÒ‰ûòv循5÷u{¼ûª£Ñï¾nèà¾ê4‹˜à¾6j bîkcÔ4ßï`ã5FÍ îk‹ŽQÔ}m‰2z¢£-£ª÷µMÇ(ê¾¶EÝÑÑ6Ñ îk»ŽQÔ}m2JîÀh»ÆèÃ÷µCÇ(ê¾vD;¸¯£Ÿ%¸¯]:FQ÷µ‹»¯•ñLvEÝ—Gs_-Ýþ·Ó „|šuaH›Õl§uA~ú?ê¼N2çuo‚ó:Ç×Îåtƒ1œ×—Tw©ó >¶`wëq5'_BêWéœ(x¯AÊt#.–¨W2áb‰ú,3.–¨ÏB/¤¹ ¤À<š £\?‡æâ0Ñ\+†Ñin2†Ïi.x/%—æ‚÷ dÓÜR?úä7潪;÷^Ë;÷^{¯…{¯y{¯9';õ^E';õ^ÒÉN½WÞÉN½WîÉN½WöÉ®½×hº±:­ó^Ÿè½W.õ^§{â½r»ò^yÔN÷ÊëÒ{Iƒ˜÷’ºö^R—Þ«HÇ(꽊ºö^E]z¯9:FQï5§kï5§Kï5OÇ(ê½æuí½æué½êE½×®½×Â.½W…ŽQÔ{Utî½*:z¯Ó=ð^§¹÷:ͼ×iê½Në¼×'_ã½Vqïå§›Q³ŸnEÍ’ŸîBSütŠI\ƒ¥À7î&S`ÕqŠFjë>J‹à¦Òܺæc¬÷¼ùiür>ȧ§1MÃÎÀaàýª­»’P»ÑSšéNO5D9­VT`¨&˜a¢œ‚¨þ`8ˆBJB ƒ¸%Gq›€ÕlI«0çªìC‚¿ åå~|¿5/÷ ùX(ØçBÐ,.ïA¾NØ-“ÏEû¹ª•.Oc¡2ºV” ùŠå24uGVÏ!Ò\ž0î¶e›HfˆUTÃSUЍ6F^Q`á[$¤ÏŸšPô—'ÄŠ’!Xpodÿê×DÙiI¡ôêHµÓ~`ÍxY¡q²ŽF%ØÒ7ŸüžF%D¥À˜OjiLB¥ŽÖF#Æ©Ú,@áÀ8B›h:„Û‚¸Ô:‰aÁ Šbè ¥6"è#Dµ9zá ñp£YÌjc£âÈ:ÀÏ7`ž¢Ã¯†\q˜P‹'mœßyŽ7Øç+îK€Ùç²ß‘ÕäP\F‡2Eu*3Œdß(&*]<óX}…L{Bhh„4‘fV5¡,ž‘uÆA‚ެfy '§±HBŒ‰ƒQÒˆù_äX'Udž¯ P"‘|AÂŒGå€ò@ L!,"$ÓÑçG0TP´ed3C‘ݽoÁ“$sZJáJ$ñS3Œ/~;{… ·ÒuA€ÙXÔVêÔid¬&ãb* ¡Õì¡Ñ6¿¨?‰á¬§1Ö–_½û4õö{ñ¼®«Âði·ši˜.ucµ´>,Àæ–i O$iëuA6ô×8YþCØ5ŸÓê³2åC”neÂC¢|KÍ?iÎ.%䋲UÝË`9áÿ\¦7Kžrõy¾KåZaô„Þf5HXZ »üAËyÝÓ˜rجú-«O ò+ »•ÉŠr_ÚNeùT}*Vu3aiõÆ®óåÍOcÊþ×ªß‰Š¨Ú½—‚`|V{=ßa\?Âq=°šºlK~MÊv » â ~¤Yl³&¥† ®‘ßññ¦T³#¨4H[‹çª¢|cÍ ì‹(_Ê’uïo0‹00$t¤í;í@^õ‘C™¦*Ž!48¡ÖIöE&ÊC@Õ‘Fe§8›”‰dòÿ¹+«ll²P,ý¤-)ªû$ÿ)°öÃ+š xäs±æslÊš~/~€=ûtZ°/k'6Ú›šßTKUËØúE+:NêòÕ#¡F<ñrÉ÷g¸ä5é »¿Öæ(.­–£ac¤ çeӃĊrv·Ì,\úl¸K kZ¶òôQCöW—ä³¾ÄÁö5Kãs|£^Œ°ó;Þ¤–mowBJÏíœ9oFFà)Šý ¯ïrÅQ}ÉþMmtÚ›«N8oªö}UVAì|ÀOûð¤ÏE¾”Èù“¼Úæ ;™Q2¨šƒ¤ùÕ¸t—úL «ÞWö}†£ æBq掴„-Eïò·]ê;í&­9‡ÝÊlK¤|‰ªåAµïì9·ê#¹q ;(ÒùÏ ñÖLíTµzžá- `èà¢M…Ê'4ôpd08êQb›ñ R¶>ãK%Í "»ÅåÉâ´ï[óh/:Mqg|))i}"6(¦ÁQù_’|˜3‚X¥cµæ½ˆ-ÜGkGk—ŽuÇóÑåü|”nò×Ñ2DsÀš;þ ’ar ½c}5œŸóHfqV±ïÁ2UoJJ ø‹Г Z–Ç–!…ZHU°“ Š"±‰0-j GXŒAX¤ÏJè±)Þ•BÜÕÎ&_^U Sé¾H Ø8täDÎ×µKž&™¥A&í¦œWã¡Úü°£Ú¢Òƒ°F/†3© 3ÔKŽI vjÍF±¦ ŸBS•k%Ä´F õ⡾` V ‘9ð2ÖGÎ’ç%‡ü$åä [/’·ÕWYó =G ” Éö·ªŠWg+kŒnOxš§–·n¿äÙ¬ (×ÒVNª­Ç¯ÕýH»›„"°ªÚ/¯Sí¡|™år¢U,c¢ Gw¡¶³fD[÷$žyþ5EþÙNÖºŸ#Þ©·G÷glœhÿתâ5ßjë¶ÐÖýŒ÷+nOý*ÃßSj·Gy’&7+˜Ìš„†}öfÁR–¥šwñÄ,¯ú„Áx&ù¯…žWò “êòkÚ1òjA¦qšú˜ìgZ°™÷¤QÓ(¡l£šôkz^’®¥úÆ4šøkZÄÿ…QØÞއw_™MÔFáßûþÑfèÉrŽÉ‹Ý"3.àŠëN¢g-Ôþ`µFœ'í¤ÆÒ‡œ³?˜W«zíx{J”Mä2ùö/Cç¬0]µŒ0<ÔF§WfÞ„¶ÍJ þ„w•ü<èòŽ4¼¶–ÿt*¼¶šCÜæÉi1Ô’¹ZòÜæ•äï ký@Qgé§Nõ†~ÔVÿ3XÜ*S.þ¶¾U‡ÿ€¿6Ê‚é¸#™rôÓ<+cgë»Ç(»sÀ|r±N³ÊîWçÿ#~÷­: ª”¯(WöDEuµÒÆ9!&?«kgºK¾5·PöäÊ÷Ib¸`:œÃ°ÝZ ×&Ê«òëj‡V£ÏP VéîpC”ï^¥¾¬nÇ»HŽ–Áœ”®~’;\-öckNJÊNzoÙiû ¿ÎÀR,©.wÚj£8©`Õª3.²ÖÐôöo4Ø} ©Kmj}‡n¤Œj³î&ï|¡Á’ÝßmÆvååîAö¾¾@ýk ×Y¤ÌVñž^Xóº·Óp¶ÑèX6 8K¨þŸA# ±Í„·eÃ$iòŸ3®ü˜èª¤Ù‹„rÎ J¨c»ô楺@ˆvùL$EhÈ7ÖM3BG0õ¹ï£¼:Ú¼»„vÁÓ¬a6³0ˆÁQ­¥õaGqG3³{‰uC0þsvÍôo¶íÀjŸë4à­ÎÑš•<£Hü()—\ á*×(òŒUþF©¯h§7fÒ#„&ÉóW‰’`ý›†ÛÝÆcMµ6÷&X’¨M“v"åªcjد&UYrÎF>¿ˆ\‡«Ò_üC´¦þ÷/Á}…EYF¢¤à :¯† ÚÙí=5Ÿ‡é­œ c¦˜ïá¢éZ†±PÌ3ðµ&-'Xóyq2´â¿ƒþ`¡ù°GÅ/ØØ9sÞwÈ´°/nýnà‘£¡s#ÄÏÚH“¨¸`w€w†Dón:$öÏV'9ì‡V}à°ï]3Ö1‰²ò^+úÛŒÞ y7ôÁQ±¤ù³ªÍ¾Xt+ªîÅ­i”ð¶.¥6?FÇ¥8Ì)`Ãa—¸jl9“›ªÛ1NéË·‚ÁIõlEµ#hY_ˆêËÚà]È †Þv¶›q+{¶1©Áœ½¬q«/‹œ‰þæ#ˆÛ¶IÊ,ËD…\díêíj¬þ-¶k¦Ù æwÀ¿IúøÊÜä 7y Æ£Ph¨)ÜŒ÷yÙ„†‡o…N$$mß‹÷=ÖÜþh4ã¶z–ñk–1kK4cÆc,cdàMk!ØÝÙ&í¡múY8°Ž÷D –sP®GP÷‘ú/ñWòNÌ©^ؤ_Õ7çÍÖS©@¹“þ—rì[1W˜¾K­OR3ܳ‘~ƒ~YËÂùí|@LlœVä}õfJžë˜#2|E÷‘ é-‡“+dŠoý8ÖÈtm¯¿-Ç÷ªä©g…êi!rP2qÑB|n®Õ$…Þ³¸o:„ç2ow…Þ·ÿ&Êë2wÁ0˜eü/É;‘ʳ-®Ð?€âï¢YÁ,Ày³û¸B'÷–h^8á¹™ÙV0=†Ç€h ÿÍèË(ŠËH‰eHq©±Œ¼¸ [,#7.ã’XFv\FZ,cd\ÆXFF\Fz,#=.ch,×qE,×1<–aˆËȈe´}¥Ï¸*–q:.#3–Ñ—qm,ãx\ÆÈXÆÑ¸Œëcã2FÇ2šã2ÆÄ2‚qÙ±Œ]qãb;â2&Ä2¶ÇeÜËØ—‘ËØ—qs,cc\ÆäXF]\Æ-±Œê¸Œ¼XÆò¸ŒüXFE\†#–±0.cJ,c^\†¤³¸Œi:ûˆËpëì#.cºÎ>â2Štö—q‡Î>â2fêì#.c¶Î>´ X¡õÏ‘ÀúÝÆ·¢Æ¿Êv—ú'`Þ6oà.Âa›ë qT4×qœÛv+ôàÞÍ„ãfÚæ¹ ¢Bã11Z·Ã6_‚¢nú3‚t¬›2åÍ™»ÑAmÂÿ¢¹ž}=º›º«õ9y¢HŸô‰<}"WŸÈÖ'FêúDº>aÓ'¬ú„AŸ 6MœÖ'Zô‰ãúÄQ}â >ѬOõ‰]úÄ}b»>±MŸØ¢OlÔ'êô‰j}b¹>Q¡O,Ô'æésô‰"}BÒ'òô‰\}"[Ÿ©Odh ¦ æÇ˜jld_³¯G¢Ô¨E¹63ˆôþ ¥°¯‡‚”p+Õ(?Oé’>‘§OäêÙúÄH}"CŸH×'lú„UŸ0èT£¢‰ÓúD‹>q\Ÿ8ªOÔ'šõ‰ >±KŸØ¡Ol×'¶é[ô‰úD>Q­O,×'*ô‰…úÄ<}bŽ>Q¤OHúDž>‘«Odë#õ‰ -Á´Á¼–©F5ûªa_2êT£(]QpÉjµô€ÊHýÏñ êÿ‡"ÛшÀS¸<ž$<××¥l6ã%goDÄÅv™h´ÜF;ñQlvº<®z—þœÍ4i'.øÖ¼’s–þîEuï&E®Àè,]áíá5r†„‘:€8(Aוñ ¿nóåÛûàØ2ótY_±_7·ó&yãÂÏ:•´¢Öÿ1w\gîƒÎÓRƳ¨ ±òÂs–;%Ï>‰ìcŒ”i’b1âV®î·Lª”È1ܤÇ#Â’ˆè“ˆ°&"ú%"R©‰["â’DDZ"bH""=14qE"bx""#qU""3qm"bd"âúDÄèDĘDDv"b\"bB"âÆDDn"âæDÄäDÄ-‰ˆ¼DD~"‘ˆ˜’ˆÓîDÄôDDQ"âŽDÄÌDÄìDÄœDÄ]‰ˆ¹‰ˆ{óó%cÒ2¦##…禴…)J¡RË„=¬‰Yª¦×•ë1¥6¶+Tén¶õ»ãÖð(X8nµ²­¶×le8 ÌaaUæ”? ¤{ß ºieá‘íï"«—x„ľ•ú§gTºý÷ïÁÿæª4 éB'­ÿú3‘´ïšôŸ×E[¬ßE[jÚï˜b0Áuÿœ«HÊžt{{N•ã[çÓ…ähä&QhØNh¨GRp¬©BƒÃn¬›i7‚W%y¹¯û>̫ۉ¹b]Ý97ôBƒŽ¬£¢½©êg·­?¦¿ UûK‚°/;„ÛŽÓópyÏÿÅ@hæn]3óbÍtÞ¯Jq.óêX¦›´à(OSj²QöšS®àZŠg#ouÈ4DBÞpw£l^y㌯pNÒâ°?}_s´¥CPÇAqw†IßlÍà zk ô5Y†r“aQ®XJ[ÄêÝfDÅLE#;æ·ùþ†? õ·Û|0'0ПæÖ#Mõä!_VdéÄx?;¨HüY<ɹÐH3ožX bD Ø<±z²Õ ÔþûÖA°QQ,7é:û¿ªí%*Š6èò·Aâfµ'‘w}ì|ËÔ(¼'&?¡‹ ›/Œå@ÊÒAÎ&Fä…µõqÃu2†|@Ô¦|¡¡vš¥½iÕ«~þ ©aÑÞ^euæìmÝ`Dˆü÷342¾]6—Óá g޼+&oÒF’+ÀÔÙ xPPÈÖO.l”þ0œÛ˜:9¶1©MBC_¢ý‘;þ ÖæNY溺«öÿ§?è™ÃæÖÝN þƒŽ?®k,î+¬ÃaΛàty8Þ~DPžOÅ“£ä«û»aúñPŠaè×íÔÙƒ{}Aç^_ž­¹×èÂv šŠ­·#Kr<ë(®_ßÓØiÛL%V¨8¥èÂÐè Á“Z‘›29¶‚µˆò„š)BCÚªQ³ª¬CšU9ô˜–G`aÒ¿ÉôíÕQÏë¸ÔòíÕÁw¡Ï·WGtC1ÂÚ òè× òHéy¤ö‚Y½Dcðndú·~eqi'‘Ûï×˾qŽÎoœcî7αè縱3Ž¢ü,þJ÷+‹™{/àW¬º@°j¿$'_Ds›Õ,·y“Znü©þÒØtÞ'o7 ¹|á–¯óWYû ð×s™ç ô^;RƒFkP¶MР\ š¬AyäÐ IƒÜT¤A35hŽÍÕ y´@ƒjP¹Uh—CRxíòXë8è…}–ýØ_âÜ-oÂî’ú¹øÃp;L”yû±Ë„-Ê›r)ÍBJ3™Ò”Sš4fþÒ®7àú¨ÒwÌ>Ç2Ùb0àƒùß„ë¶$ƒ!×Dp½OÁ5¬¯Áð\ŸÂµÀj0|×Îdƒa°O7ø \¥€Ó„ëÞÃ'‚Á°Îf0œh0Ô^b0Ì0\®+ †ßÀué0ƒ¡®Â5{¸Áð*\y# †gá X±ÑrA&ØÜšÁŠÔ&di!·fNÎk€"â”äþùv+>Ü¥vá´£Ð`:ú€e2#Ã_i•T£$›UÉŠÿóRà¿C–Rð9 ?Uól‘ÿ‚ŠúwQÑ]B`0VT@+­ø+ˆZux·+’—§TßϱšmPMJÕ,¿¦ª‘ÿÃ8+Ôþ¨•¥û~•ü*«dD´¡á ÔCfŒTòøÛ¬ Ãy¯ SاQݯÎ!ÏÁ{Ó÷Vø¨’Œ¬^9Úà.yNK‹Îæ 0\òªL‰>H@TgfæJÄ?ú¾¨r䶇Œ†Cí³çA¶äÿ#R|×´þbj+r«Ú§nEHŽí^3Œ*Jj¬Ïi¬ÏÐÝ#-“/õMk½ó2ìZLOò†õXO~†]ýïÉ9BàJVŸÐ… E! ^‘¨/®¸P}±uQÍB`ËñúòƒT¯/»¨äZ!0þ ÍÈJ /ï µæîWÕÍÈ.颢B`ßå‰Öü£Ë/Üšu=l%—'J'§û饣d‡ý ù«B¡Î´XWb32Ž|u ‡eJÆ8oBP/¶g‡öPlÌê ÂÁ=¨0N„yݯ2*ÂǰÒG Ò!=®”‹óÕËz,N­ÒK{Piœhgw¿R&ÚDZÊÍPe:«2\3T‘Tª@þãF¨´® -\€KÓ8)~˜ÞC)jªzY¬o—'ô­ —sÊ—_u÷+‹Êo+V·ªÚƒê¸äö¤:&9­ºËcÕ]¥«ŽÕ•Òê‡WH­{/åNš‹î‰K{(º-Xç¦Et†ñûÙ… ÞKñ+FVBS®Ð$:0*QhÉv£·H/ÈÌTKùk¬ö.Ï+MµæU0ó#ýc ˜®^ý_ Âú•øZ'ÿ*tô^¨¦Útšˆ½<àC¼q«7НTïfÅ…Z‚ÎŹ›êÛ¡úêÅ]ñ:2wHud;öä§Ò:n1;wK[°ÐF£êÜí_½[XS­õæN|t–9w~9‡«w¥½ñ¦IŠ®Ûl^PiB÷ãì×eŠAÿåšH×ÞгáQU1¡ª|íšÿx_¶$÷·˜ümaí¶Á‰®¥bpôQìëÃPëˆh­©k2éãh­üEI¸üjÇ ¦ZԺ߯¢ô ,=QQ^+'TžÑ…0}‘™1•|¸ÕèT¤&×ãÀÙgí^õHë¢4ªYBCáîºuæá¥T7sö:&=\Ý¿µïöÜR73)Hö !5d§Ã^‘È[hC“„†õX ò„†UIÁÈ`€$ÏAµYÚ"48’‚uŽÁAuoí^ß?óêVóê^xm8­DR›x-«v‡sÙ“È ­ët ®Œ À²æ2Eú"&öĹG}}†ft™Z;¨²ž²~ß÷cŽ'eç:µÙß6HX[<ˆV|•6øƒã_¨ý£AÓ°;AÒo µ©=©µj=ÌWŒPÏÕ]YìÔH!­ÃeÅGñÕ>uIêȃ:‚ÜbUçºÖáø‘Âu­ø[}²ä¡»[Ýä%ã1ýººu¶Š_Q©€HÐð„uïámãT,ΜÃ2•¹&ŸñÕ:‡ÞE™¯ŠöCp7Gïf¯D«Þq³ßLSÖ!wIIéÏPý¦)–ƒ’²Ùü·wý{3þ:[RÀ»ýi‚¥‰%ÓIŽ»I=޵ܒô,J(<…ülSÊ9¼c»ÑÁ6ë;Õç5׺<ºÛ/Y•ifvÿ³3goÎÞÖbº'GW£†ØÎO l[.p¢ž8ìðӄη~eáy]±uµƒÖÁÞBݯîõ®ú>p’šfPk|÷Œèo±‰5m§Sñ©ˆiPBÞƒJP«Fí·‰{[˜Æ ¨Á¼QÈYMMà˜ ÍiÚ lï%O£¼ÎŸÂ·øÑ-8~8^°Çß&)ëØXÂ&úÎÆ“8·;äÕOv^_N¬>PÆL¦Œ¢=\uiÄ·É•äxä ùüÈqµ™ÌȯlÒO‹l=ôA?BÕ¬ýjš°á”@ßd2 Ж ·9&M¨Öꃪ†v]£Ée:#Á—s³ÓxVLnŠ<«ŸÞV =žÞ¶a‹žÀÇ$ÎÚA_#Cc5T7ì4n#ÔÞM-…°QX‹7¨†µôÎ:šÕuª: l&`”¦ ÑÔ­2ä;k#CäYura­b¹=ÊÄ"ÎÚC¥uYñRâ½¾¨,xDÿÛÙ ³þ5|Y xÑZ3Õçi‹¼™©Â¬xUXÇU¡p›fVdVœ*0±3à«gBÕ€¾¶'’[DL½ •“ý™Ê~Í}Lî×}½ÜŸ‹iáÚ=ÔBæ„ä4Ô»}”e }sª°öûÈ'^ümFá¡ËÑ:ka ³n8Zf­m_hø=]Ìä û%OHžUkœéw`À×*yœÕѾEJxŠRF2egµzaýI\É4RFRLª³Z-¬ÅGAÈÎÚ@°ê/­^|ªkŒ~7£Ç ‡žÜÂÈ_ou"ù¬j{=#WRЛb7@‚a› ¬ý- |Ò~8ŒA‡Ð°ŽöEÞ‰TcSdŽ2Ý„/«·³WhØÜsqÕ_ø^ Ïaè>u}uµ4Oòì #cÊ•鬎 _ÅuÊâWÍlKn$„”"•L #E{Ð÷žËtÔ±†µ~ &áÐGÉó ùßÌëžÅÖãS뢭 UnW¡½à)’k)¹=Tõ&>Þ•&8Ÿ¹Ê€ØÝÏäÍ4åoh77Òõ¼÷^6lPŠ~K[¢m”ÈÛâ.UÀÐ,f mÜÂö¹ž&²ÏüX3mn"ÇèÔqŒÎJž‘¬¥„0T0{¨töø¬?8B¡ácèèxT5è´ê`:æ½LòVKò&Tè5Í/#–iP¾YÕš–l-qÈ?gnæ}ß}ÜÍ(ÔÍ(ÌÍ”ö£¬¿U?3²'~&n‘õËä/²Ø‚šyšºäÎ=ÍRæi²ºçi´åØå=i [ޱ¦ƒ·Áykíç Œ‚\|ÆòHÛÕÂú}VÉ7$r Ö¹r¾3x溧­lñ V/Ö|E×% û%özD艃øÝ`ÏjulrÚM˜ÖíµZeJn¤te@(×n¢ˆ”'xÄllEv´×ŵ‚¾wú2qðªAÚI5ÈIØ`ˆ’…4²·Â¼44¤Âþ \‰±}L«†2¨-GEõjC&4(ä=²F{ÄšŠ²F›JÙžÈÁŸ}¹AUÍÜ"Æ•#Q1å }#ȹCçð‡ÍæMó(Éüt¿Úg§M)r5ùüÐçèCÌ2Í~q3Í ½kŒþãBòÁ:£Ê8Ò§C›ì«««6È•¹ä4>'Þ-ÓHµShÈ4();±‡þw,â‘“¢ÿ}A ½oƒe#÷ôÂs–"1ùe—çÏ’ñ0o®ƒ.ž6(oÉÍWR~®1h¡rYôœIL–‘qâÙ—¾Áø¾n}OBí¶È¤ÈÐ Kòé:“ƒœpLòäz'y™·µõ‡hÄ39ìwpõ©^™#ÿ]¦³¥!†G |‘ k|Á?®/.«ŸE18È?$ á}5:›‚<¹r2ŒG ‚cbͰ˜bñ2ºõZÏ¥-K>H &«´òÊô> ùù®–g\¿"W’ÞÚŽ®#éjcN4ôBp6’‚+d@5#¾YØŒ¯È)Ès’8ˆswëbc|£W÷é¬ÑÍýÿíFc…¬ÉX/›lI­ìU+Ô i¹’ç÷›Xý­°÷JNÙ¡2]¦ö¶8ì‹««Jž‚\I–±ŒœVúÀJf$ˆÇûƒNEcoü[’p•-5Ð:èYè¾ÉVVœ½³2éá_c,ŠéÄÁc+WRO[?ÞÇ{ò×ð–éR™m©Z?3ÓMÅõ]DÛ— ™ã㤯˜/ôbT•8…Àzsb„ûžîWÓábtå k̉¡§OM~HqC±W½Ä/Â×u¿¢„#¤1]T³QÌ2ÅKçºT¢—Ž¿]äFf»Èâ®Ó}¤¥à ai‹ò=oD¥"õx^Ýúø‡­ ÊtçÐévhUF»å_ô¥àxOOÂ-?ùþQ7)=î&‹[ܟMòŸÌ“È"ùD$¯‹äOR@jSñv¢³Âú>xS{²°á+|ðý^¡îS#>Áo—6´RÜ.ŒÆ;G‹ä¯Ê5øúÔ2š>Oj®ä_™Ç0}(¦ O’W²Ãù޾³ÍŒ\ S¥(ÄZñ•˜.2žJ§3øÎà߸U0ˆ‹^¦q9çkxÜ:aÒ¸QFSÓeßkþ¦«$ÏÙN23bU[ Žé’H—@×¹üUo’kóIH©ÎÈsáKÎ!¯o,=RŸÆ/7iˆö õmlbx->¢š¶6<5Åľ­ì›>ö?Nò |Z³ì|Íß2H$S+œä9|Ѻ“,ã’§f@Ëò\ä :^D€<ë&+³Ã)ÌuÚØW&ûÉ«›k Åž:§Ëù·—/gßôܸ›ÖÒ`UÄü¦Ú\šŠ7OŠ*íM>VcW;}Äè ú#ƒþÈ ?òê6¦Y°ñ¾mnÎYX¬†"×Èì1ß¡Ò9„¾Z0ò ƒa¼åaÂêošôÀ¼U¯ËSç6ÕöÅzòÔyþ6“7Íßfö^æo3ú¦Hžï•KòÔ¼È44 9êRlòÔrØ¿O-ÇøÌ÷cꈉ܋¯ýÞ­¤§ÅϹ-OhøÞ<ÿ–º4£:µ\³1°«R´+Ø’·L’‹³¥À›Þï»å«]ö/}³$¹’*]?z¯ Þ¦ºT™Ñ52å’½™ÙºdØ‘‰Ó™A'Ÿ+2Ýò‚L«Ö0óRhÎblN5óOEògjãûp1{Î(¬ !ÐnÖîBñkV\fK´â<[¢o½%+œÏ´4ŸšrøA¯6ÿw­ËŽºù£¥ðƒó8)€sb`Q”A>í»ƒü`‚^?A/¡Ãòâ¶èëT‚@eÎW,FÜN´O~Ô!L ·5“fGVPmö½ï ÁÎE·4*º2.º{$ùYv;Q‚¨žÓ)v^Gle¨$X}A—þåù]ò¤ jÇaÂ>Id Àu€ ª}:XëuðÎT“8–‚ûÜX+}£½é¼'y”SvfÐÈ]¸íXiƒÁ˜å’g¥ )u&™nÒ©}›‘K fàScζð·ÂöÈ,©yét¹A— бQ¢ìË œõmUçÈÈf‡Ì6z~œÕ h‡:OôÇÙåýþT;èN¢ ¯® ödyÆHqQ#Ý4 þP|b±SñNb;*¡°Mp7ãËÀ@Àï±­œ[þ)ÊC„½œ¥ã^ŽœqËOÌ¡ùϥ͠Û9ùÖtXÄŶ÷þ¨Ëmç­éê^rkº¨É&}‡`£Tû Šu/ì©rÚ`Ÿ4© ö!ôDÓ†ótK×¥SýzÒ¥.û¢ëÄŒtXÅ:ñ“Ç¿®2í€Úر#'¾êБW˜ ›;täšo¼#é09Ç:òÆ– ïȰĎx­àÖZû`¬<®ø€îoµƒºî…>”‘ÓÆb ÐZÐB lñÍÜeíf3Wæ]pK=Öƒ  kmëÎ/ðŒLÞ™Îd€mÙvÙœ{¤{ÎÄ™ ­ü/êLê;s&÷EgòXßDg²2Ι„¿·/=ŽÎÉlw³PØL‡Ñ‘Õ ãxœ´Å;” 0–{¢cyÊB°‘¶˜C±$7X§îá-|䬛¨=eăN¾Gûз?ÅÏd\Âж o[¶-*àÉzäÿ§ú§œf­ “•“»67kwU1 ×Ö”N[´»óµñu>L±ñéºEÏ¥µˆ™ê/ ç’¾…bJ,j6§ëþÔ$|t7¸}ç…ÂÓÌàNSƒ«Ì“gL&u6WŸ`s1‹ãF³D'ãÓ&>¯†Éfø?aoäJ›–³¿Ö‚vmèŽ9åÒL<ú5¡‡;3¡Ù4p?Ó’hB“‹n¥á@‡½Yðcxb®Dyòƒ¤-ÔÂC»;c01_2lS—¾¤2]ÝO*»˜IÏàÃÛq3A7•B]Ø’_š±%ñM(HÇs—+µ&üè‘X¢ 8C*µt­‹‹;4ÂWyFvh[KĪ¿ü‚«?õUbõÌ"^Çɋ׿ÝÔ¡~º ˆÕÿÄÃç¯?ZCâ´Ã+˜Ê+°<ü…u]¬ŠÜ®ªèrº„o"•7¡¾Â~Ò+>›üGUú‚<7[z;ä['ƒòºååér^q¾æ…ƒ#ª¯peÉKÒ8»¦,îeâl¦G†ß5â&ÇèÍvÖ]çÀ·‹¤w6CèAƒ×­ÎãÓT÷»Ô°¨¾y•J·ØFé9Ç¡µ¼Àݼ#‡úö„ Ù¸mî›s¶õzKû^Á?œ¾÷ei†ÁzH$!1ÔjUÃäd?è{Šy7;€ò¡Oèf& rûSÒ w€H‚/ –·^Cop‚"¡Nм€zˆ©¥ïè`e­P¶õT;/öŸ±bè4¬öC÷ÿ• 9ˆHÚ8ÆÏ6µâò•¾› c}R¦C^üZ¾’–åÈ:FŠè<©0óþ¾è> á L|užRi#Lz n¤Gn\HV£r9tÓƒ¬kƒB_=©):UßjºZðÝÏ<Üg™/›DïäöÝ)ûq3‰¯c&ù<"Éþ¶da}}ãÛ-){U•4úÛ,>+5‰A½Ã#ƒü+­&¡ö“3ª±=+õHò󓌘r“ƒ]G<:݋՜ÜHã5_¹È'. §@Õ ûéí}È*Äøõ›8+ÔF5ÁûIÖ6cXl/RÔçaÃNºßuîbû^g7ÓoÅY-±ÛQ$nNC÷^Â÷eã6´¦ZµÅAV×<3éo¿èmF-Ï}Œ/!|V`Cq0²s›˜eÉŒf|"N‡\¸ ÚâEô?Ç1ÉŠ¢þ„¨6D ‰¢žÇh“H$é8ŠøÎë.‡æ¯d‰|¶·õ¿~ÝÚ Ï¼.yÎím}0ô׉ü·‰°¡uæ|èÌ9+¤àHÐ&sKrÿH;ÿaméuÊË'xåzžãJ‡Y’ Š`εÕÕ‚åÚ´ó2é­¢¸||NG"ÃgÄä×9Ÿu‡1ò¹Òjñ]í=6œ!‡Ö¬œKߌ»¶Á„~èîyè#Öÿoþ*(gá /û¢‘¶°?hkòÇâlMµé a¶Uÿfʃ† ¡N³ïX›Úð®…L­Î|Zç­PçÞª!­L|ߊÏI ¢{Sr‚­£ÕÈ+Ë'­¬”Çñ7"vŠ&ž!WÎuØOx§ùWÎ3úŠd¿³Ë9£­!¼kù‚fžnª5ó0Ú_apóòê&ØÔ‚rñÌÅáË‘ æ}[ë»*b­Á×èÖ÷&}åi¤ Ì£aï$æŒy]œb\¶<[+¾’7Ú~O5?€Bs€A“j(ÝïÓ¶‡¾‰>õí~Ÿ¢wCÒë0ö:Úk1›ü •ÜP&®Fqq?`Å*~öÞ1—-pæÑ ÑYTÉ`Õ=‘ðûEØ©J°ôåó²7cÙíP¶6èÃÊOŒ–ÿ+MdBÜ)X6 ÅE²v¡F®¢ÏZ\NŸ‹Ic.bõúH ‡^ŽüCò¿l½»‡C“ƒì£C®F'†³Ñ‰áC:…õï³"YØp,:CÒf|Ù˜¼Ú,êðw5«mì`æÄÚøÙŒàtÚˆÓÖ©Êàlrøl6ñ-íd&¡K¨ËoüŠN'¨t>™0ŸœlÑÏoµt˜3^méΜ±q£¦¢ä‹µ%߃MÈm©]Àå•u”¾=> f€“Œãå‘ÿ—‹üY’ûHrž$ÁܱB’a›µ0Ý匬`¯×yVLÞï‚W‘ä"Ø9‰pÍ=hÅXðõЀÐ|Ö3VFÂ’2ÃZˆw¦·JÊD{ZAË™ù’iyŒS¾á¡”nòŽ›|T×UdÜÏ vi9—06¿šÏ¦CÒ.)ßÌp[9.ö~ÿÉ\`5гZÌXµÜ>·3çÌà9—Ñ´Í!_/ù?°HÄ4–0š±œ¦/- 9GxÎ`žƒ”¢2 <æ1·2ùïT‰dÃ4Ù’{6o€Å› E¶ñ"ïÎgEž§iø³€ˆól‘ïÍ*Nó§y4JsÅQȽ‡çnc¹Àß`À´OÞji/¡w6»<¯¸K“+ëeWèK³¨¾¶æ:(w-/·sÍc\ å}­øÔ} Sç12q>—à€ý ì± ÊDaœEZÑK@}ˆSbÔ¬#KР_F *ç¥L6ú¸dG¦­ì³¼ƒ±”ýÒ úîÒ›xé¿”DëòÆêšÏêú˼h]¥œú%ººvÏ£u¹•ì ¨¯ð¥´~ψ/Õ»aÈÚ¡1¼X…VL™8²Z×8÷ç$…¼Àw½–yª˜efG9øï\JžhÙ6×ç¾a@´—õ/áÊz¢ÅÍZ™¿æ™§æqöÇ0ÿ©yìö×_²q_ˉöÎÓ8¬§Â`öÍneb­‡Þ•TEuÍ, |è èg<´³wÐ6ù‚…ä`v3g¶jžÖ!QëÐ0žY­iU¦ÍMÊ3ÁÄA‰X2 É;…ä4ÞUÉ$aóPIØ‹iCߺ‡ϘÚU´eƒ_uá×DLµ¸íï8í'ÅQÚ³ó)íKWQÚ!H;ŒÑ>Äi›5Ú}Œ¶}:¥€´ßCiïâ´Oj´ÿÅhß)íjy…ÑŽá´í2F¹‹Ò¢?jyœÑš8­C£Âh3í”öÒ.f´¯ŸÑ¦k´Cí-ߥ´há-"£}ŠÓž¼'J{ª„Ò>:žÒþi3Ú5œ6¨Ñ62Ú c(mÒ¶~ŸÒÞÁi7k´2ÚmWPZô -{íµœv¡FûFûãË(íóHû0£=7—ÑNÖhoá´C(mÒ–2ÚýœÖ¦Ñ^ÂiQÚß!­Ñþ„Ó¾ÿý(í‰y”vâlJû¤Àhïç´»4Úçí_3)íSHûÎ\J;Ó®Óh×3Z—ÒþÒîd´Ã9í£Å§9íO–0Ú3w3Ú íŒvØJû(Ò~ŸÑ6qZ«FÛÑïGiÿisí8íßæFiß*¦´#è £BÚ$F»„ÓîÐhÇi-”öA¤}ãnJ›Ïik5Ú‡8­‘Ò®AÚ§(œô FàÓ²ã]U­ÎÍñiù|S i‚ùë‹/d\OÞŸŽa\[2±®Á{dà™yfß»£sëNžóÙÝ,g/¤åtÈx’g¼u7w@ï‚úË]´®jž×È ýè.ôk_Hf,èá™?ç™õ˜&fÈqñ™ç,½+êíÆòœÿà9Hé6çºÉ$X å&>ù‡-\äS(ùé¬äM¼äå”¶ãMž3Œç¼GÓ°j¸*¶jxŽÓ|~£9t'ÞZÿg)ô®Y2Û¤¬#Rè ³úª÷J •9íŸîâbŒ“³›œj™uv±jË8Á¯9³å4m8›wu†÷Ôž¿Žç»ïŒ65›ç,ã9·°’°ÖHwË^Š šN3Óü›JšPÿçpýç9H)*33nϻӕÑÿÐV8WŒê—9u­+éñVËýwÒHVíQ6×=Á ÿ~'c»sgc9Ž‹ X,½£€®’ÓíätJ<ïGDR‰“þ''¯'ƒ¹–S,dÏÓå:® (~N˜9‰“36'ªË­ßc9£XÂ϶€|ñì”Ô<ï푉@õ§JbTn%é‡Ôüü³Bõj…«Š©u!O(´ž:8‡[ÃÙ–ê6â½³—òìßÎá:ÿ½¨fÏâ9ÿ{oWUñÿŸ»€W/š{¨h*.¸æ.»  (bV²)$ÁÅ-ͯyº^µµÒ´²²Ò¢#“W4-R+Ó35ÓÞJn|_¯™×Ü{î¹\—ßçó~üþøtyœ3óš×óõš93¯yÍÌ9s«‰ƒÈ(]§(Ùßaë`ÓmI&™d†?* ¥q"‰c|ÔÙ¦Ç1skœk›þ”°ÿ<*Œ!ã)nÓó¯0›^E€cP¹qœ£MO#~1ñgŒE@œ×ˆóô8g›îO˜Y„‘6݆8‰ƒH×6})ž£{Ù.ã'¹Ý¼1ÎÁ¦÷°>©ý-¾n›^O¸ßÆqÜgŽ8¥M›º K•PfÓc±rœ£MW²ôñièÿò )‰Œ6Ý„8ŽSÚôxG›þs,Gõ'lúí ̦ױ ‰Ž}7M`6:Ah; ÝŒ·ÙôCñv›~•Ø?sveÙXaÓ󉳋8ˆ¼›MG“Ì2’É+ ¥7qòˆ3h¬³M 3š0Ǻ¶éßãÈþã…1¬y‚Ûô–K̦w@OÊ*âmú âŸK6'Šº˜8ˆ³*ÎÙ¦Só6aºŽ6=‚8KˆƒH×6ÝŠÐO—qäqn7_Çq›þÛô•1Ø—ÔzÅÕmÓ_΋pgƸ´é =ǡەPfÓÏ¢4ÎѦ}€¶ŒïŠýŸ¯‘Žic„IgaœÒ¤;Å9št+B='LúÈc̤° ‰}¿{Œ™4ê¡s£¹Pç8›IG±›t9±=¨LG “þ€8—Æp"ïfÒ³HfÉl-ìd"qÞ NÚhg“L˜ç3n´k“ö&ì˜1ÂöŒç&}ü3é?c©ÿ“²[±Ž&ý ñÿÛXQÔ"â\Í9»bMúEÂ!Ìc£…IO'ÎgÄA¤k“Ž$´e´¸ i<7›±&íKÀ$R;0¶n“®‰á¸„kìˆSšô!‚ z.FmÒïâB¬£IÅ¢IûB&ÄWQùfŒ0é,â|«4éøXG“Ž$”%V˜4x`Ò×ØÂª‰__ie&:Aȇ„ÆÅÚLzfŒÝ¤ÿ3г¡2µŒ&}‚8­‰ƒÈ»™ô;$SÃevb%Î7Ä)ålÒé„yŸ0ù£\›ôÂζp9ž›4>šÀþO€§HY—QŽ&}3šó‡ÿv´(ê)âøçR´³IA‰0‹F “ÞHœ³£8‘®Mz¡‹G‰ËèÏͦÓ(‡™G4—‘ÚÉÑu›tÂM&Ü0GœÒ¤ñßɱõ?A}”PfÒÇÑb”£Ig"2yüìÿ¹Í•|%lúUâü­´éùÑŽ6G¨O£…Mã€6ÝžMšÇ1›î>–Ù4ê¡@Zm³é·¢ì6Ý–ØÉT¦áQ¦ë'’8ˆ¼›MÉešÌ?#…¡|FœQœS6ÒÙ¦ óa>éÚ¦Ó û~”0†6qܦ{W2›Ž À ¤lÜHG›îDü§‰ßÅVԆĉ%N«‘Î6ýÇŽéJ˜G ›® Ncâ ÒµM¿AèÓ#Åe<6†ÛÍØ‘6=“€Ÿs`åŠuÛôh­ ÜGœÒ¦;4 J(³i=!ÂG:Úô+,}üD€üÉ!íIÉHaÓûˆS¤Ò¦·Œp´é× õûaÓãG3›ŽaA“[1̦Ílu‚P }0ÂfÓßFÚm:šØË8»27RØtoâä‘w³éÚ.D2"…¡œ!ÎÃĹálÓe„ÑæD„k›. ì‘ÂFÄr›N8ÃlÚD€mP¹ ÂѦÇñÇEˆ¢$ÎlâDD8ÛtSÂŒ'Ì/¦o'ÿODº¶é¯ ím»Œ¢n7ó"lú-ž‹àj¿^·MÏ!Ü—„[íˆSÚô‚®$h†Êl:€9Ž6½—¥³»^‰!%6}%œsúF(múÇáŽ6}ˆPÆaÓ[Ù{¯gYÐä£(fÓ8‚M£NZCBLJÛlúV¸Ý¦gûsή\.l:8¯‘w³i’™J2£Ã…¡4"Nqš‡;Ûô…0ŽéA˜zá®mºŒ°ºáÂpG›¶œb6½§Â¹²ÂmzñwA˜(ê$âl"Ž)ÌÙ¦ƒ ³0á¦;çiâ ÒµM_åèÁáâ2~‹âv³9ÌÁ¦¿%श:´n›~—pÕa·Ë§´éçZJÐ5J(³é „x-ÌѦ/³tv×cAž%%q¡Â¦"Nb˜Ò¦ÝÂmúŸŽ&lúäHfÓï° IÖ…ã Ø4ê¡Ý$äf³éΡv›~‹ØçBy™¾ 6m!Î!â òn6ý(ɼL2sB„¡ !Î\â„…8ÛtsÂ\·MG¸ ÷gK›~ çƒ9t·Êlz1!;Út›`q×c!6‘ŽyA¤£ˆ³4XiÒ½‚Mº#¡Ò‚…I{1#ö:ÁLz{83é_#˜I£Nú+ õ¶™ô¸ »I&¶•©&P˜t1q®q"ïfÒ If/ɼ(ìäiâl&NN ³I‡f1a&º6é„$lá›áܤOÿÄLúŸaÔÿIY½@G“þ‘ø-‰b˜(ê—ÄÑçÐ0g“~•0?rLr 0éùÄÙEDº6é8BŠË8œ›[ ƒIw!`© V·Ik J¸VŽ8¥Iÿ0”C›ô¯¡j“."ĵaŽ&=r˜¸ë±‚ßqD喡¤gçóaJ“NæhÒq„*&Lz 3b/ š|ÂLÚ3œ™4ê¡6$4q˜Í¤ó‡ÚMºvgQ™: &}†8‘u™4m<2p£þ¤Xý€ÔwC„¥çâ¬âlÔÏæÂX†¸6ê0Â>?TXãhÔÆą̃ý0‰” BÆÅö+ù)ö+ù‚EŒ ÿäÖs~0—ëNrîCȤùž%›õì&œ;á~ì€cÑñͪCú2AO áÐO”Pf=Ó ñÙGëñbô®볆ÊÄ]|û¹Á¬œ¡$²ˆ”>=X4]âd‘Q:ßHk¨_M„¬c{â° ÷#øÖ òÿC¨½>fvÔdq03§êfN¨³Žöþ’¤5”Õ™A¢½ß"ιÁd태Û{>avæÕANí]­3Ÿ`íOØÕƒE{¿9Œ·÷CÇX{÷!À4R<Èщùñ›ÚŠz} ç &Ža‰uåNì{Â4#ÌkXTyOåÄØ(X‘[ qu½_¬\:ˆïÿ#æœYù£›A“h"Ö€9â ´ÐÛà·cv“ ÿî ê¶+BR´Üµp#‰k!mYEÓ÷ Î3ÄA$4}”Ü^Ñꬡå‘lÿÔõtý t5¤¡/+ÁJ|X\Î/•¡‘ïe0‰°<ámC~NÈ[mÈqW¶§qÛÎüÊQòÙë² ¶U}šñê^ƒÉ‡§ýÄlë膞w]“ça ñfç$©Z7ïl­qeéÂR¶—p,e³ŠgÃv¶m¾m²¿Š•A>†qÇ‘öf¤|„$áÇâ;icý<¯í”$_É„[/oôç¼!©®ÏV>>€`X¦†l;Ÿ­PW÷ÖWîÁ˘mIñóVë{Ÿô]`Óçqw}¢®®B½àg««F<í£@VW›@9æ%La×0Êk>Ï«rPaÔˆ3™8-ûcoAMëq °+ï#*‘~:–ú?pü#¿ÝMâÛþ~¹°…Lž‘½_ľ@3TqÉ’–]r1 _ïo»ä)ý 6ÿT­T›0ïëÐ ¨(ù¤ãø¡Ø¼Á}ÊR¶…+«|ñqM£‰³‚8=âìSº&‹0éc É¿¡cNE"ppáT6’S9p„9•_ûq@[ÒöO?Û r˜©”ã‹ÑUä—ÀU`þ[HâÏG¸Ä¾~Ü™ä—Â_ ³"- ž'Ô~B½N(]X1­ °éQ²ÖCùÐì>ÙÙLJ«!œKšUj’l#Vw€6&èX‚vu‚²Ð›Uôé¾ݑзû:¢Ù¸õ%48Ž[ñýØvÐ K”ßx9zÞäÃÙŽügåÜè0à ƒ®êý y-žÕ£@Ñ4RTÜO¢ÉM7R¬^l·6yoz a½`-CGZ‚<ße}¡Øu½¡ìóc0Åׄ÷/Û’Òd®´²u_ y¸£YCüÎßÎßnË+¬¼Ô—íumZ›ƒÖÊ^ _h ö¬®Gw<¥ÎC$|?­ û “E UhÀ-É–`o¶«{CžÁ©¾ÔŠñåLÿ¤¾X=¡¸ 5ºí.4í —Ø'ZòµÊ¾PQ0Â@ñ ÂŒ%}/q}•Q}ìä±7ìCM%̳ڀg $.ˆÕû >F‚(QñµÞœ? ¯½&°œCœuÈ„!Üæ®àáÐpšÇDy'(‹°êµØ,¾xqPˆkßÊÑ-±Þ ƒä(¿Nøa¯è øµ–‰ÜÂ…G[gûá`o.²jÁwjwâY[ao¹ÏöDoåUÄ÷Æo?mÔ@M¸*ïD|£·¢¼ œË Y¡ùt’A]©¶)J®­<ò¾”±×\š×…Õ´Ñ|DK%ÆØqøâøg|uÊ<?ó6²AË|‹Ç3zòkþ —Ý¥àe'õRN µ¸—m‚ô~O€W1.\Jc”7O>!7˜›ÂpÄ6°Þk¯îËLïj\‡ýÀ•öî%¦ØY_íioµ³•n½¸+Ý]Œ¥¿ åj *> —H4îÉ<õ b}ÇY•[ýd1ßí™GÜO‰;„…ºËAÆ.{/…-Çñ0+3%@5j ‡.½Ã–£;ÖöÄmóžéƒï]55ÿRxý îØ¿Þƒæ¤ÖG­öG´ìI•} •~À.k1opéï{(ljùžR;†[I¸ï ·½‡˜´Î"Îâp¤w„ÇÖèâ¹L^#›WÑßL`Þ$ß<²QQ@©'ø¤¢)å1žòÜCL*nv眡ÄÑ÷pžT#L Â\î^ç¤BË&ïøB1t'õç&œ÷›T¼@€ƒP¹±»Ó¤¢ÜqR1ž$^!‰œî¢ŽËùElÚÚÕ EQQÝ»ÙÃÀÿ£+çwí® ¯VïÆfž0 ¾ µ[Ùªz?ìDZÜÅhQp rXi%\åÖÇq·.S_u³¹õ«•}º‘[/U Cøršw¼/ÔNi˜<Û¯S$؉?¬NŽÌ…šRQ+vôš[‰µ“£×ÜØÉæ5·@©*Ï>Œ^³~üïþ¼fePÐIá¤n?|Ÿ^&ñæý*¯ùOG®yP'¥×,zø.^s'‰é•šê\ '¯©^S.%¯©ÿ_÷š¨p“¶yÍ:²†l@œhÎ!¤ðš:pnâutöšû Ó€0¿wPu¬Mø£££×œÕ‘yͪΠ¯Ùi§ðš9$µ•KU.Q«M€•^ÓŸ_VbN#éQJi…×ô$Ü(Âõê ¼æe?ÎéC޼¯ÙŸ{Í÷HÏùÔSü„×\NœÃÄYãçì53óaùÝáÖ0Ïï <Øï]¹×¬_ƼfL$mýýîæ5Ï·çÝIÂÝ×#¿UN7°öÊ@¨“íUmõÎù‰’-ñçnëQ?î[¿â¾u6¿àÀÊUJM޾u4AWtŠTé[Û:•ÐCThÖõo·ã @?Gߺ²=ùÖ à[ŸÜÑnÜ¥~QÉn`•Š3Æ…«…_ýˆ”]i/üêš.̯&° Éº‡™_ÅñüêÜg“Ð\¨rF;»_Å›TˆÿZ{»_…eeiåHL°ÙЕù׆UÛãÉRK»I_j Vú-äáíõj|…Û´F´—lKÝÒÊÂv¶ûRñ¥´Â÷¥ºòûRë*Ù})RØ+‘;ÚrM¬&¡üÅmÇ…µÄÿ¥r\¸X¹¤m\èª+¿nË—ïª{KìV  Å.ï’ ¤f·³ùá‹•gÚ’.v¸«ÃG†½¡þyÅa²É¯SXÏÚHëžÜTõ2»mã…¹6oËZžßûò<šµ³+_j‹CDžë¢­'±ßÚ*Š6¹h–°4DìÅ!bGÏ«0>lªLߎãÃ>üj¯Ñv³Gˆj7~[æÉb#Ú(ÇÞÊ:qC&ÛvC&G Aùµš¼ÀºîÍ8Œ"â6˯ñò·m+‰Û,¡¾Ìl÷§çRŒ"ï·Ê—s³|m£È>E “O˜=„Y÷Ê…$`£¯m)ľÙÇ—"o¶ÇQ¤G‘ÚÊSŸ‹Q¤+Ie’ÚpµÚˆöUŽ"gb—u± g´A)­EöÎ@¸ómÄ(²™8âŽT"N¯â:>VM#¥mÄ2Š8ˉ3®óÒ…0„ mãú1úíÖäÿnú“¼–ogÈÏxˆ”]k}oÑß"¹sm¸Ü—­yEª£Ï!Ü—„[íˆS>FCЕÍPBùþOBä´qôæ{[³ÖaÑÞàÑ7´æûŸZq‘a¤´}kÑ¿§qéò1ú6×´¦zôšÂ^Üo²¿-óùý˜ÏG¶Ø|‰ß«lÃ3ÜŽ~Çi_å&–rLñíš:–fa”áó­i,l%v“øg*qz3ÚÛÒÂn!‚Œ H;¤“…DÉ'™ÏØYvQd ¯Í¯q›†ÆòmK.ö€¸È&ŸtäÆòj1þ_нe'u‘wGÉ©8M|ƒà§[ñ\vm«ÃpæÍðÔäá3Þl’ø˜$^hé` ÕmE˜¥„™dÇÐ3UcA©øºÎ3^âéCrãH®;—‹´èõ0”+¼7ä\ îL`Œw÷«‡faÜós ´ңý÷\K1À‚Æ2b'LºJƒðÓšKŸvce›Aàí\ù’Pª7°ž‚Ÿ´‰#P¦*@âV%ÜçЕ`™ ° z°½ˆÓÒ±‹¼Ùÿ½_y~„káq=+ÖoÍ9¶=©ºÑÜ–£·­X;t»}¯)ŠU@°öas[±Ð"§»¸…c±,Ù„ÿ0aa‘Žÿ…°7çª6³eék+—•@ß舕+—+•pïnn3[¹°“‡{qsÇrýÔ Ëµ§ç (™›qánûÍý8)ëeÏ´“­!¯<ÈA} ä¥aC‚ØA‚5$ØÙmÃëÛBì?›9 ÿ5™¼«²ö:§ƒ¾àÿ'¢ÔôD„u†!T¾ ^$f=²2yEÉç*o?ˆ_s>]Ý¿giþœrìÖòÎü†PKØAü(Zh…\‘_ÞÌ|ÂV÷>ÆKüQ${$û`GnCÅ™ØLQZæÞõÄ çüâNz¡¨'m˜“M9¦IKüZ#üaê–_So.³ÂÜfRû>ãóóxXï~_ÁÒŠ£,©Å‘àÎ#pÎ'Ç~h&±}\¬r£aÚÜNgêˆíOüwˆŸËùÆmíòOêòktÕÍqýG¨ù„ZÖÿyÛ4Ã?4 ˜–„y’c"“¯V.j*®ðvÎ äL¼üõ6æoÄlÏ™ìY»;Ö”}…©] Åã¤ÄÙ²¤Þ'© M©bÿ@¼Þù#ÅôéyÂìoJ½€ÑRT瓬^;$… o7µ×+ÌÕðÜ_MØâ k4Rn…Íüg’¾'› ØWµ^ßV®a¢bSÿž'ð[`“ëxlÔŒïúÕ‡ëmKzÝšˆQvqê磿¥ö:a~oÂ1ŸûàDì;‡a§%eÕ° ×°ùX&‰6Cìê‡ø}´þA‡IÞ…Cl´|6²3n  $ôÊ`”íyó%~ñÛ1ýš;q"ˆããC£(îyÌ÷¼z€cüóžûBpʉãADòOÁfJZU\ ñÒ›ÑB÷DDY’½«Ñ°—ì×>t…ñåŸ 'ÑŇK Ö8ÿ'äFDZCn€i44>¿G‹T“ú(’¬_¡©¨=9ˆ1p/B™â?BØÚÚ Çp\Óðô-_‚ƒít‚Z¯6XÏç*ÛøàÇ·»óÔv”jðáß/ë ®¾ ?ºÝÀœƒÂV 2nƒÕóà“Çà‘Fs ÀU7Ès­9²‘£DêqJ}R?G³Ä\`ÕOöÕùP?ÝàpÐi4€”êŽÛpÉwIr*JjIrJ¾8ZF¨áX™ûv]Ç'ý³„f·ÁÑ y”Ñœš}·{r™É$ó—aÿÖ*u,ñ¯4†œñc˜U„ƃGÆ£¿x]Ýf»—èAe(Ÿj¬Âo\ îCÄ}³1Ë?»\õ=òr¾ñó9¿YµM¢ ¬v†Í›%v F.SÙŠËÄpüÞdÕÔIücÄïÁù×pQÊz5¹ËK¨n½½N`-³o ÷ÌBbžiĘìS¡-·?À™o³œ3ñÿßa3gÎ ÷@®iÅR#át3¼¹ÕÐÈæ‘½ i} œ]¸¡j÷êa{¾‘Ò=^FOqØ[l°÷%PUF1N8Ž?nÄ.²9%ß®<â7a†Óêÿ7#ùÿFäÉoW†{³¢xGËϱý_„ÐPg–›ßm¦ð»=Ot%A¿÷æÐ­Frù—Ðå—Ec µ¯uù,ɯ"ùYFáŠg6q‚í°ày ¤'ÒwZðèÙ‚çdCÿ½…7öhÉ<ï½_Ç‚ç#‚_1ò\¾jx·Ï\’(#‰—JN ž'³Ž0yvÌ<íI.•ä†p¹º~Î÷B^S`jqRm»¹Xõ1–ÔšgŽŽ‹-ÅK^,¤xò”Ù<¥?~š§<ÍSPª O)ùs ’)ÛóÄÌ×’jÀÿÊäÉÞ<¹k}šŒCz{H¯ñaé>xµ»"òoèóNó’{ñŒ|ô#ýi`ùòŒ¶óÄã–‘¯È螼ˠÊhOßà”ÑF>œÉóÐ ´ˆ§t‚”—xЉ§Œ‡”WxJOñ”7xJ,Oi)ïò”¡<¥+¤ò”®<%R>å)-x >pû‚§ ì)Ķ8i½Û‡íN•4ÐÀ‘ÆÐ¿·“ãNÖãƒSÆ9{‰ã É?qÃ(åœÍõÈ0v°±žÃÄà“¢aîÜhç×ãF›Êhöþq&§£hB˜–PdÛ”HæD‡Ü¸Œ±ž˜uðáS¢Õo°› pÑ+Ýëv§—:Ÿ#t©»P×׋»õw>›y» x®&µYn¤FõRg7Âen¸#N< Æç Z‚†´•Êž'œÔsD;wÇ!gš:\ûõÜU!VÀ­„½êÆ}–Õm  V¯$4)åÆêÉûŸpÌ%¡2.Tù²^ŒŒn6ID7ö8ÖȤ±Y">iìK éŠQ€ìÓD¬Ð¼Bõ$NmŽóC,Ã÷:ŽnFèK:e²½«ƒqþK +zúJ€&¸áxõ±r6Ÿ!aÄÞjmÏ«8.rÑd‚¾Kš¬:1 Dgq¥ëi Ç2®_·nBr’Ü è)7´œ3„8:sOù0Í ó—öî=åM’9£¦}Û÷”©ëÙE. Àn¨\«½SOKèU6uƒ<¸5ºëzŠ?§’Ú0mÝ=EG¸0µvÄ){Ê1 ÿ½¬Q÷”m„¨Ñ:ö”(­sOy°µ¢§•™:#;5Ù”šâîÌÉ3eç™|ƒó&MJÍñ ÏËÈpä‡deNJŸ|ç<îôëÙ= {¿®¾ýºÅ¥f›ºõ è@åÊMœœ:зCîÀr;uÈílOQR!1¡aftȘљ%'ÍJHÏ4¥æd&f$¤b™|;¤xHããÆ…‰‹Œ%q…’ {uèÓWš–š“›ž•)IIYY¦\SNb¶o6¶[*h’ü¤%óÍJz*Ê—À¾ºeû¦d¥æúff™|§&š’Ó lüyRð¬ôì^Ý“mõ45;'5r“8}à@Æ809+3×”˜irÅOš•‘ž$JW7$3uº'/Óλcþ¡é¹ÙŽ]ËU9RR'e$šR]é ‹;&æ1—ÒÉY¹®d“fMÂ>zÇüMY&hÐôÌ„Œ,|3í.¸¬<“ èªÞyjjJðLSj®K\^¦骪Õ5é —4+=“×äq„ ÉÊË4Ý çªæÌË”—ëZ^]³wÆÙkÖî^ë˹f]·¿ofjjJ®o‹‹î׳ûŒ®¾3³ò|Ó§¥BÏó\e†}¾é¼«Âhbš™"uf¦B'ú椂çCÏʇÜ$î m.ÂŽ Š £q…Wèõ5e9eãR,,¥[VfÆL)·+ºúf1-© ë®ö盞‰ŽÝ®<91/")Õž‡ïô´ÔL_pñ¹ySS#Š ãEú¤ôÔÌçÑô”Tßä4Ð’ÌJˆðûÌYúÿª‡_¹BQ®­6¸Ã¹'½^È©l÷.ϲt’~óÞõDµt?×#ô8Õû%g$ææŽ‚”®¾‰ÙÙ©™)0ÐéÙÕ7™76Fs§&fd èŠ].)+7Ý4‰Œô©é&>+ åN“‚O€ œÇÄ <*>.‚E"GEÆ#!ÆÆ"tdLBؘ11c0m'˜˜@s æ¨P¤BƒÆÙ±Ac‚r1ñcƒãÃÃÂ㣢‰9ÜÎ6>6,dlXhÎtPyØèø°Q!avŒ=ƒ„è á‘!’ÒLKÌHOñåijbrNÖê1)#+yJ\ú¬ÔžS0azVΔIÐhY9ª*•ìC‡/Ìd²%ßnè<$_øåòôì,6«Á²ŒÂËS°ì?æRôËÊN„Éi,Rë–‚ ¡ bÁºn¨äÛ! × ' –À؉ÓÓ3˜x‡Œ<g Ù8à¿r¡Šì…ŒÃÀgFZz] 1DÕÉ`"‚Ýcr®¢€x-3<`Å‘˜”Î š…Gˆ ØX0EVÒ\‡‹c‹‹sfDEFGŽõà ¦BW…©ëÖŽQÖÖþFI Š«íÐÂåi¸;§êlmmmî}¨ú c—0vczÜÚPޱæûcÝ1¶c£0öÆ1¶c³0¶ cl[ÄŒ}€±Û‹1ü÷“i'1–‰1¼}Q•‚1¼¡Q…[íÓÖa,có0ޱ©Œ±që…±넱¶kƒ±zóÁþ+Ï*Œá{®’X»zbø IÕyŒåcìÆp„©:†±(Œ}±rüÿè»1öÆðU§ÅX!Æ®bìmŒ¹¹Al-Æ|0öÆ0¶c{c؉«Lkޱ§1Öc1†;5ªÆaì ŒEaìŒclÆúc,cÝ1Öc~ÃÛ‰U-0†ÿŵÊcqóŒ;ÆŽaìæ-ˆíÄØeŒmÆX%Æ–b쌙0vc ;€±`Œ•b¬ ƶa ÿÝsÕfˆ9®¯pýÝ Žzpô§4 ñîÔ·ãñ_HKšo%æ[ƒ^£‘4šFþÛ[þ‹¥£ª‡ÆFã^O©­´œCÜo‚Ù^í-iºö‘´OõÝ$Í X/mY%i>]-¹¯‘´a/Kšœ—%7÷W$ͯHÒñM’æö&I7u³¤/Þ"IÞJúˆ%­W¡¤i[(IKº×ŽJÚqÇ$·¾?Jº_ŽKÒ™+’ö»ÿHzýUIz·¾Fëí©Ñ¥4Öà&.~³ÆHšÞoÏz†åPÜ>tÝ;ªq¯Lmm°€z¼–†Þ‹´z¼/w=¾0š_o‰»Õm©~™åÆÂ±÷ —+nyor®ÊÑ•ÊÑÝÈÔÕö“\è£d̽á{i\å›¶òÝ–èñÆ0—[ˆùxs¹ãºÿr?Àõµ¸K¹»R¹ß |«r+®s6Ÿøpü¡¾ÿ³òŠöÁõá hÿúŽLåú׺Ò× ‚eº¥z«Û÷üz]É~þ“Åå<î¡°Ý¾Éæx‹«zÖãγ%º|½]ÿÕq»g¸œÎ¥àõZuKôùn¢ðîí’ëv—vÅ|ü€õáWÞcù0Ÿ Ïár^÷Ï`µ'ü/Wù8Ö7ÊíÈô¹\nËzhéÔN72k—ó¹Kùßlà)Â{ßÃõLüPÂg¹ìè™óÝ—¸Yõèô1Ÿ• ——ÏåFÞ¹ÿ3µðËrü¸{¼þ»õû5f®OŒwÊûýÂïq‰w¶C´ûn‹î­þ1Ÿ­p4"ü—þ ÇÑŸãVÃÆK¹ÜQ—ýر„ݰüþåÐîG¬àrGîCn%@ÎÜ¿îǘ·æþˉÓÉV¯Þ¿Ü`À¯»9`Çn¸¹Í€½ôÆý×ËiÀZÞº¹VvÜÄå.¹ìO¸ýÚqü ±_Þårå÷!·b™ïs¹_%Wräë—aýâM6s¹w]æç|}7!\´…ËÅßG?ê¾ýÍ".×ÏíÞå2@îõí÷/·äÖÉåÂÝï]î'Û²çþÚý.R÷q¹.ÛÁî÷B!šBøIõî½|³A¹œå>êc+`Ïár[ï£>΃\âq.7Ùe?p¶K?ÈcùO\®Ë=Ž_ÌÿÜ‚_ïOî~Ûñ†}šB…îÞlËÃËVRø …G)<@a)…Û(ÜLᮡp)… )œEáE_ÖP¨¥tO ›RèKa ûP8” ÇP8ÂIfSØ©=ÛPèC¡……W©>ÎSxŠÂc~Mán ·SXHáÛ®¥ð% Sø…Þ¶ ÐÂîö§0˜Â( ǵÔõïÓÖeúÌA êÿØ1Äë§iú¦LÙóàÇÑ‹Z¸ÅoS|ÁÐÑxi»ï¿¡GâW#ýS^õì{dÑ¡ž–.)‰éŸ}¢QÔ¾½mN®{÷Ö˜ Í[š$´,<úÄÎU«ÇåYÆ)ï×üé¹þÇ2ßöz5¹‘÷ã“}[Ï|óÉŸæÌzv}ö¡IO™Nnk¿æÑ÷O­]j}ýÅË' .}Øbùùì²17ÞZpælÊ¢ñOøñgøÛûM|÷ÓùsÒ>YØ­Ç–Þßý£é–O6ÈØ°|j¯£g_©¸=®ðçÈ‘Ïüղ߾î×vµóÝúuÁ¼æ ¼¼~Ý«áŸßøë홵_ú[Huí™Wí¨ìV1çüôìE}J§h>R?äƒq{¼ï¾àáV-CÚï"uÏñ-ëòͺ¥gÌ‹iúúÛž-›~~衪_Ðl¼:ÒmN…ÁpàÐ~ÏzﯞQ¸mÜìôåMžùÅz4ïÄÏ+¦d”ŽÉ*:Û(I{£bÒ—áëŸ2<ñÔãßÎiý褉?Å%¼}´Ûã‘^ š‡noz,põÞ·6ûžHÙôÏ­‡ßuòìë# _ÿòæ–‰Ÿw°´ßöÒªS÷ðßòš~Kƒ¼{ä_õºøü•'ß}940mݺIþË»<ûÇÊs­·žŒ•òNËûU tí )…W–L{æZ|l¯ë§¢¯ÜN¸´coå…9;{~5ô›Eß×~•¿¨ø»>¯ÎüöBÉÀŸßpãØÅ“žéÝ:4uÞ‰¥Ù“Òk•a–Ù²ÿ¹ [^È­.9}œ—>æ7ï=#û÷[¾Ìxð ÏJ†L*:pA|Ü“!£_ÔºCçŽ?µ½$­ï:¼õS‚£›÷ûOì±^]§½:ìÕ)êø}Ý‹_­qaµGí¥q ¯ohä]Rá³òÕÍÛ/Óºá¸}6òâ&NÝRóCvÆÍþþ§R‡üqvGËw«¸§ý¹íó‡м}öȱyoý’µ.åøÓ‡Úïþ¹âT©þêë‡>©ž¸ÿ9ëÐ’ýËk?óÞ¶cë;ïÏ)|ãÆÀšœ½ñÞÁÒâwžýyæ›{'ö{õ™9×ÖozbëK…ç­jÑ´×â- ®,1u+œ¿+àóËË_x²»uäc×Þ7Œ ܶ?6ììÒQ—oÄŒðÿÙsøÚÒC!mç,xvÕĹ1áRNÍeÓn5X”6¢éðŒúD¿n{R«F¾Úè©q7y>»y³€©ÇZõ²^»À÷)÷'Ü[78ßò'ãè·W„é¾GÄ pl>nÏÃ[ÆøNÎ?þót]³$~½ñ¥=ãÿ)Äÿô qŽúm!üŽÕŽãÀËðoÇ@z óáh i?ìpô†8ÞÊÄ­d8þìC@¿.ñõï8GÅë×— ¨.ÇCZCŸ÷õ½áû_“L‡ø{žÑàŠÆ6“€×ÒÞ„0 èW þð6áõhx“€þ]âmxÒðs@xûëo˜ãoÌ÷$¤é¡juüz¿€x¤u„£ÐàøÒŠáøâ-áÀ›ß¸É솯ծ‚®á>ޝ اµ¼¼!ŽûÓᨯãuǧ߀ã ÄÃc%¤M„ðeÛixx „oCxÜi?ŽD ·Ý ÀË|#ˆ›µÜÖÛÃñðñþÑ“TGÉöÑñõ>À™×+Ö¯]˯ óǽ‚Óà8‹vG à_'{D[ ˜õ:ŽÃM¤s€~0õ~ïY@¼/„£ ýQˆá<8®“âî̃pàö½sÎ%;AüDŸƒð1HßÇ$ ±ÏcùðþàoZn{%dëèÚñÀmŸø“ ׎sX^Hÿâ…:nGçµ|NŠí^ î8ŇØñºÆ¦Ú3ÚðjÑæ ìŽ×£á}ûÇ|Ñs Ä¿ƒP†ðÊë+ÀÍ_ùâ¸mÕâ¯Aü¤O"ÿòù ´ÅËpt>>r¹é+àXîE_±ŽÿÞß# ŽSp,Öp™‡Èö°ÍCˆ÷\Ñ?hy[]ź…ôw ~m™|Þ‹Ú)ñuü<-÷›XN¼×ƒv‹ùîB?qÜžYGkàïúAñ‘ÓG¤·³†ûªGqާãö‹T×’/ÂûQOiy{áÖ±AZ¾ÿo:æ+q?…> ÷­Fj¸ý$b:„Bú_„ãÐ=úæ´i‰÷ÏHêãG! be@ø‹†Ë÷ÔpûÓRž[!¢ãïI? ágplÄzú ïkØÿ/j¹_Æ Òè›BˆÓúWu¼¯âËÃø–C<} Ú?„¸í©¡þyÀ†ýh|Êâ á×hk>^`Û`}hyß©€ãWÇYÇýKe8 ƲA|"ù=,C*Ç ›ÁQnq-Ä2A|!„øíêi«4\/¦› þÚ „k¸Áñ ßïHcnÑõ„Ð Žgµœ‡v‘B>}û[¯ô5Øç$^V´ìÏõ!?q‡ûŠpg7¶?æó ù¼Wx0¸=ûýH\ÇÛjŽ Ú:ÿþþOýµm6q † ¹¦Ää) ÉiS&ç%æ¤H£Ÿ‘–¦ÌÌHN^RBRzfJj4ùL³¡ ±©9 ÃMi9 SRg&d›÷Œ¯`Dâ´ôŒôÌÉ‚ÕÉÎÊËIÎÊéÊôìÄ‘Þß–>51g /°;ÐÆ¶«Š°¥åB©\&}†`ÇÚÙŒ“”˜›*xãU¼©‰6±‰*V®-¿4;gZBÔÏ$ÁÉVrf¦æŠô¶ô¼ÌtSrZjò”Äi‚9O#¸É‰ é¹&L^lOÎÉJœ‚IË“2³’³2M©3~™’5=1Ó”˜““8lŒIY9S1e“-erª)!w¦ÚÒ¦NÆdL+V¦åò´R[Zfêô¸qéL¸Ü11›%V¨'9ø˜’?>“N*“Ä&]`TÚ¹‰“RsgæNÊIMEÆ%57Xe%#«ÆÎb 89'k:«o­-}ZB¯ôi lÓ «rÎÔ¬Sb«w‡ôl…Ä'i¦‰kƒ2= rÏš4‰Õ¼2:Vú´Ô”„I9Y¬Y •LQÚbe"ÔŠ½T¥JÏ:›8™• \É…¶ã U¡JÍd©ÇT©¼ýNªRsÐΧRÅÉc©—”©yÙ“sSXIjÒM“ú£fÚØótj6É*ÚÅ™–<5›µˆ=%×”î&}³õ5:•S›”˜Î*k2„ÑlBÂn(…ŒLJº‹‰œš5¡K‰¦PŽd6äib-ZÁHð‡©ààßÐNN¦øãå™po!«Q¢si«‡&Ar“tÁ÷JN’^ÖK;Æ$NOHƉ±{’4.-Iš‘,íÒ¤¤Š=¾°”Cß<#2Ó”.}§Í•75Wz«ž¤cÛäÀL¤ÜÜHp7椃Q~¡™‹wôEÌ{‚rsÓ'g†d¥¤æJjB ì¦ÔPМ’:÷gåÂ2=:qJ*¢R3'›Òr¥Ï@öêd˜2mNƒÓ/Oé8æTš`ÌVð9ɽ{1Òúz:iEž¤—Nâº^/.LZ¯ µ_C‰6#=iõóß´øJÄØ,¯³gh]ÿ ¢.Ãsñ Ī_yöë²²LN­Ã67¬'Qöuœ-kù¦Ú©JÇÃ|7Éà¼5»\¯NùZÏ7ÕIGõ´ÃüšÞaËú-}¨4Ïݾ)ù ;¾Œ0¿ž^:~ ³ÿ'·ZÛ~òj½Ø‚þ—^/-¸‰ï`Í¥—6=相†uw.Ù6·ä,i‡æg·¤YÒ:÷Pé4ËÍ ¹Uà+—ZG¡Üè­‹ç°g®ö‚üí& rÝM/Õ¬Ã̿›NZÚh¿ÚݾÓÈ¿ö.0õŠ×4öºó÷»óMÈÇÜÅà_ÜõÒÒ-¨ñ—"<²ÏUx^B‘Ç E/CgÎ!dáy<ÿqÏÿ1ëá¼| ž·¿†çy§Ùù<í¿X_ŸÏÓÅ®­kR”·Ä'†uo8ºÃ ÷sáï)þü[ÐÈÇ·²Ä>*¤q}¬¤Q~h3Ng¼ …¼ØO%äý¬_ —âMâ§hìåU_Ï|GÚâÁ¯gšêz®öæüJ* EyÄ~,Q%ò]ûpúÉ ZÈ‹ýYB^I£üS´¯©I./h!/öi y%}§ëïÚÀ‘~¤ãõíëaçßMß[*}©ôy{ÞŸ¾–žŽtGO®o¶ª}úà|üŒŸ‚õ#ö‰úQÒ(?†ð$?F%¤jŸ Uûà^Eü½Aò‚ò‡ú:Ê+é;]‘êúwÒõÏU]ÿÄlÎoçÅó´È_ìcù+é;åßËË‘èÅó_ Ê?Ž6tPþ‚ù‹}o"%ò[Vqú]’´÷PÕ¿‡ªþ?]Íé$/h!/öà y%òÁk8ý É ZÈëTùëTù‡½Ìé3$/h!/öÇ y%ò9„ÿÉç¨äWªäWªäÝ_á´GC./h!勒÷RÉ?@øV$ÿ€J^ì£òJå׿Ãéî$/h!?HUƒTõw|§G¼ …¼mŸÉ+i”¿HøÇIþ¢JÞ[%ï­’¿Mø)$[%Ÿ¥ò¯Jå§næôl’´©ºþ‘ªëÇýËø[Bò‚òãTòJúNý÷톎ô yÿ}AÕ½?äüúFž¿ ›ùþ:ñå鯠±$/è{µ‡¶„NòmUòTóªùÇãÅœN"yA ù£*vTåϺÎée$/è{•×~Áéí$/h!D%D%ÿ])§O“¼ ïU~Ó.N{ysyAßkùgïåt’ô½ÊÇîçô£$/è{•÷;Èé$/è{•¯ùšÓ ïµþ¾ú–ÓGH^Ð÷*ÿÚQN_'yA y±MÈ+i”_ú=§[7âò‚òå*ùr•ü¸cœ!yA y±¿PÈ+i”ïû#§G¼ …ü»ªüßUåïjà/Žä=£QÝþ(^ÕŸãUý¹÷ïœ^Eú-äÅ~B!¯¤Q>½’ÓŸ’¼ ïU~ýN#yA y±/QÈ+i”?s…Ó7H^Ð÷jßý‡Ó­“?ø£¼Ø§(ä•4Êãû2øëDò‚òbߢWÒ(ÿô-N'yA§7vlÏën_‹ª~-ªúý½n´ô ZÈoUÕïVUý¾[Ÿã_'yA ùɪþ:YÕ_½=9~ É ZÈwQͺ¨æ„ä}7ùkùz—m€Ÿþ ñƒÅCíòÊù»‚nGC}}Þžh±þ ZÌÇCˆó³8¢Å|+…h1Ê#ZÌ'ÌD‹ùÀj¢…yhá/Þ!ZØë'D‹öùRâû?ÄzÑ¢>ðYd°•_|9}ùŠú9Vµ¸¿p•h±~ÄgÂH‹ùX[¢ÅüvÑb¾M´XL$Z¬‡LD‹ùõ"¢Å|ÿU¢Åúã#¢Å|~Ñb}ù=Ò¸ž¦g‰/ÖW‰÷+p¯ÒâþC{¢Åý„D‹õË-éïÇõÇ_ŒG3ˆöþÑÂ_ï"ZÌ.-æøLܨð'}‰óG‰ó—yD‹ùÐ{D‹ùÙD ÿXC´èO­ôœþ{ÑÂO$ZŒó‰ãç;D‹ùDÑŸ]&Zø£§Åøßh1ŸxŠh1¿‘‰óÕD‹ùï§nا5·%úPÑ¿ªè¿T´ÎÝ‘n¥¢»¨èý˜ŠÎTÑ Tô*½IE©¢¿QÑ'Tô_*ZWÏ‘n¨¢[ªèN*º¯ŠQÑ£UôÓ*zšŠ^¬¢_QѨè/Uôaý»Š¾ª¢ëéf*º»Š¬¢cTô$§¢ªè*úm]¤¢÷ªè_TôuíVß‘nÊiÛ։ђ¤â©èH=ZE?®¢“TôÓ*z®Š^¬¢—ªÊ‡¯¶ã>$¼ÿ1XÃÇІÁ¨á÷ƒáÀü…¢†ÿaÀp35|o~‹ïDiøxƒóÜ— Çh»q¼c¬†ïiÄ{¸ ÷¨=†¾Ž'4üý²'5|¿_‚†U¸7íùÓðyƒØS3Ž4ô›¾W÷Öà«û¸? ˆÿö÷>åÀ‘‹þ_q ÿW®¾RBÂÔ´„¤¼Ì”ŒÔ„´ÔDÜI’0)1#Ÿˆ³'” I¹±y¦øÈLSï^RBbJJBvbzN‚)+}ìCJHI”˜—aJHšÅÞ*hþø6!-‘i·=ÚKžjb_N‹cÏ…¥„8Ú,1#7!¿:ƤN¢ !CJÀ‰ôd(AñÍ©„ôÌdÐ7ufÂ,|85w²ä‹{b|ÓR3²Ss€eÊIL}ø7ÉöЕ“Š'¯b¦¤:ž3Gý°™%+žn3š?àN¨ã!9=qßíºDѼ®QöG¬w©›Þêð÷8|Àz6=¾ÂñËcwÚžÐÞéü|¸.ð]ëÿ^jŸêž?â½@<û½„?.¾@ñpÙ%êž/ÜöÉA—W-{­v¯mæªÅ’\n^Hpúº£TÇ¿:7÷9oësÞÐçr+Ÿã&>—Û÷êÞ¸Wç–½º6ëÕµMÏyƒž‹­yê=yÊÍxuïÂsÞ~§Øwç°áÎa§Ã;ǽuŽ›ê\î¦Sn£sÞ?ç¼q®®sN[åêØ#ç´9®Ž]qNÛáœöÁÕ½Îqç[[Þ\ìuSmrSínSmk«c?›j#›Ó6W[×î´gM±YÍi—šóö´:váò­jbšØœfÛ•&¶£‰}hun@³í<ã[ΜöôöˆÏé‘•œÛ#*=)'1gf ììŒôäD~ 2./;*¾G÷äìÄÌIyé)=„ é¤s ÝØ×^»ÅDÌ™ùH‰MƒrA¬{òC¿]}–z"©š„±¹[L©¦&fþwÊ"”gý¯Ìx`BeBÀ§¬6íYNÓ·˜?ÿs¶«ÏRÎâÄõ_º\¡=«ŽÙ¸ÃŠÃyzkŸÉþwʦПå4wfó’ÿR×aª³ê^4Ô±ðr¹Ü¨kÍ žª»Xn¨u­Sê^ Ýÿ2°îåS‹0ñMéÿBsÕYNkRž>#·®Åió±;ÌÞþ§óöû_ËÜûÊáž#w_×Üuu¿K•{Þë¤ûž/ö®‹$ǵ‰ú^Ž,Z{äåæô€0#/%µGn*LÇS{$ð H÷;.ŠîºjúŸ/Íl—¯¼érÿ+bÇeW÷"š‹½ÊNÜáb˜æ{»p/ËV%FyLjîýûû÷÷ïïßß¿¿ÿþþýýûû÷÷ÿÛïëënã–DÜf ¿C‰ûÑðÑm>N6~¬J0Pc Q·ŠO&&$°ѶŸZÿ‹ú›m4,tø…ž}Ö†dØÌÝ¥ßÉWËC7©îèà+:{j¤óî¿ù¿]+ÆUˆµÉ}¡‹nbRà|¡(ïRÏÃÕ-V”6nÓ{Ô.d2Áƒ PÁì³U$ɺꦥ$3]}3xþu|!¯J¾lµî®ü´š`}þNý€y÷Ü_ÝÞR@ÚYV2m#dZJXQ=W ²2õßYX9óK²”`Ä\kŒd)e5nù¥Z(ZC »¤}ú±ÌÁvξø9® -Q¯Ý””]wËÿí!üz¬t䤥‘õõ«Cæß`×OvlykëëKxÿ®”×òοÌ ù;µ2ÃU÷ã¾Á‘ÍÓ-ÌŒVrÖ.ÉXZž‹ù°q™ù†ðÕ|(°öYfY‡þŠýÿ)KøM²éÁó\7µpáëë_ Éß«—¯X‡ŽpN¹… þfÔ¤cãƒÌ’ª¾ù§¶öÛ·ØXÃÜå€"ŒÏmÈ%Ì¥Fsø?läÚ_Ý!È¢…ñÛ\jº!/´–׈2ÂpÅMn±§7LsXŠb™-­Þ?ÿô¨Ïõßf¸žtþnœ<ñTÂþ*ùMì»YqPßv6)Á¨ÌfUï\«­µ ì²Mi|À#£›~‚McÆŸ‡R¬ØÔQ#Y<äèÓ=÷[²}墉˜:ÃO.IÁH`3Ùœ†‘†*d`ÄÊH9 ²–­Ù/b)£æ_7>,IsÛXÆùX½-%È”gûAGAÙÓ¯ê€/nÏã䤅éËßÙ~“ƶSgÆ\ÁiÀÙ¼n½Ï°ªäÿ“ZŒß*0F—G~1.>>^.¿v±ìŸ‡:€¹+–qß|ñt ø6Ô¥ˆ%†.biù5·óÎ[ØU·=XvÊÀ‹]‚i`—U‚[ûÄXX94å0#aåét™”Ë8ä£#ò+µÐC¤†ˆLÚ~*¨¢¬Æ`Ü6º2­_a)ÀbÕê&‹œuÛ‰u]°n9±j@åβëÀ ºYvÒP§ÅÌ™ËóÿÔç_4€c˯ÕÎGίf¦ÅÊ®æŸêV Ÿ–g²GÙ˜ü‹ÚHsíÌŸ¨*Š˜°Ï(Qeõ,V¬‹ÅšIû@t^üG'PÉœÚê‡ñCÔ2D@òÿiŸ÷3/:›ÈnÇ8¼±,¡/ÖhB_įVÒÀŒWhjXö›ÁR‚u«+aS⋕ϪWÇšL6ûaJÖ°Ž™\°±‹ÌèÀ¤²? +6\e-»Jã§0 Äl­úç-†Hí\ƒ}U`„õ‘K A­ÜߎÎñúϾÄá‡Û•[¹òùR·mRò·“ʪ@‹)äÊŒŸ–ñº¡…Ém&¹[00¹íùõù[ðJ ðåP“>ÿ¶Ö¸¬º8ÖHškÕ0ÈA㜃÷Ù[\öòQ1æ«3ì5Ÿ¯ ó·>Wi-ƒýÍZ€©V+&ÊÖXØ«÷†–ŽeeZ8ŸåUƒ_³-Æ.ym ’e%x~ÈbÅ»çXÖÌšæq[Í͘)ÍS⫇YJ#uEX +ŒÆŒÂš}r —Ë”4`ÆÎyÔb @+SS‚b:ÖàrIË“ål°²Ž«¢S˜#2(•Ý_¿z+óô0Ü¢ ™ Zg0Ì”/)ÀV©eå¯eµ–oÆ:ÑÏ/aIè$—~Í—_‚¥ÓÍ 8y/B/iü°ˆu–"ß‹Xå¡TåÖÏK›h$¹¤‚]'wË0:ÒZÐç2VLy5³‡‹xu»Y%…Ú*Õ‚•:›5bÒXvÖ eê1€1Œ _~ý>Æufä¢90ëÔì” –£ªÆ×vâKÙFs@矪­ýµ–{qKh€¾’v­¡À˺…5´ûæÜç:ÌØJdÃy¾&É/ÁX"[‰TáJ$n-®D60/ÏÎ;J˜†’V± ,i!S®œ5/KZY€ºå‚ó@t®É¯yà¹úù×—¾ßj.BÓ³4ÿÍ\÷*È@«™-%‹°*y.š{F ?P¯¹,xƒÎª±³”`Ô2÷¦\R̆ ,€¦F6{cýîÝg6ˆ¾ð«\r4ù›‹™×;‰5Z€ñ²SZì(?¡üäæW„¥6.;ݳ@º¦±Ä“Y×q²• w¨LgE˜\$1{ð¹H+av­Ø&hƒÁrÁMf¤HäïÓÊ%5¬aY ãÜ߬TŒÜ©— .)ÀnrÉyØ]6WB¤:ÆR²ƒY´sü±Îzš¡~â]좸J«¾Ñ 3^¬“¬žÌø°¤Uíp9\ÂJ$ÖxxÖ™O³.ãÉä'²±uÉ,K «¬‰9"ME_†•‚_-¹…‡Ö÷絿þA£ÿ#©`ßtd‡„¶PÁ¯QóµFsŠ‚ÿ·š¯3šCüKj¾ÞhöSðÏ«ùnF³^Á¯TóÝæÓ:;Ÿ_^hÿz6@=£yWƒ `0šß¨Pߨo4ϯàaxÍë4°Íøosòwz’K$‹ñ”Í¥¬ÐÉ»m3,KA)›,è½¹ c­…ŸïË 8…1~:xgO08Öhþžñ‘Ý‹u Â\šõz> ñÑòŒúûô7šñ_»Y »„«ôyÔbFÙI|†ÍùŒ¿¹šÖ4• ˆJY9xA”ZeWQ(ffì®V -ÈÔêgÍ]³èhç/ˆëÎß©“ *”j½y¹Á>. òF3þ«-‹¹B¥ü¼Mù7»r½l¾¤P½øhÊ/ å/1á£*å—lÊsÊÝÀE(”»ÉÇêTþ·PÞ— S)ÿÛ¦¼‰B9¸”…rwð‰u*¯ʱû ?©”ר”KvåõdóM…òzrÁÉ:•ßäÊóæZÌ'UŠo’â¼ä|¦ÔÏŒÍÀ³ðg£-_ `öc f ÙÌ{b;W àÆÌHÞ#j­8†çoÁa0Êç`Q\ÝиºÔ¸­WŸ¯^ÇrqGÏ=$›ö ^l§x³c£Å’m pBÎFˆ¨ÅzÙºø5çi((aÎñ>¥…þÒŒu«BV=°äñaÅg$š¤7Ë‘e Ë“ÕN¡ Yh7½BªV²º/LÌØŒç&7ô#½…qš,Р64Kðª.×ãQ %u<ÎfÜ:+ ÈL Œ8i+·„‚3õŽ.ŸÚÓÀ—IýõŒf³Ý¥Z›w`‡z€ËOUð}Ô|pùa ¾·š.¿ƒ‚ï©æƒËwSð j>¸ü3vwjÕ«ùàò÷(ø’šÿ-Ÿ_~¨Á¿°@}<~r<~p€6xü¶Ž¿Pxür…Ç?ÈÄ™–nÜæ©¡nǺHO¨ìcÜ=3(¹çÑœ î9ú´Í=Ãdf3³/ÉÖåÊþìÐþÌõ.wìÍÖͼ7€öW¸fè… X~ž€•D©¡¼xyYIñèY¬ŒMc“gô¦ÖƦ†ŒÏÔ–édëÖ âºÙ°¦Îñ ëôˆŒ­¨€­D|ª±OàÜ‹mUÀºéZW•09ÚµªJ(¶UÂDG/¿CQ àå7¸ªüçëU%ì°UB}½Üek©¢ÀmltU ‡ÙÔu£ªJm•ð±d¯ð7»•PO¶nª»ЧoRUÀnª…O/¿Ÿ^N>½œûôræÓË>ý ÷én·}úo̧/fÅÖ;út09ó}èÓ0.;ÉgȈ]lK–0¯~Ixu3ó°âÀ>Ÿ> W ºn¬°«Âëå’N 7­î§…á×W! ÕÚŠ{õ‚…¬zÿÆ-„êe^ÝzÉÁ«ã%TýͼºAáÕ ¶kÕ±+™îÕu<ZëÕ…JÏN.ƒûpÜL<½É³»Ïyv”Vxvâ¨ù³¿«š/<;ñ;©ù³ßOÍžø¾j¾ðìÄo¥æ ÏîpùQƒ <» Pßž]ð°„gWØNžŒÈ f̳[ž·Ïå+ÎӄʪœË7"Ïneb WÁ=;ºŠb›¿gžÂl Á`Ò®Üóì*7‘bs©Žsù4¬`nB+[£\ùJæÙÍQ*W‘fó• çòÄu³‰S¬+_É<»5Vå+3l¾òS…¯Wžm«6©ëª˜g/«ª„l[%LT àÊMŠJp“­ã]UóìæñªJ0Ù*¡¾ãÌ}†¢ÀuLpU ̳['¨*a†­˜g§JŸ3[Q 0…ŸXw%€g/˜¨ª€ÙT Ï^qž½‚<{÷ìÌYU(<ûѺ=ûÏ̳/a…1(={>»¤Gp‘=UZüL=èX{uUx_§ÖêÇ”âÍ$½…Ýfˆü»zoCO¬T«=ùK¼×Äžõâ¥èp‡©£êé£åCˆ¥„³—AChùý©²“8ÍÁÔÁõä’XÖë}öÿ6×]®Èeò¥þeÓêõß)ÿe 9`ܶ_¶®a•ÕŠÝù‰ !¨Z.hÆîÛœÆJ,Átã²oYû1 {údõ\*[7#YŸ†ªrÑ€zo3*Ƨ³í-EÍlµeõ)´h-E(…^kÍȪÖÎmTkFÅÕ+bxns'¾O1>¯u­½,ðÙ04>ûeMÏ~Q¿™ÕïÍÙÝaZÙCvçyÅTµÇ;ò 1ÀŠåxn …ße,Â[ŠòŽ"¼ñÈ[D^X„·yI»á2V2_„ü ø]JÔïÏ®mÀN㨲y­­ÖtE¬y²Ö^vÏÕ-ãØ³Ýp|¶[kEfþ^=ÛqséÜ_xy;ÿS![cùófúÆó…Ý]„‚m´eBêûàÍj­Áœ¼”9ÅðL̵ø™]kkÔÐZV1¦Î¿³´idó1ŒŒ+9É •«ÎJ¬µ¢° / Ø9§7M™©–÷ÊåÜzÅí[†» krV!Çl A²¿|ÉRtŒõO–Nˆ” ¸^€Êó¢md³‹Rt¹c)¸,ËWÞÇ‘üƲ¼ßÀ^RÀÚßÊKøÍæŠ@y«™Ù«u Øméì6w ¥„•|GðB¯4s-¬ŒK.ŸÝÒÖñ;Ûà –ýQ©ð ‹ñ3ô–"¼ë>¿!Þs¯e7æç—°{øà§æaˆ/Áøóv aωLx3ý"ÞLw7KRÏýryÙIƒŽÝãgvØzwºq_‚O dŸeö{÷–|x ë_šÿ{†ô……„=4—dó˜–I³u¼uðGÿ¸woªHãÆ“6Ð'@„Šª䦶Pµ¥{KZ°-UZn¢¢"V6ÔÞ0 íx`—Fp—uÑÅwqE¥€ Ú"’â²kÁ®Vŵ*jKYakA$ÿygæÌ™Ó$ýü¾?ÏS2gÞß{™ËûÎåÌ9‡"d—›Ü‰pç‚ÛÝ+šBïRz ½œçRA“º+Cgµ•{z“ãåÂÊ‚ª¥5¦Ó) nBð5¢À lx¢›Z©R/·ÏãJ€{ÌÈ] L:R.ÏJÁ¸4²_ æ.À>qyöžÔØ›«Ú{R´—k˜êg?èœ÷ç+~ðdâMÃ"<ÙÅH»Là¿‘.&d=ú3^ £õ"””á켺¢½ —Sœ/Îà>òè?1poéÌð?ØGî‡òæ?¡Ã]=›P³YW·É ¬®›  ôíC¾×#žÒñèhy/9Ù0Ã"çà*9Îoé½´¤xZ5mïþ¼¾œXrêdFvb½?–vdÙ´Ê}ÚÈ›îíÒTÚ*¿I`Xr\ë³ýô¬‡…õø#®qvF#ÿØø^ömzÀÎvÈe&Ù#ç›?õ½jBJ£# yÄ®ËÊLù¡ô„þÓŒÔ|K…!ñˆÿ”È爓óc0SŒ\fQùÌȲ‘ðµc®Xi-¼þsž”‹M¾ì'èWggŒãûÄ#X³gªÁß›ñ «€ï¿)Üñw˜äì§:õÙOÏtžÃlr™ÑÅÏÎÊÅF­Tك㉾}¨? Ï!§h3ÎÉèÔ7y húyE—…<¼¤Î-ÿ c²<†?’µ­ÃèÉK8Õë÷áÁ(ã|º¾~Læy”yž0ì# mþØlÁ2bkŽÊÔXˆÙ‰Ÿzܧ!ðTë!Yrö3çQCÃÆ7 çà@j=,{ªI {:u®¹ô?žºˆÕu•8ÏCn ã¥)ô`«™Üï„4Ü[+…Å-‘Š'Â~XžŸŽÜÃ4ü¸KÞ"ç`reˆEI8*§»ýàÆè|>|Vvyà"u‘Rú•ì>Ã+Ð'Ñ‚´ylXë:œŸê0—ÿu"|¯"U&6±»àž•d•¶ÒuëÈô–”Î÷m£ÅÁ'Ú-¸±wƵÙö}9¶r—ì= æxk‰ ‚ŽFžMD P¨@Tð@úmrìÀtk*¹ª¸½ì:Ï#zy©J¹–Hvý ”êòÂOYô_ô‰?J!ÖtÙU'@J{£Ú½¤^Þ÷oÁóAI†bßFÕ¾Éç‘g³` Y²žŒ@u;4Öíè¦u›ɺͪuR­2­½,{ˆ©µÒO 'wç{)R^Cúª/u˜iÕ7ð¿þ‡è&¹ Ù ²‡ "óÖ)çeR·¸·P£°…ÿ:|A®%¥PŒúJ¦Êë6{êvsKp#uÐ;|6éM´«Á™9’ítƒfƒó¥mäg/èÓKk¿û‚-ÈŒ`¡¾›Ð¶¯T§#ç»pø–.×8~ŸÁñ :»_ Õj!ÇQ¤©-8 ™+z¢÷p@ýÈõ©ýFz,lˆ\G¼À²¦áœVmÃôM‡;É™Ã`‘ÖþnŒ´¬Ú_#„K}•sØcԾʙ,¥ø>z}„>l8ã¿Z¾m¬<-OÚé¼cª ýYy ¼Ñù7`”ðã쌪h~žGÕðÁ7ѯÂI(Ft¡á¤ùR­'‚ÎaA¬}©¼Ã´F;»È3þŠò.STçEDiÂg©Ÿ4,3J;­¦j÷«p¦sý¤ :~Ú0'Û]_>þÇ óa™Sµ¦5_—ˆ\:ß^‚ÿ×—Gùrò@J‹oKø‹ÉɎ̱ œ± ¹áƒ¾*Þ¨UJ£âòM+ÏÀå«RÊ—“×ð-ßË´|U]Ûpw&9M¤8«”Šê† Ù¿– ÅÁ‚°€üë)I¸‘ÔFü¯´³AmBQ$i‘ŠíO¦à醕‰¿Vq3~-A³~-A#~-AÓþ/M&®„:ÛÆá°| RoÃOTŇÂ/¯ˆ½LSŒJÌÛ¥Z#¯ˆCu{ÀÛsâ‘{7$fŒDÞðÈHy)Eâ‘ÊÒ 3uö>rNQµk|õ#S¤,+¾’§e O=Æãxoò¹ªV2oNOuCnù‰ÄzOÝ1ò J”´—ì…ßjƒ9=5§¨ô¿>÷þ t•ØÓçÙm©Ùȳç'˜–}MAiÂéö$²Õ xÙCŒ6üO³Œ?@ä…BàÙm„´ÓÖV»_Ã9Éäô¤£§­½‹ww”—ÀAÑ:Ðg“=ð#“R{LS¨â­zû•²R‹|x4PUŠ‹çD•.òÁãŒå¶9ÝáìÔ—÷õ^àãœÿ•Äi§Š"í$–T“rÉž&R'p·úv}Ú7Á Ö:Nb$ª xŒª y¶ü¥x‰µn°v2f"šájÀµ,äÕ µ+³RHZªy㬕ʗ @%xHXnG^^J9ƒ*@©™K®i鬮ë¨õ†Ù ¹Øl`ÇË}Te'öij;®(rÀS»6è`Gú} !WßtÀ¿O92S½@.ý:Ãy¶Y5”wwGL`^ïÇ7½Æ-ÈEîcäÜ`3y,ªå<=Œ8чÿ+¿™fÀ:hâ ˜ §p*}âËøÿrËÄ»¢±Î?Á~0¹§ÖBêþGÞÝ@ä™óÊŠ ùgÖ›=`àdäi†^|–ÜÜl&Y4œöã^`Cd0N–½ðã¡âs71aþ^ráy½®Sêàÿ²ÞÎzC*YúU*a.Ÿ$×µˆ´'8‰h½ý:¬›Òp|˜LlÒ79[õ£šrñ"×µôŒ"z&ËnÀãú•IQ<®Â8\Ážì(¨Ô¡©Ä²Ò>)ïUD¨¼^ë¢ )35Â'°â˜p†´6Èåˆj™Ý¥µg/@Ìð¹O±zêŽ(ÓT¿>=ñ`*©Û²þÓ¾L¶àÄKB7Qó]Fª‡PIèåq5΋°Dá(ô1ºxйÈ=wùïÀ eD-ž°´š¥µ)Ðg¢›Ðêʃ01w¥Œ~Š“Fz)ÉÅH7l䤱(©ú œ–?`N%MZúgŸûÄÏJsŸP‚éa¹ÈMÖ'^¸Hñ¬4*±£ýj8VêKgCbЍRYÊ`—%u‚פù 6H¡(¥~V$û™èÄ+#è(†LÉ%d"²CÙ^Û¬icÖÙ™è8HÙôõT9e—v%M‘vå™#¤]Efòv ”"sOä=¯É0"¯î‚˜Ñ y š ò5}‘פÉ0#¯Y“Ñy-š òÆh2"o¬&#yã4ƒ‘·þ'1#yã5ˆ¡È;R“‡¼c5× o‚&#y“4#7Y“‡Ê4MÆhäM×dŒEÞlMÆ È›«ÉH@Þ%Íg¤4´€’0R²@ZLI‹)I -¡¤%Œ” J(©„‘Æ $;%Ùi¤@ZII+)^ •RR)#Å ¤JJªd¤Xä¢$#ŤjJªf$‹@ª¡¤F2 ¤u”´Ž‘L©–’jÉ(6RÒFF2¤M”´‰‘ti3%mf¤ó?©¤-”´…‘:ÒVJÚÊHgÒ6JÚÆH§TR«Χ€ŒjŸª=H€9ëhz«Þ"¤7 éMBz£®Òë„t®Ò.!])¤K…ôJ!mÒ%Bz‰^,¤éùBzŽž)¤‹„t¡ÎÒ¹B:[H§ é4!,¤“„t‚+¤G éx!'¤c…tŒ¶i³6 i£6i&}¥;…ô!}JHŸPÓ«7Âÿu¤G±ôV!½EHoÒ›„ôF!]+¤× é!]-¤]BºRH— é•BÚ.¤K„ô!½XH/Òó…ô!=SH éB!'¤s…t¶NÒiB:YH' é!=VHÒñB:NHÇ é!mÒf!mÒF!mÒ:!MzKw é3Bú”>ÁÓ‹–› ífœj¾›Þ!ã8Îð¶ ÷'ц3ÜG/gá¼°Ò’vExjÉÖCâAiç°f+6½¡ cÕ>x¡]Ÿ–¶Èi'Y£EÐ5Y É*%ñˆ¤àß냿Oõ¢b¤]†é) åFºšC ™©dƒ¡ô i'=;â…¥fµkBeOxxRYÖ‘u›, M%2ÂbžœZòXJÚo µ,$ËAýAº€”ëèt×0]&Êáy]Æ¿Ìcˆ¸ª`¡­ ²#ÔL¸4h/{j/ÚË^ÚK“ö²¯öÒ¬½ì¯½´h/j/c´—ƒµ—±ÚË¡ÚË8íå5ÚËxíåíåHíåhíåXíå ÚËíå8íe’öòfíe²ör‚ö2M{9I{™®½ÌÔ^fk/mÚË\íåíežö²@{Y¨½¼C{Y¤½œ®½œ©½œ­½œ£½œ§½œ¯½¼G¿/àÚWþáÒ®Œ *5@]¦;1\– Û>²òðŠ2Ûá`¨/;ÞÔïý¡¼x#:EvªN‘*CÊŽ7@–Ñã*Q¶Ù!¾mÄç€-•ì㕾 ÛcνðdÅ€Äzº³‰ê`Û¨ΖQ÷"·j߀ÎAwét«ö‚QwØØ-Ü7!?0¬z÷?Ê dÿn,ñ¹[Ù–Ç Tän…=¸Ù²ò¥µ$ÎT“x í$ òÉu­$#;Q_]”›×Éâø†…©j"J©®™p$O§Ã5ÔJvÁ¾¤K7úÜÛ/Pýí›ÉÝòŒ@Ê)ïTŠûD™òƒÈÿ™Ê>£óB?R¶=P¶kçÁ:î#dÏw/äö\²_ˆëÚŒìñ&ŠAEñF™è„èè„Ç•ËÛÚ…m*&w VNúÿÅæ1À†Ýÿ˜%·FYb½sïš•¸¤;oâM´!ä&íÚ[i‘—)©•D¢‡öÖ „» «»öµºË»»\s¬qÏ'¾ì"n˜r ô½Ë¿ç v)¾ é2Cb‡ Ú{ègè;/^Cž8Dn‡‰ÒeÖÍU¤nÐ|½A­—2Ñ@|vGŸu7 Ú”z;~™õöúPz£6"èFm®ºFR’\k‡ü¹Ý,¶@öP±ú”‡ºÓPØ)8 r)$GªÉ#=jhiƒr×”Ä,/äJ5°‰ãsŸâ7.ZÏ3ŸÞƒKŠ(’gà•0z¢7*<™ð°ÚÔä®'!Xpoš#C GHÜ} â®w¦:+,=ÂÍŠý0B®‹ROf¢§ØLôßx¤ RÉxƒöá¹§§6“´qÑ ò‚ØsqdÞ§Dfúú1b¥þ ò%SXU#žÈ.à ˜¤U2‘@Ïñvž¿lß#m9ÆÓ)ø¾L®ôkÉ-ùº£‚Þì!Ÿï¾âóÅçÃ*6„T¬û¹ÛŠUU W¡÷ ©ØÐ}ÅbCXÅÆŠÝWlÔ(6†UÜ+¤bS÷›4ŠMa›B*6w_±Y£ØVqߊ-ÝWlÑ(¶„Ul©8¦ûŠc4ŠcÂ*îRql÷ÇjdžUl ©8®ûŠã4ŠãÂ*Rq|÷ÇkLJURñÈî+©Q<2¬âÁ!í¾â±ÅcÃ*Ž ©8¡ûŠ4ŠÂ*RqR÷'i'…URqr÷'k'‡U|MHÅiÝWœ¦QœVq|HÅéÝWœ®QœVñˆŠ³»¯8[£8;¬â‘!çv_q®FqnXÅ£C*Îë¾â<â¼°ŠÇ†T\Ø}Å…Å…aßRqQ÷i…UœRñÌî+ž©Q<3¬âq!Ïé¾â9ÅsÂ*N ©x~÷Ï×(žVñÍ!/è¾âÅ Â*N©xq÷/Ö(^Vñ„Š—t_ñâ%a§…T\Ò}Å%Å%aO ©ØÞ}Åvb{XÅé!¯ì¾â•Å+Ã*Î ©¸´ûŠK5ŠKÃ*Ω¸²ûŠ+5Š+Ã*¶…Tìê¾b—F±+¬âÜŠ«»¯¸Z£¸:¬â)!×t_qFqMXÅy!¯ë¾âuÅëÂ*.©¸¶ûŠk5ŠkÃ*. ©xc÷oÔ(ÞVñ!oê¾âMÅ›Â*. ©xs÷oÖ(ÞVñôŠ·t_ñâ-aÏ ©xk÷oÕ(ÞVñ슷u_ñ6âmaÏ ©x{÷o×(ÞVñ¼Šwt_ñâaÏ©xw÷ïÖ(ÞVñ=!ïé¾â=Å{¸âö-p¯As AöÂmiW/ºëoÈÔ7Ê;ª`“ã‚[HÈ]ß}Kê5–ÔsKôæ¹'!×Áýˆr÷@Z3^ AîP¤#‚ Û$í-ß[ÚçÉ3çÙë9Þ†ÛÏܪÓUî…GguŽí'õ—yŠ=*8(èVQ7Ÿ9\ök ²þZ‚’-A…¿– uÁ‚ä ð43êlû}Ãet7w}Å¿e™<0í86>ÑÞ£-ê-x7<[M¶^·ŽØE'\•圎üóUÅðT,OÅñT$¯…Ò"Ï|ð=R^¼Ê…ô(1ò.†ôÚ‘³„`ÆL Á$Œ`’f%Á$L)Á¤E•òZ(<ÊwɤìÈZ-oÈ%¤ym!­“IÁ‘µVÞPDHåµ3 i“LJ¬›å ó i‹¼v!m•I‘‘u›¼a !m—×–Ò9Çàlëåì)UMŠ‹ïröÆ=Gßh]÷2NôÔé‡ðß[¸ÛÄ÷À}ÿ}‰ÿ2pˆÜŒÿLQ:Ý ü÷%þË7êt»ñßUÑ8ì࿯ñß’^:Ýp‹¾ÇsM:݇øïß}tºÉ}uºðßÍýtºFü×w€N· ÿ}7P§{Gœ-±:]äîü×€ÿâ°}ÿÁw ÓéÞþC/hµœ8ìBåWxr;åœØÚÐÔ¸´LÉ]¹ü©²$gÜõ’Ë/e½´ÓŒ1ä»+hF¬3'ÎÐËQ\þ/Ý(GÉ…F÷ÇKt“+ß;ŒøÙ’{”VüÀîˆ7…¿Xr¿«¿+¶âû¨â‡)â¥MXšïÉ|ßÙi”ªîÖ**¸4E¹F÷AÇŸAÑ3žÌ&”_Y1Rg/òeÇá¨Çýõé}"upnI¶E†øÀôxTUˆ‹Ë9ñ›Wëu‡;»`ŠLpϸ #Úÿq•ÀR_9¸gW™y&ò×sW‘îÐW-±…–öƒ¶´AŽôöwàû!’üˆÁÝ!¹î»êÒëóïPÌÓ%÷TªE Ól’ûú«XmR5ºËPÛÍFü,Éý¯ÁñÏî†ø~aÄÜkÅgvG|ÿ0â§In³VüWWvCü€ð•óÊ•ñ®ËÈ‹Çr U×Õ kFìDZ.iç™À¨Ô ôš.Cï³ wVuE·T=Ó U»¥êæî¨Ô-UÿÔ U1T•»¾|°'7@º…³U•Uç˜}9IТ‚ŠÅ—¡âEP±«¸R-ÍU]J““Ĥ$ J"/CÉ  ä9¬dðe*yf`7”\¥*¹FPB5`UD‰ûÈ£éís AsÜeèÚ ºþÀ¼³¾WÊ>i­óû¬M¤-ØŒXÞfý”6ÃVlÕÛ§Ü{Å¥+}”¾$;š¸&-Á£ŸÞß[¶â‹d¸Ð¬Mβ&©Ü} j 899”D¸`Ÿ%;Åìk÷€mÅM•{&^{™Ïzˆ¾>$œá‚á†Ë7Ü gU#­‡¸¢À(}ÀzÈYvH*¯a¦KkU‹YŒJ<öÁ…}€Lr«k£JûÀK¸P^‰ò ¥Á8éÁ1|s&±¸$C•žQïÉýY^ûÁI\ç7Q¨æ¶è”³-ÂÙiª¦Y44Âré¥{J÷4Ö6LÑÖ·|¤'÷¿JűoÏÂüYrùðNÒÞ zߎ—®ñ÷ ÑËš +Ž Ó`މþ®`Úe(  †ÛGvC5¥X•nlO›xÑßT]›Òw!ž%£ü&8a EKq4•E·º:ûŠ/Q£´ópF Y@TœT¼"wigM2ðJ;¤ö_úû`¤´3ûŠ/€o²ë ã{ôCuñ—TËž¡T ×QºÇçž`‡NízRü«•z7”ñäþ¤”ßÙ: Y×)•=^/TvNÿK¯‹ç¡.6ËÖu¹ÎÎRÕèþDç5¼Ê¯ÐT¹äzA‹ö»Ü©–~m8œèÏâ’Ÿ¸ ÉJƒ®k‡Uó×µ!Û-P•ä(=$<†ÂHh üuÕ5QóÿFBŠ\·€V¼Tï Ö+HZªyŒnå²I§y¢`f€ëFx#(^ú;6ÊÅÛRM¯Jk®ì µï؈-ÎäJp×õȱùðÂMÑØŽ×¸³.ÃŽ¿‚ÏËŽ²a5Ûà »)$-¹^M‚½ÖKU‹" –ªÁ£|Ö¨ŒUe5À0´6tw½Ã(×è‹«ýåüÙQí1("¬µúð™Ô:†Î –Éÿ)tÐX³³Tsm2iãâ-rÍÒÆ¸åšÀ MobÚ¤ã`Ž@whh“çFt¯]£ût¯]¿7…j×òE¬M¯ûå6ÝÅmp›.»M±ÎâícL«ÎêáÞUóA4ôÚÐÎN½´:‚œµZ®·„­ðÒ¾ð[CæxÌ’‹«õEUé°àè%»¾Œ@ þ"œÒ‘vôÇÉWŠ£RZÒɦÀ"dŠÀEtò«û"dk5vëÛŸ‡[VWŠc?„Å>†¬i ÈOÛd±+¥#·õVºU.jpvJ+Êä]`©þ”bkµ{ r¥$š \ÚóG™ü䙆êÌø'²:Ó€"ª3#ñ¾:3>Š|Üà<¹âc«ïà ‘‘'Oqtœ–vz@tuÍ$ÐÓ[ªè@ÃIÚçüRЬÝÅjl‚j…§fÂãà.BCnxPÂoœB^¾–19Õ ßË„Ž(ÌS³k%ìÖerQ†¡@î‡{þ dÖ&ƒhl«»£¢•¶P.b å%¦Q*Ûï³î HP©@…™áf\qþd![˜@,dø„ó¡=fÙ±Ç&çïG¯ìJ üý«Êö éÝ‹zƒ|RðA2ÿÄžì ¢›9X&ÉÇm¿–ùM´1å|²TãöäÞ=ywñî:êÝ-ÑD¤îFð°î=²{î=:º{îm޾¨{º÷þ‹±Ûî¯ÀBÚáû!9IðVÿ{ñuŠÕ%­™mä“p<\˸5œÍÈ5©FÍØ}ÔW•m`;è9é¨*_,z#B‡ùÒkÐðRT:NȪW1® é¡…µ+ÊñÄÖµ( ÓÿfôÒr8>VfŒÞâR]»€IZûÛ(2"6­º@ŸùrÈÒé@Žnàt€®ƒ"t¼ÀÐoñjîË[qypqÉ+íej%.d Æ6c­ÍúúÈ*ÚßäÚ]Z„Ì8ß+7>¹¡ˆP#œ­§z¹vM1‚›á˜ß|øläZB{»–d7|‰#ÞÙ*E7Uë."+`mÆ:p TÔÊ+’ЩÃ2“gˆð˜êÀçØøZá"¹Ù@ìÙe(‰¦×äÅNÙW‡Ï"O!ñ^K/šÓðEH:ŽãV×fT\/í2G×/B ”ß1Hö‹X † fLP¶„³¾1DŸªŽë€7uE’Ý"[ë™}Ù¾„dÈ@3’}Ué¬;UV˜q[¸ÔÖT{®º8Qÿ5\T§‘—ð•H2Û­n_iö€—Iî—"5kËÊÈnl1 #Þ*¹ ´â¯îŽø±aÄ'Kîï#4â÷EtCüõaÄJîuZñ÷vGü aį“܉Zñ†Ë_5GÝ|¿QU´wtÊ`©äÚ[%%qЦÏãdJOÉýGȲÀ;z½~Ûþ‡>pt0OJq¢²­ODA –L˜T÷„£bë§=MN‘¡âjTì‚“fùµrw×0õ/7¹ö"ùv3îïF¼F[=Ÿ,H¦QCC{Lâ{Äyg<­8/,™ LrÏ@ºÿ—kT ÕTC§±ò@T\ëß ¯I<Êß"¯†6=¥ArA¸’ÖZM¤—ù½-­Úf”§'Ëåñ¨lÝý>eYp5Æ$^§Íœr¸3µv5YÒçwJy¨qTg®ã[Ôt¸M^Mƒò7âE”ÞcòB=Š‹¨5…„¼ ¾ÑŠ×Q¶dÙë»Á²-FίÄ+4Ý’žxd"]Û5¡é1re2*°à==EÖ\Ìþ}’ëmܬ“ñR&±/VRmi’{‰ž”¢9.ÅýÖuJæ÷¾Ä„5=ŒÑ®‹M ¶;*ÈîÔS#ƒìÞÚëÿ’ÝÕݰ{êÏZ»íFdKkO _ѧ£ÿ/]Òh^ýÛÈš6±3°l&_0 ›Ik×—bWy1­ L‹ºÓ†€io‚cË–ª‹Y+n[µ°=ŽÒO-®•³ÀôNkÊ&<ó)’ïø¬FˆYÆ_ŽÃÈ&än¨ RrÙî.uˆÊv+Jm~Ò%&¤‰mý½ó[©á[³¼šÄ+®VCa´•'‡ôõÛ‰vZwwISÝ\i^Ÿä,Á•td@Â3|2&¥îa&6¢üÊE¡>AØÄâtÛno—Ö†ƒºÐà†G£qªlXÆ9’¨;ˆPýY1кMr~Ò“™æ³£cë1øú‰œ¿-µ†˜%—#5yŒ]S3qMþ523Ó"Ø~ RùÛäb0q ­¼0æy&æãn O •wkO°j»PyÛƒ*o{èʃ–µè…Êc;•JÍíCÓ“¿´n§Ž)xå»=.É+qŸ¼dÇd>ö,ö1:·Â~*«•dfud9Jîq°CâÜÇöø“=ò]†®¾hK¾¿œÞ¼/ÛšÒ)9½Ð°O‘ÛoÅ›å´'PgC›QÈbþrGSø8¥ó¬^3.Щã©-9ÕºUr®НÅôx½å PÌÔ6¢‚_WÜAšË•ÑiÝy1­+»£U ÒJãGϘÚQU[z1µŠè®#“ü>ôȲͲ¡ …½V[ZÃÒd8È}U×ñD”f4É›IDp$fº±ºø}<™TºY£<=M^MºŒu¿\Œò[äžr®å×ËédmeÕBO¢Ý_@»[~³lmEÖ=² }y“û¡o“ÎP|{Éšº–xŸ“­{`"[…û®3 wô@ÅGý·âßû²µ¾ÚçéÚbÆdÃÂ&£LäɦU‰ùMSÖú@þÿ^9®^ä+íz*].®¯Ž ‰&¼†Ml"ìÄ(ÊN¹±Mò^rü§¬QZû0¬œ{aí$Ô6§X[$ç øä®\eûeÃZpe#®€µZÁz4¥‰¾ R•åZ‰üfiõ`ŒÅ˜íI@¾!Ñ¿>Åzw"ëÑvxW´\Ö’R†¹Žé××Û¤w“#E)ÅXÀ_»ø=Èo!jÿ Pj-^ÄSŠqÞZRõõž•Ø}2ü%(> }ÔÚâ´6F´Ï‚7µâ*ÁíƒÛÑcÑ)Þƒ£Qa ‰A©Sb–™±r_„— 88°àVü~5Žo¸ëà€Oz\v¢¯u?"H.nÁá\.«Ç+ô(trñTh!«,h5W½ävëTG#ýÓQ&O7ḜöÑ™¶ÔÕpØØ1K^ ‹Vø`$íÂäÒg#ø£ÑÒšßþ@>ÐÜöá{ðŽ?g§Áa¦\©«aÏÔ>Ô?ÀYnˆ\•è7Ã7Ìþè7`?Ó‘x5i÷Lœ'fòÅ[¯¨S6ß\ÿ I3$ëÉÚ=¯âw’ÌX؇ûÉŒ5HkŸ…øh=J–ËÖVúÃFö8ë%Ç–§l7|ï²é{lü;îOË`Wɺ9åb ÂÍ_XFÖCZú_øÚ^Ý‚RÞ"[aê¨ ÕÂ¥¹ç`ª[pÆ›g¡Œqpé…ËN²« —«ñ%:íïñ&TjÑÖ)ª=YÛWU±e06Kz¯÷!sÎTv—ÒØ‚¸$î€õ?ºÖÏq\6ÊëmOÂÔìÄWpÅÝFÖÛò@Öä)°7A.(L-È“<íòî0ã:Áñx°òqÒLËrf ¯ Ð1úß0Z?—m…©¶<©nã68†É6l¹#fUyùvnÕï#È0»¦ká„“î°Ùè›î°­æ;l6¾Ã– ì°­^BXÉ® VéEÕ\ÃÕŒ5åÉî@ÅÀöë"Øj¿'>«‡žg7%Ö·¿«c™å‚lìæ©¹’Ç 1c <Åà>(¹–ÃŽe°…*—'¥øìÙÎòd½c Û£;+í<,L.ò›Ç~K7édO‚½¹xtG…j‹1`ËÆ³GdKÂõ”€‹?¬t\ã7®"ãVD£SmŸÃuÊùÇPA’Ï–Lv¹ é0?Š€Š7@±¯„ÝgwTOº©=‚ßôlTÜ’:ÛÿŽN°Ÿ8lRH.pV”VZ”R”üÐE‘¡³\¼4­/M?VšÖ_( y*—OÆHc´ß€Kd´þ‡4SD׳v]…%ï:ßA¦Û´¶dºi} ²°£ä7ËÖ–T[ni,ìÉ"ÑgÕÀD¶êÚáÐwá¡-÷÷ça˜Ä]·=̹‹?ïUüÉK¾¸?MÙ¸Ä^e`Lpnl‡I®¨ÔxvBf^r–¶b‡UsÚ¿€®ÙiŸ'À]5ÄÊöÿ)QËaAMmð}‡4ý•õÎÖŸÓÛ?!QʤwHØ0”eòe`Ìñ¿ˆ3qוS!{MëºLÎ2¥f,¾Ÿ€/±ô¥«§õõ9 »ZÅ<ÿlóœÞ<)¡Ž Æ›‚yáËM®zû ”ÿ&…"åîOÂüê}®²Eçµ:¡ÿò¢]ÿUäŸ~‹œU˜š•W¶ÆßÆRûý_;÷î Ê/¨¡ü´ÊÛÈ(ó–ÏhT–Ö~™ù±¸oW7ò¨þ°ãÜG¤ê×tpË%ŽÞrù §Þr‰ ûáÜ/)hüâ¿îÿ†‰ÿп ä†÷R£Ðàd ¸Z"Û•¶Mò·… ùë‚7ªÑ9+«k›] àrí*Ö"£N5´öð¸"}¿Á$q¯;·Ë.)ú½/GÈé#¡ŽŸ„ÒÉ…fç>#*>&cW´vdôްO‘õr¡IÎ0Éöup?s‚¢û?Šî¬•Æ›åâc¸ÒL<)Š7zÖ;8×"` •ä~&áÜÂ9ÿSI8M”³Ta¼|œëÙåÿ­‚ wØ--|÷—Ñv6Ûé íµꀸ„bƒ¹‚¢J ž9É ý\¹BObtÐÍðõìfçq2+È&ŽìÅm4Ǻ_¼Ä!ßVPÈ»ãh¶y,äÔ T¼N6˜;Ò£ ö‘ Ûrζ±­!9²a»œnò+¸Ž«f¸E—´]Œá…äF… ž/€D½ÖèÛå°Ü8Š1<ùõžåkDL-OT¤|]¦HÆýLrðx%gë x‹§î'uj{ïà '±hÏ›ìJ«%­.†Œüz”G 8^÷'yù9÷öò`c÷ÖÚ‚§DƒÑ>9ݘ¦w˜äLÓéF[þÈŽýG /?µÒ¢’>ä€×+J¯ºOcÂéR…ïú&dPð×½Zð79ßÿÊT>ÏúV»Ú¯ÒhBœã2UC´³cþTÒ¾¡Òð¬£E©Á¾e0¡wð>4޳,)£K¦ýåRb»‚ëÅqÙT½(T_FϸšöãdžZÁŸÁî€cGÎÍoò¼ù=ièC(¿Õ×6Gñ ij>ˆÅM¹ARD—sÑ»KÕªx¢T¬ŠÙS –7bõq¸Ece¬$/>F.nÅ99¿ ø _Š`}n}´Cî{\-Q™Ez^Kuå&Ïú1³h={Ö[Ãðþã1…·G©Âõñõ ×B+Qàòr®÷W¸¦ÍW¸ª®ŸS¹îâ\Os®… ×s×»×(Îu/ç’—*\ ×Zëô£¼ÿs®¥9 ×××,k/çúñ1…kfÂÕc¹Êu­ÀUŹ8×3®k®ïU¹nç\2ç:”ªpe\»®«8W1ç*©pÝ-p­¸¾^ÉãçêˆW¸Ü×m×Ëœ«ýQ…kãÕ ×K××£œë5Î5a¨Âõoëó•*Wç*ã\GP¸~¸^¸úp®Îõq ×Õ+T®ß\­P¸úq®£ƒ¹§\®g9×§+®WÇ(\ \Q׃œëyÎU>Háò\‡W¨\7q®‡9Wœ…×¼Àõ+°\áJá\û̼æ®…×AÎɹôá5/pÝ(p­ç\ÿ\¡põì¥p _©r]§N†Ãûm€±½5¨LN´jû¼•| O{n_IåËU㸂%+(u1ÉÁÃæ"Ó—cr&{¹8:éPè#]ô…þ/N7® êQ‰Ù‚%[9êËåTJ=ä8ŽErAny›Aê Âôäã§ÿ‰Ñ‘C¬œ^Áès!ǨÇó¼òîéÜ¿DỶ›$ {OÎžÎØG;ÄrÂpKéqŒ~ÂNæ„4·9쬃Â>²Ã—ÌÉÍ–Hó¨.DØùTw‡¿‡áyåRÏLmgðj•a–pÌ_˜È•$§#}@œ=WAÙ8ª’¡H·§Ïgôq$O&eÃjÿPwá7 .™áöÃèmmUŸqÀ øÎÉaE¤“Ù$^/st;ÔÃúÇ`Ô¡ƒ±ÒOfÚÉ6¤K'L¡Vr¶WÙt~Ýoèìw76Ï”õöëlÇ®fØJhö*àa<‹oáà“‚:»LA·Ó\„0óCÀQ’­€qpO&òäÄ(ômœþÍoØìŠÌOˆ,dY[;Ò{¥ÛðgñòsžW@*ÌìY¿’ŽÙ8Nôã£÷o—ªq»Lˆ\ÄÃDWY»Œ\‚SX¸‘QñZˆ1ËDïúö…~5£ Ǭ/V¼+íbÞµ•³¹Œ²zDìÕœ¾Ñ×<Â»îæ°?0Ø£\Ä»Æqø’eà]ƒ¤ÞõÕ)Õ»úrL.9ø‘`ïj+QP×0Éáö7rz£7—„ò®Í÷É#·èwUpÀë °¡$¼wÝÎÑ2ÔÃú؃¼ë\I°w ælELɸ’pÞuòaÿ¶§€íâ] üS üp°wý£þ]ì]c@|Iº^ÊÁ[™ÈÕ‹ÞUÀéÕ%AÞu}IHïÌyŠJï‚îA½K泦ñªÞuËÃÂüg)Ÿÿ”h¼ëæ‡Cx׋ýÕôÿ\*zâôwýÙ¥—á]S8»‹±/]*öÎÑœ¾€Ñ–†ð®H›È`W-½ˆw5?¤Àû> Þµç>ê]îïTïÚÎ1Ç—R‘{ ö®'9j?C‘nÿœ¾…Ñ—?Ê»29®”áŒK5Þu5ÜÉ)…÷®ÓKøúêaý[÷yצ‡‚½kgëxˆÅ‚%á¼kǾǰ[lﺗƒÿÈÀs°ê]9jÅCÁÞõO –Ä*`3Oa"G.½ëÔƒ }ôCAÞõþ’Þµ‡ót,¼ ºõ®÷ñùô}ªw}ü °þá"^[¢ñ®–Cx×mí^B ñðƒ¢wáô…Œžõàex׉öŒÝü Ø;qzOF‡EWw=ÏaŸ?Ha{¸ˆw-çðí‚wÍ[@½ëºãªwÝÁ15L伂½k,G-b(’Ãí7qºÑcå]ÇîWpCî¯h¼ëøù øôþðÞååè÷¡ÖÏ_ä]“ö®yœm#S²üþpÞ5Žc—0ìÛÅ»zpð­ <„ƒUïú|±‚ºò`ïz8Tð«|â~*ò½Å¢wýŽÓÝä]ÜÒ»æqž÷ Þ݃zWŽŠw­X z×ã‹…ý.¢ø~w=¶8„w}wŸ‚¾Ž¢ßbÑ»þÉéQŒþõ}—á]k8{ãbÊþê}bï\Êé[Ý~_ïÊá°U v×}ñ®¿c1x—înê]¿Q½ëÌ"s©»/Ø»þÅQF†"9Üþ¿szÛ}”þÆ¢PÞµšãê.ï>w-ä€?1@Ù¢ðÞu G?õ°>âî ïj]ì]:Î6)‰YλšòñŸaO, ë]/pð‹(ømVfG½¹(Ø»ú)%|g¢ˆƒ×0‘KŠÞ•ÄéKy×€E!½KÇy&,¼ ºõ.ý|Å»®¼[õ®! …ýÏŠˆj¼+vaïZËÑÒB¼¶@ô®‡9ýEF¯ZpÞ•ÀÙ`ìE ÄÞiæô)Œ>pAïj¿W]Ë`úñ®78ü ÀäçæRïzð+Õ»žâ˜¦Täs÷{W Gý•¡H·¿ÓŸdô9÷†ò®‘wüWã]QÁÃî ï]ߣ @×o™ä]OÜì]Ïq¶£÷²XpO8ïZαÛv€íâ]“9ØÉÀws°ê]×rÔÜ{ƒ½ë5 –¤)àŽ»pÙ÷Ñ»>ätó½AÞUwOHïzŽó½Gð.èԻx×›sUïzûnáþñô=ïzëîÞ•ÈÑÞC Q|·è]ý8ý6Fu÷exבù »‰±wÌ{竜~ânJß=?„wÉö.ƒýyþE¼k‡?u7xWölê]}ZUïJæ˜eLdöü`ïêÏQy Õ_cÿw)ô±Œ~á®PÞõÇnÝ|w½È_ͧ€†»Â{×ã]õ°~ùì ì]Ùœ­œ)™sW8ïŠáØ;6AÀvñ.ÿ<<œ#9Xõ®w9*pW°w‡ºg¸‘ƒÜEEnŸ'z×JNõ® ïšqWHïÊæ<åw Þ݃z—g¦â]sg«Þu÷<µ õ\Dê]ïš?/„w}0WA÷a…øq®è]¯qúwó(ýs/ûìœýïŒ}ã\±wqúFŸ=7„w]Ïa÷1˜uîE¼ëž<¼ë›éÔ»^>ªz×'ca"¿™ì];8êä\Š"9ÜþZNÿ£ožÊ»–pÜ_nÜ\wÝÆn¸wNxïÂÑ3 ÖÇÌò®s‚½ë›;¶8¦äÂá¼ë Ž=3‡­ˆlïòp°Ÿç`Õ»îã¨gç{×@U÷ 'p°‰¼ãNÑ»szÑœ ï:{gHïúf6/ÿÁ» {PïŠ*V¼+0]õ®È;Õ*ü3ñÙ3„w98úå;i!žž-zW1§¯eô‡f_†w äì…Œ}Âl±wvÌâã?£ŸŸ»Þç°hûvÖE¼k3‡2¼«zõ®Û?V½«”cvΦ"«g{×tŽZÇP$‡Û3§—0zæ¬PÞÕ—ãr®y–Æ»¾›©®c€³Â{×Û}êaýÓ‚¼kñ¬`ïªælûf±X03œwÍáØ§Ö.`»x×|?çp°ê]Ñ•5+Ø»žªºgxt†ÈDž™!z×Nï˜ä]˜Ò»ª9Ͼ™‚wA÷ ÞµêvÅ»ž¦z×ó3Ô*´r35ÞµeFïÄѷϤ…H!z×Óz"£K3.ûvsöfPö£ÓÅÞ¹‘Ó0ú3ÓCx×#ö7CÓ/â]™^:¼kt!õ®ÓÿV½k(ÇÌd"GOö®Îb5Ž¡H·¿…Óû3ú±âPÞµãŽO§¸åÓ5Þµ–2À Åá½ënŽþÔÃú9…AÞÕkz°wæl ˜’ÌâpÞu¡ˆÿ ;PÀvñ®Ãܛۋ‚½ëoõuq°w¥‚x\ÎÁ»‹©È§ŠDïšÇ鋃¼kbqHïÍy Þ5ºPñ®@¾â]Y…ªwå©Uøí4EÄÕÅï²…ð®×9út-ÄgÓDïzšÓ?`ôW¦]Ì»bµÞ5›³×2öòibïœÀévFOŸ»pX>ƒ™vï:v‡ZÞu(z—÷ˆê]õsnÙ‚s<+ôž4rÖºF2îpFÉÕ[è ˆ³½ÃØž½ƒ‚·uй»aÿÎ4ûïàû?üçr°ÚçzqTö´àú{LEïx²ÈÅo(6¾í7wçoWØ{0%ßß.¶öß8ýë;(ýœ™ìÉ9MKšš÷Þ 5·j™vÒ—nS:é€|µ“>w»zÌ{¬¶›Œç¢bzgÜ.v“œžÏèWÞ®cǼi÷¿ äµ ©dñ±†/#XGqwû_~ævè)srhOy°IØÿ☦۩Èç ƒãp Gý•¡HŽºÿÅéO2úœB%§­öÇñý/Ž»‡áN‚£ûÚžy[àë?K½TJ«ù£Bµ½?ª ®`ÂNCNv]O¬Û€!98]ÃÛŸã¿¥LbH§W@«9¨¾ ýëT±-âôÍŒ^Žs"cÐPçþ±êë…Fv}Üáúˆïqs±ˆ[¯8ÕÆ(NË(T»þ½Sm´Ï‘—›´ ( faˆ™n”vîs¶õvvF¬0Aq=Îs¹:_ê8`´_A3FOfãEa¨<ØmêöÊoRm½«Þ>NQ¸+üÓTñTy¡Uu†wáœít*ħ˜o *æƒo.2ìžaüqŸN§³WÿÍWc¦ª-—_@ÀÔæáÐýl³õ[(e…\a !ïY.ïÓUÞÏù•§V¦‘ӎDZGùû“úäyƒsÙx‰ÅbÑ^Äû?W|OE]“/ú‘‘Ó3ý<Ž;)ìªÊhÂ?; +FóõO_ÿÐVé¡SKö[Yö­Î-GùÒIƒ±ZÑE¨µ"sïæ«¼©´VV}ÐîªüW6šaDB_'­Zªx\Òãù´ óÄb^Íéw2úuy!Æs·)°$ëŸ×u`t^ˆTÞAΙï÷6ðû‡ðžç˜Ïó¨Ð½8Ç“¶*k–uÎz‘u›Â²Œ³lc,O’g=žô4ˆx?5ÃÚ8¶’a瑜Hk³P~º ôfU§9²úÏÛèäQ|Öá») ÏuLp.X§ŒÎ7òõGŸ½¢?š"¢ñ+Í~Þ/×qø{ ¾U€«#ôbŽ{î¶àºs Äryjʯ÷¬*ߺ­íÄ9Ú­‡:¢Œ«œnTºŠ +¾”Ï_³*Ãln¶2Ì"K*ðä’3Œ/Ï2zœ;°ÿ¸Œ³ÿ†—2/ÿZ ×'Óa-Þ踕Ïÿ8êƒ):þ‘:x%SW9…<É2ÐãŒÍ¡bê'+ø{b œi®3éFMÔáîã0E Ïéf˜ücùü‡+zKôÐçÍ='! ç({¡û˜RÛÛö‘úkÄRiùÇOsùøÇÊøï\^FÓ«O/ç7‚¡½äâFl(ÎÑQ÷ðõq„ ¿SEð{0Ë8jÛd¡šò•gsfM&ÕÔÛ㜫©½ùB ÐQë`‡½ÞLê'gÂÃÙ[wØû|Ö=ðÓ~PSŒ(GG”Ù>qTcnе~ùM²µÞc7ê›þ“£Ø3YY4*Õ¹>WQdÝ‘oìÌßͤ§dš–/¦Õ17Ym·Ø ?ŸÙ:¹è½¹ê'÷œiÝr,¤€XÁ‡Qþ¹Ð¤‡_45†éÌI#œ91žT¼ ó]Ïê@½Êé¨çû?\innPyÞbþ}þŽ_0½Ñ¦H‰mú}9Ütk=ʉAÖ=úzd­—­›€<òèkM¸qâqåKî~‘Ä|xîŠ|f†Ñ}Dr'Á«ëŽÃƒíÅMhF²óœArÏÓ$FÈù»GåïeÝ#[÷UiúœlÅ1"sÒG5¡œtV2¦ÊF™F\SÓôù»åâݨÐHkÃ3L`èòéÔ…Ç1+_ÿä¨1H¨­Ã6RäŽ <ùãƒÛß9W›Mƒîƒ/ql’\ðIy…‘XŠJŒx"]$W°ÿhj;C¨íÙ\f­M¨mÕ­ÏZµ³×;m4x¨EÓÍfÙ4‚[ÕàX6/¿Í ÇѬ>ÃÐÀ!?Y)¤ ~{þ ¶6ý õ³nV8ò0C¾œ4\-ã môƒd¶nÆB²Õñ*Õ £Ø™Pº&÷A{/ÙÚÔ¶ïÜ—|ŠŒ¸ŒÅL‘-XQ4eu?ÏV+à«,5„‰ú)‹V«rºkTì.Žýo6Å~š%Nç7púaFrÌz<®ç7£¾Îý¥tY˜Cðoö3|j€¦ûà´2š£¥s±1± ²Ä P§ÏfôY!&@g3Øxë—<ŠP'@œ!"&@[&Ñ Ð£ûÔ ÐŽùOº'S˜S'@üaÈG8Ëß ʤ5~L-S­#ß<–¦mÂÎL:©ùT˜ÔÄpž;˜à.8xRsÿKiç¼tn§µ… „͇¶À›hîï<È{ yÂKjj÷Ùá­èVòƪ£('YÆ£X~sd~Ó˜œ}#Ó\GìÙÌ,q\35å;2Å@ÇÍ›®1«âVµü4IÝ”N›n°‰«µpHyæV%Ð…@Ïççȶ[)òÀ¤ Fôέ4Ð×ký·‚gߟfÅ#$ôGÛ>Þ+z+—QÁÍ VÇA³oÕF‰ŽIjœ›È×LT.ªk ÿÇö‡‰b ÿ;§·1?80Q§Ùê£YÑv èsöûú‰b@ŸÊéˆÑ‹'†è#9ìKŸxÑ€þcšÂ8 úÉ4 oÝ£ô8¦êOû…€¾™³|2‘²ìN j¤Ç9¨Œ|sÀ-Ú¦ºnbp@Ïá<«˜à»¸àà€~%GOcèD ºK@?žÊã?ƒGp5„ìã¸óiÁýŽ´ý³dЋ¿ Зp©ISú7+}e’ÐÏݬôšTµjÆrþEilÌO è=9*=-d@ÿ.U è#R¨˜ëSÿúS}M©!åM©ÿ‡=‰kXšÐÛ'\b@?™¢HÚNÏ„p=B èoìdÝð+ô©Ü<4AcÖßS„û´`mºÌ”.=ŠC2äŸ)¡:é±1ˆ!ÿ—ä»9臔}U xöÆñÐ GÝõ4 w‹ÝÎeüu¸š`ES9¥h£Äp¡FqÔ½LTÕ5 ÿ| Ÿÿ0ìÕÉb@ÿŒÓ1úÿn¹X@ïòîg8{K2eßw‹ÐË9}7£»n ÐgpØoìá[.ºE9‚3ÌO†€þc" èíTzǤ1¡ƒo ÐùÛ}Þ¿Ya‰f,ß’²EyŒlQ6*Ø?s,Ô!ü¾ysPƒ–sÐnÐýff¢¶YGßBƒ‹ü§p|üc9z:C'iÐ]‚ÿw7)ð뼇Î?r\àæço&ÁEr´xÖ{I¿ßß6ùõ•-6Éõª&ò/ã"·Ý¬D~s¢ùï¿A‰ü£ÕÈÿ»›„÷pþ%7SÓÇÞÄ#?ße3q”íf!ò;ZÛOßD"ÿóØîöÃ,ÜfÂN¤£U¶‰ÁÓH(Büü{ŸÿÜ$ÄOUzþMt ’p¶Ië§±íVR?GaT´/T$Î៺‰–jzRðxv3G•Ü$–ꨢwÈMÊxöÅx6_L‚²}xTÎðNRÎiKÚC¶ ÅôWÔéÅb’£DÝ¢$&Á0A%b-‡`8Ã#G û g…9v´¿œ3b`Ç‹~Iþhסm×¶>‰ mjÁúBÉ­Mú‹<‹(L ipÝxÕà´"9šØ¸F€Öúòeh æ\G¶E— ïv‹„Ý8Ôš"ó)ƒt•žd'.vâ²eÈ“sÙP¾KéŽS þÓxMCî§öøtzŒ5êÌq]Fº!2ƒA¾§ŒtÍ0ÒíV§äõ Ù{\P¼úÇÓ‘n·v¤Û0˜ïz2ß #]sÛÐWÄ‘îI.Ê¿Ï%)ZÈA§ ‰©BÜÊQ2Q3¸¨®#ÝŽÍgØ[Å‘ît/?£÷NÔŽtK.vJeg?™HÙ[Ä‘®–ÓÿÅè¿O1Ò=Äa/0˜;á"§T&qøÊDçFŒ¦ãÜ÷/«ãÜ`Ž)b"Ç%\Â)•¯nT؆0¶Ÿn¤ààS*»8ö¿ û¾€írJåIÞÏÀÏq°êô 8Ꙅàæ ¦òS*¿Û@O©üóFÕúáœý.¦dòbk÷àô[}ÈaO©´Ü €ûCÍ­‡Z¦£ÒŸ®SF¥‡F«£ÒùÈ)•éÎ,"DÜBµãbÀ%U)¿”SÎý–yjßÊÓö­™\ÿïn¤L¥ÃoQ%sú2FŸté[ã4}«‡ÝÆ`£n€¾UGûêÕÔЉ§0ûs=–ó>öÉõ ›åFècŸ³>&¿Súý ­£|¨Œ/zÿÆá_ß@µ¼ƒslbg«\iÔ«ï­{Œ3ì` ¿»^í<þkÜWÃp(8vˆ@òÖ³/Óœé¯Âœi ç-d¼70Þ(¤…aƒ[ul¬Â1”qœË9Lþ|·‡ã:®§¸fŠKŠR OsÈ׿Y0جMβýziÍÔžªÍ÷p¶MLòcTrv”¸ßÞþ¹Œ! 9’ža,P }84‡A‡S¨=Ê `ÚÇ(˜k¯v½GÇ‚½ÍØÞÉõ—ª½¯r¶c©è÷Æ0+ŒZ{«9rCnæÈ.öÎåÐ êÃì5*˜ŽùÍØ`{ÂǬ-ØÞHÉõ³Aµ7‚³¥1у+LZ{[FsÿgÈS£d{_âÐoÇP軣™½<´!ŽygL°½W{b{ ’«H°÷ÎVÃD? XaÖÚ;’#ïaÈtŽìbïÏ£øúA¯PìUŸä˜!콟µ5±[ÜCr=/xÝfÎøÉh¶ÿ5ŠÙaÑZ¼œ#·3䎄u‡p ÷6u3è½£˜ÅsÇÜ=:Øâ]£ ·Í>Gf%ÖcäÃmõö9쵑Ê ~ý·0ç;†é&x‡ïý£à{(þ„ÄzgY3´Ïù¼@Ó}PÊnBMÎÆw‡dmòå$éÒáv<¹‰…)–yF*–ùFQë§Ç¥‡8ý…Q:öÕ&ñÄs¦>‰ÃW2qsHÎë!ggdEW8ŠTˆI=‚aT†­§á­ˆx]vÈé3Èx2\ÂC‡×)üf¦çËëè*¤¤Ÿ¿ØÎQÇGRÔ’#íLïïlÄù‡)XǾŰGpN.9'¹† ‘ÙY ¥ §:蓢׉U1žÃ •ê:¬ÁH3y$L_G[i§¯-àq®Š‡Šh”ó¹Ú{ãÙ_Ûœ¿Ó!|ý3‚¯ˆIb ýËXU ™{nàxbþ­#9£:¡•ø±„ÃþzÚJdòËnmwŒ€…5nt‹Â”Ê™Lö]JvîÏ£“k3ùb¡µ…þwb'v°·b·ÿï¼r{uÕ ¸7¯yüg¸"<† !Î<ÞâôΔ¾¸Žª=¤™|Ôrä¿rÛpÒÉ¡ZtíáèÕ¹í=œcÓ˜wl»†Î;<x d6Þ(ã8~ Ó0i8í£â[GÙŠäð68¯ÐG0z'Ééú¬Ã~Ž»0œâžNr¾ÿß1À›TPñ!xËv‡-Ú`7³Åö1y¹ 9šýÜ_qæÍÃiO€ÆN4)í'ÒM›ñzOa»‘³ÝÙ<¶Ÿœ}¥ªÏáx‰Ëùn}K õJ, >@ý »ïÿ+Xúsü{†~†ÿfâqG6Ðüž=èïã0Ö[÷ÉÇóž7_†Öp4¿—þ>k}Oš_Çòáòô_È‘#{/i§- íœÕg\žÀ‚Û§D’³HFʵçòçâfig¦1-×Þ+í6É}|B<ÆgÝÍ@ï2Ñpé_ä³î`ùÿòC¨| ú=è5Þ#ä@ è‰L³a=“%7|4ÇŸê³nïMå}Ääõ#/‚ÉÛƒík>MaÝÆX¿úÖsp¦'‡›Ð#-›P ¹ÓÀ„ñ>ëV•ó=“c #‡|57@¾U¶…±œÿx[û!½¢ºwZV=Ur7è©êÍ}¨œèk©œ>aäÀÂ¥ÝETob,ƒ~>ôÒ~;aÙØ—² g,}ðÀ+òÛ‡rk¤­r$÷fm­Då$19R9ðöýöIà[ÇX²åG`!_õ!ªMiÙXµUro„n—à³Öô£rŠ˜œ~aäO¿ÌóY«~Ñ/àÉÇnðY](~%Ãÿ‰L[$×Mä[ÓÍôÜr͵4Ö¼'Ž{ƒâ”¸pûÕêØX¹sï`Ë4´Ã§øúg_ÿ\-ÌÈ7#?çGJ>þsžãqÔŒO†Ñá1“Ï$j8æ@ÛÌ#/î&ò¦EÖ&òDß ›Í9jL¦Ctj6ŒÙŸ¯Ë2ø’`ç™Ï,™‚sP̪ý0Æ‘q |v¨ÏÀƒ†ÑIT#ž¥µC C» Cê²<óŸFù?£9V˜Ÿâ&Ù4T¼B˜Ã^d°ª¡Â ].;6꣆@„''àì4¨+ôdζlyÎ6–Ž”í„‘’láiÓ¨}¨˜7UÎr+Ó4d(¬Ò•´’hꇇ(<½Oû]ˆ…ú‹÷ÕPŠkPpâB¾ºNê¯ Ýî!ÎûãuS^l‘!B»VW׿œic*Ô0™ÔÕCÍaÐáš¡ ¾UPW ^±£!džì àûKÂøÎåBeŒUdgGÐ5û |þËÁo1ð&L—i·+è齎¡—r´=‚;×vÿàuÏÛ±t§!€îç……åÙ«xÿgÂû ¦µvâàž |ì*ÜÅîg8º%–¢w^¥ÚÍÝu‡Avµ;*–î8ðþ6Áî Îõ8>K0ŤµÛÂÁ óü¿þ È+néˆÒ£&Éz€eüô òÜœœ´…‘ê É,e;ZhÚË/\¡ö'Hw} °ËÛ'&X”ogžGsÔ÷. âÛdˆ%ÄôóÔ6šÁŒaú9ª¸µ¡¬5B¶¶æ:;õêôóuÎvàò-:ý|`½zÒË1ï3¯y çxÊõaÞý°ãÿd!GÁû躾û¡¯…Nw ë œm1Sc@§žÁï~ˆàØ4†,`»Ü´üw,1ðwý°zÓòeŽj<ªÞŠóÐ;βV}En{øýÎöê%¤›=ë·ÑoŠ˜<뇘tì6ã»4ŽÒýU7q`#µ×+žN’‰<˜ŒœÉÀq"&Ì×)Ø£ýì@†=ÓOÀªzhŠ]BSü™3~ÖŸíõÓ(§òÜ´‡8× ŒË­á*4ùgðùÇ>ΰ³8V˜æ°¢þÁ“ù=˜Šö‘Ïж´ýtVí±_™¶!LzT?qð|‡ÓîÇ|rØyg›á_³ŠKx“IxÞÜÅqçqÈFY`ḷpØ# 6Õ| Ž«ãlúã–›©ã¾²V­†£o&úŒt1ÇÝÆñ߀ ë‡÷ rÜbs°ã:8ÛËfªÆ#…sÜÉëdØ»lÇåàé œÄÁªãvôUP æ`Ç]-…qÜ·9ÛYIpÜÓъ㎌R×ÔKuÜ£}U¥\ÄN‰ÚWÛ7¬ãNå`ÄÀ÷õÕ…qÜk9v.Ã¦ŠØðŽ{¼ÂÏ#´JB:îÎu²/å:Ô'œãVsì>†Ý̱‚ãÞÍaè츑}ÇÍìP{ìhζ€I/è#:n/NÏfôkú„q\x­S;›#ñߣøo δâ̦ÿ½oª¸þŸ»Y†X`Q”.!B¸‰tó Ý,òRVØ@DÌ;˜HHÖª ¨Tý) !ûÿž¹w“›‰­äóÿþM>sï¹3gΜ™9sæÌ̹w¡”ï™Ì˜µ”±Ë· ìâp5;Àö;x9üo^Q®¾x…~qYI^Ö*Öóo~AQAi¾~ar/i<½°üJÉlQyÑRûÿ[œwOy^QNž~^IIqIÏtKVIÖª¾ñwKÞªâ’5}#Äg•e]!;»%뮂œ+ $.¼RnÆR‹òì¶¼œ²¼\ý¼…ó{¦/,/³•—éÍå+Vä•èç—vMŸ[\´¢à®+—q¥¿› †ÙÓõ³o\œg+»qFÄMà©4뮼(ý ¥QQ7”†ÞPÖ£|š»0~^h„ý†B{Î^›QPT–WR”U˜‘GüèoÈÆÒg,™·hqâÂ[™Dyg"fÎb«óJJ Š‹Ë...+-+ɲémÔgy ÄBXTC>}qöÝh$½Œ¬¿áF›>·8¯T_T\¦_•U–“Þ¤Jcæµ¶†Þ>«l%y¥(yQÖ½QQGê`KWeΉ˜NC+»¸´ l =¬*(“fö9¬t53/Ë€„ë¢Ô[é6?%uqoM\,'d,ìH’±fÌ[´há"‚o™wKçÏæÅ‚›‡Ä[ãé)>Î׉h‰[§È·0ÕjN??c~jJ =Ï]xëüÄé©·ÎK³Ì›kŸAÖ Ÿw[ê¼[çÎëÄé, ã–¸‰s™rÀ¯Î*,ÈÕKšgUVNI1ÉU_í˜]Xœ³rqÁÚ¼›""VRĽÅ%+W ÃŠKº5)ëœô°HlL#é™aL¿R)ÞVÌ­âåVªž"©ó2K¹ä¿b[ Ì^“Hõçõž F]”¾œ„¥F,Óß1ÃÞBåÅéüËZUPȳßPX>¬g eêH¾*Euâ(òt™|Ò3!¿ ·ï4ÔkÏâMÀи«TÁ ÕÅ> «†¬ìB(4t‹(0â,ˆ"ç´´Kå l‹So™×3!%ñ–D«Þ›Ši†)LÐ9¼=7èL®ãø5_õü¯¡ü:_#øu&¿ù5†_Müϯ üšÂ¯~µòk¿.ç×L~Íå×|~-äW¿–ñ«_E~uñë:~­á×Müêæ×z~mà×F~mæ×üº‹_Ÿç×=üº—_÷ñë~~=À¯‡øõ¿ã×ãüz‚_Oñëi~má×ùõ ¿žç× üú ®ùj2\Ýd+²³Ÿy<žü}*@-‘ÒÙ“Ñ~Î#HMþD $hA3 ÚMÐmí hAä"ÈMÐv‚Ö´— ‘ ßTBP Aùµ”N–¼¡¬…r,‚& d"h A³ úŽR§t† `‚þJÐ8‚Ž4‚ — RôA­í€ê º@HÐ'ÝMÐi‚p,‚®£:BÐL‚Èû'?… ½ÑÌ~öY‚ª j&è‚&ˆv‘În"ˆ¾ãv¶Š Ï ²4‹õ³EM$(— H‚–´„ A´¨?;Ÿ fê‚î'hA« %(•  ‚æ¤#(„ ai bµ½o/:KÐy‚Nô!AotŠ ÿ!è÷=JÐ!‚*zãûòZSyWÉðL9œý‰ÐñLŽ^È©eÂ÷[ÌÎ~œÀrçl},áQ„»ö!D8†p¡á3„oÚ4à¡a‚ a5B!B6B­ñQ“F#¡L;BÂ&„‡šžEØ‹ð„wN#|‚p¡A²E„„|„t+B‚ a6Ât„`„q#b»¶Ë¯'¼®.Š®òûëä¹ÃO¯VY¹òÍkÿç–õ×±,Ú÷¹fòÈ GƒOžÜžõVò´Üm³þ´þ훆5ÿ4æÕWmïJùíáã A-[æ=syQÜó/ŒÍ¿çÄ~dIùÆ%‹ŽÌ¾înç´SE;‡oË¥]v—Î4aÍ“wžv¬½ï1ÛÛ+ÒËZ~5©aés6þôÁÇë"Ý™?‹90eãÆ÷?yhÑ¥§ªþñIîú´;¦½öåüÏ^žù̯+ù¿Xwcø 7G|ñÌg×¼°ãNÿÂf÷ª'¦Ø¾>Þ¾dÏû‰É÷ü5eüìß^òýî`ýÞßÿlNùïB]Q_=ÖtéÛù¯ì»ôÏk<ß|ûÁÜsž<úöþ37wœ¿×¶~æU "®KVÏÙ½äÍÈç|«¦ŽŸ;éÍ9ÌP¢}êš~:ÚîZxÍã;Æ_óÊÛ?snƒ°ãÛä!ŽãÍïÞ>0ô¹Gì{~µD,p½çož(ïý-+ ,*þå'£²U—ޝøÍüÇÒ5w¤/û£cÂÒ™§çDl»åġû_ÿò5§L~êyý{¹»þuyÊS·¶|òxòžÇÓöBæ+7lœô«Íø?áÓ^ØÐ0»ð§qÚðêo‡ñÀ×w>³5Þ”ßÔ´bš{ê}ŸÕ:ao‹…•\;yöÙØèï>^¹çëM«ïù.Õ2£õÃ[¾nϸ°ÿð™Ïoz+öëOzÞª^¿ïÏ3·­ùãç¯F^Ö|éÔ-·_~{•뽟fþøðÂÜkÖÞ¿ñhÅò6”žÛ“|ï’áê…hßL6Î^?ÿ¡i ÌîcËç¬x=ícSUêâ;çÞ¶=z a“OO¼À›¾`Bz¨ù–ëfÿ¯åԌ髷ýdÛÊeÑ“OŽõ©{ëÄЄÏæ¹°dDkó(í-¯×ÕoÛrݤõ‹&ŒXþÏ—’¿øßÌU/\ü‹­°íý´óæ|öÉþñÏœó÷ÍÿòW¯Lù‹°ó“?r=õ·â¦Üwï~{Ò¡÷x@ýíãoÿâ\æÑŠc_=êö¼¤ýÕþ½O?çØóÄ¥¨Ýc?¹ôì±ûž¾ïý5OΜ½íÇwíºcïæÍ/øúkfÔ¼àÿõ¦²÷T¾qÏý[Ýî4<˜|ûwÏi¬¦_µÌûä§·~uiaÒ´÷4x{îDGÕ}gÎuÂZ-¹xÇë«/û¯ÏOºfAá–uVÈoæMÞ6*}ɲ±Ø®±êTà¬9©ªôé¾wøNð??þôÈÛvnùñ'¯,ºù'M£bk\Ç£<þHHÔÛKô{£õÛak&?óæï£ó_¿v´cÍì³#OY^89ú–ÂwÞZþwqõï½þÖã­>™ùéÏ/LúlÜç~1áÕ§.<ÛœûMéú)ÿ:´í“Ë~—÷Õ¾Ö²æÁ»G¹Ž¿wiÝŸ7î4ûaÇöWöÄn xÁóÈ‹Ú=?÷~ÏsŸ6cgþ쯟Xµbïþwï+ßçsçì_î5}÷âJ(ÒãNè ž„òŒ@¸‘¦IÄÍFÚw¸ÿÏ'¿ ø0ð2È5÷ î+ÄýÏäeú>žï¼i‡ÓÄ‹ˆ´Ÿâþ.ùá?‰°á„ 9ÈCÓ×C€w§÷›ñ\„ø?ž†;½4Ÿ‡û“HÏAxI%å#_îtÜŽû%àŽGø¡øäB½P%ñUŒð0â¾@ˆF¸8ÏÀ¹G%ѯƽwzw.0ƒì@ú_p? ü_îäÌô€\¯µLªïh<¿Œ{*ð ø_ˆÏ>äû€¸‰¸“«õ#€ïFxi%¸ƒû"Äç"T"LD½¤ðÂÍ€O!Ü‚xáKàþÏ#m9žÉ«y,ÕÏn¤UÉm™†¸¸ÓTj¼÷ç€C_)¹ð³¸ÿ÷‡€£Ã=iaˆ#·ßl|q/&ó‚Ú|êw«¤r[ÿgÄÇÓ<í#Õ—R[D üp3ÒÌ€ÉÄ\8q™¸oE¾£ˆ{Ï›p߉;™ˆ¿AÏaŸ¿ˆÿ=à=>’WI6õû9z€ RT¯4àÜ@òL²ƒ4rÙwÕGÆJ<¿‚ÐøÏ¸×â~\Ö[Àsàþ1ž_¤³'IVÉŠÌþ ˆ_!ë—·d½A²øÂd¤_ÄýsÄoAx aƒ éŠýÿƒôí¸»²>D¨¤Éä–Ê}ƒôà£Èó:¤¿çkq7 íE™n˜ 骥FI~Ah”uðé*©¿èh'Z%ÏÑ;-ô‘‰Ý²N‹@\¢ ÉOÅãþ%âÿ‰{Â_@{µ<6›I¦™4>å1~q-D÷¿ Rþ›IþTr™{qŸƒôEÄ/î/!ì vÂó=‚4Öhü¡’ôr´¤¯Á]øm>ÒX]KüPû¶n!ùÇ}Âa•DŸ~?¡q‰ç!H§×ƒ~O²&Hóõ µ÷ÏTÒØ9Ž@¯mVIsH­¤_Î"¼NF0ñ8SÖ{ÄCÌÇŸð<áu„9xÞC<^‡û»>’\ÝMs• Ñ¥ø2À?&¹Á–8¤Gh~»_Ê!øžp‚pŸJJ#¹È•uévz›ô"âhÌ1‰W’Ï~ˆ Ït.Ш’úŸÊù›¬KÞÄs;pòiÜ/Bü2©¯vÑÜ bÿýûïßÿ×£&dFÖ¯»¨vU6Á¦Â¤5Ê”‘‘QZ–•³2#'eÆ]åY%¹ì¶{4nSîšÂ\¤”ggdåæ•`ŠrC·ébM–¼’ÂŒeù%+óÖdØÊJrÏ8oB"¦ÝåM ìL*/É)¶yãõÊx[V®7>¤#~UVÉJ‰;$y“C;’;IMïˆ+EyRž»79¢3™§dg•æyÓfvK[•Õ‘ÍØ-©´£¼˜Î”ÕåhŸÞ“2eM^©7>¾#¾¼¨ ,'?/geÖjob‚71'«°0£° ´ŒbS:bKгVRŒ¥KLFQqNqQYžc[½i¹Å÷f•e•”d­¡ø4oüŠâ’U±ÜqW^YFéjŠÊôF­º‹b)*WU*Eå{£Šòî]¼¤€ç,ìgãq¶nq+º2Z¦HN[L1vEL†×—ñ¢7¾4kE^éšÒ%yyïº%ÐÑQq%­ëLâ]vWIñ½_Ó¿:cFÁê ¾O)›º¤¬*.)Ë*¤xw—x›"G}·”ì5eœ­e|6J/^±‚â•ñJ«ór3V”óÞhV&z¹Ý¡ŒD£trµK™"]D=›Ã9x^™Š^“úhO·Ø"»·[¬ÔwûºÅ–dó”ýÝRÊyìel¹í®’¬\ÎÉ¡.ñe+Œ$–EÉGz$Ëy;[ùXÊêœU6Š9ÞSZVS°‚Kø ¡›[‘UÀë%x…æ4=t J Ì[µªx5OþX~–eý =ÚPHïÂóü*/j #D>ˆæ”.ð´ò2:"¥çoägª2Øæc^6#ƒMɆٗ¶8Ã{zš‘±(ëÞŒ 3¤¾ÙlI~6³ç°CBnž×}*îµ'•ÏǺ¼äÖòU¥ìé¡Ì‡÷A(Xii"ÔÉÒ’ˆàkÂZÿ>ì°’|âJK î*š[œ›WÊ~.Ìãeyñ œ›g¥s¦R¶W¸%ke!¤äÝU–_Ê^BÞçVÃ<üˆ.­v¦fïÒBU%³c¦RÙBIÎÍ38öøP5{©Zâ.²¾ÔÞª±ÇUñµøª° {‰<¬?R‘ƒ–µ˜®d–ûÿìªyE¹´Ëñš=tPŠïÍ&¥þ‘§¾¯‚ «f?J©y‹®ëŽÑµîmº>+S[ëÓÁÎÏ@uóYªÿŠ®ïC¸Ý°Ø[>ÅÅe=ú‡»cüžûå}û_”Wr È`ç|¤ûýC˜¦§#ÉïÔÝcŽ«¥ãAvR-ûÃüKÝÅÁÆ£ŽgU¾î¿÷%©j4ôú øßÔûPx½_>W{f¾V«YÓ6B¹ô8]ÿº‹®¿¦ßžœí’SÌ^"3ó÷!ÙkÙc¾ñì^ÚC(íg¿¢rºfúëÙ¬_ïïÂÈ·C¼Œ´ Q³?¾A…ÿœ–A*Ù-h«o§?ÒÏÿÁ?"Q­p;â+y[ð•Ü(Þõõz1´øªÙÞ?ŧëÓÿ¤ëÅ6º­Qw–qYQÆ6”ñ‹‡Õ@yh]×?O×Ý/Óõ…?Ðõ““tuU ¡ëú¸{ÄOZ“Ðß9ü­»V¾IGÛ_Ì€‹¨ÅštÖq2Lñä ú'Óšß þÂë@OÆ'Ø‹zb'>Á¥Ã¤u“>\àñ¹‚ă’·5Ã:áêao«¼MÃBºE.‹`oY´Nô–å… ?8_Ëø9 ük…N|/Løkcî/áìŧý/¾îÿÿN8Ü¿“ÿëý¤ø¾ò6)ò>£È« è?N8(@Ê+*Ú¾/Hõ"Ø[¯@E»yaÂ_ œeüÕ ü¹Šv›«h·—â{TÆ'Ø‹¿jN'¾îÿü¿,óïTðêdìúá}‚½ô?UȘî>ùS{áÃ%úU ú#G}eú{éÓ¾³—¾&üô'{\Æ'Ø‹YÑž^˜ðïØÁØ^Ÿ`/þ:þ:þßó[ÿï ü‹ ü‹ ü¿<ÅØû2>Á^üø7*ðÕ;û\Æ'Ø‹ÿ ÿA~pȃ>D†½ø£ø£øOG'ã?¡À¿0¼ß þæ½Ð 2>Á^|•BÞ¼0á×ÿ’1³ŒO°¬‚Ÿ± ~žÎ"ÿþþþ~àäÈøûøi =à… _÷ce2>Á^üDÿ‰ þï|ý-ãìÅŸªÀ÷½ÉóöðÎ’Áýá_:ŽùLÆ'¸?üÛO06D+áÜþ¯ÿÂØŸàþðǾÝ$ãÜ~éß0·Éø÷‡ÿÇ{RÆ'¸?üð@nd|‚ûÃð c_Éø{ñ§(tï…îÝûê9JÂ'Ø‹ï«À÷Uà¿|ž±hŸ`/þ5Š±æ… ÿøçÐ-2>Á^ü“ ü“ ü_2–,ãlÕs¬ ~y½0å}Jü§r^‚½øÒ‰ï… ßÞÎØÏe|‚ûÃOT 츌O°ÿ3ßN|/Lø7û ìkŸàþúbÙpéFËvÅðNüYŠ±ï… ÿ!àèeü‡ø÷*lË{¶¥/:æ'2>ÁY£;ÛÖ6ºg;Ó»j^:^˜è&À’éìÅoQà·(ðGÜ °­2>Á^üÇíð˜¢^˜"°§d|‚½ø/)dþ%…̯˜&°·d|‚ûÂÿr´|¦›¹`z¡ú–®ö3É0Íy#ÉnŸ$Ãd¿EÈ0Ù*se˜æÍÅ2Lsb® Ó|W.Ã4wÜ/Ã4<"Ã4޶Ë0‘§e˜dà2Líö‚e›ÿM¦ºÐ9Jä4mŽÀç’r½>Åm¤ ­#¾•a²WéüŠ`š+'Ê0Ù sd˜æÜ[d˜ì«L&[®L†ÉY/Ãdól“a²¯^”a²mÞa²ciœ$Û;N`ŸÈñd~+ô¡3^‚i}1I†ií%Ãd%©d:ó–*Ç“®³Ë0ÉÌv&ò† Óüõ… Ó\@çl#å±3K†iNY*Ã4¹d˜æ²ge˜æÍ¿È0ë‹2L²¨–`Ò'sd˜tE¦ “^ª”aÒ·OË0ÍÇe˜ÆæW2Lãkä &ý?[†iîH—aš§je˜l€2Löï¹þÚIž§€ÿ®€ÿ©€}|;á@B ùÐ9ó*A:/F° ’@ ¯%3Q¸[‚]þ¨·žed¬ÊÏÈ./Ê-ÌËÈÏË¢SÄŒY……t6Âw¯3²K-åe©‰Ee7Ï`Y¹¹¶¬‚’Œ²â þB ËÈÍ[‘U^X–‘½–oã+ž¥üŒü,N½cÓ7cA^Ãw1?!`‹å³2{iF9½ A4å­o…,ƒ¶˜å=à Å;“E9 ·jMÆZÚ^UzÓÓy¨>?¯Ð–W‚¤²’¬УÍýìŽ yéQ±+/E¬íÜõîØ•î‘¢Ø¼–ÓºãzŸi?¼[ß)—ãzêŒQdíŒTfVlÖó˜œ.ÛÿRTçÎíV^~¶òøAŽêå BNé~Á£'üY:üÈèåEÞ‹÷¾z%E÷öÕ¹ù~¤îêW@í²¿<Úz¿B²|^pŒ®oÐö‹Ø±wÌž'½!÷Ûþi}¹í¥Íÿ+ xO®€"$\AqìÐ'Ö€+ÞñŠ|Ÿ}õì{m }ÖWe÷y¬•ÑãK¬÷Ž^;zºtôtæèÓ£«GŸ®½;môê®Ñ›£Fo.=3úpËèî¡tÅèÝ £§û…Âñ¢‹ËEg‹.n],ººVôéT¡t§èéHÑÓ…¢7߉N½xKôp“èÅ?¢‡cDˆÞ]!ºú@ôâüЇ×C7w‡n~ÝzñlèæÒÐס/'†+y/(Üzø+ôtTèÅKrZðz+t¸)xý¼Ž ½z$t¸"H>=ü¸ÂSK!áÅ9¥á)Ù%Y%kÂãl¶Â‚œ¬2ú Áâr› nȱe…g—æ†{UÇÐ7rÅq#ÿ"É Ö$ý8œqó§Ù 9Wƒ~'ùâîd7ã‹Ûlù0¥Ve]^¼Ä‹K†T!\^;¨÷0ÛJ`7_Å’;É+­7ïÌt•ªë¥^Ü‹Þe¥ÑÓ¬í´`¯o úÅ=lfn\¥¡ÃI÷¾XèeÁÕç2£·µBw½eF÷Eoë“ÞAßù×û²©—Å—÷»GW¡Í%ÒÅ=Ö¢R¼½´·Ei/vج¶ÿÔ^ÿþk˜¯¼é=ÓïÂéû.QŒ8Pc{À•íwqÔuMÒ}b ‹ÕðòÒ’pL€…å¹yá¥y0ÃóÂ3$ÃÃpÅÅP¿«¥ÿ|IÖQ}åfË÷_ w]n½`)ªÎ‡+T†SØ6À@–«JåN‘¼7ôÕ_ûç­ôšÓh:E¢,eÌ瓎®hK6!#Ã:/ÍÚ-£`RÞ‘‡‘¯}*¶+_€tüõÌïŸÏ}¿w~Ê€¹¤ìr[ANéšUÙÅ…d§ÞÔƒ†0 % 5I÷.442¨Ï¤¢o>„{‘5PºwÒPþ†4Zú¤1ó8ê!Ý»ÐPÂÔŽ›2ø·}”±&\´w©}˜Ô–(‹ìt%/½åGŸI÷>ø/‚„·£´€íIƒÚ+@¾+iÐ8EI4 ³ú¡¡cô5Y鮤Aõ™#×%«,ëŠuijéÞW]²KK»Køïßÿþû÷ß¿ÿþý÷ᅢô'jT;ͱ!ŽÕNQã³ÓáʱÏÙÄ„ÊM3ÝŽZŸb€ü¬+¢™àÜh°-Ý ÑNÍ&Ú‰¶†Ó¶„o`ÔŸ§€|=á§fïv¬Ä«<ž¸ížór§E4–ÖJôÙÔ¦h[¿´HS•§%*Æãqºk˜©IÝìÜð‘xàü%#_‚’SGýLÄCM'À×süóòÐA 4R»ñ IC}ÀÃÝÄCñè¬Ã½±ý›Íý.lÎÒdFQ߸`s?̲MM,À˜éº¿|!ê¤ÇC²ºäÏ(3²z°­¥ú‰v›8!Âîb~qM쌳)|ø¤áÙÇú†6 ùmFÏãNŒK*øKs=€>žÇÔâÙh»ÕY bâ»®r ™tn&XYÀ´a-¯c:38k´¦¸&ÏéTô½ñ)ðò)hšßÕ¹«<œ÷ŸA<»Ä'7댟x< gqae 9Ÿ›Öµœiž6j#¹œq÷OcêT}—2ZHŽ@߃rÚÄÍ‚Áù§¿'©Ä@ë„7I/X­ê d×1S{MªþbE Ö´"k¾ }¥]ú èù¢òBÑ‚i;Ó‰ó?ÓQ¼Õ¬‰">¬!#„§:e ulKÒEO¿¿½Ù.n/¿>gß¼Ùîx4ÇÎe «¯èeLm´£ïÇâÙÞJ¬\½¼;ÔZ*;pɇڨ¨ï@g¼Öà¾c)z”!Ùã9dªô°¶÷L´=ò.ÇÍûcÑŠ C›¬Ä¸Ð@–ÙòÊDÐ5ItE‰®Þúx¼ë;µ=§ ]縃Ó>çb”xo*êB|ÏcѽŒxÏä¼øŒâû,âµã,NÈ-dD#ª|ì$âjœ…·-h>#¡ºè7WЧÍåçis @ïFnbjÒ¹ÛgCC-Žyç§ë6×nü„ 4~­4¦†-||Ü7Zç=ÞîÞ2:uΕ,—á/—±²³ ã´]‚Ñ"²ëuŽ©¨³ˆw2Ô%ÊŒ0.Ã8±&‚v¹Yuô½YçöokÙò\»Í}´­¥.±Ý†r""±’6ÆaÞ¾cÖhÙ¨·À‡ø2ž[…|g׶¥助íFø`ïê\Oo¯vÈL•ãóYb§®$}LºRL„0ûØEèajƒH Æà‡Ñvç Éö~ãH”;ŠY-ê’=­§þ^ãtÛHÎRÂ"ÝÓº<›(o%ÖÝ4†oäzçõ9KÐÑÌ@zB4«tFÌeª‹-ŽÄîæº‰æ%èxg ebl“ŒÝ¢Byž=è#ÚÏhœè:çsæú—hÞ×PŸ¼8uñ-ù¸:“ú éËÝ‚:3Ùs±ò(ñou1n;ˆw·“í@6†d;œ×;ϨvÆü ®ÃÓÕî,vÌ5—Åc:^5edÕ“L_ý ©œÌXÝÄ1›h®ÅÔÍCeŽ*¿ê#6®.‹@žÒQ®¦um`ºŠ¼b'ùw½ÎŽ'° åtœÌ‚ï™Êš›O"ùvÄ&éê&²Sq¤WM|þÑ">—dϹsô©©4w“ óSg…¥.™“ D±aj·‘]„yúaâ++Ìã©ÈÔZ:ç{Œ7ÕK|¾§òkc1ǽæñD§{Ú¡§ŽW"DWx.Wf±SÆÃOêØ*Ï%”Õæ~]8:ý½}‘.ÜåñXÍ^ߺ^ç¬ùÈNã‘ÆžëqáÆI€wœP?ŠgçÛHG¾8ßÓ^Ýae&æn{ê4²gæÛÄ¥ižéíà´yÛ’ðÛûÁo톹ü‹¨×E~[$È3ÅÇn=YSà£Lá÷{S§Æd›´£Ok!‰c#‡`îû‡§Ýø¦çrt£Ü†r»§†Œ•Úôhü¢-Å_ ’ƒèÆèWøS½ø ?™ðo38üŸ1ð6ôA99ýã‹çd|5ð×ÉøSŸìíS/ævž‘úÖ8öiÅT\Ï.ýYã60Œ%Zbh%zûÐK+Ñ[/Í yœú&2Îï4o°ãÝ€ëâØ‘È¬Ñ›„Ñ›HGqÝ„8š—Á‚÷gâí»É§~Œu¥¦F›„ÂìúÔ%âõÍ;Íí6Œ×#°»˜ÓÌ,KÁÇ^ö´9—ÿÉîôMÒ9Ÿâ6ÍóÕv衉ìȲ6h£œ|d¯8ò »q<êU;Z·4Û2ÕÊ,SÙû ăãǘ¿.Ò‰+,|£ÉÖÕÍ?ë>Ó‰‡4ïèœ[éâ™âÓÓì•ñH{>Jg„ŽOM-3hìƒ Šà9Î5Žì£ýâ?`»Á0¾>ÆM6oÔIš³fè`£¨·d›ÞHºÜc ”lO x>Îm{t"µGV’Ç“µÒÓîŽXEiâI´árèÕLãQèÊ8átäÄ!§7g Gܯ³BèË|¤çºA¾ð1³vEœ N]a2 ßiàÙ0Ô[§µÌIc×&ú-ãö?o‡¥*ô|Kùd¦7Ump™ÉîS½c5«Þ¡>wº´h‡±.· m£¾E_ªÜq# ÝÂðÓuÆ—sT–lŸM`Ïnu!ŽÚ€¯Ù[çBnæÎÐU_ß¡ªƒ—N»ªZSÄÄ=èù1”7|ajÕ™ »d#Ú§iÔ!Òç|™“¶×Óš%h˜„9}£ó¾ç éwŠÝcŽÌE:Ô»-ÑÏm®×…CÕd?ÍÿP71†©&ŠL=mŽ0Ø9+1OÀ u^¤ ô!;ŽY­r´dÝ‘ z­¸pŒ½.K¨ø™JW'hh^wŒšk¯(WéÄýìxÖ›Ÿ´GS{=´|i?® ™Ì4ŽOî³;ȱW$m±;C̺èë »N!ìF¸QZóRý¡XŸ'".˜ÆÛD0ú¸F~^'?»ägÑèÇŸi_FkfñÓ©º-Ï’ ÀþJ‚îú¡Îù(#;%À¹â=ØÊCÔt¯~ŽæÛ#»y3tb‡ G…„ƒ¶þvÁE«ùL;挋È[&÷E<ÒÒÐ |Î0ñ¸4ŒíÅô„ݸ'pÚdÓoW¢gÐü85Lc5ibhžEþxQ¥2¸a¿è7Ú€1»ßYËñO.塹‰øÀxÚ™¬ñÎçbºv·‚~.òÖ`üíèN߬âsøæe}ðœ‚<6§|Š2v¡ŒM}”]+lBž]ߣŒÂ§|Š2žGîÞËëFžç^†°‹ð)Ÿ¢Œ=(£¾2ŒÀ­Gž=ߣŒx§~ǽžïƒÅ J{ ú¸ú] b¼)ìià¥êQŽYC2CeI}ÎÎxËAÜEžIàÓ 7‚þÞÎú0E}X~%¥Ç {^VFø”OÑfûPNsomÆÇ†ŠÉcƒQ6#ÿ¾–ÇóûuäÏ÷æ§r©|äM 9íó1Ö&Ò]b¢ÖBÏ ÍÓºÅc, GPNš<×™i¢;KÃúë§6QdXøø:­Åùp ³À:qòF»c¬`ˆkô©Ãõt€ñ<*îÞÖ«Ž–uï.y¼ïŸ›åçFù™úȇô8âê½ëÜ1_2wŸ:Úuœö[d­>ÝEG¯˜z%½ã?ÑÑh³]½éhÄïèCG7÷¡£ûÐÑ }èèúÞttsF`osF7ݨÐÑç»éh·BG[»éh+äé|/:ú´¬£Ï÷¡£-²Ž¶H:šån7½c(¿ý)"/òëþ½q£zžòÊ:(_ÖA…ÝtPaO¤R¿°w$X;u`íÌ#§<Þñ‰rl mëI›ë^[´Ó´ÓyH÷Ø´Ë@»¬Ú)À+ëƒöríåŠ<ã(‚¶´í½èå À³÷¡—/(ôòEžý”GAc@{¡Ms‹Øß™ ¾3y2)‚¶ ´]½Ð6ÏÕí\í\ožnº;ß;^ ‹.æú•d¹›Ž=ßîµvÓ½VY÷îèÔ½—4·]’îõ­–uï•:¦îÕB÷ª*6<ù}ìãC²Î= ?ï—Ÿ÷ÉÏ{eûxêþ¼B÷j® {O}ÝÛ<Èöñ¡>tï>tïþ>tï¾>ìã½}ØÇ{úѽ ÝûW÷’ì’þE?Xþ<É é]Z?ϺßpÛÅ~éлßô¡wõ²ÞÕ+ôî7Ýôn ônÄônd6å?л)²ÞÇçÌnzwfzwf:æ¢BÇ\ì¦wg*ô€´}è]cz D¡Bºé]£‚v hÇô¡wcú ª ÚMïÆ(h›@ÛÔ‡Þ5õA;PA;°›Þ5)hǃv|z7¾Úã´ÇuÓ»ñ Ú  Ð‡ÞMèƒötíéýè]È­ÐMï~ÓM¿~ÓÞµtÓ»–^ôné\”u$ªãoó‰ÒÂF…þ*eQ7áy ‡¼WÆ Z²ƒA›Î]"WÂN2³€:ÄÓÞÊÑÄ5úº"¿d>Éž/]¯ ÇÀ[í™Ó9™ϨKèãçÂ_¸@ï…˜}B˜/­-?´/ã(gërm”ÿ•N¼f†Î1«ÅàP¥í¶2M”ܰÛ1‹œL&°©‰i¦Åv:·5>v:DÜ8ç­‰âML#šÆð4¢]ñ»_Ø+~û ~Nè\o!¿Ëz”Î Î_&éDõ2×=šÎ3<ãaôýSÐucµql¢ÁQ.ÆU2¥Þ'ÓZNû«ŽYiQԕ·´?ÅÏ`=Û ŽYœÎ: ¤4Àû]#šô\7z xˆOsÞoägeè/iÿL ~æÎÐÉk?[Õš‚ö=´ùà¥ÓuæË… L8Ž6>$‰°ˆÉ¡½œFðsCGù‡ºŽ³ÃYßï\Ï1Ìhq,ØÓõìð[ùìð âì°\qv8«—óÉ+”úrhŒ–èuÀOØc1ú¡ýØ øÈø.dž´§™à¬¥½HÝ#ªC s:ÞÏK¤¾MZ µcªÑ"Nµˆë'Ùy› OÅÁ_Ø òó«ivç®s‹ìâ<䛀|“ìT®’>Ñk'Ù©^Æ¡›y9ŽÉɼ,´»Î( ’Q÷•.Ò,ù_¸7¶¦ð=s3â¨]ÂT:÷ÁÖ”-µ­)$›îs—NSÿ¹ŸAxëraêrá–gptÔï4ãš>{õ8Bm×èP™ÅZ\Ò7NõnÜ1ŽÔè_¬«Ô¦íŸa<²Ó‘Ǹ‰3t5×··Ñø‡î¡=Ù/ØÏ†p? y¯™ïÅ?ÕlÂ| ”$íSsÿ‘k!·æ—!/ªwDÿDCe0SC×䦆©Þ¡½VÇ4|o¨ßXX¦Z߇̣\q)Æë#*ø~’Κ¤z‡Î0ceß c³2=Æûð½×Ø´ÝÔ~¢)IW£’ø…~ ¡s;NÏœ¤« þ*…ì8î;SðŒÁ­ú*Å{Fëúä«ç#Údzƒö·#³çýe:ã0:²LåüÜ«ÒÑ>6íåFBWvòãiû÷øù"…d³“Ÿ/Rh Óyškþà‡ïIï0õxäý}øœŽ–ΡxºÔ'_&°-÷ˆ×ž¡sÙE4N¨ÅkÏxß› ÜöRô‹”>ŠÎqZ +,¼Ö§ ôZ\Ë!ã%!^_ô#˜YøÞ¹†Ÿ­e:ôó#œ.Ò_ž ƳÐQ*'ügI\¿ˆç¢í|ìÂÞ&?Œß…Ž0A˜#s~x;e¦Ž…œN¤yÐ1ßÇ@þ"t¶*úÍ€ #!>ÑÇ@çCtŽ ~‡åb‹Äƒ|VðYÛ¼ ²Ì«|ÚèÜœÎ=h¾¤r ÃÉžOC0fŽ„¯Ð' }ŒÊ¡se×ì„«€i]µ4çú'♇ڒ¹æ³x·/ $è݇á>fÐGIMçþ!©’úg\x­Çƒqv¬n ÄsJbÒÙp?›<¼kHçrýÔíL—Îï¹€ râÿU}M§Oãu Éžö#´Ö ¿ŸŸ—²×&z‰û¦É~œç,Æ!R{‰¥ãíâÉ›íQh,䛩˜OCD?½!2cGÒó«¿É .åcY]—ÍÛ¢Å8Ž Q•Ìõ¸6“Ú»âÇ*]…U¥£þÄXi76Óü¡± \“;N› ºeÖ¨ïsÓìâ'û âÎgÈWkùßÍáùóZùÒGþ[dœÎFñ©*šïé*Os÷ÙôûºÅùÍ_žC4.9t6Ñ÷qÌ/Q:÷—.H2|€E¿é¡sÑšðí‚t‰~)슊e[ìÑí΀7ì¤Cœ¿¤öWÙŒ™Cÿ˜À~: òwÚå`êê‰Ú\#øpúÚnlaBôß` gis­ä×hà~Î’ÎÁXO|É@th¼Ç5µEp}ª4„åô\9W•V9IµÜZ3?–ø¯Ìa)•“0šæÇŠ~·ïvÍųŒÃýa’Èñ\t#¾ñuˆ‡ž ;âˆÞCùˆj„µf],¥9’|ì„÷ŸÒNe¾±úDÈ[ÍÁX*CdÚˆ’>Ѧ2®m««mäýÀ}ðLl2饞X1ÞN>xXǫşN²×Ollµ ¼Ä“ý…5 H²Á×ÔM,¼ºæª2]>ª\” 9Ñ^„íëFÆ•—Ëå–ËK4¤²‚Å»‚/éÈW4/Ó¹ÓÙtÓv¡†ûÂ',¶×¥«–#HíPzÇ¢˜ÜéxB;¤Ëí 1‘_×EÐH©C<åźEj‡$6e›1çJí€4ÖN„÷Ñ^v5h»ÒU¶‰S9ý|‰~í÷E}ë_7߇>Ñõ–Áy†qºÔb ëÂ;÷mb¦6+åߩ٭^¹>û嶺é*öCÜU¤}ûU¤=ù*Ò^|5Ûĵ]•Iôo|mï^F²§u‚—Þ<ÚY ÙÌ 3óûÒárß)ó¾6«`úê×XhŽ«ÞÎBÌê<øµÝ[Ú¯ ÜÿRÅÒäùQ»5XHãûa±tî$­YŒÐ}”—Öä;Ìý1oºUª2çF=÷Ɇ}yž¯O²$_ ²ë²Xš¼F T¬Q´Xg¦‰æÄÝ2ýohœÂV&_U“EgAM2Akm&¿6f˜iæ{ Ò¥âÚݵqLÓGëRM¾±µ*!Íé2Ñz+€öü@ÿ_Ï6ÁÖnÑÄDNÆšõ.ØJ¦u÷è¹_4ß›#¿é=ÃÐ^é*‘ïóàN6ÅqŸêt•]Ž·“îç>±ILº:£Ÿ§]ô;N¨‡]ð<ñC¼×Ndgö{ö­qÄ?ÓnR1ak0_ÛٵģçÖÀiÄ×Vy°Æ“µ|Q\îcàûæ¯t•Á*;µ ïÀ’Ÿ;«ý‚\·ÂŽº-@]2»ÕmÁbûÿ^ê†8JëQ·$^¿^ëFåXk±Ž}ZzOJlô18¾ÒÑ^HÝkª2W"çÕZÙŽu(hFmd*7âh-˜ ¨ÀÏH²™¥=°¯t1ÀiPm qnh&»±…öOÂkØ:'$ú(óL%è†?Èõ´Ö˜éÿR«|JŽû­cÇJ{T&çuzøƒª¥€ÉvÔ‡?¨þ9`5Õ!üA¿ ²¬æïÚ£²Ù#ä¶"­_ÉYfÎæ ã òm´ôN ßWFÙÎÌ1-ÂB²%í¨ìüݵ¹'‰—æbdïš^ë*Ï.ßoÈþwnH ›;@^/Ÿq>FÏ&gM/#ê*à!6ÃÞdB=íåˆ,Ô"¿¯Ãׂ´¯CmåR¡|“ÅBí^Þu’íÊ×®æëuÄ'{ûÙL?¡ÎZÚ·cZgmÿÍ)Ù6I¿­Øç8-nÐ[È_ÜxNÚ›§w½âšÚ/Ĥ3aŽ>úQÃæ…ò`3-Ï ;JïA°¨ØÝäë9^Žq¼`×ë,EÞJQ¼ãhªêñÔ,PùÔNQ­½«ýríA¨ê3ÄÊ\AV³+(5ÌÄß4/Fϵ»}=Üó=ßÔMö\ä{‡™–ÞÛ‹\…1æ’>ÖáÈ÷ÙéÜ”Ï}>£›IŽ|>ê»Éù ù¤2MÅÕNã˜Î>’Þ‹ÔÄt¾ù O"n3⦉qÔ䨩k±îÖ$ˆ{Hn¢÷7)MüÙZ˜ºÖðxS=®fêæ™oó!¦±šõ³›w°a͹, 5L?›ä$U£ŸmýT?›Æ%µCó•Nüô+Ý”Y}´¡ú‰£î9gÕUGë­‡‘?žpùm¨,8êŽA]­OégW&­¯N8Ú þJgÍÑÏ®=ê®Ö­ŸMèUð¡£+?Ó‰ì]]õÓ {×ÑzGÒ‡ºê@ò±æûÒßÑUOFþùGIubÎWºjߣõàÿâ_dŸéªŸ:Ú“^W"ÿýGÝŽ¤wuT—ê<àíÀ8@݈Võ$Ц:NµømªgõÜ£ ToêÇi nT_Nô© ¨Þ¨ëõÔ6Õ„zaÀÓHôˆµSuâQ7êHmCõ«Þ%µ ¯[ •‰±†vqåm@Q{9V¢Ž €w˜ð@w á¡l´Ú¥m¡§ºrz;¥öáôÖËôh|¯Þ!,Õôæyë z7Hôx]ó€·ƒ…P}9=êÏ0™^•DêKmúNæ²@ô¥~çôÂdþ¨¾h Ô7t€õ:ÀúN`} ¬oÄë;c€õ9ÀúÎ`}¬oÔë3Àúư¾¦Ö×<Àúư¾óXß„Ö7i€õM`}o`}-¬ï¢Ö×Jõ­VAgJunPÔÙí­3ôúª¯+‘ô¯s½·ÎŠúº©®•¡ÐÁ¡r]¡Ÿ\Ç–Iz ô¡»ŸÜ;›ô9é÷¡Dü$½Cõs£îõTwÚD/§z“Þw}"éI¢CuæzÜ—ê’Äõ8Ú9}é«À{S¢‡º¹¹OâõžYç|xj–¹´xOÊzzü'¯*õx”ÎÙˆú~̲©]MGÝ.ÇÑúŸ4R]$>éŒÚõ>æ$šãÐÆÕûQ_‘Újª®z9µãïtÞ¹Ú™ÏOP|0÷A£ö%âtbŽAûÊmëvÕ˜'PŸŸ¡¹Jš+g ÿTëðv¡ÈNGÿüð³Ì¤`µ§kñò™®r •)åáýjGR’.5{]¬U³.öÅ,v÷•¼ÇŠR×Åî‰c…/ ¬ìʼnŒÞɵ4'ÁF¸Y:Û!†êÅíÐà-!d»‹É/jüÚÛ©¿DÿWhßR&ðwôȆ¦µ‰³fl=ϾÈR&À6³ò÷Æè}Ýn‹èÉ'K¼Vò¿¢}+Z—ˆIcìÞuž˜^¥ÛjöuÁ>ÑNHTdƒ$0_—Â69OñŽYk ޱkuŽ©¨ÿ†„dkT¼˜IvpîÍôÒzÒhwMCõ©Ì–Óq<”©ûÉïÛO~M?ù‡õ“? Ÿü#úɯí'ÿè~ò÷×~×ô“\?ù¯ï'`?ùƒúɯï'p?ùCúÉ?¹Ÿü¡ýäŸÚOþéýä7ô“?¢Ÿü3úÉ?³Ÿü³ûÉoì'T?ùcúÉÛO~S?ùÍýäï'ÿü~ò'ô“?©Ÿü)ý俵Ÿü–~ò/ê'¿µŸüKúÉŸÖOþeýä_ÞOþô~ògvÏïJ|1SúvòkX6í‡ð³Ñ$¤'!=INÇö;›ã=ítŽÙ£œ`”Ã÷¾^ÌtnÚÃŒëh¿Çs"J‹yîaò¼ :U`“ZSqÿ“ä‹0Šl˜uLˆ†!V\¯3®CY9[BÄíÁºdÏßÿ×ÙÔ@ûMÇ¢nbBx£sp-í)ùžÓ—Öð-l¨téÿr+žîž¿H~~Ï7кžÏ§Ùjym ØÃ¼”òí/EƱÕH‹©Íiw `ù¬Qòò³ìoÛMþƒô~-ͧ[³ØjÚoØм˜Ç¸ø™~´´×j¯Qy<ÎF&%"_“ìƒ8ÁÇ;o·„7²Q2¯ûXÑšð&¾wFϯ⹠ð>µ&æQÐ~êœÚƒ|ó*xÒNmf\·%$ú>Üs¶FP»%{N¿ïÜÆ÷eŒ?º£sß)º™é©ÞÑ.Tn™d›Í[BLÑ»ï’ìñب¾´ÇI{©ÁXëö²´olfÞýf¯_…VÆ8Žl‡„ײ‘Ô^hŸ}´ÿMíêŠCÞ¡ÚݲßX¼¼÷Þøožáhç7ôIìGüì˜ö({ž'$ü'ûûD“??ÀFR?£NFÚƒä{àCvËíÐb}B?›öy»~ÈÒè7óþŸ­ëz©®´Oõ ¿ÏOq8à‡83ÑcP–OE&ûaÏ~†±QÔ7 =²‚õ }è‡n¾ÿß­j|SÞ‘ýzŽýmÅËyJêçýÒ÷oh<‰›Jß¿©§}\#ä̸’Ö±š ›?@¹ñ‚ í9žÚ“ΟÀÇioÒ‡ŸA‘œSãA^nüÔ¶AôýZ õÚ¶ó³š|cåö=‚ü…?`¹>R¹äó© ²”ew”‹¶ù!û•ƘԷü“ö©i.q¥«ÊœMä“tM|t»ÉYÕÂ÷¬£«<žšÑ¾.ç–Ž9ãµ–?‹Ö€K›±^l¡5àØ‹â„–Ž5`Í"_×Òš/¯¢z­aB°ZhTVmÙ1ü!Ì)¤ÿ_KÒQ?‹+C â'l÷0Nõޤ(¸n­NÊ,\ž2%ÿÂmV3••|æP–˜jøÁÊë½,õ –å;ˆei±¬aƒXVÀ –5bËÒbY£±,Ý –uÍ –5n˺~Ë IJ‚±,ý –<ˆe… bY“±¬ÐA,kê –5}Ë2 bYƒXÖŒA,kæ –5{Ë2bYQƒXVÌ –;ˆe™±,ó –?ˆeÍIJ±¬¤A,+e˺u˲ bY‹±,ë –µdËJIJ– bY˱¬ôA,+sËÊî(ëàU(ë@gY ½ƒöS›‡2æ¥Gû¨ô®¥5Q:õúõÒ¾jÍÁ-!®g¶Fü0<ÍÐÑy)ýžŠè+óÖÜÉ›³©…ü‰r£÷3ΣÑÙëÙ}N÷)ù; þ¿I`‹üÂÊÏ©L LµîßÜOïëªk¯â;>%W‘ö¼«HÛxi[®"m·k»*·ïwªõž‹Ô]”‡2¦‹ªÛw£Ü—\˜IeÕ!ÞÝY?[éx§s¢ Òw!aÊïB¼òãDÿfCeS{¿ á°U꽿ÝÐõw<Þ÷Fò$*'1uu5cáµl}¿Ó0¡Õ† C‡ˆ GAE˜Ž0Áˆƒ`BˆGH@HA° XÒ–#d"ä"ä#ºîlÕW;Zu‘ažo«šZÇU9Z§Õ²Púý"×û(çuf©¼³5´Ž¾·éh©zµuzå«­•ï·Î¬z¿ÕHï`¹PV5Ê­ºŒr¶4-•—QvËÌê;[­ÕsZÓª¨ü×Y.èå‚^>èVÍiͪ;[mqMÓ軌|>Œfa¦è§5pD?éw³Ð;èg’S©ö2¦D8ÁØuŒùÎDø˜±¡õŒiÒóÓ"al˜‹14¥ÿy¨ä¾œ±豑ÀÑŠŒB¾QHcaL§AÝk‘>ù¯s3v}&cA1Œý(€±wÃÆ&Û›~¦g,´†±0à‡]dlêžH=¹QC¾ôá¹ÏGˆ+ˆ“¹ìêE¦‹°2ߨp3›¶OÝytU¦ã2Œ©¥³ú©Í•Sé<F®dš?ú&ŒÉPWAyÇØÝ åJ’¾‹âƲË\‰L-ý¾/—¹’¥wdܸót?¦‘Îú=…À |hX@²Ç³üúßeà7 '¿a™ß€ò›oÚ¶¼~MƒÌïðnüNïÁ¯Ú7Öïùƒ{; ™VÅ4qM¡;zòZsùÎíÆ·µ&ˆ…‚§ãà1Dö!±¹YHŒ‹ùÐwG\"›ž¹n¸‰¿+àc«&žÄèB0Xþm’ŠK&[ß,®NŠëFðü”Ï›‡ãX€g•ʘ²7¼šû%EÈeù>ÑÊ\w½‹çC9޼ȗBøÈG>B#(×B·®K`úC]ÛwJè`Ê…tÖ=ù8ø9@¾ã€ßÜS.&ÛYžµä÷vÓö.ôä÷†ƒÌï¨ò;üšzáW;ÈüŽ ¿‹MÛCÜ=ù Éd~Ç \&µôäwÒžÁä—l>nW¤Iï(³é¨ƒ®79ÍsÑ•†4ð’A|Q]$¾ÒzÖ%øãÁÔÑà{ìÄ÷ôAæûš†ï‰eƒÌ÷µ? ßúýƒÌ÷8ßäß*óÍß¹&¾1frÞÙÐö† ¦í…gÍUä9¿Ïiàùº¾ÛšÍì½­ÙÌž|ÿÈ2Èm}ýÃwPà ó=¾ß3¯È·ßú¶ÉÎLS#ÙSAê®üO8uù_Þÿ²9QV·7ÍÂI¤ £ïÁÆ5M(”}Ý¡ŽÝÆw®òtÎUCÛåo%lêÙ'Ôƒ9W‰w|¥ãïàNsVƒjx!í“…oc#MMž™Þßkk (ôþF›˜ž¤ó~ APHßëžèÔ€†lÏŸ¢ßÃEüИð=Ú¥¾g»Œ??˜í²4›¾KðG–êU6©çmbT´Nú]6'‚¾áPWOíSƒ—I¿îܦ%ÿÿ¨RÌ»ÐwÎ-x¾¼G’-VÈß+«‘ß+£oþ7Êï•v¾W¸E­¡o@6Sè7?‡ŸË¤wìÄ¿ÍЉ¯ëŒy/ï?Úh|êƒcÉž——ÐïH—Jï†/[ªþÕ^P6ÿj Ñ ü“ Š¦o13¾ÎbæK¿-b4?—É¿-}óÇåý–4ê]†v ‰1Iß­¤9ÀÄÔ™æõÍh_“w^u„:õÿ½‡41}‘4Ç&1µ[ÅLfÓØFÐ9/£ï÷z< þôý2þÛªÂkF²º¡AûèwÝ#5ž ¦ícíàÙÊÛ¾ réi‹ÎÄEï`,šQûéö×ü-h¿"þ&Ч½súÞmà|µÆûN$ç¥b´.jÚ‹…QÉ‹\y´±2ì_m´§N¿1Šîà¿mRÇò!‹!^Yt>šFåKsµETšE4ðÚy$CâuZcÏñ£cƒ9„?ÊtqMcv-¥÷7U5þ»®Ml_ô2þ¤ú²[–†ib:ô—vh{ÅuÉüwÜ»ÖeÌÌÁ´[ Ÿ…t¦‘À|ùo›W¼Ã ·wß¶iÓ·j}I.£Z<úíX:t ÷§2Æÿ®äèfú½túöwÅwËt©™šúvâÈÔrúþÒ4ß©ttfJg1x¶b|Z#_Àܲ>m4z¹xËW:ÈÔŒsÐ~wd*2e–dÊ{|%™â²ô{þ­öÉÿ¹<ºšû?}ÈÓ¨´>äiÊ&OÚ«¹ÿÓ§<‰ìˆešK€üh]^¹"y25]>P$Ò^~Ôwè“Ø$úf,«IÁ¿oX›=\L-Þ¯F9&ñZ•Î;ýnBø#Ð;K™°”¾Å,}ÿÌ®ø\!¥yº&Fþ>Z„±ów¨C`Ó¤97@Ž<ïJ°DÓ·Ì¿£o…Œ1È¿ýÝÓ™~›"Íéâx‡€—Ò‰7Ê ÿ¾ðÚNÓû¹Î*Ž×9¶@-éM¶Ó·´]íAbjð…רmøo¤„EéÄ%QܯêYóÌ1Òâcq깪5I¦R“}c;d)ó¦$§&¬±ÆUÆXR;±K—òwÑR_/¥ß«È ¤«¨ßIWAn$]µtÕð=? ® ýÏuÕð«¹þïCW<߇® ûÏtU€qPuúCôWê*ÿÉž‹mày&ç§Ñÿ€³ê῾K߃¥5ÿ- ØX2N#áà^Ï¿) }ëñc²ÅPô'²‚©I¹ƒÔñîtu}£ò»UêÿW:Á•®ŽÇ\ =s‡ôù¸)Þ!QÏŸË:èÐRlÙÎŒ“¼?ô±w_‘וaMð‡ £=Fg£Ödjôk0nWÇ;«?²'°‘oc+Á£»ë‘ ”\Èš)uÊÅŠÔÉš˜Ô°k×Òï†ð¹jÇ4»8̸۱Âl 2¥ý÷jþÝPŒ?#ôaè“|Ž~gñþ–R8Z|Fkç…l>7ô¬ñ)T$ÅTì}ÎîÜö‘½âÏ¿°ç7C&i-O<36ÓÊþZ!šUvÈlGµû¾©T'Í!ªÕËK+ø§·nD×[?#÷»kýxÝ®P¯6ô´WVi<ñßô•m‹Jš°Î[šo2Ðq[ ©aWèûÊu<ý†8, r1mw»Æª$wêxú"êg¢Q“δd ñ9o*3Hg~à3ì`,Æ—}ëºbßÖR; ÝO¿3D¿é@}@õ&Zuj¯7ú$Uó½o,Õ tc\O0:Î8ÏãÉ7ñóÅŽvw„©ì„ûÿtv—ÊK¡ò¨¢Ï_xÄ·5ñ`¬s(ñ.õoÆ÷Ôž½–˜¶ûæöœÏ|uý~§ ßy¦íCööäwȺAæwúùÅX¢îɯúÄ ó{ãùµ˜¶«­½ð2Èüȯ۴ݧŸ(Ÿ«yþÛƒ_Ùo€ø¿Â9ðò>Î{ñESíä³€ˆ†o¡mù¾éâ;~ùžÑo#ç{¥ç"l•å´ö€ž'[O-ñ°<"5Ì[‡doöt­êtõêÖ­ ÆÌ‘'°àûqw‡QÚߥ}ËK¸ëp¿LkbiÎò´m¾³Õ¶ÅѪÛÜÔ:n³£5öŠÝw¶êiØý~kCl~µuzÝ«­uï·ÎÜL>ÄsZCi¿`Ë„VÓæË­ñuw¶ÆÐ¾WÝåÖ”:Gk‚K`™[îlµn™Óš¶Yòa¦ß¥ÎÝLÐÍß<§5´si?´ Á |Òo5ä;ûµ=’¼`LáÄú`dê0ßXò$š¯é‡±‘‘ÙÌëyÔ÷3“ó0ýÙHO%­uŒ°a0‚ð±fáѺš|öÈ®–ò\8d¤ßÿíö[€äëýÚžÓäë-VŒ_CþÞäç]?Ñã·M²‹/Ãö;}³=®J¾ŽÖ=ªÜýâšT3Ã}ÑÏ ªéáëY+žCL2M´‹Ñ>u¸ôÛÙZò“Ž — ù"*õŸo4KƒL…ôí%W…äC阞lÏ\÷×=ä;‰uÅeqÍø5qUÂÚ[ÞòWƼ~›[®cZÙ&¸«¸$œ\rùÿ´÷.ðQU×þø™™BÈÂ;Á’'˜<É›„ ½~Ô…¶B©>õNÃ>i«ØïÙ¸ÞI~RäOΪÞ,y8ÃéÛ# <d<¢?^’¿¥ºqÐ&Aµî¤\—ï"üùœÖúJ—M’ëG0Gµ†q–+;ã¥Ð]ÝÚÖ]Úú]{¤˜˜·ð»'H9;öHú]´øÕǘEìÂ<ܽ„«~>ø¿d|‚dÀ/¿|üŠ ©‹ø¶+bµÚjÔg{–_¡~–/•Óó„¾ -=ë—ç7`:+J| pŠÔjÖéºÄ÷à wj9ì×Aï¼ Å Y|XûåÑ· ˆßJK{9t%]’4Žßy蟦­î_³ç²©Ù)¤—zÒGu‰sµä/¢ïSU‹gå[%­øÎ1æÜž©<Ö·J:â#}¼[Ù§“2û§I¡=¹ŠÕ^¢û¾ ܧ‹ûPu>Ò3ûká—€{òEžHç6N£´\*×g-gΙ„¶K]•·>qVÏ àú3ä2ÐÝ_‹r·Èå¬e¬c¡“¤çZ>ã÷;ޤm”Üôôÿ~!ƒ÷mzV’z÷'y¾»óÕ&›!ÃÙܯ’mçùã‡Ìç´¾}òÙŠŠlƒ÷†Hz!?ÕB~ŠIvžFßÕ²ó\¿åªvD|sùØ,è/é™Y[èÙ…ôø¬Í´çAzd°ž}À¹ž}ZO‘~²êªêÍ_vP_ãõ–ë4¦hGœùˆùè½ëô}ƒü½UŒ=}OT_ðOÙ?ü¼ðó¡øx×&)æþŸIáÈ@~)~Åø‰ïˆ nAwÏ´<1ož­6Úo™ÔEßçqØÈ‰AôÍñ=E­>Jþ¯äC娞žYy]f]9cÅrö“Ÿü¡yíSì&¿ô»–’ƒžY$ÝBçÀݹRM+å“ÍßÁ“iÞ‘¶1 \¡9 ¸hÞšŸ €ã±Q­•4ˆÓµ°s>hß’#x¥î÷j+ËKÚþá´>Ã1àÊdŒ3Õ³ EÒ,¸IÒ¤X$ñî;ôyŠoâÇß²æÃþÒ}ýaRÊ{õÛm¾þÒÖUä÷øTÃ{Êô²~“¿‹£e'|*¡ç&ûTç `Ÿ*€}ª ö©‚اÏ>Õxêú2ÞGdÁ_¢<\)Övû*¾Lí{×C¬“÷ÞAß•ö+OÛç·²¶õÈ7Ä\ u\³—ñû6`îÝ%¥¦îõ3Щñ©Éìýž"—â{>™üOŸž$–Í›!›ÁÅVÙ<³i•OiYÃç6mð).«ñJêûF 2OÌy´¬aÜm=5oEÑ·ˆÍï'vÙÖl¼Wtí\%Ö¢"À¯ñý†Ý♑X‡z/G^‡úFY‡"ÚèÜ@:«ph¤<óõÄ.…ÖoÊë/Ðù‰¼%½×E>ooÍÍY¢—Ç@KôËtû¦ltOuMw¨Šn…Ï7”5x%•­w› qbÀ£æÜ·”uHïÑ»ž½:¯·ÚÓ9UE§ô±ŠNB§Oùÿ{t~½Õä¿¡¾¤<Ë×uVze:G¶þ³Ñ)ÎÖ¤>¢Ñ[ÿæ,ò‰fs:­K©¥é´~:µ‹æ­ÇÑz?ñ.u¯÷ñÝlørf¯åƒé¹“é™Åô„ƒž‘©6z k’ÊrAShZd¥)çQsÑTúÑ$Ö„ÿ(¯ zÀ#ÿ¬¼ÊЊµÜ<Ë—/.8 ëÕ¤ýЫ?•4µÇÔ:uÄSNujð?‘NÍtÔ©#àŒð:u•£N½,ëÔ;I½ÞgkÃÞ›G&¸æÝ •½^n¯SÁ;jŸøGº•Æ[èÕ\y=¼|¤±§~)ºµDðúpoé›þ‹£¾ÙtŸÜ¿ÌoÓ¿²ôÏ7ô‡Ê}“ûðhY:ô=÷Iþ^sPLï9’C¿<”~I{¹_:¥_Ãù¿Ó¯ëÖ~)úåz9õûômû%žWåz%õ NêWé{ÃRz _„¤9O:º†ÆÂÚ·Þ;SSÅüÜ;ìžo« úX•B®J1>¥’'ëØØž‹ñ˜@¿–+>’îÕÕì#Ñ\®Âoæóíêùìù¡Óù<áŸh>¯tœÏžqiû< b>§8Îçsò|ÞFü÷ Úô¬O>ù64î=5Úüš²[žO±Ó¡ 7àϬtbÿÞ·óg±·ËÕþLõû+ÏiÑG!Ô/êßwÔ¯ ×ý¢ùlë—Né—îÍï¾_×Í®úe?ŸÏ½Aó w£èWªhó[ôK¶ïL³3û¾Íjß—w™?r´ïÚã¶qIGûÃRÊ=ŸB¶óïé‡x68ÜbAd›¬e›<™ž;b<Ð~Ï´Ql“¿.¥yCërbê*\÷ûTßõ¬äEq­Ïõ§™ŠùàÓ·ßsEJÚ4 õÒ¼”¹aØ”'$Þ‰q¿ùÒ5>ñ’¤5ØEë?©û¤» ÞòzOzª¦•×j|Ìÿ>‡p3ïÿ æýÆìøæ²»0÷½hîÿ©Kì?Yd±È: 'ª§QKÏÐÓTmhr$M¨cy*×ûÀ¨.±×èƒÄ.uùÞÍt^¸†ö+Pûñb¬t¡wS8x¯É,­H ³ÇKÏK1¯¢è;Þ¥ϧôþ †ôÇVQ~¿¥±ejê>MÀEJ7O¾îùä{9û¼®h®C¿¿¹*—‘.XË m}¹oÎ8)÷ —{˜Êˆ>¥¢?[$J»‡ž= ùÙ,i{¥¨x­äQ6íù”²ÃRP¶h„¼HýS¥ñæ¿ 2{KÅ;´Š^sqŸä¨w‚ÿ÷?+¾·*í¤5Žýb~%í¿!3†]Y´· yéííßR–×éà ñ,MÌýdÄÎ}“!3¹_Êúµ/@^‡`›¸¯tú*Ÿróész—j'ìÒ«‘^áGÏ-è{õ¬ÿéù²Wê–«ItþJžåé1Ñ›$T±îê³õÔõn”×véùÅþó§í¿L{XiÝAô·Úòµ¼!I´¦él=ó¹)–÷ÅúS¼&uÏK«ùéY]æ·æt™/%võxdкÔKÑò^ãÑ÷‹ëS³~ Ö©ŽˆïÐî•ƕ֫$Nû¼¥Þi¯t¡¾Füêð«Ï³\ÑкWêFŒE°œ¿Ë(¥î:(ïJ“謓Ò<Ë_<ÍÕ´Ž.ÎI zS —öx¾Y ¾ó™Àg{@y‰Ç-_í NóS”™LòuåÒi=f©X“!Ú­c±iZwÁFZ·é¼Ûlšò®ZÇGuÆÌÚcAk2‰©’”Ø'û´&^{Qt•}MÙmþ·Wï]èêaõ¤ÍðŠ›Oþ ì—<ŒèoÀ|Õ?J{Q¶˜ôß»ö>ˆ÷&±?ÀÏ–ý~eõ¶7˜qƒ)öé÷qû=·ý¾KÈÒ^ÝÞ¾ý£ÍbÜÃU²Lû@fõI–´}:zn`éûtâ;à´ŸzÛºî{V*ßñ,øø¬”_ñŽÉÚj}°Fü¯½¯Ò6¢-}‚ÖEÿ†ö ª¶ JÛÚ¯­mCÎÀ'íÇ€µ©û¿¹‡û­¥±&yÇ\,Æ}­9½[è½­ÇÆúÌ8c#Qw=¾ö}Hå«¡û Ñwý j«K½†¥ôWlºÚ³A?(Ô¶†¯µ®áGÝ÷ŠT.Ï]muÏð™"ŽC»™ÔžáІ~@„/йj¡1&•iƒ ‹yþǃ„Oeiïå“ý£ý0ÔOæáßùò›¯íŸC~ó±ý˜hBíÇD¤ø²¯®ñù ÿ~| ãUãÓ'ÖŽþÐ%Ê®ãu–ä«çö·»HÆ@Φg1>ûDÙ$E>­}¼tžðë1èYújghm–âèÝäÒÍç6г^{èÍñ”Gk7y–Û¾M^y–¯^Uó#uÿWGHçÒ3XÒÿæ‰Ò™R?éwš»ðkò¡Óªé3ëšù ËçÊš¹¦TY?ÖäP;½Û„_í!I°Ù’4QÛDkÑÅ搜§9˜žE•“~ÆõAÚçGß„Iý‰Lkøy–/OS,!?gÔ}ºz‡cúî Ù%Ø€WùÞcâ!³ånŒ/µ#ÖF(ŸíèÃ\o§J/ìUû•^ ÷¾vä÷´€WÏHNíê|V*å:§ÈgÞ`>(uç¨ê.WÕMçøå ny™D{”ò ©ÂÖfÒ³G’_ŠKp£8WÚ[Q ™ÊíîµÀZ.8¤AÚYzN`Î-Û%ðì†m4bÏŒ®žéyd§ßd;}†íôKäcÃ÷9ŽëÐðÛë#l¯ŽAÏÇ¥ÑÛèù¸t=7—&»¶ã:ÙŽ·Zí8äW;Ø–_ïÇØê`Ï»Ä3ÌMlWœÛsvû×ÝÚmŸƒ–ÏT6úÆIœG~Ï´c’Dzcáq9ÒšÝ}µÔVsuR/ú|CmK¸¹gb«gu¶:÷OušŸ™ÕÕ—Iû¥ðhÙÛAg×õ×ÿ3€ö'’¼hŽô”¼:´ZzÞ–ß? eF ô‘¿Ÿ§ Úô<æ™üü*BÞ ²ú¹M/'ýs¾iïCu‰÷ù6·¾š#Õïd¼—ï áÑ·âOçÁè9ÿç÷‹ü“ŸRþUú–ê( úv]´|m®›ÔE4ªž1¡q1Ô¶†/‹ð¨>ëÞ Æé#|´‘Åm„`l+6ÕÊϾÉ鞀š&‰ý—B?k-_o˜í!ð5=!·YÃô7lqÀ{Æ00cð¶3ËC¥ÞÃ@Ùà™¯’ñæ:à}mÈ_LÉŒ7—ñ|íñÖ7 Ô¼OòÏx¾2^ý%¼$ÃÀ‚A÷Ïx‰ñŽ9à­4 d}¼“ŒÇó¿~·žÙ0P ¼}ŒÇú¿¾Éo¯a qr]'ã51^–Æoê}À+`<Öõ!x¿›ˆŽ0Æ ‘ñÖ\³Çkó2 Œ\—ñª¯1Þi¼ÃÀ„g€÷:ãf¼¼rÃ@UÉ?ã 0^Æ%âð¶0Ïÿ5ex c_^%ã•1^¤ÞK†°»7—ñxþ¯ñtÀûÐ00ú,ð|õÿêóöxí—زšK2^ÕyÆ{Âãâû1ðŽ1ÞŒ·Ýãâ ¿¢f7ãmg<“^ŸaÀ úº¦‰üzGa‡öïäYÞ-Ûªß÷Œ…þû,Òƒ²l„øËõ²ü¯öm‡út¶ï¦–r>ëÓEWU±þ7£þoú™Õ®ºÌé'PW¥Ø+ˆ<ù½˜ê&Æ9É8ûPvª,ÏÓàjÌ·]Žât–Sð)ºxóßT†ôÅðh˜dž¨ Ú"ûHŽkFTî9£åcõºù§²_°Šùo‚ý¯JSõ‹é¯»xÛ ¿ày«_PÉú¿öÕ‰eÇ„=•Fõø°¸÷ìï>IC>¥\o%ÏÿºÝнX{6ÏòWÖK•û8¿õÅR][µÒèV­¤‡ýÌdœnÆY ø´ÒçJ#§Ç¾F~ˆÕë­ù0JÞ»+ðØþ×Áþ›o·Žm%ëÿÚ/”ñ®dýW{ ðEÃdñ> í~Gé䀄ÄÖ¾)¾ÿ»íjÉÇ(ÊåWòü¯@ùƒÂßI ˆêo€ÝIv_C¾Q ãdÜnàvÚáæ 6@ñ‘V²ý«-Púº’é¯%úç–k­ý4¯Ê‰êÛH¶¿ê¼¹FÆßôÅð+™ÿµà¥†Î`溘ÿ5W„1@¶Ó˜Ö7‰|d)•|dZ×Ë‘V0ÿkNZçgÒ¡ÍŸÓ]{¼m4œZ =RÉúkó¿f7ÕKò×»á"Ëü ¦¿ô¯|B¡kÛÿ#Ò+EüL2?Y‘ù§!ß7.ó+˜ÿ5àÿÊE~V0ÿ_ÞíZæ—Áx¯ï´{™_Îþñ "óõò,Ÿær>ûÿÆ~Ô—ì\æ—³ý7Âÿ]~Néór¶Æ,”Õ¸–ùålÿŒðÿWUd~9óß詌÷ò rZõ'€¯8—ùú÷™_5Ó^æ+ÎqùÇPþðÐ2_Áú¯úoyÿÐ2_ÑϸJ_+˜þjп<͹̯¼¬’ùT”aþWƒÿË}™¯`þW}¡Èüª‚Á2_Îü¯zm°Ì×ÃϪ/6œª‡M\Îñ_9ó¿ê ,ó+â™/gú«@Å …®rÖÿUÐÿ ß^æË™ÿUàE…"?åÌÿ*ÌÿòÁñŸMæËÙþ¯BüW~νÌ/{ñ+2oú8ÏrµŒóÙþ¯ÚŽúrËü2ŽV5¾¤ôyëÿUÐÿå¾®e~ÙbÆ›‰1?©Èü2æÿª@e¼—…Éi•×á\æMW™_1×^æ—²ÿ[y å-óK2îNànZæ—²ÿSiRúº”é¯ýË œË|Å5•Ì#[Êü¯ÿ—MPd~)ó¿ÒS‘ùƒe~)óåùÁ2¿> )ÎpÊÿnûïeÌÿ•‡e™/ÏRd¾Œé_ ú—žVè*cý¿úiç·—ù2æÿJð©I‘Ÿ2æÿJÌÿ²Ã®e¾,PÆ[qð%÷2_z‘ñ*2_óyžåŠ‘óOpþÔWæ\æKÙÿYÿ§ô¥Ï¥¬ÿW@ÿ—Mp-ó¥ÿ­˜‹1M‘ùRæÿŠe¼Kc9mêôt.ó5_+2_žf/ó%¼þµüeÔurh™/aÿw9üßÒ=CË| ¯ÿ,W­ÿ”0ýËAi…s™_¦QÉ<îK˜ÿËÁÿÒ0EæK˜ÿË™/7 –ùæÅåÁ2_ÞŽ7œªA¬RzH®w ó¿â¨,óe‹™_ÂôW€þ’s ]KXÿW@ÿ—ô{™_Âü¯ÿKÖ)ò³„ù_ù¿ä¨k™_Âñoù5ÀŸ¸—ùÅìÿ•«Öª=ò,â¸g1û¿åð—ËüböÊáÿ,¾®ôy1ëÿrèÿ%a®e~qã¥aÌÏ+2¿˜ù_>SïÅÉœ6u:—ùj/EæË ìe¾øº\~Ùë¨ëµ¡e¾ø5Æ=Ü¡e¾˜ãÿe=J_‹™þe ±É¹Ì—úªdÞ€2ÌÿeàÿâXEæ‹™ÿËB™/[7Xæ‹™ÿK¯ –ùj½a ÊÃpªq÷b^¿*bþ/=)Ëü’JE拘þ¥ ¿ø’BWëÿ¥ÐÿÅÛ¿½Ì1ÿ—‚ÿÅ=Šü1ÿ—bþt-óE3Oøº{™/dÿ¯ì5Eæ+ò,ìæ|öËàÿ59—ùBöÊàÿPú\Èú¿ ú¿(ÖµÌrüWV€1¿¬È|!ó¿l®2Þ…¹œ6u†8—ùÊ Eæ—TØË|!¯ÿ–^|~h™/àõŸÒ'€ûØÐ2_ðãnSúZÀô—‚þÂuÎe~ñ•Ì'¡ ó¿ü/LVd¾€ù_:S‘ù%=ƒe¾€ù_ª,ó•†/NU¢ß…'äzó™ÿ%¯É2_Ô È|>Ó_ú >QèÊgý_ý_°çÛË|>ó¿ü/ئÈO>ó¿ó?ÿ5×2ŸÏë_%¾(?½Ìç³ÿ·ä¼"ó˃ó,ïs\ŸÇþïø¿ùÝÎe>ýŸ%ðòÇ(}Îcý¿ú??ÙµÌçqü·¤c~M‘ù<æÿ’4e¼óxýsI$êœé\æ——*2_d²—ù<^ÿX|ðå¡e~¯ÿ->ÜcCËü"^ÿX¼[éë"¦1èÏëq.ó…aöë6‹˜ÿ‹Áÿ¼\Eæ1ÿÏUd¾hÛ`™_Äü_ì;Xæ— åu†SË7äæz™ÿÅçe™ÏïTd>—é/ý‹®+tå²þ/†þ_4ðíe>—ù_ þ/Ú­ÈO.ó¿ó?÷¼k™ÏMc¼ (?ƽÌç²ÿWtY‘ùeáy–‹×ç°ÿ[ÿ7w‹s™Ïaÿ§þOî¥Ï9¬ÿ‹ ÿss]Ë|ÇE&ÌS"ó9Ìÿ"Õú_¯ÿţιÎe~Yµ"óùëìe>‡×? ¿|mh™_ÈÏ? O÷å¡e~!¯Túºé/ý9ÛœË|^¬ýºÍBæ!øŸS¦ÈüBæaš"óù»ËüBæá„Á2¿,Ó0P–c8µ,uŸãz™ÿ—e™ÏíWd>›é/ úG(te³þ/€þ_øØ·—ùlæø¿ð "?ÙÌÿÌÿìË®e>»€ñÂP~Š{™Ïfÿ/ÿš"ó¥qy–w9®Ïbÿ7þoöNç2ŸÅþO>üŸìH¥ÏY¬ÿó¡ÿ³Ë\Ë|Çùë0O}™Ïbþç«Öÿ²xý/? u¦9—ùÒFEæs{ìe>‹×?ò=Q^3´ÌgñóŸ¼s€_Zæ3yý#ï°Ò×L¦?ôgív.ó9Éöë6™Ìÿ<ð?˨È|&ó?¯@‘ù܃ƒe>“ùŸ6XæK‹ K" §JãP7?¿Ëdþ/º&Ë|övEæ3™þEDÿ…® Öÿ‹ ÿ3}{™Ï`þ/ÿ3+ò“Áü_„ùŸq͵ÌgT0^,ÊGº—ù öÿi™_œšgy›ãú ösáÿfìs.óéìÿäÂÿɈWúœÎú?ú?ÃèZæÓ9þËíÁ< È|:ó?Wµþ—Î빋Qgs™_Ü¥È|ö6{™OçõÜ@”÷ZæÓùùWÎ%À‡–ù4^ÿÈ9ªô5éÏýéË|V®ýºMó?üOoRd>ùŸS¡È|öáÁ2ŸÆüω,ó‹WŠ‚ §Þ¤Âõ2ÿs4²ÌgìQd>é_HôOQèJeý¿ú?íå–yÇ}j6™Oeþ/ÿÓŽ*ò“Êü_ˆùŸ¦q-ó©&ÆK^¼{™Oeÿo¡¯"ó…ùy–79®Oeÿ7þoêe’1±¯k2íëºÊûº¼ 'îç–ÿlȪ›õïÿgïô9Èd@%S ˜þl•ü/`ùφü§ºXÿN¿&ð{$<˱uò>¨ô~.ÏòŸHåUõ²ÿ“ÿgÁ5q¡8ÿØòõŽJæ«ê¬ ¹\ 뿬jy3l.Ük(€~-„\¦nq)û­2ÂëßYÝh_µ¿ …Ÿf_w½G/…ý¿,ø æÒ>8µ ,;põ9zWƒëdþgÉüñSð?çñ<ËÌÿæ&øŸrȹÎKfÿ7þoJ–Òßd¶ÿ™°ÿ)Mv:ïyµÎKæø?sxF{Êò,Ϩâ¢d^ÿÊl ¹.ïóJçs¸’ÙþeÂÿIÉí[%yÑÞCêCip@BGªÐÖvxý#sŠ\Ç‚£½ç­ó;™í&ìŠ*~Lfú3@òe! 4¿ƒUó[}fг}­”}­æ}ÓÐnÛÿŒ=ý)’W§^Œ%ËPÏÿŒ¹)×gžæ˜T¿é]ÉG”™jWf—Éå2'§l*½»g¹6‹Þ1Ú'ÑÞÚ“b¨]ôíu> NÏÃ|Iñ¤ï°Øö%®²ß—¸NoIÓK¥›¾á}2qryý/ý¤Ø§Ë{Å^ÝÍÙïX÷é¢þÍ”oÛì¸×ÑPÝý4v‰¼þŸ^9xìÙÿOO“Ç!ù¨7ôôöIÓ—í½é›uSÅï°±}ݬÿÓ.qÝ•OÝNyc¨Í=0ˆrúðµ»Sæ{±Ü‡žÿi˜ÿ ÇT¶’òØÿMƒÿ›ÐOgê¤=«®oôŸåˆµÏ³úÄ>r¦-Ÿÿ¤óÿ€„9° ‡÷¤‹wéĹZñÆEìæ²ñlÿRO³ìyN’Te![H|š¥g¦d0Nͤïéx ²‰©ÒtÛže£åU+ÿ­6qGšäY¨F[L*Ñ¿OÑ3ñ,ÿ©¹€/¹¶ñ<ÿS§ |Ȳç¡uƒl£N±ñ¼ÿaÁ'ŠmÌAÜÿÚ9ßÀë ^îi²¤)¯t }¿[òèÝø0ôœ×?Þ€ù^½´_ÙÀúojýÓÀëŸ :‰>µ_—øüBí5ïÎAÙ¤'ا;ÃåØþ/€ý6u®+ûk`û·ö/Þ×wý5°ü§¨Öïç3ý) ßpÚÎþ–Yíob'á‹=Ê›þеñº—ø|Žd%Ïòåë}Сæõ“º`O¼R7JôÞÇËAÝLJ§ïöï´'~!╬— §"^‰ŸKe:RÅü ÷÷åÐ;I+;RõD+ïéÏñO âßùb æj(·Ë:l>û)š /þŠæã»[ì_~ÖV÷# õbßR’ñ™Rµä#A~ Ñ}’xÏs©¨×K|~½ØËÎódû¿É¢îƒÒJŒMÅø%4½µowQÙ~ÈÄÎJzŸèKZwñ"ýÇt¸ÖÉ•€:ÐAsÕ+A>÷чa©#O/Ÿ&—çç?É!€»Ã<ö’¾`}€ú·;ŒÃÕ<Ë7ŸÿZ%ñ 2jOè:“lg2¿Ï{Oï[ÐûZ‰HOè£z16(·i&äq¤@´™+ŠéÝ­Þ{è_~G`.ûÿIëÌ¿þmì›P_â/ò»V>† ñÞnªx+î•.þ^½7ä•„q«N÷Àü°òǧoƒš'sYþ“™NšóafÚB]°ïÖw6}¨ñS-¢«'1¾"-ôR?î÷IÀMªï!ñ™ob~ôÆ¿”#ÅqüŸx˜Æ‡ÚéClCt˜~ƒüø1ÔW³tÜEãxÿOb“ÒGC?õñG×é\ʧ»–þÍ+‰úJó+Ïò«î(ïÿ‘ö3Á­xwKO}•Ï“´¬ì‡ŒÉïª[Šs$í‹CåSº9èÍâ¾J)3¹ºÊ½‹Îú—Š‘—j\+YÌÒoƒÌ©£È÷I‚œi•w³´H~;DJ%ýOçeôL…È¥³Î¾9>“·üÞ¶xï›ÎÕ˜Š²#s…þbzç°ÿ“ÐÃôj1F±4FÛ±/7‡÷¿&”Évgî¦Õ 8÷m:6Ñ7zOg×ó⽞ü¾±.dÂnžÎáý?ñ×Y^ìåwâ·ˆyº^œ×.YûOúÀÞלÍëñOP=èï?ŸÍÏâ÷¡-ÕþßÙüü?~ Ú›bî´îÿÍüoRôîlŽã+PGYKnŸ”$eÄØÞÙµsŠ”O:z(ç¸6ý³—¦H9_O¡w3çóþöÙüü;^µ~3›õ_<æØì뢾×¢RÄgÖdïyeÐû‹¿>–Ùd}·dïÿåøÏ€øoöQ«­#»BïnVKSÉCÇÇòóÃnསô!–ùo@ü;»>Äa£Ç(þv¿Qòø üòzZûõäCüæY®çÐûjÓûŸ±ù',oªß…RâíXŽ ¾h/WáG,¯Í¿x§kŸ"†ýŸùˆÿc_váShŸ"†ù?ŸâS¤^ȳ¼œÅùLÿ|ÐÛmçSŒ³úOÁîǰüÏ/SÆ.†ýßùi(›lï3,>ýä3ÄõÛû 1ìÿÍržÂ˜ïÊgˆáç?óÎ>g‡;ÈgˆæøoÞcJ£™þyÿ˜=v>Ã2«Ï0GŽ¿0¿ÈöoJ–âH·ÿˆ%R?γ|zcìEûñ;´Â¶m•×{¢™þyiƒ}†”Ï I; §RûÄj¸/¬ÿçÁÿ‰nrn £9þ›{EðJØByü[˜úh9Mú‡ßEõé[)ÛBzÏ+‰ìD¥ ½“.6åB÷ndÝcVëž(~þ7·ŸÛó߬û]PÊq½”"ìLPÍÕ¾úô¾%ï:/λäs¤a{–Óws£xýkn,áSd{ÌGoFÞì}}Á¤·(zо/,ÿq×T}A}Ù;AïL-‹g»CïBõÑw_ȸˆgS7ˆ1Úk©Ï‘4G`OR©=~”¬¯²Ð5΄=I (6§/ÚQ)ÎŒðê_Is‡Äv÷(7¾§¦¼xç-€ƒm@$¯ÿÄ-–ßÓŠ¾Ìé¼þ:æ*s:’ýÿ¸)¤Ì·Zul$ËœêùM$Ó?ó?ò“–{¯£ŽMØ«èØXÞÁò?ç1åÝ‘–ÿ9ÿH±ÿ|¿Þ_DåY^¼"ô)d]~¿.–ãŒ^ÿ˜Ó€2&›Nï¨S#Xþç`þGªöEðþ‡93‘f{Wdœê]èGk<>¥Ò¸è]_³ô» ³ôß„› Ÿï€{:‹×gEÛ×”ñŸÅÏÿfDz²k:‹×¿fw¯Ó½NÅñßì\E§&Þ yäuÝYLÿlÐæZ§Îbû7[£ŒÝ,žÿ±W_¶×©ñÇi¯SofûûÊ=6´N½™ã¿ØmÀÝ2´N½™ýÿØJ¥73ý±ˆge9ש‘W\ëÔÄûò,Þâ\§ÞÌôÇ\¬Sã4 Ì6œŠî,~m&ÛÿØÿ›'8ש3yý+f¢SåñStjâÔÙýíuêLÞÿ©è±È´\§Îdû}~°N…~R§†³üGTúñÄ:U›g9ö ù4ÿÿéÔpö£®Ë:õf~ÿ.œãÿ¨K€/*szû?Q§Iÿ(:uË”êýLæø>÷:unŽ¢S#xé –ÿ¨JE§Î`ù‚ü‡gÙëÔçöØëÔö³f°ÿ5e]ëÔ,ÿ‘˜ÿáªý£ÓùùwäëÀyíL§´œu®S§óóHÚS=ÿŸÎëß‘€‡xþ?×?"ÃP~Šûµ¯élÿ"TÏÿç†çYžåçÿaLèŸþšNkÕ©G Ã8þ8 ¼Cvk_ëií+Œ÷DlWÆ6ŒõD7Ñg¯sã…Îý1éÜ™GYç¾ÊåØþEÀþMïOõÌs¥sØÿàÿô@;ÜA:7Œ÷̺¬ô1”éŸúÃ^³Ó¹K­:7¼[½öµ)„Ö¾æ½*¯}ýñœXß¹Õ¶¾s·¬oCÙÿŸÕ3X߯b·NÅÅ}Üæÿ,ð?ôs}ÊöoÖÌ ï?Íúvæ1{};ï,Ú¦o™¬[…^UÖµ|únUë±P~þó9®æÓ»µ¬eâl ¯=´–õáLÛÂkQÓøùßÍ;_qÞ÷iÿÞܤ؊™û¾ÏØ­E e+\ÙŠilÿoÖ(úyƳ”°©’”˜Ìöâ •½x[¶¨ç¾A6ãv²Syýwæ!;›ñÙ èa3va3¦2ý3›”>Mï§>íB[½“_èZ6žm†|¦‹”gùõ1á‡Ëg ŒïÄ÷1÷[ê¢"Ö½(ͪ“zV½ÔŸ,eÊzi‰ÐIÄ?Z×ÙU }Ek;#ÅÚN&ê+–Ç´Ê")ì ÆT¬ó¬uŽ7KÅŤ; Ï~Md ëÿp>ÿ!4žÓÙÿ ßFßÙQtÛ^ÿ _š}Íë­¶e ¯„«öÿLáçáY¨#mКÈmK´jMdz ×ÁüWùSXÿÏ€þŸrã'‰:߈²}á&怲.rt¦ýºH¿ÿ¯çõߨç ÍÞÌs´7zžÿ3ÿOQíŸÐ³þŸý?Åh³7cUö¶ãÆ÷èYÿÍ€þ›²Xs=Ûÿé×ïqmOnbý7úOÿšû}71ýÓ{ù~žå)^»‰×¿¦oA}ýî÷ÜÄëÓË€¿xè}7±þ›>SЗ1Ô>ƒ›˜þ0ÕþÕ›Xÿ‡]|Éù>ƒ©Û•}?¹.ó~ê¹üdžÿa‡¨¼RïdÖaÐ7m¿ñ}“YþÃ*ì÷DÅf•NE¾:CXrÔß߯HG€†êæàëây,úëìyìÐq^?ÿ } ý÷Ud(„ã¿PÄ“Ë\ËPÓ ú'oWËYú°ØÃ)„Ÿÿ‡zÐþ?ú>ã±ÿ?í<àsV<šÃ¥’GTÂqê¿t¦Tò·>ß+— fùŸ†ùr0Y›„{ãLؤUåQòzŽÕðó`ÖÓ ÿBšlm5ûÊ8lÿ§©ö¯óúÇ´x”›+žÃ[õà~ò¹ôiôÌ-ú~:Éó—aú§þUû§JD›ý| fû?õà×Õ¸/iãGêù4‰ý¿©ªý“8þ›ºåÅþG[ÿPOŸ8é¦dòÐGÄùžLë$~þ;Õˆr•ªv½÷qó*ø«Æ¥>ni×G^ÿ™ªZÿ™Äþï”k€?qÒGÈÄä=tú¿Ùã€\n"Ç¿SÿN:ªj×gp'²üOüOÚ®Æ}ÌS÷q"ëÿ)ªýOyýkÊb”/pÒGÈIÈ5òÐGô‘ççDÞÿd±8—ê~É3ñ€˜3<–Xþõÿ‰Mª¶ƒ÷sÛ}– O…+úù »~2ýú ª~²üë!ÿ5Nú _-Xœ¿’gùòŸ¥ç“(ûo¥8³*ë÷]† ¤ÿwŸF¼Nç|Ñþ‡ÄãbÎøÒù‚Ñ÷ÁÉg±˜«€N¯êZøfûÍ7H©ô]'i×É@çNÊ}Ïë7©ÎÿÏöï&Ø¿àOè¼± 'Õ¥œõÒ£œÍ5žíßM°²„ß0A*gBÚžµŽgúoò¤ïÀ‰³ÄŽ“¯8i7¥¶ëœäAx‰{hnŽçù?óünÞ6 ~»ŽÎ6“ëÇñÿä'€³ÎŠS* ¶^>O’}ÂqÿMÞŽ¾ª¯VÎD·žkÊx,ÿ“Uò?Žåòby¿æÄ ý“BúÇ1ý“g’OØRÓ'žÃ’¸#Mö kgTUR|ÂI|¾Ó8–ÿ+â\±áS³ßî#ü>Ä;y–‹>Å?rûçé™%Õ!|;qÎðXöC¢Þcò>2G>Œeÿ/¤GÈÔ–?0&úÒ¹÷™Àcþ‡€ÿãv’?¸kÓàu‡„ ’&1‘ˆ]ˆ³\Oµù‡i–U¶]|—Q¶ícYÿCÿ‹UÎùËö/öol·ë=ˆc˜ÿÁàÿØÇÔ{ÍÒÕbsˆ£8†ý¿à-®Ӟ¥qy–G#—`»^}v} ÛÿàJÔ;Áù~Ä1lÿ‚aÿƨöOŽáõÿà)Ô?»ýˆéêýˆcxÿä/ “»Ir:ïÿžt‘ÊÛÎ8”Pþ…XÊ«5Uœq8¾¯Ò¶$Ó>a¯™¿A¼þ?iŸØswPʵ˜#Û•õ¬ ^ÿ˜ÔMߟjùjÖ6É/mŸö*É}ÿÜ®yÑ<" JŒçⵇ^Çä£;’ö ®]øí`øCˆ@&~Ð>š‘æ%§kWòõˆ8ßn“ˆ/= ›g o=âŒ<%}ÒS‘.Þ“õ´Žö¬Táx'‡ô/±ºUĵÃ; ß9bí²OÊKݯgŸ;”)%ùFz¹Cz5Æÿ·YÑ^ÈAÿQ¯ŽëÍæzsé›Y4ƪò#Q¾åŸàòð#´Pþ5NâË—ÀÃ|ý£ÙŠº=¹î®»uÓyzU9”»Žr›QóOSlŸ'éwò š8Ô9’ë,ä:‹Pg¨C¾(çr¢Åè_ÛçY¾FÞã“Kt6¯*Ïyß ïE佌¼UãnŸ…ÐY;´çrŸ£ÜY²/È»Û!ïoÈC1¾y­¨Ó‡ëÌä:³è|‡:Qî ”û å’‘gpȳ6‡CŽŸâ £‘÷ò‚‘çÉkzŸ {ó6Ù›@¶ãH'Š55±îƒ¹R¦èü13wÜ.Îî¼[žGüüs|¬xOÀô6ëÒ Ö÷*¸~öÿÆÈ‘F™¨.ÏûÿÆ}Ò›ù{~Ï`Ìɾ‰Žkæ¼ÿyÜË„—#6îZ%y$¾k­'€ã¿qˆÿ/Ñ™þôýFoAÿÚÇv¬ÿÇaþî6b’ÕFXŠó,–pWç»*qYë¿q¿ÀNEÿ°þ‡ñ8æ:. `ý7ú/àÚq™‡—ùóþß±ªó¦Þ“gy¸É>.ógý7vêÞã>.óçõ¯±MÀop—ù³ÿ7þ_@Ú ¸ì‚«¸ÌŸ÷Œ…þ qcq™?û?càÿø¿î<.ócû7FõüÃíÿØÿ}ƒã²Q‡8桸ŒÛòcúÇ€~ÿ†¡ã2?^ÿýëŸì—ÙÇ<~¼þ3FµÿÇ׿Æ`Žø]w—pÌ}ê±U.çËòýãwrè¸Ì—ùþûí—ÙÅ<¾ìÿ©ÎñeûûïWá<. Ôp̃¸LÇï:ùòó 0”›2t\æËò?òï{mP\fóøðó¯Ñªó‹|xýcôQ”Ây\PÉ1‡}ÌãÃó4æ¿o÷б™û¿£ úc3»˜Ç‡é¦ê'ïˆò¾Îc3ÿ'ä˜çÊ1OŽU'ÒùÔrܳ9ppÜã?†t}L9bí‰Cjª5¶¡}ߌäõßQªýÏ#yÿï(ØŸ€@ß\zZßìSüû‘üüoT.h29oF2ý£Âìã¿'Ç7#™ÿàÿÈ'œÇ7Þ¼þø:pvºŽo¼9þ Düëó²ëøÆ›ýßÀ-Êx³ü®“ãß™ ý~É ýÞL`®ëøfÂKöñ?ŸêÍú/Ðwp|3±C‰oXlßø]ߌàø?àê=ï<¾Áó?`Ÿ}|ãiߌ`þ€ÿÞÙÅ7ªsM9¶Ñ¨b›ò¡Þ#¡÷oˆÙ˜ô ÆáÇߪ÷`&½Šôóè‡7ÚC{Hé,izŸA9~ÒYë; À‘ŸCíGßk']EÙƒ}û¥¹`Ìuÿ¸å{û~úÖßgâ~»A|Ó€ÒÉßEü+ÿ²MŒ›X\·u¯ül›ô»yß…GŽ¥g·‰ÇÄ·ó>–ûí_ÙÇ4¡øÁþ¾h#Èy~Ÿlb\û6üÎ)mø܆ßhÃ‹ÛØŠûCô=n¾Pè÷ýRßÇý6Üûðý;¸ï¦ïóýçÂ~í‡_(îC‚H¿÷ÑÞò=|=¿\ÜK|ŸûxÐD{~5˜—²Ìn ©'™e¸•qÍÀõe\/7¸÷A/2n€ÜÇ…~‡\Ðx¨ßkAú;.ßo¶ÅØÃxýÏþ÷pÕùµÃ8þóíFú×~Ú0Öÿ¾Ðÿà =ƒy~Z0ü4ùÜ{ö“†ñþß%Ξ”™gÙÏçrãç>ªçÃøù‡ÏeÀ—œ¿gT§¼gìmý>Ç#ryOö}àÿpôáìmš'Û?ŸA_†Ã³šµMódú}+}õä÷_| ‹wþ¬Æë"ùÿÑ{Å·°â£Õ¡¯ùx~W8ÈluÆp*se“ëÿ‘¯ úT¾ÖÖ6–iò`úGôÙûeV?–õ£Ó?²GÐçàï‘/ëàÇ>ÌåØÿ ÿ×3-¹Z/|KãZ»òf©Üê˲ó`ý?þ¯ç»öd6Ÿñxÿ·êù•ŽŸÿx¿†üÓvþ¬Í_þzËLØ.aK¾äsu,ÿÞ;©¼ª^–oÈ¿‡|þc†“çb7r–€m®éØþ{Ãÿó0*sMÇô{ƒ~Ý!×sMÇô@ü­»xcsMËû?G<¦ÌµqoæYî¯à|¦ÄN…v-óø¯ëv>×#”¹6ì û¹¦eùù×Å=×´ìÿô 9×´L¿—Šÿæ¿ø¯=í|®yvžk~þãµgð\ 0 ø…N|†>ñ8i8þ÷jô 9×4L¿W² oȹ¦aú½}7<×4ÿ Gü§yýÆçšÄñßpÄš}®çšÄò?¼[k‰×¿‡›PÖè|®y4 žk½ÆåYþ‡‡QyU½,ÿÃ!ÿš7:×hŽõÔkJ^ \¤o¹kÌøžmò:¤óü ­nòë†Îãã¦ü#nò_r“¿×M~ñÐù£ßqSÞËMù§Ü”÷pSþM7ùÇÝäW»ÉÏ:ÔûnÊ»‘Q_»ÉOý–åsÜä÷¹Ér“_ê&?tèüÀr7ù­nòÝð/ð¬›ü7ùnè p#_;ÜÔïf~¬t“ÕM¾ù H:ßÿc7ùnô‡¿›ù`pS>ßM~œ›|7òç·›|7òçïF?û¹áŸùôs#?~næ·Ÿ›ññs£_üÜȇŸýìû¡5_’$ ~øùâŽ_7’‘”…óŒ$M_'Ií¥’¦â:ÜîÏ%Ÿ™—¥Ðžg²šëô-«õ%m&c“4ø/»¡¹¡½^_”ç$Oä7v•--él"×ý_‰i]§©¹Ö¤Ïjkkiœ_ll36¹ÊÄ_©©¥­Û5B¦±Ã8Dq©À¸¦¡v„Ü¢¡JKRY³©«ÕTÛaªÓgeÎ/êìhíìЧw®^mjÓgw66Úçg´4¯nX3tCýUôI±Q1Qó"ôó"KL­‘³cbcЯvãS‚>¬=!!¬=<¬}¦¤J³¿Ï(ÊÌ é kìš)gÔÜVÕÐÜajk66V™¨cú°:oàË•IRyIÕÒ¬%%¹E…’dfGÅÄÍÎzS[{CK³TÓÒÒÑÞÑflÕ·M¨Nô7¿„ªKßRs NÏ%ôa‘­úºS»¾¹¥Cßd쨭GOåÿ(OŒUSk›©½Xb¼5!!ý¶†ÖÙ µ-ÍíÆæI Qµ.ðjnkl¨±vÏN³éV'ít6+¹ÎËe6´·*SÌUûu¦ÕÆ“«:²JJ—U Q¾¶±¥Ý4Dþjš«.ó;Z:ÀÏ†æªÆ–9³‡Äié쑆s9ÕT—ÞÝajw‰×ÙìˆéjlÕ#è §æ¶†fy]ã0FFK'I„k<ëh»Ê‡Hut¶».o?šîð”u…w£ã4xD½¾Ùdªk×ר:Åb£º"ôÝ-úzãzf&µ³òr[b¾Iß OIX‘ŽîV*æJ.$ɱŒQßf‚Þ#Ïy5²"´)³$#-?m‰º€+|U­úŽûF\•dÕE¶47ÂhJí„¡oº™ô{¹²áèšI¡+•×›‰€“Ò†þÖzS³ª½½³É”+ðÑ…v؉†Õ ¦:§e u&}m=j©=$ô¿³å¨™f{¥Ü® …dÕ1îë¶Ó:ÿ@ßì´Ú òV]yãõp‰A5ý=´Xë3­4ÍV÷ÅiKÒl5PßÊJÓ˲³«²Ëòóé>£¨0;w¡Ò^YaVyqVFiVf•ìòPY‹Ë² 3²Ôõ*íT¤-ÌÍÔza½±±¡N/«ª&cm[‹äzŒk[j×–4ÜfЉYK ·¶´­] f¶´9 7ü=›ÑÃ¥i•ô‘¤Ž¼%=þÚåôÖáÝP_ ‰DužòG¥½å<þki5ÂWužGæÂä¢<ÄX ÎúäI3›6Û9âAò<åÏ¸ÞØÐ(* kìôv–GUyPpí1Ë®œõBžÈrÌ«op‘gµf®òDAUæÔšvU‡‰¾.äf5k¡Á3°§+­¸2+úÞîí™,)+Èrš—Ÿ[[ªW•ƒ~kÂd‡³›,þ/èç%R Â'M€‘õÿ;~òŸÇ‰_ؘØì›1ýÜhõïŒ;¹víÄ; ~9ya±çt¯+OM}ùªôo¼1+ïã\ŸûëbOßñû¤ð6;–øvkΙSÿžµëÂä´%×U9üÈŠ³G&-½÷ÇÏ/YzWç-æ½Ôüæ¬ÞÚû}Z³< °;$5¨çÊŸµþôöÛ:V­>}ß´'/ì}ïËvÜþÃÝÕ;âïšq<é_>8ׯ¯–ÜQ÷Á¥gg­(ÿÍŸ²ÿòëCÕó~UßÓ8:ró¡?ÇÌyððØ?hYyvvÓŽ3Ÿ¶Î8dé7çÖååþû¼Iù/ümØWÿñ¸~êo;“wÿwB_ø_¿Ú÷Ó¯žz:ÛÒýÐ'SþúÙ%ËG>sú'÷œ‰Œ»£õÖ˜…MÇ“=ò&ÄŸ\úèŒÃ~1-cRp””|òæú¶Q?Ü÷ÆõuMòyèàM§Ÿ«¹ó£Ñžy}ÐËëLÏ˧Ûuï/†›—>ydݘ g·¿»v×ù·[–o¬ üà‰Õg¾Ò®úiösËW­ðZÒóZÉ;Õ« î©Í]y6sÂHßÔ7Çþæ‘S÷>\÷¶~`Æõ/~p¡ð¹ƒGòž®>üõ“Óî ûå{?þчgEÿ°qÞ}›¢Ò~ðgß¿î9Tùé¾úÔ̳Vï»çO·ß|áñ?¾ß)_ž7}Û•¿%¦|zdmâßÖ­¿ûËÙÅeß|ZðÞ©g®V=ßsåÃÿ“òJì+–7îxý©;6½Ö}Ü; Ç®¼ùÕå >þÜtúzEõßî«+:5ÿ6¯ÏÞðò][Úï<¼òÖ¼#yø.Í;p1ûŽy†ô…³þe¥tûå'V'—mL}qFeIXHâþ)ïLŸñSéjøª…ó&¤Ï~³øÚ‚û×G$._{¿nÌÓ‡Ÿ}e§÷½Wrü–^µø2è̱‚ »î¿'dÉÓ>‰^êwíÏyG??ÜTýucë¾7Kÿ»þ”lúèФgþR?läÎxúÉßðæÝ¾7ߪÛ×òâ´Ó·ïÌùÓÿêñrõG¿:–²}ÃQËŽ—æÉ€#=¿øù£ _=ð¯_}0æçOõgÝço¿^õ©Ÿþ­gÝ_ñð;³oÚ:{ìÄ»?y¸ÿHdÇ–u1/TÞ¹cOEÞö¨R¯_ü­øå'S øAÖ¢¢¯þ{¡ÏùY§ï½}cϔތê·IÙEëO¬ø¼þŽ‘×Ž]dôˆÙe:xÞå1Ë—®?¡õÁo6Åhšó“gîz}Ïkv¥yú^ËaŸ;ðØ/Öù{hö¬ÿzàÓyõÏ<¾ºé©ÎÛßzb^¥î±¿¥>.IÚµ¼Ç»Êï¢$é~†¬§.i—‘7׿áþà³€Oïî«pýi—ö߸×7pð äÁWѾˆ¢8m òrqý!~o!ïMüÐŽíkÆâwejó;Àÿœ‡q½€û9HG„®y ×Y¸?„+\R-Êj¯=*—ÓÆâº ×îWøMÂï=à÷#}Ò‹ä~iɵø1~ƶþÜŽ´G€C}\'ׯ݄k~ÿ ¸JÞë®{×ÿþ;¸‚N ð¤Gÿ@¦Kºé…ëo€_ø×Hÿ÷Çë¶×)ø=ø^ünAÆBRóÒá*ia÷´ÔgàIhKz0ÆK[€Ÿ¸ÁýMÈ;(ï¿×=‹ë܃>Íü6ò˜”ãê‡û €KqÝœ_ö|+® OÞé0Þš äÕ –‚ˆ/ÿy€‰erºÕÈÿóðmÀ U3\íü•Û•À;Íë¸ÂÍÔiez%ôSÓ‰ßtÜC¦t´nùø=|ÓÏúð#9$»uýé ñ£þ¾B!®·p_E:x©¯t#ø]’[÷€Óñƒè– º üžÁýjžóÔ?3®Yöޱüí“i—îü$ð«?u -ê–Ð_ø¦;Ârô1Òâd¾kI@þ¤'åùHtiHÃð£¹ÙÑXp…Ìé¢ÊsDÌ’û§߇+dG» yëä¶4à½c"½ø1ÀY²¬j|“\CH«eýB¸¤7„,’^‚¼i?Gúüvá‡qÖÜ)ë -ÆC÷K\Q‡–Þu!¹‡ÞÐl•ËÐ<²žé~';‡ÚTüd^iH>i~ým~Šû§d~êHÏ<8 ¿>YoŠ~d¹¥vµ/ƼÐ@5'‚{¤éÆ!c£{L®W3SÖUø®3Èò«¥r{Y-Åu•Ì/©p¢ü,@KË—gYOA§i074¹,?U ¥CF4Ÿà—€ºI¿­ç¹Iò7ÏÏ\yŽëP—–äukÞ•ËkbYOj¹Mès]2Ò O:ê/ô³ºSÂ8iÖñ\#~üYÖ˺DYëÈèq½_ž«èS ýÑÑøãžt ä_  =Åõc\u pOóÒWÈ‚†d%L¶Äoínyîè`ãtÿ…ûÉ6D·MÖ/ZØ8‰Æ-õ­šõéôÉÜßã7?àI O Ù×QŸ6ãú–,Wé¥f®éš\çãJróKYû¶EnGèDèMÉ0õÿvÎ#¹¨c])Q_H1/¤#r_…Ã|Ö@?H$ﳑ¶—ùOúê]¹¼t8ßàg’罎Æm¹Ì+äT Ùýþïû¿ÿÅšÔ úÿçk0_õ| åk8_#øÃ×8¾øšÄ×T¾fò5‡¯ù|-æk)_Ëùº’¯Õ|­ãk=_ùÚÊ×¾vñÕÌ×>¾næëV¾ÞÍ×|½‡¯÷ñu/_ðõA¾>Ì×Gøz„¯óõ)¾>Ã×ã|}‘¯/ñõU¾žáëY¾¾É×wøz¯ïóõC¾~Ì׫|ýŒ¯Ÿóõkq•Fœª³1Ù{¢ ž¾ÚÎzÐÝÄý(z’.Dß½·„Ú`I*p½è}XM¡FeüÑhÓ{W¨ ¶âß´WÁ'ØûédV4³§ë4Ö>ØõíaüKîÛz¥­9àÓHÿPlmK*WÚ’aÆÇ8œjƒ­øäO[ñeXÆŸ y™jƒ­øõ ¾ ;ïÿȼJéÿÈgô^¶ We_UÁo*e}æ»/ë“®‚ ¸¬Y¡+rãó‹Pl·Õ¸¨ðÁGŸgBm°mÜ6«Æm³‚Ÿˆùæór¨ ¶â'|vÑÿwTðeî¯R'æ—on¨ ¶Öù±R¿ ;¯ß·B¹þJý?ƒ|ú2½?۫ԯݪÔ/Ã2þCÈö=jƒmãÓ¨ŸFÿçUß?„Ú`ÛøŸQÿÿájàÿ5ÔÛð¿Vá­à‚žôó µÁ6üT~ª 4ú‡Ú`wýùWÐâjƒmøÁ*ü`>ÆÊ/#Ô[ñTã Ÿß@ÆüÊBm°m<}Tãé£àC­J~ëBm°­?*|Iد?ÔÛð½Tø^*|ØA¿…Ú`›xFÁ—aÿ8ÆÊïg¡6ØÖÿ—TýIÁöÅïW¡6؆¯Wá Ø¹<ûVÁ¯³<ß©Ôÿô¶L¨“á³þYi/UÑ^ª”}ããÏsíEõX]Pá_PácÞù¯µÁ6üp~¸‚ãéßjƒmö%HÁ—aÿ4Êúo µÁ¶¹ù™‚/Ã2þÈ¡ÿ“¡6Øþï¡÷ü/†Ú`wøox@vG†Ú`wøoÂÄ…Ú`wøoc –†Ú`wøï‚Bm°;ü‹ð1…Ú`wøïCn~jƒÝáÿó"àËPìÿOÐçSBm° ßC…ï¡à ÿ!03ÔÛæÎ; ¾ Ëø†¾ ¼%ÔÛðUþŒFåÏü>Y ë‚møŸ«ð?Wð?Ox[¨ÿtð\óZ©”•a¹ì—zà µÁV|OÕÜôTÍM üÛÀwCm°|øh µÁVüaÅ ¾ Ëø#á÷’ý%»á…Æók”¬çìÆîh|Aû¨¢PlÅ®âÝp…wš1ðFɺB†w(c;ÊÉ8{ªô³§¢Ÿ5!o£dÿGÀ¶võªvõ þTèŸQ/…Ú`7þ€&6tÔÙPlÅשìN±wšpØšQò°+üÑ“Ùg†=k:­ph ½Š]´“xŒŸ€ÅóÌ(†É¾¤1,Ö`eXøu+eXø0-~Š=íõSlå?Åô³Ùé1?ÅF¼à§Ì¯ßú)sç÷~Šlü—Ÿ2žù)±À'~6¥oüÄhˆ¸%ÀÏF¯fœ¿¨“â Ít&?V3ßßfC5‹ýmþƒ¦Éßf‹5=2L~—f‡ “§yP†É?Ñ<)Ãä i^‘aò»4‡âÌOe˜ü[í0ÑÏ4þ±r:ù¥ZîÅ&Úx†whKd˜b í-Ü­Ñß&דEõlñ·é@íÃþ6YÒþ‡¿M·h¹d×t“ým6B—ío›S:“¿ÍÖè~ào³Sº#þ6§{ËßfO=†ûÛæ»G¸¿M&=òýmzÆCO¡C®Àâø8ZK–ägl $±>CŠD“Ž_†$Ÿ-F›o²ñ[(‰#¦Å³ŠEøåá—/+Ez^DÏY5´vFÏ––àW‚­¡•IâY=ß gNZ§µnzMkjôÌn~ôܺZÏú螦–L‹d[#׬ÁÖÚð£5ýµ¤[%±¶¯iÁÖÝÖáGÏÚ%±Î/žk6öIòC9îK-÷7™é_ÍýXÃí¯â¾Õs5ÜÿuÜŸ ¦%é­àö—ðX¹ÖöÕýLä¾YÇ0“Ç=ÇÄ:ž‹yì*Uô–0Ò˜Ù̯»r«"½TUÕT_UÓÙ\×hªª7ëh³fwc]U{GgMUMCs]Cód4¶"£ªJd­îl®­jliYÛÙ*U­666Ök×–´´uHU5íÅe¹ÍsfKUƺºªVcC[UGK•Øô'UÕ™V;;ªjn[Ýf2©ïQMK­TUo=±îŠ–ªš:ÄÛ%mè‰TURUÛÖb\[ÕÕ^ÕI{À¨Ž%¦Õ|©j”ªr›:xïy•jzUCs-êkꮺ^ƒhj_#ZÕd¬­·’^ÕÑf¬EéËgË]–É·íTñ²¶†kþmôHi ý›aë¯cN¦©Ö!Ï×zŸÕ\ç˜D-ZÓW¤¤¨Š*‰ê 5Kù] ‘bÅI—Ù"’ÚjçÌ.¥{ò}C{õ5iíí kš3ZêL¶¤ m‡‰Ú¬3‰²¶œãZ¡æ›š×tÔs2ÄÉÔéhÉ–ïÛ ;›U^Re¥¸ªj‰ñÖª*Þê\eÝ×?ŠŠÅ®±”MáC 9îÅÕîÅ„!ðè%“!²ù½„!0ìßLp‹h{5aÌÁ/8Cv;þ72ú<öò6ô!¬ûÇ@‘_‡Aõ>K¬&Üö’K Wœ½A®Ý(Ï\qŒÞÈrŠŒ,Ǿ¤ªbS[cÕÂŽú¶ªµ¦îªÖkR.ÕÛÐH:^ØÙVÛÒêÒj¬S§4ÛÖb„j×R¢:þ`;*2Éx ]v"­ÆØnœÚdt‚Ún_ïz ¤Æ!­ÛÔ®Né„ ¬­7Õ®5®W%×ÂÖT56´wXïÉ ¨áªæð¿ÃÔeŨk¹²`lk3vsÊê–¶&ט:ªÚ×óMÓºWnÚm7—’¥ ëÕw­w«5ŒŒò®² ¸Hi7®6µw·Ë¦TÒÄÖTN÷¦­åVkÂúªÙ ë«Ä>nURL±Q•Ð:§u}Mw‡II Ëß²zµ’#Ú°Þ¡­¥IIµo„8¶%×ÛLÃZ«ª£g1ù¶Ùþ¶Õþ¶Â>©SuÛÙº¦ f^•бÚ@Ìmv–ÎØvc°¾¶©Õ ¶ ¤a5D¢Š¹¶~-¢†Fû”5Æ6Øg™MVÖ4™šD]¸6µ¬7 @K+jíXšŸ™ž;Û€{ÌZ8'$VüÊJ·vvÐ0h—¢ËÚ!Ñ-µíÑù 5mƶîè´ÖÖÆ†Zc½'VÒÙÚŠñŽŽªm56G×t64ÖE[5G$G¤Ð‘âÏÈ¢œî¼æùÑ’ð~ÚQ,ªö»¨_©¾Åчtð½„ÛVOªÉØüÝôÅZyËÿˆ£?ªƒ¾›¾ÚjoäµµÁuþ[VªoQ;oVÃô‘k­½Å‰nl öjö»é›ªþ–A.³pG¾£©#ªnq+8‰¹\FÎBGÝE”áO8 OœÇ@è install_wrapper.sh << EOF #!/bin/bash VERSION=`perl scripts/extract_version.pl` function usage { echo "This program does..." echo "usage: \$0 [-s] [-t]" echo "" echo " -s : SERVER address (in the format: 'http://example.com/ocsreports')" echo " -t : TAG (defaut: DEFAULT)" echo "" echo " example: \$0 -s http://inventory.example.com/ocsreports -t NEWYORK" echo "" } SERVER="ocsinventory" TAG="DEFAULT" LOGFILE="/var/log/ocsng.log" TMPDIR="/tmp" while getopts ":s:t:hl:d:T:" Option do case \$Option in s) SERVER=\$OPTARG;; t) TAG=\$OPTARG;; l) LOGFILE=\$OPTARG;; T) TMPDIR=\$OPTARG;; h) usage; exit; esac done dir=\`dirname \$0\`; if [ x\$dir = "x." ] then dir=\`pwd\` fi base=\`basename \$0\`; (cd \$TMPDIR; uudecode -p \$dir/\$base|tar xzfv -) cd \$TMPDIR/$DEPLOYMENT_DIR; echo "logfile=\$LOGFILE" >> ocsinventory-agent.cfg echo "server=\$SERVER" >> ocsinventory-agent.cfg echo "tag=\$TAG" >> ocsinventory-agent.cfg sh scripts/installer.sh exit 0; EOF # end of generated script for installer_wrapper.sh echo "Appending $PKG_NAME.tar.gz to the install_wrapper.sh" uuencode $PKG_NAME.tar.gz $PKG_NAME.tar.gz >> install_wrapper.sh echo "Cleaning up..." rm -R -f $DEPLOYMENT_DIR rm $PKG_NAME.tar.gz echo "Done, you may now use the installer_wrapper.sh to deploy the agent" Ocsinventory-Unix-Agent-2.0.5/tools/macosx/scripts/extract_version.pl010064400017500001750000000002231173606111100254710ustar00guiguiguigui#!/bin/perl -w my $FILE="./ocsinventory-agent"; open(F,$FILE); while(){ next unless $_ =~ /^our \$VERSION = '(.*)';$/; print $1; } close(F); Ocsinventory-Unix-Agent-2.0.5/tools/macosx/scripts/deployment.sh010064400017500001750000000011111173606111100244260ustar00guiguiguigui#!/bin/bash FILE=$1 TMPDIR=/tmp/ocsng if [ ! -e $FILE ]; then echo "File: $FILE doesn't exist, exiting" exit 1; fi if [ `whoami` != 'root' ]; then echo 'You must be root [or sudo] to run this...' exit 1; fi echo "Deploying file: $FILE" mkdir $TMPDIR tar -zxvf $FILE -C $TMPDIR/ cd $TMPDIR sudo sh installer-darwin.sh cd ../ rm -R -f $TMPDIR PID=`ps ax -e | grep OCSNG | grep -v grep | awk '{print $1}'` if [ "$PID" != "" ]; then echo "Service launched under Pid: $PID" echo "Done" exit 0 else echo "Service failed to launch but was installed, check your logs" fi Ocsinventory-Unix-Agent-2.0.5/tools/macosx/launchfiles004075500017500001750000000000001173606116100224575ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/tools/macosx/launchfiles/org.ocsng.agent.plist010064400017500001750000000006651173606111100266060ustar00guiguiguigui Label org.ocsng.agent ProgramArguments /Applications/OCSNG.app/Contents/MacOS/OCSNG RunAtLoad StartInterval 18000 Ocsinventory-Unix-Agent-2.0.5/tools/macosx/ver010064400017500001750000000000111173606111100207400ustar00guiguiguigui2.0beta1 Ocsinventory-Unix-Agent-2.0.5/tools/macosx/patches004075500017500001750000000000001173606116100216115ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/tools/macosx/patches/ocsinventory-agent-darwin.patch010064400017500001750000000006341173606111100300240ustar00guiguiguigui--- ../unified_unix_agent/ocsinventory-agent 2011-05-08 19:23:10.000000000 +0200 +++ ocsinventory-agent 2011-07-29 00:15:15.000000000 +0200 @@ -18,6 +18,18 @@ #USA. # +BEGIN { + use File::Basename; + use Cwd qw(abs_path); + + my $scriptname = basename(__FILE__); + my $path = abs_path($0); + $path =~ s/$scriptname//g; + + unshift(@INC,$path."/lib/"); +} + + use strict; use warnings; Ocsinventory-Unix-Agent-2.0.5/tools/macosx/OCSNG.pmproj010064400017500001750000000040061173606111100223330ustar00guiguiguiguibplist00Ô X$versionT$topY$archiverX$objects† ÑTroot€_NSKeyedArchiver¯> %+158MTW[_cgkorœžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´¹º¾·¿ÀÄÅÍÎÏÐÑÒÙÚÛÜÝáU$nullÜ  "# Tdesc_fileFilterPatternsV$class^documentFormat_locatorDefinitionsTinfoYresources_requirementsPlist_requirementsVolumeCheckScriptYbuildPath\pathMappings_requirementsInstallCheckScript€1€7€= €€€€€€6€€Ó&'()*WNS.keysZNS.objects€  Ò,-./X$classesZ$classname¢/0\NSDictionaryXNSObjectÓ&'234€  Ò,-67£7/0_NSMutableDictionaryÛ9:;<=>?@ABCDEFDGIJKLWscalingZconclusionZbackgroundYalignmentVextrasUmodelWlicense_localizedMimeResourcesWwelcomeVreadme€€ € € €€ €€€ ÔNO> QRTpathTtype€€€Ò,-UV¢V0YLocalPathÔNO> QR€€€ÔNO> QR€€€ÔNO> QR€€€ÔNO> QR€€€ÔNO> QR€€€Ó&'2mn€  Ò,-pq¢q0YResourcesÓ&'2tˆ€¯uvwxyz{|}~€‚ƒ„…†‡€€€€€€€€€€€€€€€€ €!€"€#¯‰ŠŠŒŽ‰Š’“‰Š‰—‰™Š‰€$€%€%€&€'€(€$€)€%€+€-€$€%€$€.€$€/€%€$ZinstallFat]removeDSStoreXcompressZonFinished\shortVersionZidentifier\allowBackRevXcontents]preserveForks_installLocation]authorizationXrequired^rootVolumeOnly_updateInstalledLanguagesWgetInfo[relocatableYtempBuild[followLinks_overwritePermissions S0.1_ org.ocsinventory-ng.agent.darwinÔNO>µQ·€*€€\package-rootÔNO>»QR€,€€Q/_0.1, Barely3am.comÔNO>ÁQR€0€€\/private/tmpÓ&'2ÇÊ€¢ÈÉ€2€3¢ËÌ€4€5[descriptionUtitlePUOCSNG_C/Volumes/Users/phear/Projects/ocsng/agents/darwin/builder/OCSNG.pkgÒ'ÓÔ€<¤ÕÖר€8€9€:€;U/CVS$W/\.svn$]/\.cvsignore$Z/\.cvspassÒ,-Þߣßà0^NSMutableArrayWNSArrayÒ,-âã£ãä0WSPModelVPModel)27:?AS”š³¸ÍÔãøý;ERsuwy{}ƒ…‡‰‹’𥧍©®·ÂÅÒÛâäåæëï$/:DKQYrzƒ…‡‰‹‘“•ž£¨ª¬®°µ¸ÂËÍÏÑÚÜÞàéëíïøúüþ    *13IKMOQSUWY[]_acegikmo…‡‰‹‘“•—™›Ÿ¡£¥§©«¶ÄÍØåðý&4=Lgo{…‘¨©ª¬°ÓÜÞàâäñúüþ "$&3:<?ACFHJV\]c©®°µ·¹»½ÃËÙäéíü  åOcsinventory-Unix-Agent-2.0.5/tools/macosx/INSTALL010064400017500001750000000031061173606111100212620ustar00guiguiguigui[REVIEW README FIRST] - Unzip unified_unix_agent-macosx-XXXXX.zip into a temporary directory (eg: /Users/$ROB$/tmp/) - Open up a terminal window - cd to the the temp directory: $> cd unified_unix_agent-macosx.../ - Replace the file: cacert.pem with your own local version (if you're using a self-signed ssl cert for package deployment) - run: sh ./scripts/create_install_wrapper.sh This will create a deployable install_wrapper.sh script (with the agent archive embedded into it) that can be remotely deployed to hosts via ssh. See install_wrapper.sh -h for more usage info. The install_wrapper.sh: - Unzips the embedded agent - creates the local config - triggers the ./scripts/installer.sh The installer.sh: - install OCSNG.app to /Applications/OCSNG.app - copy the config file to /etc/ocsinventory - install a startup plist file to launchd - install ocsng.log to /var/log (viewable via the console utility) - call launchd to start the service For custom deployment (e.g including your own configuration), you have to launch installer.sh qs is : installer.sh -custom Assuming you don't see any errors, you should be able to open up the console utility and view the /var/logs/ocsng.log file to verify the service started properly. Once installed, the agent should contact the server and upload an initial inventory, then go back to sleep. Notes: - OCS agent is launched using LaunchD but you can click on /Applications/OCSNG.app to launch OCS agent manually. - To uninstall the .app, use the uninstaller.sh script. This will kill the service, remove all the files (no restart required). Ocsinventory-Unix-Agent-2.0.5/tools/macosx/CLEANUP.sh010064400017500001750000000003661173606111100216610ustar00guiguiguigui#!/bin/bash FILES="unified_unix_agent-macosx*.zip ocsinventory-agent OCSNG.app OCSNG.pkg cacert.pem modules.conf ocsinventory-agent.cfg package-root" echo "cleaning up" for FILE in $FILES; do echo "removing: $FILE" sudo rm -R -f $FILE done Ocsinventory-Unix-Agent-2.0.5/tools/macosx/BUILDME.sh010075500017500001750000000077141173606111100216620ustar00guiguiguigui#!/bin/bash #Use this script to build OCS Inventory NG MacOSX agent #Run 'sh BUILDME.sh -release' to build official released agent OCSNG_PATH="OCSNG.app" PATCHES_PATH="patches" TOOLS_PATH="tools/macosx" FINAL_PKG_NAME="unified_unix_agent-macosx" if [ "$1" == "-release" ]; then RELEASE=1 fi if [ ! -x ../../inc ]; then echo "You're probably building from BZR, you're missing the "inc" directory in ../../" exit 1; fi if [ ! -x ./darwin-perl-lib ]; then if [ ! -e ./scripts/macosx-perl-lib-dep-snapshot.tar.gz ]; then echo "You're missing the darwin-perl-lib directory, did you run the create-darwin-perl-lib_fromCPAN.pl script?" exit 1; else echo 'extracting from snapshot perl-lib deps to ./' tar -zxvf ./scripts/macosx-perl-lib-dep-snapshot.tar.gz fi fi if [ -x $OCSNG_PATH ]; then echo "removing old $OCSNG_PATH" sudo rm -R -f $OCSNG_PATH fi if [ -x package-root ]; then echo 'removing old package-root' sudo rm -R -f package-root fi echo "Building OS X App" cd ocsng_app-xcode/ xcodebuild -alltargets cp ./build/UninstalledProducts/ocscontact ./build/UninstalledProducts/OCSNG.app/Contents/Resources cp -R ./build/UninstalledProducts/OCSNG.app ../ xcodebuild clean cd ../ mkdir $OCSNG_PATH/Contents/Resources/lib echo "Creating default config" cp ../../etc/ocsinventory-agent/modules.conf ./modules.conf echo "server=http://ocsinventory-ng/ocsinventory" > ./ocsinventory-agent.cfg echo "tag=DEFAULT" >> ./ocsinventory-agent.cfg echo "logfile=/var/log/ocsng.log" >> ./ocsinventory-agent.cfg echo 'Touching cacert.pem' echo "Make sure you replace me with your real cacert.pem" > cacert.pem echo "Buidling unified source" cd ../../ echo 'removing non-MacOS/Generic backend modules' cd ./lib/Ocsinventory/Agent/Backend/OS/ rm -R -f `ls -l | grep -v MacOS | grep -v CVS | grep -v Generic` cd ../../../../../ echo "Building Makefile.pl...." perl Makefile.PL make cp -R blib/lib ./$TOOLS_PATH/$OCSNG_PATH/Contents/Resources cp ocsinventory-agent ./$TOOLS_PATH/ make clean echo 'patching main perl script for OSX' cd ./$TOOLS_PATH/ patch -N ./ocsinventory-agent ./$PATCHES_PATH/ocsinventory-agent-darwin.patch cp ocsinventory-agent $OCSNG_PATH/Contents/Resources/ echo 'copying down darwin-dep libs' cp -R darwin-perl-lib/ $OCSNG_PATH/Contents/Resources/lib/ echo 'copying uninstall script' cp scripts/uninstaller.sh $OCSNG_PATH/Contents/Resources/ #Only for custom agent if [ ! "$RELEASE" == 1 ]; then echo 'creating package-root for building .pkg under' mkdir -p ./package-root/Applications echo 'copying .app to package-root' sudo cp -R $OCSNG_PATH ./package-root/Applications/ echo 'setting default permissions on ./package-root/Applications' sudo chown root:admin ./package-root/Applications sudo chmod 775 ./package-root/Applications # package maker might spit out some permissions errors if the app or it's folders are on your system already, this is usually OK, read them to make sure echo "building package" sudo rm -R -f ./OCSNG.pkg sudo /Developer/Applications/Utilities/PackageMaker.app/Contents/MacOS/PackageMaker -build -proj OCSNG.pmproj -p ./OCSNG.pkg FILES="ocsinventory-agent README INSTALL launchfiles OCSNG.pkg scripts ocsinventory-agent.cfg modules.conf cacert.pem" mkdir $FINAL_PKG_NAME cp -R $FILES $FINAL_PKG_NAME/ zip -r $FINAL_PKG_NAME $FINAL_PKG_NAME/ -x \*CVS\* -x \*svn\* rm -R -f $FINAL_PKG_NAME else if [ ! -d ./installer_gui/iceberg/plugins ]; then mkdir ./installer_gui/iceberg/plugins/ fi cd ./installer_gui/ocs_agent_config/ xcodebuild -alltargets cp -R ./build/Release/ocs_agent_config.bundle ../iceberg/plugins/ xcodebuild clean cd ../ocs_agent_daemon_options/ xcodebuild -alltargets cp -R ./build/Release/ocs_agent_daemon_options.bundle ../iceberg/plugins/ xcodebuild clean cd ../../ cp ./scripts/installer.sh installer_gui/iceberg/scripts/ echo "moving $OCSNG_PATH...enter your password if needed" sudo mv $OCSNG_PATH ./installer_gui/iceberg/ echo 'Now you can build final gui installer using iceberg' fi echo "done" Ocsinventory-Unix-Agent-2.0.5/tools/macosx/uninstaller.sh010075500017500001750000000012711173606111100231310ustar00guiguiguigui#!/bin/bash OSVER=`uname -r` echo "OSVer is $OSVER" PID=`ps ax -e | grep OCSNG | grep -v grep | grep -v $0 | awk '{print $1}'` if [ "$PID" != "" ]; then echo "killing process: $PID" sudo kill $PID fi FILES="/Library/Receipts/OCSNG* /etc/ocsinventory-agent/ /var/lib/ocsinventory-agent/ /Applications/OCSNG.app /var/log/ocsng.log" if [ "$OSVER" == "7.9.0" ]; then FILES="$FILES /Library/StartupItems/OCSInventory" else FILES="$FILES /Library/LaunchDaemons/org.ocsng.agent.plist" echo 'Stopping and unloading service' launchctl stop org.ocsng.agent launchctl unload /Library/LaunchDaemons/org.ocsng.agent.plist fi for FILE in $FILES; do echo 'removing '.$FILE rm -f -R $FILE done Ocsinventory-Unix-Agent-2.0.5/tools/macosx/README010064400017500001750000000037751173606111100211250ustar00guiguiguiguiDESCRIPTION OS X [darwin] Readme This README will help you roll your own native OSX, OCSNG.app client for enterprise deployment. PREREQUISITES - XCode 3.0 - Darwin Perl dependancies [A tarball with all the PerlDep's you'll need for this to run in darwin-land, see create....cpan.pl script] - OCSNG.pmproj [Apple PackageMaker binrary settings file] - PackageMaker [xcode] BUILDING/INSTALLING - Check out BZR if needed - copy the inc/ directory (might need to get it out of one of the previous releases) to unified_unix_agent - cd ./unified_unix_agent/tools/macosx - run the create-darwin-perl-lib_fromCPAN.pl script which will create the ~/darwin-perl-lib directory. This directory will stash a built version of all the perl libraries needed to run this client (ie: no running CPAN on the hosts you're deploying this on) - READ THE SCRIPT BEFORE RUNNING, some CPAN configurations are needed prior to running - You'll need CPAN, Perl (the development libraries for perl), so Xcode Tools (just about a full install). - sh ./BUILDME.sh - modify ocsinventory-agent.cfg file for your organization (TAG, server, logfile, etc...) - SEE INSTALL for more information on custom deployment COPYRIGHT See AUTHORS file. Ocsinventory-Agent is released under GNU GPL 2 licence. Portions of the Xcode project may fall under other, open licences (individual files will elaborate). Some of the Xcode project files are not core pieces of OCSNG and are to be treated as a supplement tool for building the agent for OSX deployment. NOTES - macosx tools was created by claimid.com/wesyoung and modified by OCS NG team for the 2.0 version. - READ THE INSTALL AND UNINSTALL SCRIPTS BEFORE DEPLOYING!!! These scripts require sudo access and will modify your system by: - installing files - adding launch daemons to launchd - Use these scripts at your own risk, I claim no responsibilty nor give any warranty that they work. - This package works on MacOSX 10.4 to 10.6 on i386, ppc and x86_64 architectures. Support for MacOSX 10.7 needs to be tested. Ocsinventory-Unix-Agent-2.0.5/tools/build-perl-tree.sh010075500017500001750000000046351173606111100223020ustar00guiguiguigui#!/bin/sh # A script to prepare a installation of Perl + OCSInventory-agent for # Unix/Linux # This in order to be able to provide an installation for system without # Perl > 5.6 set -e MAKE="make" TMP="/home2/goneri/tmp" PREFIX="$TMP/build/opt/ocsinventory-agent" ETCDIR="$PREFIX/etc" BASEDIR="$PREFIX/var/ocsinventory-agent" LOGDIR="$PREFIX/log/ocsinventory-agent" PIDFILE="$PREFIX/var/run" PERLVERSION="5.10.0" if [ ! -d $TMP ]; then echo "tmp $TMP dir is missing" fi cd $TMP if [ ! -f perl-$PERLVERSION.tar.gz ]; then wget -O perl-$PERLVERSION.tar.gz.part http://cpan.perl.org/src/perl-$PERLVERSION.tar.gz mv perl-$PERLVERSION.tar.gz.part perl-$PERLVERSION.tar.gz fi gunzip < perl-$PERLVERSION.tar.gz | tar xvf - cd perl-$PERLVERSION # AIX #./Configure -Dusenm -des -Dinstallprefix=$PREFIX -Dsiteprefix=$PREFIX -Dprefix=$PREFIX #./Configure -Dcc="gcc" -des -Dinstallprefix=$PREFIX -Dsiteprefix=$PREFIX -Dprefix=$PREFIX ./Configure -des -Dinstallprefix=$PREFIX -Dsiteprefix=$PREFIX -Dprefix=$PREFIX $MAKE $MAKE install PATH=$PREFIX/bin:$PATH export PATH cpanp 's conf prereqs 1; i XML::SAX' cpanp 's conf prereqs 1; i XML::Simple' cpanp 's conf prereqs 1; i LWP' cpanp 's conf prereqs 1; i Proc::Daemon' cpanp 's conf prereqs 1; i HTML::Parser' # For what? # Report error about IPv6 on Solaris 10 cpanp 's conf prereqs 1; i --force Net::IP' cpanp 's conf prereqs 1; i --force PAR::Packer' cpanp 's conf prereqs 1; i --force Net::SSLeay' exit; if [ ! openssl-0.9.8j.tar.gz ]; then wget -O openssl-0.9.8j.tar.gz.part http://www.openssl.org/source/openssl-0.9.8j.tar.gz mv openssl-0.9.8j.tar.gz.part openssl-0.9.8j.tar.gz fi gunzip < openssl-0.9.8j.tar.gz | tar xvf - cd openssl-0.9.8j ./config --prefix=/home2/goneri/tmp/openssl make make install ln -s apps bin #for i in `ls ../tarballs/*.gz`; do # gunzip < $i | tar xvf - #done #cd ../expat-2.0.0/ #./configure --prefix=$PREFIX #$MAKE #cd ../Ocsinventory-Agent-0.0.2/ #$PERL Makefile.PL PREFIX=$PREFIX #$MAKE PREFIX=$PREFIX #$MAKE install PREFIX=$PREFIX #:$PATH#perl -i -pe "s!/etc/ocsinventory-agent!$ETCDIR!" $PREFIX/bin/ocsinventory-agent #perl -i -pe "s!/var/lib/ocsinventory-agent!$BASEDIR!" $PREFIX/bin/ocsinventory-agent #perl -i -pe "s!/var/log/ocsinventory-agent!$LOGDIR!" $PREFIX/bin/ocsinventory-agent #perl -i -pe "s!/var/run/ocsinventory-agent.pid!$PIDFILE!" $PREFIX/bin/ocsinventory-agent #mkdir -p $ETCDIR #mkdir -p $BASEDIR #mkdir -p $LOGDIR #mkdir -p $PIDFILE Ocsinventory-Unix-Agent-2.0.5/tools/makedist.sh010075500017500001750000000006631173606111100211040ustar00guiguiguigui#!/bin/sh # Hack because of # http://rt.cpan.org/Public/Bug/Display.html?id=43060 perl Makefile.PL make manifest make dist gunzip < Ocsinventory-Agent-0.0.10beta3.tar.gz | tar xf - perl -i -pe 's/^exit;//' Ocsinventory-Agent-0.0.10beta3/inc/BUNDLES/libwww-perl-5.823/Makefile.PL rm Ocsinventory-Agent-0.0.10beta3.tar.gz tar cf Ocsinventory-Agent-0.0.10beta3.tar Ocsinventory-Agent-0.0.10beta3 gzip Ocsinventory-Agent-0.0.10beta3.tar Ocsinventory-Unix-Agent-2.0.5/tools/pre-nobundle.sh010064400017500001750000000002161173606111100216640ustar00guiguiguigui#!/bin/sh make distclean rm -f MANIFEST Makefile sed -i 's/^bundle/#bundle/' Makefile.PL rm -rf inc/BUNDLES* perl Makefile.PL make manifest Ocsinventory-Unix-Agent-2.0.5/tools/standalone.sh010075500017500001750000000037711173606111100214360ustar00guiguiguigui#!/bin/sh echo "WARNINGS: Very experimental tool" [ -f standalone.sh ] && cd .. if [ ! -f tools/standalone.sh ]; then echo "Can't find tools/standalone.sh" exit 1 fi if [ ! -f MANIFEST ]; then echo "Can't find the MANIFEST, please run:" echo " perl Makefile.PL" echo " make manifest" exit 1 fi if [ ! -x "`which pp 2>/dev/null`" ]; then echo "Can't find the pp command. Please install PAR::Packer:" echo " -CPAN: 'cpan PAR::Packer'" echo " -source: sownload the archive from" echo " http://search.cpan.org/dist/PAR-Packer/" echo " -Debian/Ubuntu: 'aptitude install libpar-packer-perl' OR 'aptitude install libpar-perl'" exit 1 fi BACKENDMODULE=`cat MANIFEST | perl -pe 's/.*// unless (/Ocsinventory\/Agent\/Backend\// && !/^inc/ && /pm$/); s/lib\/(.*)\.pm/ $1/; s/\//::/g; chomp'` cat > lib/Ocsinventory/Agent/Backend/ModuleToLoad.pm <$MISSING" exit 1 fi #pp --lib lib $MODULES -o ocsinventory-agent.bin ocsinventory-agent pp --lib lib $MODULES -B -p ocsinventory-agent -vvv -o ocsinventory-agent.par pp -o ocsinventory-agent.bin ocsinventory-agent.par if [ -f ocsinventory-agent.bin ]; then echo "ocsinventory-agent.bin generated!" else echo "Failed to generate ocsinventory-agent.bin!" fi Ocsinventory-Unix-Agent-2.0.5/tools/parseVmware.pl010064400017500001750000000005771173606111100216010ustar00guiguiguigui#!/usr/bin/perl -w use strict; use warnings; use Data::Dumper; my $data = { cpu => {}, mem => {}, }; open VMWARECPU,") { if (/^\s*(\w+)\s+(\w.*)\s*/) { my $key = $1; my @data = split(/\s+/,$2); print Dumper(\@data); $data->{cpu}->{$key} = \@data; #print $1." -> '".$2."'\n"; } } print Dumper($data); close VMWARECPU; Ocsinventory-Unix-Agent-2.0.5/etc004075500017500001750000000000001173606116100163035ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/etc/ocsinventory-agent004075500017500001750000000000001173606116100221415ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/etc/ocsinventory-agent/modules.conf010064400017500001750000000003571173606111100245340ustar00guiguiguigui# this list of module will be loaded by the agent at run time # to check its syntax do: # $perl modules.conf # You must have NO error. Else the content will be ignored use Ocsinventory::Agent::Modules::Download; # DO NO REMOVE the 1; 1; Ocsinventory-Unix-Agent-2.0.5/etc/ocsinventory-agent/softwares004075500017500001750000000000001173606116100241565ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/etc/ocsinventory-agent/softwares/example.sh010075500017500001750000000007101173606111100262150ustar00guiguiguigui#! /bin/bash # This is an example script for the byHand software collect method # # You can create your own script to detect the installed software # and install them in /etc/ocsinventory/softwares # #ligne=$(ls --version| head -n 1) # #soft=$(echo $ligne | cut -f1 -d'('| sed 's/ //') #vendor=$(echo $ligne | cut -f2 -d'('| cut -f1 -d')') #version=$(echo $ligne | cut -f2 -d'('| cut -f2 -d')'|sed 's/ //') # #echo "$vendor#$soft#$version#simple test" # # Ocsinventory-Unix-Agent-2.0.5/etc/init.d004075500017500001750000000000001173606116100174705ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/etc/init.d/ocsinventory-agent010075500017500001750000000077011173606111100233300ustar00guiguiguigui#! /bin/sh ### BEGIN INIT INFO # Provides: ocs-inventory-agent # Required-Start: $local_fs $remote_fs # Required-Stop: $local_fs $remote_fs # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: OCS-Inventory Agent # Description: This script laucn OCS Agent as daemon ### END INIT INFO # Author: Gonéri Le Bouder # # Do NOT "set -e" # PATH should only include /usr/* if it runs after the mountnfs.sh script PATH=/sbin:/usr/sbin:/bin:/usr/bin DESC="OCS Inventory Agent" NAME=ocsinventory-agent DAEMON=/usr/sbin/$NAME PIDFILE=/var/run/$NAME.pid SCRIPTNAME=/etc/init.d/$NAME # Exit if the package is not installed [ -x "$DAEMON" ] || exit 0 # Read configuration variable file if it is present [ -r /etc/default/$NAME ] && . /etc/default/$NAME DAEMON_ARGS="-d -s $SERVER" # Load the VERBOSE setting and other rcS variables . /lib/init/vars.sh # Define LSB log_* functions. # Depend on lsb-base (>= 3.0-6) to ensure that this file is present. . /lib/lsb/init-functions # # Function that starts the daemon/service # do_start() { # Return # 0 if daemon has been started # 1 if daemon was already running # 2 if daemon could not be started start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --test > /dev/null \ || return 1 start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- \ $DAEMON_ARGS \ || return 2 # Add code here, if necessary, that waits for the process to be ready # to handle requests from services started subsequently which depend # on this one. As a last resort, sleep for some time. } # # Function that stops the daemon/service # do_stop() { # Return # 0 if daemon has been stopped # 1 if daemon was already stopped # 2 if daemon could not be stopped # other if a failure occurred start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name $NAME RETVAL="$?" [ "$RETVAL" = 2 ] && return 2 # Wait for children to finish too if this is a daemon that forks # and if the daemon is only ever run from this initscript. # If the above conditions are not satisfied then add some other code # that waits for the process to drop all resources that could be # needed by services started subsequently. A last resort is to # sleep for some time. start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON [ "$?" = 2 ] && return 2 # Many daemons don't delete their pidfiles when they exit. rm -f $PIDFILE return "$RETVAL" } # # Function that sends a SIGHUP to the daemon/service # do_reload() { # # If the daemon can reload its configuration without # restarting (for example, when it is sent a SIGHUP), # then implement that here. # start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --name $NAME return 0 } case "$1" in start) [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME" do_start case "$?" in 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; esac ;; stop) [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME" do_stop case "$?" in 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; esac ;; #reload|force-reload) # # If do_reload() is not implemented then leave this commented out # and leave 'force-reload' as an alias for 'restart'. # #log_daemon_msg "Reloading $DESC" "$NAME" #do_reload #log_end_msg $? #;; restart|force-reload) # # If the "reload" option is implemented then remove the # 'force-reload' alias # log_daemon_msg "Restarting $DESC" "$NAME" do_stop case "$?" in 0|1) do_start case "$?" in 0) log_end_msg 0 ;; 1) log_end_msg 1 ;; # Old process is still running *) log_end_msg 1 ;; # Failed to start esac ;; *) # Failed to stop log_end_msg 1 ;; esac ;; *) #echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2 echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2 exit 3 ;; esac : Ocsinventory-Unix-Agent-2.0.5/etc/default004075500017500001750000000000001173606116100177275ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/etc/default/ocsinventory-agent010064400017500001750000000000231173606111100235520ustar00guiguiguiguiSERVER="localhost" Ocsinventory-Unix-Agent-2.0.5/etc/logrotate.d004075500017500001750000000000001173606116100205255ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/etc/logrotate.d/ocsinventory-agent010064400017500001750000000013541173606111100243600ustar00guiguiguigui# # File generated by OCS Inventory NG Unified Unix Agent setup # ################################################################################ # # OCS Inventory NG Unified Unix Agent # # Copyleft 2007 Didier LIROULET # Web: http://www.ocsinventory-ng.org # # This code is open source and may be copied and modified as long as the source # code is always made freely available. # Please refer to the General Public Licence http://www.gnu.org/ or Licence.txt ################################################################################ # # Rotate OCS Inventory NG agent logs daily, only if not empty # Save 7 days old logs under compressed mode PATH_TO_LOG_DIRECTORY/*.log { daily rotate 7 compress notifempty missingok } Ocsinventory-Unix-Agent-2.0.5/etc/cron.d004075500017500001750000000000001173606116100174665ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/etc/cron.d/ocsinventory-agent010064400017500001750000000012521173606111100233160ustar00guiguiguigui# # File generated by OCS Inventory NG Unified Unix Agent setup # ################################################################################ # # OCS Inventory NG Unified Unix Agent # # Copyleft 2007 Didier LIROULET # Web: http://www.ocsinventory-ng.org # # This code is open source and may be copied and modified as long as the source # code is always made freely available. # Please refer to the General Public Licence http://www.gnu.org/ or Licence.txt ################################################################################ # # Launch OCS Inventory NG Agent once a day under root account, at HH:MM # MM HH * * * root /usr/bin/ocsinventory-agent > /dev/null 2>&1 Ocsinventory-Unix-Agent-2.0.5/resources004075500017500001750000000000001173606116100175425ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/resources/ipdiscover004075500017500001750000000000001173606116100217115ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/resources/ipdiscover/ipdiscover.c010064400017500001750000000154731173606111100243050ustar00guiguiguigui/* ############################################################################### ##OCSInventory Version NG Beta ##Copyleft Pascal DANEK 2006 ##Web : http://ocsinventory.sourceforge.net ## ##This code is open source and may be copied and modified as long as the source ##code is always made freely available. ##Please refer to the General Public Licence http://www.gnu.org/ or Licence.txt ################################################################################ */ #include "ipdiscover.h" /* We get IP address, netmask, index number and mac address of the adapter */ void get_iface_infos( packet *ppacket, int *index, char *iface, struct sockaddr_in *ipaddr, struct sockaddr_in *netmask){ int tmpsock; struct ifreq ifr; if( ( tmpsock = socket( AF_INET, SOCK_STREAM, 0 ) ) < 0 ){ perror("Socket creation problem"); exit(1); } /* Initialize */ memset( &ifr, 0x0, sizeof(struct ifreq)); /* We put into the ifreq struct the name of adapter */ strncpy(ifr.ifr_name, iface, IF_NAMESIZE-1); /* IP */ if(ioctl(tmpsock, SIOCGIFADDR, &ifr)< 0){ close(tmpsock); perror("Cannot get the ip address"); exit(1); } memcpy( &ipaddr->sin_addr, &( (struct sockaddr_in *) &ifr.ifr_addr )->sin_addr, 4 ); memcpy( ppacket->arphdr.ar_sip, &( (struct sockaddr_in *) &ifr.ifr_addr )->sin_addr, 4 ); /*******************/ /* SNM */ if(ioctl(tmpsock, SIOCGIFNETMASK, &ifr)< 0){ close(tmpsock); perror("Cannot get the net submask"); exit(1); } memcpy(&netmask->sin_addr, &((struct sockaddr_in *) &ifr.ifr_netmask)->sin_addr, 4); /*******************/ /* MAC */ if(ioctl(tmpsock, SIOCGIFHWADDR, &ifr)< 0){ close(tmpsock); perror("Cannot get the mac address"); exit(1); } memcpy( ppacket->ethhdr.h_source, (unsigned char *)&ifr.ifr_hwaddr.sa_data, ETH_ALEN ); memcpy( ppacket->arphdr.ar_sha, (unsigned char *)&ifr.ifr_hwaddr.sa_data, ETH_ALEN ); /*******************/ /* INDEX */ if(ioctl(tmpsock, SIOCGIFINDEX, &ifr)< 0){ close(tmpsock); perror("Cannot get the interface index"); exit(1); } *index = ifr.ifr_ifindex; /*******************/ close(tmpsock); } void data_init( struct sockaddr_in *ipaddr, struct sockaddr_in *netmask, packet **ppacket, struct sockaddr_ll *sll, int index ){ memset(ipaddr, 0x00, sizeof(struct sockaddr_in)); memset(netmask, 0x00, sizeof(struct sockaddr_in)); /* Arp structure */ *ppacket = malloc( sizeof( packet ) ); /* Tie to adapter */ sll->sll_family = AF_PACKET; sll->sll_protocol = htons(ETH_P_ARP); /* Building the packet */ memset( (*ppacket)->ethhdr.h_dest, 0xFF, 6 ); (*ppacket)->ethhdr.h_proto = htons(0x806); /* arp header */ (*ppacket)->arphdr.arp_hrdad = htons(ARPHRD_ETHER); (*ppacket)->arphdr.arp_prot = htons(ETH_P_IP); (*ppacket)->arphdr.arp_halen = ETH_ALEN; (*ppacket)->arphdr.arp_prlen = 4; (*ppacket)->arphdr.arp_opcode = htons(ARPOP_REQUEST); memset( (*ppacket)->arphdr.ar_tha, 0x0,ETH_ALEN ); } void print_xml(struct in_addr *ipsrc, packet *ppacket_r, struct hostent* name){ printf("%s%02x:%02x:%02x:%02x:%02x:%02x%s\n",inet_ntoa(*ipsrc), *ppacket_r->arphdr.ar_sha,ppacket_r->arphdr.ar_sha[1],ppacket_r->arphdr.ar_sha[2], ppacket_r->arphdr.ar_sha[3],ppacket_r->arphdr.ar_sha[4],ppacket_r->arphdr.ar_sha[5], name?name->h_name:"-"); } void create_socket(int *sd, struct sockaddr_ll *sll, int index){ /* Socket creation */ *sd = socket( PF_PACKET, SOCK_RAW, htons( ETH_P_ARP ) ); /* Put the iface index in sockaddr_ll structure to bind */ sll->sll_ifindex = index; if( sd < 0 ){ perror("Socket creation problem"); exit(1); } if( fcntl( *sd, F_SETFL, O_NONBLOCK ) == -1 ){ perror("Cannot set socket mode to O_NONBLOCK"); exit(1); } /* Bind */ if( bind( *sd, (struct sockaddr*)sll, sizeof(*sll) ) == -1 ){ perror("Bind error"); exit(1); } } void validate_iface( struct sockaddr_in *ipaddr, struct sockaddr_in *netmask, packet *ppacket ){ char error_str[100]; if( ntohl(netmask->sin_addr.s_addr) < 0xFFFF0000){ snprintf(error_str, 100, "Invalid netmask -> too large (%s). Stop\n", inet_ntoa(netmask->sin_addr)); perror( error_str ); exit(1); } } void scan_init( unsigned long *unet, unsigned long *uhost, struct sockaddr_in *ipaddr, struct sockaddr_in *netmask, struct in_addr *ipsrc, packet **ppacket_r ){ /* Netid */ *unet = ntohl(ipaddr->sin_addr.s_addr) & ntohl(netmask->sin_addr.s_addr); /* Supposed number of hosts */ *uhost = ~( ntohl(netmask->sin_addr.s_addr) ); memset(ipsrc, 0, sizeof(struct in_addr)); *ppacket_r = malloc( sizeof( packet ) ); } int main(int argc, char ** argv){ /* Declarations */ /* full packet (tx and rx) */ packet *ppacket, *ppacket_r; /* Socket descriptor, nic index */ int sd = 0; int flag = 0; int index = 0; /* ip data */ unsigned long unet,uhost,ipdst,tip; /* The name of the interface is given in parameter to the binary */ char * iface; /* detected device's FQDN */ struct hostent* name; /* ip level sockaddr */ struct sockaddr_in ipaddr, netmask; /* Lowlevel sockaddr */ struct sockaddr_ll sll = {0x0}; /* source ip to put in packet */ struct in_addr ipsrc; int request_latency = REQUEST_LATENCY_DEFAULT; int p=0; /* Take at least one argument */ if(argc<2){ printf("IPDISCOVER binary ver. %d \nUsage : ipdiscover [iface name] [latency in ms]\n", VERSION); exit(0); }else{ iface = argv[1]; if( argc==3 ) request_latency = atoi( argv[2] ); } /* Initialize data */ data_init( &ipaddr, &netmask, &ppacket, &sll, index ); /* Reading nic parameters */ get_iface_infos( ppacket, &index, iface, &ipaddr, &netmask ); /* Check iface settings */ validate_iface( &ipaddr, &netmask, ppacket ); /* Creating socket */ create_socket( &sd, &sll, index ); /* Initialize packet target ip, potential hosts number... */ scan_init( &unet, &uhost, &ipaddr, &netmask, &ipsrc, &ppacket_r ); /* We are looking for all the possible connected host */ for(ipdst=1;ipdstarphdr.ar_tip, &tip, 4 ); /* Sending the packet */ if( write( sd, ppacket, sizeof(packet) ) < 0 ){ perror("Transmission error"); exit(1); } flag = 0; usleep( request_latency * 1000 ); while( flag>=0 ){ memset( ppacket_r, 0, sizeof( packet ) ); flag = read( sd, ppacket_r, sizeof( packet ) ); if( flag>0 ) memcpy(&ipsrc, ppacket_r->arphdr.ar_sip, sizeof(struct in_addr)); if(ntohs(ppacket_r->arphdr.arp_opcode) == 2){ char * c; if(p==0) printf("\n"); p++; name = gethostbyaddr(&ipsrc, sizeof(struct in_addr), AF_INET); if(name){ while((c=strchr(name->h_name,'<')) || (c=strchr(name->h_name,'>'))){ strncpy(c,"x",sizeof(c)); } } usleep( NAME_RES_LATENCY ); print_xml( &ipsrc, ppacket_r, name ); } } } if(p) printf("\n"); /* That's all */ exit(0); } Ocsinventory-Unix-Agent-2.0.5/resources/ipdiscover/ipdiscover.h010064400017500001750000000027721173606111100243100ustar00guiguiguigui/* ############################################################################### ##OCSInventory Version NG Beta ##Copyleft Pascal DANEK 2006 ##Web : http://ocsinventory.sourceforge.net ## ##This code is open source and may be copied and modified as long as the source ##code is always made freely available. ##Please refer to the General Public Licence http://www.gnu.org/ or Licence.txt ################################################################################ */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #ifndef ARPHRD_ETHER #define ARPHRD_ETHER 1 #endif #ifndef ARPOP_REQUEST #define ARPOP_REQUEST 1 #endif #ifndef ARPOP_REPLY #define ARPOP_REPLY 2 #endif #define VERSION 5 #define NAME_RES_LATENCY 1000000 #define REQUEST_LATENCY_DEFAULT 100000 /* Trame ARP */ struct arphdr{ unsigned short arp_hrdad; unsigned short arp_prot; unsigned char arp_halen; unsigned char arp_prlen; unsigned short arp_opcode; unsigned char ar_sha[ETH_ALEN]; unsigned char ar_sip[4]; unsigned char ar_tha[ETH_ALEN]; unsigned char ar_tip[4]; }; /* Ethernet header*/ struct Packet{ struct ethhdr ethhdr; struct arphdr arphdr; }; typedef struct Packet packet; Ocsinventory-Unix-Agent-2.0.5/resources/dmidecode-openbsd-3.8010064400017500001750000000675631173606111100234300ustar00guiguiguigui dmidecode 2.6 SMBIOS 2.3 present. 82 structures occupying 3043 bytes. Table at 0x000FA4C0. Handle 0xDA00 DMI type 218, 11 bytes. OEM-specific Type Header and Data: DA 0B 00 DA B2 00 17 00 0E 20 00 Handle 0x0000 DMI type 0, 20 bytes. BIOS Information Vendor: Dell Computer Corporation Version: A05 Release Date: 09/21/2005 Address: 0xF0000 Runtime Size: 64 kB ROM Size: 1024 kB Characteristics: ISA is supported PCI is supported PNP is supported BIOS is upgradeable BIOS shadowing is allowed ESCD support is available Boot from CD is supported Selectable boot is supported EDD is supported Japanese floppy for Toshiba 1.2 MB is supported (int 13h) 5.25"/360 KB floppy services are supported (int 13h) 5.25"/1.2 MB floppy services are supported (int 13h) 3.5"/720 KB floppy services are supported (int 13h) Print screen service is supported (int 5h) 8042 keyboard services are supported (int 9h) Serial services are supported (int 14h) Printer services are supported (int 17h) CGA/mono video services are supported (int 10h) ACPI is supported USB legacy is supported LS-120 boot is supported BIOS boot specification is supported Function key-initiated network boot is supported Handle 0x0100 DMI type 1, 25 bytes. System Information Manufacturer: Dell Computer Corporation Product Name: PowerEdge 1800 Version: Not Specified Serial Number: 2K1012J UUID: 44454C4C-4B00-1031-8030-B2C04F31324A Wake-up Type: Power Switch Handle 0x0200 DMI type 2, 9 bytes. Base Board Information Manufacturer: Dell Computer Corporation Product Name: 0P8611 Version: A04 Serial Number: ..CN717035A80217. Handle 0x0300 DMI type 3, 17 bytes. Chassis Information Manufacturer: Dell Computer Corporation Type: Main Server Chassis Lock: Present Version: Not Specified Serial Number: 2K1012J Asset Tag: Not Specified Boot-up State: Safe Power Supply State: Safe Thermal State: Safe Security Status: Unknown OEM Information: 0x00000000 Handle 0x0400 DMI type 4, 35 bytes. Processor Information Socket Designation: PROC_1 Type: Central Processor Family: Xeon Manufacturer: Intel ID: 43 0F 00 00 FF FB EB BF Signature: Type 0, Family 15, Model 4, Stepping 3 Flags: FPU (Floating-point unit on-chip) VME (Virtual mode extension) DE (Debugging extension) PSE (Page size extension) TSC (Time stamp counter) MSR (Model specific registers) PAE (Physical address extension) MCE (Machine check exception) CX8 (CMPXCHG8 instruction supported) APIC (On-chip APIC hardware supported) SEP (Fast system call) MTRR (Memory type range registers) PGE (Page global enable) MCA (Machine check architecture) CMOV (Conditional move instruction supported) PAT (Page attribute table) PSE-36 (36-bit page size extension) CLFSH (CLFLUSH instruction supported) DS (Debug store) ACPI (ACPI supported) MMX (MMX technology supported) FXSR (Fast floating-point save and restore) SSE (Streaming SIMD extensions) SSE2 (Streaming SIMD extensions 2) SS (Self-snoop) HTT (Hyper-threading technology) TM (Thermal monitor supported) PBE (Pending break enabled) Version: Not Specified Voltage: 1.4 V External Clock: 800 MHz Max Speed: 3600 MHz Current Speed: 3000 MHz Status: Populated, Enabled Upgrade: ZIF Socket L1 Cache Handle: 0x0700 L2 Cache Handle: 0x0701 L3 Cache Handle: 0x0702 Serial Number: Not Specified Asset Tag: Not Specified Part Number: Not Specified Handle 0x0401 DMI type 4, 35 bytes. Processor Information Socket Designation: PROC_2 Type: Central Processor Family: Xeon Manufacturer: Intel ID: 00 00 00 00 00 00 00 00 Signature: Type 0, Family 0, Model 0, Stepping 0 Flags: None Version: Not Specified Voltage: 1.4 V External Clock: Unknown Max Speed: 3600 MHz Current Speed: Unknown Status: Unpopulated Upgrade: ZIF Socket L1 Cache Handle: 0x0703 L2 Cache Handle: 0x0704 L3 Cache Handle: 0x0705 Serial Number: Not Specified Asset Tag: Not Specified Part Number: Not Specified Handle 0x0700 DMI type 7, 19 bytes. Cache Information Socket Designation: Not Specified Configuration: Enabled, Not Socketed, Level 1 Operational Mode: Write Through Location: Internal Installed Size: 16 KB Maximum Size: 16 KB Supported SRAM Types: Unknown Installed SRAM Type: Unknown Speed: Unknown Error Correction Type: Parity System Type: Data Associativity: 8-way Set-associative Handle 0x0701 DMI type 7, 19 bytes. Cache Information Socket Designation: Not Specified Configuration: Enabled, Not Socketed, Level 2 Operational Mode: Write Back Location: Internal Installed Size: 2048 KB Maximum Size: 2048 KB Supported SRAM Types: Unknown Installed SRAM Type: Unknown Speed: Unknown Error Correction Type: Single-bit ECC System Type: Unified Associativity: 8-way Set-associative Handle 0x0702 DMI type 7, 19 bytes. Cache Information Socket Designation: Not Specified Configuration: Enabled, Not Socketed, Level 3 Operational Mode: Write Back Location: Internal Installed Size: 0 KB Maximum Size: 0 KB Supported SRAM Types: Unknown Installed SRAM Type: Unknown Speed: Unknown Error Correction Type: Single-bit ECC System Type: Unified Associativity: 2-way Set-associative Handle 0x0703 DMI type 7, 19 bytes. Cache Information Socket Designation: Not Specified Configuration: Enabled, Not Socketed, Level 1 Operational Mode: Write Through Location: Internal Installed Size: 0 KB Maximum Size: 16 KB Supported SRAM Types: Unknown Installed SRAM Type: Unknown Speed: Unknown Error Correction Type: Parity System Type: Data Associativity: 8-way Set-associative Handle 0x0704 DMI type 7, 19 bytes. Cache Information Socket Designation: Not Specified Configuration: Enabled, Not Socketed, Level 2 Operational Mode: Write Back Location: Internal Installed Size: 0 KB Maximum Size: 2048 KB Supported SRAM Types: Unknown Installed SRAM Type: Unknown Speed: Unknown Error Correction Type: Single-bit ECC System Type: Unified Associativity: 8-way Set-associative Handle 0x0705 DMI type 7, 19 bytes. Cache Information Socket Designation: Not Specified Configuration: Enabled, Not Socketed, Level 3 Operational Mode: Write Back Location: Internal Installed Size: 0 KB Maximum Size: 0 KB Supported SRAM Types: Unknown Installed SRAM Type: Unknown Speed: Unknown Error Correction Type: Single-bit ECC System Type: Unified Associativity: 2-way Set-associative Handle 0x0800 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: SCSI Internal Connector Type: 68 Pin Dual Inline External Reference Designator: Not Specified External Connector Type: None Port Type: SCSI Wide Handle 0x0801 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: Not Specified Internal Connector Type: None External Reference Designator: Not Specified External Connector Type: DB-15 female Port Type: Video Port Handle 0x0802 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: Not Specified Internal Connector Type: None External Reference Designator: Not Specified External Connector Type: Access Bus (USB) Port Type: USB Handle 0x0803 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: Not Specified Internal Connector Type: None External Reference Designator: Not Specified External Connector Type: Access Bus (USB) Port Type: USB Handle 0x0804 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: Not Specified Internal Connector Type: None External Reference Designator: Not Specified External Connector Type: Access Bus (USB) Port Type: USB Handle 0x0805 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: Not Specified Internal Connector Type: None External Reference Designator: Not Specified External Connector Type: Access Bus (USB) Port Type: USB Handle 0x0806 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: Not Specified Internal Connector Type: None External Reference Designator: Not Specified External Connector Type: DB-25 female Port Type: Parallel Port PS/2 Handle 0x0807 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: Not Specified Internal Connector Type: None External Reference Designator: Not Specified External Connector Type: RJ-45 Port Type: Network Port Handle 0x0808 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: Not Specified Internal Connector Type: None External Reference Designator: Not Specified External Connector Type: DB-9 male Port Type: Serial Port 16550A Compatible Handle 0x0809 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: Not Specified Internal Connector Type: None External Reference Designator: Not Specified External Connector Type: PS/2 Port Type: Keyboard Port Handle 0x080A DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: Not Specified Internal Connector Type: None External Reference Designator: Not Specified External Connector Type: PS/2 Port Type: Mouse Port Handle 0x0900 DMI type 9, 13 bytes. System Slot Information Designation: SLOT1 Type: 64-bit PCI Current Usage: Available Length: Long ID: 1 Characteristics: 3.3 V is provided PME signal is supported Handle 0x0901 DMI type 9, 13 bytes. System Slot Information Designation: SLOT2 Type: Current Usage: Available Length: Long Characteristics: 3.3 V is provided PME signal is supported Handle 0x0902 DMI type 9, 13 bytes. System Slot Information Designation: SLOT3 Type: Current Usage: Available Length: Long Characteristics: 3.3 V is provided PME signal is supported Handle 0x0903 DMI type 9, 13 bytes. System Slot Information Designation: SLOT4 Type: 32-bit PCI Current Usage: Available Length: Long ID: 4 Characteristics: 5.0 V is provided PME signal is supported Handle 0x0904 DMI type 9, 13 bytes. System Slot Information Designation: SLOT5 Type: 64-bit PCI-X Current Usage: In Use Length: Long ID: 5 Characteristics: 3.3 V is provided PME signal is supported Handle 0x0905 DMI type 9, 13 bytes. System Slot Information Designation: SLOT6 Type: 64-bit PCI-X Current Usage: Available Length: Long ID: 6 Characteristics: 3.3 V is provided PME signal is supported Handle 0x0A00 DMI type 10, 10 bytes. On Board Device 1 Information Type: SCSI Controller Status: Enabled Description: LSI Logic 53C1020 Ultra 320 SCSI On Board Device 2 Information Type: Video Status: Enabled Description: ATI RADEON 7000 PCI Video On Board Device 3 Information Type: Ethernet Status: Enabled Description: Intel 82541GI Gigabit Ethernet Handle 0x0B00 DMI type 11, 5 bytes. OEM Strings String 1: Dell System String 2: 5[0000] Handle 0x7E00 DMI type 126, 144 bytes. Inactive Handle 0x0C00 DMI type 12, 5 bytes. System Configuration Options Option 1: NVRAM_CLR: Clear user settable NVRAM areas and set defaults Option 2: PASSWD: Close to enable password Handle 0x0D00 DMI type 13, 22 bytes. BIOS Language Information Installable Languages: 1 en|US|iso8859-1 Currently Installed Language: en|US|iso8859-1 Handle 0x1000 DMI type 16, 15 bytes. Physical Memory Array Location: System Board Or Motherboard Use: System Memory Error Correction Type: Multi-bit ECC Maximum Capacity: 12 GB Error Information Handle: Not Provided Number Of Devices: 6 Handle 0x1100 DMI type 17, 27 bytes. Memory Device Array Handle: 0x1000 Error Information Handle: Not Provided Total Width: 72 bits Data Width: 64 bits Size: 512 MB Form Factor: DIMM Set: 1 Locator: DIMM1_A Bank Locator: Not Specified Type: Type Detail: Synchronous Speed: 400 MHz (2.5 ns) Manufacturer: CE00000000000000 Serial Number: 50075483 Asset Tag: 010552 Part Number: M3 93T6450FZ0-CCC Handle 0x1101 DMI type 17, 27 bytes. Memory Device Array Handle: 0x1000 Error Information Handle: Not Provided Total Width: 72 bits Data Width: 64 bits Size: 512 MB Form Factor: DIMM Set: 1 Locator: DIMM1_B Bank Locator: Not Specified Type: Type Detail: Synchronous Speed: 400 MHz (2.5 ns) Manufacturer: CE00000000000000 Serial Number: 500355A1 Asset Tag: 010552 Part Number: M3 93T6450FZ0-CCC Handle 0x1102 DMI type 17, 27 bytes. Memory Device Array Handle: 0x1000 Error Information Handle: Not Provided Total Width: 72 bits Data Width: 64 bits Size: No Module Installed Form Factor: DIMM Set: 2 Locator: DIMM2_A Bank Locator: Not Specified Type: Type Detail: Synchronous Speed: 400 MHz (2.5 ns) Manufacturer: Serial Number: Asset Tag: Part Number: Handle 0x1103 DMI type 17, 27 bytes. Memory Device Array Handle: 0x1000 Error Information Handle: Not Provided Total Width: 72 bits Data Width: 64 bits Size: No Module Installed Form Factor: DIMM Set: 2 Locator: DIMM2_B Bank Locator: Not Specified Type: Type Detail: Synchronous Speed: 400 MHz (2.5 ns) Manufacturer: Serial Number: Asset Tag: Part Number: Handle 0x1104 DMI type 17, 27 bytes. Memory Device Array Handle: 0x1000 Error Information Handle: Not Provided Total Width: 72 bits Data Width: 64 bits Size: No Module Installed Form Factor: DIMM Set: 3 Locator: DIMM3_A Bank Locator: Not Specified Type: Type Detail: Synchronous Speed: 400 MHz (2.5 ns) Manufacturer: Serial Number: Asset Tag: Part Number: Handle 0x1105 DMI type 17, 27 bytes. Memory Device Array Handle: 0x1000 Error Information Handle: Not Provided Total Width: 72 bits Data Width: 64 bits Size: No Module Installed Form Factor: DIMM Set: 3 Locator: DIMM3_B Bank Locator: Not Specified Type: Type Detail: Synchronous Speed: 400 MHz (2.5 ns) Manufacturer: Serial Number: Asset Tag: Part Number: Handle 0x1300 DMI type 19, 15 bytes. Memory Array Mapped Address Starting Address: 0x00000000000 Ending Address: 0x0003FFFFFFF Range Size: 1 GB Physical Array Handle: 0x1000 Partition Width: 0 Handle 0x1301 DMI type 126, 15 bytes. Inactive Handle 0x1400 DMI type 20, 19 bytes. Memory Device Mapped Address Starting Address: 0x00000000000 Ending Address: 0x0003FFFFFFF Range Size: 1 GB Physical Device Handle: 0x1100 Memory Array Mapped Address Handle: 0x1300 Partition Row Position: 1 Handle 0x1401 DMI type 20, 19 bytes. Memory Device Mapped Address Starting Address: 0x00000000000 Ending Address: 0x0003FFFFFFF Range Size: 1 GB Physical Device Handle: 0x1101 Memory Array Mapped Address Handle: 0x1300 Partition Row Position: 2 Handle 0x1402 DMI type 126, 19 bytes. Inactive Handle 0x1403 DMI type 126, 19 bytes. Inactive Handle 0x1404 DMI type 126, 19 bytes. Inactive Handle 0x1405 DMI type 126, 19 bytes. Inactive Handle 0x1406 DMI type 126, 19 bytes. Inactive Handle 0x1407 DMI type 126, 19 bytes. Inactive Handle 0x1408 DMI type 126, 19 bytes. Inactive Handle 0x1409 DMI type 126, 19 bytes. Inactive Handle 0x140A DMI type 126, 19 bytes. Inactive Handle 0x140B DMI type 126, 19 bytes. Inactive Handle 0x140C DMI type 126, 19 bytes. Inactive Handle 0x140D DMI type 126, 19 bytes. Inactive Handle 0x1420 DMI type 126, 19 bytes. Inactive Handle 0x1421 DMI type 126, 19 bytes. Inactive Handle 0x1424 DMI type 126, 19 bytes. Inactive Handle 0x1425 DMI type 126, 19 bytes. Inactive Handle 0x1428 DMI type 126, 19 bytes. Inactive Handle 0x1429 DMI type 126, 19 bytes. Inactive Handle 0x1430 DMI type 126, 19 bytes. Inactive Handle 0x1431 DMI type 126, 19 bytes. Inactive Handle 0x1434 DMI type 126, 19 bytes. Inactive Handle 0x1435 DMI type 126, 19 bytes. Inactive Handle 0x1438 DMI type 126, 19 bytes. Inactive Handle 0x1439 DMI type 126, 19 bytes. Inactive Handle 0x2000 DMI type 32, 11 bytes. System Boot Information Status: No errors detected Handle 0x2600 DMI type 38, 18 bytes. IPMI Device Information Interface Type: KCS (Keyboard Control Style) Specification Version: 1.5 I2C Slave Address: 0x10 NV Storage Device: Not Present Base Address: 0x0000000000000CA8 (I/O) Register Spacing: 32-bit Boundaries Handle 0xD000 DMI type 208, 10 bytes. OEM-specific Type Header and Data: D0 0A 00 D0 01 05 FE 00 83 01 Handle 0xD100 DMI type 209, 12 bytes. OEM-specific Type Header and Data: D1 0C 00 D1 78 03 07 03 04 0F 80 05 Handle 0xD200 DMI type 210, 12 bytes. OEM-specific Type Header and Data: D2 0C 00 D2 F8 03 04 03 06 80 04 05 Handle 0xD400 DMI type 212, 167 bytes. OEM-specific Type Header and Data: D4 A7 00 D4 70 00 71 00 00 10 2D 2E 03 00 11 7F 80 04 00 11 7F 00 07 00 25 9F 00 08 00 25 9F 20 09 00 25 9F 40 0A 00 25 9F 60 0B 00 25 7F 00 0C 00 25 7F 80 0F 00 25 F8 00 11 00 25 F8 01 12 00 25 F8 02 2E 40 25 F8 03 2F 40 25 F8 04 00 00 25 F8 05 42 00 11 FE 01 43 00 11 FE 00 44 00 11 9F 20 45 00 11 9F 00 31 40 11 FB 00 32 40 11 FB 04 9D 00 11 FD 02 9E 00 11 FD 00 9F 00 26 FE 01 A0 00 26 FE 00 51 00 26 3F 00 52 00 26 3F 40 53 00 26 3F 80 54 00 26 3F C0 28 40 26 DF 20 29 40 26 DF 00 FF FF 00 00 00 Handle 0xD401 DMI type 212, 202 bytes. OEM-specific Type Header and Data: D4 CA 01 D4 70 00 71 00 03 40 59 6D 6B 00 78 7F 80 6C 00 78 7F 00 58 00 78 FA 05 59 00 78 FA 00 5C 00 78 BF 40 5D 00 78 BF 00 04 80 78 FD 02 01 A0 78 FD 00 08 40 51 FE 01 09 40 51 FE 00 0A 40 51 FD 02 0B 40 51 FD 00 19 00 55 E7 00 1A 00 55 E7 08 1B 00 55 E7 10 FF 00 55 9F 40 FE 00 55 9F 20 FD 00 55 9F 00 1E 00 55 FD 00 50 00 55 FD 02 8A 00 55 FE 01 8B 00 55 FE 00 BF 00 53 FE 00 C0 00 53 FE 01 33 40 53 E7 00 34 40 53 E7 08 35 40 53 E7 10 36 40 53 E7 18 1A 40 53 FD 02 1B 40 53 FD 00 1C 40 53 FB 04 1D 40 53 FB 00 6E 00 58 FC 01 2D 00 58 FC 02 2E 00 58 FC 00 22 40 58 EF 10 23 40 58 EF 00 FF FF 00 00 00 Handle 0xD402 DMI type 212, 47 bytes. OEM-specific Type Header and Data: D4 2F 02 D4 70 00 71 00 03 40 59 6D D8 00 55 7F 80 D9 00 55 7F 00 00 C0 5C 00 0A 03 C0 67 00 05 83 00 76 00 00 84 00 77 00 00 FF FF 00 00 00 Handle 0xD403 DMI type 212, 177 bytes. OEM-specific Type Header and Data: D4 B1 03 D4 72 00 73 00 00 40 5D 5E 28 01 4A FC 00 29 01 4A FC 01 2A 01 4A FC 02 02 40 4A F7 00 01 40 4A F7 08 D1 00 7E FE 00 D2 00 7E FE 01 2A 40 7E FB 00 2B 40 7E FB 04 D3 00 00 00 02 D4 00 06 00 02 00 90 2C 00 00 01 90 2D 00 00 17 01 4B FE 00 18 01 4B FE 01 19 01 4B FD 00 1A 01 4B FD 02 35 01 4C FC 00 37 01 4C FC 01 39 01 4C FC 02 3B 01 4C F3 04 3D 01 4C F3 08 DE 00 76 FE 01 26 40 42 FE 01 27 40 42 FE 00 37 40 42 FB 00 38 40 42 FB 04 00 00 47 FE 01 00 00 47 FE 00 A1 00 48 FC 02 A3 00 48 FC 01 A2 00 48 FC 00 FF FF 00 00 00 Handle 0xD800 DMI type 216, 9 bytes. OEM-specific Type Header and Data: D8 09 00 D8 01 02 01 00 00 Strings: ATI RADEON 7000 V6.11 Handle 0xDE00 DMI type 222, 15 bytes. OEM-specific Type Header and Data: DE 0F 00 DE 01 04 FF FF 00 00 00 00 00 00 00 Handle 0x7F00 DMI type 127, 4 bytes. End Of Table Ocsinventory-Unix-Agent-2.0.5/resources/cpuinfo004075500017500001750000000000001173606116100212055ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/resources/cpuinfo/linux-ppc-2010064400017500001750000000004271173606111100232600ustar00guiguiguiguiprocessor : 0 cpu : POWER4+ (gq) clock : 1452.000000MHz revision : 2.1 processor : 1 cpu : POWER4+ (gq) clock : 1452.000000MHz revision : 2.1 timebase : 181495202 machine : CHRP IBM,7029-6C3 Ocsinventory-Unix-Agent-2.0.5/resources/cpuinfo/linux-686-1010064400017500001750000000011341173606111100230140ustar00guiguiguiguiprocessor : 0 vendor_id : GenuineIntel cpu family : 6 model : 13 model name : Intel(R) Pentium(R) M processor 1.73GHz stepping : 8 cpu MHz : 1729.038 cache size : 2048 KB fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 2 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat clflush dts acpi mmx fxsr sse sse2 ss tm pbe nx bts est tm2 bogomips : 3462.27 clflush size : 64 power management: Ocsinventory-Unix-Agent-2.0.5/resources/cpuinfo/linux-ia64-1010064400017500001750000000010331173606111100232320ustar00guiguiguiguiprocessor : 0 vendor : GenuineIntel arch : IA-64 family : Itanium 2 model : 2 revision : 1 archrev : 0 features : branchlong cpu number : 0 cpu regs : 4 cpu MHz : 1600.000009 itc MHz : 1600.009464 BogoMIPS : 2392.06 siblings : 1 processor : 1 vendor : GenuineIntel arch : IA-64 family : Itanium 2 model : 2 revision : 1 archrev : 0 features : branchlong cpu number : 0 cpu regs : 4 cpu MHz : 1600.000009 itc MHz : 1600.009464 BogoMIPS : 2392.06 siblings : 1 Ocsinventory-Unix-Agent-2.0.5/resources/cpuinfo/linux-ppc-1010064400017500001750000000004061173606111100232540ustar00guiguiguiguiprocessor : 0 cpu : 604r clock : ??? revision : 49.2 (pvr 0009 3102) bogomips : 299.00 machine : PReP Utah (Powerstack II Pro4000) l2 cache : 512KiB, parity disabled SRAM:synchronous, pipelined, no parity Ocsinventory-Unix-Agent-2.0.5/resources/cpuinfo/cpuinfo-vmware-esx010064400017500001750000000000001173606111100247240ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/resources/cpuinfo/linux-mips-1010064400017500001750000000006441173606111100234460ustar00guiguiguiguisystem type : SGI Indigo2 processor : 0 cpu model : R4400SC V5.0 FPU V0.0 BogoMIPS : 74.75 wait instruction : no microsecond timers : yes tlb_entries : 48 extra interrupt vector : no hardware watchpoint : yes ASEs implemented : shadow register sets : 1 VCED exceptions : 640580539 VCEI exceptions : 9972559 Ocsinventory-Unix-Agent-2.0.5/resources/cpuinfo/linux-sparc-1010064400017500001750000000006151173606111100236040ustar00guiguiguiguicpu : TI UltraSparc IIIi (Jalapeno) fpu : UltraSparc IIIi integrated FPU prom : OBP 4.13.2 2004/03/29 10:11 type : sun4u ncpus probed : 2 ncpus active : 2 D$ parity tl1 : 0 I$ parity tl1 : 0 Cpu0ClkTck : 000000003bb94e80 Cpu1ClkTck : 000000003bb94e80 MMU Type : Cheetah+ State: CPU0: online CPU1: online Ocsinventory-Unix-Agent-2.0.5/resources/cpuinfo/linux-armel-1010064400017500001750000000011301173606111100235650ustar00guiguiguiguiProcessor : XScale-80219 rev 0 (v5l) BogoMIPS : 593.10 Features : swp half fastmult edsp CPU implementer : 0x69 CPU architecture: 5TE CPU variant : 0x0 CPU part : 0x2e3 CPU revision : 0 Cache type : undefined 5 Cache clean : undefined 5 Cache lockdown : undefined 5 Cache format : Harvard I size : 32768 I assoc : 32 I line length : 32 I sets : 32 D size : 32768 D assoc : 32 D line length : 32 D sets : 32 Hardware : Thecus N2100 Revision : 0000 Serial : 0000000000000000 Ocsinventory-Unix-Agent-2.0.5/resources/cpuinfo/linux-alpha-1010064400017500001750000000015501173606111100235600ustar00guiguiguiguicpu : Alpha cpu model : EV68CB cpu variation : 7 cpu revision : 0 cpu serial number : JA30502089 system type : Titan system variation : Privateer system revision : 0 system serial number : AY31001636 cycle frequency [Hz] : 1250000000 timer frequency [Hz] : 1024.00 page size [bytes] : 8192 phys. address bits : 44 max. addr. space # : 255 BogoMIPS : 2484.04 kernel unaligned acc : 0 (pc=0,va=0) user unaligned acc : 0 (pc=0,va=0) platform string : AlphaServer ES45 Model 3B cpus detected : 3 cpus active : 3 cpu active mask : 0000000000000007 L1 Icache : 64K, 2-way, 64b line L1 Dcache : 64K, 2-way, 64b line L2 cache : n/a L3 cache : n/a Ocsinventory-Unix-Agent-2.0.5/resources/dmidecode-openbsd-3.7010064400017500001750000000401021173606111100234030ustar00guiguiguigui# dmidecode 2.6 Legacy DMI 2.0 present. 41 structures occupying 1014 bytes. Table at 0x000F0800. Handle 0x0000 DMI type 0, 18 bytes. BIOS Information Vendor: Award Software International, Inc. Version: 4.51 PG Release Date: 02/11/99 Address: 0xE0000 Runtime Size: 128 kB ROM Size: 256 kB Characteristics: ISA is supported PCI is supported PNP is supported APM is supported BIOS is upgradeable BIOS shadowing is allowed ESCD support is available Boot from CD is supported Selectable boot is supported BIOS ROM is socketed EDD is supported 5.25"/360 KB floppy services are supported (int 13h) 5.25"/1.2 MB floppy services are supported (int 13h) 3.5"/720 KB floppy services are supported (int 13h) 3.5"/2.88 MB floppy services are supported (int 13h) Print screen service is supported (int 5h) 8042 keyboard services are supported (int 9h) Serial services are supported (int 14h) Printer services are supported (int 17h) CGA/mono video services are supported (int 10h) Handle 0x0001 DMI type 1, 8 bytes. System Information Manufacturer: VIA Technologies, Inc. Product Name: VT82C691 Version: Serial Number: Handle 0x0002 DMI type 2, 8 bytes. Base Board Information Manufacturer: Tekram Technology Co., Ltd. Product Name: P6PROA5 Version: Rev. 1.0 Serial Number: Handle 0x0003 DMI type 3, 9 bytes. Chassis Information Manufacturer: Type: Unknown Lock: Not Present Version: Serial Number: Asset Tag: Handle 0x0004 DMI type 4, 26 bytes. Processor Information Socket Designation: SLOT 1 Type: Central Processor Family: Pentium II Manufacturer: Intel ID: 52 06 00 00 FF F9 83 01 Signature: Type 0, Family 6, Model 5, Stepping 2 Flags: FPU (Floating-point unit on-chip) VME (Virtual mode extension) DE (Debugging extension) PSE (Page size extension) TSC (Time stamp counter) MSR (Model specific registers) PAE (Physical address extension) MCE (Machine check exception) CX8 (CMPXCHG8 instruction supported) SEP (Fast system call) MTRR (Memory type range registers) PGE (Page global enable) MCA (Machine check architecture) CMOV (Conditional move instruction supported) PAT (Page attribute table) PSE-36 (36-bit page size extension) MMX (MMX technology supported) FXSR (Fast floating-point save and restore) Version: Pentium II Voltage: 3.3 V External Clock: 100 MHz Max Speed: 500 MHz Current Speed: 400 MHz Status: Populated, Enabled Upgrade: Slot 1 Handle 0x0005 DMI type 5, 31 bytes. Memory Controller Information Error Detecting Method: 64-bit ECC Error Correcting Capabilities: Single-bit Error Correcting Supported Interleave: Four-way Interleave Current Interleave: One-way Interleave Maximum Memory Module Size: 256 MB Maximum Total Memory Size: 2048 MB Supported Speeds: 70 ns 60 ns Supported Memory Types: Other Unknown Standard FPM EDO Parity ECC SIMM DIMM SDRAM Memory Module Voltage: 5.0 V 3.3 V Associated Memory Slots: 8 0x0006 0x0007 0x0008 0x0009 0x000A 0x000B 0x000C 0x000D Handle 0x0007 DMI type 6, 12 bytes. Memory Module Information Socket Designation: BANK_1 Bank Connections: 2 Current Speed: 70 ns Type: Unknown Installed Size: Not Installed Enabled Size: Not Installed Error Status: OK Handle 0x0008 DMI type 6, 12 bytes. Memory Module Information Socket Designation: BANK_2 Bank Connections: 3 Current Speed: 70 ns Type: DIMM SDRAM Installed Size: 64 MB (Single-bank Connection) Enabled Size: 64 MB (Single-bank Connection) Error Status: OK Handle 0x0009 DMI type 6, 12 bytes. Memory Module Information Socket Designation: BANK_3 Bank Connections: 4 Current Speed: 70 ns Type: Unknown Installed Size: Not Installed Enabled Size: Not Installed Error Status: OK Handle 0x000A DMI type 6, 12 bytes. Memory Module Information Socket Designation: BANK_4 Bank Connections: 5 Current Speed: 70 ns Type: DIMM SDRAM Installed Size: 64 MB (Single-bank Connection) Enabled Size: 64 MB (Single-bank Connection) Error Status: OK Handle 0x000B DMI type 6, 12 bytes. Memory Module Information Socket Designation: BANK_5 Bank Connections: 6 Current Speed: 70 ns Type: DIMM SDRAM Installed Size: 64 MB (Single-bank Connection) Enabled Size: 64 MB (Single-bank Connection) Error Status: OK Handle 0x000C DMI type 6, 12 bytes. Memory Module Information Socket Designation: BANK_6 Bank Connections: 7 Current Speed: 70 ns Type: Unknown Installed Size: Not Installed Enabled Size: Not Installed Error Status: OK Handle 0x000D DMI type 6, 12 bytes. Memory Module Information Socket Designation: BANK_7 Bank Connections: 8 Current Speed: 70 ns Type: Unknown Installed Size: Not Installed Enabled Size: Not Installed Error Status: OK Handle 0x000E DMI type 7, 15 bytes. Cache Information Socket Designation: Internal Cache Configuration: Enabled, Not Socketed, Level 1 Operational Mode: Write Back Location: Internal Installed Size: 32 KB Maximum Size: 32 KB Supported SRAM Types: Synchronous Installed SRAM Type: Synchronous Handle 0x000F DMI type 7, 15 bytes. Cache Information Socket Designation: External Cache Configuration: Enabled, Not Socketed, Level 2 Operational Mode: Write Back Location: External Installed Size: 512 KB Maximum Size: 2048 KB Supported SRAM Types: Synchronous Installed SRAM Type: Synchronous Handle 0x0010 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: PRIMARY IDE Internal Connector Type: On Board IDE External Reference Designator: External Connector Type: None Port Type: Other Handle 0x0011 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: SECONDARY IDE Internal Connector Type: On Board IDE External Reference Designator: External Connector Type: None Port Type: Other Handle 0x0012 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: FLOPPY Internal Connector Type: On Board Floppy External Reference Designator: External Connector Type: None Port Type: Other Handle 0x0013 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: COM1 Internal Connector Type: 9 Pin Dual Inline (pin 10 cut) External Reference Designator: External Connector Type: DB-9 male Port Type: Serial Port 16550 Compatible Handle 0x0014 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: COM2 Internal Connector Type: 9 Pin Dual Inline (pin 10 cut) External Reference Designator: External Connector Type: DB-9 male Port Type: Serial Port 16550 Compatible Handle 0x0015 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: LPT1 Internal Connector Type: DB-25 female External Reference Designator: External Connector Type: DB-25 female Port Type: Parallel Port ECP/EPP Handle 0x0016 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: Keyboard Internal Connector Type: Other External Reference Designator: External Connector Type: PS/2 Port Type: Keyboard Port Handle 0x0017 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: PS/2 Mouse Internal Connector Type: Other External Reference Designator: External Connector Type: PS/2 Port Type: Mouse Port Handle 0x0018 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: IR_CON Internal Connector Type: Other External Reference Designator: External Connector Type: Infrared Port Type: Other Handle 0x0019 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: IR_CON2 Internal Connector Type: Other External Reference Designator: External Connector Type: Infrared Port Type: Other Handle 0x001A DMI type 9, 12 bytes. System Slot Information Designation: AGP Type: 32-bit PCI Current Usage: In Use Length: Long ID: 32 Characteristics: 5.0 V is provided Handle 0x001B DMI type 9, 12 bytes. System Slot Information Designation: PCI1 Type: 32-bit PCI Current Usage: Available Length: Long ID: 12 Characteristics: 5.0 V is provided Handle 0x001C DMI type 9, 12 bytes. System Slot Information Designation: PCI2 Type: 32-bit PCI Current Usage: Available Length: Long ID: 11 Characteristics: 5.0 V is provided Handle 0x001D DMI type 9, 12 bytes. System Slot Information Designation: PCI3 Type: 32-bit PCI Current Usage: In Use Length: Long ID: 10 Characteristics: 5.0 V is provided Handle 0x001E DMI type 9, 12 bytes. System Slot Information Designation: PCI4 Type: 32-bit PCI Current Usage: Available Length: Long ID: 9 Characteristics: 5.0 V is provided Handle 0x001F DMI type 9, 12 bytes. System Slot Information Designation: PCI5 Type: 32-bit PCI Current Usage: Available Length: Long ID: 8 Characteristics: 5.0 V is provided Handle 0x0020 DMI type 9, 12 bytes. System Slot Information Designation: ISA Type: 16-bit ISA Current Usage: Unknown Length: Long Characteristics: 5.0 V is provided Handle 0x0021 DMI type 9, 12 bytes. System Slot Information Designation: ISA Type: 16-bit ISA Current Usage: Unknown Length: Long Characteristics: 5.0 V is provided Handle 0x0022 DMI type 9, 12 bytes. System Slot Information Designation: PCIx Type: 32-bit PCI Current Usage: Unknown Length: Long ID: 0 Characteristics: 5.0 V is provided Handle 0x0023 DMI type 9, 12 bytes. System Slot Information Designation: PCIx Type: 32-bit PCI Current Usage: Unknown Length: Long ID: 0 Characteristics: 5.0 V is provided Handle 0x0024 DMI type 9, 12 bytes. System Slot Information Designation: PCIx Type: 32-bit PCI Current Usage: Unknown Length: Long ID: 0 Characteristics: 5.0 V is provided Handle 0x0025 DMI type 9, 12 bytes. System Slot Information Designation: PCIx Type: 32-bit PCI Current Usage: Unknown Length: Long ID: 0 Characteristics: 5.0 V is provided Handle 0x0026 DMI type 9, 12 bytes. System Slot Information Designation: PCIx Type: 32-bit PCI Current Usage: Unknown Length: Long ID: 0 Characteristics: 5.0 V is provided Handle 0x0027 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: USB Internal Connector Type: Other External Reference Designator: External Connector Type: Other Port Type: USB Handle 0x0028 DMI type 13, 22 bytes. BIOS Language Information Installable Languages: 3 en|US|iso8859-1 fr|CA|iso8859-1 ja|JP|unicode Currently Installed Language: en|US|iso8859-1 Wrong DMI structures count: 41 announced, only 40 decoded. Ocsinventory-Unix-Agent-2.0.5/resources/dmidecode.rhel.2.1010064400017500001750000000134251173606111100227060ustar00guiguiguiguiPNP BIOS present. PNP BIOS present. SYSID present. SMBIOS 2.3 present. DMI 2.3 present. 40 structures occupying 1146 bytes. DMI table at 0x000FAC20. Handle 0x0000 DMI type 0, 20 bytes. BIOS Information Block Vendor: IBM Version: -[JPE130AUS-1.30]- Release: 12/11/2002 BIOS base: 0xF0000 ROM size: 448K Capabilities: Flags: 0x000000007FFBDE90 Handle 0x0100 DMI type 1, 25 bytes. System Information Block Vendor: IBM Product: -[84803AX]- Version: IBM CORPORATION Serial Number: KBKGW40 Handle 0x0200 DMI type 2, 8 bytes. Board Information Block Vendor: IBM Product: -[M51G]- Version: -1 Serial Number: NA60B7Y0S3Q Handle 0x0300 DMI type 3, 17 bytes. Chassis Information Block Vendor: IBM Chassis Type: Mini Tower Lock present Version: N/A Serial Number: N/A Asset Tag: N/A Handle 0x0400 DMI type 4, 32 bytes. Processor Socket Designation: CPU1 Processor Type: Central Processor Processor Family: Processor Manufacturer: Intel Processor Version: Pentium 4 Handle 0x0500 DMI type 5, 20 bytes. Memory Controller Handle 0x0600 DMI type 6, 12 bytes. Memory Bank Socket: DIMM1 Banks: 0 Type: ECC DIMM SDRAM Installed Size: 256Mbyte Enabled Size: 256Mbyte Handle 0x0601 DMI type 6, 12 bytes. Memory Bank Socket: DIMM2 Type: UNKNOWN Installed Size: Not Installed Enabled Size: Not Installed Handle 0x0700 DMI type 7, 19 bytes. Cache Socket: CPU1 L1 socketed Internal Cache: write-back L1 Cache Size: 32K L1 Cache Maximum: 20K L1 Cache Type: Unknown Handle 0x0701 DMI type 7, 19 bytes. Cache Socket: CPU1 L2 socketed Internal Cache: write-back L2 Cache Size: 512K L2 Cache Maximum: 512K L2 Cache Type: Pipeline burst Handle 0x0800 DMI type 8, 9 bytes. Port Connector Internal Designator: Internal Connector Type: None External Designator: SERIAL1 External Connector Type: DB-9 pin male Port Type: Serial Port 16650A Compatible Handle 0x0801 DMI type 8, 9 bytes. Port Connector Internal Designator: Internal Connector Type: None External Designator: SERIAL2 External Connector Type: DB-9 pin male Port Type: Serial Port 16650A Compatible Handle 0x0802 DMI type 8, 9 bytes. Port Connector Internal Designator: Internal Connector Type: None External Designator: PRINTER External Connector Type: DB-25 pin female Port Type: Parallel Port ECP/EPP Handle 0x0803 DMI type 8, 9 bytes. Port Connector Internal Designator: Internal Connector Type: None External Designator: KEYBOARD External Connector Type: PS/2 Port Type: Keyboard Port Handle 0x0804 DMI type 8, 9 bytes. Port Connector Internal Designator: Internal Connector Type: None External Designator: MOUSE External Connector Type: PS/2 Port Type: Mouse Port Handle 0x0805 DMI type 8, 9 bytes. Port Connector Internal Designator: Internal Connector Type: None External Designator: USB1 External Connector Type: Access Bus (USB) Port Type: USB Handle 0x0806 DMI type 8, 9 bytes. Port Connector Internal Designator: Internal Connector Type: None External Designator: USB2 External Connector Type: Access Bus (USB) Port Type: USB Handle 0x0807 DMI type 8, 9 bytes. Port Connector Internal Designator: IDE1 Internal Connector Type: On Board IDE External Designator: External Connector Type: None Port Type: Other Handle 0x0808 DMI type 8, 9 bytes. Port Connector Internal Designator: IDE2 Internal Connector Type: On Board IDE External Designator: External Connector Type: None Port Type: Other Handle 0x0809 DMI type 8, 9 bytes. Port Connector Internal Designator: FDD Internal Connector Type: On Board Floppy External Designator: External Connector Type: None Port Type: Other Handle 0x080A DMI type 8, 9 bytes. Port Connector Internal Designator: SCSI1 Internal Connector Type: SSA SCSI External Designator: External Connector Type: None Port Type: SCSI II Handle 0x0900 DMI type 9, 12 bytes. Card Slot Slot: AGP Type: Slot Features: 5v Handle 0x0901 DMI type 9, 12 bytes. Card Slot Slot: PCI1 Type: 32bit PCI Status: Available. Slot Features: 5v Handle 0x0902 DMI type 9, 13 bytes. Card Slot Slot: PCI2 Type: 32bit PCI Status: In use. Slot Features: 5v Handle 0x0903 DMI type 9, 13 bytes. Card Slot Slot: PCI3 Type: 32bit PCI Status: Available. Slot Features: 5v Handle 0x0904 DMI type 9, 13 bytes. Card Slot Slot: PCI4 Type: 32bit PCI Status: Available. Slot Features: 5v Handle 0x0905 DMI type 9, 13 bytes. Card Slot Slot: PCI5 Type: 32bit PCI Status: Available. Slot Features: 5v Handle 0x0A00 DMI type 10, 14 bytes. On Board Devices Information Description: ATI RAGE XL : Enabled Type: Description: Adaptec 7892 SCSI : Enabled Type: Description: Broadcom 5702 : Enabled Type: Description: AC 97 : Enabled Type: Description: IBM Automatic Server Restart - Machine Type 8480 : Enabled Type: Handle 0x0D00 DMI type 13, 22 bytes. BIOS Language Information Handle 0x0F00 DMI type 15, 39 bytes. Event Log Log Area: 511 bytes. Log Header At: 0. Log Data At: 16. Log Type: 3. Log Valid: Yes. Handle 0x1000 DMI type 16, 15 bytes. Physical Memory Array Handle 0x1100 DMI type 17, 23 bytes. Memory Device Handle 0x1101 DMI type 17, 23 bytes. Memory Device Handle 0x1300 DMI type 19, 15 bytes. Memory Array Mapped Address Handle 0x1400 DMI type 20, 19 bytes. Memory Device Mapped Address Handle 0x1401 DMI type 20, 19 bytes. Memory Device Mapped Address Handle 0x2000 DMI type 32, 12 bytes. System Boot Information Handle 0x2200 DMI type 34, 11 bytes. 01 06 5a 00 00 00 05 ..Z.... Handle 0x8900 DMI type 137, 10 bytes. 01 02 03 04 05 06 ...... Handle 0x7F00 DMI type 127, 4 bytes. End-of-Table Ocsinventory-Unix-Agent-2.0.5/resources/dmidecode.rhel.3.4010064400017500001750000000300011173606111100226770ustar00guiguiguigui# dmidecode 2.2 SMBIOS 2.33 present. 59 structures occupying 2374 bytes. Table at 0x7FF77000. Handle 0x0000 DMI type 0, 20 bytes. BIOS Information Vendor: IBM Version: IBM BIOS Version 1.57-[PME157AUS-1.57]- Release Date: 08/25/2005 Address: 0xE03F0 Runtime Size: 130064 bytes ROM Size: 1024 kB Characteristics: PCI is supported PNP is supported BIOS is upgradeable BIOS shadowing is allowed ESCD support is available Boot from CD is supported Selectable boot is supported BIOS ROM is socketed Print screen service is supported (int 5h) Serial services are supported (int 14h) ACPI is supported USB legacy is supported BIOS boot specification is supported Handle 0x0001 DMI type 1, 25 bytes. System Information Manufacturer: IBM Product Name: IBM eServer x226-[8488PCR]- Version: Not Applicable Serial Number: KDXPC16 UUID: A8346631-8E88-3AE3-898C-F3AC9F61C316 Wake-up Type: Power Switch Handle 0x0002 DMI type 2, 8 bytes. Base Board Information Manufacturer: IBM Product Name: MSI-9151 Boards Version: Not Applicable Serial Number: #A123456789 Handle 0x0003 DMI type 3, 17 bytes. Chassis Information Manufacturer: IBM Type: Tower Lock: Not Present Version: N/A Serial Number: N/A Asset Tag: 12345678901234567890123456789012 Boot-up State: Safe Power Supply State: Safe Thermal State: Safe Security Status: None OEM Information: 0x00001234 Handle 0x0004 DMI type 4, 35 bytes. Processor Information Socket Designation: CPU#1 Type: Central Processor Family: Xeon MP Manufacturer: Intel Corporation ID: 41 0F 00 00 FF FB EB BF Signature: Type 0, Family F, Model 4, Stepping 1 Flags: FPU (Floating-point unit on-chip) VME (Virtual mode extension) DE (Debugging extension) PSE (Page size extension) TSC (Time stamp counter) MSR (Model specific registers) PAE (Physical address extension) MCE (Machine check exception) CX8 (CMPXCHG8 instruction supported) APIC (On-chip APIC hardware supported) SEP (Fast system call) MTRR (Memory type range registers) PGE (Page global enable) MCA (Machine check architecture) CMOV (Conditional move instruction supported) PAT (Page attribute table) PSE-36 (36-bit page size extension) CLFSH (CLFLUSH instruction supported) DS (Debug store) ACPI (ACPI supported) MMX (MMX technology supported) FXSR (Fast floating-point save and restore) SSE (Streaming SIMD extensions) SSE2 (Streaming SIMD extensions 2) SS (Self-snoop) HTT (Hyper-threading technology) TM (Thermal monitor supported) SBF (Signal break on FERR) Version: Intel(R) Xeon(TM) CPU 2.80GHz Voltage: 1.3 V External Clock: 200 MHz Max Speed: 3600 MHz Current Speed: 2800 MHz Status: Populated, Enabled Upgrade: ZIF Socket L1 Cache Handle: 0x0006 L2 Cache Handle: 0x0007 L3 Cache Handle: Not Provided Serial Number: Asset Tag: Part Number: Handle 0x0005 DMI type 4, 35 bytes. Processor Information Socket Designation: CPU#2 Type: Central Processor Family: Xeon MP Manufacturer: Intel Corporation ID: 41 0F 00 00 FF FB EB BF Signature: Type 0, Family F, Model 4, Stepping 1 Flags: FPU (Floating-point unit on-chip) VME (Virtual mode extension) DE (Debugging extension) PSE (Page size extension) TSC (Time stamp counter) MSR (Model specific registers) PAE (Physical address extension) MCE (Machine check exception) CX8 (CMPXCHG8 instruction supported) APIC (On-chip APIC hardware supported) SEP (Fast system call) MTRR (Memory type range registers) PGE (Page global enable) MCA (Machine check architecture) CMOV (Conditional move instruction supported) PAT (Page attribute table) PSE-36 (36-bit page size extension) CLFSH (CLFLUSH instruction supported) DS (Debug store) ACPI (ACPI supported) MMX (MMX technology supported) FXSR (Fast floating-point save and restore) SSE (Streaming SIMD extensions) SSE2 (Streaming SIMD extensions 2) SS (Self-snoop) HTT (Hyper-threading technology) TM (Thermal monitor supported) SBF (Signal break on FERR) Version: Intel(R) Xeon(TM) CPU 2.80GHz Voltage: 1.3 V External Clock: 200 MHz Max Speed: 3600 MHz Current Speed: 2800 MHz Status: Populated, Enabled Upgrade: ZIF Socket L1 Cache Handle: 0x0009 L2 Cache Handle: 0x000A L3 Cache Handle: Not Provided Serial Number: Asset Tag: Part Number: Handle 0x0006 DMI type 7, 19 bytes. Cache Information Socket Designation: L1 Cache for CPU#1 Configuration: Enabled, Not Socketed, Level 1 Operational Mode: Write Back Location: Internal Installed Size: 16 KB Maximum Size: 16 KB Supported SRAM Types: Burst Pipeline Burst Installed SRAM Type: Burst Pipeline Burst Speed: Unknown Error Correction Type: Single-bit ECC System Type: Data Associativity: 4-way Set-associative Handle 0x0007 DMI type 7, 19 bytes. Cache Information Socket Designation: L2 Cache for CPU#1 Configuration: Enabled, Not Socketed, Level 2 Operational Mode: Write Back Location: Internal Installed Size: 1024 KB Maximum Size: 2048 KB Supported SRAM Types: Burst Pipeline Burst Installed SRAM Type: Burst Speed: Unknown Error Correction Type: Single-bit ECC System Type: Unified Associativity: 4-way Set-associative Handle 0x0008 DMI type 126, 19 bytes. Inactive Handle 0x0009 DMI type 7, 19 bytes. Cache Information Socket Designation: L1 Cache for CPU#2 Configuration: Enabled, Not Socketed, Level 1 Operational Mode: Write Back Location: Internal Installed Size: 16 KB Maximum Size: 16 KB Supported SRAM Types: Burst Pipeline Burst Installed SRAM Type: Burst Pipeline Burst Speed: Unknown Error Correction Type: Single-bit ECC System Type: Data Associativity: 4-way Set-associative Handle 0x000A DMI type 7, 19 bytes. Cache Information Socket Designation: L2 Cache for CPU#2 Configuration: Enabled, Not Socketed, Level 2 Operational Mode: Write Back Location: Internal Installed Size: 1024 KB Maximum Size: 2048 KB Supported SRAM Types: Burst Pipeline Burst Installed SRAM Type: Burst Speed: Unknown Error Correction Type: Single-bit ECC System Type: Unified Associativity: 4-way Set-associative Handle 0x000B DMI type 126, 19 bytes. Inactive Handle 0x000C DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: J2A1 Internal Connector Type: 9 Pin Dual Inline (pin 10 cut) External Reference Designator: COM 1 External Connector Type: DB-9 male Port Type: Serial Port 16550A Compatible Handle 0x000D DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: J2A2 Internal Connector Type: 9 Pin Dual Inline (pin 10 cut) External Reference Designator: COM 2 External Connector Type: DB-9 male Port Type: Serial Port 16550A Compatible Handle 0x000E DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: J3A1 Internal Connector Type: 25 Pin Dual Inline (pin 26 cut) External Reference Designator: Parallel External Connector Type: DB-25 female Port Type: Parallel Port ECP/EPP Handle 0x000F DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: J1A1 Internal Connector Type: None External Reference Designator: Keyboard External Connector Type: Circular DIN-8 male Port Type: Keyboard Port Handle 0x0010 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: J1A1 Internal Connector Type: None External Reference Designator: PS/2 Mouse External Connector Type: Circular DIN-8 male Port Type: Keyboard Port Handle 0x0011 DMI type 9, 13 bytes. System Slot Information Designation: PCIE Slot #1 Type: PCI Current Usage: Available Length: Other ID: 1 Characteristics: PME signal is supported Handle 0x0012 DMI type 9, 13 bytes. System Slot Information Designation: PCI/33 Slot #2 Type: 32-bit PCI Current Usage: Available Length: Short ID: 2 Characteristics: 5.0 V is provided 3.3 V is provided PME signal is supported Handle 0x0013 DMI type 9, 13 bytes. System Slot Information Designation: PCI/33 Slot #3 Type: 32-bit PCI Current Usage: Available Length: Short ID: 3 Characteristics: 5.0 V is provided 3.3 V is provided PME signal is supported Handle 0x0014 DMI type 9, 13 bytes. System Slot Information Designation: PCIX 133 Slot #4 Type: 64-bit PCI-X Current Usage: Available Length: Long ID: 4 Characteristics: 3.3 V is provided PME signal is supported Handle 0x0015 DMI type 9, 13 bytes. System Slot Information Designation: PCIX100(ZCR) Slot #5 Type: 64-bit PCI-X Current Usage: Available Length: Long ID: 5 Characteristics: 3.3 V is provided PME signal is supported Handle 0x0016 DMI type 9, 13 bytes. System Slot Information Designation: PCIX100 Slot #6 Type: 64-bit PCI-X Current Usage: Available Length: Long ID: 6 Characteristics: 3.3 V is provided PME signal is supported Handle 0x0017 DMI type 10, 6 bytes. On Board Device Information Type: Other Status: Enabled Description: IBM Automatic Server Restart - Machine Type 8648 Handle 0x0018 DMI type 10, 6 bytes. On Board Device Information Type: Video Status: Enabled Description: ATI Rage 7000 Handle 0x0019 DMI type 10, 6 bytes. On Board Device Information Type: SCSI Controller Status: Enabled Description: Adaptec AIC 7902 Handle 0x001A DMI type 10, 6 bytes. On Board Device Information Type: Ethernet Status: Enabled Description: BoardCom BCM5721 Handle 0x001D DMI type 11, 5 bytes. OEM Strings String 1: IBM Remote Supervisor Adapter -[GRET15AUS]- Handle 0x001E DMI type 12, 5 bytes. System Configuration Options Option 1: JCMOS1: 1-2 Keep CMOS Data(Default), 2-3 Clear CMOS Data (make sure the AC power cord(s) is(are) removed from the system) Handle 0x001F DMI type 12, 5 bytes. System Configuration Options Option 1: JCON1: 1-2 Normal(Default), 2-3 Configuration, No Jumper - BIOS Crisis Recovery Handle 0x0020 DMI type 13, 22 bytes. BIOS Language Information Installable Languages: 1 en|US|iso8859-1 Currently Installed Language: en|US|iso8859-1 Handle 0x0021 DMI type 15, 29 bytes. System Event Log Area Length: 320 bytes Header Start Offset: 0x0000 Header Length: 16 bytes Data Start Offset: 0x0010 Access Method: General-pupose non-volatile data functions Access Address: 0x0000 Status: Valid, Not Full Change Token: 0x00000013 Header Format: Type 1 Supported Log Type Descriptors: 3 Descriptor 1: POST error Data Format 1: POST results bitmap Descriptor 2: Single-bit ECC memory error Data Format 2: Multiple-event Descriptor 3: Multi-bit ECC memory error Data Format 3: Multiple-event Handle 0x0022 DMI type 16, 15 bytes. Physical Memory Array Location: System Board Or Motherboard Use: System Memory Error Correction Type: Single-bit ECC Maximum Capacity: 16 GB Error Information Handle: No Error Number Of Devices: 6 Handle 0x0023 DMI type 17, 27 bytes. Memory Device Array Handle: 0x0022 Error Information Handle: No Error Total Width: 72 bits Data Width: 64 bits Size: 512 MB Form Factor: DIMM Set: 1 Locator: DIMM 1 Bank Locator: BANK 1 Type: DDR Type Detail: Synchronous Speed: 400 MHz (2.5 ns) Manufacturer: Serial Number: 460360BB Asset Tag: 3342 Part Number: M3 93T6553BZ3-CCC Handle 0x0024 DMI type 17, 27 bytes. Memory Device Array Handle: 0x0022 Error Information Handle: No Error Total Width: 72 bits Data Width: 64 bits Size: 512 MB Form Factor: DIMM Set: 1 Locator: DIMM 2 Bank Locator: BANK 1 Type: DDR Type Detail: Synchronous Speed: 400 MHz (2.5 ns) Manufacturer: Serial Number: 460360E8 Asset Tag: 3342 Part Number: M3 93T6553BZ3-CCC Handle 0x0025 DMI type 17, 27 bytes. Memory Device Array Handle: 0x0022 Error Information Handle: No Error Total Width: 72 bits Data Width: 64 bits Size: 512 MB Form Factor: DIMM Set: 2 Locator: DIMM 3 Bank Locator: BANK 2 Type: DDR Type Detail: Synchronous Speed: 400 MHz (2.5 ns) Manufacturer: Ocsinventory-Unix-Agent-2.0.5/resources/dmidecode-freebsd-6.2010064400017500001750000000144711173606111100233730ustar00guiguiguigui# dmidecode 2.8 SMBIOS 2.3 present. 25 structures occupying 643 bytes. Table at 0x000F0800. Handle 0x0000, DMI type 1, 25 bytes System Information Manufacturer: Product Name: Version: Serial Number: UUID: Not Present Wake-up Type: Power Switch Handle 0x0001, DMI type 2, 8 bytes Base Board Information Manufacturer: Product Name: CN700-8237R Version: Serial Number: Handle 0x0002, DMI type 3, 17 bytes Chassis Information Manufacturer: Type: Desktop Lock: Not Present Version: Serial Number: Asset Tag: Boot-up State: Unknown Power Supply State: Unknown Thermal State: Unknown Security Status: Unknown OEM Information: 0x00000000 Handle 0x0003, DMI type 4, 35 bytes Processor Information Socket Designation: NanoBGA2 Type: Central Processor Family: Other Manufacturer: VIA ID: A9 06 00 00 FF BB C9 A7 Version: VIA C7 Voltage: 1.1 V External Clock: 100 MHz Max Speed: 2000 MHz Current Speed: 2000 MHz Status: Populated, Enabled Upgrade: None L1 Cache Handle: 0x0006 L2 Cache Handle: 0x0007 L3 Cache Handle: Not Provided Serial Number: Asset Tag: Part Number: Handle 0x0004, DMI type 5, 18 bytes Memory Controller Information Error Detecting Method: None Error Correcting Capabilities: None Supported Interleave: Eight-way Interleave Current Interleave: Four-way Interleave Maximum Memory Module Size: 1024 MB Maximum Total Memory Size: 1024 MB Supported Speeds: 70 ns 60 ns Supported Memory Types: DIMM SDRAM Memory Module Voltage: 2.9 V Associated Memory Slots: 1 0x0005 Enabled Error Correcting Capabilities: None Handle 0x0005, DMI type 6, 12 bytes Memory Module Information Socket Designation: A0 Bank Connections: 0 Current Speed: 37 ns Type: Other Installed Size: 512 MB (Single-bank Connection) Enabled Size: 512 MB (Single-bank Connection) Error Status: OK Handle 0x0006, DMI type 7, 19 bytes Cache Information Socket Designation: Internal Cache Configuration: Enabled, Not Socketed, Level 1 Operational Mode: Write Back Location: Internal Installed Size: 32 KB Maximum Size: 32 KB Supported SRAM Types: Synchronous Installed SRAM Type: Synchronous Speed: Unknown Error Correction Type: Unknown System Type: Unknown Associativity: 4-way Set-associative Handle 0x0007, DMI type 7, 19 bytes Cache Information Socket Designation: Internal Cache Configuration: Enabled, Not Socketed, Level 2 Operational Mode: Write Back Location: External Installed Size: 0 KB Maximum Size: 0 KB Supported SRAM Types: Synchronous Installed SRAM Type: Synchronous Speed: Unknown Error Correction Type: Unknown System Type: Unknown Associativity: Unknown Handle 0x0008, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: PRIMARY IDE Internal Connector Type: On Board IDE External Reference Designator: Not Specified External Connector Type: None Port Type: Other Handle 0x0009, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: SECONDARY IDE Internal Connector Type: On Board IDE External Reference Designator: Not Specified External Connector Type: None Port Type: Other Handle 0x000A, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: FDD Internal Connector Type: On Board Floppy External Reference Designator: Not Specified External Connector Type: None Port Type: 8251 FIFO Compatible Handle 0x000B, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: COM1 Internal Connector Type: 9 Pin Dual Inline (pin 10 cut) External Reference Designator: External Connector Type: DB-9 male Port Type: Serial Port 16450 Compatible Handle 0x000C, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: COM2 Internal Connector Type: 9 Pin Dual Inline (pin 10 cut) External Reference Designator: External Connector Type: DB-9 male Port Type: Serial Port 16450 Compatible Handle 0x000D, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: LPT1 Internal Connector Type: DB-25 female External Reference Designator: External Connector Type: DB-25 female Port Type: Parallel Port ECP/EPP Handle 0x000E, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: Keyboard Internal Connector Type: PS/2 External Reference Designator: External Connector Type: PS/2 Port Type: Keyboard Port Handle 0x000F, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: PS/2 Mouse Internal Connector Type: PS/2 External Reference Designator: External Connector Type: PS/2 Port Type: Mouse Port Handle 0x0010, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: Not Specified Internal Connector Type: None External Reference Designator: USB0 External Connector Type: Other Port Type: USB Handle 0x0011, DMI type 9, 13 bytes System Slot Information Designation: PCI0 Type: 32-bit PCI Current Usage: Available Length: Long ID: 1 Characteristics: 5.0 V is provided PME signal is supported Handle 0x0012, DMI type 13, 22 bytes BIOS Language Information Installable Languages: 3 n|US|iso8859-1 r|CA|iso8859-1 a|JP|unicode Currently Installed Language: n|US|iso8859-1 Handle 0x0013, DMI type 16, 15 bytes Physical Memory Array Location: System Board Or Motherboard Use: System Memory Error Correction Type: None Maximum Capacity: 512 MB Error Information Handle: Not Provided Number Of Devices: 1 Handle 0x0014, DMI type 17, 27 bytes Memory Device Array Handle: 0x0013 Error Information Handle: Not Provided Total Width: Unknown Data Width: Unknown Size: 512 MB Form Factor: DIMM Set: None Locator: A0 Bank Locator: Bank0/1 Type: Unknown Type Detail: None Speed: Unknown Manufacturer: None Serial Number: None Asset Tag: None Part Number: None Handle 0x0015, DMI type 19, 15 bytes Memory Array Mapped Address Starting Address: 0x00000000000 Ending Address: 0x0001FFFFFFF Range Size: 512 MB Physical Array Handle: 0x0013 Partition Width: 0 Handle 0x0016, DMI type 20, 19 bytes Memory Device Mapped Address Starting Address: 0x00000000000 Ending Address: 0x0001FFFFFFF Range Size: 512 MB Physical Device Handle: 0x0014 Memory Array Mapped Address Handle: 0x0015 Partition Row Position: 1 Handle 0x0017, DMI type 32, 11 bytes System Boot Information Status: No errors detected Handle 0x0018, DMI type 127, 4 bytes End Of Table Ocsinventory-Unix-Agent-2.0.5/resources/dmidecode.rhel.4.6010064400017500001750000000456161173606111100227240ustar00guiguiguigui# dmidecode 2.2 SMBIOS 2.4 present. 74 structures occupying 2059 bytes. Table at 0x000EE000. Handle 0x0000 DMI type 0, 24 bytes. BIOS Information Vendor: HP Version: D21 Release Date: 01/24/2008 Address: 0xF0000 Runtime Size: 64 kB ROM Size: 4096 kB Characteristics: PCI is supported PNP is supported BIOS is upgradeable BIOS shadowing is allowed ESCD support is available Boot from CD is supported Selectable boot is supported EDD is supported 5.25"/360 KB floppy services are supported (int 13h) 5.25"/1.2 MB floppy services are supported (int 13h) 3.5"/720 KB floppy services are supported (int 13h) Print screen service is supported (int 5h) 8042 keyboard services are supported (int 9h) Serial services are supported (int 14h) Printer services are supported (int 17h) CGA/mono video services are supported (int 10h) ACPI is supported USB legacy is supported BIOS boot specification is supported Function key-initiated network boot is supported Handle 0x0100 DMI type 1, 27 bytes. System Information Manufacturer: HP Product Name: ProLiant ML350 G5 Version: Not Specified Serial Number: GB8814HE7S UUID: 34313236-3435-4742-3838-313448453753 Wake-up Type: Power Switch Handle 0x0300 DMI type 3, 17 bytes. Chassis Information Manufacturer: HP Type: Tower Lock: Not Present Version: Not Specified Serial Number: GB8814HE7S Asset Tag: Boot-up State: Unknown Power Supply State: Unknown Thermal State: Unknown Security Status: Unknown OEM Information: 0x00000000 Handle 0x0400 DMI type 4, 40 bytes. Processor Information Socket Designation: Proc 1 Type: Central Processor Family: Xeon Manufacturer: Intel ID: 76 06 01 00 FF FB EB BF Signature: Type 0, Family 6, Model 17, Stepping 6 Flags: FPU (Floating-point unit on-chip) VME (Virtual mode extension) DE (Debugging extension) PSE (Page size extension) TSC (Time stamp counter) MSR (Model specific registers) PAE (Physical address extension) MCE (Machine check exception) CX8 (CMPXCHG8 instruction supported) APIC (On-chip APIC hardware supported) SEP (Fast system call) MTRR (Memory type range registers) PGE (Page global enable) MCA (Machine check architecture) CMOV (Conditional move instruction supported) PAT (Page attribute table) PSE-36 (36-bit page size extension) CLFSH (CLFLUSH instruction supported) DS (Debug store) ACPI (ACPI supported) MMX (MMX technology supported) FXSR (Fast floating-point save and restore) SSE (Streaming SIMD extensions) SSE2 (Streaming SIMD extensions 2) SS (Self-snoop) HTT (Hyper-threading technology) TM (Thermal monitor supported) SBF (Signal break on FERR) Version: Not Specified Voltage: 1.4 V External Clock: 1333 MHz Max Speed: 4800 MHz Current Speed: 2333 MHz Status: Populated, Enabled Upgrade: ZIF Socket L1 Cache Handle: 0x0710 L2 Cache Handle: 0x0720 L3 Cache Handle: 0x0730 Serial Number: Not Specified Asset Tag: Not Specified Part Number: Not Specified Handle 0x0406 DMI type 4, 40 bytes. Processor Information Socket Designation: Proc 2 Type: Central Processor Family: Xeon Manufacturer: Intel ID: 00 00 00 00 00 00 00 00 Signature: Type 0, Family 0, Model 0, Stepping 0 Flags: None Version: Not Specified Voltage: 1.4 V External Clock: 200 MHz Max Speed: 4800 MHz Current Speed: Unknown Status: Unpopulated Upgrade: ZIF Socket L1 Cache Handle: 0x0716 L2 Cache Handle: 0x0726 L3 Cache Handle: 0x0736 Serial Number: Not Specified Asset Tag: Not Specified Part Number: Not Specified Handle 0x0710 DMI type 7, 19 bytes. Cache Information Socket Designation: Processor 1 Internal L1 Cache Configuration: Enabled, Not Socketed, Level 1 Operational Mode: Write Back Location: Internal Installed Size: 128 KB Maximum Size: 128 KB Supported SRAM Types: Burst Installed SRAM Type: Burst Speed: Unknown Error Correction Type: Single-bit ECC System Type: Data Associativity: 8-way Set-associative Handle 0x0716 DMI type 7, 19 bytes. Cache Information Socket Designation: Processor 2 Internal L1 Cache Configuration: Disabled, Not Socketed, Level 1 Operational Mode: Unknown Location: Internal Installed Size: 0 KB Maximum Size: 128 KB Supported SRAM Types: Burst Installed SRAM Type: Burst Speed: Unknown Error Correction Type: Single-bit ECC System Type: Data Associativity: 8-way Set-associative Handle 0x0720 DMI type 7, 19 bytes. Cache Information Socket Designation: Processor 1 Internal L2 Cache Configuration: Enabled, Not Socketed, Level 2 Operational Mode: Write Back Location: Internal Installed Size: 12288 KB Maximum Size: 16384 KB Supported SRAM Types: Burst Installed SRAM Type: Burst Speed: Unknown Error Correction Type: Single-bit ECC System Type: Unknown Associativity: 8-way Set-associative Handle 0x0726 DMI type 7, 19 bytes. Cache Information Socket Designation: Processor 2 Internal L2 Cache Configuration: Disabled, Not Socketed, Level 2 Operational Mode: Unknown Location: Internal Installed Size: 0 KB Maximum Size: 16384 KB Supported SRAM Types: Burst Installed SRAM Type: Burst Speed: Unknown Error Correction Type: Single-bit ECC System Type: Unknown Associativity: 8-way Set-associative Handle 0x0730 DMI type 7, 19 bytes. Cache Information Socket Designation: Processor 1 Internal L3 Cache Configuration: Disabled, Not Socketed, Level 3 Operational Mode: Unknown Location: Internal Installed Size: 0 KB Maximum Size: 8192 KB Supported SRAM Types: Burst Installed SRAM Type: Burst Speed: Unknown Error Correction Type: Single-bit ECC System Type: Unknown Associativity: Other Handle 0x0736 DMI type 7, 19 bytes. Cache Information Socket Designation: Processor 2 Internal L3 Cache Configuration: Disabled, Not Socketed, Level 3 Operational Mode: Unknown Location: Internal Installed Size: 0 KB Maximum Size: 8192 KB Supported SRAM Types: Burst Installed SRAM Type: Burst Speed: Unknown Error Correction Type: Single-bit ECC System Type: Unknown Associativity: Other Handle 0x0801 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: J16 Internal Connector Type: Access Bus (USB) External Reference Designator: USB Port 1 External Connector Type: Access Bus (USB) Port Type: USB Handle 0x0802 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: J19 Internal Connector Type: Access Bus (USB) External Reference Designator: USB Port 2 External Connector Type: Access Bus (USB) Port Type: USB Handle 0x0803 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: J69 Internal Connector Type: Access Bus (USB) External Reference Designator: USB Port 3 External Connector Type: Access Bus (USB) Port Type: USB Handle 0x0804 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: J69 Internal Connector Type: Access Bus (USB) External Reference Designator: USB Port 4 External Connector Type: Access Bus (USB) Port Type: USB Handle 0x0805 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: J02 Internal Connector Type: Access Bus (USB) External Reference Designator: USB Port 5 External Connector Type: Access Bus (USB) Port Type: USB Handle 0x0806 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: J03 Internal Connector Type: Access Bus (USB) External Reference Designator: USB Port 6 External Connector Type: Access Bus (USB) Port Type: USB Handle 0x0901 DMI type 9, 13 bytes. System Slot Information Designation: PCI Slot 1 Type: 64-bit PCI-X Current Usage: Available Length: Long ID: 1 Characteristics: 3.3 V is provided PME signal is supported Handle 0x0902 DMI type 9, 13 bytes. System Slot Information Designation: PCI Slot 2 Type: 64-bit PCI-X Current Usage: Available Length: Long ID: 2 Characteristics: 3.3 V is provided PME signal is supported Handle 0x0903 DMI type 9, 13 bytes. System Slot Information Designation: PCI Slot 3 Type: 64-bit PCI-X Current Usage: Available Length: Long ID: 3 Characteristics: 3.3 V is provided PME signal is supported Handle 0x0904 DMI type 9, 13 bytes. System Slot Information Designation: PCI-E Slot 4 Type: Current Usage: Available Length: Long Characteristics: 3.3 V is provided PME signal is supported Handle 0x0905 DMI type 9, 13 bytes. System Slot Information Designation: PCI-E Slot 5 Type: Current Usage: Available Length: Long Characteristics: 3.3 V is provided PME signal is supported Handle 0x0906 DMI type 9, 13 bytes. System Slot Information Designation: PCI-E Slot 6 Type: Current Usage: Available Length: Long Characteristics: 3.3 V is provided PME signal is supported Handle 0x0B00 DMI type 11, 5 bytes. OEM Strings String 1: Product ID: 412645-B21 Handle 0x1000 DMI type 16, 15 bytes. Physical Memory Array Location: System Board Or Motherboard Use: System Memory Error Correction Type: Single-bit ECC Maximum Capacity: 32 GB Error Information Handle: Not Provided Number Of Devices: 8 Handle 0x1100 DMI type 17, 23 bytes. Memory Device Array Handle: 0x1000 Error Information Handle: Not Provided Total Width: 72 bits Data Width: 64 bits Size: 512 MB Form Factor: Set: 1 Locator: DIMM 1A Bank Locator: Not Specified Type: Type Detail: Synchronous Speed: 667 MHz (1.5 ns) Handle 0x1101 DMI type 17, 23 bytes. Memory Device Array Handle: 0x1000 Error Information Handle: Not Provided Total Width: 72 bits Data Width: 64 bits Size: 1024 MB Form Factor: Set: 2 Locator: DIMM 2B Bank Locator: Not Specified Type: Type Detail: Synchronous Speed: 667 MHz (1.5 ns) Handle 0x1102 DMI type 17, 23 bytes. Memory Device Array Handle: 0x1000 Error Information Handle: Not Provided Total Width: 72 bits Data Width: 64 bits Size: 1024 MB Form Factor: Set: 3 Locator: DIMM 3C Bank Locator: Not Specified Type: Type Detail: Synchronous Speed: 667 MHz (1.5 ns) Handle 0x1103 DMI type 17, 23 bytes. Memory Device Array Handle: 0x1000 Error Information Handle: Not Provided Total Width: 72 bits Data Width: 64 bits Size: No Module Installed Form Factor: Set: 4 Locator: DIMM 4D Bank Locator: Not Specified Type: Type Detail: Synchronous Speed: Unknown Handle 0x1104 DMI type 17, 23 bytes. Memory Device Array Handle: 0x1000 Error Information Handle: Not Provided Total Width: 72 bits Data Width: 64 bits Size: 512 MB Form Factor: Set: 1 Locator: DIMM 5A Bank Locator: Not Specified Type: Type Detail: Synchronous Speed: 667 MHz (1.5 ns) Handle 0x1105 DMI type 17, 23 bytes. Memory Device Array Handle: 0x1000 Error Information Handle: Not Provided Total Width: 72 bits Data Width: 64 bits Size: 1024 MB Form Factor: Set: 2 Locator: DIMM 6B Bank Locator: Not Specified Type: Type Detail: Synchronous Speed: 667 MHz (1.5 ns) Handle 0x1106 DMI type 17, 23 bytes. Memory Device Array Handle: 0x1000 Error Information Handle: Not Provided Total Width: 72 bits Data Width: 64 bits Size: 1024 MB Form Factor: Set: 3 Locator: DIMM 7C Bank Locator: Not Specified Type: Type Detail: Synchronous Speed: 667 MHz (1.5 ns) Handle 0x1107 DMI type 17, 23 bytes. Memory Device Array Handle: 0x1000 Error Information Handle: Not Provided Total Width: 72 bits Data Width: 64 bits Size: No Module Installed Form Factor: Set: 4 Locator: DIMM 8D Bank Locator: Not Specified Type: Type Detail: Synchronous Speed: Unknown Handle 0x1300 DMI type 19, 15 bytes. Memory Array Mapped Address Starting Address: 0x00000000000 Ending Address: 0x0015FFFFFFF Range Size: 5632 MB Physical Array Handle: 0x1000 Partition Width: 0 Handle 0x1400 DMI type 20, 19 bytes. Memory Device Mapped Address Starting Address: 0x00000000000 Ending Address: 0x0015FFFFFFF Range Size: 5632 MB Physical Device Handle: 0x1100 Memory Array Mapped Address Handle: 0x1300 Partition Row Position: 1 Interleave Position: 1 Interleaved Data Depth: Unknown Handle 0x1401 DMI type 20, 19 bytes. Memory Device Mapped Address Starting Address: 0x00000000000 Ending Address: 0x0015FFFFFFF Range Size: 5632 MB Physical Device Handle: 0x1101 Memory Array Mapped Address Handle: 0x1300 Partition Row Position: 1 Interleave Position: 1 Interleaved Data Depth: Unknown Handle 0x1402 DMI type 20, 19 bytes. Memory Device Mapped Address Starting Address: 0x00000000000 Ending Address: 0x0015FFFFFFF Range Size: 5632 MB Physical Device Handle: 0x1102 Memory Array Mapped Address Handle: 0x1300 Partition Row Position: 1 Interleave Position: 1 Interleaved Data Depth: Unknown Handle 0x1403 DMI type 20, 19 bytes. Memory Device Mapped Address Starting Address: 0x00000000000 Ending Address: 0x000000003FF Range Size: 1 kB Physical Device Handle: 0x1103 Memory Array Mapped Address Handle: 0x1300 Partition Row Position: 1 Interleave Position: 1 Interleaved Data Depth: Unknown Handle 0x1404 DMI type 20, 19 bytes. Memory Device Mapped Address Starting Address: 0x00000000000 Ending Address: 0x0015FFFFFFF Range Size: 5632 MB Physical Device Handle: 0x1104 Memory Array Mapped Address Handle: 0x1300 Partition Row Position: 1 Interleave Position: 2 Interleaved Data Depth: Unknown Handle 0x1405 DMI type 20, 19 bytes. Memory Device Mapped Address Starting Address: 0x00000000000 Ending Address: 0x0015FFFFFFF Range Size: 5632 MB Physical Device Handle: 0x1105 Memory Array Mapped Address Handle: 0x1300 Partition Row Position: 1 Interleave Position: 2 Interleaved Data Depth: Unknown Handle 0x1406 DMI type 20, 19 bytes. Memory Device Mapped Address Starting Address: 0x00000000000 Ending Address: 0x0015FFFFFFF Range Size: 5632 MB Physical Device Handle: 0x1106 Memory Array Mapped Address Handle: 0x1300 Partition Row Position: 1 Interleave Position: 2 Interleaved Data Depth: Unknown Handle 0x1407 DMI type 20, 19 bytes. Memory Device Mapped Address Starting Address: 0x00000000000 Ending Address: 0x000000003FF Range Size: 1 kB Physical Device Handle: 0x1107 Memory Array Mapped Address Handle: 0x1300 Partition Row Position: 1 Interleave Position: 2 Interleaved Data Depth: Unknown Handle 0x2000 DMI type 32, 11 bytes. System Boot Information Status: No errors detected Handle 0x2600 DMI type 38, 18 bytes. IPMI Device Information Interface Type: KCS (Keyboard Control Style) Specification Version: 2.0 I2C Slave Address: 0x10 NV Storage Device: Not Present Base Address: 0x0000000000000CA2 (I/O) Register Spacing: Successive Byte Boundaries Handle 0xC100 DMI type 193, 7 bytes. OEM-specific Type Header And Data: C1 07 00 C1 01 01 02 Strings: 11/13/2007 11/13/2007 Handle 0xC200 DMI type 194, 5 bytes. OEM-specific Type Header And Data: C2 05 00 C2 01 Handle 0xC300 DMI type 195, 5 bytes. OEM-specific Type Header And Data: C3 05 00 C3 01 Strings: $0E110764 Handle 0xC400 DMI type 196, 5 bytes. OEM-specific Type Header And Data: C4 05 00 C4 00 Handle 0xC500 DMI type 197, 10 bytes. OEM-specific Type Header And Data: C5 0A 00 C5 00 04 00 01 FF 01 Handle 0xDF00 DMI type 223, 7 bytes. OEM-specific Type Header And Data: DF 07 00 DF 66 46 70 Handle 0xC506 DMI type 197, 10 bytes. OEM-specific Type Header And Data: C5 0A 06 C5 06 04 00 00 FF 02 Handle 0xD300 DMI type 211, 7 bytes. OEM-specific Type Header And Data: D3 07 00 D3 00 04 4E Handle 0xD306 DMI type 211, 7 bytes. OEM-specific Type Header And Data: D3 07 06 D3 06 04 00 Handle 0xC600 DMI type 198, 11 bytes. OEM-specific Type Header And Data: C6 0B 00 C6 17 00 00 01 3C 00 01 Handle 0xC700 DMI type 199, 112 bytes. OEM-specific Type Header And Data: C7 70 00 C7 0B 06 00 00 08 20 19 01 76 06 01 00 0B 06 00 00 08 20 19 01 76 06 01 00 04 04 00 00 07 20 08 06 74 06 01 00 04 04 00 00 07 20 08 06 74 06 01 00 B4 00 00 00 07 20 14 03 FB 06 00 00 B4 00 00 00 07 20 14 03 FB 06 00 00 67 00 00 00 07 20 26 03 F7 06 00 00 C9 00 00 00 07 20 26 03 F6 06 00 00 02 00 00 00 05 20 15 12 64 0F 00 00 Handle 0xCD00 DMI type 205, 22 bytes. OEM-specific Type Header And Data: CD 16 00 CD 01 01 46 41 54 78 00 00 E0 FF 00 00 00 00 00 00 0D 00 Handle 0xCA00 DMI type 202, 8 bytes. OEM-specific Type Header And Data: CA 08 00 CA 00 11 FF 01 Handle 0xCA01 DMI type 202, 8 bytes. OEM-specific Type Header And Data: CA 08 01 CA 01 11 FF 02 Handle 0xCA02 DMI type 202, 8 bytes. OEM-specific Type Header And Data: CA 08 02 CA 02 11 FF 03 Handle 0xCA03 DMI type 202, 8 bytes. OEM-specific Type Header And Data: CA 08 03 CA 03 11 FF 04 Handle 0xCA04 DMI type 202, 8 bytes. OEM-specific Type Header And Data: CA 08 04 CA 04 11 FF 05 Handle 0xCA05 DMI type 202, 8 bytes. OEM-specific Type Header And Data: CA 08 05 CA 05 11 FF 06 Handle 0xCA06 DMI type 202, 8 bytes. OEM-specific Type Header And Data: CA 08 06 CA 06 11 FF 07 Handle 0xCA07 DMI type 202, 8 bytes. OEM-specific Type Header And Data: CA 08 07 CA 07 11 FF 08 Handle 0xD100 DMI type 209, 12 bytes. OEM-specific Type Header And Data: D1 0C 00 D1 00 03 00 1F 29 62 C4 A4 Handle 0xD400 DMI type 212, 24 bytes. OEM-specific Type Header And Data: D4 18 00 D4 24 43 52 55 00 F8 F6 FF 00 00 00 00 00 40 00 00 00 00 00 00 Handle 0xD500 DMI type 213, 28 bytes. OEM-specific Type Header And Data: D5 1C 00 D5 00 00 36 00 00 00 BF 1F 00 00 46 00 00 00 00 00 00 00 00 00 00 00 00 00 Handle 0xD600 DMI type 214, 44 bytes. OEM-specific Type Header And Data: D6 2C 00 D6 31 31 00 02 0E 20 00 00 13 20 00 00 00 60 00 00 00 20 00 00 02 20 00 00 04 20 00 00 06 20 00 00 0C 20 00 00 08 20 00 00 Handle 0xD700 DMI type 215, 6 bytes. OEM-specific Type Header And Data: D7 06 00 D7 00 05 Handle 0xDB00 DMI type 219, 8 bytes. OEM-specific Type Header And Data: DB 08 00 DB FF 00 00 00 Handle 0xDC00 DMI type 218, 45 bytes. OEM-specific Type Header And Data: DA 2D 00 DC 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Handle 0xDC01 DMI type 220, 45 bytes. OEM-specific Type Header And Data: DC 2D 01 DC 08 00 00 C5 00 FF 01 00 C5 01 FF 02 00 C5 02 FF 03 00 C5 03 FF 04 06 C5 02 FF 05 06 C5 03 FF 06 06 C5 00 FF 07 06 C5 01 FF Handle 0xDD00 DMI type 221, 12 bytes. OEM-specific Type Header And Data: DD 0C 00 DD 00 03 00 1F 29 62 C4 A5 Handle 0x7F00 DMI type 127, 4 bytes. End Of Table Ocsinventory-Unix-Agent-2.0.5/resources/dmidecode-linux-2.6010064400017500001750000000327571173606111100231270ustar00guiguiguigui# dmidecode 2.8 SMBIOS 2.3 present. 60 structures occupying 2446 bytes. Table at 0x000F7860. Handle 0xDA00, DMI type 218, 125 bytes OEM-specific Type Header and Data: DA 7D 00 DA B2 00 0D 5F 0F 37 40 7D 00 00 00 00 00 7E 00 02 00 00 00 40 00 04 00 01 00 41 00 04 00 00 00 90 00 05 00 00 00 91 00 05 00 01 00 92 00 05 00 02 00 45 01 45 01 01 00 44 01 44 01 00 00 00 80 00 80 01 00 00 A0 00 A0 01 00 05 80 05 80 01 00 76 01 76 01 01 00 75 01 75 01 01 00 01 F0 01 F0 00 00 02 F0 02 F0 00 00 03 F0 03 F0 00 00 04 F0 04 F0 00 00 FF FF 00 00 00 00 Handle 0x0000, DMI type 0, 20 bytes BIOS Information Vendor: Dell Inc. Version: A06 Release Date: 10/02/2005 Address: 0xF0000 Runtime Size: 64 kB ROM Size: 576 kB Characteristics: ISA is supported PCI is supported PC Card (PCMCIA) is supported PNP is supported BIOS is upgradeable BIOS shadowing is allowed Boot from CD is supported Selectable boot is supported 3.5"/720 KB floppy services are supported (int 13h) Print screen service is supported (int 5h) 8042 keyboard services are supported (int 9h) Serial services are supported (int 14h) Printer services are supported (int 17h) CGA/mono video services are supported (int 10h) ACPI is supported USB legacy is supported AGP is supported Smart battery is supported BIOS boot specification is supported Function key-initiated network boot is supported Handle 0x0100, DMI type 1, 25 bytes System Information Manufacturer: Dell Inc. Product Name: Latitude D610 Version: Not Specified Serial Number: D8XD62J UUID: 44454C4C-3800-1058-8044-C4C04F36324A Wake-up Type: Power Switch Handle 0x0200, DMI type 2, 9 bytes Base Board Information Manufacturer: Dell Inc. Product Name: 0XD762 Version: Serial Number: .D8XD62J.CN4864363E7491. Handle 0x0300, DMI type 3, 13 bytes Chassis Information Manufacturer: Dell Inc. Type: Portable Lock: Not Present Version: Not Specified Serial Number: D8XD62J Asset Tag: Not Specified Boot-up State: Safe Power Supply State: Safe Thermal State: Safe Security Status: None Handle 0x0301, DMI type 126, 13 bytes Inactive Handle 0x0400, DMI type 4, 32 bytes Processor Information Socket Designation: Microprocessor Type: Central Processor Family: Pentium M Manufacturer: Intel ID: D8 06 00 00 FF FB E9 AF Signature: Type 0, Family 6, Model 13, Stepping 8 Flags: FPU (Floating-point unit on-chip) VME (Virtual mode extension) DE (Debugging extension) PSE (Page size extension) TSC (Time stamp counter) MSR (Model specific registers) PAE (Physical address extension) MCE (Machine check exception) CX8 (CMPXCHG8 instruction supported) APIC (On-chip APIC hardware supported) SEP (Fast system call) MTRR (Memory type range registers) PGE (Page global enable) MCA (Machine check architecture) CMOV (Conditional move instruction supported) PAT (Page attribute table) CLFSH (CLFLUSH instruction supported) DS (Debug store) ACPI (ACPI supported) MMX (MMX technology supported) FXSR (Fast floating-point save and restore) SSE (Streaming SIMD extensions) SSE2 (Streaming SIMD extensions 2) SS (Self-snoop) TM (Thermal monitor supported) PBE (Pending break enabled) Version: Not Specified Voltage: 3.3 V External Clock: 133 MHz Max Speed: 1800 MHz Current Speed: 1733 MHz Status: Populated, Enabled Upgrade: None L1 Cache Handle: 0x0700 L2 Cache Handle: 0x0701 L3 Cache Handle: Not Provided Handle 0x0700, DMI type 7, 19 bytes Cache Information Socket Designation: Not Specified Configuration: Enabled, Not Socketed, Level 1 Operational Mode: Write Back Location: Internal Installed Size: 8 KB Maximum Size: 8 KB Supported SRAM Types: Unknown Installed SRAM Type: Unknown Speed: Unknown Error Correction Type: None System Type: Data Associativity: 4-way Set-associative Handle 0x0701, DMI type 7, 19 bytes Cache Information Socket Designation: Not Specified Configuration: Enabled, Not Socketed, Level 2 Operational Mode: Varies With Memory Address Location: Internal Installed Size: 2048 KB Maximum Size: 2048 KB Supported SRAM Types: Pipeline Burst Installed SRAM Type: Pipeline Burst Speed: 15 ns Error Correction Type: None System Type: Unified Associativity: Other Handle 0x0800, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: PARALLEL Internal Connector Type: None External Reference Designator: Not Specified External Connector Type: DB-25 female Port Type: Parallel Port PS/2 Handle 0x0801, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: SERIAL1 Internal Connector Type: None External Reference Designator: Not Specified External Connector Type: DB-9 male Port Type: Serial Port 16550A Compatible Handle 0x0803, DMI type 126, 9 bytes Inactive Handle 0x0804, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: USB Internal Connector Type: None External Reference Designator: Not Specified External Connector Type: Access Bus (USB) Port Type: USB Handle 0x0805, DMI type 126, 9 bytes Inactive Handle 0x0806, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: MONITOR Internal Connector Type: None External Reference Designator: Not Specified External Connector Type: DB-15 female Port Type: Video Port Handle 0x0808, DMI type 126, 9 bytes Inactive Handle 0x0809, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: IrDA Internal Connector Type: None External Reference Designator: Not Specified External Connector Type: Infrared Port Type: Other Handle 0x080A, DMI type 126, 9 bytes Inactive Handle 0x080C, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: Modem Internal Connector Type: None External Reference Designator: Not Specified External Connector Type: RJ-11 Port Type: Modem Port Handle 0x080D, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: Ethernet Internal Connector Type: None External Reference Designator: Not Specified External Connector Type: RJ-45 Port Type: Network Port Handle 0x0900, DMI type 9, 13 bytes System Slot Information Designation: PCMCIA 0 Type: 32-bit PC Card (PCMCIA) Current Usage: Available Length: Other ID: Adapter 0, Socket 0 Characteristics: 5.0 V is provided 3.3 V is provided PC Card-16 is supported Cardbus is supported Zoom Video is supported Modem ring resume is supported Handle 0x0902, DMI type 126, 13 bytes Inactive Handle 0x0904, DMI type 9, 13 bytes System Slot Information Designation: MiniPCI Type: 32-bit Other Current Usage: Available Length: Other Characteristics: 5.0 V is provided 3.3 V is provided PME signal is supported Handle 0x0A00, DMI type 10, 6 bytes On Board Device Information Type: Video Status: Enabled Description: Intel 915GM Graphics Handle 0x0A01, DMI type 10, 6 bytes On Board Device Information Type: Sound Status: Enabled Description: Sigmatel 9751 Handle 0x0B00, DMI type 11, 5 bytes OEM Strings String 1: Dell System String 2: 5[0003] String 3: 13[PP11L] Handle 0x0D00, DMI type 13, 22 bytes BIOS Language Information Installable Languages: 1 en|US|iso8859-1 Currently Installed Language: en|US|iso8859-1 Handle 0x1000, DMI type 16, 15 bytes Physical Memory Array Location: System Board Or Motherboard Use: System Memory Error Correction Type: None Maximum Capacity: 4 GB Error Information Handle: Not Provided Number Of Devices: 2 Handle 0x1100, DMI type 17, 27 bytes Memory Device Array Handle: 0x1000 Error Information Handle: Not Provided Total Width: 64 bits Data Width: 64 bits Size: 1024 MB Form Factor: DIMM Set: None Locator: DIMM_A Bank Locator: Not Specified Type: DDR Type Detail: Synchronous Speed: 533 MHz (1.9 ns) Manufacturer: C100000000000000 Serial Number: 02132010 Asset Tag: Not Specified Part Number: Not Specified Handle 0x1101, DMI type 17, 27 bytes Memory Device Array Handle: 0x1000 Error Information Handle: Not Provided Total Width: 64 bits Data Width: 64 bits Size: 1024 MB Form Factor: DIMM Set: None Locator: DIMM_B Bank Locator: Not Specified Type: DDR Type Detail: Synchronous Speed: 533 MHz (1.9 ns) Manufacturer: C100000000000000 Serial Number: 02132216 Asset Tag: Not Specified Part Number: Not Specified Handle 0x1300, DMI type 19, 15 bytes Memory Array Mapped Address Starting Address: 0x00000000000 Ending Address: 0x0000009FFFF Range Size: 640 kB Physical Array Handle: 0x1000 Partition Width: 0 Handle 0x1301, DMI type 19, 15 bytes Memory Array Mapped Address Starting Address: 0x00000100000 Ending Address: 0x0007FFFFFFF Range Size: 2047 MB Physical Array Handle: 0x1000 Partition Width: 0 Handle 0x1400, DMI type 20, 19 bytes Memory Device Mapped Address Starting Address: 0x00000000000 Ending Address: 0x0000009FFFF Range Size: 640 kB Physical Device Handle: 0x1100 Memory Array Mapped Address Handle: 0x1300 Partition Row Position: 1 Handle 0x1401, DMI type 20, 19 bytes Memory Device Mapped Address Starting Address: 0x00000100000 Ending Address: 0x0003FFFFFFF Range Size: 1023 MB Physical Device Handle: 0x1100 Memory Array Mapped Address Handle: 0x1301 Partition Row Position: 1 Handle 0x1402, DMI type 20, 19 bytes Memory Device Mapped Address Starting Address: 0x00040000000 Ending Address: 0x0007FFFFFFF Range Size: 1 GB Physical Device Handle: 0x1101 Memory Array Mapped Address Handle: 0x1301 Partition Row Position: 1 Handle 0x1500, DMI type 21, 7 bytes Built-in Pointing Device Type: Touch Pad Interface: Bus Mouse Buttons: 2 Handle 0x1600, DMI type 22, 26 bytes Portable Battery Location: Sys. Battery Bay Manufacturer: Samsung SDI Name: DELL C129563 Design Capacity: 48000 mWh Design Voltage: 11100 mV SBDS Version: 1.0 Maximum Error: 3% SBDS Serial Number: 7734 SBDS Manufacture Date: 2006-03-11 SBDS Chemistry: LION OEM-specific Information: 0x00000001 Handle 0x1601, DMI type 126, 26 bytes Inactive Handle 0x1602, DMI type 126, 26 bytes Inactive Handle 0x1B00, DMI type 27, 12 bytes Cooling Device Type: Fan Status: OK OEM-specific Information: 0x0000DD00 Handle 0x1C00, DMI type 28, 20 bytes Temperature Probe Description: CPU Internal Temperature Location: Processor Status: OK Maximum Value: 127.0 deg C Minimum Value 0.0 deg C Resolution: 1.000 deg C Tolerance: 0.5 deg C Accuracy: Unknown OEM-specific Information: 0x0000DC00 Handle 0x2000, DMI type 32, 11 bytes System Boot Information Status: No errors detected Handle 0xB000, DMI type 176, 5 bytes OEM-specific Type Header and Data: B0 05 00 B0 00 Handle 0xB100, DMI type 177, 12 bytes OEM-specific Type Header and Data: B1 0C 00 B1 01 00 00 00 00 00 00 00 Handle 0xD000, DMI type 208, 10 bytes OEM-specific Type Header and Data: D0 0A 00 D0 01 04 FE 00 82 01 Handle 0xD100, DMI type 209, 12 bytes OEM-specific Type Header and Data: D1 0C 00 D1 00 00 00 03 04 07 80 05 Handle 0xD200, DMI type 210, 12 bytes OEM-specific Type Header and Data: D2 0C 00 D2 F8 03 04 03 06 80 04 05 Handle 0xD300, DMI type 211, 13 bytes OEM-specific Type Header and Data: D3 0D 00 D3 01 04 02 01 00 00 00 00 02 Strings: Back of System Handle 0xD800, DMI type 216, 9 bytes OEM-specific Type Header and Data: D8 09 00 D8 01 03 01 F0 03 Strings: Intel Corp. 1219 Handle 0xD900, DMI type 217, 8 bytes OEM-specific Type Header and Data: D9 08 00 D9 01 02 01 03 Strings: US-101 Proprietary Handle 0xDB00, DMI type 219, 9 bytes OEM-specific Type Header and Data: DB 09 00 DB 03 01 02 03 FF Strings: System Device Bay Floppy, Battery, CD-ROM, CD-RW, DVD, DVD+RW, DVD+/-RW, Hard Disk CDRW+DVD Handle 0xDB80, DMI type 126, 9 bytes Inactive Handle 0xDB81, DMI type 126, 9 bytes Inactive Handle 0x8100, DMI type 129, 8 bytes OEM-specific Type Header and Data: 81 08 00 81 01 01 02 01 Strings: Intel_ASF Dell_ASF_001 Handle 0xDC00, DMI type 220, 22 bytes OEM-specific Type Header and Data: DC 16 00 DC 01 F0 00 00 02 F0 00 00 00 00 03 F0 04 F0 00 00 00 00 Handle 0xDD00, DMI type 221, 19 bytes OEM-specific Type Header and Data: DD 13 00 DD 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Handle 0xD400, DMI type 212, 237 bytes OEM-specific Type Header and Data: D4 ED 00 D4 70 00 71 00 00 10 2D 2E 5C 00 78 BF 40 5D 00 78 BF 00 65 00 21 F7 00 66 00 21 F7 08 5E 00 23 FE 01 5F 00 23 FE 00 F1 00 21 FC 00 F2 00 21 FC 01 F3 00 21 FC 02 0F 00 26 F8 00 11 00 26 F8 01 05 00 26 F8 02 12 00 26 F8 03 06 00 26 F8 04 31 00 26 8F 00 32 00 26 8F 10 33 00 26 8F 20 34 00 26 8F 30 35 00 26 8F 40 07 00 25 F8 00 0B 00 25 F8 01 0C 00 25 F8 02 0D 00 25 F8 03 28 00 23 F3 00 29 00 23 F3 04 2A 00 23 F3 08 2B 00 58 00 00 2C 00 59 00 00 E7 00 1D F3 04 E6 00 1D F3 00 0E 01 23 FD 02 0F 01 23 FD 00 9B 00 23 EF 10 9C 00 23 EF 00 87 00 11 FD 02 88 00 11 FD 00 E8 00 23 DF 20 E9 00 23 DF 00 51 01 22 F7 00 50 01 22 F7 08 12 01 34 FB 04 13 01 34 FB 00 08 00 1D DF 00 03 00 1D DF 00 FF FF 00 00 00 Handle 0xD401, DMI type 212, 127 bytes OEM-specific Type Header and Data: D4 7F 01 D4 70 00 71 00 03 40 49 4A 42 00 48 7F 80 43 00 48 7F 00 55 00 47 BF 00 6D 00 47 BF 40 0C 01 46 FB 04 0D 01 46 FB 00 14 01 46 E7 00 15 01 46 E7 08 16 01 46 E7 10 0A 01 48 EF 10 0B 01 48 EF 00 2D 00 48 DF 20 2E 00 48 DF 00 11 01 48 BF 00 10 01 48 BF 40 F0 00 46 DF 20 ED 00 46 DF 00 41 01 46 FE 01 40 01 46 FE 00 EA 00 67 F3 00 EB 00 67 F3 04 EC 00 67 F3 08 FF FF 00 00 00 Handle 0xDE00, DMI type 222, 13 bytes OEM-specific Type Header and Data: DE 0D 00 DE 01 02 FF FF 00 00 00 00 00 Handle 0x7F00, DMI type 127, 4 bytes End Of Table Ocsinventory-Unix-Agent-2.0.5/resources/dmidecode.rhel.4.3010064400017500001750000000440151173606111100227110ustar00guiguiguigui# dmidecode 2.2 SMBIOS 2.2 present. 57 structures occupying 1719 bytes. Table at 0x000F0000. Handle 0x0000 DMI type 0, 19 bytes. BIOS Information Vendor: IBM Version: -[OQE115A]- Release Date: 03/14/2006 Address: 0xE0000 Runtime Size: 128 kB ROM Size: 1024 kB Characteristics: PCI is supported PNP is supported APM is supported BIOS is upgradeable BIOS shadowing is allowed Boot from CD is supported Selectable boot is supported BIOS ROM is socketed EDD is supported 5.25"/360 KB floppy services are supported (int 13h) 5.25"/1.2 MB floppy services are supported (int 13h) 3.5"/720 KB floppy services are supported (int 13h) 3.5"/2.88 MB floppy services are supported (int 13h) Print screen service is supported (int 5h) 8042 keyboard services are supported (int 9h) Serial services are supported (int 14h) Printer services are supported (int 17h) CGA/mono video services are supported (int 10h) ACPI is supported USB legacy is supported AGP is supported LS-120 boot is supported ATAPI Zip drive boot is supported Handle 0x0001 DMI type 1, 25 bytes. System Information Manufacturer: IBM Product Name: -[86494jg]- Version: 2.0 Serial Number: KDMAH1Y UUID: 0339D4C3-44C0-9D11-A20E-85CDC42DE79C Wake-up Type: Other Handle 0x0002 DMI type 2, 8 bytes. Base Board Information Manufacturer: IBM Product Name: MS-9121 Version: 2.0 Serial Number: 48Z1LX Handle 0x0003 DMI type 3, 13 bytes. Chassis Information Manufacturer: IBM Type: Tower Lock: Present Version: Serial Number: Asset Tag: Boot-up State: Unknown Power Supply State: Unknown Thermal State: Unknown Security Status: Unknown Handle 0x0004 DMI type 4, 32 bytes. Processor Information Socket Designation: CPU1 Type: Central Processor Family: Xeon Manufacturer: Intel ID: 29 0F 00 00 FF FB EB BF Signature: Type 0, Family F, Model 2, Stepping 9 Flags: FPU (Floating-point unit on-chip) VME (Virtual mode extension) DE (Debugging extension) PSE (Page size extension) TSC (Time stamp counter) MSR (Model specific registers) PAE (Physical address extension) MCE (Machine check exception) CX8 (CMPXCHG8 instruction supported) APIC (On-chip APIC hardware supported) SEP (Fast system call) MTRR (Memory type range registers) PGE (Page global enable) MCA (Machine check architecture) CMOV (Conditional move instruction supported) PAT (Page attribute table) PSE-36 (36-bit page size extension) CLFSH (CLFLUSH instruction supported) DS (Debug store) ACPI (ACPI supported) MMX (MMX technology supported) FXSR (Fast floating-point save and restore) SSE (Streaming SIMD extensions) SSE2 (Streaming SIMD extensions 2) SS (Self-snoop) HTT (Hyper-threading technology) TM (Thermal monitor supported) SBF (Signal break on FERR) Version: Intel Xeon(tm) Voltage: 1.4 V External Clock: 133 MHz Max Speed: 3200 MHz Current Speed: 2666 MHz Status: Populated, Enabled Upgrade: ZIF Socket L1 Cache Handle: 0x000B L2 Cache Handle: 0x000D L3 Cache Handle: 0x000F Handle 0x0005 DMI type 4, 32 bytes. Processor Information Socket Designation: CPU2 Type: Central Processor Family: Xeon Manufacturer: Intel ID: 29 0F 00 00 FF FB EB BF Signature: Type 0, Family F, Model 2, Stepping 9 Flags: FPU (Floating-point unit on-chip) VME (Virtual mode extension) DE (Debugging extension) PSE (Page size extension) TSC (Time stamp counter) MSR (Model specific registers) PAE (Physical address extension) MCE (Machine check exception) CX8 (CMPXCHG8 instruction supported) APIC (On-chip APIC hardware supported) SEP (Fast system call) MTRR (Memory type range registers) PGE (Page global enable) MCA (Machine check architecture) CMOV (Conditional move instruction supported) PAT (Page attribute table) PSE-36 (36-bit page size extension) CLFSH (CLFLUSH instruction supported) DS (Debug store) ACPI (ACPI supported) MMX (MMX technology supported) FXSR (Fast floating-point save and restore) SSE (Streaming SIMD extensions) SSE2 (Streaming SIMD extensions 2) SS (Self-snoop) HTT (Hyper-threading technology) TM (Thermal monitor supported) SBF (Signal break on FERR) Version: Intel Xeon(tm) Voltage: 1.4 V External Clock: 133 MHz Max Speed: 3200 MHz Current Speed: 2666 MHz Status: Populated, Enabled Upgrade: ZIF Socket L1 Cache Handle: 0x000C L2 Cache Handle: 0x000E L3 Cache Handle: 0x0010 Handle 0x0006 DMI type 5, 24 bytes. Memory Controller Information Error Detecting Method: 8-bit Parity Error Correcting Capabilities: Single-bit Error Correcting Double-bit Error Correcting Error Scrubbing Supported Interleave: One-way Interleave Current Interleave: One-way Interleave Maximum Memory Module Size: 2048 MB Maximum Total Memory Size: 8192 MB Supported Speeds: Other Supported Memory Types: Other ECC DIMM Memory Module Voltage: 3.3 V Associated Memory Slots: 4 0x0007 0x0008 0x0009 0x000A Enabled Error Correcting Capabilities: Single-bit Error Correcting Double-bit Error Correcting Error Scrubbing Handle 0x0007 DMI type 6, 12 bytes. Memory Module Information Socket Designation: DIMM1 Bank Connections: 0 Current Speed: Unknown Type: Other DIMM Installed Size: 512 MB (Single-bank Connection) Enabled Size: 512 MB (Single-bank Connection) Error Status: OK Handle 0x0008 DMI type 6, 12 bytes. Memory Module Information Socket Designation: DIMM2 Bank Connections: 2 Current Speed: Unknown Type: Other DIMM Installed Size: 512 MB (Single-bank Connection) Enabled Size: 512 MB (Single-bank Connection) Error Status: OK Handle 0x0009 DMI type 6, 12 bytes. Memory Module Information Socket Designation: DIMM3 Bank Connections: 4 Current Speed: Unknown Type: Other DIMM Installed Size: 512 MB (Single-bank Connection) Enabled Size: 512 MB (Single-bank Connection) Error Status: OK Handle 0x000A DMI type 6, 12 bytes. Memory Module Information Socket Designation: DIMM4 Bank Connections: 6 Current Speed: Unknown Type: Other DIMM Installed Size: 512 MB (Single-bank Connection) Enabled Size: 512 MB (Single-bank Connection) Error Status: OK Handle 0x000B DMI type 7, 19 bytes. Cache Information Socket Designation: Level 1 Cache Configuration: Enabled, Not Socketed, Level 1 Operational Mode: Write Back Location: Internal Installed Size: 20 KB Maximum Size: 20 KB Supported SRAM Types: Synchronous Installed SRAM Type: Synchronous Speed: Unknown Error Correction Type: Unknown System Type: Unknown Associativity: Unknown Handle 0x000C DMI type 7, 19 bytes. Cache Information Socket Designation: Level 1 Cache Configuration: Enabled, Not Socketed, Level 1 Operational Mode: Write Back Location: Internal Installed Size: 20 KB Maximum Size: 20 KB Supported SRAM Types: Synchronous Installed SRAM Type: Synchronous Speed: Unknown Error Correction Type: Unknown System Type: Unknown Associativity: Unknown Handle 0x000D DMI type 7, 19 bytes. Cache Information Socket Designation: Level 2 Cache Configuration: Enabled, Not Socketed, Level 2 Operational Mode: Write Back Location: Internal Installed Size: 512 KB Maximum Size: 512 KB Supported SRAM Types: Synchronous Installed SRAM Type: Synchronous Speed: Unknown Error Correction Type: Unknown System Type: Unknown Associativity: Unknown Handle 0x000E DMI type 7, 19 bytes. Cache Information Socket Designation: Level 2 Cache Configuration: Enabled, Not Socketed, Level 2 Operational Mode: Write Back Location: Internal Installed Size: 512 KB Maximum Size: 512 KB Supported SRAM Types: Synchronous Installed SRAM Type: Synchronous Speed: Unknown Error Correction Type: Unknown System Type: Unknown Associativity: Unknown Handle 0x000F DMI type 7, 19 bytes. Cache Information Socket Designation: Tertiary (Level 3) Cache Configuration: Disabled, Not Socketed, Level 3 Operational Mode: Write Back Location: Internal Installed Size: 0 KB Maximum Size: 0 KB Supported SRAM Types: Synchronous Installed SRAM Type: Synchronous Speed: Unknown Error Correction Type: Unknown System Type: Unknown Associativity: Unknown Handle 0x0010 DMI type 7, 19 bytes. Cache Information Socket Designation: Tertiary (Level 3) Cache Configuration: Disabled, Not Socketed, Level 3 Operational Mode: Write Back Location: Internal Installed Size: 0 KB Maximum Size: 0 KB Supported SRAM Types: Synchronous Installed SRAM Type: Synchronous Speed: Unknown Error Correction Type: Unknown System Type: Unknown Associativity: Unknown Handle 0x0011 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: IDE1 Internal Connector Type: On Board IDE External Reference Designator: Not Specified External Connector Type: None Port Type: Other Handle 0x0012 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: IDE2 Internal Connector Type: On Board IDE External Reference Designator: Not Specified External Connector Type: None Port Type: Other Handle 0x0013 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: FDD Internal Connector Type: On Board Floppy External Reference Designator: Not Specified External Connector Type: None Port Type: 8251 FIFO Compatible Handle 0x0014 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: COM1 Internal Connector Type: 9 Pin Dual Inline (pin 10 cut) External Reference Designator: External Connector Type: DB-9 male Port Type: Serial Port 16450 Compatible Handle 0x0015 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: COM2 Internal Connector Type: 9 Pin Dual Inline (pin 10 cut) External Reference Designator: External Connector Type: DB-9 male Port Type: Serial Port 16450 Compatible Handle 0x0016 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: LPT1 Internal Connector Type: DB-25 female External Reference Designator: External Connector Type: DB-25 female Port Type: Parallel Port ECP/EPP Handle 0x0017 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: Keyboard Internal Connector Type: PS/2 External Reference Designator: External Connector Type: PS/2 Port Type: Keyboard Port Handle 0x0018 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: PS/2 Mouse Internal Connector Type: PS/2 External Reference Designator: External Connector Type: PS/2 Port Type: Mouse Port Handle 0x0019 DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: Not Specified Internal Connector Type: None External Reference Designator: JUSB1 External Connector Type: Other Port Type: USB Handle 0x001A DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: Not Specified Internal Connector Type: None External Reference Designator: JUSB2 External Connector Type: Other Port Type: USB Handle 0x001B DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: Not Specified Internal Connector Type: None External Reference Designator: AUD1 External Connector Type: None Port Type: Audio Port Handle 0x001C DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: Not Specified Internal Connector Type: None External Reference Designator: JLAN1 External Connector Type: RJ-45 Port Type: Network Port Handle 0x001D DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: Not Specified Internal Connector Type: None External Reference Designator: SCSI1 External Connector Type: None Port Type: SCSI Wide Handle 0x001E DMI type 8, 9 bytes. Port Connector Information Internal Reference Designator: Not Specified Internal Connector Type: None External Reference Designator: SCSI2 External Connector Type: None Port Type: SCSI Wide Handle 0x001F DMI type 9, 13 bytes. System Slot Information Designation: PCI1 Type: 32-bit PCI Current Usage: Available Length: Other ID: 1 Characteristics: 3.3 V is provided PME signal is supported Handle 0x0020 DMI type 9, 13 bytes. System Slot Information Designation: PCI6 Type: 32-bit PCI Current Usage: In Use Length: Other ID: 2 Characteristics: 3.3 V is provided PME signal is supported Handle 0x0021 DMI type 10, 14 bytes. On Board Device Information Type: Other Status: Enabled Description: IBM Automatic Server Restart - Machine Type 8480 On Board Device Information Type: SCSI Controller Status: Enabled Description: LSI Logic 1030 Ultra320 SCSI Adapter - SCSI1 On Board Device Information Type: SCSI Controller Status: Enabled Description: LSI Logic 1030 Ultra320 SCSI Adapter - SCSI2 On Board Device Information Type: Ethernet Status: Enabled Description: Broadcom BCM5703 NetXtreme Gigabit Ethernet - JLAN1 On Board Device Information Type: Sound Status: Enabled Description: SoundMax Integrated Digital Audio - AUD1 Handle 0x0022 DMI type 9, 13 bytes. System Slot Information Designation: AGP Type: 32-bit AGP Current Usage: Available Length: Long ID: 8 Characteristics: 5.0 V is provided Handle 0x0023 DMI type 9, 13 bytes. System Slot Information Designation: PCI2 Type: 64-bit PCI-X Current Usage: Available Length: Long ID: 2 Characteristics: 3.3 V is provided PME signal is supported Handle 0x0024 DMI type 9, 13 bytes. System Slot Information Designation: PCI3 Type: 64-bit PCI-X Current Usage: Available Length: Long ID: 3 Characteristics: 3.3 V is provided PME signal is supported Handle 0x0025 DMI type 9, 13 bytes. System Slot Information Designation: PCI4 Type: 64-bit PCI-X Current Usage: In Use Length: Long ID: 1 Characteristics: 3.3 V is provided PME signal is supported Handle 0x0026 DMI type 9, 13 bytes. System Slot Information Designation: PCI5 Type: 64-bit PCI-X Current Usage: Available Length: Long ID: 2 Characteristics: 3.3 V is provided PME signal is supported Handle 0x0027 DMI type 13, 22 bytes. BIOS Language Information Installable Languages: 3 n|US|iso8859-1 n|US|iso8859-1 r|CA|iso8859-1 Currently Installed Language: n|US|iso8859-1 Handle 0x0028 DMI type 16, 15 bytes. Physical Memory Array Location: System Board Or Motherboard Use: System Memory Error Correction Type: Multi-bit ECC Maximum Capacity: 8 GB Error Information Handle: No Error Number Of Devices: 4 Handle 0x0029 DMI type 17, 21 bytes. Memory Device Array Handle: 0x0028 Error Information Handle: 0x002D Total Width: 257 bits Data Width: 256 bits Size: 512 MB Form Factor: DIMM Set: 1 Locator: DIMM1 Bank Locator: Bank0 Type: DDR Type Detail: None Handle 0x002A DMI type 17, 21 bytes. Memory Device Array Handle: 0x0028 Error Information Handle: 0x002E Total Width: 257 bits Data Width: 256 bits Size: 512 MB Form Factor: DIMM Set: 1 Locator: DIMM2 Bank Locator: Bank1 Type: DDR Type Detail: None Handle 0x002B DMI type 17, 21 bytes. Memory Device Array Handle: 0x0028 Error Information Handle: 0x002F Total Width: 257 bits Data Width: 256 bits Size: 512 MB Form Factor: DIMM Set: 2 Locator: DIMM3 Bank Locator: Bank2 Type: DDR Type Detail: None Handle 0x002C DMI type 17, 21 bytes. Memory Device Array Handle: 0x0028 Error Information Handle: 0x0030 Total Width: 257 bits Data Width: 256 bits Size: 512 MB Form Factor: DIMM Set: 2 Locator: DIMM4 Bank Locator: Bank3 Type: DDR Type Detail: None Handle 0x002D DMI type 18, 23 bytes. 32-bit Memory Error Information Type: Other Granularity: Other Operation: Other Vendor Syndrome: Unknown Memory Array Address: Unknown Device Address: Unknown Resolution: Unknown Handle 0x002E DMI type 18, 23 bytes. 32-bit Memory Error Information Type: Other Granularity: Other Operation: Other Vendor Syndrome: Unknown Memory Array Address: Unknown Device Address: Unknown Resolution: Unknown Handle 0x002F DMI type 18, 23 bytes. 32-bit Memory Error Information Type: Other Granularity: Other Operation: Other Vendor Syndrome: Unknown Memory Array Address: Unknown Device Address: Unknown Resolution: Unknown Handle 0x0030 DMI type 18, 23 bytes. 32-bit Memory Error Information Type: Other Granularity: Other Operation: Other Vendor Syndrome: Unknown Memory Array Address: Unknown Device Address: Unknown Resolution: Unknown Handle 0x0031 DMI type 19, 15 bytes. Memory Array Mapped Address Starting Address: 0x00000000000 Ending Address: 0x0007FFFFFFF Range Size: 2 GB Physical Array Handle: 0x0028 Partition Width: 0 Handle 0x0032 DMI type 20, 19 bytes. Memory Device Mapped Address Starting Address: 0x00000000000 Ending Address: 0x0001FFFFFFF Range Size: 512 MB Physical Device Handle: 0x0029 Memory Array Mapped Address Handle: 0x0031 Partition Row Position: 1 Handle 0x0033 DMI type 20, 19 bytes. Memory Device Mapped Address Starting Address: 0x00020000000 Ending Address: 0x0003FFFFFFF Range Size: 512 MB Physical Device Handle: 0x002A Memory Array Mapped Address Handle: 0x0031 Partition Row Position: 1 Handle 0x0034 DMI type 20, 19 bytes. Memory Device Mapped Address Starting Address: 0x00040000000 Ending Address: 0x0005FFFFFFF Range Size: 512 MB Physical Device Handle: 0x002B Memory Array Mapped Address Handle: 0x0031 Partition Row Position: 1 Handle 0x0035 DMI type 20, 19 bytes. Memory Device Mapped Address Starting Address: 0x00060000000 Ending Address: 0x0007FFFFFFF Range Size: 512 MB Physical Device Handle: 0x002C Memory Array Mapped Address Handle: 0x0031 Partition Row Position: 1 Handle 0x0036 DMI type 32, 11 bytes. System Boot Information Status: No errors detected Handle 0x0037 DMI type 129, 8 bytes. OEM-specific Type Header And Data: 81 08 37 00 01 01 02 01 Strings: Alert Standard Format IBM 0053 Handle 0x0038 DMI type 127, 4 bytes. End Of Table Ocsinventory-Unix-Agent-2.0.5/inc004075500017500001750000000000001173606116100163015ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/inc/Module004075500017500001750000000000001173606116100175265ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/inc/Module/Install004075500017500001750000000000001173606116100211345ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/inc/Module/Install/Makefile.pm010064400017500001750000000160031173606113200232610ustar00guiguiguigui#line 1 package Module::Install::Makefile; use strict 'vars'; use ExtUtils::MakeMaker (); use Module::Install::Base (); use vars qw{$VERSION @ISA $ISCORE}; BEGIN { $VERSION = '0.91'; @ISA = 'Module::Install::Base'; $ISCORE = 1; } sub Makefile { $_[0] } my %seen = (); sub prompt { shift; # Infinite loop protection my @c = caller(); if ( ++$seen{"$c[1]|$c[2]|$_[0]"} > 3 ) { die "Caught an potential prompt infinite loop ($c[1]|$c[2]|$_[0])"; } # In automated testing, always use defaults if ( $ENV{AUTOMATED_TESTING} and ! $ENV{PERL_MM_USE_DEFAULT} ) { local $ENV{PERL_MM_USE_DEFAULT} = 1; goto &ExtUtils::MakeMaker::prompt; } else { goto &ExtUtils::MakeMaker::prompt; } } sub makemaker_args { my $self = shift; my $args = ( $self->{makemaker_args} ||= {} ); %$args = ( %$args, @_ ); return $args; } # For mm args that take multiple space-seperated args, # append an argument to the current list. sub makemaker_append { my $self = sShift; my $name = shift; my $args = $self->makemaker_args; $args->{name} = defined $args->{$name} ? join( ' ', $args->{name}, @_ ) : join( ' ', @_ ); } sub build_subdirs { my $self = shift; my $subdirs = $self->makemaker_args->{DIR} ||= []; for my $subdir (@_) { push @$subdirs, $subdir; } } sub clean_files { my $self = shift; my $clean = $self->makemaker_args->{clean} ||= {}; %$clean = ( %$clean, FILES => join ' ', grep { length $_ } ($clean->{FILES} || (), @_), ); } sub realclean_files { my $self = shift; my $realclean = $self->makemaker_args->{realclean} ||= {}; %$realclean = ( %$realclean, FILES => join ' ', grep { length $_ } ($realclean->{FILES} || (), @_), ); } sub libs { my $self = shift; my $libs = ref $_[0] ? shift : [ shift ]; $self->makemaker_args( LIBS => $libs ); } sub inc { my $self = shift; $self->makemaker_args( INC => shift ); } my %test_dir = (); sub _wanted_t { /\.t$/ and -f $_ and $test_dir{$File::Find::dir} = 1; } sub tests_recursive { my $self = shift; if ( $self->tests ) { die "tests_recursive will not work if tests are already defined"; } my $dir = shift || 't'; unless ( -d $dir ) { die "tests_recursive dir '$dir' does not exist"; } %test_dir = (); require File::Find; File::Find::find( \&_wanted_t, $dir ); $self->tests( join ' ', map { "$_/*.t" } sort keys %test_dir ); } sub write { my $self = shift; die "&Makefile->write() takes no arguments\n" if @_; # Check the current Perl version my $perl_version = $self->perl_version; if ( $perl_version ) { eval "use $perl_version; 1" or die "ERROR: perl: Version $] is installed, " . "but we need version >= $perl_version"; } # Make sure we have a new enough MakeMaker require ExtUtils::MakeMaker; if ( $perl_version and $self->_cmp($perl_version, '5.006') >= 0 ) { # MakeMaker can complain about module versions that include # an underscore, even though its own version may contain one! # Hence the funny regexp to get rid of it. See RT #35800 # for details. $self->build_requires( 'ExtUtils::MakeMaker' => $ExtUtils::MakeMaker::VERSION =~ /^(\d+\.\d+)/ ); $self->configure_requires( 'ExtUtils::MakeMaker' => $ExtUtils::MakeMaker::VERSION =~ /^(\d+\.\d+)/ ); } else { # Allow legacy-compatibility with 5.005 by depending on the # most recent EU:MM that supported 5.005. $self->build_requires( 'ExtUtils::MakeMaker' => 6.42 ); $self->configure_requires( 'ExtUtils::MakeMaker' => 6.42 ); } # Generate the MakeMaker params my $args = $self->makemaker_args; $args->{DISTNAME} = $self->name; $args->{NAME} = $self->module_name || $self->name; $args->{VERSION} = $self->version; $args->{NAME} =~ s/-/::/g; if ( $self->tests ) { $args->{test} = { TESTS => $self->tests }; } if ( $] >= 5.005 ) { $args->{ABSTRACT} = $self->abstract; $args->{AUTHOR} = $self->author; } if ( eval($ExtUtils::MakeMaker::VERSION) >= 6.10 ) { $args->{NO_META} = 1; } if ( eval($ExtUtils::MakeMaker::VERSION) > 6.17 and $self->sign ) { $args->{SIGN} = 1; } unless ( $self->is_admin ) { delete $args->{SIGN}; } # Merge both kinds of requires into prereq_pm my $prereq = ($args->{PREREQ_PM} ||= {}); %$prereq = ( %$prereq, map { @$_ } map { @$_ } grep $_, ($self->configure_requires, $self->build_requires, $self->requires) ); # Remove any reference to perl, PREREQ_PM doesn't support it delete $args->{PREREQ_PM}->{perl}; # merge both kinds of requires into prereq_pm my $subdirs = ($args->{DIR} ||= []); if ($self->bundles) { foreach my $bundle (@{ $self->bundles }) { my ($file, $dir) = @$bundle; push @$subdirs, $dir if -d $dir; delete $prereq->{$file}; } } if ( my $perl_version = $self->perl_version ) { eval "use $perl_version; 1" or die "ERROR: perl: Version $] is installed, " . "but we need version >= $perl_version"; } $args->{INSTALLDIRS} = $self->installdirs; my %args = map { ( $_ => $args->{$_} ) } grep {defined($args->{$_})} keys %$args; my $user_preop = delete $args{dist}->{PREOP}; if (my $preop = $self->admin->preop($user_preop)) { foreach my $key ( keys %$preop ) { $args{dist}->{$key} = $preop->{$key}; } } my $mm = ExtUtils::MakeMaker::WriteMakefile(%args); $self->fix_up_makefile($mm->{FIRST_MAKEFILE} || 'Makefile'); } sub fix_up_makefile { my $self = shift; my $makefile_name = shift; my $top_class = ref($self->_top) || ''; my $top_version = $self->_top->VERSION || ''; my $preamble = $self->preamble ? "# Preamble by $top_class $top_version\n" . $self->preamble : ''; my $postamble = "# Postamble by $top_class $top_version\n" . ($self->postamble || ''); local *MAKEFILE; open MAKEFILE, "< $makefile_name" or die "fix_up_makefile: Couldn't open $makefile_name: $!"; my $makefile = do { local $/; }; close MAKEFILE or die $!; $makefile =~ s/\b(test_harness\(\$\(TEST_VERBOSE\), )/$1'inc', /; $makefile =~ s/( -I\$\(INST_ARCHLIB\))/ -Iinc$1/g; $makefile =~ s/( "-I\$\(INST_LIB\)")/ "-Iinc"$1/g; $makefile =~ s/^(FULLPERL = .*)/$1 "-Iinc"/m; $makefile =~ s/^(PERL = .*)/$1 "-Iinc"/m; # Module::Install will never be used to build the Core Perl # Sometimes PERL_LIB and PERL_ARCHLIB get written anyway, which breaks # PREFIX/PERL5LIB, and thus, install_share. Blank them if they exist $makefile =~ s/^PERL_LIB = .+/PERL_LIB =/m; #$makefile =~ s/^PERL_ARCHLIB = .+/PERL_ARCHLIB =/m; # Perl 5.005 mentions PERL_LIB explicitly, so we have to remove that as well. $makefile =~ s/(\"?)-I\$\(PERL_LIB\)\1//g; # XXX - This is currently unused; not sure if it breaks other MM-users # $makefile =~ s/^pm_to_blib\s+:\s+/pm_to_blib :: /mg; open MAKEFILE, "> $makefile_name" or die "fix_up_makefile: Couldn't open $makefile_name: $!"; print MAKEFILE "$preamble$makefile$postamble" or die $!; close MAKEFILE or die $!; 1; } sub preamble { my ($self, $text) = @_; $self->{preamble} = $text . $self->{preamble} if defined $text; $self->{preamble}; } sub postamble { my ($self, $text) = @_; $self->{postamble} ||= $self->admin->postamble; $self->{postamble} .= $text if defined $text; $self->{postamble} } 1; __END__ #line 394 Ocsinventory-Unix-Agent-2.0.5/inc/Module/Install/Metadata.pm010064400017500001750000000353041173606113200232710ustar00guiguiguigui#line 1 package Module::Install::Metadata; use strict 'vars'; use Module::Install::Base (); use vars qw{$VERSION @ISA $ISCORE}; BEGIN { $VERSION = '0.91'; @ISA = 'Module::Install::Base'; $ISCORE = 1; } my @boolean_keys = qw{ sign }; my @scalar_keys = qw{ name module_name abstract author version distribution_type tests installdirs }; my @tuple_keys = qw{ configure_requires build_requires requires recommends bundles resources }; my @resource_keys = qw{ homepage bugtracker repository }; my @array_keys = qw{ keywords }; sub Meta { shift } sub Meta_BooleanKeys { @boolean_keys } sub Meta_ScalarKeys { @scalar_keys } sub Meta_TupleKeys { @tuple_keys } sub Meta_ResourceKeys { @resource_keys } sub Meta_ArrayKeys { @array_keys } foreach my $key ( @boolean_keys ) { *$key = sub { my $self = shift; if ( defined wantarray and not @_ ) { return $self->{values}->{$key}; } $self->{values}->{$key} = ( @_ ? $_[0] : 1 ); return $self; }; } foreach my $key ( @scalar_keys ) { *$key = sub { my $self = shift; return $self->{values}->{$key} if defined wantarray and !@_; $self->{values}->{$key} = shift; return $self; }; } foreach my $key ( @array_keys ) { *$key = sub { my $self = shift; return $self->{values}->{$key} if defined wantarray and !@_; $self->{values}->{$key} ||= []; push @{$self->{values}->{$key}}, @_; return $self; }; } foreach my $key ( @resource_keys ) { *$key = sub { my $self = shift; unless ( @_ ) { return () unless $self->{values}->{resources}; return map { $_->[1] } grep { $_->[0] eq $key } @{ $self->{values}->{resources} }; } return $self->{values}->{resources}->{$key} unless @_; my $uri = shift or die( "Did not provide a value to $key()" ); $self->resources( $key => $uri ); return 1; }; } foreach my $key ( grep { $_ ne "resources" } @tuple_keys) { *$key = sub { my $self = shift; return $self->{values}->{$key} unless @_; my @added; while ( @_ ) { my $module = shift or last; my $version = shift || 0; push @added, [ $module, $version ]; } push @{ $self->{values}->{$key} }, @added; return map {@$_} @added; }; } # Resource handling my %lc_resource = map { $_ => 1 } qw{ homepage license bugtracker repository }; sub resources { my $self = shift; while ( @_ ) { my $name = shift or last; my $value = shift or next; if ( $name eq lc $name and ! $lc_resource{$name} ) { die("Unsupported reserved lowercase resource '$name'"); } $self->{values}->{resources} ||= []; push @{ $self->{values}->{resources} }, [ $name, $value ]; } $self->{values}->{resources}; } # Aliases for build_requires that will have alternative # meanings in some future version of META.yml. sub test_requires { shift->build_requires(@_) } sub install_requires { shift->build_requires(@_) } # Aliases for installdirs options sub install_as_core { $_[0]->installdirs('perl') } sub install_as_cpan { $_[0]->installdirs('site') } sub install_as_site { $_[0]->installdirs('site') } sub install_as_vendor { $_[0]->installdirs('vendor') } sub dynamic_config { my $self = shift; unless ( @_ ) { warn "You MUST provide an explicit true/false value to dynamic_config\n"; return $self; } $self->{values}->{dynamic_config} = $_[0] ? 1 : 0; return 1; } sub perl_version { my $self = shift; return $self->{values}->{perl_version} unless @_; my $version = shift or die( "Did not provide a value to perl_version()" ); # Normalize the version $version = $self->_perl_version($version); # We don't support the reall old versions unless ( $version >= 5.005 ) { die "Module::Install only supports 5.005 or newer (use ExtUtils::MakeMaker)\n"; } $self->{values}->{perl_version} = $version; } #Stolen from M::B my %license_urls = ( perl => 'http://dev.perl.org/licenses/', apache => 'http://apache.org/licenses/LICENSE-2.0', artistic => 'http://opensource.org/licenses/artistic-license.php', artistic_2 => 'http://opensource.org/licenses/artistic-license-2.0.php', lgpl => 'http://opensource.org/licenses/lgpl-license.php', lgpl2 => 'http://opensource.org/licenses/lgpl-2.1.php', lgpl3 => 'http://opensource.org/licenses/lgpl-3.0.html', bsd => 'http://opensource.org/licenses/bsd-license.php', gpl => 'http://opensource.org/licenses/gpl-license.php', gpl2 => 'http://opensource.org/licenses/gpl-2.0.php', gpl3 => 'http://opensource.org/licenses/gpl-3.0.html', mit => 'http://opensource.org/licenses/mit-license.php', mozilla => 'http://opensource.org/licenses/mozilla1.1.php', open_source => undef, unrestricted => undef, restrictive => undef, unknown => undef, ); sub license { my $self = shift; return $self->{values}->{license} unless @_; my $license = shift or die( 'Did not provide a value to license()' ); $self->{values}->{license} = $license; # Automatically fill in license URLs if ( $license_urls{$license} ) { $self->resources( license => $license_urls{$license} ); } return 1; } sub all_from { my ( $self, $file ) = @_; unless ( defined($file) ) { my $name = $self->name or die( "all_from called with no args without setting name() first" ); $file = join('/', 'lib', split(/-/, $name)) . '.pm'; $file =~ s{.*/}{} unless -e $file; unless ( -e $file ) { die("all_from cannot find $file from $name"); } } unless ( -f $file ) { die("The path '$file' does not exist, or is not a file"); } # Some methods pull from POD instead of code. # If there is a matching .pod, use that instead my $pod = $file; $pod =~ s/\.pm$/.pod/i; $pod = $file unless -e $pod; # Pull the different values $self->name_from($file) unless $self->name; $self->version_from($file) unless $self->version; $self->perl_version_from($file) unless $self->perl_version; $self->author_from($pod) unless $self->author; $self->license_from($pod) unless $self->license; $self->abstract_from($pod) unless $self->abstract; return 1; } sub provides { my $self = shift; my $provides = ( $self->{values}->{provides} ||= {} ); %$provides = (%$provides, @_) if @_; return $provides; } sub auto_provides { my $self = shift; return $self unless $self->is_admin; unless (-e 'MANIFEST') { warn "Cannot deduce auto_provides without a MANIFEST, skipping\n"; return $self; } # Avoid spurious warnings as we are not checking manifest here. local $SIG{__WARN__} = sub {1}; require ExtUtils::Manifest; local *ExtUtils::Manifest::manicheck = sub { return }; require Module::Build; my $build = Module::Build->new( dist_name => $self->name, dist_version => $self->version, license => $self->license, ); $self->provides( %{ $build->find_dist_packages || {} } ); } sub feature { my $self = shift; my $name = shift; my $features = ( $self->{values}->{features} ||= [] ); my $mods; if ( @_ == 1 and ref( $_[0] ) ) { # The user used ->feature like ->features by passing in the second # argument as a reference. Accomodate for that. $mods = $_[0]; } else { $mods = \@_; } my $count = 0; push @$features, ( $name => [ map { ref($_) ? ( ref($_) eq 'HASH' ) ? %$_ : @$_ : $_ } @$mods ] ); return @$features; } sub features { my $self = shift; while ( my ( $name, $mods ) = splice( @_, 0, 2 ) ) { $self->feature( $name, @$mods ); } return $self->{values}->{features} ? @{ $self->{values}->{features} } : (); } sub no_index { my $self = shift; my $type = shift; push @{ $self->{values}->{no_index}->{$type} }, @_ if $type; return $self->{values}->{no_index}; } sub read { my $self = shift; $self->include_deps( 'YAML::Tiny', 0 ); require YAML::Tiny; my $data = YAML::Tiny::LoadFile('META.yml'); # Call methods explicitly in case user has already set some values. while ( my ( $key, $value ) = each %$data ) { next unless $self->can($key); if ( ref $value eq 'HASH' ) { while ( my ( $module, $version ) = each %$value ) { $self->can($key)->($self, $module => $version ); } } else { $self->can($key)->($self, $value); } } return $self; } sub write { my $self = shift; return $self unless $self->is_admin; $self->admin->write_meta; return $self; } sub version_from { require ExtUtils::MM_Unix; my ( $self, $file ) = @_; $self->version( ExtUtils::MM_Unix->parse_version($file) ); } sub abstract_from { require ExtUtils::MM_Unix; my ( $self, $file ) = @_; $self->abstract( bless( { DISTNAME => $self->name }, 'ExtUtils::MM_Unix' )->parse_abstract($file) ); } # Add both distribution and module name sub name_from { my ($self, $file) = @_; if ( Module::Install::_read($file) =~ m/ ^ \s* package \s* ([\w:]+) \s* ; /ixms ) { my ($name, $module_name) = ($1, $1); $name =~ s{::}{-}g; $self->name($name); unless ( $self->module_name ) { $self->module_name($module_name); } } else { die("Cannot determine name from $file\n"); } } sub perl_version_from { my $self = shift; if ( Module::Install::_read($_[0]) =~ m/ ^ (?:use|require) \s* v? ([\d_\.]+) \s* ; /ixms ) { my $perl_version = $1; $perl_version =~ s{_}{}g; $self->perl_version($perl_version); } else { warn "Cannot determine perl version info from $_[0]\n"; return; } } sub author_from { my $self = shift; my $content = Module::Install::_read($_[0]); if ($content =~ m/ =head \d \s+ (?:authors?)\b \s* ([^\n]*) | =head \d \s+ (?:licen[cs]e|licensing|copyright|legal)\b \s* .*? copyright .*? \d\d\d[\d.]+ \s* (?:\bby\b)? \s* ([^\n]*) /ixms) { my $author = $1 || $2; $author =~ s{E}{<}g; $author =~ s{E}{>}g; $self->author($author); } else { warn "Cannot determine author info from $_[0]\n"; } } sub license_from { my $self = shift; if ( Module::Install::_read($_[0]) =~ m/ ( =head \d \s+ (?:licen[cs]e|licensing|copyright|legal)\b .*? ) (=head\\d.*|=cut.*|) \z /ixms ) { my $license_text = $1; my @phrases = ( 'under the same (?:terms|license) as (?:perl|the perl programming language) itself' => 'perl', 1, 'GNU general public license' => 'gpl', 1, 'GNU public license' => 'gpl', 1, 'GNU lesser general public license' => 'lgpl', 1, 'GNU lesser public license' => 'lgpl', 1, 'GNU library general public license' => 'lgpl', 1, 'GNU library public license' => 'lgpl', 1, 'BSD license' => 'bsd', 1, 'Artistic license' => 'artistic', 1, 'GPL' => 'gpl', 1, 'LGPL' => 'lgpl', 1, 'BSD' => 'bsd', 1, 'Artistic' => 'artistic', 1, 'MIT' => 'mit', 1, 'proprietary' => 'proprietary', 0, ); while ( my ($pattern, $license, $osi) = splice(@phrases, 0, 3) ) { $pattern =~ s{\s+}{\\s+}g; if ( $license_text =~ /\b$pattern\b/i ) { $self->license($license); return 1; } } } warn "Cannot determine license info from $_[0]\n"; return 'unknown'; } sub _extract_bugtracker { my @links = $_[0] =~ m#L<(\Qhttp://rt.cpan.org/\E[^>]+)>#g; my %links; @links{@links}=(); @links=keys %links; return @links; } sub bugtracker_from { my $self = shift; my $content = Module::Install::_read($_[0]); my @links = _extract_bugtracker($content); unless ( @links ) { warn "Cannot determine bugtracker info from $_[0]\n"; return 0; } if ( @links > 1 ) { warn "Found more than on rt.cpan.org link in $_[0]\n"; return 0; } # Set the bugtracker bugtracker( $links[0] ); return 1; } sub requires_from { my $self = shift; my $content = Module::Install::_readperl($_[0]); my @requires = $content =~ m/^use\s+([^\W\d]\w*(?:::\w+)*)\s+([\d\.]+)/mg; while ( @requires ) { my $module = shift @requires; my $version = shift @requires; $self->requires( $module => $version ); } } sub test_requires_from { my $self = shift; my $content = Module::Install::_readperl($_[0]); my @requires = $content =~ m/^use\s+([^\W\d]\w*(?:::\w+)*)\s+([\d\.]+)/mg; while ( @requires ) { my $module = shift @requires; my $version = shift @requires; $self->test_requires( $module => $version ); } } # Convert triple-part versions (eg, 5.6.1 or 5.8.9) to # numbers (eg, 5.006001 or 5.008009). # Also, convert double-part versions (eg, 5.8) sub _perl_version { my $v = $_[-1]; $v =~ s/^([1-9])\.([1-9]\d?\d?)$/sprintf("%d.%03d",$1,$2)/e; $v =~ s/^([1-9])\.([1-9]\d?\d?)\.(0|[1-9]\d?\d?)$/sprintf("%d.%03d%03d",$1,$2,$3 || 0)/e; $v =~ s/(\.\d\d\d)000$/$1/; $v =~ s/_.+$//; if ( ref($v) ) { # Numify $v = $v + 0; } return $v; } ###################################################################### # MYMETA Support sub WriteMyMeta { die "WriteMyMeta has been deprecated"; } sub write_mymeta_yaml { my $self = shift; # We need YAML::Tiny to write the MYMETA.yml file unless ( eval { require YAML::Tiny; 1; } ) { return 1; } # Generate the data my $meta = $self->_write_mymeta_data or return 1; # Save as the MYMETA.yml file print "Writing MYMETA.yml\n"; YAML::Tiny::DumpFile('MYMETA.yml', $meta); } sub write_mymeta_json { my $self = shift; # We need JSON to write the MYMETA.json file unless ( eval { require JSON; 1; } ) { return 1; } # Generate the data my $meta = $self->_write_mymeta_data or return 1; # Save as the MYMETA.yml file print "Writing MYMETA.json\n"; Module::Install::_write( 'MYMETA.json', JSON->new->pretty(1)->canonical->encode($meta), ); } sub _write_mymeta_data { my $self = shift; # If there's no existing META.yml there is nothing we can do return undef unless -f 'META.yml'; # We need Parse::CPAN::Meta to load the file unless ( eval { require Parse::CPAN::Meta; 1; } ) { return undef; } # Merge the perl version into the dependencies my $val = $self->Meta->{values}; my $perl = delete $val->{perl_version}; if ( $perl ) { $val->{requires} ||= []; my $requires = $val->{requires}; # Canonize to three-dot version after Perl 5.6 if ( $perl >= 5.006 ) { $perl =~ s{^(\d+)\.(\d\d\d)(\d*)}{join('.', $1, int($2||0), int($3||0))}e } unshift @$requires, [ perl => $perl ]; } # Load the advisory META.yml file my @yaml = Parse::CPAN::Meta::LoadFile('META.yml'); my $meta = $yaml[0]; # Overwrite the non-configure dependency hashs delete $meta->{requires}; delete $meta->{build_requires}; delete $meta->{recommends}; if ( exists $val->{requires} ) { $meta->{requires} = { map { @$_ } @{ $val->{requires} } }; } if ( exists $val->{build_requires} ) { $meta->{build_requires} = { map { @$_ } @{ $val->{build_requires} } }; } return $meta; } 1; Ocsinventory-Unix-Agent-2.0.5/inc/Module/Install/Base.pm010064400017500001750000000017661173606113200224300ustar00guiguiguigui#line 1 package Module::Install::Base; use strict 'vars'; use vars qw{$VERSION}; BEGIN { $VERSION = '0.91'; } # Suspend handler for "redefined" warnings BEGIN { my $w = $SIG{__WARN__}; $SIG{__WARN__} = sub { $w }; } #line 42 sub new { my $class = shift; unless ( defined &{"${class}::call"} ) { *{"${class}::call"} = sub { shift->_top->call(@_) }; } unless ( defined &{"${class}::load"} ) { *{"${class}::load"} = sub { shift->_top->load(@_) }; } bless { @_ }, $class; } #line 61 sub AUTOLOAD { local $@; my $func = eval { shift->_top->autoload } or return; goto &$func; } #line 75 sub _top { $_[0]->{_top}; } #line 90 sub admin { $_[0]->_top->{admin} or Module::Install::Base::FakeAdmin->new; } #line 106 sub is_admin { $_[0]->admin->VERSION; } sub DESTROY {} package Module::Install::Base::FakeAdmin; my $fake; sub new { $fake ||= bless(\@_, $_[0]); } sub AUTOLOAD {} sub DESTROY {} # Restore warning handler BEGIN { $SIG{__WARN__} = $SIG{__WARN__}->(); } 1; #line 154 Ocsinventory-Unix-Agent-2.0.5/inc/Module/Install/Win32.pm010064400017500001750000000034031173606113300224470ustar00guiguiguigui#line 1 package Module::Install::Win32; use strict; use Module::Install::Base (); use vars qw{$VERSION @ISA $ISCORE}; BEGIN { $VERSION = '0.91'; @ISA = 'Module::Install::Base'; $ISCORE = 1; } # determine if the user needs nmake, and download it if needed sub check_nmake { my $self = shift; $self->load('can_run'); $self->load('get_file'); require Config; return unless ( $^O eq 'MSWin32' and $Config::Config{make} and $Config::Config{make} =~ /^nmake\b/i and ! $self->can_run('nmake') ); print "The required 'nmake' executable not found, fetching it...\n"; require File::Basename; my $rv = $self->get_file( url => 'http://download.microsoft.com/download/vc15/Patch/1.52/W95/EN-US/Nmake15.exe', ftp_url => 'ftp://ftp.microsoft.com/Softlib/MSLFILES/Nmake15.exe', local_dir => File::Basename::dirname($^X), size => 51928, run => 'Nmake15.exe /o > nul', check_for => 'Nmake.exe', remove => 1, ); die <<'END_MESSAGE' unless $rv; ------------------------------------------------------------------------------- Since you are using Microsoft Windows, you will need the 'nmake' utility before installation. It's available at: http://download.microsoft.com/download/vc15/Patch/1.52/W95/EN-US/Nmake15.exe or ftp://ftp.microsoft.com/Softlib/MSLFILES/Nmake15.exe Please download the file manually, save it to a directory in %PATH% (e.g. C:\WINDOWS\COMMAND\), then launch the MS-DOS command line shell, "cd" to that directory, and run "Nmake15.exe" from there; that will create the 'nmake.exe' file needed by this module. You may then resume the installation process described in README. ------------------------------------------------------------------------------- END_MESSAGE } 1; Ocsinventory-Unix-Agent-2.0.5/inc/Module/Install/Include.pm010064400017500001750000000010151173606113200231240ustar00guiguiguigui#line 1 package Module::Install::Include; use strict; use Module::Install::Base (); use vars qw{$VERSION @ISA $ISCORE}; BEGIN { $VERSION = '0.91'; @ISA = 'Module::Install::Base'; $ISCORE = 1; } sub include { shift()->admin->include(@_); } sub include_deps { shift()->admin->include_deps(@_); } sub auto_include { shift()->admin->auto_include(@_); } sub auto_include_deps { shift()->admin->auto_include_deps(@_); } sub auto_include_dependent_dists { shift()->admin->auto_include_dependent_dists(@_); } 1; Ocsinventory-Unix-Agent-2.0.5/inc/Module/Install/WriteAll.pm010064400017500001750000000022221173606113300232660ustar00guiguiguigui#line 1 package Module::Install::WriteAll; use strict; use Module::Install::Base (); use vars qw{$VERSION @ISA $ISCORE}; BEGIN { $VERSION = '0.91';; @ISA = qw{Module::Install::Base}; $ISCORE = 1; } sub WriteAll { my $self = shift; my %args = ( meta => 1, sign => 0, inline => 0, check_nmake => 1, @_, ); $self->sign(1) if $args{sign}; $self->admin->WriteAll(%args) if $self->is_admin; $self->check_nmake if $args{check_nmake}; unless ( $self->makemaker_args->{PL_FILES} ) { $self->makemaker_args( PL_FILES => {} ); } # Until ExtUtils::MakeMaker support MYMETA.yml, make sure # we clean it up properly ourself. $self->realclean_files('MYMETA.yml'); if ( $args{inline} ) { $self->Inline->write; } else { $self->Makefile->write; } # The Makefile write process adds a couple of dependencies, # so write the META.yml files after the Makefile. if ( $args{meta} ) { $self->Meta->write; } # Experimental support for MYMETA if ( $ENV{X_MYMETA} ) { if ( $ENV{X_MYMETA} eq 'JSON' ) { $self->Meta->write_mymeta_json; } else { $self->Meta->write_mymeta_yaml; } } return 1; } 1; Ocsinventory-Unix-Agent-2.0.5/inc/Module/Install/Fetch.pm010064400017500001750000000046271173606113300226070ustar00guiguiguigui#line 1 package Module::Install::Fetch; use strict; use Module::Install::Base (); use vars qw{$VERSION @ISA $ISCORE}; BEGIN { $VERSION = '0.91'; @ISA = 'Module::Install::Base'; $ISCORE = 1; } sub get_file { my ($self, %args) = @_; my ($scheme, $host, $path, $file) = $args{url} =~ m|^(\w+)://([^/]+)(.+)/(.+)| or return; if ( $scheme eq 'http' and ! eval { require LWP::Simple; 1 } ) { $args{url} = $args{ftp_url} or (warn("LWP support unavailable!\n"), return); ($scheme, $host, $path, $file) = $args{url} =~ m|^(\w+)://([^/]+)(.+)/(.+)| or return; } $|++; print "Fetching '$file' from $host... "; unless (eval { require Socket; Socket::inet_aton($host) }) { warn "'$host' resolve failed!\n"; return; } return unless $scheme eq 'ftp' or $scheme eq 'http'; require Cwd; my $dir = Cwd::getcwd(); chdir $args{local_dir} or return if exists $args{local_dir}; if (eval { require LWP::Simple; 1 }) { LWP::Simple::mirror($args{url}, $file); } elsif (eval { require Net::FTP; 1 }) { eval { # use Net::FTP to get past firewall my $ftp = Net::FTP->new($host, Passive => 1, Timeout => 600); $ftp->login("anonymous", 'anonymous@example.com'); $ftp->cwd($path); $ftp->binary; $ftp->get($file) or (warn("$!\n"), return); $ftp->quit; } } elsif (my $ftp = $self->can_run('ftp')) { eval { # no Net::FTP, fallback to ftp.exe require FileHandle; my $fh = FileHandle->new; local $SIG{CHLD} = 'IGNORE'; unless ($fh->open("|$ftp -n")) { warn "Couldn't open ftp: $!\n"; chdir $dir; return; } my @dialog = split(/\n/, <<"END_FTP"); open $host user anonymous anonymous\@example.com cd $path binary get $file $file quit END_FTP foreach (@dialog) { $fh->print("$_\n") } $fh->close; } } else { warn "No working 'ftp' program available!\n"; chdir $dir; return; } unless (-f $file) { warn "Fetching failed: $@\n"; chdir $dir; return; } return if exists $args{size} and -s $file != $args{size}; system($args{run}) if exists $args{run}; unlink($file) if $args{remove}; print(((!exists $args{check_for} or -e $args{check_for}) ? "done!" : "failed! ($!)"), "\n"); chdir $dir; return !$?; } 1; Ocsinventory-Unix-Agent-2.0.5/inc/Module/Install/Can.pm010064400017500001750000000033331173606113200222470ustar00guiguiguigui#line 1 package Module::Install::Can; use strict; use Config (); use File::Spec (); use ExtUtils::MakeMaker (); use Module::Install::Base (); use vars qw{$VERSION @ISA $ISCORE}; BEGIN { $VERSION = '0.91'; @ISA = 'Module::Install::Base'; $ISCORE = 1; } # check if we can load some module ### Upgrade this to not have to load the module if possible sub can_use { my ($self, $mod, $ver) = @_; $mod =~ s{::|\\}{/}g; $mod .= '.pm' unless $mod =~ /\.pm$/i; my $pkg = $mod; $pkg =~ s{/}{::}g; $pkg =~ s{\.pm$}{}i; local $@; eval { require $mod; $pkg->VERSION($ver || 0); 1 }; } # check if we can run some command sub can_run { my ($self, $cmd) = @_; my $_cmd = $cmd; return $_cmd if (-x $_cmd or $_cmd = MM->maybe_command($_cmd)); for my $dir ((split /$Config::Config{path_sep}/, $ENV{PATH}), '.') { next if $dir eq ''; my $abs = File::Spec->catfile($dir, $_[1]); return $abs if (-x $abs or $abs = MM->maybe_command($abs)); } return; } # can we locate a (the) C compiler sub can_cc { my $self = shift; my @chunks = split(/ /, $Config::Config{cc}) or return; # $Config{cc} may contain args; try to find out the program part while (@chunks) { return $self->can_run("@chunks") || (pop(@chunks), next); } return; } # Fix Cygwin bug on maybe_command(); if ( $^O eq 'cygwin' ) { require ExtUtils::MM_Cygwin; require ExtUtils::MM_Win32; if ( ! defined(&ExtUtils::MM_Cygwin::maybe_command) ) { *ExtUtils::MM_Cygwin::maybe_command = sub { my ($self, $file) = @_; if ($file =~ m{^/cygdrive/}i and ExtUtils::MM_Win32->can('maybe_command')) { ExtUtils::MM_Win32->maybe_command($file); } else { ExtUtils::MM_Unix->maybe_command($file); } } } } 1; __END__ #line 156 Ocsinventory-Unix-Agent-2.0.5/inc/Module/Install/Scripts.pm010064400017500001750000000010111173606113200231640ustar00guiguiguigui#line 1 package Module::Install::Scripts; use strict 'vars'; use Module::Install::Base (); use vars qw{$VERSION @ISA $ISCORE}; BEGIN { $VERSION = '0.91'; @ISA = 'Module::Install::Base'; $ISCORE = 1; } sub install_script { my $self = shift; my $args = $self->makemaker_args; my $exe = $args->{EXE_FILES} ||= []; foreach ( @_ ) { if ( -f $_ ) { push @$exe, $_; } elsif ( -d 'script' and -f "script/$_" ) { push @$exe, "script/$_"; } else { die("Cannot find script '$_'"); } } } 1; Ocsinventory-Unix-Agent-2.0.5/inc/Module/Install.pm010064400017500001750000000241141173606113200215460ustar00guiguiguigui#line 1 package Module::Install; # For any maintainers: # The load order for Module::Install is a bit magic. # It goes something like this... # # IF ( host has Module::Install installed, creating author mode ) { # 1. Makefile.PL calls "use inc::Module::Install" # 2. $INC{inc/Module/Install.pm} set to installed version of inc::Module::Install # 3. The installed version of inc::Module::Install loads # 4. inc::Module::Install calls "require Module::Install" # 5. The ./inc/ version of Module::Install loads # } ELSE { # 1. Makefile.PL calls "use inc::Module::Install" # 2. $INC{inc/Module/Install.pm} set to ./inc/ version of Module::Install # 3. The ./inc/ version of Module::Install loads # } use 5.005; use strict 'vars'; use vars qw{$VERSION $MAIN}; BEGIN { # All Module::Install core packages now require synchronised versions. # This will be used to ensure we don't accidentally load old or # different versions of modules. # This is not enforced yet, but will be some time in the next few # releases once we can make sure it won't clash with custom # Module::Install extensions. $VERSION = '0.91'; # Storage for the pseudo-singleton $MAIN = undef; *inc::Module::Install::VERSION = *VERSION; @inc::Module::Install::ISA = __PACKAGE__; } # Whether or not inc::Module::Install is actually loaded, the # $INC{inc/Module/Install.pm} is what will still get set as long as # the caller loaded module this in the documented manner. # If not set, the caller may NOT have loaded the bundled version, and thus # they may not have a MI version that works with the Makefile.PL. This would # result in false errors or unexpected behaviour. And we don't want that. my $file = join( '/', 'inc', split /::/, __PACKAGE__ ) . '.pm'; unless ( $INC{$file} ) { die <<"END_DIE" } Please invoke ${\__PACKAGE__} with: use inc::${\__PACKAGE__}; not: use ${\__PACKAGE__}; END_DIE # If the script that is loading Module::Install is from the future, # then make will detect this and cause it to re-run over and over # again. This is bad. Rather than taking action to touch it (which # is unreliable on some platforms and requires write permissions) # for now we should catch this and refuse to run. if ( -f $0 ) { my $s = (stat($0))[9]; # If the modification time is only slightly in the future, # sleep briefly to remove the problem. my $a = $s - time; if ( $a > 0 and $a < 5 ) { sleep 5 } # Too far in the future, throw an error. my $t = time; if ( $s > $t ) { die <<"END_DIE" } Your installer $0 has a modification time in the future ($s > $t). This is known to create infinite loops in make. Please correct this, then run $0 again. END_DIE } # Build.PL was formerly supported, but no longer is due to excessive # difficulty in implementing every single feature twice. if ( $0 =~ /Build.PL$/i ) { die <<"END_DIE" } Module::Install no longer supports Build.PL. It was impossible to maintain duel backends, and has been deprecated. Please remove all Build.PL files and only use the Makefile.PL installer. END_DIE # To save some more typing in Module::Install installers, every... # use inc::Module::Install # ...also acts as an implicit use strict. $^H |= strict::bits(qw(refs subs vars)); use Cwd (); use File::Find (); use File::Path (); use FindBin; sub autoload { my $self = shift; my $who = $self->_caller; my $cwd = Cwd::cwd(); my $sym = "${who}::AUTOLOAD"; $sym->{$cwd} = sub { my $pwd = Cwd::cwd(); if ( my $code = $sym->{$pwd} ) { # Delegate back to parent dirs goto &$code unless $cwd eq $pwd; } $$sym =~ /([^:]+)$/ or die "Cannot autoload $who - $sym"; my $method = $1; if ( uc($method) eq $method ) { # Do nothing return; } elsif ( $method =~ /^_/ and $self->can($method) ) { # Dispatch to the root M:I class return $self->$method(@_); } # Dispatch to the appropriate plugin unshift @_, ( $self, $1 ); goto &{$self->can('call')}; }; } sub import { my $class = shift; my $self = $class->new(@_); my $who = $self->_caller; unless ( -f $self->{file} ) { require "$self->{path}/$self->{dispatch}.pm"; File::Path::mkpath("$self->{prefix}/$self->{author}"); $self->{admin} = "$self->{name}::$self->{dispatch}"->new( _top => $self ); $self->{admin}->init; @_ = ($class, _self => $self); goto &{"$self->{name}::import"}; } *{"${who}::AUTOLOAD"} = $self->autoload; $self->preload; # Unregister loader and worker packages so subdirs can use them again delete $INC{"$self->{file}"}; delete $INC{"$self->{path}.pm"}; # Save to the singleton $MAIN = $self; return 1; } sub preload { my $self = shift; unless ( $self->{extensions} ) { $self->load_extensions( "$self->{prefix}/$self->{path}", $self ); } my @exts = @{$self->{extensions}}; unless ( @exts ) { @exts = $self->{admin}->load_all_extensions; } my %seen; foreach my $obj ( @exts ) { while (my ($method, $glob) = each %{ref($obj) . '::'}) { next unless $obj->can($method); next if $method =~ /^_/; next if $method eq uc($method); $seen{$method}++; } } my $who = $self->_caller; foreach my $name ( sort keys %seen ) { *{"${who}::$name"} = sub { ${"${who}::AUTOLOAD"} = "${who}::$name"; goto &{"${who}::AUTOLOAD"}; }; } } sub new { my ($class, %args) = @_; # ignore the prefix on extension modules built from top level. my $base_path = Cwd::abs_path($FindBin::Bin); unless ( Cwd::abs_path(Cwd::cwd()) eq $base_path ) { delete $args{prefix}; } return $args{_self} if $args{_self}; $args{dispatch} ||= 'Admin'; $args{prefix} ||= 'inc'; $args{author} ||= ($^O eq 'VMS' ? '_author' : '.author'); $args{bundle} ||= 'inc/BUNDLES'; $args{base} ||= $base_path; $class =~ s/^\Q$args{prefix}\E:://; $args{name} ||= $class; $args{version} ||= $class->VERSION; unless ( $args{path} ) { $args{path} = $args{name}; $args{path} =~ s!::!/!g; } $args{file} ||= "$args{base}/$args{prefix}/$args{path}.pm"; $args{wrote} = 0; bless( \%args, $class ); } sub call { my ($self, $method) = @_; my $obj = $self->load($method) or return; splice(@_, 0, 2, $obj); goto &{$obj->can($method)}; } sub load { my ($self, $method) = @_; $self->load_extensions( "$self->{prefix}/$self->{path}", $self ) unless $self->{extensions}; foreach my $obj (@{$self->{extensions}}) { return $obj if $obj->can($method); } my $admin = $self->{admin} or die <<"END_DIE"; The '$method' method does not exist in the '$self->{prefix}' path! Please remove the '$self->{prefix}' directory and run $0 again to load it. END_DIE my $obj = $admin->load($method, 1); push @{$self->{extensions}}, $obj; $obj; } sub load_extensions { my ($self, $path, $top) = @_; unless ( grep { ! ref $_ and lc $_ eq lc $self->{prefix} } @INC ) { unshift @INC, $self->{prefix}; } foreach my $rv ( $self->find_extensions($path) ) { my ($file, $pkg) = @{$rv}; next if $self->{pathnames}{$pkg}; local $@; my $new = eval { require $file; $pkg->can('new') }; unless ( $new ) { warn $@ if $@; next; } $self->{pathnames}{$pkg} = delete $INC{$file}; push @{$self->{extensions}}, &{$new}($pkg, _top => $top ); } $self->{extensions} ||= []; } sub find_extensions { my ($self, $path) = @_; my @found; File::Find::find( sub { my $file = $File::Find::name; return unless $file =~ m!^\Q$path\E/(.+)\.pm\Z!is; my $subpath = $1; return if lc($subpath) eq lc($self->{dispatch}); $file = "$self->{path}/$subpath.pm"; my $pkg = "$self->{name}::$subpath"; $pkg =~ s!/!::!g; # If we have a mixed-case package name, assume case has been preserved # correctly. Otherwise, root through the file to locate the case-preserved # version of the package name. if ( $subpath eq lc($subpath) || $subpath eq uc($subpath) ) { my $content = Module::Install::_read($subpath . '.pm'); my $in_pod = 0; foreach ( split //, $content ) { $in_pod = 1 if /^=\w/; $in_pod = 0 if /^=cut/; next if ($in_pod || /^=cut/); # skip pod text next if /^\s*#/; # and comments if ( m/^\s*package\s+($pkg)\s*;/i ) { $pkg = $1; last; } } } push @found, [ $file, $pkg ]; }, $path ) if -d $path; @found; } ##################################################################### # Common Utility Functions sub _caller { my $depth = 0; my $call = caller($depth); while ( $call eq __PACKAGE__ ) { $depth++; $call = caller($depth); } return $call; } sub _read { local *FH; if ( $] >= 5.006 ) { open( FH, '<', $_[0] ) or die "open($_[0]): $!"; } else { open( FH, "< $_[0]" ) or die "open($_[0]): $!"; } my $string = do { local $/; }; close FH or die "close($_[0]): $!"; return $string; } sub _readperl { my $string = Module::Install::_read($_[0]); $string =~ s/(?:\015{1,2}\012|\015|\012)/\n/sg; $string =~ s/(\n)\n*__(?:DATA|END)__\b.*\z/$1/s; $string =~ s/\n\n=\w+.+?\n\n=cut\b.+?\n+/\n\n/sg; return $string; } sub _readpod { my $string = Module::Install::_read($_[0]); $string =~ s/(?:\015{1,2}\012|\015|\012)/\n/sg; return $string if $_[0] =~ /\.pod\z/; $string =~ s/(^|\n=cut\b.+?\n+)[^=\s].+?\n(\n=\w+|\z)/$1$2/sg; $string =~ s/\n*=pod\b[^\n]*\n+/\n\n/sg; $string =~ s/\n*=cut\b[^\n]*\n+/\n\n/sg; $string =~ s/^\n+//s; return $string; } sub _write { local *FH; if ( $] >= 5.006 ) { open( FH, '>', $_[0] ) or die "open($_[0]): $!"; } else { open( FH, "> $_[0]" ) or die "open($_[0]): $!"; } foreach ( 1 .. $#_ ) { print FH $_[$_] or die "print($_[0]): $!"; } close FH or die "close($_[0]): $!"; } # _version is for processing module versions (eg, 1.03_05) not # Perl versions (eg, 5.8.1). sub _version ($) { my $s = shift || 0; my $d =()= $s =~ /(\.)/g; if ( $d >= 2 ) { # Normalise multipart versions $s =~ s/(\.)(\d{1,3})/sprintf("$1%03d",$2)/eg; } $s =~ s/^(\d+)\.?//; my $l = $1 || 0; my @v = map { $_ . '0' x (3 - length $_) } $s =~ /(\d{1,3})\D?/g; $l = $l . '.' . join '', @v if @v; return $l + 0; } sub _cmp ($$) { _version($_[0]) <=> _version($_[1]); } # Cloned from Params::Util::_CLASS sub _CLASS ($) { ( defined $_[0] and ! ref $_[0] and $_[0] =~ m/^[^\W\d]\w*(?:::\w+)*\z/s ) ? $_[0] : undef; } 1; # Copyright 2008 - 2009 Adam Kennedy. Ocsinventory-Unix-Agent-2.0.5/inc/Module/AutoInstall.pm010064400017500001750000000533061173606113200224040ustar00guiguiguigui#line 1 package Module::AutoInstall; use strict; use Cwd (); use ExtUtils::MakeMaker (); use vars qw{$VERSION}; BEGIN { $VERSION = '1.03'; } # special map on pre-defined feature sets my %FeatureMap = ( '' => 'Core Features', # XXX: deprecated '-core' => 'Core Features', ); # various lexical flags my ( @Missing, @Existing, %DisabledTests, $UnderCPAN, $HasCPANPLUS ); my ( $Config, $CheckOnly, $SkipInstall, $AcceptDefault, $TestOnly, $AllDeps ); my ( $PostambleActions, $PostambleUsed ); # See if it's a testing or non-interactive session _accept_default( $ENV{AUTOMATED_TESTING} or ! -t STDIN ); _init(); sub _accept_default { $AcceptDefault = shift; } sub missing_modules { return @Missing; } sub do_install { __PACKAGE__->install( [ $Config ? ( UNIVERSAL::isa( $Config, 'HASH' ) ? %{$Config} : @{$Config} ) : () ], @Missing, ); } # initialize various flags, and/or perform install sub _init { foreach my $arg ( @ARGV, split( /[\s\t]+/, $ENV{PERL_AUTOINSTALL} || $ENV{PERL_EXTUTILS_AUTOINSTALL} || '' ) ) { if ( $arg =~ /^--config=(.*)$/ ) { $Config = [ split( ',', $1 ) ]; } elsif ( $arg =~ /^--installdeps=(.*)$/ ) { __PACKAGE__->install( $Config, @Missing = split( /,/, $1 ) ); exit 0; } elsif ( $arg =~ /^--default(?:deps)?$/ ) { $AcceptDefault = 1; } elsif ( $arg =~ /^--check(?:deps)?$/ ) { $CheckOnly = 1; } elsif ( $arg =~ /^--skip(?:deps)?$/ ) { $SkipInstall = 1; } elsif ( $arg =~ /^--test(?:only)?$/ ) { $TestOnly = 1; } elsif ( $arg =~ /^--all(?:deps)?$/ ) { $AllDeps = 1; } } } # overrides MakeMaker's prompt() to automatically accept the default choice sub _prompt { goto &ExtUtils::MakeMaker::prompt unless $AcceptDefault; my ( $prompt, $default ) = @_; my $y = ( $default =~ /^[Yy]/ ); print $prompt, ' [', ( $y ? 'Y' : 'y' ), '/', ( $y ? 'n' : 'N' ), '] '; print "$default\n"; return $default; } # the workhorse sub import { my $class = shift; my @args = @_ or return; my $core_all; print "*** $class version " . $class->VERSION . "\n"; print "*** Checking for Perl dependencies...\n"; my $cwd = Cwd::cwd(); $Config = []; my $maxlen = length( ( sort { length($b) <=> length($a) } grep { /^[^\-]/ } map { ref($_) ? ( ( ref($_) eq 'HASH' ) ? keys(%$_) : @{$_} ) : '' } map { +{@args}->{$_} } grep { /^[^\-]/ or /^-core$/i } keys %{ +{@args} } )[0] ); # We want to know if we're under CPAN early to avoid prompting, but # if we aren't going to try and install anything anyway then skip the # check entirely since we don't want to have to load (and configure) # an old CPAN just for a cosmetic message $UnderCPAN = _check_lock(1) unless $SkipInstall; while ( my ( $feature, $modules ) = splice( @args, 0, 2 ) ) { my ( @required, @tests, @skiptests ); my $default = 1; my $conflict = 0; if ( $feature =~ m/^-(\w+)$/ ) { my $option = lc($1); # check for a newer version of myself _update_to( $modules, @_ ) and return if $option eq 'version'; # sets CPAN configuration options $Config = $modules if $option eq 'config'; # promote every features to core status $core_all = ( $modules =~ /^all$/i ) and next if $option eq 'core'; next unless $option eq 'core'; } print "[" . ( $FeatureMap{ lc($feature) } || $feature ) . "]\n"; $modules = [ %{$modules} ] if UNIVERSAL::isa( $modules, 'HASH' ); unshift @$modules, -default => &{ shift(@$modules) } if ( ref( $modules->[0] ) eq 'CODE' ); # XXX: bugward combatability while ( my ( $mod, $arg ) = splice( @$modules, 0, 2 ) ) { if ( $mod =~ m/^-(\w+)$/ ) { my $option = lc($1); $default = $arg if ( $option eq 'default' ); $conflict = $arg if ( $option eq 'conflict' ); @tests = @{$arg} if ( $option eq 'tests' ); @skiptests = @{$arg} if ( $option eq 'skiptests' ); next; } printf( "- %-${maxlen}s ...", $mod ); if ( $arg and $arg =~ /^\D/ ) { unshift @$modules, $arg; $arg = 0; } # XXX: check for conflicts and uninstalls(!) them. my $cur = _load($mod); if (_version_cmp ($cur, $arg) >= 0) { print "loaded. ($cur" . ( $arg ? " >= $arg" : '' ) . ")\n"; push @Existing, $mod => $arg; $DisabledTests{$_} = 1 for map { glob($_) } @skiptests; } else { if (not defined $cur) # indeed missing { print "missing." . ( $arg ? " (would need $arg)" : '' ) . "\n"; } else { # no need to check $arg as _version_cmp ($cur, undef) would satisfy >= above print "too old. ($cur < $arg)\n"; } push @required, $mod => $arg; } } next unless @required; my $mandatory = ( $feature eq '-core' or $core_all ); if ( !$SkipInstall and ( $CheckOnly or ($mandatory and $UnderCPAN) or $AllDeps or _prompt( qq{==> Auto-install the } . ( @required / 2 ) . ( $mandatory ? ' mandatory' : ' optional' ) . qq{ module(s) from CPAN?}, $default ? 'y' : 'n', ) =~ /^[Yy]/ ) ) { push( @Missing, @required ); $DisabledTests{$_} = 1 for map { glob($_) } @skiptests; } elsif ( !$SkipInstall and $default and $mandatory and _prompt( qq{==> The module(s) are mandatory! Really skip?}, 'n', ) =~ /^[Nn]/ ) { push( @Missing, @required ); $DisabledTests{$_} = 1 for map { glob($_) } @skiptests; } else { $DisabledTests{$_} = 1 for map { glob($_) } @tests; } } if ( @Missing and not( $CheckOnly or $UnderCPAN ) ) { require Config; print "*** Dependencies will be installed the next time you type '$Config::Config{make}'.\n"; # make an educated guess of whether we'll need root permission. print " (You may need to do that as the 'root' user.)\n" if eval '$>'; } print "*** $class configuration finished.\n"; chdir $cwd; # import to main:: no strict 'refs'; *{'main::WriteMakefile'} = \&Write if caller(0) eq 'main'; } sub _running_under { my $thing = shift; print <<"END_MESSAGE"; *** Since we're running under ${thing}, I'll just let it take care of the dependency's installation later. END_MESSAGE return 1; } # Check to see if we are currently running under CPAN.pm and/or CPANPLUS; # if we are, then we simply let it taking care of our dependencies sub _check_lock { return unless @Missing or @_; my $cpan_env = $ENV{PERL5_CPAN_IS_RUNNING}; if ($ENV{PERL5_CPANPLUS_IS_RUNNING}) { return _running_under($cpan_env ? 'CPAN' : 'CPANPLUS'); } require CPAN; if ($CPAN::VERSION > '1.89') { if ($cpan_env) { return _running_under('CPAN'); } return; # CPAN.pm new enough, don't need to check further } # last ditch attempt, this -will- configure CPAN, very sorry _load_cpan(1); # force initialize even though it's already loaded # Find the CPAN lock-file my $lock = MM->catfile( $CPAN::Config->{cpan_home}, ".lock" ); return unless -f $lock; # Check the lock local *LOCK; return unless open(LOCK, $lock); if ( ( $^O eq 'MSWin32' ? _under_cpan() : == getppid() ) and ( $CPAN::Config->{prerequisites_policy} || '' ) ne 'ignore' ) { print <<'END_MESSAGE'; *** Since we're running under CPAN, I'll just let it take care of the dependency's installation later. END_MESSAGE return 1; } close LOCK; return; } sub install { my $class = shift; my $i; # used below to strip leading '-' from config keys my @config = ( map { s/^-// if ++$i; $_ } @{ +shift } ); my ( @modules, @installed ); while ( my ( $pkg, $ver ) = splice( @_, 0, 2 ) ) { # grep out those already installed if ( _version_cmp( _load($pkg), $ver ) >= 0 ) { push @installed, $pkg; } else { push @modules, $pkg, $ver; } } return @installed unless @modules; # nothing to do return @installed if _check_lock(); # defer to the CPAN shell print "*** Installing dependencies...\n"; return unless _connected_to('cpan.org'); my %args = @config; my %failed; local *FAILED; if ( $args{do_once} and open( FAILED, '.#autoinstall.failed' ) ) { while () { chomp; $failed{$_}++ } close FAILED; my @newmod; while ( my ( $k, $v ) = splice( @modules, 0, 2 ) ) { push @newmod, ( $k => $v ) unless $failed{$k}; } @modules = @newmod; } if ( _has_cpanplus() and not $ENV{PERL_AUTOINSTALL_PREFER_CPAN} ) { _install_cpanplus( \@modules, \@config ); } else { _install_cpan( \@modules, \@config ); } print "*** $class installation finished.\n"; # see if we have successfully installed them while ( my ( $pkg, $ver ) = splice( @modules, 0, 2 ) ) { if ( _version_cmp( _load($pkg), $ver ) >= 0 ) { push @installed, $pkg; } elsif ( $args{do_once} and open( FAILED, '>> .#autoinstall.failed' ) ) { print FAILED "$pkg\n"; } } close FAILED if $args{do_once}; return @installed; } sub _install_cpanplus { my @modules = @{ +shift }; my @config = _cpanplus_config( @{ +shift } ); my $installed = 0; require CPANPLUS::Backend; my $cp = CPANPLUS::Backend->new; my $conf = $cp->configure_object; return unless $conf->can('conf') # 0.05x+ with "sudo" support or _can_write($conf->_get_build('base')); # 0.04x # if we're root, set UNINST=1 to avoid trouble unless user asked for it. my $makeflags = $conf->get_conf('makeflags') || ''; if ( UNIVERSAL::isa( $makeflags, 'HASH' ) ) { # 0.03+ uses a hashref here $makeflags->{UNINST} = 1 unless exists $makeflags->{UNINST}; } else { # 0.02 and below uses a scalar $makeflags = join( ' ', split( ' ', $makeflags ), 'UNINST=1' ) if ( $makeflags !~ /\bUNINST\b/ and eval qq{ $> eq '0' } ); } $conf->set_conf( makeflags => $makeflags ); $conf->set_conf( prereqs => 1 ); while ( my ( $key, $val ) = splice( @config, 0, 2 ) ) { $conf->set_conf( $key, $val ); } my $modtree = $cp->module_tree; while ( my ( $pkg, $ver ) = splice( @modules, 0, 2 ) ) { print "*** Installing $pkg...\n"; MY::preinstall( $pkg, $ver ) or next if defined &MY::preinstall; my $success; my $obj = $modtree->{$pkg}; if ( $obj and _version_cmp( $obj->{version}, $ver ) >= 0 ) { my $pathname = $pkg; $pathname =~ s/::/\\W/; foreach my $inc ( grep { m/$pathname.pm/i } keys(%INC) ) { delete $INC{$inc}; } my $rv = $cp->install( modules => [ $obj->{module} ] ); if ( $rv and ( $rv->{ $obj->{module} } or $rv->{ok} ) ) { print "*** $pkg successfully installed.\n"; $success = 1; } else { print "*** $pkg installation cancelled.\n"; $success = 0; } $installed += $success; } else { print << "."; *** Could not find a version $ver or above for $pkg; skipping. . } MY::postinstall( $pkg, $ver, $success ) if defined &MY::postinstall; } return $installed; } sub _cpanplus_config { my @config = (); while ( @_ ) { my ($key, $value) = (shift(), shift()); if ( $key eq 'prerequisites_policy' ) { if ( $value eq 'follow' ) { $value = CPANPLUS::Internals::Constants::PREREQ_INSTALL(); } elsif ( $value eq 'ask' ) { $value = CPANPLUS::Internals::Constants::PREREQ_ASK(); } elsif ( $value eq 'ignore' ) { $value = CPANPLUS::Internals::Constants::PREREQ_IGNORE(); } else { die "*** Cannot convert option $key = '$value' to CPANPLUS version.\n"; } } else { die "*** Cannot convert option $key to CPANPLUS version.\n"; } } return @config; } sub _install_cpan { my @modules = @{ +shift }; my @config = @{ +shift }; my $installed = 0; my %args; _load_cpan(); require Config; if (CPAN->VERSION < 1.80) { # no "sudo" support, probe for writableness return unless _can_write( MM->catfile( $CPAN::Config->{cpan_home}, 'sources' ) ) and _can_write( $Config::Config{sitelib} ); } # if we're root, set UNINST=1 to avoid trouble unless user asked for it. my $makeflags = $CPAN::Config->{make_install_arg} || ''; $CPAN::Config->{make_install_arg} = join( ' ', split( ' ', $makeflags ), 'UNINST=1' ) if ( $makeflags !~ /\bUNINST\b/ and eval qq{ $> eq '0' } ); # don't show start-up info $CPAN::Config->{inhibit_startup_message} = 1; # set additional options while ( my ( $opt, $arg ) = splice( @config, 0, 2 ) ) { ( $args{$opt} = $arg, next ) if $opt =~ /^force$/; # pseudo-option $CPAN::Config->{$opt} = $arg; } local $CPAN::Config->{prerequisites_policy} = 'follow'; while ( my ( $pkg, $ver ) = splice( @modules, 0, 2 ) ) { MY::preinstall( $pkg, $ver ) or next if defined &MY::preinstall; print "*** Installing $pkg...\n"; my $obj = CPAN::Shell->expand( Module => $pkg ); my $success = 0; if ( $obj and _version_cmp( $obj->cpan_version, $ver ) >= 0 ) { my $pathname = $pkg; $pathname =~ s/::/\\W/; foreach my $inc ( grep { m/$pathname.pm/i } keys(%INC) ) { delete $INC{$inc}; } my $rv = $args{force} ? CPAN::Shell->force( install => $pkg ) : CPAN::Shell->install($pkg); $rv ||= eval { $CPAN::META->instance( 'CPAN::Distribution', $obj->cpan_file, ) ->{install} if $CPAN::META; }; if ( $rv eq 'YES' ) { print "*** $pkg successfully installed.\n"; $success = 1; } else { print "*** $pkg installation failed.\n"; $success = 0; } $installed += $success; } else { print << "."; *** Could not find a version $ver or above for $pkg; skipping. . } MY::postinstall( $pkg, $ver, $success ) if defined &MY::postinstall; } return $installed; } sub _has_cpanplus { return ( $HasCPANPLUS = ( $INC{'CPANPLUS/Config.pm'} or _load('CPANPLUS::Shell::Default') ) ); } # make guesses on whether we're under the CPAN installation directory sub _under_cpan { require Cwd; require File::Spec; my $cwd = File::Spec->canonpath( Cwd::cwd() ); my $cpan = File::Spec->canonpath( $CPAN::Config->{cpan_home} ); return ( index( $cwd, $cpan ) > -1 ); } sub _update_to { my $class = __PACKAGE__; my $ver = shift; return if _version_cmp( _load($class), $ver ) >= 0; # no need to upgrade if ( _prompt( "==> A newer version of $class ($ver) is required. Install?", 'y' ) =~ /^[Nn]/ ) { die "*** Please install $class $ver manually.\n"; } print << "."; *** Trying to fetch it from CPAN... . # install ourselves _load($class) and return $class->import(@_) if $class->install( [], $class, $ver ); print << '.'; exit 1; *** Cannot bootstrap myself. :-( Installation terminated. . } # check if we're connected to some host, using inet_aton sub _connected_to { my $site = shift; return ( ( _load('Socket') and Socket::inet_aton($site) ) or _prompt( qq( *** Your host cannot resolve the domain name '$site', which probably means the Internet connections are unavailable. ==> Should we try to install the required module(s) anyway?), 'n' ) =~ /^[Yy]/ ); } # check if a directory is writable; may create it on demand sub _can_write { my $path = shift; mkdir( $path, 0755 ) unless -e $path; return 1 if -w $path; print << "."; *** You are not allowed to write to the directory '$path'; the installation may fail due to insufficient permissions. . if ( eval '$>' and lc(`sudo -V`) =~ /version/ and _prompt( qq( ==> Should we try to re-execute the autoinstall process with 'sudo'?), ((-t STDIN) ? 'y' : 'n') ) =~ /^[Yy]/ ) { # try to bootstrap ourselves from sudo print << "."; *** Trying to re-execute the autoinstall process with 'sudo'... . my $missing = join( ',', @Missing ); my $config = join( ',', UNIVERSAL::isa( $Config, 'HASH' ) ? %{$Config} : @{$Config} ) if $Config; return unless system( 'sudo', $^X, $0, "--config=$config", "--installdeps=$missing" ); print << "."; *** The 'sudo' command exited with error! Resuming... . } return _prompt( qq( ==> Should we try to install the required module(s) anyway?), 'n' ) =~ /^[Yy]/; } # load a module and return the version it reports sub _load { my $mod = pop; # class/instance doesn't matter my $file = $mod; $file =~ s|::|/|g; $file .= '.pm'; local $@; return eval { require $file; $mod->VERSION } || ( $@ ? undef: 0 ); } # Load CPAN.pm and it's configuration sub _load_cpan { return if $CPAN::VERSION and $CPAN::Config and not @_; require CPAN; if ( $CPAN::HandleConfig::VERSION ) { # Newer versions of CPAN have a HandleConfig module CPAN::HandleConfig->load; } else { # Older versions had the load method in Config directly CPAN::Config->load; } } # compare two versions, either use Sort::Versions or plain comparison # return values same as <=> sub _version_cmp { my ( $cur, $min ) = @_; return -1 unless defined $cur; # if 0 keep comparing return 1 unless $min; $cur =~ s/\s+$//; # check for version numbers that are not in decimal format if ( ref($cur) or ref($min) or $cur =~ /v|\..*\./ or $min =~ /v|\..*\./ ) { if ( ( $version::VERSION or defined( _load('version') )) and version->can('new') ) { # use version.pm if it is installed. return version->new($cur) <=> version->new($min); } elsif ( $Sort::Versions::VERSION or defined( _load('Sort::Versions') ) ) { # use Sort::Versions as the sorting algorithm for a.b.c versions return Sort::Versions::versioncmp( $cur, $min ); } warn "Cannot reliably compare non-decimal formatted versions.\n" . "Please install version.pm or Sort::Versions.\n"; } # plain comparison local $^W = 0; # shuts off 'not numeric' bugs return $cur <=> $min; } # nothing; this usage is deprecated. sub main::PREREQ_PM { return {}; } sub _make_args { my %args = @_; $args{PREREQ_PM} = { %{ $args{PREREQ_PM} || {} }, @Existing, @Missing } if $UnderCPAN or $TestOnly; if ( $args{EXE_FILES} and -e 'MANIFEST' ) { require ExtUtils::Manifest; my $manifest = ExtUtils::Manifest::maniread('MANIFEST'); $args{EXE_FILES} = [ grep { exists $manifest->{$_} } @{ $args{EXE_FILES} } ]; } $args{test}{TESTS} ||= 't/*.t'; $args{test}{TESTS} = join( ' ', grep { !exists( $DisabledTests{$_} ) } map { glob($_) } split( /\s+/, $args{test}{TESTS} ) ); my $missing = join( ',', @Missing ); my $config = join( ',', UNIVERSAL::isa( $Config, 'HASH' ) ? %{$Config} : @{$Config} ) if $Config; $PostambleActions = ( ($missing and not $UnderCPAN) ? "\$(PERL) $0 --config=$config --installdeps=$missing" : "\$(NOECHO) \$(NOOP)" ); return %args; } # a wrapper to ExtUtils::MakeMaker::WriteMakefile sub Write { require Carp; Carp::croak "WriteMakefile: Need even number of args" if @_ % 2; if ($CheckOnly) { print << "."; *** Makefile not written in check-only mode. . return; } my %args = _make_args(@_); no strict 'refs'; $PostambleUsed = 0; local *MY::postamble = \&postamble unless defined &MY::postamble; ExtUtils::MakeMaker::WriteMakefile(%args); print << "." unless $PostambleUsed; *** WARNING: Makefile written with customized MY::postamble() without including contents from Module::AutoInstall::postamble() -- auto installation features disabled. Please contact the author. . return 1; } sub postamble { $PostambleUsed = 1; return <<"END_MAKE"; config :: installdeps \t\$(NOECHO) \$(NOOP) checkdeps :: \t\$(PERL) $0 --checkdeps installdeps :: \t$PostambleActions END_MAKE } 1; __END__ #line 1056 Ocsinventory-Unix-Agent-2.0.5/run-postinst010064400017500001750000000000001173606113200202000ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/Makefile.PL010064400017500001750000000070471173606111100175610ustar00guiguiguigui use inc::Module::Install; # Hack to be able to run a post install script sub MY::postamble { my $re; $re = ' install :: all pure_install doc_install $(NOECHO) $(NOOP)'; $re .= "\n\t[ ! -f run-postinst ] || $^X postinst.pl\n"; return $re; } require 'lib/Ocsinventory/Agent/Config.pm'; use Config; my $version = $Ocsinventory::Agent::Config::VERSION; if (-d '.bzr') { chomp( my $bzrRev = `bzr revno`); $version .= "~bzr".$bzrRev; } name 'Ocsinventory-Unix-Agent'; include 'Module::AutoInstall'; abstract 'Ocs-Inventory unified Agent for UNIX, Linux and MacOSX'; license 'gpl'; version $version; perl_version '5.006'; requires 'Digest::MD5' => undef; requires 'XML::Simple' => undef; requires 'LWP' => undef; requires 'File::Temp' => undef; recommends 'Net::IP' => undef; recommends 'Compress::Zlib'; recommends 'Proc::Daemon' => undef; recommends 'Proc::PID::File' => undef; install_script 'ocsinventory-agent'; # We want a release bundled with the needed dependency to be able to # prepare a standalone binary with PAR::Packer if ($ENV{OCS_BUNDLE_RELEASE}) { foreach my $module (qw/Archive::Zip HTML::Parser LWP URI XML::NamespaceSupport Net::IP HTML::Tagset Proc::Daemon Module::ScanDeps PAR::Packer AutoLoader PAR PAR::Dist File::Remove YAML::Tiny Getopt::ArgvFile ExtUtils::Install ExtUtils::ParseXS XML::SAX XML::Simple/) { bundle $module; requires $module; } } #Ugly hack to include ipdiscover binary compilation and install fo Linux systems if ($^O =~ /^linux$/i && can_cc()) { my $cc=$Config::Config{cc}; system("$cc resources/ipdiscover/ipdiscover.c -o ipdiscover"); if (-f 'ipdiscover') { install_script 'ipdiscover'; } } if (defined ($ENV{PERL_AUTOINSTALL}) || defined ($ENV{PERL_AUTOINSTALL})) { unlink 'run-postinst'; } else { open POSTINST, '>run-postinst' or die $!; close POSTINST; } if (!can_use('Compress::Zlib')) { print "Please install Compress::Zlib if you use an OCS server prior 1.02.\n"; } if (!can_use('Crypt::SSLeay')) { print "Please install Crypt::SSLeay if you want to use SSL.\n"; } if (!can_use('Net::SSLeay')) { print "Please install Net::SSLeay if you want to use the software deployment.\n"; } if (!can_run('ipdiscover') && !can_run('nmap')) { print "Please install nmap "; print "or ipdiscover " if $^O =~ /^linux$/i; print "if you want to use the network ". "discover feature.\n"; } if (!can_use('Net::IP')) { print "Net::IP is strongly recommended since it's required to retrieve " ."network information\n"; } if (!can_use('Proc::Daemon') || !can_use('Proc::PID::File')) { print "Please install Proc::Daemon and Proc::PID::File if you ". "want to use the daemon monde.\n"; } my $archname; eval { # config_re is not available on Perl 5.6 my @t = Config::config_re('archname'); $archname = $t[0]; }; if ($^O =~ /(linux|bsd)/i && (!$archname ||$archname =~ /(i[3456x]86|x86_64|amd64)/i)) { foreach (qw/dmidecode lspci/) { if (!can_run($_)) { print "\n"; print "[WARNING] $_ is needed if you want a complete inventory on x86 and AMD64/x86_64.\n"; print "\n"; } } } if ($^O =~ /^darwin$/ && !can_use('Mac::SysProfile')) { print "\n"; print "[WARNING] Mac::SysProfile is needed on MacOS to detect most of the device information.\n"; print "\n"; requires 'Mac::SysProfile' => undef; } # memconf is needed by Solaris backend module if ($^O =~ /^solaris$/i) { install_script 'memconf'; } #for i in inc/BUNDLES/* ; do rm -rf `basename $i` ;done` #auto_install; WriteAll; Ocsinventory-Unix-Agent-2.0.5/MANIFEST010064400017500001750000000361621173606115400167470ustar00guiguiguiguiAUTHORS Changes contrib/Tarballs.pm etc/cron.d/ocsinventory-agent etc/default/ocsinventory-agent etc/init.d/ocsinventory-agent etc/logrotate.d/ocsinventory-agent etc/ocsinventory-agent/modules.conf etc/ocsinventory-agent/softwares/example.sh inc/Module/AutoInstall.pm inc/Module/Install.pm inc/Module/Install/Base.pm inc/Module/Install/Can.pm inc/Module/Install/Fetch.pm inc/Module/Install/Include.pm inc/Module/Install/Makefile.pm inc/Module/Install/Metadata.pm inc/Module/Install/Scripts.pm inc/Module/Install/Win32.pm inc/Module/Install/WriteAll.pm lib/Ocsinventory/Agent.pm lib/Ocsinventory/Agent/AccountConfig.pm lib/Ocsinventory/Agent/AccountInfo.pm lib/Ocsinventory/Agent/Backend.pm lib/Ocsinventory/Agent/Backend/AccessLog.pm lib/Ocsinventory/Agent/Backend/DeviceID.pm lib/Ocsinventory/Agent/Backend/IpDiscover.pm lib/Ocsinventory/Agent/Backend/IpDiscover/IpDiscover.pm lib/Ocsinventory/Agent/Backend/IpDiscover/Nmap.pm lib/Ocsinventory/Agent/Backend/OS/AIX.pm lib/Ocsinventory/Agent/Backend/OS/AIX/Controller.pm lib/Ocsinventory/Agent/Backend/OS/AIX/CPU.pm lib/Ocsinventory/Agent/Backend/OS/AIX/Domains.pm lib/Ocsinventory/Agent/Backend/OS/AIX/Drives.pm lib/Ocsinventory/Agent/Backend/OS/AIX/Hardware.pm lib/Ocsinventory/Agent/Backend/OS/AIX/IPv4.pm lib/Ocsinventory/Agent/Backend/OS/AIX/Mem.pm lib/Ocsinventory/Agent/Backend/OS/AIX/Memory.pm lib/Ocsinventory/Agent/Backend/OS/AIX/Modems.pm lib/Ocsinventory/Agent/Backend/OS/AIX/Networks.pm lib/Ocsinventory/Agent/Backend/OS/AIX/Slots.pm lib/Ocsinventory/Agent/Backend/OS/AIX/Software.pm lib/Ocsinventory/Agent/Backend/OS/AIX/Sounds.pm lib/Ocsinventory/Agent/Backend/OS/AIX/Storages.pm lib/Ocsinventory/Agent/Backend/OS/AIX/Users.pm lib/Ocsinventory/Agent/Backend/OS/AIX/Videos.pm lib/Ocsinventory/Agent/Backend/OS/BSD.pm lib/Ocsinventory/Agent/Backend/OS/BSD/Archs/Alpha.pm lib/Ocsinventory/Agent/Backend/OS/BSD/Archs/I386.pm lib/Ocsinventory/Agent/Backend/OS/BSD/Archs/Sgimips.pm lib/Ocsinventory/Agent/Backend/OS/BSD/Archs/Sparc.pm lib/Ocsinventory/Agent/Backend/OS/BSD/CPU.pm lib/Ocsinventory/Agent/Backend/OS/BSD/Domains.pm lib/Ocsinventory/Agent/Backend/OS/BSD/Drives.pm lib/Ocsinventory/Agent/Backend/OS/BSD/IPv4.pm lib/Ocsinventory/Agent/Backend/OS/BSD/Mem.pm lib/Ocsinventory/Agent/Backend/OS/BSD/Networks.pm lib/Ocsinventory/Agent/Backend/OS/BSD/Storages.pm lib/Ocsinventory/Agent/Backend/OS/BSD/Sys.pm lib/Ocsinventory/Agent/Backend/OS/BSD/Uptime.pm lib/Ocsinventory/Agent/Backend/OS/Generic.pm lib/Ocsinventory/Agent/Backend/OS/Generic/Dmidecode.pm lib/Ocsinventory/Agent/Backend/OS/Generic/Dmidecode/Bios.pm lib/Ocsinventory/Agent/Backend/OS/Generic/Dmidecode/Memory.pm lib/Ocsinventory/Agent/Backend/OS/Generic/Dmidecode/Ports.pm lib/Ocsinventory/Agent/Backend/OS/Generic/Dmidecode/Slots.pm lib/Ocsinventory/Agent/Backend/OS/Generic/Dmidecode/UUID.pm lib/Ocsinventory/Agent/Backend/OS/Generic/Hostname.pm lib/Ocsinventory/Agent/Backend/OS/Generic/Ipmi.pm lib/Ocsinventory/Agent/Backend/OS/Generic/Lspci.pm lib/Ocsinventory/Agent/Backend/OS/Generic/Lspci/Controllers.pm lib/Ocsinventory/Agent/Backend/OS/Generic/Lspci/Modems.pm lib/Ocsinventory/Agent/Backend/OS/Generic/Lspci/Sounds.pm lib/Ocsinventory/Agent/Backend/OS/Generic/Lspci/Videos.pm lib/Ocsinventory/Agent/Backend/OS/Generic/Packaging.pm lib/Ocsinventory/Agent/Backend/OS/Generic/Packaging/BSDpkg.pm lib/Ocsinventory/Agent/Backend/OS/Generic/Packaging/ByHand.pm lib/Ocsinventory/Agent/Backend/OS/Generic/Packaging/Deb.pm lib/Ocsinventory/Agent/Backend/OS/Generic/Packaging/Gentoo.pm lib/Ocsinventory/Agent/Backend/OS/Generic/Packaging/Pacman.pm lib/Ocsinventory/Agent/Backend/OS/Generic/Packaging/RPM.pm lib/Ocsinventory/Agent/Backend/OS/Generic/Printers/Cups.pm lib/Ocsinventory/Agent/Backend/OS/Generic/Processes.pm lib/Ocsinventory/Agent/Backend/OS/Generic/Screen.pm lib/Ocsinventory/Agent/Backend/OS/Generic/Users.pm lib/Ocsinventory/Agent/Backend/OS/HPUX.pm lib/Ocsinventory/Agent/Backend/OS/HPUX/Bios.pm lib/Ocsinventory/Agent/Backend/OS/HPUX/Controller.pm lib/Ocsinventory/Agent/Backend/OS/HPUX/CPU.pm lib/Ocsinventory/Agent/Backend/OS/HPUX/Domains.pm lib/Ocsinventory/Agent/Backend/OS/HPUX/Drives.pm lib/Ocsinventory/Agent/Backend/OS/HPUX/IPv4.pm lib/Ocsinventory/Agent/Backend/OS/HPUX/Mem.pm lib/Ocsinventory/Agent/Backend/OS/HPUX/Memory.pm lib/Ocsinventory/Agent/Backend/OS/HPUX/Networks.pm lib/Ocsinventory/Agent/Backend/OS/HPUX/README lib/Ocsinventory/Agent/Backend/OS/HPUX/Slots.pm lib/Ocsinventory/Agent/Backend/OS/HPUX/Software.pm lib/Ocsinventory/Agent/Backend/OS/HPUX/Storages.pm lib/Ocsinventory/Agent/Backend/OS/Linux.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/Alpha.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/Alpha/CPU.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/ARM.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/ARM/CPU.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/i386.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/i386/CPU.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/m68k.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/m68k/CPU.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/MIPS.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/MIPS/CPU.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/PowerPC.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/PowerPC/CPU.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/PowerPC/Various.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/SPARC.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Archs/SPARC/CPU.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/LSB.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/ArchLinux.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/Debian.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/Fedora.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/Gentoo.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/Knoppix.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/Mandrake.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/Mandriva.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/Redhat.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/Slackware.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/SuSE.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/Trustix.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/Ubuntu.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/VmWare.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Domains.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Drives.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Mem.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Network/IPv4.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Network/Networks.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Sounds.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Storages.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Storages/3ware.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Storages/Adaptec.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Storages/HP.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Storages/Lsilogic.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Storages/ServeRaid.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Sys.pm lib/Ocsinventory/Agent/Backend/OS/Linux/Uptime.pm lib/Ocsinventory/Agent/Backend/OS/MacOS.pm lib/Ocsinventory/Agent/Backend/OS/MacOS/Bios.pm lib/Ocsinventory/Agent/Backend/OS/MacOS/CPU.pm lib/Ocsinventory/Agent/Backend/OS/MacOS/Domains.pm lib/Ocsinventory/Agent/Backend/OS/MacOS/Drives.pm lib/Ocsinventory/Agent/Backend/OS/MacOS/Hostname.pm lib/Ocsinventory/Agent/Backend/OS/MacOS/IPv4.pm lib/Ocsinventory/Agent/Backend/OS/MacOS/Mem.pm lib/Ocsinventory/Agent/Backend/OS/MacOS/Networks.pm lib/Ocsinventory/Agent/Backend/OS/MacOS/Packages.pm lib/Ocsinventory/Agent/Backend/OS/MacOS/Printers.pm lib/Ocsinventory/Agent/Backend/OS/MacOS/Sound.pm lib/Ocsinventory/Agent/Backend/OS/MacOS/Storages.pm lib/Ocsinventory/Agent/Backend/OS/MacOS/Uptime.pm lib/Ocsinventory/Agent/Backend/OS/MacOS/Video.pm lib/Ocsinventory/Agent/Backend/OS/Solaris.pm lib/Ocsinventory/Agent/Backend/OS/Solaris/Bios.pm lib/Ocsinventory/Agent/Backend/OS/Solaris/Controllers.pm lib/Ocsinventory/Agent/Backend/OS/Solaris/CPU.pm lib/Ocsinventory/Agent/Backend/OS/Solaris/Domains.pm lib/Ocsinventory/Agent/Backend/OS/Solaris/Drives.pm lib/Ocsinventory/Agent/Backend/OS/Solaris/IPv4.pm lib/Ocsinventory/Agent/Backend/OS/Solaris/Mem.pm lib/Ocsinventory/Agent/Backend/OS/Solaris/Memory.pm lib/Ocsinventory/Agent/Backend/OS/Solaris/Networks.pm lib/Ocsinventory/Agent/Backend/OS/Solaris/Packages.pm lib/Ocsinventory/Agent/Backend/OS/Solaris/Slots.pm lib/Ocsinventory/Agent/Backend/OS/Solaris/Storages.pm lib/Ocsinventory/Agent/Backend/OS/Solaris/Users.pm lib/Ocsinventory/Agent/Backend/Virtualization/Libvirt.pm lib/Ocsinventory/Agent/Backend/Virtualization/Parallels.pm lib/Ocsinventory/Agent/Backend/Virtualization/Qemu.pm lib/Ocsinventory/Agent/Backend/Virtualization/SolarisZones.pm lib/Ocsinventory/Agent/Backend/Virtualization/VirtualBox.pm lib/Ocsinventory/Agent/Backend/Virtualization/Vmsystem.pm lib/Ocsinventory/Agent/Backend/Virtualization/VmWareDesktop.pm lib/Ocsinventory/Agent/Backend/Virtualization/VmWareESX.pm lib/Ocsinventory/Agent/Backend/Virtualization/Xen.pm lib/Ocsinventory/Agent/Backend/Virtualization/Xen/XM.pm lib/Ocsinventory/Agent/Common.pm lib/Ocsinventory/Agent/Config.pm lib/Ocsinventory/Agent/Hooks.pm lib/Ocsinventory/Agent/Modules/Download.pm lib/Ocsinventory/Agent/Modules/Example.pm lib/Ocsinventory/Agent/Modules/Snmp.pm lib/Ocsinventory/Agent/Modules/Snmp/11.pm lib/Ocsinventory/Agent/Modules/Snmp/2620.pm lib/Ocsinventory/Agent/Modules/Snmp/311.pm lib/Ocsinventory/Agent/Modules/Snmp/3224.pm lib/Ocsinventory/Agent/Modules/Snmp/3375.pm lib/Ocsinventory/Agent/Modules/Snmp/641.pm lib/Ocsinventory/Agent/Modules/Snmp/7244.pm lib/Ocsinventory/Agent/Modules/Snmp/8072.pm lib/Ocsinventory/Agent/Modules/Snmp/9.pm lib/Ocsinventory/Agent/Modules/Snmp/Default.pm lib/Ocsinventory/Agent/Modules/Snmp/Entity_Mib.pm lib/Ocsinventory/Agent/Modules/Snmp/Host_Resources_Mib.pm lib/Ocsinventory/Agent/Modules/Snmp/If_Mib.pm lib/Ocsinventory/Agent/Modules/Snmp/Printer_Mib.pm lib/Ocsinventory/Agent/Network.pm lib/Ocsinventory/Agent/XML/Inventory.pm lib/Ocsinventory/Agent/XML/Prolog.pm lib/Ocsinventory/Agent/XML/Response.pm lib/Ocsinventory/Agent/XML/Response/Inventory.pm lib/Ocsinventory/Agent/XML/Response/Prolog.pm lib/Ocsinventory/Agent/XML/SimpleMessage.pm lib/Ocsinventory/Compress.pm lib/Ocsinventory/Logger.pm lib/Ocsinventory/LoggerBackend/File.pm lib/Ocsinventory/LoggerBackend/Stderr.pm lib/Ocsinventory/LoggerBackend/Syslog.pm LICENSE Makefile.PL MANIFEST This list of files memconf META.yml ocsinventory-agent postinst.pl README resources/cpuinfo/cpuinfo-vmware-esx resources/cpuinfo/linux-686-1 resources/cpuinfo/linux-alpha-1 resources/cpuinfo/linux-armel-1 resources/cpuinfo/linux-ia64-1 resources/cpuinfo/linux-mips-1 resources/cpuinfo/linux-ppc-1 resources/cpuinfo/linux-ppc-2 resources/cpuinfo/linux-sparc-1 resources/dmidecode-freebsd-6.2 resources/dmidecode-linux-2.6 resources/dmidecode-openbsd-3.7 resources/dmidecode-openbsd-3.8 resources/dmidecode.rhel.2.1 resources/dmidecode.rhel.3.4 resources/dmidecode.rhel.4.3 resources/dmidecode.rhel.4.6 resources/ipdiscover/ipdiscover.c resources/ipdiscover/ipdiscover.h run-postinst THANKS tools/build-perl-tree.sh tools/macosx/BUILDME.sh tools/macosx/CLEANUP.sh tools/macosx/INSTALL tools/macosx/installer_gui/iceberg/iceberg_project.packproj tools/macosx/installer_gui/iceberg/license/gpl-2.0.txt tools/macosx/installer_gui/iceberg/logos/OCS_logo.jpg tools/macosx/installer_gui/iceberg/scripts/installer.sh tools/macosx/installer_gui/ocs_agent_config/English.lproj/InfoPlist.strings tools/macosx/installer_gui/ocs_agent_config/English.lproj/Localizable.strings tools/macosx/installer_gui/ocs_agent_config/English.lproj/ocs_agent_config.nib/designable.nib tools/macosx/installer_gui/ocs_agent_config/English.lproj/ocs_agent_config.nib/keyedobjects.nib tools/macosx/installer_gui/ocs_agent_config/French.lproj/InfoPlist.strings tools/macosx/installer_gui/ocs_agent_config/French.lproj/Localizable.strings tools/macosx/installer_gui/ocs_agent_config/French.lproj/ocs_agent_config.nib/designable.nib tools/macosx/installer_gui/ocs_agent_config/French.lproj/ocs_agent_config.nib/keyedobjects.nib tools/macosx/installer_gui/ocs_agent_config/Info.plist tools/macosx/installer_gui/ocs_agent_config/InstallerSections.plist tools/macosx/installer_gui/ocs_agent_config/ocs_agent_config.xcodeproj/ocs.mode1v3 tools/macosx/installer_gui/ocs_agent_config/ocs_agent_config.xcodeproj/ocs.pbxuser tools/macosx/installer_gui/ocs_agent_config/ocs_agent_config.xcodeproj/project.pbxproj tools/macosx/installer_gui/ocs_agent_config/ocs_agent_config_Prefix.pch tools/macosx/installer_gui/ocs_agent_config/ocs_agent_configPane.h tools/macosx/installer_gui/ocs_agent_config/ocs_agent_configPane.m tools/macosx/installer_gui/ocs_agent_config/version.plist tools/macosx/installer_gui/ocs_agent_daemon_options/English.lproj/InfoPlist.strings tools/macosx/installer_gui/ocs_agent_daemon_options/English.lproj/Localizable.strings tools/macosx/installer_gui/ocs_agent_daemon_options/English.lproj/ocs_agent_daemon_options.xib tools/macosx/installer_gui/ocs_agent_daemon_options/French.lproj/InfoPlist.strings tools/macosx/installer_gui/ocs_agent_daemon_options/French.lproj/Localizable.strings tools/macosx/installer_gui/ocs_agent_daemon_options/French.lproj/ocs_agent_daemon_options.xib tools/macosx/installer_gui/ocs_agent_daemon_options/Info.plist tools/macosx/installer_gui/ocs_agent_daemon_options/InstallerSections.plist tools/macosx/installer_gui/ocs_agent_daemon_options/ocs_agent_daemon_options.xcodeproj/ocs.mode1v3 tools/macosx/installer_gui/ocs_agent_daemon_options/ocs_agent_daemon_options.xcodeproj/ocs.pbxuser tools/macosx/installer_gui/ocs_agent_daemon_options/ocs_agent_daemon_options.xcodeproj/project.pbxproj tools/macosx/installer_gui/ocs_agent_daemon_options/ocs_agent_daemon_options_Prefix.pch tools/macosx/installer_gui/ocs_agent_daemon_options/ocs_agent_daemon_optionsPane.h tools/macosx/installer_gui/ocs_agent_daemon_options/ocs_agent_daemon_optionsPane.m tools/macosx/launchfiles/org.ocsng.agent.plist tools/macosx/OCSNG.pmproj tools/macosx/ocsng_app-xcode/English.lproj/InfoPlist.strings tools/macosx/ocsng_app-xcode/English.lproj/Localizable.strings tools/macosx/ocsng_app-xcode/French.lproj/Localizable.strings tools/macosx/ocsng_app-xcode/GetPID.c tools/macosx/ocsng_app-xcode/GetPID.h tools/macosx/ocsng_app-xcode/icons/ocs_logo.icns tools/macosx/ocsng_app-xcode/Info.plist tools/macosx/ocsng_app-xcode/main.m tools/macosx/ocsng_app-xcode/ocscontact-Info.plist tools/macosx/ocsng_app-xcode/ocscontact.h tools/macosx/ocsng_app-xcode/ocscontact.m tools/macosx/ocsng_app-xcode/OCSNG.xcodeproj/ocs.mode1 tools/macosx/ocsng_app-xcode/OCSNG.xcodeproj/ocs.mode1v3 tools/macosx/ocsng_app-xcode/OCSNG.xcodeproj/ocs.pbxuser tools/macosx/ocsng_app-xcode/OCSNG.xcodeproj/project.pbxproj tools/macosx/ocsng_app-xcode/OCSNG_Prefix.pch tools/macosx/patches/ocsinventory-agent-darwin.patch tools/macosx/README tools/macosx/scripts/create-darwin-perl-lib_fromCPAN.pl tools/macosx/scripts/create_install_wrapper.sh tools/macosx/scripts/deployment.sh tools/macosx/scripts/extract_version.pl tools/macosx/scripts/installer.sh tools/macosx/scripts/macosx-perl-lib-dep-snapshot.tar.gz tools/macosx/scripts/uninstaller.sh tools/macosx/uninstaller.sh tools/macosx/ver tools/makedist.sh tools/parseVmware.pl tools/pre-nobundle.sh tools/standalone.sh Ocsinventory-Unix-Agent-2.0.5/THANKS010064400017500001750000000030411173606111100165100ustar00guiguiguiguiOlivier ANDREOTTI: AIX, Solaris patches Thierry LACOSTE: BSD portage Didier LIROULET: Installation script Remi COLLET: bug fixes and Fedora/RedHat maintainer Walid NOUH: gave access to PowerPC hardware to help the portage Olivier ROUSSY: minor patches Dennis CABOOTER: FreeBSD maintainer Pierre CHIFFLIER: Debian maintainer Nicolas DORFSMAN: Solaris patches Jean-Jacques MICHEL: Solaris patches Etienne GUILLAUMONT: AIX4 CPU detection Wes YOUNG: MacOSX support and patches Edouard GAMIN: RAID devices support for Linux Christoph HALMES: Solaris patches Jean PARPAILLON: IPMI backends and patches David DURIEUX: AMD64 detection on BSD systems Wilfried BRUNKEN: patch for memory detection on AIX Vladimir ELISSEEV: various patches Julien SAFAR: ArchLinux support Damien MAURAN: MacOSX packaging, doc and support Sebastien DAGNICOURT: AIX and Solaris patches Nicolas EISEN: patches Sylvain LUCE: Sun M5000 and M4000 support Philippe LIBAT: patchs and Xen support David OLIVIER: MacOSX patches Jean-François BOUCHER: Solaris patch Scott HANNAHS: MacOSX patches Maurizio Bertaboni: Solaris Zone support Scott HANNAHS: patch Sergio MERINO: patch Vincent KNECHT: wording patch Barius DRUBECK: documentation patch Stéphane URBANOVSKI: patch Jerome LEBASE: Solaris patches François ERMET: HP-UX support and SNMP integration Dmitry ILYIN: Patches Guillaume ROUSSE: various patches for Xen support Lucas MASSE: various patches for Solaris support Adam BUCHBINDER: various patches Bernhard Denner: various patches Yoann Le Bihan: Solaris patches Andreas Xenos: MacOSX patches Ocsinventory-Unix-Agent-2.0.5/LICENSE010064400017500001750000000431031173606111100166050ustar00guiguiguigui GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Lesser General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. Ocsinventory-Unix-Agent-2.0.5/ocsinventory-agent010075500017500001750000000212421173606111100213640ustar00guiguiguigui#!/usr/bin/perl #Copyright (C) 2006-2011 OCS Inventory Developers # #This program is free software; you can redistribute it and/or #modify it under the terms of the GNU General Public License #as published by the Free Software Foundation; either version 2 #of the License, or (at your option) any later version. # #This program is distributed in the hope that it will be useful, #but WITHOUT ANY WARRANTY; without even the implied warranty of #MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #GNU General Public License for more details. # #You should have received a copy of the GNU General Public License #along with this program; if not, write to the Free Software #Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, #USA. # use strict; use warnings; my $devlib; foreach (@ARGV) { if (/^--devlib$/) { print "[info] --devlib are found, Developer mode enabled\n"; eval "use lib 'lib';"; } } eval "use Ocsinventory::Agent;"; if ($@) { print "Failed to load Ocsinventory::Agent, $@\n"; print "you can run the agent directly for its source directory "; print "with --devlib\n"; exit 1; } eval "Ocsinventory::Agent::run();"; print $@; __END__ =head1 NAME ocsinventory-agent - Unified client for OCS-Inventory =head1 SYNOPSIS B S<[ B<-fhilpruw> ]> S<[ I<--server server> | I<--local /tmp> ]>... =head1 EXAMPLES % ocsinventory-agent --server localhost # send an inventory to the OCS server % ocsinventory-agent --server http://localhost/ocsinventory2 # send an inventory over http to a server with a non standard # virtual directory % ocsinventory-agent --server https://localhost/ocsinventory # send an inventory over https to the OCS server % ocsinventory-agent --local /tmp # write an inventory in the /tmp directory % ocsinventory-agent --server localhost --user=toto --password=pw --realm="Restricted Area" # send a report to a server protected by a basic authentication % ocsinventory-agent --lazy # send an inventory only if the a random delay between 0 and PROLOG_FREQ had been run over. % ocsinventory-agent --delaytime 60 -d # If NO PROLOG_FREQ has been preset, pick a time between execution and --delaytime for the agent to contact the server [default is 3600 seconds] =head1 DESCRIPTION F creates inventory and send or write them. This agent is the successor of the former linux_agent which was released with OCS 1.01 and prior. It also replaces the Solaris/AIX/BSD unofficial agents. The detailed list of supported Operating System is available in the Wiki. =over 4 =item F =item F =item F =item F =item F =item F =item F =item F =back =head1 OPTIONS Most of the options are available in a I form and a I form. For example, the two lines below are all equivalent: % ocsinventory-agent -s localhost % ocsinventory-agent --server localhost =over 4 =item B<--backend-collect-timeout=SECONDS_BEFORE_KILL> Time before OCS kills modules processing which don't end before the timeout. =item B<--basevardir>=I

Indicate the place where the agent should store its files. =item B<-d>, B<--daemon> Launch ocsinventory-agent in background. Proc::Daemon is needed. =item B<--debug> Turn the debug mode on. =item B<--devlib> This option is designed for backend module developer. With it enabled, ocsinventry-agent won't try to load the Backend module installed on the system. Instead it will scan the ./lib directory. =item B<--delaytime=SECONDS_TO_WAIT> This option defaults to waiting a random() time between 0 and 3600 before initially contacting the server assuming NO PROLOG_FREQ has been set. Once PROLOG_FREQ has been set, it uses that number at the top end of it's random setting. Useful for pre-setting a deployed agent's initial start time (so you don't jam the server all at once, but don't have to wait an hour to make sure the deployment worked). =item B<-f>, B<--force> The agent will first contact the server during the PROLOG period. If the server doesn't know the machine or has outdated informations, it will ask for an inventory. With this option, the agent doesn't run the PROLOG with the server first but directly sends an inventory. =item B<-i>, B<--info> Turn the verbose mode on. The flag is ignored if B<--debug> is enable. =item B<--lazy> Do not contact the server more than one time during the PROLOG_FREQ and do an exit if there is nothing to do. Useful if you want to start the agent script regulary from the crontab but don't want to overload the server. =item B<-l>, B<--local>=I Write an inventory in the I directory. A new file will be created if needed. =item B<--logfile>=I Log message in I and turn off STDERR =item B<-p>, B<--password>=I Use I for an HTTP identification with the server. =item B<-P>, B<--proxy>=I Use I to specify a proxy HTTP server. By default, the agent uses HTTP_PROXY environment variable. =item B<-r>, B<--realm>=I Use I for an HTTP identification with the server. For example, the value can be 'Restricted Area'. You can find it in the login popup of your Internet browser. =item B<-s>, B<--server>=I The uri of the server. If I doesn't start with http:// or https://, the assume the parameter is a hostname and rewrite it like that: % http://servername/ocsinventory If you want to use https or another virtual directory you need to enter the full path. B<--server> is ignored if B<--local> is in use. =item B<--stdout> Print the inventory on stdout. % ocsinventory-agent --stdout > /tmp/report.xml # prepare an inventory and write it in the /tmp/report.xml file. # A file will be created. =item B<--scan-homedirs> Authorized OCS to scan home directories to increase the Virtual Machine inventory. WARNING: beware with user privacy by using this option because it may encounter private data scans (even if it's not designed for !). =item B<--tag>=I Mark the machine with the I tag. Once the initial inventory is accepted by the server this value is ignored and you've to change the information directly on the server. The server do so in order to centralize the administration of the machine. =item B<-u> I, B<--user>=I Use I for the server authentication. =item B<--version>=I Print the version and exit. =item B<-w> I, B<--wait>=I Wait before initializing the connexion with the server. If I equal I the agent will use the PROLOG_FREQ of the server to determine the duration of this periode. Exactly like it would had done if it was in --daemon mode. Else if duration is a numerical value, it will be used directly. % ocsinventory-agent --wait 5 --server localhost =item B<--nosoftware> Do not inventory the software installed on the machine. B<--nosoft> also works but is deperecated. =item B<--nolocal> Desactivate local mode even if it is set in config file or command line =back =head1 CONFIG FILE The agent try to initialize the settings from the B config file. It looks for the file in these directories: =over =item /etc/ocsinventory =item /usr/local/etc/ocsinventory =item /etc/ocsinventory-agent =back =head1 AUTHORS The maintainer is Guillaume PROTET Please read the AUTHORS, Changes and THANKS files to see who is behind OCS Inventory Agent. =head1 SEE ALSO =over 4 =item OCS-Inventory website, http://www.ocsinventory-ng.org/ =item LaunchPad project page, http://launchpad.net/ocsinventory-unix-agent =item forum, http://forums.ocsinventory-ng.org/ =item and wiki http://wiki.ocsinventory-ng.org/ =back =head1 BUGS Please, use the forum as much as possible. You can open your own bug tickets. Patches are welcome. You can also use LaunchPad bugtracker or push your Bazaar branch on LaunchPad and do a merge request. =head1 COPYRIGHT Copyright (C) 2006-2011 OCS Inventory contributors This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA =cut Ocsinventory-Unix-Agent-2.0.5/Changes010064400017500001750000001136731173606111100171050ustar00guiguiguiguiRevision history for Ocsinventory::Agent 2.0.5 * Fix Bug #953968 about MacOSX OCSNG.app crash under MacOSX 10.4 64 bits * Fix bug about illegal hexadecimal digit in Snmp/Host_Resources_Mib.pm * Fix segfault and buffer overflow bugs in ipdiscover.c * Improve OCS MacOSX agent internationalization support * Back to previous pane after wrong OCS server address warning in MacOSX installer 2.0.4 * Improve memory slots detection under MacOSX 10.7 in MacOS/Mem.pm * Force OCSNG.app to become the topmost window in tools/macosx/ocsng_app-xcode/main.m * Fix Bug #901570 about wrong printer name if no printer found in MacOS/Printers.pm * Solving CPU and memories inventory detection under MacOSX Snow Leopard and MacOSX Lion * Modifying MacOSX backend files to use the new Mac::Sysprole Perl module version * Fix Bug #887534 about invalid CREATEDATE in lib/Ocsinventory/Agent/Backend/OS/Linux/Drives.pm 2.0.3 * Fix Bug #881406 about security issue due to snmp_com.txt file which is no longer used * Fix Bug #874269 about wrong conversion if hard drive >= TB in MacOS/Storages.pm * Fix Bug #879487 about a misplaced object release in ocs_agent_configPane.m. 2.0.2 * Fix bug on "Debug Mode" checkbox in MacoSX installer * Fix bug while sending ERR_DOWNLOAD_INFO message in Donwload.pm * Fix Bug #856161 about installer problems on MacOSX Tiger 2.0.1 * New SNMP data using If_Mib.pm: IP address, netmask, gateway and routing informations * Use the "public" SNMP community if no community defined in OCS server configuration * Various bug fixes in Snmp.pm * New 2.0 MacOSX integration * Bug #798428 about standalone agent building * Change variable names to lowercase in Snmp/3375.pm * Fix a closedir omission in Solaris/Packages.pm * Modify releases tarball name when building it using make dist command * Various patches for CPU, Bios and Drives detection for HPUX systems * Fix Bug #781732 about a missing chomp() in Processes.pm 2.0 * Fix Bug #778692 about using authentication when sending messages in Download.pm * Patch from Yoann Le Bihan for Solaris zones support * Fix Bug #586321 about wrong version comparison in Vmsystem.pm * Fix Bug #772436 about download end message report in Download.pm * Display support log received from PROLOG * Various patches for Snmp/9.pm module (Cisco) * Add --nolocal option to desactivate local mode even if it is set in config file or command line * Fix Bug #767290 about /etc/sysconfig/ocsinventory-agent server settings ignore (only for Redhat like distributions) * Only inventory vitualmachines which have an UUID in VirtualBox.pm to prevent inventoring USB devices or shared folders as virtualmachines 2.0 rc4 * Complety clean the disastrous treatments of accountinfos while receiving it from server,storing it in file and adding it in inventory * Fix UTF8 problems due to XML::Simple::XMLIn() 2.0 rc3 * Fix Bug #720635 about lspci usage on old Linux distributions * Fix Bug #720626 about Gentoo packages with hyphen in their names * Fix a bug with the use of pacman tool on ArchLinux. We now launch the real packages manager instead of the famous game ;) ;) * Avoid perl errors when no answer from OCS server * Enhance logging in Snmp.pm and Download.pm when disabling this modules (local mode or prerequisites not OK) * Patches from Bernhard Denner to enhance CPU and memry detection on old SUN solaris workstations * Patch from Bernhard Denner to enhance dhcp-leases files detection on Linux systems 2.0 rc2 * Add a new cleanXml() subroutine in Common.pm to clean non printable characters in both standard inventory and SNMP inventory * Various patches for Snmp/9.pm module (Cisco) * Add a new addSnmpCPU() subroutine in Common.pm * Disabling Download.pm if agent running in local mode 2.0 rc1 * Add download_start_handler to check if Net::SSLeay can be load and disable Download.pm if not * Add Net::SNMP optionnal dependency in README file. * Delete Win32 from backend * Various patches for 9.pm and If_Mib.pm to enhance ethernet ports speed display (François Mermet) * New SNMP modules for Juniper, Futjitsu and F5 vendors (François Mermet) * Fix Bug #682689 about missing data for disk when can't run lshal command (Bernhard Denner) * Add a warning message about user privacy in man page for --scan-homedirs option * Various patches for 8072.pm an If_Mib.pm (François Mermet) * Change timeout for Backend modules from 180 to 600 seconds * Change timeout for Backend modules from 180 to 600 seconds * Back on the ipdiscover binary from the old OCS Linux Agent to make network scans lighter than Nmap. Ipdiscover binary is only available under Linux systems * Use LaunchDaemons instead of LaunchAgents in MacOSX package * Fix SSL errors if no URL is given by the server in Snmp.pm * Do SNMP scans and treatments only if asked by the server * Delete some useless logs in debug for SNMP constructors and standard MIBs modules * Change oid_value in snmp_info subroutine in Printer_Mib.pm * New SNMP 2620.pm module for Checkpoint Software Technologies constructor (François Mermet) * Add new "DEVICEPORT" and "DEVICETYPE" fields in addSnmpnetwork() in Common.pm * 311.pm and 8072.pm use setSnmpComputer() to set the type of SNMP device * Add a new addSnmpInput() subroutine in Common.pm * Fix a bug in addSnmpSwitch subroutine in Common.pm * Replace SetSnmpSwitch() subroutine by SetSnmpSwitchInfos() in Common.pm * Set right fields for AddSnmpSwitch() subroutine in Common.pm * Fix various bug on snmp_oid_run subroutine for constructors and standard MIB modules * Fix various mistakes and missing fields in snmp subroutines in Common.pm * Fix a warning due to deprecated syntax in 3ware.pm * Fix a warning due to deprecated syntax in 3ware.pm * Fix a catastrophic performance issue by preventing to run sysctl at every line of demidecode output to get CPU informations on BSD systems * Snmp.pm now download snmp_com.txt file to get informations about SNMP communities for scans using HTTPS * New subroutines called "getHttpFile" and "getHttpsFile" in Network.pm to download files easily using HTTP or HTTPS. * Fix bugs and minor mistakes in Common.pm and If_Mib.pm * Add Lenovo EDID for monitors (Adam Buchbinder) * Disabling Snmp.pm if agent running in local mode * Fix a warning if network interface is down in Ipdiscover.pm * Enhance inventory initialization for a better modularity * Local mode can now use the "inventory_handler" hook * Various patches for SNMP constructors or standard MIB module (François Mermet) * Prevent a bug in using Default.pm (François Mermet) * Add "ACR" and "EPI" EDID ID for monitors (Adam Buchbinder) * Fix Bug #597752 about TYPE and VOLUMN fiels reversal for BSD systems. * Fix Bug #612515 to report network interface that don't have an IP adress (Mick K) * Don't take care of host with no MAC adress in Nmap.pm * Add the SOFTWARE field in addSnmpCard subroutine * Enhance Printer_Mib.pm to add information about printer status and printer error state * Snmp.pm now use Default.pm to launch standard MIB modules by default (François Mermet) * Upgrade several SNMP contructors/standard MIB modules * Add a new SNMP constructor module for Lexmark * Add a new SNMP module for the standard Entity MIB. * Add a new SNMP module to load standard MIB modules by default * Add new subroutines for SNMP XML feeding for informations about switches, network cards, blades, firewalls etc.... * Correct a log mistacke in Printer_Mib.pm * New 11.pm module to enable SNMP scans on HP devices * Get the SNMP device MACADDR from PROLOG resp to generate the SNMPDEVICEID in Snmp.pm * Add new subroutines in Common.pm for special SNMP XML feed or SNMP special treatments * New Printer_Mib.pm module to get SNMP printers informations 2.0 alpha Tue, 27 Jul 2010 22:27:27 +0100 * Snmp.pm use flushXMLTags() from Common.pm to flush the content of $common->{xmltags} * Modifying the inventory backend to use functions from Common.pm instead of Inventory.pm * New Snmp.pm for SNMP scans integration. It comes with its constructors modules to enhance scans results (a lot of beers to François Mermet to thank himfor his help) * Modifying postinst.pl to include Ocsinventory::Agent::Modules::Snmp * Agent.pm : add $logger object in Ocsinventory::Agent::Common instanciation * Common.pm : adding the can_run(), can_load(), can_read() and runcmdi() generic methods. Adding the use of the $logger object * Common.pm : add a new field 'TYPE' in setSnmpCommons() * Agent.pm now uses the new Networks.pm methods and add the $network object in the $context hash * Networks.pm now gives generic methods to send a XML to OCS server and receive a XML from OCS server * New addInput() method in Common.pm to add mouses and keyboards in inventory * Donwload.pm now use 'get_path' and 'already_in_array' functions from the new Common.pm * Common.pm : Replace the former Common.pm by a new one. Common.pm now give a lot of methods for other agent modules * Agent.pm : instanciate Ocsinventory::Agent::Common object and add a reference to it in $context * Use of the Nmap::Parser perl module to correct the very buggy Nmap implementation for Ipdiscover * Various patches for Solaris support (Lucas MASSE) * Fix the network speed data oblivion in Inventory.pm. The network speed can now be added in Network.pm of the several OS backends * Put the prolog_reader hook run at the right place to avoid an error if the agent failed to reach the server * Enhance dom0 support for Xen support (Guillaume ROUSSE) * Add bios informations for Xen PV hosts (Guillaume ROUSSE) * Fix Bug #552727 about getting processes taht are running in Solaris (Emengao) * Add the availiability to disable a module using start_handler hook * Debug and code cleaning in Download.pm * Fix Bug #552097 * Add XML::SAX::Expat module include * Replace {REQUEST} and {ADM} by {xmlroot} in xml handling for a better and better readability * Remove text about Win32 port in the README file * Correct a bug in Hooks.pm to pass inventory or prolog to modules * Add headers for the modules logs * Correct a bug in postinst.pl when removing the old Linux agent * Ocsinventory::Agent::Option:: namespace is now Ocsinventory::Agent::Modules:: * Modules now use Perl's object system * Hooks are now methods and not simple subroutines * Hook.pm is now Hooks.pm * Use of a new context hash in Agent.pm * CompatibilityLayer.pm is now Hook.pm * Calling hooks only in Agent.pm * Update HPUX support (Francois Mermet) * Verify ID value received by server in Download.pm * Verify the network syntax in Nmap.pm * Replace an hard coded pattern in Linux/devices.pm * Removing non posix cp option in Download.pm * Upgrade to memconf V2.13 * Add an in contrib example of script to identify specific software (Simon CLARA) * An example of script to use tarball to identify installed software * HP-UX: initial support, tested on RP3440 * Solaris/Network: support Zone * Solaris: use regex to identify CPU class * Improve the README about non-interactive installation * MacOSX: Correctly identify the CPU frequency on MacOSX 1.6 French 1.1.2.1 Tue, 12 Oct 2010 19:42:41 +0100 * Fix a secutiry bug due to the use of ExtUtils::Installed in Backend.pm. See http://bugs.debian.org/590879 and http://www.debian.org/security/2009/dsa-1828 for more informations. Thanks to Remi Collet for his report. 1.1.2 Sun, 27 Dec 2009 17:24:43 +0100 * Avoid problem with dmidecode -V output on RHEL3.9 (Remi COLLET) * Fix internal --delaytime handling. That's seconds, not hours! * Download.pm: improve a error message 1.1.1 Mon, 21 Dec 2009 22:38:12 +0100 * NETWORKS/VIRTUALDEV should be 1 or 0 * FreeBSD: Fix CPU detection (David DURIEUX) * Virtualization::Qemu, fix kvm detection * Don't run brctl if it's not installed * Various wording fixes (Vincent KNECHT) * Improve README (Barius DRUBECK) * Get serial number from ext4 partition if ext4dev driver is used * LP: #494908 Agent fails to retrieve info file when a package is activated only with the server name (Pascal DANEK) * LP: #495398 Fix RedHat version detection (Stéphane URBANOVSKI) * LP: #490774 Fix PowerPC CPU detection on Linux, thanks darkpep for the bug report 1.1 Fri, 06 Nov 2009 16:07:08 +0100 * addMemorie() renamed to addMemories(), this had been broken during the addMemories() → addMemory() transition * Debug mode: msg "check function failed" changed to "ignored" since the fails may be wanted by the check() function * CompatibilityLayer: $self->{params} changed to $self->{config}, this restore the debug mode in Download.pm * Continue XML::Inventory functions name clean up. Rename: - addSlots() calls to addSlot() - addMemories() calls to addMemory() * Move ocsinventory-agent POD documentation frol Ocsinventory::Agent to the ocsinventory-agent shell script. So now the manpage has the correct name * Fix RPM output parsing (Remi COLLET) * VMWareESX: avoid breakage is VM has spaces in its name (Christian Michallek) * Try to detect kvm --uuid value * Makefile.PL, check for Net::SSLeay * Move Ocsinventory::Agent in a .pm and add a wrapper script to load in order to by able to process --devlib * Parallels.pm: doesn't use sudo anymore and check for --scan-homedirs * Prune 'Mac OS X' from the version on Mac + typo fixes (Scott HANNAHS) * POD doc, add a paragraph about the config file * LP: #462529, Fix EDID screen detection, thanks Sergio MERINO * Use boolean for networks/virtualdev * Generic/Screen: chomp uuencode output * Generic/Screen: HSD code for "Hanns.G" (Remi COLLET) * postinst.pl, put user $PATH in /etc/cron.d/ocsinventory-agent 1.1_beta1 Fri, 18 Sep 2009 11:54:12 +0200 * Can use Net::CUPS to find the default printer * AIX: Hide procfs in Filesystem * OS::Linux::Storages, correctly retrieve the serial (Vladimir ELISSEEV) * load $http_proxy env settings and --proxy option is available * Add OS::Linux::Distro::NonLSB::ArchLinux (Julien SAFAR) * New Backend OS::Generic::Processes * Linux/BSD: detect DNS servers config * Solaris: Better output for $OSVErsion (Vladimir ELISSEEV) * Solaris: Sun Fire T1000 patches for memory (Vladimir ELISSEEV) * Solaris: memory SPARC Enterprise T5220 (Vladimir ELISSEEV) * Solaris: CPU SPARC Enterprise T5220 (Vladimir ELISSEEV) * Solaris: CPU SPARC Enterprise T5220 (Vladimir ELISSEEV) * Linux: split the /proc/cpuinfo parsing depending on the arch * Linux: drop Linux::Controllers which is duplicated with Generic::Lspci::Controllers (Vladimir ELISSEEV) * AIX: Various fixes in Memory.pm (Sebastien DAGNICOURT) * AIX: Storages.pm, Virtual disks support and fixes (Sebastien DAGNICOURT) * Backend.pm: Bump the default timeout from 30 to 180 secondes * Agent/XML/Inventory: Fix when version == 0, bug found by neisen * AIX: device type adjustment (Sebastien DAGNICOURT) * Solaris: Sun-Fire-V440 support (Sebastien DAGNICOURT) * Add a missing space is the name banner in --debug mode * Agent/XML/Inventory.pm: Add FROM and INSTALLDATE fields in software list and LASTLOGGEDUSER DATELASTLOGGEDUSER in HARDWARE (Nicolas EISEN) * Initialize etcdir key even if there is no config file * CompatibilityLayer: correctly set $debug * CompatibilityLayer: better log messages * getOptionInfoByName return an array ref now * rename getOptionInfoByName to getOptionsInfoByName * --debug print the XML on STDERR * Rename the params key to config to avoid ambiguity with $params * set HARDWARE/DEFAULTGATEWAY (Nicolas EISEN) * RPM: collect the install date and the size (Nicolas EISEN) * Linux: Collect LASTLOGGEDUSER and DATELASTLOGGEDUSER (Nicolas EISEN) * DPKG: collect the Installed-Size (Nicolas EISEN) * Linux: Collect the ext{2,3,4} and xfs serial number * Linux: Collect the ext{2,3,4} creation date * Add a warning when no certificat is found * Turns off alarm once it's backend run is finish * Fix the IPMI module detection * Linux: Store the PCISLOT and the driver name * NETWORKDS, only store Networks with an address * Linux: detect virtual network device * Linux: Store CONTROLLERS/DRIVER and CONTROLLERS/PCISLOT * Linux: Collects xfs, ext{2,3,4} and vfat label * runs the backend module from main() it's possible to reuse the Backend object. * Linux: filter non standard MAC address returned by ifconfig like 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 mac * Linux: Fix the Uptime check() * Preliminary libvirt support * Partial rewrite of the Download.pm backend * Add a warning if the user is no root, thanks Nicolas EISEN and Sylvain LUCE * SPARC-Enterprise M4000 and M5000 support (Sylvain LUCE) * Libvirt: collect VCPU info (Philippe LIBAT) * Add Virtualization::Xen module (Philippe LIBAT) * Solaris: add a warning if memconf is not in $PATH * Switch the XML content from ISO-8859-1 to UTF-8, BTW we force LC_ALL=C... * Fix the history flood in Download.pm (Pascal DANEK) https://sourceforge.net/tracker/index.php?func=detail&aid=2806585&group_id=58373&atid=487492 * Stores PCIID in CONTROLLERS/PCIID * Storage the monitor EDID string in BASE64 and UUENCODE * Linux: Storages: reorganize the code base and use lshal * Linux: Drives, complete inforamtions with lshal (Nicolas EISEN) * Linux: fix the PowerPC CPU detection https://sourceforge.net/tracker/?func=detail&atid=487492&aid=2043221&group_id=58373 * Warns the user during the install process if one of the recommended module is not installed * Update out copy of memconf, thanks WeatherDave who notified the new revision and of course Tom Schmidt who do a great job * MacOSX: Avoid a scalar used has hash ref error, thanks Adadov * Save VIDEOS/MEMORY and VIDEOS/RESOLUTION * MacOSX: Correctilly detect Up/Down network interfaces (David OLIVIER) * AddNetwork() doesn't ignore network with no IP address (David OLIVIER) * add --backend-collect-timeout parameter (Nicolas EISEN) * MacOSX: convert the IP mask from hex (David OLIVIER) * MacOSX: add a workaround to avoid Mac::SysProfile failure on MacOSX 10.5.7 (David OLIVIER) * Add Virtualization::VirtualBox module (Nicolas EISEN) * Add Virtualization::Qemu module (Nicolas EISEN) * Add Virtualization::Vmsystem module (Nicolas EISEN) * Better smartctl detection (Nicolas EISEN) * optimization and vm users detection Virtualization::VirtualBox (Nicolas EISEN) * Add Virtualization::VmwareFusion module (Walid NOUH) * Don't use hdparm prior 9.2.2 anymore to avoid crap in kernel log, see http://forums.ocsinventory-ng.org/viewtopic.php?pid=20768 * Correctly detect ipmitool * Solaris: i86pc Memory support (Jean-François BOUCHER) * Solaris Zone support (Maurizio BERTABONI) * Always send tag, even if server already has one * Add the byHand software collect method (Sébastien DAGNICOURT) * add logging to can_read(), can_load() and can_run() * use addUser() instead of setHardware() * Add the runcmd() in the Backend modules 1.0.1 Sun, 22 Mar 2009 20:48:49 +0100 * Fix a typo in Ocsinventory::Agent::Backend::OS::AIX::Memory 1.0 Sun, 22 Mar 2009 20:14:26 +0100 * Hide warning messages when tw_cli or hpacucli are not present on CentOS * Avoid unnecessary about missing 'http://' in local mode * Ipmi.pm: use can_run do detect ipmitool * LSB.pm: properly use can_run * Avoid a warning in CompatibilityLayer.pm in local mode * Improve the README file * Avoid a warning at runtime if rpm is not correctly installed * BSD: Detect AMD64 arch (David DURIEUX) * HP.pm: force detection even if slot 1 is 0 (Remi COLLET) * HP.pm minor clean up + indentation * HP.pm send the $model as NAME to avoid NAME == 'unknown' (Remi COLLET) * New backend module ServeRaid for IBM ServeRAID card (Remi COLLET) * Linux::Storages, fix the hdparm call (Remi COLLET) * OS::Generic::Dmidecode::Bios, fix for RHEL2 dmidecode (Remi COLLET) * launch backend modules with a 30sec timeout * post-inst.pl: use prompt() from ExtUtils::MakeMaker to avoid unexpected error with cpan * avoid the "No LSB modules are available." warning message * Backend: --debug print a warning when arun() function is not found * Fix the Debian/Ubuntu detection for non lsb system * postinst.pl also drop /etc/cron.d/ocsinventory-client is the user want to drop the old linux_agent * Backend::OS::Solaris::Memory: use the Logger instead of "print" * Solaris: Drop unwanted spaces around OSVERSION and STORAGES/DESCRIPTION * Solaris: Avoid warning is the user can't use fstyp * MANIFEST.SKIP: ignore .git/ and .gitignore * add a workaround for http://rt.cpan.org/Ticket/Display.html?id=38067 * build-perl-tree.sh use cpanp and perl 5.10 now * Backend.pm: do a eval around require File::Find * Add a workaround to find the backend modules for PAR::Packer * Backend.pm: internal change, now do eval 'use $pmodule' instead of require * fix serialnum detection in Lsilogic.pm and Adaptec.pm (Edouard GAMIN) * Makefile.PL: drop wait(), not used * Makefile.PL: fix a syntax error * add tools/makedist.sh to document the workaround used to avoid http://rt.cpan.org/Public/Bug/Display.html?id=43060 * Fix --logfile=/somewhere.log, see http://forums.ocsinventory-ng.org/viewtopic.php?id=3092 * tools/build-perl-tree.sh, add a new script * Don't print ugly error if next_timefile can't be saved * OS::Linux::Domains, improve the way it deals with multiple domaine entries (Remi COLLET) * AIX: Record the last memory Slot (Wilfried BRUNKEN) http://sourceforge.net/tracker/?func=detail&atid=487492&aid=2350694&group_id=58373 * Bump 0.0.10 to 1.0 because it's the first release to be officially part of the OCSInventory distribution 0.0.10beta2 Wed, 24 Sep 2008 23:41:21 +0200 * README: add a not about the $PATH varible on Solaris. * Added extra section support for backends (Pascal DANEK) * Fix the way submodules are disabled with $runMeIfTheseChecksFailed * Linux: Use lsb_release if presents to detect the OS, this will fix the Ubuntu detection * Hide a Perl warning if the agent is run by the user want the last_state file is missing * Add Ipmi backend module (Jean PARPAILLON) * Drop the control characters from the inventory XML https://sourceforge.net/tracker/index.php?func=detail&aid=2100606&group_id=58373&atid=487492 * Apply a little change in standalone.sh that may fix the ParserDetails.ini problem, thanks tharoun 0.0.10beta1 Thu, 04 Sep 2008 18:16:49 +0200 * Fix a "ocs server name" => URI side effect (Pascal DANEK) * Download::Store: used absolute path to "cp" on STORE action (Pascal DANEK) * Download::Store: set -dpR flags to "cp" (Pascal DANEK) * Solaris: Replaced hostid in serialnumber by real serialnumber (Nicolas DORFSMAN) (SUNWsneep becomes mandatory on sparc) * Solaris: Return only one IP address (trying to guess which one corresponds to hostname) (Nicolas DORFSMAN) * Solaris: return disks SERIALNUMBER and FIRMWARE as XML fields (Nicolas DORFSMAN) * Redirection and stderr issue on Solaris (Nicolas DORFSMAN) - Removed close of stderr fd - Modified lspci and screen check() to avoid pollution of stdout/stderr * fix the previous changelog entry, the 0.0.9.1 fix had been done by Nicolas DORFSMAN * postinst.pl checks for MANIFEST present * improve the backend module detection by also scanning the symlinked directory * add the --devlib flag to load ./lib only if wanted and remove '.' from the directory to scan with File::Find. * import the can_run, can_load and can_read functions in the Backend modules * the backend module can have no check function, in this case OCS assume it's ok * apply a patch by Etienne GUILLAUMONT to fix CPU detection on AIX 4 * standalone.sh checks PAR::Packer presence now * only inventory installed .deb * postinst.pl: accept another vardir if the first one was invalide https://sourceforge.net/tracker/?func=detail&atid=487492&aid=1961771&group_id=58373 * postinst.pl Download.pm correctly actived in modules.conf is the user needs it * add MacOSX support thanks to Wes YOUNG (Wes YOUNG) - Added tools/darwin/ support scripts/code for OS X enterprise deployment * add the follow_skip==2 flag to File::Find in Backend.pm so it doesn't detect the same file two time * import of backend module for RAID controler on Linux (3ware, Adaptec, HP and Lsilogic) (Edouard GAMIN) * remove a warning in Debug mod, if a backend module has no run() function * don't crash in Daemon mode if the server is unreachable (Wes YOUNG) * Net::IP is just (strongly) suggested now * fix --basevardir so it really accepts a parameter, thanks Gubluts from the forum who pointed out the bug * postinst.pl use which to find ocsinventory-agent location * Makefile.PL, Perl 5.6 doesn't have Config::config_re, I call it from an eval now * Added --delaytime option as commandline / .cfg file adjustable (Wes YOUNG) * standalone.sh, don't use grep -v since it's not POSIX * doesn't die if Storable.pm is missing like with perl 5.6 * avoid a warning with gzip -h on AIX if Compress::Zlib is missing * README: depends on Perl 5.8 * README: On solaris the Makefile needs gmake * README: Add a note about crontab and PATH * Linux: redirect hdparm error to /dev/null * postinst.pl yes/no questions have a default value now * postinst.pl fix a bug in the import of the old ocsinv.adm https://sourceforge.net/tracker/index.php?func=detail&aid=1991668&group_id=58373&atid=487492 * postinst.pl doesn't create two vardir directories anymore * do not print a wrning is --nosoftware is used. Thanks Knarfling and Remi who pointed the issue out. http://forums.ocsinventory-ng.org/viewtopic.php?pid=12569 * fix the POD documentation, some mistakes were detected by Perl 5.10's perldoc. * the agent doesn't crash anymore if ocsinv.adm or ocsinv.conf is corrupted * Makefile.pl: install memconf on Solaris * Solaris: apply patches to use memconf for CPU, Drives and Memory (Christoph HALMES) 0.0.9.2 04/18/2008 Bug fix * Add /ocsinventory in the server path if the user enter just the hostname https://sourceforge.net/tracker/?func=detail&atid=487492&aid=1945865&group_id=58373 0.0.9.1 04/03/2008 Bug fix * fix a error in the previous release that was forcing the local mode (Nicolas DORFSMAN) https://sourceforge.net/tracker/?func=detail&atid=487492&aid=1945863&group_id=58373 0.0.9 04/01/2008 April Fool release! * Added fallback for --lazy if no prolog freq was found and server error (Pascal DANEK) * Fixed accountinfos handling bugs (Pascal DANEK) * Changed --wait behaviour (--wait=number_of_seconds || "server") (Pascal DANEK) * PROLOG_FREQ is handled in prolog phase (Pascal DANEK) * the random value for file_nexttime is computed only if prolog_freq has changed since last prolog (Pascal DANEK) * import the documentation documentation by adding a description of the agent and pointer to the official website * --nosoft option renamed to --nosoftware, --nosoft still works but with a warning * add --basevardir to be able to use a specific place to store the var file * add the --lazy parameter: send an inventory only if the a random delay between 0 and PROLOG_FREQ had been run over. Usefull for package maintainer (Remi COLLET) * return 1 to the shell is the agent failed to contact the server * postinst.pl asks for the basevardir * postinst.pl write the modules.conf * OS::Linux::Network::Networks, correctly reset the ipaddress before every loop so now a network can't have the address of the previous one * rename the key $params->{conffile} to $params->{accountconfig} * fix the way accountinfo information are stored * improve (a bit) tools/standalone.sh to avoid error if people launch it from the tools directory * --server is ignore if --local is in use * adjust Backend::OS::Generic::Screen to be able to use monitor-edid with DVI link (Remi COLLET) * OS::Linux::Storages, add NEC as a know manufacturer add assume the manifacturer is Seagate if the model doesn't match the others and begin with ST (rjhill) * fix the CPU detection on Linux Sparc64 and ARM (Linksys NSLU2) * improve the Solaris version detection by reading the /etc/release file (Nicolas DORFSMAN) * Solaris: fix the MAC addresses when the leading zeros is missing (Jean-Jacques MICHEL) * Solaris: Add publisher is possible in the software list (Nicolas DORFSMAN) * Solaris: improve the hard drive detection (Nicolas DORFSMAN) * postinst.pl can remove the previous linux_agent * postinst.pl reuse linux_agent old config file to set the default server and tag * return the SERIALNUMBER and the FIRMWARE on Linux with hdparm, the feature is not supported yet by the server (egamin) 0.0.8.1 02/20/2008 * postinst.pl, correctly save the realm, do not override the password * Added "CAPTION" field to memory (Pascal DANEK) * Fix a bug with "NUMSLOTS" memory field (Pascal DANEK) * improve the parsing of the config file to accept quote and spaces in the value * postinst.pl save the configfile with 0600 right since the server password maybe be stored in it * standalone.sh doesn't scan the inc/ directory anymore * remove the BUNDLE packages which seem to break the install process * change Solaris::CPU to use psrinfo -v to get the CPUs which works fine on x86 * fix a path error in Ocsinventory::LoggerBackend::File (Remi COLLET) * fix: don't send the inventory if the server doesn't need it (Remi COLLET) 0.0.8 02/05/2008 * fix the deviceid and old_deviceid handling (Pascal DANEK) * fix a debug message in Network.pm (Pascal DANEK) * different fixes on Compress.pm (Pascal DANEK) * fix an event message name in Option/Download.pm (Pascal DANEK) * fix the Compatibility Layer with prolog_read hook (Pascal DANEK) * merge PowerPC and PC code to detect the CPU and improve/fix the regex * looks for config file in /etc/ocsinventory /usr/local/etc/ocsinventory and /etc/ocsinventory-agent * add a pod documentation about the different config files and directories * Compress::Zlib is required but recommended now. In fact, you need it with ocs server prior 1.02 0.0.7.2 01/16/2008 * fix the post installation script to avoid invalid cron time 0.0.7.1 01/14/2008 * add setup.sh in the MANIFEST.SKIP to keep it out of the tarball 0.0.7 01/13/2008 * Ocsinventory::Agent::AccountInfo does not warn accountinfofile if runned in debug mode without root privilege * fix params->{etcdir} to /etc/ocsinventory, /etc/ocsinventory-agent/modules.conf must be moved to /etc/ocsinventory/modules.conf * Solaris: Improve the CPU detection (Olivier ROUSSY) * AIX: Return the directory with the AIX package name (Olivier ROUSSY) * Ocsinventory::Agent::XML::Inventory can now write software inventory value of FILESIZE, FOLDER and PUBLISHER * processChecksum() and feedInventory() are called by Ocsinventory::Agent::XML::Inventory directly now * the server responses are not parsed in the main script anymore * do not create an inventory if the server doesnn't need it * new parameters for the backend modules (run and check functions): - prologresp, the Ocsinventory::Agent::XML::Response::Prolog object returned by the prolog - storage: an hashref stored on the harddrive at the end of the execution of the module * a backend module without a run function is accepted now * Inventory.pm: add addIpDiscoverEntry() to add host from the same network * @runMeIfTheseChecksFailed: new optional setting for Backend module * Ipdiscover is now a backend module and nmap can be used instead of ipdiscover * --nosoft disable the Ocsinventory::Agent::Backend::OS::Generic::Packaging modules * Remove the deprecated modules Ocsinventory::Agent::Option::Ipdiscover and Ocsinventory::Agent::Option::Update * the check function of the backend accepts the same parameter than the run function * Linux::Archs::I386 regex are more robust * perldoc documentation for the ocsinventory-agent command * minor improvment on the Makefile.PL * change the way --server parameter is read. Now we can have a full URL, --remotedir is now useless * fix: correctly load the last_state * improve the Makefile.PL by using inc::Module::Install and adding new check * add a --version parameter and improve the --help * come with bundled dependency to simply the build process * fix the login/passwd/realm authentification * remove Agent/Pid.pm, I've to prepare a better system to keep the pid first * try to read the config in /usr/local/etc/ocsinventory/ocsinventory-agent.cfg if the standard one is missing 0.0.6.2 07/16/2007 Bug fix release * remove a debug "die" in the code 0.0.6.1 06/12/2007 Bug fix release * Fix an undef value in Ocsinventory::Agent::Backend::OS::BSD::Mem * AIX: retrieve correctly the MAC address of some FibberChannel card * now standalone.sh will try to find every module before the build to avoid unexplicated error 0.0.6 06/07/2007 * Enable "verbose" is debug is turned on * AIX: Ocsinventory::Agent::Backend::OS::AIX::Networks rewrote * AIX: Memory.pm, remove the spaces from the end of the DESCRIPTION * add standalone.sh, a script designed to prepare a stand-alone binary of the agent * AIX: Retrieve all the gateway of every subnet instead of just the default one * Config.pm renamed to AccountConfig.pm * New flag: --stdout to print the inventory directly on STDOUT * If the use want write on the system var directory, the agent create one in ~/.ocsinventory/var * The agent setting can be preinitialised with /etc/ocsinventory/ocsinventory-agent.cfg or ~/ocsinventory/ocsinventory-agent.cfg. * remove two debug messages printed during accountinfo rewrite and the daemon starting process * remove a stupid check in Ocsinventory::Agent::AccountConfig, the accountconfig file was not written unless the file was already present * add a recMkdir function in ocsinventory-agent to create directory recursivly * do not process checksum in local mode 0.0.5 04/17/2007 * AIX: use lslpp -c -l to find installed packages * AIX: fixes on CPU.pm, Networks.pm and Memory.pm * AIX: fetch the serial number with lscfg unless it was found with lsvpd * add the .ocs extension to local written files * with --local flag: don't not warn if last_state doesn't exit * Solaris: retrieve installed package * downgrade some message important from info to debug * read screen serial number in the EDID (DDC screen) * Xorg.pm replaced by Screen.pm * Screen.pm all the data are read from EDID now * Initial Linux PPC support (tested in Debian Etch). thanks Walid Nouh for the hardware * Apply patch by Remi Collet to fix an issue with Linux distro detection and Perl 5.6.1 * Turn of STDERR during the module execution to avoid useless message (e.g: foo: not found) use --debug to turn them back * If the system side vardir can't be created. The agent try to create one in ~/.ocs-inventory-agent * Add a THANKS file 0.0.4 03/20/2007 * use of gzip when Compress:Zlib is not avalaible. OCS server 1.01 and prior are not supported. * dmidecode parsing improved * lspci stuffs moved to generic * Linux: find Wifi connection * fix: pass correctly the logger to the modules * don't write the last_state is the connexion failed * Deals correctly with the accountinfo if it's internaly stored in a array ref * BSD support by Thierry Lacoste Ocsinventory-Unix-Agent-2.0.5/contrib004075500017500001750000000000001173606116100171705ustar00guiguiguiguiOcsinventory-Unix-Agent-2.0.5/contrib/Tarballs.pm010064400017500001750000000026711173606111100213470ustar00guiguiguigui# Write by Simon CLARA 2010-01-25 # # The complet name of the package # the path MUST be valid or the package won't be loaded package Ocsinventory::Agent::Backend::OS::Generic::Tarballs; use strict; # I need to declare $runAfter because of the strict mode use vars qw($runAfter); # The package must be run after OS::Generic $runAfter = ["Ocsinventory::Agent::Backend::OS::Generic"]; # This is the check function. The agent runs it just once the module is loaded. # If the function return false, the module and its children are not executed # eg: OS::Linux and OS::Linux::* won't executed if this run() function return # false # Check if we are on a linux server sub check { $^O =~ /^linux$/ } # uncomment this if you want check for FreeBSD server # sub check {can_run("pkg_info")} # its the main function of the script, it's called during the hardware inventory sub run { my $params = shift; # I need to get the inventory object to update it my $inventory = $params->{inventory}; # our software are in /usr/local/src/ foreach (`ls /usr/local/src/*.{bz2,tar.gz}`){ /^(\/.*\/)(\S+)-(\d+\S*)(\.tar.gz|\.bz2)$/i; my $name = $2; my $version = $3; my $comments = "Software in /usr/local/src/ \n".`$2 --version`; # and I updated the information collected $inventory->addSoftwares({ COMMENTS => $comments, NAME => $name, VERSION => $version }); } } 1; Ocsinventory-Unix-Agent-2.0.5/README010064400017500001750000000122641173606111100164640ustar00guiguiguiguiDESCRIPTION Ocsinventory-Agent is an agent for ocsinventory NG. It supports Linux, Solaris and AIX. *BSD support is in progress. PREREQUISITES Perl 5.8. The following modules are needed: Digest::MD5 XML::Simple Net::IP: optional, it is only needed to compute the network information LWP dmidecode on Linux and *BSD (i386, amd64, ia64) dmidecode is required to read the BIOS stats. lspci on Linux and *BSD (pciutils package) is required to list PCI devices. Mac::SysProfile 0.0.3 is need on MacOSX to collect the device informations. sneep on Solaris/sparc, you must install sneep and record the Serial Number with it : (download it from http://www.sun.com/download/products.xml?id=4304155a) The following modules are optional: Proc::Daemon Daemon mode Proc::PID::File brings the pid file support if Proc::Daemon is installed ipmitool if you want to collect information about IPMI Compress::Zlib needed for OCS server prior 1.02 To get the serial number of the screen you will need one of these tools: - monitor-edid from Mandriva is needed to fetch the monitor. A package is available in Fedora repository. information http://wiki.mandriva.com/en/Tools/monitor-edid - get-edid from the read-edid package If available, Net::CUPS is used to detect the printer Net::SNMP to scan network devices using SNMP Nmap (v3.90 or superior) and Nmap::Parser to scan network devices for Ipdiscover The following module is needed if you plan to prepare a tarball or install directly from the Bazaar devel branch. (See SOURCES below.): Module::Install (Ubuntu package libmodule-install-perl). BUILDING/INSTALLING Once the archive is unpacked, use these commands: perl Makefile.PL make make install If you want to turn of the interactive post install script, just do PERL_AUTOINSTALL=1 perl Makefile.PL instead of the perl Makefile.PL You can also run the agent from the tarball directory. In this case, use the --devlib flag to load the library from the local directory. The agent needs some directories to store internal settings. mkdir -p /etc/ocsinventory-agent mkdir -p /var/lib/ocsinventory-agent mkdir -p /var/log/ocsinventory-agent mkdir -p /var/run you can choose other directories by changing the default settings directly in the ocsinventory-agent file. You need to launch the agent with root privilege. For debugging you can try to launch it with the -l flag: eg: ocsinventory-agent -l /tmp --debug It's also possible to run directly from the tarball directory: sudo ./ocsinventory-agent --devlib --server http://foo/ocsinventory PATCHES If you want to improve OCS Inventory, please use the Bazaar branch directly, publish you changes and ask for the merge http://wiki.ocsinventory-ng.org/index.php/Developers:Bazaar The source of the agent can be download with this command: bzr branch lp:ocsinventory-unix-agent /!\ You may need bzr-loom plugin to retrieve the branch /!\ NOTE Solaris: Sun Studio seems to be needed to build the dependency. The generated Makefile needs gmake to be exectuted The default installation will install the binary in /usr/perl5/5.XXXXX/bin, set you $PATH variable according to that. Crontab: If you use the crontab to launch the agent you'll probably have to redefine the PATH. For example, just add something like: PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin At the begining of the cron file. SOURCES You can prepare a tarball from the Bazaar devel branch with following commands: bzr branch lp:ocsinventory-unix-agent cd ocsinventory-unix-agent perl Makefile.PL make manifest make dist COPYRIGHT Copyright © 2006-201 OCS Inventory Contributor released under GNU GPL 2 license AUTHORS See AUTHORS file. The memconf script is maintained by Tom Schmidt http://myweb.cableone.net/4schmidts/memconf.html Copyright © 1996-2009 Tom Schmidt memconf is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Ocsinventory::Agent::Backend::Virtualization::Vmsystem uses code from imvirt: Authors: Thomas Liske Copyright Holder: 2008 (C) IBH IT-Service GmbH [http://www.ibh.de/] License: This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this package; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Ocsinventory-Unix-Agent-2.0.5/META.yml010064400017500001750000000012241173606113400170540ustar00guiguiguigui--- abstract: 'Ocs-Inventory unified Agent for UNIX, Linux and MacOSX' author: ~ build_requires: ExtUtils::MakeMaker: 6.42 configure_requires: ExtUtils::MakeMaker: 6.42 distribution_type: module generated_by: 'Module::Install version 0.91' license: gpl meta-spec: url: http://module-build.sourceforge.net/META-spec-v1.4.html version: 1.4 name: Ocsinventory-Unix-Agent no_index: directory: - inc recommends: Compress::Zlib: 0 Net::IP: 0 Proc::Daemon: 0 Proc::PID::File: 0 requires: Digest::MD5: 0 File::Temp: 0 LWP: 0 XML::Simple: 0 perl: 5.6.0 resources: license: http://opensource.org/licenses/gpl-license.php version: 2.0.5 Ocsinventory-Unix-Agent-2.0.5/postinst.pl010075500017500001750000000252721173606111100200320ustar00guiguiguigui#!/usr/bin/perl -w use strict; use lib 'lib'; use Ocsinventory::Agent::Config; my $old_linux_agent_dir = "/etc/ocsinventory-client"; my $config; my @cacert; my $binpath; my $randomtime; my $cron_line; sub loadModules { my @modules = @_; foreach (@modules) { eval "use $_;"; if ($@) { print STDERR "Failed to load $_. Please install it and restart the postinst.pl script ( ./postinst.pl ).\n"; exit 1; } } } sub ask_yn { my $promptUser = shift; my $default = shift; die unless $default =~ /^(y|n)$/; my $cpt = 5; while (1) { my $line = prompt("$promptUser\nPlease enter 'y' or 'n'?>", $default); return 1 if $line =~ /^y$/; return if $line =~ /^n$/; if ($cpt-- < 0) { print STDERR "to much user input, exit...\n"; exit(0); } } } sub promptUser { my ($promptUser, $default, $regex, $notice) = @_; my $string = $promptUser; $string .= "?>"; my $line; my $cpt = 5; while (1) { $line = prompt($string, $default); if ($regex && $line !~ /$regex/) { print STDERR $notice."\n"; } else { last; } if ($cpt-- < 0) { print STDERR "to much user input, exit...\n"; exit(0); } } return $line; } sub pickConfigdir { my @choices = @_; foreach (@choices) { my $t = $_.'/ocsinventory-agent.cfg'; if (-f $t) { print "Config file found are $t! Reusing it.\n"; return $_; } } print STDERR "Where do you want to write the configuration file?\n"; foreach (0..$#choices) { print STDERR " ".$_." -> ".$choices[$_]."\n"; } my $input = -1; my $configdir; while (1) { $input = prompt("?>"); if ($input =~ /^\d+$/ && $input >= 0 && $input <= $#choices) { last; } else { print STDERR "Value must be between 0 and ".$#choices."\n"; } } if (! -d $choices[$input]) { if (ask_yn ("Do you want to create the directory ".$choices[$input]."?", 'y')) { if (!mkdir $choices[$input]) { print "Failed to create ".$choices[$input].". Are you root?\n"; exit 1; } } else { print "Please create the ".$choices[$input]." directory first.\n"; exit 1; } } return $choices[$input]; } sub recMkdir { my $dir = shift; my @t = split /\//, $dir; shift @t; return unless @t; my $t; foreach (@t) { $t .= '/'.$_; if ((!-d $t) && (!mkdir $t)) { return; } } 1; } sub mkFullServerUrl { my $server = shift; my $ret = 'http://' unless $server =~ /^http(s|):\/\//; $ret .= $server; if ($server !~ /http(|s):\/\/\S+\/\S+/) { $ret .= '/ocsinventory'; } return $ret; } #################################################### ################### main ########################### #################################################### loadModules (qw/XML::Simple ExtUtils::MakeMaker/); if (!ask_yn("Do you want to configure the agent", 'y')) { exit 0; } my $configdir = pickConfigdir ("/etc/ocsinventory", "/usr/local/etc/ocsinventory", "/etc/ocsinventory-agent"); if (-f $old_linux_agent_dir.'/ocsinv.conf' && ask_yn("Should the old linux_agent settings be imported?", 'y')) { my $ocsinv = XMLin($old_linux_agent_dir.'/ocsinv.conf'); $config->{server} = mkFullServerUrl($ocsinv->{'OCSFSERVER'}); if (-f $old_linux_agent_dir.'/cacert.pem') { open CACERT, $old_linux_agent_dir.'/cacert.pem' or die "Can'i import the CA certificat: ".$!; @cacert = ; close CACERT; } my $admcontent = ''; if (-f "$old_linux_agent_dir/ocsinv.adm") { if (!open(ADM, "<:encoding(iso-8859-1)", "$old_linux_agent_dir/ocsinv.adm")) { warn "Can't open $old_linux_agent_dir/ocsinv.adm"; } else { $admcontent .= $_ foreach (); close ADM; my $admdata = XMLin($admcontent) or die; if (ref ($admdata->{ACCOUNTINFO}) eq 'ARRAY') { foreach (@{$admdata->{ACCOUNTINFO}}) { $config->{tag} = $_->{KEYVALUE} if $_->{KEYNAME} =~ /^TAG$/; } } elsif ( exists($admdata->{ACCOUNTINFO}->{KEYNAME}) && exists($admdata->{ACCOUNTINFO}->{KEYVALUE}) && $admdata->{ACCOUNTINFO}->{KEYNAME} eq 'TAG' ) { print $admdata->{ACCOUNTINFO}->{KEYVALUE}."\n"; $config->{tag} = $admdata->{ACCOUNTINFO}->{KEYVALUE}; } } } } if (-f $configdir."/ocsinventory-agent.cfg") { open (CONFIG, "<".$configdir."/ocsinventory-agent.cfg") or die "Can't open ".$configdir."/ocsinventory-agent.cfg: ".$!; foreach () { s/#.+//; if (/(\w+)\s*=\s*(.+)/) { my $key = $1; my $val = $2; # Remove the quotes $val =~ s/\s+$//; $val =~ s/^'(.*)'$/$1/; $val =~ s/^"(.*)"$/$1/; $config->{$key} = $val; } } close CONFIG; } print "[info] The config file will be written in /etc/ocsinventory/ocsinventory-agent.cfg,\n"; my $tmp = promptUser('What is the address of your ocs server', exists ($config->{server})?$config->{server}:'ocsinventory-ng'); $config->{server} = mkFullServerUrl($tmp); if (!$config->{server}) { print "Server is empty. Leaving...\n"; exit 1; } my $uri; if ($config->{server} =~ /^http(|s):\/\//) { $uri = $config->{server}; } else { # just the hostname $uri = "http://".$config->{server}."/ocsinventory" } if (ask_yn ("Do you need credential for the server? (You probably don't)", 'n')) { $config->{user} = promptUser("user", $config->{user}); $config->{password} = promptUser("password"); print "[info] The realm can be found in the login popup of your Internet browser.\n[info] In general, it's something like 'Restricted Area'.\n"; $config->{realm} = promptUser("realm"); } else { delete ($config->{user}); delete ($config->{password}); delete ($config->{realm}); } if (ask_yn('Do you want to apply an administrative tag on this machine', 'y')) { $config->{tag} = promptUser("tag", $config->{tag}); } else { delete($config->{tag}); } chomp($binpath = `which ocsinventory-agent 2>/dev/null`); if (! -x $binpath) { # Packaged version with perl and agent ? $binpath = $^X; $binpath =~ s/perl/ocsinventory-agent/; } if (! -x $binpath) { print "sorry, can't find ocsinventory-agent in \$PATH\n"; exit 1; } else { print "ocsinventory agent presents: $binpath\n"; } $randomtime = int(rand(60)).' '.int(rand(24)); $cron_line = $randomtime." * * * root $binpath --lazy > /dev/null 2>&1\n"; if ($^O =~ /solaris/) { if (ask_yn("Do yo want to install the cron task in current user crontab ?", 'y')) { my $crontab = `crontab -l`; # Let's suppress Linux cron/anacron user column $cron_line =~ s/ root / /; $crontab .= $cron_line; open CRONP, "| crontab" || die "Can't run crontab: $!"; print CRONP $crontab; close(CRONP); } } elsif (-d "/etc/cron.d") { if (ask_yn("Do yo want to install the cron task in /etc/cron.d", 'y')) { open DEST, '>/etc/cron.d/ocsinventory-agent' or die $!; # Save the root PATH print DEST "PATH=".$ENV{PATH}."\n"; print DEST $randomtime." * * * root $binpath --lazy > /dev/null 2>&1\n"; close DEST; } } my $default_vardir; if ($^O =~ /solaris/) { $default_vardir = '/var/opt/ocsinventory-agent'; } else { $default_vardir = '/var/lib/ocsinventory-agent' } $config->{basevardir} = promptUser('Where do you want the agent to store its files? (You probably don\'t need to change it)', exists ($config->{basevardir})?$config->{basevardir}:$default_vardir, '^\/\w+', 'The location must begin with /'); if (!-d $config->{basevardir}) { if (ask_yn ("Do you want to create the ".$config->{basevardir}." directory?\n", 'y')) { mkdir $config->{basevardir} or die $!; } else { print "Please create the ".$config->{basevardir}." directory\n"; exit 1; } } open CONFIG, ">$configdir/ocsinventory-agent.cfg" or die "Can't write the config file in $configdir: ".$!; print CONFIG $_."=".$config->{$_}."\n" foreach (keys %$config); close CONFIG; chmod 0600, "$configdir/ocsinventory-agent.cfg"; print "New settings written! Thank you for using OCS Inventory\n"; if (ask_yn ("Should I remove the old linux_agent", 'n')) { foreach (qw# /etc/ocsinventory-client /etc/logrotate.d/ocsinventory-client /usr/sbin/ocsinventory-client.pl /etc/cron.d/ocsinventory-client /bin/ocsinv #) { print $_."\n"; next; rmdir if -d; unlink if -f || -l; } print "done\n" } # Create the vardirectory for this server my $dir = $config->{server}; $dir =~ s/\//_/g; my $vardir = $config->{basevardir}."/".$dir; recMkdir($vardir) or die "Can't create $vardir!"; if (@cacert) { # we need to migrate the certificat open CACERT, ">".$vardir."/cacert.pem" or die "Can't open ".$vardir.'/cacert.pem: '.$!; print CACERT foreach (@cacert); close CACERT; print "Certificat copied in ".$vardir."/cacert.pem\n"; } my $download_enable = ask_yn("Do you want to use OCS-Inventory software deployment feature?", 'y'); my $snmp_enable = ask_yn("Do you want to use OCS-Inventory SNMP scans feature?", 'y'); open MODULE, ">$configdir/modules.conf" or die "Can't write modules.conf in $configdir: ".$!; print MODULE "# this list of module will be load by the at run time\n"; print MODULE "# to check its syntax do:\n"; print MODULE "# #perl modules.conf\n"; print MODULE "# You must have NO error. Else the content will be ignored\n"; print MODULE "# This mechanism goal is to launch agent extension modules\n"; print MODULE "\n"; print MODULE ($download_enable?'':'#'); print MODULE "use Ocsinventory::Agent::Modules::Download;\n"; print MODULE ($snmp_enable?'':'#'); print MODULE "use Ocsinventory::Agent::Modules::Snmp;\n"; print MODULE "\n"; print MODULE "# DO NOT REMOVE THE 1;\n"; print MODULE "1;\n"; close MODULE; #Prevent security risks by removing existing snmp_com.txt file which is no longer used my $snmp_com_file = $vardir."/snmp/snmp_com.txt"; if ( -f $snmp_com_file ) { print "$snmp_com_file seems to exists...removing it to prevent security risks !\n"; unlink $snmp_com_file; } if (ask_yn("Do you want to send an inventory of this machine?", 'y')) { system("$binpath --force"); if (($? >> 8)==0) { print " -> Success!\n"; } else { print " -> Failed!\n"; print "You may want to launch the agent with the --verbose or --debug flag.\n"; } } Ocsinventory-Unix-Agent-2.0.5/AUTHORS010064400017500001750000000004411173606111100166460ustar00guiguiguiguimaintainer: Guillaume PROTET former maintainer and main creator: Gonéri LE BOUDER Copyright 2006-2011 OCS Inventory contributors Website: http://www.ocsinventory-ng.org Please read THANKS to get the list of the contributors Ocsinventory-Unix-Agent-2.0.5/memconf010064400017500001750000010711711173606111100171560ustar00guiguiguigui#!/usr/bin/env perl # # !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! # MODIFY THE LOCATION OF PERL ABOVE IF NECESSARY # !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! # # @(#) memconf - Identify sizes of memory modules installed on a # @(#) Solaris, Linux, FreeBSD or HP-UX workstation or server. # @(#) Micron Technology, Inc. - Tom Schmidt 13-Jan-2010 V2.13 # # Maintained by Tom Schmidt (tschmidt@micron.com) # # Check my website at http://www.4schmidts.com/unix.html to get the latest # version of memconf. # # If memconf does not recognize a system, then please run 'memconf -D' to # have it automatically E-mail me the information I need to enhanced to # recognize it. If the unrecognized system is a Sun clone, please also send # any hardware documentation on the memory layout that you may have. # # Usage: memconf [ -v | -D | -h ] [explorer_dir] # -v verbose mode # -D E-mail results to memconf maintainer # -h print help # explorer_dir Sun Explorer output directory # # memconf reports the size of each SIMM/DIMM memory module installed in a # system. It also reports the system type and any empty memory sockets. # In verbose mode, it also reports the following information if available: # - banner name, model and CPU/system frequencies # - address range and bank numbers for each module # # memconf is Y2K compliant. There are no date calls in the program. Your # Operating System or Perl version may not be Y2K compliant. # # memconf is free software; you can redistribute it and/or modify it under # the terms of the GNU General Public License as published by the Free # Software Foundation; either version 2 of the License, or (at your option) # any later version. # # Original version based on SunManagers SUMMARY by Howard Modell # (h.modell@ieee.org) on 29-Jan-1997. # # Tested to work on: # - Solaris 10 6/06 or later on x86 with /usr/platform/i86pc/sbin/prtdiag # - Linux on SPARC with sparc-utils and /dev/openprom # - Linux/FreeBSD on x86 with kernel-utils or pmtools for /usr/sbin/dmidecode # - most HP-UX systems with Support Tools Manager (cstm) # - Solaris (SunOS 4.X or 5.X) on the following SPARC systems # - sun4c Sun SS1, SS2, IPC, IPX, ELC with Open Boot PROM V2.X # - sun4m Sun 4/6x0, SS4, SS5, SS10, SS20, LX/ZX, Classic, Voyager, JavaEngine1 # - sun4d Sun SPARCserver-1000, 1000E, SPARCcenter-2000, 2000E # - sun4u Sun Ultra 1, 2, 5, 10, 30, 60, 450 # - sun4u Sun Ultra 80, Ultra Enterprise 420R, and Netra t1400/1405. # - sun4u Sun Ultra Enterprise 220R, 250, 450 # - sun4u Sun Ultra Enterprise 3000, 3500, 4000/5000, 4500/5500, 6000, 6500 # - sun4u1 Sun Ultra Enterprise 10000 # - sun4u Sun StorEdge N8400 and N8600 Filer # - sun4u Sun SPARCengine Ultra AX, AXi, AXmp, AXmp+, AXe # - sun4u Sun SPARCengine CP 1400, CP 1500, CP2140 # - sun4u Sun Netra t1 100/105, t1120/1125, ft1800, X1, T1 200, AX1105-500, 120 # - sun4u Sun Netra 20 (Netra T4) # - sun4u Sun Netra ct800 # - sun4u Sun Blade 100, 150, 1000, 1500, 2000, 2500 # - sun4u Sun Fire 280R # - sun4u Sun Fire 3800, 4800, 4810, 6800 # - sun4u Sun Fire V100, V120, V210, V240, V250, V440 # - sun4u Sun Netra 210, 240, 440 # - sun4u Sun Fire V125, V215, V245, V445 # - sun4u Sun Fire V480, V490, V880, V880z, V890 # - sun4u Sun Fire 12000, 15000, E20K, E25K # - sun4u Sun Fire V1280, Netra 1280 (Netra T12) # - sun4u Sun Fire E2900, E4900, E6900 # - sun4u Sun Fire B100s Blade Server # - sun4u Sun Ultra 25 Workstation # - sun4u Sun Ultra 45 Workstation # - sun4u Sun/Fujitsu Siemens SPARC Enterprise M3000, M4000, M5000, M8000 Server # - sun4v Sun Fire T2000, T1000, Netra T2000 # - sun4v Sun Blade T6300, T6320, T6340 # - sun4v Sun SPARC Enterprise T2000, T1000 Server # - sun4v Sun SPARC Enterprise T5120, T5140, T5220, T5240 Server, Netra T5220 # - sun4v Sun SPARC Enterprise T5440 Server # - sun4m Tatung COMPstation 5, 10, 20AL, 20S and 20SL clones # - sun4m transtec SPARCstation 20I clone # - sun4m Rave Axil-255 SPARCstation 5 clone # - sun4m Rave Axil-245, 311 and 320 clones (no verbose output) # - sun4u AXUS Ultra 250 # - sun4u Tatung COMPstation U2, U60 and U80D clones # - Force Computers SPARC clones (no verbose output) # - Tadpole SPARCbook 3 and RDI PowerLite-170 (no verbose output) # - Tadpole VoyagerIIi # - Tadpole (Cycle) 3200 CycleQUAD Ultra 2 upgrade motherboard # - Tadpole (Cycle) UP-520-IIi SPARCstation 5/20 upgrade motherboard # - Tadpole SPARCle # - Auspex 7000/650 (no verbose output) # - Fujitsu S-4/10H, S-4/20L and S-4/20H clones (no verbose output) # - Fujitsu GP7000, GP7000F # - Fujitsu Siemens PrimePower 200, 400, 600, 800, 1000, 2000 # - Fujitsu Siemens PrimePower 250, 450, 650, 850 # - Fujitsu Siemens PrimePower 900, 1500, 2500, HPC2500 # - Twinhead TWINstation 5G, 20G # - Detects VSIMMs for SX graphics on SS10SX/SS20 (1st VSIMM only) # - Detects Prestoserve NVSIMMs on SS10/SS20/SS1000/SC2000 # # Untested systems that should work: # - sun4c Sun SS1+ with Open Boot PROM V2.X # - sun4m Tatung COMPstation 20A clone # - sun4u Sun Netra ct400, ct410, ct810 # - sun4u Sun SPARCengine CP2040, CP2060, CP2080, CP2160 # - sun4u Sun/Fujitsu Siemens SPARC Enterprise M9000 Server # - May not work properly on Sun clones # # Won't work on: # - SPARC systems without /dev/openprom # - sun4c Sun SS1, SS1+, SLC, IPC with Open Boot PROM V1.X (no 'memory' lines # in devinfo/prtconf output) # - sun4 kernel architecture, and sun3 and older systems # - Perl 5.001 is known to have problems with hex number conversions # - Does not detect unused VSIMMs (another FB installed) or second VSIMM # # To Do list and Revision History can be found on the maintainers web site at # http://www.4schmidts.com/unix.html # Uncomment for debugging (perl 5 only) #use diagnostics; $^W=1; # Enables -w warning switch, put here for SunOS4 compatibility. $version="V2.13"; $version_date="13-Jan-2010"; $URL="http://www.4schmidts.com/unix.html"; $newpath="/usr/sbin:/bin:/usr/bin:/usr/ucb:/usr/local/bin:/var/local/bin"; $ENV{PATH}=(defined($ENV{PATH})) ? "$newpath:$ENV{PATH}" : $newpath; # Force C locale so that output is in English $ENV{LC_ALL}="C"; $_=$]; ($PERL_VERSION_MAJOR)=/(\d).*/; if ($PERL_VERSION_MAJOR < 5) { ($PERL_VERS)=/(\d\.\d)/; ($PERL_PATCH)=/(\d*)$/; $PERL_PATCH="0$PERL_PATCH" if ($PERL_PATCH < 10); $PERL_VERSION="$PERL_VERS$PERL_PATCH"; } else { ($PERL_VERSION)=/(\d\.\d{3}).*/; } $uname="/usr/bin/uname"; $uname="/bin/uname" if (-x '/bin/uname'); if (-x $uname) { $hostname=&mychomp(`$uname -n`); $machine=&mychomp(`$uname -m`); $os=&mychomp(`$uname`); $os="Linux" if ("$os" eq "FreeBSD"); $osrel=&mychomp(`$uname -r`); $kernver=&mychomp(`$uname -v`); $platform=$machine; } else { $hostname=""; $machine=""; $os="this unsupported"; $osrel=""; $kernver=""; } $osrelease=""; $prtdiag_cmd=""; $prtdiag_exec=""; $have_prtdiag_data=0; $prtdiag_checked=0; $prtfru_cmd=""; $have_prtfru_data=0; $prtpicl_cmd=""; $have_prtpicl_data=0; $psrinfo_cmd=""; $have_psrinfo_data=0; $use_psrinfo_data=1; $psrinfo_checked=0; $cfgadm_cmd=""; $have_cfgadm_data=0; $ipmitool_cmd=""; $have_ipmitool_data=0; $cpucnt_ipmi=0; $cputype_ipmi=""; @ipmi_mem=(""); $smbios_cmd=""; $have_smbios_data=0; @smbios_mem=(""); $ldm_cmd=""; $have_ldm_data=0; $ldm_memory=0; $free_cmd=""; $have_free_data=0; $have_x86_devname=0; if (-d '/usr/platform') { $platform=&mychomp(`$uname -i`); if (-x "/usr/platform/$platform/sbin/prtdiag") { $prtdiag_cmd="/usr/platform/$platform/sbin/prtdiag"; } elsif (-x "/usr/platform/$machine/sbin/prtdiag") { $prtdiag_cmd="/usr/platform/$machine/sbin/prtdiag"; } elsif (-x "/usr/sbin/prtdiag") { $prtdiag_cmd="/usr/sbin/prtdiag"; } } elsif (-x '/usr/kvm/prtdiag') { $platform=$machine; $prtdiag_cmd='/usr/kvm/prtdiag'; } elsif (-x "/usr/sbin/prtdiag") { $platform=$machine; $prtdiag_cmd="/usr/sbin/prtdiag"; } if ($prtdiag_cmd ne "") { if (-x $prtdiag_cmd) { $prtdiag_exec="$prtdiag_cmd"; } } $buffer=""; $filename=""; $installed_memory=0; $failed_memory=0; $spare_memory=0; $failing_memory=0; $failed_fru=""; $ultra=0; $simmbanks=0; $simmspergroup=1; $bankcnt=0; $slot0=0; $smallestsimm=16777216; $largestsimm=0; $found8mb=0; $found16mb=0; $found32mb=0; $found10bit=0; $found11bit=0; $foundbank1or3=0; $sxmem=0; $nvmem=0; $nvmem1=0; $nvmem2=0; $memtype="SIMM"; $sockettype="socket"; $verbose=0; $DEBUG=0; $starttime=time; $recognized=1; $untested=1; $untested_type=""; $perlhexbug=0; $exitstatus=0; $meg=1048576; @socketstr=(""); @socketlabelstr=(""); @orderstr=(""); @groupstr=(""); @bankstr=(""); @banksstr=(""); $bankname="banks"; @bytestr=(""); @slotstr=(""); $simmrangex=0; $simmrange=1; $showrange=1; $start1x=""; $stop1x=""; @simmsizes=(0,16777216); @simmsizesfound=(); @memorylines=(""); $socket=""; $socketlabel=""; $order=""; $group=""; $slotnum=""; $bank=""; $dualbank=0; $byte=""; $gotmemory=""; $gotmodule=""; $gotmodulenames=""; $gotcpunames=""; $gotcpuboards=""; $slotname0=""; @boards_cpu=""; @boards_mem=""; $empty_banks=""; $banks_used=""; $nvsimm_banks=""; $boardslot_cpu=" "; $boardslot_cpus=" "; @boardslot_cpus=(); $boardslot_mem=" "; $boardslot_mems=" "; @boardslot_mems=(); $boardfound_cpu=0; $boardfound_mem=0; $prtdiag_has_mem=0; $prtdiag_banktable_has_dimms=0; $prtdiag_failed=0; $prtconf_warn=""; $flag_cpu=0; $flag_mem=0; $flag_rewrite_prtdiag_mem=0; $format_cpu=0; $format_mem=0; $foundname=0; $sockets_used=""; $sockets_empty=""; $sortslots=1; $devtype=""; $interleave=0; $stacked=0; $freq=0; $sysfreq=0; $cpufreq=0; $cputype=""; $cputype_prtconf=""; $cputype_psrinfo=""; $cputype_cpuinfo=""; @cpucnt=(); $cpucntfrom=""; $cpucntflag=0; $cpucnt_cpuinfo=0; $have_cpuinfo_data=0; $corecnt_cpuinfo=0; $cpucores_cpuinfo=0; $foundGenuineIntel=0; @diagcpucnt=(); $diagthreadcnt=0; $psrcpucnt=0; $foundpsrinfocpu=0; $ncpu=0; # remains 0 if using prtdiag output only $ndcpu=0; # prtdiag cpu count $npcpu=0; # physical cpu count $nvcpu=0; # virtual cpu count $necpu=0; # empty cpu socket count $threadcnt=0; $corecnt=1; $hyperthread=0; $header_shown=0; $romver=""; $romvernum=""; $SUNWexplo=0; $banner=""; $bannermore=""; $cpubanner=""; $diagbanner=""; $model=""; $modelmore=""; $model_checked=0; $BSD=0; # Initially assume SunOS 5.X $config_cmd="/usr/sbin/prtconf -vp"; $config_command="prtconf"; $config_permission=0; $permission_error=""; $dmidecode_error=""; $freephys=0; $isX86=0; $HPUX=0; $devname=""; # Sun internal development code name $familypn=""; # Sun family part number (system code) $clone=0; $totmem=0; $LnxDMI=0; $latest_dmidecode_ver="2.10"; $dmidecode_ver="0"; $dmidecodeURL="http://www.nongnu.org/dmidecode/"; $cpuarr=-1; $memarr=-1; $release=""; $waitshown=0; $helpers_defined=0; $picl_foundmemory=0; @picl_mem_pn=(); @picl_mem_bank=(); @picl_mem_dimm=(); $linebreak="----------------------------------------------------\n"; $uid=&mychomp(`id`); $uid=~s/uid=//; $uid=~s/\(.*//; # # Parse options # foreach $name (@ARGV) { if ($name eq "-v") { # verbose mode $verbose=1; } elsif ($name eq "-d") { # more verbose debug mode $verbose=2; } elsif ($name eq "-debug") { # most verbose debug mode $DEBUG=1; } elsif ($name eq "-D") { # E-mail information of system to maintainer $verbose=3; open(MAILFILE, ">/tmp/memconf.output") || die "can't open /tmp/memconf.output: $!"; print MAILFILE "Output from 'memconf -d' on $hostname\n"; print MAILFILE "$linebreak"; close(MAILFILE); open(STDOUT, "| tee -a /tmp/memconf.output") || die "can't open /tmp/memconf.output: $!"; print "Gathering memconf data to E-mail to maintainer. This may take a few minutes.\nPlease wait...\n"; } elsif (-f "$name/sysconfig/prtconf-vp.out") { # Sun Explorer output $SUNWexplo=1; # Special case for regression testing Sun Explorer data $os="SunOS"; open(FILE, "<$name/sysconfig/prtconf-vp.out"); @config=; close(FILE); if (-f "$name/sysconfig/prtdiag-v.out") { open(FILE, "<$name/sysconfig/prtdiag-v.out"); @prtdiag=; $have_prtdiag_data=1; $prtdiag_cmd="/usr/platform/$platform/sbin/prtdiag"; $prtdiag_exec="$prtdiag_cmd"; close(FILE); } if (-f "$name/fru/prtfru_-x.out") { open(FILE, "<$name/fru/prtfru_-x.out"); @prtfru=; $have_prtfru_data=1; $prtfru_cmd='/usr/sbin/prtfru'; close(FILE); } if (-f "$name/sysconfig/prtpicl-v.out") { open(FILE, "<$name/sysconfig/prtpicl-v.out"); @prtpicl=; $have_prtpicl_data=1; $prtpicl_cmd='/usr/sbin/prtpicl'; close(FILE); } if (-f "$name/sysconfig/psrinfo-v.out") { open(FILE, "<$name/sysconfig/psrinfo-v.out"); @psrinfo=; $have_psrinfo_data=1; $psrinfo_cmd='/usr/sbin/psrinfo'; close(FILE); } # Sun Explorer does not include "psrinfo -p" or # "psrinfo -p -v" data yet. if (-f "$name/sysconfig/cfgadm-alv.out") { open(FILE, "<$name/sysconfig/cfgadm-alv.out"); @cfgadm=; $have_cfgadm_data=1; $cfgadm_cmd='/usr/sbin/cfgadm'; close(FILE); } if (-f "$name/sysconfig/uname-a.out") { open(FILE, "<$name/sysconfig/uname-a.out"); $uname=&mychomp(); close(FILE); @unamearr=split(/\s/, $uname); $hostname=$unamearr[1]; $machine=$unamearr[4]; $osrel=$unamearr[2]; $platform=$unamearr[6]; $prtdiag_cmd="/usr/platform/$platform/sbin/prtdiag"; $prtdiag_exec="$prtdiag_cmd"; } else { if ($config[0] =~ /System Configuration:/) { @machinearr=split(/\s+/, $config[0]); $machine=$machinearr[4]; } $osrel=""; $hostname=""; } if (-f "$name/sysconfig/prtconf-V.out") { open(FILE, "<$name/sysconfig/prtconf-V.out"); $romver=&mychomp(); close(FILE); } $filename="$name"; } elsif (-f $name) { # Regression test file with prtconf/dmidecode output open(FILE, "<$name"); @config=; close(FILE); # Regression test file may also have prtdiag, etc. @prtdiag=@config; @prtfru=@config; $have_prtfru_data=1; @prtpicl=@config; $have_prtpicl_data=1; @psrinfo=@config; $have_psrinfo_data=1; @cfgadm=@config; $have_cfgadm_data=1; @ipmitool=@config; $have_ipmitool_data=1; @ldm=@config; $have_ldm_data=1; @free=@config; $have_free_data=1; @cpuinfo=@config; $have_cpuinfo_data=1; @smbios=@config; $have_smbios_data=1; @machinfo=@config; $hostname=""; $osrel=""; # Check test file to determine OS and machine for ($val=0; $val <= $#config; $val++) { if ($config[$val]) { if ($config[$val] =~ /System Configuration:/) { # Special case for regression testing SunOS prtconf files $os="SunOS"; @machinearr=split(/\s+/, $config[$val]); $machine=$machinearr[4]; $machine="" if (! defined($machine)); $platform=$machine; last; } elsif ($config[$val] =~ / dmidecode / || $config[$val] =~ /DMI .* present/) { # Special case for regression testing Linux dmidecode files $os="Linux"; $LnxDMI=1; if ($config[$val] =~ / dmidecode /) { $dmidecode_ver=&mychomp($config[$val]); $dmidecode_ver=~s/.* dmidecode //; } $machine=""; $platform=""; last; } } } # Special case for regression testing SunOS4 and SunOS5 files if ($name =~ /devinfo\./) { $os="SunOS"; $BSD=1; } if ($name =~ /prtconf\./) { $os="SunOS"; $BSD=0; } # Special case for regression testing Linux SPARC files $os="Linux" if ($name =~ /prtconf\.Linux/); $filename="$name"; } else { &show_help; } } &linux_dmi if ($LnxDMI); if ($filename eq "") { if ("$os" eq "HP-UX") { $HPUX=1; if (-x '/usr/sbin/cstm') { &hpux_cstm; } else { &show_header; &show_supported; } } elsif ("$os" eq "Linux") { &linux_release if ("$release" eq ""); &find_helpers; &linux_dmi if ($config_cmd =~ /dmidecode/); if ("$machine" =~ /.86/ || ! -e '/dev/openprom') { &show_header; &show_supported; } } elsif ("$os" ne "SunOS") { &show_header; &show_supported; } if (-f '/vmunix') { # SunOS 4.X (Solaris 1.X) $BSD=1; if (! -x '/usr/etc/devinfo') { print "ERROR: no 'devinfo' command. Aborting.\n"; exit 1; } $config_cmd="/usr/etc/devinfo -pv"; $config_command="devinfo"; } else { # Solaris 2.X or later $BSD=0; if (! -x '/usr/sbin/prtconf') { print "ERROR: no 'prtconf' command. Aborting.\n"; exit 1; } $config_cmd="/usr/sbin/prtconf -vp"; $config_command="prtconf"; } } $kernbit=""; $hasprtconfV=0; $solaris=""; $solaris="1.0" if ($osrel eq "4.1.1"); $solaris="1.0.1" if ($osrel eq "4.1.2"); $solaris="1.1" if ($osrel =~ /4.1.3/); $solaris="1.1.1" if ($osrel eq "4.1.3_U1"); $solaris="1.1.2" if ($osrel eq "4.1.4"); if ($osrel =~ /^5./) { $osminor=$osrel; $osminor=~s/5.//; if ($SUNWexplo) { if (-f "$filename/etc/release") { open(FILE, "<$filename/etc/release"); $release=; close(FILE); } } else { if (-f '/etc/release') { open(FILE, "; close(FILE); } } if ($release =~ "Solaris") { $release=~s/\s+//; $release=&mychomp($release); $solaris="$release"; } if ($osminor =~ /[7-9]|1[0-9]/) { $hasprtconfV=1; $solaris=$osminor if ($solaris eq ""); $kernbit=32; if ($SUNWexplo) { $cpuarch=""; if (-f "$filename/sysconfig/isainfo.out") { open(FILE, "<$filename/sysconfig/isainfo.out"); $cpuarch=; close(FILE); } elsif (-f "$filename/sysconfig/isainfo-kv.out") { open(FILE, "<$filename/sysconfig/isainfo-kv.out"); $cpuarch=; close(FILE); } $kernbit=64 if ($cpuarch =~ /sparcv9/ || $cpuarch =~ /amd64/); } elsif (-x '/bin/isainfo') { $kernbit=&mychomp(`/bin/isainfo -b`); } } elsif ($osminor =~ /[4-6]/) { $hasprtconfV=1; $solaris="2.$osminor" if ($solaris eq ""); } else { $solaris="2.$osminor"; } if ("$machine" eq "i86pc" && $osminor =~ /[0-5]/) { # x86 Solaris 2.5.1 and earlier has different syntax than SPARC $hasprtconfV=0; $config_cmd="/usr/sbin/prtconf -v"; } } if ($filename eq "") { @config=&run("$config_cmd"); if ($hasprtconfV) { # Solaris 2.4 or later $romver=&mychomp(`/usr/sbin/prtconf -V 2>&1`); if ($romver eq "Cannot open openprom device") { $prtconf_warn="ERROR: $romver"; $romver=""; } else { @romverarr=split(/\s/, $romver); $romvernum=$romverarr[1]; } } else { # Solaris 2.3 or older # Try to use sysinfo if installed to determine the OBP version. # sysinfo is available from http://www.MagniComp.com/sysinfo/ close(STDERR); $romver=`sysinfo -show romver 2>/dev/null | tail -1`; open(STDERR); if ($romver eq "") { # Assume it is old $romver="2.X" if ($machine =~ /sun4/); } else { $romver=&mychomp($romver); @romverarr=split(/\s/, $romver); $romver=$romverarr[$#romverarr]; } $romvernum=$romver; } } sub please_wait { return if ($waitshown); $waitshown=1; print "Gathering data for memconf. This may take over a minute. Please wait...\n"; } sub find_helpers { return if ($helpers_defined); $helpers_defined=1; if ("$os" eq "HP-UX") { $config_cmd="echo 'selclass qualifier cpu;info;wait;selclass qualifier memory;info;wait;infolog'|/usr/sbin/cstm"; } elsif ("$os" eq "Linux") { $config_cmd="dmidecode"; if (defined($ENV{DMIDECODE}) && -x $ENV{DMIDECODE}) { # this may be a setuid-root version of dmidecode $config_cmd=$ENV{DMIDECODE}; } else { foreach $bin ('/usr/local/sbin','/usr/local/bin','/usr/sbin','/usr/bin','/bin') { if (-x "$bin/dmidecode") { $config_cmd="$bin/dmidecode"; last; } } } } elsif (-x '/usr/sbin/prtconf') { # Solaris 2.X or later $config_cmd="/usr/sbin/prtconf -vp"; $prtfru_cmd='/usr/sbin/prtfru' if (-x '/usr/sbin/prtfru'); $prtpicl_cmd='/usr/sbin/prtpicl' if (-x '/usr/sbin/prtpicl'); $psrinfo_cmd='/usr/sbin/psrinfo' if (-x '/usr/sbin/psrinfo'); $cfgadm_cmd='/usr/sbin/cfgadm' if (-x '/usr/sbin/cfgadm'); $smbios_cmd='/usr/sbin/smbios' if (-x '/usr/sbin/smbios'); $ldm_cmd='/opt/SUNWldm/bin/ldm' if (-x '/opt/SUNWldm/bin/ldm'); } if ("$os" eq "Linux") { $free_cmd='/usr/bin/free -m'; } if ("$os" eq "SunOS" || "$os" eq "Linux") { if (defined($ENV{IPMITOOL}) && -x $ENV{IPMITOOL}) { # this may be a setuid-root version of ipmitool $ipmitool_cmd=$ENV{IPMITOOL}; } else { foreach $bin ('/usr/sfw/bin','/usr/local/sbin','/usr/local/bin','/usr/sbin','/usr/bin','/bin') { if (-x "$bin/ipmitool") { $ipmitool_cmd="$bin/ipmitool"; last; } } } } } sub show_helpers { $s=shift; print "$s$config_cmd\n"; if ("$os" eq "SunOS") { print "$s$prtdiag_cmd -v\n" if ($prtdiag_exec ne ""); print "$s$prtfru_cmd -x\n" if ($prtfru_cmd ne ""); print "$s$prtpicl_cmd -v\n" if ($prtpicl_cmd ne ""); if ($psrinfo_cmd ne "") { print "$s$psrinfo_cmd -v\n"; $tmp=&mychomp(`$psrinfo_cmd -p 2>/dev/null`); if ($tmp ne "") { print "$s$psrinfo_cmd -p\n"; print "$s$psrinfo_cmd -p -v\n"; } } print "$s$cfgadm_cmd -al\n" if ($cfgadm_cmd ne ""); print "$s$smbios_cmd\n" if ($smbios_cmd ne ""); print "$s$ldm_cmd list-devices -a -p\n" if ($ldm_cmd ne ""); } if ("$os" eq "Linux") { print "$s$free_cmd\n" if ($free_cmd ne ""); print "${s}cat /proc/cpuinfo\n" if (-r '/proc/cpuinfo'); } if ("$os" eq "SunOS" || "$os" eq "Linux") { print "$s$ipmitool_cmd fru\n" if ($ipmitool_cmd ne ""); } if ("$os" eq "HP-UX") { print "$s/usr/contrib/bin/machinfo\n" if (-x '/usr/contrib/bin/machinfo'); } } sub show_help { &find_helpers; $config_cmd="dmidecode" if ("$os" eq "Linux" && $config_cmd =~ /prtconf/); print "Usage: memconf [ -v | -D | -h ] [explorer_dir]\n"; print " -v verbose mode\n"; print " -D E-mail results to memconf maintainer\n"; print " -h print help\n"; print " explorer_dir Sun Explorer output directory\n"; print "\nThis is memconf, $version $version_date\n\nCheck my website "; print "at $URL to get the latest\nversion of memconf.\n\n"; &show_supported if ("$os" ne "SunOS" && "$os" ne "HP-UX" && "$os" ne "Linux"); print "Please send bug reports and enhancement requests along with "; print "the output of the\nfollowing commands to tschmidt\@micron.com "; print "as E-mail attachments so that memconf\nmay be enhanced. "; print "You can do this using the 'memconf -D' command if this system\n"; print "can E-mail to the Internet.\n"; &show_helpers(" "); exit; } sub cpubanner { print &runtime . "in cpubanner, corecnt=$corecnt, npcpu=$npcpu, nvcpu=$nvcpu, cputype=$cputype\n" if ($DEBUG); if ($modelmore =~ /(Solaris x86 machine)/ && $cpubanner eq "" && $cputype ne "x86") { $modelmore=""; while (($cf,$cnt)=each(%cpucnt)) { $cf=~/^(.*) (\d+)$/; $cputype=$1; $cpufreq=$2; } &x86multicorecnt($cputype); $ncpu=$cpucnt{"$cputype $cpufreq"}; if ($cpucntflag == 0 && $npcpu == 0) { for $tmp (2,3,4,6,8,12) { $ncpu /= $tmp if ($corecnt == $tmp && $ncpu % $tmp == 0); } } $ncpu=$npcpu if ($npcpu != 0); $cpubanner="$ncpu X " if ($ncpu > 1); $tmp=&multicore_cputype($cputype,$corecnt); $cpubanner .= "$tmp"; $cpubanner .= " x86" if ($cputype eq "AMD"); $cpubanner .= " ${cpufreq}MHz" if ($cpufreq ne "" && $cpufreq ne "0" && $cputype !~ /Hz$/); } } sub show_header { return if ($header_shown); print &runtime . "cpucntfrom=$cpucntfrom\n" if ($DEBUG); &cpubanner; $header_shown=1; undef %saw; @saw{@simmsizesfound}=(); @simmsizesfound=sort numerically keys %saw; print "memconf: $version $version_date $URL\n" if ($verbose); print "hostname: $hostname\n" if ($hostname); if ($filename) { print (($SUNWexplo) ? "Sun Explorer directory" : "filename"); print ": $filename\n"; } if ($diagthreadcnt && $cpucntfrom eq "prtdiag") { # Replace @cpucnt with @diagcpucnt while (($cf,$tmp)=each(%cpucnt)) { delete $cpucnt{"$cf"}; $cpucnt{"$cf"}=$diagcpucnt{"$cf"}; } } if ($banner) { # See if banner includes CPU information if ($banner !~ /\(.*SPARC/ && $banner !~ /MHz/) { @cputypecnt=keys(%cpucnt); $x=0; while (($cf,$cnt)=each(%cpucnt)) { $x++; $cf=~/^(.*) (\d*)$/; $ctype=$1; $cfreq=$2; &multicore_cpu_cnt(""); $cpubanner .= "$cnt X " if ($cnt > 1); if ($ctype =~ /390Z5/) { $cpubanner .= "SuperSPARC"; $cpubanner .= "-II" if ($cfreq > 70); } elsif ($ctype =~ /MB86907/) { $cpubanner .= "TurboSPARC-II"; } elsif ($ctype =~ /MB86904/ || $ctype =~ /390S10/) { $cpubanner .= "microSPARC"; $cpubanner .= "-II" if ($cfreq > 70); } elsif ($ctype =~ /L2A0925/) { $cpubanner .= "microSPARC-IIep"; } elsif ($ctype =~ /,RT62[56]/) { $cpubanner .= "hyperSPARC"; } else { $cpubanner .= "$ctype"; } $cpubanner .= " ${cfreq}MHz" if ($cfreq ne "" && $cpubanner !~ /Hz$/); $cpubanner .= ", " if ($x < scalar(@cputypecnt)); } } elsif ($banner =~ /\(/ && $banner !~ /MHz/) { # CPU listed without speed while (($cf,$cnt)=each(%cpucnt)) { $cf=~/^(.*) (\d*)$/; $cfreq=$2; $banner=~s/\)/ ${cfreq}MHz\)/g if ($cfreq); } } } $modelmore="" if ($modelmore =~ /(Solaris x86 machine)/ && $model ne "i86pc"); if ($verbose) { if ($banner) { print "banner: $banner"; print " $bannermore" if ($bannermore); print " ($cpubanner)" if ($cpubanner); print "\n"; } print "manufacturer: $manufacturer\n" if ($manufacturer); if ($model) { print "model: $model"; print " $modelmore" if ($modelmore); print " $realmodel" if ($realmodel); print " ($cpubanner)" if ($cpubanner ne "" && $banner eq ""); print "\n"; } print "Sun development codename: $devname\n" if ($devname ne "" && ! $clone); print "Sun Family Part Number: $familypn\n" if ($familypn ne "" && ! $clone); if ($filename eq "" || $SUNWexplo) { if ($solaris) { print "Solaris " if ($solaris !~ /Solaris/); print "$solaris, "; print "${kernbit}-bit kernel, " if ($kernbit); } if ("$os" eq "Linux" && "$release" ne "") { print "$release\n"; } else { print "$os $osrel"; print " ($osrelease)" if ($osrelease ne ""); print ", ${kernbit}" if ($kernbit && $HPUX); print "\n"; } } elsif ($HPUX) { print "$os"; print " $osrel" if ($osrel ne ""); print " ($osrelease)" if ($osrelease ne ""); print ", ${kernbit}" if ($kernbit); print "\n"; } elsif ("$os" eq "Linux") { if ("$release" ne "") { print "$release\n"; } elsif ($LnxDMI) { print "Linux x86\n"; } elsif (-e '/dev/openprom' || $filename =~ /prtconf\.Linux/) { print "Linux SPARC\n"; } } elsif ($BSD) { print "Solaris 1.X, SunOS 4.X\n"; } else { print "Solaris 2.X, SunOS 5.X\n"; } $ncpu=1 if ($ncpu == 0); # Assume it has at least 1 CPU if ($cpuarr == -1) { @cputypecnt=keys(%cpucnt); $x=0; while (($cf,$cnt)=each(%cpucnt)) { if ($cpucntflag == 0 && $npcpu == 0 && $cpucntfrom ne "prtdiag") { for $tmp (2,3,4,6,8,12) { $cnt /= $tmp if ($corecnt == $tmp && $cnt % $tmp == 0); } $cpucntflag=1; } if ($npcpu != 0) { $cnt=$npcpu; } else { $cnt=$ndcpu if ($ndcpu != 0); } $x++; $cf=~/^(.*) (\d*)$/; $ctype=$1; $ctype=$cf if (! $ctype); $cfreq=$2; &checkX86; $ctype=&multicore_cputype($ctype,$corecnt) if ($isX86); &multicore_cpu_cnt(""); print "$cnt $ctype"; if ($cfreq) { print " ${cfreq}MHz" if ($cfreq > 0 && $ctype !~ /Hz$/); } print " cpu"; print "s" if ($cnt > 1); print ", " if ($x < scalar(@cputypecnt)); } print (($sysfreq) ? ", " : "\n") if ($x > 0); } print "system freq: ${sysfreq}MHz\n" if ($sysfreq); } else { $modelbuf=""; if ($manufacturer) { $modelbuf .= "$manufacturer " if ($banner !~ /^$manufacturer/ && $model !~ /^$manufacturer/ && ($banner ne "" || $model ne "")); } if ($banner ne "" && $bannermore ne "") { $modelbuf .= "$banner $bannermore"; } elsif ($modelmore) { $modelbuf .= "$model $modelmore"; } elsif ($banner) { $modelbuf .= "$banner"; } elsif ($diagbanner) { $modelbuf .= "$diagbanner"; } elsif ($model) { $modelbuf .= "$model"; } $modelbuf .= " ($cpubanner)" if ($cpubanner); $modelbuf .= " $realmodel" if ($realmodel); print "$modelbuf\n" if ($modelbuf); } # debug output if ($verbose > 1) { if ($banner) { print "banner = $banner\n"; } else { print "diagbanner = $diagbanner\n" if ($diagbanner); } print "cpubanner = $cpubanner\n" if ($cpubanner); print "bannermore = $bannermore\n" if ($bannermore); print "model = $model\n" if ($model); print "modelmore = $modelmore\n" if ($modelmore); print "machine = $machine\n" if ($machine); print "platform = $platform\n" if ($platform); print "ultra = $ultra\n" if ($ultra); if ($ultra eq "AXi") { print "found10bit = $found10bit\n"; print "found11bit = $found11bit\n"; } print "motherboard = $motherboard\n" if ($motherboard); print "romver = $romver\n" if ($romver); print "freephys = $freephys\n" if ($freephys); print "perl version: " . &mychomp($]) . "\n"; print "memory line: $gotmemory\n" if ($gotmemory); print "module info: $gotmodule\n" if ($gotmodule); print "dmidecode version: $dmidecode_ver\n" if ($dmidecode_ver); # Fujitsu GP7000F and PrimePower systems print "cpu name info: $gotcpunames\n" if ($gotcpunames); print "cpu board info: $gotcpuboards\n" if ($gotcpuboards); print "module name info: $gotmodulenames\n" if ($gotmodulenames); print "simmsizes = @simmsizes\n" if ($simmsizes[0] > 0); print "simmsizesfound = @simmsizesfound\n" if ($simmsizesfound[0]); } if (($verbose >= 1) && $boardfound_cpu) { if ($format_cpu == 1) { print "CPU Units: Frequency Cache-Size Version\n" if ($model =~ /-Enterprise/ || $ultra eq "e"); } else { print "CPU Units:\n" if (! $ldm_memory); } if ($model ne "SPARCserver-1000" && $model ne "SPARCcenter-2000") { print @boards_cpu if (! $ldm_memory); print "Memory Units:\n" if (! &is_virtualmachine); } } if ($interleave && ! &is_virtualmachine) { print "Memory Interleave Factor: $interleave"; print "-way" if ($interleave =~/^\d+$/); print "\n"; } } sub show_unrecognized { if ($perlhexbug) { print " This is most likely because Perl V$PERL_VERSION"; print " is buggy in hex number\n conversions. Please"; print " upgrade your perl release to Perl V5.002 or later\n"; print " for best results.\n"; } else { print " This is most likely because memconf $version"; print " does not completely\n"; print " recognize this $os $osrel $platform system.\n"; &show_request if ($untested == 0); } } sub show_untested { if ($untested_type eq "OS") { print "WARNING: This is an untested $os $osrel operating"; } elsif ($untested_type eq "OBP") { print "ERROR: This is an untested $os $osrel OBP $romvernum"; } elsif ($untested_type eq "CPU") { print "ERROR: This is an untested CPU type on this $os $osrel"; } else { print "ERROR: This is an untested $os $osrel"; } print " system by memconf $version\n"; print " Please let the author know how it works.\n"; $exitstatus=1; &show_request; } sub show_request { print " Check my website at $URL\n"; print " for a newer version of memconf that may recognize this "; print "system better.\n"; print " Please run 'memconf -D' if this system can E-mail to "; print "the Internet\n or send the output of the following "; print "commands manually to Tom Schmidt\n (tschmidt\@micron.com)"; print " so that memconf $version may be enhanced to\n properly "; print "recognize this system:\n"; print " memconf -d\n"; &show_helpers(" "); if ($untested) { print " If this system is a Sun clone, "; print "please also send any hardware\n documentation "; print "on the memory layout that you may have.\n"; } } sub show_supported { print "memconf: $version $version_date $URL\n" if (! $verbose); print "ERROR: memconf $version is not supported on this $os"; print" $osrel $machine system.\n memconf is supported on:\n"; print " Solaris (SunOS 4.X or 5.X) on SPARC\n"; print " Solaris 10 6/06 or later on x86 with /usr/platform/i86pc/sbin/prtdiag\n"; print " Linux on SPARC with sparc-utils and /dev/openprom\n"; print " Linux on x86 with kernel-utils or pmtools for /usr/sbin/dmidecode\n"; print " most HP-UX systems with Support Tools Manager (cstm)\n"; if ("$os" eq "Linux") { print "NOTICE: This may be corrected by installing the "; print (("$machine" =~ /.86/) ? "kernel-utils or pmtools" : "sparc-utils"); print "\n package if available for this $machine system.\n"; } print " memconf may be able to process Sun Explorer data on this"; print " machine.\n"; print " Check my website at $URL\n"; print " for a newer version of memconf that may recognize this "; print "system better.\n"; exit 1; } sub show_memory { $mem=shift; print "${mem}MB"; print " (", $mem / 1024, "GB)" if ($mem > 1023); print "\n"; } sub show_memory_label { $mem=shift; return if (! defined($mem)); return "$mem" if ($mem =~ /[MG]B/); return $mem / 1024 . "GB" if ($mem >= 1024); return "${mem}MB"; } sub check_model { print &runtime . "in check_model, model=$model\n" if ($DEBUG); &find_helpers; if ($filename) { $platform=$model; $platform="SUNW,Ultra-5_10" if ($diagbanner =~ /Sun Ultra 5\/10/); $platform="SUNW,Sun-Fire" if ($diagbanner =~ /Sun Fire [346]8[01]0\b/ || $diagbanner =~ /Sun Fire E[246]900\b/); $platform="SUNW,Sun-Fire-15000" if ($diagbanner =~ /Sun Fire E2[05]K\b/); $platform=~s/-S$// if ($model =~ /Sun-Blade-[12]500-S\b/); $prtdiag_cmd="/usr/platform/$platform/sbin/prtdiag" if ($prtdiag_cmd =~ /platform/); } $model=~s/.*SUNW,//g; $model=~s/TWS,//g; $model=~s/CYCLE,//g; $model=~s/Tadpole_//g; $model=~s/ASPX,//g; $model=~s/PFU,//g; $model=~s/FJSV,//g; $model=~s/CompuAdd //g; $model=~s/RDI,//g; $model=~s/\s+$//; $ultra="ultra" if ($ultra eq 0 && ($model =~ /Ultra/ || $model =~ /Blade/ || $model =~ /Fire/)); if ($model =~ /Fire[- ]X/i || $model =~ /Fire[- ]B[12]00x/i) { # Sun Fire X??00 Servers, i86pc # Sun B100x or B200x Blade Servers, i86pc $ultra=""; $machine="x86" if ($machine ne "i86pc"); $untested=1; &x86_devname; } $ultra="sparc64" if ($model =~ /SPARC64/); $ultra="e" if ($model =~ /-Enterprise/ && $model !~ /SPARC-Enterprise/); $ultra=1 if ($model =~ /Ultra-1\b/); $ultra=2 if ($model =~ /Ultra-2\b/); $ultra=5 if ($model =~ /Ultra-5\b/); $ultra="5_10" if ($model =~ /Ultra-5_10\b/); $ultra=30 if ($model =~ /Ultra-30\b/); $ultra=60 if ($model =~ /Ultra-60\b/); $ultra=80 if ($model =~ /Ultra-80\b/); $ultra=250 if ($model =~ /Ultra-250\b/); $ultra=450 if ($model =~ /Ultra-4\b/); $ultra="Netra t1" if ($banner =~ /Netra t1\b/); if ($model =~ /Ultra-4FT\b/) { $ultra="Netra ft1800"; $bannermore="(Netra ft1800)"; $modelmore="(Netra ft1800)"; } $ultra="Sun Blade 1000" if ($model =~ /Ultra-100\b/); # prototype $ultra="Sun Blade 1000" if ($model =~ /Sun-Blade-1000\b/); $ultra="Sun Blade 2000" if ($model =~ /Sun-Blade-2000\b/); $ultra="Netra 20" if ($model =~ /Netra-20\b/); $ultra="Netra 20" if ($model =~ /Netra-T4\b/); # E2900/E4900 also use Netra-T12 $ultra="Netra T12" if ($model =~ /Netra-T12\b/ && $ultra !~ /Sun Fire/); $ultra="Sun Blade 100" if ($model =~ /Grover\b/); # prototype $ultra="Sun Blade 100" if ($model =~ /Sun-Blade-100\b/); $ultra="Sun Fire 280R" if ($model =~ /Enterprise-820R\b/); # prototype $ultra="Sun Fire 280R" if ($model =~ /Sun-Fire-280R\b/); $ultra="Sun Fire" if ($model =~ /Serengeti\b/); # prototype $ultra="Sun Fire" if ($model eq "Sun-Fire" || $model =~ /Sun-Fire-[346]8[01]0\b/); $ultra="Sun Fire V480" if ($model =~ /Sun-Fire-480R\b/); $ultra="Sun Fire V490" if ($model =~ /Sun-Fire-V490\b/); $ultra="Sun Fire V880" if ($model =~ /Sun-Fire-880\b/); $ultra="Sun Fire V890" if ($model =~ /Sun-Fire-V890\b/); # Sun Fire 12K, E25K, etc. systems identifies itself as Sun Fire 15K $ultra="Sun Fire 15K" if ($model =~ /Sun-Fire-15000\b/ && $ultra !~ /Sun Fire /); $ultra="Sun Fire 12K" if ($model =~ /Sun-Fire-12000\b/); $ultra="Serverblade1" if ($model =~ /Serverblade1\b/); # UltraSPARC-IIIi (Jalapeno) systems $ultra="Enchilada" if ($model =~ /Enchilada\b/); # prototype $ultra="Enchilada" if ($model =~ /Sun-Fire-V210\b/); $ultra="Enchilada" if ($model =~ /Netra-210\b/); $ultra="Enchilada" if ($model =~ /Sun-Fire-V240\b/); $ultra="Enchilada" if ($model =~ /Netra-240\b/); $ultra="Sun Fire V440" if ($model =~ /Sun-Fire-V440\b/); $ultra="Netra 440" if ($model =~ /Netra-440\b/); $ultra="Sun Fire V250" if ($model =~ /Sun-Fire-V250\b/); $ultra="Sun Blade 1500" if ($model =~ /Sun-Blade-1500\b/); $ultra="Sun Blade 2500" if ($model =~ /Sun-Blade-2500\b/); if ($model =~ /Sun-Blade-[12]500-S\b/) { $model=~s/-S$//; $modelmore="(Silver)" if ($banner !~ /\(Silver\)/); } $ultra="Sun Ultra 45 Workstation" if ($model =~ /Sun-Ultra-45-Workstation\b/ || $model eq "A70"); $ultra="Sun Ultra 25 Workstation" if ($model =~ /Sun-Ultra-25-Workstation\b/ || $model eq "Ultra-25"); $ultra="Sun Ultra 45 or Ultra 25 Workstation" if ($model =~ /Sun-Ultra-45-or-Ultra-25-Workstation\b/); $ultra="Sun Fire V125" if ($model =~ /Sun-Fire-V125\b/); $ultra="Seattle" if ($model =~ /Sun-Fire-V215\b/); $ultra="Seattle" if ($model =~ /Sun-Fire-V245\b/); $ultra="Boston" if ($model =~ /Sun-Fire-V445\b/); # UltraSPARC-IV (Jaguar) or UltraSPARC-IV+ (Panther) systems $ultra="Sun Fire E2900" if ($model =~ /Sun-Fire-E2900\b/); $ultra="Sun Fire E4900" if ($model =~ /Sun-Fire-E4900\b/); $ultra="Sun Fire E6900" if ($model =~ /Sun-Fire-E6900\b/); $ultra="Sun Fire E20K" if ($model =~ /Sun-Fire-E20K\b/ || $model =~ /Sun-Fire-Enterprise-20K\b/); $ultra="Sun Fire E25K" if ($model =~ /Sun-Fire-E25K\b/ || $model =~ /Sun-Fire-Enterprise-25K\b/); # SPARC64-VI or SPARC64-VII systems $ultra=$banner if ($banner =~ /SPARC Enterprise M[34589]000 Server/); # UltraSPARC-T1 (Niagara) systems if ($model =~ /Sun-Fire-T200\b/) { $ultra="T2000"; $modelmore="(Sun Fire T2000)"; } $ultra="T2000" if ($model =~ /Sun-Fire-T2000\b/ || $model =~ /SPARC-Enterprise-T2000/ || $banner =~ /SPARC Enterprise T2000/ || $model =~ /Netra-T2000\b/ || $banner =~ /Netra T2000\b/); $ultra="T1000" if ($model =~ /Sun-Fire-T1000\b/ || $model =~ /SPARC-Enterprise-T1000/ || $banner =~ /SPARC Enterprise T1000/); $ultra="T6300" if ($model =~ /Sun-Blade-T6300\b/ || $banner =~ /\bT6300\b/); # UltraSPARC-T2 (Niagara-II) systems $ultra="T5120" if ($model =~ /SPARC-Enterprise-T5120/ || $banner =~ /\bT5120\b/); $ultra="T5220" if ($model =~ /SPARC-Enterprise-T5220/ || $model =~ /Netra-T5220/ || $banner =~ /\bT5220\b/); $ultra="T6320" if ($model =~ /Sun-Blade-T6320\b/ || $banner =~ /\bT6320\b/); # UltraSPARC-T2+ (Victoria Falls) systems $ultra="T5140" if ($model =~ /SPARC-Enterprise-T5140/ || $banner =~ /\bT5140\b/); $ultra="T5240" if ($model =~ /SPARC-Enterprise-T5240/ || $banner =~ /\bT5240\b/ || $model =~ /SPARC-USBRDT-5240/); $ultra="T5440" if ($model =~ /SPARC-Enterprise-T5440/ || $model =~ /Netra-T5440/ || $banner =~ /\bT5440\b/ || $model =~ /SPARC-USBRDT-5440/); $ultra="T6340" if ($model =~ /Sun-Blade-T6340\b/ || $banner =~ /\bT6340\b/); # Older SPARCstations $modelmore="SPARCstation SLC" if ($model eq "Sun 4/20"); $modelmore="SPARCstation ELC" if ($model eq "Sun 4/25"); $modelmore="SPARCstation IPC" if ($model eq "Sun 4/40"); $modelmore="SPARCstation IPX" if ($model eq "Sun 4/50"); $modelmore="SPARCstation 1" if ($model eq "Sun 4/60"); $modelmore="SPARCstation 1+" if ($model eq "Sun 4/65"); $modelmore="SPARCstation 2" if ($model eq "Sun 4/75"); $modelmore="(SPARCsystem 600)" if ($model =~ /Sun.4.600/ && $banner !~ /SPARCsystem/); $modelmore="Sun 4/30" if ($model =~ /SPARCstation-LX/); $modelmore="Sun 4/15" if ($model =~ /SPARCclassic/); $modelmore="Sun 4/10" if ($model =~ /SPARCclassic-X/); $modelmore="(SPARCstation 10SX)" if ($model =~ /Premier-24/); if ($model eq "S240") { $manufacturer="Sun Microsystems, Inc."; $modelmore="SPARCstation Voyager"; } # x86 &checkX86; if ($isX86) { $modelmore="(Solaris x86 machine)"; $cputype="x86"; $machine=$model; $ultra=0; $cpucntfrom="prtconf" if ($cpucntfrom eq ""); return if ($model_checked); &check_prtdiag if ($use_psrinfo_data == 2); &check_psrinfo; &cpubanner; $cpucnt{"$cputype $cpufreq"}++; } # Clones if ($banner =~ /\bMP-250[(\b]/) { $ultra="axus250"; $bannermore="Ultra-250"; $modelmore="(Ultra-250)"; } $manufacturer="AXUS" if ($ultra =~ /axus/); $manufacturer="Force Computers" if ($model =~ /SPARC CP/); if ($model eq "S3GX") { $bannermore="(SPARCbook 3GX)"; $modelmore="(SPARCbook 3GX)"; } if ($model eq "S3XP") { $bannermore="(SPARCbook 3XP)"; $modelmore="(SPARCbook 3XP)"; } $manufacturer="Sun Microsystems, Inc." if ($banner !~ /Axil/ && ( $model =~ /^SPARCstation/ || $model =~ /^SPARCsystem/ || $model =~ /^SPARCclassic/ || $model =~ /^SPARCserver/ || $model =~ /^SPARCcenter/ || $model =~ /Enterprise/ || $model =~ /Premier 24/ || $model =~ /Netra/ || $model =~ /Sun.Fire/ || $model =~ /Sun.Blade/ || $model =~ /Serverblade1/)); if ($model =~ /Auspex/) { $manufacturer="Auspex"; $model=~s/Auspex //g; $bannermore="Netserver"; $modelmore="Netserver"; } $manufacturer="Fujitsu" if ($banner =~ /Fujitsu/); $manufacturer="Fujitsu Siemens" if ($banner =~ /Fujitsu Siemens/); $manufacturer="Fujitsu Siemens Computers" if ($banner =~ /Fujitsu Siemens Computers/); if ($model =~ /S-4/ || $model eq "GP" || $model =~ /^GPU[SZU]/) { $manufacturer="Fujitsu" if ($manufacturer !~ /^Fujitsu/); $model=~s,_,/,g; $untested=1 if ($model =~ /^GPUSC-L/); $untested=1 if ($model =~ /^GPUU/); } if ($model =~ /PowerLite-/) { $bannermore=$model; $bannermore=~s/PowerLite-//g; } $model_checked=1; } sub check_banner { print &runtime . "in check_banner, banner=$banner, ultra=$ultra\n" if ($DEBUG); $ultra="ultra" if ($ultra eq 0 && ($banner =~ /Ultra/ || $banner =~ /Blade/ || $banner =~ /Fire/)); $ultra="sparc64" if ($banner =~ /SPARC64/); $ultra=5 if ($banner =~ /Ultra 5\b/); $ultra="5_10" if ($banner =~ /Ultra 5\/10\b/); $ultra=10 if ($banner =~ /Ultra 10\b/); $ultra="220R" if ($banner =~ /Enterprise 220R\b/); $ultra=80 if ($banner =~ /Ultra 80\b/); # E410 is prototype name of E420R, but may still be in the # banner as "Sun Ultra 80/Enterprise 410 UPA/PCI" $ultra="420R" if ($banner =~ /Enterprise 410\b/); $ultra="420R" if ($banner =~ /Enterprise 420R\b/); $ultra="Netra t140x" if ($banner =~ /Netra t 1400\/1405\b/); $ultra="CP1400" if ($banner =~ /Ultra CP 1400\b/); $ultra="CP1500" if ($banner =~ /Ultra CP 1500\b/); $ultra="CP2000" if ($banner =~ /\bCP2000\b/); $ultra="CP2040" if ($banner =~ /\bCP2000 model 40\b/); $ultra="CP2060" if ($banner =~ /\bCP2000 model 60\b/); $ultra="CP2080" if ($banner =~ /\bCP2000 model 80\b/); $ultra="CP2140" if ($banner =~ /\bCP2000 model 140\b/); $ultra="CP2160" if ($banner =~ /\bCP2000 model 160\b/); $ultra="Sun Blade 1000" if ($banner =~ /Sun Excalibur\b/); # prototype $ultra="Sun Blade 2000" if ($banner =~ /Sun Blade 2000\b/); $ultra="Netra ct400" if ($banner =~ /Netra ct400\b/); $ultra="Netra ct410" if ($banner =~ /Netra ct410\b/); $ultra="Netra ct800" if ($banner =~ /Netra ct800\b/); $ultra="Netra ct810" if ($banner =~ /Netra ct810\b/); $ultra="Sun Blade 150" if ($banner =~ /Sun Blade 150\b/); # Sun Fire 12K, E25K, etc. systems identifies itself as Sun Fire 15K $ultra="Sun Fire 12K" if ($banner =~ /Sun Fire 12000\b/ || $banner =~ /Sun Fire 12K\b/); if ($banner =~ /Ultra 4FT\b/) { $ultra="Netra ft1800"; $bannermore="(Netra ft1800)"; $modelmore="(Netra ft1800)"; } # UltraSPARC-IIIi (Jalapeno) systems $ultra="Sun Ultra 45 Workstation" if ($banner =~ /Sun Ultra 45 Workstation\b/); $ultra="Sun Ultra 25 Workstation" if ($banner =~ /Sun Ultra 25 Workstation\b/); # UltraSPARC-IV (Jaguar) or UltraSPARC-IV+ (Panther) systems $ultra="Sun Fire E2900" if ($banner =~ /Sun Fire E2900\b/); $ultra="Sun Fire E4900" if ($banner =~ /Sun Fire E4900\b/); $ultra="Sun Fire E6900" if ($banner =~ /Sun Fire E6900\b/); $ultra="Sun Fire E20K" if ($banner =~ /Sun Fire E20K\b/); $ultra="Sun Fire E25K" if ($banner =~ /Sun Fire E25K\b/); # SPARC64-VI or SPARC64-VII systems $ultra=$banner if ($banner =~ /SPARC Enterprise M[34589]000 Server/); # Clones if ($banner =~ /\bMP-250[(\b]/) { $ultra="axus250"; $bannermore="Ultra-250"; $modelmore="(Ultra-250)"; } $manufacturer="AXUS" if ($ultra =~ /\baxus\b/); $manufacturer="Rave" if ($banner =~ /Axil/); $manufacturer="Tadpole/Cycle" if ($banner =~ /Cycle/ || $banner =~ /\bUP-20\b/ || $banner =~ /\b520IIi\b/); $manufacturer="Tadpole" if ($banner =~ /Tadpole/ || $banner =~ /\bRDI\b/ || $banner =~ /\bVoyagerIIi\b/ || $banner =~ /\bSPARCLE\b/); $manufacturer="Tatung" if ($banner =~ /COMPstation/); $manufacturer="Twinhead" if ($banner =~ /TWINstation/); $manufacturer="Fujitsu" if ($banner =~ /Fujitsu/); $manufacturer="Fujitsu Siemens" if ($banner =~ /Fujitsu Siemens/); $manufacturer="Fujitsu Siemens Computers" if ($banner =~ /Fujitsu Siemens Computers/); } sub check_for_prtdiag { return if ("$prtdiag_exec" eq "" && $filename eq ""); return if ($have_prtdiag_data); &find_helpers; # Check for LDOMs if ($ldm_cmd ne "" && $have_ldm_data == 0) { # Warn that ldm and prtdiag may take a while to run &please_wait; @ldm=&run("$ldm_cmd list-devices -a -p"); $have_ldm_data=1; foreach $line (@ldm) { $line=&dos2unix($line); $line=&mychomp($line); &check_LDOM; } } @prtdiag=&run("$prtdiag_exec") if ($filename eq ""); $have_prtdiag_data=1; foreach $line (@prtdiag) { $line=&dos2unix($line); # Some Solaris prtdiag outputs have malformed header, so # handle them also. if ($line =~ /^System Configuration: +/ || $line =~ /.BIOS Configuration: / || $line =~ /Sun Microsystems .*Fire *X/i || $line =~ /Sun Microsystems .*Blade *X/i || $line =~ /Sun Microsystems .*Memory size: / || ($line =~ /Sun Microsystems .*Ultra / && $machine eq i86pc)) { $line=&mychomp($line); $tmp=$line; $line=~s/System Configuration: +//g; $line=~s/BIOS Configuration: .*//g; if ($line =~ /^Sun Microsystems/i) { $manufacturer="Sun Microsystems, Inc."; } elsif ($line =~ /Inc\./) { $manufacturer=$line; $manufacturer=~s/^(.* Inc\.).*/$1/; if ($tmp !~ /BIOS Configuration: / && $model eq "" && $machine eq "i86pc") { $diagbanner=$line; $diagbanner=~s/^.* Inc\. *(.*)/$1/; } } elsif ($line =~ /Corporation/) { $manufacturer=$line; $manufacturer=~s/^(.* Corporation).*/$1/; if ($tmp !~ /BIOS Configuration: / && $model eq "" && $machine eq "i86pc") { $diagbanner=$line; $diagbanner=~s/^.* Corporation *(.*)/$1/; } } else { $manufacturer=$line; $manufacturer=~s/^(\w+)[ \/].*/$1/; } if ($line =~ /^Sun Microsystems +sun\w+ +/) { $diagbanner=$line; $diagbanner=~s/Sun Microsystems +sun\w+ +//g; $diagbanner=~s/Memory size: .*$//g; } elsif ($line =~ /^Sun Microsystems *Sun +/i) { $diagbanner=$line; $diagbanner=~s/Sun Microsystems *Sun/Sun/ig; $diagbanner=~s/Memory size: .*$//g; $diagbanner=~s/ BLADE / Blade /g; $diagbanner=~s/ FIRE / Fire /g; $diagbanner=~s/ SERVER / Server /g; } elsif ($line =~ /^Sun Microsystems, Inc. *Sun +/i) { $diagbanner=$line; $diagbanner=~s/Sun Microsystems, Inc. *Sun/Sun/ig; $diagbanner=~s/Memory size: .*$//g; $diagbanner=~s/ BLADE / Blade /g; $diagbanner=~s/ FIRE / Fire /g; $diagbanner=~s/ SERVER / Server /g; } elsif ($line =~ /^Sun Microsystems.*Ultra/) { $diagbanner=$line; $diagbanner=~s/Sun Microsystems.*Ultra/Ultra/g; $diagbanner=~s/Memory size: .*$//g; } $diagbanner=~s/\s+$//; } $prtdiag_failed=1 if ($line =~ /Prtdiag Failed/i); # prtdiag only works on the global zone (container), so find out # if we are in a Solaris zone. solaris8 brand container shows # kernel version of "Generic_Virtual" $prtdiag_failed=2 if ($line =~ /prtdiag can only be run in the global /i || $kernver eq "Generic_Virtual"); } if ($psrinfo_cmd ne "" && $have_psrinfo_data == 0) { @psrinfo=&run("$psrinfo_cmd -v"); $tmp=&mychomp(`$psrinfo_cmd -p 2>/dev/null`); # physical CPUs if ($tmp ne "") { push(@psrinfo, "#psrinfo -p\n$tmp\n"); $tmp=&mychomp(`$psrinfo_cmd -p -v 2>/dev/null`); push(@psrinfo, "#psrinfo -p -v\n$tmp\n"); } $have_psrinfo_data=1; } if ($ipmitool_cmd ne "" && $have_ipmitool_data == 0) { @ipmitool=&run("$ipmitool_cmd fru"); $have_ipmitool_data=1; } if ($smbios_cmd ne "" && $have_smbios_data == 0) { @smbios=&run("$smbios_cmd"); $have_smbios_data=1; } if (($filename eq "") && ($verbose == 3)) { # Only run the following commands if E-mailing maintainer since # this data is used by memconf only for some systems if ($prtfru_cmd ne "" && $have_prtfru_data == 0) { @prtfru=&run("$prtfru_cmd -x"); $have_prtfru_data=1; } if ($prtpicl_cmd ne "" && $have_prtpicl_data == 0) { @prtpicl=&run("$prtpicl_cmd -v"); $have_prtpicl_data=1; } if ($cfgadm_cmd ne "" && $have_cfgadm_data == 0) { @cfgadm=&run("$cfgadm_cmd -al"); $have_cfgadm_data=1; } if ($ldm_cmd ne "" && $have_ldm_data == 0) { @ldm=&run("$ldm_cmd list-devices -a -p"); $have_ldm_data=1; } } } sub check_prtdiag { return if ($prtdiag_checked); print &runtime . "in check_prtdiag\n" if ($DEBUG); $prtdiag_checked=1; return if ("$prtdiag_exec" eq "" && $filename eq ""); &check_for_prtdiag; $flag_cpu=0; $flag_mem=0; foreach $line (@prtdiag) { $line=&dos2unix($line); if ($line =~ /====/ || $line =~ /\/ \(picl,/) { $flag_cpu=0; # End of CPU section $flag_mem=0; # End of memory section } if ($line =~ /Memory Units: Group Size/) { # Start of CPU and memory section on SS1000/SC2000 $flag_cpu=1; $flag_mem=1; } $line="Memory $line" if ($line =~ /^Segment Table:/); if (($flag_mem >= 1) && ($line !~ /^\s*\n$/)) { $boardfound_mem=1; $boardfound_mem=0 if ($line =~ /Cannot find/); @linearr=split(' ', $line); if ($linearr[0] =~ /^0x/ && $ultra =~ /Sun Blade 1[05]0\b/ && ($linearr[$#linearr] eq "chassis/system-board" || $linearr[$#linearr] eq "-")) { # Sometimes socket is unlabeled on prtdiag # output on Sun Blade 100/150 $socket=$socketstr[0] if ($linearr[0] =~ /^0x0/); if ($simmrangex eq "00000400") { $socket=$socketstr[1] if ($linearr[0] =~ /^0x4/); $socket=$socketstr[2] if ($linearr[0] =~ /^0x8/); $socket=$socketstr[3] if ($linearr[0] =~ /^0xc/); } else { $socket=$socketstr[1] if ($linearr[0] =~ /^0x2/); $socket=$socketstr[2] if ($linearr[0] =~ /^0x4/); $socket=$socketstr[3] if ($linearr[0] =~ /^0x6/); } if ($linearr[$#linearr] eq "-") { $line=~s/-$/$socket/g; $linearr[$#linearr]=$socket; } else { $line=~s/-board/-board\/$socket/g; $linearr[$#linearr]="chassis/system-board/$socket"; } } push(@boards_mem, "$line"); $flag_rewrite_prtdiag_mem=1 if ($line =~ /^MB\/CMP[0-3]\/BR[0-3]\/CH[01]\/D[01]/); if ($#linearr >= 2) { if ($linearr[2] =~ /\bU\d\d\d\d\b/) { # Sun Ultra-250 format $sockets_used .= " $linearr[2]"; } elsif ($linearr[2] =~ /\b\d\d\d\d\b/) { # Sun Ultra-4 format $sockets_used .= " U$linearr[2]"; } } if ($#linearr >= 3) { if ($linearr[3] ne "BankIDs" && $linearr[3] ne "GroupID" && $line !~ /^0x\d[\d ]+\d.+ +\d +-$/) { if ($linearr[1] =~ /\b\d+MB\b/) { # Sun Blade 100/1000 format $simmsize=$linearr[1]; $simmsize=~s/MB//g; push(@simmsizesfound, "$simmsize"); } elsif ($linearr[1] =~ /\b\d+GB\b/) { # Sun Blade 1000 format $simmsize=$linearr[1]; $simmsize=~s/GB//g; $simmsize *= 1024; push(@simmsizesfound, "$simmsize"); } } if ($model eq "Ultra-250" || $ultra eq 250 || $model eq "Ultra-4" || $ultra eq 450 || $model eq "Ultra-4FT" || $ultra eq "Netra ft1800") { if ($linearr[3] =~ /\b\d+\b/) { $simmsize=$linearr[3]; push(@simmsizesfound, "$simmsize"); } } } if ($linearr[$#linearr] =~ /\bDIMM\d/ || $linearr[$#linearr] =~ /\b[UJ]\d\d\d\d[\b,]/ || ($linearr[$#linearr - 1] eq "Label" && $linearr[$#linearr] eq "-")) { $sockets_used .= " $linearr[$#linearr]"; # May be multiple sockets separated by "," $sockets_used=~s/,/ /g; } elsif ($#linearr >= 2) { if ($linearr[2] =~ /MB\/P[01]\/B[01]\/D[01]/ || $linearr[2] =~ /C[0-3]\/P[01]\/B[01]\/D[01]/) { $sockets_used .= " $linearr[2]"; # May be multiple sockets separated by "," $sockets_used=~s/,/ /g; } } if ($linearr[0] !~ /^0x/ && ($linearr[$#linearr] eq "-" || $linearr[$#linearr] =~ /^-,/)) { # unlabeled sockets $sockets_used .= " $linearr[$#linearr]"; # May be multiple sockets separated by "," $sockets_used=~s/,/ /g; } if ($linearr[$#linearr] =~ /\/J\d\d\d\d$/) { $linearr[$#linearr]=~s/.+\///g; $sockets_used .= " $linearr[$#linearr]"; } if ($ultra eq "Sun Fire 280R") { if ($line =~ / CA +0 +[0-3] .+4-way/) { $sockets_used="J0100 J0202 J0304 J0406 J0101 J0203 J0305 J0407"; } elsif ($line =~ / CA +0 +[02] /) { $sockets_used .= " J0100 J0202 J0304 J0406" if ($sockets_used !~ / J0100 /); } elsif ($line =~ / CA +[01] +[13] /) { $sockets_used .= " J0101 J0203 J0305 J0407" if ($sockets_used !~ / J0101 /); } } # Memory on Sun Fire systems if ($line =~ /^\/N\d\/SB\d\/P\d\/B\d\b/) { $boardslot_mem=substr($line,0,13); push(@boardslot_mems, "$boardslot_mem"); $boardslot_mems .= $boardslot_mem . " "; } elsif ($line =~ /^\/N\d\/SB\d\d\/P\d\/B\d\b/) { $boardslot_mem=substr($line,0,14); push(@boardslot_mems, "$boardslot_mem"); $boardslot_mems .= $boardslot_mem . " "; } elsif ($line =~ /^\/SB\d\d\/P\d\/B\d\b/) { $boardslot_mem=substr($line,0,11); push(@boardslot_mems, "$boardslot_mem"); $boardslot_mems .= $boardslot_mem . " "; } elsif ($line =~ /\bSB\d\/P\d\/B\d\/D\d\b,/) { $boardslot_mem=substr($line,24,51); push(@boardslot_mems, "$boardslot_mem"); $boardslot_mems .= $boardslot_mem . " "; } elsif ($line =~ /\bSB\d\/P\d\/B\d\/D\d\b/) { $boardslot_mem=substr($line,24,12); push(@boardslot_mems, "$boardslot_mem"); $boardslot_mems .= $boardslot_mem . " "; } if (($ultra =~ /Sun Fire/) && ($#linearr >= 5)) { if ($linearr[5] =~ /\d+MB/) { $simmsize=$linearr[5]; $simmsize=~s/MB//g; push(@simmsizesfound, "$simmsize"); } } if ($ultra =~ /Sun Fire V[48][89]0\b/) { # Fire V480, V490, V880, V890 $bankname="groups"; if ($banks_used ne "A0 A1 B0 B1") { $banks_used="A0 B0" if ($line =~ /^ ?[ABCD] .+ 4-way /); $banks_used="A0 A1 B0 B1" if ($line =~ /^ ?[ABCD] .+ 8-way /); } } if ($linearr[$#linearr] =~ /MB\/CMP0\/CH[0-3]\/R[01]\/D[01]/) { # UltraSPARC-T1 systems if ($#linearr >= 5) { if ($linearr[5] eq "MB") { $simmsize=$linearr[4]; $simmsize=~s/MB//g; $simmsize /= 2; push(@simmsizesfound, "$simmsize"); } elsif ($linearr[5] eq "GB") { $simmsize=$linearr[4]; $simmsize=~s/GB//g; $simmsize *= 512; push(@simmsizesfound, "$simmsize"); } } $sockets_used .= " $linearr[$#linearr]"; } if ($linearr[$#linearr] =~ /MB\/CMP[0-3]\/BR[0-3]\/CH[01]\/D[01]/ || $linearr[$#linearr] =~ /MB\/CMP[01]\/MR[01]\/BR[01]\/CH[01]\/D[23]/) { # UltraSPARC-T2 systems: T5120, T5220, T6320 # UltraSPARC-T2+ systems: T5140, T5240 $sockets_used .= " $linearr[$#linearr]"; } if ($linearr[$#linearr] =~ /MB\/CPU[01]\/CMP[01]\/BR[01]\/CH[01]\/D[01]/ || $linearr[$#linearr] =~ /MB\/MEM[01]\/CMP[01]\/BR[01]\/CH[01]\/D[01]/) { $sockets_used .= " $linearr[$#linearr]"; } } if ($line =~ /CPU Units:/) { $flag_cpu=1; # Start of CPU section $flag_mem=0; # End of memory section $format_cpu=1; } if ($line =~ /==== CPU/ || $line =~ /==== Processor Sockets / || $line =~ /==== Virtual CPU/) { $flag_cpu=1; # Start of CPU section $flag_mem=0; # End of memory section $format_cpu=2; } if ($line =~ /Memory Units:/ || $line =~ /==== Memory / || $line =~ /==== Physical Memory / || $line =~ /Used Memory:/) { $flag_cpu=0; # End of CPU section $flag_mem=1; # Start of memory section } if ($line =~ /CPU Units:/ && $line =~ /Memory Units:/) { $flag_cpu=1; # Start of CPU section $flag_mem=1; # Start of memory section } if (($flag_cpu >= 1) && ($line !~ /^\s*\n$/)) { if ($model eq "Ultra-5_10" || $ultra eq "5_10" || $ultra eq 5 || $ultra eq 10) { $newline=$line; $newline=~s/^ //g if ($line !~ /Run Ecache CPU CPU/); push(@boards_cpu, "$newline"); } else { push(@boards_cpu, "$line"); } $boardfound_cpu=1; &checkX86; if (($flag_cpu == 2) && $isX86) { # Solaris x86 CPU type found in prtdiag $cputype2=&mychomp($line); $cputype2=~s/\s\s+.*//; $cputype2=~s/(^.* Processor \d+) .*/$1/; $cputype2=~s/ CPU / /; $cputype2=~s/\s+/ /g; $cputype2=~s/^\s+//; $cputype2=~s/\s+$//; &x86multicorecnt($cputype2); # rewrite %cpucnt $cputype2 $cfreq=0; while (($cf,$cnt)=each(%cpucnt)) { $cf=~/^(.*) (\d+)$/; if (! defined($2)) { delete $cpucnt{"$cf"}; } else { $cfreq=$2; delete $cpucnt{"$1 $2"}; } } $ndcpu++; if ($cpucntfrom ne "psrinfo") { $cpucntfrom="prtdiag"; $cpucntflag=1; $ncpu++ if ($filename); } $cputype=$cputype2 if ($cputype2 ne ""); $cputype=$cputype_prtconf if ($cputype eq "AMD" && $cputype_prtconf ne ""); $cputype=$cputype_psrinfo if ($cputype_psrinfo ne ""); $cpucnt{"$cputype $cfreq"}=$ncpu; } # CPUs on Sun Fire systems if ($line =~ /^\/N\d\/SB\d\/P\d\b/) { $boardslot_cpu=substr($line,0,10); push(@boardslot_cpus, "$boardslot_cpu"); $boardslot_cpus .= $boardslot_cpu . " "; } elsif ($line =~ /^\/N\d\/SB\d\d\/P\d\b/) { $boardslot_cpu=substr($line,0,11); push(@boardslot_cpus, "$boardslot_cpu"); $boardslot_cpus .= $boardslot_cpu . " "; } elsif ($line =~ /^\/SB\d\d\/P\d\b/) { $boardslot_cpu=substr($line,0,8); push(@boardslot_cpus, "$boardslot_cpu"); $boardslot_cpus .= $boardslot_cpu . " "; &prtdiag_threadcount(1); } elsif ($line =~ /^ SB\d\/P\d\b/) { $boardslot_cpu=substr($line,4,6); push(@boardslot_cpus, "$boardslot_cpu"); $boardslot_cpus .= $boardslot_cpu . " "; # prtdiag does not show cpuid or cputype } elsif ($line =~ / SB\d\/P\d$/) { $boardslot_cpu=substr($line,length($line)-7,6); push(@boardslot_cpus, "$boardslot_cpu"); $boardslot_cpus .= $boardslot_cpu . " "; &prtdiag_threadcount(0); } } if ($flag_cpu && $line =~ /------/) { # Next lines are the CPUs on each system board $flag_cpu=2; } if ($flag_mem && $line =~ /------/) { # Next lines are the memory on each system board $flag_mem=2; } if ($filename && $use_psrinfo_data) { # May have "psrinfo -v" output in regression test file if ($line =~ /.+ operates at \d+ MHz/) { $cpufreq=&mychomp($line); $cpufreq=~s/.+ operates at //; $cpufreq=~s/ MHz.+//; $cpucntfrom="psrinfo" if ($cpucntfrom ne "ldm"); $cpucntflag="0"; # reset flag $psrcpucnt++; # rewrite %cpucnt $cputype with frequency while (($cf,$cnt)=each(%cpucnt)) { $cf=~/^(.*) (\d+)$/; $tmp=$1; if (defined($tmp)) { delete $cpucnt{"$1 $2"} if ($2 == 0); } } if (defined($tmp)) { $cpucnt{"$tmp $cpufreq"}=$psrcpucnt; $ncpu=$psrcpucnt; } } # May have "psrinfo -p -v" output in regression test # file that has more detailed information about the # CPUs. Assumes all CPUs are same. $foundpsrinfocpu=1 if ($line =~ /.+ \d+ virtual processor/); if ($foundpsrinfocpu && (($line =~ /.+Hz$/ && $line !~ /Speed: / && $line !~ / PCI/) || $line =~ /\bAMD .* Processor /) && $line !~ / x86 /) { $cputype=&mychomp($line); $cputype=~s/ CPU / /; $cputype=~s/\s+/ /g; $cputype=~s/^\s+//; $cputype=~s/\s+$//; $cputype=~s/^Version:\s+//; # rewrite %cpucnt $cputype with cputype while (($cf,$cnt)=each(%cpucnt)) { $cf=~/^(.*) (\d+)$/; $cpufreq=$2; delete $cpucnt{"$1 $2"}; } $cpucnt{"$cputype $cpufreq"}=$psrcpucnt; } } } # Rewrite prtdiag output to include DIMM information on SB1X00, SB2X00, # Enchilada, Chalupa (Sun Fire V440), Netra T12, Seattle and Boston # systems @new_boards_mem=""; $grpcnt=0; $intcnt=0; if ($ultra =~ /Sun Blade [12][05]00\b/ || $ultra eq "Sun Fire 280R" || $ultra eq "Netra 20" || $ultra eq "Sun Fire V250" || $ultra eq "Netra T12") { foreach $line (@boards_mem) { $line=&mychomp($line); $newline=$line; if (($line eq "-----------------------------------------------------------") && ($prtdiag_banktable_has_dimms == 0)) { $newline=$line . "------"; } elsif ($line eq "--------------------------------------------------") { $newline=$line . "-----------"; } elsif (($line =~ /ControllerID GroupID Size/) && ($prtdiag_banktable_has_dimms == 0)) { $newline="ID ControllerID GroupID Size DIMMs Interleave Way"; } elsif ($line =~ /ControllerID GroupID Labels Status/) { $newline=$line . " DIMMs"; } elsif ($line =~ /ControllerID GroupID Labels/) { $newline=$line . " DIMMs"; } elsif ($line =~ /ControllerID GroupID Size Labels/) { $newline=$line . " DIMMs"; } elsif ($line =~ /^\d[\d ] \d[\d ] \d /) { &read_prtdiag_bank_table; } elsif ($line =~ /^0x\d[\d ]+\d.+ +\d +-$/ || $line =~ / GroupID \d[\d ]$/) { &read_prtdiag_memory_segment_table; } elsif ($line =~ /J0100,/) { $sz=$grpsize{0,0}; if (defined($sz)) { $sz=~s/ //g; $newline=$line . " 4x$sz"; } } elsif ($line =~ /J0101,/) { $sz=$grpsize{0,1}; if (defined($sz)) { $sz=~s/ //g; $newline=$line . " 4x$sz"; } } elsif ($line =~ /\/J0[1-4]0[0246]\b/) { $sz=$grpsize{0,0}; if (defined($sz)) { $sz=~s/ //g; $newline=$line . " $sz"; } } elsif ($line =~ /\/J0[1-4]0[1357]\b/) { $sz=$grpsize{0,1}; if (defined($sz)) { $sz=~s/ //g; $newline=$line . " $sz"; } } elsif ($line =~ /\bSB\d\/P\d\/B\d\/D\d,/) { $tmp=substr($line,0,2); $tmp=~s/ //g; $sz=$grpsize{$tmp,substr($line,15,1)}; $sz=$grpsize{0,substr($line,15,1)} if (! defined($sz)); if (defined($sz)) { $sz=~s/ //g; $newline=$line . " 4x$sz"; } } elsif ($line =~ /\bSB\d\/P\d\/B\d\/D\d\b/) { $tmp=substr($line,0,2); $tmp=~s/ //g; $sz=$grpsize{$tmp,substr($line,15,1)}; $sz=$grpsize{0,substr($line,15,1)} if (! defined($sz)); if (defined($sz)) { $sz=~s/ //g; $newline=$line . " $sz"; } } elsif ($line =~ / MB\/DIMM\d,/) { $sz=$grpsize{0,substr($line,15,1)}; $newline=$line . " 2x$sz" if (defined($sz)); } elsif ($line =~ /DIMM\d,DIMM\d/) { @linearr=split(' ', $line); if ($linearr[2] =~ /\d+[MG]B/) { $sz=$linearr[2]; if ($sz =~ /\dGB/) { $sz=~s/GB//g; $sz *= 512; } else { $sz=~s/MB//g; $sz /= 2; } $sz=&show_memory_label($sz); } $newline=$line . " 2x$sz" if (defined($sz)); if ($line =~ /DIMM[13],DIMM[24]/ && $ultra eq "Sun Blade 1500") { # prototype has sockets DIMM1-DIMM4 @socketstr=("DIMM1".."DIMM4"); } if ($line =~ /DIMM[1357],DIMM[2468]/ && $ultra eq "Sun Blade 2500") { # prototype has sockets DIMM1-DIMM8 if ($line =~ /DIMM[13],DIMM[24]/) { @socketstr=("DIMM1".."DIMM4"); } elsif ($line =~ /DIMM[57],DIMM[68]/) { push(@socketstr, "DIMM5".."DIMM8"); } } } push(@new_boards_mem, "$newline\n") if ($newline ne ""); } @boards_mem=@new_boards_mem; } elsif ($ultra eq "Enchilada" || $ultra eq "Sun Fire V440" || $ultra eq "Netra 440" || $ultra =~ /Sun Ultra [24]5 .*Workstation/ || $ultra eq "Sun Fire V125" || $ultra eq "Seattle" || $ultra eq "Boston" || $banner =~ /Sun Fire E[24]900\b/ || $diagbanner =~ /Sun Fire E[24]900/) { foreach $line (@boards_mem) { $line=&mychomp($line); $newline=$line; if (($line eq "-----------------------------------------------------------") && ($prtdiag_banktable_has_dimms == 0)) { $newline=$line . "------"; } elsif ($line eq "--------------------------------------------------") { $newline=$line . "-----------"; } elsif (($line =~ /ControllerID GroupID Size/) && ($prtdiag_banktable_has_dimms == 0)) { $newline="ID ControllerID GroupID Size DIMMs Interleave Way"; } elsif ($line =~ /ControllerID GroupID Labels Status/) { $newline=$line . " DIMMs"; } elsif ($line =~ /ControllerID GroupID Labels/) { $newline=$line . " DIMMs"; } elsif ($line =~ /^\d[\d ] \d[\d ] \d /) { &read_prtdiag_bank_table; } elsif ($line =~ /^0x\d[\d ]+\d.+ +\d +-$/ || $line =~ / GroupID \d[\d ]$/) { &read_prtdiag_memory_segment_table; } elsif ($line =~ / MB\/P[01]\/B[01]\/D[01],/ || $line =~ /C[0-3]\/P[01]\/B[01]\/D[01],/) { $sz=$grpsize{substr($line,0,1),substr($line,15,1)}; $sz=$grpsize{0,substr($line,15,1)} if (! defined($sz)); if (defined($sz)) { $newline=$line . " 2x$sz"; } else { $newline=$line . " Failing"; $failing_memory=1; } } elsif ($line =~ / MB\/P[01]\/B[01]\/D[01]\b/ || $line =~ /C[0-3]\/P[01]\/B[01]\/D[01]\b/) { $sz=$grpsize{substr($line,0,1),substr($line,15,1)}; $sz=$grpsize{0,substr($line,15,1)} if (! defined($sz)); if (defined($sz)) { $sz=~s/ //g; $sz=&show_memory_label($sz); } $space=" "; $space="" if ($line =~ / okay/); if ($line =~ / failed/) { if (defined($sz)) { $failed_memory += $sz; } else { $failing_memory=1; } } if (defined($sz)) { # If interleave factor is 16, then print 4x$sz if (defined($grpinterleave{substr($line,28,1),0})) { if (($grpinterleave{substr($line,28,1),0} eq "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15") && ($prtdiag_banktable_has_dimms == 0)) { $newline=$line . "$space 4x$sz"; } else { $newline=$line . "$space $sz"; } } else { $newline=$line . "$space $sz"; } } } elsif ($line =~ / MB\/DIMM[0-7]\b/) { $sz=$grpsize{substr($line,0,1),substr($line,15,1)}; $sz=$grpsize{0,substr($line,15,1)} if (! defined($sz)); $newline=$line . " $sz" if (defined($sz)); } elsif ($line =~ /\bSB\d\/P\d\/B\d\/D\d,/) { $tmp=substr($line,0,2); $tmp=~s/ //g; $sz=$grpsize{$tmp,substr($line,15,1)}; $sz=$grpsize{0,substr($line,15,1)} if (! defined($sz)); if (defined($sz)) { $sz=~s/ //g; $newline=$line . " 4x$sz"; } } elsif ($line =~ /\bSB\d\/P\d\/B\d\/D\d\b/) { $tmp=substr($line,0,2); $tmp=~s/ //g; $sz=$grpsize{$tmp,substr($line,15,1)}; $sz=$grpsize{0,substr($line,15,1)} if (! defined($sz)); if (defined($sz)) { $sz=~s/ //g; $newline=$line . " $sz"; } } push(@new_boards_mem, "$newline\n") if ($newline ne ""); } @boards_mem=@new_boards_mem; } # Rewrite prtdiag output to exclude redundant labels @new_boards_mem=""; $flag_group=0; foreach $line (@boards_mem) { $line=&mychomp($line); $newline=$line; $flag_group++ if ($line =~ /Memory Module Groups:/); if ($flag_group ge 2) { $newline="" if ($line =~ /Memory Module Groups:/ || $line =~ "--------------------------------------------------" || $line =~ /ControllerID GroupID/); } push(@new_boards_mem, "$newline\n") if ($newline ne ""); } if (($ultra eq "T5120" || $ultra eq "T5220" || $ultra eq "T6320" || $ultra eq "T5140" || $ultra eq "T5240" || $ultra eq "T5440") && $sockets_used ne "") { if ($prtpicl_cmd ne "" && $have_prtpicl_data == 0) { # Warn that prtpicl may take a while to run &please_wait; @prtpicl=&run("$prtpicl_cmd -v"); $have_prtpicl_data=1; } &check_prtpicl if ($have_prtpicl_data); if ($picl_foundmemory) { @new_boards_mem=""; $bank_cnt=scalar(keys %picl_mem_bank); if (scalar(keys %picl_mem_dimm) == 1 || $bank_cnt > 1) { $pn_cnt=scalar(keys %picl_mem_pn); while (($socket,$simmsize)=each(%picl_mem_bank)) { if ($pn_cnt == $bank_cnt * 2 || $interleave == 8) { # CH1 was not listed $simmsize /= 2; $picl_mem_dimm{"$socket"}=$simmsize; $socket=~s/CH0/CH1/g; $picl_mem_dimm{"$socket"}=$simmsize; $sockets_used .= " $socket" if ($sockets_used !~ /$socket/); } else { $picl_mem_dimm{"$socket"}=$simmsize; } } } while (($socket,$simmsize)=each(%picl_mem_dimm)) { $pn=$picl_mem_pn{"$socket"}; $sz=&show_memory_label($simmsize); $newline="socket $socket has a "; $newline .= $pn . " " if (defined($pn)); $newline .= $sz . " " if (defined($sz)); $newline .= "$memtype"; push(@new_boards_mem, "$newline\n"); push(@simmsizesfound, $simmsize) if (defined($sz)); } @new_boards_mem=sort @new_boards_mem; } elsif ($flag_rewrite_prtdiag_mem) { # Hack: Rewrite prtdiag output better than original if ($sockets_used =~ /MB\/CMP[01]\/BR[0-3]\/CH[01]\/D1/) { # All 16 DIMMs are installed @new_boards_mem=""; if ($sockets_used !~ /MB\/CMP[01]\/BR[0-3]\/CH1\/D[01]/) { foreach $line (@boards_mem) { $line=&mychomp($line); $newline=$line; if ($line =~ /MB\/CMP[01]\/BR[0-3]\/CH0\/D[01]/) { $line=~s/\s+$//; $tmp=$line; $tmp=~s/^.*(MB\/CMP.*)/$1/; $tmp=~s/CH0/CH1/g; $space=""; $space=" " if ($line =~ /^MB\/CMP/); $newline="$space$line,$tmp"; } push(@new_boards_mem, "$newline\n") if ($newline ne ""); } } $sockets_used=""; for ($cnt=0; $cnt <= $#socketstr; $cnt++) { $sockets_used .= " $socketstr[$cnt]"; } $simmsize=$installed_memory / 16; } else { # 8-DIMMs or 4-DIMMs are installed. # Hack: assume 4-DIMM configuration since # 8-DIMM has prtpicl output. @new_boards_mem=""; foreach $line (@boards_mem) { $line=&mychomp($line); $newline=$line; if ($line =~ /MB\/CMP[01]\/BR[0-3]\/CH0\/D[01]/) { $line=~s/\s+$//; $space=""; $space=" " if ($line =~ /^MB\/CMP/); $newline="$space$line"; } push(@new_boards_mem, "$newline\n") if ($newline ne ""); } $simmsize=$installed_memory / 4; } # Round up DIMM value $simmsize=int(($simmsize + 128) / 1024) * 1024; push(@simmsizesfound, $simmsize); } else { $tmp=0; foreach $socket (sort split(' ', $sockets_used)) { $tmp++; } if ($tmp) { $simmsize=$installed_memory / $tmp; # Round up DIMM value $simmsize=int(($simmsize + 128) / 1024) * 1024; push(@simmsizesfound, $simmsize); } } } @boards_mem=@new_boards_mem; } sub prtdiag_threadcount { $arg=shift; $diagthreadcnt++; $tmp=$line; $tmp=~s/,\s+/,/; @linearr=split(' ', $tmp); if ($line =~ /\bUS-/) { $cputype=$linearr[4]; $cputype=~s/US-/UltraSPARC-/; $cputype=~s/UltraSPARC-IV/Dual-Core UltraSPARC-IV/; $cpufreq=$linearr[2]; } $diagcpucnt{"$cputype $cpufreq"}++; if ($linearr[$arg] =~ /,/) { $tmp=$linearr[$arg]; @linearr=split(',', $tmp); $diagthreadcnt += $#linearr; } $cpucntfrom="prtdiag"; } sub check_prtpicl { print &runtime . "in check_prtpicl\n" if ($DEBUG); $flag_mem_seg=0; $flag_mem_bank=0; $flag_mem_chan=0; $flag_mem_mod=0; $cpumembrd=""; foreach $line (@prtpicl) { $line=&dos2unix($line); $line=&mychomp($line); $line=~s/\s+$//; if ($line =~ /^\s+:Label\s+CPU[01]/ || $line =~ /^\s+:Label\s+MEM[01]/) { $cpumembrd=$line; $cpumembrd=~s/^.*:Label\s+(.*)$/$1/; $cpumembrd .= "/"; } if ($line =~ /^\s+:Label\s+CMP[0-3]/) { $cmp=$line; $cmp=~s/^.*:Label\s+(.*)$/$1/; } if ($line =~ /\s+:name\s/) { $flag_mem_seg=0; if ($flag_mem_mod) { $socket="MB/$cpumembrd$cmp/$mem_branch/$mem_channel/$mem_dimm"; $flag_mem_mod=0; # End of memory module section $sockets_used .= " $socket" if ($sockets_used !~ /$socket/); $picl_mem_pn{"$socket"}="$mem_mfg $mem_model"; if ($sockets_used =~ /\/CH1\//) { $picl_mem_dimm{"$socket"}=$bank_size / 2; } else { $picl_mem_dimm{"$socket"}=$bank_size; } } if ($flag_mem_bank && ! $flag_mem_mod) { if ($bank_nac) { $socket="$bank_nac" if ($bank_nac ne ""); } $flag_mem_bank=0; # End of memory bank section $sockets_used .= " $socket" if ($sockets_used !~ /$socket/); $picl_mem_bank{"$socket"}=$bank_size; } } if ($line =~ /^\s+memory-segment\s/) { $flag_mem_seg=1; # Start of memory segment section } if ($flag_mem_seg) { if ($line =~ /^\s+:InterleaveFactor\s/) { $interleave=$line; $interleave=~s/^.*:InterleaveFactor\s+(.*)$/$1/; $interleave=hex($interleave) if ($interleave =~ /^0x\d/); } if ($line =~ /^\s+:Size\s/) { $segment_size=$line; $segment_size=~s/^.*:Size\s+(.*)$/$1/; if ($segment_size =~ /^0x\d/) { $segment_size=~s/^(.*)00000$/$1/; $segment_size=hex($segment_size); } else { $segment_size /= $meg; } } } if ($line =~ /^\s+memory-bank\s/) { $flag_mem_bank=1; # Start of memory bank section } if ($flag_mem_bank) { if ($line =~ /^\s+:Label\s/) { $bank_label=$line; $bank_label=~s/^.*:Label\s+(.*)$/$1/; } if ($line =~ /^\s+:nac\s/) { $bank_nac=$line; $bank_nac=~s/^.*:nac\s+(.*)$/$1/; } if ($line =~ /^\s+:Size\s/) { $bank_size=$line; $bank_size=~s/^.*:Size\s+(.*)$/$1/; if ($bank_size =~ /^0x\d/) { $bank_size=~s/^(.*)00000$/$1/; $bank_size=hex($bank_size); } else { $bank_size=$segment_size / $meg; } } } if ($line =~ /^\s+memory-module\s/ && $flag_mem_bank) { $flag_mem_mod=1; # Start of memory module section } if ($flag_mem_mod) { if ($line =~ /^\s+:nac\s/) { $mem_dimm=$line; $mem_dimm=~s/^.*:nac\s+(.*)$/$1/; } } if ($line =~ /^\s+BR\d\s/) { $flag_mem_chan=0; $mem_branch=$line; $mem_branch=~s/^.*(BR\d).*/$1/; } if ($line =~ /^\s+CH\d\s/) { $flag_mem_chan=1; # Start of memory channel section $mem_channel=$line; $mem_channel=~s/^.*(CH\d).*/$1/; } if ($flag_mem_chan && $line =~ /^\s+D\d\s/) { $flag_mem_mod=1; # Start of memory module section $picl_foundmemory=1; $mem_dimm=$line; $mem_dimm=~s/^.*(D\d).*/$1/; } if ($flag_mem_mod) { if ($line =~ /\s+:ModelName\s/) { $mem_model=$line; $mem_model=~s/^.*:ModelName\s+(.*)$/$1/; } if ($line =~ /\s+:MfgName\s/) { $mem_mfg=$line; $mem_mfg=~s/^.*:MfgName\s+(.*)$/$1/; } } } } sub multicore_cputype { $s=shift; $tmp=shift; return if (! defined($s)); return if (! defined($tmp)); $s="Hyper-Threaded $s" if ($hyperthread); $s="Dual-Core $s" if ($tmp == 2 && $s !~ /Dual.Core/i); $s="Triple-Core $s" if ($tmp == 3 && $s !~ /Triple.Core/i); $s="Quad-Core $s" if ($tmp == 4 && $s !~ /Quad.Core/i); $s="Hex-Core $s" if ($tmp == 6 && $s !~ /Hex.Core/i); $s="Octal-Core $s" if ($tmp == 8 && $s !~ /Octal.Core/i); $s="Twelve-Core $s" if ($tmp == 12 && $s !~ /Twelve.Core/i); $s=~s/ Core/-Core/ if ($s =~ /Dual Core/i || $s =~ /Triple Core/i || $s =~ /Quad Core/i || $s =~ /Hex Core/i || $s =~ /Octal Core/i || $s =~ /Twelve Core/i || $s =~ /[0-9] Core/i); return($s); } sub cleanup_cputype { $_=shift; return "" if (! defined($_)); s/ CPU//; s/ [Pp]rocessor//; s/ +MHz/MHz/; s/ *$//; s/ +/ /g; s/ Core/-Core/ if (/Dual Core/i || /Triple Core/i || /Quad Core/i || /Hex Core/i || /Octal Core/i || /Twelve Core/i || /[0-9] Core/i); return($_); } sub multicore_cpu_cnt { $arg=shift; # return if ($isX86); &check_psrinfo; print &runtime . "in multicore_cpu_cnt, cputype=$cputype\n" if ($DEBUG); if ($cputype =~ /UltraSPARC-T1\b/) { $cputype="UltraSPARC-T1"; # Count 4-Thread (4, 6, or 8 Core) Niagara CPUs as 1 CPU if ($npcpu && ! $have_ldm_data) { $ncpu=$npcpu; } else { # Assume each CPU has 8 Cores max (32 threads) $ncpu=int(($threadcnt - 1) / 32) + 1; } if (defined($arg)) { $cnt=$ncpu; return; } $cputype=$threadcnt / 4 / $ncpu . "-Core Quad-Thread $cputype"; $cpucnt{"$cputype $cpufreq"}=$ncpu; } elsif ($cputype =~ /UltraSPARC-T2\+/) { $cputype="UltraSPARC-T2+"; # Count 8-Thread (4, 6, or 8 Core) Victoria Falls CPUs as 1 CPU if ($npcpu && ! $have_ldm_data) { $ncpu=$npcpu; } else { # Assume there are no single-cpu systems with the US-T2+ $ncpu=2; # Valid configurations: # T5140,T5240: 2 x 4-Core (64 threads), 2 x 6-Core # (96 threads), 2 x 8-Core (128 threads) # T5440: 4 x 4-Core (128 threads), 4 x 8-Core # (256 threads) if ($ultra eq "T5140" || $ultra eq "T5240") { $ncpu=2; } elsif ($ultra eq "T5440") { $ncpu=4; } } if (defined($arg)) { $cnt=$ncpu; return; } $cputype=$threadcnt / 8 / $ncpu . "-Core 8-Thread $cputype"; $cpucnt{"$cputype $cpufreq"}=$ncpu; } elsif ($cputype =~ /UltraSPARC-T2\b/) { $cputype="UltraSPARC-T2"; # Count 8-Thread (4 or 8 Core) Niagara-II CPUs as 1 CPU if ($npcpu && ! $have_ldm_data) { $ncpu=$npcpu; } else { # Assume each CPU has 8 Cores max (64 threads) $ncpu=int(($threadcnt - 1) / 64) + 1; } if (defined($arg)) { $cnt=$ncpu; return; } $cputype=$threadcnt / 8 / $ncpu . "-Core 8-Thread $cputype"; $cpucnt{"$cputype $cpufreq"}=$ncpu; } elsif ($cputype =~ /SPARC64-VI\b/) { # Count Dual-Core Dual-Thread Olympus-C SPARC64-VI CPUs as 1 CPU $ncpu=$threadcnt / 4; $cputype="Dual-Core Dual-Thread SPARC64-VI"; if (defined($arg)) { $cnt=$ncpu; return; } $cpucnt{"$cputype $cpufreq"}=$ncpu; } elsif ($cputype =~ /SPARC64-VII\b/) { # Count Quad-Core Dual-Thread Jupiter SPARC64-VII CPUs as 1 CPU $ncpu=$threadcnt / 8; $cputype="Quad-Core Dual-Thread SPARC64-VII"; if (defined($arg)) { $cnt=$ncpu; return; } $cpucnt{"$cputype $cpufreq"}=$ncpu; } elsif ($cputype =~ /SPARC64-VII\+\b/) { # Count Quad-Core Dual-Thread Jupiter+ SPARC64-VII+ CPUs as 1 CPU $ncpu=$threadcnt / 8; $cputype="Quad-Core Dual-Thread SPARC64-VII+"; if (defined($arg)) { $cnt=$ncpu; return; } $cpucnt{"$cputype $cpufreq"}=$ncpu; } elsif ($cputype =~ /SPARC64-VIII\b/) { # Guess on the Venus SPARC64-VIII name ??? # Count 8-Core Dual-Thread Venus SPARC64-VIII CPUs as 1 CPU $ncpu=$threadcnt / 16; $cputype="8-Core Dual-Thread SPARC64-VIII"; if (defined($arg)) { $cnt=$ncpu; return; } $cpucnt{"$cputype $cpufreq"}=$ncpu; } } sub x86multicorecnt { $_=shift; return if (! defined($_)); $corecnt=2 if (/\bDual.Core/i || /\bTwo.Core/i); $corecnt=3 if (/\bTriple.Core/i || /\bThree.Core/i); $corecnt=4 if (/\bQuad.Core/i || /\bFour.Core/i); $corecnt=6 if (/\bHex.Core/i || /\bSix.Core/i); $corecnt=8 if (/\bOctal.Core/i || /\bEight.Core/i); $corecnt=12 if (/\bTwelve.Core/i); } sub checkX86 { $isX86=1 if ($model eq "i86pc" || $machine eq "i86pc" || $model eq "i86xpv" || $machine eq "i86xpv"); # Use CPU count from prtdiag (ndcpu) and thread count from psrinfo to # get core count per cpu for i86xpv $use_psrinfo_data=2 if ($model eq "i86xpv" || $machine eq "i86xpv"); } sub check_psrinfo { return if ($psrinfo_checked); print &runtime . "in check_psrinfo, ndcpu=$ndcpu, npcpu=$npcpu, nvcpu=$nvcpu\n" if ($DEBUG); $psrinfo_checked=1; return if ($nvcpu); return if (! $use_psrinfo_data); if ($filename) { $npcpu=0; $j=0; $have_npcpu=0; foreach $line (@psrinfo) { $line=&dos2unix($line); # May have "psrinfo -p" output in regression test file # that has number of physical CPUs. if ($line =~ /^#psrinfo -p$/ && $psrinfo[$j + 1] =~ /^\d+$/) { $npcpu=&mychomp($psrinfo[$j + 1]); $have_npcpu=1; } # May have "psrinfo -p -v" output in regression test # file that has number of virtual CPUs. Assumes all # CPUs are same. if ($line =~ /.+ \d+ virtual processor/) { $nvcpu=&mychomp($line); $nvcpu=~s/.+ processor has //; $nvcpu=~s/ virtual processor.+//; $corecnt=$nvcpu if ($nvcpu >= 2); $corecnt /= 2 if ($hyperthread); if ($use_psrinfo_data == 2 && $ndcpu > 1) { $corecnt /= $ndcpu; $npcpu=$ndcpu if ($have_npcpu == 0); } else { $npcpu++ if ($have_npcpu == 0); } $cpucntfrom="psrinfo" if ($cpucntfrom ne "ldm"); $cpucntflag="0"; # reset flag } $j++; } } elsif ($psrinfo_cmd ne "") { $ncpu=&mychomp(`$psrinfo_cmd | wc -l`); # physical & virtual CPUs $ncpu=~s/\s+//; $npcpu=&mychomp(`$psrinfo_cmd -p 2>/dev/null`); # physical CPUs if ($npcpu eq "") { $npcpu=$ncpu; $nvcpu=1; } else { # Find number of virtual CPUs @tmp=`$psrinfo_cmd -p -v`; foreach $line (@tmp) { $line=&dos2unix($line); if ($line =~ /.+ \d+ virtual processor/) { $nvcpu=&mychomp($line); $nvcpu=~s/.+ processor has //; $nvcpu=~s/ virtual processor.+//; $corecnt=$nvcpu if ($nvcpu >= 2); $corecnt /= 2 if ($hyperthread); if ($use_psrinfo_data == 2 && $ndcpu > 1) { $corecnt /= $ndcpu; $npcpu=$ndcpu; } } } if ($cputype eq "x86") { if ($tmp[2] =~ /.+Hz/ || $tmp[2] =~ /\bAMD .* Processor /) { $cputype=&mychomp($tmp[2]); $cputype=~s/ CPU / /; $cputype=~s/\s+/ /g; $cputype=~s/^\s+//; $cputype=~s/\s+$//; $cputype_psrinfo=$cputype; } } } @tmp=`$psrinfo_cmd -v`; if ($tmp[2] =~ /MHz/) { $cpufreq=&mychomp($tmp[2]); $cpufreq=~s/.+ operates at //; $cpufreq=~s/ MHz.+//; } $cpucntfrom="psrinfo" if ($cpucntfrom ne "ldm"); $have_psrinfo_data=1; } } sub get_mfg { $_=shift; return "" if (! defined($_)); s/Manufacturer: *//ig; if (/JEDEC ID:/) { s/JEDEC ID://g; s/ //g; } s/^\s+//; s/\s+$//; s/^0x//; return "" if (/^$/ || /^\r$/ || /^FFFFFFFFFFFF/i || /Manufacturer\d/i); # Based on JEDEC JEP106-X return "AMD" if (/^01/ || /^8001/); return "AMI" if (/^02/ || /^8002/); return "Fujitsu" if (/^04/ || /^8004/ || /Fujitsu/i); return "Elpida" if (/^0500/ || /Elpida/i); # Hack return "Hitachi" if (/^07/ || /^8007/ || /Hitachi/i); return "Inmos" if (/^08/ || /^8008/ || /Inmos/i); return "Intersil" if (/^0B/i || /^800B/i || /Intersil/i); return "Mostek" if (/^0D/i || /^800D/i || /Mostek/i); return "Freescale (Motorola)" if (/^0E/i || /^800E/i || /Freescale/i || /Motorola/i); return "NEC" if (/^10/ || /^8010/); return "Conexant (Rockwell)" if (/^13/ || /^8013/ || /Conexant/i || /Rockwell/i); return "NXP (Philips Semi, Signetics)" if (/^15/ || /^8015/ || /Philips Semi/i || /Signetics/i); return "Synertek" if (/^16/ || /^8016/ || /Synertek/i); return "Xicor" if (/^19/ || /^8019/ || /Xicor/i); return "Zilog" if (/^1A/i || /^801A/i || /Zilog/i); return "Mitsubishi" if (/^1C/i || /^801C/i || /Mitsubishi/i); return "Micron Technology" if (/^2C/i || /^802C/i || /Micron Technology/i); return "ProMOS/Mosel Vitelic" if (/^40/ || /^8040/ || /ProMOS/i || /Mosel Vitelic/i); return "Goldenram" if (/^6A/i || /^806A/i || /Goldenram/i); return "Nanya Technology" if (/^7F7F7F0B/i || /^830B/i || /Nanya/i); # Hack return "Fairchild" if (/^83/ || /^8083/ || /Fairchild/i); return "Numonyx (Intel)" if (/^89/ || /^8089/ || /Numonyx/i || /Intel/i); return "DATARAM" if (/^91/ || /^8091/); return "Toshiba" if (/^98/ || /^8098/ || /Toshiba/i); return "IBM" if (/^A4/i || /^80A4/); return "Hynix Semiconductor (Hyundai Electronics)" if (/^AD/i || /^80AD/i || /Hynix/i || /Hyundai/i); return "Infineon (Siemens)" if (/^C1/i || /^80C1/ || /^7F7F7F7F7F51/i || /Infineon/i || /Siemens/i); return "Samsung" if (/^CE/i || /^80CE/i || /Samsung/i); return "Winbond Electronics" if (/^DE/i || /^80DE/i || /Winbond/i); return "LG Semiconductor (Goldstar)" if (/^E0/i || /^80E0/i || /LG Semi/i || /Goldstar/i); return "Micron CMS" if (/^7F45/i || /Micron CMS/i); return "Kingston" if (/^7F98/i || /Kingston/i); return "Ramaxel Technology" if (/^7F7F7F7F43/i || /Ramaxel/i); # Hack return &mychomp($_); } # See if CPUs and memory modules are listed in "ipmitool fru" output sub check_ipmitool { print &runtime . "in check_ipmitool\n" if ($DEBUG); return if ("$ipmitool_cmd" eq "" && $filename eq ""); $cputype2=""; $mem_mfg=""; $mem_model=""; $flag_cpu=0; $flag_mem=0; $socket=""; foreach $line (@ipmitool) { $line=&dos2unix($line); $line=&mychomp($line); if ($line =~ /^ *$/) { # store cpu and memory modules in hash if ($flag_cpu) { if ($cputype2 ne "") { $cputype2=~s/DUAL.CORE/Dual-Core/; $cputype2=~s/QUAD.CORE/Quad-Core/; $cputype2=~s/ Core/-Core/; $cputype2=~s/OPTERON\(TM\) PROCESSOR/Opteron\(tm\) Processor/; $cputype_ipmi="$cputype2"; $cpucnt_ipmi++; } } if ($flag_mem && $socket ne "") { $ipmi_mem{"$socket"}=("$mem_mfg$mem_model" ne "") ? "$mem_mfg $mem_model" : ""; } $flag_cpu=0; # End of CPU section $flag_mem=0; # End of memory section $cputype2=""; $mem_mfg=""; $mem_model=""; } if ($line =~ / cpu\d+\.vpd / || $line =~ / p\d+\.fru /) { $flag_cpu=1; # Start of CPU section $socket=$line; $socket=~s/^.*: +(.*\S)\.[vf][pr][du].*$/$1/; } if ($flag_cpu && ($line =~ / Product Name /)) { $cputype2=$line; $cputype2=~s/^.*: +(.*\S) *$/$1/; &x86multicorecnt($cputype2); } if ($line =~ / cpu\d+\.mem\d+\.vpd / || $line =~ / p\d+\.d\d+\.fru /) { $flag_mem=1; # Start of memory module section $socket=$line; $socket=~s/^.*: +(.*\S)\.[vf][pr][du].*$/$1/; } if ($flag_mem && ($line =~ / Product Manufacturer /)) { $mem_mfg=$line; $mem_mfg=~s/^.*: +(.*\S) *$/$1/; $mem_mfg=&get_mfg($mem_mfg); } if ($flag_mem && ($line =~ / Product Name /)) { $mem_model=$line; $mem_model=~s/^.*: +(.*\S) *$/$1/; $mem_model=~s/ ADDRESS\/COMMAND//; $mem_model=~s/PARITY/Parity/; } } # Is ipmitool CPU count better? # print &runtime . "cpucnt_ipmi=$cpucnt_ipmi\n" if ($DEBUG); if ($ncpu != $cpucnt_ipmi && $npcpu == 0 && $cpucnt_ipmi != 0) { $ncpu=$cpucnt_ipmi; $npcpu=$cpucnt_ipmi; $cpucntfrom="ipmitool"; $cpucnt{"$cputype $cpufreq"}=$cpucnt_ipmi; } # Did ipmitool find a better cputype? if (&lc($cputype) ne &lc($cputype_ipmi) && $cputype_ipmi ne "") { # rewrite %cpucnt $cputype with cputype while (($cf,$cnt)=each(%cpucnt)) { $cf=~/^(.*) (\d+)$/; $cpufreq=$2; delete $cpucnt{"$1 $2"}; } $cpucnt{"$cputype_ipmi $cpufreq"}=$cpucnt_ipmi; } } # Check for logical domains sub check_for_LDOM { print &runtime . "in check_for_LDOM\n" if ($DEBUG); # Handle control domain on UltraSPARC-T1 and UltraSPARC-T2 systems if ($ldm_cmd ne "" && $have_ldm_data == 0) { @ldm=&run("$ldm_cmd list-devices -a -p"); $have_ldm_data=1; } if ($have_ldm_data) { $threadcnt=0; foreach $line (@ldm) { $line=&dos2unix($line); $line=&mychomp($line); &check_LDOM; # Count virtual CPUs $threadcnt++ if ($line =~ /^\|pid=\d/); if ($line =~ /^\|pa=\d.*\|size=\d/) { # Add up total memory found in ldm output $sz=$line; $sz=~s/^.*size=(\d*).*/$1/; $ldm_memory += $sz; } } if ($threadcnt > 0) { # VCPUs found in ldm output delete $cpucnt{"$cputype $cpufreq"}; print &runtime . "ldm: ncpu=$ncpu, npcpu=$npcpu\n" if ($DEBUG); $cpucntfrom="ldm"; &multicore_cpu_cnt; } $installed_memory=$ldm_memory / $meg if ($ldm_memory > 0); } # Handle guest domains on UltraSPARC-T1 and UltraSPARC-T2 systems if ($cfgadm_cmd ne "" && $have_cfgadm_data == 0) { @cfgadm=&run("$cfgadm_cmd -al"); $have_cfgadm_data=1; } if ($have_cfgadm_data) { foreach $line (@cfgadm) { $line=&dos2unix($line); if ($line =~ /Configuration administration not supported/) { # Hack: Assume cfgadm fails on guest domains. &found_guest_LDOM; exit 1; } } } } sub check_LDOM { if ($line =~ /Authorization failed/i || $line =~ /Connection refused/i) { if ($uid eq "0") { # No LDOMs configured $ldm_cmd=""; $have_ldm_data=0; } else { &found_guest_LDOM(""); print "ERROR: ldm: $line\n"; print " This user does not have permission to run '/opt/SUNWldm/bin/ldm'.\n"; print " Run memconf as a privileged user like root on the control domain.\n"; exit 1; } } } sub found_guest_LDOM { # Rewrite cputype and cpucnt hash since I don't # know how many cores the guest domain host has if ($cputype =~ /UltraSPARC-T1\b/) { delete $cpucnt{"$cputype $cpufreq"}; $cputype="UltraSPARC-T1"; $cpucnt{"$cputype $cpufreq"}=1; } elsif ($cputype =~ /UltraSPARC-T2\+/) { delete $cpucnt{"$cputype $cpufreq"}; $cputype="UltraSPARC-T2+"; $cpucnt{"$cputype $cpufreq"}=1; } elsif ($cputype =~ /UltraSPARC-T2\b/) { delete $cpucnt{"$cputype $cpufreq"}; $cputype="UltraSPARC-T2"; $cpucnt{"$cputype $cpufreq"}=1; } &show_header; $arg=shift; return if (defined($arg)); print "ERROR: Guest Logical Domain (LDOM) detected.\n"; print " Run memconf on the control domain. It will not work on guest domains.\n"; } sub check_smbios { print &runtime . "in check_smbios\n" if ($DEBUG); $flag_smb_memdevice=0; foreach $line (@smbios) { $line=&dos2unix($line); $line=&mychomp($line); if ($line =~ /SMB_TYPE_MEMDEVICE/) { $mem_mfg=""; $socket=""; $pn=""; $simmsize=0; $memtype=""; $formfactor=""; $flag_smb_memdevice=1; } if ($flag_smb_memdevice) { if ($line =~ /Manufacturer:/) { $mem_mfg=$line; $mem_mfg=~s/^ *Manufacturer: *//g; $mem_mfg=&get_mfg($mem_mfg); $mem_mfg .= " " if ($mem_mfg ne ""); } if ($line =~ /Location Tag:/) { $socket=$line; $socket=~s/^ *Location Tag: *//g; } if ($line =~ /Part Number:/) { $pn=$line; $pn=~s/^ *Part Number: *//g; $pn=~s/\s*$//g; $pn="" if ($pn =~ /^0xFF/ || $pn =~ /PartNum\d/i); $pn .= " " if ($pn ne ""); } if ($line =~ /Size:/) { $simmsize=$line; $simmsize=~s/^ *Size: //g; $simmsize=~s/ bytes//g; $simmsize=0 if ($simmsize =~ /Not Populated/); $simmsize /= $meg; } if ($line =~ /Memory Type:/) { $memtype=$line; $memtype=~s/^ *Memory Type:.*\((.*)\).*/$1/g; $memtype .= " " if ($formfactor ne ""); $memtype="" if ($memtype =~ /Memory Type:/ || $memtype =~ /^other/); } if ($line =~ /Form Factor:/) { $formfactor=$line; $formfactor=~s/^ *Form Factor:.*\((.*)\).*/$1/g; $formfactor="" if ($formfactor =~ /Form Factor:/); } if ($line =~ /Bank Locator:/ || $line =~ /^ *ID *SIZE *TYPE/) { $bank_label=$line; $bank_label=~s/^ *Bank Locator: *//g; $bank_label="BANK $bank_label" if ($bank_label =~ /^.$/); $bank_label="" if ($bank_label eq $socket); $bank_label=", $bank_label" if ($bank_label ne ""); $flag_smb_memdevice=0; if ($socket ne "") { $smbios_mem{"$socket"}=($simmsize) ? "$mem_mfg${simmsize}MB $pn$memtype$formfactor$bank_label" : ""; $sockets_used=""; } } } } $tmp=scalar(keys %smbios_mem); if (defined($tmp)) { if ($tmp > 0) { &show_header; if (! &is_virtualmachine) { for (sort keys %smbios_mem) { if ($smbios_mem{$_} eq "") { $sockets_empty .= "," if ($sockets_empty ne ""); $sockets_empty .= " $_"; } else { print "socket $_: $smbios_mem{$_}\n"; } } } $totmem=$installed_memory; &print_empty_memory("memory sockets"); &finish; exit; } } } sub found_empty_bank { $empty_banks .= "," if ($empty_banks ne ""); $boardslot_mem=~s/[: ]//g; $empty_banks .= " Board $boardslot_mem @_"; } sub print_empty_memory { return if (&is_virtualmachine); $s=shift; print "empty $s:"; print (($sockets_empty ne "") ? "$sockets_empty\n" : " None\n"); } sub found_nvsimm_bank { $nvsimm_banks .= ", Board $boardslot_mem @_"; } sub recommend_prtdiag_patch { # Sun BugID 4664349 print " This may be corrected by installing "; if ($osrel eq "5.9") { print "Sun patch 113221-03 or 118558-06 or later.\n"; } elsif ($osrel eq "5.8") { print "Sun patch 109873-26 or 111792-11 or later.\n"; } else { print "a Sun patch on this system.\n"; } } sub numerically { $a <=> $b; } sub lc { $s=shift; return "" if (! defined($s)); $s=~tr/[A-Z]/[a-z]/; return $s; } sub dos2unix { # Convert "CR LF" or "CR" to "LF" $s=shift; $s=~s/\r\n/\n/g; $s=~s/\r/\n/g; return $s; } sub convert_freq { ($freqx)=@_; if ($isX86) { $freq=int(hex("0x$freqx") / 10000 + 0.5); } else { if ($freqx =~ /'/) { $freqpack=$freqx; $freqpack=~s/'//g; @frequnpack=unpack("C*",$freqpack); $freqx=""; foreach $field (@frequnpack) { $freqx.=sprintf("%02lx", $field); } if ($#frequnpack < 3) { $freqx.="00"; } } $freq=int(hex("0x$freqx") / 1000000 + 0.5); } return $freq; } sub mychomp { # Used instead of chop or chomp for compatibility with perl4 and perl5 ($a)=@_; return "" if (! defined($a)); $a=~s,$/$,,g; return $a; } sub run { print &runtime . "Running @_\n" if ($DEBUG); `@_ 2>&1`; } sub runtime { return "DEBUG time " . (time - $starttime) . ": "; } sub read_prtdiag_bank_table { # prtdiag Bank Table $simmsize=substr($line,33,5); if ($simmsize =~ /\dGB/) { $simmsize=~s/GB//g; $simmsize *= 1024; } else { $simmsize=~s/MB//g; } if (($prtdiag_banktable_has_dimms == 0) || ($line =~ / 0$/)) { # Interleave Way = 0 $simmsize /= 2; } if (($prtdiag_banktable_has_dimms == 1) && ($line =~ / 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15/)) { # Interleave Way = 16 $simmsize *= 4; $intcnt=1; push(@simmsizesfound, "$simmsize"); } elsif ($intcnt > 0) { # Interleave Way = 16 $intcnt++; $simmsize *= 4; } $a=substr($line,9,2); $a=~s/ //g; $b=substr($line,23,1); $sz=&show_memory_label($simmsize); $grpsize{$a,$b}=$sz; $memlength=length($line); if ($memlength > 49) { $grpinterleave{$a,$b}=substr($line,49,40) if (substr($line,49,40) ne ""); } if ($intcnt == 0) { push(@simmsizesfound, "$simmsize"); $simmsize=&show_memory_label($simmsize) . " "; if ($prtdiag_banktable_has_dimms == 0) { $newline=substr($line,0,38) . " 2x" . substr($simmsize,0,5); $newline .= substr($line,42,20) if ($memlength > 38); } } $intcnt=1 if (($prtdiag_banktable_has_dimms == 1) && ($line =~ / 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15/)); $intcnt=0 if ($intcnt == 16); } sub read_prtdiag_memory_segment_table { # prtdiag Memory Segment Table $simmsize=($line =~ /\dGB/) ? substr($line,19,1) * 512 : substr($line,19,3) / 2; $grp=substr($line,-2,2); $grp=~s/ //g; if ($grp eq "-") { $grp=$grpcnt; $grpcnt++; } push(@simmsizesfound, "$simmsize"); $simmsize=&show_memory_label($simmsize); $grpsize{0,$grp}=$simmsize; } $motherboard=""; $realmodel=""; $manufacturer=""; $i=0; # May not have had permission to run prtconf, so see if prtdiag works &check_for_prtdiag; if ($diagbanner) { if ($filename eq "" || $SUNWexplo) { $model=$platform; $model=~s/SUNW,//g; } else { $model=$diagbanner; $model=~s/ /-/g; # define $model for systems with $diagbanner != $model $model="Ultra-4" if ($diagbanner =~ /Sun.Enterprise.450\b/); $model="Sun-Blade-1000" if ($diagbanner =~ /Sun.Blade.1000\b/); $model="Sun-Fire-280R" if ($diagbanner =~ /Sun.Fire.280R\b/); $model="Netra t1" if ($diagbanner =~ /Netra.t1\b/); $model="Netra-T4" if ($diagbanner =~ /Netra.T4\b/); $model="Sun-Blade-100" if ($diagbanner =~ /Sun.Blade.1[05]0\b/); $model="Netra-T12" if ($diagbanner =~ /Sun.Fire.V1280\b/); $model="Serverblade1" if ($diagbanner =~ /Serverblade1\b/); $model="Ultra-Enterprise" if ($diagbanner =~ /Enterprise.E?[3-6][05]00\b/ || $diagbanner =~ /Enterprise.10000\b/); } # Check model and banner here in case we don't have prtconf data &check_model; &check_banner; } foreach $line (@config) { $line=&dos2unix($line); $line=&mychomp($line); $config_permission=1 if ($line =~ /Node /); if ($line =~ /Permission denied/i) { $permission_error="ERROR: $line" if ($diagbanner eq "" || ! $prtdiag_has_mem); } &hpux_cstm if ($line =~ /cstm.*selclass qualifier /); # for HP-UX regression test file if ($line =~ /banner-name:/ && $banner eq "") { $banner=$line; $banner=~s/\s+banner-name:\s+//; $banner=~s/'//g; $banner=~s/SUNW,//g; $banner=~s/TWS,//g; $banner=~s/CYCLE,//g; $banner=~s/\s+$//; &check_banner; } if ($line =~ /model:.*AXUS/) { # AXUS clones with their name on OBP $manufacturer="AXUS"; } if (($line =~ /SUNW,Ultra-/ || $line =~ /SUNW,SPARC/ || $line =~ /Sun.4/ || $line =~ /SUNW,S240/ || $line =~ /SUNW,JavaEngine1/ || $line =~ /SUNW,Ultra.*[Ee]ngine/ || $line =~ /SUNW,Ultra.*Netra*/ || $line =~ /SUNW,Premier-24/ || $line =~ /SUNW,UltraAX-/ || $line =~ /SUNW,Netra/ || $line =~ /\s+name:.*SUNW,Sun-/ || $line =~ /SUNW,Grover/ || $line =~ /SUNW,Enchilada/ || $line =~ /SUNW,Serverblade1/ || $line =~ /SUNW,Enterprise/ || $line =~ /SUNW,A[0-9]/ || $line =~ /SUNW,T[0-9]/ || $line =~ /\s+name:.*'i86pc'/ || $line =~ /^i86pc/ || $line =~ /^i86xpv/ || $line =~ /model:\s+'SPARC CPU-/ || $line =~ /model:\s+'SPARC CPCI-/ || $line =~ /SUNW,Axil-/ || $line =~ /\s+name:.*COMPstation/ || $line =~ /\s+name:.*Tadpole/ || $line =~ /\s+name:.*Auspex/ || $line =~ /\s+name:.*S-4/ || $line =~ /\s+name:.*FJSV,GP/ || $line =~ /\s+name:.*CompuAdd/ || $line =~ /\s+name:.*RDI,/) && $line !~ /\s+:Description\s+/ && $line !~ /\s+:*whoami:*\s+/ && $line !~ /\s+:*impl-arch-name:*\s+/ && $line !~ /Sun 4x Quad/i) { $model=$line; $model=~s/\s+name:\s+//; $model=~s/\s+model:\s+//; $model=~s/\s+:binding-name\s+//; $model=~s/\s+:PlatformName\s+//; $model=~s/'//g; $model=~s/\s+$//; &check_model; if ($line =~ /CompuAdd/) { $manufacturer="CompuAdd"; if ($model eq "SS-2") { $banner=$model if ($banner eq ""); $bannermore="SPARCstation 2"; $modelmore="SPARCstation 2"; } } } $foundname=1 if ($line =~ /\s+name:\s+/); if (($line =~ /\s+model:\s+'.+,/) && ($foundname == 0)) { # Ultra 5/10 motherboard is 375-xxxx part number # SS10/SS20 motherboard is Sxx,501-xxxx part number if ($line =~ /,375-/ || $line =~ /,500-/ || $line =~ /,501-/) { $motherboard=$line; $motherboard=~s/\s+model:\s+//; $motherboard=~s/'//g; } } if ($line =~ /\sname:\s+'memory'/) { $j=$i - 2; if ($config[$j] =~ /\sreg:\s/) { $gotmemory=&mychomp($config[$j]); } elsif ($config[$j - 1] =~ /\sreg:\s/) { $gotmemory=&mychomp($config[$j - 1]); } elsif ($config[$j + 1] =~ /\sreg:\s/) { $gotmemory=&mychomp($config[$j + 1]); } } if ($line =~ /\sdevice_type:\s+'memory-bank'/) { $j=$i - 3; if ($config[$j] =~ /\sreg:\s/ && $config[$j] !~ /.00000000$/) { $config[$j]=~s/\s+reg:\s+//; $gotmemory=($gotmemory) ? "$gotmemory.$config[$j]" : $config[$j]; $gotmemory=&mychomp($gotmemory); } } # The following is not used yet #if ($line =~ /\sdevice_type:\s+'memory-module'/) { # if ($config[$i - 2] =~ /\sreg:\s/) { # $config[$i - 3]=~s/\s+socket-name:\s+//; # if ($gotmodule) { # $gotmodule .= ".$config[$i - 3]"; # } else { # $gotmodule=$config[$i - 3]; # } # $gotmodule=&mychomp($gotmodule); # $config[$i - 2]=~s/\s+reg:\s+//; # @module=split(/\./, $config[$i - 2]); # $gotmodule .= ".$module[3]"; # $gotmodule=&mychomp($gotmodule); # $config[$i + 1]=~s/\s+name:\s+//; # $config[$i + 1] =~ y/[a-z]/[A-Z]/; # $gotmodule .= ".$config[$i + 1]"; # $gotmodule=&mychomp($gotmodule); # $gotmodule=~s/'//g; # } #} if ($line =~ /\ssimm-use:\s+/) { # DIMM usage on Fujitsu GP7000 $gotmodule=&mychomp($config[$i]); $gotmodule=~s/\s+simm-use:\s+//; $slotname0="SLOT0" if ($banner =~ /GP7000\b/); } if ($line =~ /\scomponent-name:\s+'.*CPU.*'/) { # CPUs on Fujitsu GP7000F and PrimePower systems $slotname=$line; $slotname=~s/\s+component-name:\s+//; $slotname=~s/'//g; $gotcpunames=($gotcpunames) ? "$gotcpunames $slotname" : $slotname; $boardname=$slotname; $boardname=~s/-.*//g; if ($boardname ne $slotname) { if ($gotcpuboards) { $gotcpuboards .= " $boardname" if ($gotcpuboards !~ /\b$boardname\b/); } else { $gotcpuboards=$boardname; } } } if ($line =~ /\sdevice_type:\s+'memory-module'/) { # DIMM usage on Fujitsu GP7000F and PrimePower systems $slotname=""; if ($config[$i - 3] =~ /\scomponent-name:\s/) { $slotname=$config[$i - 3]; } if ($config[$i - 4] =~ /\scomponent-name:\s/) { $slotname=$config[$i - 4]; } if ($slotname ne "") { $slotname=~s/\s+component-name:\s+//; $slotname=~s/'//g; $slotname=&mychomp($slotname); $gotmodulenames=($gotmodulenames) ? "$gotmodulenames.$slotname" : $slotname; $slotname0=$slotname if (! $slotname0); $config[$i - 1]=~s/\s+reg:\s+//; @module=split(/\./, $config[$i - 1]); $gotmodulenames .= ".$module[1]"; $gotmodulenames=&mychomp($gotmodulenames); } } if ($line =~ /\sname:\s+'cgfourteen'/) { # Determine size of VSIMM # Currently assumes only one VSIMM is installed if ($config[$i - 2] =~ /\sreg:\s/) { $sx_line=&mychomp($config[$i - 2]); } elsif ($config[$i - 3] =~ /\sreg:\s/) { $sx_line=&mychomp($config[$i - 3]); } @sxline=split(/\./, $sx_line); $sxmem=hex("0x$sxline[5]") / $meg; } if ($line =~ /501-2197/) { # 1MB Prestoserve NVSIMMs (SS1000/SC2000) if ($config[$i + 1] =~ /\sreg:\s/) { $nv_line=&mychomp($config[$i + 1]); } elsif ($config[$i + 2] =~ /\sreg:\s/) { $nv_line=&mychomp($config[$i + 2]); } @nvline=split(/\./, $nv_line); $nvmem += hex("0x$nvline[2]") / $meg; } if ($line =~ /501-2001/) { # 2MB Prestoserve NVSIMMs (SS10/SS20) if ($config[$i + 1] =~ /\sreg:\s/) { $nv_line=&mychomp($config[$i + 1]); } elsif ($config[$i + 2] =~ /\sreg:\s/) { $nv_line=&mychomp($config[$i + 2]); } @nvline=split(/\./, $nv_line); $nvmem += hex("0x$nvline[2]") / $meg; $nvmem1=1 if ($nvline[1] eq "10000000"); $nvmem2=1 if ($nvline[1] eq "14000000" || $nvline[1] eq "1c000000"); } if (($line =~ /Memory size:\s/) && ($installed_memory == 0)) { $installed_memory=$line; $installed_memory=~s/^.*size: *(\d*[GM]*[Bb]*).*/$1/; if ($installed_memory =~ /GB/) { $installed_memory=~s/GB//g; $installed_memory *= 1024; } else { $installed_memory=~s/MB//ig; } # prtconf sometimes reports incorrect total memory # 32MB is minimum for sun4u machines if (($installed_memory < 32) && ($machine eq "sun4u")) { $prtconf_warn="Incorrect total installed memory (${installed_memory}MB) was reported by prtconf."; $installed_memory=0; } # Round up some odd-number total memory values $installed_memory++ if (sprintf("%3d", ($installed_memory + 1) / 2 ) * 2 != $installed_memory && $installed_memory >= 1023); $BSD=0; # prtconf and prtdiag only have this output $config_cmd="/usr/sbin/prtconf -vp" if ($config_cmd !~ /prtconf/); $config_command="prtconf"; } if (($sysfreq == 0) && ($freq > 0)) { $sysfreq=$freq; $freq=0; } if ($devtype eq "cpu" || $line =~ /compatible: 'FJSV,SPARC64-/) { if ($cputype =~ /SPARC64-/) { $cpufreq=$freq if ($freq > $cpufreq); } else { $cpufreq=$freq; } $cpuline=$line; $j=$i - 3; while ($cpuline !~ /^$/ && $cpuline !~ /^\r$/) { if ($cpuline =~ /clock-frequency:/) { @freq_line=split(' ', $cpuline); $cpufreq=&convert_freq($freq_line[1]); $sysfreq=$freq if (($sysfreq == 0) && ($freq > 0)); } elsif (($cpuline =~ /\sname:\s/ || $cpuline =~ /\scompatible:\s/) && $cpuline !~ /Sun 4/ && $cpuline !~ /SPARCstation/ && $cpuline !~ /CompuAdd/ && $cpuline !~ /'cpu/ && $cpuline !~ /'core'/) { $cputype=&mychomp($cpuline); $cputype=~s/\s+name:\s+//; $cputype=~s/\s+compatible:\s+//; $cputype=~s/'//g; $cputype=~s/SUNW,//g; $cputype=~s/FJSV,//g; $cputype=~s/ .*//g; } elsif ($cpuline =~ /\sname:\s/ && $model eq "") { $model=&mychomp($cpuline); $model=~s/\s+name:\s+//; $model=~s/'//g; $model=~s/SUNW,//g; $model=~s/FJSV,//g; } $j++; $cpuline=($config[$j]) ? $config[$j] : ""; } $freq=0; $cpufreq=$sysfreq if ($sysfreq >= $cpufreq); print &runtime . "Checking cputype=$cputype, ncpu=$ncpu\n" if ($DEBUG); if ($cputype eq "") { $cputype=$machine; $cputype="SPARC" if ($cputype =~ /^sun4/ || $model =~ /Sun 4\//); @bannerarr=split(/\s/, $banner); foreach $field (@bannerarr) { if ($field =~ /SPARC/ && $field !~ /SPARCstation/) { $cputype=$field; } elsif ($field =~ /390Z5/) { $field="TI,TMS$field" if ($field =~ /^390Z5/); $cputype=($cpufreq > 70) ? "SuperSPARC-II $field" : "SuperSPARC $field"; } elsif ($field =~ /RT62[56]/) { $cputype="hyperSPARC $field"; $machine="sun4m"; } } $cputype=~s/[()]//g; } elsif ($cputype =~ /MB86907/) { $cputype="TurboSPARC-II $cputype"; } elsif ($cputype =~ /MB86904/ || $cputype =~ /390S10/) { $cputype=($cpufreq > 70) ? "microSPARC-II $cputype" : "microSPARC $cputype"; } elsif ($cputype =~ /,RT62[56]/) { $cputype="hyperSPARC $cputype"; $machine="sun4m"; } elsif ($cputype =~ /UltraSPARC-IV/) { # Count Dual-Core US-IV & US-IV+ as 1 CPU $cputype="Dual-Core $cputype"; $machine="sun4u"; $threadcnt++; $threadcnt=0 if ($threadcnt == 2); # CPU count is better from prtdiag than psrinfo for # US-IV & US-IV+ Dual-Core processors. $use_psrinfo_data=0; } elsif ($cputype =~ /UltraSPARC-T1\b/) { # Count 4-Thread (4, 6, or 8 Core) Niagara CPUs as 1 CPU $machine="sun4v"; $threadcnt++; # Number of cores & CPUs counted outside this loop below } elsif ($cputype =~ /UltraSPARC-T2\+/) { # Count 8-Thread (4, 6, or 8 Core) Victoria Falls CPUs as 1 CPU $machine="sun4v"; $threadcnt++; # Number of cores & CPUs counted outside this loop below } elsif ($cputype =~ /UltraSPARC-T2\b/) { # Count 8-Thread (4 or 8 Core) Niagara-II CPUs as 1 CPU $machine="sun4v"; $threadcnt++; # Number of cores & CPUs counted outside this loop below } elsif ($cputype =~ /SPARC64-VI\b/ && $devtype eq "cpu") { # Count Dual-Core Dual-Thread as 1 CPU $machine="sun4u"; $threadcnt++; # Number of cores & CPUs counted outside this loop below } elsif ($cputype =~ /SPARC64-VII\b/ && $devtype eq "cpu") { # Count Quad-Core Dual-Thread as 1 CPU $machine="sun4u"; $threadcnt++; # Number of cores & CPUs counted outside this loop below } elsif ($cputype =~ /SPARC64-VII\+\b/ && $devtype eq "cpu") { # Count Quad-Core Dual-Thread as 1 CPU $machine="sun4u"; $threadcnt++; # Number of cores & CPUs counted outside this loop below } elsif ($cputype eq "SPARC64-VIII" && $devtype eq "cpu") { # Guess on the Venus SPARC64-VIII name ??? # Count 8-Core Dual-Thread as 1 CPU $machine="sun4u"; $threadcnt++; # Number of cores & CPUs counted outside this loop below } if ($threadcnt == 0 && $devtype eq "cpu") { $ncpu++; $cpucnt{"$cputype $cpufreq"}++; $cpucntfrom=$config_command; } $devtype=""; } if ($line =~ /device_type:/) { @dev_line=split(/\'/, $line); $devtype=$dev_line[1]; } if ($line =~ /clock-frequency:/) { @freq_line=split(' ', $line); $freq=&convert_freq($freq_line[1]); } if ($line =~ /\sversion:\s+'OBP/ && $romver eq "") { $romver=$line; $romver=~s/\s+version:\s+//; $romver=~s/'//g; @romverarr=split(/\s/, $romver); $romvernum=$romverarr[1]; } if ($line =~ /compatible:\s+'sun4.'/ && $osrel eq "") { @compatible_line=split(/\'/, $line); $machine=$compatible_line[1]; } if ($line =~ /value='.*AMD Opteron/ && $cputype eq "x86") { $cputype_prtconf=$line; $cputype_prtconf=~s/.*='//; $cputype_prtconf=~s/'//g; } $i++; } &multicore_cpu_cnt; if ($osrel eq "") { if ($BSD) { $osrel="4.X"; $config_cmd="/usr/etc/devinfo -pv"; $config_command="devinfo"; $cpucntfrom="devinfo"; } else { $osrel="5.X"; $solaris="2.X"; $config_cmd="/usr/sbin/prtconf -vp"; $config_command="prtconf"; } } #$sysfreq=$freq if ($sysfreq == 0 && $freq > 0); #$cpufreq=$sysfreq if ($sysfreq > $cpufreq && $ncpu > 0); @romverarr=split(/\./, $romvernum) if ($romver); $romvermajor=($romverarr[0]) ? $romverarr[0] : 2; $romverminor=($romverarr[1]) ? $romverarr[1] : 0; $romverminor=0 if ($romverminor eq "" || $romverminor eq "X"); if ($banner =~ /^ \(/) { # banner-name does not include the eeprom banner name. This happens # sometimes when OBP 3.23 is installed on Ultra-60/E220R and # Ultra-80/E420R systems. $bannermore="Ultra 60 or Enterprise 220R" if ($model eq "Ultra-60"); $bannermore="Ultra 80, Enterprise 420R or Netra t 1400/1405" if ($model eq "Ultra-80"); } # # SPARCengine systems # $ultra="AX" if ($motherboard =~ /501-3043/); $ultra="AX-300" if ($motherboard =~ /501-5037/); $ultra="AXi" if ($motherboard =~ /501-4559/); $ultra="AXmp" if ($banner =~ /UltraAX-MP/ || $model =~ /UltraAX-MP/ || $motherboard =~ /501-5296/ || $motherboard =~ /501-5487/ || $motherboard =~ /501-5670/); $ultra="AXmp+" if ($banner =~ /UltraAX-MP\+/ || $model =~ /UltraAX-MP\+/ || $motherboard =~ /501-4324/); $ultra="AXe" if ($banner =~ /UltraAXe\b/ || $model =~ /UltraAX-e\b/ || $motherboard =~ /375-0088/); $ultra="AX-e2" if ($banner =~ /Netra AX1105-500\b/ || $model =~ /UltraAX-e2\b/ || $motherboard =~ /375-0128/); $ultra="Netra X1" if ($banner =~ /Netra X1\b/ || $motherboard =~ /375-3015/); $ultra="Netra T1 200" if ($banner =~ /Netra T1 200\b/ || $motherboard =~ /375-0132/); $ultra="Sun Fire V100" if ($banner =~ /Sun Fire V100\b/); # Sun Fire V120/Netra 120 can use motherboard 375-0132 like Netra T1 200 above $ultra="Sun Fire V120" if ($banner =~ /Sun Fire V120\b/); $ultra="Netra 120" if ($banner =~ /Netra 120\b/); if ($ultra =~ /AX/) { if ($banner !~ /SPARCengine.*Ultra/) { $tmp="(SPARCengine Ultra $ultra)"; $bannermore=($bannermore) ? "$tmp $bannermore" : $tmp; } } if ($model =~ /Ultra-5_10\b/) { if ($banner =~ /\bVoyagerIIi\b/) { # Tadpole Voyager IIi has 8 DIMM slots, but prtconf reports # it as an Ultra 5/10 $model="VoyagerIIi"; $ultra="VoyagerIIi"; } } $ultra="Sun Blade 150" if ($banner =~ /Sun Blade 150\b/ || $diagbanner =~ /Sun Blade 150\b/); $ultra="UP-20" if ($banner =~ /\bUP-20\b/); # untested ??? $ultra="UP-520IIi" if ($motherboard =~ /501-4559/ && $banner =~ /\b520IIi\b/); $need_obp2=0; if ($model eq "Sun 4/20" || $model eq "Sun 4/25" || $model eq "Sun 4/40" || $model eq "Sun 4/50" || $model eq "Sun 4/60" || $model eq "Sun 4/65" || $model eq "Sun 4/75" || $model eq "SS-2") { $machine="sun4c"; $need_obp2=1 if ($model eq "Sun 4/40" || $model eq "Sun 4/60" || $model eq "Sun 4/65"); } &check_prtdiag if ($isX86); if ($isX86) { # Round up Solaris x86 memory (may have 128MB or more reserved) $installed_memory=&roundup_memory($installed_memory); } if ($gotmemory eq "" && $ultra eq 0 && $machine ne "sun4d" && $boardfound_mem eq 0) { &check_prtdiag; &show_header; if ($installed_memory) { print "total memory = "; &show_memory($installed_memory); } print "$permission_error\n" if ($permission_error); print "$prtconf_warn\n" if ($prtconf_warn ne ""); if ($prtdiag_failed == 2) { # non-global zone (container) print "WARNING: More details can be reported if memconf is run in the global zone.\n"; } else { print "ERROR: no 'memory' line in \"$config_cmd\" output.\n" if ($model ne "i86pc"); if (! $config_permission && $machine =~ /sun4/ && $prtconf_warn eq "") { print " This user "; print (($permission_error) ? "does" : "may"); print " not have permission to run $config_command.\n"; print " Try running memconf as a privileged user like root.\n" if ($uid ne "0"); } elsif ($need_obp2) { print " Upgrading from Open Boot PROM V1.X to V2.X will "; print "allow memconf to\n detect the memory installed.\n"; } elsif ($prtconf_warn =~ /openprom/) { print " Please correct the problem with the openprom device.\n" if ($model ne "i86pc"); } else { print " This is an unsupported system by memconf.\n" if ($model ne "i86pc"); } } &show_supported if ($machine !~ /sun4/); $exitstatus=1; &mailmaintainer if ($verbose == 3); exit $exitstatus; } $gotmemory=~s/\s+reg:\s+//; $gotmemory=~s/'//g; @slots=split(/\./, $gotmemory); $slot=1; if ($manufacturer ne "" && $manufacturer !~ /^Sun\b/ && $ultra !~ /SPARC Enterprise M[34589]000 Server/) { $bannermore=($bannermore) ? "$bannermore clone" : "clone" if ($manufacturer ne "Force Computers"); $modelmore=($modelmore) ? "$modelmore clone" : "clone"; $clone=1; } # DIMMs are installed in pairs on Ultra 1, 5 and 10; quads on # Ultra 2, 60, 80, 220R, 420R, 450; 8's in Ultra Enterprise # # On 64-bit systems, prtconf format is AAAAAAAA.AAAAAAAA.SSSSSSSS.SSSSSSSS # and on 32-bit systems, prtconf format is AAAAAAAA.AAAAAAAA.SSSSSSSS # where A is for Address, S is for Size. # Minimum module size is 1MB (0x00100000), so strip off last 5 hex digits of LSB # and prepend last 5 digits of MSB, which allows recognizing up to 4500TB! # if ($ultra) { $val0=3; # simmsize is in 3rd and 4th fields $valaddr=2; # address is 2 fields before simmsize $valinc=4; # fields per simm $memtype="DIMM"; } else { $val0=2; # simmsize is in 3rd field $valaddr=1; # address is 1 field before simmsize $valinc=3; # fields per simm } # # Define memory layout for specific systems # if ($model eq "Sun 4/20") { # SLC accepts 4MB SIMMs on motherboard # 501-1676 (4MB 100ns), 501-1698 (4MB 80ns) # 33-bit 72-pin Fast Page Mode (36-bit work also) # Does not support Open Boot PROM V2.X, so devinfo/prtconf output will # not have memory lines. $devname="OffCampus"; $untested=1; $simmrangex="00000010"; $simmbanks=4; $simmsperbank=1; @simmsizes=(4); @socketstr=("U0502","U0501","U0602","U0601"); } if ($model eq "Sun 4/25") { # ELC accepts 4MB or 16MB SIMMs on motherboard # 501-1698 or 501-1812 (4MB 80ns), 501-1822 (16MB 80ns) # 33-bit 72-pin Fast Page Mode (36-bit work also) $devname="NodeWarrior"; $untested=0; $simmrangex="00000010"; $simmbanks=4; $simmsperbank=1; @simmsizes=(4,16); @socketstr=("U0407".."U0410"); @bankstr=("MEM1".."MEM4"); } if ($model eq "Sun 4/40") { # IPC accepts 1MB or 4MB SIMMs on motherboard # 501-1697 (1MB 80ns), 501-1625 (4MB 100ns), 501-1739 (4MB 80ns) # Does not show memory with Open Boot PROM V1.X, but does with OBP V2.X $devname="Phoenix"; $untested=0; $simmrangex="00000010"; $simmbanks=3; $simmsperbank=4; @simmsizes=(1,4); @socketstr=("U0588","U0587","U0586","U0585","U0584","U0591","U0590","U0589","U0678","U0676","U0683","U0677"); @bankstr=(0,0,0,0,1,1,1,1,2,2,2,2); @bytestr=(0..3,0..3,0..3); } if ($model eq "Sun 4/50") { # IPX accepts 4MB or 16MB SIMMs on motherboard # 501-1812 (4MB 80ns), 501-1915 or 501-1822 (16MB 80ns) # 33-bit 72-pin Fast Page Mode (36-bit work also) $devname="Hobbes"; $untested=0; $simmrangex="00000010"; $simmbanks=4; $simmsperbank=1; @simmsizes=(4,16); @socketstr=("U0310","U0309","U0308","U0307"); @bankstr=(0..3); } if ($model eq "Sun 4/60" || $model eq "Sun 4/65") { # SS1 and SS1+ accepts 1MB or 4MB SIMMs on motherboard # 501-1408 (1MB 100ns), 501-1697 (SS1+ only) (1MB 80ns), # 501-1625 (4MB 100ns), 501-1739 (4MB 80ns) # Does not show memory with Open Boot PROM V1.X, but does with OBP V2.X if ($model eq "Sun 4/60") { $devname="Campus"; $untested=0; } else { $devname="CampusB, Campus+"; $untested=1; } $simmrangex="00000010"; $simmbanks=4; $simmsperbank=4; @simmsizes=(1,4); @socketstr=("U0588","U0587","U0586","U0585","U0584","U0591","U0590","U0589","U0678","U0676","U0683","U0677","U0682","U0681","U0680","U0679"); @bankstr=(0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3); @bytestr=(0..3,0..3,0..3,0..3); } if ($model eq "Sun 4/75" || $model eq "SS-2") { # SS2 accepts 4MB SIMMs on motherboard and 32MB or 64MB SBus expansion # card (501-1823 Primary and 501-1824 Secondary) # 501-1739 (4MB 80ns) $devname="Calvin"; $untested=0; $simmrangex="00000010"; $simmbanks=4; $simmsperbank=4; @simmsizes=(4); @socketstr=("U0311","U0309","U0307","U0322","U0312","U0310","U0308","U0321","U0313","U0314","U0315","U0320","U0319","U0318","U0317","U0316"); @bankstr=(0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3); @bytestr=(0..3,0..3,0..3,0..3); } if ($model =~ /SPARCclassic/ || $model =~ /SPARCstation-LX/) { # Classic-X (4/10) accepts 1MB, 2MB, 4MB and 16MB SIMMs on motherboard # Classic (4/15) and LX (4/30) accepts 4MB and 16MB SIMMs on motherboard # Can accept 32MB SIMMs in bank 1, allowing 128MB total (2x32, 4x16) # Possibly accepts 8MB SIMMs in bank 1 # 501-2289 (1MB), 501-2433 (2MB) on Classic-X only # 501-1991 (4MB), 501-2059 (16MB) # 36-bit 72-pin 60ns Fast Page Mode $devname="Sunergy"; if ($model =~ /SPARCclassic-X/) { $untested=1; @simmsizes=(1,2,4,8,16,32); } else { $untested=0; @simmsizes=(4,8,16,32); } $simmrangex="00000020"; $simmbanks=3; $simmsperbank=2; @socketstr=("U0304","U0303","U0301","U0302","U0402","U0401"); @bankstr=(1,1,2,2,3,3); } if ($model eq "S240") { # Voyager has 16MB on motherboard, plus accepts one or two 16MB or 32MB # Memory cards (501-2327 32MB, 501-2366 16MB) # Motherboard, address 0x00000000-0x007fffff, 0x01000000-0x017fffff # Lower slot=Mem 1, address 0x02000000-0x07ffffff # Upper slot=Mem 2, address 0x0a000000-0x0fffffff $devname="Gypsy"; $untested=0; $memtype="memory card"; $sockettype="slot"; $simmrangex="00000020"; $simmbanks=8; # Count the skipped address range $simmsperbank=1; @simmsizes=(16,32); @socketstr=("motherboard","Mem 1","Mem 1","Mem 1","?","Mem 2","Mem 2","Mem 2"); @orderstr=("","lower slot","lower slot","lower slot","?","upper slot","upper slot","upper slot"); } if ($model eq "JavaEngine1") { # Accepts 8MB, 16MB and 32MB EDO DIMMs $devname="Bali"; $untested=0; $memtype="DIMM"; $simmrangex="00000020"; $simmbanks=2; $simmsperbank=1; @simmsizes=(8,16,32); @socketstr=("J0501","J0502"); @bankstr=(0,1); } if ($model eq "SPARCstation-4") { # Accepts 8MB and 32MB SIMMs on motherboard # 501-2470 (8MB), 501-2471 (32MB) # 168-pin 60ns Fast Page Mode $devname="Perigee"; $untested=0; $simmrangex="00000020"; $simmbanks=5; $simmsperbank=1; @simmsizes=(8,32); @socketstr=("J0301".."J0305"); @bankstr=(0..4); } if ($model eq "SPARCstation-5" || $model eq "micro COMPstation 5" || $model =~ /Axil-255/ || $banner =~ /TWINstation 5G\b/) { # Accepts 8MB and 32MB SIMMs on motherboard # 501-2470 (8MB), 501-2471 (32MB) # 168-pin 60ns Fast Page Mode $devname="Aurora" if ($model eq "SPARCstation-5"); $untested=0; $simmrangex="00000020"; $simmbanks=8; $simmsperbank=1; @simmsizes=(8,32); @socketstr=("J0300".."J0303","J0400".."J0403"); @bankstr=(0..7); if ($banner =~ /TWINstation 5G\b/) { $simmbanks=6; @socketstr=(0..5); } if ($model ne "SPARCstation-5") { $bannermore="SPARCstation 5 clone"; $modelmore="SPARCstation 5 clone"; } } if ($model =~ /SPARCstation-10/ || $model eq "Premier-24" || $motherboard eq "SUNW,S10,501-2365") { # Accepts 16MB and 64MB SIMMs on motherboard # 501-1785 or 501-2273 (16MB 80ns), 501-2479 (16MB 60ns), # 501-2622 (32MB 60ns), 501-1930 (64MB 80ns), 501-2480 (64MB 60ns) # 200-pin 60ns or 80ns Fast Page Mode ECC # 32MB SIMMs not supported according to Sun, but appears to work fine # depending on the OBP revision. OBP 2.12 and older detects the 32MB # SIMM as 16MB, OBP 2.19 and later properly detects the 32MB SIMM. $devname="Campus2" if ($model =~ /SPARCstation-10/); $devname="Campus2+" if ($model =~ /Premier-24/); $untested=0; $simmrangex="00000040"; $simmbanks=8; $simmsperbank=1; $romvernum="2.X" if ($romvernum eq ""); $romverminor=0 if ($romverminor eq "" || $romverminor eq "X"); @simmsizes=(($romvermajor eq 2) && ($romverminor >= 19)) ? (16,32,64) : (16,64); @socketstr=("J0201","J0203","J0302","J0304","J0202","J0301","J0303","J0305"); @orderstr=("1st","3rd","4th","2nd","8th","6th","5th","7th"); @bankstr=(0..7); } if ($model =~ /SPARCstation-20/ || $model =~ /COMPstation-20S/ || $banner =~ /TWINstation 20G\b/) { # Accepts 16MB, 32MB and 64MB SIMMs on motherboard # 501-2479 (16MB), 501-2622 (32MB), 501-2480 (64MB) # 200-pin 60ns Fast Page Mode ECC $devname="Kodiak" if ($model eq "SPARCstation-20"); $untested=0; $simmrangex="00000040"; $simmbanks=8; $simmsperbank=1; @simmsizes=(16,32,64); @socketstr=("J0201","J0303","J0202","J0301","J0305","J0203","J0302","J0304"); @orderstr=("1st","2nd","3rd","4th","5th","6th","7th","8th"); @bankstr=(0..7); if ($model !~ /SPARCstation-20/) { $bannermore="SPARCstation 20 clone"; $modelmore="SPARCstation 20 clone"; } if ($model eq "SPARCstation-20I") { $bannermore="(SPARCstation-20I) clone"; $modelmore="clone"; } if ($banner =~ /TWINstation 20G\b/) { # @socketstr=("J0201","J0303","J0202","J0301","J0305","J0203","J0302","J0304"); # @orderstr=("1st","6th","2nd","4th","8th","3rd","5th","7th"); @socketstr=(0..7); @orderstr=(""); } } if ($model eq "SPARCsystem-600" || $model =~ /Sun.4.600/) { # Accepts 4MB or 16MB SIMMs on motherboard # Accepts 1MB, 4MB or 16MB SIMMs on VME expansion cards # A memory bank is 16 SIMMs of the same size and speed # Minimum memory configuration is 16 SIMMs in Bank 0 on the motherboard # Motherboard Bank 1 must be populated before adding expansion cards # Up to two VME memory expansion cards can be added # Use 4MB SIMM 501-1739-01 or 501-2460-01 # Use 16MB SIMM 501-2060-01 $devname="Galaxy"; $untested=0; $simmrangex="00000100"; $simmbanks=2; # 2 banks on CPU board, 4 banks on each expansion cards $simmsperbank=16; @simmsizes=(4,16); # Sockets, banks and bytes on motherboard @socketstr=("U1107","U1307","U1105","U1305","U1103","U1303","U1101","U1301","U1207","U1407","U1205","U1405","U1203","U1403","U1201","U1401","U1108","U1308","U1106","U1306","U1104","U1304","U1102","U1302","U1208","U1408","U1206","U1406","U1204","U1404","U1202","U1402"); @bankstr=(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1); @banksstr=("Motherboard bank 0","Motherboard bank 1"); @bytestr=("0L0","0L1","1L0","1L1","2L0","2L1","3L0","3L1","4L0","4L1","5L0","5L1","6L0","6L1","7L0","7L1","0H0","0H1","1H0","1H1","2H0","2H1","3H0","3H1","4H0","4H1","5H0","5H1","6H0","6H1","7H0","7H1"); # Sockets, banks and bytes on VME expansion cards @socketstr_exp=("U1501","U1503","U1505","U1507","U1601","U1603","U1605","U1607","U1701","U1703","U1705","U1707","U1801","U1803","U1805","U1807","U1502","U1504","U1506","U1508","U1602","U1604","U1606","U1608","U1702","U1704","U1706","U1708","U1802","U1804","U1806","U1808","U1901","U1903","U1905","U1907","U2001","U2003","U2005","U2007","U2101","U2103","U2105","U2107","U2201","U2203","U2205","U2207","U1902","U1904","U1906","U1908","U2002","U2004","U2006","U2008","U2102","U2104","U2106","U2108","U2202","U2204","U2206","U2208"); @bankstr_exp=("B0","B0","B0","B0","B0","B0","B0","B0","B0","B0","B0","B0","B0","B0","B0","B0","B1","B1","B1","B1","B1","B1","B1","B1","B1","B1","B1","B1","B1","B1","B1","B1","B2","B2","B2","B2","B2","B2","B2","B2","B2","B2","B2","B2","B2","B2","B2","B2","B3","B3","B3","B3","B3","B3","B3","B3","B3","B3","B3","B3","B3","B3","B3","B3"); @bytestr_exp=("0L0","0L1","1L0","1L1","2L0","2L1","3L0","3L1","4L0","4L1","5L0","5L1","6L0","6L1","7L0","7L1","0H0","0H1","1H0","1H1","2H0","2H1","3H0","3H1","4H0","4H1","5H0","5H1","6H0","6H1","7H0","7H1","8L0","8L1","9L0","9L1","aL0","aL1","bL0","bL1","cL0","cL1","dL0","dL1","eL0","eL1","fL0","fL1","8H0","8H1","9H0","9H1","aH0","aH1","bH0","bH1","cH0","cH1","dH0","dH1","eH0","eH1","fH0","fH1"); } if ($model eq "Ultra-1" || $ultra eq 1) { # Accepts 16MB, 32MB, 64MB or 128MB DIMMs on motherboard # 501-2479 (16MB), 501-2622 (32MB), 501-2480 or 501-5691 (64MB), # 501-3136 (128MB) # 200-pin 60ns Fast Page Mode ECC $devname="Neutron (Ultra 1), Electron (Ultra 1E), Dublin (Ultra 150)"; $familypn="A11 (Ultra 1), A12 (Ultra 1E)"; $untested=0; $simmrangex="00000100"; $simmbanks=4; $simmsperbank=2; @simmsizes=(16,32,64,128); @socketstr=("U0701","U0601","U0702","U0602","U0703","U0603","U0704","U0604"); @bankstr=("0L","0H","1L","1H","2L","2H","3L","3H"); @bytestr=("00-15","16-31","00-15","16-31","00-15","16-31","00-15","16-31"); } if ($model eq "Ultra-2" || $ultra eq 2) { # Accepts 16MB, 32MB, 64MB or 128MB DIMMs on motherboard $devname="Pulsar"; $familypn="A14"; $untested=0; $simmrangex="00000200"; $simmbanks=4; $simmsperbank=4; @simmsizes=(16,32,64,128); @socketstr=("U0501","U0401","U0701","U0601","U0502","U0402","U0702","U0602","U0503","U0403","U0703","U0603","U0504","U0404","U0704","U0604"); @groupstr=(0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3); @bankstr=("0L","0H","1L","1H","0L","0H","1L","1H","0L","0H","1L","1H","0L","0H","1L","1H"); @bytestr=("00-15","16-31","32-47","48-63","00-15","16-31","32-47","48-63","00-15","16-31","32-47","48-63","00-15","16-31","32-47","48-63"); } if ($model eq "Ultra-30" || $ultra eq 30) { # Also Netra t 1100 # Accepts 16MB, 32MB, 64MB or 128MB DIMMs on motherboard # 501-2479 (16MB), 501-2622 (32MB), 501-2480 or 501-5691 (64MB), # 501-3136 (128MB) # 200-pin 60ns Fast Page Mode ECC # Two DIMMs form a pair, two pairs of DIMMs form a quad. # Minumum requirements is two DIMMs in any adjacent pair. # DIMMs can be installed in any order of pairs. # Interleaving requires a fully populated quad. # Each quad addresses 512MB of memory. $devname="Quark (Ultra-30), Lightweight (Netra t 1100)"; $familypn="A16 (Ultra-30), N01 (Netra t 1100)"; $untested=0; # simmrangex, simmbanks, and simmsperbank set later after determining # if interleaving banks using quads rather than pairs @simmsizes=(16,32,64,128); @socketstr=("U0701","U0801","U0901","U1001","U0702","U0802","U0902","U1002","U0703","U0803","U0903","U1003","U0704","U0804","U0904","U1004"); @bankstr=("Quad 0 Pair 0","Quad 0 Pair 0","Quad 0 Pair 1","Quad 0 Pair 1","Quad 1 Pair 0","Quad 1 Pair 0","Quad 1 Pair 1","Quad 1 Pair 1","Quad 2 Pair 0","Quad 2 Pair 0","Quad 2 Pair 1","Quad 2 Pair 1","Quad 3 Pair 0","Quad 3 Pair 0","Quad 3 Pair 1","Quad 3 Pair 1"); } if ($model eq "Ultra-5_10" || $ultra eq "5_10" || $ultra eq 5 || $ultra eq 10) { # Accepts 16MB, 32MB, 64MB, 128MB or 256MB DIMMs on motherboard # 16MB DIMM uses 10-bit column addressing and was not sold # 32, 64, 128 and 256MB DIMMs use 11-bit column addressing # Do not mix 16MB DIMMs with other sizes # 256MB DIMM not supported in Ultra 5 according to Sun documentation, # but they do work as long as you use low-profile DIMMs or take out the # floppy drive. # Memory speed is 60ns if 50ns and 60ns DIMMs are mixed # 2-way interleaving supported with four identical sized DIMMs # 50ns DIMMs supported on 375-0066 & 375-0079 motherboards # Bank 0 DIMM1/DIMM2 0x00000000-0x0fffffff, 0x20000000-0x2fffffff # Bank 1 DIMM3/DIMM4 0x10000000-0x1fffffff, 0x30000000-0x3fffffff $devname="Darwin/Otter (Ultra 5), Darwin/SeaLion (Ultra 10)"; $familypn="A21 (Ultra 5), A22 (Ultra 10)"; $untested=0; $simmrangex="00000100"; $simmbanks=2; $simmsperbank=2; @simmsizes=(16,32,64,128,256); @socketstr=("DIMM1".."DIMM4"); @bankstr=("0L","0H","1L","1H"); $sortslots=0; } if ($model eq "Ultra-60" || $ultra eq 60 || $ultra eq "220R") { # Also Netra t1120/1125 # Accepts 16MB, 32MB, 64MB or 128MB DIMMs on motherboard # 501-2479 (16MB), 501-2622 (32MB), 501-2480 or 501-5691 (64MB), # 501-3136 (128MB) # 200-pin 60ns Fast Page Mode ECC # U1001-U1004 bank 3 address 0xa0000000-0xbfffffff # U0901-U0904 bank 2 address 0x80000000-0x9fffffff # U0801-U0804 bank 1 address 0x20000000-0x3fffffff # U0701-U0704 bank 0 address 0x00000000-0x1fffffff if ($model eq "Ultra-60" || $ultra eq 60) { $devname="Deuterium (Ultra-60), Lightweight 2 (Netra t112x)"; $familypn="A23 (Ultra-60), N02/N04 (Netra t1120), N03 (Netra t1125)"; } if ($ultra eq "220R") { $devname="Razor"; $familypn="A34"; } $untested=0; $simmrangex="00000200"; $simmbanks=6; # Count the skipped address range $simmsperbank=4; @simmsizes=(16,32,64,128); @socketstr=("U0701".."U0704","U0801".."U0804","?","?","?","?","?","?","?","?","U0901".."U0904","U1001".."U1004"); @bankstr=(0,0,0,0,1,1,1,1,"?","?","?","?","?","?","?","?",2,2,2,2,3,3,3,3); } # # SPARCengine systems # if ($banner =~ /Netra t1\b/ || $ultra eq "Netra t1" || $model eq "Netra t1" || $banner =~ /Ultra CP 1500\b/ || $ultra eq "CP1500" || $ultra eq "Netra ct400" || $ultra eq "Netra ct410" || $ultra eq "Netra ct800" || $ultra eq "Netra ct810") { # Netra t1 100/105, Netra ct400/410/800/810, SPARCengine CP1500 # Accepts 1 or 2 64MB, 128MB, 256MB or 512MB mezzanine memory cards # Netra ct400/800 use the Netra ct1600 DC chassis (N08) # Netra ct410/810 use the Netra ct1600 AC chassis (N09) # Also used in Sun Fire 12K & Sun Fire 15K # Install the highest capacity memory board first # The 370-4155 was sold for use in the Netra t1 100/105 # Up to four 370-4155 256MB memory boards can be installed # Only one 370-4155 can be mixed with any other memory boards # Cannot distinguish between 4 370-4155 256MB and 2 512MB memory boards # Maximum memory: 768MB for 270MHz/33MHz, 1GB for 360MHz/440MHz systems # # Top slot -> 64MB 64MB 128MB 128MB 256MB 256MB 512MB # Bottom slot SSF SS DSF SS SSF SS DSF SS DSF DS DSF SS DSF DS # | # v ------ ------ ------ ------ ------ ------ ------ # 64MB SSF SS Y N Y N N Y N # 64MB DSF SS Y Y Y Y Y Y Y # 128MB SSF SS Y N Y N N Y N # 128MB DSF SS Y Y Y Y Y Y Y # 256MB DSF SS Y Y Y Y Y Y Y # 512MB DSF DS Y/N * Y/N * Y/N * Y/N * Y/N * Y/N * Y/N * # # SSF=single-sided fab, DSF=double-sided fab # SS=stuffed on one side, DS=stuffed on both sides # * 512MB DSF DS board is supported on 360MHz and 440MHz systems, # 512MB DSF DS board is not supported on 270MHz and 333MHz systems # Lower board, address 0x00000000-0x0fffffff, 0x20000000-0x2fffffff # upper board, address 0x10000000-0x1fffffff, 0x30000000-0x3fffffff if ($banner =~ /Netra t1\b/ || $ultra eq "Netra t1" || $model eq "Netra t1") { $devname="Flyweight (Model 100), Flapjack (Model 105)"; $familypn="N07 (Model 100), N06 (Model 105)"; } $devname="Tonga" if ($ultra eq "Netra ct400"); $devname="Monte Carlo" if ($ultra eq "Netra ct800"); $familypn="N08" if ($ultra =~ /Netra ct[48]00/); if ($ultra =~ /Netra ct[48]10/) { $devname="Makaha"; $familypn="N09"; } $untested=0; $untested=1 if ($ultra eq "Netra ct400" || $ultra =~ /Netra ct[48]10/); $memtype="memory card"; $sockettype=""; $simmrangex="00000100"; $simmbanks=2; $simmsperbank=1; @simmsizes=(64,128,256,512); @socketstr=("base mezzanine board","additional mezzanine board"); @orderstr=("lower board","upper board"); $sortslots=0; } if ($banner =~ /Ultra CP 1400\b/ || $ultra eq "CP1400") { # Accepts 1 or 2 64MB, 128MB, 256MB or 512MB mezzanine memory cards # Has 64MB on-board memory on motherboard # Maximum memory: 832MB (64MB motherboard, 512MB bottom, 256MB top) # # Top slot -> 64MB 64MB 128MB 128MB 256MB 512MB # Bottom slot SSF SS DSF SS SSF SS DSF SS DSF SS DSF DS # | # v ------ ------ ------ ------ ------ ------ # 64MB SSF SS Y N Y N Y N # 64MB DSF SS Y Y Y Y Y N # 128MB SSF SS Y N Y N Y N # 128MB DSF SS Y Y Y Y Y N # 256MB DSF SS Y Y Y Y Y N # 512MB DSF DS Y Y Y Y Y N # # SSF=single-sided fab, DSF=double-sided fab # SS=stuffed on one side, DS=stuffed on both sides # 512MB DSF DS board is only supported in bottom slot # # Motherboard, address 0x00000000-0x03ffffff # Upper board, address 0x08000000-0xffffffff, 0x28000000-0x2fffffff # Lower board, address 0x10000000-0x17ffffff, 0x30000000-0x37ffffff $devname="Casanova"; $untested=0; $memtype="memory card"; $sockettype=""; $simmrangex="00000080"; $simmbanks=3; $simmsperbank=1; @simmsizes=(64,128,256,512); @socketstr=("motherboard","additional mezzanine board","base mezzanine board"); @orderstr=("","upper board","lower board"); $sortslots=0; } if ($ultra eq "AX" || $ultra eq "AX-300") { # SPARCengine Ultra AX and AX-300 # Accepts 8MB, 16MB, 32MB or 64MB DIMMs on motherboard # AX-300 also accepts 128MB DIMMs on motherboard $devname="Photon"; $untested=0; # unsure if socket order is correct $simmrangex="00000200"; $simmbanks=2; $simmsperbank=4; @simmsizes=(8,16,32,64,128); @socketstr=("U0301".."U0304","U0401".."U0404"); @bankstr=(0,0,0,0,1,1,1,1); } if ($ultra eq "AXi") { # SPARCengine Ultra AXi # Accepts 8MB, 16MB, 32MB, 64MB or 128MB single or dual bank 10-bit # column address type DIMMs on motherboard in all socket pairs # Accepts 8MB, 16MB, 32MB, 64MB, 128MB or 256MB dual bank 11-bit # column address type DIMMs on motherboard in Pairs 0 & 2 # (leave Pairs 1 & 3 empty) # DIMMs should be chosen as all 10-bit or all 11-bit column address type # Use 60ns DIMMs only #$devname="unknown"; $untested=0; $simmrangex="00000100"; $simmbanks=4; $simmsperbank=2; @simmsizes=(8,16,32,64,128,256); @socketstr=("U0404","U0403","U0304","U0303","U0402","U0401","U0302","U0301"); @bankstr=(0,0,2,2,1,1,3,3); $sortslots=0; } if ($ultra eq "AXmp" || $ultra eq "AXmp+") { # SPARCengine Ultra AXmp # Accepts 8MB, 16MB, 32MB, 64MB or 128MB DIMMs on motherboard # Accepts 256MB dual-bank DIMMs in bank 0 or 1 (not both) # Can't distinguish dual-bank DIMMs from two banks of single bank DIMMs # SPARCengine Ultra AXmp+ # Accepts 8MB, 16MB, 32MB, 64MB, 128MB or 256MB DIMMs on motherboard # Accepts dual-bank DIMMs in both bank 0 and 1 # Can't distinguish dual-bank DIMMs from two banks of single bank DIMMs $devname="Crichton"; $untested=0; $simmbanks=2; $simmsperbank=8; if ($ultra eq "AXmp+") { $simmrangex="00000400"; @simmsizes=(8,16,32,64,128,256); } else { $simmrangex="00000800"; @simmsizes=(8,16,32,64,128); } @socketstr=("U0701".."U0704","U0801".."U0804","U0901".."U0904","U1001".."U1004"); @bankstr=(0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1); $sortslots=0; } if ($ultra eq "AXe") { # SPARCengine Ultra AXe # Accepts 32MB, 64MB, 128MB or 256MB single or dual bank DIMMs # DIMMs should be chosen as all 10-bit or all 11-bit column address type $devname="Topdog"; $untested=0; $simmrangex="00000100"; $simmbanks=2; $simmsperbank=2; @simmsizes=(32,64,128,256); @socketstr=("DIMM3","DIMM4","DIMM1","DIMM2"); @bankstr=(0,0,1,1); # Assume stacked DIMMs like AXi since only 128MB DIMMs have been tested $sortslots=0; } if ($ultra eq "AX-e2") { # Netra AX1105-500 # Accepts up to 4 64MB, 128MB, 256MB or 512MB registered SDRAM PC133 # DIMMs; 128MB Minimum, 2GB Maximum # DIMM0 & DIMM1 form Bank 0, DIMM2 & DIMM3 form Bank 1 # DIMMs don't have to be installed as pairs $devname="Birdsnest Lite"; $untested=0; $simmrangex="00000200"; $simmbanks=4; $simmsperbank=1; @simmsizes=(64,128,256,512); @socketstr=("DIMM0".."DIMM3"); @bankstr=(0,0,1,1); } if ($ultra eq "Netra X1" || $ultra eq "Sun Fire V100") { # Netra X1, Sun Fire V100, UltraAX-i2 # Accepts up to 4 128MB or 256MB PC133 DIMMs for 1GB maximum # 500MHz model also accepts up to 4 512MB PC133 DIMMs for 2GB maximum # Have seen slower models also work with 512MB DIMMs for 2GB maximum # Sun Fire V100 is 500MHz only # The memory installation sequence is Slot 3, 2, 1, and 0. # Each DIMM slot addresses 512MB with 400MHz UltraSPARC IIe # Each DIMM slot addresses 1GB with >= 550MHz UltraSPARC IIe # Memory is SDRAM PC133 CL=3 ECC registered # When equal size DIMMs are installed, the lowest slot number is # mapped to the lowest address range. # When mixed size DIMMs are installed, the slot number with the largest # size DIMM is mapped to the lowest address range. $devname="Flapjack-lite" if ($ultra eq "Netra X1"); $devname="Flapjack-liteCD500" if ($ultra eq "Sun Fire V100"); $familypn="N19"; $untested=0; $simmrangex=($cpufreq > 520) ? "00000400" : "00000200"; $simmbanks=4; $simmsperbank=1; @simmsizes=(128,256,512); @socketstr=("DIMM0".."DIMM3"); } if ($ultra eq "Netra T1 200" || $ultra eq "Sun Fire V120" || $ultra eq "Netra 120") { # Netra T1 200, Sun Fire V120, Netra 120, UltraAX-i2 # Accepts up to 4 256MB, 512MB or 1GB PC133 DIMMs for 4GB maximum # Sun Fire V120 is 550MHz or 650MHz # Netra 120 is same platform as Sun Fire V120, but is 650MHz only # Memory is SDRAM PC133 CL=3 ECC registered # The minimum memory requirement is one DIMM in Slot 0 # The memory installation sequence is Slot 0, 1, 2, 3 # Each DIMM slot addresses 512MB of memory with 500MHz UltraSPARC IIe # Each DIMM slot addresses 1GB of memory with >= 550MHz UltraSPARC IIe # When equal size DIMMs are installed, the lowest slot number is # mapped to the lowest address range. # When mixed size DIMMs are installed, the slot number with the largest # size DIMM is mapped to the lowest address range. if ($ultra eq "Netra T1 200") { $devname="Flapjack2"; $familypn="N21"; } if ($ultra eq "Sun Fire V120" || $ultra eq "Netra 120") { $devname="Flapjack2+"; $familypn="N25"; } $untested=0; $simmrangex=($cpufreq > 520) ? "00000400" : "00000200"; $simmbanks=4; $simmsperbank=1; @simmsizes=(256,512,1024); @socketstr=("DIMM0".."DIMM3"); } if ($banner =~ /\bCP2000\b/ || $ultra =~ /^CP2[01]\d0$/) { # Netra CP2000/CP2100 Series CompactPCI Boards (UltraSPARC-IIe) # CP2040 (SUNW,UltraSPARC-IIe-NetraCT-40) supports 256MB, 512MB, and 1GB # CP2060 (SUNW,UltraSPARC-IIe-NetraCT-60) has non-expandable 512MB # CP2080 (SUNW,UltraSPARCengine_CP-80) supports 256MB, 512MB, and 1GB # CP2140 (SUNW,UltraSPARCengine_CP-40) supports 512MB, 1GB and 2GB # CP2160 (SUNW,UltraSPARCengine_CP-60) supports 1GB and 2GB # 256MB Single-Wide module 375-3024 # 512MB Single-Wide module 375-3025 # 1GB Double-Wide module 375-3026 # 1GB Single-Wide module 375-3125 # 2GB Double-Wide module 375-3114 # Max number of stacked memory boards is two # Install double wide memory first, then single wide memory $devname="Othello" if ($ultra eq "CP2040"); $devname="Sputnik Bluesky" if ($ultra eq "CP2060"); $devname="Sputnik Orion" if ($ultra eq "CP2080"); $devname="Othello+" if ($ultra eq "CP2140"); $devname="Sputnik+" if ($ultra eq "CP2160"); $untested=1; $untested=0 if ($ultra eq "CP2140"); if ($ultra eq "CP2060") { $memtype="embedded memory"; $sockettype=""; $simmrangex="00001000"; $simmbanks=1; $simmsperbank=1; @simmsizes=(512); } else { $memtype="memory card"; $sockettype=""; $simmrangex="00001000"; $simmbanks=2; $simmsperbank=1; if ($ultra eq "CP2140") { @simmsizes=(512,1024,2048); } elsif ($ultra eq "CP2160") { @simmsizes=(1024,2048); } else { @simmsizes=(256,512,1024); } @socketstr=("base mezzanine board","additional mezzanine board"); @orderstr=("lower board","upper board"); $sortslots=0; } } # # Clones: most do not have verbose output since I don't have any socket data # on them # if ($ultra eq "axus250" || $modelmore =~ /Ultra-250/) { # AXUS Microsystems, Inc. http://www.axus.com.tw # AXUS 250 clone # accepts up to 128MB DIMMs on motherboard $untested=0; $simmrangex="00000200"; $simmbanks=4; $simmsperbank=4; @simmsizes=(8,16,32,64,128); @socketstr=("U0501","U0601","U0701","U0801","U0502","U0602","U0702","U0802","U0503","U0603","U0703","U0803","U0504","U0604","U0704","U0804"); @bankstr=(0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3); } if ($model =~ /SPARC CPU-/ || $model =~ /SPARC CPCI-/) { # Force Computers, http://www.forcecomputers.com # model format: "SPARC CPU-5V/64-110-X" for 64MB w/ 110MHz CPU $untested=1; $untested=0 if ($model =~ /SPARC CPU-/); if ($model =~ /\/${installed_memory}-/) { $totmem=$installed_memory; push(@simmsizesfound, "$totmem"); $buffer="motherboard contains ${totmem}MB on-board memory\n"; &finish; } } if ($model =~ /Axil/) { # RAVE Computer Association, http://rave.com $untested=1; $untested=0 if ($model =~ /Axil-245/); $untested=0 if ($model =~ /Axil-255/); $untested=0 if ($model =~ /Axil-311/); $untested=0 if ($model =~ /Axil-320/); } if ($manufacturer =~ /Tadpole/) { # Tadpole RDI, http://www.tadpole.com $untested=1; $untested=0 if ($banner =~ /Tadpole S3/); $untested=0 if ($model =~ /PowerLite-170/); $untested=0 if ($banner =~ /\bVoyagerIIi\b/); $untested=0 if ($banner =~ /\bCycleQUAD\b/); if ($ultra eq "UP-20") { # Cycle UP-20 to upgrade SPARCstation 5/20 motherboards # Accepts 16MB, 32MB and 64MB SIMMs from SPARCstation 20 # Install SIMMs in pairs to form each bank $untested=1; $simmrangex="00000040"; $simmbanks=4; $simmsperbank=2; @simmsizes=(16,32,64); @bankstr=(0,0,1,1,2,2,3,3); } if ($ultra eq "UP-520IIi") { # Cycle UP-520-IIi to upgrade SPARCstation 5/20 motherboards # Accepts 8MB, 16MB, 32MB, 64MB, 128MB and 256MB DIMMs $untested=0; $simmrangex="00000200"; $simmbanks=4; $simmsperbank=2; @simmsizes=(8,16,32,64,128,256); @socketstr=("J301".."J304"); @bankstr=(0,0,1,1); } if ($banner =~ /\bSPARCLE\b/) { # UltraSPARC-IIe at 440MHz, 500MHz, or 650MHz # 256MB - 2GB ECC SDRAM, two slots, PC-133, 144-pin SO-DIMMs $untested=0; $simmbanks=2; $simmsperbank=1; @simmsizes=(128,256,512,1024); @socketstr=("DIMM0","DIMM1"); $memtype="SO-DIMM"; } } if ($manufacturer eq "Auspex") { # Auspex Netserver, http://www.auspex.com $memtype="Memory Module"; $untested=1; $untested=0 if ($model eq "SPARC Processor"); if ($osrel =~ /^5./) { $untested=1; # Untested with Solaris 2.X $untested_type="OS"; } } if ($manufacturer =~ /Fujitsu/) { # Hal Computer Systems, a Fujitsu Company, http://www.hal.com # Fujitsu Siemens, http://www.fujitsu-siemens.com $untested=1; $untested=0 if ($model =~ /S-4\/10H/ || $model =~ /S-4\/20[ABLH]/); if ($banner =~ /GP7000\b/ || $banner =~ /GP7000F\b/) { $untested=0; if ($slotname0 =~ /SLOT[0-9]/) { # M200 # Up to 4GB of memory # System board has 16 DIMM slots, #00 - #15 # Banks - 0,0,1,1,2,2,2,2,3,3,3,3,4,4,4,4 # First Modules installed in Bank 0, slots 0-1 # Second Modules Installed in Bank 1, slots 2-3 # Modules in Bank 0 and 1 must be same size # Subsequent memory expansion installed in sets of four # modules in Bank 2 - 4 (Slots 4-7, 8-11, 12-15) @socketstr=("SLOT0".."SLOT9","SLOT10".."SLOT15"); } if ($slotname0 =~ /SLOT[AB][0-9]/) { # M400 and M600 # Up to 4GB of memory # System board has 32 DIMM slots, #00 - #15 Group A & B # Banks - 0,0,1,1,2,2,2,2,3,3,3,3,4,4,4,4 # First Modules installed in Bank 0 Group A, slots 0-1 # Second Modules installed in Bank 0 Group B, slots 0-1 # Modules in Group A and B must be same size # Next memory expansion installs in Bank 1 Group A & B, # slots 2-3 using modules of same size as Bank 0 # Subsequent memory expansion installed in sets of eight # modules in Bank 2 - 4 (Slots 4-7, 8-11, 12-15) in # both Group A and B @socketstr=("SLOTA0".."SLOTA9","SLOTA10".."SLOTA15","SLOTB0".."SLOTB9","SLOTB10".."SLOTB15"); } } if ($banner =~ /PRIMEPOWER *100N?\b/) { # PRIMEPOWER100N, 1U rack mount # Up to 2GB of memory # 4 memory module slots # 100MHz SDRAM ECC # Mount memory modules in order from memory module slot 0 $untested=1; } if ($banner =~ /PRIMEPOWER *[246]00\b/) { # Up to 8GB of memory # Each system board has 16 DIMM slots, #00 - #15 # Four banks of 4 (0-3,4-7,8-11,12-15) # PrimePower 200 and 400 use 1 system board # PrimePower 600 uses 2 system boards (00, 01) $untested=0; foreach $brd ("00","01") { if ($gotcpuboards =~ /\b$brd\b/) { if ($gotmodulenames =~ /${brd}-SLOT[0-9]/) { foreach $i (0..15) { push(@socketstr, ("${brd}-SLOT$i")); } } } } } if ($banner =~ /PRIMEPOWER *800\b/ || $banner =~ /PRIMEPOWER *1000\b/ || $banner =~ /PRIMEPOWER *2000\b/) { # 1-4 SPARC64 GP CPUs / system board # PrimePower 800 can have 4 system boards per system # PrimePower 1000 can have 8 system boards per system # PrimePower 2000 can have 32 system boards per system # Minimum Memory: 1GB / system board, 2GB / system # Maximum Memory: 8GB / system board, 32GB / system # 32 or 16 memory modules per system board, installed in quads $untested=0; @simmsizes=(128,256,512); foreach $brd ("00".."77") { if ($gotcpuboards =~ /\b$brd\b/) { if ($gotmodulenames =~ /${brd}-SLOT#[AB][0-9]/) { foreach $j ("A","B") { foreach $i ("00".."03","10".."13","20".."23","30".."33") { push(@socketstr, ("${brd}-SLOT#$j$i")); } } } } } } if ($banner =~ /PRIMEPOWER *250\b/) { # Pedestal, 2U or 4U rack mount # 1-2 SPARC64 V processors at 1.1GHz, 1.32GHz, 1.87GHz # 1GB-16GB DDR-SDRAM memory with ECC, 2-way, 8 DIMM slots $untested=0; @simmsizes=(256,512,1024,2048); foreach $i ("00".."07") { push(@socketstr, ("SLOT#$i")); } } if ($banner =~ /PRIMEPOWER *450\b/) { # Pedestal, 4U or 7U rack mount # 1-4 SPARC64 V processors at 1.1GHz, 1.32GHz, 1.87GHz # 1GB-32GB DDR-SDRAM memory with ECC, 4-way, 16 DIMM slots $untested=0; @simmsizes=(256,512,1024,2048); foreach $i ("00".."15") { push(@socketstr, ("SLOT#$i")); } } if ($banner =~ /PRIMEPOWER *[68]50\b/) { # PrimePower 650: 2-8 SPARC64 V processors at 1.1GHz or faster # 2GB-64GB memory, 8-way, 1 system board, 8U rack mount # PrimePower 850: 4-16 SPARC64 V processors at 1.1GHz or faster # 2GB-128GB memory, 16-way, 2 system boards, 16U rack mount # Uses DDR SDRAM ECC memory in 256MB, 512MB and 1GB sizes # Each system board has 32 memory module slots, layed out # with 4 DIMMs on 8 DIMM riser cards. $untested=0; @simmsizes=(256,512,1024,2048); foreach $brd ("C0S00","C0S01") { if ($gotcpuboards =~ /\b$brd\b/) { if ($gotmodulenames =~ /${brd}-SLOT#[A-D][0-9]/) { foreach $j ("A".."D") { foreach $i ("00".."07") { push(@socketstr, ("${brd}-SLOT#$j$i")); } } } } } } if ($banner =~ /PRIMEPOWER *HPC2500\b/ || $banner =~ /PRIMEPOWER *900\b/ || $banner =~ /PRIMEPOWER *[12]500\b/) { # SPARC64 V CPUs at 1.3GHz or 1.89GHz # PRIMEPOWER HPC2500 / 2500 # 2-8 CPUs / system board, 64-128 / system # Up to 16 8-way system boards / system # Up to 1024GB DDR-SDRAM memory with ECC, 128-way # Minimum Memory: 4GB / system board, 4GB / system # Maximum Memory: 64GB / system board, 1024GB / system # PRIMEPOWER 900 # 17U rack mount # 1-8 CPUs / system board, 1-16 / system # Up to 2 8-way system boards / system # Up to 128GB DDR-SDRAM memory with ECC, 8-way # Minimum Memory: 2GB / system board, 2GB / system # Maximum Memory: 64GB / system board, 128GB / system # PRIMEPOWER 1500 # 1-8 CPUs / system board, 1-32 / system # Up to 4 8-way system boards / system # Up to 256GB DDR-SDRAM memory with ECC, 8-way # Minimum Memory: 2GB / system board, 2GB / system # Maximum Memory: 64GB / system board, 256GB / system $untested=0; @simmsizes=(256,512,1024,2048); foreach $cab ("C0S","C1S") { foreach $brd ("00".."07") { if ($gotcpuboards =~ /\b$cab$brd\b/) { foreach $j ("A","B") { foreach $i ("00".."15") { push(@socketstr, ("$cab${brd}-SLOT#$j$i")); } } } } } } } if ($model =~ /COMPstation.10/) { # Tatung Science and Technology, http://www.tsti.com # Accepts 16MB and 64MB SIMMs on motherboard # Bank 0 must be filled first # Layout is like SPARCstation-10, but I don't know if it can accept # 32MB SIMMs or NVSIMMs $untested=0; $simmrangex="00000040"; $simmbanks=8; $simmsperbank=1; @simmsizes=(16,64); @socketstr=("J0201","J0203","J0302","J0304","J0202","J0301","J0303","J0305"); @bankstr=(0,2,4,6,1,3,5,7); } if ($model =~ /COMPstation-20A\b/) { # Tatung Science and Technology, http://www.tsti.com # Accepts 16MB, 32MB and 64MB SIMMs on motherboard $untested=1; $simmrangex="00000040"; $simmbanks=8; $simmsperbank=1; @simmsizes=(16,32,64); @socketstr=("J0201","J0304","J0203","J0302","J0303","J0301","J0305","J0202"); @orderstr=("1st","2nd","3rd","4th","5th","6th","7th","8th"); @bankstr=(1..8); } if ($model =~ /COMPstation-20AL/) { # Tatung Science and Technology, http://www.tsti.com # Accepts 16MB, 32MB and 64MB SIMMs on motherboard $untested=0; $simmrangex="00000040"; $simmbanks=8; $simmsperbank=1; @simmsizes=(16,32,64); @socketstr=("J0201","J0203","J0302","J0304","J0202","J0301","J0303","J0305"); @orderstr=("1st","2nd","3rd","4th","5th","6th","7th","8th"); @bankstr=(0..7); } if ($banner =~ /COMPstation_U60_Series/ || $banner =~ /COMPstation_U80D_Series/) { # Tatung Science and Technology, http://www.tsti.com # Accepts 16MB, 32MB, 64MB, 128MB or 256MB DIMMs on motherboard # 4 banks with 4 DIMMs per bank $untested=0; if ($banner =~ /COMPstation_U60_Series/) { $simmrangex="00000200"; # use "00000400" with 256MB DIMMs $simmbanks=6; # Count the skipped address range } else { $simmrangex="00000400"; $simmbanks=4; } $simmsperbank=4; @simmsizes=(16,32,64,128,256); } if ($model =~ /\bVoyagerIIi\b/) { # Tadpole Voyager IIi has 8 DIMM slots, but otherwise appears # to look like an Ultra 5. It allows 256MB to 1GB of memory. $untested=0; $simmrangex="00000100"; $simmbanks=4; $simmsperbank=2; @simmsizes=(16,32,64,128); @socketstr=("DIMM1","DIMM2","DIMM5","DIMM6","DIMM3","DIMM4","DIMM7","DIMM8"); $sortslots=1; } # # systems below may have memory information available in prtdiag output # if ($model eq "SPARCserver-1000" || $model eq "SPARCcenter-2000") { $devname="Scorpion" if ($model eq "SPARCserver-1000"); $devname="Scorpion+" if ($banner =~ "1000E"); $devname="Dragon" if ($model eq "SPARCcenter-2000"); $devname="Dragon+" if ($banner =~ "2000E"); # Accepts 8MB and 32MB SIMMs on motherboard $untested=0; @simmsizes=(8,32); $prtdiag_has_mem=1; &check_prtdiag; if ($boardfound_mem) { foreach $line (@boards_mem) { if ($line =~ /Board/) { $boardslot_mem=substr($line,5,1); $simmsize=int substr($line,46,3) / 4; if ($simmsize == 0) { &found_empty_bank("Group 0"); } elsif ($simmsize == 1) { &found_nvsimm_bank("Group 0"); } else { push(@simmsizesfound, "$simmsize"); } $simmsize=int substr($line,54,3) / 4; if ($simmsize == 0) { &found_empty_bank("Group 1"); } elsif ($simmsize == 1) { &found_nvsimm_bank("Group 1"); } else { push(@simmsizesfound, "$simmsize"); } $simmsize=int substr($line,62,3) / 4; if ($simmsize == 0) { &found_empty_bank("Group 2"); } elsif ($simmsize == 1) { &found_nvsimm_bank("Group 2"); } else { push(@simmsizesfound, "$simmsize"); } $simmsize=int substr($line,70,3) / 4; if ($simmsize == 0) { &found_empty_bank("Group 3"); } elsif ($simmsize == 1) { &found_nvsimm_bank("Group 3"); } else { push(@simmsizesfound, "$simmsize"); } } } &show_header; print @boards_mem; print "Each memory unit group is comprised of 4 SIMMs\n"; $empty_banks=" None" if ($empty_banks eq ""); print "empty memory groups:$empty_banks\n"; } else { &show_header; $recognized=0; } $totmem=$installed_memory; &finish; exit; } if ($model eq "Ultra-4" || $ultra eq 450 || $model eq "Ultra-4FT" || $ultra eq "Netra ft1800") { # Accepts 32MB, 64MB, 128MB or 256MB DIMMs on motherboard # 16MB DIMMs are not supported and may cause correctable ECC errors # 501-2622 (32MB), 501-2480 or 501-5691 (64MB), 501-3136 (128MB), # 501-4743 or 501-5896 (256MB) # 200-pin 60ns Fast Page Mode ECC # Netra ft1800 is based on Ultra 450 $devname="Tazmo (Tazmax/Tazmin)"; $familypn="A20, A25"; $familypn="N05" if ($model eq "Ultra-4FT" || $ultra eq "Netra ft1800"); $untested=0; $simmrangex="00000400"; $simmbanks=4; $simmsperbank=4; @simmsizes=(16,32,64,128,256); @socketstr=("U1901".."U1904","U1801".."U1804","U1701".."U1704","U1601".."U1604"); @groupstr=("A","A","A","A","B","B","B","B","C","C","C","C","D","D","D","D"); @bankstr=(2,2,2,2,3,3,3,3,0,0,0,0,1,1,1,1); } if ($model eq "Ultra-250" || $ultra eq 250) { # Accepts 16MB, 32MB, 64MB, or 128MB DIMMs on motherboard # 501-2479 (16MB), 501-2622 (32MB), 501-2480 or 501-5691 (64MB), # 501-3136 (128MB) # 200-pin 60ns Fast Page Mode ECC $devname="Javelin"; $familypn="A26"; $untested=0; $simmrangex="00000200"; $simmbanks=4; $simmsperbank=4; @simmsizes=(16,32,64,128); @socketstr=("U0701","U0801","U0901","U1001","U0702","U0802","U0902","U1002","U0703","U0803","U0903","U1003","U0704","U0804","U0904","U1004"); @bankstr=("A","A","A","A","B","B","B","B","C","C","C","C","D","D","D","D"); } if ($model eq "Ultra-80" || $ultra eq 80 || $ultra eq "420R" || $ultra eq "Netra t140x") { # Accepts 64MB or 256MB DIMMs # 501-5691 (64MB), 501-4743 501-5936 501-6005 501-6056 (256MB) # 200-pin 60ns 5V Fast Page Mode ECC, 576 bits data width # 64MB DIMMs same as in Ultra-60, 256MB DIMMs same as in Enterprise-450 # U0403,U0404,U1403,U1404 bank 3 address 0xc0000000-0xffffffff # U0303,U0304,U1303,U1304 bank 2 address 0x80000000-0xbfffffff # U0401,U0402,U1401,U1402 bank 1 address 0x40000000-0x7fffffff # U0301,U0302,U1301,U1302 bank 0 address 0x00000000-0x3fffffff # The minimum requirement is four DIMMs in any bank. The recommended # installation sequence is Bank 0,2,1,3. DIMMs are required on both the # Riser Board (U0[34]0?) and the System Board (U1[34]0?). Two-way and # four-way memory bank interleaving is supported. Memory is 2-way # interleaved when the same size DIMMs are installed in Banks 0 and 1. # Memory is 4-way interleaved when the same size DIMMs are installed in # Banks 0, 1, 2 and 3. # # prtconf does not reliably show the size of DIMMs in each slot when # 1GB of total memory is installed. It shows this: # reg: 00000000.00000000.00000000.40000000 # A system with 1GB is reported as having 4 256MB DIMMs, but may be # using 16 64MB DIMMs in a 4-way interleave. # This is an issue that Sun could fix in the OBP. # It is broken with OBP 3.33.0 2003/10/07 (patch 109082-06) and older. # prtfru (Solaris 8 and later) also does not work. # # Sun shipped U80 1GB configurations w/ 4x256MB DIMMs # Sun shipped U80 256MB configurations w/ 4x64MB DIMMs # Sun shipped E420R with 501-5936 256MB DIMMs # 64MB DIMM 501-2480 and 128MB DIMM 501-3136 are not supported. # 16MB and 32MB DIMMs are not sold for the Ultra 80. # $devname="Quasar (U80), Quahog (420R), Lightweight 3 (Netra t140x)"; $familypn="A27 (U80), A33 (420R), N14 (Netra t1405), N15 (Netra t1400)"; if ($ultra eq 80) { $devname="Quasar"; $familypn="A27"; } if ($ultra eq "420R") { $devname="Quahog"; $familypn="A33"; } if ($ultra eq "Netra t140x") { $devname="Lightweight 3"; $familypn="N14 (Netra t1405), N15 (Netra t1400)"; } $untested=0; $simmrangex="00000400"; $simmbanks=4; $simmsperbank=4; @simmsizes=(64,256); # Sun only supports 64MB and 256MB DIMMs @socketstr=("U0301","U0302","U1301","U1302","U0401","U0402","U1401","U1402","U0303","U0304","U1303","U1304","U0403","U0404","U1403","U1404"); @bankstr=(0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3); } if ($ultra eq "Sun Blade 1000" || $ultra eq "Sun Blade 2000" || $ultra eq "Sun Fire 280R" || $ultra eq "Netra 20") { # Accepts up to 8 128MB, 256MB, 512MB, 1GB or 2GB DIMMs installed in # groups of four DIMMs per bank on motherboard # Uses 232-pin 3.3V ECC 7ns SDRAM # J0407 Group 1 Bank 1/3 address 0x0fa000000 - 0x1f3ffffff # J0406 Group 0 Bank 0/2 address 0x000000000 - 0x0f9ffffff # J0305 Group 1 Bank 1/3 address 0x0fa000000 - 0x1f3ffffff # J0304 Group 0 Bank 0/2 address 0x000000000 - 0x0f9ffffff # J0203 Group 1 Bank 1/3 address 0x0fa000000 - 0x1f3ffffff # J0202 Group 0 Bank 0/2 address 0x000000000 - 0x0f9ffffff # J0101 Group 1 Bank 1/3 address 0x0fa000000 - 0x1f3ffffff # J0100 Group 0 Bank 0/2 address 0x000000000 - 0x0f9ffffff # The minimum memory requirement is four DIMMs in any Group # DIMMs can be installed in any group order # Each group addresses 4GB of memory # Memory slots (Jxxxx) map to same-numbered DIMMs (Uxxxx) # For maximum 4-way interleaving, install 8 DIMMs of identical sizes $devname="Excalibur (Sun Blade 1000), Littleneck (Sun Fire 280R), Lightweight 2+ (Netra 20/Netra T4), Sun Blade 2000 (Sun Blade 2000)"; $familypn="A28 (Sun Blade 1000), A35 (Sun Fire 280R), N28 (Netra 20/Netra T4), A29 (Sun Blade 2000)"; if ($ultra eq "Sun Blade 1000") { $devname="Excalibur (Sun Blade 1000), Sun Blade 2000 (Sun Blade 2000)"; $familypn="A28 (Sun Blade 1000), A29 (Sun Blade 2000)"; } if ($ultra eq "Sun Fire 280R") { $devname="Littleneck"; $familypn="A35"; } if ($ultra eq "Netra 20") { $devname="Lightweight 2+"; $familypn="N28"; } if ($ultra eq "Sun Blade 2000") { $devname="Sun Blade 2000"; $familypn="A29"; } $untested=0; # SB1000/2000 uses 501-4143, 501-5938, 501-6230 or 501-6560 motherboards # SB1000 can use 600, 750 and 900MHz UltraSPARC-III CPUs # SB1000 can use 900MHz and faster UltraSPARC-III+ Cu CPUs # SB2000 only shipped with 900MHz and faster UltraSPARC-III+ Cu CPUs # SB2000 can use any of the SB1000 motherboards if ($ultra eq "Sun Blade 1000") { $modelmore=$banner; $modelmore=~s/Sun-Blade-1000/or Sun-Blade-2000/g; $modelmore=~s/\s+$//; while (($cf,$cnt)=each(%cpucnt)) { $cf=~/^(.*) (\d*)$/; $cfreq=$2; $modelmore=~s/\)/ ${cfreq}MHz\)/g if ($cfreq); } } $prtdiag_has_mem=1; $simmrangex="00001000"; $simmbanks=2; $simmsperbank=4; @simmsizes=(128,256,512,1024,2048); @socketstr=("J0100","J0202","J0304","J0406","J0101","J0203","J0305","J0407"); @bankstr=(0,0,0,0,1,1,1,1); } if ($model eq "Sun-Blade-100" || $ultra eq "Sun Blade 100" || $ultra eq "Sun Blade 150") { # Accepts 128MB, 256MB or 512MB DIMMs on motherboard # Uses 168-pin 3.3V ECC PC133 CL=3 SDRAM # U5 DIMM3 address 0x60000000 - 0x7fffffff or 0xc0000000 - 0xffffffff # U4 DIMM2 address 0x40000000 - 0x5fffffff or 0x80000000 - 0xbfffffff # U3 DIMM1 address 0x20000000 - 0x3fffffff or 0x40000000 - 0x7fffffff # U2 DIMM0 address 0x00000000 - 0x1fffffff or 0x00000000 - 0x3fffffff # The minimum memory requirement is one DIMM in U2 # The memory installation sequence is U2, U3, U4, U5 # Each bank addresses 512MB of memory with 500MHz UltraSPARC # Each bank addresses 1GB of memory with >= 550MHz UltraSPARC if ($model eq "Sun-Blade-100" || $ultra eq "Sun Blade 100") { $devname="Grover"; $familypn="A36"; } if ($ultra eq "Sun Blade 150") { $devname="Grover+"; $familypn="A41"; } $untested=0; $prtdiag_has_mem=1; $simmrangex=($cpufreq > 520) ? "00000400" : "00000200"; $simmbanks=4; $simmsperbank=1; @simmsizes=(128,256,512); @socketstr=("DIMM0".."DIMM3"); @bankstr=(0..3); } if ($ultra eq "Sun Fire" || $ultra eq "Sun Fire 15K" || $ultra eq "Sun Fire 12K" || $ultra =~ /Sun Fire [346]8[01]0\b/ || $ultra =~ /Sun Fire E[246]900\b/ || $ultra =~ /Sun Fire E2[05]K\b/) { # Sun Fire 3800 system # 2-8 UltraSPARC-III processors # Up to 2 CPU/Memory boards # Sun Fire 4800, 4810 and 6800 system # 2-12 UltraSPARC-III processors # Up to 3 CPU/Memory boards # Sun Fire 6800 system # 2-24 UltraSPARC-III processors # Up to 6 CPU/Memory boards # Sun Fire 15K system # 16-106 UltraSPARC-III+, IV or IV+ processors # Up to 18 CPU/Memory boards # Sun Fire 12K system # up to 56 UltraSPARC-III+, IV or IV+ processors and 288GB memory # Sun Fire E2900 & E4900 system # 4, 8, or 12 UltraSPARC-IV or IV+ processors, up to 3 Uniboards # E4900 adds dynamic system domains when compared to E2900 # Sun Fire E6900 system # 4-24 UltraSPARC-IV or IV+ processors, up to 6 Uniboards # Sun Fire E20K system # 4-36 UltraSPARC-IV or IV+ processors, up to 9 Uniboards # Sun Fire E25K system # Up to 72 UltraSPARC-IV or IV+ processors, up to 18 Uniboards # Each CPU/Memory board holds up to 4 processors and up to 32GB memory # (32 DIMMs per board, 8 banks of 4 DIMMs) # Accepts 256MB, 512MB or 1GB DIMMs # 1GB DIMM not supported at 750MHz # 256MB DIMM only supported on US-III # 2GB DIMMs supported on 48x0/6800/E2900/E4900/E6900/E20K/E25K # System Board slots are labeled SB0 and higher # A populated DIMM bank requires an UltraSPARC CPU. # DIMMs are 232-pin 3.3V ECC 7ns SDRAM # prtdiag output shows the memory installed. # # CPU1 and CPU0 Memory CPU3 and CPU2 Memory # -------------------- -------------------- # Socket CPU Bank DIMM Socket CPU Bank DIMM # ------ --- ---- ---- ------ --- ---- ---- # J14600 P1 B0 D3 J16600 P3 B0 D3 # J14601 P1 B1 D3 J16601 P3 B1 D3 # J14500 P1 B0 D2 J16500 P3 B0 D2 # J14501 P1 B1 D2 J16501 P3 B1 D2 # J14400 P1 B0 D1 J16400 P3 B0 D1 # J14401 P1 B1 D1 J16401 P3 B1 D1 # J14300 P1 B0 D0 J16300 P3 B0 D0 # J14301 P1 B1 D0 J16301 P3 B1 D0 # J13600 P0 B0 D3 J15600 P2 B0 D3 # J13601 P0 B1 D3 J15601 P2 B1 D3 # J13500 P0 B0 D2 J15500 P2 B0 D2 # J13501 P0 B1 D2 J15501 P2 B1 D2 # J13400 P0 B0 D1 J15400 P2 B0 D1 # J13401 P0 B1 D1 J15401 P2 B1 D1 # J13300 P0 B0 D0 J15300 P2 B0 D0 # J13301 P0 B1 D0 J15301 P2 B1 D0 # $devname="Serengeti" if ($ultra eq "Sun Fire"); if ($banner =~ /Sun Fire 3800\b/ || $diagbanner =~ /Sun Fire 3800\b/) { $devname="Serengeti8, SF3800 or SP"; $familypn="F3800"; } if ($banner =~ /Sun Fire 4800\b/ || $diagbanner =~ /Sun Fire 4800\b/) { $devname="Serengeti12, SF4800 or MD"; $familypn="F4800"; } if ($banner =~ /Sun Fire 4810\b/ || $diagbanner =~ /Sun Fire 4810\b/) { $devname="Serengeti12i, SF4810 or ME"; $familypn="F4810"; } if ($banner =~ /Sun Fire 6800\b/ || $diagbanner =~ /Sun Fire 6800\b/) { $devname="Serengeti24, SF6800 or DC"; $familypn="F6800"; } if ($ultra eq "Sun Fire 15K") { $devname="Starcat, Serengeti72"; $familypn="F15K"; } $devname="Starkitty" if ($ultra eq "Sun Fire 12K"); if ($banner =~ /Sun Fire E2900\b/ || $diagbanner eq "Sun Fire E2900") { $devname="Amazon 2"; $familypn="E29"; } if ($banner =~ /Sun Fire E4900\b/ || $diagbanner eq "Sun Fire E4900") { $devname="Amazon 4"; $familypn="E49"; } $devname="Amazon 6" if ($banner =~ /Sun Fire E6900\b/ || $diagbanner eq "Sun Fire E6900"); $devname="Amazon 20" if ($banner =~ /Sun Fire E20K\b/ || $diagbanner eq "Sun Fire E20K"); $devname="Amazon 25" if ($banner =~ /Sun Fire E25K\b/ || $diagbanner eq "Sun Fire E25K"); $untested=0; $prtdiag_has_mem=1; @simmsizes=(256,512,1024); @simmsizes=(256,512,1024,2048) if ($ultra =~ /Sun Fire [46]8[01]0\b/ || $ultra =~ /Sun Fire E[246]900\b/ || $ultra =~ /Sun Fire E2[05]K\b/); } if ($ultra eq "Sun Fire V880") { # Accepts 128MB, 256MB, 512MB or 1GB DIMMs in groups of four per CPU # 128MB DIMMs only supported on 750MHz CPU/memory boards # 1GB DIMMs only supported on 900MHz or faster CPU/memory boards # 2-8 UltraSPARC-III processors, 750MHz or faster # Up to 64GB memory, 8GB max per CPU, 4 DIMMs per CPU, 2 CPUs per board # DIMMs must be added four-at-a-time within the same group of DIMM # slots; every fourth slot belongs to the same DIMM group. # Each CPU/Memory board must be populated with a minimum of eight DIMMs, # installed in groups A0 and B0. # For 1050MHz and higher system boards, each CPU/Memory board must be # populated with all sixteen DIMMs, installed in groups A0,A1,B0,B1. # Each group used must have four identical DIMMs installed (all four # DIMMs must be from the same manufacturing vendor and must have the # same capacity). # DIMMs are 232-pin 3.3V ECC 7ns SDRAM # Uses 128-bit-wide path to memory, 150MHz DIMMs, 2.4GB/sec # bandwidth to processor and an aggregate memory bw of 9.6GB/sec # prtdiag output shows the memory installed. # # CPU CPU/Memory Slot Associated DIMM Group # --- --------------- --------------------- # 0 Slot A A0,A1 # 2 Slot A B0,B1 # 1 Slot B A0,A1 # 3 Slot B B0,B1 # 4 Slot C A0,A1 # 6 Slot C B0,B1 # 5 Slot D A0,A1 # 7 Slot D B0,B1 # $devname="Daktari (V880), Nandi (V880z)"; $familypn="A30 (V880), A47 (V880z)"; $untested=0; @simmsizes=($cpufreq < 800) ? (128,256,512) : (256,512,1024,2048); @banksstr=("A0","A1","B0","B1"); $prtdiag_has_mem=1; } if ($ultra eq "Sun Fire V480") { # Accepts 256MB, 512MB or 1GB DIMMs in groups of four per CPU # 2 or 4 UltraSPARC-III processors, 900MHz or faster # Up to 32GB memory, 8GB max per CPU, 4 DIMMs per CPU, 2 CPUs per board # Smaller version of Sun Fire V880 above $devname="Cherrystone"; $familypn="A37"; $untested=0; @simmsizes=(256,512,1024,2048); @banksstr=("A0","A1","B0","B1"); $prtdiag_has_mem=1; } if ($ultra eq "Sun Fire V490" || $ultra eq "Sun Fire V890") { # Accepts 512MB or 1GB DIMMs in groups of four per CPU # 2 or 4 UltraSPARC-III, IV or IV+ processors, 1050MHz or faster # Up to 32GB memory, 8GB max per CPU, 4 DIMMs per CPU, 2 CPUs per board # Similar memory contraints as Sun Fire V880 above if ($ultra eq "Sun Fire V490") { $devname="Sebring"; $familypn="A52"; } if ($ultra eq "Sun Fire V890") { $devname="Silverstone"; $familypn="A53"; } $untested=0; @simmsizes=(512,1024,2048); @banksstr=("A0","A1","B0","B1"); $prtdiag_has_mem=1; } if ($ultra eq "Netra T12") { # Sun Fire V1280, Netra 1280 # Essentially the same as a Sun Fire 4810, but is marketed as a low cost # single domain system. # 2-12 UltraSPARC-IIIcu processors using up to 3 CPU/Memory boards # Each CPU/Memory board holds up to 4 processors and up to 32GB memory # (32 DIMMs per board, 8 banks of 4 DIMMs) # Accepts 256MB, 512MB, 1GB or 2GB DIMMs # System Board slots are labeled SB0 and higher # A populated DIMM bank requires an UltraSPARC III CPU. # DIMMs are 232-pin 3.3V ECC 7ns SDRAM # prtdiag output shows the memory installed. $devname="Lightweight 8"; $familypn="A40 (Sun Fire V1280), N40 (Netra 1280)"; $untested=0; $prtdiag_has_mem=1; @simmsizes=(256,512,1024,2048); } if ($ultra eq "Enchilada") { # Sun Fire V210, V240, Netra 210, 240 # 1-2 UltraSPARC-IIIi (Jalapeno) processors # UltraSPARC IIIi supports 128MB to 1GB single bank DIMMs. # UltraSPARC IIIi supports 256MB to 2GB dual bank DIMMs. # DDR-1 SDRAM PC2100 DIMMs, 8 DIMM slots, 4 DIMMs per processor, # 2 banks per processor, 2 DIMMs per bank # V210 accepts 1GB & 2GB DIMMs by installing Fan Upgrade Kit, X7418A # Mixing DIMM sizes and capacities is not supported. # prtdiag output can show the memory installed. $devname="Enchilada"; # Enxs if ($banner =~ /Sun Fire V210\b/ || $model =~ /Sun-Fire-V210/) { $devname="Enchilada 1U"; $familypn="N31"; } if ($model =~ /Netra-210\b/) { $devname="Salsa 19"; $familypn="N79"; } if ($banner =~ /Sun Fire V240\b/ || $model =~ /Sun-Fire-V240/) { $devname="Enchilada 2U"; $familypn="N32"; } if ($model =~ /Netra-240\b/) { $devname="Enchilada 19"; $familypn="N54"; } $untested=0 if ($banner =~ /Sun Fire V210\b/ || $model =~ /Sun-Fire-V210/ || $model =~ /Netra-210\b/ || $banner =~ /Sun Fire 240\b/ || $model =~ /Sun-Fire-V240/ || $model =~ /Netra-240\b/); $prtdiag_has_mem=1; $prtdiag_banktable_has_dimms=1; $simmrangex="00002000"; # Count the skipped address range for dual CPU $simmbanks=($ncpu > 1) ? 10 : 2; $simmsperbank=2; @simmsizes=(128,256,512,1024,2048); @socketstr=("MB/P0/B0/D0","MB/P0/B0/D1","MB/P0/B1/D0","MB/P0/B1/D1","?","?","?","?","?","?","?","?","?","?","?","?"); push(@socketstr, "MB/P1/B0/D0","MB/P1/B0/D1","MB/P1/B1/D0","MB/P1/B1/D1") if ($ncpu > 1); } if ($ultra eq "Sun Fire V440" || $ultra eq "Netra 440") { # 1-4 UltraSPARC-IIIi (Jalapeno) processors # UltraSPARC IIIi supports 128MB to 1GB single bank DIMMs. # UltraSPARC IIIi supports 256MB to 2GB dual bank DIMMs. # DDR-1 SDRAM PC2100 DIMMs, 16 DIMM slots, 4 DIMMs per processor, # 2 banks per processor, 2 DIMMs per bank # prtdiag output can show the memory installed. $devname="Chalupa"; $familypn="A42"; if ($ultra eq "Netra 440") { $devname="Chalupa 19"; $familypn="N42"; } $untested=0; $prtdiag_has_mem=1; $prtdiag_banktable_has_dimms=1; $simmrangex="00002000"; $simmbanks=26; # Count the skipped address range for each CPU $simmsperbank=2; @simmsizes=(128,256,512,1024,2048); # Each CPU card has 4 DIMM slots labeled J0601 (B0/D0), J0602 (B0/D1), # J0701 (B1/D0) and J0702 (B1/D1). @socketstr=("C0/P0/B0/D0","C0/P0/B0/D1","C0/P0/B1/D0","C0/P0/B1/D1","?","?","?","?","?","?","?","?","?","?","?","?"); push(@socketstr, "C1/P0/B0/D0","C1/P0/B0/D1","C1/P0/B1/D0","C1/P0/B1/D1","?","?","?","?","?","?","?","?","?","?","?","?") if ($ncpu > 1); push(@socketstr, "C2/P0/B0/D0","C2/P0/B0/D1","C2/P0/B1/D0","C2/P0/B1/D1","?","?","?","?","?","?","?","?","?","?","?","?") if ($ncpu > 2); push(@socketstr, "C3/P0/B0/D0","C3/P0/B0/D1","C3/P0/B1/D0","C3/P0/B1/D1") if ($ncpu > 3); } if ($ultra eq "Sun Blade 1500") { # 1 UltraSPARC-IIIi (Jalapeno) processor # UltraSPARC IIIi supports 128MB to 1GB single bank DIMMs. # UltraSPARC IIIi supports 256MB to 2GB dual bank DIMMs. # 184-pin DDR-1 SDRAM PC2100 DIMMs installed in pairs, 4 DIMM slots # prtdiag output can show the memory installed. $devname="Taco"; $devname .= "+" if ($modelmore =~ /\(Silver\)/ || $banner =~ /\(Silver\)/); $familypn="A43"; $untested=0; $prtdiag_has_mem=1; $prtdiag_banktable_has_dimms=1; $simmrangex="00002000"; $simmbanks=2; $simmsperbank=2; @simmsizes=(128,256,512,1024,2048); @socketstr=("DIMM0".."DIMM3"); # DIMM1-DIMM4 on prototype } if ($ultra eq "Sun Blade 2500" || $ultra eq "Sun Fire V250") { # 1-2 UltraSPARC-IIIi (Jalapeno) processors # UltraSPARC IIIi supports 128MB to 1GB single bank DIMMs. # UltraSPARC IIIi supports 256MB to 2GB dual bank DIMMs. # 184-pin DDR-1 SDRAM PC2100 DIMMs, 8 DIMM slots, 4 DIMMs per processor, # 2 banks per processor, 2 DIMMs per bank # prtdiag output can show the memory installed. if ($ultra eq "Sun Blade 2500") { $devname="Enchilada Workstation"; $devname .= " Silver" if ($modelmore =~ /\(Silver\)/ || $banner =~ /\(Silver\)/); $familypn="A39"; } if ($ultra eq "Sun Fire V250") { $devname="Enchilada 2P Tower"; $familypn="A50"; } $untested=0; $prtdiag_has_mem=1; $prtdiag_banktable_has_dimms=1; $simmrangex="00002000"; # Count the skipped address range for dual CPU $simmbanks=($ncpu > 1) ? 20 : 2; $simmsperbank=2; @simmsizes=(128,256,512,1024,2048); if ($ultra eq "Sun Blade 2500") { @socketstr=("DIMM0".."DIMM3"); push(@socketstr, "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "DIMM4".."DIMM7") if ($ncpu > 1); } else { @socketstr=("MB/DIMM0","MB/DIMM1","MB/DIMM2","MB/DIMM3"); push(@socketstr, "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "MB/DIMM4","MB/DIMM5","MB/DIMM6","MB/DIMM7") if ($ncpu > 1); } } if ($ultra eq "Sun Ultra 45 Workstation" || $ultra eq "Sun Ultra 45 or Ultra 25 Workstation") { # 1-2 UltraSPARC-IIIi (Jalapeno) 1.6GHz processors # 1GB to 16GB of DDR1 SDRAM 266 or 333MHz registered ECC memory using # matched pairs of 512MB, 1GB and 2GB DIMMs # maximum of 4 DIMMs (8GB) per CPU # CPU0 Bank0 DIMM1&DIMM3 blue sockets, Bank1 DIMM0&DIMM2 black sockets # CPU1 Bank0 DIMM4&DIMM6 blue sockets, Bank1 DIMM5&DIMM7 black sockets # prtdiag output can show the memory installed. $devname="Chicago"; # also "Netra Salsa-19" development name $familypn="A70"; $untested=0; $prtdiag_has_mem=1; $prtdiag_banktable_has_dimms=1; $simmrangex="00002000"; # Count the skipped address range for dual CPU $simmbanks=($ncpu > 1) ? 20 : 2; $simmsperbank=2; @simmsizes=(512,1024,2048); @socketstr=("MB/DIMM1","MB/DIMM3","MB/DIMM0","MB/DIMM2"); push(@socketstr, "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "MB/DIMM4","MB/DIMM6","MB/DIMM5","MB/DIMM7") if ($ncpu > 1); } if ($ultra eq "Sun Ultra 25 Workstation") { # 1 UltraSPARC-IIIi (Jalapeno) 1.34GHz processors # 1GB to 8GB of DDR1 SDRAM 266 or 333MHz registered ECC memory using # matched pairs of 512MB, 1GB and 2GB DIMMs # maximum of 4 DIMMs (8GB) # Bank0 DIMM1&DIMM3 blue sockets, Bank1 DIMM0&DIMM2 black sockets # prtdiag output can show the memory installed. $devname="Southside"; $familypn="A89"; $untested=0; $prtdiag_has_mem=1; $prtdiag_banktable_has_dimms=1; $simmrangex="00002000"; $simmbanks=2; $simmsperbank=2; @simmsizes=(512,1024,2048); @socketstr=("MB/DIMM1","MB/DIMM3","MB/DIMM0","MB/DIMM2"); } if ($ultra eq "Sun Fire V125") { # 1 UltraSPARC-IIIi (Jalapeno) processor # UltraSPARC IIIi supports 128MB to 1GB single bank DIMMs. # UltraSPARC IIIi supports 256MB to 2GB dual bank DIMMs. # DDR-1 SDRAM PC2100 DIMMs, 4 DIMM slots, 2 DIMMs per bank # Mixing DIMM sizes and capacities is not supported. # prtdiag output can show the memory installed. $devname="El Paso"; $familypn="125"; $untested=0; $prtdiag_has_mem=1; $prtdiag_banktable_has_dimms=1; $simmrangex="00002000"; $simmbanks=2; $simmsperbank=2; @simmsizes=(128,256,512,1024,2048); @socketstr=("MB/P0/B0/D0","MB/P0/B0/D1","MB/P0/B1/D0","MB/P0/B1/D1"); } if ($ultra eq "Seattle") { # Sun Fire V215, V245 # 1-2 UltraSPARC-IIIi (Jalapeno) processors # UltraSPARC IIIi supports 128MB to 1GB single bank DIMMs. # UltraSPARC IIIi supports 256MB to 2GB dual bank DIMMs. # DDR-1 SDRAM PC2100 DIMMs, 8 DIMM slots, 4 DIMMs per processor, # 2 banks per processor, 2 DIMMs per bank # Mixing DIMM sizes and capacities is not supported. # prtdiag output can show the memory installed. $devname="Seattle"; # Enxs if ($banner =~ /Sun Fire V215\b/ || $model =~ /Sun-Fire-V215/) { $devname="Seattle 1U"; $familypn="215"; } if ($banner =~ /Sun Fire V245\b/ || $model =~ /Sun-Fire-V245/) { $devname="Seattle 2U"; $familypn="245"; } $untested=0; $prtdiag_has_mem=1; $prtdiag_banktable_has_dimms=1; $simmrangex="00002000"; # Count the skipped address range for dual CPU $simmbanks=($ncpu > 1) ? 10 : 2; $simmsperbank=2; @simmsizes=(128,256,512,1024,2048); @socketstr=("MB/P0/B0/D0","MB/P0/B0/D1","MB/P0/B1/D0","MB/P0/B1/D1","?","?","?","?","?","?","?","?","?","?","?","?"); push(@socketstr, "MB/P1/B0/D0","MB/P1/B0/D1","MB/P1/B1/D0","MB/P1/B1/D1") if ($ncpu > 1); } if ($ultra eq "Boston") { # Sun Fire V445 # 2-4 UltraSPARC-IIIi (Jalapeno) processors # UltraSPARC IIIi supports 128MB to 1GB single bank DIMMs. # UltraSPARC IIIi supports 256MB to 2GB dual bank DIMMs. # DDR-1 SDRAM PC2100 DIMMs, 16 DIMM slots, 4 DIMMs per processor, # 2 banks per processor, 2 DIMMs per bank # prtdiag output can show the memory installed. $devname="Boston"; $familypn="445, A77"; $untested=0; $prtdiag_has_mem=1; $prtdiag_banktable_has_dimms=1; $simmrangex="00002000"; $simmbanks=26; # Count the skipped address range for each CPU $simmsperbank=2; @simmsizes=(128,256,512,1024,2048); # Each CPU card has 4 DIMM slots labeled J0601 (B0/D0), J0602 (B0/D1), # J0701 (B1/D0) and J0702 (B1/D1). @socketstr=("C0/P0/B0/D0","C0/P0/B0/D1","C0/P0/B1/D0","C0/P0/B1/D1","?","?","?","?","?","?","?","?","?","?","?","?"); push(@socketstr, "C1/P0/B0/D0","C1/P0/B0/D1","C1/P0/B1/D0","C1/P0/B1/D1","?","?","?","?","?","?","?","?","?","?","?","?") if ($ncpu > 1); push(@socketstr, "C2/P0/B0/D0","C2/P0/B0/D1","C2/P0/B1/D0","C2/P0/B1/D1","?","?","?","?","?","?","?","?","?","?","?","?") if ($ncpu > 2); push(@socketstr, "C3/P0/B0/D0","C3/P0/B0/D1","C3/P0/B1/D0","C3/P0/B1/D1") if ($ncpu > 3); } if ($ultra eq "Serverblade1") { # Sun Fire B100s Blade Server # 1 UltraSPARC-IIi 650MHz processors # Two PC-133 DIMM slots holding up to 2GB memory # Up to 16 Blade Servers in a single B1600 Intelligent Shelf # prtdiag output shows the memory installed. $bannermore="(Sun Fire B100s Blade Server)"; $modelmore=$bannermore; $devname="Stiletto"; $familypn="A44"; $untested=0; $prtdiag_has_mem=1; $simmrangex="00000400"; $simmbanks=2; $simmsperbank=1; @simmsizes=(256,512,1024); @socketstr=("Blade/DIMM0","Blade/DIMM1"); } if ($ultra eq "T2000") { # 1 UltraSPARC-T1 (Niagara) processor with "CoolThreads" multithreading # 8 Core 1.2GHz (9.6GHz clock speed rating) or 4, 6, or 8 Core 1.0GHz # or 8 Core 1.4GHz # Up to 64GB DDR2 memory in 16 slots w/ Chipkill and DRAM sparing, ECC # registered DIMMs. Supports 512MB, 1GB, 2GB and 4GB DIMMs. # Option X7800A - 1GB (2x512MB DDR2) 370-6207, 512MB DDR2 DIMM, 533MHz # Option X7801A - 2GB (2x1GB DDR2) 370-6208, 1GB DDR2 DIMM, 533MHz # Option X7802A - 4GB (2x2GB DDR2) 370-6209, 2GB DDR2 DIMM, 533MHz # DIMMs must be installed in sets of 8. Two basic memory configurations # are supported: 8-DIMM or 16-DIMM. All DIMMs must have identical # capacity. An 8 DIMM configuration fully populates Rank 0 (R0) slots. # Base configurations sold by Sun use all 16 DIMM slots (2 ranks) except # smallest memory configuration (4GB, 8 x 512MB in Rank 0). # The minimum T2000 memory requirement is 8 Rank 0 DIMMs. # 4 memory controllers embedded in UltraSPARC-T1 (CH0-CH3) # # T2000 Memory Map # +----------------------------------------+ # | J0901 Channel 0 Rank 1 DIMM 1 | DIMM 1 # Install 1st | J0701 Channel 0 Rank 0 DIMM 1 | DIMM 2 # | J0801 Channel 0 Rank 1 DIMM 0 | DIMM 3 # Install 1st | J0601 Channel 0 Rank 0 DIMM 0 | DIMM 4 # | J1401 Channel 1 Rank 1 DIMM 1 | DIMM 5 # Install 1st | J1201 Channel 1 Rank 0 DIMM 1 | DIMM 6 # | J1301 Channel 1 Rank 1 DIMM 0 | DIMM 7 # Install 1st | J1101 Channel 1 Rank 0 DIMM 0 | DIMM 8 # +----------------------------------------+ # +---------------+ # | UltraSPARC T1 | # +---------------+ # +----------------------------------------+ # Install 1st | J2101 Channel 3 Rank 0 DIMM 0 | DIMM 9 # | J2301 Channel 3 Rank 1 DIMM 0 | DIMM 10 # Install 1st | J2201 Channel 3 Rank 0 DIMM 1 | DIMM 11 # | J2401 Channel 3 Rank 1 DIMM 1 | DIMM 12 # Install 1st | J1601 Channel 2 Rank 0 DIMM 0 | DIMM 13 # | J1801 Channel 2 Rank 1 DIMM 0 | DIMM 14 # Install 1st | J1701 Channel 2 Rank 0 DIMM 1 | DIMM 15 # | J1901 Channel 2 Rank 1 DIMM 1 | DIMM 16 # +----------------------------------------+ $devname="Ontario"; $familypn="T20"; if ($model =~ /Netra-T2000\b/ || $banner =~ /Netra T2000\b/) { $devname="Pelton"; $familypn="N20"; } $familypn="T20, SEB" if ($model =~ /SPARC-Enterprise-T2000/ || $banner =~ /SPARC Enterprise T2000/); $untested=0; $simmrangex="00002000"; if (scalar(@slots) == 8) { # Two ranks reported $simmbanks=2; $simmsperbank=8; } else { # One rank reported, but default base configurations ship with # two ranks (16 DIMMs) $simmbanks=1; $simmsperbank=16; } @simmsizes=(512,1024,2048,4096); @socketstr=("MB/CMP0/CH0/R0/D0","MB/CMP0/CH0/R0/D1","MB/CMP0/CH1/R0/D0","MB/CMP0/CH1/R0/D1","MB/CMP0/CH2/R0/D0","MB/CMP0/CH2/R0/D1","MB/CMP0/CH3/R0/D0","MB/CMP0/CH3/R0/D1","MB/CMP0/CH0/R1/D0","MB/CMP0/CH0/R1/D1","MB/CMP0/CH1/R1/D0","MB/CMP0/CH1/R1/D1","MB/CMP0/CH2/R1/D0","MB/CMP0/CH2/R1/D1","MB/CMP0/CH3/R1/D0","MB/CMP0/CH3/R1/D1"); &check_for_LDOM; } if ($ultra eq "T1000") { # 1 UltraSPARC-T1 (Niagara) processor with "CoolThreads" multithreading # 6 or 8 Core 1.0GHz # Up to 32GB DDR2 memory in 8 slots w/ Chipkill and DRAM sparing, ECC # registered DIMMs. Supports 512MB, 1GB, 2GB and 4GB DIMMs. # Option X7800A - 1GB (2x512MB DDR2) 370-6207, 512MB DDR2 DIMM, 533MHz # Option X7801A - 2GB (2x1GB DDR2) 370-6208, 1GB DDR2 DIMM, 533MHz # Option X7802A - 4GB (2x2GB DDR2) 370-6209, 2GB DDR2 DIMM, 533MHz # DIMMs must be installed in sets of 4. # Base configurations sold by Sun use all 8 DIMM slots (2 ranks) except # smallest memory configuration (2GB, 4 x 512MB in Rank 0). # The minimum T1000 memory requirement is 4 Rank 0 DIMMs. # 4 memory controllers embedded in UltraSPARC-T1 (CH0-CH3) # # T1000 Memory Map # +----------------------------------------+ # | J1301 Channel 3 Rank 1 DIMM 1 | # Install 1st | J1101 Channel 3 Rank 0 DIMM 1 | # | J1201 Channel 3 Rank 1 DIMM 0 | # Install 1st | J1001 Channel 3 Rank 0 DIMM 0 | # +----------------------------------------+ # +---------------+ # | UltraSPARC T1 | # +---------------+ # +----------------------------------------+ # Install 1st | J0501 Channel 0 Rank 0 DIMM 0 | # | J0701 Channel 0 Rank 1 DIMM 0 | # Install 1st | J0601 Channel 0 Rank 0 DIMM 1 | # | J0801 Channel 0 Rank 1 DIMM 1 | # +----------------------------------------+ $devname="Erie"; $familypn="T10"; $familypn="T10, SEA" if ($model =~ /SPARC-Enterprise-T1000/ || $banner =~ /SPARC Enterprise T1000/); $untested=0; $simmrangex="00002000"; if (scalar(@slots) == 8) { # Two ranks reported $simmbanks=2; $simmsperbank=4; } else { $simmbanks=1; $simmsperbank=8; } @simmsizes=(512,1024,2048,4096); @socketstr=("MB/CMP0/CH0/R0/D0","MB/CMP0/CH0/R0/D1","MB/CMP0/CH3/R0/D0","MB/CMP0/CH3/R0/D1","MB/CMP0/CH0/R1/D0","MB/CMP0/CH0/R1/D1","MB/CMP0/CH3/R1/D0","MB/CMP0/CH3/R1/D1"); &check_for_LDOM; } if ($ultra eq "T6300") { # 1 UltraSPARC-T1 (Niagara) processor with "CoolThreads" multithreading # 6-Core 1.0GHz, 8-Core 1.0GHz, 1.2GHz or 1.4GHz # Up to 32GB ECC Registered DDR2 PC4200 # Supports 1GB, 2GB and 4GB DIMMs. # DIMMs must be installed in sets of 4. # Supported memory configurations: # 4 FB-DIMMs (Channel 0 and Channel 3) # 4 FB-DIMMs (Channel 1 and Channel 2) # 8 FB-DIMMs (Channel 0, 1, 2 and 3) (fully populated configuration) # Due to interleaving rules for the CPU, the system will operate at # the lowest capacity of all the DIMMs installed. Therefore, it is # ideal to install eight identical DIMMs (not four DIMMs of one # capacity and four DIMMs of another capacity). $devname="St. Paul"; $familypn="A94"; $untested=0; $memtype="FB-DIMM"; $simmrangex="00002000"; $showrange=0; $simmbanks=2; $simmsperbank=4; @simmsizes=(1024,2048,4096); @socketstr=("MB/CMP0/CH0/R0/D0","MB/CMP0/CH0/R0/D1","MB/CMP0/CH3/R0/D0","MB/CMP0/CH3/R0/D1","MB/CMP0/CH1/R0/D0","MB/CMP0/CH1/R0/D1","MB/CMP0/CH2/R0/D0","MB/CMP0/CH2/R0/D1"); @socketlabelstr=("J6301","J6401","J7201","J7301","J6601","J6701","J6901","J7001"); &check_for_LDOM; } if ($ultra eq "T5120" || $ultra eq "T5220" || $ultra eq "T6320") { # 1 UltraSPARC-T2 (Niagara-II) multicore processor with "CoolThreads" # multithreading, 1.2GHz 4 or 8-Core or 1.4GHz 8-Core # Up to 64GB Fully Buffered ECC-registered DDR2 @ 667MHz # Supports 1GB, 2GB and 4GB DIMMs. # DIMMs must be installed in sets of 4. # All FB-DIMMs must be the same density (same type and Sun part number) # Supported memory configurations: # 4 FB-DIMMs (Group 1) MB/CMP0/BR[0-3]/CH0/D0 # 8 FB-DIMMs (Groups 1-2) MB/CMP0/BR[0-3]/CH[01]/D0 # 16 FB-DIMMs (Groups 1-3) MB/CMP0/BR[0-3]/CH[01]/D[01] # # FB-DIMM Configuration: # Install FB-DIMM # Branch Channel FRU Name FB-DIMM Order Pair # # 0 0 MB/CMP0/BR0/CH0/D0 J1001 1 A # MB/CMP0/BR0/CH0/D1 J1101 3 B # 1 MB/CMP0/BR0/CH1/D0 J1201 2 A # MB/CMP0/BR0/CH1/D1 J1301 3 B # 1 0 MB/CMP0/BR1/CH0/D0 J1401 1 C # MB/CMP0/BR1/CH0/D1 J1501 3 D # 1 MB/CMP0/BR1/CH1/D0 J1601 2 C # MB/CMP0/BR1/CH1/D1 J1701 3 D # 2 0 MB/CMP0/BR2/CH0/D0 J2001 1 E # MB/CMP0/BR2/CH0/D1 J2101 3 F # 1 MB/CMP0/BR2/CH1/D0 J2201 2 E # MB/CMP0/BR2/CH1/D1 J2301 3 F # 3 0 MB/CMP0/BR3/CH0/D0 J2401 1 G # MB/CMP0/BR3/CH0/D1 J2501 3 H # 1 MB/CMP0/BR3/CH1/D0 J2601 2 G # MB/CMP0/BR3/CH1/D1 J2701 3 H # # Note - FB-DIMM names in ILOM messages are displayed with the full FRU # name, such as /SYS/MB/CMP0/BR0/CH0/D0. $devname="Huron"; if ($ultra eq "T5120") { $devname="Huron 1U"; $familypn="SEC"; } if ($ultra eq "T5220") { $devname="Huron 2U"; $familypn="SED"; } if ($banner =~ /Netra T5220\b/) { $devname="Turgo"; $familypn="NT52"; } if ($ultra eq "T6320") { $devname="Glendale"; $familypn="A95"; } $untested=0; $memtype="FB-DIMM"; $simmrangex="00004000"; $showrange=0; $simmbanks=4; $simmsperbank=4; @simmsizes=(1024,2048,4096); @socketstr=("MB/CMP0/BR0/CH0/D0","MB/CMP0/BR1/CH0/D0","MB/CMP0/BR2/CH0/D0","MB/CMP0/BR3/CH0/D0","MB/CMP0/BR0/CH1/D0","MB/CMP0/BR1/CH1/D0","MB/CMP0/BR2/CH1/D0","MB/CMP0/BR3/CH1/D0","MB/CMP0/BR0/CH0/D1","MB/CMP0/BR1/CH0/D1","MB/CMP0/BR2/CH0/D1","MB/CMP0/BR3/CH0/D1","MB/CMP0/BR0/CH1/D1","MB/CMP0/BR1/CH1/D1","MB/CMP0/BR2/CH1/D1","MB/CMP0/BR3/CH1/D1"); &check_for_LDOM; } if ($ultra eq "T5140" || $ultra eq "T5240" || $ultra eq "T6340") { # T5140 has 2 UltraSPARC-T2+ (Victoria Falls) multicore processors with # "CoolThreads" multithreading, 1.2GHz 4, 6, or 8-Core # T5240 has 2 UltraSPARC-T2+ (Victoria Falls) multicore processors with # "CoolThreads" multithreading, 1.2GHz 4, 6, or 8-Core or 1.4GHz 8-Core # T6340 has 2 UltraSPARC-T2+ (Victoria Falls) multicore processors with # "CoolThreads" multithreading, 1.4GHz 8-Core # 8GB to 64GB Fully Buffered ECC-registered DDR2 @ 667MHz # Supports 1GB, 2GB and 4GB DIMMs. # T5240 also supports optional mezzanine memory board doubling memory # with an additional 16 FB-DIMM sockets # All FB-DIMMs must be the same density (same type and Sun part number) # # T5140,T5240 Supported memory configurations: # 8 FB-DIMMs (Group 1) MB/CMP[01]/BR[01]/CH[01]/D0 # 12 FB-DIMMs (Groups 1-2) MB/CMP[01]/BR[01]/CH[01]/D0,MB/CMP0/BR[01]/CH[01]/D1 # 16 FB-DIMMs (Groups 1-3) MB/CMP[01]/BR[01]/CH[01]/D[01] # T5240 with memory mezzanine assembly supports these additional # memory configurations once the motherboard is fully populated: # 24 FB-DIMMs (Groups 1-4) MB/CMP[01]/MR0/BR[01]/CH[01]/D[23] # 32 FB-DIMMs (Groups 1-5) MB/CMP[01]/MR[01]/BR[01]/CH[01]/D[23] # # FB-DIMM Configuration: # Install FB-DIMM # Branch Channel FRU Name FB-DIMM Order Pair # # CMP0,0 0 MB/CMP0/BR0/CH0/D0 J0500 1 A # MB/CMP0/BR0/CH0/D1 J0600 2 B # 1 MB/CMP0/BR0/CH1/D0 J0700 1 A # MB/CMP0/BR0/CH1/D1 J0800 2 B # CMP0,1 0 MB/CMP0/BR1/CH0/D0 J0900 1 C # MB/CMP0/BR1/CH0/D1 J1000 2 D # 1 MB/CMP0/BR1/CH1/D0 J1100 1 C # MB/CMP0/BR1/CH1/D1 J1200 2 D # CMP1,0 0 MB/CMP1/BR0/CH0/D0 J1800 1 E # MB/CMP1/BR0/CH0/D1 J1900 3 F # 1 MB/CMP1/BR0/CH1/D0 J2000 1 E # MB/CMP1/BR0/CH1/D1 J2100 3 F # CMP1,1 0 MB/CMP1/BR1/CH0/D0 J2200 1 G # MB/CMP1/BR1/CH0/D1 J2300 3 H # 1 MB/CMP1/BR1/CH1/D0 J2400 1 G # MB/CMP1/BR1/CH1/D1 J2500 3 H # CMP0,0 0 MB/CMP0/MR0/BR0/CH0/D2 J0201 4 # MB/CMP0/MR0/BR0/CH0/D3 J0301 4 # 1 MB/CMP0/MR0/BR0/CH1/D2 J0401 4 # MB/CMP0/MR0/BR0/CH1/D3 J0501 4 # CMP0,1 0 MB/CMP0/MR0/BR1/CH0/D2 J0601 4 # MB/CMP0/MR0/BR1/CH0/D3 J0701 4 # 1 MB/CMP0/MR0/BR1/CH1/D2 J0801 4 # MB/CMP0/MR0/BR1/CH1/D3 J0901 4 # CMP1,0 0 MB/CMP1/MR1/BR0/CH0/D2 J0201 5 # MB/CMP1/MR1/BR0/CH0/D3 J0301 5 # 1 MB/CMP1/MR1/BR0/CH1/D2 J0401 5 # MB/CMP1/MR1/BR0/CH1/D3 J0501 5 # CMP1,1 0 MB/CMP1/MR1/BR1/CH0/D2 J0601 5 # MB/CMP1/MR1/BR1/CH0/D3 J0701 5 # 1 MB/CMP1/MR1/BR1/CH1/D2 J0801 5 # MB/CMP1/MR1/BR1/CH1/D3 J0901 5 # # Note - FB-DIMM names in ILOM messages are displayed with the full FRU # name, such as /SYS/MB/CMP0/BR0/CH0/D0. $devname="Maramba"; if ($ultra eq "T5140") { $devname="Maramba 1U"; $familypn="SET"; } if ($ultra eq "T5240") { $devname="Maramba 2U"; $familypn="SEU"; } $untested=0; if ($model =~ /Sun-USBRDT-5240/) { $devname="Thunder"; $untested=1; } $devname="Scottsdale" if ($ultra eq "T6340"); $memtype="FB-DIMM"; $simmrangex="00004000"; $showrange=0; $simmbanks=4; $simmbanks=8 if ($ultra eq "T5240"); $simmsperbank=4; @simmsizes=(1024,2048,4096); @socketstr=("MB/CMP0/BR0/CH0/D0","MB/CMP0/BR0/CH1/D0","MB/CMP0/BR1/CH0/D0","MB/CMP0/BR1/CH1/D0","MB/CMP1/BR0/CH0/D0","MB/CMP1/BR0/CH1/D0","MB/CMP1/BR1/CH0/D0","MB/CMP1/BR1/CH1/D0","MB/CMP0/BR0/CH0/D1","MB/CMP0/BR0/CH1/D1","MB/CMP0/BR1/CH0/D1","MB/CMP0/BR1/CH1/D1","MB/CMP1/BR0/CH0/D1","MB/CMP1/BR0/CH1/D1","MB/CMP1/BR1/CH0/D1","MB/CMP1/BR1/CH1/D1"); push(@socketstr, "MB/CMP0/MR0/BR0/CH0/D2","MB/CMP0/MR0/BR0/CH0/D3","MB/CMP0/MR0/BR0/CH1/D2","MB/CMP0/MR0/BR0/CH1/D3","MB/CMP0/MR0/BR1/CH0/D2","MB/CMP0/MR0/BR1/CH0/D3","MB/CMP0/MR0/BR1/CH1/D2","MB/CMP0/MR0/BR1/CH1/D3","MB/CMP1/MR1/BR0/CH0/D2","MB/CMP1/MR1/BR0/CH0/D3","MB/CMP1/MR1/BR0/CH1/D2","MB/CMP1/MR1/BR0/CH1/D3","MB/CMP1/MR1/BR1/CH0/D2","MB/CMP1/MR1/BR1/CH0/D3","MB/CMP1/MR1/BR1/CH1/D2","MB/CMP1/MR1/BR1/CH1/D3") if ($ultra eq "T5240"); &check_for_LDOM; } if ($ultra eq "T5440") { # T5440 has 4 UltraSPARC-T2+ (Victoria Falls) multicore processors # 8GB to 64GB Fully Buffered ECC-registered DDR2 @ 667MHz # Supports 1GB, 2GB and 4GB DIMMs. # All FB-DIMMs must be the same density (same type and Sun part number) # # Note - FB-DIMM names in ILOM messages are displayed with the full FRU # name, such as /SYS/MB/CMP0/BR0/CH0/D0. $devname="Batoka" if ($ultra eq "T5440"); $devname="Congo" if ($model =~ /Netra-T5440/); $devname="Lightning" if ($model =~ /Sun-USBRDT-5440/); $untested=1; $untested=0 if ($banner eq "T5440"); $memtype="FB-DIMM"; $simmrangex="00004000"; $showrange=0; $simmbanks=4; $simmsperbank=4; @simmsizes=(1024,2048,4096); @socketstr=("MB/CPU0/CMP0/BR0/CH0/D0","MB/CPU0/CMP0/BR0/CH1/D0","MB/CPU0/CMP0/BR1/CH0/D0","MB/CPU0/CMP0/BR1/CH1/D0","MB/CPU1/CMP1/BR0/CH0/D0","MB/CPU1/CMP1/BR0/CH1/D0","MB/CPU1/CMP1/BR1/CH0/D0","MB/CPU1/CMP1/BR1/CH1/D0","MB/MEM0/CMP0/BR0/CH0/D1","MB/MEM0/CMP0/BR0/CH1/D1","MB/MEM0/CMP0/BR1/CH0/D1","MB/MEM0/CMP0/BR1/CH1/D1","MB/MEM1/CMP1/BR0/CH0/D1","MB/MEM1/CMP1/BR0/CH1/D1","MB/MEM1/CMP1/BR1/CH0/D1","MB/MEM1/CMP1/BR1/CH1/D1"); &check_for_LDOM; } if ($model eq "SPARC-Enterprise" || $ultra =~ /SPARC Enterprise M[34589]000 Server/) { # CPUs: Dual-Core Dual-Thread SPARC64-VI or # Quad-Core Dual-Thread SPARC64-VII # M3000: 2RU rack, single SPARC64-VII 2.52GHz cpu # up to 32GB, uses DDR2-533 4GB or 8GB memory DIMMs # M4000: 6RU rack, up to 4 SPARC64-VI or SPARC64-VII cpus # Up to 2 CPU (CMU), 2 CPUs per board # Main memory Up to 128 GB per domain / system, up to 4 memory # boards w/ maximum 32GB per board using 8 DDR2 4GB memory DIMMs # M5000: 10RU rack, up to 8 SPARC64-VI or SPARC64-VII cpus # Up to 4 CPU (CMU), 2 CPUs per board # Main memory Up to 256 GB per domain / system, up to 8 memory # boards w/ maximum 32GB per board using 8 DDR2 4GB memory DIMMs # M8000: up to 16 SPARC64-VI or SPARC64-VII cpus # Up to 4 CPU memory boards (CMU), Up to 4 processors and up to # 128 GB memory per board based on 32 4GB DIMMs # Main memory Up to 512GB per domain / system # M9000: 32 or 64 SPARC64-VI or SPARC64-VII cpus # 32 CPU # Up to 8 CPU memory boards (CMU), Up to 4 processors and up to # 128 GB memory per board based on 32 4GB DIMMs # Main memory Up to 1TB per domain / system # 64 CPU # Up to 16 CPU memory boards (CMU), Up to 4 processors and up to # 128 GB memory per board based on 32 4GB DIMMs # Main memory Up to 2TB per domain / system if ($ultra =~ /Sun SPARC Enterprise M4000 Server/) { $devname="OPL FF1"; $familypn="SEE"; } if ($ultra =~ /Sun SPARC Enterprise M5000 Server/) { $devname="OPL FF2"; $familypn="SEF"; } $untested=1; $untested=0 if ($ultra =~ /SPARC Enterprise M[3458]000 Server/); $prtdiag_has_mem=1; @simmsizes=(1024,2048,4096); } if (($model =~ /-Enterprise/ || $ultra eq "e") && $model !~ /SPARC-Enterprise/) { # E3x00/E4x00/E5x00/E6x00 accepts 8MB, 32MB, 128MB or 256MB DIMMs on # motherboard, 2 banks of 8 DIMMs per board. # 256MB DIMMs (2GB kit X7026A) can be used with OBP 3.2.24 or later and # Solaris 2.5.1 11/97, Solaris 2.6 3/98 or later # 501-2652 (8MB), 501-2653 (32MB), 501-2654 (128MB), 501-5658 (256MB) # 168-pin 60ns 3.3V ECC # E10000 accepts 32MB or 128MB DIMMs on motherboard, # using 2 or 4 banks of 8 DIMMs per board. # 501-2653 (32MB), 501-2654 (128MB) # 168-pin 60ns 3.3V ECC $devname="Duraflame" if ($banner =~ /\bE?3[05]00\b/); $devname="Campfire Rack" if ($banner =~ /\bE?5[05]00\b/); $devname="Campfire" if ($banner =~ /\bE?4[05]00\b/); $devname="Sunfire" if ($banner =~ /\bE?6[05]00\b/); $devname .= "+" if ($banner =~ /\bE?[3-6]500\b/); $devname="Starfire" if ($model =~ /-10000\b/); $familypn="E3000, A17" if ($banner =~ /\bE?3000\b/); $familypn="E3500" if ($banner =~ /\bE?3500\b/); $familypn="E4000, A18" if ($banner =~ /\bE?4000\b/); $familypn="E4500" if ($banner =~ /\bE?4500\b/); $familypn="E5000" if ($banner =~ /\bE?5000\b/); $familypn="E5500" if ($banner =~ /\bE?5500\b/); $familypn="E6000" if ($banner =~ /\bE?6000\b/); $familypn="E6500" if ($banner =~ /\bE?6500\b/); $familypn="E10000" if ($model =~ /-10000\b/); $untested=1; if ($banner =~ /\bE?[3-6][05]00\b/ || $model =~ /-Enterprise-E?[3-6][05]00/ || $model eq "Ultra-Enterprise") { $untested=0; @simmsizes=(8,32,128,256); } if ($model =~ /-Enterprise-10000\b/) { $untested=0; @simmsizes=(32,128); } $prtdiag_has_mem=1; @prtdiag=&run("$prtdiag_exec") if ($filename eq ""); $i=0; $flag_cpu=0; $flag_mem=0; foreach $line (@prtdiag) { $line=&dos2unix($line); if ($line =~ /Memory Units:/) { # Start of memory section, Solaris 2.5.1 format $flag_mem=1; $format_mem=1; $flag_cpu=0; # End of CPU section } if ($line =~ /==== Memory / || $line =~ /==== Physical Memory /) { # Start of memory section, Solaris 2.6 and later format $flag_mem=1; $format_mem=2; $flag_cpu=0; # End of CPU section } if ($line =~ /Factor/) { # No interleave factor on E10000 $format_mem += 2 if (($format_mem == 1) || ($format_mem == 2)); } if ($line =~ /Failed Field Replaceable Unit/) { $tmp=$line; $tmp=~s/^\t/ /g; $failed_fru .= $tmp; } if ($line =~ /IO Cards/) { $flag_cpu=0; # End of CPU section $flag_mem=0; # End of memory section } if (($flag_cpu >= 1) && ($line !~ /^\s*\n$/)) { push(@boards_cpu, "$line"); $boardfound_cpu=1; $boardslot_cpu=($line =~ /Board/) ? substr($line,6,2) : substr($line,0,2); $boardslot_cpu=~s/[: ]//g; if (($flag_cpu == 2) && ($boardslot_cpus !~ /\s$boardslot_cpu\s/) && ($boardslot_cpu ne "")) { push(@boardslot_cpus, "$boardslot_cpu"); $boardslot_cpus .= $boardslot_cpu . " "; } } if ($line =~ /CPU Units:/) { $flag_cpu=1; # Start of CPU section $flag_mem=0; # End of memory section $format_cpu=1; } if ($line =~ /==== CPUs ====/ || $line =~ /==== Virtual CPUs ====/) { $flag_cpu=1; # Start of CPU section $flag_mem=0; # End of memory section $format_cpu=2; } if (($flag_mem == 2) && ($line !~ /^\s*\n$/)) { $boardslot_mem=($line =~ /Board/) ? substr($line,5,2) : substr($line,0,2); $boardslot_mem=~s/[: ]//g; if ($boardslot_mems !~ /\s$boardslot_mem\s/) { push(@boardslot_mems, "$boardslot_mem"); $boardslot_mems .= $boardslot_mem . " "; } if ($format_mem == 1) { # Memory on each system board, E10000 $mem0=substr($line,12,4); $mem0=0 if ($mem0 !~ /\d+/); $dimm0=$mem0 / 8; if ($dimm0 > 0) { $dimms0=sprintf("8x%3d", $dimm0); push(@simmsizesfound, "$dimm0"); } else { $dimms0=" "; &found_empty_bank("Bank 0"); } $mem1=substr($line,20,4); $mem1=0 if ($mem1 !~ /\d+/); $dimm1=$mem1 / 8; if ($dimm1 > 0) { $dimms1=sprintf("8x%3d", $dimm1); push(@simmsizesfound, "$dimm1"); } else { $dimms1=" "; &found_empty_bank("Bank 1"); } $mem2=substr($line,28,4); $mem2=0 if ($mem2 !~ /\d+/); $dimm2=$mem2 / 8; if ($dimm2 > 0) { $dimms2=sprintf("8x%3d", $dimm2); push(@simmsizesfound, "$dimm2"); } else { $dimms2=" "; &found_empty_bank("Bank 2"); } $mem3=substr($line,36,4); $mem3=0 if ($mem3 !~ /\d+/); $dimm3=$mem3 / 8; if ($dimm3 > 0) { $dimms3=sprintf("8x%3d", $dimm3); push(@simmsizesfound, "$dimm3"); } else { $dimms3=" "; &found_empty_bank("Bank 3"); } $newline=substr($line,0,10); $newline .= " " . $mem0 . " " . $dimms0; $newline .= " " . $mem1 . " " . $dimms1; $newline .= " " . $mem2 . " " . $dimms2; $newline .= " " . $mem3 . " " . $dimms3; $newline .= "\n"; push(@boards_mem, "$newline"); $boardfound_mem=1; } if ($format_mem == 2) { # Memory on each system board, E10000 # untested ??? reporting of empty banks $untested=1; $bank_slot=substr($line,6,2); $mem=substr($line,12,4); $mem=0 if ($mem !~ /\d+/); $dimm=$mem / 8; if ($dimm > 0) { $dimms=sprintf("8x3d", $dimm); push(@simmsizesfound, "$dimm"); $newline=substr($line,0,18) . $dimms; $newline .= substr($line,16,47); push(@boards_mem, "$newline"); $boardfound_mem=1; $failed_memory += $mem if ($newline =~ /\b\bFailed\b\b/); $spare_memory += $mem if ($newline =~ /\b\bSpare\b\b/); } else { $flag_mem=0; &found_empty_bank("Bank $bank_slot"); } if ($bank_slot == 0) { $next_boardslot_mem=substr($prtdiag[$i + 1],0,2); $next_boardslot_mem=~s/[: ]//g; &found_empty_bank("Bank 1") if ($next_boardslot_mem ne $boardslot_mem); } if ($bank_slot == 1) { $prev_boardslot_mem=substr($prtdiag[$i - 1],0,2); $prev_boardslot_mem=~s/[: ]//g; &found_empty_bank("Bank 0") if ($prev_boardslot_mem ne $boardslot_mem); } } if ($format_mem == 3) { # Memory on each system board, E[3456]x00 $mem0=substr($line,10,4); $mem0=0 if ($mem0 !~ /\d+/); $dimm0=$mem0 / 8; if ($dimm0 > 0) { $dimms0=sprintf("8x%3d", $dimm0); push(@simmsizesfound, "$dimm0"); } else { $dimms0=" "; &found_empty_bank("Bank 0"); } $memlength=length($line); $mem1=($memlength > 34) ? substr($line,34,4) : 0; $mem1=0 if ($mem1 !~ /\d+/); $dimm1=$mem1 / 8; if ($dimm1 > 0) { $dimms1=sprintf("8x%3d", $dimm1); push(@simmsizesfound, "$dimm1"); } else { $dimms1=" "; &found_empty_bank("Bank 1"); } $newline=substr($line,0,16) . $dimms0; $newline .= substr($line,16,24); if ($dimm1 > 0) { $newline .= $dimms1; $newline .= substr($line,39,16); } push(@boards_mem, "$newline"); $boardfound_mem=1; } if ($format_mem == 4) { # Memory on each system board, E[3456]x00 $bank_slot=substr($line,7,1); $mem=substr($line,12,4); $mem=0 if ($mem !~ /\d+/); $dimm=$mem / 8; if ($dimm > 0) { $dimms=sprintf("8x%3d", $dimm); push(@simmsizesfound, "$dimm"); $newline=substr($line,0,18) . $dimms; $newline .= substr($line,16,47); push(@boards_mem, "$newline"); $boardfound_mem=1; $failed_memory += $mem if ($newline =~ /\b\bFailed\b\b/); $spare_memory += $mem if ($newline =~ /\b\bSpare\b\b/); } else { $flag_mem=0; &found_empty_bank("Bank $bank_slot"); } if ($bank_slot == 0) { $next_boardslot_mem=substr($prtdiag[$i + 1],0,2); $next_boardslot_mem=~s/[: ]//g; &found_empty_bank("Bank 1") if ($next_boardslot_mem ne $boardslot_mem); } if ($bank_slot == 1) { $prev_boardslot_mem=substr($prtdiag[$i - 1],0,2); $prev_boardslot_mem=~s/[: ]//g; &found_empty_bank("Bank 0") if ($prev_boardslot_mem ne $boardslot_mem); } } } if (($flag_cpu == 1) && ($line =~ /-----/)) { # Next lines are the CPUs on each system board $flag_cpu=2; } if (($flag_mem == 1) && ($line =~ /-----/)) { # Next lines are the memory on each system board $flag_mem=2; } $i++; } &show_header; if ($boardfound_mem) { if ($boardfound_cpu) { foreach $board (@boardslot_cpus) { if ($boardslot_mems !~ /\s$board\s/) { $boardslot_mem=$board; if ($format_mem <= 2) { # E10000 &found_empty_bank("Bank 0"); &found_empty_bank("Bank 1"); &found_empty_bank("Bank 2"); &found_empty_bank("Bank 3"); } else { # E3x00/E4x00/E5x00/E6x00 &found_empty_bank("Bank 0"); &found_empty_bank("Bank 1"); } } } } if ($format_mem == 1) { # E10000 running Solaris 2.5.1 print " Bank 0 Bank 1 Bank 2 Bank 3\n"; print " MB DIMMs MB DIMMs MB DIMMs MB DIMMs\n"; print " ---- ----- ---- ----- ---- ----- ---- -----\n"; print @boards_mem; } if ($format_mem == 2) { # E10000 running Solaris 2.6 or later print "Brd Bank MB DIMMs Status Condition Speed\n"; print "--- ----- ---- ----- ------- ---------- -----\n"; print @boards_mem; } if ($format_mem == 3) { # E3x00/E4x00/E5x00/E6x00 running Solaris 2.5.1 print " Bank 0 Bank 1\n"; print " J3100-J3800 Interleave J3101-J3801 Interleave\n"; print " MB DIMMs Factor With MB DIMMs Factor With\n"; print " ---- ----- ------ ---- ---- ----- ------ ----\n"; print @boards_mem; } if ($format_mem == 4) { # E3x00/E4x00/E5x00/E6x00 running Solaris 2.6 or later print " Intrlv. Intrlv.\n"; print "Brd Bank MB DIMMs Status Condition Speed Factor With\n"; print "--- ----- ---- ----- ------- ---------- ----- ------- -------\n"; print @boards_mem; print "Bank 0 uses sockets J3100-J3800, Bank 1 uses sockets J3101-J3801\n"; } $empty_banks=" None" if ($empty_banks eq ""); print "empty memory banks:$empty_banks\n"; } $totmem=$installed_memory; &finish; exit; } # # Check to see if this system has memory defined in the prtdiag output # &check_prtdiag; $model=$diagbanner if ($diagbanner ne "" && $isX86); $untested=0 if ($boardfound_mem && $isX86 && $have_x86_devname == 0); &x86_devname; # Don't use prtdiag data on this clone $boardfound_mem=0 if ($manufacturer eq "AXUS"); # # Check to see if this system has module information in prtconf output # (Seen on Fujitsu GP7000, GP7000F, PrimePower) # if ($gotmodule ne "" || $gotmodulenames ne "") { @simmslots=($gotmodulenames) ? split(/\./, $gotmodulenames) : split(/\./, $gotmodule); for ($val=0; $val < scalar(@simmslots); $val += 2) { $socket=($gotmodulenames) ? $simmslots[$val] : "SLOT" . $val / 2; $simmsz=$simmslots[$val + 1]; $simmsize=hex("0x$simmsz") / $meg; $perlhexbug=1 if (($simmsize <= 0) && ($simmsz ne "00000000")); $totmem += $simmsize; if ($simmsize > 0) { push(@simmsizesfound, "$simmsize"); if (! $boardfound_mem) { push(@memorylines, "$socket has a ${simmsize}MB"); if ($simmsize > 1023) { push(@memorylines, " ("); push(@memorylines, $simmsize/1024); push(@memorylines, "GB)"); } push(@memorylines, " $memtype\n"); } $sockets_used .= " $socket"; } } &show_header; print (($boardfound_mem) ? @boards_mem : @memorylines); $totmem=$installed_memory; &finish; exit; } # # Check to see if this system has module information in ipmitool output # if ($have_ipmitool_data) { &check_ipmitool; $tmp=scalar(keys %ipmi_mem); if (defined($tmp)) { if ($tmp > 0) { &show_header; for (sort keys %ipmi_mem) { if ($ipmi_mem{$_} eq "") { $sockets_empty .= "," if ($sockets_empty ne ""); $sockets_empty .= " $_"; } else { print "socket $_: $ipmi_mem{$_}\n"; } } $totmem=$installed_memory; &print_empty_memory("memory sockets"); &finish; exit; } } } # # Check to see if this system has module information in smbios output # &check_smbios if ($have_smbios_data); # # Display memory if found in prtdiag output # if ($boardfound_mem) { &show_header; print @boards_mem if (! &is_virtualmachine); $totmem=$installed_memory; } # # Look for empty memory banks on Sun Fire 3800, 4800, 4810, 6800, 12K, 15K and # Netra T12 systems. Also Sun Fire E2900, E4900, E6900, E20K and E25K. # if ($ultra eq "Sun Fire" || $ultra eq "Sun Fire 15K" || $ultra eq "Sun Fire 12K" || $ultra eq "Netra T12" || $ultra =~ /Sun Fire [346]8[01]0\b/ || $ultra =~ /Sun Fire E[246]900\b/ || $ultra =~ /Sun Fire E2[05]K\b/) { foreach $cpu (@boardslot_cpus) { $empty_banks .= " $cpu/B0" if ($boardslot_mems !~ /$cpu\/B0/); $empty_banks .= " $cpu/B1" if ($boardslot_mems !~ /$cpu\/B1/); } $empty_banks=" None" if ($empty_banks eq ""); if ($boardslot_mems eq " ") { $empty_banks=" Unknown"; $exitstatus=1; } print "empty memory banks:$empty_banks\n" if ($boardfound_mem); } if ($boardfound_mem) { &finish; exit; } # # OK, get ready to print out results # for ($val=$val0; $val < scalar(@slots); $val += $valinc) { $newaddrmsb=substr($slots[$val - $valaddr - 1],3,5); $newaddrlsb=substr($slots[$val - $valaddr],0,3); $newsizemsb=($valinc == 4) ? substr($slots[$val - 1],3,5) : ""; $newsizelsb=substr($slots[$val],0,3); # Round up for DIMM value seen on US-T1 and US-T2 Niagara systems # Two Ranks of DIMMs appear as one in prtconf if ($newsizelsb eq "ff8") { if ($newsizemsb eq "00000") { $newsizemsb="00001"; # 512MB if ($ultra eq "T2000") { # Hack: 1 rank of smallest DIMMs $simmbanks=2; $simmsperbank=8; } # Hack: Could be 1 Rank of 1GB on T1000 $recognized=-1 if (($ultra eq "T1000") && (scalar(@slots) == 4)); } elsif ($newsizemsb eq "00001") { $newsizemsb="00002"; # 1GB # Hack: Could be 1 Rank of 1GB on T2000 $recognized=-1 if (($ultra eq "T2000") && (scalar(@slots) == 4)); # Hack: Could be 1 Rank of 2GB on T1000 $recognized=-1 if (($ultra eq "T1000") && (scalar(@slots) == 4)); } elsif ($newsizemsb eq "00003") { $newsizemsb="00004"; # 2GB # Hack: Could be 1 Rank of 2GB on T2000 $recognized=-1 if (($ultra eq "T2000") && (scalar(@slots) == 4)); } elsif ($newsizemsb eq "00007") { $newsizemsb="00008"; # Fully stuffed 2 Ranks of 2GB } $newsizelsb="000"; $installed_memory += 8; } elsif ($newsizelsb eq "7f8" && $newsizemsb eq "00000") { if ($ultra eq "T1000") { # Hack: 1 rank of smallest DIMMs $newsizelsb="800"; # 512MB $simmbanks=2; $simmsperbank=4; } else { $newsizelsb="800"; # Hack: unsupported 256MB DIMM } $installed_memory += 8; } elsif ($newsizelsb eq "f80") { if ($newsizemsb eq "00001") { $newsizemsb="00002"; # 1GB } elsif ($newsizemsb eq "00003") { $newsizemsb="00004"; # 2GB } elsif ($newsizemsb eq "00007") { $newsizemsb="00008"; # 4GB } elsif ($newsizemsb eq "0000f") { $newsizemsb="00010"; # 8GB } $newsizelsb="000"; $installed_memory += 128; } if ($sortslots) { $mods{"$newaddrmsb$newaddrlsb"}="$newsizemsb$newsizelsb"; } else { push(@newslots, "$newaddrmsb$newaddrlsb"); push(@newslots, "$newsizemsb$newsizelsb"); } } if ($sortslots) { for (sort keys %mods) { push(@newslots, $_); push(@newslots, $mods{$_}); } } # For Ultra-30, determine if interleaving of banks using four DIMMs if ($model eq "Ultra-30" || $ultra eq 30) { $interleave=2; # pairs show up in odd numbered address ranges for ($val=0; $val < scalar(@newslots); $val += 2) { $interleave=1 if ($newslots[$val] =~ /00000[1357]00/); } if ($interleave eq 2) { $simmrangex="00000200"; $simmbanks=4; $simmsperbank=4; } else { $simmrangex="00000100"; $simmbanks=8; $simmsperbank=2; } } # Check if SPARCsystem-600 has VME memory expansion boards if ($model eq "SPARCsystem-600" || $model =~ /Sun.4.600/) { for ($val=0; $val < scalar(@newslots); $val += 2) { if ($newslots[$val] =~ /00000[4-9ab]00/) { @simmsizes=(1,4,16); push(@socketstr, @socketstr_exp); push(@bankstr, @bankstr_exp); push(@bytestr, @bytestr_exp); $exp=($newslots[$val] =~ /00000[4-7]00/) ? "Expansion board 0 bank" : "Expansion board 1 bank"; push(@banksstr, ("$exp B0","$exp B1", "$exp B2","$exp B3")); } } } # Hack: Rewrite interleaved memory line for Ultra-80 or Enterprise 420R if (($model eq "Ultra-80" || $ultra eq 80 || $ultra eq "420R" || $ultra eq "Netra t140x") && $newslots[0] eq "00000000") { if ($newslots[1] eq "00001000" && $installed_memory eq 4096) { # 4GB of memory (maximum) using 16x256MB in Banks 0-3 $newslots[1]="00000400"; $newslots[2]="00000400"; $newslots[3]="00000400"; $newslots[4]="00000800"; $newslots[5]="00000400"; $newslots[6]="00000c00"; $newslots[7]="00000400"; $interleave=4; } elsif ($newslots[1] eq "00000800" && $installed_memory eq 2048) { # 2GB of memory using 8x256MB in Banks 0,1 $newslots[1]="00000400"; $newslots[2]="00000400"; $newslots[3]="00000400"; $interleave=2; } elsif ($newslots[1] =~ /00000[97653]00/) { # Early OBP releases showed total memory as a single bank $recognized=-1; } elsif ($newslots[1] eq "00000400" && $installed_memory eq 1024) { # 1GB of memory can be 4x256MB in Bank 0 or 16x64MB in Banks 0-3 # so flag OBP bug $recognized=-1; } elsif ($newslots[1] eq "00000200" && $installed_memory eq 512) { # 512MB of memory using 8x64MB in Banks 0,1 $newslots[1]="00000100"; $newslots[2]="00000400"; $newslots[3]="00000100"; $interleave=2; } } # Hack: Fix address ranges for Tatung COMPstation U60 and U80D if ($banner =~ /COMPstation_U60_Series/ || $banner =~ /COMPstation_U80D_Series/) { # Tatung Science and Technology, http://www.tsti.com for ($val=0; $val < scalar(@newslots); $val += 2) { $simmbanks=4 if ($newslots[$val] =~ /00000[46]00/); # Check for 256MB DIMMs or 256MB address range per bank if ($newslots[$val + 1] =~ /00000400/ || $newslots[$val] =~ /00000c00/) { $simmrangex="00000400"; $simmbanks=4; } } if ($simmbanks eq 6) { # Skipped address range similar to Sun Ultra 60 @socketstr=("J17","J32","J36","J40","J18","J33","J37","J41","?","?","?","?","?","?","?","?","J19","J34","J38","J42","J20","J35","J39","J43"); @slotstr=(1..8,"?","?","?","?","?","?","?","?",9..16); @bankstr=(0,0,0,0,1,1,1,1,"?","?","?","?","?","?","?","?",2,2,2,2,3,3,3,3); } else { @socketstr=("J17","J32","J36","J40","J18","J33","J37","J41","J19","J34","J38","J42","J20","J35","J39","J43"); @slotstr=(1..16); @bankstr=(0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3); } } # Hack: Try to rewrite memory line for Sun Blade 1000 & 2000 if prtdiag output # did not show the memory. This does not expect 2GB DIMMs to be used. if (($ultra eq "Sun Blade 1000" || $ultra eq "Sun Blade 2000" || $ultra eq "Sun Fire 280R") && ! $boardfound_mem) { # Assume 8GB is 8x1GB instead of 4x2GB if ($newslots[1] eq "00002000") { $newslots[1]="00001000"; $newslots[2]="00001000"; $newslots[3]="00001000"; $recognized=-2; } # Assume 6GB is 4x1GB + 4x512MB instead of 4x1.5GB if ($newslots[1] eq "00001800") { $newslots[1]="00001000"; $newslots[2]="00001000"; $newslots[3]="00000800"; $recognized=-1; } # Assume 5GB is 4x1GB + 4x256MB instead of 4x1280MB if ($newslots[1] eq "00001400") { $newslots[1]="00001000"; $newslots[2]="00001000"; $newslots[3]="00000400"; $recognized=-1; } # Assume 4.5GB is 4x1GB + 4x128MB instead of 4x1152MB if ($newslots[1] eq "00001200") { $newslots[1]="00001000"; $newslots[2]="00001000"; $newslots[3]="00000200"; $recognized=-1; } # Assume 3GB is 4x512MB + 4x256MB instead of 4x768MB if ($newslots[1] eq "00000c00") { $newslots[1]="00000800"; $newslots[2]="00001000"; $newslots[3]="00000400"; $recognized=-1; } # Assume 2.5GB is 4x512MB + 4x128MB instead of 4x640MB if ($newslots[1] eq "00000a00") { $newslots[1]="00000800"; $newslots[2]="00001000"; $newslots[3]="00000200"; $recognized=-1; } # Assume 1.5GB is 4x256MB + 4x128MB instead of 4x384MB if ($newslots[1] eq "00000600") { $newslots[1]="00000400"; $newslots[2]="00001000"; $newslots[3]="00000200"; $recognized=-1; } } # for prtconf output only, or fully stuffed LDOM servers if ($ultra eq "T5120" || $ultra eq "T5220" || $ultra eq "T6320"|| $ultra eq "T5140") { # Hack: Rewrite fully stuffed memory line if ($installed_memory >= 65408) { $newslots[0]="00000000"; $newslots[1]="00004000"; $newslots[2]="00004000"; $newslots[3]="00004000"; $newslots[4]="00008000"; $newslots[5]="00004000"; $newslots[6]="0000c000"; $newslots[7]="00004000"; } } if ($ultra eq "T5240") { # Hack: Rewrite fully stuffed memory line if ($installed_memory >= 130816) { $newslots[0]="00000000"; $newslots[1]="00004000"; $newslots[2]="00004000"; $newslots[3]="00004000"; $newslots[4]="00008000"; $newslots[5]="00004000"; $newslots[6]="0000c000"; $newslots[7]="00004000"; $newslots[8]="00010000"; $newslots[9]="00004000"; $newslots[10]="00014000"; $newslots[11]="00004000"; $newslots[12]="00018000"; $newslots[13]="00004000"; $newslots[14]="0001c000"; $newslots[15]="00004000"; } } # Check for dual bank DIMMs on Ultra AXmp+ if ($ultra eq "AXmp+") { if ($#newslots eq 1 && $newslots[0] eq "00000c00") { $simmsperbank=4; $dualbank=1; } if ($#newslots eq 3) { if ($newslots[2] =~ /00000[8c]00/) { $simmrangex="00000800"; $dualbank=1 if ($newslots[1] eq $newslots[3]); } } if ($#newslots ge 5) { $dualbank=1 if ($newslots[4] =~ /00000[8c]00/); } if ($dualbank eq 1) { @bankstr=("0,2","0,2","0,2","0,2","0,2","0,2","0,2","0,2","1,3","1,3","1,3","1,3","1,3","1,3","1,3","1,3"); # Rearrange slots if necessary if ($#newslots ge 5) { if ($newslots[4] eq "00000800") { $tmp=$newslots[2]; $newslots[2]=$newslots[4]; $newslots[4]=$tmp; $tmp=$newslots[3]; $newslots[3]=$newslots[5]; $newslots[5]=$tmp; } } } } for ($val=0; $val < scalar(@newslots); $val += 2) { $simmaddr=$newslots[$val]; $simmsz=$newslots[$val + 1]; $simmsize=hex("0x$simmsz"); $perlhexbug=1 if (($simmsize <= 0) && ($simmsz ne "00000000")); $totmem += $simmsize; if (($model eq "Sun 4/75" || $model eq "SS-2") && ($simmbanks < $bankcnt + 2)) { # SS2 SBus memory card $buffer=($simmaddr eq "00000080") ? "${buffer}SBus primary" : "${buffer}SBus secondary"; $start1=hex("0x$simmaddr") * $meg; $perlhexbug=1 if ($start1 < 0); $simmrange=hex("0x$simmrangex") * $meg; $perlhexbug=1 if (($simmrange <= 0) && ($simmrangex ne "00000000")); $start1x=sprintf("%08lx", $start1); $stop1x=sprintf("%08lx", $start1 + (2 * $simmrange) - 1); $totmem += $simmsize; $simmsize *= 2; $val += 2; $buffer .= " contains ${simmsize}MB"; $buffer .= " (address 0x${start1x}-0x$stop1x)" if ($verbose); $buffer .= "\n"; } elsif ($simmbanks > 0) { $start1=hex("0x$simmaddr") * $meg; $perlhexbug=1 if ($start1 < 0); if ($simmrangex ne "0") { $simmrange=hex("0x$simmrangex") * $meg; $perlhexbug=1 if (($simmrange <= 0) && ($simmrangex ne "00000000")); if ($simmrange < hex("0x00001000") * $meg) { $start1x=sprintf("%08lx", $start1); $stop1x=sprintf("%08lx", $start1 + ($simmsize * $meg) - 1); } else { # Systems with > 4GB of memory $start1x=$simmaddr . "00000"; $start1x=~s/^0000//; $stop1x=sprintf("%08lx", ($start1 / $meg) + $simmsize - 1) . "fffff"; $stop1x=~s/^0000//; } } $cnt=0; $maxcnt=$simmbanks * $simmsperbank / $simmspergroup; while ($cnt < $maxcnt) { if (($start1 >= $simmrange * $cnt) && ($start1 < $simmrange * ($cnt + 1))) { $bankcnt=$cnt; $cnt3=($bankcnt * $simmsperbank / $simmspergroup); if ($#socketstr) { $socket=$socketstr[$cnt3]; if ($#socketlabelstr) { $socketlabel=" ($socketlabelstr[$cnt3])" if (defined($socketlabelstr[$cnt3])); } if ($found10bit && $newslots[$val] !~ /00000[0-3]00/) { $socket=$socketstr[$cnt3 + 4]; if ($#socketlabelstr) { $socketlabel=" ($socketlabelstr[$cnt3 + 4])" if (defined($socketlabelstr[$cnt3 + 4])); } } } $order=$orderstr[$cnt3] if ($#orderstr); $group=$groupstr[$cnt3] if ($#groupstr); $slotnum=$slotstr[$cnt3] if ($#slotstr); if ($#bankstr) { $bank=$bankstr[$cnt3]; $bank=$bankstr[$cnt3 + 4] if ($found10bit && $newslots[$val] !~ /00000[0-3]00/); } $banks=$banksstr[$cnt3/$simmsperbank] if ($#banksstr); $byte=$bytestr[$cnt3] if ($#bytestr); } $cnt++; } # # Check for stacked DIMMs. A 128MB DIMM is sometimes seen as 2 # 64MB DIMMs with a hole in the address range. This may report # more slots than are really in a system. (i.e. a SS20 with # 8 32MB SIMMs reports 16 slots of 16MB each). # Special handling for $sortslots == 0 systems (Ultra 5/10, # Netra t1, Ultra CP 1400/1500, Ultra AXi/AXe/AXmp/AXmp+) # $stacked=0; if ($val < $#newslots - 2) { if ($sortslots == 0) { $start2=$start1 + ($simmrange * 2); $start2=$start1 + ($simmrange * 4) if ($banner =~ /Ultra CP 1400\b/ || $ultra eq "CP1400"); $start2x=sprintf("%08lx", $start2 / $meg); $stacked=2 if (($stacked == 0) && ($newslots[$val + 2] eq $start2x) && ($newslots[$val + 3] eq $simmsz)); if ($memtype eq "memory card") { # Some 256MB mezzanine boards are seen # as 4 64MB memory blocks with holes in # the address range. $start3=$start1 + ($simmsize * 2 * $meg) if ($simmsize eq 64); # Some 512MB mezzanine boards are seen # as 4 128MB memory blocks. $start3=$start1 + ($simmsize * $meg) if ($simmsize eq 128 && $banner !~ /Ultra CP 1400\b/ && $ultra ne "CP1400"); if ($banner =~ /\bCP2000\b/ || $ultra =~ /^CP2[01]\d0$/) { # 1GB mezzanine boards are seen # as 4 256MB memory blocks. $start3=$start1 + ($simmsize * $meg); $stacked=4; } $start3x=sprintf("%08lx", $start3 / $meg); if (($val < $#newslots - 6) && ($stacked != 0)) { $stacked=4 if (($newslots[$val + 4] eq $start3x) && ($newslots[$val + 5] eq $simmsz) && ($simmrange != $start3)); } } if ($ultra eq "AXi") { # Check for 10-bit column address DIMMs if ($newslots[$val] =~ /00000[0-3]80/) { $found10bit=1; } elsif ($stacked == 0) { $found11bit=1; } if ($found10bit && $newslots[$val] !~ /00000[0-3]00/) { $socket=$socketstr[$cnt3 + 4]; if ($#socketlabelstr) { $socketlabel=" ($socketlabelstr[$cnt3 + 4])" if (defined($socketlabelstr[$cnt3 + 4])); } $bank=$bankstr[$cnt3 + 4]; } } } else { $start2=$start1 + ($simmrange / 2); $start2x=sprintf("%08lx", $start2 / $meg); $stacked=2 if ($newslots[$val + 2] eq $start2x && $newslots[$val + 3] eq $simmsz && ($simmsize ne 64)); } # # Check for 32MB SIMMs in bank 1 on Classic or LX. # They look like 16MB SIMMs at 0x0000000 and 0x06000000 # Also check for 8MB SIMMs in bank 1 on Classic or LX. # They look like 4MB SIMMs at 0x0000000 and 0x06000000 # if ($model =~ /SPARCclassic/ || $model =~ /SPARCstation-LX/) { if (($start1 == 0) && (($simmsize == 32) || ($simmsize == 8))) { if ($newslots[$#newslots - 1] eq "00000060") { $totmem += $simmsize; $start2=hex("0x$newslots[$#newslots - 1]") * $meg; $start2x=sprintf("%08lx", $start2); $stop2x=sprintf("%08lx", $start2 + ($simmsize * $meg) - 1); $stop1x .= ", 0x${start2x}-0x$stop2x"; $simmsize *= 2; pop(@newslots); pop(@newslots); } } } if ($stacked == 2) { $totmem += $simmsize; $start2=hex("0x$newslots[$val + 2]") * $meg; if ($simmrange < hex("0x00001000") * $meg) { $start2x=sprintf("%08lx", $start2); $stop2x=sprintf("%08lx", $start2 + ($simmsize * $meg) - 1); } else { # Systems with > 4GB of memory $start2x=sprintf("%08lx", ($start2 / $meg)) . "00000"; $start2x=~s/^0000//; $stop2x=sprintf("%08lx", ($start2 / $meg) + $simmsize - 1) . "fffff"; $stop2x=~s/^0000//; } $stop1x .= ", 0x${start2x}-0x$stop2x"; $simmsize *= 2; $val += 2; } if ($stacked == 4) { $totmem += $simmsize * 3; $start2=hex("0x$newslots[$val + 2]") * $meg; $start2x=sprintf("%08lx", $start2); $stop2x=sprintf("%08lx", $start2 + ($simmsize * $meg) - 1); $stop1x .= ", 0x${start2x}-0x$stop2x"; $start3=hex("0x$newslots[$val + 4]") * $meg; $start3x=sprintf("%08lx", $start3); $stop3x=sprintf("%08lx", $start3 + ($simmsize * $meg) - 1); $stop1x .= ", 0x${start3x}-0x$stop3x"; $start4=hex("0x$newslots[$val + 6]") * $meg; $start4x=sprintf("%08lx", $start4); $stop4x=sprintf("%08lx", $start4 + ($simmsize * $meg) - 1); $stop1x .= ", 0x${start4x}-0x$stop4x"; $simmsize *= 4; $val += 6; } } # # Check for Voyager memory cards. A 32MB memory card is seen # as 4 8MB memory blocks with holes in the address range. # if (($model eq "S240") && ($start1 > 0) && ($simmsize == 16) && ($val < $#newslots - 4)) { $start=hex("0x$newslots[$val + 4]") - hex("0x$newslots[$val]"); $perlhexbug=1 if ($start < 0); $startx=sprintf("%08lx", $start); if ($newslots[$val + 1] eq "008" && $newslots[$val + 3] eq "008" && $startx eq "00000040") { $totmem += $simmsize; $startx=$newslots[$val + 2]; $start=hex("0x$startx") * $meg; $startx=sprintf("%08lx", $start); $perlhexbug=1 if ($start < 0); $stopx=sprintf("%08lx", $start + ($simmsize * $meg) - 1); $stop1x .= ", 0x${startx}-0x$stopx"; $startx=$newslots[$val + 4]; $start=hex("0x$startx") * $meg; $startx=sprintf("%08lx", $start); $perlhexbug=1 if ($start < 0); $stopx=sprintf("%08lx", $start + ($simmsize * $meg) - 1); $stop1x .= ", 0x${startx}-0x$stopx"; $simmsize *= 2; $val += 4; } } $slot0=$simmsize if ($start1 == 0); $simmsizeperbank=$simmsize / $simmsperbank; $smallestsimm=$simmsizeperbank if ($simmsize < $smallestsimm); $largestsimm=$simmsizeperbank if ($simmsize > $largestsimm); $found8mb=1 if ($simmsizeperbank == 8); $found16mb=1 if ($simmsizeperbank == 16); $found32mb=1 if ($simmsizeperbank == 32); push(@simmsizesfound, "$simmsizeperbank"); $cnt2=0; $maxcnt2=$simmsperbank / $simmspergroup; while ($cnt2 < $maxcnt2) { $socket='?' if (! defined($socket)); $bank='' if (! defined($bank)); $byte='' if (! defined($byte)); $socket='?' if ($socket eq ""); $recognized=0 if ($socket eq "?"); $sockets_used .= " $socket"; if ($simmspergroup > 1) { $buffer .= "${sockettype}s $socket have $simmsperbank "; $buffer .= $simmsize/$simmsperbank . "MB ${memtype}s"; } else { if ($socket eq "motherboard") { $buffer .= "$socket has "; $buffer .= $simmsize/$simmsperbank . "MB"; } else { if ($model eq "SPARCsystem-600" || $model =~ /Sun.4.600/) { $exp="Expansion board 0" if ($newslots[$val] =~ /00000[4-7]00/); $exp="Expansion board 1" if ($newslots[$val] =~ /00000[89ab]00/); if ($newslots[$val] =~ /00000[4-9ab]00/) { $buffer .= "$exp "; $banks="$exp bank $bank"; } $banks_used .= " $banks" if ($banks ne "" && $banks_used !~ /$banks/); } $buffer=($sockettype) ? "$buffer$sockettype $socket$socketlabel has a " : "$buffer$socket$socketlabel is a "; $buffer .= $simmsize/$simmsperbank . "MB"; $buffer .= " (" . $simmsize/$simmsperbank/1024 . "GB)" if ($simmsize/$simmsperbank > 1023); $buffer .= " $memtype"; push(@simmsizesfound, $simmsize/$simmsperbank); } } if ($verbose) { $buf=""; if ($order ne "") { $buf .= "$order"; $buf .= " $memtype" if ($memtype !~ /memory card/); } $slotnum="" if (! defined($slotnum)); $buf .= "slot $slotnum" if ($slotnum ne ""); $buf .= ", " if ($order ne "" || $slotnum ne ""); $buf .= "group $group, " if ($group ne ""); if ($bank ne "") { if ($bank =~ /Quad/) { $buf .= "$bank, "; } elsif ($dualbank eq 1) { $buf .= "banks $bank, "; } else { $buf .= "bank $bank, "; } $foundbank1or3=1 if ($bank eq 1 || $bank eq 3); } $buf .= "byte $byte, " if ($byte ne ""); $buf .= "address 0x${start1x}-0x$stop1x" if ($start1x ne "" && $showrange eq 1); $buffer .= " ($buf)" if ($buf ne ""); } $buffer .= "\n"; $cnt2++; $cnt3=($bankcnt * $simmsperbank / $simmspergroup) + $cnt2; if ($#socketstr) { $socket=$socketstr[$cnt3]; if ($#socketlabelstr) { $socketlabel=" ($socketlabelstr[$cnt3])" if (defined($socketlabelstr[$cnt3])); } if ($found10bit && $newslots[$val] !~ /00000[0-3]00/) { $socket=$socketstr[$cnt3 + 4]; if ($#socketlabelstr) { $socketlabel=" ($socketlabelstr[$cnt3 + 4])" if (defined($socketlabelstr[$cnt3 + 4])); } } # print &runtime . "socketstr[$cnt3], bankcnt=$bankcnt, cnt2=$cnt2\n" if ($DEBUG); } $order=$orderstr[$cnt3] if ($#orderstr); $group=$groupstr[$cnt3] if ($#groupstr); $slotnum=$slotstr[$cnt3] if ($#slotstr); if ($#bankstr) { $bank=$bankstr[$cnt3]; $bank=$bankstr[$cnt3 + 4] if ($found10bit && $newslots[$val] !~ /00000[0-3]00/); } $banks=$banksstr[$cnt3/$simmsperbank] if ($#banksstr); $byte=$bytestr[$cnt3] if ($#bytestr); } } elsif ($ultra eq 1 || $ultra eq 5 || $ultra eq 10 || $ultra eq 30) { $buffer .= "bank $slot has a pair of " . $simmsize/2 . "MB DIMMs\n"; push(@simmsizesfound, $simmsize/2); } elsif ($ultra eq 2 || $ultra eq 250 || $ultra eq 450 || $ultra eq 80 || $ultra eq "420R" || $ultra eq "Netra t140x" || $ultra eq "Netra ft1800") { $buffer .= "group $slot has four " . $simmsize/4 . "MB DIMMs\n"; push(@simmsizesfound, $simmsize/4); } elsif ($ultra eq 60 || $ultra eq "220R") { $buffer .= "group $slot has four " . $simmsize/2 . "MB DIMMs\n"; push(@simmsizesfound, $simmsize/2); } elsif ($ultra eq "e") { $buffer .= "group $slot has eight " . $simmsize/8 . "MB DIMMs\n"; push(@simmsizesfound, $simmsize/8); } elsif ($socket eq "motherboard") { $buffer .= "$slot has ${simmsize}MB\n"; push(@simmsizesfound, $simmsize); } else { $buffer .= "slot $slot has a ${simmsize}MB"; $buffer .= " (" . $simmsize/1024 . "GB)" if ($simmsize > 1023); $buffer .= " $memtype\n"; push(@simmsizesfound, $simmsize); } $slot++; } # # Try to distinguish Ultra 5 from Ultra 10 # Cannot distinguish Ultra 5/333MHz from Ultra 10/333MHz (375-0066 motherboard) # Cannot distinguish Ultra 5/440MHz from Ultra 10/440MHz (375-0079 motherboard) # if ($model eq "Ultra-5_10" || $ultra eq "5_10" || $ultra eq 5 || $ultra eq 10) { if ($motherboard =~ /375-0009/) { $ultra=($sysfreq > 91) ? 10 : 5; $realmodel=($ultra eq 5) ? "(Ultra 5)" : "(Ultra 10)"; } # Determine if interleaving of banks using four identical sized DIMMs # Assume 1-way interleaving with mix of stacked and unstacked DIMMs $interleave=1; if (($#newslots == 3) && ($stacked == 0)) { $interleave=2 if ($newslots[1] eq $newslots[3]); } if (($#newslots == 7) && ($stacked == 2)) { $interleave=2 if ($newslots[1] eq $newslots[5]); } } &finish; exit; sub hpux_cstm { print &runtime . "in hpux_cstm\n" if ($DEBUG); $HPUX=1; $config_cmd="echo 'selclass qualifier memory;info;wait;infolog'|/usr/sbin/cstm"; if (($filename eq "") && ($verbose == 3)) { # Only include CPU information if E-mailing maintainer since # this data is used by memconf only for regression testing $config_cmd="echo 'selclass qualifier cpu;info;wait;selclass qualifier memory;info;wait;infolog'|/usr/sbin/cstm"; } $config_command="cstm"; $model=$machine; if ($filename eq "") { $osmajor=$osrel; $osmajor=~s/[^.]*.[0B]*//; $osmajor=~s/\..*//; &hpux_osrelease; $model=&mychomp(`/usr/bin/model`) if (-x '/usr/bin/model'); $cpuversion=""; if (-x '/usr/bin/getconf') { $kernbit=&mychomp(`/usr/bin/getconf KERNEL_BITS`); $kernbit .= "-bit kernel" if ($kernbit); $cpuversion=&mychomp(`/usr/bin/getconf CPU_VERSION`); } $kernbit="32-bit kernel" if ($osmajor <= 10); if (-x '/usr/contrib/bin/machinfo') { @machinfo=&run("/usr/contrib/bin/machinfo"); &hpux_machinfo; } elsif (-x '/usr/sbin/ioscan') { $ncpu=&mychomp(`/usr/sbin/ioscan -kfnC processor | grep '^processor' | wc -l`); } else { # Get CPU count from kernel if ($machine eq "ia64") { $ncpu=&hpux_kernelval("active_processor_count"); } else { $ncpu=&hpux_kernelval("processor_count"); } } $ncpu=1 if (! defined($ncpu)); # Assume it has at least 1 CPU $cpubanner .= "$ncpu X " if ($ncpu > 1); if ($machine =~ /^9000\//) { $schedmodel=$model; $schedmodel=~s/^.*\/(.*$)/$1/; if (-r '/usr/sam/lib/mo/sched.models') { $cputype=&myawk('/usr/sam/lib/mo/sched.models',"^$schedmodel\\b",2); } if ($cputype eq "" && -r '/opt/langtools/lib/sched.models') { $cputype=&myawk('/opt/langtools/lib/sched.models',"^$schedmodel\\b",2); } if ($cputype eq "" && -r '/usr/lib/sched.models') { $cputype=&myawk('/usr/lib/sched.models',"^$schedmodel\\b",2); } $cpubanner .= "$cputype " if ($cputype ne ""); if ($cpuversion == 768) { $cpubanner .= "Itanium[TM] 1"; } elsif ($cpuversion == 524) { $cpubanner .= "Motorola MC68020"; } elsif ($cpuversion == 525) { $cpubanner .= "Motorola MC68030"; } elsif ($cpuversion == 526) { $cpubanner .= "Motorola MC68040"; } else { $cpubanner .= "PA-RISC"; if ($cpuversion == 532) { $cpubanner .= " 2.0"; } elsif ($cpuversion == 529) { $cpubanner .= " 1.2"; } elsif ($cpuversion == 528) { $cpubanner .= " 1.1"; } elsif ($cpuversion == 523) { $cpubanner .= " 1.0"; } elsif (&hpux_kernelval("cpu_arch_is_2_0")) { $cpubanner .= " 2.0"; } elsif (&hpux_kernelval("cpu_arch_is_1_1")) { $cpubanner .= " 1.1"; } elsif (&hpux_kernelval("cpu_arch_is_1_0")) { $cpubanner .= " 1.0"; } } } else { $cpubanner .= "$machine"; } # Get CPU speed from kernel $cfreq=&hpux_kernelval("itick_per_usec"); if (defined($cfreq)) { $cpubanner .= ", ${cfreq}MHz"; } else { $cfreq=&hpux_kernelval("itick_per_tick"); if (defined($cfreq)) { $cfreq /= 10000; $cpubanner .= ", ${cfreq}MHz"; } } } else { $model=""; $machine=""; $platform=""; $os="HP-UX"; } $model="HP $model" if ($model !~ /HP/i); $model=~s/ +$//; # Use HP-UX Support Tool Manager software to attempt to report memory if ($filename eq "") { &show_header; @config=&run("$config_cmd"); } foreach $line (@config) { $line=&dos2unix($line); next if ($line eq "\n" || $line =~ /^ +$/ || $line =~ /^ +=+$/); if ($line =~ /=\-\+\-=/) { $flag_mem=0; # End of section next; } if ($line =~ /\bPA [78]\d+.* CPU\b/) { $cputype=&mychomp($line); $cputype=~s/^.* (PA [78]\d+).*/$1/; $cputype=~s/ //g; print &runtime . "hpux_cstm cputype=$cputype\n" if ($DEBUG); $ncpu++; } if ($line =~ /^'9000\// && $model eq "HP" && $machine eq "") { @linearr=split(' ', $line); $machine=$linearr[0]; $machine=~s/\'//g; $platform=$machine; $model="HP $machine"; } if ($flag_mem == 1) { next if ($line =~ /Log creation time/); if ($line =~ /^-- Information Tool Log for /) { $flag_mem=0; # End of memory section next; } push(@boards_mem, "$line"); $boardfound_mem=1; } if (($line =~ /^-- Information Tool Log for .*MEMORY /) && ($flag_mem == 0)) { $flag_mem=1; # Start of memory section } } if ($machine =~ /^9000\/7/) { $modelmore="workstation"; } elsif ($machine =~ /^9000\/8/) { $modelmore="server"; } if ($filename ne "") { &hpux_machinfo; if ($cputype ne "") { $cpubanner="$ncpu X " if ($ncpu > 1); $cpubanner .= "$cputype"; } else { $cpubanner="$ncpu cpus" if ($ncpu > 1); } if (defined($cfreq)) { $cpubanner .= ", ${cfreq}MHz"; } &show_header; } if ($boardfound_mem) { print "@boards_mem"; } else { if ($filename eq "") { # Get total memory from kernel if ($osmajor > 10) { $totmem=&hpux_kernelval("memory_installed_in_machine"); } else { $totmem=&hpux_kernelval("physmem"); } if (defined($totmem)) { $totmem /= 256; # Convert pages to MB } else { $totmem=0; } if (-r '/var/adm/syslog/syslog.log' && $totmem == 0) { open(FILE, "; close(FILE); @physical=grep(/Physical:/,@syslog); foreach $line (@physical) { @linearr=split(' ', $line); $totmem=$linearr[6] / 1024; last; } } print " Total Physical Memory : ${totmem}MB\n" if ($totmem > 0); } print "ERROR: /usr/sbin/cstm did not report the memory installed in this HP-UX system.\n"; print " Cannot display detailed memory configuration. Aborting.\n"; $exitstatus=1; } # Flag untested CPU types (machine="" on regression test files) if ($machine eq "" || $machine =~ /^9000\// || $machine eq "ia64") { # Tested HP-UX on PA-RISC and Itanium $untested=0; } else { $untested=1; $untested_type="CPU" if ("$untested_type" eq ""); } &show_untested if ($untested); &mailmaintainer if ($verbose == 3); exit $exitstatus; } sub hpux_kernelval { return if (! -r '/dev/kmem'); $_=shift; $kernel="/hp_ux"; $kernel="/stand/vmunix" if (-f '/stand/vmunix'); $adb="/usr/bin/adb"; $adb .= " -o" if ($machine eq "ia64"); $kernelval=`echo "$_/D" | $adb $kernel /dev/kmem 2>/dev/null | tail -1`; @linearr=split(' ', $kernelval); return $linearr[1]; } sub hpux_machinfo { print &runtime . "in hpux_machinfo\n" if ($DEBUG); $flag_cpu=0; $flag_platform=0; $flag_os=0; # parse machinfo output for CPU and other information foreach $line (@machinfo) { $line=&dos2unix($line); $line=&mychomp($line); if ($line eq "" || $line =~ /^ +$/) { # End of sections $flag_cpu=0; $flag_platform=0; $flag_os=0; next; } if ($line =~ /^CPU info:/) { $flag_cpu=1; # Start of CPU section next; } if ($flag_cpu == 1) { # Parse CPU count, type and frequency for cpubanner if ($line =~ /^ *\d+ .*processors* \(\d.*Hz,/) { $ncpu=$line; $ncpu=~s/^ *(\d+) .*/$1/; $cputype=$line; $cputype=~s/^ *\d+ (.*) processor.*/$1/; $cfreq=$line; $cfreq=~s/^.*processor.* \((\d.* [GM]Hz),/$1/; if ($cfreq =~ /GHz/) { $cfreq=~s/ GHz.*$//; $cfreq *= 1000; } else { $cfreq=~s/ MHz.*$//; } $flag_cpu=0; print &runtime . "hpux_machinfo cputype=$cputype\n" if ($DEBUG); next; } elsif ($line =~ /Number of CPUs = /) { @linearr=split('=', $line); $ncpu=$linearr[1]; $ncpu=~s/^ *//; next; } elsif ($line =~ /processor model: /) { @linearr=split(':', $line); $cputype=$linearr[1]; $cputype=~s/^ *\d+ +//; $cputype=~s/ processor$//; print &runtime . "hpux_machinfo cputype=$cputype\n" if ($DEBUG); next; } elsif ($line =~ /Clock speed = \d+ [GM]Hz/) { @linearr=split('=', $line); $cfreq=$linearr[1]; $cfreq=~s/^ *//; if ($cfreq =~ /GHz/) { $cfreq=~s/ GHz//; $cfreq *= 1000; } else { $cfreq=~s/ MHz//; } next; } } if ($line =~ /^Platform info:/) { $flag_platform=1; # Start of Platform section next; } if ($flag_platform == 1 && $model eq "HP" && $line =~ /\bModel/i) { @linearr=split('[:=]', $line); $model=$linearr[1]; $model=~s/^ +//; $model=~s/"//g; $model=~s/ +$//; if ($model =~ /^ia64/) { $machine="ia64"; $platform="ia64"; $kernbit="64-bit kernel"; } $model="HP $model" if ($model !~ /HP/i); next; } if ($line =~ /^OS info:/) { $flag_os=1; # Start of OS section next; } if ($flag_os == 1 && $osrel eq "" && $line =~ /\bRelease/i) { @linearr=split('[:=]', $line); $osrel=$linearr[1]; $osrel=~s/^ +//; $osrel=~s/^HP-UX //; &hpux_osrelease; next; } } } sub hpux_osrelease { if ($osrel eq "B.11.11") { $osrelease="11i v1"; } elsif ($osrel eq "B.11.20") { $osrelease="11i v1.5"; } elsif ($osrel eq "B.11.22") { $osrelease="11i v1.6"; } elsif ($osrel eq "B.11.23") { $osrelease="11i v2"; } elsif ($osrel eq "B.11.31") { $osrelease="11i v3"; } } sub myawk { $awkfile=shift; $awksearch=shift; $awkfield=shift; open(FILE, "<$awkfile"); @tmp=; close(FILE); foreach $line (@tmp) { if ($line =~ /$awksearch/) { @linearr=split(' ', $line); return $linearr[$awkfield]; } } return ""; } sub x86_devname { return if ($have_x86_devname); return if ($machine =~ /sun4/); return if (! defined($model)); print &runtime . "in x86_devname, model=$model\n" if ($DEBUG); # x86 Sun development names and family part number $m=(defined($manufacturer)) ? "$manufacturer $model" : $model; $m=~s/-/ /g; $untested=2 if ($m =~ /Sun /i || $m =~ /Netra /i); if ($m =~ /Sun .*W1100z\b/i) { $devname="Metropolis 1P"; $familypn="A58"; } if ($m =~ /Sun .*W2100z\b/i) { $devname="Metropolis 2P"; $familypn="A59"; } if ($m =~ /Sun .*W1100z.*2100z\b/i) { $devname="Metropolis"; $familypn="A58 (W1100z), A59 (W2100z)"; $untested=0 if ("$os" eq "Linux"); } if ($m =~ /Sun .*V20z\b/i) { $devname="Stinger 2P"; $familypn="A55"; $untested=0 if ("$os" eq "SunOS"); } if ($m =~ /Sun .*V40z\b/i) { $devname="Stinger 4P"; $familypn="A57"; $untested=0; } if ($m =~ /Sun .*V20z.*40z\b/i) { $devname="Stinger"; $familypn="A55 (V20z), A57 (V40z)"; } if ($m =~ /Sun .*X2100\b/i) { $devname="Aquarius"; $familypn="A75"; $untested=0; } if ($m =~ /Sun .*X2100 M2\b/i) { $devname="Leo"; $familypn="A84"; $untested=0 if ("$os" eq "SunOS"); } if ($m =~ /Sun .*X2200 M2\b/i) { $devname="Taurus"; $familypn="A85"; $untested=0 if ("$os" eq "SunOS"); } if ($m =~ /Sun .*X2200 speedbump\b/i) { # AMD 4-Core Barcelona processor $devname="Taurus2"; } if ($m =~ /Sun .*X2250\b/i) { $devname="Venus"; } if ($m =~ /Sun .*X2270\b/i) { # X2270 has 1 or 2 Quad-Core hyperthreaded CPUs $hyperthread=1; } if ($m =~ /Sun .*X4100\b/i) { $devname="Galaxy 1U"; $familypn="A64"; $untested=0; } if ($m =~ /Sun .*X4100 M2\b/i) { $devname="Galaxy 1F"; $familypn="A86"; $untested=0; } if ($m =~ /Sun .*X4100E\b/i) { $devname="Galaxy 1E"; # Cancelled $familypn="A72"; } if ($m =~ /Sun .*X4140\b/i) { $devname="Dorado 1U"; $familypn="B12"; $untested=0 if ("$os" eq "SunOS"); } if ($m =~ /Sun .*X4150\b/i) { $devname="Doradi 1U"; $familypn="B13"; $untested=0 if ("$os" eq "SunOS"); } if ($m =~ /Sun .*X4170\b/i) { # X4170 has 1 or 2 Quad-Core hyperthreaded CPUs $hyperthread=1; $devname="Lynx 1U"; $untested=0 if ("$os" eq "Linux"); } if ($m =~ /Sun .*X4200\b/i) { $devname="Galaxy 2U"; $familypn="A65"; $untested=0 if ("$os" eq "SunOS"); } if ($m =~ /Sun .*X4200 M2\b/i) { $devname="Galaxy 2F"; $familypn="A87"; $untested=0; } if ($m =~ /Netra .*X4200\b/i) { $devname="Draco"; $familypn="N87"; } if ($m =~ /Sun .*X4200E\b/i) { $devname="Galaxy 2E"; # Cancelled $familypn="A73"; } if ($m =~ /Sun .*X4240\b/i) { $devname="Dorado 2U"; $familypn="B14"; } if ($m =~ /Netra .*X4250\b/i) { $devname="Aries"; } if ($m =~ /Sun .*X4250\b/i) { $devname="Doradi 2U"; } if ($m =~ /Sun .*X4270\b/i || $m =~ /Sun .*X4275\b/i ) { # X4270/X4275 has 1 or 2 Quad-Core hyperthreaded CPUs $hyperthread=1; $devname="Lynx 2U"; $untested=0; } if ($m =~ /Sun .*X4440\b/i) { $devname="Tucana"; $familypn="B16"; $untested=0 if ("$os" eq "SunOS"); } if ($m =~ /Sun .*X4450\b/i) { $devname="Tucani"; $familypn="B15"; $untested=0 if ("$os" eq "SunOS"); } if ($m =~ /Netra .*X4450\b/i) { $devname="Argo"; } if ($m =~ /Sun .*X4500\b/i) { $devname="Thumper"; $familypn="A76"; $untested=0 if ("$os" eq "SunOS"); } if ($m =~ /Sun .*X4540\b/i) { $devname="Thor"; $familypn="B24"; $untested=0 if ("$os" eq "SunOS"); } if ($m =~ /Sun .*X4600\b/i) { $devname="Galaxy 4U"; $familypn="A67"; # Same for X4600 M2 $devname="Galaxy 4F" if ($m =~ /Sun .*X4600 M2\b/); $untested=0 if ("$os" eq "SunOS"); } if ($m =~ /Sun .*X4950\b/i) { $devname="Streamstar StreamSwitch 2"; $familypn="A91"; } # The Sun Blade 8000 Modular System uses the Sun Blade # X8420/X8440/X8450 Server Modules if ($m =~ /Sun .*Blade 8000\b/i) { $devname="Andromeda 19"; $familypn="A81"; if ($m =~ /Sun .*Blade 8000 P\b/i) { $devname="Andromeda 14"; $familypn="A82"; } $untested=2; } if ($m =~ /Sun .*Fire V60x\b/i) { $devname="Grizzly"; $familypn="A48"; } if ($m =~ /Sun .*Fire V65x\b/i) { $devname="Grizzly 2U"; $familypn="A48"; } if ($m =~ /Sun .*Ultra *20\b/i) { $devname="Marrakesh"; $familypn="A63"; $untested=2; $untested=0 if ("$os" eq "SunOS"); } if ($m =~ /Sun .*Ultra *20 M2\b/i) { $devname="Munich"; $familypn="A88"; $untested=2; $untested=0 if ("$os" eq "SunOS"); } if ($m =~ /Sun .*Ultra *24\b/i) { $devname="Ursa"; $familypn="B21"; $untested=0; } if ($m =~ /Sun .*Ultra *40\b/i) { $devname="Sirius"; $familypn="A71"; $untested=2; $untested=0 if ("$os" eq "Linux"); } if ($m =~ /Sun .*Ultra *40 M2\b/i) { $devname="Stuttgart"; $familypn="A83"; $untested=2; $untested=0 if ("$os" eq "SunOS"); } # The Sun Blade 6000 and 6048 Modular Systems use the Sun Blade # X6220, X6250 or T6300 Server Modules. if ($m =~ /Sun .*Blade 6000\b/i) { $devname="Constellation 10"; $familypn="A90"; $untested=2; } if ($m =~ /Sun .*Blade 6048\b/i) { $devname="Constellation 48"; $familypn="B22"; $untested=2; } if ($m =~ /Sun .*X6220\b/i) { $devname="Gemini"; $familypn="A92"; } if ($m =~ /Sun .*X6240\b/i) { $devname="Gemini+"; } if ($m =~ /Sun .*X6250\b/i) { $devname="Wolf"; $familypn="A93"; $untested=0 if ("$os" eq "SunOS"); } if ($m =~ /Sun .*X6270\b/i) { # X6270 has 1 or 2 Quad-Core hyperthreaded CPUs $hyperthread=1; } if ($m =~ /Sun .*X6275\b/i ) { # X6275 has 2 or 4 Quad-Core hyperthreaded CPUs $hyperthread=1; } if ($m =~ /Sun .*X6420\b/i) { $devname="Pegasus"; } if ($m =~ /Sun .*X6440\b/i) { $devname="Pegasus+"; } if ($m =~ /Sun .*X6450\b/i) { $devname="Hercules2"; } if ($m =~ /Sun .*X8400\b/i) { $devname="Andromeda"; } if ($m =~ /Sun .*X8420\b/i) { $devname="Capella"; } if ($m =~ /Sun .*X8440\b/i) { $devname="Mira"; $familypn="A98"; } if ($m =~ /Sun .*X8450\b/i) { # Quad-Core CPU for Sun Blade 8000 chassis $devname="Scorpio"; } if ($m =~ /Sun .*X8600\b/i) { $devname="Antares"; } $have_x86_devname=1 if ($devname ne ""); } sub linux_release { $release=""; $kernbit=""; $kernbit="32-bit kernel, " if ($machine =~ /i.86/ || $machine =~ /sparc/); $kernbit="64-bit kernel, " if ($machine eq "x86_64" || $machine eq "sparc64" || $machine eq "ia64"); if (-f '/etc/freebsd-update.conf') { # FreeBSD @linearr=split(' ', $kernver); $release=$linearr[0] . " " . $linearr[1]; $release .= ", $kernbit$os $osrel"; return; } foreach $relfile ('/etc/centos-release','/etc/fedora-release', '/etc/mandriva-release','/etc/mandrakelinux-release', '/etc/mandrake-release','/etc/slackware-version', '/etc/gentoo-release','/etc/redhat-release', '/etc/SuSE-release') { if (-f "$relfile") { $release=&mychomp(`head -1 $relfile`); $release .= ", $kernbit$os $osrel"; return; } } if (-d '/KNOPPIX') { if (-r '/cdrom/index.html') { open(FILE, ") { if (//) { $release=&mychomp($_); $release=~s/<TITLE>//; $release=~s/<\/TITLE.*//; } } close(FILE); } elsif (-r '/init') { open(FILE, "</init"); while(<FILE>) { if (/DISTRO=/) { $release=&mychomp($_); $release=~s/.*DISTRO="*(.*)$/$1/; $release=~s/"//g; } } close(FILE); } $release="Knoppix" if ($release eq ""); $release .= ", $kernbit$os $osrel"; if (-f '/etc/issue') { $tmp=&mychomp(`head -1 /etc/issue`); $tmp=~s/\s*\\n.*//; $release .= ", $tmp"; } return; } elsif (-f '/gos/gOS/gos.html') { $release="gOS, $kernbit$os $osrel"; if (-f '/etc/issue') { $tmp=&mychomp(`head -1 /etc/issue`); $tmp=~s/\s*\\n.*//; $release .= ", $tmp"; } return; } elsif (-f '/etc/motd.static') { $release=&mychomp(`head -1 /etc/motd.static`); $release=~s/\s*\(.*//; $release=~s/^Welcome to //; $release .= ", $kernbit$os $osrel"; if ($release =~ /Knoppix/i && -f '/etc/issue') { $tmp=&mychomp(`head -1 /etc/issue`); $tmp=~s/\s*\\n.*//; $release="Knoppix, $kernbit$os $osrel, $tmp"; } return; } elsif (-f '/etc/issue') { $release=&mychomp(`head -1 /etc/issue`); $release=~s/\s*\\n.*//; ($release)=(/Welcome to (.*) - /) if ($release =~ /Welcome to /); } elsif (-f '/etc/motd') { $release=&mychomp(`head -1 /etc/motd`); $release=~s/\s*\(.*//; $release=~s/^Welcome to //; } $release=(defined($release)) ? "$release, $kernbit$os $osrel" : ""; } sub roundup_memory { $newval=shift; # Round up memory (may have 128MB or more reserved) for ($val=1024; $val <= 4096; $val += 512) { $newval=$val if ($newval >= $val-128 && $newval < $val); } for ($val=4096; $val <= 7168; $val += 1024) { $newval=$val if ($newval >= $val-256 && $newval < $val); } for ($val=7168; $val <= 14336; $val += 1024) { $newval=$val if ($newval >= $val-512 && $newval < $val); } for ($val=14336; $val <= 262144; $val += 2048) { $newval=$val if ($newval >= $val-512 && $newval < $val); } return($newval); } sub check_dmidecode_ver { @dmidecode_verarr=split(/\./, $dmidecode_ver); @latest_dmidecode_verarr=split(/\./, $latest_dmidecode_ver); if (($dmidecode_verarr[0] < $latest_dmidecode_verarr[0]) || ($dmidecode_verarr[0] == $latest_dmidecode_verarr[0] && $dmidecode_verarr[1] < $latest_dmidecode_verarr[1])) { print " Your dmidecode package is an old version"; print " ($dmidecode_ver)" if ($dmidecode_ver); print ", so consider upgrading\n"; print " to dmidecode-$latest_dmidecode_ver or later.\n"; } elsif ($dmidecode_ver) { print " Your dmidecode version is $dmidecode_ver.\n"; } } sub linux_dmi { &find_helpers; if (($filename eq "") && ($free_cmd ne "")) { # Check memory detected by OS @free=&run("$free_cmd"); $have_free_data=1; } if ($have_free_data) { foreach $line (@free) { $line=&dos2unix($line); if ($line =~ /Mem:/) { @linearr=split(' ', $line); $freephys=$linearr[1]; last; } } } $DMI6=0; $DMI6cnt=0; $DMI6totmem=0; $DMI17=0; $DMI17cnt=0; $DMI17totmem=0; $DMItype=0; $platform=""; $FoundEnd=0; $config_command="dmidecode"; if ($filename eq "") { $DmiFile="$config_cmd 2>&1 |"; &linux_release if ("$release" eq ""); if ($ipmitool_cmd ne "" && $have_ipmitool_data == 0) { @ipmitool=&run("$ipmitool_cmd fru"); $have_ipmitool_data=1; } } else { $DmiFile="<$filename"; } open(FILE, $DmiFile); while(<FILE>) { next if (/<OUT OF SPEC>/i || / Unknown/i || /: Other/i || /: \.\./ || /: Not Specified/i || /:\s+$/); ($dmidecode_ver)=(/.* dmidecode (.*)/i) if (/ dmidecode /i); ($permission_error)=(/(.*)/) if (/Permission denied/i); ($dmidecode_error)=(/# *(.*)/) if (/No SMBIOS nor DMI entry point found/i); ($DMItype)=(/DMI type (\d+)/i) if (/\bDMI type /i); # Keep walking the dmidecode output for more about the system # Check system information if ($DMItype == 1) { ($manufacturer)=(/: +(.*\S) *$/) if (/^\s*Manufacturer: /i || /^\s*Vendor: /i); ($model)=(/: +(.*\S) *$/) if (/^\s*Product Name: /i || /^\s*Product: /i); } if ($DMItype == 2) { if ($manufacturer) { if ($manufacturer =~ /To Be Filled/i || $manufacturer =~ /System Manufacturer/i) { ($manufacturer)=(/: +(.*\S) *$/) if (/^\s*Manufacturer: /i || /^\s*Vendor: /i); } } else { ($manufacturer)=(/: +(.*\S) *$/) if (/^\s*Manufacturer: /i || /^\s*Vendor: /i); } if ($model) { if ($model =~ /To Be Filled/i || $model =~ /System Name/i || $model =~ /XXXX/i) { ($model)=(/: +(.*\S) *$/) if (/^\s*Product Name: /i || /^\s*Product: /i); if ($manufacturer) { $model=~s/^$manufacturer // if ($model); } } } else { ($model)=(/: +(.*\S) *$/) if (/^\s*Product Name: /i || /^\s*Product: /i); if ($manufacturer) { $model=~s/^$manufacturer // if ($model); } } } # Check CPU information if ($DMItype == 4) { if (/^\s*Processor Information$/i || /^\s*Processor$/i) { $cpuarr++; $ncpu++; } ($CPUSocketDesignation[$cpuarr])=(/: +(.*\S) *$/) if (/^\s*Socket Designation: /i); ($CPUFamily[$cpuarr])=(/: +(.*\S) *$/) if (/^\s*Family: /i || /^\s*Processor Family: /i); if (/^\s*Manufacturer: /i || /^\s*Processor Manufacturer: /i) { ($CPUManufacturer[$cpuarr])=(/: +(.*\S) *$/); $CPUManufacturer[$cpuarr]=~s/GenuineIntel/Intel/; } ($CPUVersion[$cpuarr])=(/: +(.*\S) *$/) if (/^\s*Version: /i || /^\s*Processor Version: /i); ($ExtSpeed[$cpuarr])=(/: +(.*\S) *$/) if (/^\s*External Clock: /i); ($CPUSpeed[$cpuarr])=(/: +(.*\S) *$/) if (/^\s*Current Speed: /i); if (/^\s*Status: /i) { ($CPUStatus[$cpuarr])=(/: +(.*\S) *$/); if ($CPUStatus[$cpuarr] =~ /Unpopulated/i) { $ncpu--; $necpu++; } } } # Check memory controller information if ($DMItype == 5) { ($ECC)=(/: +(.*\S) *$/) if (/^\s*Error Detecting Method: /i && ! $ECC); ($interleave)=(/: +(.*\S) *$/) if (/^\s*Current Interleave: /i && $interleave eq "0"); ($MAXMEM)=(/: +(.*\S) *$/) if (/^\s*Maximum Total Memory Size: /i && ! $MAXMEM); } # Check each memory device if ($DMItype == 6) { $DMI6=1; $memarr++ if (/^\s*Memory Module Information$/i || /^\s*Memory Bank$/i); ($Locator6[$memarr])=(/: +(.*\S) *$/) if (/^\s*Socket Designation: /i || /^\s*Socket: /i); ($Speed6[$memarr])=(/: +(.*\S) *$/) if (/^\s*Current Speed: /i); ($Type6[$memarr])=(/: +(.*\S) *$/) if (/^\s*Type: /i); if (/^\s*Installed Size: /i) { ($Size6[$memarr])=(/: +(.*\S) *$/); if ($Size6[$memarr] !~ /Not Installed/i && $Size6[$memarr] !~ /No Module Installed/i) { $simmsize=$Size6[$memarr]; $simmsize=~s/ *MB.*//ig; $DMI6totmem += $simmsize if ($simmsize); $SizeDetail[$memarr]=$Size6[$memarr]; $Size6[$memarr]=$simmsize . "MB"; $SizeDetail[$memarr]=~s/\d+ *MBy*t*e* *//i; } } $DMI6cnt=$memarr + 1; } # SMBIOS 2.1 added DMI Types 16 & 17, obsoleting Types 5 & 6 # Check physical memory array if ($DMItype == 16) { ($ECC)=(/: +(.*\S) *$/) if (/^\s*Error Correction Type: /i && ! $ECC); ($MAXMEM)=(/: +(.*\S) *$/) if (/^\s*Maximum Capacity: /i && ! $MAXMEM); ($NUMMOD)=(/: +(.*\S) *$/) if (/^\s*Number Of Devices: /i && ! $NUMMOD); } # Check each memory device if ($DMItype == 17) { if ($DMI6) { # Prefer DMI type 17 information over DMI type 6 $memarr=-1 if (! $DMI17); } $DMI17=1; $memarr++ if (/^\s*Memory Device$/i); ($FormFactor[$memarr])=(/: +(.*\S) *$/) if (/^\s*Form Factor: /i); ($Locator17[$memarr])=(/: +(.*\S) *$/) if (/^\s*Locator: /i); ($BankLocator[$memarr])=(/: +(.*\S) *$/) if (/^\s*Bank Locator: /i); ($Type17[$memarr])=(/: +(.*\S) *$/) if (/^\s*Type: /i); ($TypeDetail[$memarr])=(/: +(.*\S) *$/) if (/^\s*Type Detail: /i); ($Size17[$memarr])=(/: +(.*\S) *$/) if (/^\s*Size: /i); ($Speed17[$memarr])=(/: +(.*\S) *$/) if (/^\s*Speed: /i); ($MemManufacturer[$memarr])=&get_mfg(/: +(.*\S) *$/) if (/^\s*Manufacturer: /i); ($MemPartNum[$memarr])=(/: +(.*\S) *$/) if (/^\s*Part Number: /i && ! /PartNum\d/i); # Ignore Flash chips for DMI17cnt $DMI17cnt=$memarr + 1 if (/^\s*Form Factor: /i && ! /\bChip\b/i); if (/^\s*Size: /i) { ($Size17[$memarr])=(/: +(.*\S) *$/); # Ignore Flash chips for DMI17totmem (Size # reported as KB) if ($Size17[$memarr] !~ /Not Installed/i && $Size17[$memarr] !~ /No Module Installed/i && $Size17[$memarr] !~ / *KB/i) { $simmsize=$Size17[$memarr]; $simmsize=~s/ *MB.*//ig; $DMI17totmem += $simmsize if ($simmsize); } } } $FoundEnd=1 if (/End.Of.Table/i); } close(FILE); # Check kernel to see how many processors it sees (for multi-core and # hyperthreaded CPUs) if (($filename eq "") && -r '/proc/cpuinfo') { open(FILE, "/proc/cpuinfo"); @cpuinfo=<FILE>; close(FILE); $have_cpuinfo_data=1; } if ($have_cpuinfo_data) { foreach $line (@cpuinfo) { $line=&dos2unix($line); $_=$line; $cpucnt_cpuinfo++ if (/^processor\b.*: \d+/); $corecnt_cpuinfo++ if (/^core id\b.*: \d+/); ($cpucores_cpuinfo)=(/^cpu cores\b.*: (.*)$/) if (/^cpu cores\b.*: \d+/); # Only GenuineIntel x86 has hyperthreading capability $foundGenuineIntel=1 if (/^vendor_id\b.*: GenuineIntel/); if (/^model name\b.*: /) { ($cputype_cpuinfo)=(/^model name\b.*: (.*)$/); $cputype_cpuinfo=&cleanup_cputype($cputype_cpuinfo); } } print &runtime . "cputype_cpuinfo=$cputype_cpuinfo, ncpu=$ncpu, cpucnt_cpuinfo=$cpucnt_cpuinfo, corecnt_cpuinfo=$corecnt_cpuinfo, cpucores_cpuinfo=$cpucores_cpuinfo, foundGenuineIntel=$foundGenuineIntel\n" if ($DEBUG); } # hash CPUs for ($val=0; $val < $ncpu; $val++) { $cputype=""; $cpufreq=""; if ($CPUVersion[$val]) { if ($CPUVersion[$val] eq "AMD" && $cputype_cpuinfo ne "" && ! &is_virtualmachine) { print &runtime . "Adding \$cputype_cpuinfo=$cputype_cpuinfo to cputype\n" if ($DEBUG); $cputype .= "$CPUManufacturer[$val] " if ($CPUManufacturer[$val] ne "" && $cputype_cpuinfo !~ /$CPUManufacturer[$val]/i); $cputype .= "$cputype_cpuinfo "; } else { print &runtime . "Adding \$CPUVersion[\$val]=$CPUVersion[$val] to cputype\n" if ($DEBUG); $cputype .= "$CPUManufacturer[$val] " if ($CPUManufacturer[$val] ne "" && $CPUVersion[$val] !~ /$CPUManufacturer[$val]/i); $CPUVersion[$val]=&cleanup_cputype($CPUVersion[$val]); $cputype .= "$CPUVersion[$val] "; } } elsif ($cputype_cpuinfo ne "" && ! &is_virtualmachine) { print &runtime . "Adding \$cputype_cpuinfo=$cputype_cpuinfo to cputype\n" if ($DEBUG); $cputype .= "$CPUManufacturer[$val] " if ($CPUManufacturer[$val] ne "" && $cputype_cpuinfo !~ /$CPUManufacturer[$val]/i); $cputype .= "$cputype_cpuinfo "; } else { $cputype .= "$CPUManufacturer[$val] " if ($CPUManufacturer[$val]); $cputype .= "$CPUFamily[$val] " if ($CPUFamily[$val]); } if (! $machine && $CPUFamily[$val]) { $machine="ia64" if ($CPUFamily[$val] eq "Itanium"); } $cputype=~s/^\s+//; $cputype=~s/\s+$//; $cputype=~s/ +/ /g; if ($ncpu < $cpucnt_cpuinfo && $cpucnt_cpuinfo > 0) { # Distinguish Dual-Core from hyperthreading $hyperthread=1 if ($foundGenuineIntel && $corecnt_cpuinfo != $ncpu * $cpucores_cpuinfo && $cpucores_cpuinfo > 0 && $corecnt_cpuinfo > 1); if ($cpucores_cpuinfo > 0) { $cputype=&multicore_cputype($cputype,$cpucores_cpuinfo); } else { $cputype=&multicore_cputype($cputype,$cpucnt_cpuinfo / $ncpu); } } if ($CPUSpeed[$val]) { $cpufreq="$CPUSpeed[$val]"; $cpufreq=~s/ *MHz$//; $CPUSpeed[$val]=~s/ *MHz$/MHz/; } &x86multicorecnt($cputype); $cpucnt{"$cputype $cpufreq"}++; $cpucntfrom="dmidecode"; $ExtSpeed[$val]=~s/ *MHz$/MHz/ if ($ExtSpeed[$val]); } @cputypecnt=keys(%cpucnt); $x=0; while (($cf,$cnt)=each(%cpucnt)) { $x++; $cf=~/^(.*) (\d*)$/; $ctype=$1; $cfreq=$2; $cpubanner .= "$cnt X " if ($cnt > 1); $cpubanner .= "$ctype"; $cpubanner .= " ${cfreq}MHz" if ($cfreq ne "" && $ctype !~ /Hz$/); $cpubanner .= ", " if ($x < scalar(@cputypecnt)); } $machine="x86" if (! $machine); &x86_devname; # # Print information # &show_header; if ($permission_error) { print "ERROR: $permission_error\n"; print " This user does not have permission to run $config_command.\n"; print " Try running memconf as a privileged user like root.\n" if ($uid ne "0"); exit 1; } # CPU information if ($verbose > 0) { print "WARNING: CPU Information Unknown\n" if ($cpuarr < 0); for ($cnt=0; $cnt <= $cpuarr; $cnt++) { if ($CPUSocketDesignation[$cnt]) { if ($CPUSocketDesignation[$cnt] eq "Microprocessor") { print "CPU$cnt: "; } else { print "$CPUSocketDesignation[$cnt]: "; } } if ($CPUStatus[$cnt]) { if ($CPUStatus[$cnt] =~ /Unpopulated/i) { print "$CPUStatus[$cnt]\n"; next; } } $ctype=""; if ($CPUVersion[$cnt]) { $ctype .= "$CPUManufacturer[$cnt] " if ($CPUManufacturer[$cnt] ne "" && $CPUVersion[$cnt] !~ /$CPUManufacturer[$cnt]/i); $ctype .= "$CPUVersion[$cnt] "; } else { $ctype .= "$CPUManufacturer[$cnt] " if ($CPUManufacturer[$cnt]); $ctype .= "$CPUFamily[$cnt] " if ($CPUFamily[$cnt]); } print "$ctype"; if ($CPUSpeed[$cnt]) { print "$CPUSpeed[$cnt] " if ($ctype !~ /Hz $/); } print "cpu"; print ", system freq: $ExtSpeed[$cnt]" if ($ExtSpeed[$cnt]); print "\n"; } } # Memory information print "Memory Error Correction: $ECC\n" if ($ECC && ! &is_virtualmachine); $max=0; if ($MAXMEM) { if ($MAXMEM =~ /\d+ MB/) { $max=$MAXMEM; $max=~s/ MB//g; } elsif ($MAXMEM =~ /\d+ GB/) { $max=$MAXMEM; $max=~s/ GB//g; $max *= 1024; } } for ($cnt=0; $cnt <= $memarr; $cnt++) { # Prefer DMI type 17 information over DMI type 6 $DMI=17; $DMI=6 if ($DMI6 & ! $DMI17); # Prefer DMI type 6 information if DMI type 6 reports different # total memory than DMI type 17 $DMI=6 if ($DMI6 & $DMI17 && $DMI6totmem != $DMI17totmem); if ($DMI == 6) { next if (! $Size6[$cnt]); if ($Type6[$cnt]) {next if ($Type6[$cnt] =~ /Flash/i);} if (defined($Locator6[$cnt]) && defined($BankLocator[$cnt])) { $BankLocator[$cnt]="" if ($Locator6[$cnt] eq $BankLocator[$cnt]); if ($Locator6[$cnt] =~ /:/ && $BankLocator[$cnt] =~ /:/) { $Loc1=$Locator6[$cnt]; $Loc1=~s/.*://; $Loc2=$BankLocator[$cnt]; $Loc2=~s/.*://; $Locator6[$cnt]=~s/:.*// if ($Loc1 eq $Loc2); } } if ($Size6[$cnt] =~ /Not Installed/i || $Size6[$cnt] =~ /No Module Installed/i || $Size6[$cnt] =~ /^0 *MB.*/i) { $sockets_empty .= "," if ($sockets_empty ne ""); $sockets_empty .= " $Locator6[$cnt]"; } else { $buffer .= "$Locator6[$cnt]"; $simmsize=$Size6[$cnt]; $simmsize=~s/ *MB.*//ig; $totmem += $simmsize if ($simmsize); $Size6[$cnt]=~s/MByte/ MB/ig; $Size6[$cnt]=~s/ +MB/MB/g; $buffer .= ": $Size6[$cnt]"; $buffer .= " $SizeDetail[$cnt]" if ($SizeDetail[$cnt]); if ($Speed6[$cnt]) { $Speed6[$cnt]=~s/ +MHz/MHz/; $Speed6[$cnt]=~s/ +ns/ns/; $buffer .= " $Speed6[$cnt]"; } elsif ($Speed17[$cnt]) { $Speed17[$cnt]=~s/ +MHz/MHz/; $Speed17[$cnt]=~s/ +ns/ns/; $buffer .= " $Speed17[$cnt]"; } if ($TypeDetail[$cnt]) { $buffer .= " $TypeDetail[$cnt]" if ($TypeDetail[$cnt] !~ /None/i); } if ($FormFactor[$cnt]) { $buffer .= " $Type17[$cnt]"; $buffer .= " $FormFactor[$cnt]" if ($Type17[$cnt] !~ /$FormFactor[$cnt]/); } elsif ($Type6[$cnt]) { $buffer .= " $Type6[$cnt]"; } if ($MemManufacturer[$cnt]) { $buffer .= ", $MemManufacturer[$cnt]" if ($MemManufacturer[$cnt] !~ /None/i); if ($MemPartNum[$cnt]) { $buffer .= " $MemPartNum[$cnt]" if ($MemPartNum[$cnt] !~ /None/i); } } $buffer .= "\n"; } } else { next if (! $Size17[$cnt]); if ($Type17[$cnt]) {next if ($Type17[$cnt] =~ /Flash/i);} if (defined($Locator17[$cnt]) && defined($BankLocator[$cnt])) { $BankLocator[$cnt]="" if ($Locator17[$cnt] eq $BankLocator[$cnt]); if ($Locator17[$cnt] =~ /:/ && $BankLocator[$cnt] =~ /:/) { $Loc1=$Locator17[$cnt]; $Loc1=~s/.*://; $Loc2=$BankLocator[$cnt]; $Loc2=~s/.*://; $Locator17[$cnt]=~s/:.*// if ($Loc1 eq $Loc2); } } if ($Size17[$cnt] =~ /Not Installed/i || $Size17[$cnt] =~ /No Module Installed/i || $Size17[$cnt] =~ /^0 *MB.*/i) { $sockets_empty .= "," if ($sockets_empty ne ""); $sockets_empty .= " $Locator17[$cnt]"; $sockets_empty .= " $BankLocator[$cnt]" if ($BankLocator[$cnt]); } else { $buffer .= "$Locator17[$cnt]"; $buffer .= " $BankLocator[$cnt]" if ($BankLocator[$cnt]); $simmsize=$Size17[$cnt]; $simmsize=~s/ *MB.*//ig; $totmem += $simmsize if ($simmsize); $Size17[$cnt]=~s/MByte/ MB/ig; $Size17[$cnt]=~s/ +MB/MB/g; $buffer .= ": $Size17[$cnt]"; $buffer .= " $SizeDetail[$cnt]" if ($SizeDetail[$cnt]); if ($Speed17[$cnt]) { $Speed17[$cnt]=~s/ +MHz/MHz/; $Speed17[$cnt]=~s/ +ns/ns/; $buffer .= " $Speed17[$cnt]"; } elsif ($Speed6[$cnt]) { $Speed6[$cnt]=~s/ +MHz/MHz/; $Speed6[$cnt]=~s/ +ns/ns/; $buffer .= " $Speed6[$cnt]"; } if ($TypeDetail[$cnt]) { $buffer .= " $TypeDetail[$cnt]" if ($TypeDetail[$cnt] !~ /None/i); } $buffer .= " $Type17[$cnt]" if ($Type17[$cnt]); if ($FormFactor[$cnt]) { if ($Type17[$cnt]) { $buffer .= " $FormFactor[$cnt]" if ($Type17[$cnt] !~ /$FormFactor[$cnt]/); } else { $buffer .= " $FormFactor[$cnt]"; } } if ($MemManufacturer[$cnt]) { $buffer .= ", $MemManufacturer[$cnt]" if ($MemManufacturer[$cnt] !~ /None/i); if ($MemPartNum[$cnt]) { $buffer .= " $MemPartNum[$cnt]" if ($MemPartNum[$cnt] !~ /None/i); } } $buffer .= "\n"; } } } if (! &is_virtualmachine) { print "Maximum Memory: "; if ((! $MAXMEM) || ($max < $totmem) || ($max == 0)) { $MAXMEM="Unknown"; $MAXMEM .= " (DMI incorrectly reports ${max}MB)" if (($max < $totmem) && ($max > 0)); print "$MAXMEM\n"; } else { &show_memory($max); } print $buffer if ($buffer ne ""); } # # Print total memory # if (($memarr < 0) || ($totmem == 0)) { print "WARNING: Memory Information Unknown\n"; print "WARNING: dmidecode output is truncated\n" if (! $FoundEnd); &check_dmidecode_ver; $exitstatus=1; } else { &print_empty_memory("memory sockets") if (! &is_virtualmachine); print "total memory = "; &show_memory($totmem); } print "ERROR: $dmidecode_error\n" if ($dmidecode_error); if ($freephys > $totmem && ! &is_virtualmachine) { print "ERROR: Total physical memory (${freephys}MB) is "; print "greater than the total memory found.\n The total "; print "physical memory reported by 'free -m' does not match "; print "the\n memory reported by 'dmidecode'.\n"; print " An upgraded version of dmidecode from "; print "$dmidecodeURL\n may fix this issue. This is a "; print "dmidecode bug, not a bug in memconf.\n"; &check_dmidecode_ver; $recognized=0; $exitstatus=1; } # See if half of the memory is unused due to missing a second CPU if ($totmem > 0 && $totmem == &roundup_memory($freephys) * 2 && $ncpu == 1 && $necpu == 1) { print "WARNING: Half of the installed memory is not being "; print "used due to only having a\n single CPU "; print "installed in this dual-CPU capable system.\n"; } if ("$os" eq "Linux" && &roundup_memory($freephys) < $totmem) { $tmp=0; @tmp=(""); if (-r '/var/log/dmesg' && ($filename eq "")) { open(FILE, "</var/log/dmesg"); @tmp=<FILE>; close(FILE); } elsif ($filename ne "") { @tmp=@config; } foreach $line (@tmp) { if ($line =~ /Warning only \d.*B will be used/) { $line=~s/Warning o/WARNING: O/; print $line; $tmp=1; } if ($line =~ /Use a PAE enabled kernel/) { print "WARNING: " . $line; $tmp=1; } } if ($tmp) { print "WARNING: Total memory available to the OS is "; print "less than the total memory found.\n An "; print "upgraded BIOS may fix this issue. This is not "; print "a bug in memconf.\n"; $recognized=0; $exitstatus=1; } } # Flag untested CPU types (machine="" or "x86" on regression test files) # Linux tested so far on x86, i86pc, x86_64, and Itanium ia64 if ($machine eq "" || $machine eq "x86" || $machine =~ /i.86/ || $machine eq "x86_64" || $machine eq "ia64") { $untested=0 if ($untested == 1); } else { # Linux on SPARC # if ($machine =~ /sparc/) { # if ($machine eq "sparc64") { $untested=1; $untested_type="CPU" if ("$untested_type" eq ""); } &check_virtualmachine; &show_untested if ($untested); &mailmaintainer if ($verbose == 3); exit $exitstatus; } sub show_total_memory { # # Print total memory # print "total memory = "; &show_memory($totmem); print "$permission_error\n" if ($permission_error); if ($prtconf_warn ne "") { print "WARNING: $prtconf_warn\n"; print " This may be corrected by installing "; print "a Sun patch on this system.\n"; } } sub show_control_LDOM_message { # # Post notice if on control domain # print "NOTICE: Control Logical Domain (LDOM) detected. The cpus and memory modules\n"; print " reported are for the system, not necessarily the control domain.\n"; } sub is_virtualmachine { if ($model =~ /VMware|Virtual Platform|Virtual Machine/i || $diagbanner =~ /Virtual Machine/i) { return(1); } return(0); } sub check_virtualmachine { if (&is_virtualmachine) { print "NOTICE: Details shown are for the configuration of this Virtual Machine (VM),\n not the physical CPUs and memory of the VM server it is running on.\n"; if ($cputype_cpuinfo ne "") { print " VM server CPU"; print (($cpucnt_cpuinfo > 1) ? "s: $cpucnt_cpuinfo X" : ":"); print " $cputype_cpuinfo\n"; } } } sub finish { &show_header; #print "newslots=@newslots\n" if ($#newslots > 0 && $verbose > 1); # TLS # Cannot accurately determine installed memory unless information is # is in prtpicl output, or if system is fully stuffed if ($ldm_memory && ! $picl_foundmemory) { &show_control_LDOM_message; $totmem=$installed_memory; &show_total_memory; # TLS ToDo: If fully stuffed, rewrite output # TLS ToDo: If not fully stuffed, clear bogus module sizes found return; } print $buffer if ($buffer ne ""); # # Special memory options # if ($sxmem) { # Currently assumes only one VSIMM is installed. # Auxiliary Video Board 501-2020 (SS10SX) or 501-2488 (SS20) # required if two VSIMMs are installed. if ($model eq "SPARCstation-20" || $model eq "SuperCOMPstation-20S") { # SS20 1st VSIMM in J0304/J0407, 2nd in J0305/J0406 print "sockets J0304/J0407 have"; $sockets_used .= " J0304"; } elsif ($model =~ /COMPstation-20A\b/) { # 1st VSIMM in J0202, 2nd in J0301 print "socket J0202 has"; $sockets_used .= " J0202"; } else { # SS10SX 1st VSIMM in J0301/J1203, 2nd in J0202/J1201 print "sockets J0301/J1203 have"; $sockets_used .= " J0301"; } print " a ${sxmem}MB VSIMM installed for SX (CG14) graphics\n"; } if ($nvmem) { # NVSIMMs for Prestoserve if ($model eq "SPARCstation-20" || $model eq "SuperCOMPstation-20S") { # SS20 1st 2MB NVSIMM in J0305/J0406, 2nd in J0304/J0407 if ($nvmem1) { $sockets_used .= " J0305"; print "sockets J0305/J0406 have a 2MB NVSIMM"; print " installed for Prestoserve\n"; } if ($nvmem2) { $sockets_used .= " J0304"; print "sockets J0304/J0407 have a 2MB NVSIMM"; print " installed for Prestoserve\n"; } } elsif ($model =~ /COMPstation-20A\b/) { # 1st 2MB NVSIMM in J0301, 2nd in J0202 if ($nvmem1) { $sockets_used .= " J0301"; print "socket J0301 has a 2MB NVSIMM"; print " installed for Prestoserve\n"; } if ($nvmem2) { $sockets_used .= " J0202"; print "socket J0202 has a 2MB NVSIMM"; print " installed for Prestoserve\n"; } } elsif ($model =~ /SPARCstation-10/ || $model eq "Premier-24") { # SS10 1st 2MB NVSIMM in J0202/J1201, 2nd in J0301/J1203 if ($nvmem1) { $sockets_used .= " J0202"; print "sockets J0202/J1201 have a 2MB NVSIMM"; print " installed for Prestoserve\n"; } if ($nvmem2) { $sockets_used .= " J0301"; print "sockets J0301/J1203 have a 2MB NVSIMM"; print " installed for Prestoserve\n"; } } else { # SS1000 supports two banks of four 1MB NVSIMMs # SC2000 supports one bank of eight 1MB NVSIMMs print "Has ${nvmem}MB of NVSIMM installed for Prestoserve "; if ($model eq "SPARCserver-1000") { print "(1 bank of 4" if ($nvmem == 4); print "(2 banks of 4" if ($nvmem == 8); } else { print "(1 bank of 8"; } print " 1MB NVSIMMs$nvsimm_banks)\n"; } } # # Check for empty banks or sockets # if ($#banksstr > 0) { foreach $banks (@banksstr) { if ($banks ne "?") { if ($banks_used !~ /\b$banks\b/ & $sockets_empty !~ /\b$banks\b/) { $sockets_empty .= "," if ($sockets_empty ne ""); $sockets_empty .= " $banks"; } } } &print_empty_memory($bankname); } elsif ($#socketstr > 0) { foreach $socket (@socketstr) { if ($socket ne "?") { if ($sockets_used !~ /\b$socket\b/ & $sockets_empty !~ /\b$socket\b/) { if ($memtype =~ /memory card/ & $sockets_empty ne "") { $sockets_empty .= ", $socket"; } else { $sockets_empty .= " $socket"; } } } } if ($sockettype) { &print_empty_memory("${sockettype}s"); } else { &print_empty_memory("memory slots"); } } elsif (($verbose > 1) && ($sockets_used ne "")) { print "memory sockets used: $sockets_used\n"; } # Look for duplicate sockets if ($sockets_used ne "" && $have_prtdiag_data) { $dup_sockets=""; foreach $socket (sort split(' ', $sockets_used)) { next if ($socket eq "board" || $socket eq "mezzanine"); next if ($model eq "SPARCsystem-600" || $model =~ /Sun.4.600/); $pos=-1; $cnt=0; while (($pos=index(" $sockets_used ", " $socket ", $pos)) > -1) { $pos++; $cnt++; if (($cnt == 2) && ($socket ne "-") && ($socket ne "?")) { if ($dup_sockets !~ /\b$socket\b/) { $dup_sockets .= " $socket"; print "ERROR: Duplicate socket $socket found\n"; $exitstatus=1; } } } } if ($dup_sockets ne "") { print "WARNING: Memory was not properly reported by"; print " the 'prtdiag' command.\n"; &recommend_prtdiag_patch; } } # Look for unlabeled sockets if ($sockets_used =~ /\s-\s|^-\s|\s-$|^-$/) { print "WARNING: Unlabeled socket found"; print " in the 'prtdiag' command output" if ($have_prtdiag_data); print ".\n This may cause the reported empty sockets"; print " to be incorrect.\n"; &recommend_prtdiag_patch; } # Make sure Sun Fire V480/V490/V880/V890 is fully stuffed if >= 1050MHz if ($ultra =~ /Sun Fire V[48][89]0\b/) { print "ERROR: System should not have any empty banks since CPU is >= 1050MHz.\n" if (($cpufreq >= 1050) && ($banks_used ne "A0 A1 B0 B1")); } if ($machine eq "sun4v") { # Round up Solaris memory (may have 128MB or more reserved) $installed_memory=&roundup_memory($installed_memory); $totmem=$installed_memory; } # # Print total memory # &show_total_memory; # # Post notice if on control domain # &show_control_LDOM_message if ($ldm_memory); # # Post notice if on a virtual machine # &check_virtualmachine; # # Check for illegal memory stuffings # if ($model eq "Sun 4/50" || $model eq "Sun 4/25") { # IPX, ELC if (($slot0 != 16) && ($largestsimm == 16) && ($osrel =~ /4.1.1/)) { print "ERROR: Install the highest capacity 16MB SIMM"; print " in socket $socketstr[0] under SunOS 4.1.1.\n"; $exitstatus=1; } } if ($model =~ /SPARCclassic/ || $model =~ /SPARCstation-LX/) { if ($found32mb) { # Reportedly can accept 32MB SIMMs in bank 1, allowing # 128MB total (2x32, 4x16) print "NOTICE: The 32MB SIMM is not supported in the"; print " $model according to\n Sun. However it does"; print " appear to work in bank 1 only, allowing a"; print " maximum of\n 128MB of total memory (2x32MB"; print " bank 1 + 4x16MB banks 2 & 3).\n"; } if ($found8mb) { # Possibly can accept 8MB SIMMs in bank 1 print "NOTICE: The 8MB SIMM is not supported in the"; print " $model according to\n Sun. However it does"; print " appear to work in bank 1 only.\n"; } } if ($model =~ /SPARCstation-10/ || $model eq "Premier-24") { if (($slot0 < $largestsimm) && $BSD) { print "ERROR: Install the highest capacity SIMM in"; print " socket $socketstr[0] under Solaris 1.X.\n"; $exitstatus=1; } if (! $found32mb && $found16mb && ($romvermajor eq 2) && ($romverminor < 19)) { print "WARNING: The 32MB SIMM is not supported in the"; print " SS10 or SS10SX according to\n Sun. However"; print " it does work correctly depending on the Open"; print " Boot PROM\n version. This system is running"; print " OBP $romvernum, so 32MB SIMMs will only be\n"; print " recognized as 16MB SIMMs. You should"; print " upgrade to OBP 2.19 or later in order\n to"; print " be able to detect and utilize 32MB SIMMs.\n"; # OBP 2.14 and earlier see the 32MB SIMM as 16MB. # OBP 2.15 on a SS20 does see the 32MB SIMM as 32MB. # Have not tested 32MB SIMMs on SS10 with OBP 2.15-2.18 if ($romverminor > 14) { $untested=1; $untested_type="OBP"; } } if ($found32mb && ($romvermajor eq 2) && ($romverminor < 19)) { print "NOTICE: The 32MB SIMM is not supported in the"; print " SS10 or SS10SX according to\n Sun. However"; print " it does work correctly depending on the Open"; print " Boot PROM\n version. This system is running"; print " OBP $romvernum, and 32MB SIMMs were properly\n"; print " recognized.\n"; @simmsizes=(16,32,64); if ($romvernum ne "2.X") { $untested=1; $untested_type="OBP"; } } if (! $nvmem1 && $nvmem2) { print "ERROR: First NVSIMM should be installed in"; print " socket J0202, not socket J0301\n"; $exitstatus=1; } } if ($model eq "SPARCstation-20" || $model eq "SuperCOMPstation-20S") { if (! $nvmem1 && $nvmem2) { print "ERROR: First NVSIMM should be installed in"; print " socket J0305, not socket J0304\n"; $exitstatus=1; } } if ($model eq "SPARCstation-5") { if (($slot0 < $largestsimm) && $BSD) { print "ERROR: Install the highest capacity SIMM in"; print " socket $socketstr[0] under Solaris 1.X.\n"; $exitstatus=1; } if ($osrel eq "4.1.3_U1" && $found32mb) { # Look to see if patch 101508-07 or later is installed # for 32MB SIMMs to work properly (bug 1176458) $what=&mychomp(`/usr/ucb/what /sys/sun4m/OBJ/module_vik.o`); if ($what !~ /module_vik.c 1.38 94\/08\/22 SMI/) { print "WARNING: Install SunOS 4.1.3_U1 patch"; print " 101508-07 or later in order for 32MB\n"; print " SIMMs to work reliably on the"; print " SPARCstation 5.\n"; } } } if ($model eq "Ultra-5_10" || $ultra eq "5_10" || $ultra eq 5 || $ultra eq 10) { if (($smallestsimm == 16) && ($largestsimm > 16)) { print "ERROR: 16MB DIMMs cannot be mixed with larger"; print " DIMMs on Ultra 5/10 systems.\n"; $exitstatus=1; } } if ($ultra eq 5) { if ($largestsimm == 256) { print "NOTICE: The 256MB DIMM is not supported in the"; print " Ultra 5 according to\n Sun. However it does"; print " work correctly as long as you use low-profile"; print "\n DIMMs or take out the floppy drive.\n"; } } if ($ultra eq "AXi") { # DIMMs should be chosen as all 10-bit or all 11-bit column # address type. If using 11-bit, then only use Bank 0 & 2. if ($found10bit && $found11bit) { print "ERROR: You should not mix 10-bit and 11-bit"; print " column address type DIMMs in the\n "; print "SPARCengine Ultra AXi.\n"; $exitstatus=1; } if ($found11bit) { if ($foundbank1or3) { print "ERROR"; $exitstatus=1; } else { print "WARNING"; } print ": Do not use Bank 1 (sockets U0402 & U0401) &"; print " Bank 3 (sockets U0302 &\n U0301) since"; print " 11-bit column address type DIMMs are"; print " installed. You should\n only use Bank 0"; print " (sockets U0404 & U0403) & Bank 2 (sockets"; print " U0304 & U0303).\n"; } } if ($model eq "Ultra-4" || $ultra eq 450 || $model eq "Ultra-4FT" || $ultra eq "Netra ft1800") { if ($found16mb) { print "WARNING: 16MB DIMMs are not supported and may"; print " cause correctable ECC errors.\n"; } } # # Check for unsupported memory sizes # foreach $i (@simmsizesfound) { $smallestsimm=$i if ($i < $smallestsimm); $largestsimm=$i if ($i > $largestsimm); $simmsizelegal=0; foreach $j (@simmsizes) { $simmsizelegal=1 if ($i == $j); } if (($simmsizelegal == 0) && ($simmsizes[0] > 0)) { print "ERROR: Unsupported ${i}MB $memtype found (supported "; if ($#simmsizes == 0) { print "size is @{simmsizes}MB)\n"; } else { print "MB sizes are: @simmsizes)\n"; } $exitstatus=1; } } if ($smallestsimm < $simmsizes[0]) { print "ERROR: Smaller than expected $memtype found "; print "(found ${smallestsimm}MB, smallest expected "; print "${simmsizes[0]}MB)\n"; $exitstatus=1; } if ($largestsimm > $simmsizes[$#simmsizes]) { print "ERROR: Larger than expected $memtype found "; print "(found ${largestsimm}MB, largest expected "; print "${simmsizes[$#simmsizes]}MB)\n"; $exitstatus=1; } # # Check for buggy perl version # if ($perlhexbug) { print "ERROR: This Perl V$PERL_VERSION is buggy in hex number"; print " conversions.\n"; $exitstatus=1; } if ($PERL_VERSION == 5.001) { print "WARNING: Perl V5.001 is known to be buggy in hex number"; print " conversions.\n"; } if ($PERL_VERSION < 5.002) { print "WARNING: Perl V5.002 or later is recommended for best"; print " results.\n"; print " You are running Perl V$PERL_VERSION\n"; } # # Check for bad eeprom banner-name. This happens sometimes when OBP 3.23 # or later is installed on Ultra-60/E220R and Ultra-80/E420R systems. # if ($banner =~ /^ \(/) { print "ERROR: banner-name not set in EEPROM (BugID 4257412)."; print " Cannot distinguish an\n "; print "Ultra 60 from an Enterprise 220R" if ($model eq "Ultra-60"); print "Ultra 80 from an Enterprise 420R or Netra t 1400/1405" if ($model eq "Ultra-80"); print "Sun Blade 1000/2000 from a Sun Fire 280R or Netra 20" if ($ultra eq "Sun Blade 1000" || $ultra eq "Sun Blade 2000" || $ultra eq "Sun Fire 280R" || $ultra eq "Netra 20"); print ".\n To correct this problem, please run one of "; print "the following commands as\n root depending on "; print "the system you have:\n"; if ($model eq "Ultra-60") { print " eeprom banner-name='Sun Ultra 60 UPA/PCI'\n"; print " eeprom banner-name='Sun Enterprise 220R'\n"; print "Note: Netra t1120/1125 systems may also use the 'Sun Ultra 60 UPA/PCI' banner\n"; } if ($model eq "Ultra-80") { print " eeprom banner-name='Sun Ultra 80 UPA/PCI'\n"; print " eeprom banner-name='Sun Enterprise 420R'\n"; print " eeprom banner-name='Netra t 1400/1405'\n"; print "Note: Netra t1400/1405 systems may also use the 'Sun Ultra 80 UPA/PCI' banner\n"; } if ($ultra eq "Sun Blade 1000" || $ultra eq "Sun Blade 2000" || $ultra eq "Sun Fire 280R" || $ultra eq "Netra 20") { print " eeprom banner-name='Sun-Blade-1000'\n"; print " eeprom banner-name='Sun Fire 280R'\n"; print " eeprom banner-name='Netra 20'\n"; print "Note: Netra 20 systems may also use the 'Sun-Blade-1000' banner\n"; } $exitstatus=1; } # # Check for possible memory detection errors by this program # if ($prtdiag_failed == 2) { # non-global zone (container) print "WARNING: More details can be reported if memconf is run in the global zone.\n"; $prtdiag_has_mem=0; } if (! $boardfound_mem && $prtdiag_has_mem) { print "WARNING: Memory should have been reported in the output from\n"; if ($prtdiag_cmd) { print " $prtdiag_cmd"; } else { print " prtdiag, which was not found"; print " in /usr/platform/$machine/sbin" if (-d '/usr/platform'); } print "\nERROR: prtdiag failed!" if ($prtdiag_failed); print "\n This system may be misconfigured, or may be"; print " missing software packages\n like SUNWpiclr,"; print " SUNWpiclu and SUNWpiclx, or may need the latest\n"; print " recommended Sun patches installed from"; print " http://www.sunsolve.com/\n"; if ($ultra eq "Sun Fire V880") { print " This may be corrected by installing "; print "Sun patch 112186-19 or 119231-01 or later.\n"; } print " Check my website at $URL\n"; print " to get the latest version of memconf.\n"; $exitstatus=1; } if ($recognized == 0) { print "ERROR: Layout of memory ${sockettype}s not completely "; print "recognized on this system.\n"; $exitstatus=1; } if ($recognized < 0) { print "WARNING: Layout of memory ${sockettype}s not completely"; print " recognized on this system.\n"; if ($model eq "Ultra-80" || $ultra eq 80 || $ultra eq "420R" || $ultra eq "Netra t140x") { if ($recognized == -1) { print " The memory configuration displayed is a guess which may be incorrect.\n"; if ($totmem eq 1024) { print " The 1GB of memory installed may be 4 256MB DIMMs populating bank 0,\n"; print " or 16 64MB DIMMs populating all 4 banks.\n"; } } print " This is a known bug due to Sun's 'prtconf', 'prtdiag' and 'prtfru'\n"; print " commands not providing enough detail for the memory layout of this\n"; print " SunOS $osrel $platform system to be accurately determined.\n"; print " This is a bug in Sun's OBP, not a bug in memconf. The latest OBP\n"; print " release (OBP 3.33.0 2003/10/07 from patch 109082-06) "; print (($totmem eq 1024) ? "still has this bug" : "should fix this"); print ".\n This system is using $romver\n"; $exitstatus=1; } if ($ultra eq "Sun Blade 1000" || $ultra eq "Sun Blade 2000" || $ultra eq "Sun Fire 280R" || $ultra eq "Netra 20") { # Do this if memory was not in the output of prtdiag if ($recognized == -2) { # Hack: If Sun Blade 1000 has 8GB of memory (maximum # allowed), then memory line was rewritten to show # memory stuffing. print " The memory configuration displayed should be"; print " correct though since this\n"; print " is a fully stuffed system.\n"; } else { print " The memory configuration displayed is a guess which may be incorrect.\n"; } } if ($ultra eq "T2000" || $ultra eq "T1000") { # Do this if memory was not in the output of prtdiag # Hack: If Sun Fire T2000 has 8GB or 16GB of memory or # if Sun Fire T1000 has 4GB or 8GB of memory, then it # may be 1 rank of DIMMs instead of default 2 ranks. print " The memory configuration displayed is a guess which may be incorrect.\n"; print " Base Sun configurations ship with two ranks of modules installed.\n"; print " This system may have one rank of " . $simmsizesfound[0]*2 . "MB DIMMs installed instead\n"; print " of two ranks of " . $simmsizesfound[0] . "MB DIMMs as shown.\n"; print " This is a known bug due to Sun's 'prtconf', 'prtdiag' and 'prtfru'\n"; print " commands not providing enough detail for the memory layout of this\n"; print " SunOS $osrel $platform system to be accurately determined.\n"; print " This is a Sun bug, not a bug in memconf.\n"; $exitstatus=1; } } if ($banner =~ /Netra t1\b/ || $ultra eq "Netra t1" || $model eq "Netra t1") { if ($totmem eq 1024) { print "WARNING: Cannot distinguish between four"; print " 370-4155 256MB mezzanine boards and\n"; print " two 512MB mezzanine boards.\n"; } if ($totmem eq 768) { print "WARNING: Cannot distinguish between three"; print " 370-4155 256MB mezzanine boards and\n"; print " one 512MB and one 256MB mezzanine boards.\n"; } } if ($installed_memory > 0) { if ($installed_memory != $totmem) { print "ERROR: Total memory installed (${installed_memory}MB) "; print "does not match total memory found.\n"; $recognized=0; $exitstatus=1; } } if ($failed_memory > 0) { print "ERROR: Failed memory (${failed_memory}MB) was detected.\n"; print " You should consider replacing the failed memory.\n"; $exitstatus=1; } if ($spare_memory > 0) { print "NOTICE: Spare memory (${spare_memory}MB) was detected.\n"; print " You can configure the spare memory using the 'cfgadm' command.\n"; } if ($failing_memory > 0) { print "ERROR: Some of the installed memory has failed.\n"; print " You should consider replacing the failed memory.\n"; $exitstatus=1; } if ($failed_fru ne "") { print "ERROR: $failed_fru"; print " You should consider replacing the failed FRUs.\n"; $exitstatus=1; } &show_unrecognized if ($recognized == 0); # Tested on SunOS 4.X - 5.11 (Solaris 1.0 through Solaris 11) # Flag Future/Beta SunOS releases as untested if ($osrel =~ /^5.1[2-9]/ || $osrel =~ /^[6-9]/) { $untested=1; $untested_type="OS" if ("$untested_type" eq ""); } # Flag untested CPU types: # US-IIIi+ (Serrano) if ($cputype =~ /UltraSPARC-IIIi\+/) { $untested=1; $untested_type="CPU" if ("$untested_type" eq ""); } # US-T3 or newer if ($cputype =~ /UltraSPARC-T[3-9]/) { $untested=1; $untested_type="CPU" if ("$untested_type" eq ""); } # SPARC64-VII+ or newer if ($cputype =~ /SPARC64-VII\+/ || $cputype =~ /SPARC64-IX/ || $cputype =~ /SPARC64-X/) { $untested=1; $untested_type="CPU" if ("$untested_type" eq ""); } # Dual-Core and Quad-Core x86 CPUs have been tested, so flag # Triple-Core and other multicore x86 CPUs if ($isX86 && ($corecnt == 3 || $corecnt >= 5)) { $untested=1; $untested_type="CPU" if ("$untested_type" eq ""); } &show_untested if ($untested); &mailmaintainer if ($verbose == 3); exit $exitstatus; } sub attach_mail { $s=shift; close(MAILFILE); if ($uuencode_cmd ne "") { open(MAILFILE, "| $uuencode_cmd $s >>/tmp/memconf.output") || die "can't open /tmp/memconf.output: $!"; } else { open(MAILFILE, ">>/tmp/memconf.output") || die "can't open /tmp/memconf.output: $!"; print MAILFILE "$linebreak"; print MAILFILE "#filename: $s\n"; } $tmp=0; foreach $line (@_) { print MAILFILE "$line"; print MAILFILE "\n" if ($line !~ /\n$/); $tmp++; } close(MAILFILE); print STDERR time . " attached $tmp lines in $s\n" if ($DEBUG); } sub mailmaintainer { # E-mail information of system to maintainer. Use system call to # mail instead of Mail::Send module so that this works for perl4 print "\nSending E-mail to memconf maintainer tschmidt\@micron.com"; print " with output of:\n memconf -d (seen above)\n"; &show_helpers(" "); if ($filename) { $mail_from=($SUNWexplo) ? "Sun Explorer directory $filename" : "filename $filename"; } else { $mail_from="$hostname"; } $mail_from="memconf output from $mail_from"; $mail_prog='mail'; foreach $bin ('/usr/bin/mailx','/usr/ucb/mail','/usr/bin/mail','/bin/mail') { if (-x "$bin") { $mail_prog="$bin -s \"$mail_from\""; last; } } # Rewrite fully-qualified hostnames so that attachment filename has # only one extension. $newhostname=$hostname; $newhostname=~s/\./_/g; close(STDOUT); $attaching="Attaching "; if (-x '/usr/bin/uuencode') { $attaching .= "uuencoded "; $uuencode_cmd="/usr/bin/uuencode"; } else { $uuencode_cmd=""; } $attaching .= "output from "; @memconf_output=`cat /tmp/memconf.output`; open(MAILFILE, ">>/tmp/memconf.output") || die "can't open /tmp/memconf.output: $!"; print MAILFILE "$linebreak"; print MAILFILE "$attaching'$config_cmd'\n"; if ($uuencode_cmd ne "") { if ("$os" eq "SunOS") { print MAILFILE "$attaching'$prtdiag_cmd -v'\n" if ($prtdiag_exec ne ""); print MAILFILE "$attaching'$prtfru_cmd -x'\n" if ($prtfru_cmd ne ""); print MAILFILE "$attaching'$prtpicl_cmd -v'\n" if ($prtpicl_cmd ne ""); print MAILFILE "$attaching'$psrinfo_cmd -v'\n" if ($psrinfo_cmd ne ""); print MAILFILE "$attaching'$cfgadm_cmd -al'\n" if ($cfgadm_cmd ne ""); print MAILFILE "$attaching'$smbios_cmd'\n" if ($smbios_cmd ne ""); print MAILFILE "$attaching'$ldm_cmd list-devices -a -p'\n" if ($ldm_cmd ne ""); } if ("$os" eq "Linux") { print MAILFILE "$attaching'$free_cmd'\n" if ($free_cmd ne ""); } if ("$os" eq "SunOS" || "$os" eq "Linux") { print MAILFILE "$attaching'$ipmitool_cmd fru'\n" if ($ipmitool_cmd ne ""); } if ("$os" eq "HP-UX") { print MAILFILE "$attaching'/usr/contrib/bin/machinfo'\n" if (-x '/usr/contrib/bin/machinfo'); } print MAILFILE "$linebreak"; } close(MAILFILE); $outfile="memconf_$newhostname"; &attach_mail("${outfile}.txt",@memconf_output) if ($uuencode_cmd ne ""); @config=&run("$config_cmd") if (! $config[0]); &attach_mail("${outfile}_${config_command}.txt",@config); if ("$os" eq "SunOS") { &attach_mail("${outfile}_prtdiag.txt",@prtdiag) if ($prtdiag_exec ne ""); &attach_mail("${outfile}_prtfru.txt",@prtfru) if ($prtfru_cmd ne ""); &attach_mail("${outfile}_prtpicl.txt",@prtpicl) if ($prtpicl_cmd ne ""); &attach_mail("${outfile}_psrinfo.txt",@psrinfo) if ($psrinfo_cmd ne ""); &attach_mail("${outfile}_cfgadm.txt",@cfgadm) if ($cfgadm_cmd ne ""); &attach_mail("${outfile}_smbios.txt",@smbios) if ($smbios_cmd ne ""); &attach_mail("${outfile}_ldm.txt",@ldm) if ($ldm_cmd ne ""); } &attach_mail("${outfile}_free.txt",@free) if ($free_cmd ne ""); &attach_mail("${outfile}_cpuinfo.txt",@cpuinfo) if (-r '/proc/cpuinfo'); &attach_mail("${outfile}_ipmitool.txt",@ipmitool) if ($ipmitool_cmd ne ""); if ("$os" eq "HP-UX") { &attach_mail("${outfile}_machinfo.txt",@machinfo) if (-x '/usr/contrib/bin/machinfo'); } if ($uuencode_cmd eq "") { close(MAILFILE); open(MAILFILE, ">>/tmp/memconf.output") || die "can't open /tmp/memconf.output: $!"; print MAILFILE "$linebreak"; close(MAILFILE); } `$mail_prog tschmidt\@micron.com < /tmp/memconf.output`; unlink "/tmp/memconf.output"; } �������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������