From: Marcus Boerger Date: Sat, 31 May 2008 15:53:16 +0000 (+0000) Subject: - MFH Fix function names after they have been refactored X-Git-Tag: BEFORE_NEW_PARAMETER_PARSE~123 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=8010892bf079817441239eaf9145f01a00028935;p=php - MFH Fix function names after they have been refactored --- diff --git a/ext/phar/phar.phar b/ext/phar/phar.phar index f26ce2b756..2cbed5d6ab 100755 --- a/ext/phar/phar.phar +++ b/ext/phar/phar.phar @@ -21,7 +21,7 @@ * @author Davey Shafik * @author Greg Beaver * @link http://www.synapticmedia.net Synaptic Media - * @version $Id: Archive.php,v 1.52 2007/09/01 20:28:14 cellog Exp $ + * @version $Id: Archive.php,v 1.38 2007/02/06 04:31:45 cellog Exp $ * @package PHP_Archive * @category PHP */ @@ -119,254 +119,24 @@ class PHP_Archive */ private $_basename; - - /** - * Default MIME types used for the web front controller - * - * @var array - */ - public static $defaultmimes = array( - 'aif' => 'audio/x-aiff', - 'aiff' => 'audio/x-aiff', - 'arc' => 'application/octet-stream', - 'arj' => 'application/octet-stream', - 'art' => 'image/x-jg', - 'asf' => 'video/x-ms-asf', - 'asx' => 'video/x-ms-asf', - 'avi' => 'video/avi', - 'bin' => 'application/octet-stream', - 'bm' => 'image/bmp', - 'bmp' => 'image/bmp', - 'bz2' => 'application/x-bzip2', - 'css' => 'text/css', - 'doc' => 'application/msword', - 'dot' => 'application/msword', - 'dv' => 'video/x-dv', - 'dvi' => 'application/x-dvi', - 'eps' => 'application/postscript', - 'exe' => 'application/octet-stream', - 'gif' => 'image/gif', - 'gz' => 'application/x-gzip', - 'gzip' => 'application/x-gzip', - 'htm' => 'text/html', - 'html' => 'text/html', - 'ico' => 'image/x-icon', - 'jpe' => 'image/jpeg', - 'jpg' => 'image/jpeg', - 'jpeg' => 'image/jpeg', - 'js' => 'application/x-javascript', - 'log' => 'text/plain', - 'mid' => 'audio/x-midi', - 'mov' => 'video/quicktime', - 'mp2' => 'audio/mpeg', - 'mp3' => 'audio/mpeg3', - 'mpg' => 'audio/mpeg', - 'pdf' => 'aplication/pdf', - 'png' => 'image/png', - 'rtf' => 'application/rtf', - 'tif' => 'image/tiff', - 'tiff' => 'image/tiff', - 'txt' => 'text/plain', - 'xml' => 'text/xml', - ); - - public static $defaultphp = array( - 'php' => true - ); - - public static $defaultphps = array( - 'phps' => true - ); - - public static $deny = array('/.+\.inc$/'); - - public static function viewSource($archive, $file) - { - // security, idea borrowed from PHK - if (!file_exists($archive . '.introspect')) { - header("HTTP/1.0 404 Not Found"); - return false; - } - if (self::_fileExists($archive, $_GET['viewsource'])) { - $source = highlight_file('phar://@ALIAS@/' . - $_GET['viewsource'], true); - header('Content-Type: text/html'); - header('Content-Length: ' . strlen($source)); - echo 'Source of ', - htmlspecialchars($_GET['viewsource']), ''; - echo '

Source of ', - htmlspecialchars($_GET['viewsource']), '

'; - if (isset($_GET['introspect'])) { - echo 'Return to ', htmlspecialchars($_GET['introspect']), '
'; - } - echo $source; - return false; - } else { - header("HTTP/1.0 404 Not Found"); - return false; - } - - } - - public static function introspect($archive, $dir) - { - // security, idea borrowed from PHK - if (!file_exists($archive . '.introspect')) { - header("HTTP/1.0 404 Not Found"); - return false; - } - if (!$dir) { - $dir = '/'; - } - $dir = self::processFile($dir); - if ($dir[0] != '/') { - $dir = '/' . $dir; - } - try { - $self = htmlspecialchars($_SERVER['PHP_SELF']); - $iterate = new DirectoryIterator('phar://@ALIAS@' . $dir); - echo 'Introspect ', htmlspecialchars($dir), - '

Introspect ', htmlspecialchars($dir), - '

    '; - if ($dir != '/') { - echo '
  • ..
  • '; - } - foreach ($iterate as $entry) { - if ($entry->isDot()) continue; - $name = self::processFile($entry->getPathname()); - $name = str_replace('phar://@ALIAS@/', '', $name); - if ($entry->isDir()) { - echo '
  • ', - htmlspecialchars($entry->getFilename()), '/ [directory]
  • '; - } else { - echo '
  • ', - htmlspecialchars($entry->getFilename()), '
  • '; - } - } - return false; - } catch (Exception $e) { - echo 'Directory not found: ', - htmlspecialchars($dir), '', - '

    Directory not found: ', htmlspecialchars($dir), '

    ', - '

    Try ', - 'This link

    '; - return false; - } - } - - public static function webFrontController($initfile) - { - if (isset($_SERVER) && isset($_SERVER['REQUEST_URI'])) { - $uri = parse_url($_SERVER['REQUEST_URI']); - $archive = realpath($_SERVER['SCRIPT_FILENAME']); - $subpath = str_replace('/' . basename($archive), '', $uri['path']); - if (!$subpath || $subpath == '/') { - if (isset($_GET['viewsource'])) { - return self::viewSource($archive, $_GET['viewsource']); - } - if (isset($_GET['introspect'])) { - return self::introspect($archive, $_GET['introspect']); - } - $subpath = '/' . $initfile; - } - if (!self::_fileExists($archive, substr($subpath, 1))) { - header("HTTP/1.0 404 Not Found"); - return false; - } - foreach (self::$deny as $pattern) { - if (preg_match($pattern, $subpath)) { - header("HTTP/1.0 404 Not Found"); - return false; - } - } - $inf = pathinfo(basename($subpath)); - if (!isset($inf['extension'])) { - header('Content-Type: text/plain'); - header('Content-Length: ' . - self::_filesize($archive, substr($subpath, 1))); - readfile('phar://@ALIAS@' . $subpath); - return false; - } - if (isset(self::$defaultphp[$inf['extension']])) { - include 'phar://@ALIAS@' . $subpath; - return false; - } - if (isset(self::$defaultmimes[$inf['extension']])) { - header('Content-Type: ' . self::$defaultmimes[$inf['extension']]); - header('Content-Length: ' . - self::_filesize($archive, substr($subpath, 1))); - readfile('phar://@ALIAS@' . $subpath); - return false; - } - if (isset(self::$defaultphps[$inf['extension']])) { - header('Content-Type: text/html'); - $c = highlight_file('phar://@ALIAS@' . $subpath, true); - header('Content-Length: ' . strlen($c)); - echo $c; - return false; - } - header('Content-Type: text/plain'); - header('Content-Length: ' . - self::_filesize($archive, substr($subpath, 1))); - readfile('phar://@ALIAS@' . $subpath); - } - } - - /** - * Detect end of stub - * - * @param string $buffer stub past '__HALT_'.'COMPILER();' - * @return end of stub, prior to length of manifest. - */ - private static final function _endOfStubLength($buffer) - { - $pos = 0; - if (!strlen($buffer)) { - return $pos; - } - if (($buffer[0] == ' ' || $buffer[0] == "\n") && @substr($buffer, 1, 2) == '?>') - { - $pos += 3; - if ($buffer[$pos] == "\r" && $buffer[$pos+1] == "\n") { - $pos += 2; - } - else if ($buffer[$pos] == "\n") { - $pos += 1; - } - } - return $pos; - } - /** * Allows loading an external Phar archive without include()ing it * - * @param string $file phar package to load - * @param string $alias alias to use + * @param string $file * @throws Exception */ - public static final function loadPhar($file, $alias = NULL) + public static final function loadPhar($file) { $file = realpath($file); if ($file) { $fp = fopen($file, 'rb'); $buffer = ''; - while (!feof($fp)) { + while (!$found && !feof($fp)) { $buffer .= fread($fp, 8192); // don't break phars if ($pos = strpos($buffer, '__HALT_COMPI' . 'LER();')) { - $buffer .= fread($fp, 5); fclose($fp); - $pos += 18; - $pos += self::_endOfStubLength(substr($buffer, $pos)); - return self::_mapPhar($file, $pos, $alias); + return self::_mapPhar($file, $pos); } } fclose($fp); @@ -379,28 +149,21 @@ class PHP_Archive * This function can only be called from the initialization of the .phar itself. * Any attempt to call from outside the .phar or to re-alias the .phar will fail * as a security measure. - * @param string $alias + * @param string $file full realpath() filepath, like /path/to/go-pear.phar + * @param string $alias alias used in opening a file within the phar + * like phar://go-pear.phar/file + * @param bool $compressed determines whether to attempt zlib uncompression + * on accessing internal files * @param int $dataoffset the value of __COMPILER_HALT_OFFSET__ */ - public static final function mapPhar($alias = NULL, $dataoffset = NULL) + public static final function mapPhar($file, $dataoffset) { try { - $trace = debug_backtrace(); - $file = $trace[0]['file']; // this ensures that this is safe if (!in_array($file, get_included_files())) { die('SECURITY ERROR: PHP_Archive::mapPhar can only be called from within ' . 'the phar that initiates it'); } - $file = realpath($file); - if (!isset($dataoffset)) { - $dataoffset = constant('__COMPILER_HALT_OFFSET'.'__'); - $fp = fopen($file, 'rb'); - fseek($fp, $dataoffset, SEEK_SET); - $dataoffset = $dataoffset + self::_endOfStubLength(fread($fp, 5)); - fclose($fp); - } - self::_mapPhar($file, $dataoffset); } catch (Exception $e) { die($e->getMessage()); @@ -413,7 +176,7 @@ class PHP_Archive * @param unknown_type $file * @param unknown_type $dataoffset */ - private static function _mapPhar($file, $dataoffset, $alias = NULL) + private static function _mapPhar($file, $dataoffset) { $file = realpath($file); if (isset(self::$_manifest[$file])) { @@ -446,9 +209,7 @@ class PHP_Archive $alias = $info['alias']; $explicit = true; } else { - if (!isset($alias)) { - $alias = $file; - } + $alias = $file; $explicit = false; } self::$_manifest[$file] = $info['manifest']; @@ -490,15 +251,15 @@ class PHP_Archive $apiver = bin2hex($apiver); $apiver_dots = hexdec($apiver[0]) . '.' . hexdec($apiver[1]) . '.' . hexdec($apiver[2]); $majorcompat = hexdec($apiver[0]); - $calcapi = explode('.', self::APIVersion()); + $calcapi = explode('.', '1.0.0'); if ($calcapi[0] != $majorcompat) { throw new Exception('Phar is incompatible API version ' . $apiver_dots . ', but ' . - 'PHP_Archive is API version '.self::APIVersion()); + 'PHP_Archive is API version 1.0.0'); } if ($calcapi[0] === '0') { - if (self::APIVersion() != $apiver_dots) { + if ('1.0.0' != $apiver_dots) { throw new Exception('Phar is API version ' . $apiver_dots . - ', but PHP_Archive is API version '.self::APIVersion(), E_USER_ERROR); + ', but PHP_Archive is API version 1.0.0', E_USER_ERROR); } } $flags = unpack('V', substr($manifest, 6, 4)); @@ -537,8 +298,7 @@ class PHP_Archive // 4 = flags // 5 = metadata length $ret['manifest'][$savepath] = array_values(unpack('Va/Vb/Vc/Vd/Ve/Vf', substr($manifest, $start, 24))); - $ret['manifest'][$savepath][3] = sprintf('%u', $ret['manifest'][$savepath][3] - & 0xffffffff); + $ret['manifest'][$savepath][3] = sprintf('%u', $ret['manifest'][$savepath][3]); if ($ret['manifest'][$savepath][5]) { $ret['manifest'][$savepath][6] = unserialize(substr($manifest, $start + 24, $ret['manifest'][$savepath][5])); @@ -615,17 +375,6 @@ class PHP_Archive } } - private static function _fileExists($archive, $path) - { - return isset(self::$_manifest[$archive]) && - isset(self::$_manifest[$archive][$path]); - } - - private static function _filesize($archive, $path) - { - return self::$_manifest[$archive][$path][0]; - } - /** * Seek to a file within the master archive, and extract its contents * @param string @@ -661,7 +410,7 @@ class PHP_Archive return array("Not valid internal .phar file (size error {$size} != " . $this->currentStat[7] . ")"); } - if (self::$_manifest[$this->_archiveName][$path][3] != sprintf("%u", crc32($data) & 0xffffffff)) { + if (self::$_manifest[$this->_archiveName][$path][3] != sprintf("%u", crc32($data))) { return array("Not valid internal .phar file (checksum error)"); } self::$_manifest[$this->_archiveName][$path]['ok'] = true; @@ -724,7 +473,6 @@ class PHP_Archive */ public function initializeStream($file) { - $file = self::processFile($file); $info = @parse_url($file); if (!$info) { $info = self::parseUrl($file); @@ -858,7 +606,6 @@ class PHP_Archive return false; } $this->position = $pos + $this->currentStat[7]; - break; default: return false; } @@ -898,22 +645,6 @@ class PHP_Archive $this->_setCurrentFile($file); $isdir = false; } else { - do { - $isdir = false; - if ($file == '/') { - break; - } - foreach (self::$_manifest[$this->_archiveName] as $path => $info) { - if (strpos($path, $file) === 0) { - if (strlen($path) > strlen($file) && - $path[strlen($file)] == '/') { - break 2; - } - } - } - // no files exist and no directories match this string - return false; - } while (false); $isdir = true; } } else { @@ -991,19 +722,16 @@ class PHP_Archive } elseif (strpos($file, $path) === 0) { $fname = substr($file, strlen($path) + 1); if (strpos($fname, '/')) { - // this is a directory $a = explode('/', $fname); $this->_dirFiles[array_shift($a)] = true; - } elseif ($file[strlen($path)] == '/') { - // this is a file + } elseif (strlen($file) != strlen($path)) { + // if the two match exactly, the path searched for was + // not a directory, but was a file. $this->_dirFiles[$fname] = true; } } } @fclose($this->fp); - if (!count($this->_dirFiles)) { - return false; - } @uksort($this->_dirFiles, 'strnatcmp'); return true; } @@ -1029,6 +757,7 @@ class PHP_Archive public function dir_closedir() { $this->_dirFiles = array(); + reset($this->_dirFiles); return true; } @@ -1038,7 +767,7 @@ class PHP_Archive */ public function dir_rewinddir() { - @reset($this->_dirFiles); + reset($this->_dirFiles); return true; } @@ -1046,7 +775,7 @@ class PHP_Archive * API version of this class * @return string */ - public static final function APIVersion() + public final function APIVersion() { return '1.0.0'; } @@ -1096,19 +825,6 @@ class PHP_Archive } return self::$_manifest[$phar][$file][6]; } - - /** - * @return list of supported signature algorithmns. - */ - public static function getsupportedsignatures() - { - $ret = array('MD5', 'SHA-1'); - if (extension_loaded('hash')) { - $ret[] = 'SHA-256'; - $ret[] = 'SHA-512'; - } - return $ret; - } } ?> -N#/usr/src/PHP_5_3/ext/phar/phar.pharclicommand.inc?,ÚeäG¤ --åzF¶directorygraphiterator.incôÚeäGuôÎr†¶directorytreeiterator.inc%ÚeäG]†p‹¶invertedregexiterator.incÖÚeäGÕICÖC¶pharcommand.incm«ÚeäG!Q•®Ó¶phar.incÚeäG)ìk<¶ÅkoÛFò»ÅZЕT,ɖ] wv¤^.w +6 pharcommandclicommand.inc?,=tAH¤ +-åzF¶directorygraphiterator.incô=tAHuôÎr†¶directorytreeiterator.inc%=tAH]†p‹¶invertedregexiterator.incÖ=tAHÕICÖC¶pharcommand.incw«=tAH*!Ÿ,ãó¶phar.inc=tAH)ìk<¶ÅkoÛFò»ÅZЕT,ɖ] wv¤^.w $m¤ŸA ©¥Ä EꖤíÀõïÌ>È]{Ɲ[wvÞ;¯Õë»ÃÉÉù«WäïQœP&q˜í÷Aº™ÆixBàyœnYVȇ]Àøƒ[Ó ƒ<'oßýüVÀó¥ ,v#ä}ÀÂ2'ÿÈ(ÛR±k”Àëòââ2áoð—1©±œK~Zèòæ6/Xä6ȁã,Í3ä\ ñþÐ=M‹ ˆ³´«;Êr#³é'(ܖx'Èýe º!ÀmÃÇÃ;ëa¸ßädNƂoþȵ§k¹øv0–ùzT¦!ÊGÖkT@Áʰð9Kc)Xq`Á:¾†Å.Î' „”šæâ\¼³¥(9M¢ëë--¤vrŸ¯,xÉ|ÿ†m?ã ¼‚#"ø'¯ÉåHc_b;e,cþà—¬²õ6¾£é˜„;~%ÃGäxy±z";š¾¤'B“œ"‘Ó8Ïiákò,¹¨ËÙjµôX™z«Q'ýßÒ¯ivŸVLx’ðlõä=ƒ—‰¡B'5è´¦žÈÝ lvHPÛÍI².sÊÖèG¾p-2&ÝhoL¬1 ›5ží=8»° §¹z¿Ã(㟝ÁÖ×›¬êÞp·Æ+P#™Ï‰7ñ\  Î@BÓz×÷\’ï¾#†ºPË5Ýҕ! @V&nZ‘ .ÙbÞ.šþ2üê½Ôl,1~‘"#‡€{ZP^† Y¤ùütœ×5_N/´Äo( á.H¼ªDú R§šë(‰D êàÁ¹òDúXsžG]WÊ^OªQ©LiìÙ @@ -1195,35 +911,36 @@ x yZVMjzm ‘ªJnÛhà÷•gÍß¶)L6-0êCπ7w†<4–3C“SDƓÚfl÷#ðt$smLéNš,®FÃèÜÑéh-¡™^<º¬% §Uuq—ɵ8ÄÑË⨿éH¸o&­ÔnK´6‡òTÏ, ÜØ[d1 §‚ ­ý(XI[®Aþg<ˆYÈñÕ ¾D CέMXqDtñ¼Æ{@&hí¾ßaš Á]'Ámý£Ó¼Ñm·æe7ö®*Õç9ÎÚ³BªŠ:ê¨Á9vê ÕªŽ!-ШOf¦£?€ ?.Nþ…RÑNÂ0}fÉþá>ø 5¾L#☰8°½ø´Ôîš`·´BÔ·ÝØDc°»Ý=瞞Óôz§¹mÙVïän—l0Teb»$O™BAô_—qj[ IŒ¯DVäàmÈK¾FYuŸÃ%Ð5‘FµÂØ(ø;…ŠG •f`J-$Üe(V¸Ã¢ô:ï÷/àԔK”`8t+T„'D$0ŸÌ!`ςˆ­{M„C"Ô¡@¥DAÆ×[iö&›ì e÷¿¯($Ë8œuÏv&åÜ(äÉi/ß·ón[­eÁ©2’qL3.•(¨:>ʉJÛ5ŒÖi¡}m&ëê8ûC†Úâø ß%4Õ·SÓ+FI™\ý~7žVéªs€á8ÞS< ã{?ðfé·ÓmWµÝjó˗ã¸Ã ˆ£Ç0Zø³ñÇpäNâ±ÅîÄF¥H-–—I'ô‚{}î"ŒL»}¥¿Ÿ¶õi^Éàæ SÛnÚ@}‰˜$ìiÕ'!¡@T'b^*U²3Ø+ۚ]' &ÿÞYÛ\r­%Öx.gΟ_fQÖ¨7ê'GGpµ1Â\:¥µ&D©‘?te4êÀ52 )Í3¯Ä2‹Q•ÑI\@ ¥`´˜2À¤(ËD®£”ï)RˆUn.4__z½¯Ð1·o&Q$½—CžÉ\ÐnÀ•3´6é“í‡ÈÁŽØ†èBLÌÂÀN&’È"ìT#ƒú7ý'$%ÓN»§§j®4&säÜ÷´ÍìôúÓ¨×ÌRÃ4Qšò@ÂÒ%ȄŽºœ4S3Ab MÚ§œBùâ°(c.µEžÚðóý`h}6gͬca¢g¿ÂÄk >ïˆE±ÌžeÅے:—ƒÚ*çÇø—?ðüë‰;¾܍KX» åŸwSg8p]úӛ>Nîo^>IO‡·þÍxêo'î¨Ù€möôÆî5Ï{ô¦&lŸñùjœT¨~E¨sJ@GLÚtƸ4÷Œp!W8‡gɲ¿ñ*¯í+^µ[[¡›ÆRp­–™Y[°¬f|Ñ;ƒf çÐԑT~ˆz„™Ž,Ûďm(š«îîÅ^—ÏvRÇv§ uϳl¸„Ö ´Àá”ã^ÍQmWañøÿÅêX¿;-»Ê«{ˆŒïëÔÓÄïÇz'ò C¶©*t– Š ·_À%ٙ"Ž­¦ ´ëÙüj+kµ“)ñs…ä›2_‰µUžŸ“d_ˆö²¢Y0½ìÿ…PÍj1>o ï0ÞªPÝzVÑқ¡ô bvv7 É2™A|w“u[ZÅu.óý&«MÛ´RH1›Là½2c¿‘K†‘;š«¥€È1¶&Zøl]/{2X>(ïaۋ¿’xۋ¯4¸q°S¤ƒ‡‡Tc•ŠâÌó|¯ÝJ@þXçì·ø£R0 nUÞ8 oÓ¼x à‘Ñ–þ6ä$EÖõ#ä@Fÿð¢PZcË/ãH‹Y\U°šSî(¹dO–‘s–âœ~d³¾í=ýwÛ6’?_þ -$ë.åF–íìõî]R»uR'Í{Iš§×·u²^J‚$ž)RKR‰Ýnþ÷›|’²œìî½ó{m$ ó…™øíw«ÅêΝý¯¿¾Ã¾fßϒ”³Õ".&ùrgÓQ’MèA’Í‹|½b¯áý0.>c“4.KöäÅó'¢==Š×Õ"/{ `Ö%{œóbÎE¯i\qþ“íÑ?ð;>BÀ¬†²gŸýþûïr|*2~Uñlj*Ñ7[Q?üÿ{»HJ iS^²jÁÅg˜Ëgô}%'''_ŽØóŠ}LҔ9[—|ÊfE¾Ttåû“<+ó”c·$cy1å«rVð -ô31Ÿ¬+ŸÍÖÙ¤J ×Ha".D‘#èa“å*åKžU1‚颸^”ÐŒŽˆ¬½èùû\$¹«õ8M&o cr1çÕÅÙëÔ¬åù`'=²¸˜_$Ùl—š Øø4Z+«â¢à+WƒˆEÐ<=d÷Ùøïßá¿ÿÚ}D>)”>}úÔ»?‰fÈø÷5{’&쯘zÄô“ïWq/äD€þNSXÁ,Ôèhôö#O?ð@#9s¦×sÆçÀ˜œ‰¹s‰G²í>ý뛗¤jú`[ÒÊÏ8øÔAèùÍ 42ó _ºd&¦…käÑRýªþ%Q¬g•'YÉb2%‚Zþü«¤‰ûq‘Løèú †d(닼äÙ(ÔG©®WœèO@àCV®ø$™áDQ‚$̋K–gî -®³Ë,ÿ˜Y‹$Ñ@à:¬GvlG·eG0“"¾ègøÅ;:ö=¡§’žGqšÄe4l¶ø§ÔâÕÏ/^x ß„cÐ=Eþ!™¢côËâ%g3P3zD£È¶kÎÆ=Ñή·BzgsÀ™ý—‹=üBÊ—Ö¤¨eЍ‹4ò€æ#ö‡»ûë²Ø'Ù>XÀݱº³¨1þEúã2¶Hª’§3ö.úÃÝw©z(ãiô Ð(žT¥8l…<§›ô#ˆÈ*Nç[®ô-Qè@\3ž ¡žOsUw[ׁ÷[Ð7Åv¬K`^¡x¢ï†âaƒåº¥–MÒ5ˆãëOÞÀà*à%6M -˜qH:“0áõn‹ÍzMM«ªm&‡YìLhUéwiåaL³çE¿å º ÊK¾Ôô˜(å(‚^Ь”õ“h9ýFÀ|ùÃ7Ñ0*ñ¡ø~öãÉaÔÎ~I¿ù|ί¶š.A86W(ïa¾Na‰ø•–#ÔûI¶ZW´neÇj]~­ŸdSûz\NŠ„,£-ƶâšöÃD® ׃VDяLQÆ×Ë1˜t6@n9Ÿ¢7R®ÇJŒI@rrSVb¯AR‚*uLdùeˆò£H¿„ìçbq&î#H‡Ô_ƒ’ ø ¿_ ö•vé¥U¿ ¤y ›¬­æ @³ù„6Q¸"¯|}q"]±I"ÚÀ{.À›(«=â|³;!ëoý9_³ ¸O°sá<¢wÑ!|’¥86¨ìŠÅ–[—ȨuЙ䀂­Ã‚j¿¾0Ï$ 1&BR[ÇiÈòŠñ¢\rçØÛ´Žaf„`G,f0 Ÿ¾„ÕG/<-sOa?YæK]HØÝJߨu”²Z¡4Œ+µñ7V¶?%ê&X ^UÀ'EKò6( 1üE¼Z€µŽF2á+˸¸±@l–dDúʘmûa„µ‹`u!?þíÁF¸cû÷÷Ç0샛!?äNûôÂ.âq’B/”œ‡A%œ­W«¼=t–̳öæ¼ì>²æœdÒ%ÏkïÁ7ÿ¡Zëä6ÚàÄa€áç ©ía¿9|ö£½!&Ra‚Ÿýd³‚ -&/ƒ0ðx²±P©;é%¿¦ Àd6oà³Æ‡‚sAçVùõí€úì:k_ð¿­ÔÓÔt•Q„²Ëî±Ø îtT;eOÇÔíhõD¢×Ãþýï5(wš0版Ó}ÔÚèIU&z×`?³ùPZ­€Øà:ÃóÀ%3³5ų XÕÀê3è<Ðsª…«4¼Ù~¾§<¨~» XU~Ùlá1ދÁ]°‹BSîúŸ¨x'06ÁµxðóiB«/¢(C)!÷ÜU´ŒM 7ÌOxù§Ã· gÍÁ@£B†§l–Ìׅð½Á¯°7ücìŒõ'õƒÌ…\βæù–B~‚Díkß$õA Û!é2jj„ë‹ñ.T6ê+ìíÙÿÈîâ<.ø¸«%µmj÷ùÅGäÒØZDéær•&ÕàÞ»ìސýµe+ò×]ÒÝ0W¯ªƒíÅdÁKïPj>`}çÔppoøØ´³wÕûûƒó¿à¿£¯qôówð·ÿ–Ÿäð#Œ¡î IDa¨lL¹1uÕòüð}-ü!.›>Ý ÃÙÜMʒW1Že ëÅî½Fª*gÝÜo€8Ó37…¸"À#X?5 æÑcǬdˆͮgšŒ£žl@{¹`ÿ2 åR˜¾ƒú¤ÄІ1¥‰ XúæJ öv­†ê@deéiH+hWíɛ„­s-úÿ`M„Ðt‚Š6K½U’$T§N’Ëé_-/ÛK¾+|Ó¤üï8M¦øå©´~íerß½×*¤[2 -W/ârÛ¬7,áTÐäЪú î*PâäWØ ¡lí¶°%"µûéå òio\I=?×Ëz#‘F“ñCðv¿€‡å˜e&…h–duœ˜1_µä2‰Uï‰Åϰ%΋¥,hábÕ¿}ž›™>%<‰³eÞ[ʚX5Ðr¢9=S5¢ýF’ UO›(`Ò³‘"œC⏦U2‚x㧁ëµ0–„üœÅc‘ñÀåkᘑÍ炡­¯ŠáÕ`†P° ìÓ« áïÞ*§uCØR¥œpÁ55Ðyø°Ú;†}êK ”Íù`~ºç“È› -ߺHÛe8Zí¥ÉeCìž,8ìI*ÃÇCÿGñVŽA±7I½¤’)lðsf´Q°h£ #‰î8§WÕÇo1–y¬ýa©n#ª–’NB\ìÛ£f{¤[zf.4ª†¼o‚nS(AŠ$bÍTVÛ¨9 -Éí[3õ¶§°ÞHúêmÂ'$E#`œ¦Ä…Ey;•î²ÖüÄ[mâN¸^—MâæãÿÁH(xâXUKŽƨ7ށ¬H¯l¬à$6 -Á&$ßý¬ -å×Ð(”uj×'§”˜BÐSÐ4ß pAi„Ý€hé>"û%êBú¯9õê\t C–€‚öïҀqµ²e|=æòŒpC«ä.Æ,Í<Ép=n×y’Õ'íôö–al$y"ØÙ⽐ïSû=²Æ&è*Y.{GG£#0Ayv&Ò½¶’V7wßÅØmÞ»þ rW¸8B;‰a)b>½Ö¾Y _Le„¶­ä\¨ØhÃݰêzàëØøÅ +ÜÒîb²œb9æÅJÅH éx^3[Õ1Ô)¯‹â1æj±>û¬$£}êkÃFukÁAÀrß{ñ^{¬:RƒmÎ\’Þ3RÏ{%©B -âfvžžcŽÍNŠÌÇÉZkÚUÀ^ -ͪ‘¸ÛŸ&E9òu›³Iõ´T¸¨L7%”U°òõ)LƉXâvÕް_å@¶·2<‰»îá¡:´)¿ œûø…V!®C¨°%±rÉ(¹£r=–ñ*É"ĵ²«(ܬ¢²JB]Յ®Q<ž<G`U^áÞ^Æ."Ÿ²©•ˆr)¾ŠWÊ㟮Z±ûS#J -«V”fžV:oƒ­‡ÎSÊë‘ôï'x º`ÇÌS)E]²3bÏgl/A¶NDµqÍO¯^üÙè@qNYÚ1‡È|eVX(*D©Žµú -A‹>YÆYj€ÀÝ`¯~zkt2ëú‹o…ú§­ì’ç’W(íä~¸|}Æëº‹ ÝR~¬±ðŽ(ÕÞÁß1)H1{ۖ™]ª¿øb÷28ŒšQù t¤Ø=ÖÛ£Ö@1’=1•š ÙÁ= ”Oô‡»Þ°/µ—9MhOîoÎ E3ž­&´ 4ƒ6zÁï³COظ^ëè‰ ³'ÀV˽Õüv&£ïρ¸¡òÆB÷ÁÐdÕPñÅÝ0_¸“Âv¸cR?õñhüCïÒÀbmº‰†´ñ-濙øßs`„©)„ן Asï[<¡&X„l¶Ê¨EFª†üÉwÙwÇÔÊÈ+ÏräP1°—²Á§¶‡‚§uˆŒ|‹:5BD֪ɪ6Pï*ÙMv¹P5p¬M‹GÛ!íP™F8èÆQ¨ë¸Ïèââéó§£h_ÕÎE7Æ-úîØã׋g¨šp̽c`²3P܃ɡ—o i§6 “FÐÖüfÄcÎV)fRÐÿ×V¤ÙIv¨uӆ¶–gSŸ¥%¯[=ëgi¡u·í²ª˜oqC_)NAuõ0 Î!T¯Ö4ÏéTFñÎÒù¤¾Ã¦Šõä‰þ£‚Hé35æ®´kd‡;:AyëÅ:ëÚI¼®£Ÿ#y”›‘GPVvGwïP§=KÎÙé•(p]ƗàÜa+9¦99¢Ó꣱õÒÞ$¸Šëš¬3ѼãõÎs½êçdå‰KR1û“”\–òÙ¯ƒì)ÉÀ1jëT{÷õñ¯Ï_?è9ð”ÏâuZaƒuq ÷ìr“xK³…k¨*¸OTr@öð+h%­ùÊVõïjpp£ÃøÓ†x2Ö'b+ŸéV¥ø¼´ä±qȔ®Ÿ€†W«E‘¯çºêÏ1ÁÓ¹ îèA“¬äE%âȕªÿú"aCmLr‰:/$R®nšGÝ©@½´Â¥^⛞G[GmŠäÝ ø CzI†çIøÕsš~^tŒ.myž}àXéoõ7u.(c¿ 5÷™Ël3c.ÍDUµ_±|àl7ÖY¡s@Œó<åq&@d¹2¿,D!9úƒ^ˆQá¹(uHͪ;n»aêl*ºí@“:ħ'¨ÑøªXšÇy”\A;é· ÛEåºðpHȜYµ^ç¿1#õ¯BÖëDîÀ˜LYû7|².JŒ«*vQh=êè¨Ú×ý ™k»¥é"27í6ÂUP †%HjüªÍ€­V± ¼W.Ô0€w¤fýƒ¶üí>Ue"t|¹ª®ÕFK·©"‹Þð8}W‹Eͨ…ó{{5o;gníl=F`xä°;ÃŒb°ó%½F鯊÷)ݨ+Òpà”WT½!ks‘f`!}ž -‹Z>ÛפVsENc}§@»¥s¬LØÂT|½¡â›,û±«~¢8Dõß(·ê@óÑôìðTjnÞiê_ÛQ$Qۂr²àÆu.>´•9ø¦@ˆ‡×YZe"¤â%}ÔµGi<áƒhã?ø?ñÜ`VªXˆ‘÷öØ1;@CRkœ<“è€Ý–LM=´ À«Y¬î65Ù"=Ru?2ÂGæÂø(—°v'‹œÝ)tj;™çâÉ{:‹ôcšÚbhcu[› -…¹ÊÊáÓ/±³ }+Û oýHßKÊH À\à -ºzïWÕõUý¾³ޚë ÊË©.¨kgf‰d+.Àûʞ+Z’ÓfEAèÚ²¸ÓÕ®Nm|—†‘¢˜zT{Ð’^“píCmº·¯álÙS5e´§xY.Ê^Ä~ɜ•(k6|©¸BÔ¥íñÓ&©ít -̇ç pC»ªQŸòÞZbcÿÇ<ҝ8»fóÌ ¯VÏHˆîU±æ®úKÓ Ø€¸V¹bRLÅ€þ….ÞÈ®‘í*^Ãz+WJ±ŽZ]I²ªQ°‚íŒþãå‡x·Õ+p¦á L™0t¹œÊ´-*°º&­k[[&^×\¥u£î«¶)7꫞&º°j]¤QGœ¨-ÇÒ5ã7ëÌ;YÌõ˜¡Ì¦vï“áñN:Ö. CQÕfãmÁµzkÞ+HTìå‹RïQI`mÝ˺nÀf‚¨Äâ`Ü!_ì­j/2bf(‰Cm$qYûw³Q”D¼G54Ú-Id™´DvÓêD f’±Ÿß¼`¢· d->£ˆv‘EԘ½ö—T‰]Sä õÊ͋xµHÜ ¦%ìZԞa[%kéƒÞjÁKèØÉ]õÕ Â_V9àåÉvb×Ö gúï{ßynD¥­ê—ö …)§üªÂkF»4Ê©Ñ,((bÞFC‰‹F»¿B‘ˆuŠÄP©u$ßn ÒƒRµ¦°éeK¸µÕt8H¢®†mìKì:íV F÷nÅ¢i°>ÛPN7­Ê–wµÂ’`I¶ýX]ҍd¹¶ùg7ÕvéŸê­ ÝË%H -rN ¥wÑè]´kÖ1oWºÜ¦ ƒj7ÀøÈ^Ka—)ªxˆGގGd±¿ Õ4H'öL*¹é_åÖ$_g•xŒ‘òÃÎóÏ?e)ìÜñRf@WfV1Mó|:òœƒÖåÉ9Á?çÎÅ!¾ ˜jbÐBô)`c|éH¥kcŒØS9—™„ó̼à -;©+ ¢îv•ÄG»ÍU$Q4= òêqÊ3—®ÂÆVáG£Ù’BÂî®Q DÁ„Q 9¢+ò µÑÜÐ?r‡r…ó´Öq3å[«ñF¶[+qž÷˜r‹iÔÌÙP)å-©ûBÇCT×)_ÁÒë&äõ¼X&Ž/ÅO1Þ*“NyèÆˆ:êx0£Ÿu®À8ëjä9!aî­ÉI…‰³îøgë@톃úL§L^¤ªÒoSßMæ7ëËòÓÕ $Z+eHr/D“ï'ù -$×Pôú¯l4Ñ´l·Õ§±ëùåNn›/9åH0Wö _éJ¨Ð¸>>çœ÷mq‚›W§tû·§{Iä,Ì̽rtsÇÖO Êùo«¼÷úþ!p8©‹ñº¿§jjyµ²|WûR„nµFMoõÔuVoâÆµ0 ÝH¯çilVÁ’ˆ×öT´)’ŠÊ:Z-¹'È,•Ï×ÅÈͤYý°­bí&²ë©Sƒ-2&rªL*«‹\1l‘YÏÆuÆ©0¯·c•Rh{Šõò&vVŠ–»Ôm¶¥º=YÎ;oÒé–1ß$Âçu'O“Ô»%ì·Ä¿ÿ? ûyè‹qÓý¬¥pZ͑/µ‘56±¢ÒCWÙ¨–þb›nõçeSU~à贉Oû©º>šr“ä¥*ïés¾ G¢Óh+jRûžh-éÿÌ5øNå?¶î>ŒL-ö§[)²1/ -ªÝ›éʓq¸}eD~Ìúª &^€€Á‘Ú”õ(§ 3OÞÙSBý󿕠ܲÜP­¨çäÒÄ é¼²õP_큯Kì2Сɠë"°vfk”u¯Â œ{QÕD¤¿I?]•-µ>M$®[=Üß'âEÛ«{[Æhh¼¡f;—Œ—lœÝíE9sø&å6:v¦Ë3ûèùŽpõ9V·ÞêìT+”¶3@7Y{­ æÍµÆ++¥C£«e:ôSìó¯ M⪹žújÞ¢¯žu髐‚}j?…ÚÛUY-$ï£²Ìøœ%’ -ÊÂ_яÒ&f¤‰þ‰4˜‡¤nü¬¦(3É^“OðzN§’ùRÝke’Q/…Š”ª®4W)Öúb3}ˆ«àŽöÎL؇9›úM·¤ð&‚s‰ÍÐHj•¾…žQNYÛ -aúù‰ÙμÈÕh§ËÕ=è€V:iIW÷×Djà &RØãÉ©úD!½µVìõ„c¡n ¤Ê6ªdÒMԓbîÕ¯LšÉæ‰Ý­[tѧ©>žðÛÜõa.ÿŒÄêF’œïçˆÍ}Ó½F¬8¼ -hãŠýö+79UÜyGc=ÍMOÜÊüƒÇnB‚0°>TžJØb¢?kµÆ§7e¿ÃÖ=/㼑כÌ ¥Ëú¼ö LK©úö­Êw±kݜ×Ðí7Înå•vD—Qž©†!Crb—Š=¼Ð–é7-ȏ·a@º&O¾cˆÈz4Oùû¯îÂ"`Jz_¥ÒrŠ ²Ï•7-|ïkW0=z/ìY3˜Ð&\½%H!Ñ*EKýfÚzÏ(¬q]Ÿ¬Š ÅuµÆËj)Öu£h -E=t8&惬^KoO ¯1vU2¡´x­±¼]÷r¤–·ÚÆ"ACÓÈ0œÿ^ݕpNaã3–·ã¢T«·Ö3­õ‹T7õœ¨ëå…Ò!hÛ  ¥V$|ÏÂNžNU]fÝu^/ææÎ«€¨_Úèlý¥'tƒ‰|Ñ 4ïb5‰ª³Ž-zi(dK ‹w€ÄÊtÇNb¼à®\c‚»ýeGˆÁ¹`,zË*r®ÝA0óµìÈKª¦Xß"µõ€~ë¾Ð¯•›Û'½x ð^¼*¨­›Ôßt8Q]1UåÈÍ7óã¤÷°=¥+þ]WJ€ÖÔöpó’Ìôñ°nkäu:Ò~¯™D·¥ü«yyúŠI1¾ªÚlŒ¡]¡8sýgéÆÑÁ_„ŠGɤ"[&ÞMSS00 å㵸tÛz\üíßÈׂ~ý³3]Lïs¶nÉ×ê$„r¶<„ðW ê|çÊ5ê>G˲|›9ZޔÖ?ÄÑêo:Ä¡À !‹¯r¦šyoʦª÷ö}Ûø öxQ]6¬žÈ—œ€6þ­nSè -ˆoÕßÀi„(%èÜÑ|­¦ÍÙêlêðõ£¦†ï}!C?§ÖåÇI±!݋—2‡©ŽxÙÜk–XŽžÁÇïˬnÇPû™â 3² ’)T‰ÿ<èÒ⦞†º…>«¡îe¨hJ‡cP»Aö5èi}ÄùW0ȽôÿÆVÿz*`š”iڂ¡F7` ï«|*î¤ :06]ÐÈ@yC¦Ý?©ô ßøI"±ìc³ã[g'h™3˜Å¹ì;PHo#2/Ì x5pÃö\ÐÎ,ÿ‰»üÿŒ + ¾ñBߨ/A{Þк/lŸä¹j³Ñ»+yÈP+mFÆn­Ó £õs<_×Ia¿WyY&ò’XeL6Ie(aûî%®Sáô¼ó¥‡M³n’µÿ.¼ªMÃ~+v½‹hÓ}Ü¥ íÚÄníãö¹¿Õ•ïÿ0µ˜ÎI[(Pé±¼¶ wÝûßzÑT°¢ÿyD©µÑ%¸+¼ë¿×_BüžíÑ7ªr}õÓ«S£¼ÕÕõv¥QÎ#üÿ…øñQ°—ÛÁlk^68)a7Ɛ¾-×Þ_馎æ¯òg‚÷×¥÷Wùbc½vѳ_££c|Òã_à's1Õ¡>7MÐñ!ææ‹û÷mò›@ë½ã¤|bT0yM¼ ’Þ?bØÜ,ý:ý¯Ç¤ùÇÆò¶`ÒGRí©õއHýêä&dY5Ö WÀ½Ÿ­•ŒÐ“P>ò´\\ ù´ B`•;ý-É®.îþW²HÙ;çzAüŒ¿#Éq®¶:ÌZ¹=*‚»´Òl-Àw·Ÿÿ¦:r˜§µVH¾ot#¶è˜® v=’ëÔ:Œj,†ioÆh²z¹ߨ𠢝Fšõބ#øâ;XiÁc_³Ãƒƒ]¶¯ž<¤ïÍ?ìÍÓ|Lǘaz,†A˜-êÕ!ËÀú`Õ¼1wµ>êžfu½o7ŽFÞÕ-p´¶P£u»Èþ·5/18#"2vòÅw½’íʋ˜¥5¨Ý¾¬ô]°”ÚfÂ8ІUûÇE2YÐ5¸€gCÉcÿe|5PĤָ’„´}àM³MF,zˆwÅȋãy\ "†™â}KlÙÈà{¤|ý‹–å -~º#?|w|獒AOƒ@…Ï쯘£6±T/4Öڋš4ö˜) °qYÈì.jˆÿ݁jj i˅ÌûÞ¼}K¸Ÿ×E­T<™(˜Àc¦ A] OµMzEۜ«PÃZÄ^ز¦ ƒÎíE ¾¨`…œOqN;”¢'çf6»…«þ%z‡ºmXVe‰6•9Vq mÛþËúôdSž×o N -ÝÐ_מ÷Ön:Öv^]ֆJ²½®ì©Ú ±\Og}·ã¥öá^) ²ÛЋ'F_±jU”›tÇBN~£s‹>0]\ªHXÄ$“… £;}«CÿÂhtçx™>´M¤A£Ós"¤:Ë-Æ2ÞékL¶ò9ÆôݲÐ&•¸3ï9°ÓVäQ~&ò}o|؎!7@ç?_9X-˪á~L†W^¡„d*ÿtGBMB \ No newline at end of file +$ë.åV–íìõî]R»uR'Í{Iš§×·q²^J‚$ž)RKR‰Ýnþ÷›|’²œìî½ó{m$ ó…™øÝ÷«ÅêΝý¯¿¾Ã¾f?̒”³Õ".&ùrgÓQ’MèA’Í‹|½b¯àý0.>c“4.Köøù³Ç¢==Š×Õ"/{`Ö%{”óbÎE¯i\q÷þ“íÑ?ð;>BÀ¬†²gŸýþûïr|*2~Uñlj*Ñ7[Q?üÿ{³HJ iS^²jÁÅg˜Ëgô}%'''_ŽØ³Š}LҔ9[—|ÊfE¾Ttåû“<+ó”c·$cy1å«rVð +ô31Ÿ¬+ŸÍÖÙ¤J ×Ha".D‘#èa“å*åKžU1‚颸^”ÐŒŽˆ¬½èùû\$¹«õ8M&o cr1çÕÅÙ«ûÔ¬åù`'=²¸˜_$Ùl—š Øø4Z+«â¢à+WƒˆEÐ<=dß°ûðß¿Ãÿµû:|R(}úô©v͐5ðïkö8MØS^1õˆé'?¬â"^"&È ˆý¦°‚Y¨Ñ}ÑèÍGž~àFræL?®çŒÏ19sæ?ŽdÛ}ú×7/IÕôþ¶¤•Ÿq*ð©ƒÐ%ò›Ahdæ ¾tÉLL ÖÈ£¥úUýK¢XÏ*6N²’Å dJµüùWI÷ã"™,ðѯôA ÉPÖyɳQ¨'ŽR]¯8џ>€À‡¬\ñI2É¢*Iþ˜—,ÏÜ\g—Yþ1³+H¢ÀuXì.؎nˎ`&E|=ÐÏð/Š#vtì{BO$=â4‰ËhØlñ!N©ÅË_ž?÷<¾#Ç {ŠüC2EÆè'–ÅKÎf fô:!‰F‘l׆{¢]o…ô8Îæ€3û).{ø…”3.¬IQÊ  häÍGìw÷×e±?N²}°€»#b…tgQc ý7ŠôÇe l‘T%Ogì]ô‡»ï"Rõ8PÆ?Òè Q<©8JpØ +y"N;6éG0‘UœÎ·\éyŽD­¿*xIf+’j±ù@Ãlù¤jК™pŒ—9 +³‚îIí³<ãÑíÁÜå¢ý |Z¢Ðþ¸f=B=Ÿæªî¶®ï· oŠíX— À2¼Dñ5Dß ÅÃËu J-›¤kÇW?¼†/ÀUÀKlš0ã:t&3`ÂëÝ›õššVUÛL5²Ø™ÐªÒïÒÊØf΋~Ë!t”—|©é1;#PÊQ½ Y)ë'Ñrú­€ùâÇo£aT.âCñý짓èý’~ó-øœ_m5]‚pl®P ÞÃ|Âñ+-G¨÷“lµ®hÝʎպü2Z?ɦ÷õ¸œ )XF?ZŒ5lÅ5í‡+ˆ\®­ˆ¢™¢Œ¯—c0èl€Ür>Eo¤\•“€ä䦬Ä^ƒ¤U<ê˜ÈòËä#F‘~ÿ2ØÏÅãLÜG©¿%/ð~¿ì+5ìÒK«~Hó6Y[ÍA€8fÏó m¢pE^ýôêâDºb“D´€÷\€7QV{Äùf;wBÖß(ús¾fpŸ`ç.Âx Dï¢Cø$KqlPÙ‹-#¶.‘)Pë 3 È[‡!Õ~|ažIbL„¤¶ŽÓ&åãE¸ä α=¶ià Ì!ÀŽXÌ`:>} «^xZæ,žÂ~²Ì—82º°»•¾Që(eµC7hWjão¬ +lJÔM°¼ª€OŠ–älP@b88ø‹xµkŒdÂW–qq=b'€Ø,Ɉô•1ÚöÃ<kÁxˆÌÖ!Ð*ž\Æs@†Ã¥†uçY¹.¸×Àý +êYXí6~jþ²ŸìàD¶’\"2èÂÕBâЪõØ +\}i“öºÓŒÑz\‘cÕD^‡±þ Ì3 € ‚» =2D¿¥É8ÚÝ5ösøWïéÎÁ­®\ø4ÿ-zMŽXôô-èzÓé}ØH²B0í@>u!?þíþF¸cû÷÷G0ìý›!?äNûôÂ.âq’B/”œ@%œ­W«¼=t–̳öæ¼ì>´æœdÒ%Ïkïþ·ÿ¡Zëä6ÚàÄa€áç ©ía¿=¼ö£½!&Ra‚Ÿýd³‚ +&/ƒ0ðx²±P©;é%¿¦ Àd6oà³Æ‡‚sAçVùõí€úì:k_ð¿­ÔÓÔt•Q„²Ëî±Ø îtT;eOÇÔíhõD¢×Ãþýï5(wš0版Ó}ØÚèIU&z×`?³ùPZ­€Øà:ÃóÀ%3³5ų XÕÀê3è<Ðsª…«4¼Ù~¾§<¨~» XU~Ùlá1ދÁ]°‹BSîúŸ¨x'06ÁµxðóiB«/¢(C)!÷ÜU´ŒM 7ÌOxù§Ã· gÍÁ@£B†§l–Ìׅð½Á¯°7ücìŒõ'õƒÌ…\βæù†B~‚Díkß$õA Û!é2jj„ë‹ñ.T6ê+ìíÙÿÈîâ<.ø¸«%µmj÷ùÅGäÒØZDéær•&ÕàÞ»ìސýµe+ò×]ÒÝ0W¯ªƒíÅdÁKïPj>`}çÔppoøØ´³wÕûoçÁG_ãèçïàoÿ= ,?ÉáGCÝ’ˆÂPؘrcêªåùáû&Zø7B\6}ºþ†³¹›”%¯b/;Ë֋Ý{…TUκ¹ßq0¦gn +qD€G°0~jÌ¢Ǝ<XɄ›]Ï4G=Ù€örÁþ-d(Ê¥0}õI‰ cJ A°ô͕: ííZ ՁÈÊÒӐVЯړ7 [çZôÿÁš¡ém–z«$I¨N$—Ó¿Z^¶—|Wø¦IùßqšLñËi üÚËä¾{¯TH·d®^Ää¶Yo8X4© É¡(TõÜU Äɯ°ABÙÚmaKDj;öÓËä?ÒÞ¸’z~®—õZ #&ã9†àí~Ë1ËL0 +Ñ,Éê890c¾jÉe«Þ‹ŸaKœKY&ÐÂŪ7~1ú4<73}Jxg˼",¶”5±j åDsz¦j*Dû$A«ž6QÀ¤g#E8‡$Ä'M«"dñÆO Öka, ù%‹Ç"ãË)Ö6Â1#›ÏC[_ëÁ ¡`2اW.Âß;¼UN놰¥J9á‚kj óða#´w ûÔ(›óÁ.ütÏ'‘7¾u‘¶Ëq +´ÚK“ˆØ=^pؓT†‡þãƒbo’zI%SØàçÌh ¢`ÑFAFÝqN¯¨ßa,óXûÃRÝFT-%„¸Ø'¶GÍöP·ôÌ\hT yßݦ&P‚IĚ©¬¶Qs’Û7fêmOa½‘ô)ÔۄOIŠFÀ8M‰ ‹òv*Ýe)¬ù‰-¶Úĝp)¼.›ÄÍÇÿƒ‘P4ðıª–  ŒQo¼Y‘^ÙXÁIlƒMH¾ûYʇ/¡Q(ëÔ®ON)1…* § i¾à‚Ò»ÑÒ}DöKԅô_sêÕ¹è@†,íß'¤ãj9dËøzÌåá†VÈ]ŒYšy’ázÜ®ó$«OÚéí-ÃØHòD°³Å{!ß§ö{dMÐU²\ö>ŽŽFG`‚òìL¤{m%­n±Û¼wýA䮄qq„vÃ6RÄ|x7¬}³¾˜Êm[7È7¸P±Ñ†»aÕõÀ×±ñ‹V¸¥ÝÅd9År̋•Š‘Òñ¬f8¶ªc¨Þ;aS^5ÄcÌÕb/|&öYIFûÔW†êÖ8&‚ƒ€å¾÷ +ã½ö Xu¤ڜ¹$½g¤ž÷J&R…ÄÍìe%R+åR|¯”Æ?]µb÷§F”V­(3Ì<­tÞ[§”9Ö#éßO2ðtÁŽ™5¦RŠºdgÄžÍØ^‚lˆj⚟_>ÿ³Ñâœ²´c ùʬ°PTˆRk+ô‚}²Œ³Ô»À^þüÆèdÖõß +õO[Ù%Ï%¯.PÚ/ÈýpùúŒ×uº¥üXbáQª½ƒ¿cRbö2¶-3»T,~ñÅîep4£òèH±{¬·G­b${b* 4²ƒ!»O)Ÿèw½a_j/sšÐžÜß:2Šf<[M.hAi + lôƒÃ=aãz­ '6̞[-÷VóۙlŒ¾?â†Ê ÝC“!TCÅwÃ|áN +ÛáŽIýÔÇ£ñ½wH‹µéx$vÒÆ·˜ÿfâρ¦¦^‚ ̽ïð„š`²Ù*£©ò'ßeß{P(#¯<ˑC=ÄÀ^jÈŸÚ +žÖ 2ò-êÔY«&«>Ú@½«d7ÙåBÕÀi°6-n‡´Ceá GU ®ã>£‹‹'ϞŸ^\Œ¢}U;Ý·èûc_/ž¡ +h>Â1÷ށÉÎ@q &‡^n¼5¤Ú€LA[ó›9[¥˜IAÿ_[‘f'Ù¡ÖMÚZžM}––¼nõ¬Ÿ¥…ÖÝv¶Ëªb¼]Ä }¥8Õշ€:‡P½ZÓt>§SÅ8Hç“ú;˜r(fԓ'ú +>"¥ÏԘ»rЮ‘îèdå­ë¬k'ñªŽ~ŽäQnFAYÙݽCö,9g§W¢Àu_‚s‡5®ä˜~ääˆNóÌÙsøNnš³hì9DMƒšoZà¦×Íx‚£|ŒB””Û–§Ä”Ì”1”@ŸŠZ9°ƒyH 1™šÄÙ¯ERñÁV©:ÁšTªpª“±«¢Ãz +ôv°yïXì³b,Äí’QgaùQf㱯±ÚM»g!È̃ÆÂט*v=_c:Láiœz Õh¼ò5&]é\ú'ف¶ÓøÊßwMÈFÛº1ñ´Ô±|EyR0bwÝ`¤ð¤ã£õlÆ1€dUzŠ™é±}+¯®76Sn4øëÒ·“kn£Œ±@Oêhù†’$C¹öڞ±›slˆ™©ðèg]Ò*Ž%Q‰×µìBn Ä9¯hú¨ÆÖK{“à*®k²ÎDóŽ?Ô;ÿÍ ôªŸ“•',yHÅìÑ_)B =}ëñ‘=UY>n}ãŠzï~ôö~¿‘§|¯Ój#à/~yºû°¼SÒMâà-ÒN¢ªå>QiÙïª•Üæ+KlÕspÁ«ÁÁŽåO¾àÉtZŸyˆ­Ì¦[ŸâóÐ¦ÇÆqSºˆ¶ h­E¾žëúc<ÑOç2Ì£M²’•ˆ(Wª$èQˆÔ µ1É%>ê ‘H¾º u»õÒª—z‰ozmµQ’·4à7 î%ž,áWÏhúyÑ1º´äYöcÍ¿ÕßÙ¹ ŒƒÔág:ˆ.óΌ¹4õÕr|ÅúSÞXq…êÌ1Îó”Ç™‘åʈþº%åèx5F…'¤Ôq5«¹íB„©³½è¶M:è`Ÿž þEã«¢j7RríQ¤/¬îÂoÀ!!ÃfUEz·©²^wrÆdÊî¿æ“uQ‚dü¨XU±‹BëaGGÕ¾îÍ\+.‘¹iÁ®‚j0,ARëäWmlµŠmà½r¡†Ñ¼#5+!´€ðÑ ú¬@¬Ž/WÕµÚ²b7ÕÆ`™Âk§¯âj1 øµp~o¯ëmç À ­Ç ÿv‡bxƒQ vÞ ¸×(âXñ>EumœòŠê8da.,"ä¢ÏSËaQËg»âz«Ôj®èèi¬oh·tŽ• [˜€Š¯÷"ÔA|“@vý£ÓO”‰¨~âeCh>ºƒžžOÍÍÛMBýk; Ê%j[PNܸØÅ‡¶2ŸÃñðÚ"K«L„T¼¤ï‘º)'|íïc$ÿ'žÌJµK1òÞ;fh@j3h°Û’³©‡–¡x5‹Õ7‡M F¶HφTݏŒ@’9„0>Ê%¬]ÅÉ"g÷Dg +¢ÚNæ¹xòޟØ"ýX£¦6ÚXÝÖöBaA®²rGøôéÛÁgß`†~ôöÙ«û=Gn2¼•$}¯+#1cp+èê½S\U×WõKøÎJxk®3(¯©º Š¬™%’­¸ïg({®hIN›u–;¡kËâNW»:µñi\FŠbêiPíAwHzMµµéÞ^8¼†³eOԔўâÅf¹(€û%sV ¬Þð¤2 Pu´GR›¤´Óa(0JLœ#à íªvF}¢uÊ{k‰’ýóHwâìš5N67¼RX¶ê`Ú7¦œò« +/íÒ(§F³  xtŠy“ %,íþ +E"Ô)C¥BÔá|g¸-4JJ՚¦—Q6áVYÓ1!‰º¶±/±+¶[Ý»Sˆ¦ÁJmC9Ý´>[ÞÚ +K‚ÅÙöcu]W4’…ÛæŸÝT_Ý¥ª·‚tC— )|È]8%”ÞE£wÑ®YѼ]s›6 +0 ªÝ{à#{-…]¦¨âI y;UÄþ&TÐ Ø3©4?¦|5\“|Uâ1FÊ;OBÿœ¥°sÇë™^™YÅ4Í?òéÈs":X¡'çÿœ8Wˆø®bª‰A ѧ”eŒñ¥#•®Œ1bO…]ffÌ3óª+ì¤.7ˆºÛQTí6V‘DÑô@6t +­wÆ)Ï\º€[% ýfK + »»F1dFæˆ®ÈƒÔFsCÿÈÊÎÓZoÄ͔o­ÆÙn­pÄÉBÜcÊ-¦Q=gC¥”·_g#7“fõöе›È®§N ¶`Șȩ2©¬®DrŰEf=ק¼Þ"ŒUJ¡í)Ö#È;ÙY}í§êvúhÊM’—ª¼§ÏIƒ‰N£­¨Ií{ µ¸ÿ3Wã;u–ÿØ +ü02µ ؟n¥È:ļh(¨Šl¦+OÆ1÷•ù1ë«Z,˜xGjSÖO Lœ‚Ì<ƒodO 9ôϛ—{€rËrCµ¢ž“ïJ¯b P¤óÊ +ÔC}ɾ8±Ë(†&ƒF¬‹Àڙ5.PÖ½ƒpîEU‘þ&uüdU¶Ôú\‘¸Hnõ`Ÿˆm¯îm ¢¡ð†vší\2b\²qv·åÌᛔÛèš.Ïì£ç7:ÌÕç˜XÝz«ST­PÚNÝdíµ2˜7×þ)¯¬”Œ.™éÐO±Ï¿64‰«æzê«y‹¾zÚ¥¯B + ö©ý4nhoWeµ¼Ê2ãsv–H^-( D?J›˜m&ú'Ò`’ºI𳚢Ì${M>Áë9OæKuÕIF½*RªºÒ\¥Xë‹Íô!®‚?8Ú;3aëlê7ݒ› Îu6C#©!TúzF9em+„éçÇf;óJW£.W÷ Zé¤%]Ý_©ƒšHa'§€ú†ežb¯' u_ EP¶Q%“n¢žs—¨~eÒL6OìnÝú£‹>Mõñ˜ßFà®s¡ø‡è`$V7’Ôà|?Glî œó5Ê`ňà¥@Wì·_ÎhŸÄ=Ié@_€ÔøåÖNÜÊüƒÇnB‚0°>TžJØb¢¿hµÆ§7e­ÕWÜD´ð °]Átôè ±gÍ`B›põ– …D«-õ;jë=£°Æu}²*.ׯ­¥X׍¢a(õÐᘘ²zi,½GU€¼ÆØa\TɄÒâÇòžÝːZÞo‹t M#ÃpþvWÂ9…ÏXޓ‹R­Þ_Ì´Ö¯ô¹ 1¦FèNéŽÀ¹XÙ _oŠT§×òN)1¬zˆ¨žyânV@)¡Íf)@`®o–¬ ~…‡#v‚dU´ â/–¦‹ âKø¿È"¥×¬ˆÅÉWE‘C1Í6깏XiÝ![ÁêRbË:À×­ª»ä¬©®ùå‹ÛPØKŒ‰uï÷‘€¥7uÐé/$cù¹ƒÞª>H¸ÛÜ9è–B@–—¾–ÄnËåÍSOúPÝÔs¢®—J‡ m/,”Z‘ð= ;y:Uu™u×y½˜›;¯¢~Uj£³õK”žÐ &òE'м•ÕH$¨Î:¶è…¡-%,Þ+Óa;‰ñª»r îö×!炱è}«È¹vÁÌGÔ²#/©šb}‹ÔÖú­ûj¿VnnŸôâ5À{ñj¨ ´nRÓáDuÅT•#7ß̏“ÞÃRô ”®túw])ZS#DØÃÍK2ÓÇú­‘× èHø]¼fAܖò¯æåéË&Åøªj³1†v…âÌõŸ¥G*ý%_Šl™xKMMÁÀ$”×âÒmëquð?´S\|#_ úõÏÎt1½ÏÙº%_«“ÊÙòÂ\5|¨ó+רû-ËòmæhySZÿG«¿é‡7t|„,¾Ì™jæ½3›ªZÜ{ømãO€ [ØâEuÙ°z"_rÚø·ºM¡+ :¼U§" ” sGóµš6g«g|°©Ã׏š¾÷Õ ýœZ—_'ņtó¸-Ió”7Þ éóIT³Í}詇ßÌ%žA—DÖõoܬ(½t*J]Û²ó^€Êø{£:¢ +]ú,>\ʦ:Vtâes¯Y>`9z¼/³ºCígŠÇÌȂJ¦P%þýó K‹›zêVø¬†ºC:”¡þ±)ŽA@íÙ× §Aöç_Á ÷Òÿü멀iR¦i †6݀~¨ò©¸6èÀØtA#aä ™vwü¤Òo€~ã'yˆÄ²ÍŽliœ eBÌ`ç²ïA!=h¼—ȼ03àÕlÀ ÛsA;l°ü'îòÿ3.ü­,øÆ }c¿íyCë>·}’gªÍFou¬ä!CU¬´A»µHL/DŒÖÏñxt]'I„ý^åe™ÈKb•1eØ$•¡„m컗¸N…Ó³Î×6ͺIÖþ»ð6ª6 û­Øõ. M÷q—.P´k»m´wŽØçþVW¾ ÄÔb:'m] @¥ÇfðÚ2Üuï|ÿESÁŠþç=¦zÔF—à®ð®ÿ^ ñ'x¶GgܨÊß`”·ú£ºÞ®4Êy„ÿ¿?> ör;˜mÍË'%ìÆÒ÷À åÚû+ÝÔÑüUþì@ðþºôþ*_q¬×.zú6::Ɨ!=z{?™‹©õ¹i‚ށ47_шh|óM>bh½wœ” +&ïñ£‰„AÒoŽ˜67K¿Îpïë1iþ±±¼-˜ô‘T;Gj½÷!R¿D¹ YVuÇðCïgk%#ô$”<-H>í‚XåNK²«‹»ÿå,RöNŹ^?ãïHrœ«­Î#³Vn +€…à®í7[ ðÝíç¿)¤Žæi톒ï݈-:¦ƒkƒ]ä:µ£‹aڛƒ1Ú£l €^®À7ªfƒè«ÑŸæ_}…7á¾øVZðØ×ìðà`—í«'è{sÅ{ó4Ó±f˜‹af €zuÀ2°>X5oÌ]­º…§Y]ïۍ†£‘wu ­-ÔhÝ.òšÿmÍK ΈˆŒ|ñ]¯d»ò"fi j·o+},¥¶™0N†¢¡GÕþq‘Lt .àÙPòØ_ 1©5¾$!mxӁÄlE“‹à]1òâxWƒˆ!G¦xßÛc62øÞ)_à¢e¹‚ŸîÈßßù_’AOƒ@…Ï쯘£6±T/4Öڋš4ö˜) °qYÈì.jˆÿ݁jj i˅ÌûÞ¼}K¸Ÿ×E­T<™(˜Àc¦ A] OµMzEۜ«PÃZÄ^ز¦ ƒÎíE ¾¨`…œOqN;”¢'çf6»…«þ%z‡ºmXVe‰6•9Vq mÛþËúôdSž×o N +ÝÐ_מ÷Ön:Öv^]ֆJ²½®ì©Ú ±\Og}·ã¥öá^) ²ÛЋ'F_±jU”›tÇBN~£s‹>0]\ªHXÄ$“… £;}«CÿÂhtçx™>´M¤A£Ós"¤:Ë-Æ2ÞékL¶ò9ÆôݲÐ&•¸3ï9°ÓVäQ~&ò}o|؎!7@ç?¨¶€cˇÇ|Ö5Ë,ï­]­É®&hGBMB \ No newline at end of file diff --git a/ext/phar/phar/pharcommand.inc b/ext/phar/phar/pharcommand.inc index e95f138d86..3ba08b4052 100755 --- a/ext/phar/phar/pharcommand.inc +++ b/ext/phar/phar/pharcommand.inc @@ -501,14 +501,14 @@ class PharCommand extends CLICommand switch($this->args['c']['val']) { case 'gz': case 'gzip': - $phar->compressAllFilesGZ(); + $phar->compressFiles(Phar::GZ); break; case 'bz2': case 'bzip2': - $phar->compressAllFilesBZIP2(); + $phar->compressFiles(Phar::BZ2); break; default: - $phar->uncompressAllFiles(); + $phar->compressFiles(Phar::NONE);; break; }