From 5b74f6242eb0baf4414dd15033afd51abc0bb45d Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sat, 6 Dec 2025 11:27:24 +0100 Subject: [PATCH 01/15] Drop DOM dependency in XML Report to speedup xml report generation --- composer.json | 2 +- src/Report/Xml/BuildInformation.php | 52 ++++------ src/Report/Xml/Coverage.php | 26 ++--- src/Report/Xml/Facade.php | 91 ++++++++++++------ src/Report/Xml/File.php | 54 ++--------- src/Report/Xml/Method.php | 24 ++--- src/Report/Xml/Node.php | 57 +++-------- src/Report/Xml/Project.php | 56 +++++------ src/Report/Xml/Report.php | 72 +++++--------- src/Report/Xml/Source.php | 17 +--- src/Report/Xml/Tests.php | 26 ++--- src/Report/Xml/Totals.php | 94 ++++++++----------- src/Report/Xml/Unit.php | 42 +++------ .../BankAccount.php.xml | 2 +- ..._with_class_and_anonymous_function.php.xml | 4 +- .../source_with_ignore.php.xml | 2 +- 16 files changed, 237 insertions(+), 384 deletions(-) diff --git a/composer.json b/composer.json index 578037545..790ee065c 100644 --- a/composer.json +++ b/composer.json @@ -40,7 +40,7 @@ "sebastian/environment": "^8.0.3", "sebastian/lines-of-code": "^4.0", "sebastian/version": "^6.0", - "theseer/tokenizer": "^1.3.1" + "theseer/tokenizer": "^2.0" }, "require-dev": { "phpunit/phpunit": "^12.4.4" diff --git a/src/Report/Xml/BuildInformation.php b/src/Report/Xml/BuildInformation.php index 654eecb31..b9375f228 100644 --- a/src/Report/Xml/BuildInformation.php +++ b/src/Report/Xml/BuildInformation.php @@ -9,63 +9,47 @@ */ namespace SebastianBergmann\CodeCoverage\Report\Xml; -use function assert; use function phpversion; use DateTimeImmutable; -use DOMElement; use SebastianBergmann\Environment\Runtime; +use XMLWriter; /** * @internal This class is not covered by the backward compatibility promise for phpunit/php-code-coverage */ final readonly class BuildInformation { - private DOMElement $contextNode; - public function __construct( - DOMElement $contextNode, + XMLWriter $xmlWriter, Runtime $runtime, DateTimeImmutable $buildDate, string $phpUnitVersion, string $coverageVersion ) { - $this->contextNode = $contextNode; - - $runtimeNode = $this->nodeByName('runtime'); + $xmlWriter->startElement('build'); + $xmlWriter->writeAttribute('time', $buildDate->format('D M j G:i:s T Y')); + $xmlWriter->writeAttribute('phpunit', $phpUnitVersion); + $xmlWriter->writeAttribute('coverage', $coverageVersion); - $runtimeNode->setAttribute('name', $runtime->getName()); - $runtimeNode->setAttribute('version', $runtime->getVersion()); - $runtimeNode->setAttribute('url', $runtime->getVendorUrl()); + $xmlWriter->startElement('runtime'); + $xmlWriter->writeAttribute('name', $runtime->getName()); + $xmlWriter->writeAttribute('version', $runtime->getVersion()); + $xmlWriter->writeAttribute('url', $runtime->getVendorUrl()); + $xmlWriter->endElement(); - $driverNode = $this->nodeByName('driver'); + $xmlWriter->startElement('driver'); if ($runtime->hasXdebug()) { - $driverNode->setAttribute('name', 'xdebug'); - $driverNode->setAttribute('version', phpversion('xdebug')); + $xmlWriter->writeAttribute('name', 'xdebug'); + $xmlWriter->writeAttribute('version', phpversion('xdebug')); } if ($runtime->hasPCOV()) { - $driverNode->setAttribute('name', 'pcov'); - $driverNode->setAttribute('version', phpversion('pcov')); + $xmlWriter->writeAttribute('name', 'pcov'); + $xmlWriter->writeAttribute('version', phpversion('pcov')); } + $xmlWriter->endElement(); - $this->contextNode->setAttribute('time', $buildDate->format('D M j G:i:s T Y')); - - $this->contextNode->setAttribute('phpunit', $phpUnitVersion); - $this->contextNode->setAttribute('coverage', $coverageVersion); - } - - private function nodeByName(string $name): DOMElement - { - $node = $this->contextNode->appendChild( - $this->contextNode->ownerDocument->createElementNS( - Facade::XML_NAMESPACE, - $name, - ), - ); - - assert($node instanceof DOMElement); - - return $node; + $xmlWriter->endElement(); } } diff --git a/src/Report/Xml/Coverage.php b/src/Report/Xml/Coverage.php index 9462780be..3038eb143 100644 --- a/src/Report/Xml/Coverage.php +++ b/src/Report/Xml/Coverage.php @@ -9,7 +9,6 @@ */ namespace SebastianBergmann\CodeCoverage\Report\Xml; -use DOMElement; use XMLWriter; /** @@ -17,20 +16,21 @@ */ final class Coverage { - private readonly DOMElement $contextNode; + private readonly XMLWriter $xmlWriter; private readonly string $line; - public function __construct(DOMElement $context, string $line) - { - $this->contextNode = $context; - $this->line = $line; + public function __construct( + XMLWriter $xmlWriter, + string $line + ) { + $this->xmlWriter = $xmlWriter; + $this->line = $line; } public function finalize(array $tests): void { - $writer = new XMLWriter; - $writer->openMemory(); - $writer->startElementNs(null, $this->contextNode->nodeName, Facade::XML_NAMESPACE); + $writer = $this->xmlWriter; + $writer->startElement('line'); $writer->writeAttribute('nr', $this->line); foreach ($tests as $test) { @@ -39,13 +39,5 @@ public function finalize(array $tests): void $writer->endElement(); } $writer->endElement(); - - $fragment = $this->contextNode->ownerDocument->createDocumentFragment(); - $fragment->appendXML($writer->outputMemory()); - - $this->contextNode->parentNode->replaceChild( - $fragment, - $this->contextNode, - ); } } diff --git a/src/Report/Xml/Facade.php b/src/Report/Xml/Facade.php index f31a1520d..59e99e1c0 100644 --- a/src/Report/Xml/Facade.php +++ b/src/Report/Xml/Facade.php @@ -21,7 +21,6 @@ use function strlen; use function substr; use DateTimeImmutable; -use DOMDocument; use SebastianBergmann\CodeCoverage\CodeCoverage; use SebastianBergmann\CodeCoverage\Data\ProcessedClassType; use SebastianBergmann\CodeCoverage\Data\ProcessedFunctionType; @@ -31,11 +30,11 @@ use SebastianBergmann\CodeCoverage\Node\File as FileNode; use SebastianBergmann\CodeCoverage\PathExistsButIsNotDirectoryException; use SebastianBergmann\CodeCoverage\Util\Filesystem; -use SebastianBergmann\CodeCoverage\Util\Xml; use SebastianBergmann\CodeCoverage\Version; use SebastianBergmann\CodeCoverage\WriteOperationFailedException; use SebastianBergmann\CodeCoverage\XmlException; use SebastianBergmann\Environment\Runtime; +use XMLWriter; /** * @phpstan-import-type TestType from CodeCoverage @@ -68,15 +67,21 @@ public function process(CodeCoverage $coverage, string $target): void $report = $coverage->getReport(); + $writer = new XMLWriter; + $writer->openUri($this->targetFilePath('index')); + $writer->setIndent(true); + $writer->setIndentString(' '); $this->project = new Project( + $writer, $coverage->getReport()->name(), ); $this->setBuildInformation(); + + $this->project->startProject(); $this->processTests($coverage->getTests()); $this->processDirectory($report, $this->project); - - $this->saveDocument($this->project->asDom(), 'index'); + $this->project->finalize(); } private function setBuildInformation(): void @@ -121,7 +126,10 @@ private function processDirectory(DirectoryNode $directory, Node $context): void $directoryName = '/'; } - $directoryObject = $context->addDirectory($directoryName); + $writer = $this->project->getWriter(); + $writer->startElement('directory'); + $writer->writeAttribute('name', $directoryName); + $directoryObject = $context->addDirectory(); $this->setTotals($directory, $directoryObject->totals()); @@ -132,6 +140,7 @@ private function processDirectory(DirectoryNode $directory, Node $context): void foreach ($directory->files() as $node) { $this->processFile($node, $directoryObject); } + $writer->endElement(); } /** @@ -139,20 +148,27 @@ private function processDirectory(DirectoryNode $directory, Node $context): void */ private function processFile(FileNode $file, Directory $context): void { - $fileObject = $context->addFile( - $file->name(), - $file->id() . '.xml', - $file->sha1(), - ); + $context->getWriter()->startElement('file'); + $context->getWriter()->writeAttribute('name', $file->name()); + $context->getWriter()->writeAttribute('href', $file->id() . '.xml'); + $context->getWriter()->writeAttribute('hash', $file->sha1()); + + $fileObject = $context->addFile(); $this->setTotals($file, $fileObject->totals()); + $context->getWriter()->endElement(); + $path = substr( $file->pathAsString(), strlen($this->project->projectSourceDirectory()), ); - $fileReport = new Report($path, $file->sha1()); + $writer = new XMLWriter; + $writer->openUri($this->targetFilePath($file->id())); + $writer->setIndent(true); + $writer->setIndentString(' '); + $fileReport = new Report($writer, $path, $file->sha1()); $this->setTotals($file, $fileReport->totals()); @@ -164,6 +180,8 @@ private function processFile(FileNode $file, Directory $context): void $this->processFunction($function, $fileReport); } + $fileReport->getWriter()->startElement('coverage'); + foreach ($file->lineCoverageData() as $line => $tests) { if (!is_array($tests) || count($tests) === 0) { continue; @@ -172,6 +190,7 @@ private function processFile(FileNode $file, Directory $context): void $coverage = $fileReport->lineCoverage((string) $line); $coverage->finalize($tests); } + $fileReport->getWriter()->endElement(); if ($this->includeSource) { $fileReport->source()->setSourceCode( @@ -179,12 +198,14 @@ private function processFile(FileNode $file, Directory $context): void ); } - $this->saveDocument($fileReport->asDom(), $file->id()); + $fileReport->finalize(); } private function processUnit(ProcessedClassType|ProcessedTraitType $unit, Report $report): void { if ($unit instanceof ProcessedClassType) { + $report->getWriter()->startElement('class'); + $unitObject = $report->classObject( $unit->className, $unit->namespace, @@ -194,6 +215,8 @@ private function processUnit(ProcessedClassType|ProcessedTraitType $unit, Report (float) $unit->crap, ); } else { + $report->getWriter()->startElement('trait'); + $unitObject = $report->traitObject( $unit->traitName, $unit->namespace, @@ -205,6 +228,8 @@ private function processUnit(ProcessedClassType|ProcessedTraitType $unit, Report } foreach ($unit->methods as $method) { + $report->getWriter()->startElement('method'); + $unitObject->addMethod( $method->methodName, $method->signature, @@ -215,11 +240,17 @@ private function processUnit(ProcessedClassType|ProcessedTraitType $unit, Report (string) $method->coverage, $method->crap, ); + + $report->getWriter()->endElement(); } + + $report->getWriter()->endElement(); } private function processFunction(ProcessedFunctionType $function, Report $report): void { + $report->getWriter()->startElement('function'); + $report->functionObject( $function->functionName, $function->signature, @@ -230,6 +261,8 @@ private function processFunction(ProcessedFunctionType $function, Report $report (string) $function->coverage, $function->crap, ); + + $report->getWriter()->endElement(); } /** @@ -237,15 +270,21 @@ private function processFunction(ProcessedFunctionType $function, Report $report */ private function processTests(array $tests): void { + $this->project->getWriter()->startElement('tests'); + $testsObject = $this->project->tests(); foreach ($tests as $test => $result) { $testsObject->addTest($test, $result); } + + $this->project->getWriter()->endElement(); } private function setTotals(AbstractNode $node, Totals $totals): void { + $totals->getWriter()->startElement('totals'); + $loc = $node->linesOfCode(); $totals->setNumLines( @@ -256,6 +295,16 @@ private function setTotals(AbstractNode $node, Totals $totals): void $node->numberOfExecutedLines(), ); + $totals->setNumMethods( + $node->numberOfMethods(), + $node->numberOfTestedMethods(), + ); + + $totals->setNumFunctions( + $node->numberOfFunctions(), + $node->numberOfTestedFunctions(), + ); + $totals->setNumClasses( $node->numberOfClasses(), $node->numberOfTestedClasses(), @@ -266,15 +315,7 @@ private function setTotals(AbstractNode $node, Totals $totals): void $node->numberOfTestedTraits(), ); - $totals->setNumMethods( - $node->numberOfMethods(), - $node->numberOfTestedMethods(), - ); - - $totals->setNumFunctions( - $node->numberOfFunctions(), - $node->numberOfTestedFunctions(), - ); + $totals->getWriter()->endElement(); } private function targetDirectory(): string @@ -290,12 +331,4 @@ private function targetFilePath(string $name): string return $filename; } - - /** - * @throws XmlException - */ - private function saveDocument(DOMDocument $document, string $name): void - { - Filesystem::write($this->targetFilePath($name), Xml::asString($document)); - } } diff --git a/src/Report/Xml/File.php b/src/Report/Xml/File.php index e6dd5c4ba..2d35582a8 100644 --- a/src/Report/Xml/File.php +++ b/src/Report/Xml/File.php @@ -9,66 +9,32 @@ */ namespace SebastianBergmann\CodeCoverage\Report\Xml; -use function assert; -use DOMDocument; -use DOMElement; -use DOMNode; +use XMLWriter; /** * @internal This class is not covered by the backward compatibility promise for phpunit/php-code-coverage */ class File { - protected readonly DOMDocument $dom; - private readonly DOMElement $contextNode; - private ?DOMNode $lineCoverage = null; + protected XMLWriter $xmlWriter; - public function __construct(DOMElement $context) + public function __construct(XMLWriter $xmlWriter) { - $this->dom = $context->ownerDocument; - $this->contextNode = $context; + $this->xmlWriter = $xmlWriter; } - public function totals(): Totals + public function getWriter(): XMLWriter { - $totalsContainer = $this->contextNode->appendChild( - $this->dom->createElementNS( - Facade::XML_NAMESPACE, - 'totals', - ), - ); - - assert($totalsContainer instanceof DOMElement); - - return new Totals($totalsContainer); + return $this->xmlWriter; } - public function lineCoverage(string $line): Coverage + public function totals(): Totals { - if ($this->lineCoverage === null) { - $this->lineCoverage = $this->contextNode->appendChild( - $this->dom->createElementNS( - Facade::XML_NAMESPACE, - 'coverage', - ), - ); - } - assert($this->lineCoverage instanceof DOMElement); - - $lineNode = $this->lineCoverage->appendChild( - $this->dom->createElementNS( - Facade::XML_NAMESPACE, - 'line', - ), - ); - - assert($lineNode instanceof DOMElement); - - return new Coverage($lineNode, $line); + return new Totals($this->xmlWriter); } - protected function contextNode(): DOMElement + public function lineCoverage(string $line): Coverage { - return $this->contextNode; + return new Coverage($this->xmlWriter, $line); } } diff --git a/src/Report/Xml/Method.php b/src/Report/Xml/Method.php index 1b5bdb28f..965ad5259 100644 --- a/src/Report/Xml/Method.php +++ b/src/Report/Xml/Method.php @@ -9,17 +9,17 @@ */ namespace SebastianBergmann\CodeCoverage\Report\Xml; -use DOMElement; +use XMLWriter; /** * @internal This class is not covered by the backward compatibility promise for phpunit/php-code-coverage */ final readonly class Method { - private DOMElement $contextNode; + private XMLWriter $xmlWriter; public function __construct( - DOMElement $context, + XMLWriter $xmlWriter, string $name, string $signature, string $start, @@ -29,21 +29,21 @@ public function __construct( string $coverage, string $crap ) { - $this->contextNode = $context; + $this->xmlWriter = $xmlWriter; - $this->contextNode->setAttribute('name', $name); - $this->contextNode->setAttribute('signature', $signature); + $this->xmlWriter->writeAttribute('name', $name); + $this->xmlWriter->writeAttribute('signature', $signature); - $this->contextNode->setAttribute('start', $start); + $this->xmlWriter->writeAttribute('start', $start); if ($end !== null) { - $this->contextNode->setAttribute('end', $end); + $this->xmlWriter->writeAttribute('end', $end); } - $this->contextNode->setAttribute('crap', $crap); + $this->xmlWriter->writeAttribute('crap', $crap); - $this->contextNode->setAttribute('executable', $executable); - $this->contextNode->setAttribute('executed', $executed); - $this->contextNode->setAttribute('coverage', $coverage); + $this->xmlWriter->writeAttribute('executable', $executable); + $this->xmlWriter->writeAttribute('executed', $executed); + $this->xmlWriter->writeAttribute('coverage', $coverage); } } diff --git a/src/Report/Xml/Node.php b/src/Report/Xml/Node.php index 37023b448..36b75bcfe 100644 --- a/src/Report/Xml/Node.php +++ b/src/Report/Xml/Node.php @@ -9,72 +9,37 @@ */ namespace SebastianBergmann\CodeCoverage\Report\Xml; -use function assert; -use DOMDocument; -use DOMElement; +use XMLWriter; /** * @internal This class is not covered by the backward compatibility promise for phpunit/php-code-coverage */ abstract class Node { - protected readonly DOMDocument $dom; - private readonly DOMElement $contextNode; + protected readonly XMLWriter $xmlWriter; - public function __construct(DOMElement $context) + public function __construct(XMLWriter $xmlWriter) { - $this->dom = $context->ownerDocument; - $this->contextNode = $context; + $this->xmlWriter = $xmlWriter; } public function totals(): Totals { - $totalsContainer = $this->contextNode()->firstChild; - - if ($totalsContainer === null) { - $totalsContainer = $this->contextNode()->appendChild( - $this->dom->createElementNS( - Facade::XML_NAMESPACE, - 'totals', - ), - ); - } - - assert($totalsContainer instanceof DOMElement); - - return new Totals($totalsContainer); + return new Totals($this->xmlWriter); } - public function addDirectory(string $name): Directory + public function addDirectory(): Directory { - $dirNode = $this->dom->createElementNS( - Facade::XML_NAMESPACE, - 'directory', - ); - - $dirNode->setAttribute('name', $name); - $this->contextNode()->appendChild($dirNode); - - return new Directory($dirNode); + return new Directory($this->xmlWriter); } - public function addFile(string $name, string $href, string $hash): File + public function addFile(): File { - $fileNode = $this->dom->createElementNS( - Facade::XML_NAMESPACE, - 'file', - ); - - $fileNode->setAttribute('name', $name); - $fileNode->setAttribute('href', $href); - $fileNode->setAttribute('hash', $hash); - $this->contextNode()->appendChild($fileNode); - - return new File($fileNode); + return new File($this->xmlWriter); } - protected function contextNode(): DOMElement + public function getWriter(): XMLWriter { - return $this->contextNode; + return $this->xmlWriter; } } diff --git a/src/Report/Xml/Project.php b/src/Report/Xml/Project.php index c81a6a933..750908c75 100644 --- a/src/Report/Xml/Project.php +++ b/src/Report/Xml/Project.php @@ -9,11 +9,9 @@ */ namespace SebastianBergmann\CodeCoverage\Report\Xml; -use function assert; use DateTimeImmutable; -use DOMDocument; -use DOMElement; use SebastianBergmann\Environment\Runtime; +use XMLWriter; /** * @internal This class is not covered by the backward compatibility promise for phpunit/php-code-coverage @@ -22,19 +20,16 @@ final class Project extends Node { private readonly string $directory; - public function __construct(string $directory) + public function __construct(XMLWriter $xmlWriter, string $directory) { - $dom = new DOMDocument; - $dom->loadXML(''); + $this->directory = $directory; - parent::__construct( - $dom->getElementsByTagNameNS( - Facade::XML_NAMESPACE, - 'project', - )->item(0), - ); + parent::__construct($xmlWriter); - $this->directory = $directory; + $this->xmlWriter->startDocument(); + + $this->xmlWriter->startElement('phpunit'); + $this->xmlWriter->writeAttribute('xmlns', Facade::XML_NAMESPACE); } public function projectSourceDirectory(): string @@ -48,15 +43,8 @@ public function buildInformation( string $phpUnitVersion, string $coverageVersion ): void { - $buildNode = $this->dom->getElementsByTagNameNS( - Facade::XML_NAMESPACE, - 'build', - )->item(0); - - assert($buildNode instanceof DOMElement); - new BuildInformation( - $buildNode, + $this->xmlWriter, $runtime, $buildDate, $phpUnitVersion, @@ -66,22 +54,24 @@ public function buildInformation( public function tests(): Tests { - $testsNode = $this->contextNode()->appendChild( - $this->dom->createElementNS( - Facade::XML_NAMESPACE, - 'tests', - ), - ); - - assert($testsNode instanceof DOMElement); + return new Tests($this->xmlWriter); + } - return new Tests($testsNode); + public function getWriter(): XMLWriter + { + return $this->xmlWriter; } - public function asDom(): DOMDocument + public function startProject(): void { - $this->contextNode()->setAttribute('source', $this->directory); + $this->xmlWriter->startElement('project'); + $this->xmlWriter->writeAttribute('source', $this->directory); + } - return $this->dom; + public function finalize(): void + { + $this->xmlWriter->endElement(); + $this->xmlWriter->endDocument(); + $this->xmlWriter->flush(); } } diff --git a/src/Report/Xml/Report.php b/src/Report/Xml/Report.php index b57189d64..46d4dc0ed 100644 --- a/src/Report/Xml/Report.php +++ b/src/Report/Xml/Report.php @@ -9,11 +9,10 @@ */ namespace SebastianBergmann\CodeCoverage\Report\Xml; -use function assert; use function basename; use function dirname; use DOMDocument; -use DOMElement; +use XMLWriter; /** * @internal This class is not covered by the backward compatibility promise for phpunit/php-code-coverage @@ -23,8 +22,9 @@ final class Report extends File private readonly string $name; private readonly string $sha1; - public function __construct(string $name, string $sha1) + public function __construct(XMLWriter $xmlWriter, string $name, string $sha1) { + /* $dom = new DOMDocument; $dom->loadXML(''); @@ -32,20 +32,28 @@ public function __construct(string $name, string $sha1) Facade::XML_NAMESPACE, 'file', )->item(0); - - parent::__construct($contextNode); +*/ + parent::__construct($xmlWriter); $this->name = $name; $this->sha1 = $sha1; + + $xmlWriter->startDocument(); + $xmlWriter->startElement('phpunit'); + $xmlWriter->writeAttribute('xmlns', Facade::XML_NAMESPACE); + $xmlWriter->startElement('file'); + $xmlWriter->writeAttribute('name', basename($this->name)); + $xmlWriter->writeAttribute('path', dirname($this->name)); + $xmlWriter->writeAttribute('hash', $this->sha1); } - public function asDom(): DOMDocument + public function finalize(): void { - $this->contextNode()->setAttribute('name', basename($this->name)); - $this->contextNode()->setAttribute('path', dirname($this->name)); - $this->contextNode()->setAttribute('hash', $this->sha1); + $this->xmlWriter->endElement(); + $this->xmlWriter->endElement(); - return $this->dom; + $this->xmlWriter->endDocument(); + $this->xmlWriter->flush(); } public function functionObject( @@ -58,17 +66,8 @@ public function functionObject( string $coverage, string $crap ): void { - $node = $this->contextNode()->appendChild( - $this->dom->createElementNS( - Facade::XML_NAMESPACE, - 'function', - ), - ); - - assert($node instanceof DOMElement); - new Method( - $node, + $this->xmlWriter, $name, $signature, $start, @@ -88,16 +87,7 @@ public function classObject( int $executed, float $crap ): Unit { - $node = $this->contextNode()->appendChild( - $this->dom->createElementNS( - Facade::XML_NAMESPACE, - 'class', - ), - ); - - assert($node instanceof DOMElement); - - return new Unit($node, $name, $namespace, $start, $executable, $executed, $crap); + return new Unit($this->xmlWriter, $name, $namespace, $start, $executable, $executed, $crap); } public function traitObject( @@ -108,29 +98,11 @@ public function traitObject( int $executed, float $crap ): Unit { - $node = $this->contextNode()->appendChild( - $this->dom->createElementNS( - Facade::XML_NAMESPACE, - 'trait', - ), - ); - - assert($node instanceof DOMElement); - - return new Unit($node, $name, $namespace, $start, $executable, $executed, $crap); + return new Unit($this->xmlWriter, $name, $namespace, $start, $executable, $executed, $crap); } public function source(): Source { - $source = $this->contextNode()->appendChild( - $this->dom->createElementNS( - Facade::XML_NAMESPACE, - 'source', - ), - ); - - assert($source instanceof DOMElement); - - return new Source($source); + return new Source($this->xmlWriter); } } diff --git a/src/Report/Xml/Source.php b/src/Report/Xml/Source.php index 698a71b6d..e82b2c382 100644 --- a/src/Report/Xml/Source.php +++ b/src/Report/Xml/Source.php @@ -9,33 +9,26 @@ */ namespace SebastianBergmann\CodeCoverage\Report\Xml; -use DOMElement; use TheSeer\Tokenizer\NamespaceUri; use TheSeer\Tokenizer\Tokenizer; use TheSeer\Tokenizer\XMLSerializer; +use XMLWriter; /** * @internal This class is not covered by the backward compatibility promise for phpunit/php-code-coverage */ final readonly class Source { - private DOMElement $context; + private XMLWriter $xmlWriter; - public function __construct(DOMElement $context) + public function __construct(XMLWriter $xmlWriter) { - $this->context = $context; + $this->xmlWriter = $xmlWriter; } public function setSourceCode(string $source): void { - $context = $this->context; - $tokens = (new Tokenizer)->parse($source); - $srcDom = (new XMLSerializer(new NamespaceUri(Facade::XML_NAMESPACE)))->toDom($tokens); - - $context->parentNode->replaceChild( - $context->ownerDocument->importNode($srcDom->documentElement, true), - $context, - ); + (new XMLSerializer(new NamespaceUri(Facade::XML_NAMESPACE)))->appendToWriter($this->xmlWriter, $tokens); } } diff --git a/src/Report/Xml/Tests.php b/src/Report/Xml/Tests.php index 652cebe36..fcb6bb7cc 100644 --- a/src/Report/Xml/Tests.php +++ b/src/Report/Xml/Tests.php @@ -9,10 +9,9 @@ */ namespace SebastianBergmann\CodeCoverage\Report\Xml; -use function assert; use function sprintf; -use DOMElement; use SebastianBergmann\CodeCoverage\CodeCoverage; +use XMLWriter; /** * @internal This class is not covered by the backward compatibility promise for phpunit/php-code-coverage @@ -21,11 +20,11 @@ */ final readonly class Tests { - private DOMElement $contextNode; + private readonly XMLWriter $xmlWriter; - public function __construct(DOMElement $context) + public function __construct(XMLWriter $xmlWriter) { - $this->contextNode = $context; + $this->xmlWriter = $xmlWriter; } /** @@ -33,18 +32,13 @@ public function __construct(DOMElement $context) */ public function addTest(string $test, array $result): void { - $node = $this->contextNode->appendChild( - $this->contextNode->ownerDocument->createElementNS( - Facade::XML_NAMESPACE, - 'test', - ), - ); + $this->xmlWriter->startElement('test'); - assert($node instanceof DOMElement); + $this->xmlWriter->writeAttribute('name', $test); + $this->xmlWriter->writeAttribute('size', $result['size']); + $this->xmlWriter->writeAttribute('status', $result['status']); + $this->xmlWriter->writeAttribute('time', sprintf('%F', $result['time'])); - $node->setAttribute('name', $test); - $node->setAttribute('size', $result['size']); - $node->setAttribute('status', $result['status']); - $node->setAttribute('time', sprintf('%F', $result['time'])); + $this->xmlWriter->endElement(); } } diff --git a/src/Report/Xml/Totals.php b/src/Report/Xml/Totals.php index 28612f7aa..b0c57ec30 100644 --- a/src/Report/Xml/Totals.php +++ b/src/Report/Xml/Totals.php @@ -10,106 +10,86 @@ namespace SebastianBergmann\CodeCoverage\Report\Xml; use function sprintf; -use DOMElement; use SebastianBergmann\CodeCoverage\Util\Percentage; +use XMLWriter; /** * @internal This class is not covered by the backward compatibility promise for phpunit/php-code-coverage */ final readonly class Totals { - private DOMElement $linesNode; - private DOMElement $methodsNode; - private DOMElement $functionsNode; - private DOMElement $classesNode; - private DOMElement $traitsNode; + private XMLWriter $xmlWriter; - public function __construct(DOMElement $container) + public function __construct(XMLWriter $xmlWriter) { - $dom = $container->ownerDocument; - - $this->linesNode = $dom->createElementNS( - Facade::XML_NAMESPACE, - 'lines', - ); - - $this->methodsNode = $dom->createElementNS( - Facade::XML_NAMESPACE, - 'methods', - ); - - $this->functionsNode = $dom->createElementNS( - Facade::XML_NAMESPACE, - 'functions', - ); - - $this->classesNode = $dom->createElementNS( - Facade::XML_NAMESPACE, - 'classes', - ); - - $this->traitsNode = $dom->createElementNS( - Facade::XML_NAMESPACE, - 'traits', - ); - - $container->appendChild($this->linesNode); - $container->appendChild($this->methodsNode); - $container->appendChild($this->functionsNode); - $container->appendChild($this->classesNode); - $container->appendChild($this->traitsNode); + $this->xmlWriter = $xmlWriter; } public function setNumLines(int $loc, int $cloc, int $ncloc, int $executable, int $executed): void { - $this->linesNode->setAttribute('total', (string) $loc); - $this->linesNode->setAttribute('comments', (string) $cloc); - $this->linesNode->setAttribute('code', (string) $ncloc); - $this->linesNode->setAttribute('executable', (string) $executable); - $this->linesNode->setAttribute('executed', (string) $executed); - $this->linesNode->setAttribute( + $this->xmlWriter->startElement('lines'); + $this->xmlWriter->writeAttribute('total', (string) $loc); + $this->xmlWriter->writeAttribute('comments', (string) $cloc); + $this->xmlWriter->writeAttribute('code', (string) $ncloc); + $this->xmlWriter->writeAttribute('executable', (string) $executable); + $this->xmlWriter->writeAttribute('executed', (string) $executed); + $this->xmlWriter->writeAttribute( 'percent', $executable === 0 ? '0' : sprintf('%01.2F', Percentage::fromFractionAndTotal($executed, $executable)->asFloat()), ); + $this->xmlWriter->endElement(); } public function setNumClasses(int $count, int $tested): void { - $this->classesNode->setAttribute('count', (string) $count); - $this->classesNode->setAttribute('tested', (string) $tested); - $this->classesNode->setAttribute( + $this->xmlWriter->startElement('classes'); + $this->xmlWriter->writeAttribute('count', (string) $count); + $this->xmlWriter->writeAttribute('tested', (string) $tested); + $this->xmlWriter->writeAttribute( 'percent', $count === 0 ? '0' : sprintf('%01.2F', Percentage::fromFractionAndTotal($tested, $count)->asFloat()), ); + $this->xmlWriter->endElement(); } public function setNumTraits(int $count, int $tested): void { - $this->traitsNode->setAttribute('count', (string) $count); - $this->traitsNode->setAttribute('tested', (string) $tested); - $this->traitsNode->setAttribute( + $this->xmlWriter->startElement('traits'); + $this->xmlWriter->writeAttribute('count', (string) $count); + $this->xmlWriter->writeAttribute('tested', (string) $tested); + $this->xmlWriter->writeAttribute( 'percent', $count === 0 ? '0' : sprintf('%01.2F', Percentage::fromFractionAndTotal($tested, $count)->asFloat()), ); + $this->xmlWriter->endElement(); } public function setNumMethods(int $count, int $tested): void { - $this->methodsNode->setAttribute('count', (string) $count); - $this->methodsNode->setAttribute('tested', (string) $tested); - $this->methodsNode->setAttribute( + $this->xmlWriter->startElement('methods'); + $this->xmlWriter->writeAttribute('count', (string) $count); + $this->xmlWriter->writeAttribute('tested', (string) $tested); + $this->xmlWriter->writeAttribute( 'percent', $count === 0 ? '0' : sprintf('%01.2F', Percentage::fromFractionAndTotal($tested, $count)->asFloat()), ); + $this->xmlWriter->endElement(); } public function setNumFunctions(int $count, int $tested): void { - $this->functionsNode->setAttribute('count', (string) $count); - $this->functionsNode->setAttribute('tested', (string) $tested); - $this->functionsNode->setAttribute( + $this->xmlWriter->startElement('functions'); + $this->xmlWriter->writeAttribute('count', (string) $count); + $this->xmlWriter->writeAttribute('tested', (string) $tested); + $this->xmlWriter->writeAttribute( 'percent', $count === 0 ? '0' : sprintf('%01.2F', Percentage::fromFractionAndTotal($tested, $count)->asFloat()), ); + $this->xmlWriter->endElement(); + } + + public function getWriter(): XMLWriter + { + return $this->xmlWriter; } } diff --git a/src/Report/Xml/Unit.php b/src/Report/Xml/Unit.php index fa97909c2..bfc5029c4 100644 --- a/src/Report/Xml/Unit.php +++ b/src/Report/Xml/Unit.php @@ -9,18 +9,17 @@ */ namespace SebastianBergmann\CodeCoverage\Report\Xml; -use function assert; -use DOMElement; +use XMLWriter; /** * @internal This class is not covered by the backward compatibility promise for phpunit/php-code-coverage */ final readonly class Unit { - private DOMElement $contextNode; + private XMLWriter $xmlWriter; public function __construct( - DOMElement $context, + XMLWriter $xmlWriter, string $name, string $namespace, int $start, @@ -28,23 +27,17 @@ public function __construct( int $executed, float $crap ) { - $this->contextNode = $context; + $this->xmlWriter = $xmlWriter; - $this->contextNode->setAttribute('name', $name); - $this->contextNode->setAttribute('start', (string) $start); - $this->contextNode->setAttribute('executable', (string) $executable); - $this->contextNode->setAttribute('executed', (string) $executed); - $this->contextNode->setAttribute('crap', (string) $crap); + $this->xmlWriter->writeAttribute('name', $name); + $this->xmlWriter->writeAttribute('start', (string) $start); + $this->xmlWriter->writeAttribute('executable', (string) $executable); + $this->xmlWriter->writeAttribute('executed', (string) $executed); + $this->xmlWriter->writeAttribute('crap', (string) $crap); - $node = $this->contextNode->appendChild( - $this->contextNode->ownerDocument->createElementNS( - Facade::XML_NAMESPACE, - 'namespace', - ), - ); - assert($node instanceof DOMElement); - - $node->setAttribute('name', $namespace); + $this->xmlWriter->startElement('namespace'); + $this->xmlWriter->writeAttribute('name', $namespace); + $this->xmlWriter->endElement(); } public function addMethod( @@ -57,17 +50,8 @@ public function addMethod( string $coverage, string $crap ): void { - $node = $this->contextNode->appendChild( - $this->contextNode->ownerDocument->createElementNS( - Facade::XML_NAMESPACE, - 'method', - ), - ); - - assert($node instanceof DOMElement); - new Method( - $node, + $this->xmlWriter, $name, $signature, $start, diff --git a/tests/_files/Report/XML/CoverageForBankAccount/BankAccount.php.xml b/tests/_files/Report/XML/CoverageForBankAccount/BankAccount.php.xml index b3589c8dd..a5b9ede6e 100644 --- a/tests/_files/Report/XML/CoverageForBankAccount/BankAccount.php.xml +++ b/tests/_files/Report/XML/CoverageForBankAccount/BankAccount.php.xml @@ -35,7 +35,7 @@ - + <?php diff --git a/tests/_files/Report/XML/CoverageForClassWithAnonymousFunction/source_with_class_and_anonymous_function.php.xml b/tests/_files/Report/XML/CoverageForClassWithAnonymousFunction/source_with_class_and_anonymous_function.php.xml index 2423be0ae..9ef89df19 100644 --- a/tests/_files/Report/XML/CoverageForClassWithAnonymousFunction/source_with_class_and_anonymous_function.php.xml +++ b/tests/_files/Report/XML/CoverageForClassWithAnonymousFunction/source_with_class_and_anonymous_function.php.xml @@ -38,7 +38,7 @@ - + <?php @@ -100,7 +100,7 @@ function ( - & + & $val , diff --git a/tests/_files/Report/XML/CoverageForFileWithIgnoredLines/source_with_ignore.php.xml b/tests/_files/Report/XML/CoverageForFileWithIgnoredLines/source_with_ignore.php.xml index 69941c405..f5559b09e 100644 --- a/tests/_files/Report/XML/CoverageForFileWithIgnoredLines/source_with_ignore.php.xml +++ b/tests/_files/Report/XML/CoverageForFileWithIgnoredLines/source_with_ignore.php.xml @@ -22,7 +22,7 @@ - + <?php From 19d6860842234111fe2317fc3948548e7284620b Mon Sep 17 00:00:00 2001 From: Sebastian Bergmann Date: Mon, 8 Dec 2025 08:05:26 +0100 Subject: [PATCH 02/15] Update dependencies --- composer.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/composer.json b/composer.json index 03302f224..a62cbb925 100644 --- a/composer.json +++ b/composer.json @@ -33,7 +33,7 @@ "ext-dom": "*", "ext-libxml": "*", "ext-xmlwriter": "*", - "nikic/php-parser": "^5.6.1", + "nikic/php-parser": "^5.7.0", "phpunit/php-file-iterator": "^5.1.0", "phpunit/php-text-template": "^4.0.1", "sebastian/code-unit-reverse-lookup": "^4.0.1", @@ -41,10 +41,10 @@ "sebastian/environment": "^7.2.1", "sebastian/lines-of-code": "^3.0.1", "sebastian/version": "^5.0.2", - "theseer/tokenizer": "^1.2.3" + "theseer/tokenizer": "^1.3.1" }, "require-dev": { - "phpunit/phpunit": "^11.5.35" + "phpunit/phpunit": "^11.5.46" }, "suggest": { "ext-pcov": "PHP extension that provides line coverage", From 574c8b6044c02b701f75beb3481ada393888747d Mon Sep 17 00:00:00 2001 From: Sebastian Bergmann Date: Mon, 8 Dec 2025 08:05:40 +0100 Subject: [PATCH 03/15] Update tools --- .phive/phars.xml | 6 +++--- tools/composer | Bin 3249738 -> 3281618 bytes tools/php-cs-fixer | Bin 3478210 -> 3485127 bytes tools/phpstan | Bin 25629515 -> 26247011 bytes 4 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.phive/phars.xml b/.phive/phars.xml index a9b83e89d..1f54aadfd 100644 --- a/.phive/phars.xml +++ b/.phive/phars.xml @@ -1,6 +1,6 @@ - - - + + + diff --git a/tools/composer b/tools/composer index 57222395314625833b1947b1c42537d33bd7a3bd..02740c582be6e50e21a48bc1370de50c4b7198b0 100755 GIT binary patch delta 25051 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 niqQiP9J0RGcjOPhz8Qb%qq)ZTVi>TLP5e!r delta 11747 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 diff --git a/tools/php-cs-fixer b/tools/php-cs-fixer index 997a14782e1522a1afbf099d257a5b02892a5972..04a544723a099ae5c830be9f3cec7837bd45ff33 100755 GIT binary patch delta 36411 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 delta 33405 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 WWA&o=KJ_oJ!apbEHlTNL@BafAvy~SB diff --git a/tools/phpstan b/tools/phpstan index 8c83a085ddc639cd3c98ebce960bedf708e23635..bc32b8047b409a6e51ead286566a0740b52008b6 100755 GIT binary patch delta 274431 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 z z;;$JF9+8B=p#!)#t~kXk;-`M^08YJVa>R%aIp4ooDu*^VOKsV+!t)IZ!&m!$2M?=I zXN@u-raMc7B!WWywSHS@w9?YqdO^QK80$7)pK;Jk3bqDQyM2cwEctoOnhs5;9su>X zOBvAC;H>5sZ65J+x?QQW)fY&;Ri5^Ro2EV!C;i7Q!Y5PoUVibYlndE(Hfk~ox5?!BzPhkWBgCXuVrc-Xm5O07uaTb@n&y77M!9P+Rd(1+S!ydHZ z6LAXLO0OS-r7bL5LRedTKG6M-0zCR9h)MO1NK1baD-zy}p>XB)i&`^O_R?mXxlz%U z)lt#X4qM5RxEt~J#aY2B?^EYf#m+i!}vsjKF;cSU+PCvR!qA)~C_rt4j%4geY?#;Yh8s2V(%DSHRnz@?@yzM^aB> zKXpzifA)@(pvWAB>ti&@-Jfqe{vkzHe5oT$e~bg!p1ScIDqc%fJjKq(Xf}Pv?-s&1 zw~QRCqL-Ld^%9PV6c(qn!)uVsXaq+2Euq~LDLyZ{bAK;Pd?xjT;*OrM$%(I=Qgu6#lkuzydl@cVbiNKZf5jpFPJ-{r5BJ zK=LNFRkfK3FL{ZQ%Da@ZF!ed|51F~O%ZI&{&v9A$9{=N**#tQ<>|n}Ypf%;UYqgZO z$B-A&5K_|rNe#d2a$e)wQrs0wimlj4!Ov3ov7`MaepxtH$6rVt$cq(wSHhY1xKv!5 z)k`$>ZI#aWyLnF(@ZM!u4|5w8UM_a7<&JFFm%6kD+03fDRm_B?!*lP-~b7rXl@ z+T@=jlYFNvlV{h|JisBE}kezQH}cy?3bbAtxi-dz5X=)(*ncbLIH-X48*wrLscz^y+n^Dbdl6pkv*@}&y& z!UHvCw0Xh`Quy-H#$R}OqTZnU-~1kT;`yYybJU1Bkv^;cnDN1|E7~(2#4&Hr9=at} zyc!pNRO+~5H9qqmeK7`akLj~cbTG;lrx+iSn)1EUYyhoIv9qd~E3YXEpALI!YjoT? zJfTU|P-assXYUCCnZnOXVtqdl1K!va+rwTo0Fqmi-nP-P@)FgH7&o$NhRyR2SNwvq zm}OrI$6pG^h2Hzq45^IZmy?quj1(FM{U z33V8%ro9ZX5=KQHojq4zQcEi`tTIAr7C9REJs674aFYc2jkOCK%wHs(kTBiJeDR@& zeC8BFm`-G&rCXTkqYvyLjFz--+dr01g13kn7P3c_`h&X#vihPTHjIBu1y>l~AFyDY z$l?|oz4`Y;KDJ;+lJ&ag>jgh;$*AFeN~sh0TOzIByR2IN{f`Dq#tyDH7RzCbB^tor z9k-w4bG$W{Of;!)U%JMG7ezif;Nd6SJyEjIv{E(XNRgl9)xO10EJcdKEj59>qk4lv z!nQP=d4mgXhL;p?;F7N8W`jek_Uo1E2-V(G{j1@F6xPtEKcsbcshNFEFbIr=M9=5bs3hiC-G%%m`o_MEo z;72pkN@2Szo+o02^A?3mZ7h45Y|s{pM`JW_kt6k>=NH!TPMV|cA!l4j+S{k8{M@;= z2X4iVY_zZ^DNKuu&48V9rVpuk|J@Yc3q;8oTL`pbe97RnIY-Q_kz+BEd#vg2bDx-DdDi&+@2Kt3f4 z3woQ@pgGws9<4U<2`5(`zujWCNx3=u+b|lk!?9~ulcCtc1RKVcgm1YMW-^5_l1F2Q zg4TdJnOe!TCVty@+49NvSS8bjG`qPS-@Kp?o$#YAsB=nPp-zeN9ILEJ<2Q7c5-kQh zFv#T4Or6Ev^}4vuX7X?-ue^(G*_FavDI9oidjh}lINl?Cit)uJO8q$Xgv4ynUcT6I zkHr;yux}EV->87&h#hXw(-tWVqraX2!)%#+q75tP%P-S(M|`y?D8H0x@_mreLBqZR z4=2VK4Eeai{@%Q&rLgnceUJE86gX0?J#K>De#Ne^#tw%V7Nz?N!doy7P~eDrmg~J_ zht6x$>ySv^*(mJM_qdRRIx_(Z?HLEMW<*{i3VLOGrUe;%($NXdEW%q5ZnS&Ni(5l? z2OOy4&?0BvQF%Brt}xGmX-@i7J$waMllZ|^P(KyJp`9xZwqS$LVSZr_^%SPp5MJ!BoGDy{ zQMly#m$0C9bMGcN{6bxScHN|@k6Hf|GJhbCSP`cwBJQm^{3fsZTWKZ)m5KqP9h@Zt4+bQ=74+$tNuIL66T^Mh^dvW_>Cz$4eGJIWb+tG}! z+5^4I{oe-lg7DTxUWUb`w&0>gIq)64L9 z>@HkkQ@AH!c0Uls^G1RwPVke4IiDlsr0{FT^~EhKwSx*z zq?uT=dc{8wEZ`4M40;pZm4r81O05oES4~IU?cKeQFs2l}2lpy#mKSdM&%_VbHN`DY zELJOPg-Z+t?-er*vsfcTG?oNGeyG{or(@D;}tKP*(!Q8?*Q z*r%7hkm6Bequkn%o6^{q{O$6LM83_}P_}j|l9zo}N?@ZeV=bAT5&=uk;SuM!FOxv- z?dm_!w0T(Igl+G~gp>7O&WmVVJE-wzl(1wC-d`pQkKZV)Io<7^$)22{!4K0`=K8E3 z8uwa70H$8C{+OXw7;O5|aHIpSZCX;XJv&uM+bNWbyFG2Bt2Ll4|LKqFY`7EijHkmk z1&psKRVarGK8eDUcArAL13Hc?{cy@Crz4CGKzAL-oS0yeErRHej9m#O9nf=dQ*r+s z@7IqAuWM2GX8kODRRqnR?~iMa1}=J&zk)X!PGoFjAf_Ltv}>EAU~AiqoXEQYuJ_`4 zH2XWWW8%ehe7r$l#7667A*p|{7GeUifMNwZP{>Uw{Q9y8)8(dweS(nCVa7!pGr~`UFxsD;du~6Ucx?|w zX*iD8gV5U@T0G|P2l1>S7?bR`197-A;ay}3r(#yZ4adbi4rj(7^y~$}IHzY*VjN6S zH;}~Ey!yE@G$F2zbPkhu=dBw*T7z;3W>r0eOK=K{zw`3ph1PBZ=@z2h9P(VU)r}tNUr1xMT*n31o-jzDs;# zm1E)%P7;2rI!oWhZxG)Y=XiopZv7ZBqWR9VM94i zhhtE?CTS}*ZkS*aTbdR_w@FvB`mbO0+!8qFW;V2h1ZU< zmZ->eyX|}P3E=%fLhOxh$)uAhm(N+4O+>S&R0cVtFx20sRLd8XerqNd_Byf?g>U~* zc&*nKytZw{+#{>UD&6Te>Ml{wWWn|pX6~FRhK|7#N&VNDrhU^I8Gf_E#i4PrvD1a^ zBV0XFsQh(ex+yLJc1z*lm|`XLXoIw;_DB8%L)$P>M89hCLw?WJWgv?7TfFl;Pf=p# z{XXmiOF#@8aEm~v)#H%e-o~-9-36vcAkm7k%@{sazS3P#4R*@l>j>PxPk-H7(aE?6KBZSX?ERwqUZ=*eV?qfe72`d2nWm+L*AwtSuRMtR=ztI%DU5hhF<&?+ z#G*+c5`K#*64}oGZPrCT&z(*?iX+icD}K$?Qe6sy?2kkz60oobzMX_ygC9Ax1`jC- z!m}6(|2{ipp2_8L^J5`43KPGU$-jNgg;z?5S;%30YPvNFM?O<9X8`|tEJo}&V*RXJ zB%j@(ATAIa&4iF~p4%!-Q&WQ>n(-o^PrD~GrDEJb?TB~67hjt2V#)Pn{XKq9azn0( zVbtW)!k_l=A(d;p6@!ud^wL%_O;w7od`>EMVh;&XmcrpS`%26R-6vzZTp5epa(kv9@p5(BZ;BZV#C66y6GPht7BC_X*9vp^XgJdY(?zcB^EhS*X_ularDoZQ zOz{7BpD6?iv<)55OP7C?<~xm!jzW@g(i-Xq=k0tG}A|XudxvCMy3n- zCWZTtMh2UfLBWE_@g~HlW8}?5Dlfn@lqVbg}JRU;XKvZt_AXLzm zf#}E&jOb3NAqj+WMd+?h7h&QUH3%i!6fgEMg-=dyyriNi&CjB*-ym!b3TJw!?t-O* za6wM|wKd4(Y5mCgH*vq1tt~fvO$qw6?t^iF+8)dC%LH5+F&LBJDaWG{8eI|848_$t z{R!^&>w_6j^7r(%p~hf<4xV;K48e=Qq1L+2ybrG&!o-juws;I(jQ%8T;2jJJ^h;DU z$)yxJ!+~3~MKbPT`2``{ppXpc<88L+h}o8G{rsVh--gOzcp|#8ve&T>WvgFQ>xqz`HP_`Ye}C^9JOx7T#* zP9njItHKwwP&G1Ohhs{0c>}J~)>ORK7>oZQC#qY%HxsQ1ia+_nE(WjSX(q~zhP2LX zrjT<`n3V7^huUi*c^g=D$ZUUe=r!~35VdI}&SX>uSejWE*Lz_k+O@-wGsEG{NG4j= zI(1a)=(Ld|+g8V?F`lBv&k!FJjbbKRH})8=o-7pkR!2@`hVtJ#g_!HZ zq}3}bn8CzSHU__$9|>n(t2LxE{mAIX|SO#@@!w92O=^nA*+Fje)09#5H;^b=Rb^LK0Wx|`tfjEUt6 zw_$NjI|zKnw4k4?`7(}t2~87@jBmwanWiQyzKN?oW@;4hdS;LMN7JNCQ zZ2~2htTZ(#c{EcwN>c}G*1?sUH1!~7V^PU}v|$}NQyY#Z6pA!88A-7uq*?AR#h* zDY1dk!omiouLV~x&q%-(D(oXORl_s2(|UtY6~LQ>2UkoGWW_^Nn~ZH@KsOl>k#r8};P*0SqE|D#ZT zP^`|>t&m_@x)rIi2uR8+v8R>i{^Ux~eI=Gf(k5%MP!ta0pE9v7|5f=7cJ`6^a$C|= z=?wy#%e1B@FUWd=dy|%Dqa|0I!CEZy$1iK3H|E-M#3%yy5v!vNQF=QtZ9%?G^yfb(z^_5i%JywdM8=+-4{%n zm{wvk*{lp|USrl1vH{;28*C@{paXGj4xoL*1k>Iw^gl9)T~y-48#DK@Pdch9sJX0> zf&tF9v4&Ej1y?!=xV^RH4PHcjT`J@3Q&x>1Pw_DkYu ztJC14B7fXijR-=)8Yd`I$y!n@kLqGK*`~gF?IJwArpVf0J&?Ir4+Q_@_-9oemTlc* zEzBEbrGU7xsC8Q#MF(AB)}+i#zaXt&R^Eu5-1N~IQ`7Te{9YbWHcT0cTXz0cTv>7DDd$0mWZ|Lh zT;b1aVR%-q52vSjHD>+Ca^0c!S%@oq<>~GM?9tZFm% zi}GfrW}*qFc7xMZEh6FTTyp0>K%FNa!F$^(z+Vr zwv5K7By~sIW3`vAQA*Gb@jD2W6I-%|I8my|qI%#|^*x25xPLFiVwbn`f}HShS#@@) z`h^6vGuzlea$!Fw2s@*;hfh-7te|4PT4vUfQtT(MJ~dx`tR3h!PIrLLf8ulkz;okt zCmXBG{dra+Bt^ZkVAyWQZe>L`7xWUTJsaP1O6Pi%m-V}Tt$KK1& zuyA=Smd{99)S?B{Rt!*pl6+(Xp+(IT;dDJ3=Gl44YVbLtYm1dUrn*4QO>EPIbwk@d zqO;@Mif3yyu>Xjz(|@BRe5Z?r+S6JkEd5Rw`QLc|16Dha>IUHjpxTiWLt&~e+czyc z$B=r_4(q(sZ1G`X+AkgPSlJJDa{VjU%)l$Wkeqoty?5K{T2n{$+WG#1s*)TU*o z=H+P{e^Vg2N}~gIVrM+5MtI>Z;+UzHFnx)Jg?XJjum>rOv6D+|J6+n4E52 zuoSN5opF+7=Vpw_z`CHg?~*1tD%+zGYQ6c!9vN9M@!m3(q3+j6kw4Tg>WjBShkPsn zH=P`F*HLJVW+S=bFIMHb=zc&!J`b z)uH0u8UoQ}8kM0kA_jL?*d(=wUsFU=pgL~ zwWEf+ayDQX*kTSA$DyAMVV==wV#S9Bs|7V6U=d#Yb(GbKzc!rBt9Fmr5oM4dN-x1jA5GzQD!0nlntHDRQ{vNJQ=@@qds9#5j zAdlO_T6ow=rvux+eO(~#j#|z(&GXa7LrHwsI5frPkR9P+1+_a{pbtKtiS^bdCTJn< zT#OX@-cz%6M9nz_)7FZ~b`mf5@F<2DnRfRvk&1>+->y)OBujqiUt3~dl{ISy@{-=27f9Y0{ zL@bYiUnUue?~ne2SVeka?)k5@J9qo5Kcr|_*4_#3>f3)fLmQg;YrV&(r{~aG>u^<% zc(t25GnPVDV$3`6t6*CrT2V;)*Hwx|?z3h7+o zQ)82g$}QluZ!$W>+Ktsw13%}NXF7B>vZU_ogLb%jCf=zL*=(>T$b378tTS;iiO~d= zQ!3?ZsQDrWi%AWfli&+`suEckHarZ|*B=rv3~cIP0dr$j`0p;v5Sd6B!MTF7WIzUpQ zpLKb6EIxYfmf8*^>8n9`|z{_zw(wA4BKcYMp$_*z{cdX_eH>X$E%lbdist?$cSAIvl*MZexfGoFKAN zG-BkXk1}{-n+M!E6zpUpbnse^pyx?S?Kg zr+*aHk40n2hj4uhEi92evjF8Cb$|4+oQ7x@RxZcsLuF63i$S$9Qlv4|Wzc9+a~l(> zRd>{w7XH-BqWnY)%fKe`VYZ3>Y8V>L5F;0FAyws~<=^AnA;}|xz|sT_CgXS1pBO6c zbrazwyDnN$t_ib*hGl(Z?*Ek6d{tm#cCNFbE_Jww_07l{MNcT)%3#HGz65k{E_?B( z9lQgDhc~d2L|vhq)c#+@g~J7%{Y?@n;M4=HUHM&gAQZbUvx9}(-Q}?0j@k((s#?W_ z@FQqPXXk3^RJA^NS}YHbpC@IF!rXjJdj1G5v-9UP0ZUi(a|i9IR6MfpaF_9Xj;LG2 zparYo_9M0Cf0Hg$4s2-yuO?2l;ZI8OS#BzoDTnPhAT@JRI_D)u=Vnj9@0$&FbH!VJ zHx^kr)K||uX+40@-cy~Q@31&%c#L7J!4N3pLMQYNL~)AOXgqCc&MMr;4dw6g zQeUh68}ERYZqQ&ZwxMMZl)cG{fZns+BA{YgFHcB%9V{&$6ypwcD+l_}GkG8+wa7wa zo{^-%0swJQP-Bsd?*jkT*BQ!|#V8Dmr$y2dd@qu%%WXB*HuzIBjlbI!%Prjhg~heC z)%bwx`zif_AAOTF^&5&R0hSZ@Wh(5cdEOB`yB(VcUoq4-lSZ7iLH~Pi}}wy zXuWexKl%Wv2f~A)G6|JcW~s4?7@EKl3BNgF0|Q z(Mq@Z*uaAAKHH#X_EJkgarxjc5)E~LVLN=n{#E4qRjsh%at}XgxvNI$?~Q@E(NhSf z_AhOaR_PN46_dOy!i`b|$L5=Ux(1U>E-LZz2FGSh$iZ7D?pJN{npmJ#0yGYYJ_ga0QC@cc)IY=Cq1cc_GvGowXK_(+O!;czIx!l<2`iK_?G9w$Dn$>4wF6K-f#IJEZ75 zemo)snxh@)ggJZ|1PYVbz)Q-=<_tkQ2+qhBwR#29R!;K*5 z^vhOEB%p4QgmwKK`}#r(8E+l(KV&_bCP_x-2JO>ccr~iM;f`N>Z;tcL9_wKh{6FMG z*U8AJ+|%2F&d?Ql_;`dRO~Cu^TjQ+Y zZ5OmIUtf=SD11B-zopnc1ium#;g@|j zY1-2S%?`ZxJ;QH7*?B3zy}x@4hzlH#Y1r?Hw&1>~g}osufZi!2J-~}$*}X&+EVB2~ z@VCn4izYZhgN4SX>GiS{D%!Nb%df|Hnu&Gt8rGQV)gJP7gKH1)G}3s<7Izvi*&2Fk z?ICuK#+gg?jPH1eUIjToMRB04e2pfSUbWc3cuURT53|FvPjC+PAN9n7bC2<|-;^gR z&GSTj@M?H(+e75eG5n9qn8TQW{%0EbJ~47M-btdgLkGHtL5PPJUVzSN$-s_5?*5?E zdX0djA?{dK<#jN=JtrHcMTxWgpsu-BC#c)d5;wxEC~MIEkk+-_a$-9$1bO8Edm$nQ zza5?20~-EJ*U;<}FMWPYbAdx4<8=`C*ZBURecMAxxb;j8_re?Gd1-hLb0OTz5yDOe zyBdnfXxtw4n$}K`w9U;DD#OAZA#QPRd^yIxzZJY&k;cHndbNfvq&s;i|MpCu^wIx! zvsZkS5Cp5r`^tfBt@g4r`*B|MlJpatxsvPX+vMrDkXCw6{_q#OVB#4!yyvBNL^Y#& zIl$c*FRZPQ&{K`KQ>|stRiCI$=#9(qALkP|XPfdSD5~$Q*nVVxb@FF<- zR5;!e-q5u->*#V*hX<0^195ZL_Lsxjo4PSjH`Ln+!f)xa@yf!-9%?W7IzsI&T_Dt1 zb-^MYXVF)yZ|k~2lD!XJiLU@DyxJ5Xhoal~fakAUI91L~C#}N=FBPD{Qpnpe()O9= z?E=HE`AeZ-uD9Y}(lpF$JNw!}189`caKnpGzm1Rd@9F~J^d;pakcKuuHC%0eWA7xvn z`#J9%M#;}*lt@=6g!{XWipN0_&wM>6(hcoT#)o#jbeZARQ3IU*)PtI6sJr&!NP7Qo z*hzMOsnR7+gb~x#ATzkm&aE_(T-sNL6?D^eO|FXn$W1-AQ)Fzi(O2}rPJIE|P3E0O z4fpDBi;u!px{&13rQvjE8J_w_vQbMnM5+-o5Qgc)k9m_)j59o}!w3pWHCp9NJ!87O zwal30oO9m%$iuGh`<)&OeX`n1JOjWk*Cb%!-mCYa8`exlPWxl&UQ|4LI^w(MxaSE!w3+ujejPY4IwOIq;S0A;BtN8wy z2X)Kv4`0-@_9`L5L-ip>#%J*N6<#=$Eu(FZXb^tTtN|rWNt~aI8~JC`!ODvw_HJ!J z9#;1*oFne@Q6nM<=Ljksi~elBN(l2h1-af~OMXwI z;Op0~CX@dgDlueth#niJ#IX~->oEL+-SM+j!rCcaFVRv}J5-zEGGja`AJGD9Iuk~K zp3e+Yae4ieVU*Jo6OB6tn@ADjQccS3H;L%FT%*n@9sC97d|@IY*J$oHPc)wA$j?{4 z%kZE15wX{)C+lZw#95XP9!e|Jrl+iMUk81uhj%*PnBY+yC2cdxWwz}@1v*GsAQUq%b9 zD=;Qg`R5Z5_H8q)WeEMh?rO^&ToZHK<8drj(O1{+2z9sQ((8{d4exrWz_`*KgV)$_9>D5gmW^<}39QFzks zHIsq<$9A+I5oI$PH%OHA<;lEqKK=FB08_ z>`iVQ64hQdFjOt#chErK)xAmmVH{+N(&1j<5Y*=2P*&*1m7`t}IRYFvFzn5*w zv~}$pGZ2ut^@Lzi_Isj*PH)0Fr1L}AhPvO;Cj|DpFPg>jPsbtZ?N2y#v_2q2BJYK@ z+A1JXk99A-c0Fu9|JM4*Z7)-*FKiLKudBDsfC*=s(JWS%pA(Li7?)DVv#|hIKb{L( zyjjLzKgUQW<Ap~Q|kjl=HdOv7|hTl!jZpjG=UBiGDmx zdT|N~Z!54aQUxV-)(R@B-i|rS?S9=~#Njw|xsXaRUeGR_vnKa0K|$kvaW3Ejxq8N} zK>NSl=;y`0CDz|MK_@5qLZec_uGu$pXDhmHnq|C60w$@N3Zro}(*Zu6Z=6on3M|k2 zWb*^tODh3!Za*`)KBuoRPT+5e8l3H@u;qm+8GTY=M8wvicrRL7VT=eXEQGJ1Z1wd0Z%5{0NSumYn)JiH(t73Rz_W)A!aKRa~P=%VS!$pt>viofL| zIIDVjoL|@SxyCi4Mpz@|P&MKj%^UNfcMe!-UL)v3KDrgMq8|&q+I-CHpBlR9=6xl(7vMF5Nq|V zrC9oX8<$6uat%^ySnK3W@~{aKWQ|kNANFCyof@T|*hc<{s8X^`-u`K22sM6- zUC_A5sHEP7MmTUjHY(fq#E555(f2cw{#RK$LzYVrl>A&e+}u4K#_1#MF@CP-oNR>P zs5I8mF|#g$4%Zk%&!z7W2kaHABJFK4zLfH3{B!aNqhHtB#YT(7LtmbL5@zeb?_p4Q z`OjM4_D4YY*;9~bTX}AMXg`;q*|SuAA$%7nZyO>kdjt}v>o=@epO*v3iUtT2X( zTL{c{m4bi!bApCnbZn8x@jU^5WMv%`d9ji$%MrhPHE>pU<7Kg?*cF4F3cvHTKI~IG zb~ZB=)C&3i_cOtLE1T)kQBLcYT>)}-jFN6Iu=vpPiP;EPUo9liflb&I%Zml6Gs3Z8 zn?azfU&OS8;V`iM)H1~PtTqNn`Os0@@mv@-=cIezm=R2WTy1>W)ou_1$k;zInLAa;?mi!A$eG1-B%b9(SL?4 z47t*HD_yr-C-b%kI#B+V##t1563Vnt)imMH}RbnX4K{picpLJCzC zYrQG&k1+qP|F|xmI;0acqzu{%37)aQoBk@D;7gICrvmtLopHW%7OZ^?!MJ-ZhQO}R z*BJ{(o!uz6AHn%#I33}k4+fE$*uRioBF*-qX&a2){Uv4cFoh(hQ+;WiyInM9kTcUz zVzM-99voLmGhid@f{hEZh`g~)PiDCg&VvL!yAfi%{J2MXR4vKy=ZnqxBG;OG4kKN} zdYQhe{SkOei{nBm`DFumI?sprTff;Z`2xG4D?hdw!fWyT>@aI`!DVotG3iGgWzd*^ zVs{)e+IAa4Fp`S5{3?W?D7F0Q*tn%QJ~DM$Ta+F`yYi=l3a8b$O1tF0F&6)yOmh=lTyhR2(;6!@0n~9cHnRN^W7^q`$Im2lJh-~fMObj1YU7J> zVP~Nfv~9p~7IqRNU#HwU(%;e#1uAo3m7r~l08>)bylbt>dkPV-aB2ti`G8=yJ@mM`YvDp{xk~U9)5cv}KFq|CXl;TmBV1I;0?)bVfulq|z741TczPE!bgn-hIW1(` z>*-J(+qOfBa^nN6D>l_Ja5tPlOm(!<-=`s+$Jt}q(et|Kr9`zqMP6^L(+%l+Chn|e z9x3EU82e&D}Vb@4R}0F}+{!#P{zQmiNwqWx?)NP3~hpmxYI2I;iWX8;yS)MR!ca0pssC z$N3Lvx`aoX1$Xs7X(5${hO$E<(C5BYNW8wqh#b(FM#bP}$!O}hJ3fG#%Z$cfv!#x1e>N65xI-8v zVb0T0!!5?ZF6}MGhow$==+W5Z>7?V>kNTULY{v^%i;_d7 zbWqhl#HPCSdF(2aFF^>X{hAjw95BNw_?XexG?-nHnTPB)#jcmTjS|UuX^r+-W2&dt zboo7JJUa4*#16X+gf`%OA2%B}1h7+10lQZM!h?fVd>;-Ec3jL{`zu>bomx9IpTL1l3ZS?l*P*Lxm=4C%6hqFl$s z3#Qqx)kj%leqRdxto#mjV0#FB&x21!o~h@I#pd7%JeA!(K`kJGsTxDQ=0bqo{FEr~ zH%o)uXDNf)V^h@n;3KOf@=@&92&ZSjXjaAt$EP5$ddl-&6nFw5>}QdJ_RCDsI)5C1 zSML!NDwlyhW6YT&B#aiSX80-Wep;p|knf4O5_;w`eSf>R!{SMuC*sCY{`(h&xx}_& zA;i;lr()$kg-Azb61ACjd&8rxyU_@g^CVzH+^4Px3CSj}8%E@a=dTwlh}LeI6#HwKz-P$Vcv?M5<1^B!6*O9t=INcE zXIA|$7qSeel+9BY*wPWt(orQ1v@dW8e2V|oD!_kCzLuXpEBTu8%PoTcX3^SDD<}bq zuIq$lKS!z-j4D}2k~hZxw@+9P^7NL_R4 zp)=cX#Ahcj4${n~oGWPaNaoyVl<@1_#7%n+pVgc*?Rih*{l8<%ohK!-pQK|z;4YGm z{~W2L8_nMOwH$!Xkax+Rrq58P5+$0<4l*7NH2?o;kmqUUStTz{Mu;VwZD&Bvk3`ZD zY(fDr(dPNkSCQv{`SQygxX+kx@pM$K@gMP|lWE3zdguRU+W^)`KHEa1vzb|e&$%<% z49;rONxfK+bUbp*uTZml+FKLgX%-DC?qr&zVBU@YC-69K*su-a){dkCN!aLudhzsY zXTIRSN4m#ady)&lSaL_;lC#g_|Bng0@*iOY_x~*-BH zXy@<|6g;?6;(>S)E7zb+u42gKa8k1=B)U&b{K@G9KIxn*+&XN_K|bG3Zg)?|h=y}u z7aNx-q6+0gtux|%j0+RFq>OgomG~>%#n?p1ENgO|2hAgwCl!O1;G87?8wJWBGcdJ# zGLV2=#R_9`I@>9@fc9m>@9^Jk)AgXjV+sbG!)6xnzh)ofhB6s_ak|KdE(p~R3dm|x zthSyk9z&fmlYn*cZe}d~kTsKUZN8J7Bw=j&(e3{%l8@$l+)34X3Va%Yx#x5qJnOwm z_g-wM!k%rz_95D@$c;$k03-HFI}*qlE{^?Kr;y=q^o!4GcrP}26wsCreI1MVwfACU zM`^PtEjT|^CYDSGi)W^|KHwi!>iA4jE?_Kqo-1L{9!*wVzX|nG6=UN&rLFY@kMeb-WMzE&hb?Sx;?8OujPy zyXt({qO=bn?C7D%h!=6D5)KLc)L(5uXkSnYqCFaTy-ar8e!ENEIs7iq3>8@H7C>P$ zL*M^cJ!0LSsGdMaE?XTqL;wYk=5g!a0IoFh{$G;;Uk^|O6Me)(y$KTy?l@7tBn7q#*?ax`6?TY-&A9$ z0do4;x?<06b*X?t*}|C`M?4cg=ru)qb6&(MQz|KcP=$Gz0(`0RhlZE{wr8BfpMc>% zvu=aTfFWNvn@IqmvcKebQR|poFG~JeCAZFOWD&sKc{98e+L~t2@6@cWX)3C>?rWF= zx-Jh?H2wTmu2Ld{)_kM7@2mow{v)I9XK!uGzynTyJ)u&@)jGtAYtSbX2SorbTwdD* zphicw$B+Z(vitGXJLC()8tD<8AD!j^mql&kL}gp2FO%)I-y>4o*&ZtwU;OXcWYfBv zOgcw{n2;Fdrw| zZ~HFnD;F>P2mAjV#V{CVL0-4K$`lV6FVBKl&K4gYqqa^%sE=c0sK*zK3!j!$A^;qT zS3|C>pJyo+QELJ+e%k($1HA61#u%&}{#ih$9w2J!tRr-TP4%;5 z*f^8DiUB6~XQ$=t8w`oLKSixb%W*$|m0B|a<(zUeXfIlC2GkLIcmUYtd@9!hsh|@R2t8qnC0}ezEVex)fHZ3)#+oM+#Vc+`F(w*nsyoVf@U^z^*vF2uv?awd0+<4k~sSDXO>OsWZ56 z7qd0J-)@NZSOIsl69WjgFIoGM+aVbl#fZIXwC^!Yz%xPT&Od!f3ZRi{n`&Abnw*S7 zu8^`0jvpK21GN>XL;C~MfABcaW*Di6#w)9>)hrWLy^o`%-0s|9!0!JWXlUb{&X!`~!jJ<^wdTBQo}wwEEMZ8EsI zE`0CiQQ~vejVb`nw;95?CgS{-9c8ZDf4zdV^#E|Ix)$6O{PA19D)OhEJ?NOW*+|h& zU8@c6s%|q>jpC`2JS!1MjxluPdIRvc9hfk35jSg^6En+kg{4Q@pg!v#K}J&IXzceK z%l66}3{hbolexvbd5#VJmm3UEjFA0h#T|wu3aAAw0NnxTp5=F71bXf;#L@IU_~%dC z7-Z!bus3K4m?2N>#=?3h8{7`oG1yPLZZ?FvPKw1BV!(;WXWjxZ^^W{`*hH5X2hrbIqi>&}iKEuP>0+&o4^3eV2ca6NwXx?? z`1jr|0AgBx7V@3YJrk()ZdJ6kF=Ck{Nkq%(R7~=t-tEOw`thj+KK!fgp8$KkG+UE0 zNHO^-%gvzVfQ)@NTNA~;A3?oeWkyo<&4x7UtOV;1uOf%??70;^|H?LfA$31e5J!zO zN)`0498IRJ4=&mSIA;uCAdTOq52Yu!O%J5h=JnX*Z^QE2dzV2@DPuLk)U;2nZND31 zzjm%(PrADe5!UFdF9*!p!!Lk)qxBA5FughfxiJUsz~^GW2ET2!6)Jybf#cAy z2*{FqtcGZwblCc$#h0G28j!;3THk?k?h7uD!|-S(!Zy%h$aLUq0Z|{2Q%JkZSJ1m1 zhFH?vWdcC;4eJ5Mwa+k(3jT!Y&k^AG$sFPOKLD>q(>ui}R&FUpgb&`NEMq z4H;q%cJJ5vFzbbiJVZj|-DU8WjG}R5Vb*WB3k%r32rN|fxd9MQkRmaIbS@Q) zN(-TGHkPSl!N=>?o6gY(8R=aZeLSa>G*i+ZEZs+ci$z?$2N=@VJvtqed$(2=hV2l8 zZ)dR*d8;PVt9hC*xp*W^q^dkkWF$6gy8+(5X>&XfYTd1mrh9(_DwXtcnlQ?!%8#PU zCTPM(nX~ColsYuirikD}PTHY?v=depQBe@7jiQA{nDy$GRJ4HGWle3pE%6YKndsm? zbtIUl8SPsw*KJTm@m(jpESUO0G(a7{*UO#IVl3ZV<(BowkQE!s`Ik%}t)%;{Y9nX0 zY?D>0=&{=kxpG@QDDYN&l1%(Thib4Y%Wu^O(X_n=VIX}-9_F#N)}XI5!9LDdhC^p_ zW*SE$fg&p`q3+j9!|CDGW1yLhQ_Eu5URb%15fD|0d?oyE7Fv=^HMyEd$_~S$;EfMt z0}(>eOD9i0BT4s`TZc#_TV(k8= zQ{NMzWNMgW#L?8FVPkw~NvFp_+C@E*PqO|eY z$iR#RS+2+4XXnTQo&05m-jp&OECDk&>5@1M-k!cy5KGfF(z7AUs{Vd4HbEO%7HFS0 zn*B(*d$E+Fi&|9eH>|ffN}5V{&X%ln`h<+(aA)xwe>v)rq|Btb7bVb!vM1RcghsB_gkn4eDZ#gsPU)PnV^x| zl`;+h)|ajGqhq6h63rj(n~6s7=d4SB7TGWw4n^?MsA!`Xa?h2eSd&i|W6~adYI+oP z--vxk{fNPP(r{V1YOy3-b`x=(Fzuc1G|>)PF2iUhimUE0z>$0hcn4okhiEX_I)-)^ zEk^SF@s(0*=ZqX^bKn1@3XHS&8ZXTuZEU~9?Td-0XsY_6f?*)_|6AdjU(D|gNp=#z z9Hh=&i1vrq=R0!6$6C9={0C~TgjLy89omzm2 z(6}hJlKQ3r2EFl?aZ9MYsAf5JA4S;PmV5F8Aek~?TC0xLxR`djub5IvjaBe0c2qQ! zQF-t@jcCES^+`+Ud9~Xd@4@jWf6Ao1fq)Vsov03W#&JD$R@78md(`m~Z|Z0$3ENv; z45;ATs#3sY!Ct4J&s~7uHb%dsnPXB=YBd~L^Hx+-Lqo&rmji9KC&}5S)k}=mUPe6+o=t6+=j}>*> zXF0*vj`Z~~uPW0j&MbS^7dbEmk1Y)(O%&wnt6${ksN+%Kx8(28=TXW})6kA<^aZ4S zXL1M~_%dfBef`f81HB$KH=d41YpnGBX)vkvb%Ism>FOy-3bvJk=#%}=y!WT^_-v;P z+_-JeseHjqpAHXl$HNP-PREw|QjZ2Se4F>}2%*#eGaI@G+sK@29H%c8eOIEHL47Zz z`BCG-Y;0Dg8iRAdW-Tg-puBGkLB3eTP|NCC5bBXqhGw*#fCk)Gs!@2gU}R|FPcQ={ zmTB^6!cuVOT{H)qM|~-dLc34L>FA9z%@y?hY>kCF^B3c=I$M)$t*)4Xh0;2kZDrYG z!IP0T#hbY)vSoX6J`kwGS_sXskH$gB-HER^`{8->3kd@c8(yKUZi* zNoa3-jm+9RaRSDYp_jP8zA(nr;h26X$lMr4uP%eZuC1ZOFz{r=hGGbja+*Ol3&&8; zen{A(S*U)_M|pnMWxE*#WRyyiNEd7>2%&~pOtU4p7)}?fH2Gwe&Xm%tt4gKxyb2<> zeCZtM>qSsA9*PAiPCzMM0TvkK^KbH{wEE*b1tqIB8nT{**%yyk(g)K&maVH_G8vq< z1x?Etd^qQggdTF}&gHRmP_3DS?HWfyZ7g>5a(`?V7shI)IE#)Mq-Y9yAR~l+h}HPX zZII-2K&_d=G!!k}s?PVNts2z-gO4i0>6S~?QPwXL(s20cJPzakE$Vzfb{h)Cm6-E; zZU+u@wSK0&JsbzH?N_26?`xo9oz`HuFH2E{Qj%7aE*f!GYB6E#ZTAJ?oxxYL4C-%D zJ?Gi2ZK>tskj)9su^q$!`qm`0$GbGHYw&EJ?7n zZ`CG9pV0k=_`Q8)5@o2TqB(>OGw0pC-!L2GMIDdfOplc%?>hRZ;joOJET1;cA^Z{N z@-<*#TA!#M-#^6VnU``98r%lm4Tk#wX5_!l1Dm&A(OA2rZdqL|=R9x!Au)`4uZ72i zBZu&SGv!}aLH_Jx7F=eh*H)E*+4_;G8Ww=m{+%k#r=h;NrLeYT$qLb){<{O%?YI6j zGfAj$ExOrG7U&Fz!Xj=a-5ZJEk~gUI;71<%1uCCV4t9m##Eui(%dwS?qn+z@npIsc zi0prPoje3+J;(N&)L~Wr_?U10nweaubf;@;$fO83nMQE-gaek?FLq1#0)e2$%a!y zcW#&yOFeg)W#P7Q=8Xc1k$u=WZ zKDMWVw&VN!PR9ZW-hX=+!)RqLR?rbCth{Tt17W#|5s#Fwh6U~Ltm!^JSW#*vYOC|J{-B=@L6rKL4h*(0#&WJk zFX{-GDYY)ktdqdiba^WH5_f1aCACz&e#!_o<-9#KS zl&_dn^y-VV!nx!cjTX?_rFsAD!Ql64%mLG&{WvXsFqAc{USG>cz`gfuRzIyvt`me7 z!`>2&Z}h=!z$5>Al-jSzy`NCNtAS5sw&OAj?=PzXKc6VUIJdl84~w=w_ekO(QB1-z z!|RB0=$Y$;@T3-uuv>jVE6T1pC2Rjz{yVZw3tbJ4{TtwVk2l1*Z@BlJNVmzwey~eB zYfa)(TK!FK4rxcJ{r2nv0$t8KfQ#IF{VW+>lWQVTu6LBQ0DyDqavy3u6$_2w?btE2 zw+Wn-o!3@{xai8I!_<{+rn-&pbEv<%u$lIMnroz8ALUBT?oXPSfy{}&$D3h`N~M%f zRgwN~^N=%oD%@t{p>NdG-;()9ZES99<_-7RVNL6JW~#R}Rh=P` zd#;1-YIB$m7Dg>!78G>f(r{`VXAH_f)Fn)i4Tuy)cVGqDBZr-{+GCqMm8Z=x21N`| zp7qe?E5YfMdIXG0+V`?>+VICw(K^baw7yd^3t^YN1tuIFvn)PAIXRGnj(Q~JuBP2y zjB%)J4E##@scN~D_a$fYw07KF2yM8hY^t}E%L#s!xxJ#+*lph~aiuQ7g9FqP`i;|; z?`*kqRSfXnfbBCe51~&uGw*7D#+JDRZw*jG&n+9eM+R(JVAnUJE#;EoOubM#C9^o@ zZ5@3swfIZS=VcbU7rj}U8gIVPR`OZR$3W_h%nfFAQ&i?<3lcsa2QjS(x#ch5**8KWRujb!3lJ^ z!m|ArYW1XZYc)iViPE004~>Lz!=qGoU5mV#<=3Z3+b3B9>8QU2hZ+{u`1ib0CB1i@ zSx0S?EHWw$u#Erzs`&;=Ew#X!8ffwMVjBVNE;NPHj%B$4wBdTepKdNR;V(rl24UqUP~?5|vE8?EEkX zsi>W|=9!}Dx^PR9?RV<6LKyXgTk>qb_vf3!tUbH4V4~@K*6gj&ZrY^P*;V`fw+Z3x z4*`oEw^Wp>1pIMp83fu?MMF3}SY`?GVjp2ai6ML6&6Y$cTN;)&XzLrA*3_)7yR4G_JV=SKD!y{ zT5~KQ`PlJ)b_;cfWbohT|sbK z6ZBfDeriTMGkE#;!`pszntGjts=qUN(K{Qpv6OgK%Q+y}d|#Nark)hzB+9MS$57wD z;0MX|E|$~7H_XBoI!awE#*6;*;K0!C;I8}=a>cv9gG1iQSlsRI2-TrRU3q`;QE?1wW8)}kCdXc4{i^qww0xTJsG85E7qs*YlLL3 zy-JAiU`|IfeAG##tytwlH;o1WI%iPsU7|NDYMPeY3-3?L?B{Y%jM;H;GmpkC7glfi zQ9&Q%^0Y{HEmpJhZH*6|?wl23%}dIYfDOP)@7I3+To`}-%wwrR8;@wsq%tpRya%Ze z4=He7XEaFdejpBb%uAh2mXJz++OcgR0)f2{^H4YsOnO(d=V>_qB5rBYivMopA}L@#(QyUnYxk{fr2 zXBF@OesDcS;G zT8t%3&3=@QCSdu zm4nhdqAlJ`Bk=3$Rax>S{E*<;$h&QfpPpIeOHb<2FPxR})MkxLQc9^>%T8i{N0-)KT+pZyt5h;YI7gl!~- zJq>)}_D8_y#+D`@i8vEr!vP<0`=9HBsat1JC~W~Lj-x#(TFh$tP-jVqaQP;79!H1J zq3w*33UijUj~1_t;4dngo$B2j@!mJ%K^%kF z0)&`m8hyf=wK~KQ)UR8;T5B}gH9;z1nj_1?rTkTZe6o(WjN{)6?DswDjMTowEX7i{44%t;1*YSJ2?k*_I~Y}E zK^^=o%MyiC&t{x)I&>BlHz3$&V+_s8wg{ePqZb{svVfZJRnm}tJ{=b6#fm~olFNkb zczg!Jh}eWYZGt|?0xsyaY|9wlN5TDySd@C5&Vs)4Ie_ zm7Lc&D(fuy7Kv)_D>D(rs@V$!9mtcsup;}J+ePD^O09jW3Dj|w!K;0tPD;8PkzmMW zLT{EitiOuw=p&aZ3geHuIqhxMHD*29|xb&n9$<6 z&{jXU00dhX%0yI2TARC4)xL3uoaS#g$8#Y{|2MeKjvmR#oYUaCgwmY9!PV_VPikyTUS&<(Rj! zQBEIQ@*?S#n~<5^v)e4S&ig~YL`jV)$x`~m9`mL_bZ)fCLQC7tLA67>$oy2O|E=foL%a@KAERYNm(q3{1Pl%y#S z8V?N|%R-;rY+mX-?F?z+O{C7t^9mdu@L;<1(lH@O@&K$`_q?(GbYy=5kab$Y>7M`i zC6UzkwQ4N2MF6G=@NaT}!3C4ohOr5IZV>{gNt&*Kv(zx3@+^1nAK>8EcEzFiO8Yj|Q5HGZO+ zMycPbW?1{a0ctA+%#XE!{dQF3AlL55jk&lw0Q#UOz8WantL7w7`Ew>6ZSrbBjPe;y z`@q23rpAWVzzJDuho1!CdN6}S?SFkFbRsJQG{M&B$EHXWR^{7QU=^J;esFmh(w9E1 zMugnz&V~T%%XM`UIV|V7`A95^`oM6xn6BTkMF6Go*iv9Il+5ubd>&b{Z>MlayA|qOs2eiM5cl$^kNPQpaVI6(}((1v^ zhE%#L5E=TNA86#kVngj!X{>1iH%uEQVaJL!DfGC)vi3?fUuL(JSEc4I{ce` z{GBgp^YUohw~a9@9dzv%aZ@}84!FavT3d}1v2d!Ng1A4nGkpj+W6m0%{~6NX$`TN} z(0V)OPij}aiVh^MDy95@hVjVYUNx3_U(JVq>XKDij5(ktzzeZ9Y!xwTx--bXcB~4`=|j8Meqt_TyG4Z`By>MwOl2HdW>grPU=^$ zMcN0S)LTyo77Dmp@as3THMANR`%mvzug21KOm9lP8uLEz8a&4Xb}-3Sy1D{F3jW6hFPwM%(A zX-&OIT)_4`%%4f?>Q*nUWw8d_%4!! zw}-~U;@_B_n?Ty*nNk+iq~-%+>m`>?6|W2;o5bYd-x=iLo=2J_w~mVpz}j;eaA*?~ zLwy(+6A%FFnytG(O2y8D++xH#9WhGjN()lWdZ(|7A;nZgkCnZ$#s`OkWm0l1SQXkr4~?rmET+}41CQZS_Df$IaQD98eBPPU&`^bR^M2F9pcd&)#28@wK)={ zwFg@Zpz&YInN6?Fk5yaCo1sC`)|UVq!e0nzXD_^Uu)zMpGgJWVi=ia3zl{wBIz`)Ur9fWOpQ|g*F71ph;-BesxU%ROk z;e^dt;55$>9<2*ngj5CMWfCuVpCK`im@mY2C zbuD!~keGt@$AwVJ<2T72>)G2TL|xDahND}wU%Mup`lQ%Z8vmLzoG@5Byf@U%r?Uc? z?jY|M21}FW>L)1mL4?Gda~Q0ac6k>=f2m7{3GcBQfl{UF2&6~j#=<$?52 z7t31m@GWa>Z{^@XtOtQd(NLoEVxBHK^p-B1?tevxG|LnFl-45&S_=u!ZmXSeyb!0Y!exf{SFq?oHNq(KkoAd~h|Xs9-1N3?EOi`>jiiqMfgL~aBEYI1Xhlvs zt4i0DH+3135mln?ktHSyxJL)A`YoNs+h&d#ZdEo?=b?I3`Ch!=_^%9qQr6`FF6DW^ zmAn$X&bdpc*jNMr;UT5u2Vzo4Q?~-;V}3NY&y}%W%TI+pa;-=CS!D zksRh96aq_Yr`OakU0vG*&amapRP&?CbUug$7>Pi?#SG*p8{2>{9UF%z__mudV}{Q* zz@Npb>p|#kNB1pApw#aY0eEx_>8D&kw2g@c!ci*HYW#km8cl(T06^)~!VlA#Ut(ea zc5?dWua~Ik*rM0~24#nw^3MEt>S(O3H#uI+Tvga}7{YMYqV$NrNFvTs1` zm}q^VSYPfYWb^2Ug(Zp9d$?H1%m-7+`c#wtoKj_+Od(cn&s2$uPOlf_46>G0Ni>}{ ziU`F8^$qnK)-3VO8{N0;2U@e{VXOXN3tUPl)>?HUJP7t(0w z!Fq45%MAqcy{$F|YHM+_KP`Jh(9<=&3Bc0$8@hRG5ddv@TGNw#J2kYU7p8372y~(m z7Hk7}w)La{#KS3-IKcfm#)sZ3LYKuBqof0ykQP;5jK)5)$ zAoYb9U|qUj=gp=?4gb&7C$Um|BCOW;;SIyg6+Kram2N)kS(i-LQe=lqzwe>}V|l+TsV0z1H_Iy{eys zRq4p&Jeci&uai;o=RyVr9u_7uLu|MR-MaU%fczhZ`1kNXfFiHmUl&DtmmpKjiSCL= zpfbHLjG_GZFGBHeFYudb z!Rb_tTo|GNC%6&6A}%Vsu(XX%{fBkH0&POLpoMNqE7^2jITrcaY z51G00_6w#!y4<1jqsn&$Up^lm`V>Rt|1SF9F$<{tT_K#`40-~9TzJ%v4t*v>I%2?f z0>g0Edl zGGI$FR7PdCLCVwg_K$}RUY8c9j&d!<1v?kPm%AlKO{DV^?g&TRZ|HugJ^xHECXCr| z;68y7?*;RE*?1hCdwyr|9`C-lxU#w+nV?F9ItRiLwj8h$F?$CC0LK40672}cUIK5Z zgE8xI&>Z+Z0Sx_@it@av?jWqWb9)67*|SDt=+)l>sVDCatZe5d^y4ECn|ycbou230 z{?W8V+GX3Oax9#K;Xk!X)tFTS@j?Kn_=A6~M8!Xbl&)?Ba`chIuxqEP3qaKJ4*~4C z4#BGY7)J6{{}94O#tDwb-#bnn8pIHw(b<@;wrMM}UWEJ}=Zs!5D4ZlFRQ+W}I7NJj z6;*u+?Elpt3W8NBluN>`+O5Sfn%(=MklLPsJgSbD%(0@ZyX9jcfnQRtK}Lb{S?H;4 zCxND4J!QVou0ZLH4RNyee+iZBA#2CG%mXL6@*#z3H}(1p~pq04(j3asHF%tY~VuxV)jRz6HK0_CI#80{;^CdaQQdwR@r2 z`PD{PV0%81@;*WS@Uf4DIO^6L;wk?V0hsR$oVaHre3)CVzf2+riCd0UE>=JzZsbU;pz2;6iT`WTk=JXph)?t(V(@dAAq;6$VKpMl_8_OFUHFY zj!0N~E`dk;&9#Ov`(2VY8*Xx5;yP;1rH1(~Juz$?>O(IUsHk(VPQ{H!szj~0|J1`y zfWKjNw{1N5lO(}vm5mI(bw&nQe}1f!QdtM)(oe<7q1M`no|3kA=+;u-{_UV1dfgOB zUs_ip<6nSE)3Il|Q4B6;Irh{S3}AKOzQGMM4{+75ykWA4%oL4Rzz38!pMgzpZ&1*d z`M~+kU#Exe`dK}G-lq$qTYU|{8!wpvjY(dZNk=}I?oF$#Iv;+ctA3x3Mp@X-GOUfw zM17CM=ti!2{?8v`l$3fCGRGcxUN_f=C3A2GCl$!94Wpmx5%a+HOH8k;o#rZH<|+yZ zMbKRN!|DEX@^0PdBl@=8cs0Xmw}RS>-f=gfm9HI-c%J(WFfF{TOR_5O$ppB-D{t$- zD`2x;rASPS{5>|a9t=%fMPWzB+U90BVNAjr?u21>R2Dhy{N=Kl9-kT)r%lwd*BLcA zvq`b%7sC?_$PaV}lQXm}V-o13?$tGM!a#vNJ?OSy3o@X6qvnJn%A?tgB1_o}C_;jT_rPBhvirHF!_o5CKn-xpFXr{gt(JLz^Yp81UN}qP= zO;~(S=%#jc{z+Fi8ZP!*fwg#_8sUDyYFNl@NWdntv!F*)d8l494A_#uy=h}S#62mz zOKk+>jQl)a?)Y(1wO%IP`V~MML<`KPTw4P|9ua1?1t%*fD4xZx_pmu>w?eaVx6#_; zEff1W6?nWoe#k0gKzQz`-qX(bf;g8k75abLl~NnGo!Ga?!)T_WU5H{jbR+cEFK>jM zft`xH*dw&>L#Tg2dxRLH%TcKR`!2WW_%1;;+x2AB|6$jAY!07U(SAYdY#}vs3hyBv zcL_-6kK5B1+~bwR>DoIL=h;iMfVOmwGgX0MawIG8+3M$Z0W;Ru`N*$-*6N3zwH(=z zw*K2Bqbh$ycKqMG9ekP(Z{FH{;W+dCZ5|X2n}ajmjaw(X{iG_0Qp1+Qz z%2SmU-n9H_kZ^u*JPolx?jigmQ2=2jdPfyZpS%Gklx0?RB&AwrAUd+njQH8VX$s>9 z+eK@!^)vkiN$Y$Y1GCJxab8ri0lJ-Lp9b3VZ0L5cTr>p;8hTKAH2z_6w6$#pV+Jq( zn>ohXaikDnzm;zk2GL82YS?!7gQaB0+nSj6K43aJtyI@#saa?$0Q?be;ZN@uB`fK# ziSQ>4^@5fAHF-@w=3t<2D19-J2c)-sfdIOqPGNMq2Rj)b2ExcoYZILq|$EsYI z11rHZe+B6O0I|xp5E)L!k*YwL3BdIIC?Zs?kru9Qs1YMw{3-zaQqv?}K)}m-8UOSA z#hg6w-Ygq?`js+dpYH9=iJ(Rqq6F-=zq1P|DW~qd8EU6n(+$ANwdJkyDm{IvRDW|e z+}4c0BZ8bw_}w;h7_AD1r|x&XIS3^<_jX)lt#6zHvOMma9k3C6_(3Zyl}=jK;xa>nkyy6PPcg2w4DRP;6>2Ky8(IUbTa*Rr=XT{JI6q=vk~OZ zNnRt>#M6%_WBt>Z4UH>ICO4!3cEIVch_P!hY9E*3*n0A0tfFLqcb&1J{Y!A(VVc>` zs#029)yDoGbG^q}bp4JncSAh6sem5i9pDLcAl!K-F8OstK>T)0BCNY$#ynk^1rS$T z@Pa}NS=g0a3~+*lInnKJWrDJWg*o*W)d0VUC8CI&ODBsbkTMm_w_5MD6X}^3;7FA3 zN{^&_bg>$??$YS-6=fkT>cEe2yVh|&uJehnXY_Ft%hs>KH4I^dAqRV}h(Q?36PJWj z)zg{?A3KLiJyk!g3HRdUDg7c99B*jF*iL39u)pRsEe!f*#Jq+&PHts?Z@u`Nj;BLw z@)Y~fx_z9_$YLLMT{TFW{{SU|A9gfNG2GCK^224K%IIh748%N$z0dh)DF3!}S%ga;G*-d$Z%Wd)jHp2S4g*f zMvQx?1^^=q;XD4@M(w%9Ys5I5R5%*ufx6TY3qfDj3w{-L)HWWM$ z9EK)vY>9Cj?Ez{px&1fR(?8g0f#+^0J>aGofe`r07t75S(@u4j9f>OpA6lbPh zY{ylX)Qf&ttw{awvZ@-hpiIB}0*tMi`!y!p@2uCr?!I}iW{mCk%(`qJ#2g@`q~OCT z0LQr>Nl_DCDD$`7-k1$;*F$?X)z&~17iFE9;1B$PbgO2G+lAl!1+4Jp2k>s=LwI4= z?=(v!iQ*IV_(PXQ*h=%O!_qi*YlRQ(yA{Z6)(NnnYcmVH*-wbPw^ky6;&~l-3lIfk zegD#N2>$3RhVdiIceaU=%HX@&v;{4=GR2)w_-a|JD+NLb+!a|ILsi`RhKViEbh{fkv0ETvB--k{@GuLe$> zTu2OXKFPgUlIBVSdr-XWV=vnN-l2EYQQ|l8A?+N&m?A#tM256C)N`YN+cQU)V=t{| zj*#gnjaA!z!|gLIbA|M=1AT^HKlAJSGJP~xNEBb>2rj%Q!e4Xmi3Rh7@xJ0iyaV*8i5-YMMV^h;X!J%Y0#sBeH*fzLwfL;a>g60wKm;4Yy89Unop-eDs=y z!lbk7LCkWbbX*|JJZ6qCj3%TUpiO?`NY`P(p@5Qu(1vrjpVi?CR$36*pz`YmM2&D z>C6Io{OsD6bxrl`EabLjJM;^iUPu17YtYQQVcWWA{cMDF&q8Dt#7%@`2_$x&hQdnB zflj+ns7*m}D;=TXxnU&RToLN$a-FbutEn*?0fbGrYYbd8OJ-BYts1kn@wp5nE|sSX z2yZL5#Y#zTXbzz@MzfqA9ft_Nqkl&T6e8&($?KYm5K?SFsI0?0Wv_-ahyslitAX+Y z=&o6U(jHKS8u(FohFdJv{0uRM5Vi;girBFPjJ#Eggo_z(EqI_8;bD86T?`#L9k-B9 zjTQn13kt-JT9hlZwT~rmx`yFBG+r1_)ekoyX2M(NFQONF0wspiNa~vaEfH zkc1;qfs+26kqn-0ugQo9pI8t?tCt9Cs5d5FPN_fS!@4&e38jG#r>9fy=y;j&(N6>xHYk6Cl%UbxnS{fyz>_Gr1ECA32Ptl=YFl(o^j77AErv&sj4 z6czzc!4M}BX`xB2(wMWfteec6INq9T;4_yywEMcI2$v9qvxtprf4&l|QqNU-C3EfF zH7w3~xU~nzu}97_D(=8^guz`n5!oOPE6->QF6AEwe%^ptVH>Jpct)sn*eImq%*rts z#L(e)ba628H({lueG;c4tgU3qxj#ov-z|cOU|G}tJetg|>x()(%NnD;90L+S8Cb!b zX+n6v#}01Ei=q72S<>nS^;j@05c>IPaM){KS?LwZ&p52#;lpHlTq(i^t;hGKOCoF- zEeN6ZwRx}8*aK%c>T%Ig2%Fljzp3$(M_?&bl>(P6DNRqEYUM)Q+-V2auRE zLbbc63)7vU+5>yTvuRUrLZo|qb~wE^9n93*dlNue?lC@FNf+)kg;L6&V}N~Vi_eaw zXD-w8`0QwU=6(}EhhxeS-}nYHM0OP;IFRS4&t$;h>~taH2fu7u>x~3l9)$0Vf4t;Q z1n~9VqfrIBjU>0&QBU-8K;qqtC|Tu-nYQ!kh*&px-u>aRP%nmm`s=-1NTuUB2G_)U zCvnHG^Dvm2UXHNMIe=cnQ7#~+lxL(fg@FY?yLCJr+>JEK{C!0LceEWSoyWUSDSwl; z=wW+2$3vcxC+|ZfRrrT{R9{5viA*$yfEh!h59Kvw>xtK2+z@D+DPAo?Z$`LYcWx9m z2u|lw)O&Mkh4jRK6e&S`k9^V+YsQS-^f6>9$P>;fg0k{8%68A!s$?=Tn(|Mgz{24Mq%IoKzmw zKE6P9&ib=Bkck-!BYqYYTC|!lt5T%Pq;@?Kow-z`e5r`)#|~3`h`2z4`s-b`rNK=p z9+i5g2Wwd;iR!LFOjqrv+MXu0pS9DNCGl#HRtJU+tjUc`@5}bQoY{stq~7-nq&zru zJ6FKaa}JZ8xl)ZN=IP@g3M`cW zN*OW_5C#y)G~vp*^)*c!O6uy@HFK}4uj}s-0AN`2w`WOwy;woCcFQCHH%xinivmv| z%XaJgaR|!|Qilyc|HKw8+|!$eLoJ~*Ids_U4e-8R^x+@~3{E@?E&cXHY=B_*g^CcW zNx8LXGL~4A3z{*qxNe&tMY}$R;TAAl;)|LgUSv2r2r2n9T*S)Y3jyZw|JZx)u&Ayr zZ2TEzhN1U9XE<|UhM~y-Dk5!Au_ItNqJoHu(u*Z(B+XP6O~Q)Ncre{GF>TT`nA|jD z6qDTa7`&;biMi>C`g`{|QxS|Nx!?Ew@w?A`h%eF}Cy7$DP7Ox-*I32DXu%5ooEgHpDf0+ozpp_mKu)L!_?eh7dC zgSM^IIIT%!It1vZ{he&fhwUA0r$pouJsZn;IlVpUs&IO6j=KJN(Dj1C{B@TmAzx-E zC((TQI)+(swRMzvNTW>t2+)Z%ctG}d*(fjs{@)lked6#SR`Zy_taQLI>!!5SfMo*u zAdX=puib2o8sLKeZ68cAzSl-O9c0_27KH0PqM8Y_KSu1WV+l2Q2cE2%iM zIJyr*wj(;|z>Y$ytE8+rR%U_A3+GH1xt>_s!nt7z6$q9po2O7fF9^+LI7vKAz z{2)4BSPH?ayAA5~=wI1O44MO?{Bl zw+BIx@%)H2zxe90bd_$Lgidh4A{i#g=@XU>C2Ow&F?Dq|QVsqN_a(A=zt<@B(imZ@ z6)RVo@NB#2^Q~jVxMEYRpIjj-fwc4y(@1K4bb*n&Uo;}0egXb~0|EjQh1I;OK~dVkQ25XLCf33Yz!b*Fd=t1t zKFr`otY4dNf2VxpORa9ILcXz--mz91Qs{Nt=it#ddsd9_iY1$Y`=_ zs#aAl%3V9IvY8Dl+p}oxXwGMhtt?iwHN%8~2drOv@(H}TerbJEb9t?lM#nqeY+7Zl zgiPUctxggpP(T2urw?PfcxuZTXNX3><=58M zG2l*Jt#vVG3{}=I>Bz^8VYF%1tQe91DNEtzV;v&d?B#N)yksO~E$&HHd$DO_{f$l) zWrb5_Ca7oZzk4@f*jRsWq66xo@znZCNw_hI|C0(>Yejs7CPnP2$_DwI|6yaCQxzTc zhVREwb9_z5pO_v_-7jQEQI`d>_aI;j1Z9347_PUC6zGe4hNj!~6OI<>V#M`H1(0XX zGjdaj&(RFjnyHB|^AS)-xG;GoYli?^$%()t& z#x}*8uZdD?G(lqT+shSh9_$%xnW`1Pn=@4r1;$QRqWF#5a0N6X_(ZiQnB;1}K+G8F z+7h@##`lcN@wXN;-Ihcp6^$Dyb#PL!Xl^Z0Xx!zZri(f-9tKhGRY)@HtVr8xcEuH`+CB3KGPawtL8a(}Eg#i1j(<#%)P)Th?l*pGii(!T#>z!}RV_bm%CxC`v%MWg^7^LI+S1zmY14UYoE0}n4`o+XRE{jI z)i()^e?@|N?p%{=eQV}Ah zf46=(E;!H_=WTr3$H=!i?U{q8)x(+>5N###~f4+D%!hlB-IOSkA zB{aoTVID|>u{VM9m%d}uBnC(`INvuUa|w*ZI7uw~rA6VTXZx6KLNEuil;~BtC^^@O z=64EpT?y9k(&xb||3NYc0-FZ|aKz?!5n7KKTz8oYR!OyMIu^r?Z5MlW%nUmTBdU+TzJ3Wge3Lt-yCvV9Bp~Nit180tv49d zt=YDC_OKL=XNNue__?U6J8qM9VdrxGbZ|LvG2~xY3cbbi%_vWYjY{j2xM_~pO}o&c z<5WV#5H2de+-~(cSKH>Ru(!tm^XVVzw@kl2Cbc|AsLeOpBiOdQ$R<2f)vI0P81o=E^M2Q8(xH%*qW>lvos_NTI3E{X;va}nvXZ_@cq&RMD#_t}a> z#ZxeColIS)&f!1DIkIg<4WingaBgC6V;bPhzoc+8-K~c~%0b{$Z#Ng%K#+#oxfVn- z9sLQc$L7KtM#r1ij!4=a%_!jzujfr^!ZlW2b~|@ zw=(_S?4B!sJ@BZje|Q{X!KXlG138U2>W*OiuzTltjGV$`808VcS2gi?9F%upvoA&t z6yMKrD2ZQEwE_`BeUq4a&lO-yD*JM^BAiisgpz)|Kg^+j&=-Kx)X*~Y|oJpbGq;-NbC5=1RBazh4VLpk0 zq$uFK(LB|T;M{#&4uBLjSKwK$FuXcnXx!P^6Gu$Q7_2e+gblD>6C9sWl=7cscd={U zl{hzDwcVugln#{A*_-x$m>iOTX~1T~QkmNogXp}+&){=-E9Gc5AWObLYeV>hSA>ru%CRH~xZ07%vu09}7Rp_A22&2D~UdI2iD3NLe9| zcJGnhHACJfV^Y1GMlCVb6bC5QOKLH>APShaJi^^tE<@ro@r;`N5#K^rN0-fJ=|-S_W47Vlw4&U;%nXtE2;3JSKY8I7dO&2D0w}d_s!Y ziR~hoZ5N!c{lp+$$F_`M3BIJZ?HJH{#$0eYS=fvfr&_QX9weTPUW;|PsHenBjP}d` z5*+?A2&Hu09|e>@fgpond7vCW|R8i?*ObHnJ=t97SUQ!d_d=!l#u+rP$m$H_Q$aa~L8q5^hm3-Pg^(QHO| zFg1P@6C5aC0~p@&C*N&UyIXTw#4^_9^e|4p?p8=L<%KK)DYU;v zy|X@5p;Q#mgX~yhnmIp6wQ^}?Vy}d}MI`TvKxRG)AYr9z7Qd0n?X&keZZtMoiD^H9PdkRt&2I{y(6O)SO zfnm! zXSX$TC7S*d6Da|Q;#{{&*YRr`x$s1aM=WbG{q1==GRWJJ*XzW_?%0{LgRQ5s|O6jcZqX<4n21(Xdx<}~ILVFk+@scpJRh;*NC~qgSJFqrtBrg(upM?V=J6kz{)R_I~v`8?2fxJ{vhu91};N{WbRuw^L z*7H=B!D+_Woy5{AVzlG8ngKpQx5x+LzI1O^+}d)CE(tqu>e*bY&0{*HQHs-_*DL(Z z$vn;<%h^G?5$9^j#lSB{aEq19x70RQRr5@Xw2{XwtL3Yjr77w(HE-X`&}jalxj0m3 zYux0Bmbj_WnKCv0f}2;|)ip&CDfaw00lR2x9z2N}~? zv8^m|5Q^7)Lz#`*SG^b(AQ z7-_4Q=Y+Z$a;TG$0wi|rSgMHh!dSL{(=Z}W5p2JJPKn?cmn8OXGjTeq8V9(FbROuz z>v_@VCM+Lqcfsd|c1xC8gH0~Pn?8di0sL@&^u<@h!9)wcUwdU*I;|Pcr6NfldYc7v z+}y3zpuM*xMA1XzIk=sU8!+R1{}_%i@ooMWStTI z66UjFuf;bnt>mlmwtQ1nZAGQ@QI5vel&=;KWJX{z1szTe5PQF$fT*M7YU;zf_BT4j z$N!v#mkmkkIBL|gRVz-KY5$XcVGOWhZA87oT`jFO2w##Sc^uG7;DT+hQzuf_uNXBK z*Cl>5WegW#h4lX)>Jlb)*nTy93$f4q6u|IQIaEADyMop~T?WY}hOFw{2gp{>d(ge_ zdNy4zcK9&i4D-v7+Az=3z95TPcRy!{qEEilgwg&(IdNoq1Ht^fDfy*)u;Oj@tAvI?Y#WAo1`{6gvLVpun0 z&jUfG`SKiZihe$SG<9k;>D0A(X%-c?ASJPEXwDjHeQitv^%?~W_3m7R{cQonuj;So z4AgZ`I>anT%}S=u2cwXaYXU;L=cx%M>R}RV;`Z4P$>N~6*4t?=AoBr0p6j24B&L`o zOh;~q7Ma~MTlDSkXN)4>WN7}Ze_>c6lLjuJva7387$+U1a^HAk49cFm~avYZm2bR!tM5%jR$&S?Z2NX~NVxN5qNygr-^ za+QsMoJ6Kp1d{0;h}!pFo*GSUnVI+@Rj8m&Qz``bzU5M=Y;_#?{WqY=>VHibOFfS> z6_&@7kn3|*5-^HC>X7xlBGpXaUY8I`-BBwe$g>(6U`dy>{8NOCZa{f~b$Xaq&%gt5 z^x*6B)b!10WJUs$NM+_ZEL+MKEN zp^43SCFsxvh-cm{QMildBlt_jC$X@;pP~)7@J-t96%^Z|%@dbgI|;NdJv%2VRAT*8 z6BTN){^p6e__8AG3g%CrL{gpCzm;@*ePbFW4~5WkeK54 zyQ{Rvv7c2=43tTWq?hk0#xsAv0i*wh((xv`;qd5Dl(BN6ffTWt2>O0g$sD?2Z+S2c z@k|1(`XM!xxK9zC3j#t5FYe++T?r>p z!y8EH&V24oI3T{=trq91CPT}#<<$UqBvzDgVQL%I0hL|D2`ag4u_RxKLm}EM$npEp z6m6X2)3*u8RM~vQ4Q{nI2v&^CU;4qy-Mgvh+cmkMhGPJPC&BBa5fOI&A^Jz4=G8QIgFflQwe_@xSXJrF(w24(sDM@LG0Wp*>5jkC;`IG>h}Le0Qbxz+g-3G;XDW zHcjLqgVDjm0h$T1Qt|LGgi8W-KD6mxq)nWDL<_piz-+kV_Fyb-zC(+ZAqy)47a4DfPYGkUY-~(*;nMdo(24vhtxMv>R3UI6)Uk zn<8{j(6yCMrZ?kLEWarEdli)81*Nz6gIa*HaC)E#Q*c^beNgKqdTm>b0qk%!U8rwd zJlrr|5i54ZC80k*n!$n6yptayTd=KDOO&+##wd3>4XA2}Ob*TtF)%}I&S@&Y+5qqA zUOq;$b$zWA;?}DqZBH+!8)a`Z!OY0vHD*HUA&4un9D zfD2*SBYd&_<4U?LD^ca%yb@<`I8k(S(SjY9fi_{sQ9f7==?*C0uB@W+bf}15@hJZi zbuNoidRi|>rK$Weemyx_5@lEJhv8tK3kRB*`U z2JfJAZ)l`lf%Ags+p)8KDfx0kG$VEJr-E&ugkX2j!V-g49ucFr89*w>$5ELD9S8m0q@H#GAIi z$QvLO%@1!s1)GU+#`sCOAC61Jy@-DWQFmj!n>6;=i{nOTXX>u^@^yb<`qKOthiP^m zo`mCP^v-w{t=h*=W0P0YeiOvi-vJ4kX)93@Jvztbsw{EO^Zy=1dvpm(^=eiV zxna$I*6U?2528G;zY4GOkish5#_$kKUdP*8&PS2&qXTbl4QGSY%S%e>v3|>jN&AUX z0~1*5v-o5JbPWei&3$|l4S9*5B`-OJhmj5b=u3Q~8B ziUsUz=9+>FM9IQME6Z0)s)Djx4M8%;7pO=ChdUNeSxv$w(qc(H$p5VHw0$(jvRXvaQ)4yWmf}Oa+h8*7K>zIb z1&>?i(%D13SwoJmt6s#ECZT_)gQqiA2l3iZ3~p5S8?IV>O$~sS)mTxN-p8l1mH?wt zH;?Ugs1D}De|R72{Tf?t=RDp`C6~m~3q$DNbNB@6nu8*`^K=k{d4%_+J@a^_8@q_| z@47XTI(BFq$>&o(+~W5NKTbjZ8~HFx&k_C#KTFn4T5uM$_UQa9*>1YggK6JemAdxy zp-SqQ#XTmTEF7v(wr|zJ#C-hhV1@VIss;Pat=a=*-iaOi zs|I5hmAw(ARQLb70hX>n{(d)cffHk|nokdC~u7$nVg% zw`t3$c;B2vs^11#;Ojrj@fLr7xDFAUvbXXf=5k<8tl0f-fx_ETcdhoF!R%H}e!r#V zMjtwKbsFq*_8s181a-eMOi8b$`Y`?!?a#pqb|`}%0ZrrrezZKQZ9^cCwvFZ+dVxaoU7!P`( z05K40pT@;;mZGuzEc?y=4e_Bs~4&c0Cc-}8i0joHysQ`yAR z`aATY2m%kdp}-qxf>!L ztQxEk9q(X)sheZ=qS_ifWpjcq+0t9bn-wytVjHHEW3(RK&2vF><6@=Y#ESC9Di-;K z*pPVivtf$h_LBhOgTq6mX3HcS;^LP1^}zC(8u(COIepXi3l#^#EHV9xyjuJkLc{Kk z)=}%-GZ0S71pfu979{roDh`|DS)}}SWWx58=CN4k^lPvM>qdlI-xuy&!3P9mIhU%) zmUv?v^J~N*=_XSb>H134HVYy5f0@Syh~|%&7^BNe(1D_1h-UQv4pFjwVS5L_pkC7Z zw>R=$o^g_MH4ZVRzH1t)2127o9$h>U{41uVUKmXK|208vS+|mJ9L!c+$i%q} zq+Pn`*gqRXvsv#`K^;P_8r6f|h`C*Vvp1zJ>MtmWZ%}a zpnVM*_te!02aI0BPaKqzLL1lcuX;NIo?zHBrNnYU_M@JM2ZD1Ih=Mj#zDI5t9pgad zv?m3BsuOBLY5!W@-OK4>;%{345}Pg2%0ciY>|LONTA-yR%2GUphi>dM*N!mIvuT*l zy5W2@9h@5-Ci03xMS$h&H2&?uRCY{nvV7pqo4`PT-9-vGm%XL&xYxUc?=y3;HU#3l z(OZUj-!YBX;BbPo-tA==LH_eGM2hBPUk7!yHTLaULB^Q zI!}y_9ow}@w7_$fk`7fc&tAwVAIsMdY0I&BJ-Q~+vg#47Vvw}ESYFw#wSX;-?FseY zVPY4510V?B-GUQ+*kX9NPj=<0EGHk+?pIp8zSKRgV7iv7(6N=x6-#ZVo9wY%QrS$0 zPw1k=--Pj4+D%`vQ#b@smD06z{5~u(rg`%dX{WzNW&QHNeWQ3w@mIP}v8+Fd4fCO= zwFWpztQ(ZKycJW@BI6iwLf|^A%6NAbb$O0fT8iG+vB38?i?J0~b5)k!PjsGcV)3>@ z*($KWD##r~T^~$Q`>=$bkt3U0U=0G-3QsXMQKW8oJIle)+D6ER=Ph4qH7d%s%<-i; zRnSK4e!5XfDWjlpalXR()s~TrS{!az10kd5)W1dn#&cwhk~W-*=IEBtG*BC)<)A>Zpy#GemE6BXQIhg920JuHhbI*B+aJ4;9wkr*XAJ(a&d1ndSJw2wW zaOdb<4Nd^9vIv;+YLZ+ZVmQgcxKZdE26+P37IZd!@9MU0{QQ2ak)|KzO+sBCzKe|raZV3?$_bX@>n{8x*U48adp!Q18Uxx}At_#KT**FpcS zW5s;X?3QzCORFD$C5G_xqk>4Yh6}aiZRC#*rs6A?A-P<#0!02Rv3UMEM45`lz+2sw zq-(O6ck$CD(-dUvck7*kd0n>gu-(Wd>7k`QLyNZ066tA;)NEzYz-yB7sh{V;g`kA2#XQ?>ggO5(GZE9vC7sQ8(eE8zfV zQ@G!vSFc9^ZNO6b;TK-2d=R1`2Vt1J(+fj#{XT=%5`K!`sq%Fkf7tPcN-~B8$42kj}!N`FJTwllJ_=U*gaZ_xP1x>iE>~D_`&U zbo^Jo)OE>rv*7Ub!C+=EM_E>$;Rh+Ce-i!)4xF?69n$5G->Ta=*wIk(D@Bzrl5(A= z*D-s|^>{}(-i28*zTiCvIi8+>g0FFW>VDAxsK~u#-qh6w-k7K_(cdRd;P~3cpL323 zB>!8J-Du`le4wKM_6S=475}N@E0oF8m0$C1ed|i$vwMB$p`UpV`^A>)KjVig>>p|W z=X{>nIe$Fnlzl{4`%b$Pyh!j(I4QN`;qjI|`}hWTdkGf)MP~R*Tjcl8&yI=iheY z98Zf+@n#jv>!e$LM%Oxg9<+HRa(}u%S*(^Eaxy%o__G^za=NPDFMRr+UETd_F5;QZ zOXB;P4-1HT=3JU{mO&D!S0{wudeXLV6Fa68zDVt|F5uZ9Bx19 zhW1rhq1rIwF zy5Tb{!pxaR{H55Vj(o;1kv&xpj|QtWB)-^>3iu>|QQsB8H~PkPw`BU*yN*uAIy%{;=)bN7{N1m~ax zPbJo`uIA3Sr!;zM{RYSfT<_=3ddTKN42*@3vY!I9{WOY`SCdZdf$MYU@Oj>Yalh=0 z+_ZFsLPdw4srwIJ!Cch>esQ7>gb2y6OPS{HOU=oYCN0Wv6fa zzn>=H&eH@d%E`|Ien`e&X)k6>zb!fN6q7XWkYtDkEUz&LHkYX6`Dd>j7-;P&d;QR2 zJ;o)GX6yI%2ihe;tv|362TKM#_kP*GK>^3cMkbwGii5n$akCuRpoSe|!ewuH317kNEg7&YkY~9M;;z6MRNr_W-7Su5FFja)RG&k6-+=3qtSp zpcA&4A45qQ2yom*y?eaxBp>^0N6~Zp3W9O|CO zhu0a#T$O5O%%laekz$+9)-gg`{8k3h$6xcpz^^@L!7?w&^^60IlCoM69hFWTU0%8r z+U%}twIAjhn4NwbJ>a2xQ8MPKD{7U}@`IOdsy{OaHI`4q`# z7I#Z&lI~rPzWbTvj=bWhYG^u5fa&A#Nt!aj{ywFKMNpYzQexPJX9Edt_8)pbz}xaG zVK$jJ>pd+~GIYO4mEg(6SC}ljZ1G)|1%#^OQjT*Me89c*{@_c>r``Iei7E8ASUgVBzCWqy@@k5UC4zcjm%lI)2I_1ZT|xTIsQnsH*v!dlo*sSF`OEXR8ORok@2V|%X9eryBL2K zWFJB1%Mv~44mU24O25*m2Q!4u-n+OUUkT&ckLx62z%2x5*Z5%Cc~zC_mX12GHo8Zv z$$WdW+Q;<%J$8dGT)N87e${k|WX^FNUjT2y*E>LRVlUEh zv8+PNE|!78>bM!T%WLaa*3!}Imxs{S%K+ExxB;~ z@0$Z8rvuZLOQIqvzcwl&+;Pn`xUyIkoi0ga$SRjA4a}oM<&Sb}4jpeg8cK5%mjo#CsN}slp<-_KVudQ0C6mirzt|Z+y5oy>Ue;RF+ zo$?8ie3Sio7e64TuH{owY)LXKUGX0(cYWV-oBn>mwn6ArV@GOXpW=tgGy0+$1e~>Q zTo6X5(*xLG>r?b!DVgs(aQi$0sA_fvd(wIyWPI#@f2~)~Gql+=0XUx^Cp`@GRx>Vq zJ(4%~Tvl#X?TWhPmCm^ew(^lIwgk?Sy+t>MQ1Q*<-Na`O48@{XB6(sKxBCW%G$o{kBlyEf!Z^1uuEeO%s%2O~a+YAl`86HZSqWZ$*gRcW#6= zU3?#q0e(f$EB@uHG=s?hT*+4Ve+@@)aVntDyS}Lm78RqHB8I^)yA$4Hzm^Ev@1^ml zQ$LT@h$i=`3J>HiA#1+0mNk2Fu4_t}Ku4!*B5BkfPQKVPs%fNt(Rr@bM8h4wK-!vY zG<)o|*y%}**U<5ddB}d|fSkQPe*(jTLr(KE4dc=DlC_z;KNA8KS)%{5GZZ0S1+|Ni zoQEVkv|`5>|AOyf(fml-vfUU$znYr_;+L#a(F2bHVRXOMjG)P84N{Va!>sS@gf$7% z!h?33HC2Aib;T_U!D+)nS16Zy52fj;ekO2|Z{U$exqiqqkerZFGKheC?=pSk8>2uqTbdg*sJ%|1UIpXLr>Us#l)$euzp?EfO z_GB_G)y7fIV^A;rvOddOuDMc5Kd0V>NLQD%UmaCPKacMF-QLHH5C?1+7ebe5v>+UQ z$`~x}YtB}s)dR+fo4ruIoAV|s%OXr9Fw=%@vu7CfPPVYI_y zeB0@V4Nn@cYH!L46}umrsBlxsL!FA}7Dmz-HI7zUyW#YSy&@);~C>w;^P1{ zllXDvj{bG5Af7oiLlKVHdrMO#BJ8zI%{&e1ygQ11z7g@xOFt`AATI+m`A@ovayDXC z*J=P-lDc?jz19b`oRSSKOJ31)^~m4oesq)jfaEO9#_*6caFLk{Uh0+*zdTr;_DtI< zu!erKRkke#$RLlxlEISL`cu}Ty@F;a4j}39*ly&41F&$oCT`PnTgUK@MH{TB1(jZL zuGhE_Av*uW_z%Nq?!opjsR0#9SO)LJQGA?66(S`X1H>qiXwEgwn;QozC+aef4QbEB zu|v9sr93mBqvIN63)8N(<1kl74V9G-+*lXW<#)57FF#I0D}up8(RD_{wQmFrqE`tJ zdG{_XWF*k7;ozg9^p?$_b$#>a3b_C_ z?1N~})AP(wcV!tdA`X&BZ2**NRw1%!{)-fQmR*Ph7f$EtFn4LoJy=}%`+?U36`wEF zsW_d3=vw-b-Rone(RQx4`PF2&bTR<4@7@b>?+(A2t7NTkvts@sIa$bjbwwz(zCXde zeNIj~)gR88*B&vpvY#zrnViCdEFB<7-m64{P3NL`I(8h|iM1wS7WHP%hD&MV_(GOF zlg83z)G|Z-KXYOu#zm~ohom6O3Koxl5Q7EDuL0cDSZaOg$Vg!g`vZ7}c$GJah1gy8 zk3t60*^&5{?K_0hMy5FyPw6(0*$)$zh0D!mb34fXWA=$$rNa#_t!%q|h0I{?D5K9^ z8mkbkHKCcwPSrKFG|C*>PS-Nw^El_hWxoLlgN`95ed}}^YXLUa?9%5|x3obDqiN4D z>u%JwXi6}BodeytywQakVoK!nMS(DrZXbmWxVONmiTZ0cHGNbd1d*pk2xpC&yx#Gm zK(tw5@p4-@GHoubp(-04cbu=0oUhAIKc_LIYV`B1qws#(r*Z3q*glHq)O9r9gVt-9 zB4wcfuiiwo&sT*)vi%3gU{X6>azmjooL(J;_OaatnwZzpRsPlyg0)N@QnDa=PHc)h z=hBF{z-16II%-ft-#khgY8wN%#A(=n8OL3N^F2RsR$3lNn53sddtZ3tfMtPaPBu(jP_6DpL%hZNgkGzlJL1fv zWJ-i*MJ_}qZ@J~wSZJ^%N)9jAtx+PQvVi=<&rR%!C{ifJ;rnV0HU#L;YoH zB$i%G<9hXe^yD0H5!KfrT#vazhucr;Yo%a{kDt64Ob7Cb9Vy4j===54 z&B1i!nAuN88^X{kf!L~Vul`c$_G^3f*E)rVy``#7uPeqdvlf8Zu@w7-BGDiE5L+p& z*Yc1VShy{Wy3O!sFF38&i5;^xDBMQWEvn<2me#dYF9HvTgOa0sIk@&IQ3=rx?3JVXAnpZ;PQ-|bqn zJ8A!`S4ClzieB2>pnhmugM-CYg$kJrWhs1 z7IyhtiM7T00NZua3%8CK?m8j2tKaQ# zEdYfA8UcdaXY7CVT57%~Hn?9#pR%)wNZ}Y{@UjMSG1GSHis3XUo*Dx_fxH-RMKhgU z8^bYCZ-`g_9Lv+QgOMv~tB9Jqe$<;N$_)t(()12%UgAr|Zb;9RL~GfkZr4GqyyF@i zTyA6EH=fywZZpSwP=_z%J&(8YDCQ-VlA&@@*cy2UJcogDzrM=Z(sOS^1?^Q4Wp6ty%v?YW)rBFC>g$l%rIN5?MJ zbv+O?<_RU(IfD($lU-~!mzm)5i);l_$1y`3oe4Gwv|`7YAgA5i*X3&KHpy~Cqg{V+ z#j?Z$3Ud5&X!YH;>7G>bY@GnJN*!9xP<8_UOpk7lXn_1)S$G~h8dC-j(t5`ifHF2 zLy+Oz#_ zeG2X0@}hHk&qa4f*9p*2O?g{C&8a)~)ZXGxudm^~Eoa}>PrbOtDSlT!&(`W>IsgNw z?P>Uw`499pbbGvE5jz|@p8-wt^-6l~J^k^E>UlgRhWzF>1yBSJ1ai_xP=CkV(Zyih zwLjE?hrWE#wT~f>kMtwXEsedxG%|I7Dxq#8Kvb`Nq(AnLO$HCr#u&<27o<}0Glfd3 zTQl0-@=AW@_oP=)l`T^nf;k!#s$HWDLXSaoC9FV~n%7>+&TdscQ(9z}JOL zFZ!){BNXXu5PKCF2gC1RGsGpo(}2&%nMLjN{0P+iJdY=qCg61WpHx>*od=@asP+*q zI-0$hB(FGd@nPh*80=n*rA*R<_OMR~YPd8VEX9weBlBn$c#nFM(~vi}XZkX#FDeFq z)@{RzX~M|@|C?)c;+dgW0xf@hV<}su4s6G^gTRXEsr`7g(Mi}D^GShR} zn0WOmNTttyAZ9Cd_1+1f*{mE7%DzVMw75SQgGBR#nzVDGG`&xxhlt&EV-%5&#mH4x z(!)O0sdXE0Xb5Xu=-PzX$c>XT>Etcgs}IeK`v)Lm(&9sPUh}}g;D|U#I&S?FHeaky z^e@kAZ81B!7#RYB(X%pX5a}DMgN{j}hh6w=N5U(o@~N#{$vd_FF0g7I-=~l6OHCg} zkBD4!lyr1D-+(-ny$pe;A(%-ab*=pF=QufJqu8dXCRim>8-sLRspF7E0sr;p7}Fao+|CLmZ5KNYr}} z(YVY9qoC5~In19-FC!<6#r~uXqo2`s0CudRp_+qN+h-J z6H0Zov3Lfk^KPB3XMcQ16Du^+W<3xPujz#tYP(^4IQd;M8-(01Rm6c!t3XR-pBAXZ zO{+)31@PLuxRAdOi9swmcCsXR|rZt|a^qKtRPf?Dz0A*w*z>m%%9Yk;FS zjRl@&S&>_??N!;2wwIM-G4(|tsacL!^I+u-;&Yte^Zk9Pm_IcM-V(fmp|FtF){&y6 z-Ax+*zaTo(M_}OMmL6)WD+H~?W$D0uysRHBwoM(&m_X8XO1kZ3{gR8bE_mY2<8P+# zUeOz^l*epYh+K-{Ht>QXu~~aMPe8UnRlKU#_FbT&XveGiIT6;5ko_)F{*QI2Qtv?o zAI#H|JjrlSpCDTwpk!sC0DA|)c*Lj1x(eizN&}Yo4MIfUM_G62-3RrlVmbOTNE#Q( z*9d~;w}blY2ic=a!L;>teR;oT%=RB~IPgBKj~k=_!3lBEZfqgG=@gVImUg3}4KoCR zf*!>or-$_3Oz_d03WMU@>Fk4g4;9aVDn`rO-TH$H<`XL;b3k$mb;QN_(^?XYRMRSy z0@oEANJnl38zz2Dpd;J$9(4F}VXTitOJ#$XQ4b5cAO;ppZ@i`dZ$Gs?znP%{8$u}r zn9VuxWUPLpP~PgZ?IuS8mAzT$EA|%WD15||4P&rowS9_s!2)ef306@=6XqKbknU9t zccYID!YJz8ls3Nohtb2xf3X$-DwDu5oIw+~CF+X6$ue^oU_wbyn_YpFkFgu7d2yY4 zn!>}~*3YN9;s4ox*>DwQerwLA;<^;JuFj02?_Zu5L4~6-HS|Wzm}n|Kn=H>`+P@FN zUeS{U#29uJSZ1zv=OL)3KXzw-k~%tw%LU3A<+$~#ty zWZD;U^t4u3WTLiKLyD!Ik3*|SS6}rzTmw>G$#Wl!_MtuM(g@0ni&jx*(F{ZTlv2PP z=H-X9$H%EC`HK7y%Q9o!MkMf`dkhrIp3PLij(e#D^soJZP}o{$hn}R!T90kp05x#| zoxo>gs6}e{K>JtmTqwR3#e#FQD^}2o&&*m3d$Mh74s`e)ibADLsUd*U;a~pmrT&vA zM1z_^L7i;0|LY1SYA@BRw@EC26eBia`T5#p%3#)8#i$O7S#LBOu^Po#y2L-Ma=p2C%7USwGy+(hMH zR0NBy*Nr_J6fI=gfL50bNeD8l76ocqN9+#^yiNcJiNJTS+#k8VQnCM7|g*1#XqVHxUE#5kMaTgYO={*-O7LM5mRu}^< zG_V6F(w)$W^y3mi;|(j_wmZaAz)~S*piKd$N(k~3e>#{JNZ-{1kSh@%bq)i2#XqQ& zcX39GSblFP{2*OpUUZ9Ua+OO*kg#|o_h!M6q#f_%T0*vXOIpY3R-uf?Q3L*5tEFtjXY|Cg%!EE7ag?vVo zRwSQGgvtGk+WwD*abmrxNHLVmiOZwK1qs|;YcPi>1ca1hKN6l|M0?Ydf8=D}0ajf=|7Xqt4v)|9@;L9tcKoQ@EWSE8=F+>GBmnLHv zoC#Xx^NBN4uszw{`AaE2jcn&|YE3e@Q~mQu&^fYjraL`y#4wbR$^{&TMN!Pfs_5zG z%Dw2tDF_uW4+ID)vD+XF0>@m*VMFd<4-XG{4?x?Ls60H@AxDyQmm7jyX$iDP4cROk z+KDEwKN1EPjsVoq!Pv?ehG9UTLc-7dp8!R@^C*x8H%7hWCFV^m$8g)9!KwcCV6l8@ z@RbM4ytik2P~aPek#gQV8xDlwAXs+4Vc0TQqMC3be?}nvA%qD2*s2ep``$4O>yz>C zV+C?z>R^;I{mJk?JrP0R1q89Zy(h|c&YVJdB{LCS8KDD#|GyDH?0!**qJ17KwT$)J z{oKdj^p0WTUwE>O6IbSNE}I*tc4wsCERXZ`M`Eyc)#L=y*+*iM=&jpei;dV571I6! z5F#HZ6sj$2AC39M!P!F%PsFU2P7}6tCwRs9(OUZTM$Xr_uAaGRZ0Jkcd;bWele`30 zO|yZ^6u;fx0Nek+n<4O)W9AaXylIR#jb#GMDHo8?a3^6Cx9}XT9uhZk+XhO+&}6x! z?79ktQ@}=?_{7&!JpL?i0?8B!V(*|@MWC3HH3Io*EXm^^&r#@T<8(oo(M)5D32l`x z0V)vq3$X!-Bw=z&7|Q{363n@4eFDTUIIR@dlI5ht_@D|!i1^&15oo|8yFjBhr8OZ) zocu*28ra^T12q`&IU}{=u0ewo!S2>1!V7OEDZK;;`%pp#i^m}3Q7Lw;3>6=|bEv{k zG~U&q2($|{B0b^7U%-QO#VQ{$ZDK0aw!j^%7Q4l(6rN(;GsB^rFyml5_djW9jLr}e zaz<+8_f$&nNn2{8plX2(D>2b`D!hlA?|w-ww$4}#Iq1xL8Weh@eEbwdtNjoUK~>#F z-Xj}7J@Dov#W34&2gzGFk|rdPm)3p8%v-9)!Rz%}b!z+NHRF)slAcN?Qp?PF#7nY8%6TAOYh;=ib z<@}%hEkjLt{v+_zxx>J{snf!TZNk9mP=dFqdIz9fx2&&062R@?6T9NA_$ZpYj}Ptd zfihLVpFB{1(T}lG3;gI_mv3iSf9+5#l62mR&!PhFx=?zkC?T49x5tB#eK-DqaZ2e4 z#NXUl0K*#RQSqxF3vK;3tNPpVNTi9MiUgNbFkSJ_R=QEjBOopq{Z4#6RfmGUvFj$F zT+N3-|9pQ&0yupCs8dnzP&CEw@5H~v2oA6&T@OUcZ=c04m5CVr?-;41o(FIVm=wZE zyAi2=AAgQO=G%DEADi*x5^bKPloCf@18xp~p-wDI|o_>6Y1l}gLb?)bYvy}2_nBzldbr&%8(W6XsS zgN}a?1(?>9WE9wX{c*|`>zi8KsL$Q+Nk3k~k z_eN!VOZ+0yRJsPpo=;zm4yS!B@!RO*yQWD35}B5=74fSS?#&XP#8leSm>Z#vU0hz> zRJmIIM7>Wyx}#$vas`#E;=iPMYtbN`Zx)4FHm#0d43^XofCm+8bF8SstWu?Bd;R>f;5dNq2F;gQ{KYu8g1NQs+M_ zD@87$_-cJJnJ!uAPOU%Yjiq<5itm)``nlgiJ^4SiP(^3gMJxY)(=x$(D!U(S)wWhh zI;R!HdQaADwhqfX_vJn5^|?q zkF~QMKgY0jNI7`55xK^=j;6j>kZW6jeH?yEB-o{m_H_6jRdSN%fcxI0%`O?6bm?Z! zU!0wGwKap2C10PDl)Gjw9ALM_H6gZP+x7lm&D)f+p1<16W!O9y1LSW~>tmR8*=^7S zWa*n?S5XV-Rrww49Zz4O{eLB&6CIvFbs5k!M4BQD?pKFEA4r2x$DGY@LU-JRcL?8{ z2Zg+(nSOE_x%{hob{u9BOalkezbKnmBtpgi{Sw!ZuYXLJw@J%}k z*dQA9jz`yP)8c5|>^M)A)lNTJG1>?nqjY3oOe?p4o77>P@02&avRO0K@q)ABe02D{j3sH)A7;S--m;(92B!(+(ZX% zF^AF54-1^9?U|UhiuUqg1!A&ygWO<=haog6*4Y7UeS(Wi*l}|brQBf*5e;_~DtJeW zpaFRDeK`%wX=jGg%bvsnUH2_#Cx=kTXPQ`+fUcF^$-`b#x^ywlRC{W0$kn!&hfu~H zFt8pOlF8PS2s-h-h8uW2p+Q^W*%?zC75WbZ(Y0H-&;Fr6?ZxEHt+6czk`DKPndM$L za~s6&J2T-N-53CLP<=X5VS0zBMTu?KO+-4|QpDyG>Fmv1q;tI03dex}&x7D-vLOQR zkktv##Wnbf^>>U{0PK*Hl`rxS7Al5{9aARaz}4zqqDT~5Crwe5i>9E-m^Ixulq@Fx zsw5?K{gMRw3myRb-Z`)U{5YYOetZT_z(+Y`pVpU6gJ)w|F%Z*vqtb}4Gy2h-RH)_l zv=tbb+TdJ7JiwZiX}K1#fg_o)iDvKiz!(L9w!$U?- zNa~vz{6VI$nvMzSe!gSND{y>+!&o8+fkCZ-Rc~F1eCf=d^2nVhCL`!6eJ5qwuFVzV z=yz=vTrT?oO3En^rqiKGqs}QRcMJwB#OFfkk9?tkz8ya@n9N5e`qSs*k<0%4-f{$0 zUl=!%PETfG+|#3!boQlTp0uWTlo$Pb7X)Pv{%8*0xp9&rj^5qQ?kE-@A2}-G-3mYiVFy^WI8ra{Zen`QX{{)I?y}jO>_B{aC z!Li2?U*?bJ`iT6SESNjqBIw1oD`y}TvUuW%Fxq56G`Bl-nu@-&AUF2GR8UK7dlI3A z*579WtHy{(O^@M^ItG#04j8C_nj>g6>?vSfia!~TOT_VMbn{avwWHOfh-!a%dJ1_x zjet?tZKDSV$`rn0P|s`js2yv6XiJkVg&e>1_4 zL_QG*j-OiGs6HVUs3oSZo}yjp<9y9!p4&m8^Rw-m4i(7eChZq|#Cf|jK|Eh<$Wyot z*2OLqOYj-Pl9k(`-smUx%x?jKPRITNHGR8Z*hCBd!$X>?IvZyYhKX9W3&ESGpA+I# zb#VEtYNqeHgvi11(5<*%UlxO zoQ%89GNAPf0`}<3?m`FtI~!8Ej${msm>4l?Ww9b$tk+G3yJx^m>9}Dsj89)nj2D$Z4S{xmSi@<@(=lMmyA$BUo`A`DnCD2I=s5|q z{+K1EU=X#@G#N58@FT=xz6Sn?kxwJqFO_RPJlW5Jayf-~&$FWx{+7ef#DMoxE_zs+ zFFli{7a zM=@p!NQOWc7Ldnq>e8hF9S}7pmZFarA<~Ah`=76|y1sxY07Yz&v;ZfpRH=+qVQdr; zE?+m+)kD^AwFKyr$SR_of40YJW#B~nZ%H7uWaZn)h;r>8;nO@1lr51=za&kd?g_I2 z0I-AF{O4$qFLh%H%&Yg2ZQmMPnk-}7ihoa5Vts|vqbETCQlEj^y4&k`+H>EeG?`37 z!VYu=&G3=~A2*)FNn2XPKiS4Dq~PW0{-IX1hc(OIj=wsdlNl0bgIh^Za0j-BlCv|z z>ALAT0nUJ{gSQuW8;hNr%7)yE1rW&5fHGLk!3oi4y=Tk{Q~NZj4IgH!om^Q5GlA4^ zj;A?Q+kOqTPS3I8;26j#&He*_!BswW|5%gLzVbgqu3hp$AymNj4|mr&5QH*t{+xCc z6udv|`0A|IiehyYFj4s)of0|}qEzI_*cSbT& z@{8DZZrrj8yZYwq1xR}yO~<~**rs(>v)D17E(j}T1+;cFaRW@p6H`Wu9y)EyB$kvh3JEXp?uNJg{Wuqq08v)juSfkIfzPD!y7+-Sv(nAGrz z1UiM>EJtq?7WKCWq1)_gm628~-Z_&FiNqzFgzNeO8=@pNcNf)6kIllha^TD*1SLhz zQnDty(>M3$BMn*N_hCM=aZFJaXS(H}#OhfFG|Cg3g={*Tk?&4r(;#iLAOq?-A8Z4n z$24;);7e6$*xVwayjs{Mjm7r;EbwCuD}u}I zu^Dc3&rRqE2^QE&P4KbajO>30N)QM%K`dKP0?^Oln^CKW2h9R2*8L?QN18WTNpJs9 z8X{hD-(*;j%g4>qS;pKV=oIb4qczksc6X}Dw6MpKa zXQHS~n53cu+l5Kg6Ibd>MY@Udx4)?PEjn3eBjg{rgsosZ+^BHaZQvRyp4^Uin-_KRh zoO`k296vRNlK?to9uCvrM4WKJD}6L=`W%t&Tkpj>#=n{BPPY>jczPbjQhMxO81Mt+ z1VmxtHbUpxW|jI=^xd3~7kmhfR>DMj_z@x0;f#3y9w92y_M3z%i=XFwwXO=J8GvXZ z2X#*a)Yl#WOBW1XuOK)=fex6<-~e`h4ipxvoQwPCl5TNr9_y5jfxE)xkR9mS+R?OR zC-=t%w^o!CJ8fI)^$gn=1QQB;IcaZ6Sa6h(G*FjK6|R>imE zZcz_bwpmJxo7w>?d5bEZ|J|LwgoR>>y`>LmI}* zl6l|VeuAtIln!D;_u&r0h!Y4B$UsUby6X|l21QN1j*Yg_T$g{A1ST)>i^hp%KpM{i z`H<~Blz9uoH4U{yFcLbeWT<@*L!DqLdaazud}$Ca1M7Acn(beN$I~vQVD?)vGKzYC zFYux)g~5e1CnrZz-&!r4+kKL!2Z7y$aCRdAS>%65a>qF4$a5jk(C?FQ%V~y-~!F*(Y+NP0-<*%OK~IjHJ=T8L)nf*oZB?ZphDMU!BhV_!i!{~AofyD zMXw04AIpK1Yu`(+;_+rf9`)EKMA4D)5ViDqlwrRduPC6ody1#ix*|(hSrJYSNFaoF zpQ6x7$m`(*sZHQR1&@YJ`}+%nY4p}_$9YcW0%u5@w&VIfX>0?Wn-K^yg$4E9?byIB z;X z@Qgxl4(rquBMv-NHy>L4S{z`W!Jhzl3;Y42R5$Q*VcPONo zFZF+bT#JdMouL^PxROZjknK-B-;H#%1CXkI$E+}_-l^!ZowZF26z3zR`q1QVg?xy$ zP*|+osjx=|RKGUTS(u9xBP$yl>)HfuIDkKle@5625_CfNKwYiMx}CIGbhwPlU-%e0 z?&CpWzCcWg)1$4OGG8}Q5Id6sjkjIlCyE!!Fmv5EPLHn|0rEwgK@>*j%N`^8AOso$k=y7pTiMzJCGc=Y$- zx_TVKsnV}FijKakl+oE2E8NNBS8(DaBupGm5y@~TS(7j^mg?S9ej6jQ-e=9p&hHiu z3IQD;IMlJQnviV8d<^1pXq^MzQ6&lrXVPd3aEMPYfI9l5a#`$OCn(5$tx0xmTLjD5 zDGEpa{`Zw{*#9Zd3I=7faCSvWse6B(lKOv*^z5umj;4-p7Q0j8LPP>x6fq}NW4qZ~sKLzTj|(I)rlii0p0av#X^_Gb>c zZ@W8NNmkiul2)FdU?gpuA08%M|ne|CgZj+*IJgA8S*zuCgc{1g@vv@X4@f zdQh=}0&h`hhit8j52iYEn$O2V+;6!+4Z0SD*-fa~SUDd0fuS!2iNr3h!x%ySq{mXA zjS-(k1udoR0wtU|bFG&Jzyz5+nkKi@Bwa>M!c~F&Yq=;47as*7@=fjheqv5aPG!J;$@q!{!-6YQO47r|%c z+?iTGI`wFzH`NwF|99`=F~g~6PqIBd{wdC54{pF{-J1{INC-_lX@VM7OkWo&y{N4M zM3E5>Mf%RSIWY&3_mb8HZ9wyb-qdt>5*Osp4pIZ+Sq@XhLUQ8cl=q-4p!QnWhxu!{ zmwKlREP~i4AoKHpY?#sve_eBPb$fig3mrQg>qy@m!?fVq;^Dow97o%+#{q>9;UkV$ zDMrzXQ;JZ_Mb2i)^)*68mRzfTx*Kdp#h|q}93Nna*THVkLRijc(|lh@`|%U;}pG3kAp)Zkz)CGeg=uS2CQ&An|<%iRjNL z0&G$Zc&iAeRqx=7u1YyfwEJBMepjX|9skz!0x4saB9_8V zD$Fd6VnaV8LT$rCD9SS@u`b&zGy#8f8!ehTLPK2V?(rv6hU8TdA}cYkL9>RMeuB@J zwmx(=CXTGY+G?ghm^mj*ZP9xF!^s4=6qBH@cwe!AlO-+1dM`|*g||VyE5#JCXS0bC zuVNAiWRJGVWa6~!d?_-5Y;y_Rn$DE?0Y>UT`bt6Ux}_Y7W81VD76pCp(GQ@;=(+(a z0D~G!)lE0z_PFk22ycZ+<#b?XfOt~HlI9b|1o5QOEP%umlPc-j`Q%IgI<1(+d}c$j zJ9s|%(uy+xL3B@!g1=tIt@+s*XqB3uSq7xM<{Yd|(#|SIapgZ|qD7XTg@nHMjLd7Y zc*xrp&40V+O*8D8o*$SxZ3xARfjoM_i4pr^TJlqa zUq1#}^52$QnZ^G=5QWjYVGvZwTCjqSeyPn zg7Mq44K`Z)_dwZV)1IIbFEV$RA{eq&`w>AKo(jA0w~H^_vJ|#f8%h!$#`Q-`2C1Bg zE92Prz_$%J0s9PrA2FMx4gl)O|I3h&Ynvg*g#5^PvpJqYIOKHZ^FkM{Yt%%T8Z^E) zQz{@goGow#YVrt+CPp-5J!6}$^AUsY-7OaW0CPAoXh+Nt%3<*9ToX!_`;#JPUGGXi zIBDzM{+e_cm*5bogB=iTodGE>@_~hBqQSw%78rpTEJE>@um}(?m1x36m-@|bLJ;Ya zmK#bvkB24vdxLC9X0M^a5Gw+w!*J+j#Tt73WyO5|!BsFdj{uFJy|3WFwa;lRbj&^s z{$zklriSIYsnigbi#5b2S1@pdi-C``F{fgJIGtPZg z5pBj0SXsY<@fG_RezU7}9n|LXvM;;*qb{vW>S4MoUMzz4HhtX&0+;qz}ot7|wr&z(Mb6JlL}EtI4_ zjAR;*fEyL zX}XxTr0Ko}ut31)oLNox?`Vci>UyppplnBK^H2BO*ob?m;N`C0>ORT_(z|v=Hf^j9 z#m$vCQ#1Lg`A>^bqsmcu^&d(oI88j9pscEGku3mABE#C@&(;Oi&2S;oBCC|uHzYJP zj)3>py6P5L9az5LF+^6=&@3}$j`#BfCz{NWBXdi+thTO>`5$3arEoklcS$QtjX59@ z%$Qqb4K+x$l~qbs$ufa$b6d;U>Uk#bm8L{$>zV&HcA;m{t1GJ(n6jJB&Y9plFcl3e zT>ZStx(4_fTT)-!I)XNA2T0;topczd+sKGr8|20CHpRR_+d5zXb<)xya1jxd@@!cD z-yX6eO?}~WVTD7A%l>>8{uivL^t-}9yEVYrMqqysIP94F?vAgM`~@QyGVTgfbKQ2V zc`VMj%q|;;u+E|X3no@url&g7@4Eo~-+TkyTn)`@@;5!@dCb9iTo?d7pNBeG`t&-s zSAKv9qOBO#mMII(PqaEb+?SbUrTo8cktKLImH9H$b+eX@dHWb_!p>>rS)dlXw(re$ z?X$iLb*D9F!5CWs&xyf*;$_?Ww>hD9Ev;MxEX(}{jXtjbfhgF!@7)2_?!a+L2PeV{ zD11-?+IA)1#eW`TBqn#i6Y8h6R#q+2vBMZ8-J7iDI{uLb_3?qzhDaIY*^zMu1e=}5nYUbv3qJNJTzdZGJ-0P7NfI0) zpkFN-Otgv#4l4xEp`EF6k&6tKbx!?-iwwaVH|f8HuNHx?r~hG))D2iK;~$BRB^VZk zL=K=)VGE=Q_bVy}0KYeV3ed^1N5Brlj%q`|Pa^2<%mhCZb_9wo42nmi*K*tmkW+A7 zn{j=n(0<4_gfhT4un*^O&;a%dE1p|M73mfV4sHxQdCYYjC8P6`OJJ-45diFOF8$*! zzk&a7uO>0c%dWBnZvl}3u$$1B0wWCf?4A^fPk<<-UZiTE+!-HFxePI`n;IJhksq`|yU{VSC($dPAB}SXuXcqVZ>c0Rr{n#2CK&P}o)vQS7Y` zr~@e8H`7HFmhGFVqO0RF0fAc<<12jEnH!!--EA?!TvuHo?DRBiLS$6GCBcbu{)JXZ z{36Ve2Mc(!fpRk8a=7C@@U=`{A7=J;OrPpQ4b;0a#F;kaU^)oSt1XYKZ5F9bxv+_6 zp0Vlb5tws!Jjz&*K2`YseXrH$BVh;I{))z)Hf>T(rIm>_uB4x^%!O9wLKGro35VEf zaPH4{q`kSJ`P8EiwdZT);mcu_KCsk0yh}%k>}6592$KhD<{H{mIsw-TuhedVrr~J4 z1mjj@3L!~TtAaW_KXHH!8mODYb3-SS^i1{e&dsX5bYCspIrr4U<^}f4-oqI0&KG(% z9kziDG-os{2P3wqrr8uRFgyn9ad;`m+)>>6)lq_bn{|}o6!;f!39*nZ*;+h(}l|5I=0pCht_Ov_)p--CWN08h}drUIwK^*95H>-@j88Im{Nv zV!=I}@^`78fN=zbTpGJ-P`vn8#Siuc?kxBM2TdhaHjlxEW$txQu}HH)gSrCf!gX;q za13I0{SA%6+9D@fpPh+|#j<2a9$vn|=gWL{59l|b+L$BqZ(8Bns`urQZW5E{ZtAL8 z2u%HQ5TSScsD!P^_5F9Z6C9-=W|R==PyBcD@ZWt{a;;64q&l#PJeqkogiAapHt$dY09vm-r;y6-9X;dkZa>C#1+oObQd1W2prS5^sNJu@(mraXd$@rCqIe}2#F zs!<^IdpNU+@b_M$d{|V3njjrzg!>*sKYTIn&ZYQcs6~q z0H^N#dL8U-Pk;*FU9FeWon7)K>VNi5C+c|z2Akh<3o*uDEy1mCTNX%$f@MJ_n^oDR zbU*57l)+N-yL71UX5f5x_}lPUswj=bAX)>-nSN$OA{p*%aHo|sBVs9M2|zOyU)AIB zNx3&Y6_eqoqswVrI-NV8?@Wt0xr^|Euiq*^ucU*uSHw6shMaPhx# zp_qLyJ(c|r?$q)tRh094g3@Mh4)@si^ZhEtvlx!^V3yVYm@^PE`Zjz1V!UF8%U_s_ z!$mdr@HE8_bYWd)D6MNWd5IT}!=3_PHD5bQ;RIuNxNPR(vN?8`2pxRa(J`Z`@oo(L zE4hkkgR_D;c_`V1LW~F}&D-d$qhnmq@+o?}7F;Z*>cr_t|dG(k|4ZAb^ zxUS_BF&?gCX%2V93yYiwdO5xo(n*j&Fl$1AKbr@C_JLu1oI$Y}eJ9QHrtW(Iv^4xf z;SyjmgHT!S!UA0pY+=ilG4_mmg0@b>@q}~2+1^S?%Jo#}Fa|qsfKsVvdsF~jy+Pq( zTbP~aD7IRU0pZu9P~Koqiu72BquJ{JT7}}YCtT-=X($G;2X7EXUcU!eh-Y#@y$)XB zd$0f5@XNry!@LLA(+mvV^4pYAJScwuVQ0$InhX!x-R+VA%(^_7b>~V%l`wo;>)iPh zY`P9~DxLTpwF=oVYbv=^ky3`$ZzNDTg&hiCzG$(+%lt7i$z}Y;SRdvj%lQxM6~{z7 zq_kW)7N&C8Y_zZxYup;?-MKGP#TFy5DKgRhAZ6@c(G{-BH}!O>*jlPVVqSOV$- zq1miep!P3dADFmH;YNv%0)!5}+fh!o9zi|c*`0u+r)_=+oNbOl^Qj>f+c$bR@=tJ5e_s7)E9mh zhDF?vm?@C}MOIONk0Q_uM^Yv{wZ!21l?HGQpGhy2I7`ORr59jfaIps~s?YlXZjJap zC6w!Wo6#~hzMBN2yJ?CLaH`=yE=gv<4IsxM&Yqi$KV9g3Im9)Z@8$ONjT{Ve_%smq zEysanJgZFMX8)KXapSTP6T(n@MCCmP9JqEo!v~Kv+rdQH!E%-kDq$?`{7wV?i_-`Y z+%qJ8ub(X88x((udyw@Jc#yV~>xAglN^5(Jr0uL2unY zGTdHB*;!>dqhIP#1W035Li!Q;hZ=K*6F zUHqfMjqlSc@0Y*>-y|pg=y!^TY{zU8ra$6*1LhUB+A?3Se21Gdz`RHy@f*nD=_NkA zuZJ?vwy*`#Tsy4pi}E5}`F}{26@!u-D%%Gne1X5xd*CD!3b>3)IwJ#kyFjJ0y@;!b zcMetNo9+NS%CUB+JP1`=&Xz(f1ZsGbg<-PGmfM=p+kLUh;e2D3(ph3M_3TzFr?S^z zqSF9?;1Q{eqMl$tA>C%6O@)Ch;E)nD${dn@5*1-eroA87ii(^_Cq5@yNkbH2GM)PY zn2rKp$Ssf^1Srf|36ihiuC8g4IPfUQgA#GIjPXiP_*nan-=k4FyIrT-z8SPsvxZ&6 zvT)~H$0`q-mpinMo?ls@9B%7AuGglH!CBpE#*MERmuVrT&3bkRSZ=eD1!3%iCM02wGrXU zFRoHPVl&L-rOTB*_Ts#bpQ#BG<;5ef8r%NIe{{1lc9^KuI-dagGVC_xK~ckDHoOyI ztqvQ@W2rZx*o{ITS2mjBVUhOdAAVdJFCMzjJg0EyFFmC^ZEIW}bi0q5;_x8SeZld6 z#wWsqPvrF&`sfQKFly%`+^M2Fa^4WT_ju+oU@Ucv0PG5W+;eR^z2IuT@zV$?ZTU>8 z0I)3Do4@+Ca+SF&Q8p!QiHq{$yMI*Hn!6wFnzLy76=kk%4%5yTfR8+QMS0Q`X7SY= z#=rT8(%E}pL>z@mBcn;PV=@%#t7UF{o-}ey(%?7(y0k$Bp9{T{BV{}+AhAdY`>otXx4_Op>SZ|7AZ6rb? zjiHWZ-~eh|9;u`rAEiC-bs=(wgw8!3d46Dm>-gp!k=wycYAr5uSi~9)A8}))(%$^DmKnEQE)H;1c)8s*vdrhUnw=F7t)@{4AWl~kHddN#IDE~ zAxdW$b~E8rC#+R)eh4Z38`y7lv_6Lu=8DEBXP!G9 zi949>X4~Do)P*8`i1Kr6Y=BxemMVKf!=o%hkNVck%qkdww^om9ZdhzsG8a~PIPnWH z)ujI-GLSBQj;8B&f)jGVPkC1n%v4W*j*K^Lgt@%o0RGpv!vJ=vyPH6{pA4i~?>BJ7 z%FN?A&83^!&Kocbc(qwm9O&pHxo~LE43S9p$XRf+##~1me4-HLDY-M1d>HA*@BA|I z2o7qN2IkSgrxQ%itYdkMe()p+@9`YT2P8%vGQU4o6NLq;vB-^gDvdgCK2jbxMrruK ziYRySbMf3Loq0(RdUa2ARFJ8cc_i|TEowHuw>IjW`4y7N7mWqVULIu-lv#ZF;;3-* z8+?x&cKT?u(OUZ>awq=brl_l?DzMU#Lrc_Cwi>f!$5Qu48QwH$A$Y<1 zeu;IWQLUCJNWYvP)esdT;Y*fAO)%$*bg~IW#bNW2X#mo40QNLi;6|QkjCxo|n;)X| zGi|FUy5fxXFhyI6dcM}Zir-kN#Rcd&39%+lsEs( zO;Pum7gV%xfvuPt+JAG@GHZ3SDdFx3A)OPJ25{X!E|tXcM{bF_!P%Y}3eu{(qvVwP zvn-5C?*YAgV*`|veRoI2(W*@B-n;LL0u-n|)Ses_;I&O#hbT=eB0@-3k0vj_CyMM$ zaVi=i!<$nEwyS}02yw8vv$qd^H^Bo%LeF(fjr3ri1pN7mj;N>HZI%4v(Wo1#=R}l) zQ=>3TrcqKrihS^`NlBYGN6oZG@p?#+;An~uA2op68Xi)3^W(QfZ51^iQjVgIR8TzR zT*572<%uZl4_s6re{WaRBHNxwh_}L;GRxf4b`KMbcvf$YYOzKbI_vbuqI}{!EIp@U zmlWo{jEDQOLi@p$k<*B+(a!wY6HyZ*OdV#~N0LpC*m-WT_GBa-c7b~|#g9=KcEbGp z8?kdG(VNVNp&=5ZbxzSA4NNPHu!F&Ifxc%!vlZZ8iX+n$O`zLAWpWa?$xTCkIO!>@M7BM=qlDb|DPpEU9GJ8m*v% ztE1ueXH2v`NlT(@>0+!rfIm|iJx;tq-2OUTwE^$t#qeo-V_o!wYqsgHmqbg|q%p+% z@!gteZwY}dAey|^E&#ZiT|?W0qg$!pC1wr}?b|BbeB>K0M?YO+8-18!HWkBtw(tS; zqnVVoI0=VY16B>`Bam)1j)5Q)45*Nsb%B60u6j%WpFcb1e$n7V!q>{vWpiRa2okBJ z`X{LU`Jg2+yWZqi8;mD*ANxEN1rYYk0i%&Plw%r~b1uTf@|!)|ZehksL=PmtzwLel(^-KsS>;jmor zXE;64qz#}=yy`t6tTQ~^mHX%XiD1N%@{s)Q{in(}s0e={8V4Hl%VZzwZ`FEI&!@>? zewqL?sM_K<5BmNhxbp(3I%e-liW>pP{9_;N?R8quAWFZ~@0 z1hoYF>KM_V<+&lE)XWheJnwA z$q`lHHD5LMst)i|YT}N{Z1adNA5D=%7a!)p7p{#fO%c7xRjboFZ;rWiQ03 z(rs_~Dc{BYKFs#a9r|RcB%G5<+aw{jP&$4%AzSo_By|HHqiKg)?I#LbJ+oA6d*qHU zT`EbTzMtd7(_FHBiA2G@@$Cx9a6ayrxbiz}A5hbq2^!HOtHhq0;|s!VVb>|@Uzg2R z7<;q}*3cF3=+L)29&j-&F2?J(#_tnr{q6O`bdAy=*bL`khIVB-=Ap?1+ySe{?A{3DBzU0Uy!pJL1L7AlVr|LX-qx1PcC! zo$;TEdXNS-0LL0Rkq+*P543$KY5_WRBtcF&pU(~Cq33#RnJCiGLt$X@EVsdZFG^i# zUxCvRP3yr&Ca6Dkx8*?C7a~ND0-C|;4QT41as`$D>Ua^Z;lI}1tT;T183t z94T41gt$}B1L{$9ahDoyOMS5YUTgzWp#6SLAb)JR`karbRA{7`EaF}C%)@F|{*m?S zAI0h7b-gV%m-Nz&l1%3GJ&f8vPV(m4A5@PB9{isBAk83=3zeaYwwNGZzgykyLh@M& z;k?g5^~gxu2dvyl!^;i%2Egs=%dKOcjRWT4K^-cJD}?obtdeZ6xwq9x5^V1W zuW^t3rdEjFZtYDG&2?_8p+O>A3WR4r?%T2T5^=S?kEe(hD^8zR4|ea@ejhN+uG1|; zw!S@EAHsQT9q_hm?QP!esye$!^o-VCBW|s~sOg_qjSfsnh_xktor(W%Z%MWx#g=`j zHx7WvYx1;&Uqx9x+ubAy+^HS^7jJniG=SSOKN+msUp>1_BA&SHooKGn zP`kmo=M$B-Oi1#WCU~f|Bq=c?m^`k)Etz$;aJeU@V3}XDJ5jvy3W5BayA$V#RzdDk zr$!<^Mh#IlaY0e2V7~XA#1v;+cI19KQM3lohLsv$DmtC05=B9n4}b6J#CJuLmTx+j z_-nBEL^9=$WN^(tbU9JnR)>6&BtdlK@_@<=YCx{3EE(tFvUxZaQ{ivo?}utzZgu2H zsQ4cJEm3@;mHeI^~Y*HWVh3T<+Gm^B2cy0446&rV))B8u+m= zuFWHuByWH?PP(rYkj820N``p#p`H6mwd~FYo>O2&DQmadnaYYa?)Kx^HA^yHGm)gK zBrk5_X3T-q>iWvLb<9>_esybg{Zds7+tZ743(LnBPMaD7P8X&vX8+aJ$W-w1!D3V8 z@VRiJ9KyD~C3AtzR3*iDnoM%4o5xnyAT>G^n-t(QS^#6IXx*m?!SJgDhTuO6)XsL* z&D>`Pk|dB}&y!`4v@g!t8()EEpt?1;dH#~cFrZM;v14t1jxjkgvJo=ca6?EiZ7G3f zagMyq%QIK7{uz)JeX}qfoPo%KGn6isI67P6m~+ahkIN3Sg#F#jUO1iLM%y<{^l%ha ziYojxAyn|A&eg?o2OLnHjxS=NnBFweMQ+K4LC{5LYCKusY0sVpjG1NNVRknm&L^xK zZpcResPmOt^D)N~x1Ke-a9a`sTQY`SrDN#)i5Yo(|0GSay?D%;t|$`^CVBD|2F-E1 zq2CeSInja;7qI6w=v}z*-wnWz+-=Y-7(7<7=!Ef_V$I7Um@~)Lia^~ z5k~chYjYoTd0KijMIt^%Ua8iIPFCz9;m_yPXbuk-Ee@o z<3!OXcnpV6+^`HPD$zjSdz;3M?q8+(TwK12FOnd!y7A{!A2y6#xh@?l$)9c4BuM@; z8X;QdmcXf!ATFnX@hq3D*0>0QYoNRr#Q!{&HV8Q6ZxpZZwy zFL8GZS)pfv2DzBz!F5RVz_DC8k>qZ2ULgHBbR-!b2!l_hHOO$0OOp3oTauh)+f9;S zo?DbuC0=ZWLmpuBWhT()#a56JN*_*DQ~PcZKXu)c3B&f!GQGIF?}SSWS})NAaplJO z*b4i$B&AaO%eg?(9UjA&c&0$4a5)K5$`pk?zi(;M{S$1N(@^JwSPyYHc-r);VJr8JcwP4!?Ml17GKrg_kcJK}t)XTAov&O3nZ ziQtmpz$FO|R}Q2oT)FMPwMyLhZ~v9FVx%n(5^m{3*&I~dp5{Q1KB=idc4Sm&~CAKgGf>XgRPt zKp#yUi}t4#0o*hBQ(^AWuq|1-w(fyszV3k(d77w@|Hk!?hv+OrJXZ!? zUO0VulSJI+e{p*mcm-n@<22zC#S8@kxmETx7(N%n()>;L)^o>G){17);5#B$R9pww zO`*5nDL#W;{|L_KIHvlFDkI!ed81RRmuS`Fad}mVgz)?!|I~b+z$%#jwPa$)kD3<) z5oJ~5k})hKmXgwwH2nIw)aRkDeI^8;b`7x5z0cP{0{iwt2WrSjeU|IJzYvFR&8Ae? z%B<>znxmsRbrbdHraBH=T-iwS^u+<(g_||FD4kP}3ntEeJVYpefLr8;Oe~~^I>w>C z1H$~S^HC8d7Iv=dP%5T%S$9YR({y8IdBkLx121%kOf&@w1nqF|2n0b^Dx;&xu_v#^ zAhPO9PgRAtKpkB@4`+)O98Clpz;Yo-6~)Z3BTWonL}#=3Z}ZO=*N+jG+X zX)hX+xp`@#E1>CCsedKEf&TafE6kM})M512i&9gY}%&l@GZiEytbC-J2HbF}cz>xq30&ZWYun zuBD{p?3m8}kO=!xnluenF0P1JtKXQ0-$-7+FSoQyn0o9)Iuw%Z-H}2(^M4#q-~W!Nrw(1Y z2aZa%jS>rbSs0)2*rvzZdQP09~KYr#@qaGA*cS8w| z{$j=9njn@K!T0PMwctiuDS6bL2OEdkmzq5@_X?w{`6_=Ze_pMm^-*AhTl9v}j}|V9 z^XxoOs-(VWoB`mxl;%m=)mkuCI*rUD{Z5SD9u@4X^ux;FsJcPrK;Nci6u^}+oFNG= z*BX~-o%x)R8Izzi>(0sR{9()_l9hu)qvDr172lDOA(K$f*wNDmBh=wL4OSa>X`O*_ z%Y}!hos%HoHZ&xv`RuHW-zB8a8=Xa(#&94@-wutXqNNk%ypuj-pM>^b&K><1KGeE$ z#=v9j&tvA$=VL&FEWqDi9-VQUgg*Rv%t$I43lc>*TU*8O?vt(uayPqElYW;5j9O8a zGk<1Wh8&JcB15-1;2y6V*w7+ zjV~_s>3l8Qg;vCki4}ZZafYWeVFUAEaYj4Psw*>LJ~0L~M4@{#r1b9G3?;?O)8P!_ z0Kl*;2VWEZMin`)wxzMIvW;1VsHrJ8$&d4Tr3jm(dTz!v+8+)pn9}a0LHwkujGk`W zFdAw`^ROX&+uu(ui)onGQkPI$55qXd&yY}4TgN@?S%6!8@1s!;d{lhq=>=5M(&%eH z2CNGtuXYLaQ$->c)|-|E%&T!^6<$wD^x0=qR_yeH=^? z`mQztsJ^1u(Uw%C%51hRPOzo5nQ=;()2(i!t^3Df*glY{11=WC!WVn=j=a--neW0F z*-=K{#ImG_uflS{pHP}&1S%@N8EZJ#_ zatttz*4(7qa@7R<%`kbh%gu~*FHOf} z#{&3s8f@Icr$be1nf5%U{jbn;Kb8X9^jox*AYeDjX~!2i@NtqB?!bS0t9FYWxBfs8 z)N)(K!1vh}Cq_pi5H>S$DgVq`?Y$D}8Z$cDWFeFJLv9!q+@Uo&XuSUXzbKoI6Ty)& z;MI*+4Cg!U&^p^u#QURg;Ta8-HK)yh+?6~bSfTR}d!dJ@wV&Ya&% zMGz-d>?#1e)RiA{al)`maG|T~w5w^EUBYmR>(aXOKdjg0xpG$*OokKsofD?Ox8)I} z<3>*%&q^Ta3lsc_3&SjAo+Jks^!zB;b373Ye~henBzp^M=;qB@jPmbtVPCO1EsWo} zNt-F5+|i0@e%A3Jo^af1Eh}Rg%IHpaaoR?@@_U*K#dc}eUw84L4zoSZB*F?*PW``( z!6m|KTyt=%HV}^Ktd1c2@-k-dA=|VPpg>j5b_N5j%9n~KEivso>j{#P{dWsAG z<}q!I#8g>UE_l#t381W_=p(}o1z>P z*Dq&Oo=}7-o2Fq9gz0huTPqB$C?iz%=#R41tR<#L&s6 zx(GwelccvrIFa79*n!sGkrmCxnW>-CK(hjx=!K4Bi{37qZPpgtF4dV{L-JV|61$wmvaJC;&6`P zJkNs+KWOFDlUnEqTh**!VTv#q8P?Ty_%y;q5jOMLG*U7WK1F}VVygc@>qefxU^ob) zN_Iz{6CJyt?HN2Xf1D7vrec5=rkvM;NdN^`ViyI$ySv$_|Z`R?LUhTXg>oD!m3_rG{Cv-PPJw{EJt#@Be%ACxyPfsvRzL&2CxNd-P}MKvyLg&9*`wj=-fuq>y+@uE-7^y9-FvYuEn$S{F2 z-LPElxdWLb-;|X^lkdbjePLsz6Yaez>z~()+{~w}&N?>OX{t4?W|mAme{oILrt8Py z5$ADGQCNGpry^q}ANqLKhn}5>vLOFCmbHYW?`OF)%_~N#`7{Fp@)OxXwEjf4mOGg` zL81x*D80J5rn0J9Hl_|l98;@n>Z+?+Ya8lm>%t`2^$r9A2u{|da(4fFyLcN->;o?K znf+ry0o0)KrjT``bBNuHZrhW!XHT|4ETm(%QtFu26vXXF$i@-m+u@27&XARbt+ID| zco={6jqD2Gv2LG^sjw8%w(dpY9(>)Y>_;YY?R_^(9Q-O-`7Ne?3=LOTUDHZUmE-&* zdU|$lgAaZA(g_dyY@JNb3(c{-g>0oKmaZ8m{+B&AP zrL}18LNu|U-k^t4bYUPk22)Z;NL6xYc)7j1I0j{Wy*QdaNYmv~(b2_VX+2QmNFzq- z;z@RaF*bjpkHO(p??exd1Sh>=d;`4bV$<(T*C{CRnYk{Mn685xk?{=y)R3;rrgHm5 zFqKW$WtrYOjnctmEpvoe(LKr$M7NQ)&s^!AQ99UkxkZBXKQ7XX=BIa!=S7NB!=QOx9YY#nv=Y##g$(CBimh+_of?l38vbDZ^fQUmh0T3taVkf zTA1d6&^BtBDWJJ_{sMYdR}L%q8l8)zg)TMfl=#QHVlf&Dm~VVLKo=3l@Zts z`hzB&AKo{$>#|J$MDb-SbXSJisv0!5cIkjNQwh_Lp*E+y9UDse`8p?4IeQv#$n9P= zpau1fx?nmzN1sMlSLs~%_IGvDaD*+^yV7$X=tB6@x9Sc6c4F!Epvesb`}Deb84}Oh z)5Y7blb0|ExI1+Fy{&1x2GuQT`Fr)KSkaGqJg5_QuB{%H0rr|59c$H%<1e1n^+}ky z5^yCIIxXMPrMuPNnym}nWv6o)ZtJ+~H6E*wH(W>#EF;_oh|c?`9q)Zy2Ww^1C}cCS%|Yk!H)ndzG0GomAtV{8$;Tn8TD{4H*XJ2kaE~_u1#?PR--5 zeyso98|Qi~5XaU{bg*lH=3~c_Ft5ml#?~23fxz~11a|*8AIL24E#Rn4nD4@;{iHu3 z@lea;EM9JNb7fmGZQU_0Xc!(z7qk?fI=4*(_suW*ZTC?B`?DNVAipnaY?WnaXUoP+ zpIT64C@!DIN)Ri%(F)vP;0@-5d}(!a3p)-qUd{+0x6d_!#MNS}lR7C~^Ob|K{;yGl5E9wm=(Xkj0doRj$xXM8Gz4y}obwr7DPf4(_r?YnDo z@XN(-H2?0JF^`M!Ur^n~uZ7T`@2<;R^%V7U0Co5N4jfEZA|U>W0pmPL!vkGc5io9r zQ-EpbutFF2xxS}zVR+=6SBwg3EAT-U!nG#(N&alPks&c9m@f|*hh=Nu(JTnqG7}GZ{(y$ zrT{$!tr0W8n+7K@JHf$naacYmcE*k#M>#8|J5soPenaP4;EcCqsYbykc{_NK=_VoF)v+G~m;*%YO{w{^yW9T*a9Fxl=rv@n3Wibla$ zrcLP))KV=(iDgxi*S3`7Dxrd4xuu#8-C1My>Ao%pQP}ioTWwCxQeMkwX`(JW$l)AMfe%;n}Xj|e#^RPPaUC- zLlg2zIvY}CrEcWpEY68Kkc)&ZdLasnB{nESGY9 z$LGVa=I2WIIK>-JS~Isei8jp!?@Z5c;oe-1gvqnn*Sx-}xOLdzP?n|-9ef66JF6Zn z1|3aC4ER9i;_fT+{|72Ew>VvR^cCDZqRW}RAzNSs^Uj9ba2ofTTkK39K3MGHKH%Nz zxj6atyr^>+j$pQ>vhjjH89y(r&WrY;_R3;=kEu94T3?a;_)L@rmE(F&t&t4x+yP$r zKP{JEf{tCxu3xYVbBkTCQ!uYV1%owHabOSv2b2lLP0$Hv+zqoq+i@-+283hB>Rjow z`Nb1RQyAyqWPq{)x?f8AELLI95+&*DI^O}o%uZ8CRs`$AR>Rt5TJ5~*;^x}Li=jOR zdar9iahAI|#aLOq3_GsgC(=xX>ncjJ@*n42>FFv9S>fDwOmNRP` z3ZuOHfnwLS`Ypx0e#`VfJ`qhv+~ffRV}!5mAHu}0H((s(*2&|t2d>osA8efNxHkUQ z8TifQ<8Pg1$PguREu<-tdLLRedu`5vS@^MkZ{Twd%$ai&=@sCrS+%din^w)8l#WRs zI+OZm&x|11ABD)ib_T3Md`l9Tb4?HO8U;F=oOPhNF|3#!OO3ZqP*Yz#ME~4Fv*5WU zEEN0RBUo@6KTJ=g{!<_@>~WY9%zvC+;v%7*Gl>E8jjkku+Iz49NCWF-e7wG7RxlZw zb@rwsRmJKiM=EhHk*bq~Rlm8qbxAWLT5hdoSWOc!0{GFXLO7dSDo|~aY<~q7&o5Ph zF>s9gx4t+ORNyazW41Xla5Ys8^hu21uP6r2(@R*0utL-7s*+%GkOH!_b54nzT%>W{ zY#2E(T*K*R)8k>)t|15_3%hk&Jfy zc>ZWk=~H4`kwNxr5|OFeuQN*zh)|A0DNsouVFe%x+vl>FB&If(^L4eQ8g=lT^7640 zrk0lj-WrowT;0M1D%B(Es~hS$$?99Nk#E{qs-W@XlVo&fUwnw9ijHrL_o1uZiLP`k zb)h@&(^+~sk{A=c7i)1dsc#ARXt}H21+bSC9Hv+7jf401JHW`w*zZ_a0*qpTM`(MY zbS+NEWpSf{$AVz3EE*0h`o~uSc4b!h16gxJdN#?P7>5H8h7-TxA6qmhPS`9Q>X)1(4WzX@C zzFxZAj&AWRlhMtGOXFzwo28MoLZ^@c3*U6}x(Lqj?J}t6uN*Fw2XeBHaQcNHw{#R8 z@JEd|*I)uo5 zfBzp2kM8jhXMXQgrX|0pVg8di4_(h7-H_3?0f*6-t8=88uarj7EsvG@)23GdrvGUh z{<4jrSYJ&LCA^9;A$2cvp;azru9W^L#+NKJ-i_A3TIvffW=#NvyOzPZ8cU_{Hc&?X z@>*#ad*M$pneoGE{OhH|O?kAvUaA(xHD$k1I>PiVl6R(k;Q$mAy;|zR-ukmFo#}Ff zDGbE2?q!bT^=4@%ZScmKu-u~z`p^5E{fEWGs%gD9?C=m2OC8>7u&J?^jae`TI^cN%fV$s5Q*5trD^u7=X%HiXzUozM(#$dU0cGTS8qed=rE|;yv8` zCTk^Qb#(S-RZQol<=*`1h_c2QYLr8mp^?C}zv~mMNsS+kcXu|qlgP|uD@`z{00(R$ zLgzUOTSyEipPdTSaK+C_=r@^Px)*o)3xHc~T?mNuC#A0Z`tfDo*?S;afQ6twX~}do zuUFZhVyq4O(is<)#!#oVy9&zqT?OSooTA>M>TJ?{S)NTR|Ap~4Gp6Ex(rm@}>D@9P z=}#+Hf%u{fi&^_ZJ#YBDEEG7C7i(a>zh<6>kBF=I7_Q{KmuRRbyds`@dNDv{{-M5W z_4yS%Xjj{|+s;dCabMyOeLr_czAbDBShyMYx3({<3cq>yRpVEK-+cTQ;8%;^Li`rt zSI75dE#^h10=`RG|Kw(B{1yzh{byBfRCcI7hQ@xJ4V>bqcgs2H_G z1`dN?57jG7aRg#cY5fuh+MXU4&)@p5`kfy1+r=5~v~a~#Z}M6%a~_0hJbq#kFyZTJ z9DQOIR~pL~3wX!!IshJ9V@hf3_f0_ca7}6SP#2sEH@=zXP8}ypMo{;`MmV838#bKp z>#g^y+ZZ?vrUE0HG}zJ`z-H;$Vox1mP=CWAAW#R=P-jl|&T_10Z@sV>G$zY*&XiMM z2m+?#^)m9RY~BZ=yXH2^iNV#dBdsQYm+2dBdsNiWJ3nr?U-W4Bq+z4z@xmt!9mB1b zZ6$`WMI}Y^=2nqBWuzY*);1*5$xj<{MIXpNYq-z$$RGHuq5cNj^HAMN-Mi`@q?|)4 z;NJeZ2y5+2d85{Ljc(+-MmLS`5Pd6X*@Vdb$FhC-mHMh|@NFbCgR|^+m}x>v5<@vR z1B)U1SC|v`^)r)kxWWb6fuHkUljP3-q#=1Uj)bdLWrI#R=aV=9;^ zlBx1}BgR{6tOvEc--hDsGr9zrm@C*#+bSo+<|3m@b#1`fz1$WooFyrDw^8q&Yw|6D z!x&sRlmjm;oM*hnXHx@PXXvZl#&Ln-;Azagtoi&(<^O5}^%6^(9f$tJfnnDk<2ZkD zGP$j-&EuOJmNd4|Z+Pb>dPhyV(ZLR^=&2-kT@IMvKBJFR6rqG+!)YgP9H$V6TCX?* zT>Vj5fw+tj;xDc_nW8aztkFTDg2}iu%!%&W4M6UT|1<*JvfJox_R;0G*EmjicFU_; z&|qnivy&~k**^blx6zB<+-v^aV?vENvd}wQcX3y=gY3u-N8 z6e`ebXR1I%5QOs$%LX+Vi!zer?-_;R6(Le4h&w0AXekuS$B&J$+A5~v7e|t85=9E2 z?f*1-Q>Djpp;sel*j{w)+#aLp(QQm!L(38%``I;UOOJ5`>-q@q(Kz>1SJp$7VQs*7 zEd9xHmQIEpLBl*DXVaYZnla%0XyK3py`<&)$tT*>LfSq|_s`N77dh!;b9tzAFG@Rn z=71W=UcgYBCl2!uHFsl)MUW>-EuFURHfDm8KFn=+$#izun#?qW<`|u`#0ACew>7T` z^TsnCbw20C}nJeb@>eMhU_Fn@qv zW4&%@5Vv>+U3%4A3!wo_@Do!DkjI2<`EYLv%-5kcQnwuPGZJvKZ2&Aqh5GOEp)SsTCyqkeEjX~$e~8uZ=d;^7{m zTB5MWUo^tf6B+mvn2_)T2GQ{^+Du(dr(VDk)BBdWDpK%@Q+D z01S;PbL-Hdqu6)bw=fS{e=^mG+AZ90%6r$>xcB$mmR7wegO0e~-}}Lc|UCV9C?Gip8(X`s#xoqZGhO6at5> zKngl!9E+HepRm^;z>n@YWXz+F7q$W3^AciSK4dJSq@PUDOUV9Rd?UoW^BrJ_#%8pE zwe3T^y>O%2kEZAk}qd$$>(If-wJpb>|VnrEe~(g|~z6Sbbv z`;g=ch8=iWT`!4yH{@QLg^fHVF5R8ts{w){%nSN4lFzIFdHJj1uOYZF8b@ z58S=#&*5v~v43Bh)DlV9X@t-nZ{e)t+lK<+(Tx`Gi*pgq#Tb;EkdZJDCLcB4Nau~B zM~KCk?MQogx(9_EGmfO(^QIJ>Y4tIqf;!t!%Rz-~{H4m1u6m*yEice&cNcil7B4iS zP?(Bd6lTf^EWN@b>J~&{Hx8)p)n1IpbUOb5LPsArj;7DN(Y``-ymF=e$BiMBvI5yl zKQIP#=Cy&L;6adwpB=tD1y2BJzJp872+2%8s_;Qs%(2{P-`i-YF*n&h6ru*xt)Chb zsq5}33VQ2PV+tL32i4o-w|oR(k66OyPrSuPSOiAVl)WgobPgJxJ7IJdycRNdx5DZo z?ClA(`2{e}O_a+&R^YE(9%C(5m;0b0it2LD5lwHBzRU z7(|X$+1Szt~Lno#;c z5tfo=MUJEiL#et0mP_fSuZ`-?x6!nX9~gn)-){&O##%D$G{3|qf>00)tefB^46bDI zp0ix&AsO9s3bSHv1ZFF`0>&iy25(?IP(C~+k^DBSF~W4#=u6m(rf3vgXvw~nZ7#In z49fg+KeA>`Q50GtHeo;3rljv! z>)(ok_Roa#p^h21IMRmiu=8|9Er<2(>~t5}9JgFcmn)}+n37MXrXb8Ai~>xl1m^QD zemStMm;l5zOo^Z!QdiS$H2@N_ai0KgG}{IF%9I#PmD3( zciYN@4nk@|w6{LNmEzVE(?G(DPcg3K8!R~pQGU;x4mCyU@=P*hF84FlBI%@YMCWJ5 zIJ@K&%8f)TChmg2BK>972Q}z}V{L_AbZ#WN%doi(X34iWgD!QLe_a zE48fU^~=L(u@+NL_{;Dc`mOJCV+KXthoW>iqj>J8i`>cccVy5$4qsf#K)baM$3T4R z3!{%+a;j;jd3}ip8#h|Y-_STCm@a88!{6{Q)|sA3%ORAn8RuZ0RKh(!<7AR2MSNxS zMhhierars~s_&dw)if2m^&fF3Kr9hQ~K}Z{*sN z>5tFBpi=$-23of#&LC0WVx=#WKt|B^e@J@|@F{X5Te*UHai^lth6dnkY2+J0rt26@->~S_E_z?OejT>1eNzN;>tP(q z*)L=Q*P(u4Yx9-)c$QE2txg>#VJh0hN8-|^U`db(dxjHcC z{|>%N_6r5VapybBljvt1`225!WsoN#3U8x_UT42*Zex7jX1_B3K+y(z;aBM&n4r#$ z#n8|i!h^yOEXReczcI9Q-eAf56O|t4jb5qz6CTm~jMl{mzNBBd7tVcdB3~aL&<5Xu z_#*a;m*s;y3lr&U7WDfI$=dj`hzAfl`!94{2@CG|3rhPv`?c6p??qo7T#ju!mT!AM z&=&j+0WbL>-A!U zKNSE0FWo~M)Usc^Xb+e1B?WTmUi;(&ON!ybaacQCl-KSXnFV!sYPL^glo*V;IJ0*z?~5){p2 ztx4aCtSrQOe(hN-4ueAwf-TjReM^c6MX)#9Mw-ul@yb9q z{OI25B`}pC`lf8?>Ja7X3ai|%Iev|D)wiaV>=$qS9j=gbo(0{S>eHxq7=F!Yit=q@ zzx>bOoVnkeIXGgtiGKKl(dPV7fR`Ulp?8mkBUt37PXP!o79kmQ)D1<6hyXRo9o3l4 zel2Huet`Yr%6@OI7ZwP?Q1&*Fh~OE7)h@?-*a*;8Mq&VPwTL0jU90_|eIPI|(41jXPN zR2=ATtX-dCLDmK2zHSMC&(L1#(M*|8qIK0amcz;vmh{7sc)w4;EgZ3BIW9 zW)}R!7pu3w*e@?XeKJjGfnPJ2(tpf;apt3b`uHYUd^M3yE&MT!j%%sKt?)-DzS|NF zbI~83JoZQ%+Su!rB{3|2H=5T9ZM-1>M&TQKY#_>>(i+T@0?}eC*srov1vpEH#w7L& z3kC+EM>7*p^`aoC3^p&}s|4wjT{@`Mj}3;>3`zvGHW;-u1VdtVBFc3v7zKI2B9fY+ zaF4gauT|{V0ru-+Gt|6w5`OWz4G2N9;w025CQ%PajSw``!zAVc#-qa`wrai0_Xp$L z;h}X1!@Y&LB$)hV$@);L_r-)-ehTMnv2D@gb)ovfs^NsD`O)@Ttrw=YgZbFpT>l8| z`xM3xGZ;Qp7lwTKR$g2)*q>*^&=fDEYGwweHc{Kat8;<9OAANQd#7vh6+;ZTrJTYzA`fQqJj!_cO*&}VQVti>?52N1Q;w`3H)N6B-((n24^az3I} zH@&649SA$G!)8^q)VE^4-$W$Rd(*Eiq14&x_L9;JS@dqjxihAtXna=Wqk3yAePWaB z3|0A&gN}S#>tm77d}CoQeYwm9_u}d?Er5l$B3JL-t@R0v!uuDw;U(9f3*9I(K_7~g zfxu^0{gWpXm~d{p@p|?)SUyi+jfJHTYrZwdmnX1w6~bEkdeM?ZeH_dFYps^GiTV_l zgtu>68+}_A;HHXKp!Cl2B(=l%Ruiw;?``zytnR;SdW25%1h5vgBb%A{RC+gw^=qcB zb>UwXcT(Ni>?{iW5}7}ltPcnK{y$iIHS8N@k#}1-qo&btZP~9TVAg!!FIa$YJfyeN zXCftBbG~=L7KcEP`J|n`GpINvg!`AO&!rt-09x#Nnm%{U#-35!lZJqu6QDGc()Hcc zud`x{a3qtvd~55`=f+2?O@l0I(JO=6>!VnHTMojr9MT^4van6Ij$UrB z|60Akm6i)j#jbMU)h7;R&1X>3l3YEe)1Nv%LS;GnK2`5^Y)p)tn%y8@=0wHE0L41-^3|MB8)qJsSF`15~Q(=csk%R-=w`a`o8a#PKk7 zKY&UXZO1?B^FXUy6`hE$T`p`*I}&itxwk7KAkULh_hQ@xbchMI?#t7^P)P+fn3UM@ zZgcVIlpVn~>{gR!Cqo*2c90oAe#)#JHhPV-9d*JO>O0av>D-ZCz>%g7i`6(hiA_{* z-c6~68sm7fIR(_}J!sTH%%irm#(;7BvGAaov$QjdAK!=V9CsLF*2Wa!$TSaEf}FFE z(hyEXgY6}`k&iF(Ogh!ljXECD_qU67V5{Aui>8l{V5;S1O&^5yVyag=d;{t*mZ93Y ze6ZTS*RAN0VKta&z8#E3D0-wJqU{hv2K`cl8t>?cbu1#{0vwMS)fS#~6jK`S4YrNX zPVW53s}pvI{*ofR>?dDpIzz3{oJI7oA&8HNu$}x(hcOqY9)jp+j-eejS~$O*M!OE7 zKkgsXy4D_>b{I3O`9q0!q8ooq!1WG;pxT6#v5kPf&biS+|!|3R7v`=A; zeu28rC`rahJc{zwvJFUw2!3aiYfiUswW=;TsyEX1hTu~a^Bs~ooI@O_)pw?qEP~6! z!NMbS^E<7O2)3X@wfby&@dQd0`L%u+bvcPxz8k;eJ2)DTeGG5vf=uhZ4f;_2J({!d zxPB6~|3UrbMz6c2_|k*p`Vmz3gCu3$HyB?FPwCUEzQwryUHuVGE5C)pEI2K(-uV_z zp#P63G0*=ARtTjb*puAPUm(XovC;lKf$DjkMREL3=zCJi|FEg) zeG(4j&u5Vb*WiE?`rg$4d;Ifcoj~hBSBQk? z{Yfh`PCrJ{$)8vQpF&eVdK#I}{2BeM<(5o1)fldx*zsNB?LVSM6WKq8U*Lafv@uoZ z(FHBfz!rXfUQ55}jD9u^{uRO6yD$~8=V1#67mjR66VK|G)AuZb?LYB-W%liFd;vn= zkCY3rL*Ji6nKrb-zzh9NWaIS5&!JbpW%Nl&h8&(8^ieeNqDZpuRDYLX=s+hf>eD#u zv_7chzMtVuclsHcF#8f~NUa!JWCu#VtWVW;yhDiw7yy8Y8`Y9jdtf({VHmG3~Mr5 zDL98;djl?yM`07GdJVn}`QQSwoc;vlAC1Ru(ZD0)+R&@P*onoKdW>4W_kKeUo9a=i zA_I;W_=a}$MSU*{x&gP9?`m(nsP9B?-9VN3uIuKW1H5SbEvzEqF6jr+lQ$88zUptI z!Q9ox_W5u?px3-1Sc|=sUfWv3vf4<_Ui9i+RAAF@85e3gK6_! zROYSQ`aHIwj>kdQz!&o;f?0onnU_F|7*1~A!tL5O7>;QAAk?k)0hA8{B52H?$XBCv zA^$rN;C&O*ERWrM2Spor14F#sUs}-+JD&Q?ajbqXHO1t=ArGxFkupwT%aNC$Zt`M( zD!8p?nXa~h@;mg}cux~5@pU2h`;z!WgQ4~M>(J>>?xTFMz5{f$=TA(UybXpv(3tE0 z(9a;>hni50Zy0TOs5TQ$-0tYR!vAULJG5p?N^~`JT6@WmNBjQP_fbVIc2R@v=!}cu zMHVrce)&Ob!m)Qzy(z8`f>wTuZo7hc+fa-fty#mVqN!n$jn;(*x`Ac;16U+p;-B5r zwEY=v0z0#7=$xnWp__IoIJk3&(6KJg#kQTHCB@y+cOflB7t-s%-2Dc2Qjg|CGwf0x z>a^-|RsAv_yEuq#5ViIUMh({%EduW=ydY}QA8^}Z{h(T`f#^j>t8_I?r}<~G4H!2J z3rV|_x4pF*U2AF>PdPqPmQn85)ZWy@0BvSUd%{Pn79ysr$9hFqV30Mw_H@=4EQ37_ zxF&vLnJ;~%gY}u{XTYcB5)A1=#OIkfcX9Q{mNxda3+WYq zkNr7FtuLH6AH!0b9*iL0K*woS5?y(Da1izLMSb~co)!^LANt~=-^ymF4EW-yFco{r zo*~$GU+iaC!Orw}S9q`>9!U8c=2NFoWZwM^c&ssxW4Lbm6*l+42fF5}`TQ@7#VHv+ zt`=bEqn_*WVEz-B3N8g0^4Z~DLz74mEvP0F)xX&sRpk*eL56`eEliV#AU48+46W&O zm|8agMKwe90_Q`wpuo3SEGmshzpNO8n?ZeEkI*E8c>pCxItsu6 zKTFFG0t;uMzE?vGL#TTclHqhOnk=DM_3g3+Q+|axX&UtIuPnt3Dac^g|p}4|6YU ze1yS5@5HM|JaNR21PdZGW^`y0w%Z_zpVUo?LE_7>!g6>;@ z5y{U1`AH!nJgIts0e*J0p%oozg&ZNXi(06PXeiFJtwH0;&eP&ZF^0}2K-8VqD6&TD zPxBH`9{T}dK&)W|`6fc?0+La(?j|gg4#c91suRHnOMuG{afUsVQL7pT9`vE_D|HDp zG!8@S>Ij!0N{Gcl;2UvpE?#e=wM|{TVF~q55`ymZY4>r>=(QGxB3gSB3&_n|pua=E z=;upgS{l01%gI`nTH~gxN0J_`U@)WGqH&Z8q`0&cg{(=(JPv;*lU`_R80{DVb;diD zc4}4eLElGlMrmzr=uW4cXu)jYCDZy8%=~D-ZZ>8=)_$oJnW~lw_@s##f-kZl+7F*@ zv>k@dX=CtJrF2Mx6zABEbUY1(6jCIj^jy3t9rBRxbEIPv5q=G#`tJIsYpx#%rdi2o zVQQG5VyW9>z*8OH7S@34;ebr7C|X1g-D5Of4UOih=2M)70mKhv(T0IkxDxh!b~2hY zIU6Z>N2AsIQuh?YSb9Gj71vI02eQeVdq8+6m4g1{di`5_EhEsv)jXc;pwSMmLO;Ej z20i+vfi~p%0|C@89ran511{c1T{B=6w3#4`5_6%hMI{*R-7;XW-^x{|HS7&kV3Ii$7wi%V?sA~7nmby#d$O)@A1ca2*rq`6U+^7+7nWq%rlg)eN}aJJSey$ z%u-n|SRX?T3?q(vagd!qIE1Z@(`i<3NYC$N_z&Ifjigw6;s!-`81p?{pdtgymn8rP z3ihUbSG4f!ec0gI1k*QZBNk%&Iw8kLAAta@+=Fb%wzGrK23l2D!wZztR|p1C_2EId zq0`;apYC);G9K*S1MO~W%|=D z^J0AYoRzQh0FA|7EiG23R_o^hXl9(BdsE+Pc*-xd!V!GwKqSM^$q^#pQFLJEsyvTw zwCVDoRuumTSk?~$GgrF8)3MldeFTe-gu$@GI6@Dnj+d}(|6njIGN0||^u;7Meh6au z3I5f-hOYEC3&H@#(cONq9!fuKgsdA1p|I;XXEY7O_rv?)I9=Bt(^GUlle`Ybc=OBH zQd`jFgHZFoMj$QQHpeL?x@ZVY-_pVG z)Nsz*V0o}Vw32*Afvt`mldK*BaW9I&JbLO5wk6t)#>nrq8*3$qQ}>DK=1@ah`gJtY zZXSV-S(FbIA3a7Z%AtJ2GxWn4Eq3!Tw9UjvwP4C{12EqnH8igp0gv$d$NC(a^%xH= zq(9Xk{piF97#3iHaK-+xhZYnVgpYR8Z8^B0(C}=4{k_&y z_AqlIndYOvBZ~~fL^(yW967jPt{jVCu%p=dMU$%o7x!~%PF3>^qXp5o=Na_&p!M1L zhBEQH2tEr9!gmj=)27T9Key5F4MT_T%}vgoCw>oze}4|EsZv8z>%)bHTJe*J|014! zxh{1DQd%dK8f)C#)z>BD60-=`vey}d-8g{)KQ~5E<*P%lS zY^_Et=@sowx`;)gyaUgNP-ID>b?g>?38Kw}YUoXMksi5_e;X0mcM2*D!~F&AL9X(BX+ z1+zJWmnwig6wo*X5@*phuoTkdDr1+1^mr%0BmLD#+nsw&h$Edd<5s)vfaD! zaCT(H!NGbI(8Gl# zkDbLvVk|w~_`UvySYMs?T7<_nWlwjsC=W!ju$qd$-k`Z^^?W^T?>SiP7c8hgxzG~Z zDLgsNC1X$E+~aj~%3SC?SHdoH%#q}?$=C`F=0_{*b>US0g7IV8`+`wNYewMK3maXC zY(_u-z9_;zwkUlLhDOQ@#z#EalaoiLKaDR7uoiOTFGjSQt05ji`T}z^Eic>wzk!LM zdaW_j)Amq8OJt|;gzV7=JwIZJI?`Fsa>}xii*W9)jdiLgqc49`LC=!0GY$XAD~Ph@ znuB;feZ=<^S~e1q=j3I7L!&VXB()aD)*36k?60%zCWsYm&1!#dy48M(*if4b%~4cP zWt^+iome|F%b=W8%9aBXRIC0RvF#h z_-hzV)SC2w28wk{m2sR4zK+-MgihnIQwSX0JZ)!E8iN~u4M!DgjlI0=ufDWcfy5ii z)Ap!H0@N3S<7{uuSPI&AQ|Ifi#-wSF(0Ib8>;)9fJ-IkewY!Yb zm60Zn!R-&5MpVr+D` zD1Cnh$3q$27vs6hI%Biu(}2q}vk{KDyA}gJ#8$SeFJTm3E;Hh@C-u0*cy+#6x5mXQ zly;Y6f>H)9f$J^umJ?5~a)+3Jx|Exv)!B^4zI9^}Z#R4eV5c#ORjQ>r{cZkT7e?dV z6+o?^7ShXL{{EJC3YePuG#mq`@mIMR^BK}X@i^No%V!Bkr9vn(UT zEbR|r3kzr2iyNY4XnQBiqM7n#L`linh~OYg>I-CC=~#rzQ?Qu4)?u0$2e$dP;VKlI zKeKi&I4AR*Ij&Bp9Cd_h6~f=6af!EIrAZ}o%Gh*qSLa|Ht@W=NJG)SU+3ZQHcBm}4DN~N=cw4!# znHq7u49-2$deZReX26Csql$DvIMsxmiIko=mfx^P84-Z z%@K5R)gs(WTwoFbKS0BF&oidM0^g>u(dCDqG35)i_=Tnj>h`Q@ zs3Yy-2M};*p(%l`J!?vqV@-0fIqh3$8stbbeW(eTsW%Cqnk8h3%{0A9_!uZD9~HNv zZU$2?K}xB?G)f3g`nWiXKG&P#>Dmu~(n&L##N{Poo6&fqX@rpCBcrKU2$~gBGrIao zu|I8|t@zWV_mtqO#U|XV-c=k}waz49cMxa&YLRKYWAZ|i$%lq6HVtn)Vu{I%?kq9k z@yecJFUs3j>`iA)&XQFrOH2igNC~9NOH5BR5+MSe@bW>5Fa5H&IGFA)F{M%4eZ|*IUuqJ*u1?^Kq^`?M;=aeu1H~!SW+2PWmhAd6llVp5Zl9q9 zpACR{+qc}*ie@i2iJxfau{EC-`&GrFbHUM5C>bJKQfjd@8uouy+zwx+m1yQwrf`b2 zn8a-pPD@{5@}t)*rkR3JEnHGnra6wu?i_;7JURqz z-M!q@f?g|?n)z6%sYFPDAYLyVL5i+xkkO$sQ)?lX=W+N5ios*oUqCU=mN^%rpr$xX zWw}>w5&&`NMon=BO{kD`0ki}ARWCU6Zd{oUeTcGjG-6~Du#v7+q9D}CtcB!v4 zB{`r81vgzpLN?=-V3ZkU-rVwxY9_P5~dy_K( zn(XxkOhEFFkfFRNjg$0^NV#u=$%DRGFBv*5!i#!skgBXjh)o09RH00q#c;ORm-cML z=Ok>!As%t%EKJ_zZp?OV#MCx$lSu?6uia$A(Q93?8%n+L|_^E zGumR;ISjADEvB|qcB@G!6`n7~=PDB=L(KVxZ#F&Vn6_rK)Z^g8gSIWw^u^OY__-L8 zSso{TZxZs)c@(^C8snJ9Z!bIM5kaq?FUA+5Uy){&fL~#RR|PNfr=rd1Sl>UI1XI$h zlC3ED6{EcFAbQaMWs^4*ziMhFLhV`LWC57j-w=Wb2Fr`hV)vuZ298+ZdhW6vJ z`rnFi&ME5)7x4IhOw$~bjk<_Y#FK5fSd1^dIVHn)(pZ)$m(WMfvElUWB~8GdON|N$ zXX9y{W4?F)D|tq|d~sLMJ;<#ct^5nER-LjG+XHfeuDxLzDTsP-r8tecy^WS!{ib9B z_rEFiR>oV>6u$K>Y2aSEhPtI}HFXZPsr1iQ2;C68$MZF`rG9x@eanx;C5<6Gl0rsbi^!`nm+k`Nn4)#8}objzhI-P-#2v@L?I%C{(4{1Qci38 zHwO5@=P;NnKQQIUDcaZ~@Qqfh9X7~75Vkvxp{%!YcL;J1m?CMV&o0xP} z-ioJC(PJM=+Lrr?G-G`E5WOp_>)KA1c*hRk`6VWd@?EA$f?!Vb-R(>(-!1h6=NsF^ z;!9D}QP#Nqrq;B%i6xi{6sdVQ--}xxrgRz*h?)l+mb#3m=z3UcXHMI5SaMUs zk4TkPj!0!08*GWDmFMB|)*V8@Q)*06LLVItw#3p`onZQv8dC=$VsDKkG~uXep%B|S z#DYgNM@`)Xnyyx|!2zLY0|z7C{TNjKa;?-ZpoudTXW4tq^oStY?`zX6A-MEwY5Kb) z2Xn(wqx|7eIOVvhy^w6raj7LEBhVjRzcFX}Tb$7w6iNNU@o4t#gc zNGi{1PoI_6DWFBsg|pHs9yD=bzQ0cPJI_h6JI^_mFM_)KB+28|+WC`nRTF=fb}u>K z;bhD`SZm+|Gj&*g)%+~k1F(dW=P%OmrG8* z>m}?|J(dBpRFoji=irMZ&r6c06P{_o13@vZxIpcmZ3!jaWvK+5#&;fuW??!`@2KUQ ze%TaAdoD}6L!7xL3sU%Q1TP=w^UcOMaws2|GaTjZyJBi9GznPn>9nhoX7fB|x3}Q4 zplruO&Ep!@mpj^Hs5$2mNdc%_Y^v1mFP)G2_(5SnT?dSO%?hQk7 z=B{L%v+hZzr~4!5gStKzpS82J2C2U%564HKyyJt!UY>N{lptt3WZ?S{_a)!k^ZXr6(8N7(1cPanyHp@ftINlPrg|j+Y|tIC9#AQBa{vPr;e%?yaN>t;=H%kAf=j80G^uB5$^@BJQN~v=@A(W*X+Fi2FMTHlzNJ zp`)Mz;%MP%JNr9!d@yw$YYC)}{iRW|Wh`9QqyR@6AQQ7-!e0nbM28W~4H0gEQdtmz z`}~d2?glF2G9_>#lsa`h{EO6JC5e7@)wQO#nFvW)^PC`o#{+~32;wQsi zydENHHfR8Ox&&3RXN5nk)ElMwlXQVs8mk!fAAv+*@Iact~do$FMJ&W&tkT^B8_bkqRET=zzxb z)+Q-m@QJR<#0VvV2E-}2ysXn<#*R>$3#CG=co>y81FNs0aSEe@be#w`Ztk zDTMqY6>l2krGv>vF$8&$Phiw?0oNiGaSn-&QdS6j+oBY48ITgKi03RjW+L-JGcjLq zQKp&DPKUC9r3D)w4Q1Ku4JeNLGcgPtjAg}B5cQoO+JKiiE*73lz7O8D7d-|4#hJM^ zY`kb32gfSnk|(y%O=jZXESt(LZjP)S6@3T3SJ1^$Ish}2#W;}mgue=Z&s zS{W}HR?tKP(!YhIwR;QTM{H}29`nN|HyteyVw=;DmWp`ncBs(OPE8S21pm&#W+675 zhO|<|t;e%P@Y%Sjt8WRV`@5CWLa1fy*3t+xx0ZU=B|*^(%;)CAPHak$YzL=}XAy;S z*rlooU)*|}PEDGI*g+E!{3o{UGlz7UE% zDFp`e`a;;nvn!?HX6IYi?jHnnNl{F4YeW(xi_Qy|VoH_FJ*Vw4TC!QeX9xl&KcU3Z zwlrm^Bh7O$)S^qe($_I!Yq}zyG;;x+GZb<4!D(mA7;bN8NJWz(yl9pQc^ESl@iaqX z(NUD5vZPRcmXhRH7UbbcZ)Q1{o<|HZW0-c$mV7Zyd`nh0e8_vLMMo)1(G}OTB+o$O z^Q5w+a9=d$n1AMrUIxBv?VTHpm*s61t4Yz(#tuqcqm}8l+!9okBl)KGq8M@%@%)KL z49&xgXDLQaAA1ZHQlfO;RA7MvRvC%AZeEW`#>bxGqg=@+)*?iUt$>r;}t@Zuh>C7XqGP@nyE%)R zP=Qq&M2VZ;b6+y1ZCK6xwjPRj9Z!oD=R;20*HdZ(jn9`x^iss* zVtd5B=TJe2Z%5sq$GF-1iez5EmrRDSu)8hI_lQC$3Bs~a!2gjs%#GDR`R@+kN zRrQFHBD4+I`ltrHE<*{>I6UaBM;R9&ak&U`gQD;CSnqT4RRomZ)o8l_E7>{1$j{>xW2Iozt#t z#8UL`a0OqGPsAIZ?werH{f9|rlJgxHDh&fp>y|IMAe?q2-j^kMg8oj>h)8I{>P!ck}< zp7BZxb1q=hD;QS$K4a_5QIK-_6^yOM8lw3qMcf48X?KoN#OqU>wr#ZHN!g<%E3ZX} z1Dn(G#wg+~Q%?J2jAQ^f?WNaYhCK(N)r#7}O+WcMD*bS@R6(v8h2wBt?BJu$1A#}p z{a;AIOd@*3S~4FR`51(NVz%MN%*g?tKfhqQlOwCRA)@ zjpjicw_@(XM8^vRpvN>_RMj>p%0CG4pclt0qa26u!ENyI(k4j$7tf-4f-=pK88jX3 zo~Ym(=@X?{K}*47#ho500^iJ?B<(ENV{c57Ho@!>lXhA#OHWqBg^LvHPM3FL$nkav z$b=i6{LVi#Brm;biZlgtQ4gm$yBA&FL%y4*N^=@#Mnp^1f#5Sl^!sq?il#Yxd*Jh; zEAKG{W8Q|wj1vU;794~^Kie|XE^pH;Fo7e<^+7= z^+sO$@gJf-t1ws4j_MKIdxT^N110*|+0yDZ@jH{X$}T-4Rs*qYqE8~et5Hm)s% z9lbjT`z8K+8X1cX%-&SEN1MO36nTz9A1{z?4NJRfFVxRE7hA|h3(zdPIzk5@7D$s8 z$`?a9h0>nzmi?ACw0Iwk^TQ$~k-B!$g;f_N0I>;L!1GVxEyU)HutMXQXW*PMi28 z=6{}I^Ou%Lhca=F9nVTTPrOsse}#$XF>J^Y@AI0kkgdabn9IDuD3?W^5GR-!}O zt&k>c&Ig(&o-V7Lt_mF6WaB3dhtCk;J|bAe~hKs)ZWlYBpo*MkgY()wJA@S?+KF~m~J zWjo8t{h$t#TLs_<1Qq8Q1=96$rJY=E&KFOYzF~$%|v3 zX@t`TJf|$T7rT0H%y5@<@_1hAa4?FxgJ1$3`4yf0{TgK;EnXuvt`-|jXVyqFhZf;Y zRTp5T5!;up?Qv~JGpeMs3(hz6H*8iEmcuFEw;OL;C$5!t>p07?wbJ65(>h&3sb*J6 zK8Y3)L3nW?ZY1)Eog^{Gzo=}tHwPhzjh!p-I!>=uy3qD3a2*^jZgQ3nUXnIlx#UAv z!F;(GZU?Ud@3WL^*qV13nVh-u8a&N*>m|2zSUonuKUy!95422re1lYT(7LO)OL<0T z*Q2ZbK6MSIqyD&T?@(MW^t&zSw`&`vwTro0Nvl5CY`BXT>;9gkeC~=DsW;J64)#c3 z%>T?)NAA^%_>>OOuL&)PVEgLI8N*!MS+RT3_1hM|hVbIwQD=ukFUG#9#c*hQ-U{4i zS3Cc6*Itd)#kysS^1P>z7jMZi?=VCDmeQ%w@ddQAx8wsXHl7D;mG<Yg`MuWM}KN7h4UUB$e;>7%Z`FKNLFwuSnz8M6-o}2f4ki z1PP^&ds|vfDK$9IFMC_b5m*ktE$th(+AgifpV_XA46zks+_>S>Cr^DEuO0A`H)A{Y z{&6|RgLFHjOmP#ZIiXtOUbtn4v`O)U9LsMlb>1l%sp6edxqjR!?Ev+7M^bA%^uis- zcO(ILzlPU~?@DJA1@B5nOzi1p)z@gir#{5_llIgyn8MzZWdG?aHte0QKm$`@lMT`0y!HA;pMyj3IJ zxJW*#WC^h|j!Ij_d|Pp# zLD5-999NdRsKlhSV(ckj#$a^+R(VOK6?}(N>(Y7l@ve-N8@yJZ%pmI6!MJ}hSjpOU078!xcbo|3c$`WnJ&)S05@!mXTk zT1pGeZHPU4T1k#|w&DQem@{)e9CB6{MC7XN0!RGb8L1|0;MiJWPPDU(UX!OjDb%A2oxXv4 zldN#z0(1WSdE>?nDtyA8T?d?vqrzo%Qg&?A*|Gymdn_&^&M9$X6LMJ$MrHEMg6R;e zH6if5&nX#Fu1^*Xo<8php?Do=(sO1U%fEwx)BY!EFk$#cs5)AdjFm9cWmMagg*0&B&=cZHw>7{kBd2Yf%vYD z*#aTEfL(YrxBk2&1g0TWtqlYOI_f8kL_=-3c+8o8H2t*H9L#VCd8AxW2G~Y$2pzb9 zQO}2d`fqSP`LBR?@iz3So~7PwXyc2izrk};Sw6#PxZJ(e#}?7tBVB9-7==(O=q98L zrhZnGNlT7zymu)Lriqu7_9|`CWu&;?8|O)vFDVU12(;d6Y;7{0x&C!o$y9@t=A}60 zzoL~G8qk8gt}3lqY`2ZS@T;3(!32j~iIfXySlmdsD&3Y?(nuHGF8orzPIB>Vy(weRxy3 z@k|49Wsh~s@uBe9=3oul^2X=*N~ki=93rAvUSDADDWh0MQa6TT1fa@RO+0Pjla#MF zcVU2Z4$zaiDoh@rCxfWGz}%50&Nlax@g~g$=0{}8v02DeMPuwe^BH0cLXgEuP?IcP zA_(aj)TEG}1zBtZYUJPrq!gI@HV6j}C65HYA_IbCsFOUc7#2h`kV!!_3$j=zY)QuB zL}Z-KxRQ+3naX%I%*P%DYJJ487!UkDt;`zqBrg@J$iqODWSOA;YLIGYnR{u%fHA4n zh{rx!*br?8lVpj#7(nFo$ptL0EpyDh>~NAS){_A~a=1wz>5dTic{}S^6i1h2$pkn_ zE|o=cz{%-6A#G+llV1d#XjCgt;5T=eDz*FvkrRGou zGu7M`$ruJ@KP%uTfzZUkCbLS+_&`OyE^N&;KX+QQ1#9AfB6C|WOeq??q*^X}n6-3M z1~p$%~a!c_$IC&{5Z?pK|>Z(5hQ8#EOUR~v<6f$jvYxyW|<#RaU&MA zw6Yp3EHS5Wbg~cTnK!zq7?7PS%pIIDAa|}Xs}P$4=wsR@PRl_jw`e&fX?gN$q`GBb+gKYHaQ!vejAV|X|t4b@wLE=sX12f(@-@Klu@wFxB zvk)M0=gQT=r6yvKkoeR!OTZx^PnVnVWoZpzlKd;wCVAc&1Cn(}M~-bMgFvEV+RONa zb`VH=n#NEdS<1#yAl;}-iMf?pu75&-+_(kKDr@i{36@bsd$g6+0R@s}`F}xyw3qiE zU?5rgXemEiW2-Qb^GO?O|Aqr;8-sHBRnSN0@~d=~f2fqd4GfaHu2Z#J&DaqOGKnjd zBh;hIfMqSX>jAr>VnEWyFs7(zR|4>3I4!yd7)j=w(52sj5PW7mAUgB!0f~?4s3Qa< z8xxK++rV&yh2+c*u#h%p5eAYmieVd*rv?i-ohExPRedOt@!aeNKgtmT($+_g5w=bN z-eOZyHUM$&di!WM>w^X6_Z^TTRb5HnWCW}x5M2uvOz$~w`s7(OccJ-v1{2BS*93(4 z@&Kqk$+y}VN)z>FO9MtEJhlFIxX3;XB9e7H68W&-JPn{CLzu}+WmKxGHbydQy2p+e zsim+})Vz%57gWGVo6LqFk51WwLz5jwvkDz4<3!#ViX$dws;d6b`8c3T+S}faAsJtT zBQ~396M!V+Q*n60RLPDS$@o3eZS=rfxn=neHCG9~w|*j&WCkBZ*Bkjetn9nZ^nb$+^#SgvjSUUz%JM zvNWU#_Lz@-zO*G3g)WUEphZTIspry2MB%76bCJiIH*<0Stl83JO3%Q{=K3AuJ!xP1 zA~&k*FLFHq*U<_16mI=rW3ufuAPlHN3KGEB&3YjGUC{z0+0tHxP?FezT^ z1udPrd=GF;q!2UWc#%Muw9AX8?jJhJYfb>16bsIi0cJAPCN!D`e^i_-)D5VUVhI2^ z8A%tu$KD5)=Rwr*c&Qwa_@`QyjM;)OB*PG-@=0HC0A0ltgyUNY{dVn0C& z-%kVxrFgA}(||S^LSuWO`bGQUllD99(u`L20!nDUwOBl!;mjHgr5D}bRXog5yaq4n zMbjhrOv zybXhf@3L?N$`$`B7N2o~g(Fpp@Bi5T4-GjW^$bucmkDLz7?YzvEfy~(Xt7pfo-}451?j!BSZ(*%Dq{fKf)` zbIirl1<5=Dh?I*QX~3Zr3&i<=J{hi-pw06@MsX+sX8{;xnWHG6PXg2AIG`Jg);JfO zCj%H|bCspyvP(!KJsnTLro>_Cw~oEQ0V>6ZMv#ZEv3^%9zU#wAtsRlF8STx0vKF0? zMmJ{xHl^5GxEYy5={3yco-7s*k~D0}KHoH77SDZZoy45j#1mP0T`UXWNc+)1(jISpu&q9{%S zyd=Opek&H=yYUEMOp4D>KohPJ5oZC4qyr0wjpSMmh_B1Vt%REM6abKH#>PMz<-GwF zuD>j)HD>{yq*y^hVc{07$K#D9mGtO~gs{Z+;%&fsJUObsgC9tfqP_uSGJ(81X~p&f z$fVFTz?>9YYTF-@{Q}%%q?%9M9SAu4E)ac&zAtG{@t?($1$ls=6ko3acygi;`^BAN z@hu%2_m! zNk8g#SF(9ptUrDH7cj@K-IZF1#{zS5rce*yONzSBS%50pAYjQy7~J`TmpW+%kS4{p z@^~OM4nQVFcL`{c(NzznwgIAKYe%gFtfbI^K$H|`2VnMbFiAfu+<`IXid*|fcfl4M z-QldZoEIRIesuWd<$SbarJ=*E{h_;&BJL1wB{(R$Dt$Nb@6(H*9qImfqrKM!n2rmJ zFoQP63~WkKJGg*zO)R3xH;ZWHc?3`?MemH$0^OZyK%n%d&L1?iW9R>2EYz<7Kx$(Z1u~_mFI?u! z9?mj>LMiq+=L76yApNxy9#Fj}t~K7*Sww@*S%5+bI7v_EN&<>9lwv=GVL;lUj!ghi zN~h)r_M}4zIK-rmmUvslB`I(w#k=z;28Wmoq!K?|lf30)5iK{sCfCZDr_dE&i)e(o z06HjIM(E#k5gIFr#-)2G4S(e?n`Vl{a|(>5Q(-8*Hqvo-^YQgl!?6iP4Z za0RX)1mp?jL##NQH2_LKdMVH%`cxVUr6)xPSw#N=P?S;h;VD&eFpWO~6vfpcl5Yxl z%4j~LRyAX9Mto5CqeoEqx(JC4u$7|X0H;#i!2mjC6isMm5xp}&R3`B`khjWzeO-aw z;kwLe`~kXBv_1ckgFvkm^WkWe>q9M~X9!vh>GrFA5TJrOp7qBltUQKl42^Q`0}a#C zomMorh^u-4TPC8&q8~jvOi}`XTSn89J7D`U!8K&&7jB6cIt_rA;*_}OIHoGB)YK`F z-0#BAzaK8y2S8s=69fSDQoObdgiCzRBGMvy1%SB}j4K_FlvEf9m!kK{AuSI@Sq2Gt zfF`;XFGgELPZ$`M*a*7}waJgb6A=HC7`zWIO8Nj?OR)q1vJ|TT3`?;M097f@{J^FZ zEBIxcWcvV1DUJ}}P>P}ee#kK=@xAgEmLWooIG7@UCq*;LX~3NHrTmtX)!`8Uo(v?4 zhT`BpPXsMl;2J=WER}i&e68ubwfIC~J-hO=m!yfwpuw;w4#Nad_VTy(wv{35P*0JBP`|=AMN4|H7dNikxe*tW;!`xp#W4ej z%obFC0^?l0Kz0FAlG7|Lgbn~EW;^QlqQ(+;5u+^cH+1sD4bDc2184$N)06r#73D&C zic#qnakEzg+VrG#>C)T;6wNXra}89}kM<2>n;7SC%`)c_OsCRa8rT5ZED@6NTdqLX z#8m`VH{7=ismih>IdVj^FMI%JQyhIfDKIs~c>}ana#{|P8O*j}!svP?9>jcf$pZ-A znNnMGQGm`Atq7;xYi|+#cpzlP(uO>!Ff*RUy|~=3>KvW|p3TK|P-Ct|T(JN{6W`KeZ42o>xSR!u$E&%L0svPt zij0>;Arr59;0sYVFmx&*Q^+5no1&)ys7=vk0$>w27+8C^;m!=>!L4YeL|8*2d5YtEXF6yluEQ6+)I*^KQMi({Eb0FG0f>o^V2n|u>G ziB{h9aN1G^%VMF@JOvOpLzwtB6miR=nd2rjX8{1G=nVpUQ*_Qb3t%^cR4JyvFiSb? zdvg|`aK@@E7kgU7T|^C!GmIwm#tY!pzk4*N*uS9`4pP7;&W;?0b3|{;wQPL2Zg>7{J*Sbq!dW;u=kZ*7Tzt1EhHa_?n57Hc(O@fNY8_32e+% z>Nvd<|Dlq*!*LgZrWr{3e97(R5rEVbEwM)PpsB;8sgFkhO*4xAUV#J9fDypL zh#PK67PLuaVc?nzhBuN{r-aePF<1_+XDm4*q`8Tw1=gnMr*Rr^H6zqyZUrs$k<8Zb0N=wur6oF2m}t$egJiE$P{YBr5qm}8Lvs~JWGk4j|(m}U$m_kr<7KEdSo znB=BuP@AIC@jQUC89)O!YBjj-0+1N*vCicK@}@Yx0GBCF0d`o;yvL>D+9Te5TpCpx z-ewSWTBIrozLOD%m)*GT>$JL{dJ zFC=+?qEuHvZHir^L25Qv{W;7%?(7u>uAYZrL^=43U>02yj*SUOO|k7j%OKCGmNdZC z;=bP}Q>4b{DS)OaZd-5+&8AZU4YqBnB~B0@GhMQ_9AHAkG_$GZ38^c#Md9)K#3v{WW+4(8SY=S1bXMn_P zL5F8x11^7-wBrMC%%_EB*Kje##Rq7j(wv*QVlfz{0xP;da4jY=B88DgA zs!y+_NT9Ss(zxV&Ue7pZ1nA5}n(!>J#Xb(!CD8R}oRa}b^L3$#xhM@kGnSn_idNbl z3lL3leApv^nhE5lQrsv{TZj`DKy12E*AQJe0MFo8%PTQ^DnM$sWSOPXsuU%u>h)z# zW>@2Ft+J)2DlPw!4Zxe;>NLljY-=ie zo#Oojo~4>B1F8;yPVtI`7RzBdeJEua+|>JuWSs3R0O%BTR*Mi95E_l+aEe}+Jp#a+ zjYj};v+)RkY>M{QF3OMt1>$!W&;enzF9#OJL2o#-2D&LuM)n9`YvNnV7K`X^Yq2Th zvmFN}fawgPZF$IT=yu65)A+E5u)<<->=d3a@HWM9!BZSxDVZZq1GXkEOMQk7md*Ig z6J6{Cl+$cQ6l0%|jo?yf~i{bK;^{bnC&@NyO)ZvvCL0@HPD8J=L4 zmRiCcrGUkYekzqTmZt>}r>MoCZE#Er(9K{~yfqeWwHl+^kp&o>;=u+$Anov*QRKH; z-UMriLxzK zC*MQl%z)mEkePEFd$=jEl)(4(z&35{8JjZMJdbTS7hT12%CZd24r$JBVzA+CC~Xb!R|y51a% zao|R2wa;ll(-h@%TJa`n1Dn&j<-id#CI2E5D&8vLrH^E~3aSDmZRK{H)*@%oqNR@YAFMtj>L%j(x8)4&CQ zIhg+YIzE1Pc{B=i{YA;_aTfi59GfJOfU6ly_ddbeQOm=f{${ksY6QSdCkxLpGy$&Z zN9&5Ant-8nr}6)l`h#l@=L6QJxRlf)e5mUik~?LO0J>&lS;BdHQ&KK_3P5K%O%@y` zbLm@BhiWOBQ`}Z*M?s6=;FwM`J+B8qFaw18F4^Ynwg3}Tw1QkHz#}8sY}l6SCcrQ? zHW5nbnD`9Bc4ZiBI$2?s^G($O4-AP zs2rOV58CqttcAls1WPOdKvUdf;xrDHdG0#YW47$i1Y#bCY zD9xi+q!DiyinKv;veEUaYK|x z024Dxt?Gj>9IM)ffQ~6T1Uv=sF!3p7);N{j08Z&pNZ!tX#}s=NU@3MeOh4uTB3TXm zX$cQgbbWaWKw&m4%mJ?wK^zLxVPVes>~0|EyD|!{bbeoq4@Wo9pa2Awy;$LVK*Ee~ zghj*6{5!xLZe!$-naM&!BV&%12{=nppa-QdLVG%73>eKSIW0%a#K(&dVHQSVu$ept zg}yoh51AaU!6PFMqbY7TX^@%CRRNnBoaN9*p)idKVECHA(iDw5N5KSmW)RiYN|qZD zdFt8_LPP1O33HZ%#p7vj9+Qq2I1Q+pqU#CB%(moz+|pa9Ifv0)dR+2*ILea-qv=il z-$=fn7AsDyoCX+8f4Z^~?FSeij?v>zxy#_IpZ!)cik!LPTgeaLG~jEtP*pMZ6gEwP zkLgAA6I5tcQ57|24!kLDM%g3mYXnUchuU;fK;Uh@AhZSqbfMUjfHmqk2?qstPfDX5 zu^ev`2B8$=g-fnuh3vEf!@{9ccv%3%>C_}%KS*|%^8tu6f(m|+I$n$52%Vw}&m(}u z3DDojpjiSXDxc6?d=f&^yIjm;&PeCa>&l! zw&BdoB~7L)hRs#rr5SGN?9BkS$tD(zM*x5` zl6G8XU-S4yG}#SMoOgbaY&Mc)(1!DphYVT+9_N29Sn?Sjr#DspDvcYBWwl%^o{Zyh zmN-TLfK%K;;{xvdCT+uW8b{pRa8WvR*CJLq3cYnn;sbPMZ&r12LtaDNTqdN|AU5HQ z;RZg#4ofBf|G7rdwR|IdW%+Fl&m7pBl8t691c*)X5P<_>PP=6pOiQjyqY4q3bo#m@ z^A4dvJZ*;?(w;7mD>eMgYd0+O1#TgR17^N;Q`!bcbT=xvB^@k*rlDq{B>hN6%@lX7 z7^e!DSytb`s0I)DFAZ?qAqQY)Pbz4>3`qIw@nZhr7UZ0NcS%zU_`|a2-;n~Z{b3pM z?_A^lwDkE`t`+p=C3R{ zoZK`kv7HyW94!g0$}DZ#BrA(LzgrUB#s;F5m6ey9HDgMLjGXN0d70VMrsw6Q&zPK@ zHzOy#Lv~)C)%wB1FO&?ot~pWiaX7`FDT#4UPt8uv%BG!XOXAyPPMe%Pb=u@9xs#`6w9m@R?9d@I zH#a9|#+1oZr%#!hn?7Z7Mo#-FIa4X)R>?S8{JpEr8gsM6;6X0YrE&CJk5YVTcwdQs z;{RjO=~!Uta60&Ii68ldl#V9TO&~W-_^ZU7&fYEYv7Y$5B;3;_i{`#p662Pa+95TI z&ZU;NOz4o8otrlWHEN%pHDyNbjL99Q<+Pui(;+Vd|IeG2GcA*m=-lV1==P?iANGNa za~Y+vt{IT9^I=KLHdAsSVe0hu8SSTMbjaJyTzhsy-VPNUDruMERb0sQ!Z)mCL0B~AmeyQlpf);5_8diGP#h%#uV0dY%t36Bz zw6lV~C!W{6$^z;Bw9*tScsh&afru8?Uni8FXd=sPVf}4# z>Gw{=E7MBDMCmABqdg@}~UPW&>bl-hhF0_7${k3YCV_xX;@p)8_OR zc&T4fTJ0qyb}n!m+B_=8oi>+ey2ERlKZWx9PacbJZN$WqUrGyAsufbbz5h{+74<&u zD?}IEEp2X{xTEx(nR(>_jU#tx-ZaHLUE4*y>zT$H=k}cRLfc`)^sCJ!mz@ zm!*q!l%omJZRpC5GNFLh_;zLQi%D)QFN?9>?@$)yK+Lp`>`|60E*Zg@VEtrn*%}Xf z2?)d#>vDbBOJaRNY;7HAD%&U!tsrK$6jC~uHPyQ8zh#|7>CQZk^&!+JgCXVn>;%w2Wqr*;%%Gkih7iXR5W+gECj45goeW|63W5AMXD-6}XM{NuTnm z;^N4>t!;DbQNBLNPdagW2SS?#yTr8g{8nG8Hl`j=E+!}keTnT7l zv-+L9ycW!#9@mHw*?+%0RVXHc`0m7%3U^xPQqkW!{z3VdP5%Fgu|murF8_}bLg|Os za{cJxYq|c770K$=wBmiyPNJ|O^rJ_G*kSexcqCUequII&&&FiYNL_`f!nS1Ab-IcO zhnRoP#EMK>ilZu{Lq)uGWJbj|!gOE-@ruw{q-Ewws~@SrU71%ZdRf=zR=g&pX@n<% zn$M_cP8GQo9@cleRJ_$Fx7E_K;+#Vp@ecL0BCi{wx;vEO;f&+}>t{nN5*n4uOKOc9 zSQ{!ee;0UuSdJ^YT3bOM2dgoL(% z03nSOLX#3u2p}zp1w>#;782O(Zgw|~5CYOHj|5P-qQV3f6cmj~AXlc4hb{W(K+%9%4~PMb4x@7=U9BS^_v*u9t1P}w&IjmXe|#+Qm} z5C6Fy9W1r|n3D8RRK#SJ16Mh?KHVEPIcopyulbP1ZI!j#nQS!yifAldQhT4j8rQ-i zxjHEZ^T@801~$%HSv$_}BKbvH30zy-gR!?dk%?<- zkNXADh+|dztk*B{-L<#th^Pu&P-FLo+TV3@)2VUjqqR?QdwNRN4sRT?uXZbgu?7n<)nQtPX+5S5 zm~L%6C2#As!9%ddw$nDwW&IjUr*E9hjv*QkE!$Yf>Xm{O8~Ki0uG%;NzsIx*-;r9T zWGOkzHwHA$Sh?|fhIAvgspE#=n!7d*^I)LVZP_?p`RJ~VJSsMM%f`W;CTp+>rcIa> zOt)j&jOh+ccVfB=(-uryF^R^yE%lq{dHQb5*fz@ZYgN^@RaJMds=8-Y)xD2bZI3|L zeqT9W=-*n_QTh7dlbu6D4M~O^o6&A87KaaA1uf=qjGViXm%` zhi%8S1Jiw&?#HyV@p#y-TRVG36UKi}hM30Mgk4?DHDfCBi;7KleDgBBCE3u|r2X#i zDNl1aOXu}XG4%Bmjj=fGmCdzREA^f5b=LEX%qF|O(=c^(cdfqHbV5zvMeU*1tl741 zSL3#I4?KNsAGL6f!{nUf#6H$ir+2RfX6rno*|8??vj;Feh-r6Y-e(WJzHQuP<0p-o zHs`XbSNZMWLFiho;j}TMCi-o;rt>WiV`{+k2&P9d{TtI`m>$RU1g1tzPhxtivGXl^ z3gVTiA0O?$bw)2}BO+phAxv1d8zFGb!w>Gk^facunD$}Xk4a)WfaxHnXD~gB={Zc# zV|oG8iHQ%{sabG1ve8z3_`6G# z@7EkoRUTS$_F#)-z__g=?JEyn2uq39n*grzgzakjsL1iN+LEKWyrUh&8B>( zslebc*^5jLgLS^a;WXwiGC1wH`*j$M7Ob)sn+&DSB6E?m(ok%27Fr7&2B+0vT(H1y zT3~dV49-GRaT-D-pdQvT;5RG~0{)NVxZdDxm~XWk#(3JO9A>c2TZmXV(hSoJO@{GK zlildVW>&k3q}^_;9F>pAI1EJ=tedYQR&1;kmKnVvx~4eIFcw>zDvZT8vuUUc4FipY zU(qNuBqrEg9Gf~~feBxiz96w5VU>XIPPbR~GgQ$i>VIWM`<#N(Vq2nCr8dWR(dC;G z`}Mn2YgLW^^bgH98xb3A7Hvr2#FTeBLA>(wB-xRPp`plOuvncmdxz6rn(r){XEqt; zRT|Jwv}0+3Db1jXy-IjzA+~o`+Dz)_Nf0Tc-DEJ98H>zD>Q`1|#L3Zrgl?*v&~AYn zI#in+BHLoC`S`};Lhm+2^?ZD{Dh51o;jO-qQ5eTkH+lgpHA?KKoFDPom;s|W2lz4$ z&b!QHcdG26GK|5DZ|yBf_%ynv)KXxwJDgT)0nr0rZ)hnnS`4|!PYe1w3}em4VpFc& zXe)H{U7BGGttI14B(8g&c9YF+a^P|zAFJ%6(nK!?%KJZ9t*iv6*QyGX2OLoP?_Jt2SQ>svBErh z0VFjcyc`Ccu?YpQKouvI%S$aqC8dZJ!Bie8+kjuJ{B}>0GWWet0)s9?DL2|2V*Q{P z=v;#gQ&5ViBfX6zTZZx?XCeJEnblX;YcO%)Dh*B4D=#cU>T9Ty7`mrN^D>+tN?B2G_XIb-0DXjT6a+!(^U6RPC!R2T|QbA4?$Q4ccr7 zcQ*!xA}4h*lq37tODz^$vnHfyAuU#e72DfY$<o<2%=5G7Fr_xaHT}a^Q%CV?km5k2sb`$kqPJn>Hnm$pLMLuejc_zbz zE2m60m@H)MG;LK>Y_pbo*}wB+06Ja%p|ibI79Ra$}{#U`8L!#ZAhnb;qKWeRW5JhS*KcQaef% z8C-Nx)Nj^YM*N@HFU6%5+^W*eiW+Mx$3EEAf6Z`_|A7@KeHU+yHUVs&p-wG2h$HVm5w^wF8#=Ug5kZv_rTvxnbsEXg zBze(X-=+zTM?Gl7?+TGmQf{=9%~DlJffb9;?JQJ|)!!Z`mfaZ$f#TfE8PIO)y}cl8 z%encGu<6XEFs0$+d)kY1XD^8Q|Bryukb0)0IQn2JL|_o6JWBjj9}M9gxg$+}^caiC z+n5ZU(!Hfn^($KRq?M`f?Tl6?kN=^MGS{*_OjR4HWO!+jJf=tW0X#;c$)7^GQkEaT zzY`=W%R7A&DNelI4MKamkZ^n0u5F6yB)D99WmL)IokV?dJHRDhzduqr8YuB#r`PvU zDh46ic&P1_ZJ&P@grhME*qGzQIXF?hxv%A~7`m5fK-H?cGI;zBenvO#(Yz65?(WCq z{-QI|S*fo$hsTzt^^rl>VYci4Q2sp4Et%lNm=l(cx?rH}Fi@hleA#{MM8dTp~<1O^zjHPC$%flfaN>9tc zO#yM7n;*rf{)EHYB`*dmr&jG~*GWS}-88uVL|eBh_4@>+{>J@n!c=DoV+r`La(e6j z7!~^(ZL+j!Pcuxyy%dV13Aa<|9gJaNrWAEgg&QKXA+a3sOhwl)e^JvuohFw;u7tY} z#;~+5_=h@mZ6D;G7K)0iWxyPYV*Od-Y4$Ea#a%ggUsAjhG4uI=aFn;{I1!9~;0lW6 zZ^Zz<^b(gyY5Sj_gEI0=>P=32_Uu+WchXbcwYGXRa zt-R2p72{W!(67afxm6hzaWGPx+lt?ViBb2&p}%_UTm^kn=}WhDYYlk?Ld_BV8*+_;?&v^5E|z6u%6gez7V?N zOL9)O4JNpalyWfPi(u?xv4z%h1BOm8Fr`sb-TSF5GV;<9fS+g> zvL_(O6^RoQzYm12BK;(}ceb=e5Hw2-%e&nM+_7nKdevVsnkgKEyF^!TqlpglnnDv8 zjYF|R?-{K!>Tc4t_)85A;gX5^xH5>@w0K8HCH?c~FwXsJ3PiQP68ot1(*{$PPdO4V za=H~mfJm&m1XM35B9txju@xdl7?K%Qc+f;9X~K?(rv-%(I{G(Fdk75sDqr64 zd`yke%i5rWKxEStsmPkPJ7Sf& z$vfJJJN`Kd!Y1K7G18u2T3l*YLxQSWM`w&Sm`GEb6}Jv<(6}KY$Zi3lt&|r1BdH|c zRB4#_evBf=iwMtDl;vVWcX8^wju5CE?el(sl54GqsL91IT-uBBUCW?4HED*+5E*h2 z+_GUXs^L`h8Jad{swF4=XQG%SseUcaui0G94R#}i(Nols>edIB(aW0%(GIt!7ZnTR zkCCW8&keghNICh^{*W5-`Z2<;Za7sEXq?oNfhPOxCW?=lcCnSWeO4{H$2_a9I#L_m z)I=@d>Cj;u zO0kuMR@18LjMU|Gdu7HZvbl+X%i4sw=FL$IQA{l>$B08M8pkm4TIX~K?OaHLrg{iS zc>^6IV9?NHA1d-f6H)1RoBMd%8c&=}gNd_MgJG&0<6?N1A>zhKRnZuvbh?q!(036G zbskL#58F__>1+ZcYZ)s4Im@l68jTJ-z)-g}%J`2T538X~#&lGmi%b}HF_T|;8Tvc( z?D)A$v@RIc#}g$Y6DoNdZNXGcfqtv%w^MwF+)+0s6#XWPfIBVfi#F7*of04tt{tfs z%{19vkqPBrFDfBj+(@8%heGU82&BNL4tO(mBu=TxQJ6Yzs^RKMd`MCdDur;eXtfbV zRSVclZB7jP;6_q8xZfi3)yya=`)~(sw(8VbhT}LX?}| zf4hh1-!TvkF8Kg$0#pn|4x$uO(}Zmc*1yTTd71sDMt7Ql}*2Ff-ys3@zdL#soFjkFcoLPPr}B^jpaw{@Dr!HutWl#tk$D}B6uk&cJS zYEQTMFeIu6!m5~6qK8o2kC@YeKDWz;kvolYUSOyxD8&z-VzgL`rQo@ypJ5Ozj*{UT zh0d)<&BOCUJU=FfPF*uPLsvD3s)E(kMIGecm}+c}VU?27BDA~cOyPo~f=LQZSI?dk zG-?f3od%a@GMyyDbx5w&r;b1|P?o>{c4Uoj`FILvBJ9KjHxIc_*qb_QcFEP%<*I9y zR7TU9jE){s2Ax0j>YQxyPcJ^U6)ux< zVOp$HL${i~8J){u(`oZ^b{>0cugO`0>r zFU=(K{fV2#;&gsz=)C5}@c&|Z6VqFm-p2F}rgt$N$8-YIdzemQdLPp%Os6sZ57P&j zKE(79rjIdwg6UICpJDnO(-)Y|VEPi%SxjGHI)~{zrmr!5gXvpL-(mV5(+`+_#Pk!U zpE3P{=~qm@Vfr1@AGh2X4t1C)yM(fTQr3pD0LlU>3!*HTvJlEbDGQ^lEoCZzcJx1%25>bN&d7## zqAnpGfD8+Wcw}M;hC~FJ!e_)lVgv(7F%~dvIk&hpe&xUo|N^XEP=A#l=Y#k zFJ+08^`k6_vSi9qC`+X*jk5kA&qt=iu`AfEy;tX?gCVr(=J+gS*?Wt7rTg9-pEc3w zbeb-0=3cotzbPF$C3(P1Heu^omyd6*gIqH=9l9s8fkoa;nGh%bRhtRyg17jocP8|e zA^%E;=b`o1DjJ^IDephlKU$8gO@|W!?4vX)a+ijR^p3+IT8_Rg9m+4^um8Dwl!2Jl91#aF}5D*oQ<7pMzgeGHOc(oM0>d*GCkVhch69 zk+x*c0EiS%V<}(ShCec)kEfLkX~=+(o}Pl15a5E=V;NFLRwHHBv&-WCd&@CzWk4VH z6n->1M%!Iw{se{%a`cpQYgl+(JSf*^m@`QnW;)Fmi4;>WPksd8qYC~ zu=F9Wxm3_T)?hgDOdok}O(xW^2aWX9(zC627M%oUz;w$moy}QrCkLbzZ@4Q9MzANJgjRfZM;7d2ttAzwaZPeQd;lcN ze?E`}cQBH;x~yay78Xr zNJ9U6eTPUv7(Pkik%!4DoB@GBL=`HobFVdBKLG2070x+zS3g=OyFEWa@Wf<6FEM903>oc z=o{=v7y!=<_4E+>23ru~3ib%4PlKyW1H9Kp4JQ zmK+#@_uo#17P&<<_FR%ZAtdAYgY3ecL68%FXCH#LqHHDj~kMDz3aCH(oW8PG+1(RLMt$p7SK!%b{|pyv!d zxitgyyd@iUw?y;%?#2c!u&f@eyl+P~xl8yg9nhj?CK#^kEk!;Yf zU!+|3L^dq&-#Aou+mj9V>KE4+l5Pc6dPR!#h-`c{K=!_D?rXd1=3*%`*764YJ*%B= z!F&fIuIwfU9mU6Zed5h*NM?FSeEwcGboZboJDkjh z%p6aFfcpk=A3)l>4}@2^V2$ZD5I**FP~g}8(IWhsfh}#OwfzCt3y+*n$1~Ku*p2U7 zXrCZH$HKPqH{4MyW^Tvd8ArCy8VJ+bYWy8wEg_vfdLTT-9QZ#mj)$V61PPFOVZ@R| ztWWqJRkwb686=EiM7Cuh=+I=IquNH9`fL9{c^@|XkxOhV;MI+cLAG5y5Nw=vb=~9x z>j%QiTqWuo+;itZIKg}~dE>nZl1r|xhp3Mk0&#K_vhS@-l;nH627-|*m)r*ja{o!% z@b|-v(PZMDfpFI)p0`cSa)l?G3AM^Idk4ZXrm^Jb}8{9PZ_|DW}^P%*2zn-$ zg(ZU^a%Kxd?tFC+Oqka~gLrfiHgkRIcStUz&}T3j+*i=lhRT%e!SDoAvpzG5m_8U@ zU~KBspv|>|p@MIjb>qujiw478TrcYzIBkPL3~YXiqIG5omjW5;43Ey}M|tX}!SEE{ zGwK_VSSn1p$ei3EP}>sXzg{r}BDu7X_(aPz+~wWNitCO~9s-yRrR-A5hEX=0vJsSx zq%4QBQIw6Q>@vzOr)&(!!e6wn4gPMQmM+j8N0?l@A{PU37mqNu$4)(>Iw-mSTK4?x#XT!jtT3!H`8 zt&X~3Hjc9Klue-Q3d$x@HVNd}`pK}6iMgcL-wiTf0W31Y%+`&-~TTUy2vS)=0O1W0Mx-YcFt|@=UtP+1IW;R`XCk1 zD5bt*cAT*7pMr-d=LU|0kga!*!)w^eRzzHm1)Dz12^5pFra-7TfO)W( z8#Dp$X&81-!aExc%2Yf~j2K%A?Ubo2YonE;M}|a-n-5sf;9i@P2h01i*{B%Gu);j3 z>!T~?lRjCS#~o}DRF?;dp7wGu{;p#yrBbc8=<#G81k2yH&Ld&z>JW{0=lr~MPlG9cxhD_K^1U(Z=`)mCCkc()^w{;5T^`DVBV#L5qftXuEaA9dGLUTCaziD{z#rzK%@Ej$5Hyfo-}WIe~$RQKl|P@2FHS?i(umAIgIezA@5cvjjo2_jySIIDzfv{4Rwik|aq= zPH1+*rr4hCRXOS)NjBeSdpV!(vESxFd`Hg?>oP08vjDFeiJYq{FiiJReg!^n(EY}n zIST3|^=!Hi0Wr5&e22e#GmaoB=_Yc%!}+sPnto5=#8SOr_7pE*X_CIJ?1BN;<^H8D zQoa{F4c_+QXH^s<1y!cYK4H_q;=?AqiMTp;8njmiK2#p5oU(RlBa_=rgC2U-rU|$k z>eC&jf!#mUAUQ8;8vNp;hh<%tY49yKDMSo6*t7ko;f*%=&FTR8O`mD-Wpk5K+lh7a z^H2q*;MDMWhMhM2FjwDp&`z%FHw~`wk5!~ldulJ?R;L)=bAR7CYkID@B&veVFj@qm2zis^fxCSnm41zjt-uNHuWLQS?Ezvsnv?0(EyTHUehzD9fj;fHD(h^C??ESs}Hg?Y8*LLgig-dM~fhhlZ=Xo%HLlrf|r<1l2kmA zi#8Rc%jsVfft4#d6{=W_qle1#9T&n~42V!G zHd1kn6m<(BH7KnK>MVS6Am2G_l%vv;-@J-A|E9z1B!1+a5`GO#*>*H5S`@Ffd5bvm z`5+Je!ZzECO5`17q1SD~N3c~78GHLe7&gk&Sk8WDAq?QV<~vU!l{^i^0sPIvL4-oQ z40?Yde9mKtx?WnVobMLG)d>uih+V{wNJam74n94hpZ=)TX5d^qatyk$N=U-8cH-f| zb}u4O6@Ko`+jBg>*NP_mOxz+q13{&I#Q`kkYGz88MPB#v>hOg_D2E$L(1+cJb&s`U zu|cK7f7W(Uj@B*?69;}A0uf?Pd?kd*y-ADUvNSf~;2DeHde3iZ!QTTp-KZc*oPErJ z=TP;tR^dtNmzG5^fwOzga(pbs14F#_(jqh?_Y58i9mU+2Vacf57r|+6 zK@MJKMx}fe_T;Y6dMxF_xE1U9K0qBwZhLeQ+|F_SOTZ)no0!bzk+;h1buU`{_Lv#3 zCnx7yy%tu7q$UD?EH7-WX$Tf>ht6mbf7iRpKg2)`Wl zlV?3zmwHr!_%cA$1wG^o*mpBOhazP+ThuEESiU>U3~Lz$Bvmfv)=FJul|kBy@G3Ke zY_dKVAsR4%-CjsE3~>xCJ^5NuP8x}bGsbhfr-!2Ffs05YNhI3I1zaVLB;q(2SyThD zUs$)A(dd4-*$fAn;a4jQWi(c<=G(OGJIpYTQ6~ak`)82;|VG-NZV(zoI70j&Qq{LMKwWS4in zKPE7UrD(@c4P)E3%v1_Jjr41;pA4zUu6}|=vI1v4yaPj%AV27I8@o26wG`dAmwHL!VQj{fk!T*9EO}F(VpzraS;iz4 z!+B1-3!0lG@;n*jA%R?Xc`?l7HdQ6|R-`4@o6V!9(K=Y(HMYg-yHQogmk7(U>RIZZHW)A`wLh2_R#2-?4<7{24uu665h6Ar?eQ!U2F z#4Nb}({~hu@e0pmg;rTmGa1ck4&Jb8C%-;l3}^YU)FkFYrk~8<66$KQOWPWg=Pht-2t$7TdMm%2CEERA z@iI@#|7pV~F(1P1MUXJ0*dXlTYHY#QS?D1U@A<9`!Qp1m(9!BmB;v40xe$wg_kpcai(#kVcB&dj>3ZYMj1K+;kgtF$dh#n2%U_r^QoXA#vfWiy7{N6iZO)_R zq8V1`$epf(jaGDP?=V^+f{U1b)%3K{a~b0qy<+JiHtY6VggBo_d>b3yMvpD9f}J~V zdK}_6+aXbYaEleT^X-$qnI6>(=9VFH%?2wB;;waTu=PT5;bVyrJ8=^#1GZWL{%=N< zG~(iR9wwBu_6s?Wv^L!fnVuxUo6*vg^tP?TTCd;|v3#(R@mFpk`sg^ zIpVMt4)G1c#h8v7${8XX5K}JO%^=$zw?b17vMAs-MZ4U`-GEyc)_#EVhV~tl>8lC(Hppr zLScq3%Evb@j+Bk{Hb~*NO0{g_tGPDlq2w%04v|TB+h981YwD?{3MZfc;opkz5yo~; z*`SDTwU(i~%oU1%YU@Q^PwkpRHrz6spS5{Cetir6PGT#&AAfVBsItE7{+tb}xMQJ5 z>F}#IubsD^>GjAFGJNBpN8?kh=g|;N0tt-}Iq5YU9OTCUgiM^MuuZ^_`LgB7oOFao zZ%JDG7H(nm=<8)tkM3WiW%HAWmM?{sz+OH>JxVmBLB2D%1U}n2{QD)EY8=rPhSwQd{aS5&oeC53R$G1pY+ zsi7N7=AlLYm@mA)4oQMcc95(`^j~1iBdvFpz&5@;e&{RQddZ>pl)w+%)!n_T1hqoi zyLSbNc4ZY9LRffT2@KV@C}dJL3ccXChX+4U0^FaVQto+{;BUs~k~GXW+-q*7gXp%W z#A_o<06HrRrl*FBWmv`Mx&eQ`+csT)iihvD#@D;IaMVvI#E3To?GP&uy;uV8un9<_ z*X-y&50nVnSxiTuJ#|Ej5u31-hsaa}Bq8wcI5M`M!*O zx^YI-QILZW_6oka(E}vX zb(4YL*x?}_$<;S&WgPWLJW9?Ccfc91K<@J2yW>-Z98kjJIsTe)i%mRckaUm|#I>8go1PWP5_gk9s~ix}(r6d7 zqT-s*9FVT0H`KP3XE!?_o}UKl5xF4p$^Ce+-=?Mcw1Svs_UTZuldO5m0qa}h?p9!F zY^zRkko@w04tSbd*}pVDLGv3XZ$-Kd@!I^QIDPC!tc(ID7`WP8@245(34aqxP{)ju zzXdztX|ClC_IARH+%5SV&;>znE3Z#=>Nd505RMVV>oM}ctg!F2|sbQ=DDpGBv#{9$9`-SwNBCn$UEX$u?A^vk5cHvy+f_|&7P$& zjSV2Fm>=?MxNAttFMIn1GO%B%_pMkJwxA)y75YlEa`d5$Eaj_i+0n|>-CY8ehV+b1 zN>1&R{_?HlQW(Y;$uq$~v9`DrBIx7VGH*aBJj3P5rmpL}3I=wGFjnyIh3PQ85JZ33{kNNSC4@tjrPUxc;wx@Qa?~R8lwvUHKDZ|Iu zg5-p?I2EqQe7knb#;>m}?2e1GJvBt`y1f*Zu{BUerKH4(uWaRB=Yj`6EW`I+MnqJ4 zoz;0tgT>)(rT*&fF7@J4t;bv}WnTgpE;v{kARfS++Xh~DzJMIU(Qy5ey59(0p(ufkHYivM3G)n?ln8LbZdDzKAdp!-cqkSRayuAF*}ux zVS|ktQVt`9+<`)(EA1`h^JQKKI@Gqem{MBirT4Ycdk_Lw1KUQFdrd0i*($iqGXkw{ z7yL3?N|0E0Unvjqu$q%t!|oh3)i8^omWjFdd#$6^@Z1L}p<*}IFfXtPM36X-HH@{X zCSJ53S#qA&FrnPGiel)-&Tl)NG#Lgi)lp2@4ZF zg(3|ff=Cqq!&0WNwyax)es1FKQn>CO*7o#kOYl&1ucHiaOg2nKPT<;{IJavYzOA&m z+wp|+P&syb8Ej>j9tbO6Q7%D6PD zDp9NJubcJ-Y7HU=<7N8k!|y6vh*KEwYaHkdeZOg-p{CpG1nSSeW3=JdyGw7QVz?S+?HtSV}ppyTsGQ zOZdo#;lVpsN1aDTn2!~0imPzvXiYEoeg_*HOLd7jxKsqs4`Eb5@@f4$byaAB zJ$=1DO$L5P{~}19TTl-D^k(-$0cqm?Ee_gMzrwxc2unHCvSLEt*Dzm1Pjs-1x0idp z?$`g2+VoH2o8SZYFD{3>_(2FsZZ{=rZ93z8H^=I@(!+Qy`S)%={jQtK^;$PloW#P> z9?>9lwZbSd^_Fseu&1vI5l>(Py(FptaW@y!HAF=I%Zn8_fEieo;eXgYSjGH8wU<1L zg_BquLe+12*NFdaL5$_NyHRr3wUxgJOy@iKu~q&>P469R%rF&^nj}^S3`5cS@X>Pk z7gwsp6MS|W*Pq{84oCU+THnl{Ve{E-UNGJ+xxeB7YP7$-6tt}BhKX-}F3_d)?{CT4 zH_Kr#+Z_GHWo>R}_g4^gk?h3za(JHmoBt;ZmE5ZWl-?d86Qt-2@{4g5(1Dv1wOF)A zuY{lA_!S^pHRk*ZjSpc;g|~tFn-KN8KuH_AC)?;}@|RGSByHXgNE2255-ivBpPgL+ z`P_bK)1NZ0g6lD1!{2?`9EiZ(#6B$LVHxV1*irz*jt#i1_PEl$*K;+z71z|q#{m@wQ#|rq6 zJ$B`pXo#ex%U}x3Q^$w!YY+rQwNNRbV_M00$1enOH2lUCGsH-Ypasc2xE+}3m%TV1 zaKXXD^AD^*HnX0=+_Mfsi)~oCS3)7%a{I+tb-TNYUy#AQR4%GY-?*_~yr{6BGNfU3 zxEQ!%iB~+^A5#hA?Ui`RZD(dBj2i2~**|i6z9x<6ihA$!-MR`qdl_%gv2%+{>31tHp^xIt3-vH zgE@EMNRf-9SjcZ65&17=lho9?#L|`HJjMQrrze2F^=%a)!j;`F(c0^=q#$^InfO5^ zT+0lBf2{OO(%Q0-(!a_xRW(%K0s{{f58yjtLuCEAN~pDY`uRmhlCpR;u$5M-N|`KQ zD_jgO`qhz|tqBsp;!C>PiK+O0ut0gjwiw@7;t#T`we03t4Ck4T;1@%oCznU2BII$5 zmE-p$nl7e^)7uw&#de6cgS7V|$ZK~jh6o<`(KptQM6^kf$!{T+omv<}-;IxX{>#NM zlPjv$#$>Y-cXU{Sx6RH>tHRUe@PliEWzIjV-~o0eNS$skQERS3Roy+J3St?(eQ2S_ zlMgivCmAfmBCDV<^)F6!+^8yej&E1~^i(BHwTy2U2}CbR^P9|!q0h`Ti&tQ)@_LuI zIJmTmM>NDQ_?yMJ#e202Azq1Clhi)5iGyZMb=YU&=hZ1q#1HA3oBgbXUu~%EzM_{^ zc|Yt%ZR6#-x+)mL=b;vhoSju(+dS2AkmNY*VAfC-`*<0#qY45q5QbmpLlrWL>@&^l zvT>2Ss^A_T_wtV)>7(AF`<^N<_s`?*bd+^iH-|Y$8t#54dKu$32110DmtoZ9b@ZW@ zbDr{#5$h;Vyio;T@LK`?yXb|1gV>JG1pmZ?QGXu9l5<9DG3&5zxQ5mm3!5< zwuH->KUBeZAD>X|Cy#_KfnQmaKvS3gVd|&HWL=V4DH+e`ewsWYIsCdM(AVo8VuuY` z_(bfPmli_srn0Mhi>=Qt#>=cv&t3x0Gd)9S_(pL3x~9~Wc^TTVi(E5r3G`>Q5@bvb z;{C!UzGBe=OXFdDJew4)ncoBLp|b13CGZhv5p_VBRJsHor)D7hErA(rJf%|Ew*;PQ%Py^IuTNUmVWL54xO!o* z-15p20InPfd^fTAq!-nME(S|8iI;Q*<4d+*QgxzlU%z~7Xvq|)X1_m_Z!t5a=Sp=WXTBF=xZ1lTPRb}Z3O=6{OUN*Dzh0%4;549dHQy8al0 zGm1aoS=H-3#miqV@wzdjq9+NxqFB#rT`G=Q%i&XD3a<8kUsFkRB|cMrHx_@w*ABK< zW5B4Pb2aLm18u9}S>{*^wNg^$3{GI)C#QQgoa75im2u+te%1IC9EJ8Tl}ci@_h%Z_ zCX$+LV1B7OTC9k|6GAUrgz&Prrd0DgJ8IM3;!-T-CwHEqL&R#VOY+cN?GYyoY1J69 zIe~S(nyE`pt@iR>G?-eyYOG^x=>_vB)^VTC(~q6@upZ&cisx2$6lbxUmoK1FPaEzq zBFkTg+#|tKp^Ty1B-Rc5zE_y%(*lh7O(YFAjav+j5Gp3} z=$>l0vYDQOD#PTg1I>=l(A3sO4tt>*uIIwc2Ggc3NKAsoKJ-2M$veksszzu;*VJ7pf)Z$o492dy7>$dSr@gDX7yasZ-tFQXH1#4L} zRZ#1mVo1(XxRo(;+X+h{dF!a9u!u&=vt!A3R@zK+%+_*odio96Dt#PINK8#xih54#@e=j$3?Y)oc#mP7LSwWa z>y7Rf{LK&(KTV}pF#|l9Jctj0UB}=?;K(;!7|G_bZbYoT>^ISg|0W70i?7>Ujc*ZZ zf5lR?3R|#*O^9fgELKlk3hNmdqTJpKqEn!VnC#t`D3mPr2Y7~Ti!@?G3ZfZDlBks| z<{*tY4n(tk3@4&cYTcQgAPT370&*ZHD3v=)U#Y+>!^$S;^Qd~cOh4*<2 zuQU~|fLFQAQY$6(Z1gD>GfG!@nKBB%X3IMB3OK|yj5dI-v82Yga7*pCnHto+Qa+C( zo#sN!k$$gg1?=V6!7VHBF&tUF0)}uIqhf9{2}W;W{&EGrx>9@R!$4Snlq;q?>H=-t!rDg=mMu?M$T z9wG(E5ocFG_l_Q|HA~%9h=}_OQGd?G_pycwdLL`tz5^@4w81lgOuKa@1oZP12!Cuk zRzALWCA`D7x9ZWJIC2(`bLG>|u7omXq*2}|71kQ@{3@tm z8+=JK{hY7SpBP%CV2~_L>_+TEWi70R&E44?h}ga4m4?+Yh%dHQ{6zd}nD1LWuGea~ znip@YS&gp>c`acz92(7FYsD`uSPj3hV-Ru3x*8_4*H2C|Ic8-#l;s7N#wnlu`b)Uj zTDY3LecNh?;Bzi5TMa`P_(uHA+2Kd;dO5UwHOyw>B?+H$hKVF97PFwSR5s&;xw)Z& z2jnBWSHlvn>{as1Y0s^OT&_%rYH{NIldJg)@UW* z`B_P$r}tbwVo21YU!F{eQYuz{^wwwPqpum-@Z_YG*L@Z9k3RkL;`;QM{$rbe{No?F IqbH62e?k;MIRF3v delta 134106 zcmbTf2UwHI^EhtE0&fT*FTEs$BtYm8QIuZnA_DfVpkhTjb_F}wz{|<#S%SSQ%6ZYV zp=UWeUiHob>NPu_<@9X-*}Ne{zubN9_xE{l$h*7Kc6MfVcJp%Q-Er&ln^#+xA2n|` zoM|z7*;j$&j{A*_y-)X>v2*1u^#3Rv8rq??<^Vs9J@3Ljq;SH6d#yFTB#$i!H`70* z@ZlofcugH~($tU+u0eN2`UVQ`L|44r$m2$RtG*M)>@ zp-_0M;g?3rGNkMTi`OR!+3vGAZYX?u=j(2oJwj(VpSjSkdcNf{Gd6*fsRe~CTkHuUh97AUcYuoKtah;vv^4z(W z8o84dd(<$B!n%7ooi$JFLo|b(?O6|lqA2`z;N&Tqb!>>{h^x>oJ!@oUMjmCcy9Gy) z!e2fw{!??yHHJNBKuBR$g13dH$T>vwrNn{tH8fCoE2`^7O}R^mMkIA+Lk$fSCVh8) zCS?Jt+ywS)p@Dk}Uk`nMhU4A}Vl{IGFcTI!vhg7t3l!?k4J4W#dTr>t*s-U>xmF4f zUy}CGtn>4vgKeOE#X_N`hlh)18!G|1Ou)djRSR8Re={hZ!jlgMecxzG(V8B%ZX_vv z>J%7OF;~G}GB8HrqyV!&H7!M+P!DsR*<{0vQ`jbX*(yzp%2V^m%Y}6}G*I|$|BFOF zq`VS&(I(2x^;2$YPb*@U95UFG6<{}Kv0=OqLbAzkFd9oJyTHINg?)p*J&els)D-*3 zS$hM66n@?J!4yrEPe=B>LD3WrRemBhs1pZRYZm$1v4;&SmcoFimrvl7qdoeHGy#4N zY_ef6gA9o!tim+?l#VjC(bhL-96V0-c~OZ zuxVD@tW$XSzPdL$hq=W4LG?S$u0U59x__a&rYP8�?wajB0U(qr2z2LQR0czWTdh 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 B7j6Im From c467c59a4f6e04b942be422844e7a6352fa01b57 Mon Sep 17 00:00:00 2001 From: Sebastian Bergmann Date: Mon, 8 Dec 2025 08:17:58 +0100 Subject: [PATCH 04/15] Prepare release --- ChangeLog-12.5.md | 7 +++++++ src/Version.php | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/ChangeLog-12.5.md b/ChangeLog-12.5.md index 4d721c082..6ef5b0f06 100644 --- a/ChangeLog-12.5.md +++ b/ChangeLog-12.5.md @@ -2,6 +2,12 @@ All notable changes are documented in this file using the [Keep a CHANGELOG](http://keepachangelog.com/) principles. +## [12.5.1] - 2025-12-08 + +### Changed + +* [#1125](https://github.com/sebastianbergmann/php-code-coverage/pull/1125): Improve performance of XML report by using XMLWriter instead of DOM + ## [12.5.0] - 2025-11-29 ### Added @@ -17,4 +23,5 @@ All notable changes are documented in this file using the [Keep a CHANGELOG](htt * [#1126](https://github.com/sebastianbergmann/php-code-coverage/issues/1126): Add test execution time to `` elements under `projects/tests` in the XML reports index file * [#1127](https://github.com/sebastianbergmann/php-code-coverage/issues/1127): Add SHA-1 hash of content of SUT source file to XML report +[12.5.1]: https://github.com/sebastianbergmann/php-code-coverage/compare/12.5.0...12.5.1 [12.5.0]: https://github.com/sebastianbergmann/php-code-coverage/compare/12.4.0...12.5.0 diff --git a/src/Version.php b/src/Version.php index 0d5b4aee2..e8dd97314 100644 --- a/src/Version.php +++ b/src/Version.php @@ -19,7 +19,7 @@ final class Version public static function id(): string { if (self::$version === '') { - self::$version = (new VersionId('12.5.0', dirname(__DIR__)))->asString(); + self::$version = (new VersionId('12.5.1', dirname(__DIR__)))->asString(); } return self::$version; From 3cf9ab1cff5a9b8912bd251f7e4fc5f700aea7b7 Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Mon, 8 Dec 2025 12:32:24 +0100 Subject: [PATCH 05/15] Fix regression from update to theseer/tokenizer 2.x --- composer.json | 2 +- .../source_with_class_and_anonymous_function.php.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/composer.json b/composer.json index 607a2d5e1..550171f84 100644 --- a/composer.json +++ b/composer.json @@ -40,7 +40,7 @@ "sebastian/environment": "^8.0.3", "sebastian/lines-of-code": "^4.0", "sebastian/version": "^6.0", - "theseer/tokenizer": "^2.0" + "theseer/tokenizer": "^2.0.1" }, "require-dev": { "phpunit/phpunit": "^12.5.1" diff --git a/tests/_files/Report/XML/CoverageForClassWithAnonymousFunction/source_with_class_and_anonymous_function.php.xml b/tests/_files/Report/XML/CoverageForClassWithAnonymousFunction/source_with_class_and_anonymous_function.php.xml index 9ef89df19..88523d37c 100644 --- a/tests/_files/Report/XML/CoverageForClassWithAnonymousFunction/source_with_class_and_anonymous_function.php.xml +++ b/tests/_files/Report/XML/CoverageForClassWithAnonymousFunction/source_with_class_and_anonymous_function.php.xml @@ -100,7 +100,7 @@ function ( - & + & $val , From 6606fb02a773518dcd81f68b739677ca503ee77e Mon Sep 17 00:00:00 2001 From: Sebastian Bergmann Date: Sat, 13 Dec 2025 08:32:05 +0100 Subject: [PATCH 06/15] Remove superfluous line-break --- src/Exception/UnintentionallyCoveredCodeException.php | 3 ++- .../Exception/UnintentionallyCoveredCodeExceptionTest.php | 1 - 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Exception/UnintentionallyCoveredCodeException.php b/src/Exception/UnintentionallyCoveredCodeException.php index bb7d88c97..1bbdac361 100644 --- a/src/Exception/UnintentionallyCoveredCodeException.php +++ b/src/Exception/UnintentionallyCoveredCodeException.php @@ -9,6 +9,7 @@ */ namespace SebastianBergmann\CodeCoverage; +use function rtrim; use RuntimeException; final class UnintentionallyCoveredCodeException extends RuntimeException implements Exception @@ -44,6 +45,6 @@ private function toString(): string $message .= '- ' . $unit . "\n"; } - return $message; + return rtrim($message); } } diff --git a/tests/tests/Exception/UnintentionallyCoveredCodeExceptionTest.php b/tests/tests/Exception/UnintentionallyCoveredCodeExceptionTest.php index d7726e9eb..c754cc2af 100644 --- a/tests/tests/Exception/UnintentionallyCoveredCodeExceptionTest.php +++ b/tests/tests/Exception/UnintentionallyCoveredCodeExceptionTest.php @@ -40,7 +40,6 @@ public function testCanConstructWithNonEmptyArray(): void - foo - bar - baz - TXT; $this->assertSame($expected, $exception->getMessage()); From 8adf337bd4660d659d7dc38f099d67a1f33fb29f Mon Sep 17 00:00:00 2001 From: Sebastian Bergmann Date: Fri, 19 Dec 2025 17:24:07 +0100 Subject: [PATCH 07/15] Closes #1131 --- ChangeLog-11.0.md | 1 + src/CodeCoverage.php | 18 ++++++++++++++++++ src/Report/Xml/BuildInformation.php | 13 ++++++------- src/Report/Xml/Facade.php | 6 +++--- 4 files changed, 28 insertions(+), 10 deletions(-) diff --git a/ChangeLog-11.0.md b/ChangeLog-11.0.md index ff7d4538e..7ea88d420 100644 --- a/ChangeLog-11.0.md +++ b/ChangeLog-11.0.md @@ -7,6 +7,7 @@ All notable changes are documented in this file using the [Keep a CHANGELOG](htt ### Fixed * [#1092](https://github.com/sebastianbergmann/php-code-coverage/issues/1092): Error in `DOMDocument::saveXML()` is not handled +* [#1131](https://github.com/sebastianbergmann/php-code-coverage/issues/1131): Invalid XML generated when both PCOV and Xdebug are loaded ## [11.0.11] - 2025-08-27 diff --git a/src/CodeCoverage.php b/src/CodeCoverage.php index d96f5ab2a..147e1af5d 100644 --- a/src/CodeCoverage.php +++ b/src/CodeCoverage.php @@ -25,6 +25,8 @@ use SebastianBergmann\CodeCoverage\Data\ProcessedCodeCoverageData; use SebastianBergmann\CodeCoverage\Data\RawCodeCoverageData; use SebastianBergmann\CodeCoverage\Driver\Driver; +use SebastianBergmann\CodeCoverage\Driver\PcovDriver; +use SebastianBergmann\CodeCoverage\Driver\XdebugDriver; use SebastianBergmann\CodeCoverage\Node\Builder; use SebastianBergmann\CodeCoverage\Node\Directory; use SebastianBergmann\CodeCoverage\StaticAnalysis\CachingFileAnalyser; @@ -377,6 +379,22 @@ public function detectsDeadCode(): bool return $this->driver->detectsDeadCode(); } + /** + * @internal + */ + public function driverIsPcov(): bool + { + return $this->driver instanceof PcovDriver; + } + + /** + * @internal + */ + public function driverIsXdebug(): bool + { + return $this->driver instanceof XdebugDriver; + } + /** * @throws ReflectionException * @throws UnintentionallyCoveredCodeException diff --git a/src/Report/Xml/BuildInformation.php b/src/Report/Xml/BuildInformation.php index d7d532348..adf8bfb1e 100644 --- a/src/Report/Xml/BuildInformation.php +++ b/src/Report/Xml/BuildInformation.php @@ -13,6 +13,7 @@ use function phpversion; use DateTimeImmutable; use DOMElement; +use SebastianBergmann\CodeCoverage\CodeCoverage; use SebastianBergmann\Environment\Runtime; /** @@ -27,7 +28,7 @@ public function __construct(DOMElement $contextNode) $this->contextNode = $contextNode; } - public function setRuntimeInformation(Runtime $runtime): void + public function setRuntimeInformation(Runtime $runtime, CodeCoverage $coverage): void { $runtimeNode = $this->nodeByName('runtime'); @@ -37,14 +38,12 @@ public function setRuntimeInformation(Runtime $runtime): void $driverNode = $this->nodeByName('driver'); - if ($runtime->hasXdebug()) { - $driverNode->setAttribute('name', 'xdebug'); - $driverNode->setAttribute('version', phpversion('xdebug')); - } - - if ($runtime->hasPCOV()) { + if ($coverage->driverIsPcov()) { $driverNode->setAttribute('name', 'pcov'); $driverNode->setAttribute('version', phpversion('pcov')); + } elseif ($coverage->driverIsXdebug()) { + $driverNode->setAttribute('name', 'xdebug'); + $driverNode->setAttribute('version', phpversion('xdebug')); } } diff --git a/src/Report/Xml/Facade.php b/src/Report/Xml/Facade.php index 5c78dcebc..7dd64e93f 100644 --- a/src/Report/Xml/Facade.php +++ b/src/Report/Xml/Facade.php @@ -64,17 +64,17 @@ public function process(CodeCoverage $coverage, string $target): void $coverage->getReport()->name(), ); - $this->setBuildInformation(); + $this->setBuildInformation($coverage); $this->processTests($coverage->getTests()); $this->processDirectory($report, $this->project); $this->saveDocument($this->project->asDom(), 'index'); } - private function setBuildInformation(): void + private function setBuildInformation(CodeCoverage $coverage): void { $buildNode = $this->project->buildInformation(); - $buildNode->setRuntimeInformation(new Runtime); + $buildNode->setRuntimeInformation(new Runtime, $coverage); $buildNode->setBuildTime(new DateTimeImmutable); $buildNode->setGeneratorVersions($this->phpUnitVersion, Version::id()); } From e2638e7af9a3561dbf5ccd77090871405769aa57 Mon Sep 17 00:00:00 2001 From: Sebastian Bergmann Date: Fri, 19 Dec 2025 17:42:07 +0100 Subject: [PATCH 08/15] Refactor --- src/CodeCoverage.php | 4 ++-- src/Driver/Driver.php | 10 ++++++++++ src/Driver/PcovDriver.php | 5 +++++ src/Driver/XdebugDriver.php | 5 +++++ 4 files changed, 22 insertions(+), 2 deletions(-) diff --git a/src/CodeCoverage.php b/src/CodeCoverage.php index 147e1af5d..d28f22bf0 100644 --- a/src/CodeCoverage.php +++ b/src/CodeCoverage.php @@ -384,7 +384,7 @@ public function detectsDeadCode(): bool */ public function driverIsPcov(): bool { - return $this->driver instanceof PcovDriver; + return $this->driver->isPcov(); } /** @@ -392,7 +392,7 @@ public function driverIsPcov(): bool */ public function driverIsXdebug(): bool { - return $this->driver instanceof XdebugDriver; + return $this->driver->isXdebug(); } /** diff --git a/src/Driver/Driver.php b/src/Driver/Driver.php index cfbed9cfc..c0aed8b53 100644 --- a/src/Driver/Driver.php +++ b/src/Driver/Driver.php @@ -120,6 +120,16 @@ public function disableDeadCodeDetection(): void $this->detectDeadCode = false; } + public function isPcov(): bool + { + return false; + } + + public function isXdebug(): bool + { + return false; + } + abstract public function nameAndVersion(): string; abstract public function start(): void; diff --git a/src/Driver/PcovDriver.php b/src/Driver/PcovDriver.php index cdb01e65a..eaa888801 100644 --- a/src/Driver/PcovDriver.php +++ b/src/Driver/PcovDriver.php @@ -68,6 +68,11 @@ public function nameAndVersion(): string return 'PCOV ' . phpversion('pcov'); } + public function isPcov(): true + { + return true; + } + /** * @throws PcovNotAvailableException */ diff --git a/src/Driver/XdebugDriver.php b/src/Driver/XdebugDriver.php index b57f737c3..4afc6e535 100644 --- a/src/Driver/XdebugDriver.php +++ b/src/Driver/XdebugDriver.php @@ -125,6 +125,11 @@ public function nameAndVersion(): string return 'Xdebug ' . phpversion('xdebug'); } + public function isXdebug(): true + { + return true; + } + /** * @throws XdebugNotAvailableException */ From 8389cc447f316f10754e10fe825bae664a5cddd2 Mon Sep 17 00:00:00 2001 From: Sebastian Bergmann Date: Fri, 19 Dec 2025 17:46:46 +0100 Subject: [PATCH 09/15] Remove superfluous imports --- src/CodeCoverage.php | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/CodeCoverage.php b/src/CodeCoverage.php index d28f22bf0..a34b2902f 100644 --- a/src/CodeCoverage.php +++ b/src/CodeCoverage.php @@ -25,8 +25,6 @@ use SebastianBergmann\CodeCoverage\Data\ProcessedCodeCoverageData; use SebastianBergmann\CodeCoverage\Data\RawCodeCoverageData; use SebastianBergmann\CodeCoverage\Driver\Driver; -use SebastianBergmann\CodeCoverage\Driver\PcovDriver; -use SebastianBergmann\CodeCoverage\Driver\XdebugDriver; use SebastianBergmann\CodeCoverage\Node\Builder; use SebastianBergmann\CodeCoverage\Node\Directory; use SebastianBergmann\CodeCoverage\StaticAnalysis\CachingFileAnalyser; From c47bc7b8e7f396dd4db390599753d202b9737b56 Mon Sep 17 00:00:00 2001 From: Sebastian Bergmann Date: Fri, 19 Dec 2025 17:54:20 +0100 Subject: [PATCH 10/15] Fix bad merge --- src/Driver/Driver.php | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/src/Driver/Driver.php b/src/Driver/Driver.php index fd39e7ea0..1174eaafb 100644 --- a/src/Driver/Driver.php +++ b/src/Driver/Driver.php @@ -86,16 +86,6 @@ public function isXdebug(): bool return false; } - public function isPcov(): bool - { - return false; - } - - public function isXdebug(): bool - { - return false; - } - abstract public function nameAndVersion(): string; abstract public function start(): void; From 43fb77d0102126dac162800e78cd5a65430080be Mon Sep 17 00:00:00 2001 From: Sebastian Bergmann Date: Fri, 19 Dec 2025 19:13:15 +0100 Subject: [PATCH 11/15] Revert --- tests/src/TestCase.php | 56 ------------------------------------------ 1 file changed, 56 deletions(-) diff --git a/tests/src/TestCase.php b/tests/src/TestCase.php index 82405f733..c086f62af 100644 --- a/tests/src/TestCase.php +++ b/tests/src/TestCase.php @@ -1013,10 +1013,6 @@ protected function getLineCoverageForBankAccount(): CodeCoverage ->method('stop') ->willReturn(...$data); - $stub - ->method('isXdebug') - ->willReturn(true); - $filter = new Filter; $filter->includeFile(TEST_FILES_PATH . 'BankAccount.php'); @@ -1099,10 +1095,6 @@ protected function getPathCoverageForBankAccount(): CodeCoverage ->method('stop') ->willReturn(...$data); - $stub - ->method('isXdebug') - ->willReturn(true); - $filter = new Filter; $filter->includeFile(TEST_FILES_PATH . 'BankAccount.php'); @@ -1187,10 +1179,6 @@ protected function getPathCoverageForSourceWithoutNamespace(): CodeCoverage ->method('stop') ->willReturn(...$data); - $stub - ->method('isXdebug') - ->willReturn(true); - $filter = new Filter; $filter->includeFile(TEST_FILES_PATH . 'source_without_namespace.php'); @@ -1271,10 +1259,6 @@ protected function getLineCoverageForNamespacedBankAccount(): CodeCoverage ->method('stop') ->willReturn(...$data); - $stub - ->method('isXdebug') - ->willReturn(true); - $filter = new Filter; $filter->includeFile(TEST_FILES_PATH . 'NamespacedBankAccount.php'); @@ -1348,10 +1332,6 @@ protected function getLineCoverageForBankAccountForFirstTwoTests(): CodeCoverage ->method('stop') ->willReturn(...$data); - $stub - ->method('isXdebug') - ->willReturn(true); - $filter = new Filter; $filter->includeFile(TEST_FILES_PATH . 'BankAccount.php'); @@ -1402,10 +1382,6 @@ protected function getLineCoverageForBankAccountForLastTwoTests(): CodeCoverage ->method('stop') ->willReturn($data[2], $data[3]); - $stub - ->method('isXdebug') - ->willReturn(true); - $filter = new Filter; $filter->includeFile(TEST_FILES_PATH . 'BankAccount.php'); @@ -1516,10 +1492,6 @@ protected function getPathCoverageForBankAccountForFirstTwoTests(): CodeCoverage ->method('stop') ->willReturn(...$data); - $stub - ->method('isXdebug') - ->willReturn(true); - $filter = new Filter; $filter->includeFile(TEST_FILES_PATH . 'BankAccount.php'); @@ -1572,10 +1544,6 @@ protected function getPathCoverageForBankAccountForLastTwoTests(): CodeCoverage ->method('stop') ->willReturn($data[2], $data[3]); - $stub - ->method('isXdebug') - ->willReturn(true); - $filter = new Filter; $filter->includeFile(TEST_FILES_PATH . 'BankAccount.php'); @@ -1851,10 +1819,6 @@ protected function setUpXdebugStubForFileWithIgnoredLines(): Driver ], )); - $stub - ->method('isXdebug') - ->willReturn(true); - return $stub; } @@ -1892,10 +1856,6 @@ protected function setUpXdebugStubForFileWithEval(): Driver ], )); - $stub - ->method('isXdebug') - ->willReturn(true); - return $stub; } @@ -1937,10 +1897,6 @@ protected function setUpXdebugStubForClassWithAnonymousFunction(): Driver ], )); - $stub - ->method('isXdebug') - ->willReturn(true); - return $stub; } @@ -1977,10 +1933,6 @@ protected function setUpXdebugStubForClassWithOutsideFunction(): Driver ], )); - $stub - ->method('isXdebug') - ->willReturn(true); - return $stub; } @@ -2008,10 +1960,6 @@ protected function getCoverageForFilesWithUncoveredIncluded(): CodeCoverage ->method('stop') ->willReturn(...$data); - $stub - ->method('isXdebug') - ->willReturn(true); - $filter = new Filter; $filter->includeFile(TEST_FILES_PATH . 'BankAccount.php'); $filter->includeFile(TEST_FILES_PATH . 'NamespacedBankAccount.php'); @@ -2088,10 +2036,6 @@ protected function getCoverageForFilesWithUncoveredExcluded(): CodeCoverage ->method('stop') ->willReturn(...$data); - $stub - ->method('isXdebug') - ->willReturn(true); - $filter = new Filter; $filter->includeFile(TEST_FILES_PATH . 'BankAccount.php'); $filter->includeFile(TEST_FILES_PATH . 'NamespacedBankAccount.php'); From 9d4496cdb5540904944b5db0e8be0e176bc90581 Mon Sep 17 00:00:00 2001 From: Sebastian Bergmann Date: Fri, 19 Dec 2025 19:13:35 +0100 Subject: [PATCH 12/15] Simplify --- src/Report/Xml/Facade.php | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/Report/Xml/Facade.php b/src/Report/Xml/Facade.php index 8df7c974f..32c3f912e 100644 --- a/src/Report/Xml/Facade.php +++ b/src/Report/Xml/Facade.php @@ -10,7 +10,6 @@ namespace SebastianBergmann\CodeCoverage\Report\Xml; use const DIRECTORY_SEPARATOR; -use function assert; use function count; use function dirname; use function file_get_contents; @@ -91,14 +90,11 @@ private function setBuildInformation(CodeCoverage $coverage): void if ($coverage->driverIsPcov()) { $driverExtensionName = 'pcov'; $driverExtensionVersion = phpversion('pcov'); - } elseif ($coverage->driverIsXdebug()) { + } else { $driverExtensionName = 'xdebug'; $driverExtensionVersion = phpversion('xdebug'); } - assert(isset($driverExtensionName)); - assert(isset($driverExtensionVersion)); - $this->project->buildInformation( new Runtime, new DateTimeImmutable, From 193a788ef24e348ad7e26b2103384bbb416b584e Mon Sep 17 00:00:00 2001 From: Sebastian Bergmann Date: Fri, 19 Dec 2025 19:15:27 +0100 Subject: [PATCH 13/15] Revert "Simplify" This reverts commit 9d4496cdb5540904944b5db0e8be0e176bc90581. --- src/Report/Xml/Facade.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/Report/Xml/Facade.php b/src/Report/Xml/Facade.php index 32c3f912e..8df7c974f 100644 --- a/src/Report/Xml/Facade.php +++ b/src/Report/Xml/Facade.php @@ -10,6 +10,7 @@ namespace SebastianBergmann\CodeCoverage\Report\Xml; use const DIRECTORY_SEPARATOR; +use function assert; use function count; use function dirname; use function file_get_contents; @@ -90,11 +91,14 @@ private function setBuildInformation(CodeCoverage $coverage): void if ($coverage->driverIsPcov()) { $driverExtensionName = 'pcov'; $driverExtensionVersion = phpversion('pcov'); - } else { + } elseif ($coverage->driverIsXdebug()) { $driverExtensionName = 'xdebug'; $driverExtensionVersion = phpversion('xdebug'); } + assert(isset($driverExtensionName)); + assert(isset($driverExtensionVersion)); + $this->project->buildInformation( new Runtime, new DateTimeImmutable, From 251fb8fe2360cad45614b8c10cb7e08d75d985de Mon Sep 17 00:00:00 2001 From: Sebastian Bergmann Date: Fri, 19 Dec 2025 19:17:51 +0100 Subject: [PATCH 14/15] This can only happen when running this library's own test suite --- src/Report/Xml/Facade.php | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/Report/Xml/Facade.php b/src/Report/Xml/Facade.php index 8df7c974f..05ab96a60 100644 --- a/src/Report/Xml/Facade.php +++ b/src/Report/Xml/Facade.php @@ -10,7 +10,6 @@ namespace SebastianBergmann\CodeCoverage\Report\Xml; use const DIRECTORY_SEPARATOR; -use function assert; use function count; use function dirname; use function file_get_contents; @@ -94,11 +93,13 @@ private function setBuildInformation(CodeCoverage $coverage): void } elseif ($coverage->driverIsXdebug()) { $driverExtensionName = 'xdebug'; $driverExtensionVersion = phpversion('xdebug'); + } else { + // @codeCoverageIgnoreStart + $driverExtensionName = 'unknown'; + $driverExtensionVersion = 'unknown'; + // @codeCoverageIgnoreEnd } - assert(isset($driverExtensionName)); - assert(isset($driverExtensionVersion)); - $this->project->buildInformation( new Runtime, new DateTimeImmutable, From 11775ba4125a1e8ab6ab9c21e0607d9a484744dd Mon Sep 17 00:00:00 2001 From: Sebastian Bergmann Date: Fri, 19 Dec 2025 19:25:59 +0100 Subject: [PATCH 15/15] Update --- .github/workflows/ci.yml | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index cd922f6e4..0b3441602 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -18,7 +18,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: fetch-depth: 1 ref: ${{ github.event.pull_request.head.sha || github.sha }} @@ -49,7 +49,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: fetch-depth: 1 ref: ${{ github.event.pull_request.head.sha || github.sha }} @@ -77,7 +77,7 @@ jobs: echo "dir=$(composer config cache-files-dir)" >> "$GITHUB_OUTPUT" - name: Cache Composer cache directory - uses: actions/cache@v4 + uses: actions/cache@v5 with: path: ${{ steps.composer-cache.outputs.dir }} key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} @@ -123,7 +123,7 @@ jobs: run: git config --global core.autocrlf false - name: Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: fetch-depth: 1 ref: ${{ github.event.pull_request.head.sha || github.sha }} @@ -152,7 +152,7 @@ jobs: echo "dir=$(composer config cache-files-dir)" >> "$GITHUB_OUTPUT" - name: Cache Composer cache directory - uses: actions/cache@v4 + uses: actions/cache@v5 with: path: ${{ steps.composer-cache.outputs.dir }} key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} @@ -166,15 +166,18 @@ jobs: - name: Upload test results to Codecov.io if: ${{ !cancelled() }} - uses: codecov/test-results-action@v1 + uses: codecov/codecov-action@v5 with: token: ${{ secrets.CODECOV_TOKEN }} + report_type: test_results disable_search: true files: ./test-results.xml - name: Upload code coverage data to Codecov.io - uses: codecov/codecov-action@v4 + if: ${{ !cancelled() }} + uses: codecov/codecov-action@v5 with: token: ${{ secrets.CODECOV_TOKEN }} + report_type: coverage disable_search: true files: ./code-coverage.xml