diff --git a/.gitignore b/.gitignore index 7598957..f2bada3 100755 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ -.directory -css/* -!css/.gitkeep +/.directory +/css/* +!/css/.gitkeep +/composer.lock diff --git a/README.md b/README.md index feee282..8dda181 100755 --- a/README.md +++ b/README.md @@ -1,6 +1,4 @@ -# ![](themes/libreqr/icons/32.png) LibreQR - -[Lire ceci en français](README_fr.md) +# LibreQR A PHP Web interface for generating QR codes. @@ -14,19 +12,10 @@ A LibreQR instance is available at . Just place this source code in a Web server with PHP. -`wget https://code.antopie.org/miraty/libreqr/archive/1.3.0.zip` - -GD extension is required. - -`apt install php7.3-gd` +PHP extensions GD and iconv are required. LibreQR need writing rights on the `css/` directory. -``` -chown -R www-data:www-data /var/www/libreqr/css -chmod -R 600 /var/www/libreqr/css -``` - #### Security hardening Your HTTP server can reply the following headers: @@ -61,16 +50,9 @@ If you want to report a bug, you can open an issue at . -## Libraries - -This source code includes: - -* [CodeItNow Barcode & QrCode Generator](https://github.com/codeitnowin/barcode-generator) to generate QR codes -* [Less.php](https://github.com/wikimedia/less.php) to compile [Less](http://lesscss.org) - ## License -[AGPLv3+](https://code.antopie.org/miraty/libreqr/src/branch/main/LICENSE) +LibreQR is published under [AGPLv3+](https://code.antopie.org/miraty/libreqr/src/branch/main/LICENSE). Librairies located in the `vendor` subdirectory use their own licenses. LibreQR is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. diff --git a/README_fr.md b/README_fr.md deleted file mode 100644 index a334ea2..0000000 --- a/README_fr.md +++ /dev/null @@ -1,79 +0,0 @@ -# ![](themes/libreqr/icons/32.png) LibreQR - -[Read this in english](README.md) - -Une interface Web en PHP pour générer des codes QR. - -## Démo - -Une instance de LibreQR est disponible sur . - -## Installation - -### Générique - -Placez simplement ce code source dans un serveur Web avec PHP. - -`wget https://code.antopie.org/miraty/libreqr/archive/1.3.0.zip` - -L'extension GD est requise. - -`apt install php7.3-gd` - -LibreQR a besoin des permissions d'écriture dans le dossier `css/`. - -``` -chown -R www-data:www-data /var/www/libreqr/css -chmod -R 600 /var/www/libreqr/css -``` - -#### Durcir la sécurité - -Votre serveur HTTP peut répondre avec les entêtes suivantes : -``` -Content-Security-Policy: default-src 'none'; img-src 'self' data:; style-src 'self'; frame-ancestors 'none'; form-action 'self'; -Referrer-Policy: no-referrer -``` - -### YunoHost - -Il y a [un paquet](https://code.antopie.org/miraty/qr_ynh/) pour [YunoHost](https://yunohost.org/). - -Pour des raisons historiques, LibreQR est techniquement nommée `qr` dans YunoHost. - -Vous pouvez l'installer depuis l'interface Web d'administration ou avec cette commande : - -``` -sudo yunohost app install qr -``` - -## Themes - -Les thèmes sont situés dans `themes/`, le thème par défaut est dans `themes/libreqr`. - -Vous pouvez personnaliser l'apparence de votre instance LibreQR en changeant les couleurs dans `theme.php`, le logo dans `logo.less` ou les icônes dans `icons/.png` (ensuite indiquer leur taille dans `theme.php`). - -## Contribuer - -Si vous souhaitez rapporter un bug, vous pouvez ouvrir un ticket sur après vous être créé un compte (méthode préférée) ou me contacter d'une autre manière. - -## Contact - -Si vous voulez me contacter, par exemple pour signaler un bug ou me poser une question sur l'installation ou l'utilisation de LibreQR, vous trouverez des moyens de me contacter sur . - -## Bibliothèques tierces - -Ce code source inclus : - -* [CodeItNow Barcode & QrCode Generator](https://github.com/codeitnowin/barcode-generator) pour générer les codes QR -* [less.php](https://github.com/wikimedia/less.php) pour compiler le [Less](http://lesscss.org) - -## Licence - -[AGPLv3+](https://code.antopie.org/miraty/libreqr/src/branch/main/LICENSE) - -LibreQR est un logiciel libre ; vous pouvez le diffuser et le modifier suivant les termes de la GNU Affero General Public License telle que publiée par la Free Software Foundation ; soit la version 3 de cette licence, soit (à votre convenance) une version ultérieure. - -LibreQR est diffusé dans l’espoir qu’il sera utile, mais SANS AUCUNE GARANTIE ; sans même une garantie implicite de COMMERCIALISATION ou d’ADÉQUATION À UN USAGE PARTICULIER. Voyez la GNU Affero General Public License pour plus de détails. - -Vous devriez avoir reçu une copie de la GNU Affero General Public License avec ce code. Sinon, consultez diff --git a/barcode-generator/Generator/CINArgumentException.php b/barcode-generator/Generator/CINArgumentException.php deleted file mode 100644 index 7ea4aff..0000000 --- a/barcode-generator/Generator/CINArgumentException.php +++ /dev/null @@ -1,31 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ - -namespace CodeItNow\BarcodeBundle\Generator; -use Exception; - -class CINArgumentException extends Exception { - protected $param; - - /** - * Constructor with specific message for a parameter. - * - * @param string $message - * @param string $param - */ - public function __construct($message, $param) { - $this->param = $param; - parent::__construct($message, 20000); - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/CINBarcode.php b/barcode-generator/Generator/CINBarcode.php deleted file mode 100644 index 26126cc..0000000 --- a/barcode-generator/Generator/CINBarcode.php +++ /dev/null @@ -1,439 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; -use CodeItNow\BarcodeBundle\Generator\CINColor; -use CodeItNow\BarcodeBundle\Generator\CINLabel; -use CodeItNow\BarcodeBundle\Generator\CINArgumentException; -use CodeItNow\BarcodeBundle\Generator\CINDrawException; - -abstract class CINBarcode { - const COLOR_BG = 0; - const COLOR_FG = 1; - - protected $colorFg, $colorBg; // Color Foreground, Barckground - protected $scale; // Scale of the graphic, default: 1 - protected $offsetX, $offsetY; // Position where to start the drawing - protected $labels = array(); // Array of CINLabel - protected $pushLabel = array(0, 0); // Push for the label, left and top - - /** - * Constructor. - */ - protected function __construct() { - $this->setOffsetX(0); - $this->setOffsetY(0); - $this->setForegroundColor(0x000000); - $this->setBackgroundColor(0xffffff); - $this->setScale(1); - } - - /** - * Parses the text before displaying it. - * - * @param mixed $text - */ - public function parse($text) { - } - - /** - * Gets the foreground color of the barcode. - * - * @return CINColor - */ - public function getForegroundColor() { - return $this->colorFg; - } - - /** - * Sets the foreground color of the barcode. It could be a CINColor - * value or simply a language code (white, black, yellow...) or hex value. - * - * @param mixed $code - */ - public function setForegroundColor($code) { - if ($code instanceof CINColor) { - $this->colorFg = $code; - } else { - $this->colorFg = new CINColor($code); - } - } - - /** - * Gets the background color of the barcode. - * - * @return CINColor - */ - public function getBackgroundColor() { - return $this->colorBg; - } - - /** - * Sets the background color of the barcode. It could be a CINColor - * value or simply a language code (white, black, yellow...) or hex value. - * - * @param mixed $code - */ - public function setBackgroundColor($code) { - if ($code instanceof CINColor) { - $this->colorBg = $code; - } else { - $this->colorBg = new CINColor($code); - } - - foreach ($this->labels as $label) { - $label->setBackgroundColor($this->colorBg); - } - } - - /** - * Sets the color. - * - * @param mixed $fg - * @param mixed $bg - */ - public function setColor($fg, $bg) { - $this->setForegroundColor($fg); - $this->setBackgroundColor($bg); - } - - /** - * Gets the scale of the barcode. - * - * @return int - */ - public function getScale() { - return $this->scale; - } - - /** - * Sets the scale of the barcode in pixel. - * If the scale is lower than 1, an exception is raised. - * - * @param int $scale - */ - public function setScale($scale) { - $scale = intval($scale); - if ($scale <= 0) { - throw new CINArgumentException('The scale must be larger than 0.', 'scale'); - } - - $this->scale = $scale; - } - - /** - * Abstract method that draws the barcode on the resource. - * - * @param resource $im - */ - public abstract function draw($im); - - /** - * Returns the maximal size of a barcode. - * [0]->width - * [1]->height - * - * @param int $w - * @param int $h - * @return int[] - */ - public function getDimension($w, $h) { - $labels = $this->getBiggestLabels(false); - $pixelsAround = array(0, 0, 0, 0); // TRBL - if (isset($labels[CINLabel::POSITION_TOP])) { - $dimension = $labels[CINLabel::POSITION_TOP]->getDimension(); - $pixelsAround[0] += $dimension[1]; - } - - if (isset($labels[CINLabel::POSITION_RIGHT])) { - $dimension = $labels[CINLabel::POSITION_RIGHT]->getDimension(); - $pixelsAround[1] += $dimension[0]; - } - - if (isset($labels[CINLabel::POSITION_BOTTOM])) { - $dimension = $labels[CINLabel::POSITION_BOTTOM]->getDimension(); - $pixelsAround[2] += $dimension[1]; - } - - if (isset($labels[CINLabel::POSITION_LEFT])) { - $dimension = $labels[CINLabel::POSITION_LEFT]->getDimension(); - $pixelsAround[3] += $dimension[0]; - } - - $finalW = ($w + $this->offsetX) * $this->scale; - $finalH = ($h + $this->offsetY) * $this->scale; - - // This section will check if a top/bottom label is too big for its width and left/right too big for its height - $reversedLabels = $this->getBiggestLabels(true); - foreach ($reversedLabels as $label) { - $dimension = $label->getDimension(); - $alignment = $label->getAlignment(); - if ($label->getPosition() === CINLabel::POSITION_LEFT || $label->getPosition() === CINLabel::POSITION_RIGHT) { - if ($alignment === CINLabel::ALIGN_TOP) { - $pixelsAround[2] = max($pixelsAround[2], $dimension[1] - $finalH); - } elseif ($alignment === CINLabel::ALIGN_CENTER) { - $temp = ceil(($dimension[1] - $finalH) / 2); - $pixelsAround[0] = max($pixelsAround[0], $temp); - $pixelsAround[2] = max($pixelsAround[2], $temp); - } elseif ($alignment === CINLabel::ALIGN_BOTTOM) { - $pixelsAround[0] = max($pixelsAround[0], $dimension[1] - $finalH); - } - } else { - if ($alignment === CINLabel::ALIGN_LEFT) { - $pixelsAround[1] = max($pixelsAround[1], $dimension[0] - $finalW); - } elseif ($alignment === CINLabel::ALIGN_CENTER) { - $temp = ceil(($dimension[0] - $finalW) / 2); - $pixelsAround[1] = max($pixelsAround[1], $temp); - $pixelsAround[3] = max($pixelsAround[3], $temp); - } elseif ($alignment === CINLabel::ALIGN_RIGHT) { - $pixelsAround[3] = max($pixelsAround[3], $dimension[0] - $finalW); - } - } - } - - $this->pushLabel[0] = $pixelsAround[3]; - $this->pushLabel[1] = $pixelsAround[0]; - - $finalW = ($w + $this->offsetX) * $this->scale + $pixelsAround[1] + $pixelsAround[3]; - $finalH = ($h + $this->offsetY) * $this->scale + $pixelsAround[0] + $pixelsAround[2]; - - return array($finalW, $finalH); - } - - /** - * Gets the X offset. - * - * @return int - */ - public function getOffsetX() { - return $this->offsetX; - } - - /** - * Sets the X offset. - * - * @param int $offsetX - */ - public function setOffsetX($offsetX) { - $offsetX = intval($offsetX); - if ($offsetX < 0) { - throw new CINArgumentException('The offset X must be 0 or larger.', 'offsetX'); - } - - $this->offsetX = $offsetX; - } - - /** - * Gets the Y offset. - * - * @return int - */ - public function getOffsetY() { - return $this->offsetY; - } - - /** - * Sets the Y offset. - * - * @param int $offsetY - */ - public function setOffsetY($offsetY) { - $offsetY = intval($offsetY); - if ($offsetY < 0) { - throw new CINArgumentException('The offset Y must be 0 or larger.', 'offsetY'); - } - - $this->offsetY = $offsetY; - } - - /** - * Adds the label to the drawing. - * - * @param CINLabel $label - */ - public function addLabel(CINLabel $label) { - $label->setBackgroundColor($this->colorBg); - $label->setForegroundColor($this->colorFg); - $this->labels[] = $label; - } - - /** - * Removes the label from the drawing. - * - * @param CINLabel $label - */ - public function removeLabel(CINLabel $label) { - $remove = -1; - $c = count($this->labels); - for ($i = 0; $i < $c; $i++) { - if ($this->labels[$i] === $label) { - $remove = $i; - break; - } - } - - if ($remove > -1) { - array_splice($this->labels, $remove, 1); - } - } - - /** - * Clears the labels. - */ - public function clearLabels() { - $this->labels = array(); - } - - /** - * Draws the text. - * The coordinate passed are the positions of the barcode. - * $x1 and $y1 represent the top left corner. - * $x2 and $y2 represent the bottom right corner. - * - * @param resource $im - * @param int $x1 - * @param int $y1 - * @param int $x2 - * @param int $y2 - */ - protected function drawText($im, $x1, $y1, $x2, $y2) { - foreach ($this->labels as $label) { - $label->draw($im, - ($x1 + $this->offsetX) * $this->scale + $this->pushLabel[0], - ($y1 + $this->offsetY) * $this->scale + $this->pushLabel[1], - ($x2 + $this->offsetX) * $this->scale + $this->pushLabel[0], - ($y2 + $this->offsetY) * $this->scale + $this->pushLabel[1]); - } - } - - /** - * Draws 1 pixel on the resource at a specific position with a determined color. - * - * @param resource $im - * @param int $x - * @param int $y - * @param int $color - */ - protected function drawPixel($im, $x, $y, $color = self::COLOR_FG) { - $xR = ($x + $this->offsetX) * $this->scale + $this->pushLabel[0]; - $yR = ($y + $this->offsetY) * $this->scale + $this->pushLabel[1]; - - // We always draw a rectangle - imagefilledrectangle($im, - $xR, - $yR, - $xR + $this->scale - 1, - $yR + $this->scale - 1, - $this->getColor($im, $color)); - } - - /** - * Draws an empty rectangle on the resource at a specific position with a determined color. - * - * @param resource $im - * @param int $x1 - * @param int $y1 - * @param int $x2 - * @param int $y2 - * @param int $color - */ - protected function drawRectangle($im, $x1, $y1, $x2, $y2, $color = self::COLOR_FG) { - if ($this->scale === 1) { - imagefilledrectangle($im, - ($x1 + $this->offsetX) + $this->pushLabel[0], - ($y1 + $this->offsetY) + $this->pushLabel[1], - ($x2 + $this->offsetX) + $this->pushLabel[0], - ($y2 + $this->offsetY) + $this->pushLabel[1], - $this->getColor($im, $color)); - } else { - imagefilledrectangle($im, ($x1 + $this->offsetX) * $this->scale + $this->pushLabel[0], ($y1 + $this->offsetY) * $this->scale + $this->pushLabel[1], ($x2 + $this->offsetX) * $this->scale + $this->pushLabel[0] + $this->scale - 1, ($y1 + $this->offsetY) * $this->scale + $this->pushLabel[1] + $this->scale - 1, $this->getColor($im, $color)); - imagefilledrectangle($im, ($x1 + $this->offsetX) * $this->scale + $this->pushLabel[0], ($y1 + $this->offsetY) * $this->scale + $this->pushLabel[1], ($x1 + $this->offsetX) * $this->scale + $this->pushLabel[0] + $this->scale - 1, ($y2 + $this->offsetY) * $this->scale + $this->pushLabel[1] + $this->scale - 1, $this->getColor($im, $color)); - imagefilledrectangle($im, ($x2 + $this->offsetX) * $this->scale + $this->pushLabel[0], ($y1 + $this->offsetY) * $this->scale + $this->pushLabel[1], ($x2 + $this->offsetX) * $this->scale + $this->pushLabel[0] + $this->scale - 1, ($y2 + $this->offsetY) * $this->scale + $this->pushLabel[1] + $this->scale - 1, $this->getColor($im, $color)); - imagefilledrectangle($im, ($x1 + $this->offsetX) * $this->scale + $this->pushLabel[0], ($y2 + $this->offsetY) * $this->scale + $this->pushLabel[1], ($x2 + $this->offsetX) * $this->scale + $this->pushLabel[0] + $this->scale - 1, ($y2 + $this->offsetY) * $this->scale + $this->pushLabel[1] + $this->scale - 1, $this->getColor($im, $color)); - } - } - - /** - * Draws a filled rectangle on the resource at a specific position with a determined color. - * - * @param resource $im - * @param int $x1 - * @param int $y1 - * @param int $x2 - * @param int $y2 - * @param int $color - */ - protected function drawFilledRectangle($im, $x1, $y1, $x2, $y2, $color = self::COLOR_FG) { - if ($x1 > $x2) { // Swap - $x1 ^= $x2 ^= $x1 ^= $x2; - } - - if ($y1 > $y2) { // Swap - $y1 ^= $y2 ^= $y1 ^= $y2; - } - - imagefilledrectangle($im, - ($x1 + $this->offsetX) * $this->scale + $this->pushLabel[0], - ($y1 + $this->offsetY) * $this->scale + $this->pushLabel[1], - ($x2 + $this->offsetX) * $this->scale + $this->pushLabel[0] + $this->scale - 1, - ($y2 + $this->offsetY) * $this->scale + $this->pushLabel[1] + $this->scale - 1, - $this->getColor($im, $color)); - } - - /** - * Allocates the color based on the integer. - * - * @param resource $im - * @param int $color - * @return resource - */ - protected function getColor($im, $color) { - if ($color === self::COLOR_BG) { - return $this->colorBg->allocate($im); - } else { - return $this->colorFg->allocate($im); - } - } - - /** - * Returning the biggest label widths for LEFT/RIGHT and heights for TOP/BOTTOM. - * - * @param bool $reversed - * @return CINLabel[] - */ - private function getBiggestLabels($reversed = false) { - $searchLR = $reversed ? 1 : 0; - $searchTB = $reversed ? 0 : 1; - - $labels = array(); - foreach ($this->labels as $label) { - $position = $label->getPosition(); - if (isset($labels[$position])) { - $savedDimension = $labels[$position]->getDimension(); - $dimension = $label->getDimension(); - if ($position === CINLabel::POSITION_LEFT || $position === CINLabel::POSITION_RIGHT) { - if ($dimension[$searchLR] > $savedDimension[$searchLR]) { - $labels[$position] = $label; - } - } else { - if ($dimension[$searchTB] > $savedDimension[$searchTB]) { - $labels[$position] = $label; - } - } - } else { - $labels[$position] = $label; - } - } - - return $labels; - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/CINBarcode1D.php b/barcode-generator/Generator/CINBarcode1D.php deleted file mode 100644 index 5ec4588..0000000 --- a/barcode-generator/Generator/CINBarcode1D.php +++ /dev/null @@ -1,262 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; -use CodeItNow\BarcodeBundle\Generator\CINArgumentException; -use CodeItNow\BarcodeBundle\Generator\CINBarcode1D; -use CodeItNow\BarcodeBundle\Generator\CINFontPhp; -use CodeItNow\BarcodeBundle\Generator\CINFontFile; -use CodeItNow\BarcodeBundle\Generator\CINLabel; - - -abstract class CINBarcode1D extends CINBarcode { - const SIZE_SPACING_FONT = 5; - - const AUTO_LABEL = '##!!AUTO_LABEL!!##'; - - protected $thickness; // int - protected $keys, $code; // string[] - protected $positionX; // int - protected $font; // CINFont - protected $text; // string - protected $checksumValue; // int or int[] - protected $displayChecksum; // bool - protected $label; // string - protected $defaultLabel; // CINLabel - - /** - * Constructor. - */ - protected function __construct() { - parent::__construct(); - - $this->setThickness(30); - - $this->defaultLabel = new CINLabel(); - $this->defaultLabel->setPosition(CINLabel::POSITION_BOTTOM); - $this->setLabel(self::AUTO_LABEL); - $this->setFont(new CINFontPhp(5)); - - $this->text = ''; - $this->checksumValue = false; - $this->positionX = 0; - } - - /** - * Gets the thickness. - * - * @return int - */ - public function getThickness() { - return $this->thickness; - } - - /** - * Sets the thickness. - * - * @param int $thickness - */ - public function setThickness($thickness) { - $thickness = intval($thickness); - if ($thickness <= 0) { - throw new CINArgumentException('The thickness must be larger than 0.', 'thickness'); - } - - $this->thickness = $thickness; - } - - /** - * Gets the label. - * If the label was set to CINBarcode1D::AUTO_LABEL, the label will display the value from the text parsed. - * - * @return string - */ - public function getLabel() { - $label = $this->label; - if ($this->label === self::AUTO_LABEL) { - $label = $this->text; - if ($this->displayChecksum === true && ($checksum = $this->processChecksum()) !== false) { - $label .= $checksum; - } - } - - return $label; - } - - /** - * Sets the label. - * You can use CINBarcode::AUTO_LABEL to have the label automatically written based on the parsed text. - * - * @param string $label - */ - public function setLabel($label) { - $this->label = $label; - } - - /** - * Gets the font. - * - * @return CINFont - */ - public function getFont() { - return $this->font; - } - - /** - * Sets the font. - * - * @param mixed $font CINFont or int - */ - public function setFont($font) { - if (is_int($font)) { - if ($font === 0) { - $font = null; - } else { - $font = new CINFontPhp($font); - } - } - - $this->font = $font; - } - - /** - * Parses the text before displaying it. - * - * @param mixed $text - */ - public function parse($text) { - $this->text = $text; - $this->checksumValue = false; // Reset checksumValue - $this->validate(); - - parent::parse($text); - - $this->addDefaultLabel(); - } - - /** - * Gets the checksum of a Barcode. - * If no checksum is available, return FALSE. - * - * @return string - */ - public function getChecksum() { - return $this->processChecksum(); - } - - /** - * Sets if the checksum is displayed with the label or not. - * The checksum must be activated in some case to make this variable effective. - * - * @param boolean $displayChecksum - */ - public function setDisplayChecksum($displayChecksum) { - $this->displayChecksum = (bool)$displayChecksum; - } - - /** - * Adds the default label. - */ - protected function addDefaultLabel() { - $label = $this->getLabel(); - $font = $this->font; - if ($label !== null && $label !== '' && $font !== null && $this->defaultLabel !== null) { - $this->defaultLabel->setText($label); - $this->defaultLabel->setFont($font); - $this->addLabel($this->defaultLabel); - } - } - - /** - * Validates the input - */ - protected function validate() { - // No validation in the abstract class. - } - - /** - * Returns the index in $keys (useful for checksum). - * - * @param mixed $var - * @return mixed - */ - protected function findIndex($var) { - return array_search($var, $this->keys); - } - - /** - * Returns the code of the char (useful for drawing bars). - * - * @param mixed $var - * @return string - */ - protected function findCode($var) { - return $this->code[$this->findIndex($var)]; - } - - /** - * Draws all chars thanks to $code. If $startBar is true, the line begins by a space. - * If $startBar is false, the line begins by a bar. - * - * @param resource $im - * @param string $code - * @param boolean $startBar - */ - protected function drawChar($im, $code, $startBar = true) { - $colors = array(CINBarcode::COLOR_FG, CINBarcode::COLOR_BG); - $currentColor = $startBar ? 0 : 1; - $c = strlen($code); - for ($i = 0; $i < $c; $i++) { - for ($j = 0; $j < intval($code[$i]) + 1; $j++) { - $this->drawSingleBar($im, $colors[$currentColor]); - $this->nextX(); - } - - $currentColor = ($currentColor + 1) % 2; - } - } - - /** - * Draws a Bar of $color depending of the resolution. - * - * @param resource $img - * @param int $color - */ - protected function drawSingleBar($im, $color) { - $this->drawFilledRectangle($im, $this->positionX, 0, $this->positionX, $this->thickness - 1, $color); - } - - /** - * Moving the pointer right to write a bar. - */ - protected function nextX() { - $this->positionX++; - } - - /** - * Method that saves FALSE into the checksumValue. This means no checksum - * but this method should be overriden when needed. - */ - protected function calculateChecksum() { - $this->checksumValue = false; - } - - /** - * Returns FALSE because there is no checksum. This method should be - * overriden to return correctly the checksum in string with checksumValue. - * - * @return string - */ - protected function processChecksum() { - return false; - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/CINColor.php b/barcode-generator/Generator/CINColor.php deleted file mode 100644 index 27e9a66..0000000 --- a/barcode-generator/Generator/CINColor.php +++ /dev/null @@ -1,157 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; - -class CINColor { - protected $r, $g, $b; // int Hexadecimal Value - protected $transparent; - - /** - * Save RGB value into the classes. - * - * There are 4 way to associate color with this classes : - * 1. Gives 3 parameters int (R, G, B) - * 2. Gives 1 parameter string hex value (#ff0000) (preceding with #) - * 3. Gives 1 parameter int hex value (0xff0000) - * 4. Gives 1 parameter string color code (white, black, orange...) - * - * @param mixed ... - */ - public function __construct() { - $args = func_get_args(); - $c = count($args); - if ($c === 3) { - $this->r = intval($args[0]); - $this->g = intval($args[1]); - $this->b = intval($args[2]); - } elseif ($c === 1) { - if (is_string($args[0]) && strlen($args[0]) === 7 && $args[0][0] === '#') { // Hex Value in String - $this->r = intval(substr($args[0], 1, 2), 16); - $this->g = intval(substr($args[0], 3, 2), 16); - $this->b = intval(substr($args[0], 5, 2), 16); - } else { - if (is_string($args[0])) { - $args[0] = self::getColor($args[0]); - } - - $args[0] = intval($args[0]); - $this->r = ($args[0] & 0xff0000) >> 16; - $this->g = ($args[0] & 0x00ff00) >> 8; - $this->b = ($args[0] & 0x0000ff); - } - } else { - $this->r = $this->g = $this->b = 0; - } - } - - /** - * Sets the color transparent. - * - * @param bool $transparent - */ - public function setTransparent($transparent) { - $this->transparent = $transparent; - } - - /** - * Returns Red Color. - * - * @return int - */ - public function r() { - return $this->r; - } - - /** - * Returns Green Color. - * - * @return int - */ - public function g() { - return $this->g; - } - - /** - * Returns Blue Color. - * - * @return int - */ - public function b() { - return $this->b; - } - - /** - * Returns the int value for PHP color. - * - * @param resource $im - * @return int - */ - public function allocate(&$im) { - $allocated = imagecolorallocate($im, $this->r, $this->g, $this->b); - if ($this->transparent) { - return imagecolortransparent($im, $allocated); - } else { - return $allocated; - } - } - - /** - * Returns class of CINColor depending of the string color. - * - * If the color doens't exist, it takes the default one. - * - * @param string $code - * @param string $default - */ - public static function getColor($code, $default = 'white') { - switch(strtolower($code)) { - case '': - case 'white': - return 0xffffff; - case 'black': - return 0x000000; - case 'maroon': - return 0x800000; - case 'red': - return 0xff0000; - case 'orange': - return 0xffa500; - case 'yellow': - return 0xffff00; - case 'olive': - return 0x808000; - case 'purple': - return 0x800080; - case 'fuchsia': - return 0xff00ff; - case 'lime': - return 0x00ff00; - case 'green': - return 0x008000; - case 'navy': - return 0x000080; - case 'blue': - return 0x0000ff; - case 'aqua': - return 0x00ffff; - case 'teal': - return 0x008080; - case 'silver': - return 0xc0c0c0; - case 'gray': - return 0x808080; - default: - return self::getColor($default, 'white'); - } - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/CINDrawException.php b/barcode-generator/Generator/CINDrawException.php deleted file mode 100644 index ec5312d..0000000 --- a/barcode-generator/Generator/CINDrawException.php +++ /dev/null @@ -1,25 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; -use Exception; - -class CINDrawException extends Exception { - /** - * Constructor with specific message. - * - * @param string $message - */ - public function __construct($message) { - parent::__construct($message, 30000); - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/CINDrawing.php b/barcode-generator/Generator/CINDrawing.php deleted file mode 100644 index 57b51c1..0000000 --- a/barcode-generator/Generator/CINDrawing.php +++ /dev/null @@ -1,250 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; -use CodeItNow\BarcodeBundle\Generator\CINBarcode; -use CodeItNow\BarcodeBundle\Generator\CINColor; -use CodeItNow\BarcodeBundle\Generator\CINDrawException; -use CodeItNow\BarcodeBundle\Generator\Drawer\CINDrawJPG; -use CodeItNow\BarcodeBundle\Generator\Drawer\CINDrawPNG; - -class CINDrawing { - const IMG_FORMAT_PNG = 1; - const IMG_FORMAT_JPEG = 2; - const IMG_FORMAT_GIF = 3; - const IMG_FORMAT_WBMP = 4; - - private $w, $h; // int - private $color; // CINColor - private $filename; // char * - private $im; // {object} - private $barcode; // CINBarcode - private $dpi; // float - private $rotateDegree; // float - - /** - * Constructor. - * - * @param int $w - * @param int $h - * @param string filename - * @param CINColor $color - */ - public function __construct($filename, CINColor $color) { - $this->im = null; - $this->setFilename($filename); - $this->color = $color; - $this->dpi = null; - $this->rotateDegree = 0.0; - } - - /** - * Destructor. - */ - public function __destruct() { - $this->destroy(); - } - - /** - * Gets the filename. - * - * @return string - */ - public function getFilename() { - return $this->filename; - } - - /** - * Sets the filename. - * - * @param string $filaneme - */ - public function setFilename($filename) { - $this->filename = $filename; - } - - /** - * @return resource. - */ - public function get_im() { - return $this->im; - } - - /** - * Sets the image. - * - * @param resource $im - */ - public function set_im($im) { - $this->im = $im; - } - - /** - * Gets barcode for drawing. - * - * @return CINBarcode - */ - public function getBarcode() { - return $this->barcode; - } - - /** - * Sets barcode for drawing. - * - * @param CINBarcode $barcode - */ - public function setBarcode(CINBarcode $barcode) { - $this->barcode = $barcode; - } - - /** - * Gets the DPI for supported filetype. - * - * @return float - */ - public function getDPI() { - return $this->dpi; - } - - /** - * Sets the DPI for supported filetype. - * - * @param float $dpi - */ - public function setDPI($dpi) { - $this->dpi = $dpi; - } - - /** - * Gets the rotation angle in degree clockwise. - * - * @return float - */ - public function getRotationAngle() { - return $this->rotateDegree; - } - - /** - * Sets the rotation angle in degree clockwise. - * - * @param float $degree - */ - public function setRotationAngle($degree) { - $this->rotateDegree = (float)$degree; - } - - /** - * Draws the barcode on the image $im. - */ - public function draw() { - $size = $this->barcode->getDimension(0, 0); - $this->w = max(1, $size[0]); - $this->h = max(1, $size[1]); - $this->init(); - $this->barcode->draw($this->im); - } - - /** - * Saves $im into the file (many format available). - * - * @param int $image_style - * @param int $quality - */ - public function finish($image_style = self::IMG_FORMAT_PNG, $quality = 100) { - $drawer = null; - - $im = $this->im; - if ($this->rotateDegree > 0.0) { - if (function_exists('imagerotate')) { - $im = imagerotate($this->im, 360 - $this->rotateDegree, $this->color->allocate($this->im)); - } else { - throw new CINDrawException('The method imagerotate doesn\'t exist on your server. Do not use any rotation.'); - } - } - - if ($image_style === self::IMG_FORMAT_PNG) { - $drawer = new CINDrawPNG($im); - $drawer->setFilename($this->filename); - $drawer->setDPI($this->dpi); - } elseif ($image_style === self::IMG_FORMAT_JPEG) { - $drawer = new CINDrawJPG($im); - $drawer->setFilename($this->filename); - $drawer->setDPI($this->dpi); - $drawer->setQuality($quality); - } elseif ($image_style === self::IMG_FORMAT_GIF) { - // Some PHP versions have a bug if passing 2nd argument as null. - if ($this->filename === null || $this->filename === '') { - imagegif($im); - } else { - imagegif($im, $this->filename); - } - } elseif ($image_style === self::IMG_FORMAT_WBMP) { - imagewbmp($im, $this->filename); - } - - if ($drawer !== null) { - $drawer->draw(); - } - } - - /** - * Writes the Error on the picture. - * - * @param Exception $exception - */ - public function drawException($exception) { - $this->w = 1; - $this->h = 1; - $this->init(); - - // Is the image big enough? - $w = imagesx($this->im); - $h = imagesy($this->im); - - $text = 'Error: ' . $exception->getMessage(); - - $width = imagefontwidth(2) * strlen($text); - $height = imagefontheight(2); - if ($width > $w || $height > $h) { - $width = max($w, $width); - $height = max($h, $height); - - // We change the size of the image - $newimg = imagecreatetruecolor($width, $height); - imagefill($newimg, 0, 0, imagecolorat($this->im, 0, 0)); - imagecopy($newimg, $this->im, 0, 0, 0, 0, $w, $h); - $this->im = $newimg; - } - - $black = new CINColor('black'); - imagestring($this->im, 2, 0, 0, $text, $black->allocate($this->im)); - } - - /** - * Free the memory of PHP (called also by destructor). - */ - public function destroy() { - @imagedestroy($this->im); - } - - /** - * Init Image and color background. - */ - private function init() { - if ($this->im === null) { - $this->im = imagecreatetruecolor($this->w, $this->h) - or die('Can\'t Initialize the GD Libraty'); - imagefilledrectangle($this->im, 0, 0, $this->w - 1, $this->h - 1, $this->color->allocate($this->im)); - } - } -} -?> diff --git a/barcode-generator/Generator/CINFont.php b/barcode-generator/Generator/CINFont.php deleted file mode 100644 index 6e246d2..0000000 --- a/barcode-generator/Generator/CINFont.php +++ /dev/null @@ -1,26 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; - -interface CINFont { - public /*internal*/ function getText(); - public /*internal*/ function setText($text); - public /*internal*/ function getRotationAngle(); - public /*internal*/ function setRotationAngle($rotationDegree); - public /*internal*/ function getBackgroundColor(); - public /*internal*/ function setBackgroundColor($backgroundColor); - public /*internal*/ function getForegroundColor(); - public /*internal*/ function setForegroundColor($foregroundColor); - public /*internal*/ function getDimension(); - public /*internal*/ function draw($im, $x, $y); -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/CINFontFile.php b/barcode-generator/Generator/CINFontFile.php deleted file mode 100644 index fb38bba..0000000 --- a/barcode-generator/Generator/CINFontFile.php +++ /dev/null @@ -1,211 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; -use CodeItNow\BarcodeBundle\Generator\CINArgumentException; -use CodeItNow\BarcodeBundle\Generator\CINFont; -use CodeItNow\BarcodeBundle\Generator\CINColor; - -class CINFontFile implements CINFont { - const PHP_BOX_FIX = 0; - - private $path; - private $size; - private $text = ''; - private $foregroundColor; - private $rotationAngle; - private $box; - private $boxFix; - - /** - * Constructor. - * - * @param string $fontPath path to the file - * @param int $size size in point - */ - public function __construct($fontPath, $size) { - if (!file_exists($fontPath)) { - throw new CINArgumentException('The font path is incorrect.', 'fontPath'); - } - - $this->path = $fontPath; - $this->size = $size; - $this->foregroundColor = new CINColor('black'); - $this->setRotationAngle(0); - $this->setBoxFix(self::PHP_BOX_FIX); - } - - /** - * Gets the text associated to the font. - * - * @return string - */ - public function getText() { - return $this->text; - } - - /** - * Sets the text associated to the font. - * - * @param string text - */ - public function setText($text) { - $this->text = $text; - $this->box = null; - } - - /** - * Gets the rotation in degree. - * - * @return int - */ - public function getRotationAngle() { - return (360 - $this->rotationAngle) % 360; - } - - /** - * Sets the rotation in degree. - * - * @param int - */ - public function setRotationAngle($rotationAngle) { - $this->rotationAngle = (int)$rotationAngle; - if ($this->rotationAngle !== 90 && $this->rotationAngle !== 180 && $this->rotationAngle !== 270) { - $this->rotationAngle = 0; - } - - $this->rotationAngle = (360 - $this->rotationAngle) % 360; - - $this->box = null; - } - - /** - * Gets the background color. - * - * @return CINColor - */ - public function getBackgroundColor() { - } - - /** - * Sets the background color. - * - * @param CINColor $backgroundColor - */ - public function setBackgroundColor($backgroundColor) { - } - - /** - * Gets the foreground color. - * - * @return CINColor - */ - public function getForegroundColor() { - return $this->foregroundColor; - } - - /** - * Sets the foreground color. - * - * @param CINColor $foregroundColor - */ - public function setForegroundColor($foregroundColor) { - $this->foregroundColor = $foregroundColor; - } - - /** - * Gets the box fix information. - * - * @return int - */ - public function getBoxFix() { - return $this->boxFix; - } - - /** - * Sets the box fix information. - * - * @param int $value - */ - public function setBoxFix($value) { - $this->boxFix = intval($value); - } - - /** - * Returns the width and height that the text takes to be written. - * - * @return int[] - */ - public function getDimension() { - $w = 0.0; - $h = 0.0; - $box = $this->getBox(); - - if ($box !== null) { - $minX = min(array($box[0], $box[2], $box[4], $box[6])); - $maxX = max(array($box[0], $box[2], $box[4], $box[6])); - $minY = min(array($box[1], $box[3], $box[5], $box[7])); - $maxY = max(array($box[1], $box[3], $box[5], $box[7])); - - $w = $maxX - $minX; - $h = $maxY - $minY; - } - - $rotationAngle = $this->getRotationAngle(); - if ($rotationAngle === 90 || $rotationAngle === 270) { - return array($h + self::PHP_BOX_FIX, $w); - } else { - return array($w + self::PHP_BOX_FIX, $h); - } - } - - /** - * Draws the text on the image at a specific position. - * $x and $y represent the left bottom corner. - * - * @param resource $im - * @param int $x - * @param int $y - */ - public function draw($im, $x, $y) { - $drawingPosition = $this->getDrawingPosition($x, $y); - imagettftext($im, $this->size, $this->rotationAngle, $drawingPosition[0], $drawingPosition[1], $this->foregroundColor->allocate($im), $this->path, $this->text); - } - - private function getDrawingPosition($x, $y) { - $dimension = $this->getDimension(); - $box = $this->getBox(); - $rotationAngle = $this->getRotationAngle(); - if ($rotationAngle === 0) { - $y += abs(min($box[5], $box[7])); - } elseif ($rotationAngle === 90) { - $x += abs(min($box[5], $box[7])); - $y += $dimension[1]; - } elseif ($rotationAngle === 180) { - $x += $dimension[0]; - $y += abs(max($box[1], $box[3])); - } elseif ($rotationAngle === 270) { - $x += abs(max($box[1], $box[3])); - } - - return array($x, $y); - } - - private function getBox() { - if ($this->box === null) { - $gd = imagecreate(1, 1); - $this->box = imagettftext($gd, $this->size, 0, 0, 0, 0, $this->path, $this->text); - } - - return $this->box; - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/CINFontPhp.php b/barcode-generator/Generator/CINFontPhp.php deleted file mode 100644 index ae347a6..0000000 --- a/barcode-generator/Generator/CINFontPhp.php +++ /dev/null @@ -1,155 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; -use CodeItNow\BarcodeBundle\Generator\CINFont; -use CodeItNow\BarcodeBundle\Generator\CINColor; - -class CINFontPhp implements CINFont { - private $font; - private $text; - private $rotationAngle; - private $backgroundColor; - private $foregroundColor; - - /** - * Constructor. - * - * @param int $font - */ - public function __construct($font) { - $this->font = max(0, intval($font)); - $this->backgroundColor = new CINColor('white'); - $this->foregroundColor = new CINColor('black'); - $this->setRotationAngle(0); - } - - /** - * Gets the text associated to the font. - * - * @return string - */ - public function getText() { - return $this->text; - } - - /** - * Sets the text associated to the font. - * - * @param string text - */ - public function setText($text) { - $this->text = $text; - } - - /** - * Gets the rotation in degree. - * - * @return int - */ - public function getRotationAngle() { - return (360 - $this->rotationAngle) % 360; - } - - /** - * Sets the rotation in degree. - * - * @param int - */ - public function setRotationAngle($rotationAngle) { - $this->rotationAngle = (int)$rotationAngle; - if ($this->rotationAngle !== 90 && $this->rotationAngle !== 180 && $this->rotationAngle !== 270) { - $this->rotationAngle = 0; - } - - $this->rotationAngle = (360 - $this->rotationAngle) % 360; - } - - /** - * Gets the background color. - * - * @return CINColor - */ - public function getBackgroundColor() { - return $this->backgroundColor; - } - - /** - * Sets the background color. - * - * @param CINColor $backgroundColor - */ - public function setBackgroundColor($backgroundColor) { - $this->backgroundColor = $backgroundColor; - } - - /** - * Gets the foreground color. - * - * @return CINColor - */ - public function getForegroundColor() { - return $this->foregroundColor; - } - - /** - * Sets the foreground color. - * - * @param CINColor $foregroundColor - */ - public function setForegroundColor($foregroundColor) { - $this->foregroundColor = $foregroundColor; - } - - /** - * Returns the width and height that the text takes to be written. - * - * @return int[] - */ - public function getDimension() { - $w = imagefontwidth($this->font) * strlen($this->text); - $h = imagefontheight($this->font); - - $rotationAngle = $this->getRotationAngle(); - if ($rotationAngle === 90 || $rotationAngle === 270) { - return array($h, $w); - } else { - return array($w, $h); - } - } - - /** - * Draws the text on the image at a specific position. - * $x and $y represent the left bottom corner. - * - * @param resource $im - * @param int $x - * @param int $y - */ - public function draw($im, $x, $y) { - if ($this->getRotationAngle() !== 0) { - if (!function_exists('imagerotate')) { - throw new CINDrawException('The method imagerotate doesn\'t exist on your server. Do not use any rotation.'); - } - - $w = imagefontwidth($this->font) * strlen($this->text); - $h = imagefontheight($this->font); - $gd = imagecreatetruecolor($w, $h); - imagefilledrectangle($gd, 0, 0, $w - 1, $h - 1, $this->backgroundColor->allocate($gd)); - imagestring($gd, $this->font, 0, 0, $this->text, $this->foregroundColor->allocate($gd)); - $gd = imagerotate($gd, $this->rotationAngle, 0); - imagecopy($im, $gd, $x, $y, 0, 0, imagesx($gd), imagesy($gd)); - } else { - imagestring($im, $this->font, $x, $y, $this->text, $this->foregroundColor->allocate($im)); - } - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/CINLabel.php b/barcode-generator/Generator/CINLabel.php deleted file mode 100644 index a8d2ac4..0000000 --- a/barcode-generator/Generator/CINLabel.php +++ /dev/null @@ -1,322 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; -use CodeItNow\BarcodeBundle\Generator\CINArgumentException; -use CodeItNow\BarcodeBundle\Generator\CINFontPhp; -use CodeItNow\BarcodeBundle\Generator\CINFontFile; - -class CINLabel { - const POSITION_TOP = 0; - const POSITION_RIGHT = 1; - const POSITION_BOTTOM = 2; - const POSITION_LEFT = 3; - - const ALIGN_LEFT = 0; - const ALIGN_TOP = 0; - const ALIGN_CENTER = 1; - const ALIGN_RIGHT = 2; - const ALIGN_BOTTOM = 2; - - private $font; - private $text; - private $position; - private $alignment; - private $offset; - private $spacing; - private $rotationAngle; - private $backgroundColor; - private $foregroundColor; - - /** - * Constructor. - * - * @param string $text - * @param CINFont $font - * @param int $position - * @param int $alignment - */ - public function __construct($text = '', $font = null, $position = self::POSITION_BOTTOM, $alignment = self::ALIGN_CENTER) { - $font = $font === null ? new CINFontPhp(5) : $font; - $this->setFont($font); - $this->setText($text); - $this->setPosition($position); - $this->setAlignment($alignment); - $this->setSpacing(4); - $this->setOffset(0); - $this->setRotationAngle(0); - $this->setBackgroundColor(new CINColor('white')); - $this->setForegroundColor(new CINColor('black')); - } - - /** - * Gets the text. - * - * @return string - */ - public function getText() { - return $this->font->getText(); - } - - /** - * Sets the text. - * - * @param string $text - */ - public function setText($text) { - $this->text = $text; - $this->font->setText($this->text); - } - - /** - * Gets the font. - * - * @return CINFont - */ - public function getFont() { - return $this->font; - } - - /** - * Sets the font. - * - * @param CINFont $font - */ - public function setFont($font) { - if ($font === null) { - throw new CINArgumentException('Font cannot be null.', 'font'); - } - - $this->font = clone $font; - $this->font->setText($this->text); - $this->font->setRotationAngle($this->rotationAngle); - $this->font->setBackgroundColor($this->backgroundColor); - $this->font->setForegroundColor($this->foregroundColor); - } - - /** - * Gets the text position for drawing. - * - * @return int - */ - public function getPosition() { - return $this->position; - } - - /** - * Sets the text position for drawing. - * - * @param int $position - */ - public function setPosition($position) { - $position = intval($position); - if ($position !== self::POSITION_TOP && $position !== self::POSITION_RIGHT && $position !== self::POSITION_BOTTOM && $position !== self::POSITION_LEFT) { - throw new CINArgumentException('The text position must be one of a valid constant.', 'position'); - } - - $this->position = $position; - } - - /** - * Gets the text alignment for drawing. - * - * @return int - */ - public function getAlignment() { - return $this->alignment; - } - - /** - * Sets the text alignment for drawing. - * - * @param int $alignment - */ - public function setAlignment($alignment) { - $alignment = intval($alignment); - if ($alignment !== self::ALIGN_LEFT && $alignment !== self::ALIGN_TOP && $alignment !== self::ALIGN_CENTER && $alignment !== self::ALIGN_RIGHT && $alignment !== self::ALIGN_BOTTOM) { - throw new CINArgumentException('The text alignment must be one of a valid constant.', 'alignment'); - } - - $this->alignment = $alignment; - } - - /** - * Gets the offset. - * - * @return int - */ - public function getOffset() { - return $this->offset; - } - - /** - * Sets the offset. - * - * @param int $offset - */ - public function setOffset($offset) { - $this->offset = intval($offset); - } - - /** - * Gets the spacing. - * - * @return int - */ - public function getSpacing() { - return $this->spacing; - } - - /** - * Sets the spacing. - * - * @param int $spacing - */ - public function setSpacing($spacing) { - $this->spacing = max(0, intval($spacing)); - } - - /** - * Gets the rotation angle in degree. - * - * @return int - */ - public function getRotationAngle() { - return $this->font->getRotationAngle(); - } - - /** - * Sets the rotation angle in degree. - * - * @param int $rotationAngle - */ - public function setRotationAngle($rotationAngle) { - $this->rotationAngle = intval($rotationAngle); - $this->font->setRotationAngle($this->rotationAngle); - } - - /** - * Gets the background color in case of rotation. - * - * @return CINColor - */ - public function getBackgroundColor() { - return $this->backgroundColor; - } - - /** - * Sets the background color in case of rotation. - * - * @param CINColor $backgroundColor - */ - public /*internal*/ function setBackgroundColor($backgroundColor) { - $this->backgroundColor = $backgroundColor; - $this->font->setBackgroundColor($this->backgroundColor); - } - - /** - * Gets the foreground color. - * - * @return CINColor - */ - public function getForegroundColor() { - return $this->font->getForegroundColor(); - } - - /** - * Sets the foreground color. - * - * @param CINColor $foregroundColor - */ - public function setForegroundColor($foregroundColor) { - $this->foregroundColor = $foregroundColor; - $this->font->setForegroundColor($this->foregroundColor); - } - - /** - * Gets the dimension taken by the label, including the spacing and offset. - * [0]: width - * [1]: height - * - * @return int[] - */ - public function getDimension() { - $w = 0; - $h = 0; - - $dimension = $this->font->getDimension(); - $w = $dimension[0]; - $h = $dimension[1]; - - if ($this->position === self::POSITION_TOP || $this->position === self::POSITION_BOTTOM) { - $h += $this->spacing; - $w += max(0, $this->offset); - } else { - $w += $this->spacing; - $h += max(0, $this->offset); - } - - return array($w, $h); - } - - /** - * Draws the text. - * The coordinate passed are the positions of the barcode. - * $x1 and $y1 represent the top left corner. - * $x2 and $y2 represent the bottom right corner. - * - * @param resource $im - * @param int $x1 - * @param int $y1 - * @param int $x2 - * @param int $y2 - */ - public /*internal*/ function draw($im, $x1, $y1, $x2, $y2) { - $x = 0; - $y = 0; - - $fontDimension = $this->font->getDimension(); - - if ($this->position === self::POSITION_TOP || $this->position === self::POSITION_BOTTOM) { - if ($this->position === self::POSITION_TOP) { - $y = $y1 - $this->spacing - $fontDimension[1]; - } elseif ($this->position === self::POSITION_BOTTOM) { - $y = $y2 + $this->spacing; - } - - if ($this->alignment === self::ALIGN_CENTER) { - $x = ($x2 - $x1) / 2 + $x1 - $fontDimension[0] / 2 + $this->offset; - } elseif ($this->alignment === self::ALIGN_LEFT) { - $x = $x1 + $this->offset; - } else { - $x = $x2 + $this->offset - $fontDimension[0]; - } - } else { - if ($this->position === self::POSITION_LEFT) { - $x = $x1 - $this->spacing - $fontDimension[0]; - } elseif ($this->position === self::POSITION_RIGHT) { - $x = $x2 + $this->spacing; - } - - if ($this->alignment === self::ALIGN_CENTER) { - $y = ($y2 - $y1) / 2 + $y1 - $fontDimension[1] / 2 + $this->offset; - } elseif ($this->alignment === self::ALIGN_TOP) { - $y = $y1 + $this->offset; - } else { - $y = $y2 + $this->offset - $fontDimension[1]; - } - } - - $this->font->setText($this->text); - $this->font->draw($im, $x, $y); - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/CINParseException.php b/barcode-generator/Generator/CINParseException.php deleted file mode 100644 index 25a49bf..0000000 --- a/barcode-generator/Generator/CINParseException.php +++ /dev/null @@ -1,29 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; -use Exception; - -class CINParseException extends Exception { - protected $barcode; - - /** - * Constructor with specific message for a parameter. - * - * @param string $barcode - * @param string $message - */ - public function __construct($barcode, $message) { - $this->barcode = $barcode; - parent::__construct($message, 10000); - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/CINcodabar.php b/barcode-generator/Generator/CINcodabar.php deleted file mode 100644 index 26e6aab..0000000 --- a/barcode-generator/Generator/CINcodabar.php +++ /dev/null @@ -1,124 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; -use CodeItNow\BarcodeBundle\Generator\CINParseException; -use CodeItNow\BarcodeBundle\Generator\CINBarcode1D; - -class CINcodabar extends CINBarcode1D { - /** - * Constructor. - */ - public function __construct() { - parent::__construct(); - - $this->keys = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '-', '$', ':', '/', '.', '+', 'A', 'B', 'C', 'D'); - $this->code = array( // 0 added to add an extra space - '00000110', /* 0 */ - '00001100', /* 1 */ - '00010010', /* 2 */ - '11000000', /* 3 */ - '00100100', /* 4 */ - '10000100', /* 5 */ - '01000010', /* 6 */ - '01001000', /* 7 */ - '01100000', /* 8 */ - '10010000', /* 9 */ - '00011000', /* - */ - '00110000', /* $ */ - '10001010', /* : */ - '10100010', /* / */ - '10101000', /* . */ - '00111110', /* + */ - '00110100', /* A */ - '01010010', /* B */ - '00010110', /* C */ - '00011100' /* D */ - ); - } - - /** - * Parses the text before displaying it. - * - * @param mixed $text - */ - public function parse($text) { - parent::parse(strtoupper($text)); // Only Capital Letters are Allowed - } - - /** - * Draws the barcode. - * - * @param resource $im - */ - public function draw($im) { - $c = strlen($this->text); - for ($i = 0; $i < $c; $i++) { - $this->drawChar($im, $this->findCode($this->text[$i]), true); - } - - $this->drawText($im, 0, 0, $this->positionX, $this->thickness); - } - - /** - * Returns the maximal size of a barcode. - * - * @param int $w - * @param int $h - * @return int[] - */ - public function getDimension($w, $h) { - $textLength = 0; - $c = strlen($this->text); - for ($i = 0; $i < $c; $i++) { - $index = $this->findIndex($this->text[$i]); - if ($index !== false) { - $textLength += 8; - $textLength += substr_count($this->code[$index], '1'); - } - } - - $w += $textLength; - $h += $this->thickness; - return parent::getDimension($w, $h); - } - - /** - * Validates the input. - */ - protected function validate() { - $c = strlen($this->text); - if ($c === 0) { - throw new CINParseException('codabar', 'No data has been entered.'); - } - - // Checking if all chars are allowed - for ($i = 0; $i < $c; $i++) { - if (array_search($this->text[$i], $this->keys) === false) { - throw new CINParseException('codabar', 'The character \'' . $this->text[$i] . '\' is not allowed.'); - } - } - - // Must start by A, B, C or D - if ($c == 0 || ($this->text[0] !== 'A' && $this->text[0] !== 'B' && $this->text[0] !== 'C' && $this->text[0] !== 'D')) { - throw new CINParseException('codabar', 'The text must start by the character A, B, C, or D.'); - } - - // Must end by A, B, C or D - $c2 = $c - 1; - if ($c2 === 0 || ($this->text[$c2] !== 'A' && $this->text[$c2] !== 'B' && $this->text[$c2] !== 'C' && $this->text[$c2] !== 'D')) { - throw new CINParseException('codabar', 'The text must end by the character A, B, C, or D.'); - } - - parent::validate(); - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/CINcode11.php b/barcode-generator/Generator/CINcode11.php deleted file mode 100644 index dd423ab..0000000 --- a/barcode-generator/Generator/CINcode11.php +++ /dev/null @@ -1,187 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; -use CodeItNow\BarcodeBundle\Generator\CINParseException; -use CodeItNow\BarcodeBundle\Generator\CINBarcode1D; - -class CINcode11 extends CINBarcode1D { - /** - * Constructor. - */ - public function __construct() { - parent::__construct(); - - $this->keys = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '-'); - $this->code = array( // 0 added to add an extra space - '000010', /* 0 */ - '100010', /* 1 */ - '010010', /* 2 */ - '110000', /* 3 */ - '001010', /* 4 */ - '101000', /* 5 */ - '011000', /* 6 */ - '000110', /* 7 */ - '100100', /* 8 */ - '100000', /* 9 */ - '001000' /* - */ - ); - } - - /** - * Draws the barcode. - * - * @param resource $im - */ - public function draw($im) { - // Starting Code - $this->drawChar($im, '001100', true); - - // Chars - $c = strlen($this->text); - for ($i = 0; $i < $c; $i++) { - $this->drawChar($im, $this->findCode($this->text[$i]), true); - } - - // Checksum - $this->calculateChecksum(); - $c = count($this->checksumValue); - for ($i = 0; $i < $c; $i++) { - $this->drawChar($im, $this->code[$this->checksumValue[$i]], true); - } - - // Ending Code - $this->drawChar($im, '00110', true); - $this->drawText($im, 0, 0, $this->positionX, $this->thickness); - } - - /** - * Returns the maximal size of a barcode. - * - * @param int $w - * @param int $h - * @return int[] - */ - public function getDimension($w, $h) { - $startlength = 8; - - $textlength = 0; - $c = strlen($this->text); - for ($i = 0; $i < $c; $i++) { - $textlength += $this->getIndexLength($this->findIndex($this->text[$i])); - } - - $checksumlength = 0; - $this->calculateChecksum(); - $c = count($this->checksumValue); - for ($i = 0; $i < $c; $i++) { - $checksumlength += $this->getIndexLength($this->checksumValue[$i]); - } - - $endlength = 7; - - $w += $startlength + $textlength + $checksumlength + $endlength; - $h += $this->thickness; - - return parent::getDimension($w, $h); - } - - /** - * Validates the input. - */ - protected function validate() { - $c = strlen($this->text); - if ($c === 0) { - throw new CINParseException('code11', 'No data has been entered.'); - } - - // Checking if all chars are allowed - for ($i = 0; $i < $c; $i++) { - if (array_search($this->text[$i], $this->keys) === false) { - throw new CINParseException('code11', 'The character \'' . $this->text[$i] . '\' is not allowed.'); - } - } - - parent::validate(); - } - - /** - * Overloaded method to calculate checksum. - */ - protected function calculateChecksum() { - // Checksum - // First CheckSUM "C" - // The "C" checksum character is the modulo 11 remainder of the sum of the weighted - // value of the data characters. The weighting value starts at "1" for the right-most - // data character, 2 for the second to last, 3 for the third-to-last, and so on up to 20. - // After 10, the sequence wraps around back to 1. - - // Second CheckSUM "K" - // Same as CheckSUM "C" but we count the CheckSum "C" at the end - // After 9, the sequence wraps around back to 1. - $sequence_multiplier = array(10, 9); - $temp_text = $this->text; - $this->checksumValue = array(); - for ($z = 0; $z < 2; $z++) { - $c = strlen($temp_text); - - // We don't display the K CheckSum if the original text had a length less than 10 - if ($c <= 10 && $z === 1) { - break; - } - - $checksum = 0; - for ($i = $c, $j = 0; $i > 0; $i--, $j++) { - $multiplier = $i % $sequence_multiplier[$z]; - if ($multiplier === 0) { - $multiplier = $sequence_multiplier[$z]; - } - - $checksum += $this->findIndex($temp_text[$j]) * $multiplier; - } - - $this->checksumValue[$z] = $checksum % 11; - $temp_text .= $this->keys[$this->checksumValue[$z]]; - } - } - - /** - * Overloaded method to display the checksum. - */ - protected function processChecksum() { - if ($this->checksumValue === false) { // Calculate the checksum only once - $this->calculateChecksum(); - } - - if ($this->checksumValue !== false) { - $ret = ''; - $c = count($this->checksumValue); - for ($i = 0; $i < $c; $i++) { - $ret .= $this->keys[$this->checksumValue[$i]]; - } - - return $ret; - } - - return false; - } - - private function getIndexLength($index) { - $length = 0; - if ($index !== false) { - $length += 6; - $length += substr_count($this->code[$index], '1'); - } - - return $length; - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/CINcode128.php b/barcode-generator/Generator/CINcode128.php deleted file mode 100644 index 369054a..0000000 --- a/barcode-generator/Generator/CINcode128.php +++ /dev/null @@ -1,912 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; -use CodeItNow\BarcodeBundle\Generator\CINParseException; -use CodeItNow\BarcodeBundle\Generator\CINBarcode1D; - -define('CODE128_A', 1); // Table A -define('CODE128_B', 2); // Table B -define('CODE128_C', 3); // Table C -class CINcode128 extends CINBarcode1D { - const KEYA_FNC3 = 96; - const KEYA_FNC2 = 97; - const KEYA_SHIFT = 98; - const KEYA_CODEC = 99; - const KEYA_CODEB = 100; - const KEYA_FNC4 = 101; - const KEYA_FNC1 = 102; - - const KEYB_FNC3 = 96; - const KEYB_FNC2 = 97; - const KEYB_SHIFT = 98; - const KEYB_CODEC = 99; - const KEYB_FNC4 = 100; - const KEYB_CODEA = 101; - const KEYB_FNC1 = 102; - - const KEYC_CODEB = 100; - const KEYC_CODEA = 101; - const KEYC_FNC1 = 102; - - const KEY_STARTA = 103; - const KEY_STARTB = 104; - const KEY_STARTC = 105; - - const KEY_STOP = 106; - - protected $keysA, $keysB, $keysC; - private $starting_text; - private $indcheck, $data, $lastTable; - private $tilde; - - private $shift; - private $latch; - private $fnc; - - private $METHOD = null; // Array of method available to create Code128 (CODE128_A, CODE128_B, CODE128_C) - - private $noLengthLimit; - - /** - * Constructor. - * - * @param char $start - */ - public function __construct($start = null) { - parent::__construct(); - - /* CODE 128 A */ - $this->keysA = ' !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_'; - for ($i = 0; $i < 32; $i++) { - $this->keysA .= chr($i); - } - - /* CODE 128 B */ - $this->keysB = ' !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~' . chr(127); - - /* CODE 128 C */ - $this->keysC = '0123456789'; - - $this->code = array( - '101111', /* 00 */ - '111011', /* 01 */ - '111110', /* 02 */ - '010112', /* 03 */ - '010211', /* 04 */ - '020111', /* 05 */ - '011102', /* 06 */ - '011201', /* 07 */ - '021101', /* 08 */ - '110102', /* 09 */ - '110201', /* 10 */ - '120101', /* 11 */ - '001121', /* 12 */ - '011021', /* 13 */ - '011120', /* 14 */ - '002111', /* 15 */ - '012011', /* 16 */ - '012110', /* 17 */ - '112100', /* 18 */ - '110021', /* 19 */ - '110120', /* 20 */ - '102101', /* 21 */ - '112001', /* 22 */ - '201020', /* 23 */ - '200111', /* 24 */ - '210011', /* 25 */ - '210110', /* 26 */ - '201101', /* 27 */ - '211001', /* 28 */ - '211100', /* 29 */ - '101012', /* 30 */ - '101210', /* 31 */ - '121010', /* 32 */ - '000212', /* 33 */ - '020012', /* 34 */ - '020210', /* 35 */ - '001202', /* 36 */ - '021002', /* 37 */ - '021200', /* 38 */ - '100202', /* 39 */ - '120002', /* 40 */ - '120200', /* 41 */ - '001022', /* 42 */ - '001220', /* 43 */ - '021020', /* 44 */ - '002012', /* 45 */ - '002210', /* 46 */ - '022010', /* 47 */ - '202010', /* 48 */ - '100220', /* 49 */ - '120020', /* 50 */ - '102002', /* 51 */ - '102200', /* 52 */ - '102020', /* 53 */ - '200012', /* 54 */ - '200210', /* 55 */ - '220010', /* 56 */ - '201002', /* 57 */ - '201200', /* 58 */ - '221000', /* 59 */ - '203000', /* 60 */ - '110300', /* 61 */ - '320000', /* 62 */ - '000113', /* 63 */ - '000311', /* 64 */ - '010013', /* 65 */ - '010310', /* 66 */ - '030011', /* 67 */ - '030110', /* 68 */ - '001103', /* 69 */ - '001301', /* 70 */ - '011003', /* 71 */ - '011300', /* 72 */ - '031001', /* 73 */ - '031100', /* 74 */ - '130100', /* 75 */ - '110003', /* 76 */ - '302000', /* 77 */ - '130001', /* 78 */ - '023000', /* 79 */ - '000131', /* 80 */ - '010031', /* 81 */ - '010130', /* 82 */ - '003101', /* 83 */ - '013001', /* 84 */ - '013100', /* 85 */ - '300101', /* 86 */ - '310001', /* 87 */ - '310100', /* 88 */ - '101030', /* 89 */ - '103010', /* 90 */ - '301010', /* 91 */ - '000032', /* 92 */ - '000230', /* 93 */ - '020030', /* 94 */ - '003002', /* 95 */ - '003200', /* 96 */ - '300002', /* 97 */ - '300200', /* 98 */ - '002030', /* 99 */ - '003020', /* 100*/ - '200030', /* 101*/ - '300020', /* 102*/ - '100301', /* 103*/ - '100103', /* 104*/ - '100121', /* 105*/ - '122000' /*STOP*/ - ); - $this->setStart($start); - $this->setTilde(true); - - // Latches and Shifts - $this->latch = array( - array(null, self::KEYA_CODEB, self::KEYA_CODEC), - array(self::KEYB_CODEA, null, self::KEYB_CODEC), - array(self::KEYC_CODEA, self::KEYC_CODEB, null) - ); - $this->shift = array( - array(null, self::KEYA_SHIFT), - array(self::KEYB_SHIFT, null) - ); - $this->fnc = array( - array(self::KEYA_FNC1, self::KEYA_FNC2, self::KEYA_FNC3, self::KEYA_FNC4), - array(self::KEYB_FNC1, self::KEYB_FNC2, self::KEYB_FNC3, self::KEYB_FNC4), - array(self::KEYC_FNC1, null, null, null) - ); - - // Method available - $this->METHOD = array(CODE128_A => 'A', CODE128_B => 'B', CODE128_C => 'C'); - - $this->setNoLengthLimit(false); - } - - /** - * Specifies the start code. Can be 'A', 'B', 'C', or null - * - Table A: Capitals + ASCII 0-31 + punct - * - Table B: Capitals + LowerCase + punct - * - Table C: Numbers - * - * If null is specified, the table selection is automatically made. - * The default is null. - * - * @param string $table - */ - public function setStart($table) { - if ($table !== 'A' && $table !== 'B' && $table !== 'C' && $table !== null) { - throw new CINArgumentException('The starting table must be A, B, C or null.', 'table'); - } - - $this->starting_text = $table; - } - - /** - * Gets the tilde. - * - * @return bool - */ - public function getTilde() { - return $this->tilde; - } - - /** - * Accepts tilde to be process as a special character. - * If true, you can do this: - * - ~~ : to make ONE tilde - * - ~Fx : to insert FCNx. x is equal from 1 to 4. - * - * @param boolean $accept - */ - public function setTilde($accept) { - $this->tilde = (bool)$accept; - } - - /** - * Parses the text before displaying it. - * - * @param mixed $text - */ - public function parse($text) { - $this->setStartFromText($text); - - $this->text = ''; - $seq = ''; - - $currentMode = $this->starting_text; - - // Here, we format correctly what the user gives. - if (!is_array($text)) { - $seq = $this->getSequence($text, $currentMode); - $this->text = $text; - } else { - // This loop checks for UnknownText AND raises an exception if a character is not allowed in a table - reset($text); - while (list($key1, $val1) = each($text)) { // We take each value - if (!is_array($val1)) { // This is not a table - if (is_string($val1)) { // If it's a string, parse as unknown - $seq .= $this->getSequence($val1, $currentMode); - $this->text .= $val1; - } else { - // it's the case of "array(ENCODING, 'text')" - // We got ENCODING in $val1, calling 'each' again will get 'text' in $val2 - list($key2, $val2) = each($text); - $seq .= $this->{'setParse' . $this->METHOD[$val1]}($val2, $currentMode); - $this->text .= $val2; - } - } else { // The method is specified - // $val1[0] = ENCODING - // $val1[1] = 'text' - $value = isset($val1[1]) ? $val1[1] : ''; // If data available - $seq .= $this->{'setParse' . $this->METHOD[$val1[0]]}($value, $currentMode); - $this->text .= $value; - } - } - } - - if ($seq !== '') { - $bitstream = $this->createBinaryStream($this->text, $seq); - $this->setData($bitstream); - } - - $this->addDefaultLabel(); - } - - /** - * Draws the barcode. - * - * @param resource $im - */ - public function draw($im) { - $c = count($this->data); - for ($i = 0; $i < $c; $i++) { - $this->drawChar($im, $this->data[$i], true); - } - - $this->drawChar($im, '1', true); - $this->drawText($im, 0, 0, $this->positionX, $this->thickness); - } - - /** - * Returns the maximal size of a barcode. - * - * @param int $w - * @param int $h - * @return int[] - */ - public function getDimension($w, $h) { - // Contains start + text + checksum + stop - $textlength = count($this->data) * 11; - $endlength = 2; // + final bar - - $w += $textlength + $endlength; - $h += $this->thickness; - return parent::getDimension($w, $h); - } - - /** - * Validates the input. - */ - protected function validate() { - $c = count($this->data); - if ($c === 0) { - throw new CINParseException('code128', 'No data has been entered.'); - } - - parent::validate(); - } - - /** - * Overloaded method to calculate checksum. - */ - protected function calculateChecksum() { - // Checksum - // First Char (START) - // + Starting with the first data character following the start character, - // take the value of the character (between 0 and 102, inclusive) multiply - // it by its character position (1) and add that to the running checksum. - // Modulated 103 - $this->checksumValue = $this->indcheck[0]; - $c = count($this->indcheck); - for ($i = 1; $i < $c; $i++) { - $this->checksumValue += $this->indcheck[$i] * $i; - } - - $this->checksumValue = $this->checksumValue % 103; - } - - /** - * Overloaded method to display the checksum. - */ - protected function processChecksum() { - if ($this->checksumValue === false) { // Calculate the checksum only once - $this->calculateChecksum(); - } - - if ($this->checksumValue !== false) { - if ($this->lastTable === 'C') { - return (string)$this->checksumValue; - } - - return $this->{'keys' . $this->lastTable}[$this->checksumValue]; - } - - return false; - } - - /** - * Specifies the starting_text table if none has been specified earlier. - * - * @param string $text - */ - private function setStartFromText($text) { - if ($this->starting_text === null) { - // If we have a forced table at the start, we get that one... - if (is_array($text)) { - if (is_array($text[0])) { - // Code like array(array(ENCODING, '')) - $this->starting_text = $this->METHOD[$text[0][0]]; - return; - } else { - if (is_string($text[0])) { - // Code like array('test') (Automatic text) - $text = $text[0]; - } else { - // Code like array(ENCODING, '') - $this->starting_text = $this->METHOD[$text[0]]; - return; - } - } - } - - // At this point, we had an "automatic" table selection... - // If we can get at least 4 numbers, go in C; otherwise go in B. - $tmp = preg_quote($this->keysC, '/'); - $length = strlen($text); - if ($length >= 4 && preg_match('/[' . $tmp . ']/', substr($text, 0, 4))) { - $this->starting_text = 'C'; - } else { - if ($length > 0 && strpos($this->keysB, $text[0]) !== false) { - $this->starting_text = 'B'; - } else { - $this->starting_text = 'A'; - } - } - } - } - - /** - * Extracts the ~ value from the $text at the $pos. - * If the tilde is not ~~, ~F1, ~F2, ~F3, ~F4; an error is raised. - * - * @param string $text - * @param int $pos - * @return string - */ - private static function extractTilde($text, $pos) { - if ($text[$pos] === '~') { - if (isset($text[$pos + 1])) { - // Do we have a tilde? - if ($text[$pos + 1] === '~') { - return '~~'; - } elseif ($text[$pos + 1] === 'F') { - // Do we have a number after? - if (isset($text[$pos + 2])) { - $v = intval($text[$pos + 2]); - if ($v >= 1 && $v <= 4) { - return '~F' . $v; - } else { - throw new CINParseException('code128', 'Bad ~F. You must provide a number from 1 to 4.'); - } - } else { - throw new CINParseException('code128', 'Bad ~F. You must provide a number from 1 to 4.'); - } - } else { - throw new CINParseException('code128', 'Wrong code after the ~.'); - } - } else { - throw new CINParseException('code128', 'Wrong code after the ~.'); - } - } else { - throw new CINParseException('code128', 'There is no ~ at this location.'); - } - } - - /** - * Gets the "dotted" sequence for the $text based on the $currentMode. - * There is also a check if we use the special tilde ~ - * - * @param string $text - * @param string $currentMode - * @return string - */ - private function getSequenceParsed($text, $currentMode) { - if ($this->tilde) { - $sequence = ''; - $previousPos = 0; - while (($pos = strpos($text, '~', $previousPos)) !== false) { - $tildeData = self::extractTilde($text, $pos); - - $simpleTilde = ($tildeData === '~~'); - if ($simpleTilde && $currentMode !== 'B') { - throw new CINParseException('code128', 'The Table ' . $currentMode . ' doesn\'t contain the character ~.'); - } - - // At this point, we know we have ~Fx - if ($tildeData !== '~F1' && $currentMode === 'C') { - // The mode C doesn't support ~F2, ~F3, ~F4 - throw new CINParseException('code128', 'The Table C doesn\'t contain the function ' . $tildeData . '.'); - } - - $length = $pos - $previousPos; - if ($currentMode === 'C') { - if ($length % 2 === 1) { - throw new CINParseException('code128', 'The text "' . $text . '" must have an even number of character to be encoded in Table C.'); - } - } - - $sequence .= str_repeat('.', $length); - $sequence .= '.'; - $sequence .= (!$simpleTilde) ? 'F' : ''; - $previousPos = $pos + strlen($tildeData); - } - - // Flushing - $length = strlen($text) - $previousPos; - if ($currentMode === 'C') { - if ($length % 2 === 1) { - throw new CINParseException('code128', 'The text "' . $text . '" must have an even number of character to be encoded in Table C.'); - } - } - - $sequence .= str_repeat('.', $length); - - return $sequence; - } else { - return str_repeat('.', strlen($text)); - } - } - - /** - * Parses the text and returns the appropriate sequence for the Table A. - * - * @param string $text - * @param string $currentMode - * @return string - */ - private function setParseA($text, &$currentMode) { - $tmp = preg_quote($this->keysA, '/'); - - // If we accept the ~ for special character, we must allow it. - if ($this->tilde) { - $tmp .= '~'; - } - - $match = array(); - if (preg_match('/[^' . $tmp . ']/', $text, $match) === 1) { - // We found something not allowed - throw new CINParseException('code128', 'The text "' . $text . '" can\'t be parsed with the Table A. The character "' . $match[0] . '" is not allowed.'); - } else { - $latch = ($currentMode === 'A') ? '' : '0'; - $currentMode = 'A'; - - return $latch . $this->getSequenceParsed($text, $currentMode); - } - } - - /** - * Parses the text and returns the appropriate sequence for the Table B. - * - * @param string $text - * @param string $currentMode - * @return string - */ - private function setParseB($text, &$currentMode) { - $tmp = preg_quote($this->keysB, '/'); - - $match = array(); - if (preg_match('/[^' . $tmp . ']/', $text, $match) === 1) { - // We found something not allowed - throw new CINParseException('code128', 'The text "' . $text . '" can\'t be parsed with the Table B. The character "' . $match[0] . '" is not allowed.'); - } else { - $latch = ($currentMode === 'B') ? '' : '1'; - $currentMode = 'B'; - - return $latch . $this->getSequenceParsed($text, $currentMode); - } - } - - /** - * Parses the text and returns the appropriate sequence for the Table C. - * - * @param string $text - * @param string $currentMode - * @return string - */ - private function setParseC($text, &$currentMode) { - $tmp = preg_quote($this->keysC, '/'); - - // If we accept the ~ for special character, we must allow it. - if ($this->tilde) { - $tmp .= '~F'; - } - - $match = array(); - if (preg_match('/[^' . $tmp . ']/', $text, $match) === 1) { - // We found something not allowed - throw new CINParseException('code128', 'The text "' . $text . '" can\'t be parsed with the Table C. The character "' . $match[0] . '" is not allowed.'); - } else { - $latch = ($currentMode === 'C') ? '' : '2'; - $currentMode = 'C'; - - return $latch . $this->getSequenceParsed($text, $currentMode); - } - } - - /** - * Depending on the $text, it will return the correct - * sequence to encode the text. - * - * @param string $text - * @param string $starting_text - * @return string - */ - private function getSequence($text, &$starting_text) { - $e = 10000; - $latLen = array( - array(0, 1, 1), - array(1, 0, 1), - array(1, 1, 0) - ); - $shftLen = array( - array($e, 1, $e), - array(1, $e, $e), - array($e, $e, $e) - ); - $charSiz = array(2, 2, 1); - - $startA = $e; - $startB = $e; - $startC = $e; - if ($starting_text === 'A') { $startA = 0; } - if ($starting_text === 'B') { $startB = 0; } - if ($starting_text === 'C') { $startC = 0; } - - $curLen = array($startA, $startB, $startC); - $curSeq = array(null, null, null); - - $nextNumber = false; - - $x = 0; - $xLen = strlen($text); - for ($x = 0; $x < $xLen; $x++) { - $input = $text[$x]; - - // 1. - for ($i = 0; $i < 3; $i++) { - for ($j = 0; $j < 3; $j++) { - if (($curLen[$i] + $latLen[$i][$j]) < $curLen[$j]) { - $curLen[$j] = $curLen[$i] + $latLen[$i][$j]; - $curSeq[$j] = $curSeq[$i] . $j; - } - } - } - - // 2. - $nxtLen = array($e, $e, $e); - $nxtSeq = array(); - - // 3. - $flag = false; - $posArray = array(); - - // Special case, we do have a tilde and we process them - if ($this->tilde && $input === '~') { - $tildeData = self::extractTilde($text, $x); - - if ($tildeData === '~~') { - // We simply skip a tilde - $posArray[] = 1; - $x++; - } elseif (substr($tildeData, 0, 2) === '~F') { - $v = intval($tildeData[2]); - $posArray[] = 0; - $posArray[] = 1; - if ($v === 1) { - $posArray[] = 2; - } - - $x += 2; - $flag = true; - } - } else { - $pos = strpos($this->keysA, $input); - if ($pos !== false) { - $posArray[] = 0; - } - - $pos = strpos($this->keysB, $input); - if ($pos !== false) { - $posArray[] = 1; - } - - // Do we have the next char a number?? OR a ~F1 - $pos = strpos($this->keysC, $input); - if ($nextNumber || ($pos !== false && isset($text[$x + 1]) && strpos($this->keysC, $text[$x + 1]) !== false)) { - $nextNumber = !$nextNumber; - $posArray[] = 2; - } - } - - $c = count($posArray); - for ($i = 0; $i < $c; $i++) { - if (($curLen[$posArray[$i]] + $charSiz[$posArray[$i]]) < $nxtLen[$posArray[$i]]) { - $nxtLen[$posArray[$i]] = $curLen[$posArray[$i]] + $charSiz[$posArray[$i]]; - $nxtSeq[$posArray[$i]] = $curSeq[$posArray[$i]] . '.'; - } - - for ($j = 0; $j < 2; $j++) { - if ($j === $posArray[$i]) { continue; } - if (($curLen[$j] + $shftLen[$j][$posArray[$i]] + $charSiz[$posArray[$i]]) < $nxtLen[$j]) { - $nxtLen[$j] = $curLen[$j] + $shftLen[$j][$posArray[$i]] + $charSiz[$posArray[$i]]; - $nxtSeq[$j] = $curSeq[$j] . chr($posArray[$i] + 65) . '.'; - } - } - } - - if ($c === 0) { - // We found an unsuported character - throw new CINParseException('code128', 'Character ' . $input . ' not supported.'); - } - - if ($flag) { - for ($i = 0; $i < 5; $i++) { - if (isset($nxtSeq[$i])) { - $nxtSeq[$i] .= 'F'; - } - } - } - - // 4. - for ($i = 0; $i < 3; $i++) { - $curLen[$i] = $nxtLen[$i]; - if (isset($nxtSeq[$i])) { - $curSeq[$i] = $nxtSeq[$i]; - } - } - } - - // Every curLen under $e is possible but we take the smallest - $m = $e; - $k = -1; - for ($i = 0; $i < 3; $i++) { - if ($curLen[$i] < $m) { - $k = $i; - $m = $curLen[$i]; - } - } - - if ($k === -1) { - return ''; - } - - return $curSeq[$k]; - } - - /** - * Depending on the sequence $seq given (returned from getSequence()), - * this method will return the code stream in an array. Each char will be a - * string of bit based on the Code 128. - * - * Each letter from the sequence represents bits. - * - * 0 to 2 are latches - * A to B are Shift + Letter - * . is a char in the current encoding - * - * @param string $text - * @param string $seq - * @return string[][] - */ - private function createBinaryStream($text, $seq) { - $c = strlen($seq); - - $data = array(); // code stream - $indcheck = array(); // index for checksum - - $currentEncoding = 0; - if ($this->starting_text === 'A') { - $currentEncoding = 0; - $indcheck[] = self::KEY_STARTA; - $this->lastTable = 'A'; - } elseif ($this->starting_text === 'B') { - $currentEncoding = 1; - $indcheck[] = self::KEY_STARTB; - $this->lastTable = 'B'; - } elseif ($this->starting_text === 'C') { - $currentEncoding = 2; - $indcheck[] = self::KEY_STARTC; - $this->lastTable = 'C'; - } - - $data[] = $this->code[103 + $currentEncoding]; - - $temporaryEncoding = -1; - for ($i = 0, $counter = 0; $i < $c; $i++) { - $input = $seq[$i]; - $inputI = intval($input); - if ($input === '.') { - $this->encodeChar($data, $currentEncoding, $seq, $text, $i, $counter, $indcheck); - if ($temporaryEncoding !== -1) { - $currentEncoding = $temporaryEncoding; - $temporaryEncoding = -1; - } - } elseif ($input >= 'A' && $input <= 'B') { - // We shift - $encoding = ord($input) - 65; - $shift = $this->shift[$currentEncoding][$encoding]; - $indcheck[] = $shift; - $data[] = $this->code[$shift]; - if ($temporaryEncoding === -1) { - $temporaryEncoding = $currentEncoding; - } - - $currentEncoding = $encoding; - } elseif ($inputI >= 0 && $inputI < 3) { - $temporaryEncoding = -1; - - // We latch - $latch = $this->latch[$currentEncoding][$inputI]; - if ($latch !== null) { - $indcheck[] = $latch; - $this->lastTable = chr(65 + $inputI); - $data[] = $this->code[$latch]; - $currentEncoding = $inputI; - } - } - } - - return array($indcheck, $data); - } - - /** - * Encodes characters, base on its encoding and sequence - * - * @param int[] $data - * @param int $encoding - * @param string $seq - * @param string $text - * @param int $i - * @param int $counter - * @param int[] $indcheck - */ - private function encodeChar(&$data, $encoding, $seq, $text, &$i, &$counter, &$indcheck) { - if (isset($seq[$i + 1]) && $seq[$i + 1] === 'F') { - // We have a flag !! - if ($text[$counter + 1] === 'F') { - $number = $text[$counter + 2]; - $fnc = $this->fnc[$encoding][$number - 1]; - $indcheck[] = $fnc; - $data[] = $this->code[$fnc]; - - // Skip F + number - $counter += 2; - } else { - // Not supposed - } - - $i++; - } else { - if ($encoding === 2) { - // We take 2 numbers in the same time - $code = (int)substr($text, $counter, 2); - $indcheck[] = $code; - $data[] = $this->code[$code]; - $counter++; - $i++; - } else { - $keys = ($encoding === 0) ? $this->keysA : $this->keysB; - $pos = strpos($keys, $text[$counter]); - $indcheck[] = $pos; - $data[] = $this->code[$pos]; - } - } - - $counter++; - } - - /** - * Saves data into the classes. - * - * This method will save data, calculate real column number - * (if -1 was selected), the real error level (if -1 was - * selected)... It will add Padding to the end and generate - * the error codes. - * - * @param array $data - */ - private function setData($data) { - $this->indcheck = $data[0]; - $this->data = $data[1]; - $this->calculateChecksum(); - $this->data[] = $this->code[$this->checksumValue]; - $this->data[] = $this->code[self::KEY_STOP]; - } - - - /** - * Removes the limit of 48 characters. - * - * @param bool $noLengthLimit - */ - public function setNoLengthLimit($noLengthLimit) { - $this->noLengthLimit = (bool)$noLengthLimit; - } - - /** - * Gets if the limit of 48 characters is removed. - * - * @return bool - */ - public function getNoLengthLimit() { - return $this->noLengthLimit; - } - - -} -?> diff --git a/barcode-generator/Generator/CINcode39.php b/barcode-generator/Generator/CINcode39.php deleted file mode 100644 index 39addfd..0000000 --- a/barcode-generator/Generator/CINcode39.php +++ /dev/null @@ -1,195 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; -use CodeItNow\BarcodeBundle\Generator\CINParseException; -use CodeItNow\BarcodeBundle\Generator\CINBarcode1D; - -class CINcode39 extends CINBarcode1D { - protected $starting, $ending; - protected $checksum; - - /** - * Constructor. - */ - public function __construct() { - parent::__construct(); - - $this->starting = $this->ending = 43; - $this->keys = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '-', '.', ' ', '$', '/', '+', '%', '*'); - $this->code = array( // 0 added to add an extra space - '0001101000', /* 0 */ - '1001000010', /* 1 */ - '0011000010', /* 2 */ - '1011000000', /* 3 */ - '0001100010', /* 4 */ - '1001100000', /* 5 */ - '0011100000', /* 6 */ - '0001001010', /* 7 */ - '1001001000', /* 8 */ - '0011001000', /* 9 */ - '1000010010', /* A */ - '0010010010', /* B */ - '1010010000', /* C */ - '0000110010', /* D */ - '1000110000', /* E */ - '0010110000', /* F */ - '0000011010', /* G */ - '1000011000', /* H */ - '0010011000', /* I */ - '0000111000', /* J */ - '1000000110', /* K */ - '0010000110', /* L */ - '1010000100', /* M */ - '0000100110', /* N */ - '1000100100', /* O */ - '0010100100', /* P */ - '0000001110', /* Q */ - '1000001100', /* R */ - '0010001100', /* S */ - '0000101100', /* T */ - '1100000010', /* U */ - '0110000010', /* V */ - '1110000000', /* W */ - '0100100010', /* X */ - '1100100000', /* Y */ - '0110100000', /* Z */ - '0100001010', /* - */ - '1100001000', /* . */ - '0110001000', /* */ - '0101010000', /* $ */ - '0101000100', /* / */ - '0100010100', /* + */ - '0001010100', /* % */ - '0100101000' /* * */ - ); - - $this->setChecksum(false); - } - - /** - * Sets if we display the checksum. - * - * @param bool $checksum - */ - public function setChecksum($checksum) { - $this->checksum = (bool)$checksum; - } - - /** - * Parses the text before displaying it. - * - * @param mixed $text - */ - public function parse($text) { - parent::parse(strtoupper($text)); // Only Capital Letters are Allowed - } - - /** - * Draws the barcode. - * - * @param resource $im - */ - public function draw($im) { - // Starting * - $this->drawChar($im, $this->code[$this->starting], true); - - // Chars - $c = strlen($this->text); - for ($i = 0; $i < $c; $i++) { - $this->drawChar($im, $this->findCode($this->text[$i]), true); - } - - // Checksum (rarely used) - if ($this->checksum === true) { - $this->calculateChecksum(); - $this->drawChar($im, $this->code[$this->checksumValue % 43], true); - } - - // Ending * - $this->drawChar($im, $this->code[$this->ending], true); - $this->drawText($im, 0, 0, $this->positionX, $this->thickness); - } - - /** - * Returns the maximal size of a barcode. - * - * @param int $w - * @param int $h - * @return int[] - */ - public function getDimension($w, $h) { - $textlength = 13 * strlen($this->text); - $startlength = 13; - $checksumlength = 0; - if ($this->checksum === true) { - $checksumlength = 13; - } - - $endlength = 13; - - $w += $startlength + $textlength + $checksumlength + $endlength; - $h += $this->thickness; - return parent::getDimension($w, $h); - } - - /** - * Validates the input. - */ - protected function validate() { - $c = strlen($this->text); - if ($c === 0) { - throw new CINParseException('code39', 'No data has been entered.'); - } - - // Checking if all chars are allowed - for ($i = 0; $i < $c; $i++) { - if (array_search($this->text[$i], $this->keys) === false) { - throw new CINParseException('code39', 'The character \'' . $this->text[$i] . '\' is not allowed.'); - } - } - - if (strpos($this->text, '*') !== false) { - throw new CINParseException('code39', 'The character \'*\' is not allowed.'); - } - - parent::validate(); - } - - /** - * Overloaded method to calculate checksum. - */ - protected function calculateChecksum() { - $this->checksumValue = 0; - $c = strlen($this->text); - for ($i = 0; $i < $c; $i++) { - $this->checksumValue += $this->findIndex($this->text[$i]); - } - - $this->checksumValue = $this->checksumValue % 43; - } - - /** - * Overloaded method to display the checksum. - */ - protected function processChecksum() { - if ($this->checksumValue === false) { // Calculate the checksum only once - $this->calculateChecksum(); - } - - if ($this->checksumValue !== false) { - return $this->keys[$this->checksumValue]; - } - - return false; - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/CINcode39extended.php b/barcode-generator/Generator/CINcode39extended.php deleted file mode 100644 index 5967c3d..0000000 --- a/barcode-generator/Generator/CINcode39extended.php +++ /dev/null @@ -1,210 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; -use CodeItNow\BarcodeBundle\Generator\CINParseException; -use CodeItNow\BarcodeBundle\Generator\CINcode39; - -class CINcode39extended extends CINcode39 { - const EXTENDED_1 = 39; - const EXTENDED_2 = 40; - const EXTENDED_3 = 41; - const EXTENDED_4 = 42; - - protected $indcheck, $data; - - /** - * Constructor. - */ - public function __construct() { - parent::__construct(); - - // We just put parenthesis around special characters. - $this->keys[self::EXTENDED_1] = '($)'; - $this->keys[self::EXTENDED_2] = '(/)'; - $this->keys[self::EXTENDED_3] = '(+)'; - $this->keys[self::EXTENDED_4] = '(%)'; - } - - /** - * Parses the text before displaying it. - * - * @param mixed $text - */ - public function parse($text) { - $this->text = $text; - - $data = array(); - $indcheck = array(); - - $c = strlen($this->text); - for ($i = 0; $i < $c; $i++) { - $pos = array_search($this->text[$i], $this->keys); - if ($pos === false) { - // Search in extended? - $extended = self::getExtendedVersion($this->text[$i]); - if ($extended === false) { - throw new CINParseException('code39extended', 'The character \'' . $this->text[$i] . '\' is not allowed.'); - } else { - $extc = strlen($extended); - for ($j = 0; $j < $extc; $j++) { - $v = $extended[$j]; - if ($v === '$') { - $indcheck[] = self::EXTENDED_1; - $data[] = $this->code[self::EXTENDED_1]; - } elseif ($v === '%') { - $indcheck[] = self::EXTENDED_2; - $data[] = $this->code[self::EXTENDED_2]; - } elseif ($v === '/') { - $indcheck[] = self::EXTENDED_3; - $data[] = $this->code[self::EXTENDED_3]; - } elseif ($v === '+') { - $indcheck[] = self::EXTENDED_4; - $data[] = $this->code[self::EXTENDED_4]; - } else { - $pos2 = array_search($v, $this->keys); - $indcheck[] = $pos2; - $data[] = $this->code[$pos2]; - } - } - } - } else { - $indcheck[] = $pos; - $data[] = $this->code[$pos]; - } - } - - $this->setData(array($indcheck, $data)); - $this->addDefaultLabel(); - } - - /** - * Draws the barcode. - * - * @param resource $im - */ - public function draw($im) { - // Starting * - $this->drawChar($im, $this->code[$this->starting], true); - $c = count($this->data); - for ($i = 0; $i < $c; $i++) { - $this->drawChar($im, $this->data[$i], true); - } - - // Checksum (rarely used) - if ($this->checksum === true) { - $this->drawChar($im, $this->code[$this->checksumValue % 43], true); - } - - // Ending * - $this->drawChar($im, $this->code[$this->ending], true); - $this->drawText($im, 0, 0, $this->positionX, $this->thickness); - } - - /** - * Returns the maximal size of a barcode. - * - * @param int $w - * @param int $h - * @return int[] - */ - public function getDimension($w, $h) { - $textlength = 13 * count($this->data); - $startlength = 13; - $checksumlength = 0; - if ($this->checksum === true) { - $checksumlength = 13; - } - - $endlength = 13; - - $w += $startlength + $textlength + $checksumlength + $endlength; - $h += $this->thickness; - return CINBarcode1D::getDimension($w, $h); - } - - /** - * Validates the input. - */ - protected function validate() { - $c = count($this->data); - if ($c === 0) { - throw new CINParseException('code39extended', 'No data has been entered.'); - } - - parent::validate(); - } - - /** - * Overloaded method to calculate checksum. - */ - protected function calculateChecksum() { - $this->checksumValue = 0; - $c = count($this->indcheck); - for ($i = 0; $i < $c; $i++) { - $this->checksumValue += $this->indcheck[$i]; - } - - $this->checksumValue = $this->checksumValue % 43; - } - - /** - * Saves data into the classes. - * - * This method will save data, calculate real column number - * (if -1 was selected), the real error level (if -1 was - * selected)... It will add Padding to the end and generate - * the error codes. - * - * @param array $data - */ - private function setData($data) { - $this->indcheck = $data[0]; - $this->data = $data[1]; - $this->calculateChecksum(); - } - - /** - * Returns the extended reprensentation of the character. - * - * @param string $char - * @return string - */ - private static function getExtendedVersion($char) { - $o = ord($char); - if ($o === 0) { - return '%U'; - } elseif ($o >= 1 && $o <= 26) { - return '$' . chr($o + 64); - } elseif (($o >= 33 && $o <= 44) || $o === 47 || $o === 48) { - return '/' . chr($o + 32); - } elseif ($o >= 97 && $o <= 122) { - return '+' . chr($o - 32); - } elseif ($o >= 27 && $o <= 31) { - return '%' . chr($o + 38); - } elseif ($o >= 59 && $o <= 63) { - return '%' . chr($o + 11); - } elseif ($o >= 91 && $o <= 95) { - return '%' . chr($o - 16); - } elseif ($o >= 123 && $o <= 127) { - return '%' . chr($o - 43); - } elseif ($o === 64) { - return '%V'; - } elseif ($o === 96) { - return '%W'; - } elseif ($o > 127) { - return false; - } else { - return $char; - } - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/CINcode93.php b/barcode-generator/Generator/CINcode93.php deleted file mode 100644 index baa414f..0000000 --- a/barcode-generator/Generator/CINcode93.php +++ /dev/null @@ -1,303 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; -use CodeItNow\BarcodeBundle\Generator\CINParseException; -use CodeItNow\BarcodeBundle\Generator\CINBarcode1D; - -class CINcode93 extends CINBarcode1D { - const EXTENDED_1 = 43; - const EXTENDED_2 = 44; - const EXTENDED_3 = 45; - const EXTENDED_4 = 46; - - private $starting, $ending; - private $indcheck, $data; - - /** - * Constructor. - */ - public function __construct() { - parent::__construct(); - - $this->starting = $this->ending = 47; /* * */ - $this->keys = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '-', '.', ' ', '$', '/', '+', '%', '($)', '(%)', '(/)', '(+)', '(*)'); - $this->code = array( - '020001', /* 0 */ - '000102', /* 1 */ - '000201', /* 2 */ - '000300', /* 3 */ - '010002', /* 4 */ - '010101', /* 5 */ - '010200', /* 6 */ - '000003', /* 7 */ - '020100', /* 8 */ - '030000', /* 9 */ - '100002', /* A */ - '100101', /* B */ - '100200', /* C */ - '110001', /* D */ - '110100', /* E */ - '120000', /* F */ - '001002', /* G */ - '001101', /* H */ - '001200', /* I */ - '011001', /* J */ - '021000', /* K */ - '000012', /* L */ - '000111', /* M */ - '000210', /* N */ - '010011', /* O */ - '020010', /* P */ - '101001', /* Q */ - '101100', /* R */ - '100011', /* S */ - '100110', /* T */ - '110010', /* U */ - '111000', /* V */ - '001011', /* W */ - '001110', /* X */ - '011010', /* Y */ - '012000', /* Z */ - '010020', /* - */ - '200001', /* . */ - '200100', /* */ - '210000', /* $ */ - '001020', /* / */ - '002010', /* + */ - '100020', /* % */ - '010110', /*($)*/ - '201000', /*(%)*/ - '200010', /*(/)*/ - '011100', /*(+)*/ - '000030' /*(*)*/ - ); - } - - /** - * Parses the text before displaying it. - * - * @param mixed $text - */ - public function parse($text) { - $this->text = $text; - - $data = array(); - $indcheck = array(); - - $c = strlen($this->text); - for ($i = 0; $i < $c; $i++) { - $pos = array_search($this->text[$i], $this->keys); - if ($pos === false) { - // Search in extended? - $extended = self::getExtendedVersion($this->text[$i]); - if ($extended === false) { - throw new CINParseException('code93', 'The character \'' . $this->text[$i] . '\' is not allowed.'); - } else { - $extc = strlen($extended); - for ($j = 0; $j < $extc; $j++) { - $v = $extended[$j]; - if ($v === '$') { - $indcheck[] = self::EXTENDED_1; - $data[] = $this->code[self::EXTENDED_1]; - } elseif ($v === '%') { - $indcheck[] = self::EXTENDED_2; - $data[] = $this->code[self::EXTENDED_2]; - } elseif ($v === '/') { - $indcheck[] = self::EXTENDED_3; - $data[] = $this->code[self::EXTENDED_3]; - } elseif ($v === '+') { - $indcheck[] = self::EXTENDED_4; - $data[] = $this->code[self::EXTENDED_4]; - } else { - $pos2 = array_search($v, $this->keys); - $indcheck[] = $pos2; - $data[] = $this->code[$pos2]; - } - } - } - } else { - $indcheck[] = $pos; - $data[] = $this->code[$pos]; - } - } - - $this->setData(array($indcheck, $data)); - $this->addDefaultLabel(); - } - - /** - * Draws the barcode. - * - * @param resource $im - */ - public function draw($im) { - // Starting * - $this->drawChar($im, $this->code[$this->starting], true); - $c = count($this->data); - for ($i = 0; $i < $c; $i++) { - $this->drawChar($im, $this->data[$i], true); - } - - // Checksum - $c = count($this->checksumValue); - for ($i = 0; $i < $c; $i++) { - $this->drawChar($im, $this->code[$this->checksumValue[$i]], true); - } - - // Ending * - $this->drawChar($im, $this->code[$this->ending], true); - - // Draw a Final Bar - $this->drawChar($im, '0', true); - $this->drawText($im, 0, 0, $this->positionX, $this->thickness); - } - - /** - * Returns the maximal size of a barcode. - * - * @param int $w - * @param int $h - * @return int[] - */ - public function getDimension($w, $h) { - $startlength = 9; - $textlength = 9 * count($this->data); - $checksumlength = 2 * 9; - $endlength = 9 + 1; // + final bar - - $w += $startlength + $textlength + $checksumlength + $endlength; - $h += $this->thickness; - return parent::getDimension($w, $h); - } - - /** - * Validates the input. - */ - protected function validate() { - $c = count($this->data); - if ($c === 0) { - throw new CINParseException('code93', 'No data has been entered.'); - } - - parent::validate(); - } - - /** - * Overloaded method to calculate checksum. - */ - protected function calculateChecksum() { - // Checksum - // First CheckSUM "C" - // The "C" checksum character is the modulo 47 remainder of the sum of the weighted - // value of the data characters. The weighting value starts at "1" for the right-most - // data character, 2 for the second to last, 3 for the third-to-last, and so on up to 20. - // After 20, the sequence wraps around back to 1. - - // Second CheckSUM "K" - // Same as CheckSUM "C" but we count the CheckSum "C" at the end - // After 15, the sequence wraps around back to 1. - $sequence_multiplier = array(20, 15); - $this->checksumValue = array(); - $indcheck = $this->indcheck; - for ($z = 0; $z < 2; $z++) { - $checksum = 0; - for ($i = count($indcheck), $j = 0; $i > 0; $i--, $j++) { - $multiplier = $i % $sequence_multiplier[$z]; - if ($multiplier === 0) { - $multiplier = $sequence_multiplier[$z]; - } - - $checksum += $indcheck[$j] * $multiplier; - } - - $this->checksumValue[$z] = $checksum % 47; - $indcheck[] = $this->checksumValue[$z]; - } - } - - /** - * Overloaded method to display the checksum. - */ - protected function processChecksum() { - if ($this->checksumValue === false) { // Calculate the checksum only once - $this->calculateChecksum(); - } - - if ($this->checksumValue !== false) { - $ret = ''; - $c = count($this->checksumValue); - for ($i = 0; $i < $c; $i++) { - $ret .= $this->keys[$this->checksumValue[$i]]; - } - - return $ret; - } - - return false; - } - - /** - * Saves data into the classes. - * - * This method will save data, calculate real column number - * (if -1 was selected), the real error level (if -1 was - * selected)... It will add Padding to the end and generate - * the error codes. - * - * @param array $data - */ - private function setData($data) { - $this->indcheck = $data[0]; - $this->data = $data[1]; - $this->calculateChecksum(); - } - - /** - * Returns the extended reprensentation of the character. - * - * @param string $char - * @return string - */ - private static function getExtendedVersion($char) { - $o = ord($char); - if ($o === 0) { - return '%U'; - } elseif ($o >= 1 && $o <= 26) { - return '$' . chr($o + 64); - } elseif (($o >= 33 && $o <= 44) || $o === 47 || $o === 48) { - return '/' . chr($o + 32); - } elseif ($o >= 97 && $o <= 122) { - return '+' . chr($o - 32); - } elseif ($o >= 27 && $o <= 31) { - return '%' . chr($o + 38); - } elseif ($o >= 59 && $o <= 63) { - return '%' . chr($o + 11); - } elseif ($o >= 91 && $o <= 95) { - return '%' . chr($o - 16); - } elseif ($o >= 123 && $o <= 127) { - return '%' . chr($o - 43); - } elseif ($o === 64) { - return '%V'; - } elseif ($o === 96) { - return '%W'; - } elseif ($o > 127) { - return false; - } else { - return $char; - } - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/CINean13.php b/barcode-generator/Generator/CINean13.php deleted file mode 100644 index 2f92e9e..0000000 --- a/barcode-generator/Generator/CINean13.php +++ /dev/null @@ -1,324 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; -use CodeItNow\BarcodeBundle\Generator\CINParseException; -use CodeItNow\BarcodeBundle\Generator\CINBarcode; -use CodeItNow\BarcodeBundle\Generator\CINBarcode1D; -use CodeItNow\BarcodeBundle\Generator\CINLabel; - -class CINean13 extends CINBarcode1D { - protected $codeParity = array(); - protected $labelLeft = null; - protected $labelCenter1 = null; - protected $labelCenter2 = null; - protected $alignLabel; - - /** - * Constructor. - */ - public function __construct() { - parent::__construct(); - - $this->keys = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9'); - - // Left-Hand Odd Parity starting with a space - // Left-Hand Even Parity is the inverse (0=0012) starting with a space - // Right-Hand is the same of Left-Hand starting with a bar - $this->code = array( - '2100', /* 0 */ - '1110', /* 1 */ - '1011', /* 2 */ - '0300', /* 3 */ - '0021', /* 4 */ - '0120', /* 5 */ - '0003', /* 6 */ - '0201', /* 7 */ - '0102', /* 8 */ - '2001' /* 9 */ - ); - - // Parity, 0=Odd, 1=Even for manufacturer code. Depending on 1st System Digit - $this->codeParity = array( - array(0, 0, 0, 0, 0), /* 0 */ - array(0, 1, 0, 1, 1), /* 1 */ - array(0, 1, 1, 0, 1), /* 2 */ - array(0, 1, 1, 1, 0), /* 3 */ - array(1, 0, 0, 1, 1), /* 4 */ - array(1, 1, 0, 0, 1), /* 5 */ - array(1, 1, 1, 0, 0), /* 6 */ - array(1, 0, 1, 0, 1), /* 7 */ - array(1, 0, 1, 1, 0), /* 8 */ - array(1, 1, 0, 1, 0) /* 9 */ - ); - - $this->alignDefaultLabel(true); - } - - public function alignDefaultLabel($align) { - $this->alignLabel = (bool)$align; - } - - /** - * Draws the barcode. - * - * @param resource $im - */ - public function draw($im) { - $this->drawBars($im); - $this->drawText($im, 0, 0, $this->positionX, $this->thickness); - - if ($this->isDefaultEanLabelEnabled()) { - $dimension = $this->labelCenter1->getDimension(); - $this->drawExtendedBars($im, $dimension[1] - 2); - } - } - - /** - * Returns the maximal size of a barcode. - * - * @param int $w - * @param int $h - * @return int[] - */ - public function getDimension($w, $h) { - $startlength = 3; - $centerlength = 5; - $textlength = 12 * 7; - $endlength = 3; - - $w += $startlength + $centerlength + $textlength + $endlength; - $h += $this->thickness; - return parent::getDimension($w, $h); - } - - /** - * Adds the default label. - */ - protected function addDefaultLabel() { - if ($this->isDefaultEanLabelEnabled()) { - $this->processChecksum(); - $label = $this->getLabel(); - $font = $this->font; - - $this->labelLeft = new CINLabel(substr($label, 0, 1), $font, CINLabel::POSITION_LEFT, CINLabel::ALIGN_BOTTOM); - $this->labelLeft->setSpacing(4 * $this->scale); - - $this->labelCenter1 = new CINLabel(substr($label, 1, 6), $font, CINLabel::POSITION_BOTTOM, CINLabel::ALIGN_LEFT); - $labelCenter1Dimension = $this->labelCenter1->getDimension(); - $this->labelCenter1->setOffset(($this->scale * 44 - $labelCenter1Dimension[0]) / 2 + $this->scale * 2); - - $this->labelCenter2 = new CINLabel(substr($label, 7, 5) . $this->keys[$this->checksumValue], $font, CINLabel::POSITION_BOTTOM, CINLabel::ALIGN_LEFT); - $this->labelCenter2->setOffset(($this->scale * 44 - $labelCenter1Dimension[0]) / 2 + $this->scale * 48); - - if ($this->alignLabel) { - $labelDimension = $this->labelCenter1->getDimension(); - $this->labelLeft->setOffset($labelDimension[1]); - } else { - $labelDimension = $this->labelLeft->getDimension(); - $this->labelLeft->setOffset($labelDimension[1] / 2); - } - - $this->addLabel($this->labelLeft); - $this->addLabel($this->labelCenter1); - $this->addLabel($this->labelCenter2); - } - } - - /** - * Checks if the default ean label is enabled. - * - * @return bool - */ - protected function isDefaultEanLabelEnabled() { - $label = $this->getLabel(); - $font = $this->font; - return $label !== null && $label !== '' && $font !== null && $this->defaultLabel !== null; - } - - /** - * Validates the input. - */ - protected function validate() { - $c = strlen($this->text); - if ($c === 0) { - throw new CINParseException('ean13', 'No data has been entered.'); - } - - $this->checkCharsAllowed(); - $this->checkCorrectLength(); - - parent::validate(); - } - - /** - * Check chars allowed. - */ - protected function checkCharsAllowed() { - // Checking if all chars are allowed - $c = strlen($this->text); - for ($i = 0; $i < $c; $i++) { - if (array_search($this->text[$i], $this->keys) === false) { - throw new CINParseException('ean13', 'The character \'' . $this->text[$i] . '\' is not allowed.'); - } - } - } - - /** - * Check correct length. - */ - protected function checkCorrectLength() { - // If we have 13 chars, just flush the last one without throwing anything - $c = strlen($this->text); - if ($c === 13) { - $this->text = substr($this->text, 0, 12); - } elseif ($c !== 12) { - throw new CINParseException('ean13', 'Must contain 12 digits, the 13th digit is automatically added.'); - } - } - - /** - * Overloaded method to calculate checksum. - */ - protected function calculateChecksum() { - // Calculating Checksum - // Consider the right-most digit of the message to be in an "odd" position, - // and assign odd/even to each character moving from right to left - // Odd Position = 3, Even Position = 1 - // Multiply it by the number - // Add all of that and do 10-(?mod10) - $odd = true; - $this->checksumValue = 0; - $c = strlen($this->text); - for ($i = $c; $i > 0; $i--) { - if ($odd === true) { - $multiplier = 3; - $odd = false; - } else { - $multiplier = 1; - $odd = true; - } - - if (!isset($this->keys[$this->text[$i - 1]])) { - return; - } - - $this->checksumValue += $this->keys[$this->text[$i - 1]] * $multiplier; - } - - $this->checksumValue = (10 - $this->checksumValue % 10) % 10; - } - - /** - * Overloaded method to display the checksum. - */ - protected function processChecksum() { - if ($this->checksumValue === false) { // Calculate the checksum only once - $this->calculateChecksum(); - } - - if ($this->checksumValue !== false) { - return $this->keys[$this->checksumValue]; - } - - return false; - } - - /** - * Draws the bars - * - * @param resource $im - */ - protected function drawBars($im) { - // Checksum - $this->calculateChecksum(); - $temp_text = $this->text . $this->keys[$this->checksumValue]; - - // Starting Code - $this->drawChar($im, '000', true); - - // Draw Second Code - $this->drawChar($im, $this->findCode($temp_text[1]), false); - - // Draw Manufacturer Code - for ($i = 0; $i < 5; $i++) { - $this->drawChar($im, self::inverse($this->findCode($temp_text[$i + 2]), $this->codeParity[(int)$temp_text[0]][$i]), false); - } - - // Draw Center Guard Bar - $this->drawChar($im, '00000', false); - - // Draw Product Code - for ($i = 7; $i < 13; $i++) { - $this->drawChar($im, $this->findCode($temp_text[$i]), true); - } - - // Draw Right Guard Bar - $this->drawChar($im, '000', true); - } - - /** - * Draws the extended bars on the image. - * - * @param resource $im - * @param int $plus - */ - protected function drawExtendedBars($im, $plus) { - $rememberX = $this->positionX; - $rememberH = $this->thickness; - - // We increase the bars - $this->thickness = $this->thickness + intval($plus / $this->scale); - $this->positionX = 0; - $this->drawSingleBar($im, CINBarcode::COLOR_FG); - $this->positionX += 2; - $this->drawSingleBar($im, CINBarcode::COLOR_FG); - - // Center Guard Bar - $this->positionX += 44; - $this->drawSingleBar($im, CINBarcode::COLOR_FG); - $this->positionX += 2; - $this->drawSingleBar($im, CINBarcode::COLOR_FG); - - // Last Bars - $this->positionX += 44; - $this->drawSingleBar($im, CINBarcode::COLOR_FG); - $this->positionX += 2; - $this->drawSingleBar($im, CINBarcode::COLOR_FG); - - $this->positionX = $rememberX; - $this->thickness = $rememberH; - } - - /** - * Inverses the string when the $inverse parameter is equal to 1. - * - * @param string $text - * @param int $inverse - * @return string - */ - private static function inverse($text, $inverse = 1) { - if ($inverse === 1) { - $text = strrev($text); - } - - return $text; - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/CINean8.php b/barcode-generator/Generator/CINean8.php deleted file mode 100644 index fb7aa53..0000000 --- a/barcode-generator/Generator/CINean8.php +++ /dev/null @@ -1,246 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; -use CodeItNow\BarcodeBundle\Generator\CINParseException; -use CodeItNow\BarcodeBundle\Generator\CINBarcode; -use CodeItNow\BarcodeBundle\Generator\CINBarcode1D; -use CodeItNow\BarcodeBundle\Generator\CINLabel; - -class CINean8 extends CINBarcode1D { - protected $labelLeft = null; - protected $labelRight = null; - - /** - * Constructor. - */ - public function __construct() { - parent::__construct(); - - $this->keys = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9'); - - // Left-Hand Odd Parity starting with a space - // Right-Hand is the same of Left-Hand starting with a bar - $this->code = array( - '2100', /* 0 */ - '1110', /* 1 */ - '1011', /* 2 */ - '0300', /* 3 */ - '0021', /* 4 */ - '0120', /* 5 */ - '0003', /* 6 */ - '0201', /* 7 */ - '0102', /* 8 */ - '2001' /* 9 */ - ); - } - - /** - * Draws the barcode. - * - * @param resource $im - */ - public function draw($im) { - // Checksum - $this->calculateChecksum(); - $temp_text = $this->text . $this->keys[$this->checksumValue]; - - // Starting Code - $this->drawChar($im, '000', true); - - // Draw First 4 Chars (Left-Hand) - for ($i = 0; $i < 4; $i++) { - $this->drawChar($im, $this->findCode($temp_text[$i]), false); - } - - // Draw Center Guard Bar - $this->drawChar($im, '00000', false); - - // Draw Last 4 Chars (Right-Hand) - for ($i = 4; $i < 8; $i++) { - $this->drawChar($im, $this->findCode($temp_text[$i]), true); - } - - // Draw Right Guard Bar - $this->drawChar($im, '000', true); - $this->drawText($im, 0, 0, $this->positionX, $this->thickness); - - if ($this->isDefaultEanLabelEnabled()) { - $dimension = $this->labelRight->getDimension(); - $this->drawExtendedBars($im, $dimension[1] - 2); - } - } - - /** - * Returns the maximal size of a barcode. - * - * @param int $w - * @param int $h - * @return int[] - */ - public function getDimension($w, $h) { - $startlength = 3; - $centerlength = 5; - $textlength = 8 * 7; - $endlength = 3; - - $w += $startlength + $centerlength + $textlength + $endlength; - $h += $this->thickness; - return parent::getDimension($w, $h); - } - - /** - * Adds the default label. - */ - protected function addDefaultLabel() { - if ($this->isDefaultEanLabelEnabled()) { - $this->processChecksum(); - $label = $this->getLabel(); - $font = $this->font; - - $this->labelLeft = new CINLabel(substr($label, 0, 4), $font, CINLabel::POSITION_BOTTOM, CINLabel::ALIGN_LEFT); - $labelLeftDimension = $this->labelLeft->getDimension(); - $this->labelLeft->setOffset(($this->scale * 30 - $labelLeftDimension[0]) / 2 + $this->scale * 2); - - $this->labelRight = new CINLabel(substr($label, 4, 3) . $this->keys[$this->checksumValue], $font, CINLabel::POSITION_BOTTOM, CINLabel::ALIGN_LEFT); - $labelRightDimension = $this->labelRight->getDimension(); - $this->labelRight->setOffset(($this->scale * 30 - $labelRightDimension[0]) / 2 + $this->scale * 34); - - $this->addLabel($this->labelLeft); - $this->addLabel($this->labelRight); - } - } - - /** - * Checks if the default ean label is enabled. - * - * @return bool - */ - protected function isDefaultEanLabelEnabled() { - $label = $this->getLabel(); - $font = $this->font; - return $label !== null && $label !== '' && $font !== null && $this->defaultLabel !== null; - } - - /** - * Validates the input. - */ - protected function validate() { - $c = strlen($this->text); - if ($c === 0) { - throw new CINParseException('ean8', 'No data has been entered.'); - } - - // Checking if all chars are allowed - for ($i = 0; $i < $c; $i++) { - if (array_search($this->text[$i], $this->keys) === false) { - throw new CINParseException('ean8', 'The character \'' . $this->text[$i] . '\' is not allowed.'); - } - } - - // If we have 8 chars just flush the last one - if ($c === 8) { - $this->text = substr($this->text, 0, 7); - } elseif ($c !== 7) { - throw new CINParseException('ean8', 'Must contain 7 digits, the 8th digit is automatically added.'); - } - - parent::validate(); - } - - /** - * Overloaded method to calculate checksum. - */ - protected function calculateChecksum() { - // Calculating Checksum - // Consider the right-most digit of the message to be in an "odd" position, - // and assign odd/even to each character moving from right to left - // Odd Position = 3, Even Position = 1 - // Multiply it by the number - // Add all of that and do 10-(?mod10) - $odd = true; - $this->checksumValue = 0; - $c = strlen($this->text); - for ($i = $c; $i > 0; $i--) { - if ($odd === true) { - $multiplier = 3; - $odd = false; - } else { - $multiplier = 1; - $odd = true; - } - - if (!isset($this->keys[$this->text[$i - 1]])) { - return; - } - - $this->checksumValue += $this->keys[$this->text[$i - 1]] * $multiplier; - } - - $this->checksumValue = (10 - $this->checksumValue % 10) % 10; - } - - /** - * Overloaded method to display the checksum. - */ - protected function processChecksum() { - if ($this->checksumValue === false) { // Calculate the checksum only once - $this->calculateChecksum(); - } - - if ($this->checksumValue !== false) { - return $this->keys[$this->checksumValue]; - } - - return false; - } - - /** - * Draws the extended bars on the image. - * - * @param resource $im - * @param int $plus - */ - private function drawExtendedBars($im, $plus) { - $rememberX = $this->positionX; - $rememberH = $this->thickness; - - // We increase the bars - $this->thickness = $this->thickness + intval($plus / $this->scale); - $this->positionX = 0; - $this->drawSingleBar($im, CINBarcode::COLOR_FG); - $this->positionX += 2; - $this->drawSingleBar($im, CINBarcode::COLOR_FG); - - // Center Guard Bar - $this->positionX += 30; - $this->drawSingleBar($im, CINBarcode::COLOR_FG); - $this->positionX += 2; - $this->drawSingleBar($im, CINBarcode::COLOR_FG); - - // Last Bars - $this->positionX += 30; - $this->drawSingleBar($im, CINBarcode::COLOR_FG); - $this->positionX += 2; - $this->drawSingleBar($im, CINBarcode::COLOR_FG); - - $this->positionX = $rememberX; - $this->thickness = $rememberH; - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/CINgs1128.php b/barcode-generator/Generator/CINgs1128.php deleted file mode 100644 index 8c7e408..0000000 --- a/barcode-generator/Generator/CINgs1128.php +++ /dev/null @@ -1,690 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; -use CodeItNow\BarcodeBundle\Generator\CINParseException; -use CodeItNow\BarcodeBundle\Generator\CINcode128; - -class CINgs1128 extends CINcode128 { - const KIND_OF_DATA = 0; - const MINLENGTH = 1; - const MAXLENGTH = 2; - const CHECKSUM = 3; - const NUMERIC = 0; - const ALPHA_NUMERIC = 1; - const DATE_YYMMDD = 2; - const ID = 0; - const CONTENT = 1; - const MAX_ID_FORMATED = 6; - const MAX_ID_NOT_FORMATED = 4; - const MAX_GS1128_CHARS = 48; - - private $strictMode; - private $allowsUnknownIdentifier; - private $noLengthLimit; - private $identifiersId = array(); - private $identifiersContent = array(); - private $identifiersAi = array(); - private $customLabelText=false; - - /** - * Constructors - * - * @param char $start - */ - public function __construct($start = null) { - if ($start === null) { - $start = 'C'; - } - - parent::__construct($start); - - /* Application Identifiers (AIs) */ - /* - array ( KIND_OF_DATA , MINLENGTH , MAXLENGTH , CHECKSUM ) - KIND_OF_DATA: NUMERIC , ALPHA_NUMERIC or DATE_YYMMDD - CHECKSUM: bool (true / false) - */ - $this->identifiersAi = array( - '00' => array(self::NUMERIC, 18, 18, true), - '01' => array(self::NUMERIC, 14, 14, true), - '02' => array(self::NUMERIC, 14, 14, true), - '10' => array(self::ALPHA_NUMERIC, 1, 20, false), - '11' => array(self::DATE_YYMMDD, 6, 6, false), - '12' => array(self::DATE_YYMMDD, 6, 6, false), - '13' => array(self::DATE_YYMMDD, 6, 6, false), - '15' => array(self::DATE_YYMMDD, 6, 6, false), - '17' => array(self::DATE_YYMMDD, 6, 6, false), - '20' => array(self::NUMERIC, 2, 2, false), - '21' => array(self::ALPHA_NUMERIC, 1, 20, false), - '240' => array(self::ALPHA_NUMERIC, 1, 30, false), - '241' => array(self::ALPHA_NUMERIC, 1, 30, false), - '250' => array(self::ALPHA_NUMERIC, 1, 30, false), - '251' => array(self::ALPHA_NUMERIC, 1, 30, false), - '253' => array(self::NUMERIC, 14, 30, false), - '30' => array(self::NUMERIC, 1, 8, false), - '310y' => array(self::NUMERIC, 6, 6, false), - '311y' => array(self::NUMERIC, 6, 6, false), - '312y' => array(self::NUMERIC, 6, 6, false), - '313y' => array(self::NUMERIC, 6, 6, false), - '314y' => array(self::NUMERIC, 6, 6, false), - '315y' => array(self::NUMERIC, 6, 6, false), - '316y' => array(self::NUMERIC, 6, 6, false), - '320y' => array(self::NUMERIC, 6, 6, false), - '321y' => array(self::NUMERIC, 6, 6, false), - '322y' => array(self::NUMERIC, 6, 6, false), - '323y' => array(self::NUMERIC, 6, 6, false), - '324y' => array(self::NUMERIC, 6, 6, false), - '325y' => array(self::NUMERIC, 6, 6, false), - '326y' => array(self::NUMERIC, 6, 6, false), - '327y' => array(self::NUMERIC, 6, 6, false), - '328y' => array(self::NUMERIC, 6, 6, false), - '329y' => array(self::NUMERIC, 6, 6, false), - '330y' => array(self::NUMERIC, 6, 6, false), - '331y' => array(self::NUMERIC, 6, 6, false), - '332y' => array(self::NUMERIC, 6, 6, false), - '333y' => array(self::NUMERIC, 6, 6, false), - '334y' => array(self::NUMERIC, 6, 6, false), - '335y' => array(self::NUMERIC, 6, 6, false), - '336y' => array(self::NUMERIC, 6, 6, false), - '337y' => array(self::NUMERIC, 6, 6, false), - '340y' => array(self::NUMERIC, 6, 6, false), - '341y' => array(self::NUMERIC, 6, 6, false), - '342y' => array(self::NUMERIC, 6, 6, false), - '343y' => array(self::NUMERIC, 6, 6, false), - '344y' => array(self::NUMERIC, 6, 6, false), - '345y' => array(self::NUMERIC, 6, 6, false), - '346y' => array(self::NUMERIC, 6, 6, false), - '347y' => array(self::NUMERIC, 6, 6, false), - '348y' => array(self::NUMERIC, 6, 6, false), - '349y' => array(self::NUMERIC, 6, 6, false), - '350y' => array(self::NUMERIC, 6, 6, false), - '351y' => array(self::NUMERIC, 6, 6, false), - '352y' => array(self::NUMERIC, 6, 6, false), - '353y' => array(self::NUMERIC, 6, 6, false), - '354y' => array(self::NUMERIC, 6, 6, false), - '355y' => array(self::NUMERIC, 6, 6, false), - '356y' => array(self::NUMERIC, 6, 6, false), - '357y' => array(self::NUMERIC, 6, 6, false), - '360y' => array(self::NUMERIC, 6, 6, false), - '361y' => array(self::NUMERIC, 6, 6, false), - '362y' => array(self::NUMERIC, 6, 6, false), - '363y' => array(self::NUMERIC, 6, 6, false), - '364y' => array(self::NUMERIC, 6, 6, false), - '365y' => array(self::NUMERIC, 6, 6, false), - '366y' => array(self::NUMERIC, 6, 6, false), - '367y' => array(self::NUMERIC, 6, 6, false), - '368y' => array(self::NUMERIC, 6, 6, false), - '369y' => array(self::NUMERIC, 6, 6, false), - '37' => array(self::NUMERIC, 1, 8, false), - '390y' => array(self::NUMERIC, 1, 15, false), - '391y' => array(self::NUMERIC, 4, 18, false), - '392y' => array(self::NUMERIC, 1, 15, false), - '393y' => array(self::NUMERIC, 4, 18, false), - '400' => array(self::ALPHA_NUMERIC, 1, 30, false), - '401' => array(self::ALPHA_NUMERIC, 1, 30, false), - '402' => array(self::NUMERIC, 17, 17, false), - '403' => array(self::ALPHA_NUMERIC, 1, 30, false), - '410' => array(self::NUMERIC, 13, 13, true), - '411' => array(self::NUMERIC, 13, 13, true), - '412' => array(self::NUMERIC, 13, 13, true), - '413' => array(self::NUMERIC, 13, 13, true), - '414' => array(self::NUMERIC, 13, 13, true), - '415' => array(self::NUMERIC, 13, 13, true), - '420' => array(self::ALPHA_NUMERIC, 1, 20, false), - '421' => array(self::ALPHA_NUMERIC, 4, 12, false), - '422' => array(self::NUMERIC, 3, 3, false), - '8001' => array(self::NUMERIC, 14, 14, false), - '8002' => array(self::ALPHA_NUMERIC, 1, 20, false), - '8003' => array(self::ALPHA_NUMERIC, 15, 30, false), - '8004' => array(self::ALPHA_NUMERIC, 1, 30, false), - '8005' => array(self::NUMERIC, 6, 6, false), - '8006' => array(self::NUMERIC, 18, 18, false), - '8007' => array(self::ALPHA_NUMERIC, 1, 30, false), - '8018' => array(self::NUMERIC, 18, 18, false), - '8020' => array(self::ALPHA_NUMERIC, 1, 25, false), - '8100' => array(self::NUMERIC, 6, 6, false), - '8101' => array(self::NUMERIC, 10, 10, false), - '8102' => array(self::NUMERIC, 2, 2, false), - '90' => array(self::ALPHA_NUMERIC, 1, 30, false), - '91' => array(self::ALPHA_NUMERIC, 1, 30, false), - '92' => array(self::ALPHA_NUMERIC, 1, 30, false), - '93' => array(self::ALPHA_NUMERIC, 1, 30, false), - '94' => array(self::ALPHA_NUMERIC, 1, 30, false), - '95' => array(self::ALPHA_NUMERIC, 1, 30, false), - '96' => array(self::ALPHA_NUMERIC, 1, 30, false), - '97' => array(self::ALPHA_NUMERIC, 1, 30, false), - '98' => array(self::ALPHA_NUMERIC, 1, 30, false), - '99' => array(self::ALPHA_NUMERIC, 1, 30, false) - ); - - $this->setStrictMode(true); - $this->setTilde(true); - $this->setAllowsUnknownIdentifier(false); - $this->setNoLengthLimit(false); - } - - /** - * Gets the content checksum for an identifier. - * Do not pass the identifier code. - * - * @param string $content - * @return int - */ - public static function getAiContentChecksum($content) { - return self::calculateChecksumMod10($content); - } - - /** - * Enables or disables the strict mode. - * - * @param bool $strictMode - */ - public function setStrictMode($strictMode) { - $this->strictMode = $strictMode; - } - - /** - * Gets if the strict mode is activated. - * - * @return bool - */ - public function getStrictMode() { - return $this->strictMode; - } - - /** - * Allows unknown identifiers. - * - * @param bool $allow - */ - public function setAllowsUnknownIdentifier($allow) { - $this->allowsUnknownIdentifier = (bool)$allow; - } - - /** - * Gets if unkmown identifiers are allowed. - * - * @return bool - */ - public function getAllowsUnknownIdentifier() { - return $this->allowsUnknownIdentifier; - } - - /** - * Removes the limit of 48 characters. - * - * @param bool $noLengthLimit - */ - public function setNoLengthLimit($noLengthLimit) { - $this->noLengthLimit = (bool)$noLengthLimit; - } - - /** - * Gets if the limit of 48 characters is removed. - * - * @return bool - */ - public function getNoLengthLimit() { - return $this->noLengthLimit; - } - - public function setLabel($label){ - $this->customLabelText = $label; - } - - /** - * Parses Text. - * - * @param string $text - */ - public function parse($text) { - $parsedText = $this->parseGs1128($text); - if($this->customLabelText!==false and CINBarcode1D::AUTO_LABEL!=$this->customLabelText){ - parent::setLabel($this->customLabelText); - } - parent::parse($parsedText); - } - - /** - * Formats data for gs1-128. - * - * @return string - */ - private function formatGs1128() { - $formatedText = '~F1'; - $formatedLabel = ''; - $c = count($this->identifiersId); - - for ($i = 0; $i < $c; $i++) { - if ($i > 0) { - $formatedLabel .= ' '; - } - - if ($this->identifiersId[$i] !== null) { - $formatedLabel .= '(' . $this->identifiersId[$i] . ')'; - } - - $formatedText .= $this->identifiersId[$i]; - - $formatedLabel .= $this->identifiersContent[$i]; - $formatedText .= $this->identifiersContent[$i]; - - if (isset($this->identifiersAi[$this->identifiersId[$i]])) { - $ai_data = $this->identifiersAi[$this->identifiersId[$i]]; - } elseif (isset($this->identifiersId[$i][3])) { - $identifierWithVar = substr($this->identifiersId[$i], 0, -1) . 'y'; - $ai_data = isset($this->identifiersAi[$identifierWithVar]) ? $this->identifiersAi[$identifierWithVar] : null; - } else { - $ai_data = null; - } - - /* We'll check if we need to add a ~F1 () char */ - /* If we use the legacy mode, we always add a ~F1 () char between AIs */ - if ($ai_data !== null) { - if ((strlen($this->identifiersContent[$i]) < $ai_data[self::MAXLENGTH] && ($i + 1) !== $c) || (!$this->strictMode && ($i + 1) !== $c)) { - $formatedText .= '~F1'; - } - } elseif ($this->allowsUnknownIdentifier && $this->identifiersId[$i] === null && ($i + 1) !== $c) { - /* If this id is unknown, we add a ~F1 () char */ - $formatedText .= '~F1'; - } - } - - if ($this->noLengthLimit === false && (strlen(str_replace('~F1', chr(29), $formatedText)) - 1) > self::MAX_GS1128_CHARS) { - throw new CINParseException('gs1128', 'The barcode can\'t contain more than ' . self::MAX_GS1128_CHARS . ' characters.'); - } - - $this->label = $formatedLabel; - return $formatedText; - } - - /** - * Parses the text to gs1-128. - * - * @param mixed $text - * @return mixed - */ - private function parseGs1128($text) { - /* We format correctly what the user gives */ - if (is_array($text)) { - $formatArray = array(); - foreach ($text as $content) { - if (is_array($content)) { /* double array */ - if (count($content) === 2) { - if (is_array($content[self::ID]) || is_array($content[self::CONTENT])) { - throw new CINParseException('gs1128', 'Double arrays can\'t contain arrays.'); - } else { - $formatArray[] = '(' . $content[self::ID] . ')' . $content[self::CONTENT]; - } - } else { - throw new CINParseException('gs1128', 'Double arrays must contain 2 values.'); - } - } else { /* simple array */ - $formatArray[] = $content; - } - } - - unset($text); - $text = $formatArray; - } else { /* string */ - $text = array($text); - } - - $textCount = count($text); - for ($cmpt = 0; $cmpt < $textCount; $cmpt++) { - /* We parse the content of the array */ - if (!$this->parseContent($text[$cmpt])) { - return; - } - } - - return $this->formatGs1128(); - } - - /** - * Splits the id and the content for each application identifiers (AIs). - * - * @param string $text - * @param int $cmpt - * @return bool - */ - private function parseContent($text) { - /* $yAlreadySet has 3 states: */ - /* null: There is no variable in the ID; true: the variable is already set; false: the variable is not set yet; */ - $content = null; - $yAlreadySet = null; - $realNameId = null; - $separatorsFound = 0; - $checksumAdded = 0; - $decimalPointRemoved = 0; - $toParse = str_replace('~F1', chr(29), $text); - $nbCharToParse = strlen($toParse); - $nbCharId = 0; - $isFormated = $toParse[0] === '(' ? true : false; - $maxCharId = $isFormated ? self::MAX_ID_FORMATED : self::MAX_ID_NOT_FORMATED; - $id = strtolower(substr($toParse, 0, min($maxCharId, $nbCharToParse))); - $id = $isFormated ? $this->findIdFormated($id, $yAlreadySet, $realNameId) : $this->findIdNotFormated($id, $yAlreadySet, $realNameId); - - if ($id === false) { - if ($this->allowsUnknownIdentifier === false) { - return false; - } - - $id = null; - $nbCharId = 0; - $content = $toParse; - } else { - $nbCharId = strlen($id) + ($isFormated ? 2 : 0); - $n = min($this->identifiersAi[$realNameId][self::MAXLENGTH], $nbCharToParse); - $content = substr($toParse, $nbCharId, $n); - } - - if ($id !== null) { - /* If we have an AI with an "y" var, we check if there is a decimal point in the next *MAXLENGTH* characters */ - /* if there is one, we take an extra character */ - if ($yAlreadySet !== null) { - if (strpos($content, '.') !== false || strpos($content, ',') !== false) { - $n++; - if ($n <= $nbCharToParse) { - /* We take an extra char */ - $content = substr($toParse, $nbCharId, $n); - } - } - } - } - - /* We check for separator */ - $separator = strpos($content, chr(29)); - if ($separator !== false) { - $content = substr($content, 0, $separator); - $separatorsFound++; - } - - if ($id !== null) { - /* We check the conformity */ - if (!$this->checkConformity($content, $id, $realNameId)) { - return false; - } - - /* We check the checksum */ - if (!$this->checkChecksum($content, $id, $realNameId, $checksumAdded)) { - return false; - } - - /* We check the vars */ - if (!$this->checkVars($content, $id, $yAlreadySet, $decimalPointRemoved)) { - return false; - } - } - - $this->identifiersId[] = $id; - $this->identifiersContent[] = $content; - - $nbCharLastContent = (((strlen($content) + $nbCharId) - $checksumAdded) + $decimalPointRemoved) + $separatorsFound; - if ($nbCharToParse - $nbCharLastContent > 0) { - /* If there is more than one content in this array, we parse again */ - $otherContent = substr($toParse, $nbCharLastContent, $nbCharToParse); - $nbCharOtherContent = strlen($otherContent); - - if ($otherContent[0] === chr(29)) { - $otherContent = substr($otherContent, 1); - $nbCharOtherContent--; - } - - if ($nbCharOtherContent > 0) { - $text = $otherContent; - return $this->parseContent($text); - } - } - - return true; - } - - /** - * Checks if an id exists. - * - * @param string $id - * @param bool $yAlreadySet - * @param string $realNameId - * @return bool - */ - private function idExists($id, &$yAlreadySet, &$realNameId) { - $yFound = isset($id[3]) && $id[3] === 'y'; - $idVarAdded = substr($id, 0, -1) . 'y'; - - if (isset($this->identifiersAi[$id])) { - if ($yFound) { - $yAlreadySet = false; - } - - $realNameId = $id; - return true; - } elseif (!$yFound && isset($this->identifiersAi[$idVarAdded])) { - /* if the id don't exist, we try to find this id with "y" at the last char */ - $yAlreadySet = true; - $realNameId = $idVarAdded; - return true; - } - - return false; - } - - /** - * Finds ID with formated content. - * - * @param string $id - * @param bool $yAlreadySet - * @param string $realNameId - * @return mixed - */ - private function findIdFormated($id, &$yAlreadySet, &$realNameId) { - $pos = strpos($id, ')'); - if ($pos === false) { - throw new CINParseException('gs1128', 'Identifiers must have no more than 4 characters.'); - } else { - if ($pos < 3) { - throw new CINParseException('gs1128', 'Identifiers must have at least 2 characters.'); - } - - $id = substr($id, 1, $pos - 1); - if ($this->idExists($id, $yAlreadySet, $realNameId)) { - return $id; - } - - if ($this->allowsUnknownIdentifier === false) { - throw new CINParseException('gs1128', 'The identifier ' . $id . ' doesn\'t exist.'); - } - - return false; - } - } - - /** - * Finds ID with non-formated content. - * - * @param string $id - * @param bool $yAlreadySet - * @param string $realNameId - * @return mixed - */ - private function findIdNotFormated($id, &$yAlreadySet, &$realNameId) { - $tofind = $id; - - while (strlen($tofind) >= 2) { - if ($this->idExists($tofind, $yAlreadySet, $realNameId)) { - return $tofind; - } else { - $tofind = substr($tofind, 0, -1); - } - } - - if ($this->allowsUnknownIdentifier === false) { - throw new CINParseException('gs1128', 'Error in formatting, can\'t find an identifier.'); - } - - return false; - } - - /** - * Checks confirmity of the content. - * - * @param string $content - * @param string $id - * @param string $realNameId - * @return bool - */ - private function checkConformity(&$content, $id, $realNameId) { - switch ($this->identifiersAi[$realNameId][self::KIND_OF_DATA]) { - case self::NUMERIC: - $content = str_replace(',', '.', $content); - if (!preg_match("/^[0-9.]+$/", $content)) { - throw new CINParseException('gs1128', 'The value of "' . $id . '" must be numerical.'); - } - - break; - case self::DATE_YYMMDD: - $valid_date = true; - if (preg_match("/^[0-9]{6}$/", $content)) { - $year = substr($content, 0, 2); - $month = substr($content, 2, 2); - $day = substr($content, 4, 2); - - /* day can be 00 if we only need month and year */ - if (intval($month) < 1 || intval($month) > 12 || intval($day) < 0 || intval($day) > 31) { - $valid_date = false; - } - } else { - $valid_date = false; - } - - if (!$valid_date) { - throw new CINParseException('gs1128', 'The value of "' . $id . '" must be in YYMMDD format.'); - } - - break; - } - - // We check the length of the content - $nbCharContent = strlen($content); - $checksumChar = 0; - $minlengthContent = $this->identifiersAi[$realNameId][self::MINLENGTH]; - $maxlengthContent = $this->identifiersAi[$realNameId][self::MAXLENGTH]; - - if ($this->identifiersAi[$realNameId][self::CHECKSUM]) { - $checksumChar++; - } - - if ($nbCharContent < ($minlengthContent - $checksumChar)) { - if ($minlengthContent === $maxlengthContent) { - throw new CINParseException('gs1128', 'The value of "' . $id . '" must contain ' . $minlengthContent . ' character(s).'); - } else { - throw new CINParseException('gs1128', 'The value of "' . $id . '" must contain between ' . $minlengthContent . ' and ' . $maxlengthContent . ' character(s).'); - } - } - - return true; - } - - /** - * Verifies the checksum. - * - * @param string $content - * @param string $id - * @param int $realNameId - * @param int $checksumAdded - * @return bool - */ - private function checkChecksum(&$content, $id, $realNameId, &$checksumAdded) { - if ($this->identifiersAi[$realNameId][self::CHECKSUM]) { - $nbCharContent = strlen($content); - $minlengthContent = $this->identifiersAi[$realNameId][self::MINLENGTH]; - if ($nbCharContent === ($minlengthContent - 1)) { - /* we need to calculate the checksum */ - $content .= self::getAiContentChecksum($content); - $checksumAdded++; - } elseif ($nbCharContent === $minlengthContent) { - /* we need to check the checksum */ - $checksum = self::getAiContentChecksum(substr($content, 0, -1)); - if (intval($content[$nbCharContent - 1]) !== $checksum) { - throw new CINParseException('gs1128', 'The checksum of "(' . $id . ') ' . $content . '" must be: ' . $checksum); - } - } - } - - return true; - } - - /** - * Checks vars "y". - * - * @param string $content - * @param string $id - * @param bool $yAlreadySet - * @param int $decimalPointRemoved - * @return bool - */ - private function checkVars(&$content, &$id, $yAlreadySet, &$decimalPointRemoved) { - $nbCharContent = strlen($content); - /* We check for "y" var in AI */ - if ($yAlreadySet) { - /* We'll check if we have a decimal point */ - if (strpos($content, '.') !== false) { - throw new CINParseException('gs1128', 'If you do not use any "y" variable, you have to insert a whole number.'); - } - } elseif ($yAlreadySet !== null) { - /* We need to replace the "y" var with the position of the decimal point */ - $pos = strpos($content, '.'); - if ($pos === false) { - $pos = $nbCharContent - 1; - } - - $id = str_replace('y', $nbCharContent - ($pos + 1), strtolower($id)); - $content = str_replace('.', '', $content); - $decimalPointRemoved++; - } - - return true; - } - - /** - * Checksum Mod10. - * - * @param int $content - * @return int - */ - private static function calculateChecksumMod10($content) { - // Calculating Checksum - // Consider the right-most digit of the message to be in an "odd" position, - // and assign odd/even to each character moving from right to left - // Odd Position = 3, Even Position = 1 - // Multiply it by the number - // Add all of that and do 10-(?mod10) - $odd = true; - $checksumValue = 0; - $c = strlen($content); - - for ($i = $c; $i > 0; $i--) { - if ($odd === true) { - $multiplier = 3; - $odd = false; - } else { - $multiplier = 1; - $odd = true; - } - - $checksumValue += ($content[$i - 1] * $multiplier); - } - - return (10 - $checksumValue % 10) % 10; - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/CINi25.php b/barcode-generator/Generator/CINi25.php deleted file mode 100644 index 5daab16..0000000 --- a/barcode-generator/Generator/CINi25.php +++ /dev/null @@ -1,205 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; -use CodeItNow\BarcodeBundle\Generator\CINParseException; -use CodeItNow\BarcodeBundle\Generator\CINBarcode1D; - -class CINi25 extends CINBarcode1D { - private $checksum; - private $ratio; - - /** - * Constructor. - */ - public function __construct() { - parent::__construct(); - - $this->keys = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9'); - $this->code = array( - '00110', /* 0 */ - '10001', /* 1 */ - '01001', /* 2 */ - '11000', /* 3 */ - '00101', /* 4 */ - '10100', /* 5 */ - '01100', /* 6 */ - '00011', /* 7 */ - '10010', /* 8 */ - '01010' /* 9 */ - ); - - $this->setChecksum(false); - $this->setRatio(2); - } - - /** - * Sets the checksum. - * - * @param bool $checksum - */ - public function setChecksum($checksum) { - $this->checksum = (bool)$checksum; - } - - /** - * Sets the ratio of the black bar compared to the white bars. - * - * @param int $ratio - */ - public function setRatio($ratio) { - $this->ratio = $ratio; - } - - /** - * Draws the barcode. - * - * @param resource $im - */ - public function draw($im) { - $temp_text = $this->text; - - // Checksum - if ($this->checksum === true) { - $this->calculateChecksum(); - $temp_text .= $this->keys[$this->checksumValue]; - } - - // Starting Code - $this->drawChar($im, '0000', true); - - // Chars - $c = strlen($temp_text); - for ($i = 0; $i < $c; $i += 2) { - $temp_bar = ''; - $c2 = strlen($this->findCode($temp_text[$i])); - for ($j = 0; $j < $c2; $j++) { - $temp_bar .= substr($this->findCode($temp_text[$i]), $j, 1); - $temp_bar .= substr($this->findCode($temp_text[$i + 1]), $j, 1); - } - - $this->drawChar($im, $this->changeBars($temp_bar), true); - } - - // Ending Code - $this->drawChar($im, $this->changeBars('100'), true); - $this->drawText($im, 0, 0, $this->positionX, $this->thickness); - } - - /** - * Returns the maximal size of a barcode. - * - * @param int $w - * @param int $h - * @return int[] - */ - public function getDimension($w, $h) { - $textlength = (3 + ($this->ratio + 1) * 2) * strlen($this->text); - $startlength = 4; - $checksumlength = 0; - if ($this->checksum === true) { - $checksumlength = (3 + ($this->ratio + 1) * 2); - } - - $endlength = 2 + ($this->ratio + 1); - - $w += $startlength + $textlength + $checksumlength + $endlength; - $h += $this->thickness; - return parent::getDimension($w, $h); - } - - /** - * Validates the input. - */ - protected function validate() { - $c = strlen($this->text); - if ($c === 0) { - throw new CINParseException('i25', 'No data has been entered.'); - } - - // Checking if all chars are allowed - for ($i = 0; $i < $c; $i++) { - if (array_search($this->text[$i], $this->keys) === false) { - throw new CINParseException('i25', 'The character \'' . $this->text[$i] . '\' is not allowed.'); - } - } - - // Must be even - if ($c % 2 !== 0 && $this->checksum === false) { - throw new CINParseException('i25', 'i25 must contain an even amount of digits if checksum is false.'); - } elseif ($c % 2 === 0 && $this->checksum === true) { - throw new CINParseException('i25', 'i25 must contain an odd amount of digits if checksum is true.'); - } - - parent::validate(); - } - - /** - * Overloaded method to calculate checksum. - */ - protected function calculateChecksum() { - // Calculating Checksum - // Consider the right-most digit of the message to be in an "even" position, - // and assign odd/even to each character moving from right to left - // Even Position = 3, Odd Position = 1 - // Multiply it by the number - // Add all of that and do 10-(?mod10) - $even = true; - $this->checksumValue = 0; - $c = strlen($this->text); - for ($i = $c; $i > 0; $i--) { - if ($even === true) { - $multiplier = 3; - $even = false; - } else { - $multiplier = 1; - $even = true; - } - - $this->checksumValue += $this->keys[$this->text[$i - 1]] * $multiplier; - } - - $this->checksumValue = (10 - $this->checksumValue % 10) % 10; - } - - /** - * Overloaded method to display the checksum. - */ - protected function processChecksum() { - if ($this->checksumValue === false) { // Calculate the checksum only once - $this->calculateChecksum(); - } - - if ($this->checksumValue !== false) { - return $this->keys[$this->checksumValue]; - } - - return false; - } - - /** - * Changes the size of the bars based on the ratio - * - * @param string $in - * @return string - */ - private function changeBars($in) { - if ($this->ratio > 1) { - $c = strlen($in); - for ($i = 0; $i < $c; $i++) { - $in[$i] = $in[$i] === '1' ? $this->ratio : $in[$i]; - } - } - - return $in; - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/CINintelligentmail.php b/barcode-generator/Generator/CINintelligentmail.php deleted file mode 100644 index 6c5027f..0000000 --- a/barcode-generator/Generator/CINintelligentmail.php +++ /dev/null @@ -1,650 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator -------------------------------------------------------------------- - */ -namespace CodeItNow\BarcodeBundle\Generator; -use CodeItNow\BarcodeBundle\Generator\CINParseException; -use CodeItNow\BarcodeBundle\Generator\CINArgumentException; -use CodeItNow\BarcodeBundle\Generator\CINBarcode; -use CodeItNow\BarcodeBundle\Generator\CINBarcode1D; - -class CINintelligentmail extends CINBarcode1D { - private $barcodeIdentifier; // string - private $serviceTypeIdentifier; // string - private $mailerIdentifier; // string - private $serialNumber; // string - - private $quietZone; // bool - - private $data; - - private static $characterTable1 = array( - 31, 7936, 47, 7808, 55, 7552, 59, 7040, 61, 6016, - 62, 3968, 79, 7744, 87, 7488, 91, 6976, 93, 5952, - 94, 3904, 103, 7360, 107, 6848, 109, 5824, 110, 3776, - 115, 6592, 117, 5568, 118, 3520, 121, 5056, 122, 3008, - 124, 1984, 143, 7712, 151, 7456, 155, 6944, 157, 5920, - 158, 3872, 167, 7328, 171, 6816, 173, 5792, 174, 3744, - 179, 6560, 181, 5536, 182, 3488, 185, 5024, 186, 2976, - 188, 1952, 199, 7264, 203, 6752, 205, 5728, 206, 3680, - 211, 6496, 213, 5472, 214, 3424, 217, 4960, 218, 2912, - 220, 1888, 227, 6368, 229, 5344, 230, 3296, 233, 4832, - 234, 2784, 236, 1760, 241, 4576, 242, 2528, 244, 1504, - 248, 992, 271, 7696, 279, 7440, 283, 6928, 285, 5904, - 286, 3856, 295, 7312, 299, 6800, 301, 5776, 302, 3728, - 307, 6544, 309, 5520, 310, 3472, 313, 5008, 314, 2960, - 316, 1936, 327, 7248, 331, 6736, 333, 5712, 334, 3664, - 339, 6480, 341, 5456, 342, 3408, 345, 4944, 346, 2896, - 348, 1872, 355, 6352, 357, 5328, 358, 3280, 361, 4816, - 362, 2768, 364, 1744, 369, 4560, 370, 2512, 372, 1488, - 376, 976, 391, 7216, 395, 6704, 397, 5680, 398, 3632, - 403, 6448, 405, 5424, 406, 3376, 409, 4912, 410, 2864, - 412, 1840, 419, 6320, 421, 5296, 422, 3248, 425, 4784, - 426, 2736, 428, 1712, 433, 4528, 434, 2480, 436, 1456, - 440, 944, 451, 6256, 453, 5232, 454, 3184, 457, 4720, - 458, 2672, 460, 1648, 465, 4464, 466, 2416, 468, 1392, - 472, 880, 481, 4336, 482, 2288, 484, 1264, 488, 752, - 527, 7688, 535, 7432, 539, 6920, 541, 5896, 542, 3848, - 551, 7304, 555, 6792, 557, 5768, 558, 3720, 563, 6536, - 565, 5512, 566, 3464, 569, 5000, 570, 2952, 572, 1928, - 583, 7240, 587, 6728, 589, 5704, 590, 3656, 595, 6472, - 597, 5448, 598, 3400, 601, 4936, 602, 2888, 604, 1864, - 611, 6344, 613, 5320, 614, 3272, 617, 4808, 618, 2760, - 620, 1736, 625, 4552, 626, 2504, 628, 1480, 632, 968, - 647, 7208, 651, 6696, 653, 5672, 654, 3624, 659, 6440, - 661, 5416, 662, 3368, 665, 4904, 666, 2856, 668, 1832, - 675, 6312, 677, 5288, 678, 3240, 681, 4776, 682, 2728, - 684, 1704, 689, 4520, 690, 2472, 692, 1448, 696, 936, - 707, 6248, 709, 5224, 710, 3176, 713, 4712, 714, 2664, - 716, 1640, 721, 4456, 722, 2408, 724, 1384, 728, 872, - 737, 4328, 738, 2280, 740, 1256, 775, 7192, 779, 6680, - 781, 5656, 782, 3608, 787, 6424, 789, 5400, 790, 3352, - 793, 4888, 794, 2840, 796, 1816, 803, 6296, 805, 5272, - 806, 3224, 809, 4760, 810, 2712, 812, 1688, 817, 4504, - 818, 2456, 820, 1432, 824, 920, 835, 6232, 837, 5208, - 838, 3160, 841, 4696, 842, 2648, 844, 1624, 849, 4440, - 850, 2392, 852, 1368, 865, 4312, 866, 2264, 868, 1240, - 899, 6200, 901, 5176, 902, 3128, 905, 4664, 906, 2616, - 908, 1592, 913, 4408, 914, 2360, 916, 1336, 929, 4280, - 930, 2232, 932, 1208, 961, 4216, 962, 2168, 964, 1144, - 1039, 7684, 1047, 7428, 1051, 6916, 1053, 5892, 1054, 3844, - 1063, 7300, 1067, 6788, 1069, 5764, 1070, 3716, 1075, 6532, - 1077, 5508, 1078, 3460, 1081, 4996, 1082, 2948, 1084, 1924, - 1095, 7236, 1099, 6724, 1101, 5700, 1102, 3652, 1107, 6468, - 1109, 5444, 1110, 3396, 1113, 4932, 1114, 2884, 1116, 1860, - 1123, 6340, 1125, 5316, 1126, 3268, 1129, 4804, 1130, 2756, - 1132, 1732, 1137, 4548, 1138, 2500, 1140, 1476, 1159, 7204, - 1163, 6692, 1165, 5668, 1166, 3620, 1171, 6436, 1173, 5412, - 1174, 3364, 1177, 4900, 1178, 2852, 1180, 1828, 1187, 6308, - 1189, 5284, 1190, 3236, 1193, 4772, 1194, 2724, 1196, 1700, - 1201, 4516, 1202, 2468, 1204, 1444, 1219, 6244, 1221, 5220, - 1222, 3172, 1225, 4708, 1226, 2660, 1228, 1636, 1233, 4452, - 1234, 2404, 1236, 1380, 1249, 4324, 1250, 2276, 1287, 7188, - 1291, 6676, 1293, 5652, 1294, 3604, 1299, 6420, 1301, 5396, - 1302, 3348, 1305, 4884, 1306, 2836, 1308, 1812, 1315, 6292, - 1317, 5268, 1318, 3220, 1321, 4756, 1322, 2708, 1324, 1684, - 1329, 4500, 1330, 2452, 1332, 1428, 1347, 6228, 1349, 5204, - 1350, 3156, 1353, 4692, 1354, 2644, 1356, 1620, 1361, 4436, - 1362, 2388, 1377, 4308, 1378, 2260, 1411, 6196, 1413, 5172, - 1414, 3124, 1417, 4660, 1418, 2612, 1420, 1588, 1425, 4404, - 1426, 2356, 1441, 4276, 1442, 2228, 1473, 4212, 1474, 2164, - 1543, 7180, 1547, 6668, 1549, 5644, 1550, 3596, 1555, 6412, - 1557, 5388, 1558, 3340, 1561, 4876, 1562, 2828, 1564, 1804, - 1571, 6284, 1573, 5260, 1574, 3212, 1577, 4748, 1578, 2700, - 1580, 1676, 1585, 4492, 1586, 2444, 1603, 6220, 1605, 5196, - 1606, 3148, 1609, 4684, 1610, 2636, 1617, 4428, 1618, 2380, - 1633, 4300, 1634, 2252, 1667, 6188, 1669, 5164, 1670, 3116, - 1673, 4652, 1674, 2604, 1681, 4396, 1682, 2348, 1697, 4268, - 1698, 2220, 1729, 4204, 1730, 2156, 1795, 6172, 1797, 5148, - 1798, 3100, 1801, 4636, 1802, 2588, 1809, 4380, 1810, 2332, - 1825, 4252, 1826, 2204, 1857, 4188, 1858, 2140, 1921, 4156, - 1922, 2108, 2063, 7682, 2071, 7426, 2075, 6914, 2077, 5890, - 2078, 3842, 2087, 7298, 2091, 6786, 2093, 5762, 2094, 3714, - 2099, 6530, 2101, 5506, 2102, 3458, 2105, 4994, 2106, 2946, - 2119, 7234, 2123, 6722, 2125, 5698, 2126, 3650, 2131, 6466, - 2133, 5442, 2134, 3394, 2137, 4930, 2138, 2882, 2147, 6338, - 2149, 5314, 2150, 3266, 2153, 4802, 2154, 2754, 2161, 4546, - 2162, 2498, 2183, 7202, 2187, 6690, 2189, 5666, 2190, 3618, - 2195, 6434, 2197, 5410, 2198, 3362, 2201, 4898, 2202, 2850, - 2211, 6306, 2213, 5282, 2214, 3234, 2217, 4770, 2218, 2722, - 2225, 4514, 2226, 2466, 2243, 6242, 2245, 5218, 2246, 3170, - 2249, 4706, 2250, 2658, 2257, 4450, 2258, 2402, 2273, 4322, - 2311, 7186, 2315, 6674, 2317, 5650, 2318, 3602, 2323, 6418, - 2325, 5394, 2326, 3346, 2329, 4882, 2330, 2834, 2339, 6290, - 2341, 5266, 2342, 3218, 2345, 4754, 2346, 2706, 2353, 4498, - 2354, 2450, 2371, 6226, 2373, 5202, 2374, 3154, 2377, 4690, - 2378, 2642, 2385, 4434, 2401, 4306, 2435, 6194, 2437, 5170, - 2438, 3122, 2441, 4658, 2442, 2610, 2449, 4402, 2465, 4274, - 2497, 4210, 2567, 7178, 2571, 6666, 2573, 5642, 2574, 3594, - 2579, 6410, 2581, 5386, 2582, 3338, 2585, 4874, 2586, 2826, - 2595, 6282, 2597, 5258, 2598, 3210, 2601, 4746, 2602, 2698, - 2609, 4490, 2627, 6218, 2629, 5194, 2630, 3146, 2633, 4682, - 2641, 4426, 2657, 4298, 2691, 6186, 2693, 5162, 2694, 3114, - 2697, 4650, 2705, 4394, 2721, 4266, 2753, 4202, 2819, 6170, - 2821, 5146, 2822, 3098, 2825, 4634, 2833, 4378, 2849, 4250, - 2881, 4186, 2945, 4154, 3079, 7174, 3083, 6662, 3085, 5638, - 3086, 3590, 3091, 6406, 3093, 5382, 3094, 3334, 3097, 4870, - 3107, 6278, 3109, 5254, 3110, 3206, 3113, 4742, 3121, 4486, - 3139, 6214, 3141, 5190, 3145, 4678, 3153, 4422, 3169, 4294, - 3203, 6182, 3205, 5158, 3209, 4646, 3217, 4390, 3233, 4262, - 3265, 4198, 3331, 6166, 3333, 5142, 3337, 4630, 3345, 4374, - 3361, 4246, 3393, 4182, 3457, 4150, 3587, 6158, 3589, 5134, - 3593, 4622, 3601, 4366, 3617, 4238, 3649, 4174, 3713, 4142, - 3841, 4126, 4111, 7681, 4119, 7425, 4123, 6913, 4125, 5889, - 4135, 7297, 4139, 6785, 4141, 5761, 4147, 6529, 4149, 5505, - 4153, 4993, 4167, 7233, 4171, 6721, 4173, 5697, 4179, 6465, - 4181, 5441, 4185, 4929, 4195, 6337, 4197, 5313, 4201, 4801, - 4209, 4545, 4231, 7201, 4235, 6689, 4237, 5665, 4243, 6433, - 4245, 5409, 4249, 4897, 4259, 6305, 4261, 5281, 4265, 4769, - 4273, 4513, 4291, 6241, 4293, 5217, 4297, 4705, 4305, 4449, - 4359, 7185, 4363, 6673, 4365, 5649, 4371, 6417, 4373, 5393, - 4377, 4881, 4387, 6289, 4389, 5265, 4393, 4753, 4401, 4497, - 4419, 6225, 4421, 5201, 4425, 4689, 4483, 6193, 4485, 5169, - 4489, 4657, 4615, 7177, 4619, 6665, 4621, 5641, 4627, 6409, - 4629, 5385, 4633, 4873, 4643, 6281, 4645, 5257, 4649, 4745, - 4675, 6217, 4677, 5193, 4739, 6185, 4741, 5161, 4867, 6169, - 4869, 5145, 5127, 7173, 5131, 6661, 5133, 5637, 5139, 6405, - 5141, 5381, 5155, 6277, 5157, 5253, 5187, 6213, 5251, 6181, - 5379, 6165, 5635, 6157, 6151, 7171, 6155, 6659, 6163, 6403, - 6179, 6275, 6211, 5189, 4681, 4433, 4321, 3142, 2634, 2386, - 2274, 1612, 1364, 1252, 856, 744, 496); - - private static $characterTable2 = array( - 3, 6144, 5, 5120, 6, 3072, 9, 4608, 10, 2560, - 12, 1536, 17, 4352, 18, 2304, 20, 1280, 24, 768, - 33, 4224, 34, 2176, 36, 1152, 40, 640, 48, 384, - 65, 4160, 66, 2112, 68, 1088, 72, 576, 80, 320, - 96, 192, 129, 4128, 130, 2080, 132, 1056, 136, 544, - 144, 288, 257, 4112, 258, 2064, 260, 1040, 264, 528, - 513, 4104, 514, 2056, 516, 1032, 1025, 4100, 1026, 2052, - 2049, 4098, 4097, 2050, 1028, 520, 272, 160); - - private static $barPositions = array( - array(array(7, 2), array(4, 3)), - array(array(1, 10), array(0, 0)), - array(array(9, 12), array(2, 8)), - array(array(5, 5), array(6, 11)), - array(array(8, 9), array(3, 1)), - array(array(0, 1), array(5, 12)), - array(array(2, 5), array(1, 8)), - array(array(4, 4), array(9, 11)), - array(array(6, 3), array(8, 10)), - array(array(3, 9), array(7, 6)), - array(array(5, 11), array(1, 4)), - array(array(8, 5), array(2, 12)), - array(array(9, 10), array(0, 2)), - array(array(7, 1), array(6, 7)), - array(array(3, 6), array(4, 9)), - array(array(0, 3), array(8, 6)), - array(array(6, 4), array(2, 7)), - array(array(1, 1), array(9, 9)), - array(array(7, 10), array(5, 2)), - array(array(4, 0), array(3, 8)), - array(array(6, 2), array(0, 4)), - array(array(8, 11), array(1, 0)), - array(array(9, 8), array(3, 12)), - array(array(2, 6), array(7, 7)), - array(array(5, 1), array(4, 10)), - array(array(1, 12), array(6, 9)), - array(array(7, 3), array(8, 0)), - array(array(5, 8), array(9, 7)), - array(array(4, 6), array(2, 10)), - array(array(3, 4), array(0, 5)), - array(array(8, 4), array(5, 7)), - array(array(7, 11), array(1, 9)), - array(array(6, 0), array(9, 6)), - array(array(0, 6), array(4, 8)), - array(array(2, 1), array(3, 2)), - array(array(5, 9), array(8, 12)), - array(array(4, 11), array(6, 1)), - array(array(9, 5), array(7, 4)), - array(array(3, 3), array(1, 2)), - array(array(0, 7), array(2, 0)), - array(array(1, 3), array(4, 1)), - array(array(6, 10), array(3, 5)), - array(array(8, 7), array(9, 4)), - array(array(2, 11), array(5, 6)), - array(array(0, 8), array(7, 12)), - array(array(4, 2), array(8, 1)), - array(array(5, 10), array(3, 0)), - array(array(9, 3), array(0, 9)), - array(array(6, 5), array(2, 4)), - array(array(7, 8), array(1, 7)), - array(array(5, 0), array(4, 5)), - array(array(2, 3), array(0, 10)), - array(array(6, 12), array(9, 2)), - array(array(3, 11), array(1, 6)), - array(array(8, 8), array(7, 9)), - array(array(5, 4), array(0, 11)), - array(array(1, 5), array(2, 2)), - array(array(9, 1), array(4, 12)), - array(array(8, 3), array(6, 6)), - array(array(7, 0), array(3, 7)), - array(array(4, 7), array(7, 5)), - array(array(0, 12), array(1, 11)), - array(array(2, 9), array(9, 0)), - array(array(6, 8), array(5, 3)), - array(array(3, 10), array(8, 2)) - ); - - /** - * Constructor. - */ - public function __construct() { - parent::__construct(); - - $this->setQuietZone(true); - $this->setThickness(9); - } - - /** - * Gets the Quiet zone. - * - * @return bool - */ - public function getQuietZone() { - return $this->quietZone; - } - - /** - * Sets the Quiet zone. - * - * @param bool $quietZone - */ - public function setQuietZone($quietZone) { - $this->quietZone = (bool)$quietZone; - } - - /** - * Sets the tracking code. - * - * @param int $barcodeIdentifier 2-digit number. 2nd digit must be 0-4 - * @param int $serviceTypeIdentifier 3 digits - * @param int $mailerIdentifier 6 or 9 digits - * @param int $serialNumber 9 (if mailerId is 6) or 6 digits (if mailerId is 9) - */ - public function setTrackingCode($barcodeIdentifier, $serviceTypeIdentifier, $mailerIdentifier, $serialNumber) { - $barcodeIdentifier = (string)(int)$barcodeIdentifier; - $serviceTypeIdentifier = (int)$serviceTypeIdentifier; - $mailerIdentifier = (int)$mailerIdentifier; - $serialNumber = (string)(int)$serialNumber; - - $barcodeIdentifier = str_pad($barcodeIdentifier, 2, '0', STR_PAD_LEFT); - - if (strlen($barcodeIdentifier) !== 2) { - throw new CINArgumentException('Barcode Identifier must contain 2 digits.', 'barcodeIdentifier'); - } - - $barcodeIdentifierSecondNumber = $barcodeIdentifier[1]; - if ($barcodeIdentifierSecondNumber !== '0' && $barcodeIdentifierSecondNumber !== '1' && $barcodeIdentifierSecondNumber !== '2' && $barcodeIdentifierSecondNumber !== '3' && $barcodeIdentifierSecondNumber !== '4') { - throw new CINArgumentException('Barcode Identifier second digit must be a number between 0 and 4.', 'barcodeIdentifier'); - } - - if ($serviceTypeIdentifier < 0 || $serviceTypeIdentifier > 999) { - throw new CINArgumentException('Service Type Identifier must be between 0 and 999.', 'serviceTypeIdentifier'); - } - - $mailerIdentifierLength = 6; - if ($mailerIdentifier > 899999) { - $mailerIdentifierLength = 9; - } - - if ($mailerIdentifierLength === 9 && strlen($serialNumber) > 6) { - throw new CINArgumentException('If the Serial Number has more than 6 digits, the Mailer Identifier must be lower than 900000.', 'mailerIdentifier'); - } - - if ($mailerIdentifierLength === 9) { - if ($mailerIdentifierLength < 0 || $mailerIdentifier > 999999999) { - throw new CINArgumentException('Mailer Identifier must be between 0 and 999999999.', 'mailerIdentifier'); - } - } - - $this->barcodeIdentifier = $barcodeIdentifier; - $this->serviceTypeIdentifier = str_pad($serviceTypeIdentifier, 3, '0', STR_PAD_LEFT); - $this->mailerIdentifier = str_pad($mailerIdentifier, $mailerIdentifierLength, '0', STR_PAD_LEFT); - $this->serialNumber = str_pad((int)$serialNumber, $mailerIdentifierLength === 6 ? 9 : 6, '0', STR_PAD_LEFT); - } - - /** - * Parses the text before displaying it. - * - * @param mixed $text - */ - public function parse($text) { - parent::parse($text); - - $number = self::executeStep1($this->text, $this->barcodeIdentifier, $this->serviceTypeIdentifier, $this->mailerIdentifier, $this->serialNumber); - $crc = self::executeStep2($number); - $codewords = self::executeStep3($number); - $codewords = self::executeStep4($codewords, $crc); - $characters = self::executeStep5($codewords, $crc); - $this->data = self::executeStep6($characters); - } - - /** - * Draws the barcode. - * - * @param resource $im - */ - public function draw($im) { - if ($this->quietZone) { - $this->positionX += 9; - } - - $c = strlen($this->data); - for ($i = 0; $i < $c; $i++) { - $this->drawChar($im, $this->data[$i]); - } - - $this->drawText($im, 0, 0, $this->positionX, $this->thickness + ($this->quietZone ? 4 : 0)); - } - - /** - * Returns the maximal size of a barcode. - * - * @param int $w - * @param int $h - * @return int[] - */ - public function getDimension($w, $h) { - $w += 65 * 3; - $h += $this->thickness; - - // We remove the white on the right - $w -= 1.56; - - if ($this->quietZone) { - $w += 18; - $h += 4; - } - - return parent::getDimension($w, $h); - } - - /** - * Validates the input. - */ - protected function validate() { - // Tracking must have been entered - if ($this->barcodeIdentifier === null || $this->serviceTypeIdentifier === null || $this->mailerIdentifier === null || $this->serialNumber === null) { - throw new CINParseException('intelligentmail', 'The tracking code must be set before calling the parse method.'); - } - - // Checking if all chars are allowed - $match = array(); - if (preg_match('/[^0-9]/', $this->text, $match)) { - throw new CINParseException('intelligentmail', 'The character \'' . $match[0] . '\' is not allowed.'); - } - - // Must contain 0, 5, 9 or 11 chars - $c = strlen($this->text); - if ($c !== 0 && $c !== 5 && $c !== 9 && $c !== 11) { - throw new CINParseException('intelligentmail', 'Must contain 0, 5, 9, or 11 characters.'); - } - - parent::validate(); - } - - /** - * Overloaded method for drawing special barcode. - * - * @param resource $im - * @param string $code - * @param boolean $startBar - */ - protected function drawChar($im, $code, $startBar = true) { - $y1 = 0; - $y2 = 0; - switch ($code) { - case 'A': - $y1 = 0; - $y2 = $this->thickness - ($this->thickness / 2.5); - break; - case 'D': - $y1 = 3.096; - $y2 = $this->thickness - 1; - break; - case 'F': - $y1 = 0; - $y2 = $this->thickness - 1; - break; - case 'T': - $y1 = 3.096; - $y2 = $this->thickness - ($this->thickness / 2.5); - break; - } - - if ($this->quietZone) { - $y1 += 2; - $y2 += 2; - } - - $this->drawFilledRectangle($im, $this->positionX, $y1, $this->positionX + 0.44, $y2, CINBarcode::COLOR_FG); - $this->positionX += 3; - } - - /** - * Executes Step 1: Conversion of Data Fields into Binary Data - * - * @param string $text - * @param string $barcodeIdentifier - * @param string $serviceTypeIdentifier - * @param string $mailerIdentifier - * @param string $serialNumber - * @return string BCNumber - */ - private static function executeStep1($text, $barcodeIdentifier, $serviceTypeIdentifier, $mailerIdentifier, $serialNumber) { - $number = self::conversionRoutingCode($text); - $number = self::conversionTrackingCode($number, $barcodeIdentifier, $serviceTypeIdentifier, $mailerIdentifier, $serialNumber); - - return $number; - } - - /** - * Executes Step 2: Generation of 11-Bit CRC on Binary Data - * - * @param $number BCNumber - * @return int - */ - private static function executeStep2($number) { - $byteArray = str_pad(self::bcdecuc($number), 13, chr(0), STR_PAD_LEFT); - - $generatorPolynomial = 0x0f35; - $frameCheckSequence = 0x07ff; - $data = 0; - $byteIndex = 0; - $bit = 0; - - $data = (ord($byteArray[$byteIndex]) << 5) & 0xffff; - for ($bit = 2; $bit < 8; $bit++) { - if (($frameCheckSequence ^ $data) & 0x400) { - $frameCheckSequence = ($frameCheckSequence << 1) ^ $generatorPolynomial; - } else { - $frameCheckSequence = ($frameCheckSequence << 1); - } - - $frameCheckSequence &= 0x7ff; - $data <<= 1; - $data &= 0xffff; - } - - for ($byteIndex = 1; $byteIndex < 13; $byteIndex++) { - $data = (ord($byteArray[$byteIndex]) << 3) & 0xffff; - for ($bit = 0; $bit < 8; $bit++) { - if (($frameCheckSequence ^ $data) & 0x0400) { - $frameCheckSequence = ($frameCheckSequence << 1) ^ $generatorPolynomial; - } else { - $frameCheckSequence = ($frameCheckSequence << 1); - } - - $frameCheckSequence &= 0x7ff; - $data <<= 1; - $data &= 0xffff; - } - } - - return $frameCheckSequence; - } - - /** - * Executes Step 3: Conversion from Binary Data to Codewords - * - * @param string $number BCNumber - * @return int[] - */ - private static function executeStep3($number) { - $codewords = array(); - $codewords[9] = (int)bcmod($number, '636'); - $number = bcdiv($number, '636', 0); - - for ($i = 8; $i >= 0; $i--) { - $codewords[$i] = (int)bcmod($number, '1365'); - $number = bcdiv($number, '1365', 0); - } - - return $codewords; - } - - /** - * Executes Step 4: Inserting Additional Information into Codewords - * - * @param int[] $codewords - * @param int $crc - * @return int[] - */ - private static function executeStep4($codewords, $crc) { - $codewords[9] *= 2; - if ($crc & 0x400) { - $codewords[0] += 659; - } - - return $codewords; - } - - /** - * Executes Step 5: Conversion from Codewords to Characters - * - * @param int[] $codewords - * @param int $crc - * @return int[] - */ - private static function executeStep5($codewords, $crc) { - $characters = array(); - for ($i = 0; $i < 10; $i++) { - if ($codewords[$i] <= 1286) { - $characters[$i] = self::$characterTable1[$codewords[$i]]; - } else { - $characters[$i] = self::$characterTable2[$codewords[$i] - 1287]; - } - } - - for ($i = 0; $i < 10; $i++) { - $mask = 1 << $i; - if ($crc & $mask) { - $characters[$i] ^= 0x1fff; - } - } - - return $characters; - } - - /** - * Executes Step 6: Conversion from Characters to the Intelligent Mail Barcode - * - * @param int[] $characters - * @return string - */ - private static function executeStep6($characters) { - $bars = ''; - for ($i = 0; $i < 65; $i++) { - $barPosition = self::$barPositions[$i]; - $descender = $barPosition[0]; - $ascender = $barPosition[1]; - $extenderDescender = !!($characters[$descender[0]] & (1 << $descender[1])); - $extenderAscender = !!($characters[$ascender[0]] & (1 << $ascender[1])); - - if ($extenderDescender && $extenderAscender) { - $bars .= 'F'; - } elseif ($extenderDescender) { - $bars .= 'D'; - } elseif ($extenderAscender) { - $bars .= 'A'; - } else { - $bars .= 'T'; - } - } - - return $bars; - } - - /** - * Converts the routing code zipcode. - * - * @param string $zipcode - * @return string BCNumber - */ - private static function conversionRoutingCode($zipcode) { - $number = $zipcode; - switch (strlen($zipcode)) { - case 11: - $number = bcadd($number, '1000000000', 0); - case 9: - $number = bcadd($number, '100000', 0); - case 5: - $number = bcadd($number, '1', 0); - default: - return $number; - } - } - - /** - * Converts the tracking code number. - * - * @param string $number BCNumber - * @param string $barcodeIdentifier - * @param string $serviceTypeIdentifier - * @param string $mailerIdentifier - * @param string $serialNumber - * @return string BCNumber - */ - private static function conversionTrackingCode($number, $barcodeIdentifier, $serviceTypeIdentifier, $mailerIdentifier, $serialNumber) { - $number = bcmul($number, 10, 0); - $number = bcadd($number, $barcodeIdentifier[0], 0); - $number = bcmul($number, 5, 0); - $number = bcadd($number, $barcodeIdentifier[1], 0); - - $temp = $serviceTypeIdentifier . $mailerIdentifier . $serialNumber; - for ($i = 0; $i < 18; $i++) { - $number = bcmul($number, 10, 0); - $number = bcadd($number, $temp[$i], 0); - } - - return $number; - } - - /** - * Transforms a BCNumber into unsigned char*. - * - * @param string $dec BCNumber - * @param string - */ - private static function bcdecuc($dec) { - $last = bcmod($dec, 256); - $remain = bcdiv(bcsub($dec, $last), 256, 0); - - if ($remain == 0) { - return pack('C', $last); - } else { - return self::bcdecuc($remain) . pack('C', $last); - } - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/CINisbn.php b/barcode-generator/Generator/CINisbn.php deleted file mode 100644 index 546b057..0000000 --- a/barcode-generator/Generator/CINisbn.php +++ /dev/null @@ -1,167 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; - -use CodeItNow\BarcodeBundle\Generator\CINParseException; -use CodeItNow\BarcodeBundle\Generator\CINArgumentException; -use CodeItNow\BarcodeBundle\Generator\CINean13; - -class CINisbn extends CINean13 { - const GS1_AUTO = 0; - const GS1_PREFIX978 = 1; - const GS1_PREFIX979 = 2; - - private $gs1; - - /** - * Constructor. - * - * @param int $gs1 - */ - public function __construct($gs1 = self::GS1_AUTO) { - parent::__construct(); - $this->setGS1($gs1); - } - - /** - * Adds the default label. - */ - protected function addDefaultLabel() { - if ($this->isDefaultEanLabelEnabled()) { - $isbn = $this->createISBNText(); - $font = $this->font; - - $topLabel = new CINLabel($isbn, $font, CINLabel::POSITION_TOP, CINLabel::ALIGN_CENTER); - - $this->addLabel($topLabel); - } - - parent::addDefaultLabel(); - } - - /** - * Sets the first numbers of the barcode. - * - GS1_AUTO: Adds 978 before the code - * - GS1_PREFIX978: Adds 978 before the code - * - GS1_PREFIX979: Adds 979 before the code - * - * @param int $gs1 - */ - public function setGS1($gs1) { - $gs1 = (int)$gs1; - if ($gs1 !== self::GS1_AUTO && $gs1 !== self::GS1_PREFIX978 && $gs1 !== self::GS1_PREFIX979) { - throw new CINArgumentException('The GS1 argument must be CINisbn::GS1_AUTO, CINisbn::GS1_PREFIX978, or CINisbn::GS1_PREFIX979', 'gs1'); - } - - $this->gs1 = $gs1; - } - - /** - * Check chars allowed. - */ - protected function checkCharsAllowed() { - $c = strlen($this->text); - - // Special case, if we have 10 digits, the last one can be X - if ($c === 10) { - if (array_search($this->text[9], $this->keys) === false && $this->text[9] !== 'X') { - throw new CINParseException('isbn', 'The character \'' . $this->text[9] . '\' is not allowed.'); - } - - // Drop the last char - $this->text = substr($this->text, 0, 9); - } - - return parent::checkCharsAllowed(); - } - - /** - * Check correct length. - */ - protected function checkCorrectLength() { - $c = strlen($this->text); - - // If we have 13 chars just flush the last one - if ($c === 13) { - $this->text = substr($this->text, 0, 12); - } elseif ($c === 9 || $c === 10) { - if ($c === 10) { - // Before dropping it, we check if it's legal - if (array_search($this->text[9], $this->keys) === false && $this->text[9] !== 'X') { - throw new CINParseException('isbn', 'The character \'' . $this->text[9] . '\' is not allowed.'); - } - - $this->text = substr($this->text, 0, 9); - } - - if ($this->gs1 === self::GS1_AUTO || $this->gs1 === self::GS1_PREFIX978) { - $this->text = '978' . $this->text; - } elseif ($this->gs1 === self::GS1_PREFIX979) { - $this->text = '979' . $this->text; - } - } elseif ($c !== 12) { - throw new CINParseException('isbn', 'The code parsed must be 9, 10, 12, or 13 digits long.'); - } - } - - /** - * Creates the ISBN text. - * - * @return string - */ - private function createISBNText() { - $isbn = ''; - if (!empty($this->text)) { - // We try to create the ISBN Text... the hyphen really depends the ISBN agency. - // We just put one before the checksum and one after the GS1 if present. - $c = strlen($this->text); - if ($c === 12 || $c === 13) { - // If we have 13 characters now, just transform it temporarily to find the checksum... - // Further in the code we take care of that anyway. - $lastCharacter = ''; - if ($c === 13) { - $lastCharacter = $this->text[12]; - $this->text = substr($this->text, 0, 12); - } - - $checksum = $this->processChecksum(); - $isbn = 'ISBN ' . substr($this->text, 0, 3) . '-' . substr($this->text, 3, 9) . '-' . $checksum; - - // Put the last character back - if ($c === 13) { - $this->text .= $lastCharacter; - } - } elseif ($c === 9 || $c === 10) { - $checksum = 0; - for ($i = 10; $i >= 2; $i--) { - $checksum += $this->text[10 - $i] * $i; - } - - $checksum = 11 - $checksum % 11; - if ($checksum === 10) { - $checksum = 'X'; // Changing type - } - - $isbn = 'ISBN ' . substr($this->text, 0, 9) . '-' . $checksum; - } - } - - return $isbn; - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/CINmsi.php b/barcode-generator/Generator/CINmsi.php deleted file mode 100644 index f520869..0000000 --- a/barcode-generator/Generator/CINmsi.php +++ /dev/null @@ -1,186 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; -use CodeItNow\BarcodeBundle\Generator\CINParseException; -use CodeItNow\BarcodeBundle\Generator\CINArgumentException; -use CodeItNow\BarcodeBundle\Generator\CINBarcode1D; - -class CINmsi extends CINBarcode1D { - private $checksum; - - /** - * Constructor. - */ - public function __construct() { - parent::__construct(); - - $this->keys = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9'); - $this->code = array( - '01010101', /* 0 */ - '01010110', /* 1 */ - '01011001', /* 2 */ - '01011010', /* 3 */ - '01100101', /* 4 */ - '01100110', /* 5 */ - '01101001', /* 6 */ - '01101010', /* 7 */ - '10010101', /* 8 */ - '10010110' /* 9 */ - ); - - $this->setChecksum(0); - } - - /** - * Sets how many checksums we display. 0 to 2. - * - * @param int $checksum - */ - public function setChecksum($checksum) { - $checksum = intval($checksum); - if ($checksum < 0 && $checksum > 2) { - throw new CINArgumentException('The checksum must be between 0 and 2 included.', 'checksum'); - } - - $this->checksum = $checksum; - } - - /** - * Draws the barcode. - * - * @param resource $im - */ - public function draw($im) { - // Checksum - $this->calculateChecksum(); - - // Starting Code - $this->drawChar($im, '10', true); - - // Chars - $c = strlen($this->text); - for ($i = 0; $i < $c; $i++) { - $this->drawChar($im, $this->findCode($this->text[$i]), true); - } - - $c = count($this->checksumValue); - for ($i = 0; $i < $c; $i++) { - $this->drawChar($im, $this->findCode($this->checksumValue[$i]), true); - } - - // Ending Code - $this->drawChar($im, '010', true); - $this->drawText($im, 0, 0, $this->positionX, $this->thickness); - } - - /** - * Returns the maximal size of a barcode. - * - * @param int $w - * @param int $h - * @return int[] - */ - public function getDimension($w, $h) { - $textlength = 12 * strlen($this->text); - $startlength = 3; - $checksumlength = $this->checksum * 12; - $endlength = 4; - - $w += $startlength + $textlength + $checksumlength + $endlength; - $h += $this->thickness; - return parent::getDimension($w, $h); - } - - /** - * Validates the input. - */ - protected function validate() { - $c = strlen($this->text); - if ($c === 0) { - throw new CINParseException('msi', 'No data has been entered.'); - } - - // Checking if all chars are allowed - for ($i = 0; $i < $c; $i++) { - if (array_search($this->text[$i], $this->keys) === false) { - throw new CINParseException('msi', 'The character \'' . $this->text[$i] . '\' is not allowed.'); - } - } - } - - /** - * Overloaded method to calculate checksum. - */ - protected function calculateChecksum() { - // Forming a new number - // If the original number is even, we take all even position - // If the original number is odd, we take all odd position - // 123456 = 246 - // 12345 = 135 - // Multiply by 2 - // Add up all the digit in the result (270 : 2+7+0) - // Add up other digit not used. - // 10 - (? Modulo 10). If result = 10, change to 0 - $last_text = $this->text; - $this->checksumValue = array(); - for ($i = 0; $i < $this->checksum; $i++) { - $new_text = ''; - $new_number = 0; - $c = strlen($last_text); - if ($c % 2 === 0) { // Even - $starting = 1; - } else { - $starting = 0; - } - - for ($j = $starting; $j < $c; $j += 2) { - $new_text .= $last_text[$j]; - } - - $new_text = strval(intval($new_text) * 2); - $c2 = strlen($new_text); - for ($j = 0; $j < $c2; $j++) { - $new_number += intval($new_text[$j]); - } - - for ($j = ($starting === 0) ? 1 : 0; $j < $c; $j += 2) { - $new_number += intval($last_text[$j]); - } - - $new_number = (10 - $new_number % 10) % 10; - $this->checksumValue[] = $new_number; - $last_text .= $new_number; - } - } - - /** - * Overloaded method to display the checksum. - */ - protected function processChecksum() { - if ($this->checksumValue === false) { // Calculate the checksum only once - $this->calculateChecksum(); - } - - if ($this->checksumValue !== false) { - $ret = ''; - $c = count($this->checksumValue); - for ($i = 0; $i < $c; $i++) { - $ret .= $this->keys[$this->checksumValue[$i]]; - } - - return $ret; - } - - return false; - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/CINothercode.php b/barcode-generator/Generator/CINothercode.php deleted file mode 100644 index 3021cc5..0000000 --- a/barcode-generator/Generator/CINothercode.php +++ /dev/null @@ -1,90 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; -use CodeItNow\BarcodeBundle\Generator\CINParseException; -use CodeItNow\BarcodeBundle\Generator\CINBarcode1D; - -class CINothercode extends CINBarcode1D { - /** - * Constructor. - */ - public function __construct() { - parent::__construct(); - - $this->keys = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9'); - } - - /** - * Draws the barcode. - * - * @param resource $im - */ - public function draw($im) { - $this->drawChar($im, $this->text, true); - $this->drawText($im, 0, 0, $this->positionX, $this->thickness); - } - - /** - * Gets the label. - * If the label was set to CINBarcode1D::AUTO_LABEL, the label will display the value from the text parsed. - * - * @return string - */ - public function getLabel() { - $label = $this->label; - if ($this->label === CINBarcode1D::AUTO_LABEL) { - $label = ''; - } - - return $label; - } - - /** - * Returns the maximal size of a barcode. - * - * @param int $w - * @param int $h - * @return int[] - */ - public function getDimension($w, $h) { - $array = str_split($this->text, 1); - $textlength = array_sum($array) + count($array); - - $w += $textlength; - $h += $this->thickness; - return parent::getDimension($w, $h); - } - - /** - * Validates the input. - */ - protected function validate() { - $c = strlen($this->text); - if ($c === 0) { - throw new CINParseException('othercode', 'No data has been entered.'); - } - - // Checking if all chars are allowed - for ($i = 0; $i < $c; $i++) { - if (array_search($this->text[$i], $this->keys) === false) { - throw new CINParseException('othercode', 'The character \'' . $this->text[$i] . '\' is not allowed.'); - } - } - - parent::validate(); - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/CINpostnet.php b/barcode-generator/Generator/CINpostnet.php deleted file mode 100644 index 1a81c7a..0000000 --- a/barcode-generator/Generator/CINpostnet.php +++ /dev/null @@ -1,140 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator -------------------------------------------------------------------- - */ -namespace CodeItNow\BarcodeBundle\Generator; -use CodeItNow\BarcodeBundle\Generator\CINParseException; -use CodeItNow\BarcodeBundle\Generator\CINBarcode1D; - - -class CINpostnet extends CINBarcode1D { - /** - * Constructor. - */ - public function __construct() { - parent::__construct(); - - $this->keys = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9'); - $this->code = array( - '11000', /* 0 */ - '00011', /* 1 */ - '00101', /* 2 */ - '00110', /* 3 */ - '01001', /* 4 */ - '01010', /* 5 */ - '01100', /* 6 */ - '10001', /* 7 */ - '10010', /* 8 */ - '10100' /* 9 */ - ); - - $this->setThickness(9); - } - - /** - * Draws the barcode. - * - * @param resource $im - */ - public function draw($im) { - // Checksum - $checksum = 0; - $c = strlen($this->text); - for ($i = 0; $i < $c; $i++) { - $checksum += intval($this->text[$i]); - } - - $checksum = 10 - ($checksum % 10); - - // Starting Code - $this->drawChar($im, '1'); - - // Code - for ($i = 0; $i < $c; $i++) { - $this->drawChar($im, $this->findCode($this->text[$i])); - } - - // Checksum - $this->drawChar($im, $this->findCode($checksum)); - - // Ending Code - $this->drawChar($im, '1'); - $this->drawText($im, 0, 0, $this->positionX, $this->thickness); - } - - /** - * Returns the maximal size of a barcode. - * - * @param int $w - * @param int $h - * @return int[] - */ - public function getDimension($w, $h) { - $c = strlen($this->text); - $startlength = 3; - $textlength = $c * 5 * 3; - $checksumlength = 5 * 3; - $endlength = 3; - - // We remove the white on the right - $removelength = -1.56; - - $w += $startlength + $textlength + $checksumlength + $endlength + $removelength; - $h += $this->thickness; - return parent::getDimension($w, $h); - } - - /** - * Validates the input. - */ - protected function validate() { - $c = strlen($this->text); - if ($c === 0) { - throw new CINParseException('postnet', 'No data has been entered.'); - } - - // Checking if all chars are allowed - for ($i = 0; $i < $c; $i++) { - if (array_search($this->text[$i], $this->keys) === false) { - throw new CINParseException('postnet', 'The character \'' . $this->text[$i] . '\' is not allowed.'); - } - } - - // Must contain 5, 9 or 11 chars - if ($c !== 5 && $c !== 9 && $c !== 11) { - throw new CINParseException('postnet', 'Must contain 5, 9, or 11 characters.'); - } - - parent::validate(); - } - - /** - * Overloaded method for drawing special barcode. - * - * @param resource $im - * @param string $code - * @param boolean $startBar - */ - protected function drawChar($im, $code, $startBar = true) { - $c = strlen($code); - for ($i = 0; $i < $c; $i++) { - if ($code[$i] === '0') { - $posY = $this->thickness - ($this->thickness / 2.5); - } else { - $posY = 0; - } - - $this->drawFilledRectangle($im, $this->positionX, $posY, $this->positionX + 0.44, $this->thickness - 1, CINBarcode::COLOR_FG); - $this->positionX += 3; - } - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/CINs25.php b/barcode-generator/Generator/CINs25.php deleted file mode 100644 index 170aa1b..0000000 --- a/barcode-generator/Generator/CINs25.php +++ /dev/null @@ -1,172 +0,0 @@ - 1/3 or 1/2 for the big bar - * - *-------------------------------------------------------------------- - * @author Akhtar Khan - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; -use CodeItNow\BarcodeBundle\Generator\CINParseException; -use CodeItNow\BarcodeBundle\Generator\CINBarcode1D; - -class CINs25 extends CINBarcode1D { - private $checksum; - - /** - * Constructor. - */ - public function __construct() { - parent::__construct(); - - $this->keys = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9'); - $this->code = array( - '0000202000', /* 0 */ - '2000000020', /* 1 */ - '0020000020', /* 2 */ - '2020000000', /* 3 */ - '0000200020', /* 4 */ - '2000200000', /* 5 */ - '0020200000', /* 6 */ - '0000002020', /* 7 */ - '2000002000', /* 8 */ - '0020002000' /* 9 */ - ); - - $this->setChecksum(false); - } - - /** - * Sets if we display the checksum. - * - * @param bool $checksum - */ - public function setChecksum($checksum) { - $this->checksum = (bool)$checksum; - } - - /** - * Draws the barcode. - * - * @param resource $im - */ - public function draw($im) { - $temp_text = $this->text; - - // Checksum - if ($this->checksum === true) { - $this->calculateChecksum(); - $temp_text .= $this->keys[$this->checksumValue]; - } - - // Starting Code - $this->drawChar($im, '101000', true); - - // Chars - $c = strlen($temp_text); - for ($i = 0; $i < $c; $i++) { - $this->drawChar($im, $this->findCode($temp_text[$i]), true); - } - - // Ending Code - $this->drawChar($im, '10001', true); - $this->drawText($im, 0, 0, $this->positionX, $this->thickness); - } - - /** - * Returns the maximal size of a barcode. - * - * @param int $w - * @param int $h - * @return int[] - */ - public function getDimension($w, $h) { - $c = strlen($this->text); - $startlength = 8; - $textlength = $c * 14; - $checksumlength = 0; - if ($c % 2 !== 0) { - $checksumlength = 14; - } - - $endlength = 7; - - $w += $startlength + $textlength + $checksumlength + $endlength; - $h += $this->thickness; - return parent::getDimension($w, $h); - } - - /** - * Validates the input. - */ - protected function validate() { - $c = strlen($this->text); - if ($c === 0) { - throw new CINParseException('s25', 'No data has been entered.'); - } - - // Checking if all chars are allowed - for ($i = 0; $i < $c; $i++) { - if (array_search($this->text[$i], $this->keys) === false) { - throw new CINParseException('s25', 'The character \'' . $this->text[$i] . '\' is not allowed.'); - } - } - - // Must be even - if ($c % 2 !== 0 && $this->checksum === false) { - throw new CINParseException('s25', 's25 must contain an even amount of digits if checksum is false.'); - } elseif ($c % 2 === 0 && $this->checksum === true) { - throw new CINParseException('s25', 's25 must contain an odd amount of digits if checksum is true.'); - } - - parent::validate(); - } - - /** - * Overloaded method to calculate checksum. - */ - protected function calculateChecksum() { - // Calculating Checksum - // Consider the right-most digit of the message to be in an "even" position, - // and assign odd/even to each character moving from right to left - // Even Position = 3, Odd Position = 1 - // Multiply it by the number - // Add all of that and do 10-(?mod10) - $even = true; - $this->checksumValue = 0; - $c = strlen($this->text); - for ($i = $c; $i > 0; $i--) { - if ($even === true) { - $multiplier = 3; - $even = false; - } else { - $multiplier = 1; - $even = true; - } - - $this->checksumValue += $this->keys[$this->text[$i - 1]] * $multiplier; - } - $this->checksumValue = (10 - $this->checksumValue % 10) % 10; - } - - /** - * Overloaded method to display the checksum. - */ - protected function processChecksum() { - if ($this->checksumValue === false) { // Calculate the checksum only once - $this->calculateChecksum(); - } - - if ($this->checksumValue !== false) { - return $this->keys[$this->checksumValue]; - } - - return false; - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/CINupca.php b/barcode-generator/Generator/CINupca.php deleted file mode 100644 index 0779ec5..0000000 --- a/barcode-generator/Generator/CINupca.php +++ /dev/null @@ -1,148 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; -use CodeItNow\BarcodeBundle\Generator\CINParseException; -use CodeItNow\BarcodeBundle\Generator\CINBarcode; -use CodeItNow\BarcodeBundle\Generator\CINean13; -use CodeItNow\BarcodeBundle\Generator\CINLabel; - -class CINupca extends CINean13 { - protected $labelRight = null; - - /** - * Constructor. - */ - public function __construct() { - parent::__construct(); - } - - /** - * Draws the barcode. - * - * @param resource $im - */ - public function draw($im) { - // The following code is exactly the same as EAN13. We just add a 0 in front of the code ! - $this->text = '0' . $this->text; // We will remove it at the end... don't worry - - parent::draw($im); - - // We remove the 0 in front, as we said :) - $this->text = substr($this->text, 1); - } - - /** - * Draws the extended bars on the image. - * - * @param resource $im - * @param int $plus - */ - protected function drawExtendedBars($im, $plus) { - $temp_text = $this->text . $this->keys[$this->checksumValue]; - $rememberX = $this->positionX; - $rememberH = $this->thickness; - - // We increase the bars - // First 2 Bars - $this->thickness = $this->thickness + intval($plus / $this->scale); - $this->positionX = 0; - $this->drawSingleBar($im, CINBarcode::COLOR_FG); - $this->positionX += 2; - $this->drawSingleBar($im, CINBarcode::COLOR_FG); - - // Attemping to increase the 2 following bars - $this->positionX += 1; - $temp_value = $this->findCode($temp_text[1]); - $this->drawChar($im, $temp_value, false); - - // Center Guard Bar - $this->positionX += 36; - $this->drawSingleBar($im, CINBarcode::COLOR_FG); - $this->positionX += 2; - $this->drawSingleBar($im, CINBarcode::COLOR_FG); - - // Attemping to increase the 2 last bars - $this->positionX += 37; - $temp_value = $this->findCode($temp_text[12]); - $this->drawChar($im, $temp_value, true); - - // Completly last bars - $this->drawSingleBar($im, CINBarcode::COLOR_FG); - $this->positionX += 2; - $this->drawSingleBar($im, CINBarcode::COLOR_FG); - - $this->positionX = $rememberX; - $this->thickness = $rememberH; - } - - /** - * Adds the default label. - */ - protected function addDefaultLabel() { - if ($this->isDefaultEanLabelEnabled()) { - $this->processChecksum(); - $label = $this->getLabel(); - $font = $this->font; - - $this->labelLeft = new CINLabel(substr($label, 0, 1), $font, CINLabel::POSITION_LEFT, CINLabel::ALIGN_BOTTOM); - $this->labelLeft->setSpacing(4 * $this->scale); - - $this->labelCenter1 = new CINLabel(substr($label, 1, 5), $font, CINLabel::POSITION_BOTTOM, CINLabel::ALIGN_LEFT); - $labelCenter1Dimension = $this->labelCenter1->getDimension(); - $this->labelCenter1->setOffset(($this->scale * 44 - $labelCenter1Dimension[0]) / 2 + $this->scale * 6); - - $this->labelCenter2 = new CINLabel(substr($label, 6, 5), $font, CINLabel::POSITION_BOTTOM, CINLabel::ALIGN_LEFT); - $this->labelCenter2->setOffset(($this->scale * 44 - $labelCenter1Dimension[0]) / 2 + $this->scale * 45); - - $this->labelRight = new CINLabel($this->keys[$this->checksumValue], $font, CINLabel::POSITION_RIGHT, CINLabel::ALIGN_BOTTOM); - $this->labelRight->setSpacing(4 * $this->scale); - - if ($this->alignLabel) { - $labelDimension = $this->labelCenter1->getDimension(); - $this->labelLeft->setOffset($labelDimension[1]); - $this->labelRight->setOffset($labelDimension[1]); - } else { - $labelDimension = $this->labelLeft->getDimension(); - $this->labelLeft->setOffset($labelDimension[1] / 2); - $labelDimension = $this->labelLeft->getDimension(); - $this->labelRight->setOffset($labelDimension[1] / 2); - } - - $this->addLabel($this->labelLeft); - $this->addLabel($this->labelCenter1); - $this->addLabel($this->labelCenter2); - $this->addLabel($this->labelRight); - } - } - - /** - * Check correct length. - */ - protected function checkCorrectLength() { - // If we have 12 chars, just flush the last one without throwing anything - $c = strlen($this->text); - if ($c === 12) { - $this->text = substr($this->text, 0, 11); - } elseif ($c !== 11) { - throw new CINParseException('upca', 'Must contain 11 digits, the 12th digit is automatically added.'); - } - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/CINupce.php b/barcode-generator/Generator/CINupce.php deleted file mode 100644 index 7c2764f..0000000 --- a/barcode-generator/Generator/CINupce.php +++ /dev/null @@ -1,338 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; -use CodeItNow\BarcodeBundle\Generator\CINParseException; -use CodeItNow\BarcodeBundle\Generator\CINBarcode; -use CodeItNow\BarcodeBundle\Generator\CINBarcode1D; -use CodeItNow\BarcodeBundle\Generator\CINLabel; - -class CINupce extends CINBarcode1D { - protected $codeParity = array(); - protected $upce; - protected $labelLeft = null; - protected $labelCenter = null; - protected $labelRight = null; - - /** - * Constructor. - */ - public function __construct() { - parent::__construct(); - - $this->keys = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9'); - - // Odd Parity starting with a space - // Even Parity is the inverse (0=0012) starting with a space - $this->code = array( - '2100', /* 0 */ - '1110', /* 1 */ - '1011', /* 2 */ - '0300', /* 3 */ - '0021', /* 4 */ - '0120', /* 5 */ - '0003', /* 6 */ - '0201', /* 7 */ - '0102', /* 8 */ - '2001' /* 9 */ - ); - - // Parity, 0=Odd, 1=Even for manufacturer code. Depending on 1st System Digit and Checksum - $this->codeParity = array( - array( - array(1, 1, 1, 0, 0, 0), /* 0,0 */ - array(1, 1, 0, 1, 0, 0), /* 0,1 */ - array(1, 1, 0, 0, 1, 0), /* 0,2 */ - array(1, 1, 0, 0, 0, 1), /* 0,3 */ - array(1, 0, 1, 1, 0, 0), /* 0,4 */ - array(1, 0, 0, 1, 1, 0), /* 0,5 */ - array(1, 0, 0, 0, 1, 1), /* 0,6 */ - array(1, 0, 1, 0, 1, 0), /* 0,7 */ - array(1, 0, 1, 0, 0, 1), /* 0,8 */ - array(1, 0, 0, 1, 0, 1) /* 0,9 */ - ), - array( - array(0, 0, 0, 1, 1, 1), /* 0,0 */ - array(0, 0, 1, 0, 1, 1), /* 0,1 */ - array(0, 0, 1, 1, 0, 1), /* 0,2 */ - array(0, 0, 1, 1, 1, 0), /* 0,3 */ - array(0, 1, 0, 0, 1, 1), /* 0,4 */ - array(0, 1, 1, 0, 0, 1), /* 0,5 */ - array(0, 1, 1, 1, 0, 0), /* 0,6 */ - array(0, 1, 0, 1, 0, 1), /* 0,7 */ - array(0, 1, 0, 1, 1, 0), /* 0,8 */ - array(0, 1, 1, 0, 1, 0) /* 0,9 */ - ) - ); - } - - /** - * Draws the barcode. - * - * @param resource $im - */ - public function draw($im) { - $this->calculateChecksum(); - - // Starting Code - $this->drawChar($im, '000', true); - $c = strlen($this->upce); - for ($i = 0; $i < $c; $i++) { - $this->drawChar($im, self::inverse($this->findCode($this->upce[$i]), $this->codeParity[intval($this->text[0])][$this->checksumValue][$i]), false); - } - - // Draw Center Guard Bar - $this->drawChar($im, '00000', false); - - // Draw Right Bar - $this->drawChar($im, '0', true); - $this->text = $this->text[0] . $this->upce; - $this->drawText($im, 0, 0, $this->positionX, $this->thickness); - - if ($this->isDefaultEanLabelEnabled()) { - $dimension = $this->labelCenter->getDimension(); - $this->drawExtendedBars($im, $dimension[1] - 2); - } - } - - /** - * Returns the maximal size of a barcode. - * - * @param int $w - * @param int $h - * @return int[] - */ - public function getDimension($w, $h) { - $startlength = 3; - $centerlength = 5; - $textlength = 6 * 7; - $endlength = 1; - - $w += $startlength + $centerlength + $textlength + $endlength; - $h += $this->thickness; - return parent::getDimension($w, $h); - } - - /** - * Adds the default label. - */ - protected function addDefaultLabel() { - if ($this->isDefaultEanLabelEnabled()) { - $this->processChecksum(); - $font = $this->font; - - $this->labelLeft = new CINLabel(substr($this->text, 0, 1), $font, CINLabel::POSITION_LEFT, CINLabel::ALIGN_BOTTOM); - $labelLeftDimension = $this->labelLeft->getDimension(); - $this->labelLeft->setSpacing(8); - $this->labelLeft->setOffset($labelLeftDimension[1] / 2); - - $this->labelCenter = new CINLabel($this->upce, $font, CINLabel::POSITION_BOTTOM, CINLabel::ALIGN_LEFT); - $labelCenterDimension = $this->labelCenter->getDimension(); - $this->labelCenter->setOffset(($this->scale * 46 - $labelCenterDimension[0]) / 2 + $this->scale * 2); - - $this->labelRight = new CINLabel($this->keys[$this->checksumValue], $font, CINLabel::POSITION_RIGHT, CINLabel::ALIGN_BOTTOM); - $labelRightDimension = $this->labelRight->getDimension(); - $this->labelRight->setSpacing(8); - $this->labelRight->setOffset($labelRightDimension[1] / 2); - - $this->addLabel($this->labelLeft); - $this->addLabel($this->labelCenter); - $this->addLabel($this->labelRight); - } - } - - /** - * Checks if the default ean label is enabled. - * - * @return bool - */ - protected function isDefaultEanLabelEnabled() { - $label = $this->getLabel(); - $font = $this->font; - return $label !== null && $label !== '' && $font !== null && $this->defaultLabel !== null; - } - - /** - * Validates the input. - */ - protected function validate() { - $c = strlen($this->text); - if ($c === 0) { - throw new CINParseException('upce', 'No data has been entered.'); - } - - // Checking if all chars are allowed - for ($i = 0; $i < $c; $i++) { - if (array_search($this->text[$i], $this->keys) === false) { - throw new CINParseException('upce', 'The character \'' . $this->text[$i] . '\' is not allowed.'); - } - } - - // Must contain 11 chars - // Must contain 6 chars (if starting with upce directly) - // First Chars must be 0 or 1 - if ($c !== 11 && $c !== 6) { - throw new CINParseException('upce', 'You must provide a UPC-A (11 characters) or a UPC-E (6 characters).'); - } elseif ($this->text[0] !== '0' && $this->text[0] !== '1' && $c !== 6) { - throw new CINParseException('upce', 'UPC-A must start with 0 or 1 to be converted to UPC-E.'); - } - - // Convert part - $this->upce = ''; - if ($c !== 6) { - // Checking if UPC-A is convertible - $temp1 = substr($this->text, 3, 3); - if ($temp1 === '000' || $temp1 === '100' || $temp1 === '200') { // manufacturer code ends with 100, 200 or 300 - if (substr($this->text, 6, 2) === '00') { // Product must start with 00 - $this->upce = substr($this->text, 1, 2) . substr($this->text, 8, 3) . substr($this->text, 3, 1); - } - } elseif (substr($this->text, 4, 2) === '00') { // manufacturer code ends with 00 - if (substr($this->text, 6, 3) === '000') { // Product must start with 000 - $this->upce = substr($this->text, 1, 3) . substr($this->text, 9, 2) . '3'; - } - } elseif (substr($this->text, 5, 1) === '0') { // manufacturer code ends with 0 - if (substr($this->text, 6, 4) === '0000') { // Product must start with 0000 - $this->upce = substr($this->text, 1, 4) . substr($this->text, 10, 1) . '4'; - } - } else { // No zero leading at manufacturer code - $temp2 = intval(substr($this->text, 10, 1)); - if (substr($this->text, 6, 4) === '0000' && $temp2 >= 5 && $temp2 <= 9) { // Product must start with 0000 and must end by 5, 6, 7, 8 or 9 - $this->upce = substr($this->text, 1, 5) . substr($this->text, 10, 1); - } - } - } else { - $this->upce = $this->text; - } - - if ($this->upce === '') { - throw new CINParseException('upce', 'Your UPC-A can\'t be converted to UPC-E.'); - } - - if ($c === 6) { - $upca = ''; - - // We convert UPC-E to UPC-A to find the checksum - if ($this->text[5] === '0' || $this->text[5] === '1' || $this->text[5] === '2') { - $upca = substr($this->text, 0, 2) . $this->text[5] . '0000' . substr($this->text, 2, 3); - } elseif ($this->text[5] === '3') { - $upca = substr($this->text, 0, 3) . '00000' . substr($this->text, 3, 2); - } elseif ($this->text[5] === '4') { - $upca = substr($this->text, 0, 4) . '00000' . $this->text[4]; - } else { - $upca = substr($this->text, 0, 5) . '0000' . $this->text[5]; - } - - $this->text = '0' . $upca; - } - - parent::validate(); - } - - /** - * Overloaded method to calculate checksum. - */ - protected function calculateChecksum() { - // Calculating Checksum - // Consider the right-most digit of the message to be in an "odd" position, - // and assign odd/even to each character moving from right to left - // Odd Position = 3, Even Position = 1 - // Multiply it by the number - // Add all of that and do 10-(?mod10) - $odd = true; - $this->checksumValue = 0; - $c = strlen($this->text); - for ($i = $c; $i > 0; $i--) { - if ($odd === true) { - $multiplier = 3; - $odd = false; - } else { - $multiplier = 1; - $odd = true; - } - - if (!isset($this->keys[$this->text[$i - 1]])) { - return; - } - - $this->checksumValue += $this->keys[$this->text[$i - 1]] * $multiplier; - } - - $this->checksumValue = (10 - $this->checksumValue % 10) % 10; - } - - /** - * Overloaded method to display the checksum. - */ - protected function processChecksum() { - if ($this->checksumValue === false) { // Calculate the checksum only once - $this->calculateChecksum(); - } - - if ($this->checksumValue !== false) { - return $this->keys[$this->checksumValue]; - } - - return false; - } - - /** - * Draws the extended bars on the image. - * - * @param resource $im - * @param int $plus - */ - protected function drawExtendedBars($im, $plus) { - $rememberX = $this->positionX; - $rememberH = $this->thickness; - - // We increase the bars - $this->thickness = $this->thickness + intval($plus / $this->scale); - $this->positionX = 0; - $this->drawSingleBar($im, CINBarcode::COLOR_FG); - $this->positionX += 2; - $this->drawSingleBar($im, CINBarcode::COLOR_FG); - - // Last Bars - $this->positionX += 46; - $this->drawSingleBar($im, CINBarcode::COLOR_FG); - $this->positionX += 2; - $this->drawSingleBar($im, CINBarcode::COLOR_FG); - - $this->positionX = $rememberX; - $this->thickness = $rememberH; - } - - /** - * Inverses the string when the $inverse parameter is equal to 1. - * - * @param string $text - * @param int $inverse - * @return string - */ - private static function inverse($text, $inverse = 1) { - if ($inverse === 1) { - $text = strrev($text); - } - - return $text; - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/CINupcext2.php b/barcode-generator/Generator/CINupcext2.php deleted file mode 100644 index 12e651e..0000000 --- a/barcode-generator/Generator/CINupcext2.php +++ /dev/null @@ -1,141 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; - -use CodeItNow\BarcodeBundle\Generator\CINParseException; -use CodeItNow\BarcodeBundle\Generator\CINBarcode1D; -use CodeItNow\BarcodeBundle\Generator\CINLabel; - -class CINupcext2 extends CINBarcode1D { - protected $codeParity = array(); - - /** - * Constructor. - */ - public function __construct() { - parent::__construct(); - - $this->keys = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9'); - $this->code = array( - '2100', /* 0 */ - '1110', /* 1 */ - '1011', /* 2 */ - '0300', /* 3 */ - '0021', /* 4 */ - '0120', /* 5 */ - '0003', /* 6 */ - '0201', /* 7 */ - '0102', /* 8 */ - '2001' /* 9 */ - ); - - // Parity, 0=Odd, 1=Even. Depending on ?%4 - $this->codeParity = array( - array(0, 0), /* 0 */ - array(0, 1), /* 1 */ - array(1, 0), /* 2 */ - array(1, 1) /* 3 */ - ); - } - - /** - * Draws the barcode. - * - * @param resource $im - */ - public function draw($im) { - // Starting Code - $this->drawChar($im, '001', true); - - // Code - for ($i = 0; $i < 2; $i++) { - $this->drawChar($im, self::inverse($this->findCode($this->text[$i]), $this->codeParity[intval($this->text) % 4][$i]), false); - if ($i === 0) { - $this->drawChar($im, '00', false); // Inter-char - } - } - - $this->drawText($im, 0, 0, $this->positionX, $this->thickness); - } - - /** - * Returns the maximal size of a barcode. - * - * @param int $w - * @param int $h - * @return int[] - */ - public function getDimension($w, $h) { - $startlength = 4; - $textlength = 2 * 7; - $intercharlength = 2; - - $w += $startlength + $textlength + $intercharlength; - $h += $this->thickness; - return parent::getDimension($w, $h); - } - - /** - * Adds the default label. - */ - protected function addDefaultLabel() { - parent::addDefaultLabel(); - - if ($this->defaultLabel !== null) { - $this->defaultLabel->setPosition(CINLabel::POSITION_TOP); - } - } - - /** - * Validates the input. - */ - protected function validate() { - $c = strlen($this->text); - if ($c === 0) { - throw new CINParseException('upcext2', 'No data has been entered.'); - } - - // Checking if all chars are allowed - for ($i = 0; $i < $c; $i++) { - if (array_search($this->text[$i], $this->keys) === false) { - throw new CINParseException('upcext2', 'The character \'' . $this->text[$i] . '\' is not allowed.'); - } - } - - // Must contain 2 digits - if ($c !== 2) { - throw new CINParseException('upcext2', 'Must contain 2 digits.'); - } - - parent::validate(); - } - - /** - * Inverses the string when the $inverse parameter is equal to 1. - * - * @param string $text - * @param int $inverse - * @return string - */ - private static function inverse($text, $inverse = 1) { - if ($inverse === 1) { - $text = strrev($text); - } - - return $text; - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/CINupcext5.php b/barcode-generator/Generator/CINupcext5.php deleted file mode 100644 index 5aa5ec7..0000000 --- a/barcode-generator/Generator/CINupcext5.php +++ /dev/null @@ -1,204 +0,0 @@ - No suggested Retail Price - * If 99991 -> Book Complimentary (normally free) - * If 90001 to 98999 -> Internal Purpose of Publisher - * If 99990 -> Used by the National Association of College Stores to mark used books - * If 0xxxx -> Price Expressed in British Pounds (xx.xx) - * If 5xxxx -> Price Expressed in U.S. dollars (US$xx.xx) - * - *-------------------------------------------------------------------- - * @author Akhtar Khan - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; - -use CodeItNow\BarcodeBundle\Generator\CINParseException; -use CodeItNow\BarcodeBundle\Generator\CINBarcode1D; -use CodeItNow\BarcodeBundle\Generator\CINLabel; - - -class CINupcext5 extends CINBarcode1D { - protected $codeParity = array(); - - /** - * Constructor. - */ - public function __construct() { - parent::__construct(); - - $this->keys = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9'); - $this->code = array( - '2100', /* 0 */ - '1110', /* 1 */ - '1011', /* 2 */ - '0300', /* 3 */ - '0021', /* 4 */ - '0120', /* 5 */ - '0003', /* 6 */ - '0201', /* 7 */ - '0102', /* 8 */ - '2001' /* 9 */ - ); - - // Parity, 0=Odd, 1=Even. Depending Checksum - $this->codeParity = array( - array(1, 1, 0, 0, 0), /* 0 */ - array(1, 0, 1, 0, 0), /* 1 */ - array(1, 0, 0, 1, 0), /* 2 */ - array(1, 0, 0, 0, 1), /* 3 */ - array(0, 1, 1, 0, 0), /* 4 */ - array(0, 0, 1, 1, 0), /* 5 */ - array(0, 0, 0, 1, 1), /* 6 */ - array(0, 1, 0, 1, 0), /* 7 */ - array(0, 1, 0, 0, 1), /* 8 */ - array(0, 0, 1, 0, 1) /* 9 */ - ); - } - - /** - * Draws the barcode. - * - * @param resource $im - */ - public function draw($im) { - // Checksum - $this->calculateChecksum(); - - // Starting Code - $this->drawChar($im, '001', true); - - // Code - for ($i = 0; $i < 5; $i++) { - $this->drawChar($im, self::inverse($this->findCode($this->text[$i]), $this->codeParity[$this->checksumValue][$i]), false); - if ($i < 4) { - $this->drawChar($im, '00', false); // Inter-char - } - } - - $this->drawText($im, 0, 0, $this->positionX, $this->thickness); - } - - /** - * Returns the maximal size of a barcode. - * - * @param int $w - * @param int $h - * @return int[] - */ - public function getDimension($w, $h) { - $startlength = 4; - $textlength = 5 * 7; - $intercharlength = 2 * 4; - - $w += $startlength + $textlength + $intercharlength; - $h += $this->thickness; - return parent::getDimension($w, $h); - } - - /** - * Adds the default label. - */ - protected function addDefaultLabel() { - parent::addDefaultLabel(); - - if ($this->defaultLabel !== null) { - $this->defaultLabel->setPosition(CINLabel::POSITION_TOP); - } - } - - /** - * Validates the input. - */ - protected function validate() { - $c = strlen($this->text); - if ($c === 0) { - throw new CINParseException('upcext5', 'No data has been entered.'); - } - - // Checking if all chars are allowed - for ($i = 0; $i < $c; $i++) { - if (array_search($this->text[$i], $this->keys) === false) { - throw new CINParseException('upcext5', 'The character \'' . $this->text[$i] . '\' is not allowed.'); - } - } - - // Must contain 5 digits - if ($c !== 5) { - throw new CINParseException('upcext5', 'Must contain 5 digits.'); - } - - parent::validate(); - } - - /** - * Overloaded method to calculate checksum. - */ - protected function calculateChecksum() { - // Calculating Checksum - // Consider the right-most digit of the message to be in an "odd" position, - // and assign odd/even to each character moving from right to left - // Odd Position = 3, Even Position = 9 - // Multiply it by the number - // Add all of that and do ?mod10 - $odd = true; - $this->checksumValue = 0; - $c = strlen($this->text); - for ($i = $c; $i > 0; $i--) { - if ($odd === true) { - $multiplier = 3; - $odd = false; - } else { - $multiplier = 9; - $odd = true; - } - - if (!isset($this->keys[$this->text[$i - 1]])) { - return; - } - - $this->checksumValue += $this->keys[$this->text[$i - 1]] * $multiplier; - } - - $this->checksumValue = $this->checksumValue % 10; - } - - /** - * Overloaded method to display the checksum. - */ - protected function processChecksum() { - if ($this->checksumValue === false) { // Calculate the checksum only once - $this->calculateChecksum(); - } - - if ($this->checksumValue !== false) { - return $this->keys[$this->checksumValue]; - } - - return false; - } - - /** - * Inverses the string when the $inverse parameter is equal to 1. - * - * @param string $text - * @param int $inverse - * @return string - */ - private static function inverse($text, $inverse = 1) { - if ($inverse === 1) { - $text = strrev($text); - } - - return $text; - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/Drawer/CINDraw.php b/barcode-generator/Generator/Drawer/CINDraw.php deleted file mode 100644 index 776f6fa..0000000 --- a/barcode-generator/Generator/Drawer/CINDraw.php +++ /dev/null @@ -1,41 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator\Drawer; - -abstract class CINDraw { - protected $im; - protected $filename; - - /** - * Constructor. - * - * @param resource $im - */ - protected function __construct($im) { - $this->im = $im; - } - - /** - * Sets the filename. - * - * @param string $filename - */ - public function setFilename($filename) { - $this->filename = $filename; - } - - /** - * Method needed to draw the image based on its specification (JPG, GIF, etc.). - */ - abstract public function draw(); -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/Drawer/CINDrawJPG.php b/barcode-generator/Generator/Drawer/CINDrawJPG.php deleted file mode 100644 index e067253..0000000 --- a/barcode-generator/Generator/Drawer/CINDrawJPG.php +++ /dev/null @@ -1,104 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator\Drawer; -use CodeItNow\BarcodeBundle\Generator\Drawer\CINDraw; - -if (!function_exists('file_put_contents')) { - function file_put_contents($filename, $data) { - $f = @fopen($filename, 'w'); - if (!$f) { - return false; - } else { - $bytes = fwrite($f, $data); - fclose($f); - return $bytes; - } - } -} - -class CINDrawJPG extends CINDraw { - private $dpi; - private $quality; - - /** - * Constructor. - * - * @param resource $im - */ - public function __construct($im) { - parent::__construct($im); - } - - /** - * Sets the DPI. - * - * @param int $dpi - */ - public function setDPI($dpi) { - if(is_int($dpi)) { - $this->dpi = max(1, $dpi); - } else { - $this->dpi = null; - } - } - - /** - * Sets the quality of the JPG. - * - * @param int $quality - */ - public function setQuality($quality) { - $this->quality = $quality; - } - - /** - * Draws the JPG on the screen or in a file. - */ - public function draw() { - ob_start(); - imagejpeg($this->im, null, $this->quality); - $bin = ob_get_contents(); - ob_end_clean(); - - $this->setInternalProperties($bin); - - if (empty($this->filename)) { - echo $bin; - } else { - file_put_contents($this->filename, $bin); - } - } - - private function setInternalProperties(&$bin) { - $this->internalSetDPI($bin); - $this->internalSetC($bin); - } - - private function internalSetDPI(&$bin) { - if ($this->dpi !== null) { - $bin = substr_replace($bin, pack("Cnn", 0x01, $this->dpi, $this->dpi), 13, 5); - } - } - - private function internalSetC(&$bin) { - if(strcmp(substr($bin, 0, 4), pack('H*', 'FFD8FFE0')) === 0) { - $offset = 4 + (ord($bin[4]) << 8 | ord($bin[5])); - $firstPart = substr($bin, 0, $offset); - $secondPart = substr($bin, $offset); - $cr = pack('H*', 'FFFE004447656E657261746564207769746820426172636F64652047656E657261746F7220666F722050485020687474703A2F2F7777772E626172636F64657068702E636F6D'); - $bin = $firstPart; - $bin .= $cr; - $bin .= $secondPart; - } - } -} -?> \ No newline at end of file diff --git a/barcode-generator/Generator/Drawer/CINDrawPNG.php b/barcode-generator/Generator/Drawer/CINDrawPNG.php deleted file mode 100644 index 0a56322..0000000 --- a/barcode-generator/Generator/Drawer/CINDrawPNG.php +++ /dev/null @@ -1,205 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator\Drawer; - -use CodeItNow\BarcodeBundle\Generator\Drawer\CINDraw; - -if (!function_exists('file_put_contents')) { - function file_put_contents($filename, $data) { - $f = @fopen($filename, 'w'); - if (!$f) { - return false; - } else { - $bytes = fwrite($f, $data); - fclose($f); - return $bytes; - } - } -} - -class CINDrawPNG extends CINDraw { - private $dpi; - - /** - * Constructor. - * - * @param resource $im - */ - public function __construct($im) { - parent::__construct($im); - } - - /** - * Sets the DPI. - * - * @param int $dpi - */ - public function setDPI($dpi) { - if (is_numeric($dpi)) { - $this->dpi = max(1, $dpi); - } else { - $this->dpi = null; - } - } - - /** - * Draws the PNG on the screen or in a file. - */ - public function draw() { - ob_start(); - imagepng($this->im); - $bin = ob_get_contents(); - ob_end_clean(); - - $this->setInternalProperties($bin); - - if (empty($this->filename)) { - echo $bin; - } else { - file_put_contents($this->filename, $bin); - } - } - - private function setInternalProperties(&$bin) { - // Scan all the ChunkType - if (strcmp(substr($bin, 0, 8), pack('H*', '89504E470D0A1A0A')) === 0) { - $chunks = $this->detectChunks($bin); - - $this->internalSetDPI($bin, $chunks); - $this->internalSetC($bin, $chunks); - } - } - - private function detectChunks($bin) { - $data = substr($bin, 8); - $chunks = array(); - $c = strlen($data); - - $offset = 0; - while ($offset < $c) { - $packed = unpack('Nsize/a4chunk', $data); - $size = $packed['size']; - $chunk = $packed['chunk']; - - $chunks[] = array('offset' => $offset + 8, 'size' => $size, 'chunk' => $chunk); - $jump = $size + 12; - $offset += $jump; - $data = substr($data, $jump); - } - - return $chunks; - } - - private function internalSetDPI(&$bin, &$chunks) { - if ($this->dpi !== null) { - $meters = (int)($this->dpi * 39.37007874); - - $found = -1; - $c = count($chunks); - for($i = 0; $i < $c; $i++) { - // We already have a pHYs - if($chunks[$i]['chunk'] === 'pHYs') { - $found = $i; - break; - } - } - - $data = 'pHYs' . pack('NNC', $meters, $meters, 0x01); - $crc = self::crc($data, 13); - $cr = pack('Na13N', 9, $data, $crc); - - // We didn't have a pHYs - if($found == -1) { - // Don't do anything if we have a bad PNG - if($c >= 2 && $chunks[0]['chunk'] === 'IHDR') { - array_splice($chunks, 1, 0, array(array('offset' => 33, 'size' => 9, 'chunk' => 'pHYs'))); - - // Push the data - for($i = 2; $i < $c; $i++) { - $chunks[$i]['offset'] += 21; - } - - $firstPart = substr($bin, 0, 33); - $secondPart = substr($bin, 33); - $bin = $firstPart; - $bin .= $cr; - $bin .= $secondPart; - } - } else { - $bin = substr_replace($bin, $cr, $chunks[$i]['offset'], 21); - } - } - } - - private function internalSetC(&$bin, &$chunks) { - if (count($chunks) >= 2 && $chunks[0]['chunk'] === 'IHDR') { - $firstPart = substr($bin, 0, 33); - $secondPart = substr($bin, 33); - $cr = pack('H*', '0000004C74455874436F707972696768740047656E657261746564207769746820426172636F64652047656E657261746F7220666F722050485020687474703A2F2F7777772E626172636F64657068702E636F6D597F70B8'); - $bin = $firstPart; - $bin .= $cr; - $bin .= $secondPart; - } - - // Chunks is dirty!! But we are done. - } - - private static $crc_table = array(); - private static $crc_table_computed = false; - - private static function make_crc_table() { - for ($n = 0; $n < 256; $n++) { - $c = $n; - for ($k = 0; $k < 8; $k++) { - if (($c & 1) == 1) { - $c = 0xedb88320 ^ (self::SHR($c, 1)); - } else { - $c = self::SHR($c, 1); - } - } - self::$crc_table[$n] = $c; - } - - self::$crc_table_computed = true; - } - - private static function SHR($x, $n) { - $mask = 0x40000000; - - if ($x < 0) { - $x &= 0x7FFFFFFF; - $mask = $mask >> ($n - 1); - return ($x >> $n) | $mask; - } - - return (int)$x >> (int)$n; - } - - private static function update_crc($crc, $buf, $len) { - $c = $crc; - - if (!self::$crc_table_computed) { - self::make_crc_table(); - } - - for ($n = 0; $n < $len; $n++) { - $c = self::$crc_table[($c ^ ord($buf[$n])) & 0xff] ^ (self::SHR($c, 8)); - } - - return $c; - } - - private static function crc($data, $len) { - return self::update_crc(-1, $data, $len) ^ -1; - } -} -?> diff --git a/barcode-generator/Generator/JoinDraw.php b/barcode-generator/Generator/JoinDraw.php deleted file mode 100644 index 6e7f9db..0000000 --- a/barcode-generator/Generator/JoinDraw.php +++ /dev/null @@ -1,197 +0,0 @@ - - * @link http://www.codeitnow.in - * @package https://github.com/codeitnowin/barcode-generator - */ -namespace CodeItNow\BarcodeBundle\Generator; - -class JoinDraw { - const ALIGN_RIGHT = 0; - const ALIGN_BOTTOM = 0; - const ALIGN_LEFT = 1; - const ALIGN_TOP = 1; - const ALIGN_CENTER = 2; - - const POSITION_RIGHT = 0; - const POSITION_BOTTOM = 1; - const POSITION_LEFT = 2; - const POSITION_TOP = 3; - - private $image1; - private $image2; - private $alignement; - private $position; - private $space; - private $im; - - /** - * Construct the JoinDrawing Object. - * - $image1 and $image2 have to be CINDrawing object or image object. - * - $space is the space between the two graphics in pixel. - * - $position is the position of the $image2 depending the $image1. - * - $alignment is the alignment of the $image2 if this one is smaller than $image1; - * if $image2 is bigger than $image1, the $image1 will be positionned on the opposite side specified. - * - * @param mixed $image1 - * @param mixed $image2 - * @param CINColor $background - * @param int $space - * @param int $position - * @param int $alignment - */ - public function __construct($image1, $image2, $background, $space = 10, $position = self::POSITION_RIGHT, $alignment = self::ALIGN_TOP) { - if ($image1 instanceof CINDrawing) { - $this->image1 = $image1->get_im(); - } else { - $this->image1 = $image1; - } - if ($image2 instanceof CINDrawing) { - $this->image2 = $image2->get_im(); - } else { - $this->image2 = $image2; - } - - $this->background = $background; - $this->space = (int)$space; - $this->position = (int)$position; - $this->alignment = (int)$alignment; - - $this->createIm(); - } - - /** - * Destroys the image. - */ - public function __destruct() { - imagedestroy($this->im); - } - - /** - * Finds the position where the barcode should be aligned. - * - * @param int $size1 - * @param int $size2 - * @param int $ailgnment - * @return int - */ - private function findPosition($size1, $size2, $alignment) { - $rsize1 = max($size1, $size2); - $rsize2 = min($size1, $size2); - - if ($alignment === self::ALIGN_LEFT) { // Or TOP - return 0; - } elseif ($alignment === self::ALIGN_CENTER) { - return $rsize1 / 2 - $rsize2 / 2; - } else { // RIGHT or TOP - return $rsize1 - $rsize2; - } - } - - /** - * Change the alignments. - * - * @param int $alignment - * @return int - */ - private function changeAlignment($alignment) { - if ($alignment === 0) { - return 1; - } elseif ($alignment === 1) { - return 0; - } else { - return 2; - } - } - - /** - * Creates the image. - */ - private function createIm() { - $w1 = imagesx($this->image1); - $w2 = imagesx($this->image2); - $h1 = imagesy($this->image1); - $h2 = imagesy($this->image2); - - if ($this->position === self::POSITION_LEFT || $this->position === self::POSITION_RIGHT) { - $w = $w1 + $w2 + $this->space; - $h = max($h1, $h2); - } else { - $w = max($w1, $w2); - $h = $h1 + $h2 + $this->space; - } - - $this->im = imagecreatetruecolor($w, $h); - imagefill($this->im, 0, 0, $this->background->allocate($this->im)); - - // We start defining position of images - if ($this->position === self::POSITION_TOP) { - if ($w1 > $w2) { - $posX1 = 0; - $posX2 = $this->findPosition($w1, $w2, $this->alignment); - } else { - $a = $this->changeAlignment($this->alignment); - $posX1 = $this->findPosition($w1, $w2, $a); - $posX2 = 0; - } - - $posY2 = 0; - $posY1 = $h2 + $this->space; - } elseif ($this->position === self::POSITION_LEFT) { - if ($w1 > $w2) { - $posY1 = 0; - $posY2 = $this->findPosition($h1, $h2, $this->alignment); - } else { - $a = $this->changeAlignment($this->alignment); - $posY2 = 0; - $posY1 = $this->findPosition($h1, $h2, $a); - } - - $posX2 = 0; - $posX1 = $w2 + $this->space; - } elseif ($this->position === self::POSITION_BOTTOM) { - if ($w1 > $w2) { - $posX2 = $this->findPosition($w1, $w2, $this->alignment); - $posX1 = 0; - } else { - $a = $this->changeAlignment($this->alignment); - $posX2 = 0; - $posX1 = $this->findPosition($w1, $w2, $a); - } - - $posY1 = 0; - $posY2 = $h1 + $this->space; - } else { // defaults to RIGHT - if ($w1 > $w2) { - $posY2 = $this->findPosition($h1, $h2, $this->alignment); - $posY1 = 0; - } else { - $a = $this->changeAlignment($this->alignment); - $posY2 = 0; - $posY1 = $this->findPosition($h1, $h2, $a); - } - - $posX1 = 0; - $posX2 = $w1 + $this->space; - } - - imagecopy($this->im, $this->image1, $posX1, $posY1, 0, 0, $w1, $h1); - imagecopy($this->im, $this->image2, $posX2, $posY2, 0, 0, $w2, $h2); - } - - /** - * Returns the new $im created. - * - * @return resource - */ - public function get_im() { - return $this->im; - } -} -?> \ No newline at end of file diff --git a/barcode-generator/README.md b/barcode-generator/README.md deleted file mode 100644 index 75c01f0..0000000 --- a/barcode-generator/README.md +++ /dev/null @@ -1,136 +0,0 @@ -# CodeItNow Barcode & QrCode Generator -Barcode and Qr Code generator library by [CodeItNow](http://www.codeitnow.in). You can use it with Custom PHP application or any PHP Framework such as Laravel, Symfony, Cakephp, Yii, Codeigneter etc. - -## Requirements -You must have php >= 5.3.2 installed and GD extension enabled. - -## Installation - -CodeItNow Barcode & Qr Code Generator can install by composer. - -``` -composer require codeitnowin/barcode -``` - -## Uses - -Barcode and Qr Code Generator library give output as base64 encoded png image. - -### Example - QrCode: -```php -use CodeItNow\BarcodeBundle\Utils\QrCode; - -$qrCode = new QrCode(); -$qrCode - ->setText('QR code by codeitnow.in') - ->setSize(300) - ->setPadding(10) - ->setErrorCorrection('high') - ->setForegroundColor(array('r' => 0, 'g' => 0, 'b' => 0, 'a' => 0)) - ->setBackgroundColor(array('r' => 255, 'g' => 255, 'b' => 255, 'a' => 0)) - ->setLabel('Scan Qr Code') - ->setLabelFontSize(16) - ->setImageType(QrCode::IMAGE_TYPE_PNG) -; -echo ''; -``` -### Sample Image - QrCode: -![CodeItNow QrCode Generator](/CodeItNow/BarcodeBundle/Resources/image/sample_qrcode.png?raw=true) - -### Example - Code128: -```php -use CodeItNow\BarcodeBundle\Utils\BarcodeGenerator; - -$barcode = new BarcodeGenerator(); -$barcode->setText("0123456789"); -$barcode->setType(BarcodeGenerator::Code128); -$barcode->setScale(2); -$barcode->setThickness(25); -$barcode->setFontSize(10); -$code = $barcode->generate(); - -echo ''; -``` - -### Example - Codabar: -```php -$barcode->setText("A0123456789C"); -$barcode->setType(BarcodeGenerator::Codabar); -``` - -### Example - Code11: -```php -$barcode->setText("0123456789"); -$barcode->setType(BarcodeGenerator::Code11); -``` - -### Example - Code39: -```php -$barcode->setText("0123456789"); -$barcode->setType(BarcodeGenerator::Code39); -``` - -### Example - Code39-Extended: -```php -$barcode->setText("0123456789"); -$barcode->setType(BarcodeGenerator::Code39Extended); -``` - -### Example - Ean128: -```php -$barcode->setText("00123456789012345675"); -$barcode->setType(BarcodeGenerator::Ean128); -``` - -### Example - Gs1128: -```php -$barcode->setText("00123456789012345675"); -$barcode->setType(BarcodeGenerator::Gs1128); -``` -### Example - Gs1128 (with no length limit and unknown identifier): -```php -$barcode->setText("4157707266014651802001012603068039000000006377069620171215"); -$barcode->setType(BarcodeGenerator::Gs1128); -$barcode->setNoLengthLimit(true); -$barcode->setAllowsUnknownIdentifier(true); -``` - -### Example - I25: -```php -$barcode->setText("00123456789012345675"); -$barcode->setType(BarcodeGenerator::I25); -``` - -### Example - Isbn: -```php -$barcode->setText("0012345678901"); -$barcode->setType(BarcodeGenerator::Isbn); -``` - -### Example - Msi: -```php -$barcode->setText("0012345678901"); -$barcode->setType(BarcodeGenerator::Msi); -``` - -### Example - Postnet: -```php -$barcode->setText("01234567890"); -$barcode->setType(BarcodeGenerator::Postnet); -``` - -### Example - S25: -```php -$barcode->setText("012345678901"); -$barcode->setType(BarcodeGenerator::S25); -``` - -### Example - Upca: -```php -$barcode->setText("012345678901"); -$barcode->setType(BarcodeGenerator::Upca); -``` - -### Example - Upca: -```php -$barcode->setText("012345"); -$barcode->setType(BarcodeGenerator::Upce); -``` \ No newline at end of file diff --git a/barcode-generator/Resources/data/qrv10_0.dat b/barcode-generator/Resources/data/qrv10_0.dat deleted file mode 100644 index 8c073a8..0000000 Binary files a/barcode-generator/Resources/data/qrv10_0.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv10_1.dat b/barcode-generator/Resources/data/qrv10_1.dat deleted file mode 100644 index 9a3cf4d..0000000 Binary files a/barcode-generator/Resources/data/qrv10_1.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv10_2.dat b/barcode-generator/Resources/data/qrv10_2.dat deleted file mode 100644 index 4a57e8a..0000000 Binary files a/barcode-generator/Resources/data/qrv10_2.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv10_3.dat b/barcode-generator/Resources/data/qrv10_3.dat deleted file mode 100644 index e2de0ec..0000000 Binary files a/barcode-generator/Resources/data/qrv10_3.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv11_0.dat b/barcode-generator/Resources/data/qrv11_0.dat deleted file mode 100644 index 18853fe..0000000 Binary files a/barcode-generator/Resources/data/qrv11_0.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv11_1.dat b/barcode-generator/Resources/data/qrv11_1.dat deleted file mode 100644 index 365deb3..0000000 Binary files a/barcode-generator/Resources/data/qrv11_1.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv11_2.dat b/barcode-generator/Resources/data/qrv11_2.dat deleted file mode 100644 index 0357a64..0000000 Binary files a/barcode-generator/Resources/data/qrv11_2.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv11_3.dat b/barcode-generator/Resources/data/qrv11_3.dat deleted file mode 100644 index bb8621b..0000000 Binary files a/barcode-generator/Resources/data/qrv11_3.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv12_0.dat b/barcode-generator/Resources/data/qrv12_0.dat deleted file mode 100644 index 636f201..0000000 Binary files a/barcode-generator/Resources/data/qrv12_0.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv12_1.dat b/barcode-generator/Resources/data/qrv12_1.dat deleted file mode 100644 index c679648..0000000 Binary files a/barcode-generator/Resources/data/qrv12_1.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv12_2.dat b/barcode-generator/Resources/data/qrv12_2.dat deleted file mode 100644 index 4544e9d..0000000 Binary files a/barcode-generator/Resources/data/qrv12_2.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv12_3.dat b/barcode-generator/Resources/data/qrv12_3.dat deleted file mode 100644 index 9adba36..0000000 Binary files a/barcode-generator/Resources/data/qrv12_3.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv13_0.dat b/barcode-generator/Resources/data/qrv13_0.dat deleted file mode 100644 index 73d6117..0000000 Binary files a/barcode-generator/Resources/data/qrv13_0.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv13_1.dat b/barcode-generator/Resources/data/qrv13_1.dat deleted file mode 100644 index 9ae40dd..0000000 Binary files a/barcode-generator/Resources/data/qrv13_1.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv13_2.dat b/barcode-generator/Resources/data/qrv13_2.dat deleted file mode 100644 index c4d9997..0000000 Binary files a/barcode-generator/Resources/data/qrv13_2.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv13_3.dat b/barcode-generator/Resources/data/qrv13_3.dat deleted file mode 100644 index 2f33392..0000000 Binary files a/barcode-generator/Resources/data/qrv13_3.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv14_0.dat b/barcode-generator/Resources/data/qrv14_0.dat deleted file mode 100644 index 956dae4..0000000 Binary files a/barcode-generator/Resources/data/qrv14_0.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv14_1.dat b/barcode-generator/Resources/data/qrv14_1.dat deleted file mode 100644 index 5dd0e3e..0000000 Binary files a/barcode-generator/Resources/data/qrv14_1.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv14_2.dat b/barcode-generator/Resources/data/qrv14_2.dat deleted file mode 100644 index 466b94d..0000000 Binary files a/barcode-generator/Resources/data/qrv14_2.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv14_3.dat b/barcode-generator/Resources/data/qrv14_3.dat deleted file mode 100644 index cdd2b21..0000000 Binary files a/barcode-generator/Resources/data/qrv14_3.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv15_0.dat b/barcode-generator/Resources/data/qrv15_0.dat deleted file mode 100644 index fcbb644..0000000 Binary files a/barcode-generator/Resources/data/qrv15_0.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv15_1.dat b/barcode-generator/Resources/data/qrv15_1.dat deleted file mode 100644 index 59f7ed1..0000000 Binary files a/barcode-generator/Resources/data/qrv15_1.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv15_2.dat b/barcode-generator/Resources/data/qrv15_2.dat deleted file mode 100644 index 3b86117..0000000 Binary files a/barcode-generator/Resources/data/qrv15_2.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv15_3.dat b/barcode-generator/Resources/data/qrv15_3.dat deleted file mode 100644 index 4e9aa0e..0000000 Binary files a/barcode-generator/Resources/data/qrv15_3.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv16_0.dat b/barcode-generator/Resources/data/qrv16_0.dat deleted file mode 100644 index d835c66..0000000 Binary files a/barcode-generator/Resources/data/qrv16_0.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv16_1.dat b/barcode-generator/Resources/data/qrv16_1.dat deleted file mode 100644 index ab1be3b..0000000 Binary files a/barcode-generator/Resources/data/qrv16_1.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv16_2.dat b/barcode-generator/Resources/data/qrv16_2.dat deleted file mode 100644 index e34b2e3..0000000 Binary files a/barcode-generator/Resources/data/qrv16_2.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv16_3.dat b/barcode-generator/Resources/data/qrv16_3.dat deleted file mode 100644 index a91c7f7..0000000 Binary files a/barcode-generator/Resources/data/qrv16_3.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv17_0.dat b/barcode-generator/Resources/data/qrv17_0.dat deleted file mode 100644 index 48fd276..0000000 Binary files a/barcode-generator/Resources/data/qrv17_0.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv17_1.dat b/barcode-generator/Resources/data/qrv17_1.dat deleted file mode 100644 index 33f5411..0000000 Binary files a/barcode-generator/Resources/data/qrv17_1.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv17_2.dat b/barcode-generator/Resources/data/qrv17_2.dat deleted file mode 100644 index 0c3b80f..0000000 Binary files a/barcode-generator/Resources/data/qrv17_2.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv17_3.dat b/barcode-generator/Resources/data/qrv17_3.dat deleted file mode 100644 index c386c17..0000000 Binary files a/barcode-generator/Resources/data/qrv17_3.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv18_0.dat b/barcode-generator/Resources/data/qrv18_0.dat deleted file mode 100644 index f499e0e..0000000 Binary files a/barcode-generator/Resources/data/qrv18_0.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv18_1.dat b/barcode-generator/Resources/data/qrv18_1.dat deleted file mode 100644 index 8272c41..0000000 Binary files a/barcode-generator/Resources/data/qrv18_1.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv18_2.dat b/barcode-generator/Resources/data/qrv18_2.dat deleted file mode 100644 index 0074b18..0000000 Binary files a/barcode-generator/Resources/data/qrv18_2.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv18_3.dat b/barcode-generator/Resources/data/qrv18_3.dat deleted file mode 100644 index b8eaec6..0000000 Binary files a/barcode-generator/Resources/data/qrv18_3.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv19_0.dat b/barcode-generator/Resources/data/qrv19_0.dat deleted file mode 100644 index 28f6107..0000000 Binary files a/barcode-generator/Resources/data/qrv19_0.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv19_1.dat b/barcode-generator/Resources/data/qrv19_1.dat deleted file mode 100644 index 98af58b..0000000 Binary files a/barcode-generator/Resources/data/qrv19_1.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv19_2.dat b/barcode-generator/Resources/data/qrv19_2.dat deleted file mode 100644 index 60f41f2..0000000 Binary files a/barcode-generator/Resources/data/qrv19_2.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv19_3.dat b/barcode-generator/Resources/data/qrv19_3.dat deleted file mode 100644 index 7b98e51..0000000 Binary files a/barcode-generator/Resources/data/qrv19_3.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv1_0.dat b/barcode-generator/Resources/data/qrv1_0.dat deleted file mode 100644 index b941d48..0000000 Binary files a/barcode-generator/Resources/data/qrv1_0.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv1_1.dat b/barcode-generator/Resources/data/qrv1_1.dat deleted file mode 100644 index 11df757..0000000 Binary files a/barcode-generator/Resources/data/qrv1_1.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv1_2.dat b/barcode-generator/Resources/data/qrv1_2.dat deleted file mode 100644 index 851c3fa..0000000 Binary files a/barcode-generator/Resources/data/qrv1_2.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv1_3.dat b/barcode-generator/Resources/data/qrv1_3.dat deleted file mode 100644 index 1f300f5..0000000 Binary files a/barcode-generator/Resources/data/qrv1_3.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv20_0.dat b/barcode-generator/Resources/data/qrv20_0.dat deleted file mode 100644 index 12963c2..0000000 Binary files a/barcode-generator/Resources/data/qrv20_0.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv20_1.dat b/barcode-generator/Resources/data/qrv20_1.dat deleted file mode 100644 index 99d8afa..0000000 Binary files a/barcode-generator/Resources/data/qrv20_1.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv20_2.dat b/barcode-generator/Resources/data/qrv20_2.dat deleted file mode 100644 index e6074ea..0000000 Binary files a/barcode-generator/Resources/data/qrv20_2.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv20_3.dat b/barcode-generator/Resources/data/qrv20_3.dat deleted file mode 100644 index 60acb51..0000000 Binary files a/barcode-generator/Resources/data/qrv20_3.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv21_0.dat b/barcode-generator/Resources/data/qrv21_0.dat deleted file mode 100644 index 487b8f2..0000000 Binary files a/barcode-generator/Resources/data/qrv21_0.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv21_1.dat b/barcode-generator/Resources/data/qrv21_1.dat deleted file mode 100644 index 54003fc..0000000 Binary files a/barcode-generator/Resources/data/qrv21_1.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv21_2.dat b/barcode-generator/Resources/data/qrv21_2.dat deleted file mode 100644 index 3300331..0000000 Binary files a/barcode-generator/Resources/data/qrv21_2.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv21_3.dat b/barcode-generator/Resources/data/qrv21_3.dat deleted file mode 100644 index fa34452..0000000 Binary files a/barcode-generator/Resources/data/qrv21_3.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv22_0.dat b/barcode-generator/Resources/data/qrv22_0.dat deleted file mode 100644 index 444981c..0000000 Binary files a/barcode-generator/Resources/data/qrv22_0.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv22_1.dat b/barcode-generator/Resources/data/qrv22_1.dat deleted file mode 100644 index 690ff63..0000000 --- a/barcode-generator/Resources/data/qrv22_1.dat +++ /dev/null @@ -1,209 +0,0 @@ -hghghghghghghghghghghghgfefefefefefefefefefefefedcdcdcdcdcdcdcdcbabababababababa_`_`_`_`_`_`_`_`]]]]]]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIGHGHGGGGGHGHGHGHFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:9:9:9:987878787878787878765656565656565656565654343434343434343434343432121212121212121/0/0/////0/0/0/0.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!         hghghghghghghghghghghghgfefefefefefefefefefefefedcdcdcdcdcdcdcdcbabababababababa_`_`_`_`_`_`_`_`^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIGGHGHGHGGHGHGHGHFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:987878787878787878787876565656565656565656565654343434343434343432121212121212121212121//0/0/0//0/0/0/0.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!           hghghghghghghghghghghghgfefefefefefefefefefefefedcdcdcdcdcdcdcdcbabababababababa_`_______`_`_`_`^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGGHGGGGGGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:9:9:987878787878787878787878765656565656565656565656543434343434343432121212121212121212121210/0/0/0//0//////.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!            hghghghghghghghghghghghgfefefefefefefefedcdcdcdcdcdcdcdcdcdcdcdcbabababababababa`_`_`_`__`_`_`_`^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:9:9:9:987878787878787878787878765656565656565656565656543434343434343432121212121212121210/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!            hghghghghghghghghghghghgfefefefefefefefedcdcdcdcdcdcdcdcbabababababababababababa`_`_`_`_______`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIHGGGGGGHHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:9:9:9:9878787878787878787878787656565656565656565656565434343434343434321212121212121210//////00/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!            hghghghghghghghghghghghgfefefefefefefefedcdcdcdcdcdcdcdcbabababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIGHGHGHGHHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:9:9:9:987878787878787878787878765656565656565656565656543434343434343432121212121212121/0/0/0/00/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)('('('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!            hghghghghghghghgfefefefefefefefefefefefedcdcdcdcdcdcdcdcbabababababababa_____`_``_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIGHGHGHGHGGGGGHGHHGHGHGGGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCBABABABABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:9:9:9:987878787878787878787878765656565656565656565656543434343434343432121212121212121/0/0/0/0/////0/00/0/0///.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!            hghghghghghghghgfefefefefefefefefefefefedcdcdcdcdcdcdcdcbabababababababa_`_`_`_``_`_`___`_`_`_`_^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIGHGHGHGHGHGHGHGHGGHGHGHGFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:9:9:9:987878787878787878787878765656565656565656565656543434343434343432121212121212121/0/0/0/0/0/0/0/0//0/0/0/.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!            hghghghghghghghgfefefefefefefefefefefefedcdcdcdcdcdcdcdcbabababababababa_`_`_`_`___`_`_``_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIGHGHGHGHGHGHGHGHHGFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:9:9:9:987878787878787878787878765656565656565656543434343434343434343432121212121212121/0/0/0/0/0/0/0/00/.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!                        - - - - - - - - - - - -             - - - - - - - - - - - -             - - - - - - - - - - - -             - - - - - - - - -             - - - - - - - - - - -          - - - - - - - - - - - -            - - - - - - - - - - - -             - - - - - - - - - - - -             - - - - - - - - - - - - hhggffeeDDCCBBAA 99::;;<<]]^^__``FFEEDDCC""##$$%%PPQQRRSSVUUTTSSR-,,++**)(())**++LLMMNNOOaa``__^^==<<;;:: 00112233TTUUVVWWYYXXWWVV554433228899::;;\\]]^^__QQPPOONN--,,++** @@AABBCCddeeffggIIHHGGFF%%$$##""$$%%&&''HHIIJJKKee__^^]]776655// ))**++,,WWXXYYZZONNMMLKJ&%%$$##"(())**++LLMMNNOOaa``__^^==<<;;:: 00112233TTUUVVWWYYXXWWVV554433228899::;;\\]]^^__QQPPOONN--,,++** @@AABBCCddeeffggIIHHGGFF%%$$##""$$%%&&''HHIIJJKKee__^^]]776655// ))**++,,WWXXYYZZONNMMLKJ&%%$$##"(())**++LLMMNNOOaa``__^^==<<;;:: 00112233TTUUVVWWYYXXWWVV554433228899::;;\\]]^^__QQPPOONN--,,++** @@AABBCCddeeffggIIHHGGFF%%$$##""$$%%&&''HHIIJJKKee__^^]]776655// ))**++,,WWXXYYZZONNMMLKJ&%%$$##"ddccbbaa@@??>>====>>??@@aabbccddBBAA@@??&&''(())TTUUVVWWRQQPPOON)((''&&% - - ,,--..//PPQQRRSS]]\\[[ZZ9988776644556677XXYYZZ[[UUTTSSRR1100//.. - -<<==>>??``aabbccMMLLKKJJ))((''&& !!""##DDEEFFGGhhhhggffEEDDCCBB!! (())**++LLMMNNOO\\[[ZZYY..--,,++--..//55[[\\]]^^IHGGFFEE"!!  - - ,,--..//PPQQRRSS]]\\[[ZZ9988776644556677XXYYZZ[[UUTTSSRR1100//.. - -<<==>>??``aabbccMMLLKKJJ))((''&& !!""##DDEEFFGGhhhhggffEEDDCCBB!! (())**++LLMMNNOO\\[[ZZYY..--,,++--..//55[[\\]]^^IHGGFFEE"!!  - - ,,--..//PPQQRRSS]]\\[[ZZ9988776644556677XXYYZZ[[UUTTSSRR1100//.. - -<<==>>??``aabbccMMLLKKJJ))((''&& !!""##DDEEFFGGhhhhggffEEDDCCBB!! (())**++LLMMNNOO\\[[ZZYY..--,,++--..//55[[\\]]^^IHGGFFEE"!! ``__^^]]<<;;::99 AABBCCDDeeffgghh>>==<<;; **++,,--XXYYZZ[[NMMLKJIH%$$##""! 00112233TTUUVVWWYYXXWWVV554433228899::;;\\]]^^__QQPPOONN--,,++** @@AABBCCddeeffggIIHHGGFF%%$$##""$$%%&&''HHIIJJKKeeddccbbAA@@??>> - - ,,--..//PPQQRRSSXXWWVVUU**))(('' - - 66778899__eeffggDDCCBBAA 00112233TTUUVVWWYYXXWWVV554433228899::;;\\]]^^__QQPPOONN--,,++** @@AABBCCddeeffggIIHHGGFF%%$$##""$$%%&&''HHIIJJKKeeddccbbAA@@??>> - - ,,--..//PPQQRRSSXXWWVVUU**))(('' - - 66778899__eeffggDDCCBBAA 00112233TTUUVVWWYYXXWWVV554433228899::;;\\]]^^__QQPPOONN--,,++** @@AABBCCddeeffggIIHHGGFF%%$$##""$$%%&&''HHIIJJKKeeddccbbAA@@??>> - - ,,--..//PPQQRRSSXXWWVVUU**))(('' - - 66778899__eeffggDDCCBBAA\\[[ZZYY88776655!!""##$$EEFFGGHHhhggffee::998877 - - ..//5566\\]]^^__GGFFEEDD! 44556677XXYYZZ[[UUTTSSRR1100//.. - -<<==>>??``aabbccMMLLKKJJ))((''&& !!""##DDEEFFGGhhhhggffEEDDCCBB!! (())**++LLMMNNOOaa``__^^==<<;;:: 00112233TTUUVVWWTTSSRRQQ&&%%$$## ::;;<<==hhhhggff@@??>>==44556677XXYYZZ[[UUTTSSRR1100//.. - -<<==>>??``aabbccMMLLKKJJ))((''&& !!""##DDEEFFGGhhhhggffEEDDCCBB!! (())**++LLMMNNOOaa``__^^==<<;;:: 00112233TTUUVVWWTTSSRRQQ&&%%$$## ::;;<<==hhhhggff@@??>>==44556677XXYYZZ[[UUTTSSRR1100//.. - -<<==>>??``aabbccMMLLKKJJ))((''&& !!""##DDEEFFGGhhhhggffEEDDCCBB!! (())**++LLMMNNOOaa``__^^==<<;;:: 00112233TTUUVVWWTTSSRRQQ&&%%$$## ::;;<<==hhhhggff@@??>>== - - XXWWVVUU44332211 %%&&''((IIJJKKLL__^^]]\\6655//.. - - 778899::eeffgghhCCBBAA@@8899::;;\\]]^^__QQPPOONN--,,++** @@AABBCCddeeffggIIHHGGFF%%$$##""$$%%&&''HHIIJJKKeeddccbbAA@@??>> - - ,,--..//PPQQRRSS]]\\[[ZZ9988776644556677XXYYZZ[[PPOONNMM""!! >>??@@AAeedcba`_<<;;::998899::;;\\]]^^__QQPPOONN--,,++** @@AABBCCddeeffggIIHHGGFF%%$$##""$$%%&&''HHIIJJKKeeddccbbAA@@??>> - - ,,--..//PPQQRRSS]]\\[[ZZ9988776644556677XXYYZZ[[PPOONNMM""!! >>??@@AAeedcba`_<<;;::998899::;;\\]]^^__QQPPOONN--,,++** @@AABBCCddeeffggIIHHGGFF%%$$##""$$%%&&''HHIIJJKKeeddccbbAA@@??>> - - ,,--..//PPQQRRSS]]\\[[ZZ9988776644556677XXYYZZ[[PPOONNMM""!! >>??@@AAeedcba`_<<;;::99 TTSSRRQQ00//..-- - - ))**++,,MMNNOOPP[[ZZYYXX--,,++** ;;<<==>>hhggffee??>>==<<<<==>>??``aabbccMMLLKKJJ))((''&& !!""##DDEEFFGGhhhhggffEEDDCCBB!! (())**++LLMMNNOOaa``__^^==<<;;:: 00112233TTUUVVWWYYXXWWVV554433228899::;;\\]]^^__GGFFEEDDBBCCDDEE_^^]]\\[88776655 <<==>>??``aabbccMMLLKKJJ))((''&& !!""##DDEEFFGGhhhhggffEEDDCCBB!! (())**++LLMMNNOOaa``__^^==<<;;:: 00112233TTUUVVWWYYXXWWVV554433228899::;;\\]]^^__GGFFEEDDBBCCDDEE_^^]]\\[88776655 <<==>>??``aabbccMMLLKKJJ))((''&& !!""##DDEEFFGGhhhhggffEEDDCCBB!! (())**++LLMMNNOOaa``__^^==<<;;:: 00112233TTUUVVWWYYXXWWVV554433228899::;;\\]]^^__GGFFEEDDBBCCDDEE_^^]]\\[88776655 PPOONNMM,,++**)) - - --..//00QQRRSSTTWWVVUUTT))((''&&??@@AABBdcba`__^;;::9988@@AABBCCddeeffggIIHHGGFF%%$$##""$$%%&&''HHIIJJKKeeddccbbAA@@??>> - - ,,--..//PPQQRRSS]]\\[[ZZ9988776644556677XXYYZZ[[UUTTSSRR1100//.. - -<<==>>??``aabbccCCBBAA@@ FFGGMMNN[ZZYYXXW43210//. - - @@AABBCCddeeffggIIHHGGFF%%$$##""$$%%&&''HHIIJJKKeeddccbbAA@@??>> - - ,,--..//PPQQRRSS]]\\[[ZZ9988776644556677XXYYZZ[[UUTTSSRR1100//.. - -<<==>>??``aabbccCCBBAA@@ FFGGMMNN[ZZYYXXW43210//. - - @@AABBCCddeeffggIIHHGGFF%%$$##""$$%%&&''HHIIJJKKeeddccbbAA@@??>> - - ,,--..//PPQQRRSS]]\\[[ZZ9988776644556677XXYYZZ[[UUTTSSRR1100//.. - -<<==>>??``aabbccCCBBAA@@ FFGGMMNN[ZZYYXXW43210//. - - LLKKJJII((''&&%% 11223344UUVVWWXXSSRRQQPP%%$$##""CCDDEEFF^]]\\[[Z77665543 !!""##DDEEFFGGhhhhggffEEDDCCBB!! (())**++LLMMNNOOaa``__^^==<<;;:: 00112233TTUUVVWWYYXXWWVV554433228899::;;\\]]^^__QQPPOONN--,,++** @@AABBCCddeeffgg??>>==<<!!""##$$OOPPQQRRWVVUUTTS.--,,++* !!""##DDEEFFGGhhhhggffEEDDCCBB!! (())**++LLMMNNOOaa``__^^==<<;;:: 00112233TTUUVVWWYYXXWWVV554433228899::;;\\]]^^__QQPPOONN--,,++** @@AABBCCddeeffgg??>>==<<!!""##$$OOPPQQRRWVVUUTTS.--,,++* !!""##DDEEFFGGhhhhggffEEDDCCBB!! (())**++LLMMNNOOaa``__^^==<<;;:: 00112233TTUUVVWWYYXXWWVV554433228899::;;\\]]^^__QQPPOONN--,,++** @@AABBCCddeeffgg??>>==<<!!""##$$OOPPQQRRWVVUUTTS.--,,++*HHGGFFEE$$##""!!55667788YYZZ[[\\OONNMMGG!!  !!GGMMNNOOZYYXXWWV210//..- - - $$%%&&''HHIIJJKKeeddccbbAA@@??>> - - ,,--..//PPQQRRSS]]\\[[ZZ9988776644556677XXYYZZ[[UUTTSSRR1100//.. - -<<==>>??``aabbccMMLLKKJJ))((''&& !!""##DDEEFFGGhhhhggff;;::9988 - -%%&&''((SSTTUUVVSRRQQPPO*))((''&$$%%&&''HHIIJJKKeeddccbbAA@@??>> - - ,,--..//PPQQRRSS]]\\[[ZZ9988776644556677XXYYZZ[[UUTTSSRR1100//.. - -<<==>>??``aabbccMMLLKKJJ))((''&& !!""##DDEEFFGGhhhhggff;;::9988 - -%%&&''((SSTTUUVVSRRQQPPO*))((''&$$%%&&''HHIIJJKKeeddccbbAA@@??>> - - ,,--..//PPQQRRSS]]\\[[ZZ9988776644556677XXYYZZ[[UUTTSSRR1100//.. - -<<==>>??``aabbccMMLLKKJJ))((''&& !!""##DDEEFFGGhhhhggff;;::9988 - -%%&&''((SSTTUUVVSRRQQPPO*))((''& !!""##DDEEFFGGhhhhggffEEDDCCBB!! (())**++LLMMNNOOaa``__^^==<<;;:: 00112233TTUUVVWWYYXXWWVV554433228899::;;\\]]^^__DDCCBBAA$$%%&&''RRSSTTUUEEDDCCBB!! 8899::;;$$%%&&''HHIIJJKKeeddccbbAA@@??>> - - ,,--..//PPQQRRSS]]\\[[ZZ9988776644556677XXYYZZ[[UUTTSSRR1100//.. - -<<==>>??``aabbcc@@??>>==(())**++VVWWXXYYAA@@??>><<==>>??(())**++LLMMNNOOaa``__^^==<<;;:: 00112233TTUUVVWWYYXXWWVV554433228899::;;\\]]^^__QQPPOONN--,,++** @@AABBCCddeeffgg<<;;::99 ,,--..//ZZ[[\\]]==<<;;::@@AABBCC,,--..//PPQQRRSS]]\\[[ZZ9988776644556677XXYYZZ[[UUTTSSRR1100//.. - -<<==>>??``aabbccMMLLKKJJ))((''&& !!""##DDEEFFGGhh``__^^88776655 - - - -55667788]]\\[[ZZ99887766 !!""##DDEEFFGG00112233TTUUVVWWYYXXWWVV554433228899::;;\\]]^^__QQPPOONN--,,++** @@AABBCCddeeffggIIHHGGFF%%$$##""$$%%&&''HHIIJJKK]]\\[[ZZ//..--,, 99::;;<>??``aabbccMMLLKKJJ))((''&& !!""##DDEEFFGGhhhhggffEEDDCCBB!! (())**++LLMMNNOOYYXXWWVV++**))((==>>??@@UUTTSSRR1100//.. - -(())**++LLMMNNOO8899::;;\\]]^^__QQPPOONN--,,++** @@AABBCCddeeffggIIHHGGFF%%$$##""$$%%&&''HHIIJJKKeeddccbbAA@@??>> - - ,,--..//PPQQRRSSUUTTSSRR''&&%%$$AABBCCDDQQPPOONN--,,++** - - ,,--..//PPQQRRSS<<==>>??``aabbccMMLLKKJJ))((''&& !!""##DDEEFFGGhhhhggffEEDDCCBB!! (())**++LLMMNNOOaa``__^^==<<;;:: 00112233TTUUVVWWQQPPOONN##""!! EEFFGGMMMMLLKKJJ))((''&& 00112233TTUUVVWW@@AABBCCddeeffggIIHHGGFF%%$$##""$$%%&&''HHIIJJKKeeddccbbAA@@??>> - - ,,--..//PPQQRRSS]]\\[[ZZ9988776644556677XXYYZZ[[MMGGFFEE !!""##NNOOPPQQIIHHGGFF%%$$##""44556677XXYYZZ[[\\]]ZHAbZHAbZHAb|ZdQb|ZdQb|ZdQbv`fHXv`˂rXQZp˂tbdQdrtnvffH~fH~XQr˂XQr˂XQr˂btlbtlbtlHfpvHfpvHfpvZp˂Zp˂Zp˂|dr|dr|dtAfH~fH~fH~XQr˂XQr˂rbtbtlbtlHXv`~HX`pvbHAZ`ےbrtAJtbdQpfHfH~fH~XQr˂XQr˂XQr˂btlbtlbtlHfpvHfpvHfpvZp˂Zp˂Zp˂|dr|dr|dtAfH~fH~fH~XQr˂XQr˂rbtbtlbtlHXv`~HX`pvbHAZ`ےbrtAJtbdQpfHfH~fH~XQr˂XQr˂XQr˂btlbtlbtlHfpvHfpvHfpvZp˂Zp˂Zp˂|dr|dr|dtAfH~fH~fH~XQr˂XQr˂rbtbtlbtlHXv`~HX`pvbHAZ`ےbrtAJtbdQے`JXQے`JXQے`JXQtlJtlJtlJ~Hfpf~HJ`ےrXQJ`Z|dAJltf`vXf`vXf`vXpZHAbpZHAbpZHAbJtArdJtArdJtArdnXvnXvnXvrXQJ`rXQJ`rXQJ`tAJltAJlJltf`vXf`vXfZHAbpZHAbpZHAblJtAdJtArdJtArdf~Hv`fnrXQJp˂HAZp˂bdQZ|Z|df`vXf`vXf`vXpZHAbpZHAbpZHAbJtArdJtArdJtArdnXvnXvnXvrXQJ`rXQJ`rXQJ`tAJltAJlJltf`vXf`vXfZHAbpZHAbpZHAblJtAdJtArdJtArdf~Hv`fnrXQJp˂HAZp˂bdQZ|Z|df`vXf`vXf`vXpZHAbpZHAbpZHAbJtArdJtArdJtArdnXvnXvnXvrXQJ`rXQJ`rXQJ`tAJltAJlJltf`vXf`vXfZHAbpZHAbpZHAblJtAdJtArdJtArdf~Hv`fnrXQJp˂HAZp˂bdQZ|Z|dr˂pr˂pr˂ptArdtArdtArdvnXfpvbHAZpےbHArtAJbbdQZ|nvpnvpnvpے`Jے`Jے`J|ZdQ|ZdQ|ZdQ`f~`f~`fHےbHAےbHAےbHAtbdQZtbdQZbnvnvpnvpے`Jے`Jے`J|ZdQ|ZdQ|ZdQfpv~Hfp`p˂bHAZpbHAdrtArtAJbnvpnvpnvpے`Jے`Jے`J|ZdQ|ZdQ|ZdQ`f~`f~`fHےbHAےbHAےbHAtbdQZtbdQZbnvnvpnvpے`Jے`Jے`J|ZdQ|ZdQ|ZdQfpv~Hfp`p˂bHAZpbHAdrtArtAJbnvpnvpnvpے`Jے`Jے`J|ZdQ|ZdQ|ZdQ`f~`f~`fHےbHAےbHAےbHAtbdQZtbdQZbnvnvpnvpے`Jے`Jے`J|ZdQ|ZdQ|ZdQfpv~Hfp`p˂bHAZpbHAdrtArtAJbpfHZHAbZHAbZHAb|ZdQb|ZdQbf~Hv`fnXv`˂bZp˂dQZ|drtfH~fH~fH~XQr˂XQr˂XQr˂btlbtlbtlHfpvHfpvfpvZp˂Zp˂Zdr|dr|drpfHfH~fH~XQr˂XQr˂XQr˂btlbtlbtlnXv`vnXrXQJ`˂rXQZdrJltdQZ|fH~fH~fH~XQr˂XQr˂XQr˂btlbtlbtlHfpvHfpvfpvZp˂Zp˂Zdr|dr|drpfHfH~fH~XQr˂XQr˂XQr˂btlbtlbtlnXv`vnXrXQJ`˂rXQZdrJltdQZ|fH~fH~fH~XQr˂XQr˂XQr˂btlbtlbtlHfpvHfpvfpvZp˂Zp˂Zdr|dr|drpfHfH~fH~XQr˂XQr˂XQr˂btlbtlbtlnXv`vnXrXQJ`˂rXQZdrJltdQZ|f`vXے`JXQے`JXQے`JXQtlJtlJXv`f~HXvp˂rHAZp˂bHAZdrtAJAJbdQf`vXf`vXf`vXpZHAbpZHAbpZHAJtArdJtArdJtArdnXvnXvnrXQJrXQJ`rXQJ`tAJltAJltAJlf`vXf`vXf`vXpZHAbpZHAbpZHAbJtArdJtArdJtArdf~Hv`fےbHAJ`ےtAJbdbdQZ|drtAJf`vXf`vXf`vXpZHAbpZHAbpZHAJtArdJtArdJtArdnXvnXvnrXQJrXQJ`rXQJ`tAJltAJltAJlf`vXf`vXf`vXpZHAbpZHAbpZHAbJtArdJtArdJtArdf~Hv`fےbHAJ`ےtAJbdbdQZ|drtAJf`vXf`vXf`vXpZHAbpZHAbpZHAJtArdJtArdJtArdnXvnXvnrXQJrXQJ`rXQJ`tAJltAJltAJlf`vXf`vXf`vXpZHAbpZHAbpZHAbJtArdJtArdJtArdf~Hv`fےbHAJ`ےtAJbdbdQZ|drtAJnvpr˂pr˂pr˂ptArdtArd~Hf`f~XQJ`ےrXQJdrtAltbZ|dnvpnvpnvpے`Jے`Jے`JXQ|ZdQ|ZdQf~`f~`f~`ےHAےbHAےbHAtbdQZtbdQZtbdQZnvpnvpnvpے`Jے`Jے`J|ZdQ|ZdQ|ZdQXv`f~HXvZp˂bHAZpQZ|ddrtAltbnvpnvpnvpے`Jے`Jے`JXQ|ZdQ|ZdQf~`f~`f~`ےHAےbHAےbHAtbdQZtbdQZtbdQZnvpnvpnvpے`Jے`Jے`J|ZdQ|ZdQ|ZdQXv`f~HXvZp˂bHAZpQZ|ddrtAltbnvpnvpnvpے`Jے`Jے`JXQ|ZdQ|ZdQf~`f~`f~`ےHAےbHAےbHAtbdQZtbdQZtbdQZnvpnvpnvpے`Jے`Jے`J|ZdQ|ZdQ|ZdQXv`f~HXvZp˂bHAZpQZ|ddrtAltbfH~ZHAbZHAb|ZdQb|ZdQb|ZdQbpvnHfpvbHAZ`ےbJbdQdQZ|rtAJlfH~fH~fH~XQr˂XQr˂rbtbtlbtlHfpvHfpvHfpvZp˂Zp˂Zp˂|dr|dr|drfH~fH~fH~XQr˂XQr˂XQr˂btlbtlbtl~Hf`f~bHAZ˂brtAJlJbdQdQZ|fH~fH~fH~XQr˂XQr˂rbtbtlbtlHfpvHfpvHfpvZp˂Zp˂Zp˂|dr|dr|drfH~fH~fH~XQr˂XQr˂XQr˂btlbtlbtl~Hf`f~bHAZ˂brtAJlJbdQdQZ|fH~fH~fH~XQr˂XQr˂rbtbtlbtlHfpvHfpvHfpvZp˂Zp˂Zp˂|dr|dr|drfH~fH~fH~XQr˂XQr˂XQr˂btlbtlbtl~Hf`f~bHAZ˂brtAJlJbdQdQZ|f`vXے`JXQے`JXQtlJtlJtlJXv`fnXvp˂HAZp˂Z|ddrtAJtbdQf`vXf`vXfZHAbpZHAbpZHAblJtAdJtArdJtArdnXvnXvnXvrXQJ`rXQJ`rXQJ`tAJltAJltAJlf`vXf`vXf`vXpZHAbpZHAbpZHAJtArdJtArdJtArdpvnHfpvp˂rHAZp˂tbdZ|dAJltf`vXf`vXfZHAbpZHAbpZHAblJtAdJtArdJtArdnXvnXvnXvrXQJ`rXQJ`rXQJ`tAJltAJltAJlf`vXf`vXf`vXpZHAbpZHAbpZHAJtArdJtArdJtArdpvnHfpvp˂rHAZp˂tbdZ|dAJltf`vXf`vXfZHAbpZHAbpZHAblJtAdJtArdJtArdnXvnXvnXvrXQJ`rXQJ`rXQJ`tAJltAJltAJlf`vXf`vXf`vXpZHAbpZHAbpZHAJtArdJtArdJtArdpvnHfpvp˂rHAZp˂tbdZ|dAJltnvpr˂pr˂ptArdtArdtArd~HX`f~bHAZpbHArtAJl璉bdQZ|Z|dnvpnvpے`Jے`Jے`J|ZdQ|ZdQ|ZdQ`f~`f~`f~ےbHAےbHAےbHAtbdQZtbdQZtbdQZnvpnvpnvpے`Jے`Jے`JXQ|ZdQ|ZdQf~Xv`fnXvXQJ`ےrXQJQZ|drtAJlbnvnvpnvpے`Jے`Jے`J|ZdQ|ZdQ|ZdQ`f~`f~`f~ےbHAےbHAےbHAtbdQZtbdQZtbdQZnvpnvpnvpے`Jے`Jے`JXQ|ZdQ|ZdQf~Xv`fnXvXQJ`ےrXQJQZ|drtAJlbnvnvpnvpے`Jے`Jے`J|ZdQ|ZdQ|ZdQ`f~`f~`f~ےbHAےbHAےbHAtbdQZtbdQZtbdQZnvpnvpnvpے`Jے`Jے`JXQ|ZdQ|ZdQf~Xv`fnXvXQJ`ےrXQJQZ|drtAJlbnvfH~f`vXf`vXfZHAbpZHAbpZHAblJtAdJtArdJtArdnXvnXvnXvrXQJ`rXQJ`rXQJ`tAJltAJltAJlf`vXf`vXf`vXZHAb˂pZHAb㉀ۑpZQXb㉀pfH~pfH~Z|dZ|dnvpnvpے`Jے`Jے`J|ZdQ|ZdQ|ZdQ`f~`f~`f~ےbHAےbHAےbHAtbdQZtbdQZtbdQZnvpnvpnvpے`JXQbے`JAHr󙐒ۑpJAHf۝`vf۝`vrQtJlrQtJlfH~fH~XQr˂XQr˂XQr˂btlbtlbtlHfpvHfpvHfpvZp˂Zp˂Zp˂|dr|dr|dtAfH~fH~fH~r˂pJXQrˁ`ZQXr󙐂ˁ`Xnv˅Xnv˒tbAdtbAdf`vXf`vXpZHAbpZHAbpZHAbJtArdJtArdJtArdnXvnXvnXvrXQJ`rXQJ`rXQJ`tAJltAJlJltf`vXf`vXfr˂ZHAb˂p`ZAHr󙐂ˍpfH~pfH~pfH~Z|dZ|dnvpnvpے`Jے`Jے`J|ZdQ|ZdQ|ZdQ`f~`f~`fHےbHAےbHAےbHAtbdQZtbdQZbnvnvpnvppZHAb˂pZQXb㉀ہ`ZQXbㅐf۝`vf۝`vf۝`vrQtJlrQtJlfH~fH~XQr˂XQr˂XQr˂btlbtlbtlHfpvHfpvfpvZp˂Zp˂Zdr|dr|drpfHfH~fH~ے`JHAbےpJAHr󉀒ۑpJXnv˅Xnv˅Xnv˒tbAdtbAdf`vXf`vXpZHAbpZHAbpZHAJtArdJtArdJtArdnXvnXvnrXQJrXQJ`rXQJ`tAJltAJltAJlf`vXf`vXf`vXXQr˂`JXQrˁ`ZAHr󙐂ˍpfH~pfH~p|dZ|dZ|dnvpnvpے`Jے`Jے`JXQ|ZdQ|ZdQf~`f~`f~`ےHAےbHAےbHAtbdQZtbdQZtbdQZnvpnvpnvppZHAb˂pZQXAHr󙐁`ZQXAHf۝`vf۝`vrQtJlrQtJlrQtJlfH~fH~XQr˂XQr˂rbtbtlbtlHfpvHfpvHfpvZp˂Zp˂Zp˂|dr|dr|drfH~fH~fH~˂pHAbˁ`ZQXr󙐂ˁ`Xnv˅Xnv˒tbAdtbAdtbAdZ|abcdefghhgfedcb \ No newline at end of file diff --git a/barcode-generator/Resources/data/qrv22_2.dat b/barcode-generator/Resources/data/qrv22_2.dat deleted file mode 100644 index 3ea03b9..0000000 Binary files a/barcode-generator/Resources/data/qrv22_2.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv22_3.dat b/barcode-generator/Resources/data/qrv22_3.dat deleted file mode 100644 index b23d919..0000000 Binary files a/barcode-generator/Resources/data/qrv22_3.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv23_0.dat b/barcode-generator/Resources/data/qrv23_0.dat deleted file mode 100644 index 827fb6e..0000000 Binary files a/barcode-generator/Resources/data/qrv23_0.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv23_1.dat b/barcode-generator/Resources/data/qrv23_1.dat deleted file mode 100644 index 766946e..0000000 --- a/barcode-generator/Resources/data/qrv23_1.dat +++ /dev/null @@ -1,217 +0,0 @@ -lklklklklklklklklklklklkjijijijijijijijijijijijihghghghghghghghgfefefefefefefefedcdcdcdcdcdcdcdcdcdcdcdcbabababababababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKKLKKKKKKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:9:9:9:987878787878787878787878765656565656565653434343434343434334343432121212121212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!        lklklklklklklklklklklklkjijijijijijijijijijijijihghghghghghghghgfefefefefefefefecccccdcddcdcdcdcdcdcdcdcbabababababababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:9:9:9:987878787878787878765656565656565656565653434333334343434432121212121212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!           lklklklklklklklklklklklkjijijijijijijijijijijijihghghghghghghghgfefefefefefefefecdcdcdcddcdcdcccdcdcdcdcbabababababababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMLKKKKKKLLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:9:9:9:9878787878787878765656565656565656565656533434343343434342121212121212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!            lklklklklklklklklklklklkjijijijijijijijijijijijihghghghghghghghgfefefefefefefefecdcdcdcdcccdcdcddcdcdcdcbabababababababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMKLKLKLKLLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:9:9:9:9878787878787878765656565656565656565656543434343343333332121212121212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!            lklklklklklklklklklklklkjijijijijijijijijijijijihghghghghghghghgfefefefefefefefecdcdcdcdcdcdcdcddcdcdcdcbababababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMKLKLKLKLKKKKKLKLLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:9:9:9:9878787878787878765656565656565656543434343434343434343432121212121212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!         lklklklklklklklklklklklkjijijijijijijijihghghghghghghghghghghghgfefefefefefefefecdcdcdcdcdcdcdcdaaaaaabababababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMKLKLKLKLKLKLKLKLLKLKLKKKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:9:9:9:9878787878787878765656565656565654333333443434343434343432121212121212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!        lklklklklklklklklklklklkjijijijijijijijihghghghghghghghghghghghgfefefefefefefefecdcccccccdcdcdcdbabababababababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMKLKLKLKLKLKLKLKLKKLKLKLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:9:9:9:9878787878787878765656565656565653434343443434343434343432121212121212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!        lklklklklklklklkjijijijijijijijijijijijihghghghghghghghgfefefefefefefefefefefefedcdcdcdccdcdcdcdbabababababababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMKLKLKKKKKLKLKLKLLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:9:9:9:9878787878787878787878765656565656565653434343433333434434343432121212121212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!        lklklklklklklklkjijijijijijijijijijijijihghghghghghghghgfefefefefefefefefefefefedcdcdcdcccccccdcbabababababababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMKKLKLKLKKLKLKLKLJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:9:9:9:987878787878787878787878765656565656565653434343434343434434343332121212121212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!                    - - - - - - - - - - - -             - - - - - - - - - - - -             - - - - - - - - - - - -             - - - - - - - - - - - -             - - - - - - - - - - - -             - - - - - - - - - - - -             - - - - - - - - - - - -             - - - - - - - - - - - -             - - - - - - - - - - - - llkkjjiiHHGGFFEE$$##""!!55667788YYZZ[[\\WWVVUUTT))((''&&??@@AABBllkkjjiiCCBBAA@@8899::;;\\]]^^__YYXXWWVV554433228899::;;\\]]^^__YYXXWWVV554433228899::;;\\]]^^__YYXXWWVV554433228899::;;\\]]^^__YYXXWWVV554433228899::;;\\]]^^__TTSSRRQQ&&%%$$## ::;;<<==cciijjkkHHGGFFEE"!!  - - ,,--..//PPQQRRSSeeddccbbAA@@??>> - - ,,--..//PPQQRRSSeeddccbbAA@@??>> - - ,,--..//PPQQRRSSeeddccbbAA@@??>> - - ,,--..//PPQQRRSSeeddccbbAA@@??>> - - ,,--..//PPQQRRSS``__^^]]221100// ))**++,,WWXXYYZZWVVUUTTS.--,,++* !!""##DDEEFFGGhhiijjkkMMLLKKJJ))((''&& !!""##DDEEFFGGhhiijjkkMMLLKKJJ))((''&& !!""##DDEEFFGGhhiijjkkMMLLKKJJ))((''&& !!""##DDEEFFGGhhiijjkkMMLLKKJJ))((''&& !!""##DDEEFFGGhhiijjkkCCBBAA@@FFGGHHIIcbbaa``_<<;;::998899::;;\\]]^^__YYXXWWVV55443322hhggffeeDDCCBBAA 99::;;<<]]^^__``SSRRQQKK%%$$##""CCDDEEFFhgfedccb??>>==<<<<==>>??``aabbccUUTTSSRR1100//.. - -<<==>>??``aabbccUUTTSSRR1100//.. - -<<==>>??``aabbccUUTTSSRR1100//.. - -<<==>>??``aabbccUUTTSSRR1100//.. - -<<==>>??``aabbccKKJJIIHH""!!>>??@@AAllllkkjjDDCCBBAA 00112233TTUUVVWWaa``__^^==<<;;:: 00112233TTUUVVWWaa``__^^==<<;;:: 00112233TTUUVVWWaa``__^^==<<;;:: 00112233TTUUVVWWaa``__^^==<<;;:: 00112233TTUUVVWW\\[[ZZYY..--,,++--..//00[[\\]]^^SRRQQPON*))((''&$$%%&&''HHIIJJKKllllkkjjIIHHGGFF%%$$##""$$%%&&''HHIIJJKKllllkkjjIIHHGGFF%%$$##""$$%%&&''HHIIJJKKllllkkjjIIHHGGFF%%$$##""$$%%&&''HHIIJJKKllllkkjjIIHHGGFF%%$$##""$$%%&&''HHIIJJKKllllkkjj??>>==<<!!""##$$JJKKQQRR_^^]]\\[87654332 <<==>>??``aabbccUUTTSSRR1100//..ddccbbaa@@??>>====>>??@@aabbccddJJIIHHGG!!!!GGHHIIJJbaa``__^;;::9987@@AABBCCddeeffggQQPPOONN--,,++** @@AABBCCddeeffggQQPPOONN--,,++** @@AABBCCddeeffggQQPPOONN--,,++** @@AABBCCddeeffggQQPPOONN--,,++** @@AABBCCddeeffggGGFFEEDDBBCCDDEEiihgfedc@@??>>==44556677XXYYZZ[[]]\\[[ZZ9988776644556677XXYYZZ[[]]\\[[ZZ9988776644556677XXYYZZ[[]]\\[[ZZ9988776644556677XXYYZZ[[]]\\[[ZZ9988776644556677XXYYZZ[[XXWWVVUU**))(('' - - 11223399__``aabbMLKKJJII&%%$$##"(())**++LLMMNNOOiihhggffEEDDCCBB!! (())**++LLMMNNOOiihhggffEEDDCCBB!! (())**++LLMMNNOOiihhggffEEDDCCBB!! (())**++LLMMNNOOiihhggffEEDDCCBB!! (())**++LLMMNNOOiiccbbaa;;::9933 - -%%&&''((SSTTUUVV[ZZYYXXW21100//. - - @@AABBCCddeeffggQQPPOONN--,,++**``__^^]]<<;;::99 AABBCCDDeeffgghhFFEEDDCC""##$$%%KKQQRRSS^]]\\[[Z65433221 !!""##DDEEFFGGhhiijjkkMMLLKKJJ))((''&& !!""##DDEEFFGGhhiijjkkMMLLKKJJ))((''&& !!""##DDEEFFGGhhiijjkkMMLLKKJJ))((''&& !!""##DDEEFFGGhhiijjkkMMLLKKJJ))((''&& !!""##DDEEFFGGhhiijjkkCCBBAA@@FFGGHHIIcbbaa``_<<;;::998899::;;\\]]^^__YYXXWWVV554433228899::;;\\]]^^__YYXXWWVV554433228899::;;\\]]^^__YYXXWWVV554433228899::;;\\]]^^__YYXXWWVV554433228899::;;\\]]^^__TTSSRRQQ&&%%$$## ::;;<<==cciijjkkHHGGFFEE"!!  - - ,,--..//PPQQRRSSeeddccbbAA@@??>> - - ,,--..//PPQQRRSSeeddccbbAA@@??>> - - ,,--..//PPQQRRSSeeddccbbAA@@??>> - - ,,--..//PPQQRRSSeeddccbbAA@@??>> - - ,,--..//PPQQRRSS``__^^]]221100// ))**++,,WWXXYYZZWVVUUTTS.--,,++* !!""##DDEEFFGGhhiijjkkMMLLKKJJ))((''&&\\[[ZZYY88776655!!""##$$EEFFGGHHiijjkkllBBAA@@??&&''(())TTUUVVWWZYYXXWWV100//..- - - $$%%&&''HHIIJJKKllllkkjjIIHHGGFF%%$$##""$$%%&&''HHIIJJKKllllkkjjIIHHGGFF%%$$##""$$%%&&''HHIIJJKKllllkkjjIIHHGGFF%%$$##""$$%%&&''HHIIJJKKllllkkjjIIHHGGFF%%$$##""$$%%&&''HHIIJJKKllllkkjj??>>==<<!!""##$$JJKKQQRR_^^]]\\[87654332 <<==>>??``aabbccUUTTSSRR1100//.. - -<<==>>??``aabbccUUTTSSRR1100//.. - -<<==>>??``aabbccUUTTSSRR1100//.. - -<<==>>??``aabbccUUTTSSRR1100//.. - -<<==>>??``aabbccKKJJIIHH""!!>>??@@AAllllkkjjDDCCBBAA 00112233TTUUVVWWaa``__^^==<<;;:: 00112233TTUUVVWWaa``__^^==<<;;:: 00112233TTUUVVWWaa``__^^==<<;;:: 00112233TTUUVVWWaa``__^^==<<;;:: 00112233TTUUVVWW\\[[ZZYY..--,,++--..//00[[\\]]^^SRRQQPON*))((''&$$%%&&''HHIIJJKKllllkkjjIIHHGGFF%%$$##""XXWWVVUU44332211 %%&&''((IIJJKKLLllkkjjii>>==<<;; **++,,--XXYYZZ[[VUUTTSSR-,,++**)(())**++LLMMNNOOiihhggffEEDDCCBB!! (())**++LLMMNNOOiihhggffEEDDCCBB!! (())**++LLMMNNOOiihhggffEEDDCCBB!! (())**++LLMMNNOOiihhggffEEDDCCBB!! (())**++LLMMNNOOiiccbbaa;;::9933 - -%%&&''((SSTTUUVV[ZZYYXXW21100//. - - @@AABBCCddeeffggQQPPOONN--,,++** @@AABBCCddeeffggQQPPOONN--,,++** @@AABBCCddeeffggQQPPOONN--,,++** @@AABBCCddeeffggQQPPOONN--,,++** @@AABBCCddeeffggGGFFEEDDBBCCDDEEiihgfedc@@??>>==44556677XXYYZZ[[]]\\[[ZZ9988776644556677XXYYZZ[[]]\\[[ZZ9988776644556677XXYYZZ[[]]\\[[ZZ9988776644556677XXYYZZ[[]]\\[[ZZ9988776644556677XXYYZZ[[XXWWVVUU**))(('' - - 11223399__``aabbMLKKJJII&%%$$##"(())**++LLMMNNOOiihhggffEEDDCCBB!!  - -TTSSRRQQ00//..-- - - ))**++,,MMNNOOPPccbbaa``::993322 - - ..//0011\\]]^^__RQQPONML)((''&&% - - ,,--..//PPQQRRSSeeddccbbAA@@??>> - - ,,--..//PPQQRRSSeeddccbbAA@@??>> - - ,,--..//PPQQRRSSeeddccbbAA@@??>> - - ,,--..//PPQQRRSSeeddccbbAA@@??>> - - ,,--..//PPQQRRSS``__^^]]221100// ))**++,,WWXXYYZZWVVUUTTS.--,,++* !!""##DDEEFFGGhhiijjkkMMLLKKJJ))((''&& !!""##DDEEFFGGhhiijjkkMMLLKKJJ))((''&& !!""##DDEEFFGGhhiijjkkMMLLKKJJ))((''&& !!""##DDEEFFGGhhiijjkkMMLLKKJJ))((''&& !!""##DDEEFFGGhhiijjkkCCBBAA@@FFGGHHIIcbbaa``_<<;;::998899::;;\\]]^^__YYXXWWVV554433228899::;;\\]]^^__YYXXWWVV554433228899::;;\\]]^^__YYXXWWVV554433228899::;;\\]]^^__YYXXWWVV554433228899::;;\\]]^^__TTSSRRQQ&&%%$$## ::;;<<==cciijjkkHHGGFFEE"!!  - - ,,--..//PPQQRRSSeeddccbbAA@@??>> PPOONNMM,,++**)) - - --..//00QQRRSSTT__^^]]\\1100//.. - - 223399::``aabbccKKJJIIHH%$$##""! 00112233TTUUVVWWaa``__^^==<<;;:: 00112233TTUUVVWWaa``__^^==<<;;:: 00112233TTUUVVWWaa``__^^==<<;;:: 00112233TTUUVVWWaa``__^^==<<;;:: 00112233TTUUVVWW\\[[ZZYY..--,,++--..//00[[\\]]^^SRRQQPON*))((''&$$%%&&''HHIIJJKKllllkkjjIIHHGGFF%%$$##""$$%%&&''HHIIJJKKllllkkjjIIHHGGFF%%$$##""$$%%&&''HHIIJJKKllllkkjjIIHHGGFF%%$$##""$$%%&&''HHIIJJKKllllkkjjIIHHGGFF%%$$##""$$%%&&''HHIIJJKKllllkkjj??>>==<<!!""##$$JJKKQQRR_^^]]\\[87654332 <<==>>??``aabbccUUTTSSRR1100//.. - -<<==>>??``aabbccUUTTSSRR1100//.. - -<<==>>??``aabbccUUTTSSRR1100//.. - -<<==>>??``aabbccUUTTSSRR1100//.. - -<<==>>??``aabbccKKJJIIHH""!!>>??@@AAllllkkjjDDCCBBAA 00112233TTUUVVWWaa``__^^==<<;;::LLKKJJII((''&&%% 11223344UUVVWWXX[[ZZYYXX--,,++** ;;<<==>>iijjkkllGGFFEEDD! 44556677XXYYZZ[[]]\\[[ZZ9988776644556677XXYYZZ[[]]\\[[ZZ9988776644556677XXYYZZ[[]]\\[[ZZ9988776644556677XXYYZZ[[]]\\[[ZZ9988776644556677XXYYZZ[[XXWWVVUU**))(('' - - 11223399__``aabbMLKKJJII&%%$$##"(())**++LLMMNNOOiihhggffEEDDCCBB!! (())**++LLMMNNOOiihhggffEEDDCCBB!! (())**++LLMMNNOOiihhggffEEDDCCBB!! (())**++LLMMNNOOiihhggffEEDDCCBB!! (())**++LLMMNNOOiiccbbaa;;::9933 - -%%&&''((SSTTUUVV[ZZYYXXW21100//. - - @@AABBCCddeeffggQQPPOONN--,,++** @@AABBCCddeeffggQQPPOONN--,,++** @@AABBCCddeeffggQQPPOONN--,,++** @@AABBCCddeeffggQQPPOONN--,,++** @@AABBCCddeeffggGGFFEEDDBBCCDDEEiihgfedc@@??>>==44556677XXYYZZ[[]]\\[[ZZ99887766(())**++LLMMNNOOiihhggffEEDDCCBB!! (())**++LLMMNNOOiihhggffEEDDCCBB!! (())**++LLMMNNOOiihhggffEEDDCCBB!! (())**++LLMMNNOOaa``__^^33221100 - - - -00112233^^__``aaAA@@??>><<==>>?? - - ,,--..//PPQQRRSSeeddccbbAA@@??>> - - ,,--..//PPQQRRSSeeddccbbAA@@??>> - - ,,--..//PPQQRRSSeeddccbbAA@@??>> - - ,,--..//PPQQRRSS]]\\[[ZZ//..--,, 99::;;<>??@@]]\\[[ZZ99887766 !!""##DDEEFFGG44556677XXYYZZ[[]]\\[[ZZ9988776644556677XXYYZZ[[]]\\[[ZZ9988776644556677XXYYZZ[[]]\\[[ZZ9988776644556677XXYYZZ[[UUTTSSRR''&&%%$$AABBCCDDYYXXWWVV55443322$$%%&&''HHIIJJKK8899::;;\\]]^^__YYXXWWVV554433228899::;;\\]]^^__YYXXWWVV554433228899::;;\\]]^^__YYXXWWVV554433228899::;;\\]]^^__QQKKJJII##""!!EEFFGGHHUUTTSSRR1100//.. - -(())**++LLMMNNOO<<==>>??``aabbccUUTTSSRR1100//.. - -<<==>>??``aabbccUUTTSSRR1100//.. - -<<==>>??``aabbccUUTTSSRR1100//.. - -<<==>>??``aabbccHHGGFFEE!!""##IIJJKKQQQQPPOONN--,,++** - - ,,--..//PPQQRRSS@@AABBCCddeeffggQQPPOONN--,,++** @@AABBCCddeeffggQQPPOONN--,,++** @@AABBCCddeeffggQQPPOONN--,,++** @@AABBCCddeeffggDDCCBBAA$$%%&&''RRSSTTUUMMLLKKJJ))((''&& 00112233TTUUVVWW !!""##DDEEFFGGhhiijjkkMMLLKKJJ))((''&& !!""##DDEEFFGGhhiijjkkMMLLKKJJ))((''&& !!""##DDEEFFGGhhiijjkkMMLLKKJJ))((''&& !!""##DDEEFFGGhhiijjkk@@??>>==(())**++VVWWXXYYIIHHGGFF%%$$##""44556677XXYYZZ[[$$%%&&''HHIIJJKKllllkkjjIIHHGGFF%%$$##""$$%%&&''HHIIJJKKllllkkjjIIHHGGFF%%$$##""$$%%&&''HHIIJJKKllllkkjjIIHHGGFF%%$$##""$$%%&&''HHIIJJKKllddccbb<<;;::99 ,,--..//ZZ[[\\]]EEDDCCBB!! 8899::;;\\]]^^__``aabdQZ|bdQZ|bdQZ|H~fH~fH~f`JXQrے`JtArdlJtArnXv`~HfvnXZp˂Zp˂Zp˂tAJltAJltAJlf`vXf`vXf`vXے`Jے`Jے`J|ZdQ|ZdQ|ZdQHfpvHfpvHfpvZp˂Zp˂Zp˂tAJltAJltAJlf`vXf`vXf`vXr˂pJXQrbtlZdQbtl|ZdQnXv`v`f~fZp˂Zp˂Zp˂tAJltAJltAJlf`vXf`vXf`vXے`Jے`Jے`J|ZdQ|ZdQ|ZdQHfpvHfpvHfpvZp˂Zp˂Zp˂tAJltAJltAJlf`vXf`vXf`vXr˂pJXQrp`JXQtArdlJtArvnXv`ffpvZp˂Zp˂Zp˂tAJltAJlJltf`vXf`vXf`vXے`Jے`Jے`JXQ|ZdQ|ZdQ|ZdQHfpvHfpvfpvZp˂Zp˂Zp˂tAJltAJlJltf`vXf`vXf`vXHAbےpZHAbbtlZdQbtvnXnXv`~HfZp˂Zp˂Zp˂tAJltAJldrtAdrtAdrtA`vXn`vXn`vXn˂p`XQr˂|ZdQbd|Zf~fppvnv`frXQJ`rXQJ`rXQJ`tbdQZtbdQZtbdQZnvpnvpnvpXQr˂XQr˂XQr˂btlbtlbtlnXvnXvnXvrXQJ`rXQJ`rXQJ`tbdQZtbdQZtbdQZnvpnvpnvp`JXQr˂p`JJtArdlJtAbnXvf~HpvnrXQJ`rXQJ`rXQJ`tbdQZtbdQZtbdQZnvpnvpnvpXQr˂XQr˂XQr˂btlbtlbtlnXvnXvnXvrXQJ`rXQJ`rXQJ`tbdQZtbdQZtbdQZnvpnvpnvpZHAb˂pZHArbt|ZdQbd|Zv`f~~HfpnrXQJrXQJ`rXQJ`rbdQZtbdQZtbdQZbnvnvpnvpnr˂XQr˂XQr˂rbtbtlbtlbnXvnXvnXvnrXQJrXQJ`rXQJ`rbdQZtbdQZtbdQZbnvnvpnvpnr˂`JXQrے`J|ZdQbl|Zv`ff~fppvnrXQJ`rXQJ`rXQJ`tbdQZtbdQZJltJltJltvpfvpfvpfJXQrp`JXQtl|dQbtvnXXv`f~HfpےbHAےbHAےbHA|dr|dr|dtAfH~fH~fH~pZHAbpZHAbpZHAJtArdJtArdJtArd`f~`f~`fHےbHAےbHAےbHA|dr|dr|dtAfH~fH~fH~˂pZXQr˂|ZdQrd|`f~fpfpvXv`fےbHAےbHAےbHA|dr|dr|drfH~fH~fH~pZHAbpZHAbpZHAbJtArdJtArdJtArd`f~`f~`f~ےbHAےbHAےbHA|dr|dr|drfH~fH~fH~ے`JXQbے`l|ZdQtl|dQbt璅fpvvnX`ےHAےbHAےbHA|dr|dr|drpfHfH~fH~pZHAbpZHAbpZHAblJtAdJtArdJtArd`f~`f~`f~`ےHAےbHAےbHA|dr|dr|drpfHfH~fH~p`JXQ˂p`XQr˂tlJdQbt璕~HfpvnXXv`fےbHAےbHAےbHA|dr|drbdQZ|bdQZ|bdQZ|H~fH~fH~f˂pZHAr˂pZdQbtl|ZdQv`f~fpvvnXZp˂Zp˂Zp˂tAJltAJlJltf`vXf`vXf`vXے`Jے`Jے`JXQ|ZdQ|ZdQ|ZdQHfpvHfpvfpvZp˂Zp˂Zp˂tAJltAJlJltf`vXf`vXf`vXHAbےpZHAbbtlZdQbtvnXnXv`~HfZp˂Zp˂Zp˂tAJltAJltAJlf`vXf`vXf`vXے`Jے`Jے`J|ZdQ|ZdQ|ZdQHfpvHfpvHfpvZp˂Zp˂Zp˂tAJltAJltAJlf`vXf`vXf`vXr˂pJXQrbtlZdQbtl|ZdQnXv`v`f~fZp˂Zp˂Zp˂tAJltAJltAJlf`vXf`vXf`vXے`Jے`Jے`J|ZdQ|ZdQ|ZdQHfpvHfpvHfpvZp˂Zp˂Zp˂tAJltAJltAJlf`vXf`vXf`vXr˂pJXQrp`JXQtArdlJtArvnXv`ffpvZp˂Zp˂Zp˂tAJltAJldrtAdrtAdrtA`vXn`vXn`vXnbے`ZHAblJtAbtl~HfpۅnXv`v`frXQJ`rXQJ`rbdQZtbdQZtbdQZbnvnvpnvpnr˂XQr˂XQr˂rbtbtlbtlbnXvnXvnXvnrXQJrXQJ`rXQJ`rbdQZtbdQZtbdQZbnvnvpnvpnr˂`JXQrے`J|ZdQbl|Zv`ff~fppvnrXQJ`rXQJ`rXQJ`tbdQZtbdQZtbdQZnvpnvpnvpXQr˂XQr˂XQr˂btlbtlbtlnXvnXvnXvrXQJ`rXQJ`rXQJ`tbdQZtbdQZtbdQZnvpnvpnvp`JXQr˂p`JJtArdlJtAbnXvf~HpvnrXQJ`rXQJ`rXQJ`tbdQZtbdQZtbdQZnvpnvpnvpXQr˂XQr˂XQr˂btlbtlbtlnXvnXvnXvrXQJ`rXQJ`rXQJ`tbdQZtbdQZtbdQZnvpnvpnvpZHAb˂pZHArbt|ZdQbd|Zv`f~~HfpnrXQJrXQJ`rXQJ`rbdQZtbdQZtbdQZtAJlJltJltJltvpfvpfr˂pJXQrے`JXQrd|JtArdvnXf~HrQJHAےbHAےbHA|dr|dr|drpfHfH~fH~pZHAbpZHAbpZHAblJtAdJtArdJtArd`f~`f~`f~`ےHAےbHAےbHA|dr|dr|drpfHfH~fH~p`JXQ˂p`XQr˂tlJdQbt璕~HfpvnXXv`fےbHAےbHAےbHA|dr|dr|dtAfH~fH~fH~pZHAbpZHAbpZHAJtArdJtArdJtArd`f~`f~`fHےbHAےbHAےbHA|dr|dr|dtAfH~fH~fH~˂pZXQr˂|ZdQrd|`f~fpfpvXv`fےbHAےbHAےbHA|dr|dr|drfH~fH~fH~pZHAbpZHAbpZHAbJtArdJtArdJtArd`f~`f~`f~ےbHAےbHAےbHA|dr|dr|drfH~fH~fH~ے`JXQbے`l|ZdQtl|dQbt璅fpvvnX`ےHAےbHAےbHA|dr|dr|drtbdQZbdQZ|bdQZ|bdQZ|H~fH~f`JXQr˂p`Jr˂pZdQbt|ZdQv`f~ffpvZp˂Zp˂Zp˂tAJltAJltAJlf`vXf`vXf`vXے`Jے`Jے`J|ZdQ|ZdQ|ZdQHfpvHfpvHfpvZp˂Zp˂Zp˂tAJltAJltAJlf`vXf`vXf`vXr˂pJXQrp`JXQtArdlJtArvnXv`ffpvZp˂Zp˂Zp˂tAJltAJlJltf`vXf`vXf`vXے`Jے`Jے`JXQ|ZdQ|ZdQ|ZdQHfpvHfpvfpvZp˂Zp˂Zp˂tAJltAJlJltf`vXf`vXf`vXHAbےpZHAbbtlZdQbtvnXnXv`~HfZp˂Zp˂Zp˂tAJltAJltAJlf`vXf`vXf`vXے`Jے`Jے`J|ZdQ|ZdQ|ZdQHfpvHfpvHfpvZp˂Zp˂Zp˂tAJltAJltAJlf`vXf`vXf`vXr˂pJXQrbtlZdQbtl|ZdQnXv`v`f~fZp˂Zp˂Zp˂tAJltAJltAJl|dtAdrtAdrtA`vXn`vXn`vXn˂pZXQr˂|ZdQbl|ZbtlpvnnXv`rXQJ`rXQJ`rXQJ`tbdQZtbdQZtbdQZnvpnvpnvpXQr˂XQr˂XQr˂btlbtlbtlnXvnXvnXvrXQJ`rXQJ`rXQJ`tbdQZtbdQZtbdQZnvpnvpnvpZHAb˂pZHArbt|ZdQbd|Zv`f~~HfpnrXQJrXQJ`rXQJ`rbdQZtbdQZtbdQZbnvnvpnvpnr˂XQr˂XQr˂rbtbtlbtlbnXvnXvnXvnrXQJrXQJ`rXQJ`rbdQZtbdQZtbdQZbnvnvpnvpnr˂`JXQrے`J|ZdQbl|Zv`ff~fppvnrXQJ`rXQJ`rXQJ`tbdQZtbdQZtbdQZnvpnvpnvpXQr˂XQr˂XQr˂btlbtlbtlnXvnXvnXvrXQJ`rXQJ`rXQJ`tbdQZtbdQZtbdQZnvpnvpnvp`JXQr˂p`JJtArdlJtAbnXvf~HpvnrXQJ`rXQJ`rXQJ`tbdQZtbdQZtbdQZJltJltJltvpfvpfvpfHAbےpZHAbtlJdQbt|ZdQbXv`ff~fpےbHAےbHAےbHA|dr|dr|drfH~fH~fH~pZHAbpZHAbpZHAbJtArdJtArdJtArd`f~`f~`f~ےbHAےbHAےbHA|dr|dr|drfH~fH~fH~ے`JXQbے`l|ZdQtl|dQbt璅fpvvnX`ےHAےbHAےbHA|dr|dr|drpfHfH~fH~pZHAbpZHAbpZHAblJtAdJtArdJtArd`f~`f~`f~`ےHAےbHAےbHA|dr|dr|drpfHfH~fH~p`JXQ˂p`XQr˂tlJdQbt璕~HfpvnXXv`fےbHAےbHAےbHA|dr|dr|dtAfH~fH~fH~pZHAbpZHAbpZHAJtArdJtArdJtArd`f~`f~`fHےbHAےbHAےbHA|dr|dr|dtAfH~fH~fH~˂pZXQr˂|ZdQrd|`f~fpfpvXv`fےbHAےbHAےbHA|dr|dr|drbnvpfHfH~fH~pZHAbpZHAbpZHAblJtAdJtArdJtArd`f~`f~`f~`ےHAےbHAےbHA|dr|dr|drpfHfH~fH~XQr˂`JXQr˂p`Zb㉀ۑpZQXb㉀f۝`vf۝`vrQtJlrQtJlf`vXf`vXf`vXے`Jے`Jے`J|ZdQ|ZdQ|ZdQHfpvHfpvHfpvZp˂Zp˂Zp˂tAJltAJltAJlf`vXf`vXf`vXpZHAb˂pZQXb㉀ہ`ZQXbXnv˅Xnv˅Xnv˒tbAdtbAdnvpnvpnvpXQr˂XQr˂XQr˂btlbtlbtlnXvnXvnXvrXQJ`rXQJ`rXQJ`tbdQZtbdQZtbdQZnvpnvpnvpے`JHAbےpJAHr󉀒ۑpJpfH~pfH~pfH~Z|dZ|dfH~fH~fH~pZHAbpZHAbpZHAbJtArdJtArdJtArd`f~`f~`f~ےbHAےbHAےbHA|dr|dr|drfH~fH~fH~XQr˂`JXQrˁ`ZAHr󙐂˅f۝`vf۝`vf۝`vrQtJlrQtJlf`vXf`vXf`vXے`Jے`Jے`J|ZdQ|ZdQ|ZdQHfpvHfpvHfpvZp˂Zp˂Zp˂tAJltAJltAJlf`vXf`vXf`vXp`JXQ˂p`QXb㉀ہ`ZQXbXnv˅Xnv˅Xnv˒tbAdtbAdnvpnvpnvpXQr˂XQr˂XQr˂btlbtlbtlnXvnXvnXvrXQJ`rXQJ`rXQJ`tbdQZtbdQZtbdQZnvpnvpnvpr˂pJXQrp`ZQXۑp`pfH~pfH~p|dZ|dZ|dfH~fH~fH~pZHAbpZHAbpZHAJtArdJtArdJtArd`f~`f~`fHےbHAےbHAےbHA|dr|dr|dtAfH~fH~fH~ZHAb˂pZHAb㉀ۑpZQXb㉀f۝`vf۝`vrQtJlrQtJlrQtJlf`vXf`vXf`vXے`Jے`Jے`JXQ|ZdQ|ZdQ|ZdQHfpvHfpvfpvZp˂Zp˂Zp˂tAJltAJlJltf`vXf`vXf`vXے`JXQbے`JAHr󙐒ۑpJAHXnv˅Xnv˒tbAdtbAdtbAdnvpnvpnr˂XQr˂XQr˂rbtbtlbtlbnXvnXvnXvnrXQJrXQJ`rXQJ`rbdQZtbdQZtbdQZbnvnvpnvpnے`Jr˂pJXQrˁ`ZQXr󙐂ˁ`pfH~pfH~Z|dZ|dZ|drQtefghijkllkjihgf \ No newline at end of file diff --git a/barcode-generator/Resources/data/qrv23_2.dat b/barcode-generator/Resources/data/qrv23_2.dat deleted file mode 100644 index 50e0b3e..0000000 Binary files a/barcode-generator/Resources/data/qrv23_2.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv23_3.dat b/barcode-generator/Resources/data/qrv23_3.dat deleted file mode 100644 index b073443..0000000 Binary files a/barcode-generator/Resources/data/qrv23_3.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv24_0.dat b/barcode-generator/Resources/data/qrv24_0.dat deleted file mode 100644 index fdae762..0000000 Binary files a/barcode-generator/Resources/data/qrv24_0.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv24_1.dat b/barcode-generator/Resources/data/qrv24_1.dat deleted file mode 100644 index fce059e..0000000 --- a/barcode-generator/Resources/data/qrv24_1.dat +++ /dev/null @@ -1,225 +0,0 @@ -popopopopopopopopopopoponmnmnmnmnmnmnmnmnmnmnmnmlklklklklklklklkjijijijijijijijighghghggghghghghfefefefefefefefefefefefedcdcdcdcdcdcdcdcdcdcdcdcbabababababababababababa`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPOMNMNMNMNMNMNMNMNLKLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:9:9:9:9878787878787878765656565656565656543434343434343434343432121212121212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!            popopopopopopopopopopoponmnmnmnmnmnmnmnmnmnmnmnmlklklklklklklklkjijijijijijijijigggghghgghghghghfefefefefefefefefefefefedcdcdcdcdcdcdcdcdcdcdcdcbababababababababa`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPONMNMNMMNMNMNMNMNMNMNMNLKLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:9:9:9:9878787878787878765656565656565654333333443434343434343432121212121212121212121210/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!            popopopopopopopopopopoponmnmnmnmnmnmnmnmlklklklklklklklklklklklkjijijijijijijijihghghghgghghggggfefefefefefefefefefefefedcdcdcdcdcdcdcdcdcdcdcdcbabababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMMMMMNMMNMNMNMMMNMNMNMNLKLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:9:9:9:9878787878787878765656565656565653434343443434343434343432121212121212121212121210/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!            popopopopopopopopopopoponmnmnmnmnmnmnmnmlklklklklklklklkjijijijijijijijijijijijihghghghggghghghgfefefefefefefefefefefefedcdcdcdcdcdcdcdcdcbababababababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMMMMMNMNMMNMNMNMNLKLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:9:9:9:9878787878787878765656565656565653434343433333434434343332121212121212121210/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!            popopopopopopopopopopoponmnmnmnmnmnmnmnmlklklklklklklklkjijijijijijijijihghghghghghghghghghghghgfefefefefefefefefefefefedcdcdcdcdcdcdcdcbabababababababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMMNMNMMMMLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:9:9:9:98787878787878787656565656565656534343434343434343343434321212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!            popopopopopopopopopopoponmnmnmnmnmnmnmnmlklklklklklklklkjijijijijijijijiggggghghhghghghghghghghgfefefefefefefefefedcdcdcdcdcdcdcdcdcdcdcbabababababababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMMMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:9:9:9:98787878787878787656565656565656534343434343434344321212121212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)('('('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!         popopopopopopoponmnmnmnmnmnmnmnmnmnmnmnmlklklklklklklklkjijijijijijijijighghghghhghghggghghghghgfefefefefefefefedcdcdcdcdcdcdcdcdcdcdcdcbabababababababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCBABABABABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:98787878787878787878787656565656565656534343434343434342121212121212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!        popopopopopopoponmnmnmnmnmnmnmnmnmnmnmnmlklklklklklklklkjijijijijijijijighghghghggghghghhghghghgfefefefefefefefedcdcdcdcdcdcdcdcdcdcdcdcbabababababababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOMMMMMNMNNMNMNMNMLKLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9878787878787878787878787656565656565656533333343343434342121212121212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!           popopopopopopoponmnmnmnmnmnmnmnmnmnmnmnmlklklklklklklklkjijijijijijijijighghghghghghghgheeeeeefefefefefefefefefedcdcdcdcdcdcdcdcdcdcdcdcbabababababababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOMNMNMNMNNMNMNMMMLKLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:9:9:9878787878787878787656565656565656565656543434343343434332121212121212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!            popopopopopopoponmnmnmnmnmnmnmnmnmnmnmnmlklklklklklklklkjijijijijijijijighghghghghghghghfefefefefefefefefefefefedcdcdcdcdcdcdcdcdcdcdcdcbabababababababababababa`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOMNMNMNMNMMMNMNMNLKLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:9:9:9:9878787878787878765656565656565656565656543434343333343432121212121212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!                       - - - - - - - - - - - -             - - - - - - - - - - - -             - - - - - - - - - - - -             - - - - - - - - - - - -             - - - - - - - - -             - - - - - - - -             - - - - - - - - - - -             - - - - - - - - - - - -          - - - - - - - - - - - -         - - - - - - - - - - - - ppoonnmmHHGGFFEE AABBCCDDiijjkkllFFEEDDCC**++,,--\\]]^^__VUUTTSSR)((''&&% 44556677\\]]^^__]]\\[[ZZ55443322 - -DDEEFFGGllmmnnooMMLLKKJJ%%$$##"",,--..//TTUUVVWWeeddccbb==<<;;::<<==>>??ddeeffggUUTTSSRR--,,++**$$%%&&''LLMMNNOOmmllkkjjEEDDCCBBBBCCDDEEmmggffee;;::9933 ())**++,UVVWWXXYaa``__^^99887766@@AABBCChhiijjkkQQPPOONN))((''&&(())**++PPQQRRSSiihhggffAA@@??>>8899::;;``aabbccYYXXWWVV1100//..  !!""##HHIIJJKKppppoonnIIHHGGFF!!  - - 00112233XXYYZZ[[\\[[ZZYY**))(('' >>??@@AAppppoonnDDCCBBAA<<==>>??ddeeffggUUTTSSRR--,,++**$$%%&&''LLMMNNOOmmllkkjjEEDDCCBB 44556677\\]]^^__]]\\[[ZZ55443322 - -DDEEFFGGllmmnnooMMLLKKJJ%%$$##"",,--..//TTUUVVWWeeddccbb==<<;;:: JJKKLLMM``__^^]]..--,,++ 01122334]^^__``allkkjjiiDDCCBBAA EEFFGGHHmmnnooppBBAA@@?? ..//0011``aabbccQPONMMLL%$$##""!8899::;;``aabbccYYXXWWVV1100//..  !!""##HHIIJJKKppppoonnIIHHGGFF!!  - - 00112233XXYYZZ[[aa``__^^99887766@@AABBCChhiijjkkQQPPOONN))((''&&(())**++PPQQRRSSiihhggffAA@@??>>FFGGHHIIddccbbaa221100//,--..//0YZZ[[\\]]]\\[[ZZ55443322 - -DDEEFFGGllmmnnooMMLLKKJJ%%$$##"",,--..//TTUUVVWWeeddccbb==<<;;::<<==>>??ddeeffggUUTTSSRR--,,++**$$%%&&''LLMMNNOOmmllkkjjEEDDCCBB 44556677\\]]^^__XXWWVVUU&&%%$$##BBCCDDEEmmlkjihg@@??>>==@@AABBCChhiijjkkQQPPOONN))((''&&(())**++PPQQRRSSiihhggffAA@@??>>8899::;;``aabbccYYXXWWVV1100//..  !!""##HHIIJJKKppppoonnIIHHGGFF!!  - - 00112233XXYYZZ[[aa``__^^99887766!!""##$$SSTTUUVV\\[[ZZYY**))(('' - - 567899::abbccddehhggffee@@??>>==!!""##$$IIJJKKLLppoonnmm>>==<<;; - - 223399::ddeeffggKKJJIIHH! <<==>>??ddeeffggUUTTSSRR--,,++**$$%%&&''LLMMNNOOmmllkkjjEEDDCCBB 44556677\\]]^^__]]\\[[ZZ55443322 - -DDEEFFGGllmmnnooMMLLKKJJ%%$$##"",,--..//TTUUVVWWeeddccbb==<<;;:: JJKKLLMM``__^^]]..--,,++ 01122334]^^__``aYYXXWWVV1100//..  !!""##HHIIJJKKppppoonnIIHHGGFF!!  - - 00112233XXYYZZ[[aa``__^^99887766@@AABBCChhiijjkkQQPPOONN))((''&&(())**++PPQQRRSSiihhggffAA@@??>>8899::;;``aabbccTTSSMMLL""!! FFGGHHIIgffeeddc<<;;::99 DDEEFFGGllmmnnooMMLLKKJJ%%$$##"",,--..//TTUUVVWWeeddccbb==<<;;::<<==>>??ddeeffggUUTTSSRR--,,++**$$%%&&''LLMMNNOOmmllkkjjEEDDCCBB 44556677\\]]^^__]]\\[[ZZ55443322 - -%%&&''((WWXXYYZZXXWWVVUU&&%%$$##;;<<==>>effgghijddccbbaa<<;;::99%%&&''((MMNNOOPPggffeedd::993322 - - ;;<<==>>mmnnooppGGFFEEDD@@AABBCChhiijjkkQQPPOONN))((''&&(())**++PPQQRRSSiihhggffAA@@??>>8899::;;``aabbccYYXXWWVV1100//..  !!""##HHIIJJKKppppoonnIIHHGGFF!!  - - 00112233XXYYZZ[[aa``__^^99887766!!""##$$SSTTUUVV\\[[ZZYY**))(('' - - 567899::abbccddeUUTTSSRR--,,++**$$%%&&''LLMMNNOOmmllkkjjEEDDCCBB 44556677\\]]^^__]]\\[[ZZ55443322 - -DDEEFFGGllmmnnooMMLLKKJJ%%$$##"",,--..//TTUUVVWWeeddccbb==<<;;::<<==>>??ddeeffggKKJJIIHH JJKKLLMMcbbaa``_87654332 - -  !!""##HHIIJJKKppppoonnIIHHGGFF!!  - - 00112233XXYYZZ[[aa``__^^99887766@@AABBCChhiijjkkQQPPOONN))((''&&(())**++PPQQRRSSiihhggffAA@@??>>8899::;;``aabbccYYXXWWVV1100//.. ))**++,,[[\\]]^^TTSSMMLL""!! ??@@AABBklmmnnoo``__^^]]88776655 ))**++,,QQRRSSTTccbbaa``1100//.. ??@@AABBppoonnmmCCBBAA@@DDEEFFGGllmmnnooMMLLKKJJ%%$$##"",,--..//TTUUVVWWeeddccbb==<<;;::<<==>>??ddeeffggUUTTSSRR--,,++**$$%%&&''LLMMNNOOmmllkkjjEEDDCCBB 44556677\\]]^^__]]\\[[ZZ55443322 - -%%&&''((WWXXYYZZXXWWVVUU&&%%$$##;;<<==>>effgghijQQPPOONN))((''&&(())**++PPQQRRSSiihhggffAA@@??>>8899::;;``aabbccYYXXWWVV1100//..  !!""##HHIIJJKKppppoonnIIHHGGFF!!  - - 00112233XXYYZZ[[aa``__^^99887766@@AABBCChhiijjkkGGFFEEDD!!""##$$SSTTUUVV_^^]]\\[21100//.$$%%&&''LLMMNNOOmmllkkjjEEDDCCBB 44556677\\]]^^__]]\\[[ZZ55443322 - -DDEEFFGGllmmnnooMMLLKKJJ%%$$##"",,--..//TTUUVVWWeeddccbb==<<;;::<<==>>??ddeeffggUUTTSSRR--,,++**--..//00__``aabbKKJJIIHHCCDDEEFFppppoonn\\[[ZZYY44332211 - - --..//00UUVVWWXX__^^]]\\--,,++**CCDDEEFFlkjihggf??>>==<< !!""##HHIIJJKKppppoonnIIHHGGFF!!  - - 00112233XXYYZZ[[aa``__^^99887766@@AABBCChhiijjkkQQPPOONN))((''&&(())**++PPQQRRSSiihhggffAA@@??>>8899::;;``aabbccYYXXWWVV1100//.. ))**++,,[[\\]]^^TTSSMMLL""!! ??@@AABBklmmnnooMMLLKKJJ%%$$##"",,--..//TTUUVVWWeeddccbb==<<;;::<<==>>??ddeeffggUUTTSSRR--,,++**$$%%&&''LLMMNNOOmmllkkjjEEDDCCBB 44556677\\]]^^__]]\\[[ZZ55443322 - -DDEEFFGGllmmnnooCCBBAA@@%%&&''((WWXXYYZZ[ZZYYXXW.--,,++*(())**++PPQQRRSSiihhggffAA@@??>>8899::;;``aabbccYYXXWWVV1100//..  !!""##HHIIJJKKppppoonnIIHHGGFF!!  - - 00112233XXYYZZ[[aa``__^^99887766@@AABBCChhiijjkkQQPPOONN))((''&&11223399ccddeeffGGFFEEDD GGHHIIJJmmllkkjjXXWWVVUU00//..-- - - 11223344YYZZ[[\\[[ZZYYXX))((''&&GGHHIIJJfeeddccb;;::9987 $$%%&&''LLMMNNOOmmllkkjjEEDDCCBB 44556677\\]]^^__]]\\[[ZZ55443322 - -DDEEFFGGllmmnnooMMLLKKJJ%%$$##"",,--..//TTUUVVWWeeddccbb==<<;;::<<==>>??ddeeffggUUTTSSRR--,,++**--..//00__``aabbKKJJIIHHCCDDEEFFppppoonnIIHHGGFF!!  - - 00112233XXYYZZ[[aa``__^^99887766@@AABBCChhiijjkkQQPPOONN))((''&&(())**++PPQQRRSSiihhggffAA@@??>>8899::;;``aabbccYYXXWWVV1100//..  !!""##HHIIJJKKppppoonn??>>==<< - -))**++,,[[\\]]^^WVVUUTTS*))((''&,,--..//TTUUVVWWeeddccbb==<<;;::<<==>>??ddeeffggUUTTSSRR--,,++**$$%%&&''LLMMNNOOmmllkkjjEEDDCCBB 44556677\\]]^^__]]\\[[ZZ55443322 - -DDEEFFGGllmmnnooMMLLKKJJ%%$$##"" - - ::;;<<==ggmmnnooCCBBAA@@ !!""##$KKLLMMNOiihhggffYYXXWWVVTTSSRRQQ,,++**)) 55667788]]^^__``WWVVUUTT%%$$##"" !!KKLLMMSSbaa``__^65433221 - - (())**++PPQQRRSSiihhggffAA@@??>>8899::;;``aabbccYYXXWWVV1100//..  !!""##HHIIJJKKppppoonnIIHHGGFF!!  - - 00112233XXYYZZ[[aa``__^^99887766@@AABBCChhiijjkkQQPPOONN))((''&&11223399ccddeeffGGFFEEDD GGHHIIJJmmllkkjjEEDDCCBB 44556677\\]]^^__]]\\[[ZZ55443322 - -DDEEFFGGllmmnnooMMLLKKJJ%%$$##"",,--..//TTUUVVWWeeddccbb==<<;;::<<==>>??ddeeffggUUTTSSRR--,,++**$$%%&&''LLMMNNOOmmggffee;;::9933 --..//00__``aabbSRQPONMM&%%$$##" - - 00112233XXYYZZ[[aa``__^^99887766@@AABBCChhiijjkkQQPPOONN))((''&&(())**++PPQQRRSSiihhggffAA@@??>>8899::;;``aabbccYYXXWWVV1100//..  !!""##HHIIJJKKppppoonnIIHHGGFF!!  >>??@@AAppppoonn??>>==<< - -$%%&&''(PQRSSTTUeeddccbbUUTTSSRRPPOONNMM((''&&%%99::;;<>??ddeeffggUUTTSSRR--,,++**$$%%&&''LLMMNNOOmmllkkjjEEDDCCBB 44556677\\]]^^__]]\\[[ZZ55443322 - -DDEEFFGGllmmnnooMMLLKKJJ%%$$##"" - - ::;;<<==ggmmnnooCCBBAA@@ !!""##$KKLLMMNOiihhggffAA@@??>>8899::;;``aabbccYYXXWWVV1100//..  !!""##HHIIJJKKppppoonnIIHHGGFF!!  - - 00112233XXYYZZ[[aa``__^^99887766@@AABBCChhiijjkkQQPPOONN))((''&&(())**++PPQQRRSSddccbbaa221100//11223399ccddeeffLLKKJJII"!!  44556677\\]]^^__]]\\[[ZZ55443322 - -DDEEFFGGllmmnnooMMLLKKJJ%%$$##"",,--..//TTUUVVWWeeddccbb==<<;;::<<==>>??ddeeffggUUTTSSRR--,,++**$$%%&&''LLMMNNOOmmllkkjjEEDDCCBBBBCCDDEEmmggffee;;::9933 ())**++,UVVWWXXYaa``__^^QQPPOONNLLKKJJII$$##""!!==>>??@@eeffgghhJJIIHHGG&&''(())XXYYZZ[[ZYYXXWWV-,,++**) - - 00112233XXYYZZ[[aa``__^^99887766@@AABBCChhiijjkkQQPPOONN))((''&&(())**++PPQQRRSSiihhggffAA@@??>>8899::;;``aabbccYYXXWWVV1100//..  !!""##HHIIJJKKppppoonnIIHHGGFF!!  >>??@@AAppppoonn??>>==<< - -$%%&&''(PQRSSTTUeeddccbb==<<;;::<<==>>??ddeeffggUUTTSSRR--,,++**$$%%&&''LLMMNNOOmmllkkjjEEDDCCBB 44556677\\]]^^__]]\\[[ZZ55443322 - -DDEEFFGGllmmnnooMMLLKKJJ%%$$##"",,--..//TTUUVVWW``__^^]]..--,,++ - - ::;;<<==ggmmnnooHHGGFFEE8899::;;``aabbccYYXXWWVV1100//..  !!""##HHIIJJKKppppoonnIIHHGGFF!!  - - 00112233XXYYZZ[[aa``__^^99887766@@AABBCChhiijjkkQQPPOONN))((''&&(())**++PPQQRRSSiihhggffAA@@??>>FFGGHHIIddccbbaa221100//,--..//0YZZ[[\\]]]\\[[ZZMMLLKKJJIIHHGGFF!!  - - 00112233XXYYZZ[[aa``__^^99887766@@AABBCChhiijjkkQQPPOONN))((''&&(())**++PPQQRRSSiihhggffAA@@??>>8899::;;``aabbccLLKKJJII$$%%&&''VVWWXXYYMMLLKKJJ%%$$##""<<==>>??EEDDCCBB 44556677\\]]^^__]]\\[[ZZ55443322 - -DDEEFFGGllmmnnooMMLLKKJJ%%$$##"",,--..//TTUUVVWWeeddccbb==<<;;::<<==>>??ddeeffggHHGGFFEE(())**++ZZ[[\\]]IIHHGGFF!! @@AABBCCAA@@??>>8899::;;``aabbccYYXXWWVV1100//..  !!""##HHIIJJKKppppoonnIIHHGGFF!!  - - 00112233XXYYZZ[[aa``__^^99887766@@AABBCChhiijjkkDDCCBBAA,,--..//^^__``aaEEDDCCBBDDEEFFGG==<<;;::<<==>>??ddeeffggUUTTSSRR--,,++**$$%%&&''LLMMNNOOmmllkkjjEEDDCCBB 44556677\\]]^^__]]\\[[ZZ55443322 - -DDEEFFGGllmmnnoo@@??>>== 00112233bbccddeeAA@@??>> !!""##HHIIJJKK99887766@@AABBCChhiijjkkQQPPOONN))((''&&(())**++PPQQRRSSiihhggffAA@@??>>8899::;;``aabbccYYXXWWVV1100//..  !!""##HHIIJJKKpphhggff<<;;::99 - - - -99::;;<>??ddeeffggUUTTSSRR--,,++**$$%%&&''LLMMNNOOeeddccbb33221100 ==>>??@@aa``__^^99887766(())**++PPQQRRSS1100//..  !!""##HHIIJJKKppppoonnIIHHGGFF!!  - - 00112233XXYYZZ[[aa``__^^99887766@@AABBCChhiijjkkQQPPOONN))((''&&(())**++PPQQRRSSaa``__^^//..--,,AABBCCDD]]\\[[ZZ55443322 - -,,--..//TTUUVVWW--,,++**$$%%&&''LLMMNNOOmmllkkjjEEDDCCBB 44556677\\]]^^__]]\\[[ZZ55443322 - -DDEEFFGGllmmnnooMMLLKKJJ%%$$##"",,--..//TTUUVVWW]]\\[[ZZ++**))((EEFFGGHHYYXXWWVV1100//.. - - 00112233XXYYZZ[[))((''&&(())**++PPQQRRSSiihhggffAA@@??>>8899::;;``aabbccYYXXWWVV1100//..  !!""##HHIIJJKKppppoonnIIHHGGFF!!  - - 00112233XXYYZZ[[YYXXWWVV''&&%%$$IIJJKKLLUUTTSSRR--,,++** 44556677\\]]^^__%%$$##"",,--..//TTUUVVWWeeddccbb==<<;;::<<==>>??ddeeffggUUTTSSRR--,,++**$$%%&&''LLMMNNOOmmllkkjjEEDDCCBB 44556677\\]]^^__UUTTSSMM##""!! !!""##MMSSTTUUQQPPOONN))((''&&8899::;;``aabbccddeefpvnXv`f~HXQJ`ےbHAZp˂rZ|ddrtA~f`f`vXJXQrے`JXbtlJtArd|ZdQ`f~HfpvnXvےbHAZp˂rXQJ`tAJltbdQZpfHf`vXnvpے`JXQr˂pZHAb|ZdQbtlJtArdnXv`f~fpvrXQJ`ےbHAtbdQZ|drtAJlfH~~f`XQHAb˂p`p`JXQJtArdlJtnXv`f~HfpvrXQJ`ےbHAZp˂|drtAJlbnvfH~f`vXpZHAbے`JXQr˂JtArd|ZdQbtlHfpvnXv`fHZp˂rXQJ`ےJltbdQZ|drf`vXnvpfH~ZHAbbے`btllJtAJfpvf~HXv`fZp˂rXQJ`ےbHAtbdQZ|drJltnvpfH~XQr˂pZHAbے`JbtlJtArd|ZdQ`f~HfpvnXvےbHAZp˂rXQJ`tAJltbdQZpfHf`vXnvpے`JXQr˂pZHAbbtdlJtAnXv`v`f`AZprXQJ`˂rXnXv`f~HfpvbHAZp˂rXQJ`ےrtAJlJltvXnnvpZAbےQr˂pJtArd|ZdQbtlHfpvnXv`fHZp˂rXQJ`ےJltbdQZ|drf`vXnvpfH~XQr˂pZHAbے`JbtlJtArd|ZdQ`f~HfpvnrXQJےbHAZp˂|drtAJltbdQZf`vXvXnے`JXQJXQrrbt璂|ZdQArd|`f~HfpvnXvےbHAZp˂rXQJ`tAJltbdQZpfHf`vXnvpے`JXQr˂pZHAb|ZdQbtlJtArdnXv`f~fpvrXQJ`ےbHAtbdQZ|drtAJlnvpfH~f`vXے`JXQJXQrJtArdrd|nvffpv~HfrXQJ`ےbHAZp˂|drtAJlbnvfH~f`vXpZHAbے`JXQr˂JtArd|ZdQbtlHfpvnXv`fHZp˂rXQJ`ےJltbdQZ|drf`vXnvpfH~XQr˂pZHAbے`J|ZdQbdQbtf~H~Hfp˂rXQbAZp˂QJ`ےf~HfpvnXv`p˂rXQJ`ےJlttbdQbdQZ|vp`vfH~`JXQrZHAb|ZdQbtlJtArdnXv`f~fpvrXQJ`ےbHAtbdQZ|drtAJlnvpfH~f`vXpZHAbے`JXQr˂JtArd|ZdQbtlHfpvnXv`ےHAZp˂rXQJ`tAJltbdQZ|drnfvpfHr˂p˂pZHAlJA|btlJZdQbtHfpvnXv`fHZp˂rXQJ`ےJltbdQZ|drf`vXnvpfH~XQr˂pZHAbے`JbtlJtArd|ZdQ`f~HfpvnrXQJےbHAZp˂|drtAJltbdQZfH~f`vXnvprے˂pZHA|ZdQZdQbt~HfpnXv`pvnےbHAZp˂rXQJ`tAJltbdQZpfHf`vXnvpے`JXQr˂pZHAb|ZdQbtlJtArdnXv`f~fpvrXQJ`ےbHAtbdQZ|drtAJlnvpfH~f`vXpZHAbے`JXQr˂tlJlJtArfpvvnXJ`ےrXQJbHAZfpvnXv`f~HXQJ`ےbHAZdrtAJZ|l`vXnXnvvpf˂pZJXQrbtlJtArd|ZdQ`f~HfpvnrXQJےbHAZp˂|drtAJltbdQZfH~f`vXnvpے`JXQr˂pZHA|ZdQbtlJfpvnXv`f~Zp˂rXQJ`ےbHAtbdQZ|drtAJl`vXnXnvZHAbbے`ZdQbtAr|ZlJtnXv`f~fpvrXQJ`ےbHAtbdQZ|drtAJlnvpfH~f`vXpZHAbے`JXQr˂JtArd|ZdQbtlHfpvnXv`ےHAZp˂rXQJ`tAJltbdQZ|drf`vXnvpfH~`JXQrXQr˂btdlJtAvnXf~fpXv`fZp˂rXQJ`ےJltbdQZ|drf`vXnvpfH~XQr˂pZHAbے`JbtlJtArd|ZdQ`f~HfpvnrXQJےbHAZp˂|drtAJltbdQZfH~f`vXnvpے`JXQr˂pZHAtArdd|ZnXHfv`fbHAZp`ےbrXQJ`nXv`f~HfpvbHAZp˂rltbtbdQZvpfpfH~ے`JXQHAbے˂pZHAJtArd|ZdQbtlHfpvnXv`ےHAZp˂rXQJ`tAJltbdQZ|drf`vXnvpfH~XQr˂pZHAbے`JXQbtlJtArdnXv`f~HfpvrXQJ`ےbHAZp˂|drtAJltbdQZvpfpfH~ے`JXQJXQrlJtAdQbtArdZ`f~HfpvnrXQJےbHAZp˂|drtAJltbdQZfH~f`vXnvpے`JXQr˂pZHA|ZdQbtlJfpvnXv`f~Zp˂rXQJ`ےbHAtbdQZ|drtAJlnvpfH~f`vX˂pZpZHAb|ZdQbdQbt璕v`fvnXfpvrXQJ`ےbHAtbdQZ|drtAJlnvpfH~f`vXpZHAbے`JXQr˂JtArd|ZdQbtlHfpvnXv`ےHAZp˂rXQJ`tAJltbdQZ|drf`vXnvpfH~XQr˂pZHAbے`JXQ|ZdQbdQbtpvnnXv˂rXQHAZp˂ےJlf~HfpvnXv`p˂rXQJ`ےdQZ||drH~ff`vrZHA`JXQrbے`|ZdQbtlJfpvnXv`f~Zp˂rXQJ`ےbHAtbdQZ|drtAJlnvpfH~f`vXpZHAbے`JrbtJtArd|ZdQ`f~HfpvnXvےbHAZp˂rXQJ`tAJltbdQZ|dtAH~ff`vrے˂pZHArd|lJtArQbtlHfpvnXv`ےHAZp˂rXQJ`tAJltbdQZ|drf`vXnvpfH~XQr˂pZHAbے`JXQbtlJtArdnXv`f~HfpvrXQJ`ےbHAZp˂|drtAJltbdQZfH~f`vXnvpHAbےے`JtlJlJtAr~Hfpv`fnrXQJےbHAZp˂|drtAJltbdQZfH~f`vXnvpے`JXQr˂pZHA|ZdQbtlJfpvnXv`f~Zp˂rXQJ`ےbHAtbdQZ|drtAJlnvpfH~f`vXpZHAbے`Jrbttl|lJtArXv`f`f~JbHArXQJtbdQZfpvnXv`p˂rXQJ`ےbHAZdrtAJtAJl`vXnXnvbے`˂pZAJXQrbtlJtArdnXv`f~HfpvrXQJ`ےbHAZp˂|drtAJltbdQZfH~f`vXnvpے`JXQr˂lJtAd|ZdQbtlHfpvnXv`f~Zp˂rXQJ`ےbHAtbdQZ|drJlt`vXnXnv`JXQrXQr˂ZdQbtd|ZJfpvnXv`f~Zp˂rXQJ`ےbHAtbdQZ|drtAJlnvpfH~f`vXpZHAbے`JrbtJtArd|ZdQ`f~HfpvnXvےbHAZp˂rXQJ`tAJltbdQZ|dtAf`vXnvpfے`J`JXQrXQr˂tArdd|ZvnX~Hfp`ےHAZp˂rXQJ`tAJltbdQZ|drf`vXnvpfH~XQr˂pZHAbے`JXQbtlJtArdnXv`f~HfpvrXQJ`ےbHAZp˂|drtAJltbdQZfH~f`vXnvpے`JXQr˂l|ZdQZdQbtdtl~HfHfpvZp˂`ےbA|drtAJlnXv`f~HXQJ`ےbHAZp˂rltbtbdQZf`pfHXJXQrb`JX˂pZHAJtArd|ZdQ`f~HfpvnXvےbHAZp˂rXQJ`tAJltbdQZ|dtAf`vXnvpfے`JXQr˂pZHAb|ZdQbtlJtArdnXv`f~HfpvrXQJ`ےbHAZp˂|drtAJlbnvvp`pfH~˂pZpZHAbJArddQbt璀nXv`f~HfpvrXQJ`ےbHAZp˂|drtAJltbdQZfH~f`vXnvpے`JXQr˂lJtAd|ZdQbtlHfpvnXv`f~Zp˂rXQJ`ےbHAtbdQZ|drJltnvpfH~XQHAb˂p`p`JXQ|ZdQbdQbt璕vf~HvnXZp˂rXQJ`ےbHAtbdQZ|drtAJlnvpfH~f`vXpZHAbے`JrbtJtArd|ZdQ`f~HfpvnXvےbHAZp˂rXQJ`tAJltbdQZ|dtAf`vXnvpfے`JXQr˂pZHAbbtllJtAJfpvpvnnXvrXQJ`ZrXtAJltbdQZf~HfpvbHAZp˂rXQJ`ےdQtAJl|dtvXnnvppZHAQr˂pbJAd|ZdQbtlHfpvnXv`f~Zp˂rXQJ`ےbHAtbdQZ|drJltnvpfH~XQr˂pZHAbے`JbtlJtArd|ZdQ`f~HfpvnXvےbHAZp˂rXQJ`tAJltbdQZp`vXvXnvpHAbےے`J|ZdQlJtAr`f~HfpvnXvےbHAZp˂rXQJ`tAJltbdQZ|dtAf`vXnvpfے`JXQr˂pZHAb|ZdQbtlJtArdnXv`f~HfpvrXQJ`ےbHAZp˂|drtAJlbnvfH~f`vXے`JXQJXQrrbttl|lJtArfpvv`f~rXQJ`ےbHAZp˂|drtAJltbdQZfH~f`vXnvpے`JXQr˂lJtAd|ZdQbtlHfpvnXv`f~Zp˂rXQJ`ےbHAtbdQZ|drJltnvpfH~XQr˂pZHAbے`JJtArdrd|~HXv`p`pvbHAQJ`ےtbdQZ|drfpvnXv`p˂rXQJ`ےbHAZtbdQbdQZ|vpfHfH~bے`ZHAb|ZdQbtlJtArdnXv`f~HfpvrXQJ`ےbHAZp˂|drtAJlbnvfH~f`vXpZHAbے`JXQr˂JtArd|ZdQbtlHfpvnXv`fHZp˂rXQJ`ےJltbdQZ|drnvpvpfHfے`J`JXQrXQr˂btlZdQbtHfpvnXv`f~Zp˂rXQJ`ےbHAtbdQZ|drJltnvpfH~XQr˂pZHAbے`JbtlJtArd|ZdQ`f~HfpvnXvےbHAZp˂rXQJ`tAJltbdQZpfHf`vXnvpr˂p˂pZHAl|ZdQZdQbtdtlnXv`fvnےbHAZp˂rXQJ`tAJltbdQZ|dtAf`vXnvpfے`JXQr˂pZHAb|ZdQbtlJtArdnXv`f~HfpvrXQJ`ےbHAZp˂|drtAJlbnvfH~f`vXpZHAbے`JXQr˂|ZdQZdQbtfpvvnXnrXQJZp˂bHAZp|drtAJltbdQZ|drf`vXnvpfH~XQr˂pZHAbے`JbtlJtArd|ZdQ`f~HfpvnrXQJےbHAZp˂|drtAJltbdQZfH~f`vXnvpے`JXQHAXQrb㉀ۑpۑpJAHf۝`vXnvZ|drQtJl|drtAJlnvpfH~f`vXpZHAbے`JXQr˂JtArd|ZdQbtlHfpvnXv`ےHAZp˂rXQJ`tAJltbdQZ|drf`vXnvpfH~r˂p˂pZHAJAHrr󙐂ˁ`XnvˍpfH~rQtJltbAdtAJltbdQZfH~f`vXnvpے`JXQr˂pZHA|ZdQbtlJfpvnXv`f~Zp˂rXQJ`ےbHAtbdQZ|drtAJlnvpfH~f`vXZHAbbے`ˁ`ZQXZQXb㉀pfH~ㅐf۝`vtbAdZ|dtbdQZ|drf`vXnvpfH~XQr˂pZHAbے`JXQbtlJtArdnXv`f~HfpvrXQJ`ےbHAZp˂|drtAJltbdQZfH~f`vXnvpے`JXQJXQrb㉀ۑpۑpJAHf۝`vXnvZ|drQtJl|drtAJlnvpfH~f`vXpZHAbے`JrbtJtArd|ZdQ`f~HfpvnXvےbHAZp˂rXQJ`tAJltbdQZ|dtAf`vXnvpfZHAbr˂p˂p`Z`ZQXbㅐf۝`vXnvˍpfH~rQtJltbAdtAJltbdQZfH~f`vXnvpے`JXQr˂lJtAd|ZdQbtlHfpvnXv`f~Zp˂rXQJ`ےbHAtbdQZ|drJltnvpfH~ے`J`JXQrQXb㉀ۉۑpJXnvˍpfH~ㅐf۝`vtbAdZ|dtbdQZ|dtAf`vXnvpfے`JXQr˂pZHAb|ZdQbtlJtArdnXv`f~HfpvrXQJ`ےbHAZp˂|drtAJlbnvfH~f`vXXQr˂˂pZpJAHrAHr󙐂ˍpfH~ㅐf۝`vXnvZ|drQtJl|drJltnvpfH~XQr˂pZHAbے`JbtlJtArd|ZdQ`f~HfpvnXvےbHAZp˂rXQJ`tAJltbdQZpfHf`vXnvppZHAbHAbےˁ`Z`ZQXbㅐf۝`vXnvˍp|drQtJltbAdtAJlbnvfH~f`vXpZHAbے`JXQr˂JtArd|ZdQbtlHfpvnXv`fHZp˂rXQJ`ےJltbdQZ|drf`vXnvpfH~ے`J`JXQrQXb㉀ۑpJXnvˍpfH~rQtJltbAdZ|dtbdQZpfHf`vXnvpے`JXQr˂pZHAb|ZdQbtlJtArdnXv`f~fpvrXQJ`ےbHAtbdQZ|drtAJlnvpfH~f`vXXQr˂pZˁ`ZQXAHQXb㉀pfH~ㅐf۝`vtbAdZ|drQtJltijklmnopponmlkj \ No newline at end of file diff --git a/barcode-generator/Resources/data/qrv24_2.dat b/barcode-generator/Resources/data/qrv24_2.dat deleted file mode 100644 index 405fb37..0000000 Binary files a/barcode-generator/Resources/data/qrv24_2.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv24_3.dat b/barcode-generator/Resources/data/qrv24_3.dat deleted file mode 100644 index f270bac..0000000 Binary files a/barcode-generator/Resources/data/qrv24_3.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv25_0.dat b/barcode-generator/Resources/data/qrv25_0.dat deleted file mode 100644 index 14b0760..0000000 --- a/barcode-generator/Resources/data/qrv25_0.dat +++ /dev/null @@ -1,233 +0,0 @@ -tstststststststsrqrqrqrqpopopoponmnmnmnmkkkklklkjijijijijijijijihghghghgfefefefedcdcdcdcdcdcdcdcbabababa`_`_`_`_`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQQQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCBABABABABABABABA@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:9:9:9:9:987878787656565654343434343434343212121210/0/0/0/.-.-.-.-tstststststststsrqrqrqrqpopopoponmnmnmnmlklklklkjijijijijijijijihghghghgfefefefedcdcdcdcdcdcdcdcbabababa`_`_`_`_`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQRQPOPOPOPOPOPOPONMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCBABABABABABABABA@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:9:987878787878787656565654343434343212121212121210/0/0/0/.-.-.-.-tstststststststsrqrqrqrqpopopoponmnmnmnmlklklklkjijijijijijijijihghghghgfefefefedcdcdcdcdcdcdcdcbabababa`_`_`_`_`_^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCBABABABABA@?@?@?@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:98777777887878787656565654343434321212121212121210/0/0/0/.-.-.-.-tstststststststsrqrqrqrqpopopoponmnmnmnmlklklklkjijijijijijijijihghghghgfefefefedcdcdcdcdcdcdcdcbabababa`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSQQQQQRQRPOPOPOPOPOPOPOPONMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCBABABABA@?@?@?@?@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:97878787887878787656565654343434321212121212121210/0/0/0/.-.-.-.-tstststststststsrqrqrqrqpopopoponmnmnmnmlklklklkjijijijijihghghghghghghgfefefefedcdcdcdcdcdcdcdcbabababa`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSQRQRQRQRPOPOPOPOPOPOPOPONMNMNMNMLKLKLKLKLKJIJIJIJIJIJIJIHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCBABABABA@?@?@?@?@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:97878787887878777656565654343434321212121212121210/0/0/0/.-.-.-.-tstststststststsrqrqrqrqpopopoponmnmnmnmlklklkkkjijijijihghghghghghghghgfefefefedcdcdcdcdcdcdcdcbabababa`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYZYXWXWXWXWXWXWXWVUVUVUVUTSTSTSTSQRQRQRQRPOPOPOPOPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCBABABABA@?@?@?@?@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:97878787877878787656565654343434321212121212121210/0/0/0/.-.-.-.-tstststsrqrqrqrqrqrqrqrqpopopoponmnmnmnmkkklklkljijijijihghghghghghghghgfefefefedcdcdcdcdcdcdcdcbabababa`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUTSTSTSTSQRQRQRQRPOPOPOPOPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCBABABABA@?@?@?@?@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:97878787887656565656565654343434321212121212121210/0/0/0/.-.-.-.-tstststsrqrqrqrqrqrqrqrqpopopoponmnmnmnmklklklkljijijijihghghghghghghghgfefefefedcdcdcdcdcbababababababa`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUTSTSTSTSQRQRQRQRPOPOPOPOPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGFEFEFEFEFEDCDCDCDCDCDCDCBABABABA@?@?@?@?@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:97878787865656565656565654343434321212121212121210/0/0/0/.-.-.-.-tstststsrqrqrqrqrqrqrqrqpopopoponmnmnmnmklklklkljijijijihghghghghghghghgfefefefedcdcdcdcbabababababababa`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUTSTSTSTSQRQRQRQQPOPOPOPOPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGFEFEFEFEDCDCDCDCDCDCDCDCBABABABA@?@?@?@?@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:97777778765656565656565654343434321212121212121210/0/0/0/.-.-.-.-.-.-.-.-tstststsrqrqrqrqrqrqrqrqpopopoponmnmnmnmklklklkljijijijihghghghghghghghgfefefefedcdcdcdcbabababababababa`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUTSTSTSTSQQQQRQRQPOPOPOPOPONMNMNMNMNMNMNMLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGFEFEFEFEDCDCDCDCDCDCDCDCBABABABA@?@?@?@?@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:98787878765656565656565654343434321212121210/0/0/0/0/0/0/.-.-.-.-.-.-.-.-tstststsrqrqrqrqrqrqrqrqpopopoponmnmnmnmklklklkljijijijihghghghghghghghgfefefefedcdcdcdcbabababababababa`_`_`_`_^]^]^]^]^]\[\[\[\[\[\[\[ZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGFEFEFEFEDCDCDCDCDCDCDCDCBABABABA@?@?@?@?@?>=>=>=>=>=>=>=<;<;<;<;:9:9:9:987878787656565656565656543434343212121210/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-tstststsrqrqrqrqrqrqrqrqpopopoponmnmnmnmklklkkkkjijijijihghghghghghghghgfefefefedcdcdcdcbabababababababa`_`_`_`_^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGFEFEFEFEDCDCDCDCDCDCDCDCBABABABA@?@?@?@?>=>=>=>=>=>=>=>=<;<;<;<;:9:9:9:987878787656565656565656543434343212121210/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-tstststsrqrqrqrqpopopopopopopoponmnmnmnmkklklklkjijijijihghghghghgfefefefefefefedcdcdcdcbabababababababa`_`_`_`_^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKJIJIJIJIJIHGHGHGHGHGHGHGFEFEFEFEDCDCDCDCDCDCDCDCBABABABA@?@?@?@?>=>=>=>=>=>=>=>=<;<;<;<;:9:9:9:987878787656565656565656543434343212121210/0/0/0/0/0/0/0/.-.-.-.-.-,+,+,+tstststsrqrqrqrqpopopoponmnmnmnmnmnmnmnmlklklklkjijijijihghghghgfefefefefefefefedcdcdcdcbabababababababa`_`_`_`_^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYXWXWXWXWXWVUVUVUVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEDCDCDCDCDCDCDCDCBABABABA@?@?@?@?>=>=>=>=>=>=>=>=<;<;<;<;:9:9:9:987878787656565656565656543434343212121210/0/0/0/0/0/0/0/.-.-.-.-,+,+,+,+tstststsrqrqrqrqpopopoponmnmnmnmlklklklklklklklkjijijijihghghghgfefefefefefefefedcdcdcdcbabababababababa`_`_`_`_^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSRQRQRQQQPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEDCDCDCDCDCDCDCDCBABABABA@?@?@?@?>=>=>=>=>=>=>=>=<;<;<;<;:9:9:9:977777878656565656543434343434343212121210/0/0/0/0/0/0/0/.-.-.-.-,+,+,+,+tstststsrqrqrqrqpopopoponmnmnmnmkkkkklkllklklklkjijijijihghghghgfefefefefefefefedcdcdcdcbababababa`_`_`_`_`_`_`_^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUVUTSTSTSTSTSTSTSQQQRQRQRPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEDCDCDCDCDCBABABABABABABA@?@?@?@?>=>=>=>=>=>=>=>=<;<;<;<;:9:9:9:978787878656565654343434343434343212121210/0/0/0/0/0/0/0/.-.-.-.-,+,+,+,+tstststsrqrqrqrqpopopoponmnmnmnmklklklkllklklklkjijijijihghghghgfefefefefefefefedcdcdcdcbabababa`_`_`_`_`_`_`_`_^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSTSTSTSTSQRQRQRQRPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEDCDCDCDCBABABABABABABABA@?@?@?@?>=>=>=>=>=>=>=>=<;<;<;<;:9:9:9:978787878656565654343434343434343212121210/0/0/0/0/0/0/0/.-.-.-.-,+,+,+,+tstststsrqrqrqrqpopopoponmnmnmnmklklklkllklklklkjijijijihghghghgfefefefefefefefedcdcdcdcbabababa`_`_`_`_`_`_`_`_^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSTSRQRQRQQRQRQRQRPOPOPOPONMNMNMNMNMLKLKLKLKLKLKLKJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEDCDCDCDCBABABABABABABABA@?@?@?@?>=>=>=>=>=>=>=>=<;<;<;<;:9:9:9:978787878656565654343434343434343212121210/0/0/0/0/.-.-.-.-.-.-.-,+,+,+,+tstststsrqrqrqrqpopopoponmnmnmnmklklklkliiiiiijijijijijihghghghgfefefefefefefefedcdcdcdcbabababa`_`_`_`_`_`_`_`_^]^]^]^]\[\[\[\[\[ZYZYZYZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQQQQQRQQRQRQRQRPOPOPOPONMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEDCDCDCDCBABABABABABABABA@?@?@?@?>=>=>=>=>=<;<;<;<;<;<;<;:9:9:9:978787878656565654343434343434343212121210/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+tstststsrqrqrqrqpopopoponmnmnmnmklklklkljijijijijijijijihghghghgfefefefefefefefedcdcdcdcbabababa`_`_`_`_`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQQRQRQRQRPOPOPOPONMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEDCDCDCDCBABABABABABABABA@?@?@?@?>=>=>=>=<;<;<;<;<;<;<;<;:9:9:9:978787877656565654343434343434343212121210/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+tstststsrqrqrqrqpopopoponmnmnmnmklklklkkjijijijijijijijihghghghgfefefefefedcdcdcdcdcdcdcbabababa`_`_`_`_`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQQRQRQQQQPOPOPOPONMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIHGHGHGHGHGFEFEFEFEFEFEFEDCDCDCDCBABABABABABABABA@?@?@?@?>=>=>=>=<;<;<;<;<;:9:9:9:9:9:9:977778787656565654343434343434343212121210/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('&%&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!        - - - - ,+,+,+,+*)*)*)*)*)*)*)*)('('('('&%&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!        - - - - ,+,+,+,+*)*)*)*)*)*)*)*)('('('('&%&%&%&%&%$#$#$#$#$#$#$#"!"!"!"!        - - - - ,+,+,+,+*)*)*)*)*)*)*)*)('('('('&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!        - - - - ,+,+,+,+*)*)*)*)*)*)*)*)('('('('&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!        - - - - ,+,+,+,+*)*)*)*)*)*)*)*)('('('('&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!        - - - - ,+,+,+,+*)*)*)*)*)*)*)*)('('('('&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!        - - - - ,+,+,+,+*)*)*)*)*)('('('('('('('&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!        - - - - - - - ,+,+,+,+*)*)*)*)('('('('('('('('&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!        - - - - - - - - ,+,+,+,+*)*)*)*)('('('('('('('('&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!        - - - - - - - - ,+,+,+,+*)*)*)*)('('('('('('('('&%&%&%&%$#$#$#$#$#"!"!"!"!"!"!"!        - - - - - - - - ,+,+,+,+*)*)*)*)('('('('('('('('&%&%&%&%$#$#$#$#"!"!"!"!"!"!"!"!        - - - - - - - - ,+,+,+,+*)*)*)*)('('('('('('('('&%&%&%&%$#$#$#$#"!"!"!"!"!              - - - - - - - - ,+,+,+,+*)*)*)*)('('('('('('('('&%&%&%&%$#$#$#$#"!"!"!"!                - - - - - - - - ,+,+,+,+*)*)*)*)('('('('('('('('&%&%&%&%$#$#$#$#"!"!"!"!             - - - - - - - - ,+,+,+,+*)*)*)*)('('('('('&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!            - - - - - ,+,+,+,+*)*)*)*)('('('('&%&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!            - - - - ,+,+,+,+*)*)*)*)('('('('&%&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!            - - - - ,+,+,+,+*)*)*)*)('('('('&%&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!            - - - - ,+,+,+,+*)*)*)*)('('('('&%&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!            - - - - ,+*)*)*)*)*)*)*)('('('('&%&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!         - - - - ttssrrqq EEFFGGHHFFEEDDCC..//0011UTSRQQPPddeeffgg1100//..$$%%&&''qqppoonn8899::;;]]\\[[ZZ LLMMNNOOIIHHGGFF ``aabbcc55443322))**++,,XXWWQQPPopqqrrss%%$$##""00112233eeddccbbDDEEFFGGQQPPOONNXXYYZZ[[==<<;;::llmmnnoo))((''&&,,--..//ddccbbaa - - kkqqrrss<<==>>??YYXXWWVVPPQQRRSSEEDDCCBBppoonnmmIIJJKKLLBBAA@@??22334455OONNMMLLhhiijjkk--,,++**(())**++mmllkkjj<<==>>??YYXXWWVVPPQQRRSSEEDDCCBBddeeffgg1100//..--..//00OONNMMLLttttssrr!! 44556677aa``__^^ - -HHIIJJKKMMLLKKJJ - - \\]]^^__99887766ppqqrrss%%$$##""00112233``__^^]] ttttssrr@@AABBCCUUTTSSRRTTUUVVWWAA@@??>>llkkjjiiMMNNOOPP>>==77666677==>>KKJJIIHHllmmnnoo))((''&&,,--..//iihhggff@@AABBCCUUTTSSRRTTUUVVWWAA@@??>>hhiijjkk--,,++**11223344KKJJIIHHqqppoonn8899::;;]]\\[[ZZ LLMMNNOOIIHHGGFF ``aabbcc55443322 !!""##ttttssrr!! 44556677\\[[ZZYYqqponmlkDDEEFFGGQQPPOONNXXYYZZ[[==<<;;::hhggffeeQQRRSSTT55443322??@@AABBGGFFEEDDppqqrrss%%$$##""00112233eeddccbbDDEEFFGGQQPPOONNXXYYZZ[[==<<;;::llmmnnoo))((''&&556677==GGFFEEDD !"##$mmllkkjj<<==>>??YYXXWWVVPPQQRRSSEEDDCCBBddeeffgg1100//..$$%%&&''qqppoonn8899::;;XXWWQQPPkjjiihhg HHIIJJKKMMLLKKJJ - - \\]]^^__99887766ddccbbaa UUVVWWXX1100//..CCDDEEFFCCBBAA@@ !!""##ttttssrr!! 44556677aa``__^^ - -HHIIJJKKMMLLKKJJ - - \\]]^^__99887766ppqqrrss%%$$##"">>??@@AACCBBAA@@$%%&&''(iihhggff@@AABBCCUUTTSSRRTTUUVVWWAA@@??>>hhiijjkk--,,++**(())**++mmllkkjj<<==>>??OONNMMLLgffeeddc - - LLMMNNOOIIHHGGFF ``aabbcc55443322 !!""##``__^^]] - - YYZZ[[\\--,,++**GGHHIIJJ??>>==<;$$%%&&''qqppoonn8899::;;]]\\[[ZZ LLMMNNOOIIHHGGFF ``aabbcc55443322 !!""##ttttssrr!! BBCCDDEE??>>==77())**++,eeddccbbDDEEFFGGQQPPOONNXXYYZZ[[==<<;;::llmmnnoo))((''&&,,--..//iihhggff@@AABBCCKKJJIIHH##$$cbbaa``_PPQQRRSSEEDDCCBBddeeffgg1100//..$$%%&&''\\[[ZZYY - - ]]^^__``))((''&&KKLLMMNN:9877665(())**++mmllkkjj<<==>>??YYXXWWVVPPQQRRSSEEDDCCBBddeeffgg1100//..$$%%&&''qqppoonnFFGGHHII66554433,--..//0aa``__^^ - -HHIIJJKKMMLLKKJJ - - \\]]^^__99887766ppqqrrss%%$$##""00112233eeddccbbDDEEFFGGGGFFEEDD%%&&''((_^^]]\\[TTUUVVWWAA@@??>>hhiijjkk--,,++**(())**++XXWWVVUU aabbccdd%%$$##OOPPQQWW54433221,,--..//iihhggff@@AABBCCUUTTSSRRTTUUVVWWAA@@??>>hhiijjkk--,,++**(())**++mmllkkjjJJKKLLMM221100//01122334]]\\[[ZZ LLMMNNOOIIHHGGFF ``aabbcc55443322 !!""##ttttssrr!! 44556677aa``__^^ - -HHIIJJKKCCBBAA@@))**++,,[ZZYYXXWXXYYZZ[[==<<;;::llmmnnoo))((''&&,,--..//TTSSRRQQeeffgghhXXYYZZ[[100//..-00112233eeddccbbDDEEFFGGQQPPOONNXXYYZZ[[==<<;;::llmmnnoo))((''&&,,--..//iihhggffNNOOPPQQ..--,,++45566778YYXXWWVVPPQQRRSSEEDDCCBBddeeffgg1100//..$$%%&&''qqppoonn8899::;;]]\\[[ZZ LLMMNNOO??>>==77--..//00WVUTSRQQ - - \\]]^^__99887766ppqqrrss%%$$##""00112233ddeeffggPPOONNMMiijjkkll\\]]^^__-,,++**)44556677aa``__^^ - -HHIIJJKKMMLLKKJJ - - \\]]^^__99887766ppqqrrss%%$$##""00112233eeddccbbWWXXYYZZ**))((''9:;<==>>UUTTSSRRTTUUVVWWAA@@??>>hhiijjkk--,,++**(())**++mmllkkjj<<==>>??YYXXWWVVPPQQRRSS6655443311223344PPOONNMM ``aabbcc55443322 !!""##ttttssrr!! 44556677hhiijjkkLLKKJJIImmnnoopp``aabbcc)((''&&%8899::;;]]\\[[ZZ LLMMNNOOIIHHGGFF ``aabbcc55443322 !!""##ttttssrr!! 44556677aa``__^^ - -[[\\]]^^&&%%$$##??@@AABBQQPPOONNXXYYZZ[[==<<;;::llmmnnoo))((''&&,,--..//iihhggff@@AABBCCUUTTSSRRTTUUVVWW221100//556677==LLKKJJIIddeeffgg1100//..$$%%&&''qqppoonn8899::;;llmmnnooHHGGFFEE qqrrsstt ddeeffgg%$$##"! <<==>>??YYXXWWVVPPQQRRSSEEDDCCBBddeeffgg1100//..$$%%&&''qqppoonn8899::;;]]\\[[ZZ __``aabbCCDDEEFFMMLLKKJJ - - \\]]^^__99887766ppqqrrss%%$$##""00112233eeddccbbDDEEFFGGQQPPOONNXXYYZZ[[..--,,++>>??@@AAHHGGFFEEhhiijjkk--,,++**(())**++mmllkkjj<<==>>??ppqqrrssDDCCBBAA!!""##$$ttssrrqq - - hhiijjkk@@AABBCCUUTTSSRRTTUUVVWWAA@@??>>hhiijjkk--,,++**(())**++mmllkkjj<<==>>??YYXXWWVVccddeeffGGHHIIJJIIHHGGFF ``aabbcc55443322 !!""##ttttssrr!! 44556677aa``__^^ - -HHIIJJKKMMLLKKJJ - - \\]]^^__**))((''BBCCDDEEDDCCBBAAllmmnnoo))((''&&,,--..//iihhggff@@AABBCCttttssrr@@??>>==%%&&''((kkjjiihh - - qqrrssttDDEEFFGGQQPPOONNXXYYZZ[[==<<;;::llmmnnoo))((''&&,,--..//iihhggff@@AABBCCUUTTSSRRgghhiijjKKLLMMNNEEDDCCBBddeeffgg1100//..$$%%&&''qqppoonn8899::;;]]\\[[ZZ LLMMNNOOIIHHGGFF ``aabbcc&&%%$$##FFGGHHII@@??>>==ppqqrrss%%$$##""00112233eeddccbbDDEEFFGGqqppoonn<<;;::99))**++,,ggffeedd ttssrrqqHHIIJJKKMMLLKKJJ - - \\]]^^__99887766ppqqrrss%%$$##""00112233eeddccbbDDEEFFGGQQPPOONN - - kkqqrrssOOPPQQRSAA@@??>>hhiijjkk--,,++**(())**++mmllkkjj<<==>>??YYXXWWVVPPQQRRSSEEDDCCBBddeeffggJJKKLLMM<;:98776 !!""##ttttssrr!! 44556677aa``__^^ - -HHIIJJKKmmllkkjj88776655--..//00ccbbaa``ponmlkkjLLMMNNOOIIHHGGFF ``aabbcc55443322 !!""##ttttssrr!! 44556677aa``__^^ - -HHIIJJKKMMLLKKJJ ttttssrr - -TUVWWXXY==<<;;::llmmnnoo))((''&&,,--..//iihhggff@@AABBCCUUTTSSRRTTUUVVWWAA@@??>>hhiijjkkNNOOPPQQ65544332$$%%&&''qqppoonn8899::;;]]\\[[ZZ LLMMNNOOiihhggff4433221111223344__^^]]\\jiihhggf PPQQRRSSEEDDCCBBddeeffgg1100//..$$%%&&''qqppoonn8899::;;]]\\[[ZZ LLMMNNOOIIHHGGFFqqkkjjii YZZ[[\\]99887766ppqqrrss%%$$##""00112233eeddccbbDDEEFFGGQQPPOONNXXYYZZ[[==<<;;::llmmnnooWWXXYYZZ21100//.(())**++mmllkkjj<<==>>??YYXXWWVVPPQQRRSSeeddccbb00//..--55667788[[ZZYYXXfeeddccb - - TTUUVVWWAA@@??>>hhiijjkk--,,++**(())**++mmllkkjj<<==>>??YYXXWWVVPPQQRRSSEEDDCCBBhhggffee]^^__``a55443322 !!""##ttttssrr!! 44556677aa``__^^ - -HHIIJJKKMMLLKKJJ - - \\]]^^__99887766ppqqrrss[[\\]]^^.--,,++*,,--..//iihhggff@@AABBCCUUTTSSRRTTUUVVWWaa``__^^,,++**))99::;;<>ddccbbaa abbccdde1100//..$$%%&&''qqppoonn8899::;;]]\\[[ZZ LLMMNNOOIIHHGGFF ``aabbcc55443322 !!""##ttttssrr - -__``aabb*))((''&00112233eeddccbbDDEEFFGGQQPPOONNXXYYZZ[[]]\\[[ZZ((''&&%%==>>??@@NNMMLLKK&&''(())^]]\\[[Z - - \\]]^^__99887766ppqqrrss%%$$##""00112233eeddccbbDDEEFFGGQQPPOONNXXYYZZ[[==<<;;::##$$``__^^]] - - effgghhi--,,++**(())**++mmllkkjj<<==>>??YYXXWWVVPPQQRRSSEEDDCCBBddeeffgg1100//..$$%%&&''qqkkjjii ccddeeff&%%$$##"44556677aa``__^^ - -HHIIJJKKMMLLKKJJ - - \\]]^^__YYXXWWVV$$##""!!AABBCCDDJJIIHHGG**++,,--ZYYXXWWV ``aabbcc55443322 !!""##ttttssrr!! 44556677aa``__^^ - -HHIIJJKKMMLLKKJJ - - \\]]^^__99887766%%&&''((\\[[ZZYYijjkklmn))((''&&,,--..//iihhggff@@AABBCCUUTTSSRRTTUUVVWWAA@@??>>hhiijjkk--,,++**(())**++hhggffeegghhiijj! 8899::;;]]\\[[ZZ LLMMNNOOIIHHGGFF ``aabbccUUTTSSRRQQPPOONNXXYYZZ[[==<<;;::llmmnnoo))((''&&556677==GGFFEEDD !"##$mmllkkjj<<==>>??YYXXWWVVPPQQRRSSEEDDCCBBddeeffgg1100//..$$%%&&''qqppoonn8899::;;PPOONNMM$$%%&&''QQPPOONNMMLLKKJJ - - \\]]^^__99887766ppqqrrss%%$$##"">>??@@AACCBBAA@@$%%&&''(iihhggff@@AABBCCUUTTSSRRTTUUVVWWAA@@??>>hhiijjkk--,,++**(())**++mmllkkjj<<==>>??LLKKJJII(())**++MMLLKKJJIIHHGGFF ``aabbcc55443322 !!""##ttttssrr!! BBCCDDEE??>>==77())**++,eeddccbbDDEEFFGGQQPPOONNXXYYZZ[[==<<;;::llmmnnoo))((''&&,,--..//iihhggff@@AABBCCHHGGFFEE,,--..//IIHHGGFFEEDDCCBBddeeffgg1100//..$$%%&&''qqppoonnFFGGHHII66554433,--..//0aa``__^^ - -HHIIJJKKMMLLKKJJ - - \\]]^^__99887766ppqqrrss%%$$##""00112233eeddccbbDDEEFFGGDDCCBBAA00112233EEDDCCBB !!""##AA@@??>>hhiijjkk--,,++**(())**++mmllkkjjJJKKLLMM221100//01122334]]\\[[ZZ LLMMNNOOIIHHGGFF ``aabbcc55443322 !!""##ttttssrr!! 44556677aa``__^^ - -HHIIJJKK@@??>>==44556677AA@@??>>$$%%&&''==<<;;::llmmnnoo))((''&&,,--..//iihhggffNNOOPPQQ..--,,++45566778YYXXWWVVPPQQRRSSEEDDCCBBddeeffgg1100//..$$%%&&''qqppoonn8899::;;]]\\[[ZZ LLMMNNOO77665544==>>??@@==<<;;::(())**++99887766ppqqrrss%%$$##""00112233eeddccbbWWXXYYZZ**))((''9:;<==>>UUTTSSRRTTUUVVWWAA@@??>>hhiijjkk--,,++**(())**++mmllkkjj<<==>>??YYXXWWVVPPQQRRSS33221100AABBCCDD99887766,,--..//55443322 !!""##ttttssrr!! 44556677aa``__^^ - -[[\\]]^^&&%%$$##??@@AABBQQPPOONNXXYYZZ[[==<<;;::llmmnnoo))((''&&,,--..//iihhggff@@AABBCCUUTTSSRRTTUUVVWW//..--,,EEFFGGHH55443322001122331100//..$$%%&&''qqppoonn8899::;;]]\\[[ZZ __``aabbCCDDEEFFMMLLKKJJ - - \\]]^^__99887766ppqqrrss%%$$##""00112233eeddccbbDDEEFFGGQQPPOONNXXYYZZ[[++**))((IIJJKKLL1100//..44556677--,,++**(())**++mmllkkjj<<==>>??YYXXWWVVccddeeffGGHHIIJJIIHHGGFF ``aabbcc55443322 !!""##ttttssrr!! 44556677aa``__^^ - -HHIIJJKKMMLLKKJJ - - \\]]^^__''&&%%$$MMNNOOPP--,,++**8899::;;))((''&&,,--..//iihhggff@@AABBCCUUTTSSRRgghhiijjKKLLMMNNEEDDCCBBddeeffgg1100//..$$%%&&''qqppoonn8899::;;]]\\[[ZZ LLMMNNOOIIHHGGFF ``aabbcc##QQWWXXYY))((''&&<<==>>??%%$$##""00112233eeddccbbDDEEFFGGQQPPOONN - - kkqqrrssOOPPQQRSAA@@??>>hhiijjkk--,,++**(())**++mmllkkjj<<==>>??YYXXWWVVPPQQRRSSEEDDCCBBddeeffggZZ[[\\]]%%$$##""@@AABBCC!! 44556677aa``__^^ - -HHIIJJKKMMLLKKJJ ttttssrr - -TUVWWXXY==<<;;::llmmnnoo))((''&&,,--..//iihhggff@@AABBCCUUTTSSRRTTUUVVWWAA@@??>>hhiijjkk^^__``aa!! DDEEFFGG8899::;;]]\\[[ZZ LLMMNNOOIIHHGGFFqqkkjjii YZZ[[\\]99887766ppqqrrss%%$$##""00112233eeddccbbDDEEFFGGQQPPOONNXXYYZZ[[==<<;;::llmmnnoobbccddeeHHIIJJKK<<==>>??YYXXWWVVPPQQRRSSEEDDCCBBhhggffee]^^__``a55443322 !!""##ttttssrr!! 44556677aa``__^^ - -HHIIJJKKMMLLKKJJ - - \\]]^^__99887766ppqqrrss ffgghhiiLLMMNNOO@@AABBCCUUTTSSRRTTUUVVWWAA@@??>>ddccbbaa abbccdde1100//..$$%%&&''qqppoonn8899::;;]]\\[[ZZ LLMMNNOOIIHHGGFF ``aabbcc55443322 !!""##ttllkkjj - - - -iihhggffPPQQRRSSDDEEFFGGQQPPOONNXXYYZZ[[==<<;;::##$$``__^^]] - - effgghhi--,,++**(())**++mmllkkjj<<==>>??YYXXWWVVPPQQRRSSEEDDCCBBddeeffgg1100//..$$%%&&''iihhggff eeddccbbTTUUVVWW - -HHIIJJKKMMLLKKJJ - - \\]]^^__99887766%%&&''((\\[[ZZYYijjkklmn))((''&&,,--..//iihhggff@@AABBCCUUTTSSRRTTUUVVWWAA@@??>>hhiijjkk--,,++**(())**++eeddccbbaa``__^^ - -XXYYZZ[[ LLMMNNOOIIHHGGFF ``aabbcc55443322))**++,,XXWWQQPPopqqrrss%%$$##""00112233eeddccbbDDEEFFGGQQPPOONNXXYYZZ[[==<<;;::llmmnnoo))((''&&,,--..//aa``__^^]]\\[[ZZ - - \\]]^^__PPQQRRSSEEDDCCBBddeeffgg1100//..--..//00OONNMMLLttttssrr!! 44556677aa``__^^ - -HHIIJJKKMMLLKKJJ - - \\]]^^__99887766ppqqrrss%%$$##""00112233]]\\[[ZZYYXXWWVV ``aabbccTTUUVVWWAA@@??>>hhiijjkk--,,++**11223344KKJJIIHHqqppoonn8899::;;]]\\[[ZZ LLMMNNOOIIHHGGFF ``aabbcc55443322 !!""##ttttssrr!! 44556677YYXXWWQQ##UUTTSSRRddeeffgghhiiZHAbZHAb|ZdQbv`f˂rXQbQZ|fH~fH~XQr˂btlHfpvHfpvZp˂|dr|dtAfH~XQr˂btlbtlHfpvbHAZJl|~f`fH~XQr˂btlHfpvHfpvZp˂|drpfHfH~XQr˂btlbtlHfpvZp˂Jltp`vXXH~`JXQrbtlHfpvfpvZp˂|drfH~ے`JXQے`JXQtlJ~HfpJ`ےdrtAJf`vXf`vXpZHAbJtArdnXvnXvrXQJ`tAJlJltf`vXpZHAbJtArdJtArdnXvp˂rdrtAJvXnfZHAbpZHAbJtArdnXvnXvrXQJ`tAJlf`vXf`vXpZHAbJtArdJtArdnXvrXQJ`bdQZ|nvpfZHAb˂pZJtArdnXvnrXQJrXQJ`tAJlf`vXr˂pr˂ptArdv~bHAXQJltbnvpnvpے`J|ZdQ`f~`f~ےbHAtbdQZbnvnvpے`J|ZdQ|ZdQ`f~XQJ`ےltbvpfHے`Jے`J|ZdQ`f~`fHےbHAtbdQZnvpnvpے`J|ZdQf~`f~ےbHAdrtAfH~JQrHAbے|ZdQ`f~`ےHAےbHAtbdQZnvpZHAbZHAb|ZdQbHfpv`ےbdQZ|fH~fH~XQr˂btlHfpvHfpvZp˂|drpfHfH~XQr˂btlbtlHfpvbHAXQdQZ|~fvXXQr˂XQr˂btlHfpvfpvZp˂|drfH~fH~XQr˂btlHfpvHfpvZp˂Jl|f`vX˂pZH`JXQrbtlHfpvZp˂Zp˂|drfH~ے`JXQے`JXQtlJnXvHAZp˂drtAJf`vXfZHAbpZHAbJtArdnXvnXvrXQJ`tAJlf`vXf`vXpZHAbJtArdJtArdnXvJ`ےdrtAJnvppZHAbpZHAbJtArdnXvnrXQJrXQJ`tAJlf`vXf`vXpZHAbJtArdnXvnXvrXQJ`drtAJnvpAbے`˂pZAJtArdnXvrXQJ`rXQJ`tAJlf`vXr˂pr˂ptArd`f~rXQJltbQnvpے`Jے`J|ZdQ`f~`fHےbHAtbdQZnvpnvpے`J|ZdQf~`f~bHAZpltdfH~ːے`Jے`J|ZdQ`f~`ےHAےbHAtbdQZnvpnvpے`J|ZdQ`f~`f~ےbHAltbfHXnJXQr`JXQ|ZdQ`f~ےbHAےbHAtbdQZnvpZHAb|ZdQb|ZdQbHfpv`ےbZdrtfH~XQr˂XQr˂btlHfpvfpvZp˂|drfH~fH~XQr˂btlHfpvHfpv˂rXQrtAJlf`vXXQr˂XQr˂btlHfpvZp˂Zp˂|drfH~fH~XQr˂btlHfpvHfpvZp˂dQZ|vpf˂pZHrbtbtlHfpvZp˂Zp˂|drfH~ے`JXQtlJtlJnXHHAZp`AJltf`vXpZHAbpZHAbJtArdnXvnrXQJrXQJ`tAJlf`vXf`vXpZHAbJtArdnXvnXvJ`ےtbdQnvppZHAbpZHAJtArdnXvrXQJ`rXQJ`tAJlf`vXfZHAbpZHAbJtArdnXvnXvrXQJ`drtAJH~fAbے`lJtAdJtArdnXvrXQJ`rXQJ`tAJlf`vXr˂ptArdtArdfpvےbHAbdQZ|nvpے`Jے`J|ZdQ`f~`ےHAےbHAtbdQZnvpnvpے`J|ZdQ`f~`f~bHAZpZ|dfH~fے`Jے`JXQ|ZdQ`f~ےbHAےbHAtbdQZnvpے`Jے`J|ZdQ`f~`fHےbHAltd`vXnJQrp|ZdQ|ZdQ`f~ےbHAےbHAtbdQZnvpfH~ZHAb|ZdQb|ZdQbnXv`Zp˂drtfH~XQr˂XQr˂btlHfpvZp˂Zp˂|drfH~fH~XQr˂btlHfpvHfpv`ےbrtAJlvnvXQr˂rbtbtlHfpvZp˂Zp˂|drfH~XQr˂XQr˂btlHfpvfpvZp˂rtAJlvpfZHAbbtlbtlHfpvZp˂Zdr|drfH~f`vXے`JXQtlJtlJf~HrXQJ`AJltf`vXpZHAbpZHAJtArdnXvrXQJ`rXQJ`tAJlf`vXfZHAbpZHAbJtArdnXvnXvHAZp˂tbdQpfH~pZHAblJtAdJtArdnXvrXQJ`rXQJ`tAJlf`vXpZHAbpZHAbJtArdnXvnrXQJrXQJ`tbdQH~ے`JXQJtArdJtArdnXvrXQJ`tAJltAJlf`vXnvpr˂ptArdtArdfpvےbHAbdQZnvpے`Jے`JXQ|ZdQ`f~ےbHAےbHAtbdQZnvpے`Jے`J|ZdQ`f~`fHrXQJtAJl璐f`vے`J|ZdQ|ZdQ`f~ےbHAےbHAtbdQZnvpے`Jے`J|ZdQ`f~`ےHAےbHAZ|dvpfHr˂p|ZdQ|ZdQ`f~ےbHAtbdQZtbdQZnvpfH~ZHAb|ZdQbf~HnXv`Zp˂rtAJlfH~XQr˂rbtbtlHfpvZp˂Zp˂|drfH~XQr˂XQr˂btlHfpvfpv`ےbtbdQZXnvXQr˂btlbtlHfpvZp˂Zdr|drfH~XQr˂XQr˂btlHfpvZp˂Zp˂rtAJl~f`ZHAbbtlbtlHfpvZp˂|dr|drfH~fZHAbے`JXQtlJXv`fp˂rbHAZtbdQf`vXpZHAblJtAdJtArdnXvrXQJ`rXQJ`tAJlf`vXpZHAbpZHAbJtArdnXvnrXQJHAZp˂|drpfH~pZHAbJtArdJtArdnXvrXQJ`tAJltAJlf`vXpZHAbpZHAJtArdnXvrXQJ`rXQJ`tbdQvXnے`JXQJtArdJtArdnXvrXQJ`tAJltAJlf`vXے`Jr˂ptArd~HfXQJ`ےdrtAZ|dnvpے`J|ZdQ|ZdQ`f~ےbHAےbHAtbdQZnvpے`Jے`J|ZdQ`f~`p˂bHAtAJl璐f`vے`J|ZdQ|ZdQ`f~ےbHAtbdQZtbdQZnvpے`Jے`JXQ|ZdQ`f~ےbHAےbHAtAJlvpfHrZHA|ZdQf~`f~ےbHAtbdQZtbdQZnvpXQr˂ZHAb|ZdQbpvnbHAZJbdQrtAJlfH~XQr˂btlbtlHfpvZp˂Zdr|drfH~XQr˂XQr˂btlHfpvrXQJ`ZdrtbdQZnvpfHXQr˂btlbtlHfpvZp˂|dr|drfH~XQr˂rbtbtlHfpvZp˂Zp˂tbdQZ~f`bے`btlHfpvHfpvZp˂|dr|dtAfH~pZHAbے`JXQtlJXv`fp˂rZ|dtbdQf`vXpZHAbJtArdJtArdnXvrXQJ`tAJltAJlf`vXpZHAbpZHAJtArdnXvےbHAtAdQZ||lt~f`pZHAbJtArdJtArdnXvrXQJ`tAJltAJlf`vXpZHAblJtAdJtArdnXvrXQJ`rXQJ`|drpfH~JXQrJtArdnXvnXvrXQJ`tAJlJltf`vXے`Jr˂ptArd~HfXQJ`ےrtAJlZ|dnvpے`J|ZdQ|ZdQ`f~ےbHAtbdQZtbdQZnvpے`Jے`JXQ|ZdQ`f~Zp˂drtAbnvvXnے`J|ZdQf~`f~ےbHAtbdQZtbdQZnvpے`J|ZdQ|ZdQ`f~ےbHAےbHAtAJl璐f`vpZHA|ZdQ`f~`f~ےbHAtbdQZbnvnvpXQr˂ZHAb|ZdQbp`frXQtbdQnvffH~XQr˂btlbtlHfpvZp˂|dr|drfH~XQr˂rbtbtlHfpvrXQJ`Jltpff`vpfHXQr˂btlHfpvHfpvZp˂|dr|dtAfH~XQr˂btlbtlHfpvZp˂ZdrtbdQZXnvbے`btlHfpvHfpvZp˂|drpfHfH~pZHAbے`JXQtlJ~HfpJ`ےZ|df`vXf`vXpZHAbJtArdJtArdnXvrXQJ`tAJltAJlf`vXpZHAblJtAdJtArdnXvےrbdQZ|vXn~f`pZHAbJtArdnXvnXvrXQJ`tAJlJltf`vXpZHAbJtArdJtArdnXvrXQJ`tAdQZ||ltpfH~JXQrJtArdnXvnXvrXQJ`tAJlf`vXf`vXے`Jr˂ptArdvnXbHAZprtAJlnvpnvpے`J|ZdQf~`f~ےbHAtbdQZtbdQZnvpے`J|ZdQ|ZdQ`f~XQJ`ےdrtAvpfHvXnvے`J|ZdQ`f~`f~ےbHAtbdQZbnvnvpے`J|ZdQ|ZdQ`f~ےbHAdrtAbnvf`vZAbے|ZdQ`f~`fHےbHAtbdQZnvpnvpXQr˂pZHAblJtAdJtArdnXvrXQJ`rXQJ`tAJlH~˂pZrZdQnXvnXvrXQJ`tAJlJltf`vXpZHAbJtArdJtArdnXvrXQJ`tAJltAJlf`vXZHAbb㉀ۑppfH~Z|dے`J|ZdQ|ZdQ`f~ےbHAےbHAtbdQZvpfHHAbےbtl`f~`f~ےbHAtbdQZbnvnvpے`J|ZdQ|ZdQ`f~ےbHAtbdQZtbdQZnvpے`JXQJAHr󙐅f۝`vrQtJlXQr˂btlbtlHfpvZp˂Zdr|dr~f``JXQHAJtArdHfpvHfpvZp˂|drpfHfH~XQr˂btlbtlHfpvZp˂|dr|drfH~r˂pˁ`ZQXXnv˒tbAdpZHAbJtArdJtArdnXvrXQJ`tAJltAJlvXnbے`|ZdQnXvnXvrXQJ`tAJlf`vXf`vXpZHAbJtArdJtArdnXvrXQJ`tAJltAJlf`vXZHAbb㉀ۑppfH~Z|dے`J|ZdQ|ZdQ`f~ےbHAtbdQZtbdQZvpfHJXQrbtl`f~`fHےbHAtbdQZnvpnvpے`J|ZdQf~`f~ےbHAtbdQZtbdQZnvpے`JXQJAHr󙐅f۝`vrQtJlXQr˂btlbtlHfpvZp˂|dr|dr~f`˂pZHAJtArdHfpvfpvZp˂|drfH~fH~XQr˂btlHfpvHfpvZp˂|dr|dtAfH~HAbےۑpJXnv˒tbAdpZHAbJtArdJtArdnXvrXQJ`tAJltAJlpfH~bے`ZQbt璀nXvnrXQJrXQJ`tAJlf`vXf`vXpZHAbJtArdnXvnXvrXQJ`tAJlJltf`vX`JXQrAHr󙐂ˍpfH~Z|dے`J|ZdQf~`f~ےbHAtbdQZtbdQZf`vJXQrlJtAr`f~`ےHAےbHAtbdQZnvpnvpے`J|ZdQ`f~`f~ےbHAtbdQZbnvnvp˂pZ`ZQXbㅐf۝`vrQtJlXQr˂btlHfpvHfpvZp˂|dr|dtAXnvے`Jd|ZHfpvZp˂Zp˂|drfH~fH~XQr˂btlHfpvHfpvZp˂|drpfHfH~HAbےۑpJXnv˒tbAdpZHAbJtArdnXvnXvrXQJ`tAJlJltpfH~XQr˂dQbt璀nXvrXQJ`rXQJ`tAJlf`vXfZHAbpZHAbJtArdnXvnXvrXQJ`tAJlf`vXf`vX`JXQrAHr󙐂ˍpfH~Z|dے`J|ZdQ`f~`f~ےbHAtbdQZbnvf`vpZHAblJtAr`f~ےbHAےbHAtbdQZnvpے`Jے`J|ZdQ`f~`fHےbHAtbdQZnvpnvpے``pJAHf۝`vrQtJlXQr˂btlHfpvHfpvZp˂|drp`vXXH~ے`Jd|ZQHfpvZp˂Zp˂|drfH~XQr˂XQr˂btlHfpvfpvZp˂|drfH~fH~JXQrr󙐂ˁ`Xnv˒tbAdpZHAbJtArdnXvnXvrXQJ`tAJlnvpfZHAbXQr˂blJtnXvrXQJ`rXQJ`tAJlf`vXpZHAbpZHAbJtArdnXvnrXQJrXQJ`tAJlf`vXf`vX˂pZHAZQXb㉀pfH~Z|dے`J|ZdQ`f~`fHےbHAtbdQZfH~˂pp`JXQArd|`f~ےbHAےbHAtbdQZnvpے`Jے`J|ZdQ`f~`ےHAےbHAtbdQZnvpnvpbے`ۑpJAHf۝`vrQtJlXQr˂btlHfpvfpvZp˂|drf`vXZHAbrbt璁ZdQbtHfpvZp˂Zdr|drfH~XQr˂XQr˂btlHfpvZp˂Zp˂|drfH~fH~JXQrr󙐂ˁ`Xnv˒tbAdpZHAbJtArdnXvnrXQJrXQJ`tAJlnvpے`JXQlJA|lJtnXvrXQJ`tAJltAJlf`vXpZHAbpZHAJtArdnXvrXQJ`rXQJ`tAJlf`vXfr˂˂p`ZpfH~pfH~Z|dے`J|ZdQ`f~`ےHAےbHAtbdQZfHXnr˂pZdQbtArd|`f~ےbHAtbdQZtbdQZnvpے`Jے`JXQ|ZdQ`f~ےbHAےbHAtbdQZnvppZHAbQXb㉀ۅf۝`vf۝`vrQtJlXQr˂btlHfpvZp˂Zp˂|drvpfZHAblJtAZdQbHfpvZp˂|dr|drfH~XQr˂rbtbtlHfpvZp˂Zp˂|drfH~ے`JpJAHrXnv˅Xnv˒tbAdpZHAJtArdnXvrXQJ`rXQJ`tAJlH~fے`pZrd|JtArdnXvrXQJ`tAJltAJlf`vXpZHAblJtAdJtArdnXvrXQJ`rXQJ`tAJlf`vXXQr˂ˁ`ZpfH~p|dZ|dے`JXQ|ZdQ`f~ےbHAےbHAtbdQZ`vXnHAbےZdQbtf~`f~ےbHAtbdQZtbdQZnvpے`J|ZdQ|ZdQ`f~ےbHAےbHAtbdQZnvppZHAbQXb㉀ۅf۝`vrQtJlrQtJlrbtbtlHfpvZp˂Zp˂|drvpf`JXQrlJtAHfpvHfpvZp˂|dr|dtAfH~XQr˂btlbtlHfpvZp˂Zdr|drfH~ے`ppJAHQXXnv˒tbAdtbAdZ|mnopqrsttsrqponKKKKKKKKLLLLLLLLLLLLL \ No newline at end of file diff --git a/barcode-generator/Resources/data/qrv25_1.dat b/barcode-generator/Resources/data/qrv25_1.dat deleted file mode 100644 index 6d2446e..0000000 --- a/barcode-generator/Resources/data/qrv25_1.dat +++ /dev/null @@ -1,233 +0,0 @@ -tstststststststststststsrqrqrqrqrqrqrqrqpopopopopopopoponmnmnmnmnmnmnmnmlklklklklklklklkjijijijijijijijihghghghghghghghghgfefefefefefefefefefefedcdcdcdcdcdcdcdcbabababababababababababa`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSQRQRQRQRQRQRQRQRPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:98787878787878787656565656565656543434343434343434343434321212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!        tstststststststststststsrqrqrqrqrqrqrqrqpopopopopopopoponmnmnmnmnmnmnmnmlklklklklklklklkjijijijijijijijihghghghghghghghgfefefefefefefefefefefefedcdcdcdcdcdcdcdcbabababababababababababa`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSQRQRQRQRQRQRQRQRPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABA@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:98787878787878787656565656565656543434343434343434343434321212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!        tstststststststststststsrqrqrqrqrqrqrqrqpopopopopopopoponmnmnmnmlklklklklklklkkklklklklkjijijijijijijijihghghghghghghghgfefefefefefefefefefefefedcdcdcdcdcdcdcdcbabababababababababababa`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSRQRQRQQRQRQRQQQRQRQQQQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABA@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:98787878787878787656565656565656543434343434343434343434321212121212121210/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!        tstststststststsrqrqrqrqrqrqrqrqrqrqrqrqpopopopopopopoponmnmnmnmkkkkklklkkklklkliiiiiijijijijijijijijijihghghghghghghghgfefefefefefefefefefefefedcdcdcdcdcdcdcdcbababababababababa`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUTSTSTSTSTSTSTSRQQQQQRQQQQQRQRQQQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCBABABABABABABABABABABA@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:98787878787878787656565656565656543434343434343434343434321212121212121210/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!        tstststststststsrqrqrqrqrqrqrqrqrqrqrqrqpopopoponmnmnmnmnmnmnmnmklklklklklklklkljijijijijijijijijijijijihghghghghghghghgfefefefefefefefefefefefedcdcdcdcdcdcdcdcbabababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;:9:9:9:9:98787878787878787878777656565656565656543434343434343434321212121212121212121210/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!        tstststststststsrqrqrqrqrqrqrqrqrqrqrqrqpopopoponmnmnmnmnmnmnmnmklklklklklklklkljijijijijijijijijijijijihghghghghghghghgfefefefefefefefefedcdcdcdcdcdcdcdcdcdcdcbabababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;:9:9:9:9:9:9:9877777787777787877878787656565656565656543434343434343432121212121212121212121210/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)('('('('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!        tstststststststsrqrqrqrqrqrqrqrqpopopopopopopoponmnmnmnmnmnmnmnmklklklklklklklkljijijijijijijijijijijijihghghghghghghghgfefefefefefefefedcdcdcdcdcdcdcdcdcdcdcdcbabababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9787878787878787887656565656565656565656543434343434343432121212121212121212121210/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!     tstststststststsrqrqrqrqrqrqrqrqpopopopopopopoponmnmnmnmnmnmnmnmklklklklklklklkljijijijijijijijijihghghghghghghghghghghgfefefefefefefefedcdcdcdcdcdcdcdcdcdcdcdcbabababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9787878787878787865656565656565656565656543434343434343432121212121212121212121210/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!       tstststststststsrqrqrqrqrqrqrqrqpopopopopopopoponmnmnmnmnmnmnmnmklklklkkklklkkkkjijijijijijijijihghghghghghghghghghghghgfefefefefefefefedcdcdcdcdcdcdcdcdcdcdcdcbabababababababa`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQQQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCBABABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9787878787878787865656565656565656565656543434343434343432121212121212121212121210/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!        tstststststststsrqrqrqrqrqrqrqrqpopopopopopopoponmnmnmnmnmnmnmnmkkkklklkkklklklkjijijijijijijijihghghghghghghghghghghghgfefefefefefefefedcdcdcdcdcdcdcdcdcdcdcdcbabababababababa`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSQQQQQRQRQQQRQRQRPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCBABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9787878787878787865656565656565656565656543434343434343432121212121212121210/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!        tstststststststsrqrqrqrqrqrqrqrqpopopopopopopoponmnmnmnmnmnmnmnmlklklklklklklklkjijijijijijijijihghghghghghghghghghghghgfefefefefefefefedcdcdcdcdcdcdcdcdcbababababababababababa`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSQRQRQRQRQRQRQRQRPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:97878787878787877656565656565656565656565434343434343434321212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!        tstststststststsrqrqrqrqrqrqrqrqpopopopopopopoponmnmnmnmnmnmnmnmlklklklklklklklkjijijijijijijijihghghghghghghghghghghghgfefefefefefefefedcdcdcdcdcdcdcdcbabababababababababababa`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSQRQRQRQRQRQRQRQRPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:97777778777778787656565656565656565434343434343434343434321212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!                - - - - - - - -         - - - - - - - - - - -         - - - - - - - - - - - -            - - - - - - - - - - - -             - - - - - - - - - - - -             - - - - - - - - - - - -             - - - - - - - - -             - - - - - - - -          - - - - - - - -         - - - - - - - -         - - - - - - - -         - - - - - - - - ttssrrqqDDCCBBAA--..//00]]^^__``WWQQPPOO..//0011hhiijjkkGGFFEEDD(())**++XXYYZZ[[aa``__^^1100//..00112233``aabbccYYXXWWVV))((''&& - - 8899::;;hhiijjkkQQPPOONN!! @@AABBCCppqqrrssIIHHGGFFHHIIJJKKqqppoonnAA@@??>>))**++,,ccddeeffGGFFEEDD - -,--..//0abbccddeUUTTSSRR%%$$##"" <<==>>??llmmnnooMMLLKKJJDDEEFFGGttttssrrEEDDCCBBLLMMNNOOmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWeeddccbb55443322,,--..//\\]]^^__XXWWQQPP%%&&''((__``aabbPPOONNMMHHIIJJKKqqppoonnAA@@??>> !!""##PPQQRRSSiihhggff99887766 (())**++XXYYZZ[[aa``__^^1100//..00112233``aabbccYYXXWWVV))((''&& - - 8899::;;hhiijjkkQQPPOONN!! NNOOPPQQ\\[[ZZYYOOPPQQRSeeddccbb55443322,,--..//\\]]^^__ppoonnmm@@??>>== 11223344aabbccddNNMMLLKK22334455qqrrssttCCBBAA@@ ,,--..//\\]]^^__]]\\[[ZZ--,,++**44556677ddeeffggUUTTSSRR%%$$##"" <<==>>??llmmnnooMMLLKKJJDDEEFFGGttttssrrEEDDCCBBLLMMNNOOmmllkkjj==<<;;:: - ---..//00gghhiijjCCBBAA@@ 01122334effgghhiQQPPOONN!! @@AABBCCppqqrrssIIHHGGFFHHIIJJKKqqppoonnAA@@??>> !!""##PPQQRRSSiihhggff99887766 (())**++XXYYZZ[[aa``__^^1100//..00112233``aabbccOONNMMLL))**++,,ccddeeffLLKKJJIILLMMNNOOmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWeeddccbb55443322,,--..//\\]]^^__]]\\[[ZZ--,,++**44556677ddeeffggUUTTSSRR%%$$##"" <<==>>??llmmnnooMMLLKKJJWWXXYYZZXXWWQQPP !"##$TUVWWXXYaa``__^^1100//..00112233``aabbccllkkjjii<<;;::99 - - 55667788eeffgghhJJIIHHGG 6677==>>ttssrrqq??>>==<; - - 00112233``aabbccYYXXWWVV))((''&& - - 8899::;;hhiijjkkQQPPOONN!! @@AABBCCppqqrrssIIHHGGFFHHIIJJKKqqppoonnAA@@??>> !!""##PPQQRRSSiihhggff99887766 11223344kkqqrrss??>>==7745566778ijjkklmnMMLLKKJJDDEEFFGGttttssrrEEDDCCBBLLMMNNOOmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWeeddccbb55443322,,--..//\\]]^^__]]\\[[ZZ--,,++**44556677ddeeffggKKJJIIHH--..//00gghhiijjHHGGFFEE !!""##PPQQRRSSiihhggff99887766 (())**++XXYYZZ[[aa``__^^1100//..00112233``aabbccYYXXWWVV))((''&& - - 8899::;;hhiijjkkQQPPOONN!! @@AABBCCppqqrrssIIHHGGFF##$$[[\\]]^^OONNMMLL$%%&&''(YZZ[[\\]]]\\[[ZZ--,,++**44556677ddeeffgghhggffee88776655 - - 99::;;<>??llmmnnooMMLLKKJJDDEEFFGGttttssrrEEDDCCBBLLMMNNOOmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWeeddccbb55443322556677==ttttssrr66554433 9:;<==>>opqqrrssIIHHGGFFHHIIJJKKqqppoonnAA@@??>> !!""##PPQQRRSSiihhggff99887766 (())**++XXYYZZ[[aa``__^^1100//..00112233``aabbccYYXXWWVV))((''&& - - 8899::;;hhiijjkkGGFFEEDD - -11223344kkqqrrssDDCCBBAA $$%%&&''TTUUVVWWeeddccbb55443322,,--..//\\]]^^__]]\\[[ZZ--,,++**44556677ddeeffggUUTTSSRR%%$$##"" <<==>>??llmmnnooMMLLKKJJDDEEFFGGttttssrrEEDDCCBB%%&&''((__``aabbKKJJIIHH())**++,]^^__``aYYXXWWVV))((''&& - - 8899::;;hhiijjkkddccbbaa44332211 ==>>??@@mmnnooppBBAA@@?? - - CCDDEEFFjiihhggf54433221 - - 8899::;;hhiijjkkQQPPOONN!! @@AABBCCppqqrrssIIHHGGFFHHIIJJKKqqppoonnAA@@??>> !!""##PPQQRRSSiihhggff99887766 (())**++XXYYZZ[[aa``__^^1100//..>>??@@AAqqkkjjii221100// - - ??@@AABBttttssrrEEDDCCBBLLMMNNOOmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWeeddccbb55443322,,--..//\\]]^^__]]\\[[ZZ--,,++**44556677ddeeffggUUTTSSRR%%$$##"" <<==>>??llmmnnooCCBBAA@@ 556677==ttttssrr@@??>>== - - (())**++XXYYZZ[[aa``__^^1100//..00112233``aabbccYYXXWWVV))((''&& - - 8899::;;hhiijjkkQQPPOONN!! @@AABBCCppqqrrssIIHHGGFFHHIIJJKKqqppoonnAA@@??>>))**++,,ccddeeffGGFFEEDD - -,--..//0abbccddeUUTTSSRR%%$$##"" <<==>>??llmmnnoo``__^^]]00//..--AABBCCDDqqrrsstt>>==7766 GGHHIIJJfeeddccb100//..- <<==>>??llmmnnooMMLLKKJJDDEEFFGGttttssrrEEDDCCBBLLMMNNOOmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWeeddccbb55443322,,--..//\\]]^^__]]\\[[ZZ--,,++** - - BBCCDDEEhhggffee..--,,++CCDDEEFFqqppoonnAA@@??>> !!""##PPQQRRSSiihhggff99887766 (())**++XXYYZZ[[aa``__^^1100//..00112233``aabbccYYXXWWVV))((''&& - - 8899::;;hhiijjkkQQPPOONN!! @@AABBCCppqqrrss??>>==77>>??@@AAqqponmlk<;:98776,,--..//\\]]^^__]]\\[[ZZ--,,++**44556677ddeeffggUUTTSSRR%%$$##"" <<==>>??llmmnnooMMLLKKJJDDEEFFGGttttssrrEEDDCCBBLLMMNNOOmmllkkjj==<<;;:: - ---..//00gghhiijjCCBBAA@@ 01122334effgghhiQQPPOONN!! @@AABBCCppqqrrss\\[[ZZYY,,++**))EEFFGGHHttssrrqq55443322KKLLMMNNbaa``__^-,,++**)@@AABBCCppqqrrssIIHHGGFFHHIIJJKKqqppoonnAA@@??>> !!""##PPQQRRSSiihhggff99887766 (())**++XXYYZZ[[aa``__^^1100//..00112233``aabbccYYXXWWVV))((''&& FFGGHHIIddccbbaa**))((''GGHHIIJJmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWeeddccbb55443322,,--..//\\]]^^__]]\\[[ZZ--,,++**44556677ddeeffggUUTTSSRR%%$$##"" <<==>>??llmmnnooMMLLKKJJDDEEFFGGttttssrr66554433 - - BBCCDDEEkjjiihhg6554433200112233``aabbccYYXXWWVV))((''&& - - 8899::;;hhiijjkkQQPPOONN!! @@AABBCCppqqrrssIIHHGGFFHHIIJJKKqqppoonnAA@@??>> !!""##PPQQRRSSiihhggff99887766 11223344kkqqrrss??>>==7745566778ijjkklmnMMLLKKJJDDEEFFGGttttssrrXXWWVVUU((''&&%%IIJJKKLLkkjjiihh1100//..OOPPQQWW^]]\\[[Z)((''&&%DDEEFFGGttttssrrEEDDCCBBLLMMNNOOmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWeeddccbb55443322,,--..//\\]]^^__]]\\[[ZZ--,,++**44556677ddeeffggUUTTSSRR%%$$##""JJKKLLMM``__^^]]&&%%$$##KKLLMMNNiihhggff99887766 (())**++XXYYZZ[[aa``__^^1100//..00112233``aabbccYYXXWWVV))((''&& - - 8899::;;hhiijjkkQQPPOONN!! @@AABBCCppqqrrssIIHHGGFFHHIIJJKKqqkkjjii221100// FFGGHHIIgffeeddc21100//.44556677ddeeffggUUTTSSRR%%$$##"" <<==>>??llmmnnooMMLLKKJJDDEEFFGGttttssrrEEDDCCBBLLMMNNOOmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWeeddccbb55443322556677==ttttssrr66554433 9:;<==>>opqqrrssIIHHGGFFHHIIJJKKqqppoonnTTSSRRQQ$$##""!! MMNNOOPPggffeedd--,,++**XXYYZZ[[ZYYXXWWV%$$##"! HHIIJJKKqqppoonnAA@@??>> !!""##PPQQRRSSiihhggff99887766 (())**++XXYYZZ[[aa``__^^1100//..00112233``aabbccYYXXWWVV))((''&& - - 8899::;;hhiijjkkQQPPOONN!! NNOOPPQQ\\[[ZZYYOOPPQQRSeeddccbb55443322,,--..//\\]]^^__]]\\[[ZZ--,,++**44556677ddeeffggUUTTSSRR%%$$##"" <<==>>??llmmnnooMMLLKKJJDDEEFFGGttttssrrEEDDCCBBLLMMNNOOhhggffee..--,,++JJKKLLMMcbbaa``_.--,,++* - - 8899::;;hhiijjkkQQPPOONN!! @@AABBCCppqqrrssIIHHGGFFHHIIJJKKqqppoonnAA@@??>> !!""##PPQQRRSSiihhggff99887766 (())**++XXYYZZ[[aa``__^^1100//..>>??@@AAqqkkjjii221100// - - ??@@AABBttttssrrEEDDCCBBLLMMNNOOmmllkkjj]]\\[[ZZPPOONNMM !!""##$$QQRRSSTTccbbaa``))((''&&##$$%%\\]]^^__UTSRQQPPLLMMNNOOmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWeeddccbb55443322,,--..//\\]]^^__]]\\[[ZZ--,,++**44556677ddeeffggUUTTSSRR%%$$##"" <<==>>??llmmnnooMMLLKKJJWWXXYYZZXXWWQQPP !"##$TUVWWXXYaa``__^^1100//..00112233``aabbccYYXXWWVV))((''&& - - 8899::;;hhiijjkkQQPPOONN!! @@AABBCCppqqrrssIIHHGGFFHHIIJJKKqqppoonnAA@@??>> !!""##PPQQRRSSddccbbaa**))((''NNOOPPQQ_^^]]\\[*))((''& <<==>>??llmmnnooMMLLKKJJDDEEFFGGttttssrrEEDDCCBBLLMMNNOOmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWeeddccbb55443322,,--..//\\]]^^__]]\\[[ZZ--,,++** - - BBCCDDEEhhggffee..--,,++CCDDEEFFqqppoonnAA@@??>> !!""##PPQQRRSSiihhggffYYXXWWVVLLKKJJII%%&&''((UUVVWWXX__^^]]\\%%$$##&&''(())``aabbccOONNMMLL !!""##PPQQRRSSiihhggff99887766 (())**++XXYYZZ[[aa``__^^1100//..00112233``aabbccYYXXWWVV))((''&& - - 8899::;;hhiijjkkQQPPOONN!! @@AABBCCppqqrrssIIHHGGFF##$$[[\\]]^^OONNMMLL$%%&&''(YZZ[[\\]]]\\[[ZZ--,,++**44556677ddeeffggUUTTSSRR%%$$##"" <<==>>??llmmnnooMMLLKKJJDDEEFFGGttttssrrEEDDCCBBLLMMNNOOmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWW``__^^]]&&%%$$##WWXXYYZZ[ZZYYXXW&%%$$##"@@AABBCCppqqrrssIIHHGGFFHHIIJJKKqqppoonnAA@@??>> !!""##PPQQRRSSiihhggff99887766 (())**++XXYYZZ[[aa``__^^1100//..00112233``aabbccYYXXWWVV))((''&& FFGGHHIIddccbbaa**))((''GGHHIIJJmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWeeddccbbUUTTSSRRHHGGFFEE))**++,,YYZZ[[\\[[ZZYYXX**++,,--ddeeffggKKJJIIHH$$%%&&''TTUUVVWWeeddccbb55443322,,--..//\\]]^^__]]\\[[ZZ--,,++**44556677ddeeffggUUTTSSRR%%$$##"" <<==>>??llmmnnooMMLLKKJJDDEEFFGGttttssrrEEDDCCBB%%&&''((__``aabbKKJJIIHH())**++,]^^__``aYYXXWWVV))((''&& - - 8899::;;hhiijjkkQQPPOONN!! @@AABBCCppqqrrssIIHHGGFFHHIIJJKKqqppoonnAA@@??>> !!""##PPQQRRSSiihhggff99887766 (())**++XXYYZZ[[\\[[ZZYY##$$[[\\]]^^WVUTSRQQ! DDEEFFGGttttssrrEEDDCCBBLLMMNNOOmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWeeddccbb55443322,,--..//\\]]^^__]]\\[[ZZ--,,++**44556677ddeeffggUUTTSSRR%%$$##""JJKKLLMM``__^^]]&&%%$$##KKLLMMNNiihhggff99887766 (())**++XXYYZZ[[aa``__^^QQPPOONNMMLLKKJJDDEEFFGGttttssrrEEDDCCBBLLMMNNOOmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWeeddccbb55443322,,--..//\\]]^^__PPOONNMM00112233iihhggff99887766 - - 8899::;;IIHHGGFFHHIIJJKKqqppoonnAA@@??>> !!""##PPQQRRSSiihhggff99887766 (())**++XXYYZZ[[aa``__^^1100//..00112233``aabbccLLKKJJII44556677eeddccbb55443322 <<==>>??EEDDCCBBLLMMNNOOmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWeeddccbb55443322,,--..//\\]]^^__]]\\[[ZZ--,,++**44556677ddeeffggHHGGFFEE ==>>??@@aa``__^^1100//..@@AABBCCAA@@??>> !!""##PPQQRRSSiihhggff99887766 (())**++XXYYZZ[[aa``__^^1100//..00112233``aabbccYYXXWWVV))((''&& - - 8899::;;hhiijjkkDDCCBBAA - - - -AABBCCDD]]\\[[ZZ--,,++**DDEEFFGG==<<;;:: - -$$%%&&''TTUUVVWWeeddccbb55443322,,--..//\\]]^^__]]\\[[ZZ--,,++**44556677ddeeffggUUTTSSRR%%$$##"" <<==>>??llmmnnoo@@??>>== EEFFGGHHYYXXWWVV))((''&&HHIIJJKK99887766 (())**++XXYYZZ[[aa``__^^1100//..00112233``aabbccYYXXWWVV))((''&& - - 8899::;;hhiijjkkQQPPOONN!! @@AABBCCppqqrrss77665544IIJJKKLLUUTTSSRR%%$$##""LLMMNNOO55443322,,--..//\\]]^^__]]\\[[ZZ--,,++**44556677ddeeffggUUTTSSRR%%$$##"" <<==>>??llmmnnooMMLLKKJJDDEEFFGGttllkkjj33221100MMNNOOPPQQPPOONN!!  !!""##PPQQRRSS1100//..00112233``aabbccYYXXWWVV))((''&& - - 8899::;;hhiijjkkQQPPOONN!! @@AABBCCppqqrrssIIHHGGFFHHIIJJKKiihhggff//..--,,QQWWXXYYMMLLKKJJ$$%%&&''TTUUVVWW--,,++**44556677ddeeffggUUTTSSRR%%$$##"" <<==>>??llmmnnooMMLLKKJJDDEEFFGGttttssrrEEDDCCBBLLMMNNOOeeddccbb++**))((##ZZ[[\\]]IIHHGGFF(())**++XXYYZZ[[))((''&& - - 8899::;;hhiijjkkQQPPOONN!! @@AABBCCppqqrrssIIHHGGFFHHIIJJKKqqppoonnAA@@??>> !!""##PPQQRRSSaa``__^^''&&%%$$$$%%&&''^^__``aaEEDDCCBB,,--..//\\]]^^__%%$$##"" <<==>>??llmmnnooMMLLKKJJDDEEFFGGttttssrrEEDDCCBBLLMMNNOOmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWW]]\\[[ZZ##(())**++bbccddeeAA@@??>>00112233``aabbcc!! @@AABBCCppqqrrssIIHHGGFFHHIIJJKKqqppoonnAA@@??>> !!""##PPQQRRSSiihhggff99887766 (())**++XXYYZZ[[YYXXWWQQ,,--..//ffgghhii==<<;;:: - -44556677ddeeffgghhiiZHAbZHAbZHAb|ZdQb|ZdQbp`fnXv`˂rXQZp˂dQZ|rtAJlfH~fH~XQr˂XQr˂rbtbtlbtlHfpvHfpvZp˂Zp˂Zp˂|dr|drfH~fH~fH~XQr˂XQr˂btlbtlHfpvHfpvHfpvbHAZ`ےbdQZ|tbdQZf`vXvpfHXQr˂XQr˂btlbtlbtlHfpvHfpvZp˂Zp˂Zdr|dr|drfH~fH~XQr˂XQr˂XQr˂btlbtlHfpvHfpvfpvZp˂Zp˂Jl|tbdQZvpfXnvZHAb`JXQrbtlbtlHfpvHfpvHfpvZp˂Zp˂|dr|dr|dtAfH~fH~XQr˂XQr˂rbtbtlbtlHfpvHfpvZp˂Zp˂Zp˂|dr|drf`vX~f`ZHAbے`JlJtAd|ZQHfpvHfpvfpvZp˂Zp˂ے`JXQے`JXQے`JXQtlJtlJ~Hfpf~HJ`ےbHAZdrtAJtbdQf`vXf`vXpZHAbpZHAblJtAdJtArdJtArdnXvnXvrXQJ`rXQJ`rXQJ`tAJltAJlf`vXf`vXfZHAbpZHAbpZHAbJtArdJtArdnXvnXvnXvp˂rHAZp˂drtAJ|ltnvp~f`pZHAbpZHAbJtArdJtArdJtArdnXvnXvrXQJ`rXQJ`tAJltAJltAJlf`vXf`vXpZHAbpZHAbpZHAJtArdJtArdnXvnXvnrXQJrXQJ`rXQJ`drtAJ|drH~fpfH~ے`JXQ˂pZJtArdJtArdnXvnXvnXvrXQJ`rXQJ`tAJltAJlJltf`vXf`vXpZHAbpZHAblJtAdJtArdJtArdnXvnXvrXQJ`rXQJ`rXQJ`tAJltAJlnvppfH~ے`pZXQr˂rZdQblJtnXvnXvnrXQJrXQJ`rXQJ`r˂pr˂pr˂ptArdtArdvnXfpvbHAXQJdrtAltbQZ|dnvpnvpے`Jے`J|ZdQ|ZdQ|ZdQ`f~`f~ےbHAےbHAےbHAtbdQZtbdQZnvpnvpے`Jے`Jے`J|ZdQ|ZdQ`f~`f~`fHXQJ`ےbHAltdbnvfH~fvXnvے`Jے`J|ZdQ|ZdQf~`f~`f~ےbHAےbHAtbdQZtbdQZtbdQZnvpnvpے`Jے`Jے`JXQ|ZdQ|ZdQ`f~`f~`ےHAےbHAےbHAltbtAJl`vXnf`vr˂pHAbے|ZdQ|ZdQ`f~`f~`fHےbHAےbHAtbdQZtbdQZbnvnvpnvpے`Jے`J|ZdQ|ZdQ|ZdQ`f~`f~ےbHAےbHAےbHAtbdQZtbdQZfHXnf`vHAbےpZHAbbtlArd|`f~`f~`ےHAےbHAےbHAZHAbZHAb|ZdQb|ZdQb|ZdQbv`fnXv``ےbJbdQZdrtnvffH~fH~XQr˂XQr˂btlbtlbtlHfpvHfpvZp˂Zp˂Zdr|dr|drfH~fH~XQr˂XQr˂XQr˂btlbtlHfpvHfpvfpvbHAXQZdrrtAJlpff`vnvfH~XQr˂XQr˂btlbtlHfpvHfpvHfpvZp˂Zp˂|dr|dr|dtAfH~fH~XQr˂XQr˂rbtbtlbtlHfpvHfpvZp˂Zp˂Zp˂dQZ|tbdQZvpfXH~ZHAb`JXQrbtlbtlHfpvHfpvfpvZp˂Zp˂|dr|drpfHfH~fH~XQr˂XQr˂btlbtlbtlHfpvHfpvZp˂Zp˂Zdr|dr|drvpfXnv`JXQrے`JJtArdZdQbtHfpvHfpvZp˂Zp˂Zp˂ے`JXQے`JXQtlJtlJtlJ~Hfpp˂rHAZp˂Z|dAJltf`vXf`vXf`vXpZHAbpZHAbJtArdJtArdJtArdnXvnXvrXQJ`rXQJ`tAJltAJltAJlf`vXf`vXpZHAbpZHAbpZHAJtArdJtArdnXvnXvnrXQJJ`ےtAdQZ|tbdQvXnpfH~fZHAbpZHAbpZHAbJtArdJtArdnXvnXvnXvrXQJ`rXQJ`tAJltAJlJltf`vXf`vXpZHAbpZHAblJtAdJtArdJtArdnXvnXvrXQJ`rXQJ`rXQJ`drtAJ|ltH~fZHAbے`JXQ˂pZAJtArdJtArdnXvnXvnrXQJrXQJ`rXQJ`tAJltAJlf`vXf`vXf`vXpZHAbpZHAbJtArdJtArdJtArdnXvnXvrXQJ`rXQJ`tAJltAJltAJlH~fpfH~˂pZXQr˂|ZdQlJtnXvnXvrXQJ`rXQJ`rXQJ`r˂pr˂ptArdtArdtArdv~XQJ`ےrXQJrtAJlbdQZ|nvpnvpnvpے`Jے`J|ZdQ|ZdQf~`f~`f~ےbHAےbHAtbdQZtbdQZtbdQZnvpnvpے`Jے`Jے`JXQ|ZdQ|ZdQ`f~`f~`p˂bHAZpdrtAZ|dvpfHf`vے`Jے`Jے`J|ZdQ|ZdQ`f~`f~`fHےbHAےbHAtbdQZtbdQZbnvnvpnvpے`Jے`J|ZdQ|ZdQ|ZdQ`f~`f~ےbHAےbHAےbHAltdbnvvpfHJQrrZHA㙒`JXQ|ZdQ|ZdQ`f~`f~`ےHAےbHAےbHAtbdQZtbdQZnvpnvpnvpے`Jے`J|ZdQ|ZdQf~`f~`f~ےbHAےbHAtbdQZtbdQZtbdQZ`vXnf`vHAbےp`JXQbtlArd|`f~`f~ےbHAےbHAےbHAZHAbZHAb|ZdQb|ZdQbf~HHfpvbHAZ`ےbtbdQdrtfH~fH~fH~XQr˂XQr˂btlbtlHfpvHfpvHfpvZp˂Zp˂|dr|dr|dtAfH~fH~XQr˂XQr˂rbtbtlbtlHfpvHfpvrXQJ`˂rXQJltrtAJl~f`XnvXQr˂XQr˂XQr˂btlbtlHfpvHfpvfpvZp˂Zp˂|dr|drpfHfH~fH~XQr˂XQr˂btlbtlbtlHfpvHfpvZp˂Zp˂ZdrrtAJlp`vX~f`˂pZHbے`rbtbtlbtlHfpvHfpvZp˂Zp˂Zp˂|dr|drfH~fH~fH~XQr˂XQr˂btlbtlHfpvHfpvHfpvZp˂Zp˂|dr|dr|dtAvpfXH~`JXQHArbtJtArdZdQbHfpvHfpvZp˂Zp˂Zdrے`JXQے`JXQtlJtlJXv`fnXvp˂rHAZp`Z|dAJltf`vXf`vXfZHAbpZHAbpZHAbJtArdJtArdnXvnXvnXvrXQJ`rXQJ`tAJltAJlJltf`vXf`vXpZHAbpZHAblJtAdJtArdJtArdnXvnXvےbHAJ`ےbdQZ|tbdQvXnpfH~pZHAbpZHAbpZHAJtArdJtArdnXvnXvnrXQJrXQJ`rXQJ`tAJltAJlf`vXf`vXf`vXpZHAbpZHAbJtArdJtArdJtArdnXvnXvrXQJ`rXQJ`tAdQZ|tbdQnvpvXnAbے`JXQrlJtAdJtArdJtArdnXvnXvrXQJ`rXQJ`rXQJ`tAJltAJlf`vXf`vXfZHAbpZHAbpZHAbJtArdJtArdnXvnXvnXvrXQJ`rXQJ`tAJltAJlJltH~fZHAbbے`lJA|ZQbt璑JtArdnXvnXvrXQJ`rXQJ`tAJlr˂pr˂ptArdtArd~Hf`f~XQJ`ےےbHArtAJlbdQZnvpnvpے`Jے`Jے`J|ZdQ|ZdQ`f~`f~`fHےbHAےbHAtbdQZtbdQZbnvnvpnvpے`Jے`J|ZdQ|ZdQ|ZdQ`f~`f~Zp˂bHAZpdrtAtAJlvpfHf`vے`Jے`Jے`JXQ|ZdQ|ZdQ`f~`f~`ےHAےbHAےbHAtbdQZtbdQZnvpnvpnvpے`Jے`J|ZdQ|ZdQf~`f~`f~ےbHAےbHAdrtAZ|dfH~vpfHJXQrpZHA|ZdQ|ZdQ|ZdQ`f~`f~ےbHAےbHAےbHAtbdQZtbdQZnvpnvpے`Jے`Jے`J|ZdQ|ZdQ`f~`f~`fHےbHAےbHAtbdQZtbdQZbnvvpfH˂pJXQrZdQbtlJtArf~`f~`f~ےbHAےbHAtbdQZ|drZHAbZHAb|ZdQb|ZdQbpvnHfpvrXQZp˂bQZ|rtAJlfH~fH~XQr˂XQr˂XQr˂btlbtlHfpvHfpvfpvZp˂Zp˂|dr|drpfHfH~fH~XQr˂XQr˂btlbtlbtlHfpvHfpvrXQJ``ےbJl|tbdQZ~fvXnvpfHXQr˂XQr˂rbtbtlbtlHfpvHfpvZp˂Zp˂Zp˂|dr|drfH~fH~fH~XQr˂XQr˂btlbtlHfpvHfpvHfpvZp˂Zp˂JltrtAJlf`vX~f`˂pZHbے`btlbtlbtlHfpvHfpvZp˂Zp˂Zdr|dr|drfH~fH~XQr˂XQr˂XQr˂btlbtlHfpvHfpvfpvZp˂Zp˂|dr|drp`vX~f`ZHAb˂pZHAlJtAd|ZHfpvHfpvHfpvZp˂Zp˂|drtAJlے`JXQے`JXQtlJtlJXv`fnXHJ`ےrXQJ`drtAJtbdQf`vXf`vXpZHAbpZHAbpZHAJtArdJtArdnXvnXvnrXQJrXQJ`rXQJ`tAJltAJlf`vXf`vXf`vXpZHAbpZHAbJtArdJtArdJtArdnXvnXvےrHAZp˂drtAJ|drnvp~f`pZHAbpZHAblJtAdJtArdJtArdnXvnXvrXQJ`rXQJ`rXQJ`tAJltAJlf`vXf`vXfZHAbpZHAbpZHAbJtArdJtArdnXvnXvnXvrXQJ`rXQJ`bdQZ|tbdQnvppfH~Abے`JXQrJtArdJtArdJtArdnXvnXvrXQJ`rXQJ`tAJltAJltAJlf`vXf`vXpZHAbpZHAbpZHAJtArdJtArdnXvnXvnrXQJrXQJ`rXQJ`tAJltAJlnvpvXnے`JXQbے`rd|dQbt璀nXvnXvnXvrXQJ`rXQJ`tAJltbdQZr˂pr˂ptArdtArd~HffpvbHAZpےbHAltbZ|dnvpnvpے`Jے`Jے`JXQ|ZdQ|ZdQ`f~`f~`ےHAےbHAےbHAtbdQZtbdQZnvpnvpnvpے`Jے`J|ZdQ|ZdQf~`f~`f~XQJ`ےrXQJltbtAJlfH~ˍvXnے`Jے`J|ZdQ|ZdQ|ZdQ`f~`f~ےbHAےbHAےbHAtbdQZtbdQZnvpnvpے`Jے`Jے`J|ZdQ|ZdQ`f~`f~`fHےbHAےbHAdrtAtAJlfHXnf`vJQrpZAbے|ZdQ|ZdQf~`f~`f~ےbHAےbHAtbdQZtbdQZtbdQZnvpnvpے`Jے`Jے`JXQ|ZdQ|ZdQ`f~`f~`ےHAےbHAےbHAtbdQZtbdQZfH~vpfHr˂pJXQrZdQbtlJtAr`f~`f~`fHےbHAےbHAtbdQZ|drtAJltAJlf`vXf`vXfZHAbpZHAbpZHAbJtArdJtArdnXvnXvnXvrXQJ`rXQJ`tAJltAJlJltf`vXf`vXZHAb˂pZHAb㉀ۑppfH~pfH~p|dZ|dtbdQZtbdQZnvpnvpے`Jے`Jے`J|ZdQ|ZdQ`f~`f~`fHےbHAےbHAtbdQZtbdQZbnvnvpnvpے`JXQbے`JAHr󙐅f۝`vf۝`vrQtJlrQtJl|dr|drfH~fH~XQr˂XQr˂XQr˂btlbtlHfpvHfpvfpvZp˂Zp˂|dr|drpfHfH~fH~r˂pJXQrۑpJXnv˅Xnv˒tbAdtbAdtAJltAJlf`vXf`vXpZHAbpZHAbpZHAJtArdJtArdnXvnXvnrXQJrXQJ`rXQJ`tAJltAJlf`vXf`vXf`vXZHAb˂p`ZAHr󙐂ˍpfH~pfH~Z|dZ|dtbdQZtbdQZnvpnvpے`Jے`Jے`JXQ|ZdQ|ZdQ`f~`f~`ےHAےbHAےbHAtbdQZtbdQZnvpnvpnvpے`JXQQXb㉀ہ`ZQXbㅐf۝`vf۝`vrQtJlrQtJl|dr|dtAfH~fH~XQr˂XQr˂rbtbtlbtlHfpvHfpvZp˂Zp˂Zp˂|dr|drfH~fH~fH~HAbےpJAHr󉀒ۑpJXnv˅Xnv˒tbAdtbAdtAJlJltf`vXf`vXpZHAbpZHAblJtAdJtArdJtArdnXvnXvrXQJ`rXQJ`rXQJ`tAJltAJlf`vXf`vXfr˂`JXQrˁ`ZAHr󙐂ˍpfH~pfH~Z|dZ|dtbdQZbnvnvpnvpے`Jے`J|ZdQ|ZdQ|ZdQ`f~`f~ےbHAےbHAےbHAtbdQZtbdQZnvpnvppZHAb˂pZQXb㉀ہ`pJAHf۝`vf۝`vrQtJlrQtJl|drpfHfH~fH~XQr˂XQr˂btlbtlbtlHfpvHfpvZp˂Zp˂Zdr|dr|drfH~fH~ے`JHAbےpJAHQXr󙐂ˁ`Xnv˅Xnv˒tbAdtbAdtAJlf`vXf`vXf`vXpZHAbpZHAbJtArdJtArdJtArdnXvnXvrXQJ`rXQJ`tAJltAJltAJlf`vXf`vXXQr˂`JXQrb㉀ۑpZQXb㉀pfH~pfH~Z|dZ|dtbdQZnvpnvpnvpے`Jے`J|ZdQ|ZdQf~`f~`f~ےbHAےbHAtbdQZtbdQZtbdQZnvpnvppZHAbے`JAHr󙐒ۑpJAHf۝`vf۝`vrQtJlrQtJl|drfH~fH~fH~XQr˂XQr˂btlbtlHfpvHfpvHfpvZp˂Zp˂|dr|dr|dtAfH~fH~ے`pJXQrˁ`ZQXr󙐂ˁ`Xnv˅Xnv˒tbAdtbAdZ|mnopqrsttsrqpon \ No newline at end of file diff --git a/barcode-generator/Resources/data/qrv25_2.dat b/barcode-generator/Resources/data/qrv25_2.dat deleted file mode 100644 index 2de8eb3..0000000 Binary files a/barcode-generator/Resources/data/qrv25_2.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv25_3.dat b/barcode-generator/Resources/data/qrv25_3.dat deleted file mode 100644 index d8e70cb..0000000 Binary files a/barcode-generator/Resources/data/qrv25_3.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv26_0.dat b/barcode-generator/Resources/data/qrv26_0.dat deleted file mode 100644 index 7b0b0e6..0000000 --- a/barcode-generator/Resources/data/qrv26_0.dat +++ /dev/null @@ -1,241 +0,0 @@ -xwxwxwxwxwxwxwxwvuvuvuvutstststsrqrqrqrqpopopooonmnmnmnmlklklklklklklklkjijijijihghghghgfefefefefefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSSSSSSTTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCBABABABA@?@?@?@?@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:987878787656565656565656543434343212121210/0/0/0/xwxwxwxwxwxwxwxwvuvuvuvutstststsrqrqrqrqooopopopnmnmnmnmlklklklklklklklkjijijijihghghghgfefefefefedcdcdcdcdcdcdcbabababa`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUSTSTSTSTTSTSTSSSRQRQRQRQPOPOPOPONMNMNMNMNMLKLKLKLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCBABABABA@?@?@?@?@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:987878787656565656543434343434343212121210/0/0/0/xwxwxwxwxwxwxwxwvuvuvuvutstststsrqrqrqrqopopopopnmnmnmnmlklklklklklklklkjijijijihghghghgfefefefedcdcdcdcdcdcdcdcbabababa`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUSTSTSTSTSSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCBABABABA@?@?@?@?@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:987878787656565654343434343434343212121210/0/0/0/xwxwxwxwxwxwxwxwvuvuvuvutstststsrqrqrqrqopopopopnmnmnmnmlklklklklkjijijijijijijihghghghgfefefefedcdcdcdcdcdcdcdcbabababa`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUSTSTSTSTTSRQRQRQRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCBABABABA@?@?@?@?@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:987878787656565654343434343434343212121210/0/0/0/xwxwxwxwxwxwxwxwvuvuvuvutstststsrqrqrqrqopopopopnmnmnmnmlklklklkjijijijijijijijihghghghgfefefefedcdcdcdcdcdcdcdcbabababa`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUSTSTSTSTRQRQRQRQRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCBABABABA@?@?@?@?@?>=>=>=>=>=>=>=<;<;<;<;:9:9:9:977777878656565654343434343434343212121210/0/0/0/xwxwxwxwvuvuvuvuvuvuvuvutstststsrqrqrqrqopopopopnmnmnmnmlklklklkjijijijijijijijihghghghgfefefefedcdcdcdcdcdcdcdcbabababa`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUSTSTSTSTRQRQRQRQRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCBABABABA@?@?@?@?>=>=>=>=>=>=>=>=<;<;<;<;:9:9:9:978787878656565654343434343434343212121210/0/0/0/xwxwxwxwvuvuvuvuvuvuvuvutstststsrqrqrqrqopopopopnmnmnmnmlklklklkjijijijijijijijihghghghgfefefefedcdcdcdcdcdcdcdcbabababa`_`_`_`_^]^]^]^]^]\[\[\[\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUSTSTSSSSRQRQRQRQRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEFEDCDCDCDCDCDCDCBABABABA@?@?@?@?>=>=>=>=>=>=>=>=<;<;<;<;:9:9:9:978787878656565654343434343434343212121210/0/0/0/xwxwxwxwvuvuvuvuvuvuvuvutstststsrqrqrqrqooooooponmnmnmnmlklklklkjijijijijijijijihghghghgfefefefedcdcdcdcdcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUSSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEDCDCDCDCDCDCDCDCBABABABA@?@?@?@?>=>=>=>=>=>=>=>=<;<;<;<;:9:9:9:978787878656565654343434343434343212121210/0/0/0/xwxwxwxwvuvuvuvuvuvuvuvutstststsrqrqrqrqpopopoponmnmnmnmlklklklkjijijijijijijijihghghghgfefefefedcdcdcdcdcbababababababa`_`_`_`_^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKLKJIJIJIJIJIJIJIHGHGHGHGFEFEFEFEDCDCDCDCDCDCDCDCBABABABA@?@?@?@?>=>=>=>=>=>=>=>=<;<;<;<;:9:9:9:978787878656565654343434343212121212121210/0/0/0/xwxwxwxwvuvuvuvuvuvuvuvutstststsrqrqrqrqpopopoponmnmnmnmlklklklkjijijijijijijijihghghghgfefefefedcdcdcdcbabababababababa`_`_`_`_^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGFEFEFEFEDCDCDCDCDCDCDCDCBABABABA@?@?@?@?>=>=>=>=>=>=>=>=<;<;<;<;:9:9:9:978787878656565654343434321212121212121210/0/0/0/xwxwxwxwvuvuvuvutstststsrqrqrqrqpopopopopopopoponmnmnmnmlklklklkjijijijijihghghghghghghgfefefefedcdcdcdcbabababababababa`_`_`_`_^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQRQPOPOPOPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGFEFEFEFEDCDCDCDCDCDCDCDCBABABABA@?@?@?@?>=>=>=>=>=>=>=>=<;<;<;<;:9:9:9:978777777656565654343434321212121212121210/0/0/0/xwxwxwxwvuvuvuvutstststsrqrqrqrqooooopoppopopoponmnmnmnmlklklklkjijijijihghghghghghghghgfefefefedcdcdcdcbabababababababa`_`_`_`_^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGFEFEFEFEDCDCDCDCDCDCDCDCBABABABA@?@?@?@?>=>=>=>=>=<;<;<;<;<;<;<;:9:9:9:987878787656565654343434321212121212121210/0/0/0/xwxwxwxwvuvuvuvutstststsrqrqrqrqopopopoppopopoponmnmnmnmlklklklkjijijijihghghghghghghghgfefefefedcdcdcdcbabababababababa`_`_`_`_^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGFEFEFEFEDCDCDCDCDCDCDCDCBABABABA@?@?@?@?>=>=>=>=<;<;<;<;<;:9:9:9:9:9:9:987878787656565654343434321212121212121210/0/0/0/xwxwxwxwvuvuvuvutstststsrqrqrqrqopopopopmmmmmmnmnmnmnmnmlklklklkjijijijihghghghghghghghgfefefefedcdcdcdcbabababababababa`_`_`_`_^]^]^]^]\[\[\[\[\[ZYZYZYZYZYZYZYXWXWXWXWVUVUVUVUSSSSSTSTRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGFEFEFEFEDCDCDCDCDCBABABABABABABA@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:9:987878787878787656565654343434321212121212121210/0/0/0/xwxwxwxwvuvuvuvutstststsrqrqrqrqopopopopnmnmnmnmnmnmnmnmlklklklkjijijijihghghghghghghghgfefefefedcdcdcdcbabababababababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWVUVUVUVUSTSTSTSTRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGFEFEFEFEDCDCDCDCBABABABABABABABA@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:98777777887878787656565654343434321212121212121210/0/0/0/xwxwxwxwvuvuvuvutstststsrqrqrqrqopopopopnmnmnmnmnmnmnmnmlklklklkjijijijihghghghghghghghgfefefefedcdcdcdcbababababa`_`_`_`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWVUVUVUVUSTSTSTSTRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIJIHGHGHGHGHGHGHGFEFEFEFEDCDCDCDCBABABABABABABABA@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:97878787887878777656565654343434321212121210/0/0/0/0/0/0/xwxwxwxwvuvuvuvutstststsrqrqrqrqopopopopnmnmnmnmnmnmnmnmlklklklkjijijijihghghghghghghghgfefefefedcdcdcdcbabababa`_`_`_`_`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWVUVUVUVUSTSTSTSTRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEDCDCDCDCBABABABABABABABA@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:978787878778787876565656543434343212121210/0/0/0/0/0/0/0/xwxwxwxwvuvuvuvutstststsrqrqrqrqopoooooonmnmnmnmnmnmnmnmlklklklkjijijijihghghghghgfefefefefefefedcdcdcdcbabababa`_`_`_`_`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWVUVUVUVUSTSTSTSTRQRQRQRQPOPOPOPOPONMNMNMNMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEDCDCDCDCBABABABABABABABA@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:978787878876565656565656543434343212121210/0/0/0/0/0/0/0/xwxwxwxwvuvuvuvutstststsrqrqrqrqpopopoponmnmnmnmnmnmnmnmlklklklkjijijijihghghghgfefefefefefefefedcdcdcdcbabababa`_`_`_`_`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWVUVUVUVUSTSTSTSTRQRQRQRQPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEDCDCDCDCBABABABABABABABA@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:978787878656565656565656543434343212121210/0/0/0/0/0/0/0/xwxwxwxwvuvuvuvutstststsrqrqrqrqpopopoponmnmnmnmnmlklklklklklklkjijijijihghghghgfefefefefefefefedcdcdcdcbabababa`_`_`_`_`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWVUVUVUVUSTSSSSSSRQRQRQRQPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEDCDCDCDCBABABABABABABABA@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:978787878656565656565656543434343212121210/0/0/0/0/0/0/0/.-.-.-.-xwxwxwxwvuvuvuvutstststsrqrqrqrqpopopoponmnmnmnmlklklklklklklklkjijijijihghghghgfefefefefefefefedcdcdcdcbabababa`_`_`_`_`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYZYXWXWXWXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEDCDCDCDCBABABABABA@?@?@?@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:978787777656565656565656543434343212121210/0/0/0/0/0/0/0/.-.-.-.-xwxwxwxwvuvuvuvutstststsrqrqrqrqpopopoponmnmnmnmlklklklklklklklkjijijijihghghghgfefefefefefefefedcdcdcdcbabababa`_`_`_`_`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWXWVUVUVUVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEDCDCDCDCBABABABA@?@?@?@?@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:977878787656565656565656543434343212121210/0/0/0/0/0/0/0/.-.-.-.-xwxwxwxwvuvuvuvutstststsrqrqrqrqpopopoponmnmnmnmlklklklklklklklkjijijijihghghghgfefefefefefefefedcdcdcdcbabababa`_`_`_`_`_^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUVUTSTSTSTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGHGFEFEFEFEFEFEFEDCDCDCDCBABABABA@?@?@?@?@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:987878787656565656565656543434343212121210/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+*)*)*)*)('('('('('&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!           - - - - .-.-.-.-.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!            - - - - .-.-.-.-.-,+,+,+,+,+,+,+*)*)*)*)('('('('&%&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!            - - - - .-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)('('('('&%&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!            - - - - .-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)('('('('&%&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!            - - - - .-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)('('('('&%&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!            - - - - .-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)('('('('&%&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!            - - - - .-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)('('('('&%&%&%&%&%$#$#$#$#$#$#$#"!"!"!"!         - - - - .-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!        - - - - .-.-.-.-,+,+,+,+,+*)*)*)*)*)*)*)('('('('&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!        - - - - .-.-.-.-,+,+,+,+*)*)*)*)*)*)*)*)('('('('&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!        - - - - .-.-.-.-,+,+,+,+*)*)*)*)*)*)*)*)('('('('&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!        - - - - .-.-.-.-,+,+,+,+*)*)*)*)*)*)*)*)('('('('&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!        - - - - .-.-.-.-,+,+,+,+*)*)*)*)*)*)*)*)('('('('&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!        - - - - .-.-.-.-,+,+,+,+*)*)*)*)*)*)*)*)('('('('&%&%&%&%$#$#$#$#$#"!"!"!"!"!"!"!        - - - - - - - .-.-.-.-,+,+,+,+*)*)*)*)*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!"!"!"!"!        - - - - - - - - .-.-.-.-,+,+,+,+*)*)*)*)*)('('('('('('('&%&%&%&%$#$#$#$#"!"!"!"!"!"!"!"!        - - - - - - - - .-.-.-.-,+,+,+,+*)*)*)*)('('('('('('('('&%&%&%&%$#$#$#$#"!"!"!"!"!"!"!"!        - - - - - - - - .-.-.-.-,+,+,+,+*)*)*)*)('('('('('('('('&%&%&%&%$#$#$#$#"!"!"!"!"!"!"!"!        - - - - - - - - .-.-.-.-,+,+,+,+*)*)*)*)('('('('('('('('&%&%&%&%$#$#$#$#"!"!"!"!"!"!"!"!        - - - - - - - - .-.-.-.-,+,+,+,+*)*)*)*)('('('('('('('('&%&%&%&%$#$#$#$#"!"!"!"!"!"!"!"!        - - - - - - - - .-.-.-.-,+,+,+,+*)*)*)*)('('('('('('('('&%&%&%&%$#$#$#$#"!"!"!"!"!           - - - - - .-.-.-.-,+,+,+,+*)*)*)*)('('('('('('('('&%&%&%&%$#$#$#$#"!"!"!"!         - - - - xxwwvvuuQQRRSSTT55443322GGHHIIJJ??>>==<;,,--..//iihhggff - -PPQQRRSSEEDDCCBBttuuvvww!! <<==>>??YYXXWWVV``aabbcc55443322(())**++hhggffee uutsrqpo PPQQRRSSEEDDCCBBttuuvvww!! <<==>>??YYXXWWVV``aabbcc55443322(())**++mmllkkjjLLMMNNOO??>>==77556677==LLKKJJIIttuuvvww!! <<==>>??YYXXWWVVttssrrqqUUVVWWXX1100//..KKLLMMNN:987766500112233eeddccbb TTUUVVWWAA@@??>>xxxxwwvv@@AABBCCUUTTSSRR - - ddeeffgg1100//..,,--..//ddccbbaaonnmmllk - - TTUUVVWWAA@@??>>xxxxwwvv@@AABBCCUUTTSSRR - - ddeeffgg1100//..,,--..//iihhggff - -PPQQRRSS66554433>>??@@AAHHGGFFEExxxxwwvv@@AABBCCUUTTSSRRppoonnmmYYZZ[[\\--,,++**OOPPQQRR5443322144556677aa``__^^XXYYZZ[[==<<;;:: !!""##uuttssrrDDEEFFGGQQPPOONN hhiijjkk--,,++**00112233``__^^]]kjjiihhgXXYYZZ[[==<<;;:: !!""##uuttssrrDDEEFFGGQQPPOONN hhiijjkk--,,++**00112233eeddccbb TTUUVVWW221100//BBCCDDEEDDCCBBAA !!""##uuttssrrDDEEFFGGQQPPOONNllkkjjii ]]^^__``))((''&&SSYYZZ[[100//..-8899::;;]]\\[[ZZ\\]]^^__99887766$$%%&&''qqppoonnHHIIJJKKMMLLKKJJllmmnnoo))((''&&44556677\\[[ZZYYgffeeddc\\]]^^__99887766$$%%&&''qqppoonnHHIIJJKKMMLLKKJJllmmnnoo))((''&&44556677aa``__^^XXYYZZ[[..--,,++FFGGHHII@@??>>==$$%%&&''qqppoonnHHIIJJKKMMLLKKJJhhggffee - - aabbccdd%%$$##""\\]]^^__-,,++**)<<==>>??YYXXWWVV``aabbcc55443322(())**++mmllkkjjLLMMNNOOIIHHGGFFppqqrrss%%$$##""8899::;;SSRRQQPP!!""##$$cbbaa``_``aabbcc55443322(())**++mmllkkjjLLMMNNOOIIHHGGFFppqqrrss%%$$##""8899::;;]]\\[[ZZ\\]]^^__**))((''JJKKLLMM<;:98776(())**++mmllkkjjLLMMNNOOIIHHGGFFddccbbaa - - eeffgghh!!``aabbcc)((''&&%@@AABBCCUUTTSSRR - - ddeeffgg1100//..,,--..//iihhggff - -PPQQRRSSEEDDCCBBttuuvvww!! <<==>>??OONNMMLL%%&&''((_^^]]\\[ - - ddeeffgg1100//..,,--..//iihhggff - -PPQQRRSSEEDDCCBBttuuvvww!! <<==>>??YYXXWWVV``aabbcc&&%%$$##NNOOPPQQ65544332,,--..//iihhggff - -PPQQRRSSEEDDCCBB``__^^]] iijjkkllddeeffgg%$$##""!DDEEFFGGQQPPOONN hhiijjkk--,,++**00112233eeddccbb TTUUVVWWAA@@??>>xxxxwwvv@@AABBCCKKJJIIHH))**++,,[ZZYYXWV hhiijjkk--,,++**00112233eeddccbb TTUUVVWWAA@@??>>xxxxwwvv@@AABBCCUUTTSSRR - - ddeeffgg""!!RRSSYYZZ21100//.00112233eeddccbb TTUUVVWWAA@@??>>\\[[ZZYYmmnnoopphhiijjkk! HHIIJJKKMMLLKKJJllmmnnoo))((''&&44556677aa``__^^XXYYZZ[[==<<;;:: !!""##uuttssrrDDEEFFGGGGFFEEDD--..//00UTSSRRQQllmmnnoo))((''&&44556677aa``__^^XXYYZZ[[==<<;;:: !!""##uuttssrrDDEEFFGGQQPPOONN hhiijjkk[[\\]]^^.--,,++*44556677aa``__^^XXYYZZ[[==<<;;::XXWWVVUUqqrrsstt llmmnnooLLMMNNOOIIHHGGFFppqqrrss%%$$##""8899::;;]]\\[[ZZ\\]]^^__99887766$$%%&&''qqppoonnHHIIJJKKCCBBAA@@11223344PPOONNMMppqqrrss%%$$##""8899::;;]]\\[[ZZ\\]]^^__99887766$$%%&&''qqppoonnHHIIJJKKMMLLKKJJllmmnnoo__``aabb*))((''&8899::;;]]\\[[ZZ\\]]^^__99887766TTSSRRQQuuvvwwxx - - uuvvwwxxPPQQRRSSEEDDCCBBttuuvvww!! <<==>>??YYXXWWVV``aabbcc55443322(())**++mmllkkjjLLMMNNOO??>>==77556677==LLKKJJIIttuuvvww!! <<==>>??YYXXWWVV``aabbcc55443322(())**++mmllkkjjLLMMNNOOIIHHGGFFppqqrrssccddeeff&%%$$##"<<==>>??YYXXWWVV``aabbcc55443322PPOONNMM xxwwvvuu - - xxwwvvuuTTUUVVWWAA@@??>>xxxxwwvv@@AABBCCUUTTSSRR - - ddeeffgg1100//..,,--..//iihhggff - -PPQQRRSS66554433>>??@@AAHHGGFFEExxxxwwvv@@AABBCCUUTTSSRR - - ddeeffgg1100//..,,--..//iihhggff - -PPQQRRSSEEDDCCBBttuuvvww - -gghhiijj"!! @@AABBCCUUTTSSRR - - ddeeffgg1100//..LLKKJJII!!""##$$oonnmmll tsrqpoon XXYYZZ[[==<<;;:: !!""##uuttssrrDDEEFFGGQQPPOONN hhiijjkk--,,++**00112233eeddccbb TTUUVVWW221100//BBCCDDEEDDCCBBAA !!""##uuttssrrDDEEFFGGQQPPOONN hhiijjkk--,,++**00112233eeddccbb TTUUVVWWAA@@??>>xxxxwwvv kkllmmnnDDEEFFGGQQPPOONN hhiijjkk--,,++**HHGGFFEE%%&&''((kkjjiihhnmmllkkj - - \\]]^^__99887766$$%%&&''qqppoonnHHIIJJKKMMLLKKJJllmmnnoo))((''&&44556677aa``__^^XXYYZZ[[..--,,++FFGGHHII@@??>>==$$%%&&''qqppoonnHHIIJJKKMMLLKKJJllmmnnoo))((''&&44556677aa``__^^XXYYZZ[[==<<;;:: !!""##uuoonnmmoouuvvwwHHIIJJKKMMLLKKJJllmmnnoo))((''&&DDCCBBAA))**++,,ggffeeddjiihhggf``aabbcc55443322(())**++mmllkkjjLLMMNNOOIIHHGGFFppqqrrss%%$$##""8899::;;]]\\[[ZZ\\]]^^__**))((''JJKKLLMM<;:98776(())**++mmllkkjjLLMMNNOOIIHHGGFFppqqrrss%%$$##""8899::;;]]\\[[ZZ\\]]^^__99887766$$%%&&''llkkjjii - - xxxxwwvvLLMMNNOOIIHHGGFFppqqrrss%%$$##""@@??>>==--..//00ccbbaa``!!feeddccb - - ddeeffgg1100//..,,--..//iihhggff - -PPQQRRSSEEDDCCBBttuuvvww!! <<==>>??YYXXWWVV``aabbcc&&%%$$##NNOOPPQQ65544332,,--..//iihhggff - -PPQQRRSSEEDDCCBBttuuvvww!! <<==>>??YYXXWWVV``aabbcc55443322(())**++hhggffee uutsrqpo PPQQRRSSEEDDCCBBttuuvvww!! <<;;::9911223344__^^]]\\""##$$%%baa``__^ hhiijjkk--,,++**00112233eeddccbb TTUUVVWWAA@@??>>xxxxwwvv@@AABBCCUUTTSSRR - - ddeeffgg""!!RRSSYYZZ21100//.00112233eeddccbb TTUUVVWWAA@@??>>xxxxwwvv@@AABBCCUUTTSSRR - - ddeeffgg1100//..,,--..//ddccbbaaonnmmllk - - TTUUVVWWAA@@??>>xxxxwwvv8877665555667788[[ZZYYSS&&''(())^]]\\[[Zllmmnnoo))((''&&44556677aa``__^^XXYYZZ[[==<<;;:: !!""##uuttssrrDDEEFFGGQQPPOONN hhiijjkk[[\\]]^^.--,,++*44556677aa``__^^XXYYZZ[[==<<;;:: !!""##uuttssrrDDEEFFGGQQPPOONN hhiijjkk--,,++**00112233``__^^]]kjjiihhgXXYYZZ[[==<<;;:: !!""##uuttssrr4433221199::;;<>??@@NNMMLLKK..//0011SSRRQQPPttuuvvww!! <<==>>??YYXXWWVV``aabbcc55443322(())**++mmllkkjjLLMMNNOOIIHHGGFFppqqrrssccddeeff&%%$$##"<<==>>??YYXXWWVV``aabbcc55443322(())**++mmllkkjjLLMMNNOOIIHHGGFFppqqrrss%%$$##""8899::;;SSRRQQPP!!""##$$cbbaa``_``aabbcc55443322(())**++mmllkkjj,,++**))AABBCCDDJJIIHHGG22334455OONNMMLLxxxxwwvv@@AABBCCUUTTSSRR - - ddeeffgg1100//..,,--..//iihhggff - -PPQQRRSSEEDDCCBBttuuvvww - -gghhiijj"!! @@AABBCCUUTTSSRR - - ddeeffgg1100//..,,--..//iihhggff - -PPQQRRSSEEDDCCBBttuuvvww!! <<==>>??OONNMMLL%%&&''((_^^]]\\[ - - ddeeffgg1100//..,,--..//iihhggff - -((''&&%%EEFFGGHHFFEEDDCC6677==>>KKJJIIHH !!""##uuttssrrDDEEFFGGQQPPOONN hhiijjkk--,,++**00112233eeddccbb TTUUVVWWAA@@??>>xxxxwwvv kkllmmnnDDEEFFGGQQPPOONN hhiijjkk--,,++**00112233eeddccbb TTUUVVWWAA@@??>>xxxxwwvv@@AABBCCKKJJIIHH))**++,,[ZZYYXWV hhiijjkk--,,++**00112233eeddccbb  - - $$##""!!IIJJKKLLBBAA@@????@@AABBGGFFEEDD$$%%&&''qqppoonnHHIIJJKKMMLLKKJJllmmnnoo))((''&&44556677aa``__^^XXYYZZ[[==<<;;:: !!""##uuoonnmmoouuvvwwHHIIJJKKMMLLKKJJllmmnnoo))((''&&44556677aa``__^^XXYYZZ[[==<<;;:: !!""##uuttssrrDDEEFFGGGGFFEEDD--..//00UTSSRRQQllmmnnoo))((''&&44556677aa``__^^  MMNNOOPP>>==7766CCDDEEFFCCBBAA@@(())**++mmllkkjjLLMMNNOOIIHHGGFFppqqrrss%%$$##""8899::;;]]\\[[ZZ\\]]^^__99887766$$%%&&''llkkjjii - - xxxxwwvvLLMMNNOOIIHHGGFFppqqrrss%%$$##""8899::;;]]\\[[ZZ\\]]^^__99887766$$%%&&''qqppoonnHHIIJJKKCCBBAA@@11223344PPOONNMMppqqrrss%%$$##""8899::;;]]\\[[ZZppqqrrss%%$$##""8899::;;]]\\[[ZZ\\]]^^__99887766$$%%&&''llkkjjii - - xxxxwwvvLLMMNNOOIIHHGGFFppqqrrss%%$$##""8899::;;]]\\[[ZZ\\]]^^__99887766$$%%&&''iihhggff]]\\[[ZZttuuvvww!! <<==>>??YYXXWWVV``aabbcc55443322(())**++hhggffee uutsrqpo PPQQRRSSEEDDCCBBttuuvvww!! <<==>>??YYXXWWVV``aabbcc55443322(())**++eeddccbbYYXXWWVVxxxxwwvv@@AABBCCUUTTSSRR - - ddeeffgg1100//..,,--..//ddccbbaaonnmmllk - - TTUUVVWWAA@@??>>xxxxwwvv@@AABBCCUUTTSSRR - - ddeeffgg1100//..,,--..//aa``__^^!!""##UUTTSSRR !!""##uuttssrrDDEEFFGGQQPPOONN hhiijjkk--,,++**00112233``__^^]]kjjiihhgXXYYZZ[[==<<;;:: !!""##uuttssrrDDEEFFGGQQPPOONN hhiijjkk--,,++**00112233]]\\[[ZZ$$%%&&''QQPPOONN$$%%&&''qqppoonnHHIIJJKKMMLLKKJJllmmnnoo))((''&&44556677\\[[ZZYYgffeeddc\\]]^^__99887766$$%%&&''qqppoonnHHIIJJKKMMLLKKJJllmmnnoo))((''&&44556677YYSSRRQQ(())**++MMLLKKJJ !!""##(())**++mmllkkjjLLMMNNOOIIHHGGFFppqqrrss%%$$##""8899::;;SSRRQQPP!!""##$$cbbaa``_``aabbcc55443322(())**++mmllkkjjLLMMNNOOIIHHGGFFppqqrrss%%$$##""8899::;;PPOONNMM,,--..//IIHHGGFF$$%%&&'',,--..//iihhggff - -PPQQRRSSEEDDCCBBttuuvvww!! <<==>>??OONNMMLL%%&&''((_^^]]\\[ - - ddeeffgg1100//..,,--..//iihhggff - -PPQQRRSSEEDDCCBBttuuvvww!! <<==>>??LLKKJJII00112233EEDDCCBB(())**++00112233eeddccbb TTUUVVWWAA@@??>>xxxxwwvv@@AABBCCKKJJIIHH))**++,,[ZZYYXWV hhiijjkk--,,++**00112233eeddccbb TTUUVVWWAA@@??>>xxxxwwvv@@AABBCCHHGGFFEE44556677AA@@??>>,,--..//44556677aa``__^^XXYYZZ[[==<<;;:: !!""##uuttssrrDDEEFFGGGGFFEEDD--..//00UTSSRRQQllmmnnoo))((''&&44556677aa``__^^XXYYZZ[[==<<;;:: !!""##uuttssrrDDEEFFGGDDCCBBAA==>>??@@==<<;;::001122338899::;;]]\\[[ZZ\\]]^^__99887766$$%%&&''qqppoonnHHIIJJKKCCBBAA@@11223344PPOONNMMppqqrrss%%$$##""8899::;;]]\\[[ZZ\\]]^^__99887766$$%%&&''qqppoonnHHIIJJKK@@??>>==AABBCCDD9988776644556677<<==>>??YYXXWWVV``aabbcc55443322(())**++mmllkkjjLLMMNNOO??>>==77556677==LLKKJJIIttuuvvww!! <<==>>??YYXXWWVV``aabbcc55443322(())**++mmllkkjjLLMMNNOO77665544EEFFGGHH554433228899::;;@@AABBCCUUTTSSRR - - ddeeffgg1100//..,,--..//iihhggff - -PPQQRRSS66554433>>??@@AAHHGGFFEExxxxwwvv@@AABBCCUUTTSSRR - - ddeeffgg1100//..,,--..//iihhggff - -PPQQRRSS33221100IIJJKKLL1100//..<<==>>??DDEEFFGGQQPPOONN hhiijjkk--,,++**00112233eeddccbb TTUUVVWW221100//BBCCDDEEDDCCBBAA !!""##uuttssrrDDEEFFGGQQPPOONN hhiijjkk--,,++**00112233eeddccbb TTUUVVWW//..--,,MMNNOOPP--,,++**@@AABBCCHHIIJJKKMMLLKKJJllmmnnoo))((''&&44556677aa``__^^XXYYZZ[[..--,,++FFGGHHII@@??>>==$$%%&&''qqppoonnHHIIJJKKMMLLKKJJllmmnnoo))((''&&44556677aa``__^^XXYYZZ[[++**))((QQRRSSYY))((''&&DDEEFFGGLLMMNNOOIIHHGGFFppqqrrss%%$$##""8899::;;]]\\[[ZZ\\]]^^__**))((''JJKKLLMM<;:98776(())**++mmllkkjjLLMMNNOOIIHHGGFFppqqrrss%%$$##""8899::;;]]\\[[ZZ\\]]^^__''&&%%$$ZZ[[\\]]%%$$##""HHIIJJKKPPQQRRSSEEDDCCBBttuuvvww!! <<==>>??YYXXWWVV``aabbcc&&%%$$##NNOOPPQQ65544332,,--..//iihhggff - -PPQQRRSSEEDDCCBBttuuvvww!! <<==>>??YYXXWWVV``aabbcc##""!!^^__``aa!! LLMMNNOOTTUUVVWWAA@@??>>xxxxwwvv@@AABBCCUUTTSSRR - - ddeeffgg""!!RRSSYYZZ21100//.00112233eeddccbb TTUUVVWWAA@@??>>xxxxwwvv@@AABBCCUUTTSSRR - - ddeeffggbbccddeePPQQRRSSXXYYZZ[[==<<;;:: !!""##uuttssrrDDEEFFGGQQPPOONN hhiijjkk[[\\]]^^.--,,++*44556677aa``__^^XXYYZZ[[==<<;;:: !!""##uuttssrrDDEEFFGGQQPPOONN hhiijjkkffgghhiiTTUUVVWW\\]]^^__99887766$$%%&&''qqppoonnHHIIJJKKMMLLKKJJllmmnnoo__``aabb*))((''&8899::;;]]\\[[ZZ\\]]^^__99887766$$%%&&''qqppoonnHHIIJJKKMMLLKKJJllmmnnoojjkkllmmXXYYZZ[[``aabbcc55443322(())**++mmllkkjjLLMMNNOOIIHHGGFFppqqrrssccddeeff&%%$$##"<<==>>??YYXXWWVV``aabbcc55443322(())**++mmllkkjjLLMMNNOOIIHHGGFFppqqrrss mmllkkjj\\]]^^__ddeeffgg1100//..,,--..//iihhggff - -PPQQRRSSEEDDCCBBttuuvvww - -gghhiijj"!! @@AABBCCUUTTSSRR - - ddeeffgg1100//..,,--..//iihhggff - -PPQQRRSSEEDDCCBBttuuvvww - - - -iihhggff - -``aabbcchhiijjkk--,,++**00112233eeddccbb TTUUVVWWAA@@??>>xxxxwwvv kkllmmnnDDEEFFGGQQPPOONN hhiijjkk--,,++**00112233eeddccbb TTUUVVWWAA@@??>>xxppoonn eeddccbb - - ddeeffggllmmnnoo))((''&&44556677aa``__^^XXYYZZ[[==<<;;:: !!""##uuoonnmmoouuvvwwHHIIJJKKMMLLKKJJllmmnnoo))((''&&44556677aa``__^^XXYYZZ[[==<<;;:: !!""##mmllkkjjaa``__^^ hhiijjkkllmmbdQZ|Jlt`vXnے`JdQbtpvnZp˂|drtbdQZf`vXpZHAbbtl|ZdQ`f~rXQJ`tAJlpfHnvpے`JJtArdf~HrXQJ`|rAJlltbf`vXpZHAbbtl|ZdQ`f~rXQJ`tAJlpfHnvpے`JJtArdnXvHfpvےbHAltdH~ے`JXQbtl|ZdQ`f~rXQJ`tAJldrtAbdQZ|vpfXQr˂lJtArvf~HrXQJ`tAJl|dtAnvpے`JJtArdbnXvHfpvےbHAtbdQZf`vXfH~XQr˂|ZdQfpvےbHAtbddQZ|nvpے`JJtArdbnXvHfpvےbHAtbdQZf`vXfH~XQr˂|ZdQ`f~nXvZp˂rtAJlvpfHr˂pJtArdbnXvHfpvےbHAtbdQZJltdrtAH~fpZHAbd|ZfpvےbHAtbdQZJltfH~XQr˂|ZdQ`f~nXvZp˂|drnvpf`vXpZHAbbtlnXv`Zp˂QZ|dAJltfH~XQr˂|ZdQ`f~nXvZp˂|drnvpf`vXpZHAbbtlHfpv`fHrXQJ`tbdQ~f`ZHAb|ZdQ`f~nXvZp˂|drbdQZ|Jlt`vXnے`JdQtArdnXv`Zp˂|drbnvf`vXpZHAbbtlHfpv`f~rXQJ`tAJlfH~nvpے`JJtArdf~HrXQJ`rtAJlbnvf`vXpZHAbbtlHfpv`f~rXQJ`tAJlfH~nvpے`JJtArdnXvfpvےbHAZ|dvXnے`JXQbtlHfpv`f~rXQJ`tAJldrtAbdQZ|vpfXQr˂|ZdQf~HrXQJ`tAJlpfHnvpے`JJtArdnXvHfpvےbHAtbdQZf`vXfH~XQr˂|ZdQXv`fp˂rtbdpfHnvpے`JJtArdnXvHfpvےbHAtbdQZf`vXfH~XQr˂|ZdQ`f~nrXQJZp˂rtAJlvpfHrZHAJtArdnXvHfpvےbHAtbdQZJlt`vXnH~fp`JXQbtlfpvےbHAtbdQZf`vXfH~XQr˂|ZdQ`f~nXvZp˂|drnvpf`vXpZHAbbtl~HfXQJ`ےQZ|df`vXfH~XQr˂|ZdQ`f~nXvZp˂|drnvpf`vXpZHAbbtlHfpv`ےHArXQJ`tbdQ~f`bے`|ZdQ`f~nXvZp˂|drbdQZ|vpf`vXnr˂pJtArdnXv`Zp˂|drnvpf`vXpZHAbbtlHfpv`fHrXQJ`tAJlfH~nr˂ے`JJtArdpvnbHAZrtAJnvpf`vXpZHAbbtlHfpv`fHrXQJ`tAJlfH~nr˂ے`JJtArdnXvZp˂ےbHAZ|lvXH~JXQrbtlHfpv`fHrXQJ`tAJldrtAH~fvpfZHAb|ZdQf~fprXQJ`tAJlfH~nvpے`JJtArdnXvfpvےbHAtbdQZf`vXpZHAbXQr˂|ZdQXv`fp˂rbdQZ|fH~nvpے`JJtArdnXvfpvےbHAtbdQZf`vXpZHAbXQr˂|ZdQ`f~rXQJ`Zp˂tbdQZf`vpZHAJtArdnXvfpvےbHAtbdQZJlt`vXnH~fے`JXQbtlvnXےbHAtbdQZf`vXfH~XQr˂|ZdQ`f~nrXQJZp˂|drnvpے`JpZHAbbtl~HfXQJ`ےdrtAf`vXfH~XQr˂|ZdQ`f~nrXQJZp˂|drnvpے`JpZHAbbtlHfpvےbHArXQJ`|drXnvbے`|ZdQ`f~nrXQJZp˂|drbdQZ|vpf`vXnr˂p|ZdQbv`fZp˂|drnvpf`vXpZHAbbtlHfpv`ےHArXQJ`tAJlfH~XQr˂ے`JJtArdpvbHAXQJltnvpf`vXpZHAbbtlHfpv`ےHArXQJ`tAJlfH~XQr˂ے`JJtArdnXvZp˂ےbHAtAJlpfH~JXQrbtlHfpv`ےHArXQJ`tAJldrtAH~fr˂p|ZdQbnXv`~HfprXQJ`tAJlfH~nr˂ے`JJtArdnXvZp˂ےbHAtbdQZf`vXpZHAbXQr˂|ZdQ~HfpJ`ےbdQZ|fH~nr˂ے`JJtArdnXvZp˂ےbHAtbdQZf`vXpZHAbXQr˂|ZdQ`f~rXQJ`Zp˂tbdQZf`vpZAbJtArdnXvZp˂ےbHAtbdQZJlt`vXn`JXQrtlJf~fpvnXےbHAtbdQZf`vXpZHAbXQr˂|ZdQ`f~rXQJ`Zp˂|drnvpے`JpZHAbtlvnXbHAZpdrtAf`vXpZHAbXQr˂|ZdQ`f~rXQJ`Zp˂|drnvpے`JpZHAbtlHfpvےbHArbdQZ|ltXnv`JXQr|ZdQ`f~rXQJ`Zp˂|drbdQZ|vpf˂pZtArdvnXv`fZp˂|drnvpے`JpZHAbbtlHfpvےbHArXQJ`tAJlfH~XQr˂ے`JXQJtArdv`f˂rXQJltnvpے`JpZHAbbtlHfpvےbHArXQJ`tAJlfH~XQr˂ے`JXQJtArdnXvZp˂|ltbnvp`vX˂pZbtlHfpvےbHArXQJ`tAJldrtAH~fHAbے|ZdQbv`frQJHArXQJ`tAJlfH~XQr˂ے`JJtArdnXvZp˂ےbHAtbdQZf`vXpZHAbrbt|ZdQ~HfpJ`ےbQZdfH~XQr˂ے`JJtArdnXvZp˂ےbHAtbdQZf`vXpZHAbrbt|ZdQ`f~rXQJ`bdQZ|p`vXnr˂HAbےJtArdnXvZp˂ےbHAtbdQZJlt`vXn`JXQrtl|~HfpZp˂ےbHAtbdQZf`vXpZHAbXQr˂|ZdQ`f~rXQJ`Zp˂|drnvpے`JlJtAdbtlvnXbHAZprtAJlf`vXpZHAbXQr˂|ZdQ`f~rXQJ`Zp˂|drnvpے`JlJtAdbtlHfpvےbHAdrtAnvppZAb``JXQr|ZdQ`f~rXQJ`Zp˂|drbdQZ|vpf˂pZZdQbtvnXrXQJ`Zp˂|drnvpے`JpZHAbtlHfpvےbHArbdQZtAJlfH~XQr˂|ZdQJtArdv`pv˂btbdQnvpے`JpZHAbtlHfpvےbHArbdQZtAJlfH~XQr˂|ZdQJtArdnXvZp˂JltfH~JXQr˂pZAbtlHfpvےbHArbdQZtAJldrtAH~fHAblJtAv`fےbHArXQJ`tAJlfH~XQr˂ے`JXQJtArdnXvZp˂|drtbdQZf`vXpZHAbbtl|ZdQnXvHAZp˂Z|dfH~XQr˂ے`JXQJtArdnXvZp˂|drtbdQZf`vXpZHAbbtl|ZdQ`f~rXQJ`bdQZ|f`vX˂pZH`JXQJtArdnXvZp˂|drtbdQZJlt`vXn˂pZHArd|~HfvnZp˂ےbHAtbdQZf`vXpZHAbrbt|ZdQ`f~rXQJ`tAJl|drnvpے`JJtArdbtl`f~rXQJrtAJlf`vXpZHAbrbt|ZdQ`f~rXQJ`tAJl|drnvpے`JJtArdbtlHfpvےbHAdrtAnvpAbے`rbt|ZdQ`f~rXQJ`tAJl|drbdQZ|vpfbے`ZdQbtXv`frXQJ`Zp˂|drnvpے`JlJtAdbtlHfpvےbHAtbdQZtAJlfH~XQr˂|ZdQJtArdHfpv`ےbtbdQnvpے`JlJtAdbtlHfpvےbHAtbdQZtAJlfH~XQr˂|ZdQJtArdnXvZp˂dQZ|`vXnJXQrlJtAdbtlHfpvےbHAtbdQZtAJldrtAH~fJXQrlJtA~HfےbHArbdQZtAJlfH~XQr˂|ZdQJtArdnXvZp˂|drtbdQZf`vXpZHAbbtl|ZdQnXvHAZp˂Z|rAJfH~XQr˂|ZdQJtArdnXvZp˂|drtbdQZf`vXpZHAbbtl|ZdQ`f~rXQJ`drtAJvpf˂pZH|ZdQJtArdnXvZp˂|drtbdQZpfHJlt`vXn˂pZHArdtpvnZp˂|drtbdQZf`vXpZHAbbtl|ZdQ`f~rXQJ`tAJl|dtAnvpے`JJtArdbnXv`pvrXQJltbf`vXpZHAbbtl|ZdQ`f~rXQJ`tAJl|dtAnvpے`JJtArdbnXvHfpvےbHAltbH~fAbJbtl|ZdQ`f~rXQJ`tAJl|dtAf`vXbdQZ|vpfbے`lJtArXv`frXQJ`tAJl|drnvpے`JJtArdbtlHfpvےbHAtbdQZJltfH~XQr˂|ZdQ`pvnrXQJ`p˂dQZ|nvpے`JJtArdbtlHfpvےbHAtbdQZJltfH~XQr˂|ZdQ`f~nXvZp˂dQZ|`vXnQr˂pJtArdbtlHfpvےbHAtbdQZJltnvpdrtAH~fJXQHAbd|Z~HfےbHAtbdQZtAJlfH~XQr˂|ZdQJtArdnXvZp˂|drbnvf`vXpZHAbbtlnXv``p˂rbdQZdrtAJfH~XQr˂|ZdQJtArdnXvZp˂|drbnvf`vXpZHAbbtlHfpv`f~rXQJ`drtAJvpfZHAb|ZdQJtArdnXvZp˂|drbnvfH~f`vXfH~XQr˂|ZdQ`f~nrXQJZp˂|drnvpr˂pl|ZdQbnXv~HfےbHAtbdQZf`vXfH~XQr˂|ZdQ`f~nrXQJZp˂|drnvppZHAbˁ`ZpfH~tbAdnvpf`vXpZHAbbtlHfpv`ےHArXQJ`tAJlfH~ZHAbbtl`f~fppvnZp˂|drnvpf`vXpZHAbbtlHfpv`ےHArXQJ`tAJlfH~ے`JQXb㉀ۅf۝`vZ|dfH~nr˂ے`JJtArdnXvZp˂ےbHAtbdQZf`vXے`JXQJtArdvnXXv`frXQJ`tAJlfH~nr˂ے`JJtArdnXvZp˂ےbHAtbdQZf`vXXQr˂p`ZQXXnvrQtJlf`vXpZHAbXQr˂|ZdQ`f~rXQJ`Zp˂|drnvpr˂p|ZdQv`ffpvےbHAtbdQZf`vXpZHAbXQr˂|ZdQ`f~rXQJ`Zp˂|drnvppZHAbb㉀ۑppfH~tbAdnvpے`JpZHAbbtlHfpvےbHArXQJ`tAJlfH~ZHAbbtl~HfpnrXQJZp˂|drnvpے`JpZHAbbtlHfpvےbHArXQJ`tAJlfH~˂pJAHr󙐅f۝`vZ|dfH~XQr˂ے`JJtArdnXvZp˂ےbHAtbdQZf`vX˂pZ|ZdQbvnX`ےHArXQJ`tAJlfH~XQr˂ے`JJtArdnXvZp˂ےbHAtbdQZf`vXZHAbˁ`ZQXXnvrQtJlf`vXpZHAbXQr˂|ZdQ`f~rXQJ`Zp˂|drnvpHAbےtlJv`fZp˂ےbHAtbdQZf`vXpZHAbXQr˂|ZdQ`f~rXQJ`Zp˂|drnvpے`JXQb㉀ۑppfH~tbAdnvpے`JpZHAbtlHfpvےbHArbdQZtAJlfH~`JXQrtArd~HfvrXQJ`Zp˂|drnvpے`JpZHAbtlHfpvےbHArbdQZtAJlfH~r˂pJAHr󙐅f۝`vZ|dfH~XQr˂ے`JXQJtArdnXvZp˂|drtbdQZf`vX˂pZ|ZdQbnXv`ےbHArXQJ`tAJlfH~XQr˂ے`JXQJtArdnXvZp˂|drtbdQZf`vXZHAbۑpJXnvrQtJlf`vXpZHAbrbt|ZdQ`f~rXQJ`tAJl|drnvpHAbےtlJf~HZp˂ےbHAtbdQZf`vXpZHAbrbt|ZdQ`f~rXQJ`tAJl|drnvpے`JXQAHr󙐂ˍpfH~tbAdnvpے`JlJtAdbtlHfpvےbHAtbdQZtAJlfH~`JXQHAtArdtfpvrXQJ`Zp˂|drnvpے`JlJtAdbtlHfpvےbHAtbdQZtAJlfH~HAbے`ZQXbㅐf۝`vZ|dfH~XQr˂|ZdQJtArdnXvZp˂|drtbdQZf`vXbے`lJtAnXv`ےbHArbdQZtAJlfH~XQr˂|ZdQJtArdnXvZp˂|drtbdQZf`vX`JXQrۑpJXnvrQtJlf`vXpZHAbbtl|ZdQ`f~rXQJ`tAJl|dtAnvpJXQrrd|f~HZp˂|drtbdQZf`vXpZHAbbtl|ZdQ`f~rXQJ`tAJl|dtAnvp˂pZAHr󙐂ˍpfH~tbAdnvpے`JJtArdbtlHfpvےbHAtbdQZJltfH~˂pZHAZdQbtfpvrXQJ`tAJl|drnvpے`JJtArdbtlHfpvےbHAtbdQZJltfH~HAbے`ZQXAHf۝`vZ|dfH~XQr˂|ZdQJtArdnXvZp˂|drbnvf`vXbے`lJtAnvfےbHAtbdQZtAJlfH~XQr˂|ZdQJtArdnXvZp˂|drbnvf`vX`JXQrr󙐂ˁ`XnvrQtJlf`vXpZHAbbtl|ZdQ`f~rXQJ`tAJlpfHnvpJXQrrd|~HfpZp˂|drtbdQZf`vXpZHAbbtl|ZdQ`f~rXQJ`tAJlpfHnvp˂p`ZQXb㉀pfH~tbAdnvpے`JJtArdbnXvHfpvےbHAtbdQZf`vXfH~˂p`JZdQtArvnXrXQJ`tAJl|dtAnvpے`JJtArdbnXvHfpvےbHAtbdQZf`vXfH~JXQrۑpJAHf۝`vZ|dfH~XQr˂|ZdQ`f~nXvZp˂|drnvpf`vXXQr˂d|Zv`fےbHAtbdQZJltfH~XQr˂|ZdQ`f~nXvZp˂|drnvpf`vX˂pZHAr󙐂ˁ`XnvrQtJlf`vXpZHAbbtlHfpv`f~rXQJ`tAJlfH~nvppZHAbdQbt~HfpZp˂|drbnvf`vXpZHAbbtlHfpv`f~rXQJ`tAJlfH~nvpbے`ZQXb㉀pfH~tbAdnvpے`JJtArdnXvHfpvےbHAtbdQZf`vXfH~ے`JlJtArvnXrXQJ`tAJlpfHnvpے`JJtArdnXvHfpvےbHAtbdQZf`vXfH~JXQrXnv˅f۝`vZ|dfH~XQr˂|ZdQ`f~nXvZp˂|drnvpf`vXXQr˂d|Zv`f~fےbHAtbdQZf`vXfH~XQr˂|ZdQ`f~nXvZp˂|drnvpf`vX˂p`ZpfH~XnvrQtJlf`vXpZHAbbtlHfpv`fHrXQJ`tAJlfH~nr˂p`JXQdQbtpvnZp˂|drnvpf`vXpZHAbbtlHfpv`fHrXQJ`tAJlfH~nے`JQXb㉀ۅf۝`vp|dtbAdnvpے`JJtArdnXvfpvےbHAtbdQZf`vXp`JXQrbtl|ZdQXv`frXQJ`tAJlfH~nvpے`JJtArdnXvfpvےbHAtbdQZf`vXXQr˂pJAHrXnvrQtJlZ|drQtqrstuvwxxwvutsrJJJJJJJJJJJJJJJJJJJKKKK \ No newline at end of file diff --git a/barcode-generator/Resources/data/qrv26_1.dat b/barcode-generator/Resources/data/qrv26_1.dat deleted file mode 100644 index b8939dd..0000000 --- a/barcode-generator/Resources/data/qrv26_1.dat +++ /dev/null @@ -1,241 +0,0 @@ -xwxwxwxwxwxwxwxwxwxwxwxwvuvuvuvuvuvuvuvutstststststststsrqrqrqrqrqrqrqrqopopopopopopopopnmnmnmnmnmnmnmnmnmnmnmnmlklklklklklklklkjijijijijijijijijijijijihghghghghghghghgfefefefefefefefefefefefedcdcdcdcdcdcdcdcbabababababababababababa`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9787878787777787877878787656565656565656543434343434343434343434321212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!        xwxwxwxwxwxwxwxwxwxwxwxwvuvuvuvuvuvuvuvutstststststststsrqrqrqrqrqrqrqrqopooooooopopopopnmnmnmnmnmnmnmnmnmlklklklklklklklklklklkjijijijijijijijijihghghghghghghghghghghgfefefefefefefefefedcdcdcdcdcdcdcdcdcdcdcbababababababababa`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9787878787878787887656565656565656565656543434343434343434321212121212121212121210/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!        xwxwxwxwxwxwxwxwxwxwxwxwvuvuvuvuvuvuvuvutstststststststsrqrqrqrqrqrqrqrqpopopopoooooooponmnmnmnmnmnmnmnmlklklklklklklklklklklklkjijijijijijijijihghghghghghghghghghghghgfefefefefefefefedcdcdcdcdcdcdcdcdcdcdcdcbabababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSSSSSSTTSTSTSTSTSTSTSSSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9787878787878787865656565656565656565656543434343434343432121212121212121212121210/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!        xwxwxwxwxwxwxwxwxwxwxwxwvuvuvuvuvuvuvuvutstststststststsrqrqrqrqrqrqrqrqpopopopopopopoponmnmnmnmnmnmnmnmlklklklklklklklklklklklkjijijijijijijijihghghghghghghghghghghghgfefefefefefefefedcdcdcdcdcdcdcdcdcdcdcdcbabababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUSTSTSTSTSSSSSTSTSSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9787878787878787865656565656565656565656543434343434343432121212121212121212121210/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!        xwxwxwxwxwxwxwxwvuvuvuvuvuvuvuvuvuvuvuvutstststststststsrqrqrqrqrqrqrqrqpopopopopopopoponmnmnmnmnmnmnmnmlklklklklklklklklklklklkjijijijijijijijihghghghghghghghghghghghgfefefefefefefefedcdcdcdcdcdcdcdcdcdcdcdcbabababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUSTSTSTSTSTSTSTSTTSRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCBABABABABABABABABABABA@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9787878787878787865656565656565656565656543434343434343432121212121212121212121210/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!        xwxwxwxwxwxwxwxwvuvuvuvuvuvuvuvuvuvuvuvutstststststststsrqrqrqrqrqrqrqrqpopopopopopopoponmnmnmnmnmnmnmnmlklklklklklklklklklklklkjijijijijijijijihghghghghghghghghghghghgfefefefefefefefedcdcdcdcdcdcdcdcdcdcdcdcbabababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUSTSTSTSTSTSTSTSTRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9787877777878787865656565656565656565656543434343434343432121212121212121212121210/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!        xwxwxwxwxwxwxwxwvuvuvuvuvuvuvuvuvuvuvuvutstststststststsrqrqrqrqpopopopopopopopopopopoponmnmnmnmnmnmnmnmlklklklklklklklklklklklkjijijijijijijijihghghghghghghghghghghghgfefefefefefefefedcdcdcdcdcdcdcdcdcdcdcdcbabababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUSTSTSTSTSTSTSTSTRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9778787877877777765656565656565656565656543434343434343432121212121212121212121210/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!        xwxwxwxwxwxwxwxwvuvuvuvuvuvuvuvuvuvuvuvutstststsrqrqrqrqrqrqrqrqooooopoppopopooopopopoponmnmnmnmnmnmnmnmlklklklklklklklklkjijijijijijijijijijijihghghghghghghghghgfefefefefefefefefefefedcdcdcdcdcdcdcdcdcbababababababababababa`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUSTSTSTSTSTSTSTSTRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9878787878787878765656565656565656543434343434343434343432121212121212121210/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)('('('('('('('('('('('&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!        xwxwxwxwxwxwxwxwvuvuvuvuvuvuvuvutstststststststsrqrqrqrqrqrqrqrqopopopopooopopopmmmmmmnmnmnmnmnmnmnmnmnmlklklklklklklklkjijijijijijijijijijijijihghghghghghghghgfefefefefefefefefefefefedcdcdcdcdcdcdcdcbabababababababababababa`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUSTSTSSSSSTSTSTSTRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:98787878787878787656565656565656543434343434343434343434321212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!        xwxwxwxwxwxwxwxwvuvuvuvuvuvuvuvutstststststststsrqrqrqrqrqrqrqrqopopopopopopopopnmnmnmnmnmnmnmnmnmnmnmnmlklklklklklklklkjijijijijijijijijijijijihghghghghghghghgfefefefefefefefefefefefedcdcdcdcdcdcdcdcbabababababababababababa`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUSSTSTSTSSTSSSSSSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:98787878787878787656565656565656543434343434343434343434321212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!        xwxwxwxwxwxwxwxwvuvuvuvuvuvuvuvutstststststststsrqrqrqrqrqrqrqrqopopopopopopopopnmnmnmnmnmnmnmnmnmnmnmnmlklklklklklklklkjijijijijijijijijijijijihghghghghghghghgfefefefefefefefefefefefedcdcdcdcdcdcdcdcbabababababababababababa`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:98787878787878787878787656565656565656543434343434343434343434321212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!        xwxwxwxwxwxwxwxwvuvuvuvuvuvuvuvutstststststststsrqrqrqrqrqrqrqrqopopopopopopopopnmnmnmnmnmnmnmnmnmnmnmnmlklklklklklklklkjijijijijijijijijijijijihghghghghghghghgfefefefefefefefefefefefedcdcdcdcdcdcdcdcbabababababababababababa`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9877777788787878787878777656565656565656543434343434343434343434321212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!                    - - - - - - - - - - - -             - - - - - - - - - - - -          - - - - - - - - -         - - - - - - - -         - - - - - - - -         - - - - - - - -         - - - - - - - -         - - - - - - - -            - - - - - - - - - - -             - - - - - - - - - - - -             - - - - - - - - - - - -             - - - - - - - - - - - - xxwwvvuuHHGGFFEE))**++,,YYZZ[[\\ccbbaa``))((''&&""##$$%%\\]]^^__^]]\\[[Z)((''&&%DDEEFFGGttuuvvwwMMLLKKJJDDEEFFGGttuuvvwwMMLLKKJJDDEEFFGGttuuvvwwMMLLKKJJDDEEFFGGttuuvvwwMMLLKKJJDDEEFFGGttuuvvwwMMLLKKJJDDEEFFGGttuuvvwwCCBBAA@@ 556677==oouuvvwwHHGGFFEE !!""##PPQQRRSSqqppoonnAA@@??>> !!""##PPQQRRSSqqppoonnAA@@??>> !!""##PPQQRRSSqqppoonnAA@@??>> !!""##PPQQRRSSqqppoonnAA@@??>> !!""##PPQQRRSSqqppoonnAA@@??>> !!""##PPQQRRSSllkkjjii221100// FFGGHHIIonnmmllk<;:98776,,--..//\\]]^^__eeddccbb55443322,,--..//\\]]^^__eeddccbb55443322,,--..//\\]]^^__eeddccbb55443322,,--..//\\]]^^__eeddccbb55443322,,--..//\\]]^^__eeddccbb55443322,,--..//\\]]^^__``__^^]]&&%%$$##RRSSYYZZcbbaa``_.--,,++* - - 8899::;;ttssrrqqDDCCBBAA--..//00]]^^__``__^^]]\\%%$$##""&&''(())``aabbccZYYXWVUT%$$##""!HHIIJJKKxxxxwwvvIIHHGGFFHHIIJJKKxxxxwwvvIIHHGGFFHHIIJJKKxxxxwwvvIIHHGGFFHHIIJJKKxxxxwwvvIIHHGGFFHHIIJJKKxxxxwwvvIIHHGGFFHHIIJJKKxxxxwwvv??>>==77>>??@@AAxxxxwwvvDDCCBBAA $$%%&&''TTUUVVWWmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWhhggffee..--,,++JJKKLLMMkjjiihhg6554433200112233``aabbccaa``__^^1100//..00112233``aabbccaa``__^^1100//..00112233``aabbccaa``__^^1100//..00112233``aabbccaa``__^^1100//..00112233``aabbccaa``__^^1100//..00112233``aabbcc\\[[ZZYY""!!!!""##$$[[\\]]^^_^^]]\\[*))((''& <<==>>??ppoonnmm@@??>>== 11223344aabbccdd[[ZZYYSS!!**++,,--ddeeffggSSRRQQPP! LLMMNNOOuuttssrrEEDDCCBBLLMMNNOOuuttssrrEEDDCCBBLLMMNNOOuuttssrrEEDDCCBBLLMMNNOOuuttssrrEEDDCCBBLLMMNNOOuuttssrrEEDDCCBBLLMMNNOOuuoonnmm66554433 - - BBCCDDEEuutsrqpo@@??>>== - - (())**++XXYYZZ[[iihhggff99887766 (())**++XXYYZZ[[iihhggff99887766 (())**++XXYYZZ[[iihhggff99887766 (())**++XXYYZZ[[iihhggff99887766 (())**++XXYYZZ[[iihhggff99887766 (())**++XXYYZZ[[ddccbbaa**))((''NNOOPPQQgffeeddc21100//.44556677ddeeffgg]]\\[[ZZ--,,++**44556677ddeeffgg]]\\[[ZZ--,,++**44556677ddeeffgg]]\\[[ZZ--,,++**44556677ddeeffgg]]\\[[ZZ--,,++**44556677ddeeffgg]]\\[[ZZ--,,++**44556677ddeeffggSSRRQQPP%%&&''((__``aabb[ZZYYXWV&%%$$##"@@AABBCCllkkjjii<<;;::99 - - 55667788eeffgghhRRQQPPOO..//0011hhiijjkkOONNMMLL !!""##PPQQRRSSqqppoonnAA@@??>> !!""##PPQQRRSSqqppoonnAA@@??>> !!""##PPQQRRSSqqppoonnAA@@??>> !!""##PPQQRRSSqqppoonnAA@@??>> !!""##PPQQRRSSqqppoonnAA@@??>> !!""##PPQQRRSSllkkjjii221100// FFGGHHIIonnmmllk<;:98776,,--..//\\]]^^__eeddccbb55443322,,--..//\\]]^^__eeddccbb55443322,,--..//\\]]^^__eeddccbb55443322,,--..//\\]]^^__eeddccbb55443322,,--..//\\]]^^__eeddccbb55443322,,--..//\\]]^^__``__^^]]&&%%$$##RRSSYYZZcbbaa``_.--,,++* - - 8899::;;hhiijjkkYYXXWWVV))((''&& - - 8899::;;hhiijjkkYYXXWWVV))((''&& - - 8899::;;hhiijjkkYYXXWWVV))((''&& - - 8899::;;hhiijjkkYYXXWWVV))((''&& - - 8899::;;hhiijjkkYYXXWWVV))((''&& - - 8899::;;hhiijjkkOONNMMLL))**++,,ccddeeffUTSSRRQQ"!! DDEEFFGGhhggffee88776655 - - 99::;;<>??llmmnnooUUTTSSRR%%$$##"" <<==>>??llmmnnooUUTTSSRR%%$$##"" <<==>>??llmmnnooUUTTSSRR%%$$##"" <<==>>??llmmnnooUUTTSSRR%%$$##"" <<==>>??llmmnnooUUTTSSRR%%$$##"" <<==>>??llmmnnooKKJJIIHH--..//00gghhiijjPPOONNMMHHIIJJKKddccbbaa44332211 ==>>??@@mmnnooppJJIIHHGG 6677==>>uuvvwwxxGGFFEEDD(())**++XXYYZZ[[iihhggff99887766 (())**++XXYYZZ[[iihhggff99887766 (())**++XXYYZZ[[iihhggff99887766 (())**++XXYYZZ[[iihhggff99887766 (())**++XXYYZZ[[iihhggff99887766 (())**++XXYYZZ[[ddccbbaa**))((''NNOOPPQQgffeeddc21100//.44556677ddeeffgg]]\\[[ZZ--,,++**44556677ddeeffgg]]\\[[ZZ--,,++**44556677ddeeffgg]]\\[[ZZ--,,++**44556677ddeeffgg]]\\[[ZZ--,,++**44556677ddeeffgg]]\\[[ZZ--,,++**44556677ddeeffggSSRRQQPP%%&&''((__``aabb[ZZYYXWV&%%$$##"@@AABBCCppqqrrssQQPPOONN!! @@AABBCCppqqrrssQQPPOONN!! @@AABBCCppqqrrssQQPPOONN!! @@AABBCCppqqrrssQQPPOONN!! @@AABBCCppqqrrssQQPPOONN!! @@AABBCCppqqrrssGGFFEEDD - -11223344kkllmmnnLLKKJJIILLMMNNOO``__^^]]00//..--AABBCCDDqqrrssttFFEEDDCC - - ??@@AABBxxwwvvuuCCBBAA@@ ,,--..//\\]]^^__eeddccbb55443322,,--..//\\]]^^__eeddccbb55443322,,--..//\\]]^^__eeddccbb55443322,,--..//\\]]^^__eeddccbb55443322,,--..//\\]]^^__eeddccbb55443322,,--..//\\]]^^__``__^^]]&&%%$$##RRSSYYZZcbbaa``_.--,,++* - - 8899::;;hhiijjkkYYXXWWVV))((''&& - - 8899::;;hhiijjkkYYXXWWVV))((''&& - - 8899::;;hhiijjkkYYXXWWVV))((''&& - - 8899::;;hhiijjkkYYXXWWVV))((''&& - - 8899::;;hhiijjkkYYXXWWVV))((''&& - - 8899::;;hhiijjkkOONNMMLL))**++,,ccddeeffUTSSRRQQ"!! DDEEFFGGttuuvvwwMMLLKKJJDDEEFFGGttuuvvwwMMLLKKJJDDEEFFGGttuuvvwwMMLLKKJJDDEEFFGGttuuvvwwMMLLKKJJDDEEFFGGttuuvvwwMMLLKKJJDDEEFFGGttuuvvwwCCBBAA@@ 556677==oouuvvwwHHGGFFEE !!""##PPQQRRSS\\[[ZZYY,,++**))EEFFGGHHuuvvwwxxBBAA@@?? - - CCDDEEFFtsrqpoon??>>==<; - - 00112233``aabbccaa``__^^1100//..00112233``aabbccaa``__^^1100//..00112233``aabbccaa``__^^1100//..00112233``aabbccaa``__^^1100//..00112233``aabbccaa``__^^1100//..00112233``aabbcc\\[[ZZYY""!!!!""##$$[[\\]]^^_^^]]\\[*))((''& <<==>>??llmmnnooUUTTSSRR%%$$##"" <<==>>??llmmnnooUUTTSSRR%%$$##"" <<==>>??llmmnnooUUTTSSRR%%$$##"" <<==>>??llmmnnooUUTTSSRR%%$$##"" <<==>>??llmmnnooUUTTSSRR%%$$##"" <<==>>??llmmnnooKKJJIIHH--..//00gghhiijjPPOONNMMHHIIJJKKxxxxwwvvIIHHGGFFHHIIJJKKxxxxwwvvIIHHGGFFHHIIJJKKxxxxwwvvIIHHGGFFHHIIJJKKxxxxwwvvIIHHGGFFHHIIJJKKxxxxwwvvIIHHGGFFHHIIJJKKxxxxwwvv??>>==77>>??@@AAxxxxwwvvDDCCBBAA $$%%&&''TTUUVVWWXXWWVVUU((''&&%%IIJJKKLLxxwwvvuu>>==7766 GGHHIIJJnmmllkkj:987766544556677ddeeffgg]]\\[[ZZ--,,++**44556677ddeeffgg]]\\[[ZZ--,,++**44556677ddeeffgg]]\\[[ZZ--,,++**44556677ddeeffgg]]\\[[ZZ--,,++**44556677ddeeffgg]]\\[[ZZ--,,++**44556677ddeeffggSSRRQQPP%%&&''((__``aabb[ZZYYXWV&%%$$##"@@AABBCCppqqrrssQQPPOONN!! @@AABBCCppqqrrssQQPPOONN!! @@AABBCCppqqrrssQQPPOONN!! @@AABBCCppqqrrssQQPPOONN!! @@AABBCCppqqrrssQQPPOONN!! @@AABBCCppqqrrssGGFFEEDD - -11223344kkllmmnnLLKKJJIILLMMNNOOuuttssrrEEDDCCBBLLMMNNOOuuttssrrEEDDCCBBLLMMNNOOuuttssrrEEDDCCBBLLMMNNOOuuttssrrEEDDCCBBLLMMNNOOuuttssrrEEDDCCBBLLMMNNOOuuoonnmm66554433 - - BBCCDDEEuutsrqpo@@??>>== - - (())**++XXYYZZ[[TTSSRRQQ$$##""!! MMNNOOPPoonnmmll55443322KKLLMMNNjiihhggf54433221 - - 8899::;;hhiijjkkYYXXWWVV))((''&& - - 8899::;;hhiijjkkYYXXWWVV))((''&& - - 8899::;;hhiijjkkYYXXWWVV))((''&& - - 8899::;;hhiijjkkYYXXWWVV))((''&& - - 8899::;;hhiijjkkYYXXWWVV))((''&& - - 8899::;;hhiijjkkOONNMMLL))**++,,ccddeeffUTSSRRQQ"!! DDEEFFGGttuuvvwwMMLLKKJJDDEEFFGGttuuvvwwMMLLKKJJDDEEFFGGttuuvvwwMMLLKKJJDDEEFFGGttuuvvwwMMLLKKJJDDEEFFGGttuuvvwwMMLLKKJJDDEEFFGGttuuvvwwCCBBAA@@ 556677==oouuvvwwHHGGFFEE !!""##PPQQRRSSqqppoonnAA@@??>> !!""##PPQQRRSSqqppoonnAA@@??>> !!""##PPQQRRSSqqppoonnAA@@??>> !!""##PPQQRRSSqqppoonnAA@@??>> !!""##PPQQRRSSqqppoonnAA@@??>> !!""##PPQQRRSSllkkjjii221100// FFGGHHIIonnmmllk<;:98776,,--..//\\]]^^__PPOONNMM !!""##$$QQRRSSTTkkjjiihh1100//..OOPPQQRRfeeddccb100//..- <<==>>??llmmnnooUUTTSSRR%%$$##"" <<==>>??llmmnnooUUTTSSRR%%$$##"" <<==>>??llmmnnooUUTTSSRR%%$$##"" <<==>>??llmmnnooUUTTSSRR%%$$##"" <<==>>??llmmnnooUUTTSSRR%%$$##"" <<==>>??llmmnnooKKJJIIHH--..//00gghhiijjPPOONNMMHHIIJJKKxxxxwwvvIIHHGGFFHHIIJJKKxxxxwwvvIIHHGGFFHHIIJJKKxxxxwwvvIIHHGGFFHHIIJJKKxxxxwwvvIIHHGGFFHHIIJJKKxxxxwwvvIIHHGGFFHHIIJJKKxxxxwwvv??>>==77>>??@@AAxxxxwwvvDDCCBBAA $$%%&&''TTUUVVWWmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWhhggffee..--,,++JJKKLLMMkjjiihhg6554433200112233``aabbcchhiijjkkLLKKJJII%%&&''((UUVVWWXXggffeedd--,,++**!!SSYYZZ[[baa``__^-,,++**)@@AABBCCppqqrrssQQPPOONN!! @@AABBCCppqqrrssQQPPOONN!! @@AABBCCppqqrrssQQPPOONN!! @@AABBCCppqqrrssQQPPOONN!! @@AABBCCppqqrrssQQPPOONN!! @@AABBCCppqqrrssGGFFEEDD - -11223344kkllmmnnLLKKJJIILLMMNNOOuuttssrrEEDDCCBBLLMMNNOOuuttssrrEEDDCCBBLLMMNNOOuuttssrrEEDDCCBBLLMMNNOOuuttssrrEEDDCCBBLLMMNNOOuuttssrrEEDDCCBBLLMMNNOOuuoonnmm66554433 - - BBCCDDEEuutsrqpo@@??>>== - - (())**++XXYYZZ[[iihhggff99887766 (())**++XXYYZZ[[iihhggff99887766 (())**++XXYYZZ[[iihhggff99887766 (())**++XXYYZZ[[iihhggff99887766 (())**++XXYYZZ[[iihhggff99887766 (())**++XXYYZZ[[ddccbbaa**))((''NNOOPPQQgffeeddc21100//.44556677ddeeffggllmmnnooppqqrrssQQPPOONN!! @@AABBCCppqqrrssQQPPOONN!! @@AABBCCppqqrrssQQPPOONN!! @@AABBCCppqqrrssQQPPOONN!! @@AABBCCppqqrrssDDCCBBAA - - - -AABBCCDDeeddccbb55443322 <<==>>??ttuuvvwwMMLLKKJJDDEEFFGGttuuvvwwMMLLKKJJDDEEFFGGttuuvvwwMMLLKKJJDDEEFFGGttuuvvwwMMLLKKJJDDEEFFGGttuuvvww@@??>>== EEFFGGHHaa``__^^1100//..@@AABBCCxxxxwwvvIIHHGGFFHHIIJJKKxxxxwwvvIIHHGGFFHHIIJJKKxxxxwwvvIIHHGGFFHHIIJJKKxxxxwwvvIIHHGGFFHHIIJJKKxxppoonn77665544IIJJKKLL]]\\[[ZZ--,,++**DDEEFFGGuuttssrrEEDDCCBBLLMMNNOOuuttssrrEEDDCCBBLLMMNNOOuuttssrrEEDDCCBBLLMMNNOOuuttssrrEEDDCCBBLLMMNNOOmmllkkjj33221100MMNNOOPPYYXXWWVV))((''&&HHIIJJKKqqppoonnAA@@??>> !!""##PPQQRRSSqqppoonnAA@@??>> !!""##PPQQRRSSqqppoonnAA@@??>> !!""##PPQQRRSSqqppoonnAA@@??>> !!""##PPQQRRSSiihhggff//..--,,QQRRSSYYUUTTSSRR%%$$##""LLMMNNOOmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWmmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWeeddccbb++**))((!!""##ZZ[[\\]]QQPPOONN!!  !!""##PPQQRRSSiihhggff99887766 (())**++XXYYZZ[[iihhggff99887766 (())**++XXYYZZ[[iihhggff99887766 (())**++XXYYZZ[[iihhggff99887766 (())**++XXYYZZ[[aa``__^^''&&%%$$$$%%&&''^^__``aaMMLLKKJJ$$%%&&''TTUUVVWWeeddccbb55443322,,--..//\\]]^^__eeddccbb55443322,,--..//\\]]^^__eeddccbb55443322,,--..//\\]]^^__eeddccbb55443322,,--..//\\]]^^__]]\\[[ZZ##""!!(())**++bbccddeeIIHHGGFF(())**++XXYYZZ[[aa``__^^1100//..00112233``aabbccaa``__^^1100//..00112233``aabbccaa``__^^1100//..00112233``aabbccaa``__^^1100//..00112233``aabbccYYSSRRQQ,,--..//ffgghhiiEEDDCCBB,,--..//\\]]^^__]]\\[[ZZ--,,++**44556677ddeeffgg]]\\[[ZZ--,,++**44556677ddeeffgg]]\\[[ZZ--,,++**44556677ddeeffgg]]\\[[ZZ--,,++**44556677ddeeffggPPOONNMM00112233jjkkllmmAA@@??>>00112233``aabbccYYXXWWVV))((''&& - - 8899::;;hhiijjkkYYXXWWVV))((''&& - - 8899::;;hhiijjkkYYXXWWVV))((''&& - - 8899::;;hhiijjkkYYXXWWVV))((''&& - - 8899::;;hhiijjkkLLKKJJII44556677mmllkkjj==<<;;:: - -44556677ddeeffggUUTTSSRR%%$$##"" <<==>>??llmmnnooUUTTSSRR%%$$##"" <<==>>??llmmnnooUUTTSSRR%%$$##"" <<==>>??llmmnnooUUTTSSRR%%$$##"" <<==>>??llmmnnooHHGGFFEE ==>>??@@iihhggff99887766 - - 8899::;;hhiijjkkllmmbdQZ|bdQZ|bdQZ|H~fH~f`JXQrے`JZdQbt|ZdQv`ffpvZp˂Zp˂Zp˂tAJltAJlf`vXf`vXf`vXے`Jے`J|ZdQ|ZdQ|ZdQHfpvHfpvZp˂Zp˂Zp˂tAJltAJlf`vXf`vXf`vXے`Jے`J|ZdQ|ZdQ|ZdQ~Hf`pvbHAXQ`p˂bdQZ|drtAJf`vXf`vXے`Jے`Jے`J|ZdQ|ZdQHfpvHfpvHfpvZp˂Zp˂tAJltAJltAJlf`vXf`vXے`Jے`Jے`J|ZdQ|ZdQHfpvHfpvHfpvZp˂Zp˂bdQZ|tbdQnvpvXnJXQrrZHA㙒`JXQ|ZdQ|ZdQHfpvHfpvfpvZp˂Zp˂tAJltAJlJltf`vXf`vXے`Jے`Jے`JXQ|ZdQ|ZdQHfpvHfpvfpvZp˂Zp˂tAJltAJlJltf`vXf`vXr˂pJXQrbtlZdQtArvnXv`fZp˂Zp˂drtAdrtAdrtA`vXn`vXn˂pZXQr˂lJtAbtl~HfvnnXv`rXQJ`rXQJ`rbdQZtbdQZtbdQZnvpnvpnr˂XQr˂XQr˂btlbtlbnXvnXvnXvrXQJ`rXQJ`rbdQZtbdQZtbdQZnvpnvpnr˂XQr˂XQr˂btlbtlbnXvpvnrXQJJ`ےrbdQZdrtAltbnvpnvpXQr˂XQr˂XQr˂btlbtlnXvnXvnXvrXQJ`rXQJ`tbdQZtbdQZtbdQZnvpnvpXQr˂XQr˂XQr˂btlbtlnXvnXvnXvrXQJ`rXQJ`drtAZ|dfH~vpfH˂pZHbے`rbtbtlbtlnXvnXvnrXQJrXQJ`rXQJ`tbdQZtbdQZbnvnvpnvpXQr˂XQr˂rbtbtlbtlnXvnXvnrXQJrXQJ`rXQJ`tbdQZtbdQZbnvnvpnvpZHAb˂p`J|ZdQbd|Zv`f~HfprXQJ`rXQJ`JltJltJltvpfvpfHAbp`JXQrd|JtArdXv`ff~fpےbHAےbHA|dr|dr|drfH~fH~pZHAbpZHAbpZHAbJtArdJtArd`f~`f~`f~ےbHAےbHA|dr|dr|drfH~fH~pZHAbpZHAbpZHAbJtArdJtArd`pv~Hfp`p˂bHAZp|rAJlJltdQZ|fH~fH~pZHAbpZHAbpZHAJtArdJtArd`f~`f~`fHےbHAےbHA|dr|dr|dtAfH~fH~pZHAbpZHAbpZHAJtArdJtArd`f~`f~`fHےbHAےbHAJltrtAJlf`vX~f`Abے`JXQrlJtAdJtArdJtArd`f~`f~`ےHAےbHAےbHA|dr|drpfHfH~fH~pZHAbpZHAblJtAdJtArdJtArd`f~`f~`ےHAےbHAےbHA|dr|drpfHfH~fH~˂pZXQr˂tlJdQbt璕~HfvvnXےbHAےbHAbdQZ|bdQZ|bdQZ|H~fH~f˂pZHAr˂pZdQbt|ZdQ~HfvnXZp˂Zp˂tAJltAJltAJlf`vXf`vXے`Jے`Jے`J|ZdQ|ZdQHfpvHfpvHfpvZp˂Zp˂tAJltAJltAJlf`vXf`vXے`Jے`Jے`J|ZdQ|ZdQnXv`vnXrXQJ`˂rXQtbdbQZdAJltf`vXf`vXے`Jے`Jے`JXQ|ZdQ|ZdQHfpvHfpvfpvZp˂Zp˂tAJltAJlJltf`vXf`vXے`Jے`Jے`JXQ|ZdQ|ZdQHfpvHfpvfpvZp˂Zp˂bdQZ|tbdQnvpvXH~JXQrpZHA|ZdQ|ZdQ|ZdQHfpvHfpvZp˂Zp˂Zp˂tAJltAJlf`vXf`vXf`vXے`Jے`J|ZdQ|ZdQ|ZdQHfpvHfpvZp˂Zp˂Zp˂tAJltAJlf`vXf`vXf`vXHAbےpZHAbtArdlJtArnXv`v`f~fZp˂Zp˂drtAdrtA`vXn`vXn`vXnbے`ZHAblJtAbtlpvnv`frXQJ`rXQJ`tbdQZtbdQZtbdQZnvpnvpXQr˂XQr˂XQr˂btlbtlnXvnXvnXvrXQJ`rXQJ`tbdQZtbdQZtbdQZnvpnvpXQr˂XQr˂XQr˂btlbtlf~Hv`fےbHAJ`ےQZ|drtAJlbnvnvpnvpXQr˂XQr˂rbtbtlbtlnXvnXvnrXQJrXQJ`rXQJ`tbdQZtbdQZbnvnvpnvpXQr˂XQr˂rbtbtlbtlnXvnXvnrXQJrXQJ`rXQJ`drtAZ|l`vXnf`v˂pZHbے`btlbtlbtlnXvnXvrXQJ`rXQJ`rXQJ`tbdQZtbdQZnvpnvpnvpXQr˂XQr˂btlbtlbtlnXvnXvrXQJ`rXQJ`rXQJ`tbdQZtbdQZnvpnvpnvp`JXQrے`J|ZdQbd|Zf~HpvnrXQJ`rXQJ`JltJltvpfvpfvpfJXQrے`JXQrdt|ZdQbXv`f~HfpےbHAےbHA|dr|dr|dtAfH~fH~pZHAbpZHAbpZHAJtArdJtArd`f~`f~`fHےbHAےbHA|dr|dr|dtAfH~fH~pZHAbpZHAbpZHAJtArdJtArdfpv~HfpZp˂bHAZprtAJltbdQpfHfH~fH~pZHAbpZHAblJtAdJtArdJtArd`f~`f~`ےHAےbHAےbHA|dr|drpfHfH~fH~pZHAbpZHAblJtAdJtArdJtArd`f~`f~`ےHAےbHAےbHAdQZ|tbdQZvpfXnvAbJJXQrJtArdJtArdJtArd`f~`f~ےbHAےbHAےbHA|dr|drfH~fH~fH~pZHAbpZHAbJtArdJtArdJtArd`f~`f~ےbHAےbHAےbHA|dr|drfH~fH~fH~˂pZXQr˂tlJdQbtfpvXv`fےbHAےbHAbdQZ|bdQZ|H~fH~fH~f˂pZHAr˂plJtArnXv`~HfvnXZp˂Zp˂tAJltAJlJltf`vXf`vXے`Jے`Jے`JXQ|ZdQ|ZdQHfpvHfpvfpvZp˂Zp˂tAJltAJlJltf`vXf`vXے`Jے`Jے`JXQ|ZdQ|ZdQnXv`vnXrXQJ`˂btbdZ|df`vXf`vXf`vXے`Jے`J|ZdQ|ZdQ|ZdQHfpvHfpvZp˂Zp˂Zp˂tAJltAJlf`vXf`vXf`vXے`Jے`J|ZdQ|ZdQ|ZdQHfpvHfpvZp˂Zp˂Zp˂drtAJ|drH~fpfH~Qr˂ppZAb|ZdQ|ZdQ|ZdQHfpvHfpvZp˂Zp˂Zp˂tAJltAJlf`vXf`vXf`vXے`Jے`J|ZdQ|ZdQ|ZdQHfpvHfpvZp˂Zp˂Zp˂tAJltAJlf`vXf`vXf`vXHAbےp`JXQtArdtl|ZdQnXv`~HfZp˂Zp˂drtAdrtA`vXn`vXn`vXnbے`|ZdQbd|Zf~fppvnv`frXQJ`rXQJ`tbdQZtbdQZbnvnvpnvpXQr˂XQr˂rbtbtlbtlnXvnXvnrXQJrXQJ`rXQJ`tbdQZtbdQZbnvnvpnvpXQr˂XQr˂rbtbtlbtlf~Hv`pvp˂rHAZp˂QZ|drtAJlnvpnvpnvpXQr˂XQr˂btlbtlbtlnXvnXvrXQJ`rXQJ`rXQJ`tbdQZtbdQZnvpnvpnvpXQr˂XQr˂btlbtlbtlnXvnXvrXQJ`rXQJ`rXQJ`ltbtAJl`vXnf`vZHAb`JXQrbtlbtlbnXvnXvnXvrXQJ`rXQJ`rbdQZtbdQZtbdQZnvpnvpnr˂XQr˂XQr˂btlbtlbnXvnXvnXvrXQJ`rXQJ`rbdQZtbdQZtbdQZnvpnvpnr˂`JXQHArbtlJtAbnXvf~HpvnrXQJ`rXQJ`JltJltvpfvpfr˂pJXQHAbtlJdQbtvnXvf~HrQJHAےbHAےbHA|dr|drpfHfH~fH~pZHAbpZHAblJtAdJtArdJtArd`f~`f~`ےHAےbHAےbHA|dr|drpfHfH~fH~pZHAbpZHAblJtAdJtArdJtArdXv`fnXvXQJ`ےrXQJrtAJtbdQfH~fH~fH~pZHAbpZHAbJtArdJtArdJtArd`f~`f~ےbHAےbHAےbHA|dr|drfH~fH~fH~pZHAbpZHAbJtArdJtArdJtArd`f~`f~ےbHAےbHAےbHAdQZ|tbdQZvpfXnvے`JXQ˂pZJtArdJtArd`f~`f~`f~ےbHAےbHA|dr|dr|drfH~fH~pZHAbpZHAbpZHAbJtArdJtArd`f~`f~`f~ےbHAےbHA|dr|dr|drfH~fH~p`JXQbے`l|ZdQrd|`f~fpfpvXv`fےbHAےbHAbdQZ|bdQZ|H~fH~f`JXQrے`JtArdlJtArv`ffpvZp˂Zp˂Zp˂tAJltAJlf`vXf`vXf`vXے`Jے`J|ZdQ|ZdQ|ZdQHfpvHfpvZp˂Zp˂Zp˂tAJltAJlf`vXf`vXf`vXے`Jے`J|ZdQ|ZdQ|ZdQ~Hf`f~bHAZ`ےbbdQZ|Z|rAJf`vXf`vXf`vXے`Jے`J|ZdQ|ZdQ|ZdQHfpvHfpvZp˂Zp˂Zp˂tAJltAJlf`vXf`vXf`vXے`Jے`J|ZdQ|ZdQ|ZdQHfpvHfpvZp˂Zp˂Zp˂drtAJ|ltH~p`vXr˂pHAbے|ZdQ|ZdQHfpvHfpvHfpvZp˂Zp˂tAJltAJltAJlf`vXf`vXے`Jے`Jے`J|ZdQ|ZdQHfpvHfpvHfpvZp˂Zp˂tAJltAJltAJlf`vXf`vXr˂pJXQrbtlZdQbtvnXnvffpvZp˂Zp˂drtAdrtA`vXn`vXn˂pZXQr˂|ZdQbd|Z~HfpۅnXv`rXQJ`rXQJ`rXQJ`tbdQZtbdQZnvpnvpnvpXQr˂XQr˂btlbtlbtlnXvnXvrXQJ`rXQJ`rXQJ`tbdQZtbdQZnvpnvpnvpXQr˂XQr˂btlbtlbtlpvnHfpvp˂rHAZp˂drtAltbnvpnvpnr˂XQr˂XQr˂btlbtlbnXvnXvnXvrXQJ`rXQJ`rbdQZtbdQZtbdQZnvpnvpnr˂XQr˂XQr˂btlbtlbnXvnXvnXvrXQJ`rXQJ`rbdQZltdbnvvpfHnr˂ZHAb`JXQrbtlbtlnXvnXvnXvrXQJ`rXQJ`tbdQZtbdQZtbdQZnvpnvpXQr˂XQr˂XQr˂btlbtlnXvnXvnXvrXQJ`rXQJ`tbdQZtbdQZtbdQZnvpnvpZHAb˂pZHAJtArdlJtAv`f~HfpnrXQJrXQJ`rXQJ`Zp˂JltJltvpfvpfHAbےpZHAbtl|dQtArdvnXf~HےbHAےbHAےbHA|dr|drfH~fH~fH~pZHAbpZHAbJtArdJtArdJtArd`f~`f~ےbHAےbHAےbHA|dr|drfH~fH~fH~pZHAbpZHAbJtArdJtArdJtArdXv`fnXvXQJ`ےrXQJJltdQZ|fH~fH~pZHAbpZHAbpZHAbJtArdJtArd`f~`f~`f~ےbHAےbHA|dr|dr|drfH~fH~pZHAbpZHAbpZHAbJtArdJtArd`f~`f~`f~ےbHAےbHA|ltrtAJlp`vX~f`pZAb`ے`JXQ˂pZAJtArdJtArd`f~`f~`fHےbHAےbHA|dr|dr|dtAfH~fH~pZHAbpZHAbpZHAJtArdJtArd`f~`f~`fHےbHAےbHA|dr|dr|dtAfH~fH~ے`JXQbے`|ZdQrd|~HfpvnX`ےHAےbHAےbHArXQJ`ےbHA|dr|drfH~fH~fH~pZHAbpZHAbJtArdJtArdJtArd`f~`f~ےbHAےbHAےbHA|dr|drfH~fH~fH~ZHAb˂p`ZAHr󙐂˅f۝`vf۝`vrQtJlrQtJlZp˂tAJltAJlf`vXf`vXf`vXے`Jے`J|ZdQ|ZdQ|ZdQHfpvHfpvZp˂Zp˂Zp˂tAJltAJlf`vXf`vXf`vXے`JXQQXb㉀ہ`ZQXbXnv˅Xnv˒tbAdtbAdrbdQZtbdQZtbdQZnvpnvpnr˂XQr˂XQr˂btlbtlbnXvnXvnXvrXQJ`rXQJ`rbdQZtbdQZtbdQZnvpnvpnے`JHAbےpJAHr󉀒ۑpJpfH~pfH~Z|dZ|d|dr|dr|drfH~fH~pZHAbpZHAbpZHAbJtArdJtArd`f~`f~`f~ےbHAےbHA|dr|dr|drfH~fH~XQr˂`JXQrˁ`ZAHr󙐂˅f۝`vf۝`vrQtJlrQtJltAJltAJltAJlf`vXf`vXے`Jے`Jے`J|ZdQ|ZdQHfpvHfpvHfpvZp˂Zp˂tAJltAJltAJlf`vXf`vXpZHAb˂pZQXb㉀ہ`ZQXAHXnv˅Xnv˒tbAdtbAdtbdQZtbdQZtbdQZnvpnvpXQr˂XQr˂XQr˂btlbtlnXvnXvnXvrXQJ`rXQJ`tbdQZtbdQZtbdQZnvpnvpے`JHAbےp`ZQXr󙐂ˁ`pfH~pfH~Z|dZ|d|dr|dr|dtAfH~fH~pZHAbpZHAbpZHAJtArdJtArd`f~`f~`fHےbHAےbHA|dr|dr|dtAfH~fH~XQr˂`JXQrb㉀ۑpZQXb㉀f۝`vf۝`vrQtJlrQtJltAJltAJlJltf`vXf`vXے`Jے`Jے`JXQ|ZdQ|ZdQHfpvHfpvfpvZp˂Zp˂tAJltAJlJltf`vXf`vXpZHAb˂p`JAHr󙐒ۑpJAHXnv˅Xnv˒tbAdtbAdtbdQZtbdQZbnvnvpnvpXQr˂XQr˂rbtbtlbtlnXvnXvnrXQJrXQJ`rXQJ`tbdQZtbdQZbnvnvpnvp˂pJXQrˁ`ZQXr󙐂ˁ`pfH~pfH~Z|dZ|d|dr|drpfHfH~fH~pZHAbpZHAblJtAdJtArdJtArd`f~`f~`ےHAےbHAےbHA|dr|drpfHfH~fH~ZHAb˂pZHAb㉀ۑpZQXb㉀f۝`vf۝`vrQtJlrQtJltAJltAJlf`vXf`vXf`vXے`Jے`J|ZdQ|ZdQ|ZdQHfpvHfpvZp˂Zp˂Zp˂tAJltAJlf`vXf`vXf`vXے`JXQbے`JAHr󙐅Xnv˅Xnv˅Xnv˒tbAdtbAdtbdQZtbdQZnvpnvpnvpXQr˂XQr˂btlbtlbtlnXvnXvrXQJ`rXQJ`rXQJ`tbdQZtbdQZnvpnvpnvpr˂pJXQrۑpJpfH~pfH~p|dZ|dZ|drQtqrstuvwxxwvutsr \ No newline at end of file diff --git a/barcode-generator/Resources/data/qrv26_2.dat b/barcode-generator/Resources/data/qrv26_2.dat deleted file mode 100644 index 9b026a0..0000000 Binary files a/barcode-generator/Resources/data/qrv26_2.dat and /dev/null differ diff --git a/barcode-generator/Resources/data/qrv26_3.dat b/barcode-generator/Resources/data/qrv26_3.dat deleted file mode 100644 index 35f6746..0000000 --- a/barcode-generator/Resources/data/qrv26_3.dat +++ /dev/null @@ -1,241 +0,0 @@ -xwxwxwxwvuvuvuvutstststspopopoponmnmnmnmlklklklkjijijijihghghghgfefefefedcdcdcdc`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWSTSTSTSTRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIFEFEFEFExwxwxwxwvuvuvuvutstststsooooopopnmnmnmnmlklklklkjijijijihghghghgfefefefedcbababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWSTSTSTSTRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIFEFEFEFExwxwxwxwvuvuvuvutstststsopopopopnmnmnmnmlklklklkjijijijihghghghgfefefefebabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWSTSTSSSSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIHGHGHGFEFEFEFExwxwxwxwvuvuvuvutstststsopopopopnmnmnmnmlklklklkjijijijihghghghgfefefefebabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWSSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKHGHGHGHGFEFEFEFExwxwxwxwvuvuvuvutstststsopopopopnmnmnmnmlklklklkjijijijihghghghgfefefefebabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKHGHGHGHGFEFEFEFExwxwxwxwvuvuvuvutstststsopopopopnmnmnmnmlklklklkjijijijihghghghgfedcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKHGHGHGHGFEFEFEFExwxwxwxwvuvuvuvutstststsopopopopnmnmnmnmlklklklkjijijijihghghghgdcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKJIJIJIHGHGHGHGFEFEFEFExwxwxwxwvuvuvuvutstststsopoooooonmnmnmnmlklklklkjijijijihghghghgdcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMJIJIJIJIHGHGHGHGFEFEFEFExwxwxwxwvuvuvuvutstststspopopoponmnmnmnmlklklklkjijijijihghghghgdcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMJIJIJIJIHGHGHGHGFEFEFEFExwxwxwxwvuvuvuvutstststspopopoponmnmnmnmlklklklkjijijijihgfefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYVUVUVUVUSSSSSTSTRQRQRQRQPOPOPOPONMNMNMNMJIJIJIJIHGHGHGHGFEFEFEFExwxwxwxwvuvuvuvutstststspopopoponmnmnmnmlklklklkjijijijifefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYVUVUVUVUSTSTSTSTRQRQRQRQPOPOPOPONMLKLKLKJIJIJIJIHGHGHGHGFEFEFEFExwxwxwxwvuvuvuvurqrqrqrqpopopoponmnmnmnmlklklklkjijijijifefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYVUVUVUVUSTSTSTSTRQRQRQRQPOPOPOPOLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFExwxwxwxwvuvuvuvurqrqrqrqpopopoponmnmnmnmlklklklkjijijijifefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYVUVUVUVUSTSTSTSTRQRQRQRQPOPOPOPOLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFExwxwxwxwvuvuvuvurqrqrqrqpopopooonmnmnmnmlklklklkjihghghgfefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYVUVUVUVUSTSTSTSTRQRQRQRQPOPOPOPOLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFExwxwxwxwvuvuvuvurqrqrqrqooopopopnmnmnmnmlklklklkhghghghgfefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYVUVUVUVUSTSTSTSTRQRQRQRQPONMNMNMLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFExwxwxwxwvuvuvuvurqrqrqrqopopopopnmnmnmnmlklklklkhghghghgfefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYXWXWXWVUVUVUVUSTSSSSSSRQRQRQRQNMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFExwxwxwxwvuvuvuvurqrqrqrqopopopopnmnmnmnmlklklklkhghghghgfefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[XWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQNMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFExwxwxwxwvuvuvuvurqrqrqrqopopopopnmnmnmnmlkjijijihghghghgfefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[XWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQNMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFExwxwxwxwvuvuvuvurqrqrqrqopopopopnmnmnmnmjijijijihghghghgfefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[XWXWXWXWVUVUVUVUTSTSTSTSRQPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFExwxwxwxwvuvuvuvurqrqrqrqopopopopnmnmnmnmjijijijihghghghgfefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]\[ZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFExwxwxwxwvuvuvuvurqrqrqrqooooooponmnmnmnmjijijijihghghghgfefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSSSPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFExwxwxwxwvuvuvuvurqrqrqrqpopopoponmlklklkjijijijihghghghgfefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]ZYZYZYZYXWXWXWXWVUVUVUVUSSTSTSTSPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFExwxwxwxwtstststsrqrqrqrqpopopopolklklklkjijijijihghghghgfefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]ZYZYZYZYXWXWXWXWVUVUVUVUTSRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFExwxwxwxwtstststsrqrqrqrqpopopopolklklklkjijijijihghghghgfefefefedcdcdcdcbabababa`_`_`_`_^]\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVURQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFExwxwxwxwtstststsrqrqrqrqpopopopolklklklkjijijijihghghghgfefefefedcdcdcdcbabababa`_`_`_`_\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVURQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFExwxwxwxwtstststsrqrqrqrqpopopopolklklklkjijijijihghghghgfefefefedcdcdcdcbabababa`_`_`_`_\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVURQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFExwxwxwxwtstststsrqrqrqrqmmmmmmnmlklklklkjijijijihghghghgfefefefedcdcdcdcbabababa`_`_`_`_\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVURQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFExwxwxwxwtstststsrqrqrqrqnmnmnmnmlklklklkjijijijihghghghgfefefefedcdcdcdcbabababa`_^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVURQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEvuvuvuvutstststsrqrqrqrqnmnmnmnmlklklklkjijijijihghghghgfefefefedcdcdcdcbabababa^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVURQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGFEDCDCDCDCDCDCDCvuvuvuvutstststsrqrqrqrqnmnmnmnmlklklklkjijijijihghghghgfefefefedcdcdcdcbabababa^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGDCDCDCDCDCDCDCDCvuvuvuvutstststsrqrqrqrqnmnmnmnmlklklklkjijijijihghghghgfefefefedcdcdcdcbabababa^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWTSSSSSSTRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGDCDCDCDCDCDCDCDCvuvuvuvutstststsrqrqrqrqnmnmnmnmlklklklkjijijijihghghghgfefefefedcdcdcdcba`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWSTSTSTSTRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGDCDCDCDCDCDCDCDCvuvuvuvutstststsrqrqrqrqnmnmnmnmlklklklkjijijijihghghghgfefefefedcdcdcdc`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWSTSTSTSTRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGFEFEFEDCDCDCDCDCDCDCDCvuvuvuvutstststsrqrqrqrqnmnmnmnmlklklklkjijijijihghghghgfefefefedcdcdcdc`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWSTSTSTSTRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABA@?@?@?@?>=>=>=>=:9:9:9:977777878656565654343434321212121.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!    - - - - DCDCDCDCBABABABA@?@?@?@?>=>=>=>=:9:9:9:9787878786565656543434343210/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!    - - - - DCDCDCDCBABABABA@?@?@?@?>=>=>=>=:9:9:9:97878787865656565434343430/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!    - - - - DCDCDCDCBABABABA@?@?@?@?>=>=>=>=:9:9:9:97878787865656565434343430/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!       - - - - DCDCDCDCBABABABA@?@?@?@?>=>=>=>=:9:9:9:97878787865656565434343430/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#        - - - - DCDCDCDCBABABABA@?@?@?@?>=>=>=>=:9:9:9:97878787865656565432121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#        - - - - DCDCDCDCBABABABA@?@?@?@?>=<;<;<;:9:9:9:97877777765656565212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#        - - - - DCDCDCDCBABABABA@?@?@?@?<;<;<;<;:9:9:9:98787878765656565212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#"!"!"!        - - - - DCDCDCDCBABABABA@?@?@?@?<;<;<;<;:9:9:9:98787878765656565212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%"!"!"!"!        - DCDCDCDCBABABABA@?@?@?@?<;<;<;<;:9:9:9:98787878765434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%"!"!"!"!        DCDCDCDCBABABABA@?>=>=>=<;<;<;<;:9:9:9:98787878743434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%"!"!"!"!        DCDCDCDCBABABABA>=>=>=>=<;<;<;<;:9:9:9:98787877743434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%$#$#$#"!"!"!"!        DCDCDCDCBABABABA>=>=>=>=<;<;<;<;:9:9:9:97787878743434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('$#$#$#$#"!"!"!"!        - - - DCDCDCDCBABABABA>=>=>=>=<;<;<;<;:9:9:9:98765656543434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('$#$#$#$#"!"!"!"!        - - - - DCDCDCDCBA@?@?@?>=>=>=>=<;<;<;<;:9:9:9:96565656543434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('$#$#$#$#"!"!"!"!        - - - - DCDCDCDC@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:96565656543434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('&%&%&%$#$#$#$#"!"!"!"!        - - - - DCDCDCDC@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:96565656543434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)&%&%&%&%$#$#$#$#"!"!"!"!     - - - - DCDCDCDC@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:96565656543434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)&%&%&%&%$#$#$#$#"!"!"!"!     - - - - DCBABABA@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:96565656543434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)&%&%&%&%$#$#$#$#"!"!"!"!     - - - - BABABABA@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:96565656543434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)('('('&%&%&%&%$#$#$#$#"!"!"!"!     - - - - BABABABA@?@?@?@?>=>=>=>=<;<;<;<;:98787876565656543434343212121210/0/0/0/.-.-.-.-,+,+,+,+('('('('&%&%&%&%$#$#$#$#"!"!"!"!       - - - - BABABABA@?@?@?@?>=>=>=>=<;<;<;<;877777786565656543434343212121210/0/0/0/.-.-.-.-,+,+,+,+('('('('&%&%&%&%$#$#$#$#"!"!"!"!        - - - - BABABABA@?@?@?@?>=>=>=>=<;<;<;<;787878786565656543434343212121210/0/0/0/.-.-.-.-,+,+,+,+('('('('&%&%&%&%$#$#$#$#"!"!"!"!        - - - - BABABABA@?@?@?@?>=>=>=>=<;<;<;<;787878786565656543434343212121210/0/0/0/.-.-.-.-,+*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!        - - - - BABABABA@?@?@?@?>=>=>=>=<;<;<;<;787878786565656543434343212121210/0/0/0/.-.-.-.-*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!        - - - - BABABABA@?@?@?@?>=>=>=>=<;<;<;<;787878786565656543434343212121210/0/0/0/.-.-.-.-*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!        - - - - BABABABA@?@?@?@?>=>=>=>=<;<;<;<;787878786565656543434343212121210/0/0/0/.-.-.-.-*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!        - - - - BABABABA@?@?@?@?>=>=>=>=<;<;<;<;787877776565656543434343212121210/0/0/0/.-,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!     - - - - BABABABA@?@?@?@?>=>=>=>=<;<;<;<;778787876565656543434343212121210/0/0/0/,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!    - - - - BABABABA@?@?@?@?>=>=>=>=<;<;<;<;878787876565656543434343212121210/0/0/0/,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!    - - - - BABABABA@?@?@?@?>=>=>=>=<;:9:9:9878787876565656543434343212121210/0/0/0/,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!    - - - - BABABABA@?@?@?@?>=>=>=>=:9:9:9:9878787876565656543434343212121210/.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!    - - - - BABABABA@?@?@?@?>=>=>=>=:9:9:9:987878787656565654343434321212121.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!    - - - - BABABABA@?@?@?@?>=>=>=>=:9:9:9:987878787656565654343434321212121.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!    - - - - xxwwvvuu!!""##$$>>==7766xxwwvvuu$$%%&&''EEDDCCBBDDEEFFGG%%$$##""ddeeffggmmllkkjjMMLLKKJJ<<==>>??cbbaa``_0011223399887766PPQQRRSSppqqrrss - - ttssrrqq%%&&''((55443322tsrqpoon(())**++AA@@??>>HHIIJJKK!! hhiijjkkiihhggff !!""##IIHHGGFF@@AABBCC_^^]]\\[4455667755443322TTUUVVWWttuuvvww ppoonnmm))**++,,1100//..nmmllkkj,,--..//==<<;;::LLMMNNOOllmmnnooeeddccbb$$%%&&''EEDDCCBBDDEEFFGG[ZZYYXWV8899::;;1100//..XXYYZZ[[xxxxwwvvllkkjjii--..//00--,,++**jiihhggf0011223399887766PPQQRRSSppqqrrss - - aa``__^^(())**++AA@@??>>HHIIJJKK - -UTSSRRQQ<<==>>??--,,++**\\]]^^__ - -uuttssrrhhggffee11223344))((''&&feeddccb4455667755443322TTUUVVWWttuuvvww ]]\\[[ZZ,,--..//==<<;;::LLMMNNOO PPOONNMM@@AABBCC))((''&&``aabbcc qqppoonnddccbbaa55667788%%$$##""baa``__^8899::;;1100//..XXYYZZ[[xxxxwwvvYYXXWWVV0011223399887766PPQQRRSSLLKKJJIIDDEEFFGG%%$$##""ddeeffggmmllkkjj``__^^]]99::;;<>??--,,++**\\]]^^__ - -uuttssrrUUTTSSRR4455667755443322TTUUVVWW - - HHGGFFEEHHIIJJKK!! hhiijjkkiihhggff !!""##\\[[ZZYY==>>??@@ZYYXWVUT@@AABBCC))((''&&``aabbcc qqppoonnQQPPOONN8899::;;1100//..XXYYZZ[[ DDCCBBAALLMMNNOOllmmnnooeeddccbb$$%%&&''XXWWVVUUAABBCCDDSSRRQQPPDDEEFFGG%%$$##""ddeeffggmmllkkjjMMLLKKJJ<<==>>??--,,++**\\]]^^__@@??>>==PPQQRRSSppqqrrss - - aa``__^^(())**++TTSSRRQQEEFFGGHH OONNMMLLHHIIJJKK!! hhiijjkkiihhggff !!""##IIHHGGFF@@AABBCC))((''&&``aabbcc<;:98776TTUUVVWWttuuvvww ]]\\[[ZZ,,--..//PPOONNMMIIJJKKLL - - KKJJIIHHLLMMNNOOllmmnnooeeddccbb$$%%&&''EEDDCCBBDDEEFFGG%%$$##""ddeeffgg65544332XXYYZZ[[xxxxwwvvYYXXWWVV00112233LLKKJJIIMMNNOOPP - - GGFFEEDDPPQQRRSSppqqrrss - - aa``__^^(())**++AA@@??>>HHIIJJKK!! hhiijjkk!!""##$$21100//.\\]]^^__ - -uuttssrrUUTTSSRR44556677HHGGFFEEQQRRSSTT CCBBAA@@TTUUVVWWttuuvvww ]]\\[[ZZ,,--..//==<<;;::LLMMNNOOllmmnnoo%%&&''((.--,,++*``aabbcc qqppoonnQQPPOONN8899::;;DDCCBBAAUUVVWWXX??>>==<;XXYYZZ[[xxxxwwvvYYXXWWVV0011223399887766PPQQRRSSppqqrrss))**++,,*))((''&ddeeffggmmllkkjjMMLLKKJJ<<==>>??@@??>>==YYZZ[[\\:9877665\\]]^^__ - -uuttssrrUUTTSSRR4455667755443322TTUUVVWWttuuvvww--..//00&%%$$##"hhiijjkkiihhggff !!""##IIHHGGFF@@AABBCC<<;;::99]]^^__``!!54433221``aabbcc qqppoonnQQPPOONN8899::;;1100//..XXYYZZ[[xxxxwwvv11223344"!! llmmnnooeeddccbb$$%%&&''EEDDCCBBDDEEFFGG88776655aabbccdd""##$$%%100//..-ddeeffggmmllkkjjMMLLKKJJ<<==>>??--,,++**\\]]^^__ - -uuoonnmm556677==ppqqrrss - - aa``__^^(())**++AA@@??>>HHIIJJKK44332211eeffgghh&&''(())-,,++**)hhiijjkkiihhggff !!""##IIHHGGFF@@AABBCC))((''&&``aabbcc llkkjjii>>??@@AAttuuvvww ]]\\[[ZZ,,--..//==<<;;::LLMMNNOO00//..--iijjkkll**++,,--)((''&&%llmmnnooeeddccbb$$%%&&''EEDDCCBBDDEEFFGG%%$$##""ddeeffgghhggffeeBBCCDDEExxxxwwvvYYXXWWVV0011223399887766PPQQRRSS,,++**))mmnnoopp..//0011%$$##""!ppqqrrss - - aa``__^^(())**++AA@@??>>HHIIJJKK!! hhiijjkkddccbbaaFFGGHHII uuttssrrUUTTSSRR4455667755443322TTUUVVWW((''&&%%qqrrsstt22334455! ttuuvvww ]]\\[[ZZ,,--..//==<<;;::LLMMNNOOllmmnnoo``__^^]]JJKKLLMM - - qqppoonnQQPPOONN8899::;;1100//..XXYYZZ[[$$##""!!uuvvwwxx6677==>>xxxxwwvvYYXXWWVV0011223399887766PPQQRRSSppqqrrss - - \\[[ZZYYNNOOPPQQmmllkkjjMMLLKKJJ<<==>>??--,,++**\\]]^^__ xxwwvvuu??@@AABBuuttssrrUUTTSSRR4455667755443322TTUUVVWWttuuvvww SSRRQQPPRRSSYYZZiihhggff !!""##IIHHGGFF@@AABBCC))((''&&``aabbccoonnmmllCCDDEEFFqqppoonnQQPPOONN8899::;;1100//..XXYYZZ[[xxxxwwvvOONNMMLL[[\\]]^^eeddccbb$$%%&&''EEDDCCBBDDEEFFGG%%$$##""ddeeffggkkjjiihhGGHHIIJJ mmllkkjjMMLLKKJJ<<==>>??--,,++**\\]]^^__ - -uuttssrrKKJJIIHH__``aabb - - aa``__^^(())**++AA@@??>>HHIIJJKK!! hhiijjkkggffeeddKKLLMMNN - - iihhggff !!""##IIHHGGFF@@AABBCC))((''&&``aabbcc qqppoonnGGFFEEDDccddeeff ]]\\[[ZZ,,--..//==<<;;::LLMMNNOOllmmnnoo ccbbaa``OOPPQQRReeddccbb$$%%&&''EEDDCCBBDDEEFFGG%%$$##""ddeeffggmmllkkjjCCBBAA@@gghhiijjYYXXWWVV0011223399887766PPQQRRSSppqqrrss - - __^^]]\\SSYYZZ[[ - - aa``__^^(())**++AA@@??>>HHIIJJKK!! hhiijjkkiihhggff !!""##??>>==77kkllmmnnUUTTSSRR4455667755443322TTUUVVWWttuuvvww - - [[ZZYYSS\\]]^^__ ]]\\[[ZZ,,--..//==<<;;::LLMMNNOOllmmnnooeeddccbb$$%%&&''66554433oouuvvwwQQPPOONN8899::;;1100//..XXYYZZ[[xxxxwwvvaa``__^^ RRQQPPOO``aabbccYYXXWWVV0011223399887766PPQQRRSSppqqrrss - - aa``__^^(())**++221100//xxxxwwvvMMLLKKJJ<<==>>??--,,++**\\]]^^__ - -uuttssrr]]\\[[ZZNNMMLLKKddeeffggUUTTSSRR4455667755443322TTUUVVWWttuuvvww ]]\\[[ZZ,,--..//..--,,++uutsrqpo !!""##IIHHGGFF@@AABBCC))((''&&``aabbcc qqppoonnYYXXWWVVJJIIHHGGhhiijjkkQQPPOONN8899::;;1100//..XXYYZZ[[xxxxwwvvYYXXWWVV00112233**))((''onnmmllk$$%%&&''EEDDCCBBDDEEFFGG%%$$##""ddeeffggmmllkkjjUUTTSSRRFFEEDDCCllmmnnooMMLLKKJJ<<==>>??--,,++**\\]]^^__ - -uuttssrrUUTTSSRR44556677&&%%$$##kjjiihhg(())**++AA@@??>>HHIIJJKK!! hhiijjkkiihhggffQQPPOONN BBAA@@??uuvvwwxx !!""##IIHHGGFF@@AABBCC))((''&&``aabbcc qqppoonnQQPPOONN8899::;;""!!gffeeddc,,--..//==<<;;::LLMMNNOOllmmnnooeeddccbbMMLLKKJJIIHHGGFF@@AABBCC))((''&&``aabbcc<;:98776TTUUVVWWttuuvvww ]]\\[[ZZ,,--..//==<<;;::LLMMNNOOllmmnnoo%%&&''((.--,,++*``aabbcc qqppoonnQQPPOONN8899::;;1100//..XXYYZZ[[--,,++**EEDDCCBBDDEEFFGG%%$$##""ddeeffgg65544332XXYYZZ[[xxxxwwvvYYXXWWVV0011223399887766PPQQRRSSppqqrrss))**++,,*))((''&ddeeffggmmllkkjjMMLLKKJJ<<==>>??--,,++**\\]]^^__!!""##))((''&&AA@@??>>HHIIJJKK!! hhiijjkk!!""##$$21100//.\\]]^^__ - -uuttssrrUUTTSSRR4455667755443322TTUUVVWWttuuvvww--..//00&%%$$##"hhiijjkkiihhggff !!""##IIHHGGFF@@AABBCC))((''&&``aabbcc$$%%&&''%%$$##""==<<;;::LLMMNNOOllmmnnoo%%&&''((.--,,++*``aabbcc qqppoonnQQPPOONN8899::;;1100//..XXYYZZ[[xxxxwwvv11223344"!! llmmnnooeeddccbb$$%%&&''EEDDCCBBDDEEFFGG%%$$##""ddeeffgg(())**++!! 99887766PPQQRRSSppqqrrss))**++,,*))((''&ddeeffggmmllkkjjMMLLKKJJ<<==>>??--,,++**\\]]^^__ - -uuoonnmm556677==ppqqrrss - - aa``__^^(())**++AA@@??>>HHIIJJKK!! hhiijjkk,,--..//55443322TTUUVVWWttuuvvww--..//00&%%$$##"hhiijjkkiihhggff !!""##IIHHGGFF@@AABBCC))((''&&``aabbcc llkkjjii>>??@@AAttuuvvww ]]\\[[ZZ,,--..//==<<;;::LLMMNNOOllmmnnoo001122331100//..XXYYZZ[[xxxxwwvv11223344"!! llmmnnooeeddccbb$$%%&&''EEDDCCBBDDEEFFGG%%$$##""ddeeffgghhggffeeBBCCDDEExxxxwwvvYYXXWWVV0011223399887766PPQQRRSSppqqrrss44556677--,,++**\\]]^^__ - -uuoonnmm556677==ppqqrrss - - aa``__^^(())**++AA@@??>>HHIIJJKK!! hhiijjkkddccbbaaFFGGHHII uuttssrrUUTTSSRR4455667755443322TTUUVVWWttuuvvww==>>??@@))((''&&``aabbcc llkkjjii>>??@@AAttuuvvww ]]\\[[ZZ,,--..//==<<;;::LLMMNNOOllmmnnoo``__^^]]JJKKLLMM - - qqppoonnQQPPOONN8899::;;1100//..XXYYZZ[[xxppoonnAABBCCDD - -%%$$##""ddeeffgghhggffeeBBCCDDEExxxxwwvvYYXXWWVV0011223399887766PPQQRRSSppqqrrss - - \\[[ZZYYNNOOPPQQmmllkkjjMMLLKKJJ<<==>>??--,,++**\\]]^^__ - -mmllkkjjEEFFGGHH - - !! hhiijjkkddccbbaaFFGGHHII uuttssrrUUTTSSRR4455667755443322TTUUVVWWttuuvvww SSRRQQPPRRSSYYZZiihhggff !!""##IIHHGGFF@@AABBCC))((''&&``aabbcc iihhggffIIJJKKLL llmmnnoo``__^^]]JJKKLLMM - - qqppoonnQQPPOONN8899::;;1100//..XXYYZZ[[xxxxwwvvOONNMMLL[[\\]]^^eeddccbb$$%%&&''EEDDCCBBDDEEFFGG%%$$##""ddeeffggeeddccbbMMNNOOPPppqqrrss - - \\[[ZZYYNNOOPPQQmmllkkjjMMLLKKJJ<<==>>??--,,++**\\]]^^__ - -uuttssrrKKJJIIHH__``aabb - - aa``__^^(())**++AA@@??>>HHIIJJKK!! hhiijjkkaa``__^^QQRRSSYYttuuvvww SSRRQQPPRRSSYYZZiihhggff !!""##IIHHGGFF@@AABBCC))((''&&``aabbcc qqppoonnGGFFEEDDccddeeff ]]\\[[ZZ,,--..//==<<;;::LLMMNNOOllmmnnoo]]\\[[ZZZZ[[\\]]xxxxwwvvOONNMMLL[[\\]]^^eeddccbb$$%%&&''EEDDCCBBDDEEFFGG%%$$##""ddeeffggmmllkkjjCCBBAA@@gghhiijjYYXXWWVV0011223399887766PPQQRRSSppqqrrss - - YYSSRRQQ^^__``aa - -uuttssrrKKJJIIHH__``aabb - - aa``__^^(())**++AA@@??>>HHIIJJKK!! hhiijjkkiihhggff !!""##??>>==77kkllmmnnUUTTSSRR4455667755443322TTUUVVWWttuuvvww PPOONNMMbbccddee !!""## qqppoonnGGFFEEDDccddeeff ]]\\[[ZZ,,--..//==<<;;::LLMMNNOOllmmnnooeeddccbb$$%%&&''66554433oouuvvwwQQPPOONN8899::;;1100//..XXYYZZ[[xxxxwwvvLLKKJJIIffgghhii$$%%&&''mmllkkjjCCBBAA@@gghhiijjYYXXWWVV0011223399887766PPQQRRSSppqqrrss - - aa``__^^(())**++221100//xxxxwwvvMMLLKKJJ<<==>>??--,,++**\\]]^^__ - -uuttssrrHHGGFFEEjjkkllmm(())**++iihhggff !!""##??>>==77kkllmmnnUUTTSSRR4455667755443322TTUUVVWWttuuvvww ]]\\[[ZZ,,--..//..--,,++uutsrqpo !!""##IIHHGGFF@@AABBCC))((''&&``aabbcc qqppoonnDDCCBBAAmmllkkjj,,--..//eeddccbb$$%%&&''66554433oouuvvwwQQPPOONN8899::;;1100//..XXYYZZ[[xxxxwwvvYYXXWWVV00112233**))((''onnmmllk$$%%&&''EEDDCCBBDDEEFFGG%%$$##""ddeeffggmmllkkjj@@??>>==iihhggff00112233 - - aa``__^^(())**++221100//xxxxwwvvMMLLKKJJ<<==>>??--,,++**\\]]^^__ - -uuttssrrUUTTSSRR44556677&&%%$$##kjjiihhg(())**++AA@@??>>HHIIJJKK!! hhiijjkkiihhggff !!""##77665544eeddccbb44556677 ]]\\[[ZZ,,--..//..--,,++uutsrqpo !!""##IIHHGGFF@@AABBCC))((''&&``aabbcc qqppoonnQQPPOONN8899::;;""!!gffeeddc,,--..//==<<;;::LLMMNNOOllmmnnooeeddccbb$$%%&&''33221100aa``__^^8899::;;YYXXWWVV00112233**))((''onnmmllk$$%%&&''EEDDCCBBDDEEFFGG%%$$##""ddeeffggmmllkkjjMMLLKKJJ<<==>>??cbbaa``_0011223399887766PPQQRRSSppqqrrss - - aa``__^^(())**++//..--,,]]\\[[ZZ<<==>>??UUTTSSRR44556677&&%%$$##kjjiihhg(())**++AA@@??>>HHIIJJKK!! hhiijjkkiihhggff !!""##IIHHGGFF@@AABBCC_^^]]\\[4455667755443322TTUUVVWWttuuvvww ]]\\[[ZZ,,--..//++**))((YYXXWWVV@@AABBCCQQPPOONN8899::;;""!!gffeeddc,,--..//==<<;;::LLMMNNOOllmmnnooeeddccbb$$%%&&''EEDDCCBBDDEEFFGG[ZZYYXWV8899::;;1100//..XXYYZZ[[xxxxwwvvYYXXWWVV00112233''&&%%$$UUTTSSRRDDEEFFGGMMLLKKJJ<<==>>??cbbaa``_0011223399887766PPQQRRSSppqqrrss - - aa``__^^(())**++AA@@??>>HHIIJJKK - -UTSSRRQQ<<==>>??--,,++**\\]]^^__ - -uuttssrrUUTTSSRR44556677##""!!QQPPOONNHHIIJJKK !!""##IIHHGGFF@@AABBCC_^^]]\\[4455667755443322TTUUVVWWttuuvvww ]]\\[[ZZ,,--..//==<<;;::LLMMNNOO PPOONNMM@@AABBCC))((''&&``aabbcc qqppoonnQQPPOONN8899::;;MMLLKKJJLLMMNNOO$$%%&&''EEDDCCBBDDEEFFGG[ZZYYXWV8899::;;1100//..XXYYZZ[[xxxxwwvvYYXXWWVV0011223399887766PPQQRRSSLLKKJJIIDDEEFFGG%%$$##""ddeeffggmmllkkjjMMLLKKJJ<<==>>??IIHHGGFFPPQQRRSS(())**++AA@@??>>HHIIJJKK - -UTSSRRQQ<<==>>??--,,++**\\]]^^__ - -uuttssrrUUTTSSRR4455667755443322TTUUVVWW - - HHGGFFEEHHIIJJKK!! hhiijjkkiihhggff !!""##IIHHGGFF@@AABBCCEEDDCCBBTTUUVVWW,,--..//==<<;;::LLMMNNOO PPOONNMM@@AABBCC))((''&&``aabbcc qqppoonnQQPPOONN8899::;;1100//..XXYYZZ[[ DDCCBBAALLMMNNOOllmmnnooeeddccbb$$%%&&''EEDDCCBBDDEEFFGG AA@@??>>XXYYZZ[[0011223399887766PPQQRRSSLLKKJJIIDDEEFFGG%%$$##""ddeeffggmmllkkjjMMLLKKJJ<<==>>??--,,++**\\]]^^__@@??>>==PPQQRRSSppqqrrss - - aa``__^^(())**++AA@@??>>HHIIJJKK - - - -==<<;;::\\]]^^__4455667755443322TTUUVVWW - - HHGGFFEEHHIIJJKK!! hhiijjkkiihhggff !!""##IIHHGGFF@@AABBCC))((''&&``aabbcc<;:98776TTUUVVWWttuuvvww ]]\\[[ZZ,,--..//==<<;;::LLMMNNOO 99887766``aabbcc8899::;;1100//..XXYYZZ[[ DDCCBBAALLMMNNOOllmmnnooeeddccbb$$%%&&''EEDDCCBBDDEEFFGG%%$$##""ddeeffgg65544332XXYYZZ[[xxxxwwvvYYXXWWVV0011223399887766PPQQRRSS55443322ddeeffgg<<==>>??--,,++**\\]]^^__@@??>>==PPQQRRSSppqqrrss - - aa``__^^(())**++AA@@??>>HHIIJJKK!! hhiijjkk!!""##$$21100//.\\]]^^__ - -uuttssrrUUTTSSRR4455667755443322TTUUVVWW1100//..hhiijjkkllmmbdQZ|`vXnJXQHAbnXv`rXQJ`|drf`vXXQr˂JtArdfpvtbdQZfH~ے`JbtlnXvtbdnvppZHAb|ZdQnXvےbHAf`vXdrtAvpfے`Jf~fpےbHAtAJlnvppZHAb|ZdQnrXQJ|drf`vXXQr˂JtArd`f~QZ|dfH~ے`Jbtl`f~Zp˂nvpJltH~fXQr˂vnXZp˂tbdQZfH~ے`Jbtl`ےHAtAJlnvppZHAb|ZdQHfpvrtAJf`vXXQr˂JtArdHfpvrbdQZfH~bdQZ|`vXnpZHAbv`frXQJ`|drf`vXXQr˂JtArdZp˂tbdQZfH~ے`JbtlnXvbdQZ|nvppZHAb|ZdQnXv|drf`vXdrtAvpfے`J~HfpےbHAtAJlnvppZHAb|ZdQrXQJ`|drf`vXXQr˂JtArd`pvdrtAfH~ے`Jbtl`fHtAJlnvpJltH~fXQr˂vnXZp˂tbdQZfH~ے`JbnXvےbHAtAJlnvppZHAb|ZdQnrXQJJltf`vXXQr˂JtArdfpvtbdQZfH~bdQZ|`vXnp`JXQv`frXQJ`|drf`vXXQr˂`f~Zp˂tbdQZfH~ے`Jbtl`p˂bdQZ|nvppZHAb|ZdQnrXQJ|drf`vXdrtAvpfr˂p~HfvnےbHAtAJlnvppZHAHfpvrXQJ`|drf`vXXQr˂JtArdrXQJ`drtAfH~ے`Jbtl`ےHAtAJlnvpJltH~fZHAbXv`fZp˂tbdQZfH~ے`JXQnXvےbHAtAJlnvppZHAb|ZdQےbHAJltf`vXXQr˂JtArdZp˂tbdQZfH~bdQZ|`vXnے`JXQ~HfrXQJ`|drf`vXrbt`f~Zp˂tbdQZfH~ے`JbtlZp˂bQZdnvppZHAb|ZdQrXQJ`|drf`vXdrtAvpfr˂ppvnےbHAtAJlnvplJtAdHfpvrXQJ`|drf`vXXQr˂JtArdrXQJ`rtAJlfH~ے`JbnXvےbHAtAJlnvpJltH~f|ZdQbXv`fZp˂tbdQZfH~|ZdQnXvےbHAtAJlnvppZHAb|ZdQp˂rtbdQf`vXXQr˂`f~Zp˂tbdQZfH~bdQZ|`vXntlJ~HfrXQJ`|drf`vXbtl`f~Zp˂tbdQZfH~ے`JbtlXQJ`ےZ|dnvppZHAHfpvrXQJ`|drf`vXdrtAvpftArdpvnےbHAtAJlnr˂JtArdHfpvrXQJ`|drf`vXXQr˂JtArdbHAZrtAJlfH~ے`JXQnXvےbHAtAJlnvpJltH~f|ZdQbvf~HZp˂tbdQZpZHAb|ZdQnXvےbHAtAJlnvppZHAb|ZdQp˂rtbdQf`vXrbt`f~Zp˂tbdQZfH~bdQZ|`vXntl|fpvrXQJ`|dtAے`Jbtl`f~Zp˂tbdQZfH~ے`JbnXvXQJ`ےZ|rAJnvplJtAdHfpvrXQJ`|drf`vXdrtAvpfZdQbtnXv`ےbHAJltXQr˂JtArdHfpvrXQJ`|drf`vXXQr˂`pvbHAXQltbfH~|ZdQnXvےbHAtAJlnvpJltH~flJtAf~HZp˂bnvpZHAb|ZdQnXvےbHAtAJlnvppZHAnXv`J`ےdQZ|f`vXbtl`f~Zp˂tbdQZfH~bdQZ|`vXnrd|fpvrXQJ`pfHے`Jbtl`f~Zp˂tbdQZfH~ے`JXQf~HbHAZpdrtAJnr˂JtArdHfpvrXQJ`|drf`vXdrtAvpfZdQbtnXv`ےbHAf`vXXQr˂JtArdHfpvrXQJ`|drf`vXrbtfpv˂rXQltbpZHAb|ZdQnXvےbHAtAJlnvpJltH~flJtAf~fpZp˂nvppZHAb|ZdQnXvےbHAtAJlnvplJtAdnXv`J`ےdQZ|ے`Jbtl`f~Zp˂tbdQZfH~bdQZ|`vXnrdtvnXrbdQZfH~ے`Jbtl`f~Zp˂tbdQZfH~|ZdQf~HbHAZpAJltXQr˂JtArdHfpvrXQJ`|drf`vXdrtAr˂plJtArv`f|drf`vXXQr˂JtArdHfpvrXQJ`|drf`vXbtlXv`f˂bbnvpZHAb|ZdQnXvےbHAtAJlnvpJlt`JXQrd|Z~HfptAJlnvppZHAb|ZdQnXvےbHAtAJlnr˂JtArd~HfHAZp˂pfHے`Jbtl`f~Zp˂tbdQZfH~bdQZ|˂pZdQbtvnXtbdQZfH~ے`Jbtl`f~Zp˂tbdQZpZHAb|ZdQpvnrXQJf`vXXQr˂JtArdHfpvrXQJ`|drf`vXdrtAHAbےlJtArv`f|drf`vXXQr˂JtArdHfpvrXQJ`|dtAے`JbtlXv`f`ےbnvppZHAb|ZdQnXvےbHAtAJlnvpJlt`JXQrd|ZrQJHAtAJlnvppZHAb|ZdQnXvےbHAJltXQr˂JtArd~HfHAZp˂fH~ے`Jbtl`f~Zp˂tbdQZfH~bdQZ|˂pZdQtArdZp˂tbdQZfH~ے`Jbtl`f~Zp˂bnvpZHAb|ZdQpvrXQJf`vXXQr˂JtArdHfpvrXQJ`|drf`vX`vXnHAb|ZdQrXQJ`|drf`vXXQr˂JtArdHfpvrXQJ`pfHے`Jbtl~Hfp`p˂nvppZHAb|ZdQnXvےbHAtAJlnr˂XQr˂vpf˂pZHAbtlےbHAtAJlnvppZHAb|ZdQnXvےbHAf`vXXQr˂JtArdvnXrbdQZfH~ے`Jbtl`f~Zp˂tbdQZpZHAbpZHAbH~fbے`JtArdZp˂tbdQZfH~ے`Jbtl`f~Zp˂nvppZHAb|ZdQv`f|rAJlf`vXXQr˂JtArdHfpvrXQJ`|dtAے`Jے`J`vXnJXQr|ZdQrXQJ`|drf`vXXQr˂JtArdHfpvrbdQZfH~ے`Jbtl~HfptbdnvppZHAb|ZdQnXvےbHAJltXQr˂XQr˂vpf˂pZHAbtlےbHAtAJlnvppZHAb|ZdQnXv|drf`vXXQr˂JtArdvnXQZ|dfH~ے`Jbtl`f~Zp˂bnvpZHAbpZHAbH~fbے`|ZdQbZp˂tbdQZfH~ے`Jbtl`fHtAJlnvppZHAb|ZdQv`pvrtAJlf`vXXQr˂JtArdHfpvrXQJ`pfHے`Jے`JXQr˂JtArdHfpvrXQJ`f`vXrZHAbtl`f~Zp˂nvppZHAb|ZdQnXvےbHAtAJlnvptlJv`frXQJ`|dtAے`Jbtl`f~Zp˂tbdQZfH~QXb㉀ۍpfH~pZHAb|ZdQnXvےbHAnvpbے`JtArdHfpvrbdQZfH~ے`Jbtl`f~Zp˂tbdQZfH~tArd~HfpےbHAJltXQr˂JtArdHfpvrXQJ`|drf`vXp`ZQXf۝`vے`Jbtl`f~Zp˂`vXnJXQr|ZdQnXv|drf`vXXQr˂JtArdHfpvrXQJ`|drf`vX|ZdQbvnXZp˂bnvpZHAb|ZdQnXvےbHAtAJlnvpb㉀ۑpXnvXQr˂JtArdHfpvrXQJ`vpfpZHAbtl`fHtAJlnvppZHAb|ZdQnXvےbHAtAJlnr˂tlJv`f~frXQJ`pfHے`Jbtl`f~Zp˂tbdQZfH~JAHr󙐍pfH~pZHAb|ZdQnXvےbHAH~fbے`JtArdfpvtbdQZfH~ے`Jbtl`f~Zp˂tbdQZp`JXQtArdtpvnےbHAf`vXXQr˂JtArdHfpvrXQJ`|drf`vXˁ`ZQXf۝`vے`Jbtl`f~Zp˂`vXnJXQr|ZdQnrXQJ|drf`vXXQr˂JtArdHfpvrXQJ`|dtAr˂plJtAXv`fZp˂nvppZHAb|ZdQnXvےbHAtAJlnvpb㉀ۑpXnvXQr˂JtArdHfpvrbdQZvpfpZAbbtl`ےHAtAJlnvppZHAb|ZdQnXvےbHAJltZHAbrd|~HfrbdQZfH~ے`Jbtl`f~Zp˂tbdQZfH~JAHr󙐍pfH~pZHAb|ZdQnXv|ltH~`JXQrJtArdZp˂tbdQZfH~ے`Jbtl`f~Zp˂bnvے`JXQZdQbtpvn|drf`vXXQr˂JtArdHfpvrXQJ`|drf`vXۑpJf۝`vے`Jbtl`fHbdQZ|vpfH˂pZ|ZdQrXQJ`|drf`vXXQr˂JtArdHfpvrXQJ`pfHr˂plJtAXv`ftAJlnvppZHAb|ZdQnXvےbHAtAJlnے`JAHr󙐂˅XnvXQr˂JtArdfpvdrtA~f`HAbےbnXvےbHAtAJlnvppZHAb|ZdQnXvےbHAf`vXZHAbrd|fpvtbdQZfH~ے`Jbtl`f~Zp˂tbdQZXQr˂`ZQXbp|dpZHAb|ZdQnrXQJJltvXn`JXQr`f~Zp˂tbdQZfH~ے`Jbtl`f~Zp˂nvp˂pZZdQtArnrXQJ|drf`vXXQr˂JtArdHfpvrXQJ`|dtApZHAbۑpJrQtJlے`Jbtl`ےHAbdQZ|vpfH˂pZAHfpvrXQJ`|drf`vXXQr˂JtArdHfpvrbdQZfH~HAbےd|Z`ےHAtAJlnvppZHAb|ZdQnXvےbHAJltے`JAHr󙐂˒tbAdXQr˂JtArdZp˂drtA~f``JXQnXvےbHAtAJlnvppZHAb|ZdQnXv|drf`vX`JXQrdQbtZp˂tbdQZfH~ے`Jbtl`f~Zp˂bnvXQr˂`ZQXAHZ|dpZHAb|ZdQrXQJ`dQZ|vXH~rbt`f~Zp˂tbdQZfH~ے`Jbtl`fHtAJlnvp˂pZlJtArrXQJ`|drf`vXXQr˂JtArdHfpvrXQJ`pfHpZHAbr󙐂ˁ`rQtJlے`JbnXvےbHAdrtAJf`vlJtAdHfpvrXQJ`|drf`vXXQr˂JtArdfpvtbdQZfH~HAbےd|ZےbHAtAJlnvppZHAb|ZdQnXvےbHAf`vX˂pZQXb㉀tbAdXQr˂`f~Zp˂ltbXnv|ZdQnXvےbHAtAJlnvppZHAb|ZdQnrXQJ|drf`vX`JXQHAdQbtZp˂tbdQZfH~ے`Jbtl`f~Zp˂nvpZHAbۑpJAHZ|dpZHAHfpvrXQJ`dQZ|pfH~btl`f~Zp˂tbdQZfH~ے`Jbtl`ےHAtAJlnvpbے`l|ZdQrXQJ`|drf`vXXQr˂JtArdHfpvrbdQZfH~ے`JXQr󙐂ˁ`rQtJlے`JXQnXvےbHAdrtAJf`vJtArdHfpvrXQJ`|drf`vXXQr˂JtArdZp˂tbdQZfH~JXQrbnXvےbHAtAJlnvppZHAb|ZdQnXv|drf`vXr˂pZQXb㉀tbAdrbt`f~Zp˂ltdXnv|ZdQnXvےbHAtAJlnvppZHAb|ZdQrXQJ`|drf`vX˂pZHA`f~fpZp˂tbdQZfH~ے`Jbtl`fHtAJlnvpZHAbXnvZ|dlJtAdHfpvrXQJ`rtAJlp`vXbtl`f~Zp˂tbdQZfH~ے`JbnXvےbHAtAJlnvpbے`vnXrXQJ`|drf`vXXQr˂JtArdfpvtbdQZfH~ے`JXQpfH~rQtJl|ZdQnXvےbHAtbdQnr˂JtArdHfpvrXQJ`|drf`vXXQr˂`f~Zp˂tbdQZfH~JXQrv`fےbHAtAJlnvppZHAb|ZdQnrXQJ|drf`vXHAbےf۝`vtbAdbtl`f~Zp˂Z|dpZAb`|ZdQnXvےbHAtAJlnvppZHAHfpvrXQJ`|drf`vX˂p`J~HfpZp˂tbdQZfH~ے`Jbtl`ےHAtAJlnvp`JXQrXnvZ|dJtArdHfpvrXQJ`rtAJlJXQrbtl`f~Zp˂tbdQZfH~ے`JXQnXvےbHAtAJlnvpXQr˂vnXrXQJ`|drf`vXXQr˂JtArdZp˂tbdQZfH~˂pZpfH~rQtJl|ZdQnXvےbHAtbdQ˂pZHJtArdHfpvrXQJ`|drf`vXrbt`f~Zp˂tbdQZfH~pZHAbv`fےbHAtAJlnvppZHAb|ZdQrXQJ`|drf`vXHAbےf۝`vtbAdbtl`f~Zp˂Z|lAbے`|ZdQnXvےbHAtAJlnvplJtAdHfpvrXQJ`|drf`vXے`J~HfvZp˂tbdQZfH~ے`JbnXvےbHAtAJlnvp`JXQrXnvZ|dJtArdHfpvrXQJ`tbdQZJXQrbtl`f~Zp˂tbdQZfH~|ZdQnXvےbHAtAJlnvpXQr˂nXv`rXQJ`|drf`vXXQr˂`f~Zp˂tbdQZfH~˂p`pfH~rQtJl|ZdQnXvےbHA|dr˂pZHJtArdHfpvrXQJ`|drf`vXbtl`f~Zp˂tbdQZfH~p`JXQf~HےbHAtAJlnvppZHAHfpvrXQJ`|drf`vXJXQrf۝`vtbAdbtl`f~Zp˂tAJlAbJ|ZdQnXvےbHAtAJlnr˂JtArdHfpvrXQJ`|drf`vXrbtfpvZp˂tbdQZfH~ے`JXQnXvےbHAtAJlnvp˂pZHAXnvZ|dJtArdHfpvrXQJ`tbdQZQr˂pbtl`f~Zp˂tbdQZpZHAb|ZdQnXvےbHAtAJlnvpl|ZdQnXv`rXQJ`|drf`vXrbt`f~Zp˂tbdQZfH~bے`pfH~rQtJl|ZdQnXvےbHA|ltZHAbJtArdHfpvrXQJ`|dtAے`Jbtl`f~Zp˂tbdQZfH~btlf~HےbHAtAJlnvplJtAdHfpvrXQJ`|drf`vXJXQrf۝`vtbAdbtl`f~Zp˂bnvے`JXQ|ZdQnXvےbHAJltXQr˂JtArdHfpvrXQJ`|drf`vXJtArdfpvZp˂tbdQZfH~|ZdQnXvےbHAtAJlnvp˂p`ZXnvZ|dJtArdHfpvrXQJ`p`vXr˂pbtl`f~Zp˂bnvpZHAb|ZdQnXvےbHAtAJlnvp|ZdQnvfrXQJ`|drf`vXbtl`f~Zp˂tbdQZfH~QXb㉀ۍpfH~rQtJl|ZdQnXvےbHAnvpZHAbJtArdHfpvrXQJ`pfHے`Jbtl`f~Zp˂tbdQZfH~btl~HfpےbHAtAJlnr˂JtArdHfpvrXQJ`|drf`vXpJAHrf۝`vtbAdbtl`f~Zp˂fH~ے`JXQ|ZdQnXvےbHAf`vXXQr˂JtArdHfpvrXQJ`|drf`vX|ZdQbvnXZp˂tbdQZpZHAb|ZdQnXvےbHAtAJlnvpˁ`ZXnvZ|drQtqrstuvwxxwvutsr2222222222222222222222222222333333 \ No newline at end of file diff --git a/barcode-generator/Resources/data/qrv27_0.dat b/barcode-generator/Resources/data/qrv27_0.dat deleted file mode 100644 index 7fde281..0000000 --- a/barcode-generator/Resources/data/qrv27_0.dat +++ /dev/null @@ -1,249 +0,0 @@ -|{|{|{|{|{|{|{|{zyzyzyzyxwxwxwxwvuvuvuvuststststrqrqrqrqpopopoponmnmnmnmnmlklklklklklklkjijijijihghghghgfefefefedcdcdcdcdcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYWXWXWXWXWWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPOPONMNMNMNMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCBABABABA@?@?@?@?>=>=>=>=;;<;<;<;:9:9:9:9:9:9:9:987878787656565654343434321212121|{|{|{|{|{|{|{|{zyzyzyzyxwxwxwxwvuvuvuvusssssstsrqrqrqrqpopopoponmnmnmnmlklklklklklklklkjijijijihghghghgfefefefedcdcdcdcdcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYWXWXWXWXXWVUVUVUVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCBABABABA@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:9:987878787878787656565654343434321212121|{|{|{|{|{|{|{|{zyzyzyzyxwxwxwxwvuvuvuvutstststsrqrqrqrqpopopoponmnmnmnmlklklklklklklklkjijijijihghghghgfefefefedcdcdcdcdcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYWXWXWXWXVUVUVUVUVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCBABABABA@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:98787878787878787656565654343434321212121|{|{|{|{|{|{|{|{zyzyzyzyxwxwxwxwvuvuvuvutstststsrqrqrqrqpopopoponmnmnmnmlklklklklklklklkjijijijihghghghgfefefefedcdcdcdcdcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYWXWXWXWXVUVUVUVUVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCBABABABA@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:98787878787878787656565654343434321212121|{|{|{|{zyzyzyzyzyzyzyzyxwxwxwxwvuvuvuvutstststsrqrqrqrqpopopoponmnmnmnmlklklklklklklklkjijijijihghghghgfefefefedcdcdcdcdcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYWXWXWXWXVUVUVUVUVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCBABABABA@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:98787878787878787656565654343434321212121|{|{|{|{zyzyzyzyzyzyzyzyxwxwxwxwvuvuvuvutstststsrqrqrqrqpopopoponmnmnmnmlklklklklklklklkjijijijihghghghgfefefefedcdcdcdcdcbababababababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYWXWXWWWWVUVUVUVUVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEFEDCDCDCDCDCDCDCBABABABA@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:98787878787878787656565654343434321212121|{|{|{|{zyzyzyzyzyzyzyzyxwxwxwxwtstststststststsrqrqrqrqpopopoponmnmnmnmlklklklklkjijijijijijijihghghghgfefefefedcdcdcdcbabababababababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYWWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMNMLKLKLKLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEDCDCDCDCDCDCDCDCBABABABA@?@?@?@?>=>=>=>=;;;;;<;<:9:9:9:98787878787878787656565654343434321212121|{|{|{|{zyzyzyzyzyzyzyzyvuvuvuvussssststtstststsrqrqrqrqpopopoponmnmnmnmlklklklkjijijijijijijijihghghghgfefefefedcdcdcdcbabababababababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUVUTSTSTSTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEDCDCDCDCDCDCDCDCBABABABA@?@?@?@?>=>=>=>=;<;<;<;<:9:9:9:98787878787656565656565654343434321212121|{|{|{|{zyzyzyzyxwxwxwxwvuvuvuvuststststqqqqqqrqrqrqrqrqpopopoponmnmnmnmlklklklkjijijijijijijijihghghghgfefefefedcdcdcdcbabababababababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEDCDCDCDCDCDCDCDCBABABABA@?@?@?@?>=>=>=>=;<;<;<;<:9:9:9:98787878765656565656565654343434321212121|{|{|{|{zyzyzyzyxwxwxwxwvuvuvuvuststststrqrqrqrqrqrqrqrqpopopoponmnmnmnmlklklklkjijijijijijijijihghghghgfefefefedcdcdcdcbabababababababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEDCDCDCDCDCDCDCDCBABABABA@?@?@?@?>=>=>=>=;<;<;<;<:9:9:9:98787878765656565656565654343434321212121|{|{|{|{zyzyzyzyxwxwxwxwvuvuvuvuststststrqrqrqrqrqrqrqrqpopopoponmnmnmnmlklklklkjijijijijijijijihghghghgfefefefedcdcdcdcbabababababababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEDCDCDCDCDCDCDCDCBABABABA@?@?@?@?>=>=>=>=;<;<;<;<:9:9:9:98787878765656565656565654343434321212121|{|{|{|{zyzyzyzyxwxwxwxwvuvuvuvuststststrqrqrqrqrqrqrqrqpopopoponmnmnmnmlklklklkjijijijijijijijihghghghgfefefefedcdcdcdcbababababa`_`_`_`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEDCDCDCDCDCBABABABABABABA@?@?@?@?>=>=>=>=;<;<;<;<:9:9:9:98787878765656565656565654343434321212121|{|{|{|{zyzyzyzyxwxwxwxwvuvuvuvuststststrqrqrqrqrqrqrqrqpopopoponmnmnmnmlklklklkjijijijijihghghghghghghgfefefefedcdcdcdcbabababa`_`_`_`_`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYWWWWWXWXVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKLKJIJIJIJIJIJIJIHGHGHGHGFEFEFEFEDCDCDCDCBABABABABABABABA@?@?@?@?>=>=>=>=;<;;;;;;:9:9:9:98787878765656565656565654343434321212121|{|{|{|{zyzyzyzyxwxwxwxwvuvuvuvustssssssrqrqrqrqrqpopopopopopoponmnmnmnmlklklklkjijijijihghghghghghghghgfefefefedcdcdcdcbabababa`_`_`_`_`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYWXWXWXWXVUVUVUVUTSTSTSTSTSRQRQRQRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGFEFEFEFEDCDCDCDCBABABABABABABABA@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:98787878765656565654343434343434321212121|{|{|{|{zyzyzyzyxwxwxwxwvuvuvuvutstststsrqrqrqrqpopopopopopopoponmnmnmnmlklklklkjijijijihghghghghghghghgfefefefedcdcdcdcbabababa`_`_`_`_`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYWXWXWXWXVUVUVUVUTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGFEFEFEFEDCDCDCDCBABABABABABABABA@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:98787878765656565434343434343434321212121|{|{|{|{zyzyzyzyxwxwxwxwvuvuvuvutstststsrqrqrqrqpopopopopopopoponmnmnmnmlklklklkjijijijihghghghghghghghgfefefefedcdcdcdcbabababa`_`_`_`_`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYWXWXWXWXVUVUVUVUTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGFEFEFEFEDCDCDCDCBABABABABABABABA@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:98787878765656565434343434343434321212121|{|{|{|{zyzyzyzyxwxwxwxwvuvuvuvutstststsrqrqrqrqpopopopopopopoponmnmnmnmlklklklkjijijijihghghghghghghghgfefefefedcdcdcdcbabababa`_`_`_`_`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYWXWXWXWXVUVUVUVUTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGFEFEFEFEDCDCDCDCBABABABABABABABA@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:98787878765656565434343434343434321212121|{|{|{|{zyzyzyzyxwxwxwxwvuvuvuvutstststsrqrqrqrqpopopopopopopoponmnmnmnmlklklklkjijijijihghghghghghghghgfefefefedcdcdcdcbabababa`_`_`_`_`_^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYWXWXWXWXVUVUVUVUTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGFEFEFEFEDCDCDCDCBABABABABA@?@?@?@?>=>=>=>=<;<;<;<;<;<;<;:9:9:9:98787878765656565434343434343434321212121|{|{|{|{zyzyzyzyxwxwxwxwvuvuvuvutstststsrqrqrqrqpopopopopopopoponmnmnmnmlklklklkjijijijihghghghghgfefefefefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYWXWWWWWWVUVUVUVUTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIJIHGHGHGHGHGHGHGFEFEFEFEDCDCDCDCBABABABA@?@?@?@?>=>=>=>=<;;;;;;<<;<;<;;;:9:9:9:98787878765656565434343434343434321212121|{|{|{|{zyzyzyzyxwxwxwxwvuvuvuvutststsssrqrqrqrqpopopopoponmnmnmnmnmnmnmlklklklkjijijijihghghghgfefefefefefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQRQPOPOPOPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEDCDCDCDCBABABABA@?@?@?@?>=>=>=>=;<;<;<;<;;<;<;<;:9:9:9:98787878765656565434343434321212121212121|{|{|{|{zyzyzyzyxwxwxwxwvuvuvuvussstststrqrqrqrqpopopoponmnmnmnmnmnmnmnmlklklklkjijijijihghghghgfefefefefefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEDCDCDCDCBABABABA@?@?@?@?>=>=>=>=;<;<;<;<<;:9:9:9:9:9:9:98787878765656565434343432121212121212121|{|{|{|{zyzyzyzyxwxwxwxwvuvuvuvuststststrqrqrqrqpopopoponmnmnmnmnmnmnmnmlklklklkjijijijihghghghgfefefefefefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEDCDCDCDCBABABABA@?@?@?@?>=>=>=>=;<;<;<;<:9:9:9:9:9:9:9:98787878765656565434343432121212121212121|{|{|{|{zyzyzyzyxwxwxwxwvuvuvuvuststststrqrqrqrqpopopoponmnmnmnmnmnmnmnmlklklklkjijijijihghghghgfefefefefefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEDCDCDCDCBABABABA@?@?@?@?>=>=>=>=;<;<;<;<:9:9:9:9:9:9:9:98787878765656565434343432121212121212121210/0/0/|{|{|{|{zyzyzyzyxwxwxwxwvuvuvuvuststststrqrqrqrqpopopoponmnmnmnmnmnmnmnmlklklklkjijijijihghghghgfefefefefefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEDCDCDCDCBABABABA@?@?@?@?>=>=>=>=;<;<;<;<:9:9:9:9:9:9:9:987878787656565654343434321212121212121210/0/0/0/|{|{|{|{zyzyzyzyxwxwxwxwvuvuvuvuststststrqrqrqrqpopopoponmnmnmnmnmnmnmnmlklklklkjijijijihghghghgfefefefefedcdcdcdcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWWWWWWXXWXWXWWWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGHGFEFEFEFEFEFEFEDCDCDCDCBABABABA@?@?@?@?>=>=>=>=;<;<;;;;:9:9:9:9:9:9:9:987878787656565654343434321212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('('('('('&%&%&%&%$#$#$#$#"!"!"!"!        - - - - - - - - 0/0/0/0/0/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('('('('('&%&%&%&%$#$#$#$#"!"!"!"!        - - - - - - - - 0/0/0/0/0/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('('&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!        - - - - - 0/0/0/0/0/.-.-.-.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!     - - - - 0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!        - - - - 0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!        - - - - 0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!        - - - - 0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!        - - - - 0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%&%$#$#$#$#"!"!"!"!           - - - - 0/0/0/0/.-.-.-.-.-,+,+,+,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!           - - - - 0/0/0/0/.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!               - - - - 0/0/0/0/.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!            - - - - 0/0/0/0/.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!            - - - - 0/0/0/0/.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!            - - - - 0/0/0/0/.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!            - - - - 0/0/0/0/.-.-.-.-,+,+,+,+,+*)*)*)*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!       - - - - 0/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!       - - - - 0/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!        - - - - 0/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!        - - - - 0/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!        - - - - 0/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!        - - - - 0/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)*)('('('('('('('&%&%&%&%$#$#$#$#"!"!"!"!        - - - - - - - 0/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('('('('('&%&%&%&%$#$#$#$#"!"!"!"!      - - - - - - - - 0/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('('('('('&%&%&%&%$#$#$#$#"!"!"!"!        - - - - - - - - 0/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('('('('('&%&%&%&%$#$#$#$#"!"!"!"!        - - - - - - - - ||{{zzyy]]^^__``))((''&&``aabbcc)((''&&%HHIIJJKKMMLLKKJJ||||{{zzLLMMNNOOIIHHGGFFyyxxwwvvPPQQRRSSEEDDCCBB !!""##ppoonnmm srrqqppo``aabbcc5544332200112233eeddccbbddeeffgg1100//..44556677aa``__^^hhiijjkk--,,++**8899::;;SSRRQQPP))**++,,YXWWVVUUxxyyzz{{HHIIJJKKMMLLKKJJxxwwvvuuaabbccdd%%ddeeffgg%$#"! LLMMNNOOIIHHGGFFyyxxwwvvPPQQRRSSEEDDCCBB !!""##uuttssrrTTUUVVWWAA@@??>>$$%%&&''llkkjjiionnmmllkddeeffgg1100//..44556677aa``__^^hhiijjkk--,,++**8899::;;]]\\[[ZZ - - llmmnnoo))((''&&<<==>>??OONNMMLL--..//00TTSSRRQQ||||{{zzLLMMNNOOIIHHGGFFttssrrqq eeffgghhhhiijjkkPPQQRRSSEEDDCCBB !!""##uuttssrrTTUUVVWWAA@@??>>$$%%&&''qqppoonn - -XXYYZZ[[==<<;;::(())**++hhggffeekjjiihhghhiijjkk--,,++**8899::;;]]\\[[ZZ - - llmmnnoo))((''&&<<==>>??YYXXWWVV ppqqrrss%%$$##""@@AABBCCKKJJIIHH11223344PPOONNMMyyxxwwvvPPQQRRSSEEDDCCBB !!""##ppoonnmm - - iijjkkllllmmnnooTTUUVVWWAA@@??>>$$%%&&''qqppoonn - -XXYYZZ[[==<<;;::(())**++mmllkkjj \\]]^^__99887766,,--..//ddccbbaagffeeddc - - llmmnnoo))((''&&<<==>>??YYXXWWVV ppqqrrss%%$$##""@@AABBCCUUTTSSRRttuuvvww!! DDEEFFGGGGFFEEDD55667788LLKKJJII !!""##uuttssrrTTUUVVWWAA@@??>>$$%%&&''llkkjjii - - mmnnooppppqqrrssXXYYZZ[[==<<;;::(())**++mmllkkjj \\]]^^__99887766,,--..//iihhggff``aabbcc5544332200112233``__^^]]cbbaa``_ ppqqrrss%%$$##""@@AABBCCUUTTSSRRttuuvvww!! DDEEFFGGQQPPOONNxxyyzz{{HHIIJJKKCCBBAA;;99::;;AAHHGGFFEE$$%%&&''qqppoonn - -XXYYZZ[[==<<;;::(())**++hhggffee qqrrsstt yyzz{{||\\]]^^__99887766,,--..//iihhggff``aabbcc5544332200112233eeddccbbddeeffgg1100//..44556677WWVVUUTT%%&&''((_^^]]\[Zttuuvvww!! DDEEFFGGQQPPOONNxxyyzz{{HHIIJJKKMMLLKKJJ||||{{zzLLMMNNOO::998877BBCCDDEEDDCCBBAA(())**++mmllkkjj \\]]^^__99887766,,--..//ddccbbaauuvvwwxx - - ||{{zzyy ``aabbcc5544332200112233eeddccbbddeeffgg1100//..44556677aa``__^^hhiijjkk--,,++**8899::;;SSRRQQPP))**++,,YXWWVVUUxxyyzz{{HHIIJJKKMMLLKKJJ||||{{zzLLMMNNOOIIHHGGFFyyxxwwvvPPQQRRSS66554433FFGGHHII@?>=<;;:,,--..//iihhggff``aabbcc5544332200112233``__^^]]yyzz{{|| - - xwvutssr - - ddeeffgg1100//..44556677aa``__^^hhiijjkk--,,++**8899::;;]]\\[[ZZ - - llmmnnoo))((''&&<<==>>??OONNMMLL--..//00TTSSRRQQ||||{{zzLLMMNNOOIIHHGGFFyyxxwwvvPPQQRRSSEEDDCCBB !!""##uuttssrrTTUUVVWW221100//JJKKLLMM:998877600112233eeddccbbddeeffgg1100//..44556677\\[[ZZYY||{{zzyy rqqppoonhhiijjkk--,,++**8899::;;]]\\[[ZZ - - llmmnnoo))((''&&<<==>>??YYXXWWVV ppqqrrss%%$$##""@@AABBCCKKJJIIHH11223344PPOONNMMyyxxwwvvPPQQRRSSEEDDCCBB !!""##uuttssrrTTUUVVWWAA@@??>>$$%%&&''qqppoonn - -XXYYZZ[[..--,,++NNOOPPQQ6554433244556677aa``__^^hhiijjkk--,,++**8899::;;XXWWVVUU ssrrqqppnmmllkkj - - llmmnnoo))((''&&<<==>>??YYXXWWVV ppqqrrss%%$$##""@@AABBCCUUTTSSRRttuuvvww!! DDEEFFGGGGFFEEDD55667788LLKKJJII !!""##uuttssrrTTUUVVWWAA@@??>>$$%%&&''qqppoonn - -XXYYZZ[[==<<;;::(())**++mmllkkjj \\]]^^__**))((''RRSSTTUU21100//.8899::;;]]\\[[ZZ - - llmmnnoo))((''&&<<==>>??TTSSRRQQ!!""##$$oonnmmlljiihhggf ppqqrrss%%$$##""@@AABBCCUUTTSSRRttuuvvww!! DDEEFFGGQQPPOONNxxyyzz{{HHIIJJKKCCBBAA;;99::;;AAHHGGFFEE$$%%&&''qqppoonn - -XXYYZZ[[==<<;;::(())**++mmllkkjj \\]]^^__99887766,,--..//iihhggff``aabbcc&&%%VVWW]]^^.--,,++*<<==>>??YYXXWWVV ppqqrrss%%$$##""@@AABBCCPPOONNMM%%&&''((kkjjiihhfeeddccbttuuvvww!! DDEEFFGGQQPPOONNxxyyzz{{HHIIJJKKMMLLKKJJ||||{{zzLLMMNNOO::998877BBCCDDEEDDCCBBAA(())**++mmllkkjj \\]]^^__99887766,,--..//iihhggff``aabbcc5544332200112233eeddccbbddeeffgg__``aabb*))((''&@@AABBCCUUTTSSRRttuuvvww!! DDEEFFGGLLKKJJII))**++,,ggffeedd%%baa``__^xxyyzz{{HHIIJJKKMMLLKKJJ||||{{zzLLMMNNOOIIHHGGFFyyxxwwvvPPQQRRSS66554433FFGGHHII@?>=<;;:,,--..//iihhggff``aabbcc5544332200112233eeddccbbddeeffgg1100//..44556677aa``__^^hhiijjkkccddeeff&%%$#"! DDEEFFGGQQPPOONNxxyyzz{{HHIIJJKKHHGGFFEE--..//00ccbbaa``&&''(())^]]\[ZYX||||{{zzLLMMNNOOIIHHGGFFyyxxwwvvPPQQRRSSEEDDCCBB !!""##uuttssrrTTUUVVWW221100//JJKKLLMM:998877600112233eeddccbbddeeffgg1100//..44556677aa``__^^hhiijjkk--,,++**8899::;;]]\\[[ZZ - - llmmnnoogghhiijjHHIIJJKKMMLLKKJJ||||{{zzLLMMNNOODDCCBBAA11223344__^^]]WW**++,,--WWVVUUTTyyxxwwvvPPQQRRSSEEDDCCBB !!""##uuttssrrTTUUVVWWAA@@??>>$$%%&&''qqppoonn - -XXYYZZ[[..--,,++NNOOPPQQ6554433244556677aa``__^^hhiijjkk--,,++**8899::;;]]\\[[ZZ - - llmmnnoo))((''&&<<==>>??YYXXWWVV ppqqrrsskkllmmnnLLMMNNOOIIHHGGFFyyxxwwvvPPQQRRSS@@??>>==55667788VVUUTTSS..//0011SSRRQQPP !!""##uuttssrrTTUUVVWWAA@@??>>$$%%&&''qqppoonn - -XXYYZZ[[==<<;;::(())**++mmllkkjj \\]]^^__**))((''RRSSTTUU21100//.8899::;;]]\\[[ZZ - - llmmnnoo))((''&&<<==>>??YYXXWWVV ppqqrrss%%$$##""@@AABBCCUUTTSSRRttuuvvww - -ooppqqrrPPQQRRSSEEDDCCBB !!""##uuttssrrTTUUVVWW<<;;::9999::;;<>??YYXXWWVV ppqqrrss%%$$##""@@AABBCCUUTTSSRRttuuvvww!! DDEEFFGGQQPPOONNxxyyzz{{ ssyyzz{{TTUUVVWWAA@@??>>$$%%&&''qqppoonn - -XXYYZZ[[88776655==>>??@@NNMMLLKK66778899KKJJIIHH(())**++mmllkkjj \\]]^^__99887766,,--..//iihhggff``aabbcc5544332200112233eeddccbbddeeffgg__``aabb*))((''&@@AABBCCUUTTSSRRttuuvvww!! DDEEFFGGQQPPOONNxxyyzz{{HHIIJJKKMMLLKKJJ||||{{zz||||{{zz XXYYZZ[[==<<;;::(())**++mmllkkjj \\]]^^__44332211AABBCCDDJJIIHHGG::;;AABBGGFFEEDD,,--..//iihhggff``aabbcc5544332200112233eeddccbbddeeffgg1100//..44556677aa``__^^hhiijjkkccddeeff&%%$#"! DDEEFFGGQQPPOONNxxyyzz{{HHIIJJKKMMLLKKJJ||||{{zzLLMMNNOOIIHHGGFFyyssrrqq - - yyxwvuts - - \\]]^^__99887766,,--..//iihhggff``aabbcc00//..--EEFFGGHHFFEEDDCCCCDDEEFFCCBBAA@?00112233eeddccbbddeeffgg1100//..44556677aa``__^^hhiijjkk--,,++**8899::;;]]\\[[ZZ - - llmmnnoogghhiijjHHIIJJKKMMLLKKJJ||||{{zzLLMMNNOOIIHHGGFFyyxxwwvvPPQQRRSSEEDDCCBB !!""##ppoonnmm srrqqppo``aabbcc5544332200112233eeddccbbddeeffgg,,++**))IIJJKKLLBBAA;;::GGHHIIJJ>=<;;::944556677aa``__^^hhiijjkk--,,++**8899::;;]]\\[[ZZ - - llmmnnoo))((''&&<<==>>??YYXXWWVV ppqqrrsskkllmmnnLLMMNNOOIIHHGGFFyyxxwwvvPPQQRRSSEEDDCCBB !!""##uuttssrrTTUUVVWWAA@@??>>$$%%&&''llkkjjiionnmmllkddeeffgg1100//..44556677aa``__^^hhiijjkk((''&&%%MMNNOOPP99887766KKLLMMNN988776658899::;;]]\\[[ZZ - - llmmnnoo))((''&&<<==>>??YYXXWWVV ppqqrrss%%$$##""@@AABBCCUUTTSSRRttuuvvww - -ooppqqrrPPQQRRSSEEDDCCBB !!""##uuttssrrTTUUVVWWAA@@??>>$$%%&&''qqppoonn - -XXYYZZ[[==<<;;::(())**++hhggffeekjjiihhghhiijjkk--,,++**8899::;;]]\\[[ZZ - - llmmnnoo$$##""!!QQRRSSTT55443322OOPPQQRR54433221<<==>>??YYXXWWVV ppqqrrss%%$$##""@@AABBCCUUTTSSRRttuuvvww!! DDEEFFGGQQPPOONNxxyyzz{{ ssyyzz{{TTUUVVWWAA@@??>>$$%%&&''qqppoonn - -XXYYZZ[[==<<;;::(())**++mmllkkjj \\]]^^__99887766,,--..//ddccbbaagffeeddc - - llmmnnoo))((''&&<<==>>??YYXXWWVV ppqqrrss||||{{zz UUVVWWXX1100//..SSTTUUVV100//..-@@AABBCCUUTTSSRRttuuvvww!! DDEEFFGGQQPPOONNxxyyzz{{HHIIJJKKMMLLKKJJ||||{{zz||||{{zz XXYYZZ[[==<<;;::(())**++mmllkkjj \\]]^^__99887766,,--..//iihhggff``aabbcc5544332200112233``__^^]]cbbaa``_ ppqqrrss%%$$##""@@AABBCCUUTTSSRRttuuvvwwyyxxwwvvYYZZ[[\\--,,++**WW]]^^__-,,++**)DDEEFFGGQQPPOONNxxyyzz{{HHIIJJKKMMLLKKJJ||||{{zzLLMMNNOOIIHHGGFFyyssrrqq - - yyxwvuts - - \\]]^^__99887766,,--..//iihhggff``aabbcc5544332200112233eeddccbbddeeffgg1100//..44556677WWVVUUTT%%&&''((_^^]]\[Zttuuvvww!! DDEEFFGGQQPPOONNxxyyzz{{uuttssrrqqppoonn - -XXYYZZ[[==<<;;::(())**++mmllkkjj \\]]^^__**))((''RRSSTTUU21100//.8899::;;]]\\[[ZZ - - llmmnnoo))((''&&<<==>>??YYXXWWVV ppqqrrss%%$$##""@@AABBCCUUTTSSRRttuuvvww - - - -iihhggff mmllkkjj \\]]^^__99887766,,--..//iihhggff``aabbcc&&%%VVWW]]^^.--,,++*<<==>>??YYXXWWVV ppqqrrss%%$$##""@@AABBCCUUTTSSRRttuuvvww!! DDEEFFGGQQPPOONNxxyyzz{{ eeddccbbiihhggff``aabbcc5544332200112233eeddccbbddeeffgg__``aabb*))((''&@@AABBCCUUTTSSRRttuuvvww!! DDEEFFGGQQPPOONNxxyyzz{{HHIIJJKKMMLLKKJJ||ttssrraa``__^^eeddccbbddeeffgg1100//..44556677aa``__^^hhiijjkkccddeeff&%%$#"! DDEEFFGGQQPPOONNxxyyzz{{HHIIJJKKMMLLKKJJ||||{{zzLLMMNNOOIIHHGGFFqqppoonn]]\\[[ZZaa``__^^hhiijjkk--,,++**8899::;;]]\\[[ZZ - - llmmnnoogghhiijjHHIIJJKKMMLLKKJJ||||{{zzLLMMNNOOIIHHGGFFyyxxwwvvPPQQRRSSEEDDCCBB !!""##mmllkkjjYYXXWWVV]]\\[[ZZ - - llmmnnoo))((''&&<<==>>??YYXXWWVV ppqqrrsskkllmmnnLLMMNNOOIIHHGGFFyyxxwwvvPPQQRRSSEEDDCCBB !!""##uuttssrrTTUUVVWWAA@@??>>$$%%&&''iihhggffUUTTSSRR !!""##YYXXWWVV ppqqrrss%%$$##""@@AABBCCUUTTSSRRttuuvvww - -ooppqqrrPPQQRRSSEEDDCCBB !!""##uuttssrrTTUUVVWWAA@@??>>$$%%&&''qqppoonn - -XXYYZZ[[==<<;;::(())**++eeddccbb%%&&''QQPPOONN$$%%&&''UUTTSSRRttuuvvww!! DDEEFFGGQQPPOONNxxyyzz{{ ssyyzz{{TTUUVVWWAA@@??>>$$%%&&''qqppoonn - -XXYYZZ[[==<<;;::(())**++mmllkkjj \\]]^^__99887766,,--..//aa``__^^(())**++MMLLKKJJ(())**++QQPPOONNxxyyzz{{HHIIJJKKMMLLKKJJ||||{{zz||||{{zz XXYYZZ[[==<<;;::(())**++mmllkkjj \\]]^^__99887766,,--..//iihhggff``aabbcc5544332200112233]]WWVVUU,,--..//IIHHGGFF,,--..//MMLLKKJJ||||{{zzLLMMNNOOIIHHGGFFyyssrrqq - - yyxwvuts - - \\]]^^__99887766,,--..//iihhggff``aabbcc5544332200112233eeddccbbddeeffgg1100//..44556677TTSSRRQQ00112233EEDDCCBB00112233IIHHGGFFyyxxwwvvPPQQRRSSEEDDCCBB !!""##ppoonnmm srrqqppo``aabbcc5544332200112233eeddccbbddeeffgg1100//..44556677aa``__^^hhiijjkk--,,++**8899::;;PPOONNMM44556677AA@@??>>44556677EEDDCCBB !!""##uuttssrrTTUUVVWWAA@@??>>$$%%&&''llkkjjiionnmmllkddeeffgg1100//..44556677aa``__^^hhiijjkk--,,++**8899::;;]]\\[[ZZ - - llmmnnoo))((''&&<<==>>??LLKKJJII8899::;;==<<;;::8899::;;AA@@??>>$$%%&&''qqppoonn - -XXYYZZ[[==<<;;::(())**++hhggffeekjjiihhghhiijjkk--,,++**8899::;;]]\\[[ZZ - - llmmnnoo))((''&&<<==>>??YYXXWWVV ppqqrrss%%$$##""@@AABBCCHHGGFFEEAABBCCDD99887766<<==>>??==<<;;::(())**++mmllkkjj \\]]^^__99887766,,--..//ddccbbaagffeeddc - - llmmnnoo))((''&&<<==>>??YYXXWWVV ppqqrrss%%$$##""@@AABBCCUUTTSSRRttuuvvww!! DDEEFFGGDDCCBBAAEEFFGGHH55443322@@AABBCC99887766,,--..//iihhggff``aabbcc5544332200112233``__^^]]cbbaa``_ ppqqrrss%%$$##""@@AABBCCUUTTSSRRttuuvvww!! DDEEFFGGQQPPOONNxxyyzz{{HHIIJJKK;;::9988IIJJKKLL1100//..DDEEFFGG5544332200112233eeddccbbddeeffgg1100//..44556677WWVVUUTT%%&&''((_^^]]\[Zttuuvvww!! DDEEFFGGQQPPOONNxxyyzz{{HHIIJJKKMMLLKKJJ||||{{zzLLMMNNOO77665544MMNNOOPP--,,++**HHIIJJKK1100//..44556677aa``__^^hhiijjkk--,,++**8899::;;SSRRQQPP))**++,,YXWWVVUUxxyyzz{{HHIIJJKKMMLLKKJJ||||{{zzLLMMNNOOIIHHGGFFyyxxwwvvPPQQRRSS33221100QQRRSSTT))((''&&LLMMNNOO--,,++**8899::;;]]\\[[ZZ - - llmmnnoo))((''&&<<==>>??OONNMMLL--..//00TTSSRRQQ||||{{zzLLMMNNOOIIHHGGFFyyxxwwvvPPQQRRSSEEDDCCBB !!""##uuttssrrTTUUVVWW//..--,,UUVVWW]]%%$$##""PPQQRRSS))((''&&<<==>>??YYXXWWVV ppqqrrss%%$$##""@@AABBCCKKJJIIHH11223344PPOONNMMyyxxwwvvPPQQRRSSEEDDCCBB !!""##uuttssrrTTUUVVWWAA@@??>>$$%%&&''qqppoonn - -XXYYZZ[[++**))((^^__``aa!! TTUUVVWW%%$$##""@@AABBCCUUTTSSRRttuuvvww!! DDEEFFGGGGFFEEDD55667788LLKKJJII !!""##uuttssrrTTUUVVWWAA@@??>>$$%%&&''qqppoonn - -XXYYZZ[[==<<;;::(())**++mmllkkjj \\]]^^__''&&%%bbccddeeXXYYZZ[[!! DDEEFFGGQQPPOONNxxyyzz{{HHIIJJKKCCBBAA;;99::;;AAHHGGFFEE$$%%&&''qqppoonn - -XXYYZZ[[==<<;;::(())**++mmllkkjj \\]]^^__99887766,,--..//iihhggff``aabbccffgghhii\\]]^^__HHIIJJKKMMLLKKJJ||||{{zzLLMMNNOO::998877BBCCDDEEDDCCBBAA(())**++mmllkkjj \\]]^^__99887766,,--..//iihhggff``aabbcc5544332200112233eeddccbbddeeffggjjkkllmm``aabbccLLMMNNOOIIHHGGFFyyxxwwvvPPQQRRSS66554433FFGGHHII@?>=<;;:,,--..//iihhggff``aabbcc5544332200112233eeddccbbddeeffgg1100//..44556677aa``__^^hhiijjkknnooppqqddeeffggPPQQRRSSEEDDCCBB !!""##uuttssrrTTUUVVWW221100//JJKKLLMM:998877600112233eeddccbbddeeffgg1100//..44556677aa``__^^hhiijjkk--,,++**8899::;;]]\\[[ZZ - - llmmnnooqqppoonn - -hhiijjkkTTUUVVWWAA@@??>>$$%%&&''qqppoonn - -XXYYZZ[[..--,,++NNOOPPQQ6554433244556677aa``__^^hhiijjkk--,,++**8899::;;]]\\[[ZZ - - llmmnnoo))((''&&<<==>>??YYXXWWVV ppqqrrss mmllkkjj - - llmmnnooppqqfpvnXv`p˂rtAJlnvpے`JXbtlHfpvrXQJ`ےJltbdQZfH~XQr˂JtArdnXv`f~Zp˂|drf`vXے`JXQbtl~HfpfpvrXQJ`tAJlnvpے`JrbtJtArdnXvےbHAtbdQZpfHf`vXpZHAb|ZdQXv`fbHAZAJltf`vXnvpے`JbtlHfpvrXQJ`nXv`f~HXQJ`ےtdrtAfH~QrZHAJtArdnXvےbHAtbdQZ|drf`vXpZHAb|ZdQ`f~HfpvrXQJ`tAJlnvpr˂pJtArdvnXnrXQJےbHAtbdQZfH~XQr˂lJtAd|ZdQ`f~Zp˂|drf`vXnvpے`Jbtl~Hfp˂rbdQZ|nvpfے`JXQr˂JtArdnXvےbHAf~HfpvbHAZJltf`vXbے`|ZdQ`f~Zp˂|drtAJlnvpے`JbtlHfpvnXvےbHAtbdQZfH~ZHAb|ZdQv`f`ےHAZp˂|drf`vXpZHAb|ZdQbtlHfpvrXQJ`tAJlnvpfH~XQr˂JtArdpvnXQJ`ےdrtAfH~XQr˂pZHAb|ZdQ`f~Zp˂fpvnXv`p˂rbdQZ|nvpJXQrbtlHfpvrXQJ`tAJltbdQZfH~XQr˂JtArdnXv`fHZp˂|drf`vXے`JXQbtl~HfpZp˂rXQJ`tAJlnvpے`JbtlJtArdnXvےbHAtbdQZfH~f`vXpZHAb|ZdQXv`fbHAZJltf`vXpZHAbے`JbtlHfpvrXQJ`nXv`p˂rXQJ`ےdrtAfH~˂pZHAJtArdnXvےbHAtbdQZ|dtAf`vXpZHAb|ZdQ`f~fpvrXQJ`tAJlnvpr˂pJtArdvnXrXQJ`ےbHAtbdQZfH~XQr˂JtArd|ZdQ`f~Zp˂|drf`vXnvpے`Jbtl~HXp˂bdQZ|nvpے`JXQr˂JtArdnXvےbHAf~HXQJ`ےbHAZJltvpfbے`|ZdQ`f~Zp˂|drJltnvpے`JbtlHfpvnrXQJےbHAtbdQZfH~`JXQrtlJv`f~ےbHAZp˂|drf`vXpZHAb|ZdQbtlHfpvrXQJ`tAJlnvpfے`JXQr˂JtArdv`fbHAZpdrtAfH~XQr˂pZHA|ZdQ`f~Zp˂fpvbHAZp˂rbdQZ|ے`JXQJXQrbtlHfpvrXQJ`tAJlbnvfH~XQr˂JtArdnXv`ےHAZp˂|drf`vX˂pZtArdfpvZp˂rXQJ`tAJlnvpے`JbtlJfpvnXvےbHAtbdQZfH~XQr˂pZHAb|ZdQ~Hfp˂rXQJbdQf`vXpZHAbے`JXQbtlHfpvrXQJ`nXv`p˂rXQJ`ے`vXnrZHA˂pZHAJtArdnXvےbHAtbdQZpfHf`vXpZHAb|ZdQ`f~Zp˂rXQJ`tAJlnvpHAbے|ZdQbnXv`rXQJ`ےJltbdQZfH~XQr˂JtArdnXv`f~Zp˂|drf`vXpZHAbے`JbtlvnXJ`ےZ|dnvpے`JrbtJtArdnXvےbHAf~HXQJ`ےJltvpfbے`bJAd|ZdQ`f~Zp˂|drf`vXnvpے`JbtlHfpvrXQJ`ےbHAtbdQZfH~`JXQrtlJf~HےbHAtbdQZ|drf`vXpZHAb|ZdQ`f~HfpvrXQJ`tAJlnvpے`JXQr˂JtArdv`fbHAZprtAJlfH~XQr˂lJtAd|ZdQ`f~Zp˂fpvbHAZdrtAJH~fJXQr|ZdQbtlHfpvrXQJ`tAJlnvpfH~XQr˂JtArdnXvےbHAZp˂|drf`vX˂pZtArdfpvZp˂|drtAJlnvpے`JbtlHfpvnXvےbHAtbdQZfH~XQr˂pZHA|ZdQ~Hfp˂rXQtbdQf`vXpZHAb|ZdQbtlHfpvrXQJ`nXv`p˂rltb`vXnpZHAbtlJtArdnXvےbHAtbdQZfH~f`vXpZHAb|ZdQ`f~Zp˂rXQJ`tAJlnvpHAb|ZdQtAnXv`rXQJ`tAJltbdQZfH~XQr˂JtArdnXv`fHZp˂|drf`vXpZHAbے`JXQbtlv~J`p˂Z|dnvpے`JbtlJtArdnXvےbHAf~HXQJ`ےdQZ|vpfbے`JtArd|ZdQ`f~Zp˂|drf`vXnvpے`JbtlHfpvrXQJ`ےJltbdQZfH~˂pZHArd|f~HےbHAtbdQZ|dtAf`vXpZHAb|ZdQ`f~fpvrXQJ`tAJlnvpے`JrbtJtArdHfpvrXQJrtAJlfH~XQr˂JtArd|ZdQ`f~Zp˂fpvbHAZdrtAJH~JXQr|ZdQbtlHfpvrXQJ`tAJlnvpfے`JXQr˂JtArdnXvےbHAtbdQZ|drf`vXbے`ZdQbtfvnXZp˂|drJltnvpے`JbtlHfpvnrXQJےbHAtbdQZfH~XQr˂lJtAd|ZdQnXv`ےbtbQZf`vXpZHAb|ZdQbtlHfpvrXQJ`nXv`p˂rltbvpfHpZAbbtlJfpvnXvےbHAtbdQZfH~XQr˂pZHAb|ZdQ`f~Zp˂|drtAJlnvpJXQrlJtAv`frXQJ`tAJlbnvfH~XQr˂JtArdnXv`ےHAZp˂|drf`vXpZHAb|ZdQbtl`f~HAZp˂drtAJnvpے`JbtlJfpvnXvےbHAf~HXQJ`ےdQZ|l~f``JXQrJtArdnXv`f~Zp˂|drf`vXpZHAbے`JbtlHfpvrXQJ`tAJltbdQZfH~˂pZHArd|~HfpےbHAtbdQZpfHf`vXpZHAb|ZdQ`f~Zp˂rXQJ`tAJlnvpے`JbtlJtArdHfpvrXQJltbfH~XQr˂JtArdnXv`f~Zp˂fpvbHAZtbdQvXn˂pZ|ZdQ`f~HfpvrXQJ`tAJlnvpے`JXQr˂JtArdnXvےbHAtbdQZ|dtAf`vXbے`ZdQbtvnXZp˂|drf`vXnvpے`JbtlHfpvrXQJ`ےbHAtbdQZfH~XQr˂JtArd|ZdQnXv`ےbdQZ|f`vXpZHAb|ZdQ`f~HfpvrXQJ`nXv`p˂rZ|dvpfHHAbےbtlHfpvnXvےbHAtbdQZfH~XQr˂pZHA|ZdQ`f~Zp˂|drJltnvpJXQHAbl|Zv`frXQJ`tAJlnvpfH~XQr˂JtArdnXvےbHAZp˂|drf`vXpZHAb|ZdQbtl`pvHAXQJ`drtAJnvpے`JbtlHfpvnXvےbHAf~HXQJ`ےrtAJl~f``JXQrJtArdnXv`fHZp˂|drf`vXpZHAbے`JXQbtlHfpvrXQJ`tAJlbnvfH~ے`JdQbt~HfpےbHAtbdQZfH~f`vXpZHAb|ZdQ`f~Zp˂rXQJ`tAJlnvpے`JbtlJfpvnrXQJےJlltbfH~XQr˂JtArdnXv`fHZp˂fpvbHAZtbdQvXH~˂pZ|ZdQ`f~fpvrXQJ`tAJlnvpے`JrbtJtArdnXvےbHAtbdQZpfHf`vXXQr˂lJtArvnvfZp˂|drf`vXnvpے`JbtlHfpvrXQJ`ےJltbdQZfH~XQr˂JtArd~H`p˂tbQZddQZ|f`vXpZHAb|ZdQ`f~fpvrXQJ`nXv`p˂rZ|df`vHAbbtlHfpvnrXQJےbHAtbdQZfH~XQr˂lJtAd|ZdQ`f~Zp˂|drf`vXnvppZHAbd|Z~HfrXQJ`tAJlnvpfے`JXQr˂JtArdnXvےbHAtbdQZ|drf`vXpZHAb|ZdQfpvrXQJ`rtAJlAJltnvpے`JbtlHfpvnrXQJےbHAf~HXQJ`ےrtAdQZXnvJQr˂pJtArdnXv`ےHAZp˂|drf`vXpZHAb|ZdQbtlHfpvrXQJ`tAJlnvpfH~ے`JdQbtpvnےbHAtbdQZfH~XQr˂pZHAb|ZdQ`f~Zp˂|drtAJlnvpے`JbtlnXv`ےbHAtbdbnvfH~XQr˂JtArdnXv`ےHAZp˂fpvbHAZ|drpfH~ZHAb|ZdQ`f~Zp˂rXQJ`tAJlnvpے`JbtlJtArdnXvےbHAtbdQZfH~f`vXXQr˂lJtArXv`fZp˂|drf`vXpZHAbے`JbtlHfpvrXQJ`tAJltbdQZfH~XQr˂JtArdf~HZp˂QZ|dpfHf`vXpZHAb|ZdQ`f~Zp˂rXQJ`nXv`p˂rtAJl璐f`vے`JXbtlHfpvrXQJ`ےbHAtbdQZfH~XQr˂JtArd|ZdQ`f~Zp˂|drf`vXnvpp`JXQdtl~HfrXQJ`tAJlnvpے`JXQr˂JtArdnXvےbHAtbdQZ|dtAf`vXpZHAb|ZdQfpvrXQJ`rtAJlf`vXnvpے`JbtlHfpvrXQJ`ےbHAےJlf~HXQJ`ےtbdQZXnvQr˂pJtArdnXvےbHAZp˂|drf`vXpZHAb|ZdQbtlHfpvrXQJ`tAJlnvpfے`JrbtJfpvpvnےbHAtbdQZfH~XQr˂pZHA|ZdQ`f~Zp˂|drJltnvpے`JbtlnXv`ےbHAtbdnvpfH~XQr˂JtArdnXvےbHAZp˂tbdQZfpvbHAZ|drp`vXZHAb|ZdQ`f~Zp˂rXQJ`tAJlnvpے`JbtlJfpvnXvےbHAtbdQZfH~XQHAbl|ZdQnvfXv`fZp˂|drf`vXpZHAbے`JXQbtlHfpvrXQJ`tAJlbnvfH~XQr˂JtArdpvnXQJ`ےQZ|rfH~f`vXpZHAb|ZdQ`f~Zp˂rXQJ`|drtAJltbdQZfH~XQr˂JtArdnXv`fHZp˂rtAJlvXnJXQr|ZdQ`f~Zp˂rXQJ`tAJlnvpے`JbtlJtArdnXvےbHAtbdQZfH~f`vX˂p`ZpfH~rQtJltbdQZ|dtAf`vXpZHAb|ZdQ`f~fpvrXQJ`tdrvp`vpZHAbtlHfpvrXQJ`ےbHAtbdQZfH~XQr˂JtArd|ZdQ`f~Zp˂|drf`vXnvpQXb㉀ۅf۝`vtbAd|drJltnvpے`JbtlHfpvnrXQJےbHAtAJlXnvbے`JtArdnXvےbHAZp˂|drf`vXpZHAb|ZdQbtlHfpvrXQJ`tAJlnvpfZHAbpJAHrXnvZ|dtAJlbnvfH~XQr˂JtArdnXv`ےHAZp˂tbdQZpfH~JXQrZ|ZdQ`f~Zp˂rXQJ`tAJlnvpے`JbtlJfpvnXvےbHAtbdQZfH~ے`Jˁ`ZpfH~rQtJltbdQZpfHf`vXpZHAb|ZdQ`f~Zp˂rXQJ`|drf`vHAbےbtlHfpvrXQJ`ےJltbdQZfH~XQr˂JtArdnXv`f~Zp˂|drf`vXXQr˂QXb㉀ۅf۝`vtbAd|drf`vXnvpے`JbtlHfpvrXQJ`ےbHAtAJlXnv`JXQrJtArdnXvےbHAtbdQZ|drf`vXpZHAb|ZdQ`f~HfpvrXQJ`tAJlnvppZHAbpJAHrXnvZ|dtAJlnvpfH~XQr˂JtArdnXvےbHAZp˂tbdQZpfH~˂pZ|ZdQ`f~Zp˂|drtAJlnvpے`JbtlHfpvnXvےbHAtbdQZfH~ے`JۑppfH~rQtJltbdQZfH~f`vXpZHAb|ZdQ`f~Zp˂rXQJ`|ltvpHAbےbtlHfpvrXQJ`tAJltbdQZfH~XQr˂JtArdnXv`fHZp˂|drf`vXXQr˂JAHr󙐅f۝`vtbAd|drf`vXnvpے`JbtlHfpvrXQJ`ےJlbnvfے`J`JXQrJtArdnXvےbHAtbdQZ|dtAf`vXpZHAb|ZdQ`f~fpvrXQJ`tAJlnvpp`JXQˁ`ZQXXnvZ|dtAJlnvpfے`JXQr˂JtArdnXvےbHAtdrtAp`vXXQrZH˂pZA|ZdQ`f~Zp˂|drJltnvpے`JbtlHfpvnrXQJےbHAtbdQZfH~r˂pb㉀ۑppfH~rQtJltbdQZfH~XQr˂pZHAb|ZdQ`f~Zp˂JltnvpAbے``JXQbtlHfpvrXQJ`tAJlbnvfH~XQr˂JtArdnXv`ےHAZp˂|drf`vXZHAbJAHr󙐅f۝`vtbAd|drf`vXpZHAbے`JbtlHfpvrXQJ`bdQZ|fH~JXQrrbtJtArdnXvےbHAtbdQZpfHf`vXpZHAb|ZdQ`f~Zp˂rXQJ`tAJlnvpے`JXQˁ`ZQXXnvZ|dtAJlnvpے`JXQr˂JtArdnXvےbHAdrtAf`vX˂pZHlJtAd|ZdQ`f~Zp˂|drf`vXnvpے`JbtlHfpvrXQJ`ےbHAtbdQZfH~r˂pAHr󙐂ˍpfH~rQtJltbdQZfH~XQr˂pZHA|ZdQ`f~Zp˂JltnvpAbے`|ZdQbtlHfpvrXQJ`tAJlnvpfH~XQr˂JtArdnXvےbHAZp˂|drf`vXZHAb`ZQXbㅐf۝`vtbAd|drf`vXpZHAbے`JXQbtlHfpvrXQJ`bdQZ|fH~JXQrbtlJtArdnXvےbHAtbdQZfH~f`vXpZHAb|ZdQ`f~Zp˂rXQJ`tAJlnvp˂pZۑpJXnvZ|dtAJlnvpے`JrbtJtArdnXvےbHAltbvpf˂pZAbJtArd|ZdQ`f~Zp˂|drf`vXnvpے`JbtlHfpvrXQJ`ےJltbdQZfH~HAbےAHr󙐂ˍpfH~rQtJltbdQZfH~XQr˂lJtAd|ZdQ`f~Zp˂dQZ|H~f`JXQ|ZdQbtlHfpvrXQJ`tAJlnvpfے`JXQr˂JtArdnXvےbHAtbdQZ|drf`vX`JXQr`ZQXbㅐf۝`vtbAd|drf`vXpZHAb|ZdQbtlHfpvrXQJ`drtAJ`vXnr˂pbtlJfpvnXvےbHAtbdQZfH~XQr˂pZHAb|ZdQ`f~Zp˂|drtAJlnvp˂pZۑp`XnvZ|dtAJlnvpے`JbtlJtArdnXvےbHAltbvpfZHAbJtArdnXv`f~Zp˂|drf`vXpZHAbے`JbtlHfpvrXQJ`tAJltbdQZfH~HAbےZQXb㉀pfH~rQtJltbdQZfH~XQr˂JtArd|ZdQ`f~Zp˂dQZ|H~fے`JXQ|ZdQ`f~HfpvrXQJ`tAJlnvpے`JXQr˂JtArdnXvےbHAtbdQZ|dtAf`vX`JXQHAۑpJAHf۝`vtbAd|drf`vXpZHAb|ZdQbtlHfpvrXQJ`drtAdQ`vXHr˂pbtlHfpvnXvےbHAtbdQZfH~XQr˂pZHA|ZdQ`f~Zp˂|drJltnvpbے`r󙐂ˁ`XnvZ|dtAJlnvpے`JbtlJfpvnXvےbHAZ|d~f`ZHAbJtArdnXv`fHZp˂|drf`vXpZHAbے`JXQbtlHfpvrXQJ`tAJlbnvfH~JXQrZQXb㉀pfH~rQtJltbdQZfH~XQr˂JtArdnXv`f~Zp˂rtAJlvXnJQr|ZdQ`f~fpvrXQJ`tAJlnvpے`JrbtJtArdnXvےbHAtbdQZpfHf`vX˂pZHAۑpJAHf۝`vtbAd|drf`vXpZHAb|ZdQ`f~HfpvrXQJ`tbdQvpfHpZHAbtlHfpvnrXQJےbHAtbdQZfH~XQr˂lJtAd|ZdQ`f~Zp˂|drf`vXnvpbے`f۝`vXnvZ|dtAJlnvpے`JbtlHfpvnXvےbHAZ|d~f`bے`JtArdnXv`ےHAZp˂|drf`vXpZHAb|ZdQbtlHfpvrXQJ`tAJlnvpfH~JXQrXnvˍp|drQtJltuvwxyz{||{zyxwvIIIIIIIIIIIIIIIIIIIIIIJJJ \ No newline at end of file diff --git a/barcode-generator/Resources/data/qrv27_1.dat b/barcode-generator/Resources/data/qrv27_1.dat deleted file mode 100644 index 7dd3081..0000000 --- a/barcode-generator/Resources/data/qrv27_1.dat +++ /dev/null @@ -1,249 +0,0 @@ -|{|{|{|{|{|{|{|{|{|{|{|{zyzyzyzyzyzyzyzyxwxwxwxwxwxwxwxwvuvuvuvuvuvuvuvuststststssstststtstststsrqrqrqrqrqrqrqrqpopopopopopopopopopopoponmnmnmnmnmnmnmnmlklklklklklklklklklklklkjijijijijijijijihghghghghghghghghghghghgfefefefefefefefefefefefedcdcdcdcdcdcdcdcbabababababababababababa`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYWXWXWXWXWXWXWXWXVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=;<;<;<;<;<;<;<;<:9:9:9:9:9:9:9:9:9:9:9:9878787878787878787656565656565656565656543434343434343434343434321212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!      |{|{|{|{|{|{|{|{|{|{|{|{zyzyzyzyzyzyzyzyxwxwxwxwxwxwxwxwvuvuvuvuvuvuvuvuststststststststqqqqqqrqrqrqrqrqrqrqrqrqpopopopopopopopopopopoponmnmnmnmnmnmnmnmlklklklklklklklklklklklkjijijijijijijijihghghghghghghghghghghghgfefefefefefefefefedcdcdcdcdcdcdcdcdcdcdcbabababababababababababa`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYWXWXWXWXWXWXWXWXVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=;<;<;;;;;<;<;<;<:9:9:9:9:9:9:9:9:9:9:9:9878787878787878765656565656565656565656543434343434343434343434321212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)('('('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!    |{|{|{|{|{|{|{|{|{|{|{|{zyzyzyzyzyzyzyzyxwxwxwxwxwxwxwxwvuvuvuvuvuvuvuvuststststststststrqrqrqrqrqrqrqrqrqrqrqrqpopopopopopopopoponmnmnmnmnmnmnmnmnmnmnmlklklklklklklklklklklklkjijijijijijijijihghghghghghghghghghghghgfefefefefefefefedcdcdcdcdcdcdcdcdcdcdcdcbabababababababababababa`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYWXWXWWWWWXWXWXWXVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=;;<;<;<;;<;;;;;;:9:9:9:9:9:9:9:9:9:9:9:9878787878787878765656565656565656565656543434343434343434321212121212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!        |{|{|{|{|{|{|{|{|{|{|{|{zyzyzyzyzyzyzyzyxwxwxwxwxwxwxwxwvuvuvuvuvuvuvuvuststststststststrqrqrqrqrqrqrqrqrqrqrqrqpopopopopopopoponmnmnmnmnmnmnmnmnmnmnmnmlklklklklklklklklklklklkjijijijijijijijihghghghghghghghghghghghgfefefefefefefefedcdcdcdcdcdcdcdcdcdcdcdcbababababababababa`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYWWXWXWXWWXWWWWWWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:9:9:9:9878787878787878765656565656565656565656543434343434343432121212121212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!        |{|{|{|{|{|{|{|{|{|{|{|{zyzyzyzyzyzyzyzyxwxwxwxwxwxwxwxwvuvuvuvuvuvuvuvuststststststststrqrqrqrqrqrqrqrqrqrqrqrqpopopopopopopoponmnmnmnmnmnmnmnmnmnmnmnmlklklklklklklklklkjijijijijijijijijijijihghghghghghghghghghghghgfefefefefefefefedcdcdcdcdcdcdcdcdcdcdcdcbabababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABABA@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:9:9:9:9878787878787878765656565656565656565656543434343434343432121212121212121212121210/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!        |{|{|{|{|{|{|{|{zyzyzyzyzyzyzyzyzyzyzyzyxwxwxwxwxwxwxwxwvuvuvuvuvuvuvuvustssssssststststrqrqrqrqrqrqrqrqrqrqrqrqpopopopopopopoponmnmnmnmnmnmnmnmnmnmnmnmlklklklklklklklkjijijijijijijijijijijijihghghghghghghghghghghghgfefefefefefefefedcdcdcdcdcdcdcdcdcdcdcdcbabababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABA@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:9878787878787878787878765656565656565656565656543434343434343432121212121212121212121210/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!           |{|{|{|{|{|{|{|{zyzyzyzyzyzyzyzyzyzyzyzyxwxwxwxwxwxwxwxwvuvuvuvuvuvuvuvutstststssssssstsrqrqrqrqrqrqrqrqrqrqrqrqpopopopopopopoponmnmnmnmnmnmnmnmnmnmnmnmlklklklklklklklkjijijijijijijijijijijijihghghghghghghghghgfefefefefefefefefefefedcdcdcdcdcdcdcdcdcdcdcdcbabababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABA@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:987878787878787878787878765656565656565656565656543434343434343432121212121212121212121210/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!         |{|{|{|{|{|{|{|{zyzyzyzyzyzyzyzyzyzyzyzyxwxwxwxwxwxwxwxwvuvuvuvuvuvuvuvutstststststststsrqrqrqrqrqrqrqrqrqpopopopopopopopopopoponmnmnmnmnmnmnmnmnmnmnmnmlklklklklklklklkjijijijijijijijijijijijihghghghghghghghgfefefefefefefefefefefefedcdcdcdcdcdcdcdcdcdcdcdcbabababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABA@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=<;;;;;;<<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:987878787878787878787878765656565656565656543434343434343434343432121212121212121212121210/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!        |{|{|{|{|{|{|{|{zyzyzyzyzyzyzyzyzyzyzyzyxwxwxwxwxwxwxwxwvuvuvuvuvuvuvuvutstststststststsrqrqrqrqrqrqrqrqpopopopopopopopopopopoponmnmnmnmnmnmnmnmnmnmnmnmlklklklklklklklkjijijijijijijijijijijijihghghghghghghghgfefefefefefefefefefefefedcdcdcdcdcdcdcdcdcbababababababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWWWWWWXXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABA@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=;<;<;<;<;;;;;<;<<;<;<;;;:9:9:9:9:9:9:9:987878787878787878787878765656565656565654343434343434343434343432121212121212121212121210/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!           |{|{|{|{|{|{|{|{zyzyzyzyzyzyzyzyzyzyzyzyxwxwxwxwxwxwxwxwvuvuvuvuvuvuvuvutstststststststsrqrqrqrqrqrqrqrqpopopopopopopopopopopoponmnmnmnmnmnmnmnmnmlklklklklklklklklklklkjijijijijijijijijijijijihghghghghghghghgfefefefefefefefefefefefedcdcdcdcdcdcdcdcbabababababababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYWXWXWXWXWWWWWXWXXWXWXWWWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDCBABABABABABABABABABABA@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=;<;<;<;<;<;<;<;<;;<;<;<;:9:9:9:9:9:9:9:987878787878787878787878765656565656565654343434343434343434343432121212121212121210/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!        |{|{|{|{|{|{|{|{zyzyzyzyzyzyzyzyxwxwxwxwxwxwxwxwvuvuvuvuvuvuvuvutstststststststststststsrqrqrqrqrqrqrqrqpopopopopopopopopopopoponmnmnmnmnmnmnmnmlklklklklklklklklklklklkjijijijijijijijijijijijihghghghghghghghgfefefefefefefefefefefefedcdcdcdcdcdcdcdcbabababababababababababa`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYWXWXWXWXWXWXWXWXWWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=;<;<;<;<;<;<;<;<<;:9:9:9:9:9:9:9:9:9:9:9878787878787878787878787656565656565656543434343434343434343434321212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!        |{|{|{|{|{|{|{|{zyzyzyzyzyzyzyzyxwxwxwxwxwxwxwxwvuvuvuvuvuvuvuvussssststtststssststststsrqrqrqrqrqrqrqrqpopopopopopopopopopopoponmnmnmnmnmnmnmnmlklklklklklklklklklklklkjijijijijijijijijihghghghghghghghghghghgfefefefefefefefefefefefedcdcdcdcdcdcdcdcbabababababababababababa`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYWXWXWXWXWXWXWXWXXWVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCBABABABABABABABABABABABA@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=;<;<;<;<;<;<;<;<:9:9:9:9:9:9:9:9:9:9:9:9878787878787878787878787656565656565656543434343434343434343434321212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!                - - - - - - - -            - - - - - - - -             - - - - - - - -             - - - - - - - - - - -             - - - - - - - - - - - -             - - - - - - - - - - - -             - - - - - - - - - - - -             - - - - - - - - - - - -          - - - - - - - - - - - -         - - - - - - - - - - - -         - - - - - - - - -         - - - - - - - - ||{{zzyyLLKKJJII%%&&''((UUVVWWXXoonnmmll55443322KKLLMMNNrqqppoon>=<;;::9 - - 00112233``aabbcciihhggff99887766 (())**++XXYYZZ[[qqppoonnAA@@??>> !!""##PPQQRRSSyyxxwwvvIIHHGGFFHHIIJJKKxxyyzz{{QQPPOONN!! @@AABBCCppqqrrssYYXXWWVV))((''&& - - 8899::;;hhiijjkkWWVVUUTTVVWW]]^^gffeeddc21100//.44556677ddeeffggeeddccbb55443322,,--..//\\]]^^__mmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWuuttssrrEEDDCCBBLLMMNNOO||||{{zzMMLLKKJJDDEEFFGGttuuvvwwUUTTSSRR%%$$##"" <<==>>??llmmnnooSSRRQQPP%%&&''((__``aabbcbbaa``_.--,,++* - - 8899::;;hhiijjkkaa``__^^1100//..00112233``aabbcciihhggff99887766 (())**++XXYYZZ[[qqppoonnAA@@??>> !!""##PPQQRRSSyyxxwwvvIIHHGGFFHHIIJJKKxxyyzz{{QQPPOONN!! @@AABBCCppqqrrssOONNMMLL))**++,,ccddeeff_^^]]\[Z*))((''& <<==>>??llmmnnoo]]\\[[ZZ--,,++**xxwwvvuuHHGGFFEE))**++,,YYZZ[[\\kkjjiihh1100//..OOPPQQRRnmmllkkj9887766544556677ddeeffggeeddccbb55443322,,--..//\\]]^^__mmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWuuttssrrEEDDCCBBLLMMNNOO||||{{zzMMLLKKJJDDEEFFGGttuuvvwwUUTTSSRR%%$$##"" <<==>>??llmmnnooSSRRQQPP%%&&''((__``aabbcbbaa``_.--,,++* - - 8899::;;hhiijjkkaa``__^^1100//..00112233``aabbcciihhggff99887766 (())**++XXYYZZ[[qqppoonnAA@@??>> !!""##PPQQRRSSyyxxwwvvIIHHGGFFHHIIJJKKxxyyzz{{QQPPOONN!! @@AABBCCppqqrrssOONNMMLL))**++,,ccddeeff_^^]]\[Z*))((''& <<==>>??llmmnnoo]]\\[[ZZ--,,++**44556677ddeeffggeeddccbb55443322,,--..//\\]]^^__mmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWuuttssrrEEDDCCBBLLMMNNOO||||{{zzMMLLKKJJDDEEFFGGttuuvvwwKKJJIIHH--..//00gghhiijjYXWWVVUU&%%$#"! @@AABBCCppqqrrssYYXXWWVV))((''&& - - ttssrrqqDDCCBBAA--..//00]]^^__``ggffeedd--,,++**SSTTUUVVjiihhggf54433221 - - 8899::;;hhiijjkkaa``__^^1100//..00112233``aabbcciihhggff99887766 (())**++XXYYZZ[[qqppoonnAA@@??>> !!""##PPQQRRSSyyxxwwvvIIHHGGFFHHIIJJKKxxyyzz{{QQPPOONN!! @@AABBCCppqqrrssOONNMMLL))**++,,ccddeeff_^^]]\[Z*))((''& <<==>>??llmmnnoo]]\\[[ZZ--,,++**44556677ddeeffggeeddccbb55443322,,--..//\\]]^^__mmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWuuttssrrEEDDCCBBLLMMNNOO||||{{zzMMLLKKJJDDEEFFGGttuuvvwwKKJJIIHH--..//00gghhiijjYXWWVVUU&%%$#"! @@AABBCCppqqrrssYYXXWWVV))((''&& - - 8899::;;hhiijjkkaa``__^^1100//..00112233``aabbcciihhggff99887766 (())**++XXYYZZ[[qqppoonnAA@@??>> !!""##PPQQRRSSyyxxwwvvIIHHGGFFHHIIJJKKxxyyzz{{GGFFEEDD - -11223344kkllmmnnTTSSRRQQDDEEFFGGttuuvvwwUUTTSSRR%%$$##"" ppoonnmm@@??>>== 11223344aabbccddccbbaa``))((''&&%%WW]]^^__feeddccb100//..- <<==>>??llmmnnoo]]\\[[ZZ--,,++**44556677ddeeffggeeddccbb55443322,,--..//\\]]^^__mmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWuuttssrrEEDDCCBBLLMMNNOO||||{{zzMMLLKKJJDDEEFFGGttuuvvwwKKJJIIHH--..//00gghhiijjYXWWVVUU&%%$#"! @@AABBCCppqqrrssYYXXWWVV))((''&& - - 8899::;;hhiijjkkaa``__^^1100//..00112233``aabbcciihhggff99887766 (())**++XXYYZZ[[qqppoonnAA@@??>> !!""##PPQQRRSSyyxxwwvvIIHHGGFFHHIIJJKKxxyyzz{{GGFFEEDD - -11223344kkllmmnnTTSSRRQQDDEEFFGGttuuvvwwUUTTSSRR%%$$##"" <<==>>??llmmnnoo]]\\[[ZZ--,,++**44556677ddeeffggeeddccbb55443322,,--..//\\]]^^__mmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWuuttssrrEEDDCCBBLLMMNNOO||||{{zzCCBBAA;; 55667788ooppqqrrPPOONNMMHHIIJJKKxxyyzz{{QQPPOONN!! llkkjjii<<;;::99 - - 55667788eeffgghh__^^]]WW%%&&''(())``aabbccbaa``__^-,,++**)@@AABBCCppqqrrssYYXXWWVV))((''&& - - 8899::;;hhiijjkkaa``__^^1100//..00112233``aabbcciihhggff99887766 (())**++XXYYZZ[[qqppoonnAA@@??>> !!""##PPQQRRSSyyxxwwvvIIHHGGFFHHIIJJKKxxyyzz{{GGFFEEDD - -11223344kkllmmnnTTSSRRQQDDEEFFGGttuuvvwwUUTTSSRR%%$$##"" <<==>>??llmmnnoo]]\\[[ZZ--,,++**44556677ddeeffggeeddccbb55443322,,--..//\\]]^^__mmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWuuttssrrEEDDCCBBLLMMNNOO||||{{zzCCBBAA;; 55667788ooppqqrrPPOONNMMHHIIJJKKxxyyzz{{QQPPOONN!! @@AABBCCppqqrrssYYXXWWVV))((''&& - - 8899::;;hhiijjkkaa``__^^1100//..00112233``aabbcciihhggff99887766 (())**++XXYYZZ[[qqppoonnAA@@??>> !!""##PPQQRRSSyyssrrqq::99887799::;;AAssyyzz{{LLKKJJIILLMMNNOO||||{{zzMMLLKKJJhhggffee88776655 - - 99::;;<>??llmmnnoo]]\\[[ZZ--,,++**44556677ddeeffggeeddccbb55443322,,--..//\\]]^^__mmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWuuttssrrEEDDCCBBLLMMNNOO||||{{zzCCBBAA;; 55667788ooppqqrrPPOONNMMHHIIJJKKxxyyzz{{QQPPOONN!! @@AABBCCppqqrrssYYXXWWVV))((''&& - - 8899::;;hhiijjkkaa``__^^1100//..00112233``aabbcciihhggff99887766 (())**++XXYYZZ[[qqppoonnAA@@??>> !!""##PPQQRRSSyyssrrqq::99887799::;;AAssyyzz{{LLKKJJIILLMMNNOO||||{{zzMMLLKKJJDDEEFFGGttuuvvwwUUTTSSRR%%$$##"" <<==>>??llmmnnoo]]\\[[ZZ--,,++**44556677ddeeffggeeddccbb55443322,,--..//\\]]^^__mmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWppoonnmm66554433 - - BBCCDDEE||||{{zzHHGGFFEE !!""##PPQQRRSSyyxxwwvvIIHHGGFFddccbbaa44332211 ==>>??@@mmnnooppRRQQPPOO..//0011hhiijjkkWWVVUUTT%$#"! HHIIJJKKxxyyzz{{QQPPOONN!! @@AABBCCppqqrrssYYXXWWVV))((''&& - - 8899::;;hhiijjkkaa``__^^1100//..00112233``aabbcciihhggff99887766 (())**++XXYYZZ[[qqppoonnAA@@??>> !!""##PPQQRRSSyyssrrqq::99887799::;;AAssyyzz{{LLKKJJIILLMMNNOO||||{{zzMMLLKKJJDDEEFFGGttuuvvwwUUTTSSRR%%$$##"" <<==>>??llmmnnoo]]\\[[ZZ--,,++**44556677ddeeffggeeddccbb55443322,,--..//\\]]^^__mmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWppoonnmm66554433 - - BBCCDDEE||||{{zzHHGGFFEE !!""##PPQQRRSSyyxxwwvvIIHHGGFFHHIIJJKKxxyyzz{{QQPPOONN!! @@AABBCCppqqrrssYYXXWWVV))((''&& - - 8899::;;hhiijjkkaa``__^^1100//..00112233``aabbcciihhggff99887766 (())**++XXYYZZ[[llkkjjii221100// FFGGHHIIyyxwvutsDDCCBBAA $$%%&&''TTUUVVWWuuttssrrEEDDCCBB``__^^]]00//..--AABBCCDDqqrrssttNNMMLLKK22334455llmmnnooSSRRQQPPLLMMNNOO||||{{zzMMLLKKJJDDEEFFGGttuuvvwwUUTTSSRR%%$$##"" <<==>>??llmmnnoo]]\\[[ZZ--,,++**44556677ddeeffggeeddccbb55443322,,--..//\\]]^^__mmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWppoonnmm66554433 - - BBCCDDEE||||{{zzHHGGFFEE !!""##PPQQRRSSyyxxwwvvIIHHGGFFHHIIJJKKxxyyzz{{QQPPOONN!! @@AABBCCppqqrrssYYXXWWVV))((''&& - - 8899::;;hhiijjkkaa``__^^1100//..00112233``aabbcciihhggff99887766 (())**++XXYYZZ[[llkkjjii221100// FFGGHHIIyyxwvutsDDCCBBAA $$%%&&''TTUUVVWWuuttssrrEEDDCCBBLLMMNNOO||||{{zzMMLLKKJJDDEEFFGGttuuvvwwUUTTSSRR%%$$##"" <<==>>??llmmnnoo]]\\[[ZZ--,,++**44556677ddeeffggeeddccbb55443322,,--..//\\]]^^__hhggffee..--,,++JJKKLLMMsrrqqppo@?>=<;;: - - (())**++XXYYZZ[[qqppoonnAA@@??>> !!""##\\[[ZZYY,,++**))EEFFGGHHuuvvwwxxJJIIHHGG 66778899ppqqrrssOONNMMLL !!""##PPQQRRSSyyxxwwvvIIHHGGFFHHIIJJKKxxyyzz{{QQPPOONN!! @@AABBCCppqqrrssYYXXWWVV))((''&& - - 8899::;;hhiijjkkaa``__^^1100//..00112233``aabbcciihhggff99887766 (())**++XXYYZZ[[llkkjjii221100// FFGGHHIIyyxwvutsDDCCBBAA $$%%&&''TTUUVVWWuuttssrrEEDDCCBBLLMMNNOO||||{{zzMMLLKKJJDDEEFFGGttuuvvwwUUTTSSRR%%$$##"" <<==>>??llmmnnoo]]\\[[ZZ--,,++**44556677ddeeffggeeddccbb55443322,,--..//\\]]^^__hhggffee..--,,++JJKKLLMMsrrqqppo@?>=<;;: - - (())**++XXYYZZ[[qqppoonnAA@@??>> !!""##PPQQRRSSyyxxwwvvIIHHGGFFHHIIJJKKxxyyzz{{QQPPOONN!! @@AABBCCppqqrrssYYXXWWVV))((''&& - - 8899::;;hhiijjkkaa``__^^1100//..00112233``aabbccddccbbaa**))((''NNOOPPQQonnmmllk:9988776,,--..//\\]]^^__mmllkkjj==<<;;:: - -$$%%&&''44556677XXWWVVUU((''&&%%IIJJKKLLyyzz{{||FFEEDDCC - - ::;;AABByyzz{{||KKJJIIHH$$%%&&''TTUUVVWWuuttssrrEEDDCCBBLLMMNNOO||||{{zzMMLLKKJJDDEEFFGGttuuvvwwUUTTSSRR%%$$##"" <<==>>??llmmnnoo]]\\[[ZZ--,,++**44556677ddeeffggeeddccbb55443322,,--..//\\]]^^__hhggffee..--,,++JJKKLLMMsrrqqppo@?>=<;;: - - (())**++XXYYZZ[[qqppoonnAA@@??>> !!""##PPQQRRSSyyxxwwvvIIHHGGFFHHIIJJKKxxyyzz{{QQPPOONN!! @@AABBCCppqqrrssYYXXWWVV))((''&& - - 8899::;;hhiijjkkaa``__^^1100//..00112233``aabbccddccbbaa**))((''NNOOPPQQonnmmllk:9988776,,--..//\\]]^^__mmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWuuttssrrEEDDCCBBLLMMNNOO||||{{zzMMLLKKJJDDEEFFGGttuuvvwwUUTTSSRR%%$$##"" <<==>>??llmmnnoo]]\\[[ZZ--,,++**44556677ddeeffgg``__^^]]&&%%RRSSTTUUkjjiihhg6554433200112233``aabbcciihhggff99887766 (())**++8899::;;TTSSRRQQ$$##""!! MMNNOOPP||{{zzyyBBAA;;:: - - CCDDEEFF||{{zzyyGGFFEEDD(())**++XXYYZZ[[qqppoonnAA@@??>> !!""##PPQQRRSSyyxxwwvvIIHHGGFFHHIIJJKKxxyyzz{{QQPPOONN!! @@AABBCCppqqrrssYYXXWWVV))((''&& - - 8899::;;hhiijjkkaa``__^^1100//..00112233``aabbccddccbbaa**))((''NNOOPPQQonnmmllk:9988776,,--..//\\]]^^__mmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWuuttssrrEEDDCCBBLLMMNNOO||||{{zzMMLLKKJJDDEEFFGGttuuvvwwUUTTSSRR%%$$##"" <<==>>??llmmnnoo]]\\[[ZZ--,,++**44556677ddeeffgg``__^^]]&&%%RRSSTTUUkjjiihhg6554433200112233``aabbcciihhggff99887766 (())**++XXYYZZ[[qqppoonnAA@@??>> !!""##PPQQRRSSyyxxwwvvIIHHGGFFHHIIJJKKxxyyzz{{QQPPOONN!! @@AABBCCppqqrrssYYXXWWVV))((''&& - - 8899::;;hhiijjkkWWVVUUTTVVWW]]^^gffeeddc21100//.44556677ddeeffggeeddccbb55443322,,--..//<<==>>??PPOONNMM !!""##$$QQRRSSTTssrrqqpp99887766 GGHHIIJJxwvutssrCCBBAA@? ,,--..//\\]]^^__mmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWuuttssrrEEDDCCBBLLMMNNOO||||{{zzMMLLKKJJDDEEFFGGttuuvvwwUUTTSSRR%%$$##"" <<==>>??llmmnnoo]]\\[[ZZ--,,++**44556677ddeeffgg``__^^]]&&%%RRSSTTUUkjjiihhg6554433200112233``aabbcciihhggff99887766 (())**++XXYYZZ[[qqppoonnAA@@??>> !!""##PPQQRRSSyyxxwwvvIIHHGGFFHHIIJJKKxxyyzz{{QQPPOONN!! @@AABBCCppqqrrssYYXXWWVV))((''&& - - 8899::;;hhiijjkkWWVVUUTTVVWW]]^^gffeeddc21100//.44556677ddeeffggeeddccbb55443322,,--..//\\]]^^__mmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWuuttssrrEEDDCCBBLLMMNNOO||||{{zzMMLLKKJJDDEEFFGGttuuvvwwUUTTSSRR%%$$##"" <<==>>??llmmnnooSSRRQQPP%%&&''((__``aabbcbbaa``_.--,,++* - - 8899::;;hhiijjkkaa``__^^1100//..00112233@@AABBCCDDEEFFGGttuuvvwwUUTTSSRR%%$$##"" <<==>>??llmmnnoo]]\\[[ZZ--,,++**44556677ddeeffggeeddccbb55443322,,--..//\\]]^^__mmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWmmllkkjj33221100MMNNOOPPaa``__^^1100//..@@AABBCCHHIIJJKKxxyyzz{{QQPPOONN!! @@AABBCCppqqrrssYYXXWWVV))((''&& - - 8899::;;hhiijjkkaa``__^^1100//..00112233``aabbcciihhggff99887766 (())**++XXYYZZ[[iihhggff//..--,,QQRRSSTT]]\\[[ZZ--,,++**DDEEFFGGLLMMNNOO||||{{zzMMLLKKJJDDEEFFGGttuuvvwwUUTTSSRR%%$$##"" <<==>>??llmmnnoo]]\\[[ZZ--,,++**44556677ddeeffggeeddccbb55443322,,--..//\\]]^^__eeddccbb++**))((UUVVWW]]YYXXWWVV))((''&&HHIIJJKKPPQQRRSSyyxxwwvvIIHHGGFFHHIIJJKKxxyyzz{{QQPPOONN!! @@AABBCCppqqrrssYYXXWWVV))((''&& - - 8899::;;hhiijjkkaa``__^^1100//..00112233``aabbccaa``__^^''&&%%%%&&''^^__``aaUUTTSSRR%%$$##""LLMMNNOOTTUUVVWWuuttssrrEEDDCCBBLLMMNNOO||||{{zzMMLLKKJJDDEEFFGGttuuvvwwUUTTSSRR%%$$##"" <<==>>??llmmnnoo]]\\[[ZZ--,,++**44556677ddeeffgg]]WWVVUU(())**++bbccddeeQQPPOONN!!  !!""##PPQQRRSSXXYYZZ[[qqppoonnAA@@??>> !!""##PPQQRRSSyyxxwwvvIIHHGGFFHHIIJJKKxxyyzz{{QQPPOONN!! @@AABBCCppqqrrssYYXXWWVV))((''&& - - 8899::;;hhiijjkkTTSSRRQQ,,--..//ffgghhiiMMLLKKJJ$$%%&&''TTUUVVWW\\]]^^__mmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWuuttssrrEEDDCCBBLLMMNNOO||||{{zzMMLLKKJJDDEEFFGGttuuvvwwUUTTSSRR%%$$##"" <<==>>??llmmnnooPPOONNMM00112233jjkkllmmIIHHGGFF(())**++XXYYZZ[[``aabbcciihhggff99887766 (())**++XXYYZZ[[qqppoonnAA@@??>> !!""##PPQQRRSSyyxxwwvvIIHHGGFFHHIIJJKKxxyyzz{{QQPPOONN!! @@AABBCCppqqrrssLLKKJJII44556677nnooppqqEEDDCCBB,,--..//\\]]^^__ddeeffggeeddccbb55443322,,--..//\\]]^^__mmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWuuttssrrEEDDCCBBLLMMNNOO||||{{zzMMLLKKJJDDEEFFGGttuuvvwwHHGGFFEE 8899::;;qqppoonnAA@@??>>00112233``aabbcchhiijjkkaa``__^^1100//..00112233``aabbcciihhggff99887766 (())**++XXYYZZ[[qqppoonnAA@@??>> !!""##PPQQRRSSyyxxwwvvIIHHGGFFHHIIJJKKxxyyzz{{DDCCBBAA - - - -AABBCCDDmmllkkjj==<<;;:: - -44556677ddeeffggllmmnnoo]]\\[[ZZ--,,++**44556677ddeeffggeeddccbb55443322,,--..//\\]]^^__mmllkkjj==<<;;:: - -$$%%&&''TTUUVVWWuuttssrrEEDDCCBBLLMMNNOO||ttssrr;;::9988 EEFFGGHHiihhggff99887766 - - 8899::;;hhiijjkkppqqrrssYYXXWWVV))((''&& - - 8899::;;hhiijjkkaa``__^^1100//..00112233``aabbcciihhggff99887766 (())**++XXYYZZ[[qqppoonnAA@@??>> !!""##PPQQRRSSqqppoonn77665544IIJJKKLLeeddccbb55443322 <<==>>??llmmnnooppqqfpvfpvfpvXQJ`ےXQJ`ےltbtAJlH~fpfH~bے`JQr˂p˂pZHAbtlbtl`f~`f~`fHےbHAےbHAtAJltAJltAJlf`vXf`vXXQr˂XQr˂XQr˂btlbtlbtl`f~`f~ےbHAےbHAےbHAtAJltAJlf`vXf`vXf`vX`JXQrے`JJtArdl|Z~HfpvnX`ےHAےbHAےbHAtAJltAJlJltf`vXf`vXXQr˂XQr˂XQr˂btlbtl`f~`f~`f~ےbHAےbHAےJltAJltAJlf`vXf`vXf`vXXQr˂XQr˂btlbtlbtlXv`fnXvXQJ`ےrXQJtbdZ|df`vXf`vXf`vXXQr˂XQr˂rbtbtlbtl`f~`f~`fHےbHAےbHAtAJltAJltAJlf`vXf`vXXQr˂XQr˂XQr˂btlbtlbtl`f~`f~ےbHAےbHAےbHAdrtAJ|drH~fpfH~˂pZAbbے`btlbtlbtl`f~`f~`ےHAnXv`nXv`nXv`bHAZbHAZdQZ|tbdQZ`vXnf`vJXQrˑZHAbbJAdJtArdJtArdHfpvHfpvfpvZp˂Zp˂tbdQZtbdQZtbdQZnvpnvppZHAbpZHAbpZHAbJtArdJtArdJfpvHfpvHfpvZp˂Zp˂Zp˂tbdQZtbdQZnvpnvpnvp˂pZXQr˂tlJdQbt璝vnXv`fZp˂Zp˂Zp˂tbdQZtbdQZbnvnvpnvppZHAbpZHAbpZHAJtArdJtArdHfpvHfpvHfpvZp˂Zp˂tbdQZtbdQZtbdQZnvpnvpnvppZHAbpZHAbJtArdJtArdJtArd~Hf`f~bHAZ`ےbQZ|rrtAJlnvpnvpnvppZHAbpZHAblJtAdJtArdJtArdHfpvHfpvfpvZp˂Zp˂tbdQZtbdQZtbdQZnvpnvppZHAbpZHAbpZHAbJtArdJtArdJfpvHfpvHfpvZp˂Zp˂Zp˂ltbtAJl`vXnf`v`JXQJXQrZJtArdJtArdJtArdHfpvHfpvZp˂f~Hf~Hf~Hp˂rp˂rdrtAJ|drvpfXnvpZHAے`JX|ZdQ|ZdQ|ZdQnXvnXvnrXQJrXQJ`rXQJ`|dr|dr|dtAfH~fH~ے`Jے`Jے`J|ZdQ|ZdQnXvnXvnXvrXQJ`rXQJ`rXQJ`|dr|drfH~fH~fH~HAbےpZHAbtArdlJtArv`f~~HfprXQJ`rXQJ`rXQJ`|dr|drpfHfH~fH~ے`Jے`Jے`JXQ|ZdQ|ZdQnXvnXvnXvrXQJ`rXQJ`|dr|dr|drfH~fH~fے`Jے`Jے`J|ZdQ|ZdQ|ZdQpvnHfpvp˂rHAZp˂AJlttbQZfH~fH~fH~ے`Jے`J|ZdQ|ZdQ|ZdQnXvnXvnrXQJrXQJ`rXQJ`|dr|dr|dtAfH~fH~ے`Jے`Jے`J|ZdQ|ZdQnXvnXvnXvrXQJ`rXQJ`rXQJ`dQZ|tbdQZvpfXnvr˂pHAbے|ZdQ|ZdQ|ZdQnXvnXvrXQJ`fpvfpvfpvXQJ`ےXQJ`ےltbtAJlH~p`vXbے`Qr˂pbtlbtlbtl`f~`f~`ےHAےbHAےbHAtAJltAJlJltf`vXf`vXXQr˂XQr˂XQr˂btlbtl`f~`f~`f~ےbHAےbHAےJltAJltAJlf`vXf`vXf`vX`JXQrے`J|ZdQbd|ZfpvvnvfےbHAےbHAےbHAtAJltAJlf`vXf`vXf`vXXQr˂XQr˂rbtbtlbtl`f~`f~`fHےbHAےbHAtAJltAJltAJlf`vXf`vXXQr˂XQr˂XQr˂btlbtlbtlXv`fnXvXQJ`ےrXQJbdQZ|drtAJf`vXf`vXf`vXXQr˂XQr˂btlbtlbtl`f~`f~`ےHAےbHAےbHAtAJltAJlJltf`vXf`vXXQr˂XQr˂XQr˂btlbtl`f~`f~`f~ےbHAےbHAےJldrtAdQ|ltH~fpfH~ZHAb`JXQrbtlbtlbtl`f~`f~ےbHAnXv`nXv`nXv`bHAZbHAZdQZ|ltdrtAvpfHnvpJXQrˑZHAbJtArdJtArdJtArdHfpvHfpvZp˂Zp˂Zp˂tbdQZtbdQZbnvnvpnvppZHAbpZHAbpZHAJtArdJtArdHfpvHfpvHfpvZp˂Zp˂tbdQZtbdQZtbdQZnvpnvpnvp˂pZXQr˂tlJdQbtnXv`~HfZp˂Zp˂Zp˂tbdQZtbdQZnvpnvpnvppZHAbpZHAblJtAdJtArdJtArdHfpvHfpvfpvZp˂Zp˂tbdQZtbdQZtbdQZnvpnvppZHAbpZHAbpZHAbJtArdJtArdJfpv~HX`pvbHAZ`ےbdrtAltbnvpnvpnvppZHAbpZHAbJtArdJtArdJtArdHfpvHfpvZp˂Zp˂Zp˂tbdQZtbdQZbnvnvpnvppZHAbpZHAbpZHAJtArdJtArdHfpvHfpvHfpvZp˂Zp˂tdrtAZ|dbnv`vXHvpے`JXQ˂pZJtArdJtArdJfpvHfpvHfpvZp˂f~Hf~Hp˂rp˂rp˂rtbdQJlt~f`fH~pZAbے`JX|ZdQ|ZdQ|ZdQnXvnXvrXQJ`rXQJ`rXQJ`|dr|drpfHfH~fH~ے`Jے`Jے`JXQ|ZdQ|ZdQnXvnXvnXvrXQJ`rXQJ`|dr|dr|drfH~fH~fے`JHAbp`JXQtArdlJtArf~HpvnrXQJ`rXQJ`rXQJ`|dr|drfH~fH~fH~ے`Jے`J|ZdQ|ZdQ|ZdQnXvnXvnrXQJrXQJ`rXQJ`|dr|dr|dtAfH~fH~ے`Jے`Jے`J|ZdQ|ZdQ~Hv`fnrXQJp˂HAXQJ`JltdQZ|fH~fH~fے`Jے`Jے`J|ZdQ|ZdQ|ZdQnXvnXvrXQJ`rXQJ`rXQJ`|dr|drpfHfH~fH~ے`Jے`Jے`JXQ|ZdQ|ZdQnXvnXvnXvrXQJ`rXQJ`JltrtAJlp`vX~f`fے`Jr˂pHAbے|ZdQ|ZdQnXvnXvnXvrXQJ`fpvfpvXQJ`ےXQJ`ےXQJ`ےZ|dbdQZ|vXnf`vX`JXQrQrZHAbtlbtlbtl`f~`f~ےbHAےbHAےbHAtAJltAJlf`vXf`vXf`vXXQr˂XQr˂rbtbtlbtl`f~`f~`fHےbHAےbHAtAJltAJltAJlf`vXf`vXXQHAb˂pZHArbt|ZdQtAdtlfpvXv`fےbHAےbHAےJltAJltAJlf`vXf`vXf`vXXQr˂XQr˂btlbtlbtl`f~`f~`ےHAےbHAےbHAtAJltAJlJltf`vXf`vXXQr˂XQr˂XQr˂btlbtlfpv~Hfp`p˂bHAZpےJlbdQZ|drtAJf`vXf`vXXQr˂XQr˂XQr˂btlbtlbtl`f~`f~ےbHAےbHAےbHAtAJltAJlf`vXf`vXf`vXXQr˂XQr˂rbtbtlbtl`f~`f~`fHےbHAےbHAbdQZ|tbdQnvpvXnXQrZHZHAb`JXQrbtlbtl`f~`f~`f~ےbHAnXv`nXv`bHAZbHAZbHAZrtAJldrtAvpfHnvp˂pZbے`JtArdJtArdJfpvHfpvHfpvZp˂Zp˂Zp˂tbdQZtbdQZnvpnvpnvppZHAbpZHAblJtAdJtArdJtArdHfpvHfpvfpvZp˂Zp˂tbdQZtbdQZtbdQZnvpnvpے`JXQbے`l|ZdQrd|JfpvnXv`~HfZp˂Zp˂tbdQZtbdQZtbdQZnvpnvpnvppZHAbpZHAbJtArdJtArdJtArdHfpvHfpvZp˂Zp˂Zp˂tbdQZtbdQZbnvnvpnvppZHAbpZHAbpZHAJtArdJtArdnXv`vnXrXQJ`˂rXQtbQZddrtAltbnvpnvppZHAbpZHAbpZHAbJtArdJtArdJfpvHfpvHfpvZp˂Zp˂Zp˂tbdQZtbdQZnvpnvpnvppZHAbpZHAblJtAdJtArdJtArdHfpvHfpvfpvZp˂Zp˂drtAZ|dfH~vpfHAbے`JQrˀ˂pZAJtArdJtArdHfpvHfpvHfpvZp˂f~Hf~Hp˂rp˂rp˂rtbdQJlt~f`fH~HAbےJXQr|ZdQ|ZdQnXvnXvnXvrXQJ`rXQJ`rXQJ`|dr|drfH~fH~fH~ے`Jے`J|ZdQ|ZdQ|ZdQnXvnXvnrXQJrXQJ`rXQJ`|dr|dr|dtAfH~fH~r˂pJXQrbtlZdQbtnvff~HpvnrXQJ`rXQJ`|dr|dr|drfH~fH~fے`Jے`Jے`J|ZdQ|ZdQ|ZdQnXvnXvrXQJ`rXQJ`rXQJ`|dr|drpfHfH~fH~ے`Jے`Jے`JXQ|ZdQ|ZdQf~Hv`fےbHAJ`ےrtAJlJbdQdQZ|fH~fH~ے`Jے`Jے`J|ZdQ|ZdQnXvnXvnXvrXQJ`rXQJ`rXQJ`|dr|drfH~fH~fH~ے`Jے`J|ZdQ|ZdQ|ZdQnXvnXvnrXQJrXQJ`rXQJ`JltrtAJlf`vX~f`JXQrpZHA㙒`JXQ|ZdQ|ZdQnXvnXvnXvrXQJ`ےbHAfpvfpvXQJ`ےXQJ`ےXQJ`ےZ|dbdQZ|vXH~vpf`JXQr˂pZHAbtlbtl`f~`f~`f~ےbHAےbHAےJltAJltAJlf`vXf`vXf`vXXQr˂XQr˂btlbtlbtl`f~`f~`ےHAےbHAےbHAtAJltAJlJltf`vXf`vXZHAb˂pZHAJtArdlJtA~HfpfvnXXv`fےbHAےbHAtAJltAJltAJlf`vXf`vXXQr˂XQr˂XQr˂btlbtlbtl`f~`f~ےbHAےbHAےbHAtAJltAJlf`vXf`vXf`vXXQr˂XQr˂rbtbtlbtlfpv~HfpZp˂bHAZptbdZ|dAJltf`vXf`vXXQr˂XQr˂XQr˂btlbtl`f~`f~`f~ےbHAےbHAےJltAJltAJlf`vXf`vXf`vXXQr˂XQr˂btlbtlbtl`f~`f~`ےHAےbHAےbHAbdQZ|tdrnvpvXn˂pZHbے`rbtbtlbtl`f~`f~`fHےbHAZp˂nXv`nXv`bHAZbHAZJltrtAdQZ`vXnf`vے`JXQ˂pZbے`JtArdJtArdHfpvHfpvHfpvZp˂Zp˂tbdQZtbdQZtbdQZnvpnvpnvppZHAbpZHAbJtArdJtArdJtArdHfpvHfpvZp˂Zp˂Zp˂tbdQZtbdQZbnvnvpnvpے`JXQbے`|ZdQrd|vnXv`ffpvZp˂Zp˂tbdQZtbdQZtbdQZnvpnvppZHAbpZHAbpZHAbJtArdJtArdJfpvHfpvHfpvZp˂Zp˂Zp˂tbdQZtbdQZnvpnvpnvppZHAbpZHAblJtAdJtArdJtArdnXv`v~rXQJ`˂rXQQZ|drtAJlbnvnvpnvppZHAbpZHAbpZHAJtArdJtArdHfpvHfpvHfpvZp˂Zp˂tbdQZtbdQZtbdQZnvpnvpnvppZHAbpZHAbJtArdJtArdJtArdHfpvHfpvZp˂Zp˂Zp˂ltbtAJlfH~vp`vAbے`JXQrlJtAdJtArdJtArdHfpvHfpvfpvZp˂rXQJ`f~Hf~Hp˂rp˂rdrtAJ|drvpfXnvrZHAHAbJXQr|ZdQ|ZdQnXvnXvnXvrXQJ`rXQJ`|dr|dr|drfH~fH~fے`Jے`Jے`J|ZdQ|ZdQ|ZdQnXvnXvrXQJ`rXQJ`rXQJ`|dr|drpfHfH~fH~r˂pJXQHAbbtlZdQbtv`f~HfpnrXQJrXQJ`rXQJ`|dr|dr|dtAfH~fH~ے`Jے`Jے`J|ZdQ|ZdQnXvnXvnXvrXQJ`rXQJ`rXQJ`|dr|drfH~fH~fH~ے`Jے`J|ZdQ|ZdQ|ZdQpvnHfpvےbHAJ`p˂rtAJltbdQpfHfH~fH~ے`Jے`Jے`JXQ|ZdQ|ZdQnXvnXvnXvrXQJ`rXQJ`|dr|dr|drfH~fH~fے`Jے`Jے`J|ZdQ|ZdQ|ZdQnXvnXvrXQJ`rXQJ`rXQJ`dQZ|tbdQZvpfXnvJXQrpZHA|ZdQ|ZdQ|ZdQnXvnXvnrXQJrXQJ`ےbHAZp˂Zp˂tbdQZtbdQZnvpnvpnvppZHAbpZHAblJtAdJtArdJtArdHfpvHfpvfpvZp˂Zp˂tbdQZtbdQZtbdQZnvpnvpXQr˂`JXQrˁ`ZAHr󙐂˅Xnv˅Xnv˒tbAdtbAdrXQJ`rXQJ`|dr|drfH~fH~fH~ے`Jے`J|ZdQ|ZdQ|ZdQnXvnXvnrXQJrXQJ`rXQJ`|dr|dr|dtAfH~fH~pZHAb˂pZQXb㉀ہ`ZQXbpfH~pfH~Z|dZ|dےbHAےJltAJltAJlf`vXf`vXf`vXXQr˂XQr˂btlbtlbtl`f~`f~`ےHAےbHAےbHAtAJltAJlJltf`vXf`vXے`JHAbےpJAHr󉀒ۑp`f۝`vf۝`vrQtJlrQtJlZp˂tbdQZtbdQZtbdQZnvpnvpnvppZHAbpZHAbJtArdJtArdJtArdHfpvHfpvZp˂Zp˂Zp˂tbdQZtbdQZbnvnvpnvpXQr˂`JXQHAۑpZQXb㉀Xnv˅Xnv˒tbAdtbAdrXQJ`|dr|dr|drfH~fH~fے`Jے`Jے`J|ZdQ|ZdQ|ZdQnXvnXvrXQJ`rXQJ`rXQJ`|dr|drpfHfH~fH~p`JXQbے`JAHr󙐒ۑpJAHpfH~pfH~Z|dZ|dےbHAtAJltAJltAJlf`vXf`vXXQr˂XQr˂XQr˂btlbtlbtl`f~`f~ےbHAےbHAےbHAtAJltAJlf`vXf`vXf`vXr˂pJXQrˁ`ZQXr󙐂ˁ`f۝`vf۝`vrQtJlrQtJlZp˂tbdQZtbdQZtbdQZnvpnvppZHAbpZHAbpZHAbJtArdJtArdJfpvHfpvHfpvZp˂Zp˂Zp˂tbdQZtbdQZnvpnvpnvpZHAb˂pZHAb㉀ۑpZQXb㉀Xnv˅Xnv˒tbAdtbAdrXQJ`|dr|dr|dtAfH~fH~ے`Jے`Jے`J|ZdQ|ZdQnXvnXvnXvrXQJ`rXQJ`rXQJ`|dr|drfH~fH~fH~ے`JXQbے`JAHr󙐒ۑpJAHpfH~pfH~Z|dZ|dےbHAtAJltAJlJltf`vXf`vXXQr˂XQr˂XQr˂btlbtl`f~`f~`f~ےbHAےbHAےJltAJltAJlf`vXf`vXf`vXr˂pJXQrˁ`ZQXf۝`vf۝`vf۝`vrQtJlrQtJlZp˂tbdQZtbdQZbnvnvpnvppZHAbpZHAbpZHAJtArdJtArdHfpvHfpvHfpvZp˂Zp˂tbdQZtbdQZtbdQZnvpnvpnvpZHAb˂p`ZAHr󙐂˅Xnv˅Xnv˅Xnv˒tbAdtbAdrXQJ`|dr|drpfHfH~fH~ے`Jے`Jے`JXQ|ZdQ|ZdQnXvnXvnXvrXQJ`rXQJ`|dr|dr|drfH~fH~fZHAb˂pZQXb㉀ہ`ZQXbpfH~pfH~p|dZ|dZ|dےbHAtAJltAJlf`vXf`vXf`vXXQr˂XQr˂rbtbtlbtl`f~`f~`fHےbHAےbHAtAJltAJltAJlf`vXf`vXے`JHAbےpJAHr󉀒ۑpJf۝`vf۝`vrQtJlrQtJlrQtJltuvwxyz{||{zyxwv \ No newline at end of file diff --git a/barcode-generator/Resources/data/qrv27_2.dat b/barcode-generator/Resources/data/qrv27_2.dat deleted file mode 100644 index 536c7ca..0000000 --- a/barcode-generator/Resources/data/qrv27_2.dat +++ /dev/null @@ -1,249 +0,0 @@ -|{|{|{|{zyzyzyzyxwxwxwxwssstststrqrqrqrqnmnmnmnmlklklklkjijijijifefefefedcdcdcdcbabababa`_`_`_`_\[\[\[\[ZYZYZYZYVUVUVUVU|{|{|{|{zyzyzyzyxwxwxwxwststststrqrqrqrqnmnmnmnmlklklklkjijijijifefefefedcdcdcdcbabababa`_`_`_`_\[\[\[\[ZYZYZYZYVUVUVUVU|{|{|{|{zyzyzyzyvuvuvuvuststststrqrqrqrqnmnmnmnmlklklklkjijijijifefefefedcdcdcdcbabababa`_^]^]^]\[\[\[\[ZYZYZYZYVUVUVUVU|{|{|{|{zyzyzyzyvuvuvuvuststststrqpopoponmnmnmnmlklklklkjijijijifefefefedcdcdcdcbabababa^]^]^]^]\[\[\[\[ZYXWXWXWVUVUVUVU|{|{|{|{zyzyzyzyvuvuvuvuststststpopopoponmnmnmnmlklklklkjijijijifefefefedcdcdcdcbabababa^]^]^]^]\[\[\[\[XWWWWWWXVUVUVUVU|{|{|{|{zyzyzyzyvuvuvuvuststststpopopoponmnmnmnmlklklklkjijijijifefefefedcdcdcdcbabababa^]^]^]^]\[\[\[\[WXWXWXWXVUVUVUVU|{|{|{|{zyzyzyzyvuvuvuvusssssstspopopoponmnmnmnmlklklklkjijijijifefefefedcdcdcdcbabababa^]^]^]^]\[\[\[\[WXWXWXWXVUVUVUVU|{|{|{|{zyzyzyzyvuvuvuvutstststspopopoponmnmnmnmlklklklkjihghghgfefefefedcdcdcdcbabababa^]^]^]^]\[\[\[\[WXWXWXWXVUVUVUVU|{|{|{|{zyzyzyzyvuvuvuvutstststspopopoponmnmnmnmlklklklkhghghghgfefefefedcdcdcdcbabababa^]^]^]^]\[\[\[\[WXWXWXWXVUVUVUVU|{|{|{|{zyzyzyzyvuvuvuvutstststspopopoponmnmnmnmlklklklkhghghghgfefefefedcdcdcdcbabababa^]^]^]^]\[\[\[\[WXWXWXWXVUVUVUVU|{|{|{|{zyzyzyzyvuvuvuvutstststspopopoponmnmnmnmlklklklkhghghghgfefefefedcdcdcdcbabababa^]^]^]^]\[\[\[\[WXWXWWWWVUVUVUVU|{|{|{|{zyzyzyzyvuvuvuvutstststspopopoponmnmnmnmlklklklkhghghghgfefefefedcdcdcdcba`_`_`_^]^]^]^]\[\[\[\[WWXWXWXWVUVUVUVU|{|{|{|{zyzyzyzyvuvuvuvutstststspopopoponmnmnmnmlklklklkhghghghgfefefefedcdcdcdc`_`_`_`_^]^]^]^]\[\[\[\[XWXWXWXWVUVUVUVUTSTSTSTS|{|{|{|{zyzyzyzyvuvuvuvuqqqqqqrqpopopoponmnmnmnmlklklklkhghghghgfefefefedcdcdcdc`_`_`_`_^]^]^]^]\[\[\[\[XWXWXWXWVUVUVUVUTSTSTSTS|{|{|{|{zyzyzyzyvuvuvuvurqrqrqrqpopopoponmnmnmnmlklklklkhghghghgfefefefedcdcdcdc`_`_`_`_^]^]^]^]\[\[\[\[XWXWXWXWVUVUVUVUTSTSTSTS|{|{|{|{zyzyzyzyvuvuvuvurqrqrqrqpopopoponmnmnmnmlklklklkhghghghgfefefefedcdcdcdc`_`_`_`_^]^]^]^]\[\[\[\[XWXWXWXWVUVUVUVUTSTSTSTS|{|{|{|{zyzyzyzyvuvuvuvurqrqrqrqpopopoponmnmnmnmlkjijijihghghghgfefefefedcdcdcdc`_`_`_`_^]^]^]^]\[\[\[\[XWXWXWXWVUVUVUVUTSTSTSTS|{|{|{|{zyzyzyzyvuvuvuvurqrqrqrqpopopoponmnmnmnmjijijijihghghghgfefefefedcdcdcdc`_`_`_`_^]^]^]^]\[\[\[\[WWWWWXWXVUVUVUVUTSTSTSTS|{|{|{|{xwxwxwxwvuvuvuvurqrqrqrqpopopoponmnmnmnmjijijijihghghghgfefefefedcdcdcdc`_`_`_`_^]^]^]^]\[ZYZYZYWXWXWXWXVUVUVUVUTSTSTSTS|{|{|{|{xwxwxwxwvuvuvuvurqrqrqrqpopopoponmnmnmnmjijijijihghghghgfefefefedcdcdcdc`_`_`_`_^]^]^]^]ZYZYZYZYWXWXWXWXVUVUVUVUTSTSTSTS|{|{|{|{xwxwxwxwvuvuvuvurqrqrqrqpopopoponmnmnmnmjijijijihghghghgfefefefedcbababa`_`_`_`_^]^]^]^]ZYZYZYZYWXWXWXWXVUVUVUVUTSTSTSTS|{|{|{|{xwxwxwxwvuvuvuvurqrqrqrqpopopoponmnmnmnmjijijijihghghghgfefefefebabababa`_`_`_`_^]^]^]^]ZYZYZYZYWXWXWXWXVUVUVUVUTSTSTSTS|{|{|{|{xwxwxwxwvuvuvuvurqrqrqrqpopopoponmnmnmnmjijijijihghghghgfefefefebabababa`_`_`_`_^]^]^]^]ZYZYZYZYWXWXWXWXVUTSTSTSTSTSTSTS|{|{|{|{xwxwxwxwvuvuvuvurqrqrqrqpopopoponmnmnmnmjijijijihghghghgfefefefebabababa`_`_`_`_^]^]^]^]ZYZYZYZYWXWWWWWWTSTSTSTSTSTSTSTS|{|{|{|{xwxwxwxwvuvuvuvurqrqrqrqpopopoponmnmnmnmjijijijihghghghgfefefefebabababa`_`_`_`_^]^]^]^]ZYZYZYZYXWXWXWXWTSTSTSTSTSTSTSTS|{|{|{|{xwxwxwxwvuvuvuvurqrqrqrqpopopoponmlklklkjijijijihghghghgfefefefebabababa`_`_`_`_^]^]^]^]ZYZYZYZYXWXWXWXWTSTSTSTSTSRQRQRQ|{|{|{|{xwxwxwxwtstststsrqrqrqrqpopopopolklklklkjijijijihghghghgfefefefebabababa`_`_`_`_^]^]^]^]ZYZYZYZYXWXWXWXWTSTSTSTSRQRQRQRQ|{|{|{|{xwxwxwxwssssststrqrqrqrqpopopopolklklklkjijijijihghghghgfefefefebabababa`_`_`_`_^]^]^]^]ZYZYZYZYXWXWXWXWTSTSTSTSRQRQRQRQ|{|{|{|{xwxwxwxwststststrqrqrqrqpopopopolklklklkjijijijihghghghgfefefefebabababa`_`_`_`_^]^]^]^]ZYZYZYZYXWXWXWXWTSTSTSTSRQRQRQRQzyzyzyzyxwxwxwxwststststrqrqrqrqpopopopolklklklkjijijijihghghghgfedcdcdcbabababa`_`_`_`_^]^]^]^]ZYZYZYZYXWXWXWWWTSTSTSTSRQRQRQRQzyzyzyzyxwxwxwxwststststrqrqrqrqpopopopolklklklkjijijijihghghghgdcdcdcdcbabababa`_`_`_`_^]^]^]^]ZYZYZYZYWWXWXWXWTSTSTSTSRQRQRQRQzyzyzyzyxwxwxwxwststststrqrqrqrqpopopopolklklklkjijijijihghghghgdcdcdcdcbabababa`_`_`_`_^]^]^]^]ZYZYZYZYXWVUVUVUTSTSTSTSRQRQRQRQzyzyzyzyxwxwxwxwststststrqrqrqrqpopopopolklklklkjijijijihghghghgdcdcdcdcbabababa`_`_`_`_^]^]^]^]ZYZYZYZYVUVUVUVUTSTSTSTSRQRQRQRQzyzyzyzyxwxwxwxwstssssssrqrqrqrqpopopopolklklklkjijijijihghghghgdcdcdcdcbabababa`_`_`_`_^]\[\[\[ZYZYZYZYVUVUVUVUTSTSTSTSRQRQRQRQzyzyzyzyxwxwxwxwtstststsrqrqrqrqponmnmnmlklklklkjijijijihghghghgdcdcdcdcbabababa`_`_`_`_\[\[\[\[ZYZYZYZYVUVUVUVUTSTSTSTSRQRQRQRQzyzyzyzyxwxwxwxwtstststsrqrqrqrqnmnmnmnmlklklklkjijijijihghghghgdcdcdcdcbabababa`_`_`_`_\[\[\[\[ZYZYZYZYVUVUVUVUTSTSTSTSRQRQRQRQzyzyzyzyxwxwxwxwtstststsrqrqrqrqnmnmnmnmlklklklkjijijijihghghghgdcdcdcdcbabababa`_`_`_`_\[\[\[\[ZYZYZYZYVUVUVUVUTSTSTSTSRQRQRQRQzyzyzyzyxwxwxwxwtstststsrqrqrqrqnmnmnmnmlklklklkjijijijihghghghgdcdcdcdcbabababa`_`_`_`_\[\[\[\[ZYZYZYZYVUVUVUVUTSTSTSTSRQRQRQRQzyzyzyzyxwxwxwxwtstststsrqrqrqrqnmnmnmnmlklklklkjijijijihgfefefedcdcdcdcbabababa`_`_`_`_\[\[\[\[ZYZYZYZYVUVUVUVUTSTSTSTSRQRQRQRQzyzyzyzyxwxwxwxwtststsssrqrqrqrqnmnmnmnmlklklklkjijijijifefefefedcdcdcdcbabababa`_`_`_`_\[\[\[\[ZYZYZYZYVUVUVUVUTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEBABABABA@?@?@?@?;<;<;<;<:9:9:9:98787878743434343212121210/0/0/0/,+,+,+,+*)*)*)*)('('('('&%&%&%&%"!"!"!"!    - - - - RQRQRQRQPOPOPOPOLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEBABABABA@?@?@?@?;<;<;;;;:9:9:9:98787878743434343212121210/0/0/0/,+,+,+,+*)*)*)*)('('('('&%&%&%&%"!"!"!"!  - - - - RQRQRQRQPOPOPOPOLKLKLKLKJIJIJIJIHGHGHGHGFEDCDCDCBABABABA@?@?@?@?;;<;<;<;:9:9:9:98787878743434343212121210/0/0/0/,+,+,+,+*)*)*)*)('('('('&%&%&%&%"!"!"!"! - - - - RQRQRQRQPOPOPOPOLKLKLKLKJIJIJIJIHGHGHGHGDCDCDCDCBABABABA@?@?@?@?<;<;<;<;:9:9:9:98787878743434343212121210/0/0/0/,+,+,+,+*)*)*)*)('('('('&%$#$#$#"!"!"!"! - - - - RQRQRQRQPOPOPOPOLKLKLKLKJIJIJIJIHGHGHGHGDCDCDCDCBABABABA@?@?@?@?<;<;<;<;:9:9:9:98765656543434343212121210/0/0/0/,+,+,+,+*)*)*)*)('('('('$#$#$#$#"!"!"!"! - - - - RQRQRQRQPOPOPOPOLKLKLKLKJIJIJIJIHGHGHGHGDCDCDCDCBABABABA@?@?@?@?<;<;<;<;:9:9:9:96565656543434343212121210/0/0/0/,+,+,+,+*)*)*)*)('('('('$#$#$#$#"!"!"!"! - - - - RQRQRQRQPOPOPOPOLKLKLKLKJIJIJIJIHGHGHGHGDCDCDCDCBABABABA@?@?@?@?<;<;<;<;:9:9:9:96565656543434343212121210/0/0/0/,+,+,+,+*)*)*)*)('('('('$#$#$#$#"!"!"!"! - - - - RQRQRQRQPONMNMNMLKLKLKLKJIJIJIJIHGHGHGHGDCDCDCDCBABABABA@?@?@?@?<;<;<;<;:9:9:9:96565656543434343212121210/0/0/0/,+,+,+,+*)*)*)*)('('('('$#$#$#$#"!"!"!"! - - - - RQRQRQRQNMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGDCDCDCDCBABABABA@?@?@?@?;;;;;<;<:9:9:9:96565656543434343212121210/.-.-.-,+,+,+,+*)*)*)*)('('('('$#$#$#$#"!"!"!"! - - - - RQRQRQRQNMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGDCDCDCDCBABABABA@?>=>=>=;<;<;<;<:9:9:9:9656565654343434321212121.-.-.-.-,+,+,+,+*)*)*)*)('('('('$#$#$#$#"!"!"!"!   - - - - RQRQRQRQNMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGDCDCDCDCBABABABA>=>=>=>=;<;<;<;<:9:9:9:9656565654343434321212121.-.-.-.-,+,+,+,+*)*)*)*)('('('('$#$#$#$#"!"!"!"!    - - - - RQRQRQRQNMNMNMNMLKLKLKLKJIJIJIJIHGFEFEFEDCDCDCDCBABABABA>=>=>=>=;<;<;<;<:9:9:9:9656565654343434321212121.-.-.-.-,+,+,+,+*)*)*)*)('('('('$#$#$#$#"!"!"!"!    - - - - RQRQRQRQNMNMNMNMLKLKLKLKJIJIJIJIFEFEFEFEDCDCDCDCBABABABA>=>=>=>=;<;<;<;<:9:9:9:9656565654343434321212121.-.-.-.-,+,+,+,+*)*)*)*)('&%&%&%$#$#$#$#"!"!"!"!    - - - - RQRQRQRQNMNMNMNMLKLKLKLKJIJIJIJIFEFEFEFEDCDCDCDCBABABABA>=>=>=>=;<;<;<;<:9878787656565654343434321212121.-.-.-.-,+,+,+,+*)*)*)*)&%&%&%&%$#$#$#$#"!       - - - - RQRQRQRQNMNMNMNMLKLKLKLKJIJIJIJIFEFEFEFEDCDCDCDCBABABABA>=>=>=>=;<;;;;;;87878787656565654343434321212121.-.-.-.-,+,+,+,+*)*)*)*)&%&%&%&%$#$#$#$#      - - - - RQRQRQRQNMNMNMNMLKLKLKLKJIJIJIJIFEFEFEFEDCDCDCDCBABABABA>=>=>=>=<;<;<;<;87878787656565654343434321212121.-.-.-.-,+,+,+,+*)*)*)*)&%&%&%&%$#$#$#$#        - - - - RQPOPOPONMNMNMNMLKLKLKLKJIJIJIJIFEFEFEFEDCDCDCDCBABABABA>=>=>=>=<;<;<;<;87878787656565654343434321212121.-.-.-.-,+,+,+,+*)*)*)*)&%&%&%&%$#$#$#$#        - - - - POPOPOPONMNMNMNMLKLKLKLKJIJIJIJIFEFEFEFEDCDCDCDCBABABABA>=>=>=>=<;<;<;<;878787876565656543434343210/0/0/.-.-.-.-,+,+,+,+*)*)*)*)&%&%&%&%$#$#$#$#        - - - - POPOPOPONMNMNMNMLKLKLKLKJIJIJIJIFEFEFEFEDCDCDCDCBABABABA>=>=>=>=<;<;<;<;8787878765656565434343430/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)&%&%&%&%$#$#$#$#        - - - - POPOPOPONMNMNMNMLKLKLKLKJIJIJIJIFEFEFEFEDCDCDCDCBABABABA>=>=>=>=<;<;<;<;8787878765656565434343430/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)&%&%&%&%$#$#$#$#        - - - - POPOPOPONMNMNMNMLKLKLKLKJIHGHGHGFEFEFEFEDCDCDCDCBABABABA>=>=>=>=<;<;<;;;8787878765656565434343430/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)&%&%&%&%$#$#$#$#      - - - - POPOPOPONMNMNMNMLKLKLKLKHGHGHGHGFEFEFEFEDCDCDCDCBABABABA>=>=>=>=;;<;<;<;8787878765656565434343430/0/0/0/.-.-.-.-,+,+,+,+*)('('('&%&%&%&%$#$#$#$#       - - - - POPOPOPONMNMNMNMLKLKLKLKHGHGHGHGFEFEFEFEDCDCDCDCBABABABA>=>=>=>=<;:9:9:98787878765656565434343430/0/0/0/.-.-.-.-,+,+,+,+('('('('&%&%&%&%$#$#$#$#        - POPOPOPONMNMNMNMLKLKLKLKHGHGHGHGFEFEFEFEDCDCDCDCBABABABA>=>=>=>=:9:9:9:98787878765656565434343430/0/0/0/.-.-.-.-,+,+,+,+('('('('&%&%&%&%$#$#$#$#        POPOPOPONMNMNMNMLKLKLKLKHGHGHGHGFEFEFEFEDCDCDCDCBA@?@?@?>=>=>=>=:9:9:9:98787878765656565434343430/0/0/0/.-.-.-.-,+,+,+,+('('('('&%&%&%&%$#$#$#$#        POPOPOPONMNMNMNMLKLKLKLKHGHGHGHGFEFEFEFEDCDCDCDC@?@?@?@?>=>=>=>=:9:9:9:98787878765656565434343430/0/0/0/.-.-.-.-,+,+,+,+('('('('&%&%&%&%$#$#$#$#        POPOPOPONMNMNMNMLKLKLKLKHGHGHGHGFEFEFEFEDCDCDCDC@?@?@?@?>=>=>=>=:9:9:9:98787878765656565432121210/0/0/0/.-.-.-.-,+,+,+,+('('('('&%&%&%&%$#$#$#$#        POPOPOPONMNMNMNMLKLKLKLKHGHGHGHGFEFEFEFEDCDCDCDC@?@?@?@?>=>=>=>=:9:9:9:98787878765656565212121210/0/0/0/.-.-.-.-,+,+,+,+('('('('&%&%&%&%$#$#$#$#      POPOPOPONMNMNMNMLKLKLKLKHGHGHGHGFEFEFEFEDCDCDCDC@?@?@?@?>=>=>=>=:9:9:9:98787878765656565212121210/0/0/0/.-.-.-.-,+,+,+,+('('('('&%&%&%&%$#"!"!"!        POPOPOPONMNMNMNMLKJIJIJIHGHGHGHGFEFEFEFEDCDCDCDC@?@?@?@?>=>=>=>=:9:9:9:98787878765656565212121210/0/0/0/.-.-.-.-,+,+,+,+('('('('&%&%&%&%"!"!"!"!        POPOPOPONMNMNMNMJIJIJIJIHGHGHGHGFEFEFEFEDCDCDCDC@?@?@?@?>=>=>=>=:9:9:9:98787878765656565212121210/0/0/0/.-.-.-.-,+*)*)*)('('('('&%&%&%&%"!"!"!"!        POPOPOPONMNMNMNMJIJIJIJIHGHGHGHGFEFEFEFEDCDCDCDC@?@?@?@?>=>=>=>=:9:9:9:98787878765656565212121210/0/0/0/.-.-.-.-*)*)*)*)('('('('&%&%&%&%"!"!"!"!        - - - POPOPOPONMNMNMNMJIJIJIJIHGHGHGHGFEFEFEFEDCDCDCDC@?@?@?@?>=>=>=>=:9:9:9:98787878765656565212121210/0/0/0/.-.-.-.-*)*)*)*)('('('('&%&%&%&%"!"!"!"!        - - - - POPOPOPONMNMNMNMJIJIJIJIHGHGHGHGFEFEFEFEDCBABABA@?@?@?@?>=>=>=>=:9:9:9:98787878765656565212121210/0/0/0/.-.-.-.-*)*)*)*)('('('('&%&%&%&%"!"!"!"!     - - - - POPOPOPONMNMNMNMJIJIJIJIHGHGHGHGFEFEFEFEBABABABA@?@?@?@?>=<;<;<;:9:9:9:98787878765656565212121210/0/0/0/.-.-.-.-*)*)*)*)('('('('&%&%&%&%"!"!"!"!        - - - - POPOPOPONMNMNMNMJIJIJIJIHGHGHGHGFEFEFEFEBABABABA@?@?@?@?<;;;;;;<:9:9:9:98787878765434343212121210/0/0/0/.-.-.-.-*)*)*)*)('('('('&%&%&%&%"!"!"!"!        - - - - POPOPOPONMNMNMNMJIJIJIJIHGHGHGHGFEFEFEFEBABABABA@?@?@?@?;<;<;<;<:9:9:9:98787878743434343212121210/0/0/0/.-.-.-.-*)*)*)*)('('('('&%&%&%&%"!"!"!"!        - - - - POPOPOPONMNMNMNMJIJIJIJIHGHGHGHGFEFEFEFEBABABABA@?@?@?@?;<;<;<;<:9:9:9:98787878743434343212121210/0/0/0/.-.-.-.-*)*)*)*)('('('('&%&%&%&%"!"!"!"!        - - - - POPOPOPONMLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEBABABABA@?@?@?@?;<;<;<;<:9:9:9:98787878743434343212121210/0/0/0/.-.-.-.-*)*)*)*)('('('('&%&%&%&%"!"!"!"!        - - - - POPOPOPOLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEBABABABA@?@?@?@?;<;<;<;<:9:9:9:98787878743434343212121210/0/0/0/.-,+,+,+*)*)*)*)('('('('&%&%&%&%"!"!"!"!       - - - - ||{{zzyy55667788 >=<;;::9ppqqrrssAA@@??>>``aabbcc - - QQPPOONNPPQQRRSS WWVVUUTTkkllmmnn$$%%&&''xxwwvvuu99::;;<< - - 98877665ttuuvvww==<<;;::ddeeffgg MMLLKKJJTTUUVVWWSSRRQQPPooppqqrr(())**++ttssrrqq==>>??@@ - - 54433221xxyyzz{{ !!""##99887766hhiijjkkIIHHGGFFXXYYZZ[[OONNMMLLssyyzz{{,,--..//ppoonnmmAABBCCDD 100//..-||||{{zz$$%%&&''55443322llmmnnooEEDDCCBB\\]]^^__KKJJIIHH||||{{zz00112233llkkjjiiEEFFGGHH-,,++**)yyxxwwvv(())**++1100//..ppqqrrssAA@@??>>``aabbcc - - GGFFEEDDyyxwvuts44556677hhggffeeIIJJKKLL)((''&&%uuttssrr,,--..//--,,++**ttuuvvww==<<;;::ddeeffgg CCBBAA;;srrqqppo8899::;;ddccbbaaMMNNOOPP%$#"! qqppoonn00112233))((''&&xxyyzz{{ !!""##99887766hhiijjkk::998877onnmmllk<<==>>??``__^^]]QQRRSSTT%%mmllkkjj44556677%%$$##""||||{{zz$$%%&&''55443322llmmnnoo66554433kjjiihhg@@AABBCC\\[[ZZYYUUVVWWXX&&''(())iihhggff8899::;;!! yyxxwwvv(())**++1100//..ppqqrrss221100//gffeeddcDDEEFFGGXXWWVVUUYYZZ[[\\**++,,--eeddccbb<<==>>??uuttssrr,,--..//--,,++**ttuuvvww..--,,++cbbaa``_HHIIJJKKTTSSRRQQ]]^^__``..//0011aa``__^^@@AABBCCqqppoonn00112233))((''&&xxyyzz{{ !!""##**))((''_^^]]\[ZLLMMNNOOPPOONNMMaabbccdd22334455 ]]\\[[ZZDDEEFFGGmmllkkjj44556677%%$$##""||||{{zz$$%%&&''&&%%YXWWVVUUPPQQRRSSLLKKJJIIeeffgghh66778899 - - YYXXWWVVHHIIJJKKiihhggff8899::;;!! yyxxwwvv(())**++TTSSRRQQTTUUVVWW55443322HHGGFFEEiijjkkll::;;AABBUUTTSSRRLLMMNNOO - -eeddccbb<<==>>??uuttssrr,,--..//PPOONNMMXXYYZZ[[1100//..DDCCBBAAmmnnooppCCDDEEFF - - QQPPOONNPPQQRRSS aa``__^^@@AABBCCqqppoonn00112233LLKKJJII\\]]^^__--,,++**@@??>>==qqrrssttGGHHIIJJ MMLLKKJJTTUUVVWW]]\\[[ZZDDEEFFGGmmllkkjj44556677HHGGFFEE``aabbcc))((''&&<<;;::99uuvvwwxxKKLLMMNNIIHHGGFFXXYYZZ[[YYXXWWVVHHIIJJKKiihhggff8899::;; - -DDCCBBAAddeeffgg%%$$##""88776655yyzz{{||OOPPQQRREEDDCCBB\\]]^^__UUTTSSRRLLMMNNOO - -eeddccbb<<==>>?? @?>=<;;:hhiijjkk!! 44332211||{{zzyySSTTUUVVAA@@??>>``aabbcc - - QQPPOONNPPQQRRSS aa``__^^@@AABBCC:9988776llmmnnoo00//..--ssrrqqppWW]]^^__==<<;;::ddeeffgg MMLLKKJJTTUUVVWW]]\\[[ZZDDEEFFGG - - 65544332ppqqrrss,,++**))oonnmmll``aabbcc !!""##99887766hhiijjkkIIHHGGFFXXYYZZ[[YYXXWWVVHHIIJJKK 21100//.ttuuvvww((''&&%%kkjjiihhddeeffgg$$%%&&''55443322llmmnnooEEDDCCBB\\]]^^__UUTTSSRRLLMMNNOO.--,,++*xxyyzz{{$$##""!!ggffeeddhhiijjkk(())**++1100//..ppqqrrssAA@@??>>``aabbcc - - QQPPOONNPPQQRRSS*))((''&||||{{zz - - ccbbaa``llmmnnoo,,--..//--,,++**ttuuvvww==<<;;::ddeeffgg MMLLKKJJTTUUVVWW&%%$#"! yyxxwwvv __^^]]WWppqqrrss00112233))((''&&xxyyzz{{ !!""##99887766hhiijjkkIIHHGGFFXXYYZZ[[uuttssrrVVUUTTSSyyzz{{||44556677%%$$##""||||{{zz$$%%&&''55443322llmmnnooEEDDCCBB\\]]^^__%%&&''((qqppoonnRRQQPPOO||{{zzyy8899::;;!! yyxxwwvv(())**++1100//..ppqqrrssAA@@??>>``aabbcc))**++,,mmllkkjj NNMMLLKKxwvutssr<<==>>??uuttssrr,,--..//--,,++**ttuuvvww==<<;;::ddeeffgg--..//00iihhggff - - - - JJIIHHGGrqqppoon@@AABBCCqqppoonn00112233))((''&&xxyyzz{{ !!""##99887766hhiijjkk11223344 eeddccbb  - - FFEEDDCCnmmllkkjDDEEFFGGmmllkkjj44556677%%$$##""||||{{zz$$%%&&''55443322llmmnnoo55667788 - - aa``__^^ BBAA;;::jiihhggfHHIIJJKKiihhggff8899::;;!! yyxxwwvv(())**++1100//..ppqqrrss99::;;AA]]\\[[ZZ99887766feeddccbLLMMNNOO - -eeddccbb<<==>>??uuttssrr,,--..//--,,++**ttuuvvwwBBCCDDEEYYXXWWVV55443322baa``__^PPQQRRSS aa``__^^@@AABBCCqqppoonn00112233))((''&&xxyyzz{{FFGGHHIIUUTTSSRR1100//..^]]\[ZYXTTUUVVWW]]\\[[ZZDDEEFFGGmmllkkjj44556677%%$$##""||||{{zzJJKKLLMM - - QQPPOONN !!""## --,,++**WWVVUUTTXXYYZZ[[YYXXWWVVHHIIJJKKiihhggff8899::;;!! yyssrrqqNNOOPPQQ MMLLKKJJ$$%%&&''!!""##$$))((''&&SSRRQQPP\\]]^^__UUTTSSRRLLMMNNOO - -eeddccbb<<==>>??ppoonnmmRRSSTTUUIIHHGGFF(())**++%%&&''((%%OONNMMLL``aabbcc - - QQPPOONNPPQQRRSS aa``__^^@@AABBCCllkkjjiiVVWW]]^^EEDDCCBB,,--..//))**++,,KKJJIIHHddeeffgg MMLLKKJJTTUUVVWW]]\\[[ZZDDEEFFGGhhggffee__``aabbAA@@??>>00112233--..//00GGFFEEDDhhiijjkkIIHHGGFFXXYYZZ[[YYXXWWVVHHIIJJKKddccbbaaccddeeff==<<;;::4455667711223344CCBBAA@?llmmnnooEEDDCCBB\\]]^^__UUTTSSRRLLMMNNOO - -``__^^]]gghhiijj !!""##998877668899::;;<<==>>??uuttssrr,,--..//--,,++**ttuuvvww..--,,++cbbaa``_HHIIJJKKiihhggff8899::;;!! yyxxwwvv(())**++1100//..ppqqrrss99::;;AA]]\\[[ZZDDEEFFGGmmllkkjj44556677%%$$##""||||{{zz$$%%&&''AA@@??>>@@AABBCCqqppoonn00112233))((''&&xxyyzz{{ !!""##**))((''_^^]]\[ZLLMMNNOO - -eeddccbb<<==>>??uuttssrr,,--..//--,,++**ttuuvvwwBBCCDDEEYYXXWWVVHHIIJJKKiihhggff8899::;;!! yyxxwwvv(())**++==<<;;::DDEEFFGGmmllkkjj44556677%%$$##""||||{{zz$$%%&&''&&%%YXWWVVUUPPQQRRSS aa``__^^@@AABBCCqqppoonn00112233))((''&&xxyyzz{{FFGGHHIIUUTTSSRRLLMMNNOO - -eeddccbb<<==>>??uuttssrr,,--..//99887766HHIIJJKKiihhggff8899::;;!! yyxxwwvv(())**++TTSSRRQQTTUUVVWW]]\\[[ZZDDEEFFGGmmllkkjj44556677%%$$##""||||{{zzJJKKLLMM - - QQPPOONNPPQQRRSS aa``__^^@@AABBCCqqppoonn0011223355443322LLMMNNOO - -eeddccbb<<==>>??uuttssrr,,--..//PPOONNMMXXYYZZ[[YYXXWWVVHHIIJJKKiihhggff8899::;;!! yyssrrqqNNOOPPQQ MMLLKKJJTTUUVVWW]]\\[[ZZDDEEFFGGmmllkkjj44556677 1100//..PPQQRRSS aa``__^^@@AABBCCqqppoonn00112233LLKKJJII\\]]^^__UUTTSSRRLLMMNNOO - -eeddccbb<<==>>??ppoonnmmRRSSTTUUIIHHGGFFXXYYZZ[[YYXXWWVVHHIIJJKKiihhggff8899::;; - - - ---,,++**TTUUVVWW]]\\[[ZZDDEEFFGGmmllkkjj44556677HHGGFFEE``aabbcc - - QQPPOONNPPQQRRSS aa``__^^@@AABBCCllkkjjiiVVWW]]^^EEDDCCBB\\]]^^__UUTTSSRRLLMMNNOO - -eeddccbb<<==>>?? ))((''&&XXYYZZ[[YYXXWWVVHHIIJJKKiihhggff8899::;; - -DDCCBBAAddeeffgg MMLLKKJJTTUUVVWW]]\\[[ZZDDEEFFGGhhggffee__``aabbAA@@??>>``aabbcc - - QQPPOONNPPQQRRSS aa``__^^@@AABBCC%%$$##""\\]]^^__UUTTSSRRLLMMNNOO - -eeddccbb<<==>>?? @?>=<;;:hhiijjkkIIHHGGFFXXYYZZ[[YYXXWWVVHHIIJJKKddccbbaaccddeeff==<<;;::ddeeffgg MMLLKKJJTTUUVVWW]]\\[[ZZDDEEFFGG!! ``aabbcc - - QQPPOONNPPQQRRSS aa``__^^@@AABBCC:9988776llmmnnooEEDDCCBB\\]]^^__UUTTSSRRLLMMNNOO - -``__^^]]gghhiijj !!""##99887766hhiijjkkIIHHGGFFXXYYZZ[[YYXXWWVVHHIIJJKKddeeffgg MMLLKKJJTTUUVVWW]]\\[[ZZDDEEFFGG - - 65544332ppqqrrssAA@@??>>``aabbcc - - QQPPOONNPPQQRRSS WWVVUUTTkkllmmnn$$%%&&''55443322llmmnnooEEDDCCBB\\]]^^__UUTTSSRRLLMMNNOOhhiijjkkIIHHGGFFXXYYZZ[[YYXXWWVVHHIIJJKK 21100//.ttuuvvww==<<;;::ddeeffgg MMLLKKJJTTUUVVWWSSRRQQPPooppqqrr(())**++1100//..ppqqrrssAA@@??>>``aabbcc - - QQPPOONNPPQQRRSS%%&&''llmmnnooEEDDCCBB\\]]^^__UUTTSSRRLLMMNNOO.--,,++*xxyyzz{{ !!""##99887766hhiijjkkIIHHGGFFXXYYZZ[[OONNMMLLssyyzz{{,,--..//--,,++**ttuuvvww==<<;;::ddeeffgg MMLLKKJJTTUUVVWW(())**++ppqqrrssAA@@??>>``aabbcc - - QQPPOONNPPQQRRSS*))((''&||||{{zz$$%%&&''55443322llmmnnooEEDDCCBB\\]]^^__KKJJIIHH||||{{zz00112233))((''&&xxyyzz{{ !!""##99887766hhiijjkkIIHHGGFFXXYYZZ[[,,--..// - -ttuuvvww==<<;;::ddeeffgg MMLLKKJJTTUUVVWW&%%$#"! yyxxwwvv(())**++1100//..ppqqrrssAA@@??>>``aabbcc - - GGFFEEDDyyxwvuts44556677%%$$##""||||{{zz$$%%&&''55443322llmmnnooEEDDCCBB\\]]^^__00112233 - - xxyyzz{{ !!""##99887766hhiijjkkIIHHGGFFXXYYZZ[[uuttssrr,,--..//--,,++**ttuuvvww==<<;;::ddeeffgg CCBBAA;;srrqqppo8899::;;!! yyxxwwvv(())**++1100//..ppqqrrssAA@@??>>``aabbcc44556677 ||||{{zz$$%%&&''55443322llmmnnooEEDDCCBB\\]]^^__%%&&''((qqppoonn00112233))((''&&xxyyzz{{ !!""##99887766hhiijjkk::998877onnmmllk<<==>>??uuttssrr,,--..//--,,++**ttuuvvww==<<;;::ddeeffgg8899::;;yyxxwwvv(())**++1100//..ppqqrrssAA@@??>>``aabbcc))**++,,mmllkkjj44556677%%$$##""||||{{zz$$%%&&''55443322llmmnnoo66554433kjjiihhg@@AABBCCqqppoonn00112233))((''&&xxyyzz{{ !!""##99887766hhiijjkkAABBCCDDuuttssrr,,--..//--,,++**ttuuvvww==<<;;::ddeeffgg--..//00iihhggff8899::;;!! yyxxwwvv(())**++1100//..ppqqrrss221100//gffeeddcDDEEFFGGmmllkkjj44556677%%$$##""||||{{zz$$%%&&''55443322llmmnnooEEFFGGHHqqppoonn00112233))((''&&xxyyzz{{ !!""##99887766hhiijjkk11223344 eeddccbb<<==>>??uuttssrr,,--..//--,,++**ttuuvvww..--,,++cbbaa``_HHIIJJKKiihhggff8899::;;!! yyxxwwvv(())**++1100//..ppqqrrssIIJJKKLLmmllkkjj44556677%%$$##""||||{{zz$$%%&&''55443322llmmnnoo55667788 - - aa``__^^@@AABBCCqqppoonn00112233))((''&&xxyyzz{{ !!""##**))((''_^^]]\[ZLLMMNNOO - -eeddccbb<<==>>??uuttssrr,,--..//--,,++**ttuuvvwwMMNNOOPP !!""##iihhggff8899::;;!! yyxxwwvv(())**++1100//..ppqqrrss99::;;AA]]\\[[ZZDDEEFFGGmmllkkjj44556677%%$$##""||||{{zz$$%%&&''&&%%YXWWVVUUPPQQRRSS aa``__^^@@AABBCCqqppoonn00112233))((''&&xxyyzz{{QQRRSSTT$$%%&&''eeddccbb<<==>>??uuttssrr,,--..//--,,++**ttuuvvwwBBCCDDEEYYXXWWVVHHIIJJKKiihhggff8899::;;!! yyxxwwvv(())**++TTSSRRQQTTUUVVWW]]\\[[ZZDDEEFFGGmmllkkjj44556677%%$$##""||ttssrrUUVVWW]](())**++aa``__^^@@AABBCCqqppoonn00112233))((''&&xxyyzz{{FFGGHHIIUUTTSSRRLLMMNNOO - -eeddccbb<<==>>??uuttssrr,,--..//PPOONNMMXXYYZZ[[YYXXWWVVHHIIJJKKiihhggff8899::;;!! qqppoonn^^__``aa,,--..//]]\\[[ZZDDEEFFGGmmllkkjj44556677%%$$##""||||{{zzJJKKLLMM - - QQPPOONNPPQQRRSS aa``__^^@@AABBCCqqppoonn00112233LLKKJJII\\]]^^__UUTTSSRRLLMMNNOO - -eeddccbb<<==>>??mmllkkjjbbccddee00112233YYXXWWVVHHIIJJKKiihhggff8899::;;!! yyssrrqqNNOOPPQQ MMLLKKJJTTUUVVWW]]\\[[ZZDDEEFFGGmmllkkjj44556677HHGGFFEE``aabbcc - - QQPPOONNPPQQRRSS aa``__^^@@AABBCCiihhggffffgghhii44556677UUTTSSRRLLMMNNOO - -eeddccbb<<==>>??ppoonnmmRRSSTTUUIIHHGGFFXXYYZZ[[YYXXWWVVHHIIJJKKiihhggff8899::;; - -DDCCBBAAddeeffgg MMLLKKJJTTUUVVWW]]\\[[ZZDDEEFFGGeeddccbbjjkkllmm8899::;;QQPPOONNPPQQRRSS aa``__^^@@AABBCCllkkjjiiVVWW]]^^EEDDCCBB\\]]^^__UUTTSSRRLLMMNNOO - -eeddccbb<<==>>?? @?>=<;;:hhiijjkkIIHHGGFFXXYYZZ[[YYXXWWVVHHIIJJKKaa``__^^nnooppqq<<==>>??MMLLKKJJTTUUVVWW]]\\[[ZZDDEEFFGGhhggffee__``aabbAA@@??>>``aabbcc - - QQPPOONNPPQQRRSS aa``__^^@@AABBCC:9988776llmmnnooEEDDCCBB\\]]^^__UUTTSSRRLLMMNNOO - -]]WWVVUUqqppoonn@@AABBCCIIHHGGFFXXYYZZ[[YYXXWWVVHHIIJJKKddccbbaaccddeeff==<<;;::ddeeffgg MMLLKKJJTTUUVVWW]]\\[[ZZDDEEFFGG - - 65544332ppqqrrssAA@@??>>``aabbcc - - QQPPOONNPPQQRRSS TTSSRRQQmmllkkjjDDEEFFGGEEDDCCBB\\]]^^__UUTTSSRRLLMMNNOO - -``__^^]]gghhiijj !!""##99887766hhiijjkkIIHHGGFFXXYYZZ[[YYXXWWVVHHIIJJKK 21100//.ttuuvvww==<<;;::ddeeffgg MMLLKKJJTTUUVVWWPPOONNMMiihhggffHHIIJJKKAA@@??>>``aabbcc - - QQPPOONNPPQQRRSS WWVVUUTTkkllmmnn$$%%&&''55443322llmmnnooEEDDCCBB\\]]^^__UUTTSSRRLLMMNNOO.--,,++*xxyyzz{{ !!""##99887766hhiijjkkIIHHGGFFXXYYZZ[[LLKKJJIIeeddccbbLLMMNNOO==<<;;::ddeeffgg MMLLKKJJTTUUVVWWSSRRQQPPooppqqrr(())**++1100//..ppqqrrssAA@@??>>``aabbcc - - QQPPOONNPPQQRRSS*))((''&||||{{zz$$%%&&''55443322llmmnnooEEDDCCBB\\]]^^__HHGGFFEEaa``__^^PPQQRRSS99887766hhiijjkkIIHHGGFFXXYYZZ[[OONNMMLLssyyzz{{,,--..//--,,++**ttuuvvww==<<;;::ddeeffgg MMLLKKJJTTUUVVWW&%%$#"! yyxxwwvv(())**++1100//..ppqqrrssAA@@??>>``aabbcc - - DDCCBBAA]]\\[[ZZTTUUVVWW55443322llmmnnooEEDDCCBB\\]]^^__KKJJIIHH||||{{zz00112233))((''&&xxyyzz{{ !!""##99887766hhiijjkkIIHHGGFFXXYYZZ[[uuttssrr,,--..//--,,++**ttuuvvww==<<;;::ddeeffgg ;;::9988YYXXWWVVXXYYZZ[[1100//..ppqqrrssAA@@??>>``aabbcc - - GGFFEEDDyyxwvuts44556677%%$$##""||||{{zz$$%%&&''55443322llmmnnooEEDDCCBB\\]]^^__%%&&''((qqppoonn00112233))((''&&xxyyzz{{ !!""##99887766hhiijjkk77665544UUTTSSRR\\]]^^__--,,++**ttuuvvww==<<;;::ddeeffgg CCBBAA;;srrqqppo8899::;;!! yyxxwwvv(())**++1100//..ppqqrrssAA@@??>>``aabbcc))**++,,mmllkkjj44556677%%$$##""||||{{zz$$%%&&''55443322llmmnnoo33221100QQPPOONN``aabbcc))((''&&xxyyzz{{ !!""##99887766hhiijjkk::998877onnmmllk<<==>>??uuttssrr,,--..//--,,++**ttuuvvww==<<;;::ddeeffgg--..//00iihhggff8899::;;!! yyxxwwvv(())**++1100//..ppqqrrss//..--,,MMLLKKJJddeeffgg%%$$##""||||{{zz$$%%&&''55443322llmmnnoo66554433kjjiihhg@@AABBCCqqppoonn00112233))((''&&xxyyzz{{ !!""##99887766hhiijjkk11223344 eeddccbb<<==>>??uuttssrr,,--..//--,,++**ttuuvvww++**))((IIHHGGFFhhiijjkk!! yyxxwwvv(())**++1100//..ppqqrrss221100//gffeeddcDDEEFFGGmmllkkjj44556677%%$$##""||||{{zz$$%%&&''55443322llmmnnoo55667788 - - aa``__^^@@AABBCCqqppoonn00112233))((''&&xxyyzz{{ !!""##''&&%%EEDDCCBBllmmnnooppqqfpvbHAZJltJQr˂pJtArdrXQJ`tAJlnvp|ZdQ`f~Zp˂|dtA`JXQrdQbtrXQJ`nXv`p˂rbdQZ|ZHAb|ZdQےbHAtbdQZfH~btlHfpvrXQJ`Jlt˂pZlJtArےbHAf~HXQJ`ے`vXnے`JXbtlZp˂|drf`vXJtArdnXvےbHAbnvHAbےdtlZp˂fpvbHAZvpfQr˂pJfpvrXQJ`tAJlnvp|ZdQ`f~Zp˂pfH`JXQrJfpvrXQJ`nXv`p˂rH~fZHAbnXvےbHAtbdQZfH~btlHfpvrXQJ`f`vX˂pZnvfےbHAf~HXQJ`ے`vXnے`JX`f~Zp˂|drf`vXJtArdnXvےbHAnvpHAb~HfpZp˂fpvbHAZvpfQrZHAHfpvrXQJ`tAJlnvp|ZdQ`f~Zp˂fH~˂pZHAvnXrXQJ`nXv`p˂rH~bے`nXvےbHAtbdQZfے`JbtlHfpvrXQJ`f`vXbے`v`fےbHAf~HXQJ`ےvpfHJXQr`f~Zp˂|drXQr˂JtArdnXvےbHAnvpJXQr~HfpZp˂fpvbHAZ~f`˂pZHAHfpvrXQJ`tAJlpZHAb|ZdQ`f~Zp˂fH~˂pZHAvnXrXQJ`nXv`p˂rvXnbے`nXvےbHAtbdQZے`JbtlHfpvrXQJ`f`vXbے`v`f~ےbHAf~HXQJ`ےvpfHJXQr`f~Zp˂|drXQr˂JtArdnXvےJlnvpJXQHAbfpvZp˂fpvbHAZ~f`˂pZHAHfpvrXQJ`tAJlpZHAb|ZdQ`f~tbdQZfH~ے`JnXv`rXQJ`tAJlnXv`p˂rvXH~bJAdnXvےbHAtbdQZے`JbtlHfpv|drf`vXXQr˂f~HےbHAtbdQZf~HXQJ`ےf`v|ZdQ`f~Zp˂|dtAXQr˂JtArdnXvtAJlnvppZHAbfpvZp˂|drfpvbHAZXnvbtlHfpvrXQJ`JltpZHAb|ZdQ`f~tbdQZfH~ے`JnXv`rXQJ`tAJlnXv`p˂rpfH~JtArdnXvےbHAbnvے`JbtlHfpv|drf`vXXQr˂f~HےbHAtbdQZf~HXQJ`ےf`v|ZdQ`f~Zp˂pfHXQr˂JtArdnXvtAJlnvpp`JXQfvnXZp˂|drfpvJltXnvbtlHfpvrXQJ`f`vXpZHAb|ZdQ`fHtbdQZfH~rbtv`frXQJ`tAJlnXv`drtAJp`vXJtArdnXvےbHAnvpے`Jbtlfpv|drf`vXl|ZdQ~HfpےbHAtbdQZf~Hltbnvp|ZdQ`f~Zp˂fH~XQr˂JtArdnrXQJtAJlnvpbtlvnXZp˂|drfpvdQZ|fH~btlHfpvrXQJ`f`vXpZHAb|ZdQ`ےHAtbdQZfH~JtArdv`frXQJ`tAJlnXv`drtAJf`vXJtArdnXvےbHAnvpے`JbtlZp˂|drf`vX|ZdQ~HfpےJltbdQZf~Hltbnvp|ZdQ`f~Zp˂fH~XQr˂JtArdrXQJ`tAJlnvpbtlvnvftbdQZ|dtAfpvdQZ|lfH~btlHfpvrXQJ`f`vXpZHAb|ZdQےbHAtbdQZfH~JtArd~Hf|drJltnXv`tbdQvpfJtArdnXvےJlnvpے`JbtlZp˂|drf`vXtlJpvntAJlbnvf~HZ|dے`JXQ|ZdQ`f~tbdQZfH~XQr˂JtArdrXQJ`tAJlnvptArdXv`ftbdQZpfHfpvrtAJlrZHAbtlHfpv|drf`vXpZHAb|ZdQےbHAtbdQZfH~|ZdQb~Hf|drf`vXnXv`tbdQbے`JtArdnXvtAJlnvpے`JbtlZp˂|drf`vXtlJpvntAJlnvpp˂rZ|dJXQr|ZdQ`f~tbdQZfH~XQr˂JfpvrXQJ`tAJlnvptArdXv`ftbdQZfH~XQJ`ےrtAdQZpZHAbtlHfpv|drf`vXpZHAbnXvےbHAtbdQZfH~|ZdQtAfpv|drf`vXbHAZ|drbے`JtArdnXvtAJlnvpے`J`f~Zp˂|drf`vXrd|nrXQJtAJlnvpp˂rtAJlJXQr|ZdQ`fHtbdQZfH~XQr˂HfpvrXQJ`tAJlnvpZdQbt`ےHAtbdQZfH~XQJ`ےtbdQZpZAbbtlfpv|drf`vXpZHAbnXvےbHAtbdQZfے`JlJtAZp˂|drf`vXbHAZ|dr`JXQrJtArdnrXQJtAJlnvpے`J`f~Zp˂|drXQHAbrd|rXQJ`tAJlnvpp˂rtAJl璀˂pZ|ZdQ`ےHAtbdQZfH~XQr˂HfpvrXQJ`tAJlے`JXQZdQbtےbHAtbdQZfH~XQJ`ےtdrtAHAbےbtlZp˂|drf`vXpZHAnXvےbHAtbdQZr˂pl|ZZp˂|drf`vXbHAZJlt`JXQrJtArdrXQJ`tAJlnvpے`JXQ`f~Zp˂|drZHAbdQbtrXQJ`tAJlnvpp˂rbdQZ|˂pZ|ZdQےbHAtbdQZfH~rbtHfpvrXQJ`tAJlے`JXQlJtArےbHAtbdQZfH~XQJ`ےdrtAHAbbtlZp˂|drf`vXlJtAdnXvےbHAtbdQZr˂pd|ZZp˂|drf`vXnvpے`J`f~Zp˂|drf`vXJtArdv`ftbdnvpے`J`f~Zp˂|drXQr˂JtArdnXvےbHA`vXH`JXQ`f~Zp˂|drXQr˂JtArdnXvےJlnvpbے`f۝`vfH~XQr˂HfpvrXQJ`tAJlnvp|ZdQ~HfpQZ|rfH~XQr˂HfpvrXQJ`tAJlpZHAb|ZdQ`f~Zp˂~f`rbtHfpvrXQJ`tAJlpZHAb|ZdQ`f~tbdQZfH~JXQrXnvf`vXpZHAbnXvےbHAtbdQZfے`Jbtlv~AJltf`vXpZHAnXvےbHAtbdQZے`JbtlHfpvrXQJ`vXnlJtAdnXvےbHAtbdQZے`JbtlHfpv|drf`vX˂pZHApfH~nvpے`J`f~Zp˂|drXQr˂JtArdHfpvbdQZ|nvpے`JXQ`f~Zp˂|drXQr˂JtArdnXvےJlvpfH|ZdQ`f~Zp˂|dtAXQr˂JtArdnXvtAJlnvpbے`f۝`vfH~XQr˂HfpvrXQJ`tAJlpZHAb|ZdQnXvdrtAfH~rbtHfpvrXQJ`tAJlpZHAb|ZdQ`f~tdrtA~f`btlHfpvrXQJ`JltpZHAb|ZdQ`f~tbdQZfH~JXQrXnvf`vXpZHAnXvےbHAtbdQZے`Jbtl`f~Jltf`vXlJtAdnXvےbHAtbdQZے`JbtlHfpvJltvXnJtArdnXvےbHAbnvے`JbtlHfpv|drf`vX˂p`ZpfH~nvpے`JXQ`f~Zp˂|drXQr˂JtArdHfpvbdQZ|nvp|ZdQ`f~Zp˂|dtAXQr˂JtArdnXvbdQZ|vp`v|ZdQ`f~Zp˂pfHXQr˂JtArdnXvtAJlnvpQXb㉀ۅf۝`vfH~rbtHfpvrXQJ`tAJlpZHAb|ZdQnXvdrtAfH~btlHfpvrXQJ`JltpZHAb|ZdQ`f~drtAXnvbtlHfpvrXQJ`f`vXpZHAb|ZdQ`fHtbdQZfH~pJAHrXnvf`vXlJtAdnXvےbHAtbdQZے`Jbtl`pvJbdQf`vXJtArdnXvےbHAbnvے`JbtlHfpvJltpfH~JtArdnXvےbHAnvpے`Jbtlfpv|drf`vXˁ`ZpfH~nvp|ZdQ`f~Zp˂|dtAXQr˂JtArdnrXQJZ|dnvp|ZdQ`f~Zp˂pfHXQr˂JtArdnXvbdQZ|f`v|ZdQ`f~Zp˂fH~XQr˂JtArdnrXQJtAJlnvpQXb㉀ۅf۝`vfH~btlHfpvrXQJ`JltpZHAb|ZdQ`p˂rtAJlfH~btlHfpvrXQJ`f`vXpZHAb|ZdQ`fHltbXnvbtlHfpvrXQJ`f`vXpZHAb|ZdQ`ےHAtbdQZfH~pJAHrXnvf`vXJtArdnXvےbHAbnvے`JbtlrXQJ`tbdQf`vXJtArdnXvےbHAnvpے`JbtlfpvdQZ|pfH~JtArdnXvےbHAnvpے`JbtlZp˂|drf`vXۑppfH~nvp|ZdQ`f~Zp˂pfHXQr˂JtArdےbHAZ|dnvp|ZdQ`f~Zp˂fH~XQr˂JtArdnrXQJdrtAJvp|ZdQ`f~Zp˂fH~XQr˂JtArdrXQJ`tAJlnvpJAHr󙐅f۝`vfH~btlHfpvrXQJ`f`vXpZHAb|ZdQZp˂rtAJlfے`JbtlHfpvrXQJ`f`vXpZHAb|ZdQ`ےHAltbfے`JbtlHfpvrXQJ`f`vXpZHAb|ZdQےbHAtbdQZfH~ˁ`ZQXXnvf`vXJtArdnXvےbHAnvpے`JbtlrXQJ`tbQZXQr˂JtArdnXvےbHAnvpے`JbtlZp˂dQZ|XQrZHJtArdnXvےJlnvpے`JbtlZp˂|drf`vXb㉀ۑpp|dnvp|ZdQ`f~Zp˂fH~XQr˂JtArdےbHAdrtAJpZHAb|ZdQ`f~Zp˂fH~XQr˂JtArdrXQJ`drtAdQAbے`|ZdQ`f~tbdQZfH~XQr˂JtArdrXQJ`tAJlnvpJAHrrQtJlfے`JbtlHfpvrXQJ`f`vXpZHAb|ZdQXQJ`ےltbے`JbtlHfpvrXQJ`f`vXpZHAb|ZdQےbHAZ|dJXQrbtlHfpv|drf`vXpZHAb|ZdQےbHAtbdQZfH~ˁ`ZQXtbAdXQr˂JtArdnXvےbHAnvpے`JbtlbHAZdQZ|XQr˂JtArdnXvےJlnvpے`JbtlZp˂rtAJl˂pZHJtArdnXvtAJlnvpے`JbtlZp˂|drf`vXAHr󙐂Z|dpZHAb|ZdQ`f~Zp˂fH~XQr˂JtArdp˂rdrtAJpZHAb|ZdQ`f~tbdQZfH~XQr˂JtArdrXQJ`tbdQAbے`|ZdQ`f~tbdQZfH~XQr˂JfpvrXQJ`tAJlnvp`ZQXbrQtJlے`JbtlHfpvrXQJ`f`vXpZHAb|ZdQXQJ`ےltbے`JbtlHfpv|drf`vXpZHAb|ZdQےbHAZ|dJXQrbtlHfpv|drf`vXpZHAbnXvےbHAtbdQZfH~ۑpJtbAdXQr˂JtArdnXvےJlnvpے`JbtlbHAZdQZ|XQr˂JtArdnXvtAJlnvpے`JbtlZp˂rtAJl˂pZAbJtArdnXvtAJlnvpے`J`f~Zp˂|drf`vXAHr󙐂Z|dpZHAb|ZdQ`f~tbdQZfH~XQr˂JtArdp˂AJltpZHAb|ZdQ`f~tbdQZfH~XQr˂JfpvrXQJ`tdr`JXQ|ZdQ`fHtbdQZfH~XQr˂HfpvrXQJ`tAJlnvp`ZQXbrQtJlے`JbtlHfpv|drf`vXpZHAb|ZdQbHAZpbnvے`JbtlHfpv|drf`vXpZHAbnXvےbHAtAJlr˂pbtlfpv|drf`vXpZHAbnXvےbHAtbdQZfZHAbۑp`tbAdXQr˂JtArdnXvtAJlnvpے`Jbtl˂rXQpfHXQr˂JtArdnXvtAJlnvpے`J`f~Zp˂tbdQZZHAbJtArdnrXQJtAJlnvpے`J`f~Zp˂|drے`JZQXb㉀Z|dpZHAb|ZdQ`f~tbdQZfH~XQr˂JfpvJ`ےf`vXpZHAb|ZdQ`fHtbdQZfH~XQr˂HfpvrXQJ`|drے`JXQ|ZdQ`ےHAtbdQZfH~XQr˂HfpvrXQJ`tAJlXQr˂ۑpJAHrQtJlے`JbtlHfpv|drf`vXpZHAb~HbHAZpnvpے`Jbtlfpv|drf`vXpZHAbnXvےbHAtAJlr˂pbtlZp˂|drf`vXpZHAnXvےbHAtbdQZpZHAbr󙐂ˁ`tbAdXQr˂JtArdnXvtAJlnvpے`Jfpv˂rXQfH~XQr˂JtArdnrXQJtAJlnvpے`J`f~Zp˂tbdQZZHAbJtArdrXQJ`tAJlnvpے`JXQ`f~Zp˂|drے`JZQXb㉀Z|dpZHAb|ZdQ`fHtbdQZfH~XQr˂nXv`J`p˂f`vXpZHAb|ZdQ`ےHAtbdQZfH~XQr˂HfpvrXQJ`|ltJQr|ZdQےbHAtbdQZfH~rbtHfpvrXQJ`tAJlXQr˂ۑpJAHrQtJlے`Jbtlfpv|drf`vXpZHAbf~HrXQJnvpے`JbtlZp˂|drf`vXpZHAnXvےbHAbnvpZHAbtlZp˂|drf`vXlJtAdnXvےbHAtbdQZp`JXQf۝`vtbAdXQr˂JtArdnrXQJtAJlnvpے`Jfpv`ےbfH~XQr˂JtArdrXQJ`tAJlnvpے`JXQ`f~Zp˂p`vXbے`JtArdrXQJ`tAJlnvp|ZdQ`f~Zp˂|dtAr˂pXnvZ|dpZHAb|ZdQ`ےHAtbdQZfH~XQr˂nXv`HAZp˂f`vXpZHAb|ZdQےbHAtbdQZfH~rbtHfpvrXQJ`nvpJXQr|ZdQےbHAtbdQZfH~btlHfpvrXQJ`JltZHAbpfH~rQtJlے`JbtlZp˂|drf`vXpZHApvnrXQJnvpے`JbtlZp˂|drf`vXlJtAdnXvےbHAfH~pZHAbtlZp˂|drf`vXJtArdnXvےbHAbnvے`JXQf۝`vtbAdXQr˂JtArdrXQJ`tAJlnvpے`JXQXv`f`ےbfH~XQr˂JtArdrXQJ`tAJlnvp|ZdQ`f~Zp˂f`vXbے`JfpvrXQJ`tAJlnvp|ZdQ`f~Zp˂pfHr˂pXnvZ|dpZHAb|ZdQےbHAtbdQZfH~rbt璐~HfHAXQJ`f`vXpZHAb|ZdQےbHAtbdQZfH~btlHfpvrXQJ`nvpJXQrZnXvےbHAtbdQZfH~btlHfpvrXQJ`f`vXZHAbpfH~rQtJlے`JbtlZp˂|drf`vXlJtAdpvnےJlnvpے`JbtlZp˂|drf`vXJtArdnXvےbHAfH~HAbے`f~Zp˂|drf`vXJtArdnXvےbHAnvp˂pZf۝`vtbAdXQr˂JtArdrXQJ`tAJlnvp|ZdQXv`ftbQZdfH~XQr˂JfpvrXQJ`tAJlnvp|ZdQ`f~Zp˂vpf`JXQrHfpvrXQJ`tAJlnvp|ZdQ`f~Zp˂fH~HAbےXnvZ|dpZHAb|ZdQےbHAtbdQZfH~btl~HXrtAJlf`vXpZHAbnXvےbHAtbdQZfH~btlHfpvrXQJ`H~f˂pZnXvےbHAtbdQZfے`JbtlHfpvrXQJ`f`vX`JXQrpfH~rQtJlے`JbtlZp˂|drf`vXJtArdv`ftbdnvpے`J`f~Zp˂|drf`vXJtArdnXvےbHA`vXnHAbے`f~Zp˂|drXQr˂JtArdnXvےbHAnvp˂pZf۝`vtbAdXQr˂JfpvrXQJ`tAJlnvp|ZdQ~HfpQZ|dfH~XQr˂HfpvrXQJ`tAJlnvp|ZdQ`f~Zp˂vpf`JXQrHfpvrXQJ`tAJlpZHAb|ZdQ`f~Zp˂fH~HAbےXnvZ|dpZHAbnXvےbHAtbdQZfH~btlvnXrtAJlf`vXpZHAbnXvےbHAtbdQZfے`JbtlHfpvrXQJ`H~f˂pZAnXvےbHAtbdQZے`JbtlHfpvrXQJ`f`vX`JXQHApfH~rQtJltuvwxyz{||{zyxwv------------............................ \ No newline at end of file diff --git a/barcode-generator/Resources/data/qrv27_3.dat b/barcode-generator/Resources/data/qrv27_3.dat deleted file mode 100644 index 468ef04..0000000 --- a/barcode-generator/Resources/data/qrv27_3.dat +++ /dev/null @@ -1,249 +0,0 @@ -|{|{|{|{zyzyzyzyxwxwxwxwvuvuvuvurqrqrqrqpopopoponmnmnmnmlklklklkjijijijihghghghgfefefefedcdcdcdcbabababa`_^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJI|{|{|{|{zyzyzyzyxwxwxwxwvuvuvuvurqrqrqrqpopopoponmnmnmnmlklklklkjijijijihghghghgfefefefedcdcdcdcbabababa^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJI|{|{|{|{zyzyzyzyxwxwxwxwvuvuvuvurqrqrqrqpopopoponmnmnmnmlklklklkjijijijihghghghgfefefefedcdcdcdcbabababa^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVURQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJI|{|{|{|{zyzyzyzyxwxwxwxwvuvuvuvurqrqrqrqpopopoponmnmnmnmlklklklkjijijijihghghghgfefefefedcdcdcdcba`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVURQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJI|{|{|{|{zyzyzyzyxwxwxwxwtstststsrqrqrqrqpopopoponmnmnmnmlklklklkjijijijihghghghgfefefefedcdcdcdc`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJI|{|{|{|{zyzyzyzyxwxwxwxwssssststrqrqrqrqpopopoponmnmnmnmlklklklkjijijijihghghghgfefefefedcdcdcdc`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWWWTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJI|{|{|{|{zyzyzyzyxwxwxwxwststststrqrqrqrqpopopoponmnmnmnmlklklklkjijijijihghghghgfefefefedcbababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYWWXWXWXWTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJI|{|{|{|{zyzyzyzyxwxwxwxwststststrqrqrqrqpopopoponmnmnmnmlklklklkjijijijihghghghgfefefefebabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJI|{|{|{|{zyzyzyzyxwxwxwxwststststrqrqrqrqpopopoponmnmnmnmlklklklkjijijijihghghghgfefefefebabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHG|{|{|{|{zyzyzyzyxwxwxwxwststststrqrqrqrqpopopoponmnmnmnmlklklklkjijijijihghghghgfedcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHG|{|{|{|{zyzyzyzyxwxwxwxwststststrqrqrqrqpopopoponmnmnmnmlklklklkjijijijihghghghgdcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHG|{|{|{|{zyzyzyzyxwxwxwxwstssssssrqrqrqrqpopopoponmnmnmnmlklklklkjijijijihghghghgdcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHG|{|{|{|{zyzyzyzyxwxwxwxwtstststsrqrqrqrqpopopoponmnmnmnmlklklklkjijijijihgfefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHG|{|{|{|{zyzyzyzyxwxwxwxwtstststsrqrqrqrqpopopoponmnmnmnmlklklklkjijijijifefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHG|{|{|{|{zyzyzyzyvuvuvuvutstststsrqrqrqrqpopopoponmnmnmnmlklklklkjijijijifefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[XWWWWWWXVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHG|{|{|{|{zyzyzyzyvuvuvuvutstststsrqrqrqrqpopopoponmnmnmnmlklklklkjihghghgfefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[WXWXWXWXVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHG|{|{|{|{zyzyzyzyvuvuvuvutstststsrqrqrqrqpopopoponmnmnmnmlklklklkhghghghgfefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[WXWXWXWXVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHG|{|{|{|{zyzyzyzyvuvuvuvutststsssrqrqrqrqpopopoponmnmnmnmlklklklkhghghghgfefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[WXWXWXWXVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHG|{|{|{|{zyzyzyzyvuvuvuvussstststrqrqrqrqpopopoponmnmnmnmlkjijijihghghghgfefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[WXWXWXWXVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHG|{|{|{|{zyzyzyzyvuvuvuvuststststrqrqrqrqpopopoponmnmnmnmjijijijihghghghgfefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[WXWXWXWXVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHG|{|{|{|{zyzyzyzyvuvuvuvuststststrqrqrqrqpopopoponmnmnmnmjijijijihghghghgfefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[WXWXWWWWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIHGHGHGHGHGHGHG|{|{|{|{zyzyzyzyvuvuvuvuststststrqrqrqrqpopopoponmlklklkjijijijihghghghgfefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[WWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKHGHGHGHGHGHGHGHG|{|{|{|{zyzyzyzyvuvuvuvuststststrqrqrqrqpopopopolklklklkjijijijihghghghgfefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]\[ZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKHGHGHGHGHGHGHGHG|{|{|{|{zyzyzyzyvuvuvuvuststststrqrqrqrqpopopopolklklklkjijijijihghghghgfefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKJIJIJIHGHGHGHGHGHGHGHG|{|{|{|{xwxwxwxwvuvuvuvusssssstsrqrqrqrqponmnmnmlklklklkjijijijihghghghgfefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMJIJIJIJIHGHGHGHGHGHGHGHG|{|{|{|{xwxwxwxwvuvuvuvutstststsrqrqrqrqnmnmnmnmlklklklkjijijijihghghghgfefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMJIJIJIJIHGHGHGHGHGFEFEFE|{|{|{|{xwxwxwxwvuvuvuvutstststsrqrqrqrqnmnmnmnmlklklklkjijijijihghghghgfefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMLKLKLKJIJIJIJIHGHGHGHGFEFEFEFE|{|{|{|{xwxwxwxwvuvuvuvutstststsrqpopoponmnmnmnmlklklklkjijijijihghghghgfefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]ZYZYZYZYWWWWWXWXVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPOLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFE|{|{|{|{xwxwxwxwvuvuvuvutstststspopopoponmnmnmnmlklklklkjijijijihghghghgfefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]ZYZYZYZYWXWXWXWXVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPOLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEzyzyzyzyxwxwxwxwvuvuvuvutstststspopopoponmnmnmnmlklklklkjijijijihghghghgfefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]ZYZYZYZYWXWXWXWXVUVUVUVUTSTSTSTSRQRQRQRQPONMNMNMLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEzyzyzyzyxwxwxwxwvuvuvuvutstststspopopoponmnmnmnmlklklklkjijijijihghghghgfefefefedcdcdcdcbabababa`_`_`_`_^]^]^]^]ZYZYZYZYWXWXWXWXVUVUVUVUTSTSTSTSRQRQRQRQNMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEzyzyzyzyxwxwxwxwvuvuvuvuqqqqqqrqpopopoponmnmnmnmlklklklkjijijijihghghghgfefefefedcdcdcdcbabababa`_`_`_`_^]\[\[\[ZYZYZYZYWXWXWXWXVUVUVUVUTSTSTSTSRQRQRQRQNMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEzyzyzyzyxwxwxwxwvuvuvuvurqrqrqrqpopopoponmnmnmnmlklklklkjijijijihghghghgfefefefedcdcdcdcbabababa`_`_`_`_\[\[\[\[ZYZYZYZYWXWXWXWXVUVUVUVUTSTSTSTSRQPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEzyzyzyzyxwxwxwxwvuvuvuvurqrqrqrqpopopoponmnmnmnmlklklklkjijijijihghghghgfefefefedcdcdcdcbabababa`_`_`_`_\[\[\[\[ZYZYZYZYWXWWWWWWVUVUVUVUTSTSTSTSPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGFEFEFEFEFEFEFEFEDCDCDCDCBABABABA@?@?@?@?;<;<;<;<:9:9:9:9878787876565656543434343212121210/0/0/0/.-.-.-.-,+,+,+,+('('('('&%&%&%&%$#$#$#$#"!"!"!"!        - - - - FEFEFEFEDCDCDCDCBABABABA@?@?@?@?;<;<;<;<:9:9:9:9878787876565656543434343212121210/0/0/0/.-.-.-.-,+,+,+,+('('('('&%&%&%&%$#$#$#$#"!"!"!"!       - - - - FEFEFEFEDCDCDCDCBABABABA@?@?@?@?;<;<;<;<:9:9:9:9878787876565656543434343212121210/0/0/0/.-.-.-.-,+*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!       - - - - FEFEFEFEDCDCDCDCBABABABA@?@?@?@?;<;<;<;<:9:9:9:9878787876565656543434343212121210/0/0/0/.-.-.-.-*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!     - - - - FEFEFEFEDCDCDCDCBABABABA@?@?@?@?;<;<;<;<:9:9:9:9878787876565656543434343212121210/0/0/0/.-.-.-.-*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!    - FEFEFEFEDCDCDCDCBABABABA@?@?@?@?;<;<;;;;:9:9:9:9878787876565656543434343212121210/0/0/0/.-,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!    FEFEFEFEDCDCDCDCBABABABA@?@?@?@?;;<;<;<;:9:9:9:9878787876565656543434343212121210/0/0/0/,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!    FEFEFEFEDCDCDCDCBABABABA@?>=>=>=<;<;<;<;:9:9:9:9878787876565656543434343212121210/0/0/0/,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!    - - - FEFEFEFEDCDCDCDCBABABABA>=>=>=>=<;<;<;<;:9:9:9:9878787876565656543434343212121210/.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!    - - - - FEFEFEFEDCDCDCDCBABABABA>=>=>=>=<;<;<;<;:9:9:9:987878787656565654343434321212121.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!       - - - - FEFEFEFEDCDCDCDCBABABABA>=>=>=>=<;<;<;<;:9:9:9:987878787656565654343434321212121.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#   - - - - FEFEFEFEDCDCDCDCBABABABA>=>=>=>=<;<;<;<;:9:9:9:9878787876565656543434343210/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#     - - - - FEFEFEFEDCDCDCDCBABABABA>=>=>=>=;;;;;<;<:9:9:9:98787878765656565434343430/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#     - - - - FEFEFEFEDCDCDCDCBABABABA>=>=>=>=;<;<;<;<:9:9:9:98787878765656565434343430/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#       - - - - FEFEFEFEDCDCDCDCBABABABA>=>=>=>=;<;<;<;<:9:9:9:98787878765656565432121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#        - - - - FEFEFEFEDCDCDCDCBABABABA>=>=>=>=;<;<;<;<:9:9:9:98787878765656565212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#        - - - - FEFEFEFEDCDCDCDCBA@?@?@?>=>=>=>=;<;<;<;<:9:9:9:98787878765656565212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#      - - - - FEFEFEFEDCDCDCDC@?@?@?@?>=>=>=>=;<;<;<;<:9:9:9:98787878765434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#       - - - - FEFEFEFEDCDCDCDC@?@?@?@?>=>=>=>=;<;;;;;;:9:9:9:98787878743434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#"!"!"!        - - - - FEFEFEFEDCBABABA@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:98787878743434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%"!"!"!"!        - - - - FEFEFEFEBABABABA@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:98765656543434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%"!"!"!"!        - - - - FEFEFEFEBABABABA@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:96565656543434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%"!"!"!"!        - - - - FEDCDCDCBABABABA@?@?@?@?>=>=>=>=<;<;<;<;:9:9:9:96565656543434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%"!"!"!"!        - - - - DCDCDCDCBABABABA@?@?@?@?>=>=>=>=<;<;<;<;:98787876565656543434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%"!"!"!"!      - - - - DCDCDCDCBABABABA@?@?@?@?>=>=>=>=<;<;<;;;878787876565656543434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%"!"!"!"!        - - - - DCDCDCDCBABABABA@?@?@?@?>=>=>=>=;;<;<;<;878787876565656543434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%"!"!"!"!        - - - - DCDCDCDCBABABABA@?@?@?@?>=>=>=>=<;:9:9:9878787876565656543434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%"!"!"!"!        - - - - DCDCDCDCBABABABA@?@?@?@?>=>=>=>=:9:9:9:9878787876565656543434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%$#$#$#"!"!"!"!        - - - - DCDCDCDCBABABABA@?@?@?@?>=>=>=>=:9:9:9:9878787876565656543434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('$#$#$#$#"!"!"!"!        - - - - DCDCDCDCBABABABA@?@?@?@?>=>=>=>=:9:9:9:9878787876565656543434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('$#$#$#$#"!"!"!"!     - - - - DCDCDCDCBABABABA@?@?@?@?>=>=>=>=:9:9:9:9878787876565656543434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('&%&%&%$#$#$#$#"!"!"!"!        - - - - DCDCDCDCBABABABA@?@?@?@?>=>=>=>=:9:9:9:9878787876565656543434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)&%&%&%&%$#$#$#$#"!"!"!"!        - - - - DCDCDCDCBABABABA@?@?@?@?>=<;<;<;:9:9:9:9878787876565656543434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)&%&%&%&%$#$#$#$#"!"!"!"!        - - - - DCDCDCDCBABABABA@?@?@?@?<;;;;;;<:9:9:9:9878787876565656543434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)('('('&%&%&%&%$#$#$#$#"!"!"!"!        - - - - ||{{zzyy JJIIHHGGhhiijjkkaa``__^^(())**++IIHHGGFF@@AABBCC1100//..XXYYZZ[[ppqqrrssllkkjjii99::;;AAllmmnnoouuttssrr]]\\[[ZZ,,--..//xxwwvvuu!!""##$$FFEEDDCCllmmnnoo]]\\[[ZZ,,--..//EEDDCCBBDDEEFFGG--,,++**\\]]^^__ttuuvvwwhhggffeeBBCCDDEEppqqrrssqqppoonnYYXXWWVV00112233ttssrrqq%%&&''((BBAA;;::ppqqrrssYYXXWWVV00112233AA@@??>>HHIIJJKK))((''&&``aabbccxxyyzz{{ - - ddccbbaaFFGGHHIIttuuvvwwmmllkkjjUUTTSSRR44556677ppoonnmm))**++,,99887766yyzz{{||UUTTSSRR44556677==<<;;::LLMMNNOO%%$$##""ddeeffgg - -||||{{zz ``__^^]]JJKKLLMMxxyyzz{{ - - iihhggff !!""##QQPPOONN8899::;;llkkjjii--..//0055443322||{{zzyy !!""##QQPPOONN8899::;;99887766PPQQRRSS!! hhiijjkk yyxxwwvvWWVVUUTTNNOOPPQQ ||||{{zz eeddccbb$$%%&&''MMLLKKJJ<<==>>??hhggffee112233441100//..xwvutssr$$%%&&''MMLLKKJJ<<==>>??55443322TTUUVVWWllmmnnoouuttssrrSSRRQQPPRRSSTTUU - - yyxxwwvvaa``__^^(())**++IIHHGGFF@@AABBCCddccbbaa55667788--,,++**rqqppoon(())**++IIHHGGFF@@AABBCC1100//..XXYYZZ[[ppqqrrssqqppoonnOONNMMLLVVWW]]^^uuttssrr]]\\[[ZZ,,--..//EEDDCCBBDDEEFFGG``__^^]]99::;;<<))((''&&nmmllkkj,,--..//EEDDCCBBDDEEFFGG--,,++**\\]]^^__ttuuvvwwmmllkkjjKKJJIIHH__``aabbqqppoonnYYXXWWVV00112233AA@@??>>HHIIJJKK\\[[ZZYY==>>??@@%%jiihhggf00112233AA@@??>>HHIIJJKK))((''&&``aabbccxxyyzz{{ - - iihhggff !!""##GGFFEEDDccddeeffmmllkkjjUUTTSSRR44556677==<<;;::LLMMNNOOEEDDCCBBXXWWVVUUAABBCCDDfeeddccb44556677==<<;;::LLMMNNOO%%$$##""ddeeffgg - -||||{{zz eeddccbb$$%%&&''CCBBAA;;gghhiijj - - iihhggff !!""##QQPPOONN8899::;;99887766PPQQRRSSAA@@??>>TTSSRRQQEEFFGGHHbaa``__^8899::;;99887766PPQQRRSS!! hhiijjkk yyxxwwvvaa``__^^(())**++::998877kkllmmnn eeddccbb$$%%&&''MMLLKKJJ<<==>>??55443322TTUUVVWW==<<;;::PPOONNMMIIJJKKLL^]]\[ZYX<<==>>??55443322TTUUVVWWllmmnnoouuttssrr]]\\[[ZZ,,--..//66554433ooppqqrraa``__^^(())**++IIHHGGFF@@AABBCC1100//..XXYYZZ[[99887766LLKKJJIIMMNNOOPP WWVVUUTT@@AABBCC1100//..XXYYZZ[[ppqqrrssqqppoonnYYXXWWVV00112233221100//ssyyzz{{]]\\[[ZZ,,--..//EEDDCCBBDDEEFFGG--,,++**\\]]^^__55443322HHGGFFEEQQRRSSTT - - SSRRQQPPDDEEFFGG--,,++**\\]]^^__ttuuvvwwmmllkkjjUUTTSSRR44556677..--,,++||||{{zzYYXXWWVV00112233AA@@??>>HHIIJJKK))((''&&``aabbcc1100//..DDCCBBAAUUVVWWXX - - OONNMMLLHHIIJJKK))((''&&``aabbccxxyyzz{{ - - iihhggff !!""##QQPPOONN8899::;;**))((''yyxwvutsUUTTSSRR44556677==<<;;::LLMMNNOO%%$$##""ddeeffgg--,,++**@@??>>==YYZZ[[\\ KKJJIIHHLLMMNNOO%%$$##""ddeeffgg - -||||{{zz eeddccbb$$%%&&''MMLLKKJJ<<==>>??&&%%srrqqppo !!""##QQPPOONN8899::;;99887766PPQQRRSS!! hhiijjkk))((''&&<<;;::99]]^^__``GGFFEEDDPPQQRRSS!! hhiijjkk yyxxwwvvaa``__^^(())**++IIHHGGFF@@AABBCConnmmllk$$%%&&''MMLLKKJJ<<==>>??55443322TTUUVVWWllmmnnoo%%$$##""88776655aabbccddCCBBAA@?TTUUVVWWllmmnnoouuttssrr]]\\[[ZZ,,--..//EEDDCCBBDDEEFFGGkjjiihhg(())**++IIHHGGFF@@AABBCC1100//..XXYYZZ[[ppqqrrss!! 44332211eeffgghh>=<;;::9XXYYZZ[[ppqqrrssqqppoonnYYXXWWVV00112233AA@@??>>HHIIJJKKgffeeddc,,--..//EEDDCCBBDDEEFFGG--,,++**\\]]^^__ttuuvvww00//..--iijjkkll%%98877665\\]]^^__ttuuvvwwmmllkkjjUUTTSSRR44556677==<<;;::LLMMNNOOcbbaa``_00112233AA@@??>>HHIIJJKK))((''&&``aabbccxxyyzz{{,,++**))mmnnoopp&&''(())54433221``aabbccxxyyzz{{ - - iihhggff !!""##QQPPOONN8899::;;99887766PPQQRRSS - -_^^]]\[Z44556677==<<;;::LLMMNNOO%%$$##""ddeeffgg - -||||{{zz((''&&%%qqrrsstt**++,,--100//..-ddeeffgg - -||||{{zz eeddccbb$$%%&&''MMLLKKJJ<<==>>??55443322TTUUVVWW YXWWVVUU8899::;;99887766PPQQRRSS!! hhiijjkk yyxxwwvv$$##""!!uuvvwwxx..//0011-,,++**)hhiijjkk yyxxwwvvaa``__^^(())**++IIHHGGFF@@AABBCC1100//..XXYYZZ[[TTSSRRQQ<<==>>??55443322TTUUVVWWllmmnnoouuttssrr - - yyzz{{||22334455)((''&&%llmmnnoouuttssrr]]\\[[ZZ,,--..//EEDDCCBBDDEEFFGG--,,++**\\]]^^__ - - PPOONNMM@@AABBCC1100//..XXYYZZ[[ppqqrrssqqppoonn ||{{zzyy66778899%$#"! ppqqrrssqqppoonnYYXXWWVV00112233AA@@??>>HHIIJJKK))((''&&``aabbcc LLKKJJIIDDEEFFGG--,,++**\\]]^^__ttuuvvwwmmllkkjjssrrqqpp::;;AABBttuuvvwwmmllkkjjUUTTSSRR44556677==<<;;::LLMMNNOO%%$$##""ddeeffggHHGGFFEEHHIIJJKK))((''&&``aabbccxxyyzz{{ - - iihhggffoonnmmllCCDDEEFFxxyyzz{{ - - iihhggff !!""##QQPPOONN8899::;;99887766PPQQRRSS!! hhiijjkkDDCCBBAALLMMNNOO%%$$##""ddeeffgg - -||||{{zz eeddccbb kkjjiihhGGHHIIJJ||||{{zz eeddccbb$$%%&&''MMLLKKJJ<<==>>??55443322TTUUVVWWllmmnnoo@?>=<;;:PPQQRRSS!! hhiijjkk yyxxwwvvaa``__^^ - - - - ggffeeddKKLLMMNNyyxxwwvvaa``__^^(())**++IIHHGGFF@@AABBCC1100//..XXYYZZ[[ppqqrrss:9988776TTUUVVWWllmmnnoouuttssrr]]\\[[ZZ  - - ccbbaa``OOPPQQRR uuttssrr]]\\[[ZZ,,--..//EEDDCCBBDDEEFFGG--,,++**\\]]^^__ttuuvvww%%&&''((65544332XXYYZZ[[ppqqrrssqqppoonnYYXXWWVV __^^]]WWSSTTUUVV - - qqppoonnYYXXWWVV00112233AA@@??>>HHIIJJKK))((''&&``aabbccxxyyzz{{))**++,,21100//.\\]]^^__ttuuvvwwmmllkkjjUUTTSSRRVVUUTTSSWW]]^^__mmllkkjjUUTTSSRR44556677==<<;;::LLMMNNOO%%$$##""ddeeffgg - -||||{{zz--..//00.--,,++*``aabbccxxyyzz{{ - - iihhggff !!""##QQPPOONNRRQQPPOO``aabbcc - - iihhggff !!""##QQPPOONN8899::;;99887766PPQQRRSS!! hhiijjkk yyssrrqq11223344*))((''&ddeeffgg - -||||{{zz eeddccbb$$%%&&''MMLLKKJJNNMMLLKKddeeffgg eeddccbb$$%%&&''MMLLKKJJ<<==>>??55443322TTUUVVWWllmmnnooppoonnmm55667788&%%$#"! hhiijjkk yyxxwwvvaa``__^^(())**++IIHHGGFF !!""##$$%%&&''MMLLKKJJ<<==>>??&&%%srrqqppo !!""##QQPPOONN8899::;;99887766PPQQRRSS!! hhiijjkk yyxxwwvvWWVVUUTTNNOOPPQQ ||||{{zz eeddccbb$$%%&&''MMLLKKJJ<<==>>??55443322TTUUVVWWllmmnnoo(())**++))((''&&(())**++IIHHGGFF@@AABBCConnmmllk$$%%&&''MMLLKKJJ<<==>>??55443322TTUUVVWWllmmnnoouuttssrrSSRRQQPPRRSSTTUU - - yyxxwwvvaa``__^^(())**++IIHHGGFF@@AABBCC1100//..XXYYZZ[[ppqqrrss,,--..//%%$$##"",,--..//EEDDCCBBDDEEFFGGkjjiihhg(())**++IIHHGGFF@@AABBCC1100//..XXYYZZ[[ppqqrrssqqppoonnOONNMMLLVVWW]]^^uuttssrr]]\\[[ZZ,,--..//EEDDCCBBDDEEFFGG--,,++**\\]]^^__ttuuvvww00112233!! 00112233AA@@??>>HHIIJJKKgffeeddc,,--..//EEDDCCBBDDEEFFGG--,,++**\\]]^^__ttuuvvwwmmllkkjjKKJJIIHH__``aabbqqppoonnYYXXWWVV00112233AA@@??>>HHIIJJKK))((''&&``aabbccxxyyzz{{4455667744556677==<<;;::LLMMNNOOcbbaa``_00112233AA@@??>>HHIIJJKK))((''&&``aabbccxxyyzz{{ - - iihhggff !!""##GGFFEEDDccddeeffmmllkkjjUUTTSSRR44556677==<<;;::LLMMNNOO%%$$##""ddeeffgg - -||ttssrr8899::;;8899::;;99887766PPQQRRSS - -_^^]]\[Z44556677==<<;;::LLMMNNOO%%$$##""ddeeffgg - -||||{{zz eeddccbb$$%%&&''CCBBAA;;gghhiijj - - iihhggff !!""##QQPPOONN8899::;;99887766PPQQRRSS!! hhiijjkk qqppoonnAABBCCDD<<==>>??55443322TTUUVVWW YXWWVVUU8899::;;99887766PPQQRRSS!! hhiijjkk yyxxwwvvaa``__^^(())**++::998877kkllmmnn eeddccbb$$%%&&''MMLLKKJJ<<==>>??55443322TTUUVVWWllmmnnoommllkkjjEEFFGGHH@@AABBCC1100//..XXYYZZ[[TTSSRRQQ<<==>>??55443322TTUUVVWWllmmnnoouuttssrr]]\\[[ZZ,,--..//66554433ooppqqrraa``__^^(())**++IIHHGGFF@@AABBCC1100//..XXYYZZ[[ppqqrrssiihhggffIIJJKKLL - -DDEEFFGG--,,++**\\]]^^__ - - PPOONNMM@@AABBCC1100//..XXYYZZ[[ppqqrrssqqppoonnYYXXWWVV00112233221100//ssyyzz{{]]\\[[ZZ,,--..//EEDDCCBBDDEEFFGG--,,++**\\]]^^__ttuuvvwweeddccbbMMNNOOPP - - HHIIJJKK))((''&&``aabbcc LLKKJJIIDDEEFFGG--,,++**\\]]^^__ttuuvvwwmmllkkjjUUTTSSRR44556677..--,,++||||{{zzYYXXWWVV00112233AA@@??>>HHIIJJKK))((''&&``aabbccxxyyzz{{ - - aa``__^^QQRRSSTT LLMMNNOO%%$$##""ddeeffggHHGGFFEEHHIIJJKK))((''&&``aabbccxxyyzz{{ - - iihhggff !!""##QQPPOONN8899::;;**))((''yyxwvutsUUTTSSRR44556677==<<;;::LLMMNNOO%%$$##""ddeeffgg - -||||{{zz ]]WWVVUUUUVVWW]]PPQQRRSS!! hhiijjkkDDCCBBAALLMMNNOO%%$$##""ddeeffgg - -||||{{zz eeddccbb$$%%&&''MMLLKKJJ<<==>>??&&%%srrqqppo !!""##QQPPOONN8899::;;99887766PPQQRRSS!! hhiijjkk yyxxwwvvTTSSRRQQ^^__``aaTTUUVVWWllmmnnoo@?>=<;;:PPQQRRSS!! hhiijjkk yyxxwwvvaa``__^^(())**++IIHHGGFF@@AABBCConnmmllk$$%%&&''MMLLKKJJ<<==>>??55443322TTUUVVWWllmmnnoouuttssrrPPOONNMMbbccddeeXXYYZZ[[ppqqrrss:9988776TTUUVVWWllmmnnoouuttssrr]]\\[[ZZ,,--..//EEDDCCBBDDEEFFGGkjjiihhg(())**++IIHHGGFF@@AABBCC1100//..XXYYZZ[[ppqqrrssqqppoonnLLKKJJIIffgghhii\\]]^^__ttuuvvww%%&&''((65544332XXYYZZ[[ppqqrrssqqppoonnYYXXWWVV00112233AA@@??>>HHIIJJKKgffeeddc,,--..//EEDDCCBBDDEEFFGG--,,++**\\]]^^__ttuuvvwwmmllkkjjHHGGFFEEjjkkllmm !!""##``aabbccxxyyzz{{))**++,,21100//.\\]]^^__ttuuvvwwmmllkkjjUUTTSSRR44556677==<<;;::LLMMNNOOcbbaa``_00112233AA@@??>>HHIIJJKK))((''&&``aabbccxxyyzz{{ - - iihhggff !!""##DDCCBBAAnnooppqq$$%%&&''ddeeffgg - -||||{{zz--..//00.--,,++*``aabbccxxyyzz{{ - - iihhggff !!""##QQPPOONN8899::;;99887766PPQQRRSS - -_^^]]\[Z44556677==<<;;::LLMMNNOO%%$$##""ddeeffgg - -||||{{zz eeddccbb$$%%&&'';;::9988qqppoonn(())**++hhiijjkk yyssrrqq11223344*))((''&ddeeffgg - -||||{{zz eeddccbb$$%%&&''MMLLKKJJ<<==>>??55443322TTUUVVWW YXWWVVUU8899::;;99887766PPQQRRSS!! hhiijjkk yyxxwwvvaa``__^^(())**++77665544mmllkkjj,,--..//llmmnnooppoonnmm55667788&%%$#"! hhiijjkk yyxxwwvvaa``__^^(())**++IIHHGGFF@@AABBCC1100//..XXYYZZ[[TTSSRRQQ<<==>>??55443322TTUUVVWWllmmnnoouuttssrr]]\\[[ZZ,,--..//33221100iihhggff00112233ppqqrrssllkkjjii99::;;AAllmmnnoouuttssrr]]\\[[ZZ,,--..//EEDDCCBBDDEEFFGG--,,++**\\]]^^__ - - PPOONNMM@@AABBCC1100//..XXYYZZ[[ppqqrrssqqppoonnYYXXWWVV00112233//..--,,eeddccbb44556677ttuuvvwwhhggffeeBBCCDDEEppqqrrssqqppoonnYYXXWWVV00112233AA@@??>>HHIIJJKK))((''&&``aabbcc LLKKJJIIDDEEFFGG--,,++**\\]]^^__ttuuvvwwmmllkkjjUUTTSSRR44556677++**))((aa``__^^8899::;;xxyyzz{{ - - ddccbbaaFFGGHHIIttuuvvwwmmllkkjjUUTTSSRR44556677==<<;;::LLMMNNOO%%$$##""ddeeffggHHGGFFEEHHIIJJKK))((''&&``aabbccxxyyzz{{ - - iihhggff !!""##QQPPOONN8899::;;''&&%%]]\\[[ZZ<<==>>??||||{{zz ``__^^]]JJKKLLMMxxyyzz{{ - - iihhggff !!""##QQPPOONN8899::;;99887766PPQQRRSS!! hhiijjkkDDCCBBAALLMMNNOO%%$$##""ddeeffgg - -||||{{zz eeddccbb$$%%&&''MMLLKKJJ<<==>>??YYXXWWVV@@AABBCCyyxxwwvvWWVVUUTTNNOOPPQQ ||||{{zz eeddccbb$$%%&&''MMLLKKJJ<<==>>??55443322TTUUVVWWllmmnnoo@?>=<;;:PPQQRRSS!! hhiijjkk yyxxwwvvaa``__^^(())**++IIHHGGFF@@AABBCCUUTTSSRRDDEEFFGGuuttssrrSSRRQQPPRRSSTTUU - - yyxxwwvvaa``__^^(())**++IIHHGGFF@@AABBCC1100//..XXYYZZ[[ppqqrrss:9988776TTUUVVWWllmmnnoouuttssrr]]\\[[ZZ,,--..//EEDDCCBBDDEEFFGGQQPPOONNHHIIJJKKqqppoonnOONNMMLLVVWW]]^^uuttssrr]]\\[[ZZ,,--..//EEDDCCBBDDEEFFGG--,,++**\\]]^^__ttuuvvww%%&&''((65544332XXYYZZ[[ppqqrrssqqppoonnYYXXWWVV00112233AA@@??>>HHIIJJKKMMLLKKJJLLMMNNOOmmllkkjjKKJJIIHH__``aabbqqppoonnYYXXWWVV00112233AA@@??>>HHIIJJKK))((''&&``aabbccxxyyzz{{))**++,,21100//.\\]]^^__ttuuvvwwmmllkkjjUUTTSSRR44556677==<<;;::LLMMNNOO IIHHGGFFPPQQRRSSiihhggff !!""##GGFFEEDDccddeeffmmllkkjjUUTTSSRR44556677==<<;;::LLMMNNOO%%$$##""ddeeffgg - -||||{{zz--..//00.--,,++*``aabbccxxyyzz{{ - - iihhggff !!""##QQPPOONN8899::;;99887766PPQQRRSS - - - -EEDDCCBBTTUUVVWWeeddccbb$$%%&&''CCBBAA;;gghhiijj - - iihhggff !!""##QQPPOONN8899::;;99887766PPQQRRSS!! hhiijjkk yyssrrqq11223344*))((''&ddeeffgg - -||||{{zz eeddccbb$$%%&&''MMLLKKJJ<<==>>??55443322TTUUVVWW AA@@??>>XXYYZZ[[aa``__^^(())**++::998877kkllmmnn eeddccbb$$%%&&''MMLLKKJJ<<==>>??55443322TTUUVVWWllmmnnooppoonnmm55667788&%%$#"! hhiijjkk yyxxwwvvaa``__^^(())**++IIHHGGFF@@AABBCC1100//..XXYYZZ[[==<<;;::\\]]^^__]]\\[[ZZ,,--..//66554433ooppqqrraa``__^^(())**++IIHHGGFF@@AABBCC1100//..XXYYZZ[[ppqqrrssllkkjjii99::;;AAllmmnnoouuttssrr]]\\[[ZZ,,--..//EEDDCCBBDDEEFFGG--,,++**\\]]^^__99887766``aabbccYYXXWWVV00112233221100//ssyyzz{{]]\\[[ZZ,,--..//EEDDCCBBDDEEFFGG--,,++**\\]]^^__ttuuvvwwhhggffeeBBCCDDEEppqqrrssqqppoonnYYXXWWVV00112233AA@@??>>HHIIJJKK))((''&&``aabbcc55443322ddeeffggUUTTSSRR44556677..--,,++||||{{zzYYXXWWVV00112233AA@@??>>HHIIJJKK))((''&&``aabbccxxyyzz{{ - - ddccbbaaFFGGHHIIttuuvvwwmmllkkjjUUTTSSRR44556677==<<;;::LLMMNNOO%%$$##""ddeeffgg1100//..hhiijjkkQQPPOONN8899::;;**))((''yyxwvutsUUTTSSRR44556677==<<;;::LLMMNNOO%%$$##""ddeeffgg - -||||{{zz ``__^^]]JJKKLLMMxxyyzz{{ - - iihhggff !!""##QQPPOONN8899::;;99887766PPQQRRSS!! hhiijjkk%%&&''--,,++**llmmnnooppqqfpvbHAZtbdQf`vXJtArdnXvےbHAtbdQZfH~XQr˂JtArdnXvےbHAbnvr˂p|ZdQtA~HfrXQJ`JltpZHAb|ZdQ`f~Zp˂nXv`p˂rZ|dnvp|ZdQ`f~Zp˂|drf`vXpZHAb|ZdQ`f~Zp˂pfHZHAbrd|pvnےbHAbnvے`JbtlHfpvrXQJ`f~HXQJ`ےrtAdQZfH~btlHfpvrXQJ`tAJlnvpے`JbtlHfpvrXQJ`f`vXے`JXQZdQbtXv`fZp˂pfHXQr˂JtArdnXvےbHAfpvbHAZ|drvpfJtArdnXvےbHAtbdQZfH~XQr˂JtArdnXvےJlnvpr˂plJtA~HfrXQJ`f`vXpZHAb|ZdQ`f~Zp˂nXv`p˂rtAJlے`JXQ|ZdQ`f~Zp˂|drf`vXpZHAb|ZdQ`fHtbdQZfH~`JXQrrd|pvnےJlnvpے`JbtlHfpvrXQJ`f~HXQJ`ےtbdQZrZHAbtlHfpvrXQJ`tAJlnvpے`Jbtlfpv|drf`vX˂pZZdQbtXv`ftbdQZfH~XQr˂JtArdnXvےbHAfpvbHAZ|drbے`JtArdnXvےbHAtbdQZfH~XQr˂JtArdnrXQJtAJlnvpHAbےl|Zfpv|drf`vXpZHAb|ZdQ`f~Zp˂nXv`p˂rtAJlJXQr|ZdQ`f~Zp˂|drf`vXpZHAb|ZdQ`ےHAtbdQZfH~`JXQrdQbtnrXQJtAJlnvpے`JbtlHfpvrXQJ`f~HXQJ`ےtdrtApZHAbtlHfpvrXQJ`tAJlnvpے`JbtlZp˂|drf`vX˂pZlJtAr`ےHAtbdQZfH~XQr˂JtArdnXvےbHA|drfpvbHAZJltbے`JtArdnXvےbHAtbdQZfH~XQr˂JfpvrXQJ`tAJlnvpHAbd|ZZp˂|drf`vXpZHAb|ZdQ`f~Zp˂tAJlnXv`p˂rbdQZ|JXQr|ZdQ`f~Zp˂|drf`vXpZHAnXvےbHAtbdQZfH~˂pZHAdQbtrXQJ`tAJlnvpے`JbtlHfpvrXQJ`tbdQZf~HXQJ`ےdrtApZAbbtlHfpvrXQJ`tAJlnvpے`JXQ`f~Zp˂|drf`vXbے`lJtArےbHAtbdQZfH~XQr˂JtArdnXvےbHA|drfpvbHAZJlt`JXQrJtArdnXvےbHAtbdQZfH~rbtHfpvrXQJ`tAJlnvpJXQrdtlZp˂|drf`vXpZHAb|ZdQ`f~Zp˂tAJlnXv`p˂rbdQZ|˂pZ|ZdQ`f~Zp˂|drf`vXlJtAdnXvےbHAtbdQZfH~˂pZHAJfpvrXQJ`tAJlnvpے`JbtlHfpvrXQJ`tbdQZf~HXQJ`ے`vXnHAbےbtlHfpvrXQJ`tAJlnvp|ZdQ`f~Zp˂|drf`vXbے`nvfےbHAtbdQZfH~XQr˂JtArdnXvےbHA|drfpvbHAZvpf`JXQrJtArdnXvےbHAtbdQZfے`JbtlHfpvrXQJ`tAJlnvpJXQHAb~HfpZp˂|drf`vXpZHAb|ZdQ`f~Zp˂tAJlnXv`p˂rH~f˂pZ|ZdQ`f~Zp˂|dtAXQr˂JtArdnXvےbHAtbdQZfH~ے`JvnXrXQJ`tAJlnvpے`JbtlHfpvrXQJ`tbdQZf~HXQJ`ے`vXnHAbbtlHfpvrXQJ`JltpZHAb|ZdQ`f~Zp˂|drf`vXXQr˂v`fےbHAtbdQZfH~XQr˂JtArdnXvےbHA|drfpvbHAZvpfJQr˂pJtArdnXvےbHAbnvے`JbtlHfpvrXQJ`tAJlnvppZHAb~HfpZp˂|drf`vXpZHAb|ZdQ`f~Zp˂tAJlnXv`p˂rH~ZHAb|ZdQ`f~Zp˂pfHXQr˂JtArdnXvےbHAtbdQZfH~ے`JvnXrXQJ`tAJlnvpے`JbtlHfpvrXQJ`tbdQZf~HXQJ`ےvpfHے`JXbtlHfpvrXQJ`f`vXpZHAb|ZdQ`f~Zp˂|drf`vXXQr˂v`f~ےbHAtbdQZfH~XQr˂JtArdnXvےJl|drfpvbHAZ~f`Qr˂pJtArdnXvےJlnvpے`JbtlHfpvrXQJ`tAJlnvpp`JXQfpvZp˂|drf`vXpZHAb|ZdQ`fHtbdQZtAJlnXv`p˂rvXnZHAb|ZdQ`fHtbdQZfH~XQr˂JtArdnXvےbHAtbdQZfH~rbtnXv`rXQJ`tAJlnvpے`Jbtlfpv|drtbdQZf~HXQJ`ےvpfHے`JXbtlfpv|drf`vXpZHAb|ZdQ`f~Zp˂|drf`vXl|ZdQf~HےbHAtbdQZfH~XQr˂JtArdnrXQJtAJl|dtAfpvJlt~f`QrZHAJtArdnrXQJtAJlnvpے`JbtlHfpvrXQJ`tAJlnvpbtlfpvZp˂|drf`vXpZHAb|ZdQ`ےHAtbdQZJltnXv`drtAJvXH~bے`|ZdQ`ےHAtbdQZfH~XQr˂JtArdnXvےbHAtbdQZfH~JtArdnXv`rXQJ`tAJlnvpے`JbtlZp˂|drbnvf~Hltbf`vJXQrbtlZp˂|drf`vXpZHAb|ZdQ`f~Zp˂|drf`vX|ZdQf~HےbHAtbdQZfH~XQr˂JfpvrXQJ`tAJlpfHfpvdQZ|Xnv˂pZHAJfpvrXQJ`tAJlnvpے`JbtlHfpvrXQJ`tAJlnvpbtlfvnXZp˂|drf`vXpZHAnXvےbHAtbdQZf`vXnXv`drtAJpfH~bے`nXvےbHAtbdQZfH~XQr˂JtArdnXvےbHAtbdQZfH~JtArdv`frXQJ`tAJlnvpے`JXQ`f~Zp˂|drnvpp˂rltbf`vJXQr`f~Zp˂|drf`vXpZHAb|ZdQ`f~Zp˂|drf`vXtlJ~HfpےbHAtbdQZfH~rbtHfpvrXQJ`tAJlfH~XQJ`ےdQZ|lXnv˂pZHAHfpvrXQJ`tAJlnvpے`JbtlHfpvrXQJ`tAJlnvptArdvnXZp˂|drf`vXlJtAdnXvےbHAtbdQZf`vXbHAZtbdQp`vXbJAdnXvےbHAtbdQZfH~XQr˂JtArdnXvےbHAtbdQZfے`J|ZdQbv`frXQJ`tAJlnvp|ZdQ`f~Zp˂|drnvpp˂rZ|dnvp|ZdQ`f~Zp˂|drf`vXpZHAb|ZdQ`f~Zp˂|dtAXQHAbtlJ~HfpےbHAtbdQZfے`JbtlHfpvrXQJ`tAJlfH~XQJ`ےrtAJlfH~btlHfpvrXQJ`tAJlnvpے`JbtlHfpvrXQJ`Jltے`JXQtArdvnvfZp˂|dtAXQr˂JtArdnXvےbHAtbdQZf`vXnvpے`Jbtlv~rtAJlf`vXpZHAb|ZdQ`f~Zp˂|drf`vXpZHAnXvےbHAltb~f``JXQrJfpvrXQJ`tAJlnvpے`JbtlHfpvrXQJ`tAJlnvpJAHr󙐅f۝`vfH~XQr˂JtArdHfpvtbdnvpے`JbtlHfpvrXQJ`tAJlnvpے`JXQ`f~Zp˂dQZ|vXn˂pZAnXvےbHAtbdQZfH~XQr˂JtArdnXvےbHAtbdQZfH~ˁ`ZQXXnvf`vXpZHAb|ZdQnXvQZ|dfH~XQr˂JtArdnXvےbHAtbdQZfH~rbtHfpvrXQJ`drtAJvp`v`JXQ`f~Zp˂|drf`vXpZHAb|ZdQ`f~Zp˂|drf`vXb㉀ۑppfH~nvpے`Jbtl`f~rtAJlf`vXpZHAb|ZdQ`f~Zp˂|drf`vXlJtAdnXvےbHAltbXnvrbtHfpvrXQJ`tAJlnvpے`JbtlHfpvrXQJ`tAJlnvpJAHr󙐅f۝`vfH~XQr˂JtArdHfpvtbdnvpے`JbtlHfpvrXQJ`tAJlnvp|ZdQ`f~Zp˂dQZ|pfH~lJtAdnXvےbHAtbdQZfH~XQr˂JtArdnXvےbHAtbdQZfZHAbˁ`ZQXXnvf`vXpZHAb|ZdQnXvQZ|rfH~XQr˂JtArdnXvےbHAtbdQZfے`JbtlHfpvrXQJ`drtAdQf`v|ZdQ`f~Zp˂|drf`vXpZHAb|ZdQ`f~Zp˂|dtAے`JAHr󙐂ˍpfH~nvpے`Jbtl`pvAJltf`vXpZHAb|ZdQ`f~Zp˂|dtAXQr˂JtArdnXvےbHAZ|dXnvbtlHfpvrXQJ`tAJlnvpے`JbtlHfpvrXQJ`JltXQr˂`ZQXbㅐf۝`vfH~XQr˂JtArdnrXQJbdQZ|nvpے`JbtlHfpvrXQJ`JltpZHAb|ZdQ`f~Zp˂rtAJlpfH~JtArdnXvےbHAtbdQZfH~XQr˂JtArdnXvےbHAbnvpZHAbۑpJXnvf`vXpZHAb|ZdQ`p˂drtAfH~XQr˂JtArdnXvےbHAbnvے`JbtlHfpvrXQJ`tbdQvp|ZdQ`f~Zp˂|drf`vXpZHAb|ZdQ`f~Zp˂pfHے`JAHr󙐂ˍp|dnvpے`JbtlrXQJ`Jltf`vXpZHAb|ZdQ`f~Zp˂pfHXQr˂JtArdnXvےbHAZ|dfے`JbtlHfpvrXQJ`tAJlnvpے`JbtlHfpvrXQJ`f`vXXQr˂`ZQXbrQtJlfH~XQr˂JtArdےbHAbdQZ|nvpے`JbtlHfpvrXQJ`f`vXpZHAb|ZdQ`f~Zp˂rtAJlXQrZHJtArdnXvےbHAtbdQZfH~XQr˂JtArdnXvےJlnvpp`JXQۑp`tbAdf`vXpZHAb|ZdQZp˂drtAfH~XQr˂JtArdnXvےJlnvpے`JbtlHfpvrXQJ`tdrAbے`|ZdQ`f~Zp˂|drf`vXpZHAb|ZdQ`fHtbdQZfH~r˂pZQXb㉀Z|dnvpے`JbtlrXQJ`JbdQf`vXpZHAb|ZdQ`fHtbdQZfH~XQr˂JtArdnXvےbHAtAJl璁JXQrbtlHfpvrXQJ`tAJlnvpے`Jbtlfpv|drf`vXZHAbۑpJAHrQtJlfH~XQr˂JtArdےbHAZ|dnvpے`Jbtlfpv|drf`vXpZHAb|ZdQ`f~Zp˂tbdQZ˂pZHJtArdnXvےbHAtbdQZfH~XQr˂JtArdnrXQJtAJlnvpے`JXQr󙐂ˁ`tbAdf`vXpZHAb|ZdQXQJ`ےrtAJlfH~XQr˂JtArdnrXQJtAJlnvpے`JbtlHfpvrXQJ`|drAbے`|ZdQ`f~Zp˂|drf`vXpZHAb|ZdQ`ےHAtbdQZfH~r˂pZQXb㉀Z|dnvpے`JbtlbHAZtbdQf`vXpZHAb|ZdQ`ےHAtbdQZfH~XQr˂JtArdnXvےbHAtAJl璁JXQrbtlHfpvrXQJ`tAJlnvpے`JbtlZp˂|drf`vXZHAbۑpJAHrQtJlfH~XQr˂Jfpvp˂rZ|dnvpے`JbtlZp˂|drf`vXpZHAb|ZdQ`f~Zp˂tbdQZ˂pZAbJtArdnXvےbHAtbdQZfH~XQr˂JfpvrXQJ`tAJlnvp˂pZf۝`vtbAdf`vXpZHA~HXQJ`ےrtAJlfH~XQr˂JfpvrXQJ`tAJlnvpے`JbtlHfpvrXQJ`|lt`JXQ|ZdQ`f~Zp˂|drf`vXpZHAnXvےbHAtbdQZfH~HAbےXnvZ|dnvpے`JXQfpvbHAZtbQZf`vXpZHAnXvےbHAtbdQZfH~XQr˂JtArdnXvےbHAbnvr˂pbtlHfpvrXQJ`tAJlnvpے`JXQ`f~Zp˂|drf`vX`JXQrpfH~rQtJlfH~rbtnXv`p˂drtAJnvpے`JXQ`f~Zp˂|drf`vXpZHAb|ZdQ`f~Zp˂p`vXZHAbJtArdnXvےbHAtbdQZfH~rbtHfpvrXQJ`tAJlnvp˂pZf۝`vtbAdf`vXlJtAdf~HbHAZpltbfH~rbtHfpvrXQJ`tAJlnvpے`JbtlHfpvrXQJ`nvpے`JXQ|ZdQ`f~Zp˂|drf`vXlJtAdnXvےbHAtbdQZfH~HAbےXnvZ|dnvp|ZdQfpv˂rXQdQZ|f`vXlJtAdnXvےbHAtbdQZfH~XQr˂JtArdnXvےbHAfH~r˂pbtlHfpvrXQJ`tAJlnvp|ZdQ`f~Zp˂|drf`vX`JXQHApfH~rQtJlfے`JbtlnXv`J`ےdrtAJnvp|ZdQ`f~Zp˂|drf`vXpZHAb|ZdQ`f~Zp˂f`vXZHAbJtArdnXvےbHAtbdQZfے`JbtlHfpvrXQJ`tAJlnvpbے`f۝`vtbAdXQr˂JtArdpvnbHAZpltbfے`JbtlHfpvrXQJ`tAJlnvpے`JbtlHfpvrXQJ`nvpJQr|ZdQ`f~Zp˂|dtAXQr˂JtArdnXvےbHAtbdQZfH~JXQrXnvZ|dpZHAb|ZdQXv`f˂rXQdQZ|XQr˂JtArdnXvےbHAtbdQZfH~XQr˂JtArdnXvےbHAfH~pZHAbtlHfpvrXQJ`JltpZHAb|ZdQ`f~Zp˂|drf`vX˂pZHApfH~rQtJlے`Jbtl~HfJ`p˂AJltpZHAb|ZdQ`f~Zp˂|drf`vXpZHAb|ZdQ`f~Zp˂vpfbے`JtArdnXvےbHAbnvے`JbtlHfpvrXQJ`tAJlnvpbے`f۝`vtbAdXQr˂JtArdpvnrXQJbnvے`JbtlHfpvrXQJ`tAJlnvpے`JbtlHfpvrXQJ`H~fJXQr|ZdQ`f~Zp˂pfHXQr˂JtArdnXvےbHAtbdQZfH~JXQrXnvZ|dpZHAb|ZdQXv`f`ےbpfHXQr˂JtArdnXvےbHAtbdQZfH~XQr˂JtArdnXvےJl`vXnpZHAbtlHfpvrXQJ`f`vXpZHAb|ZdQ`f~Zp˂|drf`vX˂p`ZpfH~rQtJlے`Jbtl~HXHAZp˂f`vXpZHAb|ZdQ`f~Zp˂|drf`vXpZHAb|ZdQ`fHtdrtAvpfbے`JtArdnXvےJlnvpے`JbtlHfpvrXQJ`tAJlnvpQXb㉀ۅf۝`vtbAdXQr˂JtArdv`frXQJnvpے`JbtlHfpvrXQJ`tAJlnvpے`JbtlfpvJltH~fJXQrZ|ZdQ`fHtbdQZfH~XQr˂JtArdnXvےbHAtbdQZfH~pJAHrXnvZ|dpZHAb|ZdQ~Hfp`ےbfH~XQr˂JtArdnXvےbHAtbdQZfH~XQr˂JtArdnrXQJbdQZ|`vXHHAbےbtlfpv|drf`vXpZHAb|ZdQ`f~Zp˂|drf`vXˁ`ZpfH~rQtJlے`JbtlvnXHAXQJ`f`vXpZHAb|ZdQ`f~Zp˂|drf`vXpZHAb|ZdQ`ےHAdrtA~f``JXQrJtArdnrXQJtAJlnvpے`JbtlHfpvrXQJ`tAJlnvpQXb㉀ۅf۝`vtbAdXQr˂JtArdv`fےJlnvpے`JbtlHfpvrXQJ`tAJlnvpے`JbtlZp˂JltvXn˂pZ|ZdQ`ےHAtbdQZfH~XQr˂JtArdnXvےbHAtbdQZfH~pJAHrXnvZ|dpZHAb|ZdQ~HfptbQZdfH~XQr˂JtArdnXvےbHAtbdQZfH~XQr˂JfpvrXQJ`bdQZ|vpfHHAbےbtlZp˂|drf`vXpZHAb|ZdQ`f~Zp˂|drf`vXۑppfH~rQtJltuvwxyz{||{zyxwv5555555566666666666666666666666666 \ No newline at end of file diff --git a/barcode-generator/Resources/data/qrv28_0.dat b/barcode-generator/Resources/data/qrv28_0.dat deleted file mode 100644 index 2f3b646..0000000 --- a/barcode-generator/Resources/data/qrv28_0.dat +++ /dev/null @@ -1,257 +0,0 @@ -~}~}~}~}|{|{|{|{zyzyzyzywwwwwxwxuvuvuvuvststststqrqrqrqropopopopopopopopmnmnmnmnklklklklijijijijghghghghgfefefefefefefefcdcdcdcdabababab______`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGEFEFEFEFCDCDCDCDABABABAB?@?@?@?@?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:787878787878787856565656~}~}~}~}|{|{|{|{zyzyzyzywxwxwxwxuvuvuvuvststststqrqrqrqropopopopopopopopmnmnmnmnklklklklijijijijghghghghefefefefefefefefcdcdcdcdabababab`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGEFEFEFEFCDCDCDCDABABABAB?@?@?@?@?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:787878787878787856565656~}~}~}~}|{|{|{|{zyzyzyzywxwxwxwxuvuvuvuvststststqrqrqrqropopopoponmnmnmnmnmnmnmnklklklklijijijijghghghghefefefefefefefefcdcdcdcdabababab`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKJIJIJIJIGGGGGHGHEFEFEFEFCDCDCDCDABABABAB?@?@?@?@?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:787878787878787856565656~}~}~}~}|{|{|{|{zyzyxwxwwxwxwxwxuvuvuvuvststststqrqrqrqropopopopmnmnmnmnmnmnmnmnklklklklijijijijghghghghefefefefefefefefcdcdcdcdababa`_``_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKJIJIJIJIGHGHGHGHEFEFEFEFCDCDCDCDABABABAB?@?@?@?@?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:78787878787878765656565634343434~}~}~}~}~}~}~}~}|{|{|{|{xwxwwwwwwxwxwxwuuvuvuvuvststststqrqrqrqropopopopmnmnmnmnmnmnmnmnklklklklijijijijghghghghefefefefefefefefcdcdcdcb_`_`____`_`_____^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKJIJIJIJIGHGHGHGHEFEFEFEFCDCDCDCDABABABAB?@?@?@?@?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:78787878565656565656565634343434~}~}~}~}~}~}~}~}|{|{|{zywxwxwxwxuuuuuvuvuvuvuvuvststststqrqrqrqropopopopmnmnmnmnmnmnmnmnklklklklijijijijghghghghefefefefefefefefabababab__`_`_`_`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKJIJIHGHGGHGHGHGHEFEFEFEFCDCDCDCDABABABAB?@?@?@?@?@?@?@?>=>=>=>=>;<;<;<;<9:9:9:9:78787878565656565656565634343434~}~}~}~}~}~}~}~}zyzyzyzywxwxwxwxuvuvuvuvuvuvuvuvststststqrqrqrqropopopopmnmnmnmnmnmnmnmnklklklklijijijijghghghghefefefefedcdcdcdabababab`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMNMNMNMNMLKLKLKJIHGHGGGGGGHGGGGGHEFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>=>=>=>=>;<;<;<;<9:9:9:9:78787878565656565656565634343434~}~}~}~}~}~}~}~}zyzyzyzywxwxwxwxuvuvuvuvuvuvuvuvststststqrqrqrqropopopopmnmnmnmnmnmnmnmnklklklklijijijijghghghghefefefefcdcdcdcdabababab`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMNMNMNMNMJIJIJIJIGHGHGHGHGHGHGHGFEFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>=>=>=>=>;<;<;<;<9:9:9:9:78787878565656565656565634343434~}~}~}~}|{|{|{|{zyzyzyzywxwxwxwxuvuvuvuvuvuvuvuvststststqrqrqrqropopopopmnmnmnmnmlklklklklklklklijijijijghghghghefefefefcdcdcdcdabababab`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIGHGHGHGHEFEFEFEFEFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>=>=>=>=>;<;<;<;<9:9:9:9:78787878565656565656565634343434~}~}~}~}|{|{|{|{zyzyzyzywxwxwxwwuvuvuvuvuvuvuvuvststststqrqrqrqropopopopmnmnmnmnklklklklklklklklijijijijghghghghefefefefcdcdcdcdabababab`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIGHGHGHGHEFEFEFEFEFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>=>=>=>=>;<;<;<;<9:9:9:9:78787878565656565656565434343434~}~}~}~}|{|{|{|{zyzyzyzywwwwxwxwuvuvuvuvutstststststststqrqrqrqropopopopmnmnmnmnklklklklklklklklijijijijghghghghefefefefcdcdcdcdabababab_____`_`^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIGHGHGHGHEFEFEFEFEFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>=>=>=>=>;<;<;<;<9:9:9:9:78787878565656563434343434343434~}~}~}~}|{|{|{|{zyzyzyzyxwxwxwxwuvuvuvuvststststststststqrqrqrqropopopopmnmnmnmnklklklklklklklklijijijijghghghghefefefefcdcdcdcdabababab_`_`_`_`^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIGHGHGHGGEFEFEFEFEFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>=>=>=>=<;<;<;<;<9:9:9:9:78787878565656563434343434343212~}~}~}~}|{|{|{|{zyzyzyzyxwxwxwxwuvuvuvuvststststststststqrqrqrqropopopopmnmnmnmnklklklklklklklklijijijijghghghghefefefefcdcdcdcdabababab_`_`_`_`^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIGGGGHGHGEFEFEFEFEFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<;<;<;<;<9:9:9:9:78787878565656563434343412121212~}~}~}~}|{|{|{|{zyzyzyzyxwxwxwxwuvuvuvuvststststststststqrqrqrqropopopopmnmnmnmnklklklklklklklklijijijijghghghghefefefefcdcdcdcdabababab_`_`_`_`^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGEFEFEFEFEFEFEFEDCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<;<;<;<;<9:9:9:9:78787878565656563434343412121212~}~}~}~}|{|{|{|{zyzyzyzyxwxwxwxwuvuvuvuvststststststststqrqrqrqropopopopmnmnmnmnklklklklkjijijijijijijijghghghghefefefefcdcdcdcdabababab_`_`_`_`^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGEFEFEFEFCDCDCDCDCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<;<;<;<;<9:9:9:9:78787878565656563434343412121212~}~}~}~}|{|{|{|{zyzyzyzyxwwwwwwxuvuvuvuvststststststststqrqrqrqropopopopmnmnmnmnklklklklijijijijijijijijghghghghefefefefcdcdcdcdabababab_`______^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGEFEFEFEFCDCDCDCDCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<;<;<;<;<9:9:9:9:78787878565656563434343412121212~}~}~}~}|{|{|{|{zyzyzyzywxwxwxwxuvuvuvuvststststsrqrqrqrqrqrqrqropopopopmnmnmnmnklklklklijijijijijijijijghghghghefefefefcdcdcdcdabababab`_`_`_`_^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGEFEFEFEFCDCDCDCDCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<;<;<;<;<9:9:9:9:78787878565656563434343412121212~}~}~}~}|{|{|{|{zyzyzyzywxwxwxwxuvuvuvuvststststqrqrqrqrqrqrqrqropopopopmnmnmnmnklklklklijijijijijijijijghghghghefefefefcdcdcdcdabababab`_`_`_`_^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGGGGGGHEFEFEFEFCDCDCDCDCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<;<;<;<;:9:9:9:9:78787878565656563434343412121212~}~}~}~}|{|{|{|{zyzyzyzywxwxwxwxuvuvuvuvststststqrqrqrqrqrqrqrqropopopopmnmnmnmnklklklklijijijijijijijijghghghghefefefefcdcdcdcdabababab`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIGHGHGHGHEFEFEFEFCDCDCDCDCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:9:9:9:9:78787878565656563434343412121212~}~}~}~}|{|{|{|{zyzyzyzywxwxwxwxuvuvuvuvststststqrqrqrqrqrqrqrqropopopopmnmnmnmnklklklklijijijijijijijijghghghghefefefefcdcdcdcdabababab`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIGHGHGHGHEFEFEFEFCDCDCDCDCDCDCDCBABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:9:9:9:9:78787878565656563434343412121212~}~}~}~}|{|{|{|{zyzyzyzywxwxwwwwuvuvuvuvststststqrqrqrqrqrqrqrqropopopopmnmnmnmnklklklklijijijijihghghghghghghghefefefefcdcdcdcdabababab`_`_`___^]^]^]^]\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIGHGHGHGHEFEFEFEFCDCDCDCDABABABABABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:9:9:9:9:78787878565656563434343412121212~}~}~}~}|{|{|{|{zyzyzyzywwxwxwxwuvuvuvuvststststqrqrqrqrqrqrqrqropopopopmnmnmnmnklklklklijijijijghghghghghghghghefefefefcdcdcdcdabababab___`_`_`^]^]^]^]\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIGHGHGHGHEFEFEFEFCDCDCDCDABABABABABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:9:9:9:9:78787878565656563434343412121212~}~}~}~}|{|{|{|{zyzyzyzyxwxwxwxwuvuvuvuvststststqrqrqrqrqpopopopopopopopmnmnmnmnklklklklijijijijghghghghghghghghefefefefcdcdcdcdabababab_`_`_`_`^]^]^]^]\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIGHGHGGGGEFEFEFEFCDCDCDCDABABABABABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:9:9:9:9:78787878565656563434343412121212~}~}~}~}|{|{|{|{zyzyzyzyxwxwxwxwuvuvuvuvststststqrqrqrqropopopopopopopopmnmnmnmnklklklklijijijijghghghghghghghghefefefefcdcdcdcdabababab_`_`_`_`^]^]^]^]\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIGGHGHGHGEFEFEFEFCDCDCDCDABABABABABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:9:9:9:9878787878565656563434343412121212~}~}~}~}|{|{|{|{zyzyzyzyxwxwxwxwuvuvuvuvststststqrqrqrqropopopopopopopopmnmnmnmnklklklklijijijijghghghghghghghghefefefefcdcdcdcdabababab_`_`_`_`^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGEFEFEFEFCDCDCDCDABABABABABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:7878787878787878565656563434343412121212~}~}~}~}|{|{|{|{zyzyzyzyxwxwxwxwuvuvuvuvststststqrqrqrqropopopopopopopopmnmnmnmnklklklklijijijijghghghghghghghghefefefefcdcdcdcdabababab_`_`_`_`^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHGEFEFEFEFCDCDCDCDABABABABABABABA@?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:7878787878787878565656563434343412121212121212120/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!"!"!"!"!         - - - - - - - -121212120/0/////.-.-.-.-,+,+,+,+*)*)*)*)*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!"!"!"!"!         - - - - - - - -12121212/0/0/0/0.-.-.-.-,+,+,+,+*)*)*)*)*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!"!"!"!          - - - - - - - -12121212/0/0/0/0.-.-.-.-,+,+,+,+*)*)*)*)*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!             - - - - - - - -12121212/0/0/0/0.-.-.-.-,+,+,+,+*)*)*)*)*)*)*)('('('('('&%&%&%&%$#$#$#$#"!"!"!"!             - - - - - - 12121212/0/0/0/0.-.-.-.-,+,+,+,+*)*)*)*)('('('('('('('('&%&%&%&%$#$#$#$#"!"!"!"!             - - - -12121212/0/0/0//.-.-.-.-,+,+,+,+*)*)*)*)('('('('('('('('&%&%&%&%$#$#$#$#"!"!"!"!             - - - -12121212////0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('('('('('&%&%&%&%$#$#$#$#"!"!"!"!             - - - -121212120/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('('('('('&%&%&%&%$#$#$#$#"!"!"!"!            - - - -121212120/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('('('('('&%&%&%&%$#$#$#$#"!"!"!"!         - - - -1210/0/00/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('('('('&%&%&%&%&%$#$#$#$#"!"!"!"!         - - - -/0//////0/////0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!         - - - -0/0/0/0/0/0/0/.-.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!          - - - -0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!             - - - -0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!             - - - -0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!             - - - -0/0/0///.-.-.-.-.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%&%&%&%$#$#$#$#$#"!"!"!"!             - - - -///0/0/0.-.-.-.-.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!             - - - -/0/0/0/0.-.-.-.-.-.-.-,+,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!           - - - -/0/0/0/0.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!         - - - -/0/0/0/0.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!         - - - -/0/0/0/0.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!         - - - -//////0/.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#$#$#$#"!"!"!"!"!         - - - -0/0/0/0/.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!"!"!"!"!         - - - -0/0/0/0/.-.-.-.-,+,+,+,+,+,+,+*)*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!"!"!"!"!         - - - - - -0/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!"!"!"!"!         - - - - - - - -~~}}aabbccdd$$##""!!nnooppqqXYYZZ[[\A@@??>>=())**++,qppoonnm `aabbccd9887766501122334ihhggffehiijjkklmnnooppqQQRRSSTTHHGGFFEE!!""##$$xxwwvvuu YYZZ[[\\@@??>>==))**++,,ppoonnmmaabbccdd$$##""!!ffgghhii$$##""!!IJJKKLLMPOONNMML~~}}|QRRSSTTUHGGFFEED!""##$$%xwwvvuut YZZ[[\\]||{{zzyyeeffgghh rrssttuu\]]^^__`=<<;;::9,--..//0mllkkjjideeffggh5443322145566778eddccbbalmmnnoopqrrssttuUUVVWWXXDDCCBBAA%%&&''((ttssrrqq - - ]]^^__``<<;;::99--..//00llkkjjiieeffgghh jjkkllmm MNNOOPPQLKKJJIIH !|{{zzyyxUVVWWXXYDCCBBAA@%&&''(()tssrrqqp - - ]^^__``axxwwvvuu iijjkkllvvww}}~~`aabbccd9887766501122334ihhggffehiijjkkl100//..-899::;;>==))**++,,ppoonnmmaabbccdd8877665511223344hhggffeeiijjkkllnnooppqqQRRSSTTUHGGFFEED!""##$$%xwwvvuut YZZ[[\\]@??>>==<)**++,,-poonnmmlabbccddettssrrqq - - mmnnoopp -deeffggh5443322145566778eddccbbalmmnnoop-,,++**)<==>>??@]\\[[ZZY tuuvvwwx - - ~ ]]^^__``<<;;::99--..//00llkkjjiieeffgghh4433221155667788ddccbbaammnnoopprrssttuuUVVWWXXYDCCBBAA@%&&''(()tssrrqqp - - ]^^__``a<;;::998-..//001lkkjjiiheffgghhi,++**))(ppoonnmm - - qqrrsstt ~~}}|{zy - hiijjkkl100//..-899::;;>==<)**++,,-poonnmmlabbccdde8776655412233445hggffeedijjkkllm(''&&%%$llkkjjii uuvvwwxx - - xwwvvuutlmmnnoop-,,++**)<==>>??@]\\[[ZZY tuuvvwwx%$$##""!DEEFFGGHUTTSSRRQ|}}~~ yxwwvvuueeffgghh4433221155667788ddccbbaammnnoopp,,++**))==>>??@@\\[[ZZYY uuvvwwxx - -  -]^^__``a<;;::998-..//001lkkjjiiheffgghhi4332211056677889dccbbaa` mnnooppq$##""!! hhggffeeyyzz{{|| - - tssrrqqp - - pqqrrsst)((''&&%@AABBCCDYXXWWVVUxyyzz{{|! HIIJJKKLQPPOONNM~~} - - ttssrrqqiijjkkll00//..--99::;;<<``__^^]] - - qqrrsstt((''&&%%AABBCCDDXXWWVVUUyyzz{{||~~}}|{zy - abbccdde8776655412233445hggffeedijjkkllm0//..--,9::;;<<=`__^^]]\ - - qrrssttu ddccbbaa}}~~poonnmml tuuvvwwx%$$##""!DEEFFGGHUTTSSRRQ|}}~~LMMNNOOPMLLKKJJI }wwvvuut ppoonnmmmmnnoopp,,++**))==>>??@@\\[[ZZYY uuvvwwxx$$##""!!EEFFGGHHTTSSRRQQ}}~~ xwwvvuuteffgghhi4332211056677889dccbbaa` mnnooppq,++**))(=>>??@@A\[[ZZYYX uvvwwxxy``__^^]]~~}}lkkjjiihxyyzz{{|! HIIJJKKLQPPOONNM~~}PQQRRSSTIHHGGFFE !!""##$tssrrqqpllkkjjii - - qqrrsstt((''&&%%AABBCCDDXXWWVVUUyyzz{{|| IIJJKKLLPPOONNMM~~}} - - tssrrqqpijjkkllm0//..--,9::;;<<=`__^^]]\ - - qrrssttu(''&&%%$ABBCCDDEXWWVVUUTyzz{{||}\\[[ZZYY wwvvuutthggffeed|}}~~LMMNNOOPMLLKKJJI }||{{zzyTUUVVWWXEDDCCBBA$%%&&''(poonnmmlhhggffee uuvvwwxx$$##""!!EEFFGGHHTTSSRRQQ}}~~MMNNOOPPLLKKJJII wwvvuuttpoonnmml mnnooppq,++**))(=>>??@@A\[[ZZYYX uvvwwxxy$##""!! EFFGGHHITSSRRQQP}~~ XXWWVVUU!!""##$$ssrrqqpp !!""cba`__^^~~}PQQRRSSTIHHGGFFE !!""##$yxxwwvvu XYYZZ[[\A@@??>>=())**++,lkkjjiih !!"dcba`__^yyzz{{|| IIJJKKLLPPOONNMM~~}}QQRRSSTTHHGGFFEE!!""##$$ssrrqqpplkkjjiih - - qrrssttu(''&&%%$ABBCCDDEXWWVVUUTyzz{{||} IJJKKLLMPOONNMML~~}}w - - TTSSRRQQ%%&&''((oonnmmll##$$%%&&]]\\[[ZZ }||{{zzyTUUVVWWXEDDCCBBA$%%&&''(uttssrrq - - \]]^^__`=<<;;::9,--..//0hggffee_"##$$%%&^]]\\[[Z}}~~MMNNOOPPLLKKJJII ||{{zzyyUUVVWWXXDDCCBBAA%%&&''((oonnmmllhggffeed uvvwwxxy$##""!! EFFGGHHITSSRRQQP}~~MNNOOPPQLKKJJIIH !wvvuuttsPPOONNMM))**++,,kkjjiihh''(())**YYXXWWVV !!""##$yxxwwvvu XYYZZ[[\A@@??>>=())**++,qppoonnm `aabbccd9887766501122334_^^]]\\[&''(())*ZYYXXWWV~~}}QQRRSSTTHHGGFFEE!!""##$$xxwwvvuu YYZZ[[\\@@??>>==))**++,,kkjjiihh !!""cba`__^^yzz{{||} IJJKKLLMPOONNMML~~}}|QRRSSTTUHGGFFEED!""##$$%srrqqppo -LLKKJJII--..//00ggffee__++,,--..UUTTSSRR$%%&&''(uttssrrq - - \]]^^__`=<<;;::9,--..//0mllkkjjideeffggh5443322145566778[ZZYYXXW*++,,--.VUUTTSSR ||{{zzyyUUVVWWXXDDCCBBAA%%&&''((ttssrrqq - - ]]^^__``<<;;::99--..//00ggffee__##$$%%&&]]\\[[ZZ}~~MNNOOPPQLKKJJIIH !|{{zzyyxUVVWWXXYDCCBBAA@%&&''(()onnmmllk - HHGGFFEE11223344^^]]\\[[//556677QQPPOONN())**++,qppoonnm `aabbccd9887766501122334ihhggffehiijjkkl100//..-899::;;>==))**++,,ppoonnmmaabbccdd8877665511223344^^]]\\[[''(())**YYXXWWVV~~}}|QRRSSTTUHGGFFEED!""##$$%xwwvvuut YZZ[[\\]@??>>==<)**++,,-kjjiihhgDDCCBBAA55667788ZZYYXXWW8899::;;MMLKJIHG,--..//0mllkkjjideeffggh5443322145566778eddccbbalmmnnoop-,,++**)<==>>??@SRRQQPPO78899::;NMMLKJIH%%&&''((ttssrrqq - - ]]^^__``<<;;::99--..//00llkkjjiieeffgghh4433221155667788ZZYYXXWW++,,--..UUTTSSRR !|{{zzyyxUVVWWXXYDCCBBAA@%&&''(()tssrrqqp - - ]^^__``a<;;::998-..//001gffee__^@@??>>==99::;;<>??GFFEEDDC01122334ihhggffehiijjkkl100//..-899::;;>?GGFFEEDD))**++,,ppoonnmmaabbccdd8877665511223344hhggffeeiijjkkll00//..--99::;;<>==<)**++,,-poonnmmlabbccdde8776655412233445^]]\\[[Z<<;;::99==>>??@@RRQQPPOO@@AABBCCCBBAA@@?45566778eddccbbalmmnnoop-,,++**)<==>>??@]\\[[ZZY tuuvvwwx%$$##""!DEEFFGGHFEEDDCCB?@@AABBCCCBBAA@@--..//00llkkjjiieeffgghh4433221155667788ddccbbaammnnoopp,,++**))==>>??@@RRQQPPOO8899::;;MMLKJIHG%&&''(()tssrrqqp - - ]^^__``a<;;::998-..//001lkkjjiiheffgghhi4332211056677889ZYYXXWWV !!""#88776655AABBCCDDNNMMGGFFDDEEFFGG?>>==<<;899::;;CDDEEFFG??>>==<<11223344hhggffeeiijjkkll00//..--99::;;<<``__^^]] - - qqrrsstt((''&&%%AABBCCDDNNMMGGFF<<==>>??GFFEEDDC)**++,,-poonnmmlabbccdde8776655412233445hggffeedijjkkllm0//..--,9::;;<<=VUUTTSSR#$$%%&&'44332211EEFFGGHHEEDDCCBBMMNNOOPP;::99887<==>>??@]\\[[ZZY tuuvvwwx%$$##""!DEEFFGGHUTTSSRRQ|}}~~LMMNNOOP>==<<;;:GMMNNOOP;;::998855667788ddccbbaammnnoopp,,++**))==>>??@@\\[[ZZYY uuvvwwxx$$##""!!EEFFGGHHEEDDCCBB@@AABBCCCBBAA@@?-..//001lkkjjiiheffgghhi4332211056677889dccbbaa` mnnooppq,++**))(=>>??@@ARQQPPOON'(())**+00//..--IIJJKKLLAA@@??>>QQRRSSTT76655432@AABBCCDYXXWWVVUxyyzz{{|! HIIJJKKLQPPOONNM~~}PQQRRSST:9988776PQQRRSST7766554399::;;<<``__^^]] - - qqrrsstt((''&&%%AABBCCDDXXWWVVUUyyzz{{|| IIJJKKLLAA@@??>>DDEEFFGG?>>==<<;12233445hggffeedijjkkllm0//..--,9::;;<<=`__^^]]\ - - qrrssttu(''&&%%$ABBCCDDENMMGGFFE+,,--../,,++**))MMNNOOPP==<<;;::UUVVWWXX10//..--DEEFFGGHUTTSSRRQ|}}~~LMMNNOOPMLLKKJJI }||{{zzyTUUVVWWX655//..-TUUVVWWX210//..-==>>??@@\\[[ZZYY uuvvwwxx$$##""!!EEFFGGHHTTSSRRQQ}}~~MMNNOOPP==<<;;::MMNNOOPP;::9988756677889dccbbaa` mnnooppq,++**))(=>>??@@A\[[ZZYYX uvvwwxxy$##""!! EFFGGHHIEDDCCBBA/5566778((''&&%%QQRRSSTT99887766YYZZ[[\\,,++**))HIIJJKKLQPPOONNM~~}PQQRRSSTIHHGGFFE !!""##$yxxwwvvu XYYZZ[[\-,,++**)XYYZZ[[\-,,++**)AABBCCDDXXWWVVUUyyzz{{|| IIJJKKLLPPOONNMM~~}}QQRRSSTT99887766QQRRSSTT766554329::;;<<=`__^^]]\ - - qrrssttu(''&&%%$ABBCCDDEXWWVVUUTyzz{{||} IJJKKLLMA@@??>>=899::;;<$$##""!!UUVVWWXX55//..--]]^^__ee((''&&%%LMMNNOOPMLLKKJJI }||{{zzyTUUVVWWXEDDCCBBA$%%&&''(uttssrrq - - \]]^^__`)((''&&%\]]^^__e)((''&&%EEFFGGHHTTSSRRQQ}}~~MMNNOOPPLLKKJJII ||{{zzyyUUVVWWXX55//..--UUVVWWXX10//..--=>>??@@A\[[ZZYYX uvvwwxxy$##""!! EFFGGHHITSSRRQQP}~~MNNOOPPQ=<<;;::9<==>>??@ YYZZ[[\\,,++**))ffgghhii$$##""!!PQQRRSSTIHHGGFFE !!""##$yxxwwvvu XYYZZ[[\A@@??>>=())**++,qppoonnm `aabbccd%$$##""!effgghhi%$$##""!IIJJKKLLPPOONNMM~~}}QQRRSSTTHHGGFFEE!!""##$$xxwwvvuu YYZZ[[\\,,++**))YYZZ[[\\,,++**))ABBCCDDEXWWVVUUTyzz{{||} IJJKKLLMPOONNMML~~}}|QRRSSTTU98877665@AABBCCD]]^^__``((''&&%%jjkkllmm TUUVVWWXEDDCCBBA$%%&&''(uttssrrq - - \]]^^__`=<<;;::9,--..//0mllkkjjideeffggh! ijjkkllm! MMNNOOPPLLKKJJII ||{{zzyyUUVVWWXXDDCCBBAA%%&&''((ttssrrqq - - ]]^^__``((''&&%%]]^^__ee((''&&%%EFFGGHHITSSRRQQP}~~MNNOOPPQLKKJJIIH !|{{zzyyxUVVWWXXY5//..--,DEEFFGGMMNNOOPPQ::99887766778899ccbbaa`` nnooppqq++**))((>>??@@AA[[ZZYYXXvvwwxxyy##""!! FFGGHHIIDDCCBBAAAABBCCDDBAA@@??>.//00112kjjiihhgfgghhiij3221100/6778899:cbbaa``_ -nooppqqr mllkkjji QRRSSTTU66554321::;;<<==__^^]]\\ - - rrssttuu''&&%%$$BBCCDDEEWWVVUUTTzz{{||}}JJKKLLMM@@??>>==EEFFGGMM>==<<;;:23344556gffeeddcjkkllmmn/..--,,+:;;<<==>_^^]]\\[ - rssttuuv - - -ihhggffeUVVWWXXY0//..--,>>??@@AA[[ZZYYXXvvwwxxyy##""!! FFGGHHIISSRRQQPP~~NNOOPPQQ<<;;::99NNOOPPQQ:99887766778899:cbbaa``_ -nooppqqr+**))(('>??@@AAB[ZZYYXXWvwwxxyyz - eddccbbaYZZ[[\\],++**))(BBCCDDEEWWVVUUTTzz{{||}}JJKKLLMMOONNMMLL~~}}||RRSSTTUU88776655RRSSTTUU65543210:;;<<==>_^^]]\\[ - rssttuuv'&&%%$$#BCCDDEEFWVVUUTTSz{{||}}~a``__^^]]^^__eef(''&&%%$FFGGHHIISSRRQQPP~~NNOOPPQQKKJJIIHH !!{{zzyyxxVVWWXXYY//..--,,VVWWXXYY//..--,,>??@@AAB[ZZYYXXWvwwxxyyz#""!! FGGHHIIJSRRQQPPO~xxw]\\[[ZZY fgghhiij$##""!! JJKKLLMMOONNMMLL~~}}||RRSSTTUUGGFFEEDD""##$$%%wwvvuutt ZZ[[\\]]++**))((ZZ[[\\]]++**))((BCCDDEEFWVVUUTTSz{{||}}~JKKLLMMNONNMMLLKwvvuuttsYXXWWVVU !!""##$jkkllmmn NNOOPPQQKKJJIIHH !!{{zzyyxxVVWWXXYYCCBBAA@@&&''(())ssrrqqpp - - ^^__``aa''&&%%$$^^__eeff''&&%%$$FGGHHIIJSRRQQPPO~NOOPPQQRKJJIIHHG !!"srrqqppo !!""#UTTSSRRQ$%%&&''(nooppqqrRRSSTTUUGGFFEEDD""##$$%%wwvvuutt ZZ[[\\]]??>>==<<**++,,--oonnmmllbbccddee##""!! gghhiijj##""!! JKKLLMMNONNMMLLK~~}}||{RSSTTUUVGFFEEDDC"##$$%%&onnmmllk#$$%%&&'QPPOONNM())**++,rssttuuvVVWWXXYYCCBBAA@@&&''(())ssrrqqpp - - ^^__``aa;;::9988..//0011kkjjiihhffgghhiikkllmmnnNOOPPQQRKJJIIHHG !!"{zzyyxxwVWWXXYYZCBBAA@@?&''(())*kjjiihhg'(())**+MLLKKJJI,--..//0vww}}~~ZZ[[\\]]??>>==<<**++,,--oonnmmllbbccddee7766554422334455ggffeeddjjkkllmmooppqqrrRSSTTUUVGFFEEDDC"##$$%%&wvvuutts Z[[\\]]^?>>==<<;*++,,--.gffee__^+,,--../IHHGGFFE01122334~ - -^^__``aa;;::9988..//0011kkjjiihhffgghhii3322110066778899ccbbaa`` nnooppqqssttuuvvVWWXXYYZCBBAA@@?&''(())*srrqqppo - - ^__``aab;::99887.//00112^]]\\[[Z/5566778EDDCCBBA45566778~}}|{zyx bbccddee7766554422334455ggffeeddjjkkllmm//..--,,::;;<<==__^^]]\\ - - rrssttuu ww}}~~ Z[[\\]]^?>>==<<;*++,,--.onnmmllkbccddeef7665544323344556ZYYXXWWV899::;;>=899::;;>??@@AA[[ZZYYXXvvwwxxyy - - ~~ - - ^__``aab;::99887.//00112kjjiihhgfgghhiij3221100/6778899:VUUTTSSR<==>>??@=<<;;::9<==>>??@ssrrqqppjjkkllmm//..--,,::;;<<==__^^]]\\ - - rrssttuu''&&%%$$BBCCDDEEWWVVUUTTzz{{||}}}}|{zyxw bccddeef7665544323344556gffeeddcjkkllmmn/..--,,+:;;<<==>RQQPPOON@AABBCCD98877665@AABBCCDoonnmmll nnooppqq++**))((>>??@@AA[[ZZYYXXvvwwxxyy##""!! FFGGHHIISSRRQQPP~~ - -wvvuuttsfgghhiij3221100/6778899:cbbaa``_ -nooppqqr+**))(('>??@@AABNMMGGFFEDEEFFGGM54433221DEEFFGGHkkjjiihh - - rrssttuu''&&%%$$BBCCDDEEWWVVUUTTzz{{||}}JJKKLLMMOONNMMLL~~}}ww srrqqppojkkllmmn/..--,,+:;;<<==>_^^]]\\[ - rssttuuv'&&%%$$#BCCDDEEFEDDCCBBAMNNOOPPQ100//..-HIIJJKKLggffeedcvvwwxxyy##""!! FFGGHHIISSRRQQPP~~NNOOPPQQKKJJIIHH !!vvuuttssonnmmllk -nooppqqr+**))(('>??@@AAB[ZZYYXXWvwwxxyyz#""!! FGGHHIIJA@@??>>=QRRSSTTU-,,++**)LMMNNOOPba`__^^]zz{{||}}JJKKLLMMOONNMMLL~~}}||RRSSTTUUGGFFEEDD""##$$%%rrqqppookjjiihhg - rssttuuv'&&%%$$#BCCDDEEFWVVUUTTSz{{||}}~JKKLLMMN=<<;;::9UVVWWXXY)((''&&%PQQRRSST]\\[[ZZY~~NNOOPPQQKKJJIIHH !!{{zzyyxxVVWWXXYYCCBBAA@@&&''(())nnmmllkkgffeedcbvwwxxyyz#""!! FGGHHIIJSRRQQPPO~NOOPPQQR98877665YZZ[[\\]%$$##""!TUUVVWWXYXXWWVVU~~}}||RRSSTTUUGGFFEEDD""##$$%%wwvvuutt ZZ[[\\]]??>>==<<**++,,--jjiihhgg !!""##a`__^^]]z{{||}}~JKKLLMMNONNMMLLK~~}}||{RSSTTUUV5//..--,]^^__eef! XYYZZ[[\UTTSSRRQ !!{{zzyyxxVVWWXXYYCCBBAA@@&&''(())ssrrqqpp - - ^^__``aa;;::9988..//0011ffee__^^$$%%&&''\\[[ZZYY~NOOPPQQRKJJIIHHG !!"{zzyyxxwVWWXXYYZ,++**))(fgghhiij\]]^^__`QPPOONNM""##$$%%wwvvuutt ZZ[[\\]]??>>==<<**++,,--oonnmmllbbccddee7766554422334455]]\\[[ZZ(())**++XXWWVVUU~~}}||{RSSTTUUVGFFEEDDC"##$$%%&wvvuutts Z[[\\]]^(''&&%%$jkkllmmn`aabbccdMLKJIHGG&&''(())ssrrqqpp - - ^^__``aa;;::9988..//0011kkjjiihhffgghhii3322110066778899YYXXWWVV,,--..//TTSSRRQQ !!"{zzyyxxwVWWXXYYZCBBAA@@?&''(())*srrqqppo - - ^__``aab$##""!! nooppqqrdeeffgghFFEEDDCC**++,,--oonnmmllbbccddee7766554422334455ggffeeddjjkkllmm//..--,,::;;<<==UUTTSSRR55667788PPOONNMM"##$$%%&wvvuutts Z[[\\]]^?>>==<<;*++,,--.onnmmllkbccddeef rssttuuu hiijjkklBBAA@@??..//0011kkjjiihhffgghhii3322110066778899ccbbaa`` nnooppqq++**))((>>??@@AAQQPPOONN99::;;<>==<<;;22334455ggffeeddjjkkllmm//..--,,::;;<<==__^^]]\\ - - rrssttuu''&&%%$$BBCCDDEEMMGGFFEE==>>??@@FEEDDCCB*++,,--.onnmmllkbccddeef7665544323344556gffeeddcjkkllmmnqppoonnm - - pqqrrssttuuZHAbr˂ptlJnXv`J`ےJbdQfH~˙ے`JXJtArdfpvfHrXQJ`ہdrtnvpZHAbrbtl|ZdQXv`QJ`ےAJbdQ`vXnr˂p|ZdQbnXv`fpvbHAZJltH~fے`JXQZHAےtlJnXv`bHAZpbdQZ|vpfHZHAbۉlJtf~HnXv`ˑ˂rXbdQZ|vXnr˂p`JXQArd|ے`JXQZHAbtArdf~HbHAZpZ|df`vXQr˂p|ZdQnXv`fpv㒐bHAAJltfH~˙ے`JXJtAdbtlf~HbHAZpZ|dvpfZHAbtlJf~HnXv`p˂rbdQZ|`vXnr˂p`JXQrtArdf~H˂rXQdrtA~f``JXQArd|fpvf~HQJ`ےdrtAvpfHZHAbr˂pZdQbtr˂pے`JXQ|ZdQbXv`f˂brtAJlnvpZHAbbtlf~HnrXQJ`Zp˂bdQZ|f`vXQr˂p|ZdQJtArdfpv˂rtAJlH~fے`JXQtArdfpvfHfXQJ`ےdrtAvpfZHAbbtl|ZdQbXv`fJ`ےJbdQvXnr˂pZdQbtnXv`fpvbHAZpJlt~f``JXQZHAے`lJtZHAbr˂ptlJ~HfHAZdtbdQfH~˙ے`JXJtArdfpvےHArXQJ`ہdrtnvpZHAbbtl|ZdQnXv`pbHAZdtbdQ`vXnr˂p|ZdQbnXv`pvnbHAZJltH~fے`JXQJtAdtlJ~HfbHAZpZ|dvpfHZHAbۉlJtf~HnXv`ˑ˂rXbdQZ|vXnr˂pJXQrArd|f~Hے`JXQ|ZdQbtArdpvnrtAJZ|dnf`vXQr˂p|ZdQnXv`Zp˂󒐙bHAAJltfH~˙ے`JXJtArdbtlvnrtAJZ|AJvpfZHAbtlJf~HrXQJ`p˂rbdQZ|`vXnr˂p|ZdQbtArdpvn˂brtAJl~f``JXQArd|fpvfHfpQJ`ےdrtAvpfHZHAbbtlZdQbtfpvr˂ptlJ|ZdQbXv`pbdQZ|vfnvpZHAbbtlf~HrXQJ`Zp˂bdQZ|f`vXQr˂p|ZdQJtArdrXQJ`pbdQZ|ltbH~fے`JXQtArdfpvےHAZXQJ`ےdrtAvpfZHAbtlJ|ZdQbXv`pHAZdtbdQvXnr˂pZdQbtnXv`˝vnbHAZpJlt~f``JXQJtAd|lJtnXv`ZHAbtArdtlJ˂rXQdrtAf`vXfH~˙ے`JXJtArdfpvbHArXQJ`ہdrtnvpZHAbbtlf~H˂rXdrtAnvp`vXnr˂p|ZdQbnXv`p˂rbHAZJltH~fے`JXQtArdtlJvnrrtAJZ|AJlvpfHZHAbۉlJtf~HrXQJ`ۑ˂rXbdQZ|vXnr˂pZdQbtArd|f~HXے`JXQ|ZdQbtArdJ`ےJltnvpf`vXQr˂p|ZdQnXv`Zp˂󒐙bHAAJltfH~˙ے`JXJtArdXv`QJ`ےJltfHfvpfZHAbtlJf~HXQJ`ےp˂rbdQZ|`vXnr˂p|ZdQbtArdXQJ`pbdQZ|tb~f``JXQArd|fpv㒐HAZpQJ`ےdrtAvpfHZHAbۉlJtZdQbtv`fr˂ptlJf~HbHAZpbdQZ|fH~nvpZHAbbtlf~HrXQJ`ZdrtbdQZ|f`vXQr˂p|ZdQf~HbHAZpbdQZ|`vXnH~fے`JXQtArdfpvbHAZXQJ`ےdrtAvpfZHAbtlJf~H˂rXQdrtAnvpvXnr˂pZdQbtnXv`ˑ˂rXbHAZpJlt~f``JXQArd|lJt~HfpZHAbtArdXv`f˂bdrtAJf`vXfH~˙ے`JXJtArdfpvbHAAJltdrtnvpZHAbbtlfpv˂drtAvpf`vXnr˂p|ZdQbnXv`p˂rbHAZJltH~fے`JXQtArdXv`fJ`ےJltfHf`vpfHZHAbۉlJtf~HQJ`ے˂rXbdQZ|vXnr˂pZdQbtArd˝vnXے`JXQ|ZdQb~HfHAZp˂bdQZnvpfZHAbQr˂p|ZdQnXv`Zp˂bdQZ|AJltfH~˙ے`JXJtArdnXv`bHAZpJbdQH~fvpfZHAbtlJf~HXQJ`ےdrtAbdQZ|`vXnr˂p|ZdQb~HfbHAZpbdQZ|vXn~f``JXQArd|fpvbHAZpQJ`ےdrtAvpfHZHAbۉlJtf~HXv`pr˂ptlJpvnrXQJ|drfH~˙ے`JXZHAbbtlf~HrXQJ`ہdrtbdQZ|f`vXQr˂p|ZdQf~HXrXQZ|d`vXnH~fے`JXQtArdfpvbHAZJltdrtAvpfZHAbtlJpvn˂bdrtAJvpfHvXnr˂pZdQbtnXv`ˑ˂rXbHAZJlt~f``JXQArd|v`fvnrXZHAbtArdXv`f`ےbtAJlf`vXQr˂pے`JXJtArdfpvbHAAJltdtAnvpZHAbbtlv`fJ`ےrtAJl瀅vpfZHAbr˂p|ZdQbnXv`p˂rbdQZ|JltH~fے`JXQtArdXv`fHAZp˂bdQZ~f`vpfHZHAbۉlJtf~HQJ`ےdrtAbdQZ|vXnr˂pZdQbt~HfpQJ`pے`JXQ|ZdQb~HXHAZp˂tbdQZnvpZHAbQr˂p|ZdQnXv`Zp˂bdQZ|JltfH~˙ے`JXJtArd~HfpbHAZp˒tbdQH~fے`JXQZHAbtlJf~HXQJ`ےdrtAbdQZ|`vXnr˂p|ZdQb~HXrXQJ|drvXn~f`JXQArd|fpvbHAZpJltdrtAvpfHZHAbۉlJtvnXrXQr˂ptlJv`fbHA|drfH~˙ے`JXZHAbtlf~HrXQJ`ہdrtbnvpf`vXQr˂p|ZdQvnXbHZ|d`vXnr˂pے`JXQtArdfpvbHAZJltdtAJvpfZHAbtlJv`f`ےbtAJl璅vpfHZHAbr˂pZdQbtnXv`ˑ˂rXbdQZ|Jlt~f``JXQArd|v`fJ`ےZHAbtArd~HfpZp˂tAJbdf`vXQr˂p`JXQJtArdfpvbHAAJltfHnvpZHAbbtlv`fAZp˂rtAJbvpfZHAbr˂p|ZdQbnXv`p˂rbdQZ|ltbH~fے`JXQtArd~HfpHAZp˂tbdQZ~f``JXQZHAbۉlJtf~HQJ`ےdrtAbdQZ|vXnr˂pZdQbt~HXbHAZpے`JXQ|ZdQbvnXrXQJ`QZ|dnvpZHAbrbtl|ZdQnXv`Zp˂bdQZ|f`vXfH~˙ے`JXJtArd~HXrXQJ`dQZ|H~fے`JXQZHAےtlJf~HXQJ`ےdrtAnvp`vXnr˂p|ZdQbvnXbHA|drvXnr˂p`JXQArd|fpvbHAZpJltdtAJlvpfHZHAbۉlJtv`f󂀉bHr˂ptlJv`fےbHArtAJlfH~˙ے`JXJtAdbtlf~HrXQJ`ہdrtnvpf`vXQr˂p|ZdQv`fےbHdrtAJ`vXnr˂p`JXQrtArdfpvbHAZJltfHfvpfZHAbtlJv`fZp˂tAJbdvpfHZHAbr˂pZdQbtnXv`ˑ˂rXbdQZ|tb~f``JXQArd|~HfpAZp˂ZHAbtArd~HXvZp˂tbdf`vXQr˂p|ZdQJtArdfpvbHAAJltfH~nvpZHAbbtl~HfpAZp˂ltbvpfZHAbbtl|ZdQbnXv`p˂rbdQZ|`vXnH~fے`JXQtArd~HXvrXQJ`QZ|d~f``JXQZHAے`lJtf~HQJ`ےdrtAnvpvXnr˂pZdQbtvnXrXQJ`ے`JXQ|ZdQb`f~bHAZQZ|dnvpZHAbbtl|ZdQnXv`Zp˂bdQZ|f`vXfH~˙ے`JXJtArdvnXbHAdQZ|H~fے`JXQJtAdtlJf~HXQJ`ےdrtAvpf`vXnr˂p|ZdQb`f~ےbHArtAJlvXnr˂pJXQrArd|fpvbHAZpJltfHf`vpfHZHAbۉlJtv`fےbHr˂ptlJHfpvp˂rrtAJfH~˙ے`JXJtArdbtlf~HrXQJ`ہdrtnvpfZHAbQr˂p|ZdQv`fZp˂drtAJ`vXnr˂p|ZdQbtArdfpvbHAZJltH~fvpfZHAbtlJHfpvZp˂tbdvpfHZHAbbtlZdQbtnXv`ˑ˂rXbdQZ|vXn~f``JXQArd|~HXv`AZp˂ZHAbtArdnXvXQJ`ےbdQZ|f`vXQr˂p|ZdQJtArdfpvbHAAJltfH~˙ے`JXZHAbbtl~HXv`rXQJ`ےbdQZ|vpfZHAbtlJ|ZdQbnXv`p˂rbdQZ|`vXnH~fے`JXQtArdnXvbHAZQZ|d~f``JXQJtAd|lJtf~HQJ`ےdrtAvpfHvXnr˂pZdQbtf~HbHAے`JXQ|ZdQb`f~bHAZdrtAnvpZHAbbtlf~HnXv`Zp˂bdQZ|f`vXQr˂pے`JXJtArdf~HbHAdrtH~fے`JXQtArdtlJf~HXQJ`ےdrtAvpfZHAbr˂p|ZdQb`f~p˂rrtAJvXnr˂pZdQbtArd|fpvbHAZpJlt~f`vpfHZHAbۉlJtfpvZp˂r˂ptlJHXv`p˂JltfH~˙ے`JXJtArdfpvf~HrXQJ`ہdrtnvpZHAbQr˂p|ZdQfpvZp˂AJlt`vXnr˂p|ZdQbtArdfpvbHAZJltH~fے`JXQZHAbtlJHXv`XQJ`ےbdQZ|vpfHZHAbۉlJtZdQbtnXv`ˑ˂rXbdQZ|vXn~f`JXQArd|nXv`rXQJ`ZHAbtArdf~HbHAZpbdQZ|f`vXQr˂p|ZdQnXv`fpvbHAAJltfH~˙ے`JXZHAbtlnXv`bHAZpbdQZ|vpfZHAbtlJf~HnXv`p˂rbdQZ|`vXnr˂pے`JXQtArdf~HbHAZdrtA~f``JXQArd|lJtf~HQJ`ےdrtAvpfHZHAbr˂pZdQbtf~HbHAے`JXQ|ZdQbfpv˂rXQdrtAnvpZHAbbtlf~HnXv`Zp˂bdQZ|f`vXQr˂p`JXQJtArdf~H˂rXdrtH~fے`JXQtArdfpvf~HXQJ`ےdrtAvpfZHAbr˂p|ZdQbfpvp˂JltvXnr˂pZdQbtArdfpvbHAZpJlt~f``JXQZHAbۉlJtXv`Zp˂bHAZpZ|d~f``JXQrtAd|lJtA~HfJ`ےdrtAJvpfHvXn˂pZZdQbtf~HbHAZrtAJlvXnۉ˂pZHJXQrbtrd|vnXbHAZpˑtbdf`vpfHJXQrXnvˍQtJl˂rXrtAJvXn˂pZZdQbtrd|pvnbHAZpltb~f`vpfHHAbےlJtAfpvp˂tbdQvpfHAbے`lJtZdQbtv`frXQQZ|dvXn~f`˂p`ZpfH~tbAdZQJ`ےbdQZ|vpfHHAbےlJtAZdQbtXv`f˂rXQdQZ|vXn~fZ`JXQrrd|nXv`bHAZpZ|d~f`JXQrAd|lJtA~HfpJ`ےrtAJlvpfHvXnQXb㉀f۝`v|drbHAZpdrtA~f``JXQrrd|lJtA~HfJ`ےdrtAJvpfHHAbے˂pZZdQbtf~H˂rXQrtAJbvXnۉ˂pZHZdQbtrd|vnXbHAZpˑtbd~f`vpfHۑpJAHrXnvˍQtJl˂JltvXn˂pZZdQbtrdfpvnbHAZpltb~f``JXQrHAbےlJtAXv`fJ`ےdQZ|vpfHAbے`lJtAZdQbtv`frXQQZ|dvXn~fr󙐂ˁ`ZpfH~tbAdZbHAZpbdQZ|vpfHHAbےlJtA~HfXv`f˂rXQdQZ|vXn˂pZ`JXQrrd|~HfbHAZpdrtAJ~f`JXQrrd|lJtA~HfpJ`ےrtAJlvpfH˂pZHQXAHrf۝`v|drrXQdrtAJ~f``JXQrrd|pvn~HfJ`ےdrtAJvpfHHAbے˂pZZdQbtpvn˂bltbvXnۉ˂pZHZdQbtrdfvnXbHAZpˑtbd~f`Abے`ˁ`ZQXnvˍQtJlJ`ے㑒bdQZvXn˂pZZdQbtXv`fpvnbHAZpltb~f``JXQrHAے`lJtAXv`fHAZp˂dQZ|vpfHAbے`lJtA~Hfpv`frXQQZ|dvXnہJXQrXb㉀ۑpfH~tbAdZbHAZp|drvpfHHAbےlJtA~HfXv`f˂rXQdQZ|vXn˂pZJXQrbrd|~HXrXQJdrtAJ~f`JXQrrd|vnX~HfpJ`ےrtAJlvpfH˂pZHpJAHrf۝`v|drbHtAJl~f``JXQrrd|pvnHfpJ`ےdrtAJvpfHHAbےtlJZdQbtv`f`ےbbdQZ|vXnۉ˂pZHZdQbtv`fvnXbHAZpˑtbd~f`Abːˁ`ZQXnvˍQtJlAZdtbdQZvXn˂pZZdQbtXv`fvnrbHAZpltb~f``JXQrtAd|lJtA~HfpHAZp˂drtvpfHAbے`lJtA~Hfpv`frXQQZ|dvXnۂpZHAXAHr󙐂pfH~tbAdZrtAJb|AJlvpfHHAbےlJtA~HfXQJ`ے˂rXQdQZ|vXn˂pZZdQbtrd|vnXbHAAJlt~f`JXQrrd|vnXHfpJ`ےrtAJlvpfHbے`ˁ`ZQXbf۝`v|drdQZ|tbn~f``JXQrrd|pvnHAZpJ`ےdrtAJvpfHHAbےlJtAZdQbtv`pvZdrbdQZ|vXnۉ˂pZHZdQbtv`fvnrXbHAZpˑtbd~f`JXQr㉀ۑpJXnvˍQtJldrtAJvpfvXn˂pZZdQbtXv`f˂rXQbHAZpltb~f``JXQrrd|lJtAnrXQtAJbdAJlvpfHAbے`lJtA~HfpQJ`ےrXQQZ|dvXnۂpZHAAHr󙐂pfH~tbAdZltbHf`vpfHHAbےlJtA~HfJ`ے˂rXQdQZ|vXn˂pZZdQbtrdfJ`p˂QZ|dtbn~f`JXQrrd|vnXHAZpJ`ےrtAJlvpfHb˂pˁ`ZQXAf۝`v|drdQZ|vXn~f``JXQrrd|pvnbHAZpJ`ےdrtAJvpfHHAbےlJtA~HXrXQJrtAJlvpfHvXnۉ˂pZHZdQbtv`frXQbHAZpˑtbd~f`ZHAbHr󙐂ˁXnvˍQtJldrtAJvpfHvXn˂pZZdQbtXv`f˂rXQbHAZltb~f``JXQrrd|v`f`ےbtbdf`vpfHAbے`lJtA~HfpJ`ےむrXQQZ|dvXnۙے`JX`ZQXbpfH~tbAdZbdQZ|~f`vpfHHAbےlJtA~HfJ`ےdrtAJdQZ|vXn˂pZZdQbt~HfpHAZp˂QZ|dvXn~f`JXQrrd|vnXbHAZpJ`ےrtAJlvpfHQr˂pۑpJAf۝`v|drdrtvXn~fZ`JXQrrd|pvnbHAZpltbdrtAJvpfHHAbےlJtAvnXbHArtAJvpfHvXnۉ˂pZHZdQbtv`frXQbHAZdtbd~f`ZHAbHr󙐂ˁXnvˍQtJlAJltvpfHHAbے˂pZZdQbtXv`f˂rXQdQZ|ltb~f``JXQrrd|v`fZp˂bdQZ|~f`vpfHAbے`lJtA~HfpJ`ےrtAJlQZ|dvXnۙ˂p`ZQXAHrpfH~tbAdZbdQZ|~f``JXQrHAbےlJtA~HfJ`ےdrtAJdQZ|vXn˂pZZdQbt~HXvrXQJ`drtAvXn~fZHJXQrrd|vnXbHAZpˑtbdrtAJlvpfHZHAb󙐂ˁ`Zf۝`v|drdrtvXn˂pZ`JXQrrd|pvnbHAZpltbdtAJlvpfHHAbےlJtA`f~ےbHAJltvpfHAbے`˂pZHZdQbtv`frXQQZ|dtbd~f``JXQQXb㉀XnvˍQtJlAJbdQvpfHHAbے˂pZZdQbtXv`f˂rXQdQZ|tbn~f``JXQrrd|HfpvZp˂bdQZ|~f`JXQrAbے`lJtA~HfpJ`ےrtAJlQZ|dvXnr˂pۑpJAHrpfH~tbAdZZ|d~f``JXQrHAے`lJtA~HfJ`ےdrtAJvpfvXn˂pZZdQbtnXvbHAZdrtAvXnۉ˂pZHJXQrrd|vnXbHAZpˑtbdtAJlvpfHZHAb󙐂ˁ`f۝`v|drrtAJlvXn˂pZJXQrbrd|pvnbHAZpltbHf`vpfHHAbےlJtA`f~p˂rJbdQvpfHAbے`˂pZHZdQbtv`frXQQZ|dtbn~f`˂pZHpfH~XnvˍQtJltbdQvpfHHAbےtlJZdQbtXv`f˂rXQdQZ|vXn~f``JXQrrd|HXv`XQJ`ےZ|d~f`JXQrAے`lJtA~HfpJ`ےrtAJlvpfHvXnAbے`f۝`vp|drtbAdZ|yz{|}~~}|{zIIIJJJJJJJJJJJJJJJJJJJJJJJ \ No newline at end of file diff --git a/barcode-generator/Resources/data/qrv28_1.dat b/barcode-generator/Resources/data/qrv28_1.dat deleted file mode 100644 index ac9d23b..0000000 --- a/barcode-generator/Resources/data/qrv28_1.dat +++ /dev/null @@ -1,257 +0,0 @@ -~}~}~}~}~}~}~}~}|{|{|{|{|{|{|{|{zyzyzyzyzyzyzyzyxwxwxwxwwwwwwxwxuvuvuvuvuvuvuvuvststststststststststststqrqrqrqrqrqrqrqropopopopopopopopopopopopmnmnmnmnmnmnmnmnklklklklklklklklklklklklijijijijijijijijghghghghghghghghgfefefefefefefefefefefefcdcdcdcdcdcdcdcdabababababababab_`_`_`_`______`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDABABABABABABABAB?@?@?@?@?@?@?@?@?@?@?@?@=>=>=>=>=>=>=>=>;<;<;<;<;<;<;<;<;<;<;<;<9:9:9:9:9:9:9:9:7878787878787878787878785656565656565656343434343434343412121212121212120/0/0////0/0/0/0.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!            ~}~}~}~}~}~}~}~}|{|{|{|{|{|{|{|{zyzyzyzyzyzyzyzyxwxwxwxwwxwxwxwxuvuvuvuvuvuvuvuvststststststststststststqrqrqrqrqrqrqrqropopopopopopopopopopopopmnmnmnmnmnmnmnmnklklklklklklklklkjijijijijijijijijijijijghghghghghghghghefefefefefefefefefefefefcdcdcdcdcdcdcdcdabababababababab_`_`_`_``_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGEFEFEFEFEFEFEFEFCDCDCDCDCDCDCDCDCDCDCDCDABABABABABABABAB?@?@?@?@?@?@?@?@?@?@?@?@=>=>=>=>=>=>=>=>;<;<;<;<;<;<;<;<;<;<;<;<9:9:9:9:9:9:9:9:787878787878787878787878565656565656565634343434343434341212121212121212///0/0/0/0/0/0/0.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!            ~}~}~}~}~}~}~}~}|{|{|{|{|{|{|{|{zyzyzyzyzyzyzyzyxwwwwwwxwxwxwxwxuvuvuvuvuvuvuvuvststststststststststststqrqrqrqrqrqrqrqropopopopopopopoponmnmnmnmnmnmnmnmnmnmnmnklklklklklklklklijijijijijijijijijijijijghghghghghghghghefefefefefefefefefefefefcdcdcdcdcdcdcdcdabababababababab_`______`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGGGGGGHGHEFEFEFEFEFEFEFEFCDCDCDCDCDCDCDCDCDCDCDCDABABABABABABABAB?@?@?@?@?@?@?@?@?@?@?@?@=>=>=>=>=>=>=>=>;<;<;<;<;<;<;<;<;<;<;<;<9:9:9:9:9:9:9:9:787878787878787878787878565656565656565634343434343434341212121212121212/0/0/0/0/0/0/0/0.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!            ~}~}~}~}~}~}~}~}|{|{|{|{|{|{|{|{zyzyzyzyzyzyxwxwwxwxwxwxwxwxwxwxuvuvuvuvuvuvuvuvststststststststsrqrqrqrqrqrqrqrqrqrqrqropopopopopopopopmnmnmnmnmnmnmnmnmnmnmnmnklklklklklklklklijijijijijijijijijijijijghghghghghghghghefefefefefefefefefefefefcdcdcdcdcdcdcdcdababababababa`_``_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIHGHGHGHGGHGHGHGHEFEFEFEFEFEFEFEFCDCDCDCDCDCDCDCDCDCDCDCDABABABABABABABAB?@?@?@?@?@?@?@?@?@?@?@?@=>=>=>=>=>=>=>=>;<;<;<;<;<;<;<;<;<;<;<;<9:9:9:9:9:9:9:9:787878787878787878787876565656565656565634343434343434341212121212121212/0/0/0/0/0/0/0//.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!            ~}~}~}~}~}~}~}~}~}~}~}~}|{|{|{|{|{|{|{|{zyzyzyzyxwxwwwwwwxwxwxwxwxwxwxwuuvuvuvuvuvuvuvuvststststststststqrqrqrqrqrqrqrqrqrqrqrqropopopopopopopopmnmnmnmnmnmnmnmnmnmnmnmnklklklklklklklklijijijijijijijijijijijijghghghghghghghghefefefefefefefefefefefefcdcdcdcdcdcdcdcbabababab_`_`____`_`_`_`_`_`_____^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIHGGGGGGHGHGHGHGHEFEFEFEFEFEFEFEFCDCDCDCDCDCDCDCDCDCDCDCDABABABABABABABAB?@?@?@?@?@?@?@?@?@?@?@?@=>=>=>=>=>=>=>=>;<;<;<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:787878787878787856565656565656565656565634343434343434341212121212121212/0/0/0/0////0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!            ~}~}~}~}~}~}~}~}~}~}~}~}|{|{|{|{|{|{|{zyzyzyzyzywxwxwxwxwxwxwxwxuuuuuvuvuvuvuvuvuvuvuvuvststststststststqrqrqrqrqrqrqrqrqrqrqrqropopopopopopopopmnmnmnmnmnmnmnmnmnmnmnmnklklklklklklklklijijijijijijijijijijijijghghghghghghghghefefefefefefefefefefefefcdcdcdcdabababababababab__`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIHGHGGHGHGHGHGHGHGHGHEFEFEFEFEFEFEFEFCDCDCDCDCDCDCDCDCDCDCDCDABABABABABABABAB?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>;<;<;<;<;<;<;<;<9:9:9:9:9:9:9:9:9:9:9:9:787878787878787856565656565656565656565634343434343434341212121212121212/0/0/0/00/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!           ~}~}~}~}~}~}~}~}~}~}~}~}|{|{|{|{zyzyzyzyzyzyzyzywxwxwxwxwxwxwxwxuvuvuvuvuvuvuvuvuvuvuvuvststststststststqrqrqrqrqrqrqrqrqrqrqrqropopopopopopopopmnmnmnmnmnmnmnmnmnmnmnmnklklklklklklklklijijijijijijijijijijijijghghghghghghghghefefefefefefefefedcdcdcdcdcdcdcdabababababababab`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKLKLKLKJIJIJIJIJIHGHGGGGGGHGHGHGHGHGGGGGHEFEFEFEFEFEFEFEFCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABAB?@?@?@?@?@?@?@?@=>=>=>=>=>=>=>=>=>=>=>=>;<;<;<;<;<;<;<;<9:9:9:9:9:9:9:9:9:9:9:9:787878787878787856565656565656565656565634343434343434341212121212121212//////0/0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!        ~}~}~}~}~}~}~}~}~}~}~}~}|{|{|{|{zyzyzyzyzyzyzyzywxwxwxwxwxwxwwwwuvuvuvuvuvuvuvuvuvuvuvuvststststststststqrqrqrqrqrqrqrqrqrqrqrqropopopopopopopopmnmnmnmnmnmnmnmnmnmnmnmnklklklklklklklklijijijijijijijijihghghghghghghghghghghghefefefefefefefefcdcdcdcdcdcdcdcdabababababababab`_`_`_`_`_`_`___^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMNMNMNMNMLKLKLKLKJIJIJIJIJIJIJIJIGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFCDCDCDCDCDCDCDCDABABABABABABABABABABABAB?@?@?@?@?@?@?@?@=>=>=>=>=>=>=>=>=>=>=>=>;<;<;<;<;<;<;<;<9:9:9:9:9:9:9:9:9:9:9:9:78787878787878785656565656565656565656563434343434343434121212121210/0/00/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('('('('&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!        ~}~}~}~}~}~}~}~}|{|{|{|{|{|{|{|{zyzyzyzyzyzyzyzywxwxwxwxwwxwxwxwuvuvuvuvuvuvuvuvuvuvuvuvststststststststqrqrqrqrqrqrqrqrqrqrqrqropopopopopopopopmnmnmnmnmnmnmnmnmlklklklklklklklklklklklijijijijijijijijghghghghghghghghghghghghefefefefefefefefcdcdcdcdcdcdcdcdabababababababab`_`_`_`____`_`_`^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIGHGHGHGHGHGHGHGHEFEFEFEFEFEFEFEFEFEFEFEFCDCDCDCDCDCDCDCDABABABABABABABABABABABAB?@?@?@?@?@?@?@?@=>=>=>=>=>=>=>=>=>=>=>=>;<;<;<;<;<;<;<;<9:9:9:9:9:9:9:9:9:9:9:9:7878787878787878565656565656565656565656343434343434321212121212/0//////0/0/0/0/0/////0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!        ~}~}~}~}~}~}~}~}|{|{|{|{|{|{|{|{zyzyzyzyzyzyzyzywxwxwxwwxwxwxwxwuvuvuvuvuvuvuvuvuvuvuvuvststststststststqrqrqrqrqrqrqrqrqpopopopopopopopopopopopmnmnmnmnmnmnmnmnklklklklklklklklklklklklijijijijijijijijghghghghghghghghghghghghefefefefefefefefcdcdcdcdcdcdcdcdabababababababab`_`_`_`__`_`_`_`^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIGHGHGHGHGHGHGGGGEFEFEFEFEFEFEFEFEFEFEFEFCDCDCDCDCDCDCDCDABABABABABABABABABABABAB?@?@?@?@?@?@?@?@=>=>=>=>=>=>=>=>=>=>=>=>;<;<;<;<;<;<;<;<9:9:9:9:9:9:9:9:9:9:9:9:78787878787878785656565656565656565656543434343412121212121212120/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!        ~}~}~}~}~}~}~}~}|{|{|{|{|{|{|{|{zyzyzyzyzyzyzyzywwwwxwxwxwxwxwxwuvuvuvuvuvuvuvuvutstststststststststststqrqrqrqrqrqrqrqropopopopopopopopopopopopmnmnmnmnmnmnmnmnklklklklklklklklklklklklijijijijijijijijghghghghghghghghghghghghefefefefefefefefcdcdcdcdcdcdcdcdabababababababab_____`_`_`_`_`_`^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIGHGHGHGHGGHGHGHGEFEFEFEFEFEFEFEFEFEFEFEFCDCDCDCDCDCDCDCDABABABABABABABABABABABAB?@?@?@?@?@?@?@?@=>=>=>=>=>=>=>=>=>=>=>=>;<;<;<;<;<;<;<;<9:9:9:9:9:9:9:9:9:9:9:9878787878787878785656565656565656343434343434343412121212121212120/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!        ~}~}~}~}~}~}~}~}|{|{|{|{|{|{|{|{zyzyzyzyzyzyzyzyxwxwxwxwxwxwxwxwuvuvuvuvuvuvuvuvststststststststststststqrqrqrqrqrqrqrqropopopopopopopopopopopopmnmnmnmnmnmnmnmnklklklklklklklklklklklklijijijijijijijijghghghghghghghghghghghghefefefefefefefefcdcdcdcdcdcdcdcdabababababababab_`_`_`_`_`_`_`_`^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIGHGHGHGGHGHGHGHGEFEFEFEFEFEFEFEFEFEFEFEFCDCDCDCDCDCDCDCDABABABABABABABABABABABAB?@?@?@?@?@?@?@?@=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<9:9:9:9:9:9:9:9:7878787878787878787878785656565656565656343434343434343412121212121212120/0/0/0/0/0/////.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!        ~}~}~}~}~}~}~}~}|{|{|{|{|{|{|{|{zyzyzyzyzyzyzyzyxwxwxwxwxwxwxwxwuvuvuvuvuvuvuvuvststststststststststststqrqrqrqrqrqrqrqropopopopopopopopopopopopmnmnmnmnmnmnmnmnklklklklklklklklklklklklijijijijijijijijghghghghghghghghghghghghefefefefefefefefcdcdcdcdcdcdcdcdabababababababab_`_`_`_`_`_`_`_`^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIGGGGHGHGHGHGHGHGEFEFEFEFEFEFEFEFEFEFEFEFCDCDCDCDCDCDCDCDABABABABABABABABABABABA@?@?@?@?@?@?@?@?@=>=>=>=>=>=>=>=>;<;<;<;<;<;<;<;<;<;<;<;<9:9:9:9:9:9:9:9:7878787878787878787878785656565656565656343434343434343412121212121212120/0/0/0//0/0/0/0.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!                      - - - - - - - - - - - -             - - - - - - - - - - - -             - - - - - - - - - - - -             - - - - - - - - - - - -             - - - - - - - - - -            - - - - - - - -         - - - - - - - -         - - - - - - - -         - - - - - - - -         - - - - - - - -         - - - - - - - -         - - - - - - - - - -          - - - - - - - - - - - -~~}}LLKKJJII--..//00aabbccddggffee__$$##""!!++,,--..nnooppqqUUTTSSRR$%%&&''(XYYZZ[[\uttssrrqA@@??>>= - - ())**++,\]]^^__`qppoonnm=<<;;::9 ,--..//0`aabbccdmllkkjji9887766501122334deeffgghihhggffe5443322145566778hiijjkkl[ZZYYXXW*++,,--.mnnooppqVUUTTSSR QQRRSSTT||{{zzyyHHGGFFEE!!""##$$UUVVWWXXxxwwvvuuDDCCBBAA %%&&''((YYZZ[[\\ttssrrqq@@??>>== - - ))**++,,]]^^__``ppoonnmm<<;;::99--..//00aabbccddggffee__$$##""!!##$$%%&&ffgghhii]]\\[[ZZ$$##""!!IJJKKLLM}~~POONNMMLMNNOOPPQ~~}}|LKKJJIIH !QRRSSTTU|{{zzyyxHGGFFEED!""##$$%UVVWWXXYxwwvvuutDCCBBAA@ %&&''(()YZZ[[\\]onnmmllk,++**))(YZZ[[\\]ggffeedc,++**))(BBCCDDEEvvwwxxyyWWVVUUTT##""!! FFGGHHIIzz{{||}}SSRRQQPPJJKKLLMM~~OONNMMLLNNOOPPQQ~~}}||KKJJIIHH !!RRSSTTUU||{{zzyyHHGGFFEE11223344eeffgghh^^]]\\[[ //556677rrssttuuQQPPOONN())**++,\]]^^__`qppoonnm=<<;;::9 ,--..//0`aabbccdmllkkjji9887766501122334deeffgghihhggffe5443322145566778hiijjkkleddccbba100//..-899::;;>== - - ))**++,,]]^^__``ppoonnmm<<;;::99--..//00aabbccddllkkjjii8877665511223344eeffgghh^^]]\\[[ ''(())**jjkkllmmYYXXWWVV MNNOOPPQ~~}}|LKKJJIIH !QRRSSTTU|{{zzyyxHGGFFEED!""##$$%UVVWWXXYxwwvvuutDCCBBAA@ %&&''(()YZZ[[\\]tssrrqqp@??>>==< - - )**++,,-]^^__``akjjiihhg(''&&%%$ !!""#]^^__eefba`__^^](''&&%%$FFGGHHIIzz{{||}}SSRRQQPPJJKKLLMM~~OONNMMLLNNOOPPQQ~~}}||KKJJIIHH !!RRSSTTUU{{zzyyxxGGFFEEDD""##$$%%VVWWXXYYxxwwvvuuDDCCBBAA 55667788iijjkkllZZYYXXWW8899::;;vvww}}~~MMLKJIHG,--..//0`aabbccdmllkkjji9887766501122334deeffgghihhggffe5443322145566778hiijjkkleddccbba100//..-899::;;>??@pqqrrsstSRRQQPPO 78899::;uvvww}}~NMMLKJIH%%&&''((YYZZ[[\\ttssrrqq@@??>>== - - ))**++,,]]^^__``ppoonnmm<<;;::99--..//00aabbccddllkkjjii8877665511223344eeffgghhhhggffee4433221155667788iijjkkllZZYYXXWW++,,--..nnooppqqUUTTSSRR !QRRSSTTU|{{zzyyxHGGFFEED!""##$$%UVVWWXXYxwwvvuutDCCBBAA@ %&&''(()YZZ[[\\]tssrrqqp@??>>==< - - )**++,,-]^^__``apoonnmml<;;::998-..//001abbccddegffee__^$##""!! #$$%%&&'fgghhiij]\\[[ZZY$##""!! JJKKLLMM~~OONNMMLLNNOOPPQQ~~}}||KKJJIIHH !!RRSSTTUU{{zzyyxxGGFFEEDD""##$$%%VVWWXXYYwwvvuuttCCBBAA@@ &&''(())ZZ[[\\]]ttssrrqq@@??>>== - - 99::;;<>??GFFEEDDC -01122334deeffgghihhggffe5443322145566778hiijjkkleddccbba100//..-899::;;>??@pqqrrsst]\\[[ZZY)((''&&% @AABBCCDtuuvvwwxONNMMGGF - - ;<<==>>?~GGFFEEDD ))**++,,]]^^__``ppoonnmm<<;;::99--..//00aabbccddllkkjjii8877665511223344eeffgghhhhggffee4433221155667788iijjkkllddccbbaa00//..--99::;;<>==< - - )**++,,-]^^__``apoonnmml<;;::998-..//001abbccddelkkjjiih8776655412233445effgghhi^]]\\[[Z '(())**+jkkllmmnYXXWWVVU NNOOPPQQ~~}}||KKJJIIHH !!RRSSTTUU{{zzyyxxGGFFEEDD""##$$%%VVWWXXYYwwvvuuttCCBBAA@@ &&''(())ZZ[[\\]]ssrrqqpp??>>==<< - - **++,,--^^__``aavvuuttssppoonnmm<<;;::99 - - ==>>??@@qqrrssttRRQQPPOO @@AABBCC~~}}|{zyCBBAA@@? - 45566778hiijjkkleddccbba100//..-899::;;>??@pqqrrsst]\\[[ZZY)((''&&% @AABBCCDtuuvvwwxYXXWWVVU%$$##""!DEEFFGGHxyyzz{{|FEEDDCCB?@@AABBC~~}}|{zCCBBAA@@ - - --..//00aabbccddllkkjjii8877665511223344eeffgghhhhggffee4433221155667788iijjkkllddccbbaa00//..--99::;;<>??@@qqrrssttRRQQPPOO 8899::;;vvww}}~~MMLKJIHG%&&''(()YZZ[[\\]tssrrqqp@??>>==< - - )**++,,-]^^__``apoonnmml<;;::998-..//001abbccddelkkjjiih8776655412233445effgghhihggffeed4332211056677889ijjkkllmZYYXXWWV+,,--../nooppqqrUTTSSRRQ !!RRSSTTUU{{zzyyxxGGFFEEDD""##$$%%VVWWXXYYwwvvuuttCCBBAA@@ &&''(())ZZ[[\\]]ssrrqqpp??>>==<< - - **++,,--^^__``aaoonnmmll;;::9988..//0011bbccddeerrqqppoollkkjjii88776655 AABBCCDDuuvvwwxxNNMMGGFF - - DDEEFFGGxwwvvuut?>>==<<;899::;;>??@pqqrrsst]\\[[ZZY)((''&&% @AABBCCDtuuvvwwxYXXWWVVU%$$##""!DEEFFGGHxyyzz{{|UTTSSRRQ! HIIJJKKL|}}~~BAA@@??> CDDEEFFGyxwwvvuu??>>==<<11223344eeffgghhhhggffee4433221155667788iijjkkllddccbbaa00//..--99::;;<>??@@qqrrsstt\\[[ZZYY((''&&%% AABBCCDDuuvvwwxxNNMMGGFF - - <<==>>??GFFEEDDC -)**++,,-]^^__``apoonnmml<;;::998-..//001abbccddelkkjjiih8776655412233445effgghhihggffeed4332211056677889ijjkkllmdccbbaa`0//..--, 9::;;<<=mnnooppqVUUTTSSR/5566778rssttuuvQPPOONNM""##$$%%VVWWXXYYwwvvuuttCCBBAA@@ &&''(())ZZ[[\\]]ssrrqqpp??>>==<< - - **++,,--^^__``aaoonnmmll;;::9988..//0011bbccddeekkjjiihh7766554422334455ffgghhiinnmmllkkhhggffee44332211EEFFGGHHyyzz{{||EEDDCCBB - - MMNNOOPPtssrrqqp;::99887 - - <==>>??@pqqrrsst]\\[[ZZY)((''&&% @AABBCCDtuuvvwwxYXXWWVVU%$$##""!DEEFFGGHxyyzz{{|UTTSSRRQ! HIIJJKKL|}}~~QPPOONNMLMMNNOOP~~}>==<<;;: - - GMMNNOOPttssrrqq;;::998855667788iijjkkllddccbbaa00//..--99::;;<>??@@qqrrsstt\\[[ZZYY((''&&%% AABBCCDDuuvvwwxxXXWWVVUU$$##""!!EEFFGGHHyyzz{{||EEDDCCBB@@AABBCC~~}}|{zyCBBAA@@? - -..//001abbccddelkkjjiih8776655412233445effgghhihggffeed4332211056677889ijjkkllmdccbbaa`0//..--, 9::;;<<=mnnooppq`__^^]]\,++**))( - - =>>??@@AqrrssttuRQQPPOON 899::;;>==<< - - **++,,--^^__``aaoonnmmll;;::9988..//0011bbccddeekkjjiihh7766554422334455ffgghhiiggffeedd3322110066778899jjkkllmmjjiihhggddccbbaa00//..--IIJJKKLL}}~~AA@@??>>QQRRSSTTpoonnmml76655432 @AABBCCDtuuvvwwxYXXWWVVU%$$##""!DEEFFGGHxyyzz{{|UTTSSRRQ! HIIJJKKL|}}~~QPPOONNMLMMNNOOP~~}MLLKKJJI PQQRRSST}wwvvuut:9988776 PQQRRSSTppoonnmm7766554399::;;<>??@@qqrrsstt\\[[ZZYY((''&&%% AABBCCDDuuvvwwxxXXWWVVUU$$##""!!EEFFGGHHyyzz{{||TTSSRRQQ IIJJKKLL}}~~AA@@??>> DDEEFFGGxwwvvuut?>>==<<;12233445effgghhihggffeed4332211056677889ijjkkllmdccbbaa`0//..--, 9::;;<<=mnnooppq`__^^]]\,++**))( - - =>>??@@Aqrrssttu\[[ZZYYX(''&&%%$ ABBCCDDEuvvwwxxyNMMGGFFE - - <==>>??@~FFEEDDCC - -**++,,--^^__``aaoonnmmll;;::9988..//0011bbccddeekkjjiihh7766554422334455ffgghhiiggffeedd3322110066778899jjkkllmmccbbaa``//..--,, ::;;<<==nnooppqqffee__^^``__^^]],,++**))MMNNOOPP~~}}==<<;;::UUVVWWXXlkkjjiih10//..--DEEFFGGHxyyzz{{|UTTSSRRQ! HIIJJKKL|}}~~QPPOONNMLMMNNOOP~~}MLLKKJJI PQQRRSST}||{{zzyIHHGGFFE !!""##$TUUVVWWXtssrrqqp655//..-TUUVVWWXllkkjjii210//..- - - ==>>??@@qqrrsstt\\[[ZZYY((''&&%% AABBCCDDuuvvwwxxXXWWVVUU$$##""!!EEFFGGHHyyzz{{||TTSSRRQQ IIJJKKLL}}~~PPOONNMMMMNNOOPP~~}}==<<;;:: - - MMNNOOPPtssrrqqp;::9988756677889ijjkkllmdccbbaa`0//..--, 9::;;<<=mnnooppq`__^^]]\,++**))( - - =>>??@@Aqrrssttu\[[ZZYYX(''&&%%$ ABBCCDDEuvvwwxxyXWWVVUUT$##""!! EFFGGHHIyzz{{||}EDDCCBBA@AABBCCD~}}|{zyxBBAA@@?? ..//0011bbccddeekkjjiihh7766554422334455ffgghhiiggffeedd3322110066778899jjkkllmmccbbaa``//..--,, ::;;<<==nnooppqq__^^]]\\++**))(( - - >>??@@AArrssttuu]]\\[[ZZ\\[[ZZYY((''&&%% QQRRSSTTwwvvuutt99887766YYZZ[[\\hggffeed,,++**))HIIJJKKL|}}~~QPPOONNMLMMNNOOP~~}MLLKKJJI PQQRRSST}||{{zzyIHHGGFFE !!""##$TUUVVWWXyxxwwvvuEDDCCBBA $%%&&''(XYYZZ[[\poonnmml-,,++**)XYYZZ[[\hhggffee-,,++**) AABBCCDDuuvvwwxxXXWWVVUU$$##""!!EEFFGGHHyyzz{{||TTSSRRQQ IIJJKKLL}}~~PPOONNMMMMNNOOPP~~}}LLKKJJII QQRRSSTTwwvvuutt99887766QQRRSSTTpoonnmml76655432 9::;;<<=mnnooppq`__^^]]\,++**))( - - =>>??@@Aqrrssttu\[[ZZYYX(''&&%%$ ABBCCDDEuvvwwxxyXWWVVUUT$##""!! EFFGGHHIyzz{{||}TSSRRQQP IJJKKLLM}~~A@@??>>= -DEEFFGGMwwvvuutt>>==<<;;22334455ffgghhiiggffeedd3322110066778899jjkkllmmccbbaa``//..--,, ::;;<<==nnooppqq__^^]]\\++**))(( - - >>??@@AArrssttuu[[ZZYYXX''&&%%$$BBCCDDEEvvwwxxyyYYXXWWVVXXWWVVUU$$##""!!!!""##$$UUVVWWXXssrrqqpp55//..-- !!""]]^^__eecba`__^^((''&&%%LMMNNOOP~~}MLLKKJJI PQQRRSST}||{{zzyIHHGGFFE !!""##$TUUVVWWXyxxwwvvuEDDCCBBA $%%&&''(XYYZZ[[\uttssrrqA@@??>>= - - ())**++,\]]^^__`lkkjjiih)((''&&% !!"\]]^^__edcba`__^)((''&&%EEFFGGHHyyzz{{||TTSSRRQQ IIJJKKLL}}~~PPOONNMMMMNNOOPP~~}}LLKKJJII QQRRSSTT||{{zzyyHHGGFFEE!!""##$$UUVVWWXXssrrqqpp55//..--UUVVWWXXlkkjjiih10//..-- - - =>>??@@Aqrrssttu\[[ZZYYX(''&&%%$ ABBCCDDEuvvwwxxyXWWVVUUT$##""!! EFFGGHHIyzz{{||}TSSRRQQP IJJKKLLM}~~POONNMMLMNNOOPPQ~~}}w=<<;;::9 - MNNOOPPQssrrqqpp::99887766778899jjkkllmmccbbaa``//..--,, ::;;<<==nnooppqq__^^]]\\++**))(( - - >>??@@AArrssttuu[[ZZYYXX''&&%%$$BBCCDDEEvvwwxxyyWWVVUUTT##""!! FFGGHHIIzz{{||}}UUTTSSRRTTSSRRQQ %%&&''((YYZZ[[\\oonnmmll,,++**))##$$%%&&ffgghhii]]\\[[ZZ$$##""!! PQQRRSST}||{{zzyIHHGGFFE !!""##$TUUVVWWXyxxwwvvuEDDCCBBA $%%&&''(XYYZZ[[\uttssrrqA@@??>>= - - ())**++,\]]^^__`qppoonnm=<<;;::9 ,--..//0`aabbccdhggffee_%$$##""!"##$$%%&effgghhi^]]\\[[Z%$$##""!IIJJKKLL}}~~PPOONNMMMMNNOOPP~~}}LLKKJJII QQRRSSTT||{{zzyyHHGGFFEE!!""##$$UUVVWWXXxxwwvvuuDDCCBBAA %%&&''((YYZZ[[\\oonnmmll,,++**))YYZZ[[\\hggffeed,,++**)) ABBCCDDEuvvwwxxyXWWVVUUT$##""!! EFFGGHHIyzz{{||}TSSRRQQP IJJKKLLM}~~POONNMMLMNNOOPPQ~~}}|LKKJJIIH !QRRSSTTUwvvuutts98877665QRRSSTTUoonnmmll66554321 ::;;<<==nnooppqq__^^]]\\++**))(( - - >>??@@AArrssttuu[[ZZYYXX''&&%%$$BBCCDDEEvvwwxxyyWWVVUUTT##""!! FFGGHHIIzz{{||}}SSRRQQPPJJKKLLMM~~QQPPOONNPPOONNMM))**++,,]]^^__``kkjjiihh((''&&%%''(())**jjkkllmmYYXXWWVV  !!""##$TUUVVWWXyxxwwvvuEDDCCBBA $%%&&''(XYYZZ[[\uttssrrqA@@??>>= - - ())**++,\]]^^__`qppoonnm=<<;;::9 ,--..//0`aabbccdmllkkjji9887766501122334deeffggh_^^]]\\[! &''(())*ijjkkllmZYYXXWWV! MMNNOOPP~~}}LLKKJJII QQRRSSTT||{{zzyyHHGGFFEE!!""##$$UUVVWWXXxxwwvvuuDDCCBBAA %%&&''((YYZZ[[\\ttssrrqq@@??>>== - - ))**++,,]]^^__``kkjjiihh((''&&%% !!""]]^^__eecba`__^^((''&&%%EFFGGHHIyzz{{||}TSSRRQQP IJJKKLLM}~~POONNMMLMNNOOPPQ~~}}|LKKJJIIH !QRRSSTTU|{{zzyyxHGGFFEED!""##$$%UVVWWXXYsrrqqppo5//..--,UVVWWXXYkkjjiihh0//..--, - - >>??@@AArrssttuu[[ZZYYXX''&&%%$$BBCCDDEEvvwwxxyyWWVVUUTT##""!! FFGGHHIIzz{{||}}SSRRQQPPJJKKLLMM~~OONNMMLLNNOOPPQQ~~}}wwMMGGFFEEDDCCBBAAAABBCCDD}}|{zyxwBAA@@??> .//00112bccddeefkjjiihhg7665544323344556fgghhiijgffeeddc3221100/6778899:jkkllmmncbbaa``_/..--,,+ -:;;<<==>nooppqqrRQQPPOON @AABBCCDmllkkjji98877665 @AABBCCD@@??>>== - -EEFFGGMMwvvuutts>==<<;;:23344556fgghhiijgffeeddc3221100/6778899:jkkllmmncbbaa``_/..--,,+ -:;;<<==>nooppqqr_^^]]\\[+**))((' - >??@@AABrssttuuvNMMGGFFE - - -DEEFFGGMihhggffe54433221DEEFFGGH<<;;::99 NNOOPPQQsrrqqppo:99887766778899:jkkllmmncbbaa``_/..--,,+ -:;;<<==>nooppqqr_^^]]\\[+**))((' - >??@@AABrssttuuv[ZZYYXXW'&&%%$$#BCCDDEEFvwwxxyyzEDDCCBBA - MNNOOPPQeddccbba100//..-HIIJJKKL88776655RRSSTTUUonnmmllk65543210 -:;;<<==>nooppqqr_^^]]\\[+**))((' - >??@@AABrssttuuv[ZZYYXXW'&&%%$$#BCCDDEEFvwwxxyyzWVVUUTTS#""!! FGGHHIIJz{{||}}~A@@??>>=QRRSSTTUa``__^^]-,,++**)LMMNNOOP//..--,,VVWWXXYYkjjiihhg//..--,, - >??@@AABrssttuuv[ZZYYXXW'&&%%$$#BCCDDEEFvwwxxyyzWVVUUTTS#""!! FGGHHIIJz{{||}}~SRRQQPPOJKKLLMMN~xxw=<<;;::9UVVWWXXY]\\[[ZZY)((''&&% PQQRRSST++**))((ZZ[[\\]]gffeedcb++**))((BCCDDEEFvwwxxyyzWVVUUTTS#""!! FGGHHIIJz{{||}}~SRRQQPPOJKKLLMMN~ONNMMLLKNOOPPQQRwvvuutts98877665YZZ[[\\]YXXWWVVU%$$##""! !!""##$TUUVVWWX''&&%%$$ !!""##^^__eeffa`__^^]]''&&%%$$FGGHHIIJz{{||}}~SRRQQPPOJKKLLMMN~ONNMMLLKNOOPPQQR~~}}||{KJJIIHHG !!"RSSTTUUVsrrqqppo5//..--, !!""#]^^__eefUTTSSRRQ! $%%&&''(XYYZZ[[\##""!! $$%%&&''gghhiijj\\[[ZZYY##""!! JKKLLMMN~ONNMMLLKNOOPPQQR~~}}||{KJJIIHHG !!"RSSTTUUV{zzyyxxwGFFEEDDC"##$$%%&VWWXXYYZonnmmllk,++**))(#$$%%&&'fgghhiijQPPOONNM())**++,\]]^^__`(())**++kkllmmnnXXWWVVUUNOOPPQQR~~}}||{KJJIIHHG !!"RSSTTUUV{zzyyxxwGFFEEDDC"##$$%%&VWWXXYYZwvvuuttsCBBAA@@? &''(())*Z[[\\]]^kjjiihhg(''&&%%$'(())**+jkkllmmnMLLKKJJI,--..//0`aabbccd,,--..//ooppqqrrTTSSRRQQ !!"RSSTTUUV{zzyyxxwGFFEEDDC"##$$%%&VWWXXYYZwvvuuttsCBBAA@@? &''(())*Z[[\\]]^srrqqppo?>>==<<; - - *++,,--.^__``aabgffee__^$##""!! +,,--../nooppqqrIHHGGFFE01122334deeffggh55667788ssttuuvvPPOONNMM"##$$%%&VWWXXYYZwvvuuttsCBBAA@@? &''(())*Z[[\\]]^srrqqppo?>>==<<; - - *++,,--.^__``aabonnmmllk;::99887.//00112bccddeef^]]\\[[Z /5566778rssttuuuEDDCCBBA 45566778hiijjkkl 99::;;<>==<<; - - *++,,--.^__``aabonnmmllk;::99887.//00112bccddeefkjjiihhg7665544323344556fgghhiijZYYXXWWV899::;;>= - - 899::;;>??@@~~FEEDDCCB - - *++,,--.^__``aabonnmmllk;::99887.//00112bccddeefkjjiihhg7665544323344556fgghhiijgffeeddc3221100/6778899:jkkllmmnVUUTTSSR<==>>??@qppoonnm=<<;;::9 - - <==>>??@pqqrrssttuuZHAbے`JXQr˂p|ZdQbtlJ~HXnXv`HAZp˂J`ےtbdQZJbdQnvpfH~ˑZHAbے`JXQr˂pJtArd|ZdQfpvnXv`fHZp˂rXQJ`ۉbdQZ|drtJltnvpfH~ˑZHAbے`JXrbtlJtArd|ZdQ~HfpXv`bHAZpQJ`ےtbdQAJbdQH~f`vXnے`JXQr˂pZHAb|ZdQbtlJnXv`f~HfpvXQJ`ےbHAZdrtAJltbdQZ|H~f`vXnے`JXQr˂pZHAے|ZdQbtlJ~HXnXv`rXQJbHAZp|drbdQZ|vXnvpfH~fZHAbے`JXQlJtArd|f~HfpvnXv`˙bHAZp˂rXJltbdQZ|drtAvXnvpfHr˂pZHAbے`JXQlJtArd|vnXf~HbHbHAZpdrtAJdrtAvpfH~f`vXn`JXQr˂pZrd|ZdQbtlJtAXv`f~Hf˂rXQJ`ےbHAZdrtAJltbvpfH~f`HAbے`JXQr˂pZrd|ZdQbtے`JXQr˂pZHAbtlJtArdv`ff~HbHAbHAZp|drZ|dfH~f`vXے`JXQr˂pZHAۂ|ZdQbtlnXv`f~HfpvrXQJ`ےbHAdrtAJltbnvpfH~f`vXے`JXQr˂pJtAd|ZdQbtlvnXf~HbHbHAZpZ|dZ|d`vXnvpfr˂pZHAbے`JXQtlJtArdf~HfpvnXv`bHAZp˂rJltbdQZ|dtAJ`vXnvpfr˂pZHAb`JXQrtlJtArdv`ff~H`ےb˂rXQtAJldrtAvpfH~f`ZHAbے`JXQr˂pArd|ZdQbtfpvnXv`f~H˂rXQJ`ےbdQZ|drtAJltvpfH~f`ZHAbے`JXQr˂pArd|ZdQbtv`ffpvAZp˂˂㒉bdQZ|Jlt~f`vXnvpfH˂pZHAbےZdQbtlJtArdf~HfpvnJ`ےbHAZpdrtAJltbdQZ|~f`vXn`JXQr˂pZHAbےZdQbtlJtAr˂pZHAbے`JXQtArd|ZdQb~HfpXv`fZp˂˂btAJbdrtAJlf`vXnvpQr˂pZHAb`JXQbtlJtArdf~HfpvnrXQJ`bHAZp˂AJltbdQZ|fHf`vXnvpQr˂pZHAb|ZdQbtlJtArdv`ffpvAZp˂˂rtAJbrtAJlvpfH~fZHAbے`JXQr˂ptArd|ZdQbfpvnXv`fHfp˂rXQJ`ےbdQZ|drtAltbvpfH~fZHAbے`JXQbtltArd|ZdQb~HfpXv`fHAZp˂J`ےtbdQZJbdQ~f`vXn`JXQr˂pZHAbہZdQbtlJtnXv`f~HfpvQJ`ےbHAZpdrtAJltbdQZ|~f`vXn`JXQr˂pZHAے`ZdQbtlJt~HXnXv`ˉrXQJ`bHAZpˁdrtbdQZ|vXnvpfH~fZHAbے`JXQrlJtArd|~HfpvnXv`fbHAZp˂rXQltbdQZ|drtAJvXnvpfH˂pZHAbے`JXQrlJtArd|ZHAbے`JXQr˂p|ZdQbtlJvnX~HfrXQJ`HAZdQZ|dtbdQnvpfH~ˑZHAbے`JXrbtlJtArd|ZdQfpvnXv`ےHAZp˂rXQJ`ۉbdQZ|drtf`vXnvpfH~ˑZHAbے`JXbtlJtArd|ZdQ~HXnXv`prXQJ`bHAZddQZ|tbdQH~f`vXnے`JXQr˂pZHAے|ZdQbtlJnXv`f~HpvnXQJ`ےbHAZdrtAJltnvpH~f`vXnے`JXQr˂pJtAd|ZdQbtlJvnX~HfbHAbHAZp|drZ|dvXnvpfHr˂pZHAbے`JXQlJtArd|f~HfpvnXv`˙bHAZp˂rXJltbdQZ|dtAJlvXnvpfHr˂pZHAbہJXQrlJtArd|v`ff~HXےbHrXQAJltdrtAJvpfH~f`HAbے`JXQr˂pZrd|ZdQbtpvnXv`f~Hf˂rXQJ`ےdQZ|drtAJltbvpfH~f`HAbے`JXQr˂pZrd|ZdQbtv`fے`JXQr˂p|ZdQbtlJtArdv`fpvnےbHArtAJrtAJlZ|dnfH~f`vXے`JXQr˂pJtAd|ZdQbtlnXv`f~HZp˂rXQJ`ےbHAdrtAJltnvpfH~f`vXے`JXQr˂pJtArd|ZdQbtlv`fvnےbHrtAJdrtAJZ|AJ`vXnvpfr˂pZHAb`JXQrtlJtArdf~HfpvrXQJ`bHAZp˂rJltbdQZ|fHf`vXnvpfr˂pZHAb|ZdQbtlJtArdv`fpvnZp˂˂btAJbdrtAJlvpfH~f`ZHAbے`JXQr˂pArd|ZdQbtfpvnXv`fHfp˂rXQJ`ےbdQZ|drtAtbvpfH~f`ZHAbے`JXQbtlArd|ZdQbt~Hfpەv`fAZp˂J`ےbdQZ|bdQZ~f`vXn`JXQr˂pZHAbےZdQbtlJtAXv`f~HfpvnJ`ےbHAZpdrtAJltbdQZ|~f`vXn`JXQr˂pZHAے`ZdQbtlJtA~Hfpr˂pZHAbtlJtArd|ZdQb~HXvXv`pZp˂bdQZ|tbdvff`vXnvpQr˂pZHAb|ZdQbtlJtArdf~HfpvrXQJ`ےbHAZp˂AJltbdQZ|fH~f`vXnvpQr˂pZHAb|ZdQbtlJtArd~HfprXQJ`pAZp˂bdQZ|ltbltbvpfH~fZHAbے`JXQbtltArd|ZdQbfpvnXv`ےHAZp˂rXQJ`ےbdQZ|drtA`vXnvpfH~fZHAbے`JXQtlJtArd|ZdQb~HXvXv`prXQJ`HAZdQZ|dtbdQ~f`vXn`JXQr˂pZHAے`ZdQbtlJtnXv`f~HvnQJ`ےbHAZpdrtAJltnvp~f`vXn`JXQr˂pJtAd|ZdQbtlJtvnX~HfpbHAbHAZpˁdrt|drvXnvpfH˂pZHAbے`JXQrlJtArd|~HfpvnXv`fbHAZp˂rXQltbdQZ|dtAJlvXnvpfH˂pZHAbےJXQrblJtArd|vnXZHAbے`JXQtArd|ZdQbtlJ`f~˂rXQbHAZdrtAQZ|df`vXnvpfH~ˑZHAbے`JXbtlJtArd|ZdQfpvnXv`bHAZp˂rXQJ`ۉbdQZ|drtf`vXnvpfH~ˑZHAbے`JXbtlJtArdf~HvnX˂rXbHAdrtAdQZ|nvpH~f`vXnے`JXQr˂pJtAd|ZdQbtlJnXv`f~Hp˂rXQJ`ےbHAZdrtAJltvpfH~f`vXnے`JXQr˂ptArd|ZdQbtlJ`f~vnrےbHArtAJrtAJlZ|AJlvXnvpfHr˂pZHAbہJXQrlJtArd|f~HfpvrXQJ`ۙbHAZp˂rXJltbdQZ|fHf`vXnvpfHr˂pZHAbہZdQbtlJtArd|v`fvnXZp˂󂀉bHAJbdQtAJlvpfH~f`HAbے`JXQr˂pZrd|ZdQbtpvnXv`fHfp˂rXQJ`ےdQZ|drtAJtbnvpfH~f`HAbے`JXQrtlJrd|ZdQbtv`fے`JXQr˂p|ZdQbtlJtArdHfpvJ`ےp˂rJltrtAJnvpfH~f`vXے`JXQr˂pJtArd|ZdQbtlnXv`f~HZp˂rXQJ`ےbHAdrtAJltnvpfH~fZHAbے`JXQr˂pJtArd|ZdQXv`v`fQJ`ےZp˂JltdrtAJfHf`vXnvpfr˂pZHAb|ZdQbtlJtArdf~HfpvXQJ`ےbHAZp˂rJltbdQZ|H~f`vXnvpfr˂pZHAb|ZdQbtlJtArdHfpvXQJ`pZp˂bdQZ|tbdtbvpfH~f`ZHAbے`JXQbtlArd|ZdQbtfpvnXv`˒HAZp˂rXQJ`ےbdQZ|drtAvXnvpfH~f`ZHAbے`JXQlJtArd|ZdQbt~HXv`v`prXQJ`AZdZ|dtbdQZ~f`vXn`JXQr˂pZHAے`ZdQbtlJtAXv`f~HfvnrJ`ےbHAZpdrtAJltbvpf~f`vXn`JXQr˂pZtAd|ZdQbtlJtA~HXvr˂pZHAbtlJtArdf~HnXvbHAZpXQJ`ےbdQZ|bdQZ|fH~f`vXnvpQr˂pZHAb|ZdQbtlJtArdf~HfpvrXQJ`ےbHAZdrtAJltbdQZ|fH~f`vXے`JXQr˂pZHAb|ZdQbtlf~H~HXv`bHAZprXQJ`bdQZ|bdQZ|`vXnvpfH~fZHAbے`JXQtlJtArd|ZdQbfpvnXv`bHAZp˂rXQJ`ےbdQZ|drtA`vXnvpfH~fZHAbے`JXQtlJtArdf~HnXv˂rXQbHAZdrtAQZ|dnvp~f`vXn`JXQr˂pJtAd|ZdQbtlJtnXv`f~H˂rXQJ`ےbHAZpdrtAJltvpfH~f`vXn`JXQr˂pArd|ZdQbtlJtf~HvnrXbHArtAJbrtAJl|AJlvXnvpfH˂pZHAbےJXQrblJtArd|~HfpvnXQJ`ےbHAZp˂rXQltbdQZ|Hf`vXnvpfH˂pZHAbےZdQbtlJtArd|`f~ZHAbے`JXQtArd|ZdQbXv`f`f~˂bbHAZdrtAJdrtAf`vXnvpfH~ˑZHAbے`JXbtlJtArdf~HfpvnXv`bHAZp˂AJltbdQZ|drtf`vXnvpQr˂pZHAbے`JXbtlJtArdfpvf~H˂㒐bHAdrtAdrtvpfH~f`vXnے`JXQr˂ptArd|ZdQbtlJnXv`f~Hp˂rXQJ`ےbHAZdrtAJltvpfH~fZHAbے`JXQr˂ptArd|ZdQbXv`f`f~J`ےp˂rJltrtAJfHf`vXnvpfHr˂pZHAbہZdQbtlJtArd|f~HfpvQJ`ےbHAZp˂rXJltbdQZ|~f`vXnvpfHr˂pZHAbہZdQbtlJtArd˅fpvQJ`pZp˂dQZ|tbdQtbnvpfH~f`HAbے`JXQrtlJrd|ZdQbtpvnXv`fHAZp˂rXQJ`ےdQZ|drtAJvXnvpfH~f`HAbے`JXQrlJtArd|ZdQbtHfpvے`JXQr˂p|ZdQbtlJ~HfHXv`HAZp˂p˂bdQZJltnvpfH~fZHAbے`JXQr˂pJtArd|ZdQfpvnXv`f~HZp˂rXQJ`ۉbdQZ|drtAJltnvpfH~ˑZHAbے`JXQr˂pJtArd|ZdQnXv`˅fpvbHAZpZp˂JbdQAJltH~f`vXnvpfr˂pZHAb|ZdQbtlJtArdf~HfpvXQJ`ےbHAZdrtAJltbdQZ|H~f`vXnے`JXQr˂pZHAb|ZdQbtlJ~HfHXv`bHAZpXQJ`ےbdQZ|bdQZ|vXnvpfH~f`ZHAbے`JXQlJtArd|ZdQbtfpvnXv`˙bHAZp˂rXQJ`ےbdQZ|drtAvXnvpfH~fZHAbے`JXQlJtArd|f~HXnXv`rXQbHAZpdrtAJZ|dvpf~f`vXn`JXQr˂pZtAd|ZdQbtlJtAXv`f~Hf˂rXQJ`ےbHAZpdrtAJltbvpfH~f`vXn`JXQr˂pZrd|ZdQbtlJtAnXvr˂pZHAbtlJtArdpvnf~HrXQJbHAZp|drbdQZ|fH~f`vXے`JXQr˂pZHAb|ZdQbtlnXv`f~HfpvrXQJ`ےbHAdrtAJltbdQZ|fH~f`vXے`JXQr˂pZHAۂ|ZdQbtlf~HXnXv`rXQbHAZpZ|dbdQZ|`vXnvpfH~fZHAbے`JXQtlJtArdf~HfpvnXv`bHAZp˂rJltbdQZ|drtA`vXnvpfr˂pZHAbے`JXQtlJtArdpvnf~H˂bbHAZdrtAJdrtAvpfH~f`vXn`JXQr˂pArd|ZdQbtlJtnXv`f~H˂rXQJ`ےbHAZdrtAJltvpfH~f`ZHAbے`JXQr˂pArd|ZdQbtv`ff~HJ`ے˂rXltbrtAJHf`vXnvpfH˂pZHAbےZdQbtlJtArd|~HfpvnJ`ےbHAZp˂rXQltbdQZ|~f`vXnvpfH˂pZHAbےZdQbtlJtArdf`f~ZHAbے`JXQtArd|ZdQbXv`ffpv`ےb˂rXQtAJldrtAf`vXnvpQr˂pZHAbے`JXbtlJtArdf~HfpvnXv`bHAZp˂AJltbdQZ|dtAf`vXnvpQr˂pZHAb`JXQbtlJtArdv`ff~HJ`ے˂rXrtAJldrtvpfH~fZHAbے`JXQr˂ptArd|ZdQbfpvnXv`f~Hp˂rXQJ`ےbdQZ|drtAJltvpfH~fZHAbے`JXQr˂ptArd|ZdQbXv`ffpvHAZp˂p˂bdQZJlt~f`vXnvpfHr˂pZHAbہZdQbtlJtArdf~HfpvQJ`ےbHAZpdrtAJltbdQZ|~f`vXn`JXQr˂pZHAbہZdQbtlJt~HfpXv`bHAZpQJ`ےdQZ|bdQZ|vXnvpfH~f`HAbے`JXQrlJtArd|ZdQbtpvnXv`fbHAZp˂rXQJ`ےdQZ|drtAJvXnvpfH~fZHAbے`JXQrlJtArd|~HXHXv`f~HnrXQbHAZtAJbdrtAJl灂AJlvXnvpfH˂pZHAbے`JXQrbtlJtArd|~HfpvnXQJ`ےbHAZp˂rXQtbdQZ|df`vXnvpfHpZHAJXQrAHr󙐂XnvˍpfH~QtJltbAdZfpvJ`p˂p˂QZ|dtbdQtbnvpfH~f`Abے`JXQrlJtrd|ZdQbtvnXv`fHAZp˂rXQJ`ےQZ|drtAJlvXnvpfH~f`b˂p˂p`Zˁ`ZQXApfH~ㅐf۝`vtbAdZ|drnXv`rXQJbHAZprtAJlZ|dvpfH~f`vXnہJXQr˂pZHAd|ZdQbtlJtAv`f~HfprXQJ`ےbHAZp˙rtAJltbdvpfH~f`vXnۑZHAbQXb㉀Hr󙐂ˁf۝`vXnvˍ|drQtJlf~H`ےb˂rXQtbdrtAJbf`vXnvpfH˂pZHAbے`ZdQbtlJtArd|~HfpvnXJ`ےbHAZp˂rXQtbdQZ|d~f`vXnvpfHے`JXۑpJAHr`ZQXbXnvˍpfH~QtJltbAdZXv`fHAZp˂J`ےQZ|ddQZ|vXnvpfH~f`Abے`JXQrlJtArd|ZdQbtvnXv`fbHAZp˂rXQJ`ےQZ|drtAJlvXnvpfH~frQr˂p󙐂ˁ`ZۑpJApfH~ㅐf۝`vtbAdZ|dr~HfbHAbHAZprtAJdrtAJvpfH~f`vXnہJXQr˂pZHrd|ZdQbtlJtAv`f~HfprXQJ`ےbHAZdrtAJltbdvpfH~f`˂pZHZHAbQXAHrHr󙐂ˁf۝`vXnvˍ|drQtJlpvnZp˂˂bbdQZ|ltb~f`vXnvpfH˂pZHAbے`ZdQbtlJtArdf~HfpvnXJ`ےbHAZp˙rtAJltbdQZ|d~f`vXnAbے`˂pˁ`ZQ`ZQXAHrXnvˍpfH~QtJltbAdZXv`frXQJ`HAZp˂drtAdQZ|vXnvpfH~fZHAbے`JXQrlJtArd|~HfpvnXv`fbHAZp˂rXQtbdQZ|drtAJlvXnvpfHJXQrZHAbXb㉀ۑ󙐂ˁ`ZpfH~ㅐf۝`vtbAdZ|dr~HXےbHArXQJJltdrtAJvpfH~f`Abے`JXQr˂pZHrd|ZdQbtvnXv`f~HfprXQJ`ےQZ|drtAJltbdvpfH~f`˂pZH`JXQpJAHrQXb㉀f۝`vXnvˍ|drQtJlv`fZp˂`ےbbdQZ|bdQZ|~f`vXnہJXQr˂pZHAbے`ZdQbtlJtAv`f~HfpvnXJ`ےbHAZp˙rtAJltbdQZ|d~f`vXnAbr˂pˁ`ZQۑpJAHrXnvˍpfH~QtJltbAdZ~HfpbHAZHAZp˂drtAdrtvXnvpfH˂pZHAbے`JXQrlJtArd|~HfpvnXv`fbHAZp˂rXQtbdQZ|dtAJlvXnvpfHpZHAZHAbXAHr󙐂󙐂ˁ`pfH~ㅐf۝`vtbAdZ|drvnXp˂rbHAJbdQAJltvpfH~f`Abے`JXQr˂pZHrd|ZdQbtvnXv`fHfpۂrXQJ`ےQZ|drtAJltbnvpfH~f`bے`˂pZHˁ`ZQXbpfH~ㅐf۝`vXnvˍ|drQtJlv`pvXQJ`ےZdrZ|dbdQZ|~f`vXnہJXQr˂pZHAے`ZdQbtlJtAv`f~HfpvnrXJ`ےbHAZp˙rtAJltbdvpfH~f`vXnJXQrAbے`㉀ۑpJf۝`vXnvˍp|drQtJltbAdZ|yz{|}~~}|{z \ No newline at end of file diff --git a/barcode-generator/Resources/data/qrv28_2.dat b/barcode-generator/Resources/data/qrv28_2.dat deleted file mode 100644 index 5122e09..0000000 --- a/barcode-generator/Resources/data/qrv28_2.dat +++ /dev/null @@ -1,257 +0,0 @@ -~}~}~}~}zyzyzyzyxwxwxwxwststststqrqrqrqropopopopmlklklklijijijijghghghghefefefefabababab^]^]^]^]\[\[\[\[ZYZYZYZY~}~}~}~}zyzyzyzyxwxwxwxwststststqrqrqrqropopopopklklklklijijijijghghghghefefefefabababab^]^]^]^]\[\[\[\[ZYZYZYZY~}~}~}~}zyzyzyzyxwxwxwxwststststqrqrqrqropopopopklklklklijijijijghghghghedcdcdcdabababab^]^]^]^]\[\[\[\[ZYZYZYZY~}~}~}~}zyzyzyzyxwxwxwxwststststqrqrqrqropopopopklklklklijijijijghghghghcdcdcdcdabababab^]^]^]^]\[\[\[\[ZYZYZYZY~}~}~}~}zyzyzyzywwwwwxwxststststqrqrqrqropopopopklklklklijijijijghghghghcdcdcdcdabababab^]^]^]^]\[\[\[\[ZYZYZYZY~}~}~}~}zyzyzyzywxwxwxwxststststqrqrqrqropopopopklklklklijijijijghghghghcdcdcdcdabababab^]^]^]^]\[\[\[\[ZYZYZYZY~}~}~}~}zyzyzyzywxwxwxwxststststqrqrqrqropopopopklklklklijijijijghghghghcdcdcdcdabababab^]^]^]^]\[\[\[\[ZYZYZYZY~}~}~}~}zyzyzyzywxwxwxwxststststqrqrqrqropopopopklklklklijijijijghghghghcdcdcdcdabababab^]^]^]^]\[\[\[\[ZYZYZYZY~}~}~}~}zyzyzyzywxwxwxwuststststqrqrqrqropopopopklklklklijijijijghghghghcdcdcdcdabababab^]^]^]^]\[\[\[\[XWXWXWXW~}~}~}~}zyzyzyzyuuuuuvuvststststqrqrqrqropopopopklklklklijijijijghghghghcdcdcdcdababa`_`^]^]^]^]\[\[\[\[XWXWXWXW~}~}~}~}zyzyzyzyuvuvuvuvststststqrqrqrqronmnmnmnklklklklijijijijghghghghcdcdcdcd_`_`____^]^]^]^]\[\[\[\[XWXWXWXW~}~}~}~}zyzyzyzyuvuvuvuvststststqrqrqrqrmnmnmnmnklklklklijijijijghghghghcdcdcdcd__`_`_`_^]^]^]^]\[\[\[\[XWXWXWXWVUVUVUVU~}~}~}~}zyzyzyzyuvuvuvuvststststqrqrqrqrmnmnmnmnklklklklijijijijgfefefefcdcdcdcd`_`_`_`_^]^]^]^]\[\[\[\[XWXWXWXWVUVUVUVU~}~}~}~}zyzyzyzyuvuvuvuvststststqrqrqrqrmnmnmnmnklklklklijijijijefefefefcdcdcdcd`_`_`_`_^]^]^]^]\[\[\[\[XWXWXWXWVUVUVUVU~}~}~}~}zyzyzyzyuvuvuvuvststststqrqrqrqrmnmnmnmnklklklklijijijijefefefefcdcdcdcd`_`_`_`_^]^]^]^]\[\[\[\[XWXWXWXWVUVUVUVU~}~}~}~}zyzyzyzyuvuvuvuvststststqrqrqrqrmnmnmnmnklklklklijijijijefefefefcdcdcdcd`_`_`_`_^]^]^]^]\[\[\[\[XWXWXWXWVUVUVUVU~}~}~}~}zyzyzyzyuvuvuvuvststststqrqrqrqrmnmnmnmnklklklklijijijijefefefefcdcdcdcd_____`_`^]^]^]^]\[\[\[\[XWXWXWXWVUVUVUVU~}~}~}~}zyzyzyzyuvuvuvuvststststqrqrqrqrmnmnmnmnklklklklijijijijefefefefcdcdcdcd_`_`_`_`^]^]^]^]\[\[\[\[XWXWXWXWVUVUVUVU|{|{|{|{zyzyzyzyuvuvuvuvststststqrqrqrqrmnmnmnmnklklklklijijijijefefefefcdcdcdcd_`_`_`_`^]^]^]^]ZYZYZYZYXWXWXWXWVUVUVUVU|{|{|{|{zyzyzyzyuvuvuvuvststststqrqrqrqrmnmnmnmnklklklklijijijijefefefefcdcdcdcd_`_`_`_`^]^]^]^]ZYZYZYZYXWXWXWXWVUVUVUVU|{|{|{|{zyzyzyzyuvuvuvuvststststqpopopopmnmnmnmnklklklklijijijijefefefefcdcdcdcd_`_`_`_`^]^]^]^]ZYZYZYZYXWXWXWXWVUVUVUVU|{|{|{|{zyzyzyzyuvuvuvuvststststopopopopmnmnmnmnklklklklijijijijefefefefcdcdcdcd_`______^]^]^]^]ZYZYZYZYXWXWXWXWVUVUVUVU|{|{|{|{zyzyzyzyuvuvuvuvststststopopopopmnmnmnmnklklklklihghghghefefefefcdcdcdcd`_`_`_`_^]^]^]^]ZYZYZYZYXWXWXWXWVUVUVUVU|{|{|{|{zyzyxwxwuvuvuvuvststststopopopopmnmnmnmnklklklklghghghghefefefefcdcdcdcd`_`_`_`_^]^]^]^]ZYZYZYZYXWXWXWXWVUVUVUVU|{|{|{|{xwxwwwwwuvuvuvuvststststopopopopmnmnmnmnklklklklghghghghefefefefcdcdcdcd`_`_`_`_^]^]^]^]ZYZYZYZYXWXWXWXWVUVUVUVU|{|{|{|{wxwxwxwxuvuvuvuvststststopopopopmnmnmnmnklklklklghghghghefefefefcdcdcdcd`_`_`_`_^]^]^]^]ZYZYZYZYXWXWXWXWVUVUVUVU|{|{|{|{wxwxwxwxuvuvuvuvststststopopopopmnmnmnmnklklklklghghghghefefefefcdcdcdcb`_`_`___^]^]^]^]ZYZYZYZYXWXWXWXWVUVUVUVU|{|{|{|{wxwxwxwxuvuvuvuvststststopopopopmnmnmnmnklklklklghghghghefefefefabababab___`_`_`^]^]^]^]ZYZYZYZYXWXWXWXWVUVUVUVU|{|{|{|{wxwxwxwxuvuvuvuvststststopopopopmnmnmnmnklklklklghghghghefefefefabababab_`_`_`_`\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVU|{|{|{|{wxwxwxwwuvuvuvuvststststopopopopmnmnmnmnklklklklghghghghefefefefabababab_`_`_`_`\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVU~}~}~}~}|{|{|{|{wwwwxwxwuvuvuvuvsrqrqrqropopopopmnmnmnmnklklklklghghghghefefefefabababab_`_`_`_`\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVU~}~}~}~}|{|{|{|{xwxwxwxwuvuvuvuvqrqrqrqropopopopmnmnmnmnklklklklghghghghefefefefabababab_`_`_`_`\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVU~}~}~}~}|{|{|{|{xwxwxwxwuvuvuvuvqrqrqrqropopopopmnmnmnmnkjijijijghghghghefefefefabababab______`_\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVU~}~}~}~}|{|{|{|{xwxwxwxwuvuvuvuvqrqrqrqropopopopmnmnmnmnijijijijghghghghefefefefabababab`_`_`_`_\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVU~}~}~}~}|{|{|{|{xwxwxwxwuvuvuvuvqrqrqrqropopopopmnmnmnmnijijijijghghghghefefefefabababab`_`_`_`_\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVU~}~}~}~}|{|{|{|{xwwwwwwxuvuvuvuvqrqrqrqropopopopmnmnmnmnijijijijghghghghefefefefabababab`_`_`_`_\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVU~}~}~}~}|{|{|{|{wxwxwxwxuvuvuvuvqrqrqrqropopopopmnmnmnmnijijijijghghghghefefefefabababab`_`_____\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVU~}~}~}~}|{|{|{|{wxwxwxwxuvuvuvuvqrqrqrqropopopopmnmnmnmnijijijijghghghghefefefefabababab`_`_`_`_\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVU~}~}~}~}|{|{|{|{wxwxwxwxuvuvuvuvqrqrqrqropopopopmnmnmnmnijijijijghghghghefefefefabababab^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVU~}~}~}~}|{|{|{|{wxwxwxwxuvuvuvuvqrqrqrqropopopopmnmnmnmnijijijijghghghghefefefefabababab^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVU~}~}~}~}|{|{|{|{wxwxwwwwutstststqrqrqrqropopopopmnmnmnmnijijijijghghghghefefefefabababab^]^]^]^]\[\[\[\[ZYZYZYZYVUVUVUVUVUVUVUVU~}~}~}~}|{|{|{zywwxwxwxwststststqrqrqrqropopopopmnmnmnmnijijijijghghghghefefefefabababab^]^]^]^]\[\[\[\[ZYZYZYZYVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMJIJIJIJIEFEFEFEFCDCDCDCDABABABAB=>=>=>=>;<;<;<;<9:9:9:9:56565656343434340/0/0/0/.-.-.-.-,+,+,+,+('('('('&%&%&%&%$#$#$#$#         - - - -TSTSTSTSRQRQRQRQPOPOPOPOLKLKLKLKJIJIJIJIEFEFEFEFCDCDCDCDABABABAB=>=>=>=>;<;<;<;<9:9:9:9:56565656343434340/0/0/0/.-.-.-.-,+,+,+,+('('('('&%&%&%&%$#$#$#$#         - - - -TSTSTSTSRQRQRQRQPOPOPOPOLKLKLKLKJIJIJIJIEFEFEFEFCDCDCDCDABABABAB=>=>=>=>;<;<;<;<9:9:9:9:56565656343434340/0/0///.-.-.-.-,+,+,+,+('('('('&%&%&%&%$#$#$#$#         - - - -TSTSTSTSRQRQRQRQPOPOPOPOLKLKLKLKJIJIJIJIEFEFEFEFCDCDCDCDABABABAB=>=>=>=>;<;<;<;<9:9:9:9:5656565634343434///0/0/0.-.-.-.-,+,+,+,+('('('('&%&%&%&%$#$#$#$#         - - - -TSTSTSTSRQRQRQRQPOPOPOPOLKLKLKLKJIJIJIJIEFEFEFEFCDCDCDCDABABABAB=>=>=>=>;<;<;<;<9:9:9:9:5656565634343434/0/0/0/0.-.-.-.-,+,+,+*)('('('('&%&%&%&%$#$#$#$#       - - - -TSTSTSTSRQRQRQRQPOPOPOPOLKLKLKLKJIJIJIJIEFEFEFEFCDCDCDCDABABABAB=>=>=>=>;<;<;<;<9:9:9:9:5656565634343434/0/0/0/0.-.-.-.-*)*)*)*)('('('('&%&%&%&%$#$#$#$#     - - - -TSTSTSTSRQRQRQRQPOPOPOPOLKLKLKLKJIJIJIJIEFEFEFEFCDCDCDCDABABABA@=>=>=>=>;<;<;<;<9:9:9:9:5656565634343434/0/0/0/0.-.-.-.-*)*)*)*)('('('('&%&%&%&%$#$#$#"!     - - - -TSTSTSTSRQRQRQRQPOPOPOPOLKLKLKLKJIJIJIJIEFEFEFEFCDCDCDCD?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:5656565634343434/0/0/0/0.-.-.-.-*)*)*)*)('('('('&%&%&%&%"!"!"!"!     - - - -TSTSTSTSRQRQRQRQPOPOPOPOLKLKLKLKJIJIHGHGEFEFEFEFCDCDCDCD?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:985656565634343434//////0/.-.-.-.-*)*)*)*)('('('('&%&%&%&%"!"!"!"!     - - - -TSTSTSTSRQRQRQRQPOPOPOPOLKLKLKLKHGHGGGGGEFEFEFEFCDCDCDCD?@?@?@?@=>=>=>=>;<;<;<;<7878787856565656343434340/0/0/0/.-.-.-.-*)*)*)*)('('('('&%&%&%&%"!"!"!"!     - - - -TSTSTSTSRQRQRQRQPOPOPOPOLKLKLKLKGHGHGHGHEFEFEFEFCDCDCDCD?@?@?@?@=>=>=>=>;<;<;<;<7878787856565656343434340/0/0/0/.-.-.-.-*)*)*)*)('('('('&%&%&%&%"!"!"!"!     - - - -TSTSTSTSRQRQRQRQNMNMNMNMLKLKLKLKGHGHGHGHEFEFEFEFCDCDCDCD?@?@?@?@=>=>=>=>;<;<;<;<7878787856565656343434340/0/0/0/.-.-.-.-*)*)*)*)('('('('&%&%&%&%"!"!"!"!     - - - -TSTSTSTSRQRQRQRQNMNMNMNMLKLKLKLKGHGHGHGHEFEFEFEFCDCDCDCD?@?@?@?@=>=>=>=>;<;<;<;<7878787856565656343434340/0/0/0/.-.-.-.-*)*)*)*)('('('('&%&%&%&%"!"!"!"!     - - - -TSTSTSTSRQRQRQRQNMNMNMNMLKLKLKLKGHGHGHGHEFEFEFEFCDCDCDCD?@?@?@?@=>=>=>=>;<;<;<;<7878787856565656343432120/0/////.-.-.-.-*)*)*)*)('('('('&%&%&%&%"!"!"!"!     - - - -TSTSTSTSRQRQRQRQNMNMNMNMLKLKLKLKGHGHGHGGEFEFEFEFCDCDCDCD?@?@?@?@=>=>=>=>;<;<;<;<787878785656565612121212/0/0/0/0.-.-.-,+*)*)*)*)('('('('&%&%&%&%"!"!"!"!      - - - -TSTSTSTSRQRQRQRQNMNMNMNMLKLKLKLKGGGGHGHGEFEFEFEFCDCDCDCD?@?@?@?@=>=>=>=>;<;<;<;<787878785656565612121212/0/0/0/0,+,+,+,+*)*)*)*)('('('('&%&%&%&%"!"!"!"!         - - - -TSTSTSTSRQRQRQRQNMNMNMNMLKLKLKLKHGHGHGHGEFEFEFEFCDCDCDCB?@?@?@?@=>=>=>=>;<;<;<;<787878785656565612121212/0/0/0/0,+,+,+,+*)*)*)*)('('('('&%&%&%$#"!"!"!"!         - - - -TSTSTSTSRQRQRQRQNMNMNMNMLKLKLKLKHGHGHGHGEFEFEFEFABABABAB?@?@?@?@=>=>=>=>;<;<;<;<787878785656565612121212/0/0/0/0,+,+,+,+*)*)*)*)('('('('$#$#$#$#"!"!"!"!         - - - -TSTSTSTSRQRQRQRQNMNMNMNMLKLKLKLKHGHGHGHGEFEFEFEFABABABAB?@?@?@?@=>=>=>=>;<;<;<;:787878785656565612121212/0/0/0//,+,+,+,+*)*)*)*)('('('('$#$#$#$#"!"!"!"!         - - - -TSTSTSTSRQRQRQRQNMNMNMNMLKLKLKLKHGHGHGHGEFEFEFEFABABABAB?@?@?@?@=>=>=>=>9:9:9:9:787878785656565612121212////0/0/,+,+,+,+*)*)*)*)('('('('$#$#$#$#"!"!"!"!         - - - -TSTSTSTSRQRQRQRQNMNMNMNMLKLKLKLKHGGGGGGHEFEFEFEFABABABAB?@?@?@?@=>=>=>=>9:9:9:9:7878787856565656121212120/0/0/0/,+,+,+,+*)*)*)*)('('('('$#$#$#$#"!"!"!"!         - - - -TSTSTSTSPOPOPOPONMNMNMNMLKLKLKLKGHGHGHGHEFEFEFEFABABABAB?@?@?@?@=>=>=>=>9:9:9:9:7878787856565656121212120/0/0/0/,+,+,+,+*)*)*)*)('('('('$#$#$#$#"!"!"!"!         - - - -TSTSTSTSPOPOPOPONMNMNMNMLKLKLKLKGHGHGHGHEFEFEFEFABABABAB?@?@?@?@=>=>=>=>9:9:9:9:7878787856565656121212120/0/0/0/,+,+,+,+*)*)*)*)('('('('$#$#$#$#"!"!"!"!         - - - -TSTSTSTSPOPOPOPONMNMNMNMLKLKLKLKGHGHGHGHEFEFEFEFABABABAB?@?@?@?@=>=>=>=>9:9:9:9:7878787856565656121212120/////0/,+,+,+,+*)*)*)*)('('('('$#$#$#$#"!"!"!"!         - - - -TSTSTSTSPOPOPOPONMNMNMNMLKLKLKLKGHGHGHGHEFEFEFEFABABABAB?@?@?@?@=>=>=>=>9:9:9:9:7878787856565656121212120/0/0/.-,+,+,+,+*)*)*)*)('('('('$#$#$#$#"!"!"!"!         - - - -TSTSTSTSPOPOPOPONMNMNMNMLKLKLKJIGHGHGGGGEFEFEFEFABABABAB?@?@?@?@=>=>=>=>9:9:9:9:787878785656565612121212.-.-.-.-,+,+,+,+*)*)*)*)('('('('$#$#$#$#"!"!"!"!         - - - -TSTSTSTSPOPOPOPONMNMNMNMJIJIJIJIGGHGHGHGEFEFEFEDABABABAB?@?@?@?@=>=>=>=>9:9:9:9:787878785656565612121212.-.-.-.-,+,+,+,+*)*)*)*)('('('&%$#$#$#$#"!"!"!"!         - - TSTSTSTSPOPOPOPONMNMNMNMJIJIJIJIHGHGHGHGCDCDCDCDABABABAB?@?@?@?@=>=>=>=>9:9:9:9:787878785656565612121212.-.-.-.-,+,+,+,+*)*)*)*)&%&%&%&%$#$#$#$#"!"!"!"!         TSTSTSTSPOPOPOPONMNMNMNMJIJIJIJIHGHGHGHGCDCDCDCDABABABAB?@?@?@?@=>=>=>=<9:9:9:9:787878785656565612121212.-.-.-.-,+,+,+,+*)*)*)*)&%&%&%&%$#$#$#$#"!"!"!"!        TSTSTSTSPOPOPOPONMNMNMNMJIJIJIJIHGHGHGHGCDCDCDCDABABABAB?@?@?@?@;<;<;<;<9:9:9:9:787878785656565612121212.-.-.-.-,+,+,+,+*)*)*)*)&%&%&%&%$#$#$#$#"!"!"!"!     TSTSTSTSPOPOPOPONMNMNMNMJIJIJIJIHGHGHGHGCDCDCDCDABABABAB?@?@?@?@;<;<;<;<9:9:9:9:787878785656565412121212.-.-.-.-,+,+,+,+*)*)*)*)&%&%&%&%$#$#$#$#"!"!"!"!     RQRQRQRQPOPOPOPONMNMNMNMJIJIJIJIGGGGGHGHCDCDCDCDABABABAB?@?@?@?@;<;<;<;<9:9:9:9:787878783434343412121212.-.-.-.-,+,+,+,+*)*)*)*)&%&%&%&%$#$#$#$#"!"!"!"!     RQRQRQRQPOPOPOPONMNMNMNMJIJIJIJIGHGHGHGHCDCDCDCDABABABAB?@?@?@?@;<;<;<;<9:9:9:9:787878783434343412121212.-.-.-.-,+,+,+,+*)*)*)*)&%&%&%&%$#$#$#$#"!"!"!"!     RQRQRQRQPOPOPOPONMNMNMNMJIJIJIJIGHGHGHGHCDCDCDCDABABABAB?@?@?@?@;<;<;<;<9:9:9:9:787878783434343412121212.-.-.-.-,+,+,+,+*)*)*)*)&%&%&%&%$#$#$#$#"!"!"!"!     RQRQRQRQPOPOPOPONMNMNMNMJIJIJIJIGHGHGHGHCDCDCDCDABABABAB?@?@?@?@;<;<;<;<9:9:9:9:787878783434343412121212.-.-.-.-,+,+,+,+*)*)*)*)&%&%&%&%$#$#$#$#"!"!"!"!     RQRQRQRQPOPOPOPONMNMNMNMJIJIJIJIGHGGGGGHCDCDCDCDABABABAB?@?@?@?@;<;<;<;<9:9:9:9:787878783434343412121212.-.-.-.-,+,+,+,+*)*)*)*)&%&%&%&%$#$#$#$#"!"!"!"!     RQRQRQRQPOPOPOPONMNMNMNMJIJIJIJIGHGHGHGFCDCDCDCDABABABAB?@?@?@?@;<;<;<;<9:9:9:9:787878783434343412121212.-.-.-.-,+,+,+,+*)*)*)('&%&%&%&%$#$#$#$#"!"!"!"!     - -RQRQRQRQPOPOPOPONMNMNMNMJIJIJIJIEFEFEFEFCDCDCDCDABABABAB?@?@?@?@;<;<;<;<9:9:9:9:787878783434343412121212.-.-.-.-,+,+,+,+('('('('&%&%&%&%$#$#$#$#"!"!"!"!     - - - -RQRQRQRQPOPOPOPONMNMNMNMJIJIJIJIEFEFEFEFCDCDCDCDABABABAB?@?@?@?>;<;<;<;<9:9:9:9:78787878343434341210/0/0.-.-.-.-,+,+,+,+('('('('&%&%&%&%$#$#$#$#"!"!"!      - - - -RQRQRQRQPOPOPOPONMNMNMNMJIJIJIJIEFEFEFEFCDCDCDCDABABABAB=>=>=>=>;<;<;<;<9:9:9:9:7878787834343434/0//////.-.-.-.-,+,+,+,+('('('('&%&%&%&%$#$#$#$#         - - - -RQRQRQRQPOPOPOPONMNMNMNMJIJIJIJIEFEFEFEFCDCDCDCDABABABAB=>=>=>=>;<;<;<;<9:9:9:9:78787876343434340/0/0/0/.-.-.-.-,+,+,+,+('('('('&%&%&%&%$#$#$#$#         - - - -RQRQRQRQPOPOPOPONMNMNMNMJIJIJIJIEFEFEFEFCDCDCDCDABABABAB=>=>=>=>;<;<;<;<9:9:9:9:56565656343434340/0/0/0/.-.-.-.-,+,+,+,+('('('('&%&%&%&%$#$#$#$#         - - - -~~}}99::;;<< - - ,,++**))yxxwwvvu01122334)((''&&%~~}())**++,100//..-xyyzz{{|PQQRRSSTHHGGFFEEaabbccdd||{{zzyy==>>??@@((''&&%%uttssrrq45566778%$$##""!}||{{zzy,--..//0-,,++**)|}}~~TUUVVWWXDDCCBBAAeeffgghhxxwwvvuuAABBCCDD$$##""!!qppoonnm899::;;>==iijjkkllttssrrqqEEFFGGHH mllkkjji<==>>??@uttssrrq45566778%$$##""!}wwvvuut\]]^^__e <<;;::99mmnnooppppoonnmmIIJJKKLL !!""ihhggffe@AABBCCDqppoonnm899::;;>??@poonnmmlijjkkllm%%&&''((44332211uuvvwwxxhhggffeeQQRRSSTT''(())**a``__^^]HIIJJKKL ihhggffe@AABBCCDlkkjjiihmnnooppq))**++,,00//..--yyzz{{||ddccbbaaUUVVWWXX++,,--.. -]\\[[ZZYLMMNNOOP - - eddccbbaDEEFFGGHhggffee_qrrssttu--..//00,,++**))}}~~``__^^]]YYZZ[[\\//556677 - YXXWWVVUPQQRRSST a``__^^]HIIJJKKL _^^]]\\[uvvww}}~11223344((''&&%%~~}}\\[[ZZYY]]^^__``8899::;;UTTSSRRQTUUVVWWX]\\[[ZZYLMMNNOOP - - [ZZYYXXW~55667788$$##""!!||{{zzyyXXWWVVUUaabbccdd<<==>>?? - - QPPOONNMXYYZZ[[\YXXWWVVUPQQRRSST WVVUUTTS~~}}|{z99::;;<< xxwwvvuuTTSSRRQQeeffgghh@@AABBCC MLLKKJJI\]]^^__`UTTSSRRQTUUVVWWXSRRQQPPOyxwwvvuu==>>??@@ttssrrqq - - PPOONNMMiijjkkllDDEEFFGGIHHGGFFE`aabbccd - - QPPOONNMXYYZZ[[\ONNMMGGFttssrrqqAABBCCDDppoonnmm LLKKJJIImmnnooppMMNNOOPPEDDCCBBAdeeffggh MLLKKJJI\]]^^__`FEEDDCCBppoonnmmEEFFGGHHllkkjjiiHHGGFFEEqqrrssttQQRRSSTTA@@??>>=hiijjkklIHHGGFFE`aabbccd - - BAA@@??>llkkjjiiIIJJKKLL hhggffeeDDCCBBAAuuvvwwxxUUVVWWXX =<<;;::9lmmnnoopEDDCCBBAdeeffggh >==<<;;:hhggffeeMMNNOOPP - - ddccbbaa@@??>>==yyzz{{||YYZZ[[\\ !!""##$98877665pqqrrsstA@@??>>=hiijjkkl:9988776dcba`__^QQRRSSTT``__^^]] <<;;::99}}~~]]^^__ee$%%&&''(54433221tuuvvwwx =<<;;::9lmmnnoop655//..-^]]\\[[ZUUVVWWXX\\[[ZZYY!!""##$$88776655~~}}ffgghhii())**++,100//..-xyyzz{{| !!""##$98877665pqqrrsst-,,++**)ZYYXXWWVYYZZ[[\\XXWWVVUU%%&&''((44332211wwvvuuttjjkkllmm,--..//0-,,++**)|}}~~$%%&&''(54433221tuuvvwwx )((''&&%VUUTTSSR]]^^__``TTSSRRQQ))**++,,00//..--ssrrqqppnnooppqq01122334)((''&&%~~}())**++,100//..-xyyzz{{| !!""##$%$$##""!RQQPPOONaabbccdd - - PPOONNMM--..//00,,++**))oonnmmllrrssttuu45566778%$$##""!}||{{zzy,--..//0-,,++**)|}}~~$%%&&''(! NMMLKJIHeeffgghh LLKKJJII11223344((''&&%%kkjjiihhvvww}}~~899::;;>??@uttssrrq45566778%$$##""!}||{{zzy,--..//0CCBBAA@@mmnnooppDDCCBBAA99::;;<< ^^]]\\[[~~}}|{zy@AABBCCDqppoonnm899::;;>==<>====>>??@@ZZYYXXWWxwwvvuutDEEFFGGHmllkkjji<==>>??@uttssrrq45566778 - - ;;::9988uuvvwwxx <<;;::99AABBCCDDVVUUTTSStssrrqqpHIIJJKKL ihhggffe@AABBCCDqppoonnm899::;;<77665543yyzz{{||!!""##$$88776655EEFFGGHHRRQQPPOOpoonnmmlLMMNNOOP - - eddccbbaDEEFFGGHmllkkjji<==>>??@ 210//..-}}~~%%&&''((44332211IIJJKKLL NNMMGGFFlkkjjiihPQQRRSST a``__^^]HIIJJKKL ihhggffe@AABBCCD - - -,,++**)~~}}))**++,,00//..--MMNNOOPP - - EEDDCCBBhggffeedTUUVVWWX]\\[[ZZYLMMNNOOP - - eddccbbaDEEFFGGH )((''&&%||{{zzyy--..//00,,++**))QQRRSSTT - - AA@@??>>cba`__^^XYYZZ[[\YXXWWVVUPQQRRSST a``__^^]HIIJJKKL%$$##""!xxwwvvuu11223344((''&&%%UUVVWWXX ==<<;;::]]\\[[ZZ\]]^^__`UTTSSRRQTUUVVWWX]\\[[ZZYLMMNNOOP! ttssrrqq55667788$$##""!!YYZZ[[\\99887766YYXXWWVV`aabbccd - - QPPOONNMXYYZZ[[\YXXWWVVUPQQRRSST !!"ppoonnmm99::;;<< ]]^^__``55//..--UUTTSSRRdeeffggh MLLKKJJI\]]^^__`UTTSSRRQTUUVVWWX"##$$%%&llkkjjii==>>??@@aabbccdd,,++**))QQPPOONNhiijjkklIHHGGFFE`aabbccd - - QPPOONNMXYYZZ[[\&''(())*hhggffeeAABBCCDDeeffgghh ((''&&%%MMLKJIHGlmmnnoopEDDCCBBAdeeffggh MLLKKJJI\]]^^__`*++,,--. ddccbbaaEEFFGGHHiijjkkll!!""##$$$$##""!!GFFEEDDCpqqrrsstA@@??>>=hiijjkklIHHGGFFE`aabbccd.//55667 - - ``__^^]]IIJJKKLL mmnnoopp%%&&''(( CBBAA@@?tuuvvwwx =<<;;::9lmmnnoopEDDCCBBAdeeffggh78899::;\\[[ZZYYMMNNOOPP - - qqrrsstt))**++,,?>>==<<;xyyzz{{| !!""##$98877665pqqrrsstA@@??>>=hiijjkkl;<<==>>?XXWWVVUUQQRRSSTTuuvvwwxx--..//00;::99887|}}~~$%%&&''(54433221tuuvvwwx =<<;;::9lmmnnoop?@@AABBCTTSSRRQQUUVVWWXXyyzz{{||11223344 76655432~~}())**++,100//..-xyyzz{{| !!""##$98877665pqqrrsstCDDEEFFG - - PPOONNMMYYZZ[[\\}}~~55667788 - - 10//..--}||{{zzy,--..//0-,,++**)|}}~~$%%&&''(54433221tuuvvwwxGMMNNOOP LLKKJJII]]^^__``~~}}||{{zzyy--..//00,,++**))}}~~UUVVWWXXDCCBBAA@effgghhi LKKJJIIH]^^__``a EDDCCBBAoonnmmllFFGGHHIIkkjjiihh>>??@@AAssrrqqpp66778899 - - :9988776vwwxxyyz !!";::99887nooppqqr,++**))(EDDCCBBAxxwwvvuu11223344((''&&%%~~}}YYZZ[[\\@??>>==>=kkjjiihhJJKKLLMM ggffeeddBBCCDDEEoonnmmll::;;<<==65543210z{{||}}~"##$$%%&76655443rssttuuv(''&&%%$A@@??>>=ttssrrqq55667788$$##""!!wwvvuutt]]^^__ee !<;;::998mnnooppqDCCBBAA@effgghhi =<<;;::9ggffeedcNNOOPPQQ - - ccbbaa``FFGGHHIIkkjjiihh>>??@@AA - -//..--,,~&''(())*3221100/vwwxxyyz !!"$##""!! =<<;;::9ppoonnmm99::;;<< ssrrqqppffgghhii!""##$$%87766554qrrssttu@??>>==>??@@oonnmmlljjkkllmm%&&''(()43322110uvvwwxxy !<;;::998mnnooppq5//..--,]\\[[ZZYVVWWXXYY[[ZZYYXXNNOOPPQQ - - ccbbaa``FFGGHHII''&&%%$${zzyyxxw.//00112+**))(('~&''(())*54433221hhggffeeAABBCCDDkkjjiihhnnooppqq)**++,,-0//..--,yzz{{||}!""##$$%87766554qrrssttu,++**))(YXXWWVVUZZ[[\\]]WWVVUUTTRRSSTTUU__^^]]\\JJKKLLMM##""!! wvvuutts23344556'&&%%$$#~~}}||{*++,,--.100//..-ddccbbaaEEFFGGHHggffee__rrssttuu-..//001,++**))(}~~%&&''(()43322110uvvwwxxy !(''&&%%$UTTSSRRQ^^__``aa SSRRQQPPVVWWXXYY[[ZZYYXXNNOOPPQQsrrqqppo6778899:#""!! {zzyyxxw.//00112 -,,++**)``__^^]]IIJJKKLL ^^]]\\[[vvww}}~~12233445(''&&%%$~~}}|)**++,,-0//..--,yzz{{||}!""##$$%$##""!! QPPOONNMbbccddee - - OONNMMLLZZ[[\\]]WWVVUUTTRRSSTTUU !!""##onnmmllk:;;<<==>wvvuutts23344556 - - -)((''&&%\\[[ZZYYMMNNOOPP - - ZZYYXXWW56677889$##""!! |{{zzyyx-..//001,++**))(}~~%&&''(() MLKJIHGGffgghhiiKKJJIIHH^^__``aa SSRRQQPPVVWWXXYY$$%%&&''kjjiihhg>??@@AABsrrqqppo6778899: - %$$##""!XXWWVVUUQQRRSSTTVVUUTTSS~~}}|{zy9::;;<<= xwwvvuut12233445(''&&%%$~~}}|)**++,,-FFEEDDCCjjkkllmmGGFFEEDDbbccddee - - OONNMMLLZZ[[\\]](())**++ gffeeddcBCCDDEEFonnmmllk:;;<<==>! TTSSRRQQUUVVWWXXRRQQPPOOxwwvvuut=>>??@@Atssrrqqp56677889$##""!! |{{zzyyx-..//001BBAA@@??nnooppqqCCBBAA@@ffgghhiiKKJJIIHH^^__``aa,,--..// - - cbbaa``_FGGHHIIJkjjiihhg>??@@AABPPOONNMMYYZZ[[\\NNMMGGFFtssrrqqpABBCCDDEpoonnmml9::;;<<= xwwvvuut12233445 >>==<<;;rrssttuu??>>==<>??@@Atssrrqqp56677889 - - ::998877vvwwxxyy !!;;::9988nnooppqqCCBBAA@@ffgghhii99::;;<<[ZZYYXXWNOOPPQQR - - cbbaa``_FGGHHIIJ !!""#HHGGFFEEaabbccdd - - AA@@??>>lkkjjiihIJJKKLLM hggffeedABBCCDDEpoonnmml9::;;<<=66554321zz{{||}}""##$$%%77665544rrssttuu??>>==<>??@@WVVUUTTSRSSTTUUV_^^]]\\[JKKLLMMN#$$%%&&' DDCCBBAAeeffgghh ==<<;;::hggffeedMNNOOPPQ - - dccbbaa`EFFGGHHIlkkjjiih=>>??@@A -0//..--,~~&&''(())33221100vvwwxxyy !!;;::9988nnooppqqAABBCCDD -SRRQQPPOVWWXXYYZ[ZZYYXXWNOOPPQQR'(())**+ - - @@??>>==iijjkkll99887766cba`__^^QRRSSTTU`__^^]]\IJJKKLLM hggffeedABBCCDDE - ,++**))(~~}}||**++,,--//..--,,zz{{||}}""##$$%%77665544rrssttuuEEFFGGMM - ONNMMLLKZ[[\\]]^WVVUUTTSRSSTTUUV+,,--../ - - <<;;::99mmnnoopp55//..--]]\\[[ZZUVVWWXXY\[[ZZYYXMNNOOPPQ - - dccbbaa`EFFGGHHI(''&&%%${{zzyyxx..//0011++**))((~~&&''(())33221100vvwwxxyyNNOOPPQQKJJIIHHG^__``aab -SRRQQPPOVWWXXYYZ/5566778 88776655qqrrsstt,,++**))YYXXWWVVYZZ[[\\]XWWVVUUTQRRSSTTU`__^^]]\IJJKKLLM$##""!! wwvvuutt22334455''&&%%$$~~}}||**++,,--//..--,,zz{{||}}RRSSTTUUGFFEEDDCbccddeef - ONNMMLLKZ[[\\]]^899::;;<44332211uuvvwwxx ((''&&%%UUTTSSRR]^^__``a TSSRRQQPUVVWWXXY\[[ZZYYXMNNOOPPQ ssrrqqpp66778899##""!! {{zzyyxx..//0011++**))((~~VVWWXXYYCBBAA@@?fgghhiijKJJIIHHG^__``aab<==>>??@00//..--yyzz{{||!!""##$$$$##""!!QQPPOONNabbccdde - - POONNMMLYZZ[[\\]XWWVVUUTQRRSSTTU !!""#oonnmmll::;;<<==wwvvuutt22334455''&&%%$$~~}}wwZZ[[\\]]?>>==<<;jkkllmmnGFFEEDDCbccddeef@AABBCCD,,++**))}}~~%%&&''(( MMLKJIHGeffgghhi LKKJJIIH]^^__``a TSSRRQQPUVVWWXXY#$$%%&&'kkjjiihh>>??@@AAssrrqqpp66778899##""!! vvuuttss^^__eeff !!";::99887nooppqqrCBBAA@@?fgghhiijDEEFFGGM ((''&&%%~~}}))**++,,GFFEEDDCijjkkllmHGGFFEEDabbccdde - - POONNMMLYZZ[[\\]'(())**+ggffeeddBBCCDDEEoonnmmll::;;<<==rrqqppoogghhiijj"##$$%%&76655443rssttuuv?>>==<<;jkkllmmnMNNOOPPQ !!""##$$$##""!!||{{zzyy--..//00CBBAA@@?mnnooppqDCCBBAA@effgghhi LKKJJIIH]^^__``a+,,--../ - -ccbbaa``FFGGHHIIkkjjiihh>>??@@AAnnmmllkkkkllmmnn&''(())*3221100/vwwxxyyz !!";::99887nooppqqrQRRSSTTU$%%&&''( xxwwvvuu11223344 ?>>==<<;qrrssttu@??>>==>==>??@WWVVUUTTRRSSTTUU__^^]]\\JJKKLLMM ]]\\[[ZZww}}~~23344556'&&%%$$#~~}}||{*++,,--./..--,,+z{{||}}~]^^__eef01122334llkkjjii==>>??@@ 10//..--}~~%&&''(()43322110uvvwwxxy !<;;::998mnnooppq@AABBCCD SSRRQQPPVVWWXXYY[[ZZYYXXNNOOPPQQ - - YYXXWWVV~~6778899:#""!! {zzyyxxw.//00112+**))(('~xxwfgghhiij45566778 hhggffeeAABBCCDD - - ,,++**))~~}}|)**++,,-0//..--,yzz{{||}!""##$$%87766554qrrssttuDEEFFGGM - - OONNMMLLZZ[[\\]]WWVVUUTTRRSSTTUUUUTTSSRR}}|{zyxw:;;<<==>wvvuutts23344556'&&%%$$#wvvuuttsjkkllmmn899::;;< - - ddccbbaaEEFFGGHH((''&&%%|{{zzyyx-..//001,++**))(}~~%&&''(()43322110uvvwwxxyMNNOOPPQKKJJIIHH^^__``aa SSRRQQPPVVWWXXYYQQPPOONNwvvuutts>??@@AABsrrqqppo6778899:#""!! srrqqpponooppqqr<==>>??@``__^^]]IIJJKKLL$$##""!!xwwvvuut12233445(''&&%%$~~}}|)**++,,-0//..--,yzz{{||}QRRSSTTUGGFFEEDDbbccddee - - OONNMMLLZZ[[\\]]MMGGFFEEsrrqqppoBCCDDEEFonnmmllk:;;<<==>onnmmllkrssttuuu@AABBCCD\\[[ZZYYMMNNOOPP tssrrqqp56677889$##""!! |{{zzyyx-..//001,++**))(}~~UVVWWXXYCCBBAA@@ffgghhiiKKJJIIHH^^__``aa DDCCBBAAonnmmllkFGGHHIIJkjjiihhg>??@@AABkjjiihhguttssrrqDEEFFGGHXXWWVVUUQQRRSSTT !!""poonnmml9::;;<<= xwwvvuut12233445(''&&%%$~~}}wYZZ[[\\]??>>==<>==kjjiihhgJKKLLMMN gffeeddcBCCDDEEFgffee__^qppoonnmHIIJJKKLTTSSRRQQUUVVWWXX##$$%%&&lkkjjiih=>>??@@Atssrrqqp56677889$##""!! wvvuutts]^^__eef !!;;::9988nnooppqqCCBBAA@@ffgghhii<<;;::99gffeedcbNOOPPQQR - - cbbaa``_FGGHHIIJ^]]\\[[ZmllkkjjiLMMNNOOP - - PPOONNMMYYZZ[[\\''(())**hggffeedABBCCDDEpoonnmml9::;;<<= srrqqppofgghhiij""##$$%%77665544rrssttuu??>>==<>??@@Aonnmmllkjkkllmmn&&''(())33221100vvwwxxyy !!;;::9988nnooppqq//..--,,\\[[ZZYYVWWXXYYZ[ZZYYXXWNOOPPQQR - - VUUTTSSReddccbbaTUUVVWWXHHGGFFEEaabbccdd//556677 - `__^^]]\IJJKKLLM hggffeedABBCCDDEkjjiihhgnooppqqr**++,,--//..--,,zz{{||}}""##$$%%77665544rrssttuu++**))((XXWWVVUUZ[[\\]]^WVVUUTTSRSSTTUUVRQQPPOONa``__^^]XYYZZ[[\DDCCBBAAeeffgghh8899::;;\[[ZZYYXMNNOOPPQ - - dccbbaa`EFFGGHHIgffee__^rssttuuv..//0011++**))((~~&&''(())33221100vvwwxxyy !!''&&%%$$TTSSRRQQ^__``aab -SRRQQPPOVWWXXYYZNMMGGFFE]\\[[ZZY\]]^^__`@@??>>==iijjkkll<<==>>??XWWVVUUTQRRSSTTU`__^^]]\IJJKKLLM ^]]\\[[Zvww}}~~22334455''&&%%$$~~}}||**++,,--//..--,,zz{{||}}""##$$%%##""!! PPOONNMMbccddeef - ONNMMLLKZ[[\\]]^EDDCCBBAYXXWWVVU`aabbccd <<;;::99mmnnoopp@@AABBCC TSSRRQQPUVVWWXXY\[[ZZYYXMNNOOPPQ - - ZYYXXWWV~66778899##""!! {{zzyyxx..//0011++**))((~~&&''(())LKJIHGGFfgghhiijKJJIIHHG^__``aab -A@@??>>=UTTSSRRQdeeffggh!!""##$$88776655qqrrssttDDEEFFGG - - POONNMMLYZZ[[\\]XWWVVUUTQRRSSTTUVUUTTSSR~}}|{zyx::;;<<==wwvvuutt22334455''&&%%$$~~}}||**++,,--FEEDDCCBjkkllmmnGFFEEDDCbccddeef - =<<;;::9QPPOONNMhiijjkkl%%&&''((44332211uuvvwwxxMMNNOOPP LKKJJIIH]^^__``a TSSRRQQPUVVWWXXYRQQPPOONwwvvuutt>>??@@AAssrrqqpp66778899##""!! {{zzyyxx..//0011BAA@@??>nooppqqrCBBAA@@?fgghhiij98877665MLLKKJJIlmmnnoop))**++,,00//..--yyzz{{||QQRRSSTTHGGFFEEDabbccdde - - POONNMMLYZZ[[\\]NMMGGFFEssrrqqppBBCCDDEEoonnmmll::;;<<==wwvvuutt22334455 >==<<;;:rssttuuv?>>==<<;jkkllmmn5//..--,IHHGGFFEpqqrrssttuuZHAb|ZdQb˂rXQdrtAQr˂pbtlfpvZdrtfH~Qr˂pbtlZp˂H~fr˂ptlJے`JXQtlJJ`ےJltZHAbJtArdnXv`AJltf`vXZHAbJtArdrXQJ``vXnZHAbtArdr˂ptArdbHAZpbdQZ|ے`JX|ZdQf~HbdQZ|nvpے`JXf~HbHAvpfے`JXQ|ZdQbZHAb|ZdQb˂bdrtAQr˂pbtlfpvdrtfH~Qr˂pXv`Zp˂H~fr˂ptlJے`JXQtlJHAZp˂JbdQZHAbJtArdnXv`AJltf`vXZHAbf~HbHAZp`vXnZHAbtArdr˂ptArdrXQJZ|dے`JX|ZdQf~HbdQZ|nvpے`JXfpv˂rXvpfے`JXQ|ZdQbZHAb|ZdQb`ےbrtAJlQr˂pbtlfpvdrtfH~Qr˂pnXv`QJ`ےH~fr˂ptlJے`JXQtlJHAZp˂tbdQZHAbJtArdnXv`AJltf`vXZHAbf~HXbHAZp`vXnZHAbtArdr˂ptArdbHAZ|dnے`JX|ZdQfHbdQZ|nvpے`JXv`f˂々vpfے`JXQf~HZHAb|ZdQbZp˂vfQr˂pbtlfpvdrtfH~Qr˂p~HfpbHAZdH~fr˂pfpvے`JXQtlJrXQJ`f`vXZHAbJtArdnrXQJ`AJltf`vXZHA۝vnXrtAJ`vXnZHAbnXv`r˂ptArdےbHAnvpے`JX|ZdQےHAbdQZ|nvp`JXQv`fbdQZ|vpfے`JXQf~Hp˂rZHAb|ZdQbZp˂fH~Qr˂pbtlZp˂drtfH~rbtl~HXdrtAH~fr˂pfpvXQJ`ےے`JXQtlJbHAZf`vXZHAbJtArdrXQJ`AJltf`vXJtAdv`fJlt`vXnZHAbnXv`bHAZr˂ptArdp˂rnvpے`JX|ZdQbHAbdQZ|nvp|ZdQ~HfpbdQZ|vpfے`JXQf~Hp˂rZHAb|ZdQbXQJ`ےfH~Qr˂pbtlZp˂drtfH~btlvnXdrtAH~fr˂pfpvXQJ`ےے`JXQtlJbHAZf`vXZHAbJtArdrXQJ`AJltf`vXJtArdv`fJbdQ`vXnZHAےnXv`bHAZr˂ptArdp˂nvpے`JX|ZdQbHAbdQZ|nvp|ZdQ~HXv`Z|dvpf`JXQrf~Hp˂rZHAbf~HbHAZpfH~Qr˂pbtlZp˂drtfH~btlf~HrtAJlH~fbtlfpvXQJ`ےے`JXQXv`f˂rXQf`vXZHAbJtArdrXQJ`AJltf`vXJtArdfpvtbdQ`vXnJtAdnXv`bHAZr˂p~HfJ`ےnvpے`JXf~HbHAbdQZ|nvp|ZdQnXv`Z|dvpf|ZdQbf~Hp˂rZHAbpvnbHAZpfH~Qr˂pfpvZp˂drtfH~btlf~HrtAJbH~ftlJfpvXQJ`ےے`JXQXv`f˂bf`vXZHAbnXv`rXQJ`AJltfZHAbJtArdXv`dQZ|`vXntArdnXv`bHAZr˂p~HXHAZdnvpے`JXf~HbHAbdQZ|ے`JX|ZdQf~HdrtAJvpf|ZdQbf~Hp˂rZHAbv`frtAJfH~Qr˂pfpvZp˂drtQr˂pbtlfpvltbH~ftlJfpvXQJ`ےے`JXQ~HfpbdQZ|f`vXZHAbnXv`rXQJ`AJltZHAbJtArdnXv`pdQZ|`vXntArdnXv`bHAZr˂pvnXdrtAnvpے`JXf~HbHAbdQZ|ے`JX|ZdQvndrtAJvpf|ZdQbf~Hp˂rZHAbv`fJltfH~Qr˂pfpvZp˂drtQr˂pbtlrXQJ`pbdQZ|H~ftlJfpvXQJ`ےے`JXQ~HXvbdQZ|f`vXZHAۅnXv`rXQJ`AJltZHAbJtArd˂rXdrtZHAbtArdnXv`bHAZr˂p`f~drtAJnvp`JXQf~HbHAbdQZ|ے`JX|ZdQQJ`ےAJltے`JXQ|ZdQbf~Hp˂r|ZdQbHfpvbdQZfH~rbtlfpvZp˂dtAQr˂pbtlbHAZpbdQZ|r˂ptlJfpvXQJ`ےtlJnXv|drf`vXJtAdnXv`rXQJ`JltZHAbJtArd˂drtZHAbtArdnXv`bHAZtArd`f~tAJlnvp|ZdQf~HbHAbnvpے`JX|ZdQbHAZpAJbdQے`JXQ|ZdQbf~Hp˂r|ZdQbHXv`tbdQZfH~btlfpvZp˂fHQr˂pbtlrXQZ|dr˂ptlJfpvXQJ`ےtlJf~H|drf`vXJtArdnXv`rXQJ`f`vXZHAbJtArdJ`ےrtAJlZHAbtArdnXv`bHAZtArdfpvtAJbdnvp|ZdQf~HbHAnvpے`JX|ZdQbHAZptbdQے`JXQ|ZdQbf~Hp˂r|ZdQbnXv`QZ|dfH~btlfpvZp˂fH~Qr˂pbtlbHZ|AJr˂ptlJfpvXQJ`ےtlJf~HrtAJlf`vXJtArdnXv`rXQJ`f`vXZHAbJtArdAZp˂ltbZHAbtArdnXv`bHAZtArdXv`ftbdnvp|ZdQf~HbHAnvpے`JX|ZdQrXQJ`nvpے`JXQ|ZdQbfHfp˂r|ZdQb~HfQZ|dfH~btlfpvZp˂fH~Qr˂pbtlےbHfHfr˂ptlJpvnXQJ`ےtlJpvnrtAJfZHAbJtArdnXv`rXQJ`f`vXZHAbJtArdAZp˂`vXnZHAbtArdrXQJ`bHAZtArdXv`pbdQZ|ے`JX|ZdQf~HbHAnvpے`JX|ZdQbHAvpfے`JXQ|ZdQbےHAZdrtAJlt`vXnZHAbtArdXQJ`ےvXnZHAbArd|QJ`ےJltvXnJtAd|f~HltbvXnHAbےXv`fJ`ےltbHAbےrd|v`pvZ|dvXnrd|v`fJ`ےvXnZHAbpfH~bdQZ|vpfے`JXQf~HbHAZvpfH`JXQZdQbtbHAZpbdQZ|vpfHZdQbtfpvdQZ|vpfH`JXQr~HfbHAZpdQZ|`JXQrZdQbtnrXQrtAJbvpfHZdQbt~HfpbHAZpvpfH`JXQf۝`vdrtAH~fr˂pXv`fp˂~f`r˂plJt˂rXdrtA~f`lJtnXv`drtAJ~f`˂pZpvn˂rXQdrtAJ˂pZlJtAJ`p˂dQZ|~fZHlJtAvnXrXQ~f`r˂pXnvˍJlt`vXnZHAb~HfbHAZpvXnZHAbArd|QJ`ےJltvXnArd|f~HbdQZ|vXnHAے`Xv`fJ`ےltbHAbےrd|rXQJdrtAJAbے`rd|v`fJ`ےvXnZHAbpfH~bdQZ|vpfے`JXQpvn˂rXQvpfH`JXQZdQbtbHAZpbdQZ|vpfHZdQbtXv`ˁdrtvpfHJXQrb~HfbHAZpdQZ|`JXQrZdQbt`ےbltbJXQrZdQbt~HfpbHAZdvpfH˂pZHf۝`vdrtAH~fr˂pXv`fJ`ے~f`r˂plJt˂rXdrtA~f`lJtf~HAJlt~f`tlJpvn˂rXQdtAJl˂pZlJtAHAZp˂dQZ|˂pZHlJtAvnXrtAJl~f`Abے`XnvˍJlt`vXnZHAb~HXbHAZpvXnZHAbArdQJ`ےJltvXnArd|fpvbdQZ|vXntAd|Xv`fJ`ےtbnHAbےrd|bHAdrtAJAbے`rd|v`ftbdvXnہJXQrpfH~bdQZ|vpfے`JXQv`f˂bvpfH`JXQf~HbHAZpbdQZ|vpfHZdQbtnXv`ˁdrtvpfHZdQbt~HfbHAZpvpf`JXQrZdQbtZp˂bdQZ|JXQrZdQbt~HfpQZ|dvpfH˂p`Zf۝`vdrtAH~fr˂p~HfpHAZd~f`r˂pfpv˂rXdrtA~flJtf~HXAJbdQ~f`lJtApvn˂rXQHf`˂pZlJtArXQJ`drt˂pZHlJtAvnXrtAJl~f`QXb㉀XnvˍJlt`vXnZHAےvnXrtAJvXnZHAbnXv`QJ`ےJltZHAbArd|v`fZ|dvXnrd|Xv`fJ`ےvXnHAbےrd|ےbHAAJltAbے`rd|v`ftbdvXnۑpJAHrpfH~bdQZ|vpf`JXQrv`fbdQZ|vpfH`JXQf~HbHAZpbdQZ|`JXQZdQbt~HfprtAJlvpfHZdQbt~HfbHAZpvpfH`JXQrZdQbtZp˂bdQZ|JXQrZdQbt~HfpQZ|dvpfH󙐂ˁ`Zf۝`vdrtAH~fbtl~HXvdrtA~f`r˂pfpv˂rXdrtAr˂plJtvnXtbdQ~f`lJtApvn˂rXQ~f`˂pZlJtAbHAZAJl˂pZHlJtAvnXrtAJl~f`QXAHrXnvˍJlt`vXnJtAd`f~JltvXnZHAbnXv`QJ`ےJltZHAbArd|v`pZ|dvXnrd|Xv`fJ`ےvXnHAbےrd|p˂rtbnAbے`rd|v`ftbdvXnېˁ`ZQpfH~bdQZ|vpf|ZdQbHfpvbdQZ|vpfH`JXQf~HbHAZpbdQZ|`JXQZdQbtvnrXrtAJvpfHZdQbt~HfbHAZpvpfH`JXQrZdQbtXQJ`ےvpfHJXQrZdQbtHfpQZ|dvpfHXb㉀ۑf۝`vdrtAH~ftlJnXvdrtAJ~f`r˂pfpv˂rXdrtAr˂plJtQJ`pbdQZ|~fZlJtApvn˂rXQ~f`˂pZlJtAbHAZf`˂pZHlJtAvnrXrtAJl~f`pJAHrXnvˍJlt`vXntArd`f~bdQZvXnZHAے`nXv`QJ`ےJltZHAbArd|rXQdrtAHAbےrd|Xv`fJ`ےvXnHAbےrd|p˂vXnAbے`rd|QJ`ےtbdvXnېˁ`ZQp|drbdQZ|vpf|ZdQbHXv`|drvpfHJXQrf~HbHAZpbdQZ|`JXQZdQbtJ`ےJlt`JXQrZdQbt~HfbHAZvpfH`JXQrZdQbtbHAZpvpfHJXQrZdQbtHAZpQZ|dvpfHXAHr󙐂QtJldrtAH~ftlJf~HtAJl璅~f`btlfpv˂rXdtAJlr˂plJtbHAZpbdQZ|˂pZlJtApvndrtAJ~f`˂pZlJtA˂rXQ~f`˂pZHlJtArXQrtAJl~f`ˁ`ZQXbtbAdZJlt`vXntArdfpvtbdQZvXnJtAd|nXv`QJ`ےtbZHAbArd|bHdrtAJHAbےrd|Xv`fltbvXnHAbےrdfJ`ےvXnAbے`rd|J`ےtbdvXn㉀ۑpJ|drbdQZ|vpf|ZdQbnXv`|drvpfHZdQbtf~HbHAZpnvp`JXQZdQbtAZp˂bdQZ`JXQrZdQbt~HfdQZ|vpfH`JXQr~HXbHAZpvpfHJXQrZdQbtbHAZpQZ|dvpfHAHr󙐂QtJldrtAH~ftlJf~HtAJbd~f`lJtfpv˂rXfHf`r˂plJtrXQJ`|dr˂pZlJtApvndrtAJ~f`˂pZv`f˂b~f`˂pZHlJtArXQrtAJl~f`ˁ`ZQXAtbAdZJltZHAbtArdXv`fQZ|dvXnArd|nXv`QJ`ےvXnZHAbArd|ےbHtAJlHAbےrd|Xv`fltbvXnHAbے~HfpHAZp˂vXnAbے`rd|J`ےtbdvXnHr󙐂ˁ|drbdQZ|ے`JXQ|ZdQb~HfrtAJlvpfHZdQbtf~HbHAZpvpfH`JXQZdQbtAZp˂tbdQZ`JXQrZdQbt~HfdQZ|vpfH`JXQrvnXrXQJvpfHJXQrZdQbtbHAZpQZ|dvpfH`ZQXbQtJldrtAr˂ptlJpvntbd~f`lJtfpv˂rX~f`r˂plJtbHA|AJl˂pZlJtApvndrtAJ~f`˂pZv`f`ےb~f`˂pZHlJtArXQrtAJl~f`ۑpJAtbAdZJltZHAbtArdXv`pQZ|dvXnArd|nXv`QJ`ےvXnZHAbArd|Zp˂tbnHAbےrd|Xv`fltbvXnHAbے~HXvHAZp˂vXnAbے`rdfJ`ےtbdvXnHr󙐂ˁ|drbdQZ|ے`JXQ|ZdQbvnrrtAJvpfHZdQbtf~HbHAZpvpfH`JXQZdQbtrXQJ`ۀvpf`JXQrZdQbtHfpdQZ|vpfH`JXQr`f~bHAvpfHJXQr~HfpbHAZpQZ|dvpfH`ZQXAHrQtJldrtAr˂ptlJXQJ`pbdQZ|~flJtfpv˂rX~f`r˂plJtbHAHf`˂pZlJtAvnrdrtAJ~f`˂pZHfpvZdr~f`˂pZHvnXrXQrtAJl~fr󙐂ˁ`ZtbAdZJltZHAbtArd˂rXQdrtAZHAbArd|nXv`QJ`ےvXnZHAbArd|Zp˂vXnHAbےrd|XQJ`ےltbvXnHAے`nXvtAJbdvXnAbے`v`fJ`ےtbd˂pZHQXb㉀|drbdQZ|ے`JXQ|ZdQbJ`ےJlt`JXQZdQbtf~HbHAZvpfH`JXQZdQbtbHAZpvpfH`JXQrZdQbtHAZpdQZ|vpfHJXQrb`f~QZ|dvpfHJXQr~HfpbHAZpQZ|dAbے`ۑpJAHrQtJldtAJr˂ptlJbHAZpbdQZ|r˂plJtfpvdrtA~f`r˂plJt˂rX~f`˂pZlJtA˂rXQdrtAJ~f`tlJHXv`rtAJl~f`˂pZHvnXrXQrtAJlJXQr󙐂ˁ`tbAdZltbZHAbtArd˂bdrtAZHAbArd|nXv`JltvXnZHAbArdQJ`ےvXnHAbےrd|J`ےltbvXntAd|f~HtbdvXnAbے`v`fJ`ےtbd˂pZHpfH~|drnvpے`JXQ|ZdQbHAZp˂JbdQ`JXQZdQbtf~HbdQZ|vpfH`JXQf~HXbHAZpvpfH`JXQrZdQbtbHAZpdQZ|vpfHZdQbtfpvQZ|dvpfHJXQr~HfpbHAZpQZ|dAbːf۝`vQtJlfHfr˂ptlJrXQJZ|dr˂plJtfpvdrtA~f`r˂pv`f˂~f`˂pZlJtA˂rXQdrtAJ~f`lJtAnXv`rtAJ~f`˂pZHvnXrXQrtAJlpZHAXnvˍtbAdZ`vXnZHAbtArd`ےbrtAJlZHAbArd|nXv`JltvXnZHAbە~HfpbHAZpvXnHAbےrd|J`ےltbvXnrd|f~HbdQZ|vXnAے`v`fJ`ےtbdbے`pfH~|drvpfے`JXQ|ZdQbHAZp˂tbdQ`JXQZdQbtf~HbdQZ|vpfH`JXQvnXrXQvpfH`JXQrZdQbtbHAZpdQZ|vpfHZdQbtXv`fdrtAvpfHJXQrbt~HfpbHAZpQZ|dJXQrːf۝`vQtJlH~fr˂ptlJbHAZ|AJlr˂plJtfpvdrtA~f`r˂pv`fJ`ے~f`˂pZlJtA˂rXQdrtAJ~f`lJtA~HfJlt~f`lJtvnXrXQtAJlpZHAXnvˍtbAdZ`vXnZHAbtArdZp˂tbZHAbArd|nXv`JltvXnZHAbە~HXbHAZpvXnHAbےrdfJ`ےltbvXnrd|pvnbdQZ|vXnAd|v`fJ`ےtbnb˂ppfH~|drvpfے`JXQ|ZdQbrXQJ`nvp`JXQZdQbtfHfpbdQZ|vpfH`JXQv`f󂀉bHvpfH`JXQr~HfbHAZpdQZ|vpfHZdQbtXv`fdrtAvpfHZdQbt~HfpbHAZp˅vpfHZHAbf۝`vQtJlH~fr˂ptlJےbHAfHf`r˂plJtvndrtA~f`r˂p~HfpAZd~f`˂pZpvn˂rXQdrtAJ~fZlJtA~HXJbdQ~f`lJtAvnXrXQf`ے`JXXnvˍtbAdZ`vXnZHAbtArdZp˂vXnZHAbArd|rXQJ`JltvXnZHAے`vnXrtAJbvXnHAbےXv`fJ`ےltbHAbےrd|v`fZ|dvXnrd|v`fJ`ےvXnQr˂ppfH~|drvpfے`JXQ|ZdQbbHAZvpfH`JXQZdQbtHAZpbdQZ|vpfHJXQrv`fdQZ|vpfH`JXQr~HfbHAZpdQZ|`JXQrZdQbt~HfprtAJlvpfHZdQbt~HfpbHAZpvpfHZHAbf۝`vQtJlH~fr˂ptlJp˂r~f`r˂plJt˂rXdrtA~f`btl~HXv`drtAJ~f`˂pZpvn˂rXQdrtAJ˂pZlJtAvnXtbdQ~f`lJtAvnXrXQ~f`˂pXnvˍtbAdZ|yz{|}~~}|{z-----------............................... \ No newline at end of file diff --git a/barcode-generator/Resources/data/qrv28_3.dat b/barcode-generator/Resources/data/qrv28_3.dat deleted file mode 100644 index f1fc129..0000000 --- a/barcode-generator/Resources/data/qrv28_3.dat +++ /dev/null @@ -1,257 +0,0 @@ -~}~}~}~}|{|{|{|{zyzyzyzyuvuvuvuvststststqrqrqrqropopopopmnmnmnmnklklklklijijijijghghghghefefefefabababab_`_`_`_`^]^]^]^]\[\[\[\[ZYZYZYZYVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLK~}~}~}~}|{|{|{|{zyzyzyzyuvuvuvuvststststqrqrqrqropopopopmnmnmnmnklklklklijijijijghghghghefefefefabababab_`_`_`_`^]^]^]^]\[\[\[\[XWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLK~}~}~}~}|{|{|{|{zyzyxwxwuvuvuvuvststststqrqrqrqropopopopmnmnmnmnklklklklijijijijghghghghedcdcdcdabababab_`_`_`_`^]^]^]^]\[\[\[\[XWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLK~}~}~}~}|{|{|{|{xwxwwwwwuvuvuvuvststststqrqrqrqropopopopmnmnmnmnklklklklijijijijghghghghcdcdcdcdabababab_`_`_`_`^]^]^]^]\[\[\[\[XWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLK~}~}~}~}|{|{|{|{wxwxwxwxuvuvuvuvststststqrqrqrqropopopopmnmnmnmnklklklklijijijijghghghghcdcdcdcdabababab______`_^]^]^]^]ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKGHGHGHGH~}~}~}~}|{|{|{|{wxwxwxwxuvuvuvuvststststqrqrqrqropopopopmnmnmnmnklklklklijijijijgfefefefcdcdcdcdabababab`_`_`_`_^]^]^]^]ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKGHGHGHGH~}~}~}~}|{|{|{|{wxwxwxwxuvuvuvuvststststqrqrqrqropopopopmnmnmnmnklklklklijijijijefefefefcdcdcdcdabababab`_`_`_`_^]^]^]^]ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKGHGHGHGH~}~}~}~}|{|{|{|{wxwxwxwxuvuvuvuvststststqrqrqrqropopopopmnmnmnmnklklklklijijijijefefefefcdcdcdcdabababab`_`_`_`_\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKJIGHGHGHGG~}~}~}~}|{|{|{|{wxwxwxwwuvuvuvuvststststqrqrqrqropopopopmnmnmnmnklklklklihghghghefefefefcdcdcdcdabababab`_`_____\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMJIJIJIJIGGGGHGHG~}~}~}~}|{|{|{|{wwwwxwxwuvuvuvuvststststqrqrqrqropopopopmnmnmnmnklklklklghghghghefefefefcdcdcdcdabababab`_`_`_`_\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMJIJIJIJIHGHGHGHG~}~}~}~}|{|{|{|{xwxwxwxwuvuvuvuvststststqrqrqrqropopopopmnmnmnmnklklklklghghghghefefefefcdcdcdcdabababab^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMJIJIJIJIHGHGHGHG~}~}~}~}|{|{|{|{xwxwxwxwuvuvuvuvststststqrqrqrqropopopopmnmnmnmnkjijijijghghghghefefefefcdcdcdcdabababab^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMJIJIJIJIHGHGHGHG~}~}~}~}|{|{|{|{xwxwxwxwuvuvuvuvststststqrqrqrqropopopopmnmnmnmnijijijijghghghghefefefefcdcdcdcdabababab^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMJIJIJIJIHGHGHGHG~}~}~}~}|{|{|{zyxwxwxwxwuvuvuvuvststststqrqrqrqropopopopmnmnmnmnijijijijghghghghefefefefcdcdcdcdabababab^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMJIJIJIJIHGGGGGGH~}~}~}~}zyzyzyzyxwwwwwwxuvuvuvuvststststqrqrqrqropopopopmlklklklijijijijghghghghefefefefcdcdcdcdabababab^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMJIJIJIJIGHGHGHGH~}~}~}~}zyzyzyzywxwxwxwxuvuvuvuvststststqrqrqrqropopopopklklklklijijijijghghghghefefefefcdcdcdcdabababab^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMJIJIJIJIGHGHGHGH~}~}~}~}zyzyzyzywxwxwxwxuvuvuvuvststststqrqrqrqropopopopklklklklijijijijghghghghefefefefcdcdcdcdababa`_`^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMJIJIJIJIGHGHGHGH~}~}~}~}zyzyzyzywxwxwxwxuvuvuvuvststststqrqrqrqronmnmnmnklklklklijijijijghghghghefefefefcdcdcdcd_`_`____^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMJIJIJIJIGHGHGHGH~}~}~}~}zyzyzyzywxwxwxwxuvuvuvuvststststqrqrqrqrmnmnmnmnklklklklijijijijghghghghefefefefcdcdcdcd__`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPOLKLKLKLKJIJIJIJIGHGHGGGG~}~}~}~}zyzyzyzywxwxwwwwuvuvuvuvststststqrqrqrqrmnmnmnmnklklklklijijijijghghghghefefefefcdcdcdcd`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPOLKLKLKLKJIJIJIJIGGHGHGHG~}~}~}~}zyzyzyzywwxwxwxwuvuvuvuvststststqpopopopmnmnmnmnklklklklijijijijghghghghefefefefcdcdcdcd`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPOLKLKLKLKJIJIJIJIHGHGHGHG~}~}~}~}zyzyzyzyxwxwxwxwuvuvuvuvststststopopopopmnmnmnmnklklklklijijijijghghghghefefefefcdcdcdcd`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQNMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHG~}~}~}~}zyzyzyzyxwxwxwxwuvuvuvuvststststopopopopmnmnmnmnklklklklijijijijghghghghefefefefcdcdcdcd`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQNMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHG~}~}~}~}zyzyzyzyxwxwxwxwuvuvuvuvsrqrqrqropopopopmnmnmnmnklklklklijijijijghghghghefefefefcdcdcdcd_____`_`^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQNMNMNMNMLKLKLKLKJIJIJIJIHGHGHGHG~}~}~}~}zyzyzyzyxwxwxwxwuvuvuvuvqrqrqrqropopopopmnmnmnmnklklklklijijijijghghghghefefefefcdcdcdcd_`_`_`_`^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIGGGGGHGH|{|{|{|{zyzyzyzywwwwwxwxuvuvuvuvqrqrqrqropopopopmnmnmnmnklklklklijijijijghghghghefefefefcdcdcdcd_`_`_`_`^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIGHGHGHGH|{|{|{|{zyzyzyzywxwxwxwxutstststqrqrqrqropopopopmnmnmnmnklklklklijijijijghghghghefefefefcdcdcdcb_`_`_`_`^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIGHGHGHGH|{|{|{|{zyzyzyzywxwxwxwxststststqrqrqrqropopopopmnmnmnmnklklklklijijijijghghghghefefefefabababab_`_`_`_`^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVURQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIGHGHGHGH|{|{|{|{zyzyzyzywxwxwxwxststststqrqrqrqropopopopmnmnmnmnklklklklijijijijghghghghefefefefabababab_`______^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVURQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIGHGGGGGH|{|{|{|{zyzyzyzywxwxwxwuststststqrqrqrqropopopopmnmnmnmnklklklklijijijijghghghghefefefefabababab`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVURQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIGHGHGHGF~}~}~}~}|{|{|{|{zyzyzyzyuuuuuvuvststststqrqrqrqropopopopmnmnmnmnklklklklijijijijghghghghefefefefabababab`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIEFEFEFEF~}~}~}~}|{|{|{|{zyzyzyzyuvuvuvuvststststqrqrqrqropopopopmnmnmnmnklklklklijijijijghghghghefefefefabababab`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIJIJIEFEFEFEF~}~}~}~}|{|{|{|{zyzyzyzyuvuvuvuvststststqrqrqrqropopopopmnmnmnmnklklklklijijijijghghghghefefefefabababab`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKJIJIHGHGEFEFEFEF~}~}~}~}|{|{|{|{zyzyzyzyuvuvuvuvststststqrqrqrqropopopopmnmnmnmnklklklklijijijijghghghghefefefefabababab`_`_`___^]^]^]^]\[\[\[\[ZYZYZYZYVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKHGHGGGGGEFEFEFEF~}~}~}~}|{|{|{|{zyzyzyzyuvuvuvuvststststqrqrqrqropopopopmnmnmnmnklklklklijijijijghghghghefefefefabababab___`_`_`^]^]^]^]\[\[\[\[ZYZYZYZYVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKGHGHGHGHEFEFEFEFEFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:787878785656565612121212/0/0/0/0.-.-.-.-,+,+,+,+*)*)*)*)&%&%&%&%$#$#$#$#"!"!"!"!         - - - -EFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:787878785656565612121212/0/0/0/0.-.-.-.-,+,+,+,+*)*)*)('&%&%&%&%$#$#$#$#"!"!"!"!         - - - -EFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:787878785656565412121212/0/0/0/0.-.-.-.-,+,+,+,+('('('('&%&%&%&%$#$#$#$#"!"!"!"!         - - - -EFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:787878783434343412121212/0/0/0/0.-.-.-.-,+,+,+,+('('('('&%&%&%&%$#$#$#$#"!"!"!"!         - - - -EFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:787878783434343412121212/0/0/0//.-.-.-.-,+,+,+*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!         - - - -EFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:787878763434343412121212////0/0/.-.-.-.-*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!         - - EFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:5656565634343434121212120/0/0/0/.-.-.-.-*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!         EFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:5656565634343434121212120/0/0/0/.-.-.-,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!         EFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:985656565634343434121212120/0/0/0/,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!         - -EFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<787878785656565634343434121212120/////0/,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!         - - - -EFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<787878785656565634343434121212120/0/0/.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!         - - - -EFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;:78787878565656563434343412121212.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!       - - - -EFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>9:9:9:9:78787878565656563434343412121212.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!     - - - -EFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>9:9:9:9:78787878565656563434343412121212.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!     - - - -EFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=<9:9:9:9:78787878565656563434343412121212.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!      - - - -EFEFEFEFCDCDCDCDABABABAB?@?@?@?@;<;<;<;<9:9:9:9:78787878565656563434343412121212.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!         - - - -EFEFEFEFCDCDCDCDABABABAB?@?@?@?@;<;<;<;<9:9:9:9:78787878565656563434343412121212.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!         - - - -EFEFEFEFCDCDCDCDABABABAB?@?@?@?>;<;<;<;<9:9:9:9:7878787856565656343434341210/0/0.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!         - - - -EFEFEFEFCDCDCDCDABABABAB=>=>=>=>;<;<;<;<9:9:9:9:787878785656565634343434/0//////.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!         - - - -EFEFEFEFCDCDCDCDABABABAB=>=>=>=>;<;<;<;<9:9:9:9:7878787856565656343434340/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!         - - - -EFEFEFEFCDCDCDCDABABABA@=>=>=>=>;<;<;<;<9:9:9:9:7878787856565656343434340/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!         - - - -EFEFEFEFCDCDCDCD?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:7878787856565656343434340/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!        - - - -EFEFEFEFCDCDCDCD?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:7878787856565656343434340/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!     - - - -EFEFEFEFCDCDCDCB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:7878787856565656343434340/0/0///.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!     - - - -EFEFEFEFABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:787878785656565634343434///0/0/0.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!      - - - -EFEFEFEFABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:787878785656565634343434/0/0/0/0.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#         - - - -EFEFEFEDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:787878785656565634343434/0/0/0/0.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#         - - - -CDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:787878785656565634343212/0/0/0/0.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#"!         - - - -CDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:787878785656565612121212/0/0/0/0.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%"!"!"!"!         - - - -CDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:787878785656565612121212//////0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%"!"!"!"!         - - - -CDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:7878787856565656121212120/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%$#"!"!"!"!         - - - -CDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:7878787856565656121212120/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('$#$#$#$#"!"!"!"!         - - - -CDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:7878787856565656121212120/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('$#$#$#$#"!"!"!"!         - - - -CDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:7878787856565656121212120/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('&%$#$#$#$#"!"!"!"!         - - - -CDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:7878787856565656121212120/0/////.-.-.-.-,+,+,+,+*)*)*)*)&%&%&%&%$#$#$#$#"!"!"!"!         - - - -~~}} NNMMGGFFrrssttuu]\\[[ZZY01122334EDDCCBBAHIIJJKKL-,,++**)`aabbccdxyyzz{{|*++,,--.-,,++**)eeffgghh }}~~ - - llkkjjii!!""##$$TTSSRRQQ99::;;<<((''&&%%||{{zzyy!!""##$$EEDDCCBBvvww}}~~ YXXWWVVU45566778A@@??>>=LMMNNOOP)((''&&%deeffggh |}}~~.//55667)((''&&%iijjkkll - - ~~}} hhggffee%%&&''((PPOONNMM==>>??@@$$##""!!xxwwvvuu%%&&''((AA@@??>> !!""##$UTTSSRRQ899::;;<=<<;;::9PQQRRSST%$$##""!hiijjkkl - - ~~}78899::;%$$##""!mmnnoopp||{{zzyyddccbbaa))**++,,LLKKJJIIAABBCCDD ttssrrqq))**++,,==<<;;::~~}}|{zy$%%&&''(QPPOONNM<==>>??@98877665TUUVVWWX! lmmnnoop }wwvvuut;<<==>>?! qqrrssttxxwwvvuu``__^^]]--..//00HHGGFFEEEEFFGGHHppoonnmm--..//0099887766xwwvvuut())**++,MLLKKJJI@AABBCCD54433221XYYZZ[[\pqqrrssttssrrqqp?@@AABBCuuvvwwxxttssrrqq\\[[ZZYY11223344DDCCBBAAIIJJKKLLtssrrqqpllkkjjii1122334455//..--tssrrqqp,--..//0IHHGGFFEDEEFFGGH100//..-\]]^^__`tuuvvwwxpoonnmmlCDDEEFFGyyzz{{||ppoonnmm XXWWVVUU55667788@@??>>==MMNNOOPP poonnmmlhhggffee55667788,,++**))poonnmml01122334EDDCCBBAHIIJJKKL-,,++**)`aabbccdxyyzz{{|lkkjjiihGMMNNOOP}}~~ - - llkkjjii!!""##$$TTSSRRQQ99::;;<<<<;;::99QQRRSSTT - - lkkjjiihddccbbaa99::;;<<((''&&%%lkkjjiih45566778A@@??>>=LMMNNOOP)((''&&%deeffggh |}}~~ - - hggffee_PQQRRSST ~~}} hhggffee%%&&''((PPOONNMM==>>??@@88776655UUVVWWXXhggffeed``__^^]]==>>??@@$$##""!!hggffeed899::;;<=<<;;::9PQQRRSST%$$##""!hiijjkkl - - ~~} _^^]]\\[TUUVVWWX - - ||{{zzyyddccbbaa))**++,,LLKKJJIIAABBCCDD44332211YYZZ[[\\ cba`__^^\\[[ZZYYAABBCCDD cba`__^^<==>>??@98877665TUUVVWWX! lmmnnoop }||{{zzy[ZZYYXXWXYYZZ[[\xxwwvvuu``__^^]]--..//00HHGGFFEEEEFFGGHH00//..--]]^^__`` - - ]]\\[[ZZXXWWVVUUEEFFGGHH]]\\[[ZZ@AABBCCD54433221XYYZZ[[\pqqrrsstyxxwwvvuWVVUUTTS\]]^^__ettssrrqq\\[[ZZYY11223344DDCCBBAAIIJJKKLL,,++**))aabbccddYYXXWWVVTTSSRRQQIIJJKKLLYYXXWWVVDEEFFGGH100//..-\]]^^__`tuuvvwwxuttssrrqSRRQQPPOeffgghhippoonnmm XXWWVVUU55667788@@??>>==MMNNOOPP((''&&%%eeffgghhUUTTSSRRPPOONNMMMMNNOOPP UUTTSSRRHIIJJKKL-,,++**)`aabbccdxyyzz{{|qppoonnm ONNMMGGFijjkkllm - - llkkjjii!!""##$$TTSSRRQQ99::;;<<<<;;::99QQRRSSTT$$##""!!iijjkkllQQPPOONNLLKKJJIIQQRRSSTT - - QQPPOONNLMMNNOOP)((''&&%deeffggh |}}~~ - - mllkkjji !!""##$FEEDDCCBmnnooppq hhggffee%%&&''((PPOONNMM==>>??@@88776655UUVVWWXX mmnnoopp !!""MMLKJIHGHHGGFFEEUUVVWWXX - - MMLKJIHGPQQRRSST%$$##""!hiijjkkl - - ~~} ihhggffe$%%&&''(BAA@@??>qrrssttuddccbbaa))**++,,LLKKJJIIAABBCCDD44332211YYZZ[[\\qqrrsstt##$$%%&&GFFEEDDCDDCCBBAAYYZZ[[\\GFFEEDDCTUUVVWWX! lmmnnoop }||{{zzyeddccbba())**++,>==<<;;:uvvww}}~``__^^]]--..//00HHGGFFEEEEFFGGHH00//..--]]^^__``uuvvwwxx''(())**CBBAA@@?@@??>>==]]^^__``CBBAA@@?XYYZZ[[\pqqrrsstyxxwwvvua``__^^],--..//0:9988776~\\[[ZZYY11223344DDCCBBAAIIJJKKLL,,++**))aabbccddyyzz{{||++,,--..?>>==<<;<<;;::99aabbccdd?>>==<<;\]]^^__`tuuvvwwxuttssrrq]\\[[ZZY01122334655//..-~~}}|{z XXWWVVUU55667788@@??>>==MMNNOOPP((''&&%%eeffgghh }}~~//556677;::9988788776655eeffgghh !!"";::99887`aabbccdxyyzz{{|qppoonnm YXXWWVVU45566778-,,++**)yxwwvvuu!!""##$$TTSSRRQQ99::;;<<<<;;::99QQRRSSTT$$##""!!iijjkkll - - ~~}}8899::;;7665543244332211iijjkkll##$$%%&&76655432deeffggh |}}~~ - - mllkkjji !!""##$UTTSSRRQ899::;;<)((''&&%ttssrrqq%%&&''((PPOONNMM==>>??@@88776655UUVVWWXX mmnnooppwwvvuutt<<==>>??10//..--00//..--mmnnoopp''(())**10//..--hiijjkkl - - ~~} ihhggffe$%%&&''(QPPOONNM<==>>??@%$$##""!ppoonnmm))**++,,LLKKJJIIAABBCCDD44332211YYZZ[[\\qqrrssttssrrqqpp@@AABBCC,,++**)),,++**))qqrrsstt++,,--..,,++**))lmmnnoop }||{{zzyeddccbba())**++,MLLKKJJI@AABBCCD! llkkjjii--..//00HHGGFFEEEEFFGGHH00//..--]]^^__``uuvvwwxxoonnmmllDDEEFFGG((''&&%%((''&&%%uuvvwwxx//556677((''&&%%pqqrrsstyxxwwvvua``__^^],--..//0IHHGGFFEDEEFFGGHhhggffee11223344DDCCBBAAIIJJKKLL,,++**))aabbccddyyzz{{||kkjjiihhMMNNOOPP$$##""!!$$##""!!yyzz{{||8899::;;$$##""!!tuuvvwwxuttssrrq]\\[[ZZY01122334EDDCCBBAHIIJJKKLdcba`__^55667788@@??>>==MMNNOOPP((''&&%%eeffgghh }}~~ - - ggffee__QQRRSSTT  }}~~<<==>>?? xyyzz{{|qppoonnm YXXWWVVU45566778A@@??>>=LMMNNOOP ^]]\\[[Z99::;;<<<<;;::99QQRRSSTT$$##""!!iijjkkll - - ~~}} ^^]]\\[[UUVVWWXX~~}}@@AABBCC|}}~~ - - mllkkjji !!""##$UTTSSRRQ899::;;<=<<;;::9PQQRRSST - - ZYYXXWWV==>>??@@88776655UUVVWWXX mmnnoopp||{{zzyyZZYYXXWWYYZZ[[\\wwvvuuttDDEEFFGG~~} ihhggffe$%%&&''(QPPOONNM<==>>??@98877665TUUVVWWXVUUTTSSRAABBCCDD44332211YYZZ[[\\qqrrssttxxwwvvuuVVUUTTSS]]^^__eessrrqqppMMNNOOPP}||{{zzyeddccbba())**++,MLLKKJJI@AABBCCD54433221XYYZZ[[\ RQQPPOONEEFFGGHH00//..--]]^^__``uuvvwwxxttssrrqqRRQQPPOOffgghhii - oonnmmllQQRRSSTT -yxxwwvvua``__^^],--..//0IHHGGFFEDEEFFGGH100//..-\]]^^__` - - NMMLKJIHIIJJKKLL,,++**))aabbccddyyzz{{||ppoonnmm NNMMGGFFjjkkllmm -  - - kkjjiihhUUVVWWXX - uttssrrq]\\[[ZZY01122334EDDCCBBAHIIJJKKL-,,++**)`aabbccd GGFFEEDDMMNNOOPP((''&&%%eeffgghh }}~~ - - llkkjjii!!""##$$EEDDCCBBnnooppqq - - ggffee__YYZZ[[\\qppoonnm YXXWWVVU45566778A@@??>>=LMMNNOOP)((''&&%deeffgghCCBBAA@@QQRRSSTT$$##""!!iijjkkll - - ~~}} hhggffee%%&&''((AA@@??>>rrssttuu ^^]]\\[[]]^^__ee - - mllkkjji !!""##$UTTSSRRQ899::;;<=<<;;::9PQQRRSST%$$##""!hiijjkkl??>>==<>??@98877665TUUVVWWX! lmmnnoop !!";;::9988YYZZ[[\\qqrrssttxxwwvvuu``__^^]]--..//0099887766 - - VVUUTTSSjjkkllmmeddccbba())**++,MLLKKJJI@AABBCCD54433221XYYZZ[[\pqqrrsst"##$$%%&77665543]]^^__``uuvvwwxxttssrrqq\\[[ZZYY1122334455//..--~~}}|{zy RRQQPPOOnnooppqqa``__^^],--..//0IHHGGFFEDEEFFGGH100//..-\]]^^__`tuuvvwwx&''(())*210//..-aabbccddyyzz{{||ppoonnmm XXWWVVUU55667788,,++**))xwwvvuut`__^^]]\-..//001HGGFFEEDEFFGGHHI0//..--,]^^__``auvvwwxxy'(())**+0//..--,bbccddeezz{{||}} oonnmmll !!WWVVUUTT66778899++**))((wvvuutts"##$$%%&SRRQQPPO:;;<<==>;::99887RSSTTUUV#""!! jkkllmmn'(())**+)((''&&%\[[ZZYYX12233445DCCBBAA@IJJKKLLM,++**))(abbccddeyzz{{||}+,,--../,++**))(ffgghhii ~~ - - kkjjiihh""##$$%%SSRRQQPP::;;<<==''&&%%$$srrqqppo&''(())*ONNMMLLK>??@@AAB76655443VWWXXYYZnooppqqr+,,--../%$$##""! !XWWVVUUT56677889@??>>==>??@@AA##""!! onnmmllk*++,,--.KJJIIHHGBCCDDEEF3221100/Z[[\\]]^rssttuuv/5566778! !""##$$%TSSRRQQP9::;;<<=<;;::998QRRSSTTU$##""!! ijjkkllm - - ~~}}w899::;;<$##""!! nnooppqq{{zzyyxxccbbaa``**++,,--KKJJIIHHBBCCDDEEkjjiihhg.//00112GFFEEDDCFGGHHIIJ/..--,,+^__``aabvwwxxyyz899::;;<%&&''(()POONNMML=>>??@@A87766554UVVWWXXY mnnooppqwvvuutts<==>>??@ rrssttuuwwvvuutt__^^]]\\..//0011GGFFEEDDFFGGHHIIgffeedcb23344556CBBAA@@?JKKLLMMN+**))(('bccddeefz{{||}}~<==>>??@)**++,,-LKKJJIIHABBCCDDE43322110YZZ[[\\]qrrssttusrrqqppo@AABBCCDvvwwxxyyssrrqqpp[[ZZYYXX22334455CCBBAA@@JJKKLLMMa`__^^]]6778899:?>>==<<;NOOPPQQR'&&%%$$#fgghhiij ~xxw@AABBCCD-..//001HGGFFEEDEFFGGHHI0//..--,]^^__``auvvwwxxyonnmmllkDEEFFGGMzz{{||}} oonnmmll !!WWVVUUTT66778899??>>==<;::99887RSSTTUUV#""!! jkkllmmn - - wvvuuttsDEEFFGGM 12233445DCCBBAA@IJJKKLLM,++**))(abbccddeyzz{{||} kjjiihhgMNNOOPPQ~~ - - kkjjiihh""##$$%%SSRRQQPP::;;<<==;;::9988RRSSTTUU - - XXWWVVUU>??@@AAB76655443VWWXXYYZnooppqqrsrrqqppoMNNOOPPQ - - 56677889@??>>==>??@@AA77665544VVWWXXYYTTSSRRQQBCCDDEEF3221100/Z[[\\]]^rssttuuvonnmmllkQRRSSTTU - - 9::;;<<=<;;::998QRRSSTTU$##""!! ijjkkllm - - ~~}}| ^]]\\[[ZUVVWWXXY {{zzyyxxccbbaa``**++,,--KKJJIIHHBBCCDDEE33221100ZZ[[\\]] - -PPOONNMMFGGHHIIJ/..--,,+^__``aabvwwxxyyzkjjiihhgUVVWWXXY =>>??@@A87766554UVVWWXXY mnnooppq|{{zzyyxZYYXXWWVYZZ[[\\]wwvvuutt__^^]]\\..//0011GGFFEEDDFFGGHHII//..--,,^^__``aa LKJIHGGFJKKLLMMN+**))(('bccddeefz{{||}}~ -gffee__^YZZ[[\\]ABBCCDDE43322110YZZ[[\\]qrrssttuxwwvvuutVUUTTSSR]^^__eefssrrqqpp[[ZZYYXX22334455CCBBAA@@JJKKLLMM++**))((bbccddeeFEEDDCCBNOOPPQQR'&&%%$$#fgghhiij ~ - ^]]\\[[Z]^^__eefEFFGGHHI0//..--,]^^__``auvvwwxxytssrrqqpRQQPPOONfgghhiij oonnmmll !!WWVVUUTT66778899??>>==<RSSTTUUV#""!! jkkllmmn - - ~~}}||{ZYYXXWWVfgghhiijIJJKKLLM,++**))(abbccddeyzz{{||} poonnmml !NMMGGFFEjkkllmmn - - kkjjiihh""##$$%%SSRRQQPP::;;<<==;;::9988RRSSTTUU##""!! jjkkllmm>==<<;;:VWWXXYYZnooppqqr{zzyyxxwVUUTTSSRjkkllmmn MNNOOPPQ(''&&%%$effgghhi }~~ - - lkkjjiih!""##$$%EDDCCBBAnooppqqrggffeedd&&''(())OONNMMLL>>??@@AA77665544VVWWXXYYnnooppqq !!""##:9988776Z[[\\]]^rssttuuvwvvuuttsRQQPPOONnooppqqr !!""##$QRRSSTTU$##""!! ijjkkllm - - ~~}}| hggffeed%&&''(()A@@??>>=rssttuuvccbbaa``**++,,--KKJJIIHHBBCCDDEE33221100ZZ[[\\]]rrssttuu$$%%&&''65543210^__``aabvwwxxyyzsrrqqppoNMMGGFFErssttuuu$%%&&''(UVVWWXXY mnnooppq|{{zzyyxdccbbaa`)**++,,-=<<;;::9vww}}~~__^^]]\\..//0011GGFFEEDDFFGGHHII//..--,,^^__``aavvwwxxyy(())**++//..--,,bccddeefz{{||}}~ -onnmmllk !!"EDDCCBBAuttssrrq())**++,YZZ[[\\]qrrssttuxwwvvuut`__^^]]\-..//00198877665~[[ZZYYXX22334455CCBBAA@@JJKKLLMM++**))((bbccddeezz{{||}},,--..//++**))((fgghhiij ~ - kjjiihhg"##$$%%&A@@??>>=qppoonnm,--..//0]^^__``auvvwwxxytssrrqqp\[[ZZYYX122334455//..--,~}}|{zyx !!WWVVUUTT66778899??>>==<>??@@AA77665544VVWWXXYYnnooppqqvvuuttss==>>??@@rssttuuvwvvuutts_^^]]\\[.//001125//..--,eddccbba899::;;>??@@A$##""!! oonnmmll**++,,--KKJJIIHHBBCCDDEE33221100ZZ[[\\]]rrssttuurrqqppooAABBCCDDvwwxxyyzsrrqqppo[ZZYYXXW23344556,++**))(a``__^^]<==>>??@mnnooppq|{{zzyyxdccbbaa`)**++,,-LKKJJIIHABBCCDDE kkjjiihh..//0011GGFFEEDDFFGGHHII//..--,,^^__``aavvwwxxyynnmmllkkEEFFGGMMz{{||}}~ -onnmmllk !!"WVVUUTTS6778899:(''&&%%$]\\[[ZZY@AABBCCDqrrssttuxwwvvuut`__^^]]\-..//001HGGFFEEDEFFGGHHIggffeedc22334455CCBBAA@@JJKKLLMM++**))((bbccddeezz{{||}} jjiihhggNNOOPPQQ ~ - kjjiihhg"##$$%%&SRRQQPPO:;;<<==>$##""!! YXXWWVVUDEEFFGGHuvvwwxxytssrrqqp\[[ZZYYX12233445DCCBBAA@IJJKKLLMba`__^^]66778899??>>==<??@@AAB UTTSSRRQHIIJJKKLyzz{{||} poonnmml !XWWVVUUT56677889@??>>==>??@@AA77665544VVWWXXYYnnooppqq{{zzyyxxYYXXWWVVZZ[[\\]]wvvuutts_^^]]\\[.//00112GFFEEDDCFGGHHIIJMLLKKJJIPQQRRSST~~}}| hggffeed%&&''(()POONNMML=>>??@@A87766554UVVWWXXYUTTSSRRQBBCCDDEE33221100ZZ[[\\]]rrssttuuwwvvuuttUUTTSSRR^^__eeffsrrqqppo[ZZYYXXW23344556CBBAA@@?JKKLLMMN IHHGGFFETUUVVWWX|{{zzyyxdccbbaa`)**++,,-LKKJJIIHABBCCDDE43322110YZZ[[\\] -QPPOONNMFFGGHHII//..--,,^^__``aavvwwxxyyssrrqqppQQPPOONNgghhiijj -onnmmllk !!"WVVUUTTS6778899:?>>==<<;NOOPPQQR - - -EDDCCBBAXYYZZ[[\xwwvvuut`__^^]]\-..//001HGGFFEEDEFFGGHHI0//..--,]^^__``a - MLKJIHGGJJKKLLMM++**))((bbccddeezz{{||}} oonnmmll !!MMGGFFEEkkllmmnn - kjjiihhg"##$$%%&SRRQQPPO:;;<<==>;::99887RSSTTUUV - A@@??>>=\]]^^__`tssrrqqp\[[ZZYYX12233445DCCBBAA@IJJKKLLM,++**))(abbccddeFFEEDDCCNNOOPPQQ''&&%%$$ffgghhii ~~ - - kkjjiihh""##$$%%DDCCBBAAooppqqrrgffeeddc&''(())*ONNMMLLK>??@@AAB76655443VWWXXYYZ=<<;;::9`aabbccdpoonnmml !XWWVVUUT56677889@??>>==>==ssttuuvvcbbaa``_*++,,--.KJJIIHHGBCCDDEEF3221100/Z[[\\]]^98877665deeffgghlkkjjiih!""##$$%TSSRRQQP9::;;<<=<;;::998QRRSSTTU$##""!! ijjkkllm>>==<<;;VVWWXXYYnnooppqq{{zzyyxxccbbaa``**++,,--<<;;::99ww}}~~_^^]]\\[.//00112GFFEEDDCFGGHHIIJ/..--,,+^__``aab54433221hiijjkklhggffeed%&&''(()POONNMML=>>??@@A87766554UVVWWXXY mnnooppq !!""#::998877ZZ[[\\]]rrssttuuwwvvuutt__^^]]\\..//001188776655~~[ZZYYXXW23344556CBBAA@@?JKKLLMMN+**))(('bccddeef !!""#100//..-lmmnnoopdccbbaa`)**++,,-LKKJJIIHABBCCDDE43322110YZZ[[\\]qrrssttu#$$%%&&'66554321^^__``aavvwwxxyyssrrqqpp[[ZZYYXX22334455//..--,,}}|{zyxw !!"WVVUUTTS6778899:?>>==<<;NOOPPQQR'&&%%$$#fgghhiij#$$%%&&'-,,++**)pqqrrssttuuZHAbtArd~HXvbHAZpnvpZHAbbtlf~HrXQJ`ہdrtnvpZHAbbtlbHAZpˁdrtH~fے`JXQtArdp˂rbdQZ|`vXnr˂p|ZdQbfpvے`JXQ|ZdQb`f~˂bfH~˙ے`JXJtArdfpvbHAAJltfH~˙ے`JXJtArdbHAJlt`vXnr˂pf~HXQJ`ےdrtAvpfZHAbtlJnXv`r˂ptlJHfpvHAZdf`vXQr˂p|ZdQnXv`Zp˂bdQZ|f`vXQr˂pf~HAZp˂bdQZ|vpfZHAےfpvbHAZJltH~fے`JXQtArdf~HZHAbtArdnXvrtAJnvpZHAbbtlf~HrXQJ`ہdrtnvpZHAۅXv`ˉrXQJ`drtH~f`JXQrnXv`p˂rbdQZ|`vXnr˂p|ZdQbXv`fے`JXQ|ZdQb`f~bdQZ|fH~˙ے`JXJtArdfpvbHAAJltfH~˒`JXQf~HےbHAJbdQ`vXnbtlf~HXQJ`ےdrtAvpfZHAbtlJ~HfdrtAr˂ptlJHXv`drtAf`vXQr˂p|ZdQnXv`Zp˂bdQZ|f`vXrbtlfpvAZp˂Z|dvpfJtAdfpvbHAZJltH~fے`JXQtArdpvnJltZHAbtArdf~HJltnvpZHAbbtlf~HrXQJ`ہdrtnvpJtAdnXv`ˉbHArtAJlH~f|ZdQbnXv`p˂rbdQZ|`vXnr˂p|ZdQbXv`pbdQZ|ے`JXQ|ZdQbfpvbdQZ|fH~˙ے`JXJtArdfpvbHAAJltfH~˂|ZdQf~HXZp˂tbdQZHAbtlJf~HXQJ`ےdrtAvpfZHAbtlJvnrdrtAJr˂ptlJnXv`drtAJf`vXQr˂p|ZdQnXv`Zp˂bdQZ|fZHAbbtlv`frXQJ`Z|AJے`JXQtArdfpvbHAZJltH~fے`JXQtArdXQJ`pbdQZZHAbtArdf~HbdQZnvpZHAbbtlf~HrXQJ`ہdtAے`JXJtArd~HfpbHAltbr˂p|ZdQbnXv`p˂rbdQZ|`vXnr˂p|ZdQb˂rXQ|drے`JXQ|ZdQbXv`f|drfH~˙ے`JXJtArdfpvbHAJltQr˂p|ZdQvnXZp˂nvpZHAbtlJf~HXQJ`ےdrtAvpfZHAbtlJJ`ےtAJlr˂ptlJ~HftAJlf`vXQr˂p|ZdQnXv`Zp˂bnvpZHAbbtlv`fbHAZpfHfے`JXQtArdfpvbHAZJltH~fے`JXQtArdbHAZptbdQZZHAbtArdpvntbdQZnvpZHAbbtlf~HrXQJ`۝fH˙ے`JXJtArd~HX˂rX`vXnr˂p|ZdQbnXv`p˂rbdQZ|`vXnr˂p|ZdQb˂b|drے`JXQ|ZdQbXv`p|drfH~˙ے`JXJtArdfpvbHAf`vXQr˂p|ZdQv`fQJ`ےvpfZHAbtlJf~HXQJ`ےdrtAvpfZHAbtlJHAZp˂tAJbdr˂ptlJ˂rXQtAJbdf`vXQr˂p|ZdQnXv`ZdrtnvpZHAbbtl~HfpۙbHAZpH~fے`JXQtArdfpvbHAZJltH~fے`JXQtArdrXQJQZ|dZHAbtArdJ`ےQZ|dnvpZHAbbtlfHAJltfH~˙ے`JXJtArdvnX˂`vXnr˂p|ZdQbnXv`p˂rbdQZ|`vXnr˂p|ZdQb`ےbrtAJlے`JXQ|ZdQbbHAZprtAJlfH~˙ے`JXJtArdfpvbdQZ|f`vXQr˂p|ZdQv`fbHAZdvpfZHAbtlJf~HXQJ`ےdrtAvpfZHAbtlJHAZp˂tbdr˂ptlJ˂btbdf`vXQr˂p|ZdQnrXQJ`drtnvpZHAbbtl~HXv`rtAJH~fے`JXQtArdfpvbHAZJltH~fے`JXQtArdbHAQZ|dZHAbtArdHAZp˂QZ|dnvpZHAbbtlےHAAJltfH~˙ے`JXJtArdf~HbdQZ|`vXnr˂p|ZdQbnXv`p˂rbdQZ|`vXnr˂pf~HZp˂rtAJے`JXQ|ZdQbrXQJrtAJfH~˙ے`JXJtArdZp˂bdQZ|f`vXQr˂p|ZdQfpvdrtAvpfZHAbtlJf~HXQJ`ےdrtAvpfZHAےXv`frXQJ`bdQZ|r˂ptlJ`ےbbdQZ|f`vXQr˂pf~HrXQJ`ہdrtnvpZHAbbtlnXv`JltH~fے`JXQtArdfpvbHAZJltH~f`JXQr~HfےbHAdrtAZHAbtArdHAZp˂drtAnvpZHAۅfpvbHAAJltfH~˙ے`JXJtArdf~HbdQZ|`vXnr˂p|ZdQbnXv`p˂rbdQZ|`vXnbtlpvnZp˂Jltے`JXQ|ZdQbbHAJltfH~˒`JXQnXv`Zp˂bdQZ|f`vXQr˂p|ZdQXv`drtAvpfZHAbtlJf~HXQJ`ےdrtAvpfJtAdXv`fbHAZbdQZ|r˂ptlJZp˂bdQZ|f`vXrbtlf~HrXQJ`ہdrtnvpZHAbbtlf~HJbdQH~fے`JXQtArdfpvbHAZJltH~f|ZdQb~HXp˂rdrtAZHAbtArdrXQJ`drtAnvpJtAdfpvbHAAJltfH~˙ے`JXJtArdfpvZ|d`vXnr˂p|ZdQbnXv`p˂rbdQZ|ZHAbtlJv`fXQJ`ےJbdQے`JXQf~HےbHAJbdQfH~˂|ZdQnXv`Zp˂bdQZ|f`vXQr˂p|ZdQnXv`prtAJl瀅vpfZHAbtlJf~HXQJ`ےdtAJے`JXQtArd~HfpbHAZZ|dr˂pXv`fZp˂Z|dfZHAbbtlf~HrXQJ`ہdrtnvpZHAbbtlvntbdQH~fے`JXQtArdfpvbHAZltbr˂p|ZdQbvnXp˂rtAJlZHAb~HfbHAZrtAJlے`JXJtArdfpvbHAAJltfH~˙ے`JXJtArdrXQJ`pZ|d`vXnr˂p|ZdQbnXv`p˂rnvpZHAbtlJv`fbHAZptbdQے`JXQpvnp˂rtbdQQr˂p|ZdQnXv`Zp˂bdQZ|f`vXQr˂p|ZdQ˂rXrtAJbvpfZHAbtlJf~HXQJ`ےfHfے`JXQtArd~HXv˂rXQZ|AJlr˂pXv`fXQJ`ےZ|dnZHAbbtlf~HrXQJ`ہdrtnvpZHAbbtlQJ`ےdQZ|H~fے`JXQtArdfpvbHAZ`vXnr˂p|ZdQb`f~J`ےtb|ZdQb~HXbHAZvf˙ے`JXJtArdfpvbHAAJltfH~˙ے`JXJtArdbHAZpdrtAJ`vXnr˂p|ZdQbnXv`drtAvpfZHAbtlJHfpvbHAZpnvptlJv`fp˂f`vXQr˂p|ZdQnXv`Zp˂bdQZ|f`vXQr˂p|ZdQ˂ltbvpfZHAbtlJfHfJltH~fے`JXQtArdnXv˂bfHf`tArd~HfpbHAZpnvpZHAbbtlf~HrXQJ`ہdrtnvpZHAbbtlbHAZpdQZ|H~fے`JXQtArdpvnbdQZ|`vXnr˂p|ZdQb`f~HAZdvXn|ZdQbvnX˂rXQfH~˙ے`JXJtArdfpvbHAAJltfH~˙ے`JXJtArdrXQdrtAJ`vXnr˂p|ZdQbrXQJ`drtAvpfZHAbtlJHXv`rtAJvpfHtlJv`fJ`ےf`vXQr˂p|ZdQnXv`Zp˂bdQZ|f`vXQr˂p|ZdQJ`ے㒉bdQZ|vpfZHAbtlJےHAZJltH~fے`JXQtArdf~HbdQZ|~f`vXnr˂pZdQbtnXv`ˑ˂rXbdQZ|vXnr˂pZdQbtےbHbdQZ|vpfHHAbےlJtAHAZpltb~f``JXQrrd|~HfQZ|dvXnۉ˂pZHZdQbtv`frXQQZ|dvXnpJAHrf۝`vvpfHZHAbۉlJtf~HQJ`ےdrtAvpfHZHAbۉlJtAZp˂drtA~f``JXQrrdf˂rXQdQZ|vXn˂pZZdQbtpvnrtAJlvpfHAbے`lJtA~HfpJ`ےrtAJlvpfHˁ`ZQXnvˍ~f``JXQArd|fpvbHAZpJlt~f``JXQArdˉbHAJltvXn˂pZ~HfJ`ےdrtAJvpfHHAbےlJtAXv`ftbd~f`JXQrrd|vnXbHAZpˑtbd~f`XAHr󙐂pfH~ㅍvXnr˂pZdQbtnXv`ˑ˂rXbdQZ|vXnr˂pf~HXZp˂bdQZ|vpfHHAے`pvnbHAZpltb~f``JXQrrd|~HXQZ|dvXnۉ˂pZHZdQbtv`frXQQZ|dvXnˁ`ZQXbf۝`vvpfHZHAbۉlJtf~HQJ`ےdrtAvpfHZHAے`v`frXQJ`ۂdrtAJ~f`JXQrbXv`f˂rXQdQZ|vXn˂pZZdQbtv`frtAJvpfHAbے`lJtA~HfpJ`ےrtAJlvpfH㉀ۑpJXnvˍ~f``JXQArd|fpvbHAZpJlt~f`JXQr~HfpbHAbdQZvXntlJ~HfJ`ےdrtAJvpfHHAbےlJtA~HfpbdQZ|~f`JXQrrd|vnXbHAZpˑtbd~frAHr󙐂pfH~ㅍvXnr˂pZdQbtnXv`ˑ˂rXbdQZ|vXnbtlvnXZp˂|drvpfHtAd|pvnbHAZpltb~f``JXQrrd|vnXdrtAvXnۉ˂pZHZdQbtv`frXQQZ|d˂pZHˁ`ZQXAf۝`vvpfHZHAbۉlJtf~HQJ`ےdrtAvpfHJtAd|v`fbHAZptAJl~fZZdQbtXv`f˂rXQdQZ|vXn˂pZZdQbtv`pvJltvpfHAbے`lJtA~HfpJ`ےtAJlAbے`Hr󙐂ˁXnvˍ~f``JXQArd|fpvbHAZpJlt~fZdQbt~HX˂rXtbdQZHAbےlJtA~HfJ`ےdrtAJvpfHHAbےlJtAnrXQbdQZ|~f`JXQrrd|vnXbHAZp˒tbnJXQr`ZQXbp|drvXnr˂pZdQbtnXv`ˑ˂rXbdQZ|ZHAbۉlJtv`fQJ`ے|AJl`JXQrrd|pvnbHAZpltb~f``JXQrrd|J`p˂drtAvXnۉ˂pZHZdQbtv`frXQvpfH˂pZHۑpJAQtJlvpfHZHAbۉlJtf~HQJ`ےdtAJl`JXQArd|~HfpۙbHAZptbn˂pZZdQbtXv`f˂rXQdQZ|vXn˂pZZdQbtrXQJJbdQvpfHAbے`lJtA~HfpJ`ےㅐf`AbHr󙐂ˁtbAdZ~f``JXQArd|fpvbHAZptbr˂pZdQbtvnX˂々vpfHAbےlJtA~HfJ`ےdrtAJvpfHHAbےlJtA`ےbZ|d~f`JXQrrd|vnXbHAZdvXnۂpZHA`ZQXAHr|drvXnr˂pZdQbtnXv`ˑ˂rXnvpZHAbۉlJtv`fbHAZpHf``JXQrrd|pvnbHAZpltb~f``JXQrrd|HAZp˂rtAJlvXnۉ˂pZHZdQbtv`frtAJlvpfHbے`󙐂ˁ`ZQtJlvpfHZHAbۉlJtf~HQJ`ےfHf``JXQArd|~HXv`rXQvXn˂pZZdQbtXv`f˂rXQdQZ|vXn˂pZZdQbtbHAtbdQvpfHAbے`lJtAHfpۑtbd~f`JXQrQXb㉀tbAdZ~f``JXQArd|fpvbHAZvXnr˂pZdQbtf~HJ`ےvpfHHAbےlJtA~HfJ`ےdrtAJvpfHHAbےlJtAZp˂Z|d~f`JXQrrd|vnrXQZ|dvXnۂpZHAۑpJAHr|drvXnr˂pZdQbtnXv`˂drtAvpfHZHAbۉlJtfpvbHAZp~f``JXQrrd|pvnbHAZpltb~f``JXQrrd|rXQJ`rtAJbvXnۉ˂pZHZdQbtQJ`ےrtAJlvpfHb˂p󙐂ˁ`QtJlvpfHZHAbۉlJtfHfpJlt~f``JXQArd|nXv`bHvXn˂pZZdQbtXv`f˂rXQdQZ|vXn˂pZZdQbtےbHAdQZ|vpfHAbے`lJtAHAZpˑtbd~f`ZHAbpfH~tbAdZ~f``JXQArd|vnbdQZ|vXnr˂pZdQbtf~HAZdvpfHHAbےlJtA~HfJ`ےdrtAJvpfHHAbےlJtAZp˂drtAJ~f`JXQrrdfrXQQZ|dvXnۙے`JXf۝`v|drvXnr˂pZdQbtrXQJ`ۂdrtAvpfHZHAbۉlJtXv`rtAJb~f``JXQrrd|pvnbHAZpltb~f``JXQrrdfbHAZltbvXnۉ˂pZH~HfpJ`ےrtAJlvpfHQr˂pXnvˍQtJlvpfHZHAbۉlJtHAZpJlt~f``JXQArd|f~HdQZ|vXn˂pZZdQbtXv`f˂rXQdQZ|vXn˂pZ~HXp˂rdQZ|vpfHAے`vnXbHAZpˑtbd~f`ZHAbpfH~tbAdZ~f``JXQArdˑ˂rXbdQZ|vXnr˂pZdQbtfpvdrtAJvpfHHAbےlJtA~HfJ`ےdrtAJvpfHHAے`v`fXQJ`ےdrtAJ~f`JXQrbtv`frXQQZ|dvXnۙ˂pf۝`v|drvXnr˂pf~HQJ`ےdrtAvpfHZHAbۉlJtnXv`ltb~f``JXQrrd|pvnbHAZpltb~f`JXQrb~HfpbHAZbdQZ|vXnۉlJt~HfpJ`ےrtAJlvpfHZHAbXnvˍQtJlvpfHZHAے`fpvbHAZpJlt~f``JXQArd|f~HXdQZ|vXn˂pZZdQbtXv`f˂rXQdQZ|vXntlJvnXp˂drtvpfHAd|vnXbHAZpˑtbd~f``JXQpfH~tbAdZ~f`JXQrnXv`ˑ˂rXbdQZ|vXnr˂pZdQbtv`fdrtAJvpfHHAbےlJtA~HfJ`ےdrtAJvpfHtAd|v`fbHAZpAJlt~fZHZdQbtv`frXQQZ|dvXnr˂pf۝`v|drvXnbtlf~HQJ`ےdrtAvpfHZHAbۉlJt~HfpbdQZ|~f``JXQrrd|pvnbHAZpltb~fZZdQbt~HXv˂rXQbdQZ|Abے`lJtA~HfpJ`ےrtAJlvpfHZHAbXnvˍQtJlvpfHJtAd|fpvbHAZpJlt~f``JXQArd|vnXdrtvXn˂pZZdQbtXv`f˂rXQdQZ|HAbےlJtA`f~J`ےAJlJXQrrd|vnXbHAZpˑtbd~f`˂pZHpfH~tbAdZ~fZdQbtnXv`ˑ˂rXbdQZ|vXnr˂pZdQbtv`pAJltvpfHHAbےlJtA~HfJ`ےdtAJl`JXQrrd|HfpvbHAZptbn˂pZHZdQbtv`frXQQZ|dvXnAbے`f۝`v|drZHAbۉlJtf~HQJ`ےdrtAvpfHZHAbۉlJtvnrXbdQZ|~f``JXQrrd|pvnbHAZptbn˂pZZdQbtnXv˂bvpfHAbے`lJtA~HfpJ`ےrtAJlvpfHJXQrXnvˍQtJl`JXQArd|fpvbHAZpJlt~f``JXQArd|QJ`pˁdrtvXn˂pZZdQbtXv`f˂rXQvpfHAbےlJtA`f~HAZp˂f`JXQrrd|vnXbHAZpˑtbd~f`˂p`ZpfH~tbAdZr˂pZdQbtnXv`ˑ˂rXbdQZ|vXnr˂pZdQbtrXQAJbdQvpfHHAbےlJtA~HfJ`ےHf``JXQrrd|HXv`rXQJvXnۉ˂pZHZdQbtv`frXQQZ|dvXnQXb㉀f۝`v|drZHAbۉlJtf~HQJ`ےdrtAvpfHZHAbۉlJtJ`ےZ|d~f``JXQrrd|pvnbHAZvXn˂pZZdQbtf~H`ےbvpfHAbے`lJtA~HfpJ`ےrtAJlvpfHۑpJAHrXnvˍQtJl`JXQArd|fpvbHAZpJlt~f``JXQArd|bHAZprtAJlvXn˂pZZdQbtXv`fdrtAJvpfHHAbےlJtAfpvHAZp˂~f`JXQrrd|vnXbHAZpˑtbd~f`󙐂ˁ`ZpfH~tbAdZr˂pZdQbtnXv`ˑ˂rXbdQZ|vXnr˂pZdQbtbHtbdQvpfHHAbےlJtAHfpltb~f``JXQrrd|nXv`bHAvXnۉ˂pZHZdQbtv`frXQQZ|dvXnQXAHrf۝`v|drZHAbۉlJtf~HQJ`ےdrtAvpfHZHAbۉlJtAZp˂Z|d~f``JXQrrd|vnrdQZ|vXn˂pZZdQbtf~HZdrvpfHAbے`lJtA~HfpJ`ےrtAJlvpfHˁ`ZQXnvˍQtJl`JXQArd|fpvbHAZpJlt~f``JXQArd|rXQJ`rtAJvXn˂pZZdQbtXQJ`ےdrtAJvpfHHAbےlJtAXv`ftAJbd~f`JXQrrd|vnXbHAZpˑtbd~f`Xb㉀ۑpfH~tbAdZ|yz{|}~~}|{z66667777777777777777777777777777777 \ No newline at end of file diff --git a/barcode-generator/Resources/data/qrv29_0.dat b/barcode-generator/Resources/data/qrv29_0.dat deleted file mode 100644 index b6cc568..0000000 --- a/barcode-generator/Resources/data/qrv29_0.dat +++ /dev/null @@ -1,265 +0,0 @@ -|{|{{{{{yyyyyzyzyzyzyzyzwxwxwxwxuvuvuvuvststststqrqrqrqropopopopopopopopmnmnmnmnklklklklijijijijghghghghefefefefdcdcdcccbabababa`_`_`_`_^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQRQRQRQRQNMNMNMNMKLKLKLKLIJIJIJIJIJIJIJIJGHGHGHGHEFEFEFEFCDCDCDCDABABABAB?@?@?@?@?@?@?@?>=>=>=>=>;<;<;<;<9:9:9:9:7878787856565656{|{|{|{|yzyzyzyzyzyzyzyzwxwxwxwxuvuvuvuvststststqrqrqrqropopopoponmnmnmnmnmnmnmnklklklklijijijijghghghghefefefefcccdcdcdbabababa`_`_`_`_^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQRQRQRQRQNMNMNMNMKLKLKLKLIJIJIJIJIJIJIJIJGHGHGHGHEFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>=>=>=>=>;<;<;<;<9:9:9:9:7878787856565656~}{|{|{|{|yzyzyzyzyzyzyzyzwxwxwxwxuvuvuvuvststststqrqrqrqropopopopmnmnmnmnmnmnmnmnklklklklijijijijghghghghefefefefcdcdcdcdbabababa`_`_`_`_^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMKLKLKLKLIJIJIJIJIJIJIJIJGHGHGHGHEFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>=>=>=>=>;<;<;<;<9:9:9:9:7878787856565656~}~}~}~}{|{|{|{|yzyzyzyzyzyzyzyzwxwxwxwxuvuvuvuvststststqrqrqrqropopopopmnmnmnmnmnmnmnmnklklklklijijijijghghghghefefefefcdcdcdcdbabababa`_`_`_`_^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMKLKLKLKKIJIJIJIJIJIJIJIHGHGHGHGHEFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>=>=>=>=>;<;<;<;<9:9:9:9:7878787856565656~}~}~}~}{|{|{|{|yzyzyzyzyxwxwxwxwxwxwxwxuvuvuvuvststststqrqrqrqropopopopmnmnmnmnmnmnmnmnklklklklijijijijghghghghefefefefcdcdcdcdbabababa`_`_`_`_^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMKKKKLKLKIJIJIJIJGHGHGHGHGHGHGHGHEFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>=>=>=>=>;<;<;<;<9:9:9:9:7878787856565656~}~}~}~}{|{|{|{{yzyzyzyzwxwxwxwxwxwxwxwxuvuvuvuvststststqrqrqrqropopopopmnmnmnmnmnmnmnmnklklklklijijijijghghghghefefefefcdcdcdcdbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKIJIJIJIJGHGHGHGHGHGHGHGHEFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>=>=>=>=<;<;<;<;<9:9:9:9:7878787856565656~}~}~}~}{{{{|{|{yzyzyzyzwxwxwxwxwxwxwxwxuvuvuvuvststststqrqrqrqropopopopmnmnmnmnmlklklklklklklklijijijijghghghghefefefefccccccdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKIJIJIJIJGHGHGHGHGHGHGHGHEFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<;<;<;<;<9:9:9:9:7878787856565656~}~}~}~}|{|{|{|{yzyzyzyzwxwxwxwxwxwxwxwxuvuvuvuvststststqrqrqrqropopopopmnmnmnmnklklklklklklklklijijijijghghghghefefefefdcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKIJIJIJIJGHGHGHGHGHGHGHGHEFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<;<;<;<;<9:9:9:9:7878787856565656~}~}~}~}|{|{|{|{yzyzyzyzwxwxwxwxwxwxwxwxuvuvuvuvststststqrqrqrqropopopopmnmnmnmnklklklklklklklklijijijijghghghghefefefefdcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKIJIJIJIJGHGHGHGHGHGHGHGFEFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<;<;<;<;<9:9:9:9:7878787856565656~}~}~}~}|{|{|{|{yzyzyzyzwxwxwxwxwvuvuvuvuvuvuvuvststststqrqrqrqropopopopmnmnmnmnklklklklklklklklijijijijghghghghefefefefdcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKKKKKKLIJIJIJIJGHGHGHGHEFEFEFEFEFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<;<;<;<;<9:9:9:9:7878787856565656~}~}~}~}|{|{|{|{yzyzyzyzwxwxwxwxuvuvuvuvuvuvuvuvststststqrqrqrqropopopopmnmnmnmnklklklklklklklklijijijijghghghghefefefefdcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMKLKLKLKLIJIJIJIJGHGHGHGHEFEFEFEFEFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<;<;<;<;:9:9:9:9:7878787856565656~}~}~}~}|{{{{{{|yzyzyzyzwxwxwxwxuvuvuvuvuvuvuvuvststststqrqrqrqropopopopmnmnmnmnklklklklkjijijijijijijijghghghghefefedcddcdcccccbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMKLKLKLKLIJIJIJIJGHGHGHGHEFEFEFEFEFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:9:9:9:9:7878787856543434~}~}~}~}{|{|{|{|yzyzyzyzwxwxwxwxuvuvuvuvuvuvuvuvststststqrqrqrqropopopopmnmnmnmnklklklklijijijijijijijijghghghghcdcdccccdcdcdcdcbabababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMKLKLKLKLIJIJIJIJGHGHGHGHEFEFEFEFEFEFEFEFCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:9:9:9:9:7878787834333333~}~}~}~}{|{|{|{|yzyzyzyzwxwxwxwxuvuvuvuvuvuvuvuvststststqrqrqrqropopopopmnmnmnmnklklklklijijijijijijijijghghghgfccdcdcdcbabababababababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMKLKLKLKLIJIJIJIJGHGHGHGHEFEFEFEFEFEFEFEDCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:9:9:9:9:7878765643434343~}~}~}~}{|{|{|{|yzyzyzyzwxwxwxwxuvuvuvuvutstststststststqrqrqrqropopopopmnmnmnmnklklklklijijijijijijijijefefefefdcdcdcdcbabababababababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMKLKLKKKKIJIJIJIJGHGHGHGHEFEFEFEFCDCDCDCDCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:9:9:9:9:5656565643434343~}~}~}~}{|{|{|{|yzyzyzyzwxwxwxwxuvuvuvuvststststststststqrqrqrqropopopopmnmnmnmnklklklklijijijijijijijijefefefefdcdcdcdcbabababababababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMKKLKLKLKIJIJIJIJGHGHGHGHEFEFEFEFCDCDCDCDCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:9:9:9:985656565643434343~}~}~}~}{|{|{{{{yzyzyzyzwxwxwxwxuvuvuvuvststststststststqrqrqrqropopopopmnmnmnmnklklklklijijijijihghghghefefefefdcdcdcdcbabababababababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKIJIJIJIJGHGHGHGHEFEFEFEFCDCDCDCDCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:787878785656565643434343~}~}~}~}{{|{|{|{yzyzyzyzwxwxwxwxuvuvuvuvststststststststqrqrqrqropopopopmnmnmnmnklklklklijijijijghghghghefefefefdcdcdcdcbabababababababa`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKIJIJIJIJGHGHGHGHEFEFEFEFCDCDCDCDCDCDCDCDABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:787878785656565643434333~}~}~}~}|{|{|{|{yzyzyzyzwxwxwxwxuvuvuvuvststststststststqrqrqrqropopopopmnmnmnmnklklklklijijijijghghghghefefefefcccccdcdbabababa`_`_`_`_`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKIJIJIJIJGHGHGHGHEFEFEFEFCDCDCDCDCDCDCDCBABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:787878785656565633343434~}~}~}~}|{|{|{|{yzyzyzyzwxwxwxwxuvuvuvuvststststsrqrqrqrqrqrqrqropopopopmnmnmnmnklklklklijijijijghghghghefefefefcdcdcdcdbabababa`_`_`_`_`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMLKLKLKLKIJIJIJIJGHGHGHGHEFEFEFEFCDCDCDCDABABABABABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:787878785656565634343434~}~}~}~}|{|{|{|{yzyzyzyzwxwxwxwxuvuvuvuvststststqrqrqrqrqrqrqrqropopopopmnmnmnmnklklklklijijijijghghghghefefefefcdcdcdcdbabababa`_`_`_`_`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMKKKKKLKLIJIJIJIJGHGHGHGHEFEFEFEFCDCDCDCDABABABABABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:787878785656565634343434~}~}~}~}|{|{|{|{yzyzyzyzwxwxwxwxuvuvuvuvststststqrqrqrqrqrqrqrqropopopopmnmnmnmnklklklklijijijijghghghghefefefefcdcdcdcdbabababa`_`_`_`_`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMKLKLKLKLIJIJIJIJGHGHGHGHEFEFEFEFCDCDCDCDABABABABABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:78787878565656563434343443433333~}~}~}~}{{{{{|{|yzyzyzyzwxwxwxwxuvuvuvuvststststqrqrqrqrqrqrqrqropopopopmnmnmnmnklklklklijijijijghghghghefefefefcdcdcdcdbabababa`_`_`_`_`_`_`_`_^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMKLKLKLKLIJIJIJIJGHGHGHGHEFEFEFEFCDCDCDCDABABABABABABABAB?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:78787878565656563434343434343434~}~}~}~}{|{|{|{|yzyzyzyzwxwxwxwxuvuvuvuvststststqrqrqrqrqrqrqrqropopopopmnmnmnmnklklklklijijijijghghghghefefefefcdccccccbabababa`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMKLKLKLKLIJIJIJIJGHGHGHGHEFEFEFEFCDCDCDCDABABABABABABABA@?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:78787878565656563333334334343434~}~}~}~}{|{|{|{|yzyzyzyzwxwxwxwxuvuvuvuvststststqrqrqrqrqpopopopopopopopmnmnmnmnklklklklijijijijghghghghefefefefdcdcdcdcbabababa`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQPOPOPOPONMNMNMNMKLKLKLKLIJIJIJIJGHGHGHGHEFEFEFEFCDCDCDCDABABABAB?@?@?@?@?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:78787878565656564343434334343434~}~}~}~}{|{|{|{|yzyzyzyzwxwxwxwxuvuvuvuvststststqrqrqrqropopopopopopopopmnmnmnmnklklklklijijijijghghghghefefefefdcdcdcdcbabababa`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPONMNMLKLKKLKKKKKLIJIJIJIJGHGHGHGHEFEFEFEFCDCDCDCDABABABAB?@?@?@?@?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:78787878565656564343434334343434~}~}~}~}{|{|{|{|yzyzyzyzwxwxwxwxuvuvuvuvststststqrqrqrqropopopopopopopopmnmnmnmnklklklklijijijijghghghghefefefefdcdcdcdcbabababa`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOLKLKKKKKKLKLKLKJIJIJIJIJGHGHGHGHEFEFEFEFCDCDCDCDABABABAB?@?@?@?@?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:78787878565656564343434334343433~}~}|{|{{|{|{|{yyzyzyzyzwxwxwxwxuvuvuvuvststststqrqrqrqropopopopopopopopmnmnmnmnklklklklijijijijghghghghefefefefdcdcdcdcbabababa`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[ZYZYZYZYXWXWXWXWVUVUVUVUTSTSTSTSRQRQRQRQRQRQRQRQPOPOPONMKLKLKLKLIJIJIJIJIJIJIJIJGHGHGHGHEFEFEFEFCDCDCDCDABABABAB?@?@?@?@?@?@?@?@=>=>=>=>;<;<;<;<9:9:9:9:7878787856565656434343433333434343434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!         - - - -43434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!         - - - -43434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)*)*)*)('('('('('&%&%&%&%$#$#$#$#"!"!"!"!         - - - -43434343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('('('('('&%&%&%&%$#$#$#$#"!"!"!"!         - - - - - -43333343212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('('('('('&%&%&%&%$#$#$#$#"!"!"!"!         - - - - - - - -43434321212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('('('('('&%&%&%&%$#$#$#$#"!"!"!"!         - - - - - - - -21212121212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('('('('('&%&%&%&%$#$#$#$#"!"!"!"!         - - - - - - - -21212121212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('('('('&%&%&%&%&%$#$#$#$#"!"!"!"!         - - - - - - - -21212121212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!         - - - - - - 21212121212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!         - - - -212121212121210/0/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!         - - - -212121210/0/0/0/0/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%&%&%&%&%$#$#$#$#"!"!"!"!         - - - -212121210/0/0/0/0/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%&%&%&%$#$#$#$#$#"!"!"!"!         - - - -212121210/0/0/0/0/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!         - - - -212121210/0/0/0/0/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!         - - - -212121210/0/0/0/0/0/0/.-.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!         - - - -212121210/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!         - - - -212121210/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#$#$#$#"!"!"!"!"!         - - - -212121210/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!"!"!"!"!         - - - -212121210/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!"!"!"!"!         - - - -212121210/0/0/0/.-.-.-.-.-.-.-,+,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!"!"!"!"!       - - - -212121210/0/0/0/.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!"!"!"!"!      - - - -212121210/0/0/0/.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!"!"!"!          - - - -212121210/0/0/0/.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!             - - - -212121210/0/0/0/.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!             - - - -212121210/0/0/0/.-.-.-.-,+,+,+,+,+,+,+*)*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!             - - - -212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!           - - - -212121210/0/0/0/.-.-.-.-,+,+,+,+*)*)*)*)*)*)*)*)('('('('&%&%&%&%$#$#$#$#"!"!"!"!         - - - -mmnnoopp~}tuuvvwwx%$$##""!LMMNNOOPMLLKKJJI$%%&&''(uttssrrqlmmnnoop-,,++**)DEEFFGGHFEEDDCCBGHHIIJJK;;::9987==>>??@@\\[[ZZYY]]^^__``<<;;::9955667788ddccbbaa }}~~ xwwvvuut uvvwwxxy$##""!! MNNOOPPQLKKJJIIH%&&''(()tssrrqqpmnnooppq,++**))(EFFGGHHIEDDCCBBAHIIJJKKQ~~}} qqrrsstt |{{zzyyx - - xyyzz{{|! PQQRRSSTIHHGGFFE())**++,qppoonnmpqqrrsst)((''&&%HIIJJKKLBAA@@??>KQQRRSST65433221AABBCCDDXXWWVVUU~~}} aabbccdd8877665599::;;<<``__^^]] - - tssrrqqp - - yzz{{||} QRRSSTTUHGGFFEED)**++,,-poonnmmlqrrssttu(''&&%%$IJJKKLLMA@@??>>=QRRSSTTU||{{zzyy - - uuvvwwxx - - xwwvvuut |}}~~TUUVVWWXEDDCCBBA,--..//0mllkkjjituuvvwwx%$$##""!LMMNNOOP>==<<;;:TUUVVWWX100//..-EEFFGGHHTTSSRRQQ ||{{zzyy - - eeffgghh44332211==>>??@@\\[[ZZYYpoonnmml }~~UVVWWXXYDCCBBAA@-..//001lkkjjiih uvvwwxxy$##""!! MNNOOPPQ=<<;;::9UVVWWXXYxxwwvvuu - - yyzz{{|| - - tssrrqqpXYYZZ[[\A@@??>>=01122334ihhggffe - - xyyzz{{|! PQQRRSST:9933221XYYZZ[[\-,,++**)IIJJKKLLPPOONNMM!!""##$$xxwwvvuuiijjkkll00//..--AABBCCDDXXWWVVUU{{zzyyxxlkkjjiihYZZ[[\\]@??>>==<12233445hggffeed - - yzz{{||} QRRSSTTU93322110YZZ[[\\]ttssrrqq }}~~poonnmml\]]^^__`=<<;;::945566778eddccbba |}}~~TUUVVWWX100//..-\]]^^__`)((''&&%MMNNOOPPLLKKJJII%%&&''((ttssrrqqmmnnoopp,,++**))EEFFGGHHTTSSRRQQ wwvvuuttgfedccbb]^^__``a<;;::99856677889dccbbaa` }~~UVVWWXXY0//..--,]^^__``appoonnmmlkkjjiih~~} `aabbccd98877665899::;;>??@]\\[[ZZY\]]^^__`)((''&&%ijjkkllm! UUVVWWXXDDCCBBAA--..//00llkkjjiiuuvvwwxx$$##""!!MMNNOOPPLLKKJJII%%&&''((oonnmmll##$$%%&&]]\\[[ZZ !|{{zzyyx - - effgghhi43322110=>>??@@A\[[ZZYYX]^^__``a(''&&%%$jkkllmmnhhggffee{{zzyyxx!!""aa``__^^ !!""##$yxxwwvvu hiijjkkl100//..-@AABBCCDYXXWWVVU~~} `aabbccd%$$##""!mnnooppqYYZZ[[\\@@??>>==11223344hhggffee - - yyzz{{|| QQRRSSTTHHGGFFEE))**++,,kkjjiicc''(())**YYXXWWVV!""##$$%xwwvvuutijjkkllm0//..--,ABBCCDDEXWWVVUUT~~}}| abbccdde$##""!!nooppqqrddccbbaa wwvvuutt##$$%%&&]]\\[[ZZ$%%&&''(uttssrrqlmmnnoop-,,++**)DEEFFGGHUTTSSRRQ }||{{zzy - - deeffggh!qrrssttu]]^^__``<<;;::9955667788ddccbbaa }}~~UUVVWWXXDDCCBBAA--..//00bbaa``__++,,--..UUTTSSRR%&&''(()tssrrqqpmnnooppq,++**))(EFFGGHHITSSRRQQP !|{{zzyyx - - effgghhirssttuuv``__^^]]!!""##$$ssrrqqpp''(())**YYXXWWVV())**++,qppoonnmpqqrrsst)((''&&%HIIJJKKLQPPOONNM !!""##$yxxwwvvu hiijjkkluvvwwxxyaabbccdd8877665599::;;<<``__^^]]YYZZ[[\\@@??>>==11223344^^]]\\[[//001122QQPONMLK)**++,,-poonnmmlqrrssttu(''&&%%$IJJKKLLMPOONNMML!""##$$%xwwvvuutijjkkllmvwwxxyyz\\[[ZZYY%%&&''((oonnmmll++,,--..UUTTSSRR,--..//0mllkkjjituuvvwwx%$$##""!LMMNNOOPMLLKKJJI$%%&&''(uttssrrqlmmnnoopyzz{{ eeffgghh44332211==>>??@@\\[[ZZYY]]^^__``<<;;::9955667788ZZYYXXWW3399::;;KJJIIHHG-..//001lkkjjiih uvvwwxxy$##""!! MNNOOPPQLKKJJIIH%&&''(()tssrrqqpmnnooppqz{{XXWWVVUU))**++,,kkjjiicc//001122QQPONMLK01122334ihhggffe - - xyyzz{{|! PQQRRSSTIHHGGFFE())**++,qppoonnmpqqrrsst - - iijjkkll00//..--AABBCCDDXXWWVVUU~~}} aabbccdd8877665599::;;<>??GFFEEDDC12233445hggffeed - - yzz{{||} QRRSSTTUHGGFFEED)**++,,-poonnmmlqrrssttu TTSSRRQQ--..//00bbaa``__3399::;;KJJIIHHG45566778eddccbba |}}~~TUUVVWWXEDDCCBBA,--..//0mllkkjjituuvvwwx - - ~mmnnoopp,,++**))EEFFGGHHTTSSRRQQ ||{{zzyy - - eeffgghh44332211==>>??@@RRQQKKJJ@@AABBCCCBBAA@@?56677889dccbbaa` }~~UVVWWXXYDCCBBAA@-..//001lkkjjiih uvvwwxxy - - ~}|PPOONNMM11223344^^]]\\[[<<==>>??GFFEEDDC899::;;>=01122334ihhggffe - - xyyzz{{|}|{{zzyyqqrrsstt((''&&%%IIJJKKLLPPOONNMM!!""##$$xxwwvvuuiijjkkll00//..--AABBCCDDIIHHGGFFDDEEFFGG?>>==<<;9::;;<<=`__^^]]\YZZ[[\\]@??>>==<12233445hggffeed - - yzz{{||}{{zzyyxxLLKKJJII55667788ZZYYXXWW@@AABBCCCBBAA@@?<==>>??@]\\[[ZZY\]]^^__`=<<;;::945566778eddccbba |}}~~ xxwwvvuuuuvvwwxx$$##""!!MMNNOOPPLLKKJJII%%&&''((ttssrrqqmmnnoopp,,++**))EEFFGGHHEEDDCCBBHHIIJJKK;::99876=>>??@@A\[[ZZYYX]^^__``a<;;::99856677889dccbbaa` }~~ -wwvvuuttHHGGFFEE99::;;<>==<<;@AABBCCDYXXWWVVU~~} `aabbccd98877665899::;;>QQRRSSTT54332211ABBCCDDEXWWVVUUT~~}}| abbccdde877665549::;;<<=`__^^]]\ - ssrrqqppDDCCBBAA==>>??@@RRQQKKJJHHIIJJKK;::99876DEEFFGGHUTTSSRRQ }||{{zzy - - deeffggh54433221<==>>??@]\\[[ZZY ppoonnmm }}~~UUVVWWXXDDCCBBAA--..//00llkkjjiiuuvvwwxx$$##""!!MMNNOOPP==<<;;::UUVVWWXX00//..--EFFGGHHITSSRRQQP !|{{zzyyx - - effgghhi43322110=>>??@@A\[[ZZYYX{oonnmmll@@??>>==AABBCCDDIIHHGGFFQQRRSSTT54332211HIIJJKKLQPPOONNM !!""##$yxxwwvvu hiijjkkl100//..-@AABBCCDYXXWWVVU{{zzyyxllkkjjiiYYZZ[[\\@@??>>==11223344hhggffee - - yyzz{{|| QQRRSSTT99332211YYZZ[[\\,,++**))IJJKKLLMPOONNMML!""##$$%xwwvvuutijjkkllm0//..--,ABBCCDDEXWWVVUUT{zzyyxxwkkjjiihg<<;;::99EEFFGGHHEEDDCCBBUUVVWWXX00//..--LMMNNOOPMLLKKJJI$%%&&''(uttssrrqlmmnnoop-,,++**)DEEFFGGHUTTSSRRQ xwwvvuuthgfedccb]]^^__``<<;;::9955667788ddccbbaa }}~~UUVVWWXX00//..--]]^^__``((''&&%%MNNOOPPQLKKJJIIH%&&''(()tssrrqqpmnnooppq,++**))(EFFGGHHITSSRRQQP !wvvuuttsfedccbba88776655IIJJKKLLAA@@??>>YYZZ[[\\,,++**))PQQRRSSTIHHGGFFE())**++,qppoonnmpqqrrsst)((''&&%HIIJJKKLQPPOONNM !!""##$tssrrqqp!!"baa``__^~~}} aabbccdd8877665599::;;<<``__^^]]YYZZ[[\\,,++**))aabbccii$$##""!!QRRSSTTUHGGFFEED)**++,,-poonnmmlqrrssttu(''&&%%$IJJKKLLMPOONNMML!""##$$%srrqqppo!!""#a``__^^]44332211MMNNOOPP==<<;;::]]^^__``((''&&%%TUUVVWWXEDDCCBBA,--..//0mllkkjjituuvvwwx%$$##""!LMMNNOOPMLLKKJJI$%%&&''(poonnmml"##$$%%&^]]\\[[Z ||{{zzyy - - eeffgghh44332211==>>??@@\\[[ZZYY]]^^__``((''&&%%jjkkllmm UVVWWXXYDCCBBAA@-..//001lkkjjiih uvvwwxxy$##""!! MNNOOPPQLKKJJIIH%&&''(()onnmmllk#$$%%&&']\\[[ZZY00//..--QQRRSSTT99332211aabbccii$$##""!!XYYZZ[[\A@@??>>=01122334ihhggffe - - xyyzz{{|! PQQRRSSTIHHGGFFE())**++,lkkjjiic&''(())*ZYYXXWWV!!""##$$xxwwvvuuiijjkkll00//..--AABBCCDDXXWWVVUU~~}} aabbccdd$$##""!!nnooppqqYZZ[[\\]@??>>==<12233445hggffeed - - yzz{{||} QRRSSTTUHGGFFEED)**++,,-kjjiiccb'(())**+YXXWWVVU::998765,,++**))UUVVWWXX00//..--jjkkllmm \]]^^__`=<<;;::945566778eddccbba |}}~~TUUVVWWXEDDCCBBA,--..//0cbbaa``_*++,,--.VUUTTSSR%%&&''((ttssrrqqmmnnoopp,,++**))EEFFGGHHTTSSRRQQ ||{{zzyy - - eeffgghhrrssttuu]^^__``a<;;::99856677889dccbbaa` }~~UVVWWXXYDCCBBAA@-..//001baa``__^+,,--../UTTSSRRQ43322110((''&&%%YYZZ[[\\,,++**))nnooppqq`aabbccd98877665899::;;>=01122334_^^]]\\[.//00112RQQPONML))**++,,ppoonnmmqqrrsstt((''&&%%IIJJKKLLPPOONNMM!!""##$$xxwwvvuuiijjkkllvvwwxxyyabbccdde877665549::;;<<=`__^^]]\YZZ[[\\]@??>>==<12233445^]]\\[[Z/0011223QPONMLKK0//..--,$$##""!!]]^^__``((''&&%%rrssttuudeeffggh54433221<==>>??@]\\[[ZZY\]]^^__`=<<;;::945566778[ZZYYXXW23399::;KKJJIIHH--..//00llkkjjiiuuvvwwxx$$##""!!MMNNOOPPLLKKJJII%%&&''((ttssrrqqmmnnooppzz{{ -effgghhi43322110=>>??@@A\[[ZZYYX]^^__``a<;;::99856677889ZYYXXWWV399::;;>?GGFFEEDD11223344hhggffee - - yyzz{{|| QQRRSSTTHHGGFFEE))**++,,ppoonnmmqqrrsstt - ijjkkllm0//..--,ABBCCDDEXWWVVUUT~~}}| abbccdde877665549::;;<<=VUUTTSSR<==>>??@FFEEDDCC(''&&%%$eeffgghhzz{{ -lmmnnoop-,,++**)DEEFFGGHUTTSSRRQ }||{{zzy - - deeffggh54433221<==>>??@SRRQQKKJ?@@AABBCCCBBAA@@55667788ddccbbaa }}~~UUVVWWXXDDCCBBAA--..//00llkkjjiiuuvvwwxx - - ~}mnnooppq,++**))(EFFGGHHITSSRRQQP !|{{zzyyx - - effgghhi43322110=>>??@@ARQQKKJJI@AABBCCDBBAA@@??$##""!! iijjkkll - pqqrrsst)((''&&%HIIJJKKLQPPOONNM !!""##$yxxwwvvu hiijjkkl100//..-@AABBCCDJIIHHGGFCDDEEFFG??>>==<<99::;;<<``__^^]]YYZZ[[\\@@??>>==11223344hhggffee - - yyzz{{|||{{zzyyxqrrssttu(''&&%%$IJJKKLLMPOONNMML!""##$$%xwwvvuutijjkkllm0//..--,ABBCCDDEIHHGGFFEDEEFFGGH>>==<<;;ZZ[[\\]]??>>==<<22334455ggffeedd - - zz{{||}}RRSSTTUUGGFFEEDD**++,,--jjiiccbb(())**++XXWWVVUU"##$$%%&wvvuuttsjkkllmmn/..--,,+BCCDDEEFWVVUUTTS~~}}||{ bccddeefyxxwwvvu - - ^^__``aa;;::998866778899ccbbaa``~~VVWWXXYYCCBBAA@@..//0011aa``__^^,,--..//TTSSRRQQ&''(())*srrqqpponooppqqr+**))(('FGGHHIIJSRRQQPPO !!"{zzyyxxw - - fgghhiijuttssrrq bbccddee77665544::;;<<==__^^]]\\ZZ[[\\]]??>>==<<22334455]]\\[[ZZ00112233PONMLKKJ*++,,--.onnmmllkrssttuuv'&&%%$$#JKKLLMMNONNMMLLK"##$$%%&wvvuuttsjkkllmmnqppoonnm - -ffgghhii33221100>>??@@AA[[ZZYYXX^^__``aa;;::998866778899YYXXWWVV99::;;<>??@@FEEDDCCB23344556gffeeddc - z{{||}}~RSSTTUUVGFFEEDDC*++,,--.onnmmllkrssttuuv - - -ihhggffennooppqq++**))((FFGGHHIISSRRQQPP !!{{zzyyxx - - ffgghhii33221100>>??@@AAQQKKJJIIAABBCCDDBAA@@??>6778899:cbbaa``_~VWWXXYYZCBBAA@@?.//00112kjjiihhg -vwwxxyyz - eddccbba rrssttuu''&&%%$$JJKKLLMMOONNMMLL""##$$%%wwvvuuttjjkkllmm//..--,,BBCCDDEEHHGGFFEEEEFFGGHH>==<<;;::;;<<==>_^^]]\\[Z[[\\]]^?>>==<<;23344556gffeeddc - z{{||}}~a``__^^] !!""##$ vvwwxxyy##""!! NNOOPPQQKKJJIIHH&&''(())ssrrqqppnnooppqq++**))((FFGGHHIIDDCCBBAAIIJJKKQQ:9987654>??@@AAB[ZZYYXXW^__``aab;::998876778899:cbbaa``_~]\\[[ZZY$%%&&''( - - zz{{||}}RRSSTTUUGGFFEEDD**++,,--oonnmmllrrssttuu''&&%%$$JJKKLLMM@@??>>==RRSSTTUU33221100BCCDDEEFWVVUUTTS~~}}||{ bccddeef76655443:;;<<==>_^^]]\\[||{YXXWWVVU())**++,~~VVWWXXYYCCBBAA@@..//0011kkjjiihh vvwwxxyy##""!! NNOOPPQQ<<;;::99VVWWXXYY//..--,,FGGHHIIJSRRQQPPO !!"{zzyyxxw - - fgghhiij3221100/>??@@AAB[ZZYYXXW{zzyyxxw!!""#UTTSSRRQ,--..//0ZZ[[\\]]??>>==<<22334455ggffeedd - - zz{{||}}RRSSTTUU33221100ZZ[[\\]]++**))((JKKLLMMNONNMMLLK"##$$%%&wvvuuttsjkkllmmn/..--,,+BCCDDEEFWVVUUTTSwvvuutts#$$%%&&'QPPOONNM01122334^^__``aa;;::998866778899ccbbaa``~~VVWWXXYY//..--,,^^__``aa''&&%%$$NOOPPQQRKJJIIHHG&''(())*srrqqpponooppqqr+**))(('FGGHHIIJSRRQQPPO !!"srrqqppo'(())**+MLLKKJJI45566778~~}}|| bbccddee77665544::;;<<==__^^]]\\ZZ[[\\]]++**))((bbcciijj##""!! RSSTTUUVGFFEEDDC*++,,--.onnmmllkrssttuuv'&&%%$$#JKKLLMMNONNMMLLK"##$$%%&onnmmllk+,,--../IHHGGFFE899::;;< !!{{zzyyxx - - ffgghhii33221100>>??@@AA[[ZZYYXX^^__``aa''&&%%$$kkllmmnnVWWXXYYZCBBAA@@?.//00112kjjiihhg -vwwxxyyz#""!! NOOPPQQRKJJIIHHG&''(())*kjjiiccb/0011223EDDCCBBA<==>>??@""##$$%%wwvvuuttjjkkllmm//..--,,BBCCDDEEWWVVUUTT~~}}|| bbccddee##""!!ooppqqrrZ[[\\]]^?>>==<<;23344556gffeeddc - z{{||}}~RSSTTUUVGFFEEDDC*++,,--.baa``__^399::;;>=@AABBCCD&&''(())ssrrqqppnnooppqq++**))((FFGGHHIISSRRQQPP !!{{zzyyxx - - ffgghhiissttuuvv^__``aab;::998876778899:cbbaa``_~VWWXXYYZCBBAA@@?.//00112^]]\\[[Z<==>>??@=<<;;::9DEEFFGGH**++,,--oonnmmllrrssttuu''&&%%$$JJKKLLMMOONNMMLL""##$$%%wwvvuuttjjkkllmmwwxxyyzz bccddeef76655443:;;<<==>_^^]]\\[Z[[\\]]^?>>==<<;23344556ZYYXXWWV@AABBCCD98877665HIIJJKKL..//0011kkjjiihh vvwwxxyy##""!! NNOOPPQQKKJJIIHH&&''(())ssrrqqppnnooppqq{{ - - fgghhiij3221100/>??@@AAB[ZZYYXXW^__``aab;::998876778899:VUUTTSSRDEEFFGGH54433221LMMNNOOP22334455ggffeedd - - zz{{||}}RRSSTTUUGGFFEEDD**++,,--oonnmmllrrssttuu jkkllmmn/..--,,+BCCDDEEFWVVUUTTS~~}}||{ bccddeef76655443:;;<<==>RQQKKJJIHIIJJKKQ100//..-PQQRRSST66778899ccbbaa``~~VVWWXXYYCCBBAA@@..//0011kkjjiihh vvwwxxyy - - ~}|{nooppqqr+**))(('FGGHHIIJSRRQQPPO !!"{zzyyxxw - - fgghhiij3221100/>??@@AABIHHGGFFEQRRSSTTU-,,++**)TUUVVWWX::;;<<==__^^]]\\ZZ[[\\]]??>>==<<22334455ggffeedd - - zz{{||}}{zzyyxxwrssttuuv'&&%%$$#JKKLLMMNONNMMLLK"##$$%%&wvvuuttsjkkllmmn/..--,,+BCCDDEEFEDDCCBBAUVVWWXXY)((''&&%XYYZZ[[\>>??@@AA[[ZZYYXX^^__``aa;;::998866778899ccbbaa``~~ - -wvvuutts -vwwxxyyz#""!! NOOPPQQRKJJIIHHG&''(())*srrqqpponooppqqr+**))(('FGGHHIIJA@@??>>=YZZ[[\\]%$$##""!\]]^^__`BBCCDDEEWWVVUUTT~~}}|| bbccddee77665544::;;<<==__^^]]\\ srrqqppo - z{{||}}~RSSTTUUVGFFEEDDC*++,,--.onnmmllkrssttuuv'&&%%$$#JKKLLMMN=<<;;::9]^^__``a! `aabbccdFFGGHHIISSRRQQPP !!{{zzyyxx - - ffgghhii33221100>>??@@AA[[ZZYYXX{{onnmmllk~VWWXXYYZCBBAA@@?.//00112kjjiihhg -vwwxxyyz#""!! NOOPPQQR93322110abbcciijdeeffgghJJKKLLMMOONNMMLL""##$$%%wwvvuuttjjkkllmm//..--,,BBCCDDEEWWVVUUTTzzyyxxwwkjjiihgfZ[[\\]]^?>>==<<;23344556gffeeddc - z{{||}}~RSSTTUUV0//..--,jkkllmmnhiijjkklNNOOPPQQKKJJIIHH&&''(())ssrrqqppnnooppqq++**))((FFGGHHIISSRRQQPP !!vvuuttssedccbbaa^__``aab;::998876778899:cbbaa``_~VWWXXYYZ,++**))(nooppqqrlmmnnoopRRSSTTUUGGFFEEDD**++,,--oonnmmllrrssttuu''&&%%$$JJKKLLMMOONNMMLL""##$$%%rrqqppoo!!""##``__^^]]~~}}||{ bccddeef76655443:;;<<==>_^^]]\\[Z[[\\]]^(''&&%%$rssttuuv pqqrrsstVVWWXXYYCCBBAA@@..//0011kkjjiihh vvwwxxyy##""!! NNOOPPQQKKJJIIHH&&''(())nnmmllkk$$%%&&''\\[[ZZYY !!"{zzyyxxw - - fgghhiij3221100/>??@@AAB[ZZYYXXW^__``aab$##""!!vwwxxyyy - - tuuvvwwxxyybdQZ|drtAvpfHAbےv`f~QJHAZp˂bdQZ|fH~˙ے`JXbtlf~HfpvrXQJ`ہdrtf`vXpZHAQbtlXv`fXQJ`ےdrtA`vXnr˂pZHAb|ZdQbnXv`bHAZJltvpfH~ftl|nXv`˒HAZp˂rXbdQZ|~f``JXQlJtf~HvnQJ`ےdrtAvXnZHAbbtl|drtAJltH~f`JXQrfpvZp˂rXQJ`ہdrtf`vXQr˂pJtArdfpvnrXQJ`bHAAJltnvpbے`|ZdQ~fpvbHAZJltvpfZHAbے`JXQtlJf~Hp˂rbdQZ|H~f`vXnZdQbtf~H˂rXQJ`ےdrtAvXnr˂pArd|fpvrXQJ`ۙbHAZpJltvpfHے`JXZdQbtJltbdQZ|`vXn˂p|nXv`rXQJ`ےbHAAJltnvpZHAb|ZdQnXv`ےHAZp˂bdQZ|fH~JXQrbtlnXv`p˂rbdQZ|H~fے`JXQr˂ptArdfpvXQJ`ےdrtA`vXnr˂plJtAfpvQJ`ےbHAZpJltvpfHZHAbہZdQbtnXv`˒HAZp˂rXbdQZ|~f`Qr˂plJtbdQZ|`vXnvpfZdQbtf~HbHAZp˂bdQZ|fH~˙ے`JXbtlf~HZp˂rXQJ`ہdrtf`vXp`JXJtArdf~HXQJ`ےdrtA`vXnr˂pZHAے|ZdQbnXv`bHAZJltvpf`JXQrrd|nXv`fbHAZp˂rbdQZ|~f``JXQlJtf~H˂rXQJ`ےdrtAvXn`JXQArd|drtAvpfH~flJtAfpvZp˂rbdQZ|drtf`vXQr˂pJtArdfpvrXQJ`ےbHAAJltnvpQr˂p|ZdQfpvbHAZJltvpfZHAb`JXQrtlJf~Hp˂rbdQZ|H~f˂pZZdQbt~fpv˂rXbdQZ|drtAvXnr˂pArd|fpvQJ`ےbHAZpJltvpfHr˂pZdQbtJltH~f`vXnrd|nXv`frXQJ`ہdrtAJltnvpZHAb|ZdQnXv`bHAZp˂bdQZ|fH~ˑZHAbbtl|nXv`p˂rbdQZ|H~fے`JXQbtltArdfpvXQJ`ےdrtA`vXnHAbےl|ZnXvQJ`ےdrtAJltvpfHZHAbہZdQbtnXv`˙bHAZp˂rbdQZ|~f`ZHAbۉl|bdQZ|`vXnr˂pZdQbt~fpvbHAAJltbdQZ|fH~˙ے`JXbtlf~HZp˂rbdQZ|drtf`vXے`JXZdQbtf~fpXQJ`ےdrtA`vXnr˂pJtAd|ZdQbnXv`bHAZJltvpf`JXQrdQbt`f~bHAZpJltbdQZ|~f``JXQlJtf~H˂rXbdQZ|drtAvXn`JXQZdQbtdrtAvpf`JXQrl|ZnXvZp˂bdQZ|dtAf`vXQr˂pJtArdfpvrXQJ`ہdrtAJltnvpQr˂plJtvnXbHAZJltvpfZHAb|ZdQbtlJf~Hp˂rbdQZ|H~f˂p`lJtArHfpv˂rXbdQZ|dtAJlvXnr˂pArd|fpvQJ`ےdrtAJltvpfHr˂p`lJtAJltH~f˂pZdQbt`f~rXQJ`ہdrtJltnvpZHAb|ZdQnXv`bHAAJltbdQZ|fH~ˑ`JXQArd|v`fp˂rbdQZ|H~fے`JXQtlJtArdfpvXQJ`ےdrtA`vXnJXQrd|ZnXvQJ`ےdrtAtbvpfHZHAbہZdQbtnXv`˙bHAZpJltbdQZ|~f`JXQrrd|bdQZ|`vXnHAbےlJtArHfpvbHAAJltbnvpfH~˙ے`JXbtlf~HZp˂bdQZ|dtAf`vXr˂pZdQbt~HfpXQJ`ےdrtA`vXnr˂ptArd|ZdQbnXv`bHAZJltvpf˂pZHAdQbt`f~fpbHAZpJltnvp~f``JXQlJtf~H˂rXbdQZ|dtAJlvXn˂pZHZdQbtdrtAvpf`JXQrd|ZnXvZp˂bdQZ|fHf`vXQr˂pJtArdfpvrXQJ`ہdrtJltnvpZHAbۉl|vnXbHAZJltvpfZHAb|ZdQbnXv`f~Hp˂rbdQZ|H~fbے`l|ZdQvnX˂rXbdQZ|fHf`vXnr˂pArd|fpvQJ`ےdrtAtbvpfHAbے`l|ZdJltH~f˂p`dQbt`f~fprXQJ`ہdrtf`vXnvpZHAb|ZdQnXv`bHAAJltbnvpfH~˒`JXQZdQbnXv`ffp˂rbdQZ|H~fے`JXQtlJf~HfpvXQJ`ےdrtA`vXnJXQrbtlv`fQJ`ےdrtAvXnvpfHZHAbہZdQbtnXv`˙bHAZpJltnvp~f`JXQrQbnXbdQZ|`vXnJXQrl|ZdQvnXbHAAJltnvpfH~˙ے`JXbtlf~HZp˂bdQZ|fHf`vXr˂p`v`f~pvnXQJ`ےdrtA`vXnr˂ptArdfpvnXv`bHAZJltvpf˂p`JJtArd~HfpbHAZpJltvpfH~f``JXQlJtf~H˂rXbdQZ|fHf`vXn˂p`v`f~fdrtAvpf˂pZHAbtlv`fZp˂bdQZ|fH~f`vXQr˂pJtArdfpvrXQJ`ہdrtf`vXnvpJXQrfpvrXQJ`bHAZJltvpfZHAb|ZdQbnXv`fHfp˂rbdQZ|H~fXQr˂|ZdQvnX˂rXbdQZ|~f`vXnr˂pArd|fpvQJ`ےdrtAvXnvpfHJXQrbtpvnJltH~fbے`JtArd~HfprXQJ`ہdrtf`vXnr˂pZHAb|ZdQnXv`bHAAJltnvpfH~btl|nXv`ےHAZp˂rbdQZ|H~fے`JXQtlJf~HpvnXQJ`ےdrtA`vXnpZHAbbtlv`f~QJ`ےdrtAvXnr˂pZHAbہZdQbtnXv`˙bHAZpJltvpfH~f`l|Xv`fbdQZ|`vXnJXQr|ZdQvnXbHAAJltnvpZHAbے`JXbtlf~HZp˂bdQZ|fH~f`vXZdQbtf~Hp˂rXQJ`ےdrtA`vXnr˂ptArdfpvrXQJ`bHAZJltvpfے`J|ZdQbfpvbHAZpJltvpfHZHAbے`JXQlJtf~H˂rXbdQZ|~f`vXnZdQbt琕~HfdrtAvpf˂p`Jbtlv`f~Zp˂bdQZ|fH~˙ے`JXQr˂pJtArdfpvrXQJ`ہdrtf`vXnr˂plJtfpvXQJ`ےbHAZJltvpfZHAb|ZdQbnXv`ےHAZp˂rbdQZ|H~fXQr˂tlJnXv`˂rXbdQZ|~f``JXQr˂pArd|fpvQJ`ےdrtAvXnr˂p`lJtApvnJltH~fXQr˂|ZdQbfpvrXQJ`ہdrtf`vXQr˂pZHAۂ|ZdQnXv`bHAAJltnvp`JXQArd|nXv`bHAZp˂rbdQZ|H~fے`JXQtlJf~Hp˂rXQJ`ےdrtA`vXnp`JXQtArdf~HQJ`ےdrtAvXnr˂pZHAے`ZdQbtnXv`˙bHAZpJltvpfHJXQrrd|Xv`fbdQZ|`vXnpZHAbtlJnXv`bHAAJltnvpZHAb`JXQbtlf~HZp˂bdQZ|fH~r˂pZdQbtf~fpp˂rbdQZ|drtA`vXnr˂ptArdfpvXQJ`ےbHAZJltvpfr˂p|ZdQbfpvbHAZpJltvpfHZHAbہJXQrlJtf~H˂rXbdQZ|~f`˂pZHZdQbt~fpvdrtAvpfے`JtArdf~HZp˂bdQZ|fH~˙ے`JXrbtlJtArdfpvrXQJ`ہdrtf`vXZHAbۉl|vnXXQJ`ےdrtAJltvpfZHAb|ZdQbnXv`bHAZp˂rbdQZ|H~fZHAbtl|nXv`˂rXbdQZ|~f``JXQbtlArd|fpvQJ`ےdrtAvXnAbے`l|ZdnXv`JltH~fXQr˂|ZdQbfpvrXQJ`ہdrtf`vXQr˂pJtAd|ZdQnXv`bHAAJltnvp`JXQZdQbtv`fbHAZJltbdQZ|H~fے`JXQtlJf~Hp˂rbdQZ|drtA`vXnے`JXQZdQbtf~fpQJ`ےdrtAvXnr˂pJtAd|ZdQbtnXv`˙bHAZpJltvpfHJXQrQbtlf~HbdQZ|`vXnp`JXQtl|nXv`bHAAJltnvpZHAb|ZdQbtlf~HZp˂bdQZ|fH~r˂p`lJtA~Hfpp˂rbdQZ|dtAJ`vXnr˂ptArdfpvXQJ`ےdrtAJltvpfr˂plJtAvnXbHAZpJltvpfHZHAbہZdQbtlJtf~H˂rXbdQZ|~f`˂p`JtArdfpvv`f~drtAvpfr˂pZdQbtf~fpZp˂bdQZ|fH~˙ے`JXbtlJtArdfpvrXQJ`ہdrtf`vXJXQrrd|vnXXQJ`ےdrtAltbvpfZHAb|ZdQbnXv`bHAZJltbdQZ|H~f`JXQrrd|v`f˂rXbdQZ|~f``JXQlJtArd|fpvQJ`ےdrtAvXnJXQr˙|ZdnXv`fpvJltH~fZHAblJtAvnXrXQJ`ہdrtf`vXQr˂pJtArd|ZdQnXv`bHAAJltnvp˂pZHZdQbtv`f~fbHAZJltnvpH~fے`JXQtlJf~Hp˂rbdQZ|dtAJ`vXn˂pZZdQbt~HfpQJ`ےdrtAvXnr˂pArd|ZdQbnXv`˙bHAZpJltvpfHpZHAQbtlf~fpnXv`bdQZ|`vXnے`JXQrd|v`f󒐙bHAAJltnvpZHAb|ZdQbnXv`f~HZp˂bdQZ|fH~Abے`l|Zdpvnp˂rbdQZ|fHf`vXnr˂ptArdfpvXQJ`ےdrtAltbvpfHAbےl|ZvnXbHAZpJltvpfHZHAbہZdQbtnXv`f~H˂rXbdQZ|~f`bے`|ZdQvnXf~HdrtAvpfr˂pZdQbt~HfpZp˂bdQZ|fH~˙ے`JXbtlf~HfpvrXQJ`ہdrtf`vXJXQrQbtlXv`fXQJ`ےdrtA`vXnvpfZHAb|ZdQbnXv`bHAZJltnvpH~f`JXQrdQbnXv`ffp˂rXbdQZ|~f``JXQlJtf~HfpvQJ`ےdrtAvXnJXQrbtlv`ffpvJltH~f`JXQrl|ZvnXrXQJ`ہdrtf`vXQr˂pJtArdfpvnXv`bHAAJltnvp˂p`JtArd~HfbHAZJltvpfH~fے`JXQtlJf~Hp˂rbdQZ|fHf`vXn˂p`v`f~vnQJ`ےdrtAvXnr˂pArd|fpvnXv`˙bHAZpJltvpfHp`JXJtArd~HfpnXv`fbdQZ|`vXn˂pZdQbnXv`frbHAAJltnvpZHAb|ZdQnXv`fHZp˂bdQZ|fH~JXQr˙|Zdpvnp˂rbdQZ|H~f`vXnr˂ptArdfpvXQJ`ےdrtA`vXnvpfJXQrbfpvrXQJ`ۙbHAZpJltvpfHZHAbہZdQbtnXv`fHfp˂rXbdQZ|~f`Qr˂p|ZdQvnX~fpvnXvbHAZpltbvpfHHAbےZdQbtlJtA~Hf˂rXQdQZ|~f`˂p`JJtArdfpvrXQQZ|dtAJlvXnۉ˂pZHrd|vnXJ`ےrtAJltbdvpfHJXQrXnvˍp|dr`f~˂rXQdQZ|~f``JXQrlJtArd|pvnJ`ےdrtAJvXnXQr˂|ZdQnXv`J`ےrtAJltbnvpfHAbے`ZdQbtv`fbHAZpˑtbdQZ|d~f`˂pZHpfH~QtJlHfpvJ`ےdrtAJvXn˂pZrd|ZdQbnXv`fbHAZpltbvpfHpZHAbbtlf~fpbHAZpˑtbdvpfH~f`JXQrlJtA~HfprXQQZ|dtAJlvXnAbے`f۝`vtbAdZnXvbHAZpltbvpfHHAbےZdQbtXv`f~Hf˂rXQdQZ|~f`ے`J|ZdQbvnXrXQQZ|df`vXnۉ˂pZHrd|vnXJ`ےrtAJltbnvpfHJXQrXnvˍ|dr`ffp˂rXQdQZ|~f``JXQrlJtA~HfpvnJ`ےdrtAJvXnXQr˂tlJv`fJ`ےrtAJlvXnvpfHAbے`ZdQbtv`fbHAZpˑtbdvpfH~f`˂p`ZpfH~QtJlvnrJ`ےdrtAJvXn˂pZrd|pvnXv`fbHAZpltbvpfHp`JXQtArd~HfpbHAZpˑtbdvpfH~f`JXQrlJtA~HfprXQQZ|df`vXnQXb㉀f۝`vtbAdZXQJ`ےbHAZpltbvpfHHAbےZdQbtXv`fHfp˂rXQdQZ|~f`r˂p|ZdQbvnXrXQQZ|d~f`vXnr˂pZHrd|vnXJ`ےrtAJlvXnvpfHۑpJAHrXnvˍ|drHAZp˂rXQdQZ|~f``JXQrlJtA~HfvnrJ`ےdrtAJvXnZHAbtl|v`f~fJ`ےrtAJlvXnۉ˂pZHAbے`ZdQbtv`fbHAZpˑtbdvpfH~f`󙐂ˁ`ZpfH~QtJl˂rXQJ`ےdrtAJvXn˂pZrd|pvnXQJ`ےbHAZpltbvpfHے`JXQZdQbtpvnbHAZpˑtbdvpfHAbے`JXQrlJtA~HfprXQQZ|d~f`vXnے`QXb㉀f۝`vtbAdZJ`ےbHAZpltbvpfHHAbےZdQbtXv`fHAZp˂rXQdQZ|~f`r˂plJtAXv`frXQQZ|d~f`JXQr˂pZHrd|vnXJ`ےrtAJlvXnہJXQrۑp`ZQXnvˍ|drbHAZp˂rbdQZ|~f``JXQrlJtA~Hf˂rXQJ`ےdrtAJvXn`JXQrrd|~HfJ`ےrtAJlvXnۉ˂pZHAے`ZdQbtv`fbHAZpˑtbdvpfH˂pZHXb㉀ۑpfH~QtJl˂rXQdQZ|drtAJvXn˂pZrd|pvnJ`ےbHAZpltbvpfH˂pZZdQbtpvnbHAZpˑtbdvpfHAbے`JXQrbtlJtA~HfprXQQZ|d~f`Abے`pJAHrf۝`vtbAdZJ`ےdrtAJltbvpfHHAbےZdQbtXv`fbHAZp˂rbdQZ|~f`HAbےl|ZXv`frXQQZ|d~f`JXQrlJtrd|vnXJ`ےrtAJlvXnہJXQrˁ`ZQXnvˍ|drbHAZpltbdQZ|~f``JXQrlJtA~Hf˂rXQdQZ|drtAJvXn`JXQrdQbt~fpvJ`ےrtAJlvXnۉ˂pZHAd|ZdQbtv`fbHAZpˑtbdvpfH˂p`Xb㉀ۑpfH~QtJl˂rXQdQZ|dtAJlvXn˂pZrd|pvnJ`ےdrtAJltbvpfH˂p`lJtArnXv`bHAZpˑtbdvpfHAbے`ZdQbtlJtA~HfprXQQZ|d~f`JXQrp`ZQXbf۝`vtbAdZJ`ےdrtAJtbnvpfHHAbےZdQbtXv`fbHAZpltbdQZ|~f`JXQrd|Zf~HrXQQZ|d~f`JXQrlJtArd|vnXJ`ےrtAJlvXnۂpZHA㉀ۑpJXnvˍ|drbHAZpltbvpf~f``JXQrlJtA~Hf˂rXQdQZ|dtAJlvXn˂pZHAdQbt璅fpvJ`ےrtAJlvXnۉ˂pZHrd|ZdQbnXv`fbHAZpˑtbdvpfHbے`AHr󙐂pfH~QtJl˂rXQdQZ|Hf`vXn˂pZrd|pvnJ`ےdrtAJtbnvpfHbے`l|ZdQnXv`bHAZpˑtbdvpfHAbے`ZdQbtv`f~HfprXQQZ|d~f`JXQrˁ`ZQXbf۝`vtbAdZJ`ےdrtAJvXnvpfHHAbےZdQbtXv`fbHAZpltbvpf~f`JXQrbnXvffpۂrXQQZ|d~f`JXQrlJtA~HfpvnXJ`ےrtAJlvXnۂp`JX㉀ۑpXnvˍ|drbHAZpltbvpfH~f``JXQrlJtA~Hf˂rXQdQZ|Hf`vXn˂p`J`f~fpvnrXJ`ےrtAJlvXnۉ˂pZHrd|vnXv`fbHAZpˑtbdvpfHQr˂p`ZQXbpfH~QtJl˂rXQdQZ|~f`vXnr˂pZrd|pvnJ`ےdrtAJvXnvpfHXQrbtvnXQJ`ےbHAZpˑtbdvpfHAbے`ZdQbtv`fHfpۂrXQQZ|d~f`ZHAbۑpJAf۝`vtbAdZJ`ےdrtAJvXn˂pZHAbےZdQbtXv`fbHAZpltbvpfH~f`l|Zv`fHAZp˂rXQQZ|d~f`JXQrlJtA~HfpvnrXJ`ےrtAJlvXnۙے`JXHr󙐂ˁXnvˍ|drbHAZpltbvpfHHAbے`JXQrlJtA~Hf˂rXQdQZ|~f`vXnrdQbt璕~HfprXQJ`ےrtAJlvXnۉ˂pZHrd|vnXQJ`ےbHAZpˑtbdvpfHQr˂p`ZQXbpfH~QtJl˂rXQdQZ|~f``JXQr˂pZrd|pvnJ`ےdrtAJvXn˂p`lJtArvnXJ`ےbHAZpˑtbdvpfHAbے`ZdQbtv`fHAZp˂rXQQZ|d~f``JXQۑp`Zf۝`vtbAdZJ`ےdrtAJvXn˂pZHAے`ZdQbtXv`fbHAZpltbvpfHJXQrd|Zv`f~bHAZp˂rbdQZ|d~f`JXQrlJtA~HfprXQJ`ےrtAJlvXnr˂pQXb㉀Xnvˍ|drbHAZpltbvpfHHAbےJXQrblJtA~Hf˂rXQdQZ|~f`˂pZHAdQbt璅fpvrXQQZ|drtAJlvXnۉ˂pZHrd|vnXJ`ےbHAZpˑtbdvpfHZHAbۑpJAHrpfH~QtJl˂rXQdQZ|~f``JXQrtlJrd|pvnJ`ےdrtAJvXnbے`l|ZdQnXv`J`ےrtAJltbdvpfHAbے`ZdQbtv`fbHAZp˂rbdQZ|d~f``JXQ󙐂ˁ`Zf۝`vtbAdZJ`ےdrtAJvXn˂pZtAd|ZdQbtXv`fbHAZpltbvpfHJXQrbtlf~HbHAZpˑtbdQZ|d~f`JXQrlJtA~HfprXQQZ|drtAJlvXnr˂p`QXb㉀Xnvˍ|drQt}~~IIIIIIIIIIIIIIIIIIIIIJJJJJJJ \ No newline at end of file diff --git a/barcode-generator/Resources/data/qrv29_1.dat b/barcode-generator/Resources/data/qrv29_1.dat deleted file mode 100644 index 294c49a..0000000 --- a/barcode-generator/Resources/data/qrv29_1.dat +++ /dev/null @@ -1,265 +0,0 @@ -~}~}~}~}|{|{{{{{{|{|{|{|yyyyyzyzyzyzyzyzyzyzyzyzwxwxwxwxwxwxwxwxuvuvuvuvuvuvuvuvutstststststststststststqrqrqrqrqrqrqrqropopopopopopopopopopopopmnmnmnmnmnmnmnmnklklklklklklklklijijijijijijijijijijijijghghghghefefefefefefefefdcdcdcdcdcdcdcccbabababababababababababa`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPONMNMNMNMNMNMNMNMKLKLKLKLKLKLKKKKIJIJIJIJIJIJIJIJIJIJIJIJGHGHGHGHGHGHGHGHEFEFEFEFEFEFEFEFCDCDCDCDCDCDCDCDCDCDCDCDABABABABABABABAB?@?@?@?@?@?@?@?@?@?@?@?>=>=>=>=>=>=>=>=>;<;<;<;<;<;<;<;<9:9:9:9:9:9:9:9:9:9:9:9:78787878565656565656565643434343434333332121212121212121212121210/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('('('('&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!    ~}~}~}~}{|{|{|{|{|{|{|{|yzyzyzyzyzyzyzyzyzyzyzyzwxwxwxwxwxwxwxwxuvuvuvuvuvuvuvuvststststststststststststqrqrqrqrqrqrqrqropopopopopopopoponmnmnmnmnmnmnmnmnmnmnmnklklklklklklklklijijijijijijijijijijijijghghghghefefefefefefefefdcdcdcdccccdcdcdbabababababababababababa`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPONMNMNMNMNMNMNMNMKLKLKLKLKKLKLKLKIJIJIJIJIJIJIJIJIJIJIJIJGHGHGHGHGHGHGHGHEFEFEFEFEFEFEFEFCDCDCDCDCDCDCDCDCDCDCDCDABABABABABABABAB?@?@?@?@?@?@?@?@=>=>=>=>=>=>=>=>=>=>=>=>;<;<;<;<;<;<;<;<9:9:9:9:9:9:9:9:9:9:9:9878787878565656565656565643434343343434342121212121212121212121210/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!     ~}~}~}~}~}{|{|{|{|{|{|{{{{yzyzyzyzyzyzyzyzyzyzyzyzwxwxwxwxwxwxwxwxuvuvuvuvuvuvuvuvststststststststststststqrqrqrqrqrqrqrqropopopopopopopopmnmnmnmnmnmnmnmnmnmnmnmnklklklklklklklklijijijijijijijijihghghghghghghghefefefefefefefefdcdcdcdccdcdcdcdbabababababababababababa`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMKLKLKLKLLKLKLKLKIJIJIJIJIJIJIJIJIJIJIJIJGHGHGHGHGHGHGHGHEFEFEFEFEFEFEFEFCDCDCDCDCDCDCDCDCDCDCDCDABABABABABABABAB?@?@?@?@?@?@?@?@=>=>=>=>=>=>=>=>=>=>=>=>;<;<;<;<;<;<;<;<9:9:9:9:9:9:9:9:7878787878787878565656565656565643434343343434342121212121212121212121210/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!        ~}~}~}~}~}~}~}~}{|{|{|{|{{|{|{|{yzyzyzyzyzyzyzyzyzyzyzyzwxwxwxwxwxwxwxwxuvuvuvuvuvuvuvuvststststststststststststqrqrqrqrqrqrqrqropopopopopopopopmnmnmnmnmnmnmnmnmnmnmnmnklklklklklklklklijijijijijijijijghghghghghghghghefefefefefefefefdcdcdcdccdcdcdcdbabababababababababababa`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMKLKLKLKKLKLKLKLKIJIJIJIJIJIJIJIJIJIJIJIHGHGHGHGHGHGHGHGHEFEFEFEFEFEFEFEFCDCDCDCDCDCDCDCDCDCDCDCDABABABABABABABAB?@?@?@?@?@?@?@?@=>=>=>=>=>=>=>=>=>=>=>=>;<;<;<;<;<;<;<;<9:9:9:9:9:9:9:9:78787878787878785656565656565656434343333434343421212121212121212121210/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!        ~}~}~}~}~}~}~}~}{|{|{|{||{|{|{|{yzyzyzyzyzyzyzyzyxwxwxwxwxwxwxwxwxwxwxwxuvuvuvuvuvuvuvuvststststststststststststqrqrqrqrqrqrqrqropopopopopopopopmnmnmnmnmnmnmnmnmnmnmnmnklklklklklklklklijijijijijijijijghghghghghghghghefefefefefefefefcccccdcdcdcdcdcdbabababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMKKKKLKLKLKLKLKLKIJIJIJIJIJIJIJIJGHGHGHGHGHGHGHGHGHGHGHGHEFEFEFEFEFEFEFEFCDCDCDCDCDCDCDCDCDCDCDCBABABABABABABABAB?@?@?@?@?@?@?@?@=>=>=>=>=>=>=>=>=>=>=>=>;<;<;<;<;<;<;<;<9:9:9:9:9:9:9:9:78787878787878785656565656565656333434343434343421212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!        ~}~}~}~}~}~}~}~}{|{|{|{{|{|{|{|{yzyzyzyzyzyzyzyzwxwxwxwxwxwxwxwxwxwxwxwxuvuvuvuvuvuvuvuvststststststststsrqrqrqrqrqrqrqrqrqrqrqropopopopopopopopmnmnmnmnmnmnmnmnmnmnmnmnklklklklklklklklijijijijijijijijghghghghghghghghefefefefefefefefcdcdcdcdcdcdcdcdbabababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKLKLKLKLKIJIJIJIJIJIJIJIJGHGHGHGHGHGHGHGHGHGHGHGHEFEFEFEFEFEFEFEFCDCDCDCDCDCDCDCDABABABABABABABABABABABAB?@?@?@?@?@?@?@?@=>=>=>=>=>=>=>=>=>=>=>=<;<;<;<;<;<;<;<;<9:9:9:9:9:9:9:9:78787878787878785656565656565656343434343434343321212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!        ~}~}~}~}~}~}~}~}{{{{|{|{|{|{|{|{yzyzyzyzyzyzyzyzwxwxwxwxwxwxwxwxwxwxwxwxuvuvuvuvuvuvuvuvststststststststqrqrqrqrqrqrqrqrqrqrqrqropopopopopopopopmnmnmnmnmnmnmnmnmlklklklklklklklklklklklijijijijijijijijghghghghghghghghefefefefefefefefcdcdcdcdccccccdcbabababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKKKKKKLKLIJIJIJIJIJIJIJIJGHGHGHGHGHGHGHGHGHGHGHGHEFEFEFEFEFEFEFEFCDCDCDCDCDCDCDCDABABABABABABABABABABABAB?@?@?@?@?@?@?@?@=>=>=>=>=>=>=>=>;<;<;<;<;<;<;<;<;<;<;<;<9:9:9:9:9:9:9:9:78787878787878785656565656565656343434343333434321212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!        ~}~}~}~}~}~}~}~}|{|{|{|{|{|{|{|{yzyzyzyzyzyzyzyzwxwxwxwxwxwxwxwxwxwxwxwxuvuvuvuvuvuvuvuvststststststststqrqrqrqrqrqrqrqrqrqrqrqropopopopopopopopmnmnmnmnmnmnmnmnklklklklklklklklklklklklijijijijijijijijghghghghghghghghefefefefefefefefcdcdcdcddcdcdcdcbabababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKKLKLKLKLIJIJIJIJIJIJIJIJGHGHGHGHGHGHGHGHGHGHGHGHEFEFEFEFEFEFEFEFCDCDCDCDCDCDCDCDABABABABABABABABABABABAB?@?@?@?@?@?@?@?@=>=>=>=>=>=>=>=>;<;<;<;<;<;<;<;<;<;<;<;<9:9:9:9:9:9:9:9:78787878787878785656565656565656343434344343434321212121212121210/0/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!        ~}~}~}~}~}~}~}~}|{|{|{|{{{{{{|{|yzyzyzyzyzyzyzyzwxwxwxwxwxwxwxwxwxwxwxwxuvuvuvuvuvuvuvuvststststststststqrqrqrqrqrqrqrqrqrqrqrqropopopopopopopopmnmnmnmnmnmnmnmnklklklklklklklklklklklklijijijijijijijijghghghghghghghghefefefefefefefefcdcdcdcddcdcdcdcbabababababababa`_`_`_`_`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMLKLKLKLKKLKLKLKLIJIJIJIJIJIJIJIJGHGHGHGHGHGHGHGHGHGHGHGFEFEFEFEFEFEFEFEFCDCDCDCDCDCDCDCDABABABABABABABABABABABAB?@?@?@?@?@?@?@?@=>=>=>=>=>=>=>=>;<;<;<;<;<;<;<;<;<;<;<;<9:9:9:9:9:9:9:9:78787878787878785656565656565656343434344343434321212121212121210/0/0/0/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!        ~}~}~}~}~}~}~}~}|{|{|{|{{|{|{|{|yzyzyzyzyzyzyzyzwxwxwxwxwxwxwxwxwvuvuvuvuvuvuvuvuvuvuvuvststststststststqrqrqrqrqrqrqrqrqrqrqrqropopopopopopopopmnmnmnmnmnmnmnmnklklklklklklklklklklklklijijijijijijijijghghghghghghghghefefefefefefefefcdccccccdcdcdcdcbabababababababa`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMLKKKKKKLKLKLKLKLIJIJIJIJIJIJIJIJGHGHGHGHGHGHGHGHEFEFEFEFEFEFEFEFEFEFEFEFCDCDCDCDCDCDCDCDABABABABABABABABABABABA@?@?@?@?@?@?@?@?@=>=>=>=>=>=>=>=>;<;<;<;<;<;<;<;<;<;<;<;<9:9:9:9:9:9:9:9:78787878787878785656565656565656333333434343434321212121212121210/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)*)*)*)('('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!        ~}~}~}~}~}~}~}~}|{|{|{|{{|{|{|{|yzyzyzyzyzyzyzyzwxwxwxwxwxwxwxwxuvuvuvuvuvuvuvuvuvuvuvuvststststststststqrqrqrqrqrqrqrqrqpopopopopopopopopopopopmnmnmnmnmnmnmnmnklklklklklklklklklklklklijijijijijijijijghghghghghghghghefefefefefefefefdcdcdcdcdcdcdcdcbabababababababa`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMNMNMKLKLKLKLKLKLKLKLIJIJIJIJIJIJIJIJGHGHGHGHGHGHGHGHEFEFEFEFEFEFEFEFEFEFEFEFCDCDCDCDCDCDCDCDABABABABABABABAB?@?@?@?@?@?@?@?@?@?@?@?@=>=>=>=>=>=>=>=>;<;<;<;<;<;<;<;<;<;<;<;:9:9:9:9:9:9:9:9:78787878787878785656565656565656434343434343434321212121212121210/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!        ~}~}~}~}~}~}~}~}|{{{{{{|{|{|{|{|yzyzyzyzyzyzyzyzwxwxwxwxwxwxwxwxuvuvuvuvuvuvuvuvuvuvuvuvststststststststqrqrqrqrqrqrqrqropopopopopopopopopopopopmnmnmnmnmnmnmnmnklklklklklklklklkjijijijijijijijijijijijghghghghghghghghefefefefefefedcddcdcdcdcdcdcccccbabababababababa`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMNMNMLKLKKLKLKLKLKLKKKKKLIJIJIJIJIJIJIJIJGHGHGHGHGHGHGHGHEFEFEFEFEFEFEFEFEFEFEFEFCDCDCDCDCDCDCDCDABABABABABABABAB?@?@?@?@?@?@?@?@?@?@?@?@=>=>=>=>=>=>=>=>;<;<;<;<;<;<;<;<9:9:9:9:9:9:9:9:9:9:9:9:78787878787878785656565656543434434343434333334321212121212121210/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!        ~}~}~}~}~}~}~}~}{|{|{|{|{|{|{|{|yzyzyzyzyzyzyzyzwxwxwxwxwxwxwxwxuvuvuvuvuvuvuvuvuvuvuvuvststststststststqrqrqrqrqrqrqrqropopopopopopopopopopopopmnmnmnmnmnmnmnmnklklklklklklklklijijijijijijijijijijijijghghghghghghghghefefefefcdcdccccdcdcdcdcdcdcdcdcbabababababababa`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPOPONMNMNMNMLKLKKKKKKLKLKLKLKLKLKLKJIJIJIJIJIJIJIJIJGHGHGHGHGHGHGHGHEFEFEFEFEFEFEFEFEFEFEFEFCDCDCDCDCDCDCDCDABABABABABABABAB?@?@?@?@?@?@?@?@?@?@?@?@=>=>=>=>=>=>=>=>;<;<;<;<;<;<;<;<9:9:9:9:9:9:9:9:9:9:9:9:78787878787878785656565634333333434343434343432121212121212121210/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!        ~}~}~}~}~}~}|{|{{|{|{|{|{|{|{|{yyzyzyzyzyzyzyzyzwxwxwxwxwxwxwxwxuvuvuvuvuvuvuvuvuvuvuvuvststststststststqrqrqrqrqrqrqrqropopopopopopopopopopopopmnmnmnmnmnmnmnmnklklklklklklklklijijijijijijijijijijijijghghghghghghghgfefefefefccdcdcdcdcdcdcdcbabababababababababababa`_`_`_`_`_`_`_`_^]^]^]^]^]^]^]^]^]^]^]^]\[\[\[\[\[\[\[\[ZYZYZYZYZYZYZYZYXWXWXWXWXWXWXWXWXWXWXWXWVUVUVUVUVUVUVUVUTSTSTSTSTSTSTSTSRQRQRQRQRQRQRQRQRQRQRQRQPOPOPOPOPOPOPONMNMNMNMNMKLKLKLKLKLKLKLKLIJIJIJIJIJIJIJIJIJIJIJIJGHGHGHGHGHGHGHGHEFEFEFEFEFEFEFEFEFEFEFEDCDCDCDCDCDCDCDCDABABABABABABABAB?@?@?@?@?@?@?@?@?@?@?@?@=>=>=>=>=>=>=>=>;<;<;<;<;<;<;<;<9:9:9:9:9:9:9:9:9:9:9:9:78787878787876565656565643434343434343432121212121212121212121210/0/0/0/0/0/0/0/.-.-.-.-.-.-.-.-.-.-.-,+,+,+,+,+,+,+,+,+*)*)*)*)*)*)*)*)('('('('('('('('('('('('&%&%&%&%&%&%&%&%$#$#$#$#$#$#$#$#"!"!"!"!"!"!"!"!"!"!"!"!               - - - - - - - -         - - - - - - - -         - - - - - - - -         - - - - - - - - - -         - - - - - - - - - - - -         - - - - - - - - - - - -         - - - - - - - - - - - -          - - - - - - - - - - - -             - - - - - - - - - -              - - - - - - - -             - - - - - - - -             - - - - - - - -           - - - - - - - -         - - - - - - - -LLKKJJII55667788mmnnooppZZYYXXWW@@AABBCC~}CBBAA@@?<==>>??@tuuvvwwx]\\[[ZZY%$$##""!LMMNNOOPMLLKKJJI$%%&&''(\]]^^__`uttssrrq=<<;;::945566778lmmnnoopeddccbba-,,++**) DEEFFGGH|}}~~FEEDDCCB GHHIIJJKxxwwvvuu;;::9987==>>??@@uuvvwwxx\\[[ZZYY$$##""!!MMNNOOPPLLKKJJII%%&&''((]]^^__``ttssrrqq<<;;::9955667788mmnnooppddccbbaa,,++**)) EEFFGGHH}}~~EEDDCCBB HHIIJJKKxwwvvuut;::99876 =>>??@@Auvvwwxxy\[[ZZYYX$##""!! MNNOOPPQLKKJJIIH%&&''(()]^^__``atssrrqqp<;;::99856677889mnnooppqdccbbaa`,++**))( EFFGGHHI}~~EDDCCBBA -HIIJJKKQwwvvuutt::998765 >>??@@AAvvwwxxyy[[ZZYYXX##""!! NNOOPPQQKKJJIIHH&&''(())^^__``aassrrqqpp;;::998866778899nnooppqqccbbaa``++**))((FFGGHHII~~DDCCBBAA - -IIJJKKQQ~~}}HHGGFFEE 99::;;<>==<<; - - @AABBCCDxyyzz{{|YXXWWVVU! PQQRRSST~~}IHHGGFFE ())**++,`aabbccdqppoonnm98877665899::;; - - KQQRRSSTttssrrqq65433221 - - AABBCCDDyyzz{{||XXWWVVUU QQRRSSTT~~}}HHGGFFEE ))**++,,aabbccddppoonnmm8877665599::;;<> - - QQRRSSTTtssrrqqp54332211 - - ABBCCDDEyzz{{||}XWWVVUUT QRRSSTTU~~}}|HGGFFEED )**++,,-abbccddepoonnmml877665549::;;<<=qrrssttu`__^^]]\(''&&%%$IJJKKLLMA@@??>>= - QRRSSTTUssrrqqpp43322110 - - BBCCDDEEzz{{||}}WWVVUUTTRRSSTTUU~~}}||GGFFEEDD **++,,--bbccddeeoonnmmll77665544::;;<<==rrssttuu__^^]]\\''&&%%$$JJKKLLMM@@??>>== RRSSTTUU||{{zzyyDDCCBBAA - - ==>>??@@uuvvwwxxRRQQKKJJ - - HHIIJJKKxwwvvuut;::99876 DEEFFGGH|}}~~UTTSSRRQ TUUVVWWX}||{{zzyEDDCCBBA - - ,--..//0deeffgghmllkkjji54433221<==>>??@tuuvvwwx]\\[[ZZY%$$##""!LMMNNOOP>==<<;;: TUUVVWWXppoonnmm100//..- EEFFGGHH}}~~TTSSRRQQ UUVVWWXX||{{zzyyDDCCBBAA - - --..//00eeffgghhllkkjjii44332211==>>??@@uuvvwwxx\\[[ZZYY$$##""!!MMNNOOPP==<<;;::UUVVWWXXpoonnmml00//..-- EFFGGHHI}~~TSSRRQQP !UVVWWXXY|{{zzyyxDCCBBAA@ - - -..//001effgghhilkkjjiih43322110 =>>??@@Auvvwwxxy\[[ZZYYX$##""!! MNNOOPPQ{=<<;;::9UVVWWXXYoonnmmll0//..--,FFGGHHII~~SSRRQQPP !!VVWWXXYY{{zzyyxxCCBBAA@@ - - ..//0011ffgghhiikkjjiihh33221100 >>??@@AAvvwwxxyy[[ZZYYXX##""!! NNOOPPQQ{{<<;;::99VVWWXXYYxxwwvvuu@@??>>== - - AABBCCDDyyzz{{||IIHHGGFF - - QQRRSSTTtssrrqqp54332211HIIJJKKLQPPOONNM !!""##$XYYZZ[[\yxxwwvvuA@@??>>= 01122334hiijjkklihhggffe100//..- - - @AABBCCDxyyzz{{|YXXWWVVU! PQQRRSST{{zzyyx:9933221XYYZZ[[\llkkjjii-,,++**)IIJJKKLLPPOONNMM!!""##$$YYZZ[[\\xxwwvvuu@@??>>==11223344iijjkkllhhggffee00//..-- - - AABBCCDDyyzz{{||XXWWVVUU QQRRSSTT{{zzyyxx99332211YYZZ[[\\lkkjjiih,,++**))IJJKKLLMPOONNMML!""##$$%YZZ[[\\]xwwvvuut@??>>==<12233445ijjkkllmhggffeed0//..--, - - ABBCCDDEyzz{{||}XWWVVUUT QRRSSTTU{zzyyxxw93322110YZZ[[\\]kkjjiihg,++**))(JJKKLLMMOONNMMLL""##$$%%ZZ[[\\]]wwvvuutt??>>==<<22334455jjkkllmmggffeedd//..--,, - - BBCCDDEEzz{{||}}WWVVUUTTRRSSTTUUzzyyxxww33221100ZZ[[\\]]ttssrrqq<<;;::99 EEFFGGHH}}~~EEDDCCBBUUVVWWXXpoonnmml00//..--LMMNNOOPMLLKKJJI$%%&&''(\]]^^__`uttssrrq=<<;;::945566778lmmnnoopeddccbba-,,++**) DEEFFGGH|}}~~UTTSSRRQ TUUVVWWXxwwvvuut100//..-\]]^^__`hgfedccb)((''&&%MMNNOOPPLLKKJJII%%&&''((]]^^__``ttssrrqq<<;;::9955667788mmnnooppddccbbaa,,++**)) EEFFGGHH}}~~TTSSRRQQ UUVVWWXXwwvvuutt00//..--]]^^__``gfedccbb((''&&%%MNNOOPPQLKKJJIIH%&&''(()]^^__``atssrrqqp<;;::99856677889mnnooppqdccbbaa`,++**))( EFFGGHHI}~~TSSRRQQP !UVVWWXXYwvvuutts0//..--,]^^__``afedccbba(''&&%%$NNOOPPQQKKJJIIHH&&''(())^^__``aassrrqqpp;;::998866778899nnooppqqccbbaa``++**))((FFGGHHII~~SSRRQQPP !!VVWWXXYYvvuuttss//..--,,^^__``aappoonnmm88776655IIJJKKLLAA@@??>>YYZZ[[\\lkkjjiih,,++**))PQQRRSST~~}IHHGGFFE ())**++,`aabbccdqppoonnm98877665899::;;>??@tuuvvwwx]\\[[ZZY%$$##""!LMMNNOOPMLLKKJJI$%%&&''(\]]^^__`poonnmml)((''&&%"##$$%%&ijjkkllm^]]\\[[Z!  UUVVWWXX||{{zzyyDDCCBBAA - - --..//00eeffgghhllkkjjii44332211==>>??@@uuvvwwxx\\[[ZZYY$$##""!!MMNNOOPPLLKKJJII%%&&''((]]^^__``oonnmmll((''&&%%##$$%%&&jjkkllmm]]\\[[ZZ  !UVVWWXXY|{{zzyyxDCCBBAA@ - - -..//001effgghhilkkjjiih43322110 =>>??@@Auvvwwxxy\[[ZZYYX$##""!! MNNOOPPQLKKJJIIH%&&''(()]^^__``aonnmmllk(''&&%%$#$$%%&&'jkkllmmn]\\[[ZZY !!VVWWXXYY{{zzyyxxCCBBAA@@ - - ..//0011ffgghhiikkjjiihh33221100 >>??@@AAvvwwxxyy[[ZZYYXX##""!! NNOOPPQQKKJJIIHH&&''(())^^__``aannmmllkk''&&%%$$$$%%&&''kkllmmnnhhggffee00//..--QQRRSSTT{{zzyyxx99332211!!""aabbcciiaa``__^^$$##""!! !!""##$XYYZZ[[\yxxwwvvuA@@??>>= 01122334hiijjkklihhggffe100//..- - - @AABBCCDxyyzz{{|YXXWWVVU! PQQRRSST~~}IHHGGFFE ())**++,`aabbccdlkkjjiic%$$##""!&''(())*mnnooppqZYYXXWWV!!""##$$YYZZ[[\\xxwwvvuu@@??>>==11223344iijjkkllhhggffee00//..-- - - AABBCCDDyyzz{{||XXWWVVUU QQRRSSTT~~}}HHGGFFEE ))**++,,aabbccddkkjjiicc$$##""!!''(())**nnooppqqYYXXWWVV!""##$$%YZZ[[\\]xwwvvuut@??>>==<12233445ijjkkllmhggffeed0//..--, - - ABBCCDDEyzz{{||}XWWVVUUT QRRSSTTU~~}}|HGGFFEED )**++,,-abbccddekjjiiccb$##""!!'(())**+nooppqqrYXXWWVVU""##$$%%ZZ[[\\]]wwvvuutt??>>==<<22334455jjkkllmmggffeedd//..--,, - - BBCCDDEEzz{{||}}WWVVUUTTRRSSTTUU~~}}||GGFFEEDD **++,,--bbccddeejjiiccbb##""!!(())**++ooppqqrrwvvuuttsddccbbaa,,++**)) UUVVWWXXwwvvuutt00//..--##$$%%&&jjkkllmm]]\\[[ZZ $%%&&''(\]]^^__`uttssrrq=<<;;::945566778lmmnnoopeddccbba-,,++